DUTs
E_BATTERY_STATUS
E_BMS_CONTROL_MODE
E_BMS_STATE
- ENUM E_BMS_STATE
Attr: ‚qualified_only‘ , Attr: ‚strict‘
- IDLE INT : 0
- CHECK_POWER_COMMAND INT : 1
- WAIT_FOR_STRING_TO_BE_READY INT : 2
- WAIT_FOR_INVERTER INT : 3
- ENABLED INT : 4
- WAIT_FOR_SHUTDOWN_DISCHARGE_MODE INT : 5
- SEGMENT_DISCHARGE_WITH_INVERTER_DONE INT : 6
- SEGMENT_DISCHARGE_DONE INT : 7
- ERROR INT : 8
- WAIT_FOR_ERROR_RESET INT : 9
E_CHARGE_STATUS
E_CYCLE_STATUS
E_REACTIVE_POWER_TYPE
E_COMPONENT_STATUS
ST_AUTO_HMI_INTERFACE
ST_MODULE_HMI_INTERFACE
- STRUCT ST_MODULE_HMI_INTERFACE
- stHMIInterfaceUnit1 ST_UNIT_HMI_INTERFACE
- stHMIInterfaceUnit2 ST_UNIT_HMI_INTERFACE
- stHMIInterfaceUnit3 ST_UNIT_HMI_INTERFACE
- stHMIInterfaceUnit4 ST_UNIT_HMI_INTERFACE
- rVoltage REAL
Current voltage for HMI ==============================
- rCurrent REAL
Current current for HMI ==============================
- eStatus E_COMPONENT_STATUS
Current status ====================================
ST_MODULE_VOLT_CONFIG
ST_STRING_HMI_INTERFACE
- STRUCT ST_STRING_HMI_INTERFACE
- stHMIInterfaceModule1 ST_MODULE_HMI_INTERFACE
- stHMIInterfaceModule2 ST_MODULE_HMI_INTERFACE
- stHMIInterfaceModule3 ST_MODULE_HMI_INTERFACE
- rVoltage REAL
Current voltage for HMI ==============================
- rCurrent REAL
Current current for HMI ==============================
- eStatus E_COMPONENT_STATUS
Current status ====================================
- stInverterData ST_SUNSPEC_CURRENT_VALUES
Current string current ============================== stStringCurrent : ST_HMI_ANALOG_VALUE; Current inverter data ==============================
ST_STRING_VOLT_CONFIG
- STRUCT ST_STRING_VOLT_CONFIG
- stModule1VoltConfig ST_MODULE_VOLT_CONFIG
- stModule2VoltConfig ST_MODULE_VOLT_CONFIG
- stModule3VoltConfig ST_MODULE_VOLT_CONFIG
ST_UNIT_HMI_INTERFACE
- STRUCT ST_UNIT_HMI_INTERFACE
- stNS11 ST_HMI_ANALOG_MOTOR_DATA
Pump posolyt ===================================
- stNS21 ST_HMI_ANALOG_MOTOR_DATA
Pump negolyt ===================================
- stNS12 ST_HMI_VALVE_DATA
Valve posolyt ===================================
- stNS22 ST_HMI_VALVE_DATA
Valve negolyt ===================================
- stP11 ST_HMI_ANALOG_VALUE
Drucksensoren Posolyt ====================================
- stP12 ST_HMI_ANALOG_VALUE
- stP21 ST_HMI_ANALOG_VALUE
Drucksensoren Negolyt ====================================
- stP22 ST_HMI_ANALOG_VALUE
- stT11 ST_HMI_ANALOG_VALUE
Temperature sensor posolyt tank inlet ====================================
- stT21 ST_HMI_ANALOG_VALUE
Temperature sensor negolyt tank inlet ====================================
- stE31 ST_HMI_ANALOG_VALUE
Voltage sensors ===================================
- rVoltage REAL
Current voltage for HMI ==============================
- rCurrent REAL
Current current for HMI ==============================
- eStatus E_COMPONENT_STATUS
Current status ====================================
ST_UNIT_CONFIG
- STRUCT ST_UNIT_CONFIG
- stConfigPosolytPump ST_MOTOR_ANALOG_CONFIG
Pump posolyt ===================================
- stConfigNegolytPump ST_MOTOR_ANALOG_CONFIG
Pump negolyt ===================================
- stConfigPosolytValve ST_ValveConfig
Valves posolyt ===================================
- stConfigNegolytValve ST_ValveConfig
Valves negolyt ===================================
- stConfigPosolytPressureSegmentInlet ST_ANALOG_IO_CONFIG
Pressure sensor posolyt segment inlet ====================================
- stEWLPosolytPressureSegmentInlet ST_ANALOG_EW_LEVELS
- stEWDPosolytPressureSegmentInlet ST_ANALOG_EW_DELAYS
- stConfigNegolytPressureSegmentInlet ST_ANALOG_IO_CONFIG
Pressure sensor negolyt segment inlet ====================================
- stEWLNegolytPressureSegmentInlet ST_ANALOG_EW_LEVELS
- stEWDNegolytPressureSegmentInlet ST_ANALOG_EW_DELAYS
- stConfigPosolytPressureTankInlet ST_ANALOG_IO_CONFIG
Pressure sensor posolyt tank inlet ====================================
- stEWLPosolytPressureTankInlet ST_ANALOG_EW_LEVELS
- stEWDPosolytPressureTankInlet ST_ANALOG_EW_DELAYS
- stConfigNegolytPressureTankInlet ST_ANALOG_IO_CONFIG
Pressure sensor posolyt tank inlet ====================================
- stEWLNegolytPressureTankInlet ST_ANALOG_EW_LEVELS
- stEWDNegolytPressureTankInlet ST_ANALOG_EW_DELAYS
- stConfigPosolytTempTankInlet ST_ANALOG_IO_CONFIG
Temperature sensor posolyt tank inlet ====================================
- stEWLPosolytTempTankInlet ST_ANALOG_EW_LEVELS
- stEWDPosolytTempTankInlet ST_ANALOG_EW_DELAYS
- stConfigNegolytTempTankInlet ST_ANALOG_IO_CONFIG
Temperature sensor negolyt tank inlet ====================================
- stEWLNegolytTempTankInlet ST_ANALOG_EW_LEVELS
- stEWDNegolytTempTankInlet ST_ANALOG_EW_DELAYS
- stConfigVoltageSegment ST_ANALOG_IO_CONFIG
Voltage segment ====================================
- stEWLVoltageSegment ST_ANALOG_EW_LEVELS
- stEWDVoltageSegment ST_ANALOG_EW_DELAYS
- rMaxDeltaPSegmentInlet REAL
Max pressure difference between posolyt and negolyt segment inlet ====================================
Modbus
ST_EMS_MODBUS_INTERFACE
- STRUCT ST_EMS_MODBUS_INTERFACE
Attr: ‚pack_mode‘ := ‚1‘ Speicherbereiche, welche über einen kontinuierlichen Registerbereich gelesen werden sollen, müssen in einer Struktur mit dem attribut {attribute ‚pack_mode‘ := ‚1‘} angelegt werden. Der Grund ist, dass der TwinCAT Modbus Server beim zugriff über den ADS Server nur die Symbolische erste Adresse anfragt und dann davon ausgeht, dass die anderen Register im Speicherbereich hintereinander liegen. Bei rein symbolisch angelegten Variablen müss dies nicht der Fall sein und es kommt zu einem Fehler beim lesen über die symbolischen grenzen der variablen hinaus.
- stModbusReg10 ST_MODBUS_REG_10
Modbus Registers 10.000 to 10.999
- stModbusReg11 ST_MODBUS_REG_11
Modbus Registers 11.000 to 11.999
- stModbusReg12 ST_MODBUS_REG_12
Modbus Registers 12.000 to 12.999
ErrorWarningRegisters
ST_DWORD_UNIT_ERROR_BITMAP
- STRUCT ST_DWORD_UNIT_ERROR_BITMAP
- bTNegLow BIT
Bit 0
- bTNegHigh BIT
Bit 1
- bTNegError BIT
Bit 2
- bTPosLow BIT
Bit 3
- bTPosHigh BIT
Bit 4
- bTPosError BIT
Bit 5
- bPInNegLow BIT
Bit 6
- bPInNegHigh BIT
Bit 7
- bPInNegError BIT
Bit 8
- bPInPosLow BIT
Bit 9
- bPInPosHigh BIT
Bit 10
- bPInPosError BIT
Bit 11
- bPTankNegLow BIT
Bit 12
- bPTankNegHigh BIT
Bit 13
- bPTankNegError BIT
Bit 14
- bPTankPosLow BIT
Bit 15
- bPTankPosHigh BIT
Bit 16
- bPTankPosError BIT
Bit 17
- bVLow BIT
Bit 18
- bVHigh BIT
Bit 19
- bVError BIT
Bit 20
- bValveNeg BIT
Bit 21
- bValvePos BIT
Bit 22
- bPumpNeg BIT
Bit 23
- bPumpPos BIT
Bit 24
- bLeack BIT
Bit 25
- bSafetyIntlk BIT
Bit 26
ST_DWORD_UNIT_WARNING_BITMAP
- STRUCT ST_DWORD_UNIT_WARNING_BITMAP
- bTNegLow BIT
Bit 0
- bTNegHigh BIT
Bit 1
- bTPosLow BIT
Bit 2
- bTPosHigh BIT
Bit 3
- bPInNegLow BIT
Bit 4
- bPInNegHigh BIT
Bit 5
- bPInPosLow BIT
Bit 6
- bPInPosHigh BIT
Bit 7
- bPTankNegLow BIT
Bit 8
- bPTankNegHigh BIT
Bit 9
- bPTankPosLow BIT
Bit 10
- bPTankPosHigh BIT
Bit 11
- bVLow BIT
Bit 12
- bVHigh BIT
Bit 13
ST_WORD_BMS_ERROR_BITMAP
ST_WORD_BMS_WARNING_BITMAP
U_BMS_ERROR_REGISTER
U_BMS_WARNING_REGISTER
U_UNIT_ERROR_REGISTER
U_UNIT_WARNING_REGISTER
HoldingRegisters
ST_MODBUS_REG_10
- STRUCT ST_MODBUS_REG_10
Attr: ‚analysis‘ := ‚-33‘, Attr: ‚pack_mode‘ := ‚1‘
- sManufacturer STRING(32)
1 char = 1 byte
- sModelname STRING(32)
Addr: 10.016
- sSerialnumber STRING(32)
Addr: 10.032
- sBMSVersion STRING(64)
Addr: 10.048
- uiTotalParallelMembers UINT
uint 16bit = 1 Word
- uiActiveParallelMembers UINT
Addr: 10.081
ST_MODBUS_REG_11
- STRUCT ST_MODBUS_REG_11
Attr: ‚analysis‘ := ‚-33‘, Attr: ‚pack_mode‘ := ‚1‘
- eBatteryStatus E_BATTERY_STATUS
Addr: 11.000
- eChargeStatus E_CHARGE_STATUS
Addr: 11.001
- uiSelfDischargeRate UINT
16 bit
- uiMaxAllowedSOC UINT
Addr: 11.003 Unit: %
- uiMinAllowedSOC UINT
Addr: 11.004 Unit: %
- uiCurrentSOC UINT
Addr: 11.005 Unit: %
- uiCurrentDOD UINT
Addr: 11.006 Unit: %
- uiCurrentSOH UINT
Addr: 11.007 Unit: %
- udiChargeCapacity UDINT
32bit
- udiEnergyCapacity UDINT
Addr: 11.010 Unit: Wh
- udiMaxChargingActivePower UDINT
Addr: 11.012 Unit: W
- udiMaxDischargingActivePower UDINT
Addr: 11.014 Unit: W
- udiMaxAvailableInductiveReactivePower UDINT
Addr: 11.016 Unit: var
- udiMaxAvailableCapacitiveReactivePower UDINT
Addr: 11.018 Unit: var
- udiChargedEnergy UDINT
Addr: 11.020 Unit: Wh
- udiAvailableEnergy UDINT
Addr: 11.022 Unit: Wh
- diTotalACCurrentPhase1 DINT
Addr: 11.024 Unit: A
- diTotalACCurrentPhase2 DINT
Addr: 11.026 Unit: A
- diTotalACCurrentPhase3 DINT
Addr: 11.028 Unit: A
- diSetpointActivePowerMirror DINT
Addr: 11.030 Unit: W
- rSetpointCosPhiMirror REAL
32 bit
- diCurrentActivePower DINT
Addr: 11.034 Unit: W
- diCurrentReactivePower DINT
Addr: 11.036 Unit: var
- udiLifeMessage UDINT
Addr: 11.038
- lwWarningBitmap LWORD
Addr: 11.040
- lwErrorBitmap LWORD
Addr: 11.044
ST_MODBUS_REG_12
- STRUCT ST_MODBUS_REG_12
Attr: ‚analysis‘ := ‚-33‘, Attr: ‚pack_mode‘ := ‚1‘
- diSetpointActivePower DINT
Unit: W
- rSetpointCosPhi REAL
Addr: 12.002
- eReactivePowerType E_REACTIVE_POWER_TYPE
Addr: 12.004 Can be removed if cosphi can be written in pos and neg range
ST_MODBUS_REG_13
- STRUCT ST_MODBUS_REG_13
Attr: ‚pack_mode‘ := ‚1‘
- wBMSWarningActive U_BMS_WARNING_REGISTER
String warning active flags Addr: 13.000
- wBMSErrorActive U_BMS_ERROR_REGISTER
String error active Addr: 13.001
- wStringWarningActive WORD
String warning active flags (Bit 0 -> Warning in string 1 active, Bit 1 -> String 2, etc.) Addr: 13.002
- wStringErrorActive WORD
String error active (Bit 0 -> Error in string 1 active, Bit 1 -> String 2, etc.) Addr: 13.003
- wConfirmAlarms WORD
Confirm alarms through modbus Addr: 13.004