<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--AOI that used with the R90C-4B21-KQ and he R95C-8B21-KQ Hub.-->
<RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="33.00" TargetName="Banner_R90C_R95C_PD_v4" TargetType="AddOnInstructionDefinition" TargetRevision="4.0 " TargetLastEdited="2023-10-23T12:51:22.078Z" ContainsContext="true" ExportDate="Mon Oct 23 07:51:49 2023" ExportOptions="References NoRawData L5KData DecoratedData Context Dependencies ForceProtectedEncoding AllProjDocTrans">
<Controller Use="Context" Name="Test">
<DataTypes Use="Context">
<DataType Name="Banner_R90C_R95C_PDI_Discrete_v4" Family="NoFamily" Class="User">
<Members>
<Member Name="P1_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P1_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
<Member Name="P2_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P2_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
<Member Name="P3_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P3_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
<Member Name="P4_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P4_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
<Member Name="P5_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P5_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
<Member Name="P6_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P6_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
<Member Name="P7_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P7_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
<Member Name="P8_Input_1" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 1 Input State.]]>
</Description>
</Member>
<Member Name="P8_Input_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Inactive, 1 = Active. Port 1 Discrete 2 Input State.]]>
</Description>
</Member>
</Members>
</DataType>
<DataType Name="Banner_R90C_R95C_PDI_v4" Family="NoFamily" Class="User">
<Description>
<![CDATA[UDT with all of the variables needed to control an R90C-4B21-KQ or R95C-8B21-KQ.]]>
</Description>
<Members>
<Member Name="Discrete_Info" DataType="Banner_R90C_R95C_PDI_Discrete_v4" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Measurement_1" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Measurement_2" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Measurement_3" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="Measurement_4" DataType="DINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="Banner_R90C_R95C_PDI_Discrete_v4"/>
</Dependencies>
</DataType>
<DataType Name="Banner_R90C_R95C_PDIO_v4" Family="NoFamily" Class="User">
<Description>
<![CDATA[UDT with all of the variables needed to control an R90C-4B21-KQ or R95C-8B21-KQ.]]>
</Description>
<Members>
<Member Name="PDI" DataType="Banner_R90C_R95C_PDI_v4" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="PDO" DataType="Banner_R90C_R95C_PDO_v4" Dimension="0" Radix="NullType" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="DTI" DataType="SINT" Dimension="18" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
<Member Name="DTO" DataType="SINT" Dimension="2" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write"/>
</Members>
<Dependencies>
<Dependency Type="DataType" Name="Banner_R90C_R95C_PDI_v4"/>
<Dependency Type="DataType" Name="Banner_R90C_R95C_PDO_v4"/>
</Dependencies>
</DataType>
<DataType Name="Banner_R90C_R95C_PDO_v4" Family="NoFamily" Class="User">
<Description>
<![CDATA[UDT with all of the variables needed to control an R90C-4B21-KQ or R95C-8B21-KQ.]]>
</Description>
<Members>
<Member Name="P1_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
<Member Name="P2_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
<Member Name="P3_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
<Member Name="P4_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
<Member Name="P5_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
<Member Name="P6_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
<Member Name="P7_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
<Member Name="P8_Output_2" DataType="SINT" Dimension="0" Radix="Decimal" Hidden="false" ExternalAccess="Read/Write">
<Description>
<![CDATA[0 = Off, 1 = On]]>
</Description>
</Member>
</Members>
</DataType>
</DataTypes>
<AddOnInstructionDefinitions Use="Context">
<AddOnInstructionDefinition Use="Target" Name="Banner_R90C_R95C_PD_v4" Revision="4.0" Vendor="Banner Engineering" ExecutePrescan="false" ExecutePostscan="false" ExecuteEnableInFalse="false" CreatedDate="2017-08-02T15:08:26.506Z" CreatedBy="DUKE\2011324" EditedDate="2023-10-23T12:51:22.078Z" EditedBy="DUKE\jpreisen"
 SoftwareRevision="v33.00">
<Description>
<![CDATA[AOI that used with the R90C-4B21-KQ and he R95C-8B21-KQ Hub.]]>
</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="PD" TagType="Base" DataType="Banner_R90C_R95C_PDIO_v4" Usage="InOut" Required="true" Visible="true" Constant="false"/>
<Parameter Name="Type" TagType="Base" DataType="SINT" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="SINT" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
<Parameter Name="Byte_Swap" TagType="Base" DataType="BOOL" Usage="Input" Radix="Decimal" Required="true" Visible="true" ExternalAccess="Read/Write">
<DefaultData Format="L5K">
<![CDATA[0]]>
</DefaultData>
<DefaultData Format="Decorated">
<DataValue DataType="BOOL" Radix="Decimal" Value="0"/>
</DefaultData>
</Parameter>
</Parameters>
<LocalTags>
<LocalTag Name="TempOut" DataType="SINT" Dimensions="2" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Array DataType="SINT" Dimensions="2" Radix="Decimal">
<Element Index="[0]" Value="0"/>
<Element Index="[1]" Value="0"/>
</Array>
</DefaultData>
</LocalTag>
<LocalTag Name="TempIn" DataType="SINT" Dimensions="18" Radix="Decimal" ExternalAccess="None">
<DefaultData Format="L5K">
<![CDATA[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]]]>
</DefaultData>
<DefaultData Format="Decorated">
<Array DataType="SINT" Dimensions="18" Radix="Decimal">
<Element Index="[0]" Value="0"/>
<Element Index="[1]" Value="0"/>
<Element Index="[2]" Value="0"/>
<Element Index="[3]" Value="0"/>
<Element Index="[4]" Value="0"/>
<Element Index="[5]" Value="0"/>
<Element Index="[6]" Value="0"/>
<Element Index="[7]" Value="0"/>
<Element Index="[8]" Value="0"/>
<Element Index="[9]" Value="0"/>
<Element Index="[10]" Value="0"/>
<Element Index="[11]" Value="0"/>
<Element Index="[12]" Value="0"/>
<Element Index="[13]" Value="0"/>
<Element Index="[14]" Value="0"/>
<Element Index="[15]" Value="0"/>
<Element Index="[16]" Value="0"/>
<Element Index="[17]" Value="0"/>
</Array>
</DefaultData>
</LocalTag>
</LocalTags>
<Routines>
<Routine Name="Logic" Type="RLL">
<RLLContent>
<Rung Number="0" Type="N">
<Text>
<![CDATA[XIO(Byte_Swap)CPS(PD.DTI[0],TempIn[0],18);]]>
</Text>
</Rung>
<Rung Number="1" Type="N">
<Comment>
<![CDATA[**** Input Area ****]]>
</Comment>
<Text>
<![CDATA[XIC(Byte_Swap)BTD(PD.DTI[0],0,TempIn[1],0,8)BTD(PD.DTI[1],0,TempIn[0],0,8)BTD(PD.DTI[2],0,TempIn[3],0,8)BTD(PD.DTI[3],0,TempIn[2],0,8)BTD(PD.DTI[4],0,TempIn[5],0,8)BTD(PD.DTI[5],0,TempIn[4],0,8)BTD(PD.DTI[6],0,TempIn[7],0,8)BTD(PD.DTI[7],0,TempIn[6],0,8)BTD(PD.DTI[8],0,TempIn[9],0,8)BTD(PD.DTI[9],0,TempIn[8],0,8)BTD(PD.DTI[10],0,TempIn[11],0,8)BTD(PD.DTI[11],0,TempIn[10],0,8)BTD(PD.DTI[12],0,TempIn[13],0,8)BTD(PD.DTI[13],0,TempIn[12],0,8)BTD(PD.DTI[14],0,TempIn[15],0,8)BTD(PD.DTI[15],0,TempIn[14],0,8)BTD(PD.DTI[16],0,TempIn[17],0,8)BTD(PD.DTI[17],0,TempIn[16],0,8);]]>
</Text>
</Rung>
<Rung Number="2" Type="N">
<Text>
<![CDATA[BTD(TempIn[0],0,PD.PDI.Measurement_4,24,8)BTD(TempIn[1],0,PD.PDI.Measurement_4,16,8)BTD(TempIn[2],0,PD.PDI.Measurement_4,8,8)BTD(TempIn[3],0,PD.PDI.Measurement_4,0,8);]]>
</Text>
</Rung>
<Rung Number="3" Type="N">
<Text>
<![CDATA[BTD(TempIn[4],0,PD.PDI.Measurement_3,24,8)BTD(TempIn[5],0,PD.PDI.Measurement_3,16,8)BTD(TempIn[6],0,PD.PDI.Measurement_3,8,8)BTD(TempIn[7],0,PD.PDI.Measurement_3,0,8);]]>
</Text>
</Rung>
<Rung Number="4" Type="N">
<Text>
<![CDATA[BTD(TempIn[8],0,PD.PDI.Measurement_2,24,8)BTD(TempIn[9],0,PD.PDI.Measurement_2,16,8)BTD(TempIn[10],0,PD.PDI.Measurement_2,8,8)BTD(TempIn[11],0,PD.PDI.Measurement_2,0,8);]]>
</Text>
</Rung>
<Rung Number="5" Type="N">
<Text>
<![CDATA[BTD(TempIn[12],0,PD.PDI.Measurement_1,24,8)BTD(TempIn[13],0,PD.PDI.Measurement_1,16,8)BTD(TempIn[14],0,PD.PDI.Measurement_1,8,8)BTD(TempIn[15],0,PD.PDI.Measurement_1,0,8);]]>
</Text>
</Rung>
<Rung Number="6" Type="N">
<Text>
<![CDATA[EQU(Type,8)BTD(TempIn[16],7,PD.PDI.Discrete_Info.P8_Input_2,0,1)BTD(TempIn[16],6,PD.PDI.Discrete_Info.P8_Input_1,0,1)BTD(TempIn[16],5,PD.PDI.Discrete_Info.P7_Input_2,0,1)BTD(TempIn[16],4,PD.PDI.Discrete_Info.P7_Input_1,0,1);]]>
</Text>
</Rung>
<Rung Number="7" Type="N">
<Text>
<![CDATA[EQU(Type,8)BTD(TempIn[16],3,PD.PDI.Discrete_Info.P6_Input_2,0,1)BTD(TempIn[16],2,PD.PDI.Discrete_Info.P6_Input_1,0,1)BTD(TempIn[16],1,PD.PDI.Discrete_Info.P5_Input_2,0,1)BTD(TempIn[16],0,PD.PDI.Discrete_Info.P5_Input_1,0,1);]]>
</Text>
</Rung>
<Rung Number="8" Type="N">
<Text>
<![CDATA[BTD(TempIn[17],7,PD.PDI.Discrete_Info.P4_Input_2,0,1)BTD(TempIn[17],6,PD.PDI.Discrete_Info.P4_Input_1,0,1)BTD(TempIn[17],5,PD.PDI.Discrete_Info.P3_Input_2,0,1)BTD(TempIn[17],4,PD.PDI.Discrete_Info.P3_Input_1,0,1);]]>
</Text>
</Rung>
<Rung Number="9" Type="N">
<Text>
<![CDATA[BTD(TempIn[17],3,PD.PDI.Discrete_Info.P2_Input_2,0,1)BTD(TempIn[17],2,PD.PDI.Discrete_Info.P2_Input_1,0,1)BTD(TempIn[17],1,PD.PDI.Discrete_Info.P1_Input_2,0,1)BTD(TempIn[17],0,PD.PDI.Discrete_Info.P1_Input_1,0,1);]]>
</Text>
</Rung>
<Rung Number="10" Type="N">
<Text>
<![CDATA[NOP();]]>
</Text>
</Rung>
<Rung Number="11" Type="N">
<Comment>
<![CDATA[**** Output Area ****]]>
</Comment>
<Text>
<![CDATA[EQU(Type,8)BTD(PD.PDO.P8_Output_2,0,TempOut[0],7,1)BTD(PD.PDO.P7_Output_2,0,TempOut[0],6,1)BTD(PD.PDO.P6_Output_2,0,TempOut[0],5,1)BTD(PD.PDO.P5_Output_2,0,TempOut[0],4,1);]]>
</Text>
</Rung>
<Rung Number="12" Type="N">
<Text>
<![CDATA[BTD(PD.PDO.P4_Output_2,0,TempOut[0],3,1)BTD(PD.PDO.P3_Output_2,0,TempOut[0],2,1)BTD(PD.PDO.P2_Output_2,0,TempOut[0],1,1)BTD(PD.PDO.P1_Output_2,0,TempOut[0],0,1);]]>
</Text>
</Rung>
<Rung Number="13" Type="N">
<Text>
<![CDATA[XIO(Byte_Swap)MOV(TempOut[0],PD.DTO[0]);]]>
</Text>
</Rung>
<Rung Number="14" Type="N">
<Text>
<![CDATA[XIC(Byte_Swap)MOV(TempOut[0],PD.DTO[1]);]]>
</Text>
</Rung>
</RLLContent>
</Routine>
</Routines>
<Dependencies>
<Dependency Type="DataType" Name="Banner_R90C_R95C_PDIO_v4"/>
</Dependencies>
</AddOnInstructionDefinition>
</AddOnInstructionDefinitions>
</Controller>
</RSLogix5000Content>
