RAINBOW ROBOTICS
RB SERIE _ Bedienungsanleitung
E.1 Externe Skriptsteuerungs-API
Die Beschreibung des in diesem Dokument bereitgestellten Skripts ähnelt dem Skript im
".wsl"-Arbeitsdokument, das unter Verwendung eins Tablets als dediziertes Skript für die
externe Steuerung erstellt wurde. Aber die beiden unterscheiden sich. Da das
Arbeitsdokument Anweisungen enthält, die den Ablauf steuern, wie "repeat", "if-else" und
"break", steht der Abschluss einer Anweisung nicht in direktem Zusammenhang mit einer
Aktion, sondern der obere Satz der Anweisung muss auch vollbeendet sein.
Wenn beispielsweise Point im Move-Befehl vorhanden sind, kann dies wie folgt ausgedrückt
werden.
1)
move joint {
point ( ) absolute 0.4, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
point ( ) absolute 0.4, 0.1, 5.0, 5.0, 5.0, 5.0, 5.0, 5.0
}
2)
move joint {
point ( ) absolute 0.4, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
point ( ) absolute 0.4, 0.1, 5.0, 5.0, 5.0, 5.0, 5.0, 5.0
Der Unterschied zwischen 1) und 2) ist das Vorhandensein oder Fehlen von "}" am Ende. In
beiden Fällen ist der point-Satz vollständig. Im Gegensatz zu 1) ist 2) jedoch eine Syntax, die
nicht ausgeführt werden kann, weil die move-Anweisung, die die übergeordnete Anweisung
von point-Anweisung ist, nicht abgeschlossen ist. Dann wartet der Parser auf die
Beendigung der Anweisung.
3)
folder( ) {
move joint {
point ( ) absolute 0.4, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
}
Nach der Gleichen Logik funktioniert der Parser selbst im Fall 3) nicht, während er darauf
wartet, dass die Anweisung abgeschlossen wird.
Wie oben ist das Verfahren, das das Vervollständigen mehrerer Anweisungszeilen erfordert,
nicht für externe Steuerung geeignet. Wenn ein Benutzer einen Befehl durch externe
Steuerung sendet, analysiert er den Befehl und erwartet, dass er ausgeführt wird. Benutzer
möchten nicht mehrere Befehle senden und diese Befehle mit mehreren Satzzeilen wie 3)
vervollständigen.
© RAINBOW ROBOTICS Inc. All rights reserved.
point ( ) absolute 0.4, 0.1, 5.0, 5.0, 5.0, 5.0, 5.0, 5.0
390