Obsah:

Bezdrôtový snímač teploty a pohybu IoT: 11 krokov (s obrázkami)
Bezdrôtový snímač teploty a pohybu IoT: 11 krokov (s obrázkami)

Video: Bezdrôtový snímač teploty a pohybu IoT: 11 krokov (s obrázkami)

Video: Bezdrôtový snímač teploty a pohybu IoT: 11 krokov (s obrázkami)
Video: TOP 10 Tajné funkce mobilu o kterých 90% lidí neví 2024, November
Anonim
Bezdrôtový snímač teploty a pohybu IoT
Bezdrôtový snímač teploty a pohybu IoT

Inšpiroval som sa mnohými projektmi internetu vecí, ktoré sú v Instructables, takže sa v procese učenia snažím skombinovať nejakú užitočnú aplikáciu, ktorá je relevantná. Ako rozšírenie mojich predchádzajúcich inštrukcií týkajúcich sa snímača teploty IoT som teraz do subsystému pridal ďalšie možnosti. Pridané funkcie sú:

- Pripojenie NTP, aby ste získali čas

- LED dióda, ktorú je možné diaľkovo ovládať

- Senzor PIR na detekciu pohybu

- Pripojený Raspberry PI s homekitom umožňujúcim pripojenie k iPhone „Home“

Krok 1: Koncept, konektivita a komponenty

Koncept, konektivita a komponenty
Koncept, konektivita a komponenty

Koncept, ako je znázornený vyššie, je umožniť diaľkové monitorovanie teploty s dodatočnou schopnosťou detekovať pohyb, ak je niekto doma, a povoliť upozornenie pomocou LED. K jednotke je možné získať prístup lokálne v sieti LAN alebo vzdialene prostredníctvom webového servera. Malinový koláč (voliteľný) môžete tiež pripojiť k nainštalovanému príslušenstvu Homekit, aby bolo možné pripojenie k aplikácii „Home“pre iPhone.

Rovnako ako predchádzajúca verzia, aj v tomto projekte sú požadované nasledujúce komponenty. Upozorňujeme, že nasledujúci odkaz je odkazom na pridruženú spoločnosť, takže ak nechcete prispieť, choďte priamo.

- Vývojová doska NodeMcu Lua ESP8266. Svoje mám z Banggood.

- snímač teploty LM35

- PIR senzor

- LED

- Tabuľa prototypov

- Arduino IDE

- Fungujúci webový server so zapnutým skriptovaním php servera

- Raspberry pi (voliteľné)

Krok 2: Začnite pracovať s IDE Arduino

Získajte IDE Arduino do práce
Získajte IDE Arduino do práce

Podrobnosti o tomto kroku nájdete v mojom predchádzajúcom pokyne, krok 2. k snímaču teploty IoT s ESP8266.

Krok 3: Pripojenie teplotného senzora, LED a PIR

Pripojenie teplotného senzora, LED a PIR
Pripojenie teplotného senzora, LED a PIR
Pripojenie teplotného senzora, LED a PIR
Pripojenie teplotného senzora, LED a PIR
Pripojenie teplotného senzora, LED a PIR
Pripojenie teplotného senzora, LED a PIR

Teplotný snímač LM35 má 3 nohy, prvá noha je VCC, môžete ju pripojiť k 3,3 V (výstup dosky ESP8266 je 3,3 V). Stredná noha je Vout (odkiaľ sa číta teplota, môžete ju pripojiť k analógovému vstupu pinu ESP8266 AD0, ktorý je umiestnený na pravej hornej strane dosky, ako je znázornené na obrázku. A pravá noha by mala byť spojený so zemou.

PIR senzor sa skladá aj z 3 nôh, na nohe vedľa dosky vidíte malé označenie +, 0, -. Pripojte teda „+“k 3,3 V, „-“k zemi a stredný kolík „0“ku kolíku D6 na ESP8266.

LED mala iba 2 nohy, „+“(anóda), dlhšia noha ho spojila s kolíkom D5 ESP8266 a „-“(katóda), kratšie nohy by mali byť spojené so zemou (GND).

Krok 4: Nastavenie cloudového webového servera

Pre tento krok existuje určitý predpoklad:

Už máte fungujúci webový server hostený v správnej doméne. A poznáte prenos súborov na svoj webový server prostredníctvom FTP pomocou programu Filezilla alebo iného programu FTP.

Nahrajte priložený súbor zip do koreňa svojho webu. Predpokladajme, že pre toto cvičenie je váš web „https://arduinotestbed.com“

Predpokladá sa, že celý súbor je umiestnený v koreňovom adresári webového servera, ak ho máte uložený v inom priečinku, upravte podľa toho umiestnenie súboru v súbore ArduinoData3.php aj v skici Arduino. Ak si nie ste istí, dajte mi vedieť a ja sa pokúsim čo najlepšie pomôcť.

Krok 5: Nastavenie databázy na uchovávanie údajov o teplote

Nastavenie databázy na uchovávanie údajov o teplote
Nastavenie databázy na uchovávanie údajov o teplote
Nastavenie databázy na uchovávanie údajov o teplote
Nastavenie databázy na uchovávanie údajov o teplote
Nastavenie databázy na uchovávanie údajov o teplote
Nastavenie databázy na uchovávanie údajov o teplote

Na toto cvičenie používame databázu sqllite. Sqllite je ľahká súborová databáza, ktorá nevyžaduje server. Databáza sa nachádza lokálne vo vašom webovom serveri. Ak máte obavy o bezpečnosť, mali by ste kód upraviť tak, aby používal správny databázový server, ako je mysql alebo MSSQL.

Predtým, ako začnete, musíte zmeniť heslo databázy umiestnené v súbore phpliteadmin.php. Otvorte teda tento súbor vo svojom webovom serveri a upravte informácie o hesle v riadku 91 na požadované heslo.

Potom ukážte na webový server na phpliteadmin.php. Ak použijete náš príklad, mali by ste ukázať na stránku

Pretože na serveri nie je žiadna databáza, zobrazí sa vám obrazovka na vytvorenie databázy. Do vstupného poľa novej databázy zadajte „teplota.db“a kliknite na tlačidlo „Vytvoriť“. Databáza sa potom úspešne vytvorí. V tomto mieste je databáza stále prázdna, takže na vytvorenie štruktúry tabuľky databáz na hostovanie údajov budete potrebovať skript sql.

Krok 6: Vytvorte tabuľku „teploty“

Vytvorte súbor
Vytvorte súbor
Vytvorte súbor
Vytvorte súbor

Tabuľku vytvoríte kliknutím na kartu "SQL" a vložením nasledujúceho dotazu sql.

ZAČAŤ TRANSAKCIU;

-----Štruktúra tabuľky pre teplotu ---- VYTVORIŤ TABUĽKU 'teplota' ('ID' INTEGEROVÝ PRIMÁRNY KĽÚČ NIE JE NULL, vlhkosť NIE JE NULÁ, teplota JE SKUTOČNÁ, časová značka DATETIME DEFAULT CURRENT_TIMESTAMP, 'ohrievač' BOOLEAN, 'goaltemp' REÁLNY); ZÁVÄZOK;

Potom kliknite na tlačidlo „Prejsť“v spodnej časti. Tabuľka by mala byť úspešne vytvorená.

Ak stránku obnovíte, mala by sa vám vľavo zobraziť databáza „teplota“pod databázou temperature.db. Ak kliknete na tabuľku teplôt, ak stále neobsahuje žiadne údaje.

Teraz, keď máme databázu vytvorenú, môžete ukázať na nasledujúcu adresu URL

arduinotestbed.com/ArduinoData3.php

Videli by ste, že číselník teploty zobrazuje atrapy údajov, snímač pohybu a ovládací panel, aby rozsvietili LED. Spodná časť grafu bude stále prázdna, pretože zatiaľ nie sú k dispozícii žiadne údaje.

Krok 7: Nahrajte skicu snímača teploty do svojho ESP8266

Odošlite skicu snímača teploty do svojho ESP8266
Odošlite skicu snímača teploty do svojho ESP8266
Odošlite skicu snímača teploty do svojho ESP8266
Odošlite skicu snímača teploty do svojho ESP8266
Odošlite skicu snímača teploty do svojho ESP8266
Odošlite skicu snímača teploty do svojho ESP8266

Teraz skopírujte všetok priložený súbor a otvorte „ESP8266TempPIRSensor.ino“, priečinok vám vytvorí rozhranie Arduino. Presuňte zvyšné súbory do nového priečinka, ktorý bol vytvorený rozhraním Arduino.

V prípade potreby upravte zadaný webový server a umiestnenie súboru data_store3.php. Potom nahrajte skicu do ESP8266.

Ak všetko pôjde dobre, malo by byť úspešne nahrané a keď ESP prvýkrát prejde do režimu AP. Na pripojenie k nemu môžete použiť prenosný počítač alebo mobilný telefón. Mali by ste nájsť AP podľa názvu „ESP-TEMP“.- Skúste sa pripojiť k ESP-TEMP pomocou prenosného počítača z mobilného telefónu- Zistite, aká je adresa IP, ku ktorej vám je priradená, vykonaním postupu. Príkaz „ipconfig“v systéme Windows alebo príkaz „ifconfig“v systéme Linux alebo Mac. -Ak používate iphone, kliknite na tlačidlo i vedľa položky ESP-TEMP, ku ktorej ste pripojení-Otvorte prehliadač a ukážte na položku ESP-TEMP, ak vám je priradená adresa IP 192.168.4.10, adresa ESP-TEMP má IP 192.168.4.1, takže stačí ísť na https://192.168.4.1 a mala by sa vám zobraziť stránka s nastaveniami, kde môžete zadať ssid vášho wifi routera a kľúč psk. akonáhle zadáte obidva a začiarknete políčko „Aktualizovať konfiguráciu Wi -Fi“, kliknutím na „aktualizovať“aktualizujete nastavenie na svoj ESP8266.

Ak chcete zapnúť ladenie na sériový monitor, budete musieť odkomentovať súbor

#define DEBUG

riadok v hodinách.h a komentoval

//#undef DEBUG

riadok. potom kliknite na Nástroje-> Sériový monitor. Okno sériového monitora vám ukáže priebeh wifi pripojenia a zobrazí miestnu IP adresu ESP8266. Vnútorná modrá LED dióda jedenkrát zabliká, keď prebieha meranie teploty. Tiež sa zapne, keď je detekovaný pohyb.

Krok 8: Prístup k snímaču teploty a pohybu

Prístup k snímaču teploty a pohybu
Prístup k snímaču teploty a pohybu
Prístup k snímaču teploty a pohybu
Prístup k snímaču teploty a pohybu

Teraz by ste mali mať opäť možnosť ukázať na lokálny webový server ESP8266. A ten ukáže čas, teplotu a snímač pohybu.

Teraz môžete tiež ukázať na svoj externý webový server, v tomto prípade je to

LED diódu môžete prepnúť posunutím tlačidla pod ovládacím panelom. Používam to na upozornenie svojich detí, keď som na ceste domov z práce.

Senzor pohybu sa aktualizuje zhruba každú sekundu, takže budete musieť stránku obnovovať častejšie, aby ste zistili, či je detekovaný pohyb. V súčasnosti je automatické obnovenie nastavené na 60 sekúnd. Teplota sa bude odčítavať každých pár minút, ale môžete ju tiež prispôsobiť času, ktorý vám vyhovuje.

Gratulujeme, ak ste sa dostali až sem !!, dajte si potľapkanie po pleci a užívajte si svoju tvorbu. Ďalší krok je voliteľný, iba ak by ste chceli ovládať zariadenie LED a monitorovať teplotu, ako aj snímač pohybu zo zariadení Apple.

Krok 9: Nainštalujte HomeBridge pre HomeKit do Raspberry Pi (voliteľné)

Nainštalujte HomeBridge pre HomeKit do Raspberry Pi (voliteľné)
Nainštalujte HomeBridge pre HomeKit do Raspberry Pi (voliteľné)

Inšpiroval som sa inštrukciami z GalenW1, ktoré mi umožňujú dozvedieť sa toľko o HomeBridge.

Pri inštalácii HomeBridge pre HomeKit na Raspberry Pi môžete použiť nasledujúce pokyny

github.com/nfarina/homebridge

HomeBridge vám umožňuje pripojiť aplikáciu Home v iPhone k senzorom, ktoré ste postavili v predchádzajúcich krokoch.

Jeden, do ktorého si nainštalujete HomeBridge, si musíte nainštalovať aj niekoľko doplnkov:

- Teplotný senzor

- Pohybový senzor

- Prepnúť

sudo npm install -g homebridge-http-teplota

sudo npm install -g homebridge -MotionSensor

sudo npm install -g homebridge-http-simple-switch

Po inštalácii doplnku budete musieť nakonfigurovať súbor config.json umiestnený nižšie

sudo vi /home/pi/.homebridge/config.json

obsah súboru config.json môžete upraviť podľa nižšie uvedeného postupu. Uistite sa, že adresa URL smeruje na správne miesto.

Krok 10: Pripojenie zariadenia Homebridge k vášmu telefónu iPhone

Pripojenie Homebridge k vášmu iPhone
Pripojenie Homebridge k vášmu iPhone
Pripojenie Homebridge k vášmu iPhone
Pripojenie Homebridge k vášmu iPhone
Pripojenie Homebridge k vášmu iPhone
Pripojenie Homebridge k vášmu iPhone

Teraz, keď bolo nakonfigurované všetko príslušenstvo, môžete homebridge spustiť pomocou nasledujúceho príkazu

homebridge

Mali by ste vidieť obrazovku ako vyššie. Nasledujúcim krokom môžete pridať Homebridge do svojho domova.

- Teraz spustite aplikáciu „Domov“vo svojom iPhone

- Kliknite na tlačidlo „Pridať príslušenstvo“

- Na skenovanie kódu sa vám zobrazí obrazovka. Na skenovanie kódu z obrazovky Raspberry Pi môžete použiť kameru telefónu alebo kód pridať ručne.

Upozorňujeme, že Iphone aj Raspberry Pi musia byť pripojené k rovnakému bezdrôtovému smerovaču.

- Po pripojení sa zobrazí obrazovka s informáciou, že vaše príslušenstvo nie je certifikované, pokračujte kliknutím na tlačidlo „Pridať napriek tomu“

- Potom budete mať možnosť nakonfigurovať každé z doplnkov, v tomto prípade máme spínač svetiel, snímač pohybu a snímač teploty.

- Na poslednej obrazovke sa zobrazí všetko príslušenstvo, ktoré je pripojené.

Akonáhle je pripojený, môžete pomocou Siri kontrolovať snímač pohybu, teplotu a zapínať a vypínať svetlo.

Krok 11: Nechajte svoj Homebridge bežať na pozadí

Nechajte svoj Homebridge bežať na pozadí
Nechajte svoj Homebridge bežať na pozadí
Nechajte svoj Homebridge bežať na pozadí
Nechajte svoj Homebridge bežať na pozadí
Nechajte svoj Homebridge bežať na pozadí
Nechajte svoj Homebridge bežať na pozadí

Gratulujem !! ty si to urobil Ako bonus môžete spustiť homebridge na pozadí pomocou nasledujúceho príkazu:

homebridge &

Teraz sa môžeš so Siri zabaviť a užiť si svoju drinu.

Ďakujem, že ste to dodržali až do konca. Ak sa vám to páči, zanechajte prosím nejaké komentáre alebo hlasujte za mňa.

Odporúča: