M251 Funciones
M251 Funciones
EIO0000001468 04/2014
[Link]
La información que se ofrece en esta documentación contiene descripciones de carácter general
y/o características técnicas sobre el rendimiento de los productos incluidos en ella. La presente
documentación no tiene como objeto sustituir dichos productos para aplicaciones de usuario
específicas, ni debe emplearse para determinar su idoneidad o fiabilidad. Los usuarios o
integradores tienen la responsabilidad de llevar a cabo un análisis de riesgos adecuado y
completo, así como la evaluación y las pruebas de los productos en relación con la aplicación o el
uso de dichos productos en cuestión. Ni Schneider Electric ni ninguna de sus filiales o asociados
asumirán responsabilidad alguna por el uso inapropiado de la información contenida en este
documento. Si tiene sugerencias de mejoras o modificaciones o ha hallado errores en esta
publicación, le rogamos que nos lo notifique.
No se podrá reproducir este documento de ninguna forma, ni en su totalidad ni en parte, ya sea
por medios electrónicos o mecánicos, incluida la fotocopia, sin el permiso expreso y por escrito de
Schneider Electric.
Al instalar y utilizar este producto es necesario tener en cuenta todas las regulaciones sobre
seguridad correspondientes, ya sean regionales, locales o estatales. Por razones de seguridad y
para garantizar que se siguen los consejos de la documentación del sistema, las reparaciones solo
podrá realizarlas el fabricante.
Cuando se utilicen dispositivos para aplicaciones con requisitos técnicos de seguridad, siga las
instrucciones pertinentes.
Si con nuestros productos de hardware no se utiliza el software de Schneider Electric u otro
software aprobado, pueden producirse lesiones, daños o un funcionamiento incorrecto del equipo.
Si no se tiene en cuenta esta información, se pueden causar daños personales o en el equipo.
© 2014 Schneider Electric. Reservados todos los derechos.
2 EIO0000001471 04/2014
Tabla de materias
Información de seguridad . . . . . . . . . . . . . . . . . . . . . . . 7
Acerca de este libro . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Capítulo 1 M251 Variables del sistema . . . . . . . . . . . . . . . . . . . . . . 11
1.1 Variables del sistema: definición y uso . . . . . . . . . . . . . . . . . . . . . . . . 12
Descripción de las variables de sistema . . . . . . . . . . . . . . . . . . . . . . . 13
Utilización de variables de sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.2 Estructuras PLC_R y PLC_W . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
PLC_R: Variables de sistema de solo lectura del controlador . . . . . . . 18
PLC_W: Variables del sistema de lectura/escritura del controlador . . . 22
1.3 Estructuras SERIAL_R y SERIAL_W . . . . . . . . . . . . . . . . . . . . . . . . . 23
SERIAL_R[0...1]: Variables del sistema de solo lectura de la línea
serie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
SERIAL_W[0...1]: Variables del sistema de lectura/escritura de
línea serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.4 Estructuras ETH_R y ETH_W . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
ETH_R: Variables de sistema de solo lectura del puerto Ethernet . . . 27
ETH_W: Variables de sistema de lectura/escritura del puerto Ethernet 33
1.5 Estructura de TM3_MODULE_R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
TM3_MODULE_R[0...13]: Variables de sistema de solo lectura de
los módulos TM3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
1.6 Estructura PROFIBUS_R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
PROFIBUS_R: Variables de sistema de solo lectura PROFIBUS . . . 35
Capítulo 2 Funciones de sistema M251, . . . . . . . . . . . . . . . . . . . . 37
2.1 Funciones de lectura M251 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
GetRtc: Obtener hora del RTC actual . . . . . . . . . . . . . . . . . . . . . . . . 39
IsFirstMastColdCycle: Indica si el ciclo es el primer ciclo MAST
del arranque en frío . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
IsFirstMastCycle: Indica si el ciclo es el primer ciclo MAST . . . . 41
IsFirstMastWarmCycle: Indica si el ciclo es el primer ciclo MAST
del arranque en caliente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2 Funciones de escritura de M251 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
SetRTCDrift: Definir valor de compensación en el RTC . . . . . . . . . 44
2.3 Funciones de usuario de M251 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
DataFileCopy: Comandos para copiar archivos . . . . . . . . . . . . . . . 47
ExecuteScript: Comandos de secuencia de comandos . . . . . . . . 50
EIO0000001471 04/2014 3
2.4 Funciones de lectura TM3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
TM3_GetModuleBusStatus: Obtener estado del bus del módulo
TM3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
TM3_GetModuleInternalStatus: Obtener estado interno del
módulo TM3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Capítulo 3 Tipos de datos de la biblioteca PLCSystem de M251. 57
3.1 Tipos de datos de variables de sistema de PLC_R/W. . . . . . . . . . . . . 58
PLC_R_APPLICATION_ERROR: Códigos de estado del error
detectado de la aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
PLC_R_BOOT_PROJECT_STATUS: Códigos de estado del proyecto
de inicio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
PLC_R_IO_STATUS: Códigos de estado de E/S . . . . . . . . . . . . . . . . 61
PLC_R_SDCARD_STATUS: Códigos de estado de slots para tarjeta
SD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
PLC_R_STATUS: Códigos de estado del controlador. . . . . . . . . . . . . 63
PLC_R_STOP_CAUSE: Códigos de causa de transición de estado
RUN a otro estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
PLC_R_TERMINAL_PORT_STATUS: Códigos de estado de la
conexión del puerto de programación . . . . . . . . . . . . . . . . . . . . . . . . . 65
PLC_R_TM3_BUS_STATE: Códigos de estado del bus TM3. . . . . . . 66
PLC_W_COMMAND: Códigos de comando de control . . . . . . . . . . . . 67
3.2 Tipos de datos de variables del sistema de DataFileCopy . . . . . . . . . 68
DataFileCopyError: Códigos de errores detectados . . . . . . . . . . . . . . 69
DataFileCopyLocation: Códigos de ubicación . . . . . . . . . . . . . . . . . . . 70
3.3 Tipos de datos de variables del sistema de ExecScript. . . . . . . . . . . . 71
ExecuteScriptError: Códigos de errores detectados . . . . . . . . . . . . . . 71
3.4 Tipos de datos de variables de sistema de ETH_R/W. . . . . . . . . . . . . 72
ETH_R_FRAME_PROTOCOL: Códigos de protocolo de transmisión
de tramas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
ETH_R_IP_MODE: Códigos de origen de la dirección IP . . . . . . . . . . 74
ETH_R_PORT_DUPLEX_STATUS: Códigos de modalidad de
transmisión. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
ETH_R_PORT_IP_STATUS: Códigos de estado del puerto TCP/IP
Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
ETH_R_PORT_LINK_STATUS: Códigos de estado de enlaces de
comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
ETH_R_PORT_SPEED: Códigos de velocidad de comunicación del
puerto Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
ETH_R_RUN_IDLE: Códigos de estado de ejecución e inactividad de
Ethernet/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4 EIO0000001471 04/2014
3.5 Tipos de datos de variables de sistema de TM3_MODULE_R . . . . . . 80
TM3_ERR_CODE: Códigos de error detectados en el módulo de
ampliación TM3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
TM3_MODULE_R_ARRAY_TYPE: Tipo de matriz de lectura del
módulo de ampliación TM3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
TM3_MODULE_STATE: Códigos de estado del módulo de ampliación
TM3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3.6 Tipos de datos de funciones de sistema . . . . . . . . . . . . . . . . . . . . . . . 84
RTCSETDRIFT_ERROR: Códigos de error de función SetRTCDrift
detectados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Apéndices ......................................... 85
Apéndice A Representación de funciones y de bloques de
funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Diferencias entre una función y un bloque de funciones. . . . . . . . . . . 88
Cómo utilizar una función o un bloque de funciones en lenguaje IL . . 89
Cómo utilizar una función o un bloque de funciones en lenguaje ST . 93
Glosario ......................................... 97
Índice ......................................... 105
EIO0000001471 04/2014 5
6 EIO0000001471 04/2014
Información de seguridad
Información importante
AVISO
Lea atentamente estas instrucciones y observe el equipo para familiarizarse con el dispositivo
antes de instalarlo, utilizarlo o realizar su mantenimiento. Los mensajes especiales que se ofrecen
a continuación pueden aparecer a lo largo de la documentación o en el equipo para advertir de
peligros potenciales o para ofrecer información que aclara o simplifica los distintos
procedimientos.
EIO0000001471 04/2014 7
TENGA EN CUENTA
La instalación, manejo, puesta en servicio y mantenimiento de equipos eléctricos deberán ser
realizados sólo por personal cualificado. Schneider Electric no se hace responsable de ninguna
de las consecuencias del uso de este material.
Una persona cualificada es aquella que cuenta con capacidad y conocimientos relativos a la
construcción, el funcionamiento y la instalación de equipos eléctricos y que ha sido formada en
materia de seguridad para reconocer y evitar los riesgos que conllevan tales equipos.
8 EIO0000001471 04/2014
Acerca de este libro
Presentación
Objeto
Este documento le permite familiarizarse con las funciones y variables del sistema de Modicon
M251 Logic Controller. La biblioteca M251 PLCSystem contiene funciones y variables para
obtener información y enviar comandos al sistema del controlador.
En este documento se describen las funciones y las variables de tipos de datos de la biblioteca
M251 PLCSystem.
Se requieren los conocimientos siguientes:
z Información básica sobre la funcionalidad, la estructura y la configuración de M251 Logic
Controller
z Programación en lenguaje FBD, LD, ST, IL o CFC
z Variables del sistema (variables globales)
Campo de aplicación
Este documento se ha actualizado con la publicación de SoMachine V4.1.
Documentos relacionados
EIO0000001471 04/2014 9
Puede descargar estas publicaciones técnicas y otra información técnica de nuestro sitio web
[Link].
ADVERTENCIA
PÉRDIDA DE CONTROL
z El diseñador del esquema de control debe tener en cuenta las posibles modalidades de fallo
de rutas de control y, para ciertas funciones de control críticas, proporcionar los medios para
lograr un estado seguro durante y después de un fallo de ruta. Funciones de control críticas
son, por ejemplo, una parada de emergencia y una parada de sobrerrecorrido, un corte de
alimentación y un reinicio.
z Para las funciones de control críticas deben proporcionarse rutas de control separadas o
redundantes.
z Las rutas de control del sistema pueden incluir enlaces de comunicación. Deben tenerse en
cuenta las implicaciones de los retrasos de transmisión no esperados o los fallos en el enlace.
z Tenga en cuenta todas las reglamentaciones para la prevención de accidentes y las
directrices de seguridad locales.1
z Cada implementación de este equipo debe probarse de forma individual y exhaustiva antes
de entrar en servicio.
El incumplimiento de estas instrucciones puede causar la muerte, lesiones serias o daño
al equipo.
1 Para obtener información adicional, consulte NEMA ICS 1.1 (última edición), "Safety Guidelines
for the Application, Installation, and Maintenance of Solid State Control" (Directrices de seguridad
para la aplicación, la instalación y el mantenimiento del control de estado estático) y NEMA ICS
7.1 (última edición), "Safety Standards for Construction and Guide for Selection, Installation and
Operation of Adjustable-Speed Drive Systems" (Estándares de seguridad para la construcción y
guía para la selección, instalación y utilización de sistemas de unidades de velocidad ajustable) o
su equivalente aplicable a la ubicación específica.
ADVERTENCIA
FUNCIONAMIENTO IMPREVISTO DEL EQUIPO
z Utilice solo software aprobado por Schneider Electric para este equipo.
z Actualice el programa de aplicación siempre que cambie la configuración de hardware física.
El incumplimiento de estas instrucciones puede causar la muerte, lesiones serias o daño
al equipo.
10 EIO0000001471 04/2014
Modicon M251 Logic Controller
M251 Variables del sistema
EIO0000001468 04/2014
Capítulo 1
M251 Variables del sistema
Descripción general
En este capítulo:
z Se proporciona una introducción a las variables de sistema (véase página 12).
z Se describen las variables de sistema (véase página 18) incluidas en la biblioteca PLCSystem
de M251.
EIO0000001471 04/2014 11
M251 Variables del sistema
Sección 1.1
Variables del sistema: definición y uso
Descripción general
En esta sección se definen las variables del sistema y cómo implementarlas en Modicon M251
Logic Controller.
12 EIO0000001471 04/2014
M251 Variables del sistema
Introducción
En esta sección se describe el modo en que se implementan las variables de sistema. Las
variables de sistema:
z Permiten acceder a información general del sistema, realizar diagnósticos del sistema y
controlar acciones sencillas.
z Son variables estructuradas que cumplen con las definiciones y las convenciones sobre
nomenclatura de la IEC 61131-3. Puede acceder a las variables de sistema con el nombre
simbólico de IEC PLC_GVL. Algunas de las variables de PLC_GVL son de solo lectura (por
ejemplo, PLC_R) y otras son de lectura/escritura (por ejemplo, PLC_W).
z Se declaran automáticamente como variables globales. Tienen alcance en todo el sistema y
cualquier unidad de organización del programa (POU) puede acceder a ellas en cualquier
tarea.
EIO0000001471 04/2014 13
M251 Variables del sistema
14 EIO0000001471 04/2014
M251 Variables del sistema
Introducción
En este apartado se describen los pasos necesarios para programar y usar las variables de
sistema en SoMachine.
Las variables de sistema son de ámbito global y pueden usarse en todas las unidades de
organización del programa (POU) de la aplicación.
No es necesario declarar las variables de sistema en la Lista de variables globales (GVL). Se
declaran automáticamente desde la biblioteca de sistema del controlador.
NOTA: En el ejemplo anterior, tras introducir el nombre de estructura PLC_R., SoMachine ofrece
un menú desplegable de nombres/variables de componentes posibles.
EIO0000001471 04/2014 15
M251 Variables del sistema
Ejemplo
En el ejemplo siguiente se muestra el uso de algunas variables de sistema:
VAR
myCtr_Serial : DWORD;
myCtr_ID : WORD;
myCtr_FramesRx : UDINT;
END_VAR
myCtr_Serial := PLC_R.i_dwSerialNumber;
myCtr_ID := PLC_R.i_wVendorID;
myCtr_FramesRx := SERIAL_R[0].i_udiFramesReceivedOK;
16 EIO0000001471 04/2014
M251 Variables del sistema
Sección 1.2
Estructuras PLC_R y PLC_W
Descripción general
En este apartado se describen las diferentes variables de sistema incluidas en las estructuras
PLC_R y PLC_W.
EIO0000001471 04/2014 17
M251 Variables del sistema
Estructura de variables
En esta tabla se describen los parámetros de la variable de sistema PLC_R (tipo PLC_R_STRUCT):
18 EIO0000001471 04/2014
M251 Variables del sistema
EIO0000001471 04/2014 19
M251 Variables del sistema
20 EIO0000001471 04/2014
M251 Variables del sistema
NOTA: n/a significa que no existe una asignación de dirección Modbus predefinida para esta
variable de sistema.
EIO0000001471 04/2014 21
M251 Variables del sistema
Estructura de variables
En la tabla se describen los parámetros de la variable del sistema PLC_W (tipo PLC_W_STRUCT):
NOTA: n/a significa que no existe ninguna asignación de %MW predefinida para esta variable del
sistema.
22 EIO0000001471 04/2014
M251 Variables del sistema
Sección 1.3
Estructuras SERIAL_R y SERIAL_W
Descripción general
En este apartado se enumeran y describen las diversas variables del sistema incluidas en las
estructuras SERIAL_R y SERIAL_W.
EIO0000001471 04/2014 23
M251 Variables del sistema
Introducción
SERIAL_R es una matriz de tipo 2 SERIAL_R_STRUCT. Cada elemento de la matriz devuelve las
variables de sistema de diagnóstico para la línea serie correspondiente.
En el caso de M251 Logic Controller:
z Serial_R[0] hace referencia a la línea serie
z Serial_R[1] está reservado
Estructura de variables
En la tabla se describen los parámetros de las variables del sistema de SERIAL_R[0...1]:
NOTA: n/a significa que no existe ninguna asignación de %MW predefinida para esta variable del
sistema.
NOTA:
Los contadores de SERIAL_R se restablecen en los siguientes casos:
z Descarga
z Restablecimiento del controlador.
z Comando SERIAL_W[x].q_wResetCounter
z Comando de restablecimiento mediante el número 8 del código de la función de petición
Modbus.
24 EIO0000001471 04/2014
M251 Variables del sistema
Introducción
SERIAL_W es una matriz de tipo 2 SERIAL_W_STRUCT. Cada elemento de la matriz fuerza las
variables del sistema SERIAL_R para restablecer la línea serie correspondiente.
En el caso de M251 Logic Controller:
z Serial_W[0] hace referencia a la línea serie
z Serial_W[1] está reservado
Estructura de variables
En la tabla se describen los parámetros de la variable de sistema de SERIAL_W[0..1]:
NOTA: n/a significa que no existe ninguna asignación de %MW predefinida para esta variable del
sistema.
EIO0000001471 04/2014 25
M251 Variables del sistema
Sección 1.4
Estructuras ETH_R y ETH_W
Descripción general
En este apartado se describen las diferentes variables de sistema incluidas en las estructuras
ETH_R y ETH_W.
26 EIO0000001471 04/2014
M251 Variables del sistema
Estructura de variables
En la tabla siguiente se describen los parámetros de la variable de sistema ETH_R (tipo
ETH_R_STRUCT):
EIO0000001471 04/2014 27
M251 Variables del sistema
28 EIO0000001471 04/2014
M251 Variables del sistema
EtherNet/IP Specific
n/d i_udiETHIP_IOMessagingTransmitted UDINT Tramas EtherNet/IP Clase 1
transmitidas.
Reseteo al encender o con el
comando de reseteo
ETH_W.q_wResetCounter.
n/a i_udiETHIP_IOMessagingReceived UDINT Tramas EtherNet/IP Clase 1
recibidas.
Reseteo al encender o con el
comando de reseteo
ETH_W.q_wResetCounter.
n/a i_udiUCMM_Request UDINT Mensajes recibidos de
EtherNet/IP desconectada.
Reseteo al encender o con el
comando de reseteo
ETH_W.q_wResetCounter.
n/a i_udiUCMM_Error UDINT Mensajes recibidos no
válidos de EtherNet/IP
desconectada.
Reseteo al encender o con el
comando de reseteo
ETH_W.q_wResetCounter.
EIO0000001471 04/2014 29
M251 Variables del sistema
30 EIO0000001471 04/2014
M251 Variables del sistema
EIO0000001471 04/2014 31
M251 Variables del sistema
NOTA: n/a significa que no existe una asignación de %MW predefinida para esta variable de
sistema.
32 EIO0000001471 04/2014
M251 Variables del sistema
Estructura de variables
En la tabla siguiente se describen los parámetros de la variable de sistema ETH_W (tipo
ETH_W_STRUCT):
NOTA: n/d significa que no existe ninguna asignación de %MW predefinida para esta variable de
sistema.
EIO0000001471 04/2014 33
M251 Variables del sistema
Sección 1.5
Estructura de TM3_MODULE_R
Estructura de TM3_MODULE_R
Introducción
TM3_MODULE_R es una matriz de 14 variables de tipo TM3_MODULE_R_STRUCT. Cada elemento
de la matriz devuelve las variables de sistema de diagnóstico para el módulo de ampliación TM3
correspondiente.
En el caso de Modicon M251 Logic Controller:
z TM3_MODULE_R[0] hace referencia al módulo de ampliación TM3 0
z ...
z TM3_MODULE_R[13] hace referencia al módulo de ampliación TM3 13
Estructura de variables
En la tabla siguiente se describen los parámetros de la variable de sistema
TM3_MODULE_R[0...13]:
NOTA: n/a significa que no existe una asignación de %MW predefinida para esta variable de
sistema.
34 EIO0000001471 04/2014
M251 Variables del sistema
Sección 1.6
Estructura PROFIBUS_R
Estructura PROFIBUS_R
Estructura de variables
En esta tabla se describen los parámetros de la variable de sistema PROFIBUS_R (tipo
PROFIBUS_R_STRUCT):
NOTA: n/a significa que no existe ninguna asignación de %MW predefinida para esta variable de
sistema.
EIO0000001471 04/2014 35
M251 Variables del sistema
36 EIO0000001471 04/2014
Modicon M251 Logic Controller
Funciones de sistema M251,
EIO0000001468 04/2014
Capítulo 2
Funciones de sistema M251,
Descripción general
En este capítulo se describen las funciones de sistema incluidas en la biblioteca PLCSystem de
M251.
EIO0000001471 04/2014 37
Funciones de sistema M251,
Sección 2.1
Funciones de lectura M251
Descripción general
En este apartado se describen las funciones de lectura incluidas en la biblioteca PLCSystem de
M251.
38 EIO0000001471 04/2014
Funciones de sistema M251,
Descripción de la función
Esta función devuelve la hora del RTC actual en segundos en formato UNIX.
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
Ejemplo
En el siguiente ejemplo se describe cómo obtener la hora del RTC actual:
VAR
MyRTC : DINT := 0;
END_VAR
MyRTC := GetRtc();
EIO0000001471 04/2014 39
Funciones de sistema M251,
Descripción de la función
Esta función devuelve TRUE durante el primer ciclo MAST después de un arranque en frío (primer
ciclo tras la descarga o reset frío).
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
Ejemplo
Consulte la función IsFirstMastCycle (véase página 41).
40 EIO0000001471 04/2014
Funciones de sistema M251,
Descripción de la función
Esta función devuelve TRUE durante el primer ciclo MAST después de un arranque.
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
Ejemplo
En este ejemplo se describen las tres funciones IsFirstMastCycle, IsFirstMast-
ColdCycle y IsFirstMastWarmCycle utilizadas a la vez.
Use este ejemplo en la tarea MAST. De lo contrario, se puede ejecutar varias veces o
posiblemente nunca (una tarea adicional puede llamarse varias veces o no llamarse durante un
ciclo de tarea MAST):
VAR MyIsFirstMastCycle : BOOL; MyIsFirstMastWarmCycle : BOOL; MyIsFirst-
MastColdCycle : BOOL; END_VAR
MyIsFirstMastWarmCycle := IsFirstMastWarmCycle(); MyIsFirstMastColdCycle
:= IsFirstMastColdCycle(); MyIsFirstMastCycle := IsFirstMastCycle();
IF (MyIsFirstMastWarmCycle) THEN
(*Este es el primer ciclo MAST después de un arranque en caliente: todas
las variables se establecen en sus valores de inicialización excepto las
variables Retain*)
(*=> inicia las variables necesarias para que la aplicación se ejecute
como se esperaba en este caso*)
END_IF;
EIO0000001471 04/2014 41
Funciones de sistema M251,
IF (MyIsFirstMastColdCycle) THEN
(*Este es el primer ciclo MAST después de un arranque en frío: todas las
variables se establecen en sus valores de inicialización, incluso las
variables Retain*)
(*=> inicia las variables necesarias para que la aplicación se ejecute
como se esperaba en este caso*)
END_IF;
IF (MyIsFirstMastCycle) THEN
(*Este es el primer ciclo MAST después de un arranque, es decir, después
de un arranque en caliente o en frío así, como los comandos STOP/RUN*)
(*=> inicia las variables necesarias para que la aplicación se ejecute
como se esperaba en este caso*)
END_IF;
42 EIO0000001471 04/2014
Funciones de sistema M251,
Descripción de la función
Esta función devuelve TRUE durante el primer ciclo MAST después de un arranque en caliente.
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
Ejemplo
Consulte la función IsFirstMastCycle (véase página 41).
EIO0000001471 04/2014 43
Funciones de sistema M251,
Sección 2.2
Funciones de escritura de M251
Descripción de la función
Esta función acelera o ralentiza la frecuencia del RTC para dar control a la aplicación para
compensar el RTC, en función del entorno de funcionamiento (temperatura, etc.). El valor de
compensación se indica en segundos por semana. Puede ser positivo (acelerar) o negativo
(ralentizar).
NOTA: La función SetRTCDrift solo se debe llamar una [Link] nueva llamada sustituye el
valor de compensación por uno [Link] valor se conserva en el hardware del Logic Controller
mientras el RTC se alimenta mediante la alimentación principal o la baterí[Link] se eliminan la
batería y la alimentación principal, el valor de compensación del RTC no estará disponible.
Representación gráfica
Representación IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
NOTA: Los parámetros Día, Hora y Minuto se utilizan únicamente para garantizar la
compatibilidad con versiones anteriores.
NOTA: Si el valor introducido para RtcDrift sobrepasa el límite, el firmware del Logic Controller
definirá el valor en el máximo.
44 EIO0000001471 04/2014
Funciones de sistema M251,
Ejemplo
En este ejemplo, la función únicamente se invoca durante el primer ciclo de la tarea MAST.
Acelera el RTC en 4 segundos a la semana (18 segundos al mes).
VAR
MyRTCDrift : SINT (-29..29) := 0;
MyDay : DAY_OF_WEEK;
MyHour : HOUR;
MyMinute : MINUTE;
END_VAR
IF IsFirstMastCycle() THEN
MyRTCDrift := 4;
MyDay := 0;
MyHour := 0;
MyMinute := 0;
SetRTCDrift(MyRTCDrift, MyDay, MyHour, MyMinute);
END_IF
EIO0000001471 04/2014 45
Funciones de sistema M251,
Sección 2.3
Funciones de usuario de M251
Descripción general
En esta sección se describen las funciones DataFileCopy y ExecuteScript incluidas en la
biblioteca M251 PLCSystem.
46 EIO0000001471 04/2014
Funciones de sistema M251,
Descripción de la función
Esta función permite copiar los datos de la memoria en un archivo y viceversa. El archivo se
encuentra en el sistema interno o el sistema externo (tarjeta SD) de archivos.
El bloque de funciones DataFileCopy puede:
z leer datos de un archivo formateado, o
z Copie datos del búfer de memoria a un archivo formateado. Para obtener más información,
consulte Flash Memory Organization (véase Modicon M251 Logic Controller, Programming
Guide).
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
EIO0000001471 04/2014 47
Funciones de sistema M251,
ADVERTENCIA
FUNCIONAMIENTO IMPREVISTO DEL EQUIPO
Compruebe que el tamaño de la ubicación de la memoria es el adecuado y que el tipo de archivo
es el correcto antes de copiar el archivo a la memoria.
El incumplimiento de estas instrucciones puede causar la muerte, lesiones serias o daño
al equipo.
NOTA: Si escribe en la variable de memoria dentro del área de escritura del archivo, generará un
error CRC detectado.
48 EIO0000001471 04/2014
Funciones de sistema M251,
Ejemplo
En este ejemplo se describe cómo copiar comandos de archivos:
VAR
LocalArray : ARRAY [0..29] OF BYTE;
myFileName: STRING := ‘exportfile’;
EXEC_FLAG: BOOL;
DataFileCopy: DataFileCopy;
END_VAR
DataFileCopy(
xExecute:= EXEC_FLAG,
sFileName:= myFileName,
xRead:= FALSE,
xSecure:= FALSE,
iLocation:= DFCL_INTERNAL,
dwSize:= SIZEOF(LocalArray),
dwAdd:= ADR(LocalArray),
xDone=> ,
xBusy=> ,
xError=> ,
eError=> );
EIO0000001471 04/2014 49
Funciones de sistema M251,
Descripción de la función
Esta función puede ejecutar los siguientes comandos de secuencia de comandos de la tarjeta SD:
z Descargar
z Cargar
z SetNodeName
z Eliminar
z Reiniciar
Utilice la misma sintaxis que en la secuencia de comandos de USB para ejecutar estos comandos
(distingue entre mayúsculas y minúsculas). Consulte Generación de scripts y archivos con el
almacenamiento masivo en la tarjeta SD (véase Modicon M251 Logic Controller, Programming
Guide).
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
50 EIO0000001471 04/2014
Funciones de sistema M251,
Ejemplo
En este ejemplo se describe cómo ejecutar un comando de la secuencia de comandos:
VAR
EXEC_FLAG: BOOL;
ExecuteScript: ExecuteScript;
END_VAR
ExecuteScript(
xExecute:= EXEC_FLAG,
sCmd:= ‘Upload “/usr/Syslog/*”’,
xDone=> ,
xBusy=> ,
xError=> ,
eError=> );
EIO0000001471 04/2014 51
Funciones de sistema M251,
Sección 2.4
Funciones de lectura TM3
Descripción general
En este apartado se describen las funciones de lectura TM3 incluidas en la biblioteca M251
PLCSystem.
52 EIO0000001471 04/2014
Funciones de sistema M251,
Descripción de la función
Esta función devuelve el estado del bus del módulo. El índice del módulo se proporciona como
parámetro de entrada.
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
EIO0000001471 04/2014 53
Funciones de sistema M251,
Descripción de la función
Esta función llena pStatusBuffer con la tabla de estado del módulo ModuleIndex.
Representación gráfica
Representación en IL y ST
Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de las
funciones y los bloques de funciones (véase página 87).
ADVERTENCIA
FUNCIONAMIENTO IMPREVISTO DEL EQUIPO
Asegúrese de que pStatusBuffer está asignado.
El incumplimiento de estas instrucciones puede causar la muerte, lesiones serias o daño
al equipo.
54 EIO0000001471 04/2014
Funciones de sistema M251,
Ejemplo
En el siguiente ejemplo se describe cómo obtener el estado interno del módulo:
VAR
AMM3HT_Channel1_Input_Status: BYTE;
END_VAR
TM3_GetModuleInternalStatus(0, 1, 1, ADR(AMM3HT_Channel1_Input_Status));
EIO0000001471 04/2014 55
Funciones de sistema M251,
56 EIO0000001471 04/2014
Modicon M251 Logic Controller
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001468 04/2014
Capítulo 3
Tipos de datos de la biblioteca PLCSystem de M251
Descripción general
En este capítulo se describen los tipos de datos de la biblioteca PLCSystem de M251.
Hay dos tipos de datos disponibles:
z Los tipos de datos de variables de sistema son utilizados por las variables de sistema
(véase página 11) de la biblioteca PLCSystem de M251 (PLC_R, PLC_W,...).
z Los tipos de datos de funciones de sistema son utilizados por las funciones de sistema
(véase página 37) de lectura/escritura de la biblioteca PLCSystem de M251.
EIO0000001471 04/2014 57
Tipos de datos de la biblioteca PLCSystem de M251
Sección 3.1
Tipos de datos de variables de sistema de PLC_R/W
Descripción general
En este apartado se describen los tipos de datos de las variables de sistema incluidas en las
estructuras PLC_R y PLC_W.
58 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 59
Tipos de datos de la biblioteca PLCSystem de M251
60 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 61
Tipos de datos de la biblioteca PLCSystem de M251
62 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 63
Tipos de datos de la biblioteca PLCSystem de M251
Para obtener más información sobre los motivos por los que se ha detenido el controlador,
consulte la Descripción de los estados del controlador (véase Modicon M251 Logic Controller,
Programming Guide).
64 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 65
Tipos de datos de la biblioteca PLCSystem de M251
66 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 67
Tipos de datos de la biblioteca PLCSystem de M251
Sección 3.2
Tipos de datos de variables del sistema de DataFileCopy
Descripción general
En esta sección se describen los tipos de datos de variables de sistema incluidos en las
estructuras DataFileCopy.
68 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 69
Tipos de datos de la biblioteca PLCSystem de M251
70 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
Sección 3.3
Tipos de datos de variables del sistema de ExecScript
EIO0000001471 04/2014 71
Tipos de datos de la biblioteca PLCSystem de M251
Sección 3.4
Tipos de datos de variables de sistema de ETH_R/W
Descripción general
En este apartado se describen los tipos de datos de las variables de sistema incluidos en las
estructuras ETH_R y ETH_W.
72 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 73
Tipos de datos de la biblioteca PLCSystem de M251
74 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 75
Tipos de datos de la biblioteca PLCSystem de M251
76 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 77
Tipos de datos de la biblioteca PLCSystem de M251
78 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 79
Tipos de datos de la biblioteca PLCSystem de M251
Sección 3.5
Tipos de datos de variables de sistema de TM3_MODULE_R
Descripción general
En esta sección se enumeran y se describen los tipos de datos de variables de sistema incluidos
en la estructura TM3_MODULE_R.
80 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 81
Tipos de datos de la biblioteca PLCSystem de M251
Descripción
TM3_MODULE_R_ARRAY_TYPE es una matriz de 0 a 13 TM3_MODULE_R_STRUCT.
82 EIO0000001471 04/2014
Tipos de datos de la biblioteca PLCSystem de M251
EIO0000001471 04/2014 83
Tipos de datos de la biblioteca PLCSystem de M251
Sección 3.6
Tipos de datos de funciones de sistema
84 EIO0000001471 04/2014
Modicon M251 Logic Controller
EIO0000001468 04/2014
Apéndices
EIO0000001471 04/2014 85
86 EIO0000001471 04/2014
Modicon M251 Logic Controller
Representación de funciones y de bloques de funciones
EIO0000001468 04/2014
Apéndice A
Representación de funciones y de bloques de funciones
Descripción general
Cada función se puede representar en los lenguajes siguientes:
z IL: Lista de instrucciones
z ST: Texto estructurado
z LD: Diagrama de contactos
z FBD: Diagrama de bloques de funciones
z CFC: Diagrama de función continua
EIO0000001471 04/2014 87
Representación de funciones y de bloques de funciones
Función
Una función:
z Es una POU (Unidad de organización de programa) que devuelve un resultado inmediato.
z Se le llama directamente por su nombre (y no a través de una instancia).
z No tiene un estado persistente desde una llamada hasta la otra.
z Se puede utilizar como un operando en otras expresiones.
Bloque de funciones
Bloque de funciones
z Es una POU (Unidad de organización de programa) que devuelve una o más salidas.
z Debe llamarse a través de una instancia (copia del bloque de funciones con nombre y variables
dedicados).
z Todas las instancias tienen un estado persistente (salidas y variables internas) de una llamada
a otra desde un bloque de funciones o programa.
Ejemplos: temporizadores, contadores
En el ejemplo, Timer_ON es una instancia del bloque de funciones TON:
88 EIO0000001471 04/2014
Representación de funciones y de bloques de funciones
Información general
En esta sección se describe cómo implementar una función y un bloque de funciones en lenguaje
IL.
Las funciones IsFirstMastCycle y SetRTCDrift y el bloque de funciones TON se utilizan
como ejemplos para mostrar implementaciones.
Paso Acción
1 Abra o cree una nueva POU en el lenguaje de Lista de instrucciones (IL).
NOTA: Aquí no se detalla el procedimiento para crear una POU. Para obtener más información,
consulte Adding and Calling POUs (véase SoMachine, - Guía de programación).
2 Las variables de entrada son los parámetros de entrada requeridos por la función.
3 Si la función tiene 1 o más entradas, empiece a cargar la primera entrada utilizando la instrucción
LD.
4 Inserte una nueva línea abajo y:
z escriba el nombre de la función en la columna de operadores (campo izquierdo); o
z Utilice la opción Accesibilidad para seleccionar la función (seleccione Insertar llamada de
módulo en el menú contextual).
5 Si la función tiene más de una entrada y se utiliza Accesibilidad, se crea automáticamente el número
necesario de líneas con ??? en los campos de la derecha. Sustituya los ??? por el valor o la variable
adecuada que corresponda al orden de las entradas.
6 Inserte una nueva línea para almacenar el resultado de la función en la variable adecuada: Escriba
la instrucción ST en la columna de operadores (campo de la izquierda) y un nombre de variable en
el campo de la derecha.
EIO0000001471 04/2014 89
Representación de funciones y de bloques de funciones
Ejemplo en IL de una
función con parámetros
de entrada:
SetRTCDrift
90 EIO0000001471 04/2014
Representación de funciones y de bloques de funciones
Paso Acción
1 Abra o cree una POU nueva en el lenguaje de Lista de instrucciones (IL).
NOTA: Aquí no se detalla el procedimiento para crear una POU. Para obtener más información,
consulte Adding and Calling POUs (véase SoMachine, - Guía de programación).
2 Cree las variables que necesita el bloque de funciones, incluido el nombre de instancia.
3 Se llama a los bloques de funciones utilizando una instrucción CAL:
z Utilice la opción Accesibilidad para seleccionar el bloque de funciones (botón derecho del ratón
y seleccionar Insertar llamada de módulo en el menú contextual).
z La instrucción CAL y la E/S necesaria se crean automáticamente.
Para ilustrar el procedimiento, considere este ejemplo con el bloque de funciones TON que se
representa gráficamente a continuación:
3 Representación gráfica
TON
EIO0000001471 04/2014 91
Representación de funciones y de bloques de funciones
92 EIO0000001471 04/2014
Representación de funciones y de bloques de funciones
Información general
En esta sección se describe el modo de implementar una función y un bloque de funciones en
lenguaje ST.
La función SetRTCDrift y el bloque de funciones TON se utilizan como ejemplos para mostrar
implementaciones.
Paso Acción
1 Abra o cree una POU nueva en el lenguaje de Texto estructurado (ST).
NOTA: Aquí no se detalla el procedimiento para crear una POU. Para obtener más información,
consulte Adding and Calling POUs (véase SoMachine, - Guía de programación).
2 Las variables de entrada son los parámetros de entrada requeridos por la función.
3 Utilice la sintaxis general en el Editor POU ST para el lenguaje ST de una función. La sintaxis
general es:
FunctionResult:= FunctionName(VarInput1, VarInput2,.. VarInputx);
EIO0000001471 04/2014 93
Representación de funciones y de bloques de funciones
Paso Acción
1 Abra o cree una POU nueva en el lenguaje de Texto estructurado (ST).
NOTA: Aquí no se detalla el procedimiento para crear una POU. Para obtener más
información sobre la adición, declaración y llamadas de POU, consulte la
documentación (véase SoMachine, - Guía de programación) relacionada.
2 Cree las variables de entrada y salida y la instancia requeridas para el bloque de
funciones:
z Las variables de entrada son los parámetros de entrada requeridos por el bloque
de funciones
z Las variables de salida reciben el valor devuelto por el bloque de funciones
Para ilustrar el procedimiento, considere este ejemplo con el bloque de funciones TON que se
representa gráficamente a continuación:
3 Representación gráfica
TON
94 EIO0000001471 04/2014
Representación de funciones y de bloques de funciones
En esta tabla se muestran ejemplos de una llamada de bloque de funciones en lenguaje ST:
EIO0000001471 04/2014 95
Representación de funciones y de bloques de funciones
96 EIO0000001471 04/2014
Modicon M251 Logic Controller
Glosario
EIO0000001468 04/2014
Glosario
0-9
%MW
Según el estándar IEC, %MW representa un registro de palabra de memoria (por ejemplo un
objeto de lenguaje del tipo palabra de memoria).
A
aplicación
Un programa que incluye datos de configuración, símbolos y documentación.
Aplicación de arranque
(aplicación de arranque) El archivo binario que contiene la aplicación. Normalmente está
guardada en el PLC y permite que el PLC arranque en la aplicación generada por el usuario.
ARRAY
La disposición sistemática de objetos de datos de un solo tipo en forma de tabla definida en la
memoria del controlador lógico. La sintaxis es la siguiente: ARRAY [<dimensión>] OF <Tipo>
Ejemplo 1: ARRAY [1..2] OF BOOL es una tabla de una dimensión compuesta por dos
elementos de tipo BOOL.
Ejemplo 2: ARRAY [1..10, 1..20] OF INT es una tabla de dos dimensiones compuesta por
10 x 20 elementos de tipo INT.
B
bloque de funciones
Una unidad de programación que dispone de una o varias entradas y devuelve una o varias
salidas. Los FBs se llaman mediante una instancia (copia del bloque de funciones con nombre y
variables dedicados), y todas las instancias tienen un estado persistente (salidas y variables
internas) de una llamada a la otra.
Ejemplos: temporizadores, contadores
BOOL
(booleano) Un tipo de datos básico en informática. Una variable BOOL puede tener uno de estos
valores: 0 (FALSE) o 1 (TRUE). Un bit extraído de una palabra es de tipo BOOL, por ejemplo,
%MW10.4 es un quinto bit con un número de palabra de memoria 10.
EIO0000001471 04/2014 97
Glosario
BOOTP
(protocolo bootstrap) Un protocolo de red UDP que puede utilizar un cliente de red para obtener
de forma automática una dirección IP (y tal vez otros datos) de un servidor. El cliente se identifica
ante el servidor utilizando la dirección MAC del cliente. El servidor, que mantiene una tabla
preconfigurada de direcciones MAC de los dispositivos cliente y las direcciones IP asociadas,
envía al cliente su dirección IP predefinida. BOOTP se utilizaba originariamente como un método
que permitía iniciar los hosts sin disco de forma remota por una red. El proceso BOOTP asigna un
arrendamiento infinito de una dirección IP. El servicio BOOTP utiliza los puertos UDP 67 y 68.
byte
Un tipo que está codificado en un formato de 8 bits que, en el formato hexadecimal, va de 16#00
a 16#FF.
C
cadena
Una variable que es una serie de caracteres ASCII.
CFC
(diagrama de función continua) Un lenguaje de programación (una ampliación del estándar IEC
61131-3) basado en el lenguaje de diagrama de bloque de funciones (FBD) y que funciona como
un diagrama de flujo. Sin embargo, no se utiliza ninguna red y es posible un posicionamiento libre
de elementos gráficos, lo que permite bucles de realimentación. En cada bloque, las entradas se
sitúan a la izquierda y las salidas, a la derecha. Las salidas del bloque se pueden conectar a las
entradas de otros bloques para formar expresiones complejas.
configuración
Organización e interconexión de los componentes de hardware en un sistema y los parámetros
del hardware y software que determina las características operativas del sistema.
controlador
Automatiza procesos industriales (también conocido como controlador lógico programable o
controlador programable).
CRC
(comprobación de redundancia cíclica) Método que se emplea para determinar la validez de la
transmisión de la comunicación. La transmisión contiene un campo de bits que constituye una
suma de comprobación. El mensaje se usa para que el transmisor calcule la suma de
comprobación según el contenido del mensaje. A continuación, los nodos receptores recalculan
el campo de la misma manera. Toda discrepancia en el valor de los dos cálculos CRC indica que
el mensaje transmitido y el mensaje recibido son diferentes.
98 EIO0000001471 04/2014
Glosario
D
DHCP
(protocolo de configuración dinámica del host) Una ampliación avanzada de BOOTP. DHCP es
más avanzado, pero tanto DHCP como BOOTP son habituales. (DHCP puede gestionar
solicitudes de cliente BOOTP.)
diagrama de bloques de funciones
Uno de los cinco lenguajes para lógica o control que cumplen con el estándar IEC 61131-3 para
sistemas de control. El diagrama de bloques de funciones es un lenguaje de programación
orientado gráficamente. Funciona con una lista de redes en la que cada red contiene una
estructura gráfica de cuadros y líneas de conexión que representa una expresión lógica o
aritmética, la llamada de un bloque de funciones, un salto o una instrucción de retorno.
dirección MAC
(dirección de control de acceso a medios) Un número único de 48 bits asociado a una parte
específica del hardware. La dirección MAC se programa en cada tarjeta de red o dispositivo
cuando se fabrica.
DWORD
(palabra doble) Con codificación en formato de 32 bits.
E
ejecución
Un comando que hace que el controlador explore el programa de la aplicación, lea las entradas
físicas y escriba en las salidas físicas según la solución de la lógica del programa.
elemento
El nombre abreviado de ARRAY.
equipo
Una parte de la máquina que incluye subconjuntos tales como cintas transportadoras, plataformas
giratorias, etc.
Ethernet
Una tecnología de capas física y de conexión de datos para LANs, también conocida como
IEE 802.3.
EtherNet/IP
(protocolo industrial de Ethernet) Un protocolo de comunicaciones abiertas para fabricar
soluciones de automatización en sistemas industriales. EtherNet/IP se incluye en una familia de
redes que implementa el protocolo industrial común en sus capas superiores. La organización de
apoyo (ODVA) especifica EtherNet/IP para cumplir la adaptabilidad y la independencia de los
medios.
EIO0000001471 04/2014 99
Glosario
F
FB
(bloque de funciones) Un práctico mecanismo de programación que consolida un grupo de
instrucciones de programación para realizar una acción específica y normalizada, por ejemplo, el
control de velocidad, el control de intervalo o el conteo. Un bloque de funciones se puede
componer de datos de configuración, un conjunto de parámetros de funcionamiento internos o
externos y, normalmente, una o diversas entradas y salidas de datos.
firmware
Representa el BIOS, los parámetros de datos y las instrucciones de programación que constituyen
el sistema operativo en un controlador. El firmware se almacena en la memoria no volátil del
controlador.
función
Una unidad de programación que dispone de una entrada y devuelve un resultado inmediato. No
obstante, a diferencia de los FBs, se llama directamente por su nombre (y no mediante una
instancia), no tiene un estado persistente desde una llamada hasta la siguiente y se puede utilizar
como un operando en otras expresiones de programación.
Ejemplos: operadores booleanos (AND), cálculos, conversiones (BYTE_TO_INT)
G
GVL
(lista de variables globales) Gestiona variables globales que se pueden transferir entre
controladores en una red Ethernet TCP/IP Modbus.
H
hex
(hexadecimal)
I
ID
(identificador/identificación)
IEC
(International Electrotechnical Commission) Una organización de estándares internacional sin
ánimo de lucro y no gubernamental que prepara y publica estándares internacionales para todas
las tecnologías eléctricas, electrónicas y relacionadas.
IEC 61131-3
Tercera parte de un estándar de tres partes de la IEC para los equipos de automatización
industriales. IEC 61131-3 se ocupa de los lenguajes de programación del controlador y define dos
estándares de lenguajes de programación gráficos y dos textuales. Los lenguajes de
programación gráficos son un diagrama de contactos y un diagrama de bloque de funciones. Los
lenguajes de programación textuales incluyen texto estructurado y lista de instrucciones.
IEEE 802.3
Una recopilación de estándares del IEEE que definen la capa física y la subcapa de control de
acceso a medios de la capa de conexión de datos, deEthernet cableado.
IL
(lista de instrucciones) Un programa escrito en lenguaje que se compone de una serie de
instrucciones basadas en texto y ejecutadas secuencialmente por el controlador. Cada instrucción
incluye un número de línea, un código de instrucción y un operando (consulte IEC 61131-3).
INT
(entero) Un número entero con codificación de 16 bits.
IP
(protocolo de Internet) Parte de la familia de protocolos TCP/IP que hace un seguimiento de las
direcciones de Internet de los dispositivos, encamina los mensajes salientes y reconoce los
mensajes entrantes.
L
LD
(diagrama de contactos) Una representación gráfica de instrucciones de un programa de
controlador con símbolos para contactos, bobinas y bloques en una serie de escalones ejecutados
de forma secuencial por un controlador (consulte IEC 61131-3).
LWORD
(palabra larga) Un tipo de datos con codificación en formato de 64 bits.
M
MAST
Una tarea del procesador que se ejecuta en el software de programación. La tarea MAST consta
de dos secciones:
z IN: las entradas se copian en la sección IN antes de ejecutar la tarea MAST.
z OUT: las salidas se copian en la sección OUT después de ejecutar la tarea MAST.
memoria Flash
Una memoria no volátil que se puede sobrescribir. Se almacena en una memoria EEPROM
especial que se puede borrar y volver a programar.
P
PLC
(controlador lógico programable) Un ordenador industrial que se usa para automatizar procesos
de fabricación e industriales y otros procesos electromecánicos. Los PLCs se diferencian de los
ordenadores comunes en que están diseñados de forma que tienen varias matrices de entrada y
salida y que disponen de especificaciones más sólidas contra los golpes, las vibraciones, la
temperatura, las interferencias eléctricas, etc.
POU
(unidad de organización de programas) Una declaración variable en el código fuente y el conjunto
de instrucciones correspondiente. Las POUs facilitan la reutilización modular de programas de
software, funciones y bloques de funciones. Una vez declaradas, cada una de las POUs está
disponible para las otras.
programa
El componente de una aplicación consistente en código fuente compilado capaz de poder ser
instalado en la memoria de un controlador lógico.
protocolo
Una convención o una definición de norma que controla o habilita la conexión, la comunicación y
la transferencia de datos entre dos sistemas o dispositivos informáticos.
R
red
Un sistema de dispositivos interconectados que comparten una ruta de datos común y un
protocolo de comunicaciones.
S
ST
(Texto estructurado) Un lenguaje que incluye instrucciones complejas y anidadas (por ejemplo,
bucles de repetición, ejecuciones condicionales o funciones). ST está conforme con IEC 61131-3.
STOP
Comando que hace que el controlador detenga la ejecución de un programa de aplicación.
T
tarea
Grupo de secciones y subrutinas ejecutadas cíclica o periódicamente si se trata de la tarea MAST,
o periódicamente si se trata de la tarea FAST.
Una tarea siempre tiene un nivel de prioridad y tiene asociadas entradas y salidas del controlador.
Estas E/S se actualizan en función de la tarea.
U
UDINT
(entero doble sin signo) Codificado en 32 bits.
UINT
(entero sin signo) Codificado en 16 bits.
V
variable
Una unidad de memoria direccionada y modificada por un programa.
variable del sistema
Una variable que proporciona datos del controlador e información de diagnóstico, y permite enviar
comandos al controlador.
variable no ubicada
Una variable que no tiene dirección (consulte variable ubicada).
W
watchdog
Un watchdog es un cronómetro especial utilizado para garantizar que los programas no superen
su tiempo de exploración asignado. El cronómetro watchdog suele configurarse con un valor
superior al tiempo de exploración y se resetea a 0 cuando termina cada ciclo de exploración. Si el
cronómetro watchdog alcanza el valor predeterminado, por ejemplo, porque el programa queda
atrapado en un bucle infinito, se declara un fallo y el programa se detiene.
WORD
Un tipo codificado en formato de 16 bits.
Índice
D de funciones, 88
ExecuteScript, 50
DataFileCopy
GetRtc, 39
funciones, 47
IsFirstMastColdCycle, 40
DataFileCopyError
Funciones
Tipos de datos, 69
IsFirstMastCycle, 41
DataFileCopyLocation
IsFirstMastWarmCycle, 43
tipos de datos, 70
funciones
SetRTCDrift, 44
E TM3_GetModuleBusStatus, 53
TM3_GetModuleInternalStatus, 54
ETH_R Functions
variable de sistema, 27 DataFileCopy, 47
ETH_R_FRAME_PROTOCOL
tipos de datos, 73
ETH_R_IP_MODE G
tipos de datos, 74
GetRtc
ETH_R_PORT_DUPLEX_STATUS
funciones, 39
Tipos de datos, 75
ETH_R_PORT_LINK_STATUS
Tipos de datos, 77 I
ETH_R_PORT_SPEED
IsFirstMastColdCycle
Tipos de datos, 78
funciones, 40
ETH_W
IsFirstMastCycle
Variable de sistema, 33
Funciones, 41
ExecuteScript
IsFirstMastWarmCycle
funciones, 50
Funciones, 43
ExecuteScriptError
Tipos de datos, 71
P
F PLC_R
variable de sistema, 18
funciones
PLC_R_APPLICATION_ERROR
cómo utilizar una función o un bloque de
tipos de datos, 59
funciones en lenguaje IL, 89
PLC_R_BOOT_PROJECT_STATUS
cómo utilizar una función o un bloque de
Tipos de datos, 60
funciones en lenguaje ST, 93
PLC_R_IO_STATUS
diferencias entre una función y un bloque
Tipos de datos, 61
PLC_R_SDCARD_STATUS
tipos de datos, 62