https://blog.csdn.net/m0_37140588/article/details/79760789
1.處理器
(確定每個關節應該動多少,多遠)==>控制器(發信號使得驅動器到某個關節的指定角度)
2.六自由度解釋
除了空間內的三個坐標數據(確定位置xyz),還需要確定所選點的姿態,所以需要六個自由度才能達到空間的任意位置,例如五自由度,能繞三個軸轉動但只能沿着xy軸平移,5自由度可以指定姿態但只能沿着xy軸,不能沿着z軸給部件定位。而7自由度系統無唯一解
3.坐標
機器人的構型通常由於其坐標系來確定,3P,PRP,P2R是因為其關節類型不同,RSP轉動、球型、滑動型
參考坐標系只是說明了三種不同參考坐標系:
一全局參考坐標系(機械臂同時協調運動)
二是關節參考坐標系(各個坐標獨立運動)
三是工具參考坐標系,隨着工具方向的不同兩次沿着工具坐標系的n軸移動相同距離,在全局空間內也是不同的
4.示教模式
機器人各個關節隨示教桿運動,到達期望姿態,位姿信息送入控制器。示教過程中,控制器控制各關節達到到相同位姿,常用於點對點控制,只能保證到達示教點。連續示教則是動作連續采樣
5.工作空間
機器人能達到的點的集合,和機器人構型、連桿以及腕關節有關,不同構型的機械臂正逆運動學不同
6.機器人位置運動學
利用矩陣建立物體、位置、姿態及運動的表示方法,然后研究直角坐標型,圓柱形以及球型等不同機器人的正逆運動學,最后用D-H法推到機器人的正逆運動學方程。 沒有確定末端執行器長度的機械手型機器人(假設末端是一個平板面),只能根據端面的位姿來計算關節值。斷面的位姿可能與用戶感受到的位姿有可能不同。
7.機器人的矩陣表示
需要知道物體坐標原點在參考坐標系中的位置,以及物體坐標系關於這三個參考坐標軸的姿態,因此總共需要6條獨立信息來描述。
8.齊次變換矩陣
主要是因為許多不同順序的矩陣乘在一起得到機器人運動學方程,所以需要方陣,
如果既要表示姿態又要表示位置,在矩陣中加入比例因子使得成為4*4方陣,指標是姿態去掉比例因子得到3*3方陣。這種形式的稱之為齊次變換矩陣。
9.復合變換
然后學習純繞軸運動(相對於參考坐標系),主要是乘以角度不同的繞軸,XYZ(左乘 在原來相對於參考坐標系左邊,然后來了在變換矩陣的左邊乘)
相對於旋轉坐標系, (右乘 在原來相對於參考坐標系左邊,然后來了在變換矩陣的右邊乘)
10。變換矩陣的逆
如果矩陣可逆,那么它的逆矩陣和它的伴隨矩陣之間只差一個系數
矩陣行列式的值,去掉一行,取出某個元素,將原始矩陣去除該元素所在的行和列,得到新的矩陣,使該元素與新矩陣的行列式相乘就,最后將一行的所有乘積相加即可。
伴隨矩陣對於三階矩陣
a11 a12 a13
a21 a22 a23
a31 a32 a33
首先求出 各代數余子式
A11 = (-1)^2 * (a22 * a33 - a23 * a32) = a22 * a33 - a23 * a32
A12 = (-1)^3 * (a21 * a33 - a23 * a31) = -a21 * a33 + a23 * a31
A13 = (-1)^4 * (a21 * a32 - a22 * a31) = a21 * a32 - a22 * a31
A21 = (-1)^3 * (a12 * a33 - a13 * a32) = -a12 * a33 + a13 * a32
……
A33 = (-1)^6 * (a11 * a22 - a12 * a21) = a11 * a22 - a12 * a21
然后伴隨矩陣就是
A11 A12 A13
A21 A22 A23
A31 A32 A33
變換矩陣的逆的算法①計算矩陣行列式②轉置③求轉置后的伴隨矩陣④伴隨矩陣除以行列式
11. 3*3和4*4的區別
3*3只包含位置,計算矩陣的逆就是將矩陣轉置,只有旋轉矩陣才是酉矩
4*4求逆可分為兩個部分矩陣的旋轉部分式酉矩陣,可以轉置;未知部分式向量與旋轉坐標系的點積
12.機器人的正逆運動學
已知連桿,關節角。需要在物體上固連一個坐標系,然后描述該坐標系的原點位置和三個軸的姿態,總共需要6個自由度或者六條信息來完整地定義該物體的位姿。
13.不同構型的關節的求解
直角坐標,圓柱坐標,球型坐標,不同構型的求解方法不盡相同,不過直角坐標系需要對位姿帶來的旋轉做角度解耦合,圓柱坐標系也需要解耦合,不過有繞a軸的旋轉角,仍然平行於z軸,所以求出的角為累加上a軸旋轉角之后的
14.位置*姿態 與D-H模型
位置*姿態建立模型更快,但是對於不同構型的機械臂,構建模型不同。
D-H模型與機器人結構順序,復雜程度無關,微分運動學,雅可比分析,動力學分析以及力分析都是基於D-H表示法所獲得的結果。
15 D-H
每個關節指定一個本地參考坐標系,指定一個z軸和x軸。z軸在關節處,而x軸的 選取通常在兩個關節的公垂線里,(關節不一定平行或者相交)如果定義an表示Zn-1與Zn之間的公垂線,則定義Xn的方向為沿an的方向。關節n處的z軸編號為n-1(關節z軸平行)挑選與前一關節的公垂線共線的一條公垂線(關節z軸相交)選取兩條z軸的叉積方向(Xn+1為Zn叉乘Zn+1),向量叉積如圖所示,解釋向量a,b在同一個平面內
對於旋轉關節,繞z軸旋轉的旋轉角θ是關節變量;對於滑動關節,沿z軸的連桿長度d是關節變量。--其中θ為繞着z軸的旋轉角度, d表示相鄰公垂線之間的距離(關節偏移量)a表示公垂線的長度(連桿長度)α表示相鄰兩個z軸之間的角度(扭角)
在《機器人學導論》P58有這樣一段話,描述了四個變量感覺不錯
注意:坐標系0是固定不動的,機器人都是相對它而運動的。
D-H模型超好的一個視頻(此視頻需要翻牆)
http://blog.cavedu.com/2009/11/14/%e5%bd%b1%e7%89%87-%e5%b0%87%e6%a9%9f%e5%99%a8%e6%89%8b%e8%87%82d-h%e8%bd%89%e6%8f%9b%e7%9f%a9%e9%99%a3%e5%8f%83%e6%95%b8%e8%a7%a3%e9%87%8b%e5%be%88%e6%b8%85%e6%a5%9a%e7%9a%84%e5%bd%b1%e7%89%87/
中英文翻譯如下(字幕中)
D-H parameters define the motion of actuators connected by rigid links,
z axis points along of rotation,
or axis of translation for a prismatic joint,
x axis for base frame is a free choice,
constrained for subsequent joints,
y axis is now constrained to complete right-handed coordinate frame
now let us add the next joint,
again, the z axis is defined by the axis of actuation,
D-H parameters are derived from common normal between consecutive z axes,
new x axis is colinear with common normal, with origin at intersection with new z,
notice the origin is not at the center of the actuator.the origin may be in "open sapce",
with these joint axes,four parameters specify the joint-to-joint transformation :d,r,θ,α
d is the depth along the previous joint's z axis
θ is the angle about the previous z to align its x with the new origin
r is the distance along the rotated x axis
alternatively,radius of rotation about previous z
finally,α rotates about the new x axis to put z in its desired orientation
special case :parallel z axes
parallel z axes have an infinite number of common normals,thus d is a free parameter
choose any convenient d,other parameters determied as before
now you know how to lay out D-H parameters
翻譯;D-H參數定義了由剛性連桿連接的執行機構的運動,
沿着旋轉的z軸點,
或棱鏡接頭的平移軸線,
基准框架的x軸是一個自由選擇,
受后續關節限制,
y軸現在被限制為完整的右手坐標系
現在讓我們添加下一個聯合,
再次,z軸由致動軸限定,
D-H參數是從連續z軸之間的公共法線導出的,
新的x軸與共同的法線共線,原點與新的z相交,
請注意,原點不在執行機構的中心。原點可能處於“開放式”狀態,
利用這些關節軸,四個參數指定關節到關節的變換:d,r,θ,α
d是沿着前一個關節的z軸的深度
θ是關於前一個z的角度,以便將x與新原點對齊
r是沿着旋轉的x軸的距離
或者,關於前一個z的旋轉半徑
最后,α圍繞新的x軸旋轉以將z置於其期望的方向
特殊情況:平行z軸
平行z軸具有無限數量的常用法線,因此d是一個自由參數
選擇任何方便的d,其他參數與以前一樣確定
現在你知道如何布置D-H參數
16.退化問題
(1)到達物理空間極限不能進一步運動
(2)兩個相似關節共線
17.靈巧
不靈巧區域:接近工作空間極限時,機械臂能達到定位在期望點上,卻不能達到期望的位姿。
18.雅可比矩陣的計算
位置的求導,將建立關節運動與手運動之間的聯系。
19.運動學和力學
只要確定機器人關節變量就能根據其運動方程確定機器人的位置,或者已知機器人的期望位姿就能確定相應關節變量和速度。
20.運動規划、路徑規划、軌跡規划的聯系與區別?
運動規划由路徑規划和軌跡規划(時間)組成,連接起點位置和終點位置的序列點或曲線稱之為路徑,構成路徑的策略稱之為路徑規划。
軌跡規划與何時達到路徑中的每個部分有關,強調時間性。從一個點到一個點,路徑是一樣的,而經過路徑的每個部分的快慢不同,軌跡也就不同。相當於路徑規划后,需要加入時間量使得完成軌跡規划。
路徑是機器人位姿的一定序列,而不考慮機器人位姿參數隨時間變化的因素。路徑規划(一般指位置規划)是找到一系列要經過的路徑點,路徑點是空間中的位置或關節角度,而軌跡規划是賦予路徑時間信息。
運動規划(又稱運動插補)是在給定的路徑端點之間插入用於控制的中間點序列從而實現沿給定的平穩運動。
運動控制則是主要解決如何控制目標系統准確跟蹤指令軌跡的問題。即對於給定的指令軌跡,選擇適合的控制算法和參數,產生輸出,控制目標實時,准確地跟蹤給定的指令軌跡。
Att:路徑規划的目標是使路徑與障礙物的距離盡量遠同時路徑的長度盡量短(問:無視覺融入,如何做到離障礙物遠);軌跡規划的目標主要是機器人關節空間移動中使得機器人的運行時間盡可能短,或者能量盡可能小。軌跡規划在路徑規划的基礎上加入時間序列信息,對機器人執行任務時的速度與加速度進行規划,以滿足光滑性和速度可控性等要求
全局路徑規划將全局目標分解為局部目標,再由局部規划實現局部目標,方法有可視圖法、環境分割法(自由空間法、柵格法)等。局部路徑規划主要解決機器人定位和路徑跟蹤問題,方法有人工勢場法、模糊邏輯法等。
21.關節空間與直角坐標空間的描述
考慮一個多自由度機器人從空間位置A點移項B項,利用機器人逆運動學方程,可以計算車機器人達到新位置時關節的總位移,機器人控制器利用所計算的關節值驅動機器人達到新的關節值,從而使機器人手臂運動到新的位置。采用關節量來描述機器人的運動稱為關節空間描述。這種情形下,最終將機器人移動到期望位置,但機器人在A點B點之間的位置不可預知。
假設在AB之間畫一個直線,希望機器人沿直線運動,需將直線的點分為許多小段,求得每個中間點,在每個中間點求解逆運動學方程,計算一系列關節量,然后由控制器驅動關節到達下一個目標點
22.關節空間與直角坐標空間的問題
直角坐標空間,一 計算量大 ;二 難以確保不存在奇異點(穿過自身,軌跡在工作空間之外),關節值發生突變;
原因:無法事先得到其位姿
解決方法:可以指定機器人必須通過的中間點來避開障礙物和其他奇異點(示教機器人可以,固定動作也可以)
23.自由度關節機器人非歸一化和歸一化運動
非歸一化:從A到B每個關節都是以最大角速度運行,這樣其兩臂到達目標位置的時間不同,手臂末端走過的距離也是不均勻的
歸一化:使得運動范圍在叫囂關節空間成比例的減慢,從而使得兩個關節能同時開始和結束。
24.軌跡規划需注意的點
知道關節的加速度,知道最大的角速度;不能很快達到既定速度,可以分路徑段設定不同的精度
25.多點軌跡規划
所有的中間運動段都可以采用過度的方式平滑連接在一起。需要注意的是,由於采用了平滑過渡曲線,機器人經過原來不可能經過的點,所以機器人經過的可能不是原來的點,所以要精確經過那個點,可以事先設定一個不同的點,使得平滑后的點正好經過必須要精確經過的點。
26.關節空間內軌跡規划
軌跡規划給定點均為關節量而非直角坐標量。一種方法是使用多次多項式
開始的角度Φ1和時間t1,結束角度Φ2和時間t2,機器人開始和結束時的速度。三次多項式能用於產生每個關節的運動軌跡。(位置和速度是連續的,加速度不連續)
開始的角度Φ1和時間t1,結束角度Φ2和時間t2,機器人開始和結束時的速度,加速度。
27.拋物線過渡的線性段
讓機器人以恆定的速度在起點和中點位置之間運動,一次多項式,(原因)速度是常數,加速度為0
28.關節空間其他軌跡規划
棒棒函數軌跡、加速度曲線為方形或者梯形函數軌跡以及爭先函數軌跡等。
29.直角空間坐標系軌跡規划
所謂軌跡、是指操作臂在運動過程中的位移、速度和加速度。而軌跡規划是根據作業任務的要求,計算出預期的運動軌跡。
對於關節空間的軌跡規划,規划函數生成的值就是關節值,直角坐標空間軌跡規划函數生成的值就是機器人末端手的位姿,他們需要求解逆運動方程才能轉化為關節量。
(1)將時間增加一個增量t=t+Δt(2)利用所選軌跡函數計算出手的位姿(3)利用機器人逆運動學方程計算對應手位姿的關節量(4)將關節信息傳遞給控制器(5)返回到循環開始
30.關節空間和直角空間
軌跡規划既可在關節空間也可在直角空間中進行,但是做規划的軌跡函數都必須連續和平滑,使得操作臂的運動平穩。在關節空間進行規划時,是將關節變量表示成為時間的函數,並規划它的一階和二階時間導數;在直角空間進行規划是指將手部位姿、速度和加速度表示為時間的函數。而相應的關節位移、速度和加速度由手部的信息導出。通常通過運動學反解得出關節位移,用逆雅克比求出關節速度,用逆雅克比及其導數求解關節加速度。
31.關節空間進行規划
在關節空間進行規划時,大量工作是對關節邊路的插值運算。
關節軌跡的插值:為了求得在關節空間形成所要求的軌跡,首先運用運動學反解將路徑點轉換成關節矢量角度值,然后對每個關節擬合一個光滑函數,使之從起始點開始,依次通過所有路徑點,最后到達目標點。對於每一段路徑,各個關節運動時間均相同,這樣保證所有關節同時到達路徑點和終止點,從而得到工具坐標系應有的位置和姿態。但是,盡管每個關節在同一段路徑中的運動時間相同,各個關節函數之間卻是相互獨立的。
總之,關節空間法是以關節角度的函數來描述機器人的軌跡的,關節空間法不必在直角坐標系中描述兩個路徑點之間的路徑形狀,計算簡單,容易。再者,由於關節空間與直角坐標空間之間不是連續的對應關系,因而不會發生機構的奇異性問題。
在關節空間中進行軌跡規划,需要給定機器人在起始點、終止點手臂的形位。對關節進行插值時,應滿足一系列約束條件。在滿足所有約束條件下,可以選取不同類型的關節插值函數,生成不同的軌跡。插值方法有:
1、三次多項式插值;2、過路徑點的三次多項式插值;3、高階多項式插值;4、用拋物線過渡的線性插值;5、過路徑點的用拋物線過渡的線性插值。
32.笛卡爾空間坐標系
笛卡爾空間規划法:
一、物體對象的描述
相對於固接坐標系,物體上任一點用相應的位置矢量表示,任一方向用方向余弦表示,給出物體的幾何圖形及固接坐標系后,只要規定固接坐標系的位姿,便可重構該物體。
二、作業的描述
在這種軌跡規划系統中,作業是用操作臂終端抓手位姿的笛卡爾坐標結點序列規定的,因此,結點是指表示抓手位姿的齊次變換矩陣。相應的關節變量可用運動學反解程序計算。
三、兩個結點之間的“直線”運動
操作臂在完成作業時,抓手的位姿可以用一系列結點P來表示。因此,在直角坐標空間中進行軌跡規划的首要問題是由兩結點pi和pi+1所定義的路徑起點和終點之間,如何生成一系列中間點。兩結點間最簡單的路徑是在空間的一個直線移動和繞某軸的轉動。若運動時間給定之后,則可產生一個使線速度和角速度受控的運動。
四、兩段路徑之間的過渡
為了避免兩段路徑銜接點處速度不連續,當由一段軌跡過渡到下一段軌跡時,需要加速或減速。
五、運動學反解的有關問題
主要是笛卡爾路徑上解的存在性(路徑點都在工作空間之內與否)、唯一性和奇異性。
1、 第一類問題:中間點在工作空間之外。在關節空間中進行規划不會出現這類問題。
2、 第二類問題:在奇異點附近關節速度激增。想PUMA這類機器人具有兩種奇異點:工作空間邊界奇異點和工作空間內部的奇異點。在處於奇異位姿時,與操作速度(笛卡爾空間速度)相對應的關節速度可能不存在(無限大)。可以想象,當沿笛卡爾空間的直線路徑運動到奇異點附近時,某些關節速度將會趨於無限大。實際上,所容許的關機速度是有限的,因而會導致操作臂偏離預期軌跡。
3、 第三類問題:起始點和目標點有多重解。問題在於起始點與目標點若不用同一個反解(不理解),這時關節變量的約束和障礙約束便會產生問題。
正因為笛卡爾空間軌跡存在這些問題,現有的多數工業機器人的控制系統具有關節空間和笛卡爾空間的軌跡生成方法。用戶通常使用關節空間法,只是在必要時,才采用笛卡爾空間方法。
33.運動規划的評價標准
完備性(complete): 利用該算法,在有限時間內能解決所有有解問題;
最優性(optimality): 利用該算法,能找到最優路徑(距離最短、耗時最小、耗能最少等)
34.為什么要用IK
對於機械臂,目標是終端空間位置(xyz), 但采樣空間卻是關節空間(q0,q1,...qN)。有了IK之后,我們就可以把三維空間的目標p轉化為關節空間的目標q。那么這樣就會讓采樣算法能算的更快,具體方法不贅述,這樣的算法有RRT-Connect,BKPIECE等等雙向采樣算法。
機器人軌跡規划(熊友倫)特別鏈接:https://blog.csdn.net/weixin_28900531/article/details/79431055
---------------------
作者:小球球_大肚腩
來源:CSDN
原文:https://blog.csdn.net/m0_37140588/article/details/79760789
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
