Диагностика проблем с помощью журналов

Эта страница призвана показать вам , как диагностировать топ-5 наиболее распространненых проблем, влияющих на конфигурация APM:Copter в частности, но в некой стемени на конфигурацию APM:Plane и APM:Rover так же. Если вы еще не знакомы с основами журналов телеметрии и журналов APM то рекомендуется ознакомиться с этими страницами, что бы понять где хранятся эти данные и как можно скачать и посмотреть эту информацию.


Механические повреждения

Общие механические повреждения включают повреждения моторов или регуляторов скорости ESC (включая сбой синхронизации ESC) скольшение пропеллеров (проворачивание пропеллеров в следствии плохой затяжки) и тому подобное. Они появляются в журнале как внезапное расхождение в нужном угле тангажа или крена против фактического угла аппарата (по крену и тангажу / Roll and Pitch). Эти расхождения наиболее ярко видны в журнале из бортовой памяи полетного контроллера APM путем построения графика ATT сообщений: Roll-In против Roll и Pitch-In против Pitch и в меньшей степени NavYaw против Yaw

ardupilot damage

В приведеном выше примере фактическая Roll внимательно следует за нужным Roll-in для первой половины журнала, но потом расходиться. Полетный контроллер apm хотел удерживать Roll на уровне (нулевой roll) но это было невозможно, скорее всего это означает механическое повреждение. Это очень сильно отличается от программного сбоя в котором полетный контроллер ardupilot качался по Roll и по какой-то причине вдруг упал строго вниз , потому что в таких случаях желаемый Roll будет так же сумащедшим как и текущий Roll и будет следовать за ним на графике.

Дополнительные замечания:


Вибрации

Сильная вибрация у конфигурации ArduCopter вызывают у акселерометра, базирующемуся на высоте и горизонтальной позиции , заставляют дрейфовать далеко от реальности, что приводит к проблемам с удержанием высоты (обычно летит в небо) или режиме Loiter (дрейфует)

Вибрации лучше изучаь путем построение графиков из IMU сообщений с бортовой памяти APM по значениям AccX, AccY and AccZ. Значения AccX, AccY (в первую очередь используются для горизонтального управления положением) должны быть между -3 и 3 м/с/с. Значения акселерометра изменятся моментально, когда квадрокоптер движеся вверх или вниз, поэтому лучше достать данные порциями, когда полет квадрокоптера был стационарным, хотя даже в движении можно увидеть уровень вибрации сравнивая разницу между верхней и нижней частью "травы". иногда график прямолинеен, но когда "травинки" скачут, то скорее всего это проблема вибрации.

Ниже на графике указаны допустимые уровни вибрации.

ardupilot vibration вибрация

Журналы TLOG RAW_IMU xacc, yacc and zacc можно использоватль, но их обновление происходит значительно медленее (как правило менее 10Гц) чем журнал из полетного контроллера ardupilot (50Гц) из-за этого становиться труднее понять являются ли изменения в акселерометре квадрокоптера перемещением или вибрацией

Если вы используете tlog шкалу в milli-gs то приемлемый диапазон для xacc и yacc от -300 до +300 и для zacc от -500 до -1500. Обратите внимание, что на рисунке значения ниже этого диапазона указывают на проблему вибрации , хотя этот пилот не жаловался на режимы AltHold и Loiter - это более вероятно , что квадрокоптер был не в стабильном наведении и частота обновления была низкой.

ardupilot вибрация телеметрические логи TLOG

Вмешательства в работу компаса

Помехи от распределительной платы PDB, двигаелей, батареи , регуляторов моторов и других электрических устройств рядом с APM могут скинуть направление по компасу, который может привести к кругу ( известно как "туалетный боулинг")

Помехи от распределительной платы, двигателей, батареи, регуляторов скорости ESC и других электрических устройств квадрокоптера рядом с полетным контроллером ArduPilot Mega могут влиять на головное направление компаса, который может привести к "круговым полетам" ( так называемы туалетное смытие) или даже полет в неправильном направлении. Графическое значение mag_field в TLOG (находиться пот "CUSTOM") и дроссель (находиться под VFR_HUD) является самым простым способом, что бы увидеть количество помех. В графе ниже показано приемлимое количество помех. Вы можете увидеть как колеблится mag_field когда дросель газа поднят, но только движение вокруг на 10-20%. Ниже 30% движение является приемлемым. В диапазоне 30-60% находится серая зона, где он может быть в порядке (у некоторых пилотов) и очень плохом диапазоне магнитных помех будет отображаться скачками более 60%, когда дроссель поднят.

ardupilot компас compass

Примечания:



GPS глюки

Находясь в режимах автопилота (Loiter, RTL, AUTO) ошибки позиционирования от GPS могут привести ArduCopter к неправильному местоположению и спровоцировать к агресивному полету исправления позиции. Эти "глюки" появляюстся в обоих журналах : TLOG и журнале полетного контроллера ardupilot mega apm как уменьшение числа видимых спутников и увеличение HDOP.

Если с помощью графика TLOGs вы можете сделать это путем построения графика группы "GPS_RAW_IT" значений "eph" и "satellites_visible". Значения HDOP 1,5 (отображаются на экране 150) или ниже - это очень хорошо. Выше 2,0 (т.е. 200) указывает на плохое значение позиции. Количество спутников, ниже 9 так же плохо. Существенное изменение этих двух значений часто сопровождает изменение позиции GPS.

ardupilot arducopter gps glitch tlog

В журнале полетного контроллера ardupilot mega apm сообщений GPS вы найдёте HDOP и столбцы NSats. Примечание! Значения HDOP находятся в правельных единицах измерения в журнале полетного контроллера (т.е. не 100 с лишним , как в tlogs).

arducopter dataflash logs hdop gps glitch nsats

В прошивке ArduCopter 3.1 и выже присуствует алгоритм обнаружения "GPS глюков" для их игнорирования.

Проблемы системы питания (Угасание и прочие)

Внедрение модуля питания стало гораздо проще для людей, что бы обеспечить надежное энергоснабжение квадрокоптера на полетном контроллере APM. Это привело к массовому сокращению числа "пониженного" питания, но они все еще имеют место быть. Как правило они могут присуствовать в журналах и внезапно заканчиваться, когда квадрокоптер все еще находиться в воздухе (например барометр или инерциальная навигация высоты по прежнему сообщает о высоте выше нуля).

Используйте графики: ardupilot power problem baro alt vcc

Изменения в напряжении на борту полетного контроллера может быть признаком проблемы питания. Нормальные изменения в пределах от 0.10 до 0.15 вольт. Большие изменения могут быть признаком того, что другие устройства питающиеся на общей фазе APM вызывают "рябь" в блоке питания, что может привезти к "понижению" питания или другому странному поведению. Бортовое напряжение платы полетного контроллера можно отобразить на графиках:

На изображение ниже показано просадка по напряжению на полетном контроллере на 0.15 вольт, когда подается дроссельный газ. Как правило это не очень хорошая вещь, но из-за того, что это только 0.15 вольт это наверное еще хорошо. Второй график ниже (из журнала полетного контроллера другого пилота) показывает более сильное изменение напряжение, но и как характерно пределах 0.15 вольт.

arducopter power problem vcc vs trottle


Неожиданные ошибки включая failsafes (защита отказа)

Когда происходит неожиданное поведение у полетного контроллера (особенно, когда пилот жалуется, что квадрокоптер не ответил на команды с радиоаппаратуры) это часто является одной из причины срабатывания failsafe (защита отказа). Есть 5 защит от отказов, которые могут быть активированны: защита газа, gps защита, защита наземной станции, защита отказа батареи и "виртуальный забор".

Самый простой способ найти срабатывание защиты посмотреть журнал полетного контроллера фильтруя по сообщениям ERR первый столбец.

arducopter failsafe log dataflash error filter

В Subsys (подсистеме) есть область, которая генерирует вызвающую ошибку и ECODE (известная как "код ошибки") - это говорит нам, что ошибка была специальная. Ограниченное количество подсистем и кодов ошибок можно найти в исходных кодах конфигурации ArduCopter файла defines.h.

Sub Systems / Error Codes