Найти в Дзене

Мнимая “неисправность MPU9250” в роботе STUDICA

Довелось мне, в своем университете, вести занятия для студентов колледжа по управлению роботами STUDICA (https://www.studica.ca/en/worldskills-mobile-robotics-collection-shanghai-2022). Наша версия “WorldSkills Shanghai Collection 2022 - Insert - July 5-22”. Мы использовали для управления язык LabView2020, с пакетами, как рекомендует производитель в документации https://docs.wsr.studica.com/en/latest/. В нашем распоряжении 5 роботов, нумерация каждого от “1111” до “5555” или от “первого” до “пятого”. Роботы активно эксплуатируются в течении года на занятиях и практиках, плюс в июне очень интенсивно на демо экзамене в колледже. Итак, на занятии, робот с номером 4444 при движении вперед остановился и перестал реагировать на команды, чаще всего помогает перезагрузка робота путем выключения питания. Однако, это не помогло. Робот престал даже определяться по сети Wi-Fi и производить обмен информацией по шине CAN от VMX-pi к TITAN. Стало ясно, что робот STUDICA производства канадской фирмы

Довелось мне, в своем университете, вести занятия для студентов колледжа по управлению роботами STUDICA (https://www.studica.ca/en/worldskills-mobile-robotics-collection-shanghai-2022).

Наша версия “WorldSkills Shanghai Collection 2022 - Insert - July 5-22”.

Мы использовали для управления язык LabView2020, с пакетами, как рекомендует производитель в документации https://docs.wsr.studica.com/en/latest/.

В нашем распоряжении 5 роботов, нумерация каждого от “1111” до “5555” или от “первого” до “пятого”.

Роботы активно эксплуатируются в течении года на занятиях и практиках, плюс в июне очень интенсивно на демо экзамене в колледже.

Итак, на занятии, робот с номером 4444 при движении вперед остановился и перестал реагировать на команды, чаще всего помогает перезагрузка робота путем выключения питания. Однако, это не помогло. Робот престал даже определяться по сети Wi-Fi и производить обмен информацией по шине CAN от VMX-pi к TITAN.

Стало ясно, что робот STUDICA производства канадской фирмы, позиционируемый как высоконадежный, вышел из строя, сломался.

Сначала, мы сделали запрос на форум поддержки STUDICA в канаде, но ответа не пришло до сих пор, похоже из-за санкций.

Пришлось самим в интернете искать документацию, описания, изучать схему и плату VMX-pi, смотреть работу индикаторов.

Первая попытка – перепрошить VMX-pi предлагаемыми производителем средствами – dfu метод, но он не помог.

Значит, решили, что ошибка аппаратная и надо искать, что вышло из строя.

Неисправность проявляла себя индикацией на VMX-pi (рисунок 1) – светодиод LED1 (обведен желтым эллипсом) – мигает оранжевым цветом и не гаснет, индицируя бесконечные запросы на калибровку IMU MPU9250 (в нормальном режиме, не позже чем через минуту, при неподвижном роботе, этот светодиод должен погаснуть, индицируя успешность калибровки IMU MPU9250), зеленые светодиоды S1 и S2 погашены (обведены красным эллипсом), один отвечает за наличие прерываний от IMU MPU9250, второй за наличие обмена по шине I2C, в нормальном состоянии работы эти светодиоды должны светиться непрерывно или чуть заметно мигать.

Рисунок 1 – Вид сверху VMX-pi (из документации)
Рисунок 1 – Вид сверху VMX-pi (из документации)

Изучив плату и документацию выяснили, что эти индикаторы указывают на выход из строя высоконадежного элемента IMU MPU9250.

Остальные индикаторы на VMX-pi работают, как в штатном режиме.

Было принято решение заменить неисправный IMU MPU9250 на новый, из упаковки.

После установки нового IMU MPU9250 и включения питания неисправность сохранилась.

Тогда было принято решение “прошить” микроконтроллер (МК) STM32F411VET6, находящийся на плате VMX-pi не через dfu, а при помощи стандартных средств программирования, рекомендуемых фирмой ST – программатор ST-LINK V2 и программы STVP, благо, на плате производитель предусмотрительно сделал 4 площадки, рядом с МК, под внутрисхемное программирование. Подключились программатором и попробовали считать “неисправную” прошивку с робота 4444, повезло, производитель не поставил защиту от чтения, прошивку сохранили в *.hex файл. Откуда брать новую прошивку? Скопировали с другого рабочего робота 2222.

После заливки “новой” прошивки в “неисправный” VMX-pi робота 4444 робот стал работать как требуется, была выполнена калибровка нового магнитометра, согласно инструкции производителя, таблицы калибровки сохранены в память на борту VMX-pi.

Был сделан вывод, что не только вышел из строя IMU MPU9250, но и прошивка вышла из строя. Хотя, фирма ST (www.st.com) позиционирует свои микроконтроллеры как высоконадежные устройства, в которых для изменения прошивки необходимо выполнить определенную последовательность действий, не возможную случайно, плюс многоуровневая защита от электромагнитных помех.

Робот 4444 работает успешно после ремонта, с февраля 2025г., “пережил” демо-экзамен в июне 2025г. и ежедневные практики с сентября 2025г.

Однако, месяц назад, при проведении очередной практики и работе с роботом 3333 он выходит из строя с симптомами, аналогичными описанным выше.

Было принято решение менять IMU MPU9250 и после этого прошивку. Заказали на маркетплейсе IMU MPU9250 и ждали его доставки.

Однако, возникло желание проверить и “прошить” МК STM32F411VET6 робота 3333 “исправной” прошивкой, использованной для ремонта робота 4444.

Результат был неожиданным, робот стал работать исправно, как и раньше.

Тогда был проведен анализ текстов исправной и неисправной прошивок, результаты анализа показали изменения прошивки в двух местах - рисунок 2, рисунок 3.

Рисунок 2 – Сравнение прошивки, место 1 – слева исправная, справа неисправная
Рисунок 2 – Сравнение прошивки, место 1 – слева исправная, справа неисправная
Рисунок 3 – Сравнение прошивки, место 2 – слева исправная, справа неисправная
Рисунок 3 – Сравнение прошивки, место 2 – слева исправная, справа неисправная

Исходя из предыдущего опыта, возникли рекомендации для тех, у кого такой робот – при покупке, сразу сохранить прошивку МК STM32F411VET6, как описано выше, в файл и сохранить на надежном диске, чтобы при возникновении “мнимой” неисправности IMU MPU9250 восстановить прошивку.

Мы ждем, проявится ли эта мнимая неисправность IMU MPU9250 на оставшихся роботах.

31.12.2025г. 13.49