Создание и программирование роботов все еще остаются довольно сложными задачами. И если процессы программирования стали проще с принятием ROS (Robot Operating System) — стандартизированной рамочной системы для роботов, то создание робота — все еще серьезная проблема. Отсутствие совместимых систем, модулей многократного использования и опыта, необходимого для разработки основных схем поведения роботов — лишь некоторые из препятствий.
Интеграционный подход
Роботы, как правило, создают по такому алгоритму:
- Покупка запчастей. Решают, какие компоненты понадобятся, получают их и приступают к сборке.
- Интеграция. Объединение компонентов в единую сообщающуюся систему ради какой-то цели. Именно этот этап отнимает бóльшую часть времени.
- Строительство робота. Сборка и механическое соединение всех частей робота. Это может происходить параллельно следующему шагу.
- Программирование робота. На этом этапе необходимо заставить робота делать то, что нужно.
- Тестирование и адаптация. Роботы, как правило, программируются на определенные сценарии. Однако тестирование в реальных условиях имеет решающее значение. Как правило, тесты показывают необходимость доработки и адаптирования робота, что возвращает робототехников ко второму этапу, интеграции.
- Применение.
Понятно, что создание робота — это технически сложная задача. Инженеры часто сталкиваются с неразрешимыми проблемами на этапе интегрирования деталей. Кроме того, каждая модификация и адаптация оборудования при программировании или строительстве робота требует дальнейшей интеграции.
Описанный интеграционный метод построения роботов дает результаты, которые устаревают в течение короткого периода времени. А модули роботов в большинстве случаев не используются повторно, так как повторное использование слишком дорого и трудоемко.
Модульный подход
Существующий интеграционный метод в робототехнике создает большое количество аппаратных устройств. Несмотря на распространение единой операционной системы ROS, эти устройства обычно состоят из несовместимых электронных компонентов с различными программными интерфейсами.
А теперь представьте себе создание роботов посредством объединения совместимых модулей. Представьте, что привод, датчики, модули связи, устройства пользовательского интерфейса, все это легко собирается вместе и работает минуя сложный этап интеграции. Процесс создания роботов с такими модулями будет проще, а усилия и время, потраченные на разработку, будут значительно сокращены. Модульные компоненты могут быть повторно использованы.
Именно над этим работает автор статьи, евангелист ROS Виктор Майораль Вильчес и компания H-ROS.