Obsah:
- Krok 1: Nastavení hardwaru
- Krok 2: Konfigurace ESP8266
- Krok 3: Směrovač a IP
- Krok 4: Konfigurace aplikace
- Krok 5: Integrace Tasker
Video: Automatizace domácnosti s Androidem a Arduinem: Otevřete bránu, když se dostanete domů: 5 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Tento Instructable je o nastavení systému domácí automatizace, který má být řízen prostřednictvím smartphonu, pomocí připojení k internetu, aby byl k němu přístup odkudkoli, kde ho potřebujete. Kromě toho provede určité akce, kdykoli je splněno určité kritérium (například zapnutí světla, když se smartphone připojí k domácí síti Wi -Fi, otevření brány, když vstoupíte do oblasti určené GPS nebo vše, co byste mohli chtít).
Bude použita stávající aplikace pro Android, která vyžaduje co nejmenší množství kódování: stačí nahrát kód a máte hotovo. Mozkem - mikrokontrolérem - bude deska kompatibilní s Arduino nebo Arduino, například Aruino Uno s ethernetovým štítem nebo NodeMCU ESP8266.
Ke spuštění systému, když je splněna podmínka (poloha GPS, čas, atd.…), Použijeme notoricky známý Tasker; o tom později.
Při realizaci systému jsme měli na paměti následující klíčové body:
- Musí to být levné.
- Musí být přístupné mimo místní domácí síť (tj. Vaše wifi).
- Musí být SKUTEČNĚ snadné a rychlé sestavení a nastavení.
- Musí to být spolehlivé.
Jak již bylo řečeno, celý projekt bude stát asi 20 EUR (7,50 EUR za ESP8266, 8 EUR za reléovou desku, zbytek na další hardware) a jeho nastavení vám zabere zhruba 30 minut - není to vůbec špatné.
Pokud vás tedy zajímá, řiďte se tímto jednoduchým a rychlým průvodcem a vytvořte si vlastní!
Krok 1: Nastavení hardwaru
Jakmile shromáždíte všechny své součásti, první věcí, kterou musíte udělat, je zapojit to všechno.
V tomto příkladu připojíme žárovku k ESP8266; mějte na paměti, že musíte být velmi opatrní při práci s hlavním napětím - domy používají 220 V, které vás mohou zabít! Před prací na něm vždy vypněte napájení, a pokud si nejste jisti, vyhledejte odbornou pomoc!
To znamená: abychom zvládli takové úrovně napětí a proudu (které spálí malý ESPR8266), musíme použít vhodné relé (jako toto, což je 5V logika, vhodné pro standardní Arduino, nebo toto, 3,3V logické reléové relé, vhodné pro pinout 3,3 V ESP82666); připojení jsou velmi snadná, postupujte podle schématu, který jsme přiložili.
Všimněte si, že některé reléové desky (jako ta, kterou jsme propojili) jsou AKTIVNÍ NÍZKÉ; to znamená, že musíte relé připojit k zemi, aby se sepnulo, a naopak. Pokud je to váš případ, nabízí Homotica pěkné řešení; uvidíme, které v následujícím odstavci.
Krok 2: Konfigurace ESP8266
Nyní, když jsme nastavili hardware automatizačního systému, musíme naprogramovat mikrokontrolér.
Abychom to mohli udělat, budeme potřebovat software Arduino k nahrání poskytnutého náčrtu do ESP8266; přejděte tedy na stránku stahování Arduino a pořiďte si verzi, která je pro vás nejvhodnější.
Po stažení jej nainstalujte.
Nyní, když máme nainstalované IDE, potřebujeme knihovnu potřebnou k tomu, aby skica fungovala; pro jeho instalaci otevřete App Github Repo a ze zeleného tlačítka na pravé straně zvolte Stáhnout.
Přejděte na počítači do složky Stažení a pomocí softwaru jako WinRar nebo WinZip rozbalte soubor; otevřete nově vytvořenou složku „homotica-master“a zkopírujte vnitřní složku s názvem „Homotica“do složky Arduino Editor Libraries (obvykle ji najdete pod C: / Users / your_user_name / Documents / Arduino / libraries). Zbylé soubory smažte v „homotica-master“, nebudeme je potřebovat
Při nahrávání kódu do ESP8266 chybí jeden krok: potřebujeme získat knihovnu, aby Arduino IDE komunikovalo s deskou, protože není oficiálně podporována.
Chcete -li to provést, postupujte takto (kredity: Github ES8266 Arduino Repo):
- Spusťte Arduino a otevřete okno Soubory> Předvolby.
- Do pole Další adresy URL správce Board zadejte „https://arduino.esp8266.com/stable/package_esp8266com_index.json“(bez uvozovek). Můžete přidat více adres URL a oddělit je čárkami.
- Otevřete Správce desek v nabídce Nástroje> Nabídka a nainstalujte platformu esp8266 (vyhledejte „esp8266“a stáhněte „esp8266 od komunity ESP8266“).
Všechno je nastaveno. Pojďme se postarat o kód skici.
Otevřete Soubor> Příklad> Homotica> Homotica ESP8266, zkopírujte VŠECHNY kódy do nového náčrtu a upravte následující parametry:
- ssid: zde zadejte název vaší bezdrátové sítě
- heslo: vaše heslo k wifi
- ip, brána, podsíť: těchto nastavení se pravděpodobně nebudete muset dotknout; změňte IP, pokud chcete, aby váš ESP8266 měl jinou adresu
- mUdpPort: port, který později otevřeme v routeru; pokud nevíte, co to je, nedotýkejte se toho
- kód: jedinečný kód se 8 znaky, který bude použit k ověření vaší aplikace; můžete si vybrat, co chcete.
Pokud používáte nastavení ACTIVE LOW, nezapomeňte zavolat homotica.setActiveLow (), jak ukazuje ukázkový kód!
Chcete -li to dokončit: přidejte homotica.addUsedPin (5) (jak je ukázáno na příkladu), abyste sdělili ESP8266, které GPIO musí zvládnout, mezi smyčkou while a homotica.set (mUdpPort, kód); odstranit všechny řádky homotica.simulateUdp (…).
Toto je kód, který by vám měl zůstat:
#zahrnout
#include #include const char* ssid = "mywifiname"; const char* heslo = "wifipassword"; IP adresa IP (192, 168, 1, 20); Brána IPAddress (192, 168, 1, 1); Podsíť IPAddress (255, 255, 255, 0); nepodepsané int mUdpPort = 5858; static String code = "aBc159"; Homotica homotica; neplatné nastavení () {WiFi.config (IP, brána, podsíť); WiFi.begin (ssid, heslo); while (WiFi.status ()! = WL_CONNECTED) {zpoždění (500); } homotica.addUsedPin (5); homotica.setActiveLow (); // <- pouze pokud to potřebujete homotica.set (mUdpPort, kód); } void loop () {homotica.refresh (); }
Když je vše správně nastaveno, změňte nastavení kompilátoru z nabídky Nástroje podle přiloženého snímku obrazovky a v nabídce Nástroje> Port vyberte port, ke kterému je váš počítač ESP8266 připojen.
Nyní klikněte na nahrát. Váš mikrokontrolér je nastaven a připraven ke spuštění!
Krok 3: Směrovač a IP
Abychom mohli komunikovat s ESP8266 z každé sítě, budeme muset routeru říct, aby pustil příkaz, který mu pošleme.
Chcete -li to provést, přejděte na konfigurační stránku směrovače (obvykle 192.168.1.1) a vyhledejte něco jako „virtuální server“nebo „přesměrování portů“; můžete najít přesné nastavení pro váš model routeru při vyhledávání na Googlu.
V přesměrování portů vytvořte nové pravidlo, které povolí všechna připojení k ESP8266 (dříve konfigurované) přes port ESP8266 (opět dříve konfigurované). Pojmenujte jej Homotica, vložte IP ESP8266 IP do pole IP a uložte.
Pokud vám to router, který používáte, neumožňuje, nebojte se: aplikaci nebudete moci používat z mobilní sítě, ale bude fungovat naprosto v pořádku z domácí wifi.
Nyní, abychom odkazovali na náš router z vnějšího světa, potřebujeme znát jeho veřejnou IP; nevýhodou je, že většina poskytovatelů internetu vám nedává statickou IP, ale dynamickou IP, která se v průběhu času mění.
Ale počkejte, můžeme to vyřešit!
Přejděte na NoIp, vytvořte nový účet a poté vytvořte nový název hostitele (viz přiložený obrázek). Poznamenejte si, jaké jméno hostitele máte (v mém příkladu: https://yourhostname.ddns.net), a pokračujte dalším krokem.
(Poznámka: možná budete chtít, aby váš počítač automaticky synchronizoval IP routeru s vaším hostitelským jménem NoIp: stáhněte si k tomu jeho bezplatnou aplikaci)
Krok 4: Konfigurace aplikace
Postaráme se o aplikaci, ano?
Stáhněte si aplikaci ze stránky Obchodu Play a otevřete ji.
Otevřete levou nabídku, vyberte Desky a vytvořte novou. Vyplníme parametry, které jsme dříve definovali v kódu skici ESP8266:
- Název Arduino: co chcete (nechte to být ESP8266)
-
Host IP: může to být
- statická IP směrovače odkazovaná prostřednictvím odkazu NoIp
- ESP8266 IP, pokud jej chcete používat pouze z domácí wifi sítě 192.168.1.20
- Hostitelský port: ten, který jsme nastavili a otevřeli dříve 5858
- Ověřovací kód: 8znakový kód, který jsme definovali v náčrtu aBc195
Uložit. Znovu otevřete nabídku, vytvořte nové zařízení; pro ukázku připojíme žárovku:
- Název: světlo
- Název tlačítka: použijeme Zapnuto, vyberte si, co dáváte přednost
- Číslo kolíku: kolík, ke kterému jsme připojili žárovku. Buď opatrný! Štítky pinů (D1, D2…) na ESP8266 NEodpovídají názvu PIN GPIO! Vyhledejte na Googlu a určete, který pin je který GPIO (v našem příkladu: pin 5 je označen D1)
- Chování: můžete si vybrat mezi zapnutím, vypnutím, změnou stavu „tlačení“(zapnutí a vypnutí) zařízení.
Uložit. Pokud jste dosud vše správně nastavili, mělo by se rozsvítit stisknutím tlačítka Zapnuto.
Super, že?
Nyní se můžete bavit přidáváním dalších zařízení, ještě více desek a jejich uspořádáním do scén.
Abychom ale mohli naplno využívat to, co jste právě vytvořili, budeme muset použít Tasker.
Krok 5: Integrace Tasker
Pokud vlastníte Tasker nebo si jej chcete koupit, pokračujte ve čtení! Použijeme to k tomu, abychom Homotice řekli, co a kdy má dělat.
V tomto příkladu rozsvítíme světlo, kdykoli se připojíme k domácí wifi A čas je mezi 16:00 a 18:00.
Otevřete Tasker; vytvořte nový úkol (pojmenujme ho Zapnout světlo), vyberte Přidat> Plugin> Homotica, stisknutím tužky nekonfigurujte plugin. Vyberte Světlo> Zapnuto a Uložit. Zpět do hlavního menu vytvořte nový Profil, vyberte Stát> WiFi připojeno, do pole SSID vložte název Wifi prohlídky; stiskněte zpět a vyberte Zapnout světlo jako zadání aktivity. Nyní dlouze stiskněte levou část nově vytvořeného profilu, vyberte Přidat> Čas> Od 16 do 18 hodin, poté zavřete.
Jsme hotovi. Naše světlo se rozsvítí, když vstoupíme domů v nastaveném čase.
To je užitečné!
Nyní je řada na vás: buďte kreativní s Homotica a Tasker a nezapomeňte nám ukázat, co jste vytvořili!
Doporučuje:
Automatizace domácnosti pomocí Google Firebase: 3 kroky
Domácí automatizace pomocí Google Firebase: Úvod: Jedná se o projekt domácí automatizace, který využívá firebase a nodeMCU. Prvním důvodem, proč jsem si vybral Firebase, je to, že jej lze snadno udržovat, má zprávu o pokroku, Crash Analytics atd. A je zcela zdarma, takže můžeme
Infračervená domácí automatizace s Arduinem: 5 kroků
Infračervená domácí automatizace s Arduino: ARDUINO HOME AUTOMATION Domácí automatizace jednoduše znamená, že to, co běžně děláte ručně, uděláte za vás automaticky. Normálně vstanete a otočíte vypínač, co kdybyste jen stiskli dálkové ovládání a vaše světlo se automaticky rozsvítí
Hlasová automatizace domácí automatizace Raspberry Pi: 5 kroků
Hlasová automatizace domácí automatizace Raspberry Pi: Cílem této instrukce je poskytnout podrobný návod, jak nastavit malinový pi, který dokáže automatizovat světla / LED pomocí vašich hlasových příkazů
Automatizace domácí automatizace Bluetooth: 7 kroků (s obrázky)
Bluetooth Control Home Automation: Dobrý den, v tomto projektu jde o stavbu nejjednoduššího zařízení pro domácí automatizaci pomocí arduina a modulu bluetooth. Tenhle se velmi snadno staví a dá se postavit za pár hodin. Ve své verzi, kterou právě vysvětluji, mohu
Domácí automatizace: Spustit alarm a zobrazit na LCD displeji, když je teplota nad prahovou hodnotou: 5 kroků
Domácí automatizace: Spustit alarm a zobrazit na LCD displeji, když je teplota nad prahovou hodnotou: Tento blog předvede, jak vytvořit systém domácí automatizace, který začne vydávat poplach, kdykoli teplota dosáhne více, než je naprogramovaná prahová hodnota. Na LCD displeji bude stále zobrazovat aktuální teplotu místnosti a potřebné akce