control theory
위치제어
로봇 매니퓰레이터는 끝단을 통해서 작업을 합니다. 이렇게 끝단을 작업하려면 당연히 로봇을 구성하는 각 관절을 움직여야 하므로, 관절공간과 작업공간에서 각각 제어하는 방법이 필요합니다. 관절공간에서의 위치 제어는 로봇 끝단의 위치를 제어하기 위해 필요한 관절의 목표 위치를 계산한 후, 해당 위치로 관절이 이동할 수 있게 하는 것입니다. 이 경우, 작업공간 위치제어 전에 관절공간 위치제어기를 먼저 거치게 됩니다. 작업공간에서의 위치제어는 직접적으로 로봇의 끝단을 제어하기 위한 토크를 각 관절에 적용하는 방식으로 진행됩니다. 로봇 끝단을 이용한 작업은 크게 자유공간작업과 접촉작업으로 분류될 수 있습니다. 자유공간작업: 물체를 어떤 위치에서 다른 위치로 옮기는 것과 같이 환경과의 접촉이 없는 작업 접촉작업: 로..
궤적 생성 방법
드디어 제어를 로봇에 직접 적용할 수 있는 파트입니다. 물론, 직전에 배운 기구학, 동역학, 동역학 파라미터 추정 등이 로봇 매니퓰레이터 제어 시에 필요 없는 것이 절대 아닙니다. 다만, 본 장을 포함해 앞으로 나올 위치기반 제어, 토크 기반 제어, 힘 제어, 그리고 컴플라이언스 제어까지 모든 제어 방법을 하나의 요리라고 한다면, 지금까지 공부한 것들은 로봇의 상태를 이해하기 위한 재료를 준비한 것이기 때문이죠. 동역학 기반 위치제어나 힘제어를 수행하기 위해서는 로봇 매니퓰레이터 작업상의 시작위치와 종료위치 사이의 궤적(trajectory)을 시간에 대한 함수로 정의하여 제어를 수행하는 것이 좋습니다. 당연하게도, 이는 매 제어 샘플링마다 연속적인 제어 입력 값이 인가될 수 있어야 상대적으로 좋은 제어 ..
동역학 파라미터들에 관한 선형 동역학
지금까지 알아본 동역학/역동역학 산출 방식은 모두 파라미터들을 기반으로 계산됨을 알 수 있습니다. 하지만, 실제로는 모든 파라미터들을 정확하게 얻어내기 쉽지 않습니다. 로봇 동역학 모델 식(2.48)을 다시 보면서 얘기하자면, $M(q)\ddot{q}+C(q, \dot{q})\dot{q}+g(q)+d=\tau$ 본 식을 정확하게 구현함에 있어서 가장 어려운 부분은 로봇 링크들의 질량 $m$, 링크 별 무게중심까지의 거리 $r$, 링크 관성 $I$, 관절 구동기 관성 $I_m$, 관절의 마찰계수 $F_s, F_v$와 같은 동역학 파라미터를 정확하게 알기 어려운 것입니다. 그래서 동역학 모델 식 구조를 활용하여 동역학 파라미터들을 추정하는 문제는 오래도록 연구되고 있으며, 이에 대한 예제를 가지고 고찰해보고..
동역학 - 뉴턴 오일러 운동방정식 3
동역학 - 뉴턴 오일러 운동방정식 3 지금까지 알아본, 각 링크의 관절에 설정된 좌표계들 사이의 좌표변환 관계를 고려한 뉴턴-오일러 동역학 알고리즘은 다음과 같습니다. 1. 매니퓰레이터의 글로벌(0번째) 기준 좌표계에 대한 초기 조건을 설정한다. * 초기 직진가속도를 위와 같이 설정함에 따라 중력가속도는 모든 링크들에 자연스럽게 적용됩니다. 2. $i=1$부터 $i=n$까지 전진 순차를 적용합니다. 3. 매니퓰레이터의 끝단의 힘/모멘트에 관한 말단 조건을 가지고 $i=n$부터 $i=1$까지 후진 역차를 적용합니다. 4. $i$번째 관절에서의 힘/토크는 구동기 특성을 고려하여 다음과 같이 결정됩니다. 이제 2링크 매니퓰레이터의 동역학 모델에 적용해보겠습니다. 다음 그림과 같은 매니퓰레이터 시스템에 적용하기..