You are on page 1of 61

ROBOT CÔNG NGHIỆP

CHƯƠNG 2
MÔ TẢ TRONG KHÔNG GIAN VÀ
CÁC PHÉP BIẾN ĐỔI
Ngành Kỹ thuật Điều khiển & Tự động hóa

Khoa Điện
PGS. TS. Lê Tiến Dũng
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

NỘI DUNG CHƯƠNG 2


1. Giới thiệu chung
2. Các mô tả: Vị trí, hướng và các hệ tọa độ
3. Phép biến đổi thuần nhất (Homogeneous transform)
4. Các toán tử (operators): Tịnh tiến, quay và biến đổi tổng quát
5. Biến đổi số học (Transformation arithmetic)
6. Các phương trình biến đổi
7. Một số cách biểu diễn của hướng (More on presentation of orientation)
8. Biến đổi vector
9. Bài tập

2
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

1. Giới thiệu chung


Tay máy robot, theo như định nghĩa ở chương 1 cho thấy các bộ phận của robot và end-
effector sẽ chuyển động trong không gian bởi một kết cấu cơ học. Điều này tự nhiên dẫn đến
nhu cầu cần phải biểu diễn các vị trí và hướng của các bộ phận, của end-effector và của
toàn robot.
Trong chương này trình bày những kiến thức cơ bản về mô tả điểm, vector trong không
gian, các phép biến đổi, các cách biểu diễn hướng,… làm nền tảng cơ bản cho chương 3
trong mô tả các phương trình động học của tay máy robot, và kể cả làm cơ sở cho việc mô tả
vận tốc, lực và mô-men ở môn học tiếp theo về điều khiển robot.

3
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

2. Các mô tả: Vị trí, hướng và các hệ tọa độ

{A} 𝑌
Để xác định vị trí điểm P trong một mặt phẳng, cần một hệ tọa độ có 2 trục.
Vị trí
Hệ tọa độ Đề-các Vị trí điểm P mô tả trong hệ tọa độ {A}:
Py P

𝑋
O Px
𝑍
{A}
Pz Để xác định vị trí điểm P trong không gian, cần một hệ tọa độ có 3 trục.
P
Vị trí điểm P mô tả trong hệ tọa độ {A}:

Py 𝑌
O
Px
𝑋 4
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Mô tả vị trí (Position) của một điểm trong trong hệ tọa độ {A}:

Khi một hệ tọa độ được thiết lập, chúng ta có thể định vị bất kỳ điểm nào trong không gian với vectơ vị trí [3 x
1]. Bởi vì có nhiều hệ tọa độ khác nhau được thiết lập gắn với các phần của thân robot, nên các vectơ phải được
gắn thẻ với thông tin xác định tên của hệ tọa độ mà chúng đang được tham chiếu.
Các thành phần của AP có các giá trị số biểu thị khoảng cách dọc theo các trục của hệ tọa độ {A}. Mỗi khoảng
cách dọc theo một trục có thể được coi là kết quả của việc chiếu vectơ lên trục tương ứng. 5
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Mô tả vị trí trong hệ tọa độ trụ


𝑍 Vị trí điểm P mô tả trong hệ tọa độ {A}:
{A}

z
O 𝑌

 𝑍
{A}
𝑋

Mô tả vị trí trong hệ tọa độ cầu P

 r z
O 𝑌


6
𝑋
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Hướng (Orientation)
Thông thường, chúng ta sẽ thấy không chỉ cần thiết phải biểu diễn vị trí một điểm trong không gian mà còn phải
mô tả sự định hướng của một vật thể trong không gian.

𝑍 𝑍
{A} {A}
{B}

O 𝑌 O 𝑌

𝑋 𝑋

+ Gắn một hệ tọa độ {B} lên vật thể


+ Tìm mối quan hệ của hệ tọa độ {B} so với hệ tọa độ {A} 7
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Ví dụ: nếu vectơ AP trong hình định vị điểm trực tiếp giữa các đầu ngón tay của end-effector, thì vị trí + tư thế
hoàn chỉnh của end-effector vẫn không được xác định cho đến khi hướng của nó cũng được đưa ra.

Để mô tả sự định hướng của một vật thể, chúng ta sẽ gắn một


hệ tọa độ vào vật thể và sau đó đưa ra một mô tả về hệ tọa độ
này so với hệ quy chiếu.
Trong hình vẽ, hệ tọa độ {B} đã được gắn vào end-effector
theo một cách đã biết. Một mô tả về {B} liên quan đến {A} bây
giờ đủ để đưa ra thông tin về hướng của end-effector.

8
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

MA TRẬN XOAY (ROTATION MATRIX)

Mỗi hệ tọa độ được xác định bởi các vector đơn vị (để đưa ra các hướng chính của các hệ tọa độ)

𝑍
𝑍
{A} 𝑌

O 𝑌

𝑋 𝑋

9
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

𝑍
{A} Đặt 2 hệ tọa độ {A} và {B} có chung gốc tọa độ O.
𝑍
𝑌 Mô tả hệ tọa độ {B} trong hệ tọa độ {A}:

? ? ?
O 𝑌

𝑋 Sử dụng phép chiếu các trục tọa độ của {B} lên {A} ta có:

Nhắc lại: Hình chiếu của vector này lên vector kia chính là tích chấm (dot product)

. 10
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Biểu diễn mỗi vector đơn vị (để chỉ hướng các trục tọa độ) của hệ tọa độ {A} so với {B} và ngược lại:

, ,

Mô tả mỗi vector đơn vị của hệ tọa độ {B} trong hệ tọa độ {A}:

là một vector [3 x 1]

là một vector [3 x 1]

là một vector [3 x 1]

Mô tả mỗi vector đơn vị của hệ tọa độ {A} trong hệ tọa độ {B}:

là một vector [3 x 1]

là một vector [3 x 1]

là một vector [3 x 1]
11
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

𝑍 Gọi 𝑹 là một ma trận xoay để biểu diễn biến đổi hướng giữa của
{A} hệ tọa độ {B} so với hệ tọa độ {A}:
𝑍

O 𝑌

12
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Ma trận xoay: "rotation matrix"

Mô tả hướng (orientation) của hệ tọa độ {B} so với hệ tọa độ {A}:

Mô tả hướng (orientation) của hệ tọa độ {A} so với hệ tọa độ {B}:

13
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Chúng ta có thể đưa ra các biểu thức cho các đại lượng vô hướng rij hoặc kij trong biểu thức ma
trận quay ở trên bằng cách lưu ý rằng các thành phần của bất kỳ vector nào chỉ đơn giản là các hình
chiếu của vector đó lên các hướng đơn vị của hệ tọa độ tham chiếu của nó => hàm cos  tích chấm
(dot product).
Tích chấm (dot product) của 2 vector đơn vị cho kết quả là cos của góc giữa chúng (
). Vì vậy, mỗi thành phần của ma trận xoay thường được gọi là cosine định hướng
(direction cosines).

 Xˆ B . Xˆ A YˆB . Xˆ A Zˆ B . Xˆ A 
A
B R  Xˆ
A
B
A
YˆB A ˆ
  ˆ ˆ
Z B   X B .YA YˆB .YˆA ˆ ˆ
Z B .YA 

 Xˆ .Zˆ Yˆ .Zˆ Zˆ B .Zˆ A 
 B A B A

 Xˆ A . Xˆ B YˆA . Xˆ B Zˆ A . Xˆ B 
B
A R  Xˆ
B
A YˆA
B B ˆ
  ˆ ˆ
Z A   X A .YB YˆA .YˆB ˆ ˆ  A T
Z A .YB   B R
 Xˆ .Zˆ Yˆ .Zˆ Zˆ A .Zˆ B 
 A B A B 14
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Rotation matrix is "orthogonal matrix"


15
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Clearly, the nine elements of a rotation matrix are not all independent. In fact, given a rotation matrix, R, it is easy
to write down the six dependencies between the elements. Imagine R as three columns, as originally introduced:

These three vectors are the unit axes of some frame written in terms of the reference frame. Each is a unit vector,
and all three must be mutually perpendicular (vuông góc), so we see that there are six constraints on the nine
matrix elements:

16
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

 r11 r12 r13 


R  r21 r22 r23  9 parameters  3 independent parameters

 r31 r32 r33 

Since R is orthogonal matrix, 6 constraints exist:

r112  r122  r132  1 r11r21  r12 r22  r13 r23  0

r212  r222  r232  1 r11r31  r12 r32  r13r33  0

r312  r322  r332  1 r21r31  r22 r32  r23r33  0

17
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Example
A
Xˆ B  cos  . A Xˆ A  sin  . A YˆA

A
YˆB   sin  . A Xˆ A  cos  . A YˆA
A
Zˆ B  AZˆ A

Build rotation matrix:


cos   sin  0
A
B R  Xˆ A
B
A
YˆB A
Zˆ B =  sin 
 cos  0
 0 0 1
B
Xˆ A  cos  .B Xˆ B  sin  .B YˆB  cos  sin  0
 0
YˆA  sin  .B Xˆ B  cos  .B YˆB A R    sin  cos 
B B

 0 0 1 18
B
Zˆ A  B Zˆ B
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Mô tả các hệ tọa độ
Thông tin đầy đủ để xác định end-effector (hoặc mỗi bộ phận của robot) trong không gian gắn với một hệ tọa độ
bao gồm hướng và vị trí (Orientation + Position).
Trong lý thuyết Robotics, việc mô tả vị trí và hướng là vấn đề cơ bản và mỗi bộ phận của robot (link, end-
effector) được gắn trên nó một hệ tọa độ gọi là frame. Mỗi frame được mô tả bằng một ma trận gồm 4 vector: 3
vector để chỉ hướng và 1 vector để chỉ ra vị trí.

B  BA R , A
PBORG 

19
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

3. Phép biến đổi thuần nhất (Homogeneous transform)


A
P  APBORG  BP
Translational mapping

A
P  APBORG  BP 20
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Mappings involving rotated frames

  Xˆ A 
B T

A ˆ A ˆ   
BR   XB
A A
YˆB Z B    BYˆAT 
   B Zˆ AT 
 

A
p x  BXˆ A  B P,
A
p y  BYˆA  B P,
A
p z  BZˆ A  B P.

21
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Example
0.0
Given:
B
P  2.0
 
0.0

0.866  0.500 0.000


A
R  0.500 0.866 0.000
B
 
0.000 0.000 1.000 

We calculate AP as:
  1.000 
A
P  BARB P   1.732 
 
 0.000 22
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

A
P  PBORG  ( P)  PBORG  R P
A A B A A
B
B

Mappings involving general frames

   |   
 AP    B
P 
PBORG   BP 
BR
  AT   
A
| A
      Homogeneous transform
B  
             |     
       1 
 1   0 0 0 |   1 

Homogeneous /,hɔmə'dʤi:njəs/: đồng nhất, đồng đều, thuần nhất 23


KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Homogeneous transform

Ma trận có kích thước 4 x 4 trong công thức trên được gọi là phép biến đổi thuần nhất/đồng nhất. Đối với
mục đích sử dụng trong lĩnh vực Robotics, nó được dung như một tập hợp để biểu diễn thông tin của một phép
biến đổi tổng quát bao gồm phép quay và phép tịnh tiến vào trong một ma trận.
Trong các lĩnh vực nghiên cứu khác, ma trận 𝑻 được sử dụng để tính toán các thao tác phối cảnh và chia tỷ lệ
(khi đó hàng cuối cùng của ma trận không phải bằng [0, 0, 0, 1] và ma trận xoay 𝑹 không trực giao.
24
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Example

The definition of frame {B} is:

0.866  0.500 0.000 10.0


0.500 0.866 0.000 5.0 
A
T  
B
0.000 0.000 1.000 0.0 
 
0 0 0 1 

 3 .0 
Given: B
P   7 .0 
 
0.0

 9.098 
A
P  ABT  B P   12.562 
 
 0.000  Frame {B} rotated and translated
25
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

4. Các toán tử (operators): Tịnh tiến, quay và biến đổi (transformation)


Các dạng toán học được sử dụng tương tự việc ánh xạ các điểm giữa các hệ tọa độ cũng có thể
được hiểu là các toán tử (opetators) bao gồm dịch chuyển điểm, xoay vectơ hoặc thực hiện cả hai.

Translational operators
Một phép dịch chuyển thực hiện di chuyển một điểm trong không gian một khoảng cách hữu hạn
theo hướng của một vector cho trước. Với nghĩa này của việc dịch chuyển thực sự của điểm trong
không gian, thực hiện trong cùng một hệ tọa độ. Nó chỉ ra rằng việc dịch điểm trong không gian được
thực hiện với cùng một mô tả toán học như ánh xạ điểm đến hệ tọa độ thứ hai.
Đồng thời, rất quan trọng để hiểu nghĩa toán học nào đang được sử dụng (ánh xạ điểm hay toán
tử). Sự phân biệt đơn giản như sau: Khi một vector được dịch chuyển về phía trước (forward) so với
một hệ tọa độ, chúng ta có thể xem vector di chuyển tới trước còn hệ tọa độ di chuyển về phía sau
(backward).
26
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

27
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Rotational operators

Một cách giải thích khác về ma trận xoay là toán tử quay hoạt động trên vectơ AP1 và thay đổi vectơ đó thành
vectơ mới, AP2, bằng phương pháp xoay, R. Thông thường, khi ma trận xoay được hiển thị dưới dạng toán tử,
không chỉ số dưới hoặc chỉ số trên nào xuất hiện, vì nó không liên quan đến hai hệ tọa độ (thực hiện trong cùng
một hệ tọa độ). Do đó, chúng ta có thể viết:

Mặc dù một ma trận quay được dễ dàng xem như một toán tử, chúng ta cũng sẽ định nghĩa một cách ký hiệu khác
cho toán tử quay để chỉ ra là đang xoay quanh trục nào:

Trong công thức này, RK() là một toán tử quay thực hiện một phép quay xung quay trục K một góc . RK()
tương đương với 1 phép biến đổi thuần nhất mà phần vector vị trí bằng 0. 28
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Transformation operators

Đối với các vector và các ma trận quay, trong một hệ tọa độ có khái niệm khác là toán tử biến đổi
(transformation operator). Với nghĩa này, chỉ thực hiện trong một hệ tọa độ, do đó ký hiệu ma trận
biến đổi T không có chỉ số dưới hoặc chỉ số trên. Toán tử T thực hiện dịch chuyển và quay một vector
AP để có một vector mới:
1

Như vậy, cũng tương tự như toán tử quay ở trên, phương trình toán học của ma trận T trong 2
trường hợp phép biến đổi thuần nhất và toán tử biến đổi là giống nhau, nhưng ý nghĩa thì có sự khác
nhau.

29
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Tổng kết ý nghĩa của phép biến đổi thuần nhất


Ma trận T của phép biến đổi thuần nhất được sử dụng như một công cụ toán học tổng quát trong đó
có chứa thông tin về vị trí (position) và hướng (orientation).
Ma trận T có 3 ý nghĩa sử dụng khác nhau:
+ Mô tả hệ tọa độ: mô tả hệ tọa độ {B} đối với hệ tọa độ {A}. Các cột của ma trận là các vector
đơn vị định nghĩa các hướng của các trục của hệ tọa độ {B}, và vector 𝑷 xác định vị trí của gốc
tọa độ của {B}.

+ Ánh xạ (transform mapping): ánh xạ ->


+ Toán tử biến đổi (transform operator): T thực hiện biến đổi 𝑷 để tạo thành

30
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

5. Biến đổi số học (Transformation arithmetic)

Compound transformation

In this figure, we have CP and Transformations. We wish to find AP. 31


KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Frame {C} is known relative to frame {B}, and frame {B} is known relative to frame {A}. We can
transform CP into BP as:

then we can transform BP into AP as:

Combining above equations we get the following:

From which we could define:

32
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

In terms of the known descriptions of {B} and {C}, we can give the expression for as:
 | 
 A
R B
R | A
R B
P  A
P 
CT 
A  B C B CORG BORG

          |          
 
Inverting a transform:  0 0 0 | 1 

Consider a frame {B} that is known with respect to a frame {A} – that is, we know the value of .
Sometimes we will need to invert this transform, in order to get a description of {A} relative to {B} – that
is => Find
Simple way:
A
P  ABT BP
B
P  ABT 1 A P  BAT AP

A
B
T  BAT 1 4x4 matrix inversion
33
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Efficient way
A
B
T BAT  I 44

 BR | PBORG   A B   I | 0 
A A

   |        |   
     
 0 | 1   C D   0 | 1 

34
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Example: At class
(Page 36 textbook)

{B} relative to {A}

T ?
A
B T ?
B
A 35
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

5. Các phương trình biến đổi

36
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

37
KHOA ĐIỆN
Example:
PGS. TS. Lê Tiến Dũng

38
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

7. Một số cách biểu diễn của hướng (orientation)

Khi chúng ta sử dụng cánh tay robot sáu bậc tự do để thực hiện các tác
vụ, chúng ta sẽ quan tâm nhất đến việc định vị công cụ của nó (gắn trên
end-effector) theo nhiều hướng khác nhau.
Nói cách khác, chúng ta cần có khả năng lập trình cho robot di chuyển
end-effector của nó đến vị trí (position) mong muốn VÀ một hướng
(orientation) mong muốn (nghĩa là, đến một tư thế (pose) mong muốn).

Có một số cách để biểu diễn hướng trong không gian 3D:


+ Sử dụng một ma trận quay kích thước (3x3)
+ Sử dụng các góc Euler (Euler Angles)
+ Sử dụng Quaternion

39
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Biểu diễn hướng bằng ma trận quay kích thước (3x3)

Đây là cách phổ biến nhất để chuyển đổi tọa độ vị trí từ một khung tham chiếu F trong hệ tọa độ
Cartesian (3D) sang khung khác, F’. Ma trận 3×3 có thể được sử dụng để thể hiện hướng của khung
tham chiếu F’ đối với khung tham chiếu F. Tuy nhiên, cách biểu diễn này, không phải là cách ngắn
gọn và trực quan để xác định hướng.

Biểu diễn hướng bằng các góc Euler (Euler angles)

“An arbitrary rotation may be described by only three parameters” – Wolfram definition.

Các góc Euler là 3 góc quay được Leonhard Euler giới thiệu để mô tả hướng của một vật cứng (rigid
body) đối với hệ tọa độ cố định. Mỗi tham số góc quay Euler biểu diễn mỗi phép quay xung quanh
một trục tọa độ. Chúng cũng có thể sử dụng để biểu diễn hướng của khung tham chiếu di động trong
vật lý. 40
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Biểu diễn hướng bằng Quaternion


Quaternions
Trong toán học, Quaternions là một hệ thống số mở rộng của các số phức. Chúng lần đầu tiên được mô tả bởi
nhà toán học người Ireland là William Rowan Hamilton vào năm 1843 và áp dụng vào cơ học trong không gian
ba chiều.

Hình thức biểu diễn hướng bằng Quaternion bao gồm một vector chuẩn hóa gồm bốn đại lượng vô hướng
(scalar). Quaternion thường được sử dụng trong các bộ điều khiển robot, vì nó không chỉ ngắn gọn hơn ma trận
xoay mà trong tính toán nó còn ít bị lỗi gần đúng hơn (approximation errors). Hơn nữa, trong quá trình nội suy
giữa hai hướng khác nhau, các phần tử của Quaternion liên tục thay đổi, tránh sự không liên tục vốn có trong
các tham số ba chiều như góc Euler. Tuy nhiên, Quaternion hiếm khi được sử dụng như một phương tiện giao
tiếp giữa người dùng và bộ điều khiển của robot vì nó không trực quan.

Quaternion:

Trong đó qi là các số thực. Còn i, j, k là các ký hiệu số phức:


41
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Biểu diễn hướng bằng các góc Euler (Euler angles)

Các góc Euler là một tập hợp (hay đúng hơn là một chuỗi) gồm ba góc, có thể được ký hiệu là , , và . (Thông
thường, các góc Euler được biểu thị bằng Roll, Pitch và Yaw) Các góc Euler được xác định như sau: Xem xét hai
khung tham chiếu Cartesian (3D) thuận tay phải, trong đó một khung sẽ được gọi là khung cố định (fixed frame)
và khung kia sẽ được gọi làm khung di động (mobile frame). Ban đầu hai khung tham chiếu này trùng khớp nhau.
Để xác định hướng của khung thứ ba (hướng cần xác định), khung di động (mobile frame) được xoay theo một
chuỗi các góc Euler để tiến đến trùng khớp với khung thứ ba.

1. Xoay xung quanh trục , , hoặc của khung cố định (fixed frame); hoặc xoay quanh trục ’, , hoặc
của khung di động (mobile frame), một góc ,

2. Sau đó xoay quanh trục , , hoặc của khung cố định (fixed frame); hoặc xoay quanh trục ’, , hoặc
của khung di động (mobile frame), một góc ,

3. Và cuối cùng, xoay quanh trục , , hoặc của khung cố định (fixed frame); hoặc xoay quanh trục ’, ,
hoặc của khung di động (mobile frame), một góc .
42
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Thứ tự thực hiện của 3 phép quay có ý nghĩa quan trọng. Chúng ta có tổng số 216 (63) tổ hợp thứ tự thực hiện
của 3 phép quay có thể xảy ra: x → y → z, y → y → z, z → y → z, x '→ y → z, y' → y → z, z '→ y → z, v.v.
Tuy nhiên, những tổ hợp trong đó hai phép quay liên tiếp nằm trên cùng một trục (ví dụ: y → y → z) không thể
mô tả một hướng chung. Ngoài ra, trước lần quay đầu tiên, x trùng với x', y trùng với y' và z trùng với z'. Do đó,
trong tất cả 216 tổ hợp này, chỉ tồn tại 12 tổ hợp thứ tự thực hiện của 3 phép quay là có ý nghĩa để mô tả hướng.
Do đó, chúng ta có 12 bộ các góc Euler để mô tả hướng: XYX, XYZ, XZX, XZY, YXY, YXZ, YZX, YZY, ZXY,
ZXZ, ZYX, ZYZ.

Trong 12 tổ hợp góc Euler khác nhau, mỗi tổ hợp thường được mô tả theo 2 cách khác nhau: hoặc là
một chuỗi các phép quay xung quanh các trục của khung cố định (fixed frame) hoặc như một chuỗi các
phép quay quanh các trục của khung di động (mobile frame). Ví dụ: Bộ góc XYZ Euler cố định được mô
tả theo trình tự x → y → z, trong khi bộ góc ZYX Euler di động được mô tả bởi trình tự z'→ y' → x', nhưng
cả hai đều tương đương, như chúng ta sẽ thấy ở các nội dung trình bày tiếp ở các slide sau đây.

43
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Trong chế tạo robot, các hãng nổi tiếng sử dụng bộ các góc Euler để quy ước lập trình cho robot như sau:

+ Các hãng FANUC và KUKA sử dụng quy ước góc XYZ Euler cố định.

+ Hãng ABB sử dụng quy ước góc ZYX Euler di động.

+ Các hãng Kawasaki, Omron Adept Technologies và Stäubli sử dụng quy ước góc ZYZ Euler di động.

Bên cạnh đó, các góc Euler được sử dụng trong CATIA và SolidWorks được mô tả theo quy ước góc ZYZ
Euler di động.

Calculating Euler angles via rotation matrices:

44
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

X-Y-Z fixed angles (Euler fixed frame angles)

One method of describing the orientation of a frame {B} is as follows:


Start with the frame coincident with a known reference frame {A}. Rotate {B} first
about by an angle , then about by an angle , and by an angle .

Each of the three rotations takes place about an axis in the fixed reference frame
{A}. We will call this convention for specifying an orientation X-Y-Z fixed angles. The
word "fixed" refers to the fact that the rotations are specified about the fixed (i.e.,
nonmoving) reference frame (Figure next slide). Sometimes this convention is
referred to as roll, pitch, yaw angles, but care must be used, as this name is often
given to other related but different conventions.
Fixed Frame Rotation - Phép xoay quanh hệ trục cố định. 45
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

46
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

The derivation of the equivalent rotation matrix,    , is straightforward, because all rotations
occur about axes of the reference frame, that is:

Thinking in terms of rotations as operators, we have applied the rotations (from the right) of RX(), then
RY(), and then RZ(). Multiplying the above equation, we obtain:

Keep in mind that the definition given here specifies the order of the three rotations. 47
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Z-Y-X Euler angles (ZYX Euler mobile frame angles)


Another possible description of a frame {B} is as follows:

In this representation, each rotation is performed about an axis of the moving system {B} rather than one of the
fixed reference {A}. Such sets of three rotations are called Euler angles.

Figure in next slide shows the axes of {B} after each Euler-angle rotation is applied.

48
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

49
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Note that the result is exactly the same as that obtained for the same three rotations taken in the opposite order
about fixed axes!

Three rotations taken about fixed axes yield the same final orientation as the same three rotations taken in
opposite order about the axes of the moving frame
50
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

So sánh các cách biểu diễn hướng

51
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

52
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Ưu, nhược điểm của việc sử dụng quaternion:

- Lưu trữ thông tin ít: 4 thành phần (Euler thì 3 thành phần, DCM thì 9 thành phần)
- Không bị suy biến mất thông tin (Euler bị suy biến mất thông tin tại các góc 90 và -90 độ).
- Khối lượng tính toán thấp (Công trừ và nhân nhiều nhưng không sử dụng các phép lượng giác)
- Trực quan thấp.

53
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

8. Biến đổi vector


Một vectơ tự do (Free vector) là một vectơ có thể được định vị ở bất cứ đâu trong không gian mà không mất
hoặc thay đổi ý nghĩa, miễn là độ lớn và hướng được bảo toàn.
Ví dụ, một vectơ mô-men thuần túy luôn là một vectơ tự do. Nếu chúng ta có một vectơ mô-men BN được biểu
diễn trong {B}, thì chúng ta tính cùng một vector mô-men đó trong {A} là:

Tương tự, một vector vận tốc được viết trong {B} là BV sẽ được viết trong {A} là:

54
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Ngày nay các vi xử lý, vi điều khiển với khả năng tính toán ngày càng mạnh và giá thành rẻ góp phần làm nên
sự phát triển của ngành robot công nghiệp. Tuy nhiên, trong thời gian tới, tính toán hiệu quả sẽ vẫn là một vấn đề
quan trọng trong việc thiết kế một hệ thống điều khiển robot.
Các phép biến đổi thuần nhất được sử dụng trong các phần mềm/chương trình điều khiển của robot công
nghiệp như một khái niệm cơ bản. Tuy nhiên đa số các phần mềm không sử dụng chúng một cách trực tiếp mà
thay đổi cách tính toán một cách hiệu quả hơn, giảm bớt số phép tính.
Ví dụ: Xét một phép biến đổi gồm nhiều phép quay một vector

Cách tính thứ nhất là thực hiện phép nhân 3 ma trận quay thành rồi thực hiện phép tính biến đổi cuối cùng:

55
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Trong cách tính thứ nhất này, để thực hiện hợp nhất 3 ma trận quay phải dùng đến 54 phép nhân và 36 phép
cộng để có được ma trận . Sau đó để thực hiện phép biến đổi vector cuối cùng thì cần them 9 phép nhân và 6
phép cộng.
Như vậy tổng cộng đã dùng đến 63 phép nhân và 42 phép cộng để thực hiện phép biến đổi.
Nếu như thực hiện một cách tính thứ hai như sau:

Thì cách tính thứ hai này chỉ sử dụng tổng cộng 27 phép nhân và 18 phép cộng, chưa đến một nửa số phép
tính so với cách tính thứ nhất.
56
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

9. VÍ DỤ HƯỚNG DẪN LÀM BÀI TẬP


Bài tập 1
Một vector được biến đổi quay xung quay trục 𝑿 một góc  và sau đó quay quanh trục 𝒁 một góc .
a) Hãy xây dựng công thức ma trận quay để thực hiện các phép biến đổi trên theo thứ tự đã cho
b) Tính toán cụ thể cho trường hợp  = 300 và  = 450

Hướng dẫn thực hiện


a) Phép biến đổi quay:

1 0 0 𝑐𝑜𝑠 −𝑠𝑖𝑛 0
𝑅 𝑋 , Φ = 0 𝑐𝑜𝑠𝜙 −𝑠𝑖𝑛𝜙 𝑅 𝑍 ,  = 𝑠𝑖𝑛 𝑐𝑜𝑠 0
0 𝑠𝑖𝑛𝜙 𝑐𝑜𝑠𝜙 0 0 1

𝑐𝑜𝑠 −𝑠𝑖𝑛 0 1 0 0
𝑅 = 𝑅 𝑍 ,  𝑅 𝑋 , Φ = 𝑠𝑖𝑛 𝑐𝑜𝑠 0 0 𝑐𝑜𝑠𝜙 −𝑠𝑖𝑛𝜙
0 0 1 0 𝑠𝑖𝑛𝜙 𝑐𝑜𝑠𝜙

57
b) Thay số cụ thể
KHOA ĐIỆN
Bài tập 2 PGS. TS. Lê Tiến Dũng

Một hệ tọa độ {B} được xác định như sau: Ban đầu hệ tọa độ {B} trùng với hệ tọa độ {A}, sau đó thực hiện quay
{B} quanh trục 𝒁 một góc , và sau đó quay tiếp quanh trục 𝑿 một góc .
a) Hãy xây dựng công thức ma trận quay 𝑹 để thay đổi mô tả của một vector từ 𝑷 thành 𝑷
b) Tính toán cụ thể cho trường hợp  = 300 và  = 450
c) Hãy tìm
Hướng dẫn thực hiện

Các ma trận quay:

Do thực hiện phép quay quanh hệ trục di động (mobile frame), nên chúng ta có:

𝑹 = 𝑅 𝑍, 𝜃 𝑅 𝑋, 𝜙 =

58
𝑌 = −𝑆𝜃𝐶𝜙 𝐶𝜃𝐶𝜙 𝑆𝜙
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Bài tập 3
Cho một vector và ma trận biến đổi thuần nhất:
1.0 0.0 0.0 3.0 
 1.0  0.0 0.6 0.8  1.0
P   5.0  AT 

B B
0.0  0.8 0.6 1.0 
10.0  
0.0 0.0 0.0 1.0 
Hãy tính AP ?

Hướng dẫn thực hiện

A
P ABT.B P 1.0 0.0 0.0  3.0 1.0 0.0 0.0  3.0  1.0   2.0
0.0 0.0 0.6  0.8 1.4   5.0    3.6
 0.6  0.8 1.4  A  . 
A
T =
B
T 1 =  P ABT.B P = 0.0 0.8 0.6 0.2 10.0  10.2 
  
B A 0.0 0.8 0.6 0.2 
      
0.0 0.0 0.0 1.0  0.0 0.0 0.0 1.0   1.0   1 

59
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Bài tập 4

Cho một ma trận 3x3:

Hãy chứng minh rằng đây là một ma trận quay (rotation matrix).

Hướng dẫn thực hiện

60
KHOA ĐIỆN
PGS. TS. Lê Tiến Dũng

Bên cạnh đó, chúng ta có:

R là một ma trận
quay (rotation
matrix).

61

You might also like

  • CH 6
    CH 6
    Document33 pages
    CH 6
    Huỳnh Nguyễn
    No ratings yet
  • CH 3
    CH 3
    Document21 pages
    CH 3
    Huỳnh Nguyễn
    No ratings yet
  • CH 4
    CH 4
    Document46 pages
    CH 4
    Huỳnh Nguyễn
    No ratings yet
  • CH 2
    CH 2
    Document26 pages
    CH 2
    Huỳnh Nguyễn
    No ratings yet