Skip to content

Commit 14029d2

Browse files
authored
Merge pull request #1467 from benderl/bugfix
fix mpm3pm power factors
2 parents 186ad27 + abfb43b commit 14029d2

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

packages/modules/common/mpm3pm.py

+6-2
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,13 @@ def get_exported(self) -> float:
3030
return self.client.read_input_registers(0x0004, ModbusDataType.UINT_32, unit=self.id) * 10
3131

3232
def get_power_factors(self) -> List[float]:
33-
# Faktorisierung anders als in der Dokumentation angegeben
34-
return [val / 10 for val in self.client.read_input_registers(
33+
# Faktorisierung anders als in der Dokumentation angegeben?
34+
factors = [val / 10 for val in self.client.read_input_registers(
3535
0x20, [ModbusDataType.UINT_32]*3, unit=self.id)]
36+
# check if the absolute value of an entry in factors is greater 1
37+
if any([abs(factor) > 1 for factor in factors]):
38+
factors = [factor / 100 for factor in factors]
39+
return factors
3640

3741
def get_frequency(self) -> float:
3842
return self.client.read_input_registers(0x2c, ModbusDataType.UINT_32, unit=self.id) / 100

0 commit comments

Comments
 (0)