• Keine Ergebnisse gefunden

TI Coding mit TI-Nspire™ Technologie und TI-Innovator™ Hub

N/A
N/A
Protected

Academic year: 2022

Aktie "TI Coding mit TI-Nspire™ Technologie und TI-Innovator™ Hub"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

10 Minuten Coding L

EKTION

5: Ü

BUNG

2

TI-N

SPIRE

CX

MIT DEM

TI-I

NNOVATOR

R

OVER

L

EHRERINFORMATION 

©2017Texas Instruments 1  education.ti.com

Lektion 5: Die Sensoren des Rovers Übung 2: Der Ranger und Bewegung In der ersten Übung dieser Lektion hast du den Ranger

des Rovers getestet, um zu sehen, wie man den Sen- sor einsetzt und einen Wert anzeigen lässt. Jetzt wer- den wir diesen Test weiterführen, indem wir die Fahrt des Rovers kontrollieren.

Lernziele:

 Die READ RV.RANGER-Anweisung verwenden, um die Entfernung von einem Hindernis festzustellen

 Die Fahrt des Rovers steuern, wenn er zu nahe an ein Hindernis gerät

 Den zeitlichen Ablauf der Roverfahrt im Rahmen des Programms steuern

Wir wollen en Programm schreiben, das den Rover zwischen zwei Wänden nach vorwärts und rückwärts fahren lässt. Wir beginnen mit der Vorwärtsbewegung (FORWARD), lesen den Sensor des Rangers ab, und sobald der Rover zu nahe an die Wand gerät, bleibt der Rover stehen, kehrt um und bewegt sich wieder vorwärts (FORWARD).

Das ist die große Idee:

Beginne eine For-Schleife (die am Ende der Fahrt verlassen wird) Starte mit der Vorwärtsbewegung des Rovers (FORWARD) Solange der Abstand größer ist als etwa 25 cm

beobachte weiterhin den Sensor des Rangers Verlasse die While-Schleife

STOP, drehe den Rover um 180° nach rechts Beende die For-Schleife 

1. Beginne das Programm in der üblichen Weise.

2. Füge eine For-Schleife ein, die zehn Mal durchlaufen wird.

3. Fahre fort mit der FORWARD 100 UNITS-Anweisung für eine Vorwärtsbe- wegung um 10 Meter (100 * 0,1m pro Einheit).

Hinweis: Da kommt noch mehr Code in die Schleife. Momentan sieht es aus, als sollte der Rover 10-mal FORWARD 100 ausführen. Im fertigen Programm wird das nicht der Fall sein, denn der Ranger wird den Rover anhalten und wenden lassen. Die FORWARD-Anweisung geht in die „Fahr-Warteschlange“ im TI-InnovatorTN Hub und dieser beginnt sofort mit der Abarbeitung dieser Schlange.

(2)

10 Minuten Coding L

EKTION

5: Ü

BUNG

2

TI-N

SPIRE

CX

MIT DEM

TI-I

NNOVATOR

R

OVER

L

EHRERINFORMATION 

©2017Texas Instruments 2  education.ti.com

Wie in der vorigen Übung verwenden wir die Variable entf, um die Entfernung des Rovers vom Hindernis zu messen.

4. Setze entf auf 1 und füge eine While entf > 0.25-Schleife an.

Beachte die beiden End-Anweisungen im Programm: ein EndFor und ein EndWhi- le. Das wird als eine „geschachtelte Schleife“ bezeichnet.

5. Dann schreiben wir den Programmcode in den Körper der While-Schleife.

6. Zuerst die Anweisung Send “READ RV.RANGER”

7. Und dann die Get-Anweisung, um den Wert in der Variablen entf zu spei- chern.

Damit ist die While-Schleife vollständig. Der Rover bewegt sich 10 m vorwärts und die While-Schleife überwacht den Abstand. Wenn gewünscht, kannst du mit einer DispAt-Anweisung in der Schleife den aktuellen Abstand anzeigen las- sen, um sicher zu gehen, dass alles richtig abläuft.

Wenn die While-Schleife endet, dann bedeutet dies, dass der Rover dem Hindernis zu nahe gekommen ist. Wir sagen STOP mit der Vorwärtsbewegung und lassen ihn umkehren. Wir müssen aber nicht wieder befehlen, vorwärts zu fahren.

8. Nach dem End While aber noch vor dem End For, werden die RV STOP- und die RV RIGHT 180-Anweisung eingefügt.

9. Nimm die Wait 2-Anweisung und gib damit dem Rover ausreichend Zeit für das Umkehren, bevor er sich wieder nach vorwärts bewegt. (Erinnere dich, dass die FORWARD-Anweisung schon am Beginn der For-Schleife steht.) 10. Teste nun dein Programm. Wenn der Rover nahe beim Hindernis angelangt

ist, soll er umkehren und in die Gegenrichtung fahren. Passe allfällig die Werte für den Minimalabstand und Wait an deine Fahrunterlage an. Wenn der Rover zu nahe an die Wand gerät, könnte sein Heck beim Umdrehen an die Wand stoßen.

Hinweis: Das komplette Programm (der Deutlichkeit halber):

Send "CONNECT RV"

For i,1,10

Send "RV FORWARD 100"

entf:=1

While entf>0.25

Send "READ RV.RANGER"

Get entf EndWhile

Send "RV STOP "

Send "RV RIGHT 180"

Wait 2 EndFor

Referenzen

ÄHNLICHE DOKUMENTE

Hier kommt noch eine Aufgabe: Ergänze das Programm am Anfang (vor der For-Schleife) um weitere Anweisungen für die Eingabe der Zeitangaben für die beiden Wait-Anweisungen.

Unser Programm wird stufenweise (abhängig von den Variablen d und s) die Intensität für ROT erhöhen, dann GRÜN dazu mischen, weiters ROT wieder wegnehmen und anschließend

Versuche, den TIME-Parameter in die Send “SET SOUND-Anweisung einzubauen und vergiss nicht, eine entsprechende Wait-Anweisung vorzusehen, sodass jede Note bis zu ihrem

Du wirst diese randInt( )-Funktion mit der Formel für die Musiknoten kombinieren, um ein Programm zu erhalten, das eine Zufallsmelodie erzeugt, die auf der 2 1/ 12  

Wenn eine Variable in einem Programm nicht als local deklariert wird, dann wird sie bei Programmausführung auch im Problem geschaffen. Das kann ein manchmal vorteilhaft, sehr oft

Nimm für den Ton eine Frequenz zwischen 100 Hz und 1000 Hz (oder einen anderen Bereich deiner Wahl).. Für Musiknoten wähle für den Bereich den Startwert A1 (55 Hz) und gehe 50

Hinweis: Fahrbefehle werden sofort an den TI-Innovator TM Hub geschickt und werden dort in einer Warteschlange gereiht bis der Rover der Reihe nach für sie bereit ist.

Erinnere dich daran, dass der Zweck von eval() darin liegt, den Wert einer Rech- nervariablen oder eines Ausdrucks in eine Zeichenkette zu konvertieren und so zum TI-Innovator TM