이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.
쿼드콥터 제어 및 센서
쿼드콥터에 대한 제어 시스템을 만들고 센서를 설정해야 합니다.
제어 시스템
Parrot 쿼드콥터 미니드론용 제어 시스템을 구축하려면, 드론의 안정성, 고도, 방향 및 궤적을 관리하는 알고리즘과 제어기를 설계해야 합니다.
미니드론의 제어 시스템을 설계할 때는 드론의 특정 역학과 제약은 물론, 의도한 임무나 응용 프로그램의 요구 사항도 고려해야 합니다. 안전성, 안정성, 반응성은 제어 시스템 설계의 중요한 측면입니다.
제어를 위해 쿼드콥터는 자세를 추정하기 위해 상보 필터를 사용하고, 위치와 속도를 추정하기 위해 칼만 필터를 사용합니다.
이 모델은 제어기와 추정기를 서브시스템으로 구현하여 설계를 위해 추정기와 제어기의 여러 조합을 평가할 수 있습니다.
쿼드콥터 비행 제어 시스템

입력값. 비행 제어 시스템(FCS)의 입력은 다음과 같습니다.
항공기 명령 -
Command서브시스템에서센서 —
Sensors서브시스템에서이미지 데이터 —
Sensors서브시스템에서
컴포넌트. FCS의 주요 컴포넌트는 다음과 같습니다.
이미지 처리 시스템 — 이 시스템은 센서로부터 수신된 이미지 데이터를 사용하고 착륙 플래그를 계산하며, 이 플래그는 착륙 논리 제어 시스템에 대한 입력이 됩니다. 서브시스템은 카메라의 이미지에서 붉은색의 우세성이 감지되는지 감지합니다.
착륙 로직 — 착륙 로직 시스템은 카메라 데이터를 기반으로 설정되는 착륙 플래그와, 비행체가 지면으로부터의 높이인 0.6m의 안전 한계에 접근하면 설정되는 착륙 오버라이드 플래그를 기반으로 쿼드콥터를 착륙시키도록 제어기를 기동합니다.
추정치 — 서브시스템은 자세에 대한 상보 필터와 위치 및 속도에 대한 칼만 필터를 사용하여 비행체의 상태를 추정하기 위해 센서 서브시스템 출력을 사용합니다.
제어기 — 구현된 제어기 로직은 다음을 사용합니다:
요(yaw)용 PID 제어기.
X-Y 위치에 대한 계단식 PID 제어기.
피치/롤 방향 제어를 위한 계단식 PID 제어기.
고도용 PID 제어기.
충돌 예측 플래그 — 플래그는 비행체 상태 값을 기반으로 설정됩니다. 광학 흐름 속도(u 또는 v가 0.01보다 큼)를 기준으로 시뮬레이션이 중지됩니다.
controllerVars 파일에는 제어기와 관련된 변수가 포함되어 있습니다. estimatorVars 파일에는 추정치와 관련된 변수가 포함되어 있습니다. 값은 https://github.com/Parrot-Developers/RollingSpiderEdu/tree/master/MIT_MatlabToolbox/trunk/matlab/libs/RoboticsToolbox 파일을 기준으로 합니다.
센서
모델에서 다음 두 가지 유형의 센서를 사용할 수 있습니다.
피드스루 센서
동적 센서
쿼드콥터 예제의 Sensor Subsystem 블록은 비행체의 상태와 환경 값을 입력으로 받아, IMU 및 광학 흐름 데이터를 포함한 시뮬레이션된 센서 측정값을 출력합니다. 이 장치는 상태 추정 및 제어에 활용하기 위한 가속도, 각속도 및 광학 흐름 출력 신호를 제공합니다. 광학 흐름 데이터는 상태를 입력으로 사용하는 대략적인 구현 방식을 통해 계산됩니다.
피드스루 방식에서는 가속도 및 각속도와 같은 센서 출력값이 편향이 추가된 상태로부터 직접 생성됩니다. 동적 변형에서 Three-axis Inertial Measurement Unit 블록은 가속도와 각속도에 대한 물리적 센서 동역학을 시뮬레이션합니다.
이 워크플로는 일련의 센서를 사용하여 쿼드콥터의 상태를 확인합니다. 이러한 상태는 쿼드콥터의 방향과 위치를 설명합니다.
VNED — 지구 기준 프레임의 속도
XNED — 지구 기준 프레임의 위치
오일러 — 오일러 회전 각도 ψ, θ 및 ψ
DCMbe — 지구 좌표축에서 바디 고정 좌표축으로의 좌표 변환
Vb — 바디 고정 프레임에서의 속도
ɷ b — 바디 고정 좌표축에서의 각속도
dɷ b/dt — 각가속도
Abe — 관성계에 대한 가속도
시스템은 sensorVars에 있는 센서의 특성을 저장합니다. 이러한 측정값에 센서 동역학을 포함시키려면 작업 공간에서 VSS_SENSORS 변수를 변경하면 됩니다. VSS_SENSORS = 0은 피드스루 센서에 해당하고, VSS_SENSORS = 1은 동적 센서에 해당합니다.