Matlab_Capitulo2 (SISTEMAS DE CONTROL)

Embed Size (px)

Citation preview

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    1/30

    DEPARTAMENTO DE ELCTRICA Y ELECTRNICA

    CARRERA DE ING. EN ELECTRNICA E INSTRUMENTACIN

    SISTEMAS DE CONTROL

    Unidad I

    TAREA

    TEMA:

    Ejercicios de MATLAB del Captulo II del Libro Sistemas de

    Control para la Ingeniera de Norman Nise.

    Hrs. de la asignatura

    4 Hrs

    Catedrtico:

    Ing. Franklin Silva

    Estudiantes:

    Christian Chasi

    Alex Tipantua

    Fecha de entrega: 26 de noviembre del 2015

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    2/30

    Sistemas de Control Pgina 2

    EJERCICIOS DE MATLAB DEL CAPTULO II DEL LIBRO SISTEMAS DE CONTROL

    PARA LA INGENIERA DE NORMAN NISE.

    OBJETIVOS:

    General:

    Realizar los ejercicios propuestos mediante la herramienta de MATLAB del Captulo II del Libro

    Sistemas de Control para la Ingeniera de Norman Nise.

    Especficos:

    1. Aplicar los fundamentos matemticos adquiridos para la resolucin de los ejercicios en la

    herramienta de MATLAB.

    2. Manipular cada una de las opciones que nos proporciona la herramienta del Matlab para la

    resolucin de nuestros problemas.

    3. Realizar un programa general para la resolucin de ejercicios con funcin de transferencia.

    RESUMEN:

    El presente informe contiene una gran cantidad de ejercicios que se da a solucionar sobre

    funciones de transferencia, para la obtencin de las races de un sistema, representacin de

    polinomios y conversin a un sistema LTI, mediante la utilizacin de la herramienta MATLAB con

    los distintos comandos y funciones que proporciona esta herramienta.

    ABSTRACT:

    This report contains a lot of exercises given to resolve on transfer functions for obtaining the roots

    of a system, representation of polynomials and conversion to an LTI system using the MATLAB

    tool with various commands and functions provided by this tool.

    FUNDAMENTO TERICO

    MATLAB

    Lenguaje de alto nivel y un entorno interactivo utilizado por millones de ingenieros y cientficos de

    todo el mundo. Se le permite explorar y visualizar las ideas y colaborar en todas las disciplinas,

    incluyendo la seal y el procesamiento de imgenes, comunicaciones, sistemas de control, y las

    finanzas computacionales.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    3/30

    Sistemas de Control Pgina 3

    Se puede utilizar MATLAB en proyectos tales como el consumo de energa de modelado

    para construir las redes elctricas inteligentes, el desarrollo de algoritmos de control para

    vehculos hipersnicos, analizando los datos del tiempo para visualizar la trayectoria y la

    intensidad de los huracanes, y corriendo a millones de simulaciones para determinar la

    dosis ptima de antibiticos.

    La utilizacin de laboratorios virtuales nos ayuda en la comprensin y resolucin de una

    innumerable cantidad de problemas que van desde sencillos ejercicios matemticos hasta

    cuestiones aplicables a la vida real; tambin nos son de mucha ayuda al momento de

    comprobar datos y tomar una decisin respecto a una situacin especfica.

    MATLAB es uno de los diversos programas que nos permiten realizar este tipo de

    simulaciones y pruebas, cuenta con una gran cantidad de herramientas y funciones que

    pueden ser utilizadas en diversas aplicaciones.

    POLINOMIOS

    poly(r) = Da los coeficientes del polinomio P cuyas races son el vector r.

    roots(c) = Encuentra las races del polinomio c.

    conv(a,b) = Realiza la multiplicacin entre dos polinomios.

    det(A) = Calcula determinante de A

    TRANSFORMADA DE LAPLACE

    Es un mtodo operativo que resuelve ecuaciones diferenciales convirtindolas en ecuaciones

    algebraicas. Permite predecir el comportamiento de un sistema sin necesidad de resolver las

    ecuaciones diferenciales del sistema.

    laplace(f(t)) =Calcula la Transformada de Laplace de una funcin.

    [r,p,k] = residue(num,den) =Donde num es un vector compuesto por los coeficientes del

    polinomio del denominador y den es un vector compuesto por los coeficientes del polinomio

    del numerador. [1]

    ilaplace(f(t)) =Calcula la Transformada de Laplace de una funcin.

    zpk(numg,deng,k) =Escribe la funcin de transferencia en forma polinomial.

    tf(numf,denf) =Con este comando generamos la funcin de transferencia.

    dentf = [v1, v2, v3,.. vn] =Forma el denominador en forma polinmica

    [numfzp,denfzp] = tf2zp(numftf,denftf) =Convierte a F(s) en la forma factorizada.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    4/30

    Sistemas de Control Pgina 4

    CONROL SYSTEM TOOLBOX

    Es un conjunto de rutinas de MATLAB que ofrecealgoritmos estndar de la

    industriayaplicaciones para el anlisis sistemtico y el diseo de los sistemas de control

    lineal. Puede especificar el sistema como una funcin de transferencia, espacio de estado, cero-

    polo-ganancia o modelo de respuesta en frecuencia.

    Aplicaciones y funciones, como respuesta al escaln y de Bode, permiten visualizar el

    comportamiento del sistema en el dominio de tiempo y frecuencia. Puede ajustar los parmetros

    del compensador sintonizar utilizando ajuste del regulador automtico de PID, la formacin de

    bucle Bode, mtodo del lugar de races, diseo LQR / LQG, y otras tcnicas interactivas y

    automatizadas. Puede validar su diseo mediante la verificacin de tiempo de subida, el exceso, el

    tiempo de establecimiento, la ganancia y mrgenes de fase, y otros requisitos. (SD, MathWorks).

    PROCEDIMIENTO PRCTICO

    Ejercicios:

    Los estudiantes que estn usando MATLAB debe ahora correr el ch2p1 hasta el ch2p8 delApndice B. ste es su primer ejercicio MATLB. Aprendern a usar MATLAB para:

    1) Representar polinomios.2) Hallar races de polinomios.3) Multiplicar polinomio.4) Encontrar expansiones en fracciones parciales. Por ltimo, el ejercicio 2.3 se resolver

    usando el MATLAB.

    PROGRAMA CH2P1

    Se usarn las cadenas de bits para identificar partes de este tutorial en la salida de sucomputadora. Las cadenas de bits se representan mediante el texto encerrado entre

    apstrofos, tales como ab. Los comentarios se inician con el signo de % y MATLAB losignora. Los nmeros se ingresan sin ninguno otros caracteres. La aritmtica se lleva a cabomediante operadores aritmticos apropiados.

    '(ch2p1)' %Desplegar etiqueta'Como ests?' %Mostrar cadena-3.96 %Mostrar el escalar -3.96-4+7i %Mostrar el nmero complejo -4+7i-5-6j %Mostrar el nmero complejo -5-6i(-4+7i)+(-5-6i) %Suma de dos nmeros complejos%y mostrar la suma.(-4+7i)*(-5-6i) %Multiplicacin de dos nmeros complejos

    http://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.ec&sl=en&u=http://www.mathworks.com/help/control/functionlist.html&usg=ALkJrhjmF4aZlwPC0VXgZenP6-uKZxrqQAhttp://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.ec&sl=en&u=http://www.mathworks.com/help/control/functionlist.html&usg=ALkJrhjmF4aZlwPC0VXgZenP6-uKZxrqQAhttp://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.ec&sl=en&u=http://www.mathworks.com/products/control/apps.html&usg=ALkJrhj-zpeT5svKFSUZhpNySSghRHXWughttp://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.ec&sl=en&u=http://www.mathworks.com/products/control/apps.html&usg=ALkJrhj-zpeT5svKFSUZhpNySSghRHXWughttp://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.ec&sl=en&u=http://www.mathworks.com/help/control/functionlist.html&usg=ALkJrhjmF4aZlwPC0VXgZenP6-uKZxrqQAhttp://translate.googleusercontent.com/translate_c?depth=1&hl=es&prev=search&rurl=translate.google.com.ec&sl=en&u=http://www.mathworks.com/help/control/functionlist.html&usg=ALkJrhjmF4aZlwPC0VXgZenP6-uKZxrqQA
  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    5/30

    Sistemas de Control Pgina 5

    %y mostrar el productoM=5 %Asigna 5 a M y mostrar.N=6 %Asigna 6 a N y mostrar.P=M+N %Asigna M+N a P y mostrar.Pause

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    6/30

    Sistemas de Control Pgina 6

    Figura N.-2

    Respuesta del corrido del programa ch2p1PROGRAMA CH2P2

    Los polinomios en s se pueden representar como vectores rengln que contienen loscoeficientes.De esta manera P1=s3+7s2-3s+23 se puede representar mediante el vector que se muestra acontinuacin con os elementos separados mediante un espacio o coma. Se pueden usar lacadena de bits para identificar cada una de las secciones de este tutorial.

    '(ch2p2)' %Desplegar etiquetaP1=[1 7 -3 23] %Almacenar polinomio s^3+7s^2-3s+

    %23 como P1 y mostrar.

    Figura N.-3

    Respuesta del corrido del programa ch2p2

    PROGRAMA CH2P3

    Ejecutar las declaraciones anteriores hace que MATLAB muestre los resultados. El terminarun comando con un punto y coma suprime la exhibicin de los resultados. Al escribir unaexpresin sin asignacin en el primer miembro y sin punto y coma hace que la expresinsea evaluada y despliegue el resultado.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    7/30

    Sistemas de Control Pgina 7

    '(ch2p3)' %Desplegar etiquetaP2=[3 5 7 8]; %Asigna 3s^3+5s^2+7s+8 a P2

    %sin despliegue.3*5 %Evaluar 3*5 y desplegar el resultado.

    Figura N.-4

    Respuesta del corrido del programa ch2p3

    PROGRAMA CH2P4

    Una funcin F(s) en forma factorizada se puede representar en forma polinomial. De estemodo P3=(s+2)(s+5)(s+6) se puede transformar en un polinomio usando el comando poly(V), done V es un vector rengln que contiene las races del polinomio y poly (V) forma loscoeficientes del polinomio.

    '(ch2p4)' %Desplegar etiquetaP3=poly([-2 -5 -6]) %Asigna 3s^3+5s^2+7s+8 a P2

    %sin despliegue.

    3*5 %Evaluar 3*5 y desplegar el resultado

    Figura N.-5

    Respuesta del corrido del programa ch2p4

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    8/30

    Sistemas de Control Pgina 8

    PROGRAMA CH2P5

    Se puede determinar las races mediante el comando roots (V). Las races se regresan comouna vector columna. Por ejemplo, encuentre las races de 5s4+7s3+9s2-3s+2=0.

    '(ch2p5)' %Desplegar etiquetaP4=[5 7 9 -3 2] %Forma 5s^4+7s^3+9s^2-3s+2 y

    despliegarootsP4= roots(P4) %sin despliegue.

    %Determinar las raices

    5s^4+7s^3+9s^2-3s+2,%Asigna a rootsP4, y despliega

    pause

    Figura N.-6

    Respuesta del corrido del programa ch2p5

    PROGRAMA CH2P6

    Dos polinomios se pueden multiplicar entre si al usar el comando conv(a,b) (lo que significaconvolucin). De esta manera, P5=(s3+7s2+10s+9)(s4-3s3+6s2+2s+1) se genera como sigue:

    '(ch2p6)' %Desplegar etiquetaP5=conv([1 7 10 9],[1 -3 6 2 1]) %Forma (s^3+7s^2+10s+9)(s^4-

    3s^3+6s^2+2s+1), asignar a P5 y despliega.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    9/30

    Sistemas de Control Pgina 9

    Figura N.-7

    Respuesta del corrido del programa ch2p6

    PROGRAMA CH2P7

    La expansin en fracciones parciales para F(s)= b(s)/a(s) se puede encontrar usando elcomando [K, p, k]= residue (b, a) (K= residuo; p= races del denominador, k= coeficientedirecto, lo cual se encuentra mediante la divisin de los polinomios antes de realizar laexpansin en fracciones parciales). Como un ejemplo se expandeF(s)=(7s2+9s+12)/[s(s+7)(s2+10s+100)].

    '(ch2p7)' %Desplegar etiquetanumf=[7 9 12]; %Definir el numerador de

    P(s)denf=conv(poly([0 -7]),[1 10 100]); %Definir el denominador

    de P(s)[K,p,k]=residue(numf, denf) %Encontrar los residuos yasignarlos

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    10/30

    Sistemas de Control Pgina 10

    Figura N.-8

    Respuesta del corrido del programa ch2p6

    PROGRAMA CH2P8(Ejemplo 2.3)Realicemos el ejemplo 2.3 del libro mediante MATLAB.

    '(ch2p8) Example 2.3' %Desplegar etiquetanumy=32; %Definir el numeradordeny=poly([0 -4 -8]); %Definir el denominador[r,p,k]=residue(numy, deny) %Calcular los residuos, polos y

    %el cociente directo.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    11/30

    Sistemas de Control Pgina 11

    Figura N.-9

    Respuesta del corrido del programa ch2p8

    Los estudiantes que trabajen los ejercicios en MATLAB, y deseen explorar las rutinasde matemticas simblicas (Symbolic Math Toolbox del MATLAB), deben correr elch2sp1 y el ch2sp2 del Apndice E. Aprendern a construir objetos simblicos y luegohallar las transformadas de Laplace y transformadas inversas de Laplace defunciones en la frecuencia y en el tiempo, respectivamente. Los ejemplos en el Caso 2y Caso 3 de esta seccin se resolvern usando las rutinas de matemticas simblicaSymbolic Math Toolbox

    PROGRAMA CH2SP1

    Modelado en el dominio de la frecuencia

    ch2sp1 El poder de clculo de MATLAB se ve enriquecido ampliamente al usar las Rutinas deMatemticas Simblicas. En este ejemplo se demuestra su poder mediante el clculo detransformadas inversas de F(s). El inicio de cualquier clculo simblico requiere definir los objetossimblicos. Por ejemplo, la variable de transformada de Laplace, s, o la variable de tiempo, t, sedeben definir como objetos simblicos. La definicin se realiza mediante el uso del comando syms.De esta manera syms s define s como un objeto simblico; syms t define t como un objetosimblico: syms s t define a s y t ambas como objetos simblicos. Solamente se necesitan definir los

    objetos que entran al programa. Las variables producidas por el programa no necesitan definirse.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    12/30

    Sistemas de Control Pgina 12

    De este modo, si se est determinando transformadas inversas de Laplace, solamente se necesitadefinir s como objeto simblico, puesto que t resulta del clculo. Una vez que se define el objeto, sepuede escribir F como una funcin de s como se hace normalmente a mano.

    No se tienen que usar vectores para representar el numerador y el denominador. Las

    transformadas de Laplace de funciones del tiempo tambin se pueden imprimir en MATLABCommand Window como normalmente se escriben. Esta forma se denomina impresin bonita.El comando es pretty (F), donde F es la funcin que se quiere imprimir en bonito. El siguientecdigo, usted puede ver la diferencia entre impresin normal e impresin bonita si usted corre elcdigo sin los puntos y coma en los pasos donde las funciones, F o f, se definen. Una vez que F sedefine como F(s), se puede determinar la transformada inversa de Laplace al usar el comandoLaplace (F). En el siguiente ejemplo se determinan las transformadas inversas de Laplace de lasfunciones de frecuencia en los ejemplos usados para los casos 2 y 3 en la seccin 2.2 del libro

    Caso 2:

    Caso 3:

    ()

    * +

    '(chsp1)'; % Desplegar etiqueta

    syms s %Construir el objeto simbolico para la variable de laplace s

    'Transfomada inversa de Laplace';F=2/[(s+1)*(s+2)^2]; % Definir F(s) para el caso 2 del ejemplo

    'F(s) from Caso 2'; %Desplegar etiquetapretty (F) %Impresion en bonio de F(s)f=ilaplace(F); %Determinar la trasfomada inversa de Laplace'f(t) for Caso 2'; %Desplegar etiqueta

    pretty (f) %Impresion en bonito de f(t) para el caso 2F=3/[s*(s^2+2*s+5)]; %Definir F(s) para el caso 3 ejemplo.

    'f(t) for Caso 3'; %Desplegar etiqueta

    pretty (f) % Impresion en bonito de f(t) para el caso 3pause

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    13/30

    Sistemas de Control Pgina 13

    Figura N.-10

    Respuesta del corrido del programa ch2sp1

    PROGRAMA CH2SP2

    ch2sp2En este ejemplo se determina la transformada de Laplace de funciones del tiempo usandoel comando laplace(f), donde f es una funcin del tiempo, f(t). Como un ejemplo se usan lasfunciones del tiempo que resultan de los casos 2 y 3 en la seccin 2.2 en el texto y trabajamos eninverso para obtener sus transformadas de Laplace. Veremos que el comando Laplace(f) da F(s) en

    fracciones parciales. Adems de la impresin bonita estudiada en el ejemplo anterior, las Rutinasde Matemticas Simblica contienen otros comandos que cambian la apariencia de los resultadosdesplegados para legibilidad y forma. Algunos de los comandos son collect(F), rene los trminoscon coeficientes comunes de F; expand (F)-expande los productos de factores; factor(F) factoresde F; simple(F)- determina la forma ms sencilla de F con el menor nmero de trminos; simplify(F) simplifica F; vpa (expresssion, palces) quiere decir precisin aritmtica variable; estecomando convierte trminos simblicos fraccionarios en trminos decimales con un nmeroespecfico de decimales. Por ejemplo, la fraccin simblica 3/16 se convertir en 0.1875 si elargumento places fuera 4.

    En el siguiente ejemplo se determina la trasformada de Laplace de una funcin del tiempo. Elresultado se despliega como fracciones parciales. Para combinar las fracciones parciales se usa elcomando simplify(F), donde F es la transformada de Laplace de f(t) determinada a partir delaplace(f). Por ltimo se usa F=vpa(F,3) para convertir las fracciones simblicas a decimal en elresultado desplegado.

    '(ch2sp2)'; %Desplegar etiqueta

    syms t %Construir objeto simbolico para la variable de tiempo

    'Transformada de Laplace';'f(t) from Case 2' ; %Desplegar etiqueta

    f=2*exp(-t)-2*t*exp(-2*t)-2*exp(-2*t); %Definir f(t) para el Caso 2 del ejemplopretty(f) %Imprimir en bonito f(t) para Caso 2 del ejemplo'F(s) for Case 2' ; %Desplegar etiqueta

    F=laplace (f);

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    14/30

    Sistemas de Control Pgina 14

    pretty (F) %Imprimir en bonito las fracciones parciales de F(s) para

    Cso 2F=simplify(F) %Combinar las fracciones parciales

    pretty(F) %Imprimir en bonito las fracciones parciales combinadas'f(t) for Caso 3' ; %Desplegar etiqueta

    f=3/5-3/5*exp(-t)*[cos(2*t)+(1/2)*sin(2*t)]; % Dwefinir f(t)pretty(f) %Imprimir en bonito f(t)

    'F(s) para el caso 3-Fracciones simbolicas';%Desplegar etiqueta

    F=laplace(f); %Determinar la transformada de Laplacepretty(F) %Imprimir en bonito las fraccion parciales'F(s) para el caso 3 - Representacion decimal';F=vpa(F,3); %Convertir fracciones numericas simbolicas a presentacion

    decimal de 3 cifras para F(s)pretty(F) %Imprimir en bonito las fracciones pariales combinadaspause

    Figura N.-11

    Respuesta del corrido del programa ch2sp2_caso 2

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    15/30

    Sistemas de Control Pgina 15

    Figura N.-12

    Respuesta del corrido del programa ch2sp2_caso3

    Los estudiantes que estn usando Matlab deben correr ahora el ch2p9 al ch2p11 delapndice B. Aprendern a usar Matlab para crear funciones de transferencia con

    numeradores y denominadores en polinomios o en forma factorizada. Tambinaprendern a convertir los polinomios y su forma factorizada

    CH2P9 CREACIN DE FUNCIONES DE TRANSFERENCIA

    Mtodo vectorial, forma polinomial:Una funcin de transferencia se puede expresar comoun polinomio del numerador entre el polinomio del denominador es decir F(s)=N(s)/D(s). Elnumerador N(s), se representa mediante un vector rengln, numf, que contiene los coeficientes deN(s). De manera similar el denominador D(s), se representa mediante un rengln denf, quecontiene los coeficientes de D(s).

    Mtodo vectorial, forma factorizada: Tambin se pueden crear funciones de transferenciaLTI si el numerador y el denominador estn expresados en forma factorizada. Esto se logramediante el uso de vectores rengln que contienen las races del numerador y del denominador. Deeste modo G(s)=K*N(s)/D(s) expresado como G=zpk(numg,deng,K).

    Mtodo de la expresin racional en s, forma polinomial (Se requieren las Rutinas deSistemas de Control 4.2):Este mtodo permite escribir la funcin de transferencia como ustedlo hace normalmente. La declaracin s=tf(s) debe preceder a la funcin de transferencia si se

    desea crear una funcin de transferencia LTI en la forma polinomial equivalente a que se tiene alusar G=tf(numg, deng).

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    16/30

    Sistemas de Control Pgina 16

    Mtodo de la expresin racional en s, forma factorizada (Se requieren las Rutinas deSistemas de Control 4.2):Este mtodo permite escribir la funcin de transferencia como ustedlo hace normalmente. La declaracin s=zpk(s) debe preceder a la funcin de transferencia si se

    desea crear una funcin de transferencia LTI en la forma polinomial equivalente a que se tiene alusar G=zpk(numg, deng,K).

    PROGRAMA CH2P9

    '(ch2p9)' %Desplegar etiqueta'Mtodo vectorial, forma polinomial'%Desplegar etiquetanumf=150*[1 2 7] %Almacenar 150(s^2+2s+7)denf=[1 5 4 0] %Almacenar s(s+1)(s+4)'F(s)' %Desplegar etiquetaF=tf(numf, denf) %Forma F(s) y despliegaclear %Limpia variablespause

    'Mtodo vectorial, forma factorizada'%Desplegar etiquetanumg=[-2 .4] %Almacena (s+2)(s+4)deng=[-7 -8 -9] %Almacena (s+7)(s+8)(s+9)K=20 %Definir K'G(s)' %Desplegar etiquetaG=zpk(numg,deng,K) %Forma G(s) y despliegaclear %Limpia variablespause

    'Mtodo de la expresin racional' %Desplegar etiqueta

    s=tf('s') %Definir 's'P=150*(s^2+2*s+7)/[s*(s^2+5*s+4)] %Forma F(s) como una%funcion de transferencia%LTI forma polinomial

    G=20*(s+2)*(s+4)/[(s+7)*(s+8)*(s+9)] %Forma G(s) como una%funcion de transferencia%LTI forma polinomial

    clear %Limpia variablespause

    'Mtodo de la expresin racional, forma factorizada'

    %Desplegar etiquetas=zpk('s') %Definir 's'P=150*(s^2+2*s+7)/[s*(s^2+5*s+4)] %Forma F(s) como una

    %funcion de transferencia%LTI forma factorizada.

    G=20*(s+2)*(s+4)/[(s+7)*(s+8)*(s+9)] %Forma G(s) como una%funcion de transferencia%LTI forma factorizada.

    pause

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    17/30

    Sistemas de Control Pgina 17

    Figura N.-13

    Respuesta del corrido del programa ch2p9

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    18/30

    Sistemas de Control Pgina 18

    Figura N.-14

    Respuesta del corrido del programa ch2p9

    Figura N.-15

    Respuesta del corrido del programa ch2p9

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    19/30

    Sistemas de Control Pgina 19

    Figura N.-16

    Respuesta del corrido del programa ch2p9

    PROGRAMA CH2P10

    Los vectores del numerador y del denominador de la funcin de transferencia pueden convertir dela forma polinomial que contienen coeficientes y la forma factorizada que contienen races. La

    funcin de MATLAB tf2zp(numtf, dentf) convierte numerador y denominador de coeficientes araces.

    '(ch2p10)' %Desplegar etiqueta'Coefficients for F(s)' %Desplegar etiquetanumftf=[10 40 60] %Forma numerador de F(s)denftf=[1 4 5 7] %Forma denominador de F(s)'Roots for F(s)' %Desplegar etiqueta[numfzp,denfzp]=tf2zp(numftf,denftf)

    %Convierte F(s) a forma%factorizada

    'Roots for G(s)' %Desplegar etiquetanumgzp=[-2 -4 ] %Forma numerador de G(s)

    K=10dengzp=[0-3 -5] %Forma denominador de G(s)'Coefficients for G(s)' %Desplegar etiqueta[numgtf,dengtf]=zp2tf(numgzp',dengzp',K)

    %Convierte G(s) a la forma%polinomial.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    20/30

    Sistemas de Control Pgina 20

    Figura N.-17

    Respuesta del corrido del programa ch2p10

    Figura N.-18

    Respuesta del corrido del programa ch2p10

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    21/30

    Sistemas de Control Pgina 21

    Figura N.-19

    Respuesta del corrido del programa ch2p10

    PROGRAMA CH2P11

    Los modelos LTI tambin se pueden convertir de la forma polinomial la forma factorizada. Loscomandos de MATLAB tf y zpk se usan para la conversin entre modelos LTI. Si una funcin detransferencia Fzpk(s) se expresa como factores en el numerador y el denominador, entoncestf(Fxzpk) convierte a Fzpk(s) a una funcin de trasferencia expresada como coeficientes en elnumerador y en el denominador. De modo similar, si la funcin de transferencia Ftf(s) se expresacomo coeficientes en numerado y en denominador.

    '(ch2p11)' %Desplegar etiqueta'Fzpk(s)' %Desplegar etiquetaFzpk1=zpk([-2 -4],[0 -3 -5],10) %Forma Fzpk1(s)'Ftf1' %Desplegar etiquetaFtf1=tf(Fzpk1) %Convierte Fzpk1(s) a

    %forma de coeficientes'Ftf2' %Desplegar etiquetaFtf2=tf([10 40 60],[1 4 5 7]) %Forma Ftf2(s)'Fzpk2' %Desplegar etiqueta

    Fzpk2=zpk(Ftf2) %Convierte Ftf2(s) a%forma factorizada.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    22/30

    Sistemas de Control Pgina 22

    Figura N.-20

    Respuesta del corrido del programa ch2p11

    Figura N.-21

    Respuesta del corrido del programa ch2p11

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    23/30

    Sistemas de Control Pgina 23

    Los estudiantes que trabajan los ejercicios de Matlab y deseen explorar las rutinas,deben correr ahora el ch2sp3 del apndice E .Aprendern a usar las rutinas dematemtica simblica para simplificar la entrada de funciones de transferenciacomplicadas, as como mejorar su legibilidad. Aprender a introducir una funcin detransferencia simblica y convertirla en un objeto lineal en invariante en el tiempo

    (LTI) como se presenta en el apndice B, ch2p9.

    PROGRAMA CH2SP3Symbolic Math Toolbox de MATLAB se puede utilizar para simplificar la entrada de funciones detransferencia complicado como sigue: Inicialmente, la entrada de la funcin de transferencia, G (s)= numg / Deng, a travs de declaraciones de matemticas simblicas. Entonces, convertir G (s) auna funcin de transferencia de objetos LTI. Esta conversin se realiza en dos pasos. El primerpaso utiliza el comando [numg, deng] = numden (G) para extraer el numerador y el denominadorsimblico de G. El segundo paso convierte, por separado, el numerador y el denominador devectores mediante el sym2poly (S) del sistema, donde S es un polinomio simblico. El ltimo pasoconsiste en la formacin de la funcin de transferencia de objetos LTI utilizando la representacinvectorial de numerador y el denominador de la funcin de transferencia.A modo de ejemplo, formamos el objeto LTI, G (s) = [54 (s + 27) (S ^ 3 + 52s ^ 2 + 37s + 73)] / [s(s ^ 4 + 872s ^ 3 + 437s ^ 2 + 89s + 65) (s ^ 2 + 79s + 36)] haciendo uso de Symbolic MathToolbox de MATLAB para la simplicidad y legibilidad

    '(ch2sp3)' % visualizacion de etiquetasyms s % construya objeto simbolico para

    % variable de frecuencia's'.G=54*(s+27)*(s^3+52*s^2+37*s+73) ...

    /(s*(s^4+872*s^3+437*s^2+89*s+65)*(s^2+79*s+36)); % formar simbolo G(s).

    'Symbolic G(s)' % visualizacion de etiqueta.pretty(G) % impresion del simbolo G(s).[numg,deng]=numden(G); % extraer simbolo del numerador y denominador.numg=sym2poly(numg); % Formar vector para numerador de G(s).deng=sym2poly(deng); % Formar vector para denominador de G(s).'LTI G(s) in Polynomial Form'% visualizacion de etiqueta.Gtf=tf(numg,deng) % Formar y mostrar objetos para G(s) en

    % forma polinomica.'LTI G(s) in Factored Form' % visualizacion de etiqueta.

    Gzpk=zpk(Gtf) % Convertir G(s) en forma factorizada.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    24/30

    Sistemas de Control Pgina 24

    Figura N.-22

    Respuesta del corrido del programa ch2sp3

    PROGRAMA CH2P9

    '(ch2p9)' %Desplegar etiqueta'Mtodo vectorial, forma polinomial'%Desplegar etiquetanumf=150*[1 2 7] %Almacenar 150(s^2+2s+7)denf=[1 5 4 0] %Almacenar s(s+1)(s+4)'F(s)' %Desplegar etiquetaF=tf(numf, denf) %Forma F(s) y despliegaclear %Limpia variablespause

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    25/30

    Sistemas de Control Pgina 25

    Figura N.-23

    Respuesta del corrido del programa ch2sp9

    'Mtodo vectorial, forma factorizada'%Desplegar etiquetanumg=[-2 .4] %Almacena (s+2)(s+4)deng=[-7 -8 -9] %Almacena (s+7)(s+8)(s+9)K=20 %Definir K'G(s)' %Desplegar etiquetaG=zpk(numg,deng,K) %Forma G(s) y despliegaclear %Limpia variablespause

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    26/30

    Sistemas de Control Pgina 26

    Figura N.-24

    Respuesta del corrido del programa ch2sp9

    'Mtodo de la expresin racional' %Desplegar etiquetas=tf('s') %Definir 's'P=150*(s^2+2*s+7)/[s*(s^2+5*s+4)] %Forma F(s) como una

    %funcion de transferencia%LTI forma polinomial

    G=20*(s+2)*(s+4)/[(s+7)*(s+8)*(s+9)] %Forma G(s) como una%funcion de transferencia%LTI forma polinomial

    clear %Limpia variables

    pause

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    27/30

    Sistemas de Control Pgina 27

    Figura N.-25

    Respuesta del corrido del programa ch2sp9

    'Mtodo de la expresin racional, forma factorizada'

    %Desplegar etiquetas=zpk('s') %Definir 's'P=150*(s^2+2*s+7)/[s*(s^2+5*s+4)] %Forma F(s) como una

    %funcion de transferencia%LTI forma factorizada.

    G=20*(s+2)*(s+4)/[(s+7)*(s+8)*(s+9)] %Forma G(s) como una%funcion de transferencia%LTI forma factorizada.

    Pause

    Figura N.-26

    Respuesta del corrido del programa ch2sp9

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    28/30

    Sistemas de Control Pgina 28

    Los estudiantes que estn trabajando ejercicios de MATLAB, y deseen explorar lacapacidad agregada de las rutinas de matemtica simblica del MATLAB, debenahora correr el ch2sp4 del Apndice E, donde est resuelto el ejemplo 2.10.Aprendern a usar las rutinas de matemtica simblica para resolver ecuacionessimultaneas, usando la regla de Cramer, Especficamente, las rutinas de matemtica

    simblica se usaran para despejar la funcin de transferencia de la ecuacin (2.82),utilizando las ecuaciones (2.80)

    PROGRAMA CH2SP4

    ch2sp4 (Ejemplo2.10) La Rutinas de Matemticas Simblicas de MATLAB se pueden usar parasimplificar la solucin de ecuaciones simultneas mediante la regla de Cramer. Un sistema deecuaciones simultaneas se pueden representar medianteAx=B, dondeA es una matriz formadapor los coeficientes de las incgnitas en las ecuaciones simultaneas, xes el vector de incgnitas y Bes un vector que contiene las entradas. La regla de Cramer establece que ,dondeAk es la matriz formada al reemplazar la k-sima columna de la matrizA con el vector de

    entrada B . En el texto, se denomina det(A) como delta. En MATLAB, las matrices se escriben conespacio o coma para separar los elementos para cada uno de los reglones. El siguiente regln seindica con un punto y coma o retorno de carro.

    La matriz completa est encerrada entre un par de parntesis cuadrados. Al aplicar lo anterior a lasolucin del ejemplo 2.10 A=[(R1+L*s)-L*s; -L*s(L*s+R2 +(1/(C*s)))] y Ak=[(R1+L*s) V;-L*s 0].La funcin det(matrix) evala el determinante de una matriz cuadrada que se usa comoargumento. Determinemos la funcin de transferencia, , solicitada en el ejemplo2.10. El comando simple(s), donde s es una funcin simblica, se introduce en la solucin. Elcomando simple(s) simplifica la solucin al reducir la longitud de s. El uso de simple(s) simplificala solucin al reducir la longitud de s. El uso de simple (I2) reduce la solucin al combinarpotencias iguales de la variable de Laplace, s

    Ejemplo 2.10:

    Funcione transferencia y lazos mltiples

    Problema

    Dada la red de la figura 2.6a, encuentre la funcin de transferencia

    Figura N.-27

    Circuito RLC

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    29/30

    Sistemas de Control Pgina 29

    [

    ]

    |

    |

    Figura N.-28

    Respuesta del corrido del programa ch2sp4

    ANLISIS DE RESULTADOS

    Se comprob al ejecutar el cdigo la misma respuesta que al hacerlo de manera manual.

    Al trabajar con el comando poly sacamos los coeficientes de la funcin del vector ingresado.

    La respuesta del comando roots es el valor de las races del polinomio.

  • 7/24/2019 Matlab_Capitulo2 (SISTEMAS DE CONTROL)

    30/30

    CONCLUSIONES

    Gracias a esta prctica en la resolucin de os ejercicios mediante la utilizacin de Matlab se

    logr adoptar ms conocimientos sobre el uso de esta herramienta y cuan necesaria es para

    nuestro modelado de sistemas.

    Matlab es una herramienta muy importante porque nos permite sacar la funcin de

    transferencia de un sistema.

    Cada comando tiene su respectiva funcin a la hora de representar la salida del programa.

    Mediante el comando Laplace (f (t)) podemos encontrar la transformada de Laplace.

    La forma de generan una funcin es mediante el comando de tf.

    No hubo mucha dificultad a momento de realizar cada uno de los ejercicios en la

    herramienta de Matlab se concluy correctamente en la resolucin de cada ejercicio.

    RECOMENDACIONES

    Ejecutar correctamente las instrucciones.

    Colocar entre apostrofes las etiquetas para que no produzcan un error en el programa.

    Tener muy en cuenta que para el ingreso de los vectores se los debe poner entre corchetes.

    REFERENCIAS BIBLIOGRAFICAS

    [1] Nise, N. (2006). Sistemas de control para ingeniera (Tercera Edicin ed.). Mxico: Editorial

    Continental.