작업공간궤적 (Cartesian Space Trajectory)
쉽게 풀면
로봇 손끝이 시간에 따라 어디를 어떻게 지나가야 하는지 짜놓은 시간표예요.
왜 중요한가
용접선 따라가기, 도장, 접촉 작업처럼 엔드이펙터 경로 자체가 작업의 본질인 경우에는 관절이 아닌 작업공간에서 궤적을 정의해야 합니다. 산업용 로봇 언어의 직선·원호 이동 명령이 모두 이 범주에 속합니다. 산업용 로봇 언어의 직선(LIN)·원호(CIRC) 이동 명령이 이 방식에 해당하며, 프로그래머가 관절 각도를 전혀 몰라도 작업물 기준 좌표만으로 경로를 지정할 수 있게 해준다.
어떤 절차인가
작업공간궤적은 로봇 팔의 손끝(엔드이펙터)이 지나갈 위치와 자세를 시간의 함수로 정하고, 그것을 관절 명령으로 바꾸어 실행하는 절차입니다. 로봇의 과업은 손끝이 수행하지만 제어는 관절에 가해지므로, 두 좌표계를 이어 주는 역기구학이 중간에 들어갑니다.
- 경로 모양 정하기: 시작·끝 위치와 자세, 직선·원호 같은 형상.
- 시간 배정하기: 같은 경로라도 속도·가속도 프로파일(사다리꼴 속도 프로파일, 최소 저크 궤적 등)에 따라 시간표가 달라집니다.
- 일정 간격으로 샘플링: 제어 주기마다 그 시각의 손끝 위치·자세를 얻습니다.
- 역기구학으로 관절 값 얻기: 샘플마다 풀어 관절 명령으로 보냅니다. 여유 자유도가 있어 해가 무수히 많은 경우처럼 해가 여러 개일 수 있어, 이웃한 샘플끼리 같은 해의 가지를 따라가도록 고르는 규칙이 필요합니다.
언제 쓰고 무엇을 얻나
- 쓰는 때: 용접선, 도장, 접촉 작업처럼 손끝이 지나는 경로 자체가 작업의 품질을 정하는 경우입니다. 관절각을 직선으로 보간하면 관절각과 손끝 위치 사이의 관계가 비선형이어서 손끝이 일반적으로 직선을 그리지 않으므로, 경로 형상이 중요하면 작업공간에서 보간합니다(관절공간궤적과의 차이).
- 얻는 것: 형상을 직접 제어한 경로, 작업물 좌표만으로 쓰는 명령(관절각을 몰라도 됨), 속도·가속도가 정해진 시간표.
- 치르는 비용: 샘플마다 역기구학을 풀어야 하고, 역기구학은 순기구학보다 계산이 훨씬 복잡합니다. 경로가 특이점 근처를 지나면 관절 값이 불안정해질 수 있습니다.
계산 규모의 가늠: 가상의 예로, 길이 0.5 m의 직선을 0.25 m/s의 일정한 속도로 간다면 2초가 걸립니다(가속·감속 구간은 무시). 제어 주기가 1 kHz면 약 2,000번의 역기구학 풀이가 필요합니다.
논문에는 이렇게 적는다
- 경로의 형상과 매개변수(직선·원호, 시작·끝 위치와 자세)
- 시간 스케일링 함수(속도 프로파일의 종류와 최대 속도·가속도)
- 자세 보간 방법과 위치 보간과의 시간 동기화 방식
- 제어(샘플링) 주기와 역기구학 방법(해석해/수치해), 해의 가지를 고르는 규칙
- 특이점과 관절 한계를 다루는 방법
- 평가 지표: 경로 오차(최대·평균), 자세 오차, 실행 시간
예시 문장: “손끝 경로는 직선으로, 자세는 별도의 보간으로 생성하되 하나의 시간 스케일링 함수를 공유하도록 하였고, 매 1 ms마다 역기구학을 풀어 관절 명령을 산출하였다.” (설명을 위한 예문입니다.)
논문에서는 이렇게 쓰입니다
실제 논문에서
이 용어를 직접 쓴 국내 논문 문장을 아직 수집하지 못했습니다. 수집되는 대로 출처와 함께 싣겠습니다.
예시 문장
아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.
논문에서 작업공간궤적은 엔드이펙터의 경로 정밀도가 중요한 응용(용접, 도장 등)에서 사용되는 궤적 표현 방식으로 설명됩니다.
다만 매 제어 주기마다 역기구학 연산이 필요해 계산 부담이 커질 수 있다는 점이 함께 고려된다.
조금 더 깊게 보면
매 제어 주기에 역기구학을 풀어야 하므로 관절공간궤적보다 계산이 무겁고, 경로 중간에 특이점을 지나면 관절속도가 발산합니다. 위치는 직선으로 보간하고 자세는 쿼터니언 구면 보간을 쓰는 것이 관례이며, 이 둘의 시간 동기화가 어긋나면 경로는 맞아도 자세가 왜곡됩니다. 위치는 직선이나 원호로, 자세는 쿼터니언의 구면선형보간(SLERP)으로 각각 보간한 뒤 같은 매개변수(경로 진행률)로 시간에 동기화하는 것이 표준적인 구현 방식이다. 매 제어 주기 역기구학을 풀어야 하므로 계산 부담이 관절공간궤적보다 크고, 다중해가 있는 로봇에서는 이전 시점과 연속적인 해를 고르는 분기 관리가 별도로 필요하다.
주의할 점
작업공간궤적을 실시간으로 역기구학 변환할 때 특이점 근처를 지나면 계산이 불안정해질 수 있어 사전 검토가 필요하다.
위치와 자세를 서로 다른 보간법으로 독립적으로 계산하면 두 곡선의 진행 속도가 미묘하게 어긋나 경로 전체의 매끄러움이 손상될 수 있어, 동일한 시간 스케일링 함수를 공유하도록 설계해야 한다.
헷갈리기 쉬운 용어
궤적 계획과 제어는 이름이 비슷하지만 하는 일이 다릅니다.
| 용어 | 하는 일 | 구분 포인트 |
|---|---|---|
| 작업공간궤적 | 손끝의 위치·자세를 시간의 함수로 정함(계획) | 경로 형상을 직접 지정 |
| 관절공간궤적 | 관절 값을 시간의 함수로 정함(계획) | 관절 값은 단순해도 손끝 경로는 곡선이 되기 쉬움 |
| 역기구학 | 원하는 손끝 위치·자세에 해당하는 관절 값을 구함 | 궤적이 아니라 한 시점의 변환 |
| 작업공간제어 | 작업공간에서 정의한 오차를 줄이도록 제어 | 궤적(무엇을 따라갈지)과 제어(어떻게 따라가게 할지)는 별개 |
참고 문헌
- Craig, J. J. (2005). Introduction to robotics: Mechanics and control (3rd ed.). Pearson Education.
- Spong, M. W., Hutchinson, S., & Vidyasagar, M. (2006). Robot modeling and control. John Wiley & Sons.
- Taylor, R. H. (1979). Planning and execution of straight line manipulator trajectories. IBM Journal of Research and Development, 23(4), 424–436.
표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.