Varnost je bila vedno glavna skrb za nas vse in na trgu je na voljo veliko visokotehnoloških in IoT sistemov za zaščito in nadzor. Intruder ali protivlomni alarm je eden klasičnih in priljubljenih projektov med študenti elektronike in hobiji. Na podlagi različnih tehnologij smo zgradili tudi številne protivlomne alarme:
- Laser Security Alarm Circuit
- Varnostni alarm na osnovi IR
- Protivlomni alarm s pomočjo PIR
- GSM varnostni sistem
Danes na naš seznam dodajamo še en varnostni alarm, ki temelji na ultrazvočnem senzorju. Ta alarm z nadzorovanimi vrati Arduino je mogoče namestiti blizu vrat, da zazna prisotnost nekoga pred vrati. Kadarkoli pride nekdo v območje ultrazvočnega senzorja, začne zvočni signal. Območje zaznavanja senzorja lahko prilagodite svojim vratom. Ta sistem lahko služi tudi namenu detektorja gibanja.
Zahtevane komponente:
- Breadboard
- Ultrazvočni senzor
- Zvočni signal
- Arduino Mega (kateri koli model)
- Jumper žice
- USB kabel za Arduino ali 12v, 1A adapter.
Ultrazvočni senzorski modul:
Tukaj se uporablja ultrazvočni senzor HC-SR04 za zaznavanje prisotnosti katere koli osebe pred vrati. Senzorski modul je sestavljen iz ultrazvočnega oddajnika, sprejemnika in krmilnega vezja. Ultrazvočni senzor je sestavljen iz dveh krožnih očes, od katerih se eno uporablja za oddajanje ultrazvočnega vala, drugo pa za sprejem.
Oddaljenost predmeta lahko izračunamo na podlagi časa, ki ga ultrazvočni val vzame nazaj na senzor. Ker sta čas in hitrost zvoka znana, lahko razdaljo izračunamo po naslednjih formulah.
- Razdalja = (čas x hitrost zvoka) / 2
Vrednost je deljena z dvema, saj val potuje naprej in nazaj in pokriva enako razdaljo. Toda v tem projektu smo uporabili knjižnico NewPing.h in ta knjižnica skrbi za ta izračun in uporabiti moramo le nekaj ključnih besed, razlaga je podana v spodnjem oddelku za programiranje.
Preverite spodnji projekt, da izmerite razdaljo katerega koli predmeta in pravilno razumete delovanje ultrazvočnega senzorja:
- Merjenje razdalje na osnovi arduina z uporabo ultrazvočnega senzorja
- Merjenje razdalje s pomočjo mikrokrmilnika HC-SR04 in AVR
Shema vezja in razlaga:
Vezja za ta ultrazvočni alarm so zelo preprosta. Sprožilni zatič ultrazvočnega senzorja je povezan s št. 12 pinov Arduino in Echo senzorja je priključen na pin 11 Arduino. Vcc senzorja je priključen na 5V pin Arduino, GND senzorja pa na GND Arduino. Ena pin brenčalo GND z Arduino, druga pa je zvezana z 8 th pin Arduino.
Delovna razlaga:
Delo s tem alarmom za vrata Arduino je zelo enostavno. Vsakič, ko pride kdo na pot / obseg ultrazvočnega senzorja, mikrokrmilnik zazna razdaljo predmeta od senzorja in če je predmet v določenem obsegu, pošlje zvočni signal High in zvočni signal začne piskati.
Vezje lahko preizkusite tako, da postavite katero koli stvar pred senzor v dosegu, za prikaz preverite Video. To funkcijo ultrazvočnega senzorja lahko uporabite tudi za izdelavo robota, ki se izogiba oviram.
Pojasnilo programiranja:
V tem projektu smo uporabili knjižnico NewPing.h za ultrazvočni senzor, ki jo je razvil Tim Eckel. Čeprav lahko ultrazvočni senzor uporabljamo brez te knjižnice, kot smo to storili v prejšnjem projektu, vendar ta knjižnica ponuja številne dobre funkcije za ultrazvočni senzor in s to knjižnico postane enostavno kodirati ultrazvočni senzor. Funkcije ultrazvočnega senzorja lahko enostavno uporabljamo s pomočjo te knjižnice, ne da bi vpisali preveč vrstic kode; je kot druge knjižnice, ki se uporabljajo za obravnavanje kompleksnosti na nižji ravni.
#include
Vse funkcije, uporabe in vzorčne kode te knjižnice lahko preverite na tej povezavi. Preverite tudi uradno stran Arduino te knjižnice.
Najnovejšo izdajo knjižnice lahko prenesete z zgoraj navedene povezave. Nadalje smo s spodnje povezave prenesli knjižnico, ki je spremenjena za Teensy:
github.com/PaulStoffregen/NewPing
Najprej morate preizkusiti senzor, tako da zapišete primere kod na njegovi strani. Za naš projekt smo uporabili tudi vzorčne kode in jih spremenili v skladu z našim projektom alarma vrat.
Sprožilni zatič je povezan z zatičem 12 Arduina, zatič Echo pa je povezan z zatičem 11 Arduina. MAX_DISTANCE pomeni, da je razdalja, do katere lahko senzor zazna oviro, 500 cm ali 5 m.
#define TRIGGER_PIN 12 #define ECHO_PIN 11 #define MAX_DISTANCE 500
Pod vrstico je navedena hitrost prenosa podatkov, pri kateri se podatki pošljejo v serijska vrata Arduino z ultrazvočnega senzorja.
Serial.begin (115200);
Zatič št. 10 je konfiguriran kot izhodni zatič in je povezan z brenčalom. Drugi pin brenčača je povezan z GND Arduino.
pinMode (10, IZHOD);
V echoCheck () void funkcijo, sonar.ping_result / US_ROUNDTRIP_CM se uporablja za izračun razdalje oviro iz senzorja. zastava se uporablja za aktiviranje zvočnega signala, ko je ovira v območju 50 cm od ultrazvočnega senzorja. To "razdaljo" lahko spremenite glede na vaše zahteve ali velikost vrat.
if ((sonar.ping_result / US_ROUNDTRIP_CM) <50) zastava = 1; sicer če ((sonar.ping_result / US_ROUNDTRIP_CM)> 50) zastava = 0;
Avtor knjižnice NewPing.h zelo dobro komentira kodo in jo je mogoče enostavno razumeti. Nadalje lahko sami preverite stran knjižnice, da jo bolje razumete, in jo lahko uporabite za izdelavo kompleksnih projektov z uporabo ultrazvočnega senzorja. Celotna koda za ta projekt Door Alarm je navedena spodaj.
Predvsem Ultrazvočni senzor se uporablja za merjenje razdalje iz katerega koli predmeta, ampak tukaj lahko vidimo, da se ga lahko uporablja kot varnostni alarm ali vrat alarm z Arduino. Prav tako lahko z uporabo tega naredimo številne uporabne projekte, kot so: Samodejni indikator nivoja vode in krmilnik z uporabo Arduina