<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--Varible Frequency Drive-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="36.00" TargetName="AOI_APF" TargetType="AddOnInstructionDefinition" TargetRevision="1.0 " TargetLastEdited="2025-06-17T18:10:03.668Z" ContainsContext="true" ExportDate="Wed Jun 18 16:36:40 2025" ExportOptions="NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="BaseProgram">
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Use="Target" Name="AOI_APF" Revision="1.0" ExecutePrescan="true" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2025-05-17T10:35:36.642Z" CreatedBy="LCIBATUMI\gigi.mamaladze" EditedDate="2025-06-17T18:10:03.668Z" EditedBy="LCIBATUMI\gigi.mamaladze" SoftwareRevision="v36.00"
>
<Description>
<![CDATA[Varible Frequency Drive]]>
</Description>
<Parameters>
<Parameter Name="EnableIn" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
<![CDATA[Enable Input - System Defined Parameter]]>
</Description>
</Parameter>
<Parameter Name="EnableOut" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
<![CDATA[Enable Output - System Defined Parameter]]>
</Description>
</Parameter>
<Parameter Name="HMI" TagType="Base" DataType="UDT_HMI_APF" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="CTRL" TagType="Base" DataType="UDT_CTRL_APF" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Module" TagType="Base" DataType="MODULE" Usage="InOut" Required="true" Visible="true"/>
<Parameter Name="APF_I" TagType="Base" DataType="AB:35_APF_Drive:I:1" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="APF_O" TagType="Base" DataType="AB:35_APF_Drive:O:1" 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="In_EStopped" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Emergency Stopped]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="In_Communication_Fault" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Ethernet Communication Fault(NC)]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="In_Disconnect" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Disconnected]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Running" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Running]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Run_Enabled" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Run Enabled]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="1"/>
</DefaultData>
</Parameter>
<Parameter Name="Run" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Command Run]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Maintenance_Running" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor Maintenance Running]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" 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[Conveyor Jammed]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="EStopped" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Emergency Stopped]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Speed_Not_Set_Up" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="None">
<Description>
<![CDATA[Conveyor Speed No Set Up]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="VFD_Fault_Reset_Required" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="None">
<Description>
<![CDATA[VFD Fault Reset Required]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="VFD_Faulted" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[VFD Faulted]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Communication_Fault" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="None">
<Description>
<![CDATA[Ethernet Communication Fault]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Disconnected" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="None">
<Description>
<![CDATA[VFD Disconnected]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Power_Saving_Mode" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor is Running in Power Saving Moder]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Start_Conveyor" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="false" ExternalAccess="Read Only">
<Description>
<![CDATA[Start Conveyor]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Speed_To_REV_Ratio" TagType="Base" DataType="REAL" Usage="Output" Radix="Float" Required="false" Visible="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[Conveyor speed-to-frequency ratio for VFD control]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="REAL" Radix="Float" Value="0.0"/>
</DefaultData>
</Parameter>
<Parameter Name="Maintenance_Mode" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Maintenance Mode Activated]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Stopped_By_Station_PB" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Conveyor Stopped by Station PushButton]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Full" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Conveyor Full]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Encoder_Fault" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Encoder Faulted or Conveyor is Running at Low Speed]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Stopped_Require_Start" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Stopped Conveyor and Require Start]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Stopped_Auto_Restart" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Stopped Conveyor and Will Automaticly Restart]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Zero_Speed" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[Conveyor Speed is Zero]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="No_Interlock" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[No Interlock]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="MCM_Not_Started" TagType="Base" DataType="BOOL" Usage="Output" Radix="Decimal" Required="false" Visible="true" ExternalAccess="Read Only">
<Description>
<![CDATA[MCM Not Started]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Length" TagType="Base" DataType="DINT" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<Description>
<![CDATA[Length Of Conveyor]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
</Parameters>
<LocalTags>
<LocalTag Name="Start_Delay_Timer" DataType="TIMER" ExternalAccess="None">
<Description>
<![CDATA[Conveyor will Start after Timer is Done]]>
</Description>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="5000"/>
<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="Maintenance_Start_Conveyor" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Start Conveyor in Maintenance Mode]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Start_ONS" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Start to allow local control of the conveyor]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Velocity_Command" DataType="REAL" Radix="Float" ExternalAccess="None">
<Description>
<![CDATA[Velocity Command to Motor]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="REAL" Radix="Float" Value="0.0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Safe_Off_Delay" DataType="TIMER" ExternalAccess="None">
<Description>
<![CDATA[VFD Safe off will be reported after Timer is Done]]>
</Description>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="2000"/>
<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="Power_Save_Time_Ms" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Power Save Time in Milliseconds]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Power_Save_Timer" DataType="TIMER" ExternalAccess="None">
<Description>
<![CDATA[Power Saving Timer]]>
</Description>
<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="VFD_Fault_Code" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[VFD Fault Code]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Maintenance_Conveyor_Direction" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[0-Forward 
1-Reverse]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Last_VFD_Fault_Code" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Last VFD Fault Code]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Maintenance_Jog_Mode" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Conveyor in Jog Mode]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Jammed_Latch" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Conveyor Jammed]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Interlock" DataType="BOOL" Radix="Decimal" ExternalAccess="Read/Write">
<Description>
<![CDATA[Interlock]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Disconect_On_Delay" DataType="TIMER" ExternalAccess="None">
<Description>
<![CDATA[Conveyor will be interpreted as Disconnected after Timer is Done]]>
</Description>
<DefaultData Format="Decorated">
<Structure DataType="TIMER">
<DataValueMember Name="PRE" DataType="DINT" Radix="Decimal" Value="45000"/>
<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="Direction" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Conveyor Direction in Maintance Mode]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Concatenated_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String for Logs]]>
</Description>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Communication_Lost" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Ethernet Communication Lost]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Communication_Fault_Code" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Ethernet Communication Fault Code]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Communication_Faulted" DataType="BOOL" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Ethernet Communication Faulted]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge_ONS" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[{{TODO}}]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Acknowledge" DataType="DINT" Radix="Decimal" ExternalAccess="None">
<Description>
<![CDATA[Acknowledge Logs]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="DINT" Radix="Decimal" Value="0"/>
</DefaultData>
</LocalTag>
<LocalTag Name="Starting_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains " STARTING"]]>
</Description>
<DefaultData Format="String" Length="9">
<![CDATA[' STARTING']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Disconnect_Off_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains " DISC OFF"]]>
</Description>
<DefaultData Format="String" Length="9">
<![CDATA[' DISC OFF']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Empty_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains ""]]>
</Description>
<DefaultData Format="String" Length="0">
<![CDATA['']]>
</DefaultData>
</LocalTag>
<LocalTag Name="VFD_Fault_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains " VFD FLT"]]>
</Description>
<DefaultData Format="String" Length="8">
<![CDATA[' VFD FLT']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Safe_Off_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains " SAFE OFF"]]>
</Description>
<DefaultData Format="String" Length="9">
<![CDATA[' SAFE OFF']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Lost_Comm_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains " LOST COMM"]]>
</Description>
<DefaultData Format="String" Length="10">
<![CDATA[' LOST COMM']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Jam_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains " JAM"]]>
</Description>
<DefaultData Format="String" Length="4">
<![CDATA[' JAM']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Full_String" DataType="STRING" ExternalAccess="None">
<Description>
<![CDATA[String contains " FULL"]]>
</Description>
<DefaultData Format="String" Length="5">
<![CDATA[' FULL']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Name" DataType="STRING" ExternalAccess="None">
<DefaultData Format="String" Length="5">
<![CDATA['UL1-3']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Running_String" DataType="STRING" ExternalAccess="None">
<DefaultData Format="String" Length="8">
<![CDATA[' Running']]>
</DefaultData>
</LocalTag>
<LocalTag Name="Calculation_Temp" DataType="REAL" Radix="Float" ExternalAccess="None">
<Description>
<![CDATA[Temporary Variable To Save value]]>
</Description>
<DefaultData Format="Decorated">
<DataValue DataType="REAL" Radix="Float" Value="0.0"/>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[MOVE(1,HMI.VFD_Type)COP(CTRL.CMD.Log,CTRL.STS.Log,1);]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Text>
<![CDATA[XIO(In_Disconnect)OTE(Disconnected);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[XIC(CTRL.CMD.Jammed)OTE(Jammed);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[XIC(CTRL.CMD.Encoder_Fault)OTE(Encoder_Fault);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[XIC(CTRL.CMD.Full)OTE(Full);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[XIC(CTRL.CMD.Stop_Require_Start)OTE(Stopped_Require_Start);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[XIC(CTRL.CMD.Stop_Auto_Restart)OTE(Stopped_Auto_Restart);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Text>
<![CDATA[EQ(CTRL.CMD.Speed_FPM,0)OTE(Zero_Speed);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Text>
<![CDATA[XIO(In_EStopped)OTE(CTRL.STS.EStopped);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Text>
<![CDATA[XIC(CTRL.STS.EStopped)OTE(EStopped)OTL(MCM.CMD.EStop_Was_Actuated);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.System_Started)OTE(CTRL.STS.MCM_Started);]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Text>
<![CDATA[XIO(MCM.STS.System_Started)OTE(MCM_Not_Started);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Text>
<![CDATA[XIC(HMI.Maintenance.Maintenance_Mode)OTE(CTRL.STS.Maintenance_Mode)OTE(Maintenance_Mode);]]>
</Text>
</Rung>
<Rung Number="13" Type="N">
<Text>
<![CDATA[XIC(In_Disconnect)[TON(Disconect_On_Delay,?,?) ,XIO(Communication_Lost) MOVE(60000,Disconect_On_Delay.ACC) ];]]>
</Text>
</Rung>
<Rung Number="14" Type="N">
<Text>
<![CDATA[GSV(Module,Module,FaultCode,Communication_Fault_Code)NE(Communication_Fault_Code,0)OTE(Communication_Lost);]]>
</Text>
</Rung>
<Rung Number="15" Type="N">
<Text>
<![CDATA[CLR(Communication_Fault_Code)XIC(Disconect_On_Delay.DN)XIO(In_Communication_Fault)XIC(Communication_Lost)OTE(Communication_Fault)OTE(CTRL.STS.Communication_Fault)OTL(Communication_Faulted)OTL(MCM.CMD.Communication_Faulted);]]>
</Text>
</Rung>
<Rung Number="16" Type="N">
<Text>
<![CDATA[CLR(VFD_Fault_Code)XIC(Disconect_On_Delay.DN)XIC(APF_I.Fault)MOVE(APF_I.TripFaultCode,VFD_Fault_Code)OTE(VFD_Faulted);]]>
</Text>
</Rung>
<Rung Number="17" Type="N">
<Text>
<![CDATA[NE(VFD_Fault_Code,0)MOVE(VFD_Fault_Code,Last_VFD_Fault_Code);]]>
</Text>
</Rung>
<Rung Number="18" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.VFD_Fault_Reset_PB)XIC(Disconect_On_Delay.DN)XIO(VFD_Faulted)OTU(VFD_Fault_Reset_Required);]]>
</Text>
</Rung>
<Rung Number="19" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.VFD_Fault_Reset_PB)XIO(Communication_Fault)OTU(Communication_Faulted);]]>
</Text>
</Rung>
<Rung Number="20" Type="N">
<Text>
<![CDATA[XIO(s:fs)[XIO(Disconect_On_Delay.DN) ,XIC(VFD_Faulted) ]OTL(MCM.CMD.VFD_Faulted)OTE(CTRL.STS.VFD_Fault)OTL(VFD_Fault_Reset_Required);]]>
</Text>
</Rung>
<Rung Number="21" Type="N">
<Text>
<![CDATA[XIC(VFD_Fault_Reset_Required)OTL(MCM.CMD.VFD_Was_Faulted);]]>
</Text>
</Rung>
<Rung Number="22" Type="N">
<Text>
<![CDATA[XIC(Communication_Faulted)OTL(MCM.CMD.Communication_Was_Faulted);]]>
</Text>
</Rung>
<Rung Number="23" Type="N">
<Text>
<![CDATA[XIC(Jammed)OTE(CTRL.STS.Jammed)OTL(MCM.CMD.Jam_Fault);]]>
</Text>
</Rung>
<Rung Number="24" Type="N">
<Text>
<![CDATA[XIC(Encoder_Fault)OTE(CTRL.STS.Encoder_Fault)OTL(MCM.CMD.Encoder_Fault);]]>
</Text>
</Rung>
<Rung Number="25" Type="N">
<Text>
<![CDATA[XIC(APF_I.Running)COP(Running_String,Concatenated_String,1)CONCAT(Name,Concatenated_String,MCM.CMD.Log)OTE(Running)OTE(CTRL.STS.Running);]]>
</Text>
</Rung>
<Rung Number="26" Type="N">
<Text>
<![CDATA[XIC(CTRL.STS.MCM_Started)XIC(CTRL.CMD.Power_Saving_Mode_ON)[XIC(Running) MUL(Length,196.8504,Calculation_Temp) DIV(Calculation_Temp,CTRL.CMD.Speed_FPM,Calculation_Temp) MUL(Calculation_Temp,HMI.Cycle_Time_Factor,Calculation_Temp) MUL(Calculation_Temp,1000,Power_Save_Timer.PRE) TON(Power_Save_Timer,?,?) XIC(Power_Save_Timer.DN) ,XIC(Power_Saving_Mode) XIO(CTRL.CMD.Start) XIO(MCM.STS.Start_Request) ]OTE(CTRL.STS.In_Power_Saving_Mode)OTE(Power_Saving_Mode);]]>
</Text>
</Rung>
<Rung Number="27" Type="N">
<Text>
<![CDATA[XIC(CTRL.STS.MCM_Started)XIO(EStopped)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(Jammed)XIO(Encoder_Fault)XIO(Full)XIO(Stopped_Auto_Restart)OTE(Run_Enabled);]]>
</Text>
</Rung>
<Rung Number="28" Type="N">
<Text>
<![CDATA[XIC(CTRL.CMD.Stopped_By_Stop_PB)OTE(Stopped_By_Station_PB)OTE(CTRL.STS.Local_Stopped);]]>
</Text>
</Rung>
<Rung Number="29" Type="N">
<Text>
<![CDATA[XIO(Maintenance_Mode)XIC(Run_Enabled)[XIC(CTRL.CMD.Start) ,XIC(Start_Conveyor) ,ONS(Start_ONS) ]XIO(CTRL.CMD.Stop_Require_Start)OTE(Start_Conveyor);]]>
</Text>
</Rung>
<Rung Number="30" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Mode)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(EStopped)[XIC(HMI.Maintenance.Start_PB_Pressed) ,XIC(Maintenance_Start_Conveyor) ]XIO(HMI.Maintenance.Stop_PB_Pressed)OTE(Maintenance_Start_Conveyor);]]>
</Text>
</Rung>
<Rung Number="31" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Mode)XIC(APF_I.Running)OTE(Maintenance_Running);]]>
</Text>
</Rung>
<Rung Number="32" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Mode)XIO(VFD_Fault_Reset_Required)XIO(Communication_Faulted)XIO(EStopped)XIC(HMI.Maintenance.Jog_PB_Pressed)OTE(Maintenance_Jog_Mode);]]>
</Text>
</Rung>
<Rung Number="33" Type="N">
<Text>
<![CDATA[[XIC(Start_Conveyor) ,XIC(Maintenance_Start_Conveyor) ,XIC(Maintenance_Jog_Mode) ]MOVE(5000,Start_Delay_Timer.PRE)TON(Start_Delay_Timer,?,?);]]>
</Text>
</Rung>
<Rung Number="34" Type="N">
<Text>
<![CDATA[XIC(Start_Delay_Timer.TT)COP(Starting_String,Concatenated_String,1)CONCAT(Name,Concatenated_String,MCM.CMD.Log)OTL(MCM.CMD.EStop_Was_Actuated);]]>
</Text>
</Rung>
<Rung Number="35" Type="N">
<Text>
<![CDATA[[XIC(CTRL.CMD.Interlock) ,XIC(CTRL.CMD.Run_Up_Enabled) ]OTE(Interlock)OTE(CTRL.STS.Interlock);]]>
</Text>
</Rung>
<Rung Number="36" Type="N">
<Text>
<![CDATA[XIO(Interlock)OTE(No_Interlock);]]>
</Text>
</Rung>
<Rung Number="37" Type="N">
<Text>
<![CDATA[XIC(Start_Delay_Timer.DN)[XIO(Maintenance_Mode) XIC(Interlock) GT(CTRL.CMD.Speed_FPM,0) XIO(Power_Saving_Mode) ,XIC(Maintenance_Mode) GT(HMI.Maintenance.Speed_FPM,0) ]OTE(CTRL.STS.Enabled)OTE(Run);]]>
</Text>
</Rung>
<Rung Number="38" Type="N">
<Text>
<![CDATA[XIO(Run)OTE(APF_O.Stop);]]>
</Text>
</Rung>
<Rung Number="39" Type="N">
<Text>
<![CDATA[XIC(Run)[XIO(Maintenance_Conveyor_Direction) OTE(APF_O.DirectionCmd_0) ,XIC(Maintenance_Conveyor_Direction) OTE(APF_O.DirectionCmd_1) ]OTE(APF_O.Start);]]>
</Text>
</Rung>
<Rung Number="40" Type="N">
<Text>
<![CDATA[XIC(APF_I.Fault)[XIC(MCM.STS.VFD_Fault_Reset_PB) ,XIC(APF_O.ClearFault) ]OTE(APF_O.ClearFault);]]>
</Text>
</Rung>
<Rung Number="41" Type="N">
<Text>
<![CDATA[XIO(Maintenance_Mode)OTU(HMI.Maintenance.Direction_PB_Pressed);]]>
</Text>
</Rung>
<Rung Number="42" Type="N">
<Text>
<![CDATA[XIC(HMI.Maintenance.Direction_PB_Pressed)OTE(Direction);]]>
</Text>
</Rung>
<Rung Number="43" Type="N">
<Text>
<![CDATA[XIC(Direction)OTE(Maintenance_Conveyor_Direction)OTE(HMI.Maintenance.Direction);]]>
</Text>
</Rung>
<Rung Number="44" Type="N">
<Text>
<![CDATA[NE(HMI.Speed_At_30rev,0)DIV(30,HMI.Speed_At_30rev,Speed_To_REV_Ratio);]]>
</Text>
</Rung>
<Rung Number="45" Type="N">
<Text>
<![CDATA[EQ(Speed_To_REV_Ratio,0)OTE(Speed_Not_Set_Up);]]>
</Text>
</Rung>
<Rung Number="46" Type="N">
<Text>
<![CDATA[XIO(Maintenance_Mode)MOVE(CTRL.CMD.Speed_FPM,CTRL.STS.Requested_Speed)MUL(CTRL.CMD.Speed_FPM,Speed_To_REV_Ratio,Velocity_Command);]]>
</Text>
</Rung>
<Rung Number="47" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Mode)MOVE(HMI.Maintenance.Speed_FPM,CTRL.STS.Requested_Speed)MUL(HMI.Maintenance.Speed_FPM,Speed_To_REV_Ratio,Velocity_Command);]]>
</Text>
</Rung>
<Rung Number="48" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.Setup_Speeds)MOVE(30,Velocity_Command);]]>
</Text>
</Rung>
<Rung Number="49" Type="N">
<Text>
<![CDATA[MOVE(Velocity_Command,APF_O.CommandedVelocity);]]>
</Text>
</Rung>
<Rung Number="50" Type="N">
<Text>
<![CDATA[DIV(APF_I.Velocity,Speed_To_REV_Ratio,CTRL.STS.Current_Speed);]]>
</Text>
</Rung>
<Rung Number="51" Type="N">
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="52" Type="N">
<Text>
<![CDATA[MOVE(CTRL.STS.Current_Speed,HMI.FPM)DIV(APF_I.OutputCurrent,100,HMI.Amperage)DIV(APF_I.OutputVoltage,10,HMI.Voltage)DIV(APF_I.Velocity,100,HMI.Velocity);]]>
</Text>
</Rung>
<Rung Number="53" Type="N">
<Comment>
<![CDATA[Alarms
]]>
</Comment>
<Text>
<![CDATA[XIC(Disconnected)OTE(HMI.Alarm.Disconnected);]]>
</Text>
</Rung>
<Rung Number="54" Type="N">
<Text>
<![CDATA[XIC(Communication_Fault)OTE(HMI.Alarm.Communication_Fault);]]>
</Text>
</Rung>
<Rung Number="55" Type="N">
<Text>
<![CDATA[XIC(VFD_Faulted)OTE(HMI.Alarm.VFD_Fault);]]>
</Text>
</Rung>
<Rung Number="56" Type="N">
<Text>
<![CDATA[XIO(CTRL.STS.VFD_Fault)XIC(VFD_Fault_Reset_Required)OTE(HMI.Alarm.VFD_Reset_Required);]]>
</Text>
</Rung>
<Rung Number="57" Type="N">
<Text>
<![CDATA[XIO(CTRL.STS.Communication_Fault)XIC(Communication_Faulted)OTE(HMI.Alarm.Communication_Fault_Reset_Required);]]>
</Text>
</Rung>
<Rung Number="58" Type="N">
<Text>
<![CDATA[MOVE(Communication_Fault_Code,HMI.Communication_Fault_Code)MOVE(VFD_Fault_Code,HMI.VFD_Fault_Code)MOVE(Last_VFD_Fault_Code,HMI.Last_VFD_Fault_Code);]]>
</Text>
</Rung>
<Rung Number="59" Type="N">
<Comment>
<![CDATA[Colors of Animation
]]>
</Comment>
<Text>
<![CDATA[XIO(CTRL.STS.MCM_Started)XIO(Running)MOVE(0,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="60" Type="N">
<Text>
<![CDATA[XIC(CTRL.STS.MCM_Started)XIO(Running)MOVE(1,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="61" Type="N">
<Text>
<![CDATA[XIC(Power_Saving_Mode)MOVE(3,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="62" Type="N">
<Text>
<![CDATA[XIC(Running)MOVE(2,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="63" Type="N">
<Text>
<![CDATA[XIC(Encoder_Fault)MOVE(13,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="64" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Mode)MOVE(6,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="65" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Mode)XIO(Maintenance_Running)MOVE(6,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="66" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Running)MOVE(61,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="67" Type="N">
<Text>
<![CDATA[XIC(Maintenance_Jog_Mode)XIC(Start_Delay_Timer.DN)MOVE(61,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="68" Type="N">
<Text>
<![CDATA[XIC(Full)MOVE(5,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="69" Type="N">
<Text>
<![CDATA[XIC(Stopped_By_Station_PB)MOVE(14,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="70" Type="N">
<Text>
<![CDATA[XIC(Disconnected)MOVE(131,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="71" Type="N">
<Text>
<![CDATA[XIC(Jammed)MOVE(4,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="72" Type="N">
<Text>
<![CDATA[XIC(Communication_Fault)MOVE(7,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="73" Type="N">
<Text>
<![CDATA[XIC(VFD_Fault_Reset_Required)MOVE(8,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="74" Type="N">
<Text>
<![CDATA[XIC(EStopped)MOVE(9,HMI.STATE);]]>
</Text>
</Rung>
<Rung Number="75" Type="N">
<Text>
<![CDATA[XIC(MCM.STS.All_Unacknowledge_Log)MOVE(0,Acknowledge);]]>
</Text>
</Rung>
<Rung Number="76" Type="N">
<Text>
<![CDATA[[XIC(Disconnected) ONS(Acknowledge_ONS.0) OTU(Acknowledge.0) ,XIC(Disconnected) XIO(Acknowledge.0) COP(Disconnect_Off_String,Concatenated_String,1) CONCAT(Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.0) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="77" Type="N">
<Text>
<![CDATA[[XIC(VFD_Faulted) ONS(Acknowledge_ONS.1) OTU(Acknowledge.1) ,XIC(VFD_Faulted) XIO(Acknowledge.1) COP(VFD_Fault_String,Concatenated_String,1) CONCAT(Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.1) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="78" Type="N">
<Text>
<![CDATA[[XIC(Communication_Fault) ONS(Acknowledge_ONS.3) OTU(Acknowledge.3) ,XIC(Communication_Fault) XIO(Acknowledge.3) COP(Lost_Comm_String,Concatenated_String,1) CONCAT(Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.3) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="79" Type="N">
<Text>
<![CDATA[[XIC(Jammed) ONS(Acknowledge_ONS.4) OTU(Acknowledge.4) ,XIC(Jammed) XIO(Acknowledge.4) COP(Jam_String,Concatenated_String,1) CONCAT(Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.4) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="80" Type="N">
<Text>
<![CDATA[[XIC(Full) ONS(Acknowledge_ONS.5) OTU(Acknowledge.5) ,XIC(Full) XIO(Acknowledge.5) COP(Full_String,Concatenated_String,1) CONCAT(Name,Concatenated_String,MCM.CMD.Log) ADD(MCM.CMD.Log_Quantity,1,MCM.CMD.Log_Quantity) ,NE(MCM.STS.Acknowledge_Log,Empty_String) EQ(MCM.CMD.Log,MCM.STS.Acknowledge_Log) OTL(Acknowledge.5) COP(Empty_String,MCM.STS.Acknowledge_Log,1) ];]]>
</Text>
</Rung>
<Rung Number="81" Type="N">
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="82" Type="N">
<Text>
<![CDATA[XIC(HMI.Maintenance.Start_PB_Pressed)OTU(HMI.Maintenance.Start_PB_Pressed);]]>
</Text>
</Rung>
<Rung Number="83" Type="N">
<Text>
<![CDATA[XIC(HMI.Maintenance.Stop_PB_Pressed)OTU(HMI.Maintenance.Stop_PB_Pressed);]]>
</Text>
</Rung>
<Rung Number="84" Type="N">
<Text>
<![CDATA[OTU(CTRL.CMD.Start)OTU(CTRL.CMD.Stop_Require_Start)OTU(CTRL.CMD.Stop_Auto_Restart)OTU(CTRL.CMD.Encoder_Fault)OTU(CTRL.CMD.Jammed)OTU(CTRL.CMD.Full)OTU(CTRL.CMD.Run_Up_Enabled)OTU(CTRL.CMD.Stopped_By_Stop_PB)COP(Empty_String,CTRL.CMD.Log,1);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
<Routine Name="Prescan" Type="RLL"/>
</Routines>
<Dependencies>
<Dependency Type="DataType" Name="UDT_CTRL_APF"/>
<Dependency Type="DataType" Name="UDT_HMI_APF"/>
<Dependency Type="DataType" Name="UDT_CTRL_MCM"/>
</Dependencies>
</AddOnInstructionDefinition>
</AddOnInstructionDefinitions>
</Controller>
</RSLogix5000Content>
