沈友建,黃孝鵬,肖建東,陳煊之
(山東科技大學 電氣與自動化工程學院,山東 青島 266590)
?
基于STM32的機器人自主移動控制系統設計
沈友建,黃孝鵬,肖建東,陳煊之
(山東科技大學 電氣與自動化工程學院,山東 青島 266590)
針對類車機器人自主移動的問題,首先在非完整約束系統下建立類車機器人低速移動過程的運動學模型和動力學模型,選用適合基礎性類車移動機器人研究的自行車模型進行狀態分析;在混合式體系結構下用STM32作為機器人自主移動控制系統的核心,給出控制系統框圖,完成硬件設計;同時完成環境定位與建圖,構建動態貝葉斯網絡,最終綜合實現類車機器人自主移動的功能。
自主移動;運動學模型;STM32控制系統;SLAM
引用格式:沈友建,黃孝鵬,肖建東,等. 基于STM32的機器人自主移動控制系統設計[J].微型機與應用,2016,35(18):58-61.
從2013年德國提出“工業4.0”開始,機器人的智能化過程將會越來越迅速,而“人機協作、與人共融”是下一步機器人產業亟待解決的難題,目前的工業機器人或專業服務機器人的移動能力都不夠完善,操作方式不夠靈活,自主化程度也都不高。
基于以上在機器人領域出現的新情況和遇到的新問題,本文對基于STM32的機器人自主移動技術研究進行簡單的論述。本文的研究對象為類車移動機器人,為論述簡潔,下文中出現的機器人、移動機器人都代指類車移動機器人,不另注明。
類車移動機器人自主移動是指在無人操作情況下,在隨機環境中,為完成特定事件或一系列動作,通過機器人自身搭載的控制系統并應用環境感知技術進行多種數據信息的處理,最終實現機器人的自主決策、獨立執行,要求是能夠躲避各種隨機障礙、規避潛在風險[1]。目前,類車機器人自主移動的主要功能需求為:(1)在未知環境中實現自身定位,并進行環境感知與建圖;(2)未知環境下的整體規劃與行為決策;(3)搭載具有學習進化能力的機器人移動控制系統設計;(4)各機器人之間實現網絡化、協同化;(5)最終目的是實現“人機協作、與人共融”。
本文論述的機器人自主移動技術分為3個部分:(1)機器人低速自主移動數學模型的建立;(2)基于STM32的控制系統設計;(3)機器人自主移動SLAM模型及原理。
在類車移動機器人受非完整約束的條件下建立其低速自主移動數學模型,包括低速移動運動學模型和動力學模型,同時引入自行車模型來簡化對自主移動機器人建模的問題。
1.1非完整約束和完整約束
完整約束和非完整約束是構成系統約束的全部內容。完整約束(Holonomic Constraint)是指系統約束方程中不含確定系統位置的坐標的微商,或雖含坐標的微商但不利用動力學方程就可直接積分成為不含坐標微商的約束;非完整約束(Non-holonomic Constrain)是指系統約束方程中含有確定系統位置的坐標的微商且不利用動力學方程不能直接積分為不含坐標微商的約束,非完整約束包括運動約束和動態約束兩種[2]。類車移動機器人就是典型的受非完整約束的系統,簡稱非完整系統。
1.2移動機器人的數學模型
對于移動機器人,為了對其運動特性進行分析、整理和優化,需要建立經過合理簡化和抽象的數學模型。本文采用運動學模型和動力學模型對類車移動機器人進行建模分析研究,通過這種模型,研究類車移動機器人在時間、空間中的運動規律并進行控制系統設計。
根據現有移動機器人情況的統計研究,大多數移動機器人速度都低于30 km/h,而在轉彎的過程中機器人還會有減速過程,在這種低速轉彎的過程中,側向加速度會很小,因此認為移動機器人的輪子相對于地面滿足非完整約束。如圖1所示,此時類車移動機器人的瞬時轉向中心一直位于機器人后軸的橫向延長線上,也就是說后軸上各點的速度方向始終垂直于后軸,而整個后軸及后車輪在橫向軸心方向上速度為零,這就是類車移動機器人的非完整約束。即對于機器人后軸各點處的速度應該滿足如下要求:
(1)
其中,xc、yc代表機器人后軸上各點的坐標。此種情況下,對機器人質心列寫運動學方程組如下:


(2)
其中,υ為整體質心速度;L為前軸到后軸的距離;α為機器人的質心側偏角;β為機器人的橫擺角。因為類車移動機器人受到的是非完整約束,必須使用關于這些約束的相應的廣義坐標,所以在圖1中,x和y為機器人各部分質點所屬質點系質量分布的平均位置在廣義坐標系下的坐標;R為機器人瞬時轉彎半徑;S為后軸長度;p、q為機器人質心分別距前軸和后軸的距離;φl、φr、φ分別為機器人左前輪、右前輪以及前軸中心點的對應轉向角[3]。

圖1 車輛低速行駛的運動學模型
為了盡量得到更加適應于研究類車機器人的規劃及控制問題的數學模型,應該使得類車移動機器人低速行駛的運動學模型的形式盡量簡單,因此要求該模型只反映機器人低速行駛時其運動的主要特征,為此,在保證車輪相對于地面滿足非完整約束的情況下,可以忽略車輪的側向運動。
雖然上述運動學模型可以反映移動機器人的運動情況,但是為了滿足非完整約束的條件,還需要知道車輪的側偏角,所以僅僅依靠運動學模型還不足以完成對移動機器人的完整數學描述,以而引入了動力學模型的知識。通過建立動力學模型可以計算出移動機器人車輪所受的側向力,進而得到車輪側偏角的具體數據,進一步補充之前的運動學模型。根據研究問題的范疇和實際情況,將兩種模型結合應用,就可以對移動機器人較好地建立模型。
本文中提到的移動機器人動力學問題是指移動的平穩性和機器人控制系統的實際控制效果這兩大領域。本節的內容屬于機器人控制系統的實際控制效果的一部分。
目前操縱穩定性模型種類廣泛,從簡單的低自由度模型到復雜18自由度模型都有相對應的理論研究。高復雜度的動力學模型優勢在于反映移動機器人的非線性特性和動態響應特性,但同時,高自由度模型含有較多的無光變量,優化速度較慢;簡單的低自由度模型含有較少的無關變量,優化速度較快。理論研究結合實際條件,確定自行車模型為理想化的動力學模型,如圖2所示。

圖2 車輛自行車模型

自行車模型是對類車移動機器人的簡化建模,根據類車機器人的結構特點,在車輪軸向方向上,用該模型的前輪代替移動機器人的全部前車輪,用該模型的后輪代替移動機器人的全部后車輪,雖然模型結構簡單,但是依舊能夠清晰反映類車移動機器人縱向、側向以及橫擺運動特性,非常適合用于基礎性類車移動機器人的動力學研究。自行車模型的動力學方程組如式(3)所示[3]:
(3)
其中,m為半車質量:Jz為機器人自主移動時繞z軸的轉動慣量,其他變量與圖2中相同。
嵌入式控制器件具有結構簡單、易于控制、成本相對較低的優勢,越來越為人們所青睞;ARM是開源環境,可借鑒應用的研究技術豐富;STM32單片機具有性價比高、性能好、成本低、功耗低的特點,非常適合作為數據處理和控制單元,而且豐富的多功能電機控制接口方便實現對各種驅動電機的精確控制。因此選用STM32單片機作為控制系統的核進行控制系統設計。
2.1控制系統基本組成
類車機器人自主移動控制系統包括兩部分:(1)完成機器人的運動控制功能;(2)進行自主環境感知。這當中的關鍵技術包括運動控制技術、傳感器技術、機器人視覺技術、多傳感器信息融合技術、無線網絡通信技術以及集傳感器、控制與通信于一體的系統集成技術。圖3是一種機器人自主移動控制系統框圖。

圖3 移動機器人的控制系統框圖
機器人自主移動控制系統的一種典型的硬件組成如圖4所示。整體結構包括含有工控機的上位機和由STM32芯片作為控制核心的下位系統。上位機不斷地發送指令和編碼器的反饋信號給下位機,下位機以此來控制移動機器人的具體動作,同時將機器人的狀態信息和傳感器數據反饋到上位機,包括機器人的矢量速度、多種傳感器信息、視頻信息等。上位機采用處理能力強大的工控機,本文不做詳細描述。

圖4 自主移動機器人的硬件組成
2.2控制系統的體系結構
體系結構是機器人的物理框架和智能控制系統的載體,包括慎思式、反應式和混合式[4]。慎思式體系結構有較強的總體控制能力,但是反應性差;反應式體系結構缺點是對于全局性任務的管理能力較差,優點則是其魯棒性/抗變換性(Robustness)好、動態響應能力比較強;混合式體系結構結合以上兩種結構的特點,既有較高的機器人動態響應能力,又具有基較強的系統規劃能力,特別適合不確定環境下的機器人的自主移動。
機器人自主移動需要較強的任務管理能力和動態環境響應能力來確保能在各種不確定環境下完成決策任務。針對機器人的這種功能需求,確定在混合式體系的框架下設計機器人的控制系統,以此來達到結構簡單、魯棒性/抗變換性好、擴展能力強的目的。機器人的控制系統體系結構如圖5所示[5]。

圖5 機器人混合式體系結構
STM32控制系統的功能屬于慎思層,其中任務規劃模塊具有最高的層次,負責實現人機交互以及遠程服務器交互。傳感器管理模塊監測傳感器的數據,保證傳感器正常運行。序列發生器和執行監控模塊作為過渡層,作用是分解任務、監督執行器執行。行為控制模塊完成行為層的功能。機器人感知模塊主要采集和處理各種傳感器數據,既包括直接傳送到行為庫的數據,也包括傳送到STM32控制系統用于環境建圖的信息。執行器負責最終完成工作。機器人的控制系統結構整體采用多線程的軟件工作模式,從而減少慎思處理過程對機器人整體響應能力的限制。
環境定位與建圖可以看做是實現機器人自主移動技術的關鍵。移動機器人同時定位與建圖(Simultaneous Localization And Mapping, SLAM)問題可以描述為:機器人在未知環境中開始移動時,其初始位置未知,而在其移動的過程中,可以不斷根據位置估計和地圖信息實現自身定位,在自身定位的基礎上同時建造增量式地圖,實現機器人的自主定位和導航,定位與建圖同時進行、相輔相成。圖6是SLAM理論體系展開圖。

圖6 SLAM理論體系展開圖
移動機器人SLAM問題含兩方面的內容:一是機器人移動過程中的自身定位與狀態控制,二是機器人所處環境的信息搜集。當機器人在未知環境中移動時,不斷地通過系統配置的多種傳感器和搭載的攝像設備感知所處環境,這包括探測路障、檢測路標、收集環境圖像信息、自身環境定位。移動機器人SLAM的系統工作過程如圖7所示。

圖7 移動機器人SLAM系統工作過程
該類車移動機器人為一定范圍內的全局感知型。在圖中,R為機器人的感知半徑;Xt表示t時刻移動機器人的位姿狀態向量;wt為t時刻路標與機器人形成的觀測向量;sj表示第j個路標的位置狀態向量;ut為從t-1時刻到t時刻的機器人控制系統的輸入向量。
很明顯,根據運動過程的連續性,系統當前狀態與之前的系統狀態、觀測信息以及輸入有關,即:
p(Xt|X0:t-1,w0:t,u1:t)
類比于系統的狀態可觀測性,假設當前的機器人的移動狀態是之前所有狀態變量經過任意形式的運動變化之和,則可以得到系統當前移動狀態的分布概率[6]為:
p(Xt|X0:t-1,w0:t,u1:t=p(Xt|Xt-1,ut)
(4)
由系統狀態分布公式進而得到觀測信息的相對公式為:
p(wt|X0:t-1,w0:t-1,u1:t)=p(wt|Xt)
(5)
公式(4)與公式(5)共同組成了移動機器人和環境的動態貝葉斯網絡(DynamicBayesnetwork,DBN)。這個網絡將會隨著毗鄰時間步驟把不同變量聯系起來,另外還可以應用大數據挖掘技術,提取出機器人自主移動過程中的大量特性數據,為類車機器人的自主移動技術的研究提供基礎,最終使得類車移動機器人具有進行全局性整體規劃
的性能。
本控制系統以STM32作為自主移動機器人的控制芯片,在設計實現的過程中,加入運動學模型和動力學模型,可為機器人的機械結構設計、動力裝置配備以及路徑規劃等提供參考數據;融合SLAM技術,初步實現了機器人自主移動。今后在自主移動的基礎上,再加入傳感器技術、電子技術、計算機技術、控制技術及人工智能技術等多學科多種技術,使移動機器人更自主、更智能,甚至具有情感,以更好地服務于人類。
[1] 沈林成,徐昕,朱華勇,等.移動機器人自主控制技術理論與技術[M].北京: 科學出版社,2011.
[2] 黃用華,廖啟征,魏世民,等.一種前輪驅動自行車機器人的非完整約束[J].中南大學學報(自然科學版),2011,42(增刊1):512-518.
[3] 沈林成,徐昕,朱華勇,等.移動機器人自主控制技術理論與技術[M].北京:科學出版社,2011.
[4] 秦志斌,錢徽,朱淼良.自主移動機器人混合式體系結構的一種Multiagent實現方法[J].機器人,2006,28(5):479-481.
[5] 宋永端,李丹勇,蔡文川.移動機器人機器自主化技術[M].北京:機械工業出版社,2012.
[6] 陳白帆.動態環境下移動機器人同時定位與建圖研究[D].長沙:中南大學,2009.
Design of autonomous mobile robot control system based on STM32
Shen Youjian, Huang Xiaopeng, Xiao Jiandong, Chen Xuanzhi
(College of Electrical Engineering and Automation, Shandong University of Science and Technology ,Qingdao 266590,China)
Aiming at the problem of autonomous mobile robot, first of all in nonholonomic system it establishes the robot low-speed mobile’s kinematics model and dynamics model, and chooses the bicycle model as the mobile robot’s suitable basic model to analysis. In mixed architecture, STM32 is used as autonomous mobile robot control system core and the block diagram of a control system is given, the hardware is designed. The environment localization, map building and construction of dynamic Bayesian network are completed. Finally, it synthetically achieves the functions of autonomous mobile robot.
autonomous mobile; kinematics model; STM32 control system; simultaneous localization and mapping
TP24
ADOI: 10.19358/j.issn.1674- 7720.2016.18.017
2016-04-22)
沈友建(1991-),通信作者,男,碩士研究生,主要研究方向:生產過程自動化。E-mail:jushi1991@126.com。