張 玲
(上海工藝美術(shù)職業(yè)學(xué)院,上海 201800)
機(jī)器人作為一種高效的生產(chǎn)工具,在提高生產(chǎn)性能方面具有較大的優(yōu)勢[1]。機(jī)器人正在慢慢代替人工從事環(huán)境惡劣和性質(zhì)危險的工作。如今,通過機(jī)器人和其他設(shè)備構(gòu)成的生產(chǎn)線很大程度地提升了企業(yè)的生產(chǎn)速度與生產(chǎn)質(zhì)量,加快了產(chǎn)品的生產(chǎn)和更新速度。但隨著科技的發(fā)展,各式各樣的機(jī)器人也變得復(fù)雜且多樣化。以往的機(jī)器人控制手段,大多是工程師使用各自專業(yè)的軟件獨立構(gòu)建、調(diào)試與實驗,最后再對制造出的虛擬機(jī)械進(jìn)行控制。然而,目前的控制手段已經(jīng)難以滿足新型機(jī)械手臂的控制需求,常存在精度低與響應(yīng)速度慢的問題。
針對上述問題,本文提出了一種基于人機(jī)工程學(xué)的虛擬機(jī)械手臂運動控制方法。該方法結(jié)合人機(jī)工程學(xué)構(gòu)建人體模型,計算人體手臂運動過程中各關(guān)節(jié)的運動矢量與具體參數(shù),從而強(qiáng)化方法的控制精度。同時,組建模糊邏輯系統(tǒng),依靠該系統(tǒng)的模糊邏輯理論構(gòu)建模糊邏輯控制器,加快控制響應(yīng)速度,實現(xiàn)對虛擬機(jī)械手臂的高效控制。
人機(jī)工程設(shè)計流程中,第一步為組建一種存在精確人機(jī)尺寸與運動學(xué)標(biāo)準(zhǔn)的人體模型。由于本文中的虛擬機(jī)械手臂是一種可以執(zhí)行相當(dāng)于真正人類手臂工作的機(jī)械,所以需要通過運動空間規(guī)劃響應(yīng)模型。
本研究通過3個層次構(gòu)建符合人體工程學(xué)的虛擬機(jī)械手臂人機(jī),分別為架構(gòu)層、尺寸層和形態(tài)層。架構(gòu)層能夠計算人體關(guān)節(jié)的架構(gòu)尺寸,從而設(shè)計人體姿態(tài);尺寸層通過獲取人體的尺寸數(shù)據(jù)計算對應(yīng)的人機(jī)尺寸;形態(tài)層提供人體手臂各關(guān)節(jié)的運動姿態(tài),幫助構(gòu)建曲面人機(jī)姿態(tài)。
人體軀干部分與手臂的主要連接點是鎖骨。所以,本文組建一種五自由度[2]的聯(lián)合坐標(biāo)系。在人類鎖骨位置末端擬定2個坐標(biāo)軸Z1與Z0,分別為手臂的左右運動軸向與前后運動軸向。由于繞軸轉(zhuǎn)動對手臂坐標(biāo)的影響并不大,因此能夠忽略不計,僅圍繞Z2、Z3和Z4對肩關(guān)節(jié)的球面運動進(jìn)行模擬。肩部和手臂的運動學(xué)構(gòu)造結(jié)果如圖1所示。
圖1 肩部、手臂的運動學(xué)構(gòu)造
圖1中,A2為鎖骨在水平方向的尺寸;D3為鎖骨前后的尺寸,這2個參數(shù)表示了鎖骨與肩關(guān)節(jié)間存在的位置關(guān)系[3]。另外,D6為縱軸上肱骨與肩關(guān)節(jié)間的尺寸;D5為肱骨的尺寸。
肘關(guān)節(jié)即為肱骨與前臂骨間的連接關(guān)節(jié)。肘部存在2種關(guān)節(jié)連接,分別用Z5與Z6表示。Z5為彎曲與伸展運動;Z6為前臂轉(zhuǎn)動軸,前臂與Z6不會出現(xiàn)垂直或平行現(xiàn)象;D7為腕關(guān)節(jié)尺寸。在手掌運動時,前臂轉(zhuǎn)動軸的動量會在運動連接處產(chǎn)生,這種動量也能夠被稱為橈骨繞尺骨轉(zhuǎn)動。因此,本文只將Z6當(dāng)作前臂的旋轉(zhuǎn)軸。
人體腕關(guān)節(jié)是通過多個部分組成的,這些部分會負(fù)責(zé)不同的運動形式。由于腕骨存在2個凸起的關(guān)節(jié),而這2個關(guān)節(jié)存在不同的形狀,因此,這2個關(guān)節(jié)的運動軸是不會相交于一點的。這2個軸之間的尺寸A1大約為2 cm。
正運動學(xué)方程可以表示機(jī)械手臂末端端點或末桿的姿態(tài)與位置,是進(jìn)行運動分析的基礎(chǔ)[4]。依據(jù)相鄰連桿的齊次轉(zhuǎn)換矩陣擬定末端執(zhí)行器的參考點為Q7,則虛擬機(jī)械手臂的正運動學(xué)的計算公式為
0T7=0T11T22T33T44T55T66T7=
(1)
R為坐標(biāo)系的姿態(tài)矩陣;p為坐標(biāo)系的向量;i-1Ti為總變換矩陣。剩余的參數(shù)計算公式為
(2)
n、o、a和p為虛擬機(jī)械手臂的不同關(guān)節(jié)的運動參數(shù);si與li為關(guān)節(jié)連接參數(shù)。通過正運動公式可知,利用姿態(tài)矩陣R只能對關(guān)節(jié)的旋轉(zhuǎn)角度函數(shù)進(jìn)行計算。而連桿尺寸與移動關(guān)節(jié)則需要依靠手臂末端相交于基坐標(biāo)系的位置向量p進(jìn)行計算[5]。
虛擬機(jī)械手臂的雅克比矩陣J在機(jī)械手臂動力學(xué)、控制學(xué)與運動學(xué)內(nèi)具有關(guān)鍵的作用,q=[q1,q2,…,qn]T為關(guān)節(jié)速度矢量。對于存在n個關(guān)節(jié)的虛擬機(jī)械手臂來說,雅克比矩陣J可以被描述為一種6×n的矩陣。另外,該矩陣的向量能夠?qū)﹃P(guān)節(jié)速度、末端角速度和線速度影響進(jìn)行描述[6],機(jī)械手臂末端角速度ω與線速度v能夠被描述成關(guān)節(jié)速度q的線性函數(shù)[7],即
(3)
通過上述過程可以得到虛擬機(jī)械手臂不同關(guān)節(jié)的運動速度。
模糊邏輯系統(tǒng)中較為關(guān)鍵的組成部分包括模糊規(guī)則、推理合成、模糊化與反模糊化4種[7]。
模糊邏輯可以把模糊語言規(guī)則變換為數(shù)學(xué)公式的形式[8]。擬定模糊系統(tǒng)的映射存在輸入論域U∈Rn與輸出論域V∈Rn,利用模糊規(guī)則進(jìn)行運算,即
(4)
憑借模糊邏輯系統(tǒng)理論,加入輸入論域U[9],并擬定U內(nèi)的連接函數(shù)g(x),可以利用式(4)的模糊邏輯公式R(l)進(jìn)行運算,即
(5)
為了解決因為虛擬機(jī)械手臂建模不精確而出現(xiàn)系統(tǒng)不確定部分,致使其控制性能下滑的問題,本文擬定自適應(yīng)模糊邏輯系統(tǒng)來解決不確定部分[10]。因此,為了縮減模糊規(guī)則數(shù)量,需要將輸入調(diào)整為關(guān)節(jié)i的誤差率,ηi為靠近誤差上界的ηi0;K為對稱正定矩陣。那么,擬定誤差函數(shù)為
xi=Ai+B((xi)+ηi(ηi0))K
(6)
A為穩(wěn)定矩陣;B為誤差矩陣。在此基礎(chǔ)上,設(shè)定Q為矩陣特征值,其最小值為λmin(Q),矩陣特征最大值為λmax(K),那么有
(7)
存在λmin(Q)≥λ2Km/‖xi‖,即xi的收斂半徑為‖xi‖=(2λmax(K)/λmin(Q))|ηi0|時,V≤0。因此,Q的特征值越大,K的特征值就會越小,ηi的誤差且上界ηi0也會變小,而xn的收斂半徑越小,運動控制的效果就會越好[11]。
以虛擬機(jī)械手臂的肩關(guān)節(jié)當(dāng)作實驗?zāi)繕?biāo),將階躍信號與模糊信號作為輸入信號,驗證本研究設(shè)計的基于人機(jī)工程學(xué)的虛擬機(jī)械手臂運動控制方法的軌跡跟蹤精度與響應(yīng)速度[12]。
分別采集實際跟蹤軌跡和期望軌跡,依靠二者對比結(jié)果,得到所提方法在機(jī)械手臂運動控制上的響應(yīng)速度與位置跟蹤性能結(jié)果,如圖2和圖3所示。
圖2 階躍信號肩關(guān)節(jié)跟蹤特性
圖3 正弦信號肩關(guān)節(jié)跟蹤特性
通過圖2和圖3能夠看出,肩關(guān)節(jié)具有很好的響應(yīng)速度和軌跡跟蹤效果,不論算法輸入到肩關(guān)節(jié)的信號是什么信號,關(guān)節(jié)都可以快速響應(yīng)到算法擬定的目標(biāo)方位,并保持在目標(biāo)位置上。結(jié)合圖1肩部和手臂的運動學(xué)構(gòu)造可以看出,人體軀干部分與手臂的主要連接的關(guān)節(jié)為肩關(guān)節(jié),而肩關(guān)節(jié)的響應(yīng)速度快,能夠證明在本文方法的運動控制下的虛擬機(jī)械手臂響應(yīng)速度快。
實驗過程:操作人員將正弦波位置作為輸入指令,運動控制算法接收并解析該指令,將關(guān)節(jié)位置信息分別下發(fā)到控制器內(nèi)。控制算法與機(jī)械手臂的通信周期是2 ms,依靠EtherCAT以太網(wǎng)連接伺服驅(qū)動器與運動控制算法,設(shè)定數(shù)據(jù)的同步周期為250 μs,通信數(shù)據(jù)的吞吐量為290 B。利用記錄2次數(shù)據(jù)的傳輸時間間隔,能夠得到在交換數(shù)據(jù)狀態(tài)下,基于所提控制方法的虛擬機(jī)械手臂抖動情況,其結(jié)果如圖4所示。
通過圖4能夠得知,所提方法伺服周期波動基本處于(250±2) μs之間,波動最大值不會大于10 μs。上述結(jié)果表明,使用所提方法控制的虛擬機(jī)械手臂不會因為數(shù)據(jù)轉(zhuǎn)換期間的通信空缺,出現(xiàn)大幅度抖動狀況。
圖4 數(shù)據(jù)轉(zhuǎn)換期間虛擬機(jī)械手臂抖動狀況
通過CPLD編程控制執(zhí)行程序,把機(jī)械手臂控制算法的輸入端擬定為TRF7960,設(shè)定手臂姿態(tài)數(shù)據(jù)收集頻率為1 200 kHz,動作傳感信息輸出時間為0.15 ms。擬定虛擬機(jī)械手臂轉(zhuǎn)矩作為實驗指標(biāo),依靠所提方法對初始機(jī)械手臂進(jìn)行控制,獲取轉(zhuǎn)矩姿態(tài)跟蹤控制曲線,結(jié)果如圖5所示。
圖5 虛擬機(jī)械手臂轉(zhuǎn)矩姿態(tài)跟蹤曲線
通過圖5能夠看出,本文方法控制下機(jī)械手臂姿態(tài)參量的擬定轉(zhuǎn)矩和實際轉(zhuǎn)矩擬合程度高,且波動幅度基本相同,機(jī)械手臂的轉(zhuǎn)矩控制精度高。
為了進(jìn)一步證明本文方法的實用性,使用該方法控制虛擬機(jī)械手臂抓取目標(biāo),獲取距離參量控制性能曲線,其結(jié)果如圖6所示。
圖6 虛擬機(jī)械手臂位移控制曲線
通過圖6能夠看出,期望位移與實際控制位移曲線基本重合,僅僅有2處出現(xiàn)較小差異,可忽略不計。這是因為本文方法憑借建立的模糊矩陣加強(qiáng)控制精度,使其具有輸出穩(wěn)定和控制精度高的優(yōu)點,極大地提升系統(tǒng)的魯棒性。
為了提高虛擬機(jī)械手臂的控制精度與響應(yīng)效率,本文提出一種基于人機(jī)工程學(xué)的虛擬機(jī)械手臂運動控制方法。該方法通過模糊邏輯系統(tǒng)與人體工程模型,實現(xiàn)對虛擬機(jī)械手臂的控制。但算法依舊存在一定的弊端:其較為偏向自動控制,并沒有相應(yīng)的規(guī)避障礙物程序,導(dǎo)致虛擬機(jī)械手臂在工作時還需要耗費人力檢測,防止意外發(fā)生。因此,在接下來的研究中,將在本文方法基礎(chǔ)上,構(gòu)建一種自動化規(guī)避障礙物算法,優(yōu)化虛擬機(jī)械手臂的控制效果。