Vinnerliste
Populært innhold
Viser innholdet med mest poeng fra 14. okt. 2022 i alle områder
-
Laget litt script og visuelt grensesnitt for smartlading av elbil (i mitt tilfelle Tesla på Tesla Wall Charger). Kommer til å innarbeide hensyn til effekttariff også etterhvert når det kommer her i distriktet. Blått viser rimeligste timen(e) frem til fastsatt deadline. Beregner automatisk ut hvor mange timer lading som behøves basert på info fra Tesla. Apexcharts-card for grensesnittet. Apexchart grensesnittet i stor grad kopiert fra en annen forumpost. Deretter kan man sette opp en automasjon som starter og stopper lading basert på binary sensor laget nedenfor. Koden er litt kaotisk nå, men håper den kanskje er til hjelp eller inspirasjon for andre: Et par forklaringer i koden: 454 = maks rekkevidde på bil 70 = ladehastighet angitt i km/t sensor: - platform: template sensors: charge_cheap_hours: friendly_name: "Cheapest hours" attribute_templates: raw_cheapest_hours: > {% set nhoursmax = namespace(nhoursmax= 4) %} {% if states('sensor.tesla_model_3_range_sensor')|int > 0 %} {% set nhoursmax.nhoursmax = ((454 - states('sensor.tesla_model_3_range_sensor')|int)/70)|round(0,'ceil') %} {% else %} {% set nhoursmax.nhoursmax = 4 %} {% endif %} {% if state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow')|length > 1 %} {% if state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow')[0].value == None %} {% set c=state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_today') %} {% else %} {% set c=state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_today')+state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow') %} {% endif %} {% endif %} {% if state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow')|length == 0 %} {% set c=state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_today') %} {% endif %} {% set c=c|sort(attribute='value')%} {% set chargefrom = namespace(chargefrom=now()) %} {% set chargeto = namespace(chargeto=now()) %} {% if now().hour < 8 %} {% set chargeto.chargeto = now().replace(hour=8,minute=0,second=0) %} {% endif %} {% if now().hour >= 8 %} {% set d = now().day + 1 %} {% set chargeto.chargeto = now().replace(day=d,hour=8,minute=0,second=0) %} {% endif %} {% if states('input_select.charge_deadline') == "Evening" %} {% if now().hour < 18 %} {% set chargeto.chargeto = now().replace(hour=18,minute=0,second=0) %} {% endif %} {% if now().hour >= 18 %} {% set d = now().day + 1 %} {% set chargeto.chargeto = now().replace(day=d,hour=18,minute=0,second=0) %} {% endif %} {% endif %} {% if states('input_select.charge_deadline') == "Unlimited" %} {% set d = now().day + 3 %} {% set chargeto.chargeto = now().replace(day=d,hour=18,minute=0,second=0) %} {% endif %} {% set data = namespace(list=[]) %} {% for item in c %} {% if item.end >= chargefrom.chargefrom and item.end <= chargeto.chargeto and data.list|length < nhoursmax.nhoursmax %} {% set customer = ({"start":item.start|string,"end": item.end|string,"value":item.value}) %} {% set data.list=data.list + [customer] %} {% endif %} {% endfor %} {{data.list|sort(attribute='start')|to_json}} value_template: 'on' charge_cheap_hour_bool: friendly_name: "Cheap hour" value_template: > {% set nhoursmax = namespace(nhoursmax= 4) %} {% if states('sensor.tesla_model_3_range_sensor')|int > 0 %} {% set nhoursmax.nhoursmax = ((454 - states('sensor.tesla_model_3_range_sensor')|int)/70)|round(0,'ceil') %} {% else %} {% set nhoursmax.nhoursmax = 4 %} {% endif %} {% if state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow')|length > 1 %} {% if state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow')[0].value == None %} {% set c=state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_today') %} {% else %} {% set c=state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_today')+state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow') %} {% endif %} {% endif %} {% if state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_tomorrow')|length == 0 %} {% set c=state_attr('sensor.nordpool_kwh_trheim_nok_2_095_025', 'raw_today') %} {% endif %} {% set c=c|sort(attribute='value')%} {% set chargefrom = namespace(chargefrom=now()) %} {% set chargeto = namespace(chargeto=now()) %} {% if now().hour < 8 %} {% set chargeto.chargeto = now().replace(hour=8,minute=0,second=0) %} {% endif %} {% if now().hour >= 8 %} {% set d = now().day + 1 %} {% set chargeto.chargeto = now().replace(day=d,hour=8,minute=0,second=0) %} {% endif %} {% if states('input_select.charge_deadline') == "Evening" %} {% if now().hour < 18 %} {% set chargeto.chargeto = now().replace(hour=18,minute=0,second=0) %} {% endif %} {% if now().hour >= 18 %} {% set d = now().day + 1 %} {% set chargeto.chargeto = now().replace(day=d,hour=18,minute=0,second=0) %} {% endif %} {% endif %} {% if states('input_select.charge_deadline') == "Unlimited" %} {% set d = now().day + 3 %} {% set chargeto.chargeto = now().replace(day=d,hour=18,minute=0,second=0) %} {% endif %} {% set data = namespace(list=[]) %} {% for item in c %} {% if item.end >= chargefrom.chargefrom and item.end <= chargeto.chargeto and data.list|length < nhoursmax.nhoursmax %} {% set customer = item %} {% set data.list=data.list + [customer] %} {% endif %} {% endfor %} {% set chargebool = namespace(chargebool=False) %} {% for item in data.list %} {% if now() >= item.start and now() <= item.end %} {% set chargebool.chargebool = True %} {% endif %} {% endfor %} {{ chargebool.chargebool }} input_boolean: charge_onoff: name: Enable smart charge icon: mdi:car input_select: charge_deadline: name: Smart charge deadline options: - Morning - Evening - Unlimited icon: mdi:car Apexchart: type: custom:apexcharts-card graph_span: 48h span: start: day offset: +0H header: title: Electricity Price show: false show_states: true colorize_states: true floating: false hours_12: false stacked: false experimental: color_threshold: true all_series_config: show: legend_value: false datalabels: false extremas: true in_brush: true float_precision: 3 type: area invert: false fill_raw: last now: show: true label: Now color: red series: - entity: sensor.nordpool_kwh_trheim_nok_2_095_025 name: Current day opacity: 0.7 extend_to: false color_threshold: - value: -1 color: '#1E90FF' - value: 0 color: '#008000' - value: 0.9 color: '#008000' - value: 1.7 color: '#DAA520' - value: 2 color: '#FF0000' data_generator: | return entity.attributes.raw_today.map((start, index) => { return [new Date(start["start"]).getTime(), entity.attributes.raw_today[index]["value"]]; }); - entity: sensor.nordpool_kwh_trheim_nok_2_095_025 name: Tomorrow opacity: 0.5 extend_to: false color_threshold: - value: -1 color: '#1E90FF' - value: 0 color: '#008000' - value: 0.9 color: '#008000' - value: 1.7 color: '#DAA520' - value: 2 color: '#FF0000' data_generator: | return entity.attributes.raw_tomorrow.map((start, index) => { return [new Date(start["start"]).getTime(), entity.attributes.raw_tomorrow[index]["value"]]; }); - entity: sensor.charge_cheap_hours name: Cheapest Hours color: '#380d94' type: column opacity: 0.9 extend_to: false stroke_width: -2 data_generator: | return entity.attributes.raw_cheapest_hours.map((start, index) => { return [new Date(start["start"]).getTime(), entity.attributes.raw_cheapest_hours[index]["value"]]; }); apex_config: chart: height: 400px animations: enabled: true easing: easeinout speed: 800 animateGradually: enabled: true delay: 150 zoom: enabled: true type: x autoScaleYaxis: true zoomedArea: fill: color: '#90CAF9' opacity: 0.4 stroke: color: '#0D47A1' opacity: 0.4 width: 1 legend: show: false floating: true offsetY: 25 yaxis: opposite: false reversed: false logarithmic: false decimalsInFloat: 2 min: 0 labels: show: true tooltip: enabled: true crosshairs: show: true xaxis: labels: show: true rotate: -45 rotateAlways: true logarithmic: true stroke: show: true curve: stepline lineCap: butt colors: undefined plotOptions: candlestick: colors: upward: '#00B746' downward: '#EF403C' wick: useFillColor: true markers: size: 1 grid: show: true strokeDashArray: 1 position: front xaxis: lines: show: true1 poeng
-
Problemet er vel å få en iPhone til å gjøre noe som helst basert på en kommando utenfra...1 poeng
-
Nå koster de 90 kroner på Obs på Bryne, M44. Men etter at jeg plukket med meg en til så var det bare 2 igjen1 poeng
-
Joda, har et lignende system oppe og går og har skrevet litt om det her og her... Jeg har ikke by-pass bryter da jeg tenker at den i prinsippet aldri skal brukes og i nøden er det bare et par ledninger som må flyttes i sikringsskapet... Ellers har jeg en 10kW off-grid kombi-inverter med 10kW MPPT og 150A batterilader. 12kWh DIY LiFePO4 pakke med 200A JK BMS som i løpet av kort tid blir vel doblet med 14.5 kWh i tillegg. Og 10kW diesel-backup... Strømprisen skal IKKE ned og strømstøtten er midlertidig... Om jeg regner ren strømpris uten strømstøtte så har jeg på 6 måneder tjent inn 10% av mitt anlegg. Dette regnestykket blir jo selvsagt ikke riktig men, uten å ha kvalitetssikret kalkulasjonen, medregnet nettleie og strømstøtte ligger jeg pr i dag an til 8 år nedbetaling... (forutsatt at prisbildet med strømstøtte siste 6 mnd blir representativt for framtiden).1 poeng
-
Dagsproduksjonen 11.10.2022 endte på 44,6kWh, beste dag hittil. Blir neppe så mye bedre på denne tiden, men sommeren blir spennende.1 poeng
-
Har dere blitt noe klokere på dette? Sitter å prøver å få til det samme, men finner ikke ut av det1 poeng
Vinnerlisten er satt til Oslo/GMT+02:00