Discusiones sobre Productos NI

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

Como construir una señal prbs y sacarla por una salida analogica o digital?

Hola amigos de NI

 

Estoy intentando construir una señal prbs en labview 2009 para poder sacarla mediante una tarjeta, cualquiera de las siguientes: pci 6221 37 pins, pci 6025E o usb6008, (no se si sea posible). Me interesa sacar esta señal para poderla reproducir mediante el uso de un relevador.

 

Desconozco si sea posible programarla y como podria comenzar a construirla

 

Les adjunto una imagen del diagrama de la señal prbs que me interesa.

 

Saludos!

0 kudos
Mensaje 1 de 22
4.794 Vistas

Hola Merit que problema estas teniendo al generar tu señal? En general lo que necesitas para lograr esto es utilizar shift registers, mediante estos puedes pasar el valor de una iteración a otra y funcionan como un retraso, este retraso lo puedes utilizar para generar el comportamiento que estas buscando.  

 Ahora el principio básica de manejar la salida con las tarjetas que tienes lo puedes hacer incluso con la 6008 la única consideración que tienes que tener es que la salida de esta es temporizada por software lo que puede hacer que tu señal no dure lo mismo entre cada escritura, también lo mas rápido que lo puedes temporizar es 1ms , con la 6221 esta tiene salidas digitales correlacionadas que puedes escribir hasta 1Mhz.  

Saludos

 

Benjamin C
Principal Systems Engineer // CLA // CLED
0 kudos
Mensaje 2 de 22
4.768 Vistas

Hola!

 

Si mira, estoy tratando de construir esa señal empleando shift registers pero tengo dificultades para construirla, se que no es dificil por que estuve viendo un tutorial sobre linear systems que esta en su pagina, sin embargo no puedo echarlo andar. Ojala pudieras echarme la mano construyendo ese pequeño ejemplo para asi poderme dar una idea.

 

Gracias por tu ayuda!

0 kudos
Mensaje 3 de 22
4.764 Vistas

Hola Benjamin

 

Gracias por tu pronta respuesta. Entonces de acuerdo a lo que me dices lo mas indicado es construir mi señal con los shift registers y despues que este lista mandarla por una salida digital?. Lo anterior por las razones que me comentas. He estado construyendo mi señal sin embargo no obtengo lo que espero, podrias mandarme un ejemplo en labview con un shift register??

 

saludos!!

0 kudos
Mensaje 4 de 22
4.703 Vistas

Hola Merit que problema te está generando? Una cosa importante es inicializar tus shift registers para tu ejemplo en particular por lo menos uno de los shift registers debe de estar inicializado con un verdadero, o no te va a generar ninguna señal. También tienes que controlar la ejecución de tu ciclo ya que si no va a correr a la velocidad máxima de tu sistema, y no vas a ver tu señal.

Ahora dependiendo de qué tarjeta estés utilizando para generar los datos, puedes usar la temporización de la tarjeta para controlar el ciclo o controlar el tiempo como en este caso con un wait, en el cual el periodo mínimo del ciclo es de 1ms.

Te agrego un ejemplo sencillo para la señal que pusiste. Un shift register lo puedes expandir para generar retrasos adicionales y lo mismo puedes hacer con los feedback nodes. Para configurar el feedback node puedes dar click derecho en propiedades y decir cuánto retraso agregar (en este caso la dirección del Shift register esta cambiada para que se entienda mas fácil, por default están viendo en la otra dirección.

PRBS.png

Saludos

Benjamin C
Principal Systems Engineer // CLA // CLED
0 kudos
Mensaje 5 de 22
4.692 Vistas

hola Benjamin

 

Podrias por favor enviarme el programa en la version 9 de labview? pues tuve problemas para abrirla.

 

Saludos!

0 kudos
Mensaje 6 de 22
4.690 Vistas

Hola Merit aquí esta en versión 9 por eso también agregue la imagen por si tenias problemas, esa imagen le puedes hacer drag and drop a LabVIEW y te agrega el código.

Saludos

Benjamin C
Principal Systems Engineer // CLA // CLED
0 kudos
Mensaje 7 de 22
4.689 Vistas

Hola Benjamin!

 

Gracias por el codigo, ya lo corri y corrio sin ningun problema. Ahora mi pregunta es: ¿como hacer que esa señal salga por una salida digital o analogica. ya que me interesa observarla con un osciloscopio?.

 

Saludos!

0 kudos
Mensaje 8 de 22
4.682 Vistas

Hola Merit ahí depende de hardware estés utilizando, si estas usando una de nuestras tarjetas de adquisición de datos podrías usar el vi de DAQ Assistant, o ver los ejemplos en Help >> Find Examples  , en task selecciona Hardware Input Output>>DAQmx>>Digital Generation

 

También este tutorial te puede ser de utilidad:

Complete Data Acquisition Tutorial

Saludos

Benjamin C
Principal Systems Engineer // CLA // CLED
0 kudos
Mensaje 9 de 22
4.681 Vistas

Hola Benjamin!

 

Gracias por la infomacion que me enviste. Estoy empleando una tarjeta 6221 de 37 pines. El ejemplo que me enviaste lo estuve tratando de adaptar al ejemplo que viene en <help> <find examples> <hardware input and output> <digital generation> <Write Dig Chan-Ext Clk>. Sin embargo no tengo idea como hacer el arreglo de valores que me arroja la rutina que me enviaste y ese mismo arreglo sacarlo por la salida digital. 

Tambien estuve revisando un documento de sistemas lineales que manejan en su pagina y algunos ejemplos no los puedo correr como indican en las figuras, especialmente hablando de los ciclos while. No se si ese tutorial que te menciono y te adjunto podria ayudarme a implementar la aplicacion que estoy intentando construir. Surge mi duda por que en mi caso estoy manejando valores digitales.

 

Saludos!

0 kudos
Mensaje 10 de 22
4.670 Vistas