廖 丹,高宏力,邱德軍,應宏中
(西南交通大學機械工程學院,四川 成都 610031)
球形機器人屬于一類典型欠驅動機械系統(tǒng),即控制輸入數(shù)目少于系統(tǒng)自由度的機械系統(tǒng)。欠驅動機械系統(tǒng)的分析與控制系統(tǒng)設計一直是極具挑戰(zhàn)性的研究領域[1],而球形機器人屬于其中最復雜的系統(tǒng):MIMO系統(tǒng)。
球形機器人的研究歷史只有近十年,主要集中于美國,瑞士等國家。2006年,由文獻[2]在前人的基礎上首次推出一種新型獨輪自平衡機器人Ballbot。該團隊將系統(tǒng)近似為兩個獨立的二維無耦合系統(tǒng),對兩個平面系統(tǒng)分別設計控制器,控制系統(tǒng)由兩層構成,內層采用比例-積分控制器處理反饋,外層采用線性二次型調節(jié)器,成功實現(xiàn)其平衡控制。該方法控制器設計相對簡單,但忽略了平面系統(tǒng)間的強耦合性,與實際系統(tǒng)模型相差較大,控制效果也不理想。2008年某研究團隊設計了BallIP獨輪機器人[3],2010年瑞士某大學研發(fā)出單球自平衡機器人[4],2012年某大學研發(fā)團隊設計一款相似結構的機器人[5],上述三個團隊控制方法主要采用線性PID控制器與LQG控制器,并且其完整動力學模型過于復雜不能轉化為二階非線性微分方程,現(xiàn)有的非線性控制方法無法用于該欠驅動機器人。綜上所述,目前應用于球形機器人系統(tǒng)的控制方法主要是針對機器人的線性模型進行的線性控制方法,非線性控制方法在球形機器人系統(tǒng)上的研究鮮有發(fā)現(xiàn)。針對上述問題,運用拉格朗日法得到球形機器人動力學模型的二階非線性微分方程形式,并驗證該動力學模型的正確性,為非線性控制器的研究提供基礎。設計一種并聯(lián)非線性PID控制器,實現(xiàn)了球形機器人的平衡控制和運動控制,通過Simulink進行仿真,驗證控制策略的可行性,同時該控制器對外界擾動具有一定的自適應性。
球形機器人主要由三大部分組成:機身,萬向輪與底部圓球。該機器人由三個伺服電機直接驅動三個全向輪運動,全向輪在水平面投影的角度均為120°,與球軸線的傾斜角度為45°。機器人的結構示意圖,如圖1所示。傳感器由陀螺儀,加速計和地磁三個傳感器組成,用于檢測機器人的自身姿態(tài)信息,編碼器用于測量球體輪的轉動。
圖1 球形機器人結構示意圖Fig.1 The Schematic Diagram of Ballbot Mechanism
定義慣性參考坐標系{0},球心為坐標系原點。將慣性參考坐標系分別沿x軸平移xs,沿y軸平移ys,以平移后的球心為新坐標系原點,新坐標系命名為球體坐標系{1}。根據(jù)歐拉角,球型機器人機身分別繞轉動后的動坐標系X軸,Y′軸,Z″軸轉動,得到坐標系{2}。定義球體球心的位置坐標為:
式中:φx,φv—機身的偏轉角與俯仰角;θx,θv—為了描述球體的位置坐標引入的兩個變量,并不表示球體的方向角,因為在實際的系統(tǒng)中我們關心的并不是球體的方向而是球體的位置信息。
球體的勢能為0,球體的動能:
式中:τx—球體x軸方向的虛擬總力矩;τy—球體y軸方向的虛擬總力矩[7]。拉格朗日方程中的拉格朗日函數(shù)為L=Tb+TW-Vb-VW廣義坐標為 q=[θxθvφxφv]T:
根據(jù)拉格朗日法建立動力學模型[6],設外部驅動力為:
把結果轉化為如下式的形式:
式中:s(·),c(·)—sin(·),cos(·),慣量陣 M(q),離心力和科氏力矩陣C(q,q˙)參數(shù)較多表達式復雜,在這里省略。參數(shù)及變量定義,如表1所示。
表1 球形機器人設計參數(shù)Tab.1 Parameters of the Ballbot
在MATLAB下建立球形機器人系統(tǒng)的動力學模型,分析在特定的情況下系統(tǒng)的開環(huán)響應曲線,通過與系統(tǒng)的動態(tài)性能對比判斷動力學方程正確性。
零狀態(tài)零輸入的條件下系統(tǒng)開環(huán)響應曲線,如圖2(a)所示。各偏轉角度為0,表明系統(tǒng)在不受任何干擾時保持平衡狀態(tài),符合物理現(xiàn)象。假設系統(tǒng)初始狀態(tài)時狀態(tài)量的數(shù)值為x=[0 0 0.2 0 0 0 0 0]T此情況下物理現(xiàn)象為:機器人機身向前傾倒,底部圓球向后運動,觀察圖2(b)曲線與物理現(xiàn)象相符。因此,可認為該模型在一定程度上可用來描述球形機器人系統(tǒng)。
圖2 系統(tǒng)開環(huán)響應曲線Fig.2 System Open-Loop Response Curve
首先定義狀態(tài)量為:x=[θxθyφxφyθ˙xθ˙yφ˙xφ˙y]T
定義系統(tǒng)的輸入量 u 為:u=[u1u2]T=[τxτy]T
球形機器人系統(tǒng)是一個開環(huán)不穩(wěn)定系統(tǒng),在φx,φy∈(-π/2,π/2)時,只有一個平衡狀態(tài):機身豎直向上。在平衡點xe的領域內有 sinφx≈φx,cosφx≈1,sinφy≈φy,cosφy≈1,且忽略與 φx,φy相關項的影響,對動力學模型進行近似。
目前應用于球形機器人的控制方法主要是針對機器人的線性模型進行的線性控制方法,控制方法主要為線性PID與LQR結合的方法。實際球形機器人控制系統(tǒng)是一個離散的復雜非線性系統(tǒng),現(xiàn)有線性的PID控制器無非線性環(huán)節(jié),控制域較小,無法直接控制非線性系統(tǒng)。當用線性PID方法實現(xiàn)球形機器人的平衡控制時,無論怎樣調節(jié)控制器參數(shù),機器人的俯仰角與偏轉角趨于0rad和πrad。球形機器人是一個開環(huán)不穩(wěn)定系統(tǒng),在開環(huán)狀態(tài)時,任何微小的擾動都會使得機器人出現(xiàn)豎直向下的狀態(tài),從圖中可以看出線性PID控制器對非線性模型并沒有起到閉環(huán)控制作用。因此,急需一種較為有效的非線性控制方法,針對球形機器人系統(tǒng)的系統(tǒng)非線性模型設計一種有效的非線性控制器。由于球形機器人的系統(tǒng)動力學模型十分復雜且不夠精確,過于復雜的控制算法難以實現(xiàn),另外系統(tǒng)控制器的結構和參數(shù)需要依靠經(jīng)驗和現(xiàn)場調試來確認,這種情況下應用PID控制技術最為方便[8]。采用一種基于非線性PID控制器的控制系統(tǒng),如圖3所示。
圖3 控制結構示意圖Fig.3 Control Structure Diagram
目前,非線性PID控制器大致分為兩類:一類是直接控制量型,一類是增益調整型。選擇較為簡單的直接控制量型控制器:
式中:u,e—控制量輸入與控制響應誤差信號;x,θ—非線性函數(shù)的自變量向量和參數(shù)向量;uP(·),uI(·),uD(·)—比例、積分、微分三個非線性分量函數(shù)。可以看出這類控制器的作用對象為控制分量,并對控制分量的非線性直接設計[9],該方法具有結構簡單,物理意義清晰等優(yōu)點。所以控制器的具體形式為:
KP(θ)為非線性比例參數(shù),適當?shù)剡x擇參數(shù)KP和ωP值使控制量 u(θ)在較小時斜率較小,在較大時斜率較大[10];KP(θ)為非線性微分參數(shù),它與KP(θ)共同參考了球形機器人的動力學方程得到的。
球形機器人的控制器應完成并實現(xiàn)兩種的控制任務:一是平衡控制,即保持機身自平衡姿態(tài);;另一種是運動控制,即控制機器人的位移運動。平衡控制問題是其中最首要的問題,其控制目標是使機器人的機身部分姿態(tài)鎮(zhèn)定在直立位置附近,即機身的俯仰角與偏轉角均趨于0rad。利用控制器NPID1與NPID3實現(xiàn)機器人的平衡。給定系統(tǒng)初始傾角φx=0.2rad,φv=-0.2rad。仿真過程中控制器的主要參數(shù)為:kp1=-45,kd1=-3.9;kp3=-53,kp3=-3.5。非線性參數(shù)分別為;ω1=5;ω3=3。仿真結果,如圖4所示。系統(tǒng)在初始傾角下迅速響應約在4s內機身糾正傾角,實現(xiàn)機身的平衡控制。
圖4 平衡控制仿真圖Fig.4 The Simulation Diagram of Balance Control System
機身平衡后,利用控制器NPID2與NPID4實現(xiàn)機器人的運動控制。NPID1與NPID3的參數(shù)值不變,僅需要調節(jié)新增PID控制器參數(shù),這種方法大大降低了整定PID參數(shù)的難度與工作量。仿真過程中控制器的主要參數(shù)為:kp2=-8,kd2=-0.92;kp4=-15,kd4=-1,非線性參數(shù)為ω2=3;ω4=2。觀察仿真結果,如圖5所示。球心位置在x軸方向仿真軌跡的調整時間4.2s,y軸方向軌跡的調整時間約6s,即機器人在6s后表現(xiàn)出較好的跟蹤精度。
圖5 運動控制仿真圖Fig.5 The Simulation Diagram of Motion Control System
為了驗證該控制方法的穩(wěn)定性和魯棒性。在模型中考慮車輪與地面的靜摩擦等摩擦和外界擾動等因素,在五秒時給定一個持續(xù)時間為0.3s幅值為0.05的脈沖信號,系統(tǒng)仿真曲線,如圖6所示。由仿真曲線可見,控制器對外界擾動具有一定的自適應性。
圖6 擾動作用下系統(tǒng)響應曲線Fig.6 The Response of System When the Disturbance is Added
球形機器人是一種新型的獨輪自平衡機器人,作為欠驅動系統(tǒng)的最典型代表之一,其研究在控制和機器人學等相關學科研究與發(fā)展方面具有一定的意義。
(1)采用拉格朗日方法建立完整的三維動力學模型,并在仿真中驗證了該模型可用來描述球形機器人系統(tǒng);
(2)針對非線性模型設計了一種并聯(lián)非線性PID控制器實現(xiàn)機器人的平衡及運動控制;
(3)Simulink仿真實驗中證明了控制系統(tǒng)能夠實現(xiàn)機器人在平衡點附近的的平衡及運動控制,同時該控制器對外界干擾具有較好的響應特性和穩(wěn)定性。