MTN6_PLC/PLC/AOIs/AOI_STATION_JR_CHUTE_AOI.L5X
2025-07-23 13:34:16 +04:00

415 lines
15 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_STATION_JR_CHUTE" TargetType="AddOnInstructionDefinition" TargetClass="Standard" TargetRevision="1.0 " TargetLastEdited="2025-07-11T03:10:47.226Z" ContainsContext="true" ExportDate="Wed Jul 23 13:25:37 2025" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="MCM04_Chute_Load">
<DataTypes Use="Context">
<DataType Name="UDT_ALARMS_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_ALARMS0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Pressed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_ALARMS0" BitNumber="0" ExternalAccess="Read/Write"/>
</Members>
</DataType>
<DataType Name="UDT_CTRL_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members>
<Member Name="CMD" DataType="UDT_CTRL_STATION_JR_CHUTE_CMD" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STS" DataType="UDT_CTRL_STATION_JR_CHUTE_STS" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_JR_CHUTE_CMD"/>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_JR_CHUTE_STS"/>
</Dependencies>
</DataType>
<DataType Name="UDT_CTRL_STATION_JR_CHUTE_CMD" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam At Sorter Section]]>
</Description>
</Member>
<Member Name="Sorter_JPE_Blocked" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Photoeye Blocked On Sorter]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_CTRL_STATION_JR_CHUTE_STS" Family="NoFamily" Class="User">
<Members>
<Member Name="ZZZZZZZZZZUDT_CTRL_S0" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="Jam_Reset_Requested" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset Requested]]>
</Description>
</Member>
<Member Name="Jammed" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_CTRL_S0" BitNumber="1" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam At Sorter Section]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="UDT_HMI_STATION_JR_CHUTE" Family="NoFamily" Class="User">
<Members>
<Member Name="Alarm" DataType="UDT_ALARMS_STATION_JR_CHUTE" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="STATE" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="ZZZZZZZZZZUDT_HMI_ST2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="true" ExternalAccess="Read/Write"/>
<Member Name="JR_PB" DataType="BIT" Dimension="0" Radix="Decimal" Hidden="false" Target="ZZZZZZZZZZUDT_HMI_ST2" BitNumber="0" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset PushButton Pressed]]>
</Description>
</Member>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="UDT_ALARMS_STATION_JR_CHUTE"/>
</Dependencies>
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Name="AOI_FLIP_FLOP" Class="Standard" Revision="1.0" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2022-03-10T21:16:26.590Z" CreatedBy="DESKTOP-T9CCJM5\autStand" EditedDate="2025-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>
<![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="On" TagType="Base" DataType="DINT" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Amount of time Beacon is On while Flashing]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Off" TagType="Base" DataType="DINT" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Amount of time Beacon is Off while Flashing]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Flash" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
</Parameters>
<LocalTags>
<LocalTag Name="Flip" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,0,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="ACC" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="EN" DataType="BOOL" Value="0"/>
<DataValueMember Name="TT" DataType="BOOL" Value="0"/>
<DataValueMember Name="DN" DataType="BOOL" Value="0"/>
</Structure>
</DefaultData>
</LocalTag>
<LocalTag Name="Flop" DataType="TIMER" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,0,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="ACC" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="EN" DataType="BOOL" Value="0"/>
<DataValueMember Name="TT" DataType="BOOL" Value="0"/>
<DataValueMember Name="DN" DataType="BOOL" Value="0"/>
</Structure>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[MOVE(On,Flip.PRE)MOVE(Off,Flop.PRE);]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIO(Flop.DN)TON(Flip,?,?);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIC(Flip.DN)TON(Flop,?,?);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(Flip.DN)OTE(Flash)OTE(EnableOut);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
</AddOnInstructionDefinition>
<AddOnInstructionDefinition Use="Target" Name="AOI_STATION_JR_CHUTE" Class="Standard" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-06-02T08:33:51.746Z" CreatedBy="LCIBATUMI\ilia.gurielidze" EditedDate="2025-07-11T03:10:47.226Z" 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>
<![CDATA[Enable Input - System Defined Parameter]]>
</Description>
</Parameter>
<Parameter Name="EnableOut" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
<![CDATA[Enable Output - System Defined Parameter]]>
</Description>
</Parameter>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_STATION_JR_CHUTE" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_STATION_JR_CHUTE" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="JR_PB_I" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam Reset PushButton Input]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="JR_PB_LT_O" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Jem Reset PushButton Light Output]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="A_Beacon_Segment_Color_O" TagType="Base" DataType="DINT" Usage="Output" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Beacon Segment Color Output]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="A_Beacon_Segment_Animation_O" TagType="Base" DataType="DINT" Usage="Output" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Beacon Segment Animation Output]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Jammed" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Jam At Sorter Section]]>
</Description>
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
</Parameters>
<LocalTags>
<LocalTag Name="Flip_Flop" DataType="AOI_FLIP_FLOP" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[1,0,0,[0,0,0],[0,0,0]]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Structure DataType="AOI_FLIP_FLOP">
<DataValueMember Name="EnableIn" DataType="BOOL" Value="1"/>
<DataValueMember Name="EnableOut" DataType="BOOL" Value="0"/>
<DataValueMember Name="On" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="Off" DataType="DINT" Radix="Decimal" Value="0"/>
<DataValueMember Name="Flash" DataType="BOOL" Value="0"/>
</Structure>
</DefaultData>
</LocalTag>
<LocalTag Name="Jam_Reset_Requested" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Comment>
<![CDATA[Station Jam-Reset Push-Button (Sorter Interface)
This routine handles a local Jam-Reset push-button whose job is to request a jam clear from an external sorter PLC.
Jammed latch An incoming command CTRL.CMD.Jammed latches the internal bit Jammed and mirrors it to CTRL.STS.Jammed.
Lamp While Jammed is true the push-button lamp coil JR_PB_LT_O remains on.
Reset request If the operator presses either the physical button JR_PB_I or the HMI button HMI.JR_PB while Jammed is latched and the sorter reports that its photo-eye (CTRL.CMD.Sorter_JPE_Blocked) is clear, the routine pulses Jam_Reset_Requested and mirrors it to CTRL.STS.Jam_Reset_Requested. The pulse tells the sorter PLC to retract its jam eye and restart the belt.
Jam clear The same pulse unlatches Jammed and resets CTRL.STS.Jammed; the lamp drops once the sorter accepts the reset.
Beacon segment
Code 2 (amber flash) while Jammed is true.
Code 1 (amber solid) during a reset request (Jammed true and sorter eye clear).
Code 0 extinguished when no jam is present.
The value is written to A_Beacon_Segment_Animation_O.
Button states for HMI.STATE
0 idle, lamp off1 idle, lamp on
2 pressed, lamp off3 pressed, lamp on
The pressed value has priority.
Alarm Whenever the physical button is pressed the routine sets HMI.Alarm.Pressed so the action is recorded.
At the end of every scan the routine unlatches the one-shot command bits (HMI.JR_PB, CTRL.CMD.Sorter_JPE_Blocked, CTRL.CMD.Jammed) so the next press or jam will be recognised as a new event.
Command bits (received)
CTRL.CMD.Jammed
CTRL.CMD.Sorter_JPE_Blocked
HMI.JR_PB
JR_PB_I (physical push-button)
Status bits (set)
CTRL.STS.Jammed
CTRL.STS.Jam_Reset_Requested
JR_PB_LT_O (lamp output)
Jam_Reset_Requested
A_Beacon_Segment_Animation_O
HMI.STATE
HMI bits
HMI.JR_PB push-button command sent from the screen.
HMI.STATE shows button state (0, 1, 2, 3).
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.
]]>
</Comment>
<Text>
<![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="1" Type="N">
<Text>
<![CDATA[XIC(Jammed)OTE(JR_PB_LT_O);]]>
</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) ];]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(Jam_Reset_Requested)[OTU(Jammed) ,OTU(CTRL.STS.Jammed) ];]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(Jammed)MOVE(2,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(Jammed)XIO(CTRL.CMD.Sorter_JPE_Blocked)MOVE(1,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIO(Jammed)MOVE(0,A_Beacon_Segment_Animation_O);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Comment>
<![CDATA[ALARMS
]]>
</Comment>
<Text>
<![CDATA[XIC(JR_PB_I)OTE(HMI.Alarm.Pressed);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Comment>
<![CDATA[STATE
]]>
</Comment>
<Text>
<![CDATA[XIO(JR_PB_LT_O)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Text>
<![CDATA[XIC(JR_PB_LT_O)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="10" 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">
<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">
<Text>
<![CDATA[OTU(HMI.JR_PB)OTU(CTRL.CMD.Sorter_JPE_Blocked)OTU(CTRL.CMD.Jammed);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
<Routine Name="Prescan" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[MOVE(3,A_Beacon_Segment_Color_O);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_STATION_JR_CHUTE"/>
<Dependency Type="AddOnInstructionDefinition" Name="AOI_FLIP_FLOP"/>
<Dependency Type="DataType" Name="UDT_HMI_STATION_JR_CHUTE"/>
</Dependencies>
</AddOnInstructionDefinition>
</AddOnInstructionDefinitions>
</Controller>
</RSLogix5000Content>