張 毅,游群霞,羅 元,周揮宇
(重慶郵電大學國家信息無障礙工程研發中心智能系統及機器人研究所,重慶 400065)
在信息產業高度融合與快速發展的今天,機器人的遠程控制技術為人們進一步探索和改變世界帶來了極大的方便,機器人遠程控制系統可以被應用于危險環境下的遠程作業、遠程醫療、遠程教學、遠程監護以及傳統生產模式的改造等眾多方面,具有廣闊的應用前景[1]。
隨著控制技術和網絡技術的不斷發展,人類對機器人遠程控制技術的要求越來越高[2]。機械臂遠程控制是建立在一個復雜控制環境基礎上的控制技術,要實現可靠的遠程控制有很多問題需要解決,其中最重要的就是實時性和穩定性。多數研究者對遠程控制的實時性進行了多方面的研究[3-4],采用網絡建模、從控制的角度來分析和補償網絡傳輸延時等方法來彌補遠程控制的實時性。對于穩定性問題,可以采取可靠的網絡傳輸協議保障遠程控制的穩定性,在此基礎上,可從機械臂結構本身出發以增強遠程控制系統的穩定性,即對機械臂運動軌跡進行規劃,使機械臂運動連續、平穩、無抖動。軌跡規劃既可在笛卡爾空間也可以在關節空間中進行,鄭樺、叢爽等[5]研究者把基于笛卡爾空間的連續軌跡(continuous path,CP)控制方式引入了機械臂的遠程控制中,CP控制比較復雜,涉及矩陣求逆等復雜運算,需要通過各種插補運算才能實現軌跡插補。本文中我們把運算簡化的關節空間軌跡插補控制方式引入了機械臂遠程控制系統中,并對其進行了研究和分析。
在多自由度串聯機器臂的遠程控制系統中,傳統的遠程控制方式是直接向機器臂發送控制指令和指令參數來控制機械臂的運動。機械臂是一個多輸入多輸出、不穩定、時變耦合的非線性動態系統[5],由于機械臂結構的限制,直接向機械臂發送未軌跡規劃的控制指令,容易造成機械臂運動的不連續和不平滑,同時機器關節由于機械慣性會產生抖動。為了克服這些問題,提高系統的穩定性,本文對遠程機械臂的運動軌跡進行了基于關節空間的軌跡規劃,選取了結構簡單,計算量小的5次多項式插值函數對四自由度串聯機械臂的運動軌跡進行軌跡插補,該插值函數能夠實時計算機械臂各關節的運動參數,生成運動軌跡,可以確保各關節運動時的連續性和平滑性[6],并提高軌跡規劃的實時性。把規劃后的控制指令通過遠端客戶機傳送給本地服務器,可以使機械臂按照規劃后的軌跡,連續、光滑、無抖動的運動,達到了連續、平穩、可靠地控制遠程機械臂的工作要求,提高了機械臂遠程控制系統的穩定性。
本文中我們以四自由度串聯機械臂作為被控對象進行實際的遠程控制,機械臂控制系統實物圖如圖1所示。

圖1 機械臂控制系統實物圖Fig.1 Robot arm control system actual picture
本系統遠程控制采用軟件實現的方式,遠程控制機械臂采取常用的C/S(client/server)模式,遠程控制計算機作為客戶端,主要完成控制器的功能,本地計算機作為服務器,主要完成執行器的功能,四自由度串聯機械臂系統與本地服務器相連。系統采用了多模塊化思想進行設計,構建了基于Internet的機械臂遠程控制系統,其結構框圖如圖2所示。系統使用基于Winsock的進程通信方法實現客戶端與服務器之間的數據連接與交換,為了增強系統的穩定性,數據傳輸采用TCP(transmission control protocol)協議,TCP協議是面向連接的,提供無差錯、無重復的順序數據傳輸的可靠傳輸控制協議,TCP協議的主要特點是可靠性很高。

圖2 遠程控制系統結構框圖Fig.2 Romote control system strucrure diagram
客戶端用戶從遠端通過網絡訪問本地服務器,在連接建立以后,服務器端便開始向連接到本地服務器的遠端客戶提供服務,首先接受客戶端通過網絡發出的命令,然后根據該命令控制本地機械臂運動,最后將運動的結果以及一些現場相關信息傳回給遠端用戶,從而實現遠端客戶通過網絡對機械臂的控制。
軌跡規劃既可在關節空間也可以在笛卡爾空間中進行,但是要求所規劃的軌跡函數必須連續且平滑,使得機器人操作臂運動平穩[7]。關節空間軌跡規劃是以關節角度函數來描述機器人軌跡,并進行軌跡規劃,無需在笛卡爾坐標系描述兩個路徑點之間的路徑形狀,計算簡單、容易,不會發生機構奇異性的問題。在關節空間中進行軌跡規劃,是將關節變量映射成時間的函數,并規劃它的一階和二階時間導數,軌跡規劃的主要任務是選擇合理的多項式函數和其他線性函數進行插補運算,使關節運動平滑、穩定,始終保持在關節運動容許的范圍內[8]。
針對機械臂的運動特點,我們直接用機械臂運動時的關節變量來規劃軌跡,其優點是軌跡規劃可近似實時地進行,關節軌跡易于規劃。在機械臂運動過程中,已知機械臂在在t0=0時刻的某關節角為θ0,tn時刻的值是終止關節角度θn。其軌跡的描述由起始點關節角度與終止點關節角度的一個平滑插值函數θ(t)來表示,對于每個關節的平滑函數而言,為了實現關節的平穩運動,有6個約束條件:兩端點的位置約束、兩端點的速度約束和兩端點的加速度約束。端點的位置約束是指起始位姿和終止位姿各自所對應的關節角度,即

為了滿足關節運動速度的連續性要求,假設機器人初始點和終止點的關節角速度為零,用Vθ(0)和Vθ(tn)表示,即

同時為了滿足(1)式和(2)式,兩端點的關節角加速度用aθ(0)和aθ(tn)表示,滿足

滿足上述任意給定約束條件的平滑函數有許多,考慮到要在遠程控制系統中實現軌跡規劃,應選取計算簡化和形式簡單,可以提高軌跡規劃實時性的插值函數,實現快速性要求。綜合以上因素考慮,本文選取了5次多項式插值函數進行軌跡插補,便于實時計算和實際應用。
由(1)-(3)式6個約束條件可以唯一確定一個5次多項式

設該路徑的關節角速度為Vθ(t),關節角加速度為aθ(t),則

由(1)-(3)式分別代入(4)-(6)式可解得


所以,對于初速度及終速度為零的關節運動,滿足約束條件的5次多項式插值函數為
對于給定約束條件的軌跡,由(8)式的多項式插值函數可迅速得到,從而避免對運動過程中的每一點進行實時運動學逆解的繁雜計算,提高了運算速度與效率,可以有效地提高軌跡規劃的精確性,實時性。
在傳統的機械臂遠程控制系統中加入軌跡規劃模塊,使機械臂按照規劃后的軌跡運動,最終實現軌跡規劃下的機械臂遠程控制。系統控制軟件中,軌跡規劃工作放在個客戶端獨立處理,系統創建了軌跡規劃模塊,構建了Cplanner規劃類來負責軌跡的規劃工作,加入軌跡規劃模塊后的客戶端流程圖[9]如圖3所示。

圖3 客戶端程序流程圖Fig.3 Client program flow diagram
當客戶端與服務器端建立連接后,客戶端主線程開啟后向指定的服務器發送控制機械臂的請求,請求獲得允許后初始化,等待用戶的軌跡規劃。有任務時由軌跡規劃模塊生成軌跡點指令序列,以事件觸發的方式按順序交由網絡傳輸模塊發送至服務器,服務器端開啟網絡控制后循環等待客戶機發送網絡字節形式的參數指令序列,并翻譯成本地指令,轉化成機械臂控制字以實現對機械臂的控制,使機械臂按照規劃后的軌跡,從起始點開始,依次光滑、連續、平穩地通過所有路徑點,最后到達目標位置。
機械臂控制系統通過串口與服務器連接,機械臂的關節都是由舵機驅動的,表1是機械臂舵機控制的通信協議。服務器接受到客戶端傳來的各關節的控制指令后,利用其強大的處理能力把各關節的參數信息轉換成控制字,通過串口向AVR(automatic voltage regulator)單片機發送控制字命令,單片機程序初始化后,用查詢的方式從串口接收數據,當接收到數據后,計算PWM(pulse width modulation)脈寬,控制舵機的轉動角度和速度,最終實現對機械臂各關節的控制。

表1 舵機控制協議格式Tab.1 Steering engine control protocol format
為了驗證遠程機械臂加入軌跡規劃模塊以后運動的連續性和平穩性,給定機械臂起始點和目標點,對同一任務采用兩種控制方式(即傳統的機械臂遠程控制方式和軌跡規劃后的機械臂遠程控制方式)實現對機械臂的遠程控制。從服務器端獲取2種控制方式的各個關節的運動參數的數據信息,將其繪制成曲線,得到的軌跡規劃前和軌跡規劃后的各關節的角度和速度變化曲線對比圖如圖4所示。圖4中:1為軌跡規劃前角度曲線;2為規劃后角度曲線;3為軌跡規劃前速度曲線;4為規劃后速度曲線??梢?,軌跡規劃前各關節的角度和速度變化曲線波動大,不平滑,給定約束條件對機械臂運動軌跡進行規劃后各關節的角度和速度變化曲線是光滑、連續、平穩的。
對于增加的加速度約束條件,把服務器端得到的加速度數據信息繪制成曲線,得到4個關節的加速度曲線,如圖5所示。圖5中,1-4分別為關節1-4的加速度曲線。由圖5可知,各關節的加速曲線連續,表明機械臂末端執行器不會產生抖動。

為了更好的驗證傳統的機械臂遠程控制系統加入軌跡規劃模塊以后的有效性,本文對軌跡規劃后的機械臂做了實際的遠程控制實驗。在服務器端把接收到的規劃后各關節的指令序列轉換成機械臂的控制字,通過串口把控制字發送給AVR單片機后,使遠程機械臂按照規劃后的軌跡完成運動,達到了連續、平穩、無抖動的控制機械臂的工作要求。
本文中我們在傳統的機械臂遠程控制系統中加入軌跡規劃模塊,采用5次多項式插值函數對機械臂運動軌跡進行軌跡插補,軌跡規劃過程中,整個計算與插補是在關節變量空間進行的,計算量小,避免對運動過程中的每一點進行實時運動學逆解的繁雜計算,實時性好。軌跡規劃完成后,使遠程機械臂按照規劃后的軌跡運動,機械臂能夠連續、平穩的運動,克服了機械臂的抖動,有效地提高了機械臂遠程控制系統的實時性和穩定性,提高了系統的使用性,
為遠程機械臂的實際應用奠定了基礎。
[1]馮華山.基于Internet的遠程控制機器人系統[D].西安:西安工業大學,2004.
FENG Hua-shan.Remote Control Robot System Based on Internet[D].Xi'an:Xi'an Echnological University,2004.
[2] 馮蘭勝.基于機械臂的遠程控制系統研究[D].西安:西安電子科技大學,2005.
FENG Lan-sheng.Remote Control Robot System Research Based on Robot Arm[D].Xi'an:Xi'an Univeristy of E-lectronic Science and Technology,2005.
[3] TIPSUWANY,CHOW M.Control methodologies in networked control systems[J].2003,11(10):1099-1111.
[4]WALSHG,YE H,BUSHNELL L.Stability analysis of networked control systems[J].2002,13(5):438-446.
[5]鄭樺,叢爽.絡遠程控制中機械臂的連續軌跡控制[J].中國工程科學,2008,10(10):91-95.
ZHENG Hua,CONG Shuang.Continuous Path Control of Robot Arm in Network-based Remote Control[J].Chinese Engineering Science,2002(5):438-446.
[6]付西光,顏國正.7-DOF核工業機器人的軌跡規劃與仿真[J].系統仿真學報,2005,8(8):1948-1950.
FU Xi-guang,YAN Guo-zheng.Trajectory Planning and Simulating on 7-DOF Robot Applied to Nuclear Industry[J].Journal of System Simulating,2005,8(8):1948-1950.
[7] 殷際英,何廣平.關節型機器人[M].北京:化學工業出版社,2003:68-82.
YIN Ji-ying,HE Guang-ping.Joint Robot[M].Beijing:Chemical Industry Press,2003:68-82.
[8]譚崗慧子,陳勁杰.三指仿人靈巧手軌跡規劃及仿真研究[J].機械研究與應用,2010,16(5):44-47.
TANGANG Hui-zi,CHEN Jin-jie.Trajectory Planning and Simulation on three finger Dexterous Hand[J].Mechanical Research and Application,2010,16(5):44-47.
[9]魏子翔,從爽,鄭樺.基于網絡的機械臂遠程控制平臺設計與時延補償[J].機械設計,2007,24(6):26-28.
WEIZi-xiang,CONG Shuang,ZHENG Hua.Research on Remote Controlled Platform Design of Mechanical Arm and Time Delayed Compensation Based on Network[J].Mechanic Design,2007,24(6):26-28.