胡天佑,項馨儀,鄭健海,周 俊,鄔楊波
(寧波大學 信息科學與工程學院,浙江 寧波 315211)
在移動機器人自主尋跡時,邊界識別是其重要環(huán)節(jié)之一。邊界識別技術,是指移動機器人通過各種傳感器來檢測或推算邊界信息,控制自身在規(guī)定的范圍內活動。通過調查和研究,現(xiàn)有的戶外輪式移動機器人都將邊界識別作為首要研究內容,目前采用的方法可分為如下幾類:(1)采用通電電纜包圍整個工作區(qū)域,機器人通過探測邊界線所形成的磁場來推算邊界信息,此種方法需在不同區(qū)域埋線并增設電源,但在執(zhí)行上造成了一定的困難;(2)采用預先在邊界放置與周邊環(huán)境色差較大的標示物,機器人通過光學傳感器來檢測邊界,此種方法算法復雜,容易出錯;(3)采用定位傳感器如 GPS、超聲波、視覺導航系統(tǒng)等確定機器人的位置,進而確定邊界。以上方法均設備復雜、成本較高,而且往往難以達到精確定位的效果。
本文針對以上邊界識別技術所存在的缺陷,提出一種改進的機器人邊界識別方法以解決上述問題,同時設計了遍歷矯正方案來減小運動過程中產生的累積誤差,提高了定位精度,降低了方法的難度。系統(tǒng)由按一定規(guī)律排布的永磁體邊界與安裝于機器人上的線性霍爾傳感器構成。經實驗驗證,該系統(tǒng)不僅具有實用性而且穩(wěn)定。
移動機器人控制系統(tǒng)由單片機主控模塊、傳感器采集模塊、電源模塊和運動控制模塊組成。單片機主控模塊是移動機器人的控制核心[1],負責處理傳感器采集的數(shù)據,經處理后發(fā)給運動控制模塊執(zhí)行;傳感器采集模塊主要是線性霍爾傳感器檢測磁場邊界采集的電壓數(shù)據;運動控制模塊是移動機器人的運動執(zhí)行部分,負責接收單片機主控模塊的運動指令,由直流電機完成前進、轉彎和后退的指令,然后通過傳感器多次采集的數(shù)據能夠實現(xiàn)遍歷矯正;電源模塊是移動機器人的能量來源,為單片機主控模塊和運動控制模塊提供所需能量。移動機器人控制系統(tǒng)總體框架如圖1所示。其中,控制系統(tǒng)的核心控制芯片采用Cygnal公司生產的C8051F020單片機。運動控制模塊的電機驅動芯片選擇L298N型號。磁邊界材料選擇磁性較強的釹鐵硼(NdFeB)磁體。傳感器采集模塊采用UGN3503霍爾傳感器來識別邊界信息。
圖1 移動機器人控制系統(tǒng)總體框架
C8051F020單片機是完全集成的混合信號系統(tǒng)級MCU芯片,采用全速、非侵入式在系統(tǒng)調試接口,提供C編譯調試環(huán)境,可以大大提高產品開發(fā)速度和效率。芯片內置有8路12位A/D轉換器、8路8位A/D轉換器、2路 12位 D/A轉換器、2路 UART、SPI、I2C、 電壓比較器、內部晶振、看門狗、電壓監(jiān)視器、溫度傳感器、多路PWM輸出,支持20個中斷源、64個可編程I/O口、4 KB RAM、64 KB在系統(tǒng)編程 Flash存儲器等外部設備,簡化了MCU芯片外圍電路的設計。
由于移動機器人采用強磁體作為邊界,對傳感器的靈敏度要求不高,因此選用線性霍爾傳感器UNG3503U來識別磁邊界。該傳感器具有低噪輸出、隨磁場強度線性變化、性能穩(wěn)定、成本低等特點。為保證機器人能夠始終有效地檢測邊界且減少霍爾元件的數(shù)量,將霍爾傳感器分為左右對稱的兩大部分。每一部分中的任意兩個相鄰霍爾傳感器的距離為矩形永磁體寬面長度的一半。左右兩大部分的霍爾傳感器間距為兩倍永磁體寬面長度。由于霍爾傳感器對垂直自身的磁感線最為敏感,因而任意一個霍爾傳感器的傳感部分均與永磁體的寬面平行,任意一個霍爾傳感器與永磁體的上寬面間距相等且約為1 mm。邊界識別的磁傳感器原理圖如圖2所示。
圖2 邊界識別的磁傳感器原理圖
目前,移動機器人工作區(qū)域的磁邊界大多采用有源的導線產生。而機器人工作時整個系統(tǒng)會在邊界上產生能量消耗,不符合現(xiàn)在倡導的低碳經濟的要求。因此,本文就功耗問題,采用無源的永磁鐵作為機器人的工作邊界,不需要增設額外的電源。永磁體可埋于地底,對環(huán)境的影響較小。考慮到每種永磁鐵都具有不同的特性,在選擇某種磁性材料時,根據應用場合不同,應該考慮最大磁能積、矯頑磁性、最大工作溫度、剩磁及材料的硬度等因素。燒結NdFeB永磁材料的剩磁Br與其他材料相差不大,但其最大磁能積卻是其他永磁材料的幾倍,且長期使用不會退磁。因此,移動機器人邊界采用燒結NdFeB磁體作為邊界材料。
該邊界識別方法簡單、精度高,同時可利用永磁體的特殊排列規(guī)律來實現(xiàn)定位,保證了機器人的工作范圍。移動機器人的磁邊界由上下寬面為磁極、充磁方向沿厚度方向的矩形永磁體組成。多個永磁體的排列規(guī)律如圖3所示,L為矩形永磁體的寬面長度,相鄰磁體的間距與磁體寬面長度相等,且所有永磁體的朝上寬面為同一磁極。
圖3 磁邊界的矩形永磁體擺放特征示意圖(俯視圖)
按上述規(guī)律放置的燒結NdFeB磁體,由于相鄰兩個永磁體間距較遠,相鄰兩磁體中每個單獨的磁體各自保持獨立的磁場分布,不發(fā)生相互作用。另外,磁鐵周圍磁場強度隨距離的增大而減小,移動機器人可以通過識別磁場的強弱來判斷其是否到達邊界。因此,本文采用一種理想的矩形磁邊界模型來模擬實際機器人的工作情況。該矩形邊界等間隔放置燒結NdFeB磁體,磁體尺寸為 30 mm×10 mm×5 mm,間隔也為 30 mm。邊界底部采用軟磁條將單個獨立的磁體按照一定的排列方式固定,將原本離散分布的磁邊界轉變成相對連續(xù)的磁邊界。磁邊界模型如圖4所示。
圖4 磁邊界模型
當移動機器人上的線性霍爾傳感器未處在磁體的正上方,線性霍爾傳感器的輸出電壓為2.5 V。該電壓經過兩個等值電阻分壓后傳給模/數(shù)轉換器,此時單片機主控模塊檢測模/數(shù)轉換器采集到的電壓為1.25 V,判斷機器人未處于邊界。當移動機器人上的線性霍爾傳感器移動至磁體上方,線性霍爾傳感器的輸出電壓發(fā)生突變,該電壓經過兩個等值電阻分壓后傳給模/數(shù)轉換器。此時單片機主控模塊檢測任意一個模/數(shù)轉換器采集到的電壓發(fā)生突變,判斷機器人到達邊界。
為了覆蓋到工作環(huán)境的整個區(qū)域,需要對移動機器人的路徑進行全區(qū)域覆蓋規(guī)劃,主要有隨機路徑規(guī)劃、螺旋收縮路徑規(guī)劃與往復前進路徑規(guī)劃三種方式,本文采用往復前進路徑規(guī)劃進行遍歷[2]。采用往復前進路徑規(guī)劃來遍歷的方案如圖5所示,移動機器人沿規(guī)劃的路徑在工作區(qū)域上下邊界和左右邊界都采用往復前進,以直線方式行走至邊界后掉頭,然后沿反方向直線運行,如此反復迂回,直到整個區(qū)域被覆蓋。
圖5 往復前進路徑規(guī)劃的方案
本文根據往復前進路徑規(guī)劃遍歷的方式,采用如下算法實現(xiàn)遍歷。假設移動機器人處于矩形工作區(qū)域的左下角邊界,其兩前輪與工作區(qū)域一邊界平行。當移動機器人到達與兩前輪平行的工作區(qū)域另一邊界時,先右轉90°,再前進與移動機器人前后輪距等長的距離,接著右轉90°按照原軌跡平行的路徑前進。當?shù)竭_與兩前輪平行的原邊界時,機器人先左轉90°,再前進與移動機器人前后輪距等長的距離,接著左轉90°前進,依次往復前進從而實現(xiàn)整個工作環(huán)境的覆蓋和遍歷。在上述假設的工作環(huán)境中,可以設定奇數(shù)次到達邊界向右轉向,偶數(shù)次到達邊界向左轉向。如式(1)所示,其中n為遇到邊界的次數(shù),y為執(zhí)行動作。
當移動機器人到達工作區(qū)域的右上角邊界時,通過控制系統(tǒng)左轉90°來改變往復的路線,由上下往復式變?yōu)樽笥彝鶑褪?,該路線切換可以通過上述邊界識別奇偶次數(shù)的方法來實現(xiàn)。
移動機器人按照往復前進路徑規(guī)劃遍歷會產生累計誤差,每次往復都會偏離原來預定路徑微小的量,隨著往復次數(shù)的增加,微小量累加最終造成較大偏差。因此,本文對機器人迂回工作產生的遍歷誤差提出了一種新矯正方式[3]。此矯正方式以磁邊界上放置的燒結NdFeB磁體作為標志,通過線性霍爾傳感器與磁體特殊的排列使移動機器人在行走過程中矯正其位置。如圖6所示,L為矩形永磁體的寬面長度。
圖6 線性霍爾傳感器的擺放示意圖(俯視圖)
上述方式通過左右各4個霍爾傳感器間的電壓差實現(xiàn)誤差矯正。由于磁邊界磁場強度由中心向外逐漸減弱,線性霍爾傳感器在離磁邊界不同距離時輸出的電壓不同。當移動機器人到達邊界時,可通過檢測線性霍爾傳感器的輸出電壓值來判斷移動機器人兩前輪是否與邊界垂直。單片機主控模塊首先通過模/數(shù)轉換器順次檢測并記錄8個線性霍爾傳感器的電壓,然后計算左邊4個線性霍爾元件的電壓之和與右邊4個線性霍爾元件的電壓之和,最后將兩電壓和相減求差,若其差小于設定的閾值,則判斷移動機器人兩前輪已經垂直邊界。若其差不小于設定的閾值,則可通過運動控制模塊調整移動機器人兩前輪的位置與邊界垂直。
模擬文中假設的工作環(huán)境,制作出移動機器人實物模型,將安裝電源后的移動機器人放置在工作環(huán)境中進行實驗與數(shù)據記錄,通過實驗,探究提出的遍歷矯正方法的有效性。表1、表2和表3分別記錄了移動機器人前后兩輪所在直線垂直邊界、向右傾斜邊界和向左傾斜邊界三種情況時的采集數(shù)據。
表1 垂直識別邊界(邊界識別閾值1.70 V)
表2 向右傾斜邊界(邊界識別閾值0.77 V)
表3 向左傾斜邊界(邊界識別閾值0.77 V)
由于左邊4個線性霍爾元件的電壓之和與右邊4個線性霍爾元件的電壓之和的差值Dv的值小于邊界識別閾值1.70 V,移動機器人判斷前后兩輪所在直線基本與邊界垂直,不作出任何矯正。
由于左邊4個線性霍爾元件的電壓之和與右邊4個線性霍爾元件的電壓之和的差值Dv的值大于0且絕對值大于閾值電壓0.77 V,移動機器人判斷前后兩輪所在直線向右傾斜邊界,向左轉動進行誤差矯正。
由于左邊4個線性霍爾元件的電壓之和與右邊4個線性霍爾元件的電壓之和的差值Dv的值小于0且絕對值大于閾值電壓0.77 V,移動機器人判斷前后兩輪所在直線向左傾斜邊界,向右轉動進行誤差矯正。
上述實驗結果說明本遍歷矯正方法可以實現(xiàn)移動機器人即時矯正,滿足了調整的實時性和快速性,在模擬條件下達到了很好的效果。
邊界識別和遍歷矯正都是移動機器人技術研究的主要問題,本文就這兩個主要問題展開了一系列設計和研究。文中研究的成果是在建立的模型系統(tǒng)中實現(xiàn)了移動機器人磁邊界的識別和遍歷,并提出了一種新的由遍歷產生誤差的矯正方法,并通過實驗證實該方法的可行性。本文的研究成果可以用在割草、清潔工作等方面。
[1]韓松.基于S3C2410的嵌入式智能機器人設計[J].數(shù)據采集與處理,2008,23(3):367-371.
[2]李智也.移動機器人路徑規(guī)劃問題的解決方案[J].計算機工程,2006,32(1):189-192.
[3]楊淮清.一種基于可視圖法的機器人全局路徑規(guī)劃算法[J].沈陽工業(yè)大學學報,2009,31(2):225-229.