At detektere bevægelser eller bevægelser har altid været vigtig i de fleste projekter. Ved hjælp af PIR-sensoren er det blevet meget let at registrere bevægelser fra mennesker / dyr. I dette projekt lærer vi, hvordan vi kan interface en PIR-sensor med en mikrocontroller som Arduino. Vi grænseflader en Arduino med PIR-modul og blinker en LED og bipper en summer, når der registreres en bevægelse. Følgende komponenter er nødvendige for at opbygge dette projekt.
Nødvendige materialer:
- PIR-sensormodul
- Arduino UNO (enhver version)
- LED
- Summer
- Brødbræt
- Tilslutning af ledninger
- 330 ohm modstand
PIR-sensor:
Kredsløbsdiagrammet til arduino-bevægelsesdetektorprojekt ved at interfacere Arduino med PIR-modul og blinke en LED / summer er vist i nedenstående billede.
Vi har drevet PIR-sensoren ved hjælp af 5V-skinnen fra Arduino. PIR-sensorens udgangsstift er tilsluttet den anden digitale pin fra Arduino. Denne pin vil være INPUT-pin til Arduino. Så den 3 rd pin af Arduino er forbundet til LED og Buzzer. Denne pin fungerer som Arduino's output pin. Vi vil programmere Arduino at udløse en Output i 3 rd pin hvis en Input er blevet detekteret ved 2 nd stift. Det komplette program forklares nedenfor.
Programmering af Arduino:
Programmet til Arduino er ret simpelt og ligetil. For at forbinde Arduino PIR-sensor skal vi tildele pin nummer 2 som input og pin nummer 3 som output. Så er vi nødt til at producere en diskontinuerlig trigger, når pin 2 går højt. Hver linje forklares nedenfor.
I den ugyldige opsætningsfunktion vist nedenfor skal vi erklære, at pin 2, der er tilsluttet PIR-udgang, vil blive brugt som input, og pin 3, der er tilsluttet LED / Buzzer, vil blive brugt som input.
ugyldig opsætning () {pinMode (2, INPUT); // Pin 2 som INPUT pinMode (3, OUTPUT); // PIN 3 som OUTPUT}
Derefter fortsætter vi til loop () -funktionen. Som vi ved, bliver koden herinde udført, så længe MCU er tændt. Så vi kontrollerer altid, om Pin 2 er gået højt ved hjælp af nedenstående linje inde i loop () -funktionen.
hvis (digitalRead (2) == HIGH)
Hvis vi finder ud af, at den særlige pin er gået højt, betyder det, at PIR-modulet er udløst. Så nu har vi fået vores output pin (pin 3) til at gå højt. Vi tænder og slukker denne pin med en forsinkelse på 100 milli sekund, så vi kan opnå det blinkende eller summende output. Koden til at gøre det samme vises nedenfor.
ugyldig opsætning () {pinMode (2, INPUT); // Pin 2 som INPUT pinMode (3, OUTPUT); // PIN 3 som OUTPUT} ugyldig loop () {if (digitalRead (2) == HIGH) // kontroller, om PIR er udløst. {digitalWrite (3, HIGH); // tænde LED / Buzz ON forsinkelse (100); // vente på 100 ms digitalWrite (3, LOW); // sluk for LED / Buzz forsinkelse (100); // vent 100 sekunder}}
Arbejder:
Kredsløbet og programmet til dette arduino-bevægelsesdetektorprojekt er allerede diskuteret ovenfor. Nu kan du bygge dette kredsløb på et brødbræt ved at følge skemaerne ovenfor og uploade programmet, som kunne findes i slutningen af denne vejledning. Når dine forbindelser er udført, skal din opsætning se ud som noget vist nedenfor.
Tænd nu Arduino, og vent i ca. 50-60 sekunder på din PIR-sensor til at kalibrere. Bliv ikke frustreret over det output, du får i denne periode. Derefter skal du prøve at bevæge dig foran PIR-sensoren, og din LED / summer skal udløses som vist i videoen nedenfor.
Bip / blink skal stoppe efter et stykke tid; Du kan nu lege rundt om output ved at variere potentiometeret for at ændre modulets følsomhed eller lave tid. Håber du forstod projektet og fik det til at fungere. Hvis du har problemer med at få denne ting til at fungere, kan du søge gennem kommentarsektionen eller på vores fora.