ARDUINO Werkblad 6

FOTOWEERSTAND of LDR

Als het donker wordt moet een led lampje oplichten.
Het idee erachter is als volgt:
Stel je plaatst twee even sterke lampen achter elkaar (in serie) dan deel je de spanning ook. Dus als de spanning normaal 5 volt is, dan heeft bij een serie schakeling iedere lamp nog maar 2,5 volt.Ze branden allebei even fel.
Stel je plaatst een sterke en een minder sterke lamp achter elkaar dan zal de spanning uitelkaar lopen. Bijvoorbeeld 1,5 volt en 3,5 volt (samen altijd 5 volt).
Bij een LDR of fotoweerstand verandert de weerstand naarmate er meer of minder licht op terecht komt. De Arduino is in staat om verschillende (analoge) waarden te meten. Dat gaat als volgt: bij 0 volt rekent de Arduino uit dat er 0 byte is, bij 5 volt  is dat 1024 bytes. Bij 2,5 volt is dat dus 512 bytes (1024:2)

Onder het Arduinobord vind je de analoge ingangen. Als je nu programmeert dat een stroompje op Pin 10 gaat lopen als de waarde bij de Analoge ingang onder de waarde van 512 gaat lopen dan gaat het lichtje aan bij die waarde.

MATERIAAL6
1 led
1 breadbord
1 weerstand van 200Ω
1 weerstand van 10kΩ
1 lichtgevoelige weerstand of LDR

SCHAKELING
Maak een schakeling zoals hiernaast. Voor de LDR zet je een 10kΩ weerstand (bruin-zwart-oranje). Voor de Led zet je weer een 200Ω. (daardoor verbrand de led niet)

int ingang= A0;
int LED = 10;
int sensorWaarde = 0;

 

void setup()

{

Serial.begin(9600);

pinMode (LED, OUTPUT);

}

void loop()

{

sensorWaarde =analogRead(ingang);

 

Serial.print(“Sensorwaarde = ” );

Serial.println(sensorWaarde);

if (sensorWaarde > 512 )

{

digitalWrite(LED, HIGH);

}

else

{

digitalWrite(LED, LOW);

}

delay (50);

}

ingang is poort A0
LED is poort 10
sensorWaarde is 0 wil zeggen dat we beginnen met 0 als startwaarde

Hier begint de Setup

 

met Serial begin (9600) bedoelen we dat het mogelijk wordt om de waarde van Pin 10 af te lezen op de computer

De pin LED (Pin 10) is de uitgang. 

 

Nu de loop, of te wel de programma informatie

de spanning op de LDR wordt uitgelezen en als sensorWaarde doorgegeven

sla de sensorwaarde op

druk de waarde van de sensor af via de computer

als de waarde groter is dan 512

zet de lamp aan

anders

zet de lamp uit

laat het lampje in elk geval kort branden (heel kort)

SKETCH om te gebruiken

int ingang= A0;
int LED = 10;
int sensorWaarde = 0;
void setup()
{
Serial.begin(9600);
pinMode (LED, OUTPUT);
}
void loop()
{
sensorWaarde =analogRead(ingang);
Serial.print(“Sensorwaarde = ” );
Serial.println(sensorWaarde);
if (sensorWaarde > 512 )
{
digitalWrite(LED, HIGH);
}
else
{
digitalWrite(LED, LOW);
}
delay (50);
}

TIP: er is nogal een verschil in “ aanhalingstekens. Bij ene fout de oude weghalen en opnieuw intypen.

HARDWARE

Lichtgevoelige weerstand of LDR

Een lichtgevoelige weerstand of LDR (light-dependent resistor) is een elektrische component waarvan de weerstand beïnvloed wordt door de hoeveelheid licht die erop valt.

De weerstandswaarde van een LDR wordt kleiner, naarmate de LDR sterker wordt belicht. Hierdoor kan de waarde van de weerstand sterk variëren. Het gebruikte materiaal is meestal cadmiumsulfide, de donkerweerstand bedraagt 1-10 MΩ terwijl de lichtweerstand (afhankelijk van het type en de hoeveelheid licht) 75-300 Ω is. LDR’s reageren tamelijk traag.

This entry was posted in ICT and tagged . Bookmark the permalink.

Comments are closed.