当前位置:网站首页>Robot pose description and coordinate transformation
Robot pose description and coordinate transformation
2022-06-13 04:51:00 【Feng jungle】
The pose description and coordinate transformation of robot are the basis of kinematics and dynamics analysis of industrial robot . This section briefly introduces the above contents , Clarify the relationship between pose description and coordinate transformation , The basic mathematical knowledge used is —— matrix .
1. Pose represents
Posture represents position and posture . Any rigid body in the space coordinate system (OXYZ) Position and posture can be used to accurately 、 It uniquely represents its position and state .
- Location :x、y、z coordinate
- Posture : Rigid body and OX Angle between axes rx、 And OY Angle between axes ry、 And OZ Angle between axes rz
Suppose the base coordinate system is OXYZ, The rigid body coordinate system is O`X`Y`Z`. For robots , Any point in space must be explicitly specified with the above six parameters , namely (x,y,z,rx,ry,rz), Even if (x,y,z) Are all the same ,(rx,ry,rz) Different robots reach the same point with different postures .
The position of the rigid body can be determined by a 3x1 The matrix of , The center of the rigid body coordinate system O` Position in the base coordinate system , namely 
The attitude of a rigid body can be represented by a 3x3 The matrix of , That is, the attitude of the rigid body coordinate system in the base coordinate system , namely

among , The first column represents the of the rigid body coordinate system O`X` The component of the axis in the three axis directions of the base coordinate system , be called Unit principal vector . Empathy , The second and third columns are the coordinates of the rigid body coordinate system respectively O`Y` Axis and O`Z` The component of the axis in the three axis directions of the base coordinate system .
for instance , In the following illustration , rigid body M Along the coordinate system O The middle level has shifted (0,20,15), Around the Z The axis is spinning 90 degree , So rigid bodies M In the coordinate system O The pose of can be described as :

,
According to the example above , It's easy to get , The rigid body coordinate system revolves around X Axis (Y Axis 、Z Axis ) Rotation Angle θ The attitude matrix after is :

2. Homogeneous coordinates and homogeneous matrices
2.1 Homogeneous coordinates

among ,x=a/w, y=b/w, z=c/w .
- Homogeneous coordinates of points
For a point (10,20,30), Its homogeneous coordinates can be expressed as

- Homogeneous coordinates of the coordinate axis

2.2 Homogeneous matrix
In Robotics , Use homogeneous matrix (4x4) To uniformly describe the position and attitude of rigid bodies , Here's the picture . Through the positive and inverse transformation of matrix and matrix multiplication operation , Realize the transformation of posture .

among , Ahead 3x3 The matrix represents the attitude of the rigid body , hinder 3x1 The matrix represents the position of the rigid body .
2.3 Homogeneous transformation
With the above foundation , Next, we can use homogeneous transformation to describe the pose transformation of rigid body in space . Homogeneous matrix can not only describe the pose of rigid body in space , It can also describe the pose transformation process , such as “ Around a certain coordinate system X Shaft rotation 43°, And around Y Shaft rotation -89°”. Homogeneous transformation is divided into translation transformation 、 Rotation transformation and the combination of the first two .
2.3.1 Translation transformation
Translation transformation is relatively simple , such as Coordinate system j Relative coordinates i Of x、y、z Translate... Separately 10,-20,30, Expressed by homogeneous matrix as follows :

among , Matrix positions can be exchanged , Because these are three independent variables , The exchange does not affect the result .
2.3.2 Rotation transformation
example 1: Coordinate system j Relative coordinates i Of X Shaft rotation 90°, The homogeneous matrix is described as follows :

example 2: Coordinate system j Relative coordinates i Of X Shaft rotation 90°, And around the coordinate system i Of Y Shaft rotation 90°, By example 1 obtain “ Coordinate system j Relative coordinates i Of X Shaft rotation 90°” Transformation description of , It's also easy to get “ Around the coordinate system i Of Y Shaft rotation 90°” Transformation description of . But can these two matrices exchange orders as freely as translation transformation ? The answer is No , The meaning of matrix left multiplication and matrix right multiplication is different :
- Transform operator left multiplication : Indicates that the transformation is a relatively fixed coordinate system transformation
- Operator right multiplication : Indicates that the transformation is a relatively moving coordinate system ( New coordinate system ) Transformation .
What needs to be explained is , We The above translation transformation and rotation transformation are called transformation operators .
According to the above principles , Rules 2 in , Both transformations revolve around the coordinate system i Transformation of , It's a transformation around a fixed coordinate system , The transformation operator should be left multiplied by . Suppose a rigid body j The homogeneous matrix of in-situ pose is described as P, So experience “ Coordinate system j Relative coordinates i Of X Shaft rotation 90°” The following description is :
![]()
namely , Transform operator left multiplication . The next second transformation is “ Around the coordinate system i Of Y Shaft rotation 90°”, You should also multiply left :
![]()
example 3: Coordinate system j Relative coordinates i Of X Shaft rotation 90°, And around the coordinate system j Of Y Shaft rotation 90°.
This question and example 2 The difference is the second one “ Around the coordinate system j Of Y Shaft rotation 90°”. First of all, the first transformation is nothing , And example 2 Like the first transformation of , Rotate around a fixed coordinate system , Left multiplication . The second transformation should be :

2.3.3 translation + Rotation transformation
Here, the translation transformation operator can be directly added to the rotation transformation operator ( Just try and see , Translation and rotation are relatively independent ). Now that we talk about the comprehensive transformation of translation and rotation , Let's say “ Known rigid bodies i The spatial pose parameters are (x,y,z,rx,ry,rz), How to use homogeneous matrix to describe ?” It's like a rigid body coordinate system j And fixed coordinate system i At first, it completely overlaps , Then the rigid body j Along the coordinate system i Of X、Y、Z Move the distance in each direction x,y and z, And around the coordinate system i Of X Axis 、Y Axis 、Z The axes rotate separately rx、ry and rz.


Here we are. , The pose description and coordinate transformation of the robot are basically over . The above knowledge is for robot kinematics analysis 、 Dynamic analysis 、 The basis of robot off-line programming and software development . Especially in the process of robot inverse kinematics analysis and simulation 、 Industrial field hand eye calibration and other occasions , The transformation of homogeneous matrix is particularly important . With the above foundation , Let's see Jungle Two previous articles :
https://blog.csdn.net/sinat_21107433/article/details/78937391
https://blog.csdn.net/sinat_21107433/article/details/80169043
Welcome to Zhihu column :Jungle It's a use. Qt Industry Robot
official account 【Jungle note 】 The background to reply “ Robot documentation ”, You can get this article PDF.
边栏推荐
- Tita:新锐集团采用一对一面谈推动绩效变革成功
- [try to hack] upload labs (temporarily write to 12)
- Cesium:CesiumLab制作影像切片与切片加载
- rust编程-链表:使用struct实现链表,使用堆合并k个升序链表,自定义Display
- Returns the width and height of an element
- 如何只用4步,实现一个自定义JDBC驱动?
- Collection of some compatibility issues
- josephus problem
- Cesium:cesiumlab makes image slices and loads slices
- [untitled]
猜你喜欢
![[try to hack] upload labs (temporarily write to 12)](/img/df/dbb78121f7428e25ffb73cfc43ce1b.png)
[try to hack] upload labs (temporarily write to 12)

Crawler scrapy framework learning 1

利用Javeswingjdbc基於mvc設計系統

How to implement a custom jdbc driver in only four steps?

Converting MySQL data to PostgreSQL with Navicat

PowerShell: because running scripts is prohibited on this system, the solution

Redis master-slave replication, sentinel mode, cluster

CMB written test graphical reasoning

Analysis of scoped attribute principle and depth action selector

Section 7 - structures
随机推荐
Red Treasure Book Reading Notes (continuously updated)
Solution to sudden font change in word document editing
Createanonymousthreadx passes parameters to anonymous threads
Colab使用教程(超级详细版)及Colab Pro/Pro+评测
利用Javeswingjdbc基于mvc设计系统
Swiper plug-in
Analysis on the similarities and differences of MVC, MVP and mvvc
Section 6 - pointers
PowerShell: because running scripts is prohibited on this system, the solution
Crawler scrapy framework learning 1
rainbow
The differences between the four startup modes of activity and the applicable scenarios and the setting methods of the two startup modes
Set properties \ classes
[LeetCode]-二分查找
RuoYi-Cloud启动教程(手把手图文)
Day 007: go language string
Your one-on-one meetings are inefficient. You can do this!
2022 question bank and answers for operation certificate examination of safety production management personnel in road transport enterprises
Third party comment plugin
Nodejs parsing get request URL string