Direkt zum Inhalt
Zum Ende des Inhalts
Zur Service-Navigation
Zur Suche
Zur Hauptnavigation
Zur Anmeldung/Registrierung

Homepage > Aktivitäten > Informatik > Programmieren > 1, 2, 3 ... > Klasse 4 bis 6 > 7: Reise zu einem unbekannten Planeten > Fahrzeug fernsteuern

7.1: Ein Fahrzeug fernsteuern

Autor/inn/en:
Publikation: 27.9.2016
Lernstufe: 3
Übersicht: Die Schüler wollen ein Fahrzeug fernsteuern. Sie geben dem Fahrzeug Be­fehle in einer Programmiersprache.
Angestrebte Kenntnisse:
  • Maschinen:
    • Maschinen führen Befehle (Anweisungen) aus.
  • Programmiersprachen:
    • In der Informatik erfindet und benutzt man Programmiersprachen.
    • Mit einer Programmiersprache kann man einer Maschine Anweisungen geben.
    • Eine Programmiersprache unterscheidet sich von normaler Sprache:
      • Sie hat meist entschieden weniger Worte und Grammatikregeln.
      • Sie ist grundsätzlich eine Befehlssprache; ihre Befehle, Fragen und Antworten sind stets eindeutig.
      • Bestimmte Maschinen "verstehen" bestimmte Programmierspra­chen.
    • Es gibt zahlreiche Programmiersprachen. Die Anwendung bestimmt, wel­che Programmiersprachen in Frage kommen.
    • Ein Bug ist ein Fehler im Programm.
Wortschatz: Programmiersprache, Befehl/Anweisung, Bug (sprich: Bagg)
Dauer: 1 Stunde 30 Minuten (oder zwei Mal 45 Minuten)
Material: Für die Klasse:
Herkunft: La main à la pâte, Paris

Ausgangssituation und Vorstellung des Projekts

In diesem Projekt soll eine Weltraummission zur Erforschung eines fernen Pla­ne­ten simuliert werden. So eine Weltraummission will gut geplant werden. In die­ser Unterrichtseinheit sollen sich die Schüler zunächst überlegen, wie man sich auf einem lebensfeindlichen Planeten fortbewegen und miteinander kom­munizieren kann. In der nächsten Unterrichtseinheit (Die Weltraummission mit Scratch simulieren) wer­den die Schüler dann ein kleines Videospiel program­mieren, das die Weltraum­mission simuliert.

Das Forscherteam hat auf dem Planeten bereits eine Basisstation installiert und bewegt sich mit Hilfe eines Rovers fort (ein Landfahrzeug, das einem Auto ähnelt). Wegen der lebensfeindlichen Umgebung muss bei einem Außeneinsatz aus Sicherheitsgründen immer ein Mitglied des Forscherteams in der Basissta­tion bleiben. Wenn die Forscher im Außeneinsatz nicht mehr in der Lage sind, den Rover zu steuern (weil sie zum Beispiel das Bewusstsein verloren haben), muss die Person in der Basisstation den Rover fernsteuern können, notfalls ohne mit den Insassen zu reden. Die Steuerungsbefehle werden per Funk an den Rover übertragen. Es muss daher eine Sprache entwickelt werden, in der man die Steuerungsbefehle geben kann. Die Frage, die sich stellt, ist: "Welche Sprache sollte man für die Fernsteuerung des Rovers verwenden?"

Die Lehrerin projiziert das Arbeitsblatt 28 (Ein Fahrzeug fernsteuern) an die Wand. Es stellt das Gebiet dar, in dem der Rover heute unterwegs ist. Einge­zeichnet ist die aktuelle Position des Rovers sowie der Rückweg zur Basissta­tion. Der Rover muss unbedingt dem eingezeichneten Weg folgen, um Gefah­renzonen zu umfahren. Er darf auch keine Abkürzungen nehmen.

Recherchearbeit: Definition von Sprache (in Zweiergruppen)

Die Lehrerin verteilt an jede Zweiergruppe ein Exemplar des Arbeitsblattes 28. Die Schüler sollen die Befehle aufschreiben, die man dem Rover geben muss, damit er entlang des roten Weges zur Basisstation fährt. Der Rover kann sich nur vorwärts, rückwärts oder seitwärts von Kästchen zu Kästchen fortbewe­gen, nicht diagonal.

Fahrzeug und Basisstation auf einem Gitter

Abb. 1: Der Weg des Rovers zurück zur Basisstation

Gemeinsame Erörterung

Nach ein paar Minuten kommt die Klasse zusammen. Das Arbeitsblatt wird an die Wand projiziert oder das Gitter samt Parcours an die Tafel gezeichnet (Abb. 2). Eine Schülergruppe nach der anderen kommt nach vorn und präsen­tiert ihre Lösung. Die Klasse überprüft, ob diese richtig ist: Ein Schüler nimmt einen Gegenstand, der den Rover repräsentieren soll, und bewegt ihn, strikt den Anweisungen folgend, auf dem Gitter.

Die Schüler werden feststellen, dass es (mindestens) zwei sehr unterschiedli­che Möglichkeiten gibt, dem Rover Richtungsanweisungen zu geben: Man kann ihm absolute Richtungsanweisungen geben (fahre nach Norden, nach Westen usw.) oder relative Richtungsanweisungen, das heißt solche, die von der Orien­tierung des Rovers abhängen (fahre vorwärts, nach rechts, rückwärts).

Anmerkung: Es ist besser, aus der Anweisung "fahre ein Kästchen weiter nach rechts" zwei getrennte Anweisungen zu machen: "drehe dich nach rechts" (an Ort und Stelle!) und "rücke um ein Kästchen vor".

Der Parcours des Fahrzeugs an der Tafel

Abb. 2: Der Parcours des Fahrzeugs an der Tafel [1]

Pädagogische Anmerkungen

  • Schaut man aus einer allozentrischen Perspektive auf das Geschehen, wird man absolute Richtungsanweisungen (Norden, Westen) geben. Aus einer selbstzentrierten (oder egozentrischen) Perspektive gibt man re­la­tive Richtungsanweisungen (rechts, links).
  • Die Schüler müssen diese Begriffe nicht kennen. Es ist auch nicht das Ziel dieser Unterrichtsstunde, die beiden Sichtweisen zu unterscheiden, die Schüler sollen sich den Unterschied nur einmal klargemacht haben.
  • Es gibt noch eine Methode, Richtungsanweisungen zu geben. Man kann den einzelnen Kästchen Koordinaten zuordnen: A1, A2, B1 usw. Ähnlich wie bei dem Spiel "Schiffe versenken" kann man das Start-Kästchen und das Ziel-Kästchen benennen. Beispiel: "Gehe von A1 nach A2!".

Falls die Schüler nicht bereits selbst auf diese zwei unterschiedlichen Arten von Richtungsanweisungen gekommen sind, erwähnt die Lehrerin während dieser ge­meinsamen Erörterung diejenige, die nicht genannt wurde.

Verschiedene Beispiele, wie man einen Weg beschreiben kann

Abb. 3: Verschiedene Beispiele, wie man einen Weg beschreiben kann [1]

Die Lehrerin stellt fest: Für die Richtungsanweisungen wird ein begrenzter Wort­schatz verwendet, der allerdings sehr präzise ist und keinen Raum für Missverständnisse lässt. Jede Anweisung ist eindeutig und kann nicht anders interpretiert werden.

Diese Sprache kann noch weiter vereinfacht werden. Man muss zum Beispiel nicht unbedingt "fahre nach Osten" sagen, oder "fahre nach rechts", es würde auch reichen zu sagen: "Osten" und "rechts". Dazu muss man nur im Vorhinein eindeutig definiert haben, was diese Befehle bedeuten: "rechts" bedeutet zum Beispiel "drehe auf der Stelle um eine Vierteldrehung nach rechts" und nicht "gehe um ein Kästchen nach rechts".

Die Klasse bestimmt und definiert den benötigten Wortschatz – sowohl für die absoluten als auch für die relativen Richtungsanweisungen.

Absolute Richtungsangaben Relative Richtungsangaben
  • Norden (= rücke um ein Kästchen nach Norden vor)
  • Süden
  • Osten
  • Westen
  • vorwärts (= rücke geradeaus um ein Kästchen vor)
  • rechts (= drehe auf der Stelle um eine Vierteldrehung nach rechts)
  • links

Für die absoluten Richtungsanweisungen braucht man vier Wörter, für die rela­tiven Richtungsanweisungen nur drei. Die Schüler werden womöglich anmer­ken, dass man auch "rückwärts" hinzufügen könnte. Dem kann man entgegnen, dass man anstatt "rückwärts", "rechts, rechts, vorwärts" sagen könnte. Man landet in beiden Fällen auf dem gleichen Kästchen. Allerdings hat im zweiten Fall der Rover seine Richtung geändert. Soll er in die gleiche Richtung schauen, ist der äquivalente Befehl zu "rückwärts": "rechts, rechts, vorwärts, rechts, rechts".

Bei den relativen Richtungsanweisungen könnte man sogar mit zwei Befehlen auskommen, da man "links" auch durch "rechts, rechts, rechts" ersetzen könnte. Der Übersichtlichkeit halber sollte man allerdings mit drei oder vier Wörtern arbeiten.

Die Lehrerin macht die Schüler darauf aufmerksam, dass auch die Grammatik sehr einfach ist. Es gibt weder Geschlecht (Maskulin, Feminin, Neutrum), noch Mehrzahl, noch Kasus, noch Zeitform. Die einzige Regel lautet: Wenn zwei Anweisungen im Programm hintereinander stehen, werden sie der Reihe nach ausgeführt. Beispiel: "rechts, vorwärts" bedeutet: Drehe dich erst nach rechts und rücke anschließend um ein Kästchen vor.

Man kann beschließen, Kommas zwischen den Befehlen zu schreiben (das ist übersichtlicher), man kann sie aber auch weglassen.

Die Schüler werden anmerken, dass man sich mit diesen Befehlen nur auf ei­nem Gitter bewegen kann, man kann mit ihnen keinen Text schreiben und auch keine Rechenaufgaben lösen. Programmiersprachen sind oft sehr spezialisiert. Die Lehrerin kann das Beispiel der "Befehle" in der Musik anbringen – die Noten eines Lieds zum Beispiel. Auch dafür gibt es nur wenige Wörter/Symbole, wenig Grammatik und keine Zwei­deu­tigkeiten.

Achtung Fehler!

Die Lehrerin fragt die Schüler, was passiert, wenn sich ein Fehler ins Programm schleicht – man zum Beispiel eine Anweisung vergisst. Nehmen wir ein konkre­tes Beispiel: Wir kommen auf das Programm für den Parcours des Rovers im Arbeitsblatt 28 zurück. Wenn wir im Programm eine Anweisung weglassen, wer­den wir – egal ob mit absoluten oder mit relativen Richtungsanweisungen – nicht an der Basisstation ankommen. Mit relativen Richtungsanweisungen kann man übrigens weiter weg vom Ziel landen als mit absoluten Richtungsanwei­sungen.

Ob man nun absolute oder relative Richtungsanweisungen benutzt: In beiden Fällen führt das Auslassen einer Anweisung zu einem Fehler im Programm. Ein Fehler im Programm nennt man auch Bug (sprich: Bagg). In beiden Fällen wird das Ziel (die Basisstation) nicht erreicht. Wenn der Rover auf gefährlichem Ge­lände unterwegs ist, darf man sich auf gar keinen Fall irren, nicht mal ein ganz kleines bisschen. Ob der Fehler groß oder klein ist, ist irrelevant, es bleibt ein (eventuell folgenschwerer) Fehler.

Die Klasse diskutiert über mögliche Fehlerquellen. Es kann ein Fehler im Algo­rithmus sein (die Methode funktioniert so nicht), es kann ein Fehler im Pro­gramm sein (d. h. in der Übersetzung des Algorithmus in die gewählte Pro­grammiersprache , ein Syntaxfehler zum Beispiel), oder es kann ein Fehler der Maschine (des Computers) sein (weil zum Beispiel ein Bauteil kaputt ist oder eine Anweisung nicht weitergeleitet werden konnte).

Pädagogische Anmerkung

Zum Wort "Bug" für Programmfehler gibt es eine nette Anekdote. Das Wort wurde schon länger von Ingenieuren als Synonym für "Fehler" benutzt. Die Wortschöpfung geht wahrscheinlich auf Thomas Edison zurück. Im Jahr 1947 fand ein Mitarbeiter der US-amerikanischen Informatikerin Grace Hopper ein echtes Insekt (engl. Bug), eine tote Motte, in einem Computer. Diese Motte hatte verhindert, dass ein Relais ordnungsgemäß funktionierte.

Zusammenfassung

Die Schüler fassen zusammen, was sie in dieser Unterrichtsstunde gelernt haben.

Beispiel:

  • In der Informatik erfindet und benutzt man Programmiersprachen.
  • Mit einer Programmiersprache kann man einer Maschine Anweisungen geben.
  • Eine Programmiersprache unterscheidet sich von normaler Sprache:
    • Sie hat nur wenige Worte und Grammatikregeln.
    • Es gibt keine Zweideutigkeiten.
  • Es gibt zahlreiche Programmiersprachen. Die Anwendung bestimmt, welche Programmiersprachen in Frage kommen.
  • Ein Bug ist ein Fehler im Programm.
  • Ein klitzekleiner Bug kann manchmal große Auswirkungen haben.

Die Lehrerin bereitet ein Plakat mit dem Titel "Was ist Informatik?" vor. Dieses Plakat wird im Laufe der Unterrichtseinheit nach und nach vervollständigt (mit den Begriffen Sprache, Algorithmus, Programm, Maschine, Information usw.).

Mögliche Erweiterung (für die Sekundarstufe I)

In Zweiergruppen können die Schüler zwischen absoluten und relativen Anwei­sungen hin und her "übersetzen".


Fußnote

1: Abb. 2: 4. Klasse von Carole Vinel (Paris)
Abb. 3: 5. Klasse von Anne-Marie Lebrun (Bourg-la-Reine)

Letzte Aktualisierung: 17.1.2017

Allgemeine Informationen Alphabetischer Index Sitemap Häufig gestellte Fragen La main à la pâte

Anmeldung

Passwort vergessen?

Registrieren