Драйвер далекоміра працює, але показів немає
Що пише ArduPilot:
- Rangefinder 0x…: Not Connected
- Rangefinder 0x…: No Data
Драйвер цього далекоміра запустився, але показів відстані не отримує. «No Data» з'являється після 0.2 с тиші від послідовного чи PWM-датчика і 0.5 с — від датчика MAVLink чи DroneCAN. «Not Connected» — це стан до найпершого показу або аналоговий датчик, пін якого не вдається прочитати. Відстань поза діапазоном датчика армуванню не заважає: стояти на землі, ближче за мінімум датчика, — нормально.
Що робити: найімовірніше спершу
Датчик без живлення: від самого USB більшість плат не живить лінію 5 В, на якій сидить лідар.
ПеревіртеПід'єднайте батарею (пропелери зняті): повідомлення має зникнути за секунду.
ВиправтеПеревіряйте з під'єднаною батареєю. Якщо датчику потрібен більший струм, ніж дає контакт 5 В плати, живіть його від окремого стабілізатора 5 В (BEC).
TX і RX переплутано, або датчик під'єднано не до того UART, який налаштовано на протокол далекоміра.
ПеревіртеTX датчика йде на RX польотного контролера. Порт із
SERIALn_PROTOCOL9 має бути тим, до якого ідуть дроти; «Планувальник плати й підключення» покаже, який контакт — який UART.ВиправтеВиправте підключення або перенесіть 9 на порт, до якого датчик справді під'єднано, і перезавантажте.
Швидкість порту або тип датчика не відповідають датчику.
Перевірте
SERIALn_BAUDмає відповідати швидкості датчика (115 означає 115200).RNGFNDn_TYPEмає бути точно тим сімейством: TFmini чи TF-Luna на UART — це 20, а не 19 (TF02) чи 27 (TF03).ВиправтеЗадайте обидва значення відповідно до свого датчика й перезавантажте.
Далекомір MAVLink чи DroneCAN (бортовий комп'ютер, вузол CAN) перестав надсилати дані.
ПеревіртеДля
RNGFNDn_TYPE10 інспектор MAVLink у наземній станції має показувати повідомленняDISTANCE_SENSORкілька разів на секунду. Датчик DroneCAN під час завантаження заявляє про себе рядком «RangeFinder[0]: added DroneCAN node».ВиправтеЗапустіть джерело даних знову або полагодьте його канал зв'язку до польоту.
Якщо далекоміра немає, правильне налаштування — RNGFNDn_TYPE 0. Далекомір, що відпадає на столі, відпаде й у повітрі, де Copter бере з нього висоту для стеження за поверхнею та посадки.
Параметри, на які варто глянути
| Параметр | Що це |
|---|---|
RNGFND1_TYPE | Rangefinder type |
RNGFND2_TYPE | Rangefinder type |
SERIAL1_BAUD | Telem1 Baud Rate |
SERIAL2_BAUD | Telemetry 2 Baud Rate |
SERIAL1_PROTOCOL | Telem1 protocol selection |
SERIAL2_PROTOCOL | Telemetry 2 protocol selection |
SERIAL3_PROTOCOL | Serial 3 (GPS) protocol selection |
SERIAL4_PROTOCOL | Serial4 protocol selection |
Де це зробити:Планувальник плати й підключення
Код, який це надсилає
Rangefinder 0x…: Not Connected
libraries/AP_RangeFinder/AP_RangeFinder.cpp RangeFinder::prearm_healthy() · Відкрити в ArduPilot Copter-4.7.1
Rangefinder 0x…: No Data
libraries/AP_RangeFinder/AP_RangeFinder.cpp RangeFinder::prearm_healthy() · Відкрити в ArduPilot Copter-4.7.1