毛海懿
【摘 要】智能小車是一種能夠通過編程手段完成特定任務的小型化機器人,具有制作成本低廉、電路結(jié)構(gòu)簡單、程序調(diào)試方便、趣味性強等優(yōu)點,深受廣大機器人愛好者以及學生的喜愛。路徑跟隨是智能小車應具備的基本功能之一。本文介紹一種基于灰度傳感器的機器人路徑跟隨的功能設計與實現(xiàn)。
【關(guān)鍵詞】路徑跟隨;灰度傳感器;智能小車;圖形化設計
一、設計制作背景
隨著機器人技術(shù)的成熟,智能車以及在智能車基礎上開發(fā)出來的產(chǎn)品已成為自動化物流運輸、柔性生產(chǎn)組織等系統(tǒng)的關(guān)鍵設備。在實際應用中,某些場合要求工作小車有自動尋跡、自動避障功能。路線檢測的準確與否直接影響小車尋跡時的行駛狀態(tài)及速度,而自動尋跡在實際生活中有廣泛應用,因此尋求一種低成本、抗干擾性強并且位置指示準確的路徑檢測方法具有重要意義。
路徑跟隨機器人系統(tǒng)主要由感知、執(zhí)行及控制三部分組成。感知部分包括信息監(jiān)測系統(tǒng)和信息融合系統(tǒng),執(zhí)行部分包括驅(qū)動系統(tǒng)和機械系統(tǒng),控制部分包括人機交互系統(tǒng)和決策系統(tǒng)。
機器人尋跡所用到的傳感器多不勝數(shù),如光電傳感器、灰度傳感器、電磁傳感器、激光傳感器及紅外傳感器等都屬于尋跡傳感器?;叶葌鞲衅髦饕脕頇z測地面的灰度值,進行簡單的顏色識別和黑白線區(qū)別。
二、設計制作思路
本智能小車可分為硬件和軟件兩個部分。硬件包括用“博創(chuàng)”套件搭建好尋跡機器人的主體,以及將灰度傳感器正確地安裝在機器人的主體上。軟件包括正確地編寫程序并下載到機器人,使機器人能夠通過指令改變運動軌跡并且始終保持在規(guī)定的路徑上面。具有代表性的搭建路徑常為蛇形路徑。當傳感器監(jiān)測到路徑時機器人直行,當傳感器監(jiān)測到非路徑時機器人轉(zhuǎn)彎,讓機器人能夠始終行駛在路徑上直到路徑結(jié)束。圖1是其總體控制流程。
三、硬件系統(tǒng)組成
“博創(chuàng)”套件包括有控制器單元、傳感器單元、執(zhí)行器單元和通用結(jié)構(gòu)零件等。其優(yōu)點是每個“積木”單元之間都能夠很容易地進行拼接和組裝。采用這種套件可以很簡單地搭建出自己所需要的機器人樣式,并且能夠根據(jù)自己的喜好搭建出許多富有想象力的機器人并且能夠為自己所搭建出來的機器人進行編程。本智能車硬件組成分為控制部分、檢測部分、運動部分三個模塊。
MultiFLEX?2-PXA270控制器支持使用圖形化編程軟件NothSTAR,通過軟件的集成化開發(fā)環(huán)境可以快速簡潔地開發(fā)出程序。將CDS5516機器人專用舵機、輪子、傳感器、和控制器連接起來以形成機器人結(jié)構(gòu)部件。
傳感器是檢測部分的核心,在智能機器人中起了決定性的作用。灰度就是由純黑色到純白色的過渡色?;叶葌鞲衅魇怯筛吡罫ED燈和光敏電阻兩部分組成,當高亮LDE燈所發(fā)出的白光照射到可檢測的路徑上時,路徑反射其部分光線,此時光敏電阻可檢測到反射光線的強度并且能夠?qū)⑵滢D(zhuǎn)化為控制器可識別、處理的模擬信號。
為保證舵機能夠正常地運作,對舵機進行速度與角度的調(diào)試是必不可少的。Robot Servo Terminal軟件是專門用來對CDS5516機器人舵機進行調(diào)試的軟件,如果在一個串聯(lián)線上有多個舵機則此軟件可以將每個舵機都檢測到并且按照先后順序?qū)Ω鱾€舵機依次進行調(diào)試。
搭建智能車需要的基本套件有MultiFLEX?2-PXA270控制器、灰度傳感器、正六邊形底盤、機器人專用舵機、輪子、連接件組及舵機結(jié)構(gòu)件。搭建基本過程可以概括為首先用雙孔U型結(jié)構(gòu)件鉚釘及連接件將控制器連接到正六邊形底盤上,然后將黃色連接件安裝在舵機架中間的孔中,通過鉚釘將舵機安裝在舵機架的鏤空部分,再將輪子通過連接件安裝在固定好的舵機上并對稱地安裝在底盤的四周,最后將驅(qū)動部分的信號線連接到控制器的Robot Servo端口上,至此尋跡機器人的運動部分搭建完成?;叶葌鞲衅鞯氖褂脭?shù)量及排列方式不同對機器人尋跡效果起著決定性的作用,為了獲得相對較好的尋跡效果而又不至于使得控制太復雜,本智能車采用三個灰度傳感器在正前方并排排列。灰度傳感器的信號線與控制器的AD Port接口相連。制作的效果圖如圖2所示。
四、軟件設計
系統(tǒng)的軟件工作流程如圖3所示。
為了使機器人能在不同的光照條件下正常運行,需要分別在強光、正常光及暗光條件下對反射光線強度的上下限值進行確定,具體實驗結(jié)果見表1。根據(jù)實驗可以看出,不管是在何種條件下路徑的上限值都要低于地面的下限值,綜合各種條件確定一個臨界值。
由于每個傳感器所檢測到的信息都是相互獨立、互不影響的,于是可利用二進制對每個傳感器是否檢測到路徑進行單獨設置:0表示傳感器沒有檢測到路徑、1表示傳感器檢測到路徑。三個傳感器檢測結(jié)果可用一個三位二進制iNum來表示,其中左邊傳感器檢測結(jié)果為低位。根據(jù)iNum得出控制器控制舵機的運行,如表2所示。當傳感器檢測到不同的信息時,傳感器的光敏電阻將該信息反饋給控制器,得到檢測信息,并對其進行編號以后,就可以對不同的編號進行具體分析,得到機器人不同的運動狀態(tài)。
NothSTAR是一個圖形化交互式機器人控制程序開發(fā)工具。在這個軟件中有許多實用的模塊,使用這個軟件我們不用特意地去編寫那些復雜的程序,只需要在軟件中將模塊進行拖動連接并且將模塊的一些基本的屬性進行設置,就能夠方便快捷地編寫出控制機器人運動的程序。當程序編寫完成并對程序進行編譯后就可以將編譯完成后的程序下載到機器人的控制器中進行運行。
通過對傳感器檢測到的信息進行編號后可得出8種不重復的組合,添加8個舵機控件,8個跳過控件、8個條件判斷控件及8個條件結(jié)束控件,對舵機直線運動速度、平緩轉(zhuǎn)彎速度、劇烈轉(zhuǎn)彎速度分別進行設定。至此可以得到完整的圖形化程序如圖4所示。
五、結(jié)束語
通過自己查閱資料和老師指導,成功地實現(xiàn)了機器人的路徑跟隨功能。雖然該機器人的功能比較簡單,但我相信通過不斷的學習,隨著知識應用的提升,機器人智能化也將不斷提高。
參考文獻:
[1] 張克明,畢春光.電磁尋跡車的設計與實現(xiàn)[J].信息技術(shù)與信息化,2014(9):168-171.
[2] 王佳,胡俠,柳洪義.球形管道機器人設計[J].機械設計與制造,2006(12):133-135.