当前位置:网站首页>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.
边栏推荐
- Section 7 - structures
- Collection of wrong questions in soft test -- morning questions in the first half of 2010
- About mission planning and improving execution
- Tita绩效宝:远程一对一面谈的问题
- 2022年氧化工艺操作证考试题库及模拟考试
- 用navicat将mysql数据转化为postgresql
- Win8.1和Win10各自的優勢
- Implementation of article list function on PHP 18 home page
- Record a troubleshooting process - video call cannot be picked up
- SQL notes
猜你喜欢

如何只用4步,实现一个自定义JDBC驱动?

【Try to Hack】upload-labs通关(暂时写到12关)

QT client development -- driver loading problem of connecting to MySQL database

Explain the differences and usage scenarios between created and mounted

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

C language exercise 1

Section 7 - structures

How to lay copper in AD (aluminum designer)

Ctfshow SQL injection (211-230)

Powershell 加域 Add-Computer模块
随机推荐
Test question bank and online simulation test for special operation certificate of construction scaffolder (special type of construction work) in 2022
Use go to add massive data to MySQL
2022道路运输企业安全生产管理人员操作证考试题库及答案
你的一对一会议效率低下,你可以这么做!
Returns the width and height of an element
It's the Caesar code. (*‘▽‘*)*
QT client development -- driver loading problem of connecting to MySQL database
[try to hack] upload labs (temporarily write to 12)
How to implement a custom jdbc driver in only four steps?
NodeJS 解析 GET 请求 url 字符串
自动评教脚本使用的配置
Advanced C - Section 3 - character functions and string functions
无限循环滚动代码阿里巴巴国际站店铺装修代码底图滚动黑色半透明显示效果自定义内容装修代码全屏显示
Converting MySQL data to PostgreSQL with Navicat
C language exercise 1
Crawler scrapy framework learning 1
PowerShell: because running scripts is prohibited on this system, the solution
About mission planning and improving execution
Collection of wrong questions in soft test -- morning questions in the first half of 2011
Avantages de win8.1 et win10