Files
Uniper_PLC/PLC/GVLs/GVL_MODBUS.TcGVL
Markus Neukirch ee3367eaec EMS-BMS heartbeat and modbus fixes
added ledge and error state when modbus communication is lost, seperated register 13004 (confirm) from registers 13000-13001 (BMS/String warning/error messages) for modbus mapping, added Heartbeat error message to bmsErrors
2025-07-14 18:02:33 +02:00

36 lines
1.1 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1" ProductVersion="3.1.4026.12">
<GVL Name="GVL_MODBUS" Id="{913a9222-1338-4c08-b758-91c1bd26dcd9}">
<Declaration><![CDATA[{attribute 'qualified_only'}
VAR_GLOBAL
// Modbus interface to customer EMS
stModbusEMSComm : ST_EMS_MODBUS_INTERFACE := (
stModbusReg10 := (
sManufacturer := 'cmblu energy ag',
sModelname := 'all liquid',
sSerialnumber := '202312151643',
sBMSVersion := '0.8.0',
uiTotalParallelMembers := 2,
uiActiveParallelMembers := 0),
stModbusReg11 := (
eChargeStatus := E_CHARGE_STATUS.UNDEFINED,
eBatteryStatus := E_BATTERY_STATUS.OFF)
);
// Addr: 13.000
stBMSErrorReg : ST_MODBUS_REG_13;
// Confirm alarms through modbus
// Addr: 13.004
wConfirmAlarms : WORD;
// Addr: 14.000 -> 14.047
// Index 0 -> Unit 1, Index 1 -> Unit 2 etc.
awWarningsUnitsActive : ARRAY [0..(GVL_CONFIG.uiNumberOfUnits-1)] OF U_UNIT_WARNING_REGISTER;
// Addr: 15.000 -> 15.047
// Index 0 -> Unit 1, Index 1 -> Unit 2 etc.
awErrorsUnitsActive : ARRAY [0..(GVL_CONFIG.uiNumberOfUnits-1)] OF U_UNIT_ERROR_REGISTER;
END_VAR]]></Declaration>
</GVL>
</TcPlcObject>