Экосистема
DDS - это стандарт связи, предложенный OMG. Его целевой рынок носит более общий характер, например, вооруженные силы, управление воздушным движением, автономные транспортные средства, медицинские приборы. Мало кто из поставщиков предоставляет корпоративную версию и версию с открытым исходным кодом, но лишь немногие люди или рынок могут принять решение о своих будущих работах или дизайне.
Любой, кто хочет внедрить DDS в свой продукт, должен начать с нуля.
ROS2 больше похож на экосистему. Лидер ROS2 - OSRF предоставляет экосистему, документы и дружественные рамки для тех, кто хочет создать свое роботизированное приложение.
Каждый может представить свои мысли по основному дизайну или внести свой вклад в сообщество.
Более технический
Разница между Pub и Sub моделью между ROS и DDS
ДДС
Участник, тема, издатель, подписчик, читатель и владелец данных
да, у DDS есть издатель и подписчик. Более того, у него есть участник , тема , издатель , подписчик , datawriter и datareader они называются сущностью в общем пространстве данных DDS.
Каждый объект обладает различными атрибутами QoS и влияет на то, как объект управляет доставкой данных или жизненным циклом данных.
Участник контролирует создание, удаление, группировку объектов. У этого есть способность знать, что новое юридическое лицо присоединяется или уходит.
Другой участник идентифицируется по идентификатору домена (целое число).
Тема похожа на цель, владеющую информацией о QoS, которую писатель данных и устройство чтения данных могут связывать друг с другом.
Издатель и подписчик контролируют доставку данных и доступность данных на свои собственные DataReader и datawriter .
Только издатель может иметь несколько устройств записи данных, а подписчик может иметь только несколько устройств чтения данных.
DataWriter - поставщик данных, а DataReader - потребитель данных. Они должны иметь одинаковое QoS для своей целевой темы.
DDS Название темы:
Отсоедините другие модели pub / sub, они не используют slash /
, вместо этого они являются объектно-ориентированными.
ROS2
пространство имен и узлов.
Это похоже на тему, но имеет пространство имен.
ROS2 активно использует пространство имен и косая черта /
. Начальное пространство имен начинается с /
. Например, /turtle/cmd_vel
, turtle - это пространство имен, а cmd_vel - его базовое имя.
Просто базовый элемент, который предоставляет или потребляет данные.
Вы можете проверить тему ros2 и имена служб для дизайна именования пабов / подчиненных ROS2.
Заключение
ROS2 больше фокусируется на разработке роботизированных приложений, что устраняет трудности при составлении сложных приложений Pub / Sub.