Bajo la marca IO-Link existe un sistema de comunicación para conectar sensores inteligentes y actuadores a un sistema de automatización normalizado según la norma IEC 61131-9 bajo la designación Single-drop digital communication interface for small sensors and actuators (SDCI). La estandarización abarca tanto los datos de conexión eléctrica como un protocolo de comunicación digital mediante el cual los sensores y actuadores intercambian datos con el sistema de automatización.

Un sistema IO-Link consta de un maestro IO-Link y uno o varios dispositivos IO-Link, es decir, sensores o actuadores. El maestro IO-Link proporciona la interfaz con el sistema de control superior (SPS) y gestiona la comunicación con los dispositivos IO-Link conectados.

Un maestro IO-Link puede tener uno o varios puertos IO-Link, pero en cada puerto solo puede conectarse un dispositivo IO-Link, aunque actualmente también existen dispositivos en cascada o concentradores (hubs).

Un dispositivo IO-Link puede ser un sensor inteligente, un actuador o, por ejemplo, un concentrador, aunque en el mercado también hay dispositivos como fuentes de alimentación con conexión IO-Link. Inteligente en el contexto de IO-Link significa que un dispositivo, por ejemplo, dispone de un número de serie o de datos de parámetros (por ejemplo, sensibilidades, retardos de conmutación o curvas características) que pueden leerse o escribirse mediante el protocolo IO-Link. El cambio de parámetros puede realizarse en parte en funcionamiento a través de la SPS. IO-Link y los datos que transmite se utilizan a menudo para llevar a cabo mantenimiento preventivo e inspección; por ejemplo, es posible configurar un sensor óptico de modo que informe mediante IO-Link cuando corra el riesgo de ensuciarse, lo que hace necesaria una limpieza, aunque esta ya no tenga que realizarse innecesariamente demasiado pronto o demasiado tarde, como antes.

Los parámetros de sensores y actuadores son específicos de cada dispositivo, por lo que para cada dispositivo existe información de parámetros en forma de IODD (IO Device Description). [Fuente: Wikipedia]

Sensor vs. Sensor IO-Link (Dispositivos) Los sensores que NO son IO-Link no tienen lógica incorporada para reaccionar ante su entorno. Por ejemplo, en caso de suciedad en un sensor, el grado de suciedad aumenta hasta que el sensor falla.

Un sensor IO-Link, en cambio, puede determinar el grado de suciedad, ajustar en tiempo de ejecución los parámetros del sensor y poner en marcha medidas adicionales para limpiar la suciedad. Tras la limpieza, se realiza de nuevo una parametrización automática.

Otras ventajas de IO-Link

  • Estandarizado según IEC 61131-9

  • Integración independiente del fabricante en el bus de campo

  • Admite conexiones (3 polos: 2x alimentación & 1x señal) según los siguientes estándares:

    • M5
    • M8
    • M12
    • Cables de tres hilos
  • Comunicación bidireccional para análisis de dispositivos

  • Soporta las siguientes velocidades

    • 4.8kBaud (1 Baud = 1 símbolo por segundo)
    • 38,4kBaud
    • 230,4kBaud

Arquitectura de alto nivel

En cada punto del maestro solo se conecta un dispositivo IO-Link, es decir, entre el dispositivo (p. ej. un sensor) y el maestro existe una comunicación punto a punto.

IODD La IODD (IO Device Description) describe sensores y actuadores. Contiene información sobre identificación, parámetros del dispositivo, datos de proceso y diagnóstico, características de comunicación y la estructura de la interfaz de usuario en herramientas de ingeniería. Consta de varios archivos: uno principal y opcionales archivos de texto externos (ambos en formato XML), y opcionales archivos de imagen (en formato PNG). [Fuente: Wikipedia]

La IODD de cada dispositivo o sensor se obtiene bien en la página del fabricante o en un repositorio central: https://ioddfinder.io-link.com

Tras descargar el archivo IODD *.zip, los datos del dispositivo están disponibles dentro de un *.xml archivo. El nombre del archivo *.xml puede elegirse libremente.

Los ejemplos de código anteriores y siguientes se refieren al sensor DTL-C55PA-TMS-407-505 de la empresa Contrinex. IODD Enlace de descarga.

IODDChecker La validación del archivo IODD puede realizarse desde la línea de comandos con la aplicación IODDChecker:

Estructura de IODD La estructura base es la siguiente:

Como se muestra en la figura, la estructura base consta de las siguientes 6 secciones:

  1. DocumentInfo (opcional)
  2. ProfileHeader
  3. ProfileBody
  4. CommNetworkProfile
  5. ExternalTextCollection
  6. Stamp

1. DocumentInfo Todos los campos son opcionales y hablan por sí mismos.

2. ProfileHeader

Ejemplo: [codesyntax lang=“xml”]

<ProfileHeader>
  <ProfileIdentification>IO Device Profile</ProfileIdentification>
  <ProfileRevision>1.1</ProfileRevision>
  <ProfileName>Device Profile for IO Devices</ProfileName>
  <ProfileSource>IO-Link Consortium</ProfileSource>
  <ProfileClassID>Device</ProfileClassID>
  <ISO15745Reference>
    <ISO15745Part>1</ISO15745Part>
    <ISO15745Edition>1</ISO15745Edition>
    <ProfileTechnology>IODD</ProfileTechnology>
  </ISO15745Reference>
</ProfileHeader>

[/codesyntax]

3. ProfileBody Aquí se indican los datos específicos del dispositivo.

DeviceIdentity

  • vendorId: ID del proveedor
  • vendorName: Nombre del proveedor
  • deviceId: ID de proveedor o interno del dispositivo
  • VendorText: Descripción del proveedor
  • VendorUrl: URL del proveedor
  • VendorLogo: PNG 160x90
  • DeviceName: Nombre del dispositivo
  • DeviceFamily: Clasificación de proveedor o interna del dispositivo
  • DeviceVariantCollection: Describe las distintas variantes de un producto.

A partir de la combinación de ‘vendorId’ & ‘deviceId’ se puede determinar si la IODD corresponde a un dispositivo nuevo o ya existente.

DeviceFunction describe toda la funcionalidad de un dispositivo.

  • Features: Describe las funciones estándar del dispositivo
    • blockParameter: ¿Soporte de parámetros de bloque disponible? (true/false)
    • dataStorage: ¿Puede el dispositivo almacenar datos? (true/false)
    • profileCharacteristic: Lista de PIDs (Profile Identifiers) compatibles
    • SupportedAccessLocks: Opciones para acceder al dispositivo
  • VariableCollection: Todas las variables que admite el dispositivo
  • ProcessDataCollection: Todos los datos que procesa el dispositivo
  • EventCollection: Todos los eventos que admite el dispositivo, p. ej. advertencias
  • UserInterface: Todos los menús del dispositivo

4. CommNetworkProfile Describe la comunicación de la interfaz IO-Link.

  • iolinkRevision: la versión de protocolo implementada
  • compatibleWith: Solo se indica si el dispositivo es compatible con IO-Link 1.0
  • TransportLayers
    • PhysicalLayer
      • bitrate: Se permiten COM1-COM3
      • minCycleTime: ….
      • sioSupported: Un sensor IO-Link arranca por defecto en modo SIO (Standard I/O Mode). La comunicación digital IO-Link debe iniciarse activamente.
      • mSequenceCapability: ….
      • Test: Información para las pruebas automáticas
  • ExternalTextCollection: Comparable a un archivo de propiedades de idioma
  • Stamp: IODDChecker conoce los dos modos ‘check’ & ‘stamp’. En modo ‘check’ se informan los errores encontrados. El archivo no se sobrescribe. En modo ‘stamp’ se establece un nuevo sello, es decir, el archivo se modifica.