INFORME PENDULO INVERTIDO

26
FACULTAD DE CIENCIAS E INGENIERIAS FISICAS Y FORMALES PROGRAMA PROFESIONAL DE INGENIERÍA ELECTRÓNICA CONTROL AUTOMATICO IV DOCENTE: ING. LUCY ANGELA DELGADO BARRA PENDULO INVERTIDO TRABAJO PRESENTADO POR: MARTIN VALENCIA ALEJO TERESA BRUCE ARREDONDO EDUARDO ROQUE ORTEGA Arequipa – Perú

Transcript of INFORME PENDULO INVERTIDO

Page 1: INFORME PENDULO INVERTIDO

FACULTAD DE CIENCIAS E INGENIERIAS FISICAS Y FORMALES

PROGRAMA PROFESIONAL DE INGENIERÍA ELECTRÓNICA

CONTROL AUTOMATICO IVDOCENTE:

ING. LUCY ANGELA DELGADO BARRA

PENDULO INVERTIDO

TRABAJO PRESENTADO POR:

MARTIN VALENCIA ALEJO

TERESA BRUCE ARREDONDO

EDUARDO ROQUE ORTEGA

Arequipa – Perú

2013

Page 2: INFORME PENDULO INVERTIDO

2

Page 3: INFORME PENDULO INVERTIDO

3

RESUMEN

Presentamos el diseño e implementación del péndulo invertido

basado controlador PID. El sistema es capaz de mantener el

equilibrio.

se realizará el diseño de una estrategia de control usando la

herramienta de Matlab de tal forma que actuando sobre el carrete

de impresora consigamos en un primer momento la estabilidad

del péndulo partiendo de un estado de reposo y posteriormente

mantener la verticalidad del mismo.

ABSTRACT

We present the design and implementation of the inverted

pendulum based PID controller. The system is able to maintain

balance.

The design of a control strategy will be performed using the

Matlab tool so that acting on the spool printer get at first the

stability of the pendulum starting from a state of rest and then

maintain the same verticality.

PALABRAS CLAVE

Control péndulo invertido, Modelado, Sintonizacion, simulación,

controlador PID. Matlab

KEYWORDS

Controlling inverted pendulum, modeling, tuning, PID controller,

simulation y Matlab

Page 4: INFORME PENDULO INVERTIDO

4

Índice general

1 Introducción 4

1.1 Marco Teorico

1.2 Descripción del problema

1.3 Objetivos

1.4 Restricciones del problema

1.5 Diagrama de bloques

5

7

8

8

9

2. Diseño del

sistema

2.1. Diseño angular

2.2. Prueba conexión Opam con ADC pic

2.3. Pruebas de sintonización

10

11

13

3. Construcción

del péndulo

invertido 3.1 materiales a usar

Page 5: INFORME PENDULO INVERTIDO

5

1 Introducción

Un mecanismo muy utilizado hoy en dıa para realizar tanto

prácticas como proyectos de investigacion es el 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 sólo de un control clásico sobre

el sistema, sino una combinación 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 mediante una cinta de transmision que está

conectada al motor, este motor va a proporcionar un par

proporcional a la tensión de control aplicada, dependiendo de la

polaridad de esta tensión se consigue que le motor gire en uno u

otro sentido, haciendo que la cinta se mueva en ambas

direcciones que es lo que se pretende controlar con este

sistema.

Page 6: INFORME PENDULO INVERTIDO

6

1.1. MARCO TEORICO

El sistema de péndulo invertido, es un problema clásico en la

ingenieria de control, el cual consiste en una varilla con una

masa en un extremo y en el otro un eje que puede pivotar

bidimensionalmente, todo esto va montado sobre un carro que

puede moverse longitudinalmente.

El primer péndulo invertido fue diseñado en los años setenta y

casi cuarenta años después permanece en los laboratorios como

objeto de estudio.

El interés es porque el modelo matemático para el péndulo

invertido presenta ciertas analogías con modelos de procesos más

complejos, tales como los generadores.

Inicialmente, la demostración consistía en situar de forma

manual el péndulo en la posición vertical invertida, soltarlo

luego y que de forma autónoma, realimentando su posición, el

péndulo continuase en la posición invertida mediante la adecuada

actuación sobre el carro.

APLICACIONES DEL PÉNDULO INVERTIDO

A pesar de que el péndulo es utilizado principalmente, para

demostrar conceptos sobre control, además de probar nuevos

controladores, tiene diferentes aplicaciones tales como:

1. Las perturbaciones que existen en el vuelo de una

aeronave, pueden desestabilizar su vuelo, esto se puede

corregir con el péndulo invertido.

2. Los sistemas robóticos pueden comportarse como un péndulo

invertido, por ejemplo, el péndulo invertido simula la

dinámica de un brazo robótico cuando el centro de presión

cae sobre el centro de gravedad, en ese momento el sistema

se vuelve inestable. Este tipo de problemas pueden ser

modelados con el péndulo, y de esta forma aumentar la

probabilidad de un buen funcionamiento

Page 7: INFORME PENDULO INVERTIDO

7

3. El control de la postura y la caminata de los robots

bípedos, puede ser modelado y controlado por el péndulo

invertido, la estructura de un robot humanoide puede

asemejarse a la de un péndulo invertido como el de la

figura 1.1. La semejanza se establece en que la masa del

humanoide (m) se concentra en el punto extremo del péndulo

y que la masa de la barra rígida de longitud l es

despreciable respecto de la masa, siendo l la distancia

desde el suelo al centro de masas del humanoide, el

movimiento en la base del péndulo simula la caminata en el

bípedo.

Figura 1. 1 Semejanza entre el péndulo invertido y

un bípedo

4. El transportador personal Segway (fig.1.2), es básicamente

un sistema péndulo invertido montado en un vehiculo de

transporte, este es el primer dispositivo de transporte

con auto balanceado. El ordenador y los motores situados

en la base mantienen el Segway vertical todo el tiempo. El

usuario se debe inclinar hacia la dirección que quiera

tomar (delante, detrás, derecha o izquierda). El motor es

eléctrico, no contaminante y silencioso, alcanzando los 20

km/h.

Page 8: INFORME PENDULO INVERTIDO

8

Figura 1. 2 Segway

1.2. Descripción del problema

Consiste en ajustar los parámetros del sistema combinado

(péndulo invertido - servomotor), por medio de datos en

lugar de ecuaciones matemáticas. Por consiguiente,

muestran el desarrollo del modelo matemático del sistema

péndulo invertido, servomotor y combinado. Para

identificar las ecuaciones y parámetros que describen la

relación del sistema no lineal.

Inicio

Péndulo invertido

Ecuaciones matemáticas

Variables de estado

Método de identificación

Posición Velocidad Estabilidad

Page 9: INFORME PENDULO INVERTIDO

9

1.3. Objetivos

1.4. Restricciones Del Problema

Page 10: INFORME PENDULO INVERTIDO

10

1.5. Diagrama De Bloques

Page 11: INFORME PENDULO INVERTIDO

11

2. Diseño del sistema

2.1. Diseño angular

clc

clear all

close all

%----------------------------

% Valores Reales

%----------------------------

R=1.447e3;

P=(13.96:0.01:14.89)*1E3;

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)')

Page 12: INFORME PENDULO INVERTIDO

12

xlabel('R(Kohm)')

ylabel('Vo')

%----------------------------

% Cambio a Angulo

%----------------------------

angle=0.1935.*P-2701;

figure

plot(angle,Vo)

grid on

title('Vo(Angle)')

xlabel('angle(°)')

ylabel('Vo')

0 20 40 60 80 100 120 140 160 180 2003.54

3.56

3.58

3.6

3.62

3.64

3.66Vo(Angle)

angle(°)

Vo

2.2. Prueba conexión Opam con ADC pic

Angulo de 90°, de bara, se observa mucho ruido

Page 13: INFORME PENDULO INVERTIDO

13

0 10 20 30 40 50 60 70 80 90 100680

690

700

710

720

730

740

750

Se agrego condensador de 100uF, angulo 90°

0 10 20 30 40 50 60 70 80 90 100709

710

711

712

713

714

715

716

717

718

719

Agrego resitencia de 100k paralelo al condensador de 100uF,

también un diodo 14148 de alta velocidad, para evitar la

descarga en el Opam, también se logro mejorar la estabilidad, de

las muestras; se hizo variar el angulo entre 0 y 180 grados.

Page 14: INFORME PENDULO INVERTIDO

14

0 10 20 30 40 50 60 70 80 90 100628

630

632

634

636

638

640

642

644

646

Respuesta de la ultima configuración para solo 90°

0 20 40 60 80 100 120 140 160 180 200628

629

630

631

632

633

634

635

636

2.3. Pruebas de sintonización

Resultados con los valores cálculos del modelamiento matematico:

Cada uno de estos valores se encuentra escalado y las constantes

de tiempo son en (ms).

kp=8.86;

ki=1/1000; % casi es cero

kd=250;

Tc=250; % Tiempo de Muestra para los valores

Page 15: INFORME PENDULO INVERTIDO

15

Limite superior de pwm = 50ms

0 5 10 15 20 25 30 35 40-300

-200

-100

0

100Proporcional E(k)

n(kt)

Pro

[ e

(kt)

]

0 5 10 15 20 25 30 35 40-60

-40

-20

0

20Integral E(k)

n(kt)

Int[

e(k

t) ]

0 5 10 15 20 25 30 35 40-300

-200

-100

0

100

200

300Derivativo Y(k)

n(kt)

D[

y(kt

) ]

0 5 10 15 20 25 30 35 4070

80

90

100

110

120Muestras Tomadas Y(kt)

n(kt)

y(kt

)

0 5 10 15 20 25 30 35 40-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3Señal - Error [ e(kt)=rkt-ykt ]

n(kt)

e(kt

)

0 5 10 15 20 25 30 35 40-600

-400

-200

0

200

400Señal - Control u(kt)

n(kt)

u(kt

)

0 5 10 15 20 25 30 35 400

20

40

60

80

100

120

En busca de una buena sintonización se realizo un cambio de pwm

= 80ms

Page 16: INFORME PENDULO INVERTIDO

16

Resultados obtenidos:

0 5 10 15 20 25 30 35 40-300

-200

-100

0

100

200

300

400Proporcional E(k)

n(kt)

Pro

[ e

(kt)

]

0 5 10 15 20 25 30 35 40-50

0

50

100Integral E(k)

n(kt)

Int[

e(k

t) ]

0 5 10 15 20 25 30 35 40-600

-400

-200

0

200

400Derivativo Y(k)

n(kt)

D[

y(kt

) ]

0 5 10 15 20 25 30 35 4050

60

70

80

90

100

110

120Muestras Tomadas Y(kt)

n(kt)

y(kt

)

0 5 10 15 20 25 30 35 40-0.4

-0.2

0

0.2

0.4

0.6Señal - Error [ e(kt)=rkt-ykt ]

n(kt)

e(kt

)

0 5 10 15 20 25 30 35 40-600

-400

-200

0

200

400

600

800Señal - Control u(kt)

n(kt)

u(kt

)

Page 17: INFORME PENDULO INVERTIDO

17

0 5 10 15 20 25 30 35 400

20

40

60

80

100

120Yk

n(kt)

Ang

ulo

NUEVO VALOR PARA KP

Reduje el valor de kp a la mitad

Kp=4.43

Obtuve buenos resultados en la parte de fuerza pero aun sigue

siendo brusca por la parte derivativa.

Analisis de graficas para detección de error

0 5 10 15 20 25 30 35 40-150

-100

-50

0

50

100

150Proporcional E(k)

n(kt)

Pro

[ e

(kt)

]

0 5 10 15 20 25 30 35 40-20

-10

0

10

20

30Integral E(k)

n(kt)

Int[

e(k

t) ]

0 5 10 15 20 25 30 35 40-200

-100

0

100

200Derivativo Y(k)

n(kt)

D[

y(kt

) ]

Page 18: INFORME PENDULO INVERTIDO

18

0 5 10 15 20 25 30 35 4050

60

70

80

90

100

110

120Muestras Tomadas Y(kt)

n(kt)

y(kt

)

0 5 10 15 20 25 30 35 40-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4Señal - Error [ e(kt)=rkt-ykt ]

n(kt)

e(kt

)

0 5 10 15 20 25 30 35 40-300

-200

-100

0

100

200

300

400Señal - Control u(kt)

n(kt)

u(kt

)

0 5 10 15 20 25 30 35 400

20

40

60

80

100

120Yk

n(kt)

Ang

ulo

La parte proporcional opero muy bien hasta el punto en que se

presento una caída ligera del péndulo que lo saco hasta 71° en

la muestra 29, por lo que la parte derivarita quiso dar

velocidad a la correcion del error generando que el sistema

oscilara.

Nota: de seguir asi tendré que escoger otro tipo de control,

aparte del PID, la mejor opción es el PI+D, puesto que este

deriva la señal de salida y entrega mejor estabilidad al

sistema, cuando el tiempo de los controladores es lento.

NUEVO VALOR PARA Kd

Reducire el valor de kd en ¼; manteiendo el valor de kp en 4.43.

Page 19: INFORME PENDULO INVERTIDO

19

0 5 10 15 20 25 30 35 40-150

-100

-50

0

50

100

150Proporcional E(k)

n(kt)

Pro

[ e

(kt)

]

0 5 10 15 20 25 30 35 40-30

-20

-10

0

10

20

30Integral E(k)

n(kt)

Int[

e(k

t) ]

0 5 10 15 20 25 30 35 40-60

-40

-20

0

20

40Derivativo Y(k)

n(kt)

D[

y(kt

) ]

0 5 10 15 20 25 30 35 4060

70

80

90

100

110

120Muestras Tomadas Y(kt)

n(kt)

y(kt

)

0 5 10 15 20 25 30 35 40-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3Señal - Error [ e(kt)=rkt-ykt ]

n(kt)

e(kt

)

0 5 10 15 20 25 30 35 40-200

-100

0

100

200Señal - Control u(kt)

n(kt)

u(kt

)

3. Construcción del péndulo invertido

3.1 modelado de un motor dc

Un actuador muy común en sistemas de control es el motor DC. El

motor proporciona un movimiento rotativo que emparejado con

engranajes, ruedas y correas es capaz de proporcionar movimiento

de traslación

Page 20: INFORME PENDULO INVERTIDO

20

function y=CapturaRS232()%--------------------------------------------------------------------% Inicializacion de Puertos Seriales%--------------------------------------------------------------------PS=serial('COM4'); % Definicion del Puerto a Usarset(PS,'Baudrate',9600); % se configura la velocidad a 9600 Baudiosset(PS,'DataBits',8); % define numero de bitsset(PS,'StopBits',2); % se configura bit de parada a unoset(PS,'Parity','none'); % Sin paridadset(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 envío set(PS,'OutputBufferSize',1); % ”n” es el número de bytes a enviarset(PS,'InputBufferSize' ,1); % ”n” es el número de bytes a recibir %--------------------------------------------------------------------% Programa Principal%-------------------------------------------------------------------- fopen(PS); % Apertura del Puerto para su Lectura 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

El transmisor está incluido dentro la placa que contiene el decodificador de

para la transmisión por RF

IMPLEMENTACION

Page 21: INFORME PENDULO INVERTIDO

21

Comunicación pc

Page 22: INFORME PENDULO INVERTIDO

22

Convierte los pulsos TTL, producidos por el microcontrolador

en pulsos de protocolos RS232

Circuito traductor con conexión RS232

Conclusion: El sistema de control aun es inestable, por lo que

es necesario cambiar los parámetros de kp, kd y ki; partiendo de

los ya calculados.

Usando la teorica del calculo de PID, se entiende que la parte

de velocidad y fuerza son kp y kd, por lo tanto debemos

enfocarnos en esos dos valores, puesto que ki es casi cero.

Si se reduce Kd, la velocidad agregada a la señal de control

disminuirá y por el momento lo que tengo es, brusquedad en el

movimiento para corregir el angulo del péndulo.

Page 23: INFORME PENDULO INVERTIDO

23

Es necesario reducir primero kp, luego variare la constante kd

si no obtengo buenos resultados de pwm, estos deberían estar

dentro de los limites de 10ms y 80ms, pero por el momento, el

calculo me arroja valores superiores a los 80ms.

Bibliografía

http://alvarounal.blogspot.com/2012/01/sistema-pendulo-

invertido-por-redes.html

http://tesis.ipn.mx/dspace/bitstream/

123456789/7165/1/26.pdf