» » X1 – 09.0 Lichtsensor

X1 – 09.0 Lichtsensor

eingetragen in: X1 | 0

 

Lichtsensor

Wie ihr vielleicht schon gesehen habt haben wir den X1 mit Lichtsensoren ausgerüstet damit er "Sehen" kann. Wir werden überwiegend mit dem Lichtsensor messen ob X1 im Schatten läuft oder unter einer Lichtquelle steht. Das ist dahingehend gut das X1 nicht unter Sofas oder andere Gegenstände läuft. Fangen wir aber erstmal ganz simpel an und lassen uns einen Lichtsensor und seinen wert per Serial.print ausgeben.

Viceo-Beispiel:

 

Code-Beispiel:

void setup() {
Serial.begin(9600);
}

void loop() {
lichtTest();
}

void lichtTest(){
int lichtEins = analogRead(A0); // müssen nicht Voreingestellt werden
int lichtZwei = analogRead(A1); //Wie digitalRead
int lichtDrei = analogRead(A2);

Serial.print("LichtEins = ");
Serial.print(lichtEins);
Serial.print(", lichtZwei = ");
Serial.print(lichtZwei);
Serial.print(", lichtDrei = ");
Serial.println(lichtDrei);

delay(100);
}

 

 

 

void lichtTest(){
  int sensorWert = analogRead(A0);

  ...
}

 

 

 

 
 
 

Step 1

Wir geben dem Lichtsensor auf dem Analog-Pin 0 vom Arduino (A0) den Datentyp int und den Namen sensorWert. Wir nutzen des weiteren den Befehl analogRead um den Analogen Pin auszulesen. Im Grunde weisen wir einen Namen, Datentypen und Pin zu.

 

 

 

void lichtTest(){
  int lichtEins = analogRead(A0);
  int lichtZwei = analogRead(A1);

  int lichtDrei = analogRead(A2);

  ...
}

 

 

 

 
 
 

Step 2

Kommen wir zu der Funktion die wir in dieser Lektion schreiben, wir haben sie lichtTest genannt, und sie Testet alle 3 Lichtsensoren vom X1. Mit der Oben erklärten Syntax solltet ihr verstehen was hier passiert, wir setzen die Analogen pins 0, 1 und 2 auf analogRead und verteilen Namen und Datentyp.

 

 

 

void lichtTest(){
  ...

  Serial.print("LichtEins = ");
  Serial.print(lichtEins);
  Serial.print(", lichtZwei = ");
  Serial.print(lichtZwei);
  Serial.print(", lichtDrei = ");
  Serial.println(lichtDrei);

  delay(100);
}

 

 

 

 
 
 

Step 3

Als Nächstes geben wir uns die werte mit Serial.print aus. Auch das sollte bereits verständlich für dich sein. Am Ende setzen wir noch ein kleines delay damit man auch Zeit zum lesen der Informationen hat.

 

 

 

void loop() {
lichtTest();
}

 

 

 

 
 
 

Step 4

Zu guter letzt wollen wir natürlich wieder die lichtTest Funktion in void loop() schreiben damit sie auch ausgeführt wird.

 

Fazit

Wir haben die ersten richtigen Sensoren vom X1 verwendet und ausgegeben. Ihr habt ja schon einige sachen die ihr damit Steuern könntet, zum Beispiel könntet ihr die RGB-LED durch verschiedene werte der Lichtsensoren blinken lassen. Wie in allen Lektionen, Experimentiert ein wenig mit dem was ihr gelernt habt, und geht dann zur nächsten Lektion.
 
 
 

Bitte hinterlasse eine Antwort