Professional Documents
Culture Documents
DOCENTE:
CONTROL AUTOMATICO IV
ING. LUCY ANGELA DELGADO BARRA
PENDULO INVERTIDO
Arequipa Per
2013
2
RESUMEN
Presentamos el diseo e implementacin del pndulo invertido
basado
controlador
PID.
El
sistema
es
capaz
de
mantener
el
equilibrio.
se realizar el diseo de una estrategia de control usando la
herramienta de Matlab de tal forma que actuando sobre el carrete
de impresora
consigamos
present
the
design
and
implementation
of
the
inverted
3
ndice general
1 Introduccin
1.1
1.2
1.3
1.4
1.5
Marco Teorico
Descripcin del problema
Objetivos
Restricciones del problema
Diagrama de bloques
4
5
7
8
8
9
2.
Diseo
del
sistema
2.1. Diseo angular
10
11
13
5. Construccin
del
pndulo
invertido
1 Introduccin
Un
mecanismo
prcticas
muy
como
utilizado
proyectos
hoy
de
en
da
para
investigacion
realizar
es
el
tanto
pendulo
invertido.
El sistema mas comun es el que esta compuesto por un carro que
se mueve libremente a lo largo de un eje y una barra que pende
de l.
El proyecto propone el uso no slo de un control clsico sobre
el sistema, sino una combinacin de diferentes estrategias como
el control PID de ganancia programada lazo cerrado.
Si se considerase un sistema real, para poder mover el carro,
este
se
conecta
conectada
al
mediante
motor,
una
este
cinta
motor
va
de
a
transmision
que
proporcionar
un
est
par
sentido,
direcciones
sistema.
que
haciendo
es
lo
que
que
la
se
cinta
pretende
se
mueva
controlar
en
con
ambas
este
en
un
extremo
en
bidimensionalmente, todo
el
otro
esto va
un
eje
que
montado sobre
puede
pivotar
un carro
que
objeto de estudio.
El
inters
es
porque
el
modelo
matemtico
para
el
pndulo
la
generadores.
demostracin
manual el pndulo en la
consista
en
situar
de
forma
su posicin, el
sobre
control, adems
perturbaciones
aeronave,
que
de probar
nuevos
en
el
vuelo
de
una
por
ejemplo,
el
pndulo
invertido
simula
la
de
los
robots
6
invertido,
la
estructura
de
un
robot
humanoide
puede
que
la
masa
de
la
barra
rgida
de
longitud
es
el
suelo
al
centro
de
masas
del
humanoide,
el
Figura 1. 2 Segway
7
1.2.
de
ecuaciones
matemticas.
Por
consiguiente,
invertido,
servomotor
combinado.
Para
Inicio
Pndulo
invertido
Ecuaciones matemticas
Variables
de estado
Mtodo de identificacin
Posicin
1.3. Objetivos
Velocidad
Estabilida
2.
Valores Reales
%---------------------------R=1.447e3;
P=(13.96:0.01:14.89)*1E3;
10
vcc=5.13;
% fuente de alimentacion
Ra=4.93e3;
Rb=2.16E3;
%---------------------------%
DIVISOR DE TENSION
%---------------------------Vin=vcc*R./(P+R);
%---------------------------%
APAM AMPLIFICADOR
%---------------------------G=(1+Ra/Rb)
V1=Vin*G;
%---------------------------%
OPAM RESTADOR
%---------------------------V2=vcc;
Vo=V2-V1;
%---------------------------%
Graficas
%---------------------------plot(P/1E3,Vo)
grid on
title('Vo(R)')
xlabel('R(Kohm)')
ylabel('Vo')
%---------------------------%
Cambio a Angulo
%---------------------------angle=0.1935.*P-2701;
figure
plot(angle,Vo)
grid on
title('Vo(Angle)')
xlabel('angle()')
11
ylabel('Vo')
Vo(Angle)
3.66
3.64
Vo
3.62
3.6
3.58
3.56
3.54
0
20
40
60
80
100
120
angle()
140
160
180
200
750
740
730
720
710
700
690
680
10
20
30
40
50
60
70
80
90
100
12
719
718
717
716
715
714
713
712
711
710
709
10
20
30
40
Agrego resitencia
de 100k
tambin
14148
un
diodo
50
60
paralelo al
de
alta
70
80
90
100
condensador de
velocidad,
para
100uF,
evitar
la
646
644
642
640
638
636
634
632
630
628
10
20
30
40
50
60
70
80
90
100
13
636
635
634
633
632
631
630
629
628
20
40
60
80
100
120
140
160
180
200
% casi es cero
kd=250;
Tc=250;
Limite superior de
pwm = 50ms
Proporcional E(k)
100
Pro [ e(kt) ]
-100
-200
-300
10
15
20
n(kt)
25
Integral E(k)
20
35
40
Derivativo Y(k)
300
200
100
D[ y(kt) ]
Int[ e(kt) ]
30
-20
0
-100
-40
-200
-60
10
15
20
n(kt)
25
30
35
40
-300
10
15
20
n(kt)
25
30
35
40
14
120
0.3
0.2
110
e(kt)
y(kt)
0.1
100
90
0
-0.1
-0.2
80
70
-0.3
0
10
15
20
n(kt)
25
30
35
-0.4
40
10
15
20
n(kt)
25
30
35
40
400
200
u(kt)
0
-200
-400
-600
10
15
20
n(kt)
25
30
35
40
10
15
20
25
30
35
40
120
100
80
60
40
20
Resultados obtenidos:
15
Proporcional E(k)
400
300
Pro [ e(kt) ]
200
100
0
-100
-200
-300
10
15
20
n(kt)
25
Integral E(k)
100
30
35
40
Derivativo Y(k)
400
D[ y(kt) ]
Int[ e(kt) ]
200
50
0
-200
-400
-50
10
15
20
n(kt)
25
30
35
-600
40
120
10
20
n(kt)
25
30
35
40
30
35
40
0.6
110
15
0.4
0.2
90
e(kt)
y(kt)
100
80
70
-0.2
60
50
10
15
20
n(kt)
25
30
35
-0.4
40
10
15
20
n(kt)
25
800
600
u(kt)
400
200
0
-200
-400
-600
10
15
20
n(kt)
25
30
35
40
25
30
35
40
Yk
120
100
Angulo
80
60
40
20
10
15
20
n(kt)
16
Kp=4.43
Obtuve buenos resultados en la parte de fuerza pero aun sigue
siendo brusca por la parte derivativa.
Analisis de graficas para deteccin de error
Proporcional E(k)
150
100
Pro [ e(kt) ]
50
0
-50
-100
-150
10
15
20
n(kt)
25
Integral E(k)
30
40
100
10
D[ y(kt) ]
Int[ e(kt) ]
35
Derivativo Y(k)
200
20
-100
-10
-20
30
10
15
20
n(kt)
25
30
35
40
-200
10
15
20
n(kt)
25
30
35
40
17
110
0.3
100
0.2
90
0.1
80
70
-0.1
60
-0.2
50
10
15
20
n(kt)
25
0.4
e(kt)
y(kt)
120
30
35
-0.3
40
10
15
20
n(kt)
25
30
35
40
400
300
u(kt)
200
100
0
-100
-200
-300
10
15
20
n(kt)
25
30
35
40
25
30
35
40
Yk
120
100
Angulo
80
60
40
20
10
15
20
n(kt)
muestra
29,
por
lo
que
la
parte
derivarita
quiso
dar
la
seal
de
salida
entrega
mejor
estabilidad
al
18
NUEVO VALOR PARA Kd
Reducire el valor de kd en ; manteiendo el valor de kp en 4.43.
Proporcional E(k)
150
100
Pro [ e(kt) ]
50
0
-50
-100
-150
10
15
20
n(kt)
25
Integral E(k)
30
D[ y(kt) ]
Int[ e(kt) ]
0
-10
0
-20
-40
-20
0
10
15
20
n(kt)
25
30
35
-60
40
120
10
15
20
n(kt)
25
30
35
40
30
35
40
0.3
0.2
110
0.1
e(kt)
100
y(kt)
40
20
10
90
80
0
-0.1
-0.2
70
60
35
Derivativo Y(k)
40
20
-30
30
-0.3
0
10
15
20
n(kt)
25
30
35
-0.4
40
10
15
20
n(kt)
25
200
u(kt)
100
-100
-200
10
15
20
n(kt)
25
30
35
40
proporciona
un
movimiento
rotativo
que
emparejado
con
19
function y=CapturaRS232()
%-------------------------------------------------------------------%
Inicializacion de Puertos Seriales
%-------------------------------------------------------------------PS=serial('COM4');
% Definicion del Puerto a Usar
set(PS,'Baudrate',9600);
% se configura la velocidad a 9600
Baudios
set(PS,'DataBits',8);
% define numero de bits
set(PS,'StopBits',2);
% se configura bit de parada a uno
set(PS,'Parity','none');
% Sin paridad
set(PS,'FlowControl','none');
% Sin control de hardware, o
software to
% Send (RTS) and Clear to Send
(CTS) pins to control data flow.
%
warning('off','MATLAB:serial:fscanf:unsuccessfullRead')
%-------------------------------------------------------------------%
Configuracion de Entrada y Salida de Bits
%-------------------------------------------------------------------set(PS,'Terminator','CR/LF');
% c caracter con que finaliza el
envo
set(PS,'OutputBufferSize',1);
% n es el nmero de bytes a
enviar
set(PS,'InputBufferSize' ,1);
% n es el nmero de bytes a
recibir
%-------------------------------------------------------------------% Programa Principal
%--------------------------------------------------------------------
fopen(PS);
tx='S';
fprintf(PS,'%c',tx);
f0=fscanf(PS,'%c');
% Borra solo para simulacion
% f1=fscanf(PS,'%d');
% Capturo Centenas
f2=fscanf(PS,'%d');
% Capturo Decenas
f3=fscanf(PS,'%d');
% Capturo Unidades
f4=fscanf(PS,'%d');
% Capturo Unidades
AN0=f2*100+f3*10+f4;
% Restauro valor.
y=90+1.8179*(AN0-415);
clc
%-------------------------------------% Cerrando el puerto
%-------------------------------------fclose(PS)
delete(PS)
clear PS
20
IMPLEMENTACION
21
Comunicacin pc
22
velocidad
fuerza
son
kp
kd,
por
lo
tanto
debemos