高兆申
泰山科技學(xué)院 山東 泰安 271000
差分驅(qū)動的機器人具有結(jié)構(gòu)簡單、運動能量消耗少的特點,在很多場合獲得了廣泛的應(yīng)用。例如,在抗震救災(zāi)中,可以利用這種機器人投送救援物資[1];在野外探測中,可以利用這種機器人搭載多功能相機獲得所需要的圖像[2]。但是,在機器人的運動控制中,由于欠驅(qū)動性質(zhì)的存在,導(dǎo)致控制律設(shè)計困難。本文利用嵌入式系統(tǒng)的自主控制和即時通訊優(yōu)勢,設(shè)計了一種基于智能算法優(yōu)化的運動控制律,從而使機器人按照預(yù)定的軌跡運動。這種控制方法增加了機器人執(zhí)行多種任務(wù)的能力,有利于推動這種機器人獲得更廣泛的應(yīng)用。
機器人采用“雙輪差分驅(qū)動+單輪自由支撐”的結(jié)構(gòu)實現(xiàn)平面內(nèi)的運動。兩個后采用同一連桿連接,利用差分驅(qū)動的方式為機器人的運動提供動力。其中,前進的動力由兩個車輪的一致運動提供,轉(zhuǎn)向的動力由兩個車輪的差速運動提供。前輪發(fā)揮對車體的支撐作用,并不提供動力[3]。機器人的機械結(jié)構(gòu)如圖1所示。

圖1 差分運動機器人機械結(jié)構(gòu)
在圖1所示的坐標系XOY中,機器人以前向速度v、角速度w運動。其中,v來自于兩個后輪的協(xié)同運動,w來自于兩個后輪的差分運動。定義機器人的運動軌跡為(x,y,θ),其中(x,y)表示其在平面內(nèi)的坐標位置,θ表示轉(zhuǎn)向角。運動軌跡與運動速度之間的關(guān)系,可以表示為[4]:
在公式(1)中,機器人的運動模型顯然是一個欠驅(qū)動系統(tǒng)。也就是說,通過對速度變量v和w施加控制力,很難完全控制住x,y和θ三個狀態(tài)變量。這個運動控制律的設(shè)計帶來了難度。很多文獻指出,對欠驅(qū)動系統(tǒng)實施運動控制,可以選擇其中的部分狀態(tài)變量作為被控制量、選擇剩余的狀態(tài)變量為被跟隨量,通過與控制變量之間聯(lián)立等價的對應(yīng)關(guān)系,從而完成控制律的綜合設(shè)計。
在圖1所示的機械結(jié)構(gòu)基礎(chǔ)上,增加智能載荷構(gòu)建完整的機器人系統(tǒng)。機器人的兩個后輪由電機分系統(tǒng)提供驅(qū)動控制信號。電機分系統(tǒng)由轉(zhuǎn)子、定子、霍爾元件以及信號磁環(huán)等組成。其中,轉(zhuǎn)子在定子內(nèi)部通過電磁感應(yīng)運動,從而產(chǎn)生穩(wěn)定的直流電。霍爾元件和信號磁環(huán)完成直流電的換相,實現(xiàn)輸出功率的穩(wěn)定調(diào)節(jié)。同時,利用信號磁環(huán)可以將電流的相位信號與機器人的位置信號實現(xiàn)關(guān)聯(lián)。在電機分系統(tǒng)的基礎(chǔ)上,設(shè)置位置監(jiān)測傳感器,通過實時觀測機器人的運動狀態(tài)調(diào)整電機分系統(tǒng)的輸出功率,從而完成機器人的運動控制。此外,設(shè)計PLC控制器,用于對機器人的運動信號進行控制[5]。
完整的機器人系統(tǒng),拓撲結(jié)構(gòu)如圖2所示。

圖2 機器人系統(tǒng)拓撲結(jié)構(gòu)
在圖2所示的機器人系統(tǒng)拓撲結(jié)構(gòu)中,PLC控制器采用嵌入式方案設(shè)計。在PLC內(nèi)部,設(shè)計ARM模塊,將運動控制律燒錄其中;利用機械傳動裝置將ARM模塊的輸出信號轉(zhuǎn)換為控制機器人后輪的力矩信號,驅(qū)動機器人進行差分運動。同時,分別利用位置和速度傳感器對機器人的實時運動狀態(tài)進行采集,將運動狀態(tài)信息與參考軌跡信息進行實時對比。此外,PLC控制器中集成了通訊模塊,用于與外界實時傳輸信號,便于對機器人的運動狀態(tài)進行監(jiān)測。PLC控制器的內(nèi)部結(jié)構(gòu)如圖3所示。

圖3 PLC控制器內(nèi)部結(jié)構(gòu)
機器人的運動控制律被燒錄在PLC控制器內(nèi)部,通過產(chǎn)生驅(qū)動信號控制速度變量v和w,進而驅(qū)動運動軌跡(x,y,θ)按照預(yù)期變化。在實際場景中,假設(shè)機器人預(yù)期的運動軌跡,也被稱為參考軌跡,如下所示:
式中,vr和wr分別表示參考前向速度和角速度,(xr,yr,θr)表示參考軌跡,也就是期望的機器人的運動狀態(tài)。
將公式(1)減去公式(2),并將計算結(jié)果轉(zhuǎn)變成PLC控制器可以測量的量,結(jié)果如下:
式中,(xe,ye,θe)表示運動軌跡的跟蹤誤差。
為了消除軌跡跟蹤誤差,也就是使公式(3)中的(xe,ye,θe)同時收斂到0狀態(tài),可以設(shè)計如下所示的控制律:
式中,k1,k2,k3是大于0的整數(shù),代表待調(diào)整的控制器增益。利用公式(4)中的控制律,可以實現(xiàn)機器人按照預(yù)定軌跡運動的控制。
對控制律(4)采用粒子群算法進行優(yōu)化。粒子群算法是一種性能穩(wěn)定的智能算法,具有較快的收斂速度。在機器人的運動控制中,基于粒子群算法可以對控制律(4)中的待調(diào)整增益k1,k2,k3進行優(yōu)化計算。
具體計算思路如下:假設(shè)k1,k2,k3在整個實數(shù)域內(nèi)的可能的取值被每一個粒子的位置所代表。這些粒子按照一定的速度運動,在運動過程中位置隨時變化,表示k1,k2,k3的取值隨之變化。選擇軌跡跟蹤誤差(xe,ye,θe)的平方和作為參考指標,當(dāng)參考指標的取值最小時,粒子所在的位置即是k1,k2,k3的最優(yōu)解。經(jīng)過反復(fù)迭代運算,最終發(fā)現(xiàn),在k1=k2=k3=3時,跟蹤誤差(xe,ye,θe)的平方和取得最小,約等于0。因此,可以斷定,k1,k2,k3的最優(yōu)解為3。
為了驗證公式(4)中的運動控制律的控制效果,選擇如下所示的圓形參考軌跡進行仿真驗證。其中,圓形軌跡的半徑為1米,機器人的初始位置為(0.5,-0.25),參考軌跡的初始位置為(0,1),初始方向角均為π/4。機器人運動控制的仿真結(jié)果如圖4所示。

圖4 機器人運動控制效果仿真
在圖4中,黑色點表示機器人實際軌跡的初始位置,紅色點表示機器人參考軌跡的初始位置。黃線和綠線分別表示參考軌跡和實際軌跡。橫軸表示X坐標,單位是m,縱軸表示Y坐標,單位是m。由圖4可以直觀地看出,在很短的時間內(nèi),機器人的實際運動軌跡就可以收斂到參考軌跡,說明運動控制律(4)發(fā)揮了積極的作用。
為了進一步研究運動控制律的效果,分別計算出在運動過程中各個誤差量的變化情況,結(jié)果如圖5所示。

圖5 機器人運動控制誤差仿真
圖5清晰地表示了在機器人運動過程中誤差的變化情況。由圖5可以進一步看出,在較短的時間內(nèi),運動誤差Xe和Ye均穩(wěn)定地收斂到0,說明運動控制律(4)具有較好的實用效果。
嵌入式機器人的結(jié)構(gòu)相對簡單,利用PLC控制器集成自主開發(fā)的控制律后,可以控制機器人按照預(yù)期的軌跡進行運動。這種控制方式可以提高機器人的應(yīng)用范圍。本文設(shè)計了一種控制律,并利用智能算法進行了仿真驗證。結(jié)果表明,在本文設(shè)計的控制律作用下,嵌入式機器人能夠按照預(yù)定的軌跡運動,進而證明了控制律的有效性。