Diagnoseaufzeichnung erstellen

So erstellst du mit rosbag eine Aufzeichnung zur Untersuchung von Positionsproblemen und anderen Fehlern und lädst sie vom Mäher herunter.

Bei der Fehlersuche, besonders bei Positionsproblemen, liefert eine rosbag-Aufzeichnung den Entwicklern eine vollständige Momentaufnahme der Sensordaten. Diese Anleitung zeigt dir, wie du sie erstellst und vom Mäher herunterlädst.

Voraussetzungen

  • OpenMower läuft und der Mäher hat einen GPS-Fix: grünes GPS-Symbol in der App
  • Du kannst per SSH oder Webterminal auf den Mäher zugreifen

Schritt 1: Aufzeichnung starten

Verbinde dich per SSH oder Webterminal mit dem Mäher und öffne die ROS-Shell:

openmower shell

Wechsle in das Aufzeichnungsverzeichnis und starte die Aufzeichnung aller Topics:

cd /data/recordings
rosbag record -a

Damit werden alle aktiven ROS-Topics aufgezeichnet. Lass das Terminal offen. Die Aufzeichnung läuft, bis du sie mit Strg+C stoppst.

Schritt 2: Flächenerfassung aktivieren

Öffne die OpenMower-App und aktiviere den Modus zur Flächenerfassung, den du auch zum Aufzeichnen der Mähflächen verwendest. Dadurch werden die Daten für GPS, IMU und Radodometrie auf den jeweiligen Topics mit der vollen Aktualisierungsrate veröffentlicht.

Schritt 3: Testmuster fahren

Fahre die folgenden Muster ab. Mit jedem prüfst du einen anderen Aspekt der Positionsbestimmung:

MusterZweck
Gerade StreckenLineare Odometrie und Übereinstimmung mit GPS
Eine AchtKombination aus Kurvenfahrt und Geradeausfahrt
Auf der Stelle im Uhrzeigersinn drehenSchätzung des Gierwinkels, Ausrichtung laut IMU im Vergleich zu GPS
Auf der Stelle gegen den Uhrzeigersinn drehenDasselbe in Gegenrichtung

Ein bis zwei Minuten pro Muster reichen aus. Du brauchst keine große Fläche; ein kleines freies Rasenstück genügt.

Schritt 4: Aufzeichnung stoppen

Kehre zum Terminal zurück und drücke Strg+C. Gib dann exit ein, um die ROS-Shell zu verlassen.

Die .bag-Datei liegt jetzt unter ~/recordings/ auf dem Mäher. Den Dateinamen findest du mit:

ls -lh ~/recordings/

Der Name enthält einen Zeitstempel, zum Beispiel 2024-06-01-12-34-56.bag.

Schritt 5: Datei herunterladen

Kopiere die .bag-Datei aus ~/recordings/ vom Mäher auf deinen Computer.

Verwende scp in deinem lokalen Terminal:

scp openmower@<mower-ip>:recordings/<filename>.bag .

Ersetze <mower-ip> durch die IP-Adresse des Mähers und <filename> durch den tatsächlichen Dateinamen. Die Datei wird in dein aktuelles Verzeichnis heruntergeladen.

Windows 10 ab Build 1809 und Windows 11 enthalten einen OpenSSH-Client. Öffne die Eingabeaufforderung oder PowerShell und führe aus:

scp openmower@<mower-ip>:recordings/<filename>.bag .

Verwende auf älteren Windows-Versionen stattdessen einen grafischen SFTP-Client:

  • WinSCP – kostenlos und quelloffen
  • Cyberduck – kostenlos und plattformübergreifend

Wähle als Protokoll SFTP, als Host <mower-ip> und als Benutzer openmower. Öffne /home/openmower/recordings/, um die Datei herunterzuladen.

Teile die heruntergeladene Datei mit der Person, die dir bei der Fehlersuche hilft, etwa über Discord, einen Dateifreigabedienst oder einen anderen passenden Weg.

Schritt 6: Aufräumen

Lösche nach der Fehlersuche die Aufzeichnungen vom Mäher, um Speicherplatz freizugeben:

# delete a specific file
rm ~/recordings/<filename>.bag

# delete all recordings
rm ~/recordings/*.bag