강체는 병진운동과 회전운동을 한다.
지금까지 축의 회전에 대해서 다루었다면
지금부터는 병진운동을 고려하여 강체를 나타내는 행렬을 공부한다.
잠깐 복습!
지금까지 크게 SE(3), se(3)을 다루었다.
SO(3) : R(Rotation Matrix)
원점이 고정된 상태에서 축이 어떻게 회전했는지를 나타내는 행렬이다.
keunjun.blog/2018/10/09/%EB%A1%9C%EA%B3%B5%EC%9E%85-03-rigid-body-motions-rotation-matrices-2/
[로공입] 03. Rigid-Body Motions: Rotation Matrices (2) - Keunjun
이전 글에서는 회전 행렬 (rotation matrix) 의 정의와 성질에 대해서 알아봤다. 이번 글에서는 회전 행렬의 사용법과 자세 (orientation)의 여러 표현 방법에 대해서 알아보고자 한다. Rotation Matrix Use of R
keunjun.blog
so(3) : [w](Angular velocity skew-symmetirc matix)
SE(3)의 경우에 어떤 속도로 회전했는지를 나타내는 행렬이다.
keunjun.blog/2018/10/09/%EB%A1%9C%EA%B3%B5%EC%9E%85-04-rigid-body-motions-angular-velocities/
[로공입] 04. Rigid-Body Motions: Angular Velocities - Keunjun
지금까지는 표현하고자하는 body frame 은 움직이지 않았다. 지금부터는 body frame 이 시간에 따라서 움직이는 상황에 대해서 살펴볼 것이다. Angular Velocity 시간에 따라서 움직이는 body frame 이 있을때
keunjun.blog
이 둘 사이의 관계를 so(3)에서 exponential을 취해 SO(3)로 변환할 수 있었고 그 반대는 log를 취했다.
[로공입] 05. Rigid-Body Motions: Exponential Coordinate Representation of Rotation - Keunjun
회전 행렬을 공부할 때 Euler angle, roll-pitch-yaw 와 같은 표현법에 대해서 공부한 적이 있다. 이번에는 이 전 글에서 배운 각속도를 이용해 회전 행렬의 또 다른 표현하는 방법에 대해서 공부해본다.
keunjun.blog
각 개념에 대해 정말 잘 설명한 블로그를 참고했는데 이를 먼저 읽어보면 좋다.
이처럼 축의 회전, 속도를 공부했다.
이제 강체로 일반화해보자.
이는 내가 참고한 블로그의 6~9에 해당하는 내용이다.
1) Homogeneous Transformation Matrix(T, SE(3) group)
원점이 이동하고 축이 회전하는 병진운동과 회전운동을 모두 고려하는 강체운동을 나타내는 행렬이다.
[로공입] 06. Rigid-Body Motions: Homogeneous Transformation Matrices - Keunjun
지금까지는 회전에 대해서만 공부했다. 이 글에서는 회전 (rotation)에 이동 (translation)을 모두 함께 다루는 표현에 대해서 공부해보자. Homogeneous Transformation Matrices 회전 행렬 공부했을때처럼 똑같
keunjun.blog
Rsb(Rotation matirx)와 비슷하게 Tsb(Homogeneous Transformation Matrix)는 s에서 바라본 b 프레임이다.
차이점은 R은 축의 병진이동을 고려하지 않고 회전만 고려했고 T는 병진이동과 회전까지 고려한다.
역행렬 연산도 다르다.
R의 역행렬은 R'(transposed matrix)이지만 T의 역행렬은 필기와 같다.
공간 상에 위치한 점 p의 기준좌표변환도 다르다. R의 경우 3by3행렬로 p(3*1)와 행렬곱이 가능하지만 T의 경우 4*4행렬이다. 따라서 필기와 같이 연산한다.
필기의 오른쪽 부분내용처럼 연산순서, 기준프레임 확인이 중요하다.
오른쪽의 첫번째 식을 보면 TTsb가 있는데 T가 Tsb의 왼쪽에 있어 s프레임에 대한 w와 p로 생각해야하며 결합법칙이 성립하고 교환법칙이 성립하지 않으므로 회전을 먼저 하고 병진(Trans(p))를 한다. 이처럼 수식이 의미하는 움직임을 잘 해석할 수 있어야 한다.
이러한 Homogeneous Transformation Matrix는 SE(3) 그룹으로 정의한다.
2) Twist(V,se(3) group)
SE(3)의 경우에 어떤 속도로 운동하는지 나타내는 행렬이다.
원점이 고정되어 병진운동없이 회전만한 경우(so(3))에는 회전속도(w)만 있었지만
병진운동과 회전운동이 함께 나타나는 강체의 운동의 경우의 속도(se(3))는 병진속도(v)와 회전속도(w)를 모두 포함한다.
keunjun.blog/2018/10/22/%EB%A1%9C%EA%B3%B5%EC%9E%85-07-rigid-body-motions-twists/
[로공입] 07. Rigid-Body Motions: Twists - Keunjun
지금까지는 3차원 공간에서 존재하는 물체의 자세와 위치에 대해서 표현하는 방법을 공부했다. 우리는 자세와 위치를 표현하기 위해서 transformation matrix 을 이용했고 이러한 행렬들의 모임을 \(SE
keunjun.blog
강체의 공간에서의 속도를 나타낸 행렬(6 by 1)이다.
정리하면 R(SO(3))에서 [w](so(3))를 구한 것 처럼,
T(SE(3))에서 [V](se(3), 4 by 4)를 정의하고 V(6 by 1)를 Twist라고 정의한다.
3) scew
공간상에서 강체의 속도를 Twist로 표현할 수도 있지만 공간 상에 존재하는 보이지 않는 회전축 S와 그 축을 중심으로 한 각속도로 표현할 수 있다.
V=[w1 w2 w3 v1 v2 v3]'
=S*세타닷
4) Wrench
출처
www.coursera.org/learn/modernrobotics-course1/lecture/nwmqG/wrenches-chapter-3-4
Wrenches (Chapter 3.4) - Chapter 3: Rigid-Body Motions (Part 2 of 2) | Coursera
Video created by 노스웨스턴 대학교 for the course "Modern Robotics, Course 1: Foundations of Robot Motion". Homogeneous transformation matrices, twists, screws, exponential coordinates of rigid-body motion, and wrenches.
www.coursera.org
'기계공학부 시절의 기록 > 로보틱스' 카테고리의 다른 글
네이버랩스 로봇 연구팀은 지금 무엇을 고민하고 어디까지 와있는가 (0) | 2021.10.25 |
---|---|
네이버랩스의 AMBIDEX와의 비교 (0) | 2021.10.06 |
로봇 관절의 회전 표현방법 2가지 : 회전행렬, w세타 (0) | 2021.01.09 |
각속도 (0) | 2021.01.09 |
MR 3.1~3.2 : 회전행렬 (0) | 2021.01.07 |
댓글