Forward Kinematics and Inverse Kinematics

조성호·2025년 1월 14일
1

Robotics

목록 보기
2/3
post-thumbnail

아래와같은 2 link 모델을 가정하자.

2개의 joint와 2개의 link, 그리고 1개의 end effector로 이루어진 간단한 모형이다. End effector는 로봇 집게 등이 달리는 곳이라고 생각하면된다.

이때 각도 θ1\theta_1θ2\theta_2를 알 때 절대 좌표계를 기준으로 한 QQ의 좌표를 알아내는 것이 Forward Kinematics이고, 절대 좌표계를 기준으로 한 QQ의 좌표를 알 때 각도 θ1\theta_1θ2\theta_2를 알아내는 것이 Inverse Kinematics이다.

Forward Kinematics는 크게 3단계로 진행된다.

  1. 각 Joint에 Frame(좌표계) 부여.
  2. 부여된 Frame사이의 Homogeneous Matrix 구하기.
  3. End Effector의 World Frame(절대 좌표계) 기준 좌표 구하기.

1. Forward Kinematics

앞서 기술한대로, 먼저 frame을 부여하도록 하겠다.

좌표계 1은 좌표계 0에서 rotation했고, 좌표계 2는 좌표계 1에서 translation과 rotation을 했다.

이제 Homogeneous Matrix를 구하자.

이제 목표인 Q20Q^0_2를 구하면,

끝났다.

2. Inverse Kinematics

Forward를 끝냈다면 Inverse는 너무도 간단하다. 아래와 같은 식 2개를 얻었기 때문에, xendx_{end}yendy_{end}의 값을 대입해주면 θ1\theta_1θ2\theta_2를 얻을 수 있다(l1l_1l2l_2의 길이는 known value).


모두의로보틱스에는 코드 구현에 대한 내용까지 나와있는데, 아직 이해하기에는 부족하여 일단은 패스했다.

Reference: 모두의 로보틱스 3강(Transformation & FK, IK)(https://roadbalance.teachable.com/courses/5cee42/lectures/48650228)

질문, 조언 환영합니당 ■

profile
즐겁게 살자

0개의 댓글