To use UDTs, you create your own tag in the Default tag table as shown in the previous section and instead of using one of the elementary Data types, you select one of the UDTs we generated. So for the feeder module, we know from the previous section that its starting address for both Inputs and outputs is byte 0. So, we are going to create a tag to store all of the feeder module’s inputs and a tag to write to all of the feeder module’s outputs.
Example Modules and UDT Assignment
Using the modules we defined in the Topology Example section, we are going to assign each module’s input and output data to the UDTs we generated in the previous section.
Profinet Name | Module Mode | DAP from Hardware Catalog | Input UDT Name | Output UDT Name |
---|---|---|---|---|
feeder | Full ZPA | ConveyLinx-Ai in ZPA mode | CLXAiZPA_IN | CLXAiZPA_OUT |
merge | Full ZPA with Merger | ConveyLinx-Ai merger | CLXAiZPA_IN | CLXAiZPA_OUT |
divert | ConveyLogix Interface | ConveyLinx-Ai in PLC mode with ConveyLogix | N/A | N/A |
workstation | Full PLC Controlled | ConveyLinx-Ai in PLC mode | CLXAiPLC_IN | CLXAiPLC_OUT |
spur | Reduced ZPA | ConveyLinx-Ai in reduced ZPA mode | CLXAiZPAmini_IN | CLXAiZPAmini_OUT |
reject | Reduced PLC Controlled | ConveyLinx-Ai in reduced PLC mode | CLXAiPLCmini_IN | CLXAiPLCmini_OUT |
Adding feeder Module
Adding workstation Module
Adding Remaining Modules
What about ConveyLogix Interface?
There is no UDT required for the ConveyLogix interface because the input and output data have no pre-defined meanings or operations. The I/O data for a module using ConveyLogix is a “blank” block of 32 input and 32 output bytes (16 input and 16 output Words) that is available for the programmer to use as needed based upon the application.
For this example, you can access the divert module by either the Raw Unmapped Data Direct from Module or Module Data Elements Mapped to Tags method previously described.