# 목차

**제1장: PX4 개요**

* PX4의 역사 및 목적
* PX4의 주요 구성 요소
* PX4와 MAVLink의 관계

**제2장: PX4 설치 및 빌드**

* 개발 환경 설정
* PX4 소스코드 다운로드 및 빌드 방법
* PX4 시뮬레이션 환경 설정

**제3장: PX4 코드 구조**

* PX4의 디렉토리 구조
* 주요 파일과 폴더 설명
* CMake 파일과 빌드 시스템 이해

**제4장: PX4 모듈과 애플리케이션**

* PX4 모듈의 구조
* 각 모듈의 역할과 기능
* 애플리케이션 레벨에서의 동작

**제5장: PX4 내비게이션 시스템**

* 위치 추정 알고리즘 개요
* EKF (Extended Kalman Filter)와의 연동
* GPS 및 IMU 센서 데이터 처리

**제6장: PX4 제어 시스템**

* 비행 제어 알고리즘 이해
* PID 제어기 구조
* 위치 및 속도 제어 시스템

**제7장: PX4 통신 구조**

* MAVLink 메시지 구조
* PX4의 통신 흐름 분석
* 통신 프로토콜과 인터페이스

**제8장: PX4 하드웨어 추상화 계층 (HAL)**

* HAL의 역할과 구조
* 센서 인터페이스 및 드라이버
* 하드웨어 간의 상호작용 처리

**제9장: PX4 미션 시스템**

* 미션 플래너와의 통합
* 미션 관리 및 자동화 기능
* PX4에서 미션 처리 흐름

**제10장: PX4 퍼셉션 시스템**

* 센서 데이터 처리
* 환경 인식 및 장애물 회피
* PX4의 컴퓨터 비전 시스템 통합

**제11장: PX4의 보안 및 안전성**

* PX4 보안 아키텍처
* 비행 안전을 위한 시스템 구성
* PX4에서의 오류 처리 및 복구 메커니즘

**제12장: PX4 파라미터 시스템**

* 파라미터 관리 구조
* 파라미터 설정 및 동적 변경
* 파라미터 저장 및 로딩 메커니즘

**제13장: PX4 로그 시스템**

* 로그 기록과 저장 방식
* 로그 데이터 분석 방법
* 로그 시스템의 커스터마이징

**제14장: PX4의 전력 관리**

* 전력 시스템 아키텍처
* 배터리 관리 및 모니터링
* 전력 소비 최적화 방법

**제15장: PX4의 UAVCAN 프로토콜**

* UAVCAN 개요
* PX4에서의 UAVCAN 구현
* UAVCAN을 통한 통신 및 장비 연결

**제16장: PX4에서의 비행 모드**

* PX4의 다양한 비행 모드
* 모드 전환 및 상태 관리
* 비행 모드별 제어 시스템 차이

**제17장: PX4의 시뮬레이션 및 테스트**

* PX4의 시뮬레이션 엔진 개요
* Gazebo 및 기타 시뮬레이터와의 통합
* 시뮬레이션 기반 테스트 및 검증

**제18장: PX4의 실시간 운영체제 (RTOS)**

* NuttX 실시간 운영체제 개요
* PX4와 NuttX의 상호작용
* 실시간 태스크 관리 및 스케줄링

**제19장: PX4 확장 및 커스터마이징**

* 새로운 모듈 및 기능 추가
* 소스코드 커스터마이징 방법
* 하드웨어 및 소프트웨어 확장

**제20장: PX4 개발 및 기여 방법**

* PX4 개발 커뮤니티 및 기여 절차
* 소스코드 기여 방법 및 리뷰 절차
* PX4 개발 문서 및 자료 활용법
