基于ARM內(nèi)核、12864液晶顯示屏、HX711A/D轉(zhuǎn)換器和ZigBee無線通信技術(shù),設(shè)計(jì)了多秤 盤高精度智能系統(tǒng)。給出了系統(tǒng)的組成及工作原理,闡述了系統(tǒng)主要硬件和軟件的設(shè)計(jì)。該系統(tǒng)采用多秤 盤作為Zi g B e e無線組網(wǎng)的節(jié)點(diǎn),與協(xié)調(diào)器之間進(jìn)行信息交互。用無線替代了傳統(tǒng)的線纜連接秤盤方式,實(shí) 現(xiàn)了1個(gè)電子秤同時(shí)對(duì)多種商品稱重的功能。
0.引言
近年來,電子稱重越來越多涉及數(shù)據(jù)處理和過 程控制。現(xiàn)代稱重技術(shù)和數(shù)據(jù)系統(tǒng)已經(jīng)成為工藝 技術(shù)、儲(chǔ)運(yùn)技術(shù)、預(yù)包裝技術(shù)、收貨業(yè)務(wù)及商業(yè)銷售 領(lǐng)域中不可缺少的組成部分。在此介紹的是基于 STM32單片機(jī)控制的多秤盤電子秤系統(tǒng),每一路 稱重傳感器對(duì)物品的重量進(jìn)行檢測(cè),然后通過模數(shù) 轉(zhuǎn)換芯片HX711將數(shù)據(jù)采集,最后將這一路的信 息通過ZigBee網(wǎng)絡(luò)上傳到協(xié)調(diào)器。其余幾路對(duì)稱 重信息也是同樣的處理,協(xié)調(diào)器對(duì)多路數(shù)據(jù)進(jìn)行整 理,通過串口上傳到STM32,并實(shí)時(shí)顯示到液晶屏 上。系統(tǒng)在完成稱重的同時(shí),還提供了一些計(jì)算功 能。對(duì)于商品價(jià)格的設(shè)定,可以通過按鍵輸入,或 者由上位機(jī)去設(shè)定,實(shí)現(xiàn)了較高的稱重精度,打破 了傳統(tǒng)的一個(gè)CPU對(duì)應(yīng)一個(gè)秤盤的局限,提高了 電子秤的靈活性,同時(shí)降低了其成本。在一個(gè)顯 示屏上可以同時(shí)顯示各個(gè)秤盤的商品重量與價(jià)格, 具有很大的實(shí)用性,給用戶帶來了很大的便捷,具 有很好的商業(yè)前景。
1.系統(tǒng)總體設(shè)計(jì)
系統(tǒng)通過協(xié)調(diào)器把各個(gè)節(jié)點(diǎn)模塊組合在一起, 自動(dòng)將各個(gè)托盤的質(zhì)量除去,實(shí)現(xiàn)上電自動(dòng)校零功 能。對(duì)于每一路秤盤,當(dāng)有物體放在托盤的時(shí)候, 壓力式傳感器發(fā)生形變,使電橋失去平衡輸出一個(gè)電壓值,hx71 1將這個(gè)電壓采集放大,得到一個(gè)對(duì) 應(yīng)的數(shù)字信號(hào),節(jié)點(diǎn)將這個(gè)信號(hào)通過ZigBee網(wǎng)絡(luò)上傳到協(xié)調(diào)器。協(xié)調(diào)器通過串口與STM32單片機(jī)通 信,最后,STM 3 2對(duì)各路信息處理后在液晶顯示屏 指定位置上顯示出物品重量。通過這樣的方式實(shí) 現(xiàn)多路秤盤同時(shí)稱重功能,與此同時(shí),當(dāng)物品指示 燈閃爍則表示托盤上有物體。系統(tǒng)不僅實(shí)現(xiàn)了稱 重功能,而且還能夠計(jì)算和存儲(chǔ)。通過按鍵或者上 位機(jī)設(shè)置各路物品單價(jià)和數(shù)量,顯示出商品的價(jià) 格。具有價(jià)格低廉,使用方便等優(yōu)點(diǎn)。其中系統(tǒng)的 總體結(jié)構(gòu)如圖1所示。
2.系統(tǒng)硬件設(shè)計(jì)
2.1傳感器模塊
本設(shè)計(jì)選擇的傳傳器模塊是電阻應(yīng)變式壓力 傳感器,其中最主要的核心是電阻應(yīng)變片。電阻應(yīng) 變片是一種將被測(cè)量器件的應(yīng)變變化轉(zhuǎn)換為一種 電信號(hào)的敏感器件。在實(shí)際使用的時(shí)候,通常是將 應(yīng)變片通過特殊的粘合劑緊密地粘合在受力產(chǎn)生 形變的物體表面。當(dāng)被測(cè)物體受力產(chǎn)生應(yīng)力變化 的時(shí)候,電阻應(yīng)變片也相應(yīng)地跟著拉伸。這樣就會(huì) 導(dǎo)致電阻阻值的變化,然后反映在加在電阻上面的 電壓變化。電阻變化是很微小的,將應(yīng)變片組成橋 式的結(jié)構(gòu)[3]。通過信號(hào)放大等處理,傳送給STM32 單片機(jī)執(zhí)行相應(yīng)的操作。各路傳感器模塊的電路 如圖2所示。
圖2傳感器模塊 橋式測(cè)量電路中有4個(gè)電阻,電橋?qū)墙尤牍?/span> 作電壓,另一個(gè)對(duì)角是輸出電壓。在此電橋電路 中,當(dāng)4個(gè)橋臂達(dá)到電橋平衡的關(guān)系時(shí),輸出的電壓 就應(yīng)該為0。如果失去平衡就會(huì)輸出一個(gè)電壓,靈 敏檢流計(jì)能夠檢測(cè)出該信號(hào),或者將該信號(hào)放大后 檢測(cè)。所以電橋能夠很精確地檢測(cè)出微小的電阻 變化,也就是微小的形變也能檢測(cè)出來,靈敏度很 高。在全橋測(cè)量電路中,將受力性質(zhì)相同的兩片應(yīng) 變片接入電橋?qū)叀]敵鲮`敏度比半橋提高了 1 倍,非線性誤差和溫度均得到了改善。
2. 2 A/D轉(zhuǎn)換模塊設(shè)計(jì)
HX711是一款專為高精度電子秤而設(shè)計(jì)的24 位A/D轉(zhuǎn)換器芯片。該芯片集成了穩(wěn)壓電源、片 內(nèi)時(shí)鐘振蕩器。具有集成度高、響應(yīng)速度快和抗干 擾性強(qiáng)等優(yōu)點(diǎn)。部分電路如圖3所示。
圖3 A/D轉(zhuǎn)換模塊 對(duì)每一路的電壓信息進(jìn)行高精度采集,然后通 過ZigBee網(wǎng)絡(luò)將采集的壓力信號(hào)發(fā)送給協(xié)調(diào)器。 CPU把這個(gè)信號(hào)轉(zhuǎn)變成重量,在LCD指定位置進(jìn) 行顯示。同時(shí),用戶可以通過按鍵方式對(duì)每個(gè)秤盤 的重量、價(jià)格等信息進(jìn)行計(jì)算。
2 .3 CC2530 模塊
本設(shè)計(jì)是將每一路秤盤節(jié)點(diǎn)采集的壓力信息, 通過ZigBee網(wǎng)絡(luò)上傳到CC2530協(xié)調(diào)器。協(xié)調(diào)器 采用星型網(wǎng)絡(luò)與各節(jié)點(diǎn)間實(shí)現(xiàn)通信。ZigBee是基 于IEEE802. 15. 4標(biāo)準(zhǔn)的低功耗局域網(wǎng)協(xié)議,是一 種短距離、低功耗的無線通信技術(shù)。該模塊選用 了 TI公司的CC2530芯片來設(shè)計(jì),在片內(nèi)集成了 8 位的8051MCU。該模塊性價(jià)比高,而且使用壽 命長(zhǎng)。
協(xié)調(diào)器設(shè)備被激活后,首先進(jìn)行對(duì)物理層所默 認(rèn)的有效信道進(jìn)行能量掃描,以檢測(cè)可能存在的網(wǎng) 絡(luò)重疊及PAN ID沖突干擾。并對(duì)檢測(cè)到的信道按 能量值進(jìn)行信道排序。然后執(zhí)行主動(dòng)掃描過程,以 選擇唯一的16位PAN ID,建立自己的網(wǎng)絡(luò)。
為構(gòu)建一個(gè)完整的ZigBee協(xié)調(diào)器,外圍電路 需要32 MHz晶振XTAL1為內(nèi)部微處理器提供時(shí) 鐘源,射頻部分需要有高精度的電感、電容和PCB 微波傳輸線,來匹配RF輸入輸出的阻抗。
2.4液晶顯示模塊
液晶顯示器的主要原理是以電流刺激液晶分 子產(chǎn)生點(diǎn)、線、面,并配合背部燈管構(gòu)成畫面。本次 設(shè)計(jì)采用帶字庫(kù)的12864液晶顯示屏,這個(gè)模塊實(shí) 現(xiàn)了物重的實(shí)時(shí)顯示,把物重的重量、價(jià)格和一些 必要信息展現(xiàn)出來,如圖4所示。
2.5 STM32 模塊
系統(tǒng)采用STM32系列的處理器,它以 STM32F103ZET6為核心,主控芯片采用的是基于 Cortex-M3架構(gòu)的微控制器。它是32位的ARM 單片機(jī),具有豐富的增強(qiáng)I/O端口和強(qiáng)大的外設(shè)資 源。STM32內(nèi)部SRAM比很多51單片機(jī)的Flash 還多,其他外設(shè)就更不用說了,STM32具有絕對(duì)的 優(yōu)勢(shì)。并且STM32的價(jià)格與51也是相差不多,性 價(jià)比高,功能也很強(qiáng)大,所以本設(shè)計(jì)選擇了 STM32 作為主控芯片。
節(jié)點(diǎn)采集到秤盤信息后,上傳到協(xié)調(diào)器,協(xié)調(diào) 器通過串口將各路秤盤信息送給STM32,單片機(jī)將 各路信息進(jìn)行處理并實(shí)時(shí)顯示。
3.軟件總體設(shè)計(jì)
基于STM32控制的多秤盤無線智能電子秤, 要實(shí)現(xiàn)稱重、顯示物重和計(jì)算總價(jià)等智能化功能。 為此,設(shè)計(jì)了本次程序總的軟件流程,如圖5所示。
3. 1 ZigBee協(xié)調(diào)器的工作流程
本設(shè)計(jì)用了 TI公司免費(fèi)提供的Z-Stack2006 協(xié)議棧,作為CC2530協(xié)調(diào)器的開發(fā)平臺(tái)。Z- Stack2006協(xié)議棧的開發(fā)主要是對(duì)應(yīng)用框架層(AF 層)和應(yīng)用支持子層(APS層)的修改,并相應(yīng)地添 加自己的驅(qū)動(dòng)程序網(wǎng)絡(luò)層是以庫(kù)的形式提供,通 過調(diào)用接口函數(shù)可以加入網(wǎng)絡(luò)和查詢網(wǎng)絡(luò)的狀態(tài), MAC層和物理層也不需改動(dòng)。
ZigBee無線傳感網(wǎng)絡(luò)協(xié)調(diào)器上電后,首先對(duì) CC2530進(jìn)行初始化,然后創(chuàng)建一個(gè)無線網(wǎng)絡(luò),選定 一個(gè)PAN ID作為協(xié)調(diào)器的網(wǎng)絡(luò)標(biāo)識(shí),創(chuàng)建路由表, 然后對(duì)外發(fā)布廣播幀,通知傳感器節(jié)點(diǎn)可以加入該 網(wǎng)絡(luò)。當(dāng)有子節(jié)點(diǎn)申請(qǐng)加入時(shí),為每一個(gè)子節(jié)點(diǎn)分 配地址。當(dāng)需要進(jìn)行數(shù)據(jù)采集時(shí),網(wǎng)絡(luò)協(xié)調(diào)器發(fā)出 數(shù)據(jù)采集指令,之后等待接收采集到的數(shù)據(jù),并將 數(shù)據(jù)發(fā)送到STM32處理器。網(wǎng)絡(luò)協(xié)調(diào)器節(jié)點(diǎn)軟件 流程如圖6所示。
3.2稱重程序設(shè)計(jì)流程
本次設(shè)計(jì)的主要功能是稱重,然后計(jì)算物體的總 價(jià),稱重這個(gè)模塊用到了 2個(gè)很重要的元件。一個(gè)是 電阻應(yīng)變式壓力傳感器,當(dāng)被測(cè)量物體放在傳感器上 面,傳感器就會(huì)產(chǎn)生機(jī)械變形,帶動(dòng)粘合在上面的應(yīng) 變片變形,這樣橋式的電橋就失去電橋平衡輸出一個(gè) 模擬量電壓。另外一個(gè)是HXH1芯片,該芯片是專 門為稱重而設(shè)計(jì)的24位A/D轉(zhuǎn)換芯片。
4.結(jié)束語
設(shè)計(jì)了電子秤控制器,實(shí)現(xiàn)了上電自動(dòng)清零校 正,能夠達(dá)到0.01 g的測(cè)量精度,并且實(shí)時(shí)地將物 體重量信息顯示在液晶屏上,可以通過按鍵或者上 位機(jī)軟件去設(shè)定物品單價(jià)以及數(shù)目,具有稱重和計(jì) 算功能。
ZigBee技術(shù)作為一種新的信息獲取和處理技 術(shù),將其與ARM7架構(gòu)的STM32單片機(jī)相結(jié)合。把電子秤做得更加智能化,脫離了傳統(tǒng)的有線、單 秤盤的局限性,通過組網(wǎng)的方式就可以實(shí)現(xiàn)系統(tǒng)秤 盤的增加與減少;用戶可以很方便地通過實(shí)際需求 修改秤盤數(shù)量,也就是組網(wǎng)數(shù)量。
本設(shè)計(jì)通過對(duì)無線傳感器網(wǎng)絡(luò)的應(yīng)用,以智能 電子秤為應(yīng)用對(duì)象,設(shè)計(jì)了基于STM32處理器的 ZigBee無線多秤盤電子秤,完成了基于ZigBee網(wǎng)關(guān) 的I/O模塊的硬件原理設(shè)計(jì);通過對(duì)ZgBee協(xié)議棧 的分析并結(jié)合CC2530的應(yīng)用,進(jìn)行了系統(tǒng)的整體 軟件設(shè)計(jì)。實(shí)現(xiàn)了對(duì)采集到的重量數(shù)據(jù)進(jìn)行實(shí)時(shí) 傳輸與計(jì)算。解決了多顧客可以同時(shí)進(jìn)行商品的 買賣,不再需要長(zhǎng)時(shí)間排隊(duì)等待的問題,大大提高 了賣家出售商品的效率。這套系統(tǒng)具有很大的實(shí) 際應(yīng)用價(jià)值,投入市場(chǎng)將會(huì)帶來很大的經(jīng)濟(jì)效益。