54 lines
15 KiB
JSON
54 lines
15 KiB
JSON
[
|
|
{
|
|
"id": "GGC bei Bedaf",
|
|
"result": {
|
|
"structured": "TRIGGER: When SMA GGC sensor [sensor.sma_ggc_hm] is below 1. CONDITIONS: None. ACTIONS: Write to modbus register 43090 on slave 1 via hub 'sma-hm'.",
|
|
"natural_language": {
|
|
"trigger": "When the SMA GGC sensor [sensor.sma_ggc_hm] reports a value below 1.",
|
|
"conditions": "There are no conditions.",
|
|
"action": "Sends a command to write to a specific modbus register (address 43090, slave 1) using the 'sma-hm' hub."
|
|
},
|
|
"human_like": "Sends a modbus command when the SMA GGC sensor value drops below 1.",
|
|
"complexity": "low"
|
|
}
|
|
},
|
|
{
|
|
"id": "BYD Akkusteuerung",
|
|
"result": {
|
|
"structured": "TRIGGER: When BYD control mode selector [input_select.byd_akkusteuerung] OR BYD charge strength target [input_number.byd_akkusteuerung_ladestaerke_soll] OR BYD discharge strength target [input_number.byd_akkusteuerung_entladestaerke_soll] OR BYD 0.2C charge strength [input_number.byd_akkusteuerung_02c_ladestaerke] changes state and remains stable for 1 second. OR When the time matches a pattern of every 30 minutes. OR When Home Assistant starts. CONDITIONS: None. ACTIONS: If BYD control mode selector [input_select.byd_akkusteuerung] is 'BYD Akku schnell Laden', then write values to modbus register 40151, wait 5 seconds, and write a calculated value to register 40149. If BYD control mode selector [input_select.byd_akkusteuerung] is 'BYD Akku schnell Entladen', then write values to modbus register 40151, wait 5 seconds, and write a calculated value to register 40149. If BYD control mode selector [input_select.byd_akkusteuerung] is 'BYD Akku Pause', then write values to modbus register 40151, wait 5 seconds, and write a fixed value to register 40149. If BYD control mode selector [input_select.byd_akkusteuerung] is 'BYD Akku Automatisch', then write a value to modbus register 40151. If BYD control mode selector [input_select.byd_akkusteuerung] is 'BYD Akku 0.2C Laden', then write values to modbus register 40151, wait 5 seconds, and write a calculated value to register 40149.",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers in three ways: when any of the BYD control mode selector [input_select.byd_akkusteuerung], BYD charge strength target [input_number.byd_akkusteuerung_ladestaerke_soll], BYD discharge strength target [input_number.byd_akkusteuerung_entladestaerke_soll], or BYD 0.2C charge strength [input_number.byd_akkusteuerung_02c_ladestaerke] changes and remains stable for one second; every 30 minutes on the clock; or when Home Assistant first starts up.",
|
|
"conditions": "There are no conditions that must be met for the actions to run.",
|
|
"action": "Depending on the selected mode, the automation sends specific commands to a modbus device. For 'BYD Akku schnell Laden', it sets the battery to charge at a specified target rate. For 'BYD Akku schnell Entladen', it sets the battery to discharge at a specified target rate. For 'BYD Akku Pause', it puts the battery into a paused state. For 'BYD Akku Automatisch', it sets the battery to automatic mode. For 'BYD Akku 0.2C Laden', it sets the battery to charge at a 0.2C rate. Each action involves writing to specific modbus registers, with some modes including a 5-second delay between commands."
|
|
},
|
|
"human_like": "Controls a BYD battery system by sending different modbus commands based on the selected operating mode, such as fast charge, fast discharge, pause, automatic, or 0.2C charging.",
|
|
"complexity": "medium"
|
|
}
|
|
},
|
|
{
|
|
"id": "Akku Lade- Entladesteuerung Opti 2.0",
|
|
"result": {
|
|
"structured": "TRIGGER: When Tibber price level [sensor.tibber_price_level] changes OR When Battery optimization automation [input_boolean.akku_opti_automatik] turns on OR When BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] changes OR When Minimum discharge price [sensor.mindestentladepreis] is below Electricity price Musterstrasse 123 [sensor.electricity_price_musterstrasse_123] OR When BYD PV power [sensor.sn_301XXXXXXX_pv_power] is above Inverter AC surplus limit [input_number.akkusteuerung_wr_ac_ueberschuss_grenze] for 30 seconds OR When BYD PV power [sensor.sn_301XXXXXXX_pv_power] is below Inverter AC surplus limit [input_number.akkusteuerung_wr_ac_ueberschuss_grenze] for 30 seconds OR When PV surplus watt [sensor.ueberschuss_pv_watt] is above Inverter 70% surplus limit [input_number.akkusteuerung_wr_70proz_ueberschuss_grenze] for 30 seconds OR When PV surplus watt [sensor.ueberschuss_pv_watt] is below Inverter 70% surplus limit [input_number.akkusteuerung_wr_70proz_ueberschuss_grenze] for 30 seconds OR When PV forecast rating today [sensor.pv_forecast_bewertung_heute] OR PV forecast rating tomorrow [sensor.pv_forecast_bewertung_morgen] changes OR When Dynamic charge strength [sensor.akkusteuerung_dynamische_ladestaerke] changes OR When Battery target state of charge intelligent [sensor.akku_target_soc_intelligent] changes OR When BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] is above 99. CONDITIONS: Battery optimization automation [input_boolean.akku_opti_automatik] is on. ACTIONS: 1. If the trigger is Akku ist voll, reset Days since battery 100 counter [counter.tage_seit_akku100]. 2. Choose between storage scenarios: A. If the trigger is one of AC-Überschuss-Aus, AC-Überschuss, Akku Opti-Automatik AN/AUS, PV-70%-Überschuss, PV-70%-Überschuss-Aus, or BYD Änderung AND Battery optimization automation [input_boolean.akku_opti_automatik] is on AND Charge battery from grid [input_boolean.hausakku_aus_netz_laden] is off AND it is daytime (after sunrise and before sunset), then evaluate nested conditions in order: i. If BYD PV power [sensor.sn_301XXXXXXX_pv_power] is above Inverter AC surplus limit [input_number.akkusteuerung_wr_ac_ueberschuss_grenze] AND BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] is below 100, set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku Dynamisch' and stop. ii. If PV surplus watt [sensor.ueberschuss_pv_watt] is above Inverter 70% surplus limit [input_number.akkusteuerung_wr_70proz_ueberschuss_grenze] AND BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] is below 100, set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku Dynamisch' and stop. iii. If BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] is above 99, set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku Dynamisch' and stop. iv. If BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] is above Battery minimum state of charge [input_number.minsoc] AND below Battery target state of charge intelligent [sensor.akku_target_soc_intelligent] AND it is daytime, set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku Dynamisch' and stop. v. If BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] is above Battery target state of charge intelligent [sensor.akku_target_soc_intelligent] AND PV forecast rating tomorrow [sensor.pv_forecast_bewertung_morgen] is 'Hervorragend' (condition disabled), set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku nur Entladen' and stop. B. If the trigger is Speicher ist voll (note: trigger ID not defined in provided triggers, but referenced) AND Charge battery from grid [input_boolean.hausakku_aus_netz_laden] is on, then turn off Charge battery from grid [input_boolean.hausakku_aus_netz_laden], set Charge price helper [input_number.ladepreis] to the current value of Electricity price Musterstrasse 123 [sensor.electricity_price_musterstrasse_123], and set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku Pause'. C. If the trigger is one of sehr günstig or günstig (note: trigger IDs not defined in provided triggers, but referenced) AND Solcast PV forecast remaining power today [sensor.solcast_pv_forecast_prognose_verbleibende_leistung_heute] is below 20 AND BYD battery state of charge total [sensor.sn_301XXXXXXX_battery_soc_total] is below 60 AND it is nighttime (after sunset and before sunrise), then set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku Pause'. D. Default: Set SMA inverter control selector [input_select.akkusteuerung_sma_wr] to 'Akku Dynamisch'. 3. Choose between Tibber actions (this action block is enabled: false, so it is inactive).",
|
|
"natural_language": {
|
|
"trigger": "The automation triggers on a wide variety of changes related to the battery system and energy prices. This includes changes to the Tibber electricity price level, the battery optimization automation being turned on, changes to the battery's state of charge, the minimum discharge price falling below the current electricity price, the PV power from the inverter being above or below a defined AC surplus limit for 30 seconds, the PV surplus wattage being above or below a defined 70% surplus limit for 30 seconds, changes to the PV forecast ratings for today or tomorrow, changes to the dynamic charge strength, changes to the intelligent target state of charge, or when the battery state of charge rises above 99%.",
|
|
"conditions": "The primary condition for the automation to run is that the Battery optimization automation [input_boolean.akku_opti_automatik] must be switched on.",
|
|
"action": "The automation performs several actions in sequence. First, if the battery becomes fully charged (above 99%), it resets a counter that tracks days since the battery was last at 100%. Next, it selects a storage scenario based on the trigger and other conditions. During the day and when not charging from the grid, it prioritizes charging the battery with excess solar power (either AC or 70% surplus), sets the inverter to a dynamic mode if the battery is between its minimum and target charge levels, and considers discharging only if the battery is above its target and the next day's forecast is excellent (though this check is disabled). If a 'storage full' condition is met while grid charging is active, it turns off grid charging, updates a helper with the current electricity price, and pauses the battery. If electricity prices are cheap at night, the PV forecast is poor, and the battery is low, it also pauses the battery. If none of the specific scenarios apply, it defaults to the dynamic mode. A final, separate action block for Tibber price-based decisions is present but disabled."
|
|
},
|
|
"human_like": "This automation intelligently manages a home battery system, prioritizing the use of solar surplus for charging, pausing during cheap nighttime rates if solar is low, and adjusting the inverter mode based on battery level, solar forecast, and electricity prices.",
|
|
"complexity": "high"
|
|
}
|
|
},
|
|
{
|
|
"id": "Akkusteuerung 2.0",
|
|
"result": {
|
|
"structured": "TRIGGER: When any of the following entities change state and remain stable for 2 seconds: SMA inverter control selector [input_select.akkusteuerung_sma_wr], Discharge strength target [input_number.akkusteuerung_entladestaerke_soll], Charge strength target [input_number.akkusteuerung_ladestaerke_soll], 0.2C charge strength [input_number.akkusteuerung_02c_ladestaerke], Minimum charge strength [input_number.akkusteuerung_min_ladestaerke], Minimum discharge strength [input_number.akkusteuerung_min_entladestaerke], Maximum charge strength [input_number.akkusteuerung_max_ladestaerke], Maximum discharge strength [input_number.akkusteuerung_max_entladestaerke] OR every 4 minutes OR when Home Assistant starts. CONDITIONS: BYD status [sensor.sn_3015673521_status] is Ok. ACTIONS: Execute the first conditional block where SMA inverter control selector [input_select.akkusteuerung_sma_wr] matches the specified state. For 'Akku Automatisch': Write value [0, 802] to modbus register 40151, wait 2 seconds, then write [0, 803] to modbus register 40151, then stop further action processing. For 'Akku schnell Laden': Write [0, 802] to modbus register 40151, wait 2 seconds, then write [65535, (65535 - Charge strength target value)] to modbus register 40149, then stop with status 'fertig'. For 'Akku schnell Entladen': Write [0, 802] to modbus register 40151, wait 2 seconds, then write [0, Discharge strength target value] to modbus register 40149, then stop with status 'fertig'. If no previous condition matched, execute the default sequence: Write [0, 803] to modbus register 40151, wait 1 second, write Minimum charge strength value to modbus register 40793, wait 1 second, write Dynamic charge strength [sensor.akkusteuerung_dynamische_ladestaerke] value to modbus register 40795, wait 1 second, write Minimum discharge strength value to modbus register 40797, wait 1 second, write Maximum discharge strength value to modbus register 40799, wait 1 second, write [0, 0] to modbus register 40801. Then, execute additional conditional actions based on SMA inverter control selector [input_select.akkusteuerung_sma_wr]. For 'Akku Pause': Write [0, 303] to modbus register 41259. For 'Akku nur Laden': Wait 1 second, then write [0, 2289] to modbus register 41259. For 'Akku nur Entladen': Wait 1 second, then write [0, 2290] to modbus register 41259. For 'Akku Dynamisch': Wait 1 second, then write [0, 1438] to modbus register 40236. Two disabled actions for 'Akku 0.2C Laden' and 'Akku nur Entladen' are not executed.",
|
|
"natural_language": {
|
|
"trigger": "This automation runs when any of the key battery control settings change and remain stable for two seconds, or every four minutes, or when Home Assistant first starts up.",
|
|
"conditions": "The automation only proceeds if the BYD status [sensor.sn_3015673521_status] is reporting 'Ok'.",
|
|
"action": "Depending on the selected mode in SMA inverter control selector [input_select.akkusteuerung_sma_wr], the automation sends specific commands to a Modbus device to control battery charging and discharging. For modes like 'Akku Automatisch', 'Akku schnell Laden', and 'Akku schnell Entladen', it writes specific values to registers and then stops. If none of those modes are active, it runs a default sequence to write various charge and discharge limits (like minimum and maximum strengths) to their respective Modbus registers. Finally, it checks for other modes like 'Akku Pause', 'Akku nur Laden', 'Akku nur Entladen', and 'Akku Dynamisch' and sends their corresponding register writes. Some actions for 'Akku 0.2C Laden' and another 'Akku nur Entladen' are disabled and do not run."
|
|
},
|
|
"human_like": "Controls a battery inverter by sending Modbus commands based on the selected operating mode, ensuring the battery system is configured correctly for charging, discharging, or pausing.",
|
|
"complexity": "high"
|
|
}
|
|
}
|
|
] |