Institute of Control, Robotics and Systems
[ Article ]
Journal of Institute of Control, Robotics and Systems - Vol. 32, No. 1, pp.65-74
ISSN: 1976-5622 (Print) 2233-4335 (Online)
Print publication date 01 Jan 2026
Received 14 Oct 2025 Revised 12 Nov 2025 Accepted 17 Nov 2025
DOI: https://doi.org/10.5302/J.ICROS.2026.25.0265

드론의 제어기 검증을 위한 로봇팔 기반 HILS 시스템

윤성현1 ; 이민서1 ; 진재현1, *
국립순천대학교 기계공학과 대학원생 joeyyy159@gmail.com
국립순천대학교 우주항공공학과 대학원생 leeminseo407@gmail.com
국립순천대학교 기계우주항공공학부 교수 donworry@scnu.ac.kr
Robotic Arm-based HILS System for Drone Controller Verification
SungHyun Yun1 ; Minseo Lee1 ; Jaehyun Jin1, *
1Dept. of Aerospace Engr./Center for Aerospace Engr., Sunchon National, University
1Dept. of Aerospace Engr./Center for Aerospace Engr., Sunchon National, University
1Dept. of Aerospace Engr./Center for Aerospace Engr., Sunchon National, University

Correspondence to: *Corresponding Author

Copyright© ICROS 2026

Abstract

This study presents a robotic arm-based hardware-in-the-loop (HILS) system for real-time six-degree-of-freedom (6-DOF) motion simulation of a quadcopter drone, aimed at verifying its control system, particularly the control logic. The drone is mounted on a robot arm equipped with a 6-axis force/torque sensor. Its robotic arm's motion is emulated by robot software (SW) and a controller that computes the drone's rotational and translational dynamics, while compensating for gravity. Experimental findings, including the dynamic similarity in rise time and overshoot compared with the model, demonstrate that the robotic arm simulator accurately replicates drone motion, validating its usefulness and applicability as an HILS for drones.

Keywords:

robotic arm, HILS, drone motion simulation, drone control logic verification, gravity compensation, attitude control

I. 서론

최근에, 센서, 배터리와 같은 하드웨어의 고성능화와 인공지능과 같은 소프트웨어의 발전으로, 드론은 농업, 물류, 환경 감시, 치안 유지 등 다양한 분야에서 활용되고 있다[1-7]. 이에 따라, 각 분야 임무에 적합한 드론들이 개발되고 있는데, 그 형태와 기능이 다양하다[8,9].

이처럼, 새로운 드론을 개발할 때, 제어 시스템의 안정성과 조종성을 검증하여, 제어 신뢰성을 확보하는 단계는 필수적이다. 이러한 안정성 및 조종성을 확인하는 방법으로는 가상 시뮬레이션과 비행 실험이 주로 사용된다. 가상 시뮬레이션은 가상 공간에서 드론의 동특성을 구현하고 비행함으로써 제어 신뢰성을 검증한다[10-12]. 하지만 이것만으로는 실제 동특성을 충실히 구현하기 어려워, 실제 드론의 동작과는 오차가 발생할 수밖에 없다. 반대로, 비행 실험은 실제 동특성을 구현할 수 있지만, 안전사고 및 파손의 위험성이 높다.

이러한 비행 실험의 위험성을 줄이고자, 특정 장비에 드론을 고정하여 제한된 범위에서 비행 제어 성능을 검증하는 실험들이 연구되고 있다. Mung 등은 구면 조인트를 이용해 드론의 회전운동을 실제 구현하고, 병진운동은 힘, IMU 센서의 데이터를 처리하여 가상으로 구현하는 시뮬레이터를 개발하였다[13]. Mukras는 케이블로 드론을 매달아 한정된 공간에서 6 자유도 운동하는 테스트 베드를 제작하였다. 이를 이용해, 드론 관성을 측정하고, 하중이 매달린 드론의 비행 성능 실험을 진행하였다[14]. 특히, 이들은 기존의 테스트 베드를 조사한 자료를 제시하였다. Jatsun 등은 드론의 roll, pitch 축 회전 운동과 병진운동이 가능한 테스트 베드를 제작하여, 쿼드로터의 제자리 비행 및 컨버터블 항공기의 이착륙과 원운동을 실험하였다[15,16]. Paiva 등은 쿼드로터의 제어기를 설계한 뒤, 3 자유도 테스트 베드에서 제어기의 성능과 외란에 대한 강인성을 평가하였으며, 이를 시뮬레이션 결과와 비교했다[17]. roll, pitch 축은 시뮬레이션과 비슷하였지만, yaw 축의 경우 테스트 베드의 마찰력으로 인하여 약간의 차이가 있었다.

앞서 언급한 테스트 베드들은 구조적인 한계로 자유로운 움직임을 모사하기 어렵고, 경우에 따라서 중력 및 관성 운동 구현이 어렵다. 이를 해결하고자, 로봇팔의 끝단에 기체(vehicle)를 부착해 움직임을 모사하는 기술이 연구되고 있다. Ding은 로봇팔의 끝단에 힘/토크 센서와 드론을 부착하고, 로봇팔로 드론의 6 자유도 움직임을 모사하였다[18]. 유사한 응용으로는, DLR에서 개발한 로봇팔 기반의 비행 시뮬레이터가 있다[19]. 이는 조종사 훈련용으로, 조종사에게 적절한 비행감을 주도록 설계되었다. 브라질에서도 DLR과 유사한 시뮬레이터를 구현한 사례가 있다[20].

로봇팔 기반의 시뮬레이터는 위성 제어 분야에서 유래하였다. Aghili 등은 미소 중력 환경에서 위성 움직임을 모사할 수 있는 로봇팔 기반 시뮬레이터를 고안하였고, 이를 이용하여 위성의 제어 시스템 동작을 검증하였다[21,22]. DLR은 1990년대부터 ESA (European Space Agency)와 협력하여 로봇팔 기반의 위성 간 근접 비행 시뮬레이터를 개발하여, 랑데부 단계에서의 위성 임무 수행 검증에 활용하였다[23,24]. 미국 NASA의 SSCO (Satellite Servicing Capabilities Office)는 로봇을 이용하여 위성 간의 근접, 도킹 및 로봇 수리 기술을 개발하였다[25].

본 논문에서는, 로봇팔을 이용해 드론의 6 자유도 운동을 모사하고 드론의 제어기 안정성을 검증하는 시스템을 개발한 내용을 소개한다. 선행 연구인 인공위성 자세 제어 검증 시스템[26]에 병진운동을 추가하여 자세 및 위치를 모사하는 시스템을 구축하였고, 이를 이용하여 설계한 드론 제어기를 검증하였다. 본 연구의 주요 수행 내용 및 기여 사항은 다음과 같다.

  • • 드론의 6 자유도 운동을 모사하고, 제어 시스템의 안정성을 검증할 수 있는 로봇팔 기반 시뮬레이터를 구축하였다. 힘/토크 센서를 통하여 드론의 외력을 측정하고 이에 반응하는 드론의 운동을 정확하게 모사하였다.
  • • 전형적인 수송 시나리오를 설정하고, 이에 필요한 드론의 제어기를 설계하였다. 구축한 시스템을 통하여 제어기의 성능을 검증하였다.

다음 장에서는 로봇팔 시스템을 구축하고 연동 구조를 설계한 내용을 소개한다. 3장에서는 실험한 결과를, 4장에서는 결론을 제시한다.


II. 시스템 구성

1. 드론의 운동역학

전체 시스템을 설명하기에 앞서, 시뮬레이션 대상 드론의 동역학 방정식에 관해 설명한다. 드론의 제어 시스템을 검증하기 위해서는, 드론의 자세와 위치를 정밀하게 모사하는 것이 중요하다. 따라서 비행체의 6 자유도 모델링을 통해 동역학적 특성을 구현한다.

드론의 운동을 결정하는 기준 좌표계는 E 좌표계로, NED (North East Down) 좌표계로 선정하였다. 드론의 초기 자세에서의 앞, 오른쪽, 아래 방향을 각각 X축, Y축, Z축으로 설정한다.

이때, 드론의 회전 및 병진 운동방정식은 식 (1)~(4)와 같다[27,28]. 여기서 pE, vE는 기준 좌표계(E)에서의 위치, 속도 벡터이고, vB = [U, V, W]T, ω = [P, Q, R]T 은 기체 좌표계(B)에서의 속도, 각속도 벡터이다. 그리고 c, s, t는 cos, sin, tan이다.

vE=dpEdt=p˙xp˙yp˙z=RBEUVW=RBEvB(1) 
ϕ˙θ˙ψ˙=1sϕtθcϕtθ0cϕ-sϕ0sϕ/cθcϕ/cθPQR=Aϕ,θ,ψω(2) 
m(U˙+WQ-VR)=Fx-mgsθm(V˙+UR-WP)=Fy+mgsϕcθm(W˙+VP-UQ)=Fz+mgcϕcθ(3) 
IxxP˙-Izx(R˙-PQ)+Izz-IyyQR=TxIyyQ˙+IzxP2-R2+Ixx-IzzPR=TyIzzR˙-Izx(P˙-QR)+Iyy-IxxPQ=Tz(4) 

식 (1)에서, RBE은 기준 좌표계에 대한 기체 좌표계의 회전 변환 행렬로써, ZYX 오일러 각을 통해 기술한다.

RBE=Rz(ψ)Ry(θ)Rx(ϕ)=cψ-sψ0sψcψ0001cθ0sθ010-sθ0cθ1000cϕ-sϕ0sϕcϕ(5) 

2. HILS 시스템 구성

HILS 시스템은 로봇팔과 로봇 제어기, 로봇 SW PC, DSP, 힘/토크 센서, 드론으로 구성된다. 로봇팔 끝단에 Fig. 1과 같이 힘/토크 센서, 드론 순으로 부착되어 있다. 로봇 SW는 DSP와 PC는 물리적으로 분리되어 있지만, 서로 CAN 통신으로 연결되어 데이터를 주고받는다.

Fig. 1.

HILS system configuration.

시뮬레이터 시스템이 실행되는 과정은 Fig. 2와 같다. 힘/토크 센서는 드론에 작용하는 중력과 추력을 측정한다. 로봇 SW는 힘/토크 센서의 측정값을 읽고, 로봇팔 관절 각도를 계산하고, 로봇 제어기에 계산한 값을 전달한다. 마지막으로 로봇 제어기는 관절 각도를 제어한다.

Fig. 2.

Simulator data pipeline.

3. 로봇팔 시스템

3.1 로봇 SW

본 연구에서 사용된 로봇팔은 두산의 협동 로봇으로, 6축 다관절 형상이다. 로봇팔의 제원과 사양은 선행 연구 논문[26]과 부록 A.1에 제시되어 있다.

로봇 SW는 계산을 담당하는 DSP와 명령을 전달하는 PC로 이루어져 있다(Fig. 3 참고). DSP는 힘/토크 센서의 측정값을 읽고, 드론의 자세와 위치 방정식인 식 (1)~(4)를 풀고, 이 자세와 위치를 구현하도록 로봇팔의 역기구학(inverse kinematics)을 계산한다. 그 결과는 로봇팔 관절 각도가 된다. 드론은 로봇팔에 부착되어 있어서 움직일 수가 없는데, DSP로 드론의 거동을 계산하고 이 거동을 구현할 수 있는 로봇팔의 조인트 각도를 계산한다. 그러면 드론의 추력으로 움직이는 효과를 모사할 수 있다. PC는 DSP로부터 계산된 관절 각도를 받아서, ROS2 통신으로 로봇 제어기로 각도 명령을 전달한다.

Fig. 3.

Calculation process in Robot SW.

3.2 로봇 SW - 드론 운동 모사

로봇팔이 드론의 운동을 모사하기 위해서, 로봇 SW는 드론의 동역학 방정식을 실시간으로 계산하고, 로봇팔의 관절 각도를 제어해야 한다.

그래서, 힘/토크 센서의 측정값을 이용해 드론의 자세 및 위치를 갱신하고, 이를 토대로 로봇팔 6축 관절 각도를 계산한다. 이 과정은 Fig. 3의 점선 내의 구조와 같다.

3.2.1 드론 자세 갱신

본 연구에서 사용하는 자세 갱신 방안은 선행 연구 논문의 3.2.1절에서 제안한 방식에 기반한다[26]. 저장된 각속도로 자세를 갱신하고, 이후 각속도를 갱신하는 과정을 반복한다.

식 (2)를 이용하여, 드론의 자세를 갱신한다. 저장된 현재 각속도 벡터를 ω(k)라고 할 때, 새로운 자세는 다음과 같다.

ϕθψk+1=ϕθψk+Δt×Akωk(6) 

여기서 Δt는 갱신주기이다. 자세 갱신 이후에 각가속도를 이용하여 다시 각속도를 갱신한다. 각가속도는 식 (4)에서 얻어진다.

ω(k+1)=ω(k)+Δt×ω˙(k)(7) 
3.2.2 드론 위치 갱신

저장된 현재 속도를 vE(k)라고 할 때, 갱신되는 드론의 위치는 식 (8)과 같다.

pE(k+1)=pxpypzk+1=pxpypzk+Δt×vE(k)(8) 

위치가 갱신된 이후에 다음과 같이 속도를 갱신한다.

vEk+1=vEk+Δt×RBRFBm-ω×vB(9) 
3.2.3 로봇팔 관절 각도 계산

드론의 자세 및 위치를 구현하기 위한 로봇팔 관절 각도는 역기구학을 풀어서 구한다. 이를 위한 계산과정은 Fig. 4와 같다.

Fig. 4.

Calculation of robot joint angles.

역기구학을 풀어내기 위해서, 로봇팔 끝단의 위치pTCPG와 자세RTCPG가 필요하다. 로봇팔 끝단의 위치는 로봇팔 끝단의 초기 위치(p0)에 드론의 위치를 더해서 구한다. 이를 위해, 식 (8)에서 갱신된 pE(K+1)를 지면 좌표계(G, 로봇의 Base) 기준으로 변환한다. 여기서 행렬 REG는 기준 좌표계와 지면 좌표계의 축 설정에 의해 정해진다.

pTCPG=p0+REGpEk+1,REG=-10001000-1(10) 

하지만, 로봇팔은 제한된 범위에서만 움직임을 재현할 수 있다. 그래서 제한보다 큰 운동은 스케일 팩터(SF)를 통해, 로봇팔 가동 범위 내에서 구현한다(그림 4 참고).

pTCPG=p0+SF×REGpEk+1(11) 

로봇팔 끝단의 자세 RTCPG 는, 식 (12)와 같이 지면 좌표계에 대한 드론 자세 행렬(RBG)과 드론 좌표계에 대한 로봇팔 끝단의 자세 변환 행렬(RTCPB)을 곱해서 구한다.

RTCPG=RBGRTCPB=REGRBERTCPB(12) 

식 (12)에서, 로봇팔 끝단과 드론 기체 좌표계의 관계(RTCPB)는 X, Z축이 반대 방향이다.

RTCPB=-10001000-1(13) 

최종적으로, 로봇팔 끝단의 위치와 자세로 역기구학을 풀어서, 로봇팔 관절 각도를 계산한다. 역기구학 과정은 선행 연구 논문의 부록에서 제시한다[26].

3.2.4 스케일된 동역학

병진운동에 대한 스케일 팩터(SF)의 영향을 분석한다[29]. 계산된 드론의 변위 pE 와 로봇팔로 구현한 변위 pR 은 다음과 같다.

pR=SF×pE=SF×vEdt(14) 

이 식에서, 다음의 속도 관계식을 구한다.

pR=RBESF×vBdt=RBEv*dt(15) 

식 (3)의 양변에 SF를 곱해서 벡터 식으로 정리한다.

SF×(mg+F)=SF×mvB+ω×vB=mv*+ω×v*(16) 

수식적으로 SF는 드론에 작용하는 모든 힘을 스케일링하는 효과를 만들고, 이에 따라 드론은 천천히 기동한다. 결과적으로 로봇 팔은 안정적으로 움직이며, 작업영역 내에서 드론의 움직임을 테스트할 수 있다. SF는 식 (4)의 회전 운동에는 영향을 미치지 않는다.

4. 힘/토크 센서

4.1 힘/토크 센서 제원

드론에 작용하는 힘/토크를 측정하기 위해 사용된 센서는 AIDIN ROBOTICS 사의 AFT200-D80-C를 사용했다. 센서의 사양은 Table 1과 같다.

The specification of force/torque sensor.

4.2 샘플링 주파수 선정

힘/토크 센서의 최대 샘플링 주파수는 1,000Hz(1 ㎳)이지만, 로봇팔의 제어 주파수는 최대 125Hz(8 ㎳)이다. 센서의 노이즈를 줄이기 위해서, 1,000Hz의 힘/토크 측정값을 받아 저장하고, 8 ㎳ 주기로 힘/토크의 평균을 계산해 사용한다.

4.3 중력 보상

드론의 움직임을 모사하기 위해서는 드론의 운동에 관여하는 힘/토크를 측정해야 한다. 센서는 모터 추력에 의해 발생하는 힘/토크FmS/TmS외에도 중력에 의한 힘/토크FgS/TgS도 함께 측정한다[30].

FS=FmG+FgGTS=TmS+TgS(17) 

이 측정 데이터에는, 드론의 무게 중심과 센서 중심이 불일치하여 발생하는 성분이 포함되어 있는데, 이를 제거해야만 실제 추력을 계산할 수 있다[30]. 그리고 중력에 의한 영향은 식 (3)처럼 계산한다. 중력에 의한 힘/토크를 구하는 식은 식 (18)과 같다.

FgS=RGSFgGTgS=rS×FgS=rS×RGSFgG(18) 

여기서 FgG는 지면 좌표계에서의 중력이고, RGS는 센서 좌표계에 대한 지면 좌표계의 자세 변환 행렬이다. rS는 센서 좌표계에 대한 드론의 무게 중심 위치이다.

무게 중심 위치는 센서에서 측정된 토크를 이용하여 추정하였다. 중력에 의한 토크 방정식은 식 (19)와 같다[31].

τ=rS×mg=-mg×rS=mGrS(19) 

g는 중력 가속도 벡터이고, G 행렬은 다음과 같다. 참고로 RTCPS = I이다.

g=gxgygz=RTCPSRGTCP00-9.81,G=0gz-gy-gz0gxgy-gx0(20) 

로봇팔의 자세를 바꾸어 가면서, 센서로 측정한 토크 값 τ[3×1]와 계산값 G[3×3]를 저장한다. N 번의 실험을 통해 얻은 τ[3×1]와 G[3×3] 행렬을 행 단위로 저장하여, 최종적으로 C[3N × 1], D[3N × 3] 행렬을 만든다. 이를 식 (21)과 같이, 유사 역행렬을 통해 무게 중심 위치를 추정한다.

rS=1mDTD-1DTC(21) 

최종적으로, 구한 무게 중심 위치를 이용해 중력으로 생기는 힘/토크를 구하고, 센서의 측정값에서 제거함으로써 중력을 보상한다.


III. 실험

1. 실험용 드론

실험에 사용된 드론은 쿼드로터 형상이며, 주요 사양은 Table 2과 같다. 드론 제어 방식은 수동 조종과 DSP 내에 코딩한 PD, PID 제어기를 사용한다(Fig. 5 참고).

The specification of drone.

Fig. 5.

Manual control and automatic control of a drone.

2. 중력 보상 실험

앞서 소개한 중력 보상 알고리즘을 평가하기 위해서 실험을 진행하였다. 드론과 힘/토크 센서를 로봇팔 끝단에 부착하고, 드론의 자세에 따른 힘/토크 센서의 측정값과 알고리즘 계산값을 비교하였다. 중력에 따른 힘/토크만 센서에서 읽어낼 수 있도록, 드론의 추력이 없는 상태에서 로봇팔의 자세만 다르게 하였다.

드론 좌표계의 롤, 피치 축으로 회전시켜 힘/토크 센서의 측정값을 확인하였다. 드론의 자세가 Fig. 6, 8과 같을 때, 실험 결과는 각각 Fig. 7, 9과 같다. 센서의 측정값과 알고리즘 계산값을 비교하면, 두 결과는 유사하지만, Fig. 9의 Fy에 약간의 바이어스가 있었다. 이는 힘/토크 센서의 노이즈로 인해, 식 (21)을 계산하는 과정에서 정확한 무게 중심 위치를 추정하지 못해 생긴 것으로 판단한다. 그러나 후속 실험에서 크게 문제가 되지 않았다.

Fig. 6.

Roll angle of drone.

Fig. 7.

Results of gravity compensation in roll-axis motion.

Fig. 8.

Pitch angle of drone.

Fig. 9.

Results of gravity compensation in pitch-axis motion.

3. 힘/토크 센서 측정 실험

드론과 로봇팔의 연동 실험 전, 드론의 모터가 작동해 적합한 힘/토크를 발생하는지 확인하였다. 로봇팔에 힘/토크 센서와 드론을 고정하고, 상승, 전진, 우측 이동 순서로 드론을 조종하여 측정된 힘/토크를 확인하였다. 여기서 센서 좌표계와 드론 좌표계는 X, Z축이 반대이다(Fig. 10 참고).

Fig. 10.

Comparison between coordinate systems.

입력에 따른 센서 측정 결과는 Fig. 11과 같다. 상승 입력이 주어지면, 모든 모터에 같은 추력이 발생해 드론 좌표계 기준 -Z축의 힘이 발생한다. 하지만 센서 좌표계의 Z축은 반대이므로 양(positive)의 힘이 측정된다. 전진 입력은 드론 후방 모터들의 RPM이 증가해 앞으로 기울이게 되면서, 센서에서 –Y축의 토크가 측정된다. 오른쪽 입력을 주면, 드론의 왼쪽 모터의 RPM이 증가하고 드론 좌표계의 +X축으로 회전해서 센서 기준 –X축 토크가 발생한다.

Fig. 11.

Force/Torque result according control inputs.

이 실험을 통하여, 센서가 드론의 추력 및 토크를 적합하게 측정하는 것을 확인하였다(Fig. 11 참고).

4. 드론-로봇팔 연동 실험

드론-로봇팔 시스템의 연동 실험을 위해, 조종기로 직접 드론을 조종하여 수직 및 전진 기동을 실험하였다. 실험을 통해, 힘/토크에 따른 드론의 운동이 정확한지 확인하였다. 여기에서 스케일 팩터(SF)는 1/1000로 설정하였다.

4.1 수직 기동

Fig. 12은 수직 기동 실험 중, 힘/토크 센서에서 측정된 추력으로, 드론 좌표계의 Z축 가속도와 관련 있다.

Fig. 12.

Thrust response to vertical input.

Fig. 13는 로봇 SW의 DSP에서 계산한 결과로, 맨 위 그래프는 중력과 추력의 합인 외력을 나타냈고, 중간 그래프는 외력을 적분하여 계산한 속도이다. 마지막은 계산된 고도 데이터이다.

Fig. 13.

Vertical maneuver of the drone using a robotic arm.

추력과 중력의 합이 음수가 되면 가속 상승하고, 0이면 호버링 혹은 등속 상태이고, 양수면 감속 하강한다. 로봇팔에 장착된 드론의 상하 움직임을 눈으로 확인하면서, 상승-정지-하강-착륙을 시행하였다. 3개의 결과 그래프를 통하여, 작용하는 Z축의 힘에 따른 드론의 수직 기동을 로봇팔이 적합하게 구현하는 것을 확인하였다.

Fig. 14는 로봇 SW에서 갱신한 드론의 위치(상단 그림)와 로봇팔 관절 각도를 가지고 정기구학 계산한 끝단 위치(하단 그림)를 비교한 것이다. 본 실험에서 사용된 1000:1 스케일이 정확하게 적용된 것과 두 좌표계의 Z축 방향이 반대인 것을 확인하였다.

Fig. 14.

End-effector position in vertical maneuver experiment.

4.2 전진 기동

드론의 전진 기동을 위해서는 피치각과 추력을 제어해서 X축의 가속도를 생성해야 한다. 다만 본 연구에서는, 드론의 공력 데이터가 없어서, 전진 비행 중의 항력은 고려하지 않았다.

피치 각에 따른 드론의 X축 위치(DSP에서 계산한)는 Fig. 15와 같다. 처음에는 드론이 앞으로 기울어지면서(피치각이 음수), 추력으로 가속도를 만들어 전진하고, 일정 위치를 유지하다가(피치각이 0에 가까운 상태), 마지막에 드론이 뒤로 기울어지면서(피치각이 양수), 원래 자리로 돌아온다.

Fig. 15.

Forward maneuver of the drone using a robotic arm.

Fig, 16은 정기구학으로 계산한 로봇팔 끝단의 위치와 비교한 결과인데, 마찬가지로 스케일이 정확하며, 두 좌표계의 X축 방향이 반대인 것도 확인하였다.

Fig. 16.

End-effector position in forward maneuver experiment.

5. 제어기 검증 실험

본 실험은 드론이 물건을 수송하는 시나리오로써 상승, 이동(고도 유지 상태로 수평 비행, cruise), 하강 순서로 시뮬레이션하였다. 이 시나리오를 수행할 수 있도록 드론의 제어기를 설계하였고, 이를 검증하는 실험을 진행하였다. PD와 PID 제어기를 사용해, 드론이 고도 및 X축 위치를 제어할 수 있도록 하였다(Fig. 17 참고).

Fig. 17.

Drone position and altitude controller.

각 제어기는 고도와 위치를 추종하는 힘과 토크를 생성하도록 설계하였다. 위치 제어기 내에는 자세 제어기가 있어, 위치 명령에 따라 드론이 회전 운동하여 가속도를 제어하고, 결과적으로 목표 위치에 도달한다.

Simulink를 사용해서 제어기의 게인을 설정하였고(Fig. 18 참고)[32], 이 게인을 DSP의 PD와 PID 제어기에 적용해 로봇팔 시뮬레이터에서 드론 제어 시스템을 검증하였다. 제어기 내부 구조는 부록 A.2에 제시한다.

Fig. 18.

Controller design/simulation program based on Simulink.

설계된 드론 제어 시스템을 시나리오에 따라 실험한 결과, 드론의 이동 경로는 Fig. 19와 같다. 로봇팔 기반 시뮬레이터는 드론의 6 자유도 운동을 구현할 수 있지만, 본 실험에서는 X, Z축 병진운동과 피치 축 회전운동으로 총 3 자유도의 움직임을 구현하였다. Fig. 20은 Simulink 시뮬레이션과 로봇팔 실험 결과를 비교한 것인데, 두 결과가 매우 유사하다. 그림에서 실선으로 표시한 Robotic은 정기구학을 통하여 구한 로봇 끝단(혹은 드론의 실제 위치)의 변위에 SF의 역수인 1000을 곱하여 구한 값이다. 로봇은 위로 10cm, 전방으로 5cm를 움직이지만, 1000을 곱하여 각각 100m, 50m를 움직인 것으로 그래프를 작성하였다.

Fig. 19.

The trajectory of the drone in the 3-D space.

Fig. 20.

Results of controller verification experiment.

정확한 제어기의 검증을 위해 상승, 전진(cruise), 하강 구간별로 나누고 힘/토크와 비교하여 확인한다. 상승 구간에서는 (Fig. 21 참고), 추력을 제어하여 사전에 입력된 목표 고도에 도달한다. 전진 구간에서는(Fig. 22 참고), 드론의 피치각 자세를 제어하여 고도를 유지하면서 지정한 위치로 이동한다. Fig. 23은 전진 구간에서의 추력과 고도를 나타내는데, 드론이 앞으로 기울어질 때, 고도를 유지하기 위하여 제어기가 추력을 증가시킨다. 추력은 median filter 처리한 값이다. 마지막으로 하강 구강에서는, Fig. 24과 같이 착륙을 통해 시나리오를 종료한다.

Fig. 21.

Thrust and altitude during the ascent phase.

Fig. 22.

Pitch and x-position during cruise phase.

Fig. 23.

Altitude response during cruise phase.

Fig. 24.

Thrust and altitude during the descent phase.

6. 결과 분석 및 논의

다양한 실험을 통하여, 개발한 로봇팔 기반 시뮬레이터의 HILS 적용 가능성을 확인하였다. 로봇팔 기반 시뮬레이터는 드론의 동적 거동을 정확히 모사하였는데, 수동으로 드론을 조종하는 실험을 통하여, 조종자가 인지하는 것과 일치하게 동작하였다.

드론의 고도 및 위치 제어기를 설계하고 검증한 실험에서는, 시뮬레이션 결과와 거의 일치하는 실험 결과를 얻었다. 상승 및 하강 구간에서 약간의 차이가 나타나는데, 이것은 드론 추력 모터의 응답 지연에 의한 것으로 추정한다. 이처럼 하드웨어의 고유 특성을 포함하여 실험하거나 제어기의 안정성을 검증할 수 있는 것이 로봇팔 기반 시뮬레이터의 장점이다.

본 연구에서 사용된 로봇팔의 제어 주기는 약 125 Hz로, 이는 일반적으로 10 Hz 내외인 중·소형 멀티콥터의 강체운동을 모사하는 데는 충분하다[33]. 따라서 본 실험에서 사용된 로봇팔은 다양한 드론의 거동(자세 변화 및 병진 운동)을 모사할 수 있으며, 제어기 성능 검증을 위한 시험 플랫폼으로 발전할 수 있다.


IV. 결론

로봇팔을 이용해 드론의 회전운동 및 병진운동을 시뮬레이션할 수 있는 HILS 시스템을 구축하였다. 로봇팔과 힘/토크 센서, 로봇 SW, 그리고 테스트용 드론으로 본 시스템을 구성하였다. 드론에 작용하는 힘/토크를 이용하여 드론의 자세 및 위치를 계산하였다. 이 자세와 위치를 로봇팔로 적절하게 구현하는 것을 실험으로 검증하였다.

이 시스템의 효용성을 검증하기 위하여 비행 시나리오를 설정하였다. 시나리오에 적합한 제어기를 설계하고 로봇 시스템을 이용하여 시나리오를 수행하면서 제어기의 안정성을 검증하였다. 드론의 실제 추력 특성을 포함하여 다양한 성능을 검증할 수 있는 HILS 시스템이라고 판단한다. 본 시스템을 기반으로, 중형 드론, UAM 축소기 등을 검증할 수 있는 시스템으로 발전시킬 계획이다.

결론적으로, 로봇팔 기반 6 자유도 시뮬레이터를 위한 기초 기술을 확보하였다. 이를 바탕으로 관련 기술을 발전시키고자 하며, 관련된 후속 연구는 다음과 같다.

  • • 다양한 외부 요인 추가(항력 모델, 실제 바람 등)
  • • 로봇제어 기술(속도 제어, 처리시간 향상)의 고도화
  • • 힘/토크 센서 신호처리 기술 향상

Acknowledgments

본 논문은 2022년도 정부(방위사업청)의 재원으로 국방기술진흥연구소의 지원을 받아 수행된 연구임(KRIT-CT-22-040. 이종 위성군 우주 감시 정찰 기술 특화연구센터).

REFERENCES

  • C. Joe, S. Park, I. Um, and H. Kim, “Exploring trends and technologies in drone development,” Communications of the Korean Institute of Information Scientists and Engineers (in Korean), vol. 37, no. 1, pp. 10-19, 2019.
  • S. Ahirwar, R. Swarnkar, S. Bhukya, and G. Namwade, “Application of drone in agriculture,” International Journal of Current Microbiology and Applied Sciences, vol. 8, no. 1, pp. 2500-2505, 2019. [https://doi.org/10.20546/ijcmas.2019.801.264]
  • C. Randieri, S. V. Ganesh, R. D. A. Raj, R. M. R. Yanamala, A. Pallakonda, and C. Napoli, “Aerial autonomy under adversity: Advances in obstacle and aircraft detection techniques for unmanned aerial vehicles,” Drones, vol. 9, no. 8, p. 549, 2025. [https://doi.org/10.3390/drones9080549]
  • A. S. Shuaibu, A. S. Mahmoud, and T. R. Sheltami, “A review of last-mile delivery optimization: Strategies, technologies, drone integration, and future trends,” Drones, vol. 9, no. 3, p. 158, 2025. [https://doi.org/10.3390/drones9030158]
  • B. Chen, J. Maurer, and W. Gong, “Applications of UAV in landslide research: a review,” Landslides, vol. 22, p. 3029-3048, 2025. [https://doi.org/10.1007/s10346-025-02547-2]
  • J. Lee, H. J. Lee, S. K. Arachchige, N. Kim, H. Heo, and K. Lee, “Search operations with geolocation estimation of missing persons based on real-time drone images,” Journal of Institute of Control, Robotics and Systems (in Korean), vol. 30, no. 8, pp. 890-896, 2024. [https://doi.org/10.5302/J.ICROS.2024.24.0087]
  • H. Heo, H. Lee, and K. Lee, “Safe return home solution using a smart drone scout,” Journal of Institute of Control, Robotics and Systems (in Korean), vol. 30, no. 9, pp. 937-944, 2024. [https://doi.org/10.5302/J.ICROS.2024.24.0131]
  • W. Kang, Y. Jung, and I. Hwang, “Core technologies for autonomous unmanned vehicles: Development trends and future plans for next-generation unmanned systems such as drones and autonomous cars,” KICS Information & Communication Magazine - Open Lecture Series (in Korean), vol. 35, no. 1, pp. 28-35, 2018.
  • J. Y. Jeong, “Research and development cases and future directions of defense drones,” The Journal of The Korean Institute of Communication Sciences (in Korean), vol. 42, no. 8, pp. 3-8, 2025.
  • S. Jain, O. Halbe, K. Sachan, V. Theningaledathil, S. C, and A. Nayak, “Software-in-the-loop simulation for low-speed, high-altitude platform,” 2024 IEEE Space, Aerospace and Defence Conference (SPACE), Bangalore, India, pp. 930-934, 2024. [https://doi.org/10.1109/SPACE63117.2024.10668276]
  • M. F. Fathoni, S. Lee, Y. Kim, K.-I. Kim, and K. H. Kim, “Development of multi-quadrotor simulator based on real-time hypervisor systems,” Drones, vol. 5, p. 59, 2021. [https://doi.org/10.3390/drones5030059]
  • R. K. Megalingam, D. V. Prithvi, N. C. S. Kumar, and V. Egumadiri, “Drone stability simulation using ROS and Gazebo,” Advanced Computing and Intelligent Technologies. Lecture Notes in Networks and Systems, vol. 218, Springer, Singapore, 2021. [https://doi.org/10.1007/978-981-16-2164-2_11]
  • N. X. Mung and S.-K. Hong, “A multicopter ground testbed for the evaluation of attitude and position controller,” International Journal of Engineering and Technology, vol. 7, no. 4.39, pp. 65-73, 2018. [https://doi.org/10.14419/ijet.v7i4.39.23708]
  • S. M. S. Mukras and H. M. Omar, “Development of a 6-DOF testing platform for multirotor flying vehicles with suspended loads,” Aerospace, vol. 8, no. 11, p. 355, 2021. [https://doi.org/10.3390/aerospace8110355]
  • S. Jatsun, O. Emelyanova, and A. S. Martinez Leon, “Design of an experimental test bench for a UAV type convertiplane,” IOP Conference Series: Materials Science and Engineering, vol. 714, 2020. [https://doi.org/10.1088/1757-899X/714/1/012009]
  • S. Jatsun, O. Emelyanova, B. Lushnikov, A. S. Martinez Leon, L. M. Mosquera Morocho, A. Pechurin, and C. A. Nolivos Sarmiento, “Hovering control algorithm validation for a mobile platform using an experimental test bench,” IOP Conference Series: Materials Science and Engineering, vol. 1027, 2021. [https://doi.org/10.1088/1757-899X/1027/1/012008]
  • E. Paiva, J. Soto, J. Salinas, and W. Ipanaqué, “Modeling, simulation and implementation of a modified PID controller for stabilizing a quadcopter,” 2016 IEEE International Conference on Automatica (ICA-ACCA), Curico, Chile, pp. 1-6, 2016. [https://doi.org/10.1109/ICA-ACCA.2016.7778507]
  • C. Ding, L. Lu, C. Wang, and J. Li, “6-DOF automated flight testing using a humanoid robot arm,” 2018 IEEE 14th International Conference on Automation Science and Engineering, Munich, Germany, pp. 217-222, 2018. [https://doi.org/10.1109/COASE.2018.8560549]
  • A. Seefried, A. Pollok, R. Kuchar, M. Hellerer, M. Leitner, and D. Milz, “Multi-domain flight simulation with the DLR robotic motion simulator,” 2019 Spring Simulation Conference, Tucson, AZ, USA, pp. 1-12, 2019. [https://doi.org/10.23919/SpringSim.2019.8732921]
  • A. da C. Matheus, W. R. de Oliveira, and E. Villani, “A safety-oriented motion cueing algorithm for a serial robotic flight simulator using a predictive neural network reference governor,” IEEE Transactions on Intelligent Transportation Systems, vol. 25, no. 11, pp. 15718-15731, 2024. [https://doi.org/10.1109/TITS.2024.3442973]
  • F. Aghili, “Six-DOF spacecraft dynamics simulator for testing translation and attitude control,” 2022. [https://doi.org/10.48550/arXiv.2209.08375]
  • F. Aghili, M. Namvar, and G. Vukovich, “Satellite simulator with a hydraulic manipulator,” Proceedings 2006 IEEE International Conference on Robotics and Automation, 2006, ICRA 2006, Orlando, FL, USA, pp. 3886-3892, 2006. [https://doi.org/10.1109/ROBOT.2006.1642297]
  • F. Rems, H. Frei, E.-A. Risse, and M. Burri, “10-year anniversary of the European Proximity Operations Simulator 2.0,” Aerospace, vol. 8, no. 9, p. 235, 2021. [https://doi.org/10.3390/aerospace8090235]
  • O. Ma, A. Flores-Abad, and T. Boge, “Use of industrial robots for hardware-in-the-loop simulation of satellite rendezvous and docking,” Acta Astronautica, vol. 81, no. 1, pp. 335-347, 2012. [https://doi.org/10.1016/j.actaastro.2012.08.003]
  • M. Strubeet, A. Hyslop, C. Carignan, and J. Easley, “Ground simulation of an autonomous satellite rendezvous and tracking system using dual robotic systems,” International Symposium on Artificial Intelligence, Robotics and Automation in Space, Italy, Sep. 2012.
  • J. Jin, M. Lee, S. Yun, and K. Lee, “A system for simulating rotational motions in space using a robot arm and attitude control experiments of a mockup satellite,” Journal of Institute of Control, Robotics and Systems (in Korean), vol. 31, no. 7, pp. 762-771, 2025. [https://doi.org/10.5302/J.ICROS.2025.25.0051]
  • D.-J. Shin, H. Jeong, S. Kim, and J. Suk, “Longitudinal attitude control of eVTOL aircraft using incremental sliding mode control driven by sliding mode disturbance observer,” Journal of Institute of Control, Robotics and Systems (in Korean), vol. 30, no. 9, pp. 945-953, 2024. [https://doi.org/10.5302/J.ICROS.2024.24.0112]
  • D. Lee, J. Im, H. Lee, Y. Jung, J. Jeong, J.-H. Shin, S. Lee, J. H. Park, and J. Ahn, “Modeling and simulation of aircraft motion for performance assessment of airborne AESA radar considering wind and vibration,” Journal of the Korean Society for Aeronautical & Space Sciences (in Korean), vol. 48, no. 11, pp. 903-910, 2020. [https://doi.org/10.5139/JKSAS.2020.48.11.903]
  • J. Jin, M. Lee, and S. Yun, “A robotic arm-based HILS platform for attitude control logic verification of a quadrotor drone,” Submitted to International Journal of Aeronautical and Space Sciences. Nov. 2025. [https://doi.org/10.1007/s42405-026-01159-x]
  • Y. Yu, R. Shi, and Y. Lou, “Bias estimation and gravity compensation for wrist-mounted force/torque sensor,” IEEE Sensors Journal, vol. 22, no. 18, pp. 17625-17634, 2021. [https://doi.org/10.1109/JSEN.2021.3056943]
  • S. Vougioukas, “Bias estimation and gravity compensation for force-torque sensors,” Proceedings WSEAS Symposium on Mathematical Methods and Computational Techniques in Electrical Engineering, Athens, Greece, pp. 82-85, 2001.
  • D.-W. Jeong, B.-J. Kim, and J.-H. Moon, “Analysis of yaw-axis control performance according to motor canted angle of eVTOL aircraft,” Journal of Institute of Control, Robotics and Systems (in Korean), vol. 30, no. 2, pp. 109-115, 2024. [https://doi.org/10.5302/J.ICROS.2024.23.0206]
  • H. Hassani, A. Mansouri, and A. Ahaitouf, “Model-based robust tracking attitude and altitude control of an uncertain quadrotor under disturbances,” International Journal of Aeronautical and Space Sciences, vol. 25, no. 4, pp.1464-1478, 2024. [https://doi.org/10.1007/s42405-024-00742-4]

Appendix

부록

A.1 로봇팔 제어 성능

연구에 사용된 로봇팔의 관절각도 제어 성능은 Table 3과 같다. 조인트 각도를 회전시키고 끝단에 장착된 AHRS 센서의 출력을 저장하고 해석한 값이며, Fig. 25는 조인트 2번과 6번 회전에 의한 AHRS 출력을 예시로 보인 것이다.

Joint control performance of the robotic arm.

Fig. 25.

Robot joint angle rotation and AHRS response.

A.2 Simulink 제어기 모델

Simulink에서의 제어기의 게인은 Table 4와 같다. 위치를 제어하기 위해 PD 제어기가 사용되었고, 자세와 고도 제어기는 PID 제어기를 사용하였다.

Controllers’ gains and saturation limits.

윤 성 현

2025년 국립순천대학교 기계우주항공공학부 학사. 현재 동대학교 대학원 석사과정. 관심분야는 ROS2, 로봇 운영체제, 임베디드 시스템 등.

이 민 서

2025년 국립순천대학교 기계우주항공공학부 학사. 현재 동대학교 대학원 석사과정. 관심분야는 임베디드 시스템, 모델기반 시스템제어, 위성 자세제어 등.

진 재 현

1990년 한국항공대학교 항공기계공학과 졸업, 1992/1997년 KAIST 항공우주공학과 석사 및 박사. 현재 국립순천대학교 기계우주항공공학부 교수, 관심분야는 비행제어, 위성제어, 로봇제어 등.

Fig. 1.

Fig. 1.
HILS system configuration.

Fig. 2.

Fig. 2.
Simulator data pipeline.

Fig. 3.

Fig. 3.
Calculation process in Robot SW.

Fig. 4.

Fig. 4.
Calculation of robot joint angles.

Fig. 5.

Fig. 5.
Manual control and automatic control of a drone.

Fig. 6.

Fig. 6.
Roll angle of drone.

Fig. 7.

Fig. 7.
Results of gravity compensation in roll-axis motion.

Fig. 8.

Fig. 8.
Pitch angle of drone.

Fig. 9.

Fig. 9.
Results of gravity compensation in pitch-axis motion.

Fig. 10.

Fig. 10.
Comparison between coordinate systems.

Fig. 11.

Fig. 11.
Force/Torque result according control inputs.

Fig. 12.

Fig. 12.
Thrust response to vertical input.

Fig. 13.

Fig. 13.
Vertical maneuver of the drone using a robotic arm.

Fig. 14.

Fig. 14.
End-effector position in vertical maneuver experiment.

Fig. 15.

Fig. 15.
Forward maneuver of the drone using a robotic arm.

Fig. 16.

Fig. 16.
End-effector position in forward maneuver experiment.

Fig. 17.

Fig. 17.
Drone position and altitude controller.

Fig. 18.

Fig. 18.
Controller design/simulation program based on Simulink.

Fig. 19.

Fig. 19.
The trajectory of the drone in the 3-D space.

Fig. 20.

Fig. 20.
Results of controller verification experiment.

Fig. 21.

Fig. 21.
Thrust and altitude during the ascent phase.

Fig. 22.

Fig. 22.
Pitch and x-position during cruise phase.

Fig. 23.

Fig. 23.
Altitude response during cruise phase.

Fig. 24.

Fig. 24.
Thrust and altitude during the descent phase.

Fig. 25.

Fig. 25.
Robot joint angle rotation and AHRS response.

Table 1.

The specification of force/torque sensor.

Force Torque
Ranges ± 200 N ± 15 Nm
Resolution 0.15 N 0.015 N
Sample Rate 1000 Hz

Table 2.

The specification of drone.

mass 1.1018kg
controller (manual) Pixhawk 4 / (automatic) PD, PID
actuator (motor) AIR 2213/KV920, (propeller) T9545
power Lipo Battery 11.1V

Table 3.

Joint control performance of the robotic arm.

Joint tr [sec] O.S. [%] ts [sec] ess [%]
1 0.120 1.204 0.226 0.4
2 0.056 14.063 3.858 1.48
3 0.080 3.699 0.747 0.92
4 0.080 7.000 0.594 1.8
5 0.096 3.350 0.674 0.06
6 0.104 0.000 0.244 0.96

Table 4.

Controllers’ gains and saturation limits.

controller KP KI KD Sat. min ~ max
position 0.04 3.0 0.1 -4 ~ 4 [ms2]
attitude 0 0.01 0.0001 -0.15 ~ 0.15 [Nm]
altitude 0.4 6.0 0.5 0 ~ -16 [N]