# 모듈 참조: 콘트롤러
# ODULE_NAM
소스: modules/control_allocator (opens new window)
# 설명
이것은 제어 할당을 구현합니다. 토크 및 추력 설정값을 입력으로 사용하고, 액추에이터 설정값 메시지를 출력합니다.
# 사용법
ODULE_NAM <command> [arguments...]
Commands:
start
stop
status print status info
# airship_att_control
소스: modules/airship_att_control (opens new window)
# 설명
이것은 비행선 자세 및 속도 컨트롤러를 구현합니다. 이상적으로는 자세 설정값 vehicle_attitude_setpoint
) 또는 속도 설정값(manual_control_setpoint
주제를 통한 아크로 모드)을 입력 및 출력 액추에이터 제어 메시지로 사용합니다.
현재 manual_control_setpoint
주제를 액츄에이터에 직접 공급하고 있습니다.
# 구현
제어 대기 시간을 줄이기 위하여, 모듈은 IMU 드라이버에서 게시한 자이로 주제를 직접 폴링합니다.
# 사용법
airship_att_control <command> [arguments...]
Commands:
start
stop
status print status info
# flight_mode_manager
소스: modules/flight_mode_manager (opens new window)
# 설명
이것은 모든 모드에 대한 설정값 생성을 구현합니다. 차량의 현재 모드 상태를 컨트롤러에 대한 입력 및 출력 설정값으로 사용합니다.
# 사용법
flight_mode_manager <command> [arguments...]
Commands:
start
stop
status print status info
# fw_att_control
소스: modules/fw_att_control (opens new window)
# 설명
fw_att_control은 고정익 자세 컨트롤러입니다.
# 사용법
fw_att_control <command> [arguments...]
Commands:
start
[vtol] VTOL mode
stop
status print status info
# fw_pos_control_l1
소스: modules/fw_pos_control_l1 (opens new window)
# 설명
fw_pos_control_l1은 고정익 위치 컨트롤러입니다.
# 사용법
fw_pos_control_l1 <command> [arguments...]
Commands:
start
[vtol] VTOL mode
stop
status print status info
# mc_att_control
소스: modules/mc_att_control (opens new window)
# 설명
이것은 멀티콥터 자세 컨트롤러를 구현합니다. 자세 설정값(vehicle_attitude_setpoint
)을 입력으로 사용하고, 속도 설정값을 출력합니다.
컨트롤러에는 각도 오류에 대한 P 루프가 있습니다.
간행물: 구현된 쿼터니언 태도 제어를 문서화, 제목: 비선형 쿼드로콥터 자세 제어(2013), 저자: Dario Brescianini, Markus Hehn and Raffaello D'Andrea 동적 시스템 및 제어 연구소(IDSC), ETH 취리히
https://www.research-collection.ethz.ch/bitstream/handle/20.500.11850/154099/eth-7387-01.pdf
# 사용법
mc_att_control <command> [arguments...]
Commands:
start
[vtol] VTOL mode
stop
status print status info
# mc_pos_control
소스: modules/mc_pos_control (opens new window)
# 설명
컨트롤러에는 위치 오류용 P 루프와 속도 오류용 PID 루프의 두 가지 루프가 있습니다. 속도 컨트롤러의 출력은 추력 방향(즉, 멀티콥터 방향에 대한 회전 행렬)과 추력 스칼라(즉, 멀티콥터 추력 자체)로 분할되는 추력 벡터입니다.
컨트롤러는 작업에 오일러 각도를 사용하지 않으며, 보다 인간 친화적인 제어 및 로깅을 위해서만 생성됩니다.
# 사용법
mc_pos_control <command> [arguments...]
Commands:
start
[vtol] VTOL mode
stop
status print status info
# mc_rate_control
소스: modules/mc_rate_control (opens new window)
# 설명
이것은 멀티콥터 속도 컨트롤러를 구현합니다. 속도 설정값(manual_control_setpoint
항목을 통한 곡예 모드)을 입력으로 사용하고, 액추에이터 제어 메시지를 출력합니다.
컨트롤러에는 각속도 오류에 대한 PID 루프가 있습니다.
# 사용법
mc_rate_control <command> [arguments...]
Commands:
start
[vtol] VTOL mode
stop
status print status info
# navigator
소스: modules/navigator (opens new window)
# 설명
자율 비행 모드를 담당하는 모듈입니다. 여기에는 임무(데이터맨에서 읽기), 이륙 및 RTL이 포함됩니다. 또한, 지오펜스 위반 검사를 담당합니다.
# 구현
다른 내부 모드는 공통 기본 클래스 NavigatorMode
에서 상속되는 별도의 클래스로 구현됩니다. _navigation_mode
구성원은 현재 활성 모드를 포함합니다.
Navigator는 위치 설정점 트리플렛(position_setpoint_triplet_s
)을 게시한 다음, 위치 컨트롤러에서 사용합니다.
# 사용법
navigator <command> [arguments...]
Commands:
start
fencefile load a geofence file from SD card, stored at etc/geofence.txt
fake_traffic publishes 4 fake transponder_report_s uORB messages
stop
status print status info
# rover_pos_control
소스: modules/rover_pos_control (opens new window)
# 설명
L1 컨트롤러를 사용하여 그라운드 로버의 위치를 제어합니다.
IMU_GYRO_RATEMAX에서 actuator_controls_0
메시지를 게시합니다.
# 구현
현재 이 구현은 일부 모드만 지원합니다.
- 완전 수동: 스로틀 및 편요각 제어가 액츄에이터에 직접 전달됩니다.
- 자동 미션: 로버가 미션을 실행합니다.
- 배회: 로버가 배회 반경 내로 이동한 다음 모터를 중지합니다.
# 예
CLI 사용 예:
rover_pos_control start
rover_pos_control status
rover_pos_control stop
# 사용법
rover_pos_control <command> [arguments...]
Commands:
start
stop
status print status info
# uuv_att_control
소스: modules/uuv_att_control (opens new window)
# 설명
무인수중선(UUV)의 자세를 제어합니다.
일정한 250Hz에서 actuator_controls_0
메시지를 게시합니다.
# 구현
현재 이 구현은 일부 모드만 지원합니다.
- 완전 수동: 롤, 피치, 요 및 스로틀 컨트롤이 액추에이터에 직접 전달됩니다.
- 자동 임무: 무인수중선이 임무를 실행합니다.
# 예
CLI 사용 예:
uuv_att_control start
uuv_att_control status
uuv_att_control stop
# 사용법
uuv_att_control <command> [arguments...]
Commands:
start
stop
status print status info
# uuv_pos_control
소스: modules/uuv_pos_control (opens new window)
# 설명
무인수중선(UUV)의 자세를 제어합니다. 일정한 250Hz에서 actuator_controls_0
메시지를 게시합니다.
# 구현
현재 이 구현은 일부 모드만 지원합니다.
- 완전 수동: 롤, 피치, 요 및 스로틀 컨트롤이 액추에이터에 직접 전달됩니다.
- 자동 임무: 무인수중선이 임무를 실행합니다.
# 예
CLI 사용 예:
uuv_pos_control start
uuv_pos_control status
uuv_pos_control stop
# 사용법
uuv_pos_control <command> [arguments...]
Commands:
start
stop
status print status info
# vtol_att_control
소스: modules/vtol_att_control (opens new window)
# 설명
fw_att_control은 고정익 자세 컨트롤러입니다.
# 사용법
vtol_att_control <command> [arguments...]
Commands:
stop
status print status info