- Materiale necesare:
- Module Explicație:
- Schematică și hardware
- Crearea unui API pentru a trimite e-mail folosind IFTTT:
- Program Arduino
- -CircuitDigest
- Lucru
Acesta este un alt proiect IOT interesant în care vom construi un sistem de securitate care poate declanșa un e-mail atunci când detectează pe cineva. Acest proiect se amestecă în puterea ESP8266, a senzorului PIR și a modulului ISD1820 Voice. La sfârșitul acestui articol ați fi construit un sistem de securitate complet funcțional care poate fi armat / dezarmat (activat / dezactivat) de la distanță prin internet. Puteți să vă înregistrați propriul clip audio care va fi redat atunci când este detectată o mișcare și, de asemenea, puteți trimite un e-mail cu Data și ora la un anumit ID de e-mail care să indice intruziunea. Destul de cool….. !!! ??
Deci, hai să-l construim..
Materiale necesare:
Materialele necesare construirii acestui proiect sunt enumerate mai jos
- ESP8266
- Senzor PIR
- Modul vocal ISD1820
- LM317, LM7805
- BC547 (2Nos)
- Rezistențe 1K, 200ohm, 330ohm
- Condensatori de 10uf și 0.1uf
- Adaptor de 12V / baterie de 9V pentru alimentarea setării
Module Explicație:
Proiectul găzduiește trei componente importante care sunt modulul ESP8266, senzorul PIR și modulul ISD1820 Voice. Dacă sunteți familiarizați cu aceste module, puteți sări peste această parte și treceți la schemă, dar dacă doriți să știți cum funcționează, citiți mai departe.
Modul ESP8266:
Sunt sigur că ai fi dat peste acest modul cândva sau altul. Este un modul WiFi foarte renumit și puternic, care este utilizat mai ales în proiecte IOT.
Acest proiect presupune că știți cum să programați un modul ESP8266 dacă nu, vă rugăm să vizitați cele două tutoriale de mai jos, unde v-am explicat cum să începeți cu ESP8266 și cum puteți programa unul folosind Arduino IDE. Trebuie să știți acest lucru pentru a finaliza proiectul.
- Noțiuni introductive despre ESP8266
- Programarea ESP8266 folosind Arduino IDE
Senzor PIR:
Senzorul PIR înseamnă senzor infraroșu pasiv. Este un senzor cu cost redus care poate detecta prezența ființelor umane sau a animalelor. Există două materiale importante prezente în senzor, unul este cristalul piroelectric, care poate detecta semnăturile de căldură de la un organism viu (oameni / animale), iar celălalt este un obiectiv Fresnel care poate lărgi gama senzorului. De asemenea, modulele senzorului PIR ne oferă câteva opțiuni pentru a regla funcționarea senzorului așa cum se arată în imaginea de mai jos.
Cele două potențiometre (de culoare portocalie) sunt utilizate pentru a controla sensibilitatea și declanșarea la timp a senzorului. Practic pinul Dout al senzorului este prezent între pinii Vcc și Gnd. Modulul funcționează pe 3.3V, dar poate fi alimentat și cu 5V. În colțul din stânga sus are, de asemenea, o configurare a pinului de declanșare, care poate fi utilizată pentru a face modulul să funcționeze în două moduri diferite. Unul este modul „H”, iar celălalt este modul „I”.
În modul „H” pinul de ieșire Dout va crește (3,3V) atunci când o persoană este detectată în raza de acțiune și scade după un anumit timp (timpul este setat de potențiometru). În acest mod, pinul de ieșire va crește, indiferent dacă persoana este încă prezentă în interval sau a părăsit zona. Folosim modulul nostru în modul „H” în proiectul nostru.
În modul „I” pinul de ieșire Dout va crește (3,3 V) atunci când o persoană este detectată în raza de acțiune și va rămâne ridicat atâta timp cât el / ea rămâne în limita domeniului senzorilor. Odată ce persoana a părăsit zona, pinul va scădea după timpul specificat care poate fi setat cu ajutorul potențiometrului.
Notă: Poziția potențiometrelor sau a pinilor poate varia în funcție de furnizorul senzorului PIR. Urmați ecranul Silk pentru a vă determina pinouts
Modul vocal ISD1820:
Modulul ISD 1820 Voice este într-adevăr un modul interesant care ar putea să vă condimenteze proiectele cu anunțuri vocale. Acest modul este capabil să înregistreze un clip audio timp de 10 secunde și apoi să îl redea atunci când este necesar. Modulul în sine vine cu un microfon și un difuzor (8ohms 0,5 wați) și ar trebui să arate așa cum se arată mai jos.
Modulul funcționează pe + 5V și poate fi alimentat folosind bețele Berg din stânga. De asemenea, are trei butoane în partea de jos, care sunt Rec., PlayE. butonul și PlayL. butonul respectiv. Vă puteți înregistra vocea apăsând butonul Rec. și redați-l folosind butonul PlayE. PlayL va reda vocea atâta timp cât țineți apăsat butonul. Când interfațăm cu un MCU sau ESP putem folosi pinii din stânga. Acești pini sunt 3V-5V tolerabili și, prin urmare, pot fi direcționați direct de Arduino / ESP8266. În proiectul nostru controlăm pinul PLAYE folosind pinul GPIO 0 al modulului nostru ESP8266. Pentru a putea reda vocea înregistrată atunci când este detectat un intrus.
Schematică și hardware
Schema completă a acestui proiect de sistem de securitate IoT este prezentată mai jos:
Circuitul este format din două regulatoare de tensiune. Unul este un regulator de 3,3V proiectat folosind LM317, iar celălalt este un regulator de 5V realizat utilizând regulatorul 7805 IC. LM317 este un regulator de tensiune variabilă a cărui ieșire este setată la 3,3V utilizând rezistențele 200ohm și 330ohm. Ambele regulatoare sunt alimentate cu ajutorul unui adaptor de 12 V. Consumul de energie al acestui circuit este foarte mic, prin urmare, o baterie de 9V poate fi utilizată și în locul unui adaptor de 12V.
Senzorul PIR și modulul Voice sunt pornite prin creșterea pinului GPIO 2. Acest pin va conduce BC547 printr-un rezistor de limitare a curentului de 1k și va completa circuitul de alimentare pentru ambele module. Pinul GPIO_0 este utilizat un pin de intrare. Este conectat la pinul Dout al senzorului PIR printr-un tranzistor BC547. Când acest pin crește, vom declanșa un e-mail care indică intruziunea prin programul nostru Arduino.
Curentul sursă al pinilor de ieșire (Dout, GPIO_2 și GPIO2) sunt mai puțini, de aceea am folosit un tranzistor pentru a le conduce. De asemenea, pinii GPIO ai ESP8266 nu trebuie încărcați atunci când modulul este pornit, altfel modulul va intra în bucla de resetare infinită. Pentru a evita acest lucru, am plasat două comutatoare pentru a le deconecta temporar în timpul alimentării.
Puteți lipi circuitele de mai sus pe o placă Perf sau pur și simplu utilizați o placă de măsurare. Am folosit bețișoare de sex feminin / masculin, astfel încât să pot evita lipirea pe module. După ce ați terminat, tabloul dvs. ar trebui să arate ca mai jos
Crearea unui API pentru a trimite e-mail folosind IFTTT:
Odată ce hardware-ul este gata, permiteți crearea unui API (Application Program Interface) care poate trimite e-mail către un anumit ID de e-mail. Acest lucru se poate face cu ușurință cu ajutorul unui site web numit IFTTT.com. Am acoperit, de asemenea, un proiect care ar putea trimite SMS folosind ESP8266 și e-mail folosind microcontrolerul PIC care utilizează aceleași servicii IFTTT.
Dacă nu ați folosit încă IFTTT, vizitați videoclipul la sfârșitul acestui tutorial, dacă sunteți familiarizați, pur și simplu urmați pașii de mai jos
1. Conectați-vă la contul dvs. IFTTT
2. Căutați „Maker Web hooks” și faceți clic pe conectare
3. Acum căutați „Gmail” și faceți clic pe conectare și urmați pașii pentru a da acces
4. Apoi, creați un applet făcând clic pe Appletul meu-> Applet nou.
5. Aici, funcția „Aceasta” va fi pentru serviciul web makerhooks și funcția „acea” va fi Serviciile Gmail
6. Deci, faceți clic pe „Aceasta”, căutați și selectați cârlige pentru producător de web. Se va cere numele evenimentului pe care l-am numit evenimentul „123”
7. Apoi faceți clic pe „Că”, căutați și selectați Gmail și introduceți subiectul și corpul mesajului.
8. Odată introduse toate detaliile necesare, Apple ar trebui să fie gata și ar trebui să arate cam așa mai jos
9. Acum, căutați și intrați din nou în Web Maker Hooks și faceți clic pe „Documentație”. Apoi, sub numele evenimentului, introduceți numele evenimentului pe care l-am folosit în applet. În cazul meu, este „123” și copiați adresa URL, deoarece vom avea nevoie de ea în programul nostru Arduino. Adresa URL ar trebui să aibă ceva de genul mai jos.
10. Puteți face clic pe butonul „Testați-l” pentru a verifica dacă legătura funcționează corect și ar trebui să primiți un e-mail de testare făcând acest lucru.
Program Arduino
Programul Arduino pentru acest proiect este simplu și ușor. Trebuie doar să facem ca ESP să acționeze ca AP și STA. Apoi creați o pagină web folosind cod HTML unde putem ARM / DEZARMA sistemul de alarmă. Codul complet este dat la sfârșitul acestui tutorial, codul este explicat și folosind linii de comentarii. În continuare, liniile importante sunt explicate mai jos.
const char * ssid = "BPAS home"; // Introduceți aici Wifi SSID const char * password = "cracksen"; // Introduceți parola aici
În linia de cod de mai sus, schimbați numele și parola SSID în numele routerului SSID și parola corespunzătoare.
Dacă doriți să găsiți la care IP este conectat ESP8266, îl puteți afla deschizând monitorul serial, următoarele linii de cod vă vor imprima IP-ul pe monitorul serial Arduino IDE.
Serial.println (""); Serial.print („Conectat la”); Serial.println (ssid); Serial.print („Adresă IP:”); Serial.println (WiFi.localIP ()); // Monitorul serial va da adrese IP ale modulului ESP
Codul HTML care este responsabil pentru crearea unei pagini web este dat mai jos. Vă puteți personaliza pagina web cu propriul cod. Am modificat partea de feedback pentru a recunoaște utilizatorul dacă pagina a fost încărcată cu succes.
// Cod HTML pentru pagina web // mainPage + = "
Sistem de securitate bazat pe IOT
-CircuitDigest
Stare alarmă:
"; feedback ="Faceți clic pe ARM pentru a activa sistemul de securitate
"; // Sfârșitul codului HTML //Liniile de cod de mai jos determină ce trebuie făcut atunci când alarma este armată sau dezarmată. În programul meu am schimbat partea de feedback a codului HTML și am făcut GPIO 2 pini HIGH / LOW pe baza butonului, așa cum se arată mai jos
server.on ("/ switch2On", () {feedback = "
Alarma funcționează
"; // Modificare cod HTML currentPage = mainPage + feedback; server.send (200," text / html ", currentPage); currentPage =" "; digitalWrite (GPIO_2, HIGH); // Porniți modulul PIR și Voice power_module = true; delay (1000);}); server.on ("/ switch2Off", () {feedback = "Alarma este oprită
"; // Modificare cod HTML currentPage = mainPage + feedback; server.send (200," text / html ", currentPage); currentPage =" "; digitalWrite (GPIO_2, LOW); // Dezactivați modulul PIT și Voice power_module = fals; întârziere (1000);});O altă linie importantă care trebuie modificată pentru ca sistemul să funcționeze corect este linia șir URL. Lipiți linia (după „/ trigger”) pe care ați copiat-o de pe site-ul IFTTT aici. Am arătat-o pe a mea mai jos, dar nu folosiți cheia API, folosiți-vă propria dvs. aici
String url = "/ trigger / 123 / with / key / mDsoOV_EERS3xRfrh3_UQBhbcx0qlRHns-z2qXXXXX"; // Trebuie să-l modificați la adresa URL API
Restul codului se explică de la sine, dacă aveți vreo îndoială, puteți folosi secțiunea de comentarii și vă voi ajuta.
Lucru
Odată ce sunteți gata cu hardware-ul și codurile, puteți încărca programul pe modulul dvs. ESP8266 utilizând o placă FTDI. DACĂ nu sunteți sigur cum să încărcați programe pe ESP8266 utilizând Arduino IDE, vizitați acest tutorial.
După încărcarea programului, faceți clic pe monitorul serial și ar trebui să vedeți așa ceva mai jos. Dacă nu resetați modulul ESP8266 și încercați din nou
Aici, puteți nota nota adresei IP care este alocată modulului dvs. ESP8266. Apoi, puteți utiliza IP-ul pentru a încărca pagina web de pe browser și pentru a activa / dezactiva sistemul de securitate IoT de acolo, așa cum se arată în imaginea de mai jos.
După ce ați verificat toate acestea, puteți transfera acum ESP8266 pe placa Perf și porniți-l și apoi scurtați comutatoarele așa cum se arată în videoclip.
După pornire, puteți utiliza IP-ul pentru a accesa pagina web afișată mai sus și pentru a activa sistemul Securtiy. După activare, așteptați 50-60 de secunde pentru ca senzorul PIR să se calibreze.
Acum proiectul dvs. este gata de acțiune, îl puteți lăsa într-un loc dorit și dacă cineva traversează acel loc și se încadrează în raza senzorului PIR, va fi declanșat un mesaj vocal și va fi trimis un e-mail către e-mailul dvs. ID-ul cu Data și ora în care a trecut. E-mailul este afișat mai jos.
Deci, asta este. Sper că proiectul ți-a plăcut și îți va face plăcere să-ți faci propriul. Lucrarea completă a proiectului este prezentată în videoclipul de mai jos. Dacă aveți îndoieli sau sugestii, le puteți scrie în secțiunea de comentarii de mai jos și vă voi răspunde cât mai mult posibil.