DOI QR코드

DOI QR Code

Redundancy Management Method on Compact Flight Control Computer for AAV

AAV용 소형비행제어컴퓨터의 다중화 관리 방안

  • Received : 2024.06.12
  • Accepted : 2024.08.29
  • Published : 2024.08.31

Abstract

The flight control computer applied to manned/unmanned aircraft is one of the key components directly connected to the control of the aircraft, and is generally designed with a redundant architecture so that essential functions for flight can be maintained even if a failure occurs in a single channel. The operational flight program loaded on these redundant flight control computers should be designed considering a time synchronization between channels, input data selection methods from redundant sensors, and fault detection/isolation methods for channels. In this paper, we propose a redundancy management method applied to triplex compact flight control computers for advanced air vehicle. The proposed redundancy management method includes a synchronization algorithm between triplex channels, an input data voting method from sensors, a bus control right selection method for control command output, and a fault detection/isolation method for channels.

유무인 항공기에 적용되는 비행제어컴퓨터는 항공기의 제어와 직결되는 핵심 부품 중 하나로, 결함이 발생되더라도 비행에 필수적인 기능들을 유지할 수 있도록 다중화 구조로 설계하는 것이 일반적이다. 이러한 다중화 비행제어컴퓨터에 탑재되는 운용 소프트웨어는 다중화 채널 간의 실행 시간 동기화, 다중화 센서의 입력 데이터 선택 등을 고려하여 설계해야 하고, 각 채널의 결함을 검출하여 채널 전환 또는 채널 격리를 할 수 있는 방법이 적용되어야 한다. 본 논문에서는 AAV(advanced air vehicle)에 적용되는 삼중화 소형비행제어컴퓨터 (CFCC; compact flight control computer) 간의 다중화 관리 방안을 제시한다. 제시하는 다중화 관리 방안은 삼중화 채널간의 동기화 알고리즘, 센서 입력 데이터 선택 방법, 제어 명령 출력을 위한 버스 제어권 선택 방법, 채널의 결함 탐지 및 격리 방법을 포함한다.

Keywords

Ⅰ. 서론

유무인항공기에 탑재되는 비행제어컴퓨터는 조종사 제어 시스템 또는 지상제어시스템(GCS; ground control system)으로부터 입력되는 제어 명령과 각종 센서로부터 입력되는 센서 정보를 통해 추진 및 구동 장치들을 제어하는 장비이다. 이러한 비행제어컴퓨터는 고장 발생 시, 항공기의 제어 손실로 이어지기 때문에 safety-critical 장비로 분류되고, 내결함성 확보를 위해 다중화 구조를 적용한다 [1]-4]. 비행제어컴퓨터의 다중화 수준은 시스템이 요구하는 안정성에 의해 결정이 되지만, 무인기의 경우 비용, 무게, 전력소모 등의 요인을 고려하여 결정된다[1],[2]. 다중화 구조로 개발된 비행제어컴퓨터는 채널 간 동기화, 데이터 및 결함 발생 상태 공유, 결함 채널 격리를 위한 하드웨어가 제공되어야 하고[4],[5], 비행제어컴퓨터 운용프로그램(OFP, operational flight program)은 제공되는 하드웨어 리소스를 이용해 다중화 관리 기능을 고려하여 설계되어야 한다.

비행제어컴퓨터의 다중화 관리 설계는 채널 간의 동기화, 입력 데이터의 사용 선택, 출력 데이터 또는 출력 채널 선택, 채널의 결함 검출 및 격리 기능 등을 포함한다. 채널 간의 동기화는 독립적인 다중화 장치가 동일 시점에 동일한 작업을 수행할 수 있도록 태스크 프레임을 동기화하는 기능으로[5],[6] 다중화 채널을 동시에 운용하는 active/active 또는 active/hot-standby 방식을 적용하는 경우 반드시 고려해야 한다. 입력 데이터의 사용 선택은 다중화 센서로부터 전달되는 데이터를 서로 비교하고, 유효 데이터를 선택하는 기능이며[7], 출력 데이터의 선택 또는 출력 채널 선택은 각 채널에서 계산된 제어 명령 중 유효 명령을 선택하거나, 제어 명령을 출력할 채널을 선택하는 기능[8],[9]로 비행제어컴퓨터와 구동/추진 장치 간의 인터페이스에 따라 상이한 방식을 적용할 수 있다[10]. 채널의 결함 검출 및 격리는 비행제어컴퓨터 각 채널에 오동작 또는 성능 저하를 유발하는 결함의 발생 여부를 판단하고, 결함이 검출된 채널을 격리하여 정상적인 동작을 유지할 수 있도록 결함을 관리하는 기능이다[11].

비행제어컴퓨터의 다중화 관리 설계는 비행제어컴퓨터의 다중화 수준, 비행제어시스템의 센서 및 구동장치 구성, 비행제어컴퓨터 구성 컴포넌트 및 각 컴포넌트의 고장 영향성, OFP 운용 특징 등을 고려하여 설계되기 때문에, 항공기 플랫폼에 따라 적용되는 다중화 관리 설계는 상이할 수 있다. 그렇기 때문에 기존에 연구되었던 다중화 관리 방법들은 AAV에 그대로 활용될 수 없으며, 설계되는 AAV의 비행제어시스템 및 OFP 특성을 고려한 다중화 관리 방법이 연구되어야 한다.

본 논문에서는 AAV에 적용되는 다중화 소형비행제어컴퓨터(CFCC; compact flight control computer)의 다중화 관리 방안을 제안한다. 제안하는 다중화 관리 방안은 삼중화 채널간의 실행 시간을 일치시키기 위한 동기화 방법, 다중화 센서의 입력 보팅 방법, 제어 명령 출력을 위한 버스 제어권 선택 방법, 비행제어컴퓨터 채널의 결함 탐지/격리 방법을 포함한다.

Ⅱ. 비행제어컴퓨터의 다중화 관리

2-1 비행제어시스템 구성

AAV는 기존 항공기와 마찬가지로 사이즈, 무게, 전력 소모, 안전성 및 신뢰성을 고려하여 시스템을 설계해야 하지만 군용 항공기 및 민항기와는 달리 상용화를 위한 제작 단가 최소화를 요구한다. 그렇기 때문에 고가의 기존 항전 장비들은 적용하기 어려우며, 기존 항공기에 사용되는 MIL-STD-1553B, ARINC-664 PART7(AFDX)와 같은 군/항공용 인터페이스를 대체할 수 있는 통신 인터페이스의 적용을 고려해야 한다. 제안하는 CFCC 다중화 관리 기능을 포함하는 비행제어시스템은 RS-232/422/485, ETHERNETt, CAN과 같은 저가의 상용 인터페이스 적용을 고려하였으며, 그림 1과 표1은 시스템 아키텍처와 비행제어컴퓨터 연동 장치들을 나타내었다.

HHHHBI_2024_v28n4_459_2_f0001.png 이미지

그림 1. AAV 시스템 아키텍처

Fig. 1. AAV system architecture.

표 1. CFCC 연동 장치

Table 1. Devices connected to CFCC.

HHHHBI_2024_v28n4_459_2_t0001.png 이미지

2-2 CFCC 하드웨어 구성

CFCC 하드웨어는 그림 2와 같이 APM(application processor module), IOM(input output module), PSM(power supply module), hold up module(HUM), TM(transition module)로 구성되며, 1-LRU 1-channel로 구성된다. 즉, 삼중화 구성을 위해 3개의 LRU가 비행제어시스템에 포함되며, 와이어를 통해 CCDL 통신 인터페이스, channel invalid 및 channel fail 신호가 연결된다. CFCC 하드웨어의 특징 및 지원 인터페이스는 표 2과 같다.

HHHHBI_2024_v28n4_459_3_f0001.png 이미지

그림 2. CFCC 하드웨어 구성도

Fig. 2. CFCC hardware configuration.

표 2. CFCC 하드웨어 성능 및 특성

Table 2. Performance and characteristics of CFCC hardware

HHHHBI_2024_v28n4_459_3_t0001.png 이미지

2-3 다중화 관리 설계 방안

1) 동기화 설계

삼중화 비행제어컴퓨터를 동시에 운용하려면 독립된 각 채널들은 동일 시점에 동일한 작업을 수행할 수 있도록 실행 시간 동기화 기능을 포함하여야 한다. 독립된 CFCC 각 채널의 시간 동기화는 하드웨어 기반 동기화 방법과 소프트웨어 기반 동기화 방법으로 설계할 수 있다. 근래 개발되는 다중화 비행제어컴퓨터는 하드웨어 기반 동기화 방법이 가지고 있는 단일 고장점으로 인한 신뢰성 저하 문제를 극복하기 위해 소프트웨어 기반 동기화 방법을 적용하여 개발되고 있다. 소프트웨어를 통한 동기화 방법은 각 채널 간 태스크 프레임의 실행 시점을 공유하여 구현할 수 있으며, 실행 시점의 공유 수단은 하드웨어 설계에 따라 디스크리트 신호 또는 상호 채널 데이터 링크(CCDL: cross channel data link)를 사용할 수 있다. 실행 시점의 공유 수단에 따라 동기화 기능은 다음과 같이 동작한다.

- 디스크리트 신호를 이용한 동기화 방법 : CFCC 각 채널은 프레임의 시작 시점에 sync out 신호를 출력하고, sync out time-stamp에 현 시점의 누적 카운터 값을 기록한다. 만약 타 채널로부터 sync in#1 또는 sync in#2 신호가 수신되면 하드웨어 인터럽트가 발생되고, 그때의 누적 카운터 값을 sync in#1 time-stamp 또는 sync in#2 time-stamp에 기록한다. sync out time-stamp, sync in#1 time-stamp, sync in#2 time-stamp가 모두 업데이트되면, CFCC 소프트웨어는 sync out time-stamp와 sync in#1 time-stamp간의 편차(sync delta#1), sync out time-stamp와 sync in#2 time-stamp간의 편차(sync delta#2)를 계산하고, 자기 채널 기준 편차(0), sync delta#1, sync delta#2 중 중간값을 보정 값으로 선택한다. 선택된 보정값은 프레임의 주기 조정을 위해 스케줄링을 위한 타이머 카운터에 반영되는데, 프레임 주기의 급격한 변화를 방지하기 위해 그림 3과 같이 여러 프레임에 나눠서 보정값을 반영해야 한다.

HHHHBI_2024_v28n4_459_3_f0002.png 이미지

그림 3. 채널 간 동기화 로직 스케줄링

Fig. 3. Cross-channel synchronization logic scheduling.

- CCDL을 이용한 동기화 방법 : CFCC 각 채널 간의 프레임 시작 시점을 CCDL 기반 데이터 송수신(sync tx, sync rx)을 통해 공유하며, 그 이외의 time-stamp 기록 방식, 보정 값 계산 방식, 선택 보정 값 반영 방식은 디스크리트 신호를 이용한 방법과 동일하다. CCDL을 이용한 방법은 디스크리트를 이용한 방법보다 하드웨어 자원을 적게 사용한다는 장점이 있다.

2) 센서 입력 데이터 선택

CFCC와 연동되는 센서들이 다중화 설계되어 있는 경우, 입력된 센서 데이터 중 유효한 데이터를 선택 사용하기 위한 입력 데이터 선택 기능에 대한 설계가 고려되어야 한다. 다중화 센서의 입력 데이터 선택 기능은 비행제어시스템의 센서 다중화 수준과 인터페이스 구성에 따라 상이하게 설계되며, 그림 4와 그림6은 센서 다중화 수준 및 인터페이스 구성에 따른 입력 데이터 선택 예시를 나타내었다.

HHHHBI_2024_v28n4_459_4_f0001.png 이미지

그림 4. 삼중화 센서에 대한 데이터 입력 예시

Fig. 4. Data input example for triplex redundancy sensors.

그림 4와 같이 적용된 센서의 다중화 수준이 CFCC와 동일한 삼중화이고, CFCC의 각 채널과 센서 간 RS-232/422을 통해 일대일로 연결된 경우, 그림 5와 같이 유효 센서 데이터는 세 채널 입력 데이터의 편차와 임계값을 활용하여 결정될 수 있다. sensor#1~3으로부터 입력된 삼중화 입력 데이터는 CCDL을 통해 각 CFCC 채널 간 서로 교환되고, 각 CFCC 채널은 입력된 삼중화 센서 데이터의 편차를 계산한다. 계산된 입력 데이터의 편차들이 모두 미리 설정된 임계값 범위 이내이면, 세 개의 입력 데이터 중 중간값을 선택하여 사용하게 된다. 반면, 데이터의 편차들이 미리 설정된 임계값을 지속적으로 벗어나는 경우 고장 센서를 판단하고, 고장 센서에 대한 데이터 사용을 제한한다. 만약 고장 센서가 판별되지 않은 이중 고장인 경우, 센서에서 제공되는 BIT(built-in self test) 정보 또는 상태정보를 활용하여 고장을 격리한다.

HHHHBI_2024_v28n4_459_4_f0002.png 이미지

그림 5. 삼중화 센서에 대한 입력 데이터 선택 로직

Fig. 5. Input data selection logic for triplex sensors.

그림 6과 같이 적용된 센서의 다중화 수준이 CFCC보다 낮은 이중화이고, CFCC와 센서 간 CAN 버스로 연결된 경우, 두 값의 편차를 통해 입력 데이터의 이상 유무를 판단하더라도 두 개의 센서 중 어느 것에 이상이 발생했는지 판별하기 어렵기 때문에 그림 7과 같이 센서에서 제공하는 BIT 정보 또는 상태정보를 활용한다.

HHHHBI_2024_v28n4_459_4_f0003.png 이미지

그림 6. 이중화 센서에 대한 데이터 입력 예시

Fig. 6. Data input example for duplex redundancy sensors

HHHHBI_2024_v28n4_459_4_f0004.png 이미지

그림 7. 이중화 센서에 대한 입력 데이터 선택 로직

Fig. 7. Input data selection logic for duplex sensors.

각 CFCC 채널은 CCDL을 통한 입력 데이터 교환 없이 버스 인터페이스를 통해 Sensor#1~2의 데이터 수집이 가능하며, BIT 정보 또는 상태 정보를 통해 정상으로 판단한 센서 또는 vehicle management computer(VMC) 또는 GCS로부터 사용이 선택된 센서로부터 입력되는 데이터를 사용할 수 있도록 설계할 수 있다.

3) 출력 버스 제어권 선택

CFCC의 출력은 인터페이스 구성과 구동/추진 장치가 보유한 다중화 입력 데이터 처리 기능을 고려하여 설계된다. 그림8과 같이 CFCC와 연동되는 구동/추진 장치가 일대일로 연결되는 삼중화 인터페이스를 지원하고, 입력 데이터에 대한 선택 기능을 보유하였다면, CFCC의 모든 채널에서 제어 명령을 출력하여도 정상적인 구동/추진 장치 제어가 가능하다.

HHHHBI_2024_v28n4_459_4_f0005.png 이미지

그림 8. 액츄에이터에 대한 데이터 출력 예시1

Fig. 8. Data output example1 for an actuator.

반면, 그림 9와 같이 CFCC와 연동되는 구동/추진 장치가 이중화 CAN 버스 인터페이스를 지원한다면, 정상적으로 제어 명령을 출력할 수 있는 CFCC 채널과 통신 인터페이스를 판별하고, 버스 제어권을 중재하여야 한다. 이러한 출력 버스 선택 기능이 포함되지 않으면 모든 CFCC 채널이 제어 명령을 중복 출력하게 된다. 이를 방지하기 위해 그림 10과 같이 자기 채널 CFCC의 채널과 통신 인터페이스의 결함 발생 상태뿐만 아니라 타 채널 CFCC의 채널과 통신 인터페이스의 결함 발생 상태를 확인하여 데이터 출력 여부를 결정하는 버스 출력 제어권 선택 기능을 설계해야 한다. 버스 출력 제어권 선택 기능은 부팅 시 사전에 부여된 버스 제어권 할당 우선 순위에 따라 버스 출력 제어권을 갖는 마스터 채널을 결정한다. 결함이 발생하지 않은 정상 상태인 경우, 부팅 시 결정된 CFCC 채널과 인터페이스를 통해 지속적으로 통신을 수행하고, 표 3과 같이 CFCC 채널 또는 통신 인터페이스에 대한 결함 조건에 따라 제어 명령을 출력하는 CFCC 채널을 선택하도록 설계하였다.

HHHHBI_2024_v28n4_459_5_f0001.png 이미지

그림 9. 액츄에이터에 대한 데이터 출력 예시2

Fig. 9. Data output example2 for an actuator.

HHHHBI_2024_v28n4_459_5_f0002.png 이미지

그림 10. 데이터 출력을 위한 버스 제어권 선택 로직

Fig. 10. Bus control authority logic for data output.

표 3. 결함 조건에 따른 출력 채널 선택

Table 3. Output channel selection to fault conditions.

HHHHBI_2024_v28n4_459_5_t0001.png 이미지

4) 채널의 결함 탐지 및 격리

CFCC는 자기 채널의 결함뿐만 아니라 타 채널의 결함을 탐지하여 결함이 발생된 채널을 격리함으로써 비행제어시스템의 성능저하를 방지한다. CFCC 채널의 결함은 하드웨어, FPGA 펌웨어, 소프트웨어의 조합을 통해 탐지되며 각각의 역할은 다음과 같다.

- CFCC 하드웨어 : 그림 11과 같이 자기 채널의 channel Valid 신호, 타 채널의 channel valid 신호, 타 채널 격리 신호를 소프트웨어적으로 인식할 수 있는 수단을 제공한다.

HHHHBI_2024_v28n4_459_5_f0003.png 이미지

그림 11. CFCC 채널 간 연결 다이어그램

Fig. 11. Connection diagram of CFCC Cross-channel

- CFCC FPGA 펌웨어 : 자기 채널의 하드웨어 fail 상태, 자기 채널의 소프트웨어 fail 상태, 타 채널의 channel valid 상태, 타 채널 격리 신호의 조합을 통해 channel valid 상태를 결정한다.

- CFCC 소프트웨어 : BIT fail 및 소프트웨어 실행에 영향을 주는 인터럽트 발생 시 자기 채널의 소프트웨어 channel valid 신호를 ‘invalid’로 설정하여 channel을 invalid 상태로 설정한다. 또한, 타 채널로부터 격리 신호가 인가되면 self test를 수행하고, 그 결과에 따라 channel valid 신호를 설정한다. CFCC 소프트웨어가 탐지하는 결함 항목과 탐지 방법은 표4와 같다.

표 4. 결함탐지 항목

Table 4. Failure detection type.

HHHHBI_2024_v28n4_459_5_t0002.png 이미지

Ⅲ. 결론

도심의 교통 혼잡도 증가 문제를 해결하기 위한 방법으로 미래 공중 모빌리티가 주목받고 있는 가운데 이착륙 공간 제약 해소, 소음 및 탄소 배출량 최소화, 효율성 향상 등의 이점을 갖는 전기추진 수직이착륙(eVTOL; electrical vertical take off and landing) 기반 AAV에 대한 연구가 전 세계적으로 활발하게 이루어지고 있다. 이러한 AAV의 실용화를 위해선 기존 항공기에 적용된 내결함성 확보 기술을 AAV의 특성에 맞게 최적화할 수 있도록 다양한 연구가 필요하다.

본 논문은 AAV용 다중화 CFCC에 적용할 수 있는 다중화 관리 설계에 대한 논문으로 채널 간 동기화 방법, 센서 입력 데이터 보팅 방법, 제어 명령 출력을 위한 버스 제어권 선택 방법, 비행제어컴퓨터 채널의 결함 탐지/격리 방법을 제시하였다. 제시하는 다중화 관리 방안은 향후 AAV 기체 플랫폼에 따라 설정 선택이 가능하도록 적용할 예정이다. AAV 기체 플랫폼에 따라 설정이 선택된 다중화 관리 방안은 HILS 환경을 기반으로 통합 시험을 수행하여 기능/성능을 입증하고, 정적 및 동적 시험을 통해 소프트웨어 신뢰성을 확보할 예정이다. AAV 기체 플랫폼에 따라 결정되는 다중화의 종류(삼중화, 이중화)에 따른 성능 시험과 제어법칙과의 통합 후 비행 기능에 대한 시험을 수행하여 제시한 다중화 관리 방안의 검증을 수행할 예정이다.

Acknowledgments

이 연구는 2024년도 산업통상자원부 및 산업기술평가관리원(KEIT) 연구비 지원에 의한 연구임(20024332)

References

  1. H. S Yoon, "Operational flight program development for the UAV dual flight control computer," Korea Computer Congress, Korea: KR, pp. 91-93, 2019. Retrieved from https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE08763090.
  2. T. G. Oh and H. S Yoon, "A fault management design of dual-dedundant flight control computer for unmanned aerial vehicle," Journal of the Korean Society for Aeronautical & Space Sciences, Vol. 50, No. 5, pp. 349-357, May 2022. DOI: http://dx.doi.org/10.5139/ JKSAS. 2022.50.5.349.
  3. S. H Lee, I. A Jo and D. H Jeon, "Development of integrated flight control computer for a tactical UAV," in Proceeding of The Korean Society for Aeronautical and Space Sciences 2014 Fall Conference, Jeju: Korea, pp. 1727-1730, 2014. Retrieved from https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE06294899.
  4. J. D Park, J. H Kim and K. S Ahn, "Failure detection and isolation method design of OPPAV flight control computer," in Proceeding of The Korean Society for Aeronautical and Space Sciences 2021 Fall Conference, Jeju; Korea, pp. 1437-1438, 2021. Retrieved from https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE11031936.
  5. D. Y. Choi, B. M. Hwang, I. J. Cho, S. Y. Jang and J. Y. Kim, "A study on sync for the safety-critical software of redundancy system," in Proceeding of The Korean Society for Aeronautical and Space Sciences 2011 Fall Conference, Pyeongchang: KR, pp. 1021-1025, 2011. Retrieved from https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE01839660.
  6. Y. S. Lee, S. W. Kang, H. G. Lee and T. S. Ahn, "Synchronization method design of redundant flight control computer for UAV," Journal of the Korea Navigation Institute, Vol. 25, No. 4, pp. 273-279, Aug 2021. DOI : https://doi.org/10.12673/jant.2021.25.4.273
  7. Y. S. Nam, S. K. Hong and C. S. Yoo, "Redundancy management for a duplex FBW flight control system," Journal of the Korean Society for Aeronautical & Space Sciences, Vol. 32, No. 10, pp. 46-52, 2004. DOI : https://doi.org/10.5139/JKSAS.2004.32.10.046.
  8. S. H. Park, J. Y. Kim, I. J. Cho and B. M. Hwang, "Redundancy management design for triplex flight control system," Journal of the Korean Society for Aeronautical & Space Sciences, Vol. 38, No. 2, pp. 169-179, 2010. DOI: https://doi.org/10.5139/JKSAS.2010.38.2.169.
  9. J. Y. Ko and J. H. Kim, "A study of CAN bus interface for the redundant flight control computer for the distributed electric propulsion (DEP) personal air vehicle (PAV)," in Proceeding of The Korean Society for Aeronautical and Space Sciences Fall Conference, Jeju: Korea, pp. 1386-1387, 2020. Retrieved from https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE10526673.
  10. S.B. Chae, "Aircraft digital fly-by-wire system technology development trend," The Journal of the Korea Institute of Electronic Communication Sciences, Vol. 18, No. 3, pp. 509-520, Jun. 2023. DOI : 10.13067/JKIECS.2023.18.3.509.
  11. D. I. You, Y. M. C, H. S. Lim and J. S. Hong, "A dual redundancy air data system emergency mode for unmanned air vehicles," Proceeding of The Korean Society for Aeronautical and Space Sciences Fall Conference, Jeju: Korea, pp. 1149-1150, 2021. Retrieved from https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE11031795.