changes during start of safety check

- Refactoring of string fb
- Added pump safety interlocks for pressure segment inlet too low and too high
This commit is contained in:
Matthias Heisig
2025-06-02 19:51:57 +02:00
parent ac0a8d160b
commit 2f9f4df261
10 changed files with 636 additions and 514 deletions

View File

@@ -269,7 +269,7 @@
</System>
<Plc>
<Project GUID="{9AE64910-5EB2-4866-93FD-EFE059C38C36}" Name="PLC" PrjFilePath="PLC\PLC.plcproj" TmcFilePath="PLC\PLC.tmc" ReloadTmc="true" AmsPort="851" FileArchiveSettings="#x000e" CopyTmcToTarget="true" CopyTpyToTarget="false" SymbolicMapping="true">
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{ACBA32A1-5F9B-54BD-EC2D-EA219550F6C3}" TmcPath="PLC\PLC.tmc">
<Instance Id="#x08502000" TcSmClass="TComPlcObjDef" KeepUnrestoredLinks="2" TmcHash="{CC07FA05-2CA6-641B-4610-2B00C9E1BF78}" TmcPath="PLC\PLC.tmc">
<Name>PLC Instance</Name>
<CLSID ClassFactory="TcPlc30">{08500001-0000-0000-F000-000000000064}</CLSID>
<Vars VarGrpType="2" AreaNo="1">
@@ -1334,8 +1334,8 @@
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._afbStrings[0].xECStateSCS</Name>
<Type>UINT</Type>
<Name>MAIN._afbStrings[0].xECWcState</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._afbStrings[0].xIsoErrorL1</Name>
@@ -4123,8 +4123,8 @@
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._afbStrings[1].xECStateSCS</Name>
<Type>UINT</Type>
<Name>MAIN._afbStrings[1].xECWcState</Name>
<Type>BOOL</Type>
</Var>
<Var>
<Name>MAIN._afbStrings[1].xIsoErrorL1</Name>
@@ -7624,6 +7624,7 @@
<SyncMan>000f01004400010003000000000000000000000f44090000</SyncMan>
<Fmmu>0000000000000000000f00020100000001000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1600" InOut="1" Flags="#x0011" SyncMan="0">
<Entry Name="Reset Electric Fuse" Index="#x7000" Sub="#x01">
<Type>BIT</Type>
@@ -7888,6 +7889,7 @@ Bit1: Value bigger/equal Limit2]]></Comment>
<Fmmu>00000000000000000d0800010100000003000000000000000000000000000000</Fmmu>
<BootStrapData>0010f400f410f400</BootStrapData>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="AI Standard Channel 1" Index="#x1a00" Flags="#x0010" SyncMan="3">
<ExcludePdo>#x1a01</ExcludePdo>
<Entry Name="Status__Underrange" Index="#x6000" Sub="#x01">
@@ -8099,6 +8101,7 @@ Bit1: Value bigger/equal Limit2]]></Comment>
<Fmmu>00000000000000000d0800010100000003000000000000000000000000000000</Fmmu>
<BootStrapData>0010f400f410f400</BootStrapData>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="TxPDO" Index="#x1a00" Flags="#x0090" SyncMan="3">
<Entry Name="FSOE__FSoE Slave CMD" Index="#x6000" Sub="#x01">
<Type>USINT</Type>
@@ -8178,7 +8181,7 @@ Bit1: Value bigger/equal Limit2]]></Comment>
<SuName></SuName>
<SuTask>#x00000000</SuTask>
<SuTask>#x00000000</SuTask>
<SuTask>#x00000000</SuTask>
<SuTask>#x02010030</SuTask>
<SuTask>#x00000000</SuTask>
<MBoxUserCmdData>004003000a00000000000000000000000000000000000000000000000000000020f3100502000000010000</MBoxUserCmdData>
<Pdo Name="ConnectionInputs" Index="#x1a00" Flags="#x2011" SyncMan="3">
@@ -8544,6 +8547,7 @@ Bit1: Value bigger/equal Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000100001000010000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Input" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -9083,6 +9087,7 @@ Bit1: Value bigger/equal Limit2]]></Comment>
<SyncMan>000f01004400010003000000000000000000000f44090000</SyncMan>
<Fmmu>0000000000000000000f00020100000001000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1600" InOut="1" Flags="#x0011" SyncMan="0">
<Entry Name="Output" Index="#x7000" Sub="#x01">
<Type>BIT</Type>
@@ -9132,6 +9137,7 @@ Bit1: Value bigger/equal Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000000001000000000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Status Us" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Undervoltage" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -14275,6 +14281,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000100001000010000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Input" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -14324,6 +14331,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000100001000010000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Input" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -14863,6 +14871,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>000f01004400010003000000000000000000000f44090000</SyncMan>
<Fmmu>0000000000000000000f00020100000001000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1600" InOut="1" Flags="#x0011" SyncMan="0">
<Entry Name="Output" Index="#x7000" Sub="#x01">
<Type>BIT</Type>
@@ -14912,6 +14921,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000000001000000000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Status Us" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Undervoltage" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -20055,6 +20065,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000100001000010000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Input" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -20104,6 +20115,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000100001000010000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Input" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -20643,6 +20655,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>000f01004400010003000000000000000000000f44090000</SyncMan>
<Fmmu>0000000000000000000f00020100000001000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Channel 1" Index="#x1600" InOut="1" Flags="#x0011" SyncMan="0">
<Entry Name="Output" Index="#x7000" Sub="#x01">
<Type>BIT</Type>
@@ -20692,6 +20705,7 @@ Bit1: Value smaller than Limit2]]></Comment>
<SyncMan>001001000000010004000000000000000000001000000000</SyncMan>
<Fmmu>0000000000000000001000010100000002000000000000000000000000000000</Fmmu>
<SuName>String1</SuName>
<SuTask>#x02010030</SuTask>
<Pdo Name="Status Us" Index="#x1a00" Flags="#x0011" SyncMan="0">
<Entry Name="Undervoltage" Index="#x6000" Sub="#x01">
<Type>BIT</Type>
@@ -44135,6 +44149,10 @@ Bit1: Value smaller than Limit2]]></Comment>
</OwnerB>
</OwnerA>
<OwnerA Name="TIPC^PLC^PLC Instance">
<OwnerB Name="TIID^X103 (EtherCAT)">
<Link VarA="PlcTask Inputs^MAIN._afbStrings[0].xECWcState" VarB="SyncUnits^String1^PlcTask^WcState^WcState"/>
<Link VarA="PlcTask Inputs^MAIN._afbStrings[1].xECWcState" VarB="SyncUnits^String2^PlcTask^WcState^WcState"/>
</OwnerB>
<OwnerB Name="TIID^X103 (EtherCAT)^-41K1 (EK1100)^-42K1 (EL6910)">
<Link VarA="PlcTask Inputs^MAIN._xEmergencyStopOk" VarB="StandardInputs^Not_Halt_Global.EStopOk_18"/>
<Link VarA="PlcTask Outputs^MAIN.xSafetyErrAck" VarB="StandardOutputs^Not_Halt_Global.ErrorAck_23"/>
@@ -44151,9 +44169,6 @@ Bit1: Value smaller than Limit2]]></Comment>
<OwnerB Name="TIID^X103 (EtherCAT)^-41K1 (EK1100)^-47K1 (EK1122)">
<Link VarA="PlcTask Inputs^MAIN._uiEtherCATState" VarB="InfoData^State"/>
</OwnerB>
<OwnerB Name="TIID^X103 (EtherCAT)^-41K1 (EK1100)^-47K1 (EK1122)^-10K1 X1 SCS S1 (EK1100)">
<Link VarA="PlcTask Inputs^MAIN._afbStrings[0].xECStateSCS" VarB="InfoData^State"/>
</OwnerB>
<OwnerB Name="TIID^X103 (EtherCAT)^-41K1 (EK1100)^-47K1 (EK1122)^-10K1 X1 SCS S1 (EK1100)^=STRNG01-11K1 (EL1018)">
<Link VarA="PlcTask Inputs^MAIN._afbStrings[0].xIsoErrorL1" VarB="Channel 7^ISO Protection K1"/>
<Link VarA="PlcTask Inputs^MAIN._afbStrings[0].xIsoErrorL2" VarB="Channel 8^ISO Protection K2"/>
@@ -44171,9 +44186,6 @@ Bit1: Value smaller than Limit2]]></Comment>
<Link VarA="PlcTask Outputs^MAIN.xSafetyErrAck" VarB="StandardOutputs^LocalSafety.ErrAck_63"/>
<Link VarA="PlcTask Outputs^MAIN.xSafetyRun" VarB="StandardOutputs^LocalSafety.Run_62"/>
</OwnerB>
<OwnerB Name="TIID^X103 (EtherCAT)^-41K1 (EK1100)^-47K1 (EK1122)^-10K1 X1 SCS S2 (EK1100)">
<Link VarA="PlcTask Inputs^MAIN._afbStrings[1].xECStateSCS" VarB="InfoData^State"/>
</OwnerB>
<OwnerB Name="TIID^X103 (EtherCAT)^-41K1 (EK1100)^-47K1 (EK1122)^-10K1 X1 SCS S2 (EK1100)^=STRNG02-11K1 (EL1018)">
<Link VarA="PlcTask Inputs^MAIN._afbStrings[1].xIsoErrorL1" VarB="Channel 7^ISO Protection K1"/>
<Link VarA="PlcTask Inputs^MAIN._afbStrings[1].xIsoErrorL2" VarB="Channel 8^ISO Protection K2"/>