Tema 8#
Problema 8.1
Estimar la estabilidad de un sistema de control autimático cuya función de transferencia de lazo abierto es:
Problema 8.2
Considérese un proceso de segundo orden cuya función de transferencia es:
¿Es estable dicho proceso?
Si el proceso se encuentra en un lazo de control, con un controlador PI(
, ), siendo las funciones de trasnferencia de los elementos medidor y final de control , ¿es estable dicho conjunto? (Puede aplicarse el criterio de Routh-Hurvitz)Hacer el análisis de estabilidad de este sistema de lazo de control en función de
y .
Problema 8.3
Un sistema tiene una dinámica cuya ecuación característica es:
Determinar su estabilidad mediante el criterio de Routh.
Problema 8.4
Sea el sistema de control de tercer orden de la figura:
Show code cell source
%config InLineBackend.figure_format = 'svg'
import schemdraw
from schemdraw import dsp
d = schemdraw.Drawing(unit=1, fontsize=10)
d += dsp.Arrow().label('$R$', 'left')
d += (sum1 := dsp.Mixer(W="+", S="-").anchor("W"))
d += dsp.Arrow().at(sum1.E).right()
d += (control := dsp.Box(h=1, w=1).label("$K_c$", "center").anchor("W"))
d += dsp.Arrow().right().at(control.E)
d += (sum2 := dsp.Mixer(W="+", N="+").anchor("W"))
d.push()
d += dsp.Arrow().at(sum2.N).label("$U$", "right").reverse().up()
d.pop()
d += dsp.Arrow().right().at(sum2.E)
d += (proc := dsp.Box(h=1, w=1).label("$G_p$").anchor("W"))
d += dsp.Line().right().at(proc.E)
d += (dot := dsp.Dot(radius = 0))
d += dsp.Arrow().right().at(dot.center).label("$Y$", "right")
d += dsp.Line().down().at(dot.center).length(1.5)
d += dsp.Line().left().length(3)
d += (medidor := dsp.Box(h=1, w=1).label("$G_m$", "center").anchor("E"))
d += dsp.Line().at(medidor.W).tox(sum1.S).left()
d += dsp.Arrow().to(sum1.S)
d.save("./img/prob804.svg")
d.draw()
donde:
Si
Problema 8.5
Un sistema formado por dos tanques en serie independientes se regula por un control PID. Las constantes de tiempo de los tanques son 20 y 10 min, mientras que las del elemento de medida de nivel es de 30 segundos. El tiempo integral es de 3 min y el derivativo 40 s. Determinar el intervalo de valores de
Problema 8.6
En la actualidad todavía se emplean discos duros en algunos ordenadores para almacenar la información. Un cabezal de lectura se desplaza sobre el disco giratorio a las posiciones requeridas en las operaciones de lectura o grabación de información. Este desplazamiento ha de ser rápido y preciso. En la figura adjunta se presenta el diagrama de bloques del sistema de desplazamiento del cabezal de lectura.
Show code cell source
d = schemdraw.Drawing(unit=1, fontsize=10)
d += dsp.Arrow().label('$R$\nPosición\ndeseada', 'left')
d += (sum1 := dsp.Mixer(W="+", S="-").anchor("W"))
d += dsp.Arrow().at(sum1.E).right()
d += (control := dsp.Box(h=1, w=1).label("$G_c$", "center").anchor("W"))
d += dsp.Arrow().right().at(control.E)
d += (proc := dsp.Box(h=1, w=1).label("$G_p$").anchor("W"))
d += dsp.Line().right().at(proc.E)
d += (dot := dsp.Dot(radius = 0))
d += dsp.Arrow().right().at(dot.center).label("$Y$\nPosición\nobtenida", "right")
d += dsp.Line().down().at(dot.center).length(1.5)
d += dsp.Line().left().tox(sum1.S)
d += dsp.Arrow().up().to(sum1.S)
d.save("./img/prob806.svg")
d.draw()
donde:
Determinar los intervalos de estabilidad de
Problema 8.7
En la figura se representa el diagrama de bloques de un sistema de control de velocidad de un motor de gasolina:
Show code cell source
d = schemdraw.Drawing(unit=1, fontsize=10)
d += dsp.Arrow().label('$R$\nVelocidad\ndeseada', 'left')
d += (sum1 := dsp.Mixer(W="+", S="-").anchor("W"))
d += dsp.Arrow().at(sum1.E).right().label("Acelerador", "top").length(2.5)
d += (control := dsp.Box(h=1, w=2).label("$G_c$", "center").anchor("W").label("Carburador", "right"))
d += dsp.Arrow().right().at(control.E)
d += (proc := dsp.Box(h=1, w=2).label("$G_e$").anchor("W").label("Motor", "right"))
d += dsp.Line().right().at(proc.E)
d += (dot := dsp.Dot(radius = 0))
d += dsp.Arrow().right().at(dot.center).label("$C$\Velocidad\nobtenida", "right")
d += dsp.Line().down().at(dot.center).length(1.75)
d += dsp.Arrow().left().length(4)
d += (medidor := dsp.Box(h=1, w=2).label("$G_m$", "center").anchor("E").label("Tacómetro", "right"))
d += dsp.Line().left().tox(sum1.S).at(medidor.W)
d += dsp.Arrow().up().to(sum1.S)
d.save("./img/prob807.svg")
d.draw()
donde:
El valor de la ganancia
del motor para que, ante una variación en la consigna, la velocidad obtenida no difiera respecto a la consigna en más de un 7 % de dicha variación .La estabilidad del sistema.
El margen de la ganancia
determinada en el primer apartado.
Problema 8.8
Sea el sistema de control representado en la figura:
Show code cell source
d = schemdraw.Drawing(unit=1, fontsize=10)
d += dsp.Arrow().label('$R$', 'left')
d += (sum1 := dsp.Mixer(W="+", S="-").anchor("W"))
d += dsp.Arrow().at(sum1.E).right()
d += (control := dsp.Box(h=1, w=1).label("$G_c$", "center").anchor("W"))
d += dsp.Arrow().right().at(control.E)
d += (sum2 := dsp.Mixer(W="+", N="+").anchor("W"))
d.push()
d += dsp.Arrow().at(sum2.N).label("$U$", "right").reverse().up()
d.pop()
d += dsp.Arrow().right().at(sum2.E)
d += (proc := dsp.Box(h=1, w=1).label("$G_1$").anchor("W"))
d += dsp.Line().right().at(proc.E)
d += (dot := dsp.Dot(radius = 0))
d += dsp.Arrow().right().at(dot.center).label("$C$", "right")
d += dsp.Line().down().at(dot.center).length(1.5)
d += dsp.Line().left().length(3)
d += (medidor := dsp.Box(h=1, w=1).label("$G_2$", "center").anchor("E"))
d += dsp.Line().at(medidor.W).tox(sum1.S).left()
d += dsp.Arrow().to(sum1.S)
d.save("./img/prob808.svg")
d.draw()
donde
Calcular el offset de la respuesta del sistema si se produce una carga (
) en escalón unidad.Si
, y , ¿para qé valores de ganancia es estable el sistema?Si se sustituyera el control proporcional por un control PI, siendo
y , ¿sería estable el sistema?
Problema 8.9 Dibujar el lugar de las raíces para un sistema cuya función de transferencia de lazo abierto es:
Problema 8.10
Trazar el lugar de las raices para el control proporcional de un sistema de tres etapas con constantes de tiempo 1, 0.5 y 0.25 min, ganancia de proceso
Problema 8.11
El comportamiento dinámico de una compleja organización empresarial se puede considerar que es como un sistema de control por retroalimentación. Un modelo sencillo de un sistema de control de gestión se presenta en la figura adjunta:
Show code cell source
d = schemdraw.Drawing(unit=1, fontsize=10)
d += dsp.Arrow().label('$R(s)$', 'left')
d += (sum1 := dsp.Mixer(W="+", S="-").anchor("W"))
d += dsp.Arrow().at(sum1.E).right()
d += (control := dsp.Box(h=1, w=1).label("$G_c$", "center").anchor("W"))
d += dsp.Arrow().right().at(control.E)
d += (sum2 := dsp.Mixer(W="+", N="+").anchor("W"))
d.push()
d += dsp.Arrow().at(sum2.N).label("$D(s)$", "right").reverse().up()
d.pop()
d += dsp.Arrow().right().at(sum2.E)
d += (proc := dsp.Box(h=1, w=1).label("$G_p$").anchor("W"))
d += dsp.Line().right().at(proc.E)
d += (dot := dsp.Dot(radius = 0))
d += dsp.Arrow().right().at(dot.center).label("$C(s)$", "right")
d += dsp.Line().down().at(dot.center).length(1.5)
d += dsp.Line().left().length(3)
d += (medidor := dsp.Box(h=1, w=1).label("$H$", "center").anchor("E"))
d += dsp.Line().at(medidor.W).tox(sum1.S).left()
d += dsp.Arrow().to(sum1.S)
d.save("./img/prob811.svg")
d.draw()
con las siguientes funciones de transferencia:
, correspondiente a la actividad de festión de la empresa, , correspondiente a las actividades de ingeniería y producción, y, que represneta la actividad de evañuación de los resultados de la empresa.
El resultado de la evaluación,
Calcular la constante de tiempo y el coeficiente de amortiguamiento de este sistema de control.
Calcular el offset si se produce en la carga una perturbación unidad en forma de escalón.
La respuesta en tiempo real a la perturbación anterior, ¿es oscilatoria? Si lo es, ¿qué período tiene?
Para disminuir el offset frente a las variaciones en la consigna, ¿qué parámetro se debería modificar?
Estudiar la estabilidad de este sistema de control. ¿Cómo afectaría a la estabilidad la modificación anterior?
Datos:
= 0.1 = 10 meses = 5 = 7.6
Problema 8.12
Un sistema de control utiliza un PI y se representa en el diagrama de bloques de la figura:
Show code cell source
d = schemdraw.Drawing(unit=1, fontsize=10)
d += dsp.Arrow().label('$R(s)$', 'left')
d += (sum1 := dsp.Mixer(W="+", S="-").anchor("W"))
d += dsp.Arrow().at(sum1.E).right()
d += (control := dsp.Box(h=1, w=1).label("$G_c$", "center").anchor("W"))
d += dsp.Arrow().right().at(control.E)
d += (valv := dsp.Box(h=1, w=1).label("$G_v$", "center").anchor("W"))
d += dsp.Arrow().right().at(valv.E)
d += (sum2 := dsp.Mixer(W="+", N="+").anchor("W"))
d.push()
d += dsp.Arrow().at(sum2.N).label("$U(s)$", "right").reverse().up()
d.pop()
d += dsp.Arrow().right().at(sum2.E)
d += (proc := dsp.Box(h=1, w=1).label("$G_p$").anchor("W"))
d += dsp.Line().right().at(proc.E)
d += (dot := dsp.Dot(radius = 0))
d += dsp.Arrow().right().at(dot.center).label("$Y(s)$", "right")
d += dsp.Line().down().at(dot.center).length(1.5)
d += dsp.Line().left().length(3)
d += (medidor1 := dsp.Box(h=1, w=1).label("$G_{m_1}$", "center").anchor("E"))
d += dsp.Arrow().left().at(medidor1.W).length(2)
d += (medidor2 := dsp.Box(h=1, w=1).label("$G_{m_2}$", "center").anchor("E"))
d += dsp.Line().at(medidor2.W).tox(sum1.S).left()
d += dsp.Arrow().to(sum1.S)
d.save("./img/prob812.svg")
d.draw()
Las funciones de transferencia son las siguientes:
siendo
Las constantes de las funciones de transferenciason:
Determinar los márgenes de ganancia y de fase.
Mostrar si el sistema es o no estable.
¿Qué influencia tendría la introducción en el controlador de una acción derivativa con
= 1 min.
Problema 8.13
Dibujar el diagrama de Nyquist de la función de transferencia de lazo abierto siguiente:
Problema 8.14
Determinar utilizando el criterio de Nyquist la estabilidad de lazo cerrado que tiene la siguiente función de transferencia de lazo abierto:
Problema 8.15
Dibujar los diagramas de Bode y de Nyquist para la siguiente función de transferencia. Discutir la estabilidad.
Problema 8.16
Considerar la función de lazo abierto siguiente:
Estudiar meediante los diagramas de Bode la influencia del retraso o del tiempo muerto
Problema 8.17
Sea un proceso con la siguiente función de transferencia:
Este proceso se controla mediante un controlador proporcional. Asumiendo que
Aproximar el retraso con una aproximación de Padé de primer orden:
Utilizar una aproximación de Padé para el retraso de segundo orden:
Problema 8.18
A continuación se muestran la razón de amplitud y desfase en función de la frecuencia de tres sistemas desconocidos:
Sistema 1:
|
RA |
|
---|---|---|
0.01 |
10 |
-0.63 |
0.05 |
9.99 |
-3.15 |
0.10 |
9.99 |
-6.30 |
1.0 |
9.95 |
-63.01 |
3.0 |
9.58 |
-188.60 |
5.0 |
8.94 |
-313.04 |
7.0 |
8.19 |
-436.06 |
9.0 |
7.43 |
-557.65 |
10.0 |
7.04 |
-617.96 |
12.0 |
6.40 |
-737.74 |
15.0 |
5.55 |
-915.75 |
20.0 |
4.47 |
-1209.35 |
30.0 |
3.16 |
etc. |
40.0 |
2.43 |
|
50.0 |
1.96 |
Sistema 2:
|
RA |
|
---|---|---|
0.01 |
5.00 |
-0.23 |
0.05 |
5.05 |
-1.13 |
0.10 |
5.20 |
-2.39 |
0.20 |
5.93 |
-5.44 |
0.30 |
7.68 |
-11.62 |
0.40 |
12.69 |
-23.96 |
0.50 |
25.00 |
-90.00 |
0.60 |
9.98 |
-151.39 |
0.70 |
5.00 |
-163.74 |
0.80 |
3.25 |
-168.10 |
0.90 |
2.20 |
-170.87 |
1.10 |
1.29 |
-173.46 |
1.50 |
0.62 |
-175.71 |
2.00 |
0.33 |
-176.95 |
5.00 |
0.05 |
-178.84 |
Sistema 3:
|
RA |
|
---|---|---|
0.01 |
17 |
-1.49 |
0.02 |
16.99 |
-2.98 |
0.10 |
16.67 |
-14.75 |
0.30 |
14.42 |
-41.21 |
0.50 |
11.66 |
-61.90 |
0.70 |
9.33 |
-77.76 |
1.00 |
6.80 |
-95.73 |
1.50 |
4.30 |
-117.03 |
2.00 |
2.92 |
-132.42 |
2.50 |
2.07 |
-144.53 |
3.00 |
1.55 |
-154.04 |
4.00 |
0.94 |
-169.23 |
8.00 |
0.26 |
-208.22 |
10.00 |
0.17 |
-223.12 |
20.00 |
0.04 |
-287.45 |
Determinar el orden de los sistemas y buscar la existencia de tiempos muertos.
Calcular los valores de los parámetros de los sistemas, incluido el retraso, si existe.
Problema 8.19
Sea un proceso cuya función de transferencias es:
Los valores de los parámetros se han determinado con un error de