Automation Master es un proyecto de código abierto [1] mantenido por la comunidad. Automation Master fue creado para ayudar en el diseño, la implementación y el funcionamiento de un sistema automatizado.
La instalación y puesta en marcha de cualquier sistema automatizado es una tarea que requiere mucho tiempo y dinero. Gran parte del tiempo que se dedica a poner en marcha un sistema automatizado se debe a las dificultades para realizar una prueba eficaz del sistema informático en el laboratorio del integrador.
Las técnicas de prueba tradicionales requerían colocar en el laboratorio la mayor cantidad posible de equipos y conectar un panel simulador que contenía interruptores y luces indicadoras a todos los módulos de E/S del PLC. Las estaciones de operador se conectaban a este "nido de ratas" de cables, interruptores, luces indicadoras y equipos para la prueba.
El software del PLC se probaría secuenciando los interruptores de palanca para introducir las señales eléctricas en las tarjetas de entrada del PLC y luego observando la respuesta del software en las luces indicadoras y las consolas del operador. Para sistemas pequeños y sencillos, este tipo de prueba era manejable y daba lugar a cierto grado de confianza en que el software de control funcionaría una vez instalado. Sin embargo, la cantidad de tiempo empleado en realizar la prueba era relativamente alta y no se podía lograr una prueba en tiempo real.
A medida que los sistemas se hacen más grandes y complejos, este método de prueba solo logra, a un costo significativo, una verificación básica de hardware y configuración. La prueba de secuencias lógicas complejas es un acto inútil sin la capacidad de reproducir con precisión las relaciones de tiempo entre las señales. Lo que se necesitaba era la capacidad de probar el software del sistema de control en un entorno de tiempo real. La simulación en tiempo real llena este vacío. Los simuladores en tiempo real como Automation Master son paquetes de software basados en PC que utilizan un modelo para imitar la reacción del sistema automatizado al software de control.
Max Hitchens y George Rote comenzaron a trabajar en proyectos de automatización industrial a fines de la década de 1970. Uno de sus primeros proyectos fue un sistema de vehículos guiados automáticamente para Goodyear Tire and Rubber Company en Lawton, Oklahoma . Este sistema debía transportar automáticamente materiales y productos terminados en una enorme fábrica de neumáticos.
La experiencia previa de Hitchens y Rote en el desarrollo de software se había desarrollado principalmente en entornos de oficina donde la lógica podía depurarse basándose en un CRT simple o en la salida impresa. Así que, después de cuatro meses de escribir software para el sistema automatizado, llevaron el software al campo y así consiguieron su "bautismo" en la depuración del mundo real de grandes sistemas automatizados. Se enviaba un vehículo automático para realizar una tarea y no aparecía en su destino. Primero, tenían que encontrar el vehículo, que podía estar en cualquier parte de las enormes instalaciones, y luego tratar de averiguar qué había fallado. Después de 6 meses de jornadas de 16 horas, 7 días a la semana, finalmente consiguieron que el sistema funcionara.
El Sr. Hitchens y el Sr. Rote tenían otros proyectos de vehículos guiados automáticos y decidieron no repetir la experiencia de depuración de Goodyear. Por lo tanto, construyeron un simulador personalizado que se conectaba al controlador del sistema del vehículo guiado y simulaba ser la planta de producción. La actividad de los vehículos guiados se mostraba en una pantalla gráfica en color. El software se podía depurar en sus escritorios y, una vez terminado y depurado, se podía llevar al campo y se podía instalar con el mínimo esfuerzo.
Algún tiempo después, el Sr. Hitchens y el Sr. Rote estaban demostrando su simulador AGV a Conco-Tellus, un fabricante de sistemas de transporte , cuando les preguntaron si podían construir un simulador para sistemas de transporte. Por supuesto, la respuesta fue sí y nació el Simulador de Transportador en Tiempo Real (RTCS). [2] El RTCS era un sistema personalizado con 3 computadoras de placa única . Se les concedió una patente [3] para ello en 1985.
El RTCS era un producto especializado que no tenía un gran mercado, pero Hitchens y Rote continuaron perfeccionándolo y desarrollándolo. En esa época se introdujo el IBM PC y se utilizó para crear la base de datos necesaria para el simulador. A mediados de los años 80, un director de Bell Labs vio el simulador y quiso probarlo para modelar proyectos de desarrollo de software. No era práctico en una caja de hardware personalizada, pero como el código estaba escrito para procesadores Intel , era posible convertirlo para que funcionara en un PC.
A cambio del uso gratuito del software, Bell Labs contribuyó con un sistema de desarrollo y dos ingenieros de software para ayudar con la conversión. Resultó que no era muy difícil y en pocas semanas el RTCS estaba funcionando en un PC. Bueno, casi, el PC no tenía suficiente potencia para cumplir con el cálculo en tiempo real que requería el RTCS. Sin embargo, era un gran sistema de demostración. Ahora todo lo que se necesitaba era un disco y no 45 kg de equipo informático.
A medida que el PC 8088 se transformaba en el 80286 , los clientes se mostraban cada vez más reacios a gastar miles de dólares en un equipo informático personalizado. Cuando aparecieron los ordenadores personales 80386 , el RTCS dejó de tener mercado. Afortunadamente, el 80386 y, posteriormente, el 80486 tenían suficiente potencia para ejecutar la simulación en tiempo real y nació Automation Master [4] .
El desarrollo continuó hasta mediados de los años 90, cuando por diversas razones, principalmente la muerte de George Rote, se interrumpió. En ese momento, Automation Master ya había incorporado miles de horas de desarrollo y uso.
Automation Master languideció hasta 2013, cuando Max Hitchens decidió crear un proyecto de código abierto [1] y lanzarlo al dominio público.
Automation Master es un paquete integral de software de modelado y simulación diseñado específicamente para el diseño, la implementación y la operación de la automatización de fábricas y almacenes .
Una vez finalizadas las pruebas, el sistema se enviará con la seguridad de que se ha realizado una prueba en tiempo real y que funcionará una vez instalado. La instalación será más rápida y menos costosa y el sistema que se le entregará al cliente será de mayor calidad y podrá ponerse en producción rápidamente.
Automation Master también se puede utilizar durante todo el ciclo de vida [5] de una fábrica automatizada, desde la fase de diseño, pasando por la fase de implementación, hasta la producción real.
Un proyecto de automatización es un ciclo de actividades. El proyecto comienza como un concepto, el concepto del sistema se utiliza para desarrollar un diseño, el diseño del sistema se utiliza para fabricar los componentes del sistema, los componentes fabricados se instalan y el sistema instalado se pone en funcionamiento. El sistema instalado genera conceptos para mejoras o nuevos sistemas y el ciclo se repite. Un simulador en tiempo real puede ayudar en todo el ciclo de vida de un proyecto.
Un concepto es, por lo general, tan sólo una idea que necesita financiación para convertirse en realidad. Los sistemas automatizados son dinámicos. Una imagen estática o una descripción de un sistema automatizado no demuestra la interacción de los componentes ni muestra cómo funciona el sistema en su conjunto. Se ha dicho que una imagen vale más que mil palabras; un corolario es que una imagen en movimiento vale diez mil palabras. Una imagen animada, generada por un simulador en tiempo real, puede comunicar el concepto y ayudar a vender el proyecto a la gerencia.
Diseñar un sistema automatizado es un acto de equilibrio. Se buscan los mejores resultados posibles con el menor costo. El diseño del sistema se selecciona entre varias alternativas. Elegir la mejor alternativa requiere evaluar las alternativas y cómo interactúan entre sí. Un simulador en tiempo real permite al diseñador del sistema evaluar los diseños potenciales, utilizando un modelo, para seleccionar el mejor enfoque para el sistema automatizado.
Un elemento importante del diseño de sistemas automatizados es el desarrollo de la estrategia general que se utilizará en la operación de la instalación. Un modelo de simulación permite desarrollar la estrategia operativa de forma interactiva. Se implementa una estrategia en el modelo, se visualizan los resultados y se perfecciona la estrategia para mejorar el rendimiento. La estrategia operativa se vuelve cada vez más importante a medida que aumenta el costo de los componentes del sistema. La eficiencia del sistema se puede mejorar modificando la estrategia operativa utilizando el modelo sin aumentar el costo del sistema.
Se pueden configurar pruebas de escenarios o casos de prueba para probar y confirmar el funcionamiento adecuado del sistema en distintas condiciones y recopilar datos estadísticos sobre su funcionamiento.
Automation Master se utiliza para el control de calidad del software [6] durante la fase de implementación.
El simulador en tiempo real se puede conectar directamente a los controladores programables y a las computadoras del sistema automatizado. El modelo se utiliza como reemplazo del equipo físico. De esta manera, la lógica de control y el software del sistema se pueden probar exhaustivamente en un entorno de laboratorio en lugar de hacerlo en la planta. La lógica de control se puede someter a pruebas de estrés bajo carga operativa completa para verificar que el sistema cumplirá con los requisitos de producción.
La emulación del sistema reduce los riesgos de seguridad y los daños al equipo durante la instalación. Los errores en la lógica de control y las fallas en las pruebas se detectan utilizando un modelo, no el sistema en vivo. Un modelo de emulación contiene más detalles que el modelo de simulación de la fase de diseño. Los escenarios de simulación que ejercitaron el diseño del sistema pueden volver a ejecutarse en modo de emulación para verificar que el diseño detallado y la implementación de la lógica de control cumplen con los requisitos de producción del sistema. Si no es así, es mucho más fácil y menos costoso modificar el diseño o la lógica de control antes de instalar el sistema.
Se puede utilizar un simulador en tiempo real durante la instalación para determinar la variación entre el diseño del sistema y la instalación real. La verificación de campo registra las diferencias entre el sistema "tal como está construido" y el modelo. Si se ha cometido un error importante al trasladar el diseño del sistema al sistema instalado, se puede corregir antes de ponerlo en marcha.
Las diferencias que se informan en el registro de verificación se utilizan para cambiar el modelo y reflejar el sistema "tal como está construido". Luego, se puede volver a probar la lógica de control para verificar que el software seguirá cumpliendo con los requisitos de producción con el sistema "tal como está construido". Los escenarios de rendimiento de simulación también se pueden volver a ejecutar para verificar que el sistema "tal como está construido" cumple con todos los criterios de diseño del sistema.
El modelo puede actuar como monitor de diagnóstico. En este modo, el modelo se ejecuta en paralelo con el funcionamiento del sistema instalado. El simulador en tiempo real muestra la actividad dinámica del sistema y compara continuamente el modelo con el funcionamiento real. Cuando se produce una discrepancia, fuera de las tolerancias especificadas, entre el funcionamiento del sistema y el modelo, se informa de un error que ayuda al personal de mantenimiento a diagnosticar y reparar el sistema.
Los sistemas automatizados nunca son estáticos. Los cambios son inevitables. Se generan ideas para nuevos sistemas. Como existe un modelo de simulación en tiempo real exacto, los cambios propuestos se pueden probar por completo antes de implementarlos.
Los cambios necesarios en el software de control se pueden probar mediante emulación. Las modificaciones físicas del equipo se pueden verificar. El resultado de los cambios en el sistema automatizado se puede probar antes de que se realicen los cambios en el sistema de producción, de modo que los cambios se puedan realizar sin detener la producción.
Automation Master se conecta al sistema de control/PLC y emula la E/S del mundo real leyendo y escribiendo las imágenes de E/S internas del PLC. El simulador puede recibir las salidas del sistema de control/PLC y responder con las entradas en tiempo real sin necesidad de ninguna E/S física cableada. Un simulador emula la respuesta en tiempo real a las acciones del sistema de control/PLC basándose en un modelo que duplica el funcionamiento del sistema automatizado. Por ejemplo, si el sistema de control/PLC establece una salida digital para poner en marcha un motor para levantar una puerta, el modelo, en cuestión de milisegundos, proporciona al sistema de control/PLC un cierre de contacto auxiliar para indicar que el motor se ha puesto en marcha. Poco después, el interruptor de límite de cierre de la puerta se apaga cuando la puerta empieza a subir. Mientras el sistema de control/PLC mantenga activada la señal de salida que levanta la puerta, la puerta del modelo continúa subiendo. Cuando la puerta está completamente abierta, el modelo activa el interruptor de límite de apertura de la puerta y el PLC responde apagando el motor que levantó la puerta. El modelo ve que el sistema de control/PLC apaga el motor y desconecta el contacto auxiliar del motor.
Una vez que se ha creado un modelo de un componente, se puede ejecutar una y otra vez, en distintas condiciones, para ejercitar de forma rápida y exhaustiva el software de control. Por ejemplo, ¿qué sucede si el sistema de control/PLC pierde el contacto auxiliar del motor mientras la puerta se eleva? ¿El sistema de control/PLC apaga la salida que eleva la puerta? ¿Se envía una alarma al sistema de nivel II? ¿Cómo responde el sistema de nivel II? Cuando se detecta un error, el programador puede alterar fácilmente el software y volver a probarlo utilizando el modelo. El sistema automatizado se depura en tiempo real sin cableado, interruptores, campanas, silbatos ni molestias.
La simulación en tiempo real permite crear modelos de múltiples modos. Un modelo de múltiples modos se puede utilizar en los modos de simulación, emulación o monitorización simplemente invocando el simulador con un archivo de configuración diferente. Los modelos de múltiples modos se crean separando el modelo de la estrategia de control del sistema del modelo de los componentes físicos.
Hay dos elementos distintos en un modelo de simulación de un sistema automatizado. Un elemento son los componentes físicos del sistema que se está modelando. El segundo elemento es una estrategia de control que se utiliza para tomar decisiones, gestionar los recursos del sistema y enrutar el producto utilizando los componentes del sistema.
En el modo de simulación, la interacción entre la estrategia de control y el modelo de los componentes físicos tiene lugar internamente dentro del modelo de simulación en tiempo real.
Un modelo de emulación solo requiere el segundo elemento. La estrategia de control se incorpora a la lógica del PLC, en lugar de estar contenida dentro del modelo.
La estrategia de control la proporciona un procesador independiente en modo de emulación. El software de control escrito para implementar la estrategia de control será el mismo que controlará los componentes físicos del sistema cuando se instale el sistema. Se crea un modelo de los componentes físicos del sistema que reacciona de forma idéntica a los componentes físicos del sistema real.
El modelo del sistema físico se construye por separado de la lógica de control que se está probando. El modelo del sistema físico es pasivo y no toma decisiones. El modelo físico reacciona a las decisiones tomadas por la lógica de control de la misma manera que lo haría el sistema real. Un modelo de emulación funcionará tanto en modo de emulación como de simulación con la adición de la estrategia de control al modelo.
La estrategia de control del sistema ahora existe en dos lugares, en el modelo y en el PLC. La fuente de la estrategia de control del sistema se puede seleccionar utilizando la variable OPERATING_MODE en el archivo de configuración. La estrategia de control en el modelo se implementa utilizando una actividad asincrónica. Se utiliza un condicional como parte de las condiciones de activación en todas las entradas de actividad asincrónica utilizadas estrictamente para el modo de simulación. Esto habilita la ejecución de la estrategia de control del sistema en el modo de simulación y la deshabilita en el modo de emulación. Se configuran dos archivos de configuración diferentes, uno para cada modo, para establecer el archivo de inicialización, el modo operativo y otras diferencias de configuración entre los modos. La ejecución del simulador en tiempo real con el archivo de configuración del modo de simulación hace que el modelo funcione como una simulación. La ejecución del simulador en tiempo real con el archivo de configuración del modo de emulación ejecuta el modelo como una emulación. La simulación se ejecuta con la estrategia de control del sistema interno y deshabilita la conexión externa al PLC. La ejecución en modo de emulación deshabilita la estrategia de control interno y habilita la interfaz con el PLC que proporciona la estrategia de control externo. Los componentes físicos del sistema real son necesarios para el modo de monitor.
En el modo de monitorización, solo se requiere el modelo de los componentes físicos del sistema. La estrategia de control se ejecuta en el PLC y controla simultáneamente el sistema real y el modelo.
El simulador en tiempo real recibe las señales que se envían y reciben del sistema real. El modelo del sistema físico se ejecuta en paralelo con el sistema real, de modo que las diferencias entre la actividad del modelo y del sistema real se pueden utilizar para diagnosticar fallas de los componentes.
Se puede ejecutar un solo modelo en los tres modos incluyendo la estrategia de control del sistema (habilitada solo en el modo de simulación) en el modelo.
Para el funcionamiento en modo monitor, se crea un archivo de configuración independiente que contiene el archivo de inicialización del monitor. Para cambiar el modo de funcionamiento del monitor al modo de emulación o simulación, será necesario desconectar el sistema real. Una vez que se desconecte el sistema real, el modelo puede cambiar entre los modos de simulación y emulación activando o desactivando la estrategia de control interno.
RR Donnelley - Máquina clasificadora de disquetes [7]