Висоти рельєфу для цього польоту ще не всі надійшли
Що пише ArduPilot:
- waiting for terrain data
Політ потребує бази рельєфу: висот землі на сітці (TERRAIN_SPACING, типово 100 м), які зберігаються на SD-карті й отримуються через наземну станцію. Коптеру вона потрібна, коли місія має точки маршруту з висотами над рельєфом або коли RTL_ALT_TYPE дорівнює 1, якщо цю роботу не виконує далекомір, спрямований униз. Армування чекає, доки висота землі стане відомою під апаратом, удома й у кожній точці маршруту місії та точці збору, і жоден блок даних не лишатиметься в запиті.
Що робити: найімовірніше спершу
Наземна станція ще не надіслала всі дані: зв'язок повільний, або в неї немає інтернету, щоб отримати висоти.
ПеревіртеСтан рельєфу в наземній станції (він приходить у повідомленні
TERRAIN_REPORT) рахує блоки в очікуванні й завантажені блоки. Кількість в очікуванні має дійти до 0.ВиправтеТримайте наземну станцію під'єднаною, з інтернетом, доки в очікуванні не лишиться нічого; через повільну телеметрію це триває хвилини. Якщо завантажити місію вдома через USB, SD-карта наповниться заздалегідь.
Біт 0 у
TERRAIN_OPTIONSзабороняє просити дані в наземної станції, а на SD-карті цієї місцевості немає.ВиправтеЗніміть біт 0 у
TERRAIN_OPTIONSабо заздалегідь скопіюйте файли рельєфу цієї місцевості в теку APM/TERRAIN на карті.Позиції ще немає, тому ArduPilot не знає, які висоти просити.
ВиправтеДочекайтеся фікса GPS; запит даних починається лише тоді.
SD-карти немає, або вона заповнена: блоки, що надходять, не вдається зберегти, і вони й далі рахуються як невиконані.
ПеревіртеЛоги на карту теж не записуються.
ВиправтеВставте справну карту з вільним місцем і запустіть знову.
Дані покривають те, що було запитано: додайте точку маршруту далі — і чекання почнеться знову для нової місцевості.
Параметри, на які варто глянути
| Параметр | Що це |
|---|---|
TERRAIN_ENABLE | Terrain data enable |
TERRAIN_OPTIONS | Terrain options |
TERRAIN_SPACING | Terrain grid spacing |
RTL_ALT_TYPE | RTL mode altitude type |
WPNAV_RFND_USE | Waypoint missions use rangefinder for terrain following |
Де це зробити:Пояснення фейлсейфівПеревірка енергії місії
Код, який це надсилає
waiting for terrain data
libraries/AP_Terrain/AP_Terrain.cpp AP_Terrain::pre_arm_checks() · Відкрити в ArduPilot Copter-4.7.1