徐 聰,殷 超
(九江學(xué)院,江西 九江 332005)
倉庫作為企業(yè)的物料、產(chǎn)品存放地對于大小企業(yè)的重要性都是不言而喻的。如何提高其安全系數(shù)與使用效率便成了重中之重。
傳統(tǒng)的安防措施主要以安保人員實時查看視頻監(jiān)控、定時庫內(nèi)巡察等手段達(dá)到安防目的,庫存管理則以人工錄入、登記為主。實時監(jiān)控受限于人體機能,長時間觀看視頻畫面往往使得安保人員精神疲憊,監(jiān)測效果不達(dá)預(yù)期,定時庫內(nèi)檢查也將帶來監(jiān)管風(fēng)險,對于室內(nèi)火災(zāi)等突發(fā)情況人工查看往往為時已晚。人工錄入管理物品信息常因登記混亂造成財產(chǎn)損失,存儲空間也無法合理利用。
近年來,物聯(lián)網(wǎng)技術(shù)飛速發(fā)展,已經(jīng)成為信息技術(shù)的重要組成部分之一,被廣泛運用于生產(chǎn)與管理,極大地提升了各個相關(guān)行業(yè)的生產(chǎn)、運營效率?;谖锫?lián)網(wǎng)的倉儲安防與庫存管理系統(tǒng)的設(shè)計研究意義便是將物聯(lián)網(wǎng)技術(shù)運用于倉儲安防與庫存管理,在倉庫內(nèi)安放傳感裝置結(jié)合傳統(tǒng)的視頻監(jiān)控,實現(xiàn)庫內(nèi)空間的細(xì)致化管理,大大減少人工成本、減少安全隱患,通過物品出入庫自動化管理提高倉儲空間的使用效率。
本系統(tǒng)底層采用 STM32F103C8T6開發(fā)板和集成模塊進(jìn)行數(shù)據(jù)采集,使用ATK-ESP8266模塊實現(xiàn)各個結(jié)點間的數(shù)據(jù)傳輸。ATK-ESP8266模塊接收到數(shù)據(jù)后再通過網(wǎng)絡(luò)將數(shù)據(jù)發(fā)送到Tomcat服務(wù)器,在手機端與PC端都可以對Tomcat后臺MySQL數(shù)據(jù)庫進(jìn)行管理。系統(tǒng)硬件主要分為兩個功能實現(xiàn),一個是以RFID、紅外感應(yīng)、溫度感應(yīng)為主的安防功能:RFID進(jìn)行身份識別,在未識別身份的時間內(nèi)紅外感應(yīng)檢測到人員靠近時會觸發(fā)蜂鳴器警示安保人員查看異常情況,溫度傳感器用于防火監(jiān)測,溫度高于閾值也將出發(fā)蜂鳴器報警;一個是以RFID與GM65結(jié)合的庫存管理功能:RFID提供人員信息,GM65提供物品信息,兩者結(jié)合將提供完備的產(chǎn)品出入庫信息。整體硬件框架如圖1所示。
圖1 整體硬件框架圖
本系統(tǒng)底層硬件由集成開發(fā)板與所需傳感器構(gòu)成。主開發(fā)板搭載了STM32主控芯片,使用杜邦線與各傳感器相連接,實現(xiàn)各傳感器的數(shù)據(jù)采集與模塊控制。傳感器按功能需求集成在多塊不同的開發(fā)板上,實現(xiàn)安防功能的傳感器主要有溫度傳感器、紅外傳感器、蜂鳴器、Esp8266模塊,實現(xiàn)庫存管理功能則涉及RFID與掃碼模塊。
(1)STM32芯片作為核心對模塊上傳的信號進(jìn)行反應(yīng)、驅(qū)動模塊工作、控制信息上傳。本系統(tǒng)采用的STM32芯片為STM32F103C8T6,STM32F103C8T6是一款基于ARM Cortex-M內(nèi)核STM32系列的32位的微控制器、主頻72MHZ、程序存儲器容量是64KB、I/O口37個、定時器4個、串口3個、IIC接口2個、SPI接口1個、USB接口1個、供電電壓 2V~3.6V,工作溫度為-40°C~ 85°C。
(2)溫度傳感器作為環(huán)境溫度采集的主要模塊,實時監(jiān)測環(huán)境溫度,溫度傳感器會實時傳輸監(jiān)測值,報警閾值在主程序代碼中設(shè)置,由STM32主控芯片進(jìn)行控制。當(dāng)環(huán)境溫度超過設(shè)置的閾值時,觸發(fā)報警信號。本系統(tǒng)中的溫度傳感器采用的是DHT11溫濕度傳感器,DHT11數(shù)字溫濕度傳感器含有已校準(zhǔn)數(shù)字信號輸出,應(yīng)用了專用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù)。產(chǎn)品具有高可靠性與穩(wěn)定性等特點。傳感器中包含一個電阻式感濕元件和一個NTC測溫元件,并配套搭載了一個高性能8位單片機。在每個DHT11的 OTP內(nèi)存中都存儲著在極為精確的實驗室中校準(zhǔn)的標(biāo)準(zhǔn)系數(shù),這些標(biāo)準(zhǔn)系數(shù)在傳感器進(jìn)行數(shù)據(jù)采集的過程中用于數(shù)據(jù)校驗。溫度傳感器采用的單線制串行接口,也使系統(tǒng)集成變得更加的簡單快捷。在其他方面超小的體積、極低的功耗,信號傳輸距離可達(dá)20米以上等特點也使得DHT11廣泛運用于生活生產(chǎn)中的方方面面。
(3)紅外傳感器進(jìn)行入侵監(jiān)測,當(dāng)監(jiān)測區(qū)域中有人員活動時觸發(fā)異常信號,STM32主控芯片接收到異常信號后觸發(fā)蜂鳴器報警。紅外傳感器使用的是 HC-SR501人體紅外傳感器。HC-SR501是一款基于紅外線技術(shù)的自動控制紅外傳感模塊,采用LHI788探頭設(shè)計,擁有靈敏度高、可靠性強等產(chǎn)品特點。具有全自動感應(yīng)、光敏控制、兩種觸發(fā)方式(不可重復(fù)/可重復(fù))、感應(yīng)輸出封鎖等功能。
(4)蜂鳴器為主要報警裝置,由STM32主控芯片進(jìn)行控制。在傳感器監(jiān)測到環(huán)境異常時會發(fā)送報警信號于主控芯片,主控芯片接收到報警信號便控制蜂鳴器報警,達(dá)到警示效果,提醒安保人員查看。蜂鳴器采用的是無源蜂鳴器。無源蜂鳴器的產(chǎn)品特點是內(nèi)部不帶震蕩源,需要使用變頻方波來驅(qū)動、聲音頻率可控、低電平觸發(fā)。
(5)RFID模塊的主要功能是讀取IC卡的卡內(nèi)信息,卡內(nèi)信息由管理人員在員工注冊時進(jìn)行寫入,進(jìn)行身份識別時需員工將IC卡靠經(jīng)RFID讀卡模塊進(jìn)行身份識別,識別成功后,RFID將識別到的信息傳送至STM32主控芯片。主控芯片將傳送過來的信息與員工數(shù)據(jù)庫中的信息進(jìn)行比照,若信息符合則進(jìn)行后續(xù)功能、若不符則發(fā)送報警信號,控制蜂鳴器報警。RFID模塊采用的是MFRC-522射頻感應(yīng)模塊。模塊廣泛應(yīng)用于13.56MHz頻段的非接觸式通信、支持ISO14443A的多層應(yīng)用、與主機間的通信使用的是連線較少的串行通信方式。
(6)掃碼模塊主要應(yīng)用于貨物的出入庫操作。將每個貨物貼上特制的條形碼或二維碼,在貨物進(jìn)行出入庫時僅需掃碼進(jìn)行即可,無須手工錄入,提高貨物出入庫的便捷性、信息錄入的準(zhǔn)確性。錄入的信息將通過ESP8266模塊直接上傳至 PC端后臺的數(shù)據(jù)庫。掃碼模塊使用的是MJ-2060模塊。MJ-2060模塊擁有500次/秒的條形碼掃描速率,處理為ARM Cortex 32位處理器。
(7)Esp8266用于數(shù)據(jù)交互,實現(xiàn)人員信息與貨物信息的傳輸。在安防功能的實現(xiàn)上在員工信息錄入時將讀取到的員工信息進(jìn)行上傳,在系統(tǒng)啟動時通過Esp8266下載員工信息。庫存管理功能實現(xiàn),出入庫功能時通過Esp8266進(jìn)行數(shù)據(jù)上傳,貨物查詢時通過Esp8266進(jìn)行數(shù)據(jù)下載。Esp8266是一款面向物聯(lián)網(wǎng)應(yīng)用的高性價比、高集成度的Wi-Fi MCU。Esp8266使用的是正點原子的 ATKESP8266。ATK-ESP8266集成了32位 Tensilica處理器、低噪放大器、天線開關(guān)、標(biāo)準(zhǔn)數(shù)字外設(shè)接口、射頻balun、過濾器、功率放大器和電源管理模塊等豐富的硬件資源,占PCB空間低,內(nèi)置超低功耗Tensilica L106 32位處理器,CPU時鐘速度高達(dá)160MHz,支持實時操作系統(tǒng)(RTOS)和Wi-Fi協(xié)議棧,80%的處理能力可用于應(yīng)用編程和開發(fā)。性能穩(wěn)定、高度集成、低功耗等特點使其廣泛應(yīng)用于生活與生產(chǎn)中的移動設(shè)備、可穿戴電子設(shè)備和物聯(lián)網(wǎng)應(yīng)用。
系統(tǒng)軟件設(shè)計主要包含各傳感器模塊軟件設(shè)計、服務(wù)器設(shè)計Android手機客戶端設(shè)計、Web端的后臺系統(tǒng)設(shè)計這四個部分組成。
(1)STM32F103C8T6開發(fā)板軟件設(shè)計:采用uVision5軟件進(jìn)行設(shè)計,使用庫函數(shù)進(jìn)行開發(fā),需安裝stm32F10x固件庫。
(2)溫度傳感器軟件設(shè)計:本系統(tǒng)所使用DHT11溫濕度傳感器擁有三個引腳,一個電源、一個接地、一個傳輸數(shù)據(jù)。傳輸數(shù)的為DATA引腳,用于微處理器與DHT11之間的通訊,采用單總線數(shù)據(jù)傳輸格式,一次通訊時間4ms左右,傳輸?shù)臄?shù)據(jù)分為小數(shù)部分和整數(shù)部分。數(shù)據(jù)格式為8bit濕度整數(shù)數(shù)據(jù)8bit濕度小數(shù)數(shù)據(jù)、8bit溫度整數(shù)數(shù)據(jù)、8bit溫度小數(shù)數(shù)據(jù)加上8bit校驗和,共40bit數(shù)據(jù)。傳輸數(shù)據(jù)的值是比特0還是比特1由DATA輸出高電平的時間進(jìn)行判斷,50us低電平加26us-28us高電平輸出表示比特0,50us低電平加70us高電平輸出表示比特1。
(3)紅外傳感器軟件設(shè)計:HC-SR501模塊擁有三個引腳,一個電源、一個接地、一個傳輸數(shù)據(jù)。HC-SR501模塊的監(jiān)測范圍大約為7米,在有人進(jìn)入其感應(yīng)范圍內(nèi)時便會輸出高電平,對其軟件設(shè)計只需監(jiān)測相應(yīng)引腳的電平即可。
(4)蜂鳴器軟件設(shè)計:無源蜂鳴器模塊擁有三個引腳,一個電源、一個接地、一個傳輸控制信號。無源蜂鳴器本身不具備震蕩源,簡單使用直流信號是無法使其工作的,必須使用變頻的方波來驅(qū)動它。這里我們可以使用PWM(PulseWidthModulation),脈沖寬度調(diào)制技術(shù)來實現(xiàn),并且可根據(jù)不同的警示事件設(shè)置不同的鳴叫響度和曲調(diào)。
(5)掃碼模塊軟件設(shè)計:MJ-2060掃碼模塊集成度較高在使用過程中僅需使用USB進(jìn)行數(shù)據(jù)傳輸,而選用的STM32核心擁有此資源,僅需使用相應(yīng)庫函數(shù)進(jìn)行數(shù)據(jù)接收、處理即可。
(6)Esp8266軟件設(shè)計:ATK-ESP8266擁有六個引腳,分別是RXD、TXD、GND、VCC、RST、IO_O,過程中使用到的為RXD、TXD、GND、VCC。設(shè)計中使用的是AT指令開發(fā),使用AT指令的前提條件是需要向Esp8266中燒寫 AT固件,而后才能通過一系列 AT指令建立連接。Esp8266的軟件設(shè)計實際也就是編寫STM32中的代碼,使AT指令數(shù)據(jù)通過USB的數(shù)據(jù)傳輸功能傳輸至Esp8266的模塊,以此達(dá)到控制目的,促使設(shè)備連接。在設(shè)備連接之后再跟具業(yè)務(wù)的不同需要選擇相應(yīng)的工作模式。
本系統(tǒng)的云層服務(wù)器采用的是Tomcat服務(wù)器。Tomcat服務(wù)器是一個開放源代碼的Web應(yīng)用服務(wù)器,使用過程中無須額外費用,屬于輕量級應(yīng)用服務(wù)器,廣泛運用于中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合,當(dāng)之無愧成為小型系統(tǒng)開發(fā)與調(diào)試JSP程序的首選服務(wù)器。通過Tomcat可以使底層硬件讀取的信息能夠在APP中顯示出來。底層硬件讀取到的信息經(jīng)過處理后按一定格式存放到 My-SQL數(shù)據(jù)庫當(dāng)中。MySQL作為一種時常被運用于各種開發(fā)場景的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),可以將數(shù)據(jù)保存在不同的表中,避免將所有數(shù)據(jù)放在一個大數(shù)據(jù)表內(nèi),增加了速度并提高了靈活性。
在數(shù)據(jù)庫的信息處理方面,本系統(tǒng)一共使用了三張數(shù)據(jù)表,分別是入庫物品表、出庫物品表、人員信息表。
本系統(tǒng)中該層的設(shè)計完成的主要功能如下:
(1)以上述三張表為基礎(chǔ)創(chuàng)建數(shù)據(jù)庫,為將來的人員管理、物品出入庫管理提供條件;
(2)實現(xiàn)傳感器獲取數(shù)據(jù)傳輸?shù)较到y(tǒng)服務(wù)器端;
(3)實現(xiàn)手機端與系統(tǒng)服務(wù)器端間通信。
客戶端分為一般模式與管理員模式,一般模式的主要功能是查詢物品信息,對在庫、入庫、出庫的物品進(jìn)行統(tǒng)一管理;管理員模式則對庫房人員信息進(jìn)行管理,包括人員的增加、刪除,信息的更改、查詢。
一般模式的功能需要使用RFID卡片進(jìn)行身份識別,識別成功后才能使用。入庫時,系統(tǒng)將以RFID識別對應(yīng)的人員信息、MJ-2060掃碼識別的物品信息、當(dāng)下時間作為信息傳送至云端,倉管人員可在APP端進(jìn)行實時查看。出庫時,取貨人也需RFID進(jìn)行身份確認(rèn),再進(jìn)行提貨,出庫操作完成后,云端系統(tǒng)將入庫表中的信息轉(zhuǎn)存至出庫表,并在出庫表中添加取貨人員信息、出庫時間。
客戶端提供Web端與Android移動端兩種支持方式,兩者信息同步更新。
本系統(tǒng)綜合使用了物聯(lián)網(wǎng)底層硬件感知、物聯(lián)網(wǎng)云層服務(wù)器和數(shù)據(jù)庫設(shè)計、Android客戶端設(shè)計等技術(shù),實現(xiàn)了倉儲安防與庫存管理的一次性解決,極大地減少了人工成本、提高倉儲安防的效率、降低物品丟失可能性、降低財產(chǎn)損失。安防方面利用了現(xiàn)有的大部分安防監(jiān)控的基礎(chǔ),使得大部分企業(yè)無須投入過多成本便可提升安防等級。庫存管理方面,通過物品的分區(qū)存放,APP端查看存放信息,可極大提高存取效率。經(jīng)過系統(tǒng)測試與完善最終確定已經(jīng)完成系統(tǒng)最初的設(shè)計目標(biāo)。