Update UDTs, AOIs #98

Merged
ilia.gurielidze merged 2 commits from beka-3 into main 2025-08-13 12:33:21 +00:00
35 changed files with 138986 additions and 1100 deletions

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_APF" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:43:20.771Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:14 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_VFD" Family="NoFamily" Class="User">
<Members>
@ -481,7 +481,7 @@ Pressed]]>
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
<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-08-06T12:43:20.771Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[Varible Frequency Drive]]>
@ -1131,74 +1131,6 @@ 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.
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>
<Text>
@ -1638,8 +1570,6 @@ HMI.Alarm.Maintenance_Mode is raised while Maintenance_Mode is active.
<Routine Name="Prescan" Type="RLL"/>
</Routines>
<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_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_VFD"/>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_CB_MONITOR" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T13:11:33.874Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:20 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_CB_MONITOR" Family="NoFamily" Class="User">
<Members>
@ -160,7 +160,7 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
<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-08-06T13:11:33.874Z" EditedBy="LCIBATUMI\ilia.gurielidze"
SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -407,157 +407,168 @@
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[PDP Circuit Breaker Monitoring AOI
Sends gneral and specific to CB Alarms to SCADA when the CB Fault is present
Sends the Power Branch Fault to MCM that can be reset on MCM
]]>
</Comment>
<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[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIC(Power_Branch_Fault)[OTE(CTRL.STS.Power_Branch_Fault) ,OTL(MCM.CMD.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>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIC(MCM.CMD.Power_Branch_Fault)XIO(Power_Branch_Fault)OTL(MCM.CMD.Power_Branch_Was_Faulted);]]>
<![CDATA[XIC(Power_Branch_Fault)[OTE(CTRL.STS.Power_Branch_Fault) ,OTL(MCM.CMD.Power_Branch_Fault) ];]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.Power_Branch_Fault_Reset_Requested)XIO(Power_Branch_Fault)OTU(MCM.CMD.Power_Branch_Fault);]]>
<![CDATA[XIC(MCM.CMD.Power_Branch_Fault)XIO(Power_Branch_Fault)OTL(MCM.CMD.Power_Branch_Was_Faulted);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(Power_Branch_Fault)OTE(HMI.Alarm.Power_Branch_Fault);]]>
<![CDATA[XIC(MCM.STS.Power_Branch_Fault_Reset_Requested)XIO(Power_Branch_Fault)OTU(MCM.CMD.Power_Branch_Fault);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(CB1_I)OTE(HMI.Alarm.CB1_Fault);]]>
<![CDATA[XIC(Power_Branch_Fault)OTE(HMI.Alarm.Power_Branch_Fault);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(CB2_I)OTE(HMI.Alarm.CB2_Fault);]]>
<![CDATA[XIC(CB1_I)OTE(HMI.Alarm.CB1_Fault);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Text>
<![CDATA[XIC(CB3_I)OTE(HMI.Alarm.CB3_Fault);]]>
<![CDATA[XIC(CB2_I)OTE(HMI.Alarm.CB2_Fault);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Text>
<![CDATA[XIC(CB4_I)OTE(HMI.Alarm.CB4_Fault);]]>
<![CDATA[XIC(CB3_I)OTE(HMI.Alarm.CB3_Fault);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Text>
<![CDATA[XIC(CB5_I)OTE(HMI.Alarm.CB5_Fault);]]>
<![CDATA[XIC(CB4_I)OTE(HMI.Alarm.CB4_Fault);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Text>
<![CDATA[XIC(CB6_I)OTE(HMI.Alarm.CB6_Fault);]]>
<![CDATA[XIC(CB5_I)OTE(HMI.Alarm.CB5_Fault);]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Text>
<![CDATA[XIC(CB7_I)OTE(HMI.Alarm.CB7_Fault);]]>
<![CDATA[XIC(CB6_I)OTE(HMI.Alarm.CB6_Fault);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Text>
<![CDATA[XIC(CB8_I)OTE(HMI.Alarm.CB8_Fault);]]>
<![CDATA[XIC(CB7_I)OTE(HMI.Alarm.CB7_Fault);]]>
</Text>
</Rung>
<Rung Number="13" Type="N">
<Text>
<![CDATA[XIC(CB9_I)OTE(HMI.Alarm.CB9_Fault);]]>
<![CDATA[XIC(CB8_I)OTE(HMI.Alarm.CB8_Fault);]]>
</Text>
</Rung>
<Rung Number="14" Type="N">
<Text>
<![CDATA[XIC(CB10_I)OTE(HMI.Alarm.CB10_Fault);]]>
<![CDATA[XIC(CB9_I)OTE(HMI.Alarm.CB9_Fault);]]>
</Text>
</Rung>
<Rung Number="15" Type="N">
<Text>
<![CDATA[XIC(CB11_I)OTE(HMI.Alarm.CB11_Fault);]]>
<![CDATA[XIC(CB10_I)OTE(HMI.Alarm.CB10_Fault);]]>
</Text>
</Rung>
<Rung Number="16" Type="N">
<Text>
<![CDATA[XIC(CB12_I)OTE(HMI.Alarm.CB12_Fault);]]>
<![CDATA[XIC(CB11_I)OTE(HMI.Alarm.CB11_Fault);]]>
</Text>
</Rung>
<Rung Number="17" Type="N">
<Text>
<![CDATA[XIC(CB13_I)OTE(HMI.Alarm.CB13_Fault);]]>
<![CDATA[XIC(CB12_I)OTE(HMI.Alarm.CB12_Fault);]]>
</Text>
</Rung>
<Rung Number="18" Type="N">
<Text>
<![CDATA[XIC(CB14_I)OTE(HMI.Alarm.CB14_Fault);]]>
<![CDATA[XIC(CB13_I)OTE(HMI.Alarm.CB13_Fault);]]>
</Text>
</Rung>
<Rung Number="19" Type="N">
<Text>
<![CDATA[XIC(CB15_I)OTE(HMI.Alarm.CB15_Fault);]]>
<![CDATA[XIC(CB14_I)OTE(HMI.Alarm.CB14_Fault);]]>
</Text>
</Rung>
<Rung Number="20" Type="N">
<Text>
<![CDATA[XIC(CB16_I)OTE(HMI.Alarm.CB16_Fault);]]>
<![CDATA[XIC(CB15_I)OTE(HMI.Alarm.CB15_Fault);]]>
</Text>
</Rung>
<Rung Number="21" Type="N">
<Text>
<![CDATA[XIC(CB17_I)OTE(HMI.Alarm.CB17_Fault);]]>
<![CDATA[XIC(CB16_I)OTE(HMI.Alarm.CB16_Fault);]]>
</Text>
</Rung>
<Rung Number="22" Type="N">
<Text>
<![CDATA[XIC(CB18_I)OTE(HMI.Alarm.CB18_Fault);]]>
<![CDATA[XIC(CB17_I)OTE(HMI.Alarm.CB17_Fault);]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Text>
<![CDATA[XIC(CB19_I)OTE(HMI.Alarm.CB19_Fault);]]>
<![CDATA[XIC(CB18_I)OTE(HMI.Alarm.CB18_Fault);]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Text>
<![CDATA[XIC(CB20_I)OTE(HMI.Alarm.CB20_Fault);]]>
<![CDATA[XIC(CB19_I)OTE(HMI.Alarm.CB19_Fault);]]>
</Text>
</Rung>
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIC(CB21_I)OTE(HMI.Alarm.CB21_Fault);]]>
<![CDATA[XIC(CB20_I)OTE(HMI.Alarm.CB20_Fault);]]>
</Text>
</Rung>
<Rung Number="26" Type="N">
<Text>
<![CDATA[XIC(CB22_I)OTE(HMI.Alarm.CB22_Fault);]]>
<![CDATA[XIC(CB21_I)OTE(HMI.Alarm.CB21_Fault);]]>
</Text>
</Rung>
<Rung Number="27" Type="N">
<Text>
<![CDATA[XIC(CB23_I)OTE(HMI.Alarm.CB23_Fault);]]>
<![CDATA[XIC(CB22_I)OTE(HMI.Alarm.CB22_Fault);]]>
</Text>
</Rung>
<Rung Number="28" Type="N">
<Text>
<![CDATA[XIC(CB24_I)OTE(HMI.Alarm.CB24_Fault);]]>
<![CDATA[XIC(CB23_I)OTE(HMI.Alarm.CB23_Fault);]]>
</Text>
</Rung>
<Rung Number="29" Type="N">
<Text>
<![CDATA[XIC(CB25_I)OTE(HMI.Alarm.CB25_Fault);]]>
<![CDATA[XIC(CB24_I)OTE(HMI.Alarm.CB24_Fault);]]>
</Text>
</Rung>
<Rung Number="30" Type="N">
<Text>
<![CDATA[XIC(CB25_I)OTE(HMI.Alarm.CB25_Fault);]]>
</Text>
</Rung>
<Rung Number="31" Type="N">
<Text>
<![CDATA[XIC(CB26_I)OTE(HMI.Alarm.CB26_Fault);]]>
</Text>
</Rung>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_D2C_CHUTE" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-07-31T06:29:40.092Z" ContainsContext="true" ExportDate="Thu Jul 31 10:30:44 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="D2C">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_D2C_CHUTE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:46:24.455Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:25 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="Banner_ZMX_Data" Family="NoFamily" Class="User">
<Members>
@ -583,7 +583,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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">
<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>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -683,7 +684,8 @@
</Routine>
</Routines>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="Banner_ZMX_Control" Revision="1.2" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-12-21T15:11:52.057Z" CreatedBy="DUKE\jpreisen" EditedDate="2025-07-08T19:24:45.725Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<AddOnInstructionDefinition Name="Banner_ZMX_Control" Class="Standard" Revision="1.2" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-12-21T15:11:52.057Z" CreatedBy="DUKE\jpreisen" EditedDate="2025-07-08T19:24:45.725Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
<RevisionNote>
<![CDATA[Cyclic operation timing adjusted. Now waits 600 msecs instead of 300 after Cyclic Bit is turned on. Also the error timer is now 5 seconds instead of 3.]]>
</RevisionNote>
@ -1153,8 +1155,8 @@ Not Available at thsi time.]]>
<Dependency Type="DataType" Name="Banner_ZMX_Data"/>
</Dependencies>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Use="Target" Name="AOI_D2C_CHUTE" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-03T10:55:21.713Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-31T06:29:40.092Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00"
>
<AddOnInstructionDefinition Use="Target" Name="AOI_D2C_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-03T10:55:21.713Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-08-06T12:46:24.455Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -1730,41 +1732,6 @@ When Ready is high the sorter diverts cartons to this chute.
Jam handling
A jam reported by the upstream station latches Jammed and blocks Ready; the jam is cleared by Station.STS.Jam_Reset_Requested.
HMI.STATE codes
0 disabled1 no container2 ready-to-enable3 enabled4 half-full5 full6 jammed.
Command bits (received)
Station & systemStation.STS.JammedStation.STS.Jam_Reset_RequestedDPM.STS.Communication_Faulted
Banner blockZMX_* (raw I/O and status via Banner_ZMX_Control)
OperatorGS_PB_IHMI.GS_PBHMI.TimeOut
Status bits (set)
CTRL.STS.JammedCTRL.STS.Half_FullCTRL.STS.Full
CTRL.STS.EnabledCTRL.STS.Ready
BusyDoneBin_ErrorCyclic_ErrorComms_Error
Tall_Shuttle_PresentCart_PresentShort_Shuttle_PresentNo_Container
Half_FullFullReady_To_Be_EnabledEnabledReady
B_Beacon_Segment_Animation_OG_Beacon_Segment_Animation_OGS_PB_Light_O
HMI bits
HMI.GS_PB
HMI.TimeOut
HMI.STATE
HMI.Alarms.DisabledHalf_FullFullJammedGS_PB_PressedNo_Container
Alarm bits
HMI.Alarms.Disabled chute disabled
HMI.Alarms.Half_Full half-full latched
HMI.Alarms.Full full latched
HMI.Alarms.Jammed jammed latched
HMI.Alarms.GS_PB_Pressed green-start PB held
HMI.Alarms.No_Container no container present
]]>
</Comment>
<Text>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_DPM" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:44:47.324Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:29 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
@ -151,8 +151,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<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-08-06T12:44:47.324Z"
EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00">
<Description>
<![CDATA[DATA POWER MODULE]]>
</Description>
@ -312,21 +312,6 @@ If the same line later appears in MCM.STS.Acknowledge_Log, the routine latches A
The command bit MCM.STS.Unacknowledge_All_Logs resets the Acknowledge latch, guaranteeing that the next loss of communication will produce a fresh message.
Command bits
The routine receives Communication_Fault from its own port monitor.
The routine receives EN4TR_Communication_Fault from the rack adapter.
The routine receives MCM.STS.Unacknowledge_All_Logs to clear the acknowledge latch.
Status bits
The routine sets Communication_Faulted when either link is down.
The routine sets CTRL.STS.Communication_Faulted with the same value.
HMI bits
The HMI displays HMI.STATE as 0 for healthy and 1 for faulted.
The HMI raises HMI.Alarm.Communication_Faulted only while Communication_Faulted is true and EN4TR_Communication_Fault is false.
Alarm bits
The system raises HMI.Alarm.Communication_Faulted whenever the switch itself loses communication and the EN4TR adapter is still online.
]]>
</Comment>
<Text>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_ENCODER" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T13:13:46.473Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_ENCODER" Family="NoFamily" Class="User">
<Members>
@ -252,7 +252,7 @@ Stopped by Station Stop PushButton]]>
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
<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-08-06T13:13:46.473Z"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description>
<![CDATA[ENCODER]]>
@ -420,6 +420,17 @@ Stopped by Station Stop PushButton]]>
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Encoder AOI
Sends Encoder Fault to the Upstream and Downstream Conveyors
Sends Alarm to SCADA
]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Comment>
<![CDATA[The Encoder sends a pulse each time Conveyor moves by 1 Inch
@ -429,12 +440,12 @@ Stopped by Station Stop PushButton]]>
<![CDATA[XIC(Encoder_Pulse_I)CTU(Encoder_Pulse_CTU,?,?);]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIO(Speed_Timer.DN)TON(Speed_Timer,?,?);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Rung Number="3" Type="N">
<Comment>
<![CDATA[Coveyor's Speed Formula
Inches Per Second * 5 = Feet Per Minute
@ -444,27 +455,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);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Rung Number="4" Type="N">
<Text>
<![CDATA[MUL(Conveyor.STS.Current_Speed,Low_Speed_In_Percentages,Low_Speed)DIV(Low_Speed,100,Low_Speed);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Rung Number="5" Type="N">
<Text>
<![CDATA[LT(Conveyor_Speed,Low_Speed)TON(Low_Speed_Timer,?,?)XIC(Low_Speed_Timer.DN)XIO(Encoder_Faulted)OTL(Encoder_Faulted);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(Conveyor.STS.MCM_JR_PB_Pressed)XIC(Encoder_Faulted)OTU(Encoder_Faulted);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Rung Number="7" Type="N">
<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) ];]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Rung Number="8" Type="N">
<Text>
<![CDATA[XIC(Encoder_Faulted)OTE(HMI.Alarm.Encoder_Faulted);]]>
</Text>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_EXTENDO" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-07-31T06:27:00.557Z" ContainsContext="true" ExportDate="Thu Jul 31 10:28:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_EXTENDO" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T13:07:47.495Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:40 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="Caljan_PNMF_UDT_Input" Family="NoFamily" Class="User">
<Description>
@ -423,11 +423,8 @@
</Description>
</Member>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="EX_Type" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 - Normal 1 - FMH Extendo]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_HMI_EX12" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EX_Type" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_HMI_EX12" BitNumber="0" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_EXTENDO"/>
@ -435,8 +432,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Use="Target" Name="AOI_EXTENDO" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-31T06:27:00.557Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00"
>
<AddOnInstructionDefinition Use="Target" Name="AOI_EXTENDO" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-08-06T13:07:47.495Z" EditedBy="LCIBATUMI\ilia.gurielidze"
SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -450,8 +447,8 @@
</Parameter>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_EXTENDO" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_EXTENDO" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_O" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_7E6CF713:I:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_I" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_78F5E13D:O:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_O" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_F94A7390:I:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_I" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_DD7B81FB:O:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="MCM" TagType="Base" DataType="UDT_CTRL_MCM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="DPM" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false">
<Description>
@ -793,61 +790,6 @@ If loading is not allowed the stop bit Caljan_Input.Belt_Stop is asserted.
Running feedback
When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the state to CTRL.STS.Running.
Operating modes and status flags
Caljan_Output.Front_EMS → Loading Mode
Caljan_Output.Customer_EMS → Unloading Mode
Caljan_Output.Belt_Accumulation → Power Saving Mode
Caljan_Output.Rear_EMS → E-Stopped
Caljan_Output.Aopen_Active → Aopen Active
Caljan_Output.Fully_Retracted / Fully_Extended → positional flags.
Logging
New occurrences of communication fault or full belt push a formatted string into MCM.CMD.Log and increment the quantity counter.
The entry self-clears when MCM.STS.Acknowledge_Log echoes the same text.
MCM.STS.Unacknowledge_All_Logs re-arms every latch so a repeat fault is re-logged.
HMI state code
0 loading not allowed1 loading allowed2 running
3 full4 communication fault5 Extendo faulted6 E-Stop
Command bits (received)
CTRL.CMD.Interlock
CTRL.CMD.Run_Up_Enabled
MCM.STS.System_Started
MCM.STS.VFD_Fault_Reset_Requested
DPM.STS.Communication_Faulted
HMI.PEC_Override_PB
HMI.Extendo_Faults_Reset_PB
MCM.STS.Unacknowledge_All_Logs
MCM.STS.Acknowledge_Log (comparison for auto-clear)
MCM.CMD.Log / Log_Quantity (target for new entries)
Status bits (set)
CTRL.STS.Interlock
CTRL.STS.Allow_Loading
CTRL.STS.Running
Extendo_FaultedExtendo_Faulted_Reset_Required
Communication_FaultedNo_Interlock
Loading_ModeUnloading_ModePower_Saving_Mode
Aopen_ActiveFully_RetractedFully_Extended
HMI bits
The HMI displays and/or exchanges—
HMI.Loading_Mode
HMI.Unloading_Mode
HMI.Power_Saving_Mode
HMI.Aopen_Active
HMI.Fully_Retracted
HMI.Fully_Extended
HMI.STATE
Alarm bits
HMI.Alarm.Full raised when Full is true.
HMI.Alarm.Communication_Faulted raised when Communication Faulted is true.
HMI.Alarm.Extendo_Faulted raised when Extendo Faulted is true.
]]>
</Comment>
<Text>
@ -1064,7 +1006,7 @@ HMI.Alarm.Extendo_Faulted raised when Extendo Faulted is true.
</Rung>
<Rung Number="40" Type="N">
<Text>
<![CDATA[MOVE(0,HMI.EX_Type);]]>
<![CDATA[AFI()OTE(HMI.EX_Type);]]>
</Text>
</Rung>
</RLLContent>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_FLIP_FLOP" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-05-21T10:05:03.350Z" ContainsContext="true" ExportDate="Wed Jul 23 13:24:34 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_FLIP_FLOP" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-05-21T10:05:03.350Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:43 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
</DataTypes>
<AddOnInstructionDefinitions Use="Context">

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_FPE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:47:11.869Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:45 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_PE" Family="NoFamily" Class="User">
<Members>
@ -280,8 +280,8 @@ Stopped by Station Stop PushButton]]>
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<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-08-06T12:47:11.869Z"
EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00">
<Description>
<![CDATA[FULL PHOTOEYE]]>
</Description>
@ -420,29 +420,6 @@ On the first scan of each full condition the routine writes “<Device HMI.Name>
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>
<Text>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_IO_BLOCK" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:47:27.176Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:47 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
@ -150,8 +150,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<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-08-06T12:47:27.176Z"
EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -284,24 +284,7 @@ An HMI alarm is produced only when IOBlock itself is faulted while the parent re
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.
]]>
The command MCM.STS.Unacknowledge_All_Logs resets the latch so the next fault generates a fresh message.]]>
</Comment>
<Text>
<![CDATA[[XIC(Communication_Fault) ,XIC(Parent.STS.Communication_Faulted) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_JPE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:47:54.500Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:49 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_PE" Family="NoFamily" Class="User">
<Members>
@ -117,9 +117,9 @@
</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">
<Member Name="JR_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]]>
<![CDATA[Jam Reset Push Button Light]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
@ -452,8 +452,8 @@ Stopped by Station Stop PushButton]]>
</Routine>
</Routines>
</AddOnInstructionDefinition>
<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"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<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-08-06T12:47:54.500Z"
EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00">
<Description>
<![CDATA[JAM PHOTOEYE]]>
</Description>
@ -658,37 +658,7 @@ The entry self-clears when the same text appears in MCM.STS.Acknowledge_Log; MCM
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.
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.
]]>
Run Up unlatches if the eye blocks again or the Jam re-appears.]]>
</Comment>
<Text>
<![CDATA[MUL(HMI.TimeOut,1000,Jam_Timer.PRE);]]>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_MCM" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:48:37.223Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:52 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_MCM" Family="NoFamily" Class="User">
<Members>
@ -270,8 +270,8 @@ Faulted]]>
</Routine>
</Routines>
</AddOnInstructionDefinition>
<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"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<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-08-06T12:48:37.223Z"
EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00">
<Description>
<![CDATA[MAIN CONTROL MODULE]]>
</Description>
@ -689,9 +689,7 @@ Faulted]]>
<Comment>
<![CDATA[MCM Main Control Module
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.
This module acts as the central logbook and primary interface for the subsystem.
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.
@ -705,84 +703,7 @@ 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.
Start_PB_LT_O lights whenever the system is running.
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.
]]>
When HMI.Setup_Motor_Speeds is asserted, the module broadcasts the configured speed set-points to every drive in the system.]]>
</Comment>
<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) ];]]>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_PB_CHUTE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T03:46:55.995Z" ContainsContext="true" ExportDate="Wed Jul 23 13:25:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MCM04_Chute_Load">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_PB_CHUTE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:51:07.787Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:55 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_PB_CHUTE" Family="NoFamily" Class="User">
<Members>
@ -266,7 +266,7 @@
</Routine>
</Routines>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Use="Target" Name="AOI_PB_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:06:58.311Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-11T03:46:55.995Z" EditedBy="LCIBATUMI\ilia.gurielidze"
<AddOnInstructionDefinition Use="Target" Name="AOI_PB_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:06:58.311Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-08-06T12:51:07.787Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -512,49 +512,6 @@ Releasing the button de-energises the solenoid and clears the state.
Beacon summary
Blue 0 = off1 = solid (half-full)2 = flash (full)
Green 0 = off1 = flash (chute enabled)
HMI.STATE
0 disabled1 enabled2 half-full3 full4 jammed
Command bits (received)
CTRL.CMD.Jammed (cleared each scan)
Station.STS.Jammed
Station.STS.Jam_Reset_Requested
IO_Block_Communication_Fault
Half_Full_I
Full_I
PR_PB_I
HMI.Enable_Chute_PB
HMI.TimeOut
Status bits (set)
CTRL.STS.Enabled
CTRL.STS.Half_Full
CTRL.STS.Full
CTRL.STS.Jammed
CTRL.STS.Ready
Disabled
Half_Full
Full
Jammed
Ready
Solenoid_O
B_Beacon_Segment_Animation (blue)
G_Beacon_Segment_Animation (green)
HMI bits
HMI.Enable_Chute_PB
HMI.TimeOut
HMI.STATE
HMI.PR_PB_STATE
HMI.Chute_Type (set to 2)
Alarm bits
HMI.Alarms.Disabled chute is disabled
HMI.Alarms.Half_Full half-full condition latched
HMI.Alarms.Full full condition latched
HMI.Alarms.Jam jammed condition latched
HMI.Alarms.PR_PB_Pressed package-release button held
]]>
</Comment>
<Text>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_PMM" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T13:16:30.854Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:57 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_PMM" Family="NoFamily" Class="User">
<Members>
@ -39,7 +39,7 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
<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-08-06T13:16:30.854Z" EditedBy="LCIBATUMI\ilia.gurielidze"
SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -107,16 +107,26 @@
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Power Measurement Monitor AOI
Sends Inforamtion to SCADA about Total Power Consumption, Kilo Wats Per Hour, Maximum Power recorded and PMM module Fault
]]>
</Comment>
<Text>
<![CDATA[[XIC(PMM_Input1.ConnectionFaulted) ,XIC(Parent_Comm_Fault) ]OTE(Communication_Fault);]]>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<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[[XIC(PMM_Input1.ConnectionFaulted) ,XIC(Parent_Comm_Fault) ]OTE(Communication_Fault);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<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);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Comment>
<![CDATA[Running
]]>
@ -125,7 +135,7 @@
<![CDATA[XIO(Communication_Fault)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Rung Number="4" Type="N">
<Comment>
<![CDATA[Communication Faulted
]]>
@ -134,12 +144,12 @@
<![CDATA[XIC(Communication_Fault)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Communication_Fault);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIO(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Fault);]]>
</Text>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_RACK" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T12:49:36.842Z" ContainsContext="true" ExportDate="Thu Aug 07 10:28:59 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_RACK" Family="NoFamily" Class="User">
<Members>
@ -21,7 +21,7 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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"
<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-08-06T12:49:36.842Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -125,27 +125,7 @@ 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.
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.
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.
]]>
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.]]>
</Comment>
<Text>
<![CDATA[GSV(Module,Slot5_IB16,FaultCode,Slot5_IB16_Fault_Code)NE(Slot5_IB16_Fault_Code,0)OTE(Slot5_IB16_Faulted);]]>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<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="Thu Jul 31 10:32:41 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="D2C">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_JR_CHUTE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T13:17:51.151Z" ContainsContext="true" ExportDate="Thu Aug 07 10:29:01 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members>
@ -65,7 +65,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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">
<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>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -165,8 +166,8 @@
</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"
>
<AddOnInstructionDefinition Use="Target" Name="AOI_STATION_JR_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:33:51.746Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-08-06T13:17:51.151Z" EditedBy="LCIBATUMI\ilia.gurielidze"
SoftwareRevision="v36.00">
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -264,41 +265,52 @@
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Sorter Jam Reser Station
Resets the Jam on Set of Chutes
Controls Amber Beacon Segment and Jam Reset PushButton Light
]]>
</Comment>
<Text>
<![CDATA[[XIC(CTRL.CMD.Jammed) ,XIO(JR_PB_I) XIO(HMI.JR_PB) XIC(Jammed) ][OTL(Jammed) ,OTL(CTRL.STS.Jammed) ];]]>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIC(Jammed)OTE(JR_PB_LT_O);]]>
<![CDATA[[XIC(CTRL.CMD.Jammed) ,XIO(JR_PB_I) XIO(HMI.JR_PB) XIC(Jammed) ][OTL(Jammed) ,OTL(CTRL.STS.Jammed) ];]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![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) ];]]>
<![CDATA[XIC(Jammed)OTE(JR_PB_LT_O);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(Jam_Reset_Requested)[OTU(Jammed) ,OTU(CTRL.STS.Jammed) ];]]>
<![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>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(Jammed)MOVE(2,A_Beacon_Segment_Animation_O);]]>
<![CDATA[XIC(Jam_Reset_Requested)[OTU(Jammed) ,OTU(CTRL.STS.Jammed) ];]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(Jammed)XIO(CTRL.CMD.Sorter_JPE_Blocked)MOVE(1,A_Beacon_Segment_Animation_O);]]>
<![CDATA[XIC(Jammed)MOVE(2,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIO(Jammed)MOVE(0,A_Beacon_Segment_Animation_O);]]>
<![CDATA[XIC(Jammed)XIO(CTRL.CMD.Sorter_JPE_Blocked)MOVE(1,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Text>
<![CDATA[XIO(Jammed)MOVE(0,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Comment>
<![CDATA[ALARMS
]]>
@ -307,7 +319,7 @@
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Rung Number="9" Type="N">
<Comment>
<![CDATA[STATE
]]>
@ -316,22 +328,22 @@
<![CDATA[XIO(JR_PB_LT_O)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Rung Number="10" Type="N">
<Text>
<![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Rung Number="11" Type="N">
<Text>
<![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]XIO(JR_PB_LT_O)MOVE(2,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Rung Number="12" Type="N">
<Text>
<![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]XIC(JR_PB_LT_O)MOVE(3,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Rung Number="13" Type="N">
<Text>
<![CDATA[OTU(HMI.JR_PB)OTU(CTRL.CMD.Sorter_JPE_Blocked)OTU(CTRL.CMD.Jammed);]]>
</Text>

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--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-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">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_JR_PB" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-08-06T13:08:17.272Z" ContainsContext="true" ExportDate="Thu Aug 07 10:29:03 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User">
<Members>
@ -17,7 +17,7 @@
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Member Name="Pressed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
@ -78,9 +78,9 @@
</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">
<Member Name="JR_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]]>
<![CDATA[Jam Reset Push Button Light]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
@ -131,8 +131,8 @@
</DataType>
</DataTypes>
<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-29T10:11:12.041Z"
EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<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-08-06T13:08:17.272Z"
EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<Description>
<![CDATA[JAM RESET STATION PUSH BUTTON
]]>
@ -219,7 +219,7 @@
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Station Jam-Reset Push-Button (GEM Reset)
<![CDATA[Station Jam-Reset Push-Button
This module handles the local Jam-Reset push-button (JR PB) and its HMI counterpart.
@ -231,39 +231,7 @@ Reset action A one-shot examines three parallel reset sources:
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.
Button states for HMI.STATE
0 idle, lamp off1 idle, lamp on
2 pressed, lamp on3 pressed, lamp off
The pressed states win if both conditions are true simultaneously.
Alarm When the physical push-button is pressed the AOI sets HMI.Alarm.Pressed so the operator log shows the event.
After every cycle the AOI clears CTRL.CMD.Jammed and blanks CTRL.CMD.Log so a new jam can generate a fresh log entry.
Command bits (received)
CTRL.CMD.Log
CTRL.CMD.Jammed
HMI.JR_PB
Partner.STS.Jam_Reset
Partner.STS.JR_PB_LT
Status bits (set)
CTRL.STS.Log
CTRL.STS.Jam_Reset
CTRL.STS.JR_PB_LT
JR_PB_LT_O (lamp output)
Jammed (local copy of CTRL.CMD.Jammed)
HMI bits
HMI.JR_PB (command)
HMI.STATE (0, 1, 2, 3 as above)
HMI.Alarm.Pressed (set while JR_PB_I is true)
Alarm bits
HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is pressed.
]]>
Lamp control The lamp is solid while CTRL.CMD.Jammed is true; once the jam clears the lamp drops.]]>
</Comment>
<Text>
<![CDATA[COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]>
@ -276,7 +244,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
</Rung>
<Rung Number="2" Type="N">
<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(CTRL.CMD.Jammed) ,XIO(Jammed) XIC(Partner.STS.JR_PB_LT) ][OTE(JR_PB_LT_O) ,OTE(CTRL.STS.JR_PB_LT) ];]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
@ -295,15 +263,10 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIO(JR_PB_I)MOVE(0,HMI.Alarm.Pressed);]]>
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(JR_PB_I)MOVE(1,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Comment>
<![CDATA[Colors of Animation
]]>
@ -312,7 +275,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Rung Number="7" Type="N">
<Comment>
<![CDATA[Gray
]]>
@ -321,7 +284,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);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Rung Number="8" Type="N">
<Comment>
<![CDATA[White
]]>
@ -330,7 +293,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);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Rung Number="9" Type="N">
<Comment>
<![CDATA[Yellow
]]>
@ -339,7 +302,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);]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Rung Number="10" Type="N">
<Comment>
<![CDATA[Green
]]>
@ -348,7 +311,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);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Rung Number="11" Type="N">
<Text>
<![CDATA[COP(Empty_String,CTRL.CMD.Log,1)OTU(CTRL.CMD.Jammed);]]>
</Text>

View File

@ -1,6 +1,6 @@
<?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="Tue Jul 29 17:07:01 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MCM04_Chute_Load">
<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="Thu Aug 07 10:29:07 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="Banner_ZMX_Data" Family="NoFamily" Class="User">
<Members>

138173
PLC/MCMs/MCM05_CHUTE_LOAD.L5X Normal file

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"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_VFD" TargetType="DataType" ContainsContext="true" ExportDate="Wed Jul 23 13:32:20 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_VFD" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:37:19 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
@ -492,7 +492,7 @@ Pressed]]>
</DataType>
</DataTypes>
<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-11T06:08:03.949Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
<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-08-06T12:43:20.771Z" EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00"
>
<Description>
<![CDATA[Varible Frequency Drive]]>
@ -1142,74 +1142,6 @@ 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.
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>
<Text>

View File

@ -1,6 +1,6 @@
<?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="Tue Jul 29 17:05:56 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="D2C">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="Banner_ZMX_Data" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:30:34 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Use="Target" Name="Banner_ZMX_Data" Family="NoFamily" Class="User">
<Members>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:27:29 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_CB_MONITOR" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:31:04 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members>
@ -172,7 +172,7 @@
</DataType>
</DataTypes>
<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-18T18:10:52.482Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
<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-08-06T13:11:33.874Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -419,157 +419,168 @@
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[PDP Circuit Breaker Monitoring AOI
Sends gneral and specific to CB Alarms to SCADA when the CB Fault is present
Sends the Power Branch Fault to MCM that can be reset on MCM
]]>
</Comment>
<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[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIC(Power_Branch_Fault)[OTE(CTRL.STS.Power_Branch_Fault) ,OTL(MCM.CMD.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>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIC(MCM.CMD.Power_Branch_Fault)XIO(Power_Branch_Fault)OTL(MCM.CMD.Power_Branch_Was_Faulted);]]>
<![CDATA[XIC(Power_Branch_Fault)[OTE(CTRL.STS.Power_Branch_Fault) ,OTL(MCM.CMD.Power_Branch_Fault) ];]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.Power_Branch_Fault_Reset_Requested)XIO(Power_Branch_Fault)OTU(MCM.CMD.Power_Branch_Fault);]]>
<![CDATA[XIC(MCM.CMD.Power_Branch_Fault)XIO(Power_Branch_Fault)OTL(MCM.CMD.Power_Branch_Was_Faulted);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(Power_Branch_Fault)OTE(HMI.Alarm.Power_Branch_Fault);]]>
<![CDATA[XIC(MCM.STS.Power_Branch_Fault_Reset_Requested)XIO(Power_Branch_Fault)OTU(MCM.CMD.Power_Branch_Fault);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(CB1_I)OTE(HMI.Alarm.CB1_Fault);]]>
<![CDATA[XIC(Power_Branch_Fault)OTE(HMI.Alarm.Power_Branch_Fault);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(CB2_I)OTE(HMI.Alarm.CB2_Fault);]]>
<![CDATA[XIC(CB1_I)OTE(HMI.Alarm.CB1_Fault);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Text>
<![CDATA[XIC(CB3_I)OTE(HMI.Alarm.CB3_Fault);]]>
<![CDATA[XIC(CB2_I)OTE(HMI.Alarm.CB2_Fault);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Text>
<![CDATA[XIC(CB4_I)OTE(HMI.Alarm.CB4_Fault);]]>
<![CDATA[XIC(CB3_I)OTE(HMI.Alarm.CB3_Fault);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Text>
<![CDATA[XIC(CB5_I)OTE(HMI.Alarm.CB5_Fault);]]>
<![CDATA[XIC(CB4_I)OTE(HMI.Alarm.CB4_Fault);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Text>
<![CDATA[XIC(CB6_I)OTE(HMI.Alarm.CB6_Fault);]]>
<![CDATA[XIC(CB5_I)OTE(HMI.Alarm.CB5_Fault);]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Text>
<![CDATA[XIC(CB7_I)OTE(HMI.Alarm.CB7_Fault);]]>
<![CDATA[XIC(CB6_I)OTE(HMI.Alarm.CB6_Fault);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Text>
<![CDATA[XIC(CB8_I)OTE(HMI.Alarm.CB8_Fault);]]>
<![CDATA[XIC(CB7_I)OTE(HMI.Alarm.CB7_Fault);]]>
</Text>
</Rung>
<Rung Number="13" Type="N">
<Text>
<![CDATA[XIC(CB9_I)OTE(HMI.Alarm.CB9_Fault);]]>
<![CDATA[XIC(CB8_I)OTE(HMI.Alarm.CB8_Fault);]]>
</Text>
</Rung>
<Rung Number="14" Type="N">
<Text>
<![CDATA[XIC(CB10_I)OTE(HMI.Alarm.CB10_Fault);]]>
<![CDATA[XIC(CB9_I)OTE(HMI.Alarm.CB9_Fault);]]>
</Text>
</Rung>
<Rung Number="15" Type="N">
<Text>
<![CDATA[XIC(CB11_I)OTE(HMI.Alarm.CB11_Fault);]]>
<![CDATA[XIC(CB10_I)OTE(HMI.Alarm.CB10_Fault);]]>
</Text>
</Rung>
<Rung Number="16" Type="N">
<Text>
<![CDATA[XIC(CB12_I)OTE(HMI.Alarm.CB12_Fault);]]>
<![CDATA[XIC(CB11_I)OTE(HMI.Alarm.CB11_Fault);]]>
</Text>
</Rung>
<Rung Number="17" Type="N">
<Text>
<![CDATA[XIC(CB13_I)OTE(HMI.Alarm.CB13_Fault);]]>
<![CDATA[XIC(CB12_I)OTE(HMI.Alarm.CB12_Fault);]]>
</Text>
</Rung>
<Rung Number="18" Type="N">
<Text>
<![CDATA[XIC(CB14_I)OTE(HMI.Alarm.CB14_Fault);]]>
<![CDATA[XIC(CB13_I)OTE(HMI.Alarm.CB13_Fault);]]>
</Text>
</Rung>
<Rung Number="19" Type="N">
<Text>
<![CDATA[XIC(CB15_I)OTE(HMI.Alarm.CB15_Fault);]]>
<![CDATA[XIC(CB14_I)OTE(HMI.Alarm.CB14_Fault);]]>
</Text>
</Rung>
<Rung Number="20" Type="N">
<Text>
<![CDATA[XIC(CB16_I)OTE(HMI.Alarm.CB16_Fault);]]>
<![CDATA[XIC(CB15_I)OTE(HMI.Alarm.CB15_Fault);]]>
</Text>
</Rung>
<Rung Number="21" Type="N">
<Text>
<![CDATA[XIC(CB17_I)OTE(HMI.Alarm.CB17_Fault);]]>
<![CDATA[XIC(CB16_I)OTE(HMI.Alarm.CB16_Fault);]]>
</Text>
</Rung>
<Rung Number="22" Type="N">
<Text>
<![CDATA[XIC(CB18_I)OTE(HMI.Alarm.CB18_Fault);]]>
<![CDATA[XIC(CB17_I)OTE(HMI.Alarm.CB17_Fault);]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Text>
<![CDATA[XIC(CB19_I)OTE(HMI.Alarm.CB19_Fault);]]>
<![CDATA[XIC(CB18_I)OTE(HMI.Alarm.CB18_Fault);]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Text>
<![CDATA[XIC(CB20_I)OTE(HMI.Alarm.CB20_Fault);]]>
<![CDATA[XIC(CB19_I)OTE(HMI.Alarm.CB19_Fault);]]>
</Text>
</Rung>
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIC(CB21_I)OTE(HMI.Alarm.CB21_Fault);]]>
<![CDATA[XIC(CB20_I)OTE(HMI.Alarm.CB20_Fault);]]>
</Text>
</Rung>
<Rung Number="26" Type="N">
<Text>
<![CDATA[XIC(CB22_I)OTE(HMI.Alarm.CB22_Fault);]]>
<![CDATA[XIC(CB21_I)OTE(HMI.Alarm.CB21_Fault);]]>
</Text>
</Rung>
<Rung Number="27" Type="N">
<Text>
<![CDATA[XIC(CB23_I)OTE(HMI.Alarm.CB23_Fault);]]>
<![CDATA[XIC(CB22_I)OTE(HMI.Alarm.CB22_Fault);]]>
</Text>
</Rung>
<Rung Number="28" Type="N">
<Text>
<![CDATA[XIC(CB24_I)OTE(HMI.Alarm.CB24_Fault);]]>
<![CDATA[XIC(CB23_I)OTE(HMI.Alarm.CB23_Fault);]]>
</Text>
</Rung>
<Rung Number="29" Type="N">
<Text>
<![CDATA[XIC(CB25_I)OTE(HMI.Alarm.CB25_Fault);]]>
<![CDATA[XIC(CB24_I)OTE(HMI.Alarm.CB24_Fault);]]>
</Text>
</Rung>
<Rung Number="30" Type="N">
<Text>
<![CDATA[XIC(CB25_I)OTE(HMI.Alarm.CB25_Fault);]]>
</Text>
</Rung>
<Rung Number="31" Type="N">
<Text>
<![CDATA[XIC(CB26_I)OTE(HMI.Alarm.CB26_Fault);]]>
</Text>
</Rung>

View File

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

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_D2C_CHUTE" TargetType="DataType" ContainsContext="true" ExportDate="Thu Jul 31 10:31:20 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="D2C">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_D2C_CHUTE" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:31:24 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="Banner_ZMX_Data" Family="NoFamily" Class="User">
<Members>
@ -595,7 +595,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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">
<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>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -695,7 +696,8 @@
</Routine>
</Routines>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="Banner_ZMX_Control" Revision="1.2" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-12-21T15:11:52.057Z" CreatedBy="DUKE\jpreisen" EditedDate="2025-07-08T19:24:45.725Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00">
<AddOnInstructionDefinition Name="Banner_ZMX_Control" Class="Standard" Revision="1.2" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-12-21T15:11:52.057Z" CreatedBy="DUKE\jpreisen" EditedDate="2025-07-08T19:24:45.725Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
<RevisionNote>
<![CDATA[Cyclic operation timing adjusted. Now waits 600 msecs instead of 300 after Cyclic Bit is turned on. Also the error timer is now 5 seconds instead of 3.]]>
</RevisionNote>
@ -1165,7 +1167,8 @@ Not Available at thsi time.]]>
<Dependency Type="DataType" Name="Banner_ZMX_Data"/>
</Dependencies>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_D2C_CHUTE" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-03T10:55:21.713Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-31T06:29:40.092Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<AddOnInstructionDefinition Name="AOI_D2C_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-03T10:55:21.713Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-08-06T12:46:24.455Z" EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -1741,41 +1744,6 @@ When Ready is high the sorter diverts cartons to this chute.
Jam handling
A jam reported by the upstream station latches Jammed and blocks Ready; the jam is cleared by Station.STS.Jam_Reset_Requested.
HMI.STATE codes
0 disabled1 no container2 ready-to-enable3 enabled4 half-full5 full6 jammed.
Command bits (received)
Station & systemStation.STS.JammedStation.STS.Jam_Reset_RequestedDPM.STS.Communication_Faulted
Banner blockZMX_* (raw I/O and status via Banner_ZMX_Control)
OperatorGS_PB_IHMI.GS_PBHMI.TimeOut
Status bits (set)
CTRL.STS.JammedCTRL.STS.Half_FullCTRL.STS.Full
CTRL.STS.EnabledCTRL.STS.Ready
BusyDoneBin_ErrorCyclic_ErrorComms_Error
Tall_Shuttle_PresentCart_PresentShort_Shuttle_PresentNo_Container
Half_FullFullReady_To_Be_EnabledEnabledReady
B_Beacon_Segment_Animation_OG_Beacon_Segment_Animation_OGS_PB_Light_O
HMI bits
HMI.GS_PB
HMI.TimeOut
HMI.STATE
HMI.Alarms.DisabledHalf_FullFullJammedGS_PB_PressedNo_Container
Alarm bits
HMI.Alarms.Disabled chute disabled
HMI.Alarms.Half_Full half-full latched
HMI.Alarms.Full full latched
HMI.Alarms.Jammed jammed latched
HMI.Alarms.GS_PB_Pressed green-start PB held
HMI.Alarms.No_Container no container present
]]>
</Comment>
<Text>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:29:52 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_IO_BLOCK" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:45:50 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members>
@ -162,7 +162,7 @@
</DataType>
</DataTypes>
<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-11T06:08:04.500Z" EditedBy="LCIBATUMI\ilia.gurielidze"
<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-08-06T12:44:47.324Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[DATA POWER MODULE]]>
@ -323,21 +323,6 @@ If the same line later appears in MCM.STS.Acknowledge_Log, the routine latches A
The command bit MCM.STS.Unacknowledge_All_Logs resets the Acknowledge latch, guaranteeing that the next loss of communication will produce a fresh message.
Command bits
The routine receives Communication_Fault from its own port monitor.
The routine receives EN4TR_Communication_Fault from the rack adapter.
The routine receives MCM.STS.Unacknowledge_All_Logs to clear the acknowledge latch.
Status bits
The routine sets Communication_Faulted when either link is down.
The routine sets CTRL.STS.Communication_Faulted with the same value.
HMI bits
The HMI displays HMI.STATE as 0 for healthy and 1 for faulted.
The HMI raises HMI.Alarm.Communication_Faulted only while Communication_Faulted is true and EN4TR_Communication_Fault is false.
Alarm bits
The system raises HMI.Alarm.Communication_Faulted whenever the switch itself loses communication and the EN4TR adapter is still online.
]]>
</Comment>
<Text>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:27:47 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_ENCODER" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:31:45 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
<Members>
@ -263,7 +263,7 @@ Stopped by Station Stop PushButton]]>
</DataType>
</DataTypes>
<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-18T18:31:26.977Z" EditedBy="LCIBATUMI\ilia.gurielidze"
<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-08-06T13:13:46.473Z" EditedBy="LCIBATUMI\ilia.gurielidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[ENCODER]]>
@ -431,6 +431,17 @@ Stopped by Station Stop PushButton]]>
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Encoder AOI
Sends Encoder Fault to the Upstream and Downstream Conveyors
Sends Alarm to SCADA
]]>
</Comment>
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Comment>
<![CDATA[The Encoder sends a pulse each time Conveyor moves by 1 Inch
@ -440,12 +451,12 @@ Stopped by Station Stop PushButton]]>
<![CDATA[XIC(Encoder_Pulse_I)CTU(Encoder_Pulse_CTU,?,?);]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIO(Speed_Timer.DN)TON(Speed_Timer,?,?);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Rung Number="3" Type="N">
<Comment>
<![CDATA[Coveyor's Speed Formula
Inches Per Second * 5 = Feet Per Minute
@ -455,27 +466,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);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Rung Number="4" Type="N">
<Text>
<![CDATA[MUL(Conveyor.STS.Current_Speed,Low_Speed_In_Percentages,Low_Speed)DIV(Low_Speed,100,Low_Speed);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Rung Number="5" Type="N">
<Text>
<![CDATA[LT(Conveyor_Speed,Low_Speed)TON(Low_Speed_Timer,?,?)XIC(Low_Speed_Timer.DN)XIO(Encoder_Faulted)OTL(Encoder_Faulted);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(Conveyor.STS.MCM_JR_PB_Pressed)XIC(Encoder_Faulted)OTU(Encoder_Faulted);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Rung Number="7" Type="N">
<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) ];]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Rung Number="8" Type="N">
<Text>
<![CDATA[XIC(Encoder_Faulted)OTE(HMI.Alarm.Encoder_Faulted);]]>
</Text>

View File

@ -1,6 +1,6 @@
<?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="Thu Jul 31 10:28:00 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_EXTENDO" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:33:15 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="Caljan_PNMF_UDT_Input" Family="NoFamily" Class="User">
<Description>
@ -435,11 +435,8 @@
</Description>
</Member>
<Member Name="Name" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="EX_Type" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 - Normal 1 - FMH Extendo]]>
</Description>
</Member>
<Member Name="ZZZZZZZZZZUDT_HMI_EX12" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="EX_Type" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_HMI_EX12" BitNumber="0" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_EXTENDO"/>
@ -447,7 +444,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_EXTENDO" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-07-31T06:27:00.557Z" EditedBy="LCIBATUMI\beka.makharadze" SoftwareRevision="v36.00">
<AddOnInstructionDefinition Name="AOI_EXTENDO" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-24T07:04:00.824Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-08-06T13:07:47.495Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -461,8 +459,8 @@
</Parameter>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_EXTENDO" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_EXTENDO" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_O" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_7E6CF713:I:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_I" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_78F5E13D:O:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_O" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_F94A7390:I:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Extendo_I" TagType="Base" DataType="_04E3:6ES7158_3MU10_0XA0_DD7B81FB:O:0" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="MCM" TagType="Base" DataType="UDT_CTRL_MCM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="DPM" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false">
<Description>
@ -804,61 +802,6 @@ If loading is not allowed the stop bit Caljan_Input.Belt_Stop is asserted.
Running feedback
When Caljan_Output.Ready_to_Receive is true the AOI sets Running and mirrors the state to CTRL.STS.Running.
Operating modes and status flags
Caljan_Output.Front_EMS → Loading Mode
Caljan_Output.Customer_EMS → Unloading Mode
Caljan_Output.Belt_Accumulation → Power Saving Mode
Caljan_Output.Rear_EMS → E-Stopped
Caljan_Output.Aopen_Active → Aopen Active
Caljan_Output.Fully_Retracted / Fully_Extended → positional flags.
Logging
New occurrences of communication fault or full belt push a formatted string into MCM.CMD.Log and increment the quantity counter.
The entry self-clears when MCM.STS.Acknowledge_Log echoes the same text.
MCM.STS.Unacknowledge_All_Logs re-arms every latch so a repeat fault is re-logged.
HMI state code
0 loading not allowed1 loading allowed2 running
3 full4 communication fault5 Extendo faulted6 E-Stop
Command bits (received)
CTRL.CMD.Interlock
CTRL.CMD.Run_Up_Enabled
MCM.STS.System_Started
MCM.STS.VFD_Fault_Reset_Requested
DPM.STS.Communication_Faulted
HMI.PEC_Override_PB
HMI.Extendo_Faults_Reset_PB
MCM.STS.Unacknowledge_All_Logs
MCM.STS.Acknowledge_Log (comparison for auto-clear)
MCM.CMD.Log / Log_Quantity (target for new entries)
Status bits (set)
CTRL.STS.Interlock
CTRL.STS.Allow_Loading
CTRL.STS.Running
Extendo_FaultedExtendo_Faulted_Reset_Required
Communication_FaultedNo_Interlock
Loading_ModeUnloading_ModePower_Saving_Mode
Aopen_ActiveFully_RetractedFully_Extended
HMI bits
The HMI displays and/or exchanges—
HMI.Loading_Mode
HMI.Unloading_Mode
HMI.Power_Saving_Mode
HMI.Aopen_Active
HMI.Fully_Retracted
HMI.Fully_Extended
HMI.STATE
Alarm bits
HMI.Alarm.Full raised when Full is true.
HMI.Alarm.Communication_Faulted raised when Communication Faulted is true.
HMI.Alarm.Extendo_Faulted raised when Extendo Faulted is true.
]]>
</Comment>
<Text>
@ -1075,7 +1018,7 @@ HMI.Alarm.Extendo_Faulted raised when Extendo Faulted is true.
</Rung>
<Rung Number="40" Type="N">
<Text>
<![CDATA[MOVE(0,HMI.EX_Type);]]>
<![CDATA[AFI()OTE(HMI.EX_Type);]]>
</Text>
</Rung>
</RLLContent>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:30:32 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PE" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:35:06 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_VFD" Family="NoFamily" Class="User">
<Members>
@ -291,7 +291,7 @@ Stopped by Station Stop PushButton]]>
</DataType>
</DataTypes>
<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-11T10:05:07.475Z" EditedBy="LCIBATUMI\ilia.gurielidze"
<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-08-06T12:47:11.869Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[FULL PHOTOEYE]]>
@ -431,29 +431,6 @@ On the first scan of each full condition the routine writes “<Device HMI.Name>
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>
<Text>

View File

@ -1,7 +1,69 @@
<?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="Fri Jul 11 16:12:23 2025" ExportOptions="NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MCM04">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_IO_BLOCK" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:33:43 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_MCM" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_MCM_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Command To MCM]]>
</Description>
</Member>
<Member Name="STS" DataType="UDT_CTRL_MCM_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Status From MCM]]>
</Description>
</Member>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_MCM_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_MCM_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Acknowledge_Log" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="VFD_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="VFD_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault_Was_Present" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Encoder_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M2" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M11" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="EStop_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="EStop_Was_Actuated" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M11" BitNumber="4" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_MCM_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Log_Quantity" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Acknowledge_Log" DataType="STRING" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M3" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Unacknowledge_All_Logs" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="Motor_Was_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="1" ExternalAccess="Read/Write"/>
<Member Name="VFD_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="2" ExternalAccess="Read/Write"/>
<Member Name="Power_Branch_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="3" ExternalAccess="Read/Write"/>
<Member Name="Low_Air_Pressure_Fault_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="4" ExternalAccess="Read/Write"/>
<Member Name="System_Started" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="5" ExternalAccess="Read/Write"/>
<Member Name="Jam_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="6" ExternalAccess="Read/Write"/>
<Member Name="Communication_Faulted" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M3" BitNumber="7" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_CTRL_M12" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Setup_Motor_Speeds" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="0" ExternalAccess="Read/Write"/>
<Member Name="System_Start_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_M12" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[System Start Requested]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Use="Target" Name="UDT_ALARMS_IO_BLOCK" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
@ -99,5 +161,190 @@
</Dependencies>
</DataType>
</DataTypes>
<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-08-06T12:47:27.176Z" EditedBy="LCIBATUMI\goga.abashidze"
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_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="MCM" TagType="Base" DataType="UDT_CTRL_MCM" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Parent" TagType="Base" DataType="UDT_CTRL_IO_BLOCK" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Communication_Faulted" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Communication_Fault" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
</Parameters>
<LocalTags>
<LocalTag Name="Communication_Fault_Code" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Communication Fault Code]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Concatenated_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String for Log]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge_ONS" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[To Unlatch Acknowledge Bit Once Communication Faulted]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Acknowldge]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Lost_Communication_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[' Lost Communication']]>
</Description>
<DefaultData Format="L5K">
<![CDATA[[19,' Lost Communication$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$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="19">
<![CDATA[' Lost Communication']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Empty_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[Empty String]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[[0,'$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00$00']]]>
</DefaultData>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Name" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[Name of FIO]]>
</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>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[IOBlock Field-I/O Communication Monitor
IOBlock monitors its own field-bus link and the upstream link reported by its parent device—this parent may be a hub, an IO-Link master, another Field-I/O block, or an octopus switch.
If either link is lost, IOBlock sets Communication_Faulted and mirrors that state to CTRL.STS.Communication_Faulted so the fault can continue travelling upstream.
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.
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.]]>
</Comment>
<Text>
<![CDATA[[XIC(Communication_Fault) ,XIC(Parent.STS.Communication_Faulted) ][OTE(Communication_Faulted) ,OTE(CTRL.STS.Communication_Faulted) ];]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIO(Communication_Faulted)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)XIO(Parent.STS.Communication_Faulted)OTE(HMI.Alarm.Communication_Faulted);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.Unacknowledge_All_Logs)OTU(Acknowledge);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[[XIC(Communication_Faulted) ONS(Acknowledge_ONS) OTU(Acknowledge) ,XIC(Communication_Faulted) XIO(Acknowledge) COP(Lost_Communication_String,Concatenated_String,1) CONCAT(HMI.Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
</RLLContent>
</Routine>
<Routine Name="Prescan" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[OTU(Acknowledge);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_HMI_IO_BLOCK"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies>
</AddOnInstructionDefinition>
</AddOnInstructionDefinitions>
</Controller>
</RSLogix5000Content>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:30:39 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PE" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:35:21 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_STATION" Family="NoFamily" Class="User">
<Members>
@ -56,9 +56,9 @@
</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">
<Member Name="JR_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]]>
<![CDATA[Jam Reset Push Button Light]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
@ -463,7 +463,7 @@ Stopped by Station Stop PushButton]]>
</Routine>
</Routines>
</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-11T06:08:02.513Z" EditedBy="LCIBATUMI\ilia.gurielidze"
<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-08-06T12:47:54.500Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[JAM PHOTOEYE]]>
@ -669,37 +669,7 @@ The entry self-clears when the same text appears in MCM.STS.Acknowledge_Log; MCM
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.
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.
]]>
Run Up unlatches if the eye blocks again or the Jam re-appears.]]>
</Comment>
<Text>
<![CDATA[MUL(HMI.TimeOut,1000,Jam_Timer.PRE);]]>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:30:09 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_MCM" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:34:08 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_MCM" Family="NoFamily" Class="User">
<Members>
@ -281,7 +281,7 @@ Faulted]]>
</Routine>
</Routines>
</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-11T10:00:19.267Z" EditedBy="LCIBATUMI\ilia.gurielidze"
<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-08-06T12:48:37.223Z" EditedBy="LCIBATUMI\goga.abashidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[MAIN CONTROL MODULE]]>
@ -700,9 +700,7 @@ Faulted]]>
<Comment>
<![CDATA[MCM Main Control Module
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.
This module acts as the central logbook and primary interface for the subsystem.
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.
@ -716,84 +714,7 @@ 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.
Start_PB_LT_O lights whenever the system is running.
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.
]]>
When HMI.Setup_Motor_Speeds is asserted, the module broadcasts the configured speed set-points to every drive in the system.]]>
</Comment>
<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) ];]]>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PB_CHUTE" TargetType="DataType" ContainsContext="true" ExportDate="Wed Jul 23 13:26:26 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MCM04_Chute_Load">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PB_CHUTE" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:34:41 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Name="UDT_CTRL_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members>
@ -278,7 +278,7 @@
</Routine>
</Routines>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Name="AOI_PB_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:06:58.311Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-11T03:46:55.995Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
<AddOnInstructionDefinition Name="AOI_PB_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:06:58.311Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-08-06T12:51:07.787Z" EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -524,49 +524,6 @@ Releasing the button de-energises the solenoid and clears the state.
Beacon summary
Blue 0 = off1 = solid (half-full)2 = flash (full)
Green 0 = off1 = flash (chute enabled)
HMI.STATE
0 disabled1 enabled2 half-full3 full4 jammed
Command bits (received)
CTRL.CMD.Jammed (cleared each scan)
Station.STS.Jammed
Station.STS.Jam_Reset_Requested
IO_Block_Communication_Fault
Half_Full_I
Full_I
PR_PB_I
HMI.Enable_Chute_PB
HMI.TimeOut
Status bits (set)
CTRL.STS.Enabled
CTRL.STS.Half_Full
CTRL.STS.Full
CTRL.STS.Jammed
CTRL.STS.Ready
Disabled
Half_Full
Full
Jammed
Ready
Solenoid_O
B_Beacon_Segment_Animation (blue)
G_Beacon_Segment_Animation (green)
HMI bits
HMI.Enable_Chute_PB
HMI.TimeOut
HMI.STATE
HMI.PR_PB_STATE
HMI.Chute_Type (set to 2)
Alarm bits
HMI.Alarms.Disabled chute is disabled
HMI.Alarms.Half_Full half-full condition latched
HMI.Alarms.Full full condition latched
HMI.Alarms.Jam jammed condition latched
HMI.Alarms.PR_PB_Pressed package-release button held
]]>
</Comment>
<Text>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:31:02 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_PMM" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:35:39 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_PMM" Family="NoFamily" Class="User">
<Members>
@ -49,7 +49,7 @@
</DataType>
</DataTypes>
<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-18T14:50:08.259Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
<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-08-06T13:16:30.854Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -117,16 +117,26 @@
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Power Measurement Monitor AOI
Sends Inforamtion to SCADA about Total Power Consumption, Kilo Wats Per Hour, Maximum Power recorded and PMM module Fault
]]>
</Comment>
<Text>
<![CDATA[[XIC(PMM_Input1.ConnectionFaulted) ,XIC(Parent_Comm_Fault) ]OTE(Communication_Fault);]]>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<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[[XIC(PMM_Input1.ConnectionFaulted) ,XIC(Parent_Comm_Fault) ]OTE(Communication_Fault);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<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);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Comment>
<![CDATA[Running
]]>
@ -135,7 +145,7 @@
<![CDATA[XIO(Communication_Fault)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Rung Number="4" Type="N">
<Comment>
<![CDATA[Communication Faulted
]]>
@ -144,12 +154,12 @@
<![CDATA[XIC(Communication_Fault)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Communication_Fault);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIO(Communication_Fault)XIO(Parent_Comm_Fault)OTE(HMI.Alarm.PMM_Fault);]]>
</Text>

View File

@ -1,6 +1,6 @@
<?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="Wed Jul 23 13:31:21 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_RACK" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:35:53 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_RACK" Family="NoFamily" Class="User">
<Members>
@ -31,7 +31,7 @@
</DataType>
</DataTypes>
<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-18T09:18:50.916Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
<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-08-06T12:49:36.842Z" EditedBy="LCIBATUMI\goga.abashidze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
@ -135,27 +135,7 @@ 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.
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.
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.
]]>
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.]]>
</Comment>
<Text>
<![CDATA[GSV(Module,Slot5_IB16,FaultCode,Slot5_IB16_Fault_Code)NE(Slot5_IB16_Fault_Code,0)OTE(Slot5_IB16_Faulted);]]>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION_JR_CHUTE" TargetType="DataType" ContainsContext="true" ExportDate="Thu Jul 31 10:32:29 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="D2C">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION_JR_CHUTE" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:36:41 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members>
@ -77,7 +77,8 @@
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<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">
<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>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -177,7 +178,8 @@
</Routine>
</Routines>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition 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">
<AddOnInstructionDefinition Name="AOI_STATION_JR_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:33:51.746Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-08-06T13:17:51.151Z" EditedBy="LCIBATUMI\ilia.gurielidze" SoftwareRevision="v36.00"
>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
@ -275,41 +277,52 @@
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Sorter Jam Reser Station
Resets the Jam on Set of Chutes
Controls Amber Beacon Segment and Jam Reset PushButton Light
]]>
</Comment>
<Text>
<![CDATA[[XIC(CTRL.CMD.Jammed) ,XIO(JR_PB_I) XIO(HMI.JR_PB) XIC(Jammed) ][OTL(Jammed) ,OTL(CTRL.STS.Jammed) ];]]>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIC(Jammed)OTE(JR_PB_LT_O);]]>
<![CDATA[[XIC(CTRL.CMD.Jammed) ,XIO(JR_PB_I) XIO(HMI.JR_PB) XIC(Jammed) ][OTL(Jammed) ,OTL(CTRL.STS.Jammed) ];]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![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) ];]]>
<![CDATA[XIC(Jammed)OTE(JR_PB_LT_O);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(Jam_Reset_Requested)[OTU(Jammed) ,OTU(CTRL.STS.Jammed) ];]]>
<![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>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(Jammed)MOVE(2,A_Beacon_Segment_Animation_O);]]>
<![CDATA[XIC(Jam_Reset_Requested)[OTU(Jammed) ,OTU(CTRL.STS.Jammed) ];]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(Jammed)XIO(CTRL.CMD.Sorter_JPE_Blocked)MOVE(1,A_Beacon_Segment_Animation_O);]]>
<![CDATA[XIC(Jammed)MOVE(2,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIO(Jammed)MOVE(0,A_Beacon_Segment_Animation_O);]]>
<![CDATA[XIC(Jammed)XIO(CTRL.CMD.Sorter_JPE_Blocked)MOVE(1,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Text>
<![CDATA[XIO(Jammed)MOVE(0,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Comment>
<![CDATA[ALARMS
]]>
@ -318,7 +331,7 @@
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Rung Number="9" Type="N">
<Comment>
<![CDATA[STATE
]]>
@ -327,22 +340,22 @@
<![CDATA[XIO(JR_PB_LT_O)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Rung Number="10" Type="N">
<Text>
<![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Rung Number="11" Type="N">
<Text>
<![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]XIO(JR_PB_LT_O)MOVE(2,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Rung Number="12" Type="N">
<Text>
<![CDATA[[XIC(JR_PB_I) ,XIC(HMI.JR_PB) ]XIC(JR_PB_LT_O)MOVE(3,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Rung Number="13" Type="N">
<Text>
<![CDATA[OTU(HMI.JR_PB)OTU(CTRL.CMD.Sorter_JPE_Blocked)OTU(CTRL.CMD.Jammed);]]>
</Text>

View File

@ -1,6 +1,6 @@
<?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="Tue Jul 29 14:38:33 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM01">
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="UDT_ALARMS_STATION" TargetType="DataType" ContainsContext="true" ExportDate="Thu Aug 07 10:36:27 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MTN6_MCM05_CHUTE_LOAD">
<DataTypes Use="Context">
<DataType Use="Target" Name="UDT_ALARMS_STATION" Family="NoFamily" Class="User">
<Members>
@ -15,7 +15,7 @@
<![CDATA[Conveyor Stopped]]>
</Description>
</Member>
<Member Name="Pressed" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Member Name="Pressed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="2" ExternalAccess="Read/Write">
<Description>
<![CDATA[Button Pressed]]>
</Description>
@ -88,9 +88,9 @@
</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">
<Member Name="JR_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]]>
<![CDATA[Jam Reset Push Button Light]]>
</Description>
</Member>
<Member Name="Jam_Fault" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S5" BitNumber="1" ExternalAccess="Read/Write">
@ -141,7 +141,7 @@
</DataType>
</DataTypes>
<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-29T10:11:12.041Z" EditedBy="LCIBATUMI\beka.makharadze"
<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-08-06T13:08:17.272Z" EditedBy="LCIBATUMI\ilia.gurielidze"
SoftwareRevision="v36.00">
<Description>
<![CDATA[JAM RESET STATION PUSH BUTTON
@ -229,7 +229,7 @@
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Station Jam-Reset Push-Button (GEM Reset)
<![CDATA[Station Jam-Reset Push-Button
This module handles the local Jam-Reset push-button (JR PB) and its HMI counterpart.
@ -241,39 +241,7 @@ Reset action A one-shot examines three parallel reset sources:
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.
Button states for HMI.STATE
0 idle, lamp off1 idle, lamp on
2 pressed, lamp on3 pressed, lamp off
The pressed states win if both conditions are true simultaneously.
Alarm When the physical push-button is pressed the AOI sets HMI.Alarm.Pressed so the operator log shows the event.
After every cycle the AOI clears CTRL.CMD.Jammed and blanks CTRL.CMD.Log so a new jam can generate a fresh log entry.
Command bits (received)
CTRL.CMD.Log
CTRL.CMD.Jammed
HMI.JR_PB
Partner.STS.Jam_Reset
Partner.STS.JR_PB_LT
Status bits (set)
CTRL.STS.Log
CTRL.STS.Jam_Reset
CTRL.STS.JR_PB_LT
JR_PB_LT_O (lamp output)
Jammed (local copy of CTRL.CMD.Jammed)
HMI bits
HMI.JR_PB (command)
HMI.STATE (0, 1, 2, 3 as above)
HMI.Alarm.Pressed (set while JR_PB_I is true)
Alarm bits
HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is pressed.
]]>
Lamp control The lamp is solid while CTRL.CMD.Jammed is true; once the jam clears the lamp drops.]]>
</Comment>
<Text>
<![CDATA[COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]>
@ -286,7 +254,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
</Rung>
<Rung Number="2" Type="N">
<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(CTRL.CMD.Jammed) ,XIO(Jammed) XIC(Partner.STS.JR_PB_LT) ][OTE(JR_PB_LT_O) ,OTE(CTRL.STS.JR_PB_LT) ];]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
@ -305,15 +273,10 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIO(JR_PB_I)MOVE(0,HMI.Alarm.Pressed);]]>
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(JR_PB_I)MOVE(1,HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Comment>
<![CDATA[Colors of Animation
]]>
@ -322,7 +285,7 @@ HMI.Alarm.Pressed is raised whenever the physical Jam-Reset push-button is press
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Rung Number="7" Type="N">
<Comment>
<![CDATA[Gray
]]>
@ -331,7 +294,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);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Rung Number="8" Type="N">
<Comment>
<![CDATA[White
]]>
@ -340,7 +303,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);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Rung Number="9" Type="N">
<Comment>
<![CDATA[Yellow
]]>
@ -349,7 +312,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);]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Rung Number="10" Type="N">
<Comment>
<![CDATA[Green
]]>
@ -358,7 +321,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);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Rung Number="11" Type="N">
<Text>
<![CDATA[COP(Empty_String,CTRL.CMD.Log,1)OTU(CTRL.CMD.Jammed);]]>
</Text>