기준좌표계 A와 회전하는 링크 좌표계 B를 생각해보자. (원래 벡터표기할때 상단첨자를 왼쪽에 넣는다. 저 그림은 ppt에서 그린건데 도저히 ppt 수식에서 좌측 상첨자를 못찾아서 저렇게 쓴거임)

강체위 임의의 점 p의 위치벡터를 생각해보자. p^A = o^(AB) + p^B 로 나타낼수 있을까? 정답은 '없다'이다. 벡터 연산을 수행할때는 모든 벡터가 동일한 좌표계 내에서 표현되어야한다. 그러나 p^B는 좌표계 B에서 기술된 벡터이므로 이들간의 선형결합은 불가하다. 이때 사용하는게 회전행렬 (Rotation Matrix)이다. 회전행렬 유도과정은 아래 글에 친절히 설명되어있다.
https://cybernogada.tistory.com/73
(Robotics) 회전행렬 (Rotation Matrix)
Kinematics를 공부하기위해 먼저 manipulator의 운동에 대해 논해보자.먼저 manipulator 각 part에 대한 명칭이다. 고정축을 base, 중간 직선부를 Link (사람 팔의 뼈대), Link와 Link를 연결하는 Joint (사람 팔의
cybernogada.tistory.com
회전행렬을 이용해 p의 위치벡터를 기술하면 아래와 같다.

첨자위치때문에 헷갈릴수있지만 좌표계 B에서 기술된 벡터 p^B를 회전행렬 R을 곱함으로서 벡터의 기준좌표계 변환을 수행한것이다. 이 벡터연산을 행렬과 벡터의 곱으로 표현할수있다.

3D이므로 R은 3x3, o^(AB)는 3x1, p^B는 3x1일것이다. 이를 유의해 행렬곱을 해석해보자. 먼저 열 방향으로 1이 붙는것은 뒤의 식을 계산해보면 납득이 간다. R^(AB)와 p^(B)가 곱해진후 + O^(AB)텀을 위한 1이다. 이때 행렬의 크기를 맞춰주어야 하므로 p^A의 열방향에도 1을 붙여준다. 이제 p^A 열방향에 붙은 1을 처리해주기 위해 0 0 0 (p^B가 3x1 size이므로. 3개의 0으로 상쇄), 1을 위한 1이 붙는다. 이런식으로 행렬을 해석하면 납득이 된다. 이 행렬을 간략히

처럼 나타낼 수 있다. 그리고 이때 행렬 T를 동차변환행렬(Homogeneous Transformation Matrix)이라 한다. 왜 Homogeneous 라는 표현을 썼을까 생각해보면 아마 차원(좌표계)을 균질..(Homogeneous)하게 맞춰준다는 뜻일까..? gpt 피셜로는 회전과 병진 행렬을 하나의 행렬로 통일시켜 균질하다는 표현을 썼다는데 진위여부는 모르겠다. 그러나 대충 느낌은 알겠다.

동차변환행렬의 형식이다. 이걸보면 왜 4x4가 나오는지 이해할 수 있다. 3D에선 회전행렬이 3x3, 위치행렬이 3x1이기때문에 둘을 선형결합 한 후 투시,스케일링 행렬과 합쳤을때 4x4가 나오는것이다. 투시, 스케일링이라니 뭔말? → 1x3 사이즈의 영행렬을 '투시행렬', 1x1사이즈의 '1'을 '크기조정행렬' 이라하는데 Robotics에선 그냥 [0 0 0 1]로 고정해둔다. (위의 행렬 계산을 보면 이 0,0,0,1값이 납득될것이다.)중요한건 그 위에 3x4 사이즈의 회전, 위치 행렬이다.
동차변환행렬을 이용한 p^A = T^(AB) p^(B) 위치벡터 변환식을 보면 이것의 쓰임을 짐작할 수 있다. 로봇팔이랑 동차변환행렬이랑 뭔상관??? → 로봇 manipulator 또한 base를 기준으로하는 기준좌표계가 있고 각 링크마다의 회전좌표계가 있다. 말단의 위치를 구하기위해 각 링크의 동차변환행렬을 구한후 베이스에서부터 동차변환행렬 T^0, T^1, T^2.....T^n(말단) 까지 곱해주면 베이스 좌표계로부터 말단의 위치와 방위를 구할수있다.
'🔧 Mechanical Engineering > Robotics🐊' 카테고리의 다른 글
| (Robotics) 역기구학 (Inverse Kinematics) (0) | 2025.08.24 |
|---|---|
| (Robotics) 정기구학 (Forward Kinematics) - 연습 (0) | 2025.08.16 |
| (Robotics) 정기구학 (Forward Kinematics)-(1) (0) | 2025.08.11 |
| (Robotics) DH Parameter (0) | 2025.08.10 |
| (Robotics) 회전행렬 (Rotation Matrix) (0) | 2025.08.06 |