Unterstützung für Solarmax Wechselrichter SMT-Serie
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
Hi Oliver,
ich hab mich jetzt auf die Suche nach dem zweiten Wert für die Leistung gemacht und bin fündig geworden. Sobald auf der bekannten Adresse 4152 der Wert von 65535 überschritten ist, springt der Wert unter 4151 von 0 auf 1. Heißt, ab dann muss man zu dem aktuellen Wert, der unter 4152 angezeigt wird, die 65535 dazuaddieren, damit die Gesamtleistung passt.
Gefunden habe ich übrigens auch, wo der Wechselrichter die Tagesleistung hinterlegt. Die findet sich unter 4136 und wird dort direkt ohne Faktor angezeigt sprich 8650 = 8,65kWh. Nur, falls das auch irgendwie interessant wäre.
Noch eine Frage: Wäre es möglich, unter den Einstellungen für die PV-Module in der Wallbox die Möglichkeit zu ergänzen, einen zweiten Solarmax-Wechselrichter als 2. PV-Modul auszuwählen? Die Option gibt es dort bislang nicht, was heißt, dass ich im Moment nur jeweils einen Wechselrichter abfragen kann.
ich hab mich jetzt auf die Suche nach dem zweiten Wert für die Leistung gemacht und bin fündig geworden. Sobald auf der bekannten Adresse 4152 der Wert von 65535 überschritten ist, springt der Wert unter 4151 von 0 auf 1. Heißt, ab dann muss man zu dem aktuellen Wert, der unter 4152 angezeigt wird, die 65535 dazuaddieren, damit die Gesamtleistung passt.
Gefunden habe ich übrigens auch, wo der Wechselrichter die Tagesleistung hinterlegt. Die findet sich unter 4136 und wird dort direkt ohne Faktor angezeigt sprich 8650 = 8,65kWh. Nur, falls das auch irgendwie interessant wäre.
Noch eine Frage: Wäre es möglich, unter den Einstellungen für die PV-Module in der Wallbox die Möglichkeit zu ergänzen, einen zweiten Solarmax-Wechselrichter als 2. PV-Modul auszuwählen? Die Option gibt es dort bislang nicht, was heißt, dass ich im Moment nur jeweils einen Wechselrichter abfragen kann.
-
- Beiträge: 2425
- Registriert: Fr Mär 08, 2019 1:57 pm
- Has thanked: 2 times
- Been thanked: 30 times
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
Tagwsertrag rechnen wir selber, das andere baue ich ein hast du mir vielleicht noch en opentrace
Steht dann das drin ?
Gruss Oliver
opentrace start 4150 + 1 inhalt 0 0X0001
Steht dann das drin ?
Gruss Oliver
opentrace start 4150 + 1 inhalt 0 0X0001
Entwickler- openWB (ehrenamtlich) / Feedback zu Funktionen immer erwünscht..
Smarthomeprobleme siehe hier (update ): viewtopic.php?f=14&t=5923
Smarthomeprobleme siehe hier (update ): viewtopic.php?f=14&t=5923
-
- Beiträge: 2425
- Registriert: Fr Mär 08, 2019 1:57 pm
- Has thanked: 2 times
- Been thanked: 30 times
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
Sehe ich auch so. Pr ist hier, Unterstützung für Solarmax als WR2 auch grad eingebaut:
https://github.com/snaptec/openWB/pull/2303
Entwickler- openWB (ehrenamtlich) / Feedback zu Funktionen immer erwünscht..
Smarthomeprobleme siehe hier (update ): viewtopic.php?f=14&t=5923
Smarthomeprobleme siehe hier (update ): viewtopic.php?f=14&t=5923
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
Unglaublich, ihr seid fix. Da ist man den Tag arbeiten, kommt zurück und sieht, dass alle Probleme gelöst sind.
Tolle Sache, ich teste dann und sag Bescheid, ob alles wie gedacht klappt!
Tolle Sache, ich teste dann und sag Bescheid, ob alles wie gedacht klappt!
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
So, nachdem der erste Tag mit viel Sonne vorüber ist, kann ich erfreuliches berichten. Die Werte der Wechselrichter schauen gut aus.
Vielen Dank!
Einzige Sache, die mir aufgefallen ist: Da die Wechselrichter sich nachts ausschalten, wenn es keinen Strom vom Dach mehr gibt, füllt sich dann das Log mit Fehlermeldungen, weil die Abfrage nicht mehr klappt. Das dürfte aber ein Schönheitsfehler sein, denn man nicht umgehen kann...
Vielen Dank!
Einzige Sache, die mir aufgefallen ist: Da die Wechselrichter sich nachts ausschalten, wenn es keinen Strom vom Dach mehr gibt, füllt sich dann das Log mit Fehlermeldungen, weil die Abfrage nicht mehr klappt. Das dürfte aber ein Schönheitsfehler sein, denn man nicht umgehen kann...
-
- Beiträge: 1
- Registriert: Mo Feb 27, 2023 7:05 am
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
Hallo Forum und Mairj
ich habe diese anderen Register im Netz gefunden für den Solarmax SMT.
Bitte mal probieren ob die Register passen für die SMT Serie.
Mich würde interessieren wie man den SMT von Broadcast in eigene Heimnetz bekommt.
Oder wie habt ihr den Solarmax SMT
mit dem PC ausgelesen.
Danke
Ich bin neu hier.
Gruß monette999
#!/usr/bin/python3
#
#
from pymodbus.client.sync import ModbusTcpClient
class _Reg:
def __init__(self, name, reg, postfix="", scale=1.0):
self.name = name
self.postfix = postfix
self.scale = scale
if "/" not in reg:
reg += "/1"
li = reg.split("/", maxsplit=2)
self.reg = int(li[0])
self.count = int(li[1])
def output(self, mc):
reg = mc.read_holding_registers(self.reg, count=self.count, unit=1)
if len(reg.registers) == 1:
val = reg.registers[0]
elif len(reg.registers) == 2:
val = reg.registers[0] * 65535 + reg.registers[1]
else:
raise Exception("unknown register {}".format(reg))
return RegValue(val / self.scale, self.name, self.postfix)
class RegValue(float):
def __new__(cls, value, name, postfix):
return super().__new__(cls, value)
def __init__(self, value, name, unit):
self.value = value
self.name = name
self.unit = unit
def __str__(self):
return "{}: {:2.2f} {}".format(self.name, self.value, self.unit)
class ModbusConnectionError(Exception):
pass
class SolarmaxSmt:
def __init__(self, host):
self._host = host
def _get(self, reg):
mc = ModbusTcpClient(self._host)
res = mc.connect()
if not res:
raise ModbusConnectionError("cannot connect to {}".format(self._host))
val = reg.output(mc)
mc.close()
return val
@property
def current_power(self):
reg = _Reg("Current power", "4151/2", "kW", scale=10000)
return self._get(reg)
@property
def max_power_today(self):
reg = _Reg("Max power today", "4155/2", "kW", scale=10000)
return self._get(reg)
@property
def total_power_today(self):
reg = _Reg("Total power today", "4133/2", "kW")
return self._get(reg)
@property
def total_power(self):
reg = _Reg("Total power", "4129/2", "kW")
return self._get(reg)
@property
def converter_temperature(self):
reg = _Reg("Internal converter temperature", "4124/1", "°C")
return self._get(reg)
# XXX: improve API
@property
def voltage_1(self):
reg = _Reg("Internal converter temperature", "4124/1", "°C")
return self._get(reg)
@property
def current_1(self):
reg = _Reg("Current 1", "4113", "A", scale=100.0)
return self._get(reg)
@property
def power_1(self):
reg = _Reg("Power 1", "4115", "kW", scale=10000.0)
return self._get(reg)
@property
def voltage_2(self):
reg = _Reg("Voltage 2", "4116", "V", scale=10.0)
return self._get(reg)
@property
def current_2(self):
reg = _Reg("Current 2", "4117", "A", scale=100.0)
return self._get(reg)
@property
def power_2(self):
reg = _Reg("Power 2", "4119", "kW", scale=10000.0)
return self._get(reg)
ich habe diese anderen Register im Netz gefunden für den Solarmax SMT.
Bitte mal probieren ob die Register passen für die SMT Serie.
Mich würde interessieren wie man den SMT von Broadcast in eigene Heimnetz bekommt.
Oder wie habt ihr den Solarmax SMT
mit dem PC ausgelesen.
Danke
Ich bin neu hier.
Gruß monette999
#!/usr/bin/python3
#
#
from pymodbus.client.sync import ModbusTcpClient
class _Reg:
def __init__(self, name, reg, postfix="", scale=1.0):
self.name = name
self.postfix = postfix
self.scale = scale
if "/" not in reg:
reg += "/1"
li = reg.split("/", maxsplit=2)
self.reg = int(li[0])
self.count = int(li[1])
def output(self, mc):
reg = mc.read_holding_registers(self.reg, count=self.count, unit=1)
if len(reg.registers) == 1:
val = reg.registers[0]
elif len(reg.registers) == 2:
val = reg.registers[0] * 65535 + reg.registers[1]
else:
raise Exception("unknown register {}".format(reg))
return RegValue(val / self.scale, self.name, self.postfix)
class RegValue(float):
def __new__(cls, value, name, postfix):
return super().__new__(cls, value)
def __init__(self, value, name, unit):
self.value = value
self.name = name
self.unit = unit
def __str__(self):
return "{}: {:2.2f} {}".format(self.name, self.value, self.unit)
class ModbusConnectionError(Exception):
pass
class SolarmaxSmt:
def __init__(self, host):
self._host = host
def _get(self, reg):
mc = ModbusTcpClient(self._host)
res = mc.connect()
if not res:
raise ModbusConnectionError("cannot connect to {}".format(self._host))
val = reg.output(mc)
mc.close()
return val
@property
def current_power(self):
reg = _Reg("Current power", "4151/2", "kW", scale=10000)
return self._get(reg)
@property
def max_power_today(self):
reg = _Reg("Max power today", "4155/2", "kW", scale=10000)
return self._get(reg)
@property
def total_power_today(self):
reg = _Reg("Total power today", "4133/2", "kW")
return self._get(reg)
@property
def total_power(self):
reg = _Reg("Total power", "4129/2", "kW")
return self._get(reg)
@property
def converter_temperature(self):
reg = _Reg("Internal converter temperature", "4124/1", "°C")
return self._get(reg)
# XXX: improve API
@property
def voltage_1(self):
reg = _Reg("Internal converter temperature", "4124/1", "°C")
return self._get(reg)
@property
def current_1(self):
reg = _Reg("Current 1", "4113", "A", scale=100.0)
return self._get(reg)
@property
def power_1(self):
reg = _Reg("Power 1", "4115", "kW", scale=10000.0)
return self._get(reg)
@property
def voltage_2(self):
reg = _Reg("Voltage 2", "4116", "V", scale=10.0)
return self._get(reg)
@property
def current_2(self):
reg = _Reg("Current 2", "4117", "A", scale=100.0)
return self._get(reg)
@property
def power_2(self):
reg = _Reg("Power 2", "4119", "kW", scale=10000.0)
return self._get(reg)
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
Ich ergänze an der Stelle mal die Modbus Doku der Batterie. Ich frage mal die vom WR beim Hersteller an
- Dateianhänge
-
- MAX.STORAGE_ModbusTCP_Datenpunktliste-1-1.pdf
- (65.06 KiB) 125-mal heruntergeladen
Sungrow SH 10 hybrid WR mit automatischer Notstromumschaltung
Qcells G9 10,5 KWp
BYD HVM 11 kWh
OpenWB Series 2 Duo
GoE Charger Homefix 11kW
Nissan eNV200 (40 kWh)
Renault Zoe (22kWh)
geplant Vaillant oder Wolf Wärmepumpe
Qcells G9 10,5 KWp
BYD HVM 11 kWh
OpenWB Series 2 Duo
GoE Charger Homefix 11kW
Nissan eNV200 (40 kWh)
Renault Zoe (22kWh)
geplant Vaillant oder Wolf Wärmepumpe
Re: Unterstützung für Solarmax Wechselrichter SMT-Serie
Hallo,
ich hoffe ich darf mich hier kurz einklinken.
Habe einen 20SHT und möchte gerne via Modbus die Leistungsdaten abfragen vom WLAN Modul.
Habt ihr das was besonderes einstelen müssen? Irgendwie bekomme ich da nichts vom WR
ich hoffe ich darf mich hier kurz einklinken.
Habe einen 20SHT und möchte gerne via Modbus die Leistungsdaten abfragen vom WLAN Modul.
Habt ihr das was besonderes einstelen müssen? Irgendwie bekomme ich da nichts vom WR