Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language,...

88
Controlador Descripción Descripción del sistema CMXR-C2 con CoDeSys Descripción 571701 es 1205a [761533]

Transcript of Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language,...

Page 1: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

Recortar: Arriba: 61,5 mm Abajo: 61,5 mm Izquierda: 43,5 mm Derecha: 43,5 mm

Controlador

Descripción Descripción del sistema CMXR-C2 con CoDeSys

Descripción571701 es 1205a [761533]

Page 2: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …
Page 3: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

GDCP-CMXR-C2-CS-ES 1205a 3

Edición ______________________________________________________ 1205a

Denominación ___________________________________ GDCP-CMXR-C2-CS-ES

N° de art. ___________________________________________________ 571701

Festo AG & Co KG., D-73726 Esslingen, 2012

Internet: http://www.festo.com

Correo electrónico: [email protected]

Sin nuestra expresa autorización, queda terminantemente prohibida la reproducción total o parcial de este documento, así como su uso indebido y/o su exhibición o comunicación a terceros. El incumplimiento de esta disposición obliga al pago de indemnizaciones. Quedan reservados todos los derechos inherentes, en especial los de patentes, de modelos registrados y estéticos.

Page 4: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

4 GDCP-CMXR-C2-CS-ES 1205a

Lista de revisiones

Autor:

Nombre del manual: GDCP-CMXR-C2-CS-ES

Nombre del archivo:

Ubicación del archivo:

Nº Descripción Indicador de

revisión

Fecha de modificación

001 Redacción 1002NH 14.04.2010

002 Actualización a CMXR-C2 V1.1 1205a 16/04/2012

Page 5: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

Índice

GDCP-CMXR-C2-CS-ES 1205a 5

ÍNDICE

1. Introducción .......................................................................................................... 9

1.1 Términos utilizados ........................................................................................... 10

1.2 Otros documentos ............................................................................................. 10

2. Indicaciones de seguridad .................................................................................. 12

2.1 Uso de la documentación................................................................................... 12

2.2 Uso previsto ...................................................................................................... 12

2.3 Personal cualificado .......................................................................................... 13

2.4 Indicaciones de seguridad relativas a los productos .......................................... 13

2.5 Indicaciones de seguridad relativas a este manual ............................................ 13

2.6 Instrucciones de seguridad para el producto descrito ........................................ 14

3. Integración de CoDeSys en CMXR ....................................................................... 15

3.1 Distribución de tareas entre el control de movimiento y el control de proceso ............................................................................................... 16

3.2 Distribución típica de tareas .............................................................................. 17

3.2.1 Control de movimiento (RC) ................................................................ 17

3.2.2 Control de proceso (PLC) .................................................................... 17

3.3 Comunicación entre el control de proceso y el control de movimiento ............... 17

4. Trabajar con CoDeSys ......................................................................................... 18

4.1 Instalación de CoDeSys ..................................................................................... 18

4.2 Instalación del sistema de destino (Target) ........................................................ 18

4.3 Parámetros de comunicación ............................................................................. 19

4.4 Descarga ........................................................................................................... 20

4.5 Creación de un proyecto de arranque ................................................................ 20

5. Planificación de proyectos en FCT ....................................................................... 21

5.1 Almacenamiento y administración de las versiones del proyecto ....................... 21

5.2 Carga/descarga de proyectos FCT ...................................................................... 23

5.3 Creación de un proyecto CoDeSys en la FCT ....................................................... 25

5.3.1 Página “Configuración” ...................................................................... 25

5.3.2 Página “Parámetros CPU” .................................................................. 25

5.3.3 Página “Módulos periféricos” ............................................................. 27

5.3.4 Página “CoDeSys” .............................................................................. 28

Page 6: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

Índice

6 GDCP-CMXR-C2-CS-ES 1205a

6. Periferia .............................................................................................................. 29

6.1 Información general de módulos para conexión en serie .................................... 29

6.2 Módulos CAN Master X4/ X6 .............................................................................. 30

6.3 Interfaz serial X9 RS232 ..................................................................................... 31

6.4 Módulo Profibus Master .................................................................................... 31

6.5 Módulo Profibus Slave ....................................................................................... 32

7. El proyecto base CoDeSys ................................................................................... 33

7.1 Función RC_OUTPUT_UPDATE............................................................................ 33

7.2 Programa RC_INTERFACE ................................................................................... 34

7.3 Programa RC_STANDALONE............................................................................... 34

7.4 Motion Task ....................................................................................................... 35

7.5 Variables globales ............................................................................................. 36

7.5.1 RcInterface: pestaña “Variables” ........................................................ 37

7.5.2 RcInterface: búfer de mensajes .......................................................... 37

7.5.3 RcInterface: variables de instancia ..................................................... 38

7.5.4 Variables de salida RC ........................................................................ 38

8. Interfaz de control RcInterface ............................................................................ 39

8.1 Biblioteca RcInterface.lib ................................................................................... 39

8.2 Módulos de visualización de RcInterface.lib ....................................................... 39

8.3 Acceso al sistema de mensajes .......................................................................... 41

8.3.1 Funciones disponibles ........................................................................ 42

8.3.2 El búfer de mensajes RcIfMsgBuffer ................................................... 42

8.3.3 Clave de mensaje ............................................................................... 42

8.3.4 Número de componente ..................................................................... 43

8.3.5 Clases de mensajes ............................................................................ 43

8.3.6 Número de mensaje ........................................................................... 43

8.3.7 Número de instancia .......................................................................... 43

8.3.8 Fecha y hora registradas .................................................................... 43

8.3.9 Texto del mensaje .............................................................................. 43

8.3.10 Cambio de idioma .............................................................................. 44

8.3.11 Configuración en la FCT de mensajes definidos por el usuario ............ 44

8.3.12 Edición de mensajes fuera de la FCT ................................................... 45

Page 7: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

Índice

GDCP-CMXR-C2-CS-ES 1205a 7

8.4 Registro de variables Plc_To_Rc/Rc_To_Plc ....................................................... 45

8.4.1 Tipos de datos básicos ....................................................................... 45

8.4.2 Tipos de datos complejos ................................................................... 45

8.5 Mensajes de error de la biblioteca RcInterface.lib .............................................. 45

9. Descripción de la biblioteca RcInterface.lib ........................................................ 46

9.1 Funciones .......................................................................................................... 46

9.2 Visión de conjunto de los módulos .................................................................... 47

9.2.1 Unidad de mando manual CDSA ......................................................... 47

9.2.2 Robot global ....................................................................................... 47

9.2.3 Robot local ......................................................................................... 48

9.3 Módulos de la unidad de mando manual/módulos CDSA ................................... 48

9.3.1 Datos de la unidad de mando manual, CDSAIfGetKeys ....................... 48

9.3.2 LED de proceso de la unidad de mando manual, CDSAIfSetProcessLed ......................................................................... 49

9.4 Módulos globales de robot ................................................................................ 51

9.4.1 Inicialización y actualización, RcIfRobotUpdateGlobal ........................ 51

9.4.2 Lectura del búfer de mensajes, RcIfMsgRead ...................................... 51

9.4.3 Borrado del búfer de mensajes, RcIfMsgQuit ...................................... 53

9.4.4 Transmisión de un mensaje, RcIfMsgSet ............................................. 54

9.4.5 Acceso a las posiciones de eje, AxisPos y CartPos .............................. 56

9.5 Módulos locales de robot .................................................................................. 59

9.5.1 Update, RcIfRobotUpdateLocal ........................................................... 59

9.5.2 Modos de funcionamiento, RcIfModeControl ...................................... 60

9.5.3 Control de nivel superior, RcIfWriteAccess .......................................... 63

9.5.4 Datos de cinemática, RcIfRobotData ................................................... 65

9.5.5 Activación de sistemas de referencia y herramientasn, RcIfSetRefSys und RcIfSetTool ........................................................... 71

9.5.6 Movimiento manual, RcIfJogControl .................................................... 73

9.5.7 Override, RcIfOverride ........................................................................ 77

9.5.8 Control de programa, RcIfProgramControl_V2 .................................... 79

9.5.9 Diagrama de flujo ............................................................................... 83

Page 8: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

Índice

8 GDCP-CMXR-C2-CS-ES 1205a

A. Apéndice ............................................................................................................. 84

A.1 Descripción de funciones importantes ............................................................... 84

A.1.1 Demanda del control de nivel superior ............................................... 84

A.1.2 Establecimiento de la disposición de servicio del control de movimiento ....................................................................... 84

A.1.3 Autorización de los actuadores del control de movimiento ................. 85

A.1.4 Ejecución del programa ...................................................................... 86

A.1.5 Parada del programa .......................................................................... 86

A.1.6 Descargar programa ........................................................................... 86

A.1.7 Función ProgHold ............................................................................... 87

A.2 Bibliotecas de apoyo a la aplicación .................................................................. 88

A.2.1 RcTracking.lib (solamente CMXR-C2) .................................................. 88

A.2.2 Festo_Motion.lib (CoDeSys general) ................................................... 88

A.2.3 PartDetector.lib (CoDeSys general) .................................................... 88

A.2.4 Festo_CameraControl.lib (CoDeSys general) ....................................... 88

Page 9: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

1. Introducción

GDCP-CMXR-C2-CS-ES 1205a 9

1. Introducción

El control multieje CMXR-C2 incluye adicionalmente un PLC integrado según CoDeSys V2.3 para el control de movimiento. Este PLC integrado, que en adelante llamaremos “control de proceso”, dirige el control de movimiento.

Este documento describe la interfaz entre el control de movimiento y el control de proceso.

La capacidad, y con ella el apoyo funcional, están delimitados. La potencia del respectivo control CMXR se puede consultar en la visión de conjunto incluida en el manual del sistema CMXR.

Figura 1.1 Control multieje CMXR-C2 de Festo Unidad de mando manual CDSA-D1-VX

de Festo

Page 10: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

1. Introducción

10 GDCP-CMXR-C2-CS-ES 1205a

1.1 Términos utilizados

Denominación Significado

Unidad central Unidad básica del control multieje CMXR

Control multieje Unidad central con módulos periféricos conectados

Tarjeta de memoria Compact Flash Card CF tipo I

FTL Festo Teach Language, lenguaje de programación de movimientos para el

control multieje CMXR

TCP Tool Center Point

DriveBus Canal de comunicación entre el control multieje CMXR y los controladores

de motor de Festo basado en CANopen DS402

Festo Configuration Tool (FCT) Software de parametrización y puesta en funcionamiento para actuadores

de Festo

Plugin FCT Módulo de software de Festo Configuration Tool (FCT) para un equipo

determinado

Unidad de mando manual CDSA-D1-VX como unidad para la puesta en funcionamiento, la indicación

y el control

CoDeSys Software de programación de PLC para plataformas de control según

IEC61131

RC Robotic Controller, control de movimiento

PLC Control lógico programable, control de proceso

RcInterface, RcIf Interfaz entre el control de proceso y el control de movimiento

Tracking Seguimiento de objetos desplazados

Proyecto base CoDeSys Plantilla de proyecto CoDeSys, elaborada por FCT como acceso a la

programación

Emulación del CDSA Emulación de las funciones de la unidad de mando manual en un PC

1.2 Otros documentos

El funcionamiento del control multieje CMXR-C2 se describe en los siguientes

documentos:

N° art. Nombre Contenido

571687 GDCP−CMXR−C2−SY-DE Manual del sistema

571693 GDCP−CMXR−C2−HW−DE Descripción del hardware del CMXR-C2

560315 GDCP−CMXR−SW-DE Programación básica de la serie CMXR

571705 GDCP−CMXR−C2-ST−DE Instrucciones especiales de programación para Tracking

571699 GDCP−CMXR−C2−CS−DE Programación en CoDeSys

Page 11: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

1. Introducción

GDCP-CMXR-C2-CS-ES 1205a 11

Asimismo, existen dos documentos para la unidad de indicación y control CDSA-D1-VX:

N° art. Nombre Contenido

560333 GDCP-CDSA-SY-DE Manual del sistema de la unidad de indicación y control

CDSA

560339 GDCP-CDSA-SW-DE Manual del software CDSA

Estos documentos están disponibles en los idiomas alemán, inglés, español, francés, italiano y sueco; véanse las instrucciones breves de utilización GDSP−CMXR−C2−SY−ML.

Page 12: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

2. Indicaciones de seguridad

12 GDCP-CMXR-C2-CS-ES 1205a

2. Indicaciones de seguridad

2.1 Uso de la documentación

Este documento está dirigido a aquellos usuarios y programadores de robots que trabajan con el sistema CMXR de Festo. Contiene una introducción al manejo y la programación de dicho sistema. Es obligatorio que el personal reciba un curso de formación apropiado.

2.2 Uso previsto

Advertencia

El sistema CMXR de Festo no está diseñado para tareas de control relacionadas con la seguridad (p. ej., parada de emergencia o control de velocidades reducidas).

Según la norma EN 13849-1, el sistema CMXR de Festo solamente corresponde a la categoría B y, por lo tanto, no es suficiente para ejecutar funciones de seguridad dirigidas a la protección del personal. Para tareas de control relacionadas con la seguridad o para la protección del personal, deberán aplicarse medidas de protección externas complementarias que garanticen un estado operativo seguro de todo el sistema incluso en caso de fallo.

Festo no se responsabilizará de los daños surgidos por no observar las indicaciones de advertencia de este manual de instrucciones.

Nota

Antes de la puesta en funcionamiento, se deben leer por completo las indicaciones de seguridad de los capítulos 2.3 y siguientes.

Si no entiende perfectamente la documentación en el idioma en que se la presentamos, póngase en contacto con su proveedor en infórmele del problema.

Para que funcione perfectamente y de forma segura, el sistema de mando debe ser

transportado, almacenado, montado e instalado de manera correcta y profesional. Además, el manejo y mantenimiento del mismo deben realizarse con gran esmero.

Page 13: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

2. Indicaciones de seguridad

GDCP-CMXR-C2-CS-ES 1205a 13

2.3 Personal cualificado

Nota

Los trabajos en equipos eléctricos solamente debe realizarlos el personal debidamente formado y cualificado.

2.4 Indicaciones de seguridad relativas a los productos

Advertencia

¡PELIGRO!

A la hora de desechar las baterías gastadas, respete la normativa vigente sobre eliminación de residuos especiales.

Aunque las baterías son de baja tensión, en caso de cortocircuito pueden liberar suficiente corriente como para hacer arder mate-riales inflamables. Por tanto, no se deben eliminar junto con materiales conductores (p. ej., virutas de hierro, lana de acero sucia de aceite, etc.).

ESD

Elementos sensibles a las descargas electrostáticas: pueden provocar desperfectos si no se manejan correctamente.

Advertencia

¡PELIGRO!

¡Movimientos peligrosos!

Peligro de muerte, lesiones graves o daños materiales debido a un movimiento accidental de los ejes.

2.5 Indicaciones de seguridad relativas a este manual

Advertencia

¡PELIGRO!

No respetar lo indicado puede dar lugar a daños materiales y personales graves.

Atención

No respetar lo indicado puede dar lugar a daños materiales graves.

Page 14: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

2. Indicaciones de seguridad

14 GDCP-CMXR-C2-CS-ES 1205a

2.6 Instrucciones de seguridad para el producto descrito

Advertencia

¡Peligro!

Peligro de muerte por no contar con suficientes equipos de parada de emergencia.

Los equipos de PARADA DE EMERGENCIA deben mantener su eficacia y accesibilidad en todos los modos de funcionamiento de la instalación. El desbloqueo del equipo de PARADA DE EMERGENCIA no debe provocar el rearranque incontrolado de la instalación.

Antes de conectar la instalación, verifique la cadena de PARADA DE EMERGENCIA.

Advertencia

¡PELIGRO!

Peligro para las personas y el material.

Pruebe todos los programas nuevos antes de poner en funcionamiento la instalación.

Advertencia

¡PELIGRO!

La instalación posterior de componentes y la realización de cambios pueden reducir la seguridad del sistema.

Ello puede dar lugar a daños personales, materiales y medio-ambientales graves. Por consiguiente, es imprescindible la autorización de Festo para cualquier instalación posterior de componentes o cualquier cambio en la instalación en los que se utilicen piezas de otros fabricantes.

Advertencia

¡PELIGRO!

Peligro por alta tensión.

Salvo que se indique lo contrario, los trabajos de mantenimiento se deben realizar siempre con la instalación desconectada. Una vez desconectada, la instalación debe asegurarse contra una reco-nexión no autorizada o involuntaria.

Cualquier trabajo de medición o comprobación que sea necesario en la instalación debe realizarlo un electricista.

Atención

Solamente se deben utilizar piezas de repuesto autorizadas por Festo.

Page 15: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

3. Integración de CoDeSys en CMXR

GDCP-CMXR-C2-CS-ES 1205a 15

3. Integración de CoDeSys en CMXR El control multieje CMXR-C2 dispone de un PLC interno con CoDeSys V 2.3. Este PLC consiste en un paquete de software que opera junto con el control de movimiento en un mismo procesador.

El PLC sirve para integrar otros dispositivos periféricos, p. ej. elementos de mando e indicación o sistemas de cámara. Otros posibles usos son, por ejemplo, la comunicación vía Ethernet con otro sistema de mando o la utilización de programas de PLC para las aplicaciones correspondientes.

Nota

Inicializando la tarjeta Compact Flash junto con la Festo Configuration Tool (FCT), se pone en funcionamiento, en un único paso, todo el software del control de movimiento y el control de proceso.

Nota

El software del control de proceso se programa con el paquete CoDeSys de Festo. La FCT genera asimismo un proyecto base operativo para el PLC que el usuario debe cargar en el control como proyecto de arranque.

Para diseñar de manera eficiente los programas de aplicación, existe una interfaz de variables entre el control de movimiento y el control de proceso. Esta interfaz permite, p. ej. activar el control de movimiento, intercambiar variables para el programa FTL o intercambiar información sincronizadamente con Motion Task, p. ej. para aplicaciones de Tracking.

Figura 3.1 Integración del PLC y el RC en el CMXR

Control de movimiento

(RC)

Control de proceso (PLC CoDeSys)

Actuadores de cinemática

Dispositivos periféricos de proceso

CMXR

RcInterface

Page 16: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

3. Integración de CoDeSys en CMXR

16 GDCP-CMXR-C2-CS-ES 1205a

3.1 Distribución de tareas entre el control de movimiento y el control de proceso

Para poder utilizar correctamente el control multieje CMXR-C2, es importante comprender los principios de funcionamiento del sistema, así como la distribución de tareas entre el control de movimiento y el control de proceso derivada de esos principios.

El control de movimiento (RC) está subordinado al control de proceso (PLC). Dicho de otro modo: para poder trabajar con el control de movimiento, se requiere un proyecto ope-rativo para el PLC. Para más información, véase el capítulo 4. .

Para poder decidir si una tarea debe ser ejecutada por el control de movimiento o por el control de proceso, es importante conocer el modo de funcionamiento de ambos controles. Mientras que el PLC ejecuta sus programas cíclicamente, el RC lo hace línea por

línea y espera a que la respectiva instrucción haya sido ejecutada. Además, en el RC hay que tener en cuenta que el llamado “avance de proceso” procesa ciertas instrucciones “por adelantado” , por lo que no siempre es posible predecir el momento de su ejecución.

Con respecto a las interfaces, se deben tener en cuenta algunas particularidades externas, p. ej. en el caso de los módulos periféricos Ethernet, CAN y de0n. Mientras que algunos dispositivos periféricos están asignados de manera fija a una parte del control (p. ej. al control de proceso), otros elementos (p. ej. las salidas digitales) pueden estar asignados a una parte o a otra del control. A continuación explicaremos algunas de estas particularidades.

Atención

Si el control de movimiento (RC) está esperando una entrada, la ejecución de esta línea se detendrá hasta que la condición se cumpla.

Nota

Para conocer otras particularidades de la programación FTL, consulte el manual de programación.

Page 17: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

3. Integración de CoDeSys en CMXR

GDCP-CMXR-C2-CS-ES 1205a 17

3.2 Distribución típica de tareas

3.2.1 Control de movimiento (RC)

Programación FTL

Teach-In

Activación de todos los actuadores de la cinemática y de los actuadores auxiliares correspondientes

Activación de todas las entradas y salidas que se requieren, p. ej., para el movimiento de agarre

Trabajo con la unidad de mando manual

3.2.2 Control de proceso (PLC)

Programación basada en CoDeSys V 2.3

Activación de los grupos auxiliares adicionales que pueda haber, p. ej. bombas o sistemas de transporte

Programación de aplicaciones de nivel superior, p. ej. comunicación con unidades de célula antepuestas y pospuestas

3.3 Comunicación entre el control de proceso y el control de movimiento

Puesto que los dos controles operan en el mismo microprocesador, los datos se intercambian a gran velocidad por medio de una memoria compartida (shared memory). Para poder garantizar un rendimiento predecible del sistema, esta memoria está predefinida por el sistema y no se puede ampliar dinámicamente.

Esta interfaz de comunicación se denomina “RcInterface” e intercambia señales de control y estado, además de variables. La RcInterface está ubicada dentro de CoDeSys en la biblioteca RcInterface.lib y se puede acceder a ella a través de los bloques funcionales de dicha biblioteca o a través de sus variables globales.

Encontrará más información sobre el uso de la RcInterface en el capítulo 7 El proyecto base CoDeSys y en el capítulo 8 Interfaz de control RcInterface.

Page 18: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

4. Trabajar con CoDeSys

18 GDCP-CMXR-C2-CS-ES 1205a

4. Trabajar con CoDeSys CoDeSys es un paquete de software que sirve como herramienta de programación de PLC para el CMXR-C2. La FCT interactúa en cierta medida con el software CoDeSys y ayuda al usuario a crear rápidamente un proyecto operativo. Para evitar problemas y efectos no deseados, recomendamos respetar el procedimiento descrito por la FCT.

Puesto que los módulos periféricos se pueden utilizar parcialmente tanto en el RC como en el PLC, la configuración del hardware se debe guardar no sólo en el RC, sino también en el proyecto del PLC. Por eso, en el control siempre se ejecuta obligatoriamente un programa PLC. Los módulos periféricos se transfieren desde la FCT al proyecto CoDeSys.

Nota

La configuración del hardware se debe transferir desde la FCT al proyecto CoDeSys.

Atención

El manejo de proyectos CoDeSys en relación con el CMXR-C2 no es igual que en otros controles con CoDeSys de Festo. Para evitar inconsistencias en los datos, respete el orden de los pasos de trabajo.

4.1 Instalación de CoDeSys

Antes de poder instalar el plugin FCT para el CMXR, debe estar ya instalado CoDeSys provided by Festo.

Nota

Para poder trabajar con el CMXR sin errores, es necesario utilizar la versión de CoDeSys suministrada por Festo.

4.2 Instalación del sistema de destino (Target)

A cada versión de firmware se le ha asignado una versión del Target. Gracias a ello, se pueden diseñar y manejar proyectos con diferentes versiones de firmware.

Nota

El Target se añade manualmente mediante la función de CoDeSys “install Target” del entorno de CoDeSys.

Page 19: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

4. Trabajar con CoDeSys

GDCP-CMXR-C2-CS-ES 1205a 19

4.3 Parámetros de comunicación

Para poder trabajar en línea con el control CMXR-C2 en CoDeSys, los parámetros de comunicación deben estar ajustados al control. Si el proyecto CoDeSys se ha iniciado a través de la FCT, entonces ya se habrá establecido la ruta de acceso guardada en la FCT.

En la configuración del control en CoDeSys existe la posibilidad de buscar controles por medio de una función de búsqueda.

Nota

Los ajustes del firewall pueden influir en los resultados de la función de búsqueda.

Atención

Si hay varios controles en la red, asegúrese de que los datos se cargan en el control correcto.

Los parámetros de comunicación se deben verificar obligatoria-mente.

Page 20: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

4. Trabajar con CoDeSys

20 GDCP-CMXR-C2-CS-ES 1205a

4.4 Descarga

El proyecto del PLC puede guardarse en el CMXR mediante una descarga a través de la FCT. No obstante, para ejecutar el proyecto del PLC en el control, es necesaria una descarga mediante CoDeSys.

Nota

El usuario debe cargar siempre los proyectos del PLC en el control por medio de CoDeSys.

4.5 Creación de un proyecto de arranque

Para que, con cada nuevo arranque, el control ejecute e inicie automáticamente el

proyecto cargado, este proyecto debe estar guardado en el control como proyecto de arranque. El proyecto de arranque debe ser creado explícitamente por el usuario.

Nota

El usuario debe cargar siempre en el control cada proyecto de arranque por medio de CoDeSys.

Page 21: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

GDCP-CMXR-C2-CS-ES 1205a 21

5. Planificación de proyectos en FCT

En el control multieje CMXR-C2, la Festo Configuration Tool es el punto de partida de cualquier aplicación. Permite guardar todos los datos de una aplicación en un archivo de proyecto; esto diferencia al control CMXR de otros controles con CoDeSys de Festo. En el CMXR, el proyecto CodeSys se guarda y administra dentro del proyecto FCT y siempre se debe iniciar desde la FCT. Aunque el software CoDeSys se maneja de la forma habitual en 3S, la FCT accede a la configuración de control del proyecto CoDeSys.

Particularidades del trabajo con CoDeSys y CMXR-C2:

- La configuración del control se realiza en la FCT y se transfiere a CoDeSys.

- El proyecto CoDeSys se inicia desde la FCT.

- El proyecto CoDeSys se guarda en el proyecto FCT.

- La interfaz RcInterface está contenida en el proyecto base CoDeSys.

Como es habitual, la planificación del proyecto lleva a cabo de arriba a abajo en la FCT. A

diferencia del CMXR-C1 (que no tiene CoDeSys), en este caso la interfaz de control es siempre CoDeSys. Por consiguiente, cualquier conexión con un control de orden superior al CMXR-C2 se debe realizar siempre a través del PLC integrado y de sus vías de acceso.

Nota

La configuración de equipos en la FCT debe ser transferida a la configuración del control en CoDeSys.

Nota

El proyecto CoDeSys se inicia siempre desde la FCT.

5.1 Almacenamiento y administración de las versiones del proyecto

Para guardar y administrar versiones intermedias de los proyectos, recomendamos guardarlas en el menú Project --> Save As … de la FCT.

Para guardar y administrar versiones intermedias de los proyectos, recomendamos guardarlas en el menú Project --> Save As … de la FCT.

Page 22: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

22 GDCP-CMXR-C2-CS-ES 1205a

Nota

Para mantener la consistencia en los datos de proyecto de los programas FTL y del proyecto CoDeSys, recomendamos utilizar las funciones de almacenamiento y archivación de la FCT.

Page 23: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

GDCP-CMXR-C2-CS-ES 1205a 23

5.2 Carga/descarga de proyectos FCT

Al cargar y descargar en/desde la FCT, se transfiere al sistema de destino la configuración del control CMXR, además de los proyectos FTL y, si el usuario lo desea, el archivo fuente CoDeSys. La transferencia del archivo fuente CoDeSys permite guardar el proyecto CoDeSys en el control. La descarga del proyecto propiamente dicha o la creación de un proyecto de arranque se deben iniciar en el mismo software CoDeSys.

Nota

Para poder, a través de la FCT, cargar el proyecto CMXR completo desde un control al realizar una carga, es importante guardar el proyecto CoDeSys en el control. De ese modo se puede, efectuando una carga en un proyecto FCT, restaurar todos los datos de proyecto.

Page 24: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

24 GDCP-CMXR-C2-CS-ES 1205a

Nota

CoDeSys también ofrece la posibilidad de guardar el propio proyecto en el control. Este mecanismo también está disponible, pero no es compatible con una lectura de retorno de la FCT.

Atención

El proyecto CoDeSys, al ser cargado desde el control, sustituye al proyecto que hay en ese momento en la FCT, el cual se pierde definitivamente.

Atención

Hay ciertos archivos, p. ej. las respectivas bibliotecas, mapas de bits de visualización, archivos de configuración, etc. que no se guardan en el control. Para garantizar el almacenamiento completo de todo el proyecto, estos archivos se deben guardar de manera complementaria.

Page 25: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

GDCP-CMXR-C2-CS-ES 1205a 25

5.3 Creación de un proyecto CoDeSys en la FCT

Los siguientes pasos explican cómo se crea un proyecto CoDeSys en la FCT y qué entradas de configuración son relevantes para el control de proceso.

5.3.1 Página “Configuración”

En la página “Configuración” se configura el hardware disponible.

5.3.2 Página “Parámetros CPU”

En esta página se ajustan las direcciones IP de las interfaces Ethernet X5 y X7. En el estado en que se entrega el equipo al cliente, solamente está activado el puerto X7 con un ajuste predeterminado. Al realizar la primera configuración, recomendamos ajustar los parámetros de red mediante un lector de tarjetas de memoria flash o mediante un cable Ethernet de conexión intermedia.

La conexión X7 está diseñada para redes globales con pasarela (gateway).

La conexión X5 está diseñada para una red local sin pasarela. Antes de utilizarla, primero es preciso activarla.

Page 26: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

26 GDCP-CMXR-C2-CS-ES 1205a

Nota

Recomendamos utilizar un switch Ethernet adecuado para reducir al máximo la carga de la red Ethernet.

Nota

El control multieje CMXR-C2 no es compatible con DHCP.

Atención

Las conexiones X5 y X7 no deben estar en la misma red

Page 27: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

GDCP-CMXR-C2-CS-ES 1205a 27

5.3.3 Página “Módulos periféricos”

Los módulos periféricos que se agregaron a la página “Configuración”, a excepción del módulo Profibus-Master, también se parametrizan allí. En CoDeSys, las variables se utilizan directamente a través del nombre adjudicado en la FCT como acceso a variables del sistema o directamente a través de las direcciones de entrada y salida.

Como opción predeterminada, las salidas están asignadas al PLC. Marcando una casilla de verificación (columna RC) se pueden asignar salidas digitales a la robótica (RC).

Nota

Después de cualquier cambio en la pestaña de configuración de la FCT, se debe actualizar la configuración del control en CoDeSys, véase el capítulo 3

Page 28: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

5. Planificación de proyectos en FCT

28 GDCP-CMXR-C2-CS-ES 1205a

5.3.4 Página “CoDeSys”

En la página “CoDeSys” se puede transferir la configuración de equipos al proyecto CoDeSys. El estado del proyecto CoDeSys indica si es necesaria una actualización. La actualización solamente se puede efectuar cuando el proyecto CoDeSys no está abierto. La actualización de la configuración de equipos no influye en el programa PLC en CoDeSys y se puede repetir en cualquier momento.

Al pulsar el botón “Start CoDeSys” en un proyecto nuevo, se inicia el proyecto base CoDeSys previamente configurado (en el que luego se trabaja). En el menú Components --> CoDeSys se puede devolver el proyecto a su estado original.

Atención

Si se devuelve el proyecto CoDeSys a su estado original, se perderán todos los cambios realizados en él.

Atención

Si la configuración de control de CoDeSys se actualiza a través de la FCT, también se calculan de nuevo las direcciones; además se pierden las modificaciones manuales, por lo que se deben evitar.

Page 29: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

6. Periferia

GDCP-CMXR-C2-CS-ES 1205a 29

6. Periferia

El control multieje CMXR-C2 permite la conexión de periféricos de diversos tipos a través de módulos. La unidad central CMXR tiene algunos módulos integrados y puede ampliarse mediante módulos para conexión en serie.

Nota

Por favor, vea más información al respecto en el manual del sistema.

6.1 Información general de módulos para conexión en serie

Cada módulo para conexión en serie se agrega en la FCT de la unidad central y puede ser configurado en el menú “Módulos periféricos”. Como configuración predeterminada el primer módulo está preasignado mediante una tarjeta I/O con variables de sistema fijas.

En principio todas las entradas y salidas están asignadas a los módulos periféricos CoDeSys. El acceso de lectura a las variables de entrada de los módulos también es posible en el RC para la mayoría de los módulos; el acceso de escritura a las variables de salida del RC puede ser activado, si es preciso, marcando la casilla.

Nota

Los nombres utilizados dentro de la configuración del módulo

están disponibles en CoDeSys como variables de sistema y deben ser inequívocos.

Nota

El acceso de escritura a las salidas debe ser asignado al PLC o al RC.

Page 30: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

6. Periferia

30 GDCP-CMXR-C2-CS-ES 1205a

Nota

La configuración y uso de los siguientes módulos se lleva a cabo en CoDeSys:

- Interfaz serial X3/ X9

- CAN X4, periféricos

- Profibus Master CECX-F-PB-V1

La configuración del Profibus Slave CECX-F-PB-S-V1 se realiza en FCT.

6.2 Módulos CAN Master X4/ X6

El control multieje CMXR-C2 está equipado con dos conexiones CAN Master; - la conexión X6 fix está asignada al control de movimiento y

- la conexión X4 fix está asignada al control de proceso.

Mientras que los ajustes de la X4 se pueden elegir libremente, la X6 tiene asignados de forma fija los ajustes del “Festo DriveBus”. La conexión X4 Master se encuentra en la configuración de control; allí se configurarán los equipos CAN Slave que se van a conectar.

Es posible cambiar la configuración y convertir el CAN Master en un CAN Slave para operar el CMXR como equipo CAN en una red CAN.

Page 31: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

6. Periferia

GDCP-CMXR-C2-CS-ES 1205a 31

Nota

Es posible agregar otros archivos de configuración EDS en el directorio …\FESTO\CoDeSys V2.3\Targets\Festo\CMXR-C2\io. Los nuevos archivos añadidos se activarán después de haber reiniciado CoDeSys.

6.3 Interfaz serial X9 RS232

La interfaz serial X9 está asignada al control de proceso y se accede a ella desde CoDeSys a través de las bibliotecas SysLibCom.lib y SysLibComEx.lib. Para una descripción más exacta del uso de esta interfaz serial, consulte la ayuda de la función de biblioteca

respectiva.

6.4 Módulo Profibus Master

Con el módulo para conexión en serie CECX-F-PB-V1 una red Profibus puede operar en el CMXR. La tarjeta se agrega en la FCT de la unidad central y el resto de los ajustes se deben llevar a cabo a continuación en CoDeSys.

Nota

Es posible agregar otros archivos de configuración GSD en el directorio …\FESTO\CoDeSys V2.3\Targets\Festo\CMXR-C2\io. Los

nuevos archivos añadidos se activarán después de haber reiniciado CoDeSys.

Page 32: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

6. Periferia

32 GDCP-CMXR-C2-CS-ES 1205a

6.5 Módulo Profibus Slave

Se puede adquirir para el control multieje CMXR-C2 una tarjeta Profibus Slave que solamente se puede asignar al control de proceso. Con esta tarjeta es posible incorporar

el CMXR como equipo Profibus Slave en una red Profibus. La dirección Profibus se debe ajustar tanto con el microinterruptor en la misma tarjeta, como a través de la entrada para la dirección de estación en la FCT.

El módulo permite un intercambio de datos cíclicos de libre elección de 12, 32 o 64 bytes.

Durante la configuración en una red Profibus se debe asegurar que a los dos primeros slots se les asigne un módulo “empty” (vacío).

Encontrará más información acerca del uso del CECX-F-PB-S-V1 en la documentación del

módulo.

Page 33: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

7. El proyecto base CoDeSys

GDCP-CMXR-C2-CS-ES 1205a 33

7. El proyecto base CoDeSys El proyecto base CoDeSys del CMXR es siempre el punto de partida de cualquier programa PLC específico de una aplicación. Si el proyecto CoDeSys ha sido creado mediante la FCT, ya estarán integradas en él las particularidades propias del sistema, como los módulos periféricos y la funcionalidad de la interfaz de comunicación entre el RC y el PLC. La inter-faz de comunicación (RcInterface, RcIf) está representada por la biblioteca RcInterface.lib. Esta biblioteca ya se encuentra integrada en el proyecto.

Partes del proyecto base CoDeSys del CMXR:

- RC_OUTPUT_UPDATE(FUN)

- RC_INTERFACE(PRG)

- RC_STANDALONE(PRG)

- MotionTask

- Variables globales

- Variables del sistema

7.1 Función RC_OUTPUT_UPDATE

La función interna RC_OUTPUT_UPDATE se utiliza para hacer visibles en el PLC las salidas de los módulos periféricos que se están asignadas al RC.

Véase también el capítulo 6 Periferia.

Page 34: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

7. El proyecto base CoDeSys

34 GDCP-CMXR-C2-CS-ES 1205a

Nota

En la función RC_OUTPUT_UPDATE, el usuario no debe realizar ningún cambio.

7.2 Programa RC_INTERFACE

El programa RC_INTERFACE contiene la activación de los módulos funcionales de la RcInterface. Las instancias de dichos módulos están contenidas en las variables globales. De esa manera, los módulos pueden ser utilizados por la aplicación para varias tareas. Los módulos se describen con más detalle en la sección 8.1. Para que, al efectuar una actualización, las futuras ampliaciones de la interfaz no den lugar a complicaciones en un programa PLC ya existente, en el programa generado por la FCT no se debe realizar ningún

cambio ni se deben añadir subprogramas. Para utilizar los módulos se debe acceder a ellos directamente a través de las instancias de las variables globales.

Nota

En el programa RC_INTERFACE, el usuario no debe realizar ningún cambio.

7.3 Programa RC_STANDALONE

Para poder iniciar el control de movimiento, se requieren algunas señales que es obligatorio transferir por medio de la RcInterface. Por razones históricas, esta

configuración mínima recibe el nombre de “stand-alone”, lo que equivale a decir que el control multieje CMXR es dirigido sin estar subordinado a un PLC, es decir, directamente a través de, por ejemplo, la unidad de mando manual. Las señales de E/S necesarias en este caso son mapeadas a la primera tarjeta de E/S en el proyecto base. En el supuesto más sencillo, no se requiere ninguna programación adicional en CoDeSys para poder trabajar con el control de movimiento. La descripción de señales de la variante stand-alone se puede consultar en el manual del sistema o en la descripción del corres-pondiente módulo RcInterface.

Page 35: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

7. El proyecto base CoDeSys

GDCP-CMXR-C2-CS-ES 1205a 35

Nota

El programa CoDeSys RC_STANDALONE puede ser modificado o borrado por el usuario. En ese caso, el propio usuario será res-ponsable del manejo de la RcInterface.

7.4 Motion Task

Para ejecutar programas de aplicación en el PLC sincronizadamente con el procesamiento de tareas (p. ej. para Tracking), en el Target de CoDeSys se encuentra el llamado “Motion Timer”. En este intervalo de tiempo, cuyo valor depende del sistema, se realiza la actuali-zación y la planificación de trayectoria del control de movimiento.

La Motion Task (tarea de movimiento) ya está en el proyecto base y se encarga de activar

el programa RC_INTERFACE. Si la aplicación lo requiere, el usuario puede agregar a la Motion Task otras activaciones, si bien debe procurar dejar libres al RC todos los recursos posibles.

Se deben respetar los siguientes ajustes para la Motion Task:

Nombre: MotionTask

Prioridad: 1

Tipo: controlada externamente por el suceso “Motion Timer”

Watchdog: debe estar activado

Figura 7.1 Configuración de una Motion Task con Motion Timer en la configuración de tareas

Page 36: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

7. El proyecto base CoDeSys

36 GDCP-CMXR-C2-CS-ES 1205a

Atención

Cuando realice una depuración dentro de Motion Task, recuerde que al detener la tarea se detendrá la definición de valores de nominales. Durante un movimiento en curso, esto puede producir un salto hasta el valor nominal 0 (sin rampa). Si eso sucede, la mecánica soportará una carga considerable.

Los programas de aplicación que no haya que ejecutar obligatoriamente en la retícula de tiempo de Motion Task, se deben ejecutar en otras tareas cuya prioridad sea menor. Para ello, el Target de CoDeSys ofrece otros temporizadores predefinidos:

IO Timer 40ms

Ciclo de accionamiento reducido con sincronía de fases y con una duración de 40 ms.

IO Timer 200ms

Ciclo de accionamiento reducido con sincronía de fases y con una duración de 200 ms.

Como es lógico, se pueden definir otros temporizadores además de estos. Recuerde que ninguna tarea debe ser más rápida ni tener una prioridad más alta que la tarea Motion Task.

Atención

Si en CoDeSys se crean tareas más rápidas o con mayor prioridad que Motion Task, el sistema puede perder su estabilidad. En el peor de los casos, la actualización cíclica del control de movimiento ya no será posible. Si eso sucede, el funcionamiento de la cinemática ya no será seguro. Según los casos, incluso pueden llegar a producirse saltos del valor nominal, lo que generaría una gran carga sobre la mecánica.

7.5 Variables globales

El proyecto base contiene variables globales de RcInterface que el sistema proporciona y que pueden ser utilizadas por la aplicación.

Las variantes globales de RcInterface se encuentran dentro de CoDeSys, en las variantes globales de la biblioteca RcInterface.lib.

Page 37: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

7. El proyecto base CoDeSys

GDCP-CMXR-C2-CS-ES 1205a 37

7.5.1 RcInterface: pestaña “Variables”

Visualización en el PLC

Visualización en el RC (TeachView)

La variable RcIfReg accede a zonas de memoria que pueden ser descritas o leídas por el PLC. Estas variables de matriz de los diferentes tipos de datos básicos permiten al RC y al PLC intercambiar datos que el usuario puede definir libremente.

RcToPlc --> Del control de movimiento al control de proceso (PLC sólo lectura)

PlcToRc --> Del control de proceso al control de movimiento (PLC sólo escritura)

Aunque los tipos de datos complejos CartPos y AxisPos se encuentran en la pestaña que describimos en este apartado, no se intercambian cíclicamente como los demás datos, si no que solamente se transfieren índice por índice a través de los respectivos módulos funcionales de RcInterface.lib.

Véase también el capítulo 9.4.5 Acceso a las posiciones de eje, AxisPos y CartPos.

Nota

Por motivos de rendimiento, las variables de los tipos de datos complejos CartPos y AxisPos solamente se pueden leer y escribir por medio de los respectivos módulos de RcInterface.lib

7.5.2 RcInterface: búfer de mensajes

La RcInterface facilita al usuario una zona de memoria en la que se puede leer el búfer de mensajes del RC mediante un módulo de la biblioteca.

Page 38: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

7. El proyecto base CoDeSys

38 GDCP-CMXR-C2-CS-ES 1205a

Véase también el capítulo 8.3 Acceso al sistema de mensajes.

7.5.3 RcInterface: variables de instancia

Los módulos funcionales de RcInterface.lib se activan en el programa RC_INTERFACE. A estos módulos se accede a través de sus instancias globalmente declaradas.

7.5.4 Variables de salida RC

Tras una actualización de la configuración del control en CoDeSys, cada salida asignada al RC se encontrará en las variables globales, bajo el punto RC_OUTPUT_VARIABLES.

Nota

El acceso a las salidas que han sido asignadas al RC solamente puede ser para lectura.

Page 39: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

8. Interfaz de control RcInterface

GDCP-CMXR-C2-CS-ES 1205a 39

8. Interfaz de control RcInterface La interfaz de control a través del PLC interno permite controlar el RC desde el PLC para, de ese modo, dirigir el robot desde la aplicación. Las señales de mando pueden ser editadas directamente en el PLC o pueden ser transmitidas a un control de orden superior a través de los módulos periféricos de E/S, el Profibus, el Can-Bus o Ethernet.

Los módulos necesarios para hacerlo se encuentran en la biblioteca de CoDeSys (RcInterface.lib) y están ya instanciados en el proyecto base CoDeSys del CMXR. A las funciones de los módulos de la biblioteca se accede a través de las variables de instancia globales predefinidas de cada módulo.

8.1 Biblioteca RcInterface.lib

La biblioteca RcInterface.lib facilita al usuario una serie de módulos funcionales que permiten activar el control de movimiento. Esta biblioteca está compuesta por cuatro subcarpetas que dividen en zonas parciales las funciones implementadas.

- Interna

Funciones internas que no son utilizadas por el usuario.

- CDSA

Bloques funcionales para interactuar con la unidad de mando manual.

- RobotGlobal

Bloques funcionales globales de robot que solamente se pueden instanciar y activar

una vez en el control.

- RobotLocal

Bloques funcionales locales de robot que solamente se pueden instanciar y activar una vez para cada robot. El índice de robot está limitado en este momento al valor cero.

Nota

Los módulos se utilizan mediante las variables de instancia predefinidas, que se encuentran dentro del proyecto base CoDeSys, en las variables globales ubicadas en (RC_INTERFACE_INSTANCES).

8.2 Módulos de visualización de RcInterface.lib

El usuario puede visualizar cada módulo de la biblioteca. Esto le permite familiarizarse de un modo rápido y fácil con las variadas funciones de la interface.

Page 40: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

8. Interfaz de control RcInterface

40 GDCP-CMXR-C2-CS-ES 1205a

Mediante símbolos sustitutivos, se transmite a los elementos de visualización la instancia del respectivo módulo funcional.

Por medio de las visualizaciones contenidas en el proyecto base CoDeSys, la RcInterface se puede manejar sin ninguna programación adicional. Los objetos de visualización están

reunidos en grupos lógicos. El modo de manejar los elementos de visualización se puede deducir a partir de la descripción de los diferentes módulos funcionales.

Page 41: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

8. Interfaz de control RcInterface

GDCP-CMXR-C2-CS-ES 1205a 41

Nota

Las visualizaciones pertenecientes al programa RC_Interface ya están incluidas en el proyecto base CoDeSys.

Nota

Para más información sobre cómo utilizar la visualización CoDeSys, consulte la ayuda de CoDeSys.

8.3 Acceso al sistema de mensajes

La página RC del control multieje CMXR-C2 cuenta con un sistema de mensajes cuyo

contenido se puede examinar p. ej. a través de la unidad de mando manual CDSA. Puesto que este sistema de mensajes se encuentra en el RC, cuando el usuario quiera utilizar un mensaje en el PLC, deberá transferirlo al búfer de mensajes del PLC.

Por motivos de rendimiento, aunque el búfer de mensajes del PLC se encuentra como variable global en la biblioteca RcInterface.lib, la lectura de los mensajes se debe iniciar desde la aplicación, y por tanto es una acción que se confía al usuario.

Nota

Aquí solamente describiremos el sistema de mensajes desde la perspectiva del PLC. Para más información, consulte el manual de programación FTL Basis GDCP-CMXR-SW-...

Nota

Cuando se genera un mensaje, se le asigna automáticamente un número de componente. Este número permite determinar qué zona del control multieje CMXR ha emitido la alarma. Los mensajes del PLC definidos por el usuario tienen el número de componente 100.

Nota

Si en este búfer de mensajes se encuentran activados uno o más errores, el control de movimiento efectuará, en la medida de lo posible, una parada automática de los ejes de la cinemática dentro de la trayectoria marcada.

Page 42: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

8. Interfaz de control RcInterface

42 GDCP-CMXR-C2-CS-ES 1205a

Nota

El sistema de mensajes interno del PLC CoDeSys V2.3 está conectado al sistema de mensajes del control de movimiento. El uso de este sistema de alarmas no genera por tanto ninguna visualización en la unidad de mando manual ni produce ninguna parada automática del movimiento en caso de error. Para influir sobre el control de movimiento, se deben utilizar los módulos de mensaje de la biblioteca RcInterface.lib.

8.3.1 Funciones disponibles

Para acceder al búfer de mensajes del RC, existen en la biblioteca RcInterface.lib los siguientes módulos:

- RcIfMsgRead

- RcIfMsgQuit

- RcIfMsgSet

El modo de utilizar estos módulos aparece en la descripción de cada respectivo módulo, véase también el capítulo 9.4 Módulos globales de robot.

8.3.2 El búfer de mensajes RcIfMsgBuffer

El búfer de mensajes se encuentra en el PLC en forma de matriz global y se puede actualizar a través del módulo RcIfMsgRead. Esta matriz está ubicada en las variables

globales de RcInterface.lib y tiene un tamaño de 256 elementos de tipo TRcIfMsg.

Variable Tipo Significado

MsgClass DINT Clase de mensaje

MsgNr DINT Número de mensaje

CompNr DINT Número de componente

InstNr DINT Número de instancia

TimeStamp DATE_AND_TIME Fecha y hora registradas

Texto STRING(255) Texto del mensaje

Tabla 8.1 Tipo de datos TRcIfMsg

8.3.3 Clave de mensaje

La clave de mensaje está formada por el número de componente, el número de mensaje y el número de instancia (p. ej. componente 2000, mensaje 200, instancia: 17 = clave de mensaje 2000_200_17).

Page 43: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

8. Interfaz de control RcInterface

GDCP-CMXR-C2-CS-ES 1205a 43

8.3.4 Número de componente

El número de componente indica desde qué componente se ha transmitido el mensaje. Para el módulo RcIfMsgSet, es decir, para los mensajes procedentes del PLC, se ha establecido el número de componente 100. Eso implica que todos los mensajes trans-mitidos desde el PLC a través de este módulo se encuentran en el búfer de mensajes con el número de componente 100.

8.3.5 Clases de mensajes

Para diferenciar el tratamiento, los mensajes se dividen en 32 clases. La división de los mensajes en clases ayuda al usuario a programar la reacción ante dichos mensajes. El usuario no tiene por qué programar una reacción para cada mensaje, sino que puede definir reacciones para cada clase de mensajes.

Para programar en CoDeSys se deben utilizar las clases 7 hasta 9: Clase Descripción Reacción

7 Error El robot se para.

8 Advertencia Se emite una advertencia y el robot continúa moviéndose.

9 Información Se emite una información y el robot continúa moviéndose.

Si se usan los ajustes estándar en CDSA no se mostrarán los mensajes de la clase 9. Para mostrar el mensaje se debe realizar una modificación en el ajuste de filtro.

8.3.6 Número de mensaje

El número de mensaje indica qué texto de mensaje definido por el usuario se debe transmitir de entre los mensajes configurados en la FCT.

8.3.7 Número de instancia

A cada mensaje se le puede dar, en el momento de transmitirlo (con la función RcIfMsgSet), un número de instancia. Este número de instancia permite diferenciar, además, los mensajes que tienen la misma clave de mensaje. El número de instancia también puede ser un “Handle”, y por tanto ser un número negativo. En el búfer de mensajes, los mensajes que tienen la misma clave y distinto número de instancia son tratados como mensajes diferentes, mientras que aquellos que tienen el mismo número de instancia son tratados como mensajes idénticos.

8.3.8 Fecha y hora registradas

El registro de fecha y hora del mensaje se guarda en el búfer con el tipo de datos DATE_AND_TIME habitual en CoDeSys. Para más información sobre el tipo de datos DATE_AND_TIME, consulte la ayuda de CoDeSys.

8.3.9 Texto del mensaje

El texto de mensaje definido por el usuario se configura en la FCT. Si en el texto del mensaje se introduce la secuencia de caracteres %1,%2,%3 o %4, dicha secuencia será

Page 44: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

8. Interfaz de control RcInterface

44 GDCP-CMXR-C2-CS-ES 1205a

sustituida por el respectivo parámetro, que se adjudica a través del módulo RcIfMsgSet

del mensaje.

La cadena de texto puede tener una longitud de 255 caracteres.

8.3.10 Cambio de idioma

El usuario puede cambiar el idioma del búfer de mensajes. Al leer el búfer, puede ajustar el idioma deseado seleccionando para ello su correspondiente código ISO (p. ej. “de”, “en” ). En el manual del sistema se indican los idiomas admitidos por el sistema.

8.3.11 Configuración en la FCT de mensajes definidos por el usuario

El sistema de mensajes del CMXR ofrece la posibilidad de configurar en la FCT, a través del

PLC, mensajes predefinidos (véase también el capítulo 9.4.4).

En la opción de menú “Mensajes de usuario/User messages”, el usuario puede crear los mensajes en el idioma deseado. Si es necesario, los textos se pueden traducir a otro idioma en un recuadro de visualización formado por dos líneas.

A cada mensaje se le pueden adjudicar hasta 4 parámetros y un número de instancia. Estos datos son transferidos al transmitir el mensaje e introducidos en el lugar correspondiente del texto del mensaje. El símbolo sustitutivo correspondiente a los 4 parámetros es introducido en el texto del mensaje con la secuencia de caracteres %1, %2, %3 y %4.

Los mensajes de alarma también pueden ser parámetros formados por una cadena de caracteres (16 caracteres como máximo).

Configuración ampliada de los parámetros:

%1 Emisión de un valor entero

%1b Emisión de un valor entero binario

%1x Emisión de un valor entero hexadecimal

%1f3 Emisión de un número real con un máximo de 9 cifras decimales

%n Emisión del número de instancia

Nota

Para poder transmitir mensajes recién parametrizados, es preciso reiniciar el control.

Page 45: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

8. Interfaz de control RcInterface

GDCP-CMXR-C2-CS-ES 1205a 45

8.3.12 Edición de mensajes fuera de la FCT

En algún momento puede que sea necesario editar la lista de mensajes fuera de la FCT, p. ej. para enviar los mensajes definidos a una agencia de traducción. Con este fin, mediante la función “Download to Directory” se puede guardar en el PC una copia de la tarjeta flash del controlador. En la carpeta \application\control\text, el usuario puede luego acceder a los respectivos archivos de idioma de los mensajes. A continuación, mediante la instrucción “Upload from Directory”, los mensajes se pueden volver a incorporar a la FCT.

8.4 Registro de variables Plc_To_Rc/Rc_To_Plc El sistema ofrece la posibilidad de transferir variables entre el RC y el PLC. Estas variables globales ya se encuentran guardadas en la biblioteca RcInterface.lib y se pueden utilizar directamente en el programa.

8.4.1 Tipos de datos básicos

Los tipos de datos básicos son actualizados directamente por el sistema y se pueden utilizar en el programa sin necesidad de una declaración adicional. El usuario sólo nece-sita tener en cuenta la dirección de transferencia de la respectiva variable.

Cada una de las siguientes variables está disponible como matriz [0…255]: - Bool: RcIfReg.RcToPlc_Bool[] / RcIfReg.PlcToRc_Bool[]

- DWord: RcIfReg.RcToPlc_DWord[] / RcIfReg.PlcToRc_DWord[]

- Dint : RcIfReg.RcToPlc_Dint[]/RcIfReg.PlcToRc_Dint[]

- Real: RcIfReg.RcToPlc_Real[] / RcIfReg.PlcToRc_Real[]

8.4.2 Tipos de datos complejos

Por motivos de rendimiento, los tipos de datos complejos no se actualizan de forma automática. Esta transferencia se debe iniciar a través de los módulos RcIfRegAxisPos y RcIfRegCartPos (con respecto al uso de los módulos, véase también el capítulo 9.4.5).

Cada una de las siguientes variables está disponible como matriz [0…255]: - AxisPos : RcIfReg.RcToPlc_AxisPos[] / RcIfReg.PlcToRc_AxisPos[]

- CartPos: RcIfReg.RcToPlc_CartPos[] / RcIfReg.PlcToRc_CartPos []

Nota

En el programa RC_INTERFACE se activan cíclicamente los módulos RcIfRegAxisPos y RcIfRegCartPos. Por consiguiente, las variables AxisPos y CartPos pueden utilizarse directamente.

8.5 Mensajes de error de la biblioteca RcInterface.lib

Cada módulo de la biblioteca RcInterface tiene – cuando es necesario – una salida ErrorID del tipo de datos TRcIfErrorID. La descripción del mensaje de error se puede consultar en las constantes globales de RcInterface.lib.

Page 46: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

46 GDCP-CMXR-C2-CS-ES 1205a

9. Descripción de la biblioteca RcInterface.lib

9.1 Funciones

A continuación figura una tabla con las funciones más importantes:

Función Nombre del módulo Capítulo

Estado del robot RcIfRobotData 9.5.4

Parada de emergencia Establecimiento de la señal de PARADA DE

EMERGENCIA

RcIfModeControl 9.5.2

Selección del modo de funcionamiento manual/automático RcIfModeControl 9.5.2

Activación de los actuadores en modo automático RcIfModeControl 9.5.2

Activación de los actuadores en modo manual RcIfModeControl 9.5.2

Demanda del control de nivel superior RcIfWriteAccess 9.5.3

Funciones de avance por impulsos RcIfJogControl 9.5.6

Inicio/parada de programas RcIfProgramControl 9.5.8

Establecer/leer override RcIfOverride 9.5.7

Leer el búfer de mensajes RcIfMsgRead 9.4.2

Page 47: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 47

9.2 Visión de conjunto de los módulos

9.2.1 Unidad de mando manual CDSA

Estructura Nombre del

módulo/nombre de la instancia

Obligatorio el control de nivel superior

Descripción

CDSA CDSAIfGetKeys/

FBCDSAIfGetKeys

- Consulta de las teclas de la unidad de mando

manual

CDSAIfSetProcessLed/

FBCDSAIfSetProcessLed

- Establecimiento de los LED de proceso en la unidad

de mando manual

9.2.2 Robot global

Estructura Nombre del

módulo/nombre de la instancia

Obligatorio el control de nivel superior

Descripción

RobotGlobal RcIfRobotUpdateGlobal/

FBRobotUpdateGlobal

- Actualización de los datos de interfaz globales de

robot

RcIfMsgRead/

FBMsgRead

- Lectura del búfer de mensajes

RcIfMsgQuit/ FBMsgQuit Sí Acuse de recibo del búfer de mensajes

RcIfMsgSet/

FBMsgSet

- Transmisión de un mensaje desde el PLC

RcIfRegAxisPos/

FBRegAxisPos

- Acceso a la matriz común de posiciones de eje

RcIfRegCartPos/

FBRegCartPos

- Acceso a la matriz cartesiana común de posiciones

Page 48: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

48 GDCP-CMXR-C2-CS-ES 1205a

9.2.3 Robot local

Estructura Nombre del

módulo/nombre de la instancia

Obligatorio el control de nivel superior

Descripción

RobotLocal RcIfRobotUpdateLocal/

FBRobotUpdateLocal

- Actualización de los datos de interfaz globales de

robot

RcIfModeControl/

FBModeControl

- Modos de funcionamiento del control

RcIfRobotData/

FBRobotData

- Lectura de los datos de estado del robot

RcIfWriteAccess/

FBWriteAccess

- Administración del control de nivel superior

RcIfOverride/

FBJogControl

Sí Establecimiento del override

RcIfJogControl/

FBJogControl

Sí Avance por impulsos del robot en modo manual

RcIfProgramControl/

FBProgramControl

Sí Control de programa

RcIfSetRefSys/

FBSetRefSys

Sí Establecimiento del sistema de referencia

RcIfSetTool/

FBSetTool

Sí Establecimiento de la Tool

9.3 Módulos de la unidad de mando manual/módulos CDSA

9.3.1 Datos de la unidad de mando manual, CDSAIfGetKeys

Con este módulo se puede leer el estado de las teclas en la unidad de mando manual CDSA. El estado TRUE corresponde a la tecla pulsada y el FALSE, a la tecla no pulsada. Cada tecla posee un código de tecla a través del cual se puede acceder a la matriz que es

devuelta por el módulo. La emisión de datos se realiza cíclicamente.

Para que el estado de la tecla JogKey se pueda leer, deben estar parametrizadas los ejes/las coordenadas correspondientes y el usuario registrado debe poseer permiso de escritura.

Page 49: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 49

Tecla Código de tecla Tecla Código de tecla

F1 1 JogKey1 + 33

F2 2 JogKey2 - 54

Mot 61 JogKey2 + 47

Rob 60 JogKey3 - 56

Jog 59 JogKey3 + 48

F/B 58 JogKey4 - 53

Step 57 JogKey4 + 46

V- 36 JogKey5 - 52

V+ 37 JogKey5 + 45

Start 31 JogKey6 - 51

Stop 49 JogKey6 + 44

JogKey1 - 35 2nd 55

Tabla 9.1 Asignación de teclas de la unidad de mando manual CDSA-D1

Variables de salida

Variable Tipo Significado

CDSA_Ready BOOL Unidad de mando manual lista

Keys ARRAY [0..63] OF BOOL Estado de las teclas

Tabla 9.2 Salidas del módulo CDSAIf GetKeys

CDSA_Ready: BOOL

Esta salida señaliza que la unidad de mando manual CDSA está lista. Si la unidad está desconectada, el estado de esta salida será FALSE.

Keys: ARRAY[0..63] OF BOOL

Matriz con la información de estado de las teclas individuales. A las teclas se accede a

través del código de tecla, p. ej. Key[1] corresponde a la tecla F1.

9.3.2 LED de proceso de la unidad de mando manual, CDSAIfSetProcessLed

Este módulo funcional permite activar el LED rotulado con la inscripción “Process” en la unidad de mando manual CDSA. Existe la posibilidad de activar solamente este LED. Todos los demás LED son administrados por el sistema y activados según corresponda.

Page 50: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

50 GDCP-CMXR-C2-CS-ES 1205a

Variables de entrada

Variable Tipo Significado

Execute BOOL Ejecutar instrucción

On BOOL LED de proceso OFF/ON

Attribute BYTE Atributo del LED

Tabla 9.3 Entradas del módulo CDSAIfSetProcessLED

Execute: BOOL

Ejecutar instrucción.

On: BOOL

Con esta entrada se conecta el LED de proceso. La señal debe ser estática.

Attribute: atributo LED

Esta entrada permite asignar al LED un atributo. Posibilidades:

Atributo Valor Significado

LedGreen 0 El LED se ilumina en verde

LedGreenBlinking 1 El LED parpadea en verde

Tabla 9.4 Atributos del LED

Variables de salida

Variable Tipo Significado

Done BOOL Unidad de mando manual lista

Error BOOL Error

Tabla 9.5 Salidas del módulo CDSAIfSetProcessLED

Done: BOOL

La función se ha ejecutado.

Error: BOOL

Al ejecutar la función se ha producido un error.

Page 51: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 51

9.4 Módulos globales de robot

9.4.1 Inicialización y actualización, RcIfRobotUpdateGlobal

Para intercambiar con el RC los datos de los bloques funcionales globales de robot, el módulo RcIfRobotUpdateGlobal se activa cíclicamente en el programa RC_INTERFACE.

Variables de salida

Variable Tipo Significado

InitReady BOOL Inicialización concluida

Tabla 9.6 Salidas del módulo RclfRobotUpdateGlobal

InitReady: BOOL

Esta salida señaliza que el robot está inicializado y que los módulos globales del robot están listos para la ejecución.

9.4.2 Lectura del búfer de mensajes, RcIfMsgRead

Con el módulo RcIfMsgRead, el usuario puede leer el búfer de mensajes del sistema robótico en el idioma deseado. El propio búfer de mensajes está guardado en el sistema como una matriz global; para más información, véase el capítulo 8.3

Variables de entrada

Variable Tipo Significado

Execute BOOL Inicio del proceso de lectura

Language String(2) Selección del idioma según ISO 639

Tabla 9.7 Entradas del módulo RcIfMsgRead

Page 52: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

52 GDCP-CMXR-C2-CS-ES 1205a

Execute: BOOL

Con esta entrada se inicia el proceso de lectura. La entrada debe permanecer como TRUE hasta que termine el proceso.

Language: String(2)

Con esta entrada, el búfer de mensajes se puede leer en el idioma deseado a través del código de idioma recogido en la norma ISO 639. En el manual del sistema se indican los idiomas admitidos por el sistema.

Atributo Significado

de alemán

en inglés

Tabla 9.8 Códigos de idioma según ISO 639

Variables de salida

Variable Tipo Significado

RobotError BOOL Unidad de mando manual lista

Done BOOL Ejecución concluida sin errores

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.9 Salidas del módulo RcIfMsgRead

RobotError: BOOL

Esta salida señaliza que en el RC hay por lo menos un error pendiente. La existencia de un error pendiente impide la puesta en funcionamiento del robot. Para borrar el error: véase el módulo RcIfMsgQuit.

Done: BOOL

La lectura del búfer de mensajes ha concluido con éxito.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la

salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Page 53: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 53

9.4.3 Borrado del búfer de mensajes, RcIfMsgQuit

El borrado del búfer de mensajes borra siempre todos los mensajes pendientes. No es posible un acuse de recibo selectivo de los mensajes.

Variables de entrada

Variable Tipo Significado

Execute BOOL Acuse de recibo de todos los mensajes activos

Tabla 9.10 Entradas del módulo RcIfMsgQuit

Execute: BOOL

Con esta entrada se acusa recibo de todos los mensajes activos pertenecientes a todas las clases.

Variables de salida

Variable Tipo Significado

Done BOOL Ejecución concluida sin errores

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.11 Salidas del módulo RcIfMsg

Done: BOOL

El borrado del búfer de mensajes ha concluido con éxito.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Page 54: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

54 GDCP-CMXR-C2-CS-ES 1205a

9.4.4 Transmisión de un mensaje, RcIfMsgSet

Utilizando el módulo funcional RcIfMsgSet y el número correspondiente, el usuario puede guardar, en el idioma deseado, mensajes predefinidos en la FCT desde el PLC.

Variables de entrada

Variable Tipo Significado

Execute BOOL Ejecutar la transmisión del mensaje

MsgClass DINT Clase de mensaje

MsgNr DINT Número de mensaje (número de la lista de

mensajes en la FCT)

InstNr DINT Número de instancia

Param1 STRING(16) Parámetro 1

Param2 STRING(16) Parámetro 2

Param3 STRING(16) Parámetro 3

Param4 STRING(16) Parámetro 4

Tabla 9.12 Entradas del módulo RcIfMsgSet

Execute: BOOL

Guarda el mensaje correspondiente con los parámetros transferidos.

MsgClass: DINT

Ver capítulo 8.3.5

MsgNr: DINT

Ver capítulo 0

InstNr: DINT

Ver capítulo 8.3.7

Param1..4: STRING(16)

Los parámetros 1..4 reemplazan a los símbolos sustitutivos que contiene el texto del mensaje.

Page 55: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 55

Variables de salida

Variable Tipo Significado

Done BOOL Ejecución concluida sin errores

Error Bool Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.13 Salidas del módulo RcIfMsgSet

Done: BOOL

El mensaje se ha transmitido correctamente.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Page 56: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

56 GDCP-CMXR-C2-CS-ES 1205a

9.4.5 Acceso a las posiciones de eje, AxisPos y CartPos

Con los siguientes bloques funcionales, las variables RcInterface complejas se pueden leer y escribir en el registro RcIfReg, AxisPos y CartPos:

Módulo Variable FTL Significado

RcIfRegAxisPos plc_AxisPos[0…255] Acceso a una variable de posición, tipo AXISPOS

RcIfRegCartPos plc_CartPos[0…255] Acceso a una variable de posición, tipo CARTPOS

Variables de entrada

Variable Tipo Significado

Execute BOOL Activación de la función del módulo

Read BOOL FALSE = escribir/ TRUE = leer

Índice USINT Número del índice de variable

Tabla 9.14 Entradas de los módulos de acceso a las variables de posición FTL

Execute: BOOL

Con el flanco ascendente en la entrada se ejecuta la función del módulo para leer/escribir los datos.

Read: BOOL

A través de la entrada Read se puede conmutar entre la lectura y la escritura.

Read = False escribir (PlcToRc_...)

Read = True leer (RcToPlc_...)

Index USINT

Todas las variables FTL están colocadas en una MATRIZ. El índice de la entrada es el número del campo de la matriz en el que se lee o se escribe. El margen de valores del índice es de 0 a 255 para todos los módulos. El valor 0 es el primer campo de la matriz de la variable respectiva.

Page 57: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 57

Variables de salida

Variable Tipo Significado

Done BOOL Ejecutado el acuse de recibo de la función

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.15 Salidas de los módulos de acceso a las variables de posición FTL

Done: BOOL

Con el flanco ascendente de la salida Done se señaliza que la función de lectura o escritura del valor se ha ejecutado correctamente.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Page 58: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

58 GDCP-CMXR-C2-CS-ES 1205a

Contenido del tipo de datos TAxisPos:

Variable Tipo Unidad Significado

a1 REAL mm o grados Posición del eje 1

a2 REAL mm o grados Posición del eje 2

a3 REAL mm o grados Posición del eje 3

a4 REAL mm o grados Posición del eje 4

a5 REAL mm o grados Posición del eje 5

a6 REAL mm o grados Posición del eje 6

aux1 REAL mm o grados Posición del eje auxiliar 1

aux2 REAL mm o grados Posición del eje auxiliar 2

aux3 REAL mm o grados Posición del eje auxiliar 3

Tabla 9.16 Estructura del tipo de datos TAxisPos

Contenido del tipo de datos TCartPos:

Variable Tipo Unidad Significado

x REAL mm Posición cartesiana X

y REAL mm Posición cartesiana Y

z REAL mm Posición cartesiana Z

a REAL Grado Orientación A

b REAL Grado Orientación B

c REAL Grado Orientación C

aux1 REAL mm o grados Posición del eje auxiliar 1

aux2 REAL mm o grados Posición del eje auxiliar 2

aux3 REAL mm o grados Posición del eje auxiliar 3

Tabla 9.17 Estructura del tipo de datos TCartPos

Page 59: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 59

9.5 Módulos locales de robot

9.5.1 Update, RcIfRobotUpdateLocal

Para intercambiar con el RC los datos de los bloques funcionales locales de robot, el módulo RcIfRobotUpdateLocal se debe activar cíclicamente. Cada cinemática necesita su propio módulo de actualización, el direccionamiento de la cinemática se realiza mediante el RobotIndex.

Variables de entrada

Variable Tipo Significado

RobotIndex DINT Número de la cinemática

WatchDogTime TIME Tiempo de monitorización del watchdog

Tabla 9.18 Entradas del módulo RcIfRobotUpdateLocal

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

Variables de salida

Variable Tipo Significado

InitReady BOOL Robot inicializado

WatchDogError BOOL Monitorización con watchdog activada

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.19 Salidas del módulo RclfRobotUpdateLocal

InitReady: BOOL

Esta salida señaliza que el robot está inicializado y que los módulos locales del robot están listos para la ejecución.

Page 60: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

60 GDCP-CMXR-C2-CS-ES 1205a

WatchDogError: BOOL

Un WatchDogError señaliza que no se ha producido la reacción del RC en el tiempo esperado.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: DINT

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

9.5.2 Modos de funcionamiento, RcIfModeControl

Con el módulo RcIfModeControl se activan los modos “manual” y “automático”. Además, en él se deben crear las señales de parada de emergencia y pulsador de autorización, por ejemplo a través de entradas digitales.

Variables de entrada Variable Tipo Significado

RobotIndex DINT Número de la cinemática

EmergencyStop BOOL Parada de emergencia

EnablingSwitch BOOL Pulsador de autorización de la unidad de mando

manual

DrivesOnAuto BOOL Actuadores conectados en modo automático

SetManualMode BOOL Activación del modo manual

SetAutoMode BOOL Activación del modo automático

Tabla 9.20 Entradas del módulo RcIfModeControl

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

EmergencyStop: BOOL

La entrada EmergencyStop es la señal de parada de emergencia. Se debe crear invertida. Ello implica: TRUE = ninguna parada de emergencia, FALSE = parada de emergencia. Si está establecido el estado de parada de emergencia, todos los ejes se detienen con los máximos valores dinámicos.

Page 61: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 61

EnablingSwitch: BOOL

Esta entrada debe estar creada al mover los ejes o al iniciar un programa en el modo “manual” .

DrivesOnAuto: BOOL

Conexión de los actuadores en el modo “automático” .

SetManualMode: BOOL, SetAutoMode: BOOL

Con estas dos señales se activan los modos de funcionamiento. Ambas señales no deben tener al mismo tiempo el estado TRUE o FALSE.

SetManualMode SetAutoMode Estado

0 0 No válido, ningún modo de funcionamiento

1 0 Modo de funcionamiento manual

0 1 Modo de funcionamiento automático

1 1 No válido, ningún modo de funcionamiento

Tabla 9.21 Señales de entrada de los modos de funcionamiento

Variables de salida

Variable Tipo Significado

ControllerReady BOOL El control está listo

RobotReady BOOL Los actuadores del robot están listos para la

conexión

RobotActive BOOL Actuadores del robot conectados

ManualActive BOOL Modo de funcionamiento manual activo

AutoActive BOOL Modo de funcionamiento automático activo

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.22 Salidas del módulo RcIfModeControl

ControllerReady: BOOL

Esta salida señaliza que el control, después de arrancar, está listo para activar un modo de funcionamiento, para conectar los actuadores, etc. La existencia de un error pendiente no influye en esta señal.

RobotReady: BOOL, RobotActive: BOOL

La salida RobotReady indica que los actuadores del robot están listos para la conexión. La salida RobotActive indica que los actuadores del robot están conectados. Ambas salidas son independientes del modo de funcionamiento automático.

Page 62: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

62 GDCP-CMXR-C2-CS-ES 1205a

ManualActive: BOOL, AutoActive: BOOL

Estas salidas devuelven el estado del modo de funcionamiento activo.

ManualActive AutoActive Estado

0 0 No válido, ningún modo de funcionamiento

1 0 Modo de funcionamiento manual

0 1 Modo de funcionamiento automático

Tabla 9.23 Señales de salida de los modos de funcionamiento

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la

salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Nota

Los estados de error se pueden consultar a través de los módulos del sistema de comunicación.

Page 63: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 63

9.5.3 Control de nivel superior, RcIfWriteAccess

El control de nivel superior comprende la autorización de actuar activamente sobre el control de movimiento. Las funciones activas son aquéllas que modifican el comportamiento de un programa FTL y/o provocan movimientos, p. ej. avance de los ejes por impulsos o inicio/parada de programas FTL.

El control de nivel superior a través del control de movimiento puede ser solicitado por la unidad de mando manual o por el PLC. Si un usuario no posee control de nivel superior, solamente podrá observar.

Antes de conmutar el control de nivel superior, el propio usuario activo debe volver a entregar el control de nivel superior. Al entregar el control de nivel superior a través del PLC, todos los programas se paran y se retira la habilitación de regulador. No obstante, el

modo de funcionamiento se conserva.

El derecho de escritura se solicita a través del módulo RcIfWriteAccess:

Datos de entrada Variable Tipo Significado

RobotIndex DINT Número de la cinemática

Request BOOL Solicitud del permiso de escritura

Tabla 9.24 Entradas del módulo RcIfWriteAccess

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

Request: BOOL

Con el estado = TRUE se solicita el permiso de escritura del control CMXR. Para que el permiso de escritura se pueda obtener, debe estar disponible. Dicha disponibilidad se indica por medio de la salida Available.

Page 64: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

64 GDCP-CMXR-C2-CS-ES 1205a

Datos de salida Variable Tipo Significado

Available BOOL El permiso de escritura está disponible

Active BOOL Permiso de escritura otorgado

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.25 Salidas del módulo RcIfWriteAccess

Available: BOOL

La variable Available señaliza con TRUE que el permiso de escritura está disponible y se puede solicitar.

Active: BOOL

El estado con valor TRUE señaliza que el permiso de escritura ha sido otorgado. A partir de ese momento, a través del PLC se pueden ejecutar todas las operaciones.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Nota

Es necesario un modo de funcionamiento válido para poder asignar el control de nivel superior.

Page 65: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 65

9.5.4 Datos de cinemática, RcIfRobotData

Este módulo proporciona numerosos valores nominales y reales de la cinemática, además de otra información.

Datos de entrada

Variable Tipo Significado

RobotIndex DINT Número de la cinemática

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

Page 66: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

66 GDCP-CMXR-C2-CS-ES 1205a

Datos de salida

Variable Tipo Significado

RobotName STRING(80) Nombre de la cinemática configurado

RobotActive BOOL Los actuadores de la cinemática están activos

RobotReferenced BOOL Los actuadores de la cinemática están referenciados

RobotError BOOL Cinemática en estado de error

RobotOverride INT Override actual de la cinemática

RefSysName STRING(80) Nombre del sistema de referencia activo

RefSysNumber DINT Número del sistema de referencia activo de la lista de

sistemas de referencia

Tool TTOOL Datos de herramienta activos

ToolName STRING(80) Nombre de la herramienta activa

ToolNumber DINT Número de la herramienta activa de la lista de

herramientas

AxisCountMain DINT Número de ejes principales

AxisCountWrist DINT Número de ejes de orientación

AxisCountAux DINT Número de ejes auxiliares

AxisSimulated WORD Estado de los ejes simulado, codificado en bits

AxisReferenced WORD Estado de los ejes referenciado, codificado en bits

AxisLSN WORD Posiciones finales de los ejes negativas, codificadas en

bits

AxisLSP WORD Posiciones finales de los ejes positivas, codificadas en

bits

AxisPos TAXISPOS Valores nominales de las posiciones de eje

CartPosWorld TCARTPOS Valores nominales cartesianos en WORLD

CartPosRefSys TCARTPOS Valores nominales cartesianos en el sistema de

referencia actual

AxisDyn TAXISDYN Valores nominales de la dinámica de ejes

PathDyn TPATHDYN Valores nominales de la dinámica de trayectorias

CartDyn TCARTDYN Valores nominales de la dinámica de trayectorias

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Page 67: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 67

RobotName: STRING

Visualización del nombre de cinemática que si ha indicado en la configuración de la FCT.

Configuración del nombre de la cinemática en la FCT:

RobotActive: BOOL

RobotActive indica que todos los actuadores del robot están conectados.

RobotReferenced: BOOL

RobotReferenced indica que todos los actuadores del robot están referenciados.

RobotError: BOOL

RobotError indica que el robot se encuentra en estado de error. La causa del error se puede evaluar y corregir mediante los módulos de mensaje.

RobotOverride: INT

RobotOverride indica el valor activo actual del override del robot. El override se puede modificar con el módulo RcIfOverride.

ToolName: STRING, RefSysName: STRING

En estas variables se emite el nombre de la herramienta activa y del sistema de

referencia. Para indicar a qué categoría pertenecen las variables, se anteponen a ellas los siguientes prefijos:

“S” indica una variable del sistema

“G” indica una variable global

“P” indica una variable de proyecto

“L” indica una variable de programa local

Estos identificadores se anteponen al nombre propiamente dicho. Para separarlas del nombre se utiliza un espacio en blanco.

Page 68: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

68 GDCP-CMXR-C2-CS-ES 1205a

RefSysNumber: DINT, ToolNumber: DINT

Ambas salidas devuelven el número del sistema de referencia activo o de la herramienta que está incluido en la correspondiente lista de remisión horizontal (véase el capítulo 9.5.5 Activación de sistemas de referencia y herramientas en la página 71). Si ninguna herramienta o ningún sistema de referencia de esta lista se encuentra activo, se devuel-ven los siguientes valores:

RefSysNumber = 0: sistema de referencia WORLD activo

RefSysNumber = -1: Se encuentra activo otro sistema de referencia que no está incluido en la lista. El nombre se puede averiguar por medio de la salida RefSysName.

ToolNumber = 0: herramienta FLANGE activa

ToolNumber = -1: Se encuentra activa otra herramienta que no está incluida en la lista. El nombre se puede averiguar por medio de la salida ToolName.

AxisCountMain: DINT, AxisCountWrist: DINT, AxisCountWrist: DINT

Estas salidas devuelven el número de ejes disponibles en la cinemática.

Salida Descripción

AxisCountMain Número de ejes de base

AxisCountWrist Número de ejes de orientación

AxisCountAux Número de ejes auxiliares

Tabla 9.26 Variables de número de ejes

AxisLSN: WORD, AxisLSP: WORD

Estas dos variables contienen, codificado en bits, el estado de la posición final positiva y

negativa de cada uno de los ejes. Si un bit es True, el respectivo detector de final de carrera se encuentra activo.

La asignación de bits es la siguiente:

Bits Descripción

0 a 5 Eje 1 a 6

6 a 8 Ejes auxiliares 1 a 3

Tabla 9.27 Asignación de bits de los ejes

AxisReferenced: WORD, AxisSimulated: WORD

Con estas variables codificadas en bits se puede leer si un eje está referenciado o simulado. Con True, el respectivo eje está simulado; con respecto a la asignación de los bits, véanse las salidas AxisLSN, AxisLSP.

Page 69: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 69

AxisPos: TAxisPos

La salida AxisPos devuelve los valores nominales actuales de cada una de las posiciones de eje.

Contenido del tipo de datos TAXISPOS:

Variable Tipo Unidad Significado

a1 REAL mm o grados Posición del eje 1

a2 REAL mm o grados Posición del eje 2

a3 REAL mm o grados Posición del eje 3

a4 REAL mm o grados Posición del eje 4

a5 REAL mm o grados Posición del eje 5

a6 REAL mm o grados Posición del eje 6

aux1 REAL mm o grados Posición del eje auxiliar 1

aux2 REAL mm o grados Posición del eje auxiliar 2

aux3 REAL mm o grados Posición del eje auxiliar 3

Tabla 9.28 Estructura del tipo de dato TAXISPOS

CartPosWorld: TCartPos, CartPosRefSys: TCartPos

Con la variable CartPosWorld se emite la posición nominal cartesiana actual. El sistema de referencia está en el sistema WORLD, es decir, el origen es el punto cero establecido en la configuración.

La variable CartPosRefSys contiene el valor nominal cartesiano en el sistema de referencia activo.

Contenido del tipo de datos TCartPos:

Variable Tipo Unidad Significado

x REAL mm Posición cartesiana X

y REAL mm Posición cartesiana Y

z REAL mm Posición cartesiana Z

a REAL Grado Orientación A

b REAL Grado Orientación B

c REAL Grado Orientación C

aux1 REAL mm o grados Posición del eje auxiliar 1

aux2 REAL mm o grados Posición del eje auxiliar 2

aux3 REAL mm o grados Posición del eje auxiliar 3

Tabla 9.29 Estructura del tipo de datos TCartPos

Page 70: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

70 GDCP-CMXR-C2-CS-ES 1205a

AxisDyn: TAxisDyn, CartDyn: TCartDyn, PathDyn: TPathDyn

La variable AxisDyn devuelve los valores nominales actuales de la dinámica de ejes.

La variable CartDyn devuelve los valores nominales actuales de la dinámica cartesiana.

La variable PathDyn devuelve los valores nominales actuales de la dinámica de trayec-torias que corresponden tanto a los ejes de base como a los ejes de orientación.

Contenido de los tipos de datos TAxisDyn, TCartDyn, TPathDyn

Tipo Elementos Tipo de elemento

TAxisDyn a1, a2, a3, a4, a5, a6, aux1, aux2, aux3 TDyn

TCartDyn x, y, z, a, b, c, aux1, aux2, aux3 TDyn

TPathDyn Path, Ori TDyn

Tabla 9.30 Estructura de los tipos de datos TAxisDyn, TCartDyn, TPathDyn

Contenido del tipo de elemento TDyn:

Variable Tipo Unidad Significado

Vel Real mm/s Velocidad

Acc Real mm/s² Aceleración

Jerk Real mm/s³ Sacudida

Tabla 9.31 Estructura del tipo de dato TDyn

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Page 71: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 71

9.5.5 Activación de sistemas de referencia y herramientasn, RcIfSetRefSys und RcIfSetTool

En el modo manual, para desplazar los ejes también se puede seleccionar el sistema de coordenadas de herramienta y el sistema de referencia activo. Con los módulos RcIfSetRefSys y RcIfSetTool se puede activar un sistema de referencia o una herramienta.

Los sistemas de referencia y las herramientas se pueden definir libremente mediante un nombre en el programa FTL. Puesto que estos nombres pueden cambiar según el programa, no es posible acceder a estos datos. Por este motivo, los sistemas de referencia y las herramientas deben estar asignadas al sector de datos global del RC. No se permite ninguna asignación que no sea ésta.

El acceso a los sistemas de referencia y a las herramientas se basa en una lista de referencia en la que los nombres de los sistemas de referencia o las herramientas aparecen numerados. Existen listas separadas: una para los sistemas de referencia y otra para las herramientas. Estas listas se configuran en la Festo Configuration Tool (FCT).

Nota

Tanto la lista de los sistemas de referencia como la de las herramientas forman parte de la configuración y solamente surten efecto después de reiniciar el CMXR-C2.

Nota

Para ejecutar los módulos RcIfSetRefSys y RcIfSetTool es necesario

el control de nivel superior.

Tanto el módulo RcIfSetRefSys como el módulo RcIfSetTool requieren las mismas condiciones:

El sistema de referencia o la herramienta deben estar indicados en la tabla de remisiones.

Todos los sistemas de referencia y herramientas deben estar establecidos como variables globales.

Debe estar activado el modo de funcionamiento manual.

Page 72: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

72 GDCP-CMXR-C2-CS-ES 1205a

Datos de entrada Variable Tipo Significado

RobotIndex DINT Número de la cinemática

Execute BOOL Ejecución de la selección

Index DINT Número del sistema de referencia/la herramienta

Tabla 9.32 Entradas de los módulos RcIfSetRefSys, RcIfSetTool

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

Execute: BOOL

Con el flanco ascendente se activa el sistema de referencia cuyo número está indicado en la variable Index.

Index: DINT

Número del sistema de referencia/de la herramienta procedente de la lista de remisión horizontal. Si se indica el valor 0, eso significa:

Activación del sistema de referencia WORLD o Activación de la herramienta FLANGE.

Todos los demás valores que no figuren en la tabla darán lugar a un error. Este estado se

señaliza con la salida Error.

Page 73: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 73

Datos de salida Variable Tipo Significado

Done BOOL El sistema de referencia ha sido establecido o la

herramienta ha sido establecida

ActRefSys,

ActTool

DINT Sistema de referencia actualmente seleccionado

Herramienta actualmente seleccionada

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.33 Salidas de los módulos RcIfSetRefSys, RcIfSetTool

Done: BOOL

El estado TRUE de la salida Done indica que el sistema de referencia/la herramienta se ha activado.

ActRefSys: DINT, ActTool: DINT;

Devuelve el número del sistema de referencia actualmente activado o de la herramienta actualmente activada.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las

constantes globales de la biblioteca.

9.5.6 Movimiento manual, RcIfJogControl

El módulo JOG permite desplazar manualmente ejes de robot individuales. Para poder utilizar la función JOG:

El robot debe estar listo para funcionar

El control de nivel superior debe estar disponible

Los actuadores están conectados

El modo de funcionamiento manual debe estar activo

Page 74: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

74 GDCP-CMXR-C2-CS-ES 1205a

Nota

Para ejecutar el módulo RcIfJogControl se necesita el control de nivel superior.

Datos de entrada Variable Tipo Significado

RobotIndex DINT Número de la cinemática

MoveToPosition BOOL Desplazamiento hasta la posición de destino

MoveNegative BOOL Ejecución del movimiento en sentido negativo

MovePositive BOOL Ejecución del movimiento en sentido positivo

Axis INT Número del eje

CoordSys INT Número del sistema de coordenadas

TargetPosition Real Posición de destino de MoveToPosition

Tabla 9.34 Entradas del módulo RcIfJogControl

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

MoveToPosition: BOOL

Con el flanco ascendente de estas entradas se inicia, en el respectivo sistema de coordenadas, el movimiento de los ejes especificados en las otras entradas. El movimiento se efectúa (si es posible) hasta la posición de destino introducida en TargetPosition. Con el flanco descendente de la entrada, el movimiento de detiene.

MovePositive: BOOL, MoveNegative: BOOL

Con el flanco ascendente de estas entradas se inicia, en el respectivo sistema de coor-denadas, el movimiento de los ejes especificados en las otras entradas. El movimiento se realiza hasta que en la entrada aparece un flanco descendente. Solamente una de las dos entradas debe poseer el estado TRUE.

AxisNumber: INT

Número del eje con el que se debe ejecutar el movimiento. No obstante, la asignación de los ejes depende del sistema de coordenadas establecido (entrada CoordSys) y tiene la siguiente significancia:

Page 75: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 75

Sistema de coordenadas de ejes:

AxisNumber Descripción

1 Selección del eje 1

2 Selección del eje 2

3 Selección del eje 3

4 Selección del eje 4

5 Selección del eje 5

6 Selección del eje 6

7 Selección del eje auxiliar 1

8 Selección del eje auxiliar 2

9 Selección del eje auxiliar 3

Tabla 9.35 Números de eje del sistema de coordenadas de ejes

Sistemas cartesianos (sistema de coordenadas universales, sistema de coordenadas de referencia, sistema de coordenadas de herramienta):

AxisNumber Descripción

1 Selección del eje X cartesiano

2 Selección del eje Y cartesiano

3 Selección del eje Z cartesiano

4 Selección de la orientación A cartesiana

5 Selección de la orientación B cartesiana

6 Selección de la orientación C cartesiana

7 Selección del eje auxiliar 1

8 Selección del eje auxiliar 2

9 Selección del eje auxiliar 3

Tabla 9.36 Números de eje de los sistemas de coordenadas cartesianos

CoordSys: INT

Con la entrada CoordSys se establece el sistema de coordenadas en el que se debe ejecutar el movimiento del eje. Los valores permitidos son:

CoordSys Descripción

0 Sistema de coordenadas de ejes

1 Sistema cartesiano de coordenadas universales

2 Sistema de coordenadas cartesiano del sistema de referencia activo

3 Sistema cartesiano de coordenadas de herramienta

Tabla 9.37 Selección de sistemas de coordenadas

Page 76: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

76 GDCP-CMXR-C2-CS-ES 1205a

Datos de salida Variable Tipo Significado

LSN BOOL Detector de final de carrera negativo

LSP BOOL Detector de final de carrera positivo

ActAxisNumber INT Número del eje seleccionado

ActCoordSys INT Número del actual sistema de coordenadas

ActCoordSysName STRING(16) Nombre del actual sistema de coordenadas

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.38 Salidas del módulo RcIfJogControl

LSN: BOOL, LSP: BOOL

Estas salidas indican que el eje seleccionado ha alcanzado su posición final negativa/positiva.

ActAxis: INT

Devuelve el número de eje actualmente seleccionado

ActCoordSys: INT

Indica el sistema de coordenadas actualmente seleccionado en el que se debe efectuar el avance por impulsos (jog).

ActCoordSysName: String

Indica en texto no codificado el sistema de coordenadas actualmente seleccionado en el que se debe efectuar el avance por impulsos (jog).

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Page 77: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 77

9.5.7 Override, RcIfOverride

Con el módulo RcIfOverride se puede ajustar el porcentaje de override.

Nota

Para ejecutar el módulo RcIfOverride se necesita el control de nivel superior.

Datos de entrada Variable Tipo Significado

RobotIndex DINT Número de la cinemática

SetOverride INT Valores reales del override

Tabla 9.39 Entradas del módulo RcIfOverride

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

SetOverride: INT

Especificación del valor nominal de override; se debe tener en cuenta el modo de funcionamiento:

Modo automático:

0 = se establece un override de 0,1%.

1-100 = se establece un override de entre 1% y 100%.

Modo JOG:

0 = se establece un override JOG de 0,1 incrementos.

1 = se establece un override JOG de 1 incremento.

2 … 100 = se establece un override JOG de entre 2% y 100%.

Los valores < 0 o >100 son ignorados y el último valor de override válido se conserva.

Page 78: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

78 GDCP-CMXR-C2-CS-ES 1205a

Datos de salida Variable Tipo Significado

ActOverride INT Valor actual de override

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrodID Código del error de ejecución

Tabla 9.40 Salidas del módulo RcIfOverride

ActOverride: INT

Salida del override actual. Esta salida siempre se actualiza independientemente del permiso de escritura.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las constantes globales de la biblioteca.

Page 79: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 79

9.5.8 Control de programa, RcIfProgramControl_V2

El control de programa se ejecuta con el módulo RcIfProgramControl_V2. Con este módulo se pueden iniciar y detener programas. Estas funciones se pueden realizar tanto en el modo manual como en el automático.

Nota

Para ejecutar el control de programa con el módulo RcIfProgramControl_V2 es necesario el control de nivel superior.

Datos de entrada Variable Tipo Significado

RobotIndex DINT Número de la cinemática

Unload BOOL Con Unload + Número del programa se

descargan todos los programas del proyecto

abierto y se cierra el proyecto.

Con Unload + 0 se descargan todos los

programas y se cierran todos los proyectos

(excepto auf _global).

Start BOOL Con Start se descargan y cierran primero

todos los programas y proyectos de la lista de

proyectos. Entonces se carga e inicia el

programa seleccionado. Los programas que

no están en la lista de proyectos y se han

abierto con CDSA quedan cargados. Si un

proyecto sólo está abierto pero no hay

ningún programa cargado, el proyecto no se

cerrará.

Stop BOOL Parada del programa

EnableProgHold BOOL Activación de la parada programada

ProgramNumber INT Número del programa

Tabla 9.41 Entradas del módulo RcIfProgramControl

Page 80: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

80 GDCP-CMXR-C2-CS-ES 1205a

RobotIndex: DINT

Esta entrada es un índice que permite seleccionar la cinemática de un sistema de múltiples cinemáticas. En el manual del sistema se indica cúantas cinemáticas permite el sistema. La primera cinemática siempre reacciona con el número de índice 0.

Unload: BOOL

Con un flanco ascendente del comando Unload se descargarán de la memoria de trabajo los programas FTL seleccionados. El flanco ascendente de Unload retira de la memoria de trabajo un programa FTL previamente cargado. “Unload número de programa 0” descarga todos los programas cargados.

Start, Stop: BOOL

El flanco ascendente del comando Start inicia un programa FTL. Con el flanco ascendente del comando Stop se puede detener dicho programa. A continuación, el programa se puede volver a iniciar.

Nota

A partir de la versión de software 1.1 ya no es necesario cargar previamente el programa FTL. Al crear el número de programa y el flanco ascendente en la entrada Start el programa se carga e inicia automáticamente. Si el programa ya está cargado o se encuentra en estado Stop, se reanudará a través del flanco ascendente de Start.

EnableProgHold: BOOL

Si la señal EnableProgHold está activada en la interface, es decir, si tiene el estado TRUE, el programa de movimiento se detiene cuando se activa la instrucción ProgHold. Solamente se detendrá el programa en el que se encuentra la instrucción ProgHold. Los demás programas, por ejemplo los programas paralelos, continuarán ejecutándose. Si la señal EnableProgHold tiene el estado FALSE, el programa detenido continuará.

ProgramNumber: INT

Número del programa que está incluido en la lista de programas configurada en FCT. Este debe indicarse al iniciar, detener o cargar los programas.

Números de programas

Programas FTL correspondientes

Page 81: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

GDCP-CMXR-C2-CS-ES 1205a 81

Datos de salida

Variable Tipo Significado

Ack BOOL Acuse de recibo positivo

Nack BOOL Acuse de recibo negativo

ProgramState BOOL Estado del desarrollo del programa

ReposActive BOOL Programa iniciado, reposicionamiento en

marcha

ProgHoldActive BOOL Parada programada activa

ActiveProgramNumber INT Número del programa activo

ActiveProjectName STRING(32) Nombre del proyecto activo

ActiveProgamName STRING(32) Nombre del programa activo

Error BOOL Se han producido errores en la ejecución

ErrorId TRcIfErrorID Código del error de ejecución

Tabla 9.42 Salidas del módulo RcIfProgramControl_V2

Ack: BOOL, Nack: BOOL

La salida Ack es la señal de handshake positiva en respuesta a las solicitudes de carga, inicio y parada de programas. Si no es posible ejecutar una función, esta imposibilidad se comunica mediante la salida Nack. También se comunica información adicional por medio de la salida Error y ErrorCode.

Nota

Si se valida una tarea con NACK, en el búfer de mensajes aparecerá un mensaje con la causa (así como en TeachView).

ProgramState: ERcIfPrgState

La variable de enumeración ProgramState indica el estado de ejecución actual del proyecto FTL.

Nota

En todo momento hay un estado activo.

Page 82: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

9. Descripción de la biblioteca RcInterface.lib

82 GDCP-CMXR-C2-CS-ES 1205a

Son posibles los siguientes estados:

Nombre de enumeración Valor Significado

PrgStateEmpty 0 Ningún programa cargado

PrgStateRunning 1 Programa activo

PrgStateStopped 2 Programa parado

PrgStateFinished 3 Ejecutar programa

PrgStateCompileError 4 Programa defectuoso

PrgStateInternalError 5 Se ha producido un error interno

Tabla 9.43 Estados del programa ERcIfPrgState

ReposActive: BOOL

La salida ReposActive avisa con el estado TRUE que está activo un reposicionamiento de

la cinemática.

ProgHoldActive: BOOL

La salida ProgHoldActive comunica con el estado TRUE que en el programa FTL está activa la instrucción ProgHold (parada programada).

ActiveProgramNumber: INT

La salida indica el número de proyecto/programa de la tabla de programas que se encuentra activo en ese momento.

ActiveProjectName: STRING(32), ActiveProgramName: STRING(32)

Estas salidas indican el nombre de proyecto FTL y programa FTL que se encuentra activo en ese momento.

Error: BOOL

Se ha producido un error de ejecución: para obtener una explicación del error, véase la salida ErrorId

ErrorId: TRcIfErrorID

Código del error de ejecución; la descripción del código de error se puede consultar en las

constantes globales de la biblioteca.

Page 83: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

GDCP-CMXR-C2-CS-ES 1205a 83

9.5.9 Diagrama de flujo

Nota

Si se produce cualquier error el programa se detiene inmediatamente. El estado de programa cambia al estado de parada.

stopped running empty

Número del

programa

Start

ACK

Stop

ACK

ProgramState

Unload

ACK

empty

Page 84: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

A. Apéndice

84 GDCP-CMXR-C2-CS-ES 1205a

A. Apéndice

A.1 Descripción de funciones importantes

En este apartado se describe brevemente, en forma de tabla, el uso de las funciones más importantes.

A.1.1 Demanda del control de nivel superior

General

Módulo RcIfWriteAccess

Condición El RC ha arrancado sin errores, ControllerReady = TRUE

El control de nivel superior no está asignado, AccessAvailable = TRUE

Acción Demanda de concesión del control de nivel superior, WriteRequest = TRUE

Reacción El control de nivel superior ha sido asignado, AccessActive = TRUE

A.1.2 Establecimiento de la disposición de servicio del control de movimiento

General

Módulo RcIfModeControl

Condición El RC ha arrancado sin errores, ControllerReady = TRUE

Acción EmergencyStop = TRUE

Modo de funcionamiento seleccionado

SetManualMode/ SetHandMode = TRUE

Reacción AutoActive/ HandActive señaliza el modo de funcionamiento activo

RobotReady señaliza que el RC está listo para la autorización

Page 85: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

A. Apéndice

GDCP-CMXR-C2-CS-ES 1205a 85

A.1.3 Autorización de los actuadores del control de movimiento

Autorización en el modo manual

Módulo RcIfModeControl

Condición El RC ha arrancado sin errores, ControllerReady = TRUE

RC listo para la autorización. RobotReady = TRUE

ManualActive = TRUE

Acción EnablingSwitch = TRUE

Reacción RobotActive señaliza la autorización activa del RC

Autorización en modo automático

Módulo RcIfModeControl

Condición El RC ha arrancado sin errores, ControllerReady = TRUE

RC listo para la autorización. RobotReady = TRUE

AutoActive = TRUE

Acción DrivesOnAuto = TRUE

Reacción RobotActive señaliza la autorización activa del RC

Page 86: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

A. Apéndice

86 GDCP-CMXR-C2-CS-ES 1205a

A.1.4 Ejecución del programa General

Módulo RcIfProgramControl_V2

Condición El control de nivel superior está en la interfaz PLC

El programa que se desea iniciar ha sido seleccionado por medio de la entrada

ProgramNumber.

Acción Activación del bit Start (flanco ascendente).

Espera a ACK o NACK

Reacción El programa/proyecto se inicia.

ProgramState = PrgStateRunning

A.1.5 Parada del programa

General

Módulo RcIfProgramControl_V2

Condición El control de nivel superior está en la interfaz PLC

El programa que se desea detener ha sido seleccionado por medio de la entrada

ProgramNumber.

Acción Activación del bit Stop (flanco ascendente)

Espera a ACK o NACK

Reacción El programa/proyecto se inicia.

ProgramState = PrgStateStopped

A.1.6 Descargar programa

General

Módulo RcIfProgramControl_V2

Condición El control de nivel superior está en la interfaz PLC

El programa que se desea descargar ha sido seleccionado por medio de la entrada

ProgramNumber.

Acción Activación del bit Unload (flanco ascendente)

Espera a ACK o NACK

Reacción El programa/proyecto se descarga.

ProgramState = PrgStateEmpty

Page 87: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

A. Apéndice

GDCP-CMXR-C2-CS-ES 1205a 87

A.1.7 Función ProgHold

Activación de la función

Módulo RcIfProgramControl

Condición El programa se encuentra en el estado Running

El programa FTL contiene la función ProgHold

Acción Activación del bit EnableProgHold (flanco ascendente).

Con Start, el programa vuelve a iniciarse donde se interrumpió.

Reacción Con ProgHoldActive se señaliza que el RC se ha detenido en la parada programada.

Running adquiere el estado FALSE si no se ejecuta ningún otro programa.

Desactivación de la función

Módulo RcIfProgramControl

Condición El programa se encuentra en el estado ProgHoldActive

Acción Si es preciso, coloque EnableProgHold en el estado FALSE

Con Start, el programa vuelve a iniciarse donde se interrumpió.

Reacción ProgHoldActive adquiere el estado FALSE

Page 88: Controlador - Festo...Tarjeta de memoria Compact Flash Card CF tipo I FTL Festo Teach Language, lenguaje de programación de movimientos para el control multieje CMXR TCP Tool …

A. Apéndice

88 GDCP-CMXR-C2-CS-ES 1205a

A.2 Bibliotecas de apoyo a la aplicación

Las posibilidades de aplicación del CMXR-C2 son muy variadas. Para muchas de estas aplicaciones, el control de proceso constituye el elemento central de unión. Festo ofrece, para estas aplicaciones, otros componentes adaptados al CMXR-C2 con los que también se pueden administrar solicitudes costosas.

Nota

Las propias bibliotecas, así como una descripción más detallada de las mismas, se pueden encontrar en el sitio web de Festo.

A.2.1 RcTracking.lib (solamente CMXR-C2)

Biblioteca para la realización de aplicaciones de Tracking.

Cometido:

- Control de las macros FTL de Tracking en el control de movimiento.

A.2.2 Festo_Motion.lib (CoDeSys general)

Biblioteca de actuadores eléctricos de Festo.

Cometido:

- Facilita todas las funciones de los actuadores en el PLC.

A.2.3 PartDetector.lib (CoDeSys general)

Biblioteca para el control de sistemas de cámara de Festo utilizados para detectar de piezas, p. ej. sobre una cinta en movimiento.

Cometido:

- Bloqueo de la señal del codificador

- Resolución de imagen

- Detección de piezas dobles

- Transferencia de los datos de cámara al PLC mediante TCP/IP

A.2.4 Festo_CameraControl.lib (CoDeSys general)

Funciones básicas de control de los sistemas de cámara de Festo mediante TCP/IP

Cometido:

- Establecimiento de la conexión

- Lectura de parámetros

- Resolución de imagen