Update Extendo

This commit is contained in:
b.makharadze 2025-07-30 18:20:00 +04:00
parent ce43dc63dc
commit d9b16f06ff
11 changed files with 6351 additions and 1459 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,157 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--DATA POWER MODULE-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_DPM" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-06-26T11:15:04.105Z" ContainsContext="true" ExportDate="Fri Jun 27 23:13:35 2025" ExportOptions="NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_DPM" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-07-11T06:08:04.500Z" ContainsContext="true" ExportDate="Wed Jul 30 16:16:21 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="STS" DataType="UDT_CTRL_IO_BLOCK_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CMD" DataType="UDT_CTRL_IO_BLOCK_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_CMD"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_IO_BLOCK_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log Quantity]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_IO_BLOCK_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
<Member Name="Acknowledge_Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Acknowledge Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_S3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[All Unacknowledged Logs]]>
</Description>
</Member>
<Member Name="Unacknowldge_All" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Unacknowledge all Alarms]]>
</Description>
</Member>
<Member Name="Aknowledgement_ID" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Aknowledgement ID]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Command To MCM]]>
</Description>
</Member>
<Member Name="STS" DataType="UDT_CTRL_MCM_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Status From MCM]]>
</Description>
</Member>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_MCM_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_MCM_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Acknowledge_Log" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="VFD_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="VFD_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault_Was_Present" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Encoder_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M11" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="4" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_MCM_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Acknowledge_Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="Motor_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="VFD_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="System_Started" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Jam_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M12" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Setup_Motor_Speeds" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="System_Start_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[System Start Requested]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_HMI_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="Alarm" DataType="UDT_ALARMS_IO_BLOCK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Color of Animations]]>
</Description>
</Member>
<Member Name="IP_Address" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[IP Address]]>
</Description>
</Member>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_IO_BLOCK"/>
</Dependencies>
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Use="Target" Name="AOI_DPM" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2021-06-02T10:38:08.709Z" CreatedBy="KONON\Artem" EditedDate="2025-06-26T11:15:04.105Z" EditedBy="LCIBATUMI\gigi.mamaladze"
<AddOnInstructionDefinition Use="Target" Name="AOI_DPM" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2021-06-02T10:38:08.709Z" CreatedBy="KONON\Artem" EditedDate="2025-07-11T06:08:04.500Z" EditedBy="LCIBATUMI\ilia.gurielidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[DATA POWER MODULE]]>
@ -19,26 +167,39 @@
<![CDATA[Enable Output - System Defined Parameter]]>
</Description>
</Parameter>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_DPM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_DPM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="MCM" TagType="Base" DataType="UDT_CTRL_MCM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Communication_Faulted" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
<Parameter Name="EN4TR_Communication_Fault" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Module" TagType="Base" DataType="MODULE" Usage="InOut" Required="true" Visible="true"/>
<Parameter Name="Communication_Faulted" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Communication_Fault" TagType="Base" DataType="BOOL" Usage="InOut" Radix="Decimal" Required="true" Visible="true" Constant="false">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Parameter>
</Parameters>
<LocalTags>
<LocalTag Name="CommFCode" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="MSG_Tmr" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,2000,804]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="2000"/>
@ -50,6 +211,9 @@
</DefaultData>
</LocalTag>
<LocalTag Name="TImeout_Tmr" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,10000,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="10000"/>
@ -60,49 +224,21 @@
</Structure>
</DefaultData>
</LocalTag>
<LocalTag Name="AckONS" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Ack" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Concat_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[Concat String]]>
</Description>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="CommFaultLatch" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Concatenated_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[Sring for Log]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Comms_Striing" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[Lost Communictaon]]>
</Description>
<DefaultData Format="String" Length="18">
<![CDATA[' Lost Communictaon']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Empty_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[Empty String]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
@ -111,81 +247,115 @@
<Description>
<![CDATA[Communication Fault Code]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge_ONS" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Lost_Communication_String" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Name" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[DPM Name
]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Ack" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[DPM Octopus-Switch Communication Monitor
The routine monitors its own Ethernet link together with the upstream EN4TR rack adapter.
If either path is lost, it turns on Communication_Faulted and mirrors that state to CTRL.STS.Communication_Faulted, allowing higher-level blocks to see the break.
HMI.STATE is set to 0 while communications are good and 1 whenever any link is lost.
An HMI alarm is generated only when the switch itself is faulted while the EN4TR adapter remains healthy, ensuring that alarms are not duplicated up the chain.
Whenever a loss occurs, the code builds a text line such as “<Switch HMI.Name> — Lost Communication”, places it in MCM.CMD.Log, and increments MCM.CMD.Log_Quantity.
If the same line later appears in MCM.STS.Acknowledge_Log, the routine latches Acknowledge and clears the entry so the log stays current.
The command bit MCM.STS.Unacknowledge_All_Logs resets the Acknowledge latch, guaranteeing that the next loss of communication will produce a fresh message.
Command bits
The routine receives Communication_Fault from its own port monitor.
The routine receives EN4TR_Communication_Fault from the rack adapter.
The routine receives MCM.STS.Unacknowledge_All_Logs to clear the acknowledge latch.
Status bits
The routine sets Communication_Faulted when either link is down.
The routine sets CTRL.STS.Communication_Faulted with the same value.
HMI bits
The HMI displays HMI.STATE as 0 for healthy and 1 for faulted.
The HMI raises HMI.Alarm.Communication_Faulted only while Communication_Faulted is true and EN4TR_Communication_Fault is false.
Alarm bits
The system raises HMI.Alarm.Communication_Faulted whenever the switch itself loses communication and the EN4TR adapter is still online.
]]>
</Comment>
<Text>
<![CDATA[XIC(CTRL.CMD.Communication_Faulted)OTL(MCM.CMD.Communication_Faulted);]]>
<![CDATA[[XIC(Communication_Fault) ,XIC(EN4TR_Communication_Fault) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[CLR(Communication_Fault_Code)GSV(Module,Module,FaultCode,Communication_Fault_Code)NE(Communication_Fault_Code,0)[OTE(Communication_Faulted) ,OTL(MCM.CMD.Communication_Faulted) ];]]>
<![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[[XIC(Communication_Faulted) ,XIC(MCM.STS.Communication_Faulted) ]OTE(CTRL.STS.Communication_Faulted);]]>
<![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]>
<![CDATA[XIC(Communication_Faulted)XIO(EN4TR_Communication_Fault)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]>
<![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Fault);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Text>
<![CDATA[[XIC(Communication_Faulted) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(Communication_Faulted) XIO(Acknowledge) COP(Lost_Communication_String,Concatenated_String,1) CONCAT(Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Text>
<![CDATA[OTU(CTRL.CMD.Communication_Faulted);]]>
<![CDATA[[XIC(Communication_Faulted) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(Communication_Faulted) XIO(Acknowledge) COP(Lost_Communication_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
</RLLContent>
@ -201,8 +371,8 @@
</Routine>
</Routines>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_DPM"/>
<Dependency Type="DataType" Name="UDT_HMI_DPM"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies>
</AddOnInstructionDefinition>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_EXTENDO" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-06-30T12:08:33.453Z" ContainsContext="true" ExportDate="Mon Jun 30 16:55:10 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_EXTENDO" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-07-30T12:08:39.456Z" ContainsContext="true" ExportDate="Wed Jul 30 16:16:29 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<DataTypes Use="Context">
<DataType Name="Caljan_PNMF_UDT_Input" Family="NoFamily" Class="User">
@ -218,76 +218,6 @@
<![CDATA[Extendo Faulted]]>
</Description>
</Member>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[EStopped]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_DPM" Family="NoFamily" Class="User">
<Members>
<Member Name="STS" DataType="UDT_CTRL_DPM_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Status of DPM]]>
</Description>
</Member>
<Member Name="CMD" DataType="UDT_CTRL_DPM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_DPM_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_DPM_CMD"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_DPM_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_D0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log Quantity]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_DPM_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_D0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
<Member Name="Acknowledge_Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Acknowledge Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_D3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="All_Unacknowledge_Log" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D3" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[All Unacknowledged Logs]]>
</Description>
</Member>
<Member Name="Unacknowldge_All" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D3" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Unacknowledge all Alarms]]>
</Description>
</Member>
<Member Name="Aknowledgement_ID" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Aknowledgement ID]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_EXTENDO" Family="NoFamily" Class="User">
@ -323,6 +253,66 @@
<![CDATA[Allow Extendo Loading]]>
</Description>
</Member>
<Member Name="Running" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Running]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="STS" DataType="UDT_CTRL_IO_BLOCK_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CMD" DataType="UDT_CTRL_IO_BLOCK_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_CMD"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_IO_BLOCK_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log Quantity]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_IO_BLOCK_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
<Member Name="Acknowledge_Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Acknowledge Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_S3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[All Unacknowledged Logs]]>
</Description>
</Member>
<Member Name="Unacknowldge_All" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Unacknowledge all Alarms]]>
</Description>
</Member>
<Member Name="Aknowledgement_ID" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Aknowledgement ID]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
@ -380,6 +370,11 @@
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M12" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Setup_Motor_Speeds" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="System_Start_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[System Start Requested]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_HMI_EXTENDO" Family="NoFamily" Class="User">
@ -427,6 +422,12 @@
<![CDATA[Extendo Faults Reset PushButton]]>
</Description>
</Member>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="EX_Type" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 - Normal 1 - FMH Extendo]]>
</Description>
</Member>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_EXTENDO"/>
@ -434,7 +435,7 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Use="Target" Name="AOI_EXTENDO" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-06-30T12:08:33.453Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00"
<AddOnInstructionDefinition Use="Target" Name="AOI_EXTENDO" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-30T12:08:39.456Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -452,7 +453,7 @@
<Parameter Name="Extendo_O" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_7E6CF713:I:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_I" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_78F5E13D:O:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="MCM" TagType="Base" DataType="UDT_CTRL_MCM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="DPM" TagType="Base" DataType="UDT_CTRL_DPM" Usage="InOut" Required="true" Visible="true" Constant="false">
<Parameter Name="DPM" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false">
<Description>
<![CDATA[Communication Faulted To Parent (DPM)]]>
</Description>
@ -480,9 +481,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Extendo_Faulted" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Extend Faulted]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -491,9 +489,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Extendo_Faulted_Reset_Required" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Fault Reset Required]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -513,9 +508,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Full" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Full]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -524,9 +516,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Power_Saving_Mode" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo is Running in Power Saving Mode]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -535,9 +524,6 @@
</DefaultData>
</Parameter>
<Parameter Name="No_Interlock" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[No Interlock]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -546,9 +532,14 @@
</DefaultData>
</Parameter>
<Parameter Name="MCM_Not_Started" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[MCM Not Started]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Test_Healthy" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read/Write">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -617,9 +608,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="No_Faults" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Extendo Dont Have Any Faults]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -628,9 +616,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Allow_Loading" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Allow Extendo Loading]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -639,9 +624,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Running" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Extendo Running]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -650,9 +632,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Interlock" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Interlock]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -661,9 +640,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Loading_Mode" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Loading Mode Enabled]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -672,10 +648,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Unloading_Mode" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Unloading Mode Enabled
]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -741,11 +713,151 @@
</Structure>
</DefaultData>
</LocalTag>
<LocalTag Name="Name" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Concatenated_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Empty_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge_ONS" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Lost_Comm_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[10,' LOST COMM$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="10">
<![CDATA[' LOST COMM']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Full_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[6,' FULL$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="6">
<![CDATA[' FULL']]>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[EXTENDO Telescopic Conveyor (Caljan)
Function
The Extendo AOI exchanges a block of I/O with the Caljan controller. It enables Ethernet control, watches the controllers health, and decides when loading may begin. All faults are logged to the MCM and presented on the HMI in the same “push / acknowledge” pattern used by every conveyor AOI.
Operating logic
Communication monitoring
Caljan_Output.ConnectionFaulted sets Communication Faulted; a rack-level break reported by DPM.STS.Communication_Faulted does the same.
While the fault is present an alarm is raised and a “Lost Communication” message is sent to the MCM log.
Extendo fault detection
If Caljan_Output.Healthy is false the AOI sets Extendo Faulted and latches Extendo Faulted Reset Required.
A reset command is issued when either the HMI “Faults Reset” PB or MCM.STS.VFD_Fault_Reset_Requested is true.
Interlock
CTRL.CMD.Interlock means the downstream conveyor is running.
CTRL.CMD.Run_Up_Enabled means the downstream is stopped but will accept cartons up to its discharge photo-eye.
If either bit is true the AOI sets Interlock; otherwise No Interlock is shown.
Allow Loading
Loading is allowed only when the system is started, the DPM link is healthy, and Interlock is true.
The AOI then sets Allow Loading, mirrors it to CTRL.STS.Allow_Loading, and asserts the Caljan commands Allow_Loading and Belt_Start_Loading.
If loading is not allowed the stop bit Caljan_Input.Belt_Stop is asserted.
Running feedback
When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the state to CTRL.STS.Running.
Operating modes and status flags
Caljan_Output.Front_EMS → Loading Mode
Caljan_Output.Customer_EMS → Unloading Mode
Caljan_Output.Belt_Accumulation → Power Saving Mode
Caljan_Output.Rear_EMS → E-Stopped
Caljan_Output.Aopen_Active → Aopen Active
Caljan_Output.Fully_Retracted / Fully_Extended → positional flags.
Logging
New occurrences of communication fault or full belt push a formatted string into MCM.CMD.Log and increment the quantity counter.
The entry self-clears when MCM.STS.Acknowledge_Log echoes the same text.
MCM.STS.Unacknowledge_All_Logs re-arms every latch so a repeat fault is re-logged.
HMI state code
0 loading not allowed1 loading allowed2 running
3 full4 communication fault5 Extendo faulted6 E-Stop
Command bits (received)
CTRL.CMD.Interlock
CTRL.CMD.Run_Up_Enabled
MCM.STS.System_Started
MCM.STS.VFD_Fault_Reset_Requested
DPM.STS.Communication_Faulted
HMI.PEC_Override_PB
HMI.Extendo_Faults_Reset_PB
MCM.STS.Unacknowledge_All_Logs
MCM.STS.Acknowledge_Log (comparison for auto-clear)
MCM.CMD.Log / Log_Quantity (target for new entries)
Status bits (set)
CTRL.STS.Interlock
CTRL.STS.Allow_Loading
CTRL.STS.Running
Extendo_FaultedExtendo_Faulted_Reset_Required
Communication_FaultedNo_Interlock
Loading_ModeUnloading_ModePower_Saving_Mode
Aopen_ActiveFully_RetractedFully_Extended
HMI bits
The HMI displays and/or exchanges—
HMI.Loading_Mode
HMI.Unloading_Mode
HMI.Power_Saving_Mode
HMI.Aopen_Active
HMI.Fully_Retracted
HMI.Fully_Extended
HMI.STATE
Alarm bits
HMI.Alarm.Full raised when Full is true.
HMI.Alarm.Communication_Faulted raised when Communication Faulted is true.
HMI.Alarm.Extendo_Faulted raised when Extendo Faulted is true.
]]>
</Comment>
<Text>
<![CDATA[COP(Extendo_I,Caljan_Input,1)COP(Extendo_O,Caljan_Output,1);]]>
</Text>
@ -777,7 +889,7 @@
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(Caljan_Output.Healthy)OTE(No_Faults);]]>
<![CDATA[[XIC(Caljan_Output.Healthy) ,XIC(Test_Healthy) ]OTE(No_Faults);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
@ -847,7 +959,7 @@
</Rung>
<Rung Number="20" Type="N">
<Text>
<![CDATA[XIC(Caljan_Output.Ready_to_Receive)OTE(Running);]]>
<![CDATA[XIC(Caljan_Output.Ready_to_Receive)[OTE(Running) ,OTE(CTRL.STS.Running) ];]]>
</Text>
</Rung>
<Rung Number="21" Type="N">
@ -856,6 +968,16 @@
</Text>
</Rung>
<Rung Number="22" Type="N">
<Text>
<![CDATA[[XIC(Communication_Faulted) ONS(Acknowledge_ONS.3) OTU(Acknowledge.3) ,XIC(Communication_Faulted) XIO(Acknowledge.3) COP(Lost_Comm_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.3) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Text>
<![CDATA[[XIC(Full) ONS(Acknowledge_ONS.5) OTU(Acknowledge.5) ,XIC(Full) XIO(Acknowledge.5) COP(Full_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.5) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Comment>
<![CDATA[Alarms
]]>
@ -864,22 +986,17 @@
<![CDATA[XIC(Full)OTE(HMI.Alarm.Full);]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Rung Number="26" Type="N">
<Text>
<![CDATA[XIC(Extendo_Faulted)OTE(HMI.Alarm.Extendo_Faulted);]]>
</Text>
</Rung>
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIC(Estopped)OTE(HMI.Alarm.EStopped);]]>
</Text>
</Rung>
<Rung Number="26" Type="N">
<Rung Number="27" Type="N">
<Comment>
<![CDATA[Info
@ -889,32 +1006,32 @@
<![CDATA[XIC(Loading_Mode)OTE(HMI.Loading_Mode);]]>
</Text>
</Rung>
<Rung Number="27" Type="N">
<Rung Number="28" Type="N">
<Text>
<![CDATA[XIC(Unloading_Mode)OTE(HMI.Unloading_Mode);]]>
</Text>
</Rung>
<Rung Number="28" Type="N">
<Rung Number="29" Type="N">
<Text>
<![CDATA[XIC(Aopen_Active)OTE(HMI.Aopen_Active);]]>
</Text>
</Rung>
<Rung Number="29" Type="N">
<Rung Number="30" Type="N">
<Text>
<![CDATA[XIC(Power_Saving_Mode)OTE(HMI.Power_Saving_Mode);]]>
</Text>
</Rung>
<Rung Number="30" Type="N">
<Rung Number="31" Type="N">
<Text>
<![CDATA[XIC(Fully_Retracted)OTE(HMI.Fully_Retracted);]]>
</Text>
</Rung>
<Rung Number="31" Type="N">
<Rung Number="32" Type="N">
<Text>
<![CDATA[XIC(Fully_Extended)OTE(HMI.Fully_Extended);]]>
</Text>
</Rung>
<Rung Number="32" Type="N">
<Rung Number="33" Type="N">
<Comment>
<![CDATA[State
]]>
@ -923,36 +1040,50 @@
<![CDATA[XIO(Allow_Loading)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="33" Type="N">
<Rung Number="34" Type="N">
<Text>
<![CDATA[XIC(Allow_Loading)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="34" Type="N">
<Rung Number="35" Type="N">
<Text>
<![CDATA[XIC(Running)MOVE(2,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="35" Type="N">
<Rung Number="36" Type="N">
<Text>
<![CDATA[XIC(Full)MOVE(3,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="36" Type="N">
<Rung Number="37" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)MOVE(4,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="37" Type="N">
<Rung Number="38" Type="N">
<Text>
<![CDATA[XIC(Extendo_Faulted)MOVE(5,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="38" Type="N">
<Rung Number="39" Type="N">
<Text>
<![CDATA[XIC(Estopped)MOVE(6,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="40" Type="N">
<Text>
<![CDATA[MOVE(0,HMI.EX_Type);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
<Routine Name="Prescan" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[OTE(Test_Healthy);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
@ -960,7 +1091,7 @@
<Dependency Type="DataType" Name="Caljan_PNMF_UDT_Input"/>
<Dependency Type="DataType" Name="Caljan_PNMF_UDT_Output"/>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_CTRL_DPM"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies>

View File

@ -1,6 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_FLIP_FLOP" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-05-21T10:05:03.350Z" ContainsContext="true" ExportDate="Fri Jun 27 23:13:45 2025" ExportOptions="NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_FLIP_FLOP" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-05-21T10:05:03.350Z" ContainsContext="true" ExportDate="Wed Jul 30 16:16:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<DataTypes Use="Context">
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Use="Target" Name="AOI_FLIP_FLOP" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-05-21T10:05:03.350Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
@ -19,6 +21,9 @@
<Description>
<![CDATA[Amount of time Beacon is On while Flashing]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
@ -27,11 +32,17 @@
<Description>
<![CDATA[Amount of time Beacon is Off while Flashing]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Flash" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
@ -39,6 +50,9 @@
</Parameters>
<LocalTags>
<LocalTag Name="Flip" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,0,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="0"/>
@ -50,6 +64,9 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Flop" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,0,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="0"/>

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,206 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--PN/MF Coupler X1 / 6ES7 158-3MU10-0XA0-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="Caljan_PNMF_UDT_Input" TargetType="DataType" ContainsContext="true" ExportDate="Wed Jul 30 16:17:01 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<DataTypes Use="Context">
<DataType Use="Target" Name="Caljan_PNMF_UDT_Input" Family="NoFamily" Class="User">
<Description>
<![CDATA[PN/MF Coupler X1 / 6ES7 158-3MU10-0XA0]]>
</Description>
<Members>
<Member Name="ZZZZZZZZZZCaljan_PNM0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="PEC_Override" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Set Rear PEC Override]]>
</Description>
</Member>
<Member Name="Allow_Loading" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Allow Loading]]>
</Description>
</Member>
<Member Name="Spare_Out0_2" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Comms_Heartbeat" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[Comms Heartbeat output to Conveyor]]>
</Description>
</Member>
<Member Name="Enable_Ethernet_Control" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="4" ExternalAccess="Read/Write">
<Description>
<![CDATA[Enable Ethernet Controls of Conveyor]]>
</Description>
</Member>
<Member Name="Belt_Start_Loading" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="5" ExternalAccess="Read/Write">
<Description>
<![CDATA[Belt Start in Loading Direction Command]]>
</Description>
</Member>
<Member Name="Belt_Stop" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="6" ExternalAccess="Read/Write">
<Description>
<![CDATA[Belt Stop Command]]>
</Description>
</Member>
<Member Name="Reset_Command" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM0" BitNumber="7" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Reset Command]]>
</Description>
</Member>
<Member Name="Spare_Out1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_Out2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_Out3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_Out4" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_Out5" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_Out6" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_Out7" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Use="Target" Name="Caljan_PNMF_UDT_Output" Family="NoFamily" Class="User">
<Description>
<![CDATA[PN/MF Coupler X1 / 6ES7 158-3MU10-0XA0]]>
</Description>
<Members>
<Member Name="Reserved1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" Max="127" Min="-128" ExternalLogging="true" ExternalAccess="None">
<Description>
<![CDATA[Byte Reserved for internal use by AB PLC]]>
</Description>
</Member>
<Member Name="Reserved2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="None">
<Description>
<![CDATA[Byte Reserved for internal use by AB PLC]]>
</Description>
</Member>
<Member Name="Reserved3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="None">
<Description>
<![CDATA[Byte Reserved for internal use by AB PLC]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZCaljan_PNM3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="ConnectionFaulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM3" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Connection Status signal generated by AB PLC (not from conveyor)]]>
</Description>
</Member>
<Member Name="Slot0_1_Id_0_IDS" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Byte Reserved for PNMF: Internal Diagnostics]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZCaljan_PNM6" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Healthy" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Healthy]]>
</Description>
</Member>
<Member Name="Belt_Direction_Loading" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Belt running in Loading direction]]>
</Description>
</Member>
<Member Name="Spare_In0_2" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Ready_to_Receive" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Rear to Receive Parcels]]>
</Description>
</Member>
<Member Name="Belt_Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="4" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Belt Full]]>
</Description>
</Member>
<Member Name="Heartbeat_from_Conveyor" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="5" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Heartbeat Signal]]>
</Description>
</Member>
<Member Name="EMS_OK" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="6" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor EMS OK]]>
</Description>
</Member>
<Member Name="Rear_EMS" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM6" BitNumber="7" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Rear (Panel) EMS OK]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZCaljan_PNM15" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Front_EMS" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Front EMS OK]]>
</Description>
</Member>
<Member Name="Customer_EMS" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Customer EMS OK]]>
</Description>
</Member>
<Member Name="Aopen_Active" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Aopen Signal On]]>
</Description>
</Member>
<Member Name="Belt_Accumulation" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Belt in Accumulation Mode]]>
</Description>
</Member>
<Member Name="Fully_Retracted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="4" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Telescope Fully Retracted]]>
</Description>
</Member>
<Member Name="Fully_Extended" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="5" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Telescope Fully Extended]]>
</Description>
</Member>
<Member Name="Front_PEC_Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="6" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Front PEC Blocked]]>
</Description>
</Member>
<Member Name="Rear_PEC_Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM15" BitNumber="7" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Rear PEC Blocked]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZCaljan_PNM24" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Front_Bumper_Pressed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Front Bumper Pressed]]>
</Description>
</Member>
<Member Name="Spare_In2_1" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="Spare_In2_2" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Spare_In2_3" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Spare_In2_4" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="Spare_In2_5" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Spare_In2_6" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Spare_In2_7" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM24" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZCaljan_PNM33" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_0" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_1" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_2" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_3" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_4" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_5" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_6" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Spare_In3_7" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZCaljan_PNM33" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="Spare_In4" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_In5" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_In6" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Spare_In7" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Slot2_1_Id_8_IDS" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Byte Reserved for PNMF Status: IN 8 Byte+DS / Input Data State]]>
</Description>
</Member>
<Member Name="Slot1_1_Id_0_ODS" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Byte Reserved for PNMF Status: OUT 8 Byte / Output Data State]]>
</Description>
</Member>
</Members>
</DataType>
</DataTypes>
</Controller>
</RSLogix5000Content>

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,75 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_DPM" TargetType="DataType" ContainsContext="true" ExportDate="Fri Jun 27 23:20:03 2025" ExportOptions="NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_IO_BLOCK" TargetType="DataType" ContainsContext="true" ExportDate="Wed Jul 30 16:18:50 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_DPM" Family="NoFamily" Class="User">
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Command To MCM]]>
</Description>
</Member>
<Member Name="STS" DataType="UDT_CTRL_MCM_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Status From MCM]]>
</Description>
</Member>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_MCM_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_MCM_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Acknowledge_Log" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="VFD_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="VFD_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault_Was_Present" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Encoder_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M11" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="4" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_MCM_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Acknowledge_Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="Motor_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="VFD_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="System_Started" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Jam_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M12" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Setup_Motor_Speeds" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="System_Start_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[System Start Requested]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_ALARMS_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication is Faulted]]>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
</Members>
@ -15,37 +77,27 @@
<DataType Use="Target" Name="UDT_AOI_DPM" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_DPM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_DPM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_DPM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_IO_BLOCK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_IO_BLOCK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_DPM"/>
<Dependency Type="DataType" Name="UDT_CTRL_DPM"/>
<Dependency Type="DataType" Name="UDT_HMI_DPM"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_IO_BLOCK"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_DPM" Family="NoFamily" Class="User">
<DataType Use="Target" Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="STS" DataType="UDT_CTRL_DPM_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Status of DPM]]>
</Description>
</Member>
<Member Name="CMD" DataType="UDT_CTRL_DPM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_IO_BLOCK_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CMD" DataType="UDT_CTRL_IO_BLOCK_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_DPM_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_DPM_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_CMD"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_DPM_CMD" Family="NoFamily" Class="User">
<DataType Use="Target" Name="UDT_CTRL_IO_BLOCK_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_D0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
@ -58,10 +110,10 @@
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_DPM_STS" Family="NoFamily" Class="User">
<DataType Use="Target" Name="UDT_CTRL_IO_BLOCK_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_D0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D0" BitNumber="0" ExternalAccess="Read/Write">
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
@ -71,13 +123,13 @@
<![CDATA[Acknowledge Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_D3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="All_Unacknowledge_Log" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D3" BitNumber="0" ExternalAccess="Read/Write">
<Member Name="ZZZZZZZZZZUDT_CTRL_S3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[All Unacknowledged Logs]]>
</Description>
</Member>
<Member Name="Unacknowldge_All" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D3" BitNumber="1" ExternalAccess="Read/Write">
<Member Name="Unacknowldge_All" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Unacknowledge all Alarms]]>
</Description>
@ -89,25 +141,252 @@
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_DPM" Family="NoFamily" Class="User">
<DataType Use="Target" Name="UDT_HMI_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="Alarm" DataType="UDT_ALARMS_DPM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Member Name="Alarm" DataType="UDT_ALARMS_IO_BLOCK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[HMI
Alarms]]>
<![CDATA[Color of Animations]]>
</Description>
</Member>
<Member Name="IP_Address" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[IP address]]>
<![CDATA[IP Address]]>
</Description>
</Member>
<Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_DPM"/>
<Dependency Type="DataType" Name="UDT_ALARMS_IO_BLOCK"/>
</Dependencies>
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_DPM" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2021-06-02T10:38:08.709Z" CreatedBy="KONON\Artem" EditedDate="2025-07-11T06:08:04.500Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
<Description>
<![CDATA[DATA POWER MODULE]]>
</Description>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
<![CDATA[Enable Input - System Defined Parameter]]>
</Description>
</Parameter>
<Parameter Name="EnableOut" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
<![CDATA[Enable Output - System Defined Parameter]]>
</Description>
</Parameter>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="MCM" TagType="Base" DataType="UDT_CTRL_MCM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="EN4TR_Communication_Fault" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Communication_Faulted" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Communication_Fault" TagType="Base" DataType="BOOL" Usage="InOut" Radix="Decimal" Required="true" Visible="true" Constant="false">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Parameter>
</Parameters>
<LocalTags>
<LocalTag Name="MSG_Tmr" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,2000,804]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="2000"/>
<DataValueMember Name="ACC" DataType="DINT" Radix="Decimal" Value="804"/>
<DataValueMember Name="EN" DataType="BOOL" Value="0"/>
<DataValueMember Name="TT" DataType="BOOL" Value="0"/>
<DataValueMember Name="DN" DataType="BOOL" Value="0"/>
</Structure>
</DefaultData>
</LocalTag>
<LocalTag Name="TImeout_Tmr" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,10000,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="10000"/>
<DataValueMember Name="ACC" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="EN" DataType="BOOL" Value="0"/>
<DataValueMember Name="TT" DataType="BOOL" Value="0"/>
<DataValueMember Name="DN" DataType="BOOL" Value="0"/>
</Structure>
</DefaultData>
</LocalTag>
<LocalTag Name="Concatenated_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[Sring for Log]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Empty_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Communication_Fault_Code" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Communication Fault Code]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge_ONS" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Lost_Communication_String" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Name" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Ack" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[DPM Octopus-Switch Communication Monitor
The routine monitors its own Ethernet link together with the upstream EN4TR rack adapter.
If either path is lost, it turns on Communication_Faulted and mirrors that state to CTRL.STS.Communication_Faulted, allowing higher-level blocks to see the break.
HMI.STATE is set to 0 while communications are good and 1 whenever any link is lost.
An HMI alarm is generated only when the switch itself is faulted while the EN4TR adapter remains healthy, ensuring that alarms are not duplicated up the chain.
Whenever a loss occurs, the code builds a text line such as “<Switch HMI.Name> — Lost Communication”, places it in MCM.CMD.Log, and increments MCM.CMD.Log_Quantity.
If the same line later appears in MCM.STS.Acknowledge_Log, the routine latches Acknowledge and clears the entry so the log stays current.
The command bit MCM.STS.Unacknowledge_All_Logs resets the Acknowledge latch, guaranteeing that the next loss of communication will produce a fresh message.
Command bits
The routine receives Communication_Fault from its own port monitor.
The routine receives EN4TR_Communication_Fault from the rack adapter.
The routine receives MCM.STS.Unacknowledge_All_Logs to clear the acknowledge latch.
Status bits
The routine sets Communication_Faulted when either link is down.
The routine sets CTRL.STS.Communication_Faulted with the same value.
HMI bits
The HMI displays HMI.STATE as 0 for healthy and 1 for faulted.
The HMI raises HMI.Alarm.Communication_Faulted only while Communication_Faulted is true and EN4TR_Communication_Fault is false.
Alarm bits
The system raises HMI.Alarm.Communication_Faulted whenever the switch itself loses communication and the EN4TR adapter is still online.
]]>
</Comment>
<Text>
<![CDATA[[XIC(Communication_Fault) ,XIC(EN4TR_Communication_Fault) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)XIO(EN4TR_Communication_Fault)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[[XIC(Communication_Faulted) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(Communication_Faulted) XIO(Acknowledge) COP(Lost_Communication_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
</RLLContent>
</Routine>
<Routine Name="Prescan" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[MOVE(1000,MSG_Tmr.PRE)MOVE(5000,TImeout_Tmr.PRE)MOVE(0,Ack);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies>
</AddOnInstructionDefinition>
</AddOnInstructionDefinitions>
</Controller>
</RSLogix5000Content>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_EXTENDO" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jun 30 16:55:24 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_EXTENDO" TargetType="DataType" ContainsContext="true" ExportDate="Wed Jul 30 16:17:29 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<DataTypes Use="Context">
<DataType Name="Caljan_PNMF_UDT_Input" Family="NoFamily" Class="User">
@ -200,28 +200,18 @@
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_DPM" Family="NoFamily" Class="User">
<DataType Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="STS" DataType="UDT_CTRL_DPM_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Status of DPM]]>
</Description>
</Member>
<Member Name="CMD" DataType="UDT_CTRL_DPM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_IO_BLOCK_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CMD" DataType="UDT_CTRL_IO_BLOCK_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_DPM_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_DPM_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK_CMD"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_DPM_CMD" Family="NoFamily" Class="User">
<DataType Name="UDT_CTRL_IO_BLOCK_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_D0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
@ -234,10 +224,10 @@
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_DPM_STS" Family="NoFamily" Class="User">
<DataType Name="UDT_CTRL_IO_BLOCK_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_D0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D0" BitNumber="0" ExternalAccess="Read/Write">
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
@ -247,13 +237,13 @@
<![CDATA[Acknowledge Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_D3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="All_Unacknowledge_Log" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D3" BitNumber="0" ExternalAccess="Read/Write">
<Member Name="ZZZZZZZZZZUDT_CTRL_S3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[All Unacknowledged Logs]]>
</Description>
</Member>
<Member Name="Unacknowldge_All" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_D3" BitNumber="1" ExternalAccess="Read/Write">
<Member Name="Unacknowldge_All" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S3" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Unacknowledge all Alarms]]>
</Description>
@ -320,6 +310,11 @@
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M12" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Setup_Motor_Speeds" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="System_Start_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[System Start Requested]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_ALARMS_EXTENDO" Family="NoFamily" Class="User">
@ -340,11 +335,6 @@
<![CDATA[Extendo Faulted]]>
</Description>
</Member>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[EStopped]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_EXTENDO" Family="NoFamily" Class="User">
@ -392,6 +382,11 @@
<![CDATA[Allow Extendo Loading]]>
</Description>
</Member>
<Member Name="Running" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Running]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_EXTENDO" Family="NoFamily" Class="User">
@ -439,6 +434,12 @@
<![CDATA[Extendo Faults Reset PushButton]]>
</Description>
</Member>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="EX_Type" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 - Normal 1 - FMH Extendo]]>
</Description>
</Member>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_EXTENDO"/>
@ -446,7 +447,7 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_EXTENDO" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-06-30T12:08:33.453Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<AddOnInstructionDefinition Name="AOI_EXTENDO" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-30T12:08:39.456Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -463,7 +464,7 @@
<Parameter Name="Extendo_O" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_7E6CF713:I:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_I" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_78F5E13D:O:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="MCM" TagType="Base" DataType="UDT_CTRL_MCM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="DPM" TagType="Base" DataType="UDT_CTRL_DPM" Usage="InOut" Required="true" Visible="true" Constant="false">
<Parameter Name="DPM" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false">
<Description>
<![CDATA[Communication Faulted To Parent (DPM)]]>
</Description>
@ -491,9 +492,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Extendo_Faulted" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Extend Faulted]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -502,9 +500,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Extendo_Faulted_Reset_Required" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Fault Reset Required]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -524,9 +519,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Full" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Full]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -535,9 +527,6 @@
</DefaultData>
</Parameter>
<Parameter Name="Power_Saving_Mode" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo is Running in Power Saving Mode]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -546,9 +535,6 @@
</DefaultData>
</Parameter>
<Parameter Name="No_Interlock" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[No Interlock]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -557,9 +543,14 @@
</DefaultData>
</Parameter>
<Parameter Name="MCM_Not_Started" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[MCM Not Started]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Test_Healthy" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read/Write">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -628,9 +619,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="No_Faults" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Extendo Dont Have Any Faults]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -639,9 +627,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Allow_Loading" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Allow Extendo Loading]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -650,9 +635,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Running" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Extendo Running]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -661,9 +643,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Interlock" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Interlock]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -672,9 +651,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Loading_Mode" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Loading Mode Enabled]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -683,10 +659,6 @@
</DefaultData>
</LocalTag>
<LocalTag Name="Unloading_Mode" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Unloading Mode Enabled
]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
@ -752,11 +724,151 @@
</Structure>
</DefaultData>
</LocalTag>
<LocalTag Name="Name" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Concatenated_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Empty_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge_ONS" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Lost_Comm_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[10,' LOST COMM$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="10">
<![CDATA[' LOST COMM']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Full_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[6,' FULL$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="6">
<![CDATA[' FULL']]>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[EXTENDO Telescopic Conveyor (Caljan)
Function
The Extendo AOI exchanges a block of I/O with the Caljan controller. It enables Ethernet control, watches the controllers health, and decides when loading may begin. All faults are logged to the MCM and presented on the HMI in the same “push / acknowledge” pattern used by every conveyor AOI.
Operating logic
Communication monitoring
Caljan_Output.ConnectionFaulted sets Communication Faulted; a rack-level break reported by DPM.STS.Communication_Faulted does the same.
While the fault is present an alarm is raised and a “Lost Communication” message is sent to the MCM log.
Extendo fault detection
If Caljan_Output.Healthy is false the AOI sets Extendo Faulted and latches Extendo Faulted Reset Required.
A reset command is issued when either the HMI “Faults Reset” PB or MCM.STS.VFD_Fault_Reset_Requested is true.
Interlock
CTRL.CMD.Interlock means the downstream conveyor is running.
CTRL.CMD.Run_Up_Enabled means the downstream is stopped but will accept cartons up to its discharge photo-eye.
If either bit is true the AOI sets Interlock; otherwise No Interlock is shown.
Allow Loading
Loading is allowed only when the system is started, the DPM link is healthy, and Interlock is true.
The AOI then sets Allow Loading, mirrors it to CTRL.STS.Allow_Loading, and asserts the Caljan commands Allow_Loading and Belt_Start_Loading.
If loading is not allowed the stop bit Caljan_Input.Belt_Stop is asserted.
Running feedback
When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the state to CTRL.STS.Running.
Operating modes and status flags
Caljan_Output.Front_EMS → Loading Mode
Caljan_Output.Customer_EMS → Unloading Mode
Caljan_Output.Belt_Accumulation → Power Saving Mode
Caljan_Output.Rear_EMS → E-Stopped
Caljan_Output.Aopen_Active → Aopen Active
Caljan_Output.Fully_Retracted / Fully_Extended → positional flags.
Logging
New occurrences of communication fault or full belt push a formatted string into MCM.CMD.Log and increment the quantity counter.
The entry self-clears when MCM.STS.Acknowledge_Log echoes the same text.
MCM.STS.Unacknowledge_All_Logs re-arms every latch so a repeat fault is re-logged.
HMI state code
0 loading not allowed1 loading allowed2 running
3 full4 communication fault5 Extendo faulted6 E-Stop
Command bits (received)
CTRL.CMD.Interlock
CTRL.CMD.Run_Up_Enabled
MCM.STS.System_Started
MCM.STS.VFD_Fault_Reset_Requested
DPM.STS.Communication_Faulted
HMI.PEC_Override_PB
HMI.Extendo_Faults_Reset_PB
MCM.STS.Unacknowledge_All_Logs
MCM.STS.Acknowledge_Log (comparison for auto-clear)
MCM.CMD.Log / Log_Quantity (target for new entries)
Status bits (set)
CTRL.STS.Interlock
CTRL.STS.Allow_Loading
CTRL.STS.Running
Extendo_FaultedExtendo_Faulted_Reset_Required
Communication_FaultedNo_Interlock
Loading_ModeUnloading_ModePower_Saving_Mode
Aopen_ActiveFully_RetractedFully_Extended
HMI bits
The HMI displays and/or exchanges—
HMI.Loading_Mode
HMI.Unloading_Mode
HMI.Power_Saving_Mode
HMI.Aopen_Active
HMI.Fully_Retracted
HMI.Fully_Extended
HMI.STATE
Alarm bits
HMI.Alarm.Full raised when Full is true.
HMI.Alarm.Communication_Faulted raised when Communication Faulted is true.
HMI.Alarm.Extendo_Faulted raised when Extendo Faulted is true.
]]>
</Comment>
<Text>
<![CDATA[COP(Extendo_I,Caljan_Input,1)COP(Extendo_O,Caljan_Output,1);]]>
</Text>
@ -788,7 +900,7 @@
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(Caljan_Output.Healthy)OTE(No_Faults);]]>
<![CDATA[[XIC(Caljan_Output.Healthy) ,XIC(Test_Healthy) ]OTE(No_Faults);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
@ -858,7 +970,7 @@
</Rung>
<Rung Number="20" Type="N">
<Text>
<![CDATA[XIC(Caljan_Output.Ready_to_Receive)OTE(Running);]]>
<![CDATA[XIC(Caljan_Output.Ready_to_Receive)[OTE(Running) ,OTE(CTRL.STS.Running) ];]]>
</Text>
</Rung>
<Rung Number="21" Type="N">
@ -867,6 +979,16 @@
</Text>
</Rung>
<Rung Number="22" Type="N">
<Text>
<![CDATA[[XIC(Communication_Faulted) ONS(Acknowledge_ONS.3) OTU(Acknowledge.3) ,XIC(Communication_Faulted) XIO(Acknowledge.3) COP(Lost_Comm_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.3) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Text>
<![CDATA[[XIC(Full) ONS(Acknowledge_ONS.5) OTU(Acknowledge.5) ,XIC(Full) XIO(Acknowledge.5) COP(Full_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.5) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Comment>
<![CDATA[Alarms
]]>
@ -875,22 +997,17 @@
<![CDATA[XIC(Full)OTE(HMI.Alarm.Full);]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Rung Number="26" Type="N">
<Text>
<![CDATA[XIC(Extendo_Faulted)OTE(HMI.Alarm.Extendo_Faulted);]]>
</Text>
</Rung>
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIC(Estopped)OTE(HMI.Alarm.EStopped);]]>
</Text>
</Rung>
<Rung Number="26" Type="N">
<Rung Number="27" Type="N">
<Comment>
<![CDATA[Info
@ -900,32 +1017,32 @@
<![CDATA[XIC(Loading_Mode)OTE(HMI.Loading_Mode);]]>
</Text>
</Rung>
<Rung Number="27" Type="N">
<Rung Number="28" Type="N">
<Text>
<![CDATA[XIC(Unloading_Mode)OTE(HMI.Unloading_Mode);]]>
</Text>
</Rung>
<Rung Number="28" Type="N">
<Rung Number="29" Type="N">
<Text>
<![CDATA[XIC(Aopen_Active)OTE(HMI.Aopen_Active);]]>
</Text>
</Rung>
<Rung Number="29" Type="N">
<Rung Number="30" Type="N">
<Text>
<![CDATA[XIC(Power_Saving_Mode)OTE(HMI.Power_Saving_Mode);]]>
</Text>
</Rung>
<Rung Number="30" Type="N">
<Rung Number="31" Type="N">
<Text>
<![CDATA[XIC(Fully_Retracted)OTE(HMI.Fully_Retracted);]]>
</Text>
</Rung>
<Rung Number="31" Type="N">
<Rung Number="32" Type="N">
<Text>
<![CDATA[XIC(Fully_Extended)OTE(HMI.Fully_Extended);]]>
</Text>
</Rung>
<Rung Number="32" Type="N">
<Rung Number="33" Type="N">
<Comment>
<![CDATA[State
]]>
@ -934,36 +1051,50 @@
<![CDATA[XIO(Allow_Loading)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="33" Type="N">
<Rung Number="34" Type="N">
<Text>
<![CDATA[XIC(Allow_Loading)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="34" Type="N">
<Rung Number="35" Type="N">
<Text>
<![CDATA[XIC(Running)MOVE(2,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="35" Type="N">
<Rung Number="36" Type="N">
<Text>
<![CDATA[XIC(Full)MOVE(3,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="36" Type="N">
<Rung Number="37" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)MOVE(4,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="37" Type="N">
<Rung Number="38" Type="N">
<Text>
<![CDATA[XIC(Extendo_Faulted)MOVE(5,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="38" Type="N">
<Rung Number="39" Type="N">
<Text>
<![CDATA[XIC(Estopped)MOVE(6,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="40" Type="N">
<Text>
<![CDATA[MOVE(0,HMI.EX_Type);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
<Routine Name="Prescan" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[OTE(Test_Healthy);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
@ -971,7 +1102,7 @@
<Dependency Type="DataType" Name="Caljan_PNMF_UDT_Input"/>
<Dependency Type="DataType" Name="Caljan_PNMF_UDT_Output"/>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_CTRL_DPM"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies>

File diff suppressed because it is too large Load Diff