摘? ?要:隨著科技的發(fā)展,掃碼設(shè)備越來越被廣泛的應(yīng)用,本文設(shè)計(jì)了一款無線掃碼設(shè)備,可廣泛適用于生產(chǎn)、零售、物流貨運(yùn)及企事業(yè)單位有形資產(chǎn)、產(chǎn)品及零部件的數(shù)據(jù)管理和信息采集。此掃碼設(shè)備可快速識(shí)別條形碼或二維碼,并通過無線傳輸方式和計(jì)算機(jī)主機(jī)應(yīng)用程序及數(shù)據(jù)庫通信,方便數(shù)據(jù)存儲(chǔ)、更新及查詢。該掃碼設(shè)備有使用方便快速,突破傳統(tǒng)掃碼設(shè)備距離限制、節(jié)省人力物力成本等優(yōu)點(diǎn)。
關(guān)鍵詞:STM32? 無線? 掃碼器? NRF905
中圖分類號(hào):TN929? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1674-098X(2020)06(c)-0056-03
Abstract:With the development of science and technology, the code scanning equipment is more and more widely used. This article has designed a wireless code scanning equipment, which can be widely used in production, retail, logistics, freight, and data management of tangible assets, products and parts of enterprises And information gathering. This code scanning device can quickly identify the barcode and two-dimensional code, and communicate with the host computer application and database through wireless transmission, which is convenient for data update and query. The code scanning device has the advantages of convenient and fast use, breaking through the distance limitation of traditional code scanning devices, saving labor costs, material costs, etc.
Key Words:STM32; Wireless; Sweep code equipment; NRF905
隨著科技的進(jìn)步及物聯(lián)網(wǎng)技術(shù)的發(fā)展,條形碼及二維條碼具有快速、準(zhǔn)確、成本低、信息容量大、保密防偽性強(qiáng)等優(yōu)點(diǎn)被廣泛應(yīng)用。在票務(wù)、零售、倉儲(chǔ)、物流等應(yīng)用領(lǐng)域,支持多個(gè)二維碼掃描終端的多點(diǎn)無線傳輸系統(tǒng)具有非常廣闊的應(yīng)用前景[1]。本文所設(shè)計(jì)的系統(tǒng),能快速識(shí)別條形碼及二維條碼,并支持多個(gè)無線終端(多點(diǎn))實(shí)時(shí)接收二維條碼數(shù)據(jù),在有限的工作空間內(nèi),避免了配置多套掃描設(shè)備的重復(fù)投入,降低了管理復(fù)雜度,節(jié)約了接口資源。可組成一套先進(jìn)的、高可靠性、高性價(jià)比的掃碼管理系統(tǒng),此系統(tǒng)將大大提高管理和維護(hù)效率。
傳統(tǒng)有線條碼掃描儀受數(shù)據(jù)線長度的影響,在運(yùn)用上受到一定的限制。在條碼掃描設(shè)備上加入無線通信模塊,轉(zhuǎn)化為無線條碼掃描系統(tǒng),可以使其擺脫數(shù)據(jù)線長的影響,使掃碼設(shè)備在運(yùn)用上更為廣泛[2]。本產(chǎn)品可使用有線通信和無線通信兩種通信方式。無線通信模塊可根據(jù)項(xiàng)目需要定制,如支持無線互聯(lián)網(wǎng)(WLAN)的GPRS/3G/4G協(xié)議、無線個(gè)人局域網(wǎng)(WPAN)的IEEE 802.15.4協(xié)議及SPP ,HID 藍(lán)牙傳輸協(xié)議或脫機(jī)使用的場合。同時(shí)開發(fā)第三方收發(fā)接口,為第三方使用者提供可公開和自定義加密機(jī)制的無線條碼數(shù)據(jù)采集終端。
1? 系統(tǒng)原理分析
無線掃碼器分為發(fā)送端和接收端,兩者原理相似。無線掃碼器發(fā)送端主要由掃碼模塊、數(shù)據(jù)處理模塊、無線通信模塊等部分構(gòu)成(見圖1)。在實(shí)際應(yīng)用中,無線掃碼器可選電源或電池供電,由掃碼模塊讀取物品的條形碼或二維碼,將讀取的數(shù)據(jù),通過串行總線發(fā)送到數(shù)據(jù)處理模塊;數(shù)據(jù)處理模塊接收到掃碼數(shù)據(jù)后,經(jīng)過數(shù)據(jù)處理,按照無線數(shù)據(jù)協(xié)議將數(shù)據(jù)封裝成包,通過串行總線發(fā)送給無線收發(fā)模塊;無線通訊模塊收到數(shù)據(jù)處理模塊發(fā)來的數(shù)據(jù)后,以射頻的方式將數(shù)據(jù)發(fā)送出去。
無線掃碼器接收端作為后臺(tái)計(jì)算機(jī)接收條碼掃描數(shù)據(jù)的中間設(shè)備,其原理和發(fā)射端相似,只是其工作過程相反(見圖2),首先是通過無線通信模塊接收發(fā)送端發(fā)送的數(shù)據(jù),然后再通過數(shù)據(jù)處理模塊對采集來的數(shù)據(jù)進(jìn)行處理,并把其數(shù)據(jù)通過接口與計(jì)算機(jī)串口或USB連接,最終把前端無線掃碼器的數(shù)據(jù)傳輸?shù)胶笈_(tái)計(jì)算機(jī)。后臺(tái)計(jì)算機(jī)實(shí)時(shí)接收這些掃碼數(shù)據(jù),并和計(jì)算機(jī)中數(shù)據(jù)庫或云服務(wù)進(jìn)行通信,完成數(shù)據(jù)更新或產(chǎn)品管理。
無線掃碼器可避免線纜布置對掃碼器的安裝位置的限制,具有無線通信優(yōu)勢。在遠(yuǎn)距離現(xiàn)場數(shù)據(jù)采集和掃描笨重物體的編碼時(shí)優(yōu)勢明顯。數(shù)據(jù)傳輸可自定義無線協(xié)議,也可以通過擴(kuò)展單元,轉(zhuǎn)換為其他網(wǎng)絡(luò)協(xié)議或脫機(jī)使用。各個(gè)功能模塊也可以根據(jù)實(shí)際需求做相應(yīng)的配置,從而應(yīng)用到不同領(lǐng)域。
2? 硬件設(shè)計(jì)方案
無線掃碼器硬件主要由掃碼模塊,數(shù)據(jù)處理模塊和無線數(shù)據(jù)傳輸接口模塊三部分組成(見圖3)。
掃碼模塊部分負(fù)責(zé)將條形碼信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),它一般由光源、光學(xué)透鏡、掃描模組、模擬數(shù)字轉(zhuǎn)換電路組成。它利用光電元件將檢測到的光信號(hào)轉(zhuǎn)換成電信號(hào),再將電信號(hào)通過模擬數(shù)字轉(zhuǎn)換器轉(zhuǎn)化為數(shù)字信號(hào)傳輸?shù)綌?shù)據(jù)處理模塊。本方案中使用了新大陸公司的NLS-EM3596型條碼識(shí)讀器,通過RS232接口與數(shù)據(jù)處理模塊通信,EM3596條碼識(shí)讀器采用先進(jìn)的解碼技術(shù),使用1280*800高清影像感測器,搭配激光十字對焦,在室外陽光下依然可用,確保了掃碼的準(zhǔn)確性。硬件集成度高,體積小,可滿足各類小型化應(yīng)用的需求,適合輕薄型設(shè)備配套、傳統(tǒng)自助設(shè)備配套、條碼槍等設(shè)備集成,所以很適合本方案應(yīng)用。
數(shù)據(jù)處理模塊是無線掃碼器的核心之一,主要負(fù)責(zé)接收掃碼數(shù)據(jù),根據(jù)用戶的數(shù)據(jù)格式做出相應(yīng)的數(shù)據(jù)格式轉(zhuǎn)換,再將數(shù)據(jù)傳給無線發(fā)送模塊。本文選用了STM32F103CBT6芯片,其內(nèi)置6個(gè)定時(shí)器、2個(gè)IIC接口,3個(gè)USART接口,1個(gè)USB接口、2個(gè)SPI接口、內(nèi)置軟件看門狗等[3]。STM32F103系列芯片是意法半導(dǎo)體開發(fā)的高性能、低成本、低功耗的ARM Cortex-M3內(nèi)核的32位控制器,時(shí)鐘頻率可達(dá)72MHz,內(nèi)置達(dá)128K閃存,零等待周期的存儲(chǔ)器。它外設(shè)接口豐富,多種型號(hào)可以根據(jù)項(xiàng)目需要選擇。采用低功耗設(shè)計(jì),降低能耗的同時(shí)可以提高模塊的使用壽命。
無線發(fā)射部分采用SPI接口和stm32主控芯片通訊,使用433MHz射頻通訊,本設(shè)計(jì)選用了nRF905無線數(shù)傳芯片,它是一款市場主流產(chǎn)品,由NORDIC公司出品,它主要工作于433MHz、868MHz和915MHz的ISM頻段。芯片內(nèi)置頻率合成器、功率放大器、晶體振蕩器和調(diào)制器等功能模塊,輸出功率和通信頻道可通過程序進(jìn)行配置[4]。非常適合于低功耗、低成本的系統(tǒng)設(shè)計(jì)。
3? 系統(tǒng)軟件設(shè)計(jì)
無線掃碼器作為一款無線產(chǎn)品,需要從數(shù)據(jù)采集的可靠性、實(shí)時(shí)性、易用性等幾個(gè)方面進(jìn)行軟件設(shè)計(jì)和實(shí)現(xiàn)。
無線掃碼器上電后可用3~8s的時(shí)間來建立連接,最終需要根據(jù)網(wǎng)絡(luò)情況來決定;無線掃碼器必須保證數(shù)據(jù)是被正確傳輸?shù)街鳈C(jī),掃碼器可以通過發(fā)送端和接收端的通訊協(xié)議來確保數(shù)據(jù)的正確傳輸;在無線連接已經(jīng)斷開的情況下,無線掃碼器無法把數(shù)據(jù)傳輸?shù)街鳈C(jī),掃碼器的提示燈會(huì)給出長亮告警,掃碼器的連接狀態(tài)實(shí)時(shí)的被監(jiān)測,通過指示燈閃爍顯示。
為保證可靠性,無線掃碼器和接收端開連接后,如離開有效傳輸距離或者一端失電,發(fā)送端和接收端雙向自動(dòng)嘗試連接,直到連接距離或者供電后能夠成功建立連接并且實(shí)現(xiàn)掃描數(shù)據(jù)正確傳輸。無線掃碼器能夠靈活的和多主機(jī)建立連接,可通過廣播發(fā)送數(shù)據(jù)方式和多主機(jī)通信。
為了確保數(shù)據(jù)傳輸安全,無線掃碼器采用無線協(xié)議本身支持的加密模式來提供保護(hù),這可以防止一般的安全攻擊。這層防護(hù)采用用戶自定義算法,所以不容易被破壞者識(shí)別,起到了數(shù)據(jù)保護(hù)作用。
綜上所述系統(tǒng)軟件流程如圖4、5。上電啟動(dòng)后,首先硬件初始化,STM32芯片的各個(gè)GPIO、運(yùn)行燈及通信接口初始化,設(shè)置好串口對應(yīng)的波特率以及數(shù)據(jù)格式。然后對EM3596初始化,通過串口發(fā)送串行命令,設(shè)置EM3596各項(xiàng)功能參數(shù);再對nRF905模塊初始化,并檢測是否連接入網(wǎng),如果連接正常,則進(jìn)行掃碼采集數(shù)據(jù),把數(shù)據(jù)從串口發(fā)送到nRF905模塊,通過加密協(xié)議把數(shù)據(jù)傳送到接收端上去。同理接收端接收數(shù)據(jù)解密后送至后臺(tái)計(jì)算機(jī)。
4? 結(jié)語
經(jīng)實(shí)踐證明使用基于STM32無線掃碼器達(dá)到了較好的效果,采用無線通信,不適用控制線纜,免去控制線的布線過程。此無線掃碼器設(shè)計(jì)簡單,所用器件較少,性能穩(wěn)定,并且能夠可靠地運(yùn)行,其具有低成本、開發(fā)周期短等優(yōu)點(diǎn),以及C語言編寫程序在傳輸協(xié)議上具有靈活性,無線通訊接口有較好的安裝性和擴(kuò)展性。無線掃碼器,配合行業(yè)應(yīng)用軟件產(chǎn)品,可用于中小型企業(yè)零售、分銷商業(yè)及企事業(yè)單位的設(shè)備、紙介文檔、書籍檔案管理。
參考文獻(xiàn)
[1] 張世綜,徐世許,邊長安.基于條形碼掃描技術(shù)的貨物存儲(chǔ)系統(tǒng)的研究與設(shè)計(jì)[J].制造業(yè)自動(dòng)化,2019,41(9):51-55.
[2] 林盈盈,高紅,張明珊.嵌入式二維碼數(shù)據(jù)無線多點(diǎn)傳輸系統(tǒng)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2014(21):4-6.
[3] 陳琦,丁麗娜.基于STM32的無線油井監(jiān)控器[J].微型機(jī)與應(yīng)用,2015,34(6): 1-2,6.
[4] 楊海松.基于二維碼和無線通信技術(shù)的智能巡檢管理系統(tǒng)[J]. 數(shù)字技術(shù)與應(yīng)用,2018,36(8):138-139.