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.
MATERIAAL
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;
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 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.