Update UDTs and AOIs

This commit is contained in:
b.makharadze 2025-07-30 18:22:37 +04:00
parent 731fd41fde
commit 6b76f646cb
22 changed files with 2090 additions and 60116 deletions

View File

@ -1,7 +1,39 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_VFD" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:40:22 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--Varible Frequency Drive-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_APF" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T06:08:03.949Z" ContainsContext="true" ExportDate="Wed Jul 30 11:53:23 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_VFD" 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 is Faulted]]>
</Description>
</Member>
<Member Name="Disconnected" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Disconnected VFD]]>
</Description>
</Member>
<Member Name="VFD_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Faulted]]>
</Description>
</Member>
<Member Name="VFD_Reset_Required" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Reset Required]]>
</Description>
</Member>
<Member Name="Safe_Off_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="4" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Safety Torque Fault]]>
</Description>
</Member>
<Member Name="Maintenance_Mode" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="5" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="STS" DataType="UDT_CTRL_IO_BLOCK_STS" 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"/>
@ -119,50 +151,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD" 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 is Faulted]]>
</Description>
</Member>
<Member Name="Disconnected" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Disconnected VFD]]>
</Description>
</Member>
<Member Name="VFD_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Faulted]]>
</Description>
</Member>
<Member Name="VFD_Reset_Required" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Reset Required]]>
</Description>
</Member>
<Member Name="Safe_Off_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="4" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Safety Torque Fault]]>
</Description>
</Member>
<Member Name="Maintenance_Mode" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="5" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_APF" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_APF" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_VFD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_VFD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_APF"/>
<Dependency Type="DataType" Name="UDT_HMI_VFD"/>
<Dependency Type="DataType" Name="UDT_CTRL_VFD"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_VFD_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="STS" DataType="UDT_CTRL_VFD_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -172,7 +161,7 @@
<Dependency Type="DataType" Name="UDT_CTRL_VFD_STS"/> <Dependency Type="DataType" Name="UDT_CTRL_VFD_STS"/>
</Dependencies> </Dependencies>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_VFD_CMD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD_CMD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_A0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_CTRL_A0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_A0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_A0" BitNumber="0" ExternalAccess="Read/Write">
@ -252,7 +241,7 @@ Stopped by Station Stop PushButton]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_VFD_STS" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD_STS" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_A0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_CTRL_A0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Running" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_A0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Running" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_A0" BitNumber="0" ExternalAccess="Read/Write">
@ -359,7 +348,7 @@ Stopped by Station Stop PushButton]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_HMI_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_VFD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_VFD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_VFD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -444,7 +433,7 @@ Stopped by Station Stop PushButton]]>
<Dependency Type="DataType" Name="UDT_MAINTENANCE_VFD"/> <Dependency Type="DataType" Name="UDT_MAINTENANCE_VFD"/>
</Dependencies> </Dependencies>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_MAINTENANCE_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_MAINTENANCE_VFD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_MAINTE0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_MAINTE0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Maintenance_Mode" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_MAINTE0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Maintenance_Mode" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_MAINTE0" BitNumber="0" ExternalAccess="Read/Write">
@ -492,8 +481,8 @@ Pressed]]>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_APF" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-05-17T10:35:36.642Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-21T12:01:19.574Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Use="Target" Name="AOI_APF" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-05-17T10:35:36.642Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-11T06:08:03.949Z" EditedBy="LCIBATUMI\ilia.gurielidze"
> SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[Varible Frequency Drive]]> <![CDATA[Varible Frequency Drive]]>
</Description> </Description>
@ -1141,263 +1130,327 @@ Safety torque-off loss of STO sets EStopped, mirrors it to CTRL.STS.EStopped
Drive outputs when Run is true the AOI drops APF_O.Stop, energises APF_O.Start, and sets the forward or reverse bit from the maintenance direction flag. Drive outputs when Run is true the AOI drops APF_O.Stop, energises APF_O.Start, and sets the forward or reverse bit from the maintenance direction flag.
Logging every new Disconnect, VFD trip, Comms loss, Jam, or Full condition pushes a line into MCM.CMD.Log and increments the quantity. The line is cleared automatically when MCM echoes it back through MCM.STS.Acknowledge_Log; a global un-acknowledge re-arms the entry.]]> Logging every new Disconnect, VFD trip, Comms loss, Jam, or Full condition pushes a line into MCM.CMD.Log and increments the quantity. The line is cleared automatically when MCM echoes it back through MCM.STS.Acknowledge_Log; a global un-acknowledge re-arms the entry.
Command bits (received by the AOI)
The module receives CTRL.CMD.Log and Log_Quantity.
The module receives CTRL.CMD.Acknowledge_Log and Unacknowledge_All_Logs.
The module receives CTRL.CMD.Start and Stop_Require_Start.
The module receives CTRL.CMD.Stop_Auto_Restart.
The module receives CTRL.CMD.Speed_FPM.
The module receives CTRL.CMD.Interlock.
The module receives CTRL.CMD.Run_Up_Enabled.
The module receives CTRL.CMD.Power_Saving_Mode_ON.
The module receives CTRL.CMD.Jammed.
The module receives CTRL.CMD.Encoder_Fault.
The module receives CTRL.CMD.Full.
The module receives CTRL.CMD.VFD_Faulted and VFD_Was_Faulted.
The module receives CTRL.CMD.EStop_Was_Actuated.
The module receives CTRL.CMD.Stopped_By_Stop_PB.
The module receives MCM.STS.System_Started and System_Start_Requested.
The module receives MCM.STS.VFD_Fault_Reset_Requested.
The module receives MCM.STS.Setup_Motor_Speeds.
The module receives MCM.STS.Unacknowledge_All_Logs.
The module receives HMI.Maintenance.Maintenance_Mode.
The module receives HMI.Maintenance.Start_PB_Pressed.
The module receives HMI.Maintenance.Stop_PB_Pressed.
The module receives HMI.Maintenance.Jog_PB_Pressed.
The module receives HMI.Maintenance.Direction_PB_Pressed.
The module receives HMI.Maintenance.Speed_FPM.
The module receives HMI.Cycle_Time_Factor and HMI.Speed_At_30rev.
Status bits (set by the AOI)
The module sets CTRL.STS.Log and Log_Quantity.
The module sets CTRL.STS.Acknowledge_Log and Unacknowledge_All_Logs.
The module sets CTRL.STS.MCM_Started.
The module sets CTRL.STS.Running.
The module sets CTRL.STS.Enabled.
The module sets CTRL.STS.Interlock.
The module sets CTRL.STS.In_Power_Saving_Mode.
The module sets CTRL.STS.Maintenance_Mode.
The module sets CTRL.STS.Encoder_Fault.
The module sets CTRL.STS.Jammed.
The module sets CTRL.STS.VFD_Faulted.
The module sets CTRL.STS.VFD_Fault_Reset_Required.
The module sets CTRL.STS.Communication_Faulted.
The module sets CTRL.STS.EStopped.
The module sets CTRL.STS.Current_Speed.
The module sets CTRL.STS.Requested_Speed.
HMI bits
The HMI exchanges HMI.Maintenance.Maintenance_Mode.
The HMI exchanges HMI.Maintenance.Start_PB_Pressed.
The HMI exchanges HMI.Maintenance.Stop_PB_Pressed.
The HMI exchanges HMI.Maintenance.Jog_PB_Pressed.
The HMI exchanges HMI.Maintenance.Direction_PB_Pressed.
The HMI exchanges HMI.Maintenance.Speed_FPM.
The HMI displays HMI.STATE (values 0, 1, 2, 3, 4, 5, 6, 61, 7, 8, 9, 13, 14, 131 as defined above).
The HMI displays HMI.FPM, HMI.Amperage, HMI.Voltage, and HMI.Velocity.
The HMI displays HMI.VFD_Type, HMI.Communication_Fault_Code, HMI.VFD_Fault_Code, and HMI.Last_VFD_Fault_Code.
The HMI displays HMI.Maintenance.Buttons_State and HMI.Maintenance.Direction.
Alarm bits
HMI.Alarm.Disconnected is raised when Disconnected is true.
HMI.Alarm.Communication_Faulted is raised when Communication_Faulted is true.
HMI.Alarm.VFD_Fault is raised when VFD_Faulted is true.
HMI.Alarm.VFD_Reset_Required is raised when VFD_Fault_Reset_Required is true while VFD_Faulted is false.
HMI.Alarm.Jammed is raised when Jammed is true.
HMI.Alarm.Full is raised when Full is true.
HMI.Alarm.Maintenance_Mode is raised while Maintenance_Mode is active.
]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[MOVE(1,HMI.VFD_Type)COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]> <![CDATA[MOVE(1,HMI.VFD_Type)COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Disconnect_I)OTE(Disconnected);]]> <![CDATA[XIO(Disconnect_I)OTE(Disconnected);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Jammed)OTE(Jammed);]]> <![CDATA[XIC(CTRL.CMD.Jammed)OTE(Jammed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Encoder_Fault)OTE(Encoder_Fault);]]> <![CDATA[XIC(CTRL.CMD.Encoder_Fault)OTE(Encoder_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Full)OTE(Full);]]> <![CDATA[XIC(CTRL.CMD.Full)OTE(Full);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Stop_Require_Start)OTE(Stopped_Require_Start);]]> <![CDATA[XIC(CTRL.CMD.Stop_Require_Start)OTE(Stopped_Require_Start);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Stop_Auto_Restart)OTE(Stopped_Auto_Restart);]]> <![CDATA[XIC(CTRL.CMD.Stop_Auto_Restart)OTE(Stopped_Auto_Restart);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[EQ(CTRL.CMD.Speed_FPM,0)OTE(Zero_Speed);]]> <![CDATA[EQ(CTRL.CMD.Speed_FPM,0)OTE(Zero_Speed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="8" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.System_Started)OTE(CTRL.STS.MCM_Started);]]> <![CDATA[XIC(MCM.STS.System_Started)OTE(CTRL.STS.MCM_Started);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="9" Type="N">
<Text> <Text>
<![CDATA[XIO(MCM.STS.System_Started)OTE(MCM_Not_Started);]]> <![CDATA[XIO(MCM.STS.System_Started)OTE(MCM_Not_Started);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="10" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.Maintenance.Maintenance_Mode)[OTE(Maintenance_Mode) ,OTE(CTRL.STS.Maintenance_Mode) ];]]> <![CDATA[XIC(HMI.Maintenance.Maintenance_Mode)[OTE(Maintenance_Mode) ,OTE(CTRL.STS.Maintenance_Mode) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[XIC(Disconnect_I)[TON(Disconect_On_Delay,?,?) ,XIO(Communication_Lost) MOVE(45000,Disconect_On_Delay.ACC) ];]]> <![CDATA[XIC(Disconnect_I)[TON(Disconect_On_Delay,?,?) ,XIO(Communication_Lost) MOVE(45000,Disconect_On_Delay.ACC) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="13" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[GSV(Module,Module,FaultCode,Communication_Fault_Code)NE(Communication_Fault_Code,0)OTE(Communication_Lost);]]> <![CDATA[GSV(Module,Module,FaultCode,Communication_Fault_Code)NE(Communication_Fault_Code,0)OTE(Communication_Lost);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="14" Type="N"> <Rung Number="13" Type="N">
<Text> <Text>
<![CDATA[[CLR(Communication_Fault_Code) XIC(Disconect_On_Delay.DN) XIC(Communication_Lost) ,XIC(DPM.STS.Communication_Faulted) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]> <![CDATA[[CLR(Communication_Fault_Code) XIC(Disconect_On_Delay.DN) XIC(Communication_Lost) ,XIC(DPM.STS.Communication_Faulted) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="15" Type="N"> <Rung Number="14" Type="N">
<Text> <Text>
<![CDATA[CLR(VFD_Fault_Code)XIO(Communication_Faulted)XIC(APF_I.Fault)MOVE(APF_I.TripFaultCode,VFD_Fault_Code)OTE(VFD_Faulted);]]> <![CDATA[CLR(VFD_Fault_Code)XIO(Communication_Faulted)XIC(APF_I.Fault)MOVE(APF_I.TripFaultCode,VFD_Fault_Code)OTE(VFD_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="16" Type="N"> <Rung Number="15" Type="N">
<Text> <Text>
<![CDATA[NE(VFD_Fault_Code,0)MOVE(VFD_Fault_Code,Last_VFD_Fault_Code);]]> <![CDATA[NE(VFD_Fault_Code,0)MOVE(VFD_Fault_Code,Last_VFD_Fault_Code);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="17" Type="N"> <Rung Number="16" Type="N">
<Text> <Text>
<![CDATA[XIO(APF_I.SafeTorqueEnabled)[OTE(EStopped) ,OTE(CTRL.STS.EStopped) ,OTL(MCM.CMD.EStop_Was_Actuated) ];]]> <![CDATA[XIO(APF_I.SafeTorqueEnabled)[OTE(EStopped) ,OTE(CTRL.STS.EStopped) ,OTL(MCM.CMD.EStop_Was_Actuated) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="18" Type="N"> <Rung Number="17" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.VFD_Fault_Reset_Requested)XIC(Disconect_On_Delay.DN)XIO(VFD_Faulted)OTU(VFD_Fault_Reset_Required);]]> <![CDATA[XIC(MCM.STS.VFD_Fault_Reset_Requested)XIC(Disconect_On_Delay.DN)XIO(VFD_Faulted)OTU(VFD_Fault_Reset_Required);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="19" Type="N"> <Rung Number="18" Type="N">
<Text> <Text>
<![CDATA[XIO(s:fs)[XIO(Disconect_On_Delay.DN) ,XIC(VFD_Faulted) ][OTL(VFD_Fault_Reset_Required) ,OTE(CTRL.STS.VFD_Faulted) ,OTL(MCM.CMD.VFD_Faulted) ];]]> <![CDATA[XIO(s:fs)[XIO(Disconect_On_Delay.DN) ,XIC(VFD_Faulted) ][OTL(VFD_Fault_Reset_Required) ,OTE(CTRL.STS.VFD_Faulted) ,OTL(MCM.CMD.VFD_Faulted) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="20" Type="N"> <Rung Number="19" Type="N">
<Text> <Text>
<![CDATA[XIC(VFD_Fault_Reset_Required)OTL(MCM.CMD.VFD_Was_Faulted);]]> <![CDATA[XIC(VFD_Fault_Reset_Required)OTL(MCM.CMD.VFD_Was_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="21" Type="N"> <Rung Number="20" Type="N">
<Text> <Text>
<![CDATA[XIC(Jammed)[OTE(CTRL.STS.Jammed) ,OTL(MCM.CMD.Jam_Fault) ];]]> <![CDATA[XIC(Jammed)[OTE(CTRL.STS.Jammed) ,OTL(MCM.CMD.Jam_Fault) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="22" Type="N"> <Rung Number="21" Type="N">
<Text> <Text>
<![CDATA[XIC(Encoder_Fault)[OTE(CTRL.STS.Encoder_Fault) ,OTL(MCM.CMD.Encoder_Fault) ];]]> <![CDATA[XIC(Encoder_Fault)[OTE(CTRL.STS.Encoder_Fault) ,OTL(MCM.CMD.Encoder_Fault) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="23" Type="N"> <Rung Number="22" Type="N">
<Text> <Text>
<![CDATA[XIC(APF_I.Running)COP(Running_String,Concatenated_String,1)CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log)[OTE(Running) ,OTE(CTRL.STS.Running) ];]]> <![CDATA[XIC(APF_I.Running)COP(Running_String,Concatenated_String,1)CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log)[OTE(Running) ,OTE(CTRL.STS.Running) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="24" Type="N"> <Rung Number="23" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.STS.MCM_Started)XIC(CTRL.CMD.Power_Saving_Mode_ON)[XIC(Running) MUL(Length,60.62,Calculation_Temp) DIV(Calculation_Temp,CTRL.CMD.Speed_FPM,Calculation_Temp) MUL(Calculation_Temp,HMI.Cycle_Time_Factor,Calculation_Temp) MUL(Calculation_Temp,1000,Power_Save_Timer.PRE) TON(Power_Save_Timer,?,?) XIC(Power_Save_Timer.DN) ,XIC(Power_Saving_Mode) XIO(CTRL.CMD.Start) ][OTE(Power_Saving_Mode) ,OTE(CTRL.STS.In_Power_Saving_Mode) ];]]> <![CDATA[XIC(CTRL.STS.MCM_Started)XIC(CTRL.CMD.Power_Saving_Mode_ON)[XIC(Running) MUL(Length,60.62,Calculation_Temp) DIV(Calculation_Temp,CTRL.CMD.Speed_FPM,Calculation_Temp) MUL(Calculation_Temp,HMI.Cycle_Time_Factor,Calculation_Temp) MUL(Calculation_Temp,1000,Power_Save_Timer.PRE) TON(Power_Save_Timer,?,?) XIC(Power_Save_Timer.DN) ,XIC(Power_Saving_Mode) XIO(CTRL.CMD.Start) ][OTE(Power_Saving_Mode) ,OTE(CTRL.STS.In_Power_Saving_Mode) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="25" Type="N"> <Rung Number="24" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.STS.MCM_Started)XIO(EStopped)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(Jammed)XIO(Encoder_Fault)XIO(Full)XIO(Stopped_Auto_Restart)OTE(Run_Enabled);]]> <![CDATA[XIC(CTRL.STS.MCM_Started)XIO(EStopped)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(Jammed)XIO(Encoder_Fault)XIO(Full)XIO(Stopped_Auto_Restart)OTE(Run_Enabled);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="26" Type="N"> <Rung Number="25" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Stopped_By_Stop_PB)[OTE(Stopped_By_Station_PB) ,OTE(CTRL.STS.Stopped_By_Station_PB) ];]]> <![CDATA[XIC(CTRL.CMD.Stopped_By_Stop_PB)[OTE(Stopped_By_Station_PB) ,OTE(CTRL.STS.Stopped_By_Station_PB) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="27" Type="N"> <Rung Number="26" Type="N">
<Text> <Text>
<![CDATA[XIC(Run_Enabled)[XIO(Maintenance_Mode) [XIC(CTRL.CMD.Start) ,XIC(MCM.STS.System_Start_Requested) ,XIC(Start_Conveyor) ] ,ONS(Start_ONS) ]XIO(CTRL.CMD.Stop_Require_Start)OTE(Start_Conveyor);]]> <![CDATA[XIC(Run_Enabled)[XIO(Maintenance_Mode) [XIC(CTRL.CMD.Start) ,XIC(MCM.STS.System_Start_Requested) ,XIC(Start_Conveyor) ] ,ONS(Start_ONS) ]XIO(CTRL.CMD.Stop_Require_Start)OTE(Start_Conveyor);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="28" Type="N"> <Rung Number="27" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Mode)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(EStopped)[XIC(HMI.Maintenance.Start_PB_Pressed) ,XIC(Maintenance_Start_Conveyor) ]XIO(HMI.Maintenance.Stop_PB_Pressed)OTE(Maintenance_Start_Conveyor);]]> <![CDATA[XIC(Maintenance_Mode)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(EStopped)[XIC(HMI.Maintenance.Start_PB_Pressed) ,XIC(Maintenance_Start_Conveyor) ]XIO(HMI.Maintenance.Stop_PB_Pressed)OTE(Maintenance_Start_Conveyor);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="29" Type="N"> <Rung Number="28" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Mode)XIC(APF_I.Running)OTE(Maintenance_Running);]]> <![CDATA[XIC(Maintenance_Mode)XIC(APF_I.Running)OTE(Maintenance_Running);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="30" Type="N"> <Rung Number="29" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Mode)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(EStopped)XIC(HMI.Maintenance.Jog_PB_Pressed)OTE(Maintenance_Jog_Mode);]]> <![CDATA[XIC(Maintenance_Mode)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(EStopped)XIC(HMI.Maintenance.Jog_PB_Pressed)OTE(Maintenance_Jog_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="31" Type="N"> <Rung Number="30" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_Conveyor) ,XIC(Maintenance_Start_Conveyor) ,XIC(Maintenance_Jog_Mode) ]MOVE(5000,Start_Delay_Timer.PRE)TON(Start_Delay_Timer,?,?);]]> <![CDATA[[XIC(Start_Conveyor) ,XIC(Maintenance_Start_Conveyor) ,XIC(Maintenance_Jog_Mode) ]MOVE(5000,Start_Delay_Timer.PRE)TON(Start_Delay_Timer,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="32" Type="N"> <Rung Number="31" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_Delay_Timer.TT)COP(Starting_String,Concatenated_String,1)CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log)OTE(Horn_O);]]> <![CDATA[XIC(Start_Delay_Timer.TT)COP(Starting_String,Concatenated_String,1)CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log)OTE(Horn_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="33" Type="N"> <Rung Number="32" Type="N">
<Text> <Text>
<![CDATA[[XIC(CTRL.CMD.Interlock) ,XIC(CTRL.CMD.Run_Up_Enabled) ][OTE(Interlock) ,OTE(CTRL.STS.Interlock) ];]]> <![CDATA[[XIC(CTRL.CMD.Interlock) ,XIC(CTRL.CMD.Run_Up_Enabled) ][OTE(Interlock) ,OTE(CTRL.STS.Interlock) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="34" Type="N"> <Rung Number="33" Type="N">
<Text> <Text>
<![CDATA[XIO(Interlock)OTE(No_Interlock);]]> <![CDATA[XIO(Interlock)OTE(No_Interlock);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="35" Type="N"> <Rung Number="34" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_Delay_Timer.DN)[XIO(Maintenance_Mode) XIC(Interlock) OTE(CTRL.STS.Enabled) GT(CTRL.CMD.Speed_FPM,0) XIO(Power_Saving_Mode) ,XIC(Maintenance_Mode) GT(HMI.Maintenance.Speed_FPM,0) ]OTE(Run);]]> <![CDATA[XIC(Start_Delay_Timer.DN)[XIO(Maintenance_Mode) XIC(Interlock) OTE(CTRL.STS.Enabled) GT(CTRL.CMD.Speed_FPM,0) XIO(Power_Saving_Mode) ,XIC(Maintenance_Mode) GT(HMI.Maintenance.Speed_FPM,0) ]OTE(Run);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="36" Type="N"> <Rung Number="35" Type="N">
<Text> <Text>
<![CDATA[XIO(Run)OTE(APF_O.Stop);]]> <![CDATA[XIO(Run)OTE(APF_O.Stop);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="37" Type="N"> <Rung Number="36" Type="N">
<Text> <Text>
<![CDATA[XIC(Run)[XIO(Maintenance_Conveyor_Direction) OTE(APF_O.DirectionCmd_0) ,XIC(Maintenance_Conveyor_Direction) OTE(APF_O.DirectionCmd_1) ]OTE(APF_O.Start);]]> <![CDATA[XIC(Run)[XIO(Maintenance_Conveyor_Direction) OTE(APF_O.DirectionCmd_0) ,XIC(Maintenance_Conveyor_Direction) OTE(APF_O.DirectionCmd_1) ]OTE(APF_O.Start);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="38" Type="N"> <Rung Number="37" Type="N">
<Text> <Text>
<![CDATA[XIC(APF_I.Fault)[XIC(MCM.STS.VFD_Fault_Reset_Requested) ,XIC(APF_O.ClearFault) ]OTE(APF_O.ClearFault);]]> <![CDATA[XIC(APF_I.Fault)[XIC(MCM.STS.VFD_Fault_Reset_Requested) ,XIC(APF_O.ClearFault) ]OTE(APF_O.ClearFault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="39" Type="N"> <Rung Number="38" Type="N">
<Text> <Text>
<![CDATA[XIO(Maintenance_Mode)OTU(HMI.Maintenance.Direction_PB_Pressed);]]> <![CDATA[XIO(Maintenance_Mode)OTU(HMI.Maintenance.Direction_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="40" Type="N"> <Rung Number="39" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.Maintenance.Direction_PB_Pressed)OTE(Direction);]]> <![CDATA[XIC(HMI.Maintenance.Direction_PB_Pressed)OTE(Direction);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="41" Type="N"> <Rung Number="40" Type="N">
<Text> <Text>
<![CDATA[XIC(Direction)[OTE(Maintenance_Conveyor_Direction) ,OTE(HMI.Maintenance.Direction) ];]]> <![CDATA[XIC(Direction)[OTE(Maintenance_Conveyor_Direction) ,OTE(HMI.Maintenance.Direction) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="42" Type="N"> <Rung Number="41" Type="N">
<Text> <Text>
<![CDATA[NE(HMI.Speed_At_30rev,0)DIV(30,HMI.Speed_At_30rev,Speed_To_REV_Ratio);]]> <![CDATA[NE(HMI.Speed_At_30rev,0)DIV(30,HMI.Speed_At_30rev,Speed_To_REV_Ratio);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="43" Type="N"> <Rung Number="42" Type="N">
<Text> <Text>
<![CDATA[EQ(Speed_To_REV_Ratio,0)OTE(Speed_Not_Set_Up);]]> <![CDATA[EQ(Speed_To_REV_Ratio,0)OTE(Speed_Not_Set_Up);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="44" Type="N"> <Rung Number="43" Type="N">
<Text> <Text>
<![CDATA[XIO(Maintenance_Mode)MOVE(CTRL.CMD.Speed_FPM,CTRL.STS.Requested_Speed)MUL(CTRL.CMD.Speed_FPM,Speed_To_REV_Ratio,Velocity_Command);]]> <![CDATA[XIO(Maintenance_Mode)MOVE(CTRL.CMD.Speed_FPM,CTRL.STS.Requested_Speed)MUL(CTRL.CMD.Speed_FPM,Speed_To_REV_Ratio,Velocity_Command);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="45" Type="N"> <Rung Number="44" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Mode)MOVE(HMI.Maintenance.Speed_FPM,CTRL.STS.Requested_Speed)MUL(HMI.Maintenance.Speed_FPM,Speed_To_REV_Ratio,Velocity_Command);]]> <![CDATA[XIC(Maintenance_Mode)MOVE(HMI.Maintenance.Speed_FPM,CTRL.STS.Requested_Speed)MUL(HMI.Maintenance.Speed_FPM,Speed_To_REV_Ratio,Velocity_Command);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="46" Type="N"> <Rung Number="45" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.Setup_Motor_Speeds)MOVE(30,Velocity_Command);]]> <![CDATA[XIC(MCM.STS.Setup_Motor_Speeds)MOVE(30,Velocity_Command);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="47" Type="N"> <Rung Number="46" Type="N">
<Text> <Text>
<![CDATA[MOVE(Velocity_Command,APF_O.CommandedVelocity);]]> <![CDATA[MOVE(Velocity_Command,APF_O.CommandedVelocity);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="48" Type="N"> <Rung Number="47" Type="N">
<Text> <Text>
<![CDATA[DIV(APF_I.Velocity,Speed_To_REV_Ratio,CTRL.STS.Current_Speed);]]> <![CDATA[DIV(APF_I.Velocity,Speed_To_REV_Ratio,CTRL.STS.Current_Speed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="49" Type="N"> <Rung Number="48" Type="N">
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="50" Type="N"> <Rung Number="49" Type="N">
<Text> <Text>
<![CDATA[MOVE(CTRL.STS.Current_Speed,HMI.FPM)DIV(APF_I.OutputCurrent,100,HMI.Amperage)DIV(APF_I.OutputVoltage,10,HMI.Voltage)DIV(APF_I.Velocity,100,HMI.Velocity);]]> <![CDATA[MOVE(CTRL.STS.Current_Speed,HMI.FPM)DIV(APF_I.OutputCurrent,100,HMI.Amperage)DIV(APF_I.OutputVoltage,10,HMI.Voltage)DIV(APF_I.Velocity,100,HMI.Velocity);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="51" Type="N"> <Rung Number="50" Type="N">
<Comment> <Comment>
<![CDATA[Alarms <![CDATA[Alarms
]]> ]]>
@ -1406,32 +1459,32 @@ Logging every new Disconnect, VFD trip, Comms loss, Jam, or Full condition p
<![CDATA[XIC(Disconnected)OTE(HMI.Alarm.Disconnected);]]> <![CDATA[XIC(Disconnected)OTE(HMI.Alarm.Disconnected);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="52" Type="N"> <Rung Number="51" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]> <![CDATA[XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="53" Type="N"> <Rung Number="52" Type="N">
<Text> <Text>
<![CDATA[XIC(VFD_Faulted)OTE(HMI.Alarm.VFD_Fault);]]> <![CDATA[XIC(VFD_Faulted)OTE(HMI.Alarm.VFD_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="54" Type="N"> <Rung Number="53" Type="N">
<Text> <Text>
<![CDATA[XIO(CTRL.STS.VFD_Faulted)XIC(VFD_Fault_Reset_Required)OTE(HMI.Alarm.VFD_Reset_Required);]]> <![CDATA[XIO(CTRL.STS.VFD_Faulted)XIC(VFD_Fault_Reset_Required)OTE(HMI.Alarm.VFD_Reset_Required);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="55" Type="N"> <Rung Number="54" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Mode)OTE(HMI.Alarm.Maintenance_Mode);]]> <![CDATA[XIC(Maintenance_Mode)OTE(HMI.Alarm.Maintenance_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="56" Type="N"> <Rung Number="55" Type="N">
<Text> <Text>
<![CDATA[MOVE(Communication_Fault_Code,HMI.Communication_Fault_Code)MOVE(VFD_Fault_Code,HMI.VFD_Fault_Code)MOVE(Last_VFD_Fault_Code,HMI.Last_VFD_Fault_Code);]]> <![CDATA[MOVE(Communication_Fault_Code,HMI.Communication_Fault_Code)MOVE(VFD_Fault_Code,HMI.VFD_Fault_Code)MOVE(Last_VFD_Fault_Code,HMI.Last_VFD_Fault_Code);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="57" Type="N"> <Rung Number="56" Type="N">
<Comment> <Comment>
<![CDATA[Colors of Animation <![CDATA[Colors of Animation
]]> ]]>
@ -1440,142 +1493,142 @@ Logging every new Disconnect, VFD trip, Comms loss, Jam, or Full condition p
<![CDATA[XIO(CTRL.STS.MCM_Started)XIO(Running)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(CTRL.STS.MCM_Started)XIO(Running)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="58" Type="N"> <Rung Number="57" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.STS.MCM_Started)XIO(Running)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(CTRL.STS.MCM_Started)XIO(Running)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="59" Type="N"> <Rung Number="58" Type="N">
<Text> <Text>
<![CDATA[XIC(Power_Saving_Mode)MOVE(3,HMI.STATE);]]> <![CDATA[XIC(Power_Saving_Mode)MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="60" Type="N"> <Rung Number="59" Type="N">
<Text> <Text>
<![CDATA[XIC(Running)MOVE(2,HMI.STATE);]]> <![CDATA[XIC(Running)MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="61" Type="N"> <Rung Number="60" Type="N">
<Text> <Text>
<![CDATA[XIC(Encoder_Fault)MOVE(13,HMI.STATE);]]> <![CDATA[XIC(Encoder_Fault)MOVE(13,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="62" Type="N"> <Rung Number="61" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Mode)MOVE(6,HMI.STATE);]]> <![CDATA[XIC(Maintenance_Mode)MOVE(6,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="63" Type="N"> <Rung Number="62" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Mode)XIO(Maintenance_Running)MOVE(6,HMI.STATE);]]> <![CDATA[XIC(Maintenance_Mode)XIO(Maintenance_Running)MOVE(6,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="64" Type="N"> <Rung Number="63" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Running)MOVE(61,HMI.STATE);]]> <![CDATA[XIC(Maintenance_Running)MOVE(61,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="65" Type="N"> <Rung Number="64" Type="N">
<Text> <Text>
<![CDATA[XIC(Maintenance_Jog_Mode)XIC(Start_Delay_Timer.DN)MOVE(61,HMI.STATE);]]> <![CDATA[XIC(Maintenance_Jog_Mode)XIC(Start_Delay_Timer.DN)MOVE(61,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="66" Type="N"> <Rung Number="65" Type="N">
<Text> <Text>
<![CDATA[XIC(Full)MOVE(5,HMI.STATE);]]> <![CDATA[XIC(Full)MOVE(5,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="67" Type="N"> <Rung Number="66" Type="N">
<Text> <Text>
<![CDATA[XIC(Stopped_By_Station_PB)MOVE(14,HMI.STATE);]]> <![CDATA[XIC(Stopped_By_Station_PB)MOVE(14,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="68" Type="N"> <Rung Number="67" Type="N">
<Text> <Text>
<![CDATA[XIC(Disconnected)MOVE(131,HMI.STATE);]]> <![CDATA[XIC(Disconnected)MOVE(131,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="69" Type="N"> <Rung Number="68" Type="N">
<Text> <Text>
<![CDATA[XIC(Jammed)MOVE(4,HMI.STATE);]]> <![CDATA[XIC(Jammed)MOVE(4,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="70" Type="N"> <Rung Number="69" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)MOVE(7,HMI.STATE);]]> <![CDATA[XIC(Communication_Faulted)MOVE(7,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="71" Type="N"> <Rung Number="70" Type="N">
<Text> <Text>
<![CDATA[XIC(VFD_Fault_Reset_Required)MOVE(8,HMI.STATE);]]> <![CDATA[XIC(VFD_Fault_Reset_Required)MOVE(8,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="72" Type="N"> <Rung Number="71" Type="N">
<Text> <Text>
<![CDATA[XIC(EStopped)MOVE(9,HMI.STATE);]]> <![CDATA[XIC(EStopped)MOVE(9,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="73" Type="N"> <Rung Number="72" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.Maintenance.Start_PB_Pressed)MOVE(1,HMI.Maintenance.Buttons_State);]]> <![CDATA[XIC(HMI.Maintenance.Start_PB_Pressed)MOVE(1,HMI.Maintenance.Buttons_State);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="74" Type="N"> <Rung Number="73" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.Maintenance.Stop_PB_Pressed)MOVE(2,HMI.Maintenance.Buttons_State);]]> <![CDATA[XIC(HMI.Maintenance.Stop_PB_Pressed)MOVE(2,HMI.Maintenance.Buttons_State);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="75" Type="N"> <Rung Number="74" Type="N">
<Text> <Text>
<![CDATA[XIO(HMI.Maintenance.Maintenance_Mode)MOVE(0,HMI.Maintenance.Buttons_State);]]> <![CDATA[XIO(HMI.Maintenance.Maintenance_Mode)MOVE(0,HMI.Maintenance.Buttons_State);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="76" Type="N"> <Rung Number="75" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)MOVE(0,Acknowledge);]]> <![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)MOVE(0,Acknowledge);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="77" Type="N"> <Rung Number="76" Type="N">
<Text> <Text>
<![CDATA[[XIC(Disconnected) ONS(Acknowledge_ONS.0) OTU(Acknowledge.0) ,XIC(Disconnected) XIO(Acknowledge.0) COP(Disconnect_Off_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.0) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]> <![CDATA[[XIC(Disconnected) ONS(Acknowledge_ONS.0) OTU(Acknowledge.0) ,XIC(Disconnected) XIO(Acknowledge.0) COP(Disconnect_Off_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.0) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="78" Type="N"> <Rung Number="77" Type="N">
<Text> <Text>
<![CDATA[[XIC(VFD_Faulted) ONS(Acknowledge_ONS.1) OTU(Acknowledge.1) ,XIC(VFD_Faulted) XIO(Acknowledge.1) COP(VFD_Fault_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.1) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]> <![CDATA[[XIC(VFD_Faulted) ONS(Acknowledge_ONS.1) OTU(Acknowledge.1) ,XIC(VFD_Faulted) XIO(Acknowledge.1) COP(VFD_Fault_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.1) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="79" Type="N"> <Rung Number="78" Type="N">
<Text> <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) ];]]> <![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> </Text>
</Rung> </Rung>
<Rung Number="80" Type="N"> <Rung Number="79" Type="N">
<Text> <Text>
<![CDATA[[XIC(Jammed) ONS(Acknowledge_ONS.4) OTU(Acknowledge.4) ,XIC(Jammed) XIO(Acknowledge.4) COP(Jam_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.4) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]> <![CDATA[[XIC(Jammed) ONS(Acknowledge_ONS.4) OTU(Acknowledge.4) ,XIC(Jammed) XIO(Acknowledge.4) COP(Jam_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.4) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="81" Type="N"> <Rung Number="80" Type="N">
<Text> <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) ];]]> <![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> </Text>
</Rung> </Rung>
<Rung Number="82" Type="N"> <Rung Number="81" Type="N">
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="83" Type="N"> <Rung Number="82" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.Maintenance.Start_PB_Pressed)OTU(HMI.Maintenance.Start_PB_Pressed);]]> <![CDATA[XIC(HMI.Maintenance.Start_PB_Pressed)OTU(HMI.Maintenance.Start_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="84" Type="N"> <Rung Number="83" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.Maintenance.Stop_PB_Pressed)OTU(HMI.Maintenance.Stop_PB_Pressed);]]> <![CDATA[XIC(HMI.Maintenance.Stop_PB_Pressed)OTU(HMI.Maintenance.Stop_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="85" Type="N"> <Rung Number="84" Type="N">
<Text> <Text>
<![CDATA[OTU(CTRL.CMD.Start)OTU(CTRL.CMD.Stop_Require_Start)OTU(CTRL.CMD.Stop_Auto_Restart)OTU(CTRL.CMD.Encoder_Fault)OTU(CTRL.CMD.Jammed)OTU(CTRL.CMD.Full)OTU(CTRL.CMD.Run_Up_Enabled)OTU(CTRL.CMD.Stopped_By_Stop_PB)COP(Empty_String,CTRL.CMD.Log,1);]]> <![CDATA[OTU(CTRL.CMD.Start)OTU(CTRL.CMD.Stop_Require_Start)OTU(CTRL.CMD.Stop_Auto_Restart)OTU(CTRL.CMD.Encoder_Fault)OTU(CTRL.CMD.Jammed)OTU(CTRL.CMD.Full)OTU(CTRL.CMD.Run_Up_Enabled)OTU(CTRL.CMD.Stopped_By_Stop_PB)COP(Empty_String,CTRL.CMD.Log,1);]]>
</Text> </Text>
@ -1585,6 +1638,8 @@ Logging every new Disconnect, VFD trip, Comms loss, Jam, or Full condition p
<Routine Name="Prescan" Type="RLL"/> <Routine Name="Prescan" Type="RLL"/>
</Routines> </Routines>
<Dependencies> <Dependencies>
<Dependency Type="DataType" Name="AB:35_APF_Drive:I:1"/>
<Dependency Type="DataType" Name="AB:35_APF_Drive:O:1"/>
<Dependency Type="DataType" Name="UDT_CTRL_VFD"/> <Dependency Type="DataType" Name="UDT_CTRL_VFD"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/> <Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_VFD"/> <Dependency Type="DataType" Name="UDT_HMI_VFD"/>

View File

@ -1,7 +1,93 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_CB_MONITOR" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:34:19 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_CB_MONITOR" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-18T18:10:52.482Z" ContainsContext="true" ExportDate="Wed Jul 30 11:53:27 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_CB_MONITOR" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB1_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB2_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB3_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB4_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB5_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB6_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB7_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_ALARMS9" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB8_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB9_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB10_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB11_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB12_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB13_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB14_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB15_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_ALARMS18" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB16_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB17_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB18_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB19_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB20_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB21_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB22_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB23_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_ALARMS27" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB24_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS27" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB25_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS27" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB26_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS27" BitNumber="2" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_CB_MONITOR" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_CB_MONITOR_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_CB_MONITOR_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_CB_MONITOR_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_CB_MONITOR_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_CB_MONITOR_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_C0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="0" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_CB_MONITOR_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_C0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB1_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB2_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB3_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB4_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB5_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB6_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB7_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_C9" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB8_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB9_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB10_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB11_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB12_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB13_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB14_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB15_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_C18" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB16_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB17_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB18_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB19_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB20_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB21_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB22_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB23_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_C27" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB24_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C27" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB25_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C27" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB26_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C27" BitNumber="2" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
@ -64,105 +150,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_CB_MONITOR" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_CB_MONITOR" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB1_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB2_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB3_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB4_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB5_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB6_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB7_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_ALARMS9" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB8_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB9_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB10_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB11_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB12_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB13_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB14_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB15_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS9" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_ALARMS18" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB16_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB17_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB18_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB19_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB20_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB21_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB22_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB23_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_ALARMS27" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB24_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS27" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB25_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS27" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB26_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS27" BitNumber="2" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_CB_MONITOR" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_CB_MONITOR" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_CB_MONITOR" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_CB_MONITOR" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_CB_MONITOR"/>
<Dependency Type="DataType" Name="UDT_HMI_CB_MONITOR"/>
<Dependency Type="DataType" Name="UDT_CTRL_CB_MONITOR"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_CB_MONITOR" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_CB_MONITOR_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_CB_MONITOR_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_CB_MONITOR_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_CB_MONITOR_STS"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_CB_MONITOR_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_C0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="0" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_CB_MONITOR_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_C0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB1_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB2_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB3_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB4_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB5_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB6_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB7_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C0" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_C9" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB8_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB9_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB10_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB11_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB12_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB13_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB14_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB15_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C9" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_C18" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB16_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB17_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB18_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="CB19_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="CB20_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="CB21_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="CB22_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="CB23_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C18" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_C27" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="CB24_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C27" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="CB25_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C27" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="CB26_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_C27" BitNumber="2" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_CB_MONITOR" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_CB_MONITOR" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="Alarm" DataType="UDT_ALARMS_CB_MONITOR" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members> </Members>
@ -172,8 +160,8 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_CB_MONITOR" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-07-18T13:53:53.330Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-21T10:31:40.507Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Use="Target" Name="AOI_CB_MONITOR" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-07-18T13:53:53.330Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-18T18:10:52.482Z" EditedBy="LCIBATUMI\ilia.gurielidze"
> SoftwareRevision="v36.00">
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description> <Description>
@ -419,164 +407,156 @@
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Monitors the Circuit Breakers in the PDP (Power Distrubution Panel) to warn of issues related with power distrubution to downstream MCMs, DPMs, and VFDs]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(IO_Block_Comm_Fault)[XIC(CB1_I) ,XIC(CB2_I) ,XIC(CB3_I) ,XIC(CB4_I) ,XIC(CB5_I) ,XIC(CB6_I) ,XIC(CB7_I) ,XIC(CB8_I) ,XIC(CB9_I) ,XIC(CB10_I) ,XIC(CB11_I) ,XIC(CB12_I) ,XIC(CB13_I) ,XIC(CB14_I) ,XIC(CB15_I) ,XIC(CB16_I) ,XIC(CB17_I) ,XIC(CB18_I) ,XIC(CB19_I) ,XIC(CB20_I) ,XIC(CB21_I) ,XIC(CB22_I) ,XIC(CB23_I) ,XIC(CB24_I) ,XIC(CB25_I) ,XIC(CB26_I) ]OTE(Power_Branch_Fault);]]> <![CDATA[XIO(IO_Block_Comm_Fault)[XIC(CB1_I) ,XIC(CB2_I) ,XIC(CB3_I) ,XIC(CB4_I) ,XIC(CB5_I) ,XIC(CB6_I) ,XIC(CB7_I) ,XIC(CB8_I) ,XIC(CB9_I) ,XIC(CB10_I) ,XIC(CB11_I) ,XIC(CB12_I) ,XIC(CB13_I) ,XIC(CB14_I) ,XIC(CB15_I) ,XIC(CB16_I) ,XIC(CB17_I) ,XIC(CB18_I) ,XIC(CB19_I) ,XIC(CB20_I) ,XIC(CB21_I) ,XIC(CB22_I) ,XIC(CB23_I) ,XIC(CB24_I) ,XIC(CB25_I) ,XIC(CB26_I) ]OTE(Power_Branch_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIC(Power_Branch_Fault)[OTE(CTRL.STS.Power_Branch_Fault) ,OTL(MCM.CMD.Power_Branch_Fault) ];]]> <![CDATA[XIC(Power_Branch_Fault)[OTE(CTRL.STS.Power_Branch_Fault) ,OTL(MCM.CMD.Power_Branch_Fault) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.CMD.Power_Branch_Fault)XIO(Power_Branch_Fault)OTL(MCM.CMD.Power_Branch_Was_Faulted);]]> <![CDATA[XIC(MCM.CMD.Power_Branch_Fault)XIO(Power_Branch_Fault)OTL(MCM.CMD.Power_Branch_Was_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.Power_Branch_Fault_Reset_Requested)XIO(Power_Branch_Fault)OTU(MCM.CMD.Power_Branch_Fault);]]> <![CDATA[XIC(MCM.STS.Power_Branch_Fault_Reset_Requested)XIO(Power_Branch_Fault)OTU(MCM.CMD.Power_Branch_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(Power_Branch_Fault)OTE(HMI.Alarm.Power_Branch_Fault);]]> <![CDATA[XIC(Power_Branch_Fault)OTE(HMI.Alarm.Power_Branch_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(CB1_I)OTE(HMI.Alarm.CB1_Fault);]]> <![CDATA[XIC(CB1_I)OTE(HMI.Alarm.CB1_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(CB2_I)OTE(HMI.Alarm.CB2_Fault);]]> <![CDATA[XIC(CB2_I)OTE(HMI.Alarm.CB2_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[XIC(CB3_I)OTE(HMI.Alarm.CB3_Fault);]]> <![CDATA[XIC(CB3_I)OTE(HMI.Alarm.CB3_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="8" Type="N">
<Text> <Text>
<![CDATA[XIC(CB4_I)OTE(HMI.Alarm.CB4_Fault);]]> <![CDATA[XIC(CB4_I)OTE(HMI.Alarm.CB4_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="9" Type="N">
<Text> <Text>
<![CDATA[XIC(CB5_I)OTE(HMI.Alarm.CB5_Fault);]]> <![CDATA[XIC(CB5_I)OTE(HMI.Alarm.CB5_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="10" Type="N">
<Text> <Text>
<![CDATA[XIC(CB6_I)OTE(HMI.Alarm.CB6_Fault);]]> <![CDATA[XIC(CB6_I)OTE(HMI.Alarm.CB6_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[XIC(CB7_I)OTE(HMI.Alarm.CB7_Fault);]]> <![CDATA[XIC(CB7_I)OTE(HMI.Alarm.CB7_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="13" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[XIC(CB8_I)OTE(HMI.Alarm.CB8_Fault);]]> <![CDATA[XIC(CB8_I)OTE(HMI.Alarm.CB8_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="14" Type="N"> <Rung Number="13" Type="N">
<Text> <Text>
<![CDATA[XIC(CB9_I)OTE(HMI.Alarm.CB9_Fault);]]> <![CDATA[XIC(CB9_I)OTE(HMI.Alarm.CB9_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="15" Type="N"> <Rung Number="14" Type="N">
<Text> <Text>
<![CDATA[XIC(CB10_I)OTE(HMI.Alarm.CB10_Fault);]]> <![CDATA[XIC(CB10_I)OTE(HMI.Alarm.CB10_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="16" Type="N"> <Rung Number="15" Type="N">
<Text> <Text>
<![CDATA[XIC(CB11_I)OTE(HMI.Alarm.CB11_Fault);]]> <![CDATA[XIC(CB11_I)OTE(HMI.Alarm.CB11_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="17" Type="N"> <Rung Number="16" Type="N">
<Text> <Text>
<![CDATA[XIC(CB12_I)OTE(HMI.Alarm.CB12_Fault);]]> <![CDATA[XIC(CB12_I)OTE(HMI.Alarm.CB12_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="18" Type="N"> <Rung Number="17" Type="N">
<Text> <Text>
<![CDATA[XIC(CB13_I)OTE(HMI.Alarm.CB13_Fault);]]> <![CDATA[XIC(CB13_I)OTE(HMI.Alarm.CB13_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="19" Type="N"> <Rung Number="18" Type="N">
<Text> <Text>
<![CDATA[XIC(CB14_I)OTE(HMI.Alarm.CB14_Fault);]]> <![CDATA[XIC(CB14_I)OTE(HMI.Alarm.CB14_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="20" Type="N"> <Rung Number="19" Type="N">
<Text> <Text>
<![CDATA[XIC(CB15_I)OTE(HMI.Alarm.CB15_Fault);]]> <![CDATA[XIC(CB15_I)OTE(HMI.Alarm.CB15_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="21" Type="N"> <Rung Number="20" Type="N">
<Text> <Text>
<![CDATA[XIC(CB16_I)OTE(HMI.Alarm.CB16_Fault);]]> <![CDATA[XIC(CB16_I)OTE(HMI.Alarm.CB16_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="22" Type="N"> <Rung Number="21" Type="N">
<Text> <Text>
<![CDATA[XIC(CB17_I)OTE(HMI.Alarm.CB17_Fault);]]> <![CDATA[XIC(CB17_I)OTE(HMI.Alarm.CB17_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="23" Type="N"> <Rung Number="22" Type="N">
<Text> <Text>
<![CDATA[XIC(CB18_I)OTE(HMI.Alarm.CB18_Fault);]]> <![CDATA[XIC(CB18_I)OTE(HMI.Alarm.CB18_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="24" Type="N"> <Rung Number="23" Type="N">
<Text> <Text>
<![CDATA[XIC(CB19_I)OTE(HMI.Alarm.CB19_Fault);]]> <![CDATA[XIC(CB19_I)OTE(HMI.Alarm.CB19_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="25" Type="N"> <Rung Number="24" Type="N">
<Text> <Text>
<![CDATA[XIC(CB20_I)OTE(HMI.Alarm.CB20_Fault);]]> <![CDATA[XIC(CB20_I)OTE(HMI.Alarm.CB20_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="26" Type="N"> <Rung Number="25" Type="N">
<Text> <Text>
<![CDATA[XIC(CB21_I)OTE(HMI.Alarm.CB21_Fault);]]> <![CDATA[XIC(CB21_I)OTE(HMI.Alarm.CB21_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="27" Type="N"> <Rung Number="26" Type="N">
<Text> <Text>
<![CDATA[XIC(CB22_I)OTE(HMI.Alarm.CB22_Fault);]]> <![CDATA[XIC(CB22_I)OTE(HMI.Alarm.CB22_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="28" Type="N"> <Rung Number="27" Type="N">
<Text> <Text>
<![CDATA[XIC(CB23_I)OTE(HMI.Alarm.CB23_Fault);]]> <![CDATA[XIC(CB23_I)OTE(HMI.Alarm.CB23_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="29" Type="N"> <Rung Number="28" Type="N">
<Text> <Text>
<![CDATA[XIC(CB24_I)OTE(HMI.Alarm.CB24_Fault);]]> <![CDATA[XIC(CB24_I)OTE(HMI.Alarm.CB24_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="30" Type="N"> <Rung Number="29" Type="N">
<Text> <Text>
<![CDATA[XIC(CB25_I)OTE(HMI.Alarm.CB25_Fault);]]> <![CDATA[XIC(CB25_I)OTE(HMI.Alarm.CB25_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="31" Type="N"> <Rung Number="30" Type="N">
<Text> <Text>
<![CDATA[XIC(CB26_I)OTE(HMI.Alarm.CB26_Fault);]]> <![CDATA[XIC(CB26_I)OTE(HMI.Alarm.CB26_Fault);]]>
</Text> </Text>

View File

@ -1,7 +1,73 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_IO_BLOCK" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:35:05 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--DATA POWER MODULE-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_DPM" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T06:08:04.500Z" ContainsContext="true" ExportDate="Wed Jul 30 11:53:32 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <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"> <DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
@ -64,84 +130,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_IO_BLOCK" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_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 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_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_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_IO_BLOCK"/>
</Dependencies>
</DataType>
<DataType Use="Target" 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 Use="Target" 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 Use="Target" 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 Use="Target" Name="UDT_HMI_IO_BLOCK" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_IO_BLOCK" 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"> <Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
@ -162,8 +151,8 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_DPM" Class="Standard" 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-21T10:32:27.166Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_DPM" Class="Standard" 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"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[DATA POWER MODULE]]> <![CDATA[DATA POWER MODULE]]>
</Description> </Description>
@ -321,38 +310,50 @@ An HMI alarm is generated only when the switch itself is faulted while the EN4TR
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. 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. 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.]]> 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> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[[XIC(Communication_Fault) ,XIC(EN4TR_Communication_Fault) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]> <![CDATA[[XIC(Communication_Fault) ,XIC(EN4TR_Communication_Fault) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)XIO(EN4TR_Communication_Fault)OTE(HMI.Alarm.Communication_Faulted);]]> <![CDATA[XIC(Communication_Faulted)XIO(EN4TR_Communication_Fault)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]> <![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <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) ];]]> <![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> </Text>

View File

@ -1,7 +1,49 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_ENCODER" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:40:53 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--ENCODER-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_ENCODER" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-18T18:31:26.977Z" ContainsContext="true" ExportDate="Wed Jul 30 11:53:37 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_ENCODER" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Encoder_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Encoder Faulted or Conveyor is Running at Low Speed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_ENCODER" Family="NoFamily" Class="User">
<Members>
<Member Name="STS" DataType="UDT_CTRL_ENCODER_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CMD" DataType="UDT_CTRL_ENCODER_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_ENCODER_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_ENCODER_CMD"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_ENCODER_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Temp" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_ENCODER_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Encoder_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Speed is Low or Encoder Faulted]]>
</Description>
</Member>
<Member Name="Conveyor_Running" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor is Running]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -199,60 +241,7 @@ Stopped by Station Stop PushButton]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_ENCODER" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_ENCODER" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Encoder_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Encoder Faulted or Conveyor is Running at Low Speed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_ENCODER" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_ENCODER" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_ENCODER" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_ENCODER" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_ENCODER"/>
<Dependency Type="DataType" Name="UDT_HMI_ENCODER"/>
<Dependency Type="DataType" Name="UDT_CTRL_ENCODER"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_ENCODER" Family="NoFamily" Class="User">
<Members>
<Member Name="STS" DataType="UDT_CTRL_ENCODER_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CMD" DataType="UDT_CTRL_ENCODER_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_ENCODER_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_ENCODER_CMD"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_ENCODER_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Temp" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_ENCODER_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Encoder_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Speed is Low or Encoder Faulted]]>
</Description>
</Member>
<Member Name="Conveyor_Running" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor is Running]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_ENCODER" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Alarm" DataType="UDT_ALARMS_ENCODER" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="Alarm" DataType="UDT_ALARMS_ENCODER" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -263,8 +252,8 @@ Stopped by Station Stop PushButton]]>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_ENCODER" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:20:02.584Z" CreatedBy="Not Available" EditedDate="2025-07-21T10:32:45.127Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_ENCODER" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:20:02.584Z" CreatedBy="Not Available" EditedDate="2025-07-18T18:31:26.977Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[ENCODER]]> <![CDATA[ENCODER]]>
</Description> </Description>
@ -437,20 +426,15 @@ Stopped by Station Stop PushButton]]>
]]> ]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[XIC(Encoder_Pulse_I)CTU(Encoder_Pulse_CTU,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="1" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIC(Encoder_Pulse_I)CTU(Encoder_Pulse_CTU,?,?);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIO(Speed_Timer.DN)TON(Speed_Timer,?,?);]]> <![CDATA[XIO(Speed_Timer.DN)TON(Speed_Timer,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Comment> <Comment>
<![CDATA[Coveyor's Speed Formula <![CDATA[Coveyor's Speed Formula
Inches Per Second * 5 = Feet Per Minute Inches Per Second * 5 = Feet Per Minute
@ -460,27 +444,27 @@ Inches Per Second * 5 = Feet Per Minute
<![CDATA[XIC(Speed_Timer.DN)MUL(Encoder_Pulse_CTU.ACC,5,Conveyor_Speed)CLR(Encoder_Pulse_CTU.ACC);]]> <![CDATA[XIC(Speed_Timer.DN)MUL(Encoder_Pulse_CTU.ACC,5,Conveyor_Speed)CLR(Encoder_Pulse_CTU.ACC);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[MUL(Conveyor.STS.Current_Speed,Low_Speed_In_Percentages,Low_Speed)DIV(Low_Speed,100,Low_Speed);]]> <![CDATA[MUL(Conveyor.STS.Current_Speed,Low_Speed_In_Percentages,Low_Speed)DIV(Low_Speed,100,Low_Speed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[LT(Conveyor_Speed,Low_Speed)TON(Low_Speed_Timer,?,?)XIC(Low_Speed_Timer.DN)XIO(Encoder_Faulted)OTL(Encoder_Faulted);]]> <![CDATA[LT(Conveyor_Speed,Low_Speed)TON(Low_Speed_Timer,?,?)XIC(Low_Speed_Timer.DN)XIO(Encoder_Faulted)OTL(Encoder_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(Conveyor.STS.MCM_JR_PB_Pressed)XIC(Encoder_Faulted)OTU(Encoder_Faulted);]]> <![CDATA[XIC(Conveyor.STS.MCM_JR_PB_Pressed)XIC(Encoder_Faulted)OTU(Encoder_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(Encoder_Faulted)MOVE(' Encoder Fault',Concatenated_String)CONCAT(HMI.Name,Concatenated_String,Conveyor.CMD.Log)[OTE(CTRL.STS.Encoder_Fault) ,OTL(Conveyor.CMD.Encoder_Fault) ,OTL(Upstream_Conveyor.CMD.Stop_Auto_Restart) ,OTL(Downstream_Conveyor.CMD.Stop_Auto_Restart) ];]]> <![CDATA[XIC(Encoder_Faulted)MOVE(' Encoder Fault',Concatenated_String)CONCAT(HMI.Name,Concatenated_String,Conveyor.CMD.Log)[OTE(CTRL.STS.Encoder_Fault) ,OTL(Conveyor.CMD.Encoder_Fault) ,OTL(Upstream_Conveyor.CMD.Stop_Auto_Restart) ,OTL(Downstream_Conveyor.CMD.Stop_Auto_Restart) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[XIC(Encoder_Faulted)OTE(HMI.Alarm.Encoder_Faulted);]]> <![CDATA[XIC(Encoder_Faulted)OTE(HMI.Alarm.Encoder_Faulted);]]>
</Text> </Text>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?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 Jul 28 12:34:36 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_EXTENDO" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T06:08:28.728Z" ContainsContext="true" ExportDate="Wed Jul 30 11:53:41 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="Caljan_PNMF_UDT_Input" Family="NoFamily" Class="User"> <DataType Name="Caljan_PNMF_UDT_Input" Family="NoFamily" Class="User">
@ -200,6 +200,66 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Name="UDT_ALARMS_EXTENDO" 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>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Is Full]]>
</Description>
</Member>
<Member Name="Extendo_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Faulted]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_EXTENDO" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_EXTENDO_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_EXTENDO_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_EXTENDO_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Interlock" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Downstream Is Running]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_EXTENDO_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Interlock" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Downstream of this conveyor is avalaible to accept packages]]>
</Description>
</Member>
<Member Name="Allow_Loading" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![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"> <DataType Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="STS" DataType="UDT_CTRL_IO_BLOCK_STS" 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"/>
@ -317,79 +377,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_EXTENDO" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_EXTENDO" 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>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Is Full]]>
</Description>
</Member>
<Member Name="Extendo_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Extendo Faulted]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_EXTENDO" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_EXTENDO" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_EXTENDO" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_EXTENDO" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_HMI_EXTENDO"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_EXTENDO" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_EXTENDO_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_EXTENDO_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO_STS"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_EXTENDO_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Interlock" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Downstream Is Running]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_EXTENDO_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_E0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Interlock" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Downstream of this conveyor is avalaible to accept packages]]>
</Description>
</Member>
<Member Name="Allow_Loading" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_E0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![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">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_EXTENDO" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="Alarm" DataType="UDT_ALARMS_EXTENDO" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
@ -442,8 +430,8 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_EXTENDO" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-21T10:34:11.411Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Use="Target" Name="AOI_EXTENDO" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-11T06:08:28.728Z" EditedBy="LCIBATUMI\ilia.gurielidze"
> SoftwareRevision="v36.00">
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description> <Description>
@ -800,133 +788,183 @@ If loading is not allowed the stop bit Caljan_Input.Belt_Stop is asserted.
Running feedback Running feedback
When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the state to CTRL.STS.Running. 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> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[COP(Extendo_I,Caljan_Input,1)COP(Extendo_O,Caljan_Output,1);]]> <![CDATA[COP(Extendo_I,Caljan_Input,1)COP(Extendo_O,Caljan_Output,1);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[OTE(Caljan_Input.Enable_Ethernet_Control);]]> <![CDATA[OTE(Caljan_Input.Enable_Ethernet_Control);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Interlock)[OTE(Interlock) ,OTE(CTRL.STS.Interlock) ];]]> <![CDATA[XIC(CTRL.CMD.Interlock)[OTE(Interlock) ,OTE(CTRL.STS.Interlock) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIO(Interlock)OTE(No_Interlock);]]> <![CDATA[XIO(Interlock)OTE(No_Interlock);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Belt_Full)OTE(Full);]]> <![CDATA[XIC(Caljan_Output.Belt_Full)OTE(Full);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.ConnectionFaulted)OTE(Communication_Faulted);]]> <![CDATA[XIC(Caljan_Output.ConnectionFaulted)OTE(Communication_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Healthy)OTE(No_Faults);]]> <![CDATA[XIC(Caljan_Output.Healthy)OTE(No_Faults);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[XIO(No_Faults)[OTE(Extendo_Faulted) ,OTL(Extendo_Faulted_Reset_Required) ];]]> <![CDATA[XIO(No_Faults)[OTE(Extendo_Faulted) ,OTL(Extendo_Faulted_Reset_Required) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="8" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Front_EMS)OTE(Loading_Mode);]]> <![CDATA[XIC(Caljan_Output.Front_EMS)OTE(Loading_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="9" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Customer_EMS)OTE(Unloading_Mode);]]> <![CDATA[XIC(Caljan_Output.Customer_EMS)OTE(Unloading_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="10" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Belt_Accumulation)OTE(Power_Saving_Mode);]]> <![CDATA[XIC(Caljan_Output.Belt_Accumulation)OTE(Power_Saving_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Rear_EMS)OTE(Estopped);]]> <![CDATA[XIC(Caljan_Output.Rear_EMS)OTE(Estopped);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="13" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Aopen_Active)OTE(Aopen_Active);]]> <![CDATA[XIC(Caljan_Output.Aopen_Active)OTE(Aopen_Active);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="14" Type="N"> <Rung Number="13" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Fully_Retracted)OTE(Fully_Retracted);]]> <![CDATA[XIC(Caljan_Output.Fully_Retracted)OTE(Fully_Retracted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="15" Type="N"> <Rung Number="14" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Fully_Extended)OTE(Fully_Extended);]]> <![CDATA[XIC(Caljan_Output.Fully_Extended)OTE(Fully_Extended);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="16" Type="N"> <Rung Number="15" Type="N">
<Text> <Text>
<![CDATA[XIO(MCM.STS.System_Started)OTE(MCM_Not_Started);]]> <![CDATA[XIO(MCM.STS.System_Started)OTE(MCM_Not_Started);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="17" Type="N"> <Rung Number="16" Type="N">
<Text> <Text>
<![CDATA[XIC(DPM.STS.Communication_Faulted)OTE(DPM_Communication_Faulted);]]> <![CDATA[XIC(DPM.STS.Communication_Faulted)OTE(DPM_Communication_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="18" Type="N"> <Rung Number="17" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.System_Started)XIO(DPM_Communication_Faulted)XIC(Interlock)[OTE(Allow_Loading) ,OTE(CTRL.STS.Allow_Loading) ,OTE(Caljan_Input.Allow_Loading) ,OTE(Caljan_Input.Belt_Start_Loading) ];]]> <![CDATA[XIC(MCM.STS.System_Started)XIO(DPM_Communication_Faulted)XIC(Interlock)[OTE(Allow_Loading) ,OTE(CTRL.STS.Allow_Loading) ,OTE(Caljan_Input.Allow_Loading) ,OTE(Caljan_Input.Belt_Start_Loading) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="19" Type="N"> <Rung Number="18" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.PEC_Override_PB)OTE(Caljan_Input.PEC_Override);]]> <![CDATA[XIC(HMI.PEC_Override_PB)OTE(Caljan_Input.PEC_Override);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="20" Type="N"> <Rung Number="19" Type="N">
<Text> <Text>
<![CDATA[XIO(Allow_Loading)OTE(Caljan_Input.Belt_Stop);]]> <![CDATA[XIO(Allow_Loading)OTE(Caljan_Input.Belt_Stop);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="21" Type="N"> <Rung Number="20" Type="N">
<Text> <Text>
<![CDATA[XIC(Caljan_Output.Ready_to_Receive)[OTE(Running) ,OTE(CTRL.STS.Running) ];]]> <![CDATA[XIC(Caljan_Output.Ready_to_Receive)[OTE(Running) ,OTE(CTRL.STS.Running) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="22" Type="N"> <Rung Number="21" Type="N">
<Text> <Text>
<![CDATA[[XIC(HMI.Extendo_Faults_Reset_PB) ,XIC(MCM.STS.VFD_Fault_Reset_Requested) ][OTE(Caljan_Input.Reset_Command) ,OTU(Extendo_Faulted_Reset_Required) ];]]> <![CDATA[[XIC(HMI.Extendo_Faults_Reset_PB) ,XIC(MCM.STS.VFD_Fault_Reset_Requested) ][OTE(Caljan_Input.Reset_Command) ,OTU(Extendo_Faulted_Reset_Required) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="23" Type="N"> <Rung Number="22" Type="N">
<Text> <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) ];]]> <![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> </Text>
</Rung> </Rung>
<Rung Number="24" Type="N"> <Rung Number="23" Type="N">
<Text> <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) ];]]> <![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> </Text>
</Rung> </Rung>
<Rung Number="25" Type="N"> <Rung Number="24" Type="N">
<Comment> <Comment>
<![CDATA[Alarms <![CDATA[Alarms
]]> ]]>
@ -935,17 +973,17 @@ When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the
<![CDATA[XIC(Full)OTE(HMI.Alarm.Full);]]> <![CDATA[XIC(Full)OTE(HMI.Alarm.Full);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="26" Type="N"> <Rung Number="25" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]> <![CDATA[XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="27" Type="N"> <Rung Number="26" Type="N">
<Text> <Text>
<![CDATA[XIC(Extendo_Faulted)OTE(HMI.Alarm.Extendo_Faulted);]]> <![CDATA[XIC(Extendo_Faulted)OTE(HMI.Alarm.Extendo_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="28" Type="N"> <Rung Number="27" Type="N">
<Comment> <Comment>
<![CDATA[Info <![CDATA[Info
@ -955,32 +993,32 @@ When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the
<![CDATA[XIC(Loading_Mode)OTE(HMI.Loading_Mode);]]> <![CDATA[XIC(Loading_Mode)OTE(HMI.Loading_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="29" Type="N"> <Rung Number="28" Type="N">
<Text> <Text>
<![CDATA[XIC(Unloading_Mode)OTE(HMI.Unloading_Mode);]]> <![CDATA[XIC(Unloading_Mode)OTE(HMI.Unloading_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="30" Type="N"> <Rung Number="29" Type="N">
<Text> <Text>
<![CDATA[XIC(Aopen_Active)OTE(HMI.Aopen_Active);]]> <![CDATA[XIC(Aopen_Active)OTE(HMI.Aopen_Active);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="31" Type="N"> <Rung Number="30" Type="N">
<Text> <Text>
<![CDATA[XIC(Power_Saving_Mode)OTE(HMI.Power_Saving_Mode);]]> <![CDATA[XIC(Power_Saving_Mode)OTE(HMI.Power_Saving_Mode);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="32" Type="N"> <Rung Number="31" Type="N">
<Text> <Text>
<![CDATA[XIC(Fully_Retracted)OTE(HMI.Fully_Retracted);]]> <![CDATA[XIC(Fully_Retracted)OTE(HMI.Fully_Retracted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="33" Type="N"> <Rung Number="32" Type="N">
<Text> <Text>
<![CDATA[XIC(Fully_Extended)OTE(HMI.Fully_Extended);]]> <![CDATA[XIC(Fully_Extended)OTE(HMI.Fully_Extended);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="34" Type="N"> <Rung Number="33" Type="N">
<Comment> <Comment>
<![CDATA[State <![CDATA[State
]]> ]]>
@ -989,32 +1027,32 @@ When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the
<![CDATA[XIO(Allow_Loading)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(Allow_Loading)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="35" Type="N"> <Rung Number="34" Type="N">
<Text> <Text>
<![CDATA[XIC(Allow_Loading)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(Allow_Loading)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="36" Type="N"> <Rung Number="35" Type="N">
<Text> <Text>
<![CDATA[XIC(Running)MOVE(2,HMI.STATE);]]> <![CDATA[XIC(Running)MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="37" Type="N"> <Rung Number="36" Type="N">
<Text> <Text>
<![CDATA[XIC(Full)MOVE(3,HMI.STATE);]]> <![CDATA[XIC(Full)MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="38" Type="N"> <Rung Number="37" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)MOVE(4,HMI.STATE);]]> <![CDATA[XIC(Communication_Faulted)MOVE(4,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="39" Type="N"> <Rung Number="38" Type="N">
<Text> <Text>
<![CDATA[XIC(Extendo_Faulted)MOVE(5,HMI.STATE);]]> <![CDATA[XIC(Extendo_Faulted)MOVE(5,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="40" Type="N"> <Rung Number="39" Type="N">
<Text> <Text>
<![CDATA[XIC(Estopped)MOVE(6,HMI.STATE);]]> <![CDATA[XIC(Estopped)MOVE(6,HMI.STATE);]]>
</Text> </Text>
@ -1027,6 +1065,8 @@ When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the
<Dependency Type="DataType" Name="Caljan_PNMF_UDT_Output"/> <Dependency Type="DataType" Name="Caljan_PNMF_UDT_Output"/>
<Dependency Type="DataType" Name="UDT_CTRL_EXTENDO"/> <Dependency Type="DataType" Name="UDT_CTRL_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/> <Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="_04E3:6ES7158_3MU10_0XA0_DD7B81FB:O:0"/>
<Dependency Type="DataType" Name="_04E3:6ES7158_3MU10_0XA0_F94A7390:I:0"/>
<Dependency Type="DataType" Name="UDT_HMI_EXTENDO"/> <Dependency Type="DataType" Name="UDT_HMI_EXTENDO"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/> <Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies> </Dependencies>

View File

@ -1,7 +1,68 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PE" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:35:52 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--FULL PHOTOEYE-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_FPE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T10:05:07.475Z" ContainsContext="true" ExportDate="Wed Jul 30 11:53:50 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_PE_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_PE_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_PE_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_PE_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_PE_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Dynamic_Jam" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Upstream Conveyor is Jammed while Downstream Conveyor is not Blocked for amount of time considered to be Dynamic Jam]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_PE_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE]]>
</Description>
</Member>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Chute_Roller_PE" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE belongs to Chute/Roller]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -199,79 +260,7 @@ Stopped by Station Stop PushButton]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_PE" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_FPE" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_FPE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_FPE"/>
<Dependency Type="DataType" Name="UDT_HMI_PE"/>
<Dependency Type="DataType" Name="UDT_CTRL_PE"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_PE_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_PE_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_PE_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_PE_STS"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_PE_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Dynamic_Jam" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Upstream Conveyor is Jammed while Downstream Conveyor is not Blocked for amount of time considered to be Dynamic Jam]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_PE_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE]]>
</Description>
</Member>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Chute_Roller_PE" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE belongs to Chute/Roller]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_PE" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -291,8 +280,8 @@ Stopped by Station Stop PushButton]]>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FPE" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:20:02.584Z" CreatedBy="Not Available" EditedDate="2025-07-21T10:36:33.010Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_FPE" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:20:02.584Z" CreatedBy="Not Available" EditedDate="2025-07-11T10:05:07.475Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[FULL PHOTOEYE]]> <![CDATA[FULL PHOTOEYE]]>
</Description> </Description>
@ -425,38 +414,62 @@ Blocked turns on whenever the beam is broken (Clear_I false) and the parent netw
While the conveyor is running in automatic mode (not maintenance), a timer with preset HMI.TimeOut * 1000 ms runs whenever Blocked is true. While the conveyor is running in automatic mode (not maintenance), a timer with preset HMI.TimeOut * 1000 ms runs whenever Blocked is true.
When the timer finishes the bit Full latches and is echoed to CTRL.STS.Full. When the timer finishes the bit Full latches and is echoed to CTRL.STS.Full.
The blue beacon segment (Beacon_Light_O) lights solid while Full is latched.]]> The blue beacon segment (Beacon_Light_O) lights solid while Full is latched.
On the first scan of each full condition the routine writes “<Device HMI.Name> FULL” into Conveyor.CMD.Log and increments the log count.
The entry self-clears when the same line appears in MCM.STS.Acknowledge_Log; an Unacknowledge All Logs command re-arms the latch so the next pile-up is re-logged.
HMI.Alarm.Full is asserted for the duration of the full condition.
Command bits (received)
Clear_I photo-eye input
Parent_Comm_Faulted
Conveyor.STS.Maintenance_Mode
HMI.TimeOut
MCM.STS.Unacknowledge_All_Logs
MCM.STS.Acknowledge_Log
Status bits (set)
CTRL.STS.Blocked
CTRL.STS.Full
Blocked
Full
Beacon_Light_O (blue)
HMI bits
HMI.TimeOut seconds before a block becomes full
HMI.Alarm.Full true while Full is latched
Alarm bits
HMI.Alarm.Full raised whenever Full is true.
]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[MUL(HMI.TimeOut,1000,Full_Timer.PRE);]]> <![CDATA[MUL(HMI.TimeOut,1000,Full_Timer.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Clear_I)XIO(Parent_Comm_Faulted)[OTE(Blocked) ,OTE(CTRL.STS.Blocked) ];]]> <![CDATA[XIO(Clear_I)XIO(Parent_Comm_Faulted)[OTE(Blocked) ,OTE(CTRL.STS.Blocked) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIO(Conveyor.STS.Maintenance_Mode)XIC(Blocked)TON(Full_Timer,?,?)XIC(Full_Timer.DN)[OTE(Full) ,OTE(CTRL.STS.Full) ];]]> <![CDATA[XIO(Conveyor.STS.Maintenance_Mode)XIC(Blocked)TON(Full_Timer,?,?)XIC(Full_Timer.DN)[OTE(Full) ,OTE(CTRL.STS.Full) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Full)[OTL(Conveyor.CMD.Full) ,OTE(Beacon_Light_O) ];]]> <![CDATA[XIC(Full)[OTL(Conveyor.CMD.Full) ,OTE(Beacon_Light_O) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(Full)MOVE(' FULL',Concatenated_String)CONCAT(HMI.Name,Concatenated_String,Conveyor.CMD.Log);]]> <![CDATA[XIC(Full)MOVE(' FULL',Concatenated_String)CONCAT(HMI.Name,Concatenated_String,Conveyor.CMD.Log);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(Full)OTE(HMI.Alarm.Full);]]> <![CDATA[XIC(Full)OTE(HMI.Alarm.Full);]]>
</Text> </Text>

View File

@ -1,7 +1,72 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_IO_BLOCK" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:34:54 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_IO_BLOCK" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T06:08:01.895Z" ContainsContext="true" ExportDate="Wed Jul 30 11:53:57 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <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"> <DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
@ -64,84 +129,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_IO_BLOCK" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_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 Use="Target" Name="UDT_AOI_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_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"/>
<Member Name="CTRL" DataType="UDT_CTRL_IO_BLOCK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
</Dependencies>
</DataType>
<DataType Use="Target" 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 Use="Target" 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 Use="Target" 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 Use="Target" Name="UDT_HMI_IO_BLOCK" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_IO_BLOCK" 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"> <Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
@ -162,8 +150,8 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_IO_BLOCK" Class="Standard" 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-21T10:37:25.465Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_IO_BLOCK" Class="Standard" 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:01.895Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description> <Description>
@ -293,38 +281,53 @@ If either link is lost, IOBlock sets Communication_Faulted and mirrors that stat
HMI.STATE is 0 when communications are healthy and 1 whenever any link (local or parent) is lost. HMI.STATE is 0 when communications are healthy and 1 whenever any link (local or parent) is lost.
An HMI alarm is produced only when IOBlock itself is faulted while the parent remains healthy, keeping alarms specific to the failing level. An HMI alarm is produced only when IOBlock itself is faulted while the parent remains healthy, keeping alarms specific to the failing level.
When a loss occurs, the routine constructs a log line such as “<Block HMI.Name> — Lost Communication”, places it in MCM.CMD.Log, and increments MCM.CMD.Log_Quantity.
If that exact line later appears in MCM.STS.Acknowledge_Log, IOBlock latches Acknowledge and clears the entry to keep the log concise.
The command MCM.STS.Unacknowledge_All_Logs resets the latch so the next fault generates a fresh message.
Command bits
The routine receives Communication_Fault from its own interface monitor.
The routine receives Parent.STS.Communication_Faulted from the immediate upstream device.
The routine receives MCM.STS.Unacknowledge_All_Logs to clear the acknowledge latch.
Status bits
The routine sets Communication_Faulted when either the local or parent link is down.
The routine sets CTRL.STS.Communication_Faulted with the same value.
HMI bits
The HMI displays HMI.STATE as 0 while links are healthy and 1 while any link is lost.
The HMI raises HMI.Alarm.Communication_Faulted only while Communication_Faulted is true and Parent.STS.Communication_Faulted is false.
Alarm bits
The system raises HMI.Alarm.Communication_Faulted whenever IOBlock itself loses communication and the parent link is still online.
]]> ]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[[XIC(Communication_Fault) ,XIC(Parent.STS.Communication_Faulted) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]> <![CDATA[[XIC(Communication_Fault) ,XIC(Parent.STS.Communication_Faulted) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)XIO(Parent.STS.Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]> <![CDATA[XIC(Communication_Faulted)XIO(Parent.STS.Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]> <![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <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) ];]]> <![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> </Text>

View File

@ -1,7 +1,68 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PE" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:35:59 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--JAM PHOTOEYE-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_JPE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T06:08:02.513Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:00 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_PE_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_PE_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_PE_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_PE_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_PE_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Dynamic_Jam" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Upstream Conveyor is Jammed while Downstream Conveyor is not Blocked for amount of time considered to be Dynamic Jam]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_PE_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE]]>
</Description>
</Member>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Chute_Roller_PE" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE belongs to Chute/Roller]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -270,79 +331,7 @@ Stopped by Station Stop PushButton]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_PE" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_JPE" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_JPE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_JPE"/>
<Dependency Type="DataType" Name="UDT_HMI_PE"/>
<Dependency Type="DataType" Name="UDT_CTRL_PE"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_PE" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_PE_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_PE_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_PE_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_PE_STS"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_PE_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Dynamic_Jam" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Upstream Conveyor is Jammed while Downstream Conveyor is not Blocked for amount of time considered to be Dynamic Jam]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_PE_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_P0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE]]>
</Description>
</Member>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Full" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor/Chute]]>
</Description>
</Member>
<Member Name="Chute_Roller_PE" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_P0" BitNumber="3" ExternalAccess="Read/Write">
<Description>
<![CDATA[PE belongs to Chute/Roller]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_PE" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_PE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -362,7 +351,7 @@ Stopped by Station Stop PushButton]]>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-07-21T10:35:04.128Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" 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"
> >
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -440,29 +429,21 @@ Stopped by Station Stop PushButton]]>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Toggles EnableOut at the intervas set by On and Off]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]> <![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]> <![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]> <![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]> <![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text> </Text>
@ -471,8 +452,8 @@ Stopped by Station Stop PushButton]]>
</Routine> </Routine>
</Routines> </Routines>
</AddOnInstructionDefinition> </AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_JPE" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:20:02.584Z" CreatedBy="Not Available" EditedDate="2025-07-21T10:38:17.735Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_JPE" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:20:02.584Z" CreatedBy="Not Available" EditedDate="2025-07-11T06:08:02.513Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[JAM PHOTOEYE]]> <![CDATA[JAM PHOTOEYE]]>
</Description> </Description>
@ -671,77 +652,104 @@ Once the beam clears (but before the reset arrives) the beacon stays solid on.
When the Jam is cleared the beacon turns off. When the Jam is cleared the beacon turns off.
Logging
On the first scan of each Jam the AOI writes “<Device HMI.Name> JAM” into both Conveyor.CMD.Log and Station.CMD.Log and increments each logs quantity.
The entry self-clears when the same text appears in MCM.STS.Acknowledge_Log; MCM Unacknowledge All Logs re-arms the latch so a repeat Jam is re-logged.
Run-up enable Run-up enable
If the downstream photo-eye (Run_Up_PE) is clear and the conveyor interlock is on, the bit Run_Up latches and the AOI asserts Conveyor.CMD.Run_Up_Enabled so the upstream conveyor can empty itself. If the downstream photo-eye (Run_Up_PE) is clear and the conveyor interlock is on, the bit Run_Up latches and the AOI asserts Conveyor.CMD.Run_Up_Enabled so the upstream conveyor can empty itself.
Run Up unlatches if the eye blocks again or the Jam re-appears. Run Up unlatches if the eye blocks again or the Jam re-appears.
Command bits (received)
CTRL.CMD.Jammed
CTRL.CMD.Sorter_JPE_Blocked (Run_Up_PE)
Conveyor.STS.Running
Conveyor.STS.Maintenance_Mode
Conveyor.STS.Interlock
Conveyor.STS.MCM_Started
Parent_Comm_Faulted
Station.STS.Jam_Reset
HMI.TimeOut
MCM.STS.Unacknowledge_All_Logs
MCM.STS.Acknowledge_Log
Status bits (set)
CTRL.STS.Blocked
CTRL.STS.Jammed
Conveyor.CMD.Jammed
Station.CMD.Jammed
Conveyor.CMD.Run_Up_Enabled
Beacon_Light_O (flash/solid/off)
HMI bits
HMI.TimeOut (seconds before a block becomes a Jam)
HMI.STATE is not used; the HMI shows live beacon and alarm indicators.
HMI.Alarm.Jammed is set while Jammed is true.
Alarm bits
HMI.Alarm.Jammed asserted whenever Jammed is latched.
]]> ]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[MUL(HMI.TimeOut,1000,Jam_Timer.PRE);]]> <![CDATA[MUL(HMI.TimeOut,1000,Jam_Timer.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIC(Station.STS.Jam_Reset)XIC(Jammed)XIO(Blocked)OTU(Jammed);]]> <![CDATA[XIC(Station.STS.Jam_Reset)XIC(Jammed)XIO(Blocked)OTU(Jammed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIO(Clear_I)XIO(Parent_Comm_Faulted)[OTE(Blocked) ,OTE(CTRL.STS.Blocked) ];]]> <![CDATA[XIO(Clear_I)XIO(Parent_Comm_Faulted)[OTE(Blocked) ,OTE(CTRL.STS.Blocked) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIO(Conveyor.STS.Maintenance_Mode)[XIC(Blocked) [XIC(Conveyor.STS.Running) ,XIC(Jam_Timer.DN) ] TON(Jam_Timer,?,?) ,XIC(Jam_Timer.DN) OTL(Jammed) ];]]> <![CDATA[XIO(Conveyor.STS.Maintenance_Mode)[XIC(Blocked) [XIC(Conveyor.STS.Running) ,XIC(Jam_Timer.DN) ] TON(Jam_Timer,?,?) ,XIC(Jam_Timer.DN) OTL(Jammed) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(Jammed)[OTL(Conveyor.CMD.Jammed) ,OTL(Station.CMD.Jammed) ,OTE(CTRL.STS.Jammed) ];]]> <![CDATA[XIC(Jammed)[OTL(Conveyor.CMD.Jammed) ,OTL(Station.CMD.Jammed) ,OTE(CTRL.STS.Jammed) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(Jammed)[MOVE(' JAM',Jam_String) CONCAT(HMI.Name,Concatenated_String,Conveyor.CMD.Log) ,MOVE(' JAM',Concatenated_String) CONCAT(HMI.Name,Concatenated_String,Station.CMD.Log) ];]]> <![CDATA[XIC(Jammed)[MOVE(' JAM',Jam_String) CONCAT(HMI.Name,Concatenated_String,Conveyor.CMD.Log) ,MOVE(' JAM',Concatenated_String) CONCAT(HMI.Name,Concatenated_String,Station.CMD.Log) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIO(Jammed)[ONS(ONS) OTU(Beacon_Light_O) ,JMP(JMP) ];]]> <![CDATA[XIO(Jammed)[ONS(ONS) OTU(Beacon_Light_O) ,JMP(JMP) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[XIC(Conveyor.STS.MCM_Started)XIC(Jammed)[XIC(Blocked) AOI_FLIP_FLOP(Flip_Flop,500,500) ,XIO(Blocked) ]OTE(Beacon_Light_O);]]> <![CDATA[XIC(Conveyor.STS.MCM_Started)XIC(Jammed)[XIC(Blocked) AOI_FLIP_FLOP(Flip_Flop,500,500) ,XIO(Blocked) ]OTE(Beacon_Light_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="8" Type="N">
<Text> <Text>
<![CDATA[LBL(JMP)NOP();]]> <![CDATA[LBL(JMP)NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="9" Type="N">
<Text> <Text>
<![CDATA[XIC(Run_Up_PE)XIC(Conveyor.STS.Interlock)OTL(Run_Up);]]> <![CDATA[XIC(Run_Up_PE)XIC(Conveyor.STS.Interlock)OTL(Run_Up);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="10" Type="N">
<Text> <Text>
<![CDATA[[XIC(Blocked) ,XIO(Run_Up_PE) ]OTU(Run_Up);]]> <![CDATA[[XIC(Blocked) ,XIO(Run_Up_PE) ]OTU(Run_Up);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[XIC(Run_Up)OTL(Conveyor.CMD.Run_Up_Enabled);]]> <![CDATA[XIC(Run_Up)OTL(Conveyor.CMD.Run_Up_Enabled);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="13" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[XIC(Jammed)OTE(HMI.Alarm.Jammed);]]> <![CDATA[XIC(Jammed)OTE(HMI.Alarm.Jammed);]]>
</Text> </Text>

View File

@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_MCM" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:35:22 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--MAIN CONTROL MODULE-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_MCM" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T10:00:19.267Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:10 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_MCM" Family="NoFamily" Class="User"> <DataType Name="UDT_ALARMS_MCM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStop_PB_Pressed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="EStop_PB_Pressed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
@ -66,19 +67,7 @@ Faulted]]>
<Member Name="EStopped_Locally" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="3" ExternalAccess="Read/Write"/> <Member Name="EStopped_Locally" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS18" BitNumber="3" ExternalAccess="Read/Write"/>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_AOI_MCM" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_MCM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_MCM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_MCM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_MCM"/>
<Dependency Type="DataType" Name="UDT_HMI_MCM"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -96,7 +85,7 @@ Faulted]]>
<Dependency Type="DataType" Name="UDT_CTRL_MCM_STS"/> <Dependency Type="DataType" Name="UDT_CTRL_MCM_STS"/>
</Dependencies> </Dependencies>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_MCM_CMD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_MCM_CMD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <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="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
@ -117,7 +106,7 @@ Faulted]]>
<Member Name="Low_Air_Pressure_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="4" 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> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_MCM_STS" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_MCM_STS" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <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="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
@ -140,7 +129,7 @@ Faulted]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_HMI_MCM" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_MCM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_MCM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_MCM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -180,7 +169,7 @@ Faulted]]>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-07-21T10:35:04.128Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" 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"
> >
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -258,29 +247,21 @@ Faulted]]>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Toggles EnableOut at the intervas set by On and Off]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]> <![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]> <![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]> <![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]> <![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text> </Text>
@ -289,8 +270,8 @@ Faulted]]>
</Routine> </Routine>
</Routines> </Routines>
</AddOnInstructionDefinition> </AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_MCM" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2018-11-09T20:08:51.991Z" CreatedBy="Rob-PC\Rob" EditedDate="2025-07-21T10:40:02.100Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_MCM" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2018-11-09T20:08:51.991Z" CreatedBy="Rob-PC\Rob" EditedDate="2025-07-11T10:00:19.267Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[MAIN CONTROL MODULE]]> <![CDATA[MAIN CONTROL MODULE]]>
</Description> </Description>
@ -708,7 +689,9 @@ Faulted]]>
<Comment> <Comment>
<![CDATA[MCM Main Control Module <![CDATA[MCM Main Control Module
This module acts as the central logbook and primary interface for the subsystem. This module acts as the central logbook and primary interfac for the subsystem.
Every AOI that detects a fault concatenates an explanatory string ( “<Device> — <Fault Text>” ) and pushes it into the MCM control log. The log word CTRL.CMD.Log carries the message, while CTRL.CMD.Log_Quantity increments the running count. The MCM mirrors both values to CTRL.STS.Log and CTRL.STS.Log_Quantity so the operator panel can display them.
At the same time, the MCM keeps an internal Acknowledge latch: each AOI pulses Un-acknowledge so that any new or persisting fault keeps resurfacing until the operator cycles through and acknowledges it. This ensures that fresh problems never scroll off the list unnoticed.
The module asserts System_Started whenever a start command is present and all interlocks—Stop command, every E-Stop, and the fire relay—are healthy; both coils drop the instant any interlock fails. The module asserts System_Started whenever a start command is present and all interlocks—Stop command, every E-Stop, and the fire relay—are healthy; both coils drop the instant any interlock fails.
@ -722,148 +705,220 @@ Indicator lamps behave as follows:
Each push-button transmits a four-state value to the HMI: state 1 idle/dark, state 2 lit, state 3 pressed-lit, and state 4 pressed-dark. Each push-button transmits a four-state value to the HMI: state 1 idle/dark, state 2 lit, state 3 pressed-lit, and state 4 pressed-dark.
Start_PB_LT_O lights whenever the system is running. Start_PB_LT_O lights whenever the system is running.
When HMI.Setup_Motor_Speeds is asserted, the module broadcasts the configured speed set-points to every drive in the system.]]> HMI.STATE cascade the lower move wins:
• System_Started true writes 9.
• System_Started false writes 0.
• Motor_Was_Faulted writes 1.
• Power_Branch_Was_Faulted writes 2.
• Low_Air_Pressure_Fault_Was_Present writes 3.
• Encoder_Fault writes 4.
• Jam_Fault writes 5.
• Communication_Faulted writes 6.
• EStop_Was_Actuated writes 7.
• EStopped_Locally writes 8 and has the highest priority.
When HMI.Setup_Motor_Speeds is asserted, the module broadcasts the configured speed set-points to every drive in the system.
A housekeeping section clears the command word each scan and unlatches all momentary HMI bits, making every press a clean one-shot.
Command bits
The module receives CTRL.CMD.Log.
The module receives CTRL.CMD.Log_Quantity.
The module receives CTRL.CMD.Acknowledge_Log.
The module receives CTRL.CMD.Unacknowledge_All_Logs.
The module receives CTRL.CMD.VFD_Was_Faulted.
The module receives CTRL.CMD.Power_Branch_Was_Faulted.
The module receives CTRL.CMD.Low_Air_Pressure_Fault_Was_Present.
The module receives CTRL.CMD.Encoder_Fault.
The module receives CTRL.CMD.Jam_Fault.
The module receives CTRL.CMD.Communication_Faulted.
The module receives CTRL.CMD.EStop_Was_Actuated.
The module receives CTRL.CMD.VFD_Faulted.
The module receives CTRL.CMD.EStop_Actuated.
The module receives CTRL.CMD.Low_Air_Pressure_Fault.
The module receives CTRL.CMD.Power_Branch_Fault.
Status bits
The module sets CTRL.STS.Log.
The module sets CTRL.STS.Log_Quantity.
The module sets CTRL.STS.Acknowledge_Log.
The module sets CTRL.STS.Unacknowledge_All_Logs.
The module sets CTRL.STS.Communication_Faulted.
The module sets CTRL.STS.System_Started.
The module sets CTRL.STS.System_Start_Requested.
The module sets CTRL.STS.Setup_Motor_Speeds.
The module sets CTRL.STS.VFD_Fault_Reset_Requested.
The module sets CTRL.STS.Power_Branch_Fault_Reset_Requested.
The module sets CTRL.STS.Low_Air_Pressure_Fault_Reset_Requested.
The module sets CTRL.STS.Jam_Reset_Requested.
HMI bits
The HMI exchanges HMI.Start_PB.
The HMI exchanges HMI.Stop_PB.
The HMI exchanges HMI.Setup_Motor_Speeds.
The HMI exchanges HMI.Motor_Fault_Reset_PB.
The HMI exchanges HMI.Power_Branch_Fault_Reset_PB.
The HMI exchanges HMI.Low_Air_Pressure_Reset_PB.
The HMI exchanges HMI.Jam_Restart_PB.
The HMI displays HMI.STATE.
The HMI displays HMI.Start_PB_STATE.
The HMI displays HMI.Motor_Fault_Reset_PB_STATE.
The HMI displays HMI.Power_Branch_Fault_Reset_PB_STATE.
The HMI displays HMI.Low_Air_Pressure_Reset_PB_STATE.
The HMI displays HMI.Jam_Restart_PB_STATE.
The HMI displays HMI.EStop_Actuated_LT.
The HMI displays HMI.Local_Estop_LT.
Alarm bits
The system raises HMI.Alarm.Start_PB_Pressed.
The system raises HMI.Alarm.Stop_PB_Pressed.
The system raises HMI.Alarm.Motor_Fault_Reset_PB_Pressed.
The system raises HMI.Alarm.Jam_Restart_PB_Pressed.
The system raises HMI.Alarm.Low_Air_Pressure_Reset_PB_Pressed.
The system raises HMI.Alarm.Power_Branch_Fault_Reset_PB_Pressed.
The system raises HMI.Alarm.UPS_Battery_Fault.
The system raises HMI.Alarm.On_UPS_Battery.
The system raises HMI.Alarm.UPS_Battery_Low.
The system raises HMI.Alarm.NAT_Switch_Fault.
The system raises HMI.Alarm.Fire_Relay_De_Energized.
The system raises HMI.Alarm.EStopped_Locally.
]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[[COP(CTRL.CMD.Log,CTRL.STS.Log,1) MOVE(CTRL.CMD.Log_Quantity,CTRL.STS.Log_Quantity) ,XIC(CTRL.CMD.Acknowledge_Log) COP(CTRL.CMD.Log,CTRL.STS.Acknowledge_Log,1) ,XIC(CTRL.CMD.Unacknowledge_All_Logs) OTE(CTRL.STS.Unacknowledge_All_Logs) ];]]> <![CDATA[[COP(CTRL.CMD.Log,CTRL.STS.Log,1) MOVE(CTRL.CMD.Log_Quantity,CTRL.STS.Log_Quantity) ,XIC(CTRL.CMD.Acknowledge_Log) COP(CTRL.CMD.Log,CTRL.STS.Acknowledge_Log,1) ,XIC(CTRL.CMD.Unacknowledge_All_Logs) OTE(CTRL.STS.Unacknowledge_All_Logs) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.VFD_Was_Faulted)OTE(Motor_Was_Faulted);]]> <![CDATA[XIC(CTRL.CMD.VFD_Was_Faulted)OTE(Motor_Was_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Power_Branch_Was_Faulted)OTE(Power_Branch_Was_Faulted);]]> <![CDATA[XIC(CTRL.CMD.Power_Branch_Was_Faulted)OTE(Power_Branch_Was_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Low_Air_Pressure_Fault_Was_Present)OTE(Low_Air_Pressure_Fault_Was_Present);]]> <![CDATA[XIC(CTRL.CMD.Low_Air_Pressure_Fault_Was_Present)OTE(Low_Air_Pressure_Fault_Was_Present);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Encoder_Fault)OTE(Encoder_Fault);]]> <![CDATA[XIC(CTRL.CMD.Encoder_Fault)OTE(Encoder_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Jam_Fault)OTE(Jam_Fault);]]> <![CDATA[XIC(CTRL.CMD.Jam_Fault)OTE(Jam_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Communication_Faulted)[OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]> <![CDATA[XIC(CTRL.CMD.Communication_Faulted)[OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[XIC(UPS_Battery_Fault_I)OTE(UPS_Battery_Fault);]]> <![CDATA[XIC(UPS_Battery_Fault_I)OTE(UPS_Battery_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="8" Type="N">
<Text> <Text>
<![CDATA[XIC(On_UPS_Battery_I)OTE(On_UPS_Battery);]]> <![CDATA[XIC(On_UPS_Battery_I)OTE(On_UPS_Battery);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="9" Type="N">
<Text> <Text>
<![CDATA[XIC(UPS_Battery_Low_I)OTE(UPS_Battery_Low);]]> <![CDATA[XIC(UPS_Battery_Low_I)OTE(UPS_Battery_Low);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="10" Type="N">
<Text> <Text>
<![CDATA[XIC(NAT_Switch_Fault_I)OTE(NAT_Switch_Fault);]]> <![CDATA[XIC(NAT_Switch_Fault_I)OTE(NAT_Switch_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[XIO(Fire_Relay_I)OTE(Fire_Relay_De_Energized);]]> <![CDATA[XIO(Fire_Relay_I)OTE(Fire_Relay_De_Energized);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="13" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.EStop_Was_Actuated)OTE(EStop_Was_Actuated);]]> <![CDATA[XIC(CTRL.CMD.EStop_Was_Actuated)OTE(EStop_Was_Actuated);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="14" Type="N"> <Rung Number="13" Type="N">
<Text> <Text>
<![CDATA[[XIO(EStop_PB_I_CH1) ,XIO(EStop_PB_I_CH2) ]OTE(EStopped_Locally);]]> <![CDATA[[XIO(EStop_PB_I_CH1) ,XIO(EStop_PB_I_CH2) ]OTE(EStopped_Locally);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="15" Type="N"> <Rung Number="14" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(System_Started) ,XIC(HMI.Start_PB) ]XIC(Stop_PB_I)XIO(HMI.Stop_PB)XIO(EStop_Was_Actuated)XIO(EStopped_Locally)XIC(Fire_Relay_I)[OTE(System_Started) ,OTE(CTRL.STS.System_Started) ];]]> <![CDATA[[XIC(Start_PB_I) ,XIC(System_Started) ,XIC(HMI.Start_PB) ]XIC(Stop_PB_I)XIO(HMI.Stop_PB)XIO(EStop_Was_Actuated)XIO(EStopped_Locally)XIC(Fire_Relay_I)[OTE(System_Started) ,OTE(CTRL.STS.System_Started) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="16" Type="N"> <Rung Number="15" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_PB_I)OTE(CTRL.STS.System_Start_Requested);]]> <![CDATA[XIC(Start_PB_I)OTE(CTRL.STS.System_Start_Requested);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="17" Type="N"> <Rung Number="16" Type="N">
<Text> <Text>
<![CDATA[XIC(HMI.Setup_Motor_Speeds)OTE(CTRL.STS.Setup_Motor_Speeds);]]> <![CDATA[XIC(HMI.Setup_Motor_Speeds)OTE(CTRL.STS.Setup_Motor_Speeds);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="18" Type="N"> <Rung Number="17" Type="N">
<Text> <Text>
<![CDATA[[XIC(Motor_Fault_Reset_PB_I) ,XIC(HMI.Motor_Fault_Reset_PB) ]OTE(CTRL.STS.VFD_Fault_Reset_Requested);]]> <![CDATA[[XIC(Motor_Fault_Reset_PB_I) ,XIC(HMI.Motor_Fault_Reset_PB) ]OTE(CTRL.STS.VFD_Fault_Reset_Requested);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="19" Type="N"> <Rung Number="18" Type="N">
<Text> <Text>
<![CDATA[[XIC(Power_Branch_Fault_Reset_PB_I) ,XIC(HMI.Power_Branch_Fault_Reset_PB) ]OTE(CTRL.STS.Power_Branch_Fault_Reset_Requested);]]> <![CDATA[[XIC(Power_Branch_Fault_Reset_PB_I) ,XIC(HMI.Power_Branch_Fault_Reset_PB) ]OTE(CTRL.STS.Power_Branch_Fault_Reset_Requested);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="20" Type="N"> <Rung Number="19" Type="N">
<Text> <Text>
<![CDATA[[XIC(Low_Air_Pressure_Reset_PB_I) ,XIC(HMI.Low_Air_Pressure_Reset_PB) ]OTE(CTRL.STS.Low_Air_Pressure_Fault_Reset_Requested);]]> <![CDATA[[XIC(Low_Air_Pressure_Reset_PB_I) ,XIC(HMI.Low_Air_Pressure_Reset_PB) ]OTE(CTRL.STS.Low_Air_Pressure_Fault_Reset_Requested);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="21" Type="N"> <Rung Number="20" Type="N">
<Text> <Text>
<![CDATA[[XIC(Jam_Restart_PB_I) ,XIC(HMI.Jam_Restart_PB) ]OTE(CTRL.STS.Jam_Reset_Requested);]]> <![CDATA[[XIC(Jam_Restart_PB_I) ,XIC(HMI.Jam_Restart_PB) ]OTE(CTRL.STS.Jam_Reset_Requested);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="22" Type="N"> <Rung Number="21" Type="N">
<Text> <Text>
<![CDATA[[XIO(CTRL.CMD.VFD_Faulted) XIC(Motor_Was_Faulted) ,XIC(CTRL.CMD.VFD_Faulted) AOI_FLIP_FLOP(Motor_Fault_Flip_Flop,500,500) ]OTE(Motor_Fault_Reset_PB_LT_O);]]> <![CDATA[[XIO(CTRL.CMD.VFD_Faulted) XIC(Motor_Was_Faulted) ,XIC(CTRL.CMD.VFD_Faulted) AOI_FLIP_FLOP(Motor_Fault_Flip_Flop,500,500) ]OTE(Motor_Fault_Reset_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="23" Type="N"> <Rung Number="22" Type="N">
<Text> <Text>
<![CDATA[[XIC(Jam_Fault) ,XIC(Encoder_Fault) AOI_FLIP_FLOP(Encoder_Fault_FlipFlop,500,500) ]OTE(Jam_Restart_PB_LT_O);]]> <![CDATA[[XIC(Jam_Fault) ,XIC(Encoder_Fault) AOI_FLIP_FLOP(Encoder_Fault_FlipFlop,500,500) ]OTE(Jam_Restart_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="24" Type="N"> <Rung Number="23" Type="N">
<Text> <Text>
<![CDATA[[XIC(CTRL.CMD.EStop_Actuated) AOI_FLIP_FLOP(EStopped_FlipFlop,500,500) ,XIO(CTRL.CMD.EStop_Actuated) XIC(EStop_Was_Actuated) ]OTE(EStop_Actuated_LT_O);]]> <![CDATA[[XIC(CTRL.CMD.EStop_Actuated) AOI_FLIP_FLOP(EStopped_FlipFlop,500,500) ,XIO(CTRL.CMD.EStop_Actuated) XIC(EStop_Was_Actuated) ]OTE(EStop_Actuated_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="25" Type="N"> <Rung Number="24" Type="N">
<Text> <Text>
<![CDATA[[XIC(CTRL.CMD.Low_Air_Pressure_Fault) AOI_FLIP_FLOP(Low_Air_Pressure_FlipFlop,500,500) ,XIO(CTRL.CMD.Low_Air_Pressure_Fault) XIC(Low_Air_Pressure_Fault_Was_Present) ]OTE(Low_Air_Pressure_Reset_PB_LT_O);]]> <![CDATA[[XIC(CTRL.CMD.Low_Air_Pressure_Fault) AOI_FLIP_FLOP(Low_Air_Pressure_FlipFlop,500,500) ,XIO(CTRL.CMD.Low_Air_Pressure_Fault) XIC(Low_Air_Pressure_Fault_Was_Present) ]OTE(Low_Air_Pressure_Reset_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="26" Type="N"> <Rung Number="25" Type="N">
<Text> <Text>
<![CDATA[[XIC(CTRL.CMD.Power_Branch_Fault) AOI_FLIP_FLOP(Power_Branch_Fault_FlipFlop,500,500) ,XIO(CTRL.CMD.Power_Branch_Fault) XIC(Power_Branch_Was_Faulted) ]OTE(Power_Branch_Fault_Reset_PB_LT_O);]]> <![CDATA[[XIC(CTRL.CMD.Power_Branch_Fault) AOI_FLIP_FLOP(Power_Branch_Fault_FlipFlop,500,500) ,XIO(CTRL.CMD.Power_Branch_Fault) XIC(Power_Branch_Was_Faulted) ]OTE(Power_Branch_Fault_Reset_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="27" Type="N"> <Rung Number="26" Type="N">
<Text> <Text>
<![CDATA[XIC(System_Started)OTE(Start_PB_LT_O);]]> <![CDATA[XIC(System_Started)OTE(Start_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="28" Type="N"> <Rung Number="27" Type="N">
<Comment> <Comment>
<![CDATA[ALARMS <![CDATA[ALARMS
]]> ]]>
@ -872,172 +927,172 @@ When HMI.Setup_Motor_Speeds is asserted, the module broadcasts the configured sp
<![CDATA[XIC(Start_PB_I)OTE(HMI.Alarm.Start_PB_Pressed);]]> <![CDATA[XIC(Start_PB_I)OTE(HMI.Alarm.Start_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="29" Type="N"> <Rung Number="28" Type="N">
<Text> <Text>
<![CDATA[XIO(Stop_PB_I)OTE(HMI.Alarm.Stop_PB_Pressed);]]> <![CDATA[XIO(Stop_PB_I)OTE(HMI.Alarm.Stop_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="30" Type="N"> <Rung Number="29" Type="N">
<Text> <Text>
<![CDATA[XIC(Motor_Fault_Reset_PB_I)OTE(HMI.Alarm.Motor_Fault_Reset_PB_Pressed);]]> <![CDATA[XIC(Motor_Fault_Reset_PB_I)OTE(HMI.Alarm.Motor_Fault_Reset_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="31" Type="N"> <Rung Number="30" Type="N">
<Text> <Text>
<![CDATA[XIC(Jam_Restart_PB_I)OTE(HMI.Alarm.Jam_Restart_PB_Pressed);]]> <![CDATA[XIC(Jam_Restart_PB_I)OTE(HMI.Alarm.Jam_Restart_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="32" Type="N"> <Rung Number="31" Type="N">
<Text> <Text>
<![CDATA[XIC(Low_Air_Pressure_Reset_PB_I)OTE(HMI.Alarm.Low_Air_Pressure_Reset_PB_Pressed);]]> <![CDATA[XIC(Low_Air_Pressure_Reset_PB_I)OTE(HMI.Alarm.Low_Air_Pressure_Reset_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="33" Type="N"> <Rung Number="32" Type="N">
<Text> <Text>
<![CDATA[XIC(Power_Branch_Fault_Reset_PB_I)OTE(HMI.Alarm.Power_Branch_Fault_Reset_PB_Pressed);]]> <![CDATA[XIC(Power_Branch_Fault_Reset_PB_I)OTE(HMI.Alarm.Power_Branch_Fault_Reset_PB_Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="34" Type="N"> <Rung Number="33" Type="N">
<Text> <Text>
<![CDATA[XIC(UPS_Battery_Fault)OTE(HMI.Alarm.UPS_Battery_Fault);]]> <![CDATA[XIC(UPS_Battery_Fault)OTE(HMI.Alarm.UPS_Battery_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="35" Type="N"> <Rung Number="34" Type="N">
<Text> <Text>
<![CDATA[XIC(On_UPS_Battery)OTE(HMI.Alarm.On_UPS_Battery);]]> <![CDATA[XIC(On_UPS_Battery)OTE(HMI.Alarm.On_UPS_Battery);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="36" Type="N"> <Rung Number="35" Type="N">
<Text> <Text>
<![CDATA[XIC(UPS_Battery_Low)OTE(HMI.Alarm.UPS_Battery_Low);]]> <![CDATA[XIC(UPS_Battery_Low)OTE(HMI.Alarm.UPS_Battery_Low);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="37" Type="N"> <Rung Number="36" Type="N">
<Text> <Text>
<![CDATA[XIC(NAT_Switch_Fault)OTE(HMI.Alarm.NAT_Switch_Fault);]]> <![CDATA[XIC(NAT_Switch_Fault)OTE(HMI.Alarm.NAT_Switch_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="38" Type="N"> <Rung Number="37" Type="N">
<Text> <Text>
<![CDATA[XIC(Fire_Relay_De_Energized)OTE(HMI.Alarm.Fire_Relay_De_Energized);]]> <![CDATA[XIC(Fire_Relay_De_Energized)OTE(HMI.Alarm.Fire_Relay_De_Energized);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="39" Type="N"> <Rung Number="38" Type="N">
<Text> <Text>
<![CDATA[XIC(EStopped_Locally)OTE(HMI.Alarm.EStopped_Locally);]]> <![CDATA[XIC(EStopped_Locally)OTE(HMI.Alarm.EStopped_Locally);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="40" Type="N"> <Rung Number="39" Type="N">
<Text> <Text>
<![CDATA[XIC(EStop_Actuated_LT_O)OTE(HMI.EStop_Actuated_LT);]]> <![CDATA[XIC(EStop_Actuated_LT_O)OTE(HMI.EStop_Actuated_LT);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="41" Type="N"> <Rung Number="40" Type="N">
<Text> <Text>
<![CDATA[XIC(EStopped_Locally)OTE(HMI.Local_Estop_LT);]]> <![CDATA[XIC(EStopped_Locally)OTE(HMI.Local_Estop_LT);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="42" Type="N"> <Rung Number="41" Type="N">
<Text> <Text>
<![CDATA[XIO(Start_PB_LT_O)MOVE(1,HMI.Start_PB_STATE);]]> <![CDATA[XIO(Start_PB_LT_O)MOVE(1,HMI.Start_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="43" Type="N"> <Rung Number="42" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_PB_LT_O)MOVE(2,HMI.Start_PB_STATE);]]> <![CDATA[XIC(Start_PB_LT_O)MOVE(2,HMI.Start_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="44" Type="N"> <Rung Number="43" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]XIC(Start_PB_LT_O)MOVE(3,HMI.Start_PB_STATE);]]> <![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]XIC(Start_PB_LT_O)MOVE(3,HMI.Start_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="45" Type="N"> <Rung Number="44" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]XIO(Start_PB_LT_O)MOVE(4,HMI.Start_PB_STATE);]]> <![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]XIO(Start_PB_LT_O)MOVE(4,HMI.Start_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="46" Type="N"> <Rung Number="45" Type="N">
<Text> <Text>
<![CDATA[XIO(Motor_Fault_Reset_PB_LT_O)MOVE(1,HMI.Motor_Fault_Reset_PB_STATE);]]> <![CDATA[XIO(Motor_Fault_Reset_PB_LT_O)MOVE(1,HMI.Motor_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="47" Type="N"> <Rung Number="46" Type="N">
<Text> <Text>
<![CDATA[XIC(Motor_Fault_Reset_PB_LT_O)MOVE(2,HMI.Motor_Fault_Reset_PB_STATE);]]> <![CDATA[XIC(Motor_Fault_Reset_PB_LT_O)MOVE(2,HMI.Motor_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="48" Type="N"> <Rung Number="47" Type="N">
<Text> <Text>
<![CDATA[[XIC(Motor_Fault_Reset_PB_I) ,XIC(HMI.Motor_Fault_Reset_PB) ]XIC(Motor_Fault_Reset_PB_LT_O)MOVE(3,HMI.Motor_Fault_Reset_PB_STATE);]]> <![CDATA[[XIC(Motor_Fault_Reset_PB_I) ,XIC(HMI.Motor_Fault_Reset_PB) ]XIC(Motor_Fault_Reset_PB_LT_O)MOVE(3,HMI.Motor_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="49" Type="N"> <Rung Number="48" Type="N">
<Text> <Text>
<![CDATA[[XIC(Motor_Fault_Reset_PB_I) ,XIC(HMI.Motor_Fault_Reset_PB) ]XIO(Motor_Fault_Reset_PB_LT_O)MOVE(4,HMI.Motor_Fault_Reset_PB_STATE);]]> <![CDATA[[XIC(Motor_Fault_Reset_PB_I) ,XIC(HMI.Motor_Fault_Reset_PB) ]XIO(Motor_Fault_Reset_PB_LT_O)MOVE(4,HMI.Motor_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="50" Type="N"> <Rung Number="49" Type="N">
<Text> <Text>
<![CDATA[XIO(Power_Branch_Fault_Reset_PB_LT_O)MOVE(1,HMI.Power_Branch_Fault_Reset_PB_STATE);]]> <![CDATA[XIO(Power_Branch_Fault_Reset_PB_LT_O)MOVE(1,HMI.Power_Branch_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="51" Type="N"> <Rung Number="50" Type="N">
<Text> <Text>
<![CDATA[XIC(Power_Branch_Fault_Reset_PB_LT_O)MOVE(2,HMI.Power_Branch_Fault_Reset_PB_STATE);]]> <![CDATA[XIC(Power_Branch_Fault_Reset_PB_LT_O)MOVE(2,HMI.Power_Branch_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="52" Type="N"> <Rung Number="51" Type="N">
<Text> <Text>
<![CDATA[[XIC(Power_Branch_Fault_Reset_PB_I) ,XIC(HMI.Power_Branch_Fault_Reset_PB) ]XIC(Power_Branch_Fault_Reset_PB_LT_O)MOVE(3,HMI.Power_Branch_Fault_Reset_PB_STATE);]]> <![CDATA[[XIC(Power_Branch_Fault_Reset_PB_I) ,XIC(HMI.Power_Branch_Fault_Reset_PB) ]XIC(Power_Branch_Fault_Reset_PB_LT_O)MOVE(3,HMI.Power_Branch_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="53" Type="N"> <Rung Number="52" Type="N">
<Text> <Text>
<![CDATA[[XIC(Power_Branch_Fault_Reset_PB_I) ,XIC(HMI.Power_Branch_Fault_Reset_PB) ]XIO(Power_Branch_Fault_Reset_PB_LT_O)MOVE(4,HMI.Power_Branch_Fault_Reset_PB_STATE);]]> <![CDATA[[XIC(Power_Branch_Fault_Reset_PB_I) ,XIC(HMI.Power_Branch_Fault_Reset_PB) ]XIO(Power_Branch_Fault_Reset_PB_LT_O)MOVE(4,HMI.Power_Branch_Fault_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="54" Type="N"> <Rung Number="53" Type="N">
<Text> <Text>
<![CDATA[XIO(Low_Air_Pressure_Reset_PB_LT_O)MOVE(1,HMI.Low_Air_Pressure_Reset_PB_STATE);]]> <![CDATA[XIO(Low_Air_Pressure_Reset_PB_LT_O)MOVE(1,HMI.Low_Air_Pressure_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="55" Type="N"> <Rung Number="54" Type="N">
<Text> <Text>
<![CDATA[XIC(Low_Air_Pressure_Reset_PB_LT_O)MOVE(2,HMI.Low_Air_Pressure_Reset_PB_STATE);]]> <![CDATA[XIC(Low_Air_Pressure_Reset_PB_LT_O)MOVE(2,HMI.Low_Air_Pressure_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="56" Type="N"> <Rung Number="55" Type="N">
<Text> <Text>
<![CDATA[[XIC(Low_Air_Pressure_Reset_PB_I) ,XIC(HMI.Low_Air_Pressure_Reset_PB) ]XIC(Low_Air_Pressure_Reset_PB_LT_O)MOVE(3,HMI.Low_Air_Pressure_Reset_PB_STATE);]]> <![CDATA[[XIC(Low_Air_Pressure_Reset_PB_I) ,XIC(HMI.Low_Air_Pressure_Reset_PB) ]XIC(Low_Air_Pressure_Reset_PB_LT_O)MOVE(3,HMI.Low_Air_Pressure_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="57" Type="N"> <Rung Number="56" Type="N">
<Text> <Text>
<![CDATA[[XIC(Low_Air_Pressure_Reset_PB_I) ,XIC(HMI.Low_Air_Pressure_Reset_PB) ]XIO(Low_Air_Pressure_Reset_PB_LT_O)MOVE(4,HMI.Low_Air_Pressure_Reset_PB_STATE);]]> <![CDATA[[XIC(Low_Air_Pressure_Reset_PB_I) ,XIC(HMI.Low_Air_Pressure_Reset_PB) ]XIO(Low_Air_Pressure_Reset_PB_LT_O)MOVE(4,HMI.Low_Air_Pressure_Reset_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="58" Type="N"> <Rung Number="57" Type="N">
<Text> <Text>
<![CDATA[XIO(Jam_Restart_PB_LT_O)MOVE(1,HMI.Jam_Restart_PB_STATE);]]> <![CDATA[XIO(Jam_Restart_PB_LT_O)MOVE(1,HMI.Jam_Restart_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="59" Type="N"> <Rung Number="58" Type="N">
<Text> <Text>
<![CDATA[XIC(Jam_Restart_PB_LT_O)MOVE(2,HMI.Jam_Restart_PB_STATE);]]> <![CDATA[XIC(Jam_Restart_PB_LT_O)MOVE(2,HMI.Jam_Restart_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="60" Type="N"> <Rung Number="59" Type="N">
<Text> <Text>
<![CDATA[[XIC(Jam_Restart_PB_I) ,XIC(HMI.Jam_Restart_PB) ]XIC(Jam_Restart_PB_LT_O)MOVE(3,HMI.Jam_Restart_PB_STATE);]]> <![CDATA[[XIC(Jam_Restart_PB_I) ,XIC(HMI.Jam_Restart_PB) ]XIC(Jam_Restart_PB_LT_O)MOVE(3,HMI.Jam_Restart_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="61" Type="N"> <Rung Number="60" Type="N">
<Text> <Text>
<![CDATA[[XIC(Jam_Restart_PB_I) ,XIC(HMI.Jam_Restart_PB) ]XIO(Jam_Restart_PB_LT_O)MOVE(4,HMI.Jam_Restart_PB_STATE);]]> <![CDATA[[XIC(Jam_Restart_PB_I) ,XIC(HMI.Jam_Restart_PB) ]XIO(Jam_Restart_PB_LT_O)MOVE(4,HMI.Jam_Restart_PB_STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="62" Type="N"> <Rung Number="61" Type="N">
<Comment> <Comment>
<![CDATA[STATES <![CDATA[STATES
@ -1047,57 +1102,57 @@ When HMI.Setup_Motor_Speeds is asserted, the module broadcasts the configured sp
<![CDATA[XIC(System_Started)MOVE(9,HMI.STATE);]]> <![CDATA[XIC(System_Started)MOVE(9,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="63" Type="N"> <Rung Number="62" Type="N">
<Text> <Text>
<![CDATA[XIO(System_Started)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(System_Started)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="64" Type="N"> <Rung Number="63" Type="N">
<Text> <Text>
<![CDATA[XIC(Motor_Was_Faulted)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(Motor_Was_Faulted)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="65" Type="N"> <Rung Number="64" Type="N">
<Text> <Text>
<![CDATA[XIC(Power_Branch_Was_Faulted)MOVE(2,HMI.STATE);]]> <![CDATA[XIC(Power_Branch_Was_Faulted)MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="66" Type="N"> <Rung Number="65" Type="N">
<Text> <Text>
<![CDATA[XIC(Low_Air_Pressure_Fault_Was_Present)MOVE(3,HMI.STATE);]]> <![CDATA[XIC(Low_Air_Pressure_Fault_Was_Present)MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="67" Type="N"> <Rung Number="66" Type="N">
<Text> <Text>
<![CDATA[XIC(Encoder_Fault)MOVE(4,HMI.STATE);]]> <![CDATA[XIC(Encoder_Fault)MOVE(4,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="68" Type="N"> <Rung Number="67" Type="N">
<Text> <Text>
<![CDATA[XIC(Jam_Fault)MOVE(5,HMI.STATE);]]> <![CDATA[XIC(Jam_Fault)MOVE(5,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="69" Type="N"> <Rung Number="68" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Faulted)MOVE(6,HMI.STATE);]]> <![CDATA[XIC(Communication_Faulted)MOVE(6,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="70" Type="N"> <Rung Number="69" Type="N">
<Text> <Text>
<![CDATA[XIC(EStop_Was_Actuated)MOVE(7,HMI.STATE);]]> <![CDATA[XIC(EStop_Was_Actuated)MOVE(7,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="71" Type="N"> <Rung Number="70" Type="N">
<Text> <Text>
<![CDATA[XIC(EStopped_Locally)MOVE(8,HMI.STATE);]]> <![CDATA[XIC(EStopped_Locally)MOVE(8,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="72" Type="N"> <Rung Number="71" Type="N">
<Text> <Text>
<![CDATA[FLL(0,CTRL.CMD,1);]]> <![CDATA[FLL(0,CTRL.CMD,1);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="73" Type="N"> <Rung Number="72" Type="N">
<Text> <Text>
<![CDATA[OTU(HMI.Setup_Motor_Speeds)OTU(HMI.Motor_Fault_Reset_PB)OTU(HMI.Power_Branch_Fault_Reset_PB)OTU(HMI.Low_Air_Pressure_Reset_PB)OTU(HMI.Start_PB)OTU(HMI.Jam_Restart_PB)OTU(HMI.Stop_PB);]]> <![CDATA[OTU(HMI.Setup_Motor_Speeds)OTU(HMI.Motor_Fault_Reset_PB)OTU(HMI.Power_Branch_Fault_Reset_PB)OTU(HMI.Low_Air_Pressure_Reset_PB)OTU(HMI.Start_PB)OTU(HMI.Jam_Restart_PB)OTU(HMI.Stop_PB);]]>
</Text> </Text>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PMM" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:36:30 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_PMM" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-18T14:50:08.259Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:15 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_PMM" Family="NoFamily" Class="User"> <DataType Name="UDT_ALARMS_PMM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="PMM_Communication_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="PMM_Communication_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
@ -13,17 +13,7 @@
<Member Name="PMM_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write"/> <Member Name="PMM_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write"/>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_AOI_PMM" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_PMM" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_PMM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_PMM" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_PMM"/>
<Dependency Type="DataType" Name="UDT_HMI_PMM"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_HMI_PMM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="PMM_Total_Power" DataType="REAL" Dimension="0" Radix="Float" Hidden="false" ExternalAccess="Read/Write"> <Member Name="PMM_Total_Power" DataType="REAL" Dimension="0" Radix="Float" Hidden="false" ExternalAccess="Read/Write">
@ -49,8 +39,8 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_PMM" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-07-15T11:44:04.434Z" CreatedBy="LCIBATUMI\guga.kakhadze" EditedDate="2025-07-21T10:41:37.637Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Use="Target" Name="AOI_PMM" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-07-15T11:44:04.434Z" CreatedBy="LCIBATUMI\guga.kakhadze" EditedDate="2025-07-18T14:50:08.259Z" EditedBy="LCIBATUMI\ilia.gurielidze"
> SoftwareRevision="v36.00">
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description> <Description>
@ -117,24 +107,16 @@
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Communicaton Health and Power Monitoring Related Data associated with the PDP (Power Distrubution Panel)]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[[XIC(PMM_Input1.ConnectionFaulted) ,XIC(Parent_Comm_Fault) ]OTE(Communication_Fault);]]> <![CDATA[[XIC(PMM_Input1.ConnectionFaulted) ,XIC(Parent_Comm_Fault) ]OTE(Communication_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[[XIO(Communication_Fault) ,XIO(PMM_Fault_I) ]MOVE(PMM_Input2.TotalRealPower,HMI.PMM_Total_Power)MOVE(PMM_Input3.kWhConsumed,HMI.PMM_KWH_Consumed)MOVE(PMM_Input4.MaxTotalRealPwr,HMI.PMM_Max_Total_Power);]]> <![CDATA[[XIO(Communication_Fault) ,XIO(PMM_Fault_I) ]MOVE(PMM_Input2.TotalRealPower,HMI.PMM_Total_Power)MOVE(PMM_Input3.kWhConsumed,HMI.PMM_KWH_Consumed)MOVE(PMM_Input4.MaxTotalRealPwr,HMI.PMM_Max_Total_Power);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Comment> <Comment>
<![CDATA[Running <![CDATA[Running
]]> ]]>
@ -143,7 +125,7 @@
<![CDATA[XIO(Communication_Fault)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(Communication_Fault)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Comment> <Comment>
<![CDATA[Communication Faulted <![CDATA[Communication Faulted
]]> ]]>
@ -152,12 +134,12 @@
<![CDATA[XIC(Communication_Fault)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(Communication_Fault)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Communication_Fault);]]> <![CDATA[XIC(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Communication_Fault);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIO(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Fault);]]> <![CDATA[XIO(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Fault);]]>
</Text> </Text>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_RACK" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:36:50 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_RACK" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-18T09:18:50.916Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:19 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_RACK" Family="NoFamily" Class="User"> <DataType Name="UDT_ALARMS_RACK" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Slot5_IB16_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"/> <Member Name="Slot5_IB16_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"/>
@ -11,17 +11,7 @@
<Member Name="Slot2_EN4TR_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write"/> <Member Name="Slot2_EN4TR_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="3" ExternalAccess="Read/Write"/>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_AOI_RACK" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_RACK" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_RACK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_RACK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_RACK"/>
<Dependency Type="DataType" Name="UDT_HMI_RACK"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_HMI_RACK" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_RACK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="Alarm" DataType="UDT_ALARMS_RACK" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members> </Members>
@ -31,8 +21,8 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_RACK" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-07-01T16:12:10.151Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-21T10:42:12.954Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Use="Target" Name="AOI_RACK" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-07-01T16:12:10.151Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-18T09:18:50.916Z" EditedBy="LCIBATUMI\ilia.gurielidze"
> SoftwareRevision="v36.00">
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description> <Description>
@ -135,48 +125,63 @@ The routine now monitors four modules in the local rack: an EN4TR communication
For each module it executes a GSV Module FaultCode; whenever the reported code is non-zero the routine sets a matching _Faulted coil. For each module it executes a GSV Module FaultCode; whenever the reported code is non-zero the routine sets a matching _Faulted coil.
All three I/O modules (Slots 5, 6, 7) drive individual HMI alarms exactly as before. All three I/O modules (Slots 5, 6, 7) drive individual HMI alarms exactly as before.
If the EN4TR in Slot 2 is faulted the routine also energises HMI.Alarm.Slot5_IB16_Faulted, using that alarm as a generic “rack interface fault” so the operator is alerted even when the downstream modules cannot report their own status.]]> If the EN4TR in Slot 2 is faulted the routine also energises HMI.Alarm.Slot5_IB16_Faulted, using that alarm as a generic “rack interface fault” so the operator is alerted even when the downstream modules cannot report their own status.
Command bits
No external command bits are required; the monitor runs continuously.
Status bits
The routine sets Slot2_EN4TR_Faulted when the EN4TR adapter in Slot 2 reports a fault.
The routine sets Slot5_IB16_Faulted when the IB16 module in Slot 5 reports a fault.
The routine sets Slot6_OB16E_Faulted when the OB16E module in Slot 6 reports a fault.
The routine sets Slot7_IB16S_Faulted when the IB16S module in Slot 7 reports a fault.
HMI bits
The HMI displays HMI.Alarm.Slot5_IB16_Faulted whenever either Slot2_EN4TR_Faulted or Slot5_IB16_Faulted is true.
The HMI displays HMI.Alarm.Slot6_OB16E_Faulted whenever Slot6_OB16E_Faulted is true.
The HMI displays HMI.Alarm.Slot7_IB16S_Faulted whenever Slot7_IB16S_Faulted is true.
Alarm bits
The system raises HMI.Alarm.Slot5_IB16_Faulted when the EN4TR adapter in Slot 2 is faulted or when the IB16 module in Slot 5 is faulted.
The system raises HMI.Alarm.Slot6_OB16E_Faulted when the OB16E module in Slot 6 is faulted.
The system raises HMI.Alarm.Slot7_IB16S_Faulted when the IB16S module in Slot 7 is faulted.
]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[GSV(Module,Slot5_IB16,FaultCode,Slot5_IB16_Fault_Code)NE(Slot5_IB16_Fault_Code,0)OTE(Slot5_IB16_Faulted);]]> <![CDATA[GSV(Module,Slot5_IB16,FaultCode,Slot5_IB16_Fault_Code)NE(Slot5_IB16_Fault_Code,0)OTE(Slot5_IB16_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[GSV(Module,Slot6_OB16E,FaultCode,Slot6_OB16E_Fault_Code)NE(Slot6_OB16E_Fault_Code,0)OTE(Slot6_OB16E_Faulted);]]> <![CDATA[GSV(Module,Slot6_OB16E,FaultCode,Slot6_OB16E_Fault_Code)NE(Slot6_OB16E_Fault_Code,0)OTE(Slot6_OB16E_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[GSV(Module,Slot7_IB16S,FaultCode,Slot7_IB16S_Fault_Code)NE(Slot7_IB16S_Fault_Code,0)OTE(Slot7_IB16S_Faulted);]]> <![CDATA[GSV(Module,Slot7_IB16S,FaultCode,Slot7_IB16S_Fault_Code)NE(Slot7_IB16S_Fault_Code,0)OTE(Slot7_IB16S_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[GSV(Module,Slot2_EN4TR,FaultCode,Slot4_EN4TR_Fault_Code)NE(Slot4_EN4TR_Fault_Code,0)OTE(Slot2_EN4TR_Faulted);]]> <![CDATA[GSV(Module,Slot2_EN4TR,FaultCode,Slot4_EN4TR_Fault_Code)NE(Slot4_EN4TR_Fault_Code,0)OTE(Slot2_EN4TR_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(Slot2_EN4TR_Faulted)OTE(HMI.Alarm.Slot2_EN4TR_Faulted);]]> <![CDATA[XIC(Slot2_EN4TR_Faulted)OTE(HMI.Alarm.Slot2_EN4TR_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(Slot5_IB16_Faulted)OTE(HMI.Alarm.Slot5_IB16_Faulted);]]> <![CDATA[XIC(Slot5_IB16_Faulted)OTE(HMI.Alarm.Slot5_IB16_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(Slot6_OB16E_Faulted)OTE(HMI.Alarm.Slot6_OB16E_Faulted);]]> <![CDATA[XIC(Slot6_OB16E_Faulted)OTE(HMI.Alarm.Slot6_OB16E_Faulted);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[XIC(Slot7_IB16S_Faulted)OTE(HMI.Alarm.Slot7_IB16S_Faulted);]]> <![CDATA[XIC(Slot7_IB16S_Faulted)OTE(HMI.Alarm.Slot7_IB16S_Faulted);]]>
</Text> </Text>

View File

@ -1,7 +1,28 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:37:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--EMERGENSY STOP STATION PUSH BUTTON-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_EPC" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-29T08:29:20.076Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:23 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Emergency Stopped]]>
</Description>
</Member>
<Member Name="Stopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
@ -64,39 +85,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Emergency Stopped]]>
</Description>
</Member>
<Member Name="Stopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_STATION_EPC" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_STATION_EPC" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_STATION_EPC"/>
<Dependency Type="DataType" Name="UDT_HMI_STATION"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_STATION_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="STS" DataType="UDT_CTRL_STATION_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -106,7 +95,7 @@
<Dependency Type="DataType" Name="UDT_CTRL_STATION_STS"/> <Dependency Type="DataType" Name="UDT_CTRL_STATION_STS"/>
</Dependencies> </Dependencies>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_CMD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_STATION_CMD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
@ -126,7 +115,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_STS" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_STATION_STS" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
@ -167,7 +156,7 @@
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_HMI_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_STATION" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -203,7 +192,7 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-07-21T10:35:04.128Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" 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"
> >
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -281,29 +270,21 @@
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Toggles EnableOut at the intervas set by On and Off]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]> <![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]> <![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]> <![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]> <![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text> </Text>
@ -312,8 +293,8 @@
</Routine> </Routine>
</Routines> </Routines>
</AddOnInstructionDefinition> </AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_STATION_EPC" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-21T10:46:19.250Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_STATION_EPC" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-29T08:29:20.076Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[EMERGENSY STOP STATION PUSH BUTTON]]> <![CDATA[EMERGENSY STOP STATION PUSH BUTTON]]>
</Description> </Description>
@ -364,7 +345,7 @@
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/> <DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData> </DefaultData>
</Parameter> </Parameter>
<Parameter Name="Beacon_Light_O" TagType="Base" DataType="BOOL" Usage="InOut" Radix="Decimal" Required="true" Visible="true" Constant="false"> <Parameter Name="BCN_LT_O" TagType="Base" DataType="BOOL" Usage="InOut" Radix="Decimal" Required="true" Visible="true" Constant="false">
<Description> <Description>
<![CDATA[Beacon Light]]> <![CDATA[Beacon Light]]>
</Description> </Description>
@ -451,21 +432,29 @@
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/> <DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData> </DefaultData>
</LocalTag> </LocalTag>
<LocalTag Name="Tripped_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[7,'TRIPPED$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$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="7">
<![CDATA['TRIPPED']]>
</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>
</LocalTags> </LocalTags>
<Routines> <Routines>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Emergency Pullcord Drops out VFD STO and Turns on Beacon
The actual saftey logic is located in the Saftey Task, this AOI handles coordinating the states of the lights for devices associated when an e-stop condition has been triggered.
Affected devices included the MCM and Station used to reset the e-stop condition
]]>
</Comment>
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[COP(Station.CMD.Log,Station.STS.Log,1);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="1" Type="N"> <Rung Number="1" Type="N">
@ -480,12 +469,12 @@ Affected devices included the MCM and Station used to reset the e-stop condition
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIO(Estop_Was_Actuated)[ONS(Beacon_ONS) OTU(Beacon_Light_O) ,JMP(JMP) ];]]> <![CDATA[XIO(Estop_Was_Actuated)[ONS(Beacon_ONS) OTU(BCN_LT_O) ,JMP(JMP) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[[XIC(EStop_Actuated) AOI_FLIP_FLOP(Flip_Flop,500,500) ,XIC(Station.STS.EStop_Was_Actuated) XIO(EStop_Actuated) ]OTE(Beacon_Light_O);]]> <![CDATA[[XIC(EStop_Actuated) AOI_FLIP_FLOP(Flip_Flop,500,500) ,XIC(Station.STS.EStop_Was_Actuated) XIO(EStop_Actuated) ]OTE(BCN_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="5" Type="N">
@ -517,7 +506,7 @@ Affected devices included the MCM and Station used to reset the e-stop condition
]]> ]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[MOVE(2,HMI.STATE);]]> <![CDATA[MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="9" Type="N">
@ -536,7 +525,12 @@ Affected devices included the MCM and Station used to reset the e-stop condition
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[[XIC(EStop_Actuated) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(EStop_Actuated) [XIO(Acknowledge) MOVE(' TRIPPED',Concatenated_String) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,MOVE(' TRIPPED',Concatenated_String) CONCAT(HMI.Name,Concatenated_String,Station.CMD.Log) ] ,NE(MCM.STS.Acknowledge_Log,'') EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge) MOVE('',MCM.STS.Acknowledge_Log) ];]]> <![CDATA[[XIC(EStop_Actuated) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(EStop_Actuated) [XIO(Acknowledge) COP(Tripped_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,COP(Tripped_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,Station.CMD.Log) ] ,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="12" Type="N">
<Text>
<![CDATA[COP(Empty_String,Station.CMD.Log,1);]]>
</Text> </Text>
</Rung> </Rung>
</RLLContent> </RLLContent>

View File

@ -1,152 +1,71 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:37:42 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_JR_CHUTE" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-07-30T06:18:11.167Z" ContainsContext="true" ExportDate="Wed Jul 30 11:50:40 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="D2C">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_ALARMS_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Pressed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"/>
<Description>
<![CDATA[Conveyor Emergency Stopped]]>
</Description>
</Member>
<Member Name="Stopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
</Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_AOI_STATION_JR_PB" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="AOI" DataType="AOI_STATION_JR_PB" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_STATION_JR_CHUTE_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="STS" DataType="UDT_CTRL_STATION_JR_CHUTE_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members> </Members>
<Dependencies> <Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_STATION_JR_PB"/> <Dependency Type="DataType" Name="UDT_CTRL_STATION_JR_CHUTE_CMD"/>
<Dependency Type="DataType" Name="UDT_HMI_STATION"/> <Dependency Type="DataType" Name="UDT_CTRL_STATION_JR_CHUTE_STS"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION"/>
</Dependencies> </Dependencies>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_STATION_JR_CHUTE_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_STATION_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_STS"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_CMD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description> <Description>
<![CDATA[Conveyor]]> <![CDATA[Jam At Sorter Section]]>
</Description> </Description>
</Member> </Member>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write"> <Member Name="Sorter_JPE_Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description> <Description>
<![CDATA[Emergency Stop Actuated]]> <![CDATA[Jam Photoeye Blocked On Sorter]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description> </Description>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_STS" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_STATION_JR_CHUTE_STS" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="Jam_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description> <Description>
<![CDATA[Start command For/From Partner Stations]]> <![CDATA[Jam Reset Requested]]>
</Description> </Description>
</Member> </Member>
<Member Name="Stop" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write"> <Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description> <Description>
<![CDATA[Stop command For/From Partner Stations]]> <![CDATA[Jam At Sorter Section]]>
</Description>
</Member>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop was Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_S5" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="PB_LT" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PushButton Light For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Jammed]]>
</Description>
</Member>
<Member Name="Jam_Reset" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset Command For/From Partner Stations]]>
</Description> </Description>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_HMI_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_STATION_JR_CHUTE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Description> <Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<![CDATA[Station Alarms]]>
</Description>
</Member>
<Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Start Color]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_HMI_ST2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/> <Member Name="ZZZZZZZZZZUDT_HMI_ST2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="JR_PB" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_HMI_ST2" BitNumber="0" ExternalAccess="Read/Write"> <Member Name="JR_PB" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_HMI_ST2" BitNumber="0" ExternalAccess="Read/Write">
<Description> <Description>
<![CDATA[Jam Reset PushButton (HMI)]]> <![CDATA[Jam Reset PushButton Pressed]]>
</Description> </Description>
</Member> </Member>
<Member Name="Start_PB" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_HMI_ST2" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Start PushButton (HMI)]]>
</Description>
</Member>
<Member Name="Stop_PB" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_HMI_ST2" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Stop PushButton (HMI)]]>
</Description>
</Member>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members> </Members>
<Dependencies> <Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_STATION"/> <Dependency Type="DataType" Name="UDT_ALARMS_STATION_JR_CHUTE"/>
</Dependencies> </Dependencies>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_STATION_JR_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:10:22.337Z" CreatedBy="Not Available" EditedDate="2025-07-21T10:47:15.907Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition 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">
SoftwareRevision="v36.00">
<Description>
<![CDATA[JAM RESET STATION PUSH BUTTON
]]>
</Description>
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description> <Description>
@ -158,12 +77,112 @@
<![CDATA[Enable Output - System Defined Parameter]]> <![CDATA[Enable Output - System Defined Parameter]]>
</Description> </Description>
</Parameter> </Parameter>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_STATION" Usage="InOut" Required="true" Visible="true" Constant="false"/> <Parameter Name="On" TagType="Base" DataType="DINT" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_STATION" Usage="InOut" Required="true" Visible="true" Constant="false"/> <Description>
<Parameter Name="Partner" TagType="Base" DataType="UDT_CTRL_STATION" Usage="InOut" Required="true" Visible="true" Constant="false"/> <![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>
</Parameter>
<Parameter Name="Off" TagType="Base" DataType="DINT" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<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>
</Parameter>
</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"/>
<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="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"/>
<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>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Use="Target" Name="AOI_STATION_JR_CHUTE" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:33:51.746Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-30T06:18:11.167Z" 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>
<![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_STATION_JR_CHUTE" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_STATION_JR_CHUTE" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="JR_PB_I" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write"> <Parameter Name="JR_PB_I" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description> <Description>
<![CDATA[Jam Reset PushButton Input (NO)]]> <![CDATA[Jam Reset PushButton Input]]>
</Description> </Description>
<DefaultData Format="L5K"> <DefaultData Format="L5K">
<![CDATA[0]]> <![CDATA[0]]>
@ -174,7 +193,40 @@
</Parameter> </Parameter>
<Parameter Name="JR_PB_LT_O" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read Only"> <Parameter Name="JR_PB_LT_O" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read Only">
<Description> <Description>
<![CDATA[Jam Reset PushButton Light Output]]> <![CDATA[Jem Reset PushButton Light Output]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="A_Beacon_Segment_Color_O" TagType="Base" DataType="DINT" Usage="Output" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Beacon Segment Color Output]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="A_Beacon_Segment_Animation_O" TagType="Base" DataType="DINT" Usage="Output" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Beacon Segment Animation Output]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Jammed" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam At Sorter Section]]>
</Description> </Description>
<DefaultData Format="L5K"> <DefaultData Format="L5K">
<![CDATA[0]]> <![CDATA[0]]>
@ -185,37 +237,21 @@
</Parameter> </Parameter>
</Parameters> </Parameters>
<LocalTags> <LocalTags>
<LocalTag Name="ONS" DataType="DINT" Radix="Decimal" ExternalAccess="None"> <LocalTag Name="Flip_Flop" DataType="AOI_FLIP_FLOP" ExternalAccess="None">
<Description>
<![CDATA[To prevent the Lathing of Start Signal between Partner Stations]]>
</Description>
<DefaultData Format="L5K"> <DefaultData Format="L5K">
<![CDATA[0]]> <![CDATA[[1,0,0,[0,0,0],[0,0,0]]]]>
</DefaultData> </DefaultData>
<DefaultData Format="Decorated"> <DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/> <Structure DataType="AOI_FLIP_FLOP">
<DataValueMember Name="EnableIn" DataType="BOOL" Value="1"/>
<DataValueMember Name="EnableOut" DataType="BOOL" Value="0"/>
<DataValueMember Name="On" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="Off" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="Flash" DataType="BOOL" Value="0"/>
</Structure>
</DefaultData> </DefaultData>
</LocalTag> </LocalTag>
<LocalTag Name="Jammed" DataType="BOOL" Radix="Decimal" ExternalAccess="None"> <LocalTag Name="Jam_Reset_Requested" 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="Empty_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains ""]]>
</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="ONS_Diagnostic_Alram" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K"> <DefaultData Format="L5K">
<![CDATA[0]]> <![CDATA[0]]>
</DefaultData> </DefaultData>
@ -228,71 +264,52 @@
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Station Jam-Reset Push-Button
This module handles the local Jam-Reset push-button (JR PB) and its HMI counterpart.
Jam indication When the upstream controller asserts CTRL.CMD.Jammed the lamp coil JR_PB_LT_O turns on and the status bit CTRL.STS.JR_PB_LT is echoed to the partner conveyor so everyone sees that a jam must be cleared.
Reset action A one-shot examines three parallel reset sources:
physical JR_PB_I,
HMI.JR_PB,
Partner.STS.Jam_Reset (reset requested from the adjacent conveyor).
On the rising edge it pulses CTRL.STS.Jam_Reset for one scan and clears the HMI command bit; this pulse lets the downstream AOI retract its photo-eye and clear the jam.
Lamp control The lamp is solid while CTRL.CMD.Jammed is true; once the jam clears the lamp drops.]]>
</Comment>
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[[XIC(CTRL.CMD.Jammed) ,XIO(JR_PB_I) XIO(HMI.JR_PB) XIC(Jammed) ][OTL(Jammed) ,OTL(CTRL.STS.Jammed) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="1" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]> <![CDATA[XIC(Jammed)OTE(JR_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ,XIC(Partner.STS.Jam_Reset) ONS(ONS.0) ]OTE(CTRL.STS.Jam_Reset)OTU(HMI.JR_PB);]]> <![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]XIC(Jammed)XIO(CTRL.CMD.Sorter_JPE_Blocked)[OTE(CTRL.STS.Jam_Reset_Requested) ,OTE(Jam_Reset_Requested) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[[XIC(CTRL.CMD.Jammed) ,XIO(Jammed) XIC(Partner.STS.PB_LT) ][OTE(JR_PB_LT_O) ,OTE(CTRL.STS.PB_LT) ];]]> <![CDATA[XIC(Jam_Reset_Requested)[OTU(Jammed) ,OTU(CTRL.STS.Jammed) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.Jammed)OTE(Jammed);]]> <![CDATA[XIC(Jammed)MOVE(2,A_Beacon_Segment_Animation_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="5" Type="N">
<Comment>
<![CDATA[Alarms
]]>
</Comment>
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[XIC(Jammed)XIO(CTRL.CMD.Sorter_JPE_Blocked)MOVE(1,A_Beacon_Segment_Animation_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed.0);]]> <![CDATA[XIO(Jammed)MOVE(0,A_Beacon_Segment_Animation_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="7" Type="N">
<Comment> <Comment>
<![CDATA[Colors of Animation <![CDATA[ALARMS
]]> ]]>
</Comment> </Comment>
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="8" Type="N">
<Comment> <Comment>
<![CDATA[Gray <![CDATA[STATE
]]> ]]>
</Comment> </Comment>
<Text> <Text>
@ -300,35 +317,23 @@ Lamp control The lamp is solid while CTRL.CMD.Jammed is true; once the jam c
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="9" Type="N">
<Comment>
<![CDATA[White
]]>
</Comment>
<Text> <Text>
<![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="10" Type="N">
<Comment>
<![CDATA[Yellow
]]>
</Comment>
<Text> <Text>
<![CDATA[XIO(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(3,HMI.STATE);]]> <![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]XIO(JR_PB_LT_O)MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="11" Type="N">
<Comment>
<![CDATA[Green
]]>
</Comment>
<Text> <Text>
<![CDATA[XIC(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(2,HMI.STATE);]]> <![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]XIC(JR_PB_LT_O)MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[COP(Empty_String,CTRL.CMD.Log,1)OTU(CTRL.CMD.Jammed);]]> <![CDATA[OTU(HMI.JR_PB)OTU(CTRL.CMD.Sorter_JPE_Blocked)OTU(CTRL.CMD.Jammed);]]>
</Text> </Text>
</Rung> </Rung>
</RLLContent> </RLLContent>
@ -337,20 +342,16 @@ Lamp control The lamp is solid while CTRL.CMD.Jammed is true; once the jam c
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[MOVE(3,A_Beacon_Segment_Color_O);]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[FLL(0,HMI.Alarm,1)OTU(HMI.JR_PB);]]>
</Text> </Text>
</Rung> </Rung>
</RLLContent> </RLLContent>
</Routine> </Routine>
</Routines> </Routines>
<Dependencies> <Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION"/> <Dependency Type="DataType" Name="UDT_CTRL_STATION_JR_CHUTE"/>
<Dependency Type="DataType" Name="UDT_HMI_STATION"/> <Dependency Type="AddOnInstructionDefinition" Name="AOI_FLIP_FLOP"/>
<Dependency Type="DataType" Name="UDT_HMI_STATION_JR_CHUTE"/>
</Dependencies> </Dependencies>
</AddOnInstructionDefinition> </AddOnInstructionDefinition>
</AddOnInstructionDefinitions> </AddOnInstructionDefinitions>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--JAM RESET STATION PUSH BUTTON <!--JAM RESET STATION PUSH BUTTON
--> -->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_JR_PB" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-18T19:45:32.318Z" ContainsContext="true" ExportDate="Wed Jul 23 13:24:58 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_JR_PB" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-29T10:11:12.041Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:30 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User">
@ -131,8 +131,8 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Use="Target" Name="AOI_STATION_JR_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:10:22.337Z" CreatedBy="Not Available" EditedDate="2025-07-18T19:45:32.318Z" <AddOnInstructionDefinition Use="Target" Name="AOI_STATION_JR_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:10:22.337Z" CreatedBy="Not Available" EditedDate="2025-07-29T10:11:12.041Z"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[JAM RESET STATION PUSH BUTTON <![CDATA[JAM RESET STATION PUSH BUTTON
]]> ]]>
@ -295,10 +295,15 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed.0);]]> <![CDATA[XIO(JR_PB_I)MOVE(0,HMI.Alarm.Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(JR_PB_I)MOVE(1,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Comment> <Comment>
<![CDATA[Colors of Animation <![CDATA[Colors of Animation
]]> ]]>
@ -307,7 +312,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="8" Type="N">
<Comment> <Comment>
<![CDATA[Gray <![CDATA[Gray
]]> ]]>
@ -316,7 +321,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIO(JR_PB_LT_O)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(JR_PB_LT_O)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="9" Type="N">
<Comment> <Comment>
<![CDATA[White <![CDATA[White
]]> ]]>
@ -325,7 +330,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="10" Type="N">
<Comment> <Comment>
<![CDATA[Yellow <![CDATA[Yellow
]]> ]]>
@ -334,7 +339,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIO(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(3,HMI.STATE);]]> <![CDATA[XIO(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="11" Type="N">
<Comment> <Comment>
<![CDATA[Green <![CDATA[Green
]]> ]]>
@ -343,7 +348,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIC(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(2,HMI.STATE);]]> <![CDATA[XIC(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[COP(Empty_String,CTRL.CMD.Log,1)OTU(CTRL.CMD.Jammed);]]> <![CDATA[COP(Empty_String,CTRL.CMD.Log,1)OTU(CTRL.CMD.Jammed);]]>
</Text> </Text>

View File

@ -1,7 +1,99 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:37:51 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <!--START/STOP STATION PUSH BUTTON-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_SS_PB" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-18T12:04:53.185Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Emergency Stopped]]>
</Description>
</Member>
<Member Name="Stopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_STATION_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_STATION_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_STATION_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Start command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Stop" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Stop command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop was Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_S5" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="PB_LT" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PushButton Light For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Jammed]]>
</Description>
</Member>
<Member Name="Jam_Reset" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset Command For/From Partner Stations]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -199,110 +291,7 @@ Stopped by Station Stop PushButton]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Emergency Stopped]]>
</Description>
</Member>
<Member Name="Stopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_STATION_SS_PB" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_STATION_SS_PB" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_STATION_SS_PB"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION"/>
<Dependency Type="DataType" Name="UDT_HMI_STATION"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_STATION_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_STS"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Start command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Stop" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Stop command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop was Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_S5" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="PB_LT" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PushButton Light For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Jammed]]>
</Description>
</Member>
<Member Name="Jam_Reset" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset Command For/From Partner Stations]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_STATION" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -338,7 +327,7 @@ Stopped by Station Stop PushButton]]>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-07-21T10:35:04.128Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" 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"
> >
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -416,29 +405,21 @@ Stopped by Station Stop PushButton]]>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Toggles EnableOut at the intervas set by On and Off]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]> <![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]> <![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]> <![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]> <![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text> </Text>
@ -447,8 +428,8 @@ Stopped by Station Stop PushButton]]>
</Routine> </Routine>
</Routines> </Routines>
</AddOnInstructionDefinition> </AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_STATION_SS_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-21T10:49:36.005Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_STATION_SS_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-18T12:04:53.185Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[START/STOP STATION PUSH BUTTON]]> <![CDATA[START/STOP STATION PUSH BUTTON]]>
</Description> </Description>
@ -584,54 +565,41 @@ Stopped by Station Stop PushButton]]>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Station Start-Stop Push-Buttons
Handles basic soft-stopping (none emergency) of VFDs and as well resetting e-stop conditions.
This station contains a light that reflects the state of e-stop condition and power saving modes.
]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]> <![CDATA[COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.EStop_Actuated)OTL(CTRL.STS.EStop_Was_Actuated);]]> <![CDATA[XIC(CTRL.CMD.EStop_Actuated)OTL(CTRL.STS.EStop_Was_Actuated);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ]OTU(CTRL.STS.EStop_Was_Actuated);]]> <![CDATA[[XIC(Start_PB_I) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ]OTU(CTRL.STS.EStop_Was_Actuated);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[[XIO(VFD.STS.In_Power_Saving_Mode) XIC(VFD.STS.Enabled) ,XIO(VFD.STS.MCM_EStop_PB_Pressed) XIO(CTRL.CMD.EStop_Actuated) XIC(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_100,100,100) ,XIC(VFD.STS.In_Power_Saving_Mode) XIO(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_1000,1000,1000) ]OTE(Start_PB_LT_O);]]> <![CDATA[[XIO(VFD.STS.In_Power_Saving_Mode) XIC(VFD.STS.Enabled) ,XIO(VFD.STS.MCM_EStop_PB_Pressed) XIO(CTRL.CMD.EStop_Actuated) XIC(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_100,100,100) ,XIC(VFD.STS.In_Power_Saving_Mode) XIO(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_1000,1000,1000) ]OTE(Start_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[XIC(Stop_PB_I)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ]XIC(Stopped)[OTE(CTRL.STS.Start) ,OTL(VFD.CMD.Start) ,OTU(Stopped) ];]]> <![CDATA[XIC(Stop_PB_I)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ]XIC(Stopped)[OTE(CTRL.STS.Start) ,OTL(VFD.CMD.Start) ,OTU(Stopped) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(VFD.STS.MCM_Started)[XIO(Parent_Comm_Faulted) XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ][OTL(Stopped) ,OTE(CTRL.STS.Stop) ];]]> <![CDATA[XIC(VFD.STS.MCM_Started)[XIO(Parent_Comm_Faulted) XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ][OTL(Stopped) ,OTE(CTRL.STS.Stop) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Text> <Text>
<![CDATA[XIC(Stopped)COP(Stop_String,Concatenated_String,1)CONCAT(HMI.Name,Concatenated_String,VFD.CMD.Log)[OTL(VFD.CMD.Stop_Require_Start) ,OTL(VFD.CMD.Stopped_By_Stop_PB) ];]]> <![CDATA[XIC(Stopped)COP(Stop_String,Concatenated_String,1)CONCAT(HMI.Name,Concatenated_String,VFD.CMD.Log)[OTL(VFD.CMD.Stop_Require_Start) ,OTL(VFD.CMD.Stopped_By_Stop_PB) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Comment> <Comment>
<![CDATA[Alarms <![CDATA[Alarms
]]> ]]>
@ -640,17 +608,17 @@ This station contains a light that reflects the state of e-stop condition and po
<![CDATA[XIC(Stopped)OTE(HMI.Alarm.Stopped);]]> <![CDATA[XIC(Stopped)OTE(HMI.Alarm.Stopped);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="8" Type="N">
<Text> <Text>
<![CDATA[[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(1,HMI.Alarm.Pressed);]]> <![CDATA[[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(1,HMI.Alarm.Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="9" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(2,HMI.Alarm.Pressed);]]> <![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(2,HMI.Alarm.Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="10" Type="N">
<Comment> <Comment>
<![CDATA[STATE <![CDATA[STATE
]]> ]]>
@ -659,53 +627,126 @@ This station contains a light that reflects the state of e-stop condition and po
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[XIO(Start_PB_LT_O)MOVE(1,HMI.STATE);]]> <![CDATA[XIO(Start_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="13" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[XIO(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(2,HMI.STATE);]]> <![CDATA[XIO(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="14" Type="N"> <Rung Number="13" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_PB_LT_O)MOVE(3,HMI.STATE);]]> <![CDATA[XIC(Start_PB_LT_O)MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="15" Type="N"> <Rung Number="14" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(4,HMI.STATE);]]> <![CDATA[XIC(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(4,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="16" Type="N"> <Rung Number="15" Type="N">
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="17" Type="N"> <Rung Number="16" Type="N">
<Text> <Text>
<![CDATA[XIO(Stopped)MOVE(5,HMI.STATE);]]> <![CDATA[XIO(Stopped)MOVE(5,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="18" Type="N"> <Rung Number="17" Type="N">
<Text> <Text>
<![CDATA[XIO(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(6,HMI.STATE);]]> <![CDATA[XIO(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(6,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="19" Type="N"> <Rung Number="18" Type="N">
<Text> <Text>
<![CDATA[XIC(Stopped)MOVE(7,HMI.STATE);]]> <![CDATA[XIC(Stopped)MOVE(7,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="20" Type="N"> <Rung Number="19" Type="N">
<Text> <Text>
<![CDATA[XIC(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(8,HMI.STATE);]]> <![CDATA[XIC(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(8,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="20" Type="N">
<Comment>
<![CDATA[Alarms
]]>
</Comment>
<Text>
<![CDATA[XIC(Stopped)OTE(HMI.Alarm.Stopped);]]>
</Text>
</Rung>
<Rung Number="21" Type="N"> <Rung Number="21" Type="N">
<Text> <Text>
<![CDATA[[XIO(Start_PB_I) ,XIO(HMI.Start_PB) ,XIC(Stop_PB_I) ,XIO(HMI.Stop_PB) ]MOVE(0,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="22" Type="N">
<Text>
<![CDATA[[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(1,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(2,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Comment>
<![CDATA[STATE
]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIO(Stopped)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="26" Type="N">
<Text>
<![CDATA[XIC(Stopped)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="27" Type="N">
<Text>
<![CDATA[XIO(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(2,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="28" Type="N">
<Text>
<![CDATA[XIC(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(3,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="29" Type="N">
<Text>
<![CDATA[XIO(Start_PB_LT_O)MOVE(4,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="30" Type="N">
<Text>
<![CDATA[XIO(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(5,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="31" Type="N">
<Text>
<![CDATA[XIC(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(6,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="32" Type="N">
<Text>
<![CDATA[XIC(Stopped)XIC(Start_PB_LT_O)MOVE(7,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="33" Type="N">
<Text>
<![CDATA[OTU(HMI.Start_PB)OTU(HMI.Stop_PB)OTU(CTRL.CMD.EStop_Actuated)COP(Empty_String,CTRL.CMD.Log,1)MOVE(0,HMI.Alarm.Pressed);]]> <![CDATA[OTU(HMI.Start_PB)OTU(HMI.Stop_PB)OTU(CTRL.CMD.EStop_Actuated)COP(Empty_String,CTRL.CMD.Log,1)MOVE(0,HMI.Alarm.Pressed);]]>
</Text> </Text>
</Rung> </Rung>

View File

@ -1,7 +1,98 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 12:38:02 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_S_PB" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-29T06:30:59.659Z" ContainsContext="true" ExportDate="Wed Jul 30 11:54:39 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Emergency Stopped]]>
</Description>
</Member>
<Member Name="Stopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_STATION_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_STATION_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_STATION_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Start command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Stop" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Stop command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop was Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_S5" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="PB_LT" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PushButton Light For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Jammed]]>
</Description>
</Member>
<Member Name="Jam_Reset" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset Command For/From Partner Stations]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/> <Member Name="CMD" DataType="UDT_CTRL_VFD_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
@ -199,110 +290,7 @@ Stopped by Station Stop PushButton]]>
</Member> </Member>
</Members> </Members>
</DataType> </DataType>
<DataType Use="Target" Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User"> <DataType Name="UDT_HMI_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EStopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Emergency Stopped]]>
</Description>
</Member>
<Member Name="Stopped" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_AOI_STATION_S_PB" Family="NoFamily" Class="User">
<Members>
<Member Name="AOI" DataType="AOI_STATION_S_PB" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="HMI" DataType="UDT_HMI_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="CTRL" DataType="UDT_CTRL_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_STATION_S_PB"/>
<Dependency Type="DataType" Name="UDT_HMI_STATION"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_STATION_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_STS"/>
</Dependencies>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor]]>
</Description>
</Member>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_CTRL_STATION_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Start" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Start command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Stop" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Stop command For/From Partner Stations]]>
</Description>
</Member>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Emergency Stop was Actuated]]>
</Description>
</Member>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Log]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_CTRL_S5" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="PB_LT" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[PushButton Light For/From Partner Stations]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Jammed]]>
</Description>
</Member>
<Member Name="Jam_Reset" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset Command For/From Partner Stations]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_HMI_STATION" Family="NoFamily" Class="User">
<Members> <Members>
<Member Name="Alarm" DataType="UDT_ALARMS_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"> <Member Name="Alarm" DataType="UDT_ALARMS_STATION" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description> <Description>
@ -338,7 +326,7 @@ Stopped by Station Stop PushButton]]>
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-07-21T10:35:04.128Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" 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"
> >
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -416,29 +404,21 @@ Stopped by Station Stop PushButton]]>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Toggles EnableOut at the intervas set by On and Off]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]> <![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]> <![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]> <![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]> <![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text> </Text>
@ -447,8 +427,8 @@ Stopped by Station Stop PushButton]]>
</Routine> </Routine>
</Routines> </Routines>
</AddOnInstructionDefinition> </AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_STATION_S_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-21T10:51:22.548Z" EditedBy="AzureAD\RobertYevdokimov" <AddOnInstructionDefinition Use="Target" Name="AOI_STATION_S_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-29T06:30:59.659Z"
SoftwareRevision="v36.00"> EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"/> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"/>
<Parameter Name="EnableOut" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"/> <Parameter Name="EnableOut" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"/>
@ -542,51 +522,36 @@ Stopped by Station Stop PushButton]]>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Station Start Push-Button
Handles restarting e-stop conditions
This station contains a light that reflects the state of e-stop condition and power saving modes.
Similar to the start-stop pushbutton but without the stop button
]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]> <![CDATA[COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIC(CTRL.CMD.EStop_Actuated)OTL(CTRL.STS.EStop_Was_Actuated);]]> <![CDATA[XIC(CTRL.CMD.EStop_Actuated)OTL(CTRL.STS.EStop_Was_Actuated);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ]OTU(CTRL.STS.EStop_Was_Actuated);]]> <![CDATA[[XIC(Start_PB_I) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ]OTU(CTRL.STS.EStop_Was_Actuated);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[[XIO(VFD.STS.In_Power_Saving_Mode) XIC(VFD.STS.Enabled) ,XIO(VFD.STS.MCM_EStop_PB_Pressed) XIO(CTRL.CMD.EStop_Actuated) XIC(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_100,100,100) ,XIC(VFD.STS.In_Power_Saving_Mode) XIO(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_1000,1000,1000) ]OTE(Start_PB_LT_O);]]> <![CDATA[[XIO(VFD.STS.In_Power_Saving_Mode) XIC(VFD.STS.Enabled) ,XIO(VFD.STS.MCM_EStop_PB_Pressed) XIO(CTRL.CMD.EStop_Actuated) XIC(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_100,100,100) ,XIC(VFD.STS.In_Power_Saving_Mode) XIO(CTRL.STS.EStop_Was_Actuated) AOI_FLIP_FLOP(Flip_Flop_1000,1000,1000) ]OTE(Start_PB_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ][OTE(CTRL.STS.Start) ,OTL(VFD.CMD.Start) ];]]> <![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ,XIC(VFD.STS.MCM_Start_PB_Pressed) ][OTE(CTRL.STS.Start) ,OTL(VFD.CMD.Start) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(2,HMI.Alarm.Pressed);]]> <![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(1,HMI.Alarm.Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="6" Type="N">
<Comment> <Comment>
<![CDATA[STATE <![CDATA[STATE
]]> ]]>
@ -595,32 +560,32 @@ Similar to the start-stop pushbutton but without the stop button
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="7" Type="N">
<Text> <Text>
<![CDATA[XIO(Start_PB_LT_O)MOVE(1,HMI.STATE);]]> <![CDATA[XIO(Start_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="8" Type="N">
<Text> <Text>
<![CDATA[XIO(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(2,HMI.STATE);]]> <![CDATA[XIO(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="9" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_PB_LT_O)MOVE(3,HMI.STATE);]]> <![CDATA[XIC(Start_PB_LT_O)MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="10" Type="N">
<Text> <Text>
<![CDATA[XIC(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(4,HMI.STATE);]]> <![CDATA[XIC(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(4,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="12" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="13" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[OTU(HMI.Start_PB)OTU(CTRL.CMD.EStop_Actuated)COP(Empty_String,CTRL.CMD.Log,1)MOVE(0,HMI.Alarm.Pressed);]]> <![CDATA[OTU(HMI.Start_PB)OTU(CTRL.CMD.EStop_Actuated)COP(Empty_String,CTRL.CMD.Log,1)MOVE(0,HMI.Alarm.Pressed);]]>
</Text> </Text>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="Banner_ZMX_Control" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.2 " TargetLastEdited="2025-07-08T19:24:45.725Z" ContainsContext="true" ExportDate="Wed Jul 23 13:25:40 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="Banner_ZMX_Control" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.2 " TargetLastEdited="2025-07-08T19:24:45.725Z" ContainsContext="true" ExportDate="Tue Jul 29 17:07:01 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MCM04_Chute_Load"> <Controller Use="Context" Name="MCM04_Chute_Load">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="Banner_ZMX_Data" Family="NoFamily" Class="User"> <DataType Name="Banner_ZMX_Data" Family="NoFamily" Class="User">

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="Banner_ZMX_Data" TargetType="DataType" ContainsContext="true" ExportDate="Fri Jul 11 16:04:06 2025" ExportOptions="NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="Banner_ZMX_Data" TargetType="DataType" ContainsContext="true" ExportDate="Tue Jul 29 17:05:56 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MCM04"> <Controller Use="Context" Name="D2C">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Use="Target" Name="Banner_ZMX_Data" Family="NoFamily" Class="User"> <DataType Use="Target" Name="Banner_ZMX_Data" Family="NoFamily" Class="User">
<Members> <Members>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Mon Jul 28 15:57:04 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Tue Jul 29 12:29:48 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
@ -203,7 +203,7 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-07-21T10:35:04.128Z" EditedBy="AzureAD\RobertYevdokimov" SoftwareRevision="v36.00" <AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" 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"
> >
<Parameters> <Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only"> <Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -281,29 +281,21 @@
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Toggles EnableOut at the intervas set by On and Off]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]> <![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="2" Type="N"> <Rung Number="1" Type="N">
<Text> <Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]> <![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="2" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]> <![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]> <![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text> </Text>
@ -312,7 +304,7 @@
</Routine> </Routine>
</Routines> </Routines>
</AddOnInstructionDefinition> </AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_STATION_EPC" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-28T11:56:31.601Z" EditedBy="LCIBATUMI\beka.makharadze" <AddOnInstructionDefinition Name="AOI_STATION_EPC" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2012-02-01T16:00:09.261Z" CreatedBy="Not Available" EditedDate="2025-07-29T08:29:20.076Z" EditedBy="LCIBATUMI\beka.makharadze"
SoftwareRevision="v36.00"> SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[EMERGENSY STOP STATION PUSH BUTTON]]> <![CDATA[EMERGENSY STOP STATION PUSH BUTTON]]>
@ -364,7 +356,7 @@
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/> <DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData> </DefaultData>
</Parameter> </Parameter>
<Parameter Name="Beacon_Light_O" TagType="Base" DataType="BOOL" Usage="InOut" Radix="Decimal" Required="true" Visible="true" Constant="false"> <Parameter Name="BCN_LT_O" TagType="Base" DataType="BOOL" Usage="InOut" Radix="Decimal" Required="true" Visible="true" Constant="false">
<Description> <Description>
<![CDATA[Beacon Light]]> <![CDATA[Beacon Light]]>
</Description> </Description>
@ -451,21 +443,29 @@
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/> <DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData> </DefaultData>
</LocalTag> </LocalTag>
<LocalTag Name="Tripped_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[7,'TRIPPED$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$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="7">
<![CDATA['TRIPPED']]>
</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>
</LocalTags> </LocalTags>
<Routines> <Routines>
<Routine Name="Logic" Type="RLL"> <Routine Name="Logic" Type="RLL">
<RLLContent> <RLLContent>
<Rung Number="0" Type="N"> <Rung Number="0" Type="N">
<Comment>
<![CDATA[Emergency Pullcord Drops out VFD STO and Turns on Beacon
The actual saftey logic is located in the Saftey Task, this AOI handles coordinating the states of the lights for devices associated when an e-stop condition has been triggered.
Affected devices included the MCM and Station used to reset the e-stop condition
]]>
</Comment>
<Text> <Text>
<![CDATA[NOP();]]> <![CDATA[COP(Station.CMD.Log,Station.STS.Log,1);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="1" Type="N"> <Rung Number="1" Type="N">
@ -480,12 +480,12 @@ Affected devices included the MCM and Station used to reset the e-stop condition
</Rung> </Rung>
<Rung Number="3" Type="N"> <Rung Number="3" Type="N">
<Text> <Text>
<![CDATA[XIO(Estop_Was_Actuated)[ONS(Beacon_ONS) OTU(Beacon_Light_O) ,JMP(JMP) ];]]> <![CDATA[XIO(Estop_Was_Actuated)[ONS(Beacon_ONS) OTU(BCN_LT_O) ,JMP(JMP) ];]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="4" Type="N"> <Rung Number="4" Type="N">
<Text> <Text>
<![CDATA[[XIC(EStop_Actuated) AOI_FLIP_FLOP(Flip_Flop,500,500) ,XIC(Station.STS.EStop_Was_Actuated) XIO(EStop_Actuated) ]OTE(Beacon_Light_O);]]> <![CDATA[[XIC(EStop_Actuated) AOI_FLIP_FLOP(Flip_Flop,500,500) ,XIC(Station.STS.EStop_Was_Actuated) XIO(EStop_Actuated) ]OTE(BCN_LT_O);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="5" Type="N">
@ -536,7 +536,12 @@ Affected devices included the MCM and Station used to reset the e-stop condition
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="11" Type="N">
<Text> <Text>
<![CDATA[[XIC(EStop_Actuated) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(EStop_Actuated) [XIO(Acknowledge) MOVE(' TRIPPED',Concatenated_String) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,MOVE(' TRIPPED',Concatenated_String) CONCAT(HMI.Name,Concatenated_String,Station.CMD.Log) ] ,NE(MCM.STS.Acknowledge_Log,'') EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge) MOVE('',MCM.STS.Acknowledge_Log) ];]]> <![CDATA[[XIC(EStop_Actuated) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(EStop_Actuated) [XIO(Acknowledge) COP(Tripped_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,COP(Tripped_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,Station.CMD.Log) ] ,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="12" Type="N">
<Text>
<![CDATA[COP(Empty_String,Station.CMD.Log,1);]]>
</Text> </Text>
</Rung> </Rung>
</RLLContent> </RLLContent>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Wed Jul 23 13:31:47 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Tue Jul 29 14:38:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User"> <DataType Use="Target" Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User">
@ -141,7 +141,7 @@
</DataType> </DataType>
</DataTypes> </DataTypes>
<AddOnInstructionDefinitions Use="Context"> <AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_STATION_JR_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:10:22.337Z" CreatedBy="Not Available" EditedDate="2025-07-18T19:45:32.318Z" EditedBy="LCIBATUMI\ilia.gurielidze" <AddOnInstructionDefinition Name="AOI_STATION_JR_PB" Class="Standard" Revision="1.0" Vendor="Automation Standard" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2011-11-21T15:10:22.337Z" CreatedBy="Not Available" EditedDate="2025-07-29T10:11:12.041Z" EditedBy="LCIBATUMI\beka.makharadze"
SoftwareRevision="v36.00"> SoftwareRevision="v36.00">
<Description> <Description>
<![CDATA[JAM RESET STATION PUSH BUTTON <![CDATA[JAM RESET STATION PUSH BUTTON
@ -305,10 +305,15 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
</Rung> </Rung>
<Rung Number="5" Type="N"> <Rung Number="5" Type="N">
<Text> <Text>
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed.0);]]> <![CDATA[XIO(JR_PB_I)MOVE(0,HMI.Alarm.Pressed);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="6" Type="N"> <Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(JR_PB_I)MOVE(1,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Comment> <Comment>
<![CDATA[Colors of Animation <![CDATA[Colors of Animation
]]> ]]>
@ -317,7 +322,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[NOP();]]> <![CDATA[NOP();]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="7" Type="N"> <Rung Number="8" Type="N">
<Comment> <Comment>
<![CDATA[Gray <![CDATA[Gray
]]> ]]>
@ -326,7 +331,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIO(JR_PB_LT_O)MOVE(0,HMI.STATE);]]> <![CDATA[XIO(JR_PB_LT_O)MOVE(0,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="8" Type="N"> <Rung Number="9" Type="N">
<Comment> <Comment>
<![CDATA[White <![CDATA[White
]]> ]]>
@ -335,7 +340,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]> <![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="9" Type="N"> <Rung Number="10" Type="N">
<Comment> <Comment>
<![CDATA[Yellow <![CDATA[Yellow
]]> ]]>
@ -344,7 +349,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIO(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(3,HMI.STATE);]]> <![CDATA[XIO(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(3,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="10" Type="N"> <Rung Number="11" Type="N">
<Comment> <Comment>
<![CDATA[Green <![CDATA[Green
]]> ]]>
@ -353,7 +358,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[XIC(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(2,HMI.STATE);]]> <![CDATA[XIC(JR_PB_LT_O)[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]MOVE(2,HMI.STATE);]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="11" Type="N"> <Rung Number="12" Type="N">
<Text> <Text>
<![CDATA[COP(Empty_String,CTRL.CMD.Log,1)OTU(CTRL.CMD.Jammed);]]> <![CDATA[COP(Empty_String,CTRL.CMD.Log,1)OTU(CTRL.CMD.Jammed);]]>
</Text> </Text>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Wed Jul 23 13:31:54 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans"> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Tue Jul 29 12:30:04 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01"> <Controller Use="Context" Name="MTN6_MCM01">
<DataTypes Use="Context"> <DataTypes Use="Context">
<DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User"> <DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
@ -684,6 +684,79 @@ Stopped by Station Stop PushButton]]>
</Text> </Text>
</Rung> </Rung>
<Rung Number="20" Type="N"> <Rung Number="20" Type="N">
<Comment>
<![CDATA[Alarms
]]>
</Comment>
<Text>
<![CDATA[XIC(Stopped)OTE(HMI.Alarm.Stopped);]]>
</Text>
</Rung>
<Rung Number="21" Type="N">
<Text>
<![CDATA[[XIO(Start_PB_I) ,XIO(HMI.Start_PB) ,XIC(Stop_PB_I) ,XIO(HMI.Stop_PB) ]MOVE(0,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="22" Type="N">
<Text>
<![CDATA[[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(1,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Text>
<![CDATA[[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(2,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Comment>
<![CDATA[STATE
]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIO(Stopped)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="26" Type="N">
<Text>
<![CDATA[XIC(Stopped)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="27" Type="N">
<Text>
<![CDATA[XIO(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(2,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="28" Type="N">
<Text>
<![CDATA[XIC(Stopped)[XIO(Stop_PB_I) ,XIC(HMI.Stop_PB) ]MOVE(3,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="29" Type="N">
<Text>
<![CDATA[XIO(Start_PB_LT_O)MOVE(4,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="30" Type="N">
<Text>
<![CDATA[XIO(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(5,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="31" Type="N">
<Text>
<![CDATA[XIC(Start_PB_LT_O)[XIC(Start_PB_I) ,XIC(HMI.Start_PB) ]MOVE(6,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="32" Type="N">
<Text>
<![CDATA[XIC(Stopped)XIC(Start_PB_LT_O)MOVE(7,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="33" Type="N">
<Text> <Text>
<![CDATA[OTU(HMI.Start_PB)OTU(HMI.Stop_PB)OTU(CTRL.CMD.EStop_Actuated)COP(Empty_String,CTRL.CMD.Log,1)MOVE(0,HMI.Alarm.Pressed);]]> <![CDATA[OTU(HMI.Start_PB)OTU(HMI.Stop_PB)OTU(CTRL.CMD.EStop_Actuated)COP(Empty_String,CTRL.CMD.Log,1)MOVE(0,HMI.Alarm.Pressed);]]>
</Text> </Text>