Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

stigvi

Medlemmer
  • Innlegg

    2 676
  • Ble med

  • Besøkte siden sist

  • Dager vunnet

    146

Alt skrevet av stigvi

  1. Jeg las om en student som passet på å lade telefonen på universitetet istedenfor hjemme. Jeg er ikke helt der ennå, selv 😆 Vedlikeholdsladeren min bruker 8W. Hvorfor skulle en ha den avslått helt til det er krise? Og hvilken krise er det snakk om?
  2. Vi får nå se på det 😞 Med de prisene som er nå så er vi tapere alle sammen vi som bor i Sør-Norge.......
  3. Jeg har forresten landet på at jeg har satt 8kWh som maks forbruk innen en time. Så langt går det greit, selv om den regulerer ned innimellom fordi forbruket ligger an til å bli høyt. De to "dippene" til null i forbruk er nok bare meg som oppgraderte Volkswagen integrasjonen og tok et par omstarter av systemet.
  4. Hos meg synker temperaturen i tanken med 0,3 grader i timen når ingen tapper varmt vann ut av den i store mengder. Topptemperaturen er faktisk ganske upåvirket av vannforbruk. I løpet av 4-5 timer så blir temperaturen 1,5 grader lavere og neppe noe som setter i gang oppblomstring av bakterier i stor stil.
  5. Jeg kjører Home Assistant på en billig raspberry pi. Å bruke en pc til det er unødvendig.
  6. Det blir ikke bakterier i en tank så fort. Hva ville da skjedd med dusjhodet som har ideell temperatur for bakterivekst omtrent alltid? Når det gjelder forskjellige løsninger så er det bare å lete og søke litt her. Jeg har feks skrevet mye om mitt system.
  7. En får kraftig oppvarming på utsiden av lamellene som gjør at luften der stiger opp og lager et undertrykk nede. Vil jeg tro. Men er dette et problem? I så fall kan du kanskje vinkle de litt slik at luft har lettere for å sirkulere.
  8. Hvert minutt måles temperatur på vann oppe og nede i tanken og en esp8266 node med esphome regner ut hvor mange minutter det tar å varme opp til 70 grader. Dette rundes av oppover til hele timer og avhengig av om det tar en, to, tre eller flere timer så settes strøm på tanken i den billigste, den nest billigste, tredje billigste timen osv. I dag ble vannet varmet opp mellom 14 og 15 fordi det er døgnets nest billigste time. Hos oss kan tanken godt stå strømløs fra tidlig det ene døgnet til sent i det neste (altså to døgn) uten at vannet blir for kaldt til å dusje i. Men tanken slås på uansett hvis temperaturen kommer under 45 grader. Og hvert døgn varmes vannet opp til 70 grader, alltid med den billigste strømmen det døgnet.
  9. Det var snakk om dette for noen dager siden og jeg tenkte jeg kunne poste mitt oppsett så kan eventuelt noen bruke det som et eksempel til eget bruk. Jeg har lagd mitt system slik at det baserer seg på scener. Men det er ikke 100% basert på dette. For å slå av lys så blir turn_off på light domene brukt. Her kunne en brukt en scene for å slå av også og da kunne dette vært brukt til andre ting enn lys også. Jeg har lagd det pyscript kaller en "app". I config.yaml er alt lys satt opp som dette. Har lagt inn noen kommentarer. I tillegg er det lagd slik at bryter veksler mellom scene ved gjentatt trykk på "lys på". Når en bruker bryter til å aktivere scene så skjer dette umiddelbart, men blir en scene aktivert av betingelser så skjer dette ved hjelp av en konfigururbar "transition". Lys over garasjeport blir for eksempel endret over 1 time. Selve koden kommer i et innlegg nedenfor. apps: scenestyring: - id: lys_stue # unik id for denne appen sensors: # Liste med sensorer som trigger lys. Denne listen trenger ikke være med hvis en bruker en veggbryter for å styre lys - binary_sensor.stue_og_kjokken_presence lightlevelsensor: sensor.stue_og_kjokken_lightlevel # Lysnivå-sensor hvis en ikke vil at lys skal slås på dersom det ikke er mørkt lightlevel: 95 switchID: stue_bryter # Denne er valgfri og styrer lys manuelt. Dersom lys er slått på manuelt så vil det stå på til det blir slått av manuelt. lightID: light.stue # ID på lys som skal slås av. Her har jeg brukt en lysgruppe delay: 7200 # Antall sekunder lys skal stå på før det automatisk blir slått av. Transition: 600 # Antall sekunder en skal bruke på å aktivere normal scene dersom betingelsene for det er oppfylt. Dette gjelder kun hvis en annen scene er aktiv. Er lys av så blir en scene aktivert umiddelbart. En vil jo ha det lyst med en gang en kommer inn i et rom. SceneNormal: scene.stue_normal # Scene som skal aktiveres dersom ingen andre betingelser er oppfylt. Den blir på en måte "default" scene. scenes: # Dette er en liste med betingelser knyttet opp mot scene som skal aktiveres dersom lys slås på. Disse scenene blir også aktivert dersom lys allerede er påslått automatisk av bevegelsesensor. scene1: name: scene.stue_natt # Dette er nattlys og gjelder når input_boolean.sleeptime er on. Det går 130 sekund til lyset går av igjen sensor: input_boolean.sleeptime state: "on" delay: 130 scene2: name: scene.stue_besok sensor: input_boolean.visitors_comfort_temp state: "on" scene3: name: scene.stue_kveld sensor: binary_sensor.dark_outside state: "on" - id: lys_kjokken sensors: - binary_sensor.stue_og_kjokken_presence lightlevelsensor: sensor.stue_og_kjokken_lightlevel lightlevel: 95 switchID: kjoekken_bryter lightID: light.kjoekken delay: 7200 Transition: 600 SceneNormal: scene.kjoekken_normal scenes: scene1: name: scene.kjokken_natt sensor: input_boolean.sleeptime state: "on" delay: 130 scene2: name: scene.kjokken_besok sensor: input_boolean.visitors_comfort_temp state: "on" scene3: name: scene.kjokken_kveld sensor: binary_sensor.dark_outside state: "on" - id: lys_vaskerom sensors: - binary_sensor.vaskerom_presence switchID: vaskerom_bryter lightlevelsensor: sensor.vaskerom_lightlevel lightlevel: 1000 lightID: light.vaskerom delay: 600 Transition: 600 SceneNormal: scene.vaskerom_normal scenes: scene1: name: scene.vaskerom_nattlys sensor: binary_sensor.lysstyrke state: "off" delay: 130 scene2: name: scene.vaskerom_kveld sensor: binary_sensor.dark_outside state: "on" delay: 900 # På vaskerom går lys av igjen etter 600s på dagtid, 900s på kveldstid og etter 130s på nattetid. - id: lys_gang_1_etg sensors: # Lys i gang styres av bevegelse sensor, men også dør og garasjeport. - binary_sensor.gang_1_etg_presence - binary_sensor.hoveddor - binary_sensor.garasjeport switchID: gang_1_etg_bryter lightlevelsensor: sensor.gang_1_etg_lightlevel lightlevel: 25 lightID: light.gang_1_etg Transition: 600 SceneNormal: scene.gang_1_etg_normal scenes: scene1: name: scene.gang_1_etg_nattlys sensor: input_boolean.sleeptime state: "on" delay: 130 scene2: name: scene.gang_1_etg_kveld sensor: binary_sensor.dark_outside state: "on" delay: 7200 delay: 7200 - id: lys_gang_u_etg sensors: - binary_sensor.gang_u_etg_presence - binary_sensor.hoveddor_u_etg switchID: gang_u_etg_bryter lightlevelsensor: sensor.gang_u_etg_lightlevel lightlevel: 25 lightID: light.gang_u_etg Transition: 60 SceneNormal: scene.gang_u_etg_normal scenes: scene1: name: scene.gang_u_etg_nattlys sensor: binary_sensor.lysstyrke state: "off" delay: 240 scene2: name: scene.gang_u_etg_kveld sensor: binary_sensor.dark_outside state: "on" delay: 1800 delay: 900 - id: lys_bad_1_etg sensors: - binary_sensor.bad_1_etg_presence switchID: bad_1_etg_bryter lightlevelsensor: sensor.bad_1_etg_lightlevel lightlevel: 1000 lightID: light.bad_1_etg delay: 420 Transition: 600 SceneNormal: scene.bad_1_etg_normal scenes: scene1: name: scene.bad_1_etg_speil delay: 3 scene2: name: scene.bad_1_etg_nattlys sensor: input_boolean.sleeptime state: "on" delay: 420 scene3: name: scene.bad_1_etg_kveld sensor: binary_sensor.dark_outside state: "on" delay: 420 - id: lys_bad_u_etg sensors: - binary_sensor.bad_u_etg_presence switchID: bad_u_etg_bryter lightlevelsensor: sensor.bad_u_etg_lightlevel lightlevel: 1000 lightID: light.bad_u_etg delay: 420 Transition: 60 SceneNormal: scene.bad_u_etg_normal scenes: scene1: name: scene.bad_u_etg_speil delay: 3 scene2: name: scene.bad_u_etg_nattlys sensor: binary_sensor.lysstyrke state: "off" delay: 420 scene3: name: scene.bad_u_etg_kveld sensor: binary_sensor.dark_outside state: "on" delay: 420 - id: lys_garasje sensors: - binary_sensor.garasje_presence - binary_sensor.garasjedor - binary_sensor.garasjeport switchID: garasje_bryter lightlevelsensor: sensor.garasje_lightlevel lightlevel: 150 lightID: light.garasje delay: 1800 Transition: 60 SceneNormal: scene.garasje_normal scenes: scene1: name: scene.garasje_nattlys sensor: binary_sensor.lysstyrke state: "off" delay: 130 - id: lys_soverom_1_etg switchID: soverom_1_etg_bryter lightID: light.soverom_1_etg Transition: 60 SceneNormal: scene.soverom_1_etg_normal scenes: scene1: name: scene.soverom_1_etg_nattlys scene2: name: scene.soverom_1_etg_kveld sensor: binary_sensor.dark_outside state: "on" - id: lys_soverom_u_etg switchID: soverom_u_etg_bryter lightID: light.soverom_u_etg Transition: 60 SceneNormal: scene.soverom_u_etg_normal scenes: scene1: name: scene.soverom_u_etg_nattlys scene2: name: scene.soverom_u_etg_kveld sensor: binary_sensor.dark_outside state: "on" - id: lys_gjesterom_u_etg switchID: gjesterom_u_etg_bryter lightID: light.gjesterom_u_etg Transition: 60 SceneNormal: scene.gjesterom_u_etg_normal scenes: scene1: name: scene.gjesterom_u_etg_nattlys scene2: name: scene.gjesterom_u_etg_kveld sensor: binary_sensor.dark_outside state: "on" - id: lys_tv_stue switchID: tv_stue_bryter lightID: light.tv_stue Transition: 60 SceneNormal: scene.tv_stue_normal scenes: scene1: name: scene.tv_stue_leggetid sensor: binary_sensor.lysstyrke state: "off" delay: 30 scene2: name: scene.tv_stue_stemning sensor: device_tracker.tv state: "home" delay: 30 - id: lys_kontor switchID: kontor_bryter lightID: light.kontor Transition: 60 SceneNormal: scene.kontor_normal scenes: scene1: name: scene.kontor_kveld sensor: binary_sensor.dark_outside state: "on" - id: lys_bod sensors: - binary_sensor.boddor - binary_sensor.bod_sensor_presence lightID: light.bod delay: 600 Transition: 60 lightlevelsensor: sensor.bod_sensor_lightlevel lightlevel: 300 SceneNormal: scene.bod_normal scenes: scene1: name: scene.bod_kveld sensor: binary_sensor.dark_outside state: "on" - id: lys_ute_1_etg sensors: - binary_sensor.utelys lightID: light.alt_lys_ute delay: 300 Transition: 3540 lightlevelsensor: sensor.ute_1_etg_lightlevel lightlevel: 500 SceneNormal: scene.ute_normal scenes: scene1: name: scene.ute_farge1 sensor: binary_sensor.utelys_farge1 state: "on" Transition: 3540 scene2: name: scene.ute_farge2 sensor: binary_sensor.utelys_farge2 state: "on" Transition: 3540 from random import randrange from random import seed import time registered_triggers = [] factory_apps = [] @time_trigger('startup') def scenestartup(): for app in pyscript.app_config: factory_apps.append(LysStyring(app)) class LysStyring: delay = 60 scene_index = 0 def __init__(self, config): self.scene_index = 0 self.cfg = config seed() state.persist(f"pyscript.scenestyring_{self.cfg['id']}_twls", default_value=0) state.persist(f"pyscript.scenestyring_{self.cfg['id']}_status", default_value=False) if "delay" in self.cfg: self.delay = int(self.cfg['delay']) @time_trigger(f"period(now, {randrange(50, 70, 1)}s)") def motion_delay_off_trig(): if float(state.get(f"pyscript.scenestyring_{self.cfg['id']}_twls")) <= time.time(): if "sensors" in self.cfg: for tr in self.cfg['sensors']: if state.get(f"{tr}") == "on": state.set(f"pyscript.scenestyring_{self.cfg['id']}_twls", value = time.time() + self.delay) return self.light_off() registered_triggers.append(motion_delay_off_trig) if "sensors" in self.cfg: for tr in self.cfg['sensors']: #log.info(f"Setter opp motion trigger paa {tr}") @state_trigger(f"{tr} == 'on' and {tr}.old == 'off'") def motion_trig(): task.unique(f"scenestyringmotion_{self.cfg['id']}") self.motion() registered_triggers.append(motion_trig) if "lightlevel" in self.cfg and "lightlevelsensor" in self.cfg: @state_trigger(f"{self.cfg['lightlevelsensor']}") def lightlevel_trig(): task.unique(f"scenestyringlightlvl_{self.cfg['id']}") self.lightlevel() registered_triggers.append(lightlevel_trig) if "scenes" in self.cfg: for tr in self.cfg['scenes']: if "sensor" in self.cfg['scenes'][tr]: #log.info(f"Setter opp state trigger paa {self.cfg['scenes'][tr]['sensor']}") @state_trigger(f"{self.cfg['scenes'][tr]['sensor']}", state_hold = randrange(1, 120, 3)) def statechanged_trig(var_name=None): task.unique(f"scenestyringstatechg_{self.cfg['id']}_{var_name}") self.statechanged() registered_triggers.append(statechanged_trig) if "switchID" in self.cfg: @event_trigger("deconz_event", "event == 1000") def light_delayon(context, device_id, event_type, trigger_type, unique_id, id=None, event=None): if id == self.cfg['switchID']: task.unique(f"scenestyringevent_{self.cfg['id']}") task.sleep(0.5) if self.scene_index > len(self.cfg['scenes']): self.scene_index = 0 if self.scene_index == 0: self.setscene(1) else: i = 1 for tr in self.cfg['scenes']: if i == self.scene_index: scene.turn_on(entity_id=self.cfg['scenes'][tr]['name'], transition = 1) break i += 1 self.scene_index += 1 registered_triggers.append(light_delayon) @state_trigger(f"{self.cfg['lightID']} == 'off'") def clear(): self.scene_index = 0 registered_triggers.append(clear) def motion(self): if "lightlevel" in self.cfg and "lightlevelsensor" in self.cfg: lightlevellimit = float(self.cfg['lightlevel']) lightlevelsensor = float(state.get(f"{self.cfg['lightlevelsensor']}")) else: lightlevellimit = 1 lightlevelsensor = 0 if lightlevelsensor < lightlevellimit: if state.get(f"{self.cfg['lightID']}") == "off": self.setscene(1.75) state.set(f"pyscript.scenestyring_{self.cfg['id']}_status", value = True) self.scene_index = 1 state.set(f"pyscript.scenestyring_{self.cfg['id']}_twls", value = time.time() + self.delay) def light_off(self): if state.get(f"pyscript.scenestyring_{self.cfg['id']}_status") == "True": light.turn_off(entity_id = self.cfg['lightID']) state.set(f"pyscript.scenestyring_{self.cfg['id']}_status", value = False) def lightlevel(self): try: if state.get(f"pyscript.scenestyring_{self.cfg['id']}_status") == "True" and (float(state.get(f"{self.cfg['lightlevelsensor']}")) > float(self.cfg['lightlevel']) * 2.0): light.turn_off(entity_id = self.cfg['lightID']) state.set(f"pyscript.scenestyring_{self.cfg['id']}_status", value = False) except ValueError: pass def statechanged(self): if state.get(f"{self.cfg['lightID']}") == "on": self.setscene(-1) def setscene(self, trans): s = self.cfg['SceneNormal'] if "delay" in self.cfg: self.delay = self.cfg['delay'] t = int(self.cfg['Transition']) if "scenes" in self.cfg: for tr in self.cfg['scenes']: if ("sensor" in self.cfg['scenes'][tr] and "state" in self.cfg['scenes'][tr] and state.get(f"{self.cfg['scenes'][tr]['sensor']}") == self.cfg['scenes'][tr]['state']): s = self.cfg['scenes'][tr]['name'] if "delay" in self.cfg['scenes'][tr]: self.delay = self.cfg['scenes'][tr]['delay'] if "Transition" in self.cfg['scenes'][tr]: t = int(self.cfg['scenes'][tr]['Transition']) break if trans < 0: trans = t scene.turn_on(entity_id = s, transition = trans) Bare for å presisere. Normal scene er den som aktiveres hvis scene1 til sceneX ikke har betingelser som gjør at de blir valgt.
  10. Lage en klasse og gjenbruke kode er gull verd. Og pyscript er etter min mening langt mer oversiktlig enn automasjoner. Men det siste er jo smak og behag.
  11. Det er jeg også. Har lagd en klasse i pyscript for å styre alt lys, men har valgt en litt annen tilnærming enn du. Lys kan styres automatisk eller settes i manuelt og står i manuelt til det slås av. Lysstyrke og temperatur styres av solens posisjon, men jeg aktiverer scener istedenfor å styre lyset direkte.
  12. Jeg har det normalt slik at Home Assistant beregner når tid panelovnene må slås på for at det skal være varmt når vi kommer hjem fra jobb. Tror faktisk dette bidrar til en stor kostnad på strømregningen. Strømmen er jo gjerne på sitt dyreste på ettermiddagen. Og i år blir det verre, vistnok. Derfor har jeg lagd en "bryter" som jeg slår på hvis jeg har planlagt å fyre med gass eller ved når jeg er hjemme fra jobb. Da er det jo penger ut av vinduet å varme opp huset med strøm i forkant. Når denne bryteren er påslått så går ovner i komforttemperatur 90 minutter etter arbeidstid slutt istedenfor et ukjent antall minutter før arbeidstid slutt.
  13. En sparer alltid energi med å senke temperaturen, men en sparer nødvendigvis ikke penger. Problemet med nattsenking er at en sparer strøm når den er billigst og så må en varme opp på dagtid når den er dyrest. Jeg har sluttet å senke temperaturen på støpte gulv pga dette, men panelovnene går fortsatt i sparemodus om natt og på dagtid mens jeg er på jobb. De er på lav temperatur i 17 av døgnet 24 timer og jeg innbiller meg at det må bidra positivt. Men sikker er jeg ikke.
  14. Dette må du heller se litt an. Etter en omstart av deconz kan det gå litt tid før den oppdager gardinene. De er batteridrevne og sender ikke data uten at det er nødvendig. Pass også på at de har siste firmware. Det hjalp mye på mine. Du kan oppdatere de fra deconz.
  15. Og så er det ikke slik at dersom temperaturen kommer under 50 grader så eksploderer bakteriefloraen. Dusjhodet kommer f.eks omtrent aldri opp i den temperaturen. Tvert i mot er dusjhodet nesten hele tiden innenfor det mest optimale for bakterievekst. Men vi har ikke et stort problem med legionella i Norge så litt hysteri ser det ut til å være. Du sparer alltid energi på å senke temperaturen. Det virker nesten som om det er blitt en myte at en må bruke mer energi på å varme opp etter en periode med temperatursenking enn det en bruker for å opprettholde temperaturen. Men jeg en veldig enig i at en må se på komforten først og fremst. Jeg har til nøds fått kona til å gå med på at huset er kaldt om morgenen mens vi pusser tenner og smører niste til jobb. Men det er varmt på badet og vi har en stråleovn i hagestue som gir god komfort innenfor de få kvadratmetrene den dekker. Å endre på innarbeidete rutiner kan være lurt. Spesielt på bruk av varmt vann.
  16. I mitt hus bruker jeg bare panelovner og varmekabler til oppvarming. Det er et TEK10 hus og det er ikke problem å holde varmen, men et lite problem å få opp temperaturen raskt nok. Panelovnene er på tilsammen ca 3,5kw på 180kvm fordelt på 3 etasjer. Vi har en vedovn, men liker ikke å bruke den annet enn til "kos". Den står i øverste etasje og gir naturlig nok null bidrag i de to etasjene under. I tillegg ligger det an til en vinter med høge strømpriser så da lurte jeg på om propan kunne vært et alternativ. Jeg har campingvogn og den har 2 11kg beholdere som er lite brukt om vinteren. Jeg trenger bare investere i en gassovn til 1000 kroner og prisen på propan er på 40-60 øre pr kwh og kan være billigere enn strøm. Planen er å kun bruke den i en kort periode i løpet av dagen til å heve temperaturen raskt etter arbeidstid. Kanskje noe mellom 30-60 minutter pr døgn. Er det noen her som har erfaring med slik bruk? Vil det gi vesentlig dårlig innemiljø med mye co2 og fuktighet? Finnes det stor variasjon i ovner? Ser at mesteparten er stråleovner, men det finnes enkelte modeller som har støpejern i kabinettet og gir mer konveksjonsvarme.
  17. Jeg sjekket payload template på mitt system og den lister opp enhetene det må gjøres noe med. Er det selve epostutsendelsen som svikter? Du har bare vist fram en mqtt publish, men ingenting om hvordan dette ender opp i en epost.
  18. Er det noen som har en god løsning på å hente inn fremtidig strømpris. Pr i dag bruker jeg en integrasjon for å hente fra Nordpool ( custom-components/nordpool: nordpool sensor for ha. (github.com) ). Men denne har svakheter med at den må passes på hele tiden. Den stopper opp å hente inn nye priser og klarer heller ikke å hente seg inn igjen. Løsningen er å ta en omstart på HA. Hvilke alternativer finnes det der ute?
  19. Hvorfor lete etter en sammenheng når det mest sannsynlig ikke er noen sammenheng? Mener nå jeg .......
  20. En vet en er på et automasjonsforum når noen skriver "tofaseautentisering" 🙂
  21. Tviler sterkt på at det blir holdbart. Mine Nobø termostater slår av og på varme i 5 min sykluser. Det gjøres for å holde temperaturen i gulvet konstant. Du skal bruke en føler for luft-temperatur og du får dermed en lang forsinkelse fra varme i gulv til varme i rom. For å unngå svingninger mellom glovarmt og iskaldt gulv må du også slå på og av varme i korte perioder. Men det releet der er ikke lagd for slikt. Når noe skal slås av og på ofte så er det vanlig med en halvleder i parallell med rele. Halvlederen kobler inn / ut noen millisekund før rele kobler inn / ut. Da unngår en gnistdannelse på rele og varmgang i halvleder.
  22. Blafrer i vind? Det er vel ingen av disse du kan ha nede mens vindu står åpent? Jeg har montert aqara vindusensor på alle vinduer med gardiner slik at verken automatikk eller manuell styring av gardiner til stengt posisjon er mulig hvis vindu er åpent.
×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.