Ejercicios T2
Ejercicios T2
CONTROL:
ejercicios
y
prácticas
Javier Valls
Pau Salvador
Índice general
***
2 Modelado de sistemas 7
A Sistemas continuos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
B Sistemas discretos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
C Modelado de sistemas físicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
D Soluciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3 Respuesta temporal 19
A Sistemas continuos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
B Sistemas discretos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
C Soluciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5 Diseño de controladores 39
A Sistemas continuos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
B Sistemas discretos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
C Soluciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
II Prácticas 49
1 Implementación de un controlador 51
1
A Decodificación del “encoder” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
B Excitación del motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
C Medida de ángulo y velocidad de giro . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
D El controlador: control directo vs. realimentado . . . . . . . . . . . . . . . . . . . . . 60
3 Control P y PI 71
A Puesta a punto del banco de pruebas . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
B Controlador Proporcional (P) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
C Controlador Proporcional-Integral (PI) . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4 Control PID 75
A Puesta a punto del banco de pruebas . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
B Control P y PI vs. PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
C Implementación del controlador PID . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3
1
Tema
Introducción al Control
Electrónico
***
Ejercicio 1-1
El sistema “G” representa un control de velocidad de rotación
de un motor, donde la entrada, r(t), es la velocidad deseada y la
r(t) c(t)
salida, c(t), la velocidad de rotación alcanzada por dicho motor. G
Si el sistema se excita con la señal r(t) = 2u(t) rps, su respuesta
es c(t) = 2 − 2e−t/τ rps, donde τ = 1 s.
Represente gráficamente la entrada, r(t), y la salida, c(t) del sistema y conteste a las
siguientes preguntas:
5
TEMA 1. INTRODUCCIÓN AL CONTROL ELECTRÓNICO
2.25
2
1.75
1.5
1.25
1
0.75
0.5
.25
0
0 .5 1 1.5 2 2.5 3 3.5 4 4.5 5 t (s)
Ejercicio 1-2
A continuación se presentan las respuestas, c(t), de diferentes sistemas cuando se excitan
con una entrada escalón unitario r(t) = u(t). Indique cuales de ellas corresponden a sistemas
estables o inestables. Justifique su respuesta.
6
2
Tema
Modelado de sistemas
***
A. Sistemas continuos
Ejercicio 2A-1
Utilice las tablas de las transformadas de Laplace y sus teoremas (disponibles en el Tema 2)
para obtener la transformada de las siguientes funciones en el dominio del tiempo, definidas
para t≥0:
1. x1 (t) = 3t 7. y2 (t) = 4te−3t + 5
2. x2 (t) = 7t2 ∂x2 (t)
−3t
8. y3 (t) = 2 +2
3. x3 (t) = 5e ∂t
∫
4. x4 (t) = 4 sin(5t) t
9. y4 (t) = 2x3 (t)dt
5. x5 (t) = 6e−4t cos(10t) 0
Ir a la solución 2A-1
Ejercicio 2A-2
Realice la transformada inversa de Laplace de las siguientes funciones, utilizando las tablas
y sus teoremas (disponibles en el Tema 2).
7
TEMA 2. MODELADO DE SISTEMAS
5 6
1. X1 (s) = 5. X5 (s) =
s2 s2 +4
8 2s + 4
2. X2 (s) = 6. X6 (s) =
s3 s2 + 4s + 13
5 6s + 6
3. X3 (s) = 7. X7 (s) =
s+3 s2 + 2s + 5
5s 4 4
4. X4 (s) = 8. X8 (s) = −
s2 + 4 s s+3
Ir a la solución 2A-2
Ejercicio 2A-3
Para cada una de las siguientes ecuaciones diferenciales, que definen el comportamiento de
diferentes sistemas,
Y (s)
(a) obtenga la función de transferencia en el dominio transformado de Laplace, H(s)= X(s) ;
(d) y escriba la expresión de la salida y(t) con la entrada escalón unitario en función de los
valores ki asignado a los residuos.
∂y(t) ∂ 2 y(t)
1. + 2y(t) = x(t) 3. + 9y(t) = x(t)
∂t ∂t2
∂ 2 y(t) ∂y(t) ∂ 2 y(t) ∂y(t)
2. 2
+4 = x(t) 4. 2
+4 + 13y(t) = x(t)
∂t ∂t ∂t ∂t
Ir a la solución 2A-3
Ejercicio 2A-4
Dadas las funciones X(s) indicadas a continuación, expréselas como suma de fracciones
simples (utilice para ello la función de Matlab residue) y obtenga su transformada inversa
de Laplace utilizando las tablas de transformadas de las señales básicas y teoremas.
40s + 120 6s3 + 70s2 + 738s + 730
1. X1 (s)= 4 3 2 3. X3 (s)= 4
s + 15s + 74s + 120s s + 16s3 + 133s2 + 730s
32s + 96 −3s2 + 12s + 15
2. X2 (s)= 4. X4 (s)=
s4 + 14s3 + 64s2 + 96s s4 + 5s3 + 11s2 + 15s
Ir a la solución 2A-4
8
A. SISTEMAS CONTINUOS
Ejercicio 2A-5
Obtenga la función de transferencia y los valores de los polos y ceros del sistema con reali-
mentación unitaria que se muestra a continuación:
Controlador Planta
R(s) E(s) C(s)
+ Gc (s) Gp (s)
−
s2 + 2s + 4 10
donde Gc (s)= y Gp (s)= .
s s(s + 4)
1. Analice el sistema y escriba la función de transferencia Gf b (s)=C(s)/R(s) en función
de Gc (s) y Gp (s).
2. Utilice la función tf para escribir Gc (s) y Gp (s) y opere de forma directa con las
funciones de transferencias para calcular Gf b (s). Puede que requiera usar la función
minreal para cancelar polos y ceros iguales. Posteriormente, utilice la función zpkdata
para obtener los polos y ceros.
3. Utilice la función tf para escribir Gc (s) y conviértala a objeto ‘zpk’ mediante la función
zpk. Escriba directamente Gp (s) como función ‘zpk’. Opere de forma directa con las
funciones de transferencias para calcular Gf b (s). Puede que requiera usar la función
minreal para cancelar polos y ceros iguales. Posteriormente, utilice la función zpkdata
para obtener los polos y ceros.
Ir a la solución 2A-5
Ejercicio 2A-6
Dado el siguiente sistema realimentado:
Transductor Controlador Planta
R(s) Tr (s) E(s) C(s)
T (s) + Gc (s) Gp (s)
−
Sc (s) Sensor
S(s)
s2 + 2s + 4 10
donde Gc (s)= , Gp (s) = , T (s)=5 y S(s)=2.
s s(s + 4)
1. Escriba la función de transferencia Gf b (s)=C(s)/R(s) en función de Gc (s), Gp (s), T (s)
y S(s).
2. Obtenga mediante Matlab la función de transferencia y los valores de los polos y ceros
del sistema.
Ir a la solución 2A-6
9
TEMA 2. MODELADO DE SISTEMAS
B. Sistemas discretos
Ejercicio 2B-1
Utilice las tablas de las transformadas Z y sus teoremas (disponibles en el Tema 2) para
obtener la transformada de las siguientes funciones en el dominio discreto, definidas para
n≥0:
1. x1 [n] = 4 6. x6 [n] = 1 − 9−n + 2−n sin( π6 n)
2. x2 [n] = 3·n
7. x7 [n] = 4·u[n − 2]
3. x3 [n] = 2·4−n
8. x8 [n] = 5·n·2−n
4. x4 [n] = 2· cos( π5 n)
5. x5 [n] = 2·4−n · cos( π5 n) 9. y1 [n] = x1 [n − 3] + x3 [n − 3]
Ir a la solución 2B-1
Ejercicio 2B-2
Realice la transformada Z inversa de las siguientes funciones, utilizando las tablas y sus
teoremas (disponibles en el Tema 2).
5z z(z − 1/8)
1. X1 (z) = 6. X6 (z) = 2
z−1 z − z/4 + 1/16
4z 3z 3z
2. X2 (z) = 7. X7 (z) = −
(z − 1)2 z − 1 z − 1/3
4z
3. X3 (z) = 3 3
z − 1/4 8. X8 (z) = −
z − 1 z − 1/3
8z
4. X4 (z) = 4
(z − 1/4)2 9. X9 (z) =
(z − 1/5)2
z(z − 1/2)
5. X5 (z) =
z2 − z + 1 10. Y1 (z) = X1 (z)z −2 + X3 (z)z −2
Ir a la solución 2B-2
Ejercicio 2B-3
Dadas las funciones X(z) indicadas a continuación, expréselas como suma de fracciones
simples (utilice para ello la función residuez) y obtenga su transformada Z inversa utilizando
las tablas de transformadas de las señales básicas y teoremas.
384 − 232z −1 + 38z −2
1. X1 (z)=
64 − 56z −1 + 14z −2 − z −3
160 − 108z −1 + 24z −2
2. X2 (z)=
16 − 20z −1 + 8z −2 − z −3
384 + 56z −1 + 4z −2
3. X3 (z)=
192 − 88z −1 + 11z −2 − z −3
Ir a la solución 2B-3
10
B. SISTEMAS DISCRETOS
Ejercicio 2B-4
Obtenga la función de transferencia y los valores de los polos y ceros del sistema con reali-
mentación unitaria que se muestra a continuación:
Controlador Planta
R(z) C(z)
+ Gc (z) D/A Gp (s) A/D
−
1 + 2z −1 − z −2 10
donde Gc (z)= y Gp (s)= .
z −1 (1 − z −1 ) s(s + 4)
1. Obtenga la función de transferencia de la planta, Gp (z), mediante el uso de la función
c2d y periodo de muestreo de Tm =1s.
2. Analice el sistema y escriba la función de transferencia Gf b (z)=C(z)/R(z) en función
de Gc (z) y Gp (z).
3. Utilice la función tf para escribir Gc (z) y opere de forma directa con las funciones de
transferencias para calcular Gf b (z). Puede que requiera usar la función minreal para
cancelar polos y ceros iguales. Posteriormente, utilice la función zpkdata para obtener
los polos y ceros.
4. Utilice la función tf para escribir Gc (z) y conviértala a objeto ‘zpk’ mediante la función
zpk. Escriba directamente Gp (z) como función ‘zpk’. Opere de forma directa con las
funciones de transferencias para calcular Gf b (z). Puede que requiera usar la función
minreal para cancelar polos y ceros iguales. Posteriormente, utilice la función zpkdata
para obtener los polos y ceros.
Ir a la solución 2B-4
Ejercicio 2B-5
Escriba las ecuaciones en diferencia que corresponden a las funciones de transferencia, G(z),
indicadas a continuación.
Y (z) 3 − z −1
1. G(z)= =
X(z) 1 − z −1
Y (z) 3z − 1
2. G(z)= =
X(z) z − 1
Y (z) 2 + z
3. G(z)= =
X(z) z
Y (z) z 2 + 2z − 1
4. G(z)= =
X(z) z(z − 1)
Ir a la solución 2B-5
11
TEMA 2. MODELADO DE SISTEMAS
Ejercicio 2B-6
Escriba las funciones de transferencia, Y (z)/X(z), de las siguientes ecuaciones en diferencia.
x[n] − x[n − 1]
1. y[n]=
T
2. y[n]=T x[n] + y[n − 1]
3. y[n]=x[n] + 4x[n − 1] + 3x[n − 2] − 5y[n − 1] + 3y[n − 2]
Ir a la solución 2B-6
K x
Obtenga la función de transferencia que rela-
ciona el desplazamiento, x, con la fuerza apli-
F
cada, F , en el siguiente sistema mecánico com-
puesto por una masa M , con rozamiento b y
M
un resorte con constante K.
b
Datos: M =10 Kg; b=4 N ·s/m; K=5 N/m.
Ir a la solución 2C-1
Ejercicio 2C-2
Dado el siguiente sistema mecánico compuesto
por una masa M , con rozamiento b y un resorte
con constante K.
K b
1. Calcule la posición de equilibrio l0 .
x0 =l0
2. Obtenga la función de transferencia que M x=x0 +∆x
relaciona el desplazamiento, x, con la
fuerza aplicada, F . F
12
D. SOLUCIONES
Ejercicio 2C-4
Obtenga la función de transferencia linealizada
que relaciona el par fuerza (torque), τ , aplica-
da y el ángulo de desplazamiento, θ, partiendo
del punto de equilibrio θ0 =0◦ . Se supone que
el cable tiene una masa despreciable y longitud
l, la bola tiene una masa m y que el coeficiente θ l
de fricción de la masa con el aire es D.
Datos: l=1.5 m; m=5 Kg; D=3 N ·m·s/rad. m
Ir a la solución 2C-4
Ejercicio 2C-5
Obtenga la función de transferencia linealizada que relaciona el ángulo, θ, con la fuerza
aplicada, Fh , a un brazo pivotante en los puntos de equilibrio indicados en la figura. Suponga
que el brazo tiene una masa despreciable frente a la del motor, que el momento de inercia
del sistema es J = m·r2 , siendo m y r la masa y longitud del brazo, y que el coeficiente de
fricción del motor con el aire es D.
Datos: r=0.3 m; m=200 g; D=0.05 N ·m·s/rad.
Fh
θ
Fh
Ir a la solución 2C-5
D. Soluciones
13
TEMA 2. MODELADO DE SISTEMAS
Solución 2A-1
1. X1 (s) = 3/s2 4 5
7. Y2 (s) = 2
+
(s + 3) s
2. X2 (s) = 14/s3
3. X3 (s) = 5/(s + 3) 28 2
8. Y3 (s) = +
s2 s
4. X4 (s) = 20/(s2 + 25)
10
6(s + 4) 9. Y4 (s) =
5. X5 (s) = s(s + 3)
(s + 4)2 + 100
6. Y1 (s) =
3 3
+ 2−
16 1 − e−sT
s s (s + 5)2 + 16 10. Y5 (s) =
s
Ir a la solución 2A-1
Solución 2A-2
Ir a la solución 2A-2
Solución 2A-3
Y (s) 1 k0 k1
1.a) H(s) = = 1.c) Y (s) = +
X(s) s+2 s s+2
1
1.b) Y (s) = 1.d) y(t) = (k0 + k1 e−2t )u(t)
s(s + 2)
Ir a la solución 2A-3
Solución 2A-4
x1 (t) = [1 + 5e−4t − 16e−5t + 10e−6t ]u(t)
Ir a la solución 2A-4
14
D. SOLUCIONES
Solución 2A-5
Ir a la solución 2A-5
Solución 2A-6
10(s2 + 2s + 4)
2. Hf b (s) =
(s + 12.67)(s2 + 1.329s + 3.157)
Ceros: z1,2 = −1 ± j1.7321
Polos: p1 = −22.37 y p2,3 = −0.81 ± j1.71
Ir a la solución 2A-6
Solución 2B-1
4z z z z
1. X1 (z) = 6. X6 (z) = + +
z−1 z−1 z−1/9 4z−3.5z+1
3z
2. X2 (z) = 4
(z−1)2 7. X7 (z) =
z(z−1)
2z
3. X3 (z) =
z−1/4
5z
2z(z−0.81) 8. X8 (z) =
4. X4 (z) = 2 2(z−1/2)2
z −1.6z+1
8z(4z−0.81) 4 2
5. X5 (z) = 9. X9 (z) = +
16z 2 −6.5z+1 z 2 (z−1) z 2 (z−1/4)
Ir a la solución 2B-1
Solución 2B-2
Ir a la solución 2B-2
15
TEMA 2. MODELADO DE SISTEMAS
Solución 2B-3
Ir a la solución 2B-3
Solución 2B-4
Ceros: z1 = −2.41, z2 = −0.3 y z3 = 0.41
Polos: p1,2 = −0.58 ± j0.44 y p3 = 0.37
Ir a la solución 2B-4
Solución 2B-5
Ir a la solución 2B-5
Solución 2B-6
Y (z) z − 1
1. G(z)= =
X(z) Tz
Y (z) Tz
2. G(z)= =
X(z) z − 1
Y (z) z 2 + 4z + 3
3. G(z)= =
X(z) z 2 + 5z − 3
Ir a la solución 2B-6
Solución 2C-1
X(s) 0.1
1. G(s) = = 2
F (s) s + 0.4s + 0.5
Ir a la solución 2C-1
16
D. SOLUCIONES
Solución 2C-2
X(s) 0.033
1. G(s) = = 2
F (s) s + 0.167s + 0.2
Ir a la solución 2C-2
Solución 2C-3
Θ(s) 4
1. G(s) = = 2
T (s) s + 4s + 24
Ω(s) 4s
2. G(s) = = 2
T (s) s + 4s + 24
Ir a la solución 2C-3
Solución 2C-4
Θ(s) 0.089
1. G(s) = = 2
T (s) s + 0.267s + 1.3
Ir a la solución 2C-4
Solución 2C-5
Θ(s) 16.67
1. G1 (s) = = 2
F (s) s + 2.778s + 16.33
Θ(s) 16.67
2. G2 (s) = = 2
F (s) s + 2.778s − 16.33
Ir a la solución 2C-5
17
TEMA 2. MODELADO DE SISTEMAS
18
3
Tema
Respuesta temporal
***
A. Sistemas continuos
Ejercicio 3A-1
Dados los sistemas de 1er orden con función de transferencia:
C(s) 10 C(s) 20
(a) Ga (s)= = (b) Gb (s)= =
R(s) s + 10 R(s) s + 10
Ir a la solución 3A-1
Ejercicio 3A-2
Dadas las siguientes especificaciones de sistemas de 1er orden:
(a) Ganancia unitaria y Ts = 0.25s
(b) Ganancia 5 y Tr = 0.5s
19
TEMA 3. RESPUESTA TEMPORAL
Ir a la solución 3A-2
Ejercicio 3A-3
Dadas las siguientes funciones de transferencia de sistemas de 2◦ orden:
8 400
(a) Ga (s)= (c) Gc (s)=
s2 + 6s + 8 s2 + 20s + 400
100 25
(b) Gb (s)= (d) Gd (s)=
s2 + 20s + 100 s2 + 25
1. Calcule los polos.
Ir a la solución 3A-3
Ejercicio 3A-4
Dadas las siguientes funciones de transferencia de sistemas de 2◦ orden sub-amortiguados:
25 64
(a) Ga (s)= (b) Gb (s)=
s2 + 7s + 25 s2 + 8s + 64
1. Calcule los valores de su frecuencia natural (ωn ) y del ratio de amortiguamiento (ζ).
2. Calcule los valores de la frecuencia de amortiguamiento exponencial (σd ) y la frecuencia
de oscilación amortiguada (ωd ).
3. Calcule los valores de los parámetros temporales de su respuesta, tiempo de pico (Tp )
y tiempo de establecimiento (Ts ) y el porcentaje de sobreamortiguamiento ( %OS).
Ir a la solución 3A-4
20
A. SISTEMAS CONTINUOS
Ejercicio 3A-5
Dados los siguientes polos correspondientes a funciones de transferencia de sistemas de 2◦
orden sub-amortiguados:
1. Calcule los valores de la frecuencia natural (ωn ) y del ratio de amortiguamiento (ζ) del
sistema.
Ir a la solución 3A-5
Ejercicio 3A-6
Escriba las funciones de transferencia de sistemas de 2◦ orden sub-amortiguados con las
siguientes características:
1. Ganancia g = 1, frecuencia natural ωn = 3rad/s−1 y ratio de amortiguamiento ζ = 0.6.
Compruebe el resultado escribiendo en Matlab la función de transferencia con la función
tf y después utilice la función damp.
2. Ganancia g = 2, frecuencia de amortiguamiento exponencial σd = 2s−1 y frecuencia de
oscilación amortiguada ωd = 3rad/s−1 . Compruebe el resultado calculando la frecuen-
cia natural (ωn ) y ratio de amortiguamiento (ζ) y, posteriormente, usando la función
tf y damp de Matlab, como en el caso anterior.
Ir a la solución 3A-6
Ejercicio 3A-7
Calcule los valores de los polos y obtenga la función de transferencia de un sistema de 2◦
orden sub-amortiguado cuya respuesta al escalón tenga un tiempo de establecimiento (Ts )
de 0.5 segundos y su ratio de amortiguamiento ( %OS) del 4.5 %. Posteriormente, utilice
Matlab para representar gráficamente la respuesta al escalón y compruebe que se consiguen
las especificaciones.
Ir a la solución 3A-7
21
TEMA 3. RESPUESTA TEMPORAL
Ejercicio 3A-8
Dadas las siguientes funciones de transferencia de sistemas de 2◦ orden:
28 8
(a) Ga (s)= (b) Gb (s)=
s2 + 16s + 28 s2 + 6s + 8
1. Calcule sus polos e indique si se pueden aproximar por un sistema de 1er orden con un
polo dominante.
2. Obtenga la expresión, en el dominio del tiempo, de la respuesta de cada sistema al
escalón unitario. Obtenga primero la respuesta al escalón en el dominio de Laplace y,
posteriormente, use la función de Matlab residue y las tablas de la transformada de
Laplace.
Ir a la solución 3A-8
Ejercicio 3A-9
Dadas las siguientes funciones de transferencia de sistemas:
119
(a) Ga (s)=
s3 + 9s2 + 31s + 119
1000
(b) Gb (s)=
s3 + 22s2 + 540s + 1000
160
(c) Gc (s)=
s3 + 8s2 + 56s + 160
848
(d) Gd (s)=
s5 + 24s4 + 211s3 + 798s2 + 1178s + 848
1. Indique de qué orden es el sistema.
2. Utilice la función de Matlab pzmap para representar gráficamente los polos e indique
si se puede aproximar por un sistema de polo dominante. En ese caso indique el tipo
de sistema por el que puede aproximarse.
3. Obtenga la expresión genérica, en el dominio del tiempo, de la respuesta de cada sistema
al escalón unitario y de la respuesta aproximada de polo dominante (en los casos en
que se pueda realizar dicha aproximación).
4. Utilice Matlab para representar gráficamente la respuesta al escalón del sistema y de la
contribución individual de cada polo o polos complejos conjugados. Esto le permitirá
comprobar si la aproximación de polo dominante es correcta o no. Necesitará utilizar
la función de Matlab residue y las tablas de la transformada de Laplace.
Ir a la solución 3A-9
22
B. SISTEMAS DISCRETOS
Ejercicio 3A-10
Dados los sistemas físicos modelados en los ejercicios 2C-1, 2C-2, 2C-3(1), 2C-4 y 2C-5:
1. Indique qué tipo de respuesta genera cada sistema.
2. Calcule el tiempo que tarda en desaparecer la respuesta natural del sistema.
3. Si el sistema tiene una respuesta de orden 2 subamortiguada, calcule la frecuencia de
oscilación amortiguada.
Ir a la solución 3A-10
Ejercicio 3A-11
A un coche de masa m=1000 Kg se le aplica
en t = 0s una fuerza constante de u=500 N . m
u
Teniendo en cuenta que el coeficiente de roza-
miento de la carretera es de b=20 N ·s/m: x
Ir a la solución 3A-11
B. Sistemas discretos
Ejercicio 3B-1
Dados los sistemas de 1er orden discretos muestreados con un periodo de Tm =0.1s y con
función de transferencia:
0.25 2.6
(a) Ga (z)= (b) Gb (s)=
z − 0.75 z − 0.35
1. Obtenga la expresión, en el dominio discreto Z, de la respuesta, C(z), a la entrada
z
escalón unitario, R(z)= z−1 .
2. Obtenga la expresión, en el dominio temporal, de la respuesta, c(n), a la entrada escalón
unitario, r(n)=u(n) .
3. Calcule los parámetros temporales: constante de tiempo (τ ), tiempo de subida (Tr ) y
tiempo de establecimiento (Ts ).
4. Calcule la ganancia utilizando el teorema del valor final de la Transformada Z.
23
TEMA 3. RESPUESTA TEMPORAL
5. Utilice los datos obtenidos anteriormente para dibujar la respuesta temporal al escalón.
Ir a la solución 3B-1
Ejercicio 3B-2
Se quiere diseñar sistemas de 1er orden discretos muestreados con un periodo Tm =0.1s con
las siguientes características:
(a) Ganancia unitaria y Ts =1s
(b) Ganancia 5 y Tr =0.25s
Ir a la solución 3B-2
Ejercicio 3B-3
Dadas las siguientes funciones de transferencia de sistemas discretos de 2◦ con periodo de
muestreo de Tm =0.1s:
4. Obtenga los valores de su frecuencia natural (ωn ) y del ratio de amortiguamiento (ζ).
5. Identifique de qué tipo de sistema de 2◦ orden se trata.
Ir a la solución 3B-3
Ejercicio 3B-4
Dadas las siguientes funciones de transferencia de sistemas discretos de 2◦ orden sub-amortiguados
muestreados con un periodo Tm =0.1s:
24
C. SOLUCIONES
0.66z 0.83z
(a) Ga (z)= (b) Gb (z)=
z2 − 1.32z + 0.49 z2 − 1.66z + 0.74
1. Calcule los valores de su frecuencia natural (ωn ) y del ratio de amortiguamiento (ζ).
2. Calcule los valores de la frecuencia de amortiguamiento exponencial (σd ) y la frecuencia
de oscilación amortiguada (ωd ).
3. Calcule los valores de los parámetros temporales de su respuesta, tiempo de pico (Tp )
y tiempo de establecimiento (Ts ) y el porcentaje de sobreamortiguamiento ( %OS).
4. Utilice la función de Matlab tf para escribir la función de transferencia del sistema y
step para representar gráficamente su respuesta al escalón. Compruebe gráficamente
los parámetros calculados anteriormente y mida el tiempo de subida (Tr ).
Ir a la solución 3B-4
Ejercicio 3B-5
Escriba las funciones de transferencia de sistemas discretos de 2◦ orden sub-amortiguados
con periodo de muestreo Tm =0.1s y que cumplan las siguientes características:
1. Ganancia g = 1, frecuencia natural ωn =4rad/s−1 y ratio de amortiguamiento ζ = 0.8.
Compruebe el resultado escribiendo en Matlab la función de transferencia con la función
tf y después utilice la función damp.
2. Ganancia g = 2, frecuencia de amortiguamiento exponencial σd =3s−1 y frecuencia de
oscilación amortiguada ωd =3rad/s−1 . Compruebe el resultado calculando la frecuencia
natural (ωn ) y ratio de amortiguamiento (ζ) y, posteriormente, usando la función tf y
damp de Matlab, como en el caso anterior.
3. Ganancia g=1, tiempo de pico Tp =0.9s y tiempo de establecimiento Ts =2s. Compruebe
el resultado utilizando la función de Matlab tf para escribir la función de transferencia
del sistema y step para representar gráficamente su respuesta al escalón.
Ir a la solución 3B-5
C. Soluciones
Solución 3A-1
(a) (b)
10 20
1. C(s)= 1. C(s)=
s(s + 10) s(s + 10)
2. c(t)=1 − e−10t 2. c(t)=2 − 2e−10t
3. τ = 0.1, Tr = 0.22 y Ts = 0.4 3. τ = 0.1, Tr = 0.22 y Ts = 0.4
4. g = 1 4. g = 2
Ir a la solución 3A-1
25
TEMA 3. RESPUESTA TEMPORAL
Solución 3A-2
(a) (b)
16 22
1. C(s)= 1. C(s)=
s + 16 s + 4.4
2. Tr = 0.1375 s 2. Ts = 0.9 s
Ir a la solución 3A-2
Solución 3A-3
(a) (b)
(c) (d)
Ir a la solución 3A-3
Solución 3A-4
(a) (b)
Ir a la solución 3A-4
Solución 3A-5
(a) (b)
26
C. SOLUCIONES
Ir a la solución 3A-5
Solución 3A-6
9 26 64
1. G(s)= 2. G(s)= 3. G(s)=
s2 + 3.6s + 9 s2 + 4s + 13 s2 + 8s + 64
Ir a la solución 3A-6
Solución 3A-7
Polos: p1,2 = −8 ± j8.1
129.7
FT: G(s)=
s2 + 16s + 129.7
Ir a la solución 3A-7
Solución 3A-8
Ir a la solución 3A-8
Solución 3A-9
(a) Sist. 3er orden. x(t) = K0 + K1 e−7t + K2 e−t sin(4t + ϕ2 )
Ir a la solución 3A-9
27
TEMA 3. RESPUESTA TEMPORAL
Solución 3A-10
(2C-1) Sist. 2º-orden sub-amortiguado. Ts = 20 s. ωd = 0.68 rad/s
Ir a la solución 3A-10
Solución 3A-11
V (s) 1
1. H(s) = =
U (s) 1000s + 20
2. v(t) = (25 − 25e−0.02t )u(t)
Ir a la solución 3A-11
Solución 3B-1
(a) τ = 0.34s, Ts = 1.39s, T r = 0.76s, y g = 1
Ir a la solución 3B-1
Solución 3B-2
0.32
(a) pz = 0.67s−1 , Ga (z) = y Tr = 0.55s
z − 0.67z −1
2.92
(b) pz = 0.41s−1 , Gb (z) = y Ts = 0.45s
z − 0.41z −1
Ir a la solución 3B-2
Solución 3B-3
(a) (b)
28
C. SOLUCIONES
(c) (d)
Ir a la solución 3B-3
Solución 3B-4
(a) (b)
Ir a la solución 3B-4
Solución 3B-5
0.11z 0.26z 0.13z
1. G(z)= 2. G(z)= 3. G(z)=
z2 − 1.41z + 0.52 z2 − 1.41z + 0.54 z2 − 1.54s + 0.67
Ir a la solución 3B-5
29
TEMA 3. RESPUESTA TEMPORAL
30
4
Tema
Error en estado estacionario
***
A. Sistemas continuos
Ejercicio 4A-1
Dado el siguiente sistema realimentado, calcule, utilizando los métodos que se enumeran, el
error en estado estacionario debido a las entradas escalón (r(t)=u(t)), rampa (r(t)=tu(t)) y
parábola (r(t)= 21 t2 u(t)) para las funciones de transferencia de G(s) indicadas e identifique
de qué tipo de sistema se trata.
Ir a la solución 4A-1
31
TEMA 4. ERROR EN ESTADO ESTACIONARIO
Ejercicio 4A-2
Dado el sistema realimentado del Ejercicio 4A-1, calcule, utilizando los métodos que se enu-
meran, el error en estado estacionario debido a las entradas escalón (r(t)=10u(t)), rampa
(r(t)=10tu(t)) y parábola (r(t)=5t2 u(t)) para las funciones de transferencia de G(s) indica-
das.
1. Realice analíticamente el cálculo utilizando la expresión general del error en estado
s·R(s)
estacionario: es (∞)= lı́ms→0 1+G(s) .
2. Deduzca cómo se han de modificar las fórmulas del error en estado estacionario en
función de las constantes de posición, Kp , velocidad, Kv , y aceleración, Ka , para el
caso de entradas escalón, rampa y aceleración no normalizadas. Realice analíticamente
el cálculo de las constantes Kp , Kv y Ka , y aplique las fórmulas del error en estado
estacionario en función de dichas constantes obtenida con anterioridad.
3. Use Matlab para obtener la expresión de la función de transferencia del sistema reali-
mentado, Gf b (s)= C(s)
R(s) , represente gráficamente la respuesta temporal y mida el error
en estado estacionario.
Ir a la solución 4A-2
Ejercicio 4A-3
Dado el siguiente sistema realimentado que contiene un controlador, Gc (s), y una planta,
24(s+1)
Gp (s) = (s+4)(s+2) , indique cual será la función de transferencia del controlador para que el
sistema realimentado cumpla las especificaciones enumeradas a continuación. Posteriormente,
compruebe el resultado modelando el sistema con Matlab y midiendo el error en estado
estacionario.
Controlador Planta
R(s) E(s) C(s)
+ Gc (s) Gp (s)
−
Ir a la solución 4A-3
Ejercicio 4A-4
Dado el siguiente modelo de sistema realimentado con perturbación que contiene un contro-
lador, Gc (s), y una planta, Gp (s),
32
A. SISTEMAS CONTINUOS
10(s + 1) 10
en el que Gc (s)= y Gp (s)= .
s s + 10
1. Escriba la expresión del error E(s)=R(s)−C(s) en función de Gc (s), Gp (s), R(s) y
D(s). Para ello, 1◦ ) obtenga la función de transferencia Gf b (s)= C(s)
R(s) en función de Gc
y Gp suponiendo que D(s)=0; 2◦ ) obtenga la función de transferencia Gf d (s)= D(s)
C(s)
en
◦
función de Gc (s) y Gp (s) suponiendo que R(s)=0; y 3 ) escriba la expresión de C(s)
en función de Gc (s), Gp (s), R(s) y D(s) aplicando el principio de superposición.
2. Calcule el error en estado estacionario con entrada escalón unidad, r(t)=u(t).
3. Calcule el error en estado estacionario debido al escalón unidad en la perturbación,
d(t)=u(t).
Ejercicio 4A-5
Dado el siguiente modelo de sistema realimentado:
H(s)
s+1 1 40
donde Gc (s) = , Gp (s) = , T (s) = 4 y H(s) = .
s s+4 s + 10
1. Obtenga el modelo equivalente con realimentación unitaria.
2. Indique de qué tipo es el sistema y calcule su error en estado estacionario.
Ir a la solución 4A-5
33
TEMA 4. ERROR EN ESTADO ESTACIONARIO
B. Sistemas discretos
Ejercicio 4B-1
Dado el siguiente sistema discreto realimentado cuyo periodo de muestreo es Tm =0.1s, cal-
cule, utilizando los métodos que se enumeran, el error en estado estacionario debido a las
entradas escalón (r(t)=u(t)), rampa (r(t)=tu(t)) y parábola (r(t)= 12 t2 u(t)) para las funcio-
nes de transferencia de G(z) indicadas e identifique de qué tipo de sistema se trata.
2z 0.5(z−0.8) (z−0.7)2
(a) G(z)= (b) G(z)= (c) G(z)=
(z−0.5)(z−0.75) (z−0.25)(z−1) (z−1)2 (z−0.5)
3. Use Matlab para obtener la expresión de la función de transferencia del sistema reali-
mentado, T (s)= C(s)
R(s) , represente gráficamente la respuesta temporal y mida el error en
estado estacionario.
Ir a la solución 4B-1
Ejercicio 4B-2
Dado el sistema discreto realimentado del Ejercicio 4B-1 cuyo periodo de muestreo es Tm =0.1s,
calcule, utilizando los métodos que se enumeran, el error en estado estacionario debido a las
entradas escalón (r(t)=10u(t)), rampa (r(t)=10tu(t)) y parábola (r(t)=5t2 u(t)) para las
funciones de transferencia de G(z) indicadas.
1. Realice analíticamente el cálculo utilizando la expresión general del error en estado
−1
estacionario: es (∞)= lı́mz→1 (1−z )·R(z)
1+G(z) .
2. Deduzca cómo se han de modificar las fórmulas del error en estado estacionario en
función de las constantes de posición, Kp , velocidad, Kv , y aceleración, Ka , para el
caso de entradas escalón, rampa y aceleración no normalizadas. Realice analíticamente
el cálculo de las constantes Kp , Kv y Ka , y aplique las fórmulas del error en estado
estacionario en función de dichas constantes obtenida con anterioridad.
3. Use Matlab para obtener la expresión de la función de transferencia del sistema reali-
mentado, Gf b (z)= C(z)
R(z) , represente gráficamente la respuesta temporal y mida el error
en estado estacionario.
Ir a la solución 4B-2
34
B. SISTEMAS DISCRETOS
Ejercicio 4B-3
Dado el siguiente sistema discreto realimentado unitariamente como el del Ejercicio 4B-1,
cuyo periodo de muestreo es Tm =0.1s y con las siguientes funciones de transferencia G(z)
en la línea directa.
(a) G(z)=
0.1z 5(z−0.8) z 2 −1.2z+0.36
(b) G(z)= (c) G(z)=
z 2 −1.5z+0.5 z 2 −1.25z+0.25 z 3 −2.5z 2 +2z−0.5
1. Obtenga los polos de G(z) y del sistema realimentado, Gf b (z)= C(z) R(z) , indique si el
sistema es estable o inestable y si es estable deduzca el tipo de sistema.
2. Calcule la constante correspondiente al tipo de sistema y obtenga el error en estacio-
nario relacionado con dicha constante.
3. Use Matlab para representar gráficamente la respuesta temporal y medir el error en
estado estacionario.
Ir a la solución 4B-3
Ejercicio 4B-4
Dado el siguiente sistema discreto realimentado muestrado a Tm =0.1s, que contiene un con-
0.4z
trolador, Gc (z), y una planta, Gp (z) = z−0.8 , indique cual será la función de transferencia
del controlador para que el sistema realimentado cumpla las especificaciones enumeradas a
continuación. Posteriormente, compruebe el resultado modelando el sistema con Matlab y
midiendo el error en estado estacionario.
Controlador Planta
R(z) E(z) C(z)
+ Gc (z) Gp (z)
−
Ir a la solución 4B-4
Ejercicio 4B-5
Controlador Planta
R(z) C(z)
+ Gc (z) D/A Gp (s) A/D
−
35
TEMA 4. ERROR EN ESTADO ESTACIONARIO
1. Calcule el valor de la constante K del controlador para que el sistema sea de tipo 2
con un error en estado estacionario del 10 %.
2. Modele el sistema con Matlab y compruebe el resultado mediante simulación.
Ir a la solución 4B-5
C. Soluciones
Solución 4A-1
Ir a la solución 4A-1
Solución 4A-2
Ir a la solución 4A-2
Solución 4A-3
1. Gc (s) = 3 10
2. Gc (s) =
3s
Ir a la solución 4A-3
Solución 4A-5
C(s) 4s2 +44s+40 2. Sistema tipo 1. erampa (∞)=0.9
1. =
R(s) s3 +10s2 +36s
Ir a la solución 4A-5
Solución 4B-1
36
C. SOLUCIONES
Ir a la solución 4B-1
Solución 4B-2
Ir a la solución 4B-2
Solución 4B-3
(a) Sist. tipo 1 estable (b) Sist. inestable (c) Sist. tipo 2 estable
Polos G: p′1 =1, p′2 =0.5 p′1 =1, p′2 =0.25 p′1 =1, p′2 =1, p′3 =0.5
Ir a la solución 4B-3
Solución 4B-4
1. Gz=4.5
0.5z
2. Gz=
z−1
Ir a la solución 4B-4
Solución 4B-5
1. K=4
Ir a la solución 4B-5
37
TEMA 4. ERROR EN ESTADO ESTACIONARIO
38
5
Tema
Diseño de controladores
***
A. Sistemas continuos
Ejercicio 5A-1
Dadas las siguientes funciones en el dominio de Laplace:
Ir a la solución 5A-1
Ejercicio 5A-2
Dadas las funciones de transferencia indicadas en el Ejercicio 5A-1.
1. Esboce el lugar de las raíces aplicando las reglas de dibujo explicadas en el Tema 5.
2. Utilice la función de Matlab rlocus para comprobar si ha aplicado correctamente las
reglas.
39
TEMA 5. DISEÑO DE CONTROLADORES
Ejercicio 5A-3
Dado el siguiente sistema realimentado que incluye un controlador proporcional y una planta,
cuya función de transferencia se indica a continuación.
Control P Planta
R(s) E(s) C(s)
+ K G(s)
−
2 10 1000
(a) G(s)= (b) G(s)= (c) G(s)=
s+2 (s+1)(s+10) (s+10)(s+20)(s+22)
1. Utilice la función de Matlab rlocus para dibujar el lugar de las raíces del sistema.
2. Analice el resultado e indique las expresiones generales de las respuestas temporales
que se obtendrían en función del valor de la ganancia, K, aplicada.
Ejercicio 5A-4
Se desea diseñar el control de la velocidad de un motor de continua utilizando un controlador
proporcional. A continuación se muestra el esquema del sistema y la función de transferencia
del motor, Gω (s) = VΩ(s)
(s) , que relaciona la velocidad angular obtenida con el voltaje aplicado
al motor.
Control P Motor DC
Vr (s) E(s) 1 Ω(s)
+ K Gω (s)=
− (s + 2)(s + 10)
Para cada una de las siguientes especificaciones sobre la respuesta del sistema:
Ir a la solución 5A-4
40
A. SISTEMAS CONTINUOS
Ejercicio 5A-5
Matlab Se desea diseñar el control de la posición de un motor de continua utilizando un
controlador proporcional. A continuación se muestra el esquema del sistema en el que la
función de transferencia del motor, Gθ (s) = VΘ(s)
(s) , relaciona la posición angular obtenida con
el voltaje aplicado al motor.
Control P Motor DC
Vr (s) E(s) Θ(s)
+ K Gθ (s)
−
Ir a la solución 5A-5
Ejercicio 5A-6
Matlab En este ejercicio se va a explorar la aplicación del control proporcional-integral (PI)
al control de velocidad del motor de continua del ejercicio 5A-4, cuya función de transferencia,
Gω (s)= VΩ(s)
(s) , se muestra en el siguiente esquema. El punto de partida para realizar este
estudio será el de un control proporcional con constante de proporcionalidad Kp =180.
Control PI Motor DC
Vr (s) E(s) Kp (s + zc ) 1 Ω(s)
+
− s (s + 2)(s + 10)
1. Modele el sistema con control proporcional, obtenga sus polos, represente la respuesta
al escalón, mida los parámetros que caracterizan la respuesta y rellene la tabla.
41
TEMA 5. DISEÑO DE CONTROLADORES
2. Modele el sistema con control proporcional-integral y para los valores de los ceros
s=−zc ={−0.5 −1 −1.5 −2}, obtenga sus polos y ceros, represente la respuesta al
escalón, mida los parámetros que caracterizan la respuesta y añádalos a la tabla.
3. Analice los resultados obtenidos e indique cuál cree que es el valor óptimo para la
ubicación del cero del control PI.
Control P PI
zc - 0.5 1 1.5 2
Ceros
Polos
es
Ts
Tp
OS %
Tr
Ejercicio 5A-7
Matlab Diseñe el control de la posición angular de un motor de continua, cuya función
de transferencia se muestra en el esquema, utilizando un controlador proporcional-derivativo
(PD), para que el tiempo de establecimiento sea como máximo de 1.5s y el porcentaje de
sobre-impulso no supere el 10 %.
Control PD Motor DC
Vr (s) E(s) 1 Θ(s)
+ Kp (s + zc )
− s(s + 2)(s + 10)
Ejercicio 5A-8
Matlab Diseñe el control de la posición angular de un motor de continua, cuya función de
transferencia se muestra en el esquema, utilizando un controlador PID, para que el tiempo
de establecimiento sea como máximo de 1.5s, el porcentaje de sobre-impulso no supere el
10 % y el error en estado estacionario a la entrada rampa sea nulo.
42
A. SISTEMAS CONTINUOS
Ejercicio 5A-9
Matlab Dado el siguiente sistema realimentado:
2. Diseñe el controlador PID para que sus ceros cancelen los polos dominantes de la planta.
3. Obtenga los valores de Kp , Ki y Kd del controlador PID para que la respuesta al
escalón tenga un porcentaje de sobreimpulso máximo del 2 %. Mida los parámetros
temporales alcanzados de la respuesta al escalón.
Ejercicio 5A-10
Matlab Dado el siguiente sistema realimentado, obtenga por prueba y error, mediante
simulación, los parámetros Kp , Ti y Td del controlador PID para que el tiempo de pico
sea T p = 0.2s y el porcentaje de sobreimpulso del 20 %. Se recomienda empezar con cada
acción de control por separado y evaluar el efecto que cada acción de control provoca sobre
la respuesta del sistema.
43
TEMA 5. DISEÑO DE CONTROLADORES
B. Sistemas discretos
Ejercicio 5B-1
Dado el siguiente sistema discreto realimentado que incluye un controlador proporcional y
una planta, cuya función de transferencia se indica a continuación y su periodo de muestreo
es Tm =0.1s.
Control P Planta
R(z) E(z) C(z)
+ K G(z)
−
1 1 z+0.75
(a) G(z)= (b) G(z)= (c) G(z)=
z−0.75 z 2 −z+0.09 z 2 −1.25z+0.375
1. Utilice la función de Matlab rlocus para dibujar el lugar de las raíces del sistema.
2. Analice el resultado e indique las expresiones generales de las respuestas temporales
que se obtendrían en función del valor de la ganancia, K, aplicada.
Ejercicio 5B-2
Matlab Dado el siguiente sistema de control realimentado en tiempo discreto, cuyo periodo
de muestreo es Tm =0.1s, obtenga el valor de la constante de proporcionalidad, K, para que
el controlador cumpla cada una de las siguientes especificaciones. Posteriormente, compruebe
mediante simulación que se han cumplido.
Control P Planta
R(z) E(z) 1 C(z)
+ K
− (z−0.25)(z−0.75)
Ejercicio 5B-3
( )
La función de transferencia de un controlador PI discreto es GP I (z)= Kp 1 + TiT(z−1)
mz
,
donde Kp y Ti son las constantes de proporcionalidad y del tiempo de integración, respec-
tivamente, y Tm el periodo( de muestreo.
) Dicha función de transferencia también se puede
z−a
expresar como GP I (z)= K z−1 , donde K es una contante y a es el cero de la función.
44
B. SISTEMAS DISCRETOS
Ejercicio 5B-4
Matlab En este ejercicio se pretende evaluar el efecto en la respuesta al escalón de un sistema
discreto realimentado que incluye un controlador proporcional-integral (PI), modificando la
posición del cero del controlador, zc , y evaluando su respuesta al escalón. Suponga que el
periodo de muestreo es Tm =0.1s.
Control PI Planta
R(z) E(z) z−zc 1 C(z)
+ K
− z−1 (z−0.25)(z−0.75)
Ir a la solución 5B-4
Ejercicio 5B-5
Dado el siguiente sistema discreto realimentado que incluye un controlador proporcional-
z2
derivativo, GP D = K z−a
z , y la planta con función de transferencia Gp (z) = (z−0.5)(z−0.7) .
Calcule el valor del cero, a, y la constante, K, del controlador PD para que el sistema
realimentado tenga dos polos complejos conjugados en zCL = 0.39 ± j0.17. El periodo de
muestreo del sistema es Tm =0.1s.
Control PD Planta
R(z) E(z) z−a C(z)
+ K Gp (z)
− z
Ir a la solución 5B-5
45
TEMA 5. DISEÑO DE CONTROLADORES
Ejercicio 5B-6
Matlab Dado el siguiente sistema discreto realimentado que incluye un controlador proporcional-
derivativo (PD) y cuyo periodo de muestreo es Tm =0.1s.
Control PD Planta
R(z) E(z) z−zc 1 C(z)
+ K
− z (z−0.25)(z−0.75)
Ir a la solución 5B-6
Ejercicio 5B-7
Matlab Diseñe el controlador en el dominio discreto, Gc (z), para realizar el control de
posición de un motor DC. La función de transferencia que relaciona el voltaje aplicado y la
posición angular se muestra en el esquema. Deberá optimizar el controlador para conseguir
el tiempo de establecimiento posible con un porcentaje de sobre-impulso menor al 2 %.
Controlador Motor DC
R(z) 1 Θ(z)
+ Gc (z) D/A A/D
− s(s+2)(s+10)
Ejercicio 5B-8
Matlab Utilizando los métodos que se enumeran posteriormente, diseñe el controlador
proporcional, integral y derivativo (PID) en el dominio discreto, Gc (z), para realizar el control
de velocidad de un motor DC. La función de transferencia que relaciona el voltaje aplicado y
la velocidad angular se muestra en el esquema. El controlador debe conseguir que la respuesta
al escalón tenga un error en estado estacionario nulo, un tiempo de establecimiento menor
o igual a 0.5s y un ratio de amortiguamiento mínimo de ζ=0.7. El periodo de muestreo del
sistema es de Tm =0.1s.
46
C. SOLUCIONES
Controlador Motor DC
R(z) 1 Ω(z)
+ Gc (z) D/A A/D
− (s+2)(s+10)
1. Método del diseño independiente de las acciones de control, empezando por la acción
PI y después la PD.
2. Método del diseño independiente de las acciones de control, empezando por la acción
PD y después la PI.
3. Método de diseño empírico.
C. Soluciones
Solución 5A-1
Ir a la solución 5A-1
Solución 5A-4
Ir a la solución 5A-4
Solución 5A-5
Ir a la solución 5A-5
47
TEMA 5. DISEÑO DE CONTROLADORES
Solución 5B-3
Ir a la solución 5B-3
Solución 5B-4
1. K=0.158
2. zc =0.35; K=0.23
Ir a la solución 5B-4
Solución 5B-5
a=0.32; K=0.92; Ver solución en la presentación del Tema 5 p. 45.
Ir a la solución 5B-5
Solución 5B-6
1. K=0.158;
2. zc =0.35; K=0.23
Ir a la solución 5B-6
48
Parte II
Prácticas
49
Práctica
1
Implementación de un
controlador
***
El objetivo de esta práctica es implementar un controlador digital en un microcontrolador ESP32
para realizar el control de la velocidad de rotación de un motor de DC. La practica se realizará en
en un máximo de 4 sesiones. Por otro lado, el programa que se desarrolle en esta práctica servirá
como base para realizar algunas de las prácticas posteriores.
En cada sesión se irán implementando diferentes partes del controlador. Concretamente, la prác-
tica se divide en 4 partes:
51
Práctica 1. Implementación de un controlador
Para comenzar la práctica hay que descargarse el fichero [Link] (disponible en PoliformaT en
\Recursos\Prácticas) y extraerlo en un directorio del PC en el que realizará la práctica. Dicho fichero
se utilizará para escribir el programa que se realizará a lo largo de las 4 sesiones. Se ejecutará con
el entorno de Arduino.
En cada sección se describirán las acciones que hay que programar. Además, se han añadido
unos cuadros en los que se concretarán dichas acciones separados por la ubicación en la que se deben
programar dentro del programa: tareas, funciones, en el setup o fuera del setup.
En la cabecera del programa están definidos parámetros para posibilitar la activación de sus
diferentes partes. Por ejemplo, si no está comentado “#define ACTIVA_P1X” esto permitirá que
el compilador compile el código que está escrito entre las directivas #ifdef ACTIVA_P1X...#endif.
En el cuadro mostrado a continuación se ilustra su funcionamiento.
// Declaración de parámetro
#define ACTIVA_P1X
...
// Programa
#ifdef ACTIVA_P1X
#endif
52
A. DECODIFICACIÓN DEL “ENCODER”
B
A B
A
Fase 0 1 2 3 0 1 2 3 0
El esquema del software que hay que implementar se muestra en la figura 1.2. Está formado por
la rutina de atención a las interrupciones procedentes de los pines A y B (ISR_enc), una tarea
(task_enc) y una cola (cola_enc). La rutina ISR_enc detecta los cambios en las entradas A y B
y le asigna un valor numérico al código detectado y lo envía a la tarea task_enc a través de la cola.
La tarea task_enc se activa cuando detecta un dato nuevo en la cola, realiza la decodificación del
encoder e incrementa/decrementa un contador que indica el número de giros realizados y, finalmente,
envía dicho valor al puerto serie para visualizarlo mediante el monitor serie. Para que el código quede
más estructurado, las instrucciones de configuración del encoder se programarán en una función y,
posteriormente, dicha función se ejecutará en el setup. Las acciones concretas que hay que programar
se detallan a continuación.
Pin B
ISR_enc cola_enc task_enc
Pin A
53
Práctica 1. Implementación de un controlador
Configuración setup:
Función config_enc:
Rutina ISR_enc:
Tarea task_enc:
54
B. EXCITACIÓN DEL MOTOR
NOTA: Número de pasos para que el eje del motor de una vuelta completa
El factor de reducción del engranaje del motor es de 18.75, es decir, para cada vuelta
completa que dé el eje, el motor tiene que dar 18.75 vueltas.
El factor multiplicativo del encoder es de 64, es decir, para cada vuelta del motor el
encoder genera 64 pasos.
Tarea task_config:
Configuración setup:
55
Práctica 1. Implementación de un controlador
Configuración setup:
Función config_PWM:
56
B. EXCITACIÓN DEL MOTOR
Una vez realizada la configuración del controlador PWM se va a desarrollar una función, deno-
minada task_loopcontr, para excitar el motor y se comprobará su funcionamiento.
La velocidad de giro del motor depende del voltaje que se le aplique. En el caso del motor de
esta práctica el voltaje máximo que se le puede aplicar es de 12 V. Por tanto, a partir del valor del
voltaje pwm_volt, introducido a través del puerto serie, es necesario convertirlo a un valor entero
(pwm_motor) con el que se configure el ciclo de trabajo de la señal PWM. En este caso, debido a
los 8 bits de resolución del controlador PWM, el valor de la variable pwm_volt deberá estar entre
0 y 255, siendo 255 el valor que corresponde con la aplicación de los 12 V.
La función a desarrollar deberá configurar los pines PWM1 y PWM2 del controlador del motor
para que éste gire en el sentido correcto, realizar la conversión al valor entero antes mencionada
y aplicar dicho valor para configurar la señal PWM. Esta función se ejecutará desde una nueva
tarea, denominada task_loopcon, que constituye el lazo principal del controlador: en dicha tarea se
programarán las acciones de control motor.
Para probar el correcto funcionamiento de la función se tendrá que enviar varios valores de
voltajes a través del monitor serie y comprobar que la velocidad del motor aumenta al aumentar el
valor del voltaje y cambia el sentido de giro al cambiar el signo del voltaje.
Función excita_motor:
Tarea task_loopcontr:
Configuración setup:
57
Práctica 1. Implementación de un controlador
// Declaración de parámetro
#define ACTIVA_P1C_MED_ANG
...
// Programa
#ifdef ACTIVA_P1C_MED_ANG
// Código a compilar si ACTIVA_P1C_MED_ANG está definida
#else
// Código a compilar si ACTIVA_P1C_MED_ANG no está definida
#endif
58
C. MEDIDA DE ÁNGULO Y VELOCIDAD DE GIRO
Tarea task_loopcontr:
Tarea task_medidas:
Configuración setup:
59
Práctica 1. Implementación de un controlador
Tarea task_loopcontr:
Tarea task_medidas:
60
D. EL CONTROLADOR: CONTROL DIRECTO VS. REALIMENTADO
Tarea task_config:
Tarea task_loopcontr:
Tarea task_medidas:
61
Práctica 1. Implementación de un controlador
formado por el controlador PWM y el driver del motor (el chip TB9051FTG).
El bloque conversor analógico digital (A/D) convierte a un valor digital la señal que devuelve
el sensor. Lo forman la tarea de decodificación del encoder junto con el algoritmo de medida
de la velocidad.
MICROPROCESADOR (ESP32)
Planta
ωref volt. ω
Controlador D/A Motor DC
Sensor
ωmedida
A/D Encoder
Para valores pequeños del voltaje aplicado el motor no logra girar (está en lo que se denomina
zona muerta). Por ello, para rellenar la posición 2 de la tabla busque el mayor voltaje que no
consiga mover el motor.
Para rellenar la posición 3 elija un valor de voltaje que esté a la mitad del encontrado para la
posición 2 y 2 voltios.
No mida con voltaje 100, rellene dicha medida con el mismo valor medido al excitar el motor con
9 voltios. Si observa las medidas anotadas comprobará que el motor ha llegado a su velocidad
de saturación.
62
D. EL CONTROLADOR: CONTROL DIRECTO VS. REALIMENTADO
1 2 3 4 5 6 7 8 9 10 11 12
Voltaje (V) 0 2 3 4 5 6 7 8 9 100
Velocidad (rps) 0 0
Tarea task_loopcontr:
Velocidad Velocidad
referencia medida
63
Práctica 1. Implementación de un controlador
Tarea task_medidas:
64
D. EL CONTROLADOR: CONTROL DIRECTO VS. REALIMENTADO
MICROPROCESADOR (ESP32)
Planta
ωref error volt. ω
+ Controlador D/A Motor DC
−
ωmedida Sensor
A/D Encoder
Tarea task_loopcontr:
Depure el código y compruebe su funcionamiento realizando varias pruebas. Tendrá que buscar
el valor constante de incremento o decremento del voltaje aplicado al motor que crea que funcione
mejor. Puede programarse la introducción de un nuevo valor desde el puerto serie (en tal caso utilice
la letra “P” y almacene su valor en una variable global denominada “K_p”). Anote los resultados
en la siguiente tabla. Repita algunas medidas introduciendo la misma velocidad de referencia.
65
Práctica 1. Implementación de un controlador
Velocidad Velocidad
referencia medida
66
Práctica
2
Modelado del motor de DC
***
El objetivo de esta práctica es realizar un modelo del motor de DC que nos facilite el diseño
de los controladores que se realizarán en las siguientes prácticas. Primero se realizará un modelo
lineal a partir de un punto de operación en el que el motor esté rotando a una velocidad de 5 rps.
Posteriormente, se comprobará que el sistema es no lineal, comparando la respuesta del modelo y del
motor al excitarlo con diferentes voltajes. Finalmente, se completará el modelo añadiendo algunos
de los comportamientos no lineales del motor.
Tenga en cuenta que el motor que se utiliza en las prácticas solo alcanza una velocidad de unos
8 rps y que los voltajes que se le pueden aplicar no deben superar los 9 V.
.\esptool - -chip esp32 - -port COMx write_flash -z 0xe000 [Link] 0x1000 [Link]
0x10000 [Link]
67
Práctica 2. Modelado del motor de DC
Ω(s) a
G(s) = =k· ,
V (s) s+a
donde
a=1/τ , siendo τ la constante de tiempo del sistema de 1er orden
y k es la ganancia del sistema.
Utilice la gráfica de la respuesta del sistema para estimar los valores de a y k del modelo.
3. Escriba en el script de Matlab la función de transferencia G(s) y, posteriormente, obtenga
su versión discretizada, Gz (z), utilizando la función de Matlab c2d (Gz =c2d(G, Tm )). Tenga
en cuenta que el microcontrolador está capturando las muestras a una tasa de muestreo de
Tm = 0.01 seg.
4. Abra el modelo de Simulink “Modelo_motor_P2.slx”. Este modelo permite evaluar el sistema
lineal Gz (z). Contiene un bloque denominado “LTI system” al que le pasaremos la variable
Gz (z). Este sistema se excita con la misma señal de referencia con la que se está excitando el
motor y nos permitirá visualizar las respuestas transitorias tanto del motor como la del modelo
lineal. Compruebe que el modelo lineal Gz se comporta como el motor cuando se le aplica el
voltaje encontrado en la sección (a). Realice, ahora, un ajuste fino de los parámetros a y k,
hasta que ambas respuestas estén bien ajustadas.
68
C. MOTOR DE DC: SISTEMA NO LINEAL
0.25
0.5
0.75
1
2
3
4
5
7
8
9
69
Práctica 2. Modelado del motor de DC
2. Excite el modelo con el voltaje requerido para que el motor gire a 5 rps y compruebe que
el sistema ya no responde de la misma forma, no alcanzando dicha velocidad. Dentro del
bloque “LTI System” multiplique la función de transferencia por un factor de escalado knl
para modificar su ganancia. Encuentre el valor de dicho factor para que el sistema consiga las
5 rps.
3. Compare las respuestas del nuevo modelo con las del motor cuando se le aplican voltajes bajos
y voltajes altos.
1-D T(u)
1 Gz/k 1
LTI System
1-D Lookup
Table
2. Compare las respuestas del nuevo modelo con las respuestas del modelo lineal y el modelo no
lineal.
3. Conteste a las siguientes preguntas:
¿El nuevo modelo es válido para obtener el transitorio del motor?
¿Qué beneficios ofrece el nuevo modelo respecta al anterior no lineal?
70
Práctica
3
Control P y PI
***
El objetivo de esta práctica es comprobar el efecto del control P y PI para controlar la velo-
cidad del motor de DC. El motor se incluirá en un lazo cerrado y se explorarán los efectos de los
distintos controladores. Además, se utilizarán los modelos del motor desarrollados en la práctica 2
y se comprobará en qué medida el comportamiento de los modelos se desvían de la realidad.
Control P Motor DC
Ωref V Ω(z)
+ Cz (z)=K Gz (z)
−
71
Práctica 3. Control P y PI
Para finalizar esta tarea ejecute la sección “Control Proporcional” del script “lanza_P3.m”.
3. En la sección “Modelo lineal” del script:
a) obtenga la función de transferencia en lazo cerrado Gf b (use la función de matlab minreal
para simplificar dicha función);
b) obtenga sus polos en la variable p_Gf b utilizando la función de Matlab pole;
c) obtenga la función de transferencia de la rama directa, Gtot , formada por el controlador
y la planta (el motor);
d) dibuje el lugar de las raíces mediante la función rlocus y los contornos del plano “z”
mediante la función zgrid.
e) y, finalmente, dibuje en la misma figura los polos de la función de transferencia en lazo
cerrado con plot(real(pGf b ),imag(pGf b ),‘xm’). Dichos polos quedarán representados como
cruces de color magenta sobre el lugar de las raíces.
4. Configure el sistema para que el motor gire a ωref =5 rps y realice un barrido con valores de
K desde 1 hasta 8. Para cada caso:
72
C. CONTROLADOR PROPORCIONAL-INTEGRAL (PI)
obtenga el error en estado estacionario del sistema (lo puede medir sobre la gráfica y se
calcula automáticamente y su resultado se muestra en % en la consola de Matlab);
compruebe cómo cambian de posición en el diagrama de polos/ceros;
e indique de qué tipo es el sistema atendiendo a la forma de la respuesta transitoria.
¿Es coherente el tipo de respuesta obtenido con los polos del sistema?
5. Quédese con un valor de K en el que no se produzca sobre-amoriguación en la respuesta
transitoria y compruebe cómo se comporta el sistema si se configura para que gire a oras
velocidades.
6. Configure de nuevo el sistema con la velocidad de referencia de ωref =5 rps y pruebe a excitarlo
con una rampa.
¿Cuál es el error en estado estacionario ante la entrada rampa?
¿es coherente el comportamiento del sistema con el de los sistemas del mismo tipo estu-
diados en la teoría?
7. Valore si en los experimentos que ha realizado anteriormente el sistema real y los modelos se
comportan de forma similar.
Control PI Motor DC
Ωref V Ω(z)
+ Cz (z)=K(1 + CI (z)) Gz (z)
−
73
Práctica 3. Control P y PI
74
Práctica
4
Control PID
***
El objetivo de esta práctica es comprobar el efecto del control derivativo (D) y aplicar las 3
acciones de control a la vez (controlador PID) para controlar la velocidad del motor de DC. Además,
se va a realizar un modelo de Simulink del controlador PID que facilitará su posterior implementación
en un microcontrolador.
75
Práctica 4. Control PID
El objetivo de este ejercicio es el obtener la respuesta más rápida posible del sistema sin que
dicha respuesta presente sobreimpulso. Se intentará conseguir este objetivo aplicando el control P,
PI y PID. A modo de referencia, en la figura siguiente se muestra el resultado de las respuestas que
se deben obtener con cada controlador.
1.2
0.8
Amplitud
0.6
0.4
ref
Control P
0.2 Control PI
Control PID
0
0 0.05 0.1 0.15 0.2 0.25 0.3
t (s)
76
C. IMPLEMENTACIÓN DEL CONTROLADOR PID
4. Respuesta con control PI: configure en la sección “Control PI” del script el valor Kp2 y Ti2 .
Se recomienda partir del valor Kp1 de la sección anterior.
5. Respuesta con control PID: configure en la sección “Control PID” el valor Kp3 , Ti3 y Td3 . Se
recomienda partir de los valores Kp2 y Ti2 de la sección anterior y modifíquelos si lo considera
necesario.
En los cuatro sistemas la planta es la misma (el motor de DC) y el controlador es el mismo,
un controlador PID, implementado de forma diferente:
el 1er sistema usa el bloque controlador PID de Simulink del modelo de la sección anterior;
77
Práctica 4. Control PID
V (z) Tm ·z z−1
Cpid (z) = = Kp + Ki · + Kd · .
E(z) z−1 Tm ·z
Ejecute el script, compruebe que la función de transferencia Cpid (z) está bien generada y que
la respuesta del 3er sistema es idéntica a la de los anteriores.
6. La función de Matlab pid genera una función de transferencia que facilita la implementación
del controlador PID en paralelo, separando las funciones de transferencia de las componentes
proporcional, integral y derivativa. Por ello, la salida del controlador PID, V (z), se puede
expresar como:
donde
VP (z) VI (z) Tm ·z VD (z) z−1
CP (z)= =Kp , CI (z)= =Ki · y CD (z)= =Kd · .
E(z) E(z) z−1 E(z) Tm ·z
78
C. IMPLEMENTACIÓN DEL CONTROLADOR PID
Escriba las expresiones de VP (z), VI (z) y VD (z) en función del error de entrada E(z) utilizando
únicamente sumas/restas, retados (z −1 ) y ganancias, con el fin de dibujar, posteriormente, su
diagrama de bloques.
7. A partir de las expresiones anteriores modele el controlador PID del 4o sistema utilizando los
operadores básicos de Simnulink (sumas/restas, retados y ganancias). Debe seguir el esquema
de implementación en paralelo representado en la siguiente figura. En cada rama se debe
modelar, siguiendo su diagrama de bloques, cada una de las acciones de control CP (z), CI (z)
y CD (z). Los operadores básicos de Simulink se encuentran en el “Library browser” que está
en el panel superior de Simulink y puede buscarlos por su nombre “Add”, “Gain” y “Delay”.
8. Ejecute de nuevo el script de Matlab y compruebe que las respuesta del nuevo modelo imple-
mentado es exactamente igual que las anteriores. Si no lo es depure el modelo hasta que se
comporte como los anteriores.
9. A partir de las expresiones de VP (z), VI (z) y VD (z) en función del error de entrada E(z)
escriba las ecuaciones en diferencias finitas de cada una de las componentes del controlador y
la ecuación del controlador PID (completo).
10. Escriba el código en lenguaje C para programar la salida del controlador vpid en función de la
entrada de error e.
79
Práctica 4. Control PID
80
Práctica
5
Control de velocidad y posición
de un motor de DC:
implementación de controladores
***
Esta práctica tiene como objetivo el implementar diferentes algoritmos de control en el micro-
controlador ESP32 para realizar el control de la velocidad de rotación y ángulo de giro de un motor
de DC.
A diferencia de las anteriores, esta práctica no tiene un guión detallado de las acciones a realizar,
sino que el alumno debe demostrar que ha aprendido y sabe aplicar los conceptos introducidos en
81
Práctica 5. Control de velocidad y posición de un motor de DC: implementación de controladores
la asignatura.
A. Tareas a realizar
La práctica tiene diferentes partes y el alumno las abordará en el orden indicado y no podrá
pasar a la siguiente parte si no ha completado la anterior y tiene el visto bueno del profesor:
(1) Implementación del algoritmo básico de control PID para el control de velocidad del motor. Los
valores de los parámetros Kp , Ki y Kd se configurarán dinámicamente. Se deberá demostrar
el correcto funcionamiento, por separado, de las acciones de control P, PI y PID.
(2) Modificación del sistema para realice el control de posición angular del motor. Se deberá
demostrar el correcto funcionamiento, por separado, de las acciones de control P, PI y PID.
Debe incluir la configuración dinámica para que el sistema se comporte como control de posición
angular en vez de control de velocidad.
(3) Implementación del algoritmo de anti “windup” condicional. Se deberá demostrar su funciona-
miento para el control de velocidad y posición angular del motor. Debe incluir la configuración
dinámica para activar este algoritmo y para modificar el valor de saturación.
(4) Implementación del algoritmo de anti “windup” con recálculo. Se deberá demostrar su funciona-
miento para el control de velocidad y posición angular del motor. Debe incluir la configuración
dinámica para activar este algoritmo y para modificar el valor del parámetro de configuración.
(5) Implementación del algoritmo de anti zona muerta. Se deberá demostrar su funcionamiento
para el control de posición angular del motor. Debe incluir la configuración dinámica para
activar este algoritmo y para modificar el valor de los parámetros de configuración.
(6) Implementación del filtro derivativo. Se deberá demostrar su funcionamiento para el control de
posición angular del motor. Debe incluir la configuración dinámica para activar este algoritmo
y para modificar el valor de los parámetros de configuración.
La activación o no del algoritmo y la configuración dinámica de parámetros se realizará introdu-
ciendo sus valores a través del monitor serie de Arduino.
B. Evaluación
Para evaluar la práctica se tendrá en cuenta:
el correcto funcionamiento de las partes realizadas: una vez finalizada una parte se debe mostrar
al profesor y este dará el visto bueno para darla por cerrada o le dará indicaciones para su
mejora o corrección;
realización de una memoria documentado el algoritmo implementado y mostrando la respuesta
conseguida ante diferentes estímulos;
y, finalmente, código C del microcontrolador bien estructurado y documentado.
Como referencia se podrá alcanzar hasta una nota de 5 si se realiza correctamente la parte 1. La
correcta realización supone que se demuestre el correcto funcionamiento del algoritmo en la sesión
de prácticas, que el código esté bien estructurado y documentado y la memoria bien presentada
siguiendo las pautas indiadas. La correcta resolución de las siguientes partes incrementará en 1
punto la nota obtenida.
82
C. MEMORIA DE PRÁCTICAS
C. Memoria de prácticas
La memoria de prácticas deberá contener las siguientes secciones:
(1) Introducción: se incluirá una breve explicación del trabajo realizado indicando qué algoritmos
se han implementado y han funcionado correctamente.
D. Fechas de entrega
Se dispone de 5 sesiones para realizar la práctica y solo se podrá mostrar al profesor las partes
completadas en dichas sesiones. Por tanto, la fecha límite para mostrar las prácticas funcionando al
profesor es el 6 de junio (fecha de la última sesión de prácticas).
La memoria (fichero .pdf) y el código C (fichero .ino) se podrán entregar, a través de PoliformaT,
hasta el día 13 de junio.
83
Práctica 5. Control de velocidad y posición de un motor de DC: implementación de controladores
84
Parte III
Pruebas de evaluación
85
Anexo
1
Pruebas curso 2019-2020
***
A. Prueba 1 (test)
Ejercicio 1A-1
Al ejecutar en Matlab la función [r,p,k]=residue(N,D), siendo N y D el numerador y denomi-
nador, respectivamente, de una función en el dominio de Laplace, X(s), se obtiene que r=[1
5 j −j], p=[0 −8 −4+j2 −4−j2] y k=[]. Indique cuál es la transformada inversa de Laplace
de dicha función.
(a) x(t)=1+5e−8t −2.0e−4t sin(2t) (c) x(t)=5e−8t −2.0e−4t sin(2t)
(b) x(t)=1+5e−8t −1.0e−4t sin(2t) (d) x(t)=5e−8t −1.0e−4t sin(2t)
Ejercicio 1A-2
C(s)
Obtenga la función de trasferencia, Gf b = , del sistema realimentado de la figura, donde
R(s)
2(s + 1) 1 6(s + 4)
Gc (s) = , Gp (s) = y H(s) = .
s (s + 4) s(s + 5)
87
Anexo 1. Pruebas curso 2019-2020
Ejercicio 1A-3
2.00z 2 −1.15z
Indique cuál es la transformada inversa Z de la función X(z) = .
z 3 −2.20z 2 +1.57z−0.37
(a) x(n)=5−5·0.61n cos(0.17n) (c) x(n)=5−2·0.61n cos(0.10n)
(b) x(n)=5−2.50·0.61n cos(0.17n) (d) x(n)=5·e−n −2·0.61n cos(0.17n)
Ejercicio 1A-4
Indique cuál es ecuación en diferencias de la siguiente función de transferencia: G(z) =
Y (z) 0.30z−0.40
= .
X(z) z 2 −0.10z+0.10
(a) y[n] = 0.1y[n−1]−0.1y[n−2]+0.3x[n−1]−0.4x[n−2]
(b) y[n] = −0.1y[n−1]+0.1y[n−2]−0.3x[n−1]+0.4x[n−2]
Ejercicio 1A-5
Indique qué función de transferencia no da lugar a una respuesta al escalón con tiempo de
establecimiento Ts =1.06s:
29.06 29.06
(a) G(s)= 2 (c) G(s)= 2
s +3.77s+29.06 s +7.54s+29.06
s+29.06 3.77
(b) G(s)= (d) G(s)=
s2 +7.54s+29.06 s+3.77
Ejercicio 1A-6
157.40
Dado el sistema con función de transferencia G(s)= , indique cuál
s3 +10.40s2 +40.46s+157.40
de las siguientes afirmaciones es correcta.
(a) El sistema se puede aproximar por un sistema de 2◦ orden sub-amortiguado.
(b) El sistema se puede aproximar por un sistema de 1er orden.
88
A. PRUEBA 1 (TEST)
Ejercicio 1A-7
Indique qué polos debe tener un sistema discreto para que su respuesta sea de 2◦ or-
den subamortiguada con tiempo de establecimiento Ts =1.12s y porcentaje de sobreimpulso
OS=12.2 %. Suponga que el periodo de muestreo del sistema es Tm = 0.1s.
(a) p1,2 = 0.60 ± 0.36i (c) p1,2 = −0.60 ± 0.36i
Ejercicio 1A-8
8(s + 5) 1
Dado el sistema realimentado de la figura, donde Gc (s) = y Gp (s) = ,
s s(s + 4)
indique cuál de las siguientes afirmaciones es correcta.
Ejercicio 1A-9
El siguiente sistema realimentado contiene un controlador discreto, Gc (z), cuyo periodo de
muestreo es Tm = 0.1s, y una planta, cuya función de transferencia en el dominio conti-
0.40z−0.20 8
nuo es Gp (s), siendo Gc (z)= 2 y Gp (s)= . Indique cuál de las siguientes
z −0.70z+0.12 s+5
afirmaciones es correcta.
Controlador Planta
R(z) C(z)
+ Gc (z) D/A Gp (s) A/D
−
89
Anexo 1. Pruebas curso 2019-2020
Ejercicio 1A-10
Dado el sistema mecánico de la figura com-
K x
puesto por una masa M , con rozamiento b y un
resorte con constante K, donde M =70.8 Kg,
b=17.2 N ·s/m y K=8.4 N/m. Indique cuál de
F
las siguientes afirmaciones sobre el desplaza-
miento provocado (x) al aplicarle una fuerza M
(F ) es correcta.
b
(a) La respuesta natural del sistema es oscilatoria con envolvente exponencial decreciente.
(b) La respuesta natural del sistema es una oscilación mantenida.
(c) La respuesta natural del sistema es una exponencial decreciente.
(d) La respuesta natural del sistema es la suma de dos exponenciales decrecientes.
B. Prueba 2 (test)
Ejercicio 1B-1
La planta con función de transferencia Gp (s) tiene un polo en s=pp y el sistema realimentado
KGp (s)
Gf b (s)= 1+KG p (s)
tiene un polo en s=pf b . Indique cuál de las siguientes afirmaciones es
correcta.
(a) ̸ (Gp (pf b ))=π (c) ̸ (Gp (pp ))=π
(b) ̸ (Gf b (pf b ))=π (d) Ninguna de las otras.
Ejercicio 1B-2
La planta con función de transferencia Gp (s) tiene dos polos reales negativos diferentes y
no tiene ceros. Indique cuál de las siguientes afirmaciones sobre el sistema realimentado
KGp (s)
Gf b (s)= 1+KG p (s)
es correcta.
90
B. PRUEBA 2 (TEST)
Ejercicio 1B-3
En la figura se muestra representado el lugar de las raíces de G(s) con la función rlocus de
Matlab. Indique cuál de las siguientes afirmaciones sobre el sistema realimentado con control
proporcional, con constante de proporcionalidad K, es correcta.
Root Locus
0.95
4
K3 K2
Imaginary Axis (seconds -1 )
0.986
2
14 12 10 8 6 4 2
0
-2
0.986
K4 K1
-4
0.95
-6
0.89 0.8 0.68 0.54 0.38 0.18
-15 -10 -5 0
Real Axis (seconds -1 )
Ejercicio 1B-4
Indique cuál de las siguientes afirmaciones sobre los controladores proporcional-integral en
un sistema continuo no es correcta.
(a) Cuanto más cerca esté el cero del controlador del polo en el origen menos se tardará
en alcanzar el estado estacionario.
(b) Cuanto más cerca esté el cero del controlador del polo en el origen menos variará la
posición de los polos obtenidos con el control proporcional.
91
Anexo 1. Pruebas curso 2019-2020
Ejercicio 1B-5
El diagrama polos-ceros de la función de transferencia de la planta Gp (s) y su representación
vectorial en el punto scl se muestra en la figura. ¿Qué ángulo debe tener la representación
vectorial del cero, sz , de un controlador proporcional-derivativo (PD), GP D (s)=K(s − sz ),
para que la función de transferencia del sistema realimentado unitariamente con control PD
aplicado a la planta, Gp (s), pueda tener un polo en scl ?
(a) θsz =π−θc1 +θp1 +θp2 (c) θsz =π−θc1 −θp1 −θp2
jω
scl
p2 p1 c1 σ
Ejercicio 1B-6
(z+z1 )
En la figura se muestra representado el lugar de las raíces de G(z)= (z−p 1 )(z−p2 )
. Indique cuál
de las siguientes afirmaciones es correcta.
(a) Si K<1.8 la respuesta propia del sistema en lazo cerrado siempre tiende a desaparecer.
(b) Si K<4.7 el sistema en lazo cerrado siempre será estable.
92
C. PRUEBA 2 (EJERCICIOS)
Root Locus
0.8
0.6 K=1.8
0.4
Imaginary Axis
0.2
-0.2
-0.4
K=4.7 K=0.05
-0.6
-0.8
-1
-1 -0.5 0 0.5 1
Real Axis
C. Prueba 2 (ejercicios)
Diseñe el controlador, Gc (z), para la planta, cuya función de transferencia en el dominio continuo
0.1
es Gp (s)= s2 +4s+5 , siguiendo el esquema de sistema con realimentación unitaria que se muestra, que
operará con un periodo de muestreo de Tm =0.1s. La respuesta al escalón del sistema realimentado
deberá cumplir las siguientes especificaciones:
Tiempo de establecimiento Ts ≤1s.
Porcentaje de sobre-impulso OS≤10 %.
Error en estado estacionario nulo.
Controlador Planta
R(z) C(z)
+ Gc (z) D/A Gp (s) A/D
−
Ejercicio 1C-1
Suponga que Gc (z) es un controlador proporcional-derivativo (PD):
(a) Indique qué especificaciones de las indicadas se pueden conseguir con un control PD.
Justifique su respuesta.
93
Anexo 1. Pruebas curso 2019-2020
Ejercicio 1C-2
Suponga que Gc (z) es un controlador proporcional-integral-derivativo (PID):
(a) Partiendo del controlador PD del ejercicio 1 diseñe el controlador PID para que se
cumplan las especificaciones. Indique el valor de la constante de proporcionalidad y el
valor de los ceros del controlador y demuestre el cumplimiento de las especificaciones
representando la respuesta al escalón y dando los valores numéricos de los valores
obtenidos para las tres especificaciones.
(b) Obtenga los valores de las contantes Kp , Ki y Kd del controlador PID diseñado en el
apartado anterior.
Ejercicio 1C-3
Suponga que Gc (z) es un controlador proporcional-integral-derivativo (PID):
(a) Diseñe el controlador PID para que se cumplan las especificaciones utilizando el método
de diseño empírico. Indique el valor de las constantes Kp , Ti y Td del controlador PID y
demuestre el cumplimiento de las especificaciones representando la respuesta al escalón
y dando los valores numéricos de los valores obtenidos para las tres especificaciones.
Ejercicio 1D-2
C(s) 3(s + 5)
Dado el sistema realimentado de la figura, Gf b = , donde Gc (s) = , Gp (s) =
R(s) s
1 6(s + 5)
y H(s) = . Indique cuál de las siguientes afirmaciones es correcta.
(s + 7) s(s + 6)
94
D. PRUEBA DE RECUPERACIÓN (TEST)
Ejercicio 1D-3
C(s)
Indique cuál es ecuación en diferencias del controlador proporcional integral: GP I (z)= =
E(z)
27(z−0.91)
.
z−1
(a) c[n]=c[n−1]+27e[n]+24.57e[n−1] (c) c[n]=c[n−1]−27e[n]−24.57e[n−1]
(b) c[n]=c[n−1]+27e[n]+0.91e[n−1] (d) Ninguna de las otras es correcta
Ejercicio 1D-4
Dado el sistema discreto muestreado a Tm =0.1s y con función de transferencia G(z) =
0.7z 2
, indique cuál de las siguientes afirmaciones es correcta.
z 3 −2.53z 2 +2.25z−0.7
(a) El sistema se puede aproximar por un sistema de 2◦ orden sub-amortiguado.
(b) El sistema se puede aproximar por un sistema de 1er orden.
(c) El sistema no se puede aproximar por un sistema de 1er o 2◦ orden sub-amortiguado,
pero es estable.
(d) El sistema es inestable.
Ejercicio 1D-5
La función de transferencia de un modor DC que relaciona la velocidad angular obtenida con
el voltaje aplicado al motor es Gω (s) = VΩ(s) 39
(s) = (s+5)(s+15) . Si se desea realizar un control de la
posición angular del motor con un sistema realimentado unitariamente en el que se requiere
que el error en estado estacionario debido a la entrada escalón sea nulo, indique cuál de las
siguientes afirmaciones es correcta.
95
Anexo 1. Pruebas curso 2019-2020
Ejercicio 1D-6
Dado el sistema mecánico de la figura com-
K x
puesto por una masa M , con rozamiento b y un
resorte con constante K, donde M =70.8 Kg,
b=17.2 N ·s/m y K=8.4 N/m. Indique cuál de
F
las siguientes afirmaciones sobre el desplaza-
miento provocado (x) al aplicarle una fuerza M
(F ) es correcta.
b
(a) La respuesta natural del sistema es oscilatoria con envolvente exponencial decreciente.
(b) La respuesta natural del sistema es una oscilación mantenida.
Ejercicio 1D-7
Indique cuál de las siguientes afirmaciones es correcta sobre la ecuación en diferencias de un
controlador: c[n]=10(e[n] − 0.7e[n − 1]).
Ejercicio 1D-8
Dado un sistema realimentado unitariamente que contiene un controlador proporcional, con
constante de proporcionalidad K, y una planta, cuya representación del lugar de las raíces
se muestra en la figura, indique cuál de las siguientes afirmaciones no es correcta.
(a) Si K=K1 o K=K2 las respuestas de los sistemas resultantes tienen similar porcentaje
de sobre-impulso.
(b) El sistema será inestable a partir de cierto valor de K.
96
D. PRUEBA DE RECUPERACIÓN (TEST)
Root Locus
1
0.5 /T
0.6 /T 0.4 /T
0.8 0.1 /T
0.7 /T 0.3
0.2
0.6
K2 0.3 K1
0.8 /T 0.4 0.2 /T
0.5
0.4 0.6
0.7
0.9 /T 0.8 0.1 /T
Imaginary Axis
0.2 0.9
1 /T
0
1 /T
-0.2
0.9 /T 0.1 /T
-0.4
0.8 /T 0.2 /T
-0.6
0.7 /T 0.3 /T
-0.8
0.6 /T 0.4 /T
0.5 /T
-1
-1 -0.5 0 0.5 1
Real Axis
Ejercicio 1D-9
El diagrama polos-ceros de la función de transferencia de la planta Gp (s) y su representación
vectorial en el punto scl se muestra en la figura. ¿Qué condición se debe cumplir para que al
incluir la planta, Gp (s), en un sistema realimentado unitariamente con control proporcional-
derivativo (PD), GP D (s)=K(s − sz ), el sistema pueda tener un polo en scl ?
p2 p1 c1 σ
Ejercicio 1D-10
Un controlador PID diseñado por el método de diseño independiente de las acciones de
control PI y PD, en el que se obtiene GP D (s)=8(s + cP D ) y GP I (s)= 4(s+0.2)
s , se desea
modelar utilizando la función pid de Matlab. Indique cuál de los valores de las constantes
97
Anexo 1. Pruebas curso 2019-2020
Controlador Planta
R(z) C(z)
+ Gc (z) D/A Gp (s) A/D
−
Ejercicio 1E-1
Utilice el método de diseño independiente de las acciones de control PD y PI y justifique
todas las decisiones que tome en el proceso de diseño. Demuestre el cumplimiento de las
especificaciones representando la respuesta al escalón y dando los valores numéricos de los
valores obtenidos para las tres especificaciones.
Ejercicio 1E-2
Calcule analíticamente, utilizando Matlab, el error en estado estacionario del sistema debido
a la entrada rampa r(t)=t·u(t).
98
Anexo
2
Pruebas curso 2020-2021
***
A. Prueba 1
Ejercicio 2A-1
Al calcular con Matlab los residuos y los polos de la
R(s) C(s)
respuesta al escalón unitario del sistema G(s) se obtiene G(s)
r=[−1 −10 1] y p=[−10 −10 0].
Ejercicio 2A-2
R(s) E(s) C(s)
Obtenga la función de trasferencia, + Gc (s) Gp (s)
Gf b = C(s)
R(s) , del sistema realimenta-
−
Ejercicio 2A-3
10(s2 +2.5s+10) R(s) C(s)
Dado el sistema G(s) = : G(s)
(s+10)(s2 +2s+5)
(a) Indique el tipo de sistema y enumere las características que conozca de G(s).
(b) Calcule la duración de la respuesta transitoria de G(s).
99
Anexo 2. Pruebas curso 2020-2021
Ejercicio 2A-4
z −0.2z+0.42
Obtenga la ecuación en diferencias de la función de transferencia G(z)= C(z)
R(z) = z 2 −0.2z+0.3 .
Ejercicio 2A-5
Indique qué polos debe tener un sistema discreto para que su respuesta sea de 2◦ orden
subamortiguada con tiempo de establecimiento Ts =1s y tiempo de pico Tp =0.5s. Suponga
que el periodo de muestreo del sistema es Tm = 0.01s.
Ejercicio 2A-6
El siguiente sistema realimentado, cuyo periodo de muestreo es Tm = 0.1s, contiene un
0.4z−0.2
controlador discreto, Gc (z)= z2 −0.6z+0.12 , y una planta, cuya función de transferencia discre-
0.5
tizada es Gp (z)= z−0.67 , dando lugar a la siguiente función de transferencia en lazo cerrado
Gf b = C(z) 0.19(z−0.5)
R(z) = (z−0.55)(z 2 −0.71z+0.32) .
Controlador Planta
R(z) C(z)
+ Gc (z) D/A Gp (s) A/D
−
(b) Si el sistema es estable indique de qué tipo de sistema se trata según el tipo de error
en estado estacionario y calcule dicho error.
Ejercicio 2A-7
B. Escriba la expresión de la respuesta temporal del sistema cuando se le aplica una fuerza
f (t)=u(t) (no calcule los residuos de las fracciones simples, sino que asuma que tienen
100
B. PRUEBA 2
cierto valor ki ).
C. Indique de qué tipo de sistema se trata.
B. Prueba 2
Ejercicio 2B-1
Controlador Planta
a
A la planta con función de transferencia G(s)= s+a R(s)
+ G(s)
C(s)
K
se le aplica control proporcional. −
Ejercicio 2B-2
A la planta con función de transferencia
8 Controlador Planta
G(s)= (s+5)(s+10) se le aplica un control R(s) C(s)
+ GP I (s) G(s)
proporcional-integral (PI), donde GP I (s)= K(s+4)
s , −
Ejercicio 2B-3
A la planta con función de transferencia
4(z+0.75)
G(z)= (z−0.5)((z−0.75) se le aplica un con- Controlador Planta
R(z) C(z)
trol proporcional-derivativo (PD), donde −
+ GP D (z) G(z)
GP D (z)=K (z−zz
c)
, siguiendo el diagrama de
bloques de la figura.
(a) Dibuje en el plano Z el punto en el que el sistema realimentado (Gf b (z) = C(z)
R(z) ) debe
disponer de un polo para que si fuese de 2º orden sub-amortiguado su respuesta tenga
101
Anexo 2. Pruebas curso 2020-2021
(b) Obtenga el valor del cero del controlador PD, zc , para que Gf b (z) pueda disponer de
un polo en zp =0.4 + 0.3i. Tenga en cuenta que ̸ G(zp )=2, 21rad (126, 7o ).
(c) Obtenga el valor de K para que Gf b (z) disponga de un polo en zp . Tenga en cuenta
que |G(zp )|=32, 6.
1
0.5 /T
0.6 /T 0.4 /T
0.8 0.7 /T 0.1
0.3 /T
0.2
0.6 0.3
0.8 /T 0.4 0.2 /T
0.5
0.4 0.6
0.7
0.9 /T 0.8 0.1 /T
0.2 0.9
1 /T
0
1 /T
-0.2
0.9 /T 0.1 /T
-0.4
0.8 /T 0.2 /T
-0.6
Ejercicio 2B-4
En la figura se muestra el esquema de implementación mediante un microcontrolador de un
lazo de control digital. La señal de referencia y la del sensor se digitalizan con un conversor
A/D y la acción de control se aplica mediante un conversor D/A. La parte del control digital
se implementa en una tarea (denominada Lazo_control) que se ejecuta cada vez que un
Timer genera una interrupción a la frecuencia de muestreo fm =1/Tm .
Escriba el pseudo-código que habría que programar en la tarea Lazo_control para imple-
mentar el lazo de control, teniendo en cuenta que se va a aplicar un control PD siguiendo
la función de transferencia Gc (z)= VE(z)
(z)
=Kp + Kd · Tz−1
m ·z
, donde Kp y Kd son las constantes
del control proporcional y derivativo, respectivamente. Asuma que puede leer el valor del
conversor A/D con la función Read_ADC(ch_x) y escribir el conversor D/A con la función
Write_DAC(ch_x,valor). La entrada de referencia está conectada al A/D del ch_0 y la del
sensor al ch_1. El D/A está conectado al ch_0.
MICROPROCESADOR
Controlador Planta
R(s) R(z) E(z) V (z) C(s)
A/D + Gc (z) D/A Gp (s)
−
Sensor
Cr (z)
A/D Gs (s)
Lazo_control
Interrupción Tm seg.
102
C. PRUEBA DE RECUPERACIÓN
C. Prueba de recuperación
Ejercicio 2C-1
A la planta con función de transferencia
150
G(s)= (s+3)(s+5)(s+10) se le aplica un control Controlador Planta
R(s) C(s)
proporcional-integral-derivativo (PID), donde + GP ID (s) G(s)
−
GP ID (s)=K (s+6)(s+2)
s , siguiendo el diagrama de
bloques de la figura.
(a) Dibuje el lugar de las raíces del sistema realimentado Gf b (s)= C(s)
R(s) .
(b) Razone si en el sistema Gf b (s) hay que aumentar o disminuir el valor de K para que
se produzcan cada uno de los siguientes efectos:
a) Disminución del tiempo de establecimiento.
b) Disminución del tiempo de pico.
c) Reducción del factor de sobre-amortiguamiento.
Ejercicio 2C-2
0.8
0.2
−0.5 0.2 0.7 0.8
(b) Dibuje el diagrama de bloques del sistema cuyo lu- 0
-0.2
-0.8
103
Anexo 2. Pruebas curso 2020-2021
Ejercicio 2C-3
A la planta con función de transferencia
z
G(z)= z−0.75 se le aplica un control propor-
cional (P) siguiendo el diagrama de bloques de Controlador Planta
R(z) C(z)
la figura para que el tiempo de establecimiento + K G(z)
−
del sistema sea Ts =0.05seg. Tenga en cuenta
que el periodo de muestreo del controlador es
Tm =0.01seg.
(a) Dibuje el lugar de las raíces del sistema realimentado e indique de qué tipo de sistema
se trata.
(b) Obtenga el valor de K para que la respuesta del sistema realimentado con control
proporcional cumpla el tiempo de establecimiento indicado.
(c) Calcule el error en estado estacionario es (∞) del sistema al aplicarle la K calculada.
(d) Escriba la expresión de la respuesta temporal al escalón unitario del sistema reali-
mentado al aplicarle la K calculada (si desconoce el valor del residuo al hacer las
descomposición en fracciones simples, déjelo como una constante).
(e) Dibuje el escalón unitario y la respuesta del sistema a dicho escalón. Dimensiónela
adecuadamente e indique en el dibujo dónde se mide el tiempo de establecimiento y el
error en estado estacionario.
(f) Escriba la función de transferencia (en el dominio z) del controlador que debería apli-
carse a la planta G(z) para que el error en estado estacionario (calculado en C) sea
nulo.
104
Anexo
3
Pruebas curso 2021-2022
***
A. Prueba 1
Ejercicio 3A-1
La respuesta al impulso (r[n] = δ[n]) de un sistema nos
permite obtener la respuesta natural de dicho sistema. R(z) C(z)
Al calcular con Matlab los residuos y los polos de la res- G(z)
puesta al impulso del sistema G(z) se obtiene r=[4 −3]
y p=[1 0.75].
C(z)
(a) Escriba la expresión en el dominio Z de la función de transferencia G(z) = R(z) .
Ejercicio 3A-2
Obtenga la función de trasferencia,
Transductor Controlador Planta
Gf b = C(z)
R(z) , del sistema realimentado R(z) Tr (z) E(z) C(z)
3 + Gc (z) Gp (z)
de la figura en función de Gc (z) y −
Sensor
Gp (z). Utilice las variables mostra- Sc (z)
lisis.
Ejercicio 3A-3
La respuesta genérica al escalón unitario de un sistema de 2◦ orden sub-amortiguado es
c(t) = k0 + k1 e−4t sin(6t + ϕ1 ). Obtenga el tiempo de establecimiento y tiempo de pico de la
105
Anexo 3. Pruebas curso 2021-2022
Ejercicio 3A-4
C(z)
(a) Escriba la expresión en el dominio Z de la función de transferencia G(z) = R(z) .
Ejercicio 3A-5
10
Dado el sistema G(s) = . Calcule la dura- R(s) C(s)
s2 +11s+10 G(s)
ción de la respuesta transitoria de G(s).
Ejercicio 3A-6
El siguiente sistema realimentado contiene un controlador, Gc (s)= s+1 10
s , y una planta, Gp (s)= s+5 ,
dando lugar a la siguiente función de transferencia en lazo cerrado Gf b (s)= C(s) 10(s+1)
R(s) = (s+0.7)(s+14.3) .
(a) Indique de qué tipo de sistema se trata según el tipo de error en estado estacionario.
Justifique su respuesta.
(b) Calcule el error en estado estacionario del sistema.
(c) Calcule la ganancia del sistema.
Ejercicio 3A-7
106
B. PRUEBA 2
(a) Describa cómo responde el sistema si se le aplica una fuerza en un instante temporal
(ej. f (t) = kf · δ(t), siendo kf una constante).
B. Prueba 2
Ejercicio 3B-1
A continuación se muestra el diagrama del lugar de
las raíces de un sistema de control de la posición Controlador Planta
R(s) C(s)
de un motor (cuyo diagrama de bloques se presenta + GI (s) G(s)
−
en la figura adjunta), formado por un controlador
integral (I), GI (s), y el motor, G(s).
(a) Escriba la función de transferencia en lazo abierto del sistema, GOL (s).
107
Anexo 3. Pruebas curso 2021-2022
Plano s
6 0.6
0.5 0.4 0.3 0.2 0.1
0.7
0.8
4 sp
0.9
j (seconds -1 )
7 6 5 4 3 2 1
0
-2
0.9
-4
0.8
0.7
0.5 0.4 0.3 0.2 0.1
-6 0.6
-6 -4 -2 0
(seconds -1 )
Ejercicio 3B-2
Un sistema discreto, cuya frecuencia de mues-
treo es fm =10 Hz, dispone de una plan-
Controlador Planta
0.12z 2
ta, G(z)= (z−0.6)(z−0.7) , y un controlador R(z) C(z)
+ GP I (z) G(z)
proporcional-integral (PI), GP I (z)=K z−0.8
z−1 ,
−
108
Plano z
1
0.5 /T
0.9 0.6 /T 0.4 /T
B. PRUEBA 2
0.8 0.7 /T 0.1
0.3 /T
0.7 0.2
(e) Suponga que el sistema dispone de polos en zp , zp∗ y en
0.30.81. Escriba la respuesta
0.6 genérica del sistema cuando se excita con una entrada
temporal escalón.
0.8 /T 0.4 0.2 /T
0.5 0.5
0.4 0.6 zp
0.3 0.9 /T 0.7
0.8 0.1 /T
0.2 0.9
0.1
1 /T
(z)
0
1 /T
-0.1
-0.2
-0.3 0.9 /T 0.1 /T
-0.4
-0.5
0.8 /T 0.2 /T
-0.6
-0.7
-0.8 0.7 /T 0.3 /T
-0.9 0.6 /T 0.4 /T
0.5 /T
-1
0
1
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
-1
-0.9
-0.8
-0.7
-0.6
-0.5
-0.4
-0.3
-0.2
-0.1
(z)
Ejercicio 3B-3
A la planta con función de transferencia
8
G(s)= (s+5)(s+10) se le aplica un control Controlador Planta
R(s) C(s)
proporcional-integral (PI), donde GP I (s)= K(s+4)
s , −
+ GP I (s) G(s)
109
Anexo 3. Pruebas curso 2021-2022
Ejercicio 3B-4
Complete el código C de la tarea de Free-RTOS Task_Controller para implementar un lazo
de control que dispone de un controlador PD, cuya función de transferencia es Gc (z) =
V (z) −2
E(z) = 1.5 + 0.1·(1 − z ), tal y como se muestra en la figura. Se dispone de las funciones
lee_ADCr y lee_ADCr, que leen los valores digitalizados por los conversores ADCr y ADCs,
y la función escribe_PWM(float v_pwm), que configura el PWM con el valor de v_pwm.
MICROPROCESADOR
Controlador Planta
R(s) R(z) E(z) V (z) C(s)
ADCr + Gc (z) PWM MOTOR
−
Cr (z)
ADCs SENSOR
Task_controller
while(1) {
// Lee referencia
ref = lee_ADCr();
// Lee sensor
c_r = lee_ADCs();
// Calculo de error
// Accion de control
// Aplicar resultado a la planta
vTaskDelay(100 / portTICK_PERIOD_MS);
}
}
110