Programmieren von LegoMindstorms-Robotern mit NQC
Programmieren von LegoMindstorms-Robotern mit NQC
Programmieren von LegoMindstorms-Robotern mit NQC
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
13.3. Speichern <strong>von</strong> Informationen<br />
Der RCX kann Werte <strong>von</strong> Variablen, Sensoren und Timern speichern. Dies geschieht in einem Speicherbereích des RCX,<br />
der “datalog” genannt wird. Die Werte im datalog können leider nicht innerhalb des RCX verwendet werden, aber sie<br />
können durch deinen Computer gelesen werden. Dieses hilft dir, wenn du überprüfen möchtest, was in deinem Roboter<br />
vorgeht. Das RCX Command Center hat ein spezielles Fenster, in dem du den aktuellen Inhalt des datalog ansehen kannst.<br />
Um den Datalog zu verwenden, benötigst du drei Schritte:<br />
• Zuerst muß das <strong>NQC</strong>-Programm die Größe des datalog <strong>mit</strong> dem Befehl CreateDatalog() definieren. Dieses löscht<br />
auch den aktuellen Inhalt vom datalog.<br />
• Als nächstes können Werte in den datalog <strong>mit</strong> dem Befehl AddToDatalog() geschrieben werden. Die Werte<br />
werden einer nach dem anderen geschrieben. Wenn du das Display des RCX betrachtest, siehst du wie rechts neben der<br />
Programmnummer nacheinander die vier Viertel eines Kreises erscheinen. Wenn der Kreis komplett ist, ist der datalog<br />
voll. Wenn das Ende des datalog erreicht wird, geschieht nichts mehr. Neue Werte werden nicht mehr gespeichert.<br />
• Im dritte Schritt laden wir den datalog in den PC. Wähle dafür im RCX-Command Center den Befehl Datalog im<br />
Menue Tools (engl. = Werkzeuge, Hilfs<strong>mit</strong>tel). Betätige dort die Taste “upload” um die Werte aus dem Datalog des<br />
RCX anzuzeigen.<br />
Den datalog kannst du aber auch für andere Zwecke verwenden. Findige Lego-Mindstorms-Programmierer haben ihn<br />
schon verwendet um da<strong>mit</strong> eine Scanner zu bauen.<br />
Hier ist ein einfaches Beispiel, <strong>mit</strong> dem du die Veränderung der Helligkeit in deinem Zimmer erfassen kannst. Das<br />
Progamm läuft 20 Sekunden. Die Werte des Lichtsensors werden fünfmal pro Sekunde in den datalog geschrieben.<br />
Da<strong>mit</strong> kannst du beispielsweise das Einschaltverhalten einer Energiesparlampe <strong>mit</strong> dem einer Glühbirne vergleichen.<br />
task main()<br />
{<br />
SetSensor(SENSOR_2,SENSOR_LIGHT);<br />
OnFwd(OUT_A+OUT_C);<br />
CreateDatalog(50);<br />
repeat (50)<br />
{<br />
AddToDatalog(SENSOR_2);<br />
Wait(20);<br />
}<br />
Off(OUT_A+OUT_C);<br />
}