Discusiones sobre Productos NI

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

Detección de rising y falling

¡Resuelto!
Ir a solución

Hola, tengo el siguiente problema, tengo un equipo de medición que se triguea cada cierto tiempo, y necesito detectar los trigger de la siguienten forma, cuando esté el flanco de subida obtener verdadero y cuando sea de bajada que sea falso.

 

Espero su ayuda.

 

Saludos.

0 kudos
Mensaje 1 de 8
3.895 Vistas

Hola Makarena.osorio,

 

¿Nos podría escribir más sobre su aplicación? Más específicamente, ¿de qué dispositivo de medición se trata (qué voltaje de salida tiene, qué frecuencia, etc.)?, ¿cómo desea obtener el trigger (con una tarjeta DAQ, con un PXI, con un myRIO, etc.)?, ¿requiere de una salida física (es decir, no únicamente en LabVIEW) como respuesta a ese trigger? y cualquier otro dato que pudiera ayudar a que demos una recomendación para su problema.

 

Un saludo!

0 kudos
Mensaje 2 de 8
3.876 Vistas

Hola, estoy utilizando una máquina de flexión de marca INSTRON, y la señal de la máquina la obtengo a través de una tarjeta de adquisición de datos. Para lo queb requiero había utilizado la siguiente función Basic Level trigger Detection VI, pero tengo el siguiente problema, 

 

Error -200525 occurred at gen-osci4.vi

Possible reason(s):

Read cannot be performed because this version of DAQmx Read does not match the type of channels in the task.

Use the version of DAQmx Read that corresponds to the channel type.

Task Name: _unnamedTask<6>

 

Espero me puedas ayudar.

 

Saludos.

 

Pd: está en en la tercera secuencia del Flat sequence 

0 kudos
Mensaje 3 de 8
3.762 Vistas

Del vi, veo que estás usando una funcion DAQmx Read "Analog" en una tarea de "Counter", el error que mencionas a veces pasa cuando se usan funciones DAQmx de diferente tipo al de la tarea.

Mensaje 4 de 8
3.747 Vistas

Hola, ese counter la función que tiene es contar los triggers que tenga la máquina de tracción mientras se ejecute el programa, mientras que la función siguiente, obtengo la señal para detectar los triggers de la señal. Eso es lo que deseo hacer, pero la segunda parte es la que no puedo ejecutar. No sé como podría arreglar o modificar esa situación.

 

Ojalá pudieran ayudarme.

 

Saludos.

0 kudos
Mensaje 5 de 8
3.722 Vistas

Lo que pasa es que no se pueden mezclar funciones de tareas porque la lógica no lo acepta.

Mira este ejemplo, creo que es lo que buscas hacer, cuentan pulsos utilizando una tarea analógica,

https://decibel.ni.com/content/docs/DOC-10786

Mensaje 6 de 8
3.707 Vistas

Hola, muchas gracias por responder.

Lo modifiqué aplicando otra tarea y el error que me da ahora es el 20315 "The waveform dt parameter is <= 0"

Ni siquiera hay un parámetro d eentrada de tiempo.

No sé como solucionar este problema.

 

Muchas gracias

0 kudos
Mensaje 7 de 8
3.701 Vistas
Solución
Aceptado por el autor del tema Makarena.osorio

Precisamente no hay reloj de muestreo, en el vi, creaste la tarea, la iniciaste, y la pusiste a leer, pero no estableciste cada cuanto, creo que lo que falta es el "sample clock", tambien es bueno pararla y cerrarla despues de leer para que libere recursos, sino, puede acumularse info en el buffer y generar otros errores de memoria, igual con las tareas de counter, puedes usar el cable de error para asignar el orden de ejecucion pero la tarea de counters queda abierta si no la cierras por su cuenta.

 

Revisa este link http://www.ni.com/product-documentation/2835/en/#toc7

Esta figura es de la funcion de DAQmx Read

Mensaje 8 de 8
3.698 Vistas