Sei sulla pagina 1di 440

Unity Pro 4.

0
Comunicacin Librera de bloques
07/2008 spa

33002530.07

www.schneider-electric.com

33002530 07 07/2008

Tabla de materias

Informacin de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Acerca de este libro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Parte I Generalidades. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Introduccin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Captulo 1

Tipos de bloques y utilizacin. . . . . . . . . . . . . . . . . . . . . . . . . . 17


Introduccin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tipos de bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Estructura de FFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EN y ENO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 18 20 23

Captulo 2

Disponibilidad de los mdulos en las diferentes plataformas de hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25


Disponibilidad de bloques en las diversas plataformas de hardware . . . . . . . . . 25

Captulo 3
3.1

Operacin de la comunicacin EF . . . . . . . . . . . . . . . . . . . . . . 27
Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Informacin general sobre las funciones de comunicacin de Premium y Atrium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reglas de uso de las funciones de comunicacin en PLC Premium y Atrium . . Las funciones de comunicacin en autmatas Premium y Atrium . . . . . . . . . . . Estructura de las funciones de comunicacin de Premium y Atrium . . . . . . . . . Direccin del destinatario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Estructura de los parmetros de gestin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parmetros de gestin: informes de comunicacin y funcionamiento . . . . . . . . Parmetros de gestin: longitud y timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Funcin Servidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 29 29 30 31 33 34 35 37 40 41

Parte II Extensiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Introduccin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Captulo 4
33002530 07 07/2008

ADDM: Conversin de direcciones. . . . . . . . . . . . . . . . . . . . . . 45


3

Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Captulo 5 Captulo 6

ADDR: conversin de direcciones . . . . . . . . . . . . . . . . . . . . . . 49


Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

CANCEL: detencin de un intercambio en curso . . . . . . . . . . 51


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Ejemplo de cmo cancelar un intercambio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Captulo 7

CREAD_REG: lectura continua de registro . . . . . . . . . . . . . . . 55


Descripcin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Tipos de datos derivados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Modo de funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Descripcin de los parmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Captulo 8

CWRITE_REG: escritura continua de registro . . . . . . . . . . . . 63


Descripcin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Tipos de datos derivados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Modo de funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Descripcin de los parmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Captulo 9

DATA_EXCH: intercambio de datos entre aplicaciones . . . . 71


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Pantalla de entrada asistida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 Ejemplo de cmo utilizar una red Fipway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Captulo 10 Captulo 11

INPUT_BYTE: recepcin de cadenas de caracteres. . . . . . . . 83


Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

INPUT_CHAR: recepcin de cadenas de caracteres . . . . . . . 87


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Pantalla de entrada asistida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Ejemplo de lectura de cadenas de caracteres a travs de la red Fipway . . . . . . 95 Ejemplo de lectura de cadenas de caracteres mediante la conexin serie de procesadores Modicon M340. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

Captulo 12

MBP_MSTR: Maestro Modbus Plus . . . . . . . . . . . . . . . . . . . . . 99


Descripcin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Descripcin del bloque. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Cdigos de funcin de operacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Estructuras de bloque de control de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Leer datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

33002530 07 07/2008

Escribir datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Obtencin de estadsticas locales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eliminacin de estadsticas locales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Escritura de datos globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lectura de datos globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Obtener estadsticas remotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Borrar estadsticas remotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Funcionamiento de Peer Cop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Restablecimiento de mdulos opcionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lectura de CTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Escritura de CTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Envo de correo electrnico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Leer/escribir datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Estado de funcionamiento de las comunicaciones Peer Cop . . . . . . . . . . . . . . Estadsticas de red Modbus Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Estadsticas de red de Ethernet TCP/IP.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP . . . . . . . . . . . . Cdigos de error especficos de SY/MAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cdigos de error de TPC/IP Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cdigos de error CTE para Ethernet SY/MAX y TCP/IP. . . . . . . . . . . . . . . . . . Cdigos de error del servicio de correo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

111 113 114 115 116 117 118 119 120 121 122 125 127 128 130 136 139 143 145 148 149

Captulo 13

ModbusP_ADDR: direccin de Modbus Plus . . . . . . . . . . . . 151


Descripcin general. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Descripcin detallada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

Captulo 14

OUT_IN_CHAR: envo/recepcin de cadenas de caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pantalla de entrada asistida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ejemplo de cmo enviar/recibir una cadena de caracteres . . . . . . . . . . . . . . . 157 158 161 163 165 167 167 168 169 171 172 172 173 176 179
5

Captulo 15
15.1

OUT_IN_MBUS: funcin de comunicacin Modbus . . . . . . . 165


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Presentacin general del bloque de comunicacin OUT_IN_MBUS . . . . . . . . Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Descripcin de la funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Casos de uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Descripcin del bloque de comunicacin OUT_IN_MBUS . . . . . . . . . . . . . . . . Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Representaciones y parmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parmetro MbusCmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parmetro RetryLmt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15.2

33002530 07 07/2008

15.3

15.4

Parmetro DataBits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 Parmetro RespTout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Parmetro MasterDataArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 Parmetro Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 Instalacin del bloque de comunicacin OUT_IN_MBUS . . . . . . . . . . . . . . . . . 184 Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 Configuracin de la conexin serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Procedimiento para programar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Uso de un mdem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Ejemplo de uso del bloque de comunicacin OUT_IN_MBUS . . . . . . . . . . . . . 192 Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 Descripcin del ejemplo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Estructura de programacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 Declaracin de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Programacin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

Captulo 16

PRINT_CHAR: envo de cadenas de caracteres . . . . . . . . . . 203


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 Pantalla de entrada asistida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Ejemplo de envo de cadenas de caracteres a travs de la red Fipway . . . . . . 209 Ejemplo de envo de cadenas de caracteres mediante la conexin serie de procesadores Modicon M340 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

Captulo 17

RCV_TLG: recepcin de telegramas . . . . . . . . . . . . . . . . . . . 213


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 Ejemplo de cmo recibir un telegrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

Captulo 18 Captulo 19 Captulo 20

READ_ASYN: lectura asncrona de datos . . . . . . . . . . . . . . . 217


Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217

READ_GDATA: lectura de datos globales Modbus Plus . . . 221


Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

READ_REG: lectura de registro . . . . . . . . . . . . . . . . . . . . . . . 223


Descripcin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Tipos de datos derivados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Modo de funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 Descripcin de los parmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229

Captulo 21

READ_VAR: lectura de variables . . . . . . . . . . . . . . . . . . . . . . 231


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 Pantalla de entrada asistida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Ejemplo de utilizacin en un bus Uni-Telway . . . . . . . . . . . . . . . . . . . . . . . . . . 239

33002530 07 07/2008

Ejemplo de bits de lectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 Ejemplo de uso en una red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 Ejemplo de lectura de palabras a travs de la conexin serie de procesadores Modicon M340. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Ejemplo de comprobacin de ejecucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

Captulo 22 Captulo 23

SEND_EMAIL: Envo de un correo electrnico . . . . . . . . . . . 249


Send_Email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

SEND_REQ: peticiones de envo . . . . . . . . . . . . . . . . . . . . . . 253


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lista de peticiones UNI-TE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pantalla de entrada asistida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ejemplo de cmo enviar una peticin UNI-TE . . . . . . . . . . . . . . . . . . . . . . . . . Modificacin de parmetros IP con SEND_REQ (ejemplo) . . . . . . . . . . . . . . . Utilizacin de la funcin SEND_REQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 254 258 263 265 267 268

Captulo 24

SEND_TLG: envo de telegramas . . . . . . . . . . . . . . . . . . . . . . 269


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Ejemplo de cmo enviar un telegrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273

Captulo 25

SYMAX_IP_ADDR: direccin SY/MAX IP . . . . . . . . . . . . . . . . 275


Descripcin general. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Descripcin detallada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

Captulo 26

TCP_IP_ADDR: direccin TCP/IP . . . . . . . . . . . . . . . . . . . . . . 279


Descripcin general. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 Descripcin detallada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

Captulo 27

UNITE_SERVER: servidor inmediato . . . . . . . . . . . . . . . . . . . 285


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 Ejemplo de servidor inmediato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290

Captulo 28 Captulo 29 Captulo 30

WRITE_ASYN: escritura asncrona de datos . . . . . . . . . . . . . 291


Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291

WRITE_GDATA: escritura de datos globales Modbus Plus . 295


Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295

WRITE_REG: escritura del registro . . . . . . . . . . . . . . . . . . . . 297


Descripcin general. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Tipos de datos derivados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301

33002530 07 07/2008

Modo de funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 Descripcin de los parmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304

Captulo 31

WRITE_VAR: variables de escritura. . . . . . . . . . . . . . . . . . . . 307


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 Descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 Pantalla de entrada asistida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 Ejemplo de cmo escribir palabras en una red . . . . . . . . . . . . . . . . . . . . . . . . . 315 Ejemplo de escritura de palabras mediante la conexin serie de PLC Modicon M340 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 Ejemplo de comprobacin de ejecucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

Captulo 32
32.1 32.2

XXMIT: transmisin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321


Descripcin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 Introduccin a XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Funciones de XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 XXMIT: funciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 Breve descripcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325 Representacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Descripcin detallada de parmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 Funciones de comunicacin de XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 Funciones ASCII de XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 Funciones de mdem de XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 Funciones Modbus de XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 FIFO y control de flujo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 Ejemplos de aplicacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 XXMIT: normas de programacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 Normas de programacin de XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 Referencias tcnicas para XXMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 Consulta Modbus/Lmites de los parmetros de respuesta. . . . . . . . . . . . . . . . 373 Configuracin del bloque de funciones XXMIT mediante mdems de marcacin compatible con Hayes (slo) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 Ejemplo de aplicacin Hayes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 Informacin de cableado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 Asignacin de pins de cable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 Kits de adaptador de cable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398

32.3 32.4

32.5

Apndices
Apndice A

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403

Cdigos de error y valores EFB . . . . . . . . . . . . . . . . . . . . . . . 405


Descripcin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405 Tablas de cdigos de error de la librera de comunicacin . . . . . . . . . . . . . . . . 406

33002530 07 07/2008

Errores comunes de coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410

Apndice B

Objetos de sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411


Presentacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introduccin de bits de sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Descripcin de los bits de sistema de %S15 a %S21. . . . . . . . . . . . . . . . . . . . Descripcin de las palabras de sistema %SW12 a %SW29. . . . . . . . . . . . . . . 411 412 413 416

Glosario ndice

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439

33002530 07 07/2008

10

33002530 07 07/2008

Informacin de seguridad

Informacin 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 continuacin pueden aparecer a lo largo de la documentacin o en el equipo para advertir de peligros potenciales o para ofrecer informacin que aclare o simplifique los distintos procedimientos.
La inclusin de este icono en una etiqueta de peligro o advertencia indica un riesgo de descarga elctrica, que puede provocar lesiones si no se siguen las instrucciones. ste es el icono de alerta de seguridad. Se utiliza para advertir de posibles riesgos de lesiones. Observe todos los mensajes que siguen a este icono para evitar posibles lesiones o incluso la muerte.

PELIGRO
PELIGRO indica una situacin inminente de peligro que, si no se evita, provocar lesiones graves o incluso la muerte.

ADVERTENCIA
ADVERTENCIA indica una posible situacin de peligro que, si no se evita, puede provocar daos en el equipo, lesiones graves o incluso la muerte.

AVISO
AVISO indica una posible situacin de peligro que, si no se evita, puede provocar lesiones o daos en el equipo.

33002530 07 07/2008

11

Informacin de seguridad

TENGA EN CUENTA

Slo el personal de servicio cualificado podr instalar, utilizar, reparar y mantener el equipo elctrico. Schneider Electric no asume las responsabilidades que pudieran surgir como consecuencia de la utilizacin de este material. 2008 Schneider Electric. Todos los derechos reservados.

12

33002530 07 07/2008

Acerca de este libro

Presentacin
Objeto En este documento se describen las funciones y los bloques de funciones de la librera de comunicacin. Este documento es vlido para el software Unity Pro versin 4.0. Campo de aplicacin Los datos e ilustraciones de este documento no son vinculantes. Nos reservamos el derecho de modificar nuestros productos de acuerdo con nuestra poltica de desarrollo constante. La informacin incluida en este documento est sujeta a cambios sin previo aviso y no debe interpretarse como un compromiso de Schneider Electric.

33002530 07 07/2008

13

Acerca de este libro

Documentos relacionados

Ttulo

Reference Number

Bloque de funcin XXMIT para Quantum mediante Unity Pro, manual de usuario

Puede descargar estas publicaciones tcnicas, as como ms informacin tcnica de nuestro sitio web www.shneider-elctric.com. Advertencia Schneider Electric no se hace responsable de ningn error que pudiera aparecer en este documento. Si ha encontrado algn error o tiene alguna sugerencia para mejorar o modificar esta publicacin, le agradeceremos que nos lo notifique. Ninguna parte de este documento puede ser reproducida, de ninguna forma ni por ningn medio, electrnico o mecnico, incluidas las fotocopias, sin el permiso expreso por escrito de Schneider Electric. Debe seguir todas las normas de seguridad locales, regionales y nacionales pertinentes durante la instalacin y la utilizacin de este producto. Por motivos de seguridad y para garantizar la conformidad con los datos del sistema documentados, la reparacin de los componentes slo debe encomendarse al fabricante. Cuando utilice controladores en aplicaciones con requisitos tcnicos de seguridad, siga las instrucciones pertinentes. Si no se utiliza el software de Schneider Electric o un software compatible con nuestros productos de hardware, pueden sufrirse daos o lesiones o provocar un funcionamiento inadecuado del dispositivo. Si no se observa esta advertencia sobre el manejo del producto, pueden producirse daos personales o materiales. Comentarios del usuario Enve sus comentarios a la direccin electrnica techpub@schneider-electric.com

14

33002530 07 07/2008

Generalidades

I
Introduccin
Visin general Contenido Esta seccin contiene informacin general sobre la biblioteca de comunicacin. Esta parte contiene los siguientes captulos:
Captulo 1 2 3 Nombre del captulo Tipos de bloques y utilizacin Disponibilidad de los mdulos en las diferentes plataformas de hardware Operacin de la comunicacin EF Pgina 17 25 27

33002530 07 07/2008

15

Generalidades

16

33002530 07 07/2008

Tipos de bloques y utilizacin

1
Introduccin
Vista general Contenido: Este captulo describe los distintos tipos de bloques y su utilizacin. Este captulo contiene los siguiente apartados:
Apartado Tipos de bloques Estructura de FFB EN y ENO Pgina 18 20 23

33002530 07 07/2008

17

Tipos de bloques y utilizacin

Tipos de bloques
Tipos de bloques En Unity Pro se utilizan distintos tipos de bloques. El trmino general que abarca todos los tipos de bloques es FFB. Debemos distinguir los siguientes tipos de bloques: funcin elemental (EF) bloques de funciones elementales (EFB) bloques de funciones derivados (DFB) procedimientos

Nota: Los bloques de funciones de movimiento no estn disponibles en la plataforma Quantum.

Funcin elemental

Las funciones elementales (EF) no disponen de estado interno y solo cuentan con una salida. Si en las entradas aparecen los mismos valores, siempre que se ejecute la funcin, el valor de la salida ser el mismo; por ejemplo, siempre que se ejecuta la suma de dos valores, el resultado es el mismo. En los lenguajes grficos (FBD y LD), una funcin elemental se representa como una trama de bloques con entradas y una salida. Las entradas siempre aparecen a la izquierda de la trama y las salidas a la derecha. El nombre de la funcin, esto es, el tipo de funcin, se muestra en el centro de la trama. El nmero de entradas puede aumentarse con algunas funciones elementales. Nota: La desactivacin de una EF (EN=0) ocasiona el reinicio de los enlaces conectados a su entrada/salida. No utilice un enlace para transferir el estado de la seal. Una variable debe conectarse a la salida de la EF y utilizarse para conectar la entrada del elemento.

Bloques de funciones elementales

Los bloques de funciones elementales (EF) tienen estados internos. Si las entradas disponen del mismo valor, el valor de la salida puede variar cada vez que se ejecuten los bloques de funciones. Por ejemplo, con un contador, aumenta el valor de la salida. En los lenguajes grficos (FBD y LD), un bloque de funciones elementales se representa como una trama de bloques con entradas y salidas. Las entradas siempre aparecen a la izquierda de la trama y las salidas a la derecha. El nombre de los bloques de funciones, esto es, el tipo de bloque de funciones, se muestra en el centro de la trama. El nombre de la instancia aparece por encima de la trama.

18

33002530 07 07/2008

Tipos de bloques y utilizacin

Bloques de funciones derivados Procedimientos

Los bloques de funciones derivados (DFB) presentan las mismas propiedades que los bloques de funciones elementales. Sin embargo, el usuario los crea en los lenguajes de programacin FBD, LD, IL o ST. Los procedimientos son funciones con distintas salidas. No disponen de estado interno. La nica diferencia con las funciones elementales es que los procedimientos pueden tener ms de una salida y admiten variables del tipo de datos VAR_IN_OUT. Los procedimientos no devuelven ningn valor. Los procedimientos son una ampliacin de la norma IEC 61131-3 y se deben habilitar de forma explcita. Los procedimientos no se distinguen visualmente de las funciones elementales.

33002530 07 07/2008

19

Tipos de bloques y utilizacin

Estructura de FFB
Estructura Cada FFB est compuesto por una operacin (nombre del FFB), los operandos necesarios para la operacin (parmetros formales y reales) y, en el caso de los bloques de funciones elementales o derivados, un nombre de instancia. Para llamar a un bloque de funciones en el lenguaje de programacin FBD: Nombre de instancia Funcionamiento
(nombre de FFB)

Operando

Parmetro formal

Parmetro real

MY_TON TON ENABLE EXAMP TIME1 EN IN PT ENO Q ET ERROR OUT TIME2

AVISO
Comportamiento imprevisto del equipo No llame varias veces a la misma instancia de bloque dentro de un ciclo de PLC Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

20

33002530 07 07/2008

Tipos de bloques y utilizacin

Para llamar formalmente a un bloque de funciones en el lenguaje de programacin ST: Operandos Nombre de instancia Parmetros formales (entradas) Parmetros formales (salidas)

MY_TON (EN:=ENABLE, IN:=EXAMP, PT:=TIME1, ENO=>ERROR, Q=>OUT, ET=>TIME2);

Parmetros reales (entradas) Operandos Funcionamiento

Parmetros reales (salidas)

La operacin establece la funcin que debe ejecutar el FFB; por ejemplo, registro de desplazamientos u operaciones de conversin. El operando especifica con qu se debe ejecutar la operacin. En el caso de los FFB, se trata de parmetros formales y reales.
Las entradas y salidas se necesitan para transferir valores desde y hasta un FFB. Se conocen como parmetros formales. A los parmetros formales se les vinculan objetos que contienen los estados actuales del proceso. Se conocen como parmetros reales. Los valores del proceso se transfieren al FFB a travs de los parmetros actuales durante el tiempo de ejecucin del programa y se vuelven a emitir despus del procesamiento. El tipo de datos del parmetro actual debe ser el mismo que el de la entrada o salida (parmetros formales). Las nicas excepciones son las entradas y salidas genricas, cuyo tipo de datos se determina mediante el parmetro real. Si todos los parmetros reales constan de literales, se selecciona un tipo de datos apropiado para el bloque de funcin.

Operando

Parmetros formales y parmetros reales

Llamada de un FFB en IL/ST

En los lenguajes de texto IL y ST, los FFB pueden llamarse en formato formal e informal. Si desea ms informacin, consulte el Manual de referencia. Ejemplo de una llamada de funcin formal: out:=LIMIT (MN:=0, IN:=var1, MX:=5); Ejemplo de una llamada de funcin informal: out:=LIMIT (0, var1, 5);

Nota: Tenga en cuenta que EN y ENO slo se pueden utilizar con llamadas formales.

33002530 07 07/2008

21

Tipos de bloques y utilizacin

Variable VAR_IN_OUT

A menudo, los FFB se utilizan para leer una variable en la entrada (variables de entrada), procesarla y devolver los valores modificados de esta variable (variables de salida). Este caso especfico de variable de entrada/salida tambin se denomina variable VAR_IN_OUT. La correspondencia de las variables de entrada y salida aparece representada con una lnea en los lenguajes grficos (FBD y LD). Bloque de funciones con la variable VAR_IN_OUT en FBD:
MY_EXAMP1 EXAMP1 Input1 Input2 Comb_IN_OUT IN1 IN2 IO1 OUT1 OUT2 IO1 Output1 Output2 Comb_IN_OUT

Bloque de funciones con la variable VAR_IN_OUT en ST: MY_EXAMP1 (IN1:=Input1, IN2:=Input2, IO1:=Comb_IN_OUT, OUT1=>Output1, OUT2=>Output2); Tenga en cuenta las siguientes particularidades al utilizar FFB con variables VAR_IN_OUT: Hay que asignar obligatoriamente una variable a todas las entradas VAR_IN_OUT. No es posible asignar literales o constantes a las entradas/salidas VAR_IN_OUT. Adems, en el caso de los lenguajes grficos (FBD y LD) tambin se aplican las siguientes restricciones: Las conexiones grficas slo permiten conectar salidas VAR_IN_OUT a entradas VAR_IN_OUT. Slo es posible vincular una conexin grfica a una salida/entrada VAR_IN_OUT. Es posible vincular a la entrada VAR_IN_OUT y a la salida VAR_IN_OUT distintas variables o componentes de variables. En tal caso, el valor de la variable o de su componente en la entrada se copiar en la variable o componente de variable en la salida. No se puede utilizar ninguna negacin en las entradas/salidas VAR_IN_OUT. En el caso de las salidas VAR_IN_OUT no es posible combinar una variable/ direccin con conexiones grficas.

22

33002530 07 07/2008

Tipos de bloques y utilizacin

EN y ENO
Descripcin Se puede configurar una entrada EN y una salida ENO para todos los FFB. Si el valor de EN es "0" cuando se llama al FFB, los algoritmos definidos por el FFB no se ejecutan y ENO pasa a "0". Si el valor de EN es "1" cuando se llama al FFB, se ejecutan los algoritmos definidos por el FFB. Una vez que se han ejecutado los algoritmos correctamente, el valor de ENO pasa a "1". Si se produce un error al ejecutar estos algoritmos, ENO pasa "0". Si ENO pasa a "0" (por EN=0 o por un error durante la ejecucin): Bloques de funciones Manipulacin de EN/ENO con bloques de funciones que (slo) tienen un vnculo como parmetro de salida:
Function_block_1 EN IN1 IN2 ENO OUT Function_block_2 EN IN1 IN2 ENO OUT

Si EN de FunctionBlock_1 se define como "0", la conexin de salida OUT de FunctionBlock_1 conserva el estado que tena en el ltimo ciclo ejecutado correctamente. Manipulacin de EN/ENO con bloques de funciones que tienen una variable y un vnculo como parmetros de salida:
Function_block_1 EN IN1 IN2 ENO OUT OUT1 Function_block_2 EN IN1 IN2 ENO OUT

Si EN de FunctionBlock_1 se define como "0", la conexin de salida OUT de FunctionBlock_1 conserva el estado que tena en el ltimo ciclo ejecutado correctamente. La variable OUT1 del mismo pin conserva su estado anterior o se puede modificar de forma externa sin influir en la conexin. La variable y el vnculo se guardan de forma independiente entre s. Funciones/Procedimientos Como se define en CEI61131-3, no se han definido las salidas de las funciones desactivadas (entrada EN definida como "0"). (Esto es aplicable a los procedimientos.) A continuacin, se ofrece una explicacin del estado de la salida en este caso: Manipulacin de EN/ENO con funciones/procedimientos que (slo) tienen un vnculo como parmetro de salida:

33002530 07 07/2008

23

Tipos de bloques y utilizacin

Function/Procedure_1 EN IN1 IN2 ENO OUT

Function/Procedure_2 EN IN1 IN2 ENO OUT

Si EN de Function/Procedure_1 se define como "0", la conexin de salida OUT de Function/Procedure_1 conserva el estado que tena en el ltimo ciclo ejecutado correctamente. Manipulacin de EN/ENO con bloques de funciones que tienen una variable y un vnculo como parmetros de salida:
Function/Procedure_1 EN IN1 IN2 ENO OUT OUT1 Function/Procedure_2 EN IN1 IN2 ENO OUT

Si EN de Function/Procedure_1 se define como "0", la conexin de salida OUT de Function/Procedure_1 conserva el estado que tena en el ltimo ciclo ejecutado correctamente. La variable OUT1 del mismo pin conserva su estado anterior o se puede modificar de forma externa sin influir en la conexin. La variable y el vnculo se guardan de forma independiente entre s. El comportamiento del FFB no depende de si los FFB se llaman sin EN/ENO o con EN=1. Llamada de FFB condicional/ incondicional Las llamadas "incondicionales" o "condicionales" son posibles con cada FFB. La condicin se lleva a cabo vinculando previamente la entrada EN. EN conectado llamadas condicionales (el FFB slo se procesa si EN = 1) EN mostrado, ocultado y marcado como TRUE, o mostrado y no ocupado llamadas incondicionales (el FFB siempre se procesa)

Nota: Para bloques de funciones deshabilitados (EN = 0) con una funcin de tiempo interna (por ejemplo, DELAY), el tiempo sigue avanzando, ya que se calcula con la ayuda de un reloj del sistema, y por tanto es independiente del ciclo de programa y de la apertura del bloque.

Nota para IL y ST

El uso de EN y ENO slo es posible en los lenguajes de texto para una llamada FFB formal, por ejemplo, MY_BLOCK (EN:=enable, IN1:=var1, IN2:=var2, ENO=>error, OUT1=>result1, OUT2=>result2); La asignacin de variables a ENO se debe llevar a cabo con el operador =>. Con una llamada no formal, EN y ENO no se pueden utilizar.

24

33002530 07 07/2008

Disponibilidad de los mdulos en las diferentes plataformas de hardware

Disponibilidad de bloques en las diversas plataformas de hardware


Introduccin No todos los bloques estn disponibles para cada una de las plataformas de hardware. La disponibilidad de mdulos en funcin de la plataforma de hardware puede encontrarse en la tabla siguiente. Nota: Las funciones, los procedimientos y los bloques de funciones de esta librera no estn definidos en IEC 61131-3.

Expandido

Disponibilidad de los mdulos:


Nombre del bloque ADDR ADDM CANCEL CREAD_REG CWRITE_REG DATA_EXCH INPUT_BYTE INPUT_CHAR MBP_MSTR MODBUSP_ADDR OUT_IN_CHAR OUT_IN_MBUS PRINT_CHAR RCV_TLG READ_ASYN Tipo de bloque EF EF Procedimiento EFB EFB Procedimiento Procedimiento Procedimiento EFB EFB Procedimiento DFB Procedimiento Procedimiento Procedimiento M340 + + + + + + Premium + + + + + + + + + + Quantum + + + + 25

33002530 07 07/2008

Disponibilidad de los mdulos

Nombre del bloque READ_GDATA READ_REG READ_VAR SEND_REQ SEND_EMAIL SEND_TLG SYMAX_IP_ADDR TCP_IP_ADDR UNITE_SERVER WRITE_ASYN WRITE_GDATA WRITE_REG WRITE_VAR XXMIT

Tipo de bloque Procedimiento EFB Procedimiento Procedimiento EF Procedimiento EFB EFB Procedimiento Procedimiento Procedimiento EFB Procedimiento EFB

M340 + + + -

Premium + + + + + + + + -

Quantum + + + + +

Leyenda: + S No

26

33002530 07 07/2008

Operacin de la comunicacin EF

3
Presentacin
Tema del captulo Contenido: En el captulo se describe el funcionamiento y la gestin de las funciones de comunicacin. Este captulo contiene las siguientes secciones:
Seccin 3.1 Apartado Informacin general sobre las funciones de comunicacin de Premium y Atrium Pgina 29

33002530 07 07/2008

27

Operacin de la comunicacin EF

28

33002530 07 07/2008

Operacin de la comunicacin EF

3.1

Informacin general sobre las funciones de comunicacin de Premium y Atrium

Presentacin
Objetivo de esta seccin Contenido Esta seccin describe el funcionamiento y la gestin de las funciones de comunicacin de los PLC Premium y Atrium. Esta seccin contiene los siguientes apartados:
Apartado Reglas de uso de las funciones de comunicacin en PLC Premium y Atrium Las funciones de comunicacin en autmatas Premium y Atrium Estructura de las funciones de comunicacin de Premium y Atrium Direccin del destinatario Estructura de los parmetros de gestin Parmetros de gestin: informes de comunicacin y funcionamiento Parmetros de gestin: longitud y timeout Funcin Servidor Pgina 30 31 33 34 35 37 40 41

33002530 07 07/2008

29

Operacin de la comunicacin EF

Reglas de uso de las funciones de comunicacin en PLC Premium y Atrium


Presentacin Las funciones de comunicacin utilizadas con PLC Premium y Atrium tienen algunas caractersticas exclusivas que las diferencian de las otras funciones de la librera. Esta documentacin se ajusta a la norma de documentacin relativa a la librera de funciones, pero tambin contiene informacin adicional relacionada con las particularidades de la aplicacin especfica de comunicacin. Todas las funciones de comunicacin que no requieren programacin en el PLC del servidor (READ_VAR, WRITE_VAR, etc.) proporcionan acceso a las variables ubicadas de PLC remotos. No se puede acceder a las variables no ubicadas. Nota: Para llevar a cabo transferencias de variables no ubicadas entre PLC, se debe emplear la funcin DATA_EXCH. Otra solucin es hacer copias locales en las reas de variables ubicadas. A parte del primer ejemplo de la funcin WRITE_VAR (vase Ejemplo de cmo escribir palabras en una red, p. 315), el resto de ejemplos se realiza mediante variables de direccionamiento directo (Ver Unity Pro, Lenguajes y estructura del programa, Manual de referencia, Referencias de datos) (uso de direcciones, variables ubicadas). Lenguaje de programacin El lenguaje de programacin ms conciso para crear aplicaciones de comunicacin es el lenguaje de texto estructurado (ST, del ingls Structured Text ). Todos los ejemplos, excepto el de la funcin READ_VAR (vase READ_VAR: lectura de variables, p. 231), estn, por tanto, escritos en ST.

Variables ubicadas

30

33002530 07 07/2008

Operacin de la comunicacin EF

Las funciones de comunicacin en autmatas Premium y Atrium


Presentacin Estas funciones permiten la comunicacin entre equipos. Algunas son comunes a varios tipos de va de comunicacin, mientras que otras pueden ser especficas de una sola va de comunicacin. Nota: El tratamiento de las funciones de comunicacin es asincrnico con respecto al tratamiento de la tarea de aplicacin que ha permitido su activacin. Las funciones de emisin/recepcin de telegrama y de parada de funcionamiento son las nicas excepciones, ya que su ejecucin es sincrnica con la ejecucin de la tarea de activacin.

Funciones de comunicacin asincrnica

Una funcin de comunicacin es asincrnica cuando se ejecuta durante uno o varios ciclos despus del que la ha activado. La siguiente tabla muestra las funciones de comunicacin en las que la ejecucin es asincrnica:
Funcin READ_VAR Su funcin es... leer objetos de lenguaje bsico: palabras y bits internos, palabras y bits de sistema, temporizadores, monoestables, programadores cclicos, registros, contadores. escribir objetos de lenguaje bsico: palabras y bits internos, palabras y bits de sistema. emitir peticiones UNI-TE. emitir o solicitar la recepcin de datos. escribir una cadena de caracteres. leer una cadena de caracteres. emitir una cadena de caracteres y esperar una respuesta. leer datos comunes de Modbus Plus. escribir datos comunes de Modbus Plus. tratar las peticiones READ_VAR y WRITE_VAR en Modbus de forma inmediata (Servidor inmediato). leer 1 Kbyte en mensajera. escribir 1 Kbyte en mensajera.

WRITE_VAR SEND_REQ DATA_EXCH PRINT_CHAR INPUT_CHAR OUT_IN_CHAR READ_GDATA WRITE_GDATA SERVER READ_Asyn WRITE_Asyn

33002530 07 07/2008

31

Operacin de la comunicacin EF

Nota: se recomienda iniciar las funciones asincrnicas en flanco y no en estado para no saturar los bferes de los equipos mediante el envo de varias peticiones. Por el mismo motivo, se aconseja gestionar el bit de actividad (vase Bit de actividad, p. 35) y las palabras de confirmacin (vase Parmetros de gestin: informes de comunicacin y funcionamiento, p. 37) durante la ejecucin de cada funcin de comunicacin.

Funciones de comunicacin sincrnica

Una funcin de comunicacin es sincrnica cuando se ejecuta por completo durante la tarea del autmata que la activa. La tabla siguiente muestra las funciones de comunicacin en las que la ejecucin es sincrnica:
Funcin SEND_TLG RCV_TLG CANCELAR DIR Su funcin es ... emitir un telegrama. recibir un telegrama. detener un intercambio en curso. convertir una cadena de caracteres en una direccin (tabla de 6 enteros) que la funcin de comunicacin puede aprovechar directamente.

32

33002530 07 07/2008

Operacin de la comunicacin EF

Estructura de las funciones de comunicacin de Premium y Atrium


Presentacin Una funcin de comunicacin en PLC Premium y Atrium utiliza: un parmetro de direccin, parmetros especficos de una operacin de comunicacin, parmetros de gestin. Sintaxis La sintaxis de una funcin de comunicacin es la siguiente: Funcin (direccin de destino, parmetros especficos, parmetros de gestin) La tabla siguiente describe las diferentes entidades que componen una funcin:
Entidad Funcin Direccin de destino Parmetros especficos Parmetros de gestin Descripcin Corresponde al tipo de funcin de comunicacin. Indica la direccin del destino del intercambio. Depende del tipo de funcin de comunicacin. Se proporciona una descripcin de ellos para cada tipo de funcin de comunicacin. Los parmetros de gestin son comunes a todas las funciones de comunicacin asncronas. Estn compuestos de lo siguiente: un parmetro que proporciona datos sobre la actividad de la funcin, un parmetro que especifica el nmero de intercambio que identifica la transaccin en curso, un parmetro que contiene el informe de intercambio (informe de comunicacin e informe de funcionamiento), un parmetro de timeout que se puede utilizar para comprobar si no hay respuesta, un parmetro de longitud que se puede utilizar para almacenar el nmero de bytes que se van a enviar o el nmero de bytes recibidos.

33002530 07 07/2008

33

Operacin de la comunicacin EF

Direccin del destinatario


Presentacin Este parmetro indica la direccin del equipo destinatario (Ver Modicon M340, Premium, Atrium y Quantum utilizando Unity Pro, Arquitecturas y servicios de comunicaciones, Manual de referencia, Direccionamiento) del intercambio. Puede encontrarse: Por palabras internas (%MW) o constantes internas (%KW), o escrito directamente en valor inmediato. Para facilitar la fase de preparacin del intercambio, existe la funcin ADDR() (vase Descripcin de las funciones, p. 49), que convierte un valor inmediato de tipo direccin (cadena de caracteres) en una tabla formada siempre por seis palabras internas (%MW). Ejemplo %MWi:6:=ADDR({2.4}SYS);

34

33002530 07 07/2008

Operacin de la comunicacin EF

Estructura de los parmetros de gestin


Presentacin Los parmetros de gestin se agrupan en una matriz de cuatro enteros. Los valores contenidos en esta matriz se pueden utilizar para gestionar las funciones de comunicacin. Nota: En la documentacin tcnica, a estos parmetros de gestin tambin se les denomina tabla de gestin o informe.

Nota: Las dos primeras palabras son gestionadas por el sistema. Las dos ltimas palabras dependen del usuario.

Estructura

La tabla siguiente describe la estructura de los datos de la tabla de gestin de comunicacin:


Orden de la palabra Datos gestionados 1 por el sistema 2 Byte de mayor valor Nmero de intercambio Byte de menor valor Bit de actividad

Informe de funcionamiento Informe de comunicacin (vase Informe de (vase Informe de operacin, p. 38) comunicacin, p. 37) Timeout (vase Timeout, p. 40) Longitud (vase Longitud, p. 40)

Datos gestionados 3 por el usuario 4

Bit de actividad

Este bit indica el estado de ejecucin de la funcin de comunicacin. Se configura en 1 al iniciar y vuelve a 0 cuando se completa la ejecucin. Es el primer bit del primer elemento de la tabla. Ejemplo: Si la tabla de gestin indica lo siguiente: Tab_Gest ARRAY [1..4] OF INT, el bit de actividad es el bit con la anotacin Tab_Gest[1].0.

Nota: La anotacin utilizada previamente requiere la configuracin de las propiedades del proyecto de manera que se permita la extraccin de bits de los tipos enteros. De lo contrario, no se puede acceder a Tab_Gest[1].0de esta forma.

33002530 07 07/2008

35

Operacin de la comunicacin EF

Nmero de intercambio

Cuando se enva una funcin de comunicacin, el sistema le atribuye automticamente un nmero, de forma que se permite la identificacin del intercambio. Este nmero puede utilizarse donde sea necesario para detener el intercambio en curso (mediante la funcin CANCEL (vase Descripcin de la funcin, p. 52)).

36

33002530 07 07/2008

Operacin de la comunicacin EF

Parmetros de gestin: informes de comunicacin y funcionamiento


Presentacin Los informes de comunicacin y funcionamiento forman parte de los parmetros de gestin. Nota: Se recomienda comprobar siempre los informes de las funciones de comunicacin en cuanto se haya completado su ejecucin y antes de reactivarlos. En el inicio en fro, es obligatorio que todos los parmetros de gestin de las funciones de comunicacin, se comprueben y se vuelvan a poner en 0.

Informe de comunicacin

Este informe es comn a todas las funciones. Es significativo cuando el valor del bit de actividad cambia de 1 a 0. Los informes cuyo valor est entre 16#01 y 16#FE se refieren a errores detectados por el procesador que ejecut la funcin. En la tabla siguiente se indican los diferentes valores de este informe:
Valor 16#00 16#01 16#02 16#03 16#04 16#05 16#06 16#07 16#08 16#09 16#0A 16#0B 16#0C 16#0D 16#0E 16#0F 16#10 16#11 16#12 Informe de comunicacin (bit de menor valor) Intercambio correcto Detencin del intercambio en timeout Detencin del intercambio a peticin del usuario (CANCEL) Formato de direccin incorrecto Direccin de destino incorrecta Formato incorrecto de parmetro de gestin Parmetros especficos incorrectos Problema en el envo al destino Reservado Tamao del bfer de recepcin insuficiente Tamao del bfer de envo insuficiente Sin recursos de sistema del procesador Nmero de intercambio incorrecto Ningn telegrama recibido Longitud incorrecta Servicio de telegramas sin configurar Mdulo de red ausente Peticin ausente Servidor de la aplicacin ya activo

33002530 07 07/2008

37

Operacin de la comunicacin EF

Valor 16#13 16#FF

Informe de comunicacin (bit de menor valor) Nmero de transaccin UNI-TE V2 incorrecto Mensaje rechazado

Nota: La funcin puede detectar un error en los parmetros antes de activar el intercambio. En este caso, el bit de actividad se mantiene a 0 y el informe se inicia con los valores correspondientes al error.

Informe de operacin

Este byte de informe es especfico de cada funcin y especifica el resultado de la operacin en la aplicacin remota. Slo es significativo si el informe de comunicacin tiene los valores siguientes: 16#00 (intercambio correcto), 16#FF (mensaje rechazado). Si el valor del informe de comunicacin es 16#00, el informe de funcionamiento tendr los valores siguientes:
Valor 16#00 16#01 16#02 16#03 Informe de funcionamiento (bit de mayor valor) Resultado positivo Peticin no procesada Respuesta incorrecta Reservado

Si el valor del informe de comunicacin es 16#FF, el informe de funcionamiento tendr los valores siguientes:
Valor 16#01 16#02 16#03 16#04 16#05 16#06 16#07 16#08 16#0B 16#0C 16#0D Informe de funcionamiento (bit de mayor valor) No hay recursos respecto al procesador No hay recursos de lnea Sin dispositivo o dispositivo sin recursos (*) Error de lnea Error de longitud Canal de comunicacin defectuoso Error de direccionamiento Error de aplicacin Sin recursos de sistema Funcin de comunicacin inactiva Destino ausente

38

33002530 07 07/2008

Operacin de la comunicacin EF

Valor 16#0F 16#11 16#12 16#14 16#15 16#16 16#17 16#18 16#21 16#30

Informe de funcionamiento (bit de mayor valor) Problema de acceso entre estaciones o canal sin configurar Formato de direccin no gestionado Sin recursos de destino Conexin no operativa (ejemplo: Ethernet TCP/IP) Sin recurso en el canal local Acceso no autorizado (ejemplo: Ethernet TCP/IP) Configuracin de red incoherente (ejemplo: Ethernet TCP/IP) Conexin no disponible temporalmente Servidor de la aplicacin detenido Error de transmisin

Leyenda: (*) Cdigo gestionado solo por tarjetas PCMCIA: TSX FPP20 y TSX FPP10

33002530 07 07/2008

39

Operacin de la comunicacin EF

Parmetros de gestin: longitud y timeout


De un vistazo Longitud Estos dos parmetros dependen del usuario.
El parmetro de longitud se utiliza tanto para especificar el nmero de caracteres (en bytes) que se van a enviar durante la transmisin, como para almacenar el nmero de caracteres (en bytes) recibidos tras la recepcin de un mensaje. Antes de iniciar determinadas funciones de comunicacin (SEND_REQ, DATA_EXCH, PRINT_CHAR, SEND_TLG), es obligatorio para algunas, y se recomienda para otras, actualizar el parmetro de longitud. Nota: Con la funcin PRINT_CHAR, por ejemplo, si otra funcin de la aplicacin est utilizando la misma tabla de informe en la que el nmero de bytes que se van a enviar es diferente del de la funcin previa, es obligatorio inicializar el parmetro de longitud con el nmero nuevo de bytes que se va a transmitir. De lo contrario, mantiene el mismo nmero de bytes enviados por la funcin anterior.

Timeout

El timeout determina el tiempo mximo de espera para la respuesta. La base de tiempo para este parmetro es 100 ms (el valor 0 corresponde a un valor de espera infinita). Cuando transcurre el timeout, el intercambio termina con un informe de error. Asimismo, el sistema no acepta ninguna respuesta al trmino del timeout.

Ejemplo
Inicio de la funcin Bit de actividad = 1 Activacin del timeout Restablecimiento del informe Asignacin del nmero de intercambio Recepcin de la respuesta Bit de actividad = 0 Detencin del timeout Actualizacin del informe

Fin del timeout

Bit de actividad = 0 Informe = 1

Nota: El valor de timeout de una funcin de comunicacin debe ser suficiente para garantizar que la respuesta a la pregunta formulada se ha recibido (uso de un mdem externo en una conexin basada en protocolo, por ejemplo).

Nota: Para la comunicacin del master Modbus, el timeout de la aplicacin establecido en las funciones de comunicacin debe ser mayor que el timeout de la pantalla de configuracin multiplicado por el nmero de reintentos (timeout de hardware).
40
33002530 07 07/2008

Operacin de la comunicacin EF

Funcin Servidor
Presentacin La funcin de servidor puede utilizarse para responder a las peticiones de los dispositivos cliente. Los procesadores TSX 57 35 y PCX 57 35 proporcionan dos servidores de peticiones: un servidor principal (recomendado para peticiones de menos de 256 bytes), un servidor auxiliar (recomendado para peticiones de hasta 1.024 bytes). Estos dos servidores se pueden activar simultneamente. Ilustracin El diagrama siguiente muestra las peticiones enviadas a los servidores en el ciclo del PLC:

Entradas

Servidor principal (servidor UNI-TE)

Tarea MAST

Procesamiento

Servidor auxiliar (servidor asncrono)

Salidas

33002530 07 07/2008

41

Operacin de la comunicacin EF

Servidor principal

Este servidor corresponde al puerto 0 (servidor UNI-TE). Se activa al comienzo del ciclo MAST del PLC. El tiempo de respuesta del PLC cliente depende del tiempo de ciclo del PLC del servidor. Esto puede utilizarse para procesar hasta cuatro peticiones simultneas por ciclo del PLC. Se admiten todas las peticiones UNI-TE. El tamao de la peticin debe ser inferior a 256 bytes. Es posible direccionar esta entidad en la direccin topolgica SYS o {network.station}SYS.

Servidor auxiliar

Este servidor corresponde al puerto 7 (servidor asncrono). Se activa nicamente para tareas peridicas al final del ciclo del PLC, una vez que la tarea MAST se ha procesado, mientras se espera el comienzo del ciclo siguiente. El inicio del siguiente ciclo de mayor prioridad podra interrumpir una peticin en curso. El acceso al servidor est, por tanto, reservado a las aplicaciones que no requieren coherencia en sus datos de lectura/escritura. El tiempo de respuesta de la aplicacin depender fundamentalmente del tiempo del ciclo del PLC. El tamao de la peticin puede ser de hasta 1.024 bytes. No se puede acceder a sta desde una funcin de comunicacin; el servidor procesa el objeto (bit o palabra), las peticiones de LECTURA/ESCRITURA, etc.

42

33002530 07 07/2008

Extensiones

II
Introduccin
Visin general En esta parte se describen las funciones y bloques de funcin elementales de la familia Extensiones. Esta parte contiene los siguientes captulos:
Captulo 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
33002530 07 07/2008

Contenido

Nombre del captulo ADDM: Conversin de direcciones ADDR: conversin de direcciones CANCEL: detencin de un intercambio en curso CREAD_REG: lectura continua de registro CWRITE_REG: escritura continua de registro DATA_EXCH: intercambio de datos entre aplicaciones INPUT_BYTE: recepcin de cadenas de caracteres INPUT_CHAR: recepcin de cadenas de caracteres MBP_MSTR: Maestro Modbus Plus ModbusP_ADDR: direccin de Modbus Plus OUT_IN_CHAR: envo/recepcin de cadenas de caracteres OUT_IN_MBUS: funcin de comunicacin Modbus PRINT_CHAR: envo de cadenas de caracteres RCV_TLG: recepcin de telegramas READ_ASYN: lectura asncrona de datos READ_GDATA: lectura de datos globales Modbus Plus READ_REG: lectura de registro READ_VAR: lectura de variables SEND_EMAIL: Envo de un correo electrnico SEND_REQ: peticiones de envo

Pgina 45 49 51 55 63 71 83 87 99 151 157 165 203 213 217 221 223 231 249 253 43

Extensiones

Captulo 24 25 26 27 28 29 30 31 32

Nombre del captulo SEND_TLG: envo de telegramas SYMAX_IP_ADDR: direccin SY/MAX IP TCP_IP_ADDR: direccin TCP/IP UNITE_SERVER: servidor inmediato WRITE_ASYN: escritura asncrona de datos WRITE_GDATA: escritura de datos globales Modbus Plus WRITE_REG: escritura del registro WRITE_VAR: variables de escritura XXMIT: transmisin

Pgina 269 275 279 285 291 295 297 307 321

44

33002530 07 07/2008

ADDM: Conversin de direcciones

4
Descripcin
Descripcin de la funcin La funcin ADDM se utiliza para convertir una cadena de caracteres en una direccin que las siguientes funciones de comunicacin pueden utilizar directamente: READ_VAR, WRITE_VAR, INPUT_CHAR, PRINT_CHAR, DATA_EXCH, SEND_EMAIL. Pueden configurarse los parmetros EN y ENO adicionales. Representacin en FBD Representacin:
ADDM Addr_String IN OUT Addr_Array

Representacin en LD

Representacin:
ADDM EN Addr_String IN ENO OUT Addr_Array

Representacin en IL

Representacin: LD Addr_String ADDM ST Addr_Array Representacin: Addr_Array := ADDM(Addr_String);

Representacin ST

33002530 07 07/2008

45

ADDM

Descripcin de parmetros

En la siguiente tabla se describe el parmetro de entrada:


Parmetro IN Tipo Cadena de caracteres Comentario Direccin de dispositivo en un bus o una red.

Para direccionar una estacin en Ethernet, el parmetro IN adopta la forma: ConexRed{DirHost} ConexRed{DirHost}TCP.MBS ConexRed{DirHost}nodo r.m.c{DirHost} r.m.c{DirHost}TCP.MBS r.m.c{DirHost}nodo {DirHost} {DirHost}TCP.MBS {DirHost}nodo Tambin existe la posibilidad de usar la conexin de red predeterminada mediante la notacin simplificada para dirigir una estacin en Ethernet: ADDM{DirHost} A conexin de red predeterminada es la conexin de red configurada ms prxima desde la CPU. Donde: ConexRed: nombre de red establecido en el campo Conexin de red del canal Ethernet. DirHost: direccin IP del dispositivo. r: nmero de bastidor (rack). m: posicin del mdulo. c: nmero de canal (channel). nodo: nodo Modbus o CANopen detrs de una pasarela (pasarela identificada con DirHost). TCP.MBS: para el direccionamiento de un servidor Modbus TCP. Para direccionar un dispositivo en un bus CANopen, el parmetro IN adopta la forma r.m.c.e, donde: r: nmero de bastidor (rack). m: posicin del mdulo. c: nmero de canal (channel) del puerto CANopen (2). e: nodo de esclavo CANopen (equipment) (rango de 1 a 127). Para direccionar un dispositivo mediante el protocolo Modbus, el parmetro IN adopta la forma: r.m.c.e.MBS Donde: r: nmero de bastidor (rack). m: posicin del mdulo.
46

33002530 07 07/2008

ADDM

c: nmero de canal (channel) del puerto Modbus (0). e: nmero del esclavo de Modbus (equipment) (rango de 1 a 247). MBS: para el direccionamiento de un servidor Modbus. Para direccionar un dispositivo mediante el protocolo de modo de caracteres, el parmetro IN adopta la forma r.m.c o r.m.c.SYS, donde: r: nmero de bastidor (rack). m: posicin del mdulo. c: nmero de canal (channel) del puerto de modo de caracteres (0). SYS: palabra clave utilizada para estipular el sistema de servidor de la estacin. SYS puede omitirse. Para obtener ms informacin, consulte la descripcin general del direccionamiento de PLC M340 del manual de usuario Arquitecturas de comunicacin. En la siguiente tabla se describe el parmetro de salida:
Parmetro OUT Tipo ADDM_TYPE Matriz de 8 enteros simples. Comentario Matriz que representa la direccin de un dispositivo. Este parmetro se puede utilizar como parmetro de entrada para varias funciones de comunicacin.

El bloque ADDM analiza la sintaxis de la cadena de direccionamiento (parmetro IN) y coloca el resultado en una matriz de 8 enteros simples que define la direccin de destino. La direccin de destino puede proporcionarse mediante el parmetro OUT de la funcin ADDM o directamente mediante una matriz de 8 objetos INT. Sin embargo, se recomienda encarecidamente utilizar la funcin ADDM para direccionar una comunicacin EF. La estructura de la direccin de destino es la siguiente:
Campo Tipo ClientID Bastidor Slot Channel ProtId AddrLen Tamao Byte Byte Byte Byte Byte Byte Byte Valor Reservado. Reservado. Nmero de ranuras del bastidor. Nmero de ranuras del mdulo. Nmero de canal. Reservado. 0 para Modbus. Este byte puede tener los siguientes valores: Valor 0 si el servidor de mdulo o canal est direccionado (no se utilizan UnitId ni AddrExt). Valor 1 si se especifica el nmero de dispositivo. Valor >1 si tambin se utiliza AddrExt. Nmero de dispositivo, dispositivo Modbus por ejemplo.

UnitId

Byte

33002530 07 07/2008

47

ADDM

Campo AddrExt

Tamao Matriz[7]

Valor Reservado. Se utiliza para codificar informacin adicional de la direccin para direcciones TCP/IP.

ADVERTENCIA
COMPORTAMIENTO INESPERADO DE LA APLICACIN El uso de parmetros reservados es responsabilidad de los usuarios y puede provocar un funcionamiento incorrecto. Si no se siguen estas instrucciones pueden producirse lesiones personales graves o mortales o daos en el equipo.

48

33002530 07 07/2008

ADDR: conversin de direcciones

5
Descripcin
Descripcin de las funciones La funcin ADDR se utiliza para convertir una cadena de caracteres en una direccin que puede ser utilizada por las funciones de comunicacin directamente. Los parmetros adicionales EN y ENO pueden ser configurados. Representacin FBD Representacin:
ADDR Addr_String IN OUT Addr_Array

Representacin LD

Representacin:
ADDR EN Addr_String IN ENO OUT Addr_Array

Representacin IL

Representacin: LD Addr_String ADDR ST Addr_Array

33002530 07 07/2008

49

ADDR

Representacin ST Descripcin de parmetros

Representacin: Addr_Array := ADDR(Addr_String); En la siguiente tabla, se describen los parmetros de entrada:


Parmetro Addr_String Tipo STRING Comentario La variable de tipo de cadena de caracteres representa la direccin de dispositivo en un bus o una red. Ejemplos: {5.6}SYS, {1.2}0.4.5.2

En la tabla siguiente, se describen los parmetros de salida:


Parmetro Addr_Array Tipo ADDR_TYPE o ARRAY [0..5] OF INT Comentario Matriz de 6 enteros que representa la direccin Addr_String. Addr_Array puede ser utilizado directamente como primer parmetro de entrada de los EF de comunicacin.

50

33002530 07 07/2008

CANCEL: detencin de un intercambio en curso

Presentacin
Objetivo Contenido: En este captulo se describe la funcin CANCEL. Este captulo contiene los siguiente apartados:
Apartado Descripcin Ejemplo de cmo cancelar un intercambio Pgina 52 54

33002530 07 07/2008

51

CANCEL

Descripcin
Descripcin de la funcin La funcin CANCEL permite interrumpir una funcin de comunicacin asincrnica en curso. El nmero de intercambio asignado a cada comunicacin permite identificar la funcin que se va a detener. Nota: la ejecucin de esta funcin es sncrona a la ejecucin del programa autmata (la funcin de comunicacin se detiene en el ciclo del autmata en el que se ha ejecutado la funcin CANCEL). Pueden configurarse los parmetros adicionales EN y ENO. Representacin en FBD Representacin:
CANCEL Exchange_num NUM CR Report

Representacin en Ladder

Representacin:
CANCEL EN Exchange_num NUM ENO CR Report

Representacin en IL

Representacin: LD Exchange_Num CANCEL ST Report Representacin: CANCEL (Exchange_Num, Report);

Representacin en ST

52

33002530 07 07/2008

CANCEL

Descripcin de los parmetros

La tabla siguiente describe los parmetros de entrada:


Parmetro Exchange_Num Tipo INT Comentario Este parmetro especifica el nmero del intercambio en el que debe interrumpirse la ejecucin.

La siguiente tabla describe los parmetros de salida:


Parmetro Report Tipo INT Comentario Esta confirmacin de operacin toma uno de los valores siguientes: 16#00: operacin correcta. La comunicacin se interrumpe, el bit de actividad de la funcin interrumpida se encuentra a 0 y la confirmacin toma el valor 2. 16#0C: nmero de intercambio incorrecto.

33002530 07 07/2008

53

CANCEL

Ejemplo de cmo cancelar un intercambio


Presentacin Este ejemplo ilustra cmo cancelar un intercambio realizado con la funcin OUT_IN_CHAR. Cuando se inicia el intercambio, se le asigna un nmero nico. Este nmero es vlido hasta el final del intercambio. La funcin CANCEL emplea este nmero para interrumpir el intercambio al que est asignada.

Programacin de la funcin OUT_IN_CHAR

Programacin en ST:

Programacin de la funcin CANCEL

Programacin en ST: %MW180 := SHRZ_INT(%MW170,8); IF RE(%I0.3.9) THEN CANCEL(%MW180,%MW185); END_IF; La funcin CANCEL afecta a dos parmetros: en entradas: al nmero del intercambio que se va a cancelar, en salidas: al informe. Es necesario inicializar el primer parmetro con el nmero del intercambio que se va a cancelar. Este nmero se encuentra en el byte de mayor valor de la primera palabra de la tabla de gestin. En este caso, se trata del byte de mayor valor de %MW170. Antes de enviar la funcin CANCEL, resulta necesario crear un desplazamiento de ocho bits para recuperar los ocho bits de mayor valor de %MW170. Parmetros de peticin:
Parmetros %MW180 %MW185 Descripcin El bit de menor valor contiene el nmero del intercambio que se va a cancelar. ATENCIN: El byte de mayor valor debe ser cero. Informe de la funcin.

54

33002530 07 07/2008

CREAD_REG: lectura continua de registro

Descripcin general
Introduccin Contenido: En este captulo se describe el bloque CREAD_REG. Este captulo contiene los siguiente apartados:
Apartado Descripcin Tipos de datos derivados Modo de funcionamiento Descripcin de los parmetros Pgina 56 58 60 61

33002530 07 07/2008

55

CREAD_REG

Descripcin
Descripcin de funciones Este bloque de funcin est ideado para leer de forma continua un rea de registro. Lee datos de un participante direccionado a travs de Modbus Plus, Ethernet TCP/ IP o Ethernet SY/MAX. Como parmetros adicionales se pueden configurar EN y ENO. Nota: Para programar la funcin CREAD_REG debe conocer los procedimientos de acceso utilizados en la red. La descripcin detallada de las estructuras de ruta de acceso Modbus Plus se encuentra en "Modbus Plus Network Planning and Installation Guide". En el caso de que se implemente la ruta de acceso de Ethernet TCP/IP o SY/ MAX, se debern utilizar los productos estndar de ruta de acceso de Ethernet-IP. La descripcin detallada de las rutas de acceso TCP/IP figura en el manual "Manual de usuario sobre la configuracin de Quantum con Unity ProTCP/IP".

Nota: En el programa puede utilizar diversos ejemplares de este bloque de funcin. No obstante, no es posible instanciar estos ejemplares de forma mltiple.

Representacin en FBD

Representacin:
CREAD_REG_Instance CREAD_REG OffsetAddress NumberOfRegisters DataStructure SLAVEREG NO_REG ADDRFLD REG_READ STATUS RegisterToRead ErrorCode

Representacin en LD

Representacin:
CREAD_REG_Instance CREAD_REG EN OffsetAddress NumberOfRegisters DataStructure SLAVEREG NO_REG ADDRFLD REG_READ STATUS RegisterToRead ErrorCode ENO

56

33002530 07 07/2008

CREAD_REG

Representacin en IL

Representacin: CAL CREAD_REG_Instance (SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, ADDRFLD:=DataStructure, REG_READ=>RegisterToRead, STATUS=>ErrorCode) Representacin: CREAD_REG_Instance (SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, ADDRFLD:=DataStructure, REG_READ=>RegisterToRead, STATUS=>ErrorCode) ; Descripcin de los parmetros de entrada
Parmetro SLAVEREG NO_REG ADDRFLD Tipo de datos DINT INT WordArr5 Significado Direccin de la primera direccin %MW en el slave desde el que se debe leer. Nmero de direcciones que se deben leer desde el slave. Estructura de datos para la descripcin de la direccin Modbus Plus, TCI/IP o SY/MAX-IP.

Representacin en ST

Descripcin de los parmetros

Descripcin de los parmetros de salida


Parmetro REG_READ Tipo de datos ANY Significado Datos que se van a leer. Se debe declarar una estructura de datos como Located Variable para los datos que se van a leer. En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145

STATUS

WORD

Error de ejecucin

Para obtener una lista de todos los cdigos y los valores de error del mdulo, consulte Extendido, p. 406.

33002530 07 07/2008

57

CREAD_REG

Tipos de datos derivados


Tipo de datos derivado WordArr5 en Modbus Plus Descripcin de los elementos:
Elemento WordArr5[1] Tipo de datos WORD Significado Byte de menor valor: El registro de ruta de acceso 1 se utiliza para determinar la direccin (direccin de ruta de acceso una de cinco) del participante de destino en una transmisin de red. El ltimo byte en la ruta de acceso que no se corresponda con cero es el participante de destino. Byte de mayor valor: Slot del modulo adaptador de red (NOM), si existe (slo en Quantum). Registro de ruta de acceso 2 Registro de ruta de acceso 3 Registro de ruta de acceso 4 Registro de ruta de acceso 5

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

Descripcin de elementos para WordArr5 en Ethernet TCP/IP

Descripcin de elementos para WordArr5 en Ethernet TCP/IP


Elemento WordArr5[1] Tipo de datos WORD Significado Byte de menor valor: ndice de copiado de un Transporter MBP a Ethernet (MET) Byte de mayor valor: Slot del mdulo NOE Byte 4 (MSB) de la direccin IP de destino de 32 bits Byte 3 de la direccin IP de destino de 32 bits Byte 2 de la direccin IP de destino de 32 bits Byte 1 (LSB) de la direccin IP de destino de 32 bits

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

58

33002530 07 07/2008

CREAD_REG

Descripcin de elementos para WordArr5 en Ethernet SY/MAX

Descripcin de elementos para WordArr5 en Ethernet SY/MAX


Elemento WordArr5[1] Tipo de datos WORD Significado Byte de menor valor: ndice de copiado de un Transporter MBP a Ethernet (MET) Byte de mayor valor: Slot del mdulo NOE Nmero de estacin de destino (o ajustar a FF hex) Terminador (ajustar a FF hex) Sin significado Sin significado

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

33002530 07 07/2008

59

CREAD_REG

Modo de funcionamiento
Modo de funcionamiento del bloque CREAD_REG Se puede programar un gran nmero de bloques de funcin CREAD_REG, pero solamente pueden estar activas cuatro operaciones de lectura al mismo tiempo. En este caso, no tiene importancia si dichas operaciones se realizan por medio de este bloque de funcin u otros (p. ej. MBP_MSTR, MSTR o READ_REG). Todos los bloques de funcin emplean una ruta de transaccin de datos y necesitan varios ciclos para completar una orden. Nota: La comunicacin TCP/IP entre un autmata Quantum (NOE 211 00) y un autmata Momentum (todas las CPU TCP/IP y todos los mdulos de E/S TCP/IP) slo es posible cuando en cada ciclo del autmata nicamente se lleva a cabo una orden de escritura o de lectura. Si se envan varias rdenes por cada ciclo del autmata, la comunicacin permanece estancada, sin generar ningn mensaje de error en el registro de estado del bloque de funcin. La informacin de acceso completa est incluida en la estructura de datos WordArr5 de la entrada ADDRFLD. El tipo del bloque de funcin conectado a esta entrada se orienta de acuerdo con la red utilizada. Utilice: El bloque de funcin ModbusP_ADDR para Modbus Plus. El bloque de funcin TCP_IP_ADDR para Ethernet TCP/IP. El bloque de funcin SYMAX_IP_ADDR para Ethernet SY/MAX.

Nota: La estructura de datos WordArr5 tambin se puede utilizar con constantes.

Nota: Este bloque de funcin supone una gran carga para la red; por lo tanto, se debe vigilar atentamente la carga de la red. En caso de que la carga de la red sea demasiado alta, se debera repasar nuevamente la lgica del programa para poder trabajar con el bloque de funcin READ_REG, una variacin de este bloque de funcin que no trabaja en modalidad continua, sino controlado por comandos.

60

33002530 07 07/2008

CREAD_REG

Descripcin de los parmetros


SLAVEREG Principio del rea en el slave direccionado en la que se leen los datos de origen. El rea de origen se encuentra siempre dentro del rea del rango de direcciones %MW. Nota: Para slaves de un PLC que no sea Unity Pro: El rea de origen se encuentra siempre dentro del rea de registro 4x. SLAVEREG espera la direccin de origen como offset dentro del rea 4x. El "4" de la izquierda no se tiene en cuenta (p. ej. 59 (contenido de las variables o valor del literal) = 40059). El parmetro se puede indicar como direccin, Located Variable, Unlocated Variable o literal. NO_REG Nmero de direcciones que se deben leer desde el slave direccionado (1 a 100). El parmetro se puede indicar como direccin, Located variable o Unlocated variable. REG_READ Para este parmetro se debe definir una matriz (ARRAY) del tamao del envo requerido ( NO_REG). El nombre de esta matriz se transferir como parmetro. Si se define una matriz demasiado pequea, slo se transferir la cantidad de datos que tenga cabida en la matriz. El parmetro se debe indicar como Located Variable. STATUS En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145 El parmetro se puede indicar como direccin, Located variable o Unlocated variable.

33002530 07 07/2008

61

CREAD_REG

62

33002530 07 07/2008

CWRITE_REG: escritura continua de registro

Descripcin general
Introduccin Contenido: En este captulo se describe el bloque CWRITE_REG. Este captulo contiene los siguiente apartados:
Apartado Descripcin Tipos de datos derivados Modo de funcionamiento Descripcin de los parmetros Pgina 64 67 68 69

33002530 07 07/2008

63

CWRITE_REG

Descripcin
Descripcin de funciones Este bloque de funcin est ideado para escribir de forma continua un rea de registro. Transmite datos desde el autmata a travs de Modbus Plus, Ethernet TCP/IP o Ethernet SY/MAX a un slave direccionado. Como parmetros adicionales se pueden configurar EN y ENO. Nota: Para programar la funcin CWRITE_REG debe conocer los procedimientos de acceso utilizados en la red. La descripcin detallada de las estructuras de ruta de acceso Modbus Plus se encuentra en "Modbus Plus Network Planning and Installation Guide". En el caso de que se implemente la ruta de acceso de Ethernet TCP/IP o SY/MAX, se debern utilizar los productos estndar de ruta de acceso de Ethernet-IP. La descripcin detallada de las rutas de acceso TCP/IP figura en el manual "Manual de usuario sobre la configuracin de Quantum con Unity ProTCP/IP".

Nota: En el programa puede utilizar diversos ejemplares de este bloque de funcin. No obstante, no es posible instanciar estos ejemplares de forma mltiple.

Representacin en FBD

Representacin:
CWRITE_REG_Instance CWRITE_REG OffsetAddress NumberOfRegisters SourceDataArea DataStructure SLAVEREG NO_REG REG_WRIT ADDRFLD

STATUS

ErrorCode

64

33002530 07 07/2008

CWRITE_REG

Representacin en LD

Representacin:
CWRITE_REG_Instance CWRITE_REG EN OffsetAddress NumberOfRegisters SourceDataArea DataStructure SLAVEREG NO_REG REG_WRIT ADDRFLD STATUS ErrorCode ENO

Representacin en IL

Representacin: CAL CWRITE_REG_Instance (SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, REG_WRIT:=SourceDataArea, ADDRFLD:=DataStructure, STATUS=>ErrorCode) Representacin: CWRITE_REG_Instance ( SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, REG_WRIT:=SourceDataArea, ADDRFLD:=DataStructure, STATUS=>ErrorCode) ; Descripcin de los parmetros de entrada
Parmetro SLAVEREG NO_REG REG_WRIT Tipo de datos DINT INT ANY Significado Direccin de la primera direccin %MW del slave en el que se debe escribir. Nmero de direcciones que se deben escribir desde el slave. Datos de origen (Se debe declarar una estructura de datos como Located Variable para los datos de origen). Estructura de datos para la transmisin de la direccin Modbus Plus, TCI/IP o SY/MAX-IP.

Representacin en ST

Descripcin de los parmetros

ADDRFLD

WordArr5

33002530 07 07/2008

65

CWRITE_REG

Descripcin de los parmetros de salida


Parmetro STATUS Tipo de datos WORD Significado En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145

Error de ejecucin

Para obtener una lista de todos los cdigos y los valores de error del mdulo, consulte Extendido, p. 406.

66

33002530 07 07/2008

CWRITE_REG

Tipos de datos derivados


Descripcin de elementos para WordArr5 en Modbus Plus Descripcin de elementos para WordArr5 en Modbus Plus:
Elemento Tipo de datos Significado
Byte de menor valor: El registro de ruta de acceso 1 se utiliza para determinar la direccin (direccin de ruta de acceso una de cinco) del participante de destino en una transmisin de red. El ltimo byte en la ruta de acceso que no se corresponda con cero es el participante de destino. Byte de mayor valor: slot del modulo adaptador de red (NOM), si existe.

WordArr5[1] WORD

WordArr5[2] WORD WordArr5[3] WORD WordArr5[4] WORD WordArr5[5] WORD

Registro de ruta de acceso 2 Registro de ruta de acceso 3 Registro de ruta de acceso 4 Registro de ruta de acceso 5

Descripcin de elementos para WordArr5 en Ethernet TCP/IP

Descripcin de elementos para WordArr5 en Ethernet TCP/IP:


Elemento Tipo de datos Significado
Byte de menor valor: ndice de copiado de un Transporter MBP a Ethernet (MET) Byte de mayor valor: Slot del mdulo NOE

WordArr5[1] WORD

WordArr5[2] WORD WordArr5[3] WORD WordArr5[4] WORD WordArr5[5] WORD

Byte 4 (MSB) de la direccin IP de destino de 32 bits Byte 3 de la direccin IP de destino de 32 bits Byte 2 de la direccin IP de destino de 32 bits Byte 1 (LSB) de la direccin IP de destino de 32 bits

Descripcin de elementos para WordArr5 en Ethernet SY/MAX

Descripcin de elementos para WordArr5 en Ethernet SY/MAX:


Elemento Tipo de datos Significado
Byte de menor valor: ndice de copiado de un Transporter MBP a Ethernet (MET) Byte de mayor valor: Slot del mdulo NOE

WordArr5[1] WORD

WordArr5[2] WORD WordArr5[3] WORD WordArr5[4] WORD WordArr5[5] WORD

Nmero de estacin de destino (o ajustar a FF hex) Terminador (ajustar a FF hex) Sin significado Sin significado

33002530 07 07/2008

67

CWRITE_REG

Modo de funcionamiento
Modo de funcionamiento del bloque CWRITE_REG Se puede programar un gran nmero de bloques de funcin CWRITE_REG, pero slo pueden estar activas cuatro operaciones de escritura al mismo tiempo. En este caso, no tiene importancia si dichas operaciones se realizan por medio de este bloque de funcin u otros (p. ej. MBP_MSTR, MSTR o WRITE_REG). Todos los bloques de funcin emplean una ruta de transaccin de datos y necesitan varios ciclos para completar una orden. Si se utilizan varios bloques de funcin CWRITE_REG en una aplicacin, hay que diferenciarlos al menos en los valores de los parmetros NO_REG o REG_WRIT. Nota: La comunicacin TCP/IP entre un autmata Quantum (NOE 211 00) y un autmata Momentum (todas las CPU TCP/IP y todos los mdulos de E/S TCP/IP) slo es posible cuando en cada ciclo del autmata nicamente se lleva a cabo una orden de escritura o de lectura. Si se envan varias rdenes por cada ciclo del autmata, la comunicacin permanece estancada, sin generar ningn mensaje de error en el registro de estado del bloque de funcin. La informacin de acceso completa est incluida en la estructura de datos WordArr5 de la entrada ADDRFLD. El tipo del bloque de funcin conectado a esta entrada se orienta de acuerdo con la red utilizada. Utilice: El bloque de funcin ModbusP_ADDR para Modbus Plus. El bloque de funcin TCP_IP_ADDR para Ethernet TCP/IP. El bloque de funcin SYMAX_IP_ADDR para Ethernet SY/MAX.

Nota: La estructura de datos WordArr5 tambin se puede utilizar con constantes.

Nota: Este bloque de funcin supone una gran carga para la red; por lo tanto, se debe vigilar atentamente la carga de la red. En caso de que la carga de la red sea demasiado alta, hay que repasar de nuevo la lgica del programa para poder trabajar con el bloque de funcin WRITE_REG, una variacin de este bloque de funcin que no trabaja en modo continuo, sino controlado por comandos.

68

33002530 07 07/2008

CWRITE_REG

Descripcin de los parmetros


SLAVEREG Comienzo del rea en el slave direccionado donde se van a escribir los datos de origen. El rea de destino se encuentra siempre dentro del rea del rango de direcciones %MW. Nota: Para slaves de un PLC que no sea Unity Pro: Esta rea de destino siempre se encuentra dentro del rea de registro 4x. SLAVEREG espera la direccin de destino como offset dentro del rea 4x. El "4" de la izquierda no se tiene en cuenta (p. ej. 59 (contenido de las variables o valor del literal) = 40059). El parmetro se puede indicar como direccin, Located Variable, Unlocated Variable o literal.

NO_REG

Nmero de registros que deben escribirse en el procesador slave (1 a 100). El parmetro se puede indicar como direccin, Located Variable, Unlocated Variable o literal. En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145 El parmetro se puede indicar como direccin, Located variable o Unlocated variable.

STATUS

REG_WRIT

Para este parmetro se debe definir una matriz (ARRAY) del tamao del envo deseado ( NO_REG). El nombre de esta matriz se transferir como parmetro. Si se define una matriz demasiado pequea, slo se transferir la cantidad de datos que tenga cabida en la matriz. El parmetro se debe indicar como Located Variable.

33002530 07 07/2008

69

CWRITE_REG

70

33002530 07 07/2008

DATA_EXCH: intercambio de datos entre aplicaciones

Presentacin
Objetivo Contenido: En este captulo se describe la funcin DATA_EXCH. Este captulo contiene los siguiente apartados:
Apartado Descripcin Pantalla de entrada asistida Ejemplo de cmo utilizar una red Fipway Pgina 72 77 79

33002530 07 07/2008

71

DATA_EXCH

Descripcin
Descripcin de la funcin La funcin DATA_EXCH permite transferir datos de un dispositivo a otro con PLC Premium y M340: emisin de datos, recepcin de datos, emisin seguida de una recepcin de datos.

Nota: El tipo de peticin que se puede enviar depende del tipo de PLC: En PLC Modicon M340, esta funcin se puede utilizar para enviar peticiones Modbus a otro dispositivo. En PLC Premium, esta funcin se puede utilizar para enviar peticiones UNI-TE o Modbus a otro dispositivo. Para ello, es necesario asegurarse de que los datos enviados constituyen la totalidad de la trama necesaria para el protocolo utilizado. Los parmetros adicionales EN y ENO se pueden configurar. Representacin en FBD Representacin:
DATA_EXCH Address Action Data_to_Send Management_Param ADR TYPE EMIS GEST RECP Received_Data

GEST

Management_Param

Representacin en LD

Representacin:
DATA_EXCH EN Address Action Data_to_Send Management_Param ADR TYPE EMIS GEST GEST Management_Param ENO RECP Received_Data

72

33002530 07 07/2008

DATA_EXCH

Representacin en IL

Representacin: LD Address DATA_EXCH Action, Data_to_Send, Management_Param, Received_Data Representacin: DATA_EXCH(Address, Action, Data_to_Send, Management_Param, Received_Data); En la siguiente tabla se describen los parmetros de entrada:
Parmetros Address Tipo ARRAY [0.. 5] OF INT para Premium ARRAY [0.. 7] OF INT para Modicon M340 Comentario
Direccin de la entidad de destino del intercambio. Si el parmetro Action es del tipo emisin/recepcin, las direcciones de difusin estn prohibidas. Para PLC Premium: Debe utilizarse la funcin ADDR. Para PLC Modicon M340: Debe utilizarse la funcin ADDM. La entidad de destino del intercambio es una matriz de 8 palabras: %MWx:8. %MWx:8: Inicializada por medio del bloque de conversin ADDM. %MW0:8:=ADDM(0.3.0.0)

Representacin en ST

Descripcin de parmetros

Action

INT

Tipo de accin que se va a realizar. Para PLC Premium, los valores posibles son: 1: Emisin seguida de recepcin en espera (esta accin no puede efectuarse en Uni-Telway esclavo). 2: Emisin simple. 3: Modo de recepcin. Para PLC Modicon M340, el valor posible es: 1: Emisin seguida de recepcin en espera.

Data_to_Sen d

ARRAY [n... m] OF INT

Tabla de enteros que se enviar al dispositivo de destino de la peticin. Atencin: Debe tener, como mnimo, una longitud de 1 elemento, aunque no haya datos que enviar (por ejemplo, cdigo 3 para esta accin). Nota: Antes del inicio de la funcin y para que sta se ejecute correctamente, la longitud de los datos que se van a emitir (en nmero de bytes) debe estar asignada a la cuarta palabra de la tabla de gestin.

33002530 07 07/2008

73

DATA_EXCH

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo Comentario

ARRAY [0... 3] OF Tabla de gestin del intercambio (vase INT Estructura de los parmetros de gestin, p. 35) En PLC Modicon M340, existe un bit de cancelacin disponible en la palabra de rango 1 de la tabla de gestin de intercambio. La palabra de rango 1 consta de 2 bytes: Byte ms significativo: nmero de intercambio. Byte menos significativo: bit de actividad (rango 0) y bit de cancelacin (rango 1). La EF DATA_EXCH puede anularse mediante la CANCEL EF o poniendo en 1 el bit de cancelacin de la tabla de gestin (Ver Modicon M340 con Unity Pro, Conexin serie, Manual del usuario, Servicios admitidos por un procesador maestro de conexin Modbus).

En la siguiente tabla se describen los parmetros de salida:


Parmetro Received_Data Tipo ARRAY [n... m] OF INT Comentario Tabla de enteros que contiene los datos recibidos durante el modo de recepcin o una accin de emisin/recepcin. Atencin: Incluso si la accin es una simple emisin, la tabla Received_Data debe existir y tener un tamao mnimo de 1. Nota: El sistema escribe automticamente el tamao de los datos recibidos (en nmero de bytes) en la cuarta palabra de la tabla de gestin (vase Parmetros de gestin: longitud y timeout, p. 40).

74

33002530 07 07/2008

DATA_EXCH

Servicios de Modicon M340

En los PLC Modicon M340, el usuario puede codificar un protocolo privado y libre para enviar cualquier peticin Modbus. Ofrece la posibilidad de enviar o recibir una cadena de bytes libre sobre soporte Modbus. La EF DATA_EXCH se puede usar en todos los puertos de comunicaciones excepto el puerto CANopen. Las limitaciones de la longitud de SendBuffer vienen dadas por las caractersticas del puerto de destino. En la tabla siguiente se indica la longitud de todos los puertos de comunicaciones:
Puerto Ethernet (NOE o puerto incorporado) Modbus Longitud 1 kb 256 bytes

La longitud del mensaje que se va a enviar o recibir se indica en la cuarta palabra de la tabla de gestin (vase Parmetros de gestin: longitud y timeout, p. 40). El bloque de conversin ADDM se utiliza para indicar el destino de la peticin. Vase la funcin ADDM. Nota: Se debe especificar la palabra clave TCP.MBS al utilizar la EF DATA_EXCH para comandos Modbus sobre Ethernet. No se admite ninguna otra entidad de Ethernet. La EF DATA_EXCH no gestiona directamente una conexin sobre TCP. Para el protocolo de usuario abierto sobre Modbus, se acepta la sintaxis siguiente: bastidor.mdulo: servidor de mdulo bastidor.mdulo.canal.dispositivo.MBS: protocolo Modbus bastidor.mdulo.canal.dispositivo: protocolo de usuario

33002530 07 07/2008

75

DATA_EXCH

Ejemplo de servicio de Modicon M340

(* PETICIN ESCRITURA NICO REGISTRO %MW100 Longitud := 5 *) (* Direccin superior + FC Escribir nico registro (6) *) req_wr_single_reg[0] := 6; (* Valor superior + Direccin inferior *) req_wr_single_reg[1] := (value_write & 16#FF00) + 100; (* sin usar + Valor inferior *) req_wr_single_reg[2] := value_write & 16#FF; IF ((mng_wr_single_reg[ACTIVITY] & 1) = 0 ) THEN mng_wr_single_reg[LENGTH] := 5; (* LONGITUD PET ESCRITURA *) DATA_EXCH (ADDM('0.0.0.1'), 1, req_wr_single_reg, mng_wr_single_reg, resp_wr_single_reg); END_IF;

76

33002530 07 07/2008

DATA_EXCH

Pantalla de entrada asistida


Presentacin Para esta funcin de comunicacin, puede solicitar la pantalla de entrada asistida. Tenga en cuenta que la pantalla de entrada asistida no est disponible para Modicon M340. Nota: Los smbolos de variable se aceptan en los diferentes campos de la pantalla.

Ilustracin

La pantalla siguiente muestra una pantalla de entrada asistida de la funcin:


DATA_EXCH Parmetros Direccin: Modalidad: Datos para enviar: Datos para recibir: Informe:

... ... ... ... ...


Intercambio

Tipos posibles: Matriz de enteros constantes, matriz de enteros (n>=6) Direccin ADDR(..) Aceptar Cancelar

Direccin

Para PLC Premium, los tipos de objetos posibles son los siguientes: ADDR(STRING), ARRAY [0..5] OF INT.

Nota: Si introduce un valor directamente en un campo, el botn de entrada de direccin asistida se vuelve gris.

33002530 07 07/2008

77

DATA_EXCH

Modo

Las opciones posibles son las siguientes: 1: intercambio, 2 : transmisin, 3 : recepcin.

Nota: Si utiliza el campo de entrada en lugar del men, puede introducir una variable de tipo INT, est o no localizada.

Datos para enviar Datos para recibir Informe

La variable para la transmisin es una matriz de enteros. La matriz puede localizarse o no. El rea de recepcin es una matriz de cuatro enteros, que puede o no localizarse. El tamao de la matriz depende del nmero de objetos que se van a recibir. El informe es una matriz de cuatro enteros, que puede o no localizarse. Nota: Tenga cuidado de no utilizar varias reas de memoria idnticas para las tablas de informes; de lo contrario, la funcin de lectura de variables podra no funcionar.

78

33002530 07 07/2008

DATA_EXCH

Ejemplo de cmo utilizar una red Fipway


Presentacin Supongamos que deseamos que dos estaciones de PLC se comuniquen mediante una red Fipway. La estacin 1 debe enviar los datos (20 bytes ubicados en %MW70:10) a la estacin 2, que los recibe en una tabla ubicada en %MW80:10. Cada PLC cuenta con una tabla de gestin que comienza con la direccin %MW90. Para la estacin 1, la palabra %MW93 debe contener la longitud de los datos que se van a enviar, o 20 (se van a enviar diez palabras). Para la estacin 2, la palabra %MW93 se define en 0 antes del intercambio, con el fin de ver el nmero de caracteres recibidos al final del intercambio. La funcin DATA_EXCH requiere que los dos PLC estn programados, uno para enviar y el otro para recibir. Ilustracin Las dos estaciones se conectan mediante una red Fipway:
Premium {20.1} Premium {20.2}

Fipway

33002530 07 07/2008

79

DATA_EXCH

Transmisin programada en la estacin 1

Programacin en ST: SI RE(%I0.3.2) Y NO %MW90.0 ENTONCES (* inicializacin de los datos para enviar *) %MW93:= 20; (* funcin de comunicacin *) DATA_EXCH(ADDR({20.2}APP),2,%MW70:10,%MW90:4,%MW80:1); END_IF;

Parmetros de peticin:
Parmetros ADDR({20.2}APP) Descripcin 20 : red 2 : estacin APP: aplicacin de la estacin 2 Tipo de comunicacin: transmisin Datos para enviar Tabla de gestin rea de recepcin para respuestas. Aqu no hay datos que recibir. No obstante, se debe reservar una palabra (obligatorio).

2 %MW70:10 %MW90:4 %MW80:1

80

33002530 07 07/2008

DATA_EXCH

Recepcin programada en la estacin 2

SI RE(%I0.3.4) Y NO %MW90.0 ENTONCES (* inicializacin de los datos para recibir *) %MW93:= 0; (* funcin de comunicacin *) DATA_EXCH(ADDR({20.1}APP),3,%MW70:1,%MW90:4,%MW80:10); END_IF;

Parmetros de peticin:
Parmetros ADDR({20.1}APP) Descripcin 20 : red 1 : estacin APP: aplicacin de la estacin 1 Tipo de comunicacin: recepcin Datos para enviar. Aqu no hay ningn dato. No obstante, se debe reservar una palabra. Tabla de gestin Zona de recepcin: se proporcionan diez palabras de la estacin 1.

3 %MW70:1 %MW90:4 %MW80:10

33002530 07 07/2008

81

DATA_EXCH

82

33002530 07 07/2008

INPUT_BYTE: recepcin de cadenas de caracteres

10

Descripcin
Descripcin de las funciones INPUT_BYTE se utiliza para enviar una solicitud de lectura de una matriz de bytes a un mdulo de comunicacin de modalidad de caracteres. El mensaje recibido se almacena en una matriz de bytes. Nota: En general, INPUT_BYTE proporciona las mismas funciones que INPUT_CHAR, pero permite pasar una tabla de bytes en vez de una cadena como parmetro de salida. Debido a esto, es posible leer un valor de byte 0 (NULL) en un flujo de bytes desde un puerto serie. Para PLC Premium, esta funcin se utiliza para recibir hasta 4 Kbytes (120 bytes para el puerto de terminal). Para PLC Modicon M340 esta funcin se utiliza para recibir hasta 1.024 bytes. Existen dos posibilidades exclusivas disponibles: Lectura de un nmero de bytes: no debe configurarse ninguna condicin. Lectura de un mensaje: debe configurarse una condicin de detencin en la pantalla de configuracin. Pueden configurarse los parmetros adicionales EN y ENO. Representacin FBD Representacin:
INPUT_BYTE Address Raz Buffer_Length Management_Param ADR RAZ NB GEST RECP Received_Data

GEST

Management_Param

33002530 07 07/2008

83

INPUT_BYTE

Representacin LD

Representacin:
INPUT_BYTE EN Address Raz Buffer_Length Management_Param ADR RAZ NB GEST GEST Management_Param ENO RECP Received_Data

Representacin IL

Representacin: Direccin LD INPUT_BYTE Reset, Buffer_Length, Management_Param, Received_Data Representacin: INPUT_BYTE(Address, Reset, Buffer_Length, Management_Param, Received_Data); La tabla siguiente describe los parmetros de entrada:
Parmetro ADR Tipo ARRAY [0.. 5] OF INT para PLC Premium ARRAY [0.. 7] OF INT para PLC Modicon M340 Comentario
Para PLC Premium: La funcin ADDR proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. Slo son posibles las direcciones que terminan en SYS (por ejemplo, el puerto de terminal del procesador 0.0.0.SYS). Para PLC Modicon M340: La funcin ADDM proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. La sintaxis de la direccin es del tipo ADDM (r.m.c.node). Asiento es un campo opcional que puede ser SYS o estar vaco (por ejemplo, ADDM(0.0.0.SYS) es igual a ADDM(0.0.0)).

Representacin ST

Descripcin de parmetros

84

33002530 07 07/2008

INPUT_BYTE

Parmetro RAZ

Tipo INT

Comentario Restablecer. Este parmetro se utiliza para restablecer la memoria de recepcin del acoplador. Valor = 0: sin restablecimiento de memoria. Valor = 1: restablecimiento de memoria. Nota: Para las comunicaciones de puerto de terminal de PLC Premium, el valor debe ser 1. Nota: En PLC Modicon M340, la EF INPUT_CHAR puede programarse con este parmetro o sin l.

NB

INT

Longitud del bfer o nmero de bytes que van a recibirse. Valor = 0: lectura del mensaje en cuanto est disponible en el canal. Aqu, debe especificarse una condicin de detencin en la pantalla de configuracin. Valor mayor que 0: especifica el bfer o nmero de bytes que van a leerse. Nota: Para las comunicaciones de puerto de terminal de PLC Premium, 0 es el nico valor permitido. Aqu, el carcter de fin del mensaje predeterminado es un retorno de carro (CR).

En la siguiente tabla, se describen los parmetros de entrada/salida:


Parmetro GEST Tipo ARRAY [0.. 3] OF INT Comentario
Tabla de gestin de intercambio (vase Estructura de los parmetros de gestin, p. 35). Slo en los PLC Modicon M340, hay un bit de cancelacin disponible. El bit de cancelacin est ubicado en la palabra 1 del rango de la tabla de gestin de intercambio y consta de 2 bytes: Byte de mayor valor: nmero de intercambio. Byte de menor valor: bit de actividad (rango 0) y bit de cancelacin (rango 1). El bloque de funciones INPUT_CHAR puede cancelarse mediante el bloque de funciones CANCEL o estableciendo en 1 el bit de cancelacin de la tabla de gestin; consulte tambin Cancelacin de un intercambio (Ver Modicon M340 con Unity Pro, Conexin serie, Manual del usuario, Funciones de comunicacin en modalidad de caracteres).

La tabla siguiente describe los parmetros de salida:


Parmetro RECP Tipo ARRAY OF BYTE Comentario Bytes recibidos. Se almacenan en una matriz deBYTES. 85

33002530 07 07/2008

INPUT_BYTE

Normas de programacin

Cuando se inician varias INPUT_BYTE simultneamente, el parmetro Reset debe establecerse en 0 (memoria de recepcin del mdulo no restablecida). Puede solicitarse el restablecimiento de la memoria del mdulo en el prximo mensaje para evitar la recepcin de datos antiguos. Cuando el parmetro Reset est establecido en 1, la funcin INPUT_BYTE debe iniciarse antes del envo de datos. En PLC Premium, son necesarios varios ciclos de PLC para recibir una cadena de bytes de ms de 240 bytes (la cadena est fragmentada). Por tanto, es importante asegurarse de que no se modifiquen los datos de gestin durante el procesamiento de la funcin. El sistema recibe la cadena coherentemente en varios fragmentos. En PLC Modicon M340, slo es necesario un ciclo de PLC para recibir una cadena de bytes de una longitud mxima de 1.024 bytes. Por ello, es importante asegurarse de que no se modifiquen los datos de gestin durante el procesamiento de la funcin. El puerto serie del PLC Modicon M340 es dplex completo, por lo que es posible enviar una funcin PRINT_CHAR, incluso si se ha enviado una funcin INPUT_CHAR y todava est pendiente.

86

33002530 07 07/2008

INPUT_CHAR: recepcin de cadenas de caracteres

11

Presentacin
Objetivo Contenido: En este captulo se describe la funcin INPUT_CHAR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Pantalla de entrada asistida Ejemplo de lectura de cadenas de caracteres a travs de la red Fipway Ejemplo de lectura de cadenas de caracteres mediante la conexin serie de procesadores Modicon M340 Pgina 88 93 95 97

33002530 07 07/2008

87

INPUT_CHAR

Descripcin
Descripcin de las funciones La funcin INPUT_CHAR se emplea para enviar una peticin de lectura de cadena de caracteres a un mdulo de comunicacin de modalidad de caracteres (esperar la recepcin de las cadenas de caracteres). El mensaje recibido se almacena en una cadena de caracteres. Para PLC Premium, esta funcin se utiliza para recibir hasta 4 Kbytes (120 bytes para el puerto de terminal). Para PLC Modicon M340, esta funcin se utiliza para recibir hasta 1.024 bytes. Existen dos posibilidades exclusivas disponibles: Lectura de un nmero de caracteres: no debe configurarse ninguna condicin. Lectura de un mensaje: debe configurarse una condicin de detencin en la pantalla de configuracin. Pueden configurarse los parmetros adicionales EN y ENO. Representacin FBD Representacin:
INPUT_CHAR Address Raz String_Length Management_Param ADR RAZ NB GEST RECP Received_Data

GEST

Management_Param

Representacin LD

Representacin:
INPUT_CHAR EN Address Raz String_Length Management_Param ADR RAZ NB GEST GEST Management_Param ENO RECP Received_Data

88

33002530 07 07/2008

INPUT_CHAR

Representacin IL

Representacin: Direccin LD INPUT_CHAR Reset, String_Length, Management_Param, Received_Data Representacin: INPUT_CHAR(Address, Reset, String_Length, Management_Param, Received_Data); En la siguiente tabla se describen los parmetros de entrada:
Parmetro Address Tipo ARRAY [0.. 5] OF INT para PLC Premium ARRAY [0.. 7] OF INT para PLC Modicon M340 Comentario Las instrucciones siguientes slo son vlidas para PLC Premium: La funcin ADDR proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. nicamente las direcciones que acaban en SYS son posibles (por ejemplo: puerto de terminal del procesador 0.0.0.SYS). Las instrucciones siguientes slo son vlidas para PLC Modicon M340: La funcin ADDM proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. La sintaxis de la direccin es del tipo ADDM (r.m.c.asiento). Asiento es un campo opcional que puede ser SYS o estar vaco (por ejemplo, ADDM(0.0.0.SYS) es igual a ADDM(0.0.0). Reset INT Restablecer. Este parmetro se utiliza para restablecer la memoria de recepcin del acoplador. Valor = 0: sin restablecimiento de memoria. Valor = 1: restablecimiento de memoria. Nota: Para las comunicaciones de puerto de terminal de PLC Premium, el valor debe ser 1. Nota: En PLC Modicon M340, la EF INPUT_CHAR puede programarse con o sin este parmetro.

Representacin ST

Descripcin de parmetros

33002530 07 07/2008

89

INPUT_CHAR

Parmetro String_Length

Tipo INT

Comentario Longitud de la cadena de caracteres o nmero de caracteres que deben recibirse. Valor = 0: lectura del mensaje en cuanto est disponible en el canal. Aqu, debe especificarse una condicin de detencin en la pantalla de configuracin. Valor mayor que 0: especifica el nmero de caracteres que deben leerse. Nota: Para las comunicaciones de puerto de terminal de PLC Premium, 0 es el nico valor permitido. Aqu, el carcter de fin del mensaje predeterminado es un retorno de carro (CR).

En la tabla siguiente se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo ARRAY [0.. 3] OF INT Comentario Tabla de gestin de intercambio (vase Estructura de los parmetros de gestin, p. 35). nicamente en PLC Modicon M340, existe un nuevo bit de cancelacin disponible en la palabra de rango 1 de la tabla de gestin de intercambio. Este bit de cancelacin se encuentra ubicado en la palabra de rango 1, que consta de 2 bytes: Byte de mayor valor: nmero de intercambio. Byte de menor valor: bit de actividad (rango 0) y bit de cancelacin (rango 1). La EF INPUT_CHAR puede anularse mediante la EF CANCEL o estableciendo en 1 el bit de cancelacin de la tabla de gestin (Ver Modicon M340 con Unity Pro, Conexin serie, Manual del usuario, Funciones de comunicacin en modalidad de caracteres).

En la siguiente tabla se describen los parmetros de salida:


Parmetro Received_Data Tipo STRING Comentario Cadena recibida. Posteriormente se almacena en una cadena de caracteres.

90

33002530 07 07/2008

INPUT_CHAR

Normas de programacin

Cuando se inician varias INPUT_CHAR simultneamente, el parmetro Restablecer debe establecerse en 0 (memoria de recepcin del mdulo no restablecida). Puede solicitarse el restablecimiento de la memoria del mdulo en el prximo mensaje para evitar la recepcin de datos antiguos. Cuando el parmetro Reset se pone a 1, la funcin INPUT_CHAR debe iniciarse antes del envo de datos. En PLC Premium, son necesarios varios ciclos de PLC para recibir una cadena de caracteres de ms de 240 bytes (la cadena est fragmentada). Por tanto, es importante asegurarse de que no se modifiquen los datos de gestin durante el procesamiento de la funcin. El sistema recibe la cadena coherentemente en varios fragmentos. En PLC Modicon M340, slo es necesario un ciclo de PLC para recibir una cadena de caracteres de una longitud mxima de 1.024 bytes. Por ello, es importante asegurarse de que no se modifiquen los datos de gestin durante el procesamiento de la funcin. El puerto serie del PLC Modicon M340 es dplex completo, por lo que es posible enviar una funcin PRINT_CHAR, incluso si se ha enviado una funcin INPUT_CHAR y todava est pendiente. Es posible iniciar la funcin INPUT_CHAR antes de terminar los caracteres en el PLC. Si se utilizan los caracteres de terminacin, en caso de que en el bfer haya muchos de estos caracteres y de que no se haya restablecido el bfer, cada funcin INPUT_CHAR recibe la cadena de inicio del bfer hasta alcanzar el primer carcter de terminacin y, a continuacin, el bfer se elimina de los caracteres de lectura. Funciona igual al leer un nmero de caracteres. Si los caracteres de terminacin estn configurados, puede utilizarse la funcin de nmero de caracteres.

Nota: Gestin de RTS/CTS: En la comunicacin en modalidad de caracteres, al utilizar EF INPUT_CHAR, los caracteres recibidos en la conexin de serie se almacenan en un bfer de anillo. El tamao de este bfer es 1.024. Cuando el bfer est lleno, los dems caracteres se pierden. Para evitar esta prdida de caracteres, puede seleccionar la gestin de RTS/CTS. En este caso, cuando el bfer de anillo est casi lleno, la CPU restablece su seal RTS para detener el envo de caracteres.

33002530 07 07/2008

91

INPUT_CHAR

ADVERTENCIA
RIESGO DE PRDIDA DE CARACTERES Al utilizar la gestin de RTS/CTS, la cantidad mxima de caracteres permitidos de una cadena que va a enviar el equipo remoto es 1.000 (incluido el carcter de fin). Si se enva una cadena de ms de 1.000 caracteres (por ejemplo, 1.013), el RTS slo permitir la recepcin de los 1.000 primeros caracteres, mientras que la funcin INPUT_CHAR esperar indefinidamente la recepcin del carcter de fin (en caso de que no se haya definido ningn timeout con la funcin). Si no se siguen estas instrucciones pueden producirse lesiones personales graves o mortales o daos en el equipo.

Nota: Si desea enviar una cadena de ms de 1.000 caracteres (1.013, por ejemplo), deber enviar la cadena dos veces, la primera con los primeros 1.000 caracteres y la segunda con los 13 restantes, por ejemplo.

92

33002530 07 07/2008

INPUT_CHAR

Pantalla de entrada asistida


Presentacin Para esta funcin de comunicacin, puede solicitar la pantalla de entrada asistida. Tenga en cuenta que la pantalla de entrada asistida no est disponible para Modicon M340. Nota: Los smbolos de variable se aceptan en los diferentes campos de la pantalla.

Ilustracin

La pantalla siguiente muestra un ejemplo de la pantalla de entrada asistida de la funcin:


INPUT_CHAR Parmetros Direccin: Resetear memoria del mdulo: Tipo de lectura Leer mensaje con condicin de parada Definir nmero de caracteres que leer

... ...
S No

Nmero de caracteres: Cadena para recibir: Informe:

... ... ...

Tipos posibles: Matriz de enteros constantes, matriz de enteros (n>=6) Direccin ADDR(..) Aceptar Cancelar

Direccin

Para PLC Premium, el tipo de objeto posible es el siguiente: ADDR(STRING). ARRAY [0..5] OF INT.

Nota: Si introduce un valor directamente en un campo, el botn de entrada de direccin asistida se vuelve gris.

33002530 07 07/2008

93

INPUT_CHAR

Resetear memoria del mdulo

A continuacin se indica la seleccin de tipo INT posible: Yes, No.

Nota: Al seleccionar los botones S/No, inmediatamente se muestra el valor 1 0.

Tipo de lectura

Los dos botones de opcin seleccionan la modalidad de funcionamiento; esta seleccin debe realizarse de acuerdo con la configuracin del canal utilizado. Puede introducir un entero, en forma de variable o valor inmediato.

Nmero de caracteres Cadena para recibir

El rea de recepcin es una variable de tipo STRING. El tamao de esta variable es una funcin del nmero de caracteres que se van a recibir. Esta variable debe declararse antes de emplearse en esta pantalla. El informe es una matriz de 4 enteros. Nota: Tenga cuidado de no utilizar varias reas de memoria idnticas para las tablas de informes; de lo contrario, la funcin de lectura de variables podra no funcionar.

Informe

94

33002530 07 07/2008

INPUT_CHAR

Ejemplo de lectura de cadenas de caracteres a travs de la red Fipway


Presentacin Desde una estacin con una direccin de 1 en una red Fipway 20, es posible leer una cadena de caracteres enviada por un terminal de visualizacin (pantalla y teclado) conectado al puerto TER del PLC con una direccin de red de 20, estacin 5. Esta cadena de caracteres se almacena en la variable Str_1, la tabla de gestin de la funcin de comunicacin es %MW110:4. Ilustracin Las dos estaciones se conectan a travs de una red Fipway.

Premium

Micro

{20.5} Fipway {20.1}

33002530 07 07/2008

95

INPUT_CHAR

Programacin

Programacin en ST: SI RE(%I0.3.6) Y NO %MW110.0 ENTONCES INPUT_CHAR(ADDR({20.5}0.0.SYS), 1, 0, %MW110:4, Str_1); END_IF;

Parmetros de peticin:
Parmetros ADDR({20.5}0.0.0.SYS ) Descripcin {20.5} : red 20, estacin 5 0 : bastidor 0 : mdulo 0 : canal 0 SYS: direccin de sistema (puerto de terminal) Restablecer Leer la cadena de caracteres completa Tabla de gestin Variable de tipo STRING que va a recibir el mensaje

1 0 %MW110:4 Str_1

96

33002530 07 07/2008

INPUT_CHAR

Ejemplo de lectura de cadenas de caracteres mediante la conexin serie de procesadores Modicon M340
Presentacin Imagine que desea leer una cadena de caracteres enviada por un terminal de entrada/visualizacin de datos conectado a una puerto serie del procesador Modicon M340. Esta cadena de caracteres se almacena en la variable Str, la tabla de gestin de la funcin de comunicacin es gestion. Ilustracin Un PLC Modicon M340 est conectado a un terminal de entrada/visualizacin de datos TM8501: BMX P34 2010 Processor

TM8501 Terminal

Programacin

Programacin en ST: SI (%M15) ENTONCES INPUT_CHAR(ADDM(0.0.0), 1, 0, gestion, Str); END_IF; Parmetros de peticin:
Parmetros ADDM(0.0.0) Descripcin 0 : bastidor 0 : mdulo 0 : canal 0 SYS: direccin del sistema (opcional en los PLC Modicon M340) Restablecer Leer la cadena de caracteres completa Tabla de gestin Variable de tipo STRING que va a recibir el mensaje 97

1 0 gestion Str
33002530 07 07/2008

INPUT_CHAR

98

33002530 07 07/2008

MBP_MSTR: Maestro Modbus Plus

12

Descripcin general
Introduccin Contenido: En este captulo se describe el bloque MBP_MSTR. Este captulo contiene los siguiente apartados:
Apartado Descripcin del bloque Cdigos de funcin de operacin Estructuras de bloque de control de red Leer datos Escribir datos Obtencin de estadsticas locales Eliminacin de estadsticas locales Escritura de datos globales Lectura de datos globales Obtener estadsticas remotas Borrar estadsticas remotas Funcionamiento de Peer Cop Restablecimiento de mdulos opcionales Lectura de CTE Escritura de CTE Envo de correo electrnico Leer/escribir datos Estado de funcionamiento de las comunicaciones Peer Cop Estadsticas de red Modbus Plus Estadsticas de red de Ethernet TCP/IP. Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP
33002530 07 07/2008

Pgina 101 105 106 109 111 113 114 115 116 117 118 119 120 121 122 125 127 128 130 136 139 99

MBP_MSTR

Apartado Cdigos de error especficos de SY/MAX Cdigos de error de TPC/IP Ethernet Cdigos de error CTE para Ethernet SY/MAX y TCP/IP Cdigos de error del servicio de correo

Pgina 143 145 148 149

100

33002530 07 07/2008

MBP_MSTR

Descripcin del bloque


Descripcin de las funciones Puede seleccionar una de las 14 operaciones de comunicacin de red disponibles (vase Cdigos de funcin de operacin, p. 105) mediante el bloque de funciones MBP_MSTR. En funcin del protocolo de comunicaciones que se est utilizando, se puede disponer de hasta 16 bloques de funciones MBP_MSTR activos al mismo tiempo. Modbus Plus admite hasta cuatro bloques al mismo tiempo. Ethernet TCP/IP admite hasta 16 bloques al mismo tiempo. Todos los bloques de funciones utilizan una ruta de transacciones de datos y necesitan varios ciclos para completar una operacin. EN y ENO pueden configurarse como parmetros adicionales. Nota: Deber estar familiarizado con los procedimientos de enrutamiento de su red cuando programe un bloque de funciones MBP_MSTR. Las estructuras de ruta de acceso Modbus Plus se describen detalladamente en la Gua de instalacin y planificacin de red Modbus Plus. Si el enrutamiento Ethernet TCP/IP o SY/MAX se encuentra implantado, se deben utilizar productos de enrutador Ethernet IP estndar. Puede obtener una descripcin completa del enrutamiento TCP/IP en la Gua de usuario de configuracin de Quantum con Unity Pro TCP/IP.

Nota: En las secciones FBD y LD, este bloque de funciones slo puede utilizarse en el nivel de programa, es decir, no debe utilizarse en bloques de funciones derivados (DFB). Por motivos tcnicos, un bloque de funciones MBP_MSTR no permite el uso de lenguajes de programacin ST e IL.

Nota: Una comunicacin TCP/IP entre un PLC Quantum y un PLC Momentum slo es posible cuando slo se lleva a cabo una tarea de lectura o escritura en cada ciclo. Si se envan varias tareas por ciclo de PLC, la comunicacin se detiene sin generar un mensaje de error en el registro de estado del bloque de funciones. Ejemplo: Puede enviar MBP_MSTR.Enable:=(HSBY_NOEPLCMSTR_ON) AND (%SW61.1) AND NOT (%SW61.0). Puede crear una variable booleana primary_state:=(%SW61.1) AND NOT (%SW61.0), e insertarla para ejecutar la seccin.

33002530 07 07/2008

101

MBP_MSTR

Nota: Para evitar la anterior CPU del controlador Standby, que ha cambiado su estado de la ejecucin de funciones de comunicacin a RUN offline, debe aadir una condicin en los bits de estado para desactivar la funcin, si la CPU est offline.

Nota: Se pueden utilizar varias copias de este bloque de funciones en el programa. Sin embargo, no se pueden realizar varias instancias de estas copias.

Representacin en FBD
EnableMSTRFunction CancelActivMSTROperation

MBP_MSTR_Instance MBP_MSTR ENABLE ABORT ACTIVE ERROR SUCCESS CONTROL DATABUF OperationActiv FaultyOperation OperationSuccessful ControlBlock DataField

Representacin en LD

MBP_MSTR_Instance MBP_MSTR EN EnableMSTRFunction ENABLE CancelActivMSTROperation ABORT ERROR OperationSuccessful SUCCESS CONTROL DATABUF ControlBlock DataField ACTIVE FaultyOperation ENO OperationActiv

102

33002530 07 07/2008

MBP_MSTR

Parmetros de entrada

Parmetro ENABLE ABORT

Tipo de datos BOOL BOOL

Significado Cuando est en ON, la operacin especificada en el primer elemento del registro CONTROL se habilita. Cuando est en ON, se cancela la operacin activa (vase Cdigos de funcin de operacin, p. 105) en ese momento.

Parmetros de salida

Parmetro ACTIVE ERROR SUCCESS CONTROL

Tipo de datos BOOL BOOL BOOL WORD

Significado ON cuando la operacin est activa. Cuando est activado, la operacin se cancela sin xito. Cuando est activado, la operacin finaliza correctamente. Este campo contiene el bloque de control. El primer elemento CONTROL[1] contiene el nmero de cdigo de operacin de la operacin que se va a realizar (vase Cdigos de funcin de operacin, p. 105). El contenido del registro de secuencia est determinado por la operacin. El campo de datos debe declararse como una variable ubicada. La estructura del bloque de control difiere en funcin de la red utilizada (vase Estructuras de bloque de control de red, p. 106). Para las operaciones que proporcionan datos, por ejemplo, una operacin de escritura, el campo de datos es la fuente de datos. Para las operaciones de recepcin de datos, por ejemplo, la operacin de lectura, el campo de datos es el destino de los datos. Con las operaciones de lectura y escritura de Ethernet CTE, el campo de datos conserva el contenido de la tabla de ampliacin de la configuracin Ethernet. DATABUF debe definirse como una matriz de al menos 10 elementos en este caso. El campo de datos debe declararse como una variable ubicada.

DATABUF

WORD

33002530 07 07/2008

103

MBP_MSTR

Error de ejecucin

En caso de que surja un error durante una operacin MBP_MSTR, aparecer un cdigo de error hexadecimal en el registro CONTROL[2] del bloque de control para un ciclo. Los cdigos de error de funciones son especficos de la red: Cdigos de error de Ethernet Modbus Plus y SY/MAX (vase Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139) Cdigos de error especficos de SY/MAX (vase Cdigos de error especficos de SY/MAX, p. 143) Cdigos de error Ethernet TCP/IP (vase Cdigos de error de TPC/IP Ethernet, p. 145) Cdigos de error CTE para Ethernet SY/MAX y TCP/IP (vase Cdigos de error CTE para Ethernet SY/MAX y TCP/IP, p. 148) Cdigos de error de envo de correo electrnico (vase Cdigos de error del servicio de correo, p. 149)

Nota: Para obtener una lista de todos los valores y cdigos de error de los bloques, consulte Tablas de cdigos de error para la biblioteca de comunicacin.

104

33002530 07 07/2008

MBP_MSTR

Cdigos de funcin de operacin


Cdigos de funcin MBP_MSTR vlidos Mediante el bloque MBP_MSTR, puede activarse una de las 14 operaciones de comunicacin de red disponibles a travs de la red. Cada operacin tiene un cdigo de funcin asignado a ella. La disponibilidad de las operaciones especficas depende del tipo de red que se est utilizando.
Cdigo de funcin 1 2 3 4 5 6 7 8 9 10 11 12 13 23 Operacin Escribir datos Leer datos Obtener estadsticas locales Eliminar estadsticas locales Escribir datos globales, Peer Cop Leer datos globales, Peer Cop Obtener estadsticas remotas Eliminar estadsticas remotas (vase Borrar estadsticas remotas, p. 118) Estado de funcionamiento de Peer Cop Restablecer mdulos opcionales Leer CTE (ampliacin config.) Escribir CTE (ampliacin config.) Enviar correo electrnico (vase Envo de correo electrnico, p. 125) Leer/escribir datos (vase Leer/escribir datos, p. 127) Modbus Plus X X X X X X X X X Ethernet TCP/IP X X X X X X X X X X X Ethernet SY/MAX X X X X X

donde: X indica S - indica No

33002530 07 07/2008

105

MBP_MSTR

Estructuras de bloque de control de red


Resumen La estructura de bloque de control MBP_MSTR vara en funcin del tipo de red que se est utilizando. Las estructuras para Modbus Plus, Ethernet TCP/IP y Ethernet SyMax se describen a continuacin.

Bloque de control de Modbus Plus

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Contenido Indica una operacin que es vlida para Modbus Plus indica el estado de error. Indica la longitud, es decir, el nmero de unidades de datos transferidas, (mx. 100) Indica la informacin dependiente de la operacin MSTR Registro de acceso 1: utilizado para especificar un asiento de destino durante la transferencia de red (direcciones de la ruta de acceso de uno a cinco). Byte de mayor valor: direccin de nodo de origen, es decir, la ranura del mdulo de opciones de red Modbus Plus (NOM). Cuando utilice el puerto Modbus Plus en la CPU, este byte deber establecerse en 0 (independientemente de la ranura de la CPU). Byte de menor valor: direccin de nodo de destino, es decir, un valor que representa una direccin directa o de puente. Si no hay puente, este valor contiene la direccin de asiento de destino. Si hay un puente, este valor contiene la direccin del puente. Si se inserta el NOM en la ranura 7 del bastidor de mdulos, el byte de mayor valor del registro de acceso 1 tiene el aspecto siguiente (valor 0x0706): Byte ms Byte menos significativo significativo
0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0

Byte de mayor valor Ranuras 1 16 Byte de menor valor Direccin de destino (valor binario entre 1 y 64 [normal] o 65 255 [ampliado]) CONTROL[6] Registro de acceso 2, la direccin de nodo de destino (mdulos puente o Modbus Plus ms lejanos). Si ha finalizado el direccionamiento en el registro de acceso anterior, el valor se establece en 0. Registro de acceso 3, similar al registro de acceso 2. Registro de acceso 4, similar al registro de acceso 2. Consulte el registro de acceso 2.
33002530 07 07/2008

CONTROL[7] CONTROL[8]

106

MBP_MSTR

Registro CONTROL[9]

Contenido Registro de acceso 5, similar al registro de acceso 2. Consulte el registro de acceso 2.

Bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Contenido Indica una operacin que es vlida para TCP/IP. indica el estado de error. Indica la longitud, es decir, el nmero de unidades de datos transferidas, (mx. 100) Indica la informacin dependiente de la operacin MSTR Registro de acceso: utilizado para especificar un asiento de destino durante la transferencia de red. Byte de mayor valor: direccin de asiento de origen, es decir, la ranura NOE para el mdulo NOE. Cuando utilice un Ethernet integrado en la CPU, este byte deber establecerse en 254 (FE hex) independientemente de la ranura de la CPU. Byte de menor valor: direccin de nodo de destino, es decir, un valor que representa una direccin directa o de puente. Si no hay puente, el valor en el byte de menor valor se establece en 0. Si hay un puente, este valor contiene el MBP para el ndice de mapping Ethernet (MET). Si se inserta el NOM en la ranura 7 del bastidor de mdulos, y el ndice de asignacin Ethernet (MET) es 6, el registro de acceso tiene el siguiente aspecto (valor 0x0706): Byte ms Byte menos significativo significativo
0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0

Byte de mayor valor Ranuras 1 16 Byte de menor valor ndice de mapping MET (transportador de MBP por Ethernet). CONTROL[6] CONTROL[7] CONTROL[8] CONTROL[9] Byte 4, MSB de la direccin IP de destino de 32 bits Byte 3 de la direccin IP de destino de 32 bits Byte 2 de la direccin IP de destino de 32 bits Byte 1, LSB de la direccin IP de destino de 32 bits

33002530 07 07/2008

107

MBP_MSTR

Bloque de control para Ethernet SY/MAX

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Contenido Indica una operacin que es vlida para SY/MAX. indica el estado de error. Indica la longitud, es decir, el nmero de registros transferidos, (mx. 100) Indica la informacin dependiente de la operacin MSTR Registro de acceso: utilizado para especificar un asiento de destino durante la transferencia de red. Byte de mayor valor: direccin de asiento de origen, es decir, la ranura NOE para el mdulo NOE. Byte de menor valor: direccin de nodo de destino, es decir, un valor que representa una direccin directa o de puente. Si no hay puente, el valor en el byte de menor valor se establece en 0. Si hay un puente, este valor contiene el MBP para el ndice de mapping Ethernet (MET). Si se inserta el NOM en la ranura 7 del bastidor de mdulos, y el ndice de mapping Ethernet (MET) es 6, el registro de acceso tiene el siguiente aspecto (valor 0x0706): Byte ms Byte menos significativo significativo
0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0

Byte de mayor valor Ranuras 1 16 Byte de menor valor ndice de mapping MET (transportador de MBP por Ethernet). CONTROL[6] CONTROL[7] Nmero de estacin de destino (o establecido en FF hex) Terminador (establecido en FF hex)

108

33002530 07 07/2008

MBP_MSTR

Leer datos
Significado Una operacin de lectura transfiere datos de un dispositivo origen esclavo especificado a un dispositivo maestro de destino en la red. Utiliza una ruta de transacciones de maestro y puede que necesite varios ciclos para completarse. Para programar un bloque MBP_MSTR para que realice una operacin de escritura, utilice el cdigo de funcin 1 (vase Cdigos de funcin de operacin, p. 105). Nota: No intente programar un MBP_MSTR para leer su propia direccin de estacin. Esta accin hace que el bloque de funciones genere un error en el registro CONTROL[2] del bloque de control (vase Estructuras de bloque de control de red, p. 106). Se puede realizar una operacin de lectura en un registro esclavo no existente. El esclavo detecta el estado y lo registra. Esto puede durar varios ciclos.

Implantacin de red Uso del bloque de control de Modbus Plus

La operacin de lectura puede realizarse en las redes Modbus Plus, Ethernet TCP/ IP y Ethernet SY/MAX.

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] ... CONTROL[9]

Significado 2 = leer datos Indica el estado de error Cantidad de registros que se debe leer del esclavo Determina el registro de inicio %MW en el esclavo del que se leen los datos, por ejemplo, 1 = %MW1, 49 = %MW49 Registro de acceso 1 se utiliza para especificar la direccin (direccin de ruta de acceso de 1 a 5) del nodo durante una transferencia de red. El ltimo byte de la ruta de acceso que no es 0 es el nodo de destino.

33002530 07 07/2008

109

MBP_MSTR

Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 2 = leer datos Indica el estado de error Cantidad de direcciones que se debe leer del esclavo Determina el registro de inicio %MW en el esclavo del que se leen los datos, por ejemplo, 1 = %MW1, 49 = %MW49 Registro de acceso: Byte de mayor valor: ranura de mdulo adaptador de red Byte de menor valor: ndice de mapping MET (transportador de MBP por Ethernet). Cada direccin contiene un byte de la direccin IP de 32 bits, donde MSB est en CONTROL[6] y LSB en CONTROL[9].

CONTROL[6] ... CONTROL[9]

Uso del bloque de control para Ethernet SY/MAX

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 2 = leer datos Indica el estado de error Cantidad de direcciones que se debe leer del esclavo Determina el registro de inicio %MW en el esclavo en el que se escriben los datos, por ejemplo, 1 = %MW1, 49 = %MW49 Registro de acceso Byte de mayor valor: ranura de mdulo adaptador de red Byte de menor valor: nmero de estacin de destino Terminador: FF hex

CONTROL[6] ... CONTROL[9]

110

33002530 07 07/2008

MBP_MSTR

Escribir datos
Significado Una operacin de escritura transfiere datos de un dispositivo maestro de origen a un dispositivo esclavo de destino especificado en la red. Utiliza una ruta de transacciones de maestro y puede que necesite varios ciclos para completarse. Para programar un bloque MBP_MSTR para realizar una operacin de escritura, utilice el cdigo de funcin 2 (vase Cdigos de funcin de operacin, p. 105). Nota: No intente programar un MBP_MSTR para escribir su propia direccin de estacin. Esta accin hace que el bloque de funciones genere un error en el registro CONTROL[2] del bloque de control (vase Estructuras de bloque de control de red, p. 106). Se puede realizar una operacin de escritura en un registro esclavo no existente. El esclavo detecta el estado y lo registra. Esto puede durar varios ciclos.

Implantacin de red Uso del bloque de control de Modbus Plus

La operacin de escritura puede realizarse en las redes Modbus Plus, Ethernet TCP/IP y Ethernet SY/MAX.

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] ... CONTROL[9]

Significado 1 = escribir datos Indica el estado de error. Cantidad de direcciones enviadas al esclavo Determina el registro de inicio %MW en el esclavo en el que se escriben los datos, por ejemplo, 1 = %MW1, 49 = %MW49. Registro de acceso 1 se utiliza para especificar la direccin (direccin de ruta de acceso de 1 a 5) del nodo durante una transferencia de red. El ltimo byte de la ruta de acceso que no es 0 es el nodo de destino.

33002530 07 07/2008

111

MBP_MSTR

Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 1 = escribir datos Indica el estado de error. Cantidad de direcciones enviadas al esclavo Determina la direccin de inicio CONTROL[ ] del esclavo en el que se escriben los datos. Registro de acceso Byte de mayor valor: ranura de mdulo adaptador de red Byte de menor valor: ndice de mapping MET (transportador de MBP por Ethernet). Cada direccin contiene un byte de la direccin IP de 32 bits

CONTROL[6] ... CONTROL[7]

Uso del bloque de control para Ethernet SY/MAX

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 1 = escribir datos Indica el estado de error. Cantidad de direcciones enviadas al esclavo Determina el registro de inicio %MW en el esclavo en el que se escriben los datos, por ejemplo, 1 = %MW1, 49 = %MW49. Registro de acceso Byte de mayor valor: ranura de mdulo adaptador de red Byte de menor valor: nmero de estacin de destino Terminador: FF hex

CONTROL[6] ... CONTROL[9]

112

33002530 07 07/2008

MBP_MSTR

Obtencin de estadsticas locales


Significado Una operacin de obtencin de histricos locales lee los datos del asiento local en un ciclo y no necesita un ruta de transaccin de maestro. Para programar un bloque MBP_MSTR con la intencin de obtener histricos locales, utilice el cdigo de funcin 3 (vase Cdigos de funcin de operacin, p. 105). La operacin de obtencin de estadsticas locales puede realizarse en redes Modbus Plus y Ethernet TCP/IP (vase Estadsticas de red de Ethernet TCP/IP., p. 136).

Implantacin de red

Uso del bloque de control de Modbus Plus

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 3 = leer estadsticas locales indica el estado de error. Cantidad de direcciones que se debe leer de las estadsticas locales (0 53) Primera direccin desde la que se debe leer la tabla de estadsticas (Reg1=0) Registro de acceso 1 se utiliza para especificar la direccin (direccin de ruta de acceso de 1 a 5) del nodo durante una transferencia de red. El ltimo byte de la ruta de acceso que no es 0 es el nodo de destino.

Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] CONTROL[6] ... CONTROL[9]

Significado 3 = leer estadsticas locales indica el estado de error. Cantidad de direcciones que se debe leer de las estadsticas locales (0 37) Primera direccin desde la que se debe leer la tabla de estadsticas (Reg1=0) Registro de acceso Byte de mayor valor: ranura de mdulo adaptador de red No utilizado

33002530 07 07/2008

113

MBP_MSTR

Eliminacin de estadsticas locales


Significado Una operacin de eliminacin de estadsticas locales borra los valores de las palabras 13 - 22 en la tabla de estadsticas del nodo local. La operacin se realiza en un ciclo y no necesita una ruta de transaccin de maestro. Para programar un bloque MBP_MSTR para eliminar histricos locales, utilice el cdigo de funcin 4 (vase Cdigos de funcin de operacin, p. 105). La operacin de eliminacin de estadsticas locales puede realizarse en redes Modbus Plus y Ethernet TCP/IP (vase Estadsticas de red de Ethernet TCP/IP., p. 136).

Implantacin de red

Uso del bloque de control de Modbus Plus

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 4 = eliminar estadsticas locales Indica el estado de error. Reservado Reservado Registro de acceso 1 se utiliza para especificar la direccin (direccin de ruta de acceso de 1 a 5) del nodo durante una transferencia de red. El ltimo byte de la ruta de acceso que no es 0 es el nodo de destino.

Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] CONTROL[6] ... CONTROL[9]

Significado 4 = eliminar estadsticas locales Indica el estado de error. Reservado Reservado Registro de acceso Byte de mayor valor: ranura de mdulo adaptador de red Reservado

114

33002530 07 07/2008

MBP_MSTR

Escritura de datos globales


Significado Una operacin de escritura de datos globales transfiere datos al procesador de comunicaciones del nodo actual; los datos pueden transmitirse por la red tan pronto como el nodo recibe el token y, a continuacin, los leen todos los nodos conectados a la red local (vase Lectura de datos globales, p. 116). Una operacin de escritura de datos globales se realiza en un ciclo y no necesita una ruta de transaccin de maestro. Para programar un bloque MBP_MSTR para escribir datos globales, utilice el cdigo de funcin 5 (vase Cdigos de funcin de operacin, p. 105). Implantacin de red Una operacin de escritura de datos globales slo puede realizarse en redes Modbus Plus. Las operaciones de lectura y escritura de datos globales comprenden una funcin de Modbus Plus conocida como Peer Cop.

Uso del bloque de control de Modbus Plus

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 5 = escribir datos globales Indica el estado de error. Nmero de direcciones que se van a escribir de la memoria de seal en la memoria de datos globales (procesador de comandos) (1 32) Reservado Si se envan datos globales a travs de un NOM, introduzca la ranura de mdulo NOM en el byte de mayor valor de este registro.

33002530 07 07/2008

115

MBP_MSTR

Lectura de datos globales


Significado Una operacin de lectura de datos globales lee datos del procesador de comunicaciones de un nodo de la red que presenta datos globales escritos (vase Escritura de datos globales, p. 115). No se necesita una ruta de transacciones de maestro. Una operacin de lectura de datos globales puede llevar varios ciclos si los datos globales no estn disponibles actualmente con los asientos activados. Si los datos globales estn disponibles, la operacin se ejecuta en un ciclo. Para programar un bloque MBP_MSTR para escribir datos globales, utilice el cdigo de funcin 6 (vase Cdigos de funcin de operacin, p. 105). Implantacin de red Una operacin de lectura de datos globales slo puede realizarse en redes Modbus Plus. Las operaciones de lectura y escritura de datos globales comprenden una funcin de Modbus Plus conocida como Peer Cop.

Uso del bloque de control de Modbus Plus

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 6 = leer datos globales Indica el estado de error. Nmero de direcciones que se van a enviar desde la memoria de datos globales (procesador de comandos) (1 32) Muestra las direcciones disponibles en el asiento explorado. (Este registro se actualiza automticamente.) El byte de menor valor contiene la direccin del asiento cuyos datos globales van a leerse. Puede ser un valor en el rango 1 64. Si se reciben datos globales a travs de un NOM, introduzca la ranura de mdulo NOM en el byte de mayor valor de esta direccin.

116

33002530 07 07/2008

MBP_MSTR

Obtener estadsticas remotas


Significado
Una operacin de obtencin de estadsticas remotas puede utilizarse para leer datos de asientos remotos de la red. Con cada consulta, el procesador de comunicaciones remoto proporciona una tabla completa de estadsticas, aunque la consulta no haga referencia a toda la tabla. Entonces, slo copia las palabras consultadas en direcciones $MW identificadas. Una operacin puede llevar varios ciclos para completarse; no necesita una ruta de transaccin de maestro. Para programar un bloque MBP_MSTR para obtener histricos remotos, utilice el cdigo de funcin 7 (vase Cdigos de funcin de operacin, p. 105).

Implantacin de red Uso del bloque de control de Modbus Plus

La operacin de obtencin de estadsticas remotas puede realizarse en redes Modbus Plus y Ethernet TCP/IP.

Registro

Significado

CONTROL[1] 7 = obtener estadsticas remotas CONTROL[2] Indica el estado de error CONTROL[3] Nmero de direcciones que se van a leer del campo de datos de estadsticas (0 53). El tamao del campo de datos no puede superar 53. CONTROL[4] Primera direccin desde la que se deben leer los histricos de asiento. El nmero de registros de histricos disponible no se puede superar. CONTROL[5] Direccin de acceso 1 - 5 del nodo. El ltimo byte de la ruta de acceso que no es 0 es el asiento de destino. ... CONTROL[9]

Uso del bloque de control para Ethernet TCP/IP

Registro

Significado

CONTROL[1] 7 = obtener estadsticas remotas CONTROL[2] Indica el estado de error. CONTROL[3] Nmero de direcciones que se van a leer del campo de datos de estadsticas (0 37). El tamao del campo de datos no puede superar 37. CONTROL[4] Primera direccin desde la que se deben leer los histricos de asiento. El nmero de registros de estadsticas disponible no se puede superar. CONTROL[5] Registro de acceso Byte de mayor valor: ranura de mdulo adaptador de red CONTROL[6] Cada direccin contiene un byte de la direccin IP de 32 bits, donde el valor ... de CONTROL[6] es el MSB y el valor de CONTROL[9] es el LSB. CONTROL[9]

33002530 07 07/2008

117

MBP_MSTR

Borrar estadsticas remotas


Significado Una operacin de eliminacin de las estadsticas remotas elimina los valores de los nodos remotos de las palabras 13 22 en la tabla de estadsticas del nodo local. Utiliza una ruta de transacciones de maestro y puede que necesite varios ciclos para completarse. Para programar un bloque MBP_MSTR para realizar una operacin de eliminacin de estadsticas remotas, utilice el cdigo de funcin 8 (vase Cdigos de funcin de operacin, p. 105). La operacin de eliminacin de estadsticas remotas puede realizarse en redes Modbus Plus y Ethernet TCP/IP (vase Estadsticas de red de Ethernet TCP/IP., p. 136).

Implantacin de red

Uso del bloque de control de Modbus Plus

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] ... CONTROL[9]

Significado 8 = eliminar estadsticas remotas Indica el estado de error Reservado Reservado Registro de acceso 1 se utiliza para especificar la direccin (direccin de ruta de acceso de 1 a 5) del nodo de destino durante una transferencia de red. El ltimo byte de la ruta de acceso que no es 0 es el nodo de destino.

Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] CONTROL[6] ... CONTROL[9]

Significado 8 = eliminar estadsticas remotas Indica el estado de error Reservado Reservado Registro de acceso Byte de mayor valor: ranura de mdulo adaptador de red Cada direccin contiene un byte de la direccin IP de 32 bits, donde MSB est en CONTROL[6] y LSB en CONTROL[9].

118

33002530 07 07/2008

MBP_MSTR

Funcionamiento de Peer Cop


Significado Una operacin de estado funcional de Peer Cop lee datos seleccionados de la tabla de estado funcional de comunicaciones de Peer Cop y descarga los datos a las direcciones %MW especificadas en la memoria de seal. Para programar un bloque MBP_MSTR para realizar una operacin de eliminacin de histricos remotos, utilice el cdigo de funcin 9 (vase Cdigos de funcin de operacin, p. 105). Nota: El estado funcional de Peer Cop slo est operativo cuando se ha configurado un explorador de E/S basado en Peer Cop. La tabla de estado funcional de comunicaciones de Peer Cop tiene una longitud de 12 palabras; MBP_MSTR indexa estas palabras con los nmeros 0 11. Implantacin de red Uso del bloque de control de Modbus Plus Una operacin de estado funcional de Peer Cop slo puede realizarse en redes Modbus Plus.

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 9 = funcionamiento de Peer Cop indica el estado de error. Nmero de palabras solicitadas por la tabla Peer Cop (1 12) Primera palabra que se va a leer de la tabla de Peer Cop, donde 0 = la primera palabra y 11 = la ltima palabra Direccin de acceso 1 Si ste es el segundo de dos asientos locales, establezca el valor del byte alto en 1.

33002530 07 07/2008

119

MBP_MSTR

Restablecimiento de mdulos opcionales


Significado Una operacin de restablecimiento de mdulos opcionales hace que un mdulo de comunicaciones Quantum NOE Ethernet o el puerto Ethernet de un mdulo de CPU 140CPU65150/60 CPU introduzca un ciclo que restablece su entorno de trabajo. Para programar un bloque MBP_MSTR con el fin de realizar una operacin de restablecimiento de mdulos opcionales, utilice el cdigo de funcin 10 (vase Cdigos de funcin de operacin, p. 105). La operacin de restablecimiento de mdulos opcionales puede realizarse en las redes Ethernet TCP/IP (vase Estadsticas de red de Ethernet TCP/IP., p. 136) y Ethernet SY/MAX.

Implantacin de red

Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 10 = restablecer mdulos opcionales indica el estado de error. Sin significado Sin significado Registro de acceso El valor mostrado en el byte alto del rea 1 16 indica la ranura del plano posterior de Quantum en la que se ubica el mdulo NOE. Sin significado

CONTROL[6] ... CONTROL[9]

Uso del bloque de control para Ethernet SY/MAX (CONTROL)

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] CONTROL[6] ... CONTROL[9]

Significado 10 = restablecer mdulos opcionales indica el estado de error. Sin significado Sin significado Registro de acceso MSB: ranura de mdulo adaptador de red Sin significado

120

33002530 07 07/2008

MBP_MSTR

Lectura de CTE
Significado
Una operacin de lectura de CTE lee un nmero especificado de bytes de la tabla de ampliacin de configuracin Ethernet en el bfer especificado de la memoria del PLC. Los bytes que se van a leer comienzan por un offset de byte al principio de la tabla CTE. El contenido de la tabla CTE se muestra en el parmetro de salida DATABUF . (vase Parmetros de entrada, p. 103)Para programar un bloque MBP_MSTR para realizar una operacin de eliminacin de estadsticas remotas, utilice el cdigo de funcin 11 (vase Cdigos de funcin de operacin, p. 105). Una operacin de lectura CTE puede realizarse en redes Ethernet TCP/IP y Ethernet SY/MAX.

Implantacin de red Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado
11 = leer CTE indica el estado de error. El ajuste de la longitud: un valor entre 12 y 37. Sin significado Registro de acceso Byte de menor valor = ndice de asignacin Un valor mostrado en el byte del registro o no utilizado. byte de mayor valor = ranura de mdulo adaptador de red El nmero mostrado en el byte de menor valor en el rea 116 indica la ranura en la que se ubica el mdulo opcional.

CONTROL[6] ... CONTROL[9]

Uso del bloque de control para Ethernet SY/MAX

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5] CONTROL[6] ... CONTROL[9]

Significado
11 = leer CTE indica el estado de error. Nmero de palabras transferidas. Offset de byte en la estructura de registro de PLC, que especifica dnde se van a leer los bytes CTE. Registro de acceso MSB: ranura del mdulo NOE

Terminador: FF hex.

33002530 07 07/2008

121

MBP_MSTR

Implantacin del indicador CTE (DATABUF)

Los valores de la tabla CTE se muestran en la salida DATABUF cuando se implementa una operacin de lectura de CTE. Los registros muestran los datos CTE siguientes: Implantacin del indicador CTE (DATABUF):
Parmetro Tipo de trama Direccin IP Registro DATABUF[0] DATABUF[1] DATABUF[2] DATABUF[3] DATABUF[4] Mscara de red inferior Pasarela DATABUF[5] DATABUF[6] DATABUF[7] DATABUF[8] DATABUF[9] DATABUF[10] Contenido 1 = 802.3 2 = Ethernet Primer byte de la direccin IP Segundo byte de la direccin IP Tercer byte de la direccin IP Cuarto byte de la direccin IP Palabra de mayor valor Palabra de menor valor Primer byte de la pasarela Segundo byte de la pasarela Tercer byte de la pasarela Cuarto byte de la pasarela

Escritura de CTE
Significado Una operacin de escritura de CTE escribe la tabla de configuracin CTE de los datos especificados (DATABUF) en una tabla de ampliacin de configuracin Ethernet especificada o una ranura especfica. Para programar un bloque MBP_MSTR con el fin de realizar una operacin de escritura CTE, utilice el cdigo de funcin 12 (vase Cdigos de funcin de operacin, p. 105). Una operacin de escritura CTE puede realizarse en redes Ethernet TCP/IP (vase Estadsticas de red de Ethernet TCP/IP., p. 136) y Ethernet SY/MAX.

Implantacin de red Uso del bloque de control para Ethernet TCP/IP

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4]

Significado 12 = escribir CTE indica el estado de error. El ajuste de la longitud: un valor entre 12 y 37. Sin significado

122

33002530 07 07/2008

MBP_MSTR

Registro CONTROL[5]

Significado Registro de acceso Byte de menor valor = ndice de asignacin Un valor mostrado en el byte de la direccin o no utilizado. byte de mayor valor = ranura de mdulo adaptador de red El nmero mostrado en el byte de menor valor en el rea 116 indica la ranura en la que se ubica el mdulo opcional.

CONTROL[6] ... CONTROL[9]

Uso del bloque de control para Ethernet SY/MAX

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 12 = escribir CTE (tabla de ampliacin de configuracin) indica el estado de error. Nmero de palabras transferidas. Offset de byte en la estructura de direccin de PLC, que especifica dnde se van a escribir los bytes CTE. Registro de acceso Bit de mayor valor = ranura de mdulo NOE Byte de menor valor = nmero de estacin de destino Terminador: FF hex. Sin significado

CONTROL[6] CONTROL[7] ... CONTROL[9]

Implantacin del indicador CTE (DATABUF)

Los valores de la tabla de ampliacin de configuracin Ethernet se muestran en el campo de salida DATABUF cuando se implementa una operacin de escritura de CTE. Los registros se utilizan para transferir los datos CTE siguientes: Implantacin del indicador CTE (DATABUF):
Parmetro Tipo de trama Direccin IP Registro DATABUF[0] DATABUF[1] DATABUF[2] DATABUF[3] DATABUF[4] Contenido 1 = 802.3 2 = Ethernet Primer byte de la direccin IP Segundo byte de la direccin IP Tercer byte de la direccin IP Cuarto byte de la direccin IP

33002530 07 07/2008

123

MBP_MSTR

Parmetro Mscara de red inferior Pasarela

Registro DATABUF[5] DATABUF[6] DATABUF[7] DATABUF[8] DATABUF[9] DATABUF[10]

Contenido Palabra de mayor valor Palabra de menor valor Primer byte de la pasarela Segundo byte de la pasarela Tercer byte de la pasarela Cuarto byte de la pasarela

124

33002530 07 07/2008

MBP_MSTR

Envo de correo electrnico


Descripcin El servicio de notificacin por correo electrnico permite que los proyectos basados en controladores informen de alarmas o eventos. El controlador supervisa el sistema y crea dinmicamente un mensaje de correo electrnico que avisa a los usuarios locales o remotos. Un evento o condicin definidos por el usuario accionan el bloque MSTR para crear un mensaje. Cada mensaje utiliza uno de los tres encabezamientos definidos por el usuario. Cada mensaje enviado por el controlador puede contener texto e informacin variable (con un mximo de 238 bytes). El proyecto selecciona el encabezamiento adecuado. Cada encabezamiento contiene: Nombre del remitente Lista de destinatarios Asunto Para programar un bloque MBP_MSTR para enviar correo electrnico, utilice el cdigo de funcin 13 (vase Cdigos de funcin MBP_MSTR vlidos, p. 105). Implantacin de red Uso del bloque de control para Ethernet TCP/IP Se puede realizar una operacin de envo de correo electrnico a travs de una red Ethernet TCP/IP.

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Significado 13 = enviar correo electrnico Indica los cdigos de error especficos de correo electrnico (vase Cdigos de error del servicio de correo, p. 149). Nmero de palabras transferidas. Sin utilizar Byte de mayor valor: direccin de ranura del mdulo NOE o 0xFE para 140 CPU 651 60. Byte de menor valor: siempre 0

CONTROL[6] ... CONTROL[9]

Sin utilizar

33002530 07 07/2008

125

MBP_MSTR

Descripcin del parmetro DATABUF

Registro DATABUF 1

Contenido El encabezado del correo es el byte de menor valor con un valor de 1, 2 3. El byte de mayor valor contiene el nmero (n) de caracteres en el asunto; un valor entre 0 y 238.

DATABUF 2 ... DATABUF 119

Los datos (en formato ASCII) que se copiarn en el mensaje de correo electrnico. Los primeros n caracteres se agregarn al asunto del correo electrnico configurado. Los caracteres restantes (2 * N -2 - n) son parte del cuerpo del mensaje, donde N es el nmero de palabras transferidas.

126

33002530 07 07/2008

MBP_MSTR

Leer/escribir datos
Introduccin En una nica transaccin, las operaciones de lectura y escritura de MSTR pueden transferir datos desde un dispositivo maestro de origen a un dispositivo esclavo de destino especificado y, a continuacin, transferir datos desde ese esclavo de origen especificado al maestro. Utiliza una ruta de transacciones de maestro y puede que necesite varios ciclos para completarse. Para programar un bloque MBP_MSTR con el fin de realizar una operacin de lectura/escritura combinada, utilice el cdigo de funcin 23 (vase Cdigos de funcin de operacin, p. 105). La operacin de lectura/escritura combinada slo puede utilizarse con estos dos modelos Quantum: NOE 771 01 (versin 2.0 y posteriores) NOE 771 11 (versin 2.0 y posteriores) CPU 651 50 (con puerto Ethernet incorporado) CPU 651 60 (con puerto Ethernet incorporado) CPU 652 60 (con puerto Ethernet incorporado) Uso del bloque de control

Registro CONTROL[1] CONTROL[2] CONTROL[3] CONTROL[4] CONTROL[5]

Contenido 23 = datos de lectura/escritura. Indica el estado de error. Nmero de direcciones que se van a leer del esclavo y se van a escribir en el maestro. Determina el registro de inicio %MW en el esclavo del que se leen los datos, por ejemplo, 1 = %MW1, 49 = %MW49). Registro de acceso: Byte de mayor valor: ranura de mdulo adaptador de red Byte de menor valor: ndice de mapping MET (transportador de MBP por Ethernet). Cada direccin contiene un byte de la direccin IP de 32 bits, donde MSB est en CONTROL[6] y LSB en CONTROL[9]. Nmero de registros que se van a leer del esclavo Especifica la primera palabra %MW del esclavo de destino en el que se van a leer los datos.

CONTROL[6] ... CONTROL[9] CONTROL[10] CONTROL[11]

33002530 07 07/2008

127

MBP_MSTR

Estado de funcionamiento de las comunicaciones Peer Cop


Estado de funcionamiento de las comunicaciones Peer Cop La tabla que contiene la informacin de estado de Peer Cop completa 12 registros contiguos indexados con los nmeros 0 11 en una operacin MBP_MSTR. Cada bit individual de las palabras de la tabla se utiliza para presentar un aspecto del funcionamiento de las comunicaciones para un asiento especfico de la red Modbus Plus. Para programar un bloque MBP_MSTR con el fin de obtener el estado de funcionamiento de Peer Cop, utilice el cdigo de funcin 9 (vase Cdigos de funcin de operacin, p. 105).

Implantacin de red Relacin de bits del asiento de red

Una operacin de estado de funcionamiento de las comunicaciones Peer Cop slo puede realizarse en redes Modbus Plus. Los bits de las palabras 0 3 representa el funcionamiento en la entrada de comunicaciones globales de los asientos 1 64. Los bits de las palabras 4 7 representan el funcionamiento de la salida de un asiento especfico.
Los bits en las palabras 8 11 representan el funcionamiento de la entrada de un asiento especfico. Tipo de estado Recepcin global ndice de palabra 0 1 2 3 Envo directo 4 5 6 7 Relacin de bits del asiento de red
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1

32

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

48

47

46

45

44

43

42

41

40

39

38

37

36

35

34

33

64

63

62

61

60

59

58

57

56

55

54

53

52

51

50

49

16

15

14

13

12

11

10

32

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

48

47

46

45

44

43

42

41

40

39

38

37

36

35

34

33

64

63

62

61

60

59

58

57

56

55

54

53

52

51

50

49

128

33002530 07 07/2008

MBP_MSTR

Tipo de estado Recepcin directa

ndice de palabra 8 9 10 11

Relacin de bits del asiento de red


16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1

32

31

30

29

28

27

26

25

24

23

22

21

20

19

18

17

48

47

46

45

44

43

42

41

40

39

38

37

36

35

34

33

64

63

62

61

60

59

58

57

56

55

54

53

52

51

50

49

Estado del bit de estado funcional

El estado del bit de estado funcional de Peer Cop indica el estado actual de las comunicaciones del asiento asignado. Un bit de estado funcional se establece cuando el asiento asociado acepta la entrada de su bloque de datos Peer Cop o cuando recibe una seal de que otro asiento ha aceptado los datos de salida especficos de su bloque de datos de salida de Peer Cop. Se eliminar un bit de estado funcional si el bloque de datos asociado no acepta ninguna comunicacin en el periodo de timeout de funcionamiento de Peer Cop configurado. Todos los bits de estado funcional se eliminan cuando el comando de interfaz Aplicar Peer Cop se ejecuta durante el arranque del PLC. Los valores de la tabla pasan a ser vlidos cuando el token se ha omitido por completo, una vez realizado el comando Aplicar Peer Cop. El bit de estado funcional de un asiento especfico siempre es 0 cuando la entrada de Peer Cop asignada es 0.

33002530 07 07/2008

129

MBP_MSTR

Estadsticas de red Modbus Plus


Estadsticas de red Modbus Plus La tabla siguiente muestra las estadsticas disponibles en Modbus Plus. Puede obtener estos datos si ejecuta la operacin MBP_MSTR correspondiente (cdigo de funcin 8 de Modbus). Nota: Si modifica la operacin eliminar estadsticas locales (vase Eliminacin de estadsticas locales, p. 114) o eliminar estadsticas remotas (vase Borrar estadsticas remotas, p. 118), slo se eliminarn las palabras 13 22 de la tabla de estadsticas.

Palabra 00

Bits

Descripcin

ID de tipo de asiento 0 1 2 3 4 5 6 ... 15 Tipo de asiento desconocido Asiento PLC Asiento puente Modbus Asiento host Asiento Bridge Plus Asiento E/S Peer Reservado Nmero de versin de software como valor hexadecimal (para leerlo, se deben aislar los bits 12 15 de la palabra) Reservado Define contadores de errores desde la palabra 15. El bit de mayor valor define el uso de contadores de error en la palabra 15. La mitad de menor valor del byte de mayor valor junto con el byte de menor valor contiene la versin de software.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

01

0 11 12 14 15

Nmero de versin de software (en valores hexadecimales) Contador de errores de la palabra 15 (consulte la palabra 15) 02 Direccin de red de esta estacin

130

33002530 07 07/2008

MBP_MSTR

Palabra 03

Bits

Descripcin

Variable de estado MAC: 0 1 2 3 4 5 6 7 8 9 10 Estado de arranque Seales del indicador de estado fuera de lnea Estado fuera de lnea duplicado Estado inactivo Estado de utilizacin del token Estado de respuesta de trabajo Estado de transferencia del token Estado de peticin de respuesta Comprobacin de estado de transferencia Estado de peticin del token Estado de peticin de respuesta

04

El estado de Peer (cdigo LED); indica el estado de este dispositivo respecto a la red: 0 32 64 96 128 Operacin de conexin de control Operacin de conexin normal Nunca recibe token Estacin nica Estacin duplicada

05 06 07

Contador de transferencias de token; aumenta cada vez que esta estacin recibe un token Tiempo de ciclo de token en ms LOW HIGH Error del maestro de datos de representacin de bit durante la posesin del token Error del maestro de programa (mapa de bits) de representacin de bit durante la posesin del token Posesin del token de actividad de mapa de bits del maestro de datos Posesin del token de actividad de mapa de bits del maestro de programa Posesin del token de actividad de mapa de bits del esclavo de datos Posesin del token de actividad de mapa de bits del esclavo de programa

08

LOW HIGH

09

LOW HIGH

10

LOW HIGH Lectura de dotacin de esclavo/esclavo de datos de comando de peticin de transferencia de mapa de bits

33002530 07 07/2008

131

MBP_MSTR

Palabra 11

Bits LOW HIGH

Descripcin Lectura de dotacin del maestro/maestro de programa de peticin de transferencia de respuesta de mapa de bits Lectura de dotacin de esclavo/esclavo de programa de comando de peticin de transferencia de mapa de bits Estado de conexin del mapa de bits del maestro de programa Cierre de sesin automtico de mapa de bits del esclavo de programa Contador de errores de retardo de pretransferencia Contador de errores de desborde de DMA del bfer de recepcin Comando de repeticin de contador recibido Tamao del bloque de datos de contador de errores

12

LOW HIGH

13

LOW HIGH

14

LOW HIGH

15

Si el bit 15 de la palabra 1 no se ha definido, la palabra 15 tiene el significado siguiente: LOW HIGH Cancelacin de la colisin del receptor del contador de errores Alineacin del receptor del contador de errores

Si el bit 15 de la palabra 1 se ha establecido, la palabra 15 tiene el significado siguiente: LOW HIGH 16 LOW HIGH 17 LOW HIGH 18 LOW HIGH 19 LOW HIGH 20 LOW HIGH 21 LOW HIGH 22 LOW HIGH 23 LOW HIGH Error de bloque de datos en el cable A Error de bloque de datos en el cable B Receptor CRC de contador de errores Longitud de paquete incorrecta del contador de errores Direccin de conexin incorrecta del contador de errores Almacenamiento en bfer de transferencia con transgresin por debajo de rango DMA de contador de errores Longitud de paquete interno incorrecta del contador de errores Cdigo de funcin MAC incorrecta del contador de errores Contador de reintentos de comunicacin Error de comunicaciones del contador de errores Recepcin de paquete de contador realizada con xito Sin recepcin de respuesta del contador de errores Recepcin inesperada de respuesta del contador de errores Ruta inesperada de contador de errores Respuesta inesperada del contador de errores Transaccin omitida del contador de errores Tabla de estaciones activas de mapa de bits, asientos 1 8 Tabla de estaciones activas de mapa de bits, asientos 9 16

132

33002530 07 07/2008

MBP_MSTR

Palabra 24

Bits LOW HIGH

Descripcin Tabla de estaciones activas de mapa de bits, asientos 17 24 Tabla de estaciones activas de mapa de bits, asientos 25 32 Tabla de estaciones activas de mapa de bits, asientos 33 40 Tabla de estaciones activas de mapa de bits, asientos 41 48 Tabla de estaciones activas de mapa de bits, asientos 49 56 Tabla de estaciones activas de mapa de bits, asientos 57 64 Tabla de estaciones de token de mapa de bits, asientos 1 8 Tabla de estaciones de token de mapa de bits, asientos 9 16 Tabla de estaciones de token de mapa de bits, asientos 17 24 Tabla de estaciones de token de mapa de bits, asientos 25 32 Tabla de estaciones de token de mapa de bits, asientos 33 40 Tabla de estaciones de token de mapa de bits, asientos 41 48 Tabla de estaciones de token de mapa de bits, asientos 49 56 Tabla de estaciones de token de mapa de bits, asientos 57 64 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 1 8 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 9 16 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 17 24 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 25 32 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 33 40 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 41 48 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 49 56 Tabla de mapa de bits respecto a la existencia de datos globales, asientos 57 64 Bfer de recepcin de mapa de bits utilizado, bferes 1 8 Bfer de recepcin de mapa de bits utilizado, bferes 9 16 Bfer de recepcin de mapa de bits utilizado, bferes 17 24 Bfer de recepcin de mapa de bits utilizado, bferes 25 32

25

LOW HIGH

26

LOW HIGH

27

LOW HIGH

28

LOW HIGH

29

LOW HIGH

30

LOW HIGH

31

LOW HIGH

32

LOW HIGH

33

LOW HIGH

34

LOW HIGH

35

LOW HIGH

36

LOW HIGH

33002530 07 07/2008

133

MBP_MSTR

Palabra 37

Bits LOW HIGH

Descripcin Bfer de recepcin de mapa de bits utilizado, bferes 33 40 Contador de comandos procesados activados para la administracin de estaciones Ruta 1 de salida del comando de activacin de contador del maestro de datos Ruta 2 de salida del comando de activacin de contador del maestro de datos Ruta 3 de salida del comando de activacin de contador del maestro de datos Ruta 4 de salida del comando de activacin de contador del maestro de datos Ruta 5 de salida del comando de activacin de contador del maestro de datos Ruta 6 de salida del comando de activacin de contador del maestro de datos Ruta 7 de salida del comando de activacin de contador del maestro de datos Ruta 8 de salida del comando de activacin de contador del maestro de datos Ruta 41 de entrada de procesamiento de comando de contador del esclavo de datos Ruta 42 de entrada de procesamiento de comando de contador del esclavo de datos Ruta 43 de entrada de procesamiento de comando de contador del esclavo de datos Ruta 44 de entrada de procesamiento de comando de contador del esclavo de datos Ruta 45 de entrada de procesamiento de comando de contador del esclavo de datos Ruta 46 de entrada de procesamiento de comando de contador del esclavo de datos Ruta 47 de entrada de procesamiento de comando de contador del esclavo de datos Ruta 48 de entrada de procesamiento de comando de contador del esclavo de datos

38

LOW HIGH

39

LOW HIGH

40

LOW HIGH

41

LOW HIGH

42

LOW HIGH

43

LOW HIGH

44

LOW HIGH

45

LOW HIGH

134

33002530 07 07/2008

MBP_MSTR

Palabra 46

Bits LOW HIGH

Descripcin Ruta 81 de salida de activacin de comando de contador del maestro de programas Ruta 82 de salida de activacin de comando de contador del maestro de programas Ruta 83 de salida de activacin de comando de contador del maestro de programas Ruta 84 de salida de activacin de comando de contador del maestro de programas Ruta 85 de salida de activacin de comando de contador del maestro de programas Ruta 86 de salida de activacin de comando de contador del maestro de programas Ruta 87 de salida de activacin de comando de contador del maestro de programas Ruta 88 de salida de activacin de comando de contador del maestro de programas Ruta C1 de entrada de procesamiento de comando de contador del esclavo de programa Ruta C2 de entrada de procesamiento de comando de contador del esclavo de programa Ruta C3 de entrada de procesamiento de comando de contador del esclavo de programa Ruta C4 de entrada de procesamiento de comando de contador del esclavo de programa Ruta C5 de entrada de procesamiento de comando de contador del esclavo de programa Ruta C6 de entrada de procesamiento de comando de contador del esclavo de programa Ruta C7 de entrada de procesamiento de comando de contador del esclavo de programa

47

LOW HIGH

48

LOW HIGH

49

LOW HIGH

50

LOW HIGH

51

LOW HIGH

52

LOW HIGH

53 HIGH

Ruta C8 de entrada de procesamiento de comando de contador del esclavo de programa

33002530 07 07/2008

135

MBP_MSTR

Estadsticas de red de Ethernet TCP/IP.


Estadsticas de red de Ethernet TCP/IP. Un mdulo de Ethernet TCP/IP contesta a comandos de estadsticas remotas y locales del bloque MBP_MSTR con la siguiente informacin:
Palabra de 00 a 02 Significado Direccin MAC Por ejemplo, la direccin MAC 00 00 54 00 12 34 se muestra de la forma siguiente: Palabra Contenido 00 00 00 01 00 54 02 34 12 Estado del mdulo 0x0001 = En ejecucin 0x4000 = LED de APPI (1 = activo, 0 = desactivado) 0x8000 = conexin de LED Nmero de interrupts receptores Nmero de interrupts de transferencia Nmero de errores de tiempo de espera de transferencia Cantidad de errores de deteccin de colisiones Paquetes omitidos Nmero de errores de memoria Nmero de veces que el controlador ha reiniciado el sistema Nmero de errores de bloques de datos de recepcin Receptor de nmero de errores de desborde Contador de errores CRC de recepcin Contador de errores de bfer de recepcin Contador de errores de bfer de transferencia Contador de trasgresin por debajo de rango de bin de transferencia Contador de ltimas colisiones Contador de portadora perdida Nmero de reintentos
Direccin IP Por ejemplo, la direccin IP 198.202.137.113 (o c6 CA 89 71) se representa de la forma siguiente:

03

04 y 05 06 y 07 08 y 09 10 y 11 12 y 13 14 y 15 16 y 17 18 y 19 20 y 21 22 y 23 24 y 25 26 y 27 28 y 29 30 y 31 32 y 33 34 y 35 36 y 37

Palabra Contenido 36 89 71 37 C6 CA

136

33002530 07 07/2008

MBP_MSTR

Definicin del bit de palabra de estado de tarjeta

La tabla siguiente describe las definiciones de bits de palabra para estado de tarjeta: 140 NOE 771 x1, versiones 2.0, 3.0, 3.1, 3.3 y 3.6 y 140 NOE 771 x0, versiones 3.0, 3.3 y 3.4

Bit n. 15 14 13 12 11 ... 8 7 ... 4 3 2 1 0

Definicin 0 = LED Link apagado 1 = LED Link encendido 0 = LED Appl apagado 1 = LED Appl encendido 0 = par trenzado 1 = fibra 0 = 10 Mbit 1 = 100 Mbit (Reservado) Tipo de mdulo (consulte la tabla siguiente) (Reservado) 0 = semi-dplex 1 = dplex completo 0 = no configurado 1 = configurado 0 = el PLC no est en funcionamiento 1 = el PLC/NOE est en funcionamiento

Nota: Los bits se contabilizan de derecha a izquierda empezando por el bit 0 (bit bajo). Por ejemplo, PLC en ejecucin = 0x0001, Aplicacin de LED = 0x4000 y Conexin de LED = 0x8000. La tabla siguiente describe las definiciones de bits de palabra para estado de tarjeta: 140 NOE 771 x1, versiones 3.5 140 NOE 771 x0, versiones 1.02 y 2.0 y 140 CPU 651 x0

Bit n. 15 ... 12 11 10 9 8 7

Definicin Tipo de mdulo (consulte la tabla a continuacin) (Reservado) 0 = dplex 1 = dplex completo 0 = no configurado 1 = configurado 0 = el PLC no est en funcionamiento 1 = el PLC/NOE est en funcionamiento 0 = LED Link apagado 1 = LED Link encendido

33002530 07 07/2008

137

MBP_MSTR

6 5 4 3 ... 0

0 = LED Appl. apagado 1 = LED Appl. encendido 0 = par trenzado 1 = fibra 0 = 10 Mbit 1 = 100 Mbit (Reservado)

Nota: Los bits se contabilizan de derecha a izquierda empezando por el bit 0 (bit bajo). Por ejemplo, PLC en ejecucin = 0x0100, Aplicacin de LED = 0x0040, y Conexin de LED = 0x0080.

Definicin del bit de palabra de estado de la tarjeta por tipo de mdulo

En la tabla siguiente se describen los valores de los tipos de mdulo:


Valor de los bits 7...4 o 15...12 Tipo de mdulo (consulte las tablas anteriores para el rango de bit que se aplique a la versin de software de su mdulo) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 ... 15 NOE 2x1 ENT M1E NOE 771 00 ETY CIP (reservado) 140 CPU 651 x0 (reservado) (reservado) NOE 771 10 NOE 771 01 NOE 771 11 (reservado)

138

33002530 07 07/2008

MBP_MSTR

Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP


Forma del cdigo de error de la funcin Los cdigos de error de la funcin para las transacciones Ethernet SY/MAX y Modbus Plus aparecen como Mmss, donde: M es el cdigo mayor. m es el cdigo menor. ss es un subcdigo. Cdigos de error hexadecimales para Ethernet SY/MAX y Modbus Plus:
Cdigode error hex. 1001 2001 2002 Descripcin
Cancelado por el usuario Se ha especificado un tipo de operacin incompatible en el bloque de control. Se modificaron uno o ms parmetros del bloque de control mientras el elemento MSTR estaba activo (esto slo es aplicable a operaciones que requieren varios ciclos para completarse). Los parmetros del bloque de control slo pueden modificarse en componentes MSTR inactivos. Valor no vlido en el campo longitud del bloque de control. Valor no vlido en el campo offset del bloque de control. Valor no vlido en los campos longitud y offset del bloque de control. Campo de datos no autorizado en esclavo. Campo de red no autorizado en esclavo. Ruta de acceso a redes no autorizada en esclavo. Ruta de acceso equivalente a las propias direcciones. Intento de obtener ms palabras de datos globales de las que estn disponibles. Conflicto de PEER Cop en la lectura/escritura de datos globales. Modelo incorrecto para la peticin de cambio de direccin. Direccin incorrecta para la peticin de cambio de direccin. El bloque de control no est asignado o algunas partes del bloque de control estn ubicadas fuera del rango %MW (4x). Respuesta de excepcin del esclavo Modbus. (vase Valor hexadecimal ss en cdigo de error de 30ss, p. 142) Respuesta incoherente del esclavo Modbus. Respuesta incoherente de la red. ID de ranura no vlido. Error de ruta de acceso (vase Valor hexadecimal ss en cdigo de error de 6mss, p. 142) El subcampo m muestra dnde se ha producido el error (un valor 0 indica un nodo local, 2 indica que el segundo dispositivo est en ruta, etc.).

Errores de red Ethernet SY/MAX y Modbus Plus

2003 2004 2005 2006 2007 2008 2009 200A 200B 200C 200D 200E 30ss 4001 5001 6007 6mss

33002530 07 07/2008

139

MBP_MSTR

Errores de red Ethernet TCP/IP

Cdigos de error hexadecimales para Ethernet TCP/IP:


Cdigo de error hex. 5004 5005 5006 5009 500C 500D 5011 5016 5017 5020 5028 5029 502A 502B 502C 502D 502E 502F 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 503A 503B 503C 503D Significado Llamada del sistema interrumpida Error de E/S No existe esa direccin La identificacin del socket no es vlida Memoria insuficiente Permiso denegado Entrada ya existente Argumento no vlido La tabla interna se ha quedado sin espacio Conexin interrumpida Se necesita direccin de destino Tipo de protocolo incorrecto para el socket Protocolo no disponible Protocolo no admitido Tipo de socket no admitido Operacin no admitida en un socket Familia de protocolo no admitida Familia de direcciones no compatible La direccin est siendo utilizada No se puede asignar la direccin solicitada Operacin socket no en socket No es posible tener acceso a la red La red cerr la conexin al restablecer Anulacin de conexin provocada por la red Conexin restablecida por el interlocutor No hay espacio de bfer disponible Socket ya conectado Socket no conectado No se puede enviar despus de cerrar el socket Demasiadas referencias: no es posible empalmar Se agot el tiempo de conexin (vase nota a continuacin) Conexin rechazada

140

33002530 07 07/2008

MBP_MSTR

Cdigo de error hex. 503E 503F 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 504A 504B 5050 5051 5052 5053 5054 5055 5056 5057

Significado Red desconectada Archivo de texto ocupado Demasiados niveles de vnculos No hay ruta al host Se necesita dispositivo de bloques El host est desconectado Operacin en curso La operacin ya se est ejecutando Se bloqueara la operacin Funcin no implementada Longitud hardware no vlida No se puede hallar la ruta especificada Colisin al seleccionar llamada: otra tarea ya ha seleccionado estas condiciones ID de tarea no vlido Sin recurso de red Error de longitud Error de direccionamiento Error de aplicacin Cliente en estado incorrecto para peticin Sin recurso remoto: puede indicar que no hay ruta al dispositivo remoto (vase nota a continuacin) Conexin TCP no operativa Configuracin incoherente

Nota: El cdigo de error 5055 puede ocurrir antes de un error 503C. Ningn dispositivo remoto tiene prioridad sobre un tiempo de espera.

33002530 07 07/2008

141

MBP_MSTR

Valor hexadecimal ss en cdigo de error de 30ss

Valor hexadecimal ss en cdigo de error de 30ss:


Valor ss hex. 01 02 03 05 06 07 Descripcin El esclavo no admite la operacin solicitada. Se solicitaron registros del esclavo no existentes. Se solicit un valor de datos no autorizado. El esclavo ha aceptado un comando de programa largo. La funcin no puede llevarse a cabo en estos momentos: comando largo en ejecucin. El esclavo ha rechazado un comando de programa largo.

Valor hexadecimal ss en cdigo de error de 6mss

Nota: El subcampo m en cdigo de error de 6mss es un ndice de la informacin de acceso que muestra dnde se ha detectado el error (un valor 0 indica un nodo local, 2 indica que el segundo dispositivo est en ruta, etc.). El subcampo ss en el cdigo de error 6mss es de la siguiente manera:
Valor hexadecimal ss 01 02 03 04 05 06 07 08 10 20 40 80 F001 Descripcin Sin recepcin de respuesta. Acceso al programa denegado. Nodo fuera de servicio; no puede establecer la comunicacin. Respuesta inusual recibida. Ruta de datos encaminador-nodo ocupada. Esclavo fuera de servicio. Direccin de destino incorrecta. Tipo de nodo no autorizado en la ruta de acceso. El esclavo ha rechazado el comando. El esclavo ha perdido una transaccin activada. Ruta de salida maestro inesperada recibida. Respuesta inesperada recibida. Se ha especificado un nodo de destino incorrecto para la operacin MSTR.

142

33002530 07 07/2008

MBP_MSTR

Cdigos de error especficos de SY/MAX


Cdigos de error especficos de SY/MAX Si utiliza Ethernet SY/MAX, puede registrar otros tres tipos de errores en el registro CONTROL[1] del bloque de control (). Los cdigos de error tienen el siguiente significado: Error 71xx: Error descubierto por el equipo remoto SY/MAX Error 72xx: Error descubierto por el servidor Error 73xx: Error descubierto por el combinador Quantum Cdigos de error hex. especficos de SY/MAX:
Cdigo de error Cdigo de error 7101 7103 7109 F710 7110 7111 Significado

Cdigos de error hex. especficos de SY/MAX

Cdigo operacional no vlido descubierto por el equipo remoto SY/MAX Direccin invlida descubierta por el equipo remoto SY/MAX Intento de escribir en un registro descubierto por un equipo remoto SY/MAX protegido contra escritura Rebasamiento del receptor descubierto por el equipo remoto SY/MAX Longitud invlida descubierta por el equipo remoto SY/MAX Equipo remoto inactivo, sin conexin (sucede despus de agotar los intentos de repeticin y la desconexin de tiempo), descubierto por un equipo remoto SY/MAX Parmetro invlido en una operacin de lectura descubierto por el equipo remoto SY/MAX Ruta invlida descubierta por el equipo remoto SY/MAX Parmetro invlido en una operacin de escritura descubierto por el equipo remoto SY/MAX Nmero de estacin invlido descubierto por el equipo remoto SY/MAX Cdigo operacional no vlido descubierto por el servidor SY/MAX Direccin invlida descubierta por el servidor SY/MAX Intento de escribir en un registro encontrado por el servidor SY/MAX y protegido contra escritura Rebasamiento del receptor descubierto por un servidor SY/MAX Longitud invlida descubierta por el servidor SY/MAX Equipo remoto inactivo, sin conexin (sucede despus de agotar los intentos de repeticin y la desconexin de tiempo), descubierto por el servidor SY/MAX

7113 711D 7149 714B 7101 7203 7209 F720 7210 7211

33002530 07 07/2008

143

MBP_MSTR

Cdigo de error Cdigo de error 7213 721D 7249 724B 7301 7303 7309 731D

Significado

Parmetro invlido en una operacin de lectura descubierto por el servidor SY/MAX Ruta invlida descubierta por el servidor SY/MAX Parmetro invlido en una operacin de escritura descubierto por el servidor SY/MAX Nmero de estacin invlido descubierto por el servidor SY/MAX Cdigo operacional invlido en una solicitud de bloque MSTR del combinador Quantum Estado del mdulo QSE de lectura/escritura (direccin de acceso 200 fuera del rango) Intento de escribir en un registro protegido cuando se ejecuta una escritura de estado(ruta 200) Ruta invlida descubierta por el combinador Quantum Rutas vlidas: dest_drop, 0xFF 200, dest_drop, 0xFF 100+drop, dest_drop, 0xFF Todos los dems valores de ruta generarn un error Ha surgido uno de los siguientes errores: No se ha configurado ninguna tabla CTE (extensin de la configuracin). No se ha creado ninguna entrada de tabla CTE para el nmero de slot de modelo QSE. No se ha definido ninguna estacin vlida. El mdulo QSE no se ha restablecido despus de crear la CTE. Nota: Despus de escribir y configurar la CTE y cargarla en el mdulo QSE, deber restablecer dicho mdulo para que se apliquen los cambios. Al utilizar una instruccin MSTR no se ha definido ningn slot o estacin.

734B

144

33002530 07 07/2008

MBP_MSTR

Cdigos de error de TPC/IP Ethernet


Cdigos de error de TPC/IP Ethernet
Un error en una rutina MSTR a travs de TCP/IP Ethernet puede provocar uno de los siguientes errores en el bloque de control MSTR: El cdigo de error aparece como Mmss, donde: M es el cdigo mayor. m es el cdigo menor. ss es un subcdigo.

Cdigos de error HEX de TPC/IP Ethernet

Cdigos de error HEX de TPC/IP Ethernet:


Hex. Cdigo Significado de error 1001 2001 2002
Cancelado por el usuario Se ha especificado un tipo de operacin incompatible en el bloque de control Se modificaron uno o ms parmetros del bloque de control mientras el elemento MSTR estaba activo (esto slo es aplicable a operaciones que requieren varios ciclos para completarse). Los parmetros del bloque de control slo pueden modificarse en componentes MSTR inactivos. Valor no vlido en el campo longitud del bloque de control Valor no vlido en el campo offset del bloque de control Valor no vlido en los campos longitud y offset del bloque de control Campo de datos no autorizado en esclavo Ruta de acceso a redes no autorizada en esclavo El bloque de control no est asignado o algunas partes del bloque de control estn ubicadas fuera del rango %MW (4x). Cdigo de fallo Modbus genrico Respuesta de excepcin del esclavo del Modbus (vase Valor hexadecimal ss en cdigo de error de 30ss, p. 145) Respuesta incoherente del esclavo del Modbus

2003 2004 2005 2006 2008 200E 3000 30ss 4001

Valor hexadecimal ss en cdigo de error de 30ss

Valor hexadecimal ss en cdigo de error de 30ss:


Valor hex. ss Significado 01 02 03 05 06 07 El esclavo no admite la operacin solicitada Se solicitaron registros del esclavo no existentes Se solicit un valor de datos no autorizado El esclavo ha aceptado un comando de programa largo
La funcin no puede llevarse a cabo en estos momentos: comando largo en ejecucin

El esclavo ha rechazado un comando de programa largo 145

33002530 07 07/2008

MBP_MSTR

Cdigos de error HEX de red TPC/ IP Ethernet:

Un error en la red TCP/IP Ethernet puede dar lugar por s mismo a uno de los errores siguientes en el registro CONTROL[1] del bloque de control. Cdigos de error HEX de red TPC/IP Ethernet:
Cdigo de error hex. 5004 5005 5006 5009 500C 500D 5011 5016 5017 5020 5023 5024 5025 5026 5027 5028 5029 502A 502B 502C 502D 502E F502 5030 5031 5032 5033 5034 5035 5036 5037 Significado Ejecucin del sistema interrumpida Cdigo de error de E/S No existe tal direccin El descriptor del socket no es vlido No hay suficiente espacio de almacenamiento Autorizacin denegada Entrada existente Uno de los argumentos no es vlido Una tabla interna no dispone de ms espacio Existe una interferencia en la conexin Esta operacin se bloque y el socket no es de bloqueo El socket no es de bloqueo y la conexin no se puede cerrar El socket no es de bloqueo y el intento de conexin anterior no ha concluido Operacin socket en un non-socket La direccin de destino no es vlida Mensaje demasiado largo Tipo de protocolo incorrecto para el socket Protocolo no disponible Protocolo no admitido Tipo de socket no admitido Operacin no admitida en socket Familia de protocolo no admitida Familia de direccin no admitida La direccin ya se est utilizando La direccin no est disponible Red fuera de servicio No es posible establecer conexin con la red La red ha cerrado la conexin durante el restablecimiento Conexin terminada por el interlocutor Conexin restablecida por el interlocutor Es necesario un bfer interno, pero no es posible asignarlo
33002530 07 07/2008

146

MBP_MSTR

Cdigo de error hex. 5038 5039 503A 503B 503C 503D 5040 5041 5042 5046 5047 5048 5049 504A 504B 5050 5051 5052 5053 5054 5055 5056 5057 6003 F001 F002

Significado El socket ya est conectado El socket no est conectado La transmisin no es posible una vez desconectado el socket Demasiadas referencias; no es posible empalmar Se agot el tiempo de conexin Se ha denegado el intento de conexin El host est fuera de servicio No es posible establecer conexin con el host de destino desde este asiento El directorio no est vaco NI_INIT ha devuelto -1 El MTU no es vlido. La longitud del hardware no es vlida No se puede encontrar la ruta especificada Colisin al ejecutar Seleccionar; estas condiciones ya se seleccionaron en otro trabajo La ID del trabajo no es vlida No existen recursos de red Error de longitud Error de direccionamiento Error de aplicacin El cliente no puede procesar la peticin No existen recursos de red Conexin TPC no operativa Configuracin incoherente FIN o RST no esperados En modalidad de restablecimiento Componente no inicializado totalmente

33002530 07 07/2008

147

MBP_MSTR

Cdigos de error CTE para Ethernet SY/MAX y TCP/IP


Cdigos de error CTE para Ethernet SY/MAX y TCP/IP Los siguientes cdigos de error en el registro CONTROL[1] del bloque de control aparecen cuando en la configuracin de programa hay un problema con la tabla de extensin de configuracin Ethernet (CTE). Cdigos de error CTE para Ethernet SY/MAX y TCP/IP:
Cdigo de error hex. 7001 7002 7003 7004 7005 Significado No hay ninguna extensin de la configuracin Acceso no disponible a la CTE Offset invlido Offset + longitud invlidos Fallos en el campo de datos de la CTE

148

33002530 07 07/2008

MBP_MSTR

Cdigos de error del servicio de correo


Cdigos de error El servicio de notificacin de correo electrnico admite los cdigos de error siguientes:
Cdigo de error hex. 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 510A 510B 510C 510D 510E Descripcin Error interno. Componente SMTP no operativo. Encabezamiento de correo no configurado. Valor de encabezamiento de correo no vlido (debera ser 1, 2 o 3). No es posible conectarse al servidor SMTP. Error al transmitir el contenido del cuerpo del mensaje de correo electrnico al servidor SMTP. Se ha producido un error al cerrar la conexin SMTP con el servidor. Error de peticin SMTP HELO. Error de peticin SMTP MAIL. El servidor SMTP puede requerir una autenticacin. Error de peticin SMTP RCPT. El servidor SMTP no ha aceptado ningn destinatario. Error de peticin SMTP DATA. La peticin de envo de correo electrnico tiene una longitud no vlida. Fallo de la autenticacin. Se ha recibido una peticin de reinicializacin de componente mientras la conexin estaba abierta.

33002530 07 07/2008

149

MBP_MSTR

150

33002530 07 07/2008

ModbusP_ADDR: direccin de Modbus Plus

13

Descripcin general
Introduccin Contenido: En este captulo se describe el bloque ModbusP_ADDR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Descripcin detallada Pgina 152 155

33002530 07 07/2008

151

MODBUSP_ADDR

Descripcin
Descripcin de la funcin
Este bloque de funcin permite indicar la direccin Modbus Plus para los bloques de funcin REAG_REG, CREAD_REG, WRITE_REG y CWRITE_REG. La direccin se transmite en forma de una estructura de datos. Como parmetros adicionales se pueden configurar EN y ENO.

Nota: Para programar el bloque de funcinModbusP_ADDR debe conocer los procedimientos de acceso utilizados en la red. La descripcin detallada de las estructuras de ruta de acceso Modbus Plus se encuentra en "Modbus Plus Network Planning and Installation Guide".

Representacin en FBD

Representacin
ModbusP_ADDR_Instance ModbusP_ADDR NOMModuleSlot BYTE_variable1 BYTE_variable2 BYTE_variable3 BYTE_variable4 BYTE_variable5 SLOT_ID ADDRFLD ROUTING1 ROUTING2 ROUTING3 ROUTING4 ROUTING5 DataStructureModbusPlusAddress

152

33002530 07 07/2008

MODBUSP_ADDR

Representacin en LD

Representacin
ModbusP_ADDR_Instance ModbusP_ADDR EN NOMModuleSlot SLOT_ID ADDRFLD BYTE_variable1 BYTE_variable2 BYTE_variable3 BYTE_variable4 BYTE_variable5 ROUTING1 ROUTING2 ROUTING3 ROUTING4 ROUTING5 DataStructureModbusPlusAddress ENO

Representacin en IL

Representacin CAL ModbusP_ADDR_Instance (SLOT_ID:=NOMModuleSlot, ROUTING1:=BYTE_variable1, ROUTING2:=BYTE_variable2, ROUTING3:=BYTE_variable3, ROUTING4:=BYTE_variable4, ROUTING5:=BYTE_variable5, ADDRFLD=>DataStructureModbusPlusAddress) Representacin ModbusP_ADDR_Instance (SLOT_ID:=NOMModuleSlot, ROUTING1:=BYTE_variable1, ROUTING2:=BYTE_variable2, ROUTING3:=BYTE_variable3, ROUTING4:=BYTE_variable4, ROUTING5:=BYTE_variable5, ADDRFLD=>DataStructureModbusPlusAddress) ;

Representacin en ST

33002530 07 07/2008

153

MODBUSP_ADDR

Descripcin de parmetros

Descripcin de los parmetros de entrada


Parmetro SLOT_ID ROUTING1 Tipo de datos BYTE BYTE Significado ID del slot Slot del mdulo NOM La ruta de acceso 1 se emplea para el establecimiento de la direccin (direcciones de ruta de acceso una de cinco) del participante de destino durante una transmisin de red. El ltimo byte en la ruta de acceso que no se corresponda con cero es el participante de destino. Ruta de acceso 2 Ruta de acceso 3 Ruta de acceso 4 Ruta de acceso 5

ROUTING2 ROUTING3 ROUTING4 ROUTING5

BYTE BYTE BYTE BYTE

Descripcin de los parmetros de salida


Parmetro ADDRFLD Tipo de datos WordArr5 Significado Estructura de datos para la transmisin de la direccin Modbus Plus

154

33002530 07 07/2008

MODBUSP_ADDR

Descripcin detallada
Tipos de datos derivados Descripcin de elementos para WordArr5
Elemento WordArr5[1] Tipo de datos WORD Significado Registro de ruta de acceso 1 Byte de menor valor: Se emplea para el establecimiento de la direccin (direcciones de ruta de acceso una de cinco) del participante de destino durante una transmisin de red. Byte de mayor valor: Slot del modulo adaptador de red (NOM), si existe. Registro de ruta de acceso 2 Registro de ruta de acceso 3 Registro de ruta de acceso 4 Registro de ruta de acceso 5

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

Slot_ID

Cuando un mdulo opcional de red Modbus Plus (NOM) del bastidor accede a un controlador Quantum como participante de destino, el valor de la entrada Slot_ID representa el slot fsico del NOM, es decir, cuando el NOM est insertado en el slot 7 del bastidor, el valor tiene el siguiente aspecto:
0 0 0 0 0 1 1 1

Ruta de acceso x

La entrada Ruta de acceso x se emplea para el establecimiento de la direccin (direcciones de ruta de acceso una de cinco) del participante de destino durante una transmisin de red. El ltimo byte en la ruta de acceso que no se corresponda con cero es el participante de destino.
0 x x x x x x x

Direccin de destino (valor binario entre 1 y 64 (normal) o entre 65 y 249 (extendido))

33002530 07 07/2008

155

MODBUSP_ADDR

Registro de ruta de acceso 1

Si un mdulo opcional de red (NOM) Modbus Plus del bastidor accede a un controlador Quantum como participante de destino, el valor del byte de mayor valor representa el slot fsico del NOM. Si el participante de destino es una CPU, el byte de mayor valor se pone a "0" (independientemente del slot de la CPU). Si el NOM est instalado en el slot 7 del bastidor, el byte de mayor valor del registro de acceso 1 tiene el siguiente aspecto:
Byte de mayor valor Byte de menor valor

Byte de mayor valor Slot 1 a 16 Byte de menor valor Direccin de destino (valor binario entre 1 y 64 (normal) o entre 65 y 255 (extendido))

156

33002530 07 07/2008

OUT_IN_CHAR: envo/recepcin de cadenas de caracteres

14

Presentacin
Objetivo Contenido: En este captulo se describe la funcin de comunicacin OUT_IN_CHAR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Pantalla de entrada asistida Ejemplo de cmo enviar/recibir una cadena de caracteres Pgina 158 161 163

33002530 07 07/2008

157

OUT_IN_CHAR

Descripcin
Descripcin de la funcin La funcin OUT_IN_CHAR permite emitir una cadena de caracteres de 210 bytes como mximo (120 para el conector terminal), seguida de una solicitud de recepcin de mensaje (la emisin o la recepcin solas tambin son posibles). La cadena de caracteres puede estar contenida en una variable esttica (Ver Unity Pro, Lenguajes y estructura del programa, Manual de referencia, Instancias de tipos de datos) o determinada en forma de valor inmediato (serie de bytes entre apstrofes, por ejemplo: 'Mensaje que se va a enviar'). Estas cadenas de caracteres pueden contener caracteres especiales y deben empezar por el carcter $ seguido del valor hexadecimal del carcter que se va a transmitir, por ejemplo, $0D. Pueden utilizarse algunos caracteres especiales (Ver Unity Pro, Lenguajes y estructura del programa, Manual de referencia, Tipo de datos elementales (EDT) con formato de cadena de caracteres), como, por ejemplo: $R = CR (retorno de carro), $L = LF (retorno de lnea), $N = CR+LF. Los parmetros adicionales EN y ENO se pueden configurar. Representacin en FBD Representacin:
OUT_IN_CHAR Address Mode Data_to_Send Management_Param ADR TYPE EMIS GEST RECP Received_Data

GEST

Management_Param

158

33002530 07 07/2008

OUT_IN_CHAR

Representacin en LD

Representacin:
OUT_IN_CHAR EN Address Mode Data_to_Send Management_Param ADR TYPE EMIS GEST GEST Management_Param ENO RECP Received_Data

Representacin en IL

Representacin: Direccin LD OUT_IN_CHAR Mode, Data_to_Send, Management_Param, Received_Data Representacin: OUT_IN_CHAR(Address, Mode, Data_to_Send, Management_Param, Received_Data); En la siguiente tabla se describen los parmetros de entrada:
Parmetro Direccin Tipo ARRAY [0..5] OF INT INT Comentario Direccin de la entidad de destino del intercambio. Slo se admiten las direcciones que terminan en SYS (ejemplo: {Red.Estacin}SYS). Modo de funcionamiento: 1: emisin seguida de una puesta en modo de recepcin 2: emisin de un mensaje 3: puesta en modo de recepcin del mensaje Cadena de caracteres que se va a enviar. Esta cadena de caracteres debe existir en el momento de la llamada de la funcin, aunque no se vaya a emitir ningn dato (modo de recepcin simple, por ejemplo).

Representacin en ST

Descripcin de los parmetros

Modalidad

Data_to_Sen d

STRING

33002530 07 07/2008

159

OUT_IN_CHAR

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo ARRAY [0..3] OF INT Comentario Tabla de gestin del intercambio (vase Estructura de los parmetros de gestin, p. 35).

En la siguiente tabla se describen los parmetros de salida:


Parmetro Received_Data Tipo STRING Comentario Cadena de caracteres recibida. Esta cadena de caracteres debe existir obligatoriamente en el momento de la llamada de la funcin, aunque no se vaya a recibir ningn dato (por ejemplo, modo de emisin simple).

Nota: Durante una emisin o una emisin seguida de una recepcin, se recomienda inicializar la cuarta palabra de la tabla de gestin (longitud) antes de la ejecucin de la funcin. Por otro lado, la longitud de la cadena de caracteres recibida se memoriza en esta misma palabra al final del intercambio. No obstante, es necesario definir en el momento de la configuracin una condicin de parada (Ver Premium y Atrium en Unity Pro, Conexin serie asncrona, Manual de instalacin, Parmetros de final de mensaje en modalidad de caracteres). Para enviar cadenas de caracteres que contienen caracteres de final de cadena (NULL), es necesario: Utilizar STRING localizados, Inicializar la ltima palabra de la tabla de gestin de intercambios con el nmero de caracteres que se van a emitir. Si inicializa la palabra con el valor 0, la cadena enviada se detendr en el primer carcter NULO que encuentre. Si inicializa la palabra con un valor, la longitud de la cadena de caracteres enviada ser igual a este valor.

160

33002530 07 07/2008

OUT_IN_CHAR

Pantalla de entrada asistida


Presentacin Para esta funcin de comunicacin, puede solicitar la pantalla de entrada asistida. Tenga en cuenta que la pantalla de entrada asistida no est disponible para Modicon M340. Nota: Los smbolos de variable se aceptan en los diferentes campos de la pantalla.

Ilustracin

La pantalla siguiente muestra un ejemplo de la pantalla de entrada asistida de la funcin:


OUT_IN_CHAR Parmetros Direccin: Modalidad: Cadena para enviar: Variable: Valor:

... ... ...


Intercambio

Cadena para Informe:

... ...

Tipos posibles: Matriz de enteros constantes, matriz de enteros (n>=6) Direccin ADDR(..) Aceptar Cancelar

Direccin

Para PLC Premium, el tipo de objeto posible es el siguiente: ADDR(STRING). ARRAY [0..5] OF INT.

Nota: Si introduce un valor directamente en un campo, el botn de entrada de direccin asistida se vuelve gris.

33002530 07 07/2008

161

OUT_IN_CHAR

Modo

La seleccin de la lista desplegable es la siguiente: intercambio, transmisin, recepcin. Muestra directamente el valor inmediato 1, 2 o 3. Nota: Basta con seleccionar la solucin que desee en el men desplegable.

Nota: Si utiliza el campo de entrada en lugar del men, puede introducir una variable de tipo INT, est o no localizada.

Cadena para enviar

La cadena que se va a enviar es una variable de tipo STRING. Esta variable se debe declarar antes de su uso. Si la eleccin de la cadena es una variable (por ejemplo, String_0), el campo de entrada de valor inmediato desaparece.

Cadena para recibir

El rea de recepcin es una variable de tipo STRING. El tamao de esta variable es una funcin del nmero de caracteres que se van a recibir. Esta variable debe declararse antes de emplearse en esta pantalla. El informe es una matriz de 4 enteros. Nota: Tenga cuidado de no utilizar varias reas de memoria idnticas para las tablas de informes; de lo contrario, la funcin de lectura de variables podra no funcionar.

Informe

162

33002530 07 07/2008

OUT_IN_CHAR

Ejemplo de cmo enviar/recibir una cadena de caracteres


Presentacin Supongamos que desea enviar una cadena de caracteres Str_1 de la estacin 1 de la red 20 al puerto de terminal del la estacin 5, y despus recibir una cadena de caracteres Str_2 del puerto de terminal de la estacin 5 de la misma red. En este caso, una terminal de visualizacin est conectada al puerto de terminal de la estacin 5 de la red 20. La cadena que se va a enviar contiene diez caracteres. La tabla de gestin de la funcin est compuesta por la tabla de palabras %MW170:4. Ilustracin Las dos estaciones se conectan a travs de una red Fipway.

TSX Premium

TSX Micro

{20.5} Fipway {20.1}

33002530 07 07/2008

163

OUT_IN_CHAR

Programacin

Programacin en ST: SI RE(%I0.3.8) Y NO %MW170.0 ENTONCES (* inicializacin de los datos para enviar *) %MW173 := 10; (* funcin de comunicacin *) OUT_IN_CHAR(ADDR({20.5}0.0.0.SYS),1,Str_1,%MW170:4,Str_2); END_IF;

Parmetros de peticin:
Parmetros ADDR({20.5}0.0.0.SYS ) Descripcin {20.5}: red 20, estacin 5 0: bastidor 0: mdulo 0: canal 0 SYS: direccin de sistema Transmisin seguida de recepcin Variable de tipo STRING que contiene el mensaje para enviar Tabla de gestin Variable de tipo STRING que contendr el mensaje recibido

1 Str_1 %MW170:4 Str_2

Nota: Antes de que la funcin se inicie, inicialice el parmetro de longitud (en el ejemplo: %MW173) con el valor correspondiente al nmero de caracteres (en bytes) para enviar a Str_1. Al final del intercambio, %MW173 contendr la longitud de los datos recibidos (en bytes).

164

33002530 07 07/2008

OUT_IN_MBUS: funcin de comunicacin Modbus

15

Presentacin
Objetivo Contenido: En este captulo se describe la funcin de comunicacin OUT_IN MBUS. Este captulo contiene las siguientes secciones:
Seccin 15.1 15.2 15.3 15.4 Apartado Presentacin general del bloque de comunicacin OUT_IN_MBUS Descripcin del bloque de comunicacin OUT_IN_MBUS Instalacin del bloque de comunicacin OUT_IN_MBUS Ejemplo de uso del bloque de comunicacin OUT_IN_MBUS Pgina 167 172 184 192

33002530 07 07/2008

165

OUT_IN_MBUS

166

33002530 07 07/2008

OUT_IN_MBUS

15.1

Presentacin general del bloque de comunicacin OUT_IN_MBUS

Presentacin
Objeto Este subcaptulo ofrece una breve descripcin del bloque de comunicacin OUT_IN_MBUS. Esta seccin contiene los siguientes apartados:
Apartado Descripcin de la funcin Casos de uso Funciones Pgina 168 169 171

Contenido

33002530 07 07/2008

167

OUT_IN_MBUS

Descripcin de la funcin
Introduccin La funcin OUT_IN_MBUS permite simular una comunicacin Modbus maestra a partir de una conexin serie configurada en modalidad de caracteres. Combinada con la capacidad de cambiar sobre la marcha de una configuracin Modbus esclava a una configuracin en modalidad de caracteres a travs de la funcin WRITE_CMD, permite utilizar el PLC indistintamente como maestro o en modalidad de esclavo de Modbus con una misma conexin. Nota: Esta funcin slo tiene relevancia cuando se utilizan las modalidades Modbus maestra y esclava de forma simultnea. Si no es ste el caso, se recomienda utilizar las EF estndar READ_VAR y WRITE_VAR para gestionar la funcin Modbus maestra (la funcin Modbus esclava la gestiona implcitamente el sistema). Consulte la documentacin de Modbus.

ADVERTENCIA
Riesgos relacionados con la escritura de variables La aportacin de modificaciones incorrectas al PLC de destino puede dar lugar a un comportamiento no deseado de la aplicacin. Es recomendable tomar todas las precauciones necesarias antes de instalar el bloque OUT_IN_MBUS. Si no se siguen estas instrucciones pueden producirse lesiones personales graves o mortales o daos en el equipo.

168

33002530 07 07/2008

OUT_IN_MBUS

Casos de uso
Modalidad nominal La mayora de las aplicaciones constan de un PC que contiene las aplicaciones de supervisin. El supervisor es un maestro de Modbus y se comunica con diferentes esclavos. Esta modalidad de funcionamiento recibe el nombre de modalidad nominal. En la ilustracin siguiente se representa la modalidad nominal (supervisor a esclavo):
SCADA Supervisor

RS485 A A B B C C Supervisor SCADA MDEM MODEM RTC PSTN

RS485

33002530 07 07/2008

169

OUT_IN_MBUS

Modalidad de excepcin

Si as se solicita, un PLC debe tener la capacidad de pasar del estado esclavo de Modbus al estado maestro Modbus con el fin de enviar peticiones a otros PLC o dispositivos. Este paso de una modalidad a otra recibe el nombre de modalidad de excepcin. Una vez finalizada la modalidad de excepcin, el sistema debe poder recuperar su estado inicial (modalidad nominal). En la ilustracin siguiente se representa la modalidad de excepcin (de maestro a esclavo):
SCADA Supervisor

RS485 A A B B C C Supervisor SCADA MDEM MODEM RTC PSTN

RS485

170

33002530 07 07/2008

OUT_IN_MBUS

Funciones
Presentacin La funcin OUT_IN_MBUS admite: Los cdigos Modbus 1, 2, 3, 4, 5, 6, 15 y 16 (vase Parmetro MbusCmd, p. 176) Las modalidades ASCII y RTU (vase Parmetro DataBits, p. 180) El direccionamiento completo (vase Parmetro MbusCmd, p. 176) La funcin OUT_IN_MBUS se presenta en forma de DFB cuya ejecucin debe reiniciarse en cada ciclo del PLC cuando el bit de actividad est en 1. La funcin est disponible en PLC Premium a travs de una tarjeta de comunicacin TSXSCP111 o TSXSCP114 instalada en el procesador, o bien de un mdulo host (TSXSCY21601 o TSXSCY11601). Restricciones En cada puerto, no debe activarse ms de un DFB OUT_IN_MBUS simultneamente. Igualmente, no deben utilizarse simultneamente los bloques PRINT_CHAR, INPUT_CHAR o OUT_IN_CHAR. La funcin OUT_IN_MBUS no admite: cambio de parmetros de las capas fsicas o de conexin: flujo, formato de caracteres, paso de RTU a ASCII o inversin o gestin de seales RS232. conflictos y errores de comunicacin que puedan resultar de la presencia de 2 maestros de Modbus activos de forma simultnea en la misma conexin. ninguna modalidad de servicio que pueda resultar de un fallo o de la conexin temporal de una tarjeta de comunicacin. configuracin ni gestin de mdems.

33002530 07 07/2008

171

OUT_IN_MBUS

15.2

Descripcin del bloque de comunicacin OUT_IN_MBUS

Presentacin
Objeto Este subcaptulo ofrece una descripcin detallada del bloque de comunicacin OUT_IN_MBUS. Esta seccin contiene los siguientes apartados:
Apartado Representaciones y parmetros Parmetro MbusCmd Parmetro RetryLmt Parmetro DataBits Parmetro RespTout Parmetro MasterDataArea Parmetro Status Pgina 173 176 179 180 181 182 183

Contenido

172

33002530 07 07/2008

OUT_IN_MBUS

Representaciones y parmetros
Representacin FBD Representacin:
OUT_IN_MBUS AD MC RL DB AB MDA ADR MBUSCMD RETRYLMT DATABITS ABORT RETRY ACTIVE DONE ERROR STATUS RT AC DO ERR ST MDA

MASTERDATAAREA

Representacin LD

Representacin:
OUT_IN_MBUS EN AD MC RL DB AB ADR MBUSCMD RETRYLMT DATABITS ABORT ENO RETRY ACTIVE DONE ERROR STATUS RT AC DO ERR ST

MDA

MASTERDATAAREA

MDA

33002530 07 07/2008

173

OUT_IN_MBUS

Representacin IL

Representacin: Direccin LD OUT_IN_MBUS AD, MC, RL, DB, AB, MDA, RT, AC, DO, ERR, ST Representacin: OUT_IN_MBUS(AD, MC, RL, DB, AB, MDA, RT, AC, DO, ERR, ST); En la siguiente matriz se describen los parmetros de entrada:
Parmetro ADDR Tipo ADDR_TYPE Comentario Informacin acerca de la direccin del puerto de comunicacin del dispositivo esclavo. Esta direccin debe aparecer de la forma siguiente: ADDR(r.m.c.SYS). Abreviaturas utilizadas: r = bastidor, m = slot del mdulo, c = canal. Definicin (vase Definicin del parmetro MbusCmd, p. 176)de la matriz Modbus. Nmero de intentos (vase Parmetro RetryLmt, p. 179) del bloque para enviar un mensaje creado por el bloque. Mensajes (vase Parmetro DataBits, p. 180) Modbus para enviar en modalidad ASCII (DATABITS =0) o en modalidad RTU (DATABITS=1). Tiempo de espera (vase Parmetro RespTout, p. 181) del bloque. Bit de cancelacin de DFB.

Representacin ST Descripcin de parmetros

MBUSCMD RETRYLMT

ARRAY [1.. 4] OF INT INT

DATABITS

BOOL

RESPTOUT ABORT

INT BOOL

En la siguiente matriz se describe el parmetro de entrada y salida:


Parmetro MASTERDATAAREA Tipo ARRAY [x.. y] OF INT Comentario rea de datos (vase Parmetro MasterDataArea, p. 182) del PLC maestro.

Nota: Para leer uno de los ltimos ocho bits de la memoria, es necesario leerlos todos ya que, de lo contrario, la funcin devuelve un informe de estado de error. Entonces es posible extraer el bit que necesite.

174

33002530 07 07/2008

OUT_IN_MBUS

Nota: Si el parmetro de entrada y salida utiliza una matriz dinmica, debe marcar en las matrices dinmicas Unity Pro Allow [ANY_ARRAY_XXX] en herramienta opcin de proyecto extensin de lenguaje.

En la siguiente matriz se describen los parmetros de salida (solo lectura):


Parmetro RETRY ACTIVE DONE ERROR STATUS Tipo INT BOOL BOOL BOOL INT Comentario El valor visualizado muestra el nmero actual de intentos realizados por el bloque. El valor 1 indica que se est realizando una operacin. El valor 1 indica que la operacin se ha completado. El valor 1 indica que se ha producido un error. El valor muestra un cdigo de estado (vase Parmetro Status, p. 183) generado por el bloque.

33002530 07 07/2008

175

OUT_IN_MBUS

Parmetro MbusCmd
Definicin del parmetro MbusCmd El parmetro MbusCmd corresponde al comando Modbus. El parmetro MbusCmd consta de una matriz de 4 registros como la que se muestra a continuacin:
Contenido MbusCmd[1] Descripcin Direccin de esclavo Descripcin Esta palabra contiene la direccin del PLC Modbus esclavo. El rango de direcciones permitidas es de 0 a 248. La direccin 0 est reservada para enviar un mensaje Modbus a diversos PLC. Este tipo de transmisin recibe el nombre de modalidad de difusin. La modalidad de difusin admite nicamente los cdigos de funcin Modbus que escriben los datos del PLC maestro a los PLC esclavos. Por el contrario, no admite los cdigos de funcin Modbus que leen los datos procedentes de PLC esclavos. La direccin 248 esta reservada para la comunicacin punto a punto en los casos en que no se conozca la direccin del esclavo. No todos los dispositivos admiten esta direccin. El bloque OUT_IN_MBUS admite los siguientes cdigos de funcin: 01 = lectura de varios bits de salida (0x) 02 = lectura de varios bits de entrada (1x) 03 = lectura de varios registros de salida (4x) 04 = lectura de varios registros de entrada (3x) 05 = escritura de un solo bit de salida (0x) 06 = escritura de un solo registro de salida (4x) 15 = escritura de varios bits de salida (0x) 16 = escritura de varios registros de salida (4x) Nota: Cuando el PLC esclavo es de tipo Premium, todos los bits se convierten en %M, mientras que los registros se convierten en %MW.

MbusCmd[2]

Cdigo de funcin Modbus

176

33002530 07 07/2008

OUT_IN_MBUS

Contenido MbusCmd[3]

Descripcin rea de datos del PLC esclavo

Descripcin En los comandos de lectura, el rea de datos del PLC esclavo es el origen de los datos. En los comandos de escritura, el rea de datos del PLC esclavo es el destino de los datos. Por ejemplo: Para leer los bits de salida del 300 al 500 de un PLC esclavo, introduzca 300 en este campo. Para escribir los datos de un PLC maestro en el registro 100 de tipo 4x de un PLC esclavo, introduzca 100 en este campo. En funcin del tipo de comando Modbus (lectura o escritura), las reas de datos de origen y de destino debern coincidir con las de la siguiente tabla (vase MbusCmd[3], p. 177).

MbusCmd[4]

Cantidad

Este registro contiene la cantidad de datos de deben escribirse o leerse en el PLC esclavo. Por ejemplo, introduzca 100 para leer 100 registros de salida en el PLC esclavo, o 32 para escribir 32 bits de salida en un PLC esclavo. Existe un lmite de tamao que depender del cdigo de funcin Modbus utilizado y de la modalidad de transmisin (RTU o ASCII). Los valores lmite de MbusCmd[4] aparecen detallados en la siguiente tabla (vase MbusCmd[4], p. 178). Este tamao no es significativo para los cdigos de funcin 5 y 6. Nota: El lmite del rea de memoria depender del dispositivo y de los parmetros del esclavo.

MbusCmd[3]

La tabla siguiente presenta el rea de datos del PLC esclavo para MbusCmd[3]. Esta rea de datos depende del cdigo de funcin Modbus utilizado y del tipo de PLC esclavo:
Cdigo de funcin 01 (lectura de varios bits de salida [0x]) 02 (lectura de varios bits de entrada [1x]) 03 (lectura de varios registros de salida [4x]) rea de datos para rea de datos para PLC dispositivo Modbus estndar Premium 0x (origen) 1x (origen) 4x (origen) %M (origen) %M (origen) %MW (origen) %MW (origen)

04 (lectura de varios 3x (origen) registros de entrada [3x])

33002530 07 07/2008

177

OUT_IN_MBUS

Cdigo de funcin 05 (escritura de un solo bit de salida [0x]) 06 (escritura de un solo registro de salida [4x]) 15 (escritura de varios bits de salida [0x]) 16 (escritura de varios registros de salida [4x]).

rea de datos para rea de datos para PLC dispositivo Modbus estndar Premium 0x (destino) 4x (destino) 0x (destino) 4x (destino) %M (destino) %MW (destino) %M (destino) %MW (destino)

MbusCmd[4]

La tabla siguiente presenta el valor lmite de MbusCmd[4]. Este valor depende del cdigo de funcin Modbus utilizado y de la modalidad de transmisin:
Cdigo de funcin 01 (lectura de varios bits de salida [0x]) 02 (lectura de varios bits de entrada [1x]) 03 (lectura de varios registros de salida [4x]) 04 (lectura de varios registros de entrada [3x]) 05 (escritura de un solo bit de salida [0x]) 06 (escritura de un solo registro de salida [4x]) 15 (escritura de varios bits de salida [0x]) 16 (escritura de varios registros de salida [4x]) Modalidad RTU (8 bits) 1.000 1.000 100 100 1 1 1.000 100 Modalidad ASCII (7 bits) 500 500 50 50 1 1 500 50

178

33002530 07 07/2008

OUT_IN_MBUS

Parmetro RetryLmt
Definicin Este parmetro indica el nmero de intentos de envo de un mensaje efectuados por el bloque OUT_IN_MBUS hasta la recepcin de una respuesta correcta por parte de un dispositivo esclavo (PLC, mdem, etc.). Cuando la respuesta no se estructura completamente en el tiempo indicado, el bloque genera un error y un cdigo de error. El nmero de reintentos debe estar comprendido entre 0 y 32.767. Este campo se utiliza de forma conjunta con RespTout.

33002530 07 07/2008

179

OUT_IN_MBUS

Parmetro DataBits
Definicin Los mensajes Modbus pueden enviarse en modalidad ASCII o RTU. El modo ASCII utiliza 7 bits de datos, mientras que la modalidad RTU utiliza 8. Para enviar mensajes en caracteres RTU, Databits debe tomar el valor 1. El valor deber corresponderse con la configuracin de la tarjeta de comunicacin. Nota: Para evitar problemas en caso de modificacin de la configuracin, utilice constantes del sistema de tipo %KWr.m.c.1.8 para inicializar este parmetro.

180

33002530 07 07/2008

OUT_IN_MBUS

Parmetro RespTout
Definicin Este parmetro indica el tiempo de espera del bloque OUT_IN_MBUS hasta la recepcin de una respuesta correcta por parte de un dispositivo esclavo (PLC, mdem, etc.). Cuando la respuesta no se estructura completamente en el tiempo indicado, el bloque genera un error. Una vez transcurrido este tiempo, el sistema no admitir ninguna respuesta. La base de tiempo es de 100 ms. Los valores vlidos estn comprendidos entre 0 (espera infinita) y 32767. El timeout empieza la cuenta atrs con el envo del ltimo carcter del mensaje.

33002530 07 07/2008

181

OUT_IN_MBUS

Parmetro MasterDataArea
Definicin En los comandos de lectura, el rea de datos del PLC maestro ser el destino de los datos reenviados por el esclavo. En los comandos de escritura, el rea de datos del PLC maestro es el origen de los datos. En los cdigos de comandos Modbus 1, 2, 5 y 15, la codificacin de los bits se lleva a cabo de la forma siguiente: Los bits de 1 a 16 se almacenan en el primer elemento de la matriz de INT del argumento, siendo el primer bit el menos significativo del elemento. Los bits de 17 a 32 se almacenan en el segundo elemento de la matriz, siendo el bit 17 el menos significativo del elemento. Y as sucesivamente. De esta forma, para intercambiar 1.000 bits, conviene declarar una matriz de 63 INT (1.000/16 + 8). Nota: Se puede utilizar una rea de datos de tipo entero %MW directamente en el parmetro MasterDataArea (por ejemplo: %MW100:50 designa una matriz de 50 enteros que empieza en la direccin 100). Primero se deber convertir y volver a copiar una sucesin de elementos de una matriz de bit de tipo %M en una matriz de enteros (INT), segn la codificacin descrita a continuacin.

182

33002530 07 07/2008

OUT_IN_MBUS

Parmetro Status
Definicin Este parmetro muestra un cdigo de estado generado por el bloque OUT_IN_MBUS. La tabla siguiente muestra los diferentes cdigos de estado:
Cdigo de estado 1 2 3 4 5 6 7 8 104 108 113 114 115 116 124 125 128 130 131 200 201 202 203 204 205 206 207 208
33002530 07 07/2008

Descripcin del estado Excepcin de Modbus Funcin incorrecta Excepcin de Modbus Direccin de datos incorrecta Excepcin de Modbus Valor de datos incorrecto Excepcin de Modbus Error de asiento esclavo Excepcin de Modbus Confirmacin Excepcin de Modbus Asiento esclavo ocupado Excepcin de Modbus Confirmacin negativa Excepcin de Modbus Error de paridad de memoria La longitud de los datos no puede ser igual a cero. Error indefinido Suma de control LRC del PLC esclavo no vlida Suma de control CRC del PLC esclavo no vlida Cdigo de funcin Modbus no vlido Timeout de mensaje de respuesta Modbus Estado interno indefinido Modalidad de difusin no permitida por esta funcin Modbus. Respuesta inesperada procedente del esclavo de Modbus Palabra de comando modificada durante la actividad Nmero de caracteres incorrecto Direccin de esclavo no comprendida en los lmites Error de comunicacin con el puerto serie Nmero binario no vlido Cantidad de datos excesiva rea de datos del maestro insuficiente El timeout debe tener un valor positivo. Excepcin de Modbus desconocida Accin cancelada por el usuario RetryLmt debe ser positivo. 183

OUT_IN_MBUS

15.3

Instalacin del bloque de comunicacin OUT_IN_MBUS

Presentacin
Objeto Este subcaptulo describe la instalacin del bloque de comunicacin OUT_IN_MBUS. Esta seccin contiene los siguientes apartados:
Apartado Configuracin de la conexin serie Procedimiento para programar Uso de un mdem Pgina 185 188 190

Contenido

184

33002530 07 07/2008

OUT_IN_MBUS

Configuracin de la conexin serie


Introduccin La utilizacin del bloque OUT_IN_MBUS requiere una correcta configuracin previa de la conexin serie. Existen dos tipos de parmetros: Parmetros relativos a la transmisin y configurados desde Unity Pro Parmetros relativos a la aplicacin y cuyo argumento ha pasado a la funcin Recuperacin de los parmetros de transmisin La conexin serie de las tarjetas se configura desde Unity Pro. Estos parmetros son: Velocidad de transmisin Retardo entre caracteres Bits de datos Bit de parada Paridad Para permitir el intercambio de datos entre todos los dispositivos conectados al bus, los parmetros de la conexin serie deben ser idnticos para todos. La pantalla de configuracin que permite introducir los parmetros depende de la configuracin de la modalidad nominal.

33002530 07 07/2008

185

OUT_IN_MBUS

Parmetros de transmisin de la modalidad Modbus

La ilustracin siguiente representa una pantalla de configuracin cuando la modalidad nominal est en modalidad Modbus.

TARJETA PCMCIA RS485 MP

TSX SCP 114/1114 Canal 1 Funcin: CONEXIN JBUS MODBUS Tarea: MAST

Config. Tipo Esclavo Maestro Nmero de reintentos Retardo de respuesta Esclavo Nmero de esclavo 1 1 0 x 10 ms Velocidad de transmisin 9.600 bits/s Retardo entre caracteres Predeterminado Datos ASCII (7 bits) RTU (8 bits) Paridad Par Retardo RTS/CTS x100 ms 0 Impar 4 ms Parada a 1 bit 2 bits Sin Portadora de datos (DCD)

Bucle de corriente (PSR) Multipunto Punto a punto

Nota: El valor del parmetro de entrada Databit (vase Parmetro DataBits, p. 180) del bloque OUT_IN_MBUS debe corresponderse con el valor seleccionado en la ventana Datos de la pantalla de configuracin. El uso de OUT_IN_MBUS requiere una conmutacin dinmica en modalidad de caracteres. En esta modalidad, las condiciones de parada (en caracteres o en silencio) se encuentran desactivadas y no pueden modificarse desde la aplicacin. Por lo tanto, la funcin OUT_IN_CHAR no podr utilizarse en la modalidad de recepcin (parada en timeout). En esta modalidad, slo podrn usarse las funciones INPUT_CHAR y INPUT_BYTES, para lo que se necesitar un nmero de caracteres por recibir.

186

33002530 07 07/2008

OUT_IN_MBUS

Parmetros de transmisin de la modalidad de caracteres

La ilustracin siguiente representa una pantalla de configuracin cuando la modalidad nominal est en modalidad de caracteres.

TARJETA PCMCIA RS 485 MP

TSX SCP 114/1114 Canal 0 Funcin: Conexin modalidad de caracteres Tarea: MAST

Config. Control de flujo Hardware RTS/CTS Hardware RTS/DCD Xon/Xoff Ninguno Eco Al recibir Reinicio en el primer car. CR -> CR LF Parada al recibir Carcter 1 Parada CR LF 0 Carcter incluido Carcter 2 Parada CR LF 0 Velocidad de transmisin 9.600 bits/s Parada en silencio Parada Datos 7 bits 8 bits Paridad Par Impar 1 ms

Parada a 1 bit 2 bits Sin

Gestin de seal Carcter incluido Gestin de retroceso Bucle de corriente (PSR) Retardo RTS/STS Full duplex Multipunto Punto a punto x100 ms 0 (RS422)

Portadora de datos (DCD)

Nota: El valor del parmetro de entrada Databit (vase Parmetro DataBits, p. 180) del bloque OUT_IN_MBUS debe corresponderse con el valor seleccionado en la ventana Datos de la pantalla de configuracin. Cuando la configuracin de la tarjeta usa la modalidad de caracteres:
Las condiciones de parada (en modalidad de caracteres o silencio) configurables en esta modalidad deben desactivarse para un correcto funcionamiento de OUT_IN_MBUS. Por lo tanto, la funcin OUT_IN_CHAR no podr utilizarse en modalidad de recepcin (parada en timeout). Slo podrn usarse en esta modalidad las funciones INPUT_CHAR y INPUT_BYTES, para lo que se necesitar un nmero de caracteres por recibir. El retardo entre caracteres no puede configurarse. Por lo tanto, es conveniente asegurarse de que el valor de este parmetro en los dispositivos Modbus remotos sea compatible con la configuracin de la modalidad de caracteres.

Parmetros relativos a la aplicacin

Existen dos parmetros relativos a la aplicacin que se transmiten como argumento a la funcin OUT_IN_MBUS. Estos parmetros son: Nmero de repeticiones (vase Parmetro RetryLmt, p. 179) Retardo de respuesta (vase Parmetro RespTout, p. 181)

33002530 07 07/2008

187

OUT_IN_MBUS

Procedimiento para programar


Procedimiento La tabla siguiente contiene el procedimiento para programar el bloque OUT_IN_MBUS:
Paso 1 Accin Preparar el puerto de comunicacin Detalles Si el puerto serie no se ha configurado en la modalidad de caracteres, cambie la modalidad Modbus del puerto a modalidad de caracteres enviando al puerto serie el comando WRITE_CMD (vase Escritura de palabras de comando en un puerto de comunicacin, p. 189). Si se trata de una transmisin de mdem, enve el comando HAYES utilizando el bloque PRINT_CHAR o OUT_IN_CHAR para configurar el mdem (vase Uso de un mdem, p. 190). En las transmisiones de mdem, utilice el comando HAYES para enviar al mdem un mensaje de numeracin utilizando el bloque PRINT_CHAR o OUT_IN_CHAR. El mensaje de numeracin se utiliza para enviar un nmero de telfono al mdem (vase Uso de un mdem, p. 190). Inicialice los parmetros de entrada del bloque DFB. No es necesario repetir esta operacin en cada ciclo del PLC. Se debe efectuar una llamada a OUT_IN_MBUS en cada ciclo del PLC hasta que el bit de actividad se ponga a cero. Cuando el bit de actividad est a cero, se deber forzar un bit en la condicin de llamada para evitar llamadas posteriores. Verifique el bit de error (en caso de error, la palabra de estado exigir la causa del error). Si se trata de una transmisin de mdem, enve el comando HAYES para enviar un mensaje de desconexin al mdem (vase Uso de un mdem, p. 190) utilizando el bloque PRINT_CHAR o OUT_IN_CHAR. Si el puerto se ha conmutado a la modalidad de caracteres (en el paso 1), vuelva a la modalidad inicial del puerto con el comando WRITE_CMD (vase Escritura de palabras de comando en un puerto de comunicacin, p. 189).
33002530 07 07/2008

Inicializar parmetros Llamar al bloque OUT_IN_MBUS

Reinicializar el puerto de comunicacin

188

OUT_IN_MBUS

Escritura de palabras de comando en un puerto de comunicacin

Para enviar un WRITE_CMD a un puerto de comunicacin deben seguirse estos pasos:


Paso 1 Accin Comprobar si existe algn comando en espera Antes de ejecutar WRITE_CMD, comprobar si existe algn intercambio en proceso que utilice el objeto de lenguaje %MWr.m.c.0. Para actualizar esta palabra, conviene utilizar el bloque READ_STS. Asignar la palabra de comando A continuacin, se deber modificar el valor del objeto de lenguaje de comandos para ejecutar el comando deseado. En conexiones Modbus, el objeto de lenguaje es la palabra interna %MWr.m.c.15. Por ejemplo, para pasar de la modalidad Modbus a la modalidad de caracteres, %MWr.m.c.15 debe estar en 16#4000 (%MWr.m.c.15.14=1). Nota: Slo ser necesario conmutar un nico bit de 0 a 1 antes de transmitir el WRITE_CMD. Enviar el comando Por ltimo, deber ejecutarse WRITE_CMD para confirmar el comando.

En el ejemplo (vase Ejemplo de uso del bloque de comunicacin OUT_IN_MBUS, p. 192) siguiente, se utiliza la interfaz IODDT correspondiente para comunicar con el canal del puerto serie de comunicacin.

33002530 07 07/2008

189

OUT_IN_MBUS

Uso de un mdem
Descripcin Conviene familiarizarse con tres comandos para comunicar los mdems telefnicos con los PLC. Estos comandos son: Inicializar el mdem Marcar el nmero Desconectar el mdem Es imprescindible enviar al mdem un mensaje de inicializacin, y despus de marcacin, antes de enviarle mensajes ASCII o Modbus. Una vez realizada la conexin entre los dos mdems, se podr enviar un nmero ilimitado de mensajes ASCII o de mensajes de Modbus. Cuando se haya enviado la totalidad de los mensajes, deber enviar la cadena de desconexin al mdem. Inicializar el mdem El mensaje de inicializacin es un mensaje ASCII que contiene 512 caracteres como mximo aunque, por lo general, basta con 50 caracteres para inicializar el mdem. Puede utilizar cualquier comando Hayes AT como componente de la cadena de incializacin. Ejemplo: mensaje Hayes tpico de inicializacin: AT&F&K0&Q0&D0V1X0Q0 <CR><LF>

Nota: A fin de simplificar la programacin, puede inicializar el mdem desde un terminal (por ejemplo: hiperterminal de Windows ) y no utilizar la funcin OUT_IN_CHAR. Una vez cargados los parmetros en el mdem, podrn guardarse en la memoria no voltil con un comando AT, generalmente &W.

190

33002530 07 07/2008

OUT_IN_MBUS

Marcar el nmero del mdem

El mensaje de marcacin se utiliza para enviar el nmero de telfono al mdem. Slo se deber incluir en el mensaje los comandos AT relativos a la marcacin. Ejemplo 1: marcacin por frecuencia AT DT 6800326 <CR><LF> Ejemplo 2: marcacin por pulsos AT DP 6800326 <CR><LF> Ejemplo 3: marcacin por frecuencia con espera de tono AT DT W,6800326 <CR><LF>

Nota: El valor de TimeOut debe ser alto puesto que la conexin entre dos mdems tarda algn tiempo (por ejemplo, defina el timeout en 3.0000ms). Si el valor es demasiado bajo, se generar un cdigo de estado (vase Parmetro Status, p. 183) 116 desde el bloque OUT_IN_MBUS. Es posible que se necesiten varios intentos antes de encontrar el tiempo ptimo.

Desconectar el mdem

El mensaje de desconexin se utiliza para desconectar el mdem. Ejemplo 1: mensaje Hayes tpico de desconexin: +++AT H0 <CR><LF>

Nota: El valor de TimeOut debe ser alto puesto que la desconexin de un mdem tarda algn tiempo (por ejemplo, defina el timeout en 30.000ms). Si el valor es demasiado bajo, se generar un cdigo de estado (vase Parmetro Status, p. 183) 116 desde el bloque OUT_IN_MBUS. Es posible que se necesiten varios intentos antes de encontrar el tiempo ptimo.

33002530 07 07/2008

191

OUT_IN_MBUS

15.4

Ejemplo de uso del bloque de comunicacin OUT_IN_MBUS

Presentacin
Objeto Este subcaptulo ofrece un ejemplo de uso del bloque de comunicacin OUT_IN_MBUS. Esta seccin contiene los siguientes apartados:
Apartado Descripcin del ejemplo Estructura de programacin Declaracin de variables Programacin Pgina 193 194 196 197

Contenido

192

33002530 07 07/2008

OUT_IN_MBUS

Descripcin del ejemplo


Presentacin El ejemplo seleccionado corresponde a una aplicacin de Modbus mediante mdems. El ejemplo se explica en la ilustracin siguiente: Supervisor SCADA MDEM MODEM RTC PSTN

Los dispositivos se comunican entre s a travs de un mdem. El supervisor es un maestro de Modbus, mientras que los PLC X e Y son esclavos. La finalidad del ejemplo consiste en describir los valores de un rea de datos del PLC X en Y. El PLC X debe escribir un rea de datos de 41 enteros que empiece con la direccin %MW100 en el PLC Y a partir de %MW100. Para ello, el PLC X debe definirse como maestro de Modbus. La direccin de Modbus del PLC X es 9, mientras que la de Y es 10. A fin de simplificar la programacin, los mdems se inicializan con los parmetros correctos mediante un terminal de programacin. Estos parmetros se almacenan en la memoria no voltil con los comandos AT&W.

33002530 07 07/2008

193

OUT_IN_MBUS

Estructura de programacin
Comentarios sobre el procedimiento La tabla siguiente resume el procedimiento de programacin del ejemplo:
Paso n. 0 5 Descripcin Estado inicial de la funcin Espera de la puesta a 1 del bit Start_4 para ir al paso 5. Si no existe ningn comando en proceso en el puerto serie, se enva un comando para que dicho puerto pase de la modalidad Modbus a la modalidad de caracteres. Avance hasta el paso 10. Lectura del estado del puerto serie Si se produce un error en el puerto serie: Error_4 est en -2. avance hasta el paso 65. Si no se produce ningn error en el puerto serie y la modalidad de caracteres est activa, avance al paso 15. y la modalidad de caracteres no est activa, compruebe el estado del paso a la modalidad de caracteres en 1.000 ciclos. Si, una vez concluidos los 1.000 ciclos, el mdem no ha cambiado, Error_4 estar en -1, y se avanza hasta el paso 65. Envo de un comando de numeracin al mdem a travs del bloque PRINT_CHAR y espera de la respuesta a travs de INPUT_CHAR. Ir al paso 20. Si el resultado de PRINT_CHAR es correcto, se avanza hasta el paso 25. De lo contrario, se avanza hasta el paso 65 con Error_4 en -3. Si el resultado de INPUT_CHAR es correcto, se avanza hasta el paso 30. De lo contrario, se avanza hasta el paso 65 con Error_4 en -4. Si el mdem responde, se avanza hasta el paso 35. De lo contrario, se avanza hasta el paso 65 con Error_4 en -5. Inicializacin de los parmetros del bloque OUT_IN_MBUS Avance hasta el paso 40. Llamada al bloque OUT_IN_MBUS Si el bit Active_4 est en 0 y el bit Flag_Error_4 est en 0, avance hasta el paso 45. y el bit Flag_Error_4 est en 1, avance hasta el paso 45 con Error_4 en -6. Envo de un comando de desconexin al mdem desde el bloque PRINT_CHAR Avance hasta el paso 50. Si el resultado de PRINT_CHAR es correcto, avance hasta el paso 55. De lo contrario, avance hasta el paso 65 con Error_4 definido con el valor 1.
33002530 07 07/2008

10

15

20 25 30 35 40

45 50

194

OUT_IN_MBUS

Paso n. 55

Descripcin Si no existe ningn comando en proceso en el puerto serie, se enva un comando para que dicho puerto pase de la modalidad de caracteres a la modalidad Modbus. Avance hasta el paso 60. Lectura del estado del puerto serie Si se produce un error en el puerto serie: Error_4 esta en 3. avance hasta el paso 65. Si no se produce ningn error en el puerto serie y se pasa a la modalidad Modbus, avance hasta el paso 65. y no se ha pasado a la modalidad Modbus, compruebe el estado del paso a Modbus en 1.000 ciclos. Si, una vez concluidos los 1.000 ciclos, el mdem no ha cambiado, Error_4 estar en -2, y se avanza hasta el paso 65. Regreso al paso 0 (estado inicial de la funcin) con el bit Start_4 en 0.

60

65

33002530 07 07/2008

195

OUT_IN_MBUS

Declaracin de variables
Presentacin En la tabla siguiente se detallan las variables utilizadas:
Variable Start_4 Step_4 Error_4 MngtPrint_4 MngtInput_4 ReqString_4 AnsString_4 Out_In_Mbus_4 Adr_4 MbusCmd_4[1] MbusCmd_4[2] MbusCmd_4[3] MbusCmd_4[4] RetryLmt_4 DataBits_4 RespTout_4 Retry_4 Active_4 Done_4 Flag_Error_4 Status_4 Tipo BOOL INT INT ARRAY[0..4] of INT ARRAY[0..4] of INT CADENA DE CARACTERES CADENA DE CARACTERES OUT_IN_MBUS INT INT INT INT INT INT INT INT INT BOOL BOOL BOOL INT Definicin Bit de inicio de la funcin Paso de la funcin Cdigo de error de la funcin Matriz de parmetros de comunicacin para el bloque INPUT_CHAR Matriz de parmetros de comunicacin para el bloque PRINT_CHAR Comando de una cadena de caracteres al mdem Respuesta de una cadena de caracteres del mdem Instancia del bloque OUT_IN_MBUS Puerto de comunicacin de PLC esclavo Cdigo de funcin Modbus Cantidad de datos por leer Direccin Modbus del PLC esclavo Comienzo del rea de datos por leer del esclavo Cantidad de intentos Modalidad de transmisin (1 para RTU y 0 para ASCII) Timeout Nmero de intentos efectuados por el bloque El valor 1 indica que la operacin est en proceso. El valor 1 indica que la operacin ha concluido con xito. El valor 1 indica que se ha producido un error o que la operacin actual ha concluido. Cdigo de estado generado por el bloque

196

33002530 07 07/2008

OUT_IN_MBUS

Programacin
Programacin en lenguaje ST El siguiente ejemplo est programado en lenguaje literal estructurado ST. La seccin especializada se encuentra en la tarea maestra (MAST). (* Function to write %MW100 to %MW140 in slave Y *) (* --------------------------------------------- *) CASE Step_4 OF

0: (* Inicializacin *) IF (Start_4) THEN (* trigger flag *) Error_4 := 0; Step_4 := 5; (* next step *) END_IF;

5: (* Send command to switch serial port from modbus to character mode *) READ_STS(Ioddt_Pcmcia_0_3_1); (* read serial port status *) IF (Ioddt_Pcmcia_0_3_1.EXCH_STS = 0) THEN (* no active command *) Ioddt_Pcmcia_0_3_1.CONTROL := 16#00; (* reset control word *) SET(Ioddt_Pcmcia_0_3_1.MB_TO_CHAR); (* set MB_TO_CHAR command bit *) WRITE_CMD (Ioddt_Pcmcia_0_3_1); (* send command *) i := 0; (* initialize retry counter *) Step_4 := 10; (* next step *) END_IF;

10: (* Test result of switch command *) READ_STS(Ioddt_Pcmcia_0_3_1); (* read serial port status *) IF (Ioddt_Pcmcia_0_3_1.EXCH_STS = 0) THEN (* command completed *) RESET(Ioddt_Pcmcia_0_3_1.MB_TO_CHAR); (* reset MB_TO_CHAR command bit *)
33002530 07 07/2008

197

OUT_IN_MBUS

IF (Ioddt_Pcmcia_0_3_1.EXCH_RPT = 0) THEN (* no error *) IF (AND(Ioddt_Pcmcia_0_3_1.PROTOCOL, 16#0F) = 03) THEN (* character mode OK *) Step_4 := 15; (* next step *) ELSE i := i + 1; IF (i > 1000) THEN Error_4 := -1; (* error *) Step_4 := 65; (* next step = end *) END_IF; END_IF; ELSE (* error in sending command to port *) Error_4 := -2; (* error *) Step_4 := 65; (* next step = end *) END_IF; END_IF;

15: (* Send dial command to modem *) Adr_4 := ADDR('0.3.1.SYS'); (* communication port *) MngtPrint_4[3] := 50; (* timeout *) MngtPrint_4[4] := 16; (* number of bytes to send *) ReqString_4 := 'ATDT0102030405$N'; (* dial message *) PRINT_CHAR(Adr_4, ReqString_4, MngtPrint_4); MngtInput_4[3] := 300; (* timeout *) MngtInput_4[4] := 0; (* number of bytes to send *) INPUT_CHAR(Adr_4, 0, 12, MngtPrint_4, AnsString_4); (* wait modem reply *) Step_4 := 20; (* next step *)

20: (* Test PRINT_CHAR function result *) IF (NOT MngtPrint_4[1].1) THEN IF (MngtPrint_4[2] = 0) THEN Step_4 := 25; (* success : next step *) ELSE Error_4 := -3; (* error *) Step_4 := 65; (* next step = end *) END_IF; END_IF;

198

33002530 07 07/2008

OUT_IN_MBUS

25: (* Test INPUT_CHAR function result *) IF (NOT MngtPrint_4[1].1) THEN IF (MngtPrint_4[2] = 0) THEN Step_4 := 30; (* success : next step *) ELSE Error_4 := -4; (* error *) Step_4 := 65; (* next step = end *) END_IF; END_IF;

30: (* Test Modem reply *) IF (AnsString_4 = 'CONNECT 9600') THEN Step_4 := 35; (* success : next step *) ELSE Error_4 := -5; (* error *) Step_4 := 65; (* next step = end *) END_IF;

35: (* Initialize OUT_IN_MBUS parameters *) MbusCmd_4[1] := 10; (* slave PLC address *) MbusCmd_4[2] := 16#06; (* Modbus function 16#06 *) MbusCmd_4[3] := 100; (* slave PLC area = %MW100 *) MbusCmd_4[4] := 41; (* quantity of data *) RetryLmt_4 := 2; (* number of retry *) DataBits_4 := %KW0.3.1.1.8; (* 1 = 8 bits -> RTU mode, 0 = 7 bits -> ASCII mode *) RespTout_4 := 300; (* timeout = 30s *) Flag_Error_4 := 0; Step_4 := 40; (* next step *)

40: (* Call OUT_IN_MBUS *) Out_In_Mbus_4 (Adr_4, MbusCmd_4, RetryLmt_4, DataBits_4, RespTout_4, Abort_4, %MW100:41, Retry_4, Active_4, Done_4, Flag_Error_4, Status_4); IF (NOT Active_4) THEN (* request completed *) IF (NOT Flag_Error_4) THEN (* no error *)
33002530 07 07/2008

199

OUT_IN_MBUS

Step_4 := 45; (* next step *) ELSE (* error *) Error_4 := -6; (* error *) Step_4 := 45; (* next step *) END_IF; END_IF;

45: (* Hangup modem *) MngtPrint_4[3] := 50; (* timeout *) MngtPrint_4[4] := 9; (* number of bytes to send *) ReqString_4 := '+++ATH0$N'; (* hangup message *) PRINT_CHAR(Adr_4, ReqString_4, MngtPrint_4); Step_4 := 50; (* next step *)

50: (* Test PRINT_CHAR function result *) IF (NOT MngtPrint_4[1].1) THEN IF (MngtPrint_4[2] = 0) THEN (* Success : next step *) Step_4 := 55; ELSE (* End on error *) Error_4 := 1; Step_4 := 65; END_IF; END_IF;

55: (* Send command to switch serial port from Modbus to character mode *) READ_STS(Ioddt_Pcmcia_0_3_1); (* read serial port status *) IF (Ioddt_Pcmcia_0_3_1.EXCH_STS = 0) THEN (* no active command *) Ioddt_Pcmcia_0_3_1.CONTROL := 16#00; (* reset control word *) SET(Ioddt_Pcmcia_0_3_1.CHAR_TO_MB); (* set MB_TO_CHAR command bit *) WRITE_CMD (Ioddt_Pcmcia_0_3_1); (* send command *) i := 0; (* initialize retry counter *) Step_4 := 60; (* next step *) END_IF;
200
33002530 07 07/2008

OUT_IN_MBUS

60: (* Test result of switch command *) READ_STS(Ioddt_Pcmcia_0_3_1); (* read serial port status *) IF (Ioddt_Pcmcia_0_3_1.EXCH_STS = 0) THEN (* command completed *) RESET(Ioddt_Pcmcia_0_3_1.CHAR_TO_MB); (* reset CHAR_TO_MB command bit *) IF (Ioddt_Pcmcia_0_3_1.EXCH_RPT = 0) THEN (* no error *) IF (AND(Ioddt_Pcmcia_0_3_1.PROTOCOL, 16#0F) = 07) THEN (* Modbus mode OK *) Step_4 := 65; (* next step *) ELSE i := i + 1; IF (i > 1000) THEN Error_4 := 2; (* error *) Step_4 := 65; (* next step *) END_IF; END_IF; ELSE (* error in sending command to port *) Error_4 := 3; (* error *) Step_4 := 65; (* next step *) END_IF; END_IF;

65: (* End *) Start_4 := 0; (* allow new demand *) Step_4 := 0; (* goto waiting state *) END_CASE;

33002530 07 07/2008

201

OUT_IN_MBUS

202

33002530 07 07/2008

PRINT_CHAR: envo de cadenas de caracteres

16

Presentacin
Objetivo Contenido: En este captulo se describe la funcin PRINT_CHAR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Pantalla de entrada asistida Ejemplo de envo de cadenas de caracteres a travs de la red Fipway Ejemplo de envo de cadenas de caracteres mediante la conexin serie de procesadores Modicon M340 Pgina 204 208 209 211

33002530 07 07/2008

203

PRINT_CHAR

Descripcin
Descripcin de las funciones Para PLC Premium, la funcin PRINT_CHAR se utiliza para enviar una cadena de caracteres de 4 Kbytes como mximo, 120 bytes al puerto de terminal, que debe transmitirse a una conexin de modalidad de caracteres. Para PLC Modicon M340, la funcin PRINT_CHAR se utiliza para enviar una cadena de caracteres de 1.024 bytes como mximo. La cadena de caracteres puede estar contenida en una variable esttica (Ver Unity Pro, Lenguajes y estructura del programa, Manual de referencia, Instancias de tipos de datos) o definida en forma de valor inmediato (serie de bytes entre apstrofes, por ejemplo, 'Mensaje que se va a enviar'). Estas cadenas de caracteres pueden contener caracteres especiales, y deben empezar por el carcter $ seguido del valor hexadecimal del carcter que se va a enviar, por ejemplo $0D. Pueden utilizarse algunos caracteres especiales (Ver Unity Pro, Lenguajes y estructura del programa, Manual de referencia, Tipo de datos elementales (EDT) con formato de cadena de caracteres), como por ejemplo: $R = CR (retorno de carro), $L = LF (salto de lnea), $N = CR+LF. Pueden configurarse los parmetros adicionales EN y ENO. Representacin FBD Representacin:
PRINT_CHAR Address String_to_Send Management_Param ADR EMIS GEST

GEST

Management_Param

204

33002530 07 07/2008

PRINT_CHAR

Representacin LD

Representacin:
PRINT_CHAR EN Address String_to_Send Management_Param ADR EMIS GEST GEST Management_Param ENO

Representacin IL

Representacin: Direccin LD PRINT_CHAR String_to_Send, Management_Param Representacin: PRINT_CHAR(Address, String_to_Send, Management_Param); En la siguiente tabla se describen los parmetros de entrada:
Parmetro Direccin Tipo ARRAY [0...5] OF INT para PLC Premium ARRAY [0...7] OF INT para PLC Modicon M340 Comentario Las instrucciones siguientes slo son vlidas para PLC Premium: La funcin ADDR proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. nicamente las direcciones que acaban en SYS son posibles (por ejemplo: puerto de terminal del procesador 0.0.0.SYS). Las instrucciones siguientes slo son vlidas para PLC Modicon M340: La funcin ADDM proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. La sintaxis de la direccin es del tipo ADDM (r.m.c.node). Asiento es un campo opcional que puede ser SYS o estar vaco (por ejemplo, ADDM(0.0.0.SYS) es igual a ADDM(0.0.0).

Representacin ST Descripcin de parmetros

33002530 07 07/2008

205

PRINT_CHAR

Parmetro String_to_Send

Tipo STRING

Comentario Cadena de caracteres para enviar. Est enclavada en una cadena de caracteres o se proporciona como valor inmediato. Nota: Debe incluirse esta cadena de caracteres, incluso si no existen datos para enviar.

En la tabla siguiente se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo ARRAY [0...3] OF INT Comentario Tabla de palabras utilizada para gestionar el intercambio (vase Estructura de los parmetros de gestin, p. 35). En PLC Modicon M340, existe un nuevo bit de cancelacin disponible en la palabra de rango 1 de la tabla de gestin de intercambio. Este bit de cancelacin se encuentra ubicado en la palabra 1 de rango, que consta de dos bytes: Byte de mayor valor: nmero de intercambio. Byte de menor valor: bit de actividad (rango 0) y bit de cancelacin (rango 1). La EF PRINT_CHAR puede anularse mediante la EF CANCEL, o estableciendo en 1 el bit de cancelacin de la tabla de gestin (Ver Modicon M340 con Unity Pro, Conexin serie, Manual del usuario, Funciones de comunicacin en modalidad de caracteres).

206

33002530 07 07/2008

PRINT_CHAR

Normas de programacin

En la cadena que se va a transmitir, los caracteres especiales van precedidos del carcter $. Los caracteres $ no los transmite el emisor; por lo tanto, no deben confirmarse durante la inicializacin del parmetro de longitud. Los espacios entre dos caracteres se contabilizan con un byte. Del mismo modo, en el ejemplo PRINTING IN PROGRESS$L$R, la longitud de los datos que se van a emitir es de 22 bytes. En PLC Premium, son necesarios varios ciclos de PLC para enviar una cadena de caracteres de ms de 240 bytes (la cadena est fragmentada). Por tanto, es importante asegurarse de que no se modifiquen los datos de gestin durante el procesamiento de la funcin. El sistema transmite la cadena de forma coherente en varios fragmentos, pero no prohbe la transmisin de otra cadena de caracteres entre dos fragmentos. En PLC Modicon M340, es necesario un ciclo de PLC para enviar una cadena de caracteres de una longitud mxima de 1.024 bytes. Por ello, es importante asegurarse de que no se modifiquen los datos de gestin durante el procesamiento de la funcin. El puerto serie del PLC Modicon M340 es dplex completo, por lo que es posible enviar una funcin PRINT_CHAR, incluso si se ha enviado una funcin INPUT_CHAR y todava est pendiente.

Nota: Para enviar cadenas de caracteres que contienen el final de los caracteres de cadena (cero), es necesario: utilizar CADENAS localizadas, inicializar la ltima palabra de la tabla de gestin de intercambio con el nmero de caracteres que deben enviarse. Si inicializa la palabra con el valor 0, la cadena que se enva se detendr en el primer carcter Cero que encuentre. Si inicializa la palabra con un valor, la longitud de la cadena de caracteres enviada ser igual a este valor.

33002530 07 07/2008

207

PRINT_CHAR

Pantalla de entrada asistida


Presentacin
Para esta funcin de comunicacin, puede solicitar la pantalla de entrada asistida. Tenga en cuenta que la pantalla de entrada asistida no est disponible para Modicon M340.

Nota: Los smbolos de variable se aceptan en los diferentes campos de la pantalla.

Ilustracin

La pantalla siguiente muestra un ejemplo de la pantalla de entrada asistida de la funcin:


PRINT_CHAR Parmetros Direccin: Cadena para Variable: Valor:

... ...

Informe:

...
Tipos posibles: Matriz de enteros constantes, matriz de enteros (n>=6) Direccin ADDR(..) Aceptar Cancelar

Direccin

Para PLC Premium, el tipo de objeto posible es el siguiente: ADDR(STRING). ARRAY [0..5] OF INT.

Nota: Si introduce un valor directamente en un campo, el botn de entrada de direccin asistida se vuelve gris.

Cadena para enviar Informe

La cadena que se va a enviar es una variable de tipo STRING o un valor inmediato. En caso de seleccionar una variable de tipo STRING, el campo de valor desaparece.

El informe es una matriz de cuatro enteros, que puede o no localizarse. Nota: Tenga cuidado de no utilizar varias reas de memoria idnticas para las tablas de informes; de lo contrario, la funcin de lectura de variables podra no funcionar.

208

33002530 07 07/2008

PRINT_CHAR

Ejemplo de envo de cadenas de caracteres a travs de la red Fipway


Presentacin Supongamos que desea enviar una cadena de caracteres a un terminal de visualizacin conectado a una conexin integrada del mdulo TSX SCY 21601 de un PLC con una direccin de red de 20, estacin 3. El mdulo TSX SCY 21601 est ubicado en el slot 2 del bastidor base. La tabla de gestin se encuentra en %MW110:4 y la cadena que se va a enviar est ubicada en la variable Str_1.

Ilustracin

Las dos estaciones se conectan a travs de una red Fipway.

TSX Premium

TSX Micro

{20.1} Fipway {20.3}

33002530 07 07/2008

209

PRINT_CHAR

Transmisin

Programacin en ST: SI RE(%I0.3.6) Y NO %MW110.0 ENTONCES PRINT_CHAR(ADDR({20.3}0.2.0.SYS),Str_1,%MW110:4); END_IF; Parmetros de peticin:


Parmetros ADDR({20.3}0.2.0. SYS) Descripcin {20.3}: red 20, estacin 3 0: bastidor 2: mdulo 0: canal 0 SYS: direccin de sistema Cadena de caracteres para enviar, la variable Str_1 es del tipo STRING. Tabla de gestin

Str_1 %MW110:4

Nota: Cada vez que la funcin se inicia, inicialice el parmetro de longitud (en el ejemplo: %MW113) con el valor correspondiente al nmero de caracteres (en bytes) para enviar a Str_1.

210

33002530 07 07/2008

PRINT_CHAR

Ejemplo de envo de cadenas de caracteres mediante la conexin serie de procesadores Modicon M340
Presentacin
Imagine que desea enviar una cadena de caracteres a un terminal de entrada/visualizacin de datos compacto conectado a un puerto serie del procesador Modicon M340. La tabla de gestin se encuentra en %MW110:4 y la tabla que se va a enviar est ubicada en la variable caract.

Ilustracin

Un PLC Modicon M340 est conectado a un terminal de entrada/visualizacin de datos TM8501: BMX P34 2010 Processor

TM8501 Terminal Transmisin


Programacin en ST: SI (%M16) ENTONCES PRINT_CHAR(ADDM(0.0.0),caract,gestion); END_IF;

Parmetros de peticin:
Parmetros ADDM(0.0.0) Descripcin 0: bastidor 0: mdulo 0: canal 0 SYS: direccin del sistema (opcional en los PLC Modicon M340) Cadena de caracteres para enviar, variable caract. Tabla de gestin

caract gestion

Nota: Cada vez que la funcin se inicia, inicialice el parmetro de longitud (por ejemplo: %MW113 si la tabla de gestin est ubicada de %MW110 a %MW113) con el valor correspondiente al nmero de caracteres (en bytes) para enviar a caract.

33002530 07 07/2008

211

PRINT_CHAR

212

33002530 07 07/2008

RCV_TLG: recepcin de telegramas

17

Presentacin
Objetivo Contenido: En este captulo se describe la funcin RCV_TLG. Este captulo contiene los siguiente apartados:
Apartado Descripcin Ejemplo de cmo recibir un telegrama Pgina 214 216

33002530 07 07/2008

213

RCV_TLG

Descripcin
Descripcin de las funciones La funcin RCV_TLG se utiliza para leer datos de tipo telegrama desde una aplicacin remota. Los datos recibidos deben tener una longitud mxima de 16 bytes. Al contrario que las otras funciones de comunicacin, esta funcin de procesa inmediatamente (sincronizada). Por tanto, no hay bit de actividad ni parmetros de timeout. Como consecuencia de esto, la tabla de enteros asignada a los parmetros de gestin utiliza solo dos palabras en lugar de cuatro (los nmeros de intercambio y timeout no son necesarios). Nota: Esta funcin puede utilizarse en Fipway en el procesador nicamente, y para las estaciones 0 a 15. Se pueden configurar los parmetros adicionales EN y ENO. Representacin FBD Representacin:
RCV_TLG ADR RECP GEST Address Received_Data Management_Param

Management_Param

GEST

Representacin LD

Representacin:
RCV_TLG EN ENO ADR RECP Management_Param GEST GEST Address Received_Data Management_Param

214

33002530 07 07/2008

RCV_TLG

Representacin IL

Representacin: LD Management_Param RCV_TLG Address, Received_Data Representacin: RCV_TLG(Management_Param, Address, Received_Data); En la tabla siguiente se describen los parmetros de entrada/salida:
Parmetro Management_Param Tipo ARRAY [0.. 1] OF INT Comentario Tabla de palabras utilizadas para gestionar el intercambio. Esta tabla est compuesta de 2 palabras: la palabra del informe y la palabra que indica la cantidad de datos recibidos (en nmero de bytes). El informe incluye: el informe de funcionamiento (byte de mayor valor de la primera palabra), el informe de comunicacin (byte de menor valor de la primera palabra). El informe de comunicacin utiliza uno de los valores siguientes: 16#00 : intercambio correcto, 16#05 : parmetros de gestin incorrectos, 16#06 : parmetros especficos incorrectos, 16#09 : tamao del bfer de recepcin insuficiente, 16#0B: sin recursos de sistema, 16#0D: no se ha recibido ningn telegrama, 16#10 : mdulo de red ausente, 16#0F: servicio de telegrama sin configurar.

Representacin ST Descripcin de parmetros

En la tabla siguiente, se describen los parmetros de salida:


Parmetro Direccin Tipo INT Comentario Direccin de la entidad que transmite el telegrama al final del intercambio. El byte de menor valor corresponde al nmero de red hexadecimal. El byte de mayor valor corresponde al nmero de estacin hexadecimal. Bfer de recepcin. Tabla de enteros que contiene los datos recibidos. Esta tabla debe tener una longitud mxima de 8 enteros (16 bytes). 215

Received_Data

ARRAY [n... m] OF INT

33002530 07 07/2008

RCV_TLG

Ejemplo de cmo recibir un telegrama


Presentacin Supongamos que desea recibir un telegrama de ocho palabras (16 bytes) de una aplicacin remota en una red Fipway. Las dos estaciones se conectan a travs de una red Fipway.
TSX Premium TSX Micro

Ilustracin

{20.3} Fipway {20.1}

Programacin

Programacin en ST: SI RE(%I0.3.11) ENTONCES RCV_TLG(%MW200:2, %MW300,%MW310:8); END_IF;

Parmetros de peticin:
Parmetros %MW200:2 %MW300 %MW310:8 Descripcin Tabla de gestin Contiene la direccin del remitente al final del intercambio Contenido del telegrama recibido

Nota: Cuando una funcin RCV_TLG se programa en una tarea de eventos, no se puede utilizar en las tareas MAST o FAST. Para ejecutar esta funcin de forma sincronizada, es necesario comprobar el informe de funcionamiento inmediatamente despus de la lnea del programa que activa la ejecucin de esta funcin.

216

33002530 07 07/2008

READ_ASYN: lectura asncrona de datos

18

Descripcin
Descripcin de la funcin La funcin READ_ASYN permite leer 1 Kbyte de datos por el canal de mensajera asincrnica de los acopladores TSX ETY en modo TCP/IP. Los datos a los que se puede acceder en lectura son los siguientes: Bits internos y palabras internas. La lectura asincrnica slo se puede llevar a cabo entre dos estaciones del mismo segmento de red Ethernet TCP/IP. La funcin READ_ASYN se emite al final de la tarea MAST, nicamente si sta se encuentra configurada en modo peridico. Es posible activar ocho funciones al mismo tiempo. El principio de funcionamiento es idntico al de la funcin WRITE_ASYN (vase Principio de los intercambios, p. 292). El tamao de los bferes de emisin y de recepcin se expresa en palabras. Es de 512 palabras, es decir, 1024 bytes. Nota: La funcin de servidor asincrnico es compatible con los protocolos UNI-TE V2.0 o V1. La funcin READ_ASYN utiliza el protocolo UNI-TE V2.0. Los parmetros adicionales EN y ENO se pueden configurar.

33002530 07 07/2008

217

READ_ASYN

Representacin en FBD

Representacin:
READ_ASYN Address Object_Type First_Object Object_Number Management_Param ADR OBJ NUM NB GEST RECP Receiving_Array

GEST

Management_Param

Representacin en LD

Representacin:
READ_ASYN EN Address Object_Type First_Object Object_Number Management_Param ADR OBJ NUM NB GEST GEST Management_Param ENO RECP Receiving_Array

Representacin en IL

Representacin: LD Address READ_ASYN Object_Type, First_Object, Object_Number, Management_Param, Receiving_Array Representacin: READ_ASYN(Address, Object_Type, First_Object, Object_Number, Management_Param, Receiving_Array);

Representacin en ST

218

33002530 07 07/2008

READ_ASYN

Descripcin de los parmetros

En la siguiente tabla se describen los parmetros de entrada:


Parmetro Address Tipo ARRAY [0.. 5] OF INT CADENA DE CARACTERES Comentario Direccin de la entidad de destino del intercambio. Las direcciones son de tipo: ADDR({Red.Estacin}SYS. Tipo de objetos que se van a leer: %M: bits internos, %MW: palabras internas, %S: bits de sistema y %SW: palabras de sistema. ndice del primer objeto que se va a leer: Nmero de objetos que se van a leer.

Object_Type

First_Object Object_Number

DINT INT

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo ARRAY [0.. 3] OF INT Comentario Tabla de gestin del intercambio (vase Estructura de los parmetros de gestin, p. 35)

En la siguiente tabla se describen los parmetros de salida:


Parmetro Receiving_Array Tipo ARRAY [n... m] OF INT Comentario Tabla de palabras que contiene el valor de los objetos ledos.

33002530 07 07/2008

219

READ_ASYN

220

33002530 07 07/2008

READ_GDATA: lectura de datos globales Modbus Plus

19

Descripcin
Descripcin de la funcin La funcin READ_GDATA permite leer los datos compartidos, llamados tambin datos globales en una red Modbus Plus. Los datos globales se comparten entre un mximo de 64 estaciones de una misma red Modbus Plus. Cada estacin puede escribir hasta 32 enteros que pueden utilizar todas las estaciones de la red. A su vez, cada estacin puede leer los 32 (como mximo) enteros de cada estacin de la red. Los parmetros adicionales EN y ENO se pueden configurar. Representacin en FBD Representacin:
READ_GDATA Address Management_Param ADR GEST RECP GEST Receiving_Array Management_Param

Representacin en LD

Representacin:
READ_GDATA EN Address Management_Param ADR GEST ENO RECP GEST Receiving_Array Management_Param

33002530 07 07/2008

221

READ_GDATA

Representacin en IL

Representacin: LD Address READ_GDATA Management_Param, Receiving_Array Representacin: READ_GDATA (Address, Management_Param, Receiving_Array); En la siguiente tabla se describen los parmetros de entrada:
Parmetro Address Tipo ARRAY [0.. 5] OF INT Comentario Direccin de la entidad de destino del intercambio. Esta direccin se inicializa, antes del intercambio, con el valor del nodo al que se conecta la estacin cuyos datos globales se desean conocer. Ejemplo de direccin: ADDR(0.0.1.10) corresponde a la estacin conectada al nodo 10 de la red. Las tres primeras cifras, 0.0.1, corresponden a la direccin de la va, tarjeta PCMCIA Modbus Plus de Premium.

Representacin en ST Descripcin de los parmetros

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo ARRAY [0.. 3] OF INT Comentario Tabla de gestin del intercambio (vase Estructura de los parmetros de gestin, p. 35). No es necesario inicializar el parmetro de longitud antes del inicio del intercambio. Al finalizar este intercambio, el parmetro de longitud (la cuarta palabra) contiene el nmero de bytes de los que constan los datos generados por la estacin especificada en la direccin.

En la siguiente tabla se describen los parmetros de salida:


Parmetro Receiving_Array Tipo ARRAY [n... m] OF INT Comentario Tabla de palabras que contiene el valor de los objetos ledos.

222

33002530 07 07/2008

READ_REG: lectura de registro

20
Descripcin general
Introduccin Contenido: En este captulo se describe el bloque READ_REG. Este captulo contiene los siguiente apartados:
Apartado Descripcin Tipos de datos derivados Modo de funcionamiento Descripcin de los parmetros Pgina 224 227 228 229

33002530 07 07/2008

223

READ_REG:

Descripcin
Descripcin de funciones Con cada flanco ascendente en la entrada REQ, este bloque de funcin lee un rea de registro de un slave direccionado a travs de Modbus Plus, Ethernet TCP/IP o Ethernet SY/MAX. Nota: Para programar la funcin READ_REG debe conocer los procedimientos de acceso utilizados en la red. La descripcin detallada de las estructuras de ruta de acceso Modbus Plus se encuentra en "Modbus Plus Network Planning and Installation Guide". En el caso de que se implemente la ruta de acceso de Ethernet TCP/IP o SY/MAX, se debern utilizar los productos estndar de ruta de acceso de Ethernet-IP. La descripcin detallada de las rutas de acceso TCP/IP figura en el "Manual de usuario sobre la configuracin de Quantum con Unity Pro TCP/IP".

Nota: En el programa puede utilizar diversos ejemplares de este bloque de funcin. No obstante, no es posible instanciar estos ejemplares de forma mltiple. Como parmetros adicionales se pueden configurar EN y ENO. Representacin en FBD Representacin:
READ_REG_Instance READ_REG StartReadOnce OffsetAddress NumberOfRegisters DataStructure REQ SLAVEREG NO_REG ADDRFLD NDR ERROR REG_READ STATUS SetAfterReadingNewData SetInCaseOfError RegisterToRead ErrorCode

224

33002530 07 07/2008

READ_REG:

Representacin en LD

Representacin:
READ_REG_Instance READ_REG EN StartReadOnce REQ OffsetAddress NumberOfRegisters DataStructure SLAVEREG NO_REG ADDRFLD NDR SetInCaseOfError ERROR REG_READ STATUS RegisterToRead ErrorCode ENO SetAfterReadingNewData

Representacin en IL

Representacin: CAL READ_REG_Instance (REQ:=StartReadOnce, SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, ADDRFLD:=DataStructure, NDR=>SetAfterReadingNewData, ERROR=>SetInCaseOfError, REG_READ=>RegisterToRead, STATUS=>ErrorCode) Representacin: READ_REG_Instance (REQ:=StartReadOnce, SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, ADDRFLD:=DataStructure, NDR=>SetAfterReadingNewData, ERROR=>SetInCaseOfError, REG_READ=>RegisterToRead, STATUS=>ErrorCode) ;

Representacin en ST

33002530 07 07/2008

225

READ_REG:

Descripcin de los parmetros

Descripcin de los parmetros de entrada


Parmetro REQ Tipo de datos BOOL Significado Con cada flanco ascendente en la entrada REQ, este bloque de funcin lee un rea de registro de un slave direccionado a travs de Modbus Plus, Ethernet TCP/IP o Ethernet SY/MAX. Direccin de la primera direccin %MW en el slave desde el que se debe leer. Nmero de direcciones que se deben leer desde el slave. Estructura de datos para la descripcin de la direccin Modbus Plus, TCP/IP o SY/MAX-IP.

SLAVEREG NO_REG ADDRFLD

DINT INT WordArr5

Descripcin de los parmetros de salida


Parmetro NDR ERROR STATUS Tipo de datos BOOL BOOL WORD Significado Ajustado a "1" durante un ciclo cuando se han ledo datos nuevos. Ajustado a "1" durante un ciclo cuando se produce un error. En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145 Datos que se van a leer. (Se debe declarar una estructura de datos como Located Variable para los datos que se van a leer).

REG_READ

ANY

Error de ejecucin

Para obtener una lista de todos los cdigos y los valores de error del mdulo, consulte Extendido, p. 406.

226

33002530 07 07/2008

READ_REG:

Tipos de datos derivados


Descripcin de elementos para WordArr5 en Modbus Plus Descripcin de elementos para WordArr5 en Modbus Plus:
Elemento Tipo de datos Descripcin
Byte de menor valor: El registro de rutas de acceso 1 se utiliza para la especificacin (direcciones de rutas de acceso de uno a cinco) del asiento durante la transferencia mediante red. El ltimo byte de la ruta de acceso distinto de cero es el asiento de destino. Byte de mayor valor: Slot del mdulo del adaptador de red (NOM), si existe. Registro de rutas de acceso 2 Registro de rutas de acceso 3 Registro de rutas de acceso 4 Registro de rutas de acceso 5

WordArr5[1] WORD

WordArr5[2] WORD WordArr5[3] WORD WordArr5[4] WORD WordArr5[5] WORD

Descripcin de elementos para WordArr5 con TCP/IP Ethernet

Descripcin de elementos para WordArr5 con TCP/IP Ethernet


Elemento Tipo de datos Descripcin
Byte de menor valor: MBP en el ndice de asignacin Ethernet Transporter (MET) Byte de mayor valor: Slot del mdulo NOE (16#FE si Ethernet est integrada en la CPU) Byte 4 (MSB) de la direccin IP de 32 bits de destino Byte 3 (MSB) de la direccin IP de 32 bits de destino Byte 2 (MSB) de la direccin IP de 32 bits de destino Byte 1 (LSB) de la direccin IP de 32 bits de destino

WordArr5[1] WORD

WordArr5[2] WORD WordArr5[3] WORD WordArr5[4] WORD WordArr5[5] WORD

Descripcin de elementos para WordArr5 con SY/MAX Ethernet

Descripcin de elementos para WordArr5 con SY/MAX Ethernet:


Elemento Tipo de datos Descripcin
Byte de menor valor: MBP en el ndice de asignacin Ethernet Transporter (MET) Byte de mayor valor: Slot del mdulo NOE Nmero de estacin de destino (o fijar en FF hex) Terminador (fijado en FF hex) Sin significado

WordArr5[1] WORD

WordArr5[2] WORD WordArr5[3] WORD WordArr5[4] WORD WordArr5[5] WORD

Sin significado

33002530 07 07/2008

227

READ_REG:

Modo de funcionamiento
Modo de funcionamiento de los bloques READ_REG Se puede programar un gran nmero de bloques de funcin READ_REG, pero solamente pueden estar activas cuatro operaciones de lectura al mismo tiempo. En este caso, no tiene importancia si dichas operaciones se realizan por medio de este bloque de funcin u otros (p. ej. MBP_MSTR o CREAD_REG). Todos los bloques de funcin emplean una ruta de transaccin de datos y necesitan varios ciclos para completar una orden. Nota: La comunicacin TCP/IP entre un autmata Quantum (NOE 211 00) y un autmata Momentum (todas las CPU TCP/IP y todos los mdulos de E/S TCP/IP) slo es posible cuando en cada ciclo del autmata nicamente se lleva a cabo una orden de escritura o de lectura. Si se envan varias rdenes por cada ciclo del autmata, la comunicacin permanece estancada, sin generar ningn mensaje de error en el registro de estado del bloque de funcin. La informacin de acceso completa est incluida en la estructura de datos WordArr5 de la entrada ADDRFLD. El tipo del bloque de funcin conectado a esta entrada se orienta de acuerdo con la red utilizada. Utilice: El bloque de funcin ModbusP_ADDR para Modbus Plus. El bloque de funcin TCP_IP_ADDR para Ethernet TCP/IP. El bloque de funcin SYMAX_IP_ADDR para Ethernet SY/MAX.

Nota: La estructura de datos WordArr5 tambin se puede utilizar con constantes.

228

33002530 07 07/2008

READ_REG:

Descripcin de los parmetros


REQ Un flanco ascendente inicia la transaccin de lectura. El parmetro se puede indicar como direccin directa, Located Variable, Unlocated Variable o literal. SLAVEREG Principio del rea en el slave direccionado en la que se leen los datos de origen. El rea de origen se encuentra siempre dentro del rea del rango de direcciones %MW. Nota: Para slaves de un PLC que no sea Unity Pro: El rea de origen se encuentra siempre dentro del rea de registro 4x. SLAVEREG espera la direccin de origen como offset dentro del rea 4x. El "4" de la izquierda no se tiene en cuenta (p. ej. 59 (contenido de las variables o valor del literal) = 40059). El parmetro se puede indicar como direccin directa, Located Variable, Unlocated Variable o literal.

NO_REG

Nmero de direcciones que se deben leer desde el slave direccionado (1 a 100). El parmetro se puede indicar como direccin directa, Located Variable, Unlocated Variable o literal.

NDR

La transicin a estado ON durante un ciclo de programa implica la recepcin datos nuevos que estn dispuestos para ser procesados. El parmetro se puede indicar como direccin directa, Located Variable o Unlocated Variable.

ERROR

La transicin a estado ON durante un ciclo de programa implica que se ha descubierto un nuevo error. El parmetro se puede indicar como direccin directa, Located Variable o Unlocated Variable.

REG_READ

Para este parmetro se debe definir una matriz (ARRAY) del tamao del envo requerido ( NO_REG). El nombre de esta matriz se transferir como parmetro. Si se define una matriz demasiado pequea, slo se transferir la cantidad de datos que tenga cabida en la matriz. El parmetro se debe indicar como Located Variable.

33002530 07 07/2008

229

READ_REG:

STATUS

En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145 El parmetro se puede indicar como direccin, Located variable o Unlocated variable.

230

33002530 07 07/2008

READ_VAR: lectura de variables

21
Presentacin
Objetivo Contenido: En este captulo se describe la funcin de comunicacin READ_VAR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Pantalla de entrada asistida Ejemplo de utilizacin en un bus Uni-Telway Ejemplo de bits de lectura Ejemplo de uso en una red Ejemplo de lectura de palabras a travs de la conexin serie de procesadores Modicon M340 Ejemplo de comprobacin de ejecucin Pgina 232 237 239 241 243 245 247

33002530 07 07/2008

231

READ_VAR

Descripcin
Descripcin de la funcin La funcin READ_VAR se utiliza para leer el valor de uno o ms objetos de lenguaje: Bits internos Palabras internas Los objetos de lectura deben ser siempre consecutivos. Pueden estar ubicados en una CPU remota o en un dispositivo conectado a un canal de comunicacin. En los PLC Modicon M340, la funcin READ_VAR puede leer hasta 2000 bits consecutivos en un dispositivo remoto. En los PLC Premium, la funcin READ_VAR puede leer hasta 1000 bits consecutivos en un dispositivo remoto, independientemente del dispositivo o del protocolo utilizado (Uni-Telway o Modbus/Jbus). Nota: Slo en el caso de los PLC Premium, la lectura de ms de 1000 bits requiere el uso de la funcin SEND_REQ.

ADVERTENCIA
Compatibilidad de datos intercambiados Las alineaciones de la estructura de datos no son las mismas para Premium/ Quantum y M340, as que compruebe que los datos intercambiados son compatibles. Consulte las reglas de asignacin en la pgina de reglas de asignacin DDT (Ver Unity Pro, Lenguajes y estructura del programa, Manual de referencia, DDT: Normas de asignacin). Si no se siguen estas instrucciones pueden producirse lesiones personales graves o mortales o daos en el equipo. Se pueden configurar los parmetros adicionales EN y ENO.

232

33002530 07 07/2008

READ_VAR

Representacin en FBD

Representacin:
READ_VAR Address Object_Type First_Object Object_Number Management_Param ADR OBJ NUM NB GEST RECP Receiving_Array

GEST

Management_Param

Representacin en LD

Representacin:
READ_VAR EN Address Object_Type First_Object Object_Number Management_Param ADR OBJ NUM NB GEST GEST Management_Param ENO RECP Receiving_Array

Representacin en IL

Representacin: LD Address READ_VAR Object_Type, First_Object, Object_Number, Management_Param, Receiving_Array Representacin: READ_VAR(Address, Object_Type, First_Object, Object_Number, Management_Param, Receiving_Array);

Representacin en ST

33002530 07 07/2008

233

READ_VAR

Descripcin de parmetros

En la siguiente tabla se describen los parmetros de entrada:


Parmetro Address Tipo Comentario

ARRAY [0.. 5] OF Las instrucciones siguientes slo son vlidas para INT para Premium PLC Premium: La funcin ADDR proporciona la direccin del ARRAY [0.. 7] OF canal de recepcin del mensaje en modalidad INT para de caracteres. Modicon M340 Direccin de la entidad de destino del intercambio. Las direcciones siguientes estn prohibidas: {Red.Estacin}APP, {Red.Estacin}APP.nm. Las instrucciones siguientes slo son vlidas para PLC Modicon M340: La funcin ADDM proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. La sintaxis de la direccin es del tipo ADDM ('r.m.c.nodo').

Object_Type

STRING

Tipo de objetos de lectura para PLC Premium: %M: Bits internos %MW: Palabras internas %S: Bits de sistema %SW: Palabras de sistema Tipo de objetos de lectura para PLC Modicon M340: %M: Bits internos %MW: Palabras internas

First_Object

DINT

ndice del primer objeto que se va a leer. Nmero de objetos que se van a leer.

Object_Number INT

234

33002530 07 07/2008

READ_VAR

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo ARRAY [0.. 3] OF INT Comentario
Tabla de gestin de intercambio (vase Estructura de los parmetros de gestin, p. 35) En los PLC Modicon M340, existe un nuevo bit de cancelacin disponible en la palabra de rango 1 de la tabla de gestin de intercambio. Este bit de cancelacin se encuentra ubicado en la palabra de rango 1, que consta de 2 bytes: Byte ms significativo: Nmero de intercambio Byte menos significativo: Bit de actividad (rango 0) y bit de cancelacin (rango 1) La EF READ_VAR puede anularse con CANCEL EF o estableciendo en 1 el bit de cancelacin de la tabla de gestin (Ver Modicon M340 con Unity Pro, Conexin serie, Manual del usuario, Servicios admitidos por un procesador maestro de conexin Modbus).

En la siguiente tabla se describen los parmetros de salida:


Parmetro Receiving_Array Tipo ARRAY [n... m] OF INT Comentario Tabla de palabras que contiene el valor de los objetos ledos.

Normas de uso

Los tipos de objetos deben introducirse de forma coherente. Las entradas deben escribirse todas en minsculas o en maysculas; de lo contrario, la funcin devuelve un informe igual a 16#06 (parmetros especficos incorrectos). En el caso de los PLC Micro, Premium o Atrium que reciben la funcin READ_VAR, el acceso de slo lectura a los bits internos tiene las particularidades siguientes: El valor de forzado de los bits se devuelve en la respuesta. Como consecuencia, la lectura de un bit constituye dos bytes de respuesta: El primero contiene el valor de los 8 bits desde el bit solicitado. El segundo indica si dichos bits se han forzado. Para leer uno de los ltimos 8 bits de la memoria, es necesario leerlos todos ya que, de lo contrario, la funcin devuelve un informe de operacin 16#01. Esta particularidad se presenta tambin en los PLC Modicon M340.

Nota: Se debe reservar espacio para los bytes de indicacin de forzado en la tabla de recepcin; de lo contrario, se enviar en el informe un cdigo de error 16#03.

Nota: En el caso de los PLC Modicon M340, las funciones READ_VAR y WRITE_VAR no pueden acceder a los bits forzados, ya que el protocolo Modbus no admite esta accin.
33002530 07 07/2008

235

READ_VAR

Transacciones simultneas
Configuracin

En la tabla siguiente se detallan las capacidades de cada canal de comunicacin para procesar transacciones de forma simultnea, de acuerdo con las distintas configuraciones de los PLC Micro y Premium.
Micro TSX 57 10 TSX 57 20 TSX 57 23/30/40/ TSX 57 46/56 45/55, PCX 57, PMX 57 4 8 1 1 4 6 8 1 8 10 8 4 16 8 8 8 1 4 6 8 1 8 10 8 4 16 64

Puerto de terminal maestro Uni-Telway Conexin PCMCIA o SCY maestro UniTelway Puerto de terminal esclavo cliente UniTelway Conexin PCMCIA o SCY esclava cliente Uni-Telway

4 1 4 1

4 8 1 1 4 6 8 1 8 10 8 4 16 -

4 8 1 1 4 6 8 1 8 10 8 4 16 -

Puerto de terminal esclavo servidor Uni- 4 Telway Conexin PCMCIA o SCY esclava servidor Uni-Telway Puerto de terminal Modbus Conexin PCMCIA o SCY Modbus Modalidad de caracteres, bloque de terminales 4 4 4 1

Conexin PCMCIA o SCY de modalidad 4 de caracteres PCMCIA CANopen Conexin PCMCIA o SCY Fipway Modbus Plus Ethernet Ethernet incorporado 4 4 -

En la tabla siguiente se detallan las capacidades de cada canal de comunicacin para procesar transacciones de forma simultnea, de acuerdo con las distintas configuraciones de los PLC Modicon M340.
Configuracin CANopen incorporado Ethernet incorporado Puerto serie maestro Modbus BMX P34 1000 8 BMX P34 2000 16 BMX P34 2010 16 16 BMX P34 2020 16 16 BMX P34 2030 16 16 -

236

33002530 07 07/2008

READ_VAR

Pantalla de entrada asistida


Presentacin Para esta funcin de comunicacin, puede solicitar la pantalla de entrada asistida. Tenga en cuenta que la pantalla de entrada asistida no est disponible para Modicon M340. Nota: Los smbolos de variable se aceptan en los diferentes campos de la pantalla.

Ilustracin

La pantalla siguiente muestra un ejemplo de la pantalla de entrada asistida de la funcin:


READ_VAR Parmetros Direccin: Tipo de objeto para leer: Direccin del primer objeto para leer: Nmero de objetos consecutivos para leer: rea de recepcin: Informe:

... ... ... ... ...

Tipos posibles: Matriz de enteros constantes, matriz de enteros (n>=6) Direccin ADDR(..) Aceptar Cancelar

Direccin

Para PLC Premium, el tipo de objeto posible es el siguiente: ADDR(STRING). ARRAY [0..5] OF INT.

Nota: Si introduce un valor directamente en un campo, el botn de entrada de direccin asistida se vuelve gris.

33002530 07 07/2008

237

READ_VAR

Tipo de objeto para leer

Para PLC Premium, las opciones posibles son las siguientes: %M para la lectura de bits internos. %MW para la lectura de bits internos. %S para la lectura de bits internos. %SW para la lectura de bits internos. Para PLC Modicon M340, las opciones posibles son las siguientes: %M para la lectura de bits internos. %MW para la lectura de bits internos.

Nota: Basta con seleccionar la solucin que desee en el men desplegable.

Direccin del primer objeto para leer

Los objetos posibles son de tipo DINT: variables, constantes, valor inmediato.

Nota: Si introduce una constante, aparecer un campo de entrada para ello. Si introduce una variable, sta puede o no localizarse.

Nmero de objetos consecutivos para leer

Los objetos posibles son del tipo INT: variables, constantes, valor inmediato.

Nota: Si introduce una constante, aparecer un campo de entrada para ello. Si introduce una variable, sta puede o no localizarse.

rea de recepcin Informe

El rea de recepcin es una matriz de enteros. El tamao de la matriz depende del nmero de objetos que deben leerse. Esta matriz de enteros puede o no localizarse. El informe es una matriz de 4 enteros. Nota: Tenga cuidado de no utilizar varias reas de memoria idnticas para las tablas de informes; de lo contrario, la funcin de lectura de variables podra no funcionar.

238

33002530 07 07/2008

READ_VAR

Ejemplo de utilizacin en un bus Uni-Telway


Presentacin El PLC maestro debe leer las palabras internas de %MW100 a %MW109 de la estacin de direccin 6 de un bus Uni-Telway. Los valores de las palabras ledas se clasifican en funcin de la palabra interna %MW10, y los parmetros de gestin se almacenan en funcin de %MW40. Ambas estaciones estn conectadas mediante un bus Uni-Telway.
Maestro Premium Esclavo

Ilustracin

Ad0 = 6 Uni-Telway

Programacin

Programacin en LD:
%I0.3.0 %MW40.0 EN READ_VAR ENO

ADDR EN 0.0.0.6 IN ENO OUT %MW 100 10 %MW40:4 ADR OBJ NUM NB GEST GEST %MW40:4 RECP %MW10:10

33002530 07 07/2008

239

READ_VAR

Parmetros de peticin:
Parmetros 0.0.0.6 Descripcin 0: bastidor 0: mdulo 0: canal 0 6: direccin de destino Tipo de objeto (palabra interna) Direccin del primer objeto Nmero de objetos consecutivos Informe Contenido de la respuesta

%MW 100 10 %MW40:4 %MW10:10

240

33002530 07 07/2008

READ_VAR

Ejemplo de bits de lectura


Presentacin En PLC Modicon M340, las funciones READ_VAR y WRITE_VAR no pueden acceder a los bits forzados, ya que el protocolo Modbus no admite esta accin. Por lo tanto, las instrucciones siguientes sobre bits forzados no pueden aplicarse a PLC Modicon M340. Los ejemplos siguientes ilustran la funcin de comunicacin READ_VAR para la lectura de bits. En este caso, la tabla de recepcin contiene de forma consecutiva el valor de los bits, as como la indicacin de forzado.

Lectura de 32 bits internos

En ST, la sintaxis de la funcin de lectura de bits internos se presenta del modo siguiente: READ_VAR (ADDR({20.1}0.5.1.3),%M, 0, 32, %MW100:4, %MW50:4); La tabla de recepcin debe incluir ocho bytes (cuatro palabras), cuatro bytes para el valor y cuatro bytes para la indicacin de forzado.
Palabra Valor %MW100 %MW101 Forzado %MW102 %MW103 Byte 3 0000 1111 0000 0000 Byte 2 0000 1111 0000 0000 Byte 1 1100 0000 0101 0000 Byte 0 1100 1111 0101 1111

Es posible llevar a cabo el forzado de cada bit %MW102 o %MW103 establecido en 1; el valor de forzado corresponder a la lectura de bits. Ejemplo:
Valor de los primeros cuatro bits (byte 0 de la palabra %MW100) 0 0 1 1 Forzado de los primeros cuatro bits (byte 0 de la palabra %MW102) 1 0 1 0 Descripcin

El bit se fuerza a 0. El bit no se fuerza. El bit se fuerza a 1. El bit no se fuerza.

33002530 07 07/2008

241

READ_VAR

Lectura de 18 bits internos

En ST, la sintaxis de la funcin de lectura de bits internos se presenta del modo siguiente: READ_VAR (ADDR({20.1}0.5.1.3),%M, 0, 18, %MW100:3, %MW50:4); La tabla de recepcin debe contener tres palabras (o seis bytes). De hecho, para obtener el valor de los 18 bits, son necesarios tres bytes ms tres bytes adicionales, con el fin de contener el valor de forzado de los 18 bits.
Valor del bit 14. Valor del 1er bit

%MW100

0000

0000

1111

1111

%MW101

0000

0000

0000

1111

%MW102

0000

1111

0000

0000

Nota de forzado 1er bit

Nota de forzado Bit 14.

242

33002530 07 07/2008

READ_VAR

Ejemplo de uso en una red


Presentacin La estacin 2 de la red 20 debe leer una tabla de cinco palabras de %MW0 a %MW4 del esclavo Uni-Telway, direccin de red 20, estacin 1, mdulo de comunicacin TSX SCM 2116 en el slot 5, canal 1 del mdulo de comunicacin, direccin de servidor Ad0 = 3. Las dos estaciones se conectan a travs de una red Fipway.
Red Fipway 20 TSX 87 Premium

Ilustracin

{20.2} {20.1} Uni-Telway

Ad0 = 3

Ad0 = 1

33002530 07 07/2008

243

READ_VAR

Programacin

Programacin en LD:
%I0.3.1 %MW50.0 EN READ_VAR ENO

ADDR EN {20.1}0.5.1.3 IN ENO OUT %MW 0 5 %MW50:4 ADR OBJ NUM NB GEST GEST %M50:4 RECP %MW20:5

Parmetros de peticin:
Parmetros ADDR({20.1}0.5.1.3) Descripcin {20.1} : red 20, estacin 1 0 : bastidor 5 : mdulo 1 : canal 1 3 : lectura de la direccin del esclavo de destino Tipo de objeto (palabra interna) Direccin del primer objeto Nmero de objetos consecutivos Tabla de gestin Contenido de la respuesta

%MW 0 5 %MW50:4 %MW20:5

244

33002530 07 07/2008

READ_VAR

Ejemplo de lectura de palabras a travs de la conexin serie de procesadores Modicon M340


Presentacin El ejemplo utiliza dos procesadores Modicon M340 que se comunican a travs de la conexin serie Modbus. El PLC maestro Modbus debe leer las palabras internas de %MW100 a %MW109 del PLC esclavo Modbus. Los valores de las palabras que se leen se clasifican en base a la palabra interna %MW10. El ejemplo siguiente utiliza variables no ubicadas y abarca la recepcin de datos en una tabla de 10 palabras no ubicadas Tab_recp (declarada como una MATRIZ [0..9] DE INT). Los parmetros de gestin estn ubicados en una tabla de cuatro enteros llamados Management_Parameter (declarados como MATRIZ [0..3] DE INT). En dicho ejemplo, el nmero de esclavos Modbus es 7, as que el parmetro ADDM de entrada es 0.0.0.7: 0: nmero de bastidor del procesador igual a 0 0: nmero de slot del procesador dentro del bastidor, igual a 0 ya que el nmero de slot de un procesador Modicon M340 es siempre 0 0: nmero de canal, igual a 0, ya que la conexin serie de un procesador Modicon M340 es siempre el canal 0 7: el nmero de esclavo configurado es 7. Ilustracin Los dos procesadores Modicon 340 estn conectados a travs de una conexin Modbus:

Descripcin del ejemplo

Maestro Modbus Procesador BMX P34 2010

Cable VW3 A8 306 R30

Esclavo Modbus Procesador BMX P34 2010

33002530 07 07/2008

245

READ_VAR

Programacin

Programacin en LD:
%I0.3.0 %MW40.0 EN READ_VAR ENO

ADDM EN 0.0.0.7 IN ENO OUT %MW 100 10 Management_parameter ADR OBJ NUM NB GEST GEST Management_parameter RECP Tab_recp

Los parmetros de solicitud son los siguientes:


Parmetros ADDM(0.0.0.7) Descripcin 0: nmero de bastidor del procesador esclavo 0: nmero de slot del procesador esclavo 0: nmero de canal (nmero del puerto serie) 7: nmero de esclavo configurado Tipo de objeto (palabra interna) Direccin del primer objeto para leer Nmero de objetos consecutivos para leer Contenido de la respuesta Tabla de gestin

%MW 100 10 Tab_recp Management_Parameter

246

33002530 07 07/2008

READ_VAR

Ejemplo de comprobacin de ejecucin


Presentacin El ejemplo siguiente ilustra la funcin READ_VAR con una comprobacin de parmetro de gestin. Programacin en ST: SI NO %M21 Y %I0.1.2 ENTONCES %MW210:4 := 0; %MW212 := 50; READ_VAR(ADDR(0.3.1.7),%MW,20,1,%MW210:4,%MW1701:1); SET %M21; END_IF; El bit de entrada %I0.1.2 controla la funcin. El bit de Internet %M21 se utiliza para comprobar la actividad de la funcin. %MW210:4 := 0; inicializa la tabla de gestin en 0. MW212 := 50; inicializa el valor de timeout en 5 segundos.

Programacin de la funcin

Nota: READ_VAR(ADDM(0.3.1.7),%MW,20,1,%MW210:4,%MW1701:1); La sintaxis debe utilizarse para PLC Modicon M340, ya que la funcin ADDR no puede ser utilizada por un PLC Modicon M340.

33002530 07 07/2008

247

READ_VAR

Programacin de la comprobacin de intercambio

Programacin en ST: SI %M21 Y NO %M210.0 ENTONCES INC %MW214; IF %MW211 = 0 THEN INC %MW215; ELSE SET %Q0.2.2; INC %MW216; %MW217 := %MW211; END_IF; END_IF; %MW214 contabiliza el nmero de intercambios. %MW215 contabiliza el nmero de intercambios correctos. %MW216 contabiliza el nmero de intercambios que generan errores. %MW217 almacena el mensaje de error. %Q0.2.2 indica un fallo de intercambio.

248

33002530 07 07/2008

SEND_EMAIL: Envo de un correo electrnico

22

Send_Email
Descripcin de la funcin La funcin SEND_EMAIL se utiliza para enviar un correo electrnico a travs del puerto Ethernet de la CPU de un PLC M340. El servicio SEND_EMAIL est limitado al puerto Ethernet integrado. Un mdulo NOE no puede llevar a cabo esta funcin. Nota: Para que el servicio SEND_EMAIL funcione correctamente, primero es necesario configurar en el software Unity Pro la direccin IP del servidor SMTP y los destinos de correo electrnico utilizados.

Representacin en FBD

Representacin:
SEND_EMAIL Address Header key of email to send Email dynamic subject string Email body string Management_Param ADR HEAD KEY SUBJ STR BODY STR GEST GEST Management_Param

33002530 07 07/2008

249

Send_Email

Representacin en LD

Representacin:
SEND_EMAIL EN Address Header key of email to send Email dynamic subject string Email body string Management_Param ADR HEAD KEY SUBJ STR BODY STR Management_Param ENO

GEST

GEST

Representacin en ST Descripcin de parmetros

SEND_EMAIL (ADR, HEAD_KEY, SUBJ_STR, BODY_STR, ManagWords);

En la siguiente tabla, se describen los parmetros de entrada:


Parmetro ADR Tipo ARRAY [0.. 7] OF INT Descripcin Direccin o resultado de la funcin ADDM. Utiliza la funcin ADDM EF para crear este campo. (vase Descripcin, p. 45) La nica posibilidad de enviar correos electrnicos es a travs del puerto Ethernet de la CPU (0.0.3). Corresponde a las direcciones de correo electrnico administradas con el software Unity Pro (slo se aceptan la 1, 2 y 3). Representa la parte dinmica del asunto que se adjunta a la cadena de asunto esttica. Representa el cuerpo del correo electrnico.

HEAD_KEY

INT

SUBJ_STR BODY_STR

STRING STRING

250

33002530 07 07/2008

Send_Email

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo Comentario

ARRAY [0... 3] OF Tabla de gestin del intercambio (vase INT Estructura de los parmetros de gestin, p. 35) Se utiliza la tabla de 4 palabras para controlar los parmetros de la ejecucin. El parmetro de longitud (4 palabra de la tabla de gestin) es un parmetro de salida. El sistema escribe esta palabra con la longitud total del correo electrnico (encabezado + cuerpo). El tamao mximo del encabezado + cuerpo es de 1.024 caracteres.

Normas de Send_Email

Despus de la ejecucin de un bloque de funciones SEND_EMAIL EF, se establece el bit de actividad hasta que se enva el correo electrnico. Sin embargo, no hay ninguna confirmacin de que el mensaje haya llegado al destino. Si se programa un tiempo de espera (3 palabra de gestin <> 0), el correo electrnico se cancela si no se enva durante el intervalo programado. En tal caso, la 2 palabra de gestin recibe una respuesta negativa Intercambio detenido tras tiempo de espera (0x01). Caractersticas del tiempo de ejecucin: el sistema puede gestionar cuatro solicitudes de envo a la vez procedentes de cuatro EF. El quinto EF que intenta enviar un correo electrnico recibir el mensaje No hay recursos de sistema del procesador (0x0B) hasta que un recurso se encuentre libre.

Ejemplo del servicio Send_Email

IF (default_id = 0) THEN (* PUMP IS OK *) SEND_EMAIL(ADDM('0.0.3'), 1, 'Pump n3 is OK', ' ' , Mng_send_email); ELSE (* PUMP IS FAULTY *) str_default := INT_TO_STRING(default_id); str_email_body := CONCAT_STR(' Default = ', str_default); SEND_EMAIL(ADDM('0.0.3'), 1, 'Pump n3 is faulty', str_email_body, Mng_send_email); END_IF;

33002530 07 07/2008

251

Send_Email

252

33002530 07 07/2008

SEND_REQ: peticiones de envo

23
Presentacin
Objetivo Contenido: En este captulo se describe la funcin SEND_REQ. Este captulo contiene los siguiente apartados:
Apartado Descripcin Lista de peticiones UNI-TE Pantalla de entrada asistida Ejemplo de cmo enviar una peticin UNI-TE Modificacin de parmetros IP con SEND_REQ (ejemplo) Utilizacin de la funcin SEND_REQ Pgina 254 258 263 265 267 268

33002530 07 07/2008

253

SEND_REQ

Descripcin
Descripcin de la funcin La funcin SEND_REQ se utiliza para codificar y enviar todas las solicitudes UNI-TE y Modbus/Jbus, as como recibir las respuestas asociadas. Los detalles de codificacin de las solicitudes UNI-TE se proporcionan en el manual de referencia: Referencia de comunicacin TSX DR NET. Los detalles de codificacin de las solicitudes Modbus/Jbus se proporcionan en el manual de TSX DG MDB. Las solicitudes Modbus comunes para todos los dispositivos Schneider se presentan en el manual Arquitecturas y servicios de comunicacin (Ver Premium, Atrium y Quantum en Unity Pro, Arquitecturas y servicios de comunicacin, Manual de referencia, Lista de los cdigos de la funcin Modbus). Pueden configurarse los parmetros adicionales EN y ENO. Representacin FBD
Address Request_Code Data_to_Send Management_Param

SEND_REQ ADR CODE EMIS GEST RECP Received_Data

GEST

Management_Param

Representacin LD
SEND_REQ EN Address Request_Code Data_to_Send Management_Param ADR CODE EMIS GEST GEST Management_Param ENO RECP Received_Data

254

33002530 07 07/2008

SEND_REQ

Representacin IL

Direccin LD SEND_REQ Request_Code, Data_to_Send, Management_Param, Received_Data SEND_REQ(Address, Request_Code, Data_to_Send, Management_Param, Received_Data); En la siguiente tabla se describen los parmetros de entrada:
Parmetro Direccin Tipo ARRAY [0.. 5] OF INT Comentario Direccin de la entidad de destino del intercambio. El tipo de la direccin depende de la solicitud enviada. Por tanto, es posible difundir la solicitud de ejecucin (TODO, 0 para el mdulo TSX SCY 11601), mientras que no es posible enviar una solicitud de identificacin a varios dispositivos a la vez. Solicitud que se desea enviar al dispositivo de destino, tambin denominado servidor. Las solicitudes pueden ser UNI-TE (vase Lista de peticiones UNI-TE, p. 258) o Modbus. Tabla de enteros que se desea enviar al dispositivo de destino de la solicitud. Esta tabla depende de la solicitud enviada. Debe tener una longitud mnima de un elemento, incluso si la solicitud utilizada no requiere envo de datos (por ejemplo, una solicitud de identificacin). Nota: Es imprescindible que la longitud de los datos que se desean enviar (en bytes) se asigne a la cuarta palabra de la tabla de gestin antes de iniciar la funcin para su correcta ejecucin.

Representacin ST Descripcin de los parmetros

Request_Code

INT

Data_to_Send

ARRAY [n... m] OF INT

En la siguiente tabla se describen los parmetros de entrada y salida:


Parmetro Management_Param Tipo ARRAY [0.. 3] OF INT Comentario Tabla de gestin de intercambio (vase Estructura de los parmetros de gestin, p. 35)

33002530 07 07/2008

255

SEND_REQ

En la siguiente tabla se describen los parmetros de salida:


Parmetro Received_Data Tipo ARRAY [n... m] OF INT Comentario Tabla de enteros que contiene los datos devueltos por el dispositivo servidor, que era el destino de la solicitud. Aunque algunas solicitudes no requieren respuesta, (por ejemplo, una solicitud de ejecucin), sigue siendo necesario reservar una tabla mnima de un entero cada vez que se utiliza la funcin SEND_REQ. Nota: El sistema escribe automticamente el tamao de los datos recibidos en la cuarta palabra de la tabla de gestin (vase Parmetros de gestin: longitud y timeout, p. 40). Nota: En algunos casos (por ejemplo, la lectura de tablas de palabras) es necesario volver a definir la secuencia de los objetos recibidos mediante la funcin ROR1_ARB (Ver Unity Pro 4.0, obsoleta, Librera de bloques, Descripcin) (desplazamiento de un byte en un tabla).

256

33002530 07 07/2008

SEND_REQ

Transacciones simultneas

En la tabla siguiente se detallan las capacidades de cada canal de comunicacin para procesar transacciones de forma simultnea, de acuerdo con las distintas configuraciones de los PLC Micro y Premium. (SEND_REQ no est disponible en PLC Modicon M340.)
Micro TSX 57 10 TSX 57 20 TSX 57 23/30/40/ TSX 57 46/56 45/55, PCX 57, PMX 57 4 8 1 1 4 6 8 1 8 10 8 4 16 8 8 8 1 4 6 8 1 8 10 8 4 16 64

Configuracin

Puerto de terminal maestro Uni-Telway Conexin PCMCIA o SCY maestro UniTelway Puerto de terminal esclavo cliente UniTelway Conexin PCMCIA o SCY esclava cliente Uni-Telway

4 1 4 1

4 8 1 1 4 6 8 1 8 10 8 4 16 -

4 8 1 1 4 6 8 1 8 10 8 4 16 -

Puerto de terminal esclavo servidor Uni- 4 Telway Conexin PCMCIA o SCY esclava servidor Uni-Telway Puerto de terminal Modbus Conexin PCMCIA o SCY Modbus Modalidad de caracteres, bloque de terminales Modalidad de caracteres, conexin PCMCIA o SCY PCMCIA CANopen Conexin PCMCIA o SCY Fipway Modbus Plus Ethernet Ethernet incorporado 4 4 4 1 4 4 4 -

33002530 07 07/2008

257

SEND_REQ

Lista de peticiones UNI-TE


Presentacin Se utiliza el protocolo UNI-TE para: identificar y diagnosticar todos los dispositivos que tienen un servidor UNI-TE; ofrecer un conjunto de servicios que concedan acceso de lectura y escritura para introducir datos; descargar datos de dispositivo a dispositivo; proteger un servidor frente a conexiones concurrentes durante un periodo crtico. Estos servicios diferentes pueden obtenerse mediante la funcin SEND_REQ, con la codificacin de la peticin UNI-TE que se desea enviar. Nota: Para obtener informacin detallada y la lista de peticiones reconocidas por cada dispositivo, consulte el manual de referencia de TSX DR NET. Las tablas siguientes ofrecen una lista no exhaustiva de peticiones reconocidas por los dispositivos Premium. Peticiones de uso general Estas peticiones se utilizan para identificar y diagnosticar todos los dispositivos que tienen un servidor UNI-TE.
Nombre de peticin Cdigo de peticin IDENTIFICATION 16#0F Cdigo de informe 16#3F Comentario Ofrece la informacin siguiente: rango de producto, tipo de aplicacin especfica, tipo de producto, referencia de catlogo. Lleva a cabo el diagnstico de sistema en cualquier dispositivo. Se utiliza para adaptar la versin del protocolo entre dos entidades comunicantes. Comprueba el acceso correcto de los datos entre dos dispositivos comunicantes.

READ_CPU PROTOCOL_VERSIO N MIRROR

16#4F 16#30

16#7F 16#60

16#FA

16#FB

258

33002530 07 07/2008

SEND_REQ

Modificacin dinmica de parmetros IP

Modificacin de parmetros IP
Nombre de peticin REQUEST CODE CHANGE IP PARAMETERS Cdigo de peticin 16#37 16#13 Comentario Solicita el cdigo de peticin. Cambia la subfuncin de parmetro IP.

Para asegurarse de que el mdulo ETY est listo para funcionar, permita que el PLC se ejecute (en modalidad de ejecucin) durante 15 segundos despus de la ltima modalidad de detencin antes de enviar la funcin SEND_REQ. Despus de que el usuario enve el comando CHANGE IP PARAMETERS y de que el mdulo ETY acepte los nuevos parmetros, el mdulo ETY restablece y comienza las operaciones con los nuevos parmetros. Nota: Los clientes FDR que utilizan el mdulo ETY para un servidor deben reiniciarse despus de que se haya terminado de llevar a cabo el cambio de la direccin IP del ETY. De lo contrario, estos clientes FDR no pueden actualizar sus archivos de parmetros en el servidor FDR (el mdulo ETY).

Nota: Las palabras constantes contienen los parmetros de configuracin originales, no aquellos que se actualizaron despus del cambio de direccin IP.

Nota: Puede ver la nueva configuracin (parmetros IP, mscara de subred y direccin de pasarela) en la pantalla de depuracin de ETY de Unity Pro (Ver Premium y Atrium mediante Unity Pro, Mdulos de red Ethernet, Manual del usuario, Pantalla de depuracin del mdulo). Tambin se puede ver la nueva direccin IP asignada en la pgina Web de estadstica del mdulo Ethernet (Ver Premium y Atrium mediante Unity Pro, Mdulos de red Ethernet, Manual de usuario, Pginas de diagnstico del mdulo Ethernet), no obstante, debe tener en cuenta de que la direccin IP, la mscara de subred y los datos de pasarela de esta pgina reflejan la configuracin antigua. Uso de parmetros para el cambio de direccin IP Esta tabla se basa en una direccin IP de muestra de 139.158.10.7, una mscara de subred 255.255.248.0 y una direccin de pasarela de 139.158.8.1.
Parmetro ADDRESS Tipo matriz [0...5] de INT Valor Comentario

ADDR Ejemplo: ADDR (0.x.0.SYS) x (rack.slot.channel.SYS) = slot en el que se instala el mdulo ETY 16#37 259

REQUEST_CODE INT
33002530 07 07/2008

SEND_REQ

Parmetro

Tipo

Valor byte 1: subfuncin (13h) byte 2: subfuncin (96h) byte 3: 0 byte 4: 0 byte 5: direccin IP 2 (158) byte 6: direccin IP 1 (139) byte 7: direccin IP 4 (7)

Comentario byte de mayor valor byte de menor valor se hace caso omiso del valor se hace caso omiso del valor 1-239 (byte de mayor valor) 0-255 (byte de menor valor) 0-255 (byte de mayor valor)

Data_to_Send matriz [0...8] de INT

byte 8: direccin IP 3 (10) 0-255 (byte de menor valor) byte 9: mscara de subred 2 (255) byte 10: mscara de subred 1 (255) byte 11: mscara de subred 4 (0) byte 12: mscara de subred 3 (248) 255 0-255 0-255 0-255

byte 13: pasarela 2 (158) 1-239 (la direccin de la pasarela debe encontrarse en la misma subred que la direccin IP.) byte 14: pasarela 1 (139) 0-255 byte 15: pasarela 4 (1) byte 16: pasarela 3 (8) Manage_Param nmero de palabra 1 2 3 4 byte de mayor valor informe de actividad informe de operacin (consulte la nota 1) timeout (ms) 18 (INT) 0-255 0-255 byte de menor valor 00 informe de comunicacin (consulte la nota 1)

Nota 1: La tabla siguiente ofrece informacin detallada para los cdigos de direccin IP (correctos e incorrectos).

Consulte el ejemplo para cambiar los parmetros IP mediante SEND_REQ (vase Modificacin de parmetros IP con SEND_REQ (ejemplo), p. 267).

260

33002530 07 07/2008

SEND_REQ

Cambio de cdigos de direccin IP


Informe de operacin cdigo correcto FE (hex) Cdigos de error 01 (hex) 00 (hex) 00 (hex) 16 (hex) 17 (hex) 18 (hex) 19 (hex) 1A (hex) FD (hex) FF (hex) 03 (hex) 07 (hex) FF (hex) FF (hex) FF (hex) FF (hex) FF (hex) 00 (hex) Valor de cdigo de peticin no vlido (por ejemplo, 16#37 no). Enviar peticin a direccin IP de ETY en lugar de por la placa de conexiones. Direccionamiento incorrecto a ETY. Direccin IP no vlida. Subred no vlida. Direccin de pasarela no vlida. Direccin de red no vlida. La direccin IP ya se ha definido para enviar una peticin (SEND_REQ). La peticin de envo (SEND_REQ) no cambi correctamente la direccin IP. 00 (hex) La peticin de envo (SEND_REQ) cambi correctamente la direccin IP. Informe de comunicacin Significado

Acceso a objetos

Estas peticiones ofrecen un conjunto de servicios que proporciona acceso de lectura y escritura a los datos de bit interno y de tipo de palabra, a los datos de bit del sistema y de tipo de palabra, a los datos de punto flotante, a los datos de constante y a los datos de SFC. Nombre de peticin READ_OBJECT WRITE_OBJECT READ_INTERNAL_BIT WRITE_INTERNAL_BIT READ_INTERNAL_WORD WRITE_INTERNAL_WORD Cdigo de peticin 16#36 16#37 16#00 16#10 16#04 16#14 Cdigo de informe 16#66 16#FE 16#30 16#FE 16#34 16#FE Comentario Se utiliza para leer uno o ms objetos consecutivos del mismo tipo. Se utiliza para escribir uno o ms objetos consecutivos del mismo tipo. Se utiliza para leer el valor de un bit interno. Se utiliza para escribir el valor de un bit interno. Se utiliza para leer el valor de una palabra interna. Se utiliza para escribir el valor de una palabra interna.

33002530 07 07/2008

261

SEND_REQ

Gestin de modos de funcionamiento

Estas peticiones ofrecen un conjunto de servicios que puede utilizarse para gestionar los modos de funcionamiento de un procesador.
Nombre de Cdigo de peticin peticin RUN STOP INIT 16#24 16#25 16#33 Cdigo de informe 16#FE 16#FE 16#63 Comentario Se utiliza para iniciar la ejecucin de las tareas de un procesador. Se utiliza para detener la ejecucin de las tareas de un procesador. Se utiliza para disparar un inicio en fro o en caliente.

Gestin de reservas

Estas peticiones ofrecen un mecanismo de reserva que se utiliza para proteger el servidor frente a conexiones concurrentes durante un periodo crtico.
Nombre de peticin Cdigo de Cdigo de peticin informe RESERVE 16#1D 16#FE Comentario Habilita un cliente para que reserve general o parcialmente las funciones de un servidor. Habilita un cliente para que libere el servidor reservado. Se utiliza para mantener la reserva.

RELEASE I_AM_ALIVE

16#1E 16#2D

16#FE 16#FE

262

33002530 07 07/2008

SEND_REQ

Pantalla de entrada asistida


Presentacin Para esta funcin de comunicacin, puede solicitar la pantalla de entrada asistida. Tenga en cuenta que la pantalla de entrada asistida no est disponible para Modicon M340. Nota: Los smbolos de variable se aceptan en los diferentes campos de la pantalla.

Ilustracin

La pantalla siguiente muestra un ejemplo de la pantalla de entrada asistida de la funcin:


SEND_REQ Parmetros Direccin: Cdigo de peticin: Datos para enviar: rea de recepcin: Informe:

... ... ... ... ...

Tipos posibles: Matriz de enteros constantes, matriz de enteros (n>=6) Direccin ADDR(..) Aceptar Cancelar

Direccin

Para PLC Premium, el tipo de objeto posible es el siguiente: ADDR(STRING). ARRAY [0..5] OF INT.

Nota: Si introduce un valor directamente en un campo, el botn de entrada de direccin asistida se vuelve gris.

33002530 07 07/2008

263

SEND_REQ

Cdigo de peticin

Los objetos posibles son del tipo INT: variables, constantes, valor inmediato.

Nota: Si introduce una constante, aparecer un campo de entrada para ello. Si introduce una variable, puede localizarse o no.

Datos para enviar rea de recepcin Informe

Estos datos que se van a enviar se almacenan en forma de matriz de enteros. La matriz puede localizarse o no. El rea de recepcin es una matriz de enteros. La matriz puede localizarse o no, y su tamao depende del cdigo de peticin utilizado. El informe es una matriz de 4 enteros. Nota: Tenga cuidado de no utilizar varias reas de memoria idnticas para las tablas de informes; de lo contrario, la funcin de lectura de variables podra no funcionar.

264

33002530 07 07/2008

SEND_REQ

Ejemplo de cmo enviar una peticin UNI-TE


Presentacin La estacin 2 de la red 20 debe enviar una peticin de identificacin al dispositivo con direccin Ad0=3 del bus Uni-Telway de la estacin 1 de la misma red. La peticin de identificacin tiene el cdigo decimal 15 (o 16#0F). La tabla de gestin se encuentra en %MW10:4. Ilustracin Las dos estaciones se conectan mediante una red Fipway:
Premium TSX 87

{20.2}

Fipway

{20.1}

Uni-Telway

Ad0 = 3

Ad0 = 1

33002530 07 07/2008

265

SEND_REQ

Programacin

Programacin en ST: SI RE(%I0.3.2) Y NO %MW10.0 ENTONCES SEND_REQ(ADDR({20.1}0.5.1.3),15,%MW0:1, %MW10:4,%MW100:24); END_IF;

Parmetros de peticin:
Parmetros ADDR({20.1}0.5.1.3) Descripcin {20.1}: red 20, estacin 1 0: bastidor 5: mdulo 1: canal 1 3: direccin de destino Peticin 15 (o 16#0F si la codificacin es hexadecimal) Datos enviados (por ejemplo: no hay datos para enviar) Tabla de gestin Contenido de la respuesta (recepcin de 24 palabras)

15 %MW0:1 %MW10:4 %MW100:24

Nota: Cada vez que la funcin se inicia, inicialice el parmetro de longitud (en el ejemplo: %MW13 = 0).

266

33002530 07 07/2008

SEND_REQ

Modificacin de parmetros IP con SEND_REQ (ejemplo)


Ilustracin El grfico muestra cmo definir los parmetros IP del mdulo ETY del slot 2 con el bloque SEND_REQ:

Nota: ADR: refleja la posicin del ETY en el slot 2. CODE: refleja el valor de REQUEST_CODE. EMIS: contiene los parmetros IP de Data_to_Send: direccin (139.158.10.7) mscara de subred (255.255.248.0) pasarela (139.158.8.1) GEST: refleja Management_Param (parmetros de gestin). Tiene que asignar un tiempo a la tercera palabra de Management_Param. La cuarta palabra debera tener el valor INT 18. RECP: Este parmetro requiere un valor mnimo INT de 1, incluso cuando no se devuelva ningn mensaje de respuesta, como en el caso de una peticin de cambio de IP.

33002530 07 07/2008

267

SEND_REQ

Utilizacin de la funcin SEND_REQ


Presentacin La funcin SEND_REQ se utiliza para codificar y enviar todas las peticiones UNI-TE y Modbus/Jbus, as como recibir las respuestas asociadas. En algunos casos (por ejemplo, la lectura de tablas de palabras) es necesario volver a definir la secuencia de los objetos recibidos mediante la funcin ROR1_ARB (desplazamiento de un byte en un tabla). . Ejemplo Objetos para leer: 16#0201 16#0403 16#0605 16#0807 16#0A09 Tabla de recepcin tras la ejecucin de SEND_REQ (objeto de lectura): %MW100=16#0107 %MW101=16#0302 %MW102=16#0504 %MW103=16#0706 %MW104=16#0908 %MW105=16#000A Tabla de recepcin tras ROR1_ARB(%MW100:6): %MW100=16#0201 %MW101=16#0403 %MW102=16#0605 %MW103=16#0807 %MW104=16#0A09 %MW105=16#0700

268

33002530 07 07/2008

SEND_TLG: envo de telegramas

24
Presentacin
Objetivo Contenido: En este captulo se describe la funcin SEND_TLG. Este captulo contiene los siguiente apartados:
Apartado Descripcin Ejemplo de cmo enviar un telegrama Pgina 270 273

33002530 07 07/2008

269

SEND_TLG

Descripcin
Descripcin de la funcin La funcin SEND_TLG se utiliza para enviar datos de tipo telegrama a una aplicacin remota. Los datos que se van a enviar deben tener una longitud mxima de 16 bytes. Al contrario que las otras funciones de comunicacin, esta funcin se procesa inmediatamente (funcin sincronizada). Por tanto, en este caso no existen el bit de actividad ni los parmetros de timeout. La tabla de enteros asignada a los parmetros de gestin solo utiliza dos palabras en lugar de cuatro (los nmeros de intercambio y timeout no son necesarios en este caso).

ADVERTENCIA
Posicin de la tarjeta La funcin SEND_TLG se puede utilizar en Fipway solo si cuenta con tarjeta TSX FPP 20 y solo para las estaciones 0 a 15. Si no se siguen estas instrucciones pueden producirse lesiones personales graves o mortales o daos en el equipo. Pueden configurarse los parmetros adicionales EN y ENO. Representacin FBD Representacin:
SEND_TLG Address Data_to_Send Management_Param ADR EMIS GEST

GEST

Management_Param

270

33002530 07 07/2008

SEND_TLG

Representacin LD

Representacin:
SEND_TLG EN Address Data_to_Send Management_Param ADR EMIS GEST GEST Management_Param ENO

Representacin IL

Representacin: Direccin LD SEND_TLG Data_to_Send, Management_Param Representacin: SEND_TLG(Address, Data_to_Send, Management_Param); La tabla siguiente describe los parmetros de entrada:
Parmetro Address Tipo Comentario

Representacin ST Descripcin de los parmetros

MATRIZ [0.. 5] DE Direccin de la entidad de destino del INT intercambio. Solo estn autorizadas las direcciones{Red.Estacin}APP o {Red.Estacin}APP.nm. MATRIZ [n... m] DE INT Tabla de enteros que se desea enviar al dispositivo de destino de la peticin. Debe tener una longitud mxima de ocho enteros (16 bytes). Nota: Es fundamental que el nmero de bytes que se van a enviar se coloque en la segunda palabra de la tabla de gestin antes de realizar el intercambio.

Data_to_Send

33002530 07 07/2008

271

SEND_TLG

En la tabla siguiente se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo Comentario

MATRIZ [0.. 1] DE Tabla de palabras utilizada para gestionar el INT intercambio. Esta tabla est compuesta por dos palabras: la palabra de informe y la palabra de longitud de los datos que se van a enviar. El informe contiene: el informe de funcionamiento (byte de mayor valor de la primera palabra), el informe de comunicacin (byte de menor valor de la primera palabra). El informe de funcionamiento toma uno de los valores siguientes: 16#00: intercambio correcto, 16#03: formato de direccin incorrecto, 16#04: direccin de destino incorrecta, 16#05: parmetros de gestin incorrectos (por ejemplo, la longitud), 16#06: parmetros especficos incorrectos, 16#07: mdulo defectuoso, 16#0A: tamao del bfer de envo insuficiente, 16#0B: sin recursos de sistema, 16#0F: servicio de telegramas sin configurar.

272

33002530 07 07/2008

SEND_TLG

Ejemplo de cmo enviar un telegrama


Presentacin Supongamos que desea enviar un telegrama de ocho palabras desde la estacin 1 a la estacin remota 3 de la red Fipway 20. La tabla %MW190:8 recoger las palabras que se van a enviar, y la tabla %MW200:2 la tabla de gestin de intercambio. Ilustracin Las dos estaciones estn conectadas a travs de una red Fipway.
Red Fipway 20 TSX Premium TSX Micro

{20.1}

{20.3}

Programacin

Programacin en ST: IF RE(%I0.3.10) THEN SEND_TLG(ADDR({20.3}APP), %MW190:8, %MW200:2); END_IF; Parmetros de peticin:
Parmetros ADDR({20.3}APP) %MW190:8 %MW200:2 Descripcin {20.2}: red 20, estacin 3 APP: aplicacin Contenido del telegrama que se va a enviar Tabla de gestin

Nota: La palabra %MW 201 debe inicializarse en 16 (ocho palabras) antes del envo de la peticin. Para ejecutar esta funcin de forma sincronizada, es necesario comprobar el informe de funcionamiento inmediatamente despus de la lnea del programa que activa la ejecucin de esta funcin.

33002530 07 07/2008

273

SEND_TLG

274

33002530 07 07/2008

SYMAX_IP_ADDR: direccin SY/ MAX IP

25

Descripcin general
Introduccin Contenido: En este captulo se describe el bloque SYMAX_IP_ADDR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Descripcin detallada Pgina 276 278

33002530 07 07/2008

275

SYMAX_IP_ADDR

Descripcin
Descripcin de funciones Este bloque de funcin permite indicar la direccin IP SY/MAX para los bloques de funcin REAG_REG, CREAD_REG, WRITE_REG y CWRITE_REG. La direccin se transmite en forma de una estructura de datos. Como parmetros adicionales se pueden configurar EN y ENO. Nota: Debe conocer la red empleada cuando programe el mdulo de funcin SYMAX_IP_ADDR.

Representacin en FBD

Representacin:
SYMAX_IP_ADDR_Instance SYMAX_IP_ADDR MappingIndex NOEModuleSlot DestinationDropNumber Terminator DROP_NO SLOT_ID ADDRFLD DESTDROP TERMINAT DataStructureSYMAX_IP

Representacin en LD

Representacin:
SYMAX_IP_ADDR_Instance SYMAX_IP_ADDR EN MappingIndex NOEModuleSlot DROP_NO SLOT_ID ADDRFLD DestinationDropNumber Terminator DESTDROP TERMINAT DataStructureSYMAX_IP ENO

276

33002530 07 07/2008

SYMAX_IP_ADDR

Representacin en IL

Representacin: CAL SYMAX_IP_ADDR_Instance (DROP_NO:=MappingIndex, SLOT_ID:=NOEModuleSlot, DESTDROP:=DestinationDropNumber, TERMINAT:=Terminator, ADDRFLD=>DataStructureSYMAX_IP) Representacin: SYMAX_IP_ADDR_Instance (DROP_NO:=MappingIndex, SLOT_ID:=NOEModuleSlot, DESTDROP:=DestinationDropNumber, TERMINAT:=Terminator, ADDRFLD=>DataStructureSYMAX_IP) ; Descripcin de los parmetros de entrada:
Parmetro DROP_NR SLOT_ID DESTDROP TERMINAT Tipo de datos BYTE BYTE WORD WORD Significado ndice de copiado de un Transporter MBP a Ethernet (MET) Slot del mdulo NOE Nmero de estacin de destino (o ajustar a FF hex) Terminador (ajustar a FF hex)

Representacin en ST

Descripcin de parmetros

Descripcin de los parmetros de salida:


Parmetro ADDRFLD Tipo de datos WordArr5 Significado Estructura de datos para la transmisin de la direccin SY/MAX

33002530 07 07/2008

277

SYMAX_IP_ADDR

Descripcin detallada
Descripcin de elementos de WordArr5 Descripcin de elementos para WordArr5:
Elemento WordArr5[1] Tipo de datos WORD Significado Byte de mayor valor: Direccin de slot del mdulo NOE Byte de menor valor: ndice de copiado de un Transporter MBP a Ethernet (MET) Nmero de estacin de destino (o ajustar a FF hex) Terminador (ajustar a FF hex) Sin significado Sin significado

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

DROP_NR

En la entrada DROP_NR se indica el ndice de copiado del Transporter MBP a Ethernet (MET), es decir, cuando el MET es 6, el valor tiene el siguiente aspecto:
0 0 0 0 0 1 1 0

SLOT_ID

Cuando se accede a un NOE en el bastidor de un controlador Quantum como participante de destino, el valor de la entrada SLOT_ID representar el slot fsico del NOE, es decir, cuando el NOE est insertado en el slot 7 del bastidor, el valor tiene el siguiente aspecto:
0 0 0 0 0 1 1 1

ADDRFLD

Cuando un NOE del bastidor accede a un controlador Quantum como participante de destino, el valor del byte de mayor valor representa el slot fsico del NOE, y el byte de menor valor, el ndice de copiado del Transporter MBP a Ethernet (MET); es decir, cuando el NOE est insertado en el slot 7 del bastidor y el ndice de copiado MET es 6, el primer elemento de la estructura de datos tiene el siguiente aspecto:
Byte de mayor valor Byte de menor valor

Byte de mayor valor Slot 1 a 16 Byte de menor valor ndice de copiado de un Transporter MBP a Ethernet (MET) 278
33002530 07 07/2008

TCP_IP_ADDR: direccin TCP/IP

26
Descripcin general
Introduccin Contenido: En este captulo se describe el bloque TCP_IP_ADDR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Descripcin detallada Pgina 280 283

33002530 07 07/2008

279

TCP_IP_ADDR

Descripcin
Descripcin de las funciones Este bloque de funciones permite la entrada de direcciones TCP/ IP para los bloques de funciones READ_REG, CREAD_REG, WRITE_REG y CWRITE_REG. La direccin se transfiere como estructura de datos. EN y ENO pueden configurarse como parmetros adicionales. Nota: Debe estar familiarizado con su red cuando programe el bloque d funciones TCP_IP_ADDR. La "Gua de usuario del mdulo TCP/IP de Quantum" ofrece una descripcin completa de las rutas de acceso TCP/IP.

Representacin en FBD

Representacin:
TCP_IP_ADDR_Instance TCP_IP_ADDR MapIndex NOEModuleSlot Byte4OfIPAddress Byte3OfIPAddress Byte2OfIPAddress Byte1OfIPAddress MAP_IDX SLOT_ID ADDRFLD IP_B4 IP_B3 IP_B2 IP_B1 DataStructureTCP_IPAddress

280

33002530 07 07/2008

TCP_IP_ADDR

Representacin en LD

Representacin:
TCP_IP_ADDR_Instance TCP_IP_ADDR EN MapIndex NOEModuleSlot MAP_IDX SLOT_ID ADDRFLD Byte4OfIPAddress Byte3OfIPAddress Byte2OfIPAddress Byte1OfIPAddress IP_B4 IP_B3 IP_B2 IP_B1 DataStructureTCP_IPAddress ENO

Representacin en IL

Representacin: CAL TCP_IP_ADDR_Instance (MAP_IDX:=MapIndex, SLOT_ID:=NOEModuleSlot, IP_B4:=Byte4OfIPAddress, IP_B3:=Byte3OfIPAddress, IP_B2:=Byte2OfIPAddress, IP_B1:=Byte1OfIPAddress, ADDRFLD=>DataStructureTCP_IPAddress) Representacin: TCP_IP_ADDR_Instance (MAP_IDX:=MapIndex, SLOT_ID:=NOEModuleSlot, IP_B4:=Byte4OfIPAddress, IP_B3:=Byte3OfIPAddress, IP_B2:=Byte2OfIPAddress, IP_B1:=Byte1OfIPAddress, ADDRFLD=>DataStructureTCP_IPAddress) ;

Representacin en ST

33002530 07 07/2008

281

TCP_IP_ADDR

Descripcin de parmetros

Descripcin de los parmetros de entrada:


Parmetros MAP_IDX Tipo de datos BYTE Descripcin ndice de asignacin MBP en el ndice de asignacin Ethernet Transporter (MET) ID de slot Slot del mdulo NOE Byte 4 (MSB) de la direccin IP de 32 bits de destino Byte 3 (MSB) de la direccin IP de 32 bits de destino Byte 2 (MSB) de la direccin IP de 32 bits de destino Byte 1 (LSB) de la direccin IP de 32 bits de destino

Slot_ID IP_B4 IP_B3 IP_B2 IP_B1

BYTE BYTE BYTE BYTE BYTE

Nota: Para el parmetro Slot_ID: Si utiliza un mdulo de Ethernet integrado en la CPU como 140 CPU 651 x0, la ID de slot debe ser 254 (FE hex) independientemente del slot de la CPU. Descripcin de los parmetros de salida:
Parmetros ADDRFLD Tipo de datos WordArr5 Descripcin Estructura de datos utilizada para transferir la direccin TCP/IP

282

33002530 07 07/2008

TCP_IP_ADDR

Descripcin detallada
Descripcin de elementos de WordArr5 Descripcin de elementos de WordArr5:
Elemento WordArr5[1] Tipo de datos WORD Descripcin Byte de mayor valor: Slot del mdulo NOE Byte de menor valor: MBP en el ndice de asignacin Ethernet Transporter (MET) Byte 4 de la direccin IP de 32 bits de destino Byte 3 de la direccin IP de 32 bits de destino Byte 2 de la direccin IP de 32 bits de destino Byte 1 de la direccin IP de 32 bits de destino

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

MAP_IDX

El MBP para ndice de asignacin Ethernet Transporter (MET) viene dado por la salida Map_Idx+, es decir, si MET es 6, el valor aparece como se muestra a continuacin:
0 0 0 0 0 1 1 0

Slot_ID

Si un NOE del bastidor de un controlador Quantum, se direcciona como asiento de destino; el valor en la entradaSLOT_ID representa el spot NOE fsico. Ejemplo: si el NOE se conecta en el spot 7 del bastidor, el valor aparece como se muestra a continuacin:
0 0 0 0 0 1 1 1

Nota: Si utiliza un mdulo de Ethernet integrado en la CPU como 140 CPU 651 x0, la ID de slot debe ser 254 (FE hex) independientemente del slot de la CPU.

33002530 07 07/2008

283

TCP_IP_ADDR

ADDRFLD

Si un NOE del bastidor de un controlador Quantum se direcciona como asiento de destino, el valor del byte de mayor valor representa el spot fsico del NOE y el del byte de menor valor representa el MBP en el ndice de asignacin Ethernet Transporter (MET); es decir, si el NOE se introduce en el spot 7 del bastidor y el ndice de asignacin de MET es 6, el primer elemento de la estructura de datos presenta el siguiente aspecto:
Byte de mayor valor Byte de menor valor

Byte de mayor valor Slots del 1 al 16 Byte de menor valor MBP en el ndice de asignacin Ethernet Transporter (MET)

284

33002530 07 07/2008

UNITE_SERVER: servidor inmediato

27

Presentacin
Objetivo Contenido: En este captulo se describe la funcin de comunicacin UNITE_SERVER. Este captulo contiene los siguiente apartados:
Apartado Descripcin Ejemplo de servidor inmediato Pgina 286 290

33002530 07 07/2008

285

UNITE_SERVER

Descripcin
Descripcin de las funciones La funcin UNITE_SERVER se utiliza para procesar peticiones UNI-TE inmediatamente desde el programa de la aplicacin. Esta funcin puede activarse en la tarea MAST o en la tarea FAST. Nota: En cualquier momento, la aplicacin solo puede activar una funcin UNITE_SERVER.

Nota: La funcin UNITE_SERVER se utiliza para procesar peticiones desde una conexin Modbus (tarjeta TSX SCP 114 PCMCIA en un mdulo TSX SCY 21601 module configurado como esclavo Modbus con servidor inmediato (Ver Premium y Atrium en Unity Pro, Conexin serie asncrona, Manual de instalacin, Parmetros de Modbus relacionados con la aplicacin)). Los parmetros adicionales EN y ENO se pueden configurar.

286

33002530 07 07/2008

UNITE_SERVER

Principio de intercambio

El diagrama siguiente muestra los intercambios realizados durante la utilizacin de la funcin de comunicacin UNITE_SERVER.

Entradas

Primera peticin: READ_VAR1 Respuesta a la primera peticin READ_VAR1 Segunda peticin: READ_VAR2 Respuesta a la segunda peticin READ_VAR2 Aplicacin

Funcin UNITE_SERVER activada

Funcin UNITE_SERVER activada

Salidas

Representacin FBD

Representacin:
UNITE_SERVER ADR Management_Param GEST RqRp GEST Address Received_Codes Management_Param

33002530 07 07/2008

287

UNITE_SERVER

Representacin LD

Representacin:
UNITE_SERVER EN ENO ADR RqRp Management_Param GEST GEST Address Received_Codes Management_Param

Representacin IL

Representacin: LD Management_Param UNITE_SERVER Address, Received_Codes Representacin: UNITE_SERVER(Management_Param, Address, Received_Codes);

Representacin ST

288

33002530 07 07/2008

UNITE_SERVER

Descripcin de parmetros

En la tabla siguiente se describen los parmetros de entrada/salida:


Parmetro Tipo Comentario Tabla de palabras utilizadas para gestionar el intercambio. Esta tabla est compuesta de 2 palabras: la primera palabra contiene el nmero de intercambio y el bit de actividad; la segunda palabra contiene el informe. El informe incluye: el informe de funcionamiento (byte de mayor valor), el informe de comunicacin (byte de menor valor). El informe de comunicacin utiliza uno de los valores siguientes: 16#00: intercambio correcto, 16#01: detencin en timeout, no se pudo enviar la respuesta en 2 segundos, 16#02: detencin a peticin del usuario (STOP, %S0, INIT, reinicio en fro o en caliente), 16#03: formato de direccin desconocido, 16#05: parmetros de gestin incorrectos, 16#07: problema en el envo al destino, 16#11: no se ha recibido ninguna peticin, 16#12: otra tarea ha solicitado ya la funcin UNITE_SERVER, 16#FF: mensaje rechazado. Nota: Cuando se rechaza un mensaje (cdigo 16#FF), el informe de funcionamiento puede tomar el valor 16#14 (servidor detenido).

Management ARRAY [0.. 1] OF _Param INT

En la tabla siguiente, se describen los parmetros de salida:


Parmetro Direccin Tipo ARRAY [0.. 2] OF INT Comentario Direccin de la entidad de destino del intercambio. Esta direccin corresponde al canal al que est conectado el remitente de la peticin. Al final del intercambio, esta palabra contiene: el cdigo de peticin recibido (byte de menor valor), el cdigo de respuesta devuelto (byte de mayor valor).

Received_Codes

INT

33002530 07 07/2008

289

UNITE_SERVER

Ejemplo de servidor inmediato


Presentacin Este ejemplo muestra la implementacin de una funcin UNITE_SERVER como servidor inmediato para una funcin de comunicacin READ_VAR. La conexin Modbus correspondiente se conecta a la tarjeta PCMCIA de un mdulo TSX SCY 21601 ubicado en el slot 2 del bastidor de base. Programacin en ST: IF NOT %MW100:X0 THEN UNITE_SERVER(%MW100:2, %MW110:3, %MW10); END_IF;

Programacin

Parmetros de peticin:
Parmetros %MW100:2 %MW110:3 Descripcin Tabla de gestin Ejemplo: el servidor inmediato es SCP114, configurado como esclavo 49 en SCY21601 (slot 4, bastidor 0). Palabra 1: 16#FE00 corresponde al bastidor. Palabra 2: 16#0405 corresponde al slot. Palabra 3: 16#0095 corresponde al canal. Para obtener ms detalles, consulte modalidades de direccionamiento X-WAY (Ver modalidades de direccionamiento, Controladores de comunicacin, Manual de instalacin, X-Way) . %MW10 Respuesta: Byte de menor valor: 16#03, cdigo de recepcin de la funcin de palabras n de lectura UNITE. Byte de mayor valor: 16#03, cdigo de respuesta de la funcin de palabras n de lectura UNITE.

290

33002530 07 07/2008

WRITE_ASYN: escritura asncrona de datos

28

Descripcin
Descripcin de la funcin La funcin WRITE_ASYN permite escribir 1 Kbyte de datos por el canal de mensajera asincrnica de los acopladores TSX ETY en modo TCP/IP. Los datos a los que se puede acceder en escritura son los siguientes: Bits internos y palabras internas. La escritura asincrnica slo se puede llevar a cabo entre dos estaciones de un mismo segmento de red Ethernet TCP/IP. La funcin WRITE_ASYN se emite al final de la tarea MAST slo si sta se encuentra configurada en modo peridico. Es posible activar ocho funciones al mismo tiempo. El tamao de los bferes de emisin y de recepcin se expresa en palabras. Es de 512 palabras, es decir, 1024 bytes. Nota: la funcin de servidor asincrnico es compatible con los protocolos UNI-TE V2.0 o V1. La funcin WRITE_ASYN utiliza el protocolo UNI-TE V2.0. Los parmetros adicionales EN y ENO se pueden configurar.

33002530 07 07/2008

291

WRITE_ASYN

Principio de los intercambios

En la siguiente figura se muestran los intercambios entre dos estaciones para una funcin WRITE_ASYN :

E P Desconexin de WRITE_ASYN la funcin

S Envo de la funcin E P

S Recepcin de la funcin Tratamiento de las peticiones Envo inmediato de la respuesta

E P

S Recepcin de los mensajes Encaminamiento de las respuestas a las funciones WRITE_ASYN

E P

Recepcin de la respuesta en la E P funcin WRITE_ASYN Disminucin del bit de actividad

292

33002530 07 07/2008

WRITE_ASYN

Representacin en FBD

Representacin:
WRITE_ASYN Address Object_Type First_Object Object_Number Data_to_Write Management_Param ADR OBJ NUM NB EMIS GEST

GEST

Management_Param

Representacin en LD

Representacin:
WRITE_ASYN EN Address Object_Type First_Object Object_Number Data_to_Write Management_Param ADR OBJ NUM NB EMIS GEST GEST Management_Param ENO

Representacin en IL

Representacin: LD Address WRITE_ASYN Object_Type, First_Object, Object_Number, Data_to_Write, Management_Param Representacin: WRITE_ASYN(Address, Object_Type, First_Object, Object_Number, Data_to_Write, Management_Param);

Representacin en ST

33002530 07 07/2008

293

WRITE_ASYN

Descripcin de los parmetros

En la siguiente tabla se describen los parmetros de entrada:


Parmetro Address Tipo ARRAY [0.. 5] OF INT CADENA DE CARACTERES Comentario Direccin de la entidad de destino del intercambio. Las direcciones son de tipo: ADDR({Red.Estacin}SYS. Tipo de objetos que se van a escribir: %M: bits internos, %MW: palabras internas, %S: bits de sistema y %SW: palabras de sistema. ndice del primer objeto que se va a escribir en el equipo de destino. Nmero de objetos que se van a escribir. Tabla de palabras que contiene el valor de los objetos que se van a escribir.

Object_Type

First_Object Object_Number Data_to_Write

DINT INT ARRAY [n... m] OF INT

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Tipo Comentario
Tabla de gestin del intercambio (vase Estructura de los parmetros de gestin, p. 35). La confirmacin de operacin toma uno de los siguientes valores: 16#00: intercambio correcto, 16#01: parada por timeout, la respuesta no se ha podido emitir en menos de dos segundos, 16#02: parada por solicitud del usuario (STOP, S0, INIT, rearranque en fro o en caliente), 16#03: formato de direccin incorrecta, 16#05: parmetros de gestin incorrectos, 16#07: destinatario ausente, 16#09: tamao del bfer de recepcin insuficiente, 16#10: tamao del bfer de emisin insuficiente, 16#11: ausencia de recursos del sistema (ya hay ocho funciones activas), 16#19: nmero de intercambio incorrecto y 16#FF: mensaje rechazado. Nota: se debe programar un valor de timeout para detener un intercambio en curso cuando al emisor no le llega la respuesta.

Management_Param ARRAY [0.. 3] OF INT

294

33002530 07 07/2008

WRITE_GDATA: escritura de datos globales Modbus Plus

29

Descripcin
Descripcin de la funcin La funcin WRITE_GDATA permite escribir los datos compartidos, conocidos tambin como datos globales, en una red Modbus Plus. Los datos globales se comparten entre un mximo de 64 estaciones de una misma red Modbus Plus. Cada estacin puede escribir hasta 32 enteros que pueden utilizar todas las estaciones de la red. A su vez, cada estacin puede leer los 32 enteros (como mximo) de cada estacin de la red. Los parmetros adicionales EN y ENO se pueden configurar. Representacin en FBD Representacin:
WRITE_GDATA Address Data_to_Write Management_Param ADR OUT GEST

GEST

Management_Param

33002530 07 07/2008

295

WRITE_GDATA

Representacin en LD

Representacin:
WRITE_GDATA EN Address Data_to_Write Management_Param ADR OUT GEST GEST Management_Param ENO

Representacin en IL

Representacin: LD Address WRITE_GDATA Data_to_Write, Management_Param Representacin: WRITE_GDATA(Address, Data_to_Write, Management_Param); En la siguiente tabla se describen los parmetros de entrada:
Parmetro Address Tipo ARRAY [0.. 5] OF INT Comentario Direccin de la tarjeta PCMCIA que conecta el Premium a la red Modbus Plus. Esta direccin equivale a: ADDR(0.0.1.SYS). Nota: la escritura de los datos se efecta en la tarjeta PCMCIA que, a continuacin, se encarga de compartir los datos. Data_to_Write ARRAY [n... m] OF INT Tabla de palabras que contiene el valor de los objetos que se van a escribir. El tamao de esta tabla debe ser siempre de 32 enteros de 16 bits, que es el tamao mximo de los datos globales en una red Modbus Plus.

Representacin en ST Descripcin de los parmetros

En la siguiente tabla se describen los parmetros de entrada/salida:


Parmetro Management_Param Tipo ARRAY [0.. 3] OF INT Comentario Tabla de gestin del intercambio (vase Estructura de los parmetros de gestin, p. 35). No es necesario inicializar el parmetro de longitud antes del inicio del intercambio.

296

33002530 07 07/2008

WRITE_REG: escritura del registro

30

Descripcin general
Introduccin Contenido: En este captulo se describe el bloque WRITE_REG. Este captulo contiene los siguiente apartados:
Apartado Descripcin Tipos de datos derivados Modo de funcionamiento Descripcin de los parmetros Pgina 298 301 303 304

33002530 07 07/2008

297

WRITE_REG

Descripcin
Descripcin de funciones Con cada flanco ascendente en la entrada REQ, este bloque de funcin escribe un rea de registro del PLC a travs de Modbus Plus, Ethernet TCP/IP o Ethernet SY/ MAX en un slave direccionado. Como parmetros adicionales se pueden configurar EN y ENO. Nota: Para programar la funcin WRITE_REG debe conocer los procedimientos de acceso utilizados en la red. La descripcin detallada de las estructuras de ruta de acceso Modbus Plus se encuentra en "Modbus Plus Network Planning and Installation Guide". En el caso de que se implemente la ruta de acceso de Ethernet TCP/IP o SY/MAX, se debern utilizar los productos estndar de ruta de acceso de Ethernet-IP. La descripcin detallada de las rutas de acceso TCP/IP figura en el manual "Manual de usuario sobre la configuracin de Quantum con Unity ProTCP/IP".

Nota: En el programa puede utilizar diversos ejemplares de este bloque de funcin. No obstante, no es posible instanciar estos ejemplares de forma mltiple.

Representacin en FBD

Representacin:
WRITE_REG_Instance WRITE_REG StartWriteOnce OffsetAddress NumberOfRegisters SourceDataArea DataStructureForTransfer REQ SLAVEREG NO_REG REG_WRIT ADDRFLD DONE ERROR SetAfterWritingData SetInCaseOfError

STATUS

ErrorCode

298

33002530 07 07/2008

WRITE_REG

Representacin en LD

Representacin:
WRITE_REG_Instance WRITE_REG EN StartWriteOnce REQ OffsetAddress NumberOfRegisters SourceDataArea DataStructureForTransfer SLAVEREG NO_REG REG_WRIT ADDRFLD STATUS ErrorCode DONE SetInCaseOfError ERROR ENO SetAfterWritingData

Representacin en IL

Representacin: CAL WRITE_REG_Instance (REQ:=StartWriteOnce, SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, REG_WRIT:=SourceDataArea, ADDRFLD:=DataStructureForTransfer, DONE=>SetAfterWritingData, ERROR=>SetInCaseOfError, STATUS=>ErrorCode) Representacin: WRITE_REG_Instance (REQ:=StartWriteOnce, SLAVEREG:=OffsetAddress, NO_REG:=NumberOfRegisters, REG_WRIT:=SourceDataArea, ADDRFLD:=DataStructureForTransfer, DONE=>SetAfterWritingData, ERROR=>SetInCaseOfError, STATUS=>ErrorCode) ;

Representacin en ST

33002530 07 07/2008

299

WRITE_REG

Descripcin de los parmetros

Descripcin de los parmetros de entrada


Parmetro REQ Tipo de datos BOOL Significado Con cada flanco ascendente en la entrada REQ, este bloque de funcin escribe un rea de registro del PLC a travs de Modbus Plus, Ethernet TCP/IP o Ethernet SY/MAX en un slave direccionado. Direccin de la primera direccin %MW del slave en el que se debe escribir. Nmero de direcciones que se deben escribir desde el slave. rea de datos de origen (Se debe declarar una estructura de datos como Located Variable para los datos de origen). Estructura de datos para la transmisin de la direccin Modbus Plus, TCP/IP o SY/MAX-IP.

SLAVEREG NO_REG REG_WRIT

DINT INT ANY

ADDRFLD

WordArr5

Descripcin de los parmetros de salida


Parmetro DONE ERROR STATUS Tipo de datos BOOL BOOL WORD Significado Ajustado a "1" durante un ciclo si se han escrito datos. Ajustado a "1" durante un ciclo cuando se produce un error. En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145

Error de ejecucin

Para obtener una lista de todos los cdigos y los valores de error del mdulo, consulte Extendido, p. 406.

300

33002530 07 07/2008

WRITE_REG

Tipos de datos derivados


Descripcin de elementos para WordArr5 en Modbus Plus Descripcin de elementos para WordArr5 en Modbus Plus:
Elemento WordArr5[1] Tipo de datos WORD Significado Byte de menor valor: El registro de ruta de acceso 1 se utiliza para determinar la direccin (direccin de ruta de acceso una de cinco) del participante de destino en una transmisin de red. El ltimo byte en la ruta de acceso que no se corresponda con cero es el participante de destino. Byte de mayor valor: Slot del modulo adaptador de red (NOM), si existe. Registro de ruta de acceso 2 Registro de ruta de acceso 3 Registro de ruta de acceso 4 Registro de ruta de acceso 5

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

Descripcin de elementos para WordArr5 en Ethernet TCP/IP

Descripcin de elementos para WordArr5 en Ethernet TCP/IP:


Elemento WordArr5[1] Tipo de datos WORD Significado Byte de mayor valor: Slot del mdulo NOE Byte de menor valor: ndice de copiado de un Transporter MBP a Ethernet (MET) Byte 4 (MSB) de la direccin IP de destino de 32 bits Byte 3 de la direccin IP de destino de 32 bits Byte 2 de la direccin IP de destino de 32 bits Byte 1 (LSB) de la direccin IP de destino de 32 bits

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

33002530 07 07/2008

301

WRITE_REG

Descripcin de elementos para WordArr5 en Ethernet SY/MAX

Descripcin de elementos para WordArr5 en Ethernet SY/MAX:


Elemento WordArr5[1] Tipo de datos WORD Significado Byte de mayor valor: Slot del mdulo NOE Byte de menor valor: ndice de copiado de un Transporter MBP a Ethernet (MET) Nmero de estacin de destino (o ajustar a FF hex) Terminador (ajustar a FF hex) Sin significado Sin significado

WordArr5[2] WordArr5[3] WordArr5[4] WordArr5[5]

WORD WORD WORD WORD

302

33002530 07 07/2008

WRITE_REG

Modo de funcionamiento
Modo de funcionamiento del bloque WRITE_REG Se puede programar un gran nmero de bloques de funcin WRITE_REG, pero slo pueden estar activas cuatro operaciones de escritura al mismo tiempo. En este caso, no tiene importancia si dichas operaciones se realizan por medio de este bloque de funcin u otros (p. ej. MBP_MSTR o CWRITE_REG). Todos los bloques de funcin emplean una ruta de transaccin de datos y necesitan varios ciclos para completar una orden. Si se utilizan varios bloques de funcin WRITE_REG en una aplicacin, hay que diferenciarlos al menos en los valores de los parmetros NO_REG o REG_WRIT. Nota: La comunicacin TCP/IP entre un autmata Quantum (NOE 211 00) y un autmata Momentum (todas las CPU TCP/IP y todos los mdulos de E/S TCP/IP) slo es posible cuando en cada ciclo del autmata nicamente se lleva a cabo una orden de escritura o de lectura. Si se envan varias rdenes por cada ciclo del autmata, la comunicacin permanece estancada, sin generar ningn mensaje de error en el registro de estado del bloque de funcin. Las seales de estado DONE y ERROR indican al programa de aplicacin el estado del bloque de funcin. La informacin de acceso completa est incluida en la estructura de datos WordArr5 de la entrada ADDRFLD. El tipo del bloque de funcin conectado a esta entrada se orienta de acuerdo con la red utilizada. Utilice: El bloque de funcin ModbusP_ADDR (vase ModbusP_ADDR: direccin de Modbus Plus, p. 151) para Modbus Plus. El bloque de funcin TCP_IP_ADDR (vase TCP_IP_ADDR: direccin TCP/IP, p. 279) para Ethernet TCP/IP. El bloque de funcin SYMAX_IP_ADDR (vase SYMAX_IP_ADDR: direccin SY/MAX IP, p. 275) para Ethernet SY/MAX.

Nota: La estructura de datos WordArr5 tambin se puede utilizar con constantes.

33002530 07 07/2008

303

WRITE_REG

Descripcin de los parmetros


REQ Un flanco ascendente inicia la transaccin de escritura. El parmetro se puede indicar como direccin, Located Variable, Unlocated Variable o literal. SLAVEREG Comienzo del rea en el slave direccionado donde se van a escribir los datos de origen. El rea de destino se encuentra siempre dentro del rea del rango de direcciones %MW. Nota: Para slaves de un PLC que no sea Unity Pro: Esta rea de destino siempre se encuentra dentro del rea de registro 4x. SLAVEREG espera la direccin de destino como offset dentro del rea 4x. El "4" de la izquierda no se tiene en cuenta (p. ej. 59 (contenido de las variables o valor del literal) = 40059). El parmetro se puede indicar como direccin, Located Variable, Unlocated Variable o literal.

NO_REG

Nmero de direcciones que deben escribirse en el procesador slave (1 a 100). El parmetro se puede indicar como direccin, Located Variable, Unlocated Variable o literal.

REG_WRIT

Para este parmetro se debe definir una matriz (ARRAY) del tamao del envo que se va a realizar ( NO_REG), que se utilizar como rea de datos de origen. El nombre de esta matriz se transferir como parmetro. Si se define una matriz demasiado pequea, slo se transferir la cantidad de datos que tenga cabida en la matriz. El parmetro se debe indicar como Located Variable.

DONE

La transicin a estado ON durante un ciclo de programa implica que se han transmitido los datos. El parmetro se puede indicar como direccin, Located variable o Unlocated variable.

304

33002530 07 07/2008

WRITE_REG

ERROR

La transicin a estado ON durante un ciclo de programa implica que se ha descubierto un nuevo error. El parmetro se puede indicar como direccin, Located variable o Unlocated variable.

STATUS

En caso de que se produzca un error al ejecutar la funcin, el cdigo de error permanecer en esta salida durante un ciclo. Para cdigo de error, consulte: Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139 Cdigos de error especficos de SY/MAX, p. 143 Cdigos de error de TPC/IP Ethernet, p. 145 El parmetro se puede indicar como direccin, Located variable o Unlocated variable.

33002530 07 07/2008

305

WRITE_REG

306

33002530 07 07/2008

WRITE_VAR: variables de escritura

31

Presentacin
Objetivo Contenido: En este captulo se describe la funcin de comunicacin WRITE_VAR. Este captulo contiene los siguiente apartados:
Apartado Descripcin Pantalla de entrada asistida Ejemplo de cmo escribir palabras en una red Ejemplo de escritura de palabras mediante la conexin serie de PLC Modicon M340 Ejemplo de comprobacin de ejecucin Pgina 308 313 315 317 319

33002530 07 07/2008

307

WRITE_VAR

Descripcin
Descripcin de las funciones La funcin WRITE_VAR se utiliza para escribir uno o ms objetos de lenguaje del mismo tipo: bits internos, palabras internas. Los objetos que se van a escribir deben ser siempre consecutivos. Pueden estar ubicados en una CPU remota o en un dispositivo conectado a un canal de comunicacin.

ADVERTENCIA
Compatibilidad de datos intercambiados Las alineaciones de la estructura de datos no son las mismas para Premium/ Quantum y M340, as que compruebe que los datos intercambiados son compatibles. Consulte DDT: Normas de asignacin (Ver Unity Pro, Lenguajes y estructura del programa, Manual de referencia, DDT: Normas de asignacin) para las normas de alineacin. Si no se siguen estas instrucciones pueden producirse lesiones personales graves o mortales o daos en el equipo. Pueden configurarse los parmetros EN y ENO adicionales. Representacin en FBD Representacin:
WRITE_VAR Address Object_Type First_Object Object_Number Data_to_Write Management_Param ADR OBJ NUM NB EMIS GEST

GEST

Management_Param

308

33002530 07 07/2008

WRITE_VAR

Representacin LD

Representacin:
WRITE_VAR EN Address Object_Type First_Object Object_Number Data_to_Write Management_Param ADR OBJ NUM NB EMIS GEST GEST Management_Param ENO

Representacin en IL

Representacin: Direccin LD WRITE_VAR Object_Type, First_Object, Object_Number, Data_to_Write, Management_Param Representacin: WRITE_VAR(Address, Object_Type, First_Object, Object_Number, Data_to_Write, Management_Param);

Representacin ST

33002530 07 07/2008

309

WRITE_VAR

Descripcin de parmetros

En la tabla siguiente se describen los parmetros de entrada:


Parmetros Address Tipo ARRAY [0.. 5] OF INT para Premium ARRAY [0.. 7] OF INT para Modicon M340 Observacin Las instrucciones siguientes slo son vlidas para PLC Premium: La funcin ADDR proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. Direccin de la entidad de destino del intercambio. Las direcciones siguientes estn prohibidas: {Red.Estacin}APP, {Red.Estacin}APP.nm y direcciones de difusin (TODAS, 0 para el mdulo TSX SCY 11601). Las instrucciones siguientes slo son vlidas para PLC Modicon M340: La funcin ADDM proporciona la direccin del canal de recepcin del mensaje en modalidad de caracteres. La sintaxis de la direccin es del tipo ADDM (r.m.c.node). Object_Type STRING Tipo de objetos que deben escribirse para PLC Premium: %M: bits internos, %MW: palabras internas, %S: bits de sistema, %SW: palabras de sistema. Tipo de objetos que deben escribirse para PLC Modicon M340: %M: bits internos, %MW: palabras internas. First_Object Object_Number Data_to_Write DINT INT ARRAY [n... m] OF INT ndice del primer objeto que va a escribirse en el dispositivo de destino. Nmero de objetos que se van a escribir Tabla de palabras que contienen el valor de los objetos que van a escribirse.

310

33002530 07 07/2008

WRITE_VAR

En la tabla siguiente se describen los parmetros de entrada/salida:


Parmetros Management_Param Tipo ARRAY [0.. 3] OF INT Observacin Tabla de gestin de intercambio (vase Estructura de los parmetros de gestin, p. 35) En PLC Modicon M340, existe un nuevo bit de cancelacin disponible en la palabra 1 de rango de la tabla de gestin de intercambio. Este bit de cancelacin se encuentra ubicado en la palabra de rango 1, que consta de dos bytes: Byte de mayor valor: nmero de intercambio Byte de menor valor: bit de actividad (rango 0) y bit de cancelacin (rango 1). La EF WRITE_VAR puede anularse mediante la EF CANCEL, o estableciendo en 1 el bit de cancelacin de la tabla de gestin (Ver Modicon M340 con Unity Pro, Conexin serie, Manual del usuario, Servicios admitidos por un procesador maestro de conexin Modbus).

Nota: El parmetro de longitud no debe inicializarse antes de iniciar la funcin.

33002530 07 07/2008

311

WRITE_VAR

Transacciones simultneas
Configuracin

En la tabla siguiente se detallan las capacidades de cada canal de comunicacin para procesar transacciones de forma simultnea, de acuerdo con las distintas configuraciones de los PLC Micro y Premium.
Micro TSX 57 10 TSX 57 20 TSX 57 23/30/40/ TSX 57 46/56 45/55, PCX 57, PMX 57 4 8 1 1 4 6 8 1 8 10 8 4 16 8 8 8 1 4 6 8 1 8 10 8 4 16 64

Puerto de terminal maestro Uni-Telway Conexin PCMCIA o SCY maestro UniTelway Puerto de terminal esclavo cliente UniTelway Conexin PCMCIA o SCY esclavo cliente Uni-Telway Puerto de terminal esclavo servidor UniTelway Conexin PCMCIA o SCY esclavo servidor Uni-Telway Puerto de terminal Modbus Conexin PCMCIA o SCY Modbus Modalidad de caracteres, bloque de terminales Conexin PCMCIA o SCY de modalidad de caracteres PCMCIA CANopen Conexin PCMCIA o SCY Fipway Modbus Plus Ethernet Ethernet incorporado

4 1 4 1 4 4 4 4 1 4 4 4 -

4 8 1 1 4 6 8 1 8 10 8 4 16 -

4 8 1 1 4 6 8 1 8 10 8 4 16 -

En la tabla siguiente se detallan las capacidades de cada canal de comunicacin para procesar transacciones de forma simultnea, de acuerdo con las distintas configuraciones de los PLC Modicon M340.
Configuracin CANopen incorporado Ethernet incorporado Puerto serie maestro Modbus BMX P34 1000. 8 BMX P34 2000. 16 BMX P34 2010. 16 16 BMX P34 2020. 16 16 BMX P34 2030. 16 16 -

312

33002530 07 07/2008

WRITE_VAR

Pantalla de entrada asistida


Presentacin Para esta funcin de comunicacin, puede solicitar la pantalla de entrada asistida. Tenga en cuenta que la pantalla de entrada asistida no est disponible para Modicon M340. Nota: Los smbolos de variable se aceptan en los diferentes campos de la pantalla.

Ilustracin

La pantalla siguiente muestra un ejemplo de la pantalla de entrada asistida de la funcin:


WRITE_VAR Parmetros Direccin: Tipo de objeto para escribir: Direccin del primer objeto para escribir: Nmero de objetos consecutivos para escribir: Datos para escribir: Informe:

... ... ... ... ...

Tipos posibles: Matriz de enteros constantes, matriz de enteros (n>=6) Direccin ADDR(..) Aceptar Cancelar

Direccin

Para PLC Premium, los tipos de objetos posibles son los siguientes: ADDR(STRING), ARRAY [0..5] OF INT.

Nota: Si introduce un valor directamente en un campo, el botn de entrada de direccin asistida se vuelve gris.

33002530 07 07/2008

313

WRITE_VAR

Tipo de objeto para escribir

Para PLC Premium, las opciones posibles son las siguientes: %M para la escritura de bits internos. %MW para la escritura de palabras internas. %S para la escritura de bits de sistema. %SW para la escritura de palabras de sistema. Para PLC Modicon M340, las opciones posibles son las siguientes: %M para la escritura de bits internos. %MW para la escritura de palabras internas.

Nota: Basta con seleccionar la solucin que desee en el men desplegable.

Direccin del primer objeto para escribir

Los objetos posibles son de tipo DINT: variables, constantes, valor inmediato.

Nota: Si introduce una constante, aparecer un campo de entrada para ello. Si introduce una variable, sta puede o no localizarse (vase , p. 437). Por otro lado, los objetos que deben escribirse son variables ubicadas obligatorias.

Nmero de objetos consecutivos para escribir

Los objetos posibles son del tipo INT: variables, constantes, valor inmediato.

Nota: Si introduce una constante, aparecer un campo de entrada para ello. Si introduce una variable, sta puede o no localizarse.

Datos para escribir

Los datos del rea de escritura son una matriz de enteros. El tamao de la matriz depende del nmero de objetos que deben escribirse. Esta matriz de enteros puede o no localizarse. El informe es una matriz de 4 enteros. Nota: Tenga cuidado de no utilizar varias reas de memoria idnticas para las tablas de informes; de lo contrario, la funcin de lectura de variables podra no funcionar.

Informe

314

33002530 07 07/2008

WRITE_VAR

Ejemplo de cmo escribir palabras en una red


Presentacin Hasta ahora, los ejemplos se han escrito utilizando el direccionamiento directo (uso de %MWi), pero tambin es posible crear estos mismos ejemplos mediante variables no ubicadas. El ejemplo siguiente utiliza variables no ubicadas e incluye la escritura de una tabla de 50 palabras no ubicadas llamada Tab_1 (declarada como una MATRIZ [0..49] DE INT) en el esclavo Uni-Telway, con la direccin: Red 20 Estacin 1 Mdulo SCM2116 en TSX 87 en slot 5 del bastidor base Canal 1 Direccin del servidor del esclavo Ad0 = 3. Los valores que deben escribirse se encuentran en la variable Tab_1 del emisor. Los parmetros de gestin estn ubicados en una tabla de cuatro enteros denominada Management_Parameter (declarada como MATRIZ [0..3] DE INT). Ilustracin Las dos estaciones se conectan a travs de una red Fipway.
Red Fipway 20 TSX 87 TSX Premium

{20.2} {20.1} Uni-Telway

Ad0 = 3

Ad0 = 1

33002530 07 07/2008

315

WRITE_VAR

Programacin

Programacin en ST: SI RE(%I0.3.1) Y NO Management_Parameter[0].0 ENTONCES WRITE_VAR(ADDR({20.1}0.5.1.3),%MW,0,50,Tab_1,Management_ Parameter); END_IF; Parmetros de peticin:
Parmetros ADDR({20.1}5.1.3) Descripcin {20.1}: red 20, estacin 1 0: bastidor 5: mdulo 1: canal 1 3: direccin de destino Tipo de objeto (palabra interna) Direccin del primer objeto para escribir Nmero de objetos consecutivos para escribir Datos para escribir Tabla de gestin

%MW 0 50 Tab_1 Management_Parameter

316

33002530 07 07/2008

WRITE_VAR

Ejemplo de escritura de palabras mediante la conexin serie de PLC Modicon M340


Presentacin El ejemplo utiliza dos procesadores Modicon M340 que se comunican a travs de la conexin serie Modbus. El ejemplo siguiente utiliza variables no ubicadas e incluye la escritura de una tabla de 50 palabras no ubicadas llamada Tab_1 (declarada como MATRIZ [0..49] DE INT) en el esclavo Modbus. Los parmetros de gestin estn ubicados en una tabla de cuatro enteros llamados Management_Parameter (declarados como MATRIZ [0..3] DE INT). En dicho ejemplo, el nmero de esclavos Modbus es 7, as que el parmetro ADDM de entrada es 0.0.0.7: 0: nmero de bastidor del procesador igual a 0, 0: nmero de slot del procesador dentro del bastidor, igual a 0 ya que el nmero de slot de un procesador Modicon M340 es siempre 0, 0: nmero de canal, igual a 0, ya que la conexin serie de un procesador Modicon M340 es siempre el canal 0, 7: el nmero de esclavo configurado es 7. Los valores que deben escribirse se encuentran en la variable Tab_1 del emisor. Ilustracin Los dos procesadores Modicon 340 estn conectados a travs de una conexin Modbus:

Descripcin del ejemplo

Maestro Modbus Procesador BMX P34 2010

Cable VW3 A8 306 R30

Esclavo Modbus Procesador BMX P34 2010

33002530 07 07/2008

317

WRITE_VAR

Programacin

Programacin en ST: SI RE(%I0.3.1) Y NO Management_Parameter[0].0 ENTONCES WRITE_VAR(ADDM(0.0.0.7),%MW,0,50,Tab_1,Management_Parame ter); END_IF; Los parmetros de solicitud son los siguientes:
Parmetros ADDM(0.0.0.7) Descripcin 0: nmero de bastidor del procesador esclavo 0: nmero de slot del procesador esclavo 0: nmero de canal (nmero del puerto serie) 7: nmero de esclavo configurado Tipo de objeto (palabra interna) Direccin del primer objeto para escribir Nmero de objetos consecutivos para escribir Datos para escribir Tabla de gestin

%MW 0 50 Tab_1 Management_Parameter

318

33002530 07 07/2008

WRITE_VAR

Ejemplo de comprobacin de ejecucin


Presentacin El ejemplo siguiente ilustra la funcin WRITE_VAR con una comprobacin del parmetro de gestin. Programacin en ST: SI NO %M20 Y %I0.1.2 ENTONCES %MW200:4:= 0; INC %MW1700 %MW202:= 50; WRITE_VAR(ADDR(0.3.1.7),%MW,20,1,%MW1700:1,%MW200:4); SET %M20; END_IF; El bit de entrada %I0.1.2 controla la funcin. El bit de Internet %M20 se utiliza para comprobar la actividad de la funcin. %MW200:4:= 0; establece la tabla de gestin en 0. INC %MW1700; incrementa la palabra %MW1700. MW202:= 50; inicializa el valor de timeout en 5 segundos.

Programacin de la funcin

Nota: WRITE_VAR(ADDM(0.3.1.7),%MW,20,1,%MW1700:4,%MW200:4); La sintaxis debe utilizarse para PLC Modicon M340, ya que la funcin ADDR no puede ser utilizada por un PLC Modicon M340.

33002530 07 07/2008

319

WRITE_VAR

Programacin de la comprobacin de intercambio

Programacin en ST: SI %M20 Y %M200.0 ENTONCES INC %MW204; IF %MW201 = 0 THEN INC %MW205; ELSE SET %Q0.2.2; INC %MW206; %MW207 := %MW201; END_IF; END_IF; %MW204 contabiliza el nmero de intercambios. %MW205 contabiliza el nmero de intercambios correctos. %MW206 contabiliza el nmero de intercambios que generan errores. %MW207 almacena el mensaje de error. %Q0.2.2 indica un fallo de intercambio.

320

33002530 07 07/2008

XXMIT: transmisin

32
Descripcin general
Introduccin Contenido: En este captulo se describe el bloque XXMIT. Este captulo contiene las siguientes secciones:
Seccin 32.1 32.2 32.3 32.4 32.5 Apartado Introduccin a XXMIT XXMIT: funciones XXMIT: normas de programacin Referencias tcnicas para XXMIT Informacin de cableado Pgina 323 324 370 372 384

33002530 07 07/2008

321

XXMIT

322

33002530 07 07/2008

XXMIT

32.1

Introduccin a XXMIT

Funciones de XXMIT
Vista general de la funcin XXMIT permite la utilizacin del puerto serie de los PLC para realizar una comunicacin bajo el control del programa de aplicacin. Se permiten los siguientes tipos de comunicacin: Modbus como maestro Entrada/Salida ASCII simple Entrada ASCII con uno o dos caracteres de finalizacin Comunicacin con mdem Descripcin de las funciones XXMIT enva mensajes Modbus desde un PLC "maestro" a varios PLC esclavos o enva cadenas de caracteres desde el puerto esclavo Modbus nmero 1 de los PLC a impresoras y terminales ASCII. XXMIT enva estos mensajes por medio de mdems de marcacin telefnica, radio mdems o simplemente mediante conexiones directas. El bloque XXMIT realiza funciones de entrada ASCII generales en la modalidad de comunicacin, incluidas las ASCII sencillas y las ASCII finalizadas. Podr importar y exportar datos binarios o ASCII en su PLC. XXMIT posee un sistema de diagnstico integrado que realiza las comprobaciones necesarias para asegurarse de que no hay ningn otro XXMIT activo en el mismo puerto del PLC. Dentro del XXMIT, las entradas de control permiten al usuario controlar los enlaces de comunicacin entre el PLC y los dispositivos DCE (Data Communication Equipment o equipo de comunicacin de datos) conectados al puerto Modbus nmero 1 del PLC. XXMIT activa el LED del puerto cuando se transmiten datos.

AVISO
DATOS NO VLIDOS En el caso de mensajes ASCII, no hay control (similar a un CRC o a una suma de chequeado) que garantice la validez de los datos recibidos. Para evitar la recepcin de una dato no vlido debido a perturbaciones elctricas, es recomendable utilizar mensajes Modbus que incluyan una verificacin por redundancia cclica (Cyclical Redundancy Checking, o CRC). Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

33002530 07 07/2008

323

XXMIT

32.2
Presentacin
Descripcin general Contenido

XXMIT: funciones

En esta seccin se describe XXMIT.

Esta seccin contiene los siguientes apartados:


Apartado Breve descripcin Representacin Descripcin detallada de parmetros Funciones de comunicacin de XXMIT Funciones ASCII de XXMIT Funciones de mdem de XXMIT Funciones Modbus de XXMIT FIFO y control de flujo Ejemplos de aplicacin Pgina 325 326 330 341 342 347 348 354 359

324

33002530 07 07/2008

XXMIT

Breve descripcin
Descripcin de las funciones Los bloques de funciones XXMIT envan mensajes Modbus desde un PLC maestro a varios PLC esclavos o envan cadenas de caracteres ASCII desde el puerto esclavo Modbus nmero 1 a impresoras y terminales ASCII. XXMIT enva estos mensajes por medio de mdems de marcacin telefnica, radio mdems o simplemente mediante conexiones directas. Nota: Los bloques de funciones XXMIT slo se pueden utilizar en la tarea MAST. Se muestra un cdigo de error inmediato (127) si se inicia en las tareas FAST/AUX o EVENT (Unity Pro no lleva a cabo ningn control en el momento de la generacin).

Nota: EN y ENO NO deben utilizarse con XXMIT; de lo contrario, los parmetros de salida podran inmovilizarse.

Requisitos de software y hardware

Software XXMIT requiere el siguiente software: Software Unity Pro 2.3 o superior, PLC Quantum con la versin 2.3 del sistema operativo o superior.

Nota: Para importar en Unity Pro una seccin de programa que contenga unos bloques de funciones XXMIT, es necesario configurar un PLC Quantum con una versin igual a 2.30 o superior. Hardware XXMIT no admite el siguiente hardware: PLC Quantum que no admiten lenguajes Unity Pro IEC PLC de seguridad Quantum PLC Premium PLC Modicon M340 Simulador del PLC

33002530 07 07/2008

325

XXMIT

Representacin
Representacin FBD Representacin:
XXMIT_instance XXMIT

Start_param Command_param MsgOut_param MsgLen_param Port_param Baudrate_param Databits_param Stopbits_param Parity_param RespTout_param RetryLmt_param StartDly_param EndDly_param

Start Command MsgOut MsgLen Port Baudrate Databits Stopbits Parity RespTout RetryLmt StartDly EndDly

Active Done Error MsgIn RecCount Status Retry

Active_param Done_param Error_param MsgIn_param RecCount_param Status_param Retry_param

326

33002530 07 07/2008

XXMIT

Representacin LD

Representacin:
XXMIT_instance XXMIT EN Start_param Command_param MsgOut_param MsgLen_param Port_param Baudrate_param Databits_param Stopbits_param Parity_param RespTout_param RetryLmt_param StartDly_param EndDly_param Start Command MsgOut MsgLen Port Baudrate Databits Stopbits Parity RespTout RetryLmt StartDly EndDly ENO Active Done Error MsgIn RecCount Status Retry Active_param Done_param Error_param MsgIn_param RecCount_param Status_param Retry_param

Representacin IL

Representacin: CAL XXMIT_instance(Start:=Start_param, Command:=Command_param, MsgOut:=MsgOut_param, MsgLen:=Msglen_param, Port:=Port_param, Baudrate:=Baudrate_param, Databits:=Databits_param, Stopbits:=Stopbits_param, Parity:=Parity_param, RespTout:=RespTout_param, RetryLmt:=RetryLmt_param, StartDly:=StartDly_param, EndDly:=EndDly_param, Error=>Error_param, MsgIn=>MsgIn_param, RecCount=>RecCount_param, Status=>Status_param, Retry=>Retry_param)

33002530 07 07/2008

327

XXMIT

Representacin ST

Representacin: XXMIT_instance (Start:=Start_param, Command:=Command_param, MsgOut:=MsgOut_param, MsgLen:=Msglen_param, Port:=Port_param, Baudrate:=Baudrate_param, Databits:=Databits_param, Stopbits:=Stopbits_param, Parity:=Parity_param, RespTout:=RespTout_param, RetryLmt:=RetryLmt_param, StartDly:=StartDly_param, EndDly:=EndDly_param, Error=>Error_param, MsgIn=>MsgIn_param, RecCount=>RecCount_param, Status=>Status_param, Retry=>Retry_param); Descripcin del parmetro del bloque:
Parmetros Start (vase Inicio, p. 330) Command (vase Comando, p. 330) MsgOut (vase MsgOut, p. 333) MsgLen (vase MsgLen, p. 334) Port (vase Port, p. 334) Baudrate (vase Baudrate, p. 334) Databits (vase Databits, p. 334) Stopbits (vase Stopbits, p. 335) Parity (vase Paridad, p. 335) RespTout (vase RespTout, p. 335) RetryLmt (vase RetryLmt, p. 335) StartDly (vase StartDly, p. 335) EndDly (vase EndDly, p. 335) Tipo de datos Significado BOOL WORD ANY INT BYTE INT BYTE BYTE BYTE INT INT INT INT El valor 1 inicia la operacin de XXMIT (vase Inicio, p. 330) Especifica el comando que se va a ejecutar (vase Comando, p. 330) Mensaje que se va a enviar (vase MsgOut, p. 333) Longitud del mensaje de salida (vase MsgLen, p. 334) Seleccin de la interfase de comunicacin (slo puerto 1) (vase Port, p. 334) Tasa de baudios (vase Baudrate, p. 334) Bits de datos (vase Databits, p. 334) Bits de parada (vase Stopbits, p. 335) Paridad (vase Paridad, p. 335) Tiempo de espera para una respuesta vlida (vase RespTout, p. 335) Nmero de reintentos hasta recibir una respuesta vlida (vase RetryLmt, p. 335) Tiempo de espera antes de la transmisin del mensaje (vase StartDly, p. 335) Tiempo de espera despus de la transmisin del mensaje (vase EndDly, p. 335)

Descripcin de parmetros

328

33002530 07 07/2008

XXMIT

Parmetros Active (vase Activo, p. 336)

Tipo de datos Significado BOOL El valor 1 indica que se est realizando una operacin de XXMIT (vase Activo, p. 336) El valor 1 indica que la operacin de XXMIT se ha completado satisfactoriamente. (vase Done, p. 336) El valor 1 indica que ha surgido un error o que la operacin de XXMIT ha terminado. (vase Error, p. 336) Mensaje entrante (vase MsgIn, p. 336) Muestra el nmero de caracteres recibidos (vase RecCount, p. 336) Muestra un cdigo de fallo generado por XXMIT (vase Status, p. 337) Indica el nmero actual de reintentos realizados por XXMIT (vase Retry, p. 340)

Done (vase Done, BOOL p. 336) Error (vase Error, p. 336) Msgln (vase MsgIn, p. 336) RecCount (vase RecCount, p. 336) Status (vase Status, p. 337) BOOL

ANY INT INT

Retry (vase Retry, INT p. 340)

33002530 07 07/2008

329

XXMIT

Descripcin detallada de parmetros


Inicio Un valor de 1 en la seal de inicio activa la operacin de XXMIT. El valor 1 deber aplicarse hasta que la operacin se haya completado o hasta que se produzca un error. Nota: Los parmetros de entrada de XXMIT se deben inicializar antes de ajustar la entrada START. No se deben cambiar mientras el bloque de funciones est activo.

Comando

XXMIT interpreta cada bit de la palabra de comando como una funcin que debe realizarse. Si los bits 9 y 8 estn activados simultneamente, si dos o ms de los bits 3, 2, 1 0 estn activados simultneamente o si el bit 9 no est activado cuando los bits 3, 2, 1 0 estn activados, se genera un error 129. Para obtener ms detalles, consulte Funciones de comunicacin de XXMIT, p. 341. A continuacin, se muestra una tabla con las definiciones de cada bit. Estructura de las palabras de comando
Bit 15 MSB 9 8 7 0 LSB

Definiciones de los bits de las palabras de comando del bloque de funciones XXMIT
Bit Bit 15 (msb) Definicin Reservado

Bit 14 Habilitar Se establece en 1 cuando un DCE que est conectado al PLC requiere control de mdem un protocolo de hardware que utilice el control RTS/CTS. Este bit se RTS/CTS puede utilizar junto con los valores incluidos en StartDly y EndDly. El retardo de inicio de transmisin mantiene RTS asegurado durante el tiempo establecido en StartDly (ms) antes de que XXMIT enve un mensaje desde el puerto del PLC. Asimismo, el retardo de fin de transmisin mantiene RTS asegurado durante el tiempo establecido en EndDly (ms) despus de que XXMIT haya terminado de enviar un mensaje desde el puerto del PLC. Una vez finalizado el tiempo establecido como retardo de fin de transmisin, XXMIT anula RTS.

330

33002530 07 07/2008

XXMIT

Bit

Definicin

Bit 13 Habilitar Se establece en 1 cuando el puerto seleccionado debe funcionar en la modalidad RS485 modalidad RS485. En cualquier otro caso, su valor predeterminado ser 0, que es la modalidad RS232. Al utilizar el puerto Modbus en modalidad RS485 con mensajes Modbus, no olvide utilizar exactamente los mismos parmetros (baudrate, databits, stopbits, parity) para el bloque XXMIT que los que estn configurados para ese puerto. Bit 12 Bit 11 Entrada ASCII finalizada Reservado Se establece en 1 para eliminar y rechazar todos los caracteres de FIFO hasta coincidir con la cadena inicial; a continuacin, estos caracteres iniciales y los siguientes se escriben en MsgIn hasta coincidir con la secuencia final. La cadena final tambin se escribe en MsgIn. Consulte el captulo Funcin de entradas ASCII finalizadas, p. 342 para obtener ms informacin. Se establece en 1 para eliminar los caracteres ASCII de FIFO y escribirlos en la matriz MsgIn. Consulte el captulo Funcin de entradas ASCII simples, p. 344 para obtener ms informacin. Se establece en 1 cuando desea enviar mensajes ASCII fuera del PLC. XXMIT enva cadenas ASCII de hasta 1.024 caracteres de longitud. Puede programar el mensaje ASCII en MsgOut. Utilice slo el bit 9 o el bit 8; no intente usar los dos. Se establece en 1 cuando desea enviar mensajes Modbus fuera del PLC. Los mensajes Modbus pueden estar en formato RTU o ASCII. Cuando el nmero de bits de datos es igual a 8, XXMIT utiliza el formato Modbus RTU. Cuando el nmero de bits de datos es igual a 7, XXMIT utiliza el formato Modbus ASCII. Utilice slo el bit 9 o el bit 8; no intente usar los dos. Se establece en 1 para que el bloque XXMIT pueda controlar el puerto seleccionado (1) desde el PLC. El bloque comienza a recibir los caracteres ASCII en FIFO circular vaco de 512 bytes. Consulte el captulo FIFO de recepcin ASCII, p. 354 para obtener ms informacin. Se establece en 1 para poder realizar una gestin especial del carcter de retroceso ASCII (BS, 8 Hex) si se utiliza una entrada ASCII simple (bit 10) o una entrada ASCII finalizada (bit 11). Si se establece el bit 6, todos los caracteres de retroceso NO se almacenarn en MsgIn. Consulte el captulo Habilitacin de retroceso, p. 354 para obtener ms informacin. Se establece en 1 para permitir el control de flujo de hardware de dplex completo con las seales de establecimiento de enlace RTS y CTS para los mensajes ASCII. RTS/CTS funciona tanto en modalidad de entrada como de salida. Consulte el captulo Habilitacin del Control de flujo RTS/CTS, p. 355 para obtener ms informacin.

Bit 10 Entrada ASCII simple Bit 9 Habilitar mensajes de cadena ASCII Bit 8 Habilitar mensajes Modbus

Bit 7 Habilitar FIFO de recepcin ASCII Bit 6 Habilitar retroceso

Bit 5 Habilitar control de flujo RTS/CTS

33002530 07 07/2008

331

XXMIT

Bit Bit 4 Habilitar control de flujo Xon/Xoff

Definicin Se establece en 1 para permitir el control de flujo de software de dplex completo con el carcter Xon ASCII (DC1, 11 Hex) y el carcter Xoff ASCII (DC3, 13 Hex). Xon/Xoff funciona tanto en la modalidad de entrada como de salida. Consulte el captulo Habilitacin del Control de flujo Xon/Xoff, p. 357 para obtener ms informacin. Se establece en 1 cuando se utiliza un mdem de marcacin compatible con Hayes y desea una marcacin por pulsos de un nmero de telfono. El nmero de telfono se programa en MsgOut. La longitud del mensaje debe estar comprendida en MsgLen. Los nmeros marcados por pulsos se envan al mdem de forma automtica precedidos por ATDT y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. Como el mensaje marcado es una cadena ASCII, el bit 9 debe estar CON antes de enviar el nmero que se va a marcar. Se establece en 1 cuando se utiliza un mdem de marcacin compatible con Hayes y desea colgar el mdem. Debe usar la lgica de usuario para poner en CON este bit. Como el mensaje de interrupcin de la conexin es una cadena ASCII, el bit 9 debe estar CON antes de enviar el mensaje. Los mensajes de interrupcin de la conexin se envan al mdem de forma automtica precedidos por +++AT y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. XXMIT busca una respuesta de desconexin correcta del mdem antes de poner en CON la seal de salida Ejecutado y sealar una finalizacin satisfactoria.

Bit 3 Marcar en mdem por pulsos

Bit 2 Colgar mdem

Bit 1 Marcar en Se establece en 1 cuando se utiliza un mdem de marcacin compatible mdem por tonos con Hayes y desea una marcacin por tonos de un nmero de telfono. El nmero de telfono se programa en MsgOut. La longitud del mensaje debe estar comprendida en MsgLen. Los nmeros de marcacin por tonos se envan al mdem automticamente precedidos por ATDT y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. Como el mensaje marcado es una cadena ASCII, el bit 9 debe estar CON antes de enviar el nmero que se va a marcar. Bit 0 Inicializar mdem Se establece en 1 cuando se utiliza un mdem de marcacin compatible con Hayes y desea inicializar el mdem. Puede programar el mensaje de inicializacin en MsgOut y la longitud del mensaje en MsgLen. Todos los mensajes se envan al mdem automticamente precedidos por AT y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. Como el mensaje de inicializacin es una cadena ASCII, el bit 9 debe estar CON antes de enviar el mensaje.

Nota: En comparacin con la palabra de comando XXMIT Concept, ha cambiado la numeracin de bits de la palabra de comando Unity:

332

33002530 07 07/2008

XXMIT

Conversin de la palabra de comando

En caso de aplicar la conversin de Concept a Unity, se debe tener en cuenta la nueva numeracin de bits cuando los bits acceden a la palabra de comando. Esto NO se aplica cuando las palabras acceden a la palabra de comunicacin. MsgOut MsgOut contiene los datos del mensaje que se van a transferir; por ejemplo, caracteres ASCII para una transferencia ASCII, la definicin de los caracteres de terminacin para una entrada ASCII finalizada o las plantillas Modbus para los mensajes del maestro Modbus. El tipo de datos que se asigne al parmetro debe cumplir los requisitos de la funcin que se va a efectuar. En caso de la operacin Modbus, el tipo de datos de MsgOut y MsgIn debe ser igual. Nota: Para todos los tipos de comunicacin (maestro Modbus, entrada/salida ASCII), los parmetros MsgOut y MsgIn se deben asignar a una variable. Las dos variables deben ser Data Type Byte Array o Word Array. Otros tipos pueden producir resultados impredecibles.

Nota: Para los mensajes Modbus, MsgOut debe ser un campo de palabras. El tamao mnimo de la matriz es WordArr9.

33002530 07 07/2008

333

XXMIT

MsgLen

Debe introducir la longitud del mensaje actual segn la funcin XXMIT seleccionada. La tabla siguiente ofrece una visin general de las funciones Modbus y ASCII:
Funcin XXMIT Mensajera Modbus Entrada ASCII finalizada Entrada ASCII simple Mensajes de cadena ASCII Subfuncin 01, 02, 03, 04, 05, 06, 08, 15, 16 Longitud de mensaje 5 5 1...1024. 1...1024. La longitud seleccionada debe coincidir con el tamao de la matriz asignada a MsgOut. De lo contrario, obtendr el error 129.

Nota: Para los cdigos de funcin Modbus, el valor de MsgLen puede ser superior a cinco palabras, pero slo las primeras cinco palabras de la tabla de definicin Modbus se tienen en cuenta en tiempo de ejecucin.

Port

El trmino Port especifica la interfaz de comunicacin. 1 es el nico valor autorizado. XXMIT admite las velocidades de transmisin de datos siguientes: 50, 75, 110, 134, 150, 300, 600, 1200, 1800, 2000, 2400, 3600, 4800, 7200, 9600, 19200. Para configurar la velocidad de transmisin de datos, introduzca el nmero decimal correspondiente. Si se introduce una velocidad de datos no vlida, el bloque muestra un error de configuracin no vlido (cdigo de error 127) en el elemento de estado de XXMIT. XXMIT admite los bits de datos siguientes: 7 y 8. Para configurar un tamao de bits de datos, introduzca el nmero decimal correspondiente en este elemento. Se pueden enviar los mensajes Modbus en modalidad ASCII o RTU. La modalidad ASCII requiere 7 bits de datos, mientras que la modalidad RTU requiere 8 bits de datos. Cuando se enva un mensaje con caracteres ASCII, puede utilizar 7 u 8 bits de datos. Si se introduce un nmero de bits de datos no vlido, el bloque muestra un error de configuracin no vlida (cdigo de error 127) en el elemento de estado de XXMIT. Para obtener ms informacin sobre los formatos de mensajes Modbus, consulte la Gua de referencia de protocolos Modbus de Modicon (www.modbus.org).

Baudrate

Databits

334

33002530 07 07/2008

XXMIT

Stopbits

XXMIT admite uno o dos bits de parada. Escriba un decimal: 1 = un bit de parada o 2 = dos bits de parada. Si se introduce un nmero de bits de parada no vlido, el bloque muestra un error de configuracin no vlida (cdigo de error 127) en el elemento de estado de XXMIT. XXMIT admite las paridades siguientes: ninguna, impar o par. Escriba un decimal: 0 = sin paridad, 1 = paridad impar o 2 = paridad par. Si se introduce una paridad no vlida, el bloque muestra un error de configuracin no vlida (cdigo de error 127) en el elemento de estado de XXMIT. Se debe introducir el valor del tiempo en milisegundos (ms) para determinar cunto tiempo va a esperar XXMIT un mensaje de respuesta vlido del equipo esclavo (PLC, mdem, etc.). Adems, el tiempo hace referencia a transmisiones ASCII y a operaciones de control de flujo. Cuando el mensaje de respuesta no surge durante el transcurso del tiempo especificado, XXMIT seala un fallo. El rango vlido es de 0 a 32.767 ms. El timeout se iniciar despus de que se haya enviado el ltimo carcter del mensaje. Es necesario introducir el nmero de reintentos para determinar cuntas veces XXMIT debe enviar un mensaje para obtener una respuesta vlida del equipo esclavo (PLC, mdem, etc.). Cuando el mensaje de respuesta no surge dentro del tiempo especificado, XXMIT indica un fallo y muestra un cdigo de error. El rango vlido es de 0 a 32.767. Nmero de reintentos. Este campo se utiliza junto con RespTout. Es necesario introducir el tiempo en milisegundos (ms) cuando el control RTS/CTS est activado para determinar cunto debe esperar XXMIT tras recibir CTS para transmitir un mensaje al puerto del PLC. Adems, puede utilizar este registro aunque RTS/CTS NO est controlado. En esta situacin, el valor de tiempo introducido determina cunto tiene que esperar XXMIT antes de enviar un mensaje desde el puerto del PLC. Se puede utilizar como temporizador de retardo de premensaje. El rango vlido es de 0 a 32.767 ms. Es necesario introducir el tiempo en milisegundos (ms) cuando el control RTS/CTS est activado para determinar cunto debe XXMIT mantener RTS una vez se enva el mensaje desde el puerto del PLC. Cuando el tiempo ha transcurrido, XXMIT anula el RTS. Adems, puede utilizar este registro aunque RTS/CTS NO est controlado. En esta situacin, el valor de tiempo introducido determina cunto tiene que esperar XXMIT despus de enviar un mensaje desde el puerto del PLC. Se puede utilizar como temporizador de retardo de postmensaje. El rango vlido es de 0 a 32.767 ms.

Paridad

RespTout

RetryLmt

StartDly

EndDly

33002530 07 07/2008

335

XXMIT

RTS

PLC CTS StartDly EndDly

Modem

TXD

Nota: En la comunicacin de RS 485, la seal de transmisin se mantiene en 1 durante el tiempo EndDly. En las conexiones de dos conductores, se perder cualquier carcter entrante procedente del otro participante en la comunicacin. Por tanto, establezca EndDly en 0 ms si no es necesaria la funcin.

Activo Done Error

Un valor 1 indica que XXMIT est realizando una operacin. Un valor 1 indica que la operacin de XXMIT se ha completado satisfactoriamente. Un valor 1 indica que ha surgido un error o que XXMIT ha terminado la operacin que estaba llevando a cabo. MsgIn contiene los datos del mensaje entrante, para entradas ASCII finalizadas o ASCII simples. En el caso de la operacin Modbus, el tipo de datos debe ser igual al tipo del campo MsgOut.

MsgIn

RecCount

Este elemento muestra el nmero de caracteres recibidos. Nota: Cuando se reciben demasiados caracteres sin que se detecte ningn carcter de terminal, aparece un error en el parmetro Estado (131) y el parmetro RecCount se establece en MsgLen-1.

336

33002530 07 07/2008

XXMIT

Status

Este elemento muestra un cdigo de error generado por XXMIT. A continuacin, se muestra una tabla con la lista completa de errores. Estado de error
Cdigo de error 1 2 3 4 5 6 7 8 9... 99 100 101 102 103 104 105, 106 107 Descripcin del error Excepcin Modbus: funcin no vlida. Excepcin Modbus: direccin de datos no vlida. Excepcin Modbus: valor de datos no vlido. Excepcin Modbus: error en equipo participante esclavo. Excepcin Modbus: confirmacin. Excepcin Modbus: participante esclavo ocupado. Excepcin Modbus: confirmacin negativa. Excepcin Modbus: error de paridad de memoria. Reservado El rea de datos del PLC esclavo no puede ser 0. El rea de datos del PLC maestro no puede ser cero. Bit (%M) no configurado. Palabra de memoria del PLC maestro (%MW) no configurada. La longitud de datos no puede ser igual a cero. Reservado Timeout de la transferencia de mensajes (este error aparece cuando el UART no puede completar una transmisin en diez segundos o menos. Este error pasa por alto el contador de reintentos y activa la salida de error en el primer error, consulte Informacin adicional para el error 107). Error no definido. El mdem ha devuelto ERROR. El mdem ha devuelto SIN PORTADORA. El mdem ha devuelto SIN TONO DE MARCACIN. El mdem ha devuelto OCUPADO. Suma de control LRC no vlida desde el PLC esclavo, consulte 1) ms abajo. Suma de control CRC no vlida desde el PLC esclavo, consulte 1) ms abajo. Cdigo de funcin Modbus no vlido. Timeout de mensaje de respuesta Modbus, consulte 2) ms abajo. Timeout de respuesta del mdem.

108 109 110 111 112 113 114 115 116 117

33002530 07 07/2008

337

XXMIT

Cdigo de error 118 119 120 121 122 123 124 125 126 127

Descripcin del error XXMIT no recibi acceso al puerto de comunicaciones nmero 1 del PLC. XXMIT no puede activar el receptor del puerto PLC. XXMIT no puede definir UART del PLC. Reservado Puerto no vlido. Reservado Estado interno sin definir. No se permite la modalidad Broadcast con este cdigo de funcin Modbus. DCE no ha validado CTS. Configuracin no vlida (velocidad de datos, bits de datos, paridad o bits de parada). Ejecucin en una tarea diferente a MAST. Cdigo de funcin Modbus no vlido. Direccin de esclavo superior a 247. El parmetro de longitud de datos es superior a los lmites que se describen en este documento. El nmero de puerto no es 1. Los valores RespTout, StartDly, EndDly, RecCount, MsgLen, RetryLmt son inferiores a 0.

128 129 130 131 132 133 134 135...149 150 151

Respuesta inesperada recibida desde el esclavo de Modbus, consulte 1) ms abajo. Ajustes de palabra de comando no vlidos. Palabra de comando modificada mientras se encontraba activa. Conteo de caracteres no vlido. Reservado Error de desborde FIFO en entrada ASCII. Cantidad no vlida de caracteres de inicio o de caracteres de finalizacin. Reservado El puerto configurado ya est ocupado por otra instancia del bloque de funciones XXMIT o este PLC no lo admite. MsgOut es menor de 12 bytes cuando est seleccionada la funcin de mensajes del maestro de Modbus. Tambin incluye el valor del parmetro MsgLen inferior a 5. La variable conectada a MsgOut es menor que el valor del parmetro MsgLen cuando est seleccionada la funcin de mensajes de cadena ASCII.
33002530 07 07/2008

152

338

XXMIT

Cdigo de error 153

Descripcin del error La variable conectada a MsgIn es menor que el valor del parmetro MsgLen cuando est seleccionada la funcin Entrada ASCII finalizada o Entrada ASCII simple. Bit de inicio XXMIT definido en 1 en un PLC Hot Standby Quantum que no se encuentra en modalidad primaria.

154

Nota: 1) Este cdigo de error aparece si el esclavo de Modbus responde demasiado rpido. En caso de que el esclavo de Modbus utilizado sea un PLC Modicon, compruebe la Configuracin del puerto Modbus de la configuracin del PLC. 2) Para el bloque XXMIT en la modalidad master Modbus, si el error 116 persiste despus de realizar una configuracin correcta con el teclado o modificaciones online, regenere y transfiera la aplicacin al PLC.

33002530 07 07/2008

339

XXMIT

Informacin adicional para el error 107

El error 107 aparece cuando se detecta una discrepancia en la configuracin de XXMIT. Si la configuracin del puerto interno XXMIT est en la modalidad RS232 y la palabra de comando est en la modalidad RS485 (#2100). Es necesario cambiar la modalidad de comunicacin. La tabla siguiente muestra cmo cambiar la modalidad de comunicacin si se produce el error 107:
Paso 1 2 3 4 5 6 7 Accin Conecte el PC a Unity Ponga el PLC en STOP Cambie la configuracin del puerto Modbus (RS232 o RS 485) Cambie la palabra de comando de acuerdo con la modalidad solicitada Regenere la aplicacin Descargue la aplicacin Ponga el PLC en RUN

Nota: Tenga en cuenta que: El cambio de la modalidad RS232 a RS485 tarda 3 segundos cuando la configuracin de los puertos internos y las palabras de comando coinciden. Durante estos 3 segundos aparece el cdigo de error 126 (DCE no asegurado, slo para la modalidad RS232). El cambio de la modalidad RS485 a RS232 es inmediato, ya que coincide con la configuracin predeterminada.

Retry

El valor visualizado muestra el nmero de reintentos realizados por XXMIT. Este elemento es de slo lectura.

340

33002530 07 07/2008

XXMIT

Funciones de comunicacin de XXMIT


Palabra de comando de XXMIT Bits de la palabra de comando El bloque XXMIT realiza seis funciones que se muestran a continuacin. Se deben establecer determinados bits de la palabra de comando para cada funcin.

La palabra de comando funciona en relacin con bits


Funcin Bits de la palabra de Bits que se deben establecer en = 0 comando que se pueden establecer en 1 14,7,6,5,4 10,9,8,3,2,1,0

Entrada ASCII finalizada (bit 11=1) (consulte la nota que aparece a continuacin) Entrada ASCII simple (bit 10=1) (consulte la nota que aparece a continuacin)

14,7,6,5,4

11,9,8,3,2,1,0

Salida ASCII simple (bit 9=1) 14,7,6,5,4 Salida de mdem (bit 9=1) 14,3,2,1,0

11,10,8,3,2,1,0 11,10,8,7,6,5,4 (ms uno, pero SLO uno, de los siguientes bits se establece en 1: 3,2,1 0, mientras que los otros tres bits se deben establecer en 0) 11,10,9,7,6,5,4,3,2,1,0

Salida de los mensajes Modbus maestro (bit 8=1)

14,

Nota: Cuando se utilice una de estas funciones, DEBE establecer Habilitar FIFO de recepcin ASCII (bit 7) en 1. Se reservan el bit 15 (MSB) y los bits 13 y 12. (Consulte la tabla de Comando, p. 330)

33002530 07 07/2008

341

XXMIT

Funciones ASCII de XXMIT


De un vistazo XXMIT admite las funciones de comunicacin ASCII siguientes: Entrada ASCII finalizada Entrada ASCII simple Mensajes de cadena ASCII Funcin de entradas ASCII finalizadas Cuando est activado el bit 11 de la palabra de comando para los mensajes de entradas ASCII finalizadas, la matriz MsgOut deber contener la tabla de definicin de entradas ASCII. Dependiendo del tipo de datos que haya seleccionado para MsgOut, la tabla de definicin de ASCII finalizada consta de tres palabras o 6 bytes. A continuacin, se muestra la tabla de definicin de entradas ASCII finalizadas. Tabla de definicin de entradas ASCII finalizadas (tipo de datos WordArray)
Palabra MsgOut[1] Byte de mayor valor Nmero de caracteres de inicio (contenido permitido = 0, 1, 2) Primer carcter de inicio Primer carcter de finalizacin Byte de menor valor Nmero de caracteres de finalizacin (contenido permitido = 1, 2) Segundo carcter de inicio Segundo carcter de finalizacin

MsgOut[2] MsgOut[3]

Tabla de definicin de entradas ASCII finalizadas (tipo de datos ByteArray)


Byte MsgOut[1] MsgOut[2] MsgOut[3] MsgOut[4] MsgOut[5] MsgOut[6] Funcin Longitud de la cadena de inicio (0, 1 2) Longitud de la cadena de finalizacin (1 2) Primer carcter de inicio Segundo carcter de inicio Primer carcter de finalizacin Segundo carcter de finalizacin

Durante el proceso, RecCount contiene un conteo permanente de los caracteres escritos en la matriz MsgIn. Una vez recibida la cadena finalizada, la salida Ejecutado del mdulo XXMIT pasa a CON y RecCount contiene la longitud total de la cadena recibida, incluidas las cadenas de inicio y de terminacin. En este punto, XXMIT sigue disponiendo del puerto y contina guardando los caracteres ms nuevos recibidos en el FIFO de recepcin ASCII, ya que el bit 7 de la palabra de comando Habilitar FIFO de recepcin ASCII est CON.

342

33002530 07 07/2008

XXMIT

Por medio de la lgica del programa, podr borrar los bits de entrada ASCII simples antes del ciclo siguiente, mientras mantiene en ON el bit Habilitar FIFO de recepcin ASCII. De este modo, MsgIn no se sobrescribir con nuevos datos FIFO, que se siguen recogiendo en FIFO. Mediante la lgica del programa, podr borrar los dos bits para habilitar FIFO de recepcin ASCII (Bit 7) y la entrada ASCII finalizada (Bit 11) con el fin de devolver el control del puerto al PLC. Si se han introducido demasiados caracteres en la matriz MsgIn sin haber detectado un terminador, o la matriz MsgIn est fuera del rango permitido para el PLC configurado, se informar de un error en Estado y el parmetro RecCount no tendr ningn significado. El lmite de caracteres es la opcin ms pequea de 1.024 o dos veces el tamao de la matriz MsgIn. Ejemplo de ASCII finalizada Considere que el XXMIT se activa con la palabra de comando bit 7 y bit 11 activada. Habilite ASCII FIFO y ASCII finalizada. El puerto recibe la cadena ASCII siguiente: 'AMScrlf$weight = 1245 GRAMScrlf$wei'. Consulte la tabla de definicin de entradas ASCII que muestra los contenidos marcados con ( ) utilizados en este ejemplo. Tabla de definicin de entradas ASCII finalizadas (contenido para el tipo de datos Byte Array)
Byte MsgOut[1] MsgOut[2] MsgOut[3] MsgOut[4] MsgOut[5] MsgOut[6] Contenido Nmero de caracteres de inicio (0x01) Nmero de caracteres de finalizacin (0x02) Primer carcter de inicio ('$') Segundo carcter de inicio (no utilizado) Primer carcter de finalizacin ('cr') Segundo carcter de finalizacin ('lf')

Ejemplo de tabla de definicin de entradas ASCII finalizadas (contenido para el tipo de datos Word Array)
Palabra MsgOut[1] MsgOut[2] MsgOut[3] Byte de mayor valor Nmero de caracteres de inicio (0x01) Primer carcter de inicio ('$') Primer carcter de finalizacin ('cr') Byte de menor valor Nmero de caracteres de finalizacin (0x02) Segundo carcter de inicio (no utilizado) Segundo carcter de finalizacin ('lf')

33002530 07 07/2008

343

XXMIT

XXMIT pasa a activo y rechaza los cinco caracteres iniciales de la entrada FIFO, 'AMScrlf', puesto que no coinciden con el primer carcter de inicio establecido en '$'. En el ciclo lgico despus de que se haya recibido '$', XXMIT contina activo y copia el carcter '$' y los siguientes en la matriz MsgIn, actualizando RecCount con el conteo realizado hasta el momento a medida que entran los caracteres. Tras recibir el ltimo carcter de finalizacin, se activar la salida Ejecutado y MsgLen contendr la longitud total igual a 22 caracteres (0x0016). La matriz MsgIn contiene: '$weight = 1245 GRAMScrlf' como matriz de bytes (o: '$w', 'ei', 'gh', 't ', '= ', '12', '45', ' G', 'RA', 'MS', 'crlf' si utiliza el Word Array). En el ciclo en que se activa la salida Ejecutado, los caracteres ya recibidos del mensaje siguiente ('$wei'), que llegaron despus de la cadena de finalizacin, permanecen en el FIFO de entrada ASCII. Esto da a la lgica del programa la oportunidad de desactivar la entrada ASCII finalizada antes del prximo ciclo del XXMIT para este puerto, manteniendo esos caracteres en FIFO hasta que el PLC termine de procesar el mensaje actual, lo que puede durar varios ciclos. Funcin de entradas ASCII simples Todos los caracteres entrantes se ubican en la matriz MsgIn. Si define la matriz MsgIn como Byte Array (como se recomienda), los caracteres entrantes se irn guardando de manera simple: el primer carcter en el primer elemento de la matriz, el segundo carcter en el segundo elemento y as sucesivamente. Si define MsgIn como Word Array, se guardarn dos caracteres en cada elemento. El primer carcter se guarda en el byte de mayor valor del primer elemento. El segundo carcter se guarda en el byte de menor valor del primer elemento. El tercer carcter se almacena en el byte de mayor valor del segundo elemento, etc. La variable de longitud de mensaje (MsgLen) contiene la longitud del mensaje (1 - 1.024 caracteres). Nota: Cuando se definen la entrada ASCII simple (bit 10) y FIFO de recepcin ASCII (bit 7), los nuevos caracteres se transfieren constantemente de FIFO a la misma matriz MsgIn, sobrescribiendo de manera constante los caracteres anteriormente almacenados en la misma.

Mensajes de cadena ASCII

Cuando est activado el bit 9 de la palabra de comando para los mensajes de cadena, la matriz MsgOut deber contener la informacin ASCII que debe transmitirse. La longitud del mensaje MsgLen debe establecerse en la longitud del mensaje que se va a transmitir. Como se indica en Descripcin detallada de parmetros, p. 330, MsgOut puede ser de cualquier tipo de datos. Para los mensajes de cadena ASCII, el tipo Byte Array refleja mejor la naturaleza de las cadenas: El primer byte contiene el primer carcter, y as sucesivamente. (Consulte Envo ASCII simple, p. 362).

344

33002530 07 07/2008

XXMIT

Transmitir Recibir transicin

Si la aplicacin requiere la recepcin de una respuesta por parte de otro equipo participante tras la transmisin de un mensaje (peticin - respuesta), es necesario XXMIT para cambiar de la modalidad de transmisin a la modalidad de recepcin con el fin de leer la respuesta del participante en la comunicacin. El primer punto en el tiempo para cambiar la modalidad de XXMIT de transmisin a recepcin es el ciclo que sigue a la operacin de transmisin. El usuario tiene la responsabilidad de garantizar que la respuesta se retrase al menos un tiempo de ciclo del PLC de peticin para evitar un fallo de comunicacin. El retardo de transmisin por parte del participante en la comunicacin resulta especialmente importante en caso de tiempos de ciclo largo en los participantes de comunicacin rpidos y prximos del solicitante. Consideraciones de temporizacin del tiempo de retardo del participante:
Tiempo de ciclo del solicitante

Transmitir
XXMIT

Recibir
XXMIT

Tiempo de transmisin

Tiempo mnimo de retardo del participante

Tiempo de ciclo del participante

33002530 07 07/2008

345

XXMIT

En la figura anterior (no a escala) puede estimar la influencia de los tres tiempos distintos (tiempo de ciclo del solicitante, tiempo de transmisin y tiempo de ciclo del participante) en el tiempo de retardo del participante requerido. Los ciclos de programa del solicitante y del participante son asncronos, de manera que el tiempo de ciclo del participante no debe tenerse en cuenta. El tiempo de transmisin depende de la longitud del telegrama y de la velocidad de transmisin. Un mensaje que se compone de 18 caracteres a 9.600 baudios tarda 14 ms. Obviamente, la contribucin principal proviene del tiempo de ciclo del solicitante. Incluso si el tiempo de retardo mnimo del participante es inferior al tiempo de ciclo del solicitante, se recomienda utilizar el tiempo de ciclo del solicitante como tiempo de retardo mnimo del participante para garantizar una comunicacin de sonido.

346

33002530 07 07/2008

XXMIT

Funciones de mdem de XXMIT


Presentacin
XXMIT permite al usuario comunicarse con un mdem compatible con Hayes utilizando las funciones incluidas en la siguiente tabla:

Funciones de mdem
Bit en palabra de comando Bit 3 Bit 2 Bit 1 Bit 0 Funcin Marcar en mdem por pulsos Colgar mdem Marcar en mdem por tonos Inicializar mdem

Marcar en mdem por pulsos

Establezca el bit 3 de la palabra de comando en 1 cuando utilice un mdem de marcacin compatible con Hayes y desee una marcacin por pulsos de un nmero de telfono. Puede programar el nmero de telfono en la matriz MsgOut. La longitud del mensaje debe estar comprendida en MsgLen. Los nmeros marcados por pulsos se envan al mdem automticamente precedidos por ATDP y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. Como el mensaje marcado es una cadena ASCII, el bit 9 debe estar CON antes de enviar el nmero que se va a marcar.

Colgar mdem

Establezca el bit 2 de la palabra de comando en 1 cuando se utiliza un mdem de marcacin compatible con Hayes si desea colgar el mdem. Debe usar la lgica del programa para poner este bit en CON. Como el mensaje de interrupcin de la conexin es una cadena ASCII, el bit 9 debe estar CON antes de enviar el mensaje. Los mensajes de interrupcin de la conexin se envan al mdem de forma automtica precedidos por +++AT y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. XXMIT busca una respuesta de desconexin correcta del mdem antes de poner en CON la seal de salida Ejecutado y sealar una finalizacin satisfactoria. Establezca el bit 1 de la palabra de comando en 1 cuando se utiliza un mdem de marcacin compatible con Hayes y desea una marcacin por tonos de un nmero de telfono. Puede programar el nmero de telfono en la matriz MsgOut. La longitud del mensaje debe estar comprendida en MsgLen. Los nmeros marcados por tonos se envan al mdem automticamente precedidos por ATDT y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. Como el mensaje marcado es una cadena ASCII, el bit 9 debe estar CON antes de enviar el nmero que se va a marcar.

Marcar en mdem por tonos

Inicializar mdem

Establezca el bit 0 de la palabra de comando en 1 cuando se utiliza un mdem de marcacin compatible con Hayes y desea inicializar el mdem. Puede programar el mensaje de inicializacin en la matriz MsgOut y la longitud del mensaje en MsgLen. Todos los mensajes se envan al mdem automticamente precedidos por AT y con el retorno de carro <CR> y el avance de lnea <LF> adjuntos. Como el mensaje de inicializacin es una cadena ASCII, el bit 9 debe estar CON antes de enviar el mensaje. 347

33002530 07 07/2008

XXMIT

Funciones Modbus de XXMIT


Presentacin XXMIT admite los cdigos de funcin Modbus siguientes: 01 ...06 y 15...16 08 Transmitir Recibir transicin A excepcin de los mensajes de difusin, todas las funciones Modbus requieren el bloque de funcin XXMIT para pasar de la modalidad de transmisin a la modalidad de recepcin para leer la respuesta del esclavo. XXMIT cambia de la modalidad de transmisin a la modalidad de recepcin en el ciclo que sigue a la operacin de transmisin. El usuario tiene la responsabilidad de garantizar que la respuesta del esclavo se retrase al menos un tiempo de ciclo del maestro para evitar un fallo de comunicacin. El retardo de transmisin por parte del esclavo es esencial en los casos de tiempos de ciclo largo de maestro y esclavos rpidos. Consideraciones de temporizacin del tiempo de retardo del esclavo:
Tiempo de ciclo del master

Transmitir
XXMIT

Recibir
XXMIT

Tiempo de transmisin

Tiempo mnimo de retardo del esclavo

Tiempo de ciclo del esclavo

348

33002530 07 07/2008

XXMIT

En la figura anterior (no para poner a escala) puede estimar la influencia de los tres tiempos distintos (tiempo de ciclo del maestro, tiempo de transmisin y tiempo de ciclo del esclavo) en el tiempo de retardo del esclavo requerido. Los ciclos de programa del maestro y del esclavo son asncronos, de manera que el tiempo de ciclo del esclavo no debe tenerse en cuenta. El tiempo de transmisin depende del tipo de telegrama, de la velocidad de transmisin y del protocolo. Un peticin de lectura estndar a una velocidad de 9.600 baudios utilizando un protocolo ASCII tarda, por ejemplo, 14 ms. La principal contribucin proviene obviamente del tiempo de ciclo del master Incluso si el tiempo de retardo mnimo del esclavo es inferior al tiempo de ciclo del maestro, se recomienda utilizar el tiempo de ciclo del maestro como tiempo de retardo mnimo del esclavo para garantizar una comunicacin de sonido. Nota: Puede especificar el tiempo de retardo en el cuadro de dilogo Ajustes en puerto Modbus para los PLC Quantum. El tiempo de retardo puede especificarse entre 10 y 1.000 ms, que puede redondearse automticamente para poder dividirse por 10. Debe introducir el tiempo de retardo requerido ms 10 ms. Por ejemplo para tener un retardo de 110 ms, debe introducir 120 en este campo.

33002530 07 07/2008

349

XXMIT

Cdigos de funcin Modbus (0106, 15 y 16)

Para los mensajes Modbus, la matriz MsgOut debe contener la tabla de definicin Modbus. Debe definirse como un campo de palabras. La tabla de definicin Modbus para el cdigo de funcin Modbus: 01, 02, 03, 04, 05, 06, 15 y 16 tiene una longitud de cinco palabras. Asimismo, se deber establecer MsgLen en 5 para un funcionamiento satisfactorio de XXMIT. A continuacin se muestra la tabla de definicin Modbus. Cdigos de funcin de la tabla de definicin Modbus (0106, 15 y 16)
Contenido Descripcin

Cdigo de XXMIT admite los cdigos de funcin siguientes: funcin Modbus 01 = Leer varios bits (%Q) (MsgOut[1]) 02 = Leer varios bits binarios (%I) 03 = Leer varias palabras (%MW) 04 = Leer varias palabras de entrada (%IW) 05 = Escribir un bit (%Q) 06 = Escribir una palabra (%MW) 15 = Escribir varios bits (%Q) 16 = Escribir varias palabras (%MW) Cantidad (MsgOut[2]) Introduzca el nmero de datos que desee escribir en el PLC esclavo o leer desde l. Por ejemplo, introduzca 100 para leer 100 palabras del PLC esclavo o introduzca 32 para escribir 32 bits en un PLC esclavo. Existe un lmite de tamao en cuanto a la cantidad que depende del modelo de PLC. Consulte el apndice A para obtener informacin completa sobre los lmites. Introduzca la direccin del PLC Modbus esclavo. Normalmente, el rango de direccin Modbus oscila entre 1 y 247. Para enviar un mensaje Modbus a varios PLC, escriba 0 para la direccin del PLC esclavo. Esto se denomina modalidad Broadcast. Esta modalidad slo admite cdigos de funcin Modbus que escriban datos del PLC maestro a los PLC esclavos. La modalidad Broadcast NO admite los cdigos de funcin Modbus que lean datos de los PLC esclavos.

Direccin del PLC esclavo (MsgOut[3])

rea de datos Para un comando de lectura, el rea de datos del PLC esclavo es la fuente del PLC esclavo de los datos. Para un comando de escritura, el rea de datos del PLC (MsgOut[4]) esclavo es el destino de los datos. Por ejemplo, si desea leer bits (%I300 - %I500) desde un PLC esclavo, introduzca 300 en este campo. Si desea escribir datos desde un PLC maestro e introducirlos en palabras (%MW100) de un PLC esclavo, escriba 100 en este campo. Segn el tipo de comando Modbus (escritura o lectura), los campos de datos fuente y de destino se debern definir como se indica en la tabla de reas de datos fuente y de destino siguiente.

350

33002530 07 07/2008

XXMIT

Contenido rea de datos del PLC maestro (MsgOut[5])

Descripcin Para un comando de lectura, el rea de datos del PLC maestro es el destino de los datos que devuelve el esclavo. Para un comando de escritura, el rea de datos del PLC maestro es la fuente de los datos. Por ejemplo, si desea escribir bits (%M16%M32) ubicados en el PLC maestro en un PLC esclavo, introduzca 16 en este campo. Si desea leer palabras (%IW1 - %IW100) desde un PLC esclavo y colocar los datos en el rea de datos del PLC maestro (%MW100%MW199), introduzca 100 en este campo. Segn el tipo de comando Modbus (escritura o lectura), los campos de datos fuente y de destino se debern definir como se indica en la tabla de reas de datos fuente y de destino siguiente.

reas de datos fuente y de destino de los cdigos de funcin (0106, 15 y 16)


Cdigo de funcin 03 (leer varios 4x) 04 (leer varios 3x) 01 (leer varios 0x) 02 (leer varios 1x) 16 (escribir varios 4x) 15 (escribir varios 0x) 05 (escribir un 0x) 06 (escribir un 4x) rea de datos del PLC maestro %MW (destino) %MW (destino) %M (destino) %M (destino) %MW (fuente) %M (fuente) %M (fuente) %MW (fuente) rea de datos del PLC esclavo %MW (fuente) %IW (fuente) %Q (fuente) %I (fuente) %MW (destino) %Q (destino) %Q (destino) %MW (destino)

Si desea enviar 20 mensajes Modbus desde el PLC, deber transferir una a una 20 tablas de definicin Modbus a MsgOut despus de cada operacin correcta de XXMIT, o programar 20 XXMIT por separado y activarlos uno a uno mediante la lgica de usuario.

33002530 07 07/2008

351

XXMIT

Cdigo de funcin Modbus (08)

Para los mensajes Modbus, la matriz MsgOut debe contener la tabla de definicin Modbus. Debe definirse como un campo de palabras. La tabla de definicin Modbus para los cdigos de funcin Modbus: 08 tiene una longitud de cinco palabras. Asimismo, se debe establecer en 5 la matriz MsgLen para un funcionamiento satisfactorio de XXMIT. A continuacin se muestra la tabla de definicin Modbus. Cdigos de funcin de la tabla de definicin Modbus (08)
Contenido Cdigo de funcin Modbus (MsgOut[1]) Diagnstico (MsgOut[2]) Descripcin XXMIT admite el cdigo de funcin siguiente: 08 = Diagnstico

En este campo, introduzca el valor decimal del cdigo de la subfuncin de diagnstico para poder realizar la funcin especfica de diagnstico deseada. Se admiten las siguientes subfunciones de diagnstico: Cdigo de subfuncin 00 01 02 03 04 05 ... 09 10 11 12 13 14 ... 15 16 17 18 19 ... 21 Descripcin Devolver datos de interrogacin Reiniciar opcin de comunicacin Devolver palabra de diagnstico Cambiar delimitador de entrada ASCII Forzar el modo de slo escucha Reservado Borrar contadores (& palabras de diagnstico en 384, 484) Devolver conteo de mensajes de bus Devolver conteo de errores de com. de bus Devolver conteo de excepciones de bus No admitido Devolver conteo de esclavos NAK Devolver conteo de esclavos ocupados Devolver conteo de desborde de caract. de bus

Direccin del PLC esclavo (MsgOut[3])

Introduzca la direccin del PLC Modbus esclavo. Normalmente, el rango de direccin Modbus oscila entre 1 y 247. El cdigo de funcin 8 NO admite la modalidad Broadcast (direccin 0).

352

33002530 07 07/2008

XXMIT

Contenido Contenido del campo de datos Funcin de diagnstico (MsgOut[4])

Descripcin Deber introducir el valor decimal necesario para el rea de datos de la subfuncin de diagnstico especfica: Cdigo de subfuncin 02, 04, 10, 11, 12, 13, 16, 17 y 18 00, 01 y 03 Descripcin Este valor queda definido automticamente como cero en el mensaje Modbus enviado al esclavo (este valor no se ve reflejado en el bfer de MsgOut). Es necesario introducir el valor deseado del campo de datos. Para ms informacin, consulte la Gua de referencia de protocolos Modbus de Modicon (www.modbus.org).

rea de datos del PLC maestro (MsgOut[5])

Para todas las subfunciones, el rea de datos del PLC maestro es el destino de los datos que devuelve el esclavo. Deber especificar una palabra de memoria % que indique el comienzo del rea de datos en la que se sitan los datos devueltos. Por ejemplo, para colocar los datos en el rea de datos del PLC maestro comenzando por (%MW100), introduzca 100 en este campo. La subfuncin 04 NO devolver ninguna respuesta. Para ms informacin, consulte la Gua de referencia de protocolos Modbus de Modicon (www.modbus.org).

33002530 07 07/2008

353

XXMIT

FIFO y control de flujo


Presentacin XXMIT permite que el usuario defina el uso de un bfer FIFO de recepcin, el control de flujo y la funcin de los retrocesos recibidos. La configuracin en 0 del bit 7 de la palabra de comando finaliza esta funcin. Cuando el dispositivo FIFO recibe 512 caracteres, se establece un desbordamiento interno. En este caso, se omiten todos los caracteres posteriores, finalizan todas las operaciones de entrada ASCII (simples y finalizadas) y el bloque indica un error hasta que se modifique (bit 7). Cuando (bit 7) se modifica, se omiten todos los datos del dispositivo FIFO y los dos bits de control de entrada ASCII (ASCII simple [bit 10], ASCII finalizada [bit 11]), y cuando no hay controles de salida ASCII seleccionados, se devuelve el control del puerto serie (1) al PLC. Debe configurar la ASCII finalizada (bit 11) o la ASCII simple (bit 10) para eliminar los caracteres ASCII del dispositivo FIFO para el procesamiento. No se puede establecer ms de uno de los tres bits siguientes de forma simultnea: ASCII finalizada (bit 11), ASCII simple (bit 10) o Mensajes de cadena ASCII (bit 9). La operacin dplex completo puede conseguirse si se configuran el dispositivo FIFO de recepcin ASCII (bit 7) y los Mensajes de cadena ASCII (bit 9). De esta forma, se permite la transmisin de ASCII simple al exterior del PLC mientras se reciben caracteres ASCII en el dispositivo FIFO. Esto resulta til cuando se trabaja con terminales simples. Cuando se configura un dispositivo FIFO de recepcin ASCII (bit 7), no se permite ninguno de los controles de salida ASCII siguientes: Mensajes Modbus Master (bit 8), marcar en mdem por pulsos (bit 3), colgar mdem (bit 2), marcar en mdem por tonos (bit 1) e inicializar mdem (bit 0). Habilitacin de retroceso Cuando se detecta un retroceso (BS), NO se almacena en la matriz MsgIn. De hecho, elimina el carcter anterior y, por lo tanto, reduce el valor del contador de caracteres RecCount. Por el contrario, cuando se detecta un carcter ASCII normal, se almacena en la matriz MsgIn y el valor del contador de caracteres RecCount aumenta. Nota: Los retrocesos NO PUEDEN eliminar caracteres de una matriz MsgIn, por lo que el valor del contador de caracteres RecCount nunca es inferior a 0. Esta funcin de retroceso junto con el eco interno habilitado en el terminal resultan muy tiles cuando se trabaja con terminales simples. Se activa una XXMIT de entrada ASCII finalizada que busca "cr" con un dispositivo FIFO de recepcin ASCII (bit 7) y un retroceso (bit 6) configurados. No se necesita ninguna lgica de programa adicional mientras se introducen y modifican caracteres sobre la marcha mediante el retroceso. Cuando se introduce "cr", XXMIT activa la salida Ejecutado y los datos corregidos se alinean de forma adecuada en la matriz MsgIn.
354
33002530 07 07/2008

FIFO de recepcin ASCII

XXMIT

Habilitacin del Control de flujo RTS/CTS

Lo siguiente se aplica a la modalidad de salida. El estado de XXMIT pasa a recepcin BLOQUEADA cuando el dispositivo de recepcin indica que no puede procesar caracteres adicionales mediante la configuracin de CTS como DES. De igual modo, el estado de XXMIT pasa a DESBLOQUEADO cuando CTS est CON y los dispositivos de recepcin indican que PUEDE procesar caracteres adicionales. Cuando la transmisin est DESBLOQUEADA y la Salida ASCII simple (bit 9) y el Control de flujo RTS/CTS (bit 5) estn configurados, los datos de salida de transmisin se envan en paquetes de 16 bytes. Despus de enviar todos los paquetes de salida, la salida Ejecutado en XXMIT pasa a ON para indicar que la operacin se ha realizado de forma satisfactoria. Si, durante la transmisin, pasa sbitamente a BLOQUEADO, slo se enviarn los caracteres restantes en el paquete de salida actual, sin superar en ningn caso los 16 caracteres, y XXMIT permanece ACTIVO de forma indefinida. La salida ASCII slo reanudar el envo de los paquetes de salida restantes cuando CTS est en ON. Lo siguiente se aplica a la modalidad de entrada. Como RTS es una seal de salida, se puede utilizar independientemente del proceso de transmisin de salida ASCII para BLOQUEAR o DESBLOQUEAR dispositivos de envo. Cuando se configura un dispositivo FIFO de recepcin ASCII (bit 7), el Control de flujo RTS/ CTS funciona en la modalidad de entrada. Cuando se configura un dispositivo FIFO de recepcin ASCII (bit 7) y no se configura ninguna de las dos entradas ASCII, la Entrada ASCII simple (bit 10) o la Entrada ASCII finalizada (bit 11), los caracteres recibidos completarn el dispositivo FIFO en el que se insertan. Mientras tanto, el Control de flujo RTS (bit 5) est en ON, lo que permite que el dispositivo de envo pueda continuar. Cuando el dispositivo FIFO (512 caracteres) contenga caracteres en ms de tres cuartos de su capacidad, el Control de flujo RTS (bit 5 se liberar para BLOQUEAR el dispositivo de envo) El control de flujo RTS (bit 5) permanece libre hasta que la Entrada ASCII simple (bit 10) o la Entrada ASCII finalizada (bit 11) hayan eliminado suficientes caracteres del dispositivo FIFO, con lo que stos ocuparn menos de un cuarto. Llegados a este punto, el Control de flujo RTS (bit 5) pasa a ON.

33002530 07 07/2008

355

XXMIT

AVISO
BLOQUEO DE LA TRANSMISIN Si se fuerza la seal CTS de forma indefinida a OFF por parte del dispositivo de recepcin (o si existe un problema con el cable que fuerza la seal CTS a OFF), el bloque XXMIT no completar nunca la transmisin y el dispositivo de recepcin no recibir nunca el comando. Para evitar este tipo de bloqueo, se aconseja iniciar un temporizador cuando se inicie el bloque XXMIT y advierta al programa de la aplicacin cuando se alcance el tiempo interno del temporizador. Tambin es aconsejable restablecer el bit de inicio de XXMIT. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

Nota: El algoritmo de Control de flujo RTS/CTS es diferente del de Control de mdem RTS/CTS. El primero est relacionado con la recepcin en dplex completo de un desbordamiento de bfer. El segundo lo est con el proceso de transmisin que obtiene acceso a un medio de transmisin compartido. Por lo tanto, no se pueden solicitar ambos algoritmos RTS/CTS de forma simultnea.

Nota: NO PUEDE seleccionar cualquier tipo de seal de establecimiento de enlace de control de flujo RTS/CTS (bit 5) cuando el puerto est en modalidad RS 485 (bit 13), ya que estas seales NO existen en la modalidad RS 485.

356

33002530 07 07/2008

XXMIT

Habilitacin del Control de flujo Xon/Xoff

Lo siguiente se aplica a la modalidad de salida. El estado de XXMIT pasa a BLOQUEADO cuando se recibe un carcter Xoff. De igual modo, el estado de XXMIT pasa a DESBLOQUEADO cuando se recibe un carcter Xon. En ningn caso se insertarn Xon o Xoff en el dispositivo FIFO. Cuando la transmisin est DESBLOQUEADA, y la Salida ASCII simple (bit 9) y el Control de flujo Xon/Xoff (bit 4) estn configurados, los datos de salida de transmisin se envan en paquetes de 16 bytes. Despus de enviar todos los paquetes de salida, la salida Ejecutado en el bloque XXMIT pasa a ON. Si, durante la transmisin, pasa sbitamente a BLOQUEADO, slo se enviarn los caracteres restantes en el paquete de salida actual, sin superar en ningn caso los 16 caracteres, y el bloque XXMIT permanece ACTIVO de forma indefinida. La salida ASCII slo reanudar el envo de los paquetes de salida restantes cuando se reciba el carcter Xon siguiente. Lo siguiente se aplica a la modalidad de entrada. Xon/Xoff puede utilizarse para BLOQUEAR o DESBLOQUEAR dispositivos de envo. Cuando se configura un dispositivo FIFO de recepcin ASCII (bit 7) el Control de flujo Xon/Xoff (bit 4) funciona en la modalidad de entrada. Cuando se configura un dispositivo FIFO de recepcin ASCII (bit 7) y no se configura ninguna de las dos entradas ASCII, la Entrada ASCII simple (bit 10) o la Entrada ASCII finalizada (bit 11), los caracteres recibidos completarn el dispositivo FIFO en el que se insertan. Cuando se han completado ms de tres cuartos del dispositivo FIFO con caracteres y se reciben ms caracteres, la variable de estado de FIFO se configura para enviar caracteres XOFF fuera del puerto serie tras un retardo correspondiente al tiempo de envo de hasta 16 caracteres, lo que BLOQUEA al emisor y libera la variable de estado de FIFO. Cuando todas las funciones de salida ASCII (bits 8, 3, 2, 1 y 0) estn DES y el Control de flujo Xon/Xoff (bit 4) est CON, el tiempo de retardo es, de forma predeterminada, el tiempo correspondiente al envo de un carcter. Por el contrario, cuando todas las funciones de salida ASCII (bits 8, 3, 2, 1 y 0) estn CON y el Control de flujo Xon/Xoff (bit 4) est CON, la salida ASCII se divide en paquetes de 16 bytes. De este modo, los caracteres Xoff pendientes NO tienen que esperar ms que el tiempo correspondiente al tiempo de envo de 16 caracteres antes de BLOQUEAR al emisor. Una vez que el emisor ha detenido la transmisin, el PLC elimina los caracteres de FIFO mediante la Entrada ASCII simple (bit 10) o la Entrada ASCII finalizada (bit 11). Cuando menos de un cuarto del dispositivo FIFO se ha completado con caracteres, la variable de estado de FIFO se configura para enviar XON, con lo que se enva un carcter Xon fuera del puerto serie para DESBLOQUEAR al emisor.

33002530 07 07/2008

357

XXMIT

Nota: Para evitar el bloqueo debido a un cable desconectado u otros errores de comunicacin intermitente, cuando el emisor est BLOQUEADO y NO ha recibido el carcter Xon de forma correcta, se utiliza el algoritmo siguiente. Cuando el dispositivo FIFO se vaca y no se reciben caracteres posteriormente, se transmite un flujo regular de caracteres Xon con una periodicidad de uno cada cinco segundos.

Nota: El Control de flujo Xon/Xoff (bit 4) es diferente del Control de flujo RTS/CTS (bit 5). El primero utiliza caracteres Xon y Xoff para evitar recibir desbordamientos de bfer en la modalidad dplex completo. El segundo utiliza seales de establecimiento de comunicacin de hardware para conseguir el mismo objetivo. Por lo tanto, no est permitido solicitar ambos algoritmos de control de flujo de forma simultnea, porque el Control de mdem de control de flujo RTS/CTS (bit 5) conlleva una red de semidplex, mientras que el Control de flujo Xon/Xoff (bit 4) conlleva una red de dplex completo.

358

33002530 07 07/2008

XXMIT

Ejemplos de aplicacin
Descripcin El programa siguiente es una pequea aplicacin de muestra con cuatro instancias de XXMIT que muestra las cuatro funciones principales: Maestro Modbus Entrada ASCII simple Salida mensajes ASCII Entrada ASCII finalizada Maestro Modbus La siguiente operacin del maestro Modbus es una peticin de lectura para un dispositivo esclavo (por ejemplo, direccin 4) conectado al puerto 1 del maestro: Leer de %MW1 a %MW10 del esclavo en %MW11 a %MW20 local. El esclavo (direccin 4) debe configurarse con los parmetros de puerto siguientes: 9.600 baudios, 8 bits de datos, 1 bit de parada, paridad par (2). El maestro utiliza los ajustes de XXMIT. Declaracin de variables para maestro Modbus La siguiente tabla contiene las variables utilizadas en el ejemplo del maestro Modbus:
Nombre de variable StartModbusMstr ModbusMstrActive ModbusMstrCommand ModbusMstrDone ModbusMstrError ModbusMstrSettings ModbusMstrSettings[1] ModbusMstrSettings[2] ModbusMstrSettings[3] ModbusMstrSettings[4] ModbusMstrSettings[5] ModbusMstrSettings[6] ... ModbusMstrStatus ModbusMstrNode
33002530 07 07/2008

Tipo de Valor datos inicial BOOL BOOL WORD BOOL BOOL WordAr r9 3 10 1 11 16#0100

Comentario

Bit 8 configurado

Cdigo Modbus: lectura de varias palabras. Nmero de palabras que se van a leer. Direccin de Modbus esclavo. Palabra fuente. Palabra destino. No utilizado.

INT WORD 4 Introducir direccin de esclavo. 359

XXMIT

Nombre de variable ModbusMstrErrorCounter

Tipo de Valor datos inicial INT

Comentario

ModbusMstrDoneCounter INT

Seccin IEC para maestro Modbus

Programe lo siguiente en una seccin FBD: Asignacin de direcciones de asientos esclavos:

MOVE ModbusMstrNode ModbusMstrSettings[3]

Asignaciones al bloque de funciones XXMIT:


XXMIT StartModbusMstr ModbusMstrCommand ModbusMstrSettings 5 1 9.600 8 1 2 100 20 100 100 Start Command MsgOut MsgLen Port Bauderate Databits Stopbits Parity RespTout RetryLmt StartDly EndDly Active Done Error MsgIn RecCount Status Retry ModbusMstrActive ModbusMstrDone ModbusMstrError

ModbusMstrStatus ModbusMstrRetryCounter

360

33002530 07 07/2008

XXMIT

Errores y acciones realizadas correctamente del conteo:

CTU ModbusMstrError 0 CU R PV Q PV ModbubsMstrErrorCounter

CTU ModbusMstrDone 0 CU R PV Q PV ModbubsMstrDoneCounter

Recepcin ASCII simple

Recibe cualquier elemento que llegue al puerto 1. La longitud del bfer de recepcin se asigna como 'SimpleReceiveLength', que tiene un valor inicial de 10. Los caracteres recibidos se encuentran en la matriz MsgIn, el nmero de caracteres recibidos se muestra en RecCount.

Declaracin de variables para Recepcin ASCII simple

La siguiente tabla contiene las variables utilizadas en el ejemplo de Recepcin ASCII simple:
Nombre de variable StartSimpleReceive SimpleReceiveActive SimpleReceiveCharCounter SimpleReceiveCommand SimpleReceiveDone SimpleReceiveError SimpleReceiveLength SimpleReceiveRetryCounter SimpleReceiveStatus SimpleRecMessage SimpleReceiveDoneCounter SimpleReceiveErrorCounter Tipo de datos BOOL BOOL INT WORD BOOL BOOL INT INT INT ByteArr12 INT INT 10 16#0480 Bits 7 y 10 configurados. FIFO habilitado. Valor inicial Comentario

33002530 07 07/2008

361

XXMIT

Seccin IEC para Recepcin ASCII simple

Programe lo siguiente en una seccin FBD:


XXMIT StartSimpleReceive SimpleReceiveCommand SimpleReceiveLength 1 9.600 8 1 2 100 20 100 100 Start Command MsgOut MsgLen Port Bauderate Databits Stopbits Parity RespTout RetryLmt StartDly EndDly Active Done Error MsgIn RecCount Status Retry SimpleReceiveActive SimpleReceiveDone SimpleReceiveError SimpleRecMessage SimpleReceiveCharCount SimpleReceiverStatus SimpleReceiveRetryCounter

Errores y acciones realizas correctamente del conteo:


CTU SimpleReceiveError 0 CU R PV Q PV SimpleReceiveErrorCounter

CTU SimpleReceiveDone 0 CU R PV Q PV SimpleReceiveDoneCounter

Envo ASCII simple

Enva un mensaje ASCII simple fuera del puerto 1. El mensaje es 'Hello World!!' (Hola mundo!)

362

33002530 07 07/2008

XXMIT

Declaracin de variables para Envo ASCII simple

La siguiente tabla contiene las variables utilizadas en el ejemplo de Envo ASCII simple:
Nombre de variable StartSimpleSend SimpleSendActive SimpleSendCommand SimpleSendDone SimpleSendError SimpleSendLength SimpleSendMessage SimpleSendMessage[1] SimpleSendMessage[2] SimpleSendMessage[3] SimpleSendMessage[4] SimpleSendMessage[5] SimpleSendMessage[6] SimpleSendMessage[7] SimpleSendMessage[8] SimpleSendMessage[9] SimpleSendMessage[10] SimpleSendMessage[11] SimpleSendMessage[12] SimpleSendMessage[13] SimpleSendMessage[14] SimpleSendRetryCounter SimpleSendStatus SimpleSendDoneCounter SimpleSendErrorCounter Tipo de datos BOOL BOOL WORD BOOL BOOL INT ByteArr36 16#48 16#65 16#6C 16#6C 16#6F 16#20 16#57 16#6F 16#72 16#6C 16#64 16#20 16#21 16#21 INT INT INT INT 14 Nmero de caracteres que se van a enviar. 'Hello World !!' (Hola mundo!) 16#0200 Bit 9 configurado. Valor inicial Comentario

33002530 07 07/2008

363

XXMIT

Seccin IEC para Envo ASCII simple

Programe lo siguiente en una seccin FBD:


XXMIT StartSimpleSend SimpleSendCommand SimpleSendMessage SimpleSendLength 1 9.600 8 1 2 100 20 100 100 Start Command MsgOut MsgLen Port Bauderate Databits Stopbits Parity RespTout RetryLmt StartDly EndDly Active Done Error MsgIn RecCount Status Retry SimpleSendActive SimpleSendDone SimpleSendError

SimpleSendStatus SimpleSendRetryCounter

Errores y acciones realizadas correctamente del conteo:

CTU SimpleSendError 0 CU R PV Q PV SimpleSendErrorCounter

CTU SimpleSendDone 0 CU R PV Q PV SimpleSendDoneCounter

Recepcin ASCII finalizada

Tras recibir los caracteres de inicio "AB", el bloque de funciones coloca todos los caracteres recibidos en el bfer de recepcin MsgIn. El receptor se detendr cuando se reciban los caracteres de finalizacin "CD", donde se configurar la salida "Ejecutado", para indicar que se ha realizado de forma correcta. La longitud mxima del bfer de recepcin se asigna como "TermReceiveLength", que se configura con un valor inicial de 20 en este ejemplo.

364

33002530 07 07/2008

XXMIT

Declaracin de variables para Recepcin ASCII finalizada

La siguiente tabla contiene las variables utilizadas en el ejemplo de Recepcin ASCII finalizada:
Nombre de variable StartTermReceive TermReceiveActive TermReceiveCharCounter TermReceiveCommand TermReceiveDone TermReceiveError TermReceiveLength TermReceiveMessage TermReceiveRetryCounter TermReceiveSettings TermReceiveSettings[1] TermReceiveSettings[2] TermReceiveSettings[3] TermReceiveSettings[4] TermReceiveSettings[5] TermReceiveSettings[6] Tipo de datos BOOL BOOL INT WORD BOOL BOOL INT ByteArr36 INT ByteArr36 16#02 16#02 16#41 16#42 16#43 16#44 Longitud de la cadena de finalizacin (1 2). Longitud de la cadena de inicio (0, 1 2) Segundo carcter de inicio. Primer carcter de inicio. Segundo carcter de finalizacin. Primer carcter de finalizacin. 20 Caracteres recibidos. 16#0880 Bits 11 y 7 configurados. FIFO habilitado. Valor inicial Comentario

TermReceiveStatus TermReceiveDoneCounter TermReceiveErrorCounter

INT INT INT

33002530 07 07/2008

365

XXMIT

Seccin IEC para Recepcin ASCII finalizada

Programe lo siguiente en una seccin FBD:


XXMIT StartTermReceive TermReceiveCommand TermReceiveSettings TermReceiveLength 1 9.600 8 1 2 100 20 100 100 Start Command MsgOut MsgLen Port Bauderate Databits Stopbits Parity RespTout RetryLmt StartDly EndDly Active Done Error MsgIn RecCount Status Retry TermReceiveActive TermReceiveDone TermReceiveError TermReceiveMessage TermReceiveCharCounter TermReceiveStatus TermReceiveRetryCounter

Errores y acciones realizadas correctamente del conteo:


CTU TermReceiveError 0 CU R PV Q PV TermReceiveErrorCounter

CTU TermReceiveDone 0 CU R PV Q PV TermReceiveDoneCounter

366

33002530 07 07/2008

XXMIT

Introduccin de cadenas como valores iniciales

El editor de datos de Unity Pro permite introducir cadenas fcilmente como valores iniciales en matrices de bytes. La seccin siguiente presenta una corta descripcin de cmo definir una variable 'DemoString' como 'ByteArr36' e introducir una cadena 'My Text !' (Mi texto!) como valor inicial. Apertura del editor de datos En el men principal seleccione: Herramientas -> Editor de datos. Editor de datos
010 Editor de datos Variables Filtro Nombre DemoString Tipos de DDT Bloques de funciones Nombre * EDT Direccin ... Tipos de DFB

DDT
Valor

IODDT Comentario

Tipo Bool SFCSTEP_STATE Bool Byte SFCSTEP_STATE Fecha SFCSTEP_STATE Dint SFCSTEP_STATE Dt SFCSTEP_STATE DWord SFCSTEP_STATE EBoot SFCSTEP_STATE Int SFCSTEP_STATE

Declaracin de un nombre de cadena nuevo Declare el nombre de cadena para la matriz haciendo clic en junto al tipo (en este caso, bool). Esto abrir una ventana de seleccin de tipo de variable.

33002530 07 07/2008

367

XXMIT

Definicin del tipo de elemento 1


Editor de datos: Seleccin de tipos de variables

Tipos de variables Nombre Nombre <Aplicacin> <EDT?> <Conjunto de bibliotecas> <Catlogo> * Nombre DDT Tipo IODDT Comentario

Matriz Aceptar Cancelar

Definicin del tipo de elemento Seleccione la casilla Matriz y defina el tipo de elemento de matriz y el nmero de elementos. Ahora es posible visualizar y modificar los valores para byteArr36 expandido. Definicin del tipo de elemento 2
Editor de datos: Seleccin de tipos de variables Array (0..36) of BYTE Tipos de variables Nombre Nombre <Aplicacin> <EDT?> <Conjunto de bibliotecas> <Catlogo> * Nombre DDT Tipo IODDT Comentario

Array (

0..1

OF
Aceptar Cancelar

368

33002530 07 07/2008

XXMIT

Definicin de ByteArr36
010 Editor de datos Variables Filtro Tipos de DDT Bloques de funciones Nombre * Tipo Array [0..36] of Byte Byte Byte Byte Byte Byte Byte Byte Byte Direccin Tipos de DFB EDT Valor DDT IODDT

Nombre DemoString DemoString(0) DemoString(1) DemoString(2) DemoString(3) DemoString(4) DemoString(5) DemoString(6) DemoString(7)

Comentario

33002530 07 07/2008

369

XXMIT

32.3

XXMIT: normas de programacin

Normas de programacin de XXMIT


Descripcin de las normas de programacin Se puede tardar varios ciclos de PLC en enviar una peticin Modbus o una cadena de caracteres. Los bits de inicio, activacin, ejecucin y error funcionan de la siguiente manera:

La aplicacin escribe la seal de inicio. La aplicacin lee las seales de activacin, ejecucin y error.

AVISO
TRANSMISIN MULTIPLE Si se mantiene en 1 la seal de inicio tras la finalizacin, se reiniciar el bloque XXMIT Esto generar una transmisin mltiple del mismo mensaje Modbus o ASCII al dispositivo de recepcin. Para evitar esta transmisin mltiple, es recomendable restablecer el bit de inicio tan pronto como se vea el bit de finalizacin en 1. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo. Si se mantiene en 1 la seal de inicio tras la finalizacin, se reiniciar el XXMIT

370

33002530 07 07/2008

XXMIT

No se pueden activar varios XXMIT al mismo tiempo. Si se activa ms de un XXMIT, el primer bloque explorado se pondr en funcionamiento y evitar que el resto de los XXMIT entren en funcionamiento hasta que haya finalizado. El siguiente bloque del ciclo que se llama generar un cdigo de fallo 150 inmediato. El bloque de funcin XXMIT slo se puede usar en la tarea MAST. Se produce un cdigo de error inmediato (127) si se inicia en las tareas FAST/AUX o EVENT (no hay ningn control por parte de Unity Pro en el momento de la creacin). Nota: El parmetro de entrada de XXMIT debe inicializarse antes de ajustar la entrada INICIO. No se deben cambiar mientras el bloque de funcin est activo. Si el bit INICIO se restablece en 0 antes de la finalizacin, el bloque de funcin se detiene (bit de activacin en 0). Para que se complete la ejecucin del bloque, el valor 1 deber aplicarse en el bit INICIO hasta que la operacin se haya completado o hasta que se haya producido un error.

33002530 07 07/2008

371

XXMIT

32.4
Presentacin
Descripcin general Contenido

Referencias tcnicas para XXMIT

En esta seccin se describen las referencias tcnicas para XXMIT.

Esta seccin contiene los siguientes apartados:


Apartado Consulta Modbus/Lmites de los parmetros de respuesta Configuracin del bloque de funciones XXMIT mediante mdems de marcacin compatible con Hayes (slo) Ejemplo de aplicacin Hayes Pgina 373 374 379

372

33002530 07 07/2008

XXMIT

Consulta Modbus/Lmites de los parmetros de respuesta


Lmites de parmetros basados en el cdigo de funcin Los parmetros de consulta/respuesta se limitan en funcin del tipo de cdigo de funcin que utilice. Consulte la tabla que aparece a continuacin. Tabla de parmetros mximos de PLC Quantum:
Cdigo de Descripcin funcin 1 2 3 4 5 6 15 16 Lectura de varios bits Lectura de varios bits Lectura de varias palabras Lectura de varias palabras Escritura de un nico bit Escritura de una nica palabra Escritura de varios bits Escritura de varias palabras Consulta 2.000 bits 2.000 bits 125 palabras 125 palabras 1 bit 1 palabra 800 bits 100 palabras Respuesta 2.000 bits 2.000 bits 125 palabras 125 palabras 1 bit 1 palabra 800 bits 100 palabras

33002530 07 07/2008

373

XXMIT

Configuracin del bloque de funciones XXMIT mediante mdems de marcacin compatible con Hayes (slo)
Descripcin Existen tres comandos con los que debe familiarizarse a la hora de interconectar mdems de marcacin al bloque de funciones XXMIT. Estos comandos son: Inicializar mdem Marcar mdem Colgar mdem Antes de que un mensaje ASCII o un mensaje Modbus pase por el mdem, debe enviar al mdem en primer lugar una cadena de inicializacin y despus una cadena de marcacin. Una vez que el mdem haya marcado el nmero de telfono y se haya conectado al mdem remoto, puede enviar un nmero ilimitado de mensajes ASCII o Modbus mediante el mdem. Para enviar varios mensajes, deber aumentar el pointer de mensajes al mensaje siguiente despus de cada operacin correcta del XXMITT. Cuando se enven todos los mensajes, podr enviar la cadena de interrupcin de la conexin al mdem.

374

33002530 07 07/2008

XXMIT

Mensaje de inicializacin

El mensaje de inicializacin es como cualquier otro mensaje ASCII y puede tener una longitud mxima de 512 caracteres, si bien 50 caracteres son normalmente ms que suficientes para inicializar un mdem. Puede ejecutar cualquier comando AT de Hayes como parte de la cadena de inicializacin. Se recomiendan los comandos siguientes al inicializar un mdem para utilizarlo con XXMIT. Mensaje de inicializacin para mdem de marcacin
Mensaje de inicializacin = AT= &F= &K0= &Q0= &D0= V1= AT&F&K0&Q0&D0V1Q0X0E1 Autocalibrar mdem 1 Restablecer la configuracin de fbrica como la configuracin activa 1 Deshabilitar el control de flujo local 2 Comunicar en modalidad asncrona 2 Ignorar estado de la seal DTR 1 Mostrar cdigos de resultado como palabras 1 Si no se utiliza V1 o si el mdem no puede devolver respuestas detalladas, XXMIT devuelve el error 117 (timeout de respuesta del mdem). Devolver cdigos de resultado 1 Proporcionar cdigos de resultado del progreso de llamada bsicos: conectar, sin portadora y anillo 1 E1= 1 2 Enva caracteres desde el teclado a la pantalla en estado de comando 1 Estos parmetros siempre deben formar parte de la cadena de inicializacin para que XXMIT funcione correctamente. Estos parmetros deben formar parte de la cadena de inicializacin para que XXMIT transmita un mensaje a un mdem remoto correctamente. Slo un usuario de mdem experimentado debera cambiar o no utilizar dichos parmetros.

Q0= X0=

Nota: Aunque algunos fabricantes de mdems aseguren la plena compatibilidad con Hayes, puede que an sean ligeramente distintos. Por tanto, se recomienda utilizar solamente aquellos comandos que presenten la misma definicin que los mencionados anteriormente.

33002530 07 07/2008

375

XXMIT

El mensaje de inicializacin debe comenzar siempre con el comando AT estndar de Hayes. XXMIT antepone de forma automtica los mensajes de comando de mdem con AT y agrega el mensaje con retorno de carro (0x0D) y caracteres de avance de lnea (0x0A), puesto que todos los mensajes de control de mdem los necesitan. Otros mensajes ASCII (no controladores) no deben terminar con un retorno de carro y un avance de lnea. Por ejemplo, un mensaje de inicializacin tpico que XXMIT enva al mdem.
Mensaje (AT)&F&K0&Q0&D0V1X0Q0 (<CR><LF>) 1 1 Longitud 17 caracteres

Los caracteres entre parntesis se envan de forma automtica.

Por ejemplo, tambin puede utilizarse el mensaje de inicializacin para establecer los registros S del mdem.
Mensaje (AT)S0=1 (<CR><LF>) 1
1

Longitud 4 caracteres

Los caracteres entre parntesis se envan de forma automtica.

Para que XXMIT enve una mensaje de inicializacin al mdem, los bits 9 y 0 de la palabra de comando deben estar CON. Cuando el bit 0 est CON, los bits 1 y 2 no deben estarlo o XXMIT no completar la operacin correctamente. Para enviar realmente el mensaje, la entrada Inicio de XXMIT debe estar CON y permanecer CON hasta que se complete la operacin u ocurra un error. Cuando XXMIT determina que el mensaje se envi correctamente al mdem, pasa a CON la salida Ejecutado. Cuando se produce un error, la salida Error pasa a CON. La salida Activo est CON mientras se enva el mensaje al mdem. Nota: Para eliminar la programacin de lgica de aplicacin, puede inicializar el mdem con parmetros por medio de un programa terminal y no utilizar XXMIT. Una vez que los parmetros se encuentren en la memoria del mdem pueden guardarse como memoria no voltil con un comando AT, normalmente &W.

376

33002530 07 07/2008

XXMIT

Mensaje de marcacin

Se utiliza el mensaje de marcacin para enviar un nmero de telfono al mdem. Slo los comandos AT relativos al marcaje de un nmero deben incluirse en este mensaje. A continuacin, se muestran ejemplos de mensajes de marcacin tpicos utilizados con XXMIT. Por ejemplo, marcar nmero de telfono mediante marcacin por tonos.
Mensaje (AT)DT)6800326 (<CR><LF>) 1
1

Longitud 7 caracteres

Los caracteres entre parntesis se envan de forma automtica.

Por ejemplo, marcar nmero de telfono mediante marcacin por pulsos.


Mensaje (AT)DP)6800326 (<CR><LF>) 1
1

Longitud 7 caracteres

Los caracteres entre parntesis se envan de forma automtica.

Por ejemplo, marcar nmero de telfono mediante marcacin por tonos, esperar a escuchar el tono de marcacin antes de marcar el nmero, y hacer una pausa antes de marcar el resto del nmero.
Mensaje (AT)DT)W,6800326 (<CR><LF>) 1
1

Longitud 9 caracteres

Los caracteres entre parntesis se envan de forma automtica.

Para que XXMIT enve una mensaje de marcacin por tonos al mdem, los bits 9 y 1 de la palabra de comando deben estar CON. Cuando el bit 1 est CON, los bits 0 y 2 no deben estarlo o XXMIT no completar la operacin correctamente. Para enviar realmente el mensaje, la entrada Inicio de XXMIT debe estar CON y permanecer CON hasta que se complete la operacin u ocurra un error. Cuando XXMIT determina que el mensaje se envi correctamente al mdem, pasa a CON la salida Ejecutado. Cuando se produce un error, la salida Error pasa a CON. La salida Activo est CON mientras se enva el mensaje al mdem. Nota: Debido a que un mdem local tarda mucho en conectarse a un mdem remoto, el valor de timeout, en RespTout debe ser bastante largo al enviar un mensaje de marcacin a un mdem. Por ejemplo, establezca el timeout para 30.000 ms al enviar un mensaje de marcacin. Cuando el valor de timeout sea demasiado corto, XXMIT emitir un mensaje de timeout. Puede que tenga que probar varios ajustes antes de encontrar el tiempo ptimo.

33002530 07 07/2008

377

XXMIT

Mensaje de interrupcin de la conexin

Se utiliza el mensaje de interrupcin de la conexin para colgar el mdem. Slo los comandos AT relativos a la interrupcin de la conexin del mdem deberan utilizarse en este mensaje. A continuacin, se muestra un ejemplo de un mensaje de interrupcin de la conexin del mdem tpico. Por ejemplo, mensaje de colgar mdem.
Mensaje (+++AT)H0 (<CR><LF>) 1
1

Longitud 2 caracteres

Los caracteres entre parntesis se envan de forma automtica.

Cuando se enva el mensaje de interrupcin de la conexin a un mdem que ya est conectado a un mdem remoto, XXMIT debe establecer en primer lugar el mdem local en modalidad de comando. Esto lo realiza XXMIT mediante el envo de una secuencia de escape +++ al mdem. XXMIT asume que +++ establece el mdem en modalidad de comando. Algunos fabricantes de mdems permiten al usuario cambiar esta secuencia de escape predeterminada. Para que XXMIT funcione correctamente, se debe establecer el mdem para que acepte la secuencia de escape +++. Para que XXMIT enve una mensaje de interrupcin de la conexin al mdem, los bits 9 y 2 de la palabra de comando deben estar CON. Cuando el bit 2 est CON, los bits 0 y 1 no deben estarlo o XXMIT no completar la operacin correctamente. Para enviar realmente el mensaje, la entrada Inicio de XXMIT debe estar CON y permanecer CON hasta que se complete la operacin u ocurra un error. Cuando XXMIT determina que el mensaje se envi correctamente al mdem, pasa la salida Ejecutado a CON. Cuando se produce un error, la salida Error pasa a CON. La salida Ejecutado est CON mientras se enva el mensaje al mdem. Nota: Experto: Debido a que un mdem local tarda mucho en colgarse una vez que recibe el comando colgar, el valor de timeout en RespTout debera ser bastante largo al enviar un mensaje de marcacin a un mdem. Por ejemplo, establezca el timeout para 30.000 ms al enviar un mensaje de marcacin. Cuando el valor de timeout sea demasiado corto, XXMIT emitir un mensaje de timeout. Puede que tenga que probar varios ajustes antes de encontrar el tiempo ptimo.

378

33002530 07 07/2008

XXMIT

Ejemplo de aplicacin Hayes


Descripcin El siguiente programa es una breve aplicacin de demostracin para enviar el mensaje "Hola mundo" a travs de un mdem compatible con Hayes (Com One, Deskline 56K). Para iniciar la aplicacin, la variable "stage" se debe definir en 1 en una tabla de animacin de Unity Pro. Tipos de datos de variables

start_xxmit_block command msgout Msg_Size xmit_DONE xmit_ERROR xmit_ACTIVE xxmit_RESPTOUT xxmit_STARTDLY xxmit_ENDDLY

BOOL WORD ARRAY[0.40] OF BYTE INT BOOL BOOL BOOL INT INT INT

xmit_STATUS_mem counter stage

INT INT WORD

33002530 07 07/2008

379

XXMIT

Seccin IEC para XXMIT

Programe lo siguiente en una seccin FBD:


FBI 1 XXMIT start_xxmit_block command msgout Msg_Size 1 9600 8 1 0 xxmit_RESPTOUT 2 xxmit_STARTDLY xxmit_ENDDLY Start Command MsgOut MsgLen Port Bauderate Databits Stopbits Parity RespTout RetryLmt StartDly EndDly 1 xmit_ACTIVE xmit_DONE xmit_ERROR msgin xxmit_STATUS Active Done Error MsgIn RecCount Status Retry

380

33002530 07 07/2008

XXMIT

Seccin IEC para comandos de mdem

Programe lo siguiente en una seccin ST: (* %S6 is used to generate a 2 second delay *) %m6 := %s6; if xxmit_STATUS_Mem = 0 then if not(xxmit_STATUS = 0) then xxmit _STATUS_Mem := xxmit_STATUS; end_if; end_if; (* If XXMIT error, the function block is stopped *) if xmit_ERROR=1 then stage := 0; counter := 0; start_xxmit_block:=0; end_if; if stage = 1 then (* Initialization message*) xxmit_STATUS_Mem := 0; counter := 0; xxmit_ENDDLY := 700; xxmit_STARTDLY := 600; xxmit_RESPTOUT := 700; (* Command word init *) command:=2#0000001000000001; msgout[0] := 16#26;(*&->26*) msgout[1] := 16#46;(*F->46*) msgout[2] := 16#26;(*&->26*) msgout[3] := 16#4B;(*K->46*) msgout[4] := 16#30;(*0->30*) msgout[5] := 16#26;(*&->26*) msgout[6] := 16#44;(*D->44*) msgout[7] := 16#30;(*0->30*) msgout[8] := 16#56;(*V->56*) msgout[9] := 16#31;(*1->31*) msgout[10] := 16#51;(*Q->51*) msgout[11] := 16#30;(*0->30*) msgout[12] := 16#58;(*X->58*) msgout[13] := 16#30;(*0->30*) msgout[14] := 16#45;(*E->45*) msgout[15] := 16#31;(*1->31*) Msg_Size := 16; start_xxmit_block:=1; stage := 2; end_if;

33002530 07 07/2008

381

XXMIT

if stage = 3 then (* Dial message *) xxmit_STARTDLY := 100; xxmit_ENDDLY := 100; xxmit_RESPTOUT := 32000; (* Command word init *) command:=2#0000001000000010; (* Extension number *) msgout[0] := 16#32;(*2*) msgout[1] := 16#35;(*5*) msgout[2] := 16#37;(*7*) msgout[3] := 16#34;(*4*) start_xxmit_block:=1; Msg_Size := 4; stage := 4; end_if; if (stage = 5)then if RE(%m6) then counter := counter + 1; end_if; (* Two seconds delay *) if stage = 5 and counter = 2 then counter := 0; stage := 7; end_if; end_if; if stage = 7 then (* ASCII message to be send *) xxmit_STARTDLY := 300; xxmit_ENDDLY := 400; xxmit_RESPTOUT := 32000; (* Command word init *) command:2=#0100001000000000; msgout[0] := 16#48; (*H*) msgout[1] := 16#65; (*e*) msgout[2] := 16#6C; (*l*) msgout[3] := 16#6C; (*l*) msgout[4] := 16#6F; (*o*) msgout[5] := 16#20; (* *) msgout[6] := 16#57; (*W*) msgout[7] := 16#6F; (*o*) msgout[8] := 16#72; (*r*)

382

33002530 07 07/2008

XXMIT

msgout[9] := 16#6C; (*l*) msgout[10] := 16#64; (*d*) msgout[11] := 16#20; (* *) msgout[12] := 16#21; (*!*) msgout[13] := 16#21; (*!*) Msg_Size := 14; start_xxmit_block:=1; stage := 8; end_if; if stage = 100 then (* Hangup message *) command:=2#0000001000000100; xxmit_STARTDLY := 300; xxmit_ENDDLY := 400; xxmit_RESPTOUT := 500; msgout[0] := 16#48;(* *) msgout[1] := 16#30;(*CR*) Msg_Size := 2; start_xxmit_block:=1; end_if; (* Change of state after each XXMIT operation *) if xmit_DONE = 1 then start_xxmit_block:=0; if stage = 2 then stage := 3; end_if; if stage = 4 then counter := 0; stage := 5; end_if; if stage = 8 then stage := 99; end_if; if stage = 99 then stage :=100; end_if; end_if;

33002530 07 07/2008

383

XXMIT

32.5
Presentacin
Descripcin general Contenido

Informacin de cableado

En esta seccin se describen los cables y la asignacin de pins de los componentes de hardware que se utilizan con XXMIT. Esta seccin contiene los siguientes apartados:
Apartado Asignacin de pins de cable Kits de adaptador de cable Pgina 385 398

384

33002530 07 07/2008

XXMIT

Asignacin de pins de cable


Asignacin de pins del cable de la interfase Necesita generar un cable de interfase entre el PLC y el mdem o la impresora. El cable real est conectado al puerto que admite el PLC y al puerto RS232 del mdem o impresora, o directamente a otro puerto Modbus del PLC. Debido a que XXMIT admite muchos mdems e impresoras, la asignacin de pins variar. A continuacin se proporcionan algunas asignaciones de pins. Consulte la ilustracin para obtener vistas frontales de los conectores.
Adaptador macho de 25 pins

9 pins (RS-232) a 25 pins (mdem) sin control RTS/ CTS

13

25 24 23 22 21

Macho de 9 pins
5 4 3 2 9 8 7 6

12 11 10

Pin 25

Pin 9

9 8 7 6 5 4 20 19 18 17 16 15 14

Pin 1

Vista frontal Pin 1

3 2 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector de 9 pins Nombre de la seal RXD TXD RTS CTS Asignacin de pins 2 3 7 puenteados 8 puenteados 4 puenteados 6 puenteados 5 S D-shell de 25 pins Asignacin de Asignacin de pins pins conectada a S S 3 2 4 puenteados 5 puenteados Nombre de la seal RXD TXD RTS CTS

DSR DTR

6 puenteados 20 puenteados

DSR DTR

GND

GND

33002530 07 07/2008

385

XXMIT

9 pins (RS-232) a 25 pins (mdem) con control RTS/ CTS

Consulte la ilustracin para obtener vistas frontales de los conectores.


Adaptador macho de 25 pins

13

25 24 23 22 21

Macho de 9 pins
5 4 3 2 9 8 7 6

12 11 10

Pin 25

Pin 9

9 8 7 6 5 4 20 19 18 17 16 15 14

Pin 1

Vista frontal Pin 1

3 2 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector de 9 pins Nombre de la seal RXD TXD RTS CTS DSR DTR GND D-shell de 25 pins

Asignacin de Asignacin de Asignacin de pins Nombre de la seal pins pins conectada a 2 3 7 8 4 puenteados 6 puenteados 5 S S S S S 3 2 4 5 6 puenteados 20 puenteados 7 RXD TXD RTS CTS DSR DTR GND

386

33002530 07 07/2008

XXMIT

9 pins a 9 pins (sin mdem)

Consulte la ilustracin para obtener vistas frontales de los conectores.


Macho de 9 pins
5 4 3 2 9 8 7 6

Pin 9

Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector de 9 pins Nombre de la seal RXD TXD RTS CTS DSR DTR GND Asignacin de pins 2 3 7 puenteados 8 puenteados 4 puenteados 6 puenteados 5 S Conector de 9 pins Asignacin de Asignacin de pins Nombre de la seal pins conectada a S S 3 2 7 puenteados 8 puenteados 4 puenteados 6 puenteados 5 TXD RXD RTS CTS DSR DTR GND

33002530 07 07/2008

387

XXMIT

9 pins a 9 pins (mdem)

Consulte la ilustracin para obtener vistas frontales de los conectores.


Macho de 9 pins
5 4 3 2 9 8 7 6

Pin 9

Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector de 9 pins Nombre de la seal Asignacin de pins TXD RXD RTS CTS DSR DTR GND 2 3 7 8 4 puenteados 6 puenteados 5 S Conector de 9 pins Asignacin de Asignacin de pins conectada a pins S S S S 2 3 7 8 4 puenteados 6 puenteados 5 Nombre de la seal TXD RXD RTS CTS DSR DTR GND

388

33002530 07 07/2008

XXMIT

9 pins a 25 pins (sin mdem)

Consulte la ilustracin para obtener vistas frontales de los conectores.


Adaptador macho de 25 pins

13

25 24 23 22 21

Macho de 9 pins
5 4 3 2 9 8 7 6

12 11 10

Pin 25

Pin 9

9 8 7 6 5 4 20 19 18 17 16 15 14

Pin 1

Vista frontal Pin 1

3 2 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector de 9 pins Nombre de la seal RXD TXD RTS CTS DSR DTR GND Asignacin de pins 2 3 7 puenteados 8 puenteados 4 puenteados 6 puenteados 5 S Asignacin de pins conectada a S S D-shell de 25 pins Asignacin de pins 2 3 4 puenteados 5 puenteados 6 puenteados 20 puenteados 7 Nombre de la seal TXD RXD RTS CTS DSR DTR GND

33002530 07 07/2008

389

XXMIT

RJ45-(8x8) a 25 pins (sin mdem) 110XCA20401

Consulte la ilustracin para obtener vistas frontales de los conectores.


Adaptador macho de 25 pins

Conector RJ45 (8x8)

13 12 11 10 9 8 7 6

25 24 23 22 21 20 19 18 17 16 15 14

Pin 25

Pin 1

5 4 3 2

Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector RJ45 Nombre de la seal RXD TXD RTS CTS GND DSR Asignacin de pins 4 3 6 puenteados 7 puenteados 5 2 S S Asignacin de pins conectada a S S D-shell de 25 pins Asignacin de pins 2 3 4 puenteados 5 puenteados 7 6 20 1 Nombre de la seal TXD RXD RTS CTS GND DSR DTR Puesta a tierra del chasis

Puesta a tierra del chasis

AVISO
Peligro de cortocircuito de 5 V. El pin 1 del RJ45 recibe 5 V desde el PLC. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

390

33002530 07 07/2008

XXMIT

RJ45-(8x8) a 9 pins (sin mdem) 110XCA20301

Consulte la ilustracin para obtener vistas frontales de los conectores.


Conector RJ45 (8x8) Macho de 9 pins
5 4 3 2

9 8 7 6

Pin 9

Pin 1 Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector RJ45 Nombre de la seal RXD TXD RTS CTS Asignacin de pins 4 3 6 puenteados 7 puenteados Asignacin de pins conectada a S S D-shell de 9 pins Asignacin de pins 3 2 Nombre de la seal TXD RXD

7 RTS puenteados CTS 8 puenteados S S 5 4 6 GND DTR DSR Caja del conector

GND DSR

5 2

Puesta a tierra del chasis

AVISO
Peligro de cortocircuito de 5 V. El pin 1 del RJ45 recibe 5 V desde el PLC. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

33002530 07 07/2008

391

XXMIT

RJ45-(8x8) a 25 pins (mdem) 110XCA20401

Consulte la ilustracin para obtener vistas frontales de los conectores.


Adaptador macho de 25 pins

Conector RJ45 (8x8)

13 12 11 10 9

25 24 23 22 21

Pin 25

8 7 6

20 19 18 17 16 15 14

Pin 1

5 4 3 2

Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector RJ45 Nombre de la seal RXD TXD RTS CTS GND DSR Asignacin de pins 4 3 6 puenteados 7 puenteados 5 2 S S D-shell de 25 pins Asignacin de Asignacin de pins conectada a pins S S 3 2 4 puenteados 5 puenteados 7 6 20 1 Nombre de la seal RXD TXD RTS CTS GND DSR DTR Puesta a tierra del chasis

Puesta a tierra del chasis

AVISO
Peligro de cortocircuito de 5 V. El pin 1 del RJ45 recibe 5 V desde el PLC. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

392

33002530 07 07/2008

XXMIT

RJ45-(8x8) a 25 pins (mdem) 110XCA20401

Consulte la ilustracin para obtener vistas frontales de los conectores.


Adaptador macho de 25 pins

Conector RJ45 (8x8)

13 12 11 10 9 8 7 6

25 24 23 22 21 20 19 18 17 16 15 14

Pin 25

Pin 1

5 4 3 2

Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector RJ45 Nombre de la Asignacin seal de pins RXD TXD RTS CTS GND 4 3 6 7 5 Asignacin de pins conectada a S S S S S D-shell de 25 pins Asignacin de pins 3 2 4 5 7 6 puenteados 20 puenteados Puesta a tierra del chasis 8 S 1 Nombre de la seal RXD TXD RTS CTS GND DSR DTR Puesta a tierra del chasis

AVISO
Peligro de cortocircuito de 5 V. El pin 1 del RJ45 recibe 5 V desde el PLC. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

33002530 07 07/2008

393

XXMIT

RJ45-(8x8) a RJ45-(8x8) (mdem)

Consulte la ilustracin para obtener vistas frontales de los conectores.

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector RJ45 Nombre de la seal RXD TXD RTS CTS GND DSR Puesta a tierra del chasis Asignacin de pins 4 3 6 7 5 2 8 Asignacin de pins conectada a S S S S S S S Conector RJ45 Asignacin de pins 4 3 6 7 5 2 8 Nombre de la seal RXD TXD RTS CTS GND DSR Puesta a tierra del chasis

AVISO
Peligro de cortocircuito de 5 V. El pin 1 del RJ45 recibe 5 V desde el PLC. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

394

33002530 07 07/2008

XXMIT

9 pins a RJ45(8x8) (mdem) 110XCA20301

Consulte la ilustracin para obtener vistas frontales de los conectores.


Conector RJ45 (8x8) Macho de 9 pins
5 4 3 2

9 8 7 6

Pin 9

Pin 1 Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector RJ45 Nombre de la seal RXD TXD RTS CTS GND DSR Asignacin de pins 4 3 6 puenteados 7 puenteados 5 2 S S Conector de 9 pins Asignacin de Asignacin de pins conectada a pins S S 2 3 7 puenteados 8 puenteados 5 6 4 Nombre de la seal RXD TXD RTS CTS GND DSR DTR

Puesta a tierra del 8 chasis

Caja del conector

AVISO
Peligro de cortocircuito de 5 V. El pin 1 del RJ45 recibe 5 V desde el PLC. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

33002530 07 07/2008

395

XXMIT

9 pins a RJ45(8x8) (mdem) 110XCA20301

Consulte la ilustracin para obtener vistas frontales de los conectores.


Conector RJ45 (8x8) Macho de 9 pins

5 4 3 2

9 8 7 6

Pin 9

Pin 1 Pin 1

Vista frontal

Consulte la tabla de asignacin de pins del conector.


Asignacin de pins del conector Conector RJ45 Nombre de la seal RXD TXD RTS CTS GND Asignacin de pins 4 3 6 7 5 Asignacin de pins conectada a S S S S S Conector de 9 pins Asignacin de pins Nombre de la seal 2 3 7 8 5 6 puenteados 4 puenteados Puesta a tierra del chasis 8 S Caja del conector RXD TXD RTS CTS GND DSR DTR

AVISO
Peligro de cortocircuito de 5 V. El pin 1 del RJ45 recibe 5 V desde el PLC. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

396

33002530 07 07/2008

XXMIT

RJ 45 High end CPU RS 422/RS 485

Consulte la ilustracin para obtener una vista frontal del conector de la CPU.
Conector RJ45 (8x8)

Pin 1

Tabla de asignacin de pins para el conector RJ 45 High end Quantum RS 422/RS 485.
Pin 1 2 3 4 5 6 7 8 Seal RS-422 RX RX + TX + Nc GND TX Nc PE opcional Nc PE opcional Nc GND Seal RS-485 DD+

Nota: En el caso del RS-485, los pins de protocolo 1, 2, 3 y 6 deben estar cortocircuitados.

33002530 07 07/2008

397

XXMIT

Kits de adaptador de cable


Kits de adaptador de cable para el conector RJ45 Es posible que necesite comprar kits de adaptador de cable para los requisitos del conector RJ45 (8x8) en lugar de hacerlos. La tabla que aparece a continuacin proporciona una lista de los kits disponibles. Kits de adaptador de cable disponibles
Descripcin RJ45-(8x8) a 25 pins (macho) RJ45-(8x8) a 9 pins (macho) RJ45-(8x8) a 9 pins (hembra) RJ45-(8x8) a 25 pins (hembra) Nmero de serie 110XCA20401 110XCA20301 110XCA20302 110XCA20402

398

33002530 07 07/2008

XXMIT

Kits de adaptador de DB a RJ45

33002530 07 07/2008

399

XXMIT

Ejemplo 1 de conexin del cable

Se puede utilizar una conexin de 3 pins para una terminal estndar que funcione a baja velocidad o que utilice control de flujo de software. RJ45 a DB9
PLC Quantum RJ 45 RJ45-3 RJ45-4 RJ45-5 TXD RXD GND Conector de mdem DB9 RXD TXD GND DB25-2 DB-25-3 DB25-5

400

33002530 07 07/2008

XXMIT

Ejemplo 2 de conexin

RJ45 a DB25
PLC Quantum RJ 45 RJ45-3 RJ45-4 RJ45-5 TXD RXD GND Conector de mdem DB25 RXD TXD GND DB25-3 DB-25-2 DB25-7

33002530 07 07/2008

401

XXMIT

402

33002530 07 07/2008

Apndices

Introduccin
Visin general Contenido Esta seccin contiene los anexos. Este anexo contiene los siguientes captulos:
Captulo A B Nombre del captulo Cdigos de error y valores EFB Objetos de sistema Pgina 405 411

33002530 07 07/2008

403

Apndices

404

33002530 07 07/2008

Cdigos de error y valores EFB

A
Descripcin general
Introduccin En las tablas siguientes se muestran los cdigos y valores de error creados para los EFB de la librera de comunicacin. Este captulo contiene los siguiente apartados:
Apartado Tablas de cdigos de error de la librera de comunicacin Errores comunes de coma flotante Pgina 406 410

Contenido:

33002530 07 07/2008

405

Cdigos de error y valores EFB

Tablas de cdigos de error de la librera de comunicacin


Introduccin En las tablas siguientes se muestran los cdigos y valores de error creados para los EFB de la librera de comunicacin. Tabla de cdigos y valores de error creados para los EFB de la familia Extendido.
Estado de Valor de ENO en caso error en de error dec. F -30.191 16#8A1 1 F -30.531 16#88B D F 8.195 16#200 3 Variable no asignada al campo % MW (4x). Valor mostrado en la palabra de estado. (Aparece con E_EFB_MSTR_ERROR.) Valor mostrado en la palabra de estado. Aparece con E_EFB_NOT_STATE_RAM_4X. Consulte las tablas de: Cdigos de error de Modbus Plus y SY/MAX EtherNet (vase Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139) Cdigos de error especficos de SY/ MAX (vase Cdigos de error especficos de SY/MAX, p. 143) Cdigos de error TCP/IP EtherNet (vase Cdigos de error de TPC/IP Ethernet, p. 145) Error de comunicacin MSTR. 16#8A1 1 F 8.195 16#200 3 Valor mostrado en la palabra de estado. Aparece con E_EFB_MSTR_ERROR. Valor Descripcin del error de error en hex. Error de comunicacin MSTR.

Extendido

Nombre de EFB Cdigo de error

CREAD_REG

E_EFB_MSTR_E RROR E_EFB_NOT_ST ATE_RAM_4X -

CREAD_REG

CREAD_REG

CREAD_REG

8.206

16#200 E

CREAD_REG

CWRITE_REG

E_EFB_MSTR_E RROR -

-30.191

CWRITE_REG

406

33002530 07 07/2008

Cdigos de error y valores EFB

Nombre de EFB Cdigo de error

Estado de Valor de ENO en caso error en de error dec. F 8.206

Valor Descripcin del error de error en hex. 16#200 E Valor mostrado en la palabra de estado. Aparece con E_EFB_NOT_STATE_RAM_4X. Consulte las tablas de: Cdigos de error de Modbus Plus y SY/MAX EtherNet (vase Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139) Cdigos de error especficos de SY/ MAX (vase Cdigos de error especficos de SY/MAX, p. 143) Cdigos de error TCP/IP EtherNet (vase Cdigos de error de TPC/IP Ethernet, p. 145) Error interno: EFB ha detectado una violacin (por ejemplo, que la escritura sobrepasa los lmites de %MW [4x]) Variable no asignada al campo % MW (4x). Valor mostrado en la palabra de estado. Aparece con E_EFB_MSTR_ERROR en el estado del bloque de control. Valor mostrado en la palabra de estado. Aparece con E_EFB_NOT_STATE_RAM_4X en el estado del bloque de control.

CWRITE_REG

CWRITE_REG

MBP_MSTR

E_EFB_OUT_OF _RANGE E_EFB_NOT_ST ATE_RAM_4X -

-30.192 16#8A1 0

MBP_MSTR

-30.531 16#88B D

MBP_MSTR

8.195

16#200 3

MBP_MSTR

8.206

16#200 E

33002530 07 07/2008

407

Cdigos de error y valores EFB

Nombre de EFB Cdigo de error

Estado de Valor de ENO en caso error en de error dec. F -

Valor Descripcin del error de error en hex. Consulte las tablas de: Cdigos de error de Modbus Plus y SY/MAX EtherNet (vase Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139) Cdigos de error especficos de SY/ MAX (vase Cdigos de error especficos de SY/MAX, p. 143) Cdigos de error TCP/IP EtherNet (vase Cdigos de error de TPC/IP Ethernet, p. 145) Parmetro fuera de rango. 16#759 E

MBP_MSTR

READ_REG

W_WARN_OUT_ OF_RANGE E_EFB_NOT_ST ATE_RAM_4X E_EFB_MSTR_E RROR -

30.110

READ_REG

-30.531 16#88B D

Variable no asignada al campo % MW (4x). Error de comunicacin MSTR.

READ_REG

-30.191 16#8A1 1

READ_REG

8.195

16#200 3

Valor mostrado en la palabra de estado. Aparece con W_WARN_OUT_OF_RANGE. Valor mostrado en la palabra de estado. Aparece con E_EFB_NOT_STATE_RAM_4X. Consulte las tablas de: Cdigos de error de Modbus Plus y SY/MAX EtherNet (vase Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139) Cdigos de error especficos de SY/ MAX (vase Cdigos de error especficos de SY/MAX, p. 143) Cdigos de error TCP/IP EtherNet (vase Cdigos de error de TPC/IP Ethernet, p. 145)

READ_REG

MBPUNLOC

8.206

16#200 E

READ_REG

408

33002530 07 07/2008

Cdigos de error y valores EFB

Nombre de EFB Cdigo de error

Estado de Valor de ENO en caso error en de error dec. F 30.110

Valor Descripcin del error de error en hex. Parmetro fuera de rango. 16#759 E

WRITE_REG

W_WARN_OUT_ OF_RANGE E_EFB_NOT_ST ATE_RAM_4X E_EFB_MSTR_E RROR -

WRITE_REG

-30.531 16#88B D

Variable no asignada al campo % MW (4x). Error de comunicacin MSTR.

WRITE_REG

-30.191 16#8A1 1

WRITE_REG

8.195

16#200 3

Valor mostrado en la palabra de estado. Aparece con W_WARN_OUT_OF_RANGE. Valor mostrado en la palabra de estado. Aparece con E_EFB_NOT_STATE_RAM_4X. Consulte las tablas de: Cdigos de error de Modbus Plus y SY/MAX EtherNet (vase Cdigos de error de Modbus Plus, SY/MAX y Ethernet TCP/IP, p. 139) Cdigos de error especficos de SY/ MAX (vase Cdigos de error especficos de SY/MAX, p. 143) Cdigos de error TCP/IP EtherNet (vase Cdigos de error de TPC/IP Ethernet, p. 145)

WRITE_REG

8.206

16#200 E

WRITE_REG

33002530 07 07/2008

409

Cdigos de error y valores EFB

Errores comunes de coma flotante


Introduccin En la tabla siguiente se muestran los cdigos y valores de error comunes creados para los errores de coma flotante. Tabla de errores comunes de coma flotante
Valor de error Valor de error Descripcin del error en Dec en Hex -30150 -30151 -30152 -30154 -30155 -30158 -30159 -30162 -30163 -30166 16#8A3A 16#8A39 16#8A38 16#8A36 16#8A35 16#8A32 16#8A31 16#8A2E 16#8A2D 16#8A2A Valor de base (no aparece como valor de error) Operacin de coma flotante ilegal El operando no est normalizado, no es un nmero REAL vlido Divisin por cero ilegal Operacin de coma flotante ilegal / Divisin por cero Rebasamiento de coma flotante Operacin de coma flotante ilegal / Rebasamiento Rebasamiento de coma flotante / Divisin por cero Operacin de coma flotante ilegal / Rebasamiento / Divisin por cero Error interno

Errores comunes de coma flotante


Cdigos de error FP_ERROR

E_FP_STATUS_FAILED_IE E_FP_STATUS_FAILED_IE E_FP_STATUS_FAILED_ZE E_FP_STATUS_FAILED_ZE_IE E_FP_STATUS_FAILED_OE E_FP_STATUS_FAILED_OE_IE E_FP_STATUS_FAILED_OE_ZE E_FP_STATUS_FAILED_OE_ZE _IE E_FP_NOT_COMPARABLE

410

33002530 07 07/2008

Objetos de sistema

B
Presentacin
Objeto Este captulo describe los bits y las palabras de sistema del lenguaje Unity Pro. Nota: los smbolos asociados a cada objeto de bit o de palabra del sistema a los que se hace referencia en las tablas descriptivas de dichos objetos no estn incluidos de serie en el programa, se pueden introducir a travs del editor de datos. Se proponen para homogeneizar su denominacin en las diferentes aplicaciones. Contenido: Este captulo contiene los siguiente apartados:
Apartado Introduccin de bits de sistema Descripcin de los bits de sistema de %S15 a %S21 Descripcin de las palabras de sistema %SW12 a %SW29 Pgina 412 413 416

33002530 07 07/2008

411

Objetos de sistema

Introduccin de bits de sistema


General Los autmatas Modicon M340, Premium, Atrium y Quantum utilizan bits de sistema %Si que indican los estados del autmata o que permiten controlar el funcionamiento de ste. Dichos bits pueden probarse en el programa del usuario con el fin de detectar cualquier evolucin de funcionamiento que conlleve un procedimiento de procesamiento establecido. Algunos de estos bits deben volver a su estado inicial o normal por programa. No obstante, los bits de sistema que vuelven a su estado inicial o normal a travs del sistema, no deben hacerlo a travs del programa ni del terminal

412

33002530 07 07/2008

Objetos de sistema

Descripcin de los bits de sistema de %S15 a %S21


Descripcin detallada
Bit Smbolo Funcin

Descripcin de los bits de sistema de %S15 a %S21:


Descripcin Normalmente en estado 0, este bit pasa al estado 1 cuando el rea de destino de una transferencia de cadena de caracteres no tiene el tamao suficiente (incluido el nmero de caracteres y el carcter de fin de cadena de caracteres) para recibirla. La aplicacin se detiene debido a un error si el bit %S78 se ha establecido en 1. La aplicacin debe volver a poner el bit en 0. Este bit no est disponible en PLC de seguridad Quantum. Normalmente en estado 1, el sistema vuelve a establecer este bit en 0 cuando falla un mdulo de E/S en bastidor o en un dispositivo Fipio configurado en la tarea. El usuario debe volver a establecer el bit en 1. Estado inicial 0 Modicon Premium M340 Atrium S S Quantum S (excepto para PLC de seguridad)

%S15 Fallo de STRINGERR cadena de OR caracteres

%S16 IOERRTSK

Fallo de salidas/ entradas de tarea

AVISO
%S16 para PLC Quantum En Quantum, los errores de comunicacin de los mdulos (NOM, NOE, NWM, CRA, CRP) y de los mdulos MMS no se comunican en los bits %S10 y %S16. Es responsabilidad del usuario utilizar estos bits de sistema de forma correcta. Si no se siguen estas instrucciones pueden producirse lesiones personales o daos en el equipo.

33002530 07 07/2008

413

Objetos de sistema

Bit Smbolo %S17 CARRY

Funcin Salida de desplazami ento circular

Descripcin Normalmente est en estado 0. Durante una operacin de desplazamiento circular, este bit adopta el estado del bit saliente.

Estado Modicon inicial M340 0 S

Premium Atrium S

Quantum S

%S18 OVERFLOW

Desborde o Normalmente en estado 0, este bit pasa a 1 error en caso de desborde de la capacidad si: aritmtico el resultado es superior a +32.767 o inferior a -32.768, en longitud simple; el resultado es superior a +65.535, en un nmero entero sin signo; el resultado es superior a +2.147.483.647 o inferior a 2.147.483.648, en longitud doble; el resultado es superior a +4.294.967.296, en un nmero entero en longitud doble sin signo; los valores reales sobrepasan los lmites; hay una divisin entre 0; hay una raz de un nmero negativo; se fuerza un paso inexistente en un programador cclico; hay un apilamiento de un registro completo, vaciado de un registro vaco. Slo hay un caso en el que los PLC Modicon M340 no aumentan el bit %S18 cuando los valores reales superan los lmites. Esto slo sucede si se utilizan operandos no normalizados o algunas operaciones que generan resultados no normalizados (transgresin por debajo de rango gradual). Debe comprobarse mediante el programa del usuario despus de cada operacin en la que exista riesgo de desborde; si es el caso, el usuario debe volver a ponerlo a 0. Cuando el bit %S18 pasa a 1, la aplicacin se detiene debido a un error si el bit %S78 se ha establecido en 1.

414

33002530 07 07/2008

Objetos de sistema

Bit Smbolo %S19 OVERRUN

Funcin Desborde del perodo de tarea (exploraci n peridica)

Descripcin Normalmente en estado 0, el sistema pone este bit en estado 1 en caso de desborde del perodo de ejecucin (tiempo de ejecucin de tarea superior al perodo definido por el usuario en la configuracin o programado en la palabra %SW asociada a la tarea). El usuario debe volver a establecer el bit en 0. Cada tarea gestiona su propio bit %S19. Normalmente en estado 0, este bit pasa a estado 1 cuando la direccin del objeto de ndice sea menor que 0 o supere el nmero de objetos declarados en la configuracin. En este caso, ocurre lo mismo que si el ndice fuera igual a 0. Debe comprobarse mediante el programa del usuario despus de cada operacin en la que exista riesgo de desborde; si es el caso, vuelve a 0. Cuando el bit %S20 pasa a 1, la aplicacin se detiene debido a un error si el bit %S78 se ha establecido en 1. Este bit no est disponible en PLC de seguridad Quantum.

Estado Modicon Premium inicial M340 Atrium 0 S S

Quantum S

%S20 INDEXOVF

Desborde del ndice

S (excepto para PLC de seguridad)

%S21 1RSTTASK RUN

Primer ciclo El bit %S21, que se comprueba en una de tarea tarea (Mast, Fast, Aux0, Aux1, Aux2 o Aux3), indica el primer ciclo de dicha tarea, incluso despus de un arranque en fro con arranque automtico en ejecucin y un arranque en caliente. %S21 se pone a 1 al comienzo del ciclo y a 0 al final del ciclo. Nota: Es importante saber que el bit %S21 no tiene el mismo significado en PL7 y en Unity Pro.

33002530 07 07/2008

415

Objetos de sistema

Descripcin de las palabras de sistema %SW12 a %SW29


Descripcin detallada
Palabra Smbolo %SW12 UTWPORTAD DR

Descripcin de las palabras de sistema %SW12 a %SW29:


Funcin Direccin del puerto serie del procesador Descripcin Para Premium: direccin Uni-Telway del puerto de terminal (en modalidad de esclavo) definida en la configuracin y cargada en esta palabra en un arranque en fro. El sistema no tiene en cuenta la modificacin del valor de esta palabra. Para Modicon M340: proporciona la direccin del esclavo de Modbus del puerto serie de la CPU. No se tiene en cuenta la modificacin. Es 0, si la CPU no dispone de una conexin de puerto serie. nicamente para PLC de seguridad Quantum, esta palabra indica la modalidad de servicio del procesador de la aplicacin del mdulo CPU. 16#A501 = modalidad de mantenimiento 16#5AFE = modalidad segura Cualquier otro valor se interpreta como un error. Nota: En un sistema de seguridad Hot Standby, esta palabra se intercambia desde el PLC primario hasta el PLC Standby para informar al PLC Standby de la modalidad segura o de mantenimiento. Estado inicial Modicon Premium M340 Atrium S S Quantum NO (consulte %SW12 a continuaci n)

%SW12 APMODE

Modalidad del procesador de la aplicacin

16#A50 1

NO

NO

S Slo en PLC de seguridad

416

33002530 07 07/2008

Objetos de sistema

Palabra Smbolo %SW13 XWAYNETWA DDR

Funcin Direccin principal de la estacin

Descripcin Para la red principal (Fipway o Ethway), indica: el nmero de la estacin (byte de menor valor) de 0 a 127, el nmero de la red (byte de mayor valor) de 0 a 63 Valor de los microinterruptores de la tarjeta PCMCIA).

Estado inicial 254 (16#00F E)

Modicon Premium M340 Atrium NO S

Quantum NO (consulte %SW13 a continuaci n)

%SW13 INTELMODE

Modalidad del procesador Intel

nicamente para PLC de seguridad Quantum, esta palabra indica la modalidad de servicio del procesador Intel del mdulo CPU. 16#501A = modalidad de mantenimiento 16#5AFE = modalidad segura Cualquier otro valor se interpreta como un error. Nota: En un sistema de seguridad Hot Standby, esta palabra se intercambia desde el PLC primario hasta el PLC Standby para informar al PLC Standby de la modalidad segura o de mantenimiento.

NO

NO

S Slo en PLC de seguridad

%SW14 OSCOMMVER S

Versin comercial del procesador del PLC Versin del parche del procesador del PLC

Esta palabra contiene la versin comercial del procesador del PLC. Ejemplo: 16#0135 Versin: 01 Nmero de emisin: 35 Esta palabra contiene la versin comercial del parche del procesador del PLC. La codificacin se lleva a cabo en el byte de menor valor de la palabra. Codificacin: 0 = sin parche, 1 = A, 2 = B... Ejemplo: 16#0003 corresponde al parche C.

%SW15 OSCOMMPAT CH

33002530 07 07/2008

417

Objetos de sistema

Palabra Smbolo %SW16 OSINTVERS

Funcin Nmero de versin del firmware

Descripcin Esta palabra contiene el nmero de versin del firmware en formato hexadecimal del firmware del procesador del PLC. Ejemplo: 16#0011 Versin: 2.1 N. de versin: 17
Cuando se detecta un fallo en una operacin aritmtica flotante, el bit %S18 pasa a 1 y el estado de error de %SW17 se actualiza segn la codificacin siguiente: %SW17.0 = operacin no vlida; el resultado no es un nmero. %SW17.1 = operando no normalizado; resultado aceptable (Modicon M340 no gestiona el flag). %SW17.2 = divisin entre 0; el resultado es infinito. %SW17.3 = desborde; el resultado es infinito. %SW17.4 = transgresin por debajo de rango; el resultado es 0. %SW17.5 a 15 = no utilizado. El sistema vuelve a poner esta palabra a 0 en el arranque en fro, o bien el programa para utilizarla de nuevo. Esta palabra no est disponible en PLC de seguridad Quantum.

Estado inicial -

Modicon Premium M340 Atrium S S

Quantum S

%SW17 FLOATSTAT

Estado de fallo en operacin flotante

S (excepto para PLC de seguridad)

%SD18: %SW18 y %SW19 100MSCOUN TER

Contador de %SW18 representa los bytes de menor valor y %SW19, los bytes de mayor valor de la tiempo palabra doble %SD18, que el sistema absoluto

aumenta cada 1/10 dcimas de segundo. La aplicacin puede leer o escribir estas palabras para realizar clculos de duracin. %SD18 aumenta sistemticamente, incluso en la modalidad STOP y estados equivalentes. Sin embargo, no se tienen en cuenta las veces que el PLC est apagado, puesto que la funcin no est vinculada al administrador de tiempo real, sino slo al reloj en tiempo real. Para PLC de seguridad Quantum, sabiendo que los dos procesadores deben procesar exactamente los mismos datos, el valor de %SD18 se actualiza al comienzo de la tarea MAST y, a continuacin, se congela durante la ejecucin de la aplicacin.

418

33002530 07 07/2008

Objetos de sistema

Palabra Smbolo %SD20: %SW20 y %SW21 MSCOUNTER

Funcin

Descripcin

Estado inicial 0

Modicon Premium M340 Atrium S S

Quantum S

Contador de Para PLC Quantum y M340, el sistema tiempo aumenta %SD20 cada 1/1000 dcimas absoluto de segundo (incluso cuando el PLC est en STOP, %SD20 deja de incrementarse si el PLC est apagado). %SD20 puede leerse mediante el programa de usuario o el terminal. %SD20 se restablece en arranque en fro. %SD20 no se restablece en arranque en caliente. Para los PLC Premium TSX P57 14M/24M/34M/C024M/ 024M y TSX PCI57 204M/354M, el sistema aumenta %SD20 5 veces cada 5/1000 dcimas de segundo. Para el resto de PLC Premium, %SD20 se establece segn el contador de tiempo a 1 ms, como los PLC Quantum y M340. Para PLC de seguridad Quantum, sabiendo que los dos procesadores deben procesar exactamente los mismos datos, el valor de %SD18 se actualiza al comienzo de la tarea MAST y, a continuacin, se congela durante la ejecucin de la aplicacin. Valor del conmutador rotativo El byte de menor valor contiene el conmutador rotativo del procesador Ethernet. Puede leerse mediante el programa de usuario o el terminal. Esta palabra de sistema permite verificar en el lado del servidor el nmero de solicitudes procesadas por PLC por ciclo.

%SW23

NO

NO

%SW26

Nmero de solicitudes procesadas

33002530 07 07/2008

419

Objetos de sistema

Palabra Smbolo %SW27 %SW28 %SW29

Funcin Duracin de la administraci n del sistema

Descripcin %SW27 es la ltima duracin de la administracin del sistema. %SW28 contiene la duracin mxima de la administracin del sistema. %SW29 contiene la duracin mnima de la administracin del sistema. La duracin de la administracin del sistema depende de la configuracin (nmero de E/S) y de las peticiones de ciclo actuales (comunicacin, diagnsticos). Duracin de la administracin del sistema = duracin del ciclo Mast duracin de ejecucin del cdigo de usuario. Pueden leerse y escribirse mediante el programa de usuario o el terminal.

Estado inicial -

Modicon Premium M340 Atrium S NO

Quantum NO

420

33002530 07 07/2008

Glosario

!
%I %IW %KW %M %MW %Q %QW Segn la norma IEC, %I indica un objeto de lenguaje de entrada binaria. Segn la norma IEC, %IW indica un objeto de lenguaje de entrada analgica. Segn la norma IEC, %KW indica un objeto de lenguaje de palabra constante. Segn la norma IEC, %M indica un objeto de lenguaje de bit de memoria. Segn la norma IEC, %MW indica un objeto de lenguaje de palabra de memoria. Segn la norma IEC, %Q indica un objeto de lenguaje de salida binaria. Segn la norma IEC, %QW indica un objeto de lenguaje de salida analgica.

A
ADDM_TYPE Este tipo predefinido se utiliza como salida de la funcin ADDM. Se trata de ARRAY[0..8] OF Int. Lo encontrar en la biblioteca, en la misma familia que las EF que lo utilizan. Este tipo predefinido se utiliza como salida de la funcin ADDR. Se trata de ARRAY[0..5] OF Int. Lo encontrar en la biblioteca, en la misma familia que las EF que lo utilizan.

ADDR_TYPE

33002530 07 07/2008

421

Glosario

ANL_IN

ANL_IN es la forma abreviada del tipo de datos de entrada analgica. Se utiliza cuando se procesan valores analgicos. Las direcciones %IW del mdulo de entrada analgica configurado, que se especifican en la lista de componentes de E/ S, se asignan automticamente a los tipos de datos y, como consecuencia, deben estar ocupadas nicamente por variables que no se hayan asignado. ANL_OUT es la forma abreviada del tipo de datos de salida analgica. Se utiliza cuando se procesan valores analgicos. Las direcciones %MW del mdulo de entrada analgica configurado, que se especifican en la lista de componentes de E/ S, se asignan automticamente a los tipos de datos y, como consecuencia, deben estar ocupadas nicamente por variables que no se hayan asignado. Existe una jerarqua entre los distintos tipos de datos. En los DFB, a veces es posible declarar las variables que puedan contener varios tipos de valores. Se utilizan los tipos ANY_xxx.

ANL_OUT

ANY

422

33002530 07 07/2008

Glosario

En la siguiente figura se describe esta estructura jerarquizada:


ANY ANY_ELEMENTARY ANY_MAGNITUDE_OR_BIT ANY_MAGNITUDE ANY_NUM ANY_REAL REAL ANY_INT DINT, INT, UDINT, UINT TIME ANY_BIT DWORD, WORD, BYTE, BOOL ANY_STRING STRING ANY_DATE DATE_AND_TIME, DATE, TIME_OF_DAY EBOOL ANY_DERIVED ANY_ARRAY ANY_ARRAY_ANY_EDT ANY_ARRAY_ANY_MAGNITUDE ANY_ARRAY_ANY_NUM ANY_ARRAY_ANY_REAL ANY_ARRAY_REAL ANY_ARRAY_ANY_INT ANY_ARRAY_DINT ANY_ARRAY_INT ANY_ARRAY_UDINT ANNY_ARRAY_UINT ANY_ARRAY_TIME ANY_ARRAY_ANY_BIT ANY_ARRAY_DWORD ANY_ARRAY_WORD ANY_ARRAY_BYTE ANY_ARRAY_BOOL ANY_ARRAY_ANY_STRING ANY_ARRAY_STRING ANY_ARRAY_ANY_DATE ANY_ARRAY_DATE_AND_TIME ANY_ARRAY_DATE ANY_ARRAY_TIME_OF_DAY ANY_ARRAY_EBOOL ANY_ARRAY_ANY_DDT ANY_STRUCTURE ANY_DDT ANY_IODDT ANY_FFB ANY_EFB ANY_DFB

ARRAY

Una ARRAY es una tabla que contiene elementos del mismo tipo. La sintaxis es la siguiente: ARRAY [<lmites>] OF <Tipo> Ejemplo: ARRAY [1..2] OF BOOL es una tabla de una dimensin compuesta por dos elementos de tipo BOOL.

33002530 07 07/2008

423

Glosario

ARRAY [1..10, 1..20] OF INT es una tabla de dos dimensiones compuesta por 10 x 20 elementos de tipo INT.

B
BCD BCD es la forma abreviada del formato Binary Coded Decimal (decimal codificado en binario). BCD permite representar los nmeros decimales comprendidos entre 0 y 9 mediante un grupo de cuatro bits (medio byte). En este formato, los cuatro bits utilizados para codificar los nmeros decimales disponen de un rango de combinaciones que no se utilizan. Ejemplo de la codificacin BCD: El nmero 2.450 se codifica as: 0010 0100 0101 0000 BOOL es la forma abreviada del tipo booleano. Se trata del tipo de datos bsico en informtica. Una variable de tipo BOOL posee uno de estos valores: 0 (FALSE) o 1 (TRUE). Un bit extrado de la palabra es de tipo BOOL, por ejemplo: %MW10.4. Cuando se reagrupan ocho bits, se habla de BYTE (byte). La entrada de un BYTE se realiza en modalidad binaria o en base 8. El tipo BYTE est codificado en un formato de 8 bits que, en el formato hexadecimal, va de 16#00 a 16#FF.

BOOL

BYTE

C
Cadena Cadena nica Etapa activa de un SFC. Modalidad de servicio de un diagrama SFC en la que slo puede haber un paso activo en un momento determinado.

424

33002530 07 07/2008

Glosario

Convenciones de designacin (identificador)

Un identificador es un conjunto de letras, cifras y signos de subrayado que comienza por una letra o un signo de subrayado (por ejemplo, el nombre de un tipo de bloque de funciones, de una instancia, de una variable o de una seccin). Pueden utilizarse letras acentuadas de grupos de caracteres nacionales (como , , y ), excepto en los nombres de proyectos y DFB. Los signos de subrayado son significativos en los identificadores. Por ejemplo, A_BCD y AB_CD se interpretan como distintos identificadores. El uso de varios signos de subrayado consecutivos o al principio de un identificador es incorrecto. Los identificadores no pueden contener espacios. No se distingue entre maysculas y minsculas. Por ejemplo, ABCD y abcd se interpretan como el mismo identificador. Segn la norma IEC 61131-3, no se permite utilizar cifras antepuestas en los identificadores. Sin embargo, puede utilizarlos si, en el cuadro de dilogo Herramientas Ajustes del proyecto, ficha Extensiones de lenguaje, activa la casilla de verificacin Permitir cifras antepuestas. Los identificadores no pueden ser palabras clave.

D
DATE El tipo DATE codificado en BCD en un formato de 32 bits contiene la informacin siguiente: el ao codificado en un campo de 16 bits, el mes codificado en un campo de 8 bits, el da codificado en un campo de 8 bits. El tipo DATE debe introducirse de la manera siguiente: D#<Ao>-<Mes>-<Da> Esta tabla muestra los lmites inferior y superior de cada campo:
Campo Ao Mes Da Lmites [1990,2099] [01,12] [01,31] [01,30] [01,29] [01,28] Comentario Ao El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos. Para los meses 01/03/05/07/08/10/12 Para los meses 04/06/09/11 Para el mes 02 (aos bisiestos) Para el mes 02 (aos no bisiestos)

DATE_AND_TIM E

Vase DT.

33002530 07 07/2008

425

Glosario

Datos globales

Los datos globales permiten el intercambio automtico de variables de datos para la coordinacin de las aplicaciones del PLC. Representacin de un entero doble con formato doble BCD. El formato BCD (Binary Coded Decimal) se utiliza para representar los nmeros decimales comprendidos entre 0 y 9 mediante un grupo de cuatro bits. En este formato, los cuatro bits utilizados para codificar los nmeros decimales disponen de un rango de combinaciones que no se utilizan. Ejemplo de la codificacin DBCD: El nmero 78.993.016 se codifica as: 0111 1000 1001 1001 0011 0000 0001 0110 DDT es la forma abreviada de Derived Data Type (tipo de datos derivados). Un tipo de datos derivados es un conjunto de elementos del mismo tipo (ARRAY) o de distintos tipos (estructura). DFB es la forma abreviada de Derived Function Block (bloque de funciones derivado). Los tipos DFB son bloques de funciones programables por el usuario en lenguaje ST, IL, LD o FBD. El uso de estos tipos DFB en una aplicacin permite: simplificar la concepcin y la entrada del programa; aumentar la legibilidad del programa; facilitar su depuracin y reducir el volumen de cdigo generado. Vase FBD.

DBCD

DDT

DFB

Diagrama de bloques de funciones DINT

DINT es la forma abreviada de Double INTeger (entero doble) (codificado en 32 bits). Los lmites inferior y superior figuran a continuacin: de -(2 elevado a 31) a (2 elevado a 31) - 1. Ejemplo: -2.147.483.648, 2.147.483.647, 16#FFFFFFFF. DT es la forma abreviada de Date and Time (fecha y hora). El tipo DT, codificado en BCD en un formato de 64 bits, contiene esta informacin: el ao codificado en un campo de 16 bits, el mes codificado en un campo de 8 bits, el da codificado en un campo de 8 bits, la hora codificada en un campo de 8 bits, los minutos codificados en un campo de 8 bits, los segundos codificados en un campo de 8 bits.
33002530 07 07/2008

DT

426

Glosario

Nota: No se utilizan los 8 bits menos significativos. El tipo DT debe introducirse as: DT#<Ao>-<Mes>-<Da>-<Hora>:<Minutos>:<Segundos> Esta tabla muestra los lmites inferior y superior de cada campo:
Campo Ao Mes Da Lmites [1990,2099] [01,12] [01,31] [01,30] [01,29] [01,28] Hora Minuto Segundo [00,23] [00,59] [00,59] Comentario Ao El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos. Para los meses 01/03/05/07/08/10/12 Para los meses 04/06/09/11 Para el mes 02 (aos bisiestos) Para el mes 02 (aos no bisiestos) El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos. El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos. El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos.

DWORD

DWORD es la forma abreviada de Double Word (palabra doble). El tipo DWORD se codifica en un formato de 32 bits. Esta tabla establece los lmites inferior y superior de las bases que pueden utilizarse:
Base Hexadecimal Octal Binario Lmite inferior 16#0 8#0 2#0 Lmite superior 16#FFFFFFFF 8#37777777777 2#11111111111111111111111111111111

Ejemplos de representacin:

33002530 07 07/2008

427

Glosario

Datos 00000000000010101101110011011110 00000000000000010000000000000000 00000000000010101011110011011110

Representacin en una de las bases 16#ADCDE 8#200000 2#10101011110011011110

E
EBOOL EBOOL es la versin abreviada de Extended BOOLean (booleano extendido). Una variable de tipo EBOOL posee el valor 0 (FALSE) o 1 (TRUE), pero igualmente los flancos ascendentes o descendentes y las funciones de forzado. Una variable de tipo EBOOL ocupa un byte de memoria. El byte se compone de los siguientes elementos: un bit del valor, un bit del historial (cada vez que cambia el objeto de estado, el valor se copia en el bit del historial), un bit del forzado (igual a 0 si el objeto no se fuerza, igual a 1 si el bit se fuerza). El valor predeterminado de cada bit es 0 (FALSE). EF EF es la forma abreviada de Elementary Function (funcin elemental). Se trata de un bloque, utilizado en un programa, que realiza una funcin de software predefinida. Una funcin no dispone de informacin sobre el estado interno. Varias llamadas de la misma funcin con los mismos parmetros de entrada muestran siempre los mismos valores de salida. Encontrar informacin sobre la forma grfica de la llamada de la funcin en el [bloque funcional (instancia)]. Al contrario que las llamadas de bloques de funciones, las llamadas de funcin constan nicamente de una salida a la que no se ha asignado un nombre y cuyo nombre coincide con el de la funcin. En FBD, cada llamada se indica mediante un [nmero] nico a travs del bloque grfico. Este nmero se genera automticamente y no puede modificarse. Coloque y configure estas funciones en el programa para ejecutar su aplicacin. Tambin puede desarrollar otras funciones mediante el kit de desarrollo de SDKC. EFB es la forma abreviada de Elementary Function Block (bloque de funciones elementales). Se trata de un bloque, utilizado en un programa, que realiza una funcin de software predefinida.

EFB

428

33002530 07 07/2008

Glosario

Los EFB cuentan con estados y parmetros internos. Aunque las entradas sean idnticas, los valores de las salidas pueden ser diferentes. Por ejemplo, un contador dispone de una salida que indica que se ha alcanzado el valor de preseleccin. Esta salida se establece en 1 cuando el valor actual coincide con el valor de preseleccin. EN EN significa ENable (activar); se trata de una entrada de bloque facultativa. Cuando la entrada EN est activada, se establece una salida ENO automticamente. Si EN = 0, el bloque no est activado, su programa interno no se ejecuta y ENO se establece en 0. Si EN = 1, se ejecuta el programa interno del bloque y ENO se establece en 1. Si se produce un error, ENO se establece en 0. Si la entrada EN no est conectada, se establece automticamente en 1. ENO significa Error NOtification (notificacin de error); se trata de la salida asociada a la entrada facultativa EN. Si ENO se establece en 0 (porque EN = 0 o en caso de que se produzca un error de ejecucin): el estado de las salidas de bloques de funciones permanece idntico a aqul en el que estaban durante el ltimo ciclo de exploracin ejecutado correctamente; la(s) salida(s) de funciones, as como los procedimientos, se establecen en 0. La exploracin de E/S realiza un sondeo continuo de los mdulos de E/S para recopilar informacin de diagnstico, bits de datos, estados y errores. En este proceso se supervisan las entradas y salidas de control.

ENO

Exploracin de E/S

F
FBD FBD es la forma abreviada de Function Block Diagram (lenguaje en bloques funcionales). FBD es un lenguaje de programacin grfica que funciona como un diagrama. Mediante la adicin de bloques lgicos simples (Y, O, etc.), cada funcin o bloque de funciones del programa se representa mediante esta forma grfica. En cada bloque, las entradas se sitan a la izquierda y las salidas, a la derecha. Las salidas de los bloques pueden estar vinculadas a las entradas de otros bloques para formar expresiones complejas. Trmino colectivo para EF (funcin elemental), EFB (bloque de funciones elemental) y DFB (bloque de funciones derivado). File Transfer Protocol (protocolo de transferencia de archivos).

FFB

FTP

33002530 07 07/2008

429

Glosario

Funcin Funcin elemental

Vase EF. Vase EF.

G
GRAY El cdigo Gray o binario reflejado permite codificar un valor numrico desarrollado en una cadena de configuraciones binarias que puede diferenciarse mediante el cambio de estado de un solo bit. Este cdigo puede utilizarse, por ejemplo, para evitar este suceso aleatorio: en binario puro, el cambio del valor 0111 en 1000 puede producir un rango de nmeros comprendido entre 0 y 1.000, puesto que todos los bits no cambian de valor simultneamente. Equivalencia entre decimal, BCD y Gray:

Decimal BCD Gray

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101

H
HTTP Hypertext Transfer Protocol (protocolo de transferencia de hipertexto)

I
IEC 61131-3 Norma internacional: comandos de lgica programables Parte 3: lenguajes de programacin IL es la forma abreviada de Instruction List (lista de instrucciones). Este lenguaje es un conjunto de instrucciones bsicas. Se acerca mucho al lenguaje de ensamblaje utilizado para programar los procesadores.
33002530 07 07/2008

IL

430

Glosario

Cada instruccin consta de un cdigo de instruccin y un operando. INF Se utiliza para indicar que un nmero sobrepasa los lmites permitidos. En el caso de un nmero entero, los rangos de valores (indicados en color gris) son los siguientes:

-INF -3.402824e+38 -1.1754944e-38 0.0 1.1754944e-38

INF 3.402824e+38

Cuando un resultado: es inferior a -3,402824e+38, aparece el smbolo -INF (de -infinito); es superior a +3,402824e+38, aparece el smbolo INF (de +infinito); INT INT es la forma abreviada de single INTeger (entero simple) (codificado en 16 bits). Los lmites inferior y superior figuran a continuacin: de -(2 elevado a 15) a (2 elevado a 15) - 1. Ejemplo: -32.768, 32.767, 2#1111110001001001, 16#9FA4. IODDT es la forma abreviada de Input/Output Derived Data Type (tipo de datos derivados de E/S). El trmino IODDT designa un tipo de datos estructurado que representa un mdulo o un canal de un mdulo del PLC. Cada mdulo experto posee sus propios IODDT.

IODDT

L
LD LD es la forma abreviada de Ladder Diagram (diagrama de contactos). LD es un lenguaje de programacin que representa las instrucciones que deben ejecutarse en forma de esquemas grficos muy parecidos a un esquema elctrico (contactos, bobinas, etc.).

M
Multicadena Modalidad de servicio de un SFC. En modalidad multicadena, el SFC puede contar con varias etapas activas simultneamente.

33002530 07 07/2008

431

Glosario

N
NAN Se utiliza para indicar que el resultado de una operacin no es numrico (NAN = Not A Number, no numrico). Ejemplo: el clculo de la raz cuadrada de un nmero negativo. Nota: La norma IEC 559 define dos clases de NAN: NAN silencioso (QNAN) y NAN de sealizacin (SNAN). QNAN es un NAN con el bit de fraccin ms significativo, mientras que SNAN es un NAN sin el bit de fraccin ms significativo (nmero de bit 22). Los QNAN pueden propagarse por la mayora de las operaciones aritmticas sin que se indique ninguna excepcin. En cambio, los SNAN generalmente sealan una operacin no vlida cuando se utilizan como operandos en operaciones aritmticas (vanse %SW17 y %S18).

P
Palabra clave Una palabra clave es una combinacin nica de caracteres que se utiliza como elemento de sintaxis en un lenguaje de programacin (vase la definicin que aparece en el apndice B de la norma IEC 61131-3. Todas las palabras clave utilizadas en Unity Pro e incluidas en la norma IEC 61131-3 aparecen en el apndice C de dicha norma. Las palabras clave no pueden servir de identificadores [nombres de variables, secciones, tipos de DFB, etc.] en el programa). Desde un punto de vista tcnico, los procedimientos son vistas funcionales. La nica diferencia con las funciones elementales es que los procedimientos pueden tener ms de una salida y admiten variables del tipo de datos VAR_IN_OUT. Los procedimientos no se diferencian visualmente de las funciones elementales. Los procedimientos son una extensin de la norma IEC 61131-3.

Procedimiento

R
REAL El tipo REAL (real) se codifica en formato de 32 bits.

432

33002530 07 07/2008

Glosario

Los rangos de valores posibles se muestran en la figura siguiente:


-INF -3.402824e+38 -1.1754944e-38 0.0 1.1754944e-38 INF 3.402824e+38

Cuando un resultado: est comprendido entre -1,175494e-38 y 1,175494e-38, se le considera como DEN; es inferior a -3,402824e+38, aparece el smbolo -INF (de -infinito); es superior a +3,402824e+38, aparece el smbolo INF (de +infinito); es indefinido (raz cuadrada de un nmero negativo), aparece el smbolo NAN.

Nota: La norma IEC 559 define dos clases de NAN: NAN silencioso (QNAN) y NAN de sealizacin (SNAN). QNAN es un NAN con el bit de fraccin ms significativo, mientras que SNAN es un NAN sin el bit de fraccin ms significativo (nmero de bit 22). Los QNAN pueden propagarse por la mayora de las operaciones aritmticas sin que se indique ninguna excepcin. En cambio, los SNAN generalmente sealan una operacin no vlida al utilizarse como operandos en operaciones aritmticas (vanse %SW17 y %S18).

Nota: Cuando DEN (nmero no normalizado) se utiliza como operando, el resultado no es significativo. Red Hay dos significados del trmino red. En LD: una red es un conjunto de elementos grficos interconectados. El campo de aplicacin de una red es local, en relacin con la unidad (seccin) de organizacin del programa en el que se encuentra la red. Con mdulos de comunicacin expertos: una red es un grupo de estaciones que se intercomunican. El trmino red se utiliza tambin para definir un grupo de elementos grficos interconectados. Dicho grupo constituye una parte de un programa que puede componerse de un grupo de redes.

S
SFC SFC es la forma abreviada de Sequential Function Chart (grfica de funcin secuencial).
433

33002530 07 07/2008

Glosario

El SFC permite representar grficamente y de forma estructurada el funcionamiento de un PLC secuencial. Esta descripcin grfica del comportamiento secuencial del PLC y de las distintas situaciones en desarrollo se realiza mediante smbolos grficos simples. SIL Nivel de integridad de seguridad (Safety Integrity Level) Las funciones de seguridad se ejecutan para obtener y mantener el estado de seguridad de un sistema. El estndar IEC 61508 especifica cuatro niveles de rendimiento de seguridad para una funcin de seguridad. stos se denominan niveles de integridad de seguridad (SIL), y van desde 1 (el ms bajo) hasta 4 (el ms alto). El PLC de seguridad Quantum est certificado para su uso en aplicaciones SIL2, en las que el estado sin energa es el estado seguro, por ejemplo, en un sistema de parada de emergencia (ESD). Puede utilizar los productos de seguridad de Schneider para la creacin de una solucin Hot Standby (HSBY) si necesita una gran disponibilidad para un sistema de seguridad. Simple Network Management Protocol (protocolo de gestin de red simple). ST es la forma abreviada de Structured Text (texto estructurado). El lenguaje literal estructurado es un lenguaje elaborado similar a los lenguajes informticos de programacin. Permite estructurar series de instrucciones. Una variable de tipo STRING es una cadena de caracteres ASCII. La longitud mxima de una cadena de caracteres es de 65.534 caracteres.

SNMP ST

STRING

T
TIME El tipo TIME expresa la duracin en milisegundos. Codificado en 32 bits, este tipo permite obtener duraciones de 0 a 2 32-1 milisegundos. Las unidades de tipo TIME son las siguientes: das (d), horas (h), minutos (m), segundos (s) y milisegundos (ms). Un valor literal de tipo TIME se representa mediante una combinacin de tipos anteriores que preceden a T#, t#, TIME# o time#. Ejemplos: T#25h15m, t#14,7S, TIME#5d10h23m45s3ms Vase TOD. TOD es la forma abreviada de Time Of Day (hora del da). El tipo TOD, codificado en BCD en un formato de 32 bits, contiene esta informacin: la hora codificada en un campo de 8 bits, los minutos codificados en un campo de 8 bits,
33002530 07 07/2008

TIME_OF_DAY TOD

434

Glosario

los segundos codificados en un campo de 8 bits.

Nota: No se utilizan los 8 bits menos significativos. El tipo TOD debe introducirse de la manera siguiente: TOD#<Hora>:<Minutos>:<Segundos> Esta tabla muestra los lmites inferior y superior de cada campo:
Campo Hora Minuto Segundo Lmites [00,23] [00,59] [00,59] Comentario El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos. El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos. El cero a la izquierda aparece siempre; puede omitirse en la entrada de datos.

Ejemplo: TOD#23:59:45. TOPO_ADDR_TY PE Este tipo predefinido se utiliza como salida de la funcin READ_TOPO_ADDR. Se trata de ARRAY[0..4] OF Int. Lo encontrar en la biblioteca, en la misma familia que las EF que lo utilizan.

U
UDINT UDINT es la forma abreviada de Unsigned Double INTeger (entero doble sin signo) (codificado en 32 bits). Los lmites inferior y superior figuran a continuacin: de 0 a (2 elevado a 32) - 1. Ejemplo: 0, 4294967295, 2#11111111111111111111111111111111, 8#37777777777, 16#FFFFFFFF. User Datagram Protocol (protocolo de datagramas de usuario). UDP es un protocolo de comunicaciones de Internet sin conexin definido por la norma IETF RFC 768. Este protocolo facilita la transmisin directa de datagramas en redes IP. Los mensajes UDP/IP no necesitan una respuesta y, por lo tanto, son perfectos para aplicaciones en las que los paquetes cerrados no requieren retransmisin (como redes y vdeos que necesitan rendimiento en tiempo real).

UDP

33002530 07 07/2008

435

Glosario

UINT

UINT es la forma abreviada del formato Unsigned INTeger (entero sin dgito) (codificado en 16 bits). Los lmites inferior y superior figuran a continuacin: de 0 a (2 elevado a 16) - 1. Ejemplo: 0, 65.535, 2#1111111111111111, 8#177777, 16#FFFF.

V
Valor literal de base 10 Un valor literal de base 10 se utiliza para representar un valor entero decimal. Dicho valor puede ir precedido de los signos + y -. Si el carcter _ se utiliza en el valor literal, no es significativo. Ejemplo: -12, 0, 123_456, +986 Un valor literal de base 16 se utiliza para representar un entero hexadecimal. La base est determinada por el nmero 16 y el signo #. Los signos + y - estn prohibidos. Para facilitar la lectura, puede utilizar el signo _ entre los bits. Ejemplo: 16#F_F o 16#FF (en decimal 255) 16#F_F o 16#FF (en decimal 224) Un valor literal de base 2 se utiliza para representar un entero binario. La base est determinada por el nmero 2 y el signo #. Los signos + y - estn prohibidos. Para facilitar la lectura, puede utilizar el signo _ entre los bits. Ejemplo: 2#1111_1111 2#11111111 (en decimal 255) 2#1110_0000 2#11100000 (en decimal 224) Un valor literal de base 8 se utiliza para representar un entero octal. La base est determinada por el nmero 8 y el signo #. Los signos + y - estn prohibidos. Para facilitar la lectura, puede utilizar el signo _ entre los bits. Ejemplo: 8#3_77 8#377 (en decimal 255) 8#34_0 8#340 (en decimal 224) Un valor literal de entero se utiliza para introducir valores enteros en el sistema decimal. Les valores pueden ir precedidos de los signos + y -. Los signos de subrayado (_) separan nmeros no significativos. Ejemplo: -12, 0, 123_456, +986

Valor literal de base 16

Valor literal de base 2

Valor literal de base 8

Valor literal de entero

436

33002530 07 07/2008

Glosario

Valor literal de tiempo

Las unidades de tipo TIME son las siguientes: das (d), horas (h), minutos (m), segundos (s) y milisegundos (ms). Un valor literal de tipo TIME se representa mediante una combinacin de tipos anteriores que preceden a T#, t#, TIME# o time#. Ejemplos: T#25h15m, t#14,7S, TIME#5d10h23m45s3ms Un valor literal real es un nmero expresado con uno o varios decimales. Ejemplo: -12,0, 0,0, +0,456, 3,14159_26 Nmero que puede expresarse mediante una notacin cientfica estndar. La representacin es como se indica a continuacin: mantisa + exponente. Ejemplo: -1,34E-12 -1,34e-12 1,0E+6 1,0e+6 1,234E6 1,234e6 Entidad de memoria del tipo BOOL, WORD, DWORD, etc., cuyo contenido puede modificarse mediante el programa que est ejecutndose. Variable cuya posicin en la memoria del PLC puede conocerse. Por ejemplo, la variable Water_pressure se asocia a %MW102. Water_pressure est asignada. Variable cuya posicin en la memoria del PLC no puede conocerse. Una variable a la que no est asociada ninguna direccin se denomina no asignada.

Valor literal real

Valor literal real con exponente

Variable

Variables asignadas Variables no asignadas

W
WORD El tipo WORD se codifica en un formato de 16 bits y se utiliza para realizar tratamientos en las cadenas de bits. Esta tabla establece los lmites inferior y superior de las bases que pueden utilizarse:
Base Hexadecimal Octal Binario Lmite inferior 16#0 8#0 2#0 Lmite superior 16#FFFF 8#177777 2#1111111111111111

Ejemplos de representacin

33002530 07 07/2008

437

Glosario

Datos 0000000011010011 1010101010101010 0000000011010011

Representacin en una de las bases 16#D3 8#125252 2#11010011

438

33002530 07 07/2008

ndice

B C A
Atrium, 29 INPUT_BYTE, 83 INPUT_CHAR, 87 MBP_MSTR, 99 ModbusP_ADDR, 151 OUT_IN_CHAR, 157 OUT_IN_MBUS, 165 PRINT_CHAR, 203 RCV_TLG, 213 READ_ASYN, 217 READ_GDATA, 221 READ_REG, 223 READ_VAR, 231 SEND_REQ, 253 SEND_TLG, 269 SYMAX_IP_ADDR, 275 TCP_IP_ADDR, 279 UNITE_SERVER, 285 WRITE_ASYN, 291 WRITE_GDATA, 295 WRITE_REG, 297 WRITE_VAR, 307 XXMIT, 321 CREAD_REG, 55 CWRITE_REG, 63

A
ADDM, 45 ADDM_TYPE, 45 ADDR, 49 ADDR_TYPE, 49

C
cadena, gestin - instrucciones INPUT_CHAR, 87 OUT_IN_CHAR, 157 PRINT_CHAR, 203 CANCEL, 51 comunicacin - instrucciones ADDM, 45 ADDR, 49 CANCEL, 51 CREAD_REG, 55 CWRITE_REG, 63 DATA_EXCH, 71 informacin general de Premium y

D
DATA_EXCH, 71 disponibilidad de las instrucciones, 25

33002530 07/2008

439

Index

E
error, cdigos, 405

W
WRITE_ASYN, 291 WRITE_GDATA, 295 WRITE_REG, 297 WRITE_VAR, 307

I
INPUT_BYTE, 83 INPUT_CHAR, 87 instrucciones disponibilidad, 25

X
XXMIT, 321

M
MBP_MSTR, 99 ModbusP_ADDR, 151

O
OUT_IN_CHAR, 157 OUT_IN_MBUS, 165

P
PRINT_CHAR, 203

R
RCV_TLG, 213 READ_ASYN, 217 READ_GDATA, 221 READ_REG, 223 READ_VAR, 231

S
SEND_REQ, 253 SEND_TLG, 269 SYMAX_IP_ADDR, 275

T
TCP_IP_ADDR, 279

U
UNITE_SERVER, 285
440
33002530 07/2008

Potrebbero piacerti anche