- Materiaal vereist:
- IR-sensormodule:
- Schakelschema en uitleg:
- Programmering van uw Raspberry Pi:
- Werken:
Zoals we allemaal weten, is Raspberry Pi een prachtig ontwikkelplatform op basis van een ARM-microprocessor. Met zijn hoge rekenkracht kan hij wonderen verrichten in handen van elektronicahobbyisten of studenten. Dit alles is alleen mogelijk als we weten hoe we het kunnen laten communiceren met de echte wereld. Er zijn veel sensoren die bepaalde parameters uit de real-time wereld kunnen detecteren en overbrengen naar een digitale wereld. We hebben veel Raspberry Pi-projecten met veel sensoren behandeld. Raspberry Pi is ook een zegen voor IoT-projecten, omdat het een computer in zakformaat is met ingebouwde Wi-Fi, met de mogelijkheden van een microcontroller.
In deze tutorial zullen we leren hoe we een IR-sensor kunnen koppelen met Raspberry pi. Deze sensoren worden het meest gebruikt in kleine robots zoals lijnvolgerrobot, Edge vermijdende robot enz. Simpel gezegd, het kan de aanwezigheid van objecten ervoor detecteren en ook onderscheid maken tussen witte en zwarte kleur. Klinkt goed toch?
Laten we dus leren hoe we deze sensor kunnen koppelen aan Raspberry Pi. In dit project, wanneer er geen object voor de IR-sensor staat, blijft de rode LED ingeschakeld en zodra we iets voor de IR-sensor plaatsen, gaat de rode LED uit en gaat de groene LED aan. Dit circuit kan ook dienen als beveiligingsalarmcircuit.
Materiaal vereist:
- Raspberry Pi 3 (elk model)
- IR-sensormodule
- Groene en rode led-lampjes
- Breadboard
- Draden aansluiten
IR-sensormodule:
IR-sensoren (infraroodsensor) zijn modules die de aanwezigheid van voorwerpen voor hen detecteren. Als het object aanwezig is, geeft het 3.3V als output en als het niet aanwezig is geeft het 0 volt. Dit wordt mogelijk gemaakt door een paar IR-paren (zender en ontvanger) te gebruiken, de zender (IR-LED) zal een IR-straal uitzenden die wordt gereflecteerd als er een object voor is. Deze IR-straal wordt terug ontvangen door de ontvanger (fotodiode) en de output wordt hoog gemaakt na versterking met behulp van een op-amp-link LM358. U kunt hier meer leren over het IR-sensormodulecircuit.
De IR-sensor die in dit project wordt gebruikt, wordt hierboven weergegeven. Zoals alle IR-sensoren heeft het drie pinnen die respectievelijk 5V, Gnd en Out zijn. De module wordt gevoed door de 5V-pin van Raspberry Pi en de out-pin is verbonden met GPIO14 van Raspberry Pi. Met de potmeter bovenop de module kan het bereik van de IR-sensor worden aangepast.
Schakelschema en uitleg:
Het schakelschema voor het verbinden van Raspberry Pi met IR-sensor wordt hieronder weergegeven. Zoals u kunt zien, is het schakelschema heel eenvoudig. We hebben de IR-module rechtstreeks gevoed vanaf de 5V en aardingspin van Raspberry Pi. De outputpin van de IR-module is verbonden met de GPIO14. We hebben ook twee LED's (groen en rood) gebruikt om de status van het object aan te geven. Deze twee leds zijn respectievelijk verbonden met GPIO3 en GPIO2.
Omdat de GPIO-pinnen van Raspberry Pi 3,3 V zijn, is een stroombegrenzende weerstand niet verplicht. Indien gewenst kan echter een weerstand met een waarde van 470 ohm worden toegevoegd tussen de aardingspin van LED's en Raspberry Pi. Het hele circuit wordt gevoed door een 5V mobiele oplader via de micro-USB-poort van de Raspberry pi.
Opmerking: Zorg er bij het aansluiten van een sensor voor dat de aarde van de sensor is verbonden met de aarde van de MCU of MPU (hier Raspberry Pi). Alleen dan kunnen ze communiceren.
Programmering van uw Raspberry Pi:
Hier gebruiken we Python-programmeertaal voor het programmeren van RPi. Er zijn veel manieren om uw Raspberry Pi te programmeren. In deze tutorial gebruiken we de Python 3 IDE, aangezien dit de meest gebruikte is. Het volledige Python-programma wordt aan het einde van deze tutorial gegeven. Lees hier meer over Programmeer en voer code in Raspberry Pi uit.
We zullen het hebben over enkele commando's die we gaan gebruiken in het PYHTON-programma,
We gaan het GPIO-bestand uit de bibliotheek importeren, met onderstaande functie kunnen we GPIO-pinnen van PI programmeren. We hernoemen ook "GPIO" naar "IO", dus in het programma zullen we telkens wanneer we naar GPIO-pinnen willen verwijzen het woord 'IO' gebruiken.
importeer RPi.GPIO als IO
Soms, wanneer de GPIO-pinnen, die we proberen te gebruiken, andere functies uitvoeren. In dat geval zullen we waarschuwingen ontvangen tijdens het uitvoeren van het programma. Onderstaand commando vertelt de PI om de waarschuwingen te negeren en door te gaan met het programma.
IO.setwarnings (False)
We kunnen de GPIO-pinnen van PI verwijzen, hetzij op pincode aan boord, hetzij op functienummer. Net als 'PIN 29' op het bord is 'GPIO5'. Dus we vertellen hier dat we de pin hier met '29' of '5' gaan weergeven.
IO.setmode (IO.BCM)
We stellen 3 pinnen in als input / output pinnen. De twee uitgangspennen besturen de LED en de ingangspen leest het signaal van de IR-sensor.
IO.setup (2, IO.OUT) #GPIO 2 -> Rode LED als output IO.setup (3, IO.OUT) #GPIO 3 -> Groene LED als output IO.setup (14, IO.IN) #GPIO 14 -> IR-sensor als ingang
Nu moeten we de groene LED uitschakelen en de rode LED inschakelen als het object ver weg is. Dit kan gedaan worden door de GPIO14-pin te controleren.
if (IO.input (14) == True): #object is ver weg IO.output (2, True) #Rood led AAN IO.output (3, False) # Groen led UIT
Evenzo moeten we de groene LED aanzetten en de rode LED uitschakelen wanneer het object dichtbij is.
if (IO.input (14) == False): #object is in de buurt van IO.output (3, True) #Groene led AAN IO.output (2, False) # Rode led UIT
Het onderstaande commando wordt gebruikt als forever loop, met dit commando worden de statements in deze loop continu uitgevoerd.
Terwijl 1:
Werken:
Nadat je je python-code hebt gemaakt, voer je deze uit met de opdracht run. Als het programma zonder fouten wordt uitgevoerd, zou u het volgende scherm moeten krijgen.
U zou ook de rode LED moeten zien oplichten als er zich geen object voor de sensor bevindt, zoals hieronder weergegeven.
Breng nu iets in de buurt van de IR-led en je zou moeten zien dat de rode led uitgaat en de groene led aan gaat. De volledige werking is te vinden op de onderstaande video.
Ik hoop dat je het project hebt begrepen en er iets nuttigs mee hebt kunnen bouwen. Als u vragen heeft, plaats deze dan in de commentaarsectie hieronder of op het forum.