辛玉紅,王翠紅,楊慶鳳
(金陵科技學院機電工程學院,江蘇 南京 211169)
懸索機器人利用懸索代替?zhèn)鹘y(tǒng)機器人中的剛性連桿作為驅(qū)動元件,在期望的工作空間中對末端執(zhí)行器進行定位和定向,具有并聯(lián)、柔性驅(qū)動的特點,且易拆易構(gòu)、工作空間大、移動速度快、慣性小、質(zhì)量承載比高[1-3],因而在大型工作空間如場地攝影[4]、智能物流倉儲[5]、大型3D打印[6]等有著巨大的應(yīng)用前景。
懸索機器人工作時末端執(zhí)行器與外界環(huán)境發(fā)生接觸,產(chǎn)生作用力,這時如果僅使用傳統(tǒng)的位置控制策略[7],則控制精度無法保障。力位混合控制作為主動柔順控制的一種,其核心控制策略是實現(xiàn)對機器人末端力與位置的綜合控制,進而提高機器人的控制精度及穩(wěn)定性[8],已逐漸被應(yīng)用于懸索機器人控制中。Jun等[9]在位置環(huán)和力環(huán)使用兩個矩陣計算繞線誤差,構(gòu)建三自由度懸索機器人力位混合控制系統(tǒng)。Kraus等[10]使用位置、繩索內(nèi)力、外界接觸力三環(huán)控制策略,使繩索保持張緊并按設(shè)定軌跡運動。尤開靈[11]基于懸索機械臂的導納柔順控制算法設(shè)計了一種位姿預測的力位混合控制方案。
這些懸索機器人力位混合控制系統(tǒng)一般需要較高的硬件性能、昂貴的力傳感器,使其推廣應(yīng)用受到了制約。本文采用電機內(nèi)部的力矩傳感器代替力傳感器,設(shè)計了一種無外力傳感器、計算效率高的力位混合控制系統(tǒng),保障機器人的穩(wěn)定性及運動控制精度。
圖1 懸索機器人樣機
平面四懸索機器人(圖1)主要由靜平臺、動平臺、柔索等組成。靜平臺固定于基座上,裝有驅(qū)動電機,用以收放繩索;動平臺為控制終端,可依據(jù)工作需要搭載不同的末端執(zhí)行器,例如攝像機、機械手等;利用柔索將動平臺與出繩點連接,通過電機收放繩索以控制動平臺的精準運動。因機器人動力部分與運動控制部分相分離,故質(zhì)量承載比比串聯(lián)機器人更高,末端執(zhí)行器慣性更小,運動速度更快。
該機器人各部分參數(shù)及功能如表1所示。
表1 懸索機器人各部分參數(shù)及功能
收放繩裝置是懸索機器人的核心部件,多個收放繩裝置協(xié)同工作,控制懸索長度,實現(xiàn)對懸索機器人末端平臺的定位控制。收放繩裝置的精度決定了懸索機器人的運動性能。本文針對小型懸索機器人設(shè)計了一種精準收放繩裝置,如圖2所示。
具體工作原理為:絲桿固連不動,與繞線輪通過絲桿螺母連接。左右法蘭間固定三根長導桿,繞線輪可沿導桿滑動。繞線輪外表面加工有與絲桿相同螺距的螺紋。電機通過電機輸出軸帶動其固接的法蘭轉(zhuǎn)動,從而帶動導桿、繞線輪一起轉(zhuǎn)動,在固定絲桿的作用下,繞線輪每轉(zhuǎn)動一周的同時沿導桿平動一個螺距長度,使柔索纏繞在繞線輪的凹槽內(nèi)。該裝置保證繞線不重疊及繞線輪出繩點固定,避免因繞線不均產(chǎn)生機械誤差,實現(xiàn)了機器人在懸索收放過程中的繩長精準控制,保證了末端執(zhí)行裝置的位置精度。
本文選用的SM30伺服電機最大輸出力矩為3 N·m,多圈絕對位置可控,控制精度可達0.088°,內(nèi)部裝有多種傳感器,能反饋溫度、速度、位置、負載、電流等多項物理參數(shù)。其部分參數(shù)如表2所示。
表2 伺服電機部分參數(shù)
懸索機器人樣機選用Arduino Mega 2560作為控制板。控制板與電機采用串口通信,指定電機目標位置,帶動收放繩裝置轉(zhuǎn)動。
建立如圖3所示的機器人模型,圖中O-xyz為世界坐標系,D-xyz為動平臺局部坐標系,Ai(i=1~4)為靜平臺繩索出繩點,Bi(i=1~4)為動平臺繩索鉸接點,ai、b分別為靜平臺出繩點Ai、動平臺幾何中心D在O-xyz坐標系下的位置向量,bi為Bi在D-xyz坐標系下的位置向量,li為繩索向量,Li為對應(yīng)的繩索長度。
圖3 小型懸索機器人模型
運動學反解是控制懸索機器人的基礎(chǔ),即根據(jù)動平臺位姿計算各繩索長度Li。設(shè)動平臺歐拉角分別為α,β,γ,記c為cos函數(shù),s為sin函數(shù),則動平臺的旋轉(zhuǎn)矩陣可表示為
(1)
(2)
動平臺只受四根繩索的拉力Fi(i=1~4)和外力W影響,設(shè)
F=[F1,F2,F3,F4]T
(3)
動平臺靜止時,繩索張力對動平臺產(chǎn)生的力、力矩與動平臺所受外力W正好抵消,如式(4):
(4)
(5)
其中,CT是機器人動平臺的結(jié)構(gòu)矩陣,W=[fw,τw]T,fw和τw分別表示動平臺所受外力和外力矩,ti為繩索單位矢量,|Fmin|是繩索張力最小值,|Fmax|是繩索張力最大值。
懸索機器人控制系統(tǒng)的核心是點位運動及軌跡運動算法。在傳統(tǒng)的位置控制系統(tǒng)[7]中,點位控制系統(tǒng)單獨調(diào)用各電機速度規(guī)劃算法計算各電機位置;軌跡控制系統(tǒng)根據(jù)速度規(guī)劃算法插補出末端位姿,并經(jīng)運動學反解計算得到各電機位置,完成懸索機器人的運動控制。
在動平臺受到接觸力作用時,傳統(tǒng)的位置控制系統(tǒng)無法保障機器人的控制精度,因此本文設(shè)計了一種力位混合控制系統(tǒng),如圖4所示。
圖4 力位混合運動控制系統(tǒng)算法框
該控制系統(tǒng)中,力控環(huán)節(jié)由電機內(nèi)部的力矩測量功能對懸索張力進行反饋和控制調(diào)節(jié);位控環(huán)節(jié)對動平臺末端位置進行控制,根據(jù)懸索張力傳遞的特性,由結(jié)構(gòu)矩陣計算出動平臺懸掛外力,從而確定動平臺末端的位置。具體實施步驟如下:
1)力控環(huán)節(jié)。預設(shè)懸索機器人動平臺所受外力及外力矩(外力懸量)Wset;將Wset輸入張力優(yōu)化算法模塊,運用CF張力優(yōu)化算法[12]計算出期望的懸索張力Fset;由電機的力矩測量功能測量出每根懸索對應(yīng)電機的力矩,將其轉(zhuǎn)化為實際的懸索張力Freal;將Fset與Freal作差,計算出懸索張力誤差ΔF;將ΔF輸入懸索張力力控算法模塊,經(jīng)計算可求出ΔF對應(yīng)的懸索長度補償量ΔL。
為了簡化計算,本文中懸索張力力控算法為一個比例增益的控制器,設(shè)K為懸索材料剛度,則懸索剛度Kcable=L/K(L為懸索長度),ΔF與ΔL之間的關(guān)系如式(6)所示:
(6)
2) 位控環(huán)節(jié)。預設(shè)動平臺運動軌跡Xset,力控環(huán)節(jié)中的Freal經(jīng)過結(jié)構(gòu)矩陣模塊的計算(Wreal=-CTFreal),得到實際的動平臺所受外力(實際外力懸量)Wreal;將預設(shè)的外力懸量Wset與實際的外力懸量Wreal作差,計算出外力懸量誤差ΔW;將ΔW輸入動平臺末端力控算法模塊,經(jīng)計算可求出ΔW對應(yīng)的動平臺運動軌跡補償量ΔX;將動平臺預設(shè)軌跡Xset與ΔX相加得到新的動平臺運動軌跡Xnew;將Xnew輸入運動學反解模塊,求得懸索長度L。
3)力位混合控制。將L與ΔL相加得到這一控制周期內(nèi)力位混合控制算法補償過的懸索長度值Lnew,控制電機運動。
為了驗證力位混合控制系統(tǒng)的有效性,在Simulink中構(gòu)建仿真模型。選取矩形動平臺長a為100 mm,寬b為100 mm,設(shè)置出繩點OAi及鉸接點DBi坐標,如表3所示。
表3 出繩點及鉸接點坐標
預設(shè)動平臺運動路徑為其工作空間內(nèi)的整圓,其方程如下:
(7)
結(jié)合出繩點的具體位置,取R=350,x′=-125,y′=-110,s表示不同位置點對應(yīng)的圓心角。計算得到不同位置柔索長度如圖5所示,柔索張力如圖6所示。
圖5 不同位置時柔索長度情況
圖6 不同位置時柔索張力情況
從圖中可以看出:在移動過程中,柔索長度的數(shù)值和軌跡變化合理,過渡光滑;柔索張力均在最小張力和最大張力之間,在實際運行過程中各柔索受力平穩(wěn),較為可靠,表明算法具有可行性。在Simulink中仿真時,為盡量還原現(xiàn)實物理環(huán)境,在每個運動控制周期內(nèi),對懸掛外力fw產(chǎn)生2 N以下的隨機力來代表力擾動,分別采用位置控制算法和力位混合控制算法得到軌跡誤差,如表4所示。從表4可以看出,受干擾后未經(jīng)力位補償?shù)膭悠脚_軌跡Xreal與預設(shè)的動平臺軌跡Xset之間存在較大差異,此時懸索機器人的穩(wěn)定性及控制精度得不到保障。經(jīng)過力位混合控制算法補償后的Xnew與Xset之間的差異很小,精度可以達到10-2cm數(shù)量級。
表4 力位控制補償前后軌跡誤差對比
為驗證定位控制的精確性,在動平臺上垂直安裝馬克筆,通過對末端動平臺軌跡進行控制,在紙面上得到預定的運動軌跡;通過測量曲線的偏移程度,得出動平臺的控制精度。在AutoCAD中設(shè)計動平臺末端軌跡曲線及其部分坐標,如圖7所示。
圖7 動平臺目標軌跡及部分坐標(單位:mm)
預先調(diào)整好紙平面高度,使得安裝好的馬克筆剛好接觸紙平面,分別采用位置控制和力位混合控制策略將控制程序下載到Arduino控制器,使得機器人動平臺按照預設(shè)軌跡運動。選取圖7中的1、2、3位置進行對比,結(jié)果如圖8所示,其中紅線為目標軌跡,黑線為實際軌跡。
圖8 實際曲線精度對比
對圖8進一步分析,結(jié)果如表5所示。從圖8和表5可以看出,動平臺運動到圖 8中的區(qū)域,由于靠近工作空間邊緣,采用位置控制算法時柔索出現(xiàn)松弛的現(xiàn)象,導致無法精確定位,因此實際軌跡與目標軌跡相差較大;增加力控環(huán)節(jié)使實際的懸索張力基本與期望懸索張力保持一致,相比于張力優(yōu)化算法[12],力位混合控制算法考慮了位置誤差的影響因素,具有更高的定位精度。
表5 不同算法時軌跡曲線最大偏差 mm
針對普通懸索機器人位置控制精度不高、硬件成本高的問題,設(shè)計了一種小型平面四懸索機器人。結(jié)果如下:1)自主設(shè)計的收放繩結(jié)構(gòu)可以精確保證繩索長度與電機轉(zhuǎn)角的比例關(guān)系,簡化了控制策略;2)利用電機內(nèi)部傳感器實現(xiàn)了精準力感知和力位混合控制,提高了位置控制精度;3)本文算法執(zhí)行效率高,可運行在Arduino主控板、總線電機等低成本硬件平臺上,具有一定的應(yīng)用價值。