KaufenHäufig gestellte FragenNXT 2.0CodeschnipselLinks

Roboter programmieren mit NXC für LEGO MINDSTORMS NXT

2. Auflage 2010, Softcover
384 Seiten, Format 17,0 x 24,0
ISBN 978-3-8266-9064-8
€ 34,95

NXC ist eine Programmiersprache, die speziell für den Lego Mindstorms NXT entwickelt wurde. Veröffentlicht wurde die Programmiersprache im Jahr 2007 von John Hansons. Mit  NXC ist es möglich, den NXT noch effektiver zu nutzen, da die Sprache mehr  Möglichkeiten bietet als NXT-G.

Mit dem NXT 2.0 führt LEGO einen Farbsensor ein, der den bisher mitgelieferten Lichtsensor ersetzt.

Funktionsweise

Der Farbsensor verfügt, im Gegensatz zum Lichtsensor, über drei LEDs in den Farben Rot, Grün und Blau. Da sich die drei Farben mischen erscheint das Licht weiß. Je nachdem, welche Farbe wie stark reflektiert wird, kann der Sensor Rückschlüsse über die Farbe des Untergrunds ziehen.

Programmierung

Wie bei jedem anderen Sensor muss erst festgelegt werden, an welchem Eingang der Farbsensor angeschlossen ist. Dazu dient der Befehl:

SetSensorColorFull(IN_X);

wobei X natürlich durch den entsprechenden Eingang ersetzt werden muss. Der Wert des Sensor kann dann wie beim Tastsensor abgerufen werden:

int x = SENSOR_X;

Wobei x für die verschiedenen Farben folgende Werte annimmt:

Wert Farbe
1 Schwarz
2 Blau
3 Grün
4 Gelb
5 Rot
6 Weiß

Darüber hinaus können die drei LEDs des Farbsensors auch einzeln angesprochen werden und somit verschiedene Farben erzeugt werden. Die Befehle zum ansteuern der LEDs lauten:

SetSensorColorRed(IN_X);

für die rote LED und entsprechend:

SetSensorColorGreen(IN_X);
SetSensorColorBlue(IN_X);

für die grüne und die blaue LED. Außerdem besteht auch die Möglichkeit, alle LEDs auszuschalten, hierzu dient folgender Befehl:

SetSensorColorNone(IN_X);

Ein entsprechendes Beispielprogramm finden Sie bei den Codeschnipsel.