Programa lógico
| Descripción |
Las aplicaciones de PolyScope X pueden incluir un programa lógico que se ejecute de forma continua en segundo plano, independientemente del programa principal del robot. Esto resulta útil para tareas que deben seguir ejecutándose cuando el brazo está apagado, el programa principal está en pausa o se ha detenido, o cuando el operador ha entrado en una zona de seguridad. Entre los usos habituales se incluyen el mantenimiento de la comunicación por bus de campo (Modbus, Ethernet/IP, PROFINET, Socket, XmlRPC), la respuesta a entradas de sensores externos, la notificación del estado del robot a un PLC de producción y el control de equipos externos cuando se detiene el programa principal. El programa lógico no puede utilizar funciones que muevan directamente el brazo robótico, cambien la carga útil o modifiquen los parámetros del PCH. |
|
Ejemplos de aplicaciones con el programa lógico |
|
|
Licencia |
Logic Program requiere una licencia, que se puede adquirir a través del portal del cliente.
|
|
Control del programa lógico |
En la página «Programa», selecciona «Programa lógico» en la barra lateral. La barra lateral ampliada muestra los controles para navegar por las diferentes partes del programa lógico. También te permite iniciar, pausar, detener y reiniciar el programa.
|
||||||
|
|
El botón «Ejecutar programa» cambia a «Ejecutar programa » o «Detener programa», dependiendo del estado del programa lógico. Sirve como acceso directo a las acciones de control del programa disponibles en el menú contextual del programa lógico.
Los cuatro indicadores del programa Logic muestran el estado actual del programa. También indican si el programa está configurado para iniciarse automáticamente al cargar una aplicación.
|
|
Estructura del programa lógico |
Un programa lógico tiene las mismas secciones estructurales que un programa principal:
El programa del robot y el programa lógico tienen cada uno su propio conjunto de variables globales, un grupo de subprocesos independiente y un ciclo de vida de ejecución independiente. El inicio, la parada o la aparición de un fallo en un programa no detiene al otro. Una instrucción
|
|
|
En la sección «Antes de empezar», solo puedes ejecutar el programa una vez.
En la sección «Módulos» , puedes ver la lista de funciones y subprocesos disponibles para el programa.
|
|
Intercambio de datos con el programa del robot |
La principal forma de comunicación entre el programa del robot y el programa lógico es a través de las variables de aplicación . Las variables se pueden tanto establecer como leer desde el robot y el programa lógico. Este ejemplo cuenta los elementos que entran en el búfer de entrada de la célula del robot y muestra el recuento al programa del robot. El contador sigue sumando incluso cuando el brazo robótico está apagado.
|
|
Lectura del estado del robot |
El estado del robot está disponible a través de las variables RTDE integradas. Estas variables se pueden leer utilizando la función de script El siguiente ejemplo muestra cómo comprobar si la función «Safeguard Stop» está activa:
El siguiente ejemplo comprueba si el programa del robot está en pausa:
La API de control de URScript también integra esta funcionalidad.
|
|
Inicio automático del programa lógico |
Puede seleccionar un programa para que se inicie automáticamente al cargar una aplicación. Al seleccionar la opción «Inicio automático», el programa lógico se inicia inmediatamente después de que se cargue la aplicación.
También puede iniciar automáticamente el programa lógico cuando se encienda el controlador del robot y se cargue la última aplicación. La función «Autostart» funciona independientemente del modo de funcionamiento o del estado del brazo robótico. Cuando se activa el inicio automático al cargar el programa, una notificación en forma de barra emergente confirma que el programa lógico se ha iniciado.
|
|
|
La insignia de la barra lateral del icono de Logic Program indica siempre el estado actual del programa, tanto si está en ejecución como si está detenido.
Es su responsabilidad asegurarse de que el programa lógico sea seguro cuando el robot esté encendido y cuando se carguen diferentes aplicaciones.
Los programas lógicos pueden activar y desactivar equipos externos mediante conexiones cableadas o de PLC (Modbus, PROFINET, Ethernet/IP, Socket, salidas directas u otras interfaces).
|
|
Módulos y hilos |
La funcionalidad del programa lógico se puede organizar en funciones. Esto funciona de la misma manera que en el programa del robot. Cada función se puede marcar como un hilo . Por defecto, los subprocesos se ejecutan una sola vez. Marca la casilla «Loop» de la función de subproceso para ejecutar el subproceso de forma continua.
|
|
Compartir recursos |
Aunque el programa del robot y el programa lógico se ejecutan de forma independiente, cada uno con su propio conjunto de subprocesos y variables, todos comparten los mismos recursos de hardware. Esto impone algunas limitaciones que el programador debe tener en cuenta:
|
|
Limitaciones |
|