孫濤,師五喜
天津工業大學 電氣工程與自動化學院,天津 300387
加入臨時路徑的移動機器人路徑跟蹤模糊控制
孫濤,師五喜
天津工業大學 電氣工程與自動化學院,天津 300387
近年來,許多學者對非完整移動機器人系統的跟蹤控制問題進行了大量研究[1-6],根據參考軌跡是否為時間的函數,跟蹤控制分為軌跡跟蹤和路徑跟蹤。對于軌跡跟蹤問題,文獻[1-4]基于運動學模型分別提出了反步法、神經網絡方法、模糊神經網絡方法和輸入輸出線性化方法。對于路徑跟蹤問題,文獻[5]研究了機器人質心恰好位于輪軸幾何中心時的路徑跟蹤問題;文獻[6]研究了機器人質心不在輪軸幾何中心,但位于兩驅動輪中軸線上時機器人的幾何路徑跟蹤問題。眾所周知,所設計的機器人最終是要有負載的,而負載的位置將直接影響整個機器人系統的質心位置,通常情況下質心位置是任意的,且其準確位置不好確定。因此文獻[5-6]假設機器人質心位于輪軸幾何中心或兩驅動輪的中軸線上,對有負載的機器人系統是不合適的。由于質心位置不好確定,所以移動機器人系統是一類典型的不確定、非線性系統。
近年來,將神經網絡與PID[7-8]、模糊邏輯系統與PID[9-11]相結合用以實現路徑跟蹤的控制方法層出不窮,這類方法既發揮了智能控制的靈活適應性,又利用了PID控制精度高以及控制平滑的優點,兩者相得益彰,效果良好。Das等人設計的模糊控制器進一步包含了驅動器模型[12],使其可在實際中應用。鄒細勇等設計了一種分階段模糊控制器[13],在路徑跟蹤的不同階段,采取不同的比例因子。高健等針對偏差處于不同區域(小、中、大)分別設計控制器[10],將角度偏差范圍分為小(0°~5°)、中(5°~25°)、大(25°以上)三個區域,因為在每個采樣周期,1°的變化對小、中、大偏差情況有不同的影響,因此對于不同偏差范圍,設計了各自的模糊控制器。該方法在不同區域設計了不同的模糊控制器,使得實時計算量偏大。
為克服以上方案的不足,本文在研究質心位置不確定的移動機器人系統幾何路徑跟蹤問題時,引入臨時路徑,使機器人先從初始位置出發沿臨時路徑行進,當移動到期望路徑附近時,再讓機器人跟蹤期望路徑。由于機器人初始位置就在臨時路徑上,且只有當移動到期望路徑附近時才跟蹤期望路徑,所以只需要針對小偏差情況設計一個模糊控制器即可,并引進積分環節以消除穩態誤差。本文方法的特點是不管初始位置在何處,都可以設計出一個臨時路徑讓機器人趨近期望路徑,在小偏差范圍內設計一個模糊控制器完成期望路徑的跟蹤。
本文所研究的兩輪差速移動機器人在直角坐標系Ox1x2中的模型,如圖1所示。

圖1 兩輪差速移動機器人模型
該機器人前兩輪為同軸獨立驅動輪,輪間距為d,依靠兩輪的驅動力使機器人移動,利用兩輪旋轉的速度差實現機器人的轉向。后輪是無動力從動輪,對機器人底盤未加運動學約束,僅起到輔助支撐作用。P為兩輪軸線中點,u1是P點前進速度,即機器人線速度,x3表示移動機器人相對軸x1的轉角,u2=為機器人角速度,u1和u2為控制量。該坐標系中任一點以(x1,x2,x3)表示其位置和姿態。C為機器人質心,由于負載等因素的影響,一般地,質心C與P不重合,設L為點C與點P的距離,當質心位于兩輪軸的前半部時,L為正,否則為負。圖1中所示L為負。γ表示機器人質心C偏離中軸線的角度,假設γ∈(-π/2,π/2)。

設點C的坐標(x1,x2,x3),由幾何關系得質心C與P的位置關系為:

對上式求導并將式(1)代入,得移動機器人以質心C為參考點的運動學模型為:

根據路徑跟蹤問題的提法[5],本文的控制目標為:針對運動學模型為式(3)的移動機器人,給定光滑幾何路徑f(x1,x2)=0,當參數L與γ未知時,在控制量u1和u2的作用下,使其沿該給定路徑運動,即對于一個任意給定的小正數δ,存在時刻t1>0,當t>t1時,跟蹤誤差z=f(x1,x2)<δ。
為實現以上目標,本文引入臨時路經,使從給定初始點出發的機器人,先延臨時路徑行進,當移動到期望路徑附近時,再跟蹤期望路徑。整個跟蹤過程僅需一個模糊控制器。
本文臨時路徑的設計思路如下,為研究問題方便,文中只對期望路徑為直線和圓的情況進行了研究。
若期望路徑為直線,如圖2,P(x10,x20)為初始位置,期望路徑為直線f(x1,x2)=kx1-x2+b=0,臨時路徑設計為以Ot(x1t,x2t)為圓心,半徑為Rt的圓。

圖2 期望路徑為直線的臨時路徑設計
P點到期望直線距離的一半為臨時圓的半徑,即

臨時圓圓心Ot位于垂直于跟蹤直線且過P點的直線上,該直線方程為:

另外,圓心到直線距離為Rt,通過以下聯立方程:

可解得臨時圓圓心。
若期望路徑為圓且初始點在圓外,如圖3,P(x10,x20)為初始位置,期望路徑為圓f(x1,x2)=(x1-x1r)2+(x2-x2r)2-R2=0,臨時路徑設計為過P點的圓的切線ktx1-x2+bt=0。

圖3 期望路徑為圓且初始點在圓外的臨時路徑設計
期望圓圓心到該切線距離等于半徑且切線過P點,通過以下聯立方程:

可解得切線方程。
若期望路徑為圓且初始點在圓內,如圖4,P(x10,x20)為初始位置,期望路徑為圓f(x1,x2)=(x1-x1r)2+(x2-x2r)2-R2=0,臨時路徑設計為以Ot(x1t,x2t)為圓心、半徑為Rt的圓。

圖4 期望路徑為圓且初始點在圓內的臨時路徑設計
臨時圓的半徑等于期望圓的半徑減去OP兩點距離的一半,即

臨時圓圓心Ot在OP兩點確定的直線上,該直線方程為:

解得臨時圓圓心。
當設計完臨時路徑后,在小偏差范圍內就可以設計模糊控制器了。
模糊控制器采用常見的控制器,以跟蹤誤差z和誤差變化率z˙為輸入,以機器人角速度u2(控制器中以u表示)為輸出。這種雙輸入單輸出結構的模糊控制器具有非線性PD控制規律,利于保證系統的穩定性,減少超調,削弱振蕩現象,動態性能好;線速度u1設為一常值。
通常在實施模糊控制時,由于論域劃分的有限性,控制效果不夠精細,存在一定的穩態誤差。雖然通過論域細分,可以在一定程度上減小穩態誤差,但無法消除,且增加了控制器設計的復雜性。本文引入積分環節,可在不增加控制規則的基礎上,有效提高控制精度。本文方案中的模糊控制相當于粗調,積分環節相當于細調,兩者結合,既保留了模糊控制良好的動態特性,又利用了積分環節的特點消除系統的穩態誤差,控制器設計簡單有效,其結構圖如圖5。

圖5 模糊控制系統結構圖
對模糊控制器的兩輸入變量各定義7個模糊集合:NB、NM、NS、ZO、PS、PM、PB,對輸出變量定義7個模糊集合:LB、LM、LS、ZO、RS、RM、RB,論域皆設為[-3,3]。
模糊控制實踐表明,隸屬函數曲線的具體形狀,取為三角形、梯形還是正態分布形,對控制器性能影響不大,而各模糊子集隸屬函數對論域的覆蓋面積以及控制器特性有一定影響。面積越小,分辨率則越高,引起的輸出變化大,控制靈敏度高,反之靈敏度低。當偏差較大時采用低分辨率隸屬函數,輸出平穩,當偏差較小或接近零時采用高分辨率函數,對誤差及時反應。
本文設計的控制器基于小誤差情況,因此采用全交迭三角形隸屬度函數,如圖6和圖7所示。采用此類隸屬度函數,分辨率高,可以對誤差快速反應,且能有效降低計算量,增加系統魯棒性。

圖6 輸入變量隸屬度函數

圖7 輸出變量隸屬度函數
根據人工駕駛經驗獲得模糊控制規則,如表1所示。

表1 模糊控制規則

圖8 跟蹤直線情況
對于式(3)的機器人運動學模型,取重心參數L=-0.3 m, γ=π/6,線速度u1=0.3 m/s,采樣周期0.01 s,使用Matlab進行仿真。
期望路徑為直線x2=0即x1軸,機器人初始點(0,-4,5π/6),臨時路徑設計為圓x12+(x2+2)2-4=0。輸出量為角速度,論域為[-3,3],而實際角速度不可能過大,因此比例因子設為1/6,即將輸出量限制在[-0.5,0.5]之間,符合實際情況,并引入積分環節消除靜差。跟蹤結果如圖8所示。

圖10 初始點在圓內時跟蹤圓情況

圖9 初始點在圓外時跟蹤圓情況
從跟蹤過程可以看出,機器人從初始位置出發,先跟蹤設計的臨時路徑,當移動到期望路徑附近時,跟蹤路徑切換到期望路徑,完成整個跟蹤,其中的路徑切換平穩迅速,在跟蹤過程中引入了積分環節,消除了穩態誤差,且無振蕩現象,效果良好,驗證了該方法的有效性。
6.1 實驗條件
本文以上海英集斯自動化技術有限公司的智能機器人MT-AR為平臺進行實驗。該機器人為輪式結構,前兩輪為同軸驅動輪,后側配一萬向輪起平衡支撐作用,其模型與文中研究的機器人模型一致。圖11為機器人系統及實驗場地。

圖11 實驗用機器人及實驗場地
該機器人由上位機、驅動系統和電機三部分組成。
上位機為工業級計算機,實現人機交互,通過串口與下位機通訊,發送命令和反饋信息。
驅動系統核心采用TI公司的DSP芯片TMS320LF2407,作為一種專門針對控制領域而開發的高性能16位定點DSP芯片,具有功耗低,響應快,集成度高的特點,尤其在電機控制方面優勢明顯。
實驗過程中,通過程序控制DSP輸出兩路PWM信號分別控制左右電機,信號經6N137高速光耦,與之后的模擬驅動電路隔離。驅動電路采用IR2110加單極性H橋電路的結構,IR2110開關速度快,輸入及輸出電壓幾乎無相位滯后,且功耗較低。單極性H橋電路實現電機正反轉,需正確配置死區定時器以防止H橋電路擊穿。兩電機各裝一只500線增量式光電編碼器,正交編碼脈沖單元可對其輸出的脈沖信號進行鑒相和四倍頻,實時反饋電機轉速,以便進行下一步控制。
電機為兩只空心杯轉子直流電機,加速平穩,電磁干擾小,效率高。減速箱為二級減速,減速比33∶1。
6.2 實驗方案
首先根據模糊規則建立7行7列的模糊控制表,存于DSP內存中,如表2所示。

表2 模糊控制表
針對兩輪差速驅動機器人有:

其中,u1表示機器人的線速度,這里設為常值0.3 m/s;u2表示機器人的角速度即模糊控制的輸出u;vr表示機器人右輪速度;vl表示機器人左輪速度;d表示兩輪間距,實驗值為401 mm。
機器人坐標按下式計算:

其中,x1,i、x2,i和x3,i分別是移動機器人在ti時刻的橫坐標、縱坐標和其與x軸正向夾角,x1,i+1、x2,i+1和x3,i+1分別是移動機器人在ti+1時刻的橫坐標、縱坐標和其與x軸正向夾角。
程序設計中首先對系統初始化,其中EVA和EVB的初始化是關鍵,包括設置EVA的T1定時器用于產生中斷,中斷時間0.1 s,T2定時器用于左電機編碼器計數,EVB的T3定時器產生兩路PWM控制左右電機,T4定時器用于右電機編碼器計數。為實現路徑跟蹤,每次中斷時由編碼器返回兩輪轉速,按式(8)計算機器人當前位置,計算誤差和誤差變化率,經模糊化轉化為模糊量,按該模糊量查詢規則表,獲得模糊輸出量,再乘以比例因子,最終得到調整后的角速度;由式(7)計算相應的vr和vl,據此改變比較寄存器的值,用調整后的PWM控制電機,最終實現路徑跟蹤。
6.3 實驗結果
實驗參數同仿真以觀察跟蹤效果。取重心參數L=-0.3 m,γ=π/6,線速度u1=0.3 m/s,中斷周期0.1 s,所得實驗數據導入Matlab畫圖,同仿真進行對比。
期望路徑為直線x2=0即x1軸,初始點為(0,-4,5π/6)時,臨時路徑設計為圓+(x2+2)2-4=0。跟蹤結果如圖12所示。

圖12 跟蹤直線實驗情況

圖13 初始點在圓外時跟蹤圓實驗情況
由實驗結果看出,整體運行效果與仿真結果基本一致,跟蹤路徑切換平穩。實驗結果令人滿意,驗證了本文算法的有效性。

圖14 初始點在圓內時跟蹤圓實驗情況
對于移動機器人路徑跟蹤問題,在建模時一般都假定其重心在某一位置,而實際上重心位置跟其結構有關,是不確定的,在機器人負載后還會變化,因此本文針對重心位置任意的機器人建立模型,采用模糊控制方法實現路徑跟蹤控制,并加入積分環節以消除靜差。在模糊控制器設計中,需要針對機器人位置或角度誤差范圍設計多個控制器,方法過于復雜且計算量偏大,本文引入臨時路徑思想,設計一個模糊控制器即可完成任意初始位置的路徑跟蹤。針對直線與圓的仿真和實驗結果表明,本文方法簡單有效,跟蹤效果良好。當期望路徑為其他光滑曲線方程時,通常設計臨時路徑為過初始點且與該期望路徑相切的直線或圓弧,通過平面解析幾何知識中的曲線位置關系,結合已知條件解得臨時路徑方程。
[1]Kanayama Y,Kimura Y,Miyazaki F,et al.A stable tracking controlmethodforanautonomousmobilerobot[C]//ProceedingsofIEEEInternationalConferenceonRobotics and Automation,Cincinnati,OH,USA,1990:384-389.
[2]Yuan G,Yang S X,Mittal G S.Tracking control of a mobile robot using a neural dynamics based approach[C]//Proceedings of IEEE International Conference on Robotics and Automation,Seoul,South Korea,2001:163-168.
[3]Hu Y,Yang S X.A fuzzy neural dynamics based tracking controller for a nonholonomic mobile robot[C]//Proceedings of IEEE/ASME International Conference on Advanced Intelligent Mechatronics,Kobe,Japan,2003:205-210.
[4]Kim D H,Oh J H.Tracking control of a two-wheeled mobile robot using input-output linearization[J].Control Engineering Practice,1999,7(3):369-373.
[5]馬保離,霍偉.移動機器人的路徑跟蹤問題[J].機器人,1995,17(6):359-362.
[6]孫多青,霍偉,楊梟.含模型不確定性移動機器人路徑跟蹤的分層模糊控制[J].控制理論與應用,2004,21(4):489-500.
[7]Fierro R,Lewis F L.Control of a nonholonomic mobile robot using neural networks[J].IEEE Transactions on Neural Networks,1998,9(4):589-600.
[8]Ge S Z,Wang C.Direct adaptive NN control of a class of nonlinear systems[J].IEEE Transactions on Neural Networks,2002,13(1):214-221.
[9]李嘯,張洪鉞,李驥.基于模糊PID的輪式移動機器人軌跡控制[J].機器人技術與應用,2002(5):30-33.
[10]高健,黃心漢,彭剛,等.基于Fuzzy-PID的移動機器人運動控制[J].控制工程,2004,11(6):525-528.
[11]徐建安,鄧云偉,張銘鈞.移動機器人模糊PID運動控制技術研究[J].哈爾濱工程大學學報,2006,27(B07):115-119.
[12]Das T,Kar I N.Design and implementation of an adaptive fuzzy logic-based controller for wheeled mobile robots[J]. IEEE Transactions on Control Systems Technology,2006,14(3):501-510.
[13]鄒細勇,徐德,李子印.非完整移動機器人路徑跟蹤的模糊控制[J].控制與決策,2008,23(6):655-659.
SUN Tao,SHI Wuxi
School of Electrical Engineering and Automation,Tianjin Polytechnic University,Tianjin 300387,China
A fuzzy control scheme of path tracking for mobile robots with uncertainty is presented.A temporary path is designed for the path tracking,which makes the robot move along the designed temporary path first,when it is near the desired path,the robot will go along it then.The whole tracking process is controlled by one fuzzy controller,which reduces the computation burden, and an integration term is added into the controller to eliminate the steady-state error.The performance of proposed approach is demonstrated through simulation and experiment examples.
temporary path;tracking control;fuzzy control
對含不確定性的移動機器人系統設計了路徑跟蹤模糊控制方法。該方法引入臨時路徑,使機器人先從初始位置出發沿臨時路徑行進,當移動到期望路徑附近時,再讓機器人跟蹤期望路徑。整個控制過程只需要一個模糊控制器,極大地減少了工作量,并引進積分環節以消除穩態誤差。仿真和實驗結果驗證了該方法的有效性。
臨時路徑;跟蹤控制;模糊控制
A
TP242.6
10.3778/j.issn.1002-8331.1110-0605
SUN Tao,SHI Wuxi.Fuzzy control for path tracking of mobile robots with temporary path.Computer Engineering and Applications,2013,49(13):228-233.
天津市自然科學基金(No.10JCYBJC07400)。
孫濤(1986—),男,碩士研究生,主要研究領域為移動機器人智能控制;師五喜(1964—),男,博士,教授,主要研究領域為智能控制。E-mail:suntao30920@163.com
2011-11-02
2012-01-30
1002-8331(2013)13-0228-06
CNKI出版日期:2012-03-21http://www.cnki.net/kcms/detail/11.2127.TP.20120321.1738.051.html