# PX4 시스템 아키텍처

아래 섹션에서는 "일반적인" PX4 시스템의 하드웨어와 소프트웨어 개요를 제공합니다. 하나는 비행 콘트롤러만 있는 것이고 다른 하나는 비행 컨트롤러와 보조 컴퓨터("미션 컴퓨터"라고도 함)가 있습니다.

Note

PX4 아키텍처 개요는 플라이트 스택과 미들웨어 정보를 제공합니다. 오프보드 API는 ROSMAVSDK (opens new window)에서 설명합니다.

# 비행 콘트롤러

아래 다이어그램은 비행 콘트롤러 기반 PX4 시스템 개요입니다.

PX4 아키텍처 - FC 전용 시스템

하드웨어 구성

  • 비행 콘트롤러(PX4 비행 스택 실행). 콘트롤러에는 대부분 내부 IMU, 나침반 및 기압계가 포함되어 있습니다.
  • 모터 ESCPWM 출력, UAVCAN(UAVCAN은 그림과 같이 단일 방향이 아닌 양방향 통신을 허용함) 또는 기타 버스에 연결됩니다.
  • I2C, SPI, UAVCAN, UART 등을 통해 연결된 센서(GPS, 나침반, 거리 센서, 기압계, 광류, 기압계, ADSB 트랜스폰더 등)
  • 카메라 또는 기타 페이로드. 카메라는 PWM 출력에 연결하거나 MAVLink로 연결할 수 있습니다.
  • 지상국 컴퓨터/소프트웨어에 연결하기 위한 텔레메트리 라디오.
  • 수동 제어를 위한 RC 제어 시스템

다이어그램의 왼쪽은 다이어그램의 하드웨어 부분과 수평으로 정렬된(대략적으로) 소프트웨어 스택을 나타냅니다.

# 비행 콘트롤러와 보조 컴퓨터

아래 다이어그램은 비행 콘트롤러와 보조 컴퓨터(여기서는 "임무 컴퓨터"라고 함)를 포함하는 PX4 시스템을 나타냅니다.

PX4 아키텍처 - FC + 보조 컴퓨터

비행 콘트롤러는 일반 PX4 비행 스택을 실행하고, 보조 컴퓨터는 물체 회피충돌 방지와 같은 고급 기능을 제공합니다. 두 시스템은 고속 직렬 또는 IP 링크로 연결되며, 일반적으로 MAVLink 프로토콜 (opens new window)로 통신합니다. 지상국 및 클라우드와의 통신은 일반적으로 보조 컴퓨터를 통해 라우팅됩니다(예: Intel의 MAVLink 라우터 (opens new window) 사용).

PX4 시스템은 일반적으로 보조 컴퓨터에서 Linux OS를 실행합니다(PX4/Avoidance (opens new window) 프로젝트가 Linux용으로 설계된 ROS 기반 회피 라이브러리를 제공하기 때문). Linux는 NuttX보다 "일반" 소프트웨어 개발을 위한 플랫폼입니다. 많은 Linux 개발자와 유용한 소프트웨어가 이미 개발되어 있습니다(예: 컴퓨터 비전, 통신, 클라우드 통합, 하드웨어 드라이버용). 보조 컴퓨터는 때때로 같은 이유로 Android를 사용합니다.

Note

다이어그램은 여러 PX4 기반 시스템에서 사용된 접근 방식인 LTE를 통한 클라우드 또는 지상국 연결 방법을 나타냅니다. PX4는 특별히 LTE와 클라우드 통합을 위한 소프트웨어를 제공하지 않습니다(사용자 맞춤형 개발이 필요함).