Obsah:
- Krok 1: Krok 1: Potřebuji způsob, jak poslat asistenta z domova
- Krok 2: Krok 2: Přidán následující kód do souboru Configuration.yaml
- Krok 3: Krok 3: Nyní potřebujeme získat informace do rozhraní ESPHOME API
- Krok 4: Krok 4: Takže konfigurace ESPHome Plug Now
- Krok 5: Krok 5: Připojení ESPHome Home Assistant… Beam Me Up Scotty
- Krok 6: Krok 6: Pojďme přidat nějaký čas
- Krok 7: Krok 7: Interval
- Krok 8: Krok 8: Takže máme čas a peníze … Co dál?
- Krok 9: Krok 9: Nyní pro některé skripty: „Být nebo nebýt: To je otázka“
- Krok 10: Krok 10: Některé bonusové skripty
- Krok 11: Krok 11: Některé závěrečné myšlenky
Video: Časované světlo ESPHOME SONOF S26: 11 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:20
Dobrý den. Mám tedy světlo v akváriu, které chci zapnout a vypnout v určitou denní dobu. Jen jsem si to musel zkomplikovat. Chci mít možnost změnit čas zapnutí a vypnutí z ovládacího panelu Home Assistant. Možná ještě víc.
Pojďme se tedy podívat, o kolik víc se mohu dostat do králičí nory.
Krok 1: Krok 1: Potřebuji způsob, jak poslat asistenta z domova
Nějaké googlování pomáhá. Nějaké vytrhávání vlasů pomáhá, pokud vlastně nějaké máte: POpen můj doplněk Visual Code Code Editor. Ve složce Config najděte soubor configuration.yaml a zkopírujte a vložte některé věci, které jsem našel skryté v nějakém fóru. Omlouvám se, pokud jsem si vzpomněl, dal bych potvrzení. Přidán kód a restartován domácí asistent.
Krok 2: Krok 2: Přidán následující kód do souboru Configuration.yaml
vstupní_číslo:
ft_start_hr:
název: FT Light Start Hours
ikona: mdi: spuštění hodin
min: 0
max: 23
krok 1
# počáteční: 13
První řádek bude ID entity vstupního čísla.
Dále potřebujeme několik podrobností o tomto malém vole:
Název bude úžasný: FT Light Start Hours for this one P. S. FT je pro Fish Tank … Není to tak, jak jste si mysleli, že?
Další je volitelná ikona. Je jich spousta na výběr, takže se zblázněte … nebo ne.
Pak můžeme zadat hodnotu min, max a step. Protože se jedná o hodiny, vybral jsem 0 - 23 s jednotlivými kroky.
Zpočátku jsem měl počáteční hodnotu a když se domácí asistent restartoval, změnil by to na tuto počáteční hodnotu. Rozhodl jsem se to okomentovat, protože jsem chtěl, aby se Home Assistant pokusil zapamatovat si poslední hodnotu, kterou jsem pro něj nastavil.
Můžete přepnout do režimu a vybrat pole. Ale jako výchozí zvolí pro vás pěkný posuvník. Myslím, že prozatím poslouží posuvník.
Uvědomte si odsazení, protože jsou velmi důležitá. Viz obrázek
Díky tomu vám entity v domácím asistentovi umožní přizpůsobit se.
Zde je odkaz na další informace o vstupních číslech:
www.home-assistant.io/integrations/input_n…
Krok 3: Krok 3: Nyní potřebujeme získat informace do rozhraní ESPHOME API
senzor:
- platforma: šablona
senzory:
ft_start_hr:
šablona hodnoty: '{{States.input_number.ft_start_hr.state | int}} '
n
To poskytne ESPHome API požadované připojení, stejně jako nyní je místo efektního posuvníku textu celé číslo:-P
Zde převezme stav vstupního čísla a převede jej na celé číslo a uloží jej do senzoru.
Zde je několik dalších informací o šablonách:
www.home-assistant.io/integrations/templat…
Ach, změnil jsem příponu souboru svého souboru na text, abych jej mohl nahrát … Instructables může být zničitelné pomocí yaml …
Krok 4: Krok 4: Takže konfigurace ESPHome Plug Now
Začal jsem se základní konfigurací zástrčky s-on-off a poté jsem začal šťourat.
Nebudu se podrobně zabývat tím, jak blikat zástrčku S26 pomocí ESPHome, protože Google má všechny odpovědi.
Můj úplný konfigurační soubor bude na konci k dispozici ke stažení. Da Da Dah…
Začněme tedy propojenou částí s Home Assistant:
Musíme vytvořit senzory, které odpovídají senzorům v domácím asistentovi, aby spolu mohli mluvit.
Krok 5: Krok 5: Připojení ESPHome Home Assistant… Beam Me Up Scotty
senzor:
- platforma: homeassistant
entity_id: sensor.ft_start_hr
id: id_ft_start_hr
Nyní tedy v ESPHome vytvoříme senzor typu homeassistant. Kdo by to byl tušil?
ID entity bude muset odpovídat tomu, co jste nastavili v souboru configuration.yaml.
Nastavil jsem ID, aby ESPHome mohl odkazovat na tento senzor v jeho množství myšlení.
Krok 6: Krok 6: Pojďme přidat nějaký čas
Takže s tím, že se jedná o časovanou zástrčku … Pojďme vlastně přidat nějaký čas … Nebo se to odečítá? Je to nyní v minulosti?
Zde jsou některé základy časové složky. Můžeme si vybrat různé, ale já jsem si vybral homeassistant. Příliš snadné?
esphome.io/components/time.html
Krok 7: Krok 7: Interval
Ne, není to přestávka, nebo ano?
časový úsek:
- interval: 1 s
pak:
- lambda: |-
id (gl_ft_start_hr) = id (id_ft_start_hr).state;
Nastavil jsem tedy interval 1 sekundu pro zápis hodnoty senzoru z domácího asistenta do globální proměnné.
Chci to udělat jen jednou za sekundu, jak čas tiká … tik tock
Krok 8: Krok 8: Takže máme čas a peníze … Co dál?
Rozhodl jsem se tedy použít šablonu binárního senzoru k určení, zda je čas sepnout spínač spínače spínače … relé
Vytvořil jsem tři přepínače s ID: start_time_valid, stop_time_valid a run_time_valid
start_time_valid je true, když nyní uplynul čas nastavený pro zapnutí relé.
Použil jsem příkazy nested if, abych zkontroloval, zda jsme větší nebo rovni požadovaným sekundám, pak minutám a nakonec hodinám.
stop_time_valid je true, když je nyní, než je nastaven čas pro vypnutí přepínače. Toto je obráceno pro kontrolu, že nyní nepřekročil požadovaný čas pro vypnutí relé
run_time_valid je true, když start_time_valid i stop_time_valid jsou pravdivé. Předpokládám, že jsem na to mohl použít normální stav. Právě jsem se dostal do pohybu věcí s lambdy.
- platforma: šablona
název: "Čas zahájení platnosti"
id: start_time_valid
lambda: |-
if (id (homeassistant_time).now (). hour> id (gl_ft_start_hr)) {
return true;
}
else if (id (homeassistant_time).now (). hour == id (gl_ft_start_hr) &&
id (homeassistant_time).now (). minute> id (gl_ft_start_mn)) {
return true;
}
else if (id (homeassistant_time).now (). hour == id (gl_ft_start_hr) &&
id (homeassistant_time). now (). minute == id (gl_ft_start_mn) &&
id (homeassistant_time).now (). sekunda> = id (gl_ft_start_ss)) {
return true;
}
jinak {
return false;
}
Krok 9: Krok 9: Nyní pro některé skripty: „Být nebo nebýt: To je otázka“
Hmm špatný scénář, kámo!
Pokud jsem tedy zapojil vypínač … nebo se právě vrátilo napájení domu, chtěl jsem, aby vypínač věděl, zda má být zapnutý nebo vypnutý, a podle toho se choval. (ano, všichni chodíme na hodiny herectví)
První id skriptu: checkingstatuson, je kontrola, zda máme být zapnuti a podle toho se chovat. Také jsem přidal globální vlajku s id: trackingon, abych zajistil, že tento skript bude spuštěn pouze jednou a nebude bránit mým dalším skriptům, aby dělaly svou roli ve hře.
To má 3 a podmínky: relé je vypnuto, má být zapnuto a já jsem ještě neudělal svou část. Tím se potom vypnou všechny ostatní spuštěné skripty, sepne relé a nastaví příznaky sledování.
Druhé ID skriptu: checkingstatusoff je pravým opakem prvního. Jen kontrolujeme, jestli teď musíme zatáhnout závěsy. Sledovací příznak pro tento je trackingoff
Tyto dva skripty spouštím v intervalu 1 sekundy, abych zkontroloval každou sekundu.
Krok 10: Krok 10: Některé bonusové skripty
Další dvě funkce, které jsem chtěl přidat, bylo, že když jsem vypnul světlo na nádrži, rozsvítí se znovu po 5 sekundách, pokud má světlo v té době svítit. Také, pokud by světlo zhaslo a chtěl jsem ho zapnout, abych viděl své ryby, a bylo to mimo plánovaný čas, zapne se to na 5 minut. Ano, 5 minut je dost dlouho … Vraťte se do práce.
První id skriptu: relayisoff rozsvítí světlo na 5 minut, pokud je vypnuto podle plánu včas, a poté se vypne.
Druhý skript id: reléison je prakticky obrácen k prvnímu a pokud má být zapnuto, světlo se znovu zapne o 5 sekund později. Kdo řekl, že můžeš vypnout můj světelný pane!
Zde je několik dalších informací o skriptech:
esphome.io/guides/automations.html
Některé bonusové informace o skriptech jsou, že neblokují. Pokud nedáte zpoždění v lambda. Uh Ne Ne Ne
Krok 11: Krok 11: Některé závěrečné myšlenky
Od domácího asistenta jsem chtěl, aby přepínač fungoval stejně jako tlačítko.
Nezadal jsem název místního přepínače binárních senzorů, protože jsem nemusel vidět, jak je tlačen v domácím asistentovi.
Nezadal jsem název reléového spínače, protože jsem chtěl použít skripty pro přepnutí z domácího asistenta.
Vytvořil jsem přepínač šablony se jménem, abych jej mohl použít k přepnutí z domácího asistenta. Spustí mé skripty stejně jako místní přepínač na zástrčce.
Netestoval jsem, zda vypnutí domácího asistenta, pokud bude zástrčka stále fungovat správně. Doufám, že ano. Při ztrátě připojení k Home Assistant API jsem viděl nějaké příspěvky o některých problémech.
Opravdu doufám, že vám tento malý návod pomůže a neváhejte mi ho pomoci vylepšit. Nejsem žádný odborník a učím se velmi pomalu. Jen jsem si myslel, že některé věci, které jsem se naučil dělat, mohou pomoci někomu tam venku, kdo se snaží přijít na to.
Nyní změňte časy v domácím asistentovi na základě východu a západu slunce …+ - několik
Doporučuje:
Solární a bateriově napájené časované přístřešky LED světlo: 4 kroky
Solární a bateriemi napájené časované přístřešky LED světlo: V tomto Instructable vám ukážu, jak jsem vytvořil LED světlo ve své kůlně. Protože nemám připojení k elektrické síti, nechal jsem jej napájet z baterie. Baterie se nabíjí pomocí solárního panelu. LED světlo se zapíná pomocí pulzního spínače a vypne se po
Ovládejte svou automatickou posuvnou bránu pomocí Home Assistant a ESPHome: 5 kroků (s obrázky)
Ovládejte svou automatickou posuvnou bránu pomocí Home Assistant a ESPHome: Následující článek přináší zpětnou vazbu o mých osobních zkušenostech s ovládáním automatické posuvné brány, kterou jsem nainstaloval do svého domu. Tato brána, značková „V2 Alfariss“, byla vybavena několika dálkovými ovladači Phox V2, které ji ovládají. Také mám
Solární světlo bez baterie nebo sluneční denní světlo Proč ne?: 3 kroky
Solární světlo bez baterie nebo sluneční denní světlo … Proč ne?: Vítejte. Omlouvám se za mé anglické denní světlo? Sluneční? Proč? Během dne mám mírně tmavou místnost a při použití potřebuji zapnout světla. Nainstalujte sluneční světlo na den a noc (1 místnost): (v Chile)-Solární panel 20w: 42 USD-Baterie: 15 USD-Solární poplatek za
Jak vytvořit super jasné bleskové světlo s LED - DIY: Super jasné světlo: 11 kroků
Jak vytvořit super jasné zábleskové světlo s LED - DIY: Super jasné světlo: Nejprve si prohlédněte video
Světlo reagující na hudbu -- Jak vytvořit super jednoduché světlo reagující na hudbu, které udělá z počítače příjemného člověka: 5 kroků (s obrázky)
Světlo reagující na hudbu || Jak vytvořit super jednoduché světlo reagující na hudbu pro vytvoření přitažlivého počítače: Hej, co lidi, dnes postavíme velmi zajímavý projekt. Dnes budeme stavět světlo reagující na hudbu. LED změní svůj jas podle basy, což je ve skutečnosti nízkofrekvenční zvukový signál. Stavba je velmi jednoduchá. Budeme