Sie sind auf Seite 1von 6

Grado en Ingeniera en Electrnica Industrial y Automtica. Universidad de Vigo.

Prcticas de Sistemas Electrnicos Digitales.


Proyecto 1: Implementacin de un control basado en microcontrolador de la velocidad de un motor de cc.

PRCTICA 5
REGULACIN DE VELOCIDAD EN BUCLE CERRADO (BC) DE UN
MOTOR DE CC CON UN CONTROL PI
Palabras clave: Bucle Cerrado, CCP, contador, display LCD, driver, i2C, INCLUDE, motor de cc,
MSSP, PWM, realimentacin negativa, regulador de velocidad, regulador PI, regulador de tensin
serie, rutina interrupcin, sensor, subrutina, teclado matricial, temporizador.

1. INTRODUCCIN
Esta prctica es la ltima correspondiente al Proyecto 1. El principal avance consiste en cerrar
el bucle de control mediante una realimentacin negativa de la velocidad y en incluir un regulador
integral, tal y como se muestra en el siguiente diagrama de bloques. Adems, se completa el
sistema incorporando el display LCD y el teclado matricial.

error_act

consigna_act

suma_error
Regulador

Potencimetro

velocidad
Planta

velocidad_act
Sensor
Figura 1. Bucle cerrado de control de velocidad.

2. OBJETIVOS DE APRENDIZAJE
Tener capacidad para desarrollar un sistema hardware y software de complejidad media
combinando mdulos ya probados e integrando otros de nuevo diseo.
Saber convertir mediante programas en ensamblador datos en formato binario a BCD.
Interpretar esquemas electrnicos y tener capacidad para montarlos fsicamente en una
placa de prototipado.
Saber documentar programas mediante diagramas de flujo y comentarios en lnea.
Saber implementar un regulador bsico de tipo PI que controle un proceso real con un
microcontrolador.

3. TAREAS PREVIAS
1. Leer detenidamente toda esta gua de la prctica.
2. Estudiar el funcionamiento del regulador y codificarlo de acuerdo al diagrama de flujo de la
Tarea 1.
3. Ampliar el programa de la Prctica 4 para incluir el regulador y las nuevas variables de
control.
4. Aadir un cdigo al programa principal que explore el teclado y que active el sistema si se
pulsa la tecla * y lo detenga si se pulsa la tecla #. Para ello, se debe aadir una variable
estado cuyo bit 0 represente el estado de marcha cuando valga 1 y el de paro cuando
valga 0.
5. Disear un algoritmo que convierta un dato de 8 bits a BCD. Enviar los tres dgitos del
valor de velocidad convertida a BCD al display. (Se puede utilizar el mdulo bin_bcd.inc)

Proyecto 1:
Prctica 5: Regulacin de velocidad en Bucle Cerrado (BC) de un motor de cc con un control PI

4. DESARROLLO DE LA PRCTICA
Tarea 1: Programar un regulador en bucle cerrado del tipo PI para controlar la velocidad de
giro del motor.
En la prctica anterior se realiz un regulador en bucle abierto, ahora se trata de cerrar el bucle
aprovechando que ya se dispone de una medida de la velocidad real (una seal PULSOS de
frecuencia cuatro veces las vueltas/s codificada con un valor binario entre 0x00 y 0xFF).
Dado que el motor no tiene grandes pares resistentes (slo debe vencer los rozamientos) y la
masa inercial es muy pequea, su tiempo de respuesta es bastante rpido en comparacin con la
base de tiempos que se est utilizando. Adems, como se trata de minimizar el error, se propone
implementar una accin integral (PI con ganancia proporcional unitaria).
Para realizar la subrutina del regulador se debe seguir el siguiente diagrama de flujo. Una vez
terminada se debe incluir en el proyecto de MPLAB de la prctica anterior y modificar la subrutina
de atencin a la interrupcin para realizar la llamada al regulador y enviar al PWM la suma del
error, en vez de la consigna (seguir el diagrama de la Figura 3). Por tanto, se deduce que habr
que aadir ms variables al programa, esto es, el error y la suma del error.
regulador

no
consigna_act > 0

si
si

no
consigna_act > vel_act

no

error_act <= consigna_act velocidad_act

error_act <= velocidad_act consigna_act

suma_error > error_act

suma_error > error_act

no

si
suma_error <= 0xFF

si

suma_error <= suma_error + error_act

suma_error <= suma_error - error_act

suma_error <= 0x00

fin

Figura 2. Diagrama de flujo de la subrutina de regulacin de velocidad.

Tarea 2: Conectar el display para visualizar la velocidad del motor.


Utilizar los algoritmos programados en las tareas previas para implementar las subrutinas que
enven las variables al display.
Tarea 3: Conectar el teclado para activar y desactivar el motor.
Utilizar los algoritmos programados en las tareas previas para utilizar el teclado para introducir
las rdenes de marcha y paro. Utilizar las teclas * y # para ejecutar las rdenes de marcha y
paro respectivamente. Completar el cdigo del programa principal de la Tabla 2.

Grado en Ingeniera en Electrnica Industrial y Automtica. Universidad de Vigo.


Prcticas de Sistemas Electrnicos Digitales.
Proyecto 1: Implementacin de un control basado en microcontrolador de la velocidad de un motor de cc.

Tarea 4: Verificacin del funcionamiento del regulador en rgimen permanente.


Una vez que el regulador est funcionando en la placa se debe verificar su correcto
funcionamiento, adems de realizar una simulacin previa, introduciendo una perturbacin en la
alimentacin VCC2 del driver del motor.
Para ello, se debe fijar la consigna de velocidad en un valor intermedio y visualizar la salida del
regulador (la entrada al PWM) en la barra de LEDs. Se trata de tomar valores de la velocidad, de
la tensin de alimentacin y de la salida del regulador. Se debe comprobar que al variar la tensin
el regulador va ajustando la salida al PWM de forma que mantiene la velocidad constante. Los
valores que se le deben dar a la tensin de alimentacin son 8, 9, 10 y 11 V.

INT
Salvar los registro de la CPU

no

es
TM3?

si
Parar el contador TMR1
Cargar de nuevo el TM3
Borrar el Flag de interrupcin del TMR3
Activar el TMR3
Copiar el valor del contador
TMR1 a velocidad_act
Poner a cero el contador TMR 1
Activar el contador TMR 1
Leer valor de consigna del ADC

no

si

Estado = marcha?

Poner a cero PWM

regulador

Poner a cero suma_error

Enviar suma_error al PWM

visualiza_parado

visualiza_velocidad

Iniciar una nueva conversin A/D


Restaurar los registro de la CPU

FIN
Figura 3. Diagrama de flujo de la subrutina de atencin a la interrupcin.

Proyecto 1:
Prctica 5: Regulacin de velocidad en Bucle Cerrado (BC) de un motor de cc con un control PI

Tarea 5: Introduccin de la consigna de velocidad por teclado.


Realizar un programa ampliando el de la Tarea 3 que lea del teclado la consigna de velocidad
con tres cifras (entre 0 y 255). Hacer el diagrama de flujo y el cdigo correspondiente para el PIC.

5. TAREAS POSTERIORES
Realizar una breve memoria que incluya los resultados obtenidos, los cdigos comentados de
los programas realizados, as como de los diagramas de flujo revisados que se mencionan en la
gua de la prctica.

Tabla 1. Cabecera del mdulo principal del Proyecto 1. Se utilizan en total cuatro archivos de biblioteca. Uno para los
datos, otro para control del display, otro para el control de teclado y otro para convertir datos binarios a BCD.

Grado en Ingeniera en Electrnica Industrial y Automtica. Universidad de Vigo.


Prcticas de Sistemas Electrnicos Digitales.
Proyecto 1: Implementacin de un control basado en microcontrolador de la velocidad de un motor de cc.
Tabla 2. Parte del cdigo del bucle del mdulo principal del Proyecto 1. Despus de inicializar todo el sistema se debe
explorar el teclado y realizar las acciones de control de acuerdo a las ordenes introducidas.

Figura 4. Fotografa del hardware del proyecto 1.

Proyecto 1:
Prctica 5: Regulacin de velocidad en Bucle Cerrado (BC) de un motor de cc con un control PI
Tabla 3. Fichero con los datos y variables del Proyecto 1.

Das könnte Ihnen auch gefallen