Obsah:

LEIDS - nízkoenergetický dveřní senzor IOT: 8 kroků (s obrázky)
LEIDS - nízkoenergetický dveřní senzor IOT: 8 kroků (s obrázky)

Video: LEIDS - nízkoenergetický dveřní senzor IOT: 8 kroků (s obrázky)

Video: LEIDS - nízkoenergetický dveřní senzor IOT: 8 kroků (s obrázky)
Video: Что произойдет, если вы не едите 5 дней? 2024, Listopad
Anonim
LEIDS - nízkoenergetický dveřní senzor IOT
LEIDS - nízkoenergetický dveřní senzor IOT

Co je LEIDS?

LEIDS je senzor IOT, který je založen na ESP8266. Tento senzor využívá tuto desku, obvod s měkkým blokováním, jazýčkový spínač a některé magnety k vytvoření dveřního senzoru, který vás upozorní na otevření a zavření dveří. Tento senzor lze připojit k vašemu serveru MQTT, IFTTT nebo mnoha dalším rámcům, které podporují ESP8266. Tento instruktáž použije IFTTT ke snadnému vytvoření senzoru, který odešle upozornění na vaše mobilní zařízení bez ohledu na to, kde se nacházíte. Senzor lze také nastavit tak, aby umožňoval více výstrah ze samostatných dveří, poštovních schránek, pecí a čehokoli dalšího, co má fyzickou polohu otevření/zavření nebo zapnutí/vypnutí. Výhodou LEIDS je, že využívá minimální výkon a využívá energii pouze při otevřených dveřích, poté, co jsou dveře zavřeny, odešle zprávu, která vás upozorní, že dveře byly zavřeny a vypnou se. Je to lepší než hluboké uspání modulu, protože pokud neotevřete dveře, nespotřebovává žádnou energii.

Krok 1: Spotřební materiál

Zásoby
Zásoby
Zásoby
Zásoby
Zásoby
Zásoby
Zásoby
Zásoby

Níže uvedené seznamy ukazují nástroje a součásti, které jsem pro tento projekt použil. Senzor může být přepracován tak, aby používal různé části a vypadal/fungoval odlišně a používal pouze podobné koncepty.

Nástroje:

  • Páječka
  • ESP01-UART nebo Arduino Uno (programátor pro ESP8266)
  • 3D tiskárna (volitelně)
  • Propojovací kabely (volitelně)
  • Breadboard (volitelně)

Díly:

  • ESP8266 ESP-01S x 1
  • Jazýčkový spínač x 1 (nejlépe NC, našel jsem jen normálně otevřený, takže musím použít dva magnety, aby fungoval jako normálně zavřený)
  • Regulátor AMS1117 3.3v
  • 2n3904 NPN tranzistor x 1
  • P-Channel Mosfet x 1 (chceme něco, co má nízké VGS, nejlépe NDP6020P)
  • 3.7v 100 mAh baterie Lipo x 1
  • Různé rezistory (100 k ohm, 10 k ohm, 220 ohm, 3 k3 ohm)
  • Magnety 6 x 3 mm x 2
  • Oboustranná montážní páska
  • Drát
  • Pájka
  • Perfboard

3D tištěné díly:

Pouzdro na senzor

Krok 2: Obvod s měkkou západkou - hardware

Obvod měkké západky - hardware
Obvod měkké západky - hardware

Obvod měkké západky, který používám, je modifikací schématu, které jsem našel online. Nejsem odborník a věřím, že existují lepší způsoby, jak tento obvod postavit, ale pro můj účel tento obvod dělá svou práci!

Funguje to tak, že když je jazýčkový spínač uzavřen magnetickým polem, propouští proud do tranzistoru NPN. Tranzistor NPN poté uzemní mosfet PNP, který umožňuje tok proudu do ESP8266. ESP8266 se zapíná a používá jeden ze svých kolíků k udržení uzemnění PNP mosfetu, který nadále napájí ESP8266. Poté, co je ESP8266 hotový se svými úkoly, nastaví tento výstupní pin na LOW, což přeruší tranzistor NPN a zavře bránu na mosfetu PNP.

Použitím takového obvodu lze ESP8266 zapnout vypínačem a poté se zcela vypnout signálem. To umožňuje obvodu odebírat žádný proud, když je snímač zavřený/vypnutý.

Krok 3: ESP8266 - Hardware

ESP8266 - Hardware
ESP8266 - Hardware

ESP8266, který používám, bude odesílat zprávu s upozorněním, když jsou dveře (nebo jiná věc) otevřené, a poté počká, až se dveře zavřou, aby odeslaly zprávu o zavření a samy se zavřely. ESP8266 bude napájen obvodem s měkkou západkou a bude používat jeden pin ke čtení jazýčkového spínače a další pin k udržení napájení a poté k vypnutí. Rozhodl jsem se použít ESP-01, protože je malý. ESP odešle webový požadavek, který nás upozorní na změnu senzoru na „otevřený“a „zavřený“. Nejjednodušší metodou, kterou jsem našel, bylo použití IFTTT a Tabulek Google. To je vysvětleno v následujících krocích.

Krok 4: IFTTT pro vzdálená oznámení - část 1

IFTTT pro vzdálená oznámení - část 1
IFTTT pro vzdálená oznámení - část 1
IFTTT pro vzdálená oznámení - část 1
IFTTT pro vzdálená oznámení - část 1
IFTTT pro vzdálená oznámení - část 1
IFTTT pro vzdálená oznámení - část 1
IFTTT pro vzdálená oznámení - část 1
IFTTT pro vzdálená oznámení - část 1

V tomto návodu bude používání IFTTT a implementace webhooků a listů Google k získávání vzdálených oznámení na našem mobilním zařízení. K používání těchto služeb budete potřebovat následující:

  • Účet Google
  • Účet IFTTT (lze/měl by se přihlásit pomocí účtu Google)
  • Aplikace IFTTT pro vaše mobilní zařízení

Jakmile vytvoříte/přihlásíte se ke svým účtům, vytvoříme dva applety. Fotografie v horní části této části ukazují, jak manévrovat s webovou stránkou. Následující kroky se týkají prvního apletu, žádosti o spuštění události. Tento applet dostane zprávu ze senzoru a uloží událost do dokumentu Google listů. Poté si můžete prohlédnout historii svého senzoru a zjistit, kdy byl otevřen a zavřen.

  1. Přejděte na odkaz „Moje aplety“umístěný v horní části
  2. Klikněte na tlačítko „Nový aplet“
  3. Klikněte na modré tlačítko „+toto“
  4. Vyhledejte „webhooky“a klikněte na ně
  5. Na další stránce vyberte kartu „Přijmout webový požadavek“
  6. Poté nastavte název události na cokoli chcete, rozhodl jsem se pojmenovat jej „sensor_activated“
  7. Na následující stránce klikněte na modré tlačítko „+to“
  8. Vyhledejte službu „google listy“a vyberte ji
  9. Na následující stránce zvolte funkci „Přidat řádek do tabulky“
  10. Vyplňte akci následujícím způsobem:

    • Název tabulky, pojmenoval jsem svoji „Historie senzorů“
    • Formátovaný řádek musí vypadat následovně

      {{OccurredAt}} ||| {{Value1}} ||| {{Hodnota2}}

    • Ponechte poslední pole tak, jak je, pokud nechcete změnit, kam bude applet ukládat stav senzoru
  11. Poté klikněte na „Vytvořit akci“
  12. Nakonec na závěrečné obrazovce klikněte na „Dokončit“

Nyní vyzkoušejte, zda funguje

  1. Přejděte na tento odkaz
  2. Poté klikněte na tlačítko „Dokumentace“(tuto stránku „Dokumentace“použijeme znovu později)
  3. Nyní budete ve své osobní sekci pro aplet IFTTT Webhooks
  4. Do pole, kde je uvedeno „{event}“, zadejte název vaší události. V tomto případě je název události „sensor_activated“
  5. Nyní vyplňte pole „hodnota1“, toto je pole, které bude obsahovat umístění vašeho senzoru, vyplním jej „Přední dveře“
  6. Nyní vyplňte pole „hodnota2“, toto je pole, které bude mít stav senzoru, vyplním jej „otevřeno“jen pro testování
  7. Poté klikněte na modré tlačítko „Vyzkoušet“
  8. Pokud vše proběhlo dobře, měli byste dostat zelenou „Událost byla spuštěna“. zpráva nahoře
  9. Nyní, pokud chcete vidět, jak uložila vaši zprávu, můžete otevřít své listy Google a najít tabulku, kterou přidala. Připojil jsem obrázek, který ukazuje, jak bude tabulka vypadat

Nyní přejděte k dalšímu kroku přidání apletu, který nás upozorní na změnu stavu.

Krok 5: IFTTT pro vzdálená oznámení - část 2

IFTTT pro vzdálená oznámení - část 2
IFTTT pro vzdálená oznámení - část 2
IFTTT pro vzdálená oznámení - část 2
IFTTT pro vzdálená oznámení - část 2
IFTTT pro vzdálená oznámení - část 2
IFTTT pro vzdálená oznámení - část 2

Nyní přidáme applet, který nás upozorní, když se do tabulky stavu přidá řádek; jinými slovy, když senzor spustí událost. Stejně jako dříve budeme vytvářet nový applet. Následující kroky vás provedou vytvořením druhého apletu. Protože jsme v předchozím kroku udělali něco podobného, přidám do tohoto kroku pouze snímky, které se liší.

  1. Přejděte na odkaz „Moje aplety“umístěný v horní části
  2. Klikněte na tlačítko „Nový aplet“
  3. Klikněte na modré tlačítko „+toto“
  4. Vyhledejte „listy Google“a klikněte na ně
  5. Na další stránce vyberte kartu „Nový řádek přidán do tabulky“
  6. Poté vyplňte pole tak, aby ukazovala na tabulku, do které druhý aplet píše

    • V tomto případě je cesta „IFTTT/MakerWebooks/sensor_activated“
    • Název souboru je "Historie senzorů"
  7. Na následující stránce klikněte na modré tlačítko „+to“
  8. Vyhledejte službu „oznámení“a vyberte ji
  9. Nyní musíme vyplnit pole oznamovací služby

    • Název se změní na

      {{ColumnB}} byl {{ColumnC}}

    • Zpráva je nastavena na

      {{ColumnB}} byl {{ColumnC}} dne {{ColumnA}}

    • Odkaz zůstane sám
  10. Poté klikněte na „Vytvořit akci“
  11. Nakonec na závěrečné obrazovce klikněte na „Dokončit“

Chcete -li otestovat druhou část oznamovacího systému IFTTT, ujistěte se, že jste si stáhli aplikaci IFTTT do svého mobilního zařízení a přihlaste se pomocí svých přihlašovacích údajů. V mém případě se přihlašuji pomocí svého účtu Google. Nyní to můžeme otestovat tak, že se vrátíme na stránku „Dokumentace“a vypálíme test s názvem události nastaveným jako „senzor_aktivovaný“, pole „hodnota1“nastaveno na umístění a pole „hodnota2“nastaveno na stav.

To by vám mělo zaslat oznámení. Pokud žádný neobdržíte, ujistěte se, že jste přihlášeni pomocí stejného účtu a že jste aplikaci umožnili zasílat vám oznámení.

Krok 6: Arduino IDE a Sketch

Arduino IDE a Sketch
Arduino IDE a Sketch
Arduino IDE a Sketch
Arduino IDE a Sketch

Software použitý pro desku je kompilován pomocí Arduino IDE.

Logika je následující:

  • Jazýčkový spínač se zavře otevřením dveří
  • ESP se poté zapne a připojí k WiFi
  • Jakmile je navázáno připojení WiFi, odešle požadavek http (odešle příkaz na internet), který nám řekne, že byly otevřeny dveře nebo něco jiného
  • Poté přečte signál z jazýčkového spínače a určí, zda byly dveře zavřené
  • Když deska ESP zjistí, že je jazýčkový spínač otevřený (tj. Dveře byly zavřené), odešle další požadavek http, který nám řekne, že dveře byly zavřené
  • Poté signalizuje obvod měkké západky, aby přerušil napájení desky

Stáhněte si Arduino IDE

K této sekci jsem připojil arduino kód, který si můžete stáhnout. Pokud nemáte Arduino IDE, můžete si jej stáhnout online na

Nainstalujte správného správce desek

Chcete -li nahrát kód na desku ESP, musíte do Arduino IDE nainstalovat správce desek pomocí následujících kroků.

  • Přejděte na Soubor> Předvolby a otevřete okno předvoleb
  • V okně předvoleb najděte pole „Další adresy URL správce Board“
  • Do tohoto pole vložte následující odkaz https://arduino.esp8266.com/stable/package_esp8266com_index.json a stiskněte tlačítko „OK“
  • Nyní otevřete správce desek tak, že přejdete na Nástroje> Deska, pak úplně první položka bude Správce desek
  • Do nabídky na desce napište „ESP8266“a nainstalujte „esp8266“Vybral jsem verzi 2.5.0, protože jsem měl problémy s novějšími verzemi
  • Nyní se vraťte zpět a vyberte svou desku v nabídce Nástroje> Deska> Obecný modul ESP8266
  • Poté zavřete a znovu otevřete arduino ide, abyste se ujistili, že změny proběhly

Otevřete skicu v Arduino IDE

Potřebujeme upravit čtyři řádky kódu, aby vám senzor fungoval

  1. Změňte SSID na vaše WiFi SSID aka název vašeho wifi
  2. Změňte heslo tak, aby odpovídalo heslu pro vaši wifi
  3. Změňte adresu URL tak, aby odpovídala adrese URL na stránce „Dokumentace“služby „webhook“
  4. Změňte umístění senzoru na místo, kde jej plánujete umístit, což mohou být přední dveře, zadní dveře, poštovní schránka atd.

Nyní, když jste kód upravili tak, aby vyhovoval vašim potřebám, musíme jej načíst na desku. V mém případě používám USB programátor a dodržuji jeho pokyny. To může vyžadovat mnoho řešení potíží, takže doporučuji vyhledat online podrobnější návod. V mém případě zapojím ESP-01 do programátoru, pak jej zapojím do počítače, pak přepnu přepínač z uart do prog, nakonec odpojím a znovu zapojím programátor. Tím nyní zůstane ESP v programovacím režimu. Nyní jen kliknu na tlačítko pro odeslání a nechám nahrávání dokončit. Pokud chcete zjistit, zda se připojuje, můžete otevřít sériový monitor a podívat se na stavové zprávy. Jakmile načtete skicu, vše pájíme dohromady, vložíme do pouzdra a namontujeme na požadované místo.

Krok 7: Příloha (3D tisk)

Příloha (3D tisk)
Příloha (3D tisk)
Příloha (3D tisk)
Příloha (3D tisk)
Příloha (3D tisk)
Příloha (3D tisk)

Následující kryt jsem navrhl tak, aby pojal všechny součásti, umožnil umístění magnetu a zarovnal jazýčkový spínač. Druhá část právě slouží k držení druhého magnetu, který umožní otevření a zavření spínače.

Jakmile jsou všechny součásti pájeny dohromady, můžeme je zatlačit dolů do pouzdra, pokud chcete, můžete na dno přidat trochu horkého lepidla, aby se vše udrželo. Poté musíme do pouzdra přitlačit jeden magnet s elektronikou a zarovnat jazýčkový spínač podle potřeby. Druhý magnet by měl být zatlačen do druhého pouzdra. Jakmile jsou oba kryty dokončeny, můžeme to otestovat tak, že obě skříně spojíme dohromady, poté je oddělíme a spojíme dohromady. Nyní bychom měli dostat dvě oznámení, jedno pro senzor otevřený a jedno pro senzor zavřený. Držte oba pohromadě, aby se baterie nevybíjela.

Na zadní stranu senzorů připevněte montážní pásku a nalepte je na požadované místo. Namontoval jsem svůj na svou poštovní schránku. Nyní vyzkoušejte, zda je zarovnání správné a zda je senzor schopen odeslat otevřenou a zavřenou zprávu.

Voila, nyní máte svůj vlastní senzor, který vás upozorní na jeho otevření a zavření. Dejte mi vědět, jestli se vám to líbí a jestli existuje něco, co cítíte, že je možné zlepšit.

Tento instruktáž také zasílám do soutěže IOT, takže nezapomeňte lajkovat a hlasovat pro tento a další projekty IOT, které se vám líbily

Krok 8: Budoucí vylepšení

U tohoto projektu jsem narazil na několik problémů. První problém, na který jsem narazil, bylo použití mosfetu, který měl příliš vysokou hodnotu Vgs, takže jsem musel přejít na jiný. Za druhé, jazýčkový spínač, který jsem použil, je normálně otevřený a v mém případě by normálně zavřený spínač byl snadněji implementovatelný a ušetřil by spoustu místa. Nakonec se s esp 01s pracovalo velmi obtížně a musel jsem si pohrávat s gpio piny, aby to fungovalo správně, ale stále jsem měl nějaké problémy. Myslím, že mě tento projekt dokázal naučit spoustu konceptů a pomohl mi přijít s dalšími nápady a implementacemi pomocí desek esp8266 a IFTTT.

IoT výzva
IoT výzva
IoT výzva
IoT výzva

Vítěz soutěže IoT Challenge

Doporučuje: