Cómo usar Linux en la automatización industrial. (II)

Publicado por Marcos Fernández el día 26.4.12




¿Por qué Linux es popular para sistemas embebidos?

Linux se usa comúnmente en los teléfonos inteligentes, dispositivos de navegación GPS, conmutadores de red, reproductores de DVD y reproductores de MP3. Linux proporciona a los desarrolladores la flexibilidad para reducir el tamaño del sistema operativo para adaptarse a su plataforma de destino, o adaptarlo a cumplir mejor con las necesidades específicas de su aplicación.

Los desafíos para los sistemas Linux embebidos en la automatización

La escasez de recursos afecta el tiempo de respuesta

Por lo general, los sistemas incorporados utilizan una CPU RISC. En sistemas basados ​​en RISC los recursos de la CPU son limitados en comparación a un sistema basado en x86. Incluso con Linux, el ingeniero de software todavía tendrá que reducir el tamaño del núcleo de Linux para encajar en el sistema embebido. La disponibilidad de los recursos del sistema también afecta el tiempo de respuesta del sistema, que es una prioridad, clave para la automatización industrial. Imagine un sistema típico de automatización, en la que cientos de E/S remotas son gestionados por un sistema embebido. Ahora consideramos que en la arquitectura tradicional, el sistema integrado debe comprobar el estado de E/S cada 500 ms. La realización de esta tarea por sí solo podría conducir a la CPU al 100% de utilización, sin dejar espacio para otros procesos.


Mayores barreras de entrada

Windows ofrece una interfaz gráfica de usuario familiar para los usuarios. Esto no está disponible en sistemas embebidos, que suelen utilizar una interfaz de línea de comandos. Un mayor nivel de conocimientos técnicos, normalmente es necesario (aunque cada vez menos), para usar Linux. Además, algunos programas de software de Windows o librerías de código pueden no estar disponibles en Linux. Las alternativas a estos programas se puede encontrar, pero la falta de librerías de código o controladores de dispositivo puede ser un gran problema.



Cómo sacar el máximo partido de Linux en la automatización

Software SCADA basado en Linux 

Normalmente, los sistemas SCADA que monitorizan y controlan un proceso, y se ejecutan en Windows. Sin embargo, hay muchoindustryindustrys recursos disponibles para usar sistemas SCADA basados ​​en Linux. Una lista completa se puede encontrar en la página web LinuxSCADA.

Comunicación con E/S remotas utilizando diversos protocolos de bus de campo en C

Los protocolos de bus de campo son una familia de protocolos industriales utilizados en la adquisición , control, y seguimiento de datos. Como ejemplos de protocolos de bus de campo tenemos a varios como: Profibus, Modbus,... Con el fin de comunicarse con los PLC y E/S remotas, se necesita saber los detalles del protocolo de bus de campo utilizado. En la actualidad, la forma más común y fácil es usar el protocolo Modbus, que está disponible de forma gratuita. Los detalles de la especificación Modbus se puede encontrar en la página web de la Organización de Modbus. Con estas especificaciones, incluso podemos implementar todo el protocolo Modbus por nuestra cuenta, pero hacerlo requerirá valioso tiempo de desarrollo, el cual reduciremos al aprovechar el trabajo publicado por la comunidad de software libre.

Reducir la carga de trabajo de desarrollo con librerías de código de Linux

Las bibliotecas de código son un valioso ahorro de tiempo y la solución para hacer cualquier aplicación de automatización más fácil de implementar. Una librería de programas pueden incluir tomas de corriente, Modbus de lectura/escritura y el código de las funciones de dirección Modbus, lo que agiliza la creación de nuevos programas y combina varias tareas complejas, en un solo paso. Incluso las librerías más completas podrían incluir código de ejemplo para ayudar a los desarrolladores crear sus propios programas. Los vendedores de E/S  remotas proporcionan una biblioteca de programas para la plataforma Windows, pero normalmente no hacen lo mismo para Linux. Para aprovechar los beneficios de Linux para la automatización industrial, buscar un socio profesional que proporciona una librería de código abierto es fundamental.


De los sistemas embebidos a x86

Muchas de las limitaciones que nos podemos encontrar, en cuanto a rendimiento, a la hora de implantar  el sistema se pueden superar con tecnologías propias como la tecnología multi-hilo. Sin olvidar el gran avance que actualmente suponen sistemas PAC basados en x86, con una potencia suficiente para atender las necesidades más exigentes.

Personalmente es una tendencia que creo que no hay que descartar, como he intentado argumentar en este artículo anterior.

Soy consciente que los puristas me van a criticar por el tratamiento simplista con el que he tratado varios puntos, tanto del mundo del software libre como de sistemas propietarios en aras de una explicación simple de un punto de vista que comparto. 

No obstante creo que puede ser un buen punto de partida para abrir el debate... Por ejemplo, existen vulnerabilidades de seguridad críticas en sistemas Linux que pueden poner en peligro al sistemas más seguro. Al igual que un sistema Windows, gestionado por un buen administrador (conozco varios) pueden ser extremadamente seguro y fiable.