Skip to content

[VTOL] Fail Safe

Shiningsun00 edited this page Jul 16, 2024 · 9 revisions

1. Fail safe 작동 순서

  1. problem -> Quad transution -> manual
  2. manual 실패 ->home return

2. Failsafe Actions

  1. problem -> Quad transution -> manual
Parameter Description Default
COM_RC_OVERRIDE auto modes and for offboard mode에서 Position mode(안전한 manual)로 강제 전화하는 코드.(배터리가 부족 상황 제외)
1
COM_RC_STICK_OV Position Mode 에서 스틱 움직임의 양 설정 (if COM_RC_OVERRIDE is enabled). 30%
  1. home return
  • 사용할 QGC제공 타입 RTL_TYPE=0 : 이 일정 고도 상승 후 홈 설정된 포인트로 복귀
  • RTL_TYPE=0 Parameter
Parameter Description Default
RTL_RETURN_ALT RTL_CONE_ANG이 0도일 때 Return 할 때의 고도 60m
RTL_DESCEND_ALT
높은 고도에서 하강속도를 줄이거나 멈출 최소 고도
30m
RTL_LAND_DELAY ESCEND_ALT`에서 hover하는 시간 - 기본으로는 이 시간이 짧아서 속도를 줄이고 바로 착륙함. 이 시간은 착륙 기어가 배치될 시간을 범(자동 트리거)
0.0s
RTL_MIN_DIST RTL의 return 고도를 설장하는 홈 반경 이 반경안에 있으면 RTL_RETURN_ALT로 가지 않고 현제고도와 RTL_DESCEND_ALT중 높은 고도를 유지
10.0m
RTL_CONE_ANG RTL return altitude를 설정하는 각도 0이면 RTL_RETURN_ALT이나 그보다 높은 고도로 집으로 옴
45degree
  1. SYS_FAILURE_EN 활성화하기(parameter)
  2. px4 실행 터미널에서 원하는 실패 코드 입력하기

사용 명령어들 The full syntax of the [failure]

failure <component> <failure_type> [-i <instance_number>]
ex) failure battery off
  • component:
    • 센서:
      • gyro: 자이로
      • accel: 가속도계
      • mag: 자기계
      • baro: 기압계
      • gps: GPS
      • optical_flow: 광류 센서
      • vio: 시각적 관성 주행 거리
      • distance_sensor: 거리 센서(거리 측정기)
      • airspeed: 대기속도 센서
    • 시스템:
      • battery: 배터리
      • motor: 모터
      • servo: 서보
      • avoidance: 회피
      • rc_signal: RC 신호
      • mavlink_signal: MAVLink 신호(데이터 텔레메트리)
  • failure_type:
    • ok: 정상적으로 게시합니다(실패 주입 비활성화).
    • off: 게시를 중지합니다.
    • stuck: 매번 같은 값을 보고합니다(센서 오작동을 나타낼 수 있음).
    • garbage: 무작위 노이즈를 게시합니다. 초기화되지 않은 메모리를 읽는 것처럼 보입니다.
    • wrong: 잘못된 값을 게시합니다(여전히 합리적으로 보이거나 "쓰레기"가 아님).
    • slow: 낮은 속도로 게시합니다.
    • delayed: 상당한 지연으로 유효한 데이터를 게시합니다.
    • intermittent: 간헐적으로 게시합니다.
  • instance number(선택 사항): 영향을 받는 센서의 인스턴스 번호입니다. 0 (기본값) 지정된 유형의 모든 센서를 나타냅니다.

4. Fail-Safe Actions Parameter

Name Description [Min, Max] (Incr.) Default Current
COM_FAIL_ACT_T (FLOAT) Fail-safe로 들어가기 전에 (RTL, Land, Hold), 사용자가 인식할 수 있도록 COM_FAIL_ACT_T 초 동안 Hold 모드에서 대기. 이 시간 동안 사용자는 스틱 오버라이드 기능을 통해 제어할 수 없음 (COM_RC_OVERRIDE 참조). 이후 설정된 Fail-dafe가 트리거되고 사용자는 스틱 오버라이드를 사용할 수 있음. 0 값은 지연을 비활성화하고 사용자는 스틱 움직임을 통해 제어할 수 없음 (모드 전환은 여전히 허용됨).

[0.0, 25.0] 5s 5s
Action Description
None/Disabled 아무런 동작도 하지 않음. Failsafe 상태가 무시됨.
Warning 경고 메시지가 전송됨 (예: QGroundControl로).
Hold mode 차량이 Hold 모드에 들어감 (MC) 또는 Hold 모드 (FW)에 들어가 각각 호버링 또는 원을 그림. VTOL 차량은 현재 모드 (MC/FW)에 따라 대기함.
Return mode 차량이 Return 모드에 들어감. Return 동작은 아래의 Return 설정에서 설정할 수 있음.
Land mode 차량이 Land 모드에 들어감 (MC) 또는 Land 모드 (FW)에 들어가 착륙함. VTOL은 먼저 MC 모드로 전환됨.
Disarm 모터를 즉시 정지시킴.
Flight termination 모든 컨트롤러를 끄고 모든 PWM 출력을 failsafe 값으로 설정 (예: PWM_MAIN_FAILn, PWM_AUX_FAILn). failsafe 출력은 낙하산 배치, 착륙 기어 작동 또는 다른 작업을 수행하는 데 사용할 수 있음. 고정익 차량의 경우 차량을 안전하게 활공할 수 있음.
Setting Parameter Description Default Current
Failsafe Action COM_LOW_BAT_ACT 용량이  Battery Failsafe Level이하로 떨어질 때 경고, 복귀 또는 착륙을 수행하거나, 아래의 각 수준 설정에 따라 경고 후 복귀, 착륙을 수행 : warning(0), Land mode(2), Rerurn at critical level, land at eemr gency level(3) 0 2
Battery Warn Level BAT_LOW_THR 경고(또는 기타 조치)를 위한 용량 백분율 0.15 0.15
Battery Failsafe Level BAT_CRIT_THR 복귀 조치(또는 단일 조치가 선택된 경우 다른 조치)를 위한 용량 백분율 0.07 0.07
Battery Emergency Level BAT_EMERGEN_THR 즉시 착륙 조치를 트리거하는 용량 백분율 0.05 0.05
Setting Parameter Description Default Current
Manual Control Loss Timeout COM_RC_LOSS_T 수신이 끊기고 manual이 손실된 것으로 간주하는 시간. 값을 짧게 유지. 수신 끊기기전 신호로 계속 작동함 0.5s 0.5s
Failsafe Reaction Delay COM_FAIL_ACT_T COM_RC_LOSS_T트리거후 Failsafe가 작동하는데 걸리는 시간. 이 시간동안 Hold모드임. 5s 5s
Failsafe Action NAV_RCL_ACT Set RC loss failsafe mode :Hold mode(1), Return mode(2), Land mode(3), Terminate(5), Disarm(6) 2 2
RC Loss Exceptions COM_RCL_EXCEPT manual 손실을 무시하는 모드를 설정 : Mission, Hold, Offboard. 0 0
Setting Parameter Description Default Current
Data Link Loss Timeout COM_DL_LOSS_T 데이터 연결이 끊긴 후 failsafe가 트리거되기까지의 시간. 10s 10s
Failsafe Action NAV_DLL_ACT Disabled(0), Hold mode(1), Return mode(2), Land mode(3), Terminate(5), Disarm(6). 0 2
Setting Parameter Description Default Current
Action on breach GF_ACTION None(0), Warning(1), Hold mode(2), Return mode(3), Terminate(4), Land(5). 2 2
Max Radius GF_MAX_HOR_DIST geofence 실린더의 수평 반경. 0이면 geofence 비활성화. 0.0m 0m
Max Altitude GF_MAX_VER_DIST geofence 실린더의 높이. 0이면 geofence 비활성화. 0.0m 0m
파라미터는 있으나 QGC UI에는 없는 Geofence Failsafe 파라미터
Setting Parameter Description Default Current
Geofence source GF_SOURCE 위치 소스가 추정된 global position인지 GPS 장치로부터 직접 받은 것인지 설정.
value : GPOS(0), GPS(1)
0 0
Preemptive geofence triggering GF_PREDICT (실험적) 차량의 현재 움직임이 breach 할 것이 예상될 경우 지오펜스를 트리거 0(Disables) 0
Circuit breaker for flight termination CBRK_FLIGHTTERM 비행 종료 조치 활성화/비활성화 (기본적으로 비활성화). 121212 121212
Setting Parameter Description Default Current
Climb to altitude RTL_RETURN_ALT 복귀 비행을 위해 차량이 이 최소 높이까지 상승 (이하인 경우). 60m 60.0m
Return behaviour 복귀 후 선택 목록: 착륙, 체공 및 착륙하지 않음, 또는 지정된 시간동안 체공 후 및 착륙.
Loiter Altitude RTL_DESCEND_ALT 체공으로 복귀가 선택된 경우 차량이 유지할 고도를 지정할 수 있음. 30m 30.0m
Loiter Time RTL_LAND_DELAY 착륙전 체공시간을 정할 수 있음 0.0s 0.0s

 Return behaviour는 RTL_LAND_DELAY 에 정의되어있음 Return mode참고.

Setting Parameter Description Default
Current
Disarm After COM_DISARM_LAND 착륙 후 차량이 꺼지도록하는 체크박스를 선택. 값은 0이 아니어야 하지만 1초의 분수일 수 있음. 2.0s 2.0s
Landing Descent Rate (MC only) MPC_LAND_SPEED 착륙 하강 속도. 0.7m/s 0.7m/s

PX4 position가 허용 수준 이하로 떨어질 경우 (GPS 손실로 인한 가능성 있음) 위치 fail-safe 조치 트리거.

Parameter Setting Description Default
Current
 COM_POSCTL_NAVL (INT32) Position control navigation loss response 위치 제어를 위한 내비게이션 정확도가 충분하지 않을 때 사용할 비행 모드를 설정. Altitude/Manual이 선택된 경우 : callback 후 원격 제어 사용을 가정. 높이 추정치가 있으면 Altitude 모드로 전환, 그렇지 않으면 Manual이 모드로 전환. Land/Descend이 선택된 경우 : callback 후 원격 제어 사용을 가정하지 않음. 높이 추정치가 있으면 착륙 모드로 전환, 그렇지 않으면 하강 모드로 전환.
0 : Altitude/Manual (Default)
1 : Land/Descend
0 0
Parameter Description Default
Current
COM_POS_FS_DELAY loss of position 후 failsafe가 트리거되기 전까지의 지연 시간. 1s 1s
COM_POSCTL_NAVL 임무 중 위치 제어 내비게이션 손실 반응.
Values: 0 (assume use of RC), 1 (Assume no RC)
0 0
고정익만 사용하는 Para
FW_GPSF_LT GPS 회복을 기다리는 로이터 시간 (착륙이나 비행 종료 전). 0으로 설정하여 비활성화할 수 있음. 30s 30s
FW_GPSF_R 선회중 고정 roll/bank 각도 15.0deg 15.0deg

Offboard Loss Failsafe는 Offboard 제어 중에 Offboard 연결이 끊어지면 트리거됩니다. RC 연결의 유무에 따라 다른 Failsafe 행동을 지정할 수 있습니다.

Parameter Description Default
Current
COM_OF_LOSS_T Offboard 연결 손실 후 Failsafe 상태가 트리거되기 전까지의 지연 시간. 1.0s 1.0s
COM_OBL_RC_ACT RC가 사용 가능한 경우의 Failsafe 조치: Position mode(0), Altitude mode(1), Manual mode(2), Return mode(3), Land mode(4), Hold mode(5), Terminate mode(6), Disarm(7). 0 0

The Traffic Avoidance Failsafe은 PX4가 미션중 transponder data에 반응하는것을 허용함.

Parameter Description Default
Current
NAV_TRAFF_AVOID The Traffic Avoidance Failsafe: Disabled(0), Warn only(1), Return mode(2), Land mode(3), Position Gold mode(4). 1 1

Vtol 기체가 고정익모드로 날지못할때 즉시 회전익 모드로 전환시키는 파라미터

매개변수 설명 Default
Current
COM_QC_ACT 다중콥터 비행으로 전환 후 쿼드츄트 동작 설정: Warning(-1), Return(0), Land(1), Hold(2). 0 0
VT_FW_QC_HMAX the quad-chute failsafe가 트리거되지 않는 Maximum quad-chute 높이. 이는 배터리를 방전시키는 high altitude quad-chute descent을 막아줍니다. 0m 0m
VT_QC_ALT_LOSS 비명령식 하강  quad-chute 고도 임계값. 0.0m 0.0m
VT_QC_T_ALT_LOSS 고정익 천이중 Quad-chute Failsafe가 작동해 회전익으로 전환되는 고도(이고도 이하이면 faildafe 작동) 20.0m 20.0m
VT_FW_MIN_ALT 고정익 비행을 위한 홈에서의 최소 고도. 고정익 비행 중 고도가 이 값 아래로 떨어지면  quad-chute 트리거됩니다. 0.0m 0.0m
VT_FW_QC_R FW 모드에서  quad-chute 트리거링을 위한 절대 롤 임계값. 0deg 0deg
VT_FW_QC_P FW 모드에서  quad-chute 트리거링을 위한 절대 피치 임계값. 0deg
0deg

failure detector은 추락시  flight termination 를 실행시키는 트리거 CBRK_FLIGHTTERM=0  이 기본이면a parachute등 다양한 동작을 설정할 수 있음.

The failure detector는 모든 기체 유형과 모드에서 활성화되지만, 기체가 회전을 할 것으로 예상되는 모드(예: Acro mode (MC)Acro mode (FW), and Manual (FW))에서는 제외됩니다.

장애 감지기는 기체의 자세가 미리 정의된 피치 및 롤 값을 지정된 시간 이상 초과할 경우 트리거되도록 설정

매개변수 설명 Default
Current
CBRK_FLIGHTTERM 장애 감지기 또는 FMU 손실로 인한 비행 종료 활성화. 기본값 121212 해제. 121212 121212
FD_FAIL_P 허용 가능한 최대 피치 (도). 60deg 60deg
FD_FAIL_R 허용 가능한 최대 롤 (도). 60deg 60deg
FD_FAIL_P_TTRI failure 감지FD_FAIL_P f 초과 시간 (기본값 0.3초). 0.3s 0.3s
FD_FAIL_R_TTRI failure 감지 FD_FAIL_R 초과 시간 (기본값 0.3초). 0.3s 0.3s

 failure detector불가능하면 외부 ATS 시스템에 의해 트리거될 수도 있습니다. 외부 트리거 시스템은 비행 컨트롤러 포트 AUX5(또는 AUX 포트가 없는 보드의 경우 MAIN5)에 연결되어야 하며, 아래 매개변수를 사용하여 구성됩니다. (INFO) External ATS is required by ASTM F3322-18. One example of an ATS device is the FruityChutes Sentinel Automatic Trigger System.

매개변수 설명 Default
Current
FD_EXT_ATS_EN 외부 자동 트리거 시스템(ATS)으로부터 fail-safe를 위해 AUX5 또는 MAIN5에서 PWM 입력 활성화. 기본값: 비활성화. 0(Disabled) 0(Disabled)
FD_EXT_ATS_TRIG 외부 자동 트리거 시스템의 fail-safe활성화를 위한 PWM 임계값. 기본값: 1900 ms. 1900us 1900us

Remote control fh (as part of QGroundControl Flight Mode Setup) 위급상황시 긴급 fail-safe명령 기능 ex) stop all motors, or activate Return mode.

모든 모터 끄는 스위치 5초후 재시작 되며 disarm 상태라 다시 arm시켜야함.

Arm/Disarm 스위치는 기본 스틱 기반 Arm/Disarm 메커니즘을 대체하는 기능으로, 모터가 시작/정지되기 전에 의도적인 단계를 포함. 다음과 같은 이유로 기본 메커니즘 대신 사용 가능:

  • 스틱 동작보다 스위치를 선호.
  • 특정 스틱 동작으로 인해 공중에서 실수로 Arm/Disarm 트리거 방지.
  • 지연 없이 즉시 반응.

Arm/Disarm 스위치는 비행 중 Disarm을 지원하는 비행 모드에서 즉시 모터 정지. 포함 모드:

  • Manual mode
  • Acro mode
  • Stabilized

비행 중 디스암을 지원하지 않는 모드에서는 스위치가 비행 중 무시되지만 착륙 감지 후 사용 가능. 포함 모드:

  • Position mode
  • utonomous modes(예: Mission, Land 등)

즉시  Return mode.작동하는 스위치

이륙이 너무 느리거나 착륙 후에 자동으로 차량을 디스암하도록 타임아웃 설정 가능 (디스암 시 모터의 전원이 차단되어 프로펠러가 회전하지 않음).

The relevant parameters are shown below:

매개변수 설명 Default
Current
COM_DISARM_LAND 착륙 후 자동 디스암 타임아웃 설정 20.s 20.s
COM_DISARM_PRFLT 이륙이 너무 느린 경우 자동 디스암 타임아웃 설정 10.0s 10.0s
[## Further Information](https://docs.px4.io/main/en/config/safety.html#further-information)

참고링크

https://docs.px4.io/main/en/simulation/hitl.html

https://docs.px4.io/main/en/config/safety.html

https://docs.px4.io/main/en/simulation/failsafes.html

https://docs.px4.io/main/en/config/safety_simulation.html

  • 제가 작성한 1차보고서 & 필기 참고

Clone this wiki locally