Método y dispositivo para programar un controlador industrial de una instalación automatizada.
Un método de programar un controlador industrial (14) para controlar una instalación automatizada (10),
incluyendo la instalación al menos un sensor (16, 20) para proporcionar datos de sensor que representan un estado real del sistema de la instalación y al menos un accionador (18, 24, 26) para actuar en el estado real del sistema, e incluyendo el controlador (14) una memoria de datos (38) para almacenar los datos de sensor y una memoria de programa (36) para almacenar un programa de código máquina (38), incluyendo el método los pasos de:
- proporcionar una herramienta de programación (30) que tiene un editor de programa (42), una herramienta de depuración (52) y un compilador (48),
- crear un programa de control de alto nivel (44) por medio del editor de programa (42), incluyendo el programa de control de alto nivel (44) una pluralidad de instrucciones de control de nivel alto (46),
- compilar el programa de control de alto nivel (44) por medio del compilador (48) con el fin de crear un programa de código máquina (38) incluyendo instrucciones de código máquina (40) para leer y procesar repetidas veces los datos de sensor,
- cargar el programa de código máquina (38) en la memoria de programa (36), y
- activar la herramienta de depuración (52) para depurar el programa de control de alto nivel (44), donde las instrucciones de control de nivel alto (46) se muestran en el editor de programa (42), donde el programa de código máquina (38) es ejecutado en el controlador (14) mientras la herramienta de depuración (52) es activada, caracterizado porque la herramienta de depuración (52) determina una relación inversa entre el código máquina (38) que se ejecuta en el controlador (14) y al menos una instrucción de control de nivel alto (46) mostrada en el editor de programa (42), leyendo la herramienta de depuración (52) los datos de sensor de la memoria de datos (38), asignando la herramienta de depuración (52) los datos de sensor de la memoria de datos (38) a la al menos única instrucción de control de nivel alto (46), enlazando por ello la al menos única instrucción de control de nivel alto a un estado real del sistema durante la ejecución del programa de código máquina (38), donde la herramienta de depuración (52) visualiza los datos de sensor en el editor de programa (42) en una posición próxima a la instrucción de programa de nivel alto (46) y la herramienta de depuración incluye una base de datos (58) incluyendo una pluralidad de símbolos gráficos (74, 76) de los que cada uno ilustra uno de una pluralidad de estados predefinidos del sistema de la instalación (10), presentando la herramienta de depuración (52) uno de la pluralidad de símbolos gráficos (74, 76) en la posición próxima a la instrucción de programa de nivel alto (46) en función de los datos de sensor asignados.
Tipo: Patente Europea. Resumen de patente/invención. Número de Solicitud: E09158215.
Solicitante: PILZ GMBH & CO. KG.
Nacionalidad solicitante: Alemania.
Dirección: FELIX-WANKEL-STRASSE 2 73760 OSTFILDERN ALEMANIA.
Inventor/es: WALTER, HERBERT, REUSCH,MATTHIAS, CANTARELLI,MATTEO, STANKO,FLORIAN, NAWRATIL,TIMO.
Fecha de Publicación: .
Clasificación Internacional de Patentes:
- G05B19/05 FISICA. › G05 CONTROL; REGULACION. › G05B SISTEMAS DE CONTROL O DE REGULACION EN GENERAL; ELEMENTOS FUNCIONALES DE TALES SISTEMAS; DISPOSITIVOS DE MONITORIZACION O ENSAYOS DE TALES SISTEMAS O ELEMENTOS (dispositivos de maniobra por presión de fluido o sistemas que funcionan por medio de fluidos en general F15B; dispositivos obturadores en sí F16K; caracterizados por particularidades mecánicas solamente G05G; elementos sensibles, ver las subclases apropiadas, p. ej. G12B, las subclases de G01, H01; elementos de corrección, ver las subclases apropiadas, p. ej. H02K). › G05B 19/00 Sistemas de control por programa (aplicaciones específicas, ver los lugares apropiados, p. ej. A47L 15/46; relojes que implican medios anejos o incorporados que permiten hacer funcionar un dispositivo cualquiera en un momento elegido de antemano o después de un intervalo de tiempo predeterminado G04C 23/00; marcado o lectura de soportes de registro con una información digital G06K; registro de información G11; interruptores horarios o de programa horario que se paran automáticamente cuando el programa se ha realizado H01H 43/00). › Controladores lógicos programables, p. ej. que simulen las interconexiones lógicas de señales según diagramas en escalera o gráficos de funciones.
PDF original: ES-2483966_T3.pdf
Fragmento de la descripción:
Método y dispositivo para programar un controlador industrial de una instalación automatizada
La presente invención se refiere a un método de programar un controlador industrial para controlar una instalación automatizada, incluyendo la instalación al menos un sensor para proporcionar datos de sensor que representan un estado real del sistema de la instalación y al menos un accionador para actuar en el estado real del sistema, e incluyendo el controlador una memoria de datos para almacenar los datos de sensor y una memoria de programa para almacenar un programa de código máquina, incluyendo el método los pasos de
- proporcionar una herramienta de programación que tiene un editor de programa, una herramienta de depuración y un compilador,
- crear un programa de control de alto nivel por medio del editor de programa, incluyendo el programa de control de alto nivel una pluralidad de instrucciones de control de nivel alto,
- compilar el programa de control de alto nivel por medio del compilador con el fin de crear un programa de código máquina incluyendo instrucciones de código máquina para leer y procesar repetidas veces los datos de sensor,
- cargar el programa de código máquina en la memoria de programa, y
- activar la herramienta de depuración para depurar el programa de control de alto nivel, donde las instrucciones de control de nivel alto se muestran en el editor de programa,
donde el programa de código máquina es ejecutado en el controlador mientras la herramienta de depuración está activada.
La invención se refiere además a un dispositivo para programar un controlador industrial de una instalación automatizada, incluyendo la instalación al menos un sensor para proporcionar datos de sensor que representan un estado real del sistema de la instalación y al menos un accionador para actuar en el estado real del sistema, e incluyendo el controlador una memoria de datos para almacenar los datos de sensor y una memoria de programa para almacenar un programa de código máquina, incluyendo el dispositivo un editor de programa para crear un programa de control de alto nivel, incluyendo el programa de control de alto nivel una pluralidad de instrucciones de control de nivel alto, un compilador para compilar el programa de control de alto nivel con el fin de crear un programa de código máquina incluyendo instrucciones de código máquina para leer y procesar repetidas veces los datos de sensor, una interfaz para cargar el programa de código máquina en la memoria de programa del controlador, y una herramienta de depuración para depurar el programa de control de alto nivel, donde las instrucciones de control de nivel alto se muestran en el editor de programa.
Se conoce un método y un dispositivo de este tipo, por ejemplo, por EP 1 870 787 A1.
En el mundo actual, muchos procesos técnicos se ejecutan automatizados o al menos parcialmente automatizados. Se puede ver ejemplos en emplazamientos de fabricación industriales y las plantas de producción, pero también en situaciones de la vida diaria en la recogida de equipajes en aeropuertos, telesillas en estaciones de esquí, montañas rusas en parques de ocio, etc. Las máquinas y otros componentes de tales instalaciones son operados por controladores industriales que reciben y procesan datos de sensor procedentes de sensores situados en la instalación y que producen señales de control para mover accionadores en la instalación. Por ejemplo, la posición operativa de un brazo de robot puede ser controlada automáticamente en función de los datos de sensor que representan una posición instantánea del brazo de robot y en función de una trayectoria deseada del brazo de robot definida por un programa de control. Las señales de control generadas por el controlador energizan un mecanismo de accionamiento eléctrico que mueve el brazo de robot en la dirección deseada. Las operaciones de control para controlar el brazo de robot pueden ser muy complejas. No obstante, es deseable tener una alta flexibilidad en el proceso de control. Por lo tanto, lo típico es usar controladores programables, es decir, controladores donde el control lógico se determina por un software que se denomina típicamente el programa de aplicación.
Hay vahos lenguajes de programación de tipo especial que se usan típicamente para programar controladores industriales. En particular, el estándar internacional IEC 61131 define varios lenguajes de programación. Estos lenguajes de programación son lenguajes de programación de nivel alto en términos de la presente invención, porque no dan lugar a un programa de código máquina que sea ejecutable en un controlador específico. Más bien, un programa escrito en uno de los lenguajes de programación de nivel alto tiene que ser traducido a un programa de código máquina de nivel inferior de manera que sea ejecutable en un controlador específico. El proceso de traducción puede incluir varias etapas incluyendo código de programa de nivel intermedio. Por motivos de simplicidad, el término "compilador" se usa aquí para cualquier tipo de traductor adecuado incluyendo traductores línea a línea (intérpretes) y otros tipos de traductores. Igualmente, el término "programa de código máquina" se usa aquí para cualquier código de programa de nivel inferior que sea el resultado de un proceso de traducción y que pueda ser ejecutado en un controlador o una máquina equivalente que sea capaz de proporcionar verdaderos datos
de sensor procedentes de un proceso o instalación controlado.
El uso de un lenguaje de programación de nivel alto facilita en gran medida el proceso de programar un controlador Industrial, porque el lenguaje de programación de nivel alto proporciona una pluralidad de instrucciones de control de nivel alto que permiten al programador centrarse en el problema de control y el control lógico más bien que en la ¡mplementaclón práctica en un hardware específico de un controlador. Consiguientemente, los lenguajes de programación de nivel alto se usan ampliamente.
No obstante, los programas de control para modernas aplicaciones de control altamente automatizadas pueden ser muy complejos, y a menudo es difícil identificar errores de programación. Por lo tanto, es común usar herramientas de depuración. Una herramienta de depuración o depurador es un programa de ordenador especial que se usa en el proceso de hallar errores de programación en otros programas, tal como el programa de aplicación. Típicamente, una herramienta de depuración permite ejecutar el programa de aplicación, que ha de ser depurado, en un modo de paso a paso (paso único) y/o con lo que se denomina puntos de interrupción. Un punto de interrupción es una orden de parada especial no usada en el transcurso normal del programa de aplicación, orden de parada que permite parar y pausar el programa de aplicación bajo examen en el punto de interrupción de modo que el programador pueda comprobar el estado logrado por el programa de aplicación en dicho punto de interrupción con tiempo suficiente.
EP 1 870 787 A1 antes citada describe un método para supervisar un programa de control cíclico que se ejecuta en un controlador de máquina. Una herramienta de depuración que se ejecuta en un dispositivo de programación genera una petición de supervisión que es transmitida al controlador de máquina. El controlador de máquina registra datos en respuesta a la petición de supervisión y devuelve los datos registrados al dispositivo de programación. Para que sea capaz de detectar datos que solamente son manipulados raras veces, el controlador de máquina registra no solamente los datos asociados con una operación de control específica, sino que también incrementa un contador. Como resultado, el usuario puede analizar los datos proporcionados desde el controlador de máquina según el contador respectivo.
EP 1 119 801 B1 describe un protocolo para supervisar la ejecución de código máquina en un controlador industrial. En una herramienta de depuración, las variables (direcciones de datos) son seleccionadas y asociadas a elementos de código. La información combinada es enviada al controlador antes de comenzar el programa. Una vez que el programa ha sido lanzado y uno de los elementos de código definidos es ejecutado, los valores de las variables asociadas son almacenados y transferidos de nuevo a la herramienta de depuración. La información es utilizada entonces para volver a enlazar los valores de las variables a los segmentos correspondientes en el código de programa de nivel alto.
EP 1 184 758 A2 describe un acercamiento para depurar un programa de aplicación para un controlador industrial, donde un modo de paso único y/o un modo de punto de interrupción pueden ser usados no solamente al... [Seguir leyendo]
Reivindicaciones:
1. Un método de programar un controlador industrial (14) para controlar una instalación automatizada (10), incluyendo la instalación al menos un sensor (16, 20) para proporcionar datos de sensor que representan un estado real del sistema de la instalación y al menos un accionador (18, 24, 26) para actuar en el estado real del sistema, e Incluyendo el controlador (14) una memoria de datos (38) para almacenar los datos de sensor y una memoria de programa (36) para almacenar un programa de código máquina (38), Incluyendo el método los pasos de:
- proporcionar una herramienta de programación (30) que tiene un editor de programa (42), una herramienta de depuración (52) y un compilador (48),
- crear un programa de control de alto nivel (44) por medio del editor de programa (42), incluyendo el programa de control de alto nivel (44) una pluralidad de instrucciones de control de nivel alto (46),
- compilar el programa de control de alto nivel (44) por medio del compilador (48) con el fin de crear un programa de código máquina (38) incluyendo instrucciones de código máquina (40) para leer y procesar repetidas veces los datos de sensor,
- cargar el programa de código máquina (38) en la memoria de programa (36), y
- activar la herramienta de depuración (52) para depurar el programa de control de alto nivel (44), donde las instrucciones de control de nivel alto (46) se muestran en el editor de programa (42), donde el programa de código máquina (38) es ejecutado en el controlador (14) mientras la herramienta de depuración (52) es activada, caracterizado porque la herramienta de depuración (52) determina una relación inversa entre el código máquina (38) que se ejecuta en el controlador (14) y al menos una instrucción de control de nivel alto (46) mostrada en el editor de programa (42), leyendo la herramienta de depuración (52) los datos de sensor de la memoria de datos (38), asignando la herramienta de depuración (52) los datos de sensor de la memoria de datos (38) a la al menos única instrucción de control de nivel alto (46), enlazando por ello la al menos única instrucción de control de nivel alto a un estado real del sistema durante la ejecución del programa de código máquina (38), donde la herramienta de depuración (52) visualiza los datos de sensor en el editor de programa (42) en una posición próxima a la instrucción de programa de nivel alto (46) y la herramienta de depuración incluye una base de datos (58) incluyendo una pluralidad de símbolos gráficos (74, 76) de los que cada uno ilustra uno de una pluralidad de estados predefinidos del sistema de la instalación (10), presentando la herramienta de depuración (52) uno de la pluralidad de símbolos gráficos (74, 76) en la posición próxima a la instrucción de programa de nivel alto (46) en función de los datos de sensor asignados.
2. El método de la reivindicación 1, donde la herramienta de depuración (52) lee repetidas veces los datos de sensor de la memoria de datos (38), mientras el programa de código máquina (38) es ejecutado en el controlador (14).
3. El método de la reivindicación 1 o 2, donde el programa de código máquina (38) es ejecutado en el controlador en
tiempo real.
4. El método de una de las reivindicaciones 1 a 3, donde una historia (55) de datos de sensor es leída de la memoria de datos (38) y asignada a la al menos única instrucción de control de nivel alto (46).
5. El método de una de las reivindicaciones 1 a 4, donde la herramienta de depuración (52) lee los datos de sensor de la memoria de datos (38) y los asigna a la al menos única instrucción de control de nivel alto (46) en función de una condición de disparo predefinida (57).
6. El método de la reivindicación 1 o 2, donde el programa de código máquina (38) es ejecutado en el controlador (14) en forma de paso a paso.
7. El método de una de las reivindicaciones 1 a 6, donde el programa de control de alto nivel (44) incluye una pluralidad de instrucciones de control de nivel alto (46) en un orden secuencial que corresponde a una secuencia temporal durante la ejecución del programa de código máquina (38), asignando la herramienta de depuración (52) los datos de sensor desde la memoria de datos (38) a la al menos única instrucción de control de nivel alto (46) según la secuencia temporal.
8. El método de una de las reivindicaciones 1 a 7, donde se selecciona un número limitado de instrucciones de control de nivel alto (46) a partir de la pluralidad de instrucciones de control de nivel alto (46), y donde la herramienta de depuración (52) determina la relación inversa entre el código máquina (38) que se ejecuta en el controlador (14) y las instrucciones de control de nivel alto (46) para el número limitado solamente.
9. El método de una de las reivindicaciones 1 a 8, donde la al menos única instrucción de control de nivel alto (46) incluye una variable de programa de nivel alto (68), asignando la herramienta de depuración (52) los datos de sensor procedentes de la memoria de datos (38) a la variable de programa de nivel alto (68).
10. El método de una de las reivindicaciones 1 a 9, donde la al menos única instrucción de control de nivel alto (46) se refiere a una pluralidad de datos de sensor procedentes de la memoria de datos (38), donde la herramienta de depuración (52) determina una variable de datos compleja (74) a partir de la pluralidad de datos de sensor, representando la variable de datos compleja un estado del sistema de nivel más alto de la instalación (10), y donde la herramienta de depuración asigna la variable de datos compleja a la instrucción de control de nivel alto (46).
11. Un programa de ordenador incluyendo código de programa configurado para llevar a la práctica un método según una de las reivindicaciones 1 a 10 con todos los pasos del método, cuando el código de programa es ejecutado en un ordenador que actúa como una herramienta de programación para programar un controlador industrial para controlar una instalación automatizada.
12. Un dispositivo para programar un controlador industrial (14) de una instalación automatizada (10), incluyendo la instalación (10) al menos un sensor (16, 20) para proporcionar datos de sensor que representan un estado real del sistema de la instalación (10) y al menos un accionador (18, 24, 26) para actuar en el estado real del sistema, e incluyendo el controlador (14) una memoria de datos (38) para almacenar los datos de sensor y una memoria de programa (36) para almacenar un programa de código máquina (38), incluyendo el dispositivo
- un editor de programa (42) para crear un programa de control de alto nivel (44), incluyendo el programa de control de alto nivel (44) una pluralidad de instrucciones de control de nivel alto (46),
- un compilador para compilar el programa de control de alto nivel (44) con el fin de crear un programa de código máquina (38) incluyendo instrucciones de código máquina (40) para leer y procesar repetidas veces los datos de
sensor,
- una interfaz (50) para cargar el programa de código máquina (38) en la memoria de programa (36) del controlador
(14), y
- una herramienta de depuración (52) para depurar el programa de control de alto nivel (44), donde las instrucciones de control de nivel alto (46) se muestran en el editor de programa (42),
caracterizado porque la herramienta de depuración (52) está configurada para iniciar la ejecución del programa de código máquina (38) en el controlador (14), la herramienta de depuración (52) está configurada para determinar una relación inversa entre el código máquina (38) que se ejecuta en el controlador (14) y al menos una instrucción de control de nivel alto (46) mostrada en el editor de programa (42), la herramienta de depuración (52) está configurada además para leer los datos de sensor de la memoria de datos (38), la herramienta de depuración (52) está configurada para asignar los datos de sensor desde la memoria de datos (38) a la al menos única instrucción de control de nivel alto (46), enlazando por ello la al menos única instrucción de control de nivel alto (46) con un estado real del sistema durante la ejecución del programa de código máquina (38), la herramienta de depuración (52) está configurada para visualizar los datos de sensor en el editor de programa (42) en una posición próxima a la instrucción de programa de nivel alto (46), y la herramienta de depuración incluye una base de datos (58) incluyendo una pluralidad de símbolos gráficos (74, 76) de los que cada uno ilustra uno de una pluralidad de estados predefinidos del sistema de la instalación (10), visualizando la herramienta de depuración (52) uno de la pluralidad de símbolos gráficos (74, 76) en la posición próxima a la instrucción de programa de nivel alto (46) en función de los datos de sensor asignados.
Patentes similares o relacionadas:
Dispositivo y método para la transmisión de datos, del 10 de Junio de 2020, de DR. JOHANNES HEIDENHAIN GMBH: Dispositivo para la transmisión de datos con una interfaz de aparato de medición , una interfaz de control y una interfaz adicional […]
Sistema de extensión de la red PLC, del 22 de Abril de 2020, de LSIS Co., Ltd: Un sistema de extensión de red de PLC, Controlador Lógico Programable, que incluye una base básica y una pluralidad de bases de extensión (200-1, 200-2,..., […]
Controlador lógico programable, del 22 de Abril de 2020, de LSIS Co., Ltd: Un controlador lógico programable, PLC, que tiene una pluralidad de módulos de comunicación, el PLC que comprende: un módulo de control que se […]
Sistema PLC con servidor web y memoria particionada, del 22 de Enero de 2020, de LSIS Co., Ltd: Un sistema de controlador lógico programable (PLC) conectado a una tarjeta de memoria , que comprende: un sistema de archivos configurado para dividir […]
Método para depurar un programa PLC, del 25 de Diciembre de 2019, de LSIS Co., Ltd: Un método para usar un microprocesador de propósito general para depurar un controlador lógico programable, PLC, el método comprende: recibir en una unidad de procesamiento […]
Aparato para la gestión de programas de controlador lógico programable, del 27 de Noviembre de 2019, de LSIS Co., Ltd: Un aparato para la gestión de programas de PLC, controlador lógico programable, el aparato que comprende: un medio de compilación configurado […]
Método de compilación óptima de un comando de PLC, del 27 de Noviembre de 2019, de LSIS Co., Ltd: Un método para compilar un comando de PLC, controlador lógico programable, el método que comprende: elegir un esquema de procesamiento de compilación de una pluralidad […]
Módulo de entrada analógica HART con una etapa de entrada diferencial, del 13 de Noviembre de 2019, de LSIS Co., Ltd: Transductor remoto direccionable de alta velocidad, módulo de entrada analógica HART con una etapa de entrada diferencial, el módulo […]