projects:px4-development:commander
This is an old revision of the document!
Table of Contents
Commander
PX4의 비즈니스 로직
Commander App은 비행 명령과 비행체 정보를 모아 수행할 명령을 결정하고, 다른 App에게 명령을 내린다.
Commander App
Firmware/src/modules/commander/commander.cpp
- 비행모드 전환 및 수행지시 (상태머신으로 구현)
- 파라미터 업데이트 (
parameter_update
) - RC입력 읽기(
manual_control_setpoint
) - 센서값(
sensor_combined
) 읽기 - 시스템 파워 관리: 파워를 선택
- Safety 스위치(
safety
) 체크 - 기체상태 관리(
vtol_vehicle_status
) - 기체 위치(
vehicle_global_position
) - 기체 로컬 위치(
vehicle_local_position
) - 기체 자세(
vehicle_attitude
) - 기체 착륙 여부(
vehicle_land_detected
) - cpuload, batterystatus
Commander App은 PX4의 주요 uORB 토픽을 관리. Commander App이 구독 또는 발생하는 uORB 토픽를 읽고 이와 관련된 주변의 App 코드를 읽으면 이 지휘관이 하는일의 큰그림이 그려집니다.
Commander App에서 Publish하는 토픽입니다.
armed_pub commander_state_pub homePub led_control_pub mission_pub command_ack_pub control_mode_pub roi_pub status_pub status_pub vehicle_status_flags_pub
Subscribed Topic
다음은 Commander App에서 구독하는 토픽입니다. PX4의 왠만한 토픽은 다 구독합니다.
_VEHICLE_ATTITUDE_CONTROLS battery_status cpuload differential_pressure estimator_status geofence_result manual_control_setpoint mission_result offboard_control_mode parameter_update position_setpoint_triplet safety sensor_accel sensor_combined sensor_correction sensor_gyro sensor_mag sensor_preflight subsystem_info system_power telemetry_status vehicle_attitude vehicle_command vehicle_global_position vehicle_gps_position vehicle_land_detected vehicle_local_position vehicle_status vtol_vehicle_status
projects/px4-development/commander.1531927930.txt.gz · Last modified: 2018/07/18 15:32 by donghee