¿Cómo podemos ayudar?
ACE como unidad de expansión de E/S: Tabla de intercambio con esclavos
En los PLCs ACE Esclavo y Maestro
Enlaza cada ACE por el puerto serie
|
![]() |
Red multipunto para RS232
Para sólo 2 ACE a través de RS232, es muy simple : RX <> TX, TX <> RX y GND <> GND
Para más de 2 ACE en RS232 (no RS485), ¡es posible! Juste añadir 1 diodo en cada pin TX esclavo

Configure el puerto serie como «Tipo personalizado» y seleccione el modo correcto RS232, o RS485 para ACE-1430/1450
Para ello debe volver a «Configurar hardware» en la esquina superior izquierda del software vBuilder (icono verde o azul). |
o
|
Descargue las subrutinas para el maestro y el esclavo(s) y añádalas a sus PLCs ACE
Descárguelas:
| Añádalas a cada PLC ACE seleccionando uno de los archivos .viofs | Añadir subrutina![]() |
Maestro |
Esclavo(s)![]() |
Número de esclavos y tamaño de la tabla de intercambio
Las subrutinas del maestro permiten intercambiar etiquetas ui16 con cada esclavo.
Hay que elegir:
- el número de esclavos
- el tamaño de la tabla de intercambio ui16.
Por defecto, la subrutina puede gestionar 5 esclavos con 10 etiquetas por esclavo (5 para leer y 5 para escribir)

Además, recuerde aumentar o disminuir el tamaño de las tablas para cada etiqueta si es necesario (véase «Etiquetas» en el programa Maestro y Esclavo)
- ui16 debe ajustarse a 5 (longitud 5 = tags 0 a 4) para obtener 5 * ui16 en la tabla de intercambio
- Las etiquetas de matriz DataRead y DataWritten (ui8) deben ajustarse a 5*2 1 = 11 para obtener 5 * ui16 en la tabla de intercambio
- Ejemplo: 10 ui16 en la tabla de intercambio significa 21 ui8 de tamaño de array para DataRead y DataWritten
- Las etiquetas RWrite* y RRead* del esclavo que no se utilicen pueden eliminarse
Esclavo ACE PLC: Escribir un programa de prueba
En «Toolbox», añada una subrutina y seleccione la subrutina SlaveRemoteIO
Cómo funciona:
- LocalWriteUI16[ ] es un array de etiquetas ui16 de tamaño 5
- LocalWriteUI16[0] es la etiqueta número 0 escrita por el maestro
- …
- LocalWriteUI16[4] es la etiqueta número 4 escrita por el maestro
- LocalReadUI16[ ] es un array de etiquetas ui16 de tamaño 5
- LocalReadUI16[0 ] es el tag número 0 leído por el maestro (enviado al maestro)
- …
- LocalReadUI16[4] es la etiqueta número 4 leída por el maestro (enviar al maestro)
¡En el programa de prueba, vamos a enviar al maestro el valor recibido por el maestro (Ver herramienta «Copiar») !
Por lo tanto, copiamos los valores
- LocalWriteUI16[0] a LocalReadUI16[0] etiqueta
- LocalWriteUI16[1] a la etiqueta LocalReadUI16[1] etiqueta

Master ACE PLC: Escribir un programa de prueba
En «Toolbox», añada una subrutina y seleccione la subrutina ReadWriteToSlave
Cómo funciona:
- RWriteUI16Slave1[ ] es un array de etiquetas ui16 de tamaño 5
- RWriteUI16Slave1[0] es el tag número 0 a escribir en slave 1
- …
- RWriteUI16Slave1[4] es la etiqueta número 4 para escribir en el esclavo 1
- …
- RWriteUI16Slave2[0] es el tag número 0 para escribir en el esclavo 2
- …
- RReadUI16Slave1[ ] es un array de etiquetas ui16 de tamaño 5
- RReadUI16Slave1[0] es el tag número 0 a leer en el esclavo 1
- …
- RReadUI16Slave2[3] es el tag número 3 a leer en el esclavo 2
¡En el programa de prueba, vamos a enviar algunos valores a cada esclavo (Ver herramienta «Copiar») !
Así, copiamos los valores
- Etiqueta 0 del esclavo 1 = 10000
- Etiqueta 1 del esclavo 1 = 10001
- Etiqueta 0 del esclavo 2 = 20000
- Etiqueta 1 del esclavo 2 = 20001
Y comprobamos si el valor recibido por el esclavo es el mismo (ya que el valor es copiado por cada esclavo ACE)
Observaciones
eACE/ACE con 2 puertos RS232 (7096, 7092,..)
Si utiliza un ACE con 2 puertos RS232, utilice el puerto A1.
Si desea utilizar el puerto A2 (Personalizado en «Setup Hardware»), compruebe y confirme con [ OK ] la ventana emergente en «Port A2 SEND» y «Port A2 RECEIVE» (Ver «Subrutina» «ReadWriteToSlave»)

Advertencias en nuestro programa: Sí, es normal que aparezcan estas advertencias, hay algunas herramientas de «Copia» para el modo depuración (ver valores en modo depuración).
Puede eliminarlas.

Copiar bits de entrada/salida o bits de registro
Utilice la herramienta «Copiar» en modo«Empaquetar» para copiar todos los estados de salida remota en 1 etiqueta ui16
También puede utilizar«Desempaquetar» para extraer todos los estados de entrada remota de la etiqueta ui16

Copiar Float en 2 * UI16

Convertir un I32 en 2 * UI16, luego reconvertir 2 * UI16 en i32
![]() |
![]() |

o






