Laboratorio 3.2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

Laboratorio de Control II

GUÍA DE LABORATORIO 3.2

Curso: Control II
Escuela: Ingeniería Mecatrónica
Semestre: 2024-II
Semana: 13
Resultado del estudiante: Conocimientos de Ingeniería (A)

1. RESULTADOS DE APRENDIZAJE

Implementa y Analiza Controladores de Espacio Estado

2. PRODUCTO ACADÉMICO

Video demostrativo.

3. RECURSOS PARA EMPLEAR

Software MatLab

Software Arduino IDE

4. FUNDAMENTO TEÓRICO

4.1. Implementación de Sistemas de Control Digital

La utilización de sistemas de tiempo real es clave en la implementación de sistemas de


control digital.

A continuación, se muestra el código considerado para implementar un sistema de control


digital en el dispositivo Arduino UNO, haciendo uso de la interrupción por desbordamien-
to del Timer 2 como sistema de tiempo real.

1 Ing. Edgar André Manzano Ramos


Laboratorio de Control II

void s e t u p ( ) {
// D e s h a b i l i t a i n t e r r u p c i o n e s g l o b a l e s
SREG= (SREG & 0 b01111111 ) ;
// Limpia e l r e g i s t r o de c o n t e o
TCNT2=0;
// H a b i l i t a i n t e r r u p c i o n Timer 2
TIMSK2 = TIMSK2 | 0 b00000001 ;
// C o n f i g u r a f r e c u e n c i a de r e l o j ( Ts=2.04ms)
TCCR2B = 0 b00000101 ;
// H a b i l i t a i n t e r r u p c i o n e s g l o b a l e s
SREG = (SREG | 0 b10000000 ) ;
}

void l o o p ( ) {
}

ISR (TIMER2_OVF_vect) {
// En e s t a s e c c i o n s e i n s e r t a e l A l g o r i t m o de C o n t r o l
}

Para insertar el algoritmo de control se necesitará resolver las ecuaciones de diferencia del
sistema completo. Como se ha de entender, se necesitará la utilización de un estimador
para obtener el valor de todas las variables de estado.

El gráfico anterior se representa perfectamente la utilización de la Ley de Control y del


Estimador.

2 Ing. Edgar André Manzano Ramos


Laboratorio de Control II

Donde se tiene la Ley de Control:


u = −Kx̂ (1)
Además de la siguiente ecuación para los estados estimados:

x̂˙ = Ax̂ + Bu + L(y − Cx̂) (2)

Hay que recordar que nosotros consideramos generalmente una referencia (r), por lo que
la Ley de Control se expresaría realmente de la siguiente manera:

u = KCT r − Kx̂ (3)


Claro está que las ecuaciones deberán resolverse para un sistema discreto (ecuaciones de
diferencia):
x̂(k + 1) = Gx̂(k) + Hu(k) + Ld (y(k) − Cx̂(k)) (4)
u(k) = Kd CT r − Kd x̂(k) (5)

5. INSTRUCCIONES DE LA EXPERIENCIA

La experiencia se centra en el control del modelo dinámico para la posición angular de un


motor DC.

Paso 1: Simular la Planta

1. Simular la planta tanto en MatLab como Simulink.

2. Definir el tiempo de muestreo con el cuál se trabajará, se recomienda utilizar un


valor de 2.04 ms, tal como se detalla en el código del Fundamento Teórico.

La planta estaría determinada por la ecuación de espacio estado discreto:

x̂(k + 1) = Gx̂(k) + Hu(k) (6)


y(k) = Cx̂(k) (7)
Donde G y H, se obtienen de discretizar las matrices de estado en tiempo continuo (uti-
lizando el tiempo discreto considerado).

Paso 2: Diseñar el controlador discreto

1. Determinar los polos discretos deseados, estos se obtienen discretizando los polos
continuos deseados utilizando Tustin:

pd = eTs pc (8)

Donde pd es el polo discreto, pc es el polo continuo, y Ts es el tiempo de muestreo.

2. Diseñar un controlador discreto. Se sugiere no considerar ganancias de control muy


elevadas (> 100).

3. Simular el sistema controlado en MatLab y Simulink.

3 Ing. Edgar André Manzano Ramos


Laboratorio de Control II

Se solicita que el sistema presente las siguientes características para su respuesta al escalón:

Tiempo de establecimiento menor a 1s.

Porcentaje de sobrepico máximo menor al 20 %.

Error en estado estacionario menor al 20 % de la señal de referencia

Como resultado se tendrá la matriz de ganancias del controlador (Kd).

Paso 3: Diseñar el observador

1. Determinar los polos del observador del sistema con el controlador discreto (2 a 6
veces más los polos del controlador).

2. Obtener la matriz de ganancias del observador (Ld) mediante el algoritmo de posi-


cionamiento de polos.

3. Simular el sistema completo (planta + controlador + observador) en Simulink para


verificar su correcto funcionamiento.

Paso 4: Determinar el algoritmo de control

Para este propósito se deberá resolver las ecuaciones de diferencia matriciales (4) y (5)
del Fundamento Teórico. Para el caso de los estados, se tendrá lo siguiente:

x̂(k + 1) = Mx̂(k) + Hu(k) + Ld y(k) (9)

Donde:
M = G − Ld C (10)
En el caso de la señal de control, no habrá cambios:

u(k) = Kd CT r − Kd x̂(k) (11)

En nuestro caso se tratan de 2 variables de estado, considerando la primera también


como nuestra salida (x1 = y), las ecuaciones de diferencias serían las siguientes:

x̂1 (k + 1) = m11 ∗ x̂1 (k) + m12 ∗ x̂2 (k) + h1 ∗ u(k) + l1 ∗ y(k) (12)

x̂2 (k + 1) = m21 ∗ x̂1 (k) + m22 ∗ x̂2 (k) + h2 ∗ u(k) + l2 ∗ y(k) (13)
Donde

m11, m12, m21 y m22 son elementos de la matriz M.

h1 y h2 son elementos de la matriz H

l1 y l2 son elementos de la matriz Ld

4 Ing. Edgar André Manzano Ramos


Laboratorio de Control II

Así también, la ecuación (8) se resolvería de la siguiente manera:

u(k) = k1 ∗ (r(k) − x̂1 (k)) − k2 ∗ x̂2 (k) (14)

Donde k1 y k2 son elementos de la matriz Kd

Paso 5: Implementar el código del controlador

Considerando las ecuaciones (9), (10) y (11); se tendría el siguiente código (para un
controlador en particular):

int r =0;
int y=0;
int x1 =0;
int x2 =0;
int xn1 =0;
int xn2 =0;
int u=0;

void s e t u p ( ) {
pinMode ( 9 ,OUTPUT) ;

// C o n f i g u r a c i o n de l a I n t e r r u p c i o n
SREG=SREG & 0 b01111111 ;
TCNT2=0;
TIMSK2=TIMSK2 | 0 b00000001 ;
TCCR2B=0b00000101 ; // Ts=2.04ms
SREG=SREG | 0 b10000000 ;
}

void l o o p ( ) {
}

ISR (TIMER2_OVF_vect) {
r=analogRead ( 0 ) ;
y=analogRead ( 1 ) ;

u =5.8451∗( r−x1 ) −67.0839∗ x2 ;

i f ( u<0) {
u=0;
}
i f ( u>1020) {
u=1020;
}

analogWrite (9 , u / 4 ) ;

5 Ing. Edgar André Manzano Ramos


Laboratorio de Control II

xn1 =0.0831∗ x1 +1.7438∗ x2 +0.9158∗ y +0.0011∗ u ;


xn2 = −0.1222∗ x1 +0.8826∗ x2 +0.121∗ y +0.0012∗ u ;
x1=xn1 ;
x2=xn2 ;
}

6. RESULTADOS ESPERADOS DE LA EXPERIENCIA

1. Diseño del Controlador Discreto por Posicionamiento de Polos digital (DLQR), es-
to deberá incluir una simulación en MatLab, con las características mencionadas
solicitadas. (4 puntos)

2. Diseño del Estimador basado en posicionamiento de polos, esto deberá incluir una
simulación en Simulink del sistema completo, con las características mencionadas
solicitadas. (6 puntos)

3. Implementación del Controlador Digital en Arduino UNO, con las características


mencionadas solicitadas. (8 puntos)

7. TEST DE COMPROBACIÓN

¿Cuál es la diferencia entre las resultados obtenidos tanto en MatLab, Simulink e


Implementación? ¿A qué se deben? (2 puntos)

6 Ing. Edgar André Manzano Ramos

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy