Vous êtes sur la page 1sur 39

Diseño de sistemas de control en el

espacio de estados
2 Técnica de ubicación o de asignación de polos

● El método de asignación de polos es algo análogo al método del lugar de las


raíces ya que se colocan los polos en lazo cerrado en posiciones deseadas. La
diferencia básica es que en el diseño en el lugar de las raíces se sitúan sólo los
polos en lazo cerrado dominantes, mientras que en el diseño por asignación de
polos se colocan todos los polos en lazo cerrado en las posiciones que se
deseen.
● Se supone que todas las variables de estado son medibles y que están
disponibles para su realimentación.
● Si el sistema considerado es de estado completamente controlable, los polos
del sistema en lazo cerrado se pueden colocar en cualquier posición deseada
mediante una realimentación del estado a través de una adecuada matriz de
ganancias de la realimentación del estado.
● La técnica de diseño empieza con la determinación de los polos en lazo
cerrado deseados a partir de la respuesta transitoria y/o las especificaciones de
la respuesta en frecuencia, tales como velocidad, razón de amortiguamiento, o
ancho de banda, al igual que los requisitos en estado estacionario.
3 Técnica de ubicación o de asignación de polos...
• Se decide que los polos en lazo cerrado estén en s=u1, s=u2, ..., s=un.
• Seleccionando una matriz de ganancias apropiada para
realimentación del estado, es posible hacer que el sistema tenga los
polos en lazo cerrado en las posiciones deseadas, siempre y cuando
el sistema original sea de estado completamente
controlable(condición necesaria y suficiente).
• Partimos el estudio con sistemas SISO, es decir, tomando la señal de
control u(t) y la señal de salida y(t) como escalares. También la
entrada de referencia r(t) es cero.
Diseño mediante asignación de polos.
4
• En el enfoque convencional del diseño de un sistema de
control SISO, se diseña un controlador (compensador) tal
que los polos dominantes en lazo cerrado tengan una razón
de amortiguamiento ζ y una frecuencia natural no
amortiguada ωn deseada.
• En la asignación de polos, el orden del sistema aumenta en
1 o 2(aunque pueden simplificarse los polos o ceros).
• Obsérvese que en este método se supone que los efectos
sobre las respuestas de los polos en lazo cerrado no
dominantes son despreciables.
Enfoque del diseño convencional especifica só lo los polos dominantes
en lazo cerrado
5 Enfoque actual de asignació n de polos especifica todos los polos en
lazo cerrado (requiere tener buenas medidas de todas las variables de
estado, o bien incluir un observador de estado en el sistema.)
La exigencia es que el sistema sea de estado completamente
controlable.

Se selecciona la señal de control


como u = - Kx

La señal de control u se determina


mediante un estado instantáneo.
Tal esquema se denomina
realimentación del estado. La
matriz K de 1xn se denomina
matriz de ganancia de
realimentación de estado.

Se supone que todas las variables


de estado están disponibles para
su realimentación.
Sistema regulador

Este sistema en lazo cerrado no tiene entradas. Su objetivo es mantener la


salida a cero.
Como pueden existir perturbaciones, la salida se desviará de cero. Esta
salida retornará a la entrada de referencia cero debido al esquema de
realimentación del estado del sistema. Un sistema de esta naturaleza en que
la entrada de referencia es siempre cero se conoce como un sistema
regulador.

Si la entrada de referencia al sistema es siempre una constante distinta de


cero, el sistema se denomina también un sistema regulador.
7 La solución de
esta ecuación
está dada por

donde x(0) es el estado inicial provocado por perturbaciones externas.


La estabilidad y las características de respuesta transitoria se determinan
mediante los valores característicos de la matriz A-BK.

Si se elige la matriz K de forma adecuada, la matriz A-BK se convierte en una


matriz asintóticamente estable y para todos los x(0)≠0 es posible hacer que x(t)
tienda a 0 conforme t tiende a infinito.
Los valores propios de la matriz A-BK se denominan polos del regulador. Si estos se
colocan en el semiplano izquierdo del plano s, entonces x(t) tiende a 0 cuando t
tiende a infinito.

Si el sistema no es de estado completamente controlable, existen valores propios de la


matriz A que no pueden colocarse de forma arbitraria.

El problema de situar los polos en lazo cerrado en las posiciones deseadas se


denomina problema de asignación de polos.
• Si el sistema no es de estado completamente controlable, existen
valores propios de la matriz A - BK que no se pueden controlar
8
mediante realimentació n del estado.

existen q vectores columna linealmente independientes en la matriz de


controlabilidad.

• Si el sistema no es de estado completamente controlable, pero es


estabilizable, entonces es posible hacer que el sistema completo sea
estable al colocar los polos en lazo cerrado en las posiciones deseadas
para los q modos controlables. Los restantes (n - q) modos no controlables
son estables. De esta forma, el sistema completo se puede estabilizar.
Determinació n de la matriz K Sistema dado
utilizando la matriz de
transformació n T. Señal de control
9
Determinació n de la matriz K utilizando la matriz de
transformació n T...
10
Determinació n de la matriz K utilizando el mé todo de
sustitució n directa.
11
Si el sistema es de un orden inferior (n <=3), la sustitució n directa de la
matriz K en el polinomio caracterı́stico deseado puede ser má s simple.
Por ejemplo, si n=3, escriba la matriz de ganancias de realimentació n
de estado K como

Como ambos miembros de esta ecuació n caracterı́stica son polinomios en s,


igualando en ellos los coeficientes de las potencias iguales de s es posible
determinar los valores de k1, k2 y k3. Este mé todo es conveniente si n =2 o 3.
(Para n = 4, 5, 6, ..., este mé todo se vuelve muy tedioso.

Obsé rvese que si el sistema no es completamente controlable, la matriz K no se


puede determinar. (No existe solució n.)
Determinación de la matriz K utilizando la fórmula de
Ackermann. Sistema dado
12
Señal de control

Suponer que los polos en lazo cerrado deseados está n en s=k1, s=k2, ..., s=kn.
La ecuació n caracterı́stica deseada es

Después de varios pasos intermedios se tiene lo siguiente:

Donde:
Sistema regulador y sistema controlador.
13

Los sistemas que incluyen controladores pueden dividirse en dos


categorías:
Sistema regulador (donde la entrada de referencia es constante,
incluyendo cero) y

Sistema servocontrol (donde la entrada de referencia es variable con


el tiempo).
Elección de la localización de los polos en lazo cerrado deseados.

14 • Primero, escoger las localizaciones de los polos en lazo cerrado


deseados.
• El método más utilizado es elegir tales polos basándose en la
experiencia que se tiene del diseño mediante el lugar de las raíces,
colocando un par de polos dominantes en lazo cerrado y eligiendo los
otros polos de forma que estén suficientemente alejados a la izquierda
de los polos dominantes en lazo cerrado.
• Obsérvese que si se colocan los polos en lazo cerrado dominantes
alejados del eje jw, de manera que la respuesta del sistema se hace
muy rápida, las señales en el sistema serán muy grandes, lo que puede
dar como resultado que el sistema sea no lineal. Esto debería evitarse.
• Otro método se basa en el control óptimo cuadrático. Este método
determinará los polos en lazo cerrado deseados de forma tal que se
establece un compromiso entre la respuesta aceptable y la cantidad
de energía de control requerida. Obsérvese que si se requiere una
respuesta de alta velocidad, son necesarias grandes cantidades de
energía de control. También, en general, aumentar la velocidad de
respuesta exige actuadores más grandes y pesados que costarán más.
15
16
17
18
La matriz K no es ú nica para un sistema determinado, depende de las posiciones
deseadas de los polos en lazo cerrado (los cuales determinan la velocidad y el
19 amortiguamiento de la respuesta) seleccionados.
La selecció n de los polos en lazo cerrado deseados, o de la ecuació n
caracterı́stica deseada, es un compromiso entre la rapidez de la respuesta del
vector de error y la sensibilidad ante perturbaciones y ruido en la medida. Es decir,
si se incrementa la velocidad de respuesta del error, por lo general se incrementan
los efectos adversos de las perturbaciones y del ruido en la medida.
Si el sistema es de segundo orden, su diná mica (las caracterı́sticas de respuesta)
se correlaciona de manera precisa con la situació n de los polos en lazo cerrado
deseados y los ceros de la planta.
Para sistemas de orden superior, la situació n de los polos en lazo cerrado y la
diná mica del sistema (las caracterı́sticas de respuesta) no se correlacionan
fá cilmente.
Por tanto, al determinar la matriz de ganancias de realimentació n del estado K
para un sistema determinado, es conveniente examinar mediante simulaciones en
una computadora las caracterı́sticas de respuesta del sistema para varias matrices
K diferentes (basá ndose en algunas ecuaciones caracterı́sticas deseadas distintas)
y elegir aquella que ofrezca el mejor comportamiento global del sistema.
Solució n de problemas de asignació n de polos con
20 MATLAB

MATLAB tiene dos ó rdenes —acker y place— para el cá lculo de la


matriz de ganancias de realimentació n K.

La orden acker se basa en la fó rmula de Ackermann. Esta orden se


aplica só lo a sistemas de una ú nica entrada. Los polos en lazo cerrado
deseados pueden incluir polos mú ltiples (polos localizados en el mismo
lugar).
place. Si el sistema posee mú ltiples entradas, para un conjunto
especificado de polos en lazo cerrado la matriz de ganancias de
realimentació n del estado K no es ú nica y se dispone de un grado de
libertad adicional (o de varios grados de libertad) para determinar K. Un
uso comú n es maximizar el margen de estabilidad. La asignació n de
polos basada en este mé todo se llama asignació n de polos robusta. La
orden de MATLAB para la asignació n de polos robusta es place.
Solució n de problemas de asignació n de polos con
21 MATLAB...

Aunque la orden place se puede utilizar tanto para sistemas de una


ú nica entrada como de mú ltiples entradas, requiere que la multiplicidad
de los polos en los polos en lazo cerrado deseados no sea mayor que
el rango de B. Esto es, si la matriz B es una matriz n x 1, la orden
place necesita que no haya polos mú ltiples en el conjunto de polos
en lazo cerrado deseado.
Para sistemas de una ú nica entrada, acker y place dan la misma K.
(Pero para sistemas con mú ltiples entradas, se debe emplear la orden
place en lugar de acker.)
Se observa que cuando el sistema de entrada ú nica es poco
controlable, pueden surgir algu- nos problemas de cá lculo si se utiliza
la orden acker. En tal caso es preferible utilizar la orden place siempre
que no existan polos mú ltiples en el conjunto deseado de polos en lazo
cerrado.
22

donde J es la matriz consistente de los polos en lazo cerrado deseados:

la orden eig(A–B*K) se puede utilizar para verificar que la matriz K ası́


obtenida da los valores propios deseados.
Ejemplo
23

close all
clc
A=[0 1 0;0 0 1;-1 -5 -6]
B=[0;0;1]
C=[1 0 0]
% Calcular el valor de k
% Reubicar polos a J=[-2+j*2*sqrt(3) -2-j*2*sqrt(3) -10]
J=[-2+j*4 -2-j*4 -10]
% Uso del comando acker para reubicar polos
K=acker(A,B,J)
% Uso del comando place para reubicar polos
K=place(A,B,J)
Ejemplo
24
Se desea que este sistema regulador tenga polos en lazo cerrado en

La matriz de ganancias de realimentació n del estado K necesaria esta dado


por:

Utilizando MATLAB, obtenga la respuesta del sistema a la siguiente condició n


inicial:

Respuesta a condició n inicial. Para obtener la respuesta a la condició n inicial


dada x(0), se sustituye u = - Kx en la ecuació n de la planta y se obtiene
Para representar las curvas de respuesta (x1 respecto a t, x2 respecto
a t y x3 respecto a t) se puede utilizar la orden initial. En primer lugar
se definen las ecuaciones en el espacio de estado para el sistema
25 como sigue:
% Respuesta a condición inicial:
A=[0 1 0;0 0 1;-1 -5 -6];
B = [0;0;1];
K=[199 55 8];
sys = ss(A-B*K, eye(3), eye(3), eye(3));
donde se incluye u t = 0:0.01:4;
(un vector de entrada x = initial(sys,[1;0;0],t);
tridimensional). Este
x1=[1 0 0]*x';
vector u se considera
0 en el cá lculo de la x2=[0 1 0]*x';
respuesta a la x3=[0 0 1]*x';
condició n inicial. subplot(3,1,1); plot(t,x1), grid
title('Respuesta a condición inicial')
ylabel('Variable de estado x1')
subplot(3,1,2); plot(t,x2),grid
ylabel('Variable de estado x2')
subplot(3,1,3); plot(t,x3),grid
xlabel('t (sec)')
ylabel('Variable de estado x3')
26
ejemplopagina3_26

close all
clc
A=[0 1 0;0 0 1;-1 -5 -6]
B=[0;0;1]
K=[199 55 8]
Ejemplo
27
clear all
28 clc

a=[1 1;-4 -3]


b=[0;2]
c=[0 0]
d=0

% para obtener el sistema en forma


canónica controlable
% no hay un comando directo en matlab
%primero se determina la función de
transferencia
[num den]=ss2tf(a,b,c,d)
% forma canónica controlable
[Ac,Bc,Cc,Dc]=tf2ss(num,den)
% se puede invertir Ac para que sea
idéntico
% a la matriz canónica controlable ya
estudiado

forma canó nica controlable.


Ejemplo clear all
clc
29 Sea un sistema definido por syms s
a=[0 1;-2 -3]
b=[0;2]
c=[1 0]
d=0
% ecuación
característica
i=eye(2)
Ec=det(s*i-a)

roots([ 1 3 2])
M=ctrb(a,b)
30 rango=rank(M)
31

% Calcular el valor de k
% Reubicar polos a J=[-3 -5]
J=[-3 -5]
% Uso del comando acker para
reubicar polos
K=acker(a,b,J)
clear all
clc
32 syms s
a=[0 1;-2 -3]
b=[0;2]
c=[1 0]
d=0
% ecuación característica
i=eye(2)
Ec=det(s*i-a)
M=ctrb(a,b)
rango=rank(M)
% Calcular el valor de k
% Reubicar polos a J=[-3 -5]
J=[-3 -5]
% Uso del comando acker
para reubicar polos
K=acker(a,b,J)
Ejemplo
33
34
35
clc
36 num=10;
den=conv(conv([1 1],[1 2]),[1 3]);
sys=tf(num,den);
% para obterner es sistema en forma canonica controlable
% no hay un comando directo en matlab
[A,B,C,D]=tf2ss(num,den)
% para obtener el sistema en la forma canonica obserbable
% usar el comando canon
[A,B,C,D]=canon(A,B,C,D,'companion')
% para obtener el sistema en la forma canonica diagonal
% usar el comando canon
[A,B,C,D]=canon(A,B,C,D,'modal')
Ejemplo
37

=Obsv(A,C) = [C;C*A]
38
clear all
close all
clc

A=[1 1;-4 -3];


B=[0;2]
C=[1 1]
D=0

% para obtener el sistema en la forma canónica observable


% usar el comando canon
[A,B,C,D]=canon(A,B,C,D,'companion')
39

tarea
documento 3...ejercicios
pag15, resolver cada método usando matlab
pag23, resolver usando matlab
pag24, resolver usando matlab usar línea de comandos de la página 25
y luego en simulink según página 26
pag27, resolver usando matlab
pag29, resolver usando matlab y luego pag32 en simulink
pag33, resolver usando matlab
pag37, resolver usando matlab

Vous aimerez peut-être aussi