Monitor (Programm, NAO)

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen

Monitor ist ein Programm, welches mit dem NAO eingesetzt wird. Es gibt Feedback über die Sensoren und einfachen Zugriff auf die Kamera Einstellungen.

Der Modulare Aufbau erlaubt es Plug-Ins für verschiedene Mobile Widgets zu laden. Jedes dieser Plug-Ins lässt sich mit einem beliebigen NAO Roboter verbinden, dabei ist es auch möglich mehre Roboter zur selben Zeit an zu sprechen.

Programmsymbol von Monitor


Es gibt 3 Plugins:

  • Camera viewer
  • Memory viewer
  • Laser monitor

(Der Laser Monitor benötig das „NAO Laser Head“-Kit und ist daher nicht an der HSHL verfügbar)

Installation

Monitor wird zusammen mit Choregraphe installiert. Mehr Details unter: Choregraphe.

Startseite

Nach starten des Programms Monitor, sollte der Startbildschirm wie im folgenden Bild aufgerufen werden.



Mit der Funktion „Load Plugin“ in der Menüleiste können verschiedene Plug-Ins geladen werden. Sie können die bereits geladenen Plug-Ins an der rechten Seite auswählen. Klicken Sie dafür auf beispielsweise „Camera“ um den „Camera viewer“ zu öffnen. Es sollte sich nun ein neues Fenster öffnen indem Sie einen NAO-Roboter wählen können mit dem Sie sich verbinden wollen. 

Camera Viewer


Der Camera Viewer ermöglicht Ihnen:

A) Ausgabe Einstellungen („Viewer settings“)

B) Kamera Einstellungen („Camera Settings“)

C) Aktionsknöpfe („Aktion Buttons“)

D) Video-Aufnahme („Video Recorder tab“)


Ausgabe Einstellungen („Viewer settings“)

Die folgenden Einstellungen haben nur Einfluss auf die übertragenen Videosignale, aber keinen Einfluss auf die aufgenommen Signale. Egal welche Einstellungen Sie vornehmen, die Camera nimmt die Videosignale immer mit QVGA (320x240) mit 15 fps auf. (Komprimierung: MJPG) Beachten Sie dass bei den folgenden Einstellungen ein hoher Rechenaufwand auch zu einer hohen Hitzeentwickelung des Prozessors führt. Es besteht daher die Gefahr, dass der NAO heiß läuft und sich automatisch Not-herunterfährt.

  • Bildrate („Framerate“)
Stellen Sie ein, wie viele Bilder pro Sekunde aufgenommen werden sollen. Denken Sie daran dass manche Bildraten nicht erreicht werden können. Hohe Auflösungen führen zudem zu hohen Datenübertragungen und hohem Rechenaufwand für den NAO Roboter.
  • Auflösung („resolution“)
Stellen Sie die Auflösung ein mit der das Bild übertragen wird. Hohe Auflösungen führen zudem zu hohen Datenübertragungen und hohem Rechenaufwand für den NAO Roboter.
  • schwarz-weiß („black and white“)
Sollte hier der Harken gesetzt sein so werden alle Bilder in schwarz-weiß übertragen. Schwarz-weiß Bilder haben ein geringes Datenvolumen. Daher können diese unter geringerem Rechenaufwand verarbeitet werden.
  • Mustererkennung („mark detektion“)
Lässt den NAO-Roboter gewünschte Muster erkennen.
  • Objekterkennung („vision recognition“)
Detektiert bekannte Objekte und lokalisiert sie im Bild

2.2 Kamera Einstellungen („Camera Settings“)

Die Folgenden Einstellungen haben einen Einfluss auf die Kamera und alle damit verbundenen Module.

  • Belichtung („exposure“)
Prüfe ob der Harken bei „auto exposition“ gesetzt ist. Falls ja, dann kann die Belichtungszeit verstellt werden. Ist der Harken nicht gesetzt so können die Parameter manuell eingestellt werden. Eine lange Belichtungszeit kann die Bildrate verlangsamen, jedoch bietet eine längere Belichtungszeit hellere Bilder und ist geräuschärmer.
  • Verstärkung der Belichtung („gain“)
Sie können mit dem Schieber die Verstärkung der Belichtung verstellen. Eine größere Verstärkung führt zu helleren Bildern, jedoch wird auch die Geräuschentwickelung verstärkt. Setzen Sie den Harken um eine automatische Verstärkung einzustellen.
  • Belichtungs-Kalibrierung („exposure correction“)
Die Kalibrierung tritt nach der Belichtung und Verstärkung auf. Es ist eine Feinjustierung für die Belichtung.
  • Weißausgleich („white balance“)
Stellen Sie mit dem Schieber die blaue/rote Farbsättigung ein. Setzen Sie den Harken für eine automatischen Weißausgleich.
  • Helligkeit/Kontrast/Farbton („brightness / contrast / hue“)
Die Einstellung erfolgt nach der Aufnahme.
  • Vertikale/Horizontale Drehung („vertical / horizontal flip“)
Mit dieser Einstellung können Sie das Bild drehen.

Aktionsknöpfe („Aktion Buttons“)

  • Play
Startet den Stream von ihrem gewünschten Video widget.
  • Pause
Pausiert den Video Stream.

Record /

Nimmt die Aufname auf. Grün bedeutet, dass eine Aufnahme aufgenommen wird und Rot bedeutet, dass keine Aufnahme aufgenommen wird.
  • Snapshot
Mach ein Screenshot von der aktuellen Aufnahme.
Speicherort: /home/nao/.local/share/naoqi/vision/{timestamp}{a,b,c}.jpg
  • Switch camera

Wechsel zwischen der oberen und unteren Kamera im Kopf des Roboters

Video-Aufnahme („Video Recorder tab“)

  • In diesem Bereich können Sie die Dateinamen der auf dem Roboter gespeicherten Videos definieren. Zudem zeigt es auch Informationen über die letzte aufgezeichnete Videodatei an.

Memory viewer

Dieses Plug-In ermöglicht es Ihnen, die Daten von der Speichermodul eines NAO aus zu lesen. Die Entwickelung der Daten kann auch aufgezeichnet werden. Dies kann ein sehr nützlich Anwendung sein, wenn Sie Probleme in ihrem Programm zu erkennen wollen.

Architektur („Architecture overview“)

Es gibt eine Vielzahl von Datenschlüsseln in einem Speicher. Deshalb ist es empfehlenswert, nur bestimmte Datensätze zu überwachen und diese in eine XML-Konfigurationsdatei zu speichern. Es ist viel langsamer alle Werte zu sammeln und dann erst die benötigten Werte zu filtern.


Nachdem Sie im auf der Startseite von Monitor „Memory“ gewählt haben taucht folgendes Fester auf:

Name Funktion
New configuration file Wählen Sie die Schlüssel für einen neuen Datensatz aus
Open configuration file Wählen Sie die Schlüssel eines vorherigen Datensatz aus
Do not use config file Wählen Sie alle Schlüssel aus und filtern Sie manuell (langsam)

Zeichentool („Plot Viewer“)


Auf der rechten Seite erkennt man den „Plot Viewer“. Jeder ausgewählte Schlüssel wird als Graph dargestellt.

Verwaltung der Schlüssel („Key List“)

Auf der linken Seite werden die Schlüssel gelistet:

  • Name: Name des Ausgelesenen Wertes/Sensors
  • Watch: entscheidet ob der Wert ausgelesen wird oder nicht
  • Graph: entscheidet ob der Wert gezeichnet wird oder nicht
  • Type: gibt den Datentyp des Wertes an (bool, int, float, string oder invalid)
  • Value: der ausgelesene Wert
  • Color: die Farbe des Graphen der den Wert darstellt

Zudem gibt es unter der Schlüssel Liste auch noch die Optionen „Watch all“ und „Graph all“ die eine Übersicht aller Werte liefert.

Abtastrate („Subscription Mode“)

Der „Subscription Mode“ regelt die Abtastrate der Werte. Bei Auswahl des Modus "Every <nb> ms", können Sie den Aktualisierungszeitraum variieren. Die Auswahl des Modus “No subscription” deaktiviert die automatische Aktualisierung der Werte. Mit der blauen Pfeiltaste können Sie manuell die Werte der Liste ändern. Dies ist sinnvoll, wenn Sie die „Subscription mode“ auf „No subscription” gestellt haben.

Hinweis: Der „Subscription Mode“ hat keinen Effekt auf das Verhalten des Graphen. Wenn Sie das Verhalten ändern wollen, sollten Sie die Auflösung des Graphen verändern.

Verhalten der Konfigurationsdatei („configuration file“)

Sie können jede Änderung speichern, indem Sie den „Save/merge“-Tate am des „Configuration-Widget“ klicken. (unten-linken) Sie können auch Konfigurationsdateien mit der „import“-Taste einbinden, so dass es mit der aktuellen Konfiguration zusammengeführt wird.

Verhalten des Graphen („Manage the plot“)

  • Start/Stop graph: startet/stopt das zeichnen der Werte
  • Speed in pixel/second: setzt den auto-scrolling Speed des Graphen
  • Autoscale: Wenn der Harken gesetzt ist, dann wird das Widget den Zoom immer wieder so einstellen, dass das Maximum und das Minimum des Graphen zu sehen sind. Ist der Harken nicht gesetzt, so können die Grenzen manuell gesetzt werden.

Laser monitor

Diese Funktion ist nur für „NAO Laser Head“-Besitzer zur Verfügung.

Dieses Plugin zeigt Ihnen eine bildliche Darstellung der durch den Laser-Entfernungsmesser erkannten Objekte. Es ist vergleichbar mit einem Echolot. Einmal geladen, wird das folgende Display angezeigt

Die Entfernungen die von dem Lasersensor gemessen werden, werden als Kreuze mit dem richtigen Winkelverhältnis und Offsets auf einem polaren Diagramm dargestellt. Der Schieber am unteren Rand filtert die Punkte in Abhängigkeit der Distanz die Sie einstellen. Dabei wird jedoch nur die Darstellung der Messwerte verändert. Es nimmt keinen Einfluss auf die Messung selbst. 

Häufige Probleme

Warum sind einige Funktionen nicht verfügbar? / Warum sind einige Funktionen oder Knöpfe grau?

  • Wenn einige Funktion von Monitor nicht verfügbar sind dann kann es daran liegen, dass
    • Das entsprechende Parameter deaktiviert ist
    • es Probleme mit der Verbindung gibt.