Пилот OTA для ROS 2 на Raspberry Pi: контейнеры из GitHub, health check и автооткат
Экономика и решения
Инженер собрал на Raspberry Pi пилотный механизм OTA-обновлений для ROS 2-роботов: устройство забирает новые образы контейнеров из GitHub releases, проверяет работоспособность и само откатывается, если релиз сломан. Готового решения именно под OTA в экосистеме ROS 2 он не нашёл.
• Автор заявляет, что не нашёл ничего, что было бы сделано специально для OTA-обновлений в экосистеме ROS 2, и собрал собственный проект, придя из веб-разработки.
• Механизм пилота: устройство вытягивает новые образы контейнеров из GitHub releases, прогоняет health check и автоматически откатывается при сломанном релизе.
• Доставки контейнеров оказалось недостаточно: собственный updater не мог обновить сам себя.
• A/B-обновления, по оценке автора, решают проблему самообновления, но у каждого подхода есть компромиссы.
• Автор просит откликнуться тех, кто эксплуатирует роботов в производстве: что выбрали и почему, и остаются ли проблемы с Mender, balena и другими инструментами.
Технические детали
OTA (over-the-air) — доставка обновлений ПО на устройство по сети. A/B-схема держит две копии системы и переключается между ними, чтобы откат не требовал переустановки.
Источники: ROS Discourse
Просмотры: 4