Hi everyone,
I’m working with the AXC 1152/2152 controllers and integrating them with AXL SE IOL4 modules. I’ve installed the IOL_Basic_7 app to facilitate this process. My current task involves reading process data input from a series of (three) Pepperl+Fuchs Ultrasonic sensors UC1000-18GS-IUEP-IO-V15 (and UC500).
From what I understand, when accessing primary process data, setting an Index number isn’t necessary. However, to read or write specific parameters, an Index number with a corresponding Subindex number would be required.
Additionally, the P+F IOL parameters datasheet notes that process data input content can also be accessed using the parameter ‘Process Data Input’ at index 40 (0x28).

My focus is on reading the measurement value (level indication) of the sensor. I’m uncertain about how to properly configure this, as the documentation leaves some gaps for me. It appears that for the Index number, a WORD data type should be entered into wIndex, and for the Subindex number, a BYTE should be entered into bSubIndex. Inputs of 0.1 or 1 are not accepted as Subindex.
Does anyone have suggestions on how to correctly use the function block to get the proper data readout?
The help file also mentions an ExampleMachine function block – is this necessary in this case?
I can only copy this ‚ExampleMachine‘ function block from the sample project file – it’s not available for me within the Compononents > Programming > AsynCom or **Compononents > Programming > IOL_Basic_7 **tree, on the.
Moreover, there seems to be a need for the AsynCom function block. I’m unsure if wSlot and bSubSlot need to be manually entered, or if they are read automatically. The help file mentions: wSlot WORD Module number (found in the bus configuration under the Axioline settings of the module, adapted when the block is activated) and bSubslot BYTE Module sub number (also found in the bus configuration, adapted when the block is activated).
Or is this AsynCom function block getting this data from the ExampleMachine function block, and is the IOL_COM function block getting it 's data from the AsynCom? Is ExampleMachine optional, is AsynCom optional?
My IOL module appears on the third line of the Device List, and for this module, the bSubSlot ranges from 1-4. How can I determine the necessary WORD or BYTE values if they need to be entered? In the IOL_COM function block, you can specify with iPort which port you want to read – but it must be clear which module/device this port can be found on.
I felt like I made some progress, but no it’s still not clear what else I need to do to extract the desired data from the sensor using IO-Link. I’d like to know how this works and I’m looking for some guidance to navigate this setup successfully.
Thanks in advance for your help.



I suggest you contact Pepperl & Fuchs for an updated IODD file.

If this library is deleted, then the PDI function blocks will disappear.