mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-03 13:38:52 +08:00
257 lines
28 KiB
Markdown
257 lines
28 KiB
Markdown
# Arm, Disarm, Prearm Конфігурація
|
||
|
||
Транспортні засоби можуть мати рухомі частини, деякі з яких можуть бути потенційно небезпечними під час роботи (особливо мотори та пропелери)!
|
||
|
||
Для зменшення ймовірності аварій, PX4 має явні стани для включення компонентів транспортного засобу:
|
||
|
||
- **Вимкнено:** Немає живлення для моторів або приводів.
|
||
- **Передпускний стан:** Мотори/пропелери заблоковані, але приводи для не небезпечної електроніки живлені (наприклад, елерони, закрилки і т. д.).
|
||
- **Озброєно:** Транспортний засіб повністю увімкнено. Двигуни/пропелери можуть обертатися (небезпечно!)
|
||
|
||
:::info
|
||
Наземні станції можуть відображати _вимкнено_ для транспортних засобів у режимі передпуску.
|
||
Хоча це не є технічно правильним для транспортних засобів у режимі передпуску, це "безпечно".
|
||
:::
|
||
|
||
Користувачі можуть керувати переходом між цими станами, використовуючи [захисний перемикач](../getting_started/px4_basic_concepts.md#safety-switch) на транспортному засобі (за бажанням) _та_ перемикач/кнопку [озброєння](#arm_disarm_switch), [жест озброєння](#arm_disarm_gestures) або _команду MAVLink_ на наземному контролері:
|
||
|
||
- _Захисний перемикач_ - це керування _на транспортному засобі_, яке повинно бути увімкнене перед озброєнням транспортного засобу, і яке може також запобігати передпуску (в залежності від конфігурації).
|
||
Зазвичай захисний перемикач інтегровано у блок GPS, але він також може бути окремим фізичним компонентом.
|
||
|
||
Транспортний засіб, який озброєний, потенційно небезпечний.
|
||
Захисний перемикач - це додатковий механізм, який запобігає випадковому озброєнню.
|
||
|
||
:::
|
||
|
||
- Перемикач _озброєння_ - це перемикач або кнопка _на пульті керування RC_, який може бути використаний для озброєння транспортного засобу та запуску моторів (якщо озброєння не заборонене захисним перемикачем).
|
||
|
||
- Жест озброєння - це рух педалей _на пульті керування RC_, який може бути використаний як альтернатива перемикачу озброєння.
|
||
|
||
- Команди MAVLink також можуть бути відправлені наземною станцією управління для озброєння/вимкнення транспортного засобу.
|
||
|
||
PX4 також автоматично вимикає транспортний засіб, якщо він не злітає протягом певного часу після озброєння, і якщо він не вимикається вручну після посадки.
|
||
Це зменшує час, коли на землі знаходиться озброєний (і, отже, небезпечний) транспортний засіб.
|
||
|
||
PX4 дозволяє налаштовувати роботу передпуску, озброєння та вимикання за допомогою параметрів (які можна редагувати в _QGroundControl_ за допомогою [редактора параметрів](../advanced_config/parameters.md)), як описано у наступних розділах.
|
||
|
||
:::tip
|
||
Параметри озброєння/вимикання можна знайти у [Посилання на параметри > Командир](../advanced_config/parameter_reference.md#commander) (шукайте `COM_ARM_*` та `COM_DISARM_*`).
|
||
:::
|
||
|
||
## Arming/Disarming Gestures {#arm_disarm_gestures}
|
||
|
||
За замовчуванням, транспортний засіб озброюється та вимикається шляхом виконання певних рухів педалями газу/рулем в маневрів та утримання їх протягом 1 секунди.
|
||
|
||
- **Озброєння:** Мінімальна педаль газу, максимальний рульовий вектор
|
||
- **Вимикання:** Мінімальна педаль газу, мінімальний рульовий вектор
|
||
|
||
RC controllers will use different sticks for throttle and yaw [based on their mode](../getting_started/rc_transmitter_receiver.md#types-of-remote-controllers), and hence different gestures:
|
||
|
||
- **Режим 2**:
|
||
- _Озброєння:_ Ліва педаль вниз і вправо.
|
||
- _Вимкнення:_ Ліва педаль вниз і вліво.
|
||
- **Режим 1**:
|
||
- _Озброєння:_ Ліва педаль вправо, права педаль вниз.
|
||
- _Вимкнення:_ Ліва педаль вліво, права педаль вниз.
|
||
|
||
Note that by default ([COM_DISARM_MAN](#COM_DISARM_MAN)) you can also disarm in flight using gestures/buttons: you may choose to disable this to avoid accidental disarming.
|
||
|
||
| Параметр | Опис |
|
||
| -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| <a id="MAN_ARM_GESTURE"></a>[MAN_ARM_GESTURE](../advanced_config/parameter_reference.md#MAN_ARM_GESTURE) | Enable arm/disarm stick guesture. `0`: Disabled, `1`: Enabled (default). |
|
||
| <a id="COM_DISARM_MAN"></a>[COM_DISARM_MAN](../advanced_config/parameter_reference.md#COM_DISARM_MAN) | Enable disarming in flight via switch/stick/button in MC manual thrust modes. `0`: Disabled, `1`: Enabled (default). |
|
||
|
||
## Arming Button/Switch {#arm_disarm_switch}
|
||
|
||
Кнопку _озброєння_ або "моментальний перемикач" можна налаштувати для спрацьовування озброєння/вимикання _замість_ [озброєння за допомогою жестів](#arm_disarm_gestures) (встановлення перемикача озброєння вимикає озброєння за допомогою жестів).
|
||
The button should be held down for one second to arm (when disarmed) or disarm (when armed).
|
||
|
||
Двопозиційний перемикач також може використовуватися для озброєння/вимикання, при цьому відповідні команди на озброєння/вимкнення надсилаються при _перемиканні_ перемикача.
|
||
|
||
:::tip
|
||
Двопозиційні перемикачі для озброєння переважно використовуються в/рекомендовані для гоночних дронів.
|
||
:::
|
||
|
||
Перемикач або кнопка призначається (та активується) за допомогою [RC_MAP_ARM_SW](#RC_MAP_ARM_SW), а тип перемикача налаштовується за допомогою [COM_ARM_SWISBTN](#COM_ARM_SWISBTN).
|
||
|
||
| Параметр | Опис |
|
||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| <a id="RC_MAP_ARM_SW"></a>[RC_MAP_ARM_SW](../advanced_config/parameter_reference.md#RC_MAP_ARM_SW) | Канал перемикача озброєння радіокерування (типове значення: 0 - не призначено). Якщо визначено, вказаний канал радіокерування (кнопка/перемикач) використовується для озброєння замість жесту палиці. <br>**Note:**<br>- This setting _disables the stick gesture_!<br>- This setting applies to RC controllers. It does not apply to Joystick controllers that are connected via _QGroundControl_. |
|
||
| <a id="COM_ARM_SWISBTN"></a>[COM_ARM_SWISBTN](../advanced_config/parameter_reference.md#COM_ARM_SWISBTN) | Перемикач озброєння є моментальною кнопкою. <br>- `0`: Arm switch is a 2-position switch where arm/disarm commands are sent on switch transitions.<br>-`1`: Arm switch is a momentary button where the arm/disarm command is sent after holding down the button for one second. |
|
||
|
||
:::info
|
||
Перемикач також можна налаштувати як частину конфігурації _QGroundControl_ для [Режиму польоту](../config/flight_mode.md).
|
||
:::
|
||
|
||
## Автоматичне вимкнення
|
||
|
||
За замовчуванням транспортні засоби автоматично вимикаються при посадці або якщо ви заберете занадто багато часу, щоб злітати після озброєння.
|
||
Ця функція налаштовується за допомогою наступних таймаутів.
|
||
|
||
| Параметр | Опис |
|
||
| ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| <a id="COM_DISARM_LAND"></a>[COM_DISARM_LAND](../advanced_config/parameter_reference.md#COM_DISARM_LAND) | Час очікування для автоматичного відбрасування після приземлення. За замовчуванням: 2с (значення -1, щоб вимкнути). |
|
||
| <a id="COM_DISARM_PRFLT"></a>[COM_DISARM_PRFLT](../advanced_config/parameter_reference.md#COM_DISARM_PRFLT) | Час очікування для автоматичного відбрасування, якщо занадто повільно підйом. За замовчуванням: 10с (<=0, щоб вимкнути). |
|
||
|
||
## Auto-Arming on Boot
|
||
|
||
The vehicle can be configured to arm automatically on boot once all preflight checks pass,
|
||
using the `COM_ARM_ON_BOOT` parameter. For safety, PX4 enforces a minimum 5-second delay after boot before attempting to arm.
|
||
|
||
Once armed this way, the vehicle will not re-arm automatically after a manual disarm.
|
||
|
||
:::info
|
||
The parameter value is read once at boot.
|
||
Changing it while the system is running has no effect until the next reboot.
|
||
:::
|
||
|
||
:::warning
|
||
Use with caution.
|
||
A vehicle that arms automatically can spin up motors and actuators without any operator gesture.
|
||
Ensure the vehicle is in a safe state before powering on.
|
||
:::
|
||
|
||
| Параметр | Опис |
|
||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| <a id="COM_ARM_ON_BOOT"></a>[COM_ARM_ON_BOOT](../advanced_config/parameter_reference.md#COM_ARM_ON_BOOT) | Arm automatically once preflight checks pass after boot. Default: `0` (Disabled). |
|
||
|
||
## Pre-Arm Checks
|
||
|
||
To reduce accidents, vehicles are only allowed to arm certain conditions are met (some of which are configurable).
|
||
Армування заборонено у таких випадках:
|
||
|
||
- Повітряне судно не перебуває у "здоровому" стані.
|
||
Наприклад, воно не калібрується або має помилки датчиків.
|
||
- Транспортний засіб має [захисний перемикач](../getting_started/px4_basic_concepts.md#safety-switch), який не був увімкнений.
|
||
- The vehicle has a [remote ID](../peripherals/remote_id.md) that is unhealthy or otherwise not ready
|
||
- VTOL-повітряне судно перебуває в режимі фіксованого крила ([by default(за замовчуванням)](../advanced_config/parameter_reference.md#CBRK_VTOLARMING)).
|
||
- Поточний режим потребує належної глобальної позиційної оцінки, але повітряне судно не має блокування GPS.
|
||
- Many more (see [arming/disarming safety settings](../config/safety.md#arming-disarming-settings) for more information).
|
||
|
||
The current failed checks can be viewed in QGroundControl (v4.2.0 and later) [Arming Check Report](../flying/pre_flight_checks.md#qgc-arming-check-report) (see also [Fly View > Toolbar > Flight Status](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/fly_view/fly_view_toolbar.html#flight-status)).
|
||
|
||
Зауважте, що внутрішньо PX4 перевіряє активацію на 10 Гц.
|
||
Список невдалих перевірок зберігається, і якщо цей список змінюється, PX4 видає поточний список за допомогою [інтерфейсу подій](../concept/events_interface.md).
|
||
Список також надсилається, коли GCS підключається.
|
||
Пристрій керування (GCS) негайно знає статус передпускових перевірок як при вимкненні, так і при озброєнні.
|
||
|
||
:::details
|
||
Implementation notes for developers
|
||
Примітки для розробників Реалізація клієнта знаходиться у [libevents](https://github.com/mavlink/libevents):
|
||
|
||
- [libevents > Групи подій](https://github.com/mavlink/libevents#event-groups)
|
||
- [health_and_arming_checks.h](https://github.com/mavlink/libevents/blob/main/libs/cpp/parse/health_and_arming_checks.h)
|
||
|
||
QGC реалізація: [HealthAndArmingCheckReport.cc](https://github.com/mavlink/qgroundcontrol/blob/master/src/MAVLink/LibEvents/HealthAndArmingCheckReport.cc).
|
||
:::
|
||
|
||
PX4 також видає підмножину інформації перевірки постановки на охорону в повідомленні [SYS_STATUS](https://mavlink.io/en/messages/common.html#SYS_STATUS) (див. [MAV_SYS_STATUS_SENSOR](https://mavlink.io/en/messages/common.html#MAV_SYS_STATUS_SENSOR)).
|
||
|
||
## Послідовність: Режим попереднього озброєння & Кнопка безпеки
|
||
|
||
Послідовність озброєння залежить від наявності _захисного перемикача_ і контролюється параметрами [COM_PREARM_MODE](#COM_PREARM_MODE) (Режим передпуску) та [CBRK_IO_SAFETY](#CBRK_IO_SAFETY) (Вимикач безпеки введення/виведення).
|
||
|
||
Параметр [COM_PREARM_MODE](#COM_PREARM_MODE) визначає, коли/якщо передпусковий режим увімкнено ("безпечні"/приводи без збільшення газу можуть рухатися):
|
||
|
||
- _Вимкнено_: Режим передпуску відключено (немає етапу, коли тільки "безпечні"/приводи без збільшення газу увімкнені).
|
||
- _Захисний перемикач_ (За замовчуванням): Режим передпуску увімкнено за допомогою захисного перемикача.
|
||
Якщо немає захисного перемикача, то режим передпуску не буде увімкнено.
|
||
- _Завжди_: Режим передармування активований з моменту включення живлення.
|
||
|
||
Якщо є засувка безпеки, то це буде передумовою для армування.
|
||
Якщо немає захисного перемикача, то вимикач безпеки введення/виведення ([CBRK_IO_SAFETY](#CBRK_IO_SAFETY)) повинен бути активований, і озброєння буде залежати лише від команди озброєння.
|
||
|
||
Нижче наведено деталі початкових послідовностей для різних конфігурацій.
|
||
|
||
### Default: COM_PREARM_MODE=Safety та Safety Switch
|
||
|
||
За замовчуванням використовується захисний перемикач для передпуску.
|
||
З режиму передпуску ви можете перейти до режиму озброєння, щоб активувати всі мотори/приводи.
|
||
Це відповідає: [COM_PREARM_MODE=1](#COM_PREARM_MODE) (захисний перемикач) та [CBRK_IO_SAFETY=0](#CBRK_IO_SAFETY) (вимикач безпеки введення/виведення вимкнено).
|
||
|
||
Типова послідовність запуску:
|
||
|
||
1. Увімкнення живлення.
|
||
- Усі приводи заблоковано у беззбройному(вимкненому) положенні
|
||
- Неможливо озброїти(збурити).
|
||
2. Перемикання безпеки натиснуто.
|
||
- Система зараз перевіряється перед збурюванням: актуатори без збурювання можуть рухатися (наприклад, елерони).
|
||
- Безпека системи відключена: можливість озброєння(збурення).
|
||
3. Видається команда на озброєння(збурення).
|
||
- Система озброєна(збурена).
|
||
- Усі мотори та приводи можуть рухатися.
|
||
|
||
### COM_PREARM_MODE=Disabled та Safety Switch
|
||
|
||
Коли режим передпуску встановлено на _Вимкнено_, увімкнення захисного перемикача не розблоковує "безпечні" приводи, але дозволяє озброїти транспортний засіб.
|
||
Це відповідає [COM_PREARM_MODE=0](#COM_PREARM_MODE) (Вимкнено) та [CBRK_IO_SAFETY=0](#CBRK_IO_SAFETY) (Вимикач безпеки введення/виведення вимкнений).
|
||
|
||
Послідовність запуску така:
|
||
|
||
1. Увімкнення живлення.
|
||
- Усі приводи заблоковано у беззбройному(вимкненому) положенні
|
||
- Неможливо озброїти(збурити).
|
||
2. Перемикання безпеки натиснуто.
|
||
- _All actuators stay locked into disarmed position (same as disarmed)._
|
||
- Безпека системи відключена: можливість озброєння(збурення).
|
||
3. Видається команда на озброєння(збурення).
|
||
- Система озброєна(збурена).
|
||
- Усі мотори та приводи можуть рухатися.
|
||
|
||
### COM_PREARM_MODE=Always and Safety Switch
|
||
|
||
Якщо для режиму попереднього озброєння встановлено значення _Always_, режим попереднього озброєння вмикається після ввімкнення.
|
||
Для озброєння все ще потрібний захисний перемикач.
|
||
Це відповідає [COM_PREARM_MODE=2](#COM_PREARM_MODE) (завжди) і [CBRK_IO_SAFETY=0](#CBRK_IO_SAFETY) (захисний автомат вводу-виводу вимкнено).
|
||
|
||
Послідовність запуску така:
|
||
|
||
1. Увімкнення живлення.
|
||
- Система зараз перевіряється перед збурюванням: актуатори без збурювання можуть рухатися (наприклад, елерони).
|
||
- Неможливо озброїти(збурити).
|
||
2. Перемикання безпеки натиснуто.
|
||
- Безпека системи відключена: можливість озброєння(збурення).
|
||
3. Видається команда на озброєння(збурення).
|
||
- Система озброєна(збурена).
|
||
- Усі мотори та приводи можуть рухатися.
|
||
|
||
### COM_PREARM_MODE=Safety(Безпека) або вимкнено(Disabled) та без перемикача безпеки(No Safety Switch)
|
||
|
||
Без захисного перемикача, коли `COM_PREARM_MODE` встановлено на _Захист(Safety)_ або _Вимкнено(Disabled)_, режим передпуску не може бути увімкнений (так само, як і вимкнено).
|
||
Це відповідає [COM_PREARM_MODE=0 або 1](#COM_PREARM_MODE) (вимкнено/запобіжний перемикач) і [CBRK_IO_SAFETY=22027](#CBRK_IO_SAFETY) (ввімкнено захисний вимикач вводу-виводу).
|
||
|
||
Послідовність запуску така:
|
||
|
||
1. Увімкнення живлення.
|
||
- Усі приводи заблоковано у беззбройному(вимкненому) положенні
|
||
- Безпека системи відключена: можливість озброєння(збурення).
|
||
2. Видається команда на озброєння(збурення).
|
||
- Система озброєна(збурена).
|
||
- Усі мотори та приводи можуть рухатися.
|
||
|
||
### COM_PREARM_MODE=Завжди і без зміни безпеки
|
||
|
||
Якщо для режиму попереднього озброєння встановлено значення _Always_, режим попереднього озброєння вмикається після ввімкнення.
|
||
Це відповідає [COM_PREARM_MODE=2](#COM_PREARM_MODE) (Завжди) та [CBRK_IO_SAFETY=22027](#CBRK_IO_SAFETY) (ввімкнено вимикач безпеки введення/виведення).
|
||
|
||
Послідовність запуску така:
|
||
|
||
1. Увімкнення живлення.
|
||
- Система зараз перевіряється перед збурюванням: актуатори без збурювання можуть рухатися (наприклад, елерони).
|
||
- Безпека системи відключена: можливість озброєння(збурення).
|
||
2. Видається команда на озброєння(збурення).
|
||
- Система озброєна(збурена).
|
||
- Усі мотори та приводи можуть рухатися.
|
||
|
||
### Параметри
|
||
|
||
| Параметр | Опис |
|
||
| -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| <a id="COM_PREARM_MODE"></a>[COM_PREARM_MODE](../advanced_config/parameter_reference.md#COM_PREARM_MODE) | Умова для входу в режим передпуску. `0`: Disabled, `1`: Safety switch (prearm mode enabled by safety switch; if no switch present cannot be enabled), `2`: Always (prearm mode enabled from power up). Default: `1` (safety button). |
|
||
| <a id="CBRK_IO_SAFETY"></a>[CBRK_IO_SAFETY](../advanced_config/parameter_reference.md#CBRK_IO_SAFETY) | Вимикач безпеки для введення/виведення (I/O). |
|
||
|
||
<!-- Discussion:
|
||
https://github.com/PX4/PX4-Autopilot/pull/12806#discussion_r318337567
|
||
https://github.com/PX4/PX4-user_guide/issues/567#issue-486653048
|
||
-->
|