当前位置:网站首页>Introduction to Robotics II. Forward kinematics, MDH method
Introduction to Robotics II. Forward kinematics, MDH method
2022-07-02 03:27:00 【RuiH. AI】
Introduction to Robotics Two 、 Forward kinematics
Preface
This chapter studies the forward kinematics of the manipulator ,MDH Law .
Joints and links
The joints joint, connecting rod link, It is the basic structure of the manipulator .
Joints include rotating joints and moving joints , Generally, there is only one degree of freedom .
One joint connects two adjacent connecting rods ,n Joint handle n+1 Connecting rods , have n A degree of freedom .
Number
Take the fixed base as the first 0 A connecting rod , The connecting rod at the end of the manipulator is used as the n A connecting rod .
Connecting rod parameters
Description of connecting rod
The length of the common vertical line between two adjacent joint axes , It is called the length of the connecting rod .
The angle formed between two adjacent joint axes , It is called the angle of the connecting rod .
Above picture , connecting rod i-1
The length of is its proximal joint axis i-1
With the distal joint axis i
The length of the common vertical line between a i − 1 a_{i-1} ai−1
connecting rod i-1
The corner of is its proximal joint axis i-1
With the distal joint axis i
Form an angle α i − 1 \alpha_{i-1} αi−1, As for the sign of angle , It can be determined when the coordinate system is established later .
Description of connecting rod connection
The distance between two adjacent connecting rods , It is called connecting rod offset .
The included angle of rotation of two adjacent connecting rods around the common joint axis , It is called joint angle .
Above picture , The joints i
It's the connecting rod i-1
And connecting rod i
The common joint of .
Because the actual connecting rod is bent , The common vertical line segment a i − 1 a_{i-1} ai−1 and a i a_i ai As a straight connecting rod instead of a curved connecting rod i-1
,i
.
Straight link i-1
,i
The distance between them is the joint i
Connecting rod offset d i d_i di
Straight link i-1
Along the joint axis i
Rotate to the straight link i
The angle of is the joint angle θ i \theta_i θi
Joint variables
A connecting rod can use the upper connecting rod length 、 Connecting rod angle 、 Connecting rod offset 、 Four parameters of joint angle are determined .
For rotating joints , The joint angle is variable , The other three parameters remain unchanged .
For moving joints , The connecting rod offset is variable , The other three parameters remain unchanged .
Variable parameters are called joint variables .
The connecting rod coordinate system
The connecting rod coordinate system is used to describe the relative position relationship between adjacent connecting rods .
The number of the connecting rod coordinate system is the same as that of the connecting rod , be called { i } \{i\} { i}.
The coordinate system of the intermediate connecting rod is established
For connecting rod i
Set up a coordinate system :
With joint axis i
As Z Axis
, With connecting rod i
And Z Axis
As origin
, With connecting rod i
As X Axis
Point to the joint axis i+1
, The right-hand rule determines Y Axis
.
exception : If the connecting rod i
The length of a i = 0 a_i=0 ai=0( At this time, the connecting rod i
,i+1
Of Z Axis
The intersection ), Take the intersection as origin
, With Two Z The plane of the axis
The vertical line of X Axis
, There are two choices of direction , and α i \alpha_i αi The symbol of is composed of X Axis
Direction determines .
The establishment of each coordinate axis should meet the right-hand rule .
Above picture , The coordinate system can be established in this order :
First find all the joint axes i-1,i
Then determine the coordinate system { i − 1 } \{i-1\} { i−1}, Take the joint axis as Z ^ i − 1 \hat Z_{i-1} Z^i−1, Straight link i-1
As X ^ i − 1 \hat X_{i-1} X^i−1, Then the right hand rule determines Y ^ i − 1 \hat Y_{i-1} Y^i−1.
Then determine the coordinate system { i } \{i\} { i}.
Establish the coordinate system of the head and tail connecting rods
For the head and tail connecting rods 0,n
, There is a special way to build a department .
Head coordinate system
Coordinate system { 0 } \{0\} { 0} On the base , Generally used as a reference system .
The first joint variable is 0 when , Specify the coordinate system { 0 } \{0\} { 0} On { 1 } \{1\} { 1} coincidence .
When the first joint is a rotating joint , d 1 = 0 d_1=0 d1=0; The first joint is the mobile joint , θ 1 = 0 \theta_1=0 θ1=0
Tail coordinate system
Coordinate system { n } \{n\} { n} Origin and x Axis
The direction can be arbitrarily selected , But try to make the connecting rod parameters 0.
Connecting rod parameters and connecting rod coordinate system
Follow the above method of building a department , The connecting rod parameters can be redefined :
- a i a_i ai Connecting rod length : Along the X ^ i \hat X_i X^i, from Z ^ i \hat Z_i Z^i Move to Z ^ i + 1 \hat Z_{i+1} Z^i+1 Distance of
- α i \alpha_i αi Connecting rod torsion angle : Around the X ^ i \hat X_i X^i Axis , hold Z ^ i \hat Z_i Z^i Rotate to Z ^ i + 1 \hat Z_{i+1} Z^i+1 The angle of
- d i d_i di Connecting rod offset : Along the Z ^ i \hat Z_i Z^i, from X ^ i − 1 \hat X_{i-1} X^i−1 Move to X ^ i 1 \hat X_{i1} X^i1 Distance of
- θ i \theta_i θi Joint angle : Around the Z ^ i \hat Z_i Z^i Axis , hold X ^ i − 1 \hat X_{i-1} X^i−1 Rotate to X ^ i \hat X_{i} X^i The angle of
Set up a i > 0 a_i>0 ai>0, Other parameters can be positive or negative .
The above method of establishing the connecting rod coordinate system and connecting rod parameters is called MDH Law (Modified Denavit–Hartenberg).
DH The coordinate system established by the method is not unique .
Connecting rod change
Connecting rod parameters can be used to calculate the relative pose between adjacent rods .
Above picture , Consider the coordinate system { i − 1 } , { i } \{i-1\},\{i\} { i−1},{ i} The transformation between i − 1 i T ^i_{i-1}T i−1iT, Establish an intermediate coordinate system { P } , { Q } , { R } \{P\},\{Q\},\{R\} { P},{ Q},{ R}, Then there are :
i i − 1 T = R i − 1 T Q R T P Q T i P T ^{i-1}_iT = \ ^{i-1}_RT \ ^R_{Q}T \ ^Q_PT \ ^P_{i}T ii−1T= Ri−1T QRT PQT iPT
The transformation above , It can be seen as putting X ^ i \hat X_i X^i Transformation for X ^ i − 1 \hat X_{i-1} X^i−1, Then there are :
i i − 1 T = R X ( α i − 1 ) D X ( a i − 1 ) R Z ( θ i ) D Z ( d i ) ^{i-1}_iT = R_X(\alpha_{i-1})D_X(a_{i-1})R_Z(\theta_i)D_Z(d_i) ii−1T=RX(αi−1)DX(ai−1)RZ(θi)DZ(di)
Or write out the transformation of each intermediate coordinate system :
i P T = [ 1 0 0 0 0 1 0 0 0 0 1 d i 0 0 0 1 ] P Q T = [ cos θ 1 − sin θ 1 0 0 sin θ 1 cos θ 1 0 0 0 0 1 0 0 0 0 1 ] Q R T = [ 1 0 0 0 0 1 0 a i − 1 0 0 1 0 0 0 0 1 ] R i − 1 T = [ 1 0 0 0 0 cos α i − 1 − sin α i − 1 0 0 sin α i − 1 cos α i − 1 0 0 0 0 1 ] ^P_iT = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & d_i \\ 0 & 0 & 0 & 1 \\ \end{bmatrix} \\ \quad \\ \ ^Q_PT = \begin{bmatrix} \cos \theta_1 & -\sin \theta_1 & 0 & 0 \\ \sin \theta_1 & \cos \theta_1 & 0 & 0 \\ 0 & 0 & 1 &0 \\ 0 & 0 & 0 & 1 \\ \end{bmatrix} \\ \quad \\ \ ^R_QT = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & a_{i-1} \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{bmatrix} \\ \quad \\ \ ^{i-1}_RT = \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} \\ \quad \\ iPT=⎣⎢⎢⎡10000100001000di1⎦⎥⎥⎤ PQT=⎣⎢⎢⎡cosθ1sinθ100−sinθ1cosθ10000100001⎦⎥⎥⎤ QRT=⎣⎢⎢⎡1000010000100ai−101⎦⎥⎥⎤ Ri−1T=⎣⎢⎢⎡10000cosαi−1sinαi−100−sinαi−1cosαi−100001⎦⎥⎥⎤
obtain i i − 1 T ^{i-1}_iT ii−1T The general form of :
MDH Method use steps
- Find all joint axes ;
- Establish the coordinate system of the intermediate connecting rod in sequence ;
- Determine the head and tail coordinate system ;
- Write DH Parameters ;
- Calculate the forward kinematics matrix .
Postscript
This article is about forward kinematics in robotics , It's using MDH Law .
There will be Matlab Example programming .
边栏推荐
- Verilog 线型wire 种类
- Detailed explanation of ThreadLocal
- Verilog 过程赋值 区别 详解
- Large screen visualization from bronze to the advanced king, you only need a "component reuse"!
- < job search> process and signal
- Calculation of page table size of level 2, level 3 and level 4 in protection mode (4k=4*2^10)
- Just a few simple steps - start playing wechat applet
- 表单自定义校验规则
- Kotlin basic learning 15
- Docker installs canal and MySQL for simple testing and implementation of redis and MySQL cache consistency
猜你喜欢
数据传输中的成帧
MySQL connection query and subquery
Verilog 状态机
焱融看 | 混合雲時代下,如何制定多雲策略
Comment élaborer une stratégie nuageuse à l'ère des nuages mixtes
[C Advanced] brother Peng takes you to play with strings and memory functions
《MATLAB 神经网络43个案例分析》:第42章 并行运算与神经网络——基于CPU/GPU的并行神经网络运算
Knowing things by learning | self supervised learning helps improve the effect of content risk control
汇率的查询接口
JS introduction < 1 >
随机推荐
Getting started with MQ
Docker installs canal and MySQL for simple testing and implementation of redis and MySQL cache consistency
UI (New ui:: MainWindow) troubleshooting
What do you know about stock selling skills and principles
《MATLAB 神经网络43个案例分析》:第41章 定制神经网络的实现——神经网络的个性化建模与仿真
Kotlin基础学习 16
Verilog avoid latch
Spark Tuning
Find duplicates [Abstract binary / fast and slow pointer / binary enumeration]
数据传输中的成帧
Knowing things by learning | self supervised learning helps improve the effect of content risk control
32, 64, 128 bit system
ThreadLocal详解
Verilog state machine
MySQL connection query and subquery
Eight steps of agile development process
MSI announced that its motherboard products will cancel all paper accessories
微信小程序中 在xwml 中使用外部引入的 js进行判断计算
"Analysis of 43 cases of MATLAB neural network": Chapter 41 implementation of customized neural network -- personalized modeling and Simulation of neural network
汇率的查询接口