Anleitungen erstellt und Bildrate einstellbar

This commit is contained in:
2026-05-25 17:09:31 +02:00
parent 3207b58772
commit 023017d1fb
10 changed files with 663 additions and 36 deletions
+1
View File
@@ -0,0 +1 @@
+244
View File
@@ -0,0 +1,244 @@
Bedienungsanleitung ExoMy - Admin
=================================
Diese Anleitung ist für Administration, Diagnose und technische Bedienung gedacht.
Sie beschreibt die Admin-Seite und die wichtigsten technischen Zusammenhänge.
1. Admin-Seite
==============
Adresse:
http://<IP-des-Rovers>:8000/admin.html
Typische Adressen:
- http://192.168.1.9:8000/admin.html
- http://192.168.1.83:8000/admin.html
- http://192.168.50.1:8000/admin.html
Passwort:
- cuno
2. Zweck der Admin-Seite
========================
Die Admin-Seite ist für:
- Neustarts
- Diagnose
- Kameraeinstellungen
- GPS-Aktionen
- Latenz-Simulation
- Überblick über Systemstatus und Dienste
3. Wichtige Tabs und Bereiche
=============================
Aktionen:
- GPS neu starten
- GPS-Kaltstart
- Kameradienst neu starten
- ExoMy-Container neu starten
- Raspberry Pi neu starten
- Raspberry Pi herunterfahren
Kamera:
- Auswahl der Stream-Auflösung
- nur 4:3-Profile
- aktuelle Vorschau
GPS:
- GPS-Status
- Satelliten
- Diagnosewerte
- Neustart und Kaltstart
Systemstatus:
- WLAN
- WLAN-Signal
- CPU-Temperatur
- CPU-Auslastung
- RAM
- Uptime
- freier Speicherplatz
- Unterspannung
4. Kamera
=========
Die Kamera ist bewusst auf 4:3-Profile reduziert.
Verfügbare Profile:
- 640 x 480
- 1024 x 768
- 1296 x 972
Grund:
- mit 4:3 bleibt beim vorhandenen Kameramodul das größtmögliche Sichtfeld erhalten
- 16:9-Modi wurden entfernt, weil sie im praktischen Einsatz einen engeren Bildausschnitt liefern
Wichtig:
- ein Profilwechsel speichert die Auswahl dauerhaft
- danach wird der Kameradienst automatisch neu gestartet
5. Kamera-Streams
=================
Es gibt zwei verschiedene Kamerapfade:
- Port 8081
Rohstream ohne Verzögerung
- Port 8083
Delay-Proxy mit eingestellter Verzögerung
Wichtige Zuordnung:
- Hauptseite `index.html` soll bewusst den Stream auf 8083 verwenden
- Admin-Vorschau darf direkt den Rohstream nutzen
Merksatz:
- 8081 = direkt
- 8083 = verzögert
6. Latenz-Simulation
====================
Die Latenz-Simulation wird im Admin eingestellt.
Bereich:
- 0 bis 10 Sekunden
Die Verzögerung wirkt gleichzeitig auf:
- Steuerbefehle
- Kamerabild
Technisch bedeutet das:
- Steuerbefehle laufen über den ROS-Knoten `delay_node`
- Kamerabilder laufen über den Dienst `video_delay_proxy`
Signalweg Kamera:
- Kamera -> 8081 Rohstream -> 8083 Delay-Proxy -> Web-GUI
Signalweg Steuerung:
- Web-GUI / physischer Controller -> /joy -> /delay_node -> /joy_delayed -> Rover-Steuerung
Zweck:
- realistische Simulation von Signallaufzeiten
- Test von Fahrverhalten bei Verzögerung
7. GPS
======
Verwendeter Empfänger:
- GlobalSat BU-353N5 USB-GNSS-Empfänger
GPS neu starten:
- startet nur den laufenden GPS-Knoten im Container neu
GPS-Kaltstart:
- sendet einen Kaltstart-Befehl an den Empfänger
- startet danach den GPS-Knoten neu
- der nächste Fix kann deutlich länger dauern
Die GPS-Porterkennung ist portunabhängig aufgebaut.
Der Node sucht automatisch nach:
- /dev/serial/by-id/*
- /dev/serial/by-path/*
- /dev/ttyUSB*
- /dev/ttyACM*
8. ROS und Web-GUI
==================
Die Hauptseite nutzt:
- Port 8000 für die Web-GUI
- Port 9090 für ROSBridge WebSocket
Wichtig:
- ROS-Anzeige in der Hauptseite und echte ROS-Laufzeit können sich bei kurzen Verbindungsstörungen unterschiedlich verhalten
- bei GPS-Neustarts kann die Startseite kurz eine fehlerhafte oder zu strenge ROS-Anzeige liefern
- das bedeutet nicht automatisch, dass `rosbridge_websocket` wirklich abgestürzt ist
9. Wichtige Dienste auf dem Pi
==============================
Systemd-Dienste:
- exomy-camera-stream.service
- exomy-video-delay.service
- exomy-admin-api.service
- exomy-wifi-fallback.service
Bedeutung:
- exomy-camera-stream = direkter MJPEG-Stream
- exomy-video-delay = verzögerter Video-Proxy
- exomy-admin-api = Admin-REST-API
- exomy-wifi-fallback = Netzlogik und Fallback-AP
10. Docker und Container
========================
Der Rover läuft hauptsächlich im Container:
- exomy_autostart
Dort laufen unter anderem:
- rosbridge_websocket
- rosapi_node
- gps_node.py
- robot_node.py
- motor_node.py
- joystick_parser_node.py
- f710_joy_node.py
- delay_node
11. Netzwerk
============
Bevorzugt:
- WLAN 192.168.1.9
Alternativ:
- LAN 192.168.1.83
Fallback:
- Access Point CUNO
- 192.168.50.1
12. Typische Diagnosefälle
==========================
Kein Kamerabild auf der Hauptseite:
- prüfen, ob 8083 der verwendete Stream ist
- prüfen, ob exomy-video-delay.service läuft
- prüfen, ob 8081 und 8083 erreichbar sind
Kein GPS:
- GPS-Tab prüfen
- Satelliten und Diagnose ansehen
- GPS neu starten
- bei Bedarf GPS-Kaltstart
Hauptseite zeigt komische Verbindungszustände:
- Seite hart neu laden
- Admin-Status gegenprüfen
- prüfen, ob Dienste auf dem Pi laufen
13. Zuständigkeit
=================
Die Hauptseite ist für Bedienung im Betrieb.
Die Admin-Seite ist für technische Eingriffe.
Auf der Hauptseite sollten keine Wartungsarbeiten gemacht werden.
Für Neustarts, Diagnose und Konfiguration immer den Admin-Bereich nutzen.
+190
View File
@@ -0,0 +1,190 @@
Bedienungsanleitung ExoMy - User
================================
Diese Anleitung ist für normale Benutzer gedacht.
Gemeint ist nur die Hauptseite des Rovers:
http://<IP-des-Rovers>:8000/
1. Zweck der Hauptseite
=======================
Über die Hauptseite kann der Rover beobachtet und gesteuert werden.
Die Seite zeigt:
- das Kamerabild
- den aktuellen Fahrmodus
- den Verbindungsstatus
- die GPS-Anzeige
- den virtuellen Joystick
- wichtige Systemwerte
2. Verbindung zum Rover
=======================
Der Rover ist je nach Netzwerk unter einer dieser Adressen erreichbar:
- Heimnetz / WLAN: http://192.168.1.9:8000/
- LAN: http://192.168.1.83:8000/
- Fallback-Access-Point: http://192.168.50.1:8000/
Wenn die Seite nicht lädt:
- prüfen, ob der Rover eingeschaltet ist
- prüfen, ob das richtige WLAN verwendet wird
- Seite neu laden
3. Kamerabild
=============
Das große Bild in der Mitte ist das Kamerabild des Rovers.
Wichtig:
- Das Bild kann absichtlich verzögert sein, wenn in der Admin-Seite eine Latenz-Simulation eingestellt wurde.
- Die Hauptseite nutzt dafür den verzögerten Videoweg.
Wenn kein Bild zu sehen ist:
- Seite neu laden
- Netzwerkverbindung prüfen
- bei anhaltendem Problem Admin oder Technik informieren
4. Fahrmodi
===========
Der Rover kennt mehrere Fahrmodi:
- Ackermann
Normales Fahren wie bei einem Auto
- Turn on Point
Drehen auf der Stelle
- Crab
Seitliches Fahren
Der aktive Modus wird auf der Hauptseite angezeigt.
5. Steuerung über den virtuellen Joystick
=========================================
Die Steuerung erfolgt mit dem virtuellen Joystick auf der Hauptseite.
Grundprinzip:
- nach vorne = vorwärts fahren
- nach hinten = rückwärts fahren
- nach links = links lenken
- nach rechts = rechts lenken
Hinweise:
- kleine Bewegungen vorsichtig ausführen
- bei Verzögerung ruhig bleiben und nicht hektisch gegensteuern
- nach dem Loslassen geht der virtuelle Joystick wieder in die Mitte zurück
6. Motoren
==========
Der Rover fährt nur, wenn die Motoren freigegeben sind.
Wenn der Rover nicht reagiert:
- prüfen, ob auf der Hauptseite die Motoren aktiviert sind
- prüfen, ob eine Verbindung zum Rover besteht
7. GPS-Anzeige
==============
Auf der Hauptseite wird bei GPS die Anzahl der empfangenen Satelliten angezeigt.
Beispiele:
- 0 Sat
- 12 Sat
- 21 Sat
Wenn dort Offline steht:
- hat die Seite gerade keine brauchbaren GPS-Daten
- nach einem GPS-Neustart oder Kaltstart kann das kurz dauern
8. Statusanzeigen
=================
Auf der Hauptseite werden mehrere Statuswerte angezeigt.
Wichtige Bedeutungen:
- Cuno online
Die Seite hat Verbindung zu den wichtigen Diensten
- Cuno eingeschränkt
Ein Teil der Funktionen ist erreichbar, aber nicht alles
- Cuno offline
Die Verbindung ist derzeit gestört oder unterbrochen
- ROS
Verbindung zur ROS-Schnittstelle des Rovers
- CAM
Zustand des Kamerastreams
- GPS
Anzahl empfangener Satelliten oder Offline
9. Verhalten bei Verzögerung
============================
Es kann sein, dass absichtlich eine Signallaufzeit simuliert wird.
Dann reagieren:
- Kamerabild später
- Fahrbefehle später
In diesem Fall:
- nur kleine Steuerbewegungen machen
- auf die Wirkung warten
- nicht mehrfach hektisch nachkorrigieren
10. Wenn der Rover nicht reagiert
=================================
In dieser Reihenfolge prüfen:
1. Ist das Kamerabild da?
2. Steht die Seite auf online oder eingeschränkt?
3. Sind die Motoren aktiviert?
4. Reagiert der virtuelle Joystick?
5. Seite neu laden
Wenn das Problem bleibt:
- nicht weiter experimentieren
- Admin oder Technik informieren
11. Sicherheit
==============
Beim Fahren immer beachten:
- langsam anfangen
- genug Abstand zu Personen halten
- nicht blind fahren
- bei schlechter Verbindung besonders vorsichtig sein
- bei Verzögerung mit großer Reserve steuern
12. Kurzfassung
===============
Die Hauptseite ist für drei Dinge da:
- sehen, was die Kamera zeigt
- den Rover fahren
- den Zustand grob überwachen
Für Wartung, Neustarts, GPS-Aktionen oder Kameraeinstellungen ist die Admin-Seite zuständig.