SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
17-4-2015
BENEMÉRITA UNIVERSIDAD
AUTÓNOMA DE PUEBLA
Facultad de Ciencias de la Electrónica
Control Moderno y Sus Aplicaciones
Reporte Práctica 2 Control por
Retroalimentación de estado y
diseño de observadores
Profesor: J. Fermi Guerrero
Castellanos
Alumnos:
Acoltzi Romano Maritza
Carballo Valderrábano Karla
Hernández Aguilar Luis Adrian
Herrera Medina Martín Raymundo
Primavera 2015
INTRODUCCIÓN
En ocasiones se requiere que en un sistema, después de un tiempo finito, todas las
variables de estado se puedan controlar por una señal de control que no esté sujeta a
ningún tipo de restricción, por lo que a éstos se les somete a un estudio de
controlabilidad y, en caso de que el sistema resulte controlable, se desarrolla un
controlador y/o un servosistema para alcanzar los requerimientos solicitados. Por otro
lado, no siempre se tienen la suficiente cantidad de sensores disponibles para
monitorear todas las variables de estado de un sistema; en algunos sistemas es
posible determinar el estado completo con la señal de salida del mismo, estos
sistemas son llamados observables, a los cuales se les diseña un observador para
cumplir con la propiedad mencionada.
Con la finalidad de comprender lo anteriormente expuesto, esta práctica se divide en
dos secciones; el primer apartado consiste en analizar la estabilidad, controlabilidad y
observabilidad de un sistema electromecánico, analizar cómo se pueden ver
afectados al modificar una variable del sistema y pensar en los posibles controladores
y observadores. El segundo apartado consiste en un sistema de un péndulo invertido,
del cual se obtiene su representación en variables de estado cuando se encuentra el
ángulo del péndulo en libre posición (no lineal) y cuando se busca que el sistema esté
en equilibrio, es decir, que este en posición vertical (lineal), posteriormente se analiza
la estabilidad, controlabilidad y observabilidad del sistema lineal, el cual se utiliza como
base para diseñar un controlador, un servosistema y un observador, los cuales son
implementados al sistema no lineal junto con el uso de un Joystick para determinar la
posición del carro que lleva al péndulo, simulándolo en tiempo real utilizando la
extensión Simulink de Matlab.
OBJETIVO
Comprender de una manera conceptual y práctica el uso de la representación en
variables de estado de un sistema LTI para el diseño de controladores y observadores.
MARCO TEÓRICO
Estado
El estado de un sistema dinámico es el conjunto más pequeño de variables (llamadas
variables de estado) tal que, el conocimiento de esas variables en un determinado
instante t0 junto con el conocimiento de los valores de la señal de entrada para los
instantes t ≥ t0, permite determinar el comportamiento y evolución del sistema para
cualquier instante de tiempo t ≥ t0. Las variables de estado se agrupan en el llamado
vector de estado y el espacio n dimensional que determinan los posibles valores de
esas variables, se denomina espacio de estados. La dinámica de un sistema se puede
describir en función del valor del vector de estados y de la señal de entrada.
Estabilidad
De acuerdo al Teorema de estabilidad: Si G(s) es la función de transferencia de un
sistema, ésta será estable si todos los polos de G(s) están en el semiplano izquierdo
del plano complejo.
La estabilidad de los sistemas dinámicos se refiere a que pequeñas perturbaciones
en las condiciones iniciales o en alguna de las variables que intervienen en la ecuación
del movimiento produzca un comportamiento suficientemente similar al
comportamiento sin dichas perturbaciones. Para sistemas deterministas descritos por
ecuaciones diferenciales la estabilidad del dicho sistema de ecuaciones obviamente
implica la estabilidad del sistema. Para esta práctica se hace uso del Criterio de
Estabilidad de Routh que estable que en un sistema realimentado es estable si todos
los polos de lazo cerrado se ubican en el semiplano izquierdo del plano s. Esto es lo
mismo a decir que todas las raíces de la ecuación característica tienen parte real
negativa. El criterio de estabilidad de Routh permite determinar si hay raíces con parte
real positiva, es decir que es sistema es inestable y sin necesidad de resolver el
polinomio.
Controlabilidad
Un sistema de control es completamente controlable o de estado completamente
controlable, si es posible transferir al sistema desde un estado inicial arbitrario a
cualquier estado deseado en un tiempo finito. También puede decirse que será
completamente controlable, si cada variable de estado se puede controlar en un
tiempo finito por una señal de control que no esté sujeta a ningún tipo de restricción.
Como es habitual nos centraremos en el estudio de la controlabilidad de sistemas LTI:
Siendo la señal u (kT) constante en el intervalo de tiempo kT ≤ t ≤ (k + 1) T. En este
caso, la controlabilidad de estado completo implica que existe una señal de control
constante entre cada tiempo de muestreo que transfiere al sistema, desde un estado
x (kT) cualquiera a un estado deseado xf en como mucho n periodos de muestreo,
donde n es el tamaño del vector de estados.
Recordemos que la solución de la ecuación de estados es:
de ahí se obtiene:
donde la matriz
es la llamada matriz de controlabilidad .
Supóngase un estado final arbitrario x (nT) = xf . Si el sistema fuera controlable debería
existir un vector de actuaciones que al multiplicarlo por la matriz de controlabilidad
diese como resultado xf − Gnx(0). Como xf y x(0) pueden ser cualquier par de valores
del vector de estado, es fácil entender que xf−Gnx(0) puede ser cualquier vector de Rn.
De esto se desprende que para que el sistema sea controlable, el espacio de vectores
generado por los vectores que forman la matriz de controlabilidad (es decir, sus
columnas) debe ser todo Rn. La condición necesaria y suficiente para que se cumpla
esto es que el rango de la matriz de controlabilidad sea n. Este resultado permite
enunciar el siguiente lema.
Dado un sistema LTI de orden n representado es condición necesaria y suficiente para
que el sistema sea completamente controlable que el rango de la matriz de
controlabilidad sea igual a n.
El sistema que cumpla la condición establecida en el lema 1 podrá alcanzar cualquier
estado como máximo en n periodos de muestreo, pero sólo si no existen restricciones
sobre la señal de control. En caso contrario, se tardaría más.
Si el sistema es controlable, se podrá determinar la secuencia de valores de la entrada
necesaria para llevar al sistema a xf resolviendo el sistema de ecuaciones.
Por otra parte, la controlabilidad se puede comprobar a partir de la función de
transferencia de un sistema observando si hay cancelaciones de polos y ceros. En el
caso de que las hubiese, el sistema no sería controlable. Por tanto, el sistema
no sería controlable pues existe una cancelación de un polo con un cero.
Observabilidad
Considérese un sistema autónomo:
El sistema autónomo es completamente observable si todo estado inicial x(0) se puede
determinar de la observación de y(kT) durante un número finito de intervalos de
muestreo. Para que ello ocurra, cada transición del estado debe afectar a todos los
elementos del vector de salida.
La observabilidad juega un papel esencial en el control de aquellos sistemas en los
que algunas de las variables de estado no son accesibles, es decir, no son medibles
directamente. Nótese que se ha considerado un sistema autónomo. La razón de esto
es que la observabilidad de un sistema no autónomo se reduce a la del sistema
autónomo equivalente.
Se sabe que la solución de la ecuación de estado para el sistema autónomo es:
De ahí
La observabilidad completa implica que usando
se pueden determinar
donde xi(0) indica la iésima componente de x(0). Es decir el sistema es completamente
observable si las ecuaciones:
permiten determinar x1(0), x2(0), • • • , xn(0). Como y(kT) es un m-vector (asumiendo
que el sistema tiene m salidas) el sistema de ecuaciones anterior es en realidad un
sistema de n × m ecuaciones, en las que las incógnitas son las n componentes de
x(0).
Para que la solución de este sistema sea única debe haber entre ellas n ecuaciones
linealmente independientes. Esto se traduce en la siguiente condición de
observabilidad completa:
donde ∗ indica la conjugada traspuesta de una matriz y a la matriz que aparece en la
condición se la llama matriz de observabilidad.
Por otra parte, de una manera análoga a la de la controlabilidad, la observabilidad de
un sistema a partir de su función de transferencia se puede asegurar si ésta no
presenta cancelaciones de polos y ceros.
Finalmente, se enuncia a continuación una propiedad que será útil para poder obtener
la representación de un sistema en forma canónica, sin que por ello pueda
argumentarse que existe la posibilidad de variar la controlabilidad u observabilidad del
mismo.
Sea un sistema LTI dado en la forma usual, cuya matriz de controlabilidad es M y la
de observabilidad es N. Si se define una transformación como la anterior con:
siendo P una matriz invertible, entonces las matrices de controlabilidad y
observabilidad del sistema equivalente tienen el mismo rango que M y N .
Joystick
El puerto de Joystick es una entrada de 8 bits, cuatro indican el estado de los botones
de ambos joysticks y los otros cuatro, la posición X - Y de los joysticks.
Figura 1 Esquema de Conexión de Joystick
El registro de estado se lee por la E/S 200h. La estructura de datos del registro es
como sigue:
Tabla 1 Estructura de datos del Joystick
Bit 7 6 5 4 3 2 1 0
Joystick B B A A B B A A
Eje/Botón 2 1 2 1 Y X Y X
La posición de los ejes X - Y se puede calcular con la siguiente fórmula:
𝑇𝑖𝑒𝑚𝑝𝑜(𝜇𝑠) = 24.2 + 0.11𝑅 R
Donde:
R = Impedancia
Tiempo = Periodo detectado
El procedimiento para obtener la posición X - Y es:
1. Sacar un pulso por E/S 200h para activar el puerto de Joystick.
2. El bit del axis X - Y se mantiene a nivel alto hasta que se completa el tiempo de
descarga.
3. Reemplazar el tiempo de descarga detectado en la fórmula anterior. El valor de
R es lineal.
Algunas utilidades posibles del puerto de Joystick son:
 Como puerto de cuatro entradas digitales, formado por los cuatro botones de
disparo, por ejemplo en una central de alarma.
 Como puerto de cuatro entradas analógicas, formado por los ejes X - Y de
ambos Joystick, por ejemplo para colocar unas resistencias sensibles a la
temperatura (PTC o NTC) y fabricarnos un termómetro, o para colocar una
fotorresistencia, para hacernos un sensor lumínico o un fotómetro.
Todo queda en poder de la imaginación del diseñador.
Uso de un joystick en simulink
El modelo de joystick utilizado fue el control de mando de Ps2 con adaptador USB. En
este caso, solo se desea mover la posición del carro en el eje X, para lo cual se utilizó
solo la palanca izquierda en el eje X.
Figura 2 Joystick y palanca utilizada.
La interfaz con Simulink se realizó de la siguiente manera. Primero se instalaron los
controladores para usar el Joystick en la PC y se colocaron los componentes en
Simulink a utilizar como se muestra en la figura 3.
Figura 3 Elementos en Simulink.
En el cual se observa un selector, y la primera posición corresponde a la palanca
izquierda y al eje X. Luego se obtiene el Id del Joystick y se coloca en casillero que lo
requiere, en el elemento “Joystick Input”. Sin ganancia, el joystick responde a valores
de [-1,1], por esta razón se añade una ganancia de cualquier valor.
Figura 4 ID del Joystick
DESARROLLO
1. SISTEMA ELECTROMECÁNICO
Se consideró el sistema electromecánico mostrado en la figura 5.
Figura 5 Sistema Electromecánico
Teniendo como variables involucradas:
 Tm(t): Par aplicado.
 VA(t); I(t): Voltaje aplicado al motor y corriente de armadura, respectivamente.
 Jm; JL; JF: Momento de Inercia equivalente del motor, carga intermedia y carga
final.
 b1;b2: Coeficiente de fricción viscosa equivalente a los cojinetes del motor y
carga.
 θm; θL; θF: ángulos de desplazamiento del motor, carga intermedia y carga final.
 K: coeficiente de torsión de la flecha que une la carga intermedia con la carga
final.
Se modeló dicho sistema, dividiéndolo en subsistemas, para después relacionarlos
entre sí, las ecuaciones obtenidas para cada subsistema fueron:
Motor: 𝑉𝐴 = 𝑅𝐼 + 𝐿𝐼̇ + 𝐾 𝑚 𝜃 𝑚
̇
Masa M: 𝐽 𝑚 𝜃 𝑚
̈ = 𝑇 𝑚 − 𝑏1 𝜃 𝑚
̇ − 𝑇1
Engranes: 𝛼 =
𝑁1
𝑁2
= −
𝑇 𝑚
𝑇 𝑙
=
𝜃 𝑙
𝜃 𝑚
Masa L: 𝐽𝑙 𝜃𝑙
̈ = 𝑇𝑙 − 𝑏2 𝜃𝑙
̇ − 𝐾(𝜃𝑙 − 𝜃𝑓)
Masa F: 𝐽 𝑓 𝜃𝑓
̈ = 𝐾(𝜃𝑙 − 𝜃𝑓)
Al hacer un poco de álgebra a las ecuaciones diferenciales anteriores se llegó las
siguientes expresiones:
𝐼̇ = −
𝑅
𝐿
𝐼 −
𝐾 𝑚
𝐿
𝜃 𝑚
̇ +
1
𝐿
𝑉𝑎
𝜃 𝑚
̈ = −
𝑏
𝐽
𝜃 𝑚
̇ −
𝑘
𝐽
(𝛼𝜃 𝑚 − 𝜃𝑓) +
𝐾 𝑚
𝐽
𝐼
𝜃𝑓
̈ = −
𝑘
𝐽 𝑓
(𝛼𝜃 𝑚 + 𝜃𝑓)
De las cuales las variables J, b y k fueron definidas como sigue:
𝐽 = 𝐽 𝑚 + 𝐽𝐿 𝛼2
𝑏 = 𝑏1 + 𝑏2 𝛼2
𝑘 = 𝐾𝛼
Representación en variables de Estados
Tomando como variables de estado a la corriente del motor, las posiciones y
velocidades de los cuerpos m y f se llegó a que:
𝑋1 = 𝐼, 𝑋2 = 𝜃 𝑚, 𝑋3 = 𝜃 𝑚
̇ , 𝑋4 = 𝜃𝑓, 𝑋5 = 𝜃𝑓
̇
𝑋1
̇ = −
𝑅 𝑎
𝐿
𝑋1 −
𝐾 𝑚
𝐿
𝑋3 +
1
𝐿
𝑉𝑎
𝑋2
̇ = 𝑋3
𝑋3
̇ = −
𝑏
𝐽
𝑋3 −
𝑘
𝐽
(𝛼𝑋2 − 𝑋4) +
𝐾 𝑚
𝐽
𝑋1
𝑋4
̇ = 𝑋5
𝑋5
̇ = −
𝑘
𝐽 𝑓
(𝛼𝑋2 + 𝑋4)
Por lo tanto el sistema puedo ser representado en espacio de estados como se
muestra a continuación:
(
𝑋1
̇
𝑋2
̇
𝑋3
̇
𝑋4
̇
𝑋5
̇ )
=
(
−
𝑅 𝑎
𝐿
0 −
𝐾 𝑚
𝐿
0 0
0 0 1 0 0
𝐾 𝑚
𝐽
−
𝑘𝛼
𝐽
−
𝑏
𝐽
𝑘
𝐽
0
0 0 0 0 1
0 −
𝑘𝛼
𝐽 𝑓
0 −
𝑘
𝐽 𝑓
0
)
(
𝑋1
𝑋2
𝑋3
𝑋4
𝑋5)
+
(
1 𝐿⁄
0
0
0
0 )
𝑉𝑎
Y, considerando que solo sensores de posición angular están disponibles, se tuvo:
𝑦 = (
0 1 0 0 0
0 0 0 1 0
)
(
𝑋1
𝑋2
𝑋3
𝑋4
𝑋5)
Debido a la complejidad del sistema se optó por utilizar el software de Matlab para
realizar todos los análisis y cálculos que fueran necesarios para el desarrollo de este
ejercicio, el código del programa se encuentra en el Anexo 1.
Análisis de Estabilidad
Se analizó la estabilidad del sistema, utilizando los siguientes valores para las
variables del mismo.
𝑅 = 0.67Ω
𝑁1 = 1
𝑁2 = 2
𝐾 𝑚 = 4.3 × 10−3
𝐽 𝑚 = 3.4 × 10−5
𝐽𝐿 = 2.64 × 10−4
𝐽 𝐹 = 2.64 × 10−4
𝑏1 = 0.47
𝑏2 = 0.47
K = 0.015
L = 2.75 × 10−6
Quedando el sistema expresado en varibles de estado como:
(
𝑋1
̇
𝑋2
̇
𝑋3
̇
𝑋4
̇
𝑋5
̇ )
=
(
−2.423 × 105
0 −1.56 × 103
0 0
0 0 1 0 0
40 −40 −5.87 × 103
−80 0
0 0 0 0 1
0 −30 0 −60 0) (
𝑋1
𝑋2
𝑋3
𝑋4
𝑋5)
+
(
3.64 × 105
0
0
0
0 )
𝑉𝑎
𝑦 = (
0 1 0 0 0
0 0 0 1 0
)
(
𝑋1
𝑋2
𝑋3
𝑋4
𝑋5)
Definiendo a las matrices A, B y C como:
𝐴 =
(
−2.44 × 105
0 −1.56 × 103
0 0
0 0 1 0 0
43 −37.5 −5.87 × 103
−75 0
0 0 0 0 1
0 −28.41 0 −56.82 0)
𝐵 =
(
3.6364 × 105
0
0
0
0 )
𝐶 = (
0 1 0 0 0
0 0 0 1 0
)
Enseguida, se calcularon los eigenvalores de la matriz A del sistema para determinar
la estabilidad del sistema, usando la directiva eig(A), la cual generó los siguientes
valores:
𝜆1 = −2.4356 × 105
𝜆2 = −5875.3
𝜆3 = 1.5 × 10−18
𝜆4 = −3.19 × 10−3
+ 7.53𝑖
𝜆5 = −3.19 × 10−3
− 7.53𝑖
Debido a los valores obtenidos, en especial 𝜆3 que a pesar de ser un valor muy
cercano a cero es positivo, seguido en impacto por 𝜆4 y 𝜆5 al ser números negativos
muy cercanos a 0, se concluyó que el sistema no es estable.
Análisis de controlabilidad
Continuando con la práctica se analizó la controlabilidad del sistema, recordando que
para hacerlo se debe hallar el determinante de la matriz controlabilidad definida como:
𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = [𝐵 𝐴𝐵 𝐴2
𝐵 𝐴3
𝐵 𝐴4
𝐵]
Que para el sistema tiene los siguientes valores:
𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑
=
[
3.64 × 105
0
0
0
0
−8.86 × 1010
0
1.56 × 107
0
0
2.16 × 1016
1.56 × 107
−3.90 × 1012
0
0
−5.26 × 1021
−3.90 × 1012
9.51 × 1017
0
−4.44 × 108
1.28 × 1027
9.51 × 1017
−2.32 × 1023
−4.44 × 108
1.11 × 1014 ]
Mediante la directiva det(CONTROLABILIDAD)se obtuvo el valor del determinante de
esta matriz el cual fue de:
𝑑𝑒𝑡(𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑) = 1.7544 × 1037
Al ser el determinante diferente de 0, se consideró que la matriz Controlabilidad era
de rango pleno, y, por tanto, que el sistema era controlable. Sin embargo, también se
utilizaron las directivas Co=ctrb(A,B)y rank(Co), las cuales calculan directamente la
matriz de controlabilidad del sistema y el rango de la misma, el resultado obtenido por
estas directivas fue de un rango igual a 2, el cual es menor que la dimensión de la
matriz A. Ante dicho resultado se concluyó que el sistema en realidad no era
controlable, a pesar de que el determinante de la matriz de controlabilidad sea
diferente de 0.
Análisis de Observabilidad
Posteriormente se supuso que solo se tenía un sensor para el ángulo θm, por lo que
la matriz C del sistema expresado en variables de estado cambió a:
𝐶 = (0 1 0 0 0)
Se realizó un análisis de observabilidad, recordando que para hacerlo se debe hallar
el determinante de la matriz observabilidad, definida como:
𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = [𝐶 𝐶𝐴 𝐶𝐴2
𝐶𝐴3
𝐶𝐴4]
Y que para el sistema tiene los siguientes valores:
𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑
=
[
0
0
43
−1.07 × 107
2.62 × 1012
1
0
−37.5
2.20 × 105
−1.30 × 109
0
1
−5875
3.44 × 107
−1.86 × 1011
0
0
−75
4.41 × 105
−2.58 × 109
0
0
0
−75
4.41 × 105]
Mediante la directiva det(OBSERVABILIDAD)se obtuvo el valor del determinante de esta
matriz el cual fue de:
𝑑𝑒𝑡(𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑) = 1.4357 × 1016
Al ser el determinante diferente de 0, se consideró que la matriz Observabilidad era
de rango pleno y, por tanto, que el sistema era observable. De igual manera que lo
hecho con la controlabilidad, se utilizaron las directivas Ob=obsv(A,C)y rank(Ob), las
cuales calculan directamente la matriz de observabilidad del sistema y el rango de la
misma. El resultado obtenido por estas directivas fue de un rango igual a 5, el cual es
igual que la dimensión de la matriz A, ante dicho resultado se corroboró que el sistema
era observable.
Cambio de valor de K
Finalmente se propuso un nuevo valor para el coeficiente de torsión de la flecha con
un valor de 𝐾 = 15 × 107
, teniendo como hipótesis que este cambio era provocado
porque el esfuerzo de torsión necesario para que la flecha que une a las masas l y f
gire será 1010 veces mayor al tomado en cuenta anteriormente, en otras palabras, que
en cierto punto se podría tomar a las masas l y f y la flecha que los une como una sola
flecha.
Al cambiar este valor, la matriz A del sistema también cambia, quedando como:
𝐴′ =
(
−2.44 × 105
0 −1.56 × 103
0 0
0 0 1 0 0
43 −3.5 × 1011
−5.87 × 103
−7.5 × 1011
0
0 0 0 0 1
0 −2.84 × 1011
0 −5.68 × 1011
0)
Se hizo un análisis de la estabilidad del nuevo sistema, usando la directiva eig(A), la
cual generó los siguientes valores:
𝜆1 = −2.4356 × 105
𝜆2 = −3538.2
𝜆3 = −1.47 × 10−8
𝜆4 = −1167.9 + 9.71 × 105
𝑖
𝜆5 = −1167.9 + 9.71 × 105
𝑖
Debido a los valores obtenidos, en especial 𝜆3 que a pesar de ser un valor negativo
es muy cercano a 0, se concluyó que el sistema era marginalmente estable.
De igual modo, se volvió a analizar la controlabilidad del sistema, teniendo la matriz
de controlabilidad los siguientes valores:
𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑′
=
[
3.64 × 105
0
0
0
0
−8.86 × 1010
0
1.56 × 107
0
0
2.16 × 1016
1.56 × 107
−3.90 × 1012
0
0
−5.26 × 1021
−3.90 × 1012
−4.91 × 1018
0
−4.44 × 1018
1.28 × 1027
−4.91 × 1018
1.27 × 1024
−4.44 × 1018
1.11 × 1024 ]
Mediante la directiva det(CONTROLABILIDAD)se obtuvo el valor del determinante de
esta matriz el cual fue de:
𝑑𝑒𝑡(𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑′) = 1.7544 × 1057
Al ser el determinante diferente de 0, se consideró que la matriz Controlabilidad podía
ser de rango pleno, y, por tanto, que el sistema podía ser controlable. Sin embargo,
también se utilizaron las directivas Co=ctrb(A,B)y rank(Co), el resultado obtenido por
estas directivas fue de un rango igual a 3, el cual es menor que la dimensión de la
matriz A. Ante dicho resultado se pensó que el sistema en realidad no era controlable,
a pesar de que el determinante de la matriz de controlabilidad era diferente de 0; sin
embargo, al recordar la interpretación física del cambio de K, siendo ésta el coeficiente
de torsión de la flecha que une a las masas l y f, cuestión que físicamente es muy
difícil de controlar en un sistema mecánico, se consideró que la matriz A del sistema
podía haber disminuido su dimensión, pues las masas l y f y la flecha que las une
pueden verse como un solo cuerpo, por lo que el sistema podría llegar a ser
controlable.
Hipótesis de Control por retroalimentación y observador de estados
En base a los datos obtenidos se concluyó que el sistema no es controlable, por lo
que cualquier diseño de un control por retroalimentación no brindará los resultados
deseables, sin embargo, se quiso comprobar esto, por medio del diseño del control
por retroalimentación y su posterior simulación.
Se asumió que todo el estado era medible y se propusieron como polos en lazo
cerrado a 𝜆1,2 = −1 ± 𝑗, 𝜆3,4 = −4 ± 2𝑗 y 𝜆5 = 2𝑗. Para calcular la matriz K es necesario
conocer la función de transferencia del sistema lineal, por lo que se implementaron los
polos en lazo cerrado deseados, planteándose de la siguiente manera:
(𝑠 + 1 − 𝑗) ∗ (𝑠 + 1 + 𝑗) ∗ (𝑠 + 4 − 2𝑗) ∗ (𝑠 + 4 + 2𝑗) ∗ (𝑠 + 2𝑗)
Dando como resultado
𝑠5
+ 10.0002𝑠4
+ 33.002𝑠3
+ 40.006𝑠2
+ 16.007𝑠 + 0.0031
Se encontró el polinomio característico del sistema en lazo cerrado por medio de la
matriz |𝜆𝐼 − (𝐴 + 𝐵𝐾)|, dando como resultado
𝑠5
+ (−3.636 × 105
𝐾1 + 2.495 × 105)𝑠4
+ (−2.136 × 109
𝐾1 − 1.526 × 107
𝐾3 + 1.431 × 109
𝐾5)𝑠3
+ (−3.429 × 107
𝐾1 − 1.563 × 107
𝐾2 + 2.331 × 107)𝑠2
+ (8.133 × 1010
− 1.213 × 1011
𝐾1 + 8.884 × 108
𝐾3 + 4.442 × 108
𝐾5)𝑠
+ (4.442 × 108
𝐾4 − 8.884 × 105
𝐾2)
Se igualaron el polinomio característico del sistema en lazo cerrado con el polo
característico deseado.
40 = 0 − 𝑘1
56 = −14.7𝑘1 − 0.00001𝑘3
38 = 1.47 − 0.00001𝑘4 − 14.65𝑘2 − 0.9923𝑘1 + 3.664𝑘3
10 = 16.223 + 3.664𝑘4 − 0.9923𝑘2
Utilizando el método Gauss Jordan en Matlab se obtuvo:
𝑘1 = 0.68613
𝑘2 = 0.01403
𝑘3 = 2.19933
𝑘4 = 0.02806
𝑘5 = 7.8788 × 10−6
Dando como resultado la matriz K
𝐾 = [0.68613 0.01403 2.19933 0.02806 7.8788 × 10−6]
Para el diseño del servosistema se implementó la siguiente fórmula para hallar el
valor Kr.
𝐾𝑟 = [−𝐶(𝐴 + 𝐵𝐾)−1
𝐵]−1
Implementando el software Matlab se tiene como resultado
𝐾𝑟 = 2.7764 × 1011
Este control se implementó utilizando el programa Simulink al sistema y se comprobó
que aún proponiendo un sistema de control por retroalimentación, el sistema seguirá
siendo inestable como se puede observar en las siguientes figuras, en donde se
muestran la entrada al sistema, la posición de m y de f, respectivamente.
Figura 6 Sistema sin controlabilidad
Figura 7 Sistema implementando controlabilidad
2. SISTEMA PÉNDULO INVERTIDO
Se consideró el sistema péndulo invertido mostrado en la figura 8.
Figura 8 Sistema Péndulo Invertido
Las ecuaciones de movimiento del sistema vienen dadas por las siguientes
ecuaciones no lineales:
[ 𝐼 + 𝑚𝑙2
𝑚𝑙 cos 𝜃
𝑚𝑙 cos 𝜃 𝑀 + 𝑚
] [ 𝜃̈
𝑥̈
] + [
𝛽𝜃̇ − 𝑚𝑔𝑙 sin 𝜃
𝑏𝑥̇ − (𝑚𝑙 sin 𝜃)𝜃̇2
] = [
0
𝑢
]
Representación en variables de Estados
Se expresó al sistema en variables de estado, utilizando las siguientes variables:
𝑥1 = 𝑥, 𝑥2 = 𝑥̇, 𝑥3 = 𝜃, 𝑥4 = 𝜃̇
[
𝐼 + 𝑚𝑙2
𝑚𝑙 cos 𝑥3
𝑚𝑙 cos 𝑥3 𝑀 + 𝑚
] [
𝑥4̇
𝑥2̇
] + [
𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3
𝑏𝑥2 − (𝑚𝑙 sin 𝑥3)𝑥4
2] = [
0
𝑢
]
Desarrollando las ecuaciones se tuvo lo siguiente:
1. (𝐼 + 𝑚𝑙2)𝑥4̇ + (𝑚𝑙 cos 𝑥3)𝑥2̇ + 𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3 = 0
2. (𝑚𝑙 cos 𝑥3)𝑥4̇ + (𝑀 + 𝑚)𝑥2̇ + 𝑏𝑥2 − (𝑚𝑙 sin 𝑥3)𝑥4
2
= 𝑢
Se resuelve el sistema de ecuaciones anterior, despejando 𝑥4̇ de la ecuación 1,
sustituyéndolo en la ecuación 2, para obtener la siguiente expresión:
3. 𝑥2̇ =
(𝑢 + (𝑚𝑙 sin 𝑥3)𝑥4
2
− 𝑏𝑥2)(𝐼 + 𝑚𝑙2) + (𝑚𝑙 cos 𝑥3)(𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3)
(𝑚𝑙 cos 𝑥3)(−𝑚𝑙 cos 𝑥3) + (𝑀 + 𝑚)(𝐼 + 𝑚𝑙2)
Se sustituye la ecuación 3 en la 2 y se obtiene:
𝑥4̇ =
(𝑢 − 𝑏𝑥2 + (𝑚𝑙 sin 𝑥3)𝑥4
2)(𝑚𝑙 cos 𝑥3) + (𝑀 + 𝑚)(𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3)
(𝑚𝑙 cos 𝑥3)(𝑚𝑙 cos 𝑥3) − (𝑀 + 𝑚)(𝐼 + 𝑚𝑙2)
Simulación del sistema
Para la simulación de este sistema se realizó en Simulink un diagrama a bloques
correspondiente al espacio de estados de las ecuaciones anteriores como se muestra
en la Figura 9. Para un manejo más sencillo de la simulación se definieron unas
nuevas variables del sistema, éstas son:
𝑟1 =
𝑚𝑙
𝐼 + 𝑚𝑙2
𝑟2 = 𝑚𝑔𝑙
𝑟3 = 𝑚𝑙
𝑟4 = 𝐼 + 𝑚𝑙2
𝑟5 = 𝑀 + 𝑚
Quedando las ecuaciones del espacio de estados como sigue:
𝑥1̇ = 𝑥2
𝑥2̇ =
(𝑢 + (𝑟3 sin 𝑥3)𝑥4
2
− 𝑏𝑥2)𝑟4 + (𝑟3 cos 𝑥3)(𝛽𝑥4 − 𝑟2 sin 𝑥3)
𝑟4 𝑟5 − 𝑟3
2 cos 𝑥3
𝑥3̇ = 𝑥4
𝑥4̇ =
−(𝑢 − 𝑏𝑥2 + (𝑟3 sin 𝑥3)𝑥4
2)(𝑟3 cos 𝑥3) − 𝑟5(𝛽𝑥4 − 𝑟2 sin 𝑥3)
𝑟4 𝑟5 − 𝑟3
2 cos 𝑥3
Figura 9 Diagrama a bloques del sistema péndulo invertido no lineal
Para mejor organización de la simulación también se realizaron 3 susbsistemas, el
primero llamado Denominador está formado por el denominador de ambas ecuaciones
como se muestra en la figura 10.
Figura 10 Denominador del sistema
El segundo susbsistema genera como salida el numerador de la ecuación que
conforma a 𝑥2̇ como se muestra en la figura 11.
Figura 11 Coeficientes x_2 ̇
El tercer subsistema tiene como salida al numerador de la ecuación que conforma a
𝑥4̇ como se muestra en la figura 12.
Figura 12 Coeficientes x_4 ̇
En la figura 13 que a continuación se muestra, se observa claramente como el péndulo
cae 180° de su posición inicial. Cabe mencionar que en el momento en que cae el
péndulo ejerce una fuerza sobre el carro puesto que en la simulación se aprecia un
ligero cambio de posición de éste.
Figura 13 Simulación del péndulo en el sistema no lineal
Linealización del sistema
Si se considera que el sistema se encuentra cerca del punto de equilibrio en la posición
vertical hacia arriba, es decir,𝜃 ≈ 0, entonces es posible hacer la aproximación 𝜃 ≈
0 = sin 𝜃 y cos 𝜃 ≈ 1. Haciendo estas aproximaciones el sistema se puede expresar
en la forma 𝑥̇ = 𝐴𝑥 + 𝐵𝑢, como se ve en el siguiente desarrollo.
Se tenía al sistema de la siguiente manera:
[ 𝐼 + 𝑚𝑙2
𝑚𝑙 cos 𝜃
𝑚𝑙 cos 𝜃 𝑀 + 𝑚
] [ 𝜃̈
𝑥̈
] + [
𝛽𝜃̇ − 𝑚𝑔𝑙 sin 𝜃
𝑏𝑥̇ − (𝑚𝑙 sin 𝜃)𝜃̇2
] = [
0
𝑢
]
Se hicieron las aproximaciones indicadas anteriormente:
[ 𝐼 + 𝑚𝑙2
𝑚𝑙
𝑚𝑙 𝑀 + 𝑚
] [ 𝜃̈
𝑥̈
] + [ 𝛽𝜃̇ − 𝑚𝑔𝑙𝜃
𝑏𝑥̇
] = [
0
𝑢
]
Utilizando las siguientes variables de estado:
𝑥1 = 𝑥, 𝑥2 = 𝑥̇, 𝑥3 = 𝜃, 𝑥4 = 𝜃̇
El sistema puede ser expresado como:
(𝐼 + 𝑚𝑙2)𝑥4̇ + (𝑚𝑙)𝑥2̇ + 𝛽𝑥4 − 𝑚𝑔𝑙𝑥3 = 0
(𝑚𝑙)𝑥4̇ + (𝑀 + 𝑚)𝑥2̇ + 𝑏𝑥2 = 𝑢
Resolviendo el sistema de ecuaciones obtenemos las siguientes expresiones:
𝑥1̇ = 𝑥2
𝑥2̇ =
(𝑢 − 𝑏𝑥2)𝑟4 + 𝑟3(𝛽𝑥4 − 𝑟2 𝑥3)
𝑟4 𝑟5 − 𝑟3
2
𝑥3̇ = 𝑥4
𝑥4̇ =
−(𝑢 − 𝑏𝑥2)(𝑟3) − 𝑟5(𝛽𝑥4 − 𝑟2 𝑥3)
𝑟4 𝑟5 − 𝑟3
2
Expresando al sistema en su representación en variables de estados se tiene:
(
𝑋1
̇
𝑋2
̇
𝑋3
̇
𝑋4
̇
)
=
(
0 1 0 0
0
𝑏𝑟4
𝑟4 𝑟5 − 𝑟3
2
−𝑟2 𝑟3
𝑟4 𝑟5 − 𝑟3
2
𝛽𝑟3
𝑟4 𝑟5 − 𝑟3
2
0 0 0 1
0
𝑏𝑟3
𝑟4 𝑟5 − 𝑟3
2
𝑟2 𝑟5
𝑟4 𝑟5 − 𝑟3
2
−𝛽𝑟5
𝑟4 𝑟5 − 𝑟3
2 )
(
𝑋1
𝑋2
𝑋3
𝑋4
) +
(
0
𝑟4
𝑟4 𝑟5 − 𝑟3
2
0
−𝑟3
𝑟4 𝑟5 − 𝑟3
2)
𝑢
Sustituyendo con los valores de cada variable del sistema en el espacio de estados,
éste puede ser expresado como sigue:
(
𝑋1
̇
𝑋2
̇
𝑋3
̇
𝑋4
̇
)
= (
0
0
0
0
1
−0.0992
0
0.3663
0
0
0
0
0
0.3663
1
−16.1238
) (
𝑋1
𝑋2
𝑋3
𝑋4
) + (
0
0.9923
0
−3.664
) 𝑢
Por medio de Matlab se comprobó este espacio de estados, utilizando este comando
para declarar las variables del sistema del péndulo:
syms ('theta11','I1','m1','l1','M1','Beta1','b1','theta1','x11','u1')
Se declaró el modelo lineal del sistema, por medio de las matrices de las variables de
estado y de la entrada:
Ab=[I1+m1*(l1)^2 m1*l1;m1*l1 m1+M1]
Z=[-Beta1*theta11;-b1*x11+u1]
Se obtuvieron las ecuaciones de las variables 𝑥2̇ y 𝑥4̇ y así se comprobó la matriz
anterior
x=inv(Ab)*Z
Con valores asignados a las variables se declaró la matriz A en Matlab para obtener
valores numéricos de la misma
A22=(-b*(I+m*l^2))/((I+m*l^2)*(M+m)-(m*l)^2);
A24=(Beta*m*l)/((I+m*l^2)*(M+m)-(m*l)^2);
A42=(-b*(m*l))/(((m*l)^2)-(M+m)*(I+m*(l)^2));
A44=(Beta*(m+M))/(((m*l)^2)-(M+m)*(I+m*(l)^2));
A=[0 1 0 0;0 A22 0 A24;0 0 0 1;0 A42 0 A44]
Análisis de Estabilidad
Se calcularon los eigenvalores de la matriz A del sistema expresado en variables de
estado para determinar la estabilidad del sistema, usando la directiva eig(A), la cual
generó los siguientes valores:
𝜆1 = 0
𝜆2 = −18.292
𝜆3 = −0.0909
𝜆4 = 2.1597
Al analizar los valores obtenidos, debido a que una de las raíces fue igual a cero y otra
fue positiva, se concluyó que el sistema era inestable.
Análisis de controlabilidad
Para determinar si el sistema linealizado es controlable es necesario conocer la
determinante de la matriz de 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑, es decir
𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = |𝐵 𝐴𝐵 𝐴2
𝐵 𝐴3
𝐵 𝐴4
𝐵|
Que tiene como valores:
𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = |
0 0.90961 −0.09055 0.13644
0.90961 −0.09055 0.13644 −2.3914
0 −0.00077 0.34589 −5.6413
−0.00077 0.34589 −5.6413 104.68
| = −3.766 ≠ 0
Debido a que la determinante de la matriz fue diferente de cero, se pensó que el
sistema es controlable, se usaron las directivas Co=ctrb(A,B)y rank(Co)para
corroborarlo, el resultado obtenido de un rango igual a 4, el cual es igual que la
dimensión de la matriz A, por lo que se concluyó que el sistema era controlable.
Análisis de control por retroalimentación
Se asume que todo el estado es medible, por lo tanto para diseñar un control por
retroalimentación de estado posicionando los polos en lazo cerrado en 𝜆1,2 = −1 ± 𝑗
y en 𝜆3,4 = −4 ± 2𝑗 de tal forma que el sistema linealizado sea asintóticamente
estable, es necesario conocer la función de transferencia del sistema lineal para
calcular la matriz K.
Para obtener la función en lazo cerrado del sistema lineal, se implementan los polos
en lazo cerrado deseados, por ello se plantean de la siguiente manera:
(𝑠 + 1 − 𝑗) ∗ (𝑠 + 1 + 𝑗) ∗ (𝑠 + 4 − 2𝑗) ∗ (𝑠 + 4 + 2𝑗)
Dando como resultado
𝑠4
+ 10𝑠3
+ 38𝑠2
+ 56𝑠 + 40
Se encuentra el polinomio característico del sistema en lazo cerrado por medio de la
matriz |𝜆𝐼 − (𝐴 + 𝐵𝐾)|, dando como resultado
𝑠4
+ (3.664𝑘4 − 0.9923𝑘2 + 16.223)𝑠3
+ (1.47 − 0.00003𝑘4 − 14.65𝑘2 + 3.664𝑘3 + 39.692)𝑠2
+ (586.297
− 0.00001𝑘3)𝑠
Se igualaron el polinomio característico del sistema en lazo cerrado con el polo
característico deseado.
40 = 35.91𝑘1
56 = −3.59 − 14.66𝑘1 − 36𝑘2
38 = −0.9923𝑘1 − 14.7𝑘2 + 3.664𝑘3 − 38.03
10 = 16.223 + 3.664𝑘4 − 𝑘2
Utilizando el método Gauss Jordan en Matlab se obtuvo:
𝑘1 = 1.1139
𝑘2 = 2.1089
𝑘3 = 29.225
𝑘4 = −1.1228
Dando como resultado la matriz K
𝐾 = [1.1139 2.1089 29.225 −1.1228]
Análisis de servosistema
Para poder diseñar un servosistema es necesario tener en cuenta las matrices A, B,
C y K calculada previamente, debido a que la ecuación siguiente corresponde al valor
Kr.
𝐾𝑟 = [−𝐶(𝐴 + 𝐵𝐾)−1
𝐵]−1
Implementando el software Matlab (ver Anexo 2) se tiene como resultado
𝐾𝑟 = −1.1139
Implementación de joystick al sistema
Por medio del joystick se pretendió introducir una señal de entrada, que proporcionaba
la posición deseada del carro, para corroborar que el control fuera el adecuado,
midiendo la posición del péndulo, el cual, al variar la posición del carro, tiene que
seguir vertical. El diagrama de conexión en Simulink es el mostrado en la siguiente
figura:
Figura 14 Diagrama de conexión de joystick con matriz K y Kr, para el control del péndulo invertido modelado de forma no
lineal.
Se observa que en el sistema no lineal el péndulo permanece en posición vertical
cuando la posición del carro es modificada por el joystick (figura 15), es decir, la planta
obedece al controlador no lineal cuando se implementa el control por
retroalimentación, sin embargo, cuando el cambio de posición del carro es drástica de
tal manera que el péndulo se aleja considerablemente de su posición inicial (figura
16), éste cae abruptamente (figura 17).
Figura 15 Medición de la posición del carro y del péndulo
Figura 16 Posición del péndulo fuera de su rango de control
Figura 17 Péndulo después de exceder su rango de control
Diseño de Observador
Posteriormente se supuso que solo se tenía presupuesto para comprar dos sensores,
por lo que se eligió que las variables de estado a medir fueran la posición lineal del
carrito y la angular del péndulo, de tal forma que el sistema linealizado fuera
observable, por lo que la matriz C del sistema expresado en variables de estado
cambió a:
𝐶 = (
1 0 0 0
0 0 1 0
)
Se realizó un análisis de observabilidad, utilizando las directivas Ob=obsv(A,C)y
rank(Ob), las cuales calculan directamente la matriz de observabilidad del sistema y
el rango de la misma, respectivamente. La matriz obtenida con estas instrucciones es:
𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 =
[
1 0 0 0
0 0 1 0
0 1 0 0
0 0 0 1
0 −0.09923 −0.89783 0.36646
0 0.36646 39.505 −16.124
0 0.14414 14.566 −6.8431
0 −5.9453 −637.31 299.63 ]
El rango de esta matriz fue de 4, valor que es igual que la dimensión de la matriz A,
ante dicho resultado se concluyó que el sistema era observable.
Para el diseño de un observador se propusieron como polos del observador a 𝜆1,2 =
−4 ± 4𝑗 y en 𝜆3,4 = −16 ± 8𝑗, polos que son cuatro veces mayor al del control para
un asegurar un tiempo de respuesta del observador mayor al tiempo de respuesta del
controlador, por lo que el polinomio característico del observador quedó definido
como:
𝑠4
+ 40𝑠3
+ 608𝑠2
+ 3584𝑠 + 10240
Para el cálculo de la matriz L del observador, son necesarios los coeficientes del
polinomio característico del observador en forma de vector (𝑝 =
[40 608 3584 10240]), la matriz A y la matriz C. Además fue necesario hacer uso
de la función L=place(A',C',p), la cual genera los coeficientes de la matriz L. El
resultado de la matriz L es la siguiente:
𝐿 = [−4290.3 4.984 × 105
2032.6 −1.187 × 106
2130.7 −1.731 × 106
−10198 5.998 × 106 ]
Simulación/Animación del Sistema
Finalmente se simuló el sistema no lineal y lineal con el observador, servosistema y
control a lazo cerrado desarrollados en la práctica, asimismo, se dispuso de un joystick
para mover el carro en la posición deseada. El diagrama de lo anteriormente
mencionado se muestra en la figura 18, donde se pueden identificar el sistema no
lineal, al cual se le aplica el observador del sistema lineal y el control por
retroalimentación y servosistema desarrollados por el sistema linealizado.
Fig. 18 Sistema no lineal, con observador implementado en sistema lineal.
En la figura 19 están representadas la salida del observador (línea morada) y el estado
del sistema no lineal (línea amarilla, recordando que solo dos de las cuatro variables
de estado alimentan al observador), midiendo la posición del carro en la primera
gráfica, la velocidad del carro en la segunda gráfica, la posición del péndulo en la
tercera gráfica y la velocidad del péndulo en la cuarta gráfica. Analizando las imágenes
se ve que el observador sigue muy de cerca al estado del sistema no lineal.
Fig. 19 Gráficas de sistema no lineal con observador.
Sin embargo, cuando el péndulo sale del rango donde es controlable, se puede ver
que se presenta la inestabilidad y el observador se pierde en la tercera y cuarta gráfica,
de posición y velocidad del péndulo, respectivamente, esto debido a que el observador
está diseñado para el sistema linealizado.
Figura 18 Gráficos del observador en el sistema no lineal tras una perturbación
PARÁMETROS
Los parámetros para el sistema electromecánico se encuentran en la Tabla 2.
Tabla 2 Parámetros para el sistema electromecánico
Los parámetros para el sistema péndulo invertido se encuentran en la Tabla 3.
Tabla 3 Parámetros para el sistema péndulo invertido
CONCLUSIONES
Debido a los resultados de cada ejercicio se pudo concluir que la controlabilidad,
observabilidad y control por retroalimentación de estado, son parteaguas para los
sistemas de control; puesto que aun cuando se tiene un sistema no linealizado, como
fue el caso del péndulo invertido, se puede tener un rango de control del sistema si se
hace un estudio y análisis del mismo sistema pero de su forma linealizada. Sin
embargo este control viene limitado a las condiciones de linealización, puesto que si
se sale de los márgenes de las mismas, el sistema no podrá ser alterado por el sistema
de control propuesto, pues se alejaría del sistema linealizado.
Por otro lado, se pudo apreciar que en ciertos sistemas lineales, al cambiar algunas
variables físicas, como en el sistema electromecánico al cambiar el coeficiente de
torsión de la flecha, se logra mejorar la estabilidad del sistema y también su
controlabilidad, pues en casos como el mencionado, se torna muy difícil controlar esas
variables.
Finalmente, se pudo ver que al realizar observadores a partir de sistemas lineales e
implementarlos en sistemas no lineales, éstos son útiles en un rango donde el sistema
no lineal no sufra cambios brucos para alejarlos de la linealización, tal como sucedió
con el sistema de control.
BIBLIOGRAFÍA
[1] K. Ogata, Ingeniería de Control Moderna, Pearson Educación, Tercera edición,
1998, pp. 58, 59,60, 85.
ANEXOS
Anexo 1 Programa en Matlab para resolver el ejercicio 1
%% Práctica 2 Ejercicio 1
%Sistema Electromecánico
%% VALORES DE DATOS
R=0.67;
KM=4.3*10^(-3);
JM=3.4*10^(-5);
JL=2.64*10^(-4);
JF=2.64*10^(-4);
B1=0.47;
B2=0.47;
Ks=0.015;
L=2.75*10^(-6);
%VARIABLES PARA EL ESPACIO DE ESTADOS
k=Ks/2;
b=(B1)+(B2/4);
j=(JL/4)+(JM);
%% MATRICES DEL ESPACIO DE ESTADOS
A= [-R/L 0 -KM/L 0 0;0 0 1 0 0;KM/j -k/(2*j) -b/j -k/j 0;0 0 0 0 1;0 -
Ks/(2*JF) 0 -Ks/JF 0];
B=[1/L; 0; 0; 0; 0];
C=[0 1 0 0 0; 0 0 0 1 0];
%% ESTABILIDAD
eig(A) %cálculo de los
eigenvalores de la matriz A
%% CONTROLABILIDAD
A2=A^(2);
A3=A^(3);
A4=A^(4);
CONTROLABILIDAD=[B A*B A2*B A3*B A4*B]; %Matriz de controlabilidad
CONTROLABLE=det(CONTROLABILIDAD) %determinante de la matriz
de controlabilidad
Co=ctrb(A,B); %Obtención de matriz de
controlabilidad por Matlab
rank(Co) %Rango de la matriz de
controlabilidad
%% OBSERVABILIDAD
C2=[0 1 0 0 0];
OBSERVABILIDAD=[C2; C2*A; C2*A2; C2*A3; C2*A4]; %Matriz de observabilidad
OBSERVABLE=det(OBSERVABILIDAD) %determinante de la matriz
de observabilidad
Ob=obsv(A,C); %Obtención de matriz de
observabilidad por Matlab
rank(Ob) %Rango de la matriz de
observabilidad
%% CAMBIO DE k EN LAS VARIABLES Y MATRICES DEL ESPACIO DE ESTADOS
K2s=15*10^(7); %Valor nuevo de K
k2s=K2s/2;
A21=[-R/L 0 -KM/L 0 0;0 0 1 0 0;KM/j -k2s/(2*j) -b/j -k2s/j 0;0 0 0 0 1;0 -
K2s/(2*JF) 0 -K2s/JF 0];
%Nueva matriz A
eig(A21) %Estabilidad de la matriz
A21
% CONTROLABILIDAD NUEVO ESPACIO DE ESTADOS
A22=A21^(2);
A33=A21^(3);
A44=A21^(4);
CONTROLABILIDAD2=[B A21*B A22*B A33*B A44*B]; %Matriz de controlabilidad
de A21
CONTROLABLE2=det(CONTROLABILIDAD2) %determinante de la matriz
de controlabilidad
Co=ctrb(A21,B); %Obtención de matriz de
controlabilidad por Matlab
rank(Co) %Rango de la matriz de
controlabilidad
%% CONTROL POR RETROALIMENTACIÓN (K)
syms ('s','k1','k2','k3','k4','k5')
%Función de transferencia en lazo cerrado
f=sym((s+1-j)*(s+1+j)*(s+4-2*j)*(s+4+2*j)*(s+2*j))
den_fun_lazocerrado=expand(f)
%s^5 + 10.0002*s^4 + 33.002*s^3 + 40.00659983999*s^2 +
16.007999799968*s+0.00319999996
%Polinomio Característico
K=[k1 k2 k3 k4 k5]
SI=s*eye(5
pols=SI-(A+(B*K))
valores_para_k=det(pols)
%Resultado de la igualación del polinomio característico y el denominador
%de lazo cerrado
%444214876.033058*k4-888429752.066116*k2+81331299586.7769*s-
121384297520.661*s*k1-888429752.066116*k3*s+444214876.033058*k5*s-
34297520.661157*k1*s^2
%-2136363636.36364*k1*s^3-15636363.6363636*k2*s^2-363636.363636364*k1*s^4-
15636363.6363636*k3*s^3+23313145.661157*s^2+1431430967.04545*s^3
%+249511.363636364*(s^4)+s^5
%Resultado factorizado de la igualación del polinomio característico y el
%denominador de la función de transferencia de lazo cerrado
%444214876.033058*k4-888429752.066116*k2
%(81331299586.7769-121384297520.661*k1-
888429752.066116*k3+444214876.033058*k5)*s
%(-34297520.661157*k1-15636363.6363636*k2+23313145.661157)*s^2
%(-2136363636.36364*k1-15636363.6363636*k3+1431430967.04545)*s^3
%(-363636.363636364*k1+249511.363636364)*(s^4)
%+s^5
% Obtención de K's por medio de Gauss Jordan
KG=[0 -888429752.066116 0 444214876.033058 0;-121384297520.661 0 -
888429752.066116 0 444214876.033058;-34297520.661157 -15636363.6363636 0 0
0;-2136363636.36364 0 -15636363.6363636 0 0;-363636.363636364 0 0 0 0]
SG=[0.00319999996;16.007999799968/81331299586.7769;40.00659983999/23313145.
661157;33.002/1431430967.04545;10.0002/249511.363636364]
MG=[0 -888429752.066116 0 444214876.033058 0 0.00319999996;-
121384297520.661 0 -888429752.066116 0 444214876.033058 16.007999799968-
81331299586.7769;-34297520.661157 -15636363.6363636 0 0 0 40.00659983999-
23313145.661157;-2136363636.36364 0 -15636363.6363636 0 0 33.002-
1431430967.04545;-363636.363636364 0 0 0 0 10.0002-249511.363636364]
rref(MG)
% Matriz K
k1=0.68612874945
k2=-0.0140319904947583
k3=-2.19933335812261
k4=-0.0280639809823129
k5=7.87880277336403e-06
K=[k1 k2 k3 k4 k5]
% Servosistema (Kr)
p=inv(A+(B*K))
kr=[-C*(p)*B]
Kr=1/3.60185094683417e-12
Anexo 2 Programa en Matlab para resolver el ejercicio 2
%% Práctica 2 Ejercicio 2
%% VALORES DE DATOS
M=1 %Kg
m=0.1%Kg
b=0.1%N/m/s
Beta=0.1%N/m/s
l=0.25%m
I=0.00052%(Kg) (m^2) (2)= (ml^2)/12
g= 9.8%m/s^2
% VARIABLES PARA EL DIAGRAMA SIMULINK NO LINEAL
r1=m*l/(I+m*l^2);
r2=m*g*l;
r3=m*l;
r4=I+m*l^2;
r5=M+m;
d=r4*r5-r3^2;
%% 3.SISTEMA LINEAL
syms ('theta11','I1','m1','l1','M1','Beta1','b1','theta1','x11','u1')
Ab=[I1+m1*(l1)^2 m1*l1;m1*l1 m1+M1]
Z=[-Beta1*theta11;-b1*x11+u1]
x=inv(Ab)*Z
A22=((- b)*(m*l^2 + I))/(M*m*l^2 + I*m + I*M);
A23=(l*m*(- g*l*m))/(M*m*l^2 + I*m + I*M);
A24= (l*m*(Beta))/(M*m*l^2 + I*m + I*M);
A42=-(l*m*(- b))/(M*m*l^2 + I*m + I*M);
A43=- ((M + m)*(- g*l*m))/(M*m*l^2 + I*m + I*M);
A44=-((M + m)*(Beta))/(M*m*l^2 + I*m + I*M);
A=[0 1 0 0;0 A22 A23 A24;0 0 0 1;0 A42 A43 A44]
%% 4.ESTABILIDAD
estabilidad=eig(A) %Asignación de estabilidad a los eigenvalores
%% 5.CONTROLABILIDAD
B=[0;1/((M+m)-(m*l)^2);0;-m*l/(M+m)*(I+m*l^2)-(m*l)^2] %Asignación
de valores a matriz B
e=[B A*B (A^2)*B (A^3)*B] %Cálculo matriz e sin determinante
C=[1 0 0 0] %Asignación de valores a matriz C
controlabilidad=det(e) %Cálculo de controlabilidad
ctrb(A,B)%matriz de controlabilidad
rank(ans)%si es controlable o no = dimension de matriz A
%% 6. CONTROL POR RETROALIMENTACIÓN (K)
syms ('s','k1','k2', 'k3','k4')
K=[k1 k2 k3 k4]
%Polinomio característico
SI=s*eye(4)
pols=SI-(A+(B*K))
valores_para_k=det(pols)
expand(valores_para_k)
%Resultado de la igualación del polinomio característico y el denominador
%de lazo cerrado
%(-3.25417766051011e-05*k3+ 586.297273526824)*s
%(3.664*k3+39.692-14.6574318381706*k2-3.25417766051011e-
05*k4+1.46584579302257)*s^2
%(-0.9923*k2+3.664*k4+16.2235414834359)*s^3
%s^4
%como no tenemos terminos en la constante
%40=35.91k1
%56=-3.59 -14.66k1+36k2
%38=-0.99k1-14.7k2+3.7k3-38.03
%10=16.223+3.664k4-k2
% Obtención de K's por medio de Gauss Jordan
KG=[35.91 0 0 0 40;-14.66 36 0 0 56+3.59;-0.99 -14.7 +3.7 0 38+38.03;0 -1
0 3.664 10-16.223]
SG=[56;38;10]
rref(KG)
% Matriz K
k1=1.11389585073796
k2=2.1088809214394
k3=29.2252179560513
k4=-1.12284909349361
%% SERVOSISTEMA (Kr)
C1=[1 1 1 1];
K=[k1 k2 k3 k4]
p=inv(A+(B*K))
kr=[-C1*(p)*B]
Kr=1/kr
%% OBSERVADOR
C=[1 0 0 0;0 0 1 0]
Ob=obsv(A,C) %Obtención de matriz de
observabilidad por Matlab
rank(Ob) %Rango de la matriz de
observabilidad
%l
%(s+4+4j)*(s+4-4j)*(s+16+8j)*(s+16-8j)
%s^4 + 40*s^3 + 608*s^2 + 3584*s + 10240
%4_veces_alfa=40,608,3584,10240
p=[40,608,3584,10240]
%syms ('I','l1','l2','l3','l4','I5','l6','l7','l8')
%L=[l1 l2;l3 l4;l5 l6;l7 l8]
%SI=I*eye(4)
%pols=A+(L*C)
%pols1=SI-pols
%pol=det(pols1)
L=place(A',C',p)

Más contenido relacionado

La actualidad más candente

Tabla laplace
Tabla laplaceTabla laplace
Tabla laplace
JORGE
 
Controladores (teoria de control)
Controladores (teoria de control)Controladores (teoria de control)
Controladores (teoria de control)
martinezeduardo
 
Circuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronosCircuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronos
Alexa Ramirez
 
Clase07 sistemas de segundo orden
Clase07 sistemas de segundo ordenClase07 sistemas de segundo orden
Clase07 sistemas de segundo orden
UNEFA
 
Estabilidad de sistemas discretos
Estabilidad de sistemas discretosEstabilidad de sistemas discretos
Estabilidad de sistemas discretos
ingangelp
 
Sistemas de segundo orden
Sistemas de segundo  ordenSistemas de segundo  orden
Sistemas de segundo orden
Henry Alvarado
 

La actualidad más candente (20)

Tabla laplace
Tabla laplaceTabla laplace
Tabla laplace
 
Controladores (teoria de control)
Controladores (teoria de control)Controladores (teoria de control)
Controladores (teoria de control)
 
Análisis de la respuesta transitoria. sistemas de segundo orden
Análisis de la respuesta transitoria. sistemas de segundo ordenAnálisis de la respuesta transitoria. sistemas de segundo orden
Análisis de la respuesta transitoria. sistemas de segundo orden
 
Sistemas de control
Sistemas de controlSistemas de control
Sistemas de control
 
Control digital: Tema 3. Análisis de sistemas discretos
Control digital: Tema 3. Análisis de sistemas discretos Control digital: Tema 3. Análisis de sistemas discretos
Control digital: Tema 3. Análisis de sistemas discretos
 
Lugar geométrico de las raices control 1
Lugar geométrico de las raices control 1Lugar geométrico de las raices control 1
Lugar geométrico de las raices control 1
 
Modelado en espacio de estados
Modelado en espacio de estadosModelado en espacio de estados
Modelado en espacio de estados
 
Control proporcional
Control proporcionalControl proporcional
Control proporcional
 
estabilidad de los sistemas de control retroalimentados
estabilidad de los sistemas de control retroalimentados estabilidad de los sistemas de control retroalimentados
estabilidad de los sistemas de control retroalimentados
 
Ejercicios diagramas de bloques y gfs
Ejercicios diagramas de bloques y gfsEjercicios diagramas de bloques y gfs
Ejercicios diagramas de bloques y gfs
 
Estabilidad
EstabilidadEstabilidad
Estabilidad
 
Circuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronosCircuitos secuenciales sincronos y asincronos
Circuitos secuenciales sincronos y asincronos
 
47427701 ejercicios-cinematica-soluciones
47427701 ejercicios-cinematica-soluciones47427701 ejercicios-cinematica-soluciones
47427701 ejercicios-cinematica-soluciones
 
Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.Unidad III: Polos y Ceros de una función de transferencia.
Unidad III: Polos y Ceros de una función de transferencia.
 
Clase07 sistemas de segundo orden
Clase07 sistemas de segundo ordenClase07 sistemas de segundo orden
Clase07 sistemas de segundo orden
 
Estabilidad de sistemas discretos
Estabilidad de sistemas discretosEstabilidad de sistemas discretos
Estabilidad de sistemas discretos
 
Sistemas de segundo orden
Sistemas de segundo  ordenSistemas de segundo  orden
Sistemas de segundo orden
 
Criterios de estabilidad Controles Automáticos
Criterios de estabilidad  Controles Automáticos Criterios de estabilidad  Controles Automáticos
Criterios de estabilidad Controles Automáticos
 
Clase 2 - Estabilidad - Plano S - Plano Z
Clase 2 - Estabilidad - Plano S - Plano ZClase 2 - Estabilidad - Plano S - Plano Z
Clase 2 - Estabilidad - Plano S - Plano Z
 
Sistemas de control - teoría de control
Sistemas de control - teoría de controlSistemas de control - teoría de control
Sistemas de control - teoría de control
 

Similar a Control por Retroalimentación de Estado y Diseño de Observadores

S12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdf
S12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdfS12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdf
S12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdf
jhon130296
 
Error estabilidad teoria de control
Error estabilidad teoria de controlError estabilidad teoria de control
Error estabilidad teoria de control
greronre
 
Revistafinalcontrol
RevistafinalcontrolRevistafinalcontrol
Revistafinalcontrol
ACOLNES
 

Similar a Control por Retroalimentación de Estado y Diseño de Observadores (20)

Ca 2013 f_01
Ca 2013 f_01Ca 2013 f_01
Ca 2013 f_01
 
Variable de estado.pdf
Variable de estado.pdfVariable de estado.pdf
Variable de estado.pdf
 
TEORIA MODERNA DE CONTROL
TEORIA MODERNA DE CONTROLTEORIA MODERNA DE CONTROL
TEORIA MODERNA DE CONTROL
 
1.1 Error en estado estable.pptx
1.1 Error en estado estable.pptx1.1 Error en estado estable.pptx
1.1 Error en estado estable.pptx
 
Estabilidad error teoria de control ralch
Estabilidad error teoria de control ralchEstabilidad error teoria de control ralch
Estabilidad error teoria de control ralch
 
S12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdf
S12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdfS12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdf
S12.s1 -Control_Moderno- Modelamiento de sistemas Eléctricos - Estado.pdf
 
Introduccion a los sistemas de control
Introduccion a los sistemas de controlIntroduccion a los sistemas de control
Introduccion a los sistemas de control
 
Control perament
Control peramentControl perament
Control perament
 
Unidad II: funcion de transferencia
Unidad II: funcion de transferenciaUnidad II: funcion de transferencia
Unidad II: funcion de transferencia
 
Error estabilidad teoria de control
Error estabilidad teoria de controlError estabilidad teoria de control
Error estabilidad teoria de control
 
TEORIA DE CONTROL - INTRODUCCIÓN A LA TEORIA DE CONTROL
TEORIA DE CONTROL - INTRODUCCIÓN A LA TEORIA DE CONTROLTEORIA DE CONTROL - INTRODUCCIÓN A LA TEORIA DE CONTROL
TEORIA DE CONTROL - INTRODUCCIÓN A LA TEORIA DE CONTROL
 
Teoria de control final
Teoria de control finalTeoria de control final
Teoria de control final
 
Revistafinalcontrol
RevistafinalcontrolRevistafinalcontrol
Revistafinalcontrol
 
Función de transferencia y diagrama de bloques.
Función de transferencia y diagrama de bloques.Función de transferencia y diagrama de bloques.
Función de transferencia y diagrama de bloques.
 
Sistema de control en tiempo discreto
Sistema de control en tiempo discretoSistema de control en tiempo discreto
Sistema de control en tiempo discreto
 
5. Acciones de Control.pptx
5. Acciones de Control.pptx5. Acciones de Control.pptx
5. Acciones de Control.pptx
 
Revista Futuro en el Presente.
Revista Futuro en el Presente.Revista Futuro en el Presente.
Revista Futuro en el Presente.
 
Sistemas%20de%20control.ppt 0
Sistemas%20de%20control.ppt 0Sistemas%20de%20control.ppt 0
Sistemas%20de%20control.ppt 0
 
Sistemas variantes en el tiempo
Sistemas variantes en el tiempoSistemas variantes en el tiempo
Sistemas variantes en el tiempo
 
Sistemas de control
Sistemas de control Sistemas de control
Sistemas de control
 

Más de Karla Carballo Valderrábano

Más de Karla Carballo Valderrábano (20)

Tarea Automatización Industrial - Grafcet
Tarea Automatización Industrial - GrafcetTarea Automatización Industrial - Grafcet
Tarea Automatización Industrial - Grafcet
 
Protocolo Proyecto de Diseño de un sistema mecanizado para el trasplante de l...
Protocolo Proyecto de Diseño de un sistema mecanizado para el trasplante de l...Protocolo Proyecto de Diseño de un sistema mecanizado para el trasplante de l...
Protocolo Proyecto de Diseño de un sistema mecanizado para el trasplante de l...
 
Poster Proyecto Diseño de un sistema mecanizado para el trasplante de la plan...
Poster Proyecto Diseño de un sistema mecanizado para el trasplante de la plan...Poster Proyecto Diseño de un sistema mecanizado para el trasplante de la plan...
Poster Proyecto Diseño de un sistema mecanizado para el trasplante de la plan...
 
Plan de Negocio Proyecto "Recolector Pluvial"
Plan de Negocio Proyecto "Recolector Pluvial"Plan de Negocio Proyecto "Recolector Pluvial"
Plan de Negocio Proyecto "Recolector Pluvial"
 
Reporte Recolector Pluvial (Innovacion)
Reporte Recolector Pluvial (Innovacion)Reporte Recolector Pluvial (Innovacion)
Reporte Recolector Pluvial (Innovacion)
 
Technisches Deutsch
Technisches DeutschTechnisches Deutsch
Technisches Deutsch
 
Redes Neuronales artificiales
Redes Neuronales artificialesRedes Neuronales artificiales
Redes Neuronales artificiales
 
Tutorial Uso de Látex
Tutorial Uso de LátexTutorial Uso de Látex
Tutorial Uso de Látex
 
Fertigungsverfahren
FertigungsverfahrenFertigungsverfahren
Fertigungsverfahren
 
Charter del Proyecto “Recolector Pluvial”
Charter del Proyecto “Recolector Pluvial”  Charter del Proyecto “Recolector Pluvial”
Charter del Proyecto “Recolector Pluvial”
 
Artificial Intelligence.pptx
Artificial Intelligence.pptxArtificial Intelligence.pptx
Artificial Intelligence.pptx
 
Practica con evaluacion_entre_pares_karla_carballo
Practica con evaluacion_entre_pares_karla_carballoPractica con evaluacion_entre_pares_karla_carballo
Practica con evaluacion_entre_pares_karla_carballo
 
Digitale Regelungssysteme
Digitale RegelungssystemeDigitale Regelungssysteme
Digitale Regelungssysteme
 
Apuntes Electromagnetismo
Apuntes ElectromagnetismoApuntes Electromagnetismo
Apuntes Electromagnetismo
 
Apuntes Control moderno
Apuntes Control modernoApuntes Control moderno
Apuntes Control moderno
 
Totenstag
TotenstagTotenstag
Totenstag
 
Protocolo proyecto “Diseño de un sistema mecanizado para el trasplante de la ...
Protocolo proyecto “Diseño de un sistema mecanizado para el trasplante de la ...Protocolo proyecto “Diseño de un sistema mecanizado para el trasplante de la ...
Protocolo proyecto “Diseño de un sistema mecanizado para el trasplante de la ...
 
Modelado y Simulación de Sistemas Dinámicos
Modelado y Simulación de Sistemas DinámicosModelado y Simulación de Sistemas Dinámicos
Modelado y Simulación de Sistemas Dinámicos
 
Technisches Deutsch / Technisches Spanisch - Alemán Técnico / Español Técnico...
Technisches Deutsch / Technisches Spanisch - Alemán Técnico / Español Técnico...Technisches Deutsch / Technisches Spanisch - Alemán Técnico / Español Técnico...
Technisches Deutsch / Technisches Spanisch - Alemán Técnico / Español Técnico...
 
Diseño de un sistema mecanizado para el trasplante de la planta de jitomate
Diseño de un sistema mecanizado para el trasplante de la planta de jitomate Diseño de un sistema mecanizado para el trasplante de la planta de jitomate
Diseño de un sistema mecanizado para el trasplante de la planta de jitomate
 

Último

LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
bcondort
 
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
vladimirpaucarmontes
 
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptxsigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sutti0808
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
Ricardo705519
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
gustavoiashalom
 

Último (20)

2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
UNIDAD II 2.pdf ingenieria civil lima upn
UNIDAD  II 2.pdf ingenieria civil lima upnUNIDAD  II 2.pdf ingenieria civil lima upn
UNIDAD II 2.pdf ingenieria civil lima upn
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
Gestion de proyectos para el control y seguimiento
Gestion de proyectos para el control  y seguimientoGestion de proyectos para el control  y seguimiento
Gestion de proyectos para el control y seguimiento
 
programacion orientada a objetos poo.pptx
programacion orientada a objetos poo.pptxprogramacion orientada a objetos poo.pptx
programacion orientada a objetos poo.pptx
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Sesion 6 _ Curso Integrador II_TSZVQJ.pdf
Sesion 6 _ Curso Integrador II_TSZVQJ.pdfSesion 6 _ Curso Integrador II_TSZVQJ.pdf
Sesion 6 _ Curso Integrador II_TSZVQJ.pdf
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdfJM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
 
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
MANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOS
MANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOSMANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOS
MANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOS
 
Principales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards DemingPrincipales aportes de la carrera de William Edwards Deming
Principales aportes de la carrera de William Edwards Deming
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptxsigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
 

Control por Retroalimentación de Estado y Diseño de Observadores

  • 1. 17-4-2015 BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA Facultad de Ciencias de la Electrónica Control Moderno y Sus Aplicaciones Reporte Práctica 2 Control por Retroalimentación de estado y diseño de observadores Profesor: J. Fermi Guerrero Castellanos Alumnos: Acoltzi Romano Maritza Carballo Valderrábano Karla Hernández Aguilar Luis Adrian Herrera Medina Martín Raymundo Primavera 2015
  • 2. INTRODUCCIÓN En ocasiones se requiere que en un sistema, después de un tiempo finito, todas las variables de estado se puedan controlar por una señal de control que no esté sujeta a ningún tipo de restricción, por lo que a éstos se les somete a un estudio de controlabilidad y, en caso de que el sistema resulte controlable, se desarrolla un controlador y/o un servosistema para alcanzar los requerimientos solicitados. Por otro lado, no siempre se tienen la suficiente cantidad de sensores disponibles para monitorear todas las variables de estado de un sistema; en algunos sistemas es posible determinar el estado completo con la señal de salida del mismo, estos sistemas son llamados observables, a los cuales se les diseña un observador para cumplir con la propiedad mencionada. Con la finalidad de comprender lo anteriormente expuesto, esta práctica se divide en dos secciones; el primer apartado consiste en analizar la estabilidad, controlabilidad y observabilidad de un sistema electromecánico, analizar cómo se pueden ver afectados al modificar una variable del sistema y pensar en los posibles controladores y observadores. El segundo apartado consiste en un sistema de un péndulo invertido, del cual se obtiene su representación en variables de estado cuando se encuentra el ángulo del péndulo en libre posición (no lineal) y cuando se busca que el sistema esté en equilibrio, es decir, que este en posición vertical (lineal), posteriormente se analiza la estabilidad, controlabilidad y observabilidad del sistema lineal, el cual se utiliza como base para diseñar un controlador, un servosistema y un observador, los cuales son implementados al sistema no lineal junto con el uso de un Joystick para determinar la posición del carro que lleva al péndulo, simulándolo en tiempo real utilizando la extensión Simulink de Matlab. OBJETIVO Comprender de una manera conceptual y práctica el uso de la representación en variables de estado de un sistema LTI para el diseño de controladores y observadores.
  • 3. MARCO TEÓRICO Estado El estado de un sistema dinámico es el conjunto más pequeño de variables (llamadas variables de estado) tal que, el conocimiento de esas variables en un determinado instante t0 junto con el conocimiento de los valores de la señal de entrada para los instantes t ≥ t0, permite determinar el comportamiento y evolución del sistema para cualquier instante de tiempo t ≥ t0. Las variables de estado se agrupan en el llamado vector de estado y el espacio n dimensional que determinan los posibles valores de esas variables, se denomina espacio de estados. La dinámica de un sistema se puede describir en función del valor del vector de estados y de la señal de entrada. Estabilidad De acuerdo al Teorema de estabilidad: Si G(s) es la función de transferencia de un sistema, ésta será estable si todos los polos de G(s) están en el semiplano izquierdo del plano complejo. La estabilidad de los sistemas dinámicos se refiere a que pequeñas perturbaciones en las condiciones iniciales o en alguna de las variables que intervienen en la ecuación del movimiento produzca un comportamiento suficientemente similar al comportamiento sin dichas perturbaciones. Para sistemas deterministas descritos por ecuaciones diferenciales la estabilidad del dicho sistema de ecuaciones obviamente implica la estabilidad del sistema. Para esta práctica se hace uso del Criterio de Estabilidad de Routh que estable que en un sistema realimentado es estable si todos los polos de lazo cerrado se ubican en el semiplano izquierdo del plano s. Esto es lo mismo a decir que todas las raíces de la ecuación característica tienen parte real negativa. El criterio de estabilidad de Routh permite determinar si hay raíces con parte real positiva, es decir que es sistema es inestable y sin necesidad de resolver el polinomio. Controlabilidad Un sistema de control es completamente controlable o de estado completamente controlable, si es posible transferir al sistema desde un estado inicial arbitrario a cualquier estado deseado en un tiempo finito. También puede decirse que será
  • 4. completamente controlable, si cada variable de estado se puede controlar en un tiempo finito por una señal de control que no esté sujeta a ningún tipo de restricción. Como es habitual nos centraremos en el estudio de la controlabilidad de sistemas LTI: Siendo la señal u (kT) constante en el intervalo de tiempo kT ≤ t ≤ (k + 1) T. En este caso, la controlabilidad de estado completo implica que existe una señal de control constante entre cada tiempo de muestreo que transfiere al sistema, desde un estado x (kT) cualquiera a un estado deseado xf en como mucho n periodos de muestreo, donde n es el tamaño del vector de estados. Recordemos que la solución de la ecuación de estados es: de ahí se obtiene: donde la matriz es la llamada matriz de controlabilidad . Supóngase un estado final arbitrario x (nT) = xf . Si el sistema fuera controlable debería existir un vector de actuaciones que al multiplicarlo por la matriz de controlabilidad diese como resultado xf − Gnx(0). Como xf y x(0) pueden ser cualquier par de valores del vector de estado, es fácil entender que xf−Gnx(0) puede ser cualquier vector de Rn. De esto se desprende que para que el sistema sea controlable, el espacio de vectores generado por los vectores que forman la matriz de controlabilidad (es decir, sus columnas) debe ser todo Rn. La condición necesaria y suficiente para que se cumpla esto es que el rango de la matriz de controlabilidad sea n. Este resultado permite enunciar el siguiente lema.
  • 5. Dado un sistema LTI de orden n representado es condición necesaria y suficiente para que el sistema sea completamente controlable que el rango de la matriz de controlabilidad sea igual a n. El sistema que cumpla la condición establecida en el lema 1 podrá alcanzar cualquier estado como máximo en n periodos de muestreo, pero sólo si no existen restricciones sobre la señal de control. En caso contrario, se tardaría más. Si el sistema es controlable, se podrá determinar la secuencia de valores de la entrada necesaria para llevar al sistema a xf resolviendo el sistema de ecuaciones. Por otra parte, la controlabilidad se puede comprobar a partir de la función de transferencia de un sistema observando si hay cancelaciones de polos y ceros. En el caso de que las hubiese, el sistema no sería controlable. Por tanto, el sistema no sería controlable pues existe una cancelación de un polo con un cero. Observabilidad Considérese un sistema autónomo: El sistema autónomo es completamente observable si todo estado inicial x(0) se puede determinar de la observación de y(kT) durante un número finito de intervalos de muestreo. Para que ello ocurra, cada transición del estado debe afectar a todos los elementos del vector de salida. La observabilidad juega un papel esencial en el control de aquellos sistemas en los que algunas de las variables de estado no son accesibles, es decir, no son medibles directamente. Nótese que se ha considerado un sistema autónomo. La razón de esto es que la observabilidad de un sistema no autónomo se reduce a la del sistema autónomo equivalente. Se sabe que la solución de la ecuación de estado para el sistema autónomo es:
  • 6. De ahí La observabilidad completa implica que usando se pueden determinar donde xi(0) indica la iésima componente de x(0). Es decir el sistema es completamente observable si las ecuaciones: permiten determinar x1(0), x2(0), • • • , xn(0). Como y(kT) es un m-vector (asumiendo que el sistema tiene m salidas) el sistema de ecuaciones anterior es en realidad un sistema de n × m ecuaciones, en las que las incógnitas son las n componentes de x(0). Para que la solución de este sistema sea única debe haber entre ellas n ecuaciones linealmente independientes. Esto se traduce en la siguiente condición de observabilidad completa: donde ∗ indica la conjugada traspuesta de una matriz y a la matriz que aparece en la condición se la llama matriz de observabilidad. Por otra parte, de una manera análoga a la de la controlabilidad, la observabilidad de un sistema a partir de su función de transferencia se puede asegurar si ésta no presenta cancelaciones de polos y ceros. Finalmente, se enuncia a continuación una propiedad que será útil para poder obtener la representación de un sistema en forma canónica, sin que por ello pueda
  • 7. argumentarse que existe la posibilidad de variar la controlabilidad u observabilidad del mismo. Sea un sistema LTI dado en la forma usual, cuya matriz de controlabilidad es M y la de observabilidad es N. Si se define una transformación como la anterior con: siendo P una matriz invertible, entonces las matrices de controlabilidad y observabilidad del sistema equivalente tienen el mismo rango que M y N . Joystick El puerto de Joystick es una entrada de 8 bits, cuatro indican el estado de los botones de ambos joysticks y los otros cuatro, la posición X - Y de los joysticks. Figura 1 Esquema de Conexión de Joystick El registro de estado se lee por la E/S 200h. La estructura de datos del registro es como sigue: Tabla 1 Estructura de datos del Joystick Bit 7 6 5 4 3 2 1 0 Joystick B B A A B B A A Eje/Botón 2 1 2 1 Y X Y X La posición de los ejes X - Y se puede calcular con la siguiente fórmula: 𝑇𝑖𝑒𝑚𝑝𝑜(𝜇𝑠) = 24.2 + 0.11𝑅 R Donde: R = Impedancia
  • 8. Tiempo = Periodo detectado El procedimiento para obtener la posición X - Y es: 1. Sacar un pulso por E/S 200h para activar el puerto de Joystick. 2. El bit del axis X - Y se mantiene a nivel alto hasta que se completa el tiempo de descarga. 3. Reemplazar el tiempo de descarga detectado en la fórmula anterior. El valor de R es lineal. Algunas utilidades posibles del puerto de Joystick son:  Como puerto de cuatro entradas digitales, formado por los cuatro botones de disparo, por ejemplo en una central de alarma.  Como puerto de cuatro entradas analógicas, formado por los ejes X - Y de ambos Joystick, por ejemplo para colocar unas resistencias sensibles a la temperatura (PTC o NTC) y fabricarnos un termómetro, o para colocar una fotorresistencia, para hacernos un sensor lumínico o un fotómetro. Todo queda en poder de la imaginación del diseñador. Uso de un joystick en simulink El modelo de joystick utilizado fue el control de mando de Ps2 con adaptador USB. En este caso, solo se desea mover la posición del carro en el eje X, para lo cual se utilizó solo la palanca izquierda en el eje X. Figura 2 Joystick y palanca utilizada. La interfaz con Simulink se realizó de la siguiente manera. Primero se instalaron los controladores para usar el Joystick en la PC y se colocaron los componentes en Simulink a utilizar como se muestra en la figura 3.
  • 9. Figura 3 Elementos en Simulink. En el cual se observa un selector, y la primera posición corresponde a la palanca izquierda y al eje X. Luego se obtiene el Id del Joystick y se coloca en casillero que lo requiere, en el elemento “Joystick Input”. Sin ganancia, el joystick responde a valores de [-1,1], por esta razón se añade una ganancia de cualquier valor. Figura 4 ID del Joystick DESARROLLO 1. SISTEMA ELECTROMECÁNICO Se consideró el sistema electromecánico mostrado en la figura 5. Figura 5 Sistema Electromecánico Teniendo como variables involucradas:  Tm(t): Par aplicado.
  • 10.  VA(t); I(t): Voltaje aplicado al motor y corriente de armadura, respectivamente.  Jm; JL; JF: Momento de Inercia equivalente del motor, carga intermedia y carga final.  b1;b2: Coeficiente de fricción viscosa equivalente a los cojinetes del motor y carga.  θm; θL; θF: ángulos de desplazamiento del motor, carga intermedia y carga final.  K: coeficiente de torsión de la flecha que une la carga intermedia con la carga final. Se modeló dicho sistema, dividiéndolo en subsistemas, para después relacionarlos entre sí, las ecuaciones obtenidas para cada subsistema fueron: Motor: 𝑉𝐴 = 𝑅𝐼 + 𝐿𝐼̇ + 𝐾 𝑚 𝜃 𝑚 ̇ Masa M: 𝐽 𝑚 𝜃 𝑚 ̈ = 𝑇 𝑚 − 𝑏1 𝜃 𝑚 ̇ − 𝑇1 Engranes: 𝛼 = 𝑁1 𝑁2 = − 𝑇 𝑚 𝑇 𝑙 = 𝜃 𝑙 𝜃 𝑚 Masa L: 𝐽𝑙 𝜃𝑙 ̈ = 𝑇𝑙 − 𝑏2 𝜃𝑙 ̇ − 𝐾(𝜃𝑙 − 𝜃𝑓) Masa F: 𝐽 𝑓 𝜃𝑓 ̈ = 𝐾(𝜃𝑙 − 𝜃𝑓) Al hacer un poco de álgebra a las ecuaciones diferenciales anteriores se llegó las siguientes expresiones: 𝐼̇ = − 𝑅 𝐿 𝐼 − 𝐾 𝑚 𝐿 𝜃 𝑚 ̇ + 1 𝐿 𝑉𝑎 𝜃 𝑚 ̈ = − 𝑏 𝐽 𝜃 𝑚 ̇ − 𝑘 𝐽 (𝛼𝜃 𝑚 − 𝜃𝑓) + 𝐾 𝑚 𝐽 𝐼 𝜃𝑓 ̈ = − 𝑘 𝐽 𝑓 (𝛼𝜃 𝑚 + 𝜃𝑓) De las cuales las variables J, b y k fueron definidas como sigue: 𝐽 = 𝐽 𝑚 + 𝐽𝐿 𝛼2 𝑏 = 𝑏1 + 𝑏2 𝛼2 𝑘 = 𝐾𝛼
  • 11. Representación en variables de Estados Tomando como variables de estado a la corriente del motor, las posiciones y velocidades de los cuerpos m y f se llegó a que: 𝑋1 = 𝐼, 𝑋2 = 𝜃 𝑚, 𝑋3 = 𝜃 𝑚 ̇ , 𝑋4 = 𝜃𝑓, 𝑋5 = 𝜃𝑓 ̇ 𝑋1 ̇ = − 𝑅 𝑎 𝐿 𝑋1 − 𝐾 𝑚 𝐿 𝑋3 + 1 𝐿 𝑉𝑎 𝑋2 ̇ = 𝑋3 𝑋3 ̇ = − 𝑏 𝐽 𝑋3 − 𝑘 𝐽 (𝛼𝑋2 − 𝑋4) + 𝐾 𝑚 𝐽 𝑋1 𝑋4 ̇ = 𝑋5 𝑋5 ̇ = − 𝑘 𝐽 𝑓 (𝛼𝑋2 + 𝑋4) Por lo tanto el sistema puedo ser representado en espacio de estados como se muestra a continuación: ( 𝑋1 ̇ 𝑋2 ̇ 𝑋3 ̇ 𝑋4 ̇ 𝑋5 ̇ ) = ( − 𝑅 𝑎 𝐿 0 − 𝐾 𝑚 𝐿 0 0 0 0 1 0 0 𝐾 𝑚 𝐽 − 𝑘𝛼 𝐽 − 𝑏 𝐽 𝑘 𝐽 0 0 0 0 0 1 0 − 𝑘𝛼 𝐽 𝑓 0 − 𝑘 𝐽 𝑓 0 ) ( 𝑋1 𝑋2 𝑋3 𝑋4 𝑋5) + ( 1 𝐿⁄ 0 0 0 0 ) 𝑉𝑎 Y, considerando que solo sensores de posición angular están disponibles, se tuvo: 𝑦 = ( 0 1 0 0 0 0 0 0 1 0 ) ( 𝑋1 𝑋2 𝑋3 𝑋4 𝑋5) Debido a la complejidad del sistema se optó por utilizar el software de Matlab para realizar todos los análisis y cálculos que fueran necesarios para el desarrollo de este ejercicio, el código del programa se encuentra en el Anexo 1.
  • 12. Análisis de Estabilidad Se analizó la estabilidad del sistema, utilizando los siguientes valores para las variables del mismo. 𝑅 = 0.67Ω 𝑁1 = 1 𝑁2 = 2 𝐾 𝑚 = 4.3 × 10−3 𝐽 𝑚 = 3.4 × 10−5 𝐽𝐿 = 2.64 × 10−4 𝐽 𝐹 = 2.64 × 10−4 𝑏1 = 0.47 𝑏2 = 0.47 K = 0.015 L = 2.75 × 10−6 Quedando el sistema expresado en varibles de estado como: ( 𝑋1 ̇ 𝑋2 ̇ 𝑋3 ̇ 𝑋4 ̇ 𝑋5 ̇ ) = ( −2.423 × 105 0 −1.56 × 103 0 0 0 0 1 0 0 40 −40 −5.87 × 103 −80 0 0 0 0 0 1 0 −30 0 −60 0) ( 𝑋1 𝑋2 𝑋3 𝑋4 𝑋5) + ( 3.64 × 105 0 0 0 0 ) 𝑉𝑎 𝑦 = ( 0 1 0 0 0 0 0 0 1 0 ) ( 𝑋1 𝑋2 𝑋3 𝑋4 𝑋5) Definiendo a las matrices A, B y C como: 𝐴 = ( −2.44 × 105 0 −1.56 × 103 0 0 0 0 1 0 0 43 −37.5 −5.87 × 103 −75 0 0 0 0 0 1 0 −28.41 0 −56.82 0) 𝐵 = ( 3.6364 × 105 0 0 0 0 ) 𝐶 = ( 0 1 0 0 0 0 0 0 1 0 )
  • 13. Enseguida, se calcularon los eigenvalores de la matriz A del sistema para determinar la estabilidad del sistema, usando la directiva eig(A), la cual generó los siguientes valores: 𝜆1 = −2.4356 × 105 𝜆2 = −5875.3 𝜆3 = 1.5 × 10−18 𝜆4 = −3.19 × 10−3 + 7.53𝑖 𝜆5 = −3.19 × 10−3 − 7.53𝑖 Debido a los valores obtenidos, en especial 𝜆3 que a pesar de ser un valor muy cercano a cero es positivo, seguido en impacto por 𝜆4 y 𝜆5 al ser números negativos muy cercanos a 0, se concluyó que el sistema no es estable. Análisis de controlabilidad Continuando con la práctica se analizó la controlabilidad del sistema, recordando que para hacerlo se debe hallar el determinante de la matriz controlabilidad definida como: 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = [𝐵 𝐴𝐵 𝐴2 𝐵 𝐴3 𝐵 𝐴4 𝐵] Que para el sistema tiene los siguientes valores: 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = [ 3.64 × 105 0 0 0 0 −8.86 × 1010 0 1.56 × 107 0 0 2.16 × 1016 1.56 × 107 −3.90 × 1012 0 0 −5.26 × 1021 −3.90 × 1012 9.51 × 1017 0 −4.44 × 108 1.28 × 1027 9.51 × 1017 −2.32 × 1023 −4.44 × 108 1.11 × 1014 ] Mediante la directiva det(CONTROLABILIDAD)se obtuvo el valor del determinante de esta matriz el cual fue de: 𝑑𝑒𝑡(𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑) = 1.7544 × 1037 Al ser el determinante diferente de 0, se consideró que la matriz Controlabilidad era de rango pleno, y, por tanto, que el sistema era controlable. Sin embargo, también se utilizaron las directivas Co=ctrb(A,B)y rank(Co), las cuales calculan directamente la
  • 14. matriz de controlabilidad del sistema y el rango de la misma, el resultado obtenido por estas directivas fue de un rango igual a 2, el cual es menor que la dimensión de la matriz A. Ante dicho resultado se concluyó que el sistema en realidad no era controlable, a pesar de que el determinante de la matriz de controlabilidad sea diferente de 0. Análisis de Observabilidad Posteriormente se supuso que solo se tenía un sensor para el ángulo θm, por lo que la matriz C del sistema expresado en variables de estado cambió a: 𝐶 = (0 1 0 0 0) Se realizó un análisis de observabilidad, recordando que para hacerlo se debe hallar el determinante de la matriz observabilidad, definida como: 𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = [𝐶 𝐶𝐴 𝐶𝐴2 𝐶𝐴3 𝐶𝐴4] Y que para el sistema tiene los siguientes valores: 𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = [ 0 0 43 −1.07 × 107 2.62 × 1012 1 0 −37.5 2.20 × 105 −1.30 × 109 0 1 −5875 3.44 × 107 −1.86 × 1011 0 0 −75 4.41 × 105 −2.58 × 109 0 0 0 −75 4.41 × 105] Mediante la directiva det(OBSERVABILIDAD)se obtuvo el valor del determinante de esta matriz el cual fue de: 𝑑𝑒𝑡(𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑) = 1.4357 × 1016 Al ser el determinante diferente de 0, se consideró que la matriz Observabilidad era de rango pleno y, por tanto, que el sistema era observable. De igual manera que lo hecho con la controlabilidad, se utilizaron las directivas Ob=obsv(A,C)y rank(Ob), las cuales calculan directamente la matriz de observabilidad del sistema y el rango de la misma. El resultado obtenido por estas directivas fue de un rango igual a 5, el cual es igual que la dimensión de la matriz A, ante dicho resultado se corroboró que el sistema era observable. Cambio de valor de K
  • 15. Finalmente se propuso un nuevo valor para el coeficiente de torsión de la flecha con un valor de 𝐾 = 15 × 107 , teniendo como hipótesis que este cambio era provocado porque el esfuerzo de torsión necesario para que la flecha que une a las masas l y f gire será 1010 veces mayor al tomado en cuenta anteriormente, en otras palabras, que en cierto punto se podría tomar a las masas l y f y la flecha que los une como una sola flecha. Al cambiar este valor, la matriz A del sistema también cambia, quedando como: 𝐴′ = ( −2.44 × 105 0 −1.56 × 103 0 0 0 0 1 0 0 43 −3.5 × 1011 −5.87 × 103 −7.5 × 1011 0 0 0 0 0 1 0 −2.84 × 1011 0 −5.68 × 1011 0) Se hizo un análisis de la estabilidad del nuevo sistema, usando la directiva eig(A), la cual generó los siguientes valores: 𝜆1 = −2.4356 × 105 𝜆2 = −3538.2 𝜆3 = −1.47 × 10−8 𝜆4 = −1167.9 + 9.71 × 105 𝑖 𝜆5 = −1167.9 + 9.71 × 105 𝑖 Debido a los valores obtenidos, en especial 𝜆3 que a pesar de ser un valor negativo es muy cercano a 0, se concluyó que el sistema era marginalmente estable. De igual modo, se volvió a analizar la controlabilidad del sistema, teniendo la matriz de controlabilidad los siguientes valores: 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑′ = [ 3.64 × 105 0 0 0 0 −8.86 × 1010 0 1.56 × 107 0 0 2.16 × 1016 1.56 × 107 −3.90 × 1012 0 0 −5.26 × 1021 −3.90 × 1012 −4.91 × 1018 0 −4.44 × 1018 1.28 × 1027 −4.91 × 1018 1.27 × 1024 −4.44 × 1018 1.11 × 1024 ] Mediante la directiva det(CONTROLABILIDAD)se obtuvo el valor del determinante de esta matriz el cual fue de:
  • 16. 𝑑𝑒𝑡(𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑′) = 1.7544 × 1057 Al ser el determinante diferente de 0, se consideró que la matriz Controlabilidad podía ser de rango pleno, y, por tanto, que el sistema podía ser controlable. Sin embargo, también se utilizaron las directivas Co=ctrb(A,B)y rank(Co), el resultado obtenido por estas directivas fue de un rango igual a 3, el cual es menor que la dimensión de la matriz A. Ante dicho resultado se pensó que el sistema en realidad no era controlable, a pesar de que el determinante de la matriz de controlabilidad era diferente de 0; sin embargo, al recordar la interpretación física del cambio de K, siendo ésta el coeficiente de torsión de la flecha que une a las masas l y f, cuestión que físicamente es muy difícil de controlar en un sistema mecánico, se consideró que la matriz A del sistema podía haber disminuido su dimensión, pues las masas l y f y la flecha que las une pueden verse como un solo cuerpo, por lo que el sistema podría llegar a ser controlable. Hipótesis de Control por retroalimentación y observador de estados En base a los datos obtenidos se concluyó que el sistema no es controlable, por lo que cualquier diseño de un control por retroalimentación no brindará los resultados deseables, sin embargo, se quiso comprobar esto, por medio del diseño del control por retroalimentación y su posterior simulación. Se asumió que todo el estado era medible y se propusieron como polos en lazo cerrado a 𝜆1,2 = −1 ± 𝑗, 𝜆3,4 = −4 ± 2𝑗 y 𝜆5 = 2𝑗. Para calcular la matriz K es necesario conocer la función de transferencia del sistema lineal, por lo que se implementaron los polos en lazo cerrado deseados, planteándose de la siguiente manera: (𝑠 + 1 − 𝑗) ∗ (𝑠 + 1 + 𝑗) ∗ (𝑠 + 4 − 2𝑗) ∗ (𝑠 + 4 + 2𝑗) ∗ (𝑠 + 2𝑗) Dando como resultado 𝑠5 + 10.0002𝑠4 + 33.002𝑠3 + 40.006𝑠2 + 16.007𝑠 + 0.0031 Se encontró el polinomio característico del sistema en lazo cerrado por medio de la matriz |𝜆𝐼 − (𝐴 + 𝐵𝐾)|, dando como resultado
  • 17. 𝑠5 + (−3.636 × 105 𝐾1 + 2.495 × 105)𝑠4 + (−2.136 × 109 𝐾1 − 1.526 × 107 𝐾3 + 1.431 × 109 𝐾5)𝑠3 + (−3.429 × 107 𝐾1 − 1.563 × 107 𝐾2 + 2.331 × 107)𝑠2 + (8.133 × 1010 − 1.213 × 1011 𝐾1 + 8.884 × 108 𝐾3 + 4.442 × 108 𝐾5)𝑠 + (4.442 × 108 𝐾4 − 8.884 × 105 𝐾2) Se igualaron el polinomio característico del sistema en lazo cerrado con el polo característico deseado. 40 = 0 − 𝑘1 56 = −14.7𝑘1 − 0.00001𝑘3 38 = 1.47 − 0.00001𝑘4 − 14.65𝑘2 − 0.9923𝑘1 + 3.664𝑘3 10 = 16.223 + 3.664𝑘4 − 0.9923𝑘2 Utilizando el método Gauss Jordan en Matlab se obtuvo: 𝑘1 = 0.68613 𝑘2 = 0.01403 𝑘3 = 2.19933 𝑘4 = 0.02806 𝑘5 = 7.8788 × 10−6 Dando como resultado la matriz K 𝐾 = [0.68613 0.01403 2.19933 0.02806 7.8788 × 10−6] Para el diseño del servosistema se implementó la siguiente fórmula para hallar el valor Kr. 𝐾𝑟 = [−𝐶(𝐴 + 𝐵𝐾)−1 𝐵]−1 Implementando el software Matlab se tiene como resultado 𝐾𝑟 = 2.7764 × 1011 Este control se implementó utilizando el programa Simulink al sistema y se comprobó que aún proponiendo un sistema de control por retroalimentación, el sistema seguirá
  • 18. siendo inestable como se puede observar en las siguientes figuras, en donde se muestran la entrada al sistema, la posición de m y de f, respectivamente. Figura 6 Sistema sin controlabilidad Figura 7 Sistema implementando controlabilidad 2. SISTEMA PÉNDULO INVERTIDO Se consideró el sistema péndulo invertido mostrado en la figura 8. Figura 8 Sistema Péndulo Invertido Las ecuaciones de movimiento del sistema vienen dadas por las siguientes ecuaciones no lineales:
  • 19. [ 𝐼 + 𝑚𝑙2 𝑚𝑙 cos 𝜃 𝑚𝑙 cos 𝜃 𝑀 + 𝑚 ] [ 𝜃̈ 𝑥̈ ] + [ 𝛽𝜃̇ − 𝑚𝑔𝑙 sin 𝜃 𝑏𝑥̇ − (𝑚𝑙 sin 𝜃)𝜃̇2 ] = [ 0 𝑢 ] Representación en variables de Estados Se expresó al sistema en variables de estado, utilizando las siguientes variables: 𝑥1 = 𝑥, 𝑥2 = 𝑥̇, 𝑥3 = 𝜃, 𝑥4 = 𝜃̇ [ 𝐼 + 𝑚𝑙2 𝑚𝑙 cos 𝑥3 𝑚𝑙 cos 𝑥3 𝑀 + 𝑚 ] [ 𝑥4̇ 𝑥2̇ ] + [ 𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3 𝑏𝑥2 − (𝑚𝑙 sin 𝑥3)𝑥4 2] = [ 0 𝑢 ] Desarrollando las ecuaciones se tuvo lo siguiente: 1. (𝐼 + 𝑚𝑙2)𝑥4̇ + (𝑚𝑙 cos 𝑥3)𝑥2̇ + 𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3 = 0 2. (𝑚𝑙 cos 𝑥3)𝑥4̇ + (𝑀 + 𝑚)𝑥2̇ + 𝑏𝑥2 − (𝑚𝑙 sin 𝑥3)𝑥4 2 = 𝑢 Se resuelve el sistema de ecuaciones anterior, despejando 𝑥4̇ de la ecuación 1, sustituyéndolo en la ecuación 2, para obtener la siguiente expresión: 3. 𝑥2̇ = (𝑢 + (𝑚𝑙 sin 𝑥3)𝑥4 2 − 𝑏𝑥2)(𝐼 + 𝑚𝑙2) + (𝑚𝑙 cos 𝑥3)(𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3) (𝑚𝑙 cos 𝑥3)(−𝑚𝑙 cos 𝑥3) + (𝑀 + 𝑚)(𝐼 + 𝑚𝑙2) Se sustituye la ecuación 3 en la 2 y se obtiene: 𝑥4̇ = (𝑢 − 𝑏𝑥2 + (𝑚𝑙 sin 𝑥3)𝑥4 2)(𝑚𝑙 cos 𝑥3) + (𝑀 + 𝑚)(𝛽𝑥4 − 𝑚𝑔𝑙 sin 𝑥3) (𝑚𝑙 cos 𝑥3)(𝑚𝑙 cos 𝑥3) − (𝑀 + 𝑚)(𝐼 + 𝑚𝑙2) Simulación del sistema Para la simulación de este sistema se realizó en Simulink un diagrama a bloques correspondiente al espacio de estados de las ecuaciones anteriores como se muestra en la Figura 9. Para un manejo más sencillo de la simulación se definieron unas nuevas variables del sistema, éstas son: 𝑟1 = 𝑚𝑙 𝐼 + 𝑚𝑙2 𝑟2 = 𝑚𝑔𝑙 𝑟3 = 𝑚𝑙 𝑟4 = 𝐼 + 𝑚𝑙2
  • 20. 𝑟5 = 𝑀 + 𝑚 Quedando las ecuaciones del espacio de estados como sigue: 𝑥1̇ = 𝑥2 𝑥2̇ = (𝑢 + (𝑟3 sin 𝑥3)𝑥4 2 − 𝑏𝑥2)𝑟4 + (𝑟3 cos 𝑥3)(𝛽𝑥4 − 𝑟2 sin 𝑥3) 𝑟4 𝑟5 − 𝑟3 2 cos 𝑥3 𝑥3̇ = 𝑥4 𝑥4̇ = −(𝑢 − 𝑏𝑥2 + (𝑟3 sin 𝑥3)𝑥4 2)(𝑟3 cos 𝑥3) − 𝑟5(𝛽𝑥4 − 𝑟2 sin 𝑥3) 𝑟4 𝑟5 − 𝑟3 2 cos 𝑥3 Figura 9 Diagrama a bloques del sistema péndulo invertido no lineal Para mejor organización de la simulación también se realizaron 3 susbsistemas, el primero llamado Denominador está formado por el denominador de ambas ecuaciones como se muestra en la figura 10. Figura 10 Denominador del sistema
  • 21. El segundo susbsistema genera como salida el numerador de la ecuación que conforma a 𝑥2̇ como se muestra en la figura 11. Figura 11 Coeficientes x_2 ̇ El tercer subsistema tiene como salida al numerador de la ecuación que conforma a 𝑥4̇ como se muestra en la figura 12. Figura 12 Coeficientes x_4 ̇ En la figura 13 que a continuación se muestra, se observa claramente como el péndulo cae 180° de su posición inicial. Cabe mencionar que en el momento en que cae el péndulo ejerce una fuerza sobre el carro puesto que en la simulación se aprecia un ligero cambio de posición de éste.
  • 22. Figura 13 Simulación del péndulo en el sistema no lineal Linealización del sistema Si se considera que el sistema se encuentra cerca del punto de equilibrio en la posición vertical hacia arriba, es decir,𝜃 ≈ 0, entonces es posible hacer la aproximación 𝜃 ≈ 0 = sin 𝜃 y cos 𝜃 ≈ 1. Haciendo estas aproximaciones el sistema se puede expresar en la forma 𝑥̇ = 𝐴𝑥 + 𝐵𝑢, como se ve en el siguiente desarrollo. Se tenía al sistema de la siguiente manera: [ 𝐼 + 𝑚𝑙2 𝑚𝑙 cos 𝜃 𝑚𝑙 cos 𝜃 𝑀 + 𝑚 ] [ 𝜃̈ 𝑥̈ ] + [ 𝛽𝜃̇ − 𝑚𝑔𝑙 sin 𝜃 𝑏𝑥̇ − (𝑚𝑙 sin 𝜃)𝜃̇2 ] = [ 0 𝑢 ] Se hicieron las aproximaciones indicadas anteriormente: [ 𝐼 + 𝑚𝑙2 𝑚𝑙 𝑚𝑙 𝑀 + 𝑚 ] [ 𝜃̈ 𝑥̈ ] + [ 𝛽𝜃̇ − 𝑚𝑔𝑙𝜃 𝑏𝑥̇ ] = [ 0 𝑢 ] Utilizando las siguientes variables de estado: 𝑥1 = 𝑥, 𝑥2 = 𝑥̇, 𝑥3 = 𝜃, 𝑥4 = 𝜃̇ El sistema puede ser expresado como: (𝐼 + 𝑚𝑙2)𝑥4̇ + (𝑚𝑙)𝑥2̇ + 𝛽𝑥4 − 𝑚𝑔𝑙𝑥3 = 0 (𝑚𝑙)𝑥4̇ + (𝑀 + 𝑚)𝑥2̇ + 𝑏𝑥2 = 𝑢 Resolviendo el sistema de ecuaciones obtenemos las siguientes expresiones: 𝑥1̇ = 𝑥2 𝑥2̇ = (𝑢 − 𝑏𝑥2)𝑟4 + 𝑟3(𝛽𝑥4 − 𝑟2 𝑥3) 𝑟4 𝑟5 − 𝑟3 2
  • 23. 𝑥3̇ = 𝑥4 𝑥4̇ = −(𝑢 − 𝑏𝑥2)(𝑟3) − 𝑟5(𝛽𝑥4 − 𝑟2 𝑥3) 𝑟4 𝑟5 − 𝑟3 2 Expresando al sistema en su representación en variables de estados se tiene: ( 𝑋1 ̇ 𝑋2 ̇ 𝑋3 ̇ 𝑋4 ̇ ) = ( 0 1 0 0 0 𝑏𝑟4 𝑟4 𝑟5 − 𝑟3 2 −𝑟2 𝑟3 𝑟4 𝑟5 − 𝑟3 2 𝛽𝑟3 𝑟4 𝑟5 − 𝑟3 2 0 0 0 1 0 𝑏𝑟3 𝑟4 𝑟5 − 𝑟3 2 𝑟2 𝑟5 𝑟4 𝑟5 − 𝑟3 2 −𝛽𝑟5 𝑟4 𝑟5 − 𝑟3 2 ) ( 𝑋1 𝑋2 𝑋3 𝑋4 ) + ( 0 𝑟4 𝑟4 𝑟5 − 𝑟3 2 0 −𝑟3 𝑟4 𝑟5 − 𝑟3 2) 𝑢 Sustituyendo con los valores de cada variable del sistema en el espacio de estados, éste puede ser expresado como sigue: ( 𝑋1 ̇ 𝑋2 ̇ 𝑋3 ̇ 𝑋4 ̇ ) = ( 0 0 0 0 1 −0.0992 0 0.3663 0 0 0 0 0 0.3663 1 −16.1238 ) ( 𝑋1 𝑋2 𝑋3 𝑋4 ) + ( 0 0.9923 0 −3.664 ) 𝑢 Por medio de Matlab se comprobó este espacio de estados, utilizando este comando para declarar las variables del sistema del péndulo: syms ('theta11','I1','m1','l1','M1','Beta1','b1','theta1','x11','u1') Se declaró el modelo lineal del sistema, por medio de las matrices de las variables de estado y de la entrada: Ab=[I1+m1*(l1)^2 m1*l1;m1*l1 m1+M1] Z=[-Beta1*theta11;-b1*x11+u1] Se obtuvieron las ecuaciones de las variables 𝑥2̇ y 𝑥4̇ y así se comprobó la matriz anterior x=inv(Ab)*Z Con valores asignados a las variables se declaró la matriz A en Matlab para obtener valores numéricos de la misma A22=(-b*(I+m*l^2))/((I+m*l^2)*(M+m)-(m*l)^2); A24=(Beta*m*l)/((I+m*l^2)*(M+m)-(m*l)^2); A42=(-b*(m*l))/(((m*l)^2)-(M+m)*(I+m*(l)^2));
  • 24. A44=(Beta*(m+M))/(((m*l)^2)-(M+m)*(I+m*(l)^2)); A=[0 1 0 0;0 A22 0 A24;0 0 0 1;0 A42 0 A44] Análisis de Estabilidad Se calcularon los eigenvalores de la matriz A del sistema expresado en variables de estado para determinar la estabilidad del sistema, usando la directiva eig(A), la cual generó los siguientes valores: 𝜆1 = 0 𝜆2 = −18.292 𝜆3 = −0.0909 𝜆4 = 2.1597 Al analizar los valores obtenidos, debido a que una de las raíces fue igual a cero y otra fue positiva, se concluyó que el sistema era inestable. Análisis de controlabilidad Para determinar si el sistema linealizado es controlable es necesario conocer la determinante de la matriz de 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑, es decir 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = |𝐵 𝐴𝐵 𝐴2 𝐵 𝐴3 𝐵 𝐴4 𝐵| Que tiene como valores: 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = | 0 0.90961 −0.09055 0.13644 0.90961 −0.09055 0.13644 −2.3914 0 −0.00077 0.34589 −5.6413 −0.00077 0.34589 −5.6413 104.68 | = −3.766 ≠ 0 Debido a que la determinante de la matriz fue diferente de cero, se pensó que el sistema es controlable, se usaron las directivas Co=ctrb(A,B)y rank(Co)para corroborarlo, el resultado obtenido de un rango igual a 4, el cual es igual que la dimensión de la matriz A, por lo que se concluyó que el sistema era controlable. Análisis de control por retroalimentación Se asume que todo el estado es medible, por lo tanto para diseñar un control por retroalimentación de estado posicionando los polos en lazo cerrado en 𝜆1,2 = −1 ± 𝑗
  • 25. y en 𝜆3,4 = −4 ± 2𝑗 de tal forma que el sistema linealizado sea asintóticamente estable, es necesario conocer la función de transferencia del sistema lineal para calcular la matriz K. Para obtener la función en lazo cerrado del sistema lineal, se implementan los polos en lazo cerrado deseados, por ello se plantean de la siguiente manera: (𝑠 + 1 − 𝑗) ∗ (𝑠 + 1 + 𝑗) ∗ (𝑠 + 4 − 2𝑗) ∗ (𝑠 + 4 + 2𝑗) Dando como resultado 𝑠4 + 10𝑠3 + 38𝑠2 + 56𝑠 + 40 Se encuentra el polinomio característico del sistema en lazo cerrado por medio de la matriz |𝜆𝐼 − (𝐴 + 𝐵𝐾)|, dando como resultado 𝑠4 + (3.664𝑘4 − 0.9923𝑘2 + 16.223)𝑠3 + (1.47 − 0.00003𝑘4 − 14.65𝑘2 + 3.664𝑘3 + 39.692)𝑠2 + (586.297 − 0.00001𝑘3)𝑠 Se igualaron el polinomio característico del sistema en lazo cerrado con el polo característico deseado. 40 = 35.91𝑘1 56 = −3.59 − 14.66𝑘1 − 36𝑘2 38 = −0.9923𝑘1 − 14.7𝑘2 + 3.664𝑘3 − 38.03 10 = 16.223 + 3.664𝑘4 − 𝑘2 Utilizando el método Gauss Jordan en Matlab se obtuvo: 𝑘1 = 1.1139 𝑘2 = 2.1089 𝑘3 = 29.225 𝑘4 = −1.1228 Dando como resultado la matriz K 𝐾 = [1.1139 2.1089 29.225 −1.1228]
  • 26. Análisis de servosistema Para poder diseñar un servosistema es necesario tener en cuenta las matrices A, B, C y K calculada previamente, debido a que la ecuación siguiente corresponde al valor Kr. 𝐾𝑟 = [−𝐶(𝐴 + 𝐵𝐾)−1 𝐵]−1 Implementando el software Matlab (ver Anexo 2) se tiene como resultado 𝐾𝑟 = −1.1139 Implementación de joystick al sistema Por medio del joystick se pretendió introducir una señal de entrada, que proporcionaba la posición deseada del carro, para corroborar que el control fuera el adecuado, midiendo la posición del péndulo, el cual, al variar la posición del carro, tiene que seguir vertical. El diagrama de conexión en Simulink es el mostrado en la siguiente figura: Figura 14 Diagrama de conexión de joystick con matriz K y Kr, para el control del péndulo invertido modelado de forma no lineal. Se observa que en el sistema no lineal el péndulo permanece en posición vertical cuando la posición del carro es modificada por el joystick (figura 15), es decir, la planta obedece al controlador no lineal cuando se implementa el control por retroalimentación, sin embargo, cuando el cambio de posición del carro es drástica de tal manera que el péndulo se aleja considerablemente de su posición inicial (figura 16), éste cae abruptamente (figura 17).
  • 27. Figura 15 Medición de la posición del carro y del péndulo Figura 16 Posición del péndulo fuera de su rango de control Figura 17 Péndulo después de exceder su rango de control Diseño de Observador Posteriormente se supuso que solo se tenía presupuesto para comprar dos sensores, por lo que se eligió que las variables de estado a medir fueran la posición lineal del carrito y la angular del péndulo, de tal forma que el sistema linealizado fuera observable, por lo que la matriz C del sistema expresado en variables de estado cambió a:
  • 28. 𝐶 = ( 1 0 0 0 0 0 1 0 ) Se realizó un análisis de observabilidad, utilizando las directivas Ob=obsv(A,C)y rank(Ob), las cuales calculan directamente la matriz de observabilidad del sistema y el rango de la misma, respectivamente. La matriz obtenida con estas instrucciones es: 𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 = [ 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 −0.09923 −0.89783 0.36646 0 0.36646 39.505 −16.124 0 0.14414 14.566 −6.8431 0 −5.9453 −637.31 299.63 ] El rango de esta matriz fue de 4, valor que es igual que la dimensión de la matriz A, ante dicho resultado se concluyó que el sistema era observable. Para el diseño de un observador se propusieron como polos del observador a 𝜆1,2 = −4 ± 4𝑗 y en 𝜆3,4 = −16 ± 8𝑗, polos que son cuatro veces mayor al del control para un asegurar un tiempo de respuesta del observador mayor al tiempo de respuesta del controlador, por lo que el polinomio característico del observador quedó definido como: 𝑠4 + 40𝑠3 + 608𝑠2 + 3584𝑠 + 10240 Para el cálculo de la matriz L del observador, son necesarios los coeficientes del polinomio característico del observador en forma de vector (𝑝 = [40 608 3584 10240]), la matriz A y la matriz C. Además fue necesario hacer uso de la función L=place(A',C',p), la cual genera los coeficientes de la matriz L. El resultado de la matriz L es la siguiente: 𝐿 = [−4290.3 4.984 × 105 2032.6 −1.187 × 106 2130.7 −1.731 × 106 −10198 5.998 × 106 ] Simulación/Animación del Sistema Finalmente se simuló el sistema no lineal y lineal con el observador, servosistema y control a lazo cerrado desarrollados en la práctica, asimismo, se dispuso de un joystick para mover el carro en la posición deseada. El diagrama de lo anteriormente mencionado se muestra en la figura 18, donde se pueden identificar el sistema no
  • 29. lineal, al cual se le aplica el observador del sistema lineal y el control por retroalimentación y servosistema desarrollados por el sistema linealizado. Fig. 18 Sistema no lineal, con observador implementado en sistema lineal. En la figura 19 están representadas la salida del observador (línea morada) y el estado del sistema no lineal (línea amarilla, recordando que solo dos de las cuatro variables de estado alimentan al observador), midiendo la posición del carro en la primera gráfica, la velocidad del carro en la segunda gráfica, la posición del péndulo en la tercera gráfica y la velocidad del péndulo en la cuarta gráfica. Analizando las imágenes se ve que el observador sigue muy de cerca al estado del sistema no lineal.
  • 30. Fig. 19 Gráficas de sistema no lineal con observador. Sin embargo, cuando el péndulo sale del rango donde es controlable, se puede ver que se presenta la inestabilidad y el observador se pierde en la tercera y cuarta gráfica, de posición y velocidad del péndulo, respectivamente, esto debido a que el observador está diseñado para el sistema linealizado. Figura 18 Gráficos del observador en el sistema no lineal tras una perturbación
  • 31. PARÁMETROS Los parámetros para el sistema electromecánico se encuentran en la Tabla 2. Tabla 2 Parámetros para el sistema electromecánico Los parámetros para el sistema péndulo invertido se encuentran en la Tabla 3. Tabla 3 Parámetros para el sistema péndulo invertido CONCLUSIONES Debido a los resultados de cada ejercicio se pudo concluir que la controlabilidad, observabilidad y control por retroalimentación de estado, son parteaguas para los sistemas de control; puesto que aun cuando se tiene un sistema no linealizado, como fue el caso del péndulo invertido, se puede tener un rango de control del sistema si se hace un estudio y análisis del mismo sistema pero de su forma linealizada. Sin embargo este control viene limitado a las condiciones de linealización, puesto que si se sale de los márgenes de las mismas, el sistema no podrá ser alterado por el sistema de control propuesto, pues se alejaría del sistema linealizado.
  • 32. Por otro lado, se pudo apreciar que en ciertos sistemas lineales, al cambiar algunas variables físicas, como en el sistema electromecánico al cambiar el coeficiente de torsión de la flecha, se logra mejorar la estabilidad del sistema y también su controlabilidad, pues en casos como el mencionado, se torna muy difícil controlar esas variables. Finalmente, se pudo ver que al realizar observadores a partir de sistemas lineales e implementarlos en sistemas no lineales, éstos son útiles en un rango donde el sistema no lineal no sufra cambios brucos para alejarlos de la linealización, tal como sucedió con el sistema de control. BIBLIOGRAFÍA [1] K. Ogata, Ingeniería de Control Moderna, Pearson Educación, Tercera edición, 1998, pp. 58, 59,60, 85. ANEXOS Anexo 1 Programa en Matlab para resolver el ejercicio 1 %% Práctica 2 Ejercicio 1 %Sistema Electromecánico %% VALORES DE DATOS R=0.67; KM=4.3*10^(-3); JM=3.4*10^(-5); JL=2.64*10^(-4); JF=2.64*10^(-4); B1=0.47; B2=0.47; Ks=0.015; L=2.75*10^(-6); %VARIABLES PARA EL ESPACIO DE ESTADOS k=Ks/2; b=(B1)+(B2/4); j=(JL/4)+(JM); %% MATRICES DEL ESPACIO DE ESTADOS A= [-R/L 0 -KM/L 0 0;0 0 1 0 0;KM/j -k/(2*j) -b/j -k/j 0;0 0 0 0 1;0 - Ks/(2*JF) 0 -Ks/JF 0]; B=[1/L; 0; 0; 0; 0]; C=[0 1 0 0 0; 0 0 0 1 0]; %% ESTABILIDAD eig(A) %cálculo de los eigenvalores de la matriz A
  • 33. %% CONTROLABILIDAD A2=A^(2); A3=A^(3); A4=A^(4); CONTROLABILIDAD=[B A*B A2*B A3*B A4*B]; %Matriz de controlabilidad CONTROLABLE=det(CONTROLABILIDAD) %determinante de la matriz de controlabilidad Co=ctrb(A,B); %Obtención de matriz de controlabilidad por Matlab rank(Co) %Rango de la matriz de controlabilidad %% OBSERVABILIDAD C2=[0 1 0 0 0]; OBSERVABILIDAD=[C2; C2*A; C2*A2; C2*A3; C2*A4]; %Matriz de observabilidad OBSERVABLE=det(OBSERVABILIDAD) %determinante de la matriz de observabilidad Ob=obsv(A,C); %Obtención de matriz de observabilidad por Matlab rank(Ob) %Rango de la matriz de observabilidad %% CAMBIO DE k EN LAS VARIABLES Y MATRICES DEL ESPACIO DE ESTADOS K2s=15*10^(7); %Valor nuevo de K k2s=K2s/2; A21=[-R/L 0 -KM/L 0 0;0 0 1 0 0;KM/j -k2s/(2*j) -b/j -k2s/j 0;0 0 0 0 1;0 - K2s/(2*JF) 0 -K2s/JF 0]; %Nueva matriz A eig(A21) %Estabilidad de la matriz A21 % CONTROLABILIDAD NUEVO ESPACIO DE ESTADOS A22=A21^(2); A33=A21^(3); A44=A21^(4); CONTROLABILIDAD2=[B A21*B A22*B A33*B A44*B]; %Matriz de controlabilidad de A21 CONTROLABLE2=det(CONTROLABILIDAD2) %determinante de la matriz de controlabilidad Co=ctrb(A21,B); %Obtención de matriz de controlabilidad por Matlab rank(Co) %Rango de la matriz de controlabilidad %% CONTROL POR RETROALIMENTACIÓN (K)
  • 34. syms ('s','k1','k2','k3','k4','k5') %Función de transferencia en lazo cerrado f=sym((s+1-j)*(s+1+j)*(s+4-2*j)*(s+4+2*j)*(s+2*j)) den_fun_lazocerrado=expand(f) %s^5 + 10.0002*s^4 + 33.002*s^3 + 40.00659983999*s^2 + 16.007999799968*s+0.00319999996 %Polinomio Característico K=[k1 k2 k3 k4 k5] SI=s*eye(5 pols=SI-(A+(B*K)) valores_para_k=det(pols) %Resultado de la igualación del polinomio característico y el denominador %de lazo cerrado %444214876.033058*k4-888429752.066116*k2+81331299586.7769*s- 121384297520.661*s*k1-888429752.066116*k3*s+444214876.033058*k5*s- 34297520.661157*k1*s^2 %-2136363636.36364*k1*s^3-15636363.6363636*k2*s^2-363636.363636364*k1*s^4- 15636363.6363636*k3*s^3+23313145.661157*s^2+1431430967.04545*s^3 %+249511.363636364*(s^4)+s^5 %Resultado factorizado de la igualación del polinomio característico y el %denominador de la función de transferencia de lazo cerrado %444214876.033058*k4-888429752.066116*k2 %(81331299586.7769-121384297520.661*k1- 888429752.066116*k3+444214876.033058*k5)*s %(-34297520.661157*k1-15636363.6363636*k2+23313145.661157)*s^2 %(-2136363636.36364*k1-15636363.6363636*k3+1431430967.04545)*s^3 %(-363636.363636364*k1+249511.363636364)*(s^4) %+s^5 % Obtención de K's por medio de Gauss Jordan KG=[0 -888429752.066116 0 444214876.033058 0;-121384297520.661 0 - 888429752.066116 0 444214876.033058;-34297520.661157 -15636363.6363636 0 0 0;-2136363636.36364 0 -15636363.6363636 0 0;-363636.363636364 0 0 0 0] SG=[0.00319999996;16.007999799968/81331299586.7769;40.00659983999/23313145. 661157;33.002/1431430967.04545;10.0002/249511.363636364] MG=[0 -888429752.066116 0 444214876.033058 0 0.00319999996;- 121384297520.661 0 -888429752.066116 0 444214876.033058 16.007999799968- 81331299586.7769;-34297520.661157 -15636363.6363636 0 0 0 40.00659983999- 23313145.661157;-2136363636.36364 0 -15636363.6363636 0 0 33.002- 1431430967.04545;-363636.363636364 0 0 0 0 10.0002-249511.363636364] rref(MG) % Matriz K k1=0.68612874945 k2=-0.0140319904947583 k3=-2.19933335812261 k4=-0.0280639809823129 k5=7.87880277336403e-06 K=[k1 k2 k3 k4 k5] % Servosistema (Kr) p=inv(A+(B*K))
  • 35. kr=[-C*(p)*B] Kr=1/3.60185094683417e-12 Anexo 2 Programa en Matlab para resolver el ejercicio 2 %% Práctica 2 Ejercicio 2 %% VALORES DE DATOS M=1 %Kg m=0.1%Kg b=0.1%N/m/s Beta=0.1%N/m/s l=0.25%m I=0.00052%(Kg) (m^2) (2)= (ml^2)/12 g= 9.8%m/s^2 % VARIABLES PARA EL DIAGRAMA SIMULINK NO LINEAL r1=m*l/(I+m*l^2); r2=m*g*l; r3=m*l; r4=I+m*l^2; r5=M+m; d=r4*r5-r3^2; %% 3.SISTEMA LINEAL syms ('theta11','I1','m1','l1','M1','Beta1','b1','theta1','x11','u1') Ab=[I1+m1*(l1)^2 m1*l1;m1*l1 m1+M1] Z=[-Beta1*theta11;-b1*x11+u1] x=inv(Ab)*Z A22=((- b)*(m*l^2 + I))/(M*m*l^2 + I*m + I*M); A23=(l*m*(- g*l*m))/(M*m*l^2 + I*m + I*M); A24= (l*m*(Beta))/(M*m*l^2 + I*m + I*M); A42=-(l*m*(- b))/(M*m*l^2 + I*m + I*M); A43=- ((M + m)*(- g*l*m))/(M*m*l^2 + I*m + I*M); A44=-((M + m)*(Beta))/(M*m*l^2 + I*m + I*M); A=[0 1 0 0;0 A22 A23 A24;0 0 0 1;0 A42 A43 A44] %% 4.ESTABILIDAD estabilidad=eig(A) %Asignación de estabilidad a los eigenvalores %% 5.CONTROLABILIDAD B=[0;1/((M+m)-(m*l)^2);0;-m*l/(M+m)*(I+m*l^2)-(m*l)^2] %Asignación de valores a matriz B e=[B A*B (A^2)*B (A^3)*B] %Cálculo matriz e sin determinante C=[1 0 0 0] %Asignación de valores a matriz C controlabilidad=det(e) %Cálculo de controlabilidad ctrb(A,B)%matriz de controlabilidad rank(ans)%si es controlable o no = dimension de matriz A %% 6. CONTROL POR RETROALIMENTACIÓN (K) syms ('s','k1','k2', 'k3','k4') K=[k1 k2 k3 k4]
  • 36. %Polinomio característico SI=s*eye(4) pols=SI-(A+(B*K)) valores_para_k=det(pols) expand(valores_para_k) %Resultado de la igualación del polinomio característico y el denominador %de lazo cerrado %(-3.25417766051011e-05*k3+ 586.297273526824)*s %(3.664*k3+39.692-14.6574318381706*k2-3.25417766051011e- 05*k4+1.46584579302257)*s^2 %(-0.9923*k2+3.664*k4+16.2235414834359)*s^3 %s^4 %como no tenemos terminos en la constante %40=35.91k1 %56=-3.59 -14.66k1+36k2 %38=-0.99k1-14.7k2+3.7k3-38.03 %10=16.223+3.664k4-k2 % Obtención de K's por medio de Gauss Jordan KG=[35.91 0 0 0 40;-14.66 36 0 0 56+3.59;-0.99 -14.7 +3.7 0 38+38.03;0 -1 0 3.664 10-16.223] SG=[56;38;10] rref(KG) % Matriz K k1=1.11389585073796 k2=2.1088809214394 k3=29.2252179560513 k4=-1.12284909349361 %% SERVOSISTEMA (Kr) C1=[1 1 1 1]; K=[k1 k2 k3 k4] p=inv(A+(B*K)) kr=[-C1*(p)*B] Kr=1/kr %% OBSERVADOR C=[1 0 0 0;0 0 1 0] Ob=obsv(A,C) %Obtención de matriz de observabilidad por Matlab rank(Ob) %Rango de la matriz de observabilidad %l %(s+4+4j)*(s+4-4j)*(s+16+8j)*(s+16-8j) %s^4 + 40*s^3 + 608*s^2 + 3584*s + 10240 %4_veces_alfa=40,608,3584,10240 p=[40,608,3584,10240] %syms ('I','l1','l2','l3','l4','I5','l6','l7','l8')
  • 37. %L=[l1 l2;l3 l4;l5 l6;l7 l8] %SI=I*eye(4) %pols=A+(L*C) %pols1=SI-pols %pol=det(pols1) L=place(A',C',p)