RVM
-
Innlegg
174 -
Ble med
-
Besøkte siden sist
-
Dager vunnet
4
Innholdstype
Profiler
Forum
Blogger
Nedlastninger
Artikler
Regler
Hendelser
Galleri
Store
Innlegg skrevet av RVM
-
-
Hvis du vil kalkulere det selv tror jeg du må mellomlagre historiske prisdata for måneden selv, f.eks. ved å bruke Node-Red/Pyscript/InfluxDB e.l. opp mot Home Assistant. Mulig du kan få det til med en trigger-based template sensor også.
Eller du kan hente beregnet snittpris og kompensasjon fra Internett ved å bruke f.eks. en REST sensor, som herfra med hjelp av denne.
-
selvesteha skrev (På 23.12.2022 den 8.19):
Finnes det noen mulighet til å sjekke at scriptet fungerer som det skal?
Har du sjekket i loggen om du får noen feilmeldinger fra Pyscript? Du kan jo også evt. legge inn noen log.info() eller log.error() rundt omkring i koden for å verifisere hva som funker/feiler. Jeg liker å ha en notify til mobilen på alle feilmeldinger fra Pyscript.
- 1
-
Jepsh skrev (9 timer siden):
Veldig nyttig script!
Noen ide om hvordan man installerer pandas for pyscript i Home Assistant OS?
Har du prøvd å legge det til i requirements.txt?
SitatIf your pyscript code requires particular Python packages that are not already installed by HASS, add a
requirements.txt
file the<config>/pyscript
directory. -
hjemmedude skrev (1 time siden):
Hvordan setter dere modus på heatit termostater?
Jeg har de eldste, og på termostat står det Eco og Comfort, i HA ser jeg Off, Heat, Cool og presets None og Energy Heat.Har så langt brukt 'off' men det blinker litt når PID regulatoren stopper en termostat, så vil heller bruke Cool for eks.
Problemet jeg har med cool er at avlest temperatur er 16,5 gr - hvor den får denne verdien fra vet jeg ikke.
Termostat bruker gulvføler og viser korrekt i Heat modus.
Jeg bruker alltid Heat, og justerer ned settpunktet 3 grader når PID/pris/nattsenk dikterer at de ikke skal trekke strøm.
-
Jeg har vært fornøyd med EasyAccess EasyFingerTouch, som snakker zigbee med en tilleggsmodul inni låsen. Funker strålende i HA via Zigbee2MQTT hos meg. Liker at den har mekanisk nødnøkkel hvis all elektronikk skulle feile.
De koster også "bare" 2500 kroner på tilbud (+ zigbee-modul), så hvis du skal ha 3 stk kan det kanskje det være litt å spare sammenlignet med Yale Doorman osv.
- 1
-
Du trenger vel bare en automasjon som kaller service climate.set_temperature? F.eks. noe sånt:
service: climate.set_temperature data: temperature: "{{ state_attr('climate.bathroom_floor', 'temperature') - 2 }}" target: device_id: [din device_id]
- 1
-
hjemmedude skrev (3 timer siden):
Kopierte denne koden og får result type: number og 1. Noe jeg misser her..
Tør jeg gjette på at du prøvde å kopiere {{ l }} fra skjermbildet mitt og endte opp med {{ 1 }} istedenfor? 😀
{{ l }} var bare for å vise hva variabelen l inneholdt, men hvis du skriver {{ 1 }} i developer tools får du helt riktig en output som er et number med verdi 1.
-
Kardemomme skrev (23 minutter siden):
Her var det mange gode ideer som jeg tror jeg vil låne.
Har aldri brukt, eller hørt om, pyscript.. Men det gikk jo greit i legge inn ved å følge bruksanvisningen som ligger her i tråden.
Kan jeg spørre om hvordan du får denne visningen:
Visningen er multiple-entity-row.
- 1
-
Thomas skrev (På 14.11.2022 den 23.15):
Kom over denne i dag. i json fila finner man gjennomsnitt hittil denne måned. Man finner også kalkuler og estimer strømstøtte.
https://github.com/martinju/stromstotteTusen takk for denne (og til han som har laget det)! Jeg kan ingenting om R, men siden han automatisk publiserer csv/json daglig er det lett å hente inn forecast for månedspris og strømstøtte fra modellen hans med f.eks. pandas og pyscript:
import pandas as pd @pyscript_compile def read_csv(): # Separate function for blocking I/O, using @pyscript_compile url = "https://raw.githubusercontent.com/martinju/stromstotte/master/data/current_estimated_compensation.csv" try: df = pd.read_csv(url) df = df[df["area"] == "NO2"] # Only look at region NO2 df = df.set_index("type") out = {} out["mean"] = df.loc["mean"]["mean_price"] out["quantile_0.025"] = df.loc["quantile_0.025"]["mean_price"] out["quantile_0.975"] = df.loc["quantile_0.975"]["mean_price"] return out, None except Exception as exc: return None, exc @time_trigger("cron(@daily)") def get_forecast(): result, exception = task.executor(read_csv) if exception: raise exception else: pyscript.forecast_monthly_electricity_price_mean = round(result["mean"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_025 = round(result["quantile_0.025"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_975 = round(result["quantile_0.975"], 3)
- 1
-
MHR skrev (5 minutter siden):
Jeg er interessert i å estimere framtidig kwt bruk denne timen som dere snakker om over her. Jeg er litt ny i HA og lurte på om dere kan dele litt mer detaljert hvordan dere får dette til med filter og hvordan dere synes at det fungerer?
Jeg tror de fleste estimerer timesforbruket som estimat = (forbruk så langt denne timen) + sanntidseffekt*(andel av timen som gjenstår). Det kan du lage en template sensor for i HA, f.eks. med verdier fra en AMS-leser som forklart over.
Sanntidseffekten kan være grei å sende gjennom et lavpassfilter først sånn at estimatet ikke blir så følsomt for hurtige endringer i effekt, noen laster skrur seg jo hyppig av og på. Filtrerer man derimot "for mye" kan estimatet fort ligge litt på etterskudd, så man må finne en middelvei. Jeg har satt min time_constant til 30, det fungerer godt nok for meg.
Estimatet fungerer greit nok, men det er naturligvis ganske unøyaktig i begynnelsen av timen, og blir mer og mer presist etterhvert som estimatet blir mindre sensitivt for ekstrapolert effekt. Hvis lastene er deterministiske (eks. fra oppvaskmaskin med kjent oppvaskprogram) kan man hypotetisk forbedre estimatet med det kjente framtidige forbruket fra eksempelvis oppvaskmaskinen, men det blir fort for komplisert i en template sensor ser jeg for meg, da ville jeg brukt noe sånt som Node-Red eller Pyscript osv.
- 1
-
hjemmedude skrev (2 minutter siden):
Hvordan ignorerer jeg pid_new_state fra loggboken?
Avhengig av hvordan du har satt opp configuration.yaml, så kan du ta bort default_config og administrere default-integrasjonene selv, inkludert logbook.
For logbook-integrasjonen kan du legge til en exclude avhengig av hva du vil ignorere (f.eks. enten en entity eller et helt domain)
-
chrlod skrev (7 minutter siden):
GND er vel ikke nødvendig her? Er ikke i bruk hos meg hvert fall.
Tror ikke det, jeg bruker den bare til å terminere skjerm i en ende.
-
TurboJens skrev (2 minutter siden):
Eit godt spørsmål faktisk, eg har kobla meg til på klemmene det er henvist til i manualen, men det står ikkje gnd på den siste terminalen.
Mener å huske den siste var gnd selv om det ikke er merket, men sjekk med multimeteret mot en av de andre jordterminalene.
-
Det skal være notert ned i igangkjøringsprotokollen du skal ha fått overlevert for aggregatet. Hvis ikke ville jeg begynt med slaveadresse 1, baud 9600, og ingen paritet. Hvis ikke det fungerer ville jeg prøvd andre vanlige baudrater, og så begynt på ny med partalls paritet. Selv om det står at baudrate begynner på 9600 i parameterdokumentet, var 1200 en gyldig baudrate på min VTR300.
Kobler du til på A+/B- terminalene? I så fall, kan du ha byttet om på lederne? Eller brukt for lange (uflettede) ledere?
-
Andreas Noteng skrev (12 timer siden):
Å gjøre dette direkte i python ville vært lett men jinja sliter jeg med
Det er derfor vi har integrasjonene Python Scripts, AppDaemon, og pyscript. Jeg bruker sistnevnte hele tida, men de andre er sikkert brukandes de også
-
Ser ut som du har plassert templaten for estimert timeforbruk under sensor-delen, men den må du flytte ned eller fjerne indentering, slik som Daily Energy Total-sensoren din.
- 1
-
thoralex skrev (24 minutter siden):
Da får jeg feilmelding:
Ser ut som det blir noe feil med syntaxen og at det blir lest i sammenheng med sensoren over?
Høres ut som du må sjekke syntaks for "sensor.stromforbruk_derivert_effekt" også ja. Hvordan ser den ut?
-
thoralex skrev (28 minutter siden):
Nå har jeg sittet fast på denne i flere uker... Uansett hva jeg prøver så får jeg bare feilmeldinger.
Noen forslag? Disse feilmeldingene er ikke helt enkle å tolke når man er nybegynner...
For meg ser det ut som en sammenblanding av nytt og gammelt template format.
Nytt format:
template: - sensor: - name: "estimert timeforbruk ufiltrert" unit_of_measurement: "kWh" device_class: power state: "{{ (states('sensor.energy')|float(15)+states('sensor.stromforbruk_derivert_effekt')|float(0) *(3600-now().minute*60-now().second)/3600) | round(3) }}"
Gammelt format:
- platform: template sensors: estimert_timeforbruk_ufiltrert: friendly_name: "estimert timeforbruk ufiltrert" unit_of_measurement: "kWh" device_class: power value_template: "{{ (states('sensor.energy')|float(15)+states('sensor.stromforbruk_derivert_effekt')|float(0) *(3600-now().minute*60-now().second)/3600) | round(3) }}"
-
janfrode skrev (5 minutter siden):
Det fungerte bedre ja. Tusen takk!
Så bra! Siden du la det inn i dag vil du sikkert legge til data fra 01-06. oktober manuelt.
Du kan legge inn noe sånt for hver dag du mangler denne måneden, lagre, og ta det bort igjen:
pyscript.electricity_monthly_average_price.stored_values['2022-10-01'] = [1.053, 0.875, 0.69, 0.302, 0.24, 0.228, 0.223, 0.334, 0.621, 1.005, 1.505, 1.463, 1.235, 1.017, 0.91, 0.92, 0.96, 1.885, 2.314, 2.674, 2.463, 1.982, 1.511, 1.064]
-
janfrode skrev (13 minutter siden):
Sorry for being en pyscript noob, men jeg sliter med å få denne til å fungere.. Jeg kopierte den rått, la inn state.persist'en du nevnte, korrigerte sensor.nordpool-navnet
Ifølge feilmeldingen eksisterer ikke pyscript.electricity_monthly_average_price, så du glemte kanskje å definere den første gang før state.persist?
Prøv å endre begynnelsen av scriptet til:
pyscript.electricity_monthly_average_price = 0.0 pyscript.electricity_monthly_average_price.stored_values = {} state.persist('pyscript.electricity_monthly_average_price') @state_trigger("sensor.nordpool_kwh_krsand_nok_3_10_025") def calculate_monthly_average_price():
...og så lagre fila. Deretter fjerner du de to første linjene, slik at det ser slik ut før du lagrer igjen:
state.persist('pyscript.electricity_monthly_average_price') @state_trigger("sensor.nordpool_kwh_krsand_nok_3_10_025") def calculate_monthly_average_price():
-
Darius skrev (2 timer siden):
Hei,
Kan noen hjelpe å modifisere template sensor? Jeg vil ha input_number entity og velge hvor mange 'billig timer' jeg vil ha dynamisk på card..
Noe sånt kanskje?
{% set l=state_attr('sensor.nordpool_xxx_xxx_xxx_x_xxx_xxx', 'raw_today')|sort(attribute='value') %} {% set ns = namespace(out=false) %} {% set n = states('input_number.xxx')|int %} {% for i in range(n) %} {% if (now() >= l[i].start and now() <= l[i].end) %} {% set ns.out = true %} {% endif %} {% endfor %} {{ns.out}}
Husk å legge inn din egen Nordpool-sensor og input_number.
- 2
-
FSund skrev (47 minutter siden):
Og har du peiling på om det er mulig å skru av heater coil helt? Med tanke på strømforbruk må det være bedre å skru på/opp varmepumpa litt enn å la villaventen varme luften med strøm.
Mulig det finnes andre måter, men på min kan man i alle fall sette den i Eco mode, og så stille opp terskelverdien for temperaturdifferansen som skal til før varmeelementet slår inn. Men varmeveksleren vil gå etter behov likevel.
-
Jeg tror ikke det finnes et universelt svar, tipper det avhenger av standard, klima og årstid. Og varmepumpen selvfølgelig.
Vi bor i en nyere enebolig bygd etter TEK17-standard. Varmepumpa står i hovedoppholdsrommet (stue/spisestue/kjøkken), og etasjeskillet mot soverommene over er isolert. Varmepumpa er alltid i laveste tenkelig modus ("stillegående" og "økonomi"), og da den var på i 26.5 minutter i dag tidlig rapporterte den 0.2 kWh. Jeg kan ikke tenke meg at det skulle lønne seg å la den stå på helt til vi kommer hjem fra jobb, men nå er det tidlig høst i vestlandsklima. Det endrer seg kanskje når vinteren kommer.
-
Så man kan altså skrive til en inngang som egentlig er dedikert til en fysisk digital input? Høres jo rart ut, så jeg måtte leite opp dokumentet du har et utklipp fra.
I kapittel 5 skriver de i alle fall at alle innganger og coils er tilgjengelige som registere med en formel for addressen: (Register Address * 16) – 15.
Jeg tipper at du kan lese register 701, og få en eller to bytes som du må dekode til bits iht. oversikten over. Og så kan du skrive til (701*16)-15 = 11201 for DI1 osv for å sette inngangene. Men det er nå bare et gjett, du får prøve deg fram.
Hvis du har satt opp modbus slik at du kan bruke modbus.write_register osv som postet over, kan du prøve:
service: modbus.write_coil data: address: 11201 slave: 1 state: True hub: VTR300
Forutsetter selvfølgelig at du har definert modbus i configuration.yaml med hub VTR300. Usikker på om state må være 1 eller True.
- 1
Nordpool sensor for Home Assistant
i Home Assistant
Skrevet
Ingen kjempegode tips nei, men klarer du å feilsøke hvor problemet oppstår? Forstår jeg det riktig at du får importert pandas, men at det feiler på pd.read_csv fordi den ikke får sendt requesten?