Buenos días Esteban,
Hola, tengo la siguiente duda, se utiliza el componente MbRtuServLoadRegisters para cargar desde una entrada Array y luego la lea el panel. Pero en QTY no comprendo que valor se coloca.
En la entrada
QTY especificas el número de elementos que se van a leer desde el array tipo
Int32_Array y luego cargar a la direccion
ADDRESS de los registros
ModBus Holding.
Por ejemplo, si tenes un array llamado "
Valores" con 5 elementos con los siguientes valores:
Valores[0] = 21
Valores[1] = 50
Valores[2] = 200
Valores[3] = 500
Valores[4] = 1000
Y deseas cargar los primeros tres valores en las direcciones ModBus 42001, 42002 y 42003, entonces en el componente
MbRtuServLoadRegisters especificas en su puertos:
ARRAY = Valores[0]
QTY = 3
ADDRESS = 42001
Luego de ejecutar el componente, te queda en las direcciones de registros holding los valores de los 3 elementos del array:
42001 = 21
42002 = 50
42003 = 200
Y la otra duda es pasar de un valor int32 a int32_array como se realiza ?
Utilizo lenguaje ladder.
Una opción fácil si queres cargar un
Int32 a dirección de registro Holding ModBus es utilizar el componente
MbRtuServLoadRegister, similar al
MbRtuServLoadRegisters pero que solo requiere una variable tipo
Int32, no un array.
La otra opción es cargar el array
Int32_Array copiando en cada elemento el valor de la variable/constante
Int32 con el componente:
Int32Copy o
Copia Int32, que lo podes encontrar en el grupo de componentes "
Operaciones de variables".
Saludos