기구학(kinematics)은 로봇의 관절 좌표와 공간 배치 간의 관계를 다루는 학문 입니다. 전통적인 물리학에서의 역학(dynamics)과 다른 점은 강체에 대한 질량을 제외한 역학 입니다. 질량이 없으므로 힘(force)를 다루지 않습니다.
1. 정방향 기구학 (Forward Kinematics)
정방향 기구학은 로봇의 관절(joint) 회전각을 통해 로봇의 말단장치(end-effector)의 좌표를 구하는 학문 입니다.
아래 그림의 왼쪽 그림은 로봇 좌표계로써 관절의 회전에 대한 로봇 좌표계이고, 오른쪽 그림은 수학적 표현을 위한 직교 좌표계 입니다. 정방향 기구학은 관절의 회전 각도를 통해서 직교 좌표계의 좌표 값(x, y, z)을 구하는 것입니다.
정방향 기구학은 아래 그림과 같이 삼각함수(sin 함수, cos 함수)를 통해서 관절의 각도를 갖고 직교 좌표계의 좌표를 구하는 식입니다. 이는 관절 각도를 갖고는 말단장치의 위치가 어디인지를 알 수 없기 때문에 직교 좌표계에 있는 좌표 값을 통해서 말단장치가 어디에 위치 해 있는지 알 수 있습니다.
위 예는 2 자유도(Dgree Of Freedom)이기 때문에 계산식이 간단하지만 자유도가 늘어남에 따라 계산식이 간단하지는 않습니다.
2. 역방향 기구학 (Inverse Kinematics)
정방향 기구학보다는 역방향 기구학이 더 중요 합니다. 역방향 기구학은 직교 좌표계의 좌표(x, y, z)를 관절의 회전 각도 값으로 구하는 것입니다. 이는 직교 좌표계를 로봇 좌표계로 변환 하는 것입니다. 로봇 제어는 로봇 좌표계의 관절 각도를 통해서만 할 수 있기 때문입니다.
집게가 달린 로봇 팔(manipulator)이 컵을 잡는다고 할 때 말단장치가 컵이 있는 위치까지 이동을 하기 위해서는 직교 좌표계에서 컵의 위치를 먼저 구해야 합니다. 컵의 좌표를 구한 후에는 좌표에 해당 하는 로봇 관절의 각도를 구하여 로봇의 말단 장치를 이동 시킵니다.
역방향 기구학에서 좌표를 갖고 관절의 각도를 구하는 것은 쉽지는 않습니다. 또한 아래 그림과 같이 한 좌표에 대해 관절의 각도가 하나의 경로가 아닌 2개의 경로가 있고, 자유도가 커지면 더 많은 경로가 있습니다.
'로봇 이야기 > ros2' 카테고리의 다른 글
ROS2 Humble Docker 이미지 만들기 (0) | 2023.03.03 |
---|---|
ROS2 Foxy Docker 이미지 만들기 (0) | 2023.03.02 |
매니퓰레이터(manipulator) URDF 모델링 (0) | 2022.12.31 |
xacro (XML macro) (0) | 2022.12.30 |
URDF(Unified Robot Description Format)란? (0) | 2022.12.13 |
댓글