孫濤
(廣東工貿(mào)職業(yè)技術(shù)學(xué)院,廣東 廣州510510)
超聲波傳感器具有方向性好、探測范圍廣、短距離內(nèi)被測物識別精度高的特點,可將交變狀態(tài)的電信號,處理為聲音信號,也可作為電信號的能量轉(zhuǎn)換元件[1]。目前,超聲波傳感器在機(jī)器人行業(yè),已用于避障、定位、環(huán)境探測等多個分支領(lǐng)域[2]。已有研究表明,超聲波傳感器算法是一種簡單、實用的避障理論,但由于物流、電子、精密儀表等場景下工業(yè)機(jī)器人操作工況的復(fù)雜性,障礙物測距常常難以取得理想的效果。當(dāng)面臨障礙物時,受路面行走環(huán)境的影響,工業(yè)機(jī)器人的路徑規(guī)劃能力也有所欠缺[3]。傳統(tǒng)的柵格法、神經(jīng)網(wǎng)絡(luò)法等避障算法,雖原理不一,但多數(shù)技術(shù)在實現(xiàn)過程中存在流程繁瑣、避障靈敏度低的問題[4]。在工業(yè)機(jī)器人路徑規(guī)劃技術(shù)發(fā)展、轉(zhuǎn)化下,遺傳算法在靜態(tài)、動態(tài)環(huán)境下的避障、路徑規(guī)劃上,均表現(xiàn)出突出的優(yōu)勢,提供一套可靠、精度高的工業(yè)機(jī)器人避障策略,是有待思考和解決的問題。
超聲波傳感器避障是利用該算法在工業(yè)機(jī)器人行走過程中,測量工業(yè)機(jī)器人和障礙物間的距離,以達(dá)到及時避障的目的。為了彌補(bǔ)超聲波傳感器在短距離內(nèi)探測精度及路徑規(guī)劃性能不足的問題,在工業(yè)機(jī)器人避障中引入遺傳算法實現(xiàn)智能化的路徑規(guī)劃[5]。遺傳算法是在Darwin 的生物進(jìn)化論、Mendel 的自然遺傳學(xué)理論上發(fā)展而來,主要依托選取編碼方式、初始種群產(chǎn)生、確定適應(yīng)度函數(shù)、復(fù)制、交叉、變異、收斂判據(jù)、約束條件處理等步驟實現(xiàn)。該算法既體現(xiàn)了生物進(jìn)化特性,又體現(xiàn)了基因遺傳特性,它將遺傳操作、適應(yīng)度函數(shù)作為依據(jù),在編碼串種群中篩選個體,然后在個體篩查中保留適應(yīng)度高的個體,將之組建為新的種群,經(jīng)重組后的種群同時有著比上一代優(yōu)異的個體,還保留了上一代的信息,通過各個體適應(yīng)度的提升,待滿足收斂條件后,待優(yōu)化參數(shù)的最優(yōu)解選擇適應(yīng)度最高的個體。遺傳算法非針對參數(shù)自身,而是針對參數(shù)的編碼操作,可利用目標(biāo)函數(shù)開展適應(yīng)度的計算,利用概率操作原則、啟發(fā)式搜索方式,魯棒性較優(yōu),保證工業(yè)機(jī)器人工作的可持續(xù)性。
基于超聲波傳感器的工業(yè)機(jī)器人遺傳算法包含超聲波傳感器算法、遺傳算法兩部分,分別承擔(dān)工業(yè)機(jī)器人障礙物檢測、路徑規(guī)劃職能,該避障策略的總體框架如圖1。
圖1 基于超聲波傳感器的工業(yè)機(jī)器人遺傳算法避障策略流程圖
如圖1 所示,工業(yè)機(jī)器人避障的主要程序為:在工業(yè)機(jī)器人前方、左側(cè)、右側(cè)3 個位置配置超聲波傳感器,在行進(jìn)過程中接收超聲波傳感器探測到的障礙物信息,若無障礙物,則按照正常路線行走,在識別到障礙物時,采用遺傳算法進(jìn)行路徑規(guī)劃。首先,進(jìn)行初始化設(shè)置,按照生成的方式,產(chǎn)生初始種群,進(jìn)行插值處理。當(dāng)插值成功時,工業(yè)機(jī)器人所有操作停止,在插值未成功時,工業(yè)機(jī)器人向前移動。隨后,在工業(yè)機(jī)器人達(dá)到目的地后,則遺傳算法整個流程結(jié)束,當(dāng)因各類原因未達(dá)到目的地時,再次進(jìn)行初始化設(shè)置,生成新的初始種群,如何循環(huán)操作,直至完成設(shè)定的任務(wù)要求。
超聲波傳感器避障是文章進(jìn)行工業(yè)機(jī)器人遺傳算法避障策略設(shè)計的關(guān)鍵,該算法利用超聲波在單位時間內(nèi)的移動時間、距離,掌握超聲波在空氣中從發(fā)射器發(fā)出信號至接收器收到回波的距離,為工業(yè)機(jī)器人提供避障指導(dǎo)。為了改善工業(yè)機(jī)器人在障礙物前的應(yīng)變能力和精準(zhǔn)性,確定了超聲波傳感器避障算法,即△t=s1t1-s2t2/s2-s1。其中,s1、s2表示已知測量距離,△t 表示延遲時間,t1、t2表示對應(yīng)的測量時間。
以超聲波傳感器探測到的周邊障礙物信息為基礎(chǔ),采用遺傳算法為工業(yè)機(jī)器人規(guī)劃最優(yōu)的路徑,主要程序涵蓋地圖創(chuàng)建與編碼、種群初始化、適應(yīng)度函數(shù)計算、操作算法、收斂判據(jù)與處理約束條件,如下所示:
2.2.1 地圖創(chuàng)建與編碼
基于柵格法原理,依據(jù)工業(yè)機(jī)器人在空間內(nèi)的行走環(huán)境,建立工業(yè)機(jī)器人路徑規(guī)劃模型,在模型內(nèi)標(biāo)示環(huán)境信息,減少行走過程的碰撞問題。模型創(chuàng)建時,假設(shè)障礙物的位置、大小為已知條件,工業(yè)機(jī)器人處于二維平面空間,模型中用不同的顏色代表自由柵格、障礙物柵格。柵格地圖中用直角坐標(biāo)系描述柵格信息,編碼自左下角起編碼,以首個柵格(1,1)為例,柵格地圖內(nèi)各編號、坐標(biāo)換算公式:
X=int(N/Gxize)+1
Y=N%Gsize+1
在上述表達(dá)式中,
int 表示取整操作;Gsize 表示各行柵格數(shù)。
2.2.2 種群初始化。種群初始化采用隨機(jī)方式產(chǎn)生,由此生成和障礙物柵格不會造成沖突、碰撞的可行路徑,步驟為:先產(chǎn)生間斷路徑,在各行中均利用隨機(jī)方式,選取一個正常運行、無障礙的柵格,工業(yè)機(jī)器人的開始位置、目標(biāo)方位分別對應(yīng)首個柵格、最后一個柵格。其次,判斷間斷路徑是否為連續(xù)路徑,判定方法為:
D=max[abs(xi+1-xi),abs(yi+1-yi)]
在上述判定方法中,當(dāng)D=1 時,表明兩個相鄰柵格間為連續(xù)關(guān)系;
當(dāng)D<1 或D>1 時,代表兩個相鄰柵格非連續(xù)關(guān)系。
2.2.3 適應(yīng)度函數(shù)計算。適應(yīng)度函數(shù)在遺傳算法中要求為非負(fù)值,考慮到待優(yōu)化問題的目標(biāo)函數(shù)可能為正值或負(fù)值,在問題優(yōu)化中可將表達(dá)式以遺傳算法適合求解的形式出現(xiàn),保證其在優(yōu)化層面上處于等價關(guān)系。假設(shè)適應(yīng)度函數(shù)為f(x),目標(biāo)函數(shù)為J(x),則待優(yōu)化目標(biāo)函數(shù)的線性方式為:
F(x)=α×J(x)+b
其中,在表達(dá)式中,α、b 均代表系數(shù),該系數(shù)可結(jié)合期望的適應(yīng)度分散水平等確定。由于最小化問題、最大化問題的特征不同,在轉(zhuǎn)化中也需采用對應(yīng)的轉(zhuǎn)換形式。其中,Cmax 代表截止目前計算中產(chǎn)生的J(x)最大數(shù)值,Cmin 代表在分析中J(x)的最小值,兩個數(shù)值均可參照前期的經(jīng)驗加以設(shè)定。適應(yīng)度函數(shù)計算中,可選取如下指數(shù)函數(shù)方式:
f(x)=cJ(x)
交叉算子中采用隨機(jī)的方式,在匹配池中篩選兩個個體,依據(jù)交叉概率將各個個體隨機(jī)配對,然后對經(jīng)兩兩配對的個體交叉繁殖,產(chǎn)生新的個體。而變異算子操作中,將確定變異概率,在0-1 的區(qū)間內(nèi)隨機(jī)產(chǎn)生一個數(shù)值,通過該數(shù)值和變異概率比較,當(dāng)數(shù)值低于變異概率時開展變異操作,方法為:排除起點、終點,隨機(jī)選擇兩個柵格,最終完成變異過程。
2.2.5 收斂判據(jù)與處理約束條件。以解的層面進(jìn)行遺傳算法的收斂判據(jù),判據(jù)方式為:在種群中,當(dāng)某一給定值大于平均適應(yīng)度的比值,或者種群中最優(yōu)個體的適應(yīng)度,代表算法已收斂。同時,以最優(yōu)解為切入點,當(dāng)連續(xù)幾代,甚至在連續(xù)幾十代的種群中,若發(fā)現(xiàn)最優(yōu)解無顯著的發(fā)展和變化,即代表算法收斂。在約束條件處理時,主要以字符串編碼為核心,進(jìn)行問題的優(yōu)化,即整理待優(yōu)化的問題,分析各變量的上限約束、下限約束,用實際約束變量的上限值、下限值,分別代表字符串形式的最大值、最小值。
以MATLAB 軟件為基礎(chǔ),對基于超聲波傳感器的工業(yè)機(jī)器人遺傳算法開展仿真分析。 以 XX 公司生產(chǎn)的LDARM-WL-300A 工業(yè)機(jī)器人為試驗載體。該機(jī)器人定點??烤取?0cm,行駛最大速度18km/h。在工業(yè)機(jī)器人的前方、左側(cè)、后側(cè)3 個方向分別安裝超聲波傳感器測距模塊,在行駛中,利用函數(shù)line 統(tǒng)計、搜集機(jī)器人前方、左側(cè)、右側(cè)的障礙物信息,運用模糊推理測量。在仿真試驗中,交叉概率通常取0.4-0.99,變異概率通常取0.0001-0.1,按照工業(yè)機(jī)器人避障仿真分析需求,設(shè)定交叉概率為0.7,變異概率為0.09,優(yōu)化過程的開始為初始種群,是由算法隨機(jī)產(chǎn)生的。為全面掌握避障策略的可靠性,分別對障礙物10 個時、障礙物15 個時、障礙物20 個時3 種情況進(jìn)行仿真分析。障礙物的設(shè)置為動態(tài)障礙物,研究發(fā)現(xiàn),在動態(tài)障礙物影響下,工業(yè)機(jī)器人在超聲波傳感器、遺傳算法的聯(lián)合運用下,能夠達(dá)到理想的避障效果,且可以幫助工業(yè)機(jī)器人尋找到一條最佳的行走路徑,提升機(jī)器人避障效率。
文章應(yīng)用了超聲波傳感器算法、遺傳算法,設(shè)計了適用于工業(yè)機(jī)器人的避障策略。由于該策略不僅關(guān)注到了工業(yè)機(jī)器人移動速度、與障礙物間的距離,還關(guān)注到了機(jī)器人的避障用時、路徑規(guī)劃效果、路徑規(guī)劃精度,在仿真分析中,該避障策略可以起到良好的避障效果,且可以保證避障的效率,節(jié)約工業(yè)機(jī)器人在工作過程中的資源投入,對于工業(yè)機(jī)器人的工作實踐有著指導(dǎo)意義。