FB_EXCH: Bloque de funciones de intercambio
En la gráfica siguiente se muestra un diagrama de pines del bloque de funciones FB_EXCH:
El controlador M221 puede comunicarse con un dispositivo esclavo Modbus o puede enviar/recibir mensajes en la modalidad de caracteres (ASCII).
Twido y EcoStruxure Machine Expert - Basic proporcionan las siguientes funciones para la comunicación:
oInstrucción EXCH para transmitir/recibir mensajes
oBloque de funciones de control de intercambio (MSG) para controlar los intercambios de datos
La biblioteca TwidoEmulationSupport gestiona la comunicación con el bloque de funciones FB_EXCH. Este bloque de funciones utiliza el bloque de funciones SEN.SEND_RECV_MSG de la biblioteca PLCCommunication. Tiene la función de enviar y recibir mensajes definidos por el usuario y esperar una respuesta.
Descripción de variables de E/S
En la tabla se describen las variables de entrada del bloque de funciones en la biblioteca TwidoEmulationSupport:
Entrada |
Tipo de datos |
Descripción |
---|---|---|
i_xExecute |
BOOL |
La función se inicia en flanco ascendente. |
i_xReset |
BOOL |
La transmisión del mensaje actual se detiene en flanco ascendente y la comunicación se reinicializa. |
i_byPort |
BYTE |
Puerto de comunicación [de 1 a 3] 1 = Puerto serie 1 2 = Puerto serie 2 3 = Ethernet |
i_pbyBuffer |
POINTER TO BYTE |
Puntero al búfer de envío o recepción. Las dos primeras palabras son palabras de control. Dos primeras palabras: 4 bytes de control: 1.Longitud del byte de control: el byte de longitud contiene la longitud de la tabla de transmisión en bytes (250 como máximo), que se sobrescribe con el número de caracteres recibidos al final de la recepción (en caso de que ésta se solicite). 2.Comando del byte de control: [de 0 a 2] 0 = Sólo transmisión 1 = Envío/recepción 2 = Sólo recepción 3.Byte de control SndBytePosDiscard: no se envía la posición del byte. 4.Byte de control RcvBytePosDiscard: se rechaza la posición del byte recibida. |
i_uiLengthInByte |
UINT |
Longitud del búfer de envío/recepción + 2 palabras de control |
i_xAsciiMode |
BOOL |
TRUE = modalidad ASCII configurada. FALSE = Modbus TCP configurado. |
En la tabla se describen las variables de salida del bloque de funciones en la biblioteca TwidoEmulationSupport:
Salida |
Tipo de datos |
Descripción |
---|---|---|
q_xBusy |
BOOL |
q_xBusy se establece en TRUE mientras la función está en curso. |
q_xDone |
BOOL |
q_xDone se establece en TRUE cuando la función se lleva a cabo correctamente. |
q_xError |
BOOL |
q_xError se establece en TRUE cuando la función se detiene debido a que se ha detectado un error. |
q_etExchDiag |
ET_ExchDiag |
Código de diagnóstico. |
q_sMsg |
STRING [80] |
Mensaje de diagnóstico. |
El bloque de funciones FB_EXCH contiene los siguientes códigos de error: