王璐杰 陳萬(wàn)通 李潤(rùn)生
摘 要:設(shè)計(jì)并實(shí)現(xiàn)基于物聯(lián)網(wǎng)下的智能超市的構(gòu)建方案,將RFID讀寫技術(shù)、Zigbee無(wú)線通信技術(shù)與嵌入式技術(shù)相融合,實(shí)現(xiàn)商品的自動(dòng)識(shí)別、計(jì)價(jià)、支付等功能。本文介紹了該購(gòu)物裝置的系統(tǒng)功能,軟硬件設(shè)計(jì)等。
關(guān)鍵詞:無(wú)人超市;RFID讀寫技術(shù);無(wú)線傳感網(wǎng)絡(luò);嵌入式技術(shù)
DOI:10.16640/j.cnki.37-1222/t.2018.10.137
1 引言
超市購(gòu)物與人們的日常生活息息相關(guān),傳統(tǒng)超市需要顧客挑選完商品后再返回收銀臺(tái)排隊(duì)結(jié)賬,而收銀員需要對(duì)每件商品的條形碼進(jìn)行逐個(gè)掃描。這種購(gòu)物模式繁瑣、冗長(zhǎng),難以滿足顧客的高消費(fèi)節(jié)奏,給顧客帶來(lái)了極大的不便,造成時(shí)間的耽擱和顧客的流失。本文給出基于嵌入式無(wú)線傳感器網(wǎng)絡(luò)的無(wú)人超市經(jīng)營(yíng)管理物聯(lián)網(wǎng)裝置,為無(wú)人超市硬件平臺(tái)設(shè)計(jì)提供參考。
2 系統(tǒng)功能及設(shè)計(jì)
2.1 系統(tǒng)功能
無(wú)人超市購(gòu)物裝置由購(gòu)物終端、無(wú)線傳感網(wǎng)絡(luò)和上位機(jī)3部分組成。裝置上電后,安裝于購(gòu)物車上的購(gòu)物終端通過(guò)無(wú)線射頻識(shí)別模塊同時(shí)識(shí)別放入購(gòu)物車內(nèi)多個(gè)商品的RFID標(biāo)簽,通過(guò)顯示屏模塊顯示出商品種類、制造商、生產(chǎn)日期、價(jià)格等信息,并在確認(rèn)購(gòu)買商品后在屏幕上生成供給支付的二維碼,通過(guò)Zigbee通信模塊在一定范圍內(nèi)的協(xié)調(diào)器節(jié)點(diǎn)與路由器節(jié)點(diǎn)之間以多跳中繼的方式傳遞商品變更的信息,協(xié)調(diào)器節(jié)點(diǎn)由串行線連接至上位機(jī),使倉(cāng)庫(kù)可以實(shí)時(shí)跟蹤并補(bǔ)充商品。
2.2 硬件設(shè)計(jì)
無(wú)人超市購(gòu)物裝置采用模塊化設(shè)計(jì)方法將主控模塊、RFID讀寫器和無(wú)線通信模塊相連,其中,主控模塊將ARM微處理器、顯示屏模塊、輸入輸出接口等集成到一塊嵌入式核心板上,并提供了與RFID交互的管腳插槽。
2.2.1 無(wú)線傳感網(wǎng)絡(luò)
考慮到超市購(gòu)物傳輸信息量小及購(gòu)物環(huán)境復(fù)雜等特點(diǎn),無(wú)線通信模塊應(yīng)具有短距離、低速率的特點(diǎn),本文將Zigbee芯片與傳感器節(jié)點(diǎn)相配合構(gòu)建無(wú)線傳感網(wǎng)絡(luò)。將具有通信與計(jì)算能力的各個(gè)傳感器節(jié)點(diǎn)布設(shè)在無(wú)人超市內(nèi),從而根據(jù)顧客的購(gòu)物動(dòng)作自主完成指定任務(wù),實(shí)現(xiàn)整個(gè)超市范圍內(nèi)商品的實(shí)時(shí)監(jiān)控。本文選用TI公司生產(chǎn)的CC2530射頻芯片,該芯片支持IEEE 802.15.4標(biāo)準(zhǔn)和ZigBee2007協(xié)議,為使用者提供無(wú)線收發(fā)器、UART等外設(shè)。上電后,三線接口以異步串行通信方式經(jīng)UART串口連接ARM核心板。
2.2.2 RFID識(shí)別模塊設(shè)計(jì)
本裝置讀寫器為KLM900系列,支持 ISO18000-6C/EPC C1G2 標(biāo)準(zhǔn)協(xié)議,通過(guò)其接口上的RS232-TTL 管腳即可與ARM核心板進(jìn)行互聯(lián)通信,穩(wěn)定識(shí)別距離60cm,每秒可識(shí)別50張以上的電子標(biāo)簽。讀寫器內(nèi)集成接收電路、解碼電路、天線匹配電路等,可以將識(shí)別出來(lái)的數(shù)據(jù)轉(zhuǎn)換成串口數(shù)據(jù);將此RFID讀寫器安裝在購(gòu)物車上,可以形成一個(gè)固定的“詢問(wèn)區(qū)”,當(dāng)攜帶有RFID標(biāo)簽的商品被放入購(gòu)物車時(shí),信息就會(huì)被讀取。
2.2.3 顯示屏模塊
考慮到購(gòu)物終端的尺寸,成本,視覺(jué)效果等因素,選用9寸210x126的四線電阻觸摸屏,在觸摸屏上顯示出RFID讀寫器讀取的商品信息,設(shè)置商品結(jié)算選項(xiàng),當(dāng)用戶點(diǎn)擊該選項(xiàng)后顯示結(jié)算付款的二維碼。
2.3 軟件設(shè)計(jì)
2.3.1 ZigBee無(wú)線通信程序設(shè)計(jì)
首先配置CC2560芯片的參數(shù),CC2530處理任務(wù)分為以下6步:關(guān)閉所有中斷;芯片外部(板載外設(shè))初始化;芯片內(nèi)部初始化;初始化操作系統(tǒng);打開所有中斷;執(zhí)行操作系統(tǒng)。初始化后,不間斷地檢測(cè)是否有任務(wù)發(fā)生。如果有,則根據(jù)任務(wù)ID號(hào)響應(yīng)事件處理函數(shù):來(lái)自ARM的串口數(shù)據(jù),則相應(yīng)數(shù)據(jù)接收處理函數(shù)uartRxCB(),并調(diào)用函數(shù)zb_SendDataRequest()將數(shù)據(jù)發(fā)送到ZigBee網(wǎng)絡(luò)中;來(lái)自周圍環(huán)境的數(shù)據(jù),則響應(yīng)數(shù)據(jù)接收處理函數(shù)zb_ReceiveDataIndication(),并調(diào)用函數(shù)HalUARTWrite()將數(shù)據(jù)發(fā)送至ARM。
2.3.2 購(gòu)物金額二維碼顯示程序設(shè)計(jì)
二維碼全稱Quick Response,系統(tǒng)使用ARM處理器的LCD屏幕顯示付款的二維碼供顧客掃碼結(jié)算,用C語(yǔ)言編寫生成二維碼的底層驅(qū)動(dòng),所購(gòu)商品的總價(jià)字符作為參數(shù)傳入BOOL EncodeData()函數(shù),這時(shí)候二維碼的轉(zhuǎn)換結(jié)果已保留在全局變量二維數(shù)組中,二維數(shù)組中保存的都是0、1比特值,0代表二維碼的空白點(diǎn),1代表二維碼的黑點(diǎn)。經(jīng)過(guò)顯示屏顯示出來(lái),就得到最終的二維碼。
2.3.3 RFID處理算法
RFID讀寫器在對(duì)商品標(biāo)簽中的射頻信號(hào)接收、解碼后,通過(guò)異步串行接口與ARM核心板連接,通信協(xié)議為以字符為單位傳輸數(shù)據(jù)的起止式異步串行通信,在Linux圖形界面下配置波特率為9600bps,數(shù)據(jù)幀格式以及10ms定時(shí)器和槽函數(shù)等。采用setOutputPower(int value)函數(shù)設(shè)置發(fā)射功率用來(lái)調(diào)節(jié)讀取標(biāo)簽距離,槽函數(shù)中調(diào)用read()實(shí)現(xiàn)射頻信息的讀取。
3 結(jié)束語(yǔ)
參考RFID射頻識(shí)別原理,將基于嵌入式技術(shù)的無(wú)線傳感網(wǎng)絡(luò)應(yīng)用于無(wú)人超市購(gòu)物裝置上,設(shè)計(jì)自主結(jié)算的購(gòu)物設(shè)備,能夠?qū)崿F(xiàn)識(shí)別所買商品后生成二維碼供給支付,同時(shí)上位機(jī)中的倉(cāng)庫(kù)通過(guò)無(wú)線傳感網(wǎng)絡(luò)跟蹤并及時(shí)補(bǔ)充商品。
參考文獻(xiàn):
[1]王玲,鄒小昱,劉思瑤,沈明霞,朱宏超,朱镕杰.基于RFID與ZigBee的羊場(chǎng)養(yǎng)殖信息管理系統(tǒng)[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2014,45(09):247-253.
[2]李欣.基于ZigBee無(wú)線傳感網(wǎng)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的研究[J].信息通信,2017(02):85-86.
作者簡(jiǎn)介:王璐杰(1997-),男,內(nèi)蒙古人,本科在讀。