Teach-Modus

2.1 Teach-Modus in der Handsteuerung:
Teachin Modus 2.1.1 Teach-Modus ein-/ausschalten
Zuerst muss in beiden Versionen (zumindest ist es sinnvoller) eine Karte geladen werden. Wie das geht haben wir in Kapitel 1 bereits besprochen. Und wieder geht das Ganze in zwei Unterschiedliche Vorgänge für die beiden Versionen auf. Zuerst die MS-DOS-Version:
In der Handsteuerung muss man einfach die Taste [T] für teach drücken. In der "Menüleiste" sieht man dann rechts teach: ein stehen. Das war es schon.
In der Windows-Version muss man nach dem Laden der Karte ins Menü Start gehen. Dort befindet sich der Eintrag Teachin Modus, den man anklickt. Es erscheint ein kleines Fenster (links dargestellt). Um diesen Modus jetzt zu starten, muss man auf Sequenz aufzeichnen klicken. Die vier Standard-Schaltflächen sind dann bereit, gedrückt zu werden. Alle weiteren Schaltflächen werden später verwendet und erklärt.

2.1.2 Sinn vom Teach-Modus
Wer das letzte Kapitel gelesen und mit NIKI durchgearbeitet hat, weiß, dass viel Drück- bzw. Klickarbeit erforderlich war, um das Ziel von NIKI zu erreichen. Angenommen, man wolle präsentieren, was man geleistet hat. Dann müsste man immer wieder aufs Neue klicken und drücken. Aber zum Glück haben wir hier die Rechnung noch ohne den Wirt gemacht. Denn dieser Wirt war, wie viele Programmierer, faul. Mit dem Teach-Modus können wir speichern, was wir gemacht haben (--> "Musst du etwas mehr als einmal machen, schreibe ein Programm dafür.", Autor unbekannt). So können wir immer wieder NIKI ein und dasselbe tausende Male machen lassen, ohne wirklich viel zu tun. Wir werden uns aber noch später damit beschäftigen, dass auch der Teach-Modus nicht wirklich flexibel ist. Aber dazu später erst mehr.
Am besten ist es, jetzt einmal unser feld lager1.rob mit eingeschaltetem Teach-Modus durchzugehen. Also: Teach-Modus einschalten und fleißig klicken bzw. drücken! Wenn NIKI wieder an der Startposition ist, muss man den Teach-Modus wieder abschalten (mit erneutem Druck auf [T] bzw. auf Aufzeichnung beenden). In der MS-DOS-Version wird sofort gefragt, als was man das ganze Speichern will. Es handelt sich um ein Programm, also ein beherzter Druck auf [P]. Die Bestätigungsmeldung erwartet, dass danach die [Leertaste] gedrückt wird. In der Windows-Version muss man auf Speichern klicken und dann den Speichern-Dialog wie gewohnt von allen Windows-Anwendungen betätigen. Hier gibt es nur die Möglichkeit, als Teachin-Sequenz zu speichern.

2.2 Teach-Modus verwenden:
2.2.1 Gespeicherten Quellcode ausführen lassen
Nachdem man den Weg von NIKI gespeichert hat, kann man ihn auch ausführen lassen. Dieses Phänomen wird in NIKI als Run bezeichnet. Falls Sie den Teach-Modus nicht ausgeführt haben sollten (was schade ist), gibt es in unserem Downloadbereich die Teachin-Sequenzen für lager1.rob zum kostenlosen Herunterladen (bitte die Versionen beachten).
Zurück zum Thema: Wenn wir in der MS-DOS-Version das eben gespeicherte ausführen lassen wollen, müssen wir zuerst die Handsteuerung durch Druck auf [Q] verlassen. Das Feld lager1.rob ist weiterhin geladen. Jetzt kommen wir endlich in den oberen Teil von NIKI, der Roboterprogramm genannt wurde. Hier müssen wir zuerst einmal unser Programm laden (LOAD). Das geht genauso wie das Laden einer Karte. Danach gehen wir auf Run. Wie gesagt wird durch Druck auf [Enter] jetzt das Programm gestartet. Vorher kommt noch die Meldung, dass keine Fehler gefunden wurden. Jetzt erwartet NIKI, dass wir eine Geschwindigkeit festlegen (siehe oben rechte Ecke im Programm). Je nach Schnelligkeit des Computers kann es vorkommen, dass man bei diesem kleinen Programm schon bei Geschwindigkeit 1 nichts sieht. Daher sollte man erstmal die Geschwindigkeit auf 0 setzen. Um jetzt Einzelschritte machen zu lassen, muss man [Enter] drücken. Hält man es gedrückt, läuft NIKI von alleine. Natürlich kann man die Geschwindigkeit variieren, ausprobieren hilft immer. Während das Programm ausgeführt wird, kann man mit [+] und [-] die Geschwindigkeit anpassen.
In der Windows-Version geht das Ganze wesentlich einfacher: Hier muss man einfach nur auf Sequenz starten klicken und schon läuft NIKI los. Die Geschwindigkeit lässt sich im Feld NIKI Info verändern, wobei 40 ein gesundes Mittelmaß darstellt.

2.2.2 Quellcode anzeigen lassen
Jetzt will der Programmierer natürlich wissen, was er (nicht) geleistet hat. Dazu muss er den Quellcode betrachten. In der MS-DOS-Version muss man aber zuerst den Run-Modus beenden ([Leertaste]). Danach ist man wieder im Start-Menü und muss dann weiterhin im Untermenü Roboterprogramm den Eintrag Edit anwählen (ganz links). Wie immer mit [Enter] bestätigen und schon ist man in der Entwicklerumgebung (gelbe Schrift auf blauem Grund). Hier sieht man jetzt auch den Quelltext, den NIKI für uns geschrieben hat.
In der Windows-Version ist das Laden einer Teachin-Sequenz etwas schwerer als normal. Im Menü Datei befindet sich der Eintrag Datei öffnen..., den man wählen muss. Es öffnet sich der Öffnen-Dialog. Hier muss man jetzt aber erst als Dateityp Alle Dateien festlegen. Danach sucht man das Programm mit der Endung .tip und öffnet es. Und dann wird nicht mal der sinnvollste Quellcode angezeigt, sondern nur eine Prozedur, aber das ist nicht weiter wichtig. Der Hauptteil stimmt mit dem der MS-DOS-Version überein.

2.2.3 Nachvollziehen des Quellcodes
Da der Hauptteil des Quellcodes in deutscher Sprache ist, kann man ihn relativ leicht verstehen. Dennoch sind zu Beginn und Ende des Textes noch ungeklärte Dinge. In der MS-DOS-Version beginnt alles mit
PROGRAM lager1;
BEGIN

Hier wird deutlich, dass es sich um ein Programm handelt (im Englischen ohne zweites m geschrieben). Darauf folgt der Name des Programms und ein Semikolon (;). Dann kommt eines der wichtigsten Worte in Programmiersprachen: BEGIN. Hier wird dem Compiler (was das ist, kommt später) klar gemacht, dass hier der Hauptteil, sozusagen der Rumpf des Programms kommt. Ganz am Ende des Quellcodes befindet sich das zweite Schlüsselwort END., wobei gleich etwas auffallen sollte: hinter END steht kein Semikolon, sondern ein Punkt! Das bedeutet, dass hier das gesamte Programm beendet ist. In einem späteren Kapitel werden wir noch sehen, dass es auch innerhalb des Programms vorkommen kann, dass ein END mit Semikolon gesetzt werden muss.
Nun zur Windows-Version: hier beginnt alles mit {$ D- }. Zu meiner eigenen Enttäuschung muss ich zugeben, dass ich nicht weiß, warum diese Zeile dort steht und was sie bedeutet. Wie eben schon angedeutet, haben wir hier kein Programm wie in der MS-DOS-Version vorliegen, sondern eine reine Prozedur. Das kommt etwas ungelegen, da dieses Kapitel jetzt noch nicht hätte angeschnitten werden sollen. Am (eigentlichen) Beginn der Prozedur steht:
Procedure lager1.tip;
Begin

Darauf folgen die Befehle und beendet wird alles mit einem End; {$ D= }, wobei ich auch hier nicht weiß, was das {$ D= } zu bedeuten hat. Hinter dem End steht jetzt, im Gegensatz zum Programm, ein Semikolon statt eines Punktes. Wie gesagt werden wir das später erklären.
Der restliche Quellcode erklärt sich eigentlich von selbst. Hier wird alles angezeigt, was wir per Hand mit Maus oder Tastatur NIKI haben machen lassen. Hinter jedem Befehl steht ein Semikolon. Dieses Zeichen wird uns noch sehr oft begegnen, auch in anderen Programmiersprachen, wie z.B. Object-Pascal (Delphi) oder PHP. Das Semikolon sagt dem Compiler, dass der Befehl endet. A propos Compiler: wie versprochen kommt jetzt eine kleine Erklärung:

2.3 Was ist ein Compiler?:
2.3.1 Der Compiler
Am Anfang der Programmierung war alles schwerer. Ein Computer versteht leider nichts von Buchstaben, er kann nur Zahlen verstehen (hauptsächlich Einsen und Nullen). Daher gibt es die so genannte Maschinensprache. In dieser hoch komplexen Sprache wurde zu Beginn nur programmiert, d.h. es wurden nur Zahlencodes eingegeben. Nach einiger Zeit entstand daher die Assemblersprache, um die Verständlichkeit zu erhöhen. Jedoch wurde schon nach kurzer Zeit der Ruf nach einer Programmiersprache laut, die der menschlichen Sprache zumindest etwas angepasst ist. Es entstanden Programmiersprachen wie Ada, Fortran, Basic, C, Pascal, etc. Der Compiler ist ein Programm, welches das vorliegende Programm in den oben genannten Maschinencode übersetzt. Der Übersetzungsvorgang wird als compilieren bezeichnet. Klar soweit?

Übrigens: Um in der MS-DOS-Version aus dem Editor wieder herauszukommen, muss man [F10] oder wahlweise auch [Strg] + [K] + [D] drücken. danach kann man NIKI wie gewohnt verlassen. Eventuelle Fragen auf das Speichern sollten verneint werden.