李輝輝 黃廷勛 周健 李麗珠 彭海輝
關鍵詞:避障;導航;航線;性能
0引言
雙足步行機器人能模仿人類步行移動,具備良好的機動性能,并且能適應多種復雜的地形,與輪式機器人形成優(yōu)勢互補[1-2]。因此,雙足步行機器人的研究和應用越來越成為國內(nèi)外專家學者關注的熱點[3-5]。在移動過程中,雙足步行機器人難免會遇到障礙物,因此需要進行避障[6-7]。超聲波傳感器具有性價比高、使用方便、適用范圍廣等優(yōu)勢,在機器人避障技術領域被廣泛應用[8-12]。周文芳[13]運用超聲波傳感器設計出小型無人艇室內(nèi)避障定位誤差修正系統(tǒng),為機器人躲避移動障礙物的控制方法提供了參考。吳春玉[14]設計的農(nóng)用四軸飛行器避障控制系統(tǒng),將機器視覺和超聲波測距融合,使農(nóng)用四軸飛行器實現(xiàn)了自主避障功能。李博等[15]將超聲波測距技術應用在定制家具中,能有效識別運行路線上的障礙物信息,并成功避障。
本研究的目標是通過采用3個超聲波傳感器,讓雙足步行機器人具備避障和導航兩種功能。為達到預期目標,需要根據(jù)機器人作業(yè)場地的特點,有針對性地設計機器人的硬件配置和控制算法。
1總體框架
如圖1所示,本研究控制系統(tǒng)主要由4部分組成:主控板、雙足步行機器人移動平臺、超聲波傳感器和電源模塊。
1.1雙足步行機器人移動平臺
雙足步行機器人移動平臺由6個舵機組成。本研究配置的舵機最佳工作電壓約為DC8V。舵機根據(jù)接收到的脈沖寬度調(diào)制PWM(PulseWidthModula?tion)信號,可使舵機旋轉(zhuǎn)到0°至180°之間的任意位置停止。因此,給機器人雙足的髖、膝、踝關節(jié)部位各配置1個舵機,通過控制6個舵機的協(xié)同轉(zhuǎn)動,便可使機器人模仿人類雙足步行,實現(xiàn)前進、后退、向左轉(zhuǎn)、向右轉(zhuǎn)等動作[16]。
1.2超聲波傳感器
控制系統(tǒng)配置了3個型號為HC-SR04的超聲波傳感器,分別安裝在機器人的前、左、右三個方向,用于探測這三個方向的障礙物信息。HC-SR04超聲波傳感器能在DC5V情況下正常工作。以探頭為起點,呈約15°角的扇形,能探測到前方同一高度2cm至400cm范圍內(nèi)的障礙物距離,精度可達3mm。
1.3主控板
主控板采用ArduinoMEGA2560為主控器。該開發(fā)板采用DC5V電壓供電,配置了16個模擬傳感器端口和12個PWM輸出端口。即該開發(fā)板可以同時接收16個超聲波傳感器數(shù)據(jù)、控制12個舵機。而本研究只用到3個超聲波傳感器和6個舵機。因此,選擇Ar?duinoMEGA2560作為主控器能滿足本研究的控制要求。
1.4電源模塊
控制系統(tǒng)采用鋰電池作為主電源。一方面,采用LM2596穩(wěn)壓芯片電路得到DC8V電壓,分別為6個舵機供電;另一方面,通過LM2576穩(wěn)壓芯片電路獲得DC5V電壓,分別為主控板和3個超聲波傳感器供電。
2控制策略
2.1改善前
控制系統(tǒng)最初的控制方法是:只有當機器人前方50cm內(nèi)出現(xiàn)障礙物時,才讀取左、右兩側(cè)超聲波傳感器探測到的障礙物信息,并讓機器人朝著無障礙或者障礙物距離較遠的一側(cè)前進。
然而,由于雙足步行機器人自身機械結構、地面粗糙程度等原因,機器人前進一段距離后,會朝著前進方向的左邊一側(cè)偏航。通過試驗發(fā)現(xiàn),如圖2所示,該方法雖然能保證機器人成功避開障礙物,但它的運動軌跡是漫無目的,很難讓機器人按照預定航線從A點出發(fā),到達終點B。
原因分析:只有當機器人前方遇到障礙物時,才會探測機器人左、右兩側(cè)的障礙物信息,這會導致機器人不能及時發(fā)現(xiàn)航向是否發(fā)生了偏離。
該方法的優(yōu)點是:避障算法不復雜,容易編寫C語言程序;缺點是:只能避障,而不能按照預定航線完成任務。該部分算法可以作為控制系統(tǒng)的避障子程序使用。
2.2改善后
為了讓機器人實時感知航向是否發(fā)生偏離,并確保機器人盡可能地按照預定航線運動,本研究在控制方法上做了改進。如圖3所示,是改進后的程序流程圖。
1)機器人在運動的同時,主控器實時讀取安裝在機器人前、左、右三個方向的超聲波傳感器數(shù)據(jù)。2)如果前方障礙物距離小于設定閾值△L,則認為前方有障礙物。此時機器人應優(yōu)先避障,而非修正航向。3)如果前方?jīng)]有障礙物,則比較左、右兩側(cè)障礙物的距離的差值。當該差值超過設定閾值△l時,就認為機器人的航向已經(jīng)發(fā)生了偏離,需要修正航向。例如,如果分別探測到距離機器人左側(cè)2.5m、右側(cè)1.5米處有障礙物,則認為機器人的航向已經(jīng)向右發(fā)生了偏離,接下來機器人需要向左走來修正航向。
3避障導航實驗
3.1試驗結果
試驗在學校教室內(nèi)進行,用擋板設置一塊尺寸為4m×9m的長方形封閉區(qū)域。機器人實際運動軌跡用虛線和箭頭進行標記,如圖4所示。試驗結果表明:1)改善算法后,機器人的運動軌跡圍繞預定航線呈蛇形走位,基本上能按照預定航線前進;2)能成功避開前方障礙物。
3.2試驗分析
1)蛇形走位分析。由于機器人運動時會晃動,且不是一直走在預定航線上,會導致安裝在機器人左、右兩側(cè)的超聲波傳感器所探測的障礙物距離并不一致,容易超出判斷是否產(chǎn)生航向偏差的閾值△l,會使機器人認為已發(fā)生航向偏差,需要修正運動方向。
2)閾值分析。判斷機器人是否產(chǎn)生航向偏差的閾值△l要適中。如果△l過小,則機器人需要頻繁修正航向,不利于正常前進;如果△l過大,則容易使機器人產(chǎn)生的航向偏差過大而難以修正。同時,會導致安裝在機器人前方的超聲波傳感器檢測到的障礙物距離小于設定閾值△L,觸發(fā)避障子程序。在這種情況下,機器人既要修正航向,又要避障,從而加大了試驗失敗的風險。
3)預定航線分析。預定航線的方向是在控制系統(tǒng)程序初始化之前,機器人正前方所在的方向。如果在機器人前進的過程中出現(xiàn)障礙物,則機器人要優(yōu)先完成避障動作。但是,等機器人完成避障動作后,機器人將不再按照原先的預定航線前進,而是以完成避障動作時的方向作為新的預定航線。
4)導航功能的條件分析。本研究對導航的定義是讓機器人按照預定航線前進。但是,機器人前進過程中遇到障礙物后,機器人將不一定繼續(xù)按照原來的預定航線前進。因此,機器人從A點出發(fā),到達B點完成任務以后,不一定能再次返回A點。
4結束語
本研究的亮點在于:首先,給雙足步行機器人的前、左、右三個方向各配置1個超聲波傳感器;其次,根據(jù)障礙物信息來判斷航向偏差,并及時修正航向;最終,讓機器人按照預定航線前進并成功避障。然而,本研究的試驗是在較為理想的環(huán)境中進行的,對機器人在復雜環(huán)境中實現(xiàn)避障和導航功能的研究不夠深入。因此,在后續(xù)的研究中,應結合當下企業(yè)實際的生產(chǎn)環(huán)境,有針對性地完善控制系統(tǒng)的傳感器配置和控制算法,以提高本研究雙足步行機器人的實用性能。