READ_VAR: Lectura de datos de un dispositivo Modbus

Descripción de la función

El bloque de funciones READ_VAR lee datos de un dispositivo externo en el protocolo Modbus.

Representación gráfica

G-RU-0010455.2.gif-high.gif

 

 

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

Entrada

Tipo

Comentario

ObjType

ObjectType

ObjType es el tipo de objeto a leer (MW, I, IW, Q).

FirstObj

DINT

FirstObj es el índice del primer objeto a leer.

Quantity

UINT

Quantity es el número de objetos a leer:

oDe 1 a 125: registros (tipos MW e IW)

oDe 1 a 2.000: bits (tipos I y Q)

Buffer

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. Por ejemplo, la lectura de 4 registros requiere una matriz de 4 palabras y la lectura de 32 bits requiere una matriz de 2 palabras o 4 bytes, donde cada bit se establece en el valor correspondiente del dispositivo remoto. 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 recibirán del dispositivo de destino. Se recomienda vincular la Quantity definida de datos que se 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 secciones.

Ejemplo

En el ejemplo siguiente se muestra la implementación conjunta de los bloques de funciones READ_VAR y ADDM para 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.

En esta figura se muestra la declaración y el uso de la función READ_VAR:

G-SE-0005663.2.gif-high.gif