焦科杰,陳 穎,丁 堯*
(1.南京熊貓信息產(chǎn)業(yè)有限公司,江蘇南京 210000;2.南京大學(xué)金陵學(xué)院,江蘇南京 210000)
自動導(dǎo)航車(Automated Guided Vehicle,AGV),又稱無人搬運車,是一種裝備有光學(xué)、電磁、激光等自動導(dǎo)向裝置的自動導(dǎo)引小車,并可以按照中央控制系統(tǒng)規(guī)定的導(dǎo)引路徑和作業(yè)要求,精確地沿著規(guī)定路線自動行駛并在任意位置停靠,同時具有安全保護功能、移載功能等功能的運輸車[1]。AGV可以廣泛地應(yīng)用在自動化立體倉庫、商業(yè)服務(wù)行業(yè)以及柔性裝配系統(tǒng)的物料傳送系統(tǒng)等場所,在現(xiàn)代工業(yè)自動化物流系統(tǒng)中起著不可或缺的關(guān)鍵設(shè)備的作用。它在物流系統(tǒng)中主要負責(zé)重要材料的運輸,并根據(jù)控制系統(tǒng)對運輸部分的要求,將各個部分有效連接在一起,形成一個有機整體,具有非常高的柔性,可完成裝載、卸載、牽引和升降等作業(yè)要求。
隨著AGV應(yīng)用場景的不斷擴展,復(fù)雜度也呈幾何狀增長,為了使其更加智能化,通過引入視覺技術(shù)來增加其智能化。即通過視覺傳感器,模擬人眼的視覺效果,利用圖像處理技術(shù)從圖像中提取所需的信息,來為AGV的導(dǎo)航提供參數(shù)。
本文在融合AGV控制和圖像處理等領(lǐng)域的技術(shù),提出了基于路徑和場景語義信息的導(dǎo)航模型。該模型通過分析場景的語義信息,來完成對當下場景路徑的選擇,提高了AGV導(dǎo)航的自主性。
AGV視覺導(dǎo)航系統(tǒng)主要通過視覺傳感器感知周邊環(huán)境,特別是導(dǎo)航線路的監(jiān)測,視覺AGV的系統(tǒng)主要分為兩個部分,分別為硬件部分和軟件部分。硬件部分由PC機、I/O板、CCD圖像采集、V-AGV等組成;軟件部分主要由計算機系統(tǒng)軟件、系統(tǒng)開發(fā)平臺等組成。系統(tǒng)可再分為主端電腦(Host Computer)圖像采集卡(Frame Grabber)與影像處理器、影像攝影機、CCT鏡頭、顯微鏡頭照明設(shè)備、Halogen光、LED光源、高周波熒光燈源、閃光燈源、其他特殊光源、影像顯示器、LCD、機構(gòu)及控制系統(tǒng)、PLC、PC-Base控制器、精密桌臺、伺服運動機臺[2]。其結(jié)構(gòu)如圖1所示。

圖1 AGV視覺系統(tǒng)結(jié)構(gòu)示意
視覺導(dǎo)航有兩種導(dǎo)航方式,分別是結(jié)構(gòu)化路徑導(dǎo)航和非結(jié)構(gòu)化路徑導(dǎo)航[3]。在現(xiàn)場環(huán)境下,為提高導(dǎo)航精度,多采用結(jié)構(gòu)化視覺導(dǎo)航的方式,即通過在地面設(shè)定路徑引導(dǎo)線,通過對引導(dǎo)線的識別來實現(xiàn)導(dǎo)航信息的采集。同時利用OCR技術(shù),來對場景中的字符語義進行提取,為導(dǎo)航的路徑選擇提供參考。
目前,AGV常見的驅(qū)動方式有很多種,要建立自動導(dǎo)引小車的運動模型,第一件事就是要確定驅(qū)動方式,然后再對其進行運動學(xué)分析,最后完成運動模型建立。本文以兩輪差動式獨立驅(qū)動的方式構(gòu)建一個AGV模型,這種方式把驅(qū)動輪安置在AGV小車后面,使其達到軸向平衡,并通過兩輪間的差速,實現(xiàn)AGV的轉(zhuǎn)向姿態(tài)調(diào)整。
對于上述AGV模型的運動狀態(tài)做出模型假設(shè):首先,車為剛性小車。其次,小車在運動過程中要做到水平行駛;輪子上的假設(shè)為左右兩輪受力一樣,且有足夠的摩擦系數(shù)使其不會相對地面打滑。最后,在理想狀態(tài)下,即不計空氣阻力影響。其運動狀態(tài)如圖2所示。

圖2 兩輪差動式獨立驅(qū)動AGV運動示意
圖2 中L為驅(qū)動輪輪距,R為轉(zhuǎn)彎半徑,Vl和Vr分別為輪子線速度,車體中軸線與路徑中心線之間的夾角為θ,AGV的行進速度為Vm可通過式(1)計算,旋轉(zhuǎn)角度ω由式2計算。

經(jīng)過t時刻,AGV路線與中心線產(chǎn)生的位移偏差為eμ如式3所示。

當ω比較小時,可以將式2簡化成式4所示。

式中eθ為經(jīng)過t時刻后AGV的角度偏差,Δθ表示中心線的曲率變化對ω的影響。對式3也做如式5所示變換。式5中,Δμ表示中心線的曲率變化對μ的影響。

從式4和式5中可以看出,影響AGV運行姿態(tài)的主要參數(shù)為左輪和右輪的速度差ΔV,ΔV=Vl-Vr。
通過圖像處理技術(shù)對引導(dǎo)線的特征提取,可以分為ROI區(qū)域提取、圖像灰度化處理、閾值處理、邊緣檢測和霍夫變換[4]。
傳統(tǒng)的AGV視覺巡線導(dǎo)航,多是將攝像頭垂直于地面來進行圖像采集,這種方式信息采集量單一,本文將攝像頭前置并向下有一個傾斜的角度,在采集引導(dǎo)線圖像信息的同時,還可以采集場景中的其他圖像信息。這種情況下的圖像采集信息如圖3所示。

圖3 AGV前置攝像頭采集圖像信息
這種情況下圖像的上半部分為大量的冗余信息,為了提高處理效率,將圖像的下半部分作為ROI區(qū)域保留,拋棄上半部分圖像數(shù)據(jù)。根據(jù)所采用的視覺傳感器不同,為了進一步減少冗余數(shù)據(jù),需要將圖像灰度化,同時通過中值濾波抑制在圖像采集過程中的噪聲,通過灰度形態(tài)學(xué)消除圖像中細小的噪點。通過OTSU算法,得到合適的閾值,對得到的灰度圖像進行二值化,并利用canny算子提取邊緣,得到引導(dǎo)線的邊緣信息[5]。
霍夫變換作為一種經(jīng)典圖像變換手段,可以將圖像信息中的幾何形狀分離出來。在視覺巡線導(dǎo)航中,多通過霍夫變換提取導(dǎo)航線的參數(shù)特征,為導(dǎo)航提供依據(jù)。
以直線檢測為例,可以將直線理解成若干個離散點的集合,每個離散的點可以表示如式6所示。

式中(x,y)為笛卡爾坐標系下的點的坐標,r為點(x,y)到原點的距離,α為r與X軸之間的夾角。霍夫變換的直線檢測可以簡單地理解為將每個像素P(x,y)轉(zhuǎn)換到(r,α)上進行累計,當出現(xiàn)波峰時,就說明有直線存在,并將該波峰所對應(yīng)的(r,α)作為AGV的導(dǎo)航參數(shù),輸出給AGV控制器。
所謂的場景語義信息,是指場景中的字符信息,由于在做線路規(guī)劃是,對于路徑的標識,多通過文字進行以方便施工人員操作,因此路徑場景中的語義信息識別,可以轉(zhuǎn)換到對場景中印刷字體的識別。目前,OCR技術(shù)主要應(yīng)用于字符識別,特別是對印刷字體的識別率較高[6]。ORC本質(zhì)上是通過光學(xué)儀器對檢測體中的字符進行光暗檢測,從而得到其圖形,然后依據(jù)字符形狀,應(yīng)用字符識別的原理,將普通的形狀翻譯成文本文檔的過程[7]。字符識別一般有以下幾個流程:圖像輸入、預(yù)處理、二值化、噪聲去除、矯正、切割、識別。
字符分割首先要找出字符的邊緣,再利用投影的方法進行分割。筆者將圖片中的字符假設(shè)為水平排列,并對圖片進行從上往下的方式掃描,若發(fā)現(xiàn)掃描過程中的黑白點(即0和1)有較為頻繁的變化且符合要求,那么我們就會對字符位置進行初步的判定。
文字識別一般有兩種方式:第一模板匹配法。將文字和本字符圖片的像素點進行一一對應(yīng)的對照匹配,計算文字和字符模板的相似性,取相似性大的為識別結(jié)果。第二種,幾何特征提取法。文字的一些特征點,如定點、交叉點、傾斜、直線等。依據(jù)這些特征的邏輯關(guān)系來進行字符的識別。
AGV視覺導(dǎo)航系統(tǒng)如圖4所示。

圖4 AGV視覺導(dǎo)航系統(tǒng)示意
本文在實驗室環(huán)境下,構(gòu)建了一個簡易的導(dǎo)航環(huán)境,用于測試在引導(dǎo)線分叉情況下,通過提取分析場景語義信息,實現(xiàn)自主選擇路徑的可行性(見圖3)。
通過不同灰度級來區(qū)分路徑引導(dǎo)線和場景字符,以方便提取。在當前場景下,AGV需要選擇E方向的引導(dǎo)路線來實現(xiàn)自主導(dǎo)航,同時規(guī)避掉B方向的引導(dǎo)線。
首先,通過對圖像的預(yù)處理并二值化;然后,通過canny算子得出圖5的邊緣信息。
隨后對場景中的字符信息進行提取,在實驗室環(huán)境下,本文采用了不同的灰度級區(qū)分將路徑和字符分開,本次閾值設(shè)置分別為112和142,可以有效地將路徑和字符分割,分割后的定位結(jié)果如圖6所示。
由于選擇的是路徑E,因此以E的定位點對圖7所示路徑圖像信息進行分割,得到的選擇后路徑信息如圖7所示。

圖5 霍夫變換后的路徑信息

圖6 字符提取與定位結(jié)果

圖7 選擇后的路徑信息
根據(jù)圖7得到的路徑信息,AGV只需要判讀一條引導(dǎo)線信息,從而避免了引導(dǎo)線信息冗余導(dǎo)致的無法導(dǎo)航,實現(xiàn)自主導(dǎo)航。
在圖7所示的情況下,分析引導(dǎo)線的斜率參數(shù),從而驅(qū)動AGV旋轉(zhuǎn)和移動,使得引導(dǎo)線垂直與視場底邊并居中,最終實現(xiàn)AGV的巡線導(dǎo)航。
為了提高AGV導(dǎo)航的自主性,本文提出了基于視場語義信息分析的路徑選擇方法,即在路徑有分叉歧義的環(huán)境下,通過提取路徑附近的字符信息,與預(yù)先的導(dǎo)航路線進行匹配選擇,當匹配時,根據(jù)字符的位置對場景進行分割,保留需要的路徑引導(dǎo)信息,從而實現(xiàn)AGV的自主導(dǎo)航。