Introduksjon til PIR-bevegelsessensor (HC-SR501)
En PIR -bevegelsessensor, også kjent som en PAssive Jegnfrared SEnsor, er en type elektronisk enhet som ofte brukes til å oppdage tilstedeværelsen av et menneske eller dyr i et visst område. HC-SR501 er en populær modell av PIR-bevegelsessensor som er kjent for sin pålitelighet og brukervennlighet.
Det fungerer ved å bruke en passiv infrarød detektor for å føle temperaturendringer, som kan være forårsaket av bevegelse av en person eller et dyr. Hvis objektbevegelsen blir oppdaget, blir et signal sendt til enheter som et sikkerhetssystem eller et belysningskontrollpanel. PIR -bevegelsessensorer brukes ofte i hjemmesikkerhetssystemer, automatiserte belysningssystemer og andre applikasjoner der det er viktig å oppdage tilstedeværelsen av en person eller et dyr.
Arbeid av PIR-bevegelsessensor (HC-SR501)
De HC-SR501 PIR -bevegelsessensor fungerer ved å bruke en passiv infrarød detektor for å føle temperaturendringer. Den er designet for å oppdage tilstedeværelsen av et menneske eller dyr i et visst område, typisk opp til omtrent 8 meter (26 fot).
Når sensoren er inaktiv, overvåker den hele tiden temperaturen i synsfeltet. Hvis sensoren oppdager en temperaturendring, slik som vil være forårsaket av bevegelse av en person eller dyr, vil den sende et signal til en tilkoblet enhet. Ved å bruke dette signalet kan vi generere svar som å slå på et lys eller aktivere en alarm.
PIR -bevegelsessensoren har to potensiometre om bord som kan brukes til å justere følsomhet og Tidsforsinkelse av sensoren.
Pinout HC-SR501
PIR -sensorpinne inkluderer:
PIR HC-SR501 har 3 utgangspinner. To pinner VCC og GND er strømpinner mens den midterste eller tredje pinnen er for utproduksjons digital trigger -signal.
Interfacing PIR-bevegelsessensor (HC-SR501) med Arduino Nano
Grensesnitt til en PIR-bevegelsessensor, for eksempel HC-SR501, med en Arduino Nano-mikrokontroller er en grei prosess som kan oppnås med bare noen få komponenter. For å begynne. Deretter kobler du ut -pinnen på PIR -sensoren til en hvilken som helst digital inngangspinne på Arduino Nano.
Når disse tilkoblingene er gjort, kan du bruke Arduino Nano til å lese den digitale utgangen til PIR -sensoren og utføre en ønsket handling, for eksempel å slå på en LED eller sende en varsel. Det er viktig å merke seg at PIR -bevegelsessensoren kan kreve en liten mengde kalibrering for å fungere ordentlig. Dette kan vanligvis gjøres ved å justere innstillingene for følsomhet og tidsforsinkelse ved hjelp av potensiometre ombord.
Nødvendige komponenter er:
Skjematisk
Gitt bilde Vis ledningsdiagram over PIR -sensor med Arduino Nano Board:
Kode
Åpen Ide (Integrert utviklingsmiljø). Velg Nano -kort og klikk på opplastingsknappen etter å ha skrevet koden nedenfor.
int led_pin = 3; /*Pin definert for LED*/
int pir_sensor_pin = 5; /*PIN for PIR -sensor*/
int pirstate = true; /*Forutsatt at ingen bevegelse oppdages*/
int val = 0; /*Variabel for å lagre PIN -status*/
int minimumMSecslowForinactive = 2000; /*Anta at ingen bevegelser oppdages hvis ingen aktivitet oppdages i 2 sek*/
lenge usignert intidelow;
Boolean Takelowtime;
int kalibreringstid = 10; /*Tid for sensorkalibrering i henhold til datablad*/
void setup ()
pinmode (LED_PIN, utgang); /*LED erklært som utgang*/
pinmode (pir_sensor_pin, input); /*Sensorpinne oppdaget som inngang*/
Serie.Begynn (9600);
Serie.print ("kalibreringssensor");
for (int i = 0; i < calibrationTime; i++)
Serie.skrive ut(".");
forsinkelse (1000);
Serie.println ("gjort");
Serie.println ("sensor aktiv");
forsinkelse (50);
void loop ()
Val = DigitalRead (PIR_SENSOR_PIN); /*Les sensorverdi*/
if (val == høy) /*hvis tilstand for å se etter inngangstilstanden* /
DigitalWrite (LED_PIN, HIGH); /*Hvis mottatt verdi er høy LED på*/
if (pirstate)
Pirstate = falsk;
Serie.Println ("Bevegelse oppdaget!"); /*Skriv ut hvis bevegelse oppdages* /
forsinkelse (50);
TakelowTime = True;
annet
DigitalWrite (LED_PIN, lav); /*Slå av LED*/
if (takelowtime)
timelow = millis ();
Takelowtime = falsk;
hvis(!Pirstate && millis () - Timelow> minimumMSECSLOWFORINACTIVE)
Pirstate = True;
Serie.Println ("Bevegelse ble avsluttet!");
forsinkelse (50);
Kode startet med å definere inngangspinnen for PIR -sensor og utgangspinne for LED. En int -variabel Val er definert. Denne variabelen vil lagre tilstanden til PIR -utgangspinnen.
Deretter bruker du pinmode Funksjon, LED- og sensorpinnen er definert som henholdsvis utgang og inngang. A hvis tilstand brukes. Hvis Arduino Nano mottar høye innganger fra sensor -LED vil slå på. Tilsvarende, hvis ingen bevegelse blir oppdaget, vil et lavt signal bli sendt til Arduino, noe som resulterer i å slå av LED -en.
Produksjon
Under utgangen vises når bevegelsen blir oppdaget av PIR -sensoren. Første sensor vil kalibrere seg selv etter det kan oppdage enhver bevegelse.
Maskinvare
LED er av fordi ingen bevegelse oppdages.
Nå beveger bilen seg og LED blir slått på når bevegelsen oppdages.
Konklusjon
Arduino Nano kan kobles sammen med forskjellige sensorer som PIR. Bruke denne sensoren hvilken som helst objektbevegelse kan oppdages. PIR -sensoren med Arduino har flere applikasjoner som hjemmesikkerhetssystemer eller gatebelysning. Denne artikkelen dekker den komplette Arduino -koden og trinnene som er involvert i å oppdage objektbevegelse.