Discusiones sobre Productos NI

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

eval formula node en compactRIO

Hola.

Necesito que el eval formula node ejecute operaciones en 1 milisegundo en un ciclo while loop. Esto es, una vez cofigurado el eval formula node, tome el valor de una entrada analógica, realice la operación y mande el resultado a una salida analógica. Todo esto trabajando en un compactRIO 9014 en tiempo real.¿Es posible?

0 kudos
Mensaje 1 de 5
3.199 Vistas

Hola MarioM,

 

El procesador RT de tu cRIO opera a 400MHZ, pero tiene una temporización de ciclo mínima de 1ms. Por lo tanto, si las operaciones que vas a realizar dentro de tu ciclo while pueden ser resueltas, la entrada y salida adquirida y generada, respectivamente, por el procesador en ese tiempo no tendrías ningún problema.

 

Para lograrlo puedes utilizar un Timed Structure. Esta estructura es equivalente a un ciclo while pero puedes fijar el tiempo de ciclo. Por lo tanto, en tu caso puedes fijar el tiempo de ciclo a 1ms. Te recomiendo, de ser posible, sustituir el formula node por código de bajo nivel para obtener incluso una mayor velocidad de ejecución.

Salvador Mikel
National Instruments
Ingeniería de Aplicaciones
www.ni.com/soporte
0 kudos
Mensaje 2 de 5
3.173 Vistas

Hola MarioM,

 

Completando mi respuesta anterior, si el tiempo de ejecución del código dentro del Timed Loop lo permite, puedes vincular el Loop al reloj interno de 1MHZ e incluso tener tiempos de ciclo del orden de micro segundos.

 

Para esto basta con dar click derecho en el input node del Timed Structure y en la ventana de configuración seleccionar el reloj de 1MHz como origen de la temporización. anexo imágenes que muestran el procedimiento.

 

 


 

 

Mensaje editado por smikel
Salvador Mikel
National Instruments
Ingeniería de Aplicaciones
www.ni.com/soporte
Descargar todos
0 kudos
Mensaje 3 de 5
3.159 Vistas
Hola smikel, gracias por responder a mi pregunta.

En general, el programa que necesito desarrollar consiste en una plataforma de control para un péndulo doble. Dicha plataforma debe poder utilizar varios algoritmos de control (tipos de control). Una forma que encontré fue utilizar el eval formula node, pero al parecer le toma muchas operaciones al cRIO, de ahí que surgió mi duda. Otra duda es que si utilizó un while loop con tiempo que utilice lel reloj de 1 MHz debería de durar menos tiempo. Por ejemplo si al cRIO con un reloj de 1KHz (con un 1mS) le toma 20 mS una tarea, si utilizó el reloj de 1MHz (con un 1uS) le debe tomar 20uS?

Te comento esto porque ya he realizado algunos experimentos desde el cRIO con el while loop con tiempo y el eval formula node y le toma 20 mS para resolver una cuenta. Te mando la imagen de los vi.

Saludos

Mario Mora
Descargar todos
0 kudos
Mensaje 4 de 5
3.150 Vistas
La diferencia entre utilizar el reloj de 1KHz y el de 1MHz va a radicar en la unidad mínima que puedas manejar de temporización de tu ciclo. Sin embargo, cada operación dentro del ciclo se ejecutará a la misma velocidad sin importar el reloj que utilices, pues estas operaciones aprovecharán los 400MHz del procesador. El reloj solo determinará el tiempo mínimo que puedas temporizar tu ciclo.

Definitivamente si pruebas utilizar código de bajo nivel en lugar del eval formula node puedes incrementar drásticamente la velocidad. ¿Es posible implementar tu código en la porción FPGA de tu cRIO? De esta forma aprovechando el verdadero paralelismo que ofrece el FPGA puedes reducir tus tiempos de ejecución. En el siguiente vínculo hay información disponible sobre optimzación de la programación en FPGA para aprovechar el paralelismo y la técnica del pipelining (convertir secuencia de ejecución en pequeños bloques que se pueden ejecutar en paralelo): http://zone.ni.com/reference/en-XX/help/371599C-01/lvfpgaconcepts/fpga_pipelining/

Utilizando técnicas adecuadas de optimización en conjunto con la interface FPGA puedes alcanazar tiempo de ciclo de incluso 25ns
Salvador Mikel
National Instruments
Ingeniería de Aplicaciones
www.ni.com/soporte
0 kudos
Mensaje 5 de 5
3.132 Vistas