ROS2 + DDS-Integration:Wenn Ökosysteme verschmelzen | RTI
Wie im Juli 2018 angekündigt, ist die zweite Version von ROS2 – auch „Bouncy Bolson“ genannt – steht jetzt zum Download von der ROS2-Website für Intel Linux-, Windows- und iOS-Plattformen zur Verfügung.
Wenn dies ungewohnt klingt, ist ROS (Robot Operating System) ein Open-Source-Framework und eine Tool-Suite für den Bau von Robotersystemen, und zwar in zwei Hauptvarianten:ROS – das Original Forschungsversion mit Python und XML und ROS2 – eine leistungsgesteigerte Version, die DDS als Konnektivitäts-Framework verwendet.
Über ROS2 Bouncy Bolson
Die 'Bouncy'-Version ist besonders, weil sie RTI Connext DDS in der Binärdistribution unter einer nicht-kommerziellen Lizenz enthält. Professionelles DDS ist jetzt eine kostenlose Option für Forscher, Gutachter und Akademiker, die ROS2 für Robotikanwendungen verwenden.
Dies bedeutet, dass das DDS-Tools- und -Dienste-Ökosystem dank der standardbasierten Interoperabilität von DDS für alle ROS2-Benutzer verfügbar ist, einschließlich:
- RTI Admin Console:das Tool der Wahl zur Diagnose von Systemkonnektivitätsproblemen.
- RTI System Monitor:das beste Tool zum Tunen und Optimieren der Systemleistung.
- RTI-Aufzeichnungsdienst: Aufzeichnung und Wiedergabe von Themendaten mit hoher Bandbreite und langer Dauer von Ihrem System.
- RTI-Routingdienst: eine sofort einsatzbereite Lösung, die als architektonische Brücke/Gateway fungiert.
Sehen wir uns an, wie die RTI Admin Console die Diagnose und das Verständnis von ROS2-Konnektivitätsproblemen zum Kinderspiel machen kann. Ich habe vor kurzem eine LiDAR-Datenquelle für ROS2 zusammengestellt, und mein erster Versuch, die Daten mit RViz anzuzeigen, ergab:keine Daten. Das Terminal für RViz produzierte nicht viele hilfreiche Nachrichten:
Ich habe auch einige der in ROS2 integrierten Diagnosebefehle verwendet, um die Ursache der Nichtkommunikation zu ermitteln. Zum Beispiel kann ich „ros2 topic list“ verwenden, um die Datenelemente anzuzeigen, die derzeit aktiv sind: Ich interessiere mich für das Thema „/velodyne_points“: Stellt der Herausgeber von „/velodyne_points“ Daten her?: Ja . . . Warum werden die Daten von RViz nicht angezeigt?
Admin-Konsole
Versuchen wir, dieses Problem mit der RTI Admin Console zu diagnostizieren, die bequem im RTI Launcher verfügbar ist:
Sobald die Admin-Konsole gestartet wird, informiert sie mich über ein Problem zwischen den DDS-Netzwerkteilnehmern (beachten Sie die rote X-Box-Anzeige):
Erweitern von „Domain 0“ und Hervorheben meines Interesses (/velodyne_points) zeigt sofort die Ursache des Problems – ein QoS-Mismatch: Mein Herausgeber bietet "Best Effort"-Zuverlässigkeit, aber der RViz-Abonnent erfordert eine „zuverlässige“ Verbindung. Anstatt zuzulassen, dass diese Nichtübereinstimmung fortbesteht, verweigert DDS die Verbindung und verhindert, dass die Nichtübereinstimmung weiterhin unbemerkt bleibt.Diese QoS-Nichtübereinstimmung wurde sofort von der Admin-Konsole zusammen mit den Details von . aufgedeckt jeden anderen Teilnehmer in diesem ROS2-DDS-Netzwerk, einschließlich aller normalerweise verborgenen internen Themen von ROS2. Auf einen Blick kann ich feststellen, dass:
- Es gibt einige Fehlerprotokolleinträge – wir werden uns diese später ansehen.
- Es gibt eine Reihe von Themen zum Thema „Nur für Schreiber“ und „Nur für Leser“. Dies sind Themen, die ein Thema veröffentlichen oder abonnieren können, aber derzeit keinen zusätzlichen Abonnenten oder Herausgeber haben.
- Dieses System führt eine Mischung aus RMW-Layern von verschiedenen DDS-Anbietern aus. Das ist kein Problem. DDS wurde für Multi-Vendor-Interoperabilität entwickelt.
- Bei der Ausführung mit der Connext RMW-Schicht sind Typcode-Informationen im DDS-Erkennungsverkehr enthalten und können einfach in der Admin-Konsole angezeigt werden:
Bei Verwendung anderer RMW-Layer wird diese Information unterdrückt.
Admin Console kann auch Datenthemen abonnieren und deren Datenwerte drucken oder visualisieren:
Mit Hilfe der Admin-Konsole konnte ich die QoS-Nichtübereinstimmung, die die Datenübertragung verhinderte, identifizieren und das System in wenigen Minuten zum Laufen bringen.
Lesen Sie weitere Blogbeiträge, die die Leistungsfähigkeit des kombinierten ROS2/DDS-Ökosystems hervorheben – um ein ROS/ROS2-System zu erweitern, zu diagnostizieren und zu optimieren und um eine verbesserte 3D-Visualisierung für reine DDS-Systeme bereitzustellen .
ROS2 + DDS:A Field Guide to Interoperability
ROS2 + DDS spielen es noch einmal
ROS 2 und DDS:Interoperabilität treibt Robotik der nächsten Generation voran
Internet der Dinge-Technologie
- Open DDS vs. RTI DDS-Software
- Softwaretests bei RTI
- Verbindung 6:Jetzt verfügbar!
- ROS2 + DDS:Spielen Sie es noch einmal
- ROS2 + DDS:Ein Handbuch zur Interoperabilität
- Ankündigung des neuesten RTI-Perftest für Connext DDS
- So integrieren Sie Qt und DDS in eine IoT-Anwendung
- AUTOSAR Adaptive Platform 18.03:Jetzt mit DDS!
- Hier ist, warum jeder RTI Connext DDS für autonome Fahrzeuge verwendet
- 5G-Integration in IIoT-Systeme beschleunigen die Einführung von Industrie 4.0