← Усі інструменти

Пояснення повідомлень і помилок

Що означає повідомлення ArduPilot і що з ним робити

English

Код логування знайшов безлад у власному обліку

ПопередженняЛогування й пам'ять

Що пише ArduPilot:

Тут пояснено ще: 3
  • Internal errors 0x80 (logger_bad_current_block)
  • Internal errors 0x100 (logger_blockcount_mismatch)
  • Internal errors 0x200 (logger_dequeue_failure)

Це самоперевірки логера; польотного коду вони не зачіпають, але лог може бути неповним. mapfailure: повідомленню логу не вдалося дати номер, бо використовується забагато різних повідомлень або одне ім'я вжито з двома форматами. miss_struct і write_mssfmt: записано повідомлення, формат якого ніколи не оголошували. many_deletes і bad_getfile: очищення старих логів заради місця на картці пішло не так. bad_curr_blk, blkcnt_bad і dq_failure стосуються логування через MAVLink. flush_no_sem існує лише в симуляторі.

Що робити: найімовірніше спершу

  1. Lua-скрипт пише власні повідомлення логу під надто багатьма іменами або змінює поля повідомлення між викликами.

    ПеревіртеБез скриптів помилка зникає.

    ВиправтеВиправте скрипт: одне ім'я — один незмінний набір полів.

  2. many_deletes: на картці порушена послідовність файлів логів, яку не вдається розчистити.

    ПеревіртеПодивіться APM/LOGS на комп'ютері: пропущені номери, файли нульового розміру, файлів більше, ніж LOG_MAX_FILES.

    ВиправтеСкопіюйте потрібне й відформатуйте картку.

  3. Ті, що про MAVLink: програма, яка приймає потік логу, розійшлася з польотним контролером.

    ВиправтеПерезапустіть програму-приймач; для щоденного використання пишіть лог на картку чи у флеш-пам'ять (LOG_BACKEND_TYPE 1 або 4).

Параметри, на які варто глянути

ПараметрЩо це
LOG_BACKEND_TYPEAP_Logger Backend Storage type
LOG_MAX_FILESMaximum number of log files
LOG_FILE_MB_FREEOld logs on the SD card will be deleted to maintain this amount of free space

Тут написано для: Коптер, 4.6. В інструменті можна вибрати свій апарат і версію, побачити значення власних параметрів поруч із названими тут і перетягнути лог польоту, щоб отримати пояснення до кожного повідомлення в ньому.

Відкрити в інструменті