Beruflich Dokumente
Kultur Dokumente
El propsito de esta nota de aplicacin es describir cmo un PIC16F684 se puede utilizar para
implementar un posicional Proporcional - Integral- Derivativo ( PID ) de control de retroalimentacin
en un sistema intrnsecamente inestable. Un invertida pndulo se utiliza para demostrar este tipo de
control.
El pndulo invertido se compone de tres partes principales :
la plataforma de base, el pndulo y el controlador tablero, como se muestra en la Figura 1 .
PLATAFORMA DE BASE
La plataforma de base es una plataforma de 3 puntos , 2 ruedas (una de los cuales est orientado y
fijado a un motor de corriente continua ) y una conector de audio. Cuando el motor de corriente
continua est activada, la base plataforma girar alrededor de un crculo con el centro de el eje de
rotacin es el conector de audio. El conector de audio sirve 2 fines; primero se utiliza como el eje de
rotacin
para la plataforma de base y segundo , se utiliza para lograr potencia conmutado a la tarjeta del
controlador.
PNDULO
El pndulo se une a la plataforma de base por una 360 potencimetro giratorio libre . La base del
pndulo est unido al potencimetro de una manera tal que cuando el pndulo se equilibra
( completamente vertical) , la toma central del potencimetro est sesgado a VREF / 2 . por
el resto de esta nota de aplicacin se utilizar para denotar el ngulo de desplazamiento del
pndulo con respecto a el eje vertical.
y para accionar el motor de corriente continua. La fuente de alimentacin necesaria para ejecutar el
sistema est dictada por la seleccin de la motor. El motor es controlado por un puente en H que es
impulsado por la captura PIC16F684 Mejorado / comparacin / Mdulo PWM (PECC). Las salidas del
PECC son conectado a los conductores FET que producen la unidad adecuada tensiones y reducir los
tiempos de transicin para los FET en el H-puente.
Hay 5 potencimetros situados en el controlador bordo, 3 de los cuales se utilizan para ajustar las
constantes PID (KP, KI y KD) y uno para medir . El quinto potencimetro se utiliza en conjuncin con
el filtro de entrada de referencia. El filtro de entrada es un filtro de Bessel de paso bajo con una
frecuencia de corte de 60 Hz y tiene un voltaje Se necesita ganancia de 6. Un filtro de paso bajo para
eliminar cualquier ruido de alta frecuencia en la medicin de ngulos que el trmino derivado del
controlador PID es extremadamente sensible a. El filtro de Bessel se utiliza porque tiene la mejor
respuesta a una funcin escalonada. (Una vez que el pndulo es equilibrado, un desplazamiento
repentino que hace que se
desequilibrarse se ver como una funcin de paso). El frecuencia de corte fue elegido para ser al
menos el doble frecuencia esperada del pndulo. La ganancia de la filtro fue elegido para aumentar la
resolucin de la Analog- a digital (A / D). Con el potencimetro 360 y un convertidor A / D de 10 bits,
sin ganancia, un LSB es igual a 0.35 . Con la ganancia ajustada a 6, el desplazamiento ngulo se
limita a 30 , lo que da una resolucin de 0.059 por LSB. Controla el quinto potencimetro de la la
referencia del filtro de entrada para producir un verdadero desplazamiento 0 ngulo cuando el
pndulo est en posicin vertical. Sin esto potencimetro, cualquier ngulo ligero desplazamiento
har que el de base para aumentar poco a poco su velocidad y eventualmente tomar el sistema en un
estado inestable. Para ms informacin en la placa del controlador, consulte los esquemas de
Apndice A: "Esquemas".
PID
Para el sistema de control de posicin PID , se utiliza la Figura 4 para modelar el sistema .
KI es la integral constante
En este sistema, la seal de salida del controlador , C ( t), determinar la direccin en la que el motor
se enciende .
La magnitud de C (t ) se corresponde directamente con el deber ciclo de la PWM en el mdulo PECC ,
la determinacin de la
velocidad a la que el motor se apagar .
PID EN UN SISTEMA DIGITAL
Conversin a un sistema digital, Y ( t) se mide por un convertidor A / D . Con el fin de implementar el
controlador PID ,
el microcontrolador PICmicro tendr que hacer algunas aproximaciones de los trminos integrales y
derivados.
Comenzando con el trmino derivado , podemos utilizar el siguiente diferencia ecuaciones para
nuestra aproximacin .
Nota : Vea el Apndice B: " Derivacin de Ecuacin 5 "para la derivacin de esta ecuacin.
Como la aceleracin del pndulo no es constante, utilizar la aceleracin mxima del pndulo cuando
el uso de esta regla de oro . La aceleracin mxima de el pndulo se producir cuando es el ngulo
ms grande en ,
el controlador tratar y corregir ( MAX ) . MAX es controlada por tanto de hardware como de
software. El hardware
lmite para MAX es fijado por la ganancia de la Bessel Filtrar; con una ganancia de 6 , el lmite es de
30 o 0,523
radianes. Esto se puede limitar an ms en el software. Los software, que acompaa esta nota de
aplicacin , ms
lmites MAX a 20 0,349 radianes. Esto se hace para eliminar la posibilidad de golpear el lmite
hardware
El motor utilizado en este sistema que cumple con este criterio es de MAXX Products, Inc. El nmero
de modelo es
EPU9, con una relacin de 8,6 a 1 marcha unido a un 2 pulgadas rueda. La tensin nominal de este
motor es de 4,8 a 7,2 V,
pero para este ejemplo, el motor funcionar a 12V. Este es hacer para obtener una mejor respuesta
del motor a pequea
ciclos de trabajo del PWM. Correr en aproximadamente el doble de la tensin de entrada designado no
es una preocupacin
debido a que el motor nunca estar en un estado constante donde el ciclo de trabajo del PWM es
mayor que 50%.
Si encontrar un motor que cumple con este criterio es difcil, hay algunas soluciones. Una solucin es
disminuir
MAX en el software o aumentar la longitud del pndulo; esto reducir la aceleracin mxima de la
pndulo. Otra posible solucin es aumentar la coeficiente de friccin entre la rueda motriz y la base. Si
el motor es de tamao amplio, el coeficiente de friccin de la rueda motriz ser el factor limitante en
la forma rpida de la base puede acelerar. Cambiar el coeficiente de friccin, cambiando la rueda
motriz de un material diferente o aadir una superficie abrasiva a la plataforma.
Para obtener una estimacin aproximada de la rapidez con las necesidades de bucle PID que ser
actualizado, colocar un objeto, similar en longitud del pndulo, en fin en la palma de una mano y
tratar de equilibrar ello. El objeto puede o no puede ser posible equilibrar.
Cuanto ms corto sea el objeto, ms difcil es equilibrar.
En la prueba de este mtodo, la longitud ms corta equilibrada para un perodo sostenido fue de 0,5
metros de longitud. Equilibrio un objeto de tal manera se basa principalmente en la sentido de la
vista. Desde la visin humana slo puede procesar
informacin a aproximadamente el 30 Hz, 30 Hz ser la lnea de base para la velocidad mnima a las
necesidades del circuito de control para funcionar a. La frecuencia del bucle de control PID tambin va
a ser seleccionado para simplificar las rutinas matemticas. La Integral plazo, en la Ecuacin 3,
muestra que las necesidades de cada trmino de error debe multiplicarse por el perodo de muestreo
(que es el mismo que dividir por la frecuencia de muestreo). Por elegir una frecuencia de muestreo en
potencias de 2 de, muy rutina de divisin rpida se puede hacer mediante el desplazamiento a la
derecha comando, donde cada desplazamiento a la derecha es una divisin por 2. Es muy similar para
el trmino derivativo, excepto la desviacin a la izquierda
se usara para una multiplica por 2. Sabiendo esto, elegir 256 Hz como frecuencia de muestreo. Esto
es 8 veces ms rpido que la frecuencia mnima estimada y debe permitir suficiente espacio para
variar la longitud de la pndulo, si se desea.
C CDIGO DE FLUJO DE TABLA
Los siguientes diagramas de flujo muestran una versin simplificada de el cdigo C para el pndulo
invertido . Para una completa Descripcin del cdigo, ver el cdigo fuente AN964 archivo.
Sutilezas en EL SOFTWARE
La rutina de servicio de interrupcin se utiliza para controlar el la velocidad del bucle PID . La rutina de
servicio de interrupcin es configurado para ejecutarse fuera del Timer0 interrupcin . Timer0 es un
nio de 8 bits temporizador que incrementar el TMR0 cada registro reloj de la instruccin . Cuando
los desbordamientos de registro TMR0 , la interrupcin de la bandera Timer0 se configura . La
velocidad a la cual la interrupcin debe ocurrir es cada 3.9 milisegundos ( 1/256 Hz) . Ya que estamos
usando el 8 MHz interna oscilador interno , vamos a tener una instruccin de 2 MHz reloj o 0,5 mu s
por instruccin . Esto produce que la interrupcin se debe ejecutar cada 7812 instrucciones. Al
establecer el prescaler TMR0 a 32 y 11 a la recarga
el registro TMR0 , en la rutina de servicio de interrupcin , el Timer0 interrupcin se produce cada 3,9
milisegundos o
cada 7808 instrucciones ( 255-11 ) * 32 . Como se ha indicado anteriormente en esta nota de
aplicacin , hay
2 forma bsica del PID que puede ser implementado y Ellos son:
Cuando se hizo la aproximacin para la derivada plazo, afirm que la aproximacin sera:
Con un 10-bit A / D, KD se mide como un entero entre 0 y 1023. El trmino X permite una fraccional
representacin de KD, no slo un nmero entero. (Escala Similar factores tambin se utilizan en el
clculo de la integral y
trminos proporcionales). El 3 * TS viene del hecho de que estamos triplicando nuestra perodo de
muestreo mediante el uso de E (n) - E (n- 3) no E (n) - E (n-1). Por qu utilizar E (n) - E (n-3) en lugar
de E (n) - E (n-1)? La principal razn para hacer esto es para limitar la variacin en la medicin del
ngulo de error. Habr siempre ser una cantidad de incertidumbre asociada a la
medida de error, algunos de los cuales se puede atribuir a Un error / D, Bessel rendimiento del filtro,
vibraciones mecnicas,
etc. Dado que la incertidumbre de las mediciones de error ser el mismo para todos los trminos de
error, este
la incertidumbre se puede disminuir efectivamente la triplicacin perodo de muestreo. La verdadera
clave es que el trmino derivado Todava se actualiza a 256 Hz tasa. Si lo hace, le da el beneficio del
ritmo ms lento un trmino derivado ms precisa,
pero a la frecuencia de muestreo ms rpido deseado. El lado afecta de hacer esto es la adicin de
aproximadamente 4 milisegundos de quedarse con el trmino derivado, que en este caso es
aceptable.
KP * X * 3 * TS ha sido precalculado para ser 32 a aumentar la velocidad del bucle PID.
ADAPTAR EL CONTROLADOR PID
Utilice los siguientes pasos para ajustar las constantes PID :
1. Gire el KP , KI y KD potencimetros
en sentido horario hasta que se encienda . Esto establece toda la
constantes a cero.
2. Encienda el dispositivo mediante un 12V ( mnimo de un 3
amp) fuente de alimentacin.
3. Sosteniendo el botn Reset abajo , levante el pndulo
a la posicin vertical y suelte el
Botn y pndulo Restablecer al mismo tiempo .