Manual de Scilab/Xcos/Control en el espacio de estados

De Wikilibros, la colección de libros de texto de contenido libre.
Saltar a: navegación, buscar
← Sistemas en tiempo discreto Control en el espacio de estados Interfaz web para Scilab →
Manual de Scilab/Xcos


Controlabilidad y Observabilidad[editar]

Dado

Donde:


Observabilidad[editar]

Calculo de la matriz observabilidad

oe1=obsv_mat(a,c)
 oe1  =
 
    2.    7.      1.  
  - 4.  - 28.     1.  
    8.    175.    1.

Es de interes saber si el sistema es observable, por lo que puedo calcular el determinante de la matriz oe1 o calcular el rango.

det(oe1)
 ans  =
 
  - 798.  
-->rank(oe1)
 ans  =
 
    3.

El sistema del ejemplo es observable.

Controlabilidad[editar]

Matriz controlabilidad:

-->ce1=cont_mat(A,B)
 ce1  =
 
    3.8  - 0.6  - 47.8  
    1.   - 7.     49.   
    0.     7.   - 42.  
-->dce1=det(ce1) 
 dce1  =
 
  - 546. 
-->rank(ce1)
 ans  =
 
    3.

También como en el caso de la observabilidad cálculo el determinante y si es menor a cero o si el rango de la matriz es igual al rango de la matriz A el sistema es controlable.

Asignación de polos de un sistema[editar]

En scilab se utiliza el comando "ppol" que esta programado por P.H. Petkov. Se puede consultar la ayuda de Scilab para una referencia rápida de como se utiliza el comando tipeando "help ppol".

Ejemplo[editar]

Dado:

Lo polos deseados del sistema estarán en:

A=[0 0;1 0];B=[1,52;0];C=[0 1];
polos=[-1.5+%i*1.5; -1.5-%i*1.5];
-->k=ppol(A,B,polos)
 k  =
 
    1.9736842    2.9605263

Verificación de la asignación de polos[editar]

Para la verificación de la asignación de polos comprobamos los autovalores de lazo cerrado del sistema. Para esto utilizamos el comando "spec".

-->spec(A-B*k)
 ans  =
 
  - 1.5 + 1.5i  
  - 1.5 - 1.5i

Control Optimo[editar]