¿Cómo podemos ayudar?

Print

Lectura y extracción de datos de una trama ASCII enviada a través del puerto RS232/485 del PLC ACE

 

Aquí vamos a ver cómo extraer datos de una trama ASCII. En este ejemplo, veremos cómo extraer datos de una trama de longitud fija. Ejemplo: Empecemos con una trama como esta *ST,0000,01,9876,5432,1722,0268,01,1377# Queremos extraer el valor en negrita:

  • 9876 el nivel de líquido
  • 5432 el nivel de líquido en tiempo real
  • 01 el estado de la alarma

Crearemos una subrutina para gestionar esta lectura y extracción.

Abrimos una nueva subrutina con estos datos de entrada/salida

  • nivel de líquido
  • nivel de líquido en tiempo real
  • estado de la alarma
  • Abre el puerto COM para escuchar
  • Comprueba si hay mensaje o no
    • En caso afirmativo, pasamos al paso 2
Llamamos a la subrutina para convertir la cadena ASCII en un número

  • Transferimos toda la trama/cadena ASCII
  • Damos la posición del valor en la cadena
  • entonces, recuperaremos el valor en la etiqueta «Número

Debemos hacerlo para cada valor.

No olvide declarar su puerto ACE RS232/485 como «custom», no «Modbus» Sobre la subrutina de conversión ASCII-a-Valor, la encontrará en el proyecto Puede descargar el proyecto y sus subrutinas aquí