Operational Space Control
- 다른 이름: OSC, operational space formulation
- 카테고리: Control › Force & interaction control
- 태그: task-space-control, torque-control, manipulation, dynamics, redundancy
로봇 암의 동역학을 엔드 이펙터 좌표로 써서, 엔드 이펙터를 작업 공간에서 질량-스프링-댐퍼로 직접 지령할 수 있게 하는 토크 수준 제어 방법.
정의
작업 공간 제어(operational space control)는 Oussama Khatib이 1987년에 도입한 프레임워크로, 로봇을 관절 좌표가 아니라 작업의 좌표, 보통 엔드 이펙터의 위치와 방향에서 직접 제어한다. 출발점은 로봇의 운동 방정식을 그 작업 좌표로 다시 쓰는 것이다. 그 결과는 관절 공간 동역학과 같은 구조를 가지며, 관절 공간 관성 행렬 M과 야코비안 J로부터 만든 작업 공간 관성 행렬(task-space inertia matrix) Λ = (J M⁻¹ Jᵀ)⁻¹에, 엔드 이펙터에서 표현된 코리올리 항, 원심력 항, 중력 항이 더해진다.
이 모델을 가지고 제어기는 엔드 이펙터가 가해야 할 힘과 모멘트를 계산한다. 보통 자세 오차에 대한 PD 법칙을 Λ로 스케일하고 동역학 항을 상쇄한 것이며, 이를 야코비안 전치로 관절 토크로 변환한다. 그 효과로 엔드 이펙터는 데카르트 공간에서 단순하고 분리된 질량-스프링-댐퍼처럼 행동하며, 모든 방향에서 예측 가능한 응답을 보인다. 제어기가 힘으로 작업하기 때문에, 통합된 운동 및 힘 제어와 순응 접촉으로 자연스럽게 확장된다.
작업에 필요한 것보다 관절이 많은 여유자유도 로봇에서는, 작업 공간 제어가 주 작업의 영공간(null space)에 보조 목표를 추가한다. 이때 동역학적으로 일관된 투영을 사용하므로, 예를 들어 자세 목표나 관절 한계 목표가 엔드 이펙터를 교란하지 않는다. 우선순위가 매겨진 작업을 쌓는 이 아이디어는 휴머노이드를 위한 많은 전신 제어기의 기반이다. 이 방법은 합리적인 동역학 모델과 관절 토크 제어에 의존하며, 작업 공간 관성은 특이점 근처에서 악조건이 되므로, 실제 구현은 감쇠를 추가하고 모델이 불확실할 때는 더 단순한 작업 공간 임피던스 법칙으로 물러난다.
중요한 이유
매니퓰레이션 작업은 관절 각도가 아니라 공구가 어디에 있고 어떻게 밀어야 하는지로 지정된다. 작업 공간 제어는 로봇이 일관된 강성과 순응성으로 그런 관점에서 추종하고 반응하게 해 주며, 그래서 엔드 이펙터 목표를 출력하는 학습된 정책 아래의 저수준 제어기로 흔히 쓰인다.
주요 응용
- 학습된 매니퓰레이션 정책이 출력한 엔드 이펙터 자세의 저수준 제어
- 닦기, 삽입, 밀기 같은 순응 접촉 작업
- 작업 방향별로 다른 운동 및 힘 제어의 결합
- 우선순위가 매겨진 작업을 가진 휴머노이드와 모바일 매니퓰레이터의 전신 제어
- 조작자 명령이 데카르트 공간에서 주어지는 원격 조작
실제 사례
토크 제어 팔 위에 구축된 학습 환경에서, 정책이나 행동 프리미티브 집합이 목표 엔드 이펙터 자세의 시퀀스를 낮은 속도, 예를 들어 초당 열 번 출력한다. 수백 헤르츠 이상으로 실행되는 작업 공간 제어기가 각 목표를 관절 토크로 바꾼다. 자세 오차를 계산하고, 강성 및 감쇠 이득을 적용하고, 작업 공간 관성으로 스케일하고, 중력 보상을 더한 뒤, 결과를 야코비안 전치를 통해 사상한다. 영공간 항은 팔꿈치를 편안한 자세 근처에 유지한다. 엔지니어는 팔이 자유 공간에서는 잘 추종하되 선반이나 물체에 닿으면 양보하도록 강성을 튜닝하고, 팔이 특이 구성에 가까워지는 곳에서는 이득을 낮추거나 감쇠를 추가한다.
흔한 오해
- 작업 공간 제어는 역기구학과 같다 — 자세를 위치 제어기를 위한 관절 각도로 변환하는 것이 아니라, 로봇의 동역학과 함께 토크 수준에서 작동한다
- 완벽한 동역학 모델이 필요하다 — 좋은 모델로부터 이득을 보지만, 배치된 많은 버전은 근사 관성을 사용하고 오차를 흡수하는 데 피드백 이득에 의존한다
- 엔드 이펙터를 지령하면 팔 전체가 고정된다 — 여유자유도 로봇에서는 영공간 운동을 별도로 제어해야 하며, 그렇지 않으면 팔이 표류할 수 있다
알아야 할 사람
- 매니퓰레이션 제어 엔지니어
- 행동 공간을 선택하는 로봇 학습 연구자
- 휴머노이드 및 전신 제어 개발자
- 로봇 동역학을 공부하는 로보틱스 학생
관련 기술
- 계산 토크 제어(Computed Torque Control)
- 임피던스 제어(Impedance Control)
- 영공간 투영(Null-Space Projection)
- robosuite
- Pinocchio
관련 용어
- Jacobian
- Torque Control
- Impedance Control
- Whole-Body Control
- Hybrid Position/Force Control
- Motion Primitive
관련 프로젝트
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
- NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
- OpenVLA: 7B-parameter Vision-Language-Action model for robotic manipulation
- Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
- OpenArm: 7DOF humanoid arm for physical AI research in contact-rich environments