예제 #1
0
파일: base_pump.py 프로젝트: bgerp/ztm
    def __set_registers(self):

        self._parameters.append(
            Parameter("GetControlMode", "Enum",\
            ParameterType.UINT16_T, [102], RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("SetControlMode", "Enum",\
            ParameterType.UINT16_T, [102], RegisterType.WriteSingleHoldingRegister))

        self._parameters.append(
            Parameter("GetSetpoint", "%",\
            ParameterType.UINT16_T, [104], RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("SetSetpoint", "%",\
            ParameterType.UINT16_T, [104], RegisterType.WriteSingleHoldingRegister))
예제 #2
0
    def __init__(self, **config):
        """Constructor"""

        super().__init__(config)

        self._vendor = "Mainland"

        self._model = "HHC R4I4D"

        self._parameters.append(
            Parameter("GetRelays", "Bits", ParameterType.INT16_T,
                      [16, 17, 18, 19], RegisterType.ReadCoil))

        self._parameters.append(
            Parameter("GetDigitalInputs", "Bits", ParameterType.INT16_T,
                      [32, 33, 34, 35], RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("SetRelays", "Bits", ParameterType.INT16_T,
                      [16, 17, 18, 19], RegisterType.WriteMultipleCoils))
예제 #3
0
파일: xy_md02.py 프로젝트: bgerp/ztm
    def __set_registers(self):

        self._parameters.append(
            Parameter("Temperature", "C",\
            ParameterType.INT16_T, [0x0001], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Humidity", "Rh%",\
            ParameterType.INT16_T, [0x0002], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("GetDeviceAddress", "Enum",\
            ParameterType.INT16_T, [0x0101], RegisterType.ReadHoldingRegisters))

        self._parameters.append(\
            Parameter("GetBaudRate", "Enum",\
            ParameterType.INT16_T, [0x0102], RegisterType.ReadHoldingRegisters))

        self._parameters.append(\
            Parameter("GetTemperatureCorrection", "C",\
            ParameterType.INT16_T, [0x0103], RegisterType.ReadHoldingRegisters))

        self._parameters.append(\
            Parameter("GetHumidityCorrection", "Rh%",\
            ParameterType.INT16_T, [0x0104], RegisterType.ReadHoldingRegisters))

        self._parameters.append(\
            Parameter("SetDeviceAddress", "Enum",\
            ParameterType.INT16_T, [0x0101], RegisterType.WriteSingleHoldingRegister))

        self._parameters.append(\
            Parameter("SetBaudRate", "Enum",\
            ParameterType.INT16_T, [0x0102], RegisterType.WriteSingleHoldingRegister))

        self._parameters.append(\
            Parameter("SetTemperatureCorrection", "C",\
            ParameterType.INT16_T, [0x0103], RegisterType.WriteSingleHoldingRegister))

        self._parameters.append(\
            Parameter("SetHumidityCorrection", "Rh%",\
            ParameterType.INT16_T, [0x0104], RegisterType.WriteSingleHoldingRegister))
예제 #4
0
    def __init__(self, **config):
        """Constructor
        """

        super().__init__(config)

        # Create logger.
        self.__logger = get_logger(__name__)

        self._vendor = "Mainone"

        self._model = "USHMInlet"

        self._parameters.append(
            Parameter(
                "AccumulateHeatEnergy",
                "kWh",
                ParameterType.UINT32_T,
                [0, 1],
                RegisterType.ReadHoldingRegisters
            )
        )
예제 #5
0
    def __init__(self, **config):
        """Constructor"""

        super().__init__(config)

        self._vendor = "Eastron"

        self._model = "SDM120"

        self._parameters.append(
            Parameter("Voltage", "V",\
            ParameterType.FLOAT, [0, 1], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Current", "A",\
            ParameterType.FLOAT, [6, 7], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ActivePower", "W",\
            ParameterType.FLOAT, [12, 13], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ApparentPower", "VA",\
            ParameterType.FLOAT, [18, 19], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ReactivePower", "VAr",\
            ParameterType.FLOAT, [24, 25], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("PowerFactor", "DEG",\
            ParameterType.FLOAT, [30, 31], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Frequency", "Hz",\
            ParameterType.FLOAT, [70, 71], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ImportActiveEnergy", "kWr",\
            ParameterType.FLOAT, [72, 73], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ExportActiveEnergy", "kWr",\
            ParameterType.FLOAT, [74, 75], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ImportReactiveEnergy", "kvarh",\
            ParameterType.FLOAT, [76, 77], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ExportReactiveEnergy", "kvarh",\
            ParameterType.FLOAT, [78, 79], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemPowerDemand", "W",\
            ParameterType.FLOAT, [84, 85], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumTotalSystemPowerDemand", "W",\
            ParameterType.FLOAT, [86, 87], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ImportSystemPowerDemand", "W",\
            ParameterType.FLOAT, [88, 89], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumImportSystemPowerDemand", "W",\
            ParameterType.FLOAT, [90, 91], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("ExportSystemPowerDemand", "W",\
            ParameterType.FLOAT, [92, 93], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumExportSystemPowerDemand", "W",\
            ParameterType.FLOAT, [94, 95], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("CurrentDemand", "A",\
            ParameterType.FLOAT, [258, 259], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumCurrentDemand", "A",\
            ParameterType.FLOAT, [264, 265], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalActiveEnergy", "kWh",\
            ParameterType.FLOAT, [342, 343], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalReactiveEnergy", "kVArh",\
            ParameterType.FLOAT, [344, 345], RegisterType.ReadInputRegisters))
예제 #6
0
    def __set_registers(self):

        self._parameters.append(
            Parameter("GlobalAlarm", "Bits", ParameterType.UINT16_T, [0],
                      RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("RotaryREC_R_Device", "Bits", ParameterType.UINT16_T,
                      [5], RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("PreHeater_R_Device", "Bits", ParameterType.UINT16_T,
                      [6], RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("EF_R_Device", "Bits", ParameterType.UINT16_T, [7],
                      RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("Heater_Supply_R_Device", "Bits", ParameterType.UINT16_T,
                      [8], RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("PJR_Baypas_Rec_R_Device", "Bits",
                      ParameterType.UINT16_T, [9],
                      RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("PJR_In_Out_FreshAir_R_Device", "Bits",
                      ParameterType.UINT16_T, [10],
                      RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("PJR_Recirculation_R_Device", "Bits",
                      ParameterType.UINT16_T, [11],
                      RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter("SF_R_Device", "Bits", ParameterType.UINT16_T, [12],
                      RegisterType.ReadDiscreteInput))

        self._parameters.append(
            Parameter(
                "GetMode",
                "State",  # 0->Stop, 1->Cool, 2->Heat, 3->Fan, 4->Auto, 5->Dry
                ParameterType.UINT16_T,
                [0],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "SetMode",
                "State",  # 0->Stop, 1->Cool, 2->Heat, 3->Fan, 4->Auto, 5->Dry
                ParameterType.UINT16_T,
                [0],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "GetTemperatureSetpoint",
                "degC",  # TODO: Give possible values.
                ParameterType.UINT16_T,
                [1],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "SetTemperatureSetpoint",
                "degC",  # TODO: Give possible values.
                ParameterType.UINT16_T,
                [1],
                RegisterType.WriteMultipleHoldingRegisters))

        self._parameters.append(
            Parameter(
                "FreshAir",
                "State",  # 0..10->Manual (0..100%), 11->Auto,
                ParameterType.UINT16_T,
                [2],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "StateSpeedSFEF",
                "State",  # How to choice fan speed: 0-Together, 1-Individually
                ParameterType.UINT16_T,
                [3],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "ValueSpeedSFEF",
                "State",  # 0..10->Manual (0..100%), 11->Auto,
                ParameterType.UINT16_T,
                [4],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "SpeedSF",
                "State",  # 0..10->Manual (0..100%), 11->Auto
                ParameterType.UINT16_T,
                [5],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "SpeedEF",
                "State",  # 0..10->Manual (0..100%), 11->Auto
                ParameterType.UINT16_T,
                [6],
                RegisterType.ReadHoldingRegisters))

        self._parameters.append(
            Parameter(
                "UnitStatus",
                "State",  # TODO: Give the states,
                ParameterType.UINT16_T,
                [0],
                RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter(
                "TE1Return",  # TODO: What is this type.
                "degC",
                ParameterType.REAL,
                [1],
                RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("TE2Exhaust", "degC", ParameterType.REAL, [2],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("TS1Ambient", "degC", ParameterType.REAL, [3],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("TS4SupplyDEX", "", ParameterType.REAL, [4],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("TS3SupplyHeater", "", ParameterType.REAL, [5],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("PreHeaterPower", "Percentage", ParameterType.UINT16_T,
                      [18], RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("RotaryRECPower", "Percentage", ParameterType.UINT16_T,
                      [19], RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("SFPower", "Percentage", ParameterType.UINT16_T, [20],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("EFPower", "Percentage", ParameterType.UINT16_T, [21],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("PJRInOutFreshAirPower", "Percentage",
                      ParameterType.UINT16_T, [22],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("PJRRecirculationPower", "Percentage",
                      ParameterType.UINT16_T, [23],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("PJRBaypasRecPower", "Percentage",
                      ParameterType.UINT16_T, [24],
                      RegisterType.ReadInputRegisters))

        self._parameters.append(
            Parameter("HeaterSupplyPower", "Percentage",
                      ParameterType.UINT16_T, [25],
                      RegisterType.ReadInputRegisters))
예제 #7
0
파일: sdm630.py 프로젝트: bgerp/ztm
    def __init__(self, **config):
        """Constructor"""

        super().__init__(config)

        self._vendor = "Eastron"

        self._model = "SDM630"

        self._parameters.append(\
            Parameter("Phase1LineToNeutralVolts", "V",\
            ParameterType.FLOAT, [0, 1], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2LineToNeutralVolts", "V",\
            ParameterType.FLOAT, [2, 3], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3LineToNeutralVolts", "V",\
            ParameterType.FLOAT, [4, 5], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1Current", "A",\
            ParameterType.FLOAT, [6, 7], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2Current", "A",\
            ParameterType.FLOAT, [8, 9], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3Current", "A",\
            ParameterType.FLOAT, [10, 11], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1Power", "W",\
            ParameterType.FLOAT, [12, 13], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2Power", "W",\
            ParameterType.FLOAT, [14, 15], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3Power", "W",\
            ParameterType.FLOAT, [16, 17], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1VoltAmps", "VA",\
            ParameterType.FLOAT, [18, 19], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2VoltAmps", "VA",\
            ParameterType.FLOAT, [20, 21], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3VoltAmps", "VA",\
            ParameterType.FLOAT, [22, 23], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1VoltAmpsReactive", "VAr",\
            ParameterType.FLOAT, [24, 25], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2VoltAmpsReactive", "VAr",\
            ParameterType.FLOAT, [26, 27], RegisterType.ReadInputRegisters))

        self._parameters.append\
            (Parameter("Phase3VoltAmpsReactive", "VAr",\
            ParameterType.FLOAT, [28, 29], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1PowerFactor", "Deg",\
            ParameterType.FLOAT, [30, 31], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2PowerFactor", "Deg",\
            ParameterType.FLOAT, [32, 33], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3PowerFactor", "Deg",\
            ParameterType.FLOAT, [34, 35], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1PhaseAngle", "Deg",\
            ParameterType.FLOAT, [36, 37], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2PhaseAngle", "Deg",\
            ParameterType.FLOAT, [38, 39], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3PhaseAngle", "Deg",\
            ParameterType.FLOAT, [40, 41], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("AverageLineToNeutralVolts", "V",\
            ParameterType.FLOAT, [42, 43], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("AverageLineCurrent", "A",\
            ParameterType.FLOAT, [46, 47], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("SumOfLineCurrents", "A",\
            ParameterType.FLOAT, [48, 49], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemPower", "W",\
            ParameterType.FLOAT, [52, 53], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemVoltAmps", "VA",\
            ParameterType.FLOAT, [56, 57], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemVAr", "VA",\
            ParameterType.FLOAT, [60, 61], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemPowerFactor", "Deg",\
            ParameterType.FLOAT, [62, 63], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemPhaseAngle", "Deg",\
            ParameterType.FLOAT, [66, 67], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("FrequencyOfSupplyVoltages", "Hz",\
            ParameterType.FLOAT, [70, 71], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalImportkWh", "kWh",\
            ParameterType.FLOAT, [72, 73], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalExportkWh", "kWh",\
            ParameterType.FLOAT, [74, 75], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalImportkVAarh", "kVArh",\
            ParameterType.FLOAT, [76, 77], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalExportkVAarh", "kVArh",\
            ParameterType.FLOAT, [78, 79], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalVAh", "kVAh",\
            ParameterType.FLOAT, [80, 81], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Ah", "Ah",\
            ParameterType.FLOAT, [82, 83], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemPowerDemand", "VA",\
            ParameterType.FLOAT, [84, 85], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumTotalSystemPowerDemand", "VA",\
            ParameterType.FLOAT, [86, 87], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalSystemVaDemand", "VA",\
            ParameterType.FLOAT, [100, 101], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumTotalSystemVADemand", "VA",\
            ParameterType.FLOAT, [102, 103], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("NeutralCurrentDemand", "A",\
            ParameterType.FLOAT, [104, 105], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumNeutralCurrentDemand", "A",\
            ParameterType.FLOAT, [106, 107], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Line1ToLine2Volts", "V",\
            ParameterType.FLOAT, [200, 201], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Line2ToLine3Volts", "V",\
            ParameterType.FLOAT, [202, 203], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Line3ToLine1Volts", "V",\
            ParameterType.FLOAT, [204, 205], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("AverageLineToLineVolts", "V",\
            ParameterType.FLOAT, [206, 207], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("NeutralCurrent", "A",\
            ParameterType.FLOAT, [224, 225], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1L/NVoltsThd", "%",\
            ParameterType.FLOAT, [234, 235], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2L/NVoltsThd", "%",\
            ParameterType.FLOAT, [236, 237], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3L/NVoltsThd", "%",\
            ParameterType.FLOAT, [238, 239], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1CurrentThd", "%",\
            ParameterType.FLOAT, [240, 241], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2CurrentThd", "%",\
            ParameterType.FLOAT, [242, 243], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3CurrentThd", "%",\
            ParameterType.FLOAT, [244, 245], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("AverageLineToNeutralVoltsTHD", "%",\
            ParameterType.FLOAT, [248, 249], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("AverageLineCurrentTHD", "%",\
            ParameterType.FLOAT, [250, 251], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase1CurrentDemand", "A",\
            ParameterType.FLOAT, [258, 259], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase2CurrentDemand", "A",\
            ParameterType.FLOAT, [260, 261], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Phase3CurrentDemand", "A",\
            ParameterType.FLOAT, [262, 263], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumPhase1CurrentDemand", "A",\
            ParameterType.FLOAT, [264, 265], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumPhase2CurrentDemand", "A",\
            ParameterType.FLOAT, [266, 267], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("MaximumPhase3CurrentDemand", "A",\
            ParameterType.FLOAT, [268, 269], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Line1ToLine2VoltsTHD", "%",\
            ParameterType.FLOAT, [334, 335], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Line2ToLine3VoltsTHD", "%",\
            ParameterType.FLOAT, [336, 337], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("Line3ToLine1VoltsTHD", "%",\
            ParameterType.FLOAT, [338, 339], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("AverageLineToLineVoltsTHD", "%",\
            ParameterType.FLOAT, [340, 341], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalkWh", "kWh",\
            ParameterType.FLOAT, [342, 343], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("TotalkVArh", "kVArh",\
            ParameterType.FLOAT, [344, 345], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L1ImportkWh", "kWh",\
            ParameterType.FLOAT, [346, 347], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L2ImportkWh", "kWh",\
            ParameterType.FLOAT, [348, 349], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L3ImportkWh", "kWh",\
            ParameterType.FLOAT, [350, 351], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L1ExportkWh", "kWh",\
            ParameterType.FLOAT, [352, 353], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L2ExportkWh", "kWh",\
            ParameterType.FLOAT, [354, 355], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L3ExportkWh", "kWh",\
            ParameterType.FLOAT, [356, 357], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L1TotalkWh", "kWh",\
            ParameterType.FLOAT, [358, 359], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L2TotalkWh", "kWh",\
            ParameterType.FLOAT, [360, 361], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L3TotalkWh", "kWh",\
            ParameterType.FLOAT, [362, 363], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L1ImportkVArh", "kVArh",\
            ParameterType.FLOAT, [364, 365], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L2ImportkVArh", "kVArh",\
            ParameterType.FLOAT, [366, 367], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L3ImportkVArh", "kVArh",\
            ParameterType.FLOAT, [368, 369], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L1ExportkVArh", "kVArh",\
            ParameterType.FLOAT, [370, 371], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L2ExportkVArh", "kVArh",\
            ParameterType.FLOAT, [372, 373], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L3ExportkVArh", "kVArh",\
            ParameterType.FLOAT, [374, 375], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L1TotalkVArh", "kVArh",\
            ParameterType.FLOAT, [376, 377], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L2TotalkVArh", "kVArh",\
            ParameterType.FLOAT, [378, 379], RegisterType.ReadInputRegisters))

        self._parameters.append(\
            Parameter("L3TotalkVArh", "kVArh",\
            ParameterType.FLOAT, [380, 381], RegisterType.ReadInputRegisters))