EcoStruxure Machine Expert versión 1.1 no soporta los controladores M258, LMC058 y LMC078.

WRITE_READ_VAR: Lectura y escritura de registros internos en un dispositivo Modbus

Descripción de la función

Esta función lee y escribe registros internos (solo de tipo MW) en un dispositivo externo en el protocolo Modbus. Las operaciones de lectura y escritura se encuentran en una sola transacción.

La operación de escritura se realiza primero. A continuación, la función WRITE_READ_VAR puede:

oEscribir registros internos consecutivos y, de inmediato, volver a leer sus valores para verificarlos.

oEscribir algunos registros internos consecutivos y leer otros en una sola petición.

Representación gráfica

G-SE-0005963.1.gif-high.gif

 

 

Descripción de parámetros específicos de WRITE_READ_VAR

Entrada

Tipo

Comentario

ObjType

ObjectType

ObjType es el tipo de objeto que se va a escribir y leer (solo MW).

FirstWriteObj

DINT

FirstWriteObj es el índice del primer objeto que se va a escribir.

WriteQuantity

UINT

WriteQuantity es el número de objetos que se va a escribir:

oDe 1 a 121: registros (tipo MW)

WriteBuffer

POINTER TO BYTE

Dirección del puntero a la matriz que contiene los datos que se escribirán en el dispositivo de destino. La matriz debe ser igual o superior a los datos que se escribirán. Utilice la función ADR para transmitir la dirección del primer byte de la matriz (consulte el gráfico CFC del ejemplo).

FirstReadObj

DINT

ReadFirstObj es el índice del primer objeto que se va a leer.

ReadQuantity

UINT

ReadQuantity representa el número del objetos que se va a leer:

o1...125: registros (tipo MW)

ReadBuffer

POINTER TO BYTE

Dirección del puntero a la matriz que contiene los datos recibidos que se han leído desde el dispositivo de destino. La matriz debe ser igual o superior a los datos que se leerán. Utilice la función ADR para transmitir la dirección del primer byte de la matriz (consulte el gráfico CFC del ejemplo).

NOTA: Para evitar una infracción de acceso provocada por un acceso no válido del puntero (fuera de los límites) a la memoria, asegúrese de que el tamaño de la matriz vinculada a la entrada Buffer sea igual o superior a los datos que se escribirán en el dispositivo de destino o que se recibirán de este. Se recomienda vincular la Quantity definida de datos que se escribirán o leerán en la declaración del búfer, como en el ejemplo siguiente.

G-SE-0068765.1.gif-high.gif

 

 

Los parámetros de entrada y salida que son comunes para todos los bloques de funciones de bibliotecas PLCCommunication se describen en otras partes del texto.

Ejemplo

En el ejemplo siguiente se muestra la implementación conjunta de los bloques de funciones WRITE_READ_VAR y ADDM para la escritura de dos registros a partir de la dirección 11 y la lectura de dos registros a partir de la dirección 1 de un esclavo Modbus. El esclavo Modbus se especifica con la dirección 8 y debe poder accederse a él a través de la interfaz 1 de línea serie. Una condición previa es que hay que configurar el Modbus Manager como maestro en la interfaz 1 de línea serie.

G-SE-0002101.2.gif-high.gif