技術(shù)領(lǐng)域
[0001] 本
發(fā)明屬于機(jī)器人運(yùn)動控制領(lǐng)域,具體涉及一種基于空間向量法的
工業(yè)機(jī)器人運(yùn)動學(xué)參數(shù)獲取及校驗(yàn)方法。
背景技術(shù)
[0002] 目前工業(yè)機(jī)器人得到了廣泛的應(yīng)用,在機(jī)器人的運(yùn)動控制中,
機(jī)器人運(yùn)動學(xué)參數(shù)的獲取是研究機(jī)器人控制及運(yùn)動的
基礎(chǔ)。一般而言,廠商不會提供機(jī)器人的DH參數(shù),這使得工業(yè)機(jī)器人在實(shí)際使用時(shí)存在著一些限制。文獻(xiàn)“機(jī)器人學(xué)(第三版),清華大學(xué)出版社,2016.3,p35-74”給出了一種通用的機(jī)器人
連桿坐標(biāo)系及參數(shù)定義方法,用于描述機(jī)器人各關(guān)節(jié)間的運(yùn)動關(guān)系,該方法于1955年Denavit和Hartenberg首次提出,被稱為DH參數(shù)法,該方法或者其改進(jìn)方法在機(jī)器人研究中得到了廣泛的應(yīng)用。
[0003] 文獻(xiàn)“
申請公布號CN102445923A”公開了一種工業(yè)機(jī)器人運(yùn)動學(xué)參數(shù)快速低成本標(biāo)定裝置及其方法,包括2個(gè)及以上
位置敏感器件PSD、
信號處理
電路、信號采集卡、可充電
電池、無線數(shù)字通訊傳輸及接收卡、
工業(yè)控制計(jì)算機(jī)、基于兩個(gè)位置關(guān)系已知的PSD作為反饋器件,以不同
姿態(tài)的
激光束多次分別投射在兩個(gè)PSD表面中心點(diǎn),建立約束優(yōu)化目標(biāo)函數(shù)能夠標(biāo)定工業(yè)機(jī)器人的運(yùn)動學(xué)參數(shù),主要包含桿件長度、桿件扭
角、關(guān)節(jié)長度以及關(guān)節(jié)轉(zhuǎn)角零位。文獻(xiàn)所描述的方法需要一整套的
硬件設(shè)備及對標(biāo)定場地有著一定要求,同時(shí)需要具備專業(yè)技術(shù)知識人員才能加以操作。對于大多數(shù)的教學(xué)或者簡單研究,特別是非精細(xì)加工操作場景使用中,成本較大,同時(shí)隨著桌面級和消費(fèi)級的工業(yè)機(jī)器人的推廣,機(jī)器人的采購成本大大下降,對于個(gè)人購買者而言,文獻(xiàn)方法顯得復(fù)雜且昂貴。
發(fā)明內(nèi)容
[0004] 為了克服現(xiàn)有工業(yè)機(jī)器人運(yùn)動學(xué)參數(shù)獲取方法實(shí)用性差的不足,本發(fā)明提供一種基于空間向量法的工業(yè)機(jī)器人運(yùn)動學(xué)參數(shù)獲取及校驗(yàn)方法。該方法從工業(yè)機(jī)器人的3D模型中提取關(guān)鍵點(diǎn)坐標(biāo),利用空間向量法求解得到工業(yè)機(jī)器人DH參數(shù),對所得到的DH參數(shù)進(jìn)行校驗(yàn)。由于利用工業(yè)機(jī)器人廠商提供的機(jī)器人3D模型求解機(jī)器人運(yùn)動學(xué)參數(shù),無需任何硬件設(shè)備及相關(guān)成本,同時(shí)不要求操作人員掌握專業(yè)的運(yùn)動學(xué)參數(shù)標(biāo)定方法,利用3D建模
軟件即可求得機(jī)器人運(yùn)動學(xué)參數(shù),減少了傳統(tǒng)標(biāo)定方法的
時(shí)空復(fù)雜度,硬件成本低,實(shí)用性好。
[0005] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案:一種基于空間向量法的工業(yè)機(jī)器人運(yùn)動學(xué)參數(shù)獲取及校驗(yàn)方法,其特點(diǎn)是包括以下步驟:
[0006] 步驟一、建立機(jī)器人各關(guān)節(jié)軸連桿的坐標(biāo)系,并畫出它們的延長線,在關(guān)節(jié)i上,沿軸線建立坐標(biāo)軸zi,正方向任意;做關(guān)節(jié)軸i和關(guān)節(jié)軸i+1的公垂線,公垂線與軸線交點(diǎn)為第i個(gè)坐標(biāo)系原點(diǎn),坐標(biāo)軸xi由坐標(biāo)系i的原點(diǎn)沿公垂線由i指向i+1;坐標(biāo)軸yi根據(jù)右手法則確定。
[0007] 步驟二、借助3D建模軟件從工業(yè)機(jī)器人的3D模型中的每一個(gè)關(guān)節(jié)軸上各獲取兩個(gè)點(diǎn)的坐標(biāo),利用3D建模軟件捕獲關(guān)節(jié)軸的截面圓圓心來獲得。每個(gè)關(guān)節(jié)軸上所提取兩個(gè)點(diǎn)作為關(guān)鍵點(diǎn),沿著
機(jī)械臂基座到末端的順序分別記為:
[0008] ai=(aix,aiy,aiz),bi=(bix,biy,biz)???????????????(1)
[0009] 步驟三、求取連桿長度ai,關(guān)鍵點(diǎn)坐標(biāo)求各關(guān)節(jié)的軸線zi方向向量,記關(guān)節(jié)軸i,i+1的公垂線為ni=zi×zi+1,得到連桿長度表達(dá)式
[0010]
[0011] 步驟四、求取連桿扭角αi,sgn()為符號函數(shù),則
[0012]
[0013] 步驟五、求取連桿夾角θi,記xi軸的矢量為xi=sgn((ai+1-ai)·ni)·ni,則[0014]
[0015] 步驟六、求取連桿距離di,由于di為沿zi軸從xi-1移動到xi的距離,首先求出連桿坐標(biāo)系{i-1}和{i}的原點(diǎn)坐標(biāo)Oi-1和Oi。Oi為關(guān)節(jié)軸i和關(guān)節(jié)軸i+1的公垂線和關(guān)節(jié)軸i的交點(diǎn),則設(shè)Oi=ai+m1·zi,公垂線與關(guān)節(jié)軸i+1的交點(diǎn)為Oi'=ai+1+m2·zi+1,求|Oi-Oi′|取最小時(shí)的m1,代入Oi=ai+m1·zi解得Oi。根據(jù)解出的Oi-1和Oi的坐標(biāo),求得di,
[0016]
[0017] 步驟七、求取機(jī)器人齊次矩陣 根據(jù)求解的機(jī)器人運(yùn)動學(xué)參數(shù),連桿長度ai、連桿扭角αi、連桿夾角θi以及連桿夾角θi,機(jī)器人齊次變換矩陣 由相鄰連桿坐標(biāo)系間的齊次變換矩陣 順序連乘求得,則
[0018]
[0019]
[0020] 其中,p=[px,py,pz]T為末端坐標(biāo)系原點(diǎn)在參考坐標(biāo)系中的坐標(biāo),n=[nx,ny,nz]T、o=[ox,oy,oz]T、a=[ax,ay,az]T分別為末端坐標(biāo)系的x、y、z軸在參考坐標(biāo)系中的單位矢量。
[0021] 步驟八、求取機(jī)器人齊次矩陣 與實(shí)際機(jī)器人齊次矩陣 之間的誤差,用位置誤差A(yù)和姿態(tài)誤差B表征,則
[0022]
[0023]
[0024] 姿態(tài)誤差B用通用旋轉(zhuǎn)變換的方法來描述, 對應(yīng)的姿態(tài)繞著一單位矢量f旋轉(zhuǎn)β到達(dá)另一姿態(tài),旋轉(zhuǎn)角β即為姿態(tài)誤差,記通用旋轉(zhuǎn)變換矩陣為Rot(f,β)[0025]
[0026]
[0027]
[0028] 本發(fā)明的有益效果是:該方法從工業(yè)機(jī)器人的3D模型中提取關(guān)鍵點(diǎn)坐標(biāo),利用空間向量法求解得到工業(yè)機(jī)器人DH參數(shù),對所得到的DH參數(shù)進(jìn)行校驗(yàn)。由于利用工業(yè)機(jī)器人廠商提供的機(jī)器人3D模型求解機(jī)器人運(yùn)動學(xué)參數(shù),無需任何硬件設(shè)備及相關(guān)成本,同時(shí)不要求操作人員掌握專業(yè)的運(yùn)動學(xué)參數(shù)標(biāo)定方法,利用3D建模軟件即可求得機(jī)器人運(yùn)動學(xué)參數(shù),減少了傳統(tǒng)標(biāo)定方法的時(shí)空復(fù)雜度,硬件成本低,實(shí)用性好。
[0029] 下面結(jié)合
附圖和具體實(shí)施方式對本發(fā)明作詳細(xì)說明。
附圖說明
[0030] 圖1是本發(fā)明基于空間向量法的工業(yè)機(jī)器人運(yùn)動學(xué)參數(shù)獲取及校驗(yàn)方法的
流程圖。
[0031] 圖2是本發(fā)明方法
實(shí)施例中IRB14000機(jī)器人右機(jī)械臂關(guān)節(jié)示意圖。
[0032] 圖3是本發(fā)明方法實(shí)施例中單個(gè)關(guān)節(jié)連桿坐標(biāo)系建立方法示意圖。
[0033] 圖4是本發(fā)明方法實(shí)施例中IRB14000機(jī)器人右機(jī)械臂連桿坐標(biāo)系示意圖。
[0034] 圖5是圖2中關(guān)節(jié)1的關(guān)鍵點(diǎn)示意圖。
具體實(shí)施方式
[0035] 參照圖1-5。本發(fā)明實(shí)施對象為ABB機(jī)器人公司生產(chǎn)的IRB14000型機(jī)器人,基于空間向量法的工業(yè)機(jī)器人運(yùn)動學(xué)參數(shù)獲取及校驗(yàn)方法具體步驟如下:
[0036] 1、坐標(biāo)系建立。
[0037] 連桿坐標(biāo)系按以下步驟確定:機(jī)器人的各關(guān)節(jié)軸,并畫出它們的延長線,在關(guān)節(jié)i上,沿軸線建立坐標(biāo)軸zi,正方向任意;做關(guān)節(jié)軸i和關(guān)節(jié)軸i+1的公垂線,公垂線與軸線交點(diǎn)為坐標(biāo)系原點(diǎn),坐標(biāo)軸xi由坐標(biāo)系i的原點(diǎn)沿公垂線由i指向i+1;坐標(biāo)軸yi根據(jù)右手法則確定。圖3是單個(gè)關(guān)節(jié)連桿坐標(biāo)系建立方法示意圖。由于IRB14000左右臂為對稱結(jié)構(gòu),這里建立右機(jī)械臂的連桿坐標(biāo)系,圖4為IRB14000右機(jī)械臂建立的連桿坐標(biāo)系示意圖。
[0038] 2、關(guān)鍵點(diǎn)獲取。
[0039] 以關(guān)節(jié)1為例,沿關(guān)節(jié)1上的軸1,取軸1與關(guān)節(jié)1的交點(diǎn)為a1=(a1x,a1y,a1z),同時(shí)在延長線上取出b1=(b1x,b1y,b1z),可按照相同的方法在軸2上提取a2=(a2x,a2y,a2z)和b2=(b2x,b2y,b2z)。其他關(guān)節(jié)軸的處理方法類似,圖5為關(guān)節(jié)1上的關(guān)鍵點(diǎn)示意圖。
[0040] 3、連桿長度ai。
[0041] 根據(jù)所提取點(diǎn)的坐標(biāo)得到各關(guān)節(jié)軸線即zi軸的方向向量 記關(guān)節(jié)軸i和關(guān)節(jié)軸i+1的公垂線為ni=zi×zi+1,則
[0042] 4、連桿扭角αi。
[0043] 其中sgn()符號函數(shù)。
[0044] 5、連桿夾角θi。
[0045] xi軸矢量為xi=sgn((ai+1-ai)·ni)·ni,則
[0046]
[0047] 6、連桿距離di。
[0048] 由于IRB14000右機(jī)械臂的所有連桿扭角αi均為±90°,可按照 進(jìn)行計(jì)算。到此完成機(jī)器人運(yùn)動學(xué)參數(shù)的求取工作,結(jié)果如下:
[0049]連桿i 變量θi(°) αi-1(°) ai-1(mm) di(mm)
1 0 0 0 0
2 180 -90 30 0
3 0 -90 30 251.5
4 90 90 40.5 0
5 180 90 40.5 265
6 180 90 27 0
7 180 90 27 36
[0050] 7、校驗(yàn)機(jī)器人運(yùn)動學(xué)參數(shù)。
[0051] 利用機(jī)器人正運(yùn)動學(xué)和求取的機(jī)器人運(yùn)動學(xué)參數(shù)求取表征機(jī)器人末端
位姿的變換矩陣,又稱機(jī)器人齊次矩陣。
[0052] 根據(jù)相鄰連桿坐標(biāo)系i、i+1之間的齊次變換矩陣:
[0053]
[0054] 可以得到坐標(biāo)系{7}相對于坐標(biāo)系{0}的關(guān)系 為 坐標(biāo)系{0}相對基座存在 的固定變換,因此IRB14000右機(jī)械臂由末端到機(jī)器人基座的齊次矩陣為 帶入?yún)?shù)求解得
[0055]
[0056] 式中,O0表示坐標(biāo)系{0}的原點(diǎn)在基坐標(biāo)系中的坐標(biāo),x0、y0、z0分別為坐標(biāo)系{0}的三個(gè)坐標(biāo)軸在基坐標(biāo)系中的向量表示。
[0057] 機(jī)器人末端相對于基座的關(guān)系也可表示為
[0058] 其中,p=[px,py,pz]T為末端坐標(biāo)系原點(diǎn)在基坐標(biāo)系中的坐標(biāo),n=[nx,ny,nz]T、o=[ox,oy,oz]T、a=[ax,ay,az]T分別為末端坐標(biāo)系的x、y、z軸在基坐標(biāo)系中的單位矢量。應(yīng)用ABB機(jī)器人公司的官方控制仿真軟件RobotStudio,可以得到IRB14000右機(jī)械臂的“1-2-3”變換順序的RPY角變換所得姿態(tài),相應(yīng)的三個(gè)RPY角ψ,θ,φ與 的關(guān)系為
[0059]
[0060]
[0061] 根據(jù)關(guān)節(jié)角的正向運(yùn)動學(xué)計(jì)算得到一組末端位姿向量(px,px,px,ψ,θ,φ)和末端位姿矩陣 由RobotStudio中的同樣關(guān)節(jié)角時(shí)的位姿向量(px',py',pz',ψ',θ',φ')可以計(jì)算到末端位姿矩陣 記為
[0062]
[0063] 可得位置誤差為 姿態(tài)誤差B通用旋轉(zhuǎn)變換的方法表示為
[0064] 其中
[0065]
[0066] 取六組關(guān)節(jié)角計(jì)算機(jī)器人末端位姿作對比,用于校驗(yàn)機(jī)器人的運(yùn)動學(xué)參數(shù),結(jié)果如下:
[0067]
[0068] 利用本實(shí)施例計(jì)算得到的運(yùn)動學(xué)參數(shù)代入正向運(yùn)動學(xué),所計(jì)算得到的結(jié)果與RobotStudio中的數(shù)據(jù)相比位置誤差小于0.2mm,姿態(tài)誤差小于0.05°,而IRB14000機(jī)器人經(jīng)校準(zhǔn)后末端坐標(biāo)系
精度為1mm左右,足夠滿足日常教學(xué)及科研應(yīng)用。