一種新型智能清潔機器人測控系統(tǒng)的設計與實現(xiàn)
2.3 障礙物檢測模塊
2.3.1 超聲波檢瀏部分
超聲波是一種一定頻率范圍的聲波,頻率為40kHz的超聲波信號在空氣中的傳播效率最佳。本文選用中心頻率40kHz,測距范圍在5m以內(nèi)的普通超聲波傳感器。傳感器發(fā)射探頭和接收探頭安裝在機器人正前方,系統(tǒng)工作時,通過匯編程序由P3.7口產(chǎn)生精確的40kHz發(fā)射脈沖,每隔25ms發(fā)射一組脈沖,每組的脈沖個數(shù)取6~10個,以保證發(fā)射波具備良好的傳播性和反射性。發(fā)射波遇到障礙物反射回來,被接收器接收,轉變成電信號脈沖,對該信號進行放大、濾波、比較和整形等處理后送入單片機外部中斷口INT1,觸發(fā)單片機外部中斷,進入中斷處理程序,獲取從發(fā)射波發(fā)出到收到反射波時的時間間隔即測距時間,由此即可根據(jù)超聲波測距原理計算出障礙物的距離。主程序中設定機器人行走過程中距離障礙物的最小距離,當被測距離小于最小距離時,控制器向驅動系統(tǒng)發(fā)出避障指令,避開障礙物。本設計中利用軟件延時去除串擾帶來的誤操作,即在發(fā)射波發(fā)出一段時間后,再打開外部中斷,避免發(fā)射波不經(jīng)反射就直接被接收器接收而引起假中斷。
2.3.2 紅外反射式傳感器檢測模塊
該模塊用于主動探測機器人周邊障礙物和地面落差。選用JY043W型紅外反射式傳感器,該型傳感器調(diào)理電路簡單,安裝調(diào)試方便,每一路的檢測距離可以達到 7cm,滿足本文設計的需要。該部分由6路檢測單元組成,其中在機器人左前方和右前方各安裝2路,配合超聲波傳感器實現(xiàn)周邊障礙物的檢測。另2路分別安裝在機器人前端左下方和右下方,探頭距離地面4cm,用于檢測地面是否有臺階等落差,防止機器人跌落。紅外反射式傳感器具體工作過程為,發(fā)現(xiàn)障礙物時,發(fā)射管發(fā)出紅外信號遇到障礙物反射回來,接收管接收到反射信號后導通,則信號處理電路的輸出端變?yōu)榈碗娖?,該低電平直接送入控制器P2的一個端口,當控制器檢測到這個端口的低電平變化時則表明該方位發(fā)現(xiàn)障礙物。
2.3.3 接觸傳感器檢剛模塊
接觸傳感器具有檢測范圍大、信號無需調(diào)理、占用控制器資源少等一系列優(yōu)點。本文選擇小型接觸開關作為接觸傳感器,安裝在機器人前端的緩沖器上,作用在于通過輕微的碰撞接觸,檢測那些未能被超聲波傳感器和紅外反射式傳感器檢測到桿狀或微小障礙物,如座椅腿等。
3 測控系統(tǒng)軟件設計
3.1 傳感器信息處理
當各路傳感器檢測到障礙物時,控制器必須獲得障礙物的準確信息后,才能發(fā)出正確的避障指令。為了獲得有效信息,程序代碼中為每一路檢測信息都設定一個標志位,主程序不斷檢測各個標志位的值的有效性,以此作為障礙物方位信息。對于不同的傳感器,其信息判斷標志位有效值也可能不同。在本文所提到的3種傳感器中,超聲波傳感器的信號處理程序最為復雜,其流程如圖3所示。
圖3 超聲波傳感器信號處理程序流程
3.2 驅動控制
驅動控制模塊是智能清潔機器人自主行為的執(zhí)行機構。根據(jù)傳感器信息判斷當前環(huán)境狀態(tài),對不同的障礙物信息,控制器將調(diào)用不同的避障策略,策略與驅動控制的動作組合指令相對應,通過左右驅動電機動作的有效協(xié)作,實現(xiàn)機器人前進、后退、轉彎等自主動作。單部電機的控制信號與電機動作之間的關系如表1所示,其中 P1.1和P1.2為電機方向控制信號端口,P1.3為PWM波調(diào)速端口,需要減速時只需要降低PWM波的占空比即可,理論上可以實現(xiàn)256級調(diào)速。
表1 控制信號與電機動作關系
3.3 避障算法描述
根據(jù)模糊控制思想并結合實際行走試驗設計避障算法。以傳感器系統(tǒng)9路傳感器的檢測距離和障礙物所在的方位為模糊控制輸入量,以驅動輪的前進、旋轉和后退動作為模糊控制輸出量。超聲波傳感器檢測最小距離設定為15cm,距離遠;紅外傳感器檢測距離為7cm,距離適中;接觸傳感器是在發(fā)生碰撞后才能檢測到障礙物,因此檢測距離最近。據(jù)此設距離信號(記作:D)的模糊語言集合為:
評論