Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR OPTIMISED REMOTE MANAGEMENT OF PROGRAMMABLE LOGIC CONTROLLERS
Document Type and Number:
WIPO Patent Application WO/2018/115549
Kind Code:
A1
Abstract:
Various aspects of the invention implement a mobile application which, once installed in an electronic device with wireless communication, allows remote management of PLCs, from the installation of a new program, reprogramming of an existing PLC, and testing and monitoring of the PLC, facilitating remote error resolution by a specialist. The mobile application can connect with a maintenance computer, making it possible to carry out complex operations for reprogramming of the PLC, or for remote, wireless problem resolution by a professional technician.

Inventors:
PONT ALBIOL JOSEP (ES)
VÁZQUEZ GALLEGO FRANCISCO MANUEL (ES)
CALERO SCANLAN DAVID (ES)
ALONSO ZÁRATE JESÚS (ES)
Application Number:
PCT/ES2017/070803
Publication Date:
June 28, 2018
Filing Date:
December 09, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MACHINE TO SMARTPHONE S L U (ES)
International Classes:
G06Q10/00; G05B15/02; G05B19/05; H04L12/24
Domestic Patent References:
WO2015078844A12015-06-04
WO2015140908A12015-09-24
Foreign References:
US6718177B12004-04-06
KR20130111807A2013-10-11
Other References:
See also references of EP 3561741A4
Attorney, Agent or Firm:
MOHAMMADIAN SANTANDER, Dario (ES)
Download PDF:
Claims:
Un aparato remoto en un dispositivo electrónico móvil para facilitar la gestión remota de un controlador de lógica programabie, PLC, de al menos una máquina a controlar, comprendiendo el aparato remoto: medios de intercambio de datos con un controlador de lógica programabie, PLC, mediante un protocolo de comunicaciones inalámbricas del dispositivo electrónico móvil; y

medios de pasarela remota configurados para acceder al PLC permitiendo la modificación del programa del PLC.

El aparato de la reivindicación 1 , en el que los medios de pasarela remota están configurados para acceder a la memoria de datos del PLC permitiendo la lectura de variables.

El aparato de la reivindicación 2, en el que los medios de pasarela remota están configurados para acceder a la memoria de programa del PLC permitiendo la modificación de las instrucciones de programa.

El aparato de la reivindicación 3, en el que los medios de pasarela remota están configurados para introducir puntos de interrupción en el programa para facilitar la resolución de problemas.

El aparato de la reivindicación 2, comprendiendo adicionalmente medios de intercambio de datos con un ordenador de mantenimiento mediante un protocolo de comunicaciones inalámbricas del dispositivo electrónico móvil.

El aparato de la reivindicación 5, en el que los medios de pasarela remota comprenden adicionalmente medios de inicio de sesión y medios de gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones.

HOJA DE REEMPLAZO (REGLA 26) El aparato de la reivindicación 5, en el que el los medios de pasarela remota comprenden medios de control para procesar los datos a enviar o a recibir, comprendiendo compresión o descompresión, codificación o decodificación, encapsulación o des-encapsulación, modulación o demodulación.

Un aparato según cualquiera de las reivindicaciones anteriores, en el que el protocolo de comunicaciones inalámbricas puede ser de corto alcance, como por ejemplo, el WiFi o Bluetooth, o puede ser de largo alcance, como por ejemplo, de red celular o WiMax.

Un aparato de gestión en un ordenador de mantenimiento para la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar, comprendiendo el aparato de gestión: medios de intercambio de datos con un dispositivo electrónico móvil; y medios de pasarela de gestión configurados para procesar los datos intercambiados con el dispositivo electrónico móvil permitiendo la modificación del programa del PLC.

El aparato de la reivindicación 9, en el que los medios de gestión comprenden adicionalmente medios de inicio de sesión y medios de gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones.

El aparato de la reivindicación 9, en el que el los medios de gestión comprenden medios de control para procesar los datos a enviar o a recibir, comprendiendo compresión o descompresión, codificación o decodificación, encapsulación o des-encapsulación, modulación o demodulación.

El aparato de la reivindicación 9, en el que los medios de gestión comprenden medios de establecimiento de una red privada virtual, VPN, entre el aparato de gestión y el aparato remoto.

HOJA DE REEMPLAZO (REGLA 26) Un procedimiento en un aparato remoto de un dispositivo electrónico móvil para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar, comprendiendo el procedimiento: intercambiar datos con un controlador de lógica programable, PLC, mediante un protocolo inalámbrico de comunicaciones; y

acceder a la memoria de programa del PLC permitiendo la modificación de las instrucciones de programa.

El procedimiento de la reivindicación 13, en el que acceder a la memoria de programa del PLC comprende acceder a la memoria de datos del PLC permitiendo la lectura de variables.

El procedimiento de la reivindicación 14, en el que acceder a la memoria de programa del PLC comprende acceder a la memoria de programa del PLC permitiendo la modificación de las instrucciones de programa.

El procedimiento de la reivindicación 15, en el que la modificación de las instrucciones de programa comprende introducir puntos de interrupción en el programa para facilitar la resolución de problemas.

El procedimiento de la reivindicación 14, comprendiendo adicionalmente intercambiar datos con un ordenador de mantenimiento mediante un protocolo de comunicaciones inalámbricas del dispositivo electrónico móvil.

El procedimiento de la reivindicación 17, comprendiendo adicionalmente inicio de sesión y gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones.

El procedimiento de la reivindicación 17, comprendiendo adicionalmente procesar los datos a enviar o a recibir, comprendiendo compresión o

HOJA DE REEMPLAZO (REGLA 26) descompresión, codificación o decodificación, encapsulación o des- encapsulación, modulación o demodulación.

20. El procedimiento según cualquiera de las reivindicaciones anteriores, en el que el protocolo de comunicaciones inalámbricas puede ser de corto alcance, como por ejemplo, el WiFi o Bluetooth, o puede ser de largo alcance, como por ejemplo, de red celular o WiMax.

21 . Un procedimiento en un aparato de gestión de un ordenador de mantenimiento para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar, comprendiendo el procedimiento:

intercambiar datos con un dispositivo electrónico móvil; y

procesar los datos intercambiados permitiendo la modificación de las instrucciones de programa del PLC.

22. El procedimiento de la reivindicación 21 , comprendiendo adicionalmente inicio de sesión y gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones.

23. El procedimiento de la reivindicación 21 , comprendiendo adicionalmente procesar los datos a enviar o a recibir, comprendiendo compresión o descompresión, codificación o decodificación, encapsulación o des- encapsulación, modulación o demodulación.

24. El procedimiento de la reivindicación 21 , comprendiendo adicionalmente el establecimiento de una red privada virtual, VPN, entre el aparato de gestión y el aparato remoto. 25. Un sistema para la gestión remota de controladores de lógica programable, PLC, en el que el sistema comprende al menos un PLC de al menos una máquina a controlar, y al menos un dispositivo electrónico móvil conectado al al menos un PLC, en el que el al menos un

HOJA DE REEMPLAZO (REGLA 26) dispositivo electrónico móvil comprende un aparato remoto según cualquiera de las reivindicaciones 1 al 8.

El sistema de la reivindicación 25, comprendiendo adicionalmente al menos un ordenador de mantenimiento conectado al PLC mediante el al menos un dispositivo electrónico móvil, en el que el al menos un ordenador de mantenimiento comprende un aparato de gestión según cualquiera de las reivindicaciones 9 al 12.

El sistema de la reivindicación 25, comprendiendo adicionalmente un servidor de credenciales para autenticar al usuario del dispositivo electrónico móvil.

Un procedimiento de gestión remota de controladores de lógica programable, PLC, en un sistema que comprende al menos un PLC de al menos una máquina a controlar, y al menos un dispositivo electrónico móvil conectado al al menos un PLC, en el que el procedimiento llevado a cabo por el al menos un dispositivo electrónico móvil es según cualquiera de las reivindicaciones 13 al 20.

El procedimiento de la reivindicación 28, comprendiendo adicionalmente al menos un ordenador de mantenimiento conectado al PLC mediante el al menos un dispositivo electrónico móvil, en el que el procedimiento llevado a cabo por el al menos un ordenador de mantenimiento es según cualquiera de las reivindicaciones 21 al 24.

El procedimiento de la reivindicación 28, comprendiendo adicionalmente autenticar al usuario del dispositivo electrónico móvil.

Un programa de ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un dispositivo electrónico móvil, para llevar a cabo un procedimiento según cualquiera de las reivindicaciones 13 al 20.

HOJA DE REEMPLAZO (REGLA 26) Un programa de ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un ordenador de mantenimiento, para llevar a cabo un procedimiento según cualquiera de las reivindicaciones 21 al 24.

Un medio legible por ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un dispositivo electrónico móvil, para llevar a cabo un procedimiento según cualquiera de las reivindicaciones 13 al 20.

Un medio legible por ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un ordenador de mantenimiento, para llevar a cabo un procedimiento según cualquiera de las reivindicaciones 21 al 24.

HOJA DE REEMPLAZO (REGLA 26)

Description:
METODO Y APARATOS PARA LA GESTION REMOTA OPTIMIZADA DE CONTROLADORES LÓGICOS PROGRAMABLES

CAMPO TÉCNICO

[001] La invención se refiere generalmente al campo de las comunicaciones, y en particular, a mejorar la gestión remota de controladores lógicos programables mediante una aplicación móvil.

ESTADO DE LA TÉCNICA

[002] Los controladores lógicos programables ("programmable logic controllers" , en adelante PLC, por sus siglas en inglés), son dispositivos electrónicos cuya función principal es controlar a autómatas, o máquinas, o robots, u a otros dispositivos electrónicos o mecánicos. Estas máquinas suelen desempeñar funciones repetitivas, y ejemplos típicos son las máquinas en las fábricas, o los ascensores en los edificios, o semáforos en la ciudad. No obstante, también pueden ser máquinas que no desempeñan necesanamente movimientos o funciones repetitivas, sino puntuales.

[003] El PLC, como dispositivo digital electrónico, comprende típicamente al menos una memoria programable para el almacenamiento de instrucciones, permitiendo la implementación de funciones específicas que tienen el objetivo de controlar máquinas y procesos. También comprende un microprocesador, o CPU (las siglas del inglés "central processing unif), capaz de realizar tanto funciones aritméticas como funciones lógicas de control. Se encarga de ejecutar la secuencia programada de instrucciones y administrar la comunicación entre los distintos elementos del sistema. La comunicación con el exterior se lleva a cabo mediante los puertos de entrada y salida. Los puertos de entrada permiten la conexión de dispositivos de entrada tales como sensores o interruptores que permiten conocer y determinar el estado de los inputs, o señales de entrada, del sistema. Los puertos de salida permiten la conexión de actuadores como motores, válvulas, indicadores acústicos o luminosos, entre otros dispositivos de salida con los que se puede actuar sobre el sistema que se precisa controlar mediante el PLC. La comunicación entre estos distintos elementos se lleva a cabo mediante el sistema de comunicación interno, o bus/es de comunicación. De esta forma, los distintos elementos que conforman la arquitectura interna de un PLC intercambian información para poder desarrollar su objetivo.

[004] Los PLCs se sitúan normalmente en la proximidad de la máquina, o máquinas, a controlar, mediante un cableado fijo. Antes de la primera puesta en marcha de la máquina, en una fase de instalación, se carga el programa de instrucciones al PLC que vaya a operar una máquina particular. Después de la carga del programa, empieza la fase de operación de la máquina. Es decir, el PLC ejecuta las instrucciones del programa para controlar el funcionamiento de la máquina mediante la activación/desactivación de señales de salida, y lectura de datos de sensores que llegan por las señales de entrada, y según sea el algoritmo programado, volver a generar nuevas instrucciones en otras señales de salida, para monitorizar o corregir el funcionamiento de la máquina.

[005] Como las máquinas con su PLC correspondiente tradicionalmente no se mueven, los PLCs comprendían diseños hechos a la medida para esas máquinas en cuestión. Como un ejemplo, en fábricas industriales, las máquinas y los PLCs se instalaban y no se movían en décadas. Por tanto, los PLCs convencionales tienen diseños hechos a la medida para estas situaciones. En cambio, cada vez más se están instalando PLCs para controlar maquinaria móvil, como pueden ser las máquinas agrícolas. Estas máquinas operan mediante una mezcla de funciones que se ejecutan de forma periódica y funciones que se llevan a cabo puntualmente. Dada su movilidad, estas máquinas llevan incorporados PLCs para controlar su funcionamiento.

[006] Las máquinas móviles tienen la desventaja de que no pueden estar conectadas mediante cableado fijo a una red de comunicaciones. Esta comunicación es necesaria no sólo para descargar programas nuevos, o actualizar programas existentes, sino también para monitorizar el funcionamiento correcto de la máquina, y resolver posibles problemas informáticos. Cada vez más hace falta una comunicación directa con el PLC para la resolución de problemas informáticos, ya sea de programación o ejecución, cuando ocurre un fallo, y la máquina se encuentra en campo, lejos de la central donde se encuentran los operadores, o especialistas en la resolución de estos problemas informáticos. Actualmente, no existen soluciones flexibles y económicas a esta problemática.

[007] Por tanto, cuando la máquina es móvil, y no tiene una conexión cableada, se pierde la posibilidad de mantener una comunicación constante con ellas. Mientras los PLCs se pueden instalar en la misma máquina móvil, y por tanto continuar con sus tareas de gestión, control y monitorización de la máquina, el problema de la conectividad sigue existiendo, ya que el PLC también necesita programarse, recibir actualizaciones de programas, o instalación de programas nuevos, según la función a desempeñar por la máquina.

[008] Existen PLCs con enrutadores ("routers" en inglés)integrados de comunicaciones por cable, que permiten a los PLCs comunicarse con ordenadores centrales de mantenimiento, que de forma remota cableada se conectan a los PLCs para intercambiar datos. Estas soluciones son muy costosas y poco flexibles ya que están diseñadas para un solo PLC, o pocos PLCs. Por una parte, hay que instalar y configurar un enrutador, por ejemplo, del tipo Ethernet, a la red de comunicaciones donde se encuentra el PLC. Aparte, este enrutador, y el pago de la cuota correspondiente de uso de ancho de banda de datos, es poco óptimo, ya que son costes fijos para acciones de intercambio de datos muy puntuales. Además, para máquinas pequeñas de bajo coste, no sale rentable llevar a cabo una instalación costosa, por tanto, estas máquinas se dejan sin comunicación. No obstante, igualmente son máquinas importantes y necesitan de una gestión remota de su PLC. Finalmente, mientras estos PLCs con enrutador se pueden comunicar, siguen estando fijados a una red de comunicaciones local mediante cableado, no permitiendo su uso a maquinaria móvil.

[009] De la misma forma, existen PLCs con servidores HTTP integrados, que permiten a un usuario tener una visibilidad sobre aspectos básicos del PLC para monitorizar su estado, como si está en funcionamiento o no. Por otra parte, sólo permiten tener una visualización de los parámetros de funcionamiento básicos del PLC. Como estas soluciones son interfaces gráficas usando el protocolo HTTP para visualizar mediante una página de un navegador esta información, carecen de la capacidad de llevar a cabo funciones más complejas.

[0010] Para intentar solventar el problema del cableado fijo que no permite tener las mismas funcionalidades de un PLC una vez que es móvil, se han propuesto el uso de PLCs comprendiendo un módulo de comunicaciones inalámbricas, que usa directamente la red celular de comunicaciones. Esto en principio permite tener comunicación con la máquina incluso en campo, mientras exista una cobertura de telefonía móvil. En cambio, estos sistemas tienen una instalación compleja, y por tanto costosa. Por una parte, se tiene que configurar la tarjeta SIM (de las siglas en inglés de "Subscriber Identity Module") del módulo de comunicaciones de antemano, para que al conectarlo con la máquina en campo, ya tenga una subscripción funcional. Ya que la línea de datos pertenecerá al propietario de la máquina, no será posible hacer ningún tipo de testeo sobre el PLC, ya que hasta que no se instala el PLC, y en campo, no se puede configurar la tarjeta SIM. Es decir, esta solución es inflexible ya que no permite que los fabricantes de PLC puedan comprobar el funcionamiento del producto antes de venderlo.

[0011] Por otra parte, se han propuesto usar redes inalámbricas usando protocolos de corto alcance, como el WiFi o Bluetooth. Éstas permiten la comunicación inalámbrica a un enrutador que actúa como un punto de acceso a Internet. El inconveniente de esta propuesta es que tienen una cobertura muy limitada a una distancia máxima determinada por el punto de acceso. Además, esta solución sustituye a la red cableada, pero no ofrece soluciones a los demás problemas causados por la movilidad del PLC, como lejanía del técnico de mantenimiento, imposibilidad de instalar programas o reprogramar PLCs, o la resolución de problemas de un PLC parado.

[0012] Todas estas soluciones tienen en común que intentan conectar un PLC remoto mediante módulos integrados inflexibles y de instalación costosa. Una vez conectados a la red de comunicaciones externa, por ejemplo Internet, lo que permiten es visualizar el estado del PLC, pero no existe ninguna solución que permita llevar a cabo todas las etapas desde que se va a instalar un PLC nuevo a una máquina, hasta que esté completamente operativa. Es decir, no existe una solución que permita la instalación de un programa nuevo, o la actualización de un programa existente, a un PLC de una máquina remota, de forma inalámbrica, económica y de configuración simple.

[0013] Tampoco existe la posibilidad de programar un PLC existente usando su propio lenguaje de programación por otras vías que no sean las ofrecidas de forma cerrada por el propio fabricante con sus módulos integrados desde fábrica. Las soluciones que permiten la reprogramación son soluciones hechas a la medida, en las que no se tiene acceso al programa firmware del fabricante, sino se permite modificar ciertos parámetros visibles mediante interfaces gráficas por páginas de Internet. Al modificar estos parámetros, se cambia el comportamiento de la máquina de forma muy limitada, pero no se permite tener acceso al programa original del PLC para modificarlo usando su propio idioma de programación de cualquier forma que se requiera por el usuario de la máquina. Con lo cual, estas soluciones son soluciones llave en mano, hechas a medida, y ofrecen el sistema completo, siendo su instalación lenta y costosa, y careciendo de flexibilidad, limitando la libertad de operación del usuario de la máquina a la hora de reprogramar el PLC.

[0014] Por tanto, actualmente, no existen soluciones viables para permitir la gestión flexible, abierta y económica de PLCs existentes de cualquier fabricante de forma remota e inalámbrica. Por tanto, existe la necesidad de resolver de forma efectiva estos problemas descritos.

RESUMEN

[0015] Es un objeto de la invención proporcionar soluciones a los problemas descritos. En particular, es un objeto de la invención proporcionar una aplicación de pasarela para permitir la gestión flexible, abierta y económica de PLCs existentes de cualquier fabricante de forma remota e inalámbrica.

[0016] Entre otras características, los problemas varios se resuelven parcialmente o completamente proporcionando una aplicación móvil, que una vez instalada en un dispositivo electrónico con comunicación inalámbrica, permite la gestión remota de PLCs, desde la instalación de un nuevo programa, como la reprogramación de un PLC existente, como el testeo y monitorización del PLC, facilitando la resolución de errores por un especialista de forma remota. La aplicación móvil se conecta con un ordenador de mantenimiento, permitiendo llevar a cabo operaciones complejas de reprogramación del PLC, o la resolución de problemas informáticos, por un técnico profesional, de forma remota e inalámbrica.

[0017] Es un objeto de la invención proporcionar un aparato remoto en un dispositivo electrónico móvil para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar.

[0018] Es otro objeto de la invención proporcionar un procedimiento en un aparato remoto de un dispositivo electrónico móvil para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar.

[0019] Es un objeto de la invención proporcionar un aparato de gestión en un ordenador de mantenimiento para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar.

[0020] Es otro objeto de la invención proporcionar un procedimiento en un aparato de gestión en un ordenador de mantenimiento para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar.

[0021] Es otro objeto de la invención proporcionar un sistema, y procedimiento correspondiente, para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar.

[0022] Es otro objeto de la invención proporcionar un programa de ordenador que comprende instrucciones, una vez ejecutadas en un procesador, para llevar a cabo las etapas de un procedimiento en un aparato remoto de un dispositivo electrónico móvil.

[0023] Es otro objeto de la invención proporcionar un programa de ordenador que comprende instrucciones, una vez ejecutadas en un procesador, para llevar a cabo las etapas de un procedimiento en un aparato de gestión en un ordenador de mantenimiento.

[0024] Es otro objeto de la invención proporcionar un medio legible por ordenador que comprende instrucciones, una vez ejecutadas en un procesador, para llevar a cabo las etapas de un procedimiento en un aparato remoto de un dispositivo electrónico móvil.

[0025] Es otro objeto de la invención proporcionar un medio legible por ordenador que comprende instrucciones, una vez ejecutadas en un procesador, para llevar a cabo las etapas de un procedimiento en un aparato de gestión en un ordenador de mantenimiento.

[0026] La invención proporciona métodos y dispositivos que implementan varios aspectos, realizaciones, y características de la invención, y que se implementan usando una variedad de medios. A modo de ejemplo, los medios pueden comprender hardware, software, firmware, o una combinación de ellas y estas técnicas se pueden implementar en cualquier una, o combinación de, los varios medios.

[0027] Para una implementación hardware, los varios medios pueden comprender unidades de procesamiento que se implementan usando uno o más circuitos integrados de aplicación específica (ASIC), procesadores de señales digitales (DSP), dispositivos de procesamiento de señal digital (DSPD), dispositivos de lógica programable (PLD), field programmable gate arrays (FPGA), procesadores, controladores, micro-controladores, micro- procesadores, u otros elementos electrónicos, o combinación de ellos, diseñados para llevar a cabo la(s) funciones descritas, o una combinación de las mismas.

[0028] Para una implementación software, los medios pueden comprender módulos (por ejemplo, procedimientos, funciones, y demás) que lleven a cabo las funciones descritas. El código de programa se puede almacenar en un elemento de memoria y ser ejecutados por un procesador. El elemento de memoria se puede integrar dentro del procesador o externo a él.

[0029] Se describen varios aspectos, configuraciones, y realizaciones del invento. En particular, la invención proporciona procedimientos, aparatos, sistemas, procesadores, código de programa, y otros aparatos y elementos que implementan y llevan a cabo los distintos aspectos, configuraciones y características del invento tal como descritas en lo siguiente.

BREVE DESCRIPCIÓN DE LOS DIBUJOS

[0030] Las características y ventajas derivadas de la invención descritas en la descripción se harán más aparentes de la descripción detallada junto con los dibujos en la que números de referencia ¡guales identifican elementos correspondientes en los distintos dibujos. Elementos correspondientes también se pueden identificar usando referencias distintas. [0031] La FIG. 1 muestra un sistema para facilitar la gestión de PLCs remotos.

[0032] La FIG. 2 muestra los módulos de la aplicación pasarela del sistema para facilitar la gestión de PLCs.

[0033] La FIG. 3 muestra la pasarela remota.

[0034] La FIG. 4 muestra un aspecto de la aplicación pasarela comprendiendo un servidor de credenciales.

[003S] La FIG. 5 muestra otro aspecto de la pasarela remota.

[0036] La FIG. 6 muestra los estados del enrutado de paquetes de la pasarela remota.

[0037] La FIG. 7 muestra el estado de las conexiones de la pasarela remota.

[0038] Las FIGs. 8A a 8C muestran distintas configuraciones de memorias de PLC.

DESCRIPCIÓN DETALLADA DE LA INVENCIÓN

[0039] La FIG. 1 muestra un sistema para facilitar la gestión de PLCs según una realización de la invención. El sistema 100 comprende una máquina remota 1 14 a controlar por un PLC 1 12. En lo siguiente, para facilitar la comprensión, se hace referencia a una máquina remota 1 10 que engloba todos los componentes del sub-sistema remoto al que hace falta dotarle de conectividad inalámbrica. Por tanto, la máquina remota 1 10 comprende la misma maquinaria móvil 1 14, por ejemplo, la maquinaria agrícola, y también comprende los sensores y actuadores que están conectados al PLC que controla alguna funcionalidad de la maquinaria agrícola, usando los sensores pare recibir datos de entrada, y emitiendo datos de salida a los actuadores para que lleven a cabo la acción programada.

[0040] Todas las funcionalidades llevadas a cabo por el PLC 1 12 pueden ser visualizadas, monitorizadas, y programadas por un ordenador de mantenimiento 160. El ordenador de mantenimiento se puede encontrar en las mismas instalaciones que la máquina remota 1 10, puede encontrarse en una oficina cerca de la misma, o puede estar muy lejos, incluso en otro país. La máquina remota se conecta con el ordenador de mantenimiento a través de un dispositivo electrónico móvil 130 que tiene conectividad inalámbrica. En el ejemplo de la FIG. 1 , la máquina PLC se conecta mediante un interfaz inalámbrico 120, por ejemplo, Ethernet/WiFi, usando un protocolo 125 de comunicaciones inalámbricas al dispositivo móvil 130. Dadas las circunstancias del trabajo en campo, en un aspecto el protocolo de comunicaciones inalámbricas es de corto alcance (como el WiFi, Bluetooth, o similar), aunque en otro aspecto, lo puede ser también de largo alcance (red celular, WiMax, o similar). Por su parte, el dispositivo móvil intercambia información con el ordenador de mantenimiento mediante una red de comunicaciones que puede comprender la red celular móvil 140 y/o Internet 150, usando otro protocolo de comunicaciones de largo alcance 145. El experto en la materia entiende que otras opciones son posibles, como por ejemplo, que en vez de Internet, se use una red de comunicaciones particular, o que en vez de la red celular, se use una combinación de redes de comunicación, por ejemplo, otras redes WiFi, o WiMax, o similar, mientras que la conectividad se complete desde el PLC hasta el ordenador de mantenimiento.

[0041] En un aspecto, el ordenador de mantenimiento comprende un servidor de red privada virtual, VPN (de las siglas en inglés de " Virtual Prívate NetworK') para establecer la conexión VPN entre el dispositivo móvil, que actúa como cliente VPN, y el ordenador de mantenimiento. De esta forma se asegura la segundad y confidencialidad en las comunicaciones, ofreciendo una solución más segura para maquinaria de alto riesgo o con gran valor económico para el usuario.

[0042] El dispositivo móvil 130 puede ser cualquier dispositivo electrónico que tenga este tipo de conectividad ya sea de corto o largo alcance, y además un interfaz de usuario permitiendo interactuar con el mismo. Dispositivos típicos existentes pueden ser los conocidos como teléfonos inteligentes {"smartphones"), tabletas, portátiles, o similares. El dispositivo móvil 130 y el ordenador de mantenimiento 160 comprenden una aplicación pasarela {"gateway" en inglés) que lleva a cabo la doble función de permitir conectarse de forma remota e inalámbrica con el PLC de la máquina remota, y además cargar y modificar el mismo programa del PLC, sea cual sea su fabricante.

[0043] La pasarela puede encontrarse ya pre-instalada en el dispositivo móvil, o se puede instalar a posteriori en cualquier dispositivo móvil. En este ejemplo, la pasarela es una aplicación móvil a instalar en el dispositivo móvil. Una vez instalada, al ejecutarse, la aplicación móvil abre una canal de comunicación con el PLC y otro con el ordenador de mantenimiento. En otro aspecto, la aplicación pasarela puede operar sin necesariamente estar conectado con el ordenador de mantenimiento, es decir, si el dispositivo móvil comprende el interfaz de gestión, puede llevar a cabo todas las funcionalidades de la pasarela por sí sola. El ordenador de mantenimiento permite toda o parte de la operativa de forma remota por otro técnico en caso de preferir esta implementación.

[0044] Por tanto, la solución expuesta permite instalar el programa autómata en cualquier PLC existente en máquinas remotas de forma inalámbrica por el operario PLC que puede encontrarse en otro país. Esto se lleva a cabo sin complejidad, ya que un operador local sólo necesita un dispositivo móvil que tenga instalada la aplicación móvil de pasarela. Esto permite dotar de conectividad al PLC sin necesidad de instalar un enrutador de fábrica en el mismo PLC especialmente configurada para esa red del PLC. Además, el ancho de banda usado es el genérico del dispositivo móvil, siendo utilizado solamente en la medida y en los momentos de intercambio de datos. Por tanto, ya no hace falta contratar una línea de datos sólo para dotar de conectividad a un PLC particular. Cuando se trata de parques, o instalaciones agrícolas, comprendiendo cientos de maquinarias industriales, esta diferencia redunda en una reducción de costes y complejidad muy significante. Además, esta solución permite conectar incluso las máquinas de bajo coste, permitiendo sacar provecho de la posibilidad de programar PLCs en cualquier tipo de máquina de campo. Adicionalmente, la aplicación de pasarela permite no sólo el intercambio de datos, sino también monitorizar programas en vivo, permitiendo modificar el programa o reprogramarlo, o solucionar problemas de forma remota. Esta funcionalidad existe tanto para PLCs con programas de fábrica, del mismo fabricante de PLCs, como PLCs genéricos, cuyos programas se cargan, instalan, y ejecutan usando la aplicación móvil de pasarela.

[0045] La FIG. 2 muestra en más detalle los módulos de la aplicación pasarela del sistema para facilitar la gestión de PLCs. En este caso los distintos elementos de la máquina remota 1 10 se detallan, el cual comprende un PLC 202, los puertos de entrada/salida 204, y los buses de comunicación 206 (por ejemplo, de tipo CAN, de las siglas en inglés "Controller Area NetworK'). El módulo inalámbrico 120 conecta la máquina remota 1 10 con el dispositivo móvil 130 mediante su módulo de comunicación 220. En este ejemplo este interfaz de comunicación funciona usando el protocolo TCP/IP para completar la comunicación a través de Internet 150 al ordenador de mantenimiento 160 a través de otro módulo de comunicación 220. Como puede verse, en este caso no se ha hecho uso de la red celular 140, si no se ha implementado una conexión directa con Internet mediante una conexión directa 145.

[0046] En este aspecto, la aplicación pasarela comprende dos componentes, o módulos. El primer módulo, la pasarela remota 230, se encuentra instalado en un aparato del dispositivo móvil 130, que se comunica con el segundo módulo, la pasarela de gestión 260, que se encuentra instalado en un aparato del ordenador de mantenimiento 160.

[0047] Por una parte la pasarela de gestión 260 implementa un protocolo de comunicaciones seguras con la pasarela remota 230, en caso necesario, y por otra parte hace de interfaz con el módulo de programación 265, que permite al técnico de mantenimiento llevar a cabo las funcionalidades de programación y monitorización del PLC de forma remota. Por tanto, entre otras funciones, la pasarela de gestión lleva a cabo las funciones de (i) habilitar el inicio de una sesión de comunicaciones con una pasarela remota y el PLC remotos, (¡i) informar sobre el estado del enlace de las comunicaciones entre el ordenador y el PLC, y (iii) cerrar e inhabilitar la sesión de comunicaciones con el PLC.

[0048] En otro aspecto, en caso de existir un módulo de programación 265 también en el dispositivo móvil, el técnico de mantenimiento puede llevar a cabo las funcionalidades de programación y monitorización del PLC de forma local, estando cerca de la máquina remota. En este aspecto, el ordenador de mantenimiento puede también estar conectado, o puede estar completamente desconectado, por ejemplo, en caso de fallar la conexión 145 por falta de cobertura o conectividad.

[0049] El canal de comunicación entre ambas pasarelas de gestión y remota (que pueden residir en un aspecto de la invención en el ordenador de mantenimiento y en el dispositivo móvil remoto respectivamente), puede abrirse como un canal convencional a través de Internet, o se puede establecer una red VPN para dotar a las comunicaciones de mayor privacidad y robustez contra ataques o intervenciones no autorizadas. En caso de una red VPN, existe el problema adicional que los dispositivos móviles no permiten implementar una red VPN para intercambiar datos del PLC entre la pasarela remota y la pasarela de gestión, mientras exista una conexión inalámbrica entre el PLC y el dispositivo móvil. Por tanto en otro aspecto de la invención se proporciona un protocolo de comunicaciones dirigido a solventar este problema, permitiendo por tanto un flujo de información entre el PLC y la aplicación pasarela además de una conexión inalámbrica con el dispositivo móvil.

[0050] Un PLC tiene hardware dedicado para el almacenamiento de la información requerida, que es la memoria del PLC que presenta distintos tipos en función de la información que deben de almacenar. Las FIGs. 8A a 8C muestran distintas configuraciones de memorias de PLC. A nivel funcional los PLC presentan dos tipos de almacenamiento. El primer tipo es la memoria de programa 820 que contiene la secuencia de instrucciones que debe ejecutar la CPU de forma secuencial y cíclica. La principal característica que debe presentar este tipo de memoria es que el acceso de lectura y escritura sea rápido. El segundo tipo es la memoria de datos 810, que también es conocida como la tabla de registros, o memoria de variables, ya que contiene los datos necesarios a los fines de la ejecución del programa. Es dónde se almacenan datos tales como el estado de los dispositivos de entrada y salida del sistema, cálculos derivados de las secuencias de programa implementados por la CPU, entre otros. Es la memoria capaz de guardar la información originada en el microprocesador.

[0051] La información de estas memorias se intercambian y comunican usando cuatro tipos de buses distintos. El bus de datos se utiliza por la CPU para enviar la información a los distintos elementos. La CPU manda la localización para acceder a la dirección de memoria deseada por el bus de direccionamiento. El bus de control se usa para el intercambio de señales relativas a acciones de control internas, y el bus de sistema es el encargado de gestionar la comunicación mediante la unidad de entrada/salida interna de la CPU y los puertos de entradas y salidas. [0052] El proceso de programación de un PLC consiste en la implementación de una secuencia de instrucciones, ya sean aritméticas de cálculos, como funciones lógicas, para conseguir que una vez se hayan programado se obtenga el resultado deseado de control. Se trata del proceso de creación de las órdenes que luego ejecutará el PLC. Normalmente es un proceso que se realiza mediante el software de programación que pone a disposición de los desabolladores el fabricante del PLC y se utilizan lenguajes de programación estandarizados por la norma IEC 61 131 -3. Ejemplos de este tipo de programas son LD - Ladder Diagram, ST - Structured Text, o SFC - Sequential Function Chart, entre otros. Tal como mencionado, el código de programación se almacena en la memoria de programa, mientras que las variables que usa el programa se almacenan en la memoria de datos.

[0053] Una vez instalado el programa en el PLC remoto, puede hacer falta reprogramar el PLC, para cambiar o modificar la función a desempeñar por la máquina. También es necesario poder resolver problemas de funcionamiento, por ejemplo errores, o parones inesperados, de forma eficaz y rápida, para el beneficio del usuario de las máquinas y de los PLCs. Esto necesita de una monitorización del PLC, y la habilidad de analizar y resolver los errores de programación que puedan existir. Este proceso de depuración ("debugging" en inglés), de un PLC permite, por una parte, visualizar el estado de las variables que son utilizadas por el programa de control, y por otra parte, también es el proceso que permite parar la ejecución de la secuencia de instrucciones de la CPU en un punto determinado y ejecutar las instrucciones paso a paso, permitiendo de esta forma tener un control sobre si la secuencia que se ha programado es la correcta y permite la detección de fallos en el proceso de programación. Una vez descubierto el problema, también permite modificar las instrucciones con el objetivo de solventar el problema para que no vuelva a repetirse. Tal como mencionado, esta capacidad de re-programación del programa PLC desde la pasarela remota del dispositivo electrónico móvil permite cambiar las instrucciones mismas del PLC, o dotar de más funcionalidad, al PLC que anteriormente, de forma rápida e inalámbrica, para el beneficio del usuario.

[0054] La pasarela remota comprende los medios necesarios para poder llevar a cabo todas las funcionalidades necesarias para permitir al ordenador de mantenimiento, no sólo la lectura y escritura de variables en la memoria de datos del PLC, pero también la lectura y escritura del código de programación de la memoria de programa. Esta funcionalidad dual permite no sólo fijar nuevos umbrales de tiempo o distancia para corregir cierto comportamiento, como el movimiento, de las máquinas, sino permite el control total del PLC, modificando cómo estas variables se van a tratar, permitiendo la reprogramación completa del PLC, de forma remota e inalámbrica. El proceso de escritura de la memoria del programa implica el cambio de la lógica de operaciones entre las variables del sistema.

[0055] También ventajosamente, en el momento de un fallo del PLC, y parón inesperado de la máquina, esta funcionalidad dual permite a un operario, de forma remota desde el ordenador de mantenimiento, tener acceso directamente al PLC, y usando las herramientas de depuración, buscar y resolver los problemas de programación para poner en marcha la máquina sin perder tiempo y con el mínimo de problemas para el usuano de la máquina. La posibilidad de llevar a cabo estas funciones permite reprogramar PLCs existentes con programas pre-instalados de fábrica, para dotarles de mayor funcionalidad, y resolver problemas con los programas actualizados, en caso de fallos a la hora de la reprogramación, que no supongan un coste y pérdida de tiempo para el usuario final de las máquinas. Por tanto, se permite realizar cambios de la secuencia de instrucciones que ejecuta la CPU sin la necesidad de parar la ejecución del programa, de forma en línea ("online" en inglés). Una de las ventajas es que no es necesario detener el funcionamiento de la máquina para realizar cambios en la secuencia lógica del programa, lo cual es muy ventajoso para el funcionamiento normal de la maquinaria agrícola o industrial. También, se permite la depuración del programa con la posibilidad de introducir puntos de interrupción ("breakpoints" en inglés), de esta forma se puede parar la ejecución del programa secuencial en un punto determinado, pudiendo de esta forma evaluar las condiciones del sistema en un instante concreto.

[0056] La FIG. 3 muestra la pasarela remota del dispositivo móvil según una realización de la invención. La pasarela remota 230 comprende medios 310 de modificación de memoria de programa PLC y medios 320 de modificación de memoria de datos PLC. En un ejemplo, ambos medios se conectan con las memorias correspondientes del PLC usando el módulo de comunicación 220. Los medios de control 330 procesan esta información para optimizar su transmisión a la pasarela de gestión. Este procesamiento puede comprender comprimir la información, y/o codificarla, encapsularla en caso de implementar un túnel a través de la red IP, o su envío a través de la red VPN, si se da el caso.

[0057] Al recibir esta información, la pasarela de gestión 260 en el ordenador de mantenimiento 160 lleva a cabo el procesamiento inverso (des- encapsulación, decodificación, descompresión, y demás), y proporciona la información de programa y la información de variables al módulo de programación 265 para generar una imagen fiel del programa y el estado actual del PLC y la máquina, permitiendo al usuario remoto descubrir el error, reprogramar, y poner en marcha el sistema sin atrasos. Tal como mencionado, en otro aspecto, se puede llevar a cabo también la funcionalidad desde el dispositivo móvil en caso de tener el módulo de programación 265 también instalado en el mismo.

[0058] La FIG. 4 muestra otro aspecto, en el que la comunicación entre la pasarela de gestión 260, en el ordenador de mantenimiento 160, y la pasarela remota 230, en el dispositivo móvil 130, se enrutan a través de un servidor de credenciales en Internet que facilita el procesamiento de la información proveniente de múltiples PLCs y también permite gestionar el sistema. El servidor de credenciales incorpora una base de datos 404, por ejemplo SQL, y una aplicación traductora 402 que gestiona peticiones HTTP enviadas desde las pasarelas de gestión y las pasarelas remotas. Este servidor funciona como interfaz y se encarga de traducir las peticiones HTTP en comandos hacia la base de datos, y traducir las respuestas a cada comando en mensajes de respuesta a cada petición HTTP. Esta información de la base de datos se gestiona a su vez por un ordenador administrador, que se usa para almacenar los datos de usuario, habilitar conexiones, y monitorizar el estado de una conexión en marcha. Por tanto se conocen las direcciones IP de los dispositivos de mantenimiento y pasarela móvil de manera sencilla y centralizada.

[0059] Las comunicaciones se pueden implementar de forma segura, usando credenciales. El usuario del ordenador de mantenimiento accede al sistema introduciendo un nombre de usuario y una contraseña a través de la pasarela de gestión. La pasarela de gestión envía 450 los datos de usuario y contraseña al servidor, donde se verifican. Una vez que el nombre de usuano y la contraseña han sido verificados, el servidor responde 460 con un identificador (ID_GW) y actualiza la base de datos asociando el ID_GW y la dirección IP del ordenador de mantenimiento (IP_PCM) con el usuario. El ID_GW es un número aleatorio y único, y no puede coincidir con otro ID_GW asignado en conexiones anteriores. En el momento en que el servidor genera un nuevo ID_GW y lo envía al ordenador de mantenimiento, los ID_GW's que se hubieran generado previamente quedan inhabilitados. Es decir, sólo se puede habilitar la conexión con el último ID_GW generado por el servidor. El usuario del ordenador de mantenimiento comunica el nuevo ID_GW al usuario del dispositivo móvil 130 (por ejemplo, a través de una llamada telefónica, vía SMS o correo electrónico), y pone en marcha el VPN Server. La pasarela de gestión realiza 470 peticiones periódicas al servidor para obtener 480 el estado de la conexión entre el dispositivo móvil y el ordenador de mantenimiento (STATUS) y lo muestra en la interfaz de usuano de la pasarela de gestión.

[0060] El usuario del dispositivo móvil introduce el ID_GW en la pasarela remota 230 para iniciar el proceso de conexión con el ordenador de mantenimiento 160. La pasarela remota envía 410 el ID_GW al servidor, que comprueba si el ID_GW existe y si hay alguna IP_PCM asociada al identificador. Si se cumplen ambas condiciones, el servidor envía 420 la IP_PCM a la pasarela remota, en caso contrario, se le comunica el error. Una vez que la pasarela remota recibe la IP_PCM, la aplicación inicia la conexión al PLC, que puede comprender una conexión mediante WiFi y una conexión al ordenador de mantenimiento mediante VPN. La pasarela remota envía 430 periódicamente al servidor el estado de la conexión entre el dispositivo móvil y el ordenador de mantenimiento. El servidor incrementa el número de conexiones realizadas con el ordenador de mantenimiento cuando el STATUS de la conexión pasa de VPN Client desconectado a VPN Client conectado. Cuando la pasarela de gestión muestra 440 el estado de conexión como habilitada, se arranca el módulo de programación para iniciar el proceso de programación, monitorización y depuración remoto del PLC. Para finalizar, el usuario del ordenador de mantenimiento cierra 490 la conexión y el servidor elimina el ID_GW y la IP_PCM de la tabla, devolviendo una confirmación 495.

[0061] La FIG. 5 muestra en más detalle la pasarela remota 230, que está formada por dos módulos principales, los medios 510 de inicio de sesión y los medios 520 de gestión de las comunicaciones y el enrutamiento de paquetes. Los medios de inicio de sesión permiten configurar 512 el SSID, la contraseña del punto de acceso WiFi, y el modo de asignación de dirección IP del PLC en modo DHCP o en modo IP estática. Además, incorporan un campo donde el usuario debe introducir el identificador asignado desde el ordenador de mantenimiento para iniciar la sesión. Seguidamente, se envía el identificador a la base de datos del servidor, donde se comprueba 514 si dicho identificador es correcto. Si no existe, la base de datos devuelve un error a la pasarela remota. Si el identificador es correcto, la base de datos responde 516 con la dirección IP asociada al ordenador de mantenimiento y ejecuta la tarea de gestión de comunicaciones.

[0062] Los medios de gestión de las comunicaciones gestionan el establecimiento de las conexiones TCP/IP con el ordenador de mantenimiento y el PLC. Por un lado, establece la comunicación VPN como VPN Client (según el caso), para ello se configura 530 una nueva conexión VPN y se conecta 532 con el servidor VPN en el ordenador de mantenimiento. Por otro lado, los medios de gestión de las comunicaciones activan 550 el dispositivo móvil como punto de acceso WiFi y escanea 552 a los usuarios conectados al punto de acceso a la espera de que el PLC se conecte. Una vez establecidos 534, 554, los dos canales de comunicaciones, los medios de gestión de las comunicaciones abren los puertos 560, 540, TCP/IP con el PLC y con el ordenador de mantenimiento, y se entra en modo de encaminamiento 570 de paquetes entre ambos puertos. En paralelo, se envía 580 periódicamente el estado de las conexiones a la base de datos en el servidor, que responde con una confirmación si todo está correcto.

[0063] Tal como explicado anteriormente, en un aspecto se proporciona un protocolo de comunicación que permite el flujo de datos entre el PLC y el dispositivo móvil mediante una red VPN a la vez que una conexión inalámbrica. De forma ventajosa, este protocolo lleva a cabo la doble conectividad sin decodificar los datos, ya que todo el encaminamiento de los datos binarios se lleva a cabo de forma ágil y rápida. La FIG. 6 muestra los estados del enrutado de paquetes TCP/IP de la pasarela remota 230 según este protocolo. En relación al enrutado o encaminamiento de paquetes, la pasarela remota ejecuta dos hilos en paralelo, el primer hilo 612 encargado de recibir y enviar paquetes al ordenador de mantenimiento, y el segundo hilo 614 encargado de recibir y enviar paquetes al PLC. La aplicación de enrutado consta de cuatro estados. Un primer estado 620 de recepción de paquetes TCP/IP procedentes del ordenador de mantenimiento. Un segundo estado 635 de envío de paquetes TCP/IP al PLC. Un tercer estado 625 de recepción de paquetes TCP/IP procedentes del PLC. Un cuarto estado de envío 630 de paquetes TCP/IP al ordenador de mantenimiento. Según el caso, se abre 640 el puerto para enviar paquetes al ordenador de mantenimiento, o se abre 645 el puerto para enviar paquetes al PLC.

[0064] La aplicación arranca en el primer estado (recepción de paquetes PC) y si recibe un paquete que procede del ordenador pasa al segundo estado 635. Si pasado un tiempo no recibe un paquete del ordenador, entonces pasa al tercer estado 625. En el segundo estado, la aplicación retransmite al PLC el mensaje recibido en el primer estado y la pasa al primer estado. En el tercer estado (recepción de paquetes PLC), si recibe un paquete que procede del PLC pasa al cuarto estado 630. Si pasado un tiempo no recibe un paquete, entonces pasa al primer estado. En el cuarto estado, retransmite al ordenador de mantenimiento el paquete recibido del PLC en el tercer estado y la pasa al primer estado.

[0065] La FIG. 7 muestra el estado de las conexiones de la pasarela remota. El usuario puede observar el estado de las conexiones del dispositivo móvil mediante una serie de indicadores:

• "AP status": Indica si el dispositivo móvil ha habilitado el punto de acceso AP WiFi.

• "Connected to PLC": Indica si el PLC y el dispositivo móvil están conectados.

• "Establish VPN": Indica si la red VPN se ha establecido correctamente entre el dispositivo móvil (cliente VPN) y el ordenador de mantenimiento (servidor VPN). • "Connected to PC": Indica si el dispositivo móvil y el ordenador de mantenimiento están conectados.

• "Codesys connected": Indica si el ordenador de mantenimiento está monitorizando el PLC mediante el programa, en este caso denominado Codesys.

[0066] Por tanto, los inventores han desarrollado distintos aspectos implementados como una aplicación de pasarela comprendiendo un módulo pasarela remota dispuesto en un dispositivo móvil para comunicarse con el PLC acoplado a una máquina a controlar. También puede comprender un módulo pasarela de gestión dispuesto en un ordenador de mantenimiento para comunicarse con el dispositivo móvil y con el PLC. Las aplicaciones permiten que el operario que se encuentre en las instalaciones donde se ubica el PLC establezca una conexión sin necesidad de disponer de un enrutador específico, de forma simple y rápida, con la conexión de un sencillo adaptador WiFi (en caso de necesitarlo el PLC). La utilización del dispositivo móvil en el caso de la invención, permite múltiples posibilidades y no restringe los costes asociados a la transmisión de datos únicamente a una conexión de una maquinaria. Además, al ser un sistema abierto, permite la utilización del software propio del fabricante del PLC para la programación del equipo, sin estar innecesariamente restringidos por firmware cerrado del fabricante del PLC. Muy ventajosamente, las aplicaciones de la invención permiten acceso a la memoria de programa de un PLC por lo que son capaces de cambiar tanto la lógica como la secuencia de las instrucciones de funcionamiento básicas que han sido programadas en el PLC, independientemente del idioma de programación. Esta funcionalidad es adicionalmente al de permitir el acceso a la memoria de datos o tablas de registro para consultar el estado de las variables del programa. Por tanto, se permite la programación de un PLC mediante los lenguajes de programación estándar.

[0067] Además, el experto medio en la materia entendería que las distintas realizaciones se pueden implementar en hardware, software, firmware, middleware, micro-código, o cualquier combinación de las mismas. Varios aspectos o características descritas pueden implementarse, por un lado, como un método o procedimiento o función, y por el otro lado, como un aparato, dispositivo, sistema, o programa de ordenador accesible por cualquier dispositivo legible por ordenador, portador o medio. Los procedimientos o algoritmos descritos pueden implementarse directamente en hardware, en un módulo software ejecutado por un procesador, o una combinación de las dos. Los varios medios pueden comprender módulos de software residentes en memoria RAM, memoria flash, memoria ROM, memoria EPROM, memoria EEPROM, registros, disco duro, disco removible, un CD-ROM, o cualquier otro tipo de medio de almacenamiento conocido en la técnica.

[0068] Los varios medios pueden comprender bloques de lógica, módulos, y circuitos se pueden implementar o llevado a cabo por un procesador de propósito general, un procesador de señales digitales (DSP), un circuito integrado específico de aplicación (ASIC), un conjunto de puertas de campo programable (FPGA), u otros dispositivos de lógica programable, de puerta discreta o de lógica de transistor, componentes discretos de hardware, o cualquier combinación de los mismos diseñados para llevar a cabo las funciones descritas. Un procesador de propósito general puede ser un micro procesador, pero en la alternativa, el procesador puede ser un procesador convencional, controlador, microcontrolador, máquina de estado, o procesador embebido.

[0069] Los varios medios pueden comprender medios legibles por ordenador incluyendo, pero no limitado a, dispositivos de almacenamiento magnético (por ejemplo, discos duros, discos floppy, tiras magnéticas, y demás), discos ópticos (por ejemplo, discos compactos CD o versátiles DVD, y demás), tarjetas inteligentes y unidades de almacenamiento flash temporales (por ejemplo EPROM). Adicionalmente, la variedad de medios de almacenamiento descritos pueden representar uno o más dispositivos y/o medios legibles por ordenador para almacenar información. El término medio legible por ordenador puede comprender, sin estar limitado a ello, una variedad de medios capaces de almacenar, guardar, o transportar instrucciones y/o datos. Adicionalmente, un producto de programa de ordenador puede comprender un medio legible por ordenador con una o más instrucciones o códigos operativos para hacer que un ordenador lleve a cabo las funciones descritas una vez ejecutadas en el ordenador.

[0070] Lo que se ha descrito comprende varias realizaciones a modo de ejemplo. Como no es posible ni viable describir en detalle todas la variedad de combinaciones y permutaciones del concepto inventivo que daría lugar a un número elevado de realizaciones, el redactor entiende que el experto en la materia derivaría, después de una lectura directa y objetiva de esta divulgación, las distintas permutaciones y combinaciones posibles, sin que se salga del concepto inventivo general descrito. Por tanto, se han descrito las realizaciones principales, entendiendo que comprenden las demás combinaciones, variaciones y modificaciones.

[0071] En lo siguiente, se describen ciertos aspectos adicionales o ejemplos:

Un aparato remoto en un dispositivo electrónico móvil para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar, comprendiendo el aparato remoto: medios de intercambio de datos con un controlador de lógica programable, PLC, mediante un protocolo de comunicaciones inalámbricas del dispositivo electrónico móvil; y medios de pasarela remota configurados para acceder al PLC permitiendo la modificación del programa del PLC. El aparato, en el que los medios de pasarela remota están configurados para acceder a la memoria de datos del PLC permitiendo la lectura de variables. El aparato, en el que los medios de pasarela remota están configurados para acceder a la memoria de programa del PLC permitiendo la modificación de las instrucciones de programa. El aparato, en el que los medios de pasarela remota están configurados para introducir puntos de interrupción en el programa para facilitar la resolución de problemas. El aparato, comprendiendo adicionalmente medios de intercambio de datos con un ordenador de mantenimiento mediante un protocolo de comunicaciones inalámbricas del dispositivo electrónico móvil. El aparato, en el que los medios de pasarela remota comprenden adicionalmente medios de inicio de sesión y medios de gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones. El aparato, en el que el los medios de pasarela remota comprenden medios de control para procesar los datos a enviar o a recibir, comprendiendo compresión o descompresión, codificación o decodificación, encapsulación o des- encapsulación, modulación o demodulación. Un aparato de gestión en un ordenador de mantenimiento para la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar, comprendiendo el aparato de gestión: medios de intercambio de datos con un dispositivo electrónico móvil; y medios de pasarela de gestión configurados para procesar los datos intercambiados con el dispositivo electrónico móvil permitiendo la modificación del programa del PLC. El aparato, en el que los medios de gestión comprenden adicionalmente medios de inicio de sesión y medios de gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones. El aparato, en el que el los medios de gestión comprenden medios de control para procesar los datos a enviar o a recibir, comprendiendo compresión o descompresión, codificación o decodificación, encapsulación o des-encapsulación, modulación o demodulación. El aparato, en el que los medios de gestión comprenden medios de establecimiento de una red privada virtual, VPN, entre el aparato de gestión y el aparato remoto.

Un procedimiento en un aparato remoto de un dispositivo electrónico móvil para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar, comprendiendo el procedimiento: intercambiar datos con un controlador de lógica programable, PLC, mediante un protocolo inalámbrico de comunicaciones; y acceder a la memoria de programa del PLC permitiendo la modificación de las instrucciones de programa. El procedimiento, en el que acceder a la memoria de programa del PLC comprende acceder a la memoria de datos del PLC permitiendo la lectura de variables. El procedimiento, en el que acceder a la memoria de programa del PLC comprende acceder a la memoria de programa del PLC permitiendo la modificación de las instrucciones de programa. El procedimiento, en el que la modificación de las instrucciones de programa comprende introducir puntos de interrupción en el programa para facilitar la resolución de problemas. El procedimiento, comprendiendo adicionalmente intercambiar datos con un ordenador de mantenimiento mediante un protocolo de comunicaciones inalámbricas del dispositivo electrónico móvil. El procedimiento, comprendiendo adicionalmente inicio de sesión y gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones. El procedimiento, comprendiendo adicionalmente procesar los datos a enviar o a recibir, comprendiendo compresión o descompresión, codificación o decodificación, encapsulación o des-encapsulación, modulación o demodulación.

Un procedimiento en un aparato de gestión de un ordenador de mantenimiento para facilitar la gestión remota de un controlador de lógica programable, PLC, de al menos una máquina a controlar, comprendiendo el procedimiento: intercambiar datos con un dispositivo electrónico móvil; y procesar los datos intercambiados permitiendo la modificación de las instrucciones de programa del PLC. El procedimiento, comprendiendo adicionalmente inicio de sesión y gestión de las comunicaciones para establecer y cerrar las conexiones, e informar sobre el estado de las comunicaciones. El procedimiento, comprendiendo adicionalmente procesar los datos a enviar o a recibir, comprendiendo compresión o descompresión, codificación o decodificación, encapsulación o des-encapsulación, modulación o demodulación. El procedimiento, comprendiendo adicionalmente el establecimiento de una red privada virtual, VPN, entre el aparato de gestión y el aparato remoto. Un sistema para la gestión remota de controladores de lógica programable, PLC, en el que el sistema comprende al menos un PLC de al menos una máquina a controlar, y al menos un dispositivo electrónico móvil conectado al al menos un PLC, en el que el al menos un dispositivo electrónico móvil comprende un aparato remoto. El sistema, comprendiendo adicionalmente al menos un ordenador de mantenimiento conectado al PLC mediante el al menos un dispositivo electrónico móvil, en el que el al menos un ordenador de mantenimiento comprende un aparato de gestión. El sistema, comprendiendo adicionalmente un servidor de credenciales para autenticar al usuario del dispositivo electrónico móvil.

Un procedimiento de gestión remota de controladores de lógica programable, PLC, en un sistema que comprende al menos un PLC de al menos una máquina a controlar, y al menos un dispositivo electrónico móvil conectado al al menos un PLC, en el que el procedimiento llevado a cabo por el al menos un dispositivo electrónico móvil. El procedimiento, comprendiendo adicionalmente al menos un ordenador de mantenimiento conectado al PLC mediante el al menos un dispositivo electrónico móvil, en el que el procedimiento llevado a cabo por el al menos un ordenador de mantenimiento. El procedimiento, comprendiendo adicionalmente autenticar al usuano del dispositivo electrónico móvil.

Un aparato o procedimiento, en el que el protocolo de comunicaciones inalámbricas puede ser de corto alcance, como por ejemplo, el WiFi o Bluetooth, o puede ser de largo alcance, como por ejemplo, de red celular o WiMax.

Un programa de ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un dispositivo electrónico móvil, para llevar a cabo un procedimiento.

Un programa de ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un ordenador de mantenimiento, para llevar a cabo un procedimiento.

Un medio legible por ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un dispositivo electrónico móvil, para llevar a cabo un procedimiento. Un medio legible por ordenador que comprende instrucciones, una vez ejecutadas por un procesador en un ordenador de mantenimiento, para llevar a cabo un procedimiento.