BAE Systems Controls, 무인 항공기용 오토파일럿 개발

“MATLAB 및 Simulink 덕분에 개발 주기 시간을 크게 단축하고 시스템 및 소프트웨어 설계 및 테스트 비용을 50% 절감할 수 있었습니다.”

과제

서로 다른 지역에서 작업하는 팀들이 빠르고 저렴하게 정교한 UAV 오토파일럿 시스템을 설계하도록 만들기

솔루션

모델 기반 설계용 MathWorks 툴을 사용하여 단일 환경에서 기존 소프트웨어 설계 수정 및 임베디드 제어 코드 자동 생성

결과

  • 설계 및 재작업 비용이 크게 절감되었습니다
  • 테스팅 주기 시간이 최소화되었습니다
  • 코딩 오류와 수동 기록 작업이 최소화되었습니다

비행 중인 Eagle 150 무인 항공기 (사진 제공: Composites Technology Research Malaysia)

더 많은 기능을 제공하고 보다 복잡한 임무를 수행하기 위해 항공기 제어 및 항공 전자 시스템이 필요함에 따라 임베디드 소프트웨어의 설계와 생산 또한 점차 복잡해지고 있습니다. UAV(무인 항공기)용 비행 제어 시스템에는 자동 또는 원격 제어의 복잡성이 더해집니다.

뉴욕 주 존슨시티와 캘리포니아 주 산타모니카에 위치한 BAE Systems Controls 엔지니어들은 MathWorks 툴을 사용하여 불과 8개월 만에 UAV 비행 항공 전자 시스템 및 지상 관제 스테이션을 개발하고 성공적으로 시험 비행을 마쳤습니다. MathWorks 툴 덕분에 지역적으로 분산된 팀들이 단일 환경 내에서 제어 시스템 설계, 모델링, 분석뿐만 아니라 UAV 설계, 시뮬레이션 데이터 시각화, 테스팅, 오토파일럿 코드 자동 생성 등을 수행할 수 있었습니다.

BAE Systems Controls의 수석 엔지니어인 펑 리앙 씨는 “MathWorks 제품을 통해 개발 주기 시간을 상당히 단축하고 시스템 및 소프트웨어 설계와 테스트에 드는 비용을 50%나 절감할 수 있었습니다.”라고 말합니다.

과제

BAE Systems Controls의 엔지니어들은 Eagle 150 기체 및 Teledyne Continental Motors IO-240-B 엔진을 장착한 UAV를 위한 항공 전자 시스템 및 지상 관제 스테이션 소프트웨어를 개발하고 시험 비행을 수행해야 했습니다. 전체 UAV 통합은 Composites Technology Research Malaysia가 담당하고, 항공기 개조와 통합 작업은 Excelnet에서 맡았습니다.

UAV 시스템 구조는 매우 정교하며 항공기 관리 컨트롤러, 액츄에이터, 데이터 링크 송수신기, 탑재물 어셈블리, GPS 수신기, 발전기, 배터리와 같은 품목을 구성해야 합니다.

한정된 예산과 촉박한 일정으로, BAE Systems 팀은 지상 관제 스테이션에서 원격으로 자동 동작하며 안정성 있는 비행 필수 소프트웨어를 개발해야 했습니다. 또한 비용 효율적으로 하드웨어와 소프트웨어를 모두 새 애플리케이션으로 마이그레이션할 수 있는 설계를 도출하고자 했습니다.

BAE Systems 팀은 충분한 테스트를 거쳐 널리 사용되며 호환성이 완벽한 설계 도구를 사용하기 원했으며 모델 기반 설계에 적합한 환경에서 작업해야 했습니다.

솔루션

BAE Systems는 UAV 시스템 모델링에 MATLAB®, Simulink® 및 Stateflow®를 채택했습니다. 기존 소프트웨어 설계를 재사용하여 시간과 비용을 절약하기로 결정했으며, 이러한 설계에는 MATLAB, Simulink, Stateflow를 이용하여 개발한 오토파일럿 모델과 통합 내비게이션 알고리즘이 포함되었습니다.

엔지니어들은 새로운 시스템에 출력으로 연산되는 모든 변수들을 가지고 Eagle 150 항공기 6DoF 비선형 역학 모델을 포함해야 했습니다. 뿐만 아니라 대기, 난류, 착륙장치, 조종장치, 조종익면, 액츄에이터, 센서, 엔진 속도, 배기 가스 온도, 프로펠러 추력, 데이터 링크에 대한 모델도 필요했습니다. 기존의 오토파일럿 모델에는 비행 단계 및 모드 로직, 스로틀 및 연료 혼합 제어, 안내 및 내비게이션 데이터 연산, 엔진 상태 모니터링뿐 아니라 세로, 가로, 방향 루프 제어도 포함되어 있었습니다.

Simulink Coder™를 사용하여 Simulink 및 Stateflow 모델로부터 임베디드 소프트웨어를 자동으로 생성했습니다. 코드 생성과 시뮬레이션 검증에 사용한 것과 동일한 모델에서 시스템 및 소프트웨어 설계에 관한 문서를 자동으로 생성했습니다.

엔지니어들은 문제를 기록하고 파악한 후 Simulink 모델을 수정하고, 모델을 시뮬레이션하여 새 요구 사항을 테스트하며, 코드를 자동으로 생성하고, HIL(hardware-in-the-loop) 테스트와 시험 비행 확인을 수행하여 신속하게 시험 비행 문제를 해결했습니다. 이와 비슷한 방법으로 새로운 기능을 시스템에 추가했습니다.

UAV의 첫 감시 비행은 매우 성공적이었고, 기본 오토파일럿 기능을 점검한 결과 또한 만족스러웠습니다. 추가 비행 테스트를 통해 시스템 요구 사항을 검증했습니다.

결과

  • 설계 및 재작업 비용이 크게 절감되었습니다. 팀은 BAE Systems 내 다른 그룹의 Simulink 모델을 재사용하여 새로운 UAV 오토파일럿의 기본 설계를 제작했으며 이에 따라 초기 단계에서 비용을 크게 절감했습니다.
  • 테스팅 주기 시간이 최소화되었습니다. 시뮬레이션 기반 테스트(시스템과 소프트웨어 모두에 대해 수동적인 단위 테스트보다“훨씬 더 효율적”이라고 BAE Systems내에서 말하여짐.)를 통해 팀은 촉박한 일정을 맞출 수 있었습니다.
  • 코딩 오류와 수동 기록 작업이 최소화되었습니다. 공통의 설계 도구와 모델의 사용은 임베디드 소프트웨어 및 설계 문서를 모두 동일 소스로부터 자동 생성하므로 수동으로 직접 변환할 때의 오류를 최소화하고 수동 문서 작업을 줄일 수 있었습니다.