Skip to content

Уникнення перешкод (Мультикоптер)

Уникання перешкод Obstacle Avoidance дозволяє транспортному засобу уникнути перешкод під час слідування передзапланованим шляхом.

Ця функція передбачає наявність компаньйонного комп'ютера, на якому працює програмне забезпечення комп'ютерного зору. Це програмне забезпечення забезпечує маршрут для заданої бажаної траєкторії, картографує та орієнтується навколо перешкод для досягнення найкращого шляху.

Уникання перешкод призначене для автоматичних режимів і в даний момент підтримується для багатокоптерних транспортних засобів у режимах Місії Missions та Offboard mode.

У цій темі пояснюється, як налаштувати та активувати цю функцію в обох режимах.

Обмеження/Можливості

  • Максимальна швидкість для уникання перешкод наразі становить приблизно 3 м/с (через витрати обчислення шляху уникнення).

    Уникнення перешкод може використовувати локальний планувальник (видає повідомлення приблизно з частотою ~30Гц і може рухатися зі швидкістю близько 3 м/с) або глобальний планувальник (видає повідомлення приблизно з частотою ~10Гц і швидкість місії з уникненням перешкод становить близько 1-1,5 м/с).

:::

Уникнення у режимі Оффборд

PX4 підтримує уникнення перешкод у режимі Оффборд.

Бажаний маршрут надходить від вузла ROS, який працює на компаньйонному комп'ютері. Це передається до модуля уникнення перешкод (іншого вузла ROS). Програмне забезпечення для уникнення надсилає запланований шлях до стека польотів як потік повідомлень SET_POSITION_TARGET_LOCAL_NED.

Єдине необхідне налаштування PX4 - перевести PX4 у режим Оффборд Offboard mode.

На компаньйонному комп'ютері надається налаштування обладнання та конфігурація обладнання/програмного забезпечення у репозиторії PX4/PX4-Avoidance Github.

Уникнення в режимі Місії

PX4 підтримує уникнення перешкод у режимі Місії Mission mode, використовуючи програмне забезпечення уникнення, яке працює на окремому компаньйонному комп'ютері.

Прогрес Місії

Поведінка місії з активованим уникненням перешкод відрізняється трохи від оригінального плану.

Відмінності при активному уникненні полягають у наступному:

  • Точка місії вважається "досягнутою", коли транспортний засіб перебуває у межах радіуса прийняття, незалежно від свого напрямку.
    • Це відрізняється від звичайних місій, у яких транспортний засіб повинен досягти точки місії з певним напрямком (тобто в "близькому до" прямому напрямку від попередньої точки місії). Ця умова не може бути виконана, коли активоване уникнення перешкод, оскільки алгоритм уникнення перешкод має повний контроль над напрямком транспортного засобу, і транспортний засіб завжди рухається в поточному полі зору.
  • PX4 починає видачу нової поточної/наступної точки місії, як тільки попередня точка місії досягнута (тобто в той момент, коли транспортний засіб входить у радіус прийняття).
  • Якщо точка місії перебуває всередині перешкоди, вона може бути недосяжною (і місія буде заблокована).
    • Якщо проекція транспортного засобу на лінію попередньої-поточної точки місії проходить поточну точку місії, радіус прийняття збільшується таким чином, що поточна точка місії вважається досягнутою
    • Якщо транспортний засіб знаходиться в межах радіуса прийняття по x-і y-осі, прийняття по висоті модифікується таким чином, щоб місія продовжувалася (навіть якщо вона не знаходиться в радіусі прийняття по висоті).
  • Оригінальна швидкість місії (як встановлено в QGroundControl/PX4) ігнорується. Швидкість буде визначатися програмним забезпеченням уникнення:
    • швидкість місії для локального планера становить приблизно 3 м/с.
    • швидкість місії для глобального планера становить приблизно 1-1,5 м/с.

Якщо PX4 перестане отримувати оновлення заданих значень більше ніж на півсекунди, він перейде в режим утримання.

Налаштування PX4

Уникнення перешкод активується в PX4 шляхом встановлення значення COM_OBS_AVOID на 1.

Note that PX4 also requires that the companion computer meets the requirements of the Path Planning Interface. For example, the vehicle will fail the prearm check Avoidance system not ready if the companion computer isn't broadcasting a MAVLink HEARTBEAT with HEARTBEAT.system_status=MAV_STATE_ACTIVE.

COM_OBS_AVOID також активує Безпечне Посадку та будь-які інші функції, що використовують Інтерфейс Відсутності Планування Шляху PX4 Offboard (Інтерфейс Траєкторії), щоб інтегрувати зовнішні служби планування шляху з PX4.

Налаштування Компаньйонного Комп'ютера

Налаштування апаратної частини на стороні компаньйонного комп'ютера та конфігурація апаратної та програмної частин надається у репозиторії PX4/PX4-Avoidance на Github.

Уникнення перешкод у місіях може використовувати як локальний, так і глобальний планер (локальний планер рекомендований/має кращу продуктивність).

Інтерфейс Уникнення Перешкод

PX4 використовує Інтерфейс Відсутності Планування Шляху для інтеграції служб планування шляху з компаньйонним комп'ютером (включаючи Уникнення Перешкод у місіях, Безпечну Посадку та майбутні сервіси).

Інтерфейс (відправлені повідомлення) між PX4 та компаньйоном точно такий самий, як і для будь-яких інших служб планування шляху.

Підтримуване Обладнання

Перевірені компаньйонні комп'ютери та камери перераховані в PX4/PX4-Avoidance.