Dev/Drone

SITL 개요

SITL 이란?

SITL 이란 Software-In-The-Loop 의 줄임말으로써, Ardupilot 코드를 PC 와 같은 Linux 머신 위에서 빌드 및 테스트 해 볼수 있는 시뮬레이션 프로그램이다.

SITL 을 이용하면 다음과 같은 점을 기대해 볼 수 있겠다.

  • Hardware 에 종속적이지 않게 Vehicle specific code 를 Testing 할 수 있다
  • Physical 하지 않은 function 들을 안전하게 test, Debugging 할 수 있다.(즉, 드론이 덜 추락할 것이므로 돈을 아낄 수 있다.)
  • 실제 드론, 즉 하드웨어가 없어도 아두파일럿을 빌드하고 실행되는 모습을 가볍게 볼 수 있으므로 편리하다 그러나 다음과 같은 한계도 지닌다. *실제 비행 제어 (Physical) 의 동작은 신뢰할 수 없는 시뮬레이터의 한계를 가진다.


[SITL 의 Architecture]

아두파일럿 코드를 SITL 을 target 으로 빌드하게 되면, 리눅스 실행 바이너리인 .elf 형태로 빌드된다. 이것을 실제로 실행해 보면 아래와 같이 실행된다. 코드를 빌드하고 매개변수를 전달하여 실행하는 과정은 스크립트로 자동화 되어 제공되는데, 뒤에서 자세히 다루겠다.

아래 스크린샷은 SITL 을 실행한 모습이다.

[SITL 이 실행되는 모습]



[ardupilot][SITL] SITL(2) : 시뮬레이터 설치