Aufgabe 8.1

Kommandosprachen

Ein mobiler Roboter kann vorwärts und rückwärts fahren und sich auf der Stelle nach rechts oder links drehen. Er hat einen Greifarm, dessen zwei Gelenke jeweils in der Vertikalen gebeugt werden können. Am Ende des Greifarms befindet sich eine Schaufel, die geöffnet und geschlossen werden kann. Dieser Roboter soll mittels einer Kommandosprache ferngesteuert werden können.

  • Für welche Operationen werden wie viele Kommandos benötigt?
  • Auf welche Operanden wirken die Kommandos?
  • Welche Parameter müssen angegeben werden?
  • Wie lässt sich die Kommandosprache funktionsorientiert verwirklichen?

Lösung

Die Operationen sind Fahren, Drehen, Beugen, Öffnen und Schließen.

Fahren und Drehen betreffen den Roboter, Beugen die beiden Gelenke, Öffnen und Schließen die Schaufel. Fahren hat die Parameter vorwärts, rückwärts und halt oder Geschwindigkeitsangaben mit Vorzeichen. Drehen erfordert die Eingabe eines Winkels mit Vorzeichen, ebenso Beugen. Öffnen und Schließen brauchen keine Parameter.

Eine funktionsorientierte Kommandosprache könnte die folgenden Kommandos umfassen, wobei Operanden in Anführungszeichen und Parameter in spitzen Klammern stehen:

  • FAHRE "Roboter" <Geschwindigkeit>
  • DREHE "Roboter" <Winkel>
  • BEUGE "Roboter" , "Gelenk" <Winkel>
  • ÖFFNE "Roboter" , "Schaufel"
  • SCHLIESSE "Roboter" , "Schaufel"

Wenn mit der Sprache nur ein einziger Roboter gesteuert werden soll, können alle Operanden "Roboter" weggelassen werden. Wenn man auf eine einheitliche Grammatik keinen großen Wert legt, können die letzten beiden Kommandos noch zusammengefasst werden zu SCHAUFEL mit der Parameterangabe <auf> oder <zu>.