Промежуточное программное обеспечение для робототехники
в этой статье Использование внешних ссылок может не соответствовать политике и рекомендациям Википедии . ( Май 2018 г. ) |
Промежуточное программное обеспечение для робототехники — это промежуточное программное обеспечение , которое будет использоваться в сложных роботами программных системах управления .
- « ...промежуточное программное обеспечение роботов предназначено для управления сложностью и неоднородностью аппаратного обеспечения и приложений, содействия интеграции новых технологий, упрощения разработки программного обеспечения, скрытия сложности низкоуровневой связи и неоднородности датчиков, улучшения качества программного обеспечения. , повторно использовать инфраструктуру роботизированного программного обеспечения в ходе многочисленных исследований и снизить производственные затраты » . [1]
Его можно охарактеризовать как «программный клей», который помогает разработчикам роботов сосредоточиться на конкретной проблемной области. [2]
Проекты промежуточного программного обеспечения для робототехники
[ редактировать ]Существует множество проектов промежуточного программного обеспечения для робототехники, но ни один из них не является доминирующим - и фактически многие робототехнические системы не используют никакого промежуточного программного обеспечения. [3] Продукты промежуточного программного обеспечения основаны на широком спектре различных стандартов, технологий и подходов, которые затрудняют их использование и взаимодействие, и некоторые разработчики могут предпочесть интегрировать свою систему самостоятельно. [3]
Проект игрока
[ редактировать ]Player Project (ранее Player/Stage Project ) — это проект по созданию бесплатного программного обеспечения для исследований в области робототехники и сенсорных систем. [4] В его состав входят сетевой сервер Player и симуляторы платформы роботов Stage . Хотя точную статистику получить сложно, Player является одним из самых популярных интерфейсов для роботов с открытым исходным кодом в исследованиях и высшем образовании. [5] Большинство крупных журналов и конференций по интеллектуальной робототехнике регулярно публикуют статьи, в которых представлены реальные и смоделированные эксперименты с роботами с использованием Player и Stage.
RT-промежуточное программное обеспечение
[ редактировать ]RT-промежуточное программное обеспечение — это общий стандарт платформы для роботов, основанный на технологии распределенных объектов. [6] RT-промежуточное программное обеспечение поддерживает создание различных сетевых роботизированных систем путем интеграции различных сетевых роботизированных элементов, называемых RT-компонентами . Стандарт спецификации RT-компонентов обсуждается и определяется Группой управления объектами (OMG). [7]
Город
[ редактировать ]Urbi — это кроссплатформенная программная платформа с открытым исходным кодом на C++, используемая для разработки приложений для робототехники и сложных систем. Он основан на архитектуре распределенных компонентов C++ UObject. Он также включает язык оркестровки urbiscript, который является параллельным и управляемым событиями языком сценариев. Компоненты UObject могут быть подключены к urbiscript и отображаться как собственные объекты, которые можно запрограммировать для указания их взаимодействия и обмена данными. UObjects могут быть связаны с интерпретатором urbiscript или выполняться как автономные процессы в «удаленном» режиме, либо в другом потоке, другом процессе, на машине в локальной сети, либо на машине в удаленной сети.
ФРУКТЫ
[ редактировать ]Miro — это распределенная объектно-ориентированная среда для управления мобильными роботами, основанная на CORBA технологии (Common Object Request Broker Architecture). Основные компоненты Miro были разработаны с помощью ACE (Adaptive Communications Environment), объектно-ориентированной многоплатформенной среды для независимого от ОС межпроцессного, сетевого взаимодействия и взаимодействия в реальном времени. В качестве ORB (брокера объектных запросов) они используют TAO (ACE ORB), реализацию CORBA, предназначенную для высокопроизводительных приложений реального времени. В настоящее время поддерживаются платформы Pioneers , B21, некоторые роботы-футболисты и различные роботизированные датчики. [8]
Орка
[ редактировать ]Orca описывает свои цели так:
- обеспечить возможность повторного использования программного обеспечения путем определения набора часто используемых интерфейсов;
- упростить повторное использование программного обеспечения, предоставив библиотекам удобный API высокого уровня; и
- поощрять повторное использование программного обеспечения путем поддержания репозитория компонентов.
Они также заявляют: «Мы считаем, что для достижения успеха структура, преследующая такие цели, должна быть: общей, гибкой и расширяемой; достаточно надежной, высокопроизводительной и полнофункциональной для использования в коммерческих приложениях, но в то же время достаточно простой для экспериментов в университетских исследованиях». среды». [9]
Они описывают свой подход так:
- использует компонентно-ориентированный подход к разработке программного обеспечения без применения каких-либо дополнительных архитектурных ограничений.
- использует коммерческую библиотеку с открытым исходным кодом для связи и определения интерфейса
- предоставляет инструменты для упрощения разработки компонентов, но делает их строго необязательными для обеспечения полного доступа к базовому коммуникационному механизму и сервисам.
- использует кроссплатформенные инструменты разработки [9]
Программное обеспечение Orca распространяется по лицензиям LGPL и GPL.
ОпенРДК
[ редактировать ]OpenRDK — это программная платформа с открытым исходным кодом для робототехники, предназначенная для разработки слабосвязанных модулей. Он обеспечивает прозрачное управление параллелизмом, межпроцессное (через сокеты) и внутрипроцессное (через общую память) взаимодействие на основе классной доски, а также метод связывания, который позволяет концептуально проектировать порты данных ввода/вывода. Предусмотрены модули для подключения к симуляторам и универсальные драйверы роботов.
Камень
[ редактировать ]Rock (Robot Construction Kit) — это программная среда для разработки робототехнических систем. Базовая модель компонентов основана на Orocos RTT (Real Time Toolkit). Rock предоставляет все инструменты, необходимые для настройки и эксплуатации высокопроизводительных и надежных роботизированных систем для широкого спектра применений в исследованиях и промышленности. Он содержит богатую коллекцию готовых к использованию драйверов и модулей для использования в вашей собственной системе и может быть легко расширен путем добавления новых компонентов.
ISAAC SDK / Моделирование
[ редактировать ]ISAAC . Комплект разработки программного обеспечения NVIDIA Isaac (SDK) — это набор инструментов разработчика для ускорения разработки и внедрения роботов с искусственным интеллектом. SDK включает в себя Isaac Robot Engine, пакеты с высокопроизводительными алгоритмами робототехники (для выполнения восприятия и навигации) и эталонные аппаратные приложения. Isaac Sim — это виртуальная лаборатория робототехники и высококачественный 3D-симулятор мира. Это ускоряет исследования, проектирование и разработки в области робототехники за счет снижения затрат и рисков. Разработчики могут быстро и легко обучать и тестировать своих роботов в подробных и очень реалистичных сценариях. На GitHub доступна версия сообщества с открытым исходным кодом. Поддерживаемая аппаратная платформа включает подробную информацию о спецификации, см. kaya-robot.
РОС
[ редактировать ]ROS. Архивировано 15 января 2018 г. на Wayback Machine ( операционная система робота ). Это набор программных платформ для разработки программного обеспечения роботов на гетерогенном компьютерном кластере . ROS предоставляет стандартные службы операционной системы, такие как абстракция оборудования , низкоуровневое управление устройствами , реализация часто используемых функций, передача сообщений между процессами и управление пакетами.
ЯРП
[ редактировать ]YARP — это программный пакет с открытым исходным кодом, написанный на C++ для соединения датчиков, процессоров и исполнительных механизмов в роботах.
ДДКС
[ редактировать ]DDX (Dynamic Data eXchange) — это промежуточное программное обеспечение ( Linux / BSD / Unix ), разработанное CSIRO для предоставления облегченной услуги публикации/подписки в реальном времени для распределенных контроллеров роботов. DDX позволяет нескольким программам совместно использовать данные во время выполнения через эффективный механизм общей памяти . Несколько машин могут быть связаны с помощью глобальной службы имен, и при необходимости данные передаются нескольким машинам. по [10] DDX был разработан для автоматизации ряда крупных горнодобывающих машин : в том числе драглайнов , погрузочно-доставочных машин , экскаваторов и камнедробилок.
Внешние ссылки
[ редактировать ]- БРИКС : европейский проект , целью которого является внедрение лучших практик в разработке роботов.
Ссылки
[ редактировать ]- ^ Элькади, Айсам (29 января 2012 г.). «Промежуточное программное обеспечение для робототехники: комплексный обзор литературы и библиография на основе атрибутов» . Журнал робототехники . 2012 : 1–15. дои : 10.1155/2012/959013 .
- ^ «Что такое промежуточное программное обеспечение?» . Middleware.org . Определение технологии. 2008. Архивировано из оригинала 29 июня 2012 года . Проверено 11 августа 2013 г.
{{cite web}}
: CS1 maint: неподходящий URL ( ссылка ) - ^ Jump up to: а б «Инструменты, стандарты и платформы для разработки коммерческой робототехники: профиль внедрения» . roboticsbusinessreview.com . Октябрь 2009 года . Проверено 8 мая 2017 г. [ постоянная мертвая ссылка ]
- ^ Герки Б., Воган Р. и Ховард А. (2003) Проект «Игрок/сцена»: инструменты для мультироботов и распределенных сенсорных систем. Материалы Международной конференции по передовой робототехнике 317-323.
- ^ Колле, Т.Д., Макдональд, Б.А., и Герки, Б. (2005) Игрок 2.0: На пути к практической структуре программирования роботов. Материалы Австралазийской конференции по робототехнике и автоматизации (ACRA)
- ^ Нориаки АНДО, Такаши СУЭХИРО, Косей КИТАГАКИ, Тецуо КОТОКУ, Ву-Гын Юн, «RT-Middleware: промежуточное программное обеспечение распределенных компонентов для RT (технологии роботов)», Международная конференция IEEE / RSJ 2005 г. по интеллектуальным роботам и системам (IROS2005), стр. .3555-3560, 2005.08, Эдмонтон, Канада
- ^ Спецификация компонентов технологии робототехники, версия 1.0 , Группа управления объектами (OMG)
- ^ Эндерле, Стефан; Утц, Ганс; Саблатног, Стефан; Саймон, Штеффен; Крецшмар, Герхард; Палм, Гюнтер (2001), «Миро: промежуточное программное обеспечение для автономных мобильных роботов» , IFAC Proceeding Volumes , 34 (9): 297–302, doi : 10.1016/S1474-6670(17)41721-6
- ^ Jump up to: а б «Обзор Орки» . Проверено 7 мая 2017 г.
- ^ Корк, Питер; Сикка, Паван; Робертс, Джонатан; Дафф, Эллиот (2004). «DDX: Распределенная архитектура программного обеспечения для робототехнических систем» . Австралазийская конференция по робототехнике и автоматизации 2004 г.