--- title: Daikin värmepump created: 2026-10-24 status: aktiv tags: - projekt --- # Daikin värmepump > [!abstract] Mål > Värma vardagsrummet med Daikin-luftvärmepumpen i hallen till så låg elkostnad som möjligt. Värmen stannar gärna i hallen, så styrningen ska reglera efter vardagsrummet och inte efter Daikins egen givare. ## Uppgifter - [x] **30/10:** fyll i sista natten (fläkt 3), ifyllt 31/10 - [ ] Ta ställning till slutsatserna och förslaget till ny styrning (se [[#Fläkttest 24–30 oktober]] och [[#Så analyserar du ett test]]) - [ ] Ta bort `packages/house/hall/daikin_flakttest.yaml` efter testet, och sätt `input_select.daikin_testflakt` till "Av" - [ ] Bestäm om regleringens fläktlogik ska ändras utifrån testresultatet (se förslaget under fläkttestet) - [ ] Bestäm om nattmålet ska sänkas (`input_number.vardagsrum_maltemp_natt`, i dag 21 °C) - [ ] Ta reda på varför kompressorn går trots setpoint långt under rumstemperaturen (Daikin-appen eller manualen: minsta setpoint i värmeläge, frostskydd?) - [x] Starta om HA så att fläkt 3, kaminläget och kaminens availability-fix laddas (gjort 2026-10-26 21:03) - [ ] Städa bort de gamla utkasten: automationen "Reser temp" (avstängd) och skriptet "Värmepump – Nattläge med stegvis justering" ## Styrningen i Home Assistant Paketet `~/repo/Docker/ha/config/packages/house/hall/daikin.yaml`: - **Reglering:** var 30:e minut justeras Daikins setpoint ±1 °C (16–24 °C, sänkt från 19 den 2026-10-26) tills vardagsrummet ligger inom ±0,3 °C från målet. Hallen får inte gå över 24,5 °C när setpointen höjs, och över 25 °C sänks den. - **Mål:** `input_number.vardagsrum_maltemp` gäller 06–22 och `input_number.vardagsrum_maltemp_natt` gäller 22–06. Båda är 21 °C från 2026-10-24. - **Fläkt:** 4 när vardagsrummet ligger mer än 0,3 °C under målet, annars Auto. Se [[#Förslag till ny styrning (väntar, beslut efter testet)]]. - **Kamin:** fläkt 4 och 14 °C när `binary_sensor.vardagsrum_kamin_igang` är på. Bas-setpointen fryses under tiden (från 2026-10-26). - **Elpris:** under dyra timmar sänks setpointen 1 °C och regleringen fryses. Under billiga timmar höjs målet 0,5 °C. - **Av/på:** `input_boolean.daikin_auto`. - **Testläge:** `input_select.daikin_testflakt` låser fläkten och stänger av elprisjusteringen. "Av" ger vanlig drift. > [!warning] Fel givare > Regleringen använder `sensor.sensor_inne_vrum_aq001_temperature`. Använd inte `sensor.vardagsrum_temperature` som rumstemperatur, den sitter troligen i en annan enhet. ## Resultat ### Stegtest natten 22→23 oktober Varje kombination av fläkt och setpoint kördes en timme. Daikins effekt är uppskattad som evcc:s `homePower` minus timmen före testet (574 W). Daikin har ingen egen elmätare. | Tid | Steg | Kompressor (Hz) | Hall | Daikin ungefär | |---|---|---|---|---| | 00–01 | 17 °C, fläkt 2 | 12 | 22,5 | +110 W | | 01–02 | 17 °C, fläkt 4 | 13 | 22,8 | +290 W | | 02–03 | 21 °C, fläkt 2 | 19 | 23,2 | +350 W | | 03–04 | 21 °C, fläkt 4 | 22 | 23,8 | +370 W (en annan last på cirka 280 W borträknad) | | 04–05 | 23 °C, fläkt 2 | 19 | 24,2 | +590 W | | 05–06 | 23 °C, fläkt 4 | 22 | 24,4 | +830 W | Ute var det 11,6 → 9,5 °C. Daikin drog cirka 2,8 kWh mellan 00 och 06. Slutsatser: - **Kompressorn stod aldrig vid 17 °C.** Den gick på 12–18 Hz hela tiden, fast Daikins egen givare visade 21–24 °C. - **Lägre fläkt drog mindre el** vid samma setpoint (180–240 W skillnad). **Högre setpoint drog mer** (cirka +240 W per steg vid fläkt 2). - **Testet säger inte vad som ger mest värme per kWh.** Stegen var bara en timme och kom i stigande ordning, så huset hann inte stabilisera sig. Därför görs [[#Fläkttest 24–30 oktober]]. - **Fläkt Auto värmer vardagsrummet dåligt** (Simons erfarenhet). Värmen stannar i hallen, och det behövs högre fläkt för att få ut den. Ingen extra Auto-natt läggs till trots att natten mot 25/10 stördes av kaminen. - **Daikins egen givare mäter stillastående luft** när fläkten står på Auto. Den visade 18 °C och hoppade till 22 °C så fort fläkten startade. ### Vanlig natt 23→24 oktober (referens) Manuellt 13 °C och fläkt Auto, regleringen av. Vardagsrummet sjönk från 22,5 till 20,4 °C (cirka 0,3 °C i timmen), ute 7 °C. Kompressorn gick ändå på 8–12 Hz hela natten. Huset drog cirka 5,1 kWh mellan 00 och 06, men Daikins andel går inte att räkna ut eftersom andra laster varierade mer. ### Fläkttest 24–30 oktober Paketet `packages/house/hall/daikin_flakttest.yaml`. Syftet är att ta reda på vilket fläktläge som ger 21 °C i vardagsrummet med minst el. Regleringen håller vardagsrummet på 21 °C varje natt och bara fläkten skiljer. Fläkten låses 22–06 och mätfönstret är 00–06. Ursprungligen skulle varje läge köras två nätter i speglad ordning, men schemat ändrades under testet (se tabellen). | Natt (morgondatum) | Fläkt | |---|---| | 25/10 | Auto | | 26/10 | 2 | | 27/10 | 4 | | 28/10 | 3 (bytt från 4, låter för mycket) | | 29/10 | 2 | | 30/10 | 3 (bytt från Auto) | - Start 24/10 kl. 20:00: målen sätts till 21 °C och `daikin_auto` slås på. - Varje kväll och morgon loggas fläkt, setpoint och temperaturer i loggboken under namnet "Daikin fläkttest". - Natten mot 25/10 slutar sommartiden, så jämför medeleffekt (W) och inte kWh. - En omstart av HA sätter testfläkten till "Av" fram till nästa kväll, och den natten blir då ogiltig. - **Kaminen stör.** Eldning värmer vardagsrummet till långt efter midnatt, och då behöver Daikin göra mindre. Det eldades 23/10 och 24/10 från cirka 18:30, och givaren vid kaminen låg kvar över rumstemperaturen till cirka 01. Notera för varje natt om det eldades (se [[#Så analyserar du ett test]]). #### Resultat per natt Medel 00–06. Bara nätter utan kamin och utan HA-omstart. Huset = evcc `homePower` (utan bil). Setpoint och kompressor kommer från Influx `Daikin`. ΔT = vardagsrum − ute. | Natt | Fläkt | Ute | Vardagsrum | Hall | Setpoint medel | Kompressor | Kompressor/ΔT | Huset | Huset per timme (00→06) | |---|---|---|---|---|---|---|---|---|---| | 25/10 | Auto | 9,6 | 22,2 | 23,2 | 19,0 | 19,1 Hz | – | 995 W | 722 935 1136 709 1228 1225 1009 *(7 h, sommartiden slutade)* | | 26/10 | 2 | 9,8 | 21,1 | 22,7 | 19,0 | 18,9 Hz | 1,67 | 1031 W | 911 821 768 873 1376 1437 | | 27/10 | 4 | 7,9 | 21,2 | 23,2 | 16,0 | 15,4 Hz | 1,16 | 1073 W | 798 714 880 1331 1119 1596 | | 28/10 | 3 | 10,4 | 20,9 | 22,7 | 17,3 | 12,5 Hz | 1,19 | 935 W | 652 620 516 944 1485 1391 | | 29/10 | 2 | 5,6 | 20,9 | 22,3 | 17,5 | 19,3 Hz | 1,26 | 1175 W | 1646 664 855 1169 1176 1538 | | 30/10 | 3 | 7,2 | 21,6 | 23,9 | 16,0 | 20,5 Hz | (1,42) | 1155 W | 913 926 883 1278 1336 1594 *(kamin kvällen innan)* | - **25/10 (Auto): ogiltig.** Kaminen var tänd från 18:30, vardagsrummet sjönk från 23,0 °C utan att Daikin behövde arbeta, och setpointen sänktes manuellt till 17 och 14 °C under kvällen. - **26/10** hade den gamla gränsen 19 °C som lägsta setpoint, och setpointen stod på den hela natten. Övriga nätter har gränsen 16 °C. - **27/10** laddade bilen (cirka 1,2 kW per fas på L1 och L3). `homePower` räknar bort den, men P1-faserna går inte att använda den natten. - **30/10 (fläkt 3): delvis störd.** Det eldades från cirka 20:00 den 29/10, men givaren vid kaminen nådde bara 23,8 °C, så den gamla 24 °C-regeln missade elden. Kaminläget slog aldrig till och fläkt 3 gick hela natten. Vardagsrummet låg *över* målet hela natten (22,0 → 21,3 °C) med setpointen på golvet 16 °C. Natten är därför inte jämförbar på komfort, och kompressorvärdet per grad är osäkert. - **Kompressorn följer inte setpointen vid låga värden.** 30/10 stod setpointen på 16 °C och Daikins egen givare visade 21,8–22,1 °C, men kompressorn gick ändå på cirka 20 Hz och hallen låg på 23,9 °C. Varvtalet verkar styras mer av utetemperaturen och fläkten än av setpointen när den är under cirka 19 °C. Regleringen har då nästan ingen effekt nedåt. #### Slutsatser hittills (29/10) - **Fläkt 3 och 4 ger samma komfort med lägre setpoint och kompressorvarvtal** än fläkt 2. Kompressorn per grad ΔT var cirka 1,2 Hz för fläkt 3 och 4, och 1,3–1,7 Hz för fläkt 2, alltså 10–40 % mer kompressor för fläkt 2. - **Fläkt 3 verkar bäst.** Den är lika effektiv som 4 och tystare. Fläkt 4 låter för mycket (Simon, 27/10). - **Husets förbrukning kan inte avgöra frågan.** Andra laster varierar 500–1600 W mellan timmarna, och 04–06 är ofta högt. Skillnaden mellan fläktlägena (troligen 100–200 W) drunknar i bruset, så slutsatsen bygger på kompressorvarvtalet. - **Förbehåll:** fläkt 3 och 4 har bara en natt var (fläkt 3 får en till 30/10). Hur mycket el fläkten själv drar är inte mätt, men det är troligen 20–60 W. #### Iakttagelser om regleringen (27/10) - **Fläkten slår om för lätt.** Dagtid låg vardagsrummet på 20,6–21,0 °C. Regleringen växlade mellan fläkt 4 och Auto och höjde setpointen till 22 °C så fort rummet var 0,03 °C under gränsen 20,7 (mål − 0,3). - **Både setpoint och fläkt ändras på samma signal.** Det ger stora steg för små avvikelser. #### Förslag till ny styrning (väntar, beslut efter testet) | Läge | Fläkt i dag | Förslag | |---|---|---| | Normalt | Auto | 3 (eventuellt 2 kl. 22–06 om 3 stör nattetid) | | Vardagsrummet ligger efter | 4 vid mer än 0,3 °C under målet | 3, och bara setpointen höjs | | Kamin | 4 och 14 °C | 3 och 14 °C | | Fläkt 4 | används | tas bort | ## Så analyserar du ett test En arbetsgång för att utvärdera en natt eller ett test. Alla kommandon körs på `zeuz`. ### Datakällor | Vad | Var | Detaljer | |---|---|---| | Husets förbrukning utan bil | Influx `Car` / `homePower` (evcc) | W. Bästa måttet, eftersom billaddningen redan är borträknad. | | Billaddning | Influx `Car` / `chargePower`, `chargeCurrents` | Laddar ofta cirka 5,5 kW nattetid, och då blir P1 oanvändbar utan evcc. | | P1-mätaren | Influx `HomeBucket` / `el` | `electricity_currently_delivered` (kW), `phase_currently_delivered_l1..l3` (W). **Daikin sitter på L2.** | | Daikin | Influx `home/autogen` / `Daikin`, taggen `type` | `cmpfreq`, `fanRate`, `mode` samt `temperature` med `location` = indoor, outdoor eller target. Tät upplösning. | | Rumstemperaturer | HA-databasen `ha/config/home-assistant_v2.db` | `sensor.sensor_inne_vrum_aq001_temperature`, `sensor.sensor_inne_hall_th016_temperature`, `sensor.daikinap14037_outside_temperature` | | Daikin-läge | HA-databasen | `climate.daikinap14037`, attributen `temperature`, `fan_mode`, `hvac_action` | | Testlogg | HA-databasen, händelsen `logbook_entry` | Sök på "fläkttest" eller "stegtest". | | Kamineldning | HA-databasen | `binary_sensor.vardagsrum_kamin_igang` (på när givaren vid kaminen i 5 min har varit mer än 0,5 °C varmare än hallen, eller över 23 °C och varmare än hallen. Aktiv sedan omstarten 2026-10-31 15:27. Elden 29/10 nådde bara 23,8 °C och missades av den gamla 24 °C-regeln. Utan eld är kaminens givare alltid kallare än hallen, som mest −0,2 °C. Regeln upptäcker eld 15–30 min tidigare än den gamla gränsen 24 °C. En simulering på veckan 22–29/10 gav exakt de tre eldningarna och inga falsklarm, inte ens under stegtestet då givaren vid kaminen nådde 23,5 °C utan eld.), `counter.vardagsrum_kamin_eldningar`, `sensor.sensor_inne_kamin_th017_temperature`. Sensorn fungerar från 2026-10-24 19:32. Tidigare var den alltid av på grund av ett fel. | > [!tip] Fallgropar > - **Tidszon:** Influx svarar i UTC och `aggregateWindow` märker raden med fönstrets *slut*. Raden `22:00Z` är timmen 23–00 svensk sommartid. > - **HA-databasen sparar bara ändringar,** så glesa sensorer saknar värden för vissa timmar. Använd Influx för kompressorn. > - **Kompressorns `hvac_action` i HA** är grövre än `cmpfreq` i Influx. > - **Daikins effekt är alltid en uppskattning:** `homePower` minus en referenstimme. Andra laster (cirka 300–700 W) ger brus, så titta på L2 och kompressorn för att se vad som är Daikin. ### Frågor Husets förbrukning, kompressor och fläkt per timme (ändra start och stop): ```bash docker exec influxdb influx query ' h = from(bucket:"Car") |> range(start: 2026-10-24T22:00:00Z, stop: 2026-10-25T05:00:00Z) |> filter(fn:(r)=> r._measurement=="homePower" or r._measurement=="chargePower") |> group(columns:["_measurement"]) |> aggregateWindow(every: 1h, fn: mean, createEmpty:false) |> map(fn:(r)=>({r with _field: r._measurement})) c = from(bucket:"home/autogen") |> range(start: 2026-10-24T22:00:00Z, stop: 2026-10-25T05:00:00Z) |> filter(fn:(r)=> r._measurement=="Daikin" and (r.type=="cmpfreq" or r.type=="fanRate")) |> map(fn:(r)=>({r with _field: r.type})) |> group(columns:["_field"]) |> aggregateWindow(every: 1h, fn: mean, createEmpty:false) union(tables:[h,c]) |> group() |> keep(columns:["_time","_field","_value"]) |> pivot(rowKey:["_time"], columnKey:["_field"], valueColumn:"_value")' --raw | grep -v '^#' ``` Rumstemperaturer per timme (lokal tid): ```bash cd ~/repo/Docker/ha/config sqlite3 -readonly -column -header "file:home-assistant_v2.db?mode=ro" " SELECT strftime('%H',s.last_updated_ts,'unixepoch','localtime') h, round(avg(CASE WHEN m.entity_id LIKE '%vrum_aq001%' THEN CAST(s.state AS REAL) END),2) vardagsrum, round(avg(CASE WHEN m.entity_id LIKE '%hall_th016%' THEN CAST(s.state AS REAL) END),2) hall, round(avg(CASE WHEN m.entity_id LIKE '%outside%' THEN CAST(s.state AS REAL) END),1) ute FROM states s JOIN states_meta m USING(metadata_id) WHERE m.entity_id IN ('sensor.sensor_inne_vrum_aq001_temperature', 'sensor.sensor_inne_hall_th016_temperature','sensor.daikinap14037_outside_temperature') AND s.state NOT IN ('unknown','unavailable') AND s.last_updated_ts BETWEEN strftime('%s','2026-10-24 22:00','-2 hours') AND strftime('%s','2026-10-25 06:00','-1 hours') GROUP BY h;" ``` (`-2 hours` och `-1 hours` gör om svensk tid till UTC: sommartid +2, vintertid +1.) Loggboken för testet: ```bash sqlite3 -readonly "file:home-assistant_v2.db?mode=ro" " SELECT datetime(e.time_fired_ts,'unixepoch','localtime'), d.shared_data FROM events e JOIN event_types t USING(event_type_id) LEFT JOIN event_data d USING(data_id) WHERE t.event_type='logbook_entry' AND d.shared_data LIKE '%fläkttest%' ORDER BY 1;" ``` Eldade det? Visar när kaminsensorn slog på och av (ändra datum): ```bash sqlite3 -readonly "file:home-assistant_v2.db?mode=ro" " SELECT datetime(s.last_updated_ts,'unixepoch','localtime'), s.state FROM states s JOIN states_meta m USING(metadata_id) WHERE m.entity_id='binary_sensor.vardagsrum_kamin_igang' AND s.last_updated_ts > strftime('%s','2026-10-24 12:00','-2 hours') ORDER BY 1;" ``` ### Utvärdera fläkttestet 1. **Kontrollera att varje natt blev giltig.** Loggboken ska ha en start- och en slutrad med rätt fläkt. Ingen HA-omstart får ha skett mellan 22 och 06, och bilen bör inte ha laddat (annars får man förlita sig på `homePower`). 2. **Kontrollera kaminen.** Om det eldades efter cirka 17 kvällen innan räknas natten som "med kamin". Jämför helst bara nätter utan kamin. Om alla lägen har en kamin-natt kan man jämföra dem sinsemellan, men ta i så fall bara med timmarna efter att givaren vid kaminen har sjunkit till rumstemperatur. 3. **Per natt:** ta fram medel av `homePower` 00–06, medel av kompressorn, medel av vardagsrummet (ska ligga nära 21 °C) och medel av utetemperaturen. 4. **Jämför fläktlägena** med medeleffekten och ta hänsyn till utetemperaturen. Kalla nätter drar mer. Jämför helst nätter med liknande utetemperatur, eller räkna W per grad skillnad mellan inne och ute. 5. **Skriv in resultatet** under "Fläkttest 24–30 oktober" och bocka av uppgifterna. ## Relaterat - [[Docker-stack]] - Paket: `~/repo/Docker/ha/config/packages/house/hall/`