You are on page 1of 22

Instituto Tecnologico Superior de Huichapan

Presentan:
Miguel

Angel Ortiz Resendiz
Carlos Santos

Angeles
Control Digital de Velocidad del Motor de CC con Control PI
Control digital
Unidad III:Dise no de controladores digitales
M.en.C Jose Miguel Hdz. Paredes
El Saucillo Hichapan Hgo..
1
1. INDICE GENERAL
Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.3
Controladores de motores electricos . . . . . . . . . . . . . Pag.3
Control de posici on . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.4
Lista de materiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.5
Modelado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.6
Resistencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.6
Caracterizaci on del motor . . . . . . . . . . . . . . . . . . . . . . Pag.7
Constante de par km . . . . . . . . . . . . . . . . . . . . . . . . . ...Pag.8
Constante contraelectromotriz ke . . . . . . . . . . . . . . . Pag.8
Fricc on viscosa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.9
Momento de inercia Jm . . . . . . . . . . . . . . . . . . . . . . . . Pag.9
Inductancia L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.9
Funci on de transferencia . . . . . . . . . . . . . . . . . . . . . . Pag.12
Determinaci on de las constantes Kp y Ti . . . . . . . Pag.13
Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.15
Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pag.18
1
1
Estudiantes de ingenieria mecatronica 8 semestre
2
2. INTRODUCCI

ON
En realidad no existen controladores que act uen unicamente con accion integral,
siempre act uan en combinaci on con reguladores de una accion proporcional, com-
plementandose los dos tipos de reguladores, primero entra en accion el regulador
proporcional (instantaneamente) mientras que el integral act ua durante un intervalo
de tiempo. (Ti= tiempo integral) La Funcion de transferencia del bloque de control
PI responde a la ecuacion:
G(s) =
Y (s)
E(s)
= kp(
1
T
i
s
+ 1)
Donde Kp y Ti son parametros que se pueden modicar seg un las necesidades
del sistema. Si Ti es grande la pendiente de la rampa, correspondiente al efecto
integral sera peque na y, su efecto sera atenuado, y viceversa. Respuesta temporal
de un regulador PI.
Figura 1: Respuesta regular PI
Por lo tanto la respuesta de un regulador PI sera la suma de las respuestas
debidas a un control proporcional P, que sera instantanea a deteccion de la se nal
de error, y con un cierto retardo entrara en accion el control integral I, que sera el
encargado de anular totalmente la se nal de error.[1]
2.0.1. CONTROLADORES DE MOTORES EL

ECTRICOS
En el control de motores de CD se han desarrollado diferentes tecnicas de control
mediante el uso de sensores y sin ellos. En el caso del uso de sensores se desarro-
llan considerando la retroalimentacion de la variable de salida a controlar, posicion
y/o velocidad mediante el uso de sensores electromecanicos tales como encoders,
3
resolver, tacogeneradores, etc. En el caso del no empleo de sensores se han desarro-
llado tecnicas que permiten realizar el control de posicion y/o velocidad mediante
el estimacion o reconstruccion de estados a partir de la medicion de variables como
corriente y voltaje.[2]
2.1. CONTROL DE POSICI

ON
En [3] se propone resolver el control de la posicion del motor de CD usando un
controlado PI, se muestra que el problema de medir la posicion no es observable
desde la corriente electrica, por lo que para resolver este problema se propuso agre-
gar en el rotor del motor una palanca, con esta condicion se muestra que la posicion
puede ser observable. Por otra parte [4] se basa en las propiedades anisotropcas
del rotor de un motor de induccion para el control de posicion sin sensores mecani-
cos. Tales propiedades pueden explicarse como variaciones magneticas periodicas
y la construccion del espacio anisotropico se determina inyectando ondas de ujo
magnetico en el estator a altas frecuencias. As, la corriente armonica resultante
contiene componentes de frecuencia que dependen de la posicion del rotor.
4
3. LISTA DE MATERIALES
Para poder realizar la caracterizacion del motor y posteriormente el control se
necesitan de los siguiente materiales.
gggggg Cantidad
Arduino mega 1
2 potenciometros 10 mil ohms
Motor de cd 1
Cable para proto 1 m
Puente h (L293b) 1
Osciloscopio 1
Cuadro 1: Material necesario
5
4. MODELADO
El modelado del sistema se divide en dos subsistemas electrico y el mecanico en
la gura 2 se muestra los componentes del sistema.
Figura 2: Esquema de la planta
Donde
R es la resistencia
L es la inductancia a la armadura
e
a
= k
e
w es al fuerza contraelectromotriz donde k
e
es la constante de la
fuerza contraelectromotriz y w es la velocidad angular
u es el voltaje aplicado a la armadura del motor
i es la corriente electrica de la armadura
J
m
es la inercia del rotor del motor
b
m
es la constante de friccion viscosa del motor
T = k
m
i
El modelo del sistema electrico usando las leyes de kircho
u = L
di
dt
+ Ri + k
e

(ecu,1)
Aplicando las leyes de newton el modelo mecanico queda expresado como:
J
m

+b
m

= k
m
i(ecua,2)
6
5. CARACTERIZACI

ON DEL MOTOR
5.1. RESISTENCIA DE ARMADURA R
Para determinar la resistencia del motor se realizo un experimento en el cual
consistio en poner una palanca ja al rotor y se colgo un objeto de cual se conoca
su peso en el extremo de la palanca y se aplico el voltaje necesario para que la
palanca quedara en posicion horizontal como se muestra en la gura 3.
Figura 3: Experimento para obtener R
Si observamos la ecuacion uno y tomamos en cuenta el hecho de que el rotor
esta bloqueado por el peso es decir no hay velocidad por lo tanto la fuerza contra-
electromoriz e
a
se hace cero y lo mismo pasa con el voltaje debido a la inductancia L
ya que se espero a que la corriente se estabilizara por lo cual para estas condiciones
la ecuacion uno queda como:
u = Ri
R =
u
i
Por lo tanto basta con medir el voltaje y la corriente en este experimento para
7
determinar el valor de R esto se realizo varias veces con diferentes pesos y se saco el
promedio de las resistencias resultando R= 7.37
5.2. CONSTANTE DE PAR km
De la hoja de datos se obtuvo una graca que relaciona la corriente i contra el
torque T gura 4. Y la pendiente K
m
=
Nm
A
se determino de forma graca siendo
km=0.03074 K
m
=
Nm
A
Figura 4: Caractersticas del motor MITSUMI M28N-2
5.3. CONSTANTE CONTRAELECTROMOTIZ ke
Nuevamente se utilizo la ecuacion uno solo que ahora se asume que el motor des
pues de un instante de haberle suministrado un voltaje constate llega a un estado
estacionario en el cual la velocidad w es constante al igual que la corriente por lo
cual la ecuacion uno quedo como:
Ri + k
e
w = u
k
e
=
u Ri
w
8
Usando los valores nominales u=18v , i=0.25 A y W=457.6264 rad/s resulta:
k
e
= 0,0353071
v
rad
5.4. FRICCI

ON VISCOSA bm
De la ecuacion dos bajo las mismas condiciones anteriores la ecuacion resulta:
b
m
=
k
m
i
w
Sustituyendo los valores i=o.25 A , W=457.6264 rad/s
k
m
= 0,03074
Nm
A
tenemos que
b
m
= 0,0000167932
Nms
rad
= 16.7932x10
6
5.5. MOMENTO DE INERCIA Jm
Se sabe que la masa del rotor de un motor dc de imanes permanentes es muy
prxima a 1/3 de la masa del motor la cual es:
m
motor
= 63grs
y
r = 9mm
J
m
=
mr
2

2
J
m
= (
(0,021kg)(9,81)(0,009)
2

2
) = 8,5051x10
(7)
Nm
2
5.6. INDUCTANCIA L
Se realizo un experimento en el cual se aplico un escalon de 3.88V a la armadura
y se adquirieron los datos con un osciloscopio con capacidad de memoria la respuesta
al escalon aparece en la gura 4 y los datos correspondientes al escalon aparecen
en el cuadro 2.
Se tiene que el modelado resulta como un circuito RL por lo cual queda de la
siguiente forma:
L
di
dt
+ Ri = u
Aplicando Laplace tenemos:
9
t ocsiloscopio voltaje tiempo
-0.05416 0 0
-0.05412 0.04 4.00E-05
-0.05408 0.16 8.00E-05
-0.05404 0.4 0.00012
-0.054 0.76 0.00016
-0.05396 1.28 0.0002
-0.05392 1.76 0.00024
-0.05388 2 0.00028
-0.05384 2.16 0.00032
-0.0538 2.32 0.00036
-0.05376 2.48 0.0004
-0.05372 2.6 0.00044
-0.05368 2.76 0.00048
-0.05364 2.88 0.00052
-0.0536 3 0.00056
-0.05356 3.16 0.0006
-0.05352 3.28 0.00064
-0.05348 3.4 0.00068
-0.05344 3.52 0.00072
-0.0534 3.68 0.00076
-0.05336 3.76 0.0008
-0.05332 3.88 0.00084
Cuadro 2: Parametros obtenidos experimentalmente
Figura 5: Respuesa al escalon de 3.88 v
RI(s)

1 +
Ls
R

= U(s)
10
Donde R I(s) es el voltaje en la resistencia
V R(s)
As nuestratra funcion de transferencia es:
V
R
(s)
/
U(s)
=
R
/
(R + Ls)
Por fracciones parciales:
C(s) =
1
s

1
s +
R
L
Por lo cual c (t) es:
c(t) = 1 e
t/(
L
R
)
Donde la constante de tiempo resulta ser

e
=
L
R
Es bien conocido que para un sistema de primer orden como este cuando

e
= t
c(t) alcansa el
63,2 %
del valor del escalon:
c(
e
) = 1 e
1
= 0,632
As buscamos el valor correspondiente al
63,2 %
del escalon
c(
e
) = (0,632) (3,88) = 2,45216
ya que este valor no aprece en el cuadro 2 se toman los dos datos mas proximos
por encima y por debajo de este valor y se hizo una interpolacion:
t = 0,0004
v = 0,16v

e
= 0,00036s + (2,45216 2,32) v
t
v
= 0,393ms = 0,000393s
Por lo tanto se tiene que:
L =
e
R = (0,393ms) (7,37) = 2,8941mH
11
6. FUNCI

ON DE TRANSFERENCIA
G(s) =
(s)
U(s)
Se aplico la transformada de la place a la ecuacion uno y dos con condiciones
iniciales igual a cero resulta:
(3) LsI (s) + RI (s) + k
e
(s) = U(s)
(4) J
m
s (s) + b
m
(s) = k
m
I(s)
Eliminando I(s) podemos obtener la siguiente funcion de transferencia a lazo
abierto, donde la velocidada de rotacion es la salid y el voltaje es la entrada.

V
=
Km
(Js + b)(Ls + R) + Km
2
Sustituyendo los parametros encontrados que se muestran en el cuadro 3 tenemos
la funcion de transferencia mostrada en la ecuacion 5
Parametro Valor Unidad
Resistencia interna R 7.37 Ohms
Inductancia de la aradura L 2.8941 mH
Constante de fuerza electromotriz ke 0.0353071 v/(rad/s)
Inercia del rotor del motor Jm 7.9461*10-6 Kg*m2
Constante de friccion viscosa del motor bm 16.7932*10-6 N*m/(rad/s)
Constante de par de el motor Km 0.03074 N*m/a
Cuadro 3: Parametros del motor obtenidos experimentalmente

V
=
0,03074
2,461x10
009
s
2
+ 6,317x10
006
s + 0,001069
7. DETERMINACI

ON DE LAS
CONSTANTES kp y Ti
Kp y Ti se determinaron en simulink mediante el siguiente diagrama como lo muestra
la gura 6. La ganancia proporcional Kp=0.17 y la ganancia proporcional ki=3 y el
tiempo de muestreo es de 0.1 s y la graca de estas ganacias obtenidas se muestra
12
Figura 6: Diagrama a bloques del control
Figura 7: Respuesta de los parametros kp y Ti
en la siguiente gura 7.
2
1 float tetha_deseada = 0;
2
Estudiantes de ingenieria mecatronica 8 semestre
13
2 float tetha_real = 1;
3 float u_control1 = 9;/ sal_motor
4 float u_control2 = 45;/sal -motor2
5
6 void setup () {
7 pinMode(u_control1 ,OUTPUT);
8 pinMode(u_control2 ,OUTPUT);
9
10 Serial.begin (9600);
11 TCCR2B = TCCR2B & 0b000 | 0x07; / configuracion de pwm a 30
hz
12 TCCR5B = TCCR5B & 0b000 | 0x05;
13
14 }
15
16 void loop() {
17 float ref , sensor , ang_d , ang_r , error , dt=0 , error_i
=0,control1=0,control2 =0;
18 ref=analogRead(tetha_deseada);
19 ang_d=ref *270/1024;/ referencia medida en agrados dada una
resolucion de 1024 bits
20
21 sensor= analogRead(tetha_real);
22 ang_r=sensor *270/1024;/ angulo real
23
24
25
26 float kp;
27 float ki;
28
29 error=ang_d -ang_r;
30 error_i=error + error_i;
31 kp =0.17*( error);
32 ki=3* error_i;
33 control1=kp+ki;
34 if(ref >sensor)
35 {
36
37 analogWrite(u_control1 ,control1);
38
39 }
40 else
41 {
42
43 analogWrite(u_control2 ,-control1);
44
45 }
46
47
48 Serial.print(control1 *5/270); / imprime el valor para
14
la visualizacion en hyper terminal
49 Serial.print(" ");
50 / Serial.print(control2 *5/270);
51 Serial.print(" ");
52 Serial.print(ang_d);
53 Serial.print(" ");
54 Serial.print(ang_r);
55 Serial.print(" ");
56 Serial.print(error);
57 Serial.print(" ");
58 Serial.println(dt);
59 delay (100);
60 }
8. RESULTADOS
Como se puede apreciar en la imagen el control se representa con la lnea verde
que es muy parecida a la del error nadamas que amplicada y la posicion de refe-
rencia y la de angulo real se representan con las lneas negro y azul de las cuales se
obtuvieron del potenciometro acoplado al motor y el pot de referencia y por ultimo
el error que es la lnea roja que esto es la resta entre la posicion de referencia y el
angulo como lo muestra la gura 8.
Figura 8: Graca de la posicion de motor de cd en matlab
Como se puede observar en la gura 9 la referencia respecto del angulo real
estan desfasadas un tiempo de 0.1 s esto es debido al tiempo que le lleva al angulo
real en llegar en esa posicion que le manda la referencia y como se puede observar
el tiempo es muy corto de lo cual se concluye que nuestro control del motor es
correcto.
15
Figura 9: Graca de la referencia vs angulo real en matlab
Figura 10: Graca de la se nal de control vs error en matlab
Con el presente codigo se logro gracar la posicion del motor
1 close all
2 clear all
3 clc
4 load datos1.txt
5 syms t
6 u_control= datos1 (: ,1);
7 ref= datos1 (: ,2);
8 posicion= datos1 (: ,3);
9 error= datos1 (: ,4);
10 plot(u_control *270/5 ,g)
11 hold on
12 plot(ref ,k)
13 legend ()
14 hold on
15 plot(posicion ,b--)
16 hold on
17 plot(error ,r)
16
18 hold on
19 legend(u_control ,referencia ,angulo real ,error )
20 figure ()
21 hold on
22 plot(posicion ,b--)
23 hold on
24 plot(ref ,k)
25 legend(angulo real ,referencia )
26 figure ()
27 plot(u_control *270/5 ,g)
28 hold on
29 plot(error ,r)
30 legend(control ,error )
17
Referencias
[1] http://e-ducativa.catedu.es/44700165/aula/archivos/repositorio//4750/4926/html/13controladordeaccinproporcionaleintegralpi.html
[2] Sistemas de control en tiempo discreto, Katsuhiko Ogata, segunda edicion,
ISBN 968-880-539-4
[3] V. M. Hernandez y H. Sira-Ramrez Psition control of an Inertia-Spring DC-
motor System witout Mechanical Sensors. Experimental Results, presented at
the 40th IEEE Conference on Decision and Control, pp. 1386-1391. Orlando
USA. Dec. 2001.
[4] J. Holtz, Sensorless Position Control of Induction Motor-An Emerging Tech-
nology, IEEE Trans. Ind. Electronics, Vol. 45, pp. 840-851, Dec. 1998.
3
9. ANEXOS
9.1. CONVERSI

ON DE CONTINUO A DISCRETO
El primer paso en el dise no de un sistema de control discreto es convertir
la funcion de transferencia continua a una funcion de transferencia discreta. el
comando matlab c2dm lo hara para ud. c2dm requiere los siguiente cuatro ar-
gumentos: el polinomio numerador (num), el polinomio denominador (den), el
tiempo de muestreo (ts) y el tipo de mantenedor. en este ejemplo, usaremos el
mantenedor de orden cero (zoh).
Del requerimiento de dise no, hagamos el tiempo de muestreo, ts igual a 0.12
segundos, lo cual es 1/10 de la constante de tiempo de un sistema con un tiem-
po de establecimiento de 2 segundos. creemos un nuevo archivo-m e ingrese los
siguientes comandos:
1 r=7.37;
2
3 l=0.0028941;
4
5 ke =0.0353071
6
7 j=8.505*10^ -7;
8
9 km =0.03074;
10 b=16.7932*10^ -6;
11 num=[km]
12 den=[j*l j*r+b*l b*r+(km^2)]
13 t=tf(num ,den)
3
Estudiantes de ingenieria mecatronica 8 semestre
18
14
15 Ts = 0.12;
16 [numz ,denz] = c2dm(num ,den ,Ts ,zoh )
Luego de ejecutado este archivo-m debe devolver lo siguiente:
1 numz =
2
3 0 25.5658 0.0232
4
5
6 denz =
7
8 1.0000 -0.1104 0.0000
De estas matrices, la funcion de transferencia discreta puede escribirse como:

V
=
25,5658z + 0,0232
z
2
0,1104z + 0,0000
Primero, nos gustara vea como se ve la respuesta del sistema a lazo cerrado
sin ning un control. Si aprecia la matriz numz arriba, esta tiene un cero adicional
al principio, tenemos que librarnos de el antes de cerrar el lazo con el comando
matlab cloop. agregue el siguiente codigo al nal de su archivo-m:
1 numz = [numz (2) numz (3)];
2 [numz_cl ,denz_cl] = cloop(numz ,denz);
Luego de hacerlo, observemos como se ve la respuesta a lazo cerrado al
escalon . el comando dstep generara el vector de se nales de salida discreto y el
comando stairs las conectar a. Agregue el siguiente codigo de matlab al nal del
archivo-m anterior y ejec utelo nuevamente.
1 [x1] = dstep(numz_cl ,denz_cl ,101);
2 t=0:0.12:12;
3 stairs(t,x1)
4 xlabel(Tiempo (segundos) )
5 ylabel(Velocidad (rad/s) )
6 title(Respuesta tipo escalera :Original )
Debera verse la gura siguiente:
Pero se obtuvo la siguiente gura:
19
Figura 11: Respuesta al escalon del sistema
Figura 12: Respuesta al escalon del sistema del motor modelado
9.2. ESPECIFICACIONES DE ARDUINO 2560
El Arduino Mega 2560 es una placa electronica basada en el microprocesador
Atmega2560 ( hoja de datos) . Lleva 54 entradas / salidas digitales (de los cuales
15 pueden utilizarse para salidas PWM ) , 16 entradas analogicas, 4 UARTs
(puertas seriales ), un oscilador de 16MHz , una conexion USB , un conector de
alimentacion , un header ICSP y un boton de reset. Contiene todo lo necesario
para apoyar el microcontrolador ; basta con conectarlo a un ordenador con un
cable USB , o alimentarla con un adaptador o la bater

Aa para empezar de
CA a CC . La Mega es compatible con la mayor

Aa de los shield para Arduino


Duemilanove o Diecimila . La Mega 2560 es una actualizacion de la Arduino
Mega , al que sustituye . El Mega2560 diere de todas las placas anteriores ya
que no utiliza el chip controlador de USB a serial FTDI . En su lugar , ofrece
las ATmega16U2 ( ATmega8U2 en la revision del 1 y la revision 2 tableros)
programado como convertidor USB a serie. Revision 2 de la junta Mega2560
tiene una resistencia tirando de la l

Anea 8U2 HWB a tierra, por lo que es


mas facil de poner en modo DFU. Revision 3 de la placa tiene las siguientes
20
Figura 13: Arduino mega 2560
Voltaje de funcionamiento 5V
Voltaje de entrada ( recomendado) 7 -12V
Voltaje de Entrada (l

Amites ) 6 -20V
Digital I / O Pins 54 (de los cuales 15 proporcionan salida PWM )
Entrada analogica pines 16
Corriente continua para las E / S Pin 40 mA
Corriente de la CC para Pin 3.3V 50 mA
Memoria Flash de 256 KB
Velocidad de reloj 16 MHz
Cuadro 4: Microcontroladores ATmega2560
caractersticas nuevas : 1.0 pinout : a nadido pines SDA y SCL cerca al pin
AREF y otros dos nuevos pernos colocados cerca del pin RESET, el IOREF
que permiten a los escudos para adaptarse al voltaje suministrado desde la
pizarra . En el futuro , los escudos seran compatibles tanto con la tarjeta que
use el AVR , que operan con 5V y con el Arduino Debido que operan con 3.3V
. El segundo es un pin no esta conectado, que se reserva para usos futuros .
Circuito de rearme fuerte . ATmega 16U2 sustituir el 8U2 .
10. ESPECIFICACIONES PUENTE H L293D
Este circuito integrado es uno de los mas populares puentes H de estado
solido, puede controlar dos motores de corriente directa y puede entregar has-
ta 1A por canal, ideal para todo tipo de proyectos de rob

Otica, muy

Util y
facil de controlar tiene entradas con nivel TTL y es compatible con cualquier
Microcontrolador incluyendo placas de desarrollo Arduino.
Especicaciones
Total de pines: 16
21
Canales: 2
Marca: ST
Control de motores: Pasos y DC
Diodos internos: Si
Encapsulado: DIP
22

You might also like