当前位置:网站首页>DH parameters of robotics and derivation using MATLAB symbolic operation
DH parameters of robotics and derivation using MATLAB symbolic operation
2022-06-28 04:55:00 【subtitle_】
introduction
Reviewed robotics again DH Parameters , And make use of matlab Symbolic operation is derived , The formula is verified .
1.DH Parameter principle
In the picture Coordinate system definition :
- Coordinate system i {i} i Of z z z Axis z i z_i zi And joint axis i i i Collinear , Point to any regulation .
- Coordinate system i {i} i Of x x x Axis x i x_i xi and a i a_i ai coincidence , By joint i i i Point to the joint i + 1 i+1 i+1, When a i = 0 a_i=0 ai=0, take x i = ± z i + 1 × z i x_i=±z_{i+1}\times z_i xi=±zi+1×zi.
- Coordinate system i {i} i Of y y y Axis y i y_i yi According to the right-hand rule .
- Coordinate system i {i} i The origin of o i o_i oi Take from x i x_i xi and z i z_i zi At the intersection of ; When z i z_i zi and z i + z_{i+} zi+ When we meet , The origin is at the intersection of the two axes , When z i z_i zi and z i + z_{i+} zi+ Parallel time , Take the origin to make d i + 1 = 0 d_{i+1}=0 di+1=0 The place of .
Use the connecting rod coordinate system to define the corresponding Connecting rod parameters :
- a i a_i ai= from z i z_i zi To z i + 1 z_{i+1} zi+1 Along the x i x_i xi Measured distance ( Length of common vertical line )
- α i \alpha_i αi= from z i z_i zi To z i + 1 z_{i+1} zi+1 Along the x i x_i xi The angle of rotation
- d i d_i di= from x i − 1 x_{i-1} xi−1 To x i x_{i} xi Along the z i z_i zi Measured distance
- θ i \theta_i θi= from x i − 1 x_{i-1} xi−1 To x i x_{i} xi Along the z i z_i zi The angle of rotation
Coordinate system { i } \{i\} { i} Relative coordinates { i − 1 } \{i-1\} { i−1} The transformation matrix of i − 1 T i {}^{i-1}T_{i} i−1Ti It can be regarded as the product of four sub transformation matrices :
- Around the x i − 1 x_{i-1} xi−1 pivot α i − 1 \alpha_{i-1} αi−1 horn
R o t x ( α i − 1 ) = [ 1 0 0 0 0 c o s α i − 1 − s i n α i − 1 0 0 s i n α i − 1 c o s α i − 1 0 0 0 0 1 ] R o t_{x}\left(\alpha_{i-1}\right)=\begin{bmatrix}1 &0&0&0\\ 0&cos\alpha_{i-1}&{-sin\alpha_{i-1}}&0\\0&{sin\alpha_{i-1}}&{cos\alpha_{i-1}}&{0}\\ {0}&{0}&{0}&{1}\end{bmatrix} Rotx(αi−1)=⎣⎢⎢⎡10000cosαi−1sinαi−100−sinαi−1cosαi−100001⎦⎥⎥⎤ - Along the x i − 1 x_{i-1} xi−1 Axis movement a i − 1 a_{i-1} ai−1
T r a n s x ( a i − 1 ) = [ 1 0 0 a i − 1 0 1 0 0 0 0 1 0 0 0 0 1 ] T r a n s_{x}\left(a_{i-1}\right)=\begin{bmatrix}1 &0&0&a_{i-1}\\ 0&1&0&0\\0&0&1&{0}\\ {0}&{0}&{0}&{1}\end{bmatrix} Transx(ai−1)=⎣⎢⎢⎡100001000010ai−1001⎦⎥⎥⎤ - Along the z i z_{i} zi Axis movement θ i \theta_{i} θi
R o t z ( θ i ) = [ c o s θ i − s i n θ i 0 0 s i n θ i c o s θ i 0 0 0 0 1 0 0 0 0 1 ] R o t_{z}\left(\theta_{i}\right)=\begin{bmatrix}{cos\theta_{i}}&{-sin\theta_{i}}&0&0\\ {sin\theta_{i}}&{cos\theta_{i}}&0&0\\0&0&1&0\\ {0}&{0}&{0}&{1}\end{bmatrix} Rotz(θi)=⎣⎢⎢⎡cosθisinθi00−sinθicosθi0000100001⎦⎥⎥⎤ - Along the z i z_{i} zi Axis movement d i d_{i} di
T r a n s z ( d i ) = [ 1 0 0 0 0 1 0 0 0 0 1 d i 0 0 0 1 ] T r a n s_{z}\left(d_{i}\right)=\begin{bmatrix}1 &0&0&0\\ 0&1&0&0\\0&0&1&d_i\\ {0}&{0}&{0}&{1}\end{bmatrix} Transz(di)=⎣⎢⎢⎡10000100001000di1⎦⎥⎥⎤
These transformations are described in the relative motion coordinate system , Satisfy the principle from left to right , The final transformation formula can be obtained as follows :
i i − 1 T = R o t x ( α i ) T r a n s x ( a i ) R o t z ( θ i ) T r a n s z ( d i ) _{i}^{i-1}T=R o t_{x}\left(\alpha_{i}\right)T r a n s_{x}\left(a_{i}\right)R o t_{z}\left(\theta_{i}\right)T r a n s_{z}\left(d_{i}\right) ii−1T=Rotx(αi)Transx(ai)Rotz(θi)Transz(di)
It is usually stipulated that a i ≥ 0 a_i\ge0 ai≥0, Because it represents the length of the connecting rod , and α i , d i , θ i \alpha_i, d_i, \theta_i αi,di,θi Positive but negative .
i i − 1 T = [ c o s θ i − s i n θ i 0 a i − 1 s i n θ i c o s α i − 1 c o s θ i c o s α i − 1 − s i n α i − 1 − d i s i n α i − 1 s i n θ i s i n α i − 1 c o s θ i s i n α i − 1 c o s α i − 1 d i c o s α i − 1 0 0 0 1 ] _{i}^{i-1}T=\begin{bmatrix}{cos\theta_{i}}&{-sin\theta_{i}}&0&{a _{i-1}}\\ {sin\theta_{i}cos\alpha_{i-1}}&{cos\theta_{i}cos\alpha_{i-1}}&{-sin\alpha_{i-1}}&{-d_isin\alpha_{i-1}}\\{sin\theta_{i}sin\alpha_{i-1}}&{cos\theta_{i}sin\alpha_{i-1}}&{cos\alpha_{i-1}}&{d_icos\alpha_{i-1}}\\ {0}&{0}&{0}&{1}\end{bmatrix} ii−1T=⎣⎢⎢⎡cosθisinθicosαi−1sinθisinαi−10−sinθicosθicosαi−1cosθisinαi−100−sinαi−1cosαi−10ai−1−disinαi−1dicosαi−11⎦⎥⎥⎤
2.Matlab Symbolic operation verification
utilize Matlab The symbolic operation of is used to deduce the formula and verify the formula
syms theta d alpha a
M=DH_Trans(theta,d,alpha,a)
function M=DH_Trans(theta,d,alpha,a)
R_z_theta=[cos(theta),-sin(theta),0,0;...
sin(theta),cos(theta),0,0;...
0,0,1,0;...
0,0,0,1];
T_z_d=[1,0,0,0;...
0,1,0,0;...
0,0,1,d;...
0,0,0,1];
R_x_alpha=[1,0,0,0;...
0,cos(alpha),-sin(alpha),0;...
0,sin(alpha),cos(alpha),0;...
0,0,0,1];
T_x_a=[1,0,0,a;...
0,1,0,0;...
0,0,1,0;...
0,0,0,1];
M=R_x_alpha*T_x_a*R_z_theta*T_z_d;
end
The results are consistent
边栏推荐
- Excel knowledge and skills summary
- LeetCode 88:合并两个有序数组
- Why is the frame rate calculated by opencv wrong?
- The development of the Internet has promoted the emergence of a series of new models such as unbounded retail, digital retail and instant retail
- Is it true that qiniu business school gives away securities accounts? Is it safe to open an account
- Audio and video technology development weekly
- Severe tire damage: the first rock band in the world to broadcast live on the Internet
- The SQL of filincdc always reports this error when there are multiple tables. How can I solve it
- Project practice! Teach you JMeter performance test hand in hand
- [proteus simulation] timer 1 external counting interrupt
猜你喜欢
机器人学DH参数及利用matlab符号运算推导
?位置怎么写才能输出true
What to do when MySQL changes the password and reports an error
cgo+gSoap+onvif学习总结:8、arm平台交叉编译运行及常见问题总结
Sword finger offer 49 Ugly number (three finger needling technique)
Matlab exercises -- routine operation of matrix
10: 00 interview, came out at 10:02, the question is really too
On the necessity of building a video surveillance convergence platform and its scenario application
TACo:一种关于文字识别的数据增强技术
MySQL gets the current date of the year
随机推荐
Sword finger offer 49 Ugly number (three finger needling technique)
Win10 how to delete the large file hiberfil sys
The growth summer challenge is coming | learn and create two major tracks, and start the tutor registration!
Generate QR code in wechat applet
玩转双指针
Taco: a data enhancement technique for character recognition
Ppt production tips
JS reverse massive star map sign signature
如何从零设计一款牛逼的高并发架构(建议收藏)
!‘cat‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
易周金融 | Q1手机银行活跃用户规模6.5亿;理财子公司布局新兴领域
大促场景下,如何做好网关高可用防护
机器人学DH参数及利用matlab符号运算推导
Play with double pointer
Notepad++ -- common plug-ins
短视频本地生活版块成为热门,如何把握新的风口机遇?
2022高处安装、维护、拆除考试题及答案
The number of small stores in Suning has dropped sharply by 428 in one year. Zhangkangyang, the son of Zhang Jindong, is the actual controller
Unity out ref params
lotus v1.16.0 calibnet