Cuprins:
- Pasul 1: Conceptul, conectivitatea și componentele
- Pasul 2: Puneți la dispoziție ID-ul Arduino
- Pasul 3: Conectarea senzorului de temperatură, LED-ului și PIR
- Pasul 4: Configurarea serverului Web Cloud
- Pasul 5: Configurarea bazei de date pentru a păstra datele de temperatură
- Pasul 6: Creați tabelul „temperatură”
- Pasul 7: încărcați schița senzorului de temperatură pe ESP8266
- Pasul 8: Accesarea senzorului de temperatură și mișcare
- Pasul 9: Instalați HomeBridge for HomeKit în Raspberry Pi (opțional)
- Pasul 10: Conectarea Homebridge la iPhone-ul dvs
- Pasul 11: Faceți Homebridge să ruleze în fundal
Video: Senzor de temperatură și mișcare fără fir IoT: 11 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Am fost inspirat de numeroasele proiecte IoT care se află în Instructables, așa că în procesul de învățare încerc să combin câteva aplicații utile care sunt relevante. Ca extensie la instructabilele mele anterioare legate de senzorul de temperatură IoT, am adăugat acum mai multe funcții subsistemului. Funcționalitățile adăugate sunt:
- Conexiune NTP pentru a obține timpul
- LED care poate fi controlat de la distanță
- Senzor PIR pentru a detecta mișcarea
- Raspberry PI conectat care rulează homekit pentru a permite conectarea la iPhone „Home”
Pasul 1: Conceptul, conectivitatea și componentele
Conceptul prezentat mai sus este de a permite monitorizarea temperaturii de la distanță, cu capacitatea suplimentară de a detecta mișcarea dacă cineva este acasă și de a permite notificarea prin LED. Unitatea poate fi accesată local în rețeaua LAN sau de la distanță prin intermediul serverului web. De asemenea, puteți conecta plăcinta cu zmeură (opțional) cu accesoriul Homekit instalat pentru a permite conectarea la aplicația iPhone „Acasă”.
La fel ca și versiunea anterioară, sunt necesare următoarele componente în acest proiect, vă rugăm să rețineți că linkul de mai jos este un link afiliat, deci dacă nu doriți să contribuiți, mergeți direct.
- NodeMcu Lua ESP8266 dev board. O primesc pe a mea de la banggood.
- Senzor de temperatură LM35
- Senzor PIR
- LED
- Placă prototip
- ID Arduino
- Server web funcțional cu scriptarea serverului php activat
- Raspberry pi (Opțional)
Pasul 2: Puneți la dispoziție ID-ul Arduino
Pentru detalii cu privire la acest pas, vă rugăm să consultați pasul meu anterior instructabile Pasul 2. pe senzorul de temperatură IoT cu ESP8266.
Pasul 3: Conectarea senzorului de temperatură, LED-ului și PIR
Senzorul de temperatură LM35 are 3 picioare, primul picior este VCC, îl puteți conecta la 3.3V (ieșirea plăcii ESP8266 este de 3.3V). Piciorul din mijloc este Vout (de unde se citește temperatura, îl puteți conecta la intrarea analogică a pinului ESP0266 AD0, acesta este situat în partea dreaptă sus a plăcii, așa cum se arată în imagine. Și piciorul drept ar trebui să fie conectat la sol.
Senzorul PIR constă și din 3 picioare, puteți vedea un mic marcaj de +, 0, - pe PCB lângă picior. Deci conectați „+” la 3,3 V, „-” la sol și pinul central „0” la pinul D6 al ESP8266.
LED-ul avea doar 2 picioare, „+” (anod), cu cât piciorul mai lung îl conectează la pinul D5 al ESP8266 și „-” (catod), picioarele mai scurte ar trebui conectate la masă (GND).
Pasul 4: Configurarea serverului Web Cloud
Există o anumită presupunere pentru acest pas:
Aveți deja un server web funcțional, găzduit într-un domeniu adecvat. Și sunteți familiarizat cu transferul de fișiere în serverul dvs. web prin FTP utilizând Filezilla sau alt program FTP.
Încărcați fișierul zip atașat la rădăcina site-ului dvs. web. Să presupunem că pentru acest exercițiu site-ul dvs. web este „https://arduinotestbed.com”
Se presupune că întregul fișier este situat în rădăcina serverului web, dacă îl aveți stocat într-un alt folder, vă rugăm să ajustați locația fișierului în mod corespunzător atât în fișierul ArduinoData3.php, cât și în schița Arduino. Dacă nu sunteți sigur, vă rugăm să ne anunțați și voi încerca tot ce pot pentru a vă ajuta.
Pasul 5: Configurarea bazei de date pentru a păstra datele de temperatură
folosim baza de date sqllite pentru acest exercițiu. Sqllite este baza de date bazată pe fișiere ușoare care nu necesită un server. Baza de date este localizată local în serverul dvs. web. Dacă sunteți îngrijorat de securitate, atunci ar trebui să modificați codul pentru a utiliza un server de baze de date adecvat, cum ar fi mysql sau MSSQL.
Înainte de a începe, trebuie să modificați parola bazei de date aflată în fișierul phpliteadmin.php. Deci, deschideți acest fișier în serverul dvs. web și editați informațiile despre parolă în linia 91 la parola dorită.
Apoi indicați spre phpliteadmin.php în serverul dvs. web. Folosind exemplul nostru înainte de a arăta spre
Deoarece nu există o bază de date în server, vi se va prezenta ecranul pentru a crea baza de date. Introduceți „temperature.db” în noua casetă de introducere a bazei de date și faceți clic pe butonul „Create”. Baza de date va fi apoi creată cu succes. În acest moment, baza de date este încă goală, deci veți avea nevoie de scriptul sql pentru a crea structura tabelului bazei de date pentru a găzdui datele.
Pasul 6: Creați tabelul „temperatură”
Pentru a crea tabelul, faceți clic pe fila „SQL” și lipiți în următoarea interogare sql.
ÎNCEPE TRANZACȚIA;
---- - Structura tabelului pentru temperatură ---- CREAȚI TABELUL „temperatură” („ID” TASTĂ PRIMARĂ INTEGRĂ NU NULĂ, umiditate INT NU NULĂ, temperatură REALĂ, timestamp DATETIME DEFAULT CURRENT_TIMESTAMP, „încălzitor” BOOLEAN, „goaltemp” REAL); COMITIA;
Apoi faceți clic pe butonul „Go” din partea de jos. Tabelul ar trebui creat cu succes.
Dacă reîmprospătați pagina, ar trebui să vedeți acum tabelul „temperatură” din baza de date temperature.db din partea stângă. Dacă faceți clic pe tabelul de temperatură, dacă încă nu conține date.
Acum că am creat baza de date, puteți indica următoarea adresă URL
arduinotestbed.com/ArduinoData3.php
Veți vedea cadranul de temperatură care afișează date fictive, senzorul de mișcare și panoul de control pentru a roti LED-ul. Partea de jos a graficului va fi în continuare goală, deoarece încă nu există date.
Pasul 7: încărcați schița senzorului de temperatură pe ESP8266
Acum copiați tot fișierul atașat și deschideți „ESP8266TempPIRSensor.ino” interfața Arduino vă va crea folderul. Mutați restul fișierelor în noul folder creat de interfața Arduino.
Modificați serverul web specificat și locația fișierului data_store3.php dacă este necesar. Apoi încărcați schița pe ESP8266.
Dacă totul merge bine, ar trebui încărcat cu succes și prima dată când ESP va intra în modul AP. Puteți utiliza laptopul sau telefonul mobil pentru a vă conecta la acesta. Ar trebui să puteți găsi AP-ul cu numele de "ESP-TEMP".- Încercați să vă conectați la ESP-TEMP folosind laptopul dvs. de telefon mobil - Aflați care este adresa IP căreia vi se atribuie, făcând Comanda "ipconfig" în Windows sau comanda "ifconfig" în Linux sau Mac. - Dacă utilizați iphone, faceți clic pe butonul i de lângă ESP-TEMP la care sunteți conectat - Deschideți browserul și indicați spre ESP-TEMP, dacă vi se atribuie 192.168.4.10 ca IP, ESP-TEMP are ip-ul 192.168.4.1, deci puteți merge doar la https://192.168.4.1 și ar trebui să vi se prezinte pagina de setări unde puteți introduce router-ul wifi ssid și cheia psk. după ce ați introdus ambele și bifați caseta de selectare „Actualizare configurare Wifi”, faceți clic pe „actualizare” pentru a actualiza setarea la ESP8266.
Dacă doriți să activați depanarea pe Serial Monitor, va trebui să descomentați
#define DEBUG
linie în ceas.h și a comentat
// # undef DEBUG
linia. apoi faceți clic pe Instrumente-> Monitor serial. Fereastra monitorului serial vă va arăta progresul conexiunii wifi și va afișa adresa IP locală a ESP8266. LED-ul albastru intern va clipi o dată când are loc citirea temperaturii. De asemenea, se va activa atunci când este detectată o mișcare.
Pasul 8: Accesarea senzorului de temperatură și mișcare
Acum ar trebui să puteți indica din nou către serverul de internet local al ESP8266. Și aceasta va arăta ora, temperatura și senzorul de mișcare.
Acum puteți indica, de asemenea, serverul dvs. web extern, în acest exemplu este
Puteți glisa butonul sub panoul de control pentru a comuta LED-ul. Folosesc acest lucru pentru a-mi anunța copiii când mă întorc acasă de la serviciu.
Senzorul de mișcare este actualizat la fiecare câteva secunde, așa că va trebui să reîmprospătați pagina mai des pentru a vedea dacă este detectată o mișcare. În acest moment, reîmprospătarea automată este setată la 60 de secunde. Temperatura va dura citirea la fiecare câteva minute, dar o puteți regla și la timpul potrivit.
Felicitări dacă ai ajuns până aici !!, dă-ți o palmă în spate și bucură-te de creația ta. Următorul pas este opțional, doar dacă doriți să puteți controla LED-ul și să monitorizați temperatura, precum și senzorul de mișcare de pe dispozitivele Apple.
Pasul 9: Instalați HomeBridge for HomeKit în Raspberry Pi (opțional)
Am fost inspirat de instructibilele de la GalenW1 care îmi permit să aflu atât de multe despre HomeBridge.
Pentru a instala HomeBridge pentru HomeKit pe un Raspberry Pi, puteți utiliza instrucțiunile de mai jos
github.com/nfarina/homebridge
HomeBridge vă permite să conectați aplicația Home în Iphone la senzorii pe care tocmai îi construiți în pașii anteriori.
Unul dintre care aveți instalat HomeBridge, trebuie să instalați câteva pluginuri:
- Senzor de temperatura
- Senzor de mișcare
- Intrerupator
sudo npm instala -g homebridge-http-temperature
sudo npm install -g homebridge-MotionSensor
sudo npm instala -g homebridge-http-simple-switch
Odată ce pluginul este instalat, va trebui să configurați fișierul config.json aflat mai jos
sudo vi /home/pi/.homebridge/config.json
puteți ajusta conținutul fișierului config.json conform celor de mai jos, vă rugăm să vă asigurați că adresa URL indică locația corectă.
Pasul 10: Conectarea Homebridge la iPhone-ul dvs
Acum că toate accesoriile au fost configurate, puteți rula homebridge-ul folosind următoarea comandă
homebridge
Ar trebui să vedeți ecranul ca mai sus. Puteți urma următorul pas pentru a adăuga Homebridge-ul la homekit.
- Acum porniți aplicația „Acasă” în Iphone
- Faceți clic pe butonul „Adăugați accesorii”
- vi se va afișa ecranul pentru a scana codul, puteți utiliza camera telefonului pentru a scana codul de pe ecranul Raspberry Pi sau adăugând manual codul.
Vă rugăm să rețineți că atât Iphone, cât și Raspberry Pi trebuie să fie pe același router wireless pentru a funcționa.
- După conectare, vi se va solicita ecranul care spune că accesoriile dvs. nu sunt certificate, faceți clic pe butonul „Adăugați oricum” pentru a continua
- Veți avea apoi opțiunea de a configura fiecare dintre accesorii, în acest caz avem comutatorul de lumină, senzorul de mișcare și senzorul de temperatură.
- Ecranul final vă va arăta toate accesoriile conectate.
Odată ce este conectat, puteți utiliza Siri pentru a verifica senzorul de mișcare, temperatura și pentru a aprinde și opri lumina.
Pasul 11: Faceți Homebridge să ruleze în fundal
Felicitări!! ai făcut-o. Ca bonus puteți rula homebridge în fundal folosind următoarea comandă:
homebridge &
Acum poți să te distrezi cu Siri și să te bucuri de truda ta.
Vă mulțumim că ați urmat acest lucru până la sfârșit. Dacă vă place acest lucru, vă rugăm să lăsați câteva comentarii sau să mă votați.
Recomandat:
IoT- Ubidots- ESP32 + Senzor de vibrații și temperatură fără fir cu rază lungă de acțiune: 7 pași
IoT- Ubidots- ESP32 + Senzor de vibrație și temperatură fără fir cu rază lungă de viață: vibrația este cu adevărat o mișcare înainte sau înapoi - sau oscilație - a mașinilor și componentelor din gadgeturile motorizate. Vibrația din sistemul industrial poate fi un simptom sau motiv al unei bătăi de cap sau poate fi asociată cu funcționarea zilnică. De exemplu, osci
Robot Arduino fără fir folosind modulul HC12 fără fir: 7 pași
Robot wireless Arduino folosind modulul HC12 fără fir: Hei băieți, bine ați revenit. În postarea mea anterioară, am explicat ce este un circuit H Bridge, circuitul de conducător auto L293D IC, piggybacking L293D driverul IC pentru conducerea driverelor de curent mare și modul în care puteți proiecta și crea propriul dvs. driver de motor L293D
Microfon fără fir DIY la sistem de chitară fără fir: 4 pași
Sistem de microfon fără fir DIY la sistem de chitară fără fir: Am urmărit câteva videoclipuri și câteva trupe și aproape dintre ele folosesc un sistem wireless pe chitară. Înnebunind, mișcându-se, mergând și fac tot ce vor fără cablu, așa că visez să am unul .. Dar … pentru mine acum este prea scump, așa că am ajuns la asta
Răcitor / suport pentru laptop cu cost zero (fără lipici, fără găurire, fără piulițe și șuruburi, fără șuruburi): 3 pași
Zero Cost Laptop Cooler / Stand (Fără lipici, fără găurire, fără piulițe și șuruburi, fără șuruburi): ACTUALIZARE: VĂ RUGĂM VOTĂ PENTRU MEA MEA MEA INTRAREA PE www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ SAU POATE VOTA PENTRU CEL MAI BUN PRIETEN AL MEU
Hack un clopoțel fără fir într-un comutator de alarmă fără fir sau întrerupător de pornire / oprire: 4 pași
Spargerea unui clopoțel wireless într-un comutator de alarmă fără fir sau întrerupător de pornire / oprire: recent am construit un sistem de alarmă și l-am instalat în casa mea. Am folosit întrerupătoare magnetice la ușă și le-am conectat prin pod la ferestre. Ferestrele erau o altă poveste, iar cablarea dură a acestora nu era o opțiune. Aveam nevoie de o soluție wireless și asta este