Какую проблему необходимо было решить?
В системе наблюдались некорректные данные receive-PDO CANopen, что приводило к возникновению более широкого спектра проблем в работе судна. В связи с этим возникла критическая необходимость выполнить запись трафика CAN-шины для выявления первопричины неисправности.
Речь идёт о системе автоматизации и навигации морского судна. Наша система отвечала за управление клапанами, датчиками, системой аварийной остановки и другими функциями, связанными с двигательной установкой. Мы получали входные данные от множества различных подсистем и предоставляли централизованный интерфейс для управления оборудованием.
Каким образом была решена задача?
Для сбора необработанных данных CANopen был использован регистратор Саёратех логгер с SD-картой. Устройство было установлено и оставлено в системе до момента повторного возникновения ошибки. После этого данные были извлечены с SD-карты регистратора и проанализированы с использованием специального ПО для анализа данных.
В рамках анализа была создана CAN-база данных (файл DBC) для декодирования сообщений в физические значения. Для этого файл EDS CANopen (Electronic Data Sheet) был преобразован в формат DBC с помощью автоматизированного процесса.
Дополнительно был выполнен анализ необработанных кадров CANopen. По результатам анализа было установлено, что источником некорректных данных являлась не наша система, а сторонняя подсистема, формировавшая PDO-сообщения с ошибочной полезной нагрузкой — данные одного кадра переполняли следующий кадр. Данный вывод удалось сделать только благодаря детальному логированию трафика CAN-шины.
Какой результат это дало?
Использование Саёратех логгера позволило нам оперативно локализовать источник проблемы, что позволило сэкономить несколько дней диагностических работ.