Taula de continguts:
- Pas 1: Pas 1: Necessito una manera d’enviar l’hora de l’assistent de casa
- Pas 2: Pas 2: s'ha afegit el següent codi a Configuration.yaml
- Pas 3: Pas 3: ara necessitem obtenir la informació a l'API ESPHOME
- Pas 4: Pas 4: per tant, la configuració ESPHome del connector ara
- Pas 5: Pas 5: la connexió ESPHome Home Assistant … Beam Me Up Scotty
- Pas 6: Pas 6: Permet afegir una mica de temps
- Pas 7: Pas 7: Interval
- Pas 8: Pas 8: doncs, tenim temps i diners … Què passa després?
- Pas 9: Pas 9: ara per a alguns scripts: "Ser o no ser: aquesta és la qüestió"
- Pas 10: pas 10: alguns scripts de bonificació
- Pas 11: Pas 11: Alguns pensaments finals
Vídeo: Llum temporitzada ESPHOME SONOF S26: 11 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Bon dia. Per tant, tinc una llum de la peixera que vull encendre i apagar una hora determinada del dia. Simplement havia de fer-ho complicat per a mi. Vull poder canviar l'hora en què s'encén i s'apaga des del tauler de l'Assistent de casa. Potser encara més.
Per tant, vegem quant puc portar-me a un forat de conill.
Pas 1: Pas 1: Necessito una manera d’enviar l’hora de l’assistent de casa
Alguns google ajuden. Alguns que us treuran els cabells us ajudaran, si en teniu: Obriu el complement del Visual Studio Code Editor. A la carpeta Config, trobeu el fitxer configuration.yaml i heu copiat i enganxat algunes coses que he trobat amagades en algun fòrum. Disculpeu si recordés que donaria agraïment. S'ha afegit el codi i s'ha reiniciat l'assistent domèstic.
Pas 2: Pas 2: s'ha afegit el següent codi a Configuration.yaml
número_entrada:
ft_start_hr:
nom: FT Light Start Hours
icona: mdi: start-clock
min: 0
màxim: 23
Pas 1
# inicial: 13
La primera línia serà l'identificador d'entitat del número d'entrada.
A continuació, necessitem alguns detalls per a aquest petit noi:
Un nom serà increïble: FT Light Start Hours for this P. S. FT és per a Fish Tank … No és el que pensaves, oi?
A continuació hi ha una icona opcional. Hi ha un munt de coses per triar, així que tornar-se boig … o no.
A continuació, podem introduir un valor mínim, màxim i pas. Com que són hores he triat del 0 al 23 amb passos senzills.
Inicialment tenia un valor inicial i, quan es reiniciava l’assistent domèstic, el canviaria per aquest valor inicial. Vaig decidir comentar-ho, ja que volia que Home Assistant intentés recordar l'últim valor que li havia assignat.
Podeu posar-vos en mode per triar un quadre. Però, per defecte, tria un bon control lliscant per a vosaltres. Crec que ara hi haurà un control lliscant.
Tingueu en compte els sagnats, ja que són molt importants. Vegeu la imatge
Així doncs, us donaran entitats a l’assistent domèstic per poder ajustar-vos.
Aquí teniu un enllaç per obtenir més informació sobre els números d’entrada:
www.home-assistant.io/integrations/input_n…
Pas 3: Pas 3: ara necessitem obtenir la informació a l'API ESPHOME
sensor:
- plataforma: plantilla
sensors:
ft_start_hr:
model_valor: '{{states.input_number.ft_start_hr.state | int}} '
n
Això donarà a l'API ESPHome la connexió necessària, així com ara és un enter en lloc d'un control lliscant de text elegant:-P
Aquí pren l'estat del número d'entrada i el converteix en un enter i l'emmagatzema en un sensor.
Aquí hi ha més informació sobre les plantilles:
www.home-assistant.io/integrations/templat…
Ah, he canviat l'extensió de fitxer del meu fitxer a text perquè pugui penjar-lo … Els instructables poden ser destructibles amb un yaml …
Pas 4: Pas 4: per tant, la configuració ESPHome del connector ara
Vaig començar amb una configuració base per al endoll de connexió i després vaig començar a jugar.
No entraré en detalls sobre com flashear el connector S26 amb ESPHome, ja que Google té totes les respostes.
El fitxer de configuració complet estarà disponible per descarregar al final. Da Da Dah …
Comencem, doncs, amb la part enllaçada a Home Assistant:
Hem de crear sensors que coincideixin amb els de l’assistent domèstic perquè puguin parlar entre ells.
Pas 5: Pas 5: la connexió ESPHome Home Assistant … Beam Me Up Scotty
sensor:
- plataforma: homeasistant
id_entitat: sensor.ft_start_hr
id: id_ft_start_hr
Per tant, ara creem un sensor a ESPHome del tipus homeasistant. Qui ho hauria endevinat?
L'identificador d'entitat haurà de coincidir amb el que heu configurat al fitxer configuration.yaml.
Vaig configurar un identificador perquè ESPHome pogués fer referència a aquest sensor en la seva abundància de pensament.
Pas 6: Pas 6: Permet afegir una mica de temps
Així doncs, en ser un endoll temporitzat … Afegim una mica de temps … O es resta? Ara és en el passat?
Aquests són alguns aspectes bàsics del component de temps. Podem triar-ne d’altres de diferents, però jo vaig triar el cas. Massa fàcil?
esphome.io/components/time.html
Pas 7: Pas 7: Interval
No, no és un descans, o no?
interval:
- interval: 1seg
llavors:
- lambda: | -
id (gl_ft_start_hr) = id (id_ft_start_hr).estat;
Per tant, he establert un interval d’1 segon per escriure el valor del sensor de l’assistent domèstic a la variable global.
Només vull fer-ho un cop al segon, ja que el temps passa … tick tick
Pas 8: Pas 8: doncs, tenim temps i diners … Què passa després?
Així que vaig decidir utilitzar una plantilla de sensor binari per determinar si és hora d’encendre l’interruptor de l’interruptor … relé
He creat tres commutadors amb els identificadors: start_time_valid, stop_time_valid i run_time_valid
start_time_valid és cert quan passa el temps establert per encendre el relé.
He utilitzat instruccions nested if per comprovar si érem més grans o iguals als segons necessaris, després als minuts i finalment a les hores.
stop_time_valid és cert quan és ara abans de configurar l'hora per apagar l'interruptor. Això s'inverteix per comprovar que ara no ha passat el temps requerit per apagar el relé
run_time_valid és cert quan tant start_time_valid com stop_time_valid són certes. Suposo que podria haver utilitzat una condició normal per a aquesta. Acabo d’entrar en el swing de les coses amb lambdas.
- plataforma: plantilla
nom: "Hora d'inici vàlida"
id: start_time_valid
lambda: | -
if (id (homeassistant_time).now (). hour> id (gl_ft_start_hr)) {
tornar cert;
}
else if (id (homeassistant_time).now (). hour == id (gl_ft_start_hr) &&
id (homeassistant_time).now (). minute> id (gl_ft_start_mn)) {
tornar cert;
}
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 (). second> = id (gl_ft_start_ss)) {
tornar cert;
}
més {
tornar fals;
}
Pas 9: Pas 9: ara per a alguns scripts: "Ser o no ser: aquesta és la qüestió"
Mmm tipus de guió incorrecte!
Per tant, si vaig endollar l’interruptor … o si l’alimentació de la casa acaba de tornar-se a encendre, volia que l’interruptor sàpiga si s’ha d’encendre o apagar i actuar en conseqüència. (sí, tots anem a fer classes d’interpretació)
El primer identificador de script: checksstatuson, és comprovar si estem destinats a actuar i actuar en conseqüència. També he inclòs un indicador global amb l'identificador: trackingon, per assegurar-me que aquest script només s'executa una vegada i que no impedeix que els altres scripts facin la seva part a l'obra.
Això té 3 condicions: el relleu està apagat, està pensat per estar activat i jo encara no he fet la meva part. A continuació, s'apagarà qualsevol altre script en execució, activarà el relé i establirà els indicadors de seguiment.
El segon identificador de script: checksstatusoff, és exactament el contrari del primer. Simplement comprovem si hem de tancar les cortines ara. La marca de seguiment d’aquest és trackingoff
Executo aquests dos scripts en l'interval d'1 segon per comprovar cada segon.
Pas 10: pas 10: alguns scripts de bonificació
Dues funcions més que volia afegir eren si apagava la llum del tanc que tornaria a encendre-la al cap de 5 segons si la llum està pensada per estar encesa en aquell moment. A més, si la llum estava apagada i volia engegar-la per veure els peixos i que fos fora del seu temps previst, s’encendria durant 5 minuts. Sí, 5 minuts són prou llargs … Torneu a la feina.
El primer identificador de script: relayisoff encendrà el llum durant 5 minuts si està apagat programat a temps i després s’apagarà.
El segon identificador de script: relayison està pràcticament invertit del primer i tornarà a encendre la llum 5 segons més tard si voleu que estigui encès. Qui va dir que podeu apagar la meva llum, senyor!
Aquí teniu més informació sobre els scripts:
esphome.io/guides/automations.html
Alguna informació addicional sobre els scripts és que no bloqueja. A menys que posis un retard en una lambda. Uh No No No
Pas 11: Pas 11: Alguns pensaments finals
Des de l’assistent de casa volia que l’interruptor actués de la mateixa manera que el botó.
No he posat un nom per al commutador local del sensor binari, ja que no calia veure'l empès a l'assistent domèstic.
No vaig posar un nom per al commutador de relés, ja que volia utilitzar els scripts per fer el canvi des de l'assistent domèstic.
He creat un commutador de plantilla amb un nom perquè pugui utilitzar-lo per canviar d’assistent de casa. Executarà els meus scripts igual que el commutador local del connector.
No he provat si apagueu l'assistent domèstic si el connector continua funcionant correctament. Tant espero. He vist algunes publicacions sobre alguns problemes en perdre la connexió amb l'API Home Assistant.
Realment espero que aquest petit tutorial us ajudi i no dubteu a ajudar-me a millorar-lo. No sóc expert i aprenc molt lentament. Només vaig pensar que algunes coses que vaig aprendre a fer podrien ajudar a algú que lluita per esbrinar-ho.
Ara canvieu els horaris de l’assistent domèstic en funció de la sortida i la posta de sol … + - uns quants
Recomanat:
Llum LED solar amb bateria i temporitzada: 4 passos
Llum LED de coberta temporitzada amb energia solar i bateria: en aquesta instrucció us mostraré com he creat una llum LED al cobert. Com que no tinc connexió a la xarxa, l’he alimentat amb bateria. La bateria es carrega mitjançant panell solar. La llum LED s’encén mitjançant un polsador i s’apaga després de
Controleu la porta corredissa automàtica amb Home Assistant i ESPHome: 5 passos (amb imatges)
Controleu la porta corredissa automàtica amb Home Assistant i ESPHome: el següent article conté alguns comentaris sobre la meva experiència personal controlant la porta corredissa automàtica que tenia instal·lada a casa meva. Aquesta porta, amb la marca "V2 Alfariss", es va subministrar amb alguns comandaments a distància Phox V2 per controlar-la. També tinc
Llum de bicicleta molt brillant amb PCB de panells de llum personalitzats: 8 passos (amb imatges)
Llum molt brillant per a bicicletes amb PCB de panells de llum personalitzats: si teniu una bicicleta, sabreu fins a quin punt poden resultar desagradables els sots als pneumàtics i al cos. Ja tenia prou bufat els pneumàtics, així que vaig decidir dissenyar el meu propi panell led amb la intenció d’utilitzar-lo com a llum de bicicleta. Un que se centra en ser E
Llum LED de bricolatge: llum d'ànim moderna d'escriptori amb control remot: 8 passos (amb imatges)
Llum LED de bricolatge: làmpada moderna d'ànim d'escriptori amb control remot: en aquest article repassaré el procés que vaig fer per construir aquesta impressionant làmpada d'ànim LED en forma de piràmide. Vaig utilitzar l'auró per a l'estructura principal i algunes espines de caoba per obtenir més resistència. Per a les llums he utilitzat llums LED RGB que vénen en una tira de 16 peus
Sabre de llum basat en Arduino amb efectes de llum i so: 14 passos (amb imatges)
Sabre de llum basat en Arduino amb efectes de llum i so: Hola jedi! Aquest instructiu tracta de fer un sabre de llum que sembli, soni i funcioni com el de la pel·lícula. L'única diferència: no pot tallar metall: (Aquest dispositiu es basa en la plataforma Arduino i li dono moltes funcions i funcions, però