TECNICAS DE CONTROL I


TEMA 4

4.2
4.2.1 Pag 104/2 (4.1) Pag 105/3 (Fig4.1)
4.2.2 Pag 107/4 (4.2) (4.3)
4.2.3 Pag 108/5 (4.4) (4.5)(4.6)
4.3 Pag 110/8 (4.7) (4.8) Pag 111/9 (4.9) (4.10) Pag 112/10 (4.11) (4.12) Pag 113(4.13) (4.14)







Descomposicion en fracciones simples ejemplo 3.8


Dada la funcion de transferencia del sistema de tercer orden:





Vamos a descomponerla en fracciones simples:


Vamos a calcular los coeficientes a, b , c , a1, b2:







Cerrar uno o todas las ventanas del Scilab


Para cerrar una determinada ventana en el Scilab utilizamos la funcion xdel()

xdel(h)  h es el numero de ventana o una lista de ventanas

Ejemplo:

xdel(2) // Cerramos la ventana 2
xdel([3 4]) // Cerramos las ventanas 3 y 4


Para borrar todas las ventanas utilizamos el condigo:

xdel(winsid())

Donde la funcion winsid() nos da la lista de ventanas abiertas.


Crear un vector o matriz de unos en Scilab


La funcion ones() en Scilab crea una matriz o vector de ceros.

ones(1,3) // vector con tres unos
ones(2,2) // matriz con de 2x2 de unos
ones(2,2,2) // crea dos matrices con de 2x2 de unos

El resultado seria:

->ones(1,3) // vector con tres unos
 ans  =

    1.    1.    1.


->ones(2,2) // matriz con de 2x2 de unos
 ans  =

    1.    1.
    1.    1.

->ones(2,2,2) // crea dos matrices con de 2x2 de unos
 ans  =

(:,:,1)

    1.    1.
    1.    1.
(:,:,2)

    1.    1.
    1.    1.

Crear un vector o matriz de ceros en Scilab


La funcion zeros() en Scilab crea una matriz o vector de ceros.

zeros(1,3) // vector con tres ceros
zeros(2,2) // matriz con de 2x2 de ceros
zeros(2,2,2) // crea dos matrices con de 2x2 de ceros

El resultado seria:

>zeros(1,3) // vector con tres ceros
 ans  =

    0.    0.    0.

->zeros(2,2) // matriz con de 2x2 de ceros
 ans  =

    0.    0.
    0.    0.

->zeros(2,2,2) // crea dos matrices con de 2x2 de ceros
 ans  =

(:,:,1)

    0.    0.
    0.    0.
(:,:,2)

    0.    0.
    0.    0.

Matriz en Scilab


Vamos a declarar una matriz en Scilab y obtener elemento de cierta fila o columna, una fila determinada, una columna determinada


m=[1 2 3; 4 5 6]
m(1,1)
m(2,1)
m(1,2)
m(1)
m(2)
m(3)
m(4)
m(5)
m(6)
m(:,1) //columna 1
m(1,:) //fila 1
m(:,2:3)//Obtener las dos ultimas columnas

Lo que nos dara como resultado:

->m=[1 2 3; 4 5 6]
 m  =

    1.    2.    3.
    4.    5.    6.

->m(1,1)
 ans  =

    1.

->m(2,1)
 ans  =

    4.

->m(1,2)
 ans  =

    2.

->m(1)
 ans  =

    1.
->m(2)
 ans  =

    4.
->m(3)
 ans  =

    2.
->m(4)
 ans  =

    5.
 ->m(5)
 ans  =

    3.
->m(6)
 ans  =

    6.
->m(:,1) //columna 1
 ans  =

    1.
    4.
->m(1,:) //fila 1
 ans  =

    1.    2.    3.

->m(:,2:3)//Obtener las dos ultimas columnas
 ans  =

    2.    3.
    5.    6.

Vector en Scilab


Vamos a declarar un vector en Scilab y obtener el primer valor del vector.


v=[0 1 1]
v(1)

Lo que nos dara como resultado:

->v=[0 1 1]
 v  =   0.    1.    1.
 ->v(1)
 ans  = 0.

Discretizar funcion transferencia Laplace (a Transformada Z)


Dada la funcion de transferencia de Laplace:



Vamos a discretizar una funcion de transferencia de Laplace utilizando el metodo del retenedor de orden cero, con un periodo T=0.1.


Vamos a descomponer en fracciones simples la funcion de transferencia:


Vamos a calcular la transformada Z a partir de la transformada de Laplace:


Utilizando las equivalencias:


Vamos a calcular la discretizacion:






Discretizar una transformada de Laplace con Scilab (transformada Z)


Dada la funcion de transferencia de Laplace del sistema


Codigo en Scilab para discretizar la funcion de transferencia de Laplace y obtener la transformada Z:


s=%s; 

s=%s; T=0.1; g=1/((s+1)*(4*s+1));//Transformada Laplace a discretizar

gs=syslin('c',g); //declarar sistema lineal

dg=dscr(gs,T); //discretizar sistema lineal

df=ss2tf(dg)// Convertir espacio estado en transformada Z

Resultado:

clc en Scilab


La funcion clc() en Scilab borra las entradas y salidas de la consola

clc([nblines])

"nblines" borra las lineas por encima de esta posicion de la ventana y pone el cursor en estas coordenadas

cls2dls en Scilab


La funcion cls2dls() en Scilab hace la transformacion bilineal

[sl1]=cls2dls(sl,T [,fp])

"s1" Sistema lineal en espacio estado
"T" periodo
"fp" frecuencia prewarping en hercios

Funcion exponencial en Scilab


La funcion exp() en Scilab calcula el valor exponencial de una matriz, vector o numero tanto real como complejo

valor=exp(n)

"n" Numero, matriz o vector de numeros reales o complejos


Equivalencias transformada Laplace en transformada Z


Equivalencias transformada de Laplace y transformada Z:












Equivalencia transformada Z, señal en el tiempo:





Propiedades Transformada Z







Descomposicion de fracciones simples con Scilab


Dada la funcion de transferencia del sistema de tercer orden:



Codigo para descomponerla en fracciones simples con Scilab:


s=%s; 
g=1/(s*(s+1)*(4*s+1)); 
gs=syslin('c',g); 
dfs=pfss(gs)

Resultado:

dfs  =


       dfs(1)

    1
    -
    s

       dfs(2)

  - 1.3333333
    ---------
    0.25 + s  

       dfs(3)

    0.3333333
    ---------
      1 + s  

Descomposicion en fracciones simples sistema de tercer orden


Dada la funcion de transferencia del sistema de tercer orden:



Vamos a descomponerla en fracciones simples:


Vamos a calcular los coeficientes a, b y c:





pfss en Scilab


La funcion pfss en Scilab descompone en fracciones simples un sistema lineal o una matriz espacio estado

df=pfss(Sl)

"s1" Sistema lineal (funcion transferencia) o espacio estado


ss2tf en Scilab


La funcion ss2tf en Scilab convierte sistema espacio estado en funcion de transferencia

[s1]=ss2tf(h)

"s1" Sistema lineal
"h"  Sistema espacio estado

tf2ss en Scilab


La funcion tf2ss en Scilab convierte funcion de transferencia en sistema espacio estado

sl=tf2ss(h [,tol])

"s1" Sistema lineal
"h"  Matriz racional de funciones de transferencia
"tol"  Es [rtol atol]. rtol es tolerancia evaluando en la observabilidad. atol es la tolerancia absoluta evaluando la observalidad

syslin en Scilab


La funcion syslin en Scilab define un sistema lineal.

[sl]=syslin(dom,A,B,C [,D [,x0] ])

[sl]=syslin(dom,N,D)

[sl]=syslin(dom,H)

"dom"  es 'c' o 'd'.  (continuo o discreto)
"A, B, C, D"  Matrices espacio estado
"x0" Vector
"N, D" polinomios, numerador y denominado
"H" matriz espacio estado



Respuesta escalon sistema segundo grado



Respuesta a un escalon de un sistema segundo grado, cuando el factor de amortiguamiento es uno esta criticamente amortiguado y cuando es mayor que uno sobreamortiguado


Respuesta a un escalon de un sistema segundo grado, cuando el factor de amortiguamiento es uno esta criticamente amortiguado y cuando es menor que uno subamortiguado

Salida proceso adaptativo predictivo con retardo y ruido.

Transformacion de la salida del proceso adaptativo predictivo con retardo y ruido en funcion salida, entrada, ruido previsible y ruido aleatorio.

Realizamos la sustitucion:
Con lo que la salida en el instante k nos quedaria:

Salida para un instante anterior k-1:


Realizamos las sustituciones

Con lo que la salida para k-1 nos quedaria:




Realizaremos esto .... hasta k-r


Realizamos la sustitucion:
Con lo que nos quedaria la salida del control predictivo adaptativo:


Sustituimos todo en la primera ecuacion y nos quedaria: