Naar Arduino hoofdpagina

Infrarood afstandsmeters en schakelaars

Voor de prijs hoef je het niet te laten: infrarood afstandsmeters. Ik testte een aantal voor verschillende bereiken. Verder testte ik een aantal zelfgemaakte afstandsmeters en schakelaars. Een fotodiode voor infrarood is zwart, zodat er geen zichtbaar licht doorheen komt. Een led die infrarod licht uitstraalt is transparant, maar soms met een lichtblauwe tint, zodat je deze goed kunt onderscheiden van witte leds. Er zijn twee veel voorkoende golflengtes die gebruikt worden: 850 nm en 940 nm. Beide frequenties liggen dicht bij het zichtbare licht, zodat er geen speciale lenzen en dergelijke nodig zijn. Houd er rekening mee dat een infrarood afstandsmeter nooit erg nauwkeurig zal zijn, omdat de meting afhangt van de mate van reflectie van de voorwerpen. Zo zullen zwarte voorwerpen minder reflecteren en spiegelende voorwerpen meer. Je kunt infrarood afstandsmeters ook gebruiken als nabijheidsschakelaar, door in je programma te testen of het signaal hoger of lager is dan een zekere grenswaarde.
Je kunt er niet vanuit gaan dat het maximale bereik overeenkomt met 5 volt en het minimale met 0 volt (of omgekeerd); bepaal de schakelspanning dus in een test. Je kunt sensoren voor grote bereiken herkennen aan de grote afstand tussen de led en de fotodiode. LET OP: een infrarood afstandssensor werkt niet als het voorwerp dichtbij is. Bij afstandssensoren voor grote afstanden is die "dode" afstand ook erg groot. Als je dus zowel grote als kleine afstanden wilt meten dan moet je setjes gebruiken voor de verschillende afstanden en deze niet te dicht bij elkaar plaatsen. Je vindt op deze pagina informatie over de commerciële infrarood afstandmeters die ik getest heb, daarna zelfbouw afstandsmeters en vervolgens andere toepassingen.

Bereik 0,2 tot 6 cm: de TCRT5000

De TCRT5000
Aansluitschema
Deze sensor heeft een lichtblauwe infrarood led, en een zwarte fototransistor. De kunststof lipjes aan de zijkant van de TCRT5000 dienen er voor om de sensor gemakkelijk in een rechthoekig gat te kunnen klikken. Deze sensor heeft vier aansluitpinnen, maar omdat een bijschrift ontbreekt is niet meteen duidelijk hoe je deze moet aansluiten. Hiernaast zie je een bovenaanzicht: je kunt de beide pootje aan de onderkant met elkaar vebinden en aan aarde leggen. De infrarood led sluit je via een weerstand van enkele honderden ohms aan op 5 volt. De andere poot van de fotodiode (C) sluit je via een grote weerstand van 100 kΩ aan op GND. Men adviseert vaak 5 of 10 kΩ, maar bij het type dat ik heb werkt 100 kΩ beter. Het signaal haal je af van het pootje van de fotocel dat verbonden is met de weerstand. Sluit dit signaal aan op een van de analoge ingangen van de Arduino. Test of bij grote afstand de uitslag 5 volt is (analogRead(A0) geeft dan ongeveer 1000 aan) en bij korte afstand vrijwel nul. Zo niet dan kun je eventueel de weerstanden aanpassen. De minimale detectieafstand is 2 mm. Hieronder staat een test programma.
void setup() {
  Serial.begin(9600);
}

void loop() {
  Serial.println(analogRead(A0));
  delay(500);
}
Een set van twee of drie van deze sensoren zijn ook erg geschikt als sensoren om donkere lijnen te kunnen volgen. Lees verderop hoe je dat kunt doen.

Bereik 0,2 m tot 1,5 m: de Sharp GP2Y0A02

Deze module is makkelijk te gebruiken. Sluit de middelste draad aan op GND en de rechter (van de voorkant gezien) op VCC (bij mijn module is die draad rood gekleurd). De linker draad is de sensor; sluit deze aan op A0. Hoe groter de afstand, hoe lager het signaal is. Als je hem alleen als sensor wilt gebruiken dan kun je een regel opnemen als
  if (analogRead(A0) > 128) Serial.println("Object dichtbij");
De waarde 128 komt bij mij overeen met ca. 50 cm, maar dat kan bij jou anders zijn en het hangt ook af van wat voor soort voorwerp gedetecteerd wordt.

Bereik 1 m tot 5,5 m: Sharp 2YOA710 F

Je moet even weten hoe je deze sensor aansluit, maar dan werkt hij goed zolang er geen voorwerpen dicht bij de sensor staan. Omdat de bundel vrij breed is krijg je dan ongewenste waarden. Bij de grootste afstanden moet je een aantal metingen doen en die middelen. Je sluit de twee buitenste draden aan op GND. Van achteren gezien, met de connector boven: de tweede draad van links is de sensordraad, die gaat naar een analoge pin zoals A0. De derde en vierde draad sluit je beide aan op VCC. Als je voorwerpen op een grote afstand wilt detecteren overweeg dan de TOF10120 sensor. Je kunt dan een (of meerdere) nauwkeurige drempel(s) instellen en hebt niet het nadeel van foute metingen als er voorwerpen dichtbij zijn.

Zelfbouw IR afstandsmeters en schakelaars

schemaIR afstand meetsysteem
Je kunt voor heel weinig geld setjes met tientallen IR leds en IR fotodiodes kopen. Hiermee kun je je eigen afstandsmeters of schakelaars maken. Zo'n eigen sensor laat zich gemakkelijk inbouwen op een kleine ruimte en je kunt zelf het gewenste bereik bepalen. Als je de led en de fotodiodes los van elkaar bestelt, let er dan op dat ze dezelfde frequentie gebuiken, dan werken ze het best.

Afstand meten/nabijheidsschakelaar.

Sluit de IR diode (dat is de doorzichtige) via een weerstand van rond de 300 Ω aan op VCC. De juiste weerstandswaarde hangt af van het type diode. Schakel de fotodiode (de zwarte) andersom aan, dus de korte poot op VCC. Sluit de andere poot via een grote weerstand aan op GND. Ik heb 39 kΩ gekozen. Je kunt nu het lichtniveau meten op de lange poot van de diode. Zie ook het schema. Zoals de diode hier is aangesloten betekent een hoge waarde dat de diode veel licht binnenkrijgt, dus zal een voorwerp dicht bij zijn. Als je het andersom wilt hebben dan moet je de weerstand en de fotodiode omwisselen (of het schema van de TCRT5000 gebruiken). Je kunt in de software zelf een schakelmoment instellen. Mijn setje schakelt bij ongeveer 10 cm. Houd er rekening mee dat (indirect) zonlicht heel veel infrarood licht bevat, dus verduister zo nodig de ruimte waarin je werkt.
schemaIR afstand meetsysteem schema
Als je sensor niet werkt controleer dan met je webcam of fototoestel of de led infrarood licht uitstraalt.

Lichtpoortje

Voor deze schakeling sluit je de diodes hetzelfde aan als bij de nabijheidsschakelaar. Het verschil is nu dat je de led en de fotodiode tegenover elkaar zet. Zorg dat de fotodiode voldoende signaal krijgt. Hiertoe moet je de diode en de fotodiode nauwkeurig uitlijnen, vooral bij grote afstanden. Als de lichtstraal wordt onderbroken, dan zal het signaal kortstondig van hoog naar laag gaan. Om te voorkomen dat dit gemist wordt door je programma, moet je een interrupt functie gebruiken. Als je liever geen interrupt functies gebruikt, dan zul je extra elektronica moeten gebruiken. Eventueel kun je een kokertje om de fotodiode plaatsen, zodat je minder last hebt van strooilicht. Het lichtpoortje reageert zo supersnel.

Lijnvolger

Met twee of drie led/detector paren kun je een uitstekende lijnvolger maken. Om strooilicht te voorkomen kun je de diodes het beste in een kokertje plaatsen of afplakken. Nog mooier is om ze in een 1-bij-2 legosteentje in te bouwen. Dat lukt alleen met de kleinere 3 mm leds. Kijk in je Arduino programma welke van de sensoren het meeste licht teruggeeft en stuur de robotauto een beetje in die richting bij. WORDT VERVOLGD...