Closed tthnn closed 1 year ago
Zeig mal dein Log und deine Config.
@tthnn bist du weiter gekommen? Ich versuche mich seit 2 Tagen, bekomm es aber nicht hin.
Hi, postet doch mal was genau nicht funktioniert (logs, bilder oder sonst irgendwas), Hellsehen kann hier leider keiner. Ich helfe gerne.
Hellsehen kann hier leider keiner. Das stimmt
Bei mir sind es so grundlegende Dinge. Ich habe Python 3.11.3 installiert aber wenn ich dann die Datei HoymilesZeroExport.py öffnen will. passiert nichts.
Ok er findet in der Sektion OPEN_DTU die IP nicht in der config. Bitte hänge hier mal deine config an, dann finden wir das Problem.
Ich bin noch auf Arbeit, poste aber heute Abend meine config. In der config habe ich alle nicht benötigten Einstellungen auf "false" gesetzt und in der config drin gelassen.
Mehr heute Abend
**_[VERSION]
VERSION = 1.33
[SELECT_DTU]
define your DTU (only one) ---
USE_AHOY = true
USE_OPENDTU = false
[SELECT_POWERMETER]
define your Powermeter (only one) ---
USE_TASMOTA = false
USE_SHELLY_3EM = true
USE_SHELLY_3EM_PRO = false
USE_SHRDZM = false
USE_EMLOG = false
USE_IOBROKER = false
USE_HOMEASSISTANT = false
[AHOY_DTU]
defines for AHOY-DTU ---
in settings/inverter set interval to 6 seconds!
AHOY_IP = 192.168.2.9
[SHELLY_3EM]
defines for Shelly ---
SHELLY_IP = 192.168.2.15
[EMLOG]
defines for EMLOG (electronic meter log) System ---
EMLOG_IP = 192.168.2.8
EMLOG_METERINDEX =
[HOMEASSISTANT]
defines for HOME ASSISTANT ---
HA_IP = 192.168.2.56
HA_PORT = 8123
you need to create a Long-Lived Access Token in your Home Assistant: click on your profile, then scroll down to the bottom
HA_ACCESSTOKEN = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
HA_CURRENT_POWER_ENTITY = sensor.dtz541_sml_curr_w
if your powermeter does NOT output the current power: you need to calculate it -> Power(W) = OBIS(1.7.0) - OBIS(2.7.0)
HA_POWER_CALCULATE = FALSE
Power-MQTT Input label (positive active instantaneous power, e.g. OBIS Code 1.7.0)
HA_POWER_INPUT_ALIAS = sensor.dtz541_sml_170
Power-MQTT output label (negative active instantaneous power, e.g. OBIS Code 2.7.0)
HA_POWER_OUTPUT_ALIAS = sensor.dtz541_sml_270
[SELECT_INTERMEDIATE_METER]
if you have an intermediate meter ("Zwischenzähler") to measure the outputpower of your inverter you can set it here. It is faster than the DTU current_power value
define your intermediate meter - if you don´t have one set the following defines to false to use the value from your DTU---
USE_TASMOTA_INTERMEDIATE = false
USE_SHELLY_3EM_INTERMEDIATE = false
USE_SHELLY_3EM_PRO_INTERMEDIATE = false
USE_SHELLY_1PM_INTERMEDIATE = false
USE_SHELLY_PLUS_1PM_INTERMEDIATE = false
USE_SHRDZM_INTERMEDIATE = false
USE_EMLOG_INTERMEDIATE = false
USE_IOBROKER_INTERMEDIATE = false
USE_HOMEASSISTANT_INTERMEDIATE = false
[INTERMEDIATE_SHELLY]
defines for Shelly ---
SHELLY_IP_INTERMEDIATE = xxx.xxx.xxx.xxx
[INTERMEDIATE_EMLOG]
defines for EMLOG (electronic meter log) System ---
EMLOG_IP_INTERMEDIATE = xxx.xxx.xxx.xxx
EMLOG_METERINDEX_INTERMEDIATE =
[INTERMEDIATE_HOMEASSISTANT]
defines for HOME ASSISTANT (you need to create a Long-Lived Access Token in your profile) ---
HA_IP_INTERMEDIATE = xxx.xxx.xxx.xxx
HA_PORT_INTERMEDIATE = 8123
HA_ACCESSTOKEN_INTERMEDIATE = xxx
HA_CURRENT_POWER_ENTITY_INTERMEDIATE = sensor.dtz541_sml_curr_w
[COMMON]
Number of Inverters
INVERTER_COUNT = 1
max difference in percent between SetpointLimit change to approximate the power to new setpoint
SLOW_APPROX_LIMIT_IN_PERCENT = 10
if slow approximation: additional limit based on the limit-difference to "smoot the curve": newLimitSetpoint = newLimitSetpoint + (LimitDifference * SLOW_APPROX_FACTOR_IN_PERCENT / 100)
SLOW_APPROX_FACTOR_IN_PERCENT = 20
interval time for setting limit to Hoymiles
LOOP_INTERVAL_IN_SECONDS = 20
delay time after sending limit to Hoymiles Inverter
SET_LIMIT_DELAY_IN_SECONDS = 5
delay time after sending limit to Hoymiles Inverter when using more than one Inverter
SET_LIMIT_DELAY_IN_SECONDS_MULTIPLE_INVERTER = 2
polling interval for powermeter (must be < LOOP_INTERVAL_IN_SECONDS)
POLL_INTERVAL_IN_SECONDS = 1
when powermeter > 0: (True): always jump to maxLimit of inverter; (False): increase limit based on previous limit
JUMP_TO_MAX_LIMIT_ON_GRID_USAGE = False
max difference between Limit and real output power in % of HOY_MAX_WATT (100 = disabled)
MAX_DIFFERENCE_BETWEEN_LIMIT_AND_OUTPUTPOWER = 100
enable logging to file
ENABLE_LOG_TO_FILE = true
how many logfiles you wish to keep
LOG_BACKUP_COUNT = 5
defines how often a identical limit will be set, set it to "-1" for disabled (infinite repeat)
SET_LIMIT_RETRY = 3
log the inverter temperature
LOG_TEMPERATURE = false
delay time after turning the inverter off or on
SET_POWER_STATUS_DELAY_IN_SECONDS = 10
[CONTROL]
global defines for control behaviour ---
this is the target power for powermeter in watts
POWERMETER_TARGET_POINT = 0
this is the tolerance (pos and neg) around the target point. in this range no adjustment will be set
POWERMETER_TOLERANCE = 15
this is the max power to regulate the limit. if your powermeter is above this point, the limit jumps to 100% (when JUMP_TO_MAX_LIMIT_ON_GRID_USAGE is set to TRUE). Must be higher than POWERMETER_TARGET_POINT + POWERMETER_TOLERANCE
POWERMETER_MAX_POINT = 260
List of INVERTERS, based on COMMON/COUNT
[INVERTER_1]
power rating of your inverter
HOY_MAX_WATT = 260
minimum limit in percent, e.g. 5%
HOY_MIN_WATT_IN_PERCENT = 5
factor to multiply before set Limit. Some Inverters have some offsets, with that factor you can compensate it. Default = 1
HOY_COMPENSATE_WATT_FACTOR = 1
battery powered?
HOY_BATTERY_MODE = true
voltage to turn off the inverter
HOY_BATTERY_THRESHOLD_OFF_LIMIT_IN_V = 24
voltage to limit the inverter to a maximum of HOY_BATTERY_REDUCE_WATT
HOY_BATTERY_THRESHOLD_REDUCE_LIMIT_IN_V = 26.9
voltage to limit the inverter to a maximum of HOY_BATTERY_NORMAL_WATT
HOY_BATTERY_THRESHOLD_NORMAL_LIMIT_IN_V = 26.9
maximum limit in watts when battery is high (above HOY_BATTERY_THRESHOLD_NORMAL_LIMIT_IN_V)
HOY_BATTERY_NORMAL_WATT = 260
maximum limit in watts when battery is low (below HOY_BATTERY_THRESHOLD_REDUCE_LIMIT_IN_V)
HOY_BATTERY_REDUCE_WATT = 50
reenable inverter at this voltage
HOY_BATTERY_THRESHOLD_ON_LIMIT_IN_V = 25.8
grid power
...
|
| -------> jump limit to HOY_MAX_WATT if (JUMP_TO_MAX_LIMIT_ON_GRID_USAGE = TRUE), else: increasing limit <-------
|
[0W] [POWERMETER_MAX_POINT]
|
| -------> increasing limit <-------
|
[-50W] [POWERMETER_TARGET_POINT + POWERMETER_TOLERANCE]
|
| -------> no limit change between -100W ... -50W <-------
|
[-75W] [POWERMETER_TARGET_POINT]
|
| -------> no limit change between -100W ... -50W <-------
|
[-100W] [POWERMETER_TARGET_POINT - POWERMETER_TOLERANCE]
|
| -------> decreasing limit <-------
|
..._**
Ok, du hast doch einige Sektionen rausgelöscht, dann funktioniert es nicht. Ich habe es angepasst, siehe Anhang (musst die Dateiendung noch von .txt in .ini ändern).
Ok, ich teste es gleich. Ich habe nicht gewusst das ich nicht löschen darf.
Funktioniert und Ahoy regelt. Nun muss ich die config noch anpassen. Zum Verständnis, ich habe einen HM 300 an einem 24V LifePo4 Akku hängen, der nur Nachts zwischen Sonnenuntergang und Sonnenaufgang an ist. Wenn ich möchte, das Ahoy zwischen 50 und 275 W regeln darf, wo muss ich das in der config genau anpassen. Das hat sich mir noch nicht ganz erschlossen.
Das Skript läuft soweit über python in der Win Eingabeaufforderung, ziel ist es doch, dass das Skript in HA aktiv ist, wenn der Hoymiles nachts an ist. Verstehe ich das richtig, das ich das Skript und die COnfig irgendwie in HA implementieren muss ?
Ok, das mit der Einspeisung habe ich in der Config hin bekommen. Ist echt eine Mega Projekt. Danke für deine Hilfe.
Nur wie gesagt, bin ich etwas planlos wie ich das in mein HA implementieren kann.
Gar nicht, das ist ein eigenes Python Script welches du nicht im HA einbinden kannst.
aber ich kann es auf ein RasPi 4 schreiben, oder?
ja, das habe ich auch so gemacht. siehe https://github.com/reserve85/HoymilesZeroExport#linux-installation
Keine Ahnung warum das mit sudo nicht klappt.
Kann man das Skript auch ohne die Config verwenden. Falls das gehen würde, kann ich das Skript in HA implementieren.
Ohne Config geht das nicht so ohne weiteres. Du musst ggf. Sudo noch installieren. Welches Betriebssystem hast du denn da drauf? Siehe https://www.makeuseof.com/fix-sudo-command-not-found-on-linux/
Am besten ist halt HomeAssistant als Supervisor-installation, dann hast du noch ein vollwertiges Linux nebenher und könntest beispielsweise noch ein PiHole nebenher laufen lassen. https://peyanski.com/how-to-install-home-assistant-supervised-official-way/#How_to_Install_Home_Assistant_Supervised
Ich habe auf meinem Raspberry nur HA drauf.
Ich habe deinen Rat befolgt und das ganze unter raspbian os lite zum laufen gebracht. Super skript, danke für deine Hilfe.
Freut mich, dass es läuft. Hast du dafür jetzt dein HA geopfert? Wie gesagt, du kannst auch beides laufen lassen mit der Supervised-Methode. Ansonsten mach ich hier mal zu.
Ich war etwas pragmatisch und lass es auf einen anreden Raspberry laufen :-)
Hallo seit 3 tagen versuche ich das skript zum laufen zu bekommen gedownloaded und die config ausgefüllt Allerdings kommen immer nur fehler meldungen . Wie wird das skript richtig installiert ? Aktuellste windows und Phyton version sowie Requests sind drauf . der skript von selbstbau pv läuft problemlos also wo liegt mein fehler ? Gibt es eine schritt für schritt anleitung ?