Discusiones sobre Productos NI

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

Separar datos puerto serial

Hola Roberto, estas son las respuestas:

  • El instrumento ¿no contesta algo especial al *IDN? inicial? En este caso ¿puedes quitarlo?

   R: No contesta nada. Incluso hice la prueba eliminando la funcion Open y Write, y me trabaja de igual forma. No hay cambio.

 

  • Tu instrumento ¿envia las tramas sin pedido? ¿Estas seguro de que envía dos tramas?

   R: Sí envia los datos sin pedido. Es un lector de radiofrecuencia, que continuamente esta activo buscando tags. Yo no tengo que indicarle cuando enviar los datos. Cuando coloco un tag, automaticamente envia los datos. Si coloco varios tags a la vez, de igual forma los envía todos a la vez.

 

  • Veo que borras los errores del VISA read: ¿no será que recibes un error que explica por qué no recibes más datos y no lo ves?

   R: Lo borro porque me envia siempre el error de Timeout. Y pienso que es porque no siempre voy a recibir la misma cantidad de bytes de datos, ya que a veces no recibiré datos de tags, y en otras ocasiones sí recibiré varios datos. Coloqué esta funcion de borrar xq no me afecta en nada el funcionamiento del programa.

 

Saludos

0 kudos
Mensaje 11 de 20
3.321 Vistas

Bueno, no enti endo lo que esta' passando.  Lo que puedes hacer es selecconar el '\' codes display en tu indicator 'original' para ver si hay algum caracter especial (\r \n).



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 kudos
Mensaje 12 de 20
3.298 Vistas

Me envia el codigo \n despues de cada tag.

Cuando leo 2 tags, este es el mensaje: 1,300833B2DDD9014000000003\n1,300833B2DDD9014000000004\n

0 kudos
Mensaje 13 de 20
3.285 Vistas

Bueno, estoy algo perdido en esto y como ya te dije no estoy en la oficina y no tengo el LV para probar. Lo que me estraña es que aunque el puerto parece bien configurado (mira este tutorial como referencia), no separa los mensajes en el terminator.

A ver si alguien puede brindarte alguna ayuda más.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 kudos
Mensaje 14 de 20
3.275 Vistas

buenas tardes

Puedo enviar y graficar una señal de un potenciometro desde arduino a Labview, pero y si quiero enviar dos señales y graficar independientemente, cual el VI que me separa la informacion. Gracias de antemano por la ayuda

Saludos desde Ecuador

0 kudos
Mensaje 15 de 20
3.056 Vistas

Saludos inge123

 

Básicamente tienes que hacer lo mismo que hiciste para leer una señal solo que repetido utilizando dos indicadores gráficos. Voy a adjuntar un link interesante en donde puedes ver información al respecto. 

 

https://decibel.ni.com/content/message/28872

 

Por otro lado me gustaría ver el código que estas corriendo para ver dicha señal.

 

Saludos

0 kudos
Mensaje 16 de 20
3.044 Vistas

Hola a todos yo tengo un problrma similar les cuento que si intento resibir un solo dato y graficarlo hasta ahí todo bien, las cosas se complican si intento graficar 3 señales ya que estas se deforman y no logro visualizarlas bien como en el caso cuando resibo una sola señal estas señales las obtengo de un PIC18F2550 el micro corre a 48MHz en modo USB_CDC con una velocidad de 115200 y espera de 10ms asi que creo que no es culpa de las velocidades de transferencia si no de mi VI que no esta bien optimizado si alguien me pudiera colavorar seria muy bien resibida cualquier ayudita.

 

desde ya gracias.

 

Este es mi codigo en funcionamiento. 

 

sshot-9.png

0 kudos
Mensaje 17 de 20
2.877 Vistas

Hola, por lo que parece, puede ser que los 10 millisegundos no son suficientes para recibir todos los datos, así que hay veces en que la señal 3 es 0. El hecho es que no hay ningun control sobre la exactitud del mensaje recibido antes de interpretarlo.

 

Dependiendo en cómo la transmisión del pic está definida, creo que hay dos soluciones:

  • Si el PIC añade un terminador, puedes leer hasta el terminador como se indicó anterioremente en este mismo hilo (creo entender que está tansmitiendo en claro, así que podría haber un terminador CR u LF)
  • Si no hay terminador pero siempre transmite el mismos número de caracteres, puedes simplemente poner un read con este número y un timeout algo más largo

Si 1. no hay terminador y 2. puedes recibir cada vez un número diferente de caracteres, no hay otra solución que averiguar que el mensaje sea completo antes de decodificarlo.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 kudos
Mensaje 18 de 20
2.866 Vistas

Me he leido todo un poco, y me desconciertan un poco todas las ideas.

Si inicialmente recibes las tramas de datos como las vemos en la imagen, quiero pensar que hay un caracter separador entre cada trama(un salto de línea, un salto de carro, etc...) Si tu codigo te funciona correctamente, yo solo aplicaría un pretratamiento a lo que recibes. Es decir, ubico los separadores de cada trama y las separo. Guardo cada trama en un array, y lo paso por un FOR que encierra tu código.

 

Se que la respuesta es un poco absurda, pero a simple vista me parece que tienes ese caracter separador. Un saludo

0 kudos
Mensaje 19 de 20
2.856 Vistas

Hola Roberto como estas gracias por responder te cuento que efectivamente los problemas son los que atinadamente indicaste, solo modifique el tiempo de 10 a 35 y agregué un marcador de fin de trama en el firware del PIC  quedo así la instrucción:

 

(    printf(usb_cdc_putc,"A%u*",recbuf1);  )

 

Ch1 =  A___*

Ch1 =  B___*

Ch1 =  C___*

 

Con eso todo quedo trabajando a Full como se observa en el código del pic en “C” no fue necesario agregar un salto de línea.

 

Gracias Roberto Bozzolo por tu enorme ayuda sos un crak y gracias Ruben Leon por tu aporte.

 

Este es el código en funcionamiento.

 

Funciona.png

0 kudos
Mensaje 20 de 20
2.843 Vistas