Discusiones sobre Productos NI

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

¿Cómo sincronizar 2 señales (o más), leerlas y guardarlas?

¡Resuelto!
Ir a solución

Buenas tardes,

 

Escribo porque me encuentro un poco perdido y confundido.

 

Tengo un VI que a través de las herramientos DAQmx recibe una señal, las lee y las guarda en un archivo. Sin embargo quiero ahora poder leer dos señales o más, y sobre todo sincronizarlas, para que cuando existan 2, 3 o 4 señales se comience a hacer la medición, por lo que se me ocurre usar un Trigger pero no sé cómo utilizarles todavía.


Leí un tema donde decía que utilizara relojes sincronizadores para las señales (aunque era sincronización de 2 tarjetas y sólo manejo una), sin embargo quiero estar seguro que esto sea completamente necesario, pienso que quizás tan solo con un Trigger basta, y, que al recibir la señal indicada comience a medir todas las señales en conjunto.

Espero alguien pueda guiarme u orientarme un poco para saber en qué dirección buscar y poder lograrlo.

Por cierto tengo una duda de conceptos, ¿sincronización se interpreta como Trigger? porque he buscado trigger y me dan como resultados sincronizaciones.

PD: adjunto una imagen de mi VI. 

 


Gracias de antemano.

Gozto 

0 kudos
Mensaje 1 de 12
5.520 Vistas

Gozto sería de mayor ayuda si nos indicaras qué hardware estás usando (placa de adquicisión) y si pudieras postear el programa 🙂 

hay algunas cosas que podrías optimizar y lo que estás queriendo hacer me parede que es mucho más sencillo de lo que creías.

Saludos!

0 kudos
Mensaje 2 de 12
5.512 Vistas

Uso un DAQ multifunción PXI 6132, un conector BNC 2120, Labview 8.6 y aquí adjunto el VI.


Gracias nuevamente 🙂

0 kudos
Mensaje 3 de 12
5.507 Vistas

Hola Gozto.

 

Lo que quieres es leer señales en varios canales de la misma tarjeta?

 

Si son el mismo tipo de medición puedes simplemente crear una sola tarea y configurarla para que lea varios canales, y utilizar solamente un trigger digital o por nivel análogo. Te dejo un ejemplo de como leer los canales 0-3, que es iniciada por un trigger digital en la línea PF0.

 

 

Aldo H
Ingenieria de Aplicaciones
Mensaje 4 de 12
5.485 Vistas

Hola Aldo,

Verás, mi objetivo es leer, medir y guardar la información de una señal en un archivo TXT.

Eso lo puedo hacer directamente con los DAQmx como se vé en mi VI. Pero ahora necesito que al activar otra señal, un láser, se comience a hacer la medición y el proceso antes mencionado, ya que ambas señales deben de estar sincronizadas.

El detalle es que aún no entiendo cómo trabajar con los triggers.

 

Ahorita voy a revisar el VI que me adjuntas y ver si con ello puedo llegar a la solución, muchas gracias y cualquier cosa la reporto por acá 🙂

 

Tal vez sea prudente comentar que ambas señales deben estar conectadas al BNC 2120.

 



- Gozto -

0 kudos
Mensaje 5 de 12
5.477 Vistas

Buenas tardes,

 

Ya casi estoy por terminar mi VI, y ya pude probar lo que había hecho en LabView directamente con el dispositivo, y al parecer funcionó como se esperaba (mas o menos).

 

En orden de importancia necesito tomar en cuenta ciertos objetivos para concluir bien con este VI:

 

1. Necesito ajustar la amplitud en mi Waveform Graph, y me preguntaba si existe alguna opción para relacionar los valores máximos y mínimos de estos con algún botón y  algo similar según se requiera aumentar el valor de +Y o de -Y. Y es que la opción de autoescalar no me sirve de mucho porque a veces pareciera que estoy siguiendo la señal como una mascota va tras una pelota jeje.

 

2. También tengo otra duda, ¿me podrían orientar sobre algún método para que los valores ajustables que están fuera de mi loop, al modificarse, se actualice mi Waveform Graph al momento? Justo como lo hace el elemento: "number of samples per channel" del DAQmx Read. 

 

 

Gracias de antemano por cualquier comentario 🙂

 

- Gozto -

0 kudos
Mensaje 6 de 12
5.464 Vistas

Hola Gozto.

 

1. Para este caso puedes utilizar los nodos de propiedad, te permiten asignarle un valor numérico a las escalas programáticamente. Para crearlos oprimes click derecho en la gráfica y vas a Create-Property None- Y Scalre-Range- Maximum o Minimum.

 

2. Como los valores estan afuera del ciclo solo se leen al principio del programa, tendrías que modificar el programa para tener un segundo loop que envolviera a tu loop actual, que te permitiera modificar los valores sin reiniciar el programa. Sin embargo, esta solución tiene el inconveniente de que tendrias que iniciar una tarea varias veces. Una solución más práctica es usar los nodos de propiedad que se encuentran en la paleta de DAQmx, en particular los de timing. Con ellos puedes modificar la velocidad de muestreo y otras propiedades.

Aldo H
Ingenieria de Aplicaciones
Mensaje 7 de 12
5.459 Vistas

Buenas tardes,

 

He estado experimentando con los nodos, se me hacen sumamente útiles gracias :), inclusive corrigió el detalle que deseaba, el de ajustar al momento el eje Y sin reiniciar el VI, sin embargo aún no comprendo porque la propiedad "rate" y "samples per channel" no pueden ser modificadas y mostrar los cambios al instante, es necesario colocar los valores iniciales en los nuevos controles para que pueda observar movimiento, si se cambian ya no observo nada en mi "waveform graph", y de hecho tuve que eliminar el control de "sampling mode" porque el VI me decía que no era posible hacer ese cambio sin reiniciar el VI previamente (con lo cual no tengo problema y entiendo).

 

De momento no sé qué más modificaciones hacerle, cualquier sugerencia se las agradecería mucho.

 

Saludos,

 

- Gozto -

0 kudos
Mensaje 8 de 12
5.424 Vistas
Solución
Aceptado por el autor del tema Gozto

Tienes que detener la tarea antes de utilizar el nodo de propiedad y volverla a iniciar. Aquí te dejo un ejemplo de como sería. Avisame si te resuelve el problema.

 

Saludos

Aldo H
Ingenieria de Aplicaciones
Mensaje 9 de 12
5.422 Vistas

Me parece que ya quedó, muchas gracias, lamentablemente no pude abrir el adjunto porque tengo la versión 8.6

Sin embargo ya veo el cambio al momento con la idea dada, es justo lo que buscaba, voy a estudiar un poco más acerca de las tareas y cómo funcionan porque no sabía que era necesario terminarla para poder hacer éstos cambios.

 

Cualquier cosa relacionada la escribiré por aquí, por el momento doy por solucionado el tema.

 

 

Muchas gracias nuevamente 🙂


- Gozto - 

0 kudos
Mensaje 10 de 12
5.419 Vistas