"IO-Link" wird ja als "USB Schnittstelle der Sensorik" bezeichnet.
Für mich hat das so nie gestimmt, weil USB die Treiber ja automatisch für neue Geräte erkennt.
Ich hatte mal angefangen, sowas für meinen Balluff Master umzusetzen. Ich beschreibe einfach mal ein bisschen,
was ich mir damals so grob gedacht hatte - vielleicht hilft es ja (ist schon 2 Jahre her - steht immer noch auf meiner ToDo Liste).
Ich verwende keine IODDs. Die Steuerungen, für die ich Zuständig bin, werden max. an Brückentagen oder in der Wartungswoche unserer
Fa. geplant neu gestartet. Daher habe ich 8x 32 Byte E/As pro Master zugeordnet (ich habe tatsächlich 2 Sensoren, die das fast komplett ausnutzen). Ich weiß aber nicht, was die 1200er an max. E/As kann.
Vom Master prüfe ich das Signal "IO-Link Kommunikation" (also sobald ein Device mit IO-Link mit dem Master kommunizieren möchte).
Wenn eine Flanke kommt (mit irgendeiner Zeitprüfung - das neue Gerät wird zu diesem Zeitpunkt ja eingesteckt) werden Daten vom IO-Link Device geprüft.

(kann man bei der E/A Konfiguration des Masters einfach mit reinziehen - Balluff hat da z.B. auch noch Kurzschlusserkennung, ... mit drin. Muss man dann halt im Programm verarbeiten)
Der Vendor Bereich ist in der Regel gleich aufgebaut. Ich prüfe also Hersteller und Gerät (evtl. noch Firmware- oder Hardwareversion)
und weiß dann, was da drin steckt.
Bekannte Geräte werden dann in einem E/A Baustein, der meine Bytes aufbereitet weiterverarbeitet (z.B. Bytes in Real wandelt).
Also z.B.
Case "Device" of
"Device": 1 //
// kopiere die Prozessdaten von Device 1 aus den 32 Byte so wie du sie brauchst
"Device": 2 //
// kopiere die Prozessdaten von Device 2 aus den 32 Byte so wie du sie brauchst
;
Else
// Device unbekannt
;
End_Case;
Von Dort aus geht es dann in die Programmbearbeitung.
Ist leider alles nur aus dem Kopf raus Habe weder den Programmentwurf, noch TIA zur Hand.
Falls es für deine Devices keine gescheite Dokumentation gibt - auf der Seite:
gibt es 2 Tools. IODD-Checker und IODD-Viewer.
Ich glaube der Viewer war es, in den man sich die IODD reinladen kann und als HTML (ziemlich sauber) ausgeben kann.
Von allen meinen IO-Link Geräte wurde eine html Datei erstellt, um eine durchgängige Dokumentation zu bekommen.
Viel Erfolg bei deinem Vorhaben.