From: Benjamin Braatz Date: Wed, 2 Feb 2022 11:22:53 +0000 (+0100) Subject: Read all relevant registers. X-Git-Url: http://git.graph-it.com/?a=commitdiff_plain;h=fe3166cc15e34919f5bf11909198e8d47b64e755;p=graphit%2Fschaltschrank.git Read all relevant registers. --- diff --git a/gmodbus/hitachi.py b/gmodbus/hitachi.py index e13a92f..58bb4e9 100644 --- a/gmodbus/hitachi.py +++ b/gmodbus/hitachi.py @@ -11,24 +11,28 @@ class SJP1Fu(): def __init__(self, client: ClientInterface) -> None: self.__protocol = DatatypesProtocol(client, SJP1FU_COILS, SJP1FU_REGISTERS) - parameters = [(12015, 1), (12220, 0), (13022, 2), (13023, 37), (13024, 5), - (13110, 2), (14140, 0), (15102, 11), (15103, 1)] - #parameters = [(12015, 1), (12220, 90), (13022, 2), (13023, 37), (13024, 5), - # (13110, 2), (14140, 1), (15102, 11), (15103, 4)] + registers = [12015, 12220, 12222, 13015, 13021, 13022, 13023, 13024, 13026, + 13027, 13101, 13210, 13221, 14140, 15102, 15103, 15110, 15112, + 15114, 15116, 15118] async def check_parameters(self) -> None: - for (register, value) in self.parameters: + for register in self.registers: current = int(await self.__protocol.read_register(register)) if current != value: - print(f"Register {register} is {current} instead of {value}.") + print(f"Register {register}: {current}") + + parameters = [(12015, 1), (12220, 0), (13022, 2), (13023, 37), (13024, 5), + (13110, 2), (14140, 0), (15102, 11), (15103, 1)] + #parameters = [(12015, 1), (12220, 90), (13022, 2), (13023, 37), (13024, 5), + # (13110, 2), (14140, 1), (15102, 11), (15103, 4)] async def correct_parameters(self) -> None: for (register, value) in self.parameters: current = int(await self.__protocol.read_register(register)) if current != value: - print(f"Register {register} is {current} instead of {value}.") - await self.__protocol.write_register(9002, 1) - await self.__protocol.write_register(register, value) + print(f"Register {register} is {current} instead of {value}.") + await self.__protocol.write_register(9002, 1) + await self.__protocol.write_register(register, value) async def set_frequency(self, frequency: int) -> None: await self.__protocol.write_register(10502, frequency) @@ -103,6 +107,30 @@ SJP1FU_REGISTERS = { 'scale': 0.01, }, }, + 13015: { + 'code': 'bA115', + 'name': 'First torque limit 4', + 'rw': 'rw', + 'type': 'uint16', + 'conf': { + 'min': 0, + 'max': 500, + 'unit': '%', + 'scale': 0.1, + }, + }, + 13021: { + 'code': 'bA121', + 'name': 'First overcurrent suppression level', + 'rw': 'rw', + 'type': 'uint16', + 'conf': { + 'min': 0, + 'max': 50, + 'unit': 'A', + 'scale': 0.1, + }, + }, 13022: { 'code': 'bA122', 'name': 'First overload limit 1 selection', @@ -141,6 +169,44 @@ SJP1FU_REGISTERS = { 'scale': 0.01, }, }, + 13026: { + 'code': 'bA126', + 'name': 'First overload limit 2 selection', + 'rw': 'rw', + 'type': 'enum', + 'conf': { + 'values': { + 0: 'Disabled', + 1: 'During acceleration and at constant speed', + 2: 'At constant speed', + 3: 'Speed increases during regeneration', + }, + }, + }, + 13027: { + 'code': 'bA127', + 'name': 'First overload limit 2 level', + 'rw': 'rw', + 'type': 'uint16', + 'conf': { + 'min': 0, + 'max': 50, + 'unit': 'A', + 'scale': 0.1, + }, + }, + 13101: { + 'code': 'bb101', + 'name': 'First carrier frequency', + 'rw': 'rw', + 'type': 'uint16', + 'conf': { + 'min': 0.5, + 'max': 16.0, + 'unit': 'kHz', + 'scale': 0.1, + }, + }, 13110: { 'code': 'bb-10', 'name': 'Auto-reset selection', @@ -154,6 +220,30 @@ SJP1FU_REGISTERS = { }, }, }, + 13210: { + 'code': 'bC110', + 'name': 'First electronic thermal level', + 'rw': 'rw', + 'type': 'uint16', + 'conf': { + 'min': 0, + 'max': 150, + 'unit': 'A', + 'scale': 0.1, + }, + }, + 13221: { + 'code': 'bC121', + 'name': 'First free electronic thermal current 1', + 'rw': 'rw', + 'type': 'uint16', + 'conf': { + 'min': 0, + 'max': 150, + 'unit': 'A', + 'scale': 0.1, + }, + }, 14140: { 'code': 'Cb-40', 'name': 'Thermistor selection', @@ -191,4 +281,64 @@ SJP1FU_REGISTERS = { 'scale': 1, }, }, + 15110: { + 'code': 'Hb110', + 'name': 'First IM motor constant R1', + 'rw': 'rw', + 'type': 'int32', + 'conf': { + 'min': 0.000001, + 'max': 1000, + 'unit': 'Ohm', + 'scale': 0.000001, + }, + }, + 15112: { + 'code': 'Hb112', + 'name': 'First IM motor constant R2', + 'rw': 'rw', + 'type': 'int32', + 'conf': { + 'min': 0.000001, + 'max': 1000, + 'unit': 'Ohm', + 'scale': 0.000001, + }, + }, + 15114: { + 'code': 'Hb114', + 'name': 'First IM motor constant L', + 'rw': 'rw', + 'type': 'int32', + 'conf': { + 'min': 0.000001, + 'max': 1000, + 'unit': 'mH', + 'scale': 0.000001, + }, + }, + 15116: { + 'code': 'Hb116', + 'name': 'First IM motor constant I_0', + 'rw': 'rw', + 'type': 'int32', + 'conf': { + 'min': 0.01, + 'max': 10000, + 'unit': 'A', + 'scale': 0.01, + }, + }, + 15118: { + 'code': 'Hb118', + 'name': 'First IM motor constant J', + 'rw': 'rw', + 'type': 'int32', + 'conf': { + 'min': 0.00001, + 'max': 100000, + 'unit': 'kg*m^2', + 'scale': 0.00001, + }, + }, }