From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Discusiones sobre Productos NI

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

control de motores brushless dc con labview

¡Resuelto!
Ir a solución

Hola amigos:  

 

Estoy realizando un proyecto en el area de la robótica, en el cual me encuentro utilizando como software la plataforma LAB VIEW 2009  y como hardware  la tarjeta NI USB  DAQ 6216,  para controlar y monitorear el movimiento de 2 motores Brushless DC (con reductor de velocidad y encoders de doble cuadratura)  mediante la generacion de una señal PWM de 0 a 5V que va de los pines de salida analogicos a un DRIVER (de control de motores dc)  LMD18200t (puente h) , 2 salidas digitales de 5V para direccion y freno.y para tomar las lecturas de los encoders hice las conexiones directas de la tarjeta (5V, D ground , pin 33 , pin 35, que corresponden al contador 0).

 

Entonces hice lo siguiente:

 

1. Hice la conexion de un  encoder y realicé la medicion de angulo de giro, utilizando un VI de ejemplo original de Labview y funciono muy bien.


2. hice la conexion de la NI DAQ a el puente h y del puente h  al motor, e hice la interfaz adjunta (anexo 1) para controlar el motor. tambien funcionó pero se presentaron problemas de demora en el momento de dar la orden  ( cambio de velocidad, invertir giro), otra observacion que pude hacer es que la señal pwm no se puede realizar a altas frecuencias, siendo la maxima 500 HZ, lo que genera un zumbido en el motor.


3. hice un VI similar al anterior, copiando los mismos comandos  pero cambiandole el nombre a las funciones para que no estubieran repetidas  y cambiandole la asignacion de los pines de la tarjeta,  para el control de los 2 motores, pero no funcionó, presentaba un error  en el DAQ Assistant  de una de las salidas ANALOGICAS.

 

Sé que existe una funcion de labview adicional al DAQ assistant que optimiza las tareas de adquisicion y generacion de señales que es el DAQmx, pero la verdad es que no sé cómo puedo utilizarla para lo que estoy realizando, tengo instalada la aplicacion pero me confundo mucho con la configuración  de la función para generar la señal analogica del PWM. 

 

Alguien podria colaborarme en la elaboracion del VI optimizado para generar la señal pwm con la función

DAQmx?

 

¿  Cómo puedo mejorar este programa para obtener un mejor funcionamiento de la aplicacion que estoy realizando ?

 

 

Bueno Amigos, eso es todo!    . Sus ideas, comentarios o sugerencias son valiosas.  De antemano les agradezco sinceramente su colaboración

 


 

0 kudos
Mensaje 1 de 2
4.436 Vistas
Solución
Aceptado por diegomech23

Hola Diego, como estas generando un PWM, una opción muy practica es usar los contadores que en tu tarjeta son de 80Mhz, por lo que vas a poder llegar a velocidades mas altas, básicamente tienes que remplazar tus DAQ assistants por VIs de bajo nivel para poder tener un mejor control de tu tarjeta. También puedes separar las tareas en diferentes ciclos para que sean independientes es decir, actualizar la dirección no tenga que esperar la actualización del PWM.

Aquí te dejo unos tutoriales y ejemplos de PWM con DAQ que te pueden ser muy útiles:

Pulse Width Modulation (PWM) Using NI-DAQmx and LabVIEW

PWM-Analog Output

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

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

 

 

Saludos

Benjamin C
Principal Systems Engineer // CLA // CLED
Mensaje 2 de 2
4.379 Vistas