基于激光雷達避障的機器人控制系統設計
移動機器人是一種能夠感知外部環境,在有障礙物的環境中能夠實現動態決策與規劃,從而完成避障等多種功能的綜合系統。機器人系統通常分為機構本體和控制系統兩部分,控制系統的作用是根據用戶的指令對機構本體進行操作和控制。隨著機器人的智能化水平越來越高,控制器要有方便、靈活的操作方式,以及多種形式的控制方式和高度可靠性,還要有很高的實時性。
為了保證系統的實時性,簡化控制系統軟件的設計,有必要在控制系統引入嵌入式操作系統。本設計將嵌入式技術與機器人技術相結合,利用ARM作為硬件平臺并移人μC/OS-Ⅱ嵌入式實時操作系統,開發了具有多線程、多任務管理的控制終端。嵌入式主控制器ARM是整個機器人控制系統的核心,主要完成環境感知、組織管理、總體任務分配。嵌入式主控器作為機器人的運算層,一方面作為控制上位機,可以通過串口與下位機伺服控制系統通信,從而完成機器人的運動控制;另一方面還提供了與遙控操作端或用戶端的無線通信接口。本文設計的機器人控制系統可應用于日常生活、足球機器人以及其他科學探索領域。
1 系統組織架構與硬件設計
設計時考慮到機器人在體積、質量等方面的限制,以及要滿足功耗低,實時性高,性能優越的特點,選擇合適的軟硬件結構及有效的控制模式是整個設計過程的關鍵。
1.1 系統總體架構
整個機器人控制系統由嵌入式主控制器、伺服控制模塊、無線通信模塊和傳感檢測模塊組成。控制系統的總體架構如圖1所示。
按功能劃分,該控制系統分為上下兩層。由實現任務管理、運動軌跡生成、定位的上層控制系統,以及完成機器人伺服控制、傳感器信息采集的下層控制系統組成。上層控制系統是整個控制系統的核心控制層,它有兩種控制實現方式:一種是獨立運行模式,另一種是遙控或遠程實時控制模式。獨立運行模式有自己的運行參數,即上層控制系統根據激光雷達的信息傳遞到環境建模模塊,產生環境地圖并產生避障算法所需信息,控制器根據避障模塊信息產生機器人本體速度和方向信息,傳遞到運動控制器。在運動控制底層程序定義了一系列程序,運動控制器通過解釋上層控制系統傳遞過來的信息并執行相應程序,從而達到機器人控制的目的,實現實時避障。遙控器或遠程實時控制模式是通過無線通信單元接收用戶端或遙控端發出的命令,實現對機器人的實時控制。系統的控制實現方式如圖2所示。
1.2 主控制模塊
主控制模塊采用SAMSUNG公司16/32位RISC處理器S3C4480作為控制器。S3C4480功耗低,有多種電源供電方式,有多種外部存儲器訪問,新的總線體系結構(SAMBA),速度可達132 MHz。主控模塊使用Hynix公司的HY57V281620(SDRAM)以及SAM-SUNG公司的Nand-Flash芯片K9F2808U作為存儲器。為了增大數據吞吐能力,選取了2片SDRAM構成32位地址寬度。S3C4480使用ARM7TDMI核,它滿足μC/OS-Ⅱ正常運行的所有條件,設計時S3C4480移入μC/OS-Ⅱ操作系統,將加快處理器的應用和開發,而且還能提高系統的實時性。通過將系統的功能劃分成按不同優先級調度的任務,實現對機器人的多任務控制,主控制模塊中的路徑規劃任務采用柵格法。
1.3 激光雷達測距模塊
激光雷達是一種工作在從紅外線到紫外光譜段的雷達系統,相對于超聲波、紅外、攝像頭等其他傳感測距方法,激光雷達具有探測距離遠,測量精度高,價格相對適中等優點。在本設計中使用德國施克公司的LMS291激光測量系統,基于飛行時間測量原理,180°掃描角度,可以設置三個保護區域,具有濾波功能,以消除障礙檢測過程中激光雷達的測距噪聲干擾。
LMS291激光雷達通過旋轉鏡面向各個方向發射脈沖激光,并由LMS291接收器接收反射光線。該激光雷達響應時間可固定為13 ms,發射角為幾mrad的激光脈沖,通過測量發射脈沖與反射脈沖之間的時間延遲,并乘以光速,就可以測得障礙物的距離。時間測量通過圖3所示的脈沖填充法求出。
如果計數值為N,則t=N△T=N/f,從而可得L=ct/2=cN/(2f),其中,f為時鐘脈沖。
LMS291激光測量系統提供RS 232數據接口,本設計主控制器采用的是S3C44B0,由于它的LVTTL電路所定義的高、低電平信號為正邏輯,而RS 232標準采用負邏輯方式,兩者間通信要進行電平轉換,在設計時系統采用RS 232電平轉換芯片MAX232ACPE實現串口的通信。
評論