Skip to content
kraeml edited this page Nov 25, 2025 · 5 revisions

ROS 2 – Das Herz moderner Robotik

ROS 2 (Robot Operating System 2) ist kein Betriebssystem, sondern ein Framework – eine Sammlung von Bibliotheken, Tools und Standards, die dir helfen, Roboter-Software modular, verteilt und zuverlässig zu entwickeln.

💡 Kernprinzip von ROS 2:

  • Modularität: Komplexe Systeme werden in kleine, klar definierte Komponenten zerlegt.
  • Standardisierte Kommunikation: Komponenten tauschen Daten über standardisierte Nachrichten aus.
  • Plattformunabhängig: Läuft auf Linux, macOS, Windows und dem Raspberry Pi.

🔧 Wie funktioniert ROS 2?

ROS 2 nutzt DDS (Data Distribution Service) für Echtzeit-Kommunikation – selbst über verschiedene Rechner hinweg.

Feature Beschreibung
Modulare Architektur Roboter-Software wird in unabhängige Nodes aufgeteilt.
Echtzeit-Datenverteilung Dank DDS können Daten in Echtzeit zwischen Nodes ausgetauscht werden.
Plattformunabhängigkeit Läuft auf verschiedenen Betriebssystemen und Hardware-Plattformen.

💬 Beispiel:

  • Vernetzte Roboter-Schwärme steuern.
  • Einzelne Roboterarme oder IoT-Geräte kontrollieren.

🎓 Warum ROS 2 für Bildung und Lernen?

ROS 2 ist ein ideales Lehr- und Experimentierfeld für Lernende und Bildungseinrichtungen:

Lernziel Beispiel
Softwarearchitektur Verstehen, wie komplexe Systeme in modulare Komponenten zerlegt werden.
Vernetztes Systemdesign Lernen, wie Roboter miteinander kommunizieren.
Sensorintegration Sensordaten auswerten und verarbeiten.
Autonome Navigation Algorithmen für selbstständige Roboter entwickeln.

🛠 ROS 2 für Entwickler:innen

Entwickler:innen profitieren von der Automatisierbarkeit von ROS 2:

Vorteil Beispiel
DevOps-Integration ROS 2 lässt sich automatisieren (z. B. mit Docker, GitLab CI oder DOITPi).
Wiederverwendbarkeit Module können in verschiedenen Projekten genutzt werden.
Skalierbarkeit Von einzelnen Robotern bis zu vernetzten Schwärmen.

🤝 ROS 2 und DOITPi

ROS 2 und DOITPi sind eine perfekte Kombination für Robotik-Projekte:

Feature Nutzen mit DOITPi
Vorkonfigurierte Umgebung ROS 2 ist auf DOITPi bereits vorbereitet – kein kompliziertes Setup nötig.
IoT-Integration Kombiniere ROS 2 mit Sensoren, Aktoren und IoT-Geräten.
DevOps-Workflows Nutze Docker, GitLab CI und Ansible für automatisierte Robotik-Projekte.

💬 Beispielprojekt mit DOITPi:

  1. ROS 2 installieren (vorbereitet auf DOITPi).
  2. Roboter-Steuerung mit Python-Nodes programmieren.
  3. Sensoren anbinden (z. B. Kamera, Ultraschall).
  4. Daten visualisieren (z. B. mit RViz oder Grafana).

🚀 ROS 2 in der Praxis mit DOITPi

1. ROS 2 installieren

# ROS 2 Humble auf DOITPi installieren
sudo apt update
sudo apt install ros-humble-desktop

2. Einfaches Beispiel: Roboter-Steuerung

Erstelle einen Python-Node, der eine Nachricht veröffentlicht:

import rclpy
from rclpy.node import Node
from std_msgs.msg import String

class SimplePublisher(Node):
    def __init__(self):
        super().__init__('simple_publisher')
        self.publisher = self.create_publisher(String, 'robot_command', 10)
        timer_period = 0.5  # Sekunden
        self.timer = self.create_timer(timer_period, self.timer_callback)

    def timer_callback(self):
        msg = String()
        msg.data = 'Vorwärts'
        self.publisher.publish(msg)
        self.get_logger().info(f'Gesendet: "{msg.data}"')

def main(args=None):
    rclpy.init(args=args)
    node = SimplePublisher()
    rclpy.spin(node)
    node.destroy_node()
    rclpy.shutdown()

if __name__ == '__main__':
    main()

Häufige Fragen zu ROS 2

Frage Antwort
Was ist der Unterschied zu ROS 1? ROS 2 ist moderner, plattformunabhängig und nutzt DDS für Echtzeit-Kommunikation.
Kann ich ROS 2 auf dem Raspberry Pi nutzen? Ja! ROS 2 läuft auf dem Raspberry Pi performant (z. B. mit ROS 2 Humble).
Wie starte ich mit ROS 2? DOITPi bietet eine vorkonfigurierte Umgebung für schnelle Projekte.
Wofür eignet sich ROS 2? Robotik, autonome Systeme, IoT, verteilte Systeme und vieles mehr.

📌 Nächste Schritte mit DOITPi

  • ROS 2 installieren: ROS 2 auf dem Raspberry Pi einrichten.
  • ROS 2-Grundlagen: Nodes, Topics und Services verstehen.
  • ROS 2 und IoT: ROS 2 mit Sensoren und Aktoren verbinden.
  • ROS 2 und Docker: Containerisierte ROS 2-Anwendungen nutzen.

💡 Warum ROS 2 mit DOITPi?

  • Praktisch lernen: ROS 2 hands-on für Robotik und IoT nutzen.
  • Flexibel: Von einfachen Robotern bis zu komplexen verteilten Systemen.
  • Zukunftssicher: ROS 2 ist der Standard für moderne Robotik!

🚀 Schnellstart: DOITPi in 30 Sekunden

Für Eilige:

Du willst sofort loslegen? Hier ist der direkte Weg zur 01_Installation


Was du brauchst:

  • Raspberry Pi (Modell 3/4/5 oder Zero 2 W)
  • microSD-Karte (mind. 32 GB)
  • Kartenleser o.Ä
  • Netzteil
  • 15 Minuten Zeit

Los geht’s! 🎉

Jetzt zur 01_Installation


⚡ DOITPi 01a_Autohotspot

Immer verbunden – automatisch!

  • Aktiviert sich selbst, wenn kein WLAN verfügbar ist.
  • SSID: AP_<Hostname> | Passwort: 123456789
  • Zugriff per Browser/SSH – ideal für Headless-Betrieb.
    • Codeserver (für webbasiertes Code-Editing)
    • NodeRed (für visuelles IoT- ROS2-Programmieren)
  • Automatische Umschaltung alle 60 Sekunden.

🔒 Passwort anpassen! 🔧

Kurz, klar, direkt zum Ziel – perfekt für alle, die keine Zeit verlieren wollen! 😊

Clone this wiki locally