Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

Maestro - Esclavo con VISA (Puerto Serial)

Hola, les comento que estoy desarrollando una interfaz para el monitoreo de un sensor, el cual tiene el protocolo de comunicación MODBUS RTU. Sé que el modbus es maestro - esclavo.

 

He revisado el VI de modbus, pero no me gusta, prefiero hacerlo yo. También revisé el template de master-slave que trae el labview, pero mi gran duda es como unir las líneas para que en la parte del maestro Envíe un dato (Por VISA) y en la parte del esclavo reciba un dato (Por VISA), aun no logro entender como es la conexión, además los notifiers que confunden un poco.

 

En resumidas palabras, quiero enviar una trama hexadecimal al sensor, esperar que el sensor responda, todo de forma maestro - esclavo.

 

Espero que alguien pueda ayudarme. abajo adjunto la imagen del template master-slave por si alguien no sabe cual es.

Saludos

0 kudos
Mensaje 1 de 5
4.519 Vistas

Hola,

 

     Llegaste a revisar esto MODBUS Library for LabVIEW? Si ya lo viste e igual lo quieres hacer por tu cuenta con gusto te ayudamos con los detalles de programacion que necesites.

 

     Creo que cuando se habla de MODBUS maestro-esclavo se trata de dos equipos, mientras el codigo que estas viendo se reviere a dos fragmentos de códigos que se comportan de esa manera.

 

      ¿Ya manejas la parte de escritura y lectura en el puerto serial con VISA o tienes alguna duda? Aquí hay alguna información básica Comunicación Serial Utilizando LabVIEW con un Microcontrolador

 

      En caso de que necesites compartir datos entre dos lazos puedes usar variables locales, user events, queues o notifiers, de acuerdo a tus necesidades.

 

      Me parece que puedes escribir y leer en el mismo lazo, posiblemente te funcione una máquina de estado, o que tienes en mente hacer?

 

Saludos,

Luis A. Mata C.
Ing. Electrónico
Whatsapp: +58-414-1985579
BBM Pin: 2B83E99A
Thanks: Kudos
0 kudos
Mensaje 2 de 5
4.514 Vistas

Hola:

 

Por si te sirve de ayuda en el siguiente enlace tienes un programa que permite comprobar las comunicaciones ModBUS Serie y funciona como Maestro-Esclavo.

 

http://www.aulamoisan.com/fuentes-labview/ModBUSSerialLabVIEW.zip?attredirects=0&d=1

 

Saludos.... Moisés

_________________________________________
https://aulamoisan.uva.es

0 kudos
Mensaje 3 de 5
4.506 Vistas

Hola estimados.

Primero que todo muchas gracias a los 2 por la respuesta inmediata.

 

Luis_AM3C:

1) Ya había revisado ese módulo de MODBUS, pero es mucho más de lo que necesito hacer. Lo que necesito realizar es más simple (Más abajo lo explicaré).

2) La parte de escritura y lectura, ya la manejo y lo aprendí a usar de esa misma página que mencionas.

 

moisan: 

Muchas gracias por ese programa no lo había visto nunca, es algo parecido a lo que necesito, pero más sencillo. En todo caso me ayudó bastante para sacarme unas dudas que tenía.

 

 

Les comento que tengo que hacer. Tengo un sensor de temperatura con protocolo MODBUS RTU (Esclavo) y necesito hacer una especie de monitoreo con LABVIEW (Maestro). Tengo un adaptador USB a RS232 seguido de  un convertidor de RS232 a RS485, es para lograr la comunicación sensor - pc.

En un principio, solo hice pruebas haciendo comunicación "lineal" (Conf VISA - WRITE VISA - READ VISA) de forma directa, para ver si enviaba las tramas y las recibía, no tuve problemas con eso.

Ahora tengo que adaptarlo en maestro - esclavo, lo que tengo entendido es que el PC (LABVIEW) se comportaría como maestro y el sensor como esclavo, es decir, al momento de escribir (Write VISA) sería en el loop del master y el de lectura (Read VISA) en el loop de esclavo (Me corrigen si estoy equivocado). 

Al sensor se le envían 3 secuencias en hexadecimal para que recién me envíe la temperatura medida. Entonces, no es necesario que el "Front Panel" tenga las funciones del modbus (Read output register, etc), sólo necesito enviar esas 3 secuencias y que el valor lo muestre en el "Front Panel". (Por eso digo que es mas sencillo).

Ahora viene mi duda, ¿Cómo conectar el VISA (Conf, write, read) en los bloques del maestro - esclavo (Template Master - Slave)? ¿Es necesario conectarlo en los notifiers?

A todo esto, ya tengo creado los SUBVIs de CRC y de Coma Flotante (Para mostrar los valores en decimal). Sólo necesito saber bien la conexión dentro del template Master - Slave.

 

Desde ya muchas gracias.

 

Saludos

0 kudos
Mensaje 4 de 5
4.481 Vistas

Buenas:

Busco lo mismo, nose si tuviste alguna respuesta o pudiste hacerlo.

 

Gracias

0 kudos
Mensaje 5 de 5
3.813 Vistas