
운동량 보존에 기반한 자유 부유 우주 매니퓰레이터를 위한 비선형 모델 예측 제어
CopyrightⓒKROS
Abstract
This paper proposes a nonlinear model predictive control (NMPC) for free-floating space manipulator (FFSM) based on momentum conservation. First, the FFSM was modeled as a serial-chain robot with a total of thirteen degrees-of-freedom (DoFs), comprising six-DoFs for the satellite and seven-DoFs for the manipulator. The dynamics were reformulated as an expression for the joint accelerations of the manipulator. A double integrator model was adopted as the system model for optimal control, and momentum conservation constraints were incorporated to reflect the characteristics of free-floating motion. Finally, the validity of the proposed method was verified through simulation results.
Keywords:
Free-Floating Space Manipulator (FFSM), Nonlinear Model Predictive Control (NMPC)1. 서 론
자유 부유 우주 매니퓰레이터(FFSM: Free-Floating Space Manipulator)는 우주에서 잔해물 제거, 아군 위성의 수리 및 재급유 등 다양한 작업을 수행하기 위해 최근 활발히 연구되고 있다[1-4]. FFSM의 가장 큰 특징은 인공위성의 추력기를 사용하지 않고, 매니퓰레이터의 동력만으로 움직인다는 점이다. 이 과정에서 지상과 달리 베이스가 고정되지 않으므로, 매니퓰레이터가 움직일 때 인공위성도 그 영향을 받아 함께 움직이게 된다. 이러한 특성은 작업 수행 시 주요한 어려움으로 작용한다.
비선형 모델 예측 제어(NMPC: Nonlinear Model Predictive Control)[5-7] 는 주어진 시스템 모델을 기반으로, 정해진 구간(receding horizon) 동안 비용함수(cost function)와 구속 조건(constraints)을 고려하여 최적의 제어입력과 상태를 예측하는 제어 방법이다. FFSM의 동역학을 시스템 모델로 삼아 NMPC를 수행하는 경우[8] 또는 FFSM의 동역학을 선형화하여 시스템 모델로 사용하는 경우[9,10], 관성 행렬과 코리올리 행렬, 혹은 이들의 편미분 값을 매번 계산해야 하므로 연산량이 증가하게 된다. 이로 인해 주어진 시간 내에 해를 찾지 못할 가능성이 발생할 수 있으며, 동역학을 선형화하는 경우에는 선형화 과정에서 발생하는 오차로 인해 제어 성능이 저하될 수 있다. 이러한 문제들은 특히 우주 환경에서 치명적인 단점으로 작용한다. 이에 대한 대안으로 기구학적 이중 적분(double integrator) 모델을 사용할 수 있지만, 동역학적 특성을 반영하지 않기 때문에 시스템 모델의 제어입력이 힘과 모멘트 벡터가 아니라 관절의 가속도 벡터로 변환되므로, 자유 부유 특성을 구현하기 어렵다는 또 다른 단점이 발생한다.
본 논문에서는 운동량 보존에 기반한 FFSM의 NMPC 방법에 대해 제안한다. FFSM의 인공위성이 외부 힘이나 모멘트가 없는 부유 기동 상황에서는 운동량이 보존되므로[11], 시스템 모델로 기구학적 이중 적분 모델을 사용하되 운동량 보존에 대한 제약 조건을 추가하여 자유 부유 특성을 구현할 수 있다. 또한, 운동량 계산 시 전체 관성 행렬을 사용하는 대신 인공위성 자체의 관성 행렬과 인공위성과 매니퓰레이터 간 커플링된 부분의 관성 행렬만 계산하며, 동역학을 시스템 모델로 사용하는 방법과 다르게 코리올리 행렬을 계산하지 않기 때문에 연산량 측면에서 효율성을 제공한다.
본 논문의 주요 내용 및 구성은 다음과 같다. 2장에서 FFSM의 기구학/동역학 모델링을 진행한다. 3장에서는 FFSM의 최적 제어에 관하여 논하고, 4장에서는 시뮬레이션을 통해 제안된 제어 방법의 유효성을 입증한다. 마지막으로 5장에서 결론을 통해 논문을 마무리 짓는다.
2. FFSM 모델링
2.1 기구학 모델링
본 논문에서는 [Fig. 1]과 같이 3개의 선형(prismatic) 관절과 3개의 회전(revolute) 관절을 사용하여 인공위성의 6자유도 움직임을 모델링하였다. 여기에 매니퓰레이터의 7자유도를 더하여, FFSM의 기구학은 총 13자유도를 가지는 직렬 체인 로봇의 기구학과 동일한 방식으로 구할 수 있다. 이때, 인공위성의 움직임을 모델링하는 6개의 관절은 모두 수동 관절이라는 점을 유의해야 한다.
2.2 동역학 모델링
FFSM의 동역학은 다음 식 (1)과 같다.
| (1) |
여기서 M, C, τ, q는 각각 관성 행렬, 코리올리 행렬, 관절의 힘과 모멘트 벡터, 관절 벡터이고, 아래첨자 (ㆍ)b, (ㆍ)m은 각각 인공위성, 매니퓰레이터와 관련된 변수임을 나타내며, (ㆍ)mb, (ㆍ)bm은 둘 간의 커플링된 항목을 나타낸다. 이때 식 (1)을 τm에 관하여 풀면, 다음과 같이 FFSM의 동역학을 매니퓰레이터의 관절 가속도 에 관한 식으로 정리할 수 있다.
| (2) |
여기서 는 코리올리 벡터이며, Mg는 다음과 같이 정의된 일반화된 관성 행렬(generalized inertia matrix)[12]이다.
| (3) |
2.3 시스템 모델
NMPC를 위한 최적 제어에서는 시스템의 다음 단계 상태를 얻기 위한 시스템 모델이 필요하며, 다음 식 (4)와 같이 표현된다.
| (4) |
여기서 X와 u는 각각 시스템의 상태벡터와 제어입력이다. FFSM의 동역학을 이용하여 시스템 모델을 구성하면 아래 식 (5)와 같이 표현된다.
| (5) |
이때 이다. 하지만 식 (5)는 각각의 단계마다 M-1와 C를 계산하기 때문에, 연산량이 많다는 단점이 있다. 따라서 본 논문에서는 식 (5)의 대안으로 아래 식 (6)의 기구학적 이중 적분(double integrator) 모델을 사용한다.
| (6) |
기구학적 이중 적분 모델은 동역학 정보를 사용하지 않고, 위치-속도, 속도-가속도 간의 적분 관계만을 통해 시스템의 다음 상태를 얻는다. 여기서 시스템의 상태벡터 X는 식 (5)와 같지만, 제어입력은 관절의 힘, 모멘트 벡터가 아닌 관절 가속도 벡터로 정의된다, 즉 이다. 이때 수동 관절에 토크 입력이 없더라도, 반작용에 의한 움직임으로 가속도가 발생할 수 있다는 점을 유의하라. 기구학적 이중 적분 모델은 =AX+Bu로 표현되는 시스템 방정식에서, A와 B 가 모두 상수이기 때문에, 식 (5)를 시스템 방정식으로 사용하는 경우보다 연산 측면에서의 이점을 갖는다. 하지만 식 (6)의 시스템 모델은 식 (5)와 달리 제어입력이 관절의 힘, 모멘트 벡터가 아니기 때문에, 인공위성의 움직임을 모델링하는 수동 관절의 특성을 반영할 수 없음을 유의해야 한다.
3. FFSM 최적 제어
3.1 최적 제어 문제 정의
이번 절에서는 2장에서 정의된 FFSM 모델을 기반으로, 본 연구에서 사용된 모델 예측 제어를 위한 최적 제어 문제를 다음의 식 (7)과 같이 정의한다.
| (7a) |
subject to
| (7b) |
| (7c) |
| (7d) |
| (7e) |
이때 식 (7a)의 비용함수는 다음과 같다.
| (8) |
여기서 와 는 각각 끝단의 위치와 회전 오차를 나타내며, Q(ㆍ)는 각 항의 가중치(weight)를 의미한다. 식 (7b-d)는 등식 제약 조건을 나타내며, 식 (7b)는 식 (6)을 샘플링 시간 st로 이산화(discretization)한 결과이다. 식 (7c)는 시스템의 초기 상태에 대한 제약 조건을 나타내며, 식 (7d)는 운동량 보존에 대한 제약 조건으로, FFSM의 인공위성이 외부 힘이나 모멘트가 없는 부유 기동 상황에서는 운동량이 보존된다는 가정을 기반으로 한다. 또한, 초기 운동량은 영벡터라고 가정한다. 이를 통해 식 (7d)는 인공위성의 움직임을 모델링하는 수동 관절의 특성, 즉 FFSM의 구동기가 부족한(under-actuated) 시스템 특성을 반영한다. 마지막으로, 식 (7d)는 부등식 제약 조건으로서 장애물과 끝단 사이의 거리가 일정 임계값 d 이하로 접근하지 못하도록 설정하는 역할을 한다.
3.2 경로 생성
예측구간(T)이 짧아질수록 목표 지점 도달까지 소요 되는 시간이 길어지게 되며, 짧은 샘플링 시간에서 많은 샘플을 처리해야 하는 예측구간의 경우, 연산량의 증가로 인해 목표로 설정된 샘플링 시간보다 연산시간이 길어지는 경우가 생긴다. 이를 고려하여 제안된 최적 제어 문제는 0.5초의 이동 구간에 대한 상태 예측을 위해 100[ms]의 샘플링 시간(st)으로 5개의 샘플을 예측하였다. 그러나 제어 주기(dt)가 1[ms]이므로, 예측된 샘플 간의 값을 [Fig. 2]에 나타난 것처럼 보간(interpolation)하여 목표 경로를 생성하였다.
3.3 제어기 설계
매니퓰레이터를 구동하기 위한 제어기로는 식 (2)를 기반으로 한 관절공간 역동역학 제어기를 사용하였으며, 이는 다음의 식 (9)와 같이 표현된다.
| (9) |
이때 는 매니퓰레이터 관절의 가속도 지령을 나타내며, 이는 다음 식 (10)과 같이 비례-적분-미분 제어기를 통해 생성된다.
| (10) |
여기서 KP, KD, KI는 각각 비례, 미분, 적분 이득을 나타내며, 는 보간을 통해 계산된 중 매니퓰레이터에 해당하는 부분으로부터 얻을 수 있다. 이때의 제어입력은 매니퓰레이터의 제어를 위해 사용되는 입력으로, 2.3절에서 언급된 시스템의 다음 단계를 예측하기 위한 제어입력과는 다르다는 점에 유의하라. 제어입력 u를 통해 정해진 구간에 대한 예측값을 얻고, 이를 목표 경로로 활용하여 τm를 사용하여 로봇의 제어를 수행한다.
4. 시뮬레이션 및 결과
이번 절에서는 제안된 제어 방법의 검증을 위해 시뮬레이션을 진행하고 그 결과를 분석한다. 모든 시뮬레이션은 Intel Core i7-13620H 프로세서(2400 Mhz, 10코어)를 탑재한 시스템에서 수행되었고, 운영 체제는 Windows 11 Pro를 사용하였다. 시뮬레이터는 PyBullet[13] 사용하였으며, FFSM의 기구학 및 동역학은 사전에 작성된 URDF를 통해 Pinocchio interface[14]를 사용하여 계산되었다. 최적 제어는 Tasho[15] 툴체인을 통해 구현되었고, 비선형 최적화 solver로는 COIN-OR에서 개발한 Interior-Point (IP) 방법 기반의 IPOPT-MA57[16,17]가 적용되었다. 비용함수와 제어기의 가중치와 이득 값은 [Table 1]에 제시된 값과 같다.
4.1 Point-to-Point (PTP) 궤적 생성
FFSM의 작업 공간에서 목표 위치(position)는 [Fig. 3]과 같이 주어졌다. 이 경우 식 (8)의 Qr = 0이며, 장애물이 없기 때문에 식 (7e)의 제약 조건은 적용되지 않는다. [Fig. 4]에서 볼 수 있듯이 목표 위치로 도달하는 궤적이 생성되고, 이를 성공적으로 추종하는 모습을 보여준다. [Fig. 5]에서 와 가 크기가 같고 부호가 반대임을 확인할 수 있으며, [Fig. 6]을 통해 FFSM이 움직이는 동안 인공위성의 운동량 L = Lb + Lbm이 영벡터에 가까운 값으로 보존됨을 확인할 수 있다. 이때 운동량은 수치적으로 계산되었기 때문에, 인공위성과 매니퓰레이터의 운동량을 합한 값이 완벽하게 영벡터를 유지하지는 않는 모습을 보인다. 이를 통해 식 (7d)의 제약 조건이 FFSM의 구동기가 부족한 특성을 효과적으로 반영했다는 사실을 알 수 있다.
The fact that Lb and Lbm have equal magnitudes but opposite signs indicates that the linear momentum of the satellite (upper graph) and the angular momentum (lower graph) are conserved to zero vector
4.2 장애물 회피
[Fig. 7]은 FFSM이 우주 잔해물(초록 상자)을 회피하는 시뮬레이션 과정을 보여준다. 1-3번 그림에서는 4.1절에서 설명한 대로 FFSM의 끝단이 목표 위치(목표 위성의 런처 링 근처)로 다가가는 과정을 보여준다. 이때 4.1절과는 달리 회전 오차와 장애물 회피를 고려한다. 4-6번 그림은 잔해물이 다가옴에 따라 매니퓰레이터 끝단이 이를 회피하는 과정을 보여준다. 회피 후에는 최종적으로 목표 위치로 돌아가는 모습을 6번 그림에서 확인할 수 있다. 전체 그림의 흐름을 통해 매니퓰레이터의 움직임에 따라 인공위성도 작용-반작용 원리, 즉 운동량 보존 법칙에 따라 움직이게 됨을 볼 수 있다. 이를 반영한 최적 제어 문제를 고려했기 때문에 매니퓰레이터의 제어입력 τm만으로도 원하는 작업을 수행할 수 있게 된다.
4.3 연산시간 비교
[Fig. 8]은 4.1절에서 진행한 시뮬레이션의 시스템 모델을 각각 기존의 동역학 모델(상단의 그래프)과 제안된 방법(하단의 그래프)으로 사용했을 경우의 각 단계별 연산 시간을 나타낸 그래프이다. 기존 방법의 경우 평균 연산시간이 0.62108[s]로 샘플링 시간(st)인 0.1[s]를 초과하는 반면, 제안된 방법은 평균 연산시간(0.025798[s])뿐만 아니라, 전 구간에서의 연산시간이 0.1[s] 이내로 유지되는 것을 확인할 수 있다. 해당 결과를 통해 제안된 방법이 기존 방법에 비해 연산량 측면에서 우수한 성능을 보인다는 사실을 확인할 수 있다.
5. 결 론
본 논문에서는 운동량 보존에 기반한 FFSM의 NMPC를 제안하였다. 먼저, FFSM을 인공위성의 6자유도와 매니퓰레이터의 7자유도를 포함한 총 13자유도의 직렬 체인 로봇으로 모델링하였다. 동역학은 식 (1)을 재구성하여 식 (2)와 같이 매니퓰레이터의 관절 가속도에 관한 식으로 유도하였다. 최적 제어를 위한 시스템 모델로는 기구학적 이중 적분 모델을 채택하였으며, 운동량 보존 제약 조건을 추가하여 자유 부유 움직임의 특성을 반영하였다. 마지막으로, 시뮬레이션 결과를 통해 제안된 방법의 유효성을 확인하였다.
Acknowledgments
This work was supported in part by the Institute of Civil Military Technology Cooperation funded by the Defense Acquisition Program Administration and Ministry of Trade, Industry and Energy of Korean government under grant No. 22-CM-EC-36, Republic of Korea.
References
-
H. Wang, D. Guo, H. Xu, W. Chen, T. Liu, and K. K. Leang, “Eye-in-Hand Tracking Control of a Free-Floating Space Manipulator,” IEEE Transactions on Aerospace and Electronic Systems, vol. 53, no. 4, pp. 1855-1865, Aug., 2017.
[https://doi.org/10.1109/TAES.2017.2674218]
-
J. N. A. D. Bueno, W. G. Serrantola, R. A. Bezerra, and V. Grassi, “LQR and H-Infinity Controls of a Free-Floating Space Manipulator with Two Arms,” 2016 XIII Latin American Robotics Symposium and IV Brazilian Robotics Symposium (LARS/SBR), Recife, Brazil, pp. 85-90, 2016.
[https://doi.org/10.1109/LARS-SBR.2016.21]
-
X. Shao, W. Yao, X. Li, G. Sun, and L. Wu, “Direct Trajectory Optimization of Free-Floating Space Manipulator for Reducing Spacecraft Variation,” IEEE Robotics and Automation Letters, vol. 7, no. 2, pp. 2795-2802, Apr., 2022.
[https://doi.org/10.1109/LRA.2022.3143586]
-
T. Oki, H. Nakanishi, and K. Yoshida, “Whole-body motion control for capturing a tumbling target by a free-floating space robot,” 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Diego, CA, USA, pp. 2256-2261, 2007.
[https://doi.org/10.1109/IROS.2007.4399591]
-
A. Astudillo, J. Gillis, M. Diehl, W. Decré, G. Pipeleers and J. Swevers, “Position and Orientation Tunnel-Following NMPC of Robot Manipulators Based on Symbolic Linearization in Sequential Convex Quadratic Programming,” IEEE Robotics and Automation Letters, vol. 7, no. 2, pp. 2867-2874, April, 2022.
[https://doi.org/10.1109/LRA.2022.3142396]
-
S. S. Mansouri, C. Kanellakis, B. Lindqvist, F. Pourkamali-Anaraki, A.-a. Agha-mohammadi, J. Burdick, and G. Nikolakopoulos, “A Unified NMPC Scheme for MAVs Navigation With 3D Collision Avoidance Under Position Uncertainty,” IEEE Robotics and Automation Letters, vol. 5, no. 4, pp. 5740-5747, Oct., 2020.
[https://doi.org/10.1109/LRA.2020.3010485]
-
E. Kayacan, E. Kayacan, H. Ramon, and W. Saeys, “Robust Tube-Based Decentralized Nonlinear Model Predictive Control of an Autonomous Tractor-Trailer System,” IEEE/ASME Transactions on Mechatronics, vol. 20, no. 1, pp. 447-456, Feb., 2015.
[https://doi.org/10.1109/TMECH.2014.2334612]
-
R. Lampariello, H. Mishra, N. Oumer, P. Schmidt, M. De Stefano, and A. Albu-Schäffer, “Tracking Control for the Grasping of a Tumbling Satellite With a Free-Floating Robot,” IEEE Robotics and Automation Letters, vol. 3, no. 4, pp. 3638-3645, Jul., 2018.
[https://doi.org/10.1109/LRA.2018.2855799]
-
T. Rybus, K. Seweryn, and J. Z. Sasiadek, “Control system for free-floating space manipulator based on nonlinear model predictive control (NMPC),” Journal of Intelligent & Robotic Systems, vol. 85, pp. 491-509, Jul., 2017.
[https://doi.org/10.1007/s10846-016-0396-2]
-
A. Alouache, “Nonlinear Model Predictive Control for Trajectory Tracking and Obstacle Avoidance of Free-Floating Satellite Manipulator,” Journal of Advanced Engineering and Computation, vol. 8, no. 2, pp. 108-118, Jun., 2024.
[https://doi.org/10.55579/jaec.202482.455]
-
M. Wilde, S. K. Choon, A. Grompone, and M. Romano, “Equations of Motion of Free-Floating Spacecraft-Manipulator Systems: An Engineer’s Tutorial,” Frontiers in Robotics and AI, vol. 5, pp. 1-14, Apr., 2018.
[https://doi.org/10.3389/frobt.2018.00041]
-
K. Yoshida, N. Sashida, R. Kurazume and Y. Umetani, “Modeling of collision dynamics for space free-floating links with extended generalized inertia tensor,” 1992 IEEE International Conference on Robotics and Automation, Nice, France, pp. 899-904, 1992.
[https://doi.org/10.1109/ROBOT.1992.220182]
- Kubric: a scalable dataset generatorh, [Online], https://pybullet.org/, , Accessed: Jan. 10, 2025.
-
J. Carpentier, G. Saurel, G. Buondonno, J. Mirabel, F. Lamiraux, O. Stasse, and N. Mansard, “The Pinocchio C++ library : A fast and flexible implementation of rigid body dynamics algorithms and their analytical derivatives,” 2019 IEEE/SICE International Symposium on System Integration (SII), Paris, France, pp. 614-619, 2019.
[https://doi.org/10.1109/SII.2019.8700380]
-
A. S. Sathya, A. Astudillo, J. Gillis, W. Decré, G. Pipeleers, and J. Swevers, “Tasho: A Python Toolbox for Rapid Prototyping and Deployment of Optimal Control Problem-Based Complex Robot Motion Skills,” 2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Kyoto, Japan, pp. 9700-9707, 2022.
[https://doi.org/10.1109/IROS47612.2022.9981681]
- J. Fiala and B. Marteau, “Nonlinear Optimization: A Comparison of Two Competing Approaches,” Numerical Algorithms Group, 2017, [Online], https://nag.com/wp-content/uploads/2023/06/nonlinear-optimization-comparison.pdf, , Accessed: Jan. 10, 2025.
-
A. Wächter and L.T. Biegler, “On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming,” Mathematical Programming, vol. 106, no. 1 pp. 25-57, Apr., 2005.
[https://doi.org/10.1007/s10107-004-0559-y]
2020 한양대학교 ERICA 로봇공학과(공학사)
현재 한양대학교 전자공학과(석박사 통합과정)
관심분야: 로봇제어, 우주로봇
2019 한양대학교 ERICA 전자공학부(공학사)
현재 한양대학교 전자공학과(석박사 통합과정)
관심분야: 로봇제어, 모바일 매니퓰레이터
2002 POSTECH 기계공학과(공학박사)
2005 KIST 지능로봇연구센터선임연구원
현재 한양대학교 ERICA 로봇공학과 교수
관심분야: 로봇제어, 생체 신호처리

![[Fig. 1] [Fig. 1]](/xml/46121/JKROS_2025_v20n3_504_f001.jpg)
![[Fig. 2] [Fig. 2]](/xml/46121/JKROS_2025_v20n3_504_f002.jpg)
![[Table 1]](../img/npr_tablethum.jpg)
![[Fig. 3] [Fig. 3]](/xml/46121/JKROS_2025_v20n3_504_f003.jpg)
![[Fig. 4] [Fig. 4]](/xml/46121/JKROS_2025_v20n3_504_f004.jpg)
![[Fig. 6] [Fig. 6]](/xml/46121/JKROS_2025_v20n3_504_f006.jpg)
![[Fig. 7] [Fig. 7]](/xml/46121/JKROS_2025_v20n3_504_f007.jpg)
![[Fig. 8] [Fig. 8]](/xml/46121/JKROS_2025_v20n3_504_f008.jpg)