Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
115 vistas26 páginas

Guide Lab 3 CP 2021 2

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1/ 26

Universidad de Ingeniería y Tecnología

Department of Electrical Engineering

Lab of Process Control N° 03


Instructors: Arturo Rojas
Ayrton Nieves, Frank Salazar

Lab 3: LQR Control


Team members:
Jim Fabian
Bruno Mixan
Marko Puchuri

Lima, Peru
2021 – 2
Lab 3 – LQR Control

Linear Quadratic Regulator (LQR) Control

1. Objectives
Design LQR control systems
Implement LQR control systems

2. Hardware and Software


No Description Quantity
1 Plants [10] 1
2 Quarc software for Matlab 1
3 1
4 1

3. Procedure

1. Simulation using Simulink of the simultaneous control of pendulum support and


pendulum positions of the rotary inverted pendulum (Use LQR control). For the
reference signal for theta use a signal generator with a square wave with a
frequency of 0.125 Hz. In one graph show the response of theta, alpha and the
control force.

En la Figura 1 se muestra el código que contiene los parámetros, las matrices de estado y
el LQR control. También, está incluido la gráfica simulink que se utiliza para la simulación
junto con los valores obtenidos del LQR control.

clear all; close all; clc;


%% Motor
% Resistance
Rm = 8.4;
% Current-torque (N-m/A)
kt = 0.042;
% Back-emf constant (V-s/rad)
km = 0.042;
%
%% Rotary Arm
% Mass (kg)
Mr = 0.095;
% Total length (m)
Lr = 0.085;
% Moment of inertia about pivot (kg-m^2)
Jr = Mr*Lr^2/12;
% Equivalent Viscous Damping Coefficient (N-m-s/rad)
Dr = 0;%0.0015
%
%% Pendulum Link

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

% Mass (kg)
Mp = 0.024;
% Total length (m)
Lp = 0.129;
% Moment of inertia about pivot (kg-m^2)
Jp = Mp*Lp^2/12;
% Equivalent Viscous Damping Coefficient (N-m-s/rad)
Dp = 0; % O 0.0005
% Gravity Constant
g = 9.81;
%
%% State-Space Model
% Find Total Inertia
Jt = Jr*Jp + Mp*(Lp/2)^2*Jr + Jp*Mp*Lr^2;

% State Space Representation


A = [0 0 1 0;
0 0 0 1;
0 Mp^2*(Lp/2)^2*Lr*g/Jt -Dr*(Jp+Mp*(Lp/2)^2)/Jt -Mp*(Lp/2)*Lr*Dp/Jt;
0 Mp*g*(Lp/2)*(Jr+Mp*Lr^2)/Jt -Mp*(Lp/2)*Lr*Dr/Jt -Dp*(Jr+Mp*Lr^2)/Jt];

B = [0; 0; (Jp+Mp*(Lp/2)^2)/Jt; Mp*(Lp/2)*Lr/Jt];


C = eye(4,4);
D = zeros(4,1);

% Add actuator dynamics


B = kt * B / Rm;
A(3,3) = A(3,3) - kt*kt/Rm*B(3);
A(4,3) = A(4,3) - kt*kt/Rm*B(4);
% A=[0 0 1 0;0 0 0 1;0 149.2751 -0.0104 0; 0 261.6091 -0.0103 0];
% B=[0;0; 49.7275; 49.1493];
%eig(A), tiene un integrador
% Load into state-space system
rp_sys = ss(A,B,C,D);
%%
Q = [5 0 0 0;0 1 0 0;0 0 1 0;0 0 0 20]; R = [1];
[K] = lqr(A,B,Q,R);

Figura 1: Código para la simulación con sus parámetros y el simulink

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

En las siguientes imágenes se muestra la simulación en simulink del control LQR con los
parámetros mostrados anteriormente.

Imagen 1: Muestra todas las señales: thetha, alpha, la señal de referencia y la ley de
control.

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 2: Muestra la señal de referencia y theta.

Imagen 3: Ley de control

Imagen 4: Alpha

2. Implement the LQR control of the rotary inverted pendulum. Use a signal generator
with a square wave for reference with a frequency of 0.125 Hz and an amplitude of
1 (The square signal goes from 1 to -1). Control specifications required: percent
overshoot < 4%, settling time < 3 s and steady state error < 4%. Show the response of
theta, alpha and the control force. (Hint: Use the q_qube_bal_lqr.slx as a
reference).

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 5: Esquema en Simulink

Con el fin de poder cumplir con las especificaciones, se realizaron 4 intentos. Se obtuvo
mejor resultado en el cuarto intento. En la imagen 5 se puede apreciar el diagrama que se
utilizó en Simulink. Este estaba ya pre realizado en los archivos dados para este
laboratorio. Se hicieron dos cambios, se agregó un saturador y la ganancia luego del
generador de señal.

Los valores de las matrices Q y R se fueron modificando a medida que nos acercábamos a
una respuesta con especificaciones aceptables. A continuación se muestran los parámetros
de las matrices, el número del intento en cuestión y la respuesta en dicho caso.

Cabe resaltar que, en todos los intentos, los gráficos del comportamiento de los vectores
de control, así como el ángulo del péndulo, han sido los esperados. En primer lugar, el
vector de control se encargaba de dar el voltaje respectivo para que el péndulo pueda
mantenerse equilibrado, por lo que este varía en 1.5 y -1.5 voltios. En segundo lugar,
debido al método LQR, el ángulo del péndulo tenía como referencia 0, siendo esta la razón
por la que se mantenía en equilibrio.

Primer intento:
Para este intento se utilizaron las matrices Q y R de la simulación de la primera consigna.
● Matrices
○ Q = [5 0 0 0;0 1 0 0;0 0 1 0;0 0 0 20]
○ R = [1];
● Parámetros de desempeño
○ % Overshoot: 37.9 %
○ Error en estado estacionario: No hay
○ Tiempo de establecimiento: No hay

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 6: Qube en equilibrio

Imagen 7: Scope mostrando el ángulo theta la referencia de este (Posición del brazo)

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 8: Scope mostrando el ángulo alpha (péndulo)

Imagen 9: Scope mostrando el voltaje entregado, o vector de control

Segundo intento:
Para este intento se modificaron las matrices Q y R intuyendo lo que pasaría.
● Matrices
○ Q = [300 0 0 0;0 1 0 0;0 0 0.0001 0;0 0 0 100]
○ R = [11];
○ K = [-5.2223 50.2214 -2.0160 5.3439]
● Parámetros de desempeño
○ % Overshoot:

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

■ Referencia de 10: 25.3 % (arriba)


■ Referencia de -10: 8.5 % (abajo)
○ Error en estado estacionario:
■ Referencia de 10: 12.75 % (arriba)
■ Referencia de -10: menor 4 % (abajo)
○ Tiempo de establecimiento: menor a 2 segundos

Imagen 10: Scope mostrando el ángulo theta la referencia de este (Posición del brazo)

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 11: Scope mostrando el ángulo alpha (péndulo)

Imagen 12: Scope mostrando el voltaje entregado, o vector de control

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Tercer intento:
Para este intento se modifica R intuyendo lo que pasaría en función al segundo intento.
Subieron los porcentajes de las especificaciones, por lo que subir el valor de R no era lo
correcto.

● Matrices
○ Q = [300 0 0 0;0 1 0 0;0 0 0.0001 0;0 0 0 100]
○ R = [15];
○ K = [-4.4721 44.2148 -1.7363 4.6343]
● Parámetros de desempeño
○ % Overshoot:
■ Referencia de 10: 29.1 % (arriba)
■ Referencia de -10: 10 % (abajo)
○ Error en estado estacionario:
■ Referencia de 10: 20 % (arriba)
■ Referencia de -10: menor 4 % (abajo)
○ Tiempo de establecimiento: menor a 2 segundos

Imagen 13: Qube en equilibrio

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 14: Scope mostrando el ángulo theta la referencia de este (Posición del brazo)

Imagen 15: Scope mostrando el ángulo alpha (péndulo)

Imagen 16: Scope mostrando el voltaje entregado, o vector de control


Cuarto intento:

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Para este intento se modifican Q y R intuyendo lo que pasaría en función al tercer intento.
Subieron los porcentajes de las especificaciones, por lo que subir excesivamente el valor
de R y Q no era lo correcto.

● Matrices
○ Q = [5300 0 0 0;0 1 0 0;0 0 0.001 0;0 0 0 100]
○ R = [50];
● Parámetros de desempeño
○ % Overshoot:
■ Referencia de 10: 30.3 % (arriba)
■ Referencia de -10: 25.6 % (abajo)
○ Error en estado estacionario:
■ Referencia de 10: No se puede sacar, no llega a 10 +- 1%
■ Referencia de -10: No se puede sacar, no llega a 10 +- 1%
○ Tiempo de establecimiento: menor a 3 segundos

Imagen 17: Qube en equilibrio

Imagen 18: Scope mostrando el ángulo theta la referencia de este (Posición del brazo)

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 19: Scope mostrando el ángulo alpha (péndulo)

Imagen 20: Scope mostrando el voltaje entregado, o vector de control


Quinto intento:
Para este intento se modifican Q y R intuyendo lo que pasaría en función al cuarto intento.
Al restar y agregar ceros, se logró una mejor respuesta en comparación a los demás
intentos.

● Matrices
○ Q = [1000 0 0 0;0 1 0 0;0 0 0.00001 0;0 0 0 100]
○ R = [10];
● Parámetros de desempeño
○ % Overshoot:
■ Referencia de 10: 12.4 % (arriba)
■ Referencia de -10: 10.45 % (abajo)
○ Error en estado estacionario:
■ Referencia de 10: 8.9 %
■ Referencia de -10: 6.2 %
○ Tiempo de establecimiento: 1.772 seg (a 6.2 % de error abajo)

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 21: Qube en equilibrio

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 22: Scope mostrando el ángulo theta la referencia de este (Posición del brazo)

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 23: Scope mostrando el ángulo alpha (péndulo)

Imagen 24: Scope mostrando el voltaje entregado, o vector de control

3. Compare the implementation developed in 2 with the Simulink simulation


performed in 1. Show both block diagrams. Explain the control specifications
(percent overshoot, steady state error and settling time) of each one.

Utilizando los valores de las matrices Q y R como se muestran a continuación:

Q = diag([1000 1 0.00001 100]); R = [10];

Se realizará la comparación de las respuestas obtenidas tanto para la simulación como para
la implementación de los apartados [1] y [2].

Simulación en el apartado [1]:

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Figura 25: Código para la simulación con sus parámetros y el simulink

Respuesta de theta para la simulación:

Imagen 26: Muestra la señal de referencia y theta.

Implementación en el apartado [2]:

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 27: Código para la implementación con sus parámetros en Simulink

Imagen 28: Respuesta de theta para la implementación

Cuadro comparativo de las respuestas:

Parámetro Simulación Implementación (Intento 5)

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

OS 3.75% 10.45%

Ess 0% 6.2%

Tiempo de establecimiento 1.63 segundos 1.772 segundos

Podemos ver cómo en la simulación el porcentaje de sobre impulso se mantiene bajo los
parámetros especificados (<4%), mientras que en la implementación esto varía
considerablemente. En la implementación, además, existe un error en estado estacionario
del 6.2%, mientras que en la simulación esto no ocurre. Los tiempos de establecimiento de
ambos casos, sin embargo, parecen estar bastante cerca, aunque el de la simulación sigue
siendo menor al de la implementación.

4. Explain how the swing up algorithm q_qube_swing_up.slx works. This algorithm


implements the swing-up control of the rotary inverted pendulum. Explain the
function of each block and how the program is able to control the pendulum.

La idea del control basado en energía se fundamenta en el principio de preservación de la


energía en sistemas ideales: la suma de la energía cinética y potencial es constante. La
energía en la práctica, sin embargo, no es constante debido a la fricción que actúa como
amortiguador en la oscilación. Es posible estimar la pérdida de energía, la cual puede ser
usada para hallar un controlador que realice el “swing up” del péndulo.En la siguiente
imagen se muestra el simulink del archivo mencionado.

Imagen 29: Simulink del archivo “q_qube_swing_up.slx”

En las siguientes imágenes se muestran las señales obtenidas al momento de implementar


el swing up.

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 30: Señal de Pendulum

Imagen 31: Señal del rotary arm

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 32: Señal del Pendulum energy

Imagen 33: Señal del motor de voltaje

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Imagen 33: Simulink del swing up

En la última imagen mostrada, se observa cuadros marcados en los bloques de simulink, las
cuales serán utilizadas para explicarlos. En la siguiente tabla se hace un resumen de lo que
significa cada bloque marcado.

1 Convierte la cuenta de los encoders en radianes del rotary arm y pendulum

2 Crea en una matriz los valores del péndulo en X = [theta, alpha, theta_dot,
alpha_dot].

3 Convierte de radianes a grados sexagesimales los valores del soporte y péndulo.

4 Convierte el torque en voltaje para mantener el sistema estable.

5 Ley de control cuando el soporte no es estable dentro del rango ± 20 grados.


Ganancia de [-2 35 -1.5 3].

6 El control de equilibrio se habilitará cuando el péndulo esté dentro de ± 20


grados. Cuando no está habilitado, el control de balanceo está activado. Por lo
tanto, el Switching puede ser descrito por u=-K*x

7 Cuando el rango esté fuera de ± 20 grados, conmuta la dirección del motor de la


base.
Tabla 1: Explicación de los ítems marcados.

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

4. Observations
- Este laboratorio, para el trial and error de las matrices Q y R, se necesitaba de una
persona que levantara el péndulo y ver su comportamiento. Por este motivo, para
este laboratorio, hubiese sido mejor tener un asesor más o poder hacerlo como
parte de los laboratorios presenciales. Así, podíamos tener más intentos y conseguir
estar en el rango que pedías de los parámetro de desempeño.

5. Conclusions
- Se logró realizar la simulación utilizando Simulink del control simultáneo del
soporte del péndulo invertido rotatorio y la posición del mismo implementando un
control de tipo LQR. Los parámetros utilizados y las respuestas tanto de la salida
final como de la ley de control se obtuvieron satisfactoriamente.
- Se realizó la implementación del algoritmo de control LQR anteriormente simulado
de forma remota para controlar el péndulo rotatorio invertido en tiempo real, se
tuvieron que realizar varios ajustes de los parámetros de control (las matrices Q y
R) para lograr el control óptimo que se nos pedía como requerimiento.
- En cuanto a la comparación de la simulación realizada en el apartado [1] y la
implementación realizada en el apartado [2], se concluye que si bien los valores de
las matrices Q y R pueden controlar el sistema en la simulación, estos deben
sintonizarse con mayor precisión en la práctica. Las respuestas a la simulación y la
implementación se mostraron diferentes dados los mismos parámetros de Q y R. La
respuesta en la implementación demostró tener un porcentaje de sobre impulso
mayor, error en estado estacionario y un mayor tiempo de estabilización.
- Se explicó el algoritmo “swing_up.slx”, el cual implementa el control swing up del
péndulo rotatorio invertido. Asimismo, en el apartado [4] se explicaron de forma
detallada la función que realizan cada uno de los bloques y cómo es que el
programa es capaz de controlar el péndulo.

References
1. Plant manuals [10]
2. Document: PIR Modelo.pdf
3. Document: QUBE-Servo State Space Workbook (Instructor).pdf

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Evaluation Rubric

Competence b1: Capacity for designing and developing experiments (level 1).

Course: Feedback Control Systems Semester: 1


Application
Activity: Lab 3 LQR Control 5-6
weeks:
Student (last and
Period 2021-2
first names)
The student
The student receives Elaborated & Ayrton Nieves, Frank
10/2021 hands in the 10/2021
the rubric on applied by Salazar
report on
Evaluation Documents
Laboratory: X Workshop Project: Work: Others

Unaccep-
EVALUATION CRITERIA Very good Good Fair
table
TEST
Student will take a test about the before laboratory

LAB EXPERIMENTS – REPORT


Simulink simulation of the simultaneous control of pendulum support
and pendulum positions of the rotary inverted pendulum.
Implement the LQR control of the rotary inverted pendulum. Use a
signal generator with a square wave for reference.
Compare the implementation of 2 with the Simulink simulation of the
simultaneous control of pendulum support and pendulum positions of
the rotary inverted pendulum.
Explain the q_qube_swing_up.mdl file used to implement the swing-up
control of the rotary inverted pendulum.
WORKTEAM REPORT
Responding the questions on time and with good
speaking, writing, orthography, semantics, clear and
concise ideas, images and suitable schemes.
STUDENT ATTITUDE

Total Grade

Comments on the student:

Universidad de Ingeniería y Tecnología - UTEC


Lab 3 – LQR Control

Dimension Very good Good Fair Unacceptable


Test It recognizes and Recognizes and exposes Recognizes and It does not
exposes, in a clear and the theoretical concepts exposes only some recognize or use
synthetic way, the on which the proposed of the concepts, concepts or
theoretical concepts on objectives are based and presenting theories in the
which the proposed those on which the problems in work to be done.
objectives are based and practical experience to be understanding and /
those on which the carried out is based. or explaining them.
practical experience to
be carried out is based.

Lab The procedures to be The procedures to be The procedures to It does not


experimen followed in the followed in the be followed in the identify, describe,
t laboratory practice are laboratory practice are laboratory practice or list the
clearly and precisely described and listed; and are described and procedures to be
described and listed; and these are coherent to listed. followed in the
these are the optimal achieve the objectives laboratory
ones to achieve the and account for the practice.
objectives and account subject matter analyzed.
for the subject matter
analyzed.
Workteam Reports and explains in a Reports and explains the Reports and Only reports and
report synthetic and clear way obtained objectives, partially explains exposes
all the obtained recognizing potentialities the proposed objectives.
objectives, recognizing and limitations of the objectives, not
the potential and work done. recognizing
limitations of the work potentialities and
done. limitations of the
work done.

Student He/She is 100% engaged He/She is 50% engaged in He/She is 20% He/She is not
attitude in the session lab, in the the session lab, in the engaged in the cooperative,
material and is 100% material and is 50% session lab, in the optimistic, or
enthusiastic about enthusiastic about material and is not constructive.
learning, He/She is able learning, not about enthusiastic about He/she is not
to learn from mistakes getting a particular grade. learning. Rarely, responsible and
and seeks improvement. He/She could learn from he/she could learn do not care about
mistakes and might seeks from mistakes and learning.
improvement. might seeks
improvement.

Universidad de Ingeniería y Tecnología - UTEC

También podría gustarte