文/藍(lán)芯科技
本文與大家分享一下移動(dòng)機(jī)器人研發(fā)中所涉及的一系列控制問題,以說明作為機(jī)器人領(lǐng)域里內(nèi)的核心技術(shù)之一,控制學(xué)也是很“硬核”的。
1、移動(dòng)機(jī)器人運(yùn)動(dòng)控制
“天下武功,唯快不破”,移動(dòng)機(jī)器人一般通過電機(jī)控制輪子完成移動(dòng)。作為末端執(zhí)行機(jī)構(gòu),電機(jī)的運(yùn)動(dòng)控制要求響應(yīng)快(毫秒級(jí)響應(yīng)時(shí)間),精度高。目前,典型的電機(jī)控制是一個(gè)串級(jí)控制系統(tǒng),由三個(gè)閉環(huán)反饋組成,即位置環(huán),速度環(huán),電流環(huán),其原理如下:
圖1 運(yùn)動(dòng)控制原理圖
OK,控制模塊本質(zhì)上就是三個(gè)PID嵌套,So easy。老師告訴我們,目前90%以上控制系統(tǒng)使用的都是PID,因?yàn)镻ID真的很魯棒。另外,對(duì)于移動(dòng)機(jī)器人的主動(dòng)輪電機(jī),往往以控制電機(jī)轉(zhuǎn)速為被控變量,此時(shí)沒有最外面的位置環(huán),只需要速度環(huán),電流環(huán)兩個(gè)環(huán)即可。
2、機(jī)器人運(yùn)動(dòng)模型
模型是一切控制系統(tǒng)的基礎(chǔ),機(jī)器人運(yùn)動(dòng)模型描述的是移動(dòng)機(jī)器人主動(dòng)輪轉(zhuǎn)動(dòng)的速度與機(jī)器人整體運(yùn)動(dòng)狀態(tài)的關(guān)系,不同底盤構(gòu)造的移動(dòng)人運(yùn)動(dòng)模型大不相同。常見機(jī)器人運(yùn)動(dòng)模型有三種:單舵輪、雙輪差動(dòng)、雙舵輪。
圖2 常見移動(dòng)機(jī)器人運(yùn)動(dòng)模型
本文以單舵輪為例(其實(shí)就是一種三輪車),由后面兩個(gè)固定軸的從動(dòng)輪,以及前面一個(gè)可以轉(zhuǎn)向的主動(dòng)輪(舵輪)組成。假設(shè)我們過一個(gè)不急的彎,需要以v = 1m/s的線速度前進(jìn),同時(shí)帶著w = 0.1rad/s角速度漂亮的漂移過彎。那么我們既要決定打多少方向,又需要決定腳蹬的多猛,這就是機(jī)器人運(yùn)動(dòng)模型所解決的問題。
根據(jù)圖中所示:
根據(jù)輸入的v= 1m/s, w = 0.1rad/s,可以反算出vf與θ的值,其中θ對(duì)應(yīng)于三輪車車頭轉(zhuǎn)的方向大小,而vf對(duì)應(yīng)于腳蹬的多快。其他兩種機(jī)器人運(yùn)動(dòng)模型讀者可自行推導(dǎo)或查找相關(guān)資料,而且實(shí)際上的運(yùn)動(dòng)模型并沒有如此簡單,還需要考慮車輪的彈性系數(shù)等復(fù)雜的物理變量。
3、路徑跟蹤
控制論中經(jīng)典Tracking問題,即給定一條軌跡,移動(dòng)機(jī)器人需要盡量沿軌跡行走,控制目標(biāo)是盡量減小機(jī)器人實(shí)際行走路線與規(guī)劃軌跡的偏差。如下圖所示:
圖3 路徑跟蹤問題示意圖
最簡單的實(shí)現(xiàn)路徑跟蹤的方法是反饋控制思想,即獲取當(dāng)前機(jī)器人運(yùn)動(dòng)方向與軌跡曲線的切線方向的偏差Δα,獲取機(jī)器人運(yùn)動(dòng)中心與軌跡曲線的距離偏差Δβ,將二者作為反饋量引入閉環(huán)控制,采用一定的比例控制率計(jì)算所需的線速度與角速度。
4、定位問題
移動(dòng)機(jī)器人行走的核心技術(shù)是解決其自主定位的問題。設(shè)機(jī)器人在各時(shí)刻的位置為x1,x2,…,xk,其中k是離散時(shí)間下標(biāo)。那么我們通常可以用下面兩個(gè)方程來描述機(jī)器人的位置估計(jì)問題:
其中,f是運(yùn)動(dòng)方程,u是輸入,w是輸入噪聲,g是觀測(cè)方程,y是觀測(cè)數(shù)據(jù),n是觀測(cè)噪聲。
常用里程計(jì)信息預(yù)測(cè)機(jī)器人下一個(gè)狀態(tài)的位置,也就式(1)可以簡化為:
Δxk表示采用里程計(jì)信息計(jì)算得到兩個(gè)時(shí)間間隔中機(jī)器人的相對(duì)運(yùn)動(dòng)。
而對(duì)于激光定位來說,所謂的觀測(cè)方程,就是激光雷達(dá)所檢測(cè)到的所有激光點(diǎn)與地圖匹配后得到的機(jī)器人位置估計(jì)。
對(duì)于視覺SLAM來說,所謂的觀測(cè)方程,就是相機(jī)拍攝到的圖片中的特征點(diǎn)與地圖匹配后得到的機(jī)器人位置估計(jì)。
圖4 視覺定位問題描述
根據(jù)定義,這是典型的卡爾曼濾波(俗稱“即卡又慢”)表示形式,學(xué)過系統(tǒng)辨識(shí)與濾波的同學(xué)可以愉快的玩耍了。
5、多機(jī)調(diào)度
實(shí)際場景中往往需要多臺(tái)機(jī)器人同時(shí)在線解決復(fù)雜的多項(xiàng)任務(wù),多機(jī)調(diào)度系統(tǒng)需要優(yōu)化每個(gè)移動(dòng)機(jī)器人的行走路徑,避免路徑死鎖,也就是路徑互相被占,且無法自主釋放。
圖5 堵車是死鎖問題,移動(dòng)機(jī)器人調(diào)度中也會(huì)遇到
除了需滿足不死鎖的基本要求,多機(jī)調(diào)度系統(tǒng)更需要合理分配任務(wù)至每個(gè)移動(dòng)機(jī)器人以提升總體任務(wù)執(zhí)行效率,同時(shí)選擇合適時(shí)機(jī)分配空閑的移動(dòng)機(jī)器人自動(dòng)充電??紤]到機(jī)器人隨時(shí)可能遇到異常故障退出調(diào)度,以及添加新的機(jī)器人等情況,因此多機(jī)調(diào)度系統(tǒng)解決的是一個(gè)隨機(jī)環(huán)境下的動(dòng)態(tài)優(yōu)化命題,問題復(fù)雜度是NP-hard的,需要開發(fā)人員熟練掌握《運(yùn)籌學(xué)》、《圖論》、《Multi-agent》、《分布式系統(tǒng)控制》、《離散事件動(dòng)態(tài)系統(tǒng)》等相關(guān)控制領(lǐng)域的知識(shí)。