王珂
摘 要:為達到移動機器人可以實現對特殊環境進行高速、高精度穩定可靠的運行目標,基于分層式模式的移動機器人運動控制系統能夠充分運用PC端,文章制定了PC+STM32的分層式移動控制機器人的總體設計方案,并完成了該運動控制系統的車體位姿求解算法。此外,文章完成了分層式人機界面操作系統設計,對樣機進行了實驗系統搭建,為移動、監控、自動化工廠等提供平臺。就智能移動機器人系統控制的姿態求解進行實驗測試,實驗結果表明:所研制的遠程操作車體具有控制系統可靠穩定、響應迅速、定位準確的特點。
關鍵詞:移動機器人;分層式;運動控制系統
中圖分類號:TP242 文獻標志碼:A 文章編號:2095-2945(2018)33-0086-04
Abstract: In order to achieve the goal of high speed, high precision, stability and reliability, the mobile robot can operate in special environment. The motion control system of mobile robot based on hierarchical mode can make full use of PC. In this paper, the overall design scheme of the hierarchical mobile control robot based on PC+STM32 is worked out, and the algorithm for solving the vehicle posture of the motion control system is completed. In addition, the paper completes the design of the layered man-machine interface operating system. The experimental system of the prototype is built, which provides a platform for mobile, monitoring, automation factory and so on. The attitude solution of intelligent mobile robot system is tested experimentally. The experimental results show that the control system is reliable and stable, the response is rapid and the positioning is accurate.
Keywords: mobile robot; hierarchical; motion control system
1 智能移動機器人的控制系統體系架構設計
1.1 簡介
移動機器人是一類能夠通過傳感器感知環境和自身狀態,實現在有障礙物的環境中面向目標自主運動,從而完成一定功能的機器人系統[6],智能機器人所面向的環境是現實世界中復雜的動態環境,如何利用自身受限的感知和行為能力,引導機器人順利完成復雜的任務,是智能機器人控制系統需要解決的主要問題[10],但在目前全自主移動機器人還大多處于實驗階段,進入實用的多為半自主移動機器人,通過人的干預在特定環境中執行各種任務,而遙控機器人則完全離不開人的干預[5],移動機器人是目前科學技術發展最活躍的領域之一。
針對移動機器人的結構特點和運動特性,車體結構采用輪式車體,主要包括車輪車架,傳動裝置和驅動電機等部分。為達到移動機器人可以實現對特殊環境進行高速、高精度穩定可靠的運行目標[9],智能移動機器人需要對操作控制系統、位姿反饋算法等展開闡述。本文主要集中于控制系統的設計,提出一套開放式的分布式運動控制系統,開放式機器人運動控制系統因具有可互操作性、可移植性、可替代性、可縮放性和可二次開發性等特點,目前已經成為機器人運動控制系統發展的主流方向[4]。
本文采用三層形式來控制整個系統的運行,下位機包括行為信息層和控制層兩個部分,上下位機之間采用RS232串口通信,串口通訊是利用一根傳輸線傳輸數據,數據傳輸的方式是按位傳輸。下位機與傳感器之間采用SPI通信,SPI是串行外設接口(Serial Peripheral Interface)的縮寫,是 Motorola 公司推出的一種同步串行接口技術,是一種高速的,全雙工,同步的通信總線。本文應用通訊的主要設計思想為:主機先向從機發送地址,若是向從機寫入數據,則向從機發送數據,若是讀取從機數據,則向從機發送時鐘,然后在時鐘下降沿讀取數據。
1.2 分布式控制系統設計方案
為滿足該智能移動機器人的工作要求,本文選擇一種分布式的控制結構。整個結構由三個分層組成,分別是上位機層、行為信息層、下位機控制層, 如圖1系統三層控制結構圖所示。
各分層的主要功能如下:
上位機控制層:通過RS232與行為信息層通信,實時處理行為層獲取的各類傳感器信息值,同時遠程監控智能移動機器人的運動狀態,并根據運動狀態對智能移動機器人進行自動調整,從而實現整個系統的有效運行。
行為信息層:主要負責各類傳感器信息的反饋,該層不僅與上位機進行實時通訊,同時也要實時反饋下位機控制層采取的各種信息。
下位機控制層:主要采用SPI通訊方式,實時采取移動機器人的各類傳感器信號、完成上位機指定的控制指令,完成對電機的伺服控制。
2 控制系統的控制平臺設計
本文主要選擇stm32作為主控芯片,主要設計包括電源系統、通信系統、傳感器系統、信號處理系統。硬件控制系統主要包括移動載體控制器、電機驅動器、控制器、編碼器、直流伺服電機、I/O模塊、通訊模塊、人機交互界面[7-8]。各個模塊發揮自己特定功能的同時與其他設備配合,共同完成中機器人軟件系統下達給移動載體控制系統的任務。控制系統硬件架構如圖2(a)和(b)所示。
(a)行為信息層
在實際移動機器人應用中,上位機是基于visual C++的MFC程序,為實現與stm32的串口通訊,編寫完成一個MFC界面作為通訊窗口,調用MScomm控件,主要如圖3所示。串口調試程序可以選擇串口1和串口2,本文選擇串口1,設置串口傳輸參數,周期性自動發送控制命令。串口通訊基本流程如圖3所示,實際運行效果如圖4所示。
上位機與下位機通訊配置完成后,本文采用分層式人機交互界面,其中人機交互界面的功能模塊圖如圖5所示,移動機器人任務環境的設計目的是合理的去完成一系列任務,并告知機器人完成任務的順序,同時向其他模塊完成狀態信息共享等,人機交互界面如圖6所示,主要包括移動機器人控制欄、串口配置信息顯示、機器人狀態信息顯示、機器人任務要求、移動軌跡狀態顯示等信息以及串口配置、傳感器信息等子窗口接口。
3 移動機器人實驗分析
本實驗的數據采集主要通過以下方式:將光電碼盤的正交編碼信號輸入到主控板控制器stm32的正交編碼脈沖外設中;利用光電碼盤單位時間內檢測出機器人的左右輪位移差分信號ΔR、ΔL,由此可以推斷出單位時間內機器人位置變化量ΔX、ΔY和Δθ,通過計算位姿公式得到該移動機器人的位姿信息。
我們選擇以X方向運動作為誤差基準,通過多次測量X方向的數據求取整個誤差補償值作為系統補償值,通過MATLAB對所測數據進行多項式擬合處理得到如圖7圖8誤差補償曲線曲線,在曲線上通過觀測移動機器人的X方向數據得到置信度為0.95的置信區間,我們選擇其均值作為誤差補償值。
從圖中我們可以看出隨著位移的增加,其誤差值增大;在位移范圍為0~35m內的誤差極大值為1.2m。
我們通過多次測試到達位置為10m、角度為0°處的位姿對上述誤差補償值進行驗證。測量13組數據:R、L表示為左右輪的差分位置信號累加值如表1所示。(其中該點的實際位置值為(10m,10m),角度0°,其誤差補償值0.36m)
4 結束語
本文完成了智能移動機器人的控制系統體系架構設計、控制系統的控制平臺設計及系統配套軟件開發,對樣機進行了實驗系統搭建,為移動、監控、自動化工廠等提供平臺。最后就移動機器人系統控制與姿態求解進行實驗測試,實驗結果表明:所研制的遠程操作車體具有控制系統可靠穩定、響應迅速,定位較為準確的特點。本文雖然對遠程操控的移動機器人展開了全面設計,并成功實現了預期的任務目標,但由于時間限制,本課題還需要進一步完善以下問題:控制系統的軟硬件功能還需進一步完善,使控制系統的控制性能進一步提升,從而進一步提高系統的可靠性;誤差補償的處理方式還有待進一步解決,主要包括誤差補償方向的確定及誤差產生的原因等問題;傳感器信息采集系統還需要做進一步的研究,以提高外部感知能力。
參考文獻:
[1]劉進長.與世界機器人之父對話[J],機器人技術與應用,2001(3).
[2]徐國華,譚民.移動機器人的發展現狀及其趨勢[J].機器人技術與應用,2001(3).
[3]蔡自興.機器人學[M].北京:清華大學出版社,2000:18-19,46-53.
[4]Pritschow G., Altintas Y., Jovane F., et al.Open controller architecture-Past, present and future [J].Ann CIRP, 2001, vol. 50:463-470.
[5]王文學,孫萍,徐心和.足球機器人系統結構與關鍵技術研究[J].控制與決策,2001,16(2):233-235.
[6]周超.基于DSP 的小型移動機器人控制系統[D].哈爾濱:哈爾濱工業大學,2005.
[7]K Z X .Controllability and stabilization of the programmed motions of a transport robo[J]. Journal of Applied Mathematics and Mechanics, 2000,64(6):871-890.
[8] Robots A. Pioneer 2 Mobile Robot Operating Manual[EB/OL].http://robots.activmedia.com 1999.
[9]吳孜越,胡東方,楊丙乾.運動控制器在國內的應用及發展[J].機床與液壓,2007,35(7):234-236.
[10]于金鵬.基于多DSP的智能機器人運動控制系統的研究[D].濟南:山東大學,2005.
[11]張廣立,付瑩,楊汝清,等.基于Windows NT的開放式機器人實時控制系統[J].上海交通大學學報,2003,37(5).
[12]馬雄波.基于PC機的開放式多軸軟數控系統關鍵技術研究與實現[D].哈爾濱:哈爾濱工業大學,2007.