Choregraphe (Programm): Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 1: | Zeile 1: | ||
[Datei:Choregraphe ico.png | [[Datei:Choregraphe ico.png|rahmenlos|rechts|]]<br> | ||
'''Choregraphe''' ist ein Programm zur Steuerung des [http://193.175.248.52/wiki/index.php/NAO)/ NAO-Roboters] . Das Programm verfügt üb er eine graphische Programmierschnittstelle, kann aber auch in [http://193.175.248.52/wiki/index.php/Python/ Python] oder C++ programmiert werden. Die Firmware-Version des NAO und die Version von Choregraphe müssen übereinstimmen. | '''Choregraphe''' ist ein Programm zur Steuerung des [http://193.175.248.52/wiki/index.php/NAO)/ NAO-Roboters] . Das Programm verfügt üb er eine graphische Programmierschnittstelle, kann aber auch in [http://193.175.248.52/wiki/index.php/Python/ Python] oder C++ programmiert werden. Die Firmware-Version des NAO und die Version von Choregraphe müssen übereinstimmen. | ||
Zeile 32: | Zeile 32: | ||
===Funktionsleiste=== | ===Funktionsleiste=== | ||
[[Datei:Choregraphe Overview Funktionsleiste.jpg]]<br> | |||
{| class="wikitable" | {| class="wikitable" | ||
Zeile 87: | Zeile 87: | ||
'''Verbindung mit dem NAO oder einer Simulation aufbauen''' | '''Verbindung mit dem NAO oder einer Simulation aufbauen''' | ||
Nachdem der -Knopf angeklickt wurde, öffnet sich das Verbindungsfenster. Hier wird eine Liste mit allen verfügbaren NAO-Robotern im Netzwerk angezeigt. Mit dem Stern können bevorzugte Roboter markiert werden. | |||
Nachdem der [[Datei:Connect-to button.png]]-Knopf angeklickt wurde, öffnet sich das Verbindungsfenster. Hier wird eine Liste mit allen verfügbaren NAO-Robotern im Netzwerk angezeigt. Mit dem Stern können bevorzugte Roboter markiert werden. | |||
Mit einem Rechtsklick auf die Spalte eines Roboters öffnet man ein Pop-Up, welches eine direkten Link zu Webpage des jeweiligen NAO anzeigt. Zudem können die LED getestet werden und die IP-Adresse aktualisiert werden. | Mit einem Rechtsklick auf die Spalte eines Roboters öffnet man ein Pop-Up, welches eine direkten Link zu Webpage des jeweiligen NAO anzeigt. Zudem können die LED getestet werden und die IP-Adresse aktualisiert werden. | ||
Sollte ein NAO nicht automatisch erkannt werden, so kann er manuell durch seinen Port oder seine IP-Adresse nachgetragen werden. Man kann die IP-Adresse erfahren, indem man bei einem angeschalteten NAO für eine Sekunde auf seine Brusttaste drückt. | Sollte ein NAO nicht automatisch erkannt werden, so kann er manuell durch seinen Port oder seine IP-Adresse nachgetragen werden. Man kann die IP-Adresse erfahren, indem man bei einem angeschalteten NAO für eine Sekunde auf seine Brusttaste drückt. | ||
[[Datei:Chore connect to.png|410px|links]] | |||
{| class="wikitable" | {| class="wikitable" | ||
Zeile 102: | Zeile 105: | ||
|} | |} | ||
<br> | |||
===Projektcontainer=== | ===Projektcontainer=== | ||
Im Projektcontainer befinden sich alle Dateien auf die das Programm zugreift. Hier können auch externe Dateien integriert werden um den Funktionsumfang von Choregraphe zu erhöhen. So können beispielsweise Tonspuren eingefügt werden. Dabei sollten die Datei in komplexeren Programmen in Ordnern angelegt werden um eine Übersicht zu gewährleisten. | Im Projektcontainer befinden sich alle Dateien auf die das Programm zugreift. Hier können auch externe Dateien integriert werden um den Funktionsumfang von Choregraphe zu erhöhen. So können beispielsweise Tonspuren eingefügt werden. Dabei sollten die Datei in komplexeren Programmen in Ordnern angelegt werden um eine Übersicht zu gewährleisten. | ||
[[Datei:Choregraphe Overview Projectcontainer2.jpg|links|]] | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
Zeile 120: | Zeile 125: | ||
|} | |} | ||
<br> | |||
===Bibliothek der verschieden Bausteine (In Bearbeitung)=== | |||
[[Datei:Choregraphe Overview Blockbibliothek.jpg|zentriert]] | |||
Standartmäßig enthält die Block-Bibliothek eine Suchfunktion und die drei Bibiliotheken „standard“, „advanced“ und „tablet“. | Standartmäßig enthält die Block-Bibliothek eine Suchfunktion und die drei Bibiliotheken „standard“, „advanced“ und „tablet“. | ||
In den einzelnen Bibliotheken findet man Unterordner die die verschiedenen Blöcke beinhalten. | In den einzelnen Bibliotheken findet man Unterordner die die verschiedenen Blöcke beinhalten. | ||
Zeile 130: | Zeile 137: | ||
!Symbol !!Name !!Funktion | !Symbol !!Name !!Funktion | ||
|- | |- | ||
| ||newLibrary || Legt eine neue Bibliothek in der Blöcke eingefügt werden können. | | [[Datei:Video monitor new.png|zentriert]] ||newLibrary || Legt eine neue Bibliothek in der Blöcke eingefügt werden können. | ||
|- | |- | ||
| ||openLibrary || Öffnet eine bereits gespeicherte Bibliothek. | | [[Datei:Chore bluebuttons openProjekt.png|zentriert]] ||openLibrary || Öffnet eine bereits gespeicherte Bibliothek. | ||
|- | |- | ||
| || saveLibrary || Speichert die aktuell bearbeitete Bibliothek. | | [[Datei:Chore bluebuttons SaveProjekt.png|zentriert]]|| saveLibrary || Speichert die aktuell bearbeitete Bibliothek. | ||
|- | |- | ||
| ||saveLibraryAs ||Speichert die aktuell bearbeitete Bibliothek mit der Möglichkeit Eigenschaften zu ändern. | | [[Datei:Block Library 1.png|zentriert]]||saveLibraryAs ||Speichert die aktuell bearbeitete Bibliothek mit der Möglichkeit Eigenschaften zu ändern. | ||
|- | |- | ||
| || saveAllLibrarys || Speichert alle aktuell bearbeiteten Bibliotheken | | [[Datei:Block Library 2.png|zentriert]]|| saveAllLibrarys || Speichert alle aktuell bearbeiteten Bibliotheken | ||
|} | |} | ||
Zeile 146: | Zeile 153: | ||
!Symbol !!Name !!Funktion | !Symbol !!Name !!Funktion | ||
|- | |- | ||
| ||Diagram || Diagram ist der Standartblock in dem ohne Bearbeitung nichts passiert. <br> Man kann alle Eingänge und Ausgänge nach belieben bearbeiten. Alle anderen Blöcke können hier integriert werden. | | [[Datei:Chore Symbol Diagram.png|zentriert]] ||Diagram || Diagram ist der Standartblock in dem ohne Bearbeitung nichts passiert. <br> Man kann alle Eingänge und Ausgänge nach belieben bearbeiten. Alle anderen Blöcke können hier integriert werden. | ||
|- | |- | ||
| ||Timeline || Die Timeline ermöglicht das Verwenden einer Zeitachse. Dadurch können Befehle in Abhängigkeit der Zeit reagieren. | | [[Datei:Chore Symbol Timeline.png|zentriert]] ||Timeline || Die Timeline ermöglicht das Verwenden einer Zeitachse. Dadurch können Befehle in Abhängigkeit der Zeit reagieren. | ||
|- | |- | ||
| ||Python Script ||Ermöglich das Einbinden eines Quellcode basierten Elementes. Dieses Element enthält nur das Grundgerüst und hat wie der Diagrammblock ohne eine Änderung keinen Einfluss auf das Programm | | [[Datei:Chore Symbol Phyton.png|zentriert]] ||Python Script ||Ermöglich das Einbinden eines Quellcode basierten Elementes. Dieses Element enthält nur das Grundgerüst und hat wie der Diagrammblock ohne eine Änderung keinen Einfluss auf das Programm | ||
|} | |} | ||
Zeile 160: | Zeile 167: | ||
=== Workspace === | === Workspace (in Bearbeitung)=== | ||
Der Workspace ist der wohl wichtigste Bereich in ihm werden alle Blöcke aus der Blocke integriert und verbunden. | Der Workspace ist der wohl wichtigste Bereich in ihm werden alle Blöcke aus der Blocke integriert und verbunden. | ||
Was die Verbindungen zu bedeuten haben finden Sie unter: {Link zu Choregraphe-Blöcke} | Was die Verbindungen zu bedeuten haben finden Sie unter: {Link zu Choregraphe-Blöcke} | ||
===Time-Line (in Bearbeitung)=== | |||
Die Timeline gibt zwei wesentliche Dinge an: | Die Timeline gibt zwei wesentliche Dinge an: | ||
* Der Ebene in der Man sich Befindet. Um auf eine neue Ebenen zu kommen kann ein Diagramm-Block genutzt werden | |||
* Der Zeitliche Ablauf | |||
=== Zustand des Roboters (in Bearbeitung)=== | |||
Symbol Name Funktion/Bedeutung | {| class="wikitable" | ||
|- | |||
! Symbol !!Name !!Funktion/Bedeutung | |||
|- | |||
| ||volume || Durch klicken erscheint ein Schieder der die Lautstärke regelt. | |||
|- | |||
| ||volumeMute|| Der NAO ist lautlos/ keine Verbindung zum Roboter | |||
autoLifeOn Der NAO steht um schnell reagieren zu können. | |- | ||
| ||AnimationOn|| Der NAO verliert nachdem er eine Position erreicht hat langsam seine Kraft. Das schont die Motoren. | |||
autoLifeOff Der NAO kniet um Energie zu sparen. | |- | ||
| ||AnimationTurn|| Der NAO bewegt sich nur bedingt oder ist im Wechsel zwischen den Modi | |||
modeWake Der Roboter ist einsatzbereit. Durch klicken auf den Knopf mit dem Mond wechselt der Roboter in einen Energiesparmodus. | |- | ||
| ||AnimationOff|| Der NAO bleibt starr. Dieser Modus ist sehr anspruchsvoll für die Motoren und sollte daher vermieden werden. | |||
modeRest Der Roboter ist im Energiesparmodus. Durch klicken auf den Knopf mit der Sonne ist der Roboter wieder einsatzbereit | |- | ||
| ||autoLifeOn|| Der NAO steht um schnell reagieren zu können. | |||
|- | |||
| ||autoLifeOff|| Der NAO kniet um Energie zu sparen. | |||
|- | |||
| ||modeWake|| Der Roboter ist einsatzbereit. Durch klicken auf den Knopf mit dem Mond wechselt der Roboter in einen Energiesparmodus. | |||
|- | |||
| ||modeRest|| Der Roboter ist im Energiesparmodus. Durch klicken auf den Knopf mit der Sonne ist der Roboter wieder einsatzbereit | |||
|- | |||
| ||batteryGreen|| Batterie über 60% geladen | |||
|- | |||
| ||battaryOrange|| Batterie unter 60% geladen | |||
|- | |||
| ||BatteryRed|| Batterie unter 20% geladen, Vorsicht! | |||
|} | |||
===Kommandobereich (in Bearbeitung)=== | |||
Der Kommandobereich Teilt sich in zwei Bereiche auf. | Der Kommandobereich Teilt sich in zwei Bereiche auf. | ||
=== Applikationen und Simulation (in Bearbeitung)=== | |||
[...] | |||
== Häufige Probleme == | |||
Im Choregraphe sind plötzlich einige Boxen rot | Im Choregraphe sind plötzlich einige Boxen rot | ||
:*Der Fehler Tritt auf wenn einige Boxen nicht bei dem virtuellen NAO simuliert werden können. Verbinden Sie Choregraphe mit dem physischen NAO und spielen Sie Ihr Programm auf. | |||
:*Eine weitere Möglichkeit ist es wenn eine Box (Zustand) nicht verlassen werden kann. Bauen Sie ihren Signalflussplan anders auf. | |||
Im Choregraphe lässt sich das Programm nicht auf den NAO laden obwohl ein Programm kürzlich erst von demselben Rechner übertragen wurde, oder es kann keine Verbindung aufgebaut werden, obwohl schon mal eine Verbindung bestand. | Im Choregraphe lässt sich das Programm nicht auf den NAO laden obwohl ein Programm kürzlich erst von demselben Rechner übertragen wurde, oder es kann keine Verbindung aufgebaut werden, obwohl schon mal eine Verbindung bestand. | ||
:*Sollte ein Programm nicht terminieren, so kann es dazu führen dass der Roboter nicht mehr ansprechbar ist. Starten Sie den NAO und Choregraphe neu. |
Version vom 26. Februar 2016, 14:59 Uhr
Choregraphe ist ein Programm zur Steuerung des NAO-Roboters . Das Programm verfügt üb er eine graphische Programmierschnittstelle, kann aber auch in Python oder C++ programmiert werden. Die Firmware-Version des NAO und die Version von Choregraphe müssen übereinstimmen.
Funktionen
- Choregraphe ist ein Programm welches die Verbindung mit dem NAO und seiner eigenen Betriebssystem NAOqi herstellt. Dabei werden Netzwerkeinstellungen wie die IP-Adresse des NAO angezeigt.
- Es können aber auch grundlegende Parameter verstellt werden, wie beispielsweise die Lautstärken, der Sprach- und Ton-Ausgabe des Roboters.
- Neben der Programmierung können auch direkt Befehle an den NAO übermittelt werden. So gibt es vorgefertigte Elemente wie „aufstehen“ oder „hinsetzen“
- Es können die Bilder der Kamera die im Kopf verbaut ist, übertragen werden.
- Das Programm beinhaltet eine Funktion zum Simulieren des Programmablaufs in einer leeren Welt. Diese ist jedoch vereinfacht und beinhaltet nicht so viele simulierte Effekte wie Webots.
Installation
Das Programm ist ohne Lizenz für 90 Tage kostenfrei nutzen. Danach ist der Erwerb einer kostenpflichtigen Lizenz erforderlich.
Die Installation ist für Windows, Linux und Mac verfügbar und ist unter folgendem Link zu finden:
https://community.aldebaran.com/en/resources/software/language/en-gb
Die Installation beinhaltet das Programm Monitor. Monitor ermöglicht die Bilder der Kamera und die Sensorwerte eines NAO auszulesen.
Anwendung
Das Hauptprogramm von Choregraphe teilt sich in folgende Bereiche
- Funktionsleiste
- Projektcontainer
- Bibliothek der verschieden Bausteine
- Workspace
- Time-Line
- Zustand des Roboters
- Kommandobereich
- Applikationen und Simulation
Funktionsleiste
Symbol | Name | Funktion/Bedeutung |
---|---|---|
newProjekt | erstellt ein neues Projekte. | |
openProjekt | öffnet ein bereits erstelltes Projekt. | |
saveProjekt | speichert das aktuelle Projekt. | |
undo | macht den letzten Schritt rückgängig. | |
undoDisable | erster Schritt in der Schrittliste erreicht. | |
redo | wiederholt einenrückgängig gemachten Schritt. | |
redoDisable | letzter Schritt in der Schrittliste erreicht. | |
connect | verbindet Choregraphe mit den NAO oder einer Simulation. (dazu später noch mehr) | |
connectTry | die Verbindung mit den NAO oder einer Simulation wird aufgebaut. | |
connectDown | die Verbindung mit den NAO oder einer Simulation ist abgebrochen. Prüfen Sie, ob der NAO und das Netzwerk noch aktiv sind. | |
disconnect | bricht die aktuelle Verbindung ab. | |
noConnect | es besteht keine Verbindung, daher kann keine Verbindung abgebrochen werden. | |
upload+Play | läd das im Workspace erstellte Programm auf den NAO und spielt es ab | |
uploadDisable | es besteht keine Verbindung, daher kann kein Programm auf den NAO geladen werden. | |
stopProgram | stoppt das aktuelle Programm auf den NAO | |
stopDisable | es besteht keine Verbindung, daher kann kein Programm auf den NAO gestoppt werden, oder das Programm ist bereits terminiert | |
Debug | Zeigt die Syntaxfehler im Programm. Ist nur aktiviert wenn sich Syntaxfehler im Programm befinden. | |
noDebug | Es gibt keine Syntaxfehler | |
behavior | Zeigt die Übertragungsleistung/Rechenleistung des Programms zum Nao. Das Programm wird nicht ausgeführt. | |
behaviorRun | Zeigt die Übertragungsleistung/Rechenleistung des Programms zum Nao. Das Programm wird übertragen / läuft. | |
behaviorBusy | Zeigt die Übertragungsleistung/Rechenleistung des Programms zum Nao. Das Programm ist vollständig ausgelastet. |
Verbindung mit dem NAO oder einer Simulation aufbauen
Nachdem der -Knopf angeklickt wurde, öffnet sich das Verbindungsfenster. Hier wird eine Liste mit allen verfügbaren NAO-Robotern im Netzwerk angezeigt. Mit dem Stern können bevorzugte Roboter markiert werden. Mit einem Rechtsklick auf die Spalte eines Roboters öffnet man ein Pop-Up, welches eine direkten Link zu Webpage des jeweiligen NAO anzeigt. Zudem können die LED getestet werden und die IP-Adresse aktualisiert werden. Sollte ein NAO nicht automatisch erkannt werden, so kann er manuell durch seinen Port oder seine IP-Adresse nachgetragen werden. Man kann die IP-Adresse erfahren, indem man bei einem angeschalteten NAO für eine Sekunde auf seine Brusttaste drückt.
Symbol | Bedeutung |
---|---|
Funktionsfähiger NAO Der NAO hat noch keinen Befehl erhalten. Man kann eine Verbindung zu ihm aufbauen. | |
Aktiver NAO Der NAO ist grade beschäftigt. (z.B. durch den Boot-Prozess oder einen anderen PC) Es ist nicht möglich eine Verbindung zu dem NAO auf zubauen. | |
Virtueller NAO Hierbei handelt es sich um Simulation oder eine veraltete Simulationsadresse im Netzwerk. Achten Sie darauf mögliche Simulationen nach beenden des Projektes zu schließe, da diese immer noch angezeigt werden, jedoch keine Verbindung zu Ihnen möglich ist |
Projektcontainer
Im Projektcontainer befinden sich alle Dateien auf die das Programm zugreift. Hier können auch externe Dateien integriert werden um den Funktionsumfang von Choregraphe zu erhöhen. So können beispielsweise Tonspuren eingefügt werden. Dabei sollten die Datei in komplexeren Programmen in Ordnern angelegt werden um eine Übersicht zu gewährleisten.
Bibliothek der verschieden Bausteine (In Bearbeitung)
Standartmäßig enthält die Block-Bibliothek eine Suchfunktion und die drei Bibiliotheken „standard“, „advanced“ und „tablet“.
In den einzelnen Bibliotheken findet man Unterordner die die verschiedenen Blöcke beinhalten.
Symbol | Name | Funktion |
---|---|---|
newLibrary | Legt eine neue Bibliothek in der Blöcke eingefügt werden können. | |
openLibrary | Öffnet eine bereits gespeicherte Bibliothek. | |
saveLibrary | Speichert die aktuell bearbeitete Bibliothek. | |
saveLibraryAs | Speichert die aktuell bearbeitete Bibliothek mit der Möglichkeit Eigenschaften zu ändern. | |
saveAllLibrarys | Speichert alle aktuell bearbeiteten Bibliotheken |
Die drei elementaren Blöcke sind
Symbol | Name | Funktion |
---|---|---|
Diagram | Diagram ist der Standartblock in dem ohne Bearbeitung nichts passiert. Man kann alle Eingänge und Ausgänge nach belieben bearbeiten. Alle anderen Blöcke können hier integriert werden. | |
Timeline | Die Timeline ermöglicht das Verwenden einer Zeitachse. Dadurch können Befehle in Abhängigkeit der Zeit reagieren. | |
Python Script | Ermöglich das Einbinden eines Quellcode basierten Elementes. Dieses Element enthält nur das Grundgerüst und hat wie der Diagrammblock ohne eine Änderung keinen Einfluss auf das Programm |
Für weitere Blöcke steht der Artikel Blockbibiliothek zu verfügung:
Für mehr Informationen und Tutorals zum Thema Python gibt es unter:
Workspace (in Bearbeitung)
Der Workspace ist der wohl wichtigste Bereich in ihm werden alle Blöcke aus der Blocke integriert und verbunden. Was die Verbindungen zu bedeuten haben finden Sie unter: {Link zu Choregraphe-Blöcke}
Time-Line (in Bearbeitung)
Die Timeline gibt zwei wesentliche Dinge an:
- Der Ebene in der Man sich Befindet. Um auf eine neue Ebenen zu kommen kann ein Diagramm-Block genutzt werden
- Der Zeitliche Ablauf
Zustand des Roboters (in Bearbeitung)
Symbol | Name | Funktion/Bedeutung |
---|---|---|
volume | Durch klicken erscheint ein Schieder der die Lautstärke regelt. | |
volumeMute | Der NAO ist lautlos/ keine Verbindung zum Roboter | |
AnimationOn | Der NAO verliert nachdem er eine Position erreicht hat langsam seine Kraft. Das schont die Motoren. | |
AnimationTurn | Der NAO bewegt sich nur bedingt oder ist im Wechsel zwischen den Modi | |
AnimationOff | Der NAO bleibt starr. Dieser Modus ist sehr anspruchsvoll für die Motoren und sollte daher vermieden werden. | |
autoLifeOn | Der NAO steht um schnell reagieren zu können. | |
autoLifeOff | Der NAO kniet um Energie zu sparen. | |
modeWake | Der Roboter ist einsatzbereit. Durch klicken auf den Knopf mit dem Mond wechselt der Roboter in einen Energiesparmodus. | |
modeRest | Der Roboter ist im Energiesparmodus. Durch klicken auf den Knopf mit der Sonne ist der Roboter wieder einsatzbereit | |
batteryGreen | Batterie über 60% geladen | |
battaryOrange | Batterie unter 60% geladen | |
BatteryRed | Batterie unter 20% geladen, Vorsicht! |
Kommandobereich (in Bearbeitung)
Der Kommandobereich Teilt sich in zwei Bereiche auf.
Applikationen und Simulation (in Bearbeitung)
[...]
Häufige Probleme
Im Choregraphe sind plötzlich einige Boxen rot
- Der Fehler Tritt auf wenn einige Boxen nicht bei dem virtuellen NAO simuliert werden können. Verbinden Sie Choregraphe mit dem physischen NAO und spielen Sie Ihr Programm auf.
- Eine weitere Möglichkeit ist es wenn eine Box (Zustand) nicht verlassen werden kann. Bauen Sie ihren Signalflussplan anders auf.
Im Choregraphe lässt sich das Programm nicht auf den NAO laden obwohl ein Programm kürzlich erst von demselben Rechner übertragen wurde, oder es kann keine Verbindung aufgebaut werden, obwohl schon mal eine Verbindung bestand.
- Sollte ein Programm nicht terminieren, so kann es dazu führen dass der Roboter nicht mehr ansprechbar ist. Starten Sie den NAO und Choregraphe neu.