- Nødvendigt materiale:
- IR-sensormodul:
- Kredsløbsdiagram og forklaring:
- Programmering af din Raspberry Pi:
- Arbejder:
Som vi alle ved, er Raspberry Pi en vidunderlig udviklingsplatform baseret på ARM-mikroprocessor. Med sin høje beregningskraft kan den udføre vidundere i hænderne på elektronikhobbyister eller studerende. Alt dette kan kun være muligt, hvis vi ved, hvordan vi får det til at interagere med den virkelige verden. Der er mange sensorer, der kan registrere bestemte parametre fra den realtidsverden og overføre dem til en digital verden. Vi har dækket mange Raspberry Pi-projekter med mange sensorer. Raspberry Pi er også en velsignelse for IoT-projekter, da det er en computer i lommeformat med indbygget Wi-Fi, der har en mikrocontroller.
I denne vejledning lærer vi, hvordan vi kan interface en IR-sensor med Raspberry pi. Disse sensorer bruges oftest i små robotter som linjefølgerrobot, Edge undgår robot osv. Kort sagt kan det registrere tilstedeværelsen af objekter før den og også skelne mellem hvid og sort farve. Lyder fedt, ikke?
Så lad os lære at interface denne sensor med Raspberry Pi. I dette projekt, når der ikke er nogen genstand foran IR-sensoren, forbliver den røde LED tændt, og så snart vi lægger noget foran IR-sensoren, slukkes den røde LED og den grønne LED tændes. Dette kredsløb kan også tjene som sikkerhedskredsløb.
Nødvendigt materiale:
- Raspberry Pi 3 (enhver model)
- IR-sensormodul
- Grøn og rød LED-lys
- Brødbræt
- Tilslutning af ledninger
IR-sensormodul:
IR-sensorer (Infrarød sensor) er moduler, der registrerer tilstedeværelsen af objekter foran dem. Hvis objektet er til stede, giver det 3,3 V som output, og hvis det ikke er til stede, giver det 0 volt. Dette er muliggjort ved hjælp af et par IR-par (sender og modtager), senderen (IR-LED) udsender en IR-stråle, der reflekteres, hvis der er en genstand til stede før den. Denne IR-stråle vil blive modtaget tilbage af modtageren (fotodiode), og output vil blive gjort højt efter forstærket ved hjælp af et op-amp-link LM358. Du kan lære mere om IR-sensormodulkredsløb her.
IR-sensoren anvendt i dette projekt er vist ovenfor. Som alle IR-sensorer har den tre ben, der er henholdsvis 5V, GND og Out. Modulet drives af 5V-stiften fra Raspberry Pi, og udstikket er forbundet til GPIO14 fra Raspberry Pi. Potentiometeret oven på modulet kan bruges til at justere IR-sensorens rækkevidde.
Kredsløbsdiagram og forklaring:
Kredsløbsdiagrammet til tilslutning af Raspberry Pi med IR-sensor er vist nedenfor. Som du kan se, er kredsløbsdiagrammet meget simpelt. Vi har direkte drevet IR-modulet fra 5V og Ground Pin af Raspberry Pi. IR-modulets udgangsstift er tilsluttet GPIO14. Vi har også brugt to lysdioder (grøn og rød) til at indikere objektets status. Disse to lysdioder er tilsluttet henholdsvis GPIO3 og GPIO2.
Da GPIO-stifterne på Raspberry Pi er 3,3 V, er en strømbegrænsende modstand ikke obligatorisk. Hvis det ønskes, kan der dog tilføjes en modstand med en værdi på 470 ohm mellem jordstiften på LED'er og Raspberry Pi. Hele kredsløbet drives af en 5V mobil oplader gennem Raspberry pi's mikro-USB-port.
Bemærk: Når du tilslutter en hvilken som helst sensor, skal du sørge for, at sensorens jord er tilsluttet jorden på MCU'en eller MPU'en (her Raspberry Pi). Først da vil de være i stand til at kommunikere.
Programmering af din Raspberry Pi:
Her bruger vi Python Programmeringssprog til programmering af RPi. Der er mange måder at programmere din Raspberry Pi på. I denne vejledning bruger vi Python 3 IDE, da det er den mest anvendte. Det komplette Python-program gives i slutningen af denne vejledning. Lær mere om program og kør kode i Raspberry Pi her.
Vi vil tale om få kommandoer, som vi skal bruge i PYHTON-programmet,
Vi skal importere GPIO-filer fra biblioteket, nedenstående funktion giver os mulighed for at programmere GPIO-ben på PI. Vi omdøber også "GPIO" til "IO", så når vi vil henvise til GPIO-ben i programmet, bruger vi ordet 'IO'.
importer RPi.GPIO som IO
Nogle gange, når GPIO-stifterne, som vi prøver at bruge, udfører måske nogle andre funktioner. I så fald modtager vi advarsler, mens vi udfører programmet. Kommandoen nedenfor fortæller PI at ignorere advarslerne og fortsætte med programmet.
IO.setwarnings (Falsk)
Vi kan henvise GPIO-benene på PI, enten ved pin-nummer om bord eller ved deres funktionsnummer. Ligesom 'PIN 29' på tavlen er 'GPIO5'. Så vi fortæller her, enten skal vi repræsentere stiften her med '29' eller '5'.
IO.setmode (IO.BCM)
Vi indstiller 3 ben som input / output pins. De to udgangsstifter styrer LED'en, og indgangsstiften læser signalet fra IR-sensoren.
IO.setup (2, IO.OUT) #GPIO 2 -> Rød LED som output IO.setup (3, IO.OUT) #GPIO 3 -> Grøn LED som output IO.setup (14, IO.IN) #GPIO 14 -> IR-sensor som input
Nu er vi nødt til at slukke for den grønne LED og tænde den røde LED, når objektet er langt. Dette kan gøres ved at kontrollere GPIO14-stiften.
if (IO.input (14) == True): #object is far away IO.output (2, True) #Red led ON ON IO.output (3, False) # Green led OFF
På samme måde er vi nødt til at tænde den grønne LED og slukke den røde LED, når objektet er i nærheden.
if (IO.input (14) == False): #object is near IO.output (3, True) # Green led ON IO.output (2, False) # Red led OFF
Nedenstående kommando bruges som evigt løkke, med denne kommando udføres udsagnene inde i denne løb kontinuerligt.
Mens 1:
Arbejder:
Når du har oprettet din python-kode, skal du udføre den ved hjælp af kommandoen run. Hvis programmet udføres uden fejl, skal du få følgende skærmbillede.
Du skal også se den røde farve-LED gå højt, når der ikke er nogen genstand foran sensoren som vist nedenfor.
Bring nu noget tæt på IR-ledningen, og du skal bemærke, at den røde LED slukker og den grønne tænder. Komplet arbejde kan findes på videoen nedenfor.
Håber du forstod projektet og var i stand til at bygge noget nyttigt med det. Hvis nogen forespørgsler sender dem i kommentarfeltet nedenfor eller på forummet.