李靜,劉朝福
(桂林電子科技大學信息科技學院,廣西桂林541004)
機器人比賽路線日趨復雜,不僅只限于直線、轉(zhuǎn)彎,而且增加了上坡、下坡等難度。賽道的復雜性涉及到機器人驅(qū)動電機要根據(jù)不同路況實時進行多種狀態(tài)轉(zhuǎn)換,并且要保證機器人速度。這是機器人比賽在賽道上行進時的重點和難點。2009年亞廣聯(lián)機器人大賽賽道具有較強的典型性,包含上坡、下坡、直行、轉(zhuǎn)彎等多種路段,以此賽道為例,基于路程檢測研究機器人運動控制,保證機器人在不同路況下快速、平穩(wěn)地行進完整個賽道,這對機器人比賽來說具有重要意義。比賽賽道運動路線示意圖如圖1 所示。

圖1 運動路線示意圖
將機器人的整個運動軌跡分為數(shù)段,每一段由于路段不同,所以機器人的運動狀態(tài)也不同,如上下坡和多次轉(zhuǎn)彎,這將涉及到電機的多次狀態(tài)轉(zhuǎn)換,因此必須通過路程檢測系統(tǒng)來算出機器人所走的位移,確定機器人當前的位置,以保證準確控制機器人的運動狀態(tài)。
光電路程檢測系統(tǒng)原理簡單,是一種常用的路程檢測方法[1]。該方法檢測機器人在賽道中某段的位移,通過該位移決定機器人下一時刻的運動狀態(tài)。選用直流伺服電機自帶的增量式光電編碼器,它是一款高精度角位移傳感器[2],與移動機器人的驅(qū)動車輪同軸安裝,該軸的正反轉(zhuǎn)代表了移動機器人前進和后退兩種相反的運動方向。識別光電編碼器主軸的轉(zhuǎn)向是實現(xiàn)移動機器人運動控制的必須要求[3]。主軸每旋轉(zhuǎn)一周分兩路輸出500 個電壓脈沖信號Out_A 和Out_B,其中,Out_A 和Out_B 兩路信號相位差為90°,可通過Out_A 和Out_B 的相位關(guān)系,判斷主軸的轉(zhuǎn)動方向。通過對光電編碼器所輸出的相位差90°的兩路電壓脈沖信號Out_A 和Out_B 進行鑒相,就能夠判別轉(zhuǎn)盤正轉(zhuǎn)或反轉(zhuǎn)。圖2 示意了光電編碼器正轉(zhuǎn)時,Out_A、Out_B 的信號波形和鑒相電路的輸出。

圖2 光碼盤輸出波形
正轉(zhuǎn)時,Out_B 信號的相位超前Out_A 信號90°。反轉(zhuǎn)時,Out_B 信號的相位延后Out_A 信號90°。
通過確定機器人當前的位置來決定機器人運動電機的狀態(tài),因此機器人當前位置確定非常重要,它是精確控制機器人調(diào)整速度及平衡的決定因素[4]。通過人工推斷機器人測量每段路程的脈沖數(shù),在機器人運動過程中通過光碼盤產(chǎn)生的脈沖數(shù)來確定機器人的位置。光碼盤轉(zhuǎn)動一周產(chǎn)生200 個脈沖,經(jīng)過二倍頻之后變?yōu)?00 個,通過控制上升電機的單片機接收光碼盤的脈沖數(shù),對其計數(shù),并通過該脈沖數(shù)判斷機器人當前的位置。路程檢測電路原理圖如圖3 所示。

圖3 路程檢測電路原理圖
采用直流伺服電機作為機器人動力。當機器人從直線換到上坡或從上坡到下坡或到轉(zhuǎn)彎時,即從一個速度調(diào)整到另一速度時,建立直流伺服電機的數(shù)學模型可以保證機器人快速響應(yīng),使速度調(diào)整時間最短而且穩(wěn)定,從而保證機器人速度。
建立模型,進行自動控制系統(tǒng)的分析和設(shè)計時,通常對微分方程進行拉普拉斯變換,從而得出各環(huán)節(jié)零初始條件下輸出與輸入的比值即傳遞函數(shù)。對于直流伺服電機而言,其輸入量是電樞電壓,輸出量一般是轉(zhuǎn)速[5-6]。根據(jù)調(diào)節(jié)特性可知,電機微分方程可以寫成下式:

對其進行拉普拉斯變換得:

由此可得直流伺服電動機的傳遞函數(shù)為:

顯然,這是一個二階環(huán)節(jié),對應(yīng)二階微分方程。如果忽略電磁時間常數(shù),就可以得到簡化的傳遞函數(shù)表達式:

這就是常用的直流伺服電動機的傳遞函數(shù)表達式,各式意義如下:n 為轉(zhuǎn)速;Ua為電壓;ku為電壓時間系數(shù);Tj為機電時間常數(shù);Td為電磁時間常數(shù)。
在控制系統(tǒng)中最常用的控制規(guī)律是PID 控制,它是一種線性控制器,根據(jù)給定與實際值構(gòu)成控制偏差,將偏差的比例、積分和微分通過線性組合構(gòu)成控制器[7]。在設(shè)計中,PID 算法主要用于控制機器人的直線行走,即當機器人偏離路徑的中心白線時,采用位置式PID 算法,它會根據(jù)偏移量自動調(diào)整機器人的運動狀態(tài),使機器人靠近路徑中心白線[8]。PID 調(diào)節(jié)參數(shù)由模糊自整定控制器根據(jù)偏差e 和偏差變化率ec進行自動調(diào)整,同時把模糊自整定控制器的模糊部分按Kp、Ki、Kd分成三部分,分別由相應(yīng)的子推理器來實現(xiàn)。模糊PID 控制流程如圖4 所示。

圖4 模糊PID 控制流程圖
經(jīng)過PID 算法調(diào)整后機器人的運動軌跡如圖5所示。

圖5 PID 算法改進機器人運動軌跡示意圖
機器人在其運動軌跡的A 段采用串口位置方式控制電機。因此,在該段不需要用光碼盤進行路程檢測,直至點B 以后,才開始用光碼盤進行路程檢測。在下坡段,光碼盤產(chǎn)生的脈沖以不間斷源的形式傳遞給CPU,來一次脈沖CPU 產(chǎn)生一次中斷,這樣可以防止脈沖的丟失,保證上升電機的精確控制。在剩余的其他路段,光碼盤產(chǎn)生的脈沖被CPU 計數(shù)器計數(shù),當計數(shù)值為某路段的路程時,重新初始化計數(shù)器準備下一段路程的計數(shù),直至到達終點。
當差動輪式移動機器人左右驅(qū)動輪的伺服控制電路參數(shù)和直流電機型號參數(shù)相同時,若給定電機的控制量大小相等且方向相同時,移動機器人的運動軌跡應(yīng)為直線。機器人在A 段時,機器人的移動電機采用串口位置控制方式控制。該段機器人不需轉(zhuǎn)彎,因此機器人左右輪電機驅(qū)動器通過max232 連接在機器人CPU 的串口上,機器人理論上始終保持走直線。機器人啟動前,CPU 完成機器人運動電機控制方式及參數(shù)的設(shè)置,具體設(shè)置如下:
(1)絕對位置0,即當前位置為絕對位置;
(2)相對位置145 000,即電機正向運動145 000個單位(4 000 個單位電機轉(zhuǎn)一周);
(3)電機在該段最大轉(zhuǎn)速為1 000 r/s;
(4)最大加速度為50 r/s2;
若機器人后輪直徑為10 cm,減速器減速比為4.2∶ 1,故該段機器人的位移:

若該段內(nèi),機器人持續(xù)以最大加速度加減速,則機器人在該段加減速時間相等,故電機轉(zhuǎn)速可做如下計算:
機器人加速時間

因此機器人全程運動時間為T=2t≈4.626 s
該過程電機的實際最大轉(zhuǎn)速為vmax= at =50 ×2.323≈116 r/s
當機器人到達A 段末點時,電機控制方式轉(zhuǎn)變?yōu)镻WM 控制,上位機根據(jù)視頻系統(tǒng)采集到的位置偏移處理成為機器人轉(zhuǎn)動量,并將機器人自動調(diào)整到道路中央。
從B 段起點開始,機器人運動電機采用PWM 速度控制方式,同時用光碼盤來檢測機器人位移,方便控制機器人狀態(tài)轉(zhuǎn)換的時間。在PWM 控制方式下,能方便的控制機器人前進的速度,若在比賽過程中,還可根據(jù)賽況對機器人的速度做出適當調(diào)節(jié)。在后面的運動中,機器人的基本參數(shù)設(shè)置如下:
(1)電機最大轉(zhuǎn)速5 000 r/s
(2)電機最大加速度50 r/s2
(3)電機直行時PWM 占空比為39.06%
(4)電機轉(zhuǎn)彎時PWM 占空比分別為39.06%、44.92%
故有機器人直行時,最大速度可做如下計算:

其中:V 為電機轉(zhuǎn)速;
v'為機器人移動速度;
φ 為PWM 占空比;
d 為機器人輪子外徑;
r 為減速器減速比。
機器人轉(zhuǎn)彎時,各數(shù)據(jù)量計算如下:
內(nèi)側(cè)電機轉(zhuǎn)速

內(nèi)側(cè)輪運動的速度

同理可得,外側(cè)電機轉(zhuǎn)速V2=-1 094 r/s,外側(cè)輪運動速度v2=81.9 m/s。
機器人轉(zhuǎn)彎運動軌跡如圖6 所示。

圖6 機器人轉(zhuǎn)彎運動軌跡示意圖
機器人轉(zhuǎn)彎時,內(nèi)外側(cè)半徑可做如下計算:

其中:l=48 cm 故有

以上參數(shù)和計算出的數(shù)據(jù)為機器人直行和轉(zhuǎn)彎等軌跡控制提供重要的理論依據(jù),而且可以根據(jù)不同賽道對機器人速度做出實時調(diào)節(jié),增強機器人在賽場上的適應(yīng)性。
通過在實驗室場地采用上述方法調(diào)試機器人,從起點到點A 用串口控制方式控制可以保證機器人準確到達點B 停下。然后從點B 出發(fā)時,根據(jù)計算結(jié)果控制電機轉(zhuǎn)速,機器人可以快速、穩(wěn)定地完成上坡、下坡、轉(zhuǎn)彎等路段。文中提出的基于路程檢測的機器人運動控制方法具有較強的可行性,實現(xiàn)較為容易,為機器人適應(yīng)復雜賽道提供一定的參考意義。
[1]劉玉鵬,海丹,鄭志強.基于測程法的四輪全向移動機器人自定位方法研究[C]//2005 中國機器人大賽論文集,2005:17-23.
[2]高國富,謝少榮,羅均.機器人傳感器及其應(yīng)用[M].北京:化學工業(yè)出版社,2005.
[3]姜義.光電編碼器的原理與應(yīng)用[J].機床電器,2010,37(2):25-28.
[4]李磊,葉濤,譚民,等.移動機器人技術(shù)研究現(xiàn)狀與未來[J].機器人,2002(5):475-480.
[5]TEHRANI Alireza Fadaei,ALI MOHAMMAD Doosthosseini,MOBALLEGH Hamid Reza,et al.A New Odometry System to Reduce Asymmetric Errors for Omnidirectional Mobile Robots[J].RoboCup,2004,3020:600-610.
[6]ROJAS Raul.Omnidirectional Control[R],F(xiàn)reie University Berlin,2005.
[7]陶永華.新型PID 控制及其應(yīng)用[M].2 版.北京:機械工業(yè)出版社,2003.
[8]馮桂寧,蔡翔俊.單片機模糊PID 自整定控制算法的實現(xiàn)及仿真[J].電子元器件應(yīng)用,2007,5(9):59-62.