張海鋒 ,韓 娟 ,劉炳銘 ,曹敏聰 ,朱文浩 ,張秀妹
(廣東白云學院機電工程學院,廣東 廣州 510450)
近年來,隨著我國經(jīng)濟的快速發(fā)展,物流行業(yè)發(fā)展迅猛,傳統(tǒng)的倉庫管理方法和管理模式已經(jīng)難以適應時代的發(fā)展需要。因此,推動倉庫管理由傳統(tǒng)模式向現(xiàn)代智能模式轉(zhuǎn)變迫在眉睫,倉庫管理機器人應運而生。為滿足社會對倉管機器人的需求,課題組設計了一款基于STM32和樹莓派的倉管機器人。測試結(jié)果表明,該倉管機器人極大地方便了人們快速了解倉庫的實時情況,及時發(fā)現(xiàn)問題并解決問題,在降低企業(yè)成本的同時還減少了人力的投入。
該倉管機器人系統(tǒng)組成圖如圖1所示。由圖1可知,機器人倉庫管理系統(tǒng)和4B4GB型樹莓派是倉管機器人主要的控制系統(tǒng)。驅(qū)動系統(tǒng)采用STM32F103單片機,采集和下載部分由溫度傳感器、濕度傳感器、視覺傳感器、三片機和云平臺組成。其不僅可以采集倉庫的溫度、濕度、物料尺寸等信息,還可以通過Wi-Fi無線網(wǎng)絡實現(xiàn)上位機與數(shù)據(jù)采集模塊之間的通信。測試結(jié)果表明,該機器人能夠準確檢測環(huán)境信息且運行穩(wěn)定。

圖1 倉管機器人系統(tǒng)組成圖
為了讓倉管機器人完成特定的任務,調(diào)度員可以使用云平臺遠程控制倉管機器人的移動。運動控制系統(tǒng)作為倉管機器人的終端系統(tǒng),是保證自主移動機器人高效運行的基礎。機器人的運動控制主要基于管理員的輸出指令,利用CUP計算機處理數(shù)據(jù)信息,實現(xiàn)了倉管機器人的真實運動,從而能夠順利、穩(wěn)定、準確地完成理論軌跡控制。該系統(tǒng)功能以ROS節(jié)點的形式顯示,導航調(diào)度程序和驅(qū)動器控制節(jié)點位于機箱控制系統(tǒng)中,交互層控制節(jié)點位于遠程客戶端中[1]。主控制系統(tǒng)又分為控制器、運算器、存儲器和輸入/輸出接口。
1.1.1 控制器
控制器是計算機的控制核心,控制器的電路圖如圖2所示。由圖2可知,控制器從內(nèi)存中提取指令,分析和判斷指令,根據(jù)指令發(fā)送控制信號,使計算機能夠有序協(xié)調(diào)地完成指令。此外,控制器有邏輯控制器和微處理器控制器,兩者各有優(yōu)缺點。具體比較如下:組合邏輯控制器又稱硬線控制器,由邏輯電路構成,指令功能由硬件實現(xiàn),其設計結(jié)構復雜,且設計完成后不能修改或擴展,但其速度非常快。微處理器控制器設計簡便,結(jié)構簡單,易于修改和擴展。如果要更改機器指令的功能,僅需重新組織相應的微處理器;如果要添加機器命令,僅需將微程序添加到控制內(nèi)存中,運行微程序。

圖2 控制器電路圖
1.1.2 運算器
在計算機上可以執(zhí)行各種算術和邏輯運算,算術單位也稱為算術邏輯單位,由算術邏輯單元(ALU)、插件、狀態(tài)寄存器、通用寄存器組等構成。算術邏輯運算單元的基本功能包括加法、減法、乘法、除法和AND、OR、NOT、XOR等邏輯運算以及移動、代碼補正等運算。計算機配置CPU的核心和控制單元,在運行時,控制器決定計算單元的操作和操作模式。計算單元處理的數(shù)據(jù)來自陣列,處理后的結(jié)果數(shù)據(jù)通常返回內(nèi)存或暫時存儲在計算單元中,計算單元是計算機處理數(shù)據(jù)的功能部件。數(shù)據(jù)處理主要包括數(shù)據(jù)的算術運算和邏輯數(shù)據(jù)的邏輯運算,所以實現(xiàn)數(shù)據(jù)的算術運算和邏輯運算是求解器的核心功能。
1.1.3 存儲器
存儲器是計算機系統(tǒng)中的記憶設備,用于存儲程序和數(shù)據(jù)。計算機存儲記憶分為內(nèi)部和外部兩種,內(nèi)部內(nèi)存直接連接到處理器,將當前程序和數(shù)據(jù)存儲在稱為主內(nèi)存的處理器中,其特點是訪問速度快,基本上支持處理器的速度,但價格高、存儲容量小。外部內(nèi)存主要用于存儲暫時不使用但長期保存的數(shù)據(jù)和進程,存儲在外部內(nèi)存中的數(shù)據(jù)必須傳送到內(nèi)部內(nèi)存以供執(zhí)行,其特點是內(nèi)存容量大、成本低,但訪問速度相對較慢。
1.1.4 輸入/輸出接口
輸入/輸出接口也稱為I/O接口,是將處理器連接到外部設備的邏輯電路,同時集成了隨機存儲器(RAM)、存儲器程序(ROM)、數(shù)據(jù)存儲器(RAM)、I/O接口、計時計數(shù)器、中斷控制器和系統(tǒng)時鐘電路。每個I/O接口都有一個處理器地址,處理器使用不同的I/O接口執(zhí)行外部操作。單個計算機使用總線在CPU、RAM、ROM和I/O模塊之間傳輸信息。內(nèi)置于特定類型計算機中的RAM和ROM集成芯片的尺寸、I/O接口的數(shù)量、計時計數(shù)器的類型均不同,但CPU只有一個。I/O門戶是單個系統(tǒng)的重要資源,是衡量單個系統(tǒng)性能的重要指標之一。I/O接口又分為并行口和串行口,并行I/O接口通常是可從軟件輸入或輸出的獨立雙向I/O接口;串行I/O接口用于單個設備與串行設備或其他單個系統(tǒng)的通信。
傳感器電路板結(jié)構圖如圖3所示,樹莓派的主要連接引腳圖如圖4所示。從圖中,我們可以看到傳感器內(nèi)部電路的結(jié)構設計及其與樹莓派的關系。

圖3 傳感器電路板結(jié)構圖

圖4 樹莓派引腳圖
對于大型倉庫而言,為了保護倉庫的安全,避免突發(fā)事故的發(fā)生,仍需要大量人員晝夜不停地巡邏。因此,課題組在機器人上安裝了紅外傳感器系統(tǒng),使用了HC-SR501人體紅外感應模塊。如果在延遲時間內(nèi)有人在感應范圍內(nèi)活動,則將持續(xù)輸出高電平;當人離開感應區(qū)后,高電平又會轉(zhuǎn)為低電平。
溫度傳感器內(nèi)部電路分析圖如圖5所示。根據(jù)溫度傳感器感應的溫度,調(diào)節(jié)內(nèi)部滑動電阻的阻值,計算出工作電壓,如式(1)所示。當溫度為24 ℃,R1和R2均取值為1 000 Ω。

圖5 溫度傳感器內(nèi)部電路分析圖

目前,企業(yè)對于產(chǎn)品的生產(chǎn)、庫存管理和倉儲管理越來越重視,許多倉庫都存有企業(yè)生產(chǎn)中非常重要的材料。為了保持良好的庫存質(zhì)量,并為貨物提供適合的儲存溫度和濕度等有利條件,應盡可能避免倉庫外天氣條件的不利影響。如果倉庫的溫度和濕度不適合儲存貨物,應采取有效措施控制倉庫的溫度、濕度。因此,制定相關行業(yè)標準,建立實時溫度和濕度監(jiān)測系統(tǒng),并保存完整的歷史溫度和濕度數(shù)據(jù)具有非常重要的作用。在此實驗中,課題組使用了熱電偶的溫度傳感器,其可以在大溫度范圍和各種大氣壓下進行溫度測量。當導體形成回路時,有了溫度梯度,回路中的電流通過兩端形成電動勢,再根據(jù)傳輸?shù)碾娏鞔笮★@示溫度高低。然后通過無線電的方式上傳至無線電環(huán)境監(jiān)控主機,環(huán)境監(jiān)控主機接收到無線電后,通過網(wǎng)口上傳至電腦軟件平臺,或者通過以太網(wǎng)、GPRS上傳的方式上傳至互聯(lián)網(wǎng),再由互聯(lián)網(wǎng)上傳至軟件平臺[2]。
課題組設計的倉管機器人選用了OpenCV視覺系統(tǒng),該視覺系統(tǒng)擁有龐大的視覺庫和多種常用算法。在視覺系統(tǒng)中配備有紅外投影模組、面部接近感知系統(tǒng)、計算機監(jiān)測信息控制系統(tǒng)(MIC)以及兩個相機模組的LeTMC-520S三合一體感攝像頭和RGBD深度相機,為產(chǎn)品提供了優(yōu)良的視覺感應。樹莓派的CSI接口攝像頭及LeTMC-520S三合一體感攝像頭可以獲取小車附近環(huán)境的圖像,并通過OpenCV視覺系統(tǒng)中提供的Canny函數(shù)運算對獲取的圖像濾除噪聲后[3],計算出圖像中每個像素點的梯度強度和方向;應用非極大值抑制(Non-Maximum Suppression),消除邊緣檢測帶來的雜散響應,再應用雙閾值(Double-Threshold)檢測以確定真實的和潛在的邊緣,通過抑制孤立的弱邊緣最終完成邊緣檢測;結(jié)合Turbot-VSLAM的三維色彩建圖,最后通過Wi-Fi網(wǎng)絡實時反饋到管理者屏幕上[4]。Canny函數(shù)運算的效果較好,更適合用于檢測真正的弱邊緣,Canny算子給出了一個好的邊緣檢測算子的3個指標:1)低失誤率,即真正的邊緣點盡可能提取,非邊緣點盡可能不提取;2)高位置精度,檢測的邊緣應盡可能接近真實邊緣;3)對每一個邊緣點有唯一的響應,即得到單像素寬度的邊緣。還有其他的算法,如Shen-Castan算法,雖然計算出的效果和Canny算法的效果大致相同,但該算法更為復雜,因而采用Canny函數(shù)運算[5]。OpenCV視覺系統(tǒng)代碼的部分展示如下[6]:

倉管機器人的監(jiān)控系統(tǒng)的各個模塊及組成部分如圖6所示。

圖6 監(jiān)控系統(tǒng)的各個模塊及組成部分
智能調(diào)度控制系統(tǒng)的實時監(jiān)控與預警類應用為倉庫管理的實時在線監(jiān)視、運行分析、操作和控制等提供了核心支撐,是倉庫管理安全穩(wěn)定運行的重要技術保障。實時監(jiān)控系統(tǒng)分為實時監(jiān)控、網(wǎng)絡傳輸、實時操作三個模塊。課題組設計的監(jiān)控系統(tǒng)由機器人中帶有的視覺傳感器對物體進行觀測,通過樹莓派的CSI接口攝像頭獲取圖像信息后,數(shù)據(jù)會傳遞到后臺并自動運行Python腳本,在局域網(wǎng)構建一個視頻監(jiān)控系統(tǒng);之后將處理后的信息傳輸?shù)骄钟蚓W(wǎng),任何設備連上局域網(wǎng)后,打開瀏覽器地址欄輸入樹莓派的IP地址即可打開網(wǎng)絡監(jiān)控系統(tǒng),在設備上可以安裝帶有SSH(安全外殼協(xié)議)的App,管理者就可以隨時發(fā)送指令給樹莓派執(zhí)行視頻監(jiān)控腳本,也有利于對機器人進程任務的管理。
在網(wǎng)絡傳輸上,相較于平常使用的串口和USB等數(shù)據(jù)傳輸方式,網(wǎng)卡的快速傳輸大量數(shù)據(jù)、準確性高、傳輸距離遠等一系列優(yōu)勢表明其更適用于遠程傳輸。基于此,課題組為倉管機器人選用千兆網(wǎng)卡RTL8211EG芯片,將數(shù)據(jù)通過網(wǎng)線以及交換機傳輸?shù)竭h程圖像拼接與顯示單元中,RTL8211EG到MAC(FPGA)之間的傳輸接口采用GMII接口[7]。其向FPGA輸出125 MHz,可與遠程圖像拼接與顯示單元自動協(xié)商匹配成千兆網(wǎng)傳輸模式進行傳輸,再通過交換機進行擴展,可完成無限多個攝像頭數(shù)據(jù)的傳輸。網(wǎng)卡只具有PHY(物理層)功能,所以需要在FPGA內(nèi)部完成對數(shù)據(jù)包的打包,傳輸視頻采集模塊處理完畢的數(shù)據(jù)[8]。實時操作系統(tǒng)可以管理當前機器人執(zhí)行的所有任務,其多任務管理能力體現(xiàn)在決定任務執(zhí)行次序以及強制中斷正在執(zhí)行的任務的權利[9-10]。
倉管機器人的出現(xiàn)可以極大地減少人力和物力的支出,為企業(yè)降低成本并帶來可靠的收益。課題組設計的機器人可以應用于各大型低溫倉庫、藥品倉庫和快遞倉庫等,通過倉管機器人的智能管理,有效地保障了倉庫的安全以及貨物的質(zhì)量。同時,此機器人是較為先進的現(xiàn)代化設計產(chǎn)品,可以有效完善倉庫的管理并使之更具簡便性和智能性。