吳 晗,薛 磊,徐開蕓,朱 昊
(南京工程學院 自動化學院,江蘇 南京 211167)
近年來,機器人已經成為自動控制領域研究的熱點之一,具有廣泛的發展前景。球形機器人是一種欠驅動運動載體,其密封性良好。其獨特的運動方式使得其轉彎半徑為零,能實現任意時刻任意方向的移動,動作敏捷,高適航性。它適合在室內導航、社會服務和軍事等狹窄、擁擠的環境中執行任務,且能耗較低。本文研究球形機器人速度控制問題,為該系統設計雙閉環PID控制器,在Matlab環境下Simulink中仿真調試,實現球形機器人全方位的運動。

圖1 球形機器人的結構圖Fig.1 Structure diagram of a spherical robot
球型機器人的結構如圖1所示。包括透明球體外殼、控制模塊(主控芯片STM32F103)、運動模塊、通信模塊(HC-05藍牙模塊)以及電源模塊。其中,球形機器人的外殼由兩個半球組成,在中軸鏈接處安裝磁鐵將兩個半球合成一體。球體內部放置自平衡雙輪小車,小車運動機構由直流無刷電機、電機驅動模塊TB6612、陀螺儀MPU6050以及萬向輪組成。驅動雙輪小車會導致整個球體重心位置改變;陀螺儀采集球形機器人的姿態傳送給控制器,控制器運用控制算法實時調整球體姿態,使其重心變化保持在球形機器人期望運動的方向,從而實現控制球體的運動方向。
球形機器人系統是欠穩定的非線性系統,是典型的倒立擺模型[1]。現采用一級倒立擺模型分析球形機器人的運動過程,應用牛頓力學方法建立了一級倒立擺模型。模型中運動目標為剛體系統,系統抽象成僅由小車和勻質球體組成的運動系統。運動中忽略空氣阻力、靜摩擦力、雙輪小車旋轉時的摩擦力等次要因素。在以上前提條件下,球形機器人的受力分析如圖2所示,其中a為小車運動加速度,θ為擺桿與垂直向上方向的夾角,F為小車水平方向的力,m是球的質量。

圖2 球型機器人的受力分析Fig.2 The force analysis of the spherical robot
為了保證球形機器人穩定,通過控制車輪作加速運動,球身的慣性力與車輪的加速度方向相反,大小成正比,此時球的受力為:

由于θ很小,為此作線性化處理。假設負反饋控制是車輪加速度 a與偏角 θ成正比,比例為 k1,如果 k1>g,那么力的方向與位移方向相反。
為了使得球形機器人能盡快地在垂直位置穩定,需增加額外的阻力,此力與角速度成正比,比例為k2,方向相反。此時,球受到反作用力為:

由此,可以得到車輪的加速度為:

據此可以構建球形機器人數學模型[2],并建立速度的比例微分負反饋控制[3]。假設球形機器人的重心離地面水平高度為L,外力干擾引起球形機器人產生的角加速度為x(t),沿著垂直于球形機器人方向受力分析,可以得到球形機器人偏轉角與車輪運動加速度a(t)以及外力干擾加速度x(t)之間的運動方程為:

當角度θ很小時,運動方程式(4)可簡化為:

當球形機器人靜止時,其重心偏移會導致不穩定,因此需要引入負反饋,得到相應傳遞函數為:

由于球形機器人系統的非線性特點,必須設計相應的控制器,確保系統穩定運行。
球形機器人的運行速度,由內置雙車輪小車的轉動速度決定,相應的運動軌跡示意如圖3所示。假設球形機器人外殼為圓C1,周長為S1,直徑D1=16cm;雙輪小車在球形機器人內運動軌跡形成的圓為C2,周長為S2,直徑D2=14.5cm;雙輪小車的車輪為圓C3,周長為S3,直徑D3=4.5cm。

圖3 球形機器人內置雙車輪小車的運動軌跡示意圖Fig.3 Schematic diagram of the trajectory of a dual wheel car in spherical robots
當雙輪小車沿圓C2軌跡行走1圈時,由公式(7)可以推算出雙輪小車對應在C3需轉3.22圈。當雙輪小車沿圓C1轉動1圈時,由公式(8)可以推算出小車沿圓C2行走1.1圈,那么對應的圓C3轉動3.45圈。

設圓 C1運動速度為 V1(r/min),圓 C2運動速度 V2(r/min),圓 C3對應的速度為 V3(r/min),則:

由式(10)和(11)可得:

可見,雙輪小車運動速度為球殼運動速度的3.54倍。
由上述速度分析可知,通過控制雙輪小車速度就可以調節球形機器人的運行速度。這里球形機器人速度控制主要實現勻速、加速和減速。閉環控制的主要環節包括測量、比較和執行。測量的關鍵是準確測出被控變量的實際值;比較是被控變量的實際值與期望值相比較得到偏差;執行是利用這個偏差調節控制對象,使其運動狀態接近希望狀態。這里采用工程實際中應用最為廣泛的增量式PID控制算法為[4]:

式中:Kp—比例增益;Ki=KpT/Ti—積分增益;Kd=KpTd/T—微分增益;e(k)—第k次采樣時刻控制器的輸入值;u(k)—第 k 次采樣時刻控制器的輸出值;△u(k)—第k次采樣時刻控制增量值。
從式(13)可見,控制增量△u(k)僅與最近 3次的采樣值有關,所以增量式PID算法對控制量的計算影響較小,精度較高。
當球形機器人運動時,球體自身姿態隨之改變。陀螺儀裝置測出球體姿態偏角作為測量值,與最近3次的采樣值進行比較,得出的值代入式(13)中經計算機加權處理獲得姿態偏角的變化量輸出,此變化量控制球形機器人運動方向。
雙閉環PID控制,即球體姿態偏角和轉速雙負反饋控制。負反饋的兩個調節器都采用上述增量式PID控制器,實時調節機器人偏角和速度,達到較好的穩定控制效果。
球形機器人的雙閉環PID控制系統框圖如圖4所示,給定雙輪小車轉速信號與轉速反饋信號比較后送給速度控制器PID1,經過PWM1控制電機轉速,構成速度控制環。陀螺儀測得球體姿態偏角變化量送給角度控制器PID2控制球形機器人運動方向,是角度負反饋。從而構成球形機器人的雙閉環PID控制系統。

圖4 球形機器人雙閉環PID系統框圖Fig.4 Block diagram of double closed loop PID system for spherical robot
在Matlab環境下Simulink中搭建球形機器人雙閉環PID控制系統仿真結構圖如圖5所示。
圖5中在輸入Step階躍給定信號后,Scope示波器中顯示輸出結果波形如圖6所示,雙輪小車大約在0.6s后達到穩定轉速100r/min;此時小車內環的偏角也達到了穩定狀態,球形機器人能夠穩定運行。可見,雙閉環PID控制系統能夠有效地控制球形機器人的運動。

圖5 球形機器人雙閉環PID控制系統仿真結構圖Fig.5 Simulation structure of double closed loop PID control system for spherical robot

圖6 球形機器人轉速和偏角仿真曲線Fig.6 Simulation curve of rotational speed and angle of spherical robot
本文設計了一種基于自平衡雙輪小車的球形機器人結構,基于球形機器人的運動狀態,分析了其運動速度特征,設計了雙閉環PID控制策略,解決了球形機器人的運動速度控制問題。使用仿真工具Simulink對系統進行了仿真分析,結果表明數字PID控制方法能夠有效地對球形機器人進行控制。在此基礎上,研制了試驗樣機,相應的實測試驗也驗證了方案的可行性。