新聞中心

EEPW首頁 > 設(shè)計應(yīng)用 > 基于PIC16F628單片機的便攜式電子秤

基于PIC16F628單片機的便攜式電子秤

——
作者:湖南大學電氣與信息工程學院 張海霞 滕召勝 時間:2007-01-26 來源:《世界電子元器件》 收藏

引 言

本文引用地址:http://butianyuan.cn/article/20569.htm

目前,臺式電子秤在商業(yè)貿(mào)易中的使用已相當普遍,但存在較大的局限性:體積大、成本高、需要工頻交流電源供應(yīng)、攜帶不便、應(yīng)用場所受到制約?,F(xiàn)有的便攜秤為桿秤或以彈簧、拉伸變形來實現(xiàn)計量的彈簧秤,居民用戶使用的基本是桿秤。彈簧盤秤制造工藝要求較高,彈簧的疲勞問題無法徹底解決,一旦超過彈簧彈性限度,彈簧秤就會產(chǎn)生很大誤差,以至損壞,影響到稱重的準確性和可靠性,只是一種暫時的代用品,也被列入逐漸取消的行列。多年來,人們一直期待測量準確、攜帶方便、價格低廉的便攜式電子秤(袖珍電子秤)投放市場。

基于電子秤的現(xiàn)狀,本項目擬研究一種用單片機控制的高精度智能電子秤設(shè)計方案。這種高精度智能電子秤體積小、計量準確、攜帶方便,集質(zhì)量稱量功能與價格計算功能于一體,能夠滿足商業(yè)貿(mào)易和居民家庭的使用需求。

本項目研究的便攜式電子秤主要技術(shù)指標為:稱量范圍0~15kg;分度值0.01kg;精度等級ⅲ級;電源dc1.5v(一節(jié)5號電池供電)。主要功能有自檢、去皮、計價、累計、單價設(shè)定、計量單位選擇、過載報警和弱電壓指示等。儀器若不進行稱量操作,5分鐘后自動進入休眠模式,降低電源消耗。


儀器的測量原理

本文采用電容傳感器進行稱重,有別于目前市場上使用的應(yīng)變式稱重傳感器。應(yīng)變式稱重傳感器設(shè)計成本很高,難以普及,而電容傳感器具有結(jié)構(gòu)簡單、靈敏度高、動態(tài)特性好、無接觸測量、分辨力強、適應(yīng)性強和抗干擾力強等優(yōu)點,最大特點是價格便宜,但它的主要缺點是電容量一般很小,僅幾十至幾百皮法,甚至只有幾個皮法,環(huán)境變化將影響電容量發(fā)生變化,因而應(yīng)用受到一定程度的限制。在電子稱重技術(shù)的應(yīng)用中,可將電子線路緊靠傳感器的極板以減小電纜分布電容的影響,利用微處理技術(shù)對電容式傳感器的溫度特性和非線性特性進行補償。 本文采用變極距式電容傳感器,它由一對距離可變的平行極板構(gòu)成。兩板以彈性元件相連,當向一活動板施加拉力時,兩極板距離發(fā)生變化,從而改變了平板電容器的電容量。經(jīng)電容-頻率轉(zhuǎn)換電路后,電路輸出頻率與電容成正比。被測物重量與電容量改變成正比,頻率的改變即頻差與在傳感器上所加重物的重量成正比,因而變極距式電容傳感器有良好的線性度。測質(zhì)量時只須測出電容的變化量。然而,電容值的直接測量非常困難。因此,系統(tǒng)將不易測量的電容變化量轉(zhuǎn)換成易于測量的頻率信號的變化量,并采用高穩(wěn)定參考電容生成參考頻率信號,消除系統(tǒng)誤差,實現(xiàn)高精度測量。電容-頻率轉(zhuǎn)換框圖如圖1所示。兩路頻率分別送入后級處理電路,經(jīng)過數(shù)據(jù)選擇、帶通濾波傳入單片機系統(tǒng)。


圖1 電容頻率轉(zhuǎn)換框圖

硬件電路設(shè)計

儀器的構(gòu)成

本文研究的便攜式電子秤硬件系統(tǒng)由電源、電容傳感器、高穩(wěn)定參考電容、icm7556定時器、max325多路開關(guān)、pic16f628單片機系統(tǒng)、控制鍵盤、lcd顯示等組成。測量系統(tǒng)硬件電路框圖如圖2所示。


圖2 儀器結(jié)構(gòu)框圖

pic16f628的主要功能特點

pic16f628單片機是microchip公司的pic系列單片機之一。pic 8位單片機系列是該公司推出采用risc(reduced instruction set computer)結(jié)構(gòu)的嵌入式控制器,具有執(zhí)行速度高、功耗低、體積小巧、工作電壓低、驅(qū)動能力強、品種豐富等優(yōu)越性能。其總線結(jié)構(gòu)采取數(shù)據(jù)總線和指令線分離獨立的哈佛(harvard)結(jié)構(gòu),具有很高的流水處理速度。與同類8位單片機相比,程序存儲器可節(jié)省一半,指令運行速度可以提高4倍左右。此外,pic系列單片機集成了一系列外部功能模塊,例如:上電復(fù)位電路、i/o引腳上拉電路、看門狗定時器等。這樣,在組成系統(tǒng)時,就可以最大限度的簡化電路、降低成本,提高系統(tǒng)的可靠性。


pic16f628單片機具有直接驅(qū)動液晶顯示器的能力。輸入端口具有跳變中斷能力,能方便地接收按鍵輸入,另有多級外部及內(nèi)部中斷,可通過程序禁止主晶振振蕩而使單片機進入低功耗狀態(tài),適合用于以電池作能源、需液晶驅(qū)動的應(yīng)用場合。

pic16f628單片機的工作電壓范圍為3.0v~5.5v,時鐘頻率為dc~20mhz,內(nèi)部具有1k 14(位)片內(nèi)程序存儲器,224字節(jié)通用ram,128字節(jié)eeprom,15根雙向i/o線和10個中斷源,并帶有一個16位定時器/計數(shù)器(tmr1)和一個8位定時器/計數(shù)器(tmr0)。

pic16f628的精簡指令集僅有35條指令,除了地址分支跳轉(zhuǎn)指令(goto、call)為雙周期指令外,其余皆為單周期指令,執(zhí)行速度可調(diào)范圍寬(dc~200ns),具有8級硬件堆棧,3種尋址方式(直接、間接、相對)。

pic16f628的15個i/o口均是獨立雙向可編程的,并可直接驅(qū)動led數(shù)碼管,最大拉電流和灌電流分別為25ma和20ma。tmr0帶有8位可編程預(yù)分頻器,可進行1~256分頻。

pic16f628信息處理單元電路的設(shè)計

pic16f628是整個系統(tǒng)的信息處理核心。它需要完成鍵盤輸入檢測、采樣通道選擇、信號分析處理、信息顯示、欠電報警和過載報警等多種智能功能。單片機信息處理單元電路如圖3所示。圖中采用的max325是maxim公司生產(chǎn)的精密單電源spst(single-pole single-throw)模擬開關(guān),它由一個常開型開關(guān)和一個常閉型開關(guān)組成,具有低功耗、低導(dǎo)通電阻等特點。該芯片兩控制端(in1、in2)均連接cpu的rb3引腳,系統(tǒng)兩路頻率信號輸入通道的選擇由cpu控制。低電壓檢測信號通過芯片6腳(int)輸入,低壓時產(chǎn)生外部中斷。鍵盤檢測信號與芯片10~12腳(rb4~rb6)相連,有鍵按下,就產(chǎn)生rb口電平變換中斷,在中斷服務(wù)程序中,掃描鍵盤,取得鍵值。顯示緩沖區(qū)的寫入依靠芯片中通用同步/異步收發(fā)器(usart),顯示器lcd的數(shù)據(jù)端和時鐘端分別與芯片的7腳(dt)、8腳(ck)相接。


圖3 信息處理單元電路

軟件設(shè)計

作為便攜式儀器,系統(tǒng)在整個設(shè)計過程中遵循簡化硬件電路,以軟件設(shè)計代替硬件的設(shè)計原則,最大限度的減小儀器的體積和重量,因而系統(tǒng)的軟件實現(xiàn)功能豐富。軟件設(shè)計采用模塊化結(jié)構(gòu),主要有人工校正模塊、欠電報警模塊、鍵盤檢測模塊、采樣通道切換模塊和數(shù)據(jù)處理模塊。

系統(tǒng)主程序

系統(tǒng)主程序控制單片機系統(tǒng)按預(yù)定的操作方式運行,它是單片機系統(tǒng)程序的框架。系統(tǒng)上電后,對系統(tǒng)進行初始化。初始化程序主要完成對單片機內(nèi)專用寄存器的設(shè)定,單片機工作方式及各端口的工作狀態(tài)的規(guī)定。系統(tǒng)初始化之后,進行計數(shù)器讀取、零點校正、過載檢測等工作。主程序流程圖如圖4所示。


圖4 系統(tǒng)主程序流程圖

中斷服務(wù)程序設(shè)計

系統(tǒng)程序設(shè)計中,鍵盤檢測產(chǎn)生外部中斷,采樣通道產(chǎn)生內(nèi)部定時中斷。在中斷優(yōu)先級的問題上,因為pic16f628單片機只有一個中斷入口地址0004h,每種中斷都要由此進入中斷程序,所以中斷程序開始現(xiàn)場保護后,要進行各種中斷標志位的順序檢測和判斷。當判斷到中斷標志位時,轉(zhuǎn)到相應(yīng)的中斷服務(wù)子程序中,根據(jù)檢測標志位的順序,定義中斷優(yōu)先級,先判斷定時中斷優(yōu)先級最高,其次是鍵盤檢測中斷。中斷服務(wù)程序流程圖如圖5所示。


圖5中斷服務(wù)程序流程

采樣通道切換模塊,系統(tǒng)傳感器單元含有兩個電容-頻率轉(zhuǎn)換電路,兩個電路輸出信號的獲取均通過單片機pic16f628的計數(shù)器1實現(xiàn)。利用定時器0的定時中斷功能,每隔0.1s切換一次振蕩工作電路及模擬開關(guān)max325通道。定時器0中斷服務(wù)程序流程圖如圖6所示。



圖6 定時器0中斷服務(wù)程序流程圖
圖7 鍵盤中斷服務(wù)程序流程圖

鍵盤檢測模塊,系統(tǒng)中按鍵組合成鍵盤后排列成3 5矩陣形式,采用rb口中斷的方式檢測鍵盤中有無按鍵。對各列線都送以低電平(稱為"全掃描"),若有鍵按下,則產(chǎn)生中斷。進入中斷程序后,通過"逐列掃描"(逐列送低電平),查看各行線電平值來鑒別被按下的鍵,返回鍵值。對按鍵的具體處理由主程序中鍵盤處理子程序完成。鍵盤檢測中斷服務(wù)程序流程圖如圖7所示。

軟件抗干擾設(shè)計

測量算法采用數(shù)字濾波、曲線擬合兩種數(shù)據(jù)處理方法。數(shù)字濾波(軟件濾波)復(fù)用性好、可實現(xiàn)超低頻濾波且修改方便。因此,在硬件濾波設(shè)計基礎(chǔ)上,系統(tǒng)通過軟件濾波進一步濾除有害干擾信號。同時,曲線擬合使系統(tǒng)對測量曲線進行不失真跟蹤處理,也保證了測量計算的準確性。

pic16f628片內(nèi)帶有看門狗定時器(wdt),它是一個擁有獨立的rc 時鐘信號源、計時周期約為18ms的cpu片內(nèi)自激式rc振蕩計時器。在燒寫程序時借助程序燒寫器啟用wdt,一旦程序跑飛,wdt將立即強迫程序返回到復(fù)位向量處(在復(fù)位向量處安排了一段出錯程序),即可將系統(tǒng)納入正軌。

軟件低功耗設(shè)計

因為系統(tǒng)功耗正比于cpu的工作時間,所以盡量縮短cpu的運行時間應(yīng)是低功耗軟件設(shè)計的一條重要準則。

(1) 使用單片機睡眠方式

pic16f628設(shè)有低功耗模式,即睡眠方式(sleep)。便攜式電子秤作為隨身攜帶的手持式稱量器具,一定不是常處在工作狀態(tài)。在未關(guān)斷電源的情況下,當器具閑置了預(yù)定的一段時間后,單片機將自動進入sleep模式,在"睡眠"方式,耗電小于1 a。

(2) 使用單片機的中斷功能

系統(tǒng)軟件設(shè)計應(yīng)用了三個中斷:rb口中斷(用于檢測鍵盤輸入)、外部中斷(用于低電壓檢測)、定時器0中斷(用于切換頻率量輸入通道)。中斷的使用有效地減少了cpu的運行時間,從而降低功耗。

本系統(tǒng)中,嚴格選用低功耗的cmos器件,硬件上的配合簡單而有效,軟件上的設(shè)計周密而層次分明,整個系統(tǒng)能真正的實現(xiàn)低功耗工作。


結(jié)束語

本文設(shè)計研究的準確度等級ⅲ級、最大稱量15kg并集多種智能功能于一體的便攜式電子秤,技術(shù)指標參考了目前國內(nèi)市場上使用最多、國內(nèi)外產(chǎn)量最大的電子衡器的技術(shù)指標,由此可預(yù)見產(chǎn)品投放市場后將有極大的競爭力。

稱重傳感器相關(guān)文章:稱重傳感器原理


關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉