1.2.12. fejezet, Fényérzékelés, közeledés érzékelés

Használt alkatrészek

  • LDR03 (téli napfényes időben 100-120 Ohm, téli borus időben 450 Ohm - 1.5 kOhm, beltéri világításnál 13-15 kOhm, teljes sötétségben >1500-2000 kOhm)
  • 9kOhm ellenállás

Forráskód

const int analogInPin = A0;  // Analog input pin that the LDR is attached to
const int analogOutPin = 9; // Analog output pin that the LED is attached to
 
int sensorValue = 0;        // value read from the pot
int outputValue = 0;        // value output to the PWM (analog out)
 
void setup() {
  // initialize serial communications at 9600 bps:
  Serial.begin(9600);
}
 
void loop() {
  // read the analog in value:
  sensorValue = analogRead(analogInPin);
  // map it to the range of the analog out:
  outputValue = map(sensorValue, 0, 1023, 0, 255);
  // change the analog out value:
  analogWrite(analogOutPin, outputValue);
 
  Serial.print("sensor = ");
  Serial.print(sensorValue);
  Serial.print("\t output = ");
  Serial.print(outputValue);
 
  // unsigned int R1 = 9000;
  // float Vmax = 4.73;
  //float Va0 = (Vmax * (float)R1/(float)(R1+R2));
 
  char buffer[16];
  dtostrf((float)sensorValue,5,2,buffer);
  Serial.print("\t Va0 = ");
  Serial.println(buffer);
 
  delay(2);
}

A senzorValue értéke a R2-n (LDR) eső feszültséget méri a gnd-hez képest, és adja vissza 0-1023-ig terjedő tartományban. A mérések alapján a Va0 téli napfényes időben 4.7 - 0.07 = 4.63 V (nagyon kicsi feszültségesés, sensorValue = 980 - 1005), borús időben vagy árnyékolással 4.7 - 0.4 = 4.3 V (4.7 - 0.7 = 4.0 V)(sensorValue = 620 - 940), szürkületkor 4.7 - 1.3 = 3.4 V (sensorValue = 160 - 280), beltéri világításnál 4.7 - 2.9 = 1,8 V körül alakul (sensorValue = 320 - 420).

Hasonló projektek