高朋帥, 蔡錦達, 方佳偉
(上海理工大學(xué) 機械工程學(xué)院, 上海 200093)
目前常用的機器人示教方式是通過示教器進行示教,但是示教器示教對示教人員的要求比較高,尤其對復(fù)雜工藝路線進行示教時,效率低下。拖動示教是通過人手直接拖動機器人完成目標路線,機器人對軌跡進行記憶而后復(fù)現(xiàn)的示教方式,又稱直接示教。拖動示教的方式操作簡單,而且容易實現(xiàn)復(fù)雜的工藝路線,對示教人員的要求較低。在拖動示教的過程中示教人員需要克服機器人的重力、摩擦力和慣性力等,良好的零力控制是拖動示教必不可少的核心技術(shù)之一。
拖動示教可以劃分為功率級脫離示教和伺服級接通示教[1]。由于工業(yè)機器人一般質(zhì)量較大,采用功率級脫離示教方式的話,示教人員操作難度大,因而工業(yè)機器人的拖動示教普遍采用伺服級接通示教[2-3]。
使機器人可以在外力的作用下運動,就好像機器人處在一個不受摩擦力和重力影響的環(huán)境下的控制就是機器人的零力控制[4]。
機器人零力控制的基礎(chǔ)是關(guān)節(jié)型機器人的動力學(xué)方程[5]:
(1)
伺服級接通示教方式下,目前比較常用的主要有以下2種實現(xiàn)方式:基于位置控制的零力控制和基于轉(zhuǎn)矩控制的零力控制。
如圖1控制框圖所示是基于位置控制的零力控制基本原理[6-7],該方法是將外力的大小及方向通過力傳感器和機器人控制器轉(zhuǎn)換為各關(guān)節(jié)電機對應(yīng)的位置指令。這種方法靈敏度高、系統(tǒng)穩(wěn)定性好,但是成本高,抗干擾能力差,系統(tǒng)比較復(fù)雜。
圖1 基于位置控制的零力控制原理圖Figure 1 Principle diagram of force-free control based on position control
如圖2所示是基于轉(zhuǎn)矩控制的零力控制技術(shù)控制框圖[2]11,該方法是計算出各關(guān)節(jié)所在部分的重力和摩擦力,通過控制各關(guān)節(jié)電機輸出對應(yīng)大小的力矩進行補償。該方法只對機械臂的重力及摩擦力做補償,不需要力傳感器,從而降低了制造成本和控制系統(tǒng)的復(fù)雜性。因受機器人慣性大小影響明顯,僅適用于結(jié)構(gòu)較小的機器人;同時由于弱化對位置環(huán)和速度環(huán)的控制,安全性系統(tǒng)設(shè)計難度較大。
圖2 基于轉(zhuǎn)矩控制的零力控制Figure 2 Principle diagram of force-free control based on torque control
課題組提出基于速度環(huán)補償?shù)牧懔刂颇P?,通過伺服電機的勵磁電力檢測獲得外部力(矩),而不使用力(矩)傳感器。通過計算得到各關(guān)節(jié)對應(yīng)的重力(矩)及摩擦力(矩),利用伺服控制器對各關(guān)節(jié)速度進行補償實現(xiàn)零力控制。該控制方法不僅繼承了力矩控制方法計算量小、系統(tǒng)簡潔的優(yōu)點,還通過對機器人速度環(huán)的控制降低了系統(tǒng)的安全性成本。
基于速度環(huán)補償?shù)牧懔刂颇P头娇驁D如圖3所示,Kp,Kv,Kτ分別為伺服電機的位置環(huán)、速度環(huán)以及力矩常數(shù);τf,τg,τF和τm分別為摩擦力矩、重力矩、外力矩和電機輸出力矩;cF為外力矩系數(shù)。
圖3 基于速度環(huán)補償?shù)牧懔刂艶igure 3 Force-free control based on speed loop compensation
根據(jù)式(1),在拖動示教過程中考慮外部力矩的作用,關(guān)節(jié)型機器人的動力學(xué)方程為:
(2)
根據(jù)圖3中的伺服電機方框圖得伺服電機的輸出力矩可表示為:
(3)
通過式(2)與式(3)可建立各關(guān)節(jié)的動力學(xué)方程與伺服電機控制器的關(guān)系如下:
(4)
通過式(4)可以確定控制器輸入轉(zhuǎn)角的公式:
(5)
又由(2)可得下式:
(6)
在拖動示教的過程中,拖動的速度一般比較緩慢,各關(guān)節(jié)的轉(zhuǎn)速一般小于額定轉(zhuǎn)速的1/5,故可將式(5)中的高階項視為零,在物理意義上表示不考慮其慣性力矩和科氏力矩,所以在拖動示教過程中,式(5)可以轉(zhuǎn)化為:
τF=τf+τg-τm。
(7)
將式(6)、式(7)代入式(5)可得:
(8)
以上確定了各關(guān)節(jié)輸出轉(zhuǎn)速的表達式。通過上述分析,基于速度環(huán)補償?shù)牧懔刂频目刂瓶驁D如圖4所示。
圖4 控制框圖Figure 4 Control block diagram
以如圖5所示的連桿機構(gòu)作為機器人簡化模型。圖中:I0,I1,I2分別代表對應(yīng)連桿的轉(zhuǎn)動慣量;l1,l2分別代表連桿的長度;m1,m2分別代表對應(yīng)連桿的質(zhì)量;g為重力加速度。
圖5 機器人簡化動力學(xué)模型Figure 5 Simplified dynamic model of robot
采用拉格朗日能量法對本課題組設(shè)計的機器人動力學(xué)方程進行推導(dǎo)[8],拉格朗日函數(shù)定義為:
L=K-P。
(9)
式中:L是拉格朗日函數(shù),K是動能,P是勢能。
所設(shè)計的機器人關(guān)節(jié)均為轉(zhuǎn)動關(guān)節(jié),所以有下式:
(10)
式中:Ti表示關(guān)節(jié)運動的所有力矩之和,θi為旋轉(zhuǎn)變量。
假設(shè)機器人簡化模型的質(zhì)心在連桿的中央可將該模型的動能K寫出:
(11)
系統(tǒng)的勢能P可表示為:
(12)
舍去各非線性耦合項,可解得慣性力矩M(q)為:
(13)
(14)
摩擦力項f(q)為:
(15)
其中摩擦力各項見下文。
本研究涉及的機器人使用黏性-庫倫摩擦力模型[9-11]。當電機速度為零時各關(guān)節(jié)所受到的是靜摩擦力,外部所施加的力必須先克服靜摩擦力才能夠使關(guān)節(jié)運動,此時需要克服的是黏性摩擦力。黏性-庫倫摩擦力公式如下:
(16)
式中:fv表示黏性摩擦力,B表示黏性摩擦因數(shù),fc表示庫倫摩擦力。其函數(shù)如圖6所示。
圖6 黏性-庫倫摩擦力函數(shù)模型Figure 6 Viscosity-Coulomb friction function model
圖中fs表示關(guān)節(jié)所受靜摩擦力值,fc表示動摩擦力中的庫倫力值,B表示動摩擦力中黏性摩擦因數(shù)值。關(guān)節(jié)運動存在正向與反向,所以圖中fs和fc有正負之分。
根據(jù)各關(guān)節(jié)的受力情況,本研究中的工業(yè)機器人的摩擦力項為:
(17)
通常情況下,人施加的拖動力都需要通過力矩傳感器進行測量和補償?shù)?。但是當伺服電機工作在位置模式時,電機輸出轉(zhuǎn)矩和電樞電流之間是存在著線性關(guān)系,因此可以利用電樞電流表示電磁轉(zhuǎn)矩進而實現(xiàn)力矩控制[12-13]。
Tm=Km·I。
(18)
式中:Tm表示電機輸出轉(zhuǎn)矩,Km表示轉(zhuǎn)矩常數(shù),I表示電樞電流。
在拖動示教中外部人手的拖動力作為關(guān)節(jié)的負載,負載可根據(jù)需求與電機旋轉(zhuǎn)方向同向或反向。與電機旋轉(zhuǎn)方向相反的負載比較常見,與電機旋轉(zhuǎn)方向相同的負載實現(xiàn)較為困難。本實驗選用2個伺服電機使其分別工作在轉(zhuǎn)矩模式和位置模式下,實現(xiàn)人手拖動力模擬。
轉(zhuǎn)矩模式下的伺服電機用于模擬外部力矩,通過調(diào)節(jié)外部直流穩(wěn)壓電源實現(xiàn)對轉(zhuǎn)矩模式下的伺服電機轉(zhuǎn)矩值的調(diào)節(jié)。實際輸出轉(zhuǎn)矩值可以通過伺服電機控制器的數(shù)碼管監(jiān)測。
位置模式下的伺服電機用于模擬關(guān)節(jié)電機,在受到外部轉(zhuǎn)矩的作用下,將相電流模擬量接入下位機的A/D轉(zhuǎn)換接口,下位機根據(jù)實時采集到的電流值完成反饋控制,圖7為單關(guān)節(jié)零力控制實驗臺的電機安裝示意圖。
圖7 單關(guān)節(jié)零力控制實驗的電機安裝示意圖Figure 7 Schematic diagram of motor installation for single joint force-free control experiment
本實險所使用的驅(qū)動器型號為RYH401F5-VV2,電機的具體參數(shù)如表1所示。
表1 單關(guān)節(jié)零力控制實驗的電機參數(shù)設(shè)定表
通過圖7 所示的單關(guān)節(jié)零力控制試驗臺完成的零力控制實驗結(jié)果如表2、表3所示。
表2 加載轉(zhuǎn)矩與關(guān)節(jié)外力電流
表2中加載轉(zhuǎn)矩是指通過調(diào)節(jié)直流穩(wěn)壓電源的值計算得出轉(zhuǎn)矩模式下伺服電機的理論輸出轉(zhuǎn)矩值;測量轉(zhuǎn)矩是指轉(zhuǎn)矩模式下伺服電機通過伺服電機控制器的數(shù)碼管觀測到的轉(zhuǎn)矩值;關(guān)節(jié)外力電流是指關(guān)節(jié)電機受到外力矩時的勵磁電流測量值;擬合力矩是指根據(jù)測量力矩擬合出的曲線所計算出的力矩值;擬合誤差是指擬合力矩值相對測量力矩的誤差百分比。
將表2中的加載轉(zhuǎn)矩與關(guān)節(jié)外力電流進行線性擬合,得到轉(zhuǎn)矩與關(guān)節(jié)外力電流的關(guān)系如圖8所示。
圖8 加載轉(zhuǎn)矩與關(guān)節(jié)勵磁電流關(guān)系Figure 8 Relationship between loading torque and joint excitation current
由圖8可知關(guān)節(jié)外力電流與測量轉(zhuǎn)矩具有良好的線性關(guān)系,雖然在轉(zhuǎn)矩較小時由于系統(tǒng)誤差、測量誤差等因素導(dǎo)致擬合誤差較大,但擬合差值的絕對數(shù)值很?。徊⑶耶敎y量轉(zhuǎn)矩超過0.6 N·m后擬合誤差不超過3%,在小型機器人系統(tǒng)中該誤差很容易被操作者克服,所以該誤差完全可以被接受,采用勵磁電流檢測進而表征伺服電機外部力矩值的方案是可行的。
當加載轉(zhuǎn)矩相同時,不同的轉(zhuǎn)速對應(yīng)不同的勵磁電流,測試結(jié)果如表3所示。
表3 關(guān)節(jié)電機外力電流隨轉(zhuǎn)速的變化
對表3中數(shù)據(jù)進行數(shù)據(jù)擬合,其結(jié)果如圖9所示。
根據(jù)圖9可知,圖中3條曲線分別是在不同外力矩作用下關(guān)節(jié)外力電流與轉(zhuǎn)速所擬合的,在轉(zhuǎn)速變化過程中關(guān)節(jié)外力電流存在明顯的極小值點,根據(jù)關(guān)節(jié)外力電流與外力矩的線性關(guān)系,認定該極小值點即為零力狀態(tài)。圖中還可以發(fā)現(xiàn)不同外力矩作用下,其零力狀態(tài)所對應(yīng)關(guān)節(jié)外力電流的擬合函數(shù)近似為常值函數(shù)。故在速度控制過程中,當電流達到極小值點時就認為達到零力狀態(tài)。
當人手施加力矩到關(guān)節(jié)電機希望電機加速時會受到較大的阻力,相當于電機負載增大電機電流也會增大,通過速度環(huán)調(diào)整電機轉(zhuǎn)速使電機電流達到零力狀態(tài),此時電機的負載達到極小,也就是人手感到的阻力達到極小,實現(xiàn)零力控制。
圖9 關(guān)節(jié)外力電流與轉(zhuǎn)速的關(guān)系Figure 9 Relationship between joint external force current and speed
課題組通過理論推導(dǎo)出基于速度環(huán)補償?shù)目刂圃恚辉O(shè)計了模擬人手拖動力和測量零力電流的實驗方法;并通過實驗驗證了拖動力與勵磁電流的線性關(guān)系,找到了關(guān)節(jié)電機所對應(yīng)的零力電流;該零力電流是閉環(huán)控制的重要調(diào)節(jié)依據(jù)。課題組所提出的基于速度環(huán)補償?shù)牧懔刂品椒ê雎粤丝剖狭睾蛻T性力矩,因此只適用于質(zhì)量較小的機械臂的零力控制。另外本研究只驗證了基于速度環(huán)補償?shù)牧懔刂品椒ǖ目尚行?,之后將對其控制效果進行研究。