CONTROL DE UN SERVOMOTOR MEDIANTE LABVIEW

En estas práctica vamos a explicar cómo controlar un servomotor desde Labview. Para dicho cometido hemos utilizado un NIMYDAQ 6008 el cual se compone de un byte digital que se puede configurar como entrada y salida. En nuestro ejercicio debemos utilizar un PIC18F4550 para poder controlar los pulsos de nuestro servomotor.

El servomotor es un FUTABA S3003:

Vemos el circuito de control de nuestro servomotor. En él vemos que se compone de un motor de corriente continua controlado por un puente en H que controlará la polaridad de nuestro motor. Vemos el control del servo el cual tiene un generador de pulso que actua mediante realimentación desde la alimentación de un motor, generando esta señal se compara con una la entrada de nuestros pulsos. Con una pulse stretcher amplificaremos la ganacia del pulso de control. Comprendiendo en líneas generales el funcionamiento de nuestro servomotor, crearemos ahora el control.

Sabemos que el servomotor funciona por modulación por el ancho de un pulso determinado. Inspeccionando la hoja técnica de nuestro servomotor, sabemos que debemos trabajar de 0º a 180º en función de nuestro PWM generado y, sabemos que trabajamos de 0.5 a 2.1ms de duty cicle y con una frecuencia óptima de entre 50Hz a 60Hz entendamos que el duty cicle o ancho de pulso es la proporción de tiempo que dura una señal en activo alto con respecto al activo bajo dentro de una frecuencia determinada.

 

 

Bajo esta dinámica, desde labview podríamos controlar nuestro servomotor directamente pero el problema surge en nuestro DAQ el cual nos proporciona ciclos mínimos de 2ms. Esto es el equivalente a 50Hz y el máximo de giro de nuestro servomotor. Por tanto nuestros pulsos deberán ser generados por un interface que se dedique a ello.

Utilizaremos un PIC 18F4550 que nos podrá proporcionar un duty cycle de reducido tiempo de ciclo y que podremos ajustar para trabajar dentro del rango que hemos creado.

Veamos el algoritmo de Labview primero. Generaremos la adquisición de datos para configurar como salidas digitales los pines digitales del DAQ. Posteriormente, mediante:

Leemos como variables de numéricas los encoder de nuestro mouse para poder tratar esa lectura como nos convenga.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s