智能儲(chǔ)物柜物品存放和管理系統(tǒng)介紹
智能儲(chǔ)物柜對(duì)中小戶(hù)型住宅而言,提高空間利用率是使其具有較高舒適性的關(guān)鍵。在家庭、超市和辦公室等場(chǎng)合,傳統(tǒng)的儲(chǔ)物方式多以利用地面附近空間、人工取放的方式進(jìn)行,高處空間利用率低下。在通過(guò)利用室內(nèi)高處空間、提高物品擺放密度等方法,提高物品的利用率的同時(shí)也會(huì)對(duì)整套儲(chǔ)物系統(tǒng)的易用性、自動(dòng)化程度提出更高的要求。在物品管理方面,物品以往多通過(guò)人腦或者書(shū)面記錄的方法進(jìn)行記錄。在物品種類(lèi)繁多或需要準(zhǔn)確管理的情況下,這種方式效率低下,可靠性較差,需要較多的人工成本。針對(duì)這些問(wèn)題,利用智能家居和家具機(jī)電一體化的理念,采用機(jī)電一體化和自動(dòng)倉(cāng)庫(kù)相關(guān)技術(shù),設(shè)計(jì)了一套室內(nèi)高處空間物品存放系統(tǒng)和物品管理系統(tǒng)。
1.智能儲(chǔ)物柜系統(tǒng)所依托的機(jī)械結(jié)構(gòu)和運(yùn)動(dòng)
智能儲(chǔ)物柜;物品存放柜和管理系統(tǒng)如圖1所示。物品管理系統(tǒng)可控制多組儲(chǔ)物系統(tǒng);室內(nèi)高處空間物品存放系統(tǒng)作為一組儲(chǔ)物系統(tǒng)接受控制。兩系統(tǒng)配合完成物品的自動(dòng)存取和智能管理。
(圖1:智能儲(chǔ)物柜物品存放和管理系統(tǒng))
整個(gè)系統(tǒng)的控制系統(tǒng)分為兩層,上層即物品管理系統(tǒng),下層是物品存放系統(tǒng)的嵌入式系統(tǒng)。機(jī)械結(jié)構(gòu)的主要組成如下:
A.固定在室內(nèi)高處的柜體,其內(nèi)部設(shè)有多個(gè)用來(lái)存放物品的模塊化單元(下簡(jiǎn)稱(chēng)儲(chǔ)物箱)。
B.柜體正面安裝有可以橫向移動(dòng)的運(yùn)輸單元,運(yùn)輸單元由鋼絲繩牽引進(jìn)行移動(dòng)。
C.運(yùn)輸單元上裝有貨叉機(jī)構(gòu),完成儲(chǔ)物單元的選擇及取放動(dòng)作。
D.柜體一端安裝有用來(lái)使儲(chǔ)物單元上下運(yùn)動(dòng)的升降平臺(tái),通過(guò)卷?yè)P(yáng)機(jī)帶動(dòng)。
2.控制系統(tǒng)功能要求
控制系統(tǒng)應(yīng)具備的功能如下:
A.控制多臺(tái)電機(jī)的運(yùn)動(dòng),協(xié)調(diào)完成物品取放的功能。
B.使用人員通過(guò)觸摸屏點(diǎn)選需要的物品后,控制系統(tǒng)根據(jù)內(nèi)部數(shù)據(jù)庫(kù),自動(dòng)完成物品位置的判斷和機(jī)械的控制。
C.通過(guò)條形碼或二維碼識(shí)別物品,聯(lián)網(wǎng)獲取物品信息。
D.能通過(guò)手機(jī)以無(wú)線(xiàn)的方式對(duì)系統(tǒng)進(jìn)行物品查找、登記、取出和獲取信息等功能。
3.控制系統(tǒng)結(jié)構(gòu)
(圖2:智能儲(chǔ)物柜控制系統(tǒng)結(jié)構(gòu))
控制系統(tǒng)結(jié)構(gòu)如圖2所示。操作者可通過(guò)安卓平臺(tái)或者手機(jī)對(duì)系統(tǒng)進(jìn)行控制,安卓平臺(tái)作為上位機(jī)完成人機(jī)交互、遠(yuǎn)程控制、篩選策略、物品識(shí)別和信息下載等功能,當(dāng)上位機(jī)完成物品的篩選和定位后,將位置編號(hào)指令通過(guò)串口發(fā)送給下位機(jī);下位機(jī)接收后,據(jù)此查詢(xún)內(nèi)部數(shù)據(jù),獲得目標(biāo)位置,進(jìn)行運(yùn)動(dòng)的規(guī)劃,再將運(yùn)動(dòng)的規(guī)劃轉(zhuǎn)化成電機(jī)驅(qū)動(dòng)控制信號(hào),控制機(jī)構(gòu)完成物品的取放。當(dāng)使用手機(jī)進(jìn)行操作時(shí),手機(jī)通過(guò)藍(lán)牙與安卓平臺(tái)進(jìn)行通訊,同步信息,在提供便捷性的同時(shí)可完成與安卓平臺(tái)相同的操作。控制過(guò)程中的信息流如圖3所示。
(圖3:智能儲(chǔ)物柜控制過(guò)程中的信息流)
3.1通訊協(xié)議
設(shè)計(jì)中,考慮到系統(tǒng)的一致性和程序流程簡(jiǎn)潔,避免不必要的轉(zhuǎn)換,設(shè)定了統(tǒng)一的應(yīng)用層通訊協(xié)議。
3.2上層控制平臺(tái)的實(shí)現(xiàn)
3.2.1平臺(tái)功能
A.物品信息掃描錄入。用戶(hù)在使用本系統(tǒng)存儲(chǔ)物品時(shí),可通過(guò)掃描二維碼,快速錄入物品的信息,如物品的名稱(chēng)、照片、生產(chǎn)日期、保質(zhì)期和物品分類(lèi)等,平臺(tái)功能可節(jié)省用戶(hù)手動(dòng)輸入物品信息的時(shí)間。平臺(tái)功能的操作流程是:在初次進(jìn)行某件物品存儲(chǔ)時(shí),用戶(hù)需要手動(dòng)輸入物品信息,系統(tǒng)會(huì)幫用戶(hù)生成并打印出二維碼標(biāo)簽,用戶(hù)將二維碼標(biāo)簽粘貼于物品上;之后進(jìn)行物品信息存儲(chǔ)時(shí),用戶(hù)只需通過(guò)手機(jī)或平板電腦的攝像頭掃描此二維碼標(biāo)簽,系統(tǒng)將快速?gòu)闹凶x取包括物品照片、生產(chǎn)日期、保質(zhì)期、物品分類(lèi)和物品名稱(chēng)等信息。當(dāng)用戶(hù)完成錄入后,系統(tǒng)會(huì)根據(jù)物品信息自動(dòng)分類(lèi),并顯示相關(guān)信息。系統(tǒng)還提供了用戶(hù)管理、物品查找和物品搜索等功能。為便于用戶(hù)使用安卓系統(tǒng)與移動(dòng)終端使用相同的界面。
B.無(wú)線(xiàn)控制。用戶(hù)可以手機(jī)、平板電腦等移動(dòng)設(shè)備端,無(wú)線(xiàn)近程控制機(jī)械與動(dòng)力裝置完成物品的存取。此功能可使用戶(hù)在家里的大部分地方都能無(wú)線(xiàn)控制此儲(chǔ)物系統(tǒng)。
3.2.2實(shí)現(xiàn)方式
A.物品信息掃描錄入。①條形碼和二維碼,綜合考慮成本、實(shí)用性、技術(shù)成熟成熟程度,選用條形碼和二維碼作為物品識(shí)別的媒介。當(dāng)物品上具有條形碼時(shí),通過(guò)掃描條形碼,聯(lián)網(wǎng)搜索獲得物品信息,自動(dòng)填入,由用戶(hù)補(bǔ)充。當(dāng)物品上沒(méi)有條形碼時(shí),由用戶(hù)錄入信息,并打印二維碼,粘貼到物品上。由于二維碼包含的信息量大,用戶(hù)錄入的信息可以部分存入,便于在多個(gè)系統(tǒng)之間轉(zhuǎn)移,避免重復(fù)輸入。②二維碼圖片的生成,系統(tǒng)支持QRcode、PDF417兩種二維碼編碼方式,利用安卓平臺(tái)提供的圖片處理接口Bitmap,將物品的各類(lèi)信息以Json(javascriptobjectnotation)的格式編碼成一個(gè)字符串,然后將字符串轉(zhuǎn)換成黑白點(diǎn)陣,最后轉(zhuǎn)化為相應(yīng)的二維碼圖片。③二維碼的識(shí)別,系統(tǒng)利用手機(jī)或平板電腦自帶的攝像頭,拍攝物體上的二維碼標(biāo)簽,對(duì)其多幀圖片,分析其中的黑白點(diǎn)陣排列,判定其編碼格式(QRcode或PDF417),然后利用此編碼格式的編碼規(guī)則,對(duì)其進(jìn)行解碼,得到字符串,然后利用java語(yǔ)言提供的JSON格式串處理接口JSONObject與JSONParser,從中提取物品的各類(lèi)信息。圖4為二維碼識(shí)別的流程。
(圖4:智能儲(chǔ)物柜識(shí)別二維碼的流程)
B. 無(wú)線(xiàn)控制。移動(dòng)客戶(hù)端與安卓固定平臺(tái)之間的無(wú)線(xiàn)通信—藍(lán)牙通信,系統(tǒng)利用設(shè)計(jì)好的通信協(xié)議,使用安卓平臺(tái)提供的藍(lán)牙通信接口Blue-toothAdapter、BluetoothDevice,實(shí)現(xiàn)藍(lán)牙模塊的開(kāi)啟關(guān)閉、藍(lán)牙設(shè)備的掃描和藍(lán)牙設(shè)備的配對(duì);利用BluetoothServerSocket與BluetoothSocket接口,實(shí)現(xiàn)全雙工的藍(lán)牙通信。對(duì)于安卓系統(tǒng),藍(lán)牙通信無(wú)需了解具體協(xié)議,通訊的建立只需通過(guò)調(diào)用接口,完成啟動(dòng)流程。安卓固定平臺(tái)與單片機(jī)之間的串口通信,安卓操作系統(tǒng)本身并不提供串口通信功能,系統(tǒng)通過(guò)編寫(xiě)安卓串口驅(qū)動(dòng),實(shí)現(xiàn)安卓的串口通信功能,利用驅(qū)動(dòng)中提供的串口通信接口HardwareController,實(shí)現(xiàn)與單片機(jī)的串口通信。
3.3下層控制的實(shí)現(xiàn)
3.3.1功能
通過(guò)主控芯片與上層控制平臺(tái)之間的協(xié)調(diào)通訊,控制機(jī)械系統(tǒng)完成規(guī)定動(dòng)作流程,實(shí)現(xiàn)對(duì)物品數(shù)據(jù)庫(kù)數(shù)據(jù)與實(shí)際物品所在空間位置的同步。涉及到如下部分功能模塊:上位機(jī)通訊模塊、頻率可調(diào)步進(jìn)電機(jī)控制脈沖的生成模塊、位置檢測(cè)模塊、多步進(jìn)電機(jī)控制順序的組織與協(xié)調(diào)以及運(yùn)行狀態(tài)指示模塊。
3.3.2實(shí)現(xiàn)方式
A. 電路結(jié)構(gòu)。下層控制系統(tǒng)硬件結(jié)構(gòu)如圖5所示,下層主控制器芯片AT89S52單片機(jī),它具有8K字節(jié)程序存儲(chǔ)空間,256字節(jié)數(shù)據(jù)存儲(chǔ)空間,沒(méi)有內(nèi)帶EEPROM存儲(chǔ)空間,而STC89C52RC單片機(jī)具有8K字節(jié)程序存儲(chǔ)空間,512字節(jié)數(shù)據(jù)存儲(chǔ)空間,內(nèi)帶4K字節(jié)EEPROM存儲(chǔ)空間,可直接使用串口下載。通訊模塊采用MAX232芯片。單片機(jī)及外圍芯片供電使用LM2596開(kāi)關(guān)電壓調(diào)節(jié)器。
(圖5:智能儲(chǔ)物柜下層控制系統(tǒng)硬件結(jié)構(gòu))
B. 主要程序流程。下層控制系統(tǒng)程序流程如圖6所示。整個(gè)結(jié)構(gòu)為自然順序的循環(huán),完成上位機(jī)的一個(gè)存或者取的任務(wù)。上位機(jī)先取出所需用來(lái)存放的儲(chǔ)物盒,然后用戶(hù)將所要存放東西放入取來(lái)的儲(chǔ)物盒之中。之后向單片機(jī)發(fā)出信號(hào),單片機(jī)控制儲(chǔ)物盒上升到儲(chǔ)物柜之中,然后將裝有所存放東西的儲(chǔ)物盒返回之前的位置之中,完成存放。而取的過(guò)程同樣按照存放任務(wù)的循環(huán),將所需的儲(chǔ)物盒取出,然后再放回的順序,完成取出物品的循環(huán)。
(圖6:智能儲(chǔ)物柜下層控制系統(tǒng)程序流程)
C. 串口通訊協(xié)議。整個(gè)運(yùn)動(dòng)過(guò)程中與上位機(jī)的通訊并不頻繁,通訊僅在進(jìn)行任務(wù)分配時(shí)進(jìn)行,也即是在每次動(dòng)作循環(huán)前后進(jìn)行數(shù)據(jù)傳輸與確認(rèn)。電路采用12MHZ晶體振蕩器,為保證通訊之間的精度,減少誤碼的發(fā)生,所以采用更高2400波特率,保證與上位機(jī)之間通訊不會(huì)出現(xiàn)信號(hào)丟失現(xiàn)象,并且在軟件系統(tǒng)中進(jìn)行通訊校驗(yàn)的步驟,如CRC32即循環(huán)冗余校驗(yàn)檢測(cè)。
D. 步進(jìn)電機(jī)控制程序設(shè)計(jì)。采用步進(jìn)電機(jī)驅(qū)動(dòng)器時(shí),步進(jìn)電機(jī)的基本控制方法為產(chǎn)生一個(gè)脈沖信號(hào)時(shí),步進(jìn)電機(jī)向規(guī)定方向產(chǎn)生一個(gè)轉(zhuǎn)角θ,當(dāng)送入一系列脈寬可調(diào)的連續(xù)脈沖信號(hào)時(shí),步進(jìn)電機(jī)產(chǎn)生相應(yīng)的旋轉(zhuǎn)速度,步進(jìn)電機(jī)的細(xì)分次數(shù)將通過(guò)步進(jìn)電機(jī)的驅(qū)動(dòng)器來(lái)調(diào)節(jié),需要通過(guò)分別對(duì)每個(gè)步進(jìn)電機(jī)工作速度與效率進(jìn)行評(píng)估后進(jìn)行選擇。脈沖產(chǎn)生方法分為兩種,一種是通過(guò)延時(shí)函數(shù)來(lái)產(chǎn)生,但這種方法的缺點(diǎn)是產(chǎn)生的脈沖不,并且浪費(fèi)了大量的控制器計(jì)算時(shí)間;另二種是通過(guò)定時(shí)器中斷來(lái)產(chǎn)生脈沖,這樣的方法產(chǎn)生的脈沖較準(zhǔn)確,但需要利用一個(gè)定時(shí)器來(lái)控制,設(shè)計(jì)采用這種方案。但這樣就有一個(gè)問(wèn)題,主控制芯片的定時(shí)器資源比較緊張,串口通信需要占用3個(gè)定時(shí)器的其中之一,因此,步進(jìn)電機(jī)控制需要充分利用STC89C52RC剩余的2個(gè)定時(shí)器中斷,需要避開(kāi)同時(shí)對(duì)多個(gè)步進(jìn)電機(jī)的同時(shí)操作,分別在不同時(shí)段對(duì)步進(jìn)電機(jī)進(jìn)行操作,克服主控制器定時(shí)器的缺乏。
通過(guò)速度參數(shù)計(jì)算產(chǎn)生相應(yīng)定時(shí)器初值,當(dāng)脈沖計(jì)數(shù)參數(shù)到達(dá)指定次數(shù)時(shí)進(jìn)行定時(shí)器處置的重裝。加速運(yùn)動(dòng)時(shí),重裝脈沖計(jì)數(shù)間隔逐漸增加,因此,使速度產(chǎn)生間隔變化。減速過(guò)程與加速過(guò)程相反,重裝間隔脈沖逐漸減少,產(chǎn)生相應(yīng)的減速運(yùn)動(dòng)。步進(jìn)電機(jī)可采用開(kāi)環(huán)控制,但由于繩傳動(dòng)時(shí)會(huì)產(chǎn)生微小誤差,因此,需要進(jìn)行位置矯正。具體方法:通過(guò)為每個(gè)電機(jī)位置相應(yīng)的全局變量進(jìn)行記錄,每次電機(jī)運(yùn)行達(dá)到規(guī)定次數(shù)時(shí),進(jìn)行減速及停止的操作。當(dāng)進(jìn)行完一個(gè)存取的工作循環(huán)時(shí),每個(gè)存取箱進(jìn)行歸位。歸位時(shí)檢測(cè)相應(yīng)位置行程開(kāi)關(guān)的狀態(tài),當(dāng)?shù)竭_(dá)初始狀態(tài)時(shí),進(jìn)行相應(yīng)變量的重置。最終通過(guò)各相關(guān)動(dòng)作產(chǎn)生所需的存放及取用動(dòng)作。
4.結(jié)束語(yǔ)
智能柜生產(chǎn)廠(chǎng)家將智能家居的理念與自動(dòng)化倉(cāng)庫(kù)的理念相結(jié)合,討論了基于安卓平臺(tái)的智能儲(chǔ)物柜控制系統(tǒng),包括系統(tǒng)結(jié)構(gòu)、硬件組成、軟件設(shè)計(jì)和通訊協(xié)議。經(jīng)測(cè)試,系統(tǒng)運(yùn)行穩(wěn)定,操作方便,界面友好,達(dá)到了預(yù)期的效果。系統(tǒng)使得自動(dòng)儲(chǔ)物柜更加人性化,易于操作。物品管理的功能有助于對(duì)物品進(jìn)行查找、分類(lèi)、管理和統(tǒng)計(jì)。