李 可,張凌超,米 捷
(1.河南工程學院 工程訓練中心,河南 鄭州 451191;2.機械工業(yè)第六設(shè)計研究院有限公司,河南 鄭州 450007;3.河南工程學院 計算機學院,河南 鄭州 451191)
隨著我國智能技術(shù)的不斷發(fā)展,智能機器人在很多領(lǐng)域都得到了應(yīng)用,我國大部分生產(chǎn)型企業(yè)已經(jīng)開始采用智能機器人完成一些機械性工作[1]。在保證機器人完成工作的同時,也需要提高工作效率。由于自主選擇避障路徑是智能機器人運行的重要前提條件,所以研究智能機器人避障路徑的自主選擇具有非常重要的意義[2-3]。
針對智能機器人避障路徑的自主選擇,一些學者對其進行了研究。例如,華洪等[4]提出了動態(tài)環(huán)境下智能機器人的路徑規(guī)劃方法,該方法基于智能機器人的運動規(guī)律,首先通過刪除多余節(jié)點、添加新節(jié)點進行全局路徑優(yōu)化,然后利用滾動窗口對局部區(qū)域進行路徑規(guī)劃,以此控制智能機器人避障。胡玉蝶等[5]提出了高斯噪聲發(fā)散的智能機器人路徑規(guī)劃法,該方法主要是將因障礙物影響產(chǎn)生的數(shù)據(jù)信息點云消隱,使智能機器人在回歸路徑上可以避開障礙。趙澤龍等[6]提出了數(shù)字化變電站巡視機器人避障路徑智能規(guī)劃方法,該方法明確人工避障勢場區(qū)域,根據(jù)變電站巡檢工作的執(zhí)行狀態(tài),計算巡檢障礙距離及方位,搭建數(shù)字化變電站巡視機器人的Dijkstra多目標避障路徑智能規(guī)劃模型,結(jié)合動態(tài)窗口法實現(xiàn)路徑規(guī)劃。王言軍[7]提出了基于改進蟻群算法的輸電線巡檢機器人避障路徑規(guī)劃方法,該方法首先應(yīng)用激光傳感器獲取障礙物體相關(guān)信息,完成障礙物體的檢測與建模,計算巡檢機器人與障礙物體的位姿關(guān)系,推出巡檢機器人避障算法,然后確定巡檢機器人避障路徑規(guī)劃目標,基于狼群分配原則與中心點平滑方法改進蟻群算法,執(zhí)行算法獲取最佳避障路徑規(guī)劃結(jié)果,實現(xiàn)了輸電線巡檢機器人避障路徑的規(guī)劃。但是,上述方法在規(guī)劃避障路徑時的環(huán)境信息較為單一,不存在復(fù)雜的外在環(huán)境因素干擾,因此在面對密集障礙物時效果不夠理想。
為解決上述方法存在的問題,本研究探討了在密集障礙物環(huán)境下智能機器人的避障路徑自主選擇方法,基于改進人工勢場法對智能機器人自主避障路徑進行選取,使智能機器人在運行時可以避開所有障礙物,高效自主地完成任務(wù)。
智能機器人開始運行時,首要任務(wù)是通過感知技術(shù)來獲取周圍環(huán)境的各種信息[8]。激光雷達技術(shù)具備高效獲取周邊環(huán)境信息的能力,并且視距區(qū)域較廣,因此適于采用激光雷達對智能機器人的周圍環(huán)境進行掃描,并快速傳輸采集到的環(huán)境信息[9]。
BP神經(jīng)網(wǎng)絡(luò)作為一種人工智能技術(shù),其模型表達清晰明了[10],擁有很好的非線性分類能力。因此,本研究采用BP神經(jīng)網(wǎng)絡(luò)對激光雷達采集的環(huán)境信息進行分類,以獲取障礙物的分類結(jié)果。
1.2.1BP神經(jīng)網(wǎng)絡(luò)的正向?qū)W習方法
(1)
1.2.2BP神經(jīng)網(wǎng)絡(luò)的反向?qū)W習方法
假設(shè)yj為第j神經(jīng)元節(jié)點,ki為第i神經(jīng)元節(jié)點,xm為第m神經(jīng)元節(jié)點。
首先針對yj和ki的連接權(quán)值ωij,使用最速下降法調(diào)試:
(2)
式中:η為調(diào)整因子。
然后針對ki和xm的連接權(quán)值ωmi,基于誤差信號傳送調(diào)試:
(3)
由于密集障礙物環(huán)境的復(fù)雜性,將激光雷達搜索到的環(huán)境信息輸入BP神經(jīng)網(wǎng)絡(luò)[11],通過網(wǎng)絡(luò)訓練得到網(wǎng)絡(luò)參數(shù)后,對智能機器人運行環(huán)境的密集障礙物進行分類并輸出結(jié)果。
傳統(tǒng)人工勢場法是一種用于智能機器人導(dǎo)航的算法,它可在機器人所處空間中創(chuàng)建一個勢場,對機器人與目標點間的引力及機器人與障礙物間的斥力進行疊加,形成一個合力,從而引導(dǎo)機器人朝著目標點移動。人工勢場表示如下:
U=Uatt+Urep,
(4)
式中:Uatt表示智能機器人與局部目標點之間的引力勢場;Urep表示智能機器人與障礙物之間的斥力勢場;U表示勢場和。局部目標點和障礙物與智能機器人間的相互作用對應(yīng)引力勢場和斥力勢場的負梯度,從而求出人工勢場對智能機器人的合力F,表達式如下:
F=Fatt+Frep,
(5)
式中:Fatt表示智能機器人與局部目標點之間的引力;Frep表示智能機器人與障礙物之間的斥力。
引力勢場函數(shù)表達如下:
(6)
式中:Xg表示局部目標點位置;Uatt表示智能機器人與局部目標點之間的引力場;X表示智能機器人位置;k表示引力增益系數(shù);‖X-Xg‖表示智能機器人與局部目標點之間的最短路程。
智能機器人與局部目標點之間的引力勢場負梯度表示如下:
Fatt=-k‖X-Xg‖。
(7)
斥力勢場函數(shù)表達式如下:
(8)
式中:X-X0表示智能機器人和障礙物之間的路程;m表示斥力的增益系數(shù);ρ表示障礙物的影響路程。
智能機器人與障礙物之間的斥力表達式如下:
(9)
式中:Frep1表示障礙物對智能機器人的方向;Frep2表示智能機器人對局部目標點的方向。Frep1和Frep2可分別表示為
(10)
(11)
如果智能機器人和局部目標點之間的路程增加,引力與斥力將同時增加,就會導(dǎo)致智能機器人不能到達局部目標點。
第一,項目完成后,各小組在創(chuàng)客工坊完成項目匯報,匯報環(huán)節(jié)不僅可以鍛煉學生表達能力,應(yīng)變能力,還可以讓學生體驗努力給自己帶來的成就感,從內(nèi)在激發(fā)學生學習動力。第二,綜合評價,通過各小組項目匯報及項目結(jié)題報告,創(chuàng)客導(dǎo)師可以從基礎(chǔ)知識學習、技能操作、自主拓展學習、團隊協(xié)作等幾方面對學生做出多維度綜合評價,同時引入第三方評價機制。第三,如學生完成的項目為企業(yè)所需,可引入市場評價機制,進行孵化投放市場。
2.2.1智能機器人避障路徑方向選擇
傳統(tǒng)的人工勢場法在智能機器人向局部目標點前進時,引力呈下降趨勢,障礙物附近的引力會小于斥力,導(dǎo)致智能機器人無法到達目標點[12]。為減少斥力作用,本研究提出基于改進人工勢場法實現(xiàn)智能機器人路徑方向選擇,計算公式如下:
(12)
式中:n表示任意正實數(shù)。
利用負梯度可求出改進后的斥力,計算公式如下:
(13)
改進后斥力的2個分量表達式如下:
(14)
改進后的斥力分解為2個分量后,與智能機器人在引力作用下產(chǎn)生的合力可以使機器人向局部目標點繼續(xù)前進[13]。
2.2.2智能機器人避障路徑選擇
完成避障路徑方向選擇之后,設(shè)智能機器人在p點按照規(guī)劃的方向開始前進,再對智能機器人到局部目標點的路程進行計算,當智能機器人與局部目標點的位置在一定區(qū)域時,終止前進[15]。先算出起始點p到局部目標點g的路程t,為獲取具體的空間數(shù)值,利用激光雷達對避障路程的方向進行掃描,設(shè)p點為(xp,yp),局部目標點為(xg,yg),可得出路程
(15)
因為激光雷達在掃描時不是靜止的,所以需要對起始點與局部目標點的路程t實施誤差補償,得到修正后的激光束線數(shù)據(jù),通過前兩個周期的掃描數(shù)據(jù)得到圖1。如圖1所示,智能機器人在時間a的掃描值是φ,在時間A的掃描值是γ,移動之后機器人和局部目標點的誤差值角度分別為i、θ,得到修改后的目標路程
(16)
為計算智能機器人路徑方向的前進速度,利用航位推算來計算其運動狀態(tài),預(yù)計到達時間的值會被運用到勢場中作為一個標量,再轉(zhuǎn)化成智能機器人在前進路徑上的虛擬驅(qū)動力[16]。設(shè)絕對坐標系里智能機器人的姿態(tài)角為β,智能機器人的前進速度為v,可得出智能機器人到局部目標點區(qū)域內(nèi)的時間
(17)
將時間A轉(zhuǎn)換為智能機器人的虛擬驅(qū)動力,為防止出現(xiàn)斥力和引力形成180°或合力是0的情況[17],平衡斥力可以通過控制虛擬驅(qū)動力,從而留存避障路徑的吸引力,得到虛擬驅(qū)動力
(18)
利用虛擬驅(qū)動力的計算公式可以得出避障路徑的虛擬力,智能機器人可以控制模塊獲得路徑數(shù)據(jù),從而按照設(shè)定路徑前進,至此實現(xiàn)了改進人工勢場法對智能機器人避障路徑的選擇。
以上為一個局部目標點的規(guī)劃路徑,智能機器人抵達這個局部目標點之后,利用激光雷達得到當前新的環(huán)境信息,求出下一個局部目標點的規(guī)劃路徑,一直重復(fù)此操作,直到獲取全局目標點的規(guī)劃路徑,即獲取了全局的避障路徑。
為驗證本方法的有效性,采用MATLAB軟件搭建不同密集程度的障礙物場景,利用文獻[4]和文獻[5]作為對比方法,對不同密集程度障礙物場景下的機器人進行避障路徑選取。其中,使用型號為LMX06-PS05的激光雷達,激光發(fā)射方式為相控陣,激光波長和線束分別為910 nm和32線,傳輸速率為1 000 kb/s。
統(tǒng)計了3種方法在少量障礙物和密集障礙物環(huán)境下機器人前進方向、前進路徑及避障情況后,設(shè)置智能機器人起始位置為(0,0),目標點為(10,9),障礙物在其路徑途中擺放,機器人對路徑自主選擇的結(jié)果如圖2和圖3所示。
圖2 少量障礙物下的機器人路徑Fig.2 Robot path under a small number of obstacles
圖3 密集障礙物下的機器人路徑Fig.3 Robot path under dense obstacles
從圖2和圖3可以看出:少量障礙物環(huán)境下,智能機器人從起始點(0,0)前進時,采用本方法可以避開全部障礙物,向目標點前進,最后到達目標點(10,9),智能機器人沒有出現(xiàn)停止前進的情況,而其余兩種方法均未能完全躲避障礙物,有停止前進的情況;隨著障礙物的增加,無論障礙物的位置和密集程度如何變化,采用本方法的智能機器人都可以持續(xù)向目標點前進,直至到達目標點(10,9),都沒有出現(xiàn)停止前進的情況,而其余兩種方法均不能完全躲避障礙物。由此可知,采用本方法可以使智能機器人在密集障礙物環(huán)境下實現(xiàn)自主避障路徑選擇。
為更加深入地驗證本方法的有效性,用碰撞危險度作為評估3種方法應(yīng)用效果的指標。時間碰撞危險度,即智能機器人與障礙物遇到時的最小時間,用χG表示;空間碰撞危險度,即智能機器人與障礙物遇到時的最近距離,用χK表示。χG和χK的計算公式如下:
(19)
(20)
式(19)和式(20)中:t1為障礙物與智能機器人會遇到的最近時間;t2為障礙物從目前坐標到達會遇到坐標的時間;G為會遇到的時間,數(shù)值越高表示機器人撞擊障礙物的風險越低,數(shù)值越低表示機器人撞擊障礙物的風險越高,期望值不低于12 s;d1為遇到時的絕對安全距離;d2為障礙物與智能機器人無碰撞情況下通過的最小距離。
本研究使用的LMX06-PS05型激光雷達,其最大探測距離為50 m??紤]到激光雷達探測范圍內(nèi)可能存在其他因素,設(shè)置一個相對較大的距離可以更好地保證機器人的安全,因此設(shè)置最小距離為4.15 m,當χK>d2時為安全狀態(tài),其中K表示會遇距離。
當障礙物移動時,計算不同速度下時間碰撞危險度和空間碰撞危險度,結(jié)果如表1所示。
表1 碰撞危險度驗證結(jié)果Tab.1 Collision hazard verification results
由表1可以看出,應(yīng)用本方法后,無論移動障礙物速度是多少,在速度不斷加快時,時間碰撞危險度和空間碰撞危險度都分別大于期望值12 s和最小距離4.15 m,最大時間碰撞危險度達到了18.3 s,最大空間碰撞危險度達到了5.21 m,而其余2種方法均存在小于期望值和最小距離的情況,故發(fā)生碰撞的概率較大。
本研究探討了以采集到的智能機器人周圍環(huán)境和障礙物類型為基礎(chǔ),基于改進人工勢場法實現(xiàn)智能機器人避障路徑的自主選擇。通過仿真測試得出,無論障礙物的位置和密集程度如何變化,智能機器人都可以無碰撞地到達全局目標點,實現(xiàn)密集障礙物場景下智能機器人避障路徑的自主選擇。