Sie sind auf Seite 1von 13

Práctica 2

Introducción a Scilab II:


Manejo y manipulación de Modelos
de sistemas lineales

Introducción y objetivos
Un sistema fı́sico puede caracterizarse dinámicamente a través de las ecuaciones di-
ferenciales que describen las leyes fı́sicas que rigen el comportamiento de dicho sistema.
Estas ecuaciones constituyen un modelo matemático que describen con precisión o, al
menos, bastante bien a los sistemas fı́sicos. Estos modelos nos permiten experimentar de
una forma segura y a un muy bajo coste utilizando herramienta de simulación, para ası́
estudiar su comportamiento antes de su construcción. El toolbox CACSD (Computer Ai-
ded Control Systems Design) de Scilab proporciona un enorme conjunto de funciones que
van desde las funciones básicas para introducir modelos de sistemas lineales invariantes en
el tiempo (SLIT’s) hasta herramientas poderosas para el análisis y diseño de sistemas de
control tanto de una entrada - una salida (SISO) o de múltiples entradas y múltiples sali-
das (MIMO). Esta práctica tiene como objetivo principal de dar una introducción al uso
de algunas funciones de Scilab orientadas al manejo de modelos matemáticos de sistemas
lineales invariantes en el tiempo SISO, en función de transferencia.

Teorı́a
Modelo de un sistema
Un modelo matemático de un sistema dinámico se define como un conjunto de ecua-
ciones que representan la dinámica del sistema con precisión o, al menos, bastante bien.
Téngase presente que un modelo matemático no es único para un sistema determinado. Un
sistema puede representarse de muchas formas diferentes, por lo que puede tener muchos
modelos matemáticos, dependiendo de cada perspectiva.
Los modelos matemáticos pueden adoptar muchas formas distintas. Dependiendo del
sistema del que se trate y de las circunstancias especı́ficas, un modelo matemático puede
ser más conveniente que otros.

3
4 PRÁCTICA 2. INTRODUCCIÓN A SCILAB II

Los sistemas pueden clasificarse en sistemas lineales y no lineales; un sistema se de-


nomina lineal si se aplica el principio de superposición. Este principio establece que la
respuesta producida por la aplicación simultánea de dos funciones de entradas diferentes
es la suma de las dos respuestas individuales. Por tanto, para el sistema lineal, la respuesta
a varias entradas se calcula tratando una entrada cada vez y sumando los resultados. Este
principio permite desarrollar soluciones complicadas para la ecuación diferencial lineal
a partir de soluciones simples. Ahora, estos sistemas a su vez pueden ser invariantes y
variantes en el tiempo. La diferencia radicas en que los primeros están formados por com-
ponentes de parámetros concentrados lineales que no varı́an con el tiempo y pueden ser
descritos mediante ecuaciones diferenciales lineales invariantes en el tiempo de coeficientes
constantes, y los segundos no.

Función de transferencia
La función de transferencia de un sistema descrito mediante una ecuación diferencial
lineal e invariante en el tiempo se define como el cociente entre la transformada de Laplace
de la salida (función de respuesta) y la transformada de Laplace de la entrada (función
de excitación) bajo la suposición de que todas las condiciones iniciales son cero.
Si el sistema tiene una entrada u(t) y una salida y(t) , su representación en el dominio
del tiempo corresponde a una ecuación diferencial lineal con coeficientes constantes como
la siguiente:
(n) (n−1) (m) (m−1)
an y + an−1 y + . . . + a1 ẏ + a0 y = bm u + bm−1 u + . . . + b1 u̇ + b0 u (n ≥ m) (2.1)

donde los coeficientes a0 , a1 ,. . ., an , b0 , b1 ,. . ., bm son constantes, y donde la notación


representa la k-ésima derivada dk y/dtk , para k = 0, 1, 2, . . . , n.
La función de transferencia de este sistema es el cociente de la transformada de Laplace
de la salida y la transformada de Laplace de la entrada cuando todas las condiciones
iniciales son cero, o

L [salida]
Función de transferencia = G(s) =
L [entrada] condiciones iniciales cero
bm sm + bm−1 sm−1 + . . . + b1 s + b0
G(s) =
an sn + an−1 sn−1 + . . . + a1 s + a0

A partir del concepto de función de transferencia, es posible representar la dinámica


de un sistema mediante ecuaciones algebraicas en s. Si la potencia más alta de s en el
denominador de la función de transferencia es igual a n, el sistema se denomina sistema
de orden n-ésimo.
Debido a que el numerador y denominador de la representación en transformada de
Laplace de la función de transferencia son polinomios en potencias de s, existen más de
una forma de representar dicha función, es decir, se pueden escribir de muchas maneras.
Por ejemplo: El sistema dado por la ecuación diferencial 2ÿ + 6ẏ + 4y = u̇ + 3u tiene la
representación en función de transferencia siguiente
s+3
G(s) = (2.2)
2s2 + 6s + 4
5

Ahora, todo polinomio se puede factorizar en binomios de primer orden quedando la


función en forma factorizada. Esta forma se prefiere cuando se quieren evidenciar los
polos y los ceros de la función de transferencia, ası́ la función de transferencia 2.2 se
puede escribir en su forma factorizada como sigue

s+3
G(s) = (2.3)
(2s + 4)(s + 1)

y procurando que todos los factores de primer orden tengan coeficiente 1 en la variable s,
se obtiene la forma estándar:

0, 5(s + 3)
G(s) = (2.4)
(s + 2)(s + 1)

De la forma 2.4 resultan evidentes: los polos: −2 y −1, los ceros: −3 la ganancia del
sistema: 0, 5

Nota: Aunque todo polinomio se puede factorizar como producto de binomios de


primer orden, cuando el polinomio tiene raı́ces complejas esta factorización con-
duce al uso de números complejos, por esta razón se prefiere dejar sin factorizar
los factores cuadráticos que tienen raı́ces complejas conjugadas.

Otra forma de representación se consigue utilizando la técnica de expansión en fraccio-


nes parciales. Esta técnico permite expandir la función de transferencia en una suma de
fracciones, cada una con denominador de primer orden (llamadas fracciones simples o
parciales) una por cada polo. Para el ejemplo anterior, la forma de fracciones parciales
queda
1 0, 5
G(s) = − (2.5)
(s + 1) (s + 2)
La forma de fracciones parciales es de interés en el problema de diseño, ya que permite una
implementación de la función de transferencia como la conexión en paralelo de subsistemas
sencillos de primer orden.

Herramientas de Scilab para el manejo y conversión


de funciones de transferencia
El programa Scilab proporciona un enorme conjunto de funciones que van desde las
funciones básicas para introducir modelos de sistemas lineales invariantes en el tiempo
(SLIT’s) hasta herramientas poderosas para el análisis y diseño de sistemas de control
tanto de una entrada - una salida (SISO) o de múltiples entradas y múltiples salidas
(MIMO). Entre ese conjunto tenemos una serie de funciones que nos permiten manejar y
manipular funciones de trasferencia en lı́nea de comandos. En esta práctica aprenderemos
a utilizar las funciones más importantes que nos permitan realizar nuestro estudio en el
laboratorio de control.
6 PRÁCTICA 2. INTRODUCCIÓN A SCILAB II

Comando syslin para definir funciones de transferencia


La primera función que aprenderemos es la función “syslin”, que nos permite definir
funciones de transferencia. Es el comando básico para introducir modelos de sistemas
lineales tanto en función de transferencia como en variables de estado, para sistemas
SISO y para sistemas MIMO.
La sintaxis del comando syslin es G=syslin(dominio,num,den). Este coman-
do define la función de transferencia G con el numerador especificado por el polinomio
num y el denominador especificados por el polinomio den. El dominio puede ser ’c’ para
un sistema continuo (analógico) o ’d’ para un sistema discret (digital).

Ejemplo: Se puede introducir la función de transferencia dada por la ecuación 2.2 de


tres maneras:

1. Definiendo los polinomios del numerador y denominador por sus coeficientes

--> num=poly([3 1],'s','c');//Define num a partir de sus coeficientes


--> den=poly([4 6 2],'s','c');//Define den a partir de sus coeficientes
--> G=syslin('c',num,den) //Define la F.T. continua
G =
3 + s
-----------
2
4 + 6s + 2s

2. Definiendo primero la variable de Laplace y luego escribiendo la expresión algebraica 2.2

--> s=poly(0,'s'); //Define la variable de Laplace


--> G=(s+3)/(2*sˆ2+6*s+4) //Define la F.T.
G =
3 + s
-----------
2
4 + 6s + 2s

3. Utilizando la forma factorizada dada por la ecuación 2.4 se procede como sigue:

--> K=0.5; //Ganancia del sistema


--> ceros=poly([-3],'s'); //num definido por su vector de raı́ces
--> polos=poly([-2 -1],'s');//den definido por su vector de raı́ces
--> G=syslin('c',K*ceros,polos) //Define la F.T.
G =
1.5 + 0.5s
----------
2
2 + 3s + s
7

Comando trfmod y la forma factorizada de una función de trans-


ferencia
El comando trfmod permite visualizar en una ventana los factores irreducibles del
numerador y denominador de una función de transferencia de un sistema SISO.

Ejemplo: Para visualizar la misma función de transferencia dada del ejemplo anterior
una vez definida por cualquiera de los tres métodos descritos, se ejecuta el comando trf-
mod como sigue y Scilab despliega la ventana mostrada en la figura 2.1, en la cual se
pueden ver claramente: la ganancia y los factores del numerador y del denominador, los
cuales coinciden con la forma factorizada 2.4

trfmod(G,'p'); //el parámetro 'p' es opcional

Figura 2.1: Ventana desplegada por el comando trfmod(G,’p’).

Comando pfss y la forma de fracciones parciales


El comando pfss(G) realiza el cálculo de la expansión en fracciones parciales de la función
de transferencia especificada G.

Ejemplo: Para obtener la representación de la función de transferencia 2.2 en su forma de


fracciones parciales se puede proceder como sigue:

--> num=poly([3 1],'s','c');// Define numerador


--> den=poly([4 6 2],'s','c');// define denominador
--> G=syslin('c',num,den); //Define F.T.
--> frac=pfss(G) //Calcula vector de fracciones parciales
frac =
frac(1)
1
-----
1 + s
frac(2)
- 0.5
-----
2 + s
8 PRÁCTICA 2. INTRODUCCIÓN A SCILAB II

Es decir, la representación de la expresión 2.2 en fracciones parciales es la esperada 2.5.


Obsérvese que la suma de estas fracciones parciales produce la función de transferencia original
como es de esperarse:

--> frac(1)+frac(2) //Recalcula la función original.


ans =
1.5 + 0.5s
----------
2
2 + 3s + s

Los comandos presentados arriba se pueden complementar con los comandos vistos para
manejar polinomios explicados en la práctica No. 1. A continuación se da un ejemplo.

Ejemplo: En ocasiones la función de transferencia no está escrita en ninguna de las tres formas
mencionadas arriba, sino en una combinación de ellas, por ejemplo:

s2 + 2
G(s) = (2.6)
s(s2 + 3s + 2)(s + 0, 5)

En este caso se puede introducir la función de transferencia de diferentes maneras:

1. Usando multiplicación de polinomios mediante el comando conv.

--> num=poly([2 0 1],'s','c'); //Numerador


--> d1=[0 1]; //coeficientes del factor s
--> d2=[2 3 1]; //coeficientes del factor sˆ2+3s+2
--> d3=[0.5 1]; //coeficientes del factor s+0.5
--> den=conv(d1,d2);
--> den=conv(den,d3); //Obtiene coeficientes del denominador
--> den=poly(den,'s','c'); //convierte coeficientes a polinomio
--> G=syslin('c',num,den) //define F.T.
G =
2
2 + s
-------------------
2 3 4
s + 3.5s + 3.5s + s
--> polfact(den) //obtiene los factores irreducibles sin usar números complejos
ans =
1 2 + s 1 + s 0.5 + s s

2. Factorizando en tres función de transferencia y luego multiplicándolas.

--> num1=poly([2 0 1],'s','c');


--> den1= poly([2 3 1],'s','c');
--> G1=syslin('c',num1,den1)
G1 =
2
2 + s
---------
9

2
2 + 3s + s
--> num2=poly([1],'s','c');
--> den2= poly([0 1],'s','c');
--> G2=syslin('c',num2,den2)
G2 =
1
-
s
--> num3=poly([1],'s','c');
--> den3= poly([0.5 1],'s','c');
--> G3=syslin('c',num3,den3)
G3 =
1
-------
0.5 + s
--> G=G1*G2*G3 //Multiplica los tres factores
G =
2
2 + s
-------------------
2 3 4
s + 3.5s + 3.5s + s

3. Definiendo la variable de Laplace ’s’ y escribiendo la expresión algebraica de la función


de transferencia

--> s=poly([0],'s'); //los corchetes del cero son opcionales


--> G=(sˆ2+2)/s/(sˆ2+3*s+2)/(s+0.5)
G =
2
2 + s
-------------------
2 3 4
s + 3.5s + 3.5s + s

Diagramas de bloques
Una de las virtudes de la representación en función de transferencia, es que permite escribir
la salida Y (s) del sistema como una simple multiplicación de la entrada U (s) por G(s), es decir:

Y (s) = G(s)U (s) (2.7)

En otras palabras, la función de transferencia G(s) viene siendo la ganancia aplicada a la


entrada U (s) para obtener la salida Y (s).
El razonamiento anterior sustentado en la expresión 2.7 permite obtener la regla más simple
de la representación en diagrama de bloques del sistema dado por la ecuación diferencial 2.1 de
acuerdo a la figura 2.2 Un diagrama de bloques de un sistema es una representación gráfica de
10 PRÁCTICA 2. INTRODUCCIÓN A SCILAB II

Figura 2.2: Diagrama de Bloques del sistema dado por 2.1.

las funciones que lleva a cabo cada componente y el flujo de señales. Tales diagramas muestran
las relaciones existentes entre los diversos componentes. A diferencia de una representación
matemática puramente abstracta, un diagrama de bloques tiene la ventaja de indicar de forma
más realista el flujo de las señales del sistema real.

Caracterı́sticas de un diagrama de bloques


1. Es una representación gráfica del flujo de señales y de la función realizada por cada
componente de un sistema.

2. Refleja una caracterı́stica unilateral (salida/entrada).

3. Dado un diagrama de bloques, el sistema al cual representa no es único, ya que contiene


información respecto a su comportamiento dinámico y no sobre su constitución interna.

4. El diagrama de bloques de un sistema dado no es único (depende de la definición de


variables internas); sin embargo, la función de transferencia resultante sı́ es única.

Álgebra de bloques
El conjunto de reglas que permiten simplificar la estructura de un diagrama de bloques se
denomina álgebra de bloques; debe indicarse que, al aplicar dichas reglas, el diagrama resultante
es más simple, pero los nuevos bloques individuales son más complejos. Para aplicar adecuada-
mente álgebra de bloques, es necesario verificar que el producto de funciones de transferencia en
sentido directo o en un lazo se mantenga constante tras la operación efectuada.
Para reducir un diagrama de bloques con ayuda de Scilab, se deben identificar tres conexiones
básicas en el diagrama. Estas conexiones y las reglas de simplificación algebraica correspondien-
tes. A continuación se listan algunas de las reglas del álgebra de bloques.

1. Cambio de puntos de suma

2. Movimiento del punto de suma


11

3. Bloques en paralelo

4. Bloques en serie o en cascada

5. Movimiento del bloque fuera del punto de suma

6. Movimiento del bloque a la derecha del punto de suma

7. Configuración tı́pica de un sistema con retroalimentación negativa y su función de trans-


ferencia de lazo cerrado

Ejemplo: Reducir el diagrama de bloques de la figura 2.3 Para las siguientes funciones de
transferencia:
1 s
G1 (s) = 1 + , G2 (s) = 2 , G3 (s) = 2
s s −s+1
12 PRÁCTICA 2. INTRODUCCIÓN A SCILAB II

Figura 2.3: Ejemplo de diagrama de bloques con pocas conexiones.

Solución Las conexiones del diagrama se pueden expresar en términos de las conexiones básicas
mostradas anteriormente, como sigue:

Gtotal = Lazo de [Cascada de G1 con (lazo de G2 con G3 )] con 1

En forma algebraica, y procediendo de adentro hacia afuera de los paréntesis anidados, el equi-
valente en un solo bloque entonces será
  
G2
Gtotal = Lazo de Cascada de G1 con con 1
1 + G2 G3

es decir  
G1 G2
Gtotal = Lazo de con 1
1 + G2 G3
finalmente  
G1 G2
1+G2 G3
Gtotal =  
G1 G2
1+ 1+G2 G3

Simplificando se obtiene
G1 G2
Gtotal =
1 + G 1 G2 + G2 G3
El código en Scilab queda como sigue:

--> n1=poly([1 1],'s','c');


--> d1=poly([0 1],'s','c');
--> G1=syslin('c',n1,d1);
--> n2=poly([0 1],'s','c');
--> d2=poly([1 -1 1],'s','c');
--> G2=syslin('c',n2,d2);
--> G3=2;
--> aux=G1*G2/(1+G2*G3); // Evalúa la expresión (5.4)
--> Gtot=aux/(1+aux) //Obtiene la expresión equivalente
Gtot =
1 + s
---------
2
2 + 2s + s
13

El operador feedback
En Scilab se puede realizar la conexión de retroalimentación (feedback) negativa mostrada
en la séptima regla del álgebra de bloques presentada anteriormente, mediante el operador /.
(diagonal punto).
Es decir, Si G, H son sistemas lineales ya sea MIMO o SISO, dados en términos de funciones
de transferencia o por su modelo de variables de estado, entonces:
G
G/.H equivale a la operación 1+GH en el caso SISO, o a la operación G(1 + GH)−1 en el
caso MIMO.

Ejemplo: Para ilustrar su uso en el caso SISO se muestra la solución del problema anterior
mediante este operador:

--> n1=poly([1 1],'s','c');


--> d1=poly([0 1],'s','c');
--> G1=syslin('c',n1,d1);
--> n2=poly([0 1],'s','c');
--> d2=poly([1 -1 1],'s','c');
--> G2=syslin('c',n2,d2);
--> G3=2;
--> aux=G1*(G2/.G3); // Cascada de G1 con la retroalim. de G2 con G3
--> Gtot=aux/. 1 //Retroalimentación de aux con 1.
Gtot =
1 + s
---------
2
2 + 2s + s

Actividades
1. Probar todos los ejemplos vistos en la práctica.

2. Obtenga el modelo en función de transferencia del circuito mostrado en la figura 2.4,


tomando como voltaje de salida la diferencia de potencial en el condensador (R = 10 Ω,
C = 500 µF y L = 8 mH). Luego represéntala en la forma factorizada y en fracciones
parciales utilizando las herramientas de Scilab. Para finalizar obtenga los polos y los ceros
de la misma función.

Figura 2.4: Circuito RLC serie.

3. Simplifique los diagramas de bloques que se muestran en las figuras 2.5 y 2.5, conociendo
1 1
que: G1 = s+1 , G2 = (s+3)(s+2) 1
, G3 = 1s , G4 = s+2 1
, H1 = s(s+5) s+1
, H2 = (s+4)(s+6)(s+20)
14 PRÁCTICA 2. INTRODUCCIÓN A SCILAB II

1
y H3 = s+10 . Después, obtenga la función de transferencia en lazo cerrado C(s)/R(s).
Repita el procedimiento utilizando las herramientas de Scilab

Figura 2.5: Diagrama # 1.

Figura 2.6: Diagrama # 2.


Referencias

[1] Rincón, J. (2015) Apuntes de Laboratorio de Control Analógico I (Scilab). [en lı́nea]:
Página de José Juan Rincón Pasaye. [fecha de consulta: 12 Abril 2016] Disponible en:
https://lc.fie.umich.mx/˜jrincon/apuntes.html

[2] Mora, H. (2002) Introducción a SCILAB. [en lı́nea]: Página de Anto-


nio E. Teruel Aguilar. [fecha de consulta: 12 Abril 2016] Disponible en:
http://dmi.uib.es/˜antonioe/datos/manual.pdf

15

Das könnte Ihnen auch gefallen