Tein tossa jokuaika tälläisen. Voisin kirjoitella suomeksi tänne kunhan ehdin.
Loistavaa, Jos tulee suomeksi
Home Assistant -pohjainen autolämmityksen ohjaus (DEFA / Calix)
Rakensin Home Assistantiin autolämmityksen ohjauksen, jonka tavoitteena on toimia mahdollisimman automaattisesti. Käytössä on kaksi 230 V pistorasiaa (ja molemmille painikkeet+merkkivalot, joista saa ohjattua manuaalilämmityksen ja näkee onko lämmitys päällä), joita ohjataan Shelly 1PM Gen4 -releillä. Jätin tästä noi yaml tekstit pois, ne voi käydä jokainen hakemassa tuolta ha foorumeilta
Tavoitteet
- Asetetaan vain lähtöaika (esim. 7:30).
- Järjestelmä laskee itse, milloin lämmitys pitää aloittaa.
- Lämmitysaika riippuu ulkolämpötilasta:
- kylmällä pidempi lämmitys
- lämpimällä lyhyempi lämmitys
- Lämmitys jatkuu vielä 30 minuuttia lähtöajan jälkeen.
- Jos lähtöajan jälkeen pistorasiassa ei enää havaita kulutusta (auto irrotettu), lämmitys sammuu automaattisesti.
- Toimii samalla periaatteella kuin puhelimen herätys: profiilin voi asettaa toistumaan valittuina viikonpäivinä tai kertaluontoiseksi seuraavalle päivälle.
Manuaalinen käyttö
Pistorasiaa voi käyttää myös täysin normaalisti painikkeella.
Jos lämmitys käynnistetään käsin:
- pistorasia menee heti päälle
- Home Assistant laskee automaattisesti sammutusajan käyttäjän määrittämän lämmitysajan perusteella.
Lämpötilan määritys
Lämmitysaika perustuu kylmimpään seuraavista lämpötiloista:
- Hue-ulkoanturi 1
- Hue-ulkoanturi 2
- sääpalvelun tämänhetkinen lämpötila
- seuraavan viiden tunnin ennustettu minimilämpötila
Näistä valitaan alin arvo, jotta lämmitys ei jää liian lyhyeksi.
Toteutus
Päädyin tekemään jokaiselle autolle ja profiilille oman laskentaskriptin. Skripti laskee:
- seuraavan lähtöajan
- lämmityksen aloitusajan
- lämmityksen keston
Varsinaiset automaatiot huolehtivat lämmityksen käynnistämisestä, sammuttamisesta sekä manuaali- ja automaattitilan hallinnasta.
Kehityksen aikana korjattuja asioita
Matkan varrella löytyi muutama bugi:
- Jos profiili poistettiin käytöstä sen jälkeen, kun aloitusaika oli jo laskettu, lämmitys saattoi silti käynnistyä.
- Automaattinen lämmitys saattoi aiemmin korvata manuaalisen lämmityksen.
Ratkaisuna siirsin käytöstä poistetun profiilin lähtö- ja aloitusajat menneisyyteen, jolloin automaatiot eivät enää reagoi niihin.
Lisäksi manuaali- ja automaattitila erotettiin toisistaan paremmin:
- manuaalinen ajastus poistaa vain manuaalitilan
- varsinainen lämmitys sammuu vasta, kun sekä automaattinen että manuaalinen lämmityspyyntö ovat päättyneet.
Tilan seuranta
Tein myös sensorin, joka kertoo helposti, miksi lämmitys on käynnissä.
Esimerkiksi:
- M = manuaalinen lämmitys
- P1 = profiili 1
- P2 = profiili 2
- P3 = profiili 3
Jos useampi syy on aktiivinen, ne näytetään yhdessä (esim. M + P1).
Tällä hetkellä
Kokonaisuus toimii jo hyvin, ja nyt suurin työ on testaamista sekä pienten parannusten tekemistä. Optimointivaraa varmasti vielä löytyy, mutta tähän asti projekti on edennyt juuri siihen suuntaan kuin tavoittelin.
In case when having internal extra car heater, here is cheap solution.
Find a YouTuber Rassooja
[ ] https://m.youtube.com/watch?v=zlsb6UkONGQ&t=196s&pp=2AHEAZACAcoFCFJhc3Nvb2ph
Unfortunately, there is no English translation for this video.
Controlling the car’s Eberspächer heater with an cellular phone.
You will need the following equipment:
- Working and charged cellular phone with 12 DC volts charger
- PrePaid SIM card
- LDR (Light Dependent Resistor)
- LED (Light-Emitting Diode)
- Electric or gas soldering iron and tin
- Wire - Heat-shrink tubing
- A hot air blower to heat a shrink sock or lighter.
The idea is that when you call a phone which is installed in the car, the call will turn on the car’s auxiliary heater.
And when you call again to the phone in the car, it turns off the car’s auxiliary heater.
In the video is used an auxiliary heater made by Eberspächer.
Regards
boomer56
PS. I’ve only watched this video.