張向鴻, 楊海馬, 李曉東, 劉 瑾, 方 剛, 丁大民
(1.上海理工大學(xué) 光電信息與計算機工程學(xué)院,上海 200093; 2.上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620;3.上海航天衛(wèi)星應(yīng)用有限公司,上海 200439)
近年來,隨著各國經(jīng)濟的發(fā)展與世界貿(mào)易的興起,物流產(chǎn)業(yè)配套技術(shù)也獲得了巨大的進步,自動導(dǎo)引車(automatic guided vehicle,AGV)物流運輸車作為物流環(huán)節(jié)重要組成,是現(xiàn)代倉儲服務(wù)的關(guān)鍵部分之一,其具有工作效率高,可靠性好,自動化程度高等優(yōu)點,在港口集裝區(qū)和貨場堆棧出棧等領(lǐng)域獲得了廣泛應(yīng)用。
實現(xiàn)貨物標(biāo)識的自動識別與制定相應(yīng)策略實現(xiàn)科學(xué)搬運是AGV系統(tǒng)的核心技術(shù),采用視覺導(dǎo)引的方式可以方便快捷、科學(xué)高效的完成目標(biāo)識別,同時也可以提升AGV在復(fù)雜工作環(huán)境下的適應(yīng)性,對于相關(guān)技術(shù)的研究廣闊的應(yīng)用價值。陳顯寶等人將圖像算法引入AGV控制領(lǐng)域[1],梁禮明等人將YOLOv3算法應(yīng)用到AGV圖像識別領(lǐng)域[2,3],孔繁望、任彧對AGV的識別算法和路徑規(guī)劃進行改進[4,5]。
本文采用單目視覺算法進行目標(biāo)識別,同時作為AGV的導(dǎo)航信號,實時導(dǎo)引AGV進行工作。在近距離失去圖像信號時,利用激光雷達信號通過模糊控制算法精準(zhǔn)定位,完成貨物的插取和放置,根據(jù)上述研究思路設(shè)計的控制系統(tǒng),可以快捷高效地運用于AGV的工作目標(biāo)識別、精準(zhǔn)插取和科學(xué)運輸問題。
現(xiàn)階段在物流運輸工作環(huán)境中,五輪式叉車的使用最為廣泛,在驅(qū)動輪兩側(cè)添加萬向輪后,使得叉車支撐能力增強,載重量提升,運行時狀態(tài)平穩(wěn),平衡性能優(yōu)異,同時五輪式叉車轉(zhuǎn)彎半徑小,因此適用于多種環(huán)境復(fù)雜的工作場景。此次所研究的五輪式叉車結(jié)構(gòu)尺寸圖如圖1所示。
圖1 五輪式叉車結(jié)構(gòu)
五輪式叉車AGV由于驅(qū)動輪在車體后方的特殊構(gòu)造,可以以左右前叉頂點連線的中點為圓心,以自身長度為半徑原地旋轉(zhuǎn)完成轉(zhuǎn)向,但原地轉(zhuǎn)向時不產(chǎn)生橫向位移,無法改變車體橫向位置。對于與車體姿態(tài)平行的目標(biāo)先轉(zhuǎn)向90°與目標(biāo)垂直后,運動到與目標(biāo)處于同一條直線的位置上,再次旋轉(zhuǎn)90°回到初始角度,即可對準(zhǔn)目標(biāo)。在車體與目標(biāo)的位置關(guān)系不能直接完成工作時,也可以通過上述方法調(diào)整車體姿態(tài)。
本設(shè)計使用單目相機采用視覺導(dǎo)引方式控制AGV運動,方案硬件成本可控,軟件算法價值高,通過單目相機實時獲取現(xiàn)場圖像,利用深度學(xué)習(xí)模型匹配現(xiàn)場環(huán)境中的目標(biāo),實時跟蹤捕捉目標(biāo),控制叉車進行準(zhǔn)確位移和貨物取放,完成工作要求,該方式具有識別準(zhǔn)確度高,應(yīng)用環(huán)境廣,定位精確的優(yōu)點,工程應(yīng)用前景廣泛,具有良好的應(yīng)用價值。
控制系統(tǒng)主要由三部分構(gòu)成,即信息采集單元、決策運算單元和接收執(zhí)行單元。信息采集單元選擇單目相機采集圖像信息,利用激光雷達測量AGV與目標(biāo)之間的實際距離,車身安裝超聲波傳感器防止碰撞和判斷是否完成插取動作。運算決策單元選擇工控機進行圖像處理,同時接收激光雷達和超聲波傳感器的數(shù)據(jù),制定適當(dāng)?shù)目刂撇呗?,控制AGV運動和工作。接收執(zhí)行單元接收運算決策單元下發(fā)的控制指令,驅(qū)動AGV運動完成工作,控制電路與驅(qū)動電路之間選用繼電器做隔離輸出。
為實現(xiàn)對AGV的完全控制保障測試安全,在完善自動控制功能基礎(chǔ)上,保留手動控制功能,輔助調(diào)試工作進行。在實際工程應(yīng)用中除了編寫AGV的轉(zhuǎn)彎程序、加減速程序和高速運行程序外,還需要編寫制動程序、取放托盤工作程序和防碰撞安全程序[6,7]。
本文所探討的基于深度學(xué)習(xí)的托盤的目標(biāo)識別是利用YOLOv5深度卷積神經(jīng)網(wǎng)絡(luò)模型,搭建基于PyTorch 深度學(xué)習(xí)框架下的多場景插盤目標(biāo)檢測實驗環(huán)境,通過數(shù)據(jù)集制取,樣本標(biāo)注、模型訓(xùn)練、系統(tǒng)評估等步驟完成對復(fù)雜場景中的托盤目標(biāo)識別和坐標(biāo)定位。通過選取數(shù)據(jù)樣本對檢測模型進行驗證,并根據(jù)訓(xùn)練結(jié)果不斷改進,引入一些適用于托盤識別的優(yōu)化方法和網(wǎng)絡(luò)結(jié)構(gòu)。
本文的圖像檢測部分利用YOLOv5深度學(xué)習(xí)目標(biāo)檢測算法對目標(biāo)進行實時檢測識別,其中YOLOv5網(wǎng)絡(luò)模型結(jié)構(gòu),主要由以下三個主要組件組成:1)Backbone:在不同圖像細粒度上聚合并形成圖像特征的卷積神經(jīng)網(wǎng)絡(luò);2)Neck:一系列混合和組合圖像特征的網(wǎng)絡(luò)層,并將圖像特征傳遞到預(yù)測層;3)Head(檢測):對圖像特征進行預(yù)測,生成邊界框和預(yù)測類別。
識別模型學(xué)習(xí)數(shù)據(jù)集為現(xiàn)場獲取的目標(biāo)圖像,數(shù)據(jù)集大小為1 500張,分辨率為1 280×720,數(shù)據(jù)集部分內(nèi)容如圖2所示。
圖2 目標(biāo)樣本數(shù)據(jù)集
實驗采用Labelimg對圖像進行標(biāo)注,對樣本數(shù)據(jù)集進行分類,訓(xùn)練集、驗證集和測試集按照0.8︰0.16︰0.04的比例進行劃分。YOLOv5模型采用單階段檢測結(jié)構(gòu),其主要分為五個階段:1)Input:圖像輸入端并且進行了數(shù)據(jù)處理,進行Mosaic、Cutout或矩陣訓(xùn)練操作;2)Backbone:提取出高中低層的特征,使用了CSP、Fcous、Leaky ReLU等;3)Neck:將各層次的特征進行融合提取出大中小的特征圖;4)Head:進行最終檢測部分,在特征圖上應(yīng)用錨定框,并生成帶有類概率、對象得分和包圍框的最終輸出向量;5)Loss:計算預(yù)測結(jié)果與Ground truth的Loss,反向傳播更新模型的參數(shù)。通過上述算法原理編寫目標(biāo)識別程序,對學(xué)習(xí)模型進行訓(xùn)練,直到識別準(zhǔn)確率達到98 %后,將目標(biāo)識別程序封裝為模塊使用。
將實驗用托盤放置于AGV前方,實地測試目標(biāo)識別準(zhǔn)確率,識別效果如圖3所示。經(jīng)過測試,實驗?zāi)P湍軌驕?zhǔn)確地對復(fù)雜場景的托盤目標(biāo)進行高精度的分類識別與定位,識別準(zhǔn)確率高于95 %,滿足實驗測試要求,相機視線被遮擋失去目標(biāo)后,遮擋物離開視線過程中,工作目標(biāo)遮擋部分小于50 %時可以重新識別捕捉目標(biāo),模型抗干擾性能強。
圖3 目標(biāo)識別效果
當(dāng)上位機通過圖像信息識別到目標(biāo)時,AGV需要運動到目標(biāo)正前方1m固定位置,方便后續(xù)完成插取動作,此時AGV與目標(biāo)位置之間的位置關(guān)系可以近似為一個直角三角形,運動路線有以下三種策略,如圖4所示[8,9]。當(dāng)目標(biāo)位于AGV正前方時,近似簡化為三角形的一條直角邊。
圖4 路徑規(guī)劃示意
當(dāng)AGV行進到理想插取位置時,視覺算法識別失去圖像信息,同時在實驗過程中,由于AGV沒有與地面產(chǎn)生強關(guān)聯(lián),因此,AGV的實際運動軌跡與理論計算軌跡會產(chǎn)生一定量的偏差,此時需要通過激光雷達精準(zhǔn)限位,完成近距離插取目標(biāo)工作[10,11]。
模糊邏輯控制簡稱模糊控制,是以模糊集合論、模糊語言變量和模糊邏輯推理為基礎(chǔ)的一種計算機數(shù)字控制技術(shù),具有較好的魯棒性、適應(yīng)性和容錯性,在本控制系統(tǒng)設(shè)計中可以將復(fù)雜的控制算法轉(zhuǎn)化為簡單的執(zhí)行指令,控制AGV運動[12,13]。
將超聲波傳感器測得的距離值與判斷是否完成插取的設(shè)定距離值進行比較,達到設(shè)定距離值,L0指示燈亮起插取完成,反之指示燈L0不亮AGV繼續(xù)工作[14]。將激光雷達1和2測得的距離值進行比較,1大于2時指示燈L1亮起,AGV左轉(zhuǎn),反之L2亮起,AGV右轉(zhuǎn),若1和2的差值小于設(shè)定要求值,則L1和L2熄滅,AGV直行,運動關(guān)系如表1所示。
表1 傳感器狀態(tài)與運動關(guān)系
以AGV前叉端點正對托盤孔洞中點為基點,AGV中軸線與托盤中軸線夾角等于0°作為基準(zhǔn),評價AGV由原點位置運動到理想插取位置的誤差。選取前方4 m、右方3 m處,作為測試位置放置目標(biāo),完成識別后,分別利用上述三種策略運動到理想插取位置,記錄重復(fù)100次的距離值偏差和角度值偏差,結(jié)果如圖5所示[15,16]。
圖5 距離和角度偏差
根據(jù)測試結(jié)果,通過計算不同策略的距離值偏差和角度值偏差的均值與方差,分析距二者之間的影響關(guān)系,由于運動過程受到控制策略和系統(tǒng)延遲影響,距離值和角度值的偏差均為正值,通過路徑1和路徑2運動到指定位置時,距離值和角度值的偏差較為離散相關(guān)性弱,通過路徑3運動時,偏差值相對收斂相關(guān)性強。同時在行進過程中實時記錄運動速度值,通過積分計算距離值定位AGV位置,根據(jù)剩余行進距離調(diào)整接近速度,提高控制精度。
在AGV運動到目標(biāo)正前方理想工作位置時,通過表1的控制方式,調(diào)整AGV完成插取工作,設(shè)置距離和角度的偏差值不同,記錄插取階段AGV調(diào)整的次數(shù)與完成調(diào)整所需時間,如表2所示。
表2 調(diào)整時間與預(yù)設(shè)偏差值關(guān)系
由表2分析偏差值與調(diào)整次數(shù)之間的關(guān)系,可以得到設(shè)置距離和角度的偏差值越小,調(diào)整次數(shù)越多;反之,調(diào)整次數(shù)減小。同時,調(diào)整次數(shù)與調(diào)整時間具有一定的正相關(guān)性,在滿足實驗條件的前提下,選定距離角度的偏差值分別為3 cm和5°。
放置目標(biāo)托盤在AGV前方4 m、右方3 m的位置,進行整體實驗。當(dāng)AGV進入自動工作狀態(tài)時首先進入遠距離識別階段,根據(jù)單目相機采集的圖像信息,通過目標(biāo)識別捕獲程序識別目標(biāo)托盤,然后控制AGV運動到理想插取位置,此時AGV位于托盤正前方1 m處位置,控制程序切換為近距離插取階段,在調(diào)整姿態(tài)正對托盤的過程中,修正距離值誤差,直到距離和角度參數(shù)值滿足誤差要求時直行完成插取。
記錄AGV插取目標(biāo)托盤時距離值和角度值的偏差,采取路徑1、路徑2和路徑3各自連續(xù)進行50次重復(fù)實驗,記錄實驗結(jié)果,由小到大排序,分析所得到實驗值與要求值的偏差程度,結(jié)果如圖6所示。
圖6 距離和角度誤差
由圖6可見,AGV在進行一次完整的插取實驗中,最終的橫向距離值誤差與角度值誤差在一定程度上正相關(guān),距離偏差值越小,角度偏差值越小,距離偏差值越大,角度偏差值越大。由實驗結(jié)果可見,實驗要求的AGV距離值偏差范圍為±3 cm,角度偏差范圍為±5°,實驗結(jié)果滿足要求,兼顧運行時間和插取成功率,選取路徑3進行實驗時,距離和角度的偏差值較為收斂,保證了系統(tǒng)穩(wěn)定性。
針對叉車式AGV的運動特點和單目視覺導(dǎo)引的優(yōu)點,本文所設(shè)計的AGV控制系統(tǒng),通過YOLOv5算法模型進行目標(biāo)匹配識別,對傳感器數(shù)據(jù)進行分析制定策略,利用模糊控制策略控制AGV運動,精準(zhǔn)高效完成工作任務(wù)[17]。通過定位距離值和角度值的偏差評價工作是否成功及其精準(zhǔn)度,未來應(yīng)該考慮目標(biāo)搭載貨物時的精確識別,如何更好地利用傳感器信息,優(yōu)化路徑規(guī)劃時的運動控制,以及控制系統(tǒng)的遲滯帶來的偏差如何修正,使其可以在實際的工程應(yīng)用中,適應(yīng)復(fù)雜的工作環(huán)境,高速高效完成工作任務(wù)[18]。