Sunteți pe pagina 1din 10

[1]CONTROLADOR PID MOTOR DC

William Cañar, Dario Muñoz, Diego Herrera, Juan Pinduisaca, Frank Rea, Johnatan Robalino, Paul
Rodriguez
Universidad Nacional de Chimborazo

Abstract.- En el presente informe describe estado estacionario y el componente


los objetivos, el plan y el desarrollo de derivativo mejora la velocidad de respuesta ,
controlador PID lo cual se implemento para como en Fig1[1].
controlar la velocidad de un motor DC, que
se controla por un microcontrolador y una
interfaz gráfica , con el fin de poder
garantizar a la salida un valor de referencia
deseado. Figura 1: Diagrama de Bloques de un controlador PID

I. INTRODUCCION
Para conseguir un buen rendimiento y evitar
El controlador PID(Proporcional, Integral y comportamientos indeseables en el sistema es
Derivativo) cuyo proposito es hacer que el preciso ajustar los parámetros del controlador
error en estado estacionario, entre la señal de hasta que el desempeño del proceso se
referencia y la señal de salida, sea cero de considere satisfactorio. A este procedimiento
manera asintótica en el tiempo, lo que se logra se le conoce como sintonización del
mendiante el uso de la acción proporcional. controlador y puede realizarse por prueba y
error, o siguiendo uno de un conjunto de
Comúnmente existe la necesidad de llevar
algoritmos de sintonización que permiten
un sistema físico hasta un punto determinado
encontrar de manera sistemática valores
con cierto grado de exactitud. Un sistema de
adecuados de los parámetros del controlador.
control es el conjunto de técnicas y
herramientas que guían un sistema físico hasta
las condiciones deseadas.
Existen diversos métodos de diseño de
controladores, que requieren ya sea el modelo
II. DESARROLLO DE del proceso o su respuesta en frecuencia para
CONTENIDOS calcular las ganancias óptimas del controlador.
Aún así se requiere hacer pruebas de campo
para realizar ajustes finales, sobre todo si la
El control PID es el controlador industrial
información del proceso es incompleta o
más utilizado, empleado por su buen
inexacta. De manera alternativa, se han
desempeño y facilidad de implementación. El
planteado controladores adaptables, que tienen
acrónimo PID proviene de las tres partes que
la capacidad de encontrar valores adecuados
lo componen: una acción proporcional, una
durante la operación automática.
acción integral y una acción derivativa: el
componente proporcional ajusta la ganancia
en relación directa con la magnitud del error,
el componente integral elimina el error en
A. MATLAB distribución de pines y la descripción de cada
uno.

El empleo de MATLAB como El núcleo ATmel AVR combina un conjunto


herramienta de resolución matemática y de registros de 32 instrucciones de trabajo de
simulación de gráficas ha permitido mejorar propósito general. Cada uno de estos registros
el proceso de modelado de sistemas y está conectado de manera directa a la unidad
solución de ecuaciones, matrices, entre otros aritmética lógica (ALU). Esto permite dos
requerimientos, extendiendo sus aplicaciones registros independientes para acceder a una
a nivel de control, a las diversas áreas y sola instrucción ejecutada en un ciclo de reloj.
modelos de estudio, como lo son los modelos: Toda esta arquitectura logra que los 3
eléctricos, mecánicos, hídricos, entre otros. rendimientos sean hasta diez veces más
Este amplio campo de aplicaciones ha rápidos que los microcontroladores CISC (set
permitido como consecuencia que el estudio de instrucciones de computador complejas)
del software y todas sus herramientas básicas convencionales.
sean un requerimiento mínimo a la hora de
realizar modelamiento y pruebas de dinámicas
de sistemas, requiriendo por tanto que su
estudio sea fundamental en la formación de los
estudiantes de las ramas de control
automático, control de sistemas, sistemas
lineales yotras áreas donde el modelamiento
de los comportamientos y el control de las
dinámicas son parte del estudio[1].

Figura 3:Distribución pines ATmega

B.- ENCODER

Un encoder se compone básicamente de un


disco conectado a un eje giratorio. El disco
esta hecho de vidrio o plástico y se encuentra
Figure 2:MATLAB
“codificado” con unas partes transparentes y
B. MICROCONTROLADOR otras opacas que bloquean el paso de la luz
AVR emitida por la fuente de luz (típicamente
emisores infrarrojos). En la mayoría de los
Permite ejecutar poderosas instrucciones
casos, estas áreas bloqueadas (codificadas)
en un solo ciclo de reloj, el microcontrolador
están arregladas en forma radial.
logra rendimientos cercanos a 1 MIPS
(millones de instrucciones por segundo) por A medida que el eje rota, el emisor infrarojo
MHz. De esta forma facilita al diseñador para emite luz que es recibida por el sensor óptico
optimizar el dispositivo de consumo de (o foto-transistor) generando los pulsos
energía y la velocidad de procesamiento.on su digitales a medida que la luz cruza a través del
disco o es bloqueada en diferentes secciones Monovuelta
de este. Esto produce una secuencia que puede
Dividen una revolución mecánica en un
ser usada para controlar el radio de giro, la
número determinado de pasos de medición.
dirección del movimiento e incluso la Tras una revolución completa, los valores de
velocidad. medición se repiten. El número máximo de
pasos es de 8.192.

Figura 2:Composición del Encoder

TIPOS DE ENCODER
Una clasificación de los encoder según el tipo Figure 5:Figura de la monovuelta
de información sobre la posición que generan Multivuelta
sería:
No sólo registran la posición angular, sino que
Absoluto también cuentan las revoluciones (hasta un
Se basa en la información proveída para máximo de 4.096). La emisión de las señales
determinar la posición absoluta en secuencia. se efectúa ya sea a través de una interfaz SSI o
Un encoder absoluto ofrece un cogido único de un sistema de bus tipo CAN o Profibus.
para cada posición.
Se dividen en dos grupos: los encoders de un Encoder Óptico
solo giro y los encoders absolutos de giro
múltiple y su tamaño es pequeño para permitir Es una herramienta indispensable cuando se
una integración mas simple. trata de determinar la velocidad angular o
posición del eje de un motor
Encoders incrementales magnéticos
Destacan por no existir rozamiento ni contacto
entre el elemento sensor ni el detector.
Generalmente hablamos de ruedas magnéticas
de varios diámetros que tienen un código
grabado de forma magnética. Este código es
leído e interpretado por el cabezal que recoge
esos impulsos magnéticos.
PWM

Figure 4: Composicion del encoder La modulación por ancho de pulsos (también


conocida como PWM, siglas
en inglés de pulse-width modulation) de una
señal o fuente de energía es una técnica en la La parte proporcional consiste en
que se modifica el ciclo de trabajo de una señal el producto entre la señal de error y la
periódica (una senoidal o una cuadrada, por constante proporcional para lograr que el error
ejemplo), ya sea para transmitir información a en estado estacionario se aproxime a cero, pero
través de un canal de comunicaciones o para en la mayoría de los casos, estos valores solo
controlar la cantidad de energía que se envía a serán óptimos en una determinada porción del
una carga. rango total de control, siendo distintos los
valores óptimos para cada porción del rango.
El ciclo de trabajo de una señal periódica es el
ancho relativo de su parte positiva en relación
con el período. Expresado matemáticamente:

La construcción típica de un circuito PWM se


lleva a cabo mediante un comparador con dos
entradas y una salida. Una de las entradas se
conecta a un oscilador de onda dientes de Figure 7:Proporcional
sierra, mientras que la otra queda disponible
para la señal moduladora. En la salida la
frecuencia es generalmente igual a la de la
Integral
señal dientes de sierra y el ciclo de trabajo está
en función de la portadora. El modo de control Integral tiene como
propósito disminuir y eliminar el error en
estado estacionario, provocado por
III. IMPLEMENTACION perturbaciones exteriores y los cuales no
pueden ser corregidos por el control
Iniciaremos con los calculos que se proporcional. El control integral actúa cuando
necesitaran para el PID hay una desviación entre la variable y el punto
de consigna, integrando esta desviación en el
tiempo y sumándola a la acción
proporcional[3].

Figure 6: Diagrama de Bloques del PID

Proporcional
Figure 6:Visualización del PID

Derivativo En la fugura se visualiza las señales


reultantes del PID, tanto del setpoitn y la
La acción derivativa se manifiesta cuando hay resultante del PWM. Lo que se puede definir
un cambio en el valor absoluto del error; (si el
que cuando nosotros detemos, obstruimos la
error es constante, solamente actúan los modos
velocidad en el cual esta trascurriendo. Se
proporcional e integral) [3].
genera un tiempo en alto que significa que el
El error es la desviación existente entre el motor esta detenido por lo tanto cuando se
punto de medida y el valor consigna, o "Set retire lo que encuentra obstaculisando al motor
Point". de inmedianto procedera a mover el motor a
PWM alto ya que rencompesara el tiempo
detenido en mayor velocidad[3].

IV. RESULTADOS

SEÑAL DE PID VISUALIZADO EN


MATLAB Figure 7:Movilizacion del Motor DC si nigun obstaculo

Cuando el Motor DC esta en movimiento la


grafica del PID, la constante proporcional esta
en linea recta.
Ta=tiempo de aceleración en el
momento que se quita el obstaculo
V. CONCLUSIONES

El desarrollo del presente proyecto tiene


ciertos aspectos importantes que conviene
resaltar a modo de conclusiones.

Figure 8: Simulación cuando el motor no esta


El controlador PID-Difuso mantiene las
obstaculizado características de un controlador PID clásico
en cuanto al comportamiento proporcional,
integral y derivativo. Esto se confirma durante
la evaluación de las dos estructuras PID-
Difusas.

Pierde efectividad en la medida que la


superficie de control se hace no lineal. En esta
situación los parámetros obtenidos pueden ser
empleados como punto de partida para realizar
un ajuste manual. Con este método se obtienen
bueno resultados cuando el retardo de
transporte es mayor a las constantes
dominantes de tiempo.

Figure 9: Obstaculización del motor DC

REFERENCIAS
Cuando el Motor DC esta obstaculizado , en la
interfaz Grafica MATLAB se visualiza otra [1 «wikipedia,» 5 2013. [En línea].
figura. ] Available:
https://es.wikipedia.org/wiki/Controlado
r_PID. [Último acceso: 6 12 2019].
To
[2 T. A. Cantarero, Diseño del Controlador
] PID, Sevilla: Departamento de Ingeniería
de Sistemas y Automática, 2019.
Td Ta
[3 K. D. Fasanando Paucar, «slideshare,»
] Noviembre 2013. [En línea]. Available:
https://es.slideshare.net/fasanando/info
rme-n7-coltrol-pid-matlab. [Último
Figure 10:Tiempos cuando el motor esta detenido acceso: 6 Diciembre 2019].

To=tiempo que va obstaculizado


Td= tiempo en el momento exacto
donde se detiene el motor
VI. BIOGRAFIA
padres: Justo Rea, Rosa Chisaguano.
Johnatan Israel Robalino Mis estudios primarios los realice en
I. Estudiante de la la escuela “Reino de Inglaterra” de la
Universidad Nacional de ciudad de Santo Domingo, Mis
Chimborazo carrera de estudios secundarios los realice en el
electrónica y Instituto Técnico Superior “Julio
telecomunicaciones. Moreno Espinoza” obteniendo así el
título de bachiller en “Física y
Matemáticas” actualmente me
Diego W. Herrera Pazmiño tengo 25 encuentro cursando el 8vo Semestre
años. Nací en la ciudad de Riobamba, de Ingeniería Electrónica y
inicie mis estudios Telecomunicaciones en la
en la escuela La “Universidad Nacional de
Salle, los termine en Chimborazo”.
el colegio Carlos
Cisneros y en la Mi nombre es Darío
actualidad estoy Javier Muñoz Muñoz
estudiando en la nací en la provincia de
Universidad Chimborazo cantón
Nacional de Riobamba, culminé mis
Chimborazo la carrera de Ingeniería estudios en el colegio
en Electrónica y Telecomunicaciones Pedro Vicente
Maldonado en la especialidad
Quimico-biologo. Actualmente
Mi nombre es Paul Rodríguez estudio en la Universidad Nacional
actualmente tengo 21 de Chimborazo sigo la carrera de
años de edad, estudio electrónica y Telecomunicaciones
en la Gloriosa estoy cursando el Sexto semestre de
UNIVERSIDAD la misma.
NACIONAL
DE CHIMBORAZO,
estoy en la carrera de Juan Carlos Pinduisaca
Electrónica y Quishpe. Mis estudios
Telecomunicaciones , nací el 25 de secundarios lo realicé en el
Enero del 1998 . colegio Nacional Fernando
Daquilema, y en la actualidad
Franklin Alexander sigo mis estudios superiores
Rea Chisaguano nací en en la Universidad Nacional
la ciudad de Santo de Chimborazo.
Domingo de los
Colorados en la
provincia de Santo
Domingo de los
Tsáchilas el 11 de Abril de 1995, Mis
VII. ANEXOS

#include <PID_v1.h>
#include <PinChangeInterrupt.h>
#include <PinChangeInterruptBoards.h>
#include <PinChangeInterruptPins.h>
#include <PinChangeInterruptSettings.h>
#define encodPinA1 2
#define encodPinB1 8
#define M1 9
#define M2 10
double kp = 5 , ki = 1 , kd = 0.01 ,input = 0, output = 0, setpoint = 0;
long temp;
volatile long encoderPos = 0;
PID myPID(&input, &output, &setpoint, kp, ki, kd, DIRECT);

void setup() {
pinMode(encodPinA1, INPUT_PULLUP);
pinMode(encodPinB1, INPUT_PULLUP);
attachInterrupt(0, encoder, FALLING);
TCCR1B = TCCR1B & 0b11111000 | 1;
myPID.SetMode(AUTOMATIC);
myPID.SetSampleTime(1);
myPID.SetOutputLimits(-255, 255);
Serial.begin (9600);
}
void loop() {
int pot = analogRead(A0);
int valA2= analogRead(1);

temp += pot;
Serial.print(pot);
Serial.print(",");

Serial.println(valA2);

if (temp < 0) {
encoderPos = 0;
temp = 0;

}
setpoint = temp / 500;
input = encoderPos ;
myPID.Compute();
pwmOut(output);
}
void pwmOut(int out) {
if (out > 0) {
analogWrite(M1, out);
analogWrite(M2, 0);
}
else {
analogWrite(M1, 0);
analogWrite(M2, abs(out));
}
}
void encoder() {
if (PINB & 0b00000001) encoderPos++;
else encoderPos--;
}

S-ar putea să vă placă și