Está en la página 1de 4

Control PID de Velocidad del Motor DC

El sistema propuesto para realizar el control de velocidad se muestra a continuacin:

Se escogi utilizar el microcontrolador de Microchip 16F876, debido a que es un PIC de gama media con 8K
de Memoria de Programa, 368 bytes memoria de datos RAM, conversor A/D de 10 bits y dos mdulos CCP.
El lenguaje de programacin utilizado es el C y el compilador es el CCS, el cual dispone de una amplia
librera de funciones predefinidas y comandos de preprocesado.

La transmisin del valor referencial de velocidad desde el mdulo de recepcin XBee hacia el dispositivo
microcontrolador, ser implementada mediante comunicacin serial utilizando el protocolo USART
(Universal asynchronous receiver/transmitter).

El cotrolador sera del tipo PID, los valores de los parametros de dicho controlador (Kp,Ki, Kd) seran
establecidos por el metodo de Ziegler y Nichols. La variable de control es el Dutty Cicle, este determina la
seal rectangular que ingresa en el Driver del motor. De esta forma la velocidad de rotacion sera regulada
mediante Modulacion por Ancho de Pulso (PWM).

El motor DC tiene acoplado un encoder, el cual proporciona tres seales cuadrangulares en su salida. La
frecuencia de seales es proporcional al valor de la velocidad de rotacion del motor, es por ello que se utiliza
un fecuencmetro (implementado en Software con el PIC) para obtener la salida controlada (W r.p.m) y
realimentar el sistema.

Controlador

Para implementar el controlador PID, se almacena en dos registros el valor de la seal de error actuante actual
y el valor del error en un periodo de muestreo anterior. En la funcion de transferencia se toma en
consideracion: El retenedor es de primer orden, la accion integral es mediante integracion rectangular hacia
adelante, las constantes Ki y Kd incluyen el valor del periodo de muestreo.

= ( 0) + + 0 + ( 0)

Donde:

Kp: Constante de la accion Proporcional


Ki: Constante de la accion Integral
Kd: Constante de la accion Derivativa
e: Error actual
e0: Error en un periodo de muestreo anterior
Io: Accion integral en un periodo de muestreo anterior.

Es complicado obtener el modelo matematico de la planta (Driver, Motor, Encoder y fecuencimetro), por ello
se recurre a sintonizar el controlador mediante el segundo metodo de Ziegler Nochols (Ganancia Limite). Se
establecera solo la accion de control proporcional, observando la ganancia critica con que la salida controlada
empieza a oscilar.
Tipo de Kp Ti Td
control
PID 0.6Kcr 0.5Pcr 0.125Pcr

El PID es utilizado como Dutty Cicle de una seal rectangular modulada por PWM y generada en el modulo
CCP2 del PIC.

Fecuencimetro

Es implementado utilizando el modulo CCP1 del PIC, este modulo debe trabajar en su modo captura de
eventos y almacenar en dos registros los tiempos en los que sucede un flanco de subida y otro de bajada. A
partir de dichos registros se podra hallar la frecuencia de la seal del encoder.

Simulacin

Se realiza en el Software Proteus, se usa el L293D como driver y 120 r.p.m como SetPoint.

En la simulacin el encoder es de 24 ranuras y tiene 3 salidas, por lo que se cumple:


2500
. . =
.

Donde

T: periodo de la primera seal generada


La seal de control una onda rectangular modulada mediante PWM, a continuacin se muestra la seal de
control para un Set Point de 120 R.P.M

ANEXO

Microcontrolador PIC 16F876

Procesador de arquitectura RISC avanzada


Juego de solo 35 instrucciones con 14 bits de longitud. Todas ellas se ejecutan en un ciclo de instruccin,
menos las de salto que tardan dos.
Hasta 8K palabras de 14 bits para la Memoria de Programa
Hasta 368 Bytes de memoria de Datos RAM.
Hasta 256 Bytes de memoria de Datos EEPROM.
Pines de salida compatibles para el PIC 16C73/74/76/77.
Hasta 14 fuentes de interrupcin internas y externas.
Pila de 8 niveles.
Modos de direccionamiento directo e indirecto.
Power-on Reset (POP).
Temporizador Power-on (POP) y Oscilador Temporizador Start-Up.
Perro Guardin (WDT).
Cdigo de proteccin programable.
Modo SLEEP de bajo consumo.
Programacin serie en circuito con dos pines, solo necesita 5V para programarlo en este modo.
Voltaje de alimentacin comprendido entre 2 y 5,5 V.
Bajo consumo: < 2 mA valor para 5 V y 4 Mhz 20 A para 3V y 32 M <
1 A en standby.
Cdigo del PIC

También podría gustarte