Obrovský rozvoj elektroniky za posledné desaťročia zasiahol už aj naše domácnosti. Nikomu už nie je cudzí pojem Smart Home. Svoje pevné miesto medzi najrôznejšími Smart Home systémami má nepochybne Home Assistant.
Home Assistant je open-source platforma pre domácu automatizáciu (smart home), ktorá umožňuje centralizované ovládanie rôznych chytrých zariadení od rôznych výrobcov a je určený predovšetkým pre tech-nadšencov, ktorí chcú mať plnú kontrolu nad svojím smart home systémom, pre tých, ktorí majú zariadenia rôznych značiek a chcú ich spojiť, pre používateľov, ktorí uprednostňujú lokálne riešenie pred cloudom, preto aj v mojom prípade, pre tieto dôvody voľba padla na Home Assistant . Málokto začína so Smart Home prvkami, tak povediac na zelenej lúke a každý z nás má doma nejaké zariadenie so smart vlasnosťami, či už je to nejaký TV, alebo multimediálny prehrávač, stolná lampa či vysávač. Sám postupne pripájam najrôznejšie komponenty do Smart Home systému, či už nové zariadenia, alebo existujúce. Takýmto prvkom sa stala aj garážová brána. Medzí hlavné požiadavky riešenia bolo: minimálne zasahovať do hardware ovládania brány, ktoré spoľahlivo funguje mnoho rokov, zachovať autonómnosť ovládania a požiadavka na zachovanie funkcionality v prípade poruchy Smart Home systému , alebo jeho prvkov a zachovanie úrovne bezpečnosti.
Na základe týchto požiadaviek padla voľba na prístup k ovládaniu brány pomocou ďalšieho diaľkového ovládača pripojeného do systému Home Aassistent. Toto riešenie je univerzálne a nie je až tak závislé na type riadiacej jednotky ovládania brány. V mojom prípade sa jednalo o zariadenie Nice, pracujúce v pásme 433MHz s plávajúcim kódom.
Zariadenie umožňuje ovládať garážovú bránu z mobilného telefónu , alebo iného ovládacieho panelu Smart Home systému Home Assistant pomocou zabudovaného diaľkového ovládača a monitorovať základné polohy brány. Jadrom zariadenia je NodeMCU ESP-12E , čo je populárna vývojová doska založená na mikrokontroléri ESP8266. Napriek tomu , že je starý viac ako desať rokov a celkom nedostatočný , pokiaľ ide o vstavané hardvérové periférie. Odporúča sa použiť ESP32-C3, ak si myslíte, že musíte použiť ESP8266, pretože ESP32(-Sx) je "príliš výkonný" alebo "prehnaný", a ani nespĺňa požiadavky Made for ESPHome. Pôvodné NodeMCU, D1-Mini a ESP-01 sú príklady dosiek, ktoré používajú ESP8266; všimnite si, že sú k dispozícii (pin-kompatibilné) verzie týchto dosiek, ktoré namiesto toho používajú modernejšie ESP32 alebo ich variant. Ale aj tak ho mám v šuplíku a prečo ho nevyužiť, keď funguje stabilne? ESP8266 používa jadro Tensilica Xtensa LX106, ktoré je 32-bitové z pohľadu inštrukčnej sady, ale má 16-bitovú dátovú zbernicu (preto niekedy označované ako "16/32-bit hybrid"). Dokáže pracovať s 32-bitovými dátami, ale niektoré operácie môžu byť menej efektívne ako na plnohodnotných 32-bit čipoch (napr. ESP32). Použil som vývojovú dosku , aby som sa vyhol realizácii modulu technológiou SMD, čo by bolo nevyhnutné pri použití samostatného procesoru, navyše by to bolo neekonomické , lebo tento vývojový modul dostanete kúpiť za 5€ a obsahuje potrebné obvody pre napájanie, komunikáciu cez USB, indikačné LED diódy, reset a boot tlačidlo a pomocné obvody. Voľba použiť vývojový modul umožní realizáciu v amatérskych podmienkach aj menej skúsenému rádioamatérovi, lebo po obvode dosky sú naspájkované piny, ktoré slúžia ako vývody integrovaných obvodov a umožňujúce osadenie do DPS, alebo pripojenie vodičov na testovanie.
Schéma zapojenia zariadenia vyzerá takto: Obvod U2 na schéme reprezentuje vývojový modul nodemcu 12-E, ktorý obsahuje 4MB flash pamäte pre program, 96kB operačnej pamäte RAM, wifi modul 802.11 b/g/n (pásmo 2,4GHz) a niekoľko univerzálnych vstupov/výstupov . Z Home Assistentom komikuje pomocou zabudovaného Wifi modulu. Cez konektor X1 sú pripojený magnetické senzory SW1 a SW2 typu MC-38 (Obr3.png) na monitorovanie stavu otvorenia/zatvorenia brány. Obvody sú napájané zo zdroja 5 voltov privedené cez USB vstup, na vývojovej doske, alebo cez svorky X1:1 a X2:2 konektora X1 .
Vysielanie kódov v pásme 433MHz zabezpečuje obvod vysielača U1 FLO2R-S. Hotový modulu vysielačasom kúpil ako náhradný diel za približne 10€ . Štyrmi vodičmi som vyviedol požadované signály z dosky plošných spojov na JST konektor X2. GND na vývod x:5. Napájanie modulu diaľkového ovládača 3V cez vývod X2:1 som pripojil na vývod číslo 4 integrovaného obvodu na DPS. Je tam iba jeden, takže sa ľahko identifikuje. Spínače K1 a K2 som pripojil na X2:2 a X2:4, tak ako je to zrejmé zo schémy zapojenia. Mikropočítač komunikuje s Home Asistentom prostredníctvom bezdrôtovej siete wifi . Prijatý povel pre simulované zapnutie stlačením príslušného tlačidla ovládača FLO2R-S nastaví vysokú úroveň na výstupe D7 alebo D8 mikroprocesora , čo vyvolá zopnutie tranzistora Q1, alebo Q2. Kolektor tranzistorov je pripojený paralelne k tlačidlám K1 a K2 na doske plošných spojov diaľkového ovládača . Rezistory R1 až R4 zabezpečujú obmedzenie bázového prúdu a spoľahlivé vypínanie tranzistorov Q1 a Q2 . Vstupné signály zo snímačov polohy brány SW1 a SW2 sú privedené cez konektor X1 na vstupy procesora D1 a D2 . Potrebná vysoká úroveň vstupu je zabezpečená pull-up rezistormi zabudovanými v procesore ESP8266. Ich stav je prenášaný do Home Asistenta pre zobrazenie stavu, prípadne pre automatizačné skripty.
Mechanické usporiadanie jednotlivých prvkov je zrejmé z nasledovného obrázku:
Všetky súčiastky sú osadené na doske plošného spoja LK-24, Rozmiestnenie súčiastok motív plošného spoja je na nasledujúcom obrázku. Osadená doska plošného spoja je umiestnená v plastovej skrinke vyrobenej na 3D tlačiarni . Po osadení plošného spoja LK-24 a nahratí balíčka firmware do mikrokontroléra , nie je potrebné vykonávať žiadne ďalšie nastavenia máte hotovo.
Potrebný firmware je vytvorený pomocou ESPHome. ESPHome je systém, ktorý vám umožňuje premeniť bežné mikrokontroléry na inteligentné domáce zariadenia. Používa konfiguračné súbory YAML a na základe obsahu týchto súborov vytvára vlastný firmware, ktorý si potom môžete nainštalovať priamo do svojho zariadenia. Hardvér definovaný v konfigurácii – ako sú senzory, spínače, svetlá atď. – sa automaticky objaví v používateľskom rozhraní Home Assistant, alebo môže byť sprístupnený prostredníctvom jednoduchého webového používateľského rozhrania alebo MQTT. Pre Home Assistent je ESPHome dostupný ako integrácia a po nainštalovaní do Home Assistenta je správca zariadení ESPHome dostupný na porte 6052 na príslušnej IP adrese Home Assistenta. Pri vytvorení nového zariadenia RC433 a po úvodnej inicializácii som odeditoval konfiguračný súbor , obsahuje všetky potrebné príkazy na vygenerovanie firmware v prostredí správcu zariadení .
Obsah konfiguračného YAML súboru vyzerá takto:
esphome:
name: rc433
friendly_name: RC433
esp8266:
board: nodemcuv2
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "váš 32 bitový kľúč zhodný s ESPHome integrácoiu v Home Assistente"
ota:
- platform: esphome
password: "8f04097f130743c53caa1a918a23b6da"
wifi:
ssid: názov vašej Wifi siete
password: heslo do vašej Wifi siete
# Povolí hotspot (AP-čko) v prípade zlyhania pre pripojenie do vašej Wifi siet
ap:
ssid: "Rc433 Fallback Hotspot"
password: "1234567890"
captive_portal:
# Príklad konfigurácie pre spínač
switch:
- platform: gpio
pin: GPIO13
id: swK2
name: "switch K2"
icon: "mdi:gate"
on_turn_on:
- delay: 600ms
- switch.turn_off: swK2
- platform: gpio
pin: GPIO15
id: swK1
name: "Switch K1"
icon: "mdi:gate"
on_turn_on:
- delay: 600ms
- switch.turn_off: swK1
# Príklad konfigurácie pre vstupné senzory
binary_sensor:
- platform: gpio
pin:
number: GPIO4
inverted: true
mode:
input: true
pullup: true
name: sw Close
- platform: gpio
pin:
number: GPIO5
inverted: true
mode:
input: true
pullup: true
name: sw Open
Po uložení konfigurácie a stlačení tlačidla a install, sa na základe príkazov YAML súboru skompiluje firmware nového zariadenia, ktorý je nahratý prostredníctvom wifi alebo cez usb kábel do zariadenia v nasledujúcom kroku. Tento firmware prostredníctvom integrácie ESPHome zabezpečí, že prepínač v Homeassistente vygeneruje impulz dlhý 600ms, simulujúci stlačenie tlačidla na diaľkovom ovládači FLO2R-S, a je schopný zobrazovať stav vstupných snímačov SW1 a SW2.
Všetku potrebné súboru k realizácii zariadenia si môžete stiahnuť k príslušnej sekcii na stiahnutie.
Použité súčiastky:
C1,C2 100nF /50V
C3 10uF /50V
Q1,Q2 BC238
R1,R2,R3,R4 10k
SW1,SW2 MC-38
U1 FLO2R-S
U2 NODEMCU(12E)
X1 DB301V-5.0-5P-BU-S
X2 ZX-XH2.54-5PZZ
Užitočné linky:
https://www.home-assistant.io/
https://esphome.io/
https://techfun.sk/produkt/vyvojova-doska-node-mcu-esp12-e-v3-0-ch340g/
https://allegro.sk/produkt/elektronika-dialkoveho-ovladania-nice-flor-s-flor2r-pilot-brany-50e12d40-33a1-4a4a-ac2c-6467060fb3c3?offerId=13732638129
https://techfun.sk/produkt/senzor-zatvorenia-dveri-okna-mc-38a-normalne-otvoreny/?currency=EUR&gad_source=1&gclid=Cj0KCQjw782_BhDjARIsABTv_JCchu9hRm-NqJZYB0REJfGBJZW2QiGaqkYP1HGTtnNuVWFPQOwHH20aArxhEALw_wcB
Poznámka: Modul diaľkového ovládača FLO2R-S môže byť nahradený ľubovoľným iným podobným ovládačom , ktorý používa vaše zariadenie.