217 lines
15 KiB
Markdown
217 lines
15 KiB
Markdown
---
|
||
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
|
||
|
||
- [ ] **30/10:** fyll i sista natten (fläkt 3) och utvärdera fläkttestet (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 | | | | | | | | *fylls i* |
|
||
|
||
- **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.
|
||
|
||
#### 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. Aktiveras vid nästa omstart efter 2026-10-29. 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/`
|