Skip to content

Commit c0422ac

Browse files
authored
update write register methode (#3155)
* update write register methode * type
1 parent 17781de commit c0422ac

4 files changed

Lines changed: 11 additions & 11 deletions

File tree

  • docs/samples
    • sample_request_by_component/sample_request_by_component
    • sample_request_by_device/sample_request_by_device
  • packages/modules/devices

docs/samples/sample_request_by_component/sample_request_by_component/bat.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def set_power_limit(self, power_limit: Optional[int]) -> None:
4545
# Wenn der Speicher die Steuerung der Ladeleistung unterstützt, muss bei Übergabe einer Zahl auf aktive
4646
# Speichersteurung umgeschaltet werden, sodass der Speicher mit der übergebenen Leistung lädt/entlädt. Wird
4747
# None übergeben, muss der Speicher die Null-Punkt-Ausregelung selbst übernehmen.
48-
self.client.write_registers(reg, power_limit)
48+
self.client.write_register(reg, power_limit)
4949
# Wenn der Speicher keine Steuerung der Ladeleistung unterstützt
5050
pass
5151

docs/samples/sample_request_by_device/sample_request_by_device/bat.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def set_power_limit(self, power_limit: Optional[int]) -> None:
4242
# Wenn der Speicher die Steuerung der Ladeleistung unterstützt, muss bei Übergabe einer Zahl auf aktive
4343
# Speichersteurung umgeschaltet werden, sodass der Speicher mit der übergebenen Leistung lädt/entlädt. Wird
4444
# None übergeben, muss der Speicher die Null-Punkt-Ausregelung selbst übernehmen.
45-
self.client.write_registers(reg, power_limit)
45+
self.client.write_register(reg, power_limit)
4646
# Wenn der Speicher keine Steuerung der Ladeleistung unterstützt
4747
pass
4848

packages/modules/devices/sigenergy/sigenergy/bat.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,13 +55,13 @@ def set_power_limit(self, power_limit: Optional[int]) -> None:
5555
log.debug("Keine Batteriesteuerung, Selbstregelung durch Wechselrichter")
5656
if self.last_mode is not None:
5757
# Entladesperre ab 5%, Ansonsten Eigenregelung
58-
self.client.write_register(40048, [50], data_type=ModbusDataType.UINT_16, unit=unit)
58+
self.client.write_register(40048, 50, data_type=ModbusDataType.UINT_16, unit=unit)
5959
self.last_mode = None
6060
else:
6161
log.debug("Aktive Batteriesteuerung. Batterie wird auf Stop gesetzt und nicht entladen")
6262
if self.last_mode != 'stop':
6363
# Entladesperre auch bei 100% SoC
64-
self.client.write_register(40048, [1000], data_type=ModbusDataType.UINT_16, unit=unit)
64+
self.client.write_register(40048, 1000, data_type=ModbusDataType.UINT_16, unit=unit)
6565
self.last_mode = 'stop'
6666

6767
def power_limit_controllable(self) -> bool:

packages/modules/devices/solarmax/solarmax/bat.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,24 +53,24 @@ def set_power_limit(self, power_limit: Optional[int]) -> None:
5353
if power_limit is None:
5454
log.debug("Keine Batteriesteuerung, Selbstregelung durch Wechselrichter")
5555
if self.last_mode is not None:
56-
self.__tcp_client.write_registers(142, [0], data_type=ModbusDataType.INT_16, unit=unit)
56+
self.client.write_register(142, 0, data_type=ModbusDataType.INT_16, unit=unit)
5757
self.last_mode = None
5858
elif power_limit >= 0:
5959
# Solarmax kann nicht aktiv laden
6060
log.debug("Aktive Batteriesteuerung. Batterie wird auf Stop gesetzt und nicht entladen")
61-
self.__tcp_client.write_registers(140, [0], data_type=ModbusDataType.INT_16, unit=unit)
62-
self.__tcp_client.write_registers(141, [0], data_type=ModbusDataType.INT_16, unit=unit)
63-
self.__tcp_client.write_registers(142, [1], data_type=ModbusDataType.INT_16, unit=unit)
61+
self.client.write_register(140, 0, data_type=ModbusDataType.INT_16, unit=unit)
62+
self.client.write_register(141, 0, data_type=ModbusDataType.INT_16, unit=unit)
63+
self.client.write_register(142, 1, data_type=ModbusDataType.INT_16, unit=unit)
6464
self.last_mode = 'stop'
6565
elif power_limit < 0:
6666
log.debug(f"Aktive Batteriesteuerung. Batterie wird mit {power_limit} W entladen für den Hausverbrauch")
67-
self.__tcp_client.write_registers(142, [1], data_type=ModbusDataType.INT_16, unit=unit)
67+
self.client.write_register(142, 1, data_type=ModbusDataType.INT_16, unit=unit)
6868
self.last_mode = 'discharge'
6969
# Die maximale Entladeleistung begrenzen auf 5000W, maximaler Wertebereich Modbusregister.
7070
power_value = int(min(abs(power_limit), 7000))
7171
log.debug(f"Aktive Batteriesteuerung. Batterie wird mit {power_value} W entladen für den Hausverbrauch")
72-
self.__tcp_client.write_registers(140, [power_value], data_type=ModbusDataType.INT_16, unit=unit)
73-
self.__tcp_client.write_registers(141, [power_value], data_type=ModbusDataType.INT_16, unit=unit)
72+
self.client.write_register(140, power_value, data_type=ModbusDataType.INT_16, unit=unit)
73+
self.client.write_register(141, power_value, data_type=ModbusDataType.INT_16, unit=unit)
7474

7575
def power_limit_controllable(self) -> bool:
7676
return self.component_config.configuration.power_limit_controllable

0 commit comments

Comments
 (0)