09-05-2014 11:27 AM - edited 09-05-2014 11:40 AM
Buena noches.
Yo soy nuevo con el manejo de LabVIEW, estoy utilizando las herramientas de DAQmx para observar parametros de un motor de combustion interna, pero para calcular el regimenr de giro del motor necesito como determinar el tiempo entre cada señal de trigger ya que dicha señal llega externa por medio de una tarjeta NI PCI-MIO-16E-4 y llega a la entrada externa PFI1, ademas quisiera graficar estos pulsos.
Muchas gracias por su ayuda
Solved! Go to Solution.
09-08-2014 01:36 PM
Hola,
Puede utilizar una tarea de contadores. El VI adjunto es parte de los ejemplos que se instalan con NI-DAQmx, pero dependiendo de la versión que tenga instalado, podría no tenerlo. Ya está guardado con compatibilidad para LabVIEW 2010 por lo que debería de funcionarle.
Básicamente, el ejemplo le permite medir período, frecuencia, ancho de pulso y separación entre dos flancos. Como su tarjeta posee dos contadores, podría modificar el programa para leer dos de las variables al mismo tiempo.
Para graficar los datos, basta cablear la salida del DAQmx Read.vi a un Waveform Graph o Waveform Chart (dependiendo de si necesita almacenar el historial de los datos.
Saludos,
02-04-2015 06:35 PM
Hola Camilo,
Me sirvió mucho tu ayuda, ahora tengo otro problema que quiero solucionar, estoy adquiriendo datos con un reloj y una señal de trigger externa, lo cual está conectado a un motor de combustión interna que al mismo tiempo lleva un sensor de presión, dicha señal de presión se lee a la frecuencia que gira el motor, y se grafica cada 7200 datos, quisiera saber como esos 7200 datos pueden ser pos-procesados o como ingresarlos a un vector y despues cambiarles su posición.
Muchas gracias por la ayuda.
02-06-2015
09:02 AM
- last edited on
05-13-2025
10:33 PM
by
Content Cleaner
No estoy seguro si entiendo bien lo del post-proceso, vector o cambio de posición, pero en todo caso me parece que te puede ser útil un patrón de diseño productor-consumidor. Básicamente, estarías haciendo la adquisición en un ciclo "while" y el procesamiento en otro usando un "queue" para trasladar los datos entre los ciclos. Por favor, en LabVIEW abre Help > Find Examples > Browse > Task > Optimizing Applications > Synchronizing Tasks > Simple Queue para ver un ejemplo de como usarlo. Adicionalmente, podés encontrar información sobre este patrón de diseño en este artículo.
Espero que la información te sea útil. Si aún te quedan dudas al respecto trataré de encontrar algo más.