Discusiones sobre Productos NI

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

derivar después del filtrado mediana

Hola a toda la comunidad! He realizado un filtrado de mediana a partir de una adquisición, una vez hago una derivada d la señal sin filtrar y posteriormente de la señal filtrada y no comprendo por que el resultado no es el mismo, ya que el rank es 0 y la salida del filtro es la misma que la de la entrada. No puedo derivar correctamente.
 
Muchas gracias y salu2!!
 
PD: adjunto el fichero y el VI
Descargar todos
0 kudos
Mensaje 1 de 15
5.039 Vistas
Hola Cone,

Lo que pasa aquí es, que la funcion "differential" necesita el tipo de datos waveform. Tu tienes solamente un array con valores. Cuando la funcion "differential" está ejecutado tu array está automaticamente cambiado a un "waveform". Entonces LabVIEW elige algo y estos son diferentes en los dos casos.
Lo mejor es elegir los componetes de waveform manual.
Te adjunto una captura de pantalla.

Salud, RMathews
Ramona Lombardo
Applications Engineer, NI Germany
Certified LabVIEW Developer
0 kudos
Mensaje 2 de 15
5.019 Vistas

Hola RMathews, en primer lugar muchisimas gracias por responder, he seguido tus indicaciones y he colocado un build waveform pero sigue sin representarse la señal a mi gusto, te explico. En la chart10 (primera) represento la señal de salida de la convolución y se va acumulando toda la señal, en chart9 intento q sea igual pero no obtengo el mismo resultado, ¿Por qué debe ser?

Muchas gracias!

0 kudos
Mensaje 3 de 15
5.011 Vistas
Hola Cone,
He estado echando un vistazo a tu aplicación y no entiendo por qué en chart10 y en chart9 debería aparecer la misma señal, ¿podrías explicármelo? Supongo que tiene algo que ver con la relación entre las señales almacenadas en el fichero. De todas formas he visto un par de cosas en el VI que deberías tener en cuenta:
1) En el VI 'continuous Convolution' aparece un punto rojo en el cableado de la señal de tipo de datos dinámica y la entrada 'signals in'. Esto quiere decir que el tipo de datos que demanda esa entrada no es el que está cableado, por lo que LV introduce un buffer para relizar el cambio de tipo de datos.
2) La derivada de la señal con respecto al tiempo que efectúa el VI express depende directamente del parámetro dt (en tu caso 0.1). Variando este parámetro obtendrás distintos resultados a la salida del VI, lo que no parece coherente.
No estoy diciendo que lo que hagas esté mal, simplemente no conozco tu aplicación y trato de averiguar lo que intentas hacer. Te agradecería que me proporcionases esta información para ver qué es lo que ocurre con el VI.
Un saludo,
David Oña
0 kudos
Mensaje 4 de 15
4.995 Vistas
Hola David que tal? A ver te explico. Yo estoy realizando un sistema de adquisición de señales electrooculográficas, esta señal la he grabado en un fichero y la he derivado por 2 métodos. El continue convolution con ese vector doble de coheficientes implementa un filtro derivador, y por otro lado intento derivar la misma señal con el bloque express, por tanto aunq las amplitudes no sean las mismas los picos de la derivada estarán en el mismo punto del eje X en esos 2 chart ya que el rank que está puesto en el median filter es 0 y por tanto la entrada será igual a la salida. De todas formas he cambiado el bloque y ahora derivo las 2 señales con un express ¿la señal en los dos chart no debería ser muy similares?
 
Por otra parte he variado la constante de dt y efectivamente en el chart9 no me representaba señal por esto, he variado este valor y la representación es a saltos y debería ser parecida al chart10.
 
Estamos teniendo problemas con el filtro de mediana y creo q mi jefe de proyecto os ha enviado las dudas al soporte técnico.
 
No se si me he explicado bien, de todos modos muchas gracias y salu2!!Guiño 
0 kudos
Mensaje 5 de 15
4.990 Vistas

Hola David, perdón por la insistencia pero me he quedado con dudas. Te explico, la señal del fichero tiene 2 canales uno de ellos lo filtro con un median filter y su salida la derivo, esta señal me sale a saltos. En mi proyecto completo esta señal derivada tiene que ser pasada por un detector de pico, y todos los picos que pasen de una amplitud se detecten. El problema que estoy teniendo es que tal y como está configurado el bloque express de derivado los picos de la derivada tienen una amplitud muy alta (según la chart) el umbral lo pongo alto pero menor que los picos y no me detecta como debería, es decir la mayoría de los picos no me los detecta. No se cual puede ser el prblema. He probado con 2 tipos de detector de pico.

Muchas gracias y salu2!

PD: uso LV 8 

Descargar todos
0 kudos
Mensaje 6 de 15
4.965 Vistas

Hola, he conseguido solucionar la representación de la señal en el chart9 ahora la señal sale como debe, pero los detectores siguen sin detectar los picos y por lo tanto no me dan las amplitudes, ¿Por qué ocurre esto?

Os adjunto el VI bueno.

Gracias y salu2!!

Descargar todos
0 kudos
Mensaje 7 de 15
4.955 Vistas

Hola de nuevo Cone,

He echado un vistazo a tu VI y el VI 'Peak Detector PtbyPt' me detecta picos. Tengo mis dudas de que sirva para una aplicación que intente aproximarse a una aplicación en tiempo real - desde luego la aplicación nunca va ser una aplicación en tiempo real. Te adjunto un pantallazo de mi código, aunque es básicamente tu código ordenado. Te recomiendo, tanto para ésta como para futuras aplicaciones, que asegures el flujo de datos mediante las lineas de error. De este modo la depuración es más cómoda y te ahorrarás problemas varios. Si lo que quieres es el valor concreto de las amplitudes de los picos parece ser que has de usar alguno de los otros dos VIs. Te sugiero que eches un vistazo a ambos VIs en la ayuda de LV.  Además, al final de la ayuda correspondiente a ambos existen links a la sección 'Developer Zone' de la Web de NI y a algún ejemplo concreto de aplicación. Probablemente los detectores no funcionen correctamente porque no haces uso de las entradas 'Initialize' y 'End of data', aunque sólo lo he mirado por encima. Cuando uses un Vi asegúrate de que utilizas todas las entradas que necesitas para un correcto funcionamiento del mismo. Seguramente hacer un correcto uso de los detectores de pico te exija programar un tratamiento de los datos más completo, puesto que el que actualmente tienes resulta bastante escueto. Es mejor que consultes tú mismo la ayuda y los ejemplos y, cuando tengas un esquema claro de la aplicación, hagas preguntas concretas sobre el manejo de los VIs.

Un saludo,

David Oña
0 kudos
Mensaje 8 de 15
4.930 Vistas

Hola de nuevo,

Lo siento, se me había olvidado adjuntar el pantallazo.

Saludos!

David Oña
0 kudos
Mensaje 9 de 15
4.928 Vistas
Hola Cone, he visto que estas haciendo un proyecto de adquisicion de EOG.
Yo tambien tengo que adquirir esa señal, de manera que sea en tiempo real y se vayan guardando los datos en un fichero .edf
Mi pregunta es si es mejor visualizarla con el waveform graph o el chart para que vaya apareciendo la señal en tiempo real tal y como lo haria en un osciloscopio.
Otra cosa que queria saber es que numero de muestras y que frecuencia has escogido para la adquisicion.
Y si ya de paso sabes lo de guardarlas en formato edf, genial, jejeGuiño

Venga, muchas graciass
Un saludoo
0 kudos
Mensaje 10 de 15
4.728 Vistas