PRACTICA Nº 1 INTRODUCCIÓN A MATLAB - Dinamica y control ... · PDF...
Transcript of PRACTICA Nº 1 INTRODUCCIÓN A MATLAB - Dinamica y control ... · PDF...
UNIVERSIDAD NACIONAL EXPERIMENTAL
“FRANCSCO DE MIRANDA”
ÁREA DE TECNOLOGÍA
DEPARTAMENTO DE MECÁNCA Y TECNOLOGÍA DE LA PRODUCCIÓN
DINÁMICA Y CONTROL DE PROCESOS
PRÁCTICA Nº 1
INTRODUCCIÓN AL ENTORNO DE MATLAB
PROFESOR: ING. CARLOS A. PÉEZ M.-
Punto Fijo; abril de 2016
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
INTRODUCCIÓN
Matlab es la abreviatura de Matrix Laboratory (laboratorio de matrices). Creado en
1984 por The MathWorks, es un software de cálculo muy usado en universidades, centros
de investigación y por ingenieros. En los últimos años ha incluido muchas más
capacidades, como la de programar directamente procesadores digitales de señal, crear
código, etc.
MATLAB es un poderoso lenguaje de programación que incluye los conceptos
básicos comunes a la mayoría de los lenguajes de programación. Puesto que se trata de un
lenguaje con base en scripts, la creación de programas y su depuración en MATLAB con
frecuencia es más fácil que en los lenguajes tradicionales de programación, como C++. Esto
hace de MATLAB una valiosa herramienta para las clases introductorias a la programación.
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
OBJETIVOS
• Introducir y estimular al estudiante en la simulación dinámica mediante el uso del software MATLAB.
OBJETIVOS ESPECÍFICOS
• Aprender los diferentes campos de aplicación del programa Matlab empleados en la ingeniería de control.
• Aplicar los diferentes criterios establecidos dadas una función de transferencia de acuerdo a su script.
• Emplear de acuerdo a los procesos en serie y paralelos los diferentes criterios para su reducción
• Obtener respuestas de procesos de acuerdo a su función de perturbación.
BÁSES TEÓRICAS
¿QUÉ ES MATLAB? MATLAB es una de las muchas sofisticadas herramientas de computación
disponibles en el comercio para resolver problemas de matemáticas, tales como Maple, Mathematica y MathCad. A pesar de lo que afirman sus defensores, ninguna de ellas es “la mejor”.
Todas tienen fortalezas y debilidades. Cada una permitirá efectuar cálculos matemáticos básicos, pero difieren en el modo como manejan los cálculos simbólicos y procesos matemáticos más complicados, como la manipulación de matrices. Por ejemplo, MATLAB es superior en los cálculos que involucran matrices, mientras que Maple lo supera en los cálculos simbólicos. En un nivel fundamental, se puede pensar que estos programas son sofisticadas calculadoras con base en una computadora. Son capaces de realizar las mismas funciones que una calculadora científica, y muchas más. Si usted tiene una computadora en su escritorio, descubrirá que usará MATLAB en lugar de su calculadora incluso para la más simple de sus aplicaciones matemáticas, por ejemplo para el balance de su chequera. En muchas clases de ingeniería, la realización de cálculos con un programa de computación matemático como MATLAB sustituye la programación de computadoras más tradicional. Esto no significa que el lector no deba aprender un lenguaje de alto nivel como C++ o FORTRAN, sino que los programas como MATLAB se han convertido en una herramienta estándar para ingenieros y científicos.
CAMPOS DE ACCIÓN (APLICACIONES): • Teoría de control • Diseño de sistemas de potencia
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
• Control de procesos mecánicos, de aviación,
automoción, etc. Financiero
• Mapeo y tratamiento de imágenes • Instrumentación y adquisición de datos
identificación de sistemas
VARIOS PROGRAMAS INCLUIDOS
• MATLAB: Núcleo operativo de la herramienta matemática • Toolboxes: Librerías de funciones MATLAB asociadas a las diferentes aplicaciones
o (Stateflow y Sisotool, interfaz gráfico, control neuronal y borroso) • Simulink: Interfaz gráfico para el modelado y simulación de sistemas • Blocksets: Bloques Simulink para aplicaciones específicas
DIFERENTES TIPOS DE ARCHIVOS:
*.M (Ficheros por lotes ( *.bat) sobre S.O. MATLAB) *.MAT (Fichero de datos de MATLAB) *.DLL (Ficheros ejecutables sobre Windows diseñados conMATLAB) *.MDL (Modelos de Simulink) Otros (*.fis, *.tbl, etc. para toolboxes de control borroso, stateflow y otros paquetes)
ENTORNO DE TRABAJO
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
LA TOOLBOX DE CONTROL DE MATLAB
• Funciones de aplicación específica para ingeniería de control de sistemas. Son ficheros *.M • Sirve tanto para control continuo como para control discreto, clásico (en espacios transformados sobre sistemas LTI) y de otros tipos (variables de estado, borroso, neuronal, robusto, no lineal, etc.) • En los dos campos permite realizar tareas de: modelado, conversión de modelos y análisis de respuesta temporal, frecuencial y en espacios transformados • Las herramientas para obtención de los modelos de los sistemas se encuentran en otra Toolbox: la de identificación
MODELADO DE SISTEMAS DE CONTROL CONTINÚO
• Las funciones de la toolbox en MATLAB permiten trabajar solo sobre sistemas lineales e invariantes continuos y discretos en el tiempo, y en espacio transformado • Permiten representar los sistemas LTI mediante modelos diferentes en los espacios transformados (‘s’ para sistemas continuos y ‘z’ para sistemas discretos):
Función de transferencia Función Polo-Cero Descomposición en fracciones simples Variables de Estado
FUNCIÓN DE TRANSFERENCIA • El formato Función de Transferencia (FT) corresponde con representaciones del siguiente tipo:
CONVERSIÓN ENTRE FORMATOS
• Las siguientes funciones permiten realizar conversiones entre los distintos formatos de
representación de sistemas
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
GENERACIÓN DE DIAGRAMA DE BLOQUES, CONEXIÓN DE SISTEMAS
• La toolbox de MATLAB para control incluye también funciones para resolver las funciones de transferencia expresadas mediante diagrama de bloques. • Las siguientes funciones permiten realizar conexiones entre los distintos bloques que
conforman un sistema de control.
FUNCIONES DE ANÁLISIS DE SISTEMAS CONTINUOS DE LA TOOLBOX DE CONTROL (I)
• Conjunto de instrucciones que facilitan el análisis de la respuesta temporal, frecuencial y lugar de las raíces de un sistema de control.
• En este punto solo se van a presentar las funciones relacionadas con el análisis temporal
RESPUESTA TEMPORAL • Se usa para obtener características temporales del régimen transitorio y del permanente o estacionario, de la respuesta de un sistema a entradas diversas. Las funciones de la toolbox de MATLAB utilizadas para generar respuestas temporales ante entradas variadas, son las siguientes
FUNCIONES DE ANÁLISIS DE SISTEMAS CONTINUOS DE LA TOOLBOX DE CONTROL (II)
• La toolbox de control de MATLAB posee un conjunto de funciones que permiten realizar fácilmente trazados del Lugar de las Raíces de un sistema realimentado, así como sacar información a partir de éste • Las funciones relacionadas con el trazado del Lugar de las Raíces se muestran en la
siguiente tabla
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
ACTIVIDAD Nº 1
Obtenga el modelo MATLAB del siguiente sistema en formato FT:
A TRAVÉS DE UN FICHERO SCRIPT, O DE COMANDOS DE MATLAB: num=[3 2 1]; %numerador den1=[1 4 1]; %primer polinomio del denominador den2=[1 5]; %segundo polinomio del denominador den=conv(den1,den2); %multiplicación de dos polinomios G= tf(num,den); %obtiene la función de transferencia del proceso.
ACTIVIDAD Nº 2 Obtenga el modelo MATLAB del siguiente sistema en formato ceropolo: num=[4]; %constante del sistema num1=[1 1]; %numerador1 num2=[1 2]; %numerador 2 NUM1=conv(num1,num2); %multiplica los polinomios NUM=conv(num,NUM1); %multiplica los polinomios con la constante den1=[1 3]; %denominador 1 den2=[1 4]; %denominador 1 den3=[1 5]; %denominador 1 DEN1=conv(den1,den2); %multiplica los polinomios 1 y 2 DEN=conv(den3,DEN1); %multiplica los polinomios 1 y 2 con el den3 G= tf(NUM,DEN); %obtiene la función de transferencia del proceso. damp(G);
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
ACTIVIDAD Nº 3
Transformar de formato función de transferencia a formato polo cero la siguiente función:
num1=[20]; num2=[1 10]; %(s+10) num3=[1 0 0 1]; %(s^3+1) NUM1=conv(num1,num2); %multiplica num1 y num2 NUM=conv(NUM1,num3); %multiplica el polinomio anterior con num3 den1=[1 0]; % (s) den2=[1 2]; % (s+2) den=conv(den2,den2); %Generando (s+2)^2 den3=[1 10 100]; %(s^2+10s+100) den4=[1 2 0 0 -10]; %(s^4+2s^3-10) DEN1=conv(den1,den); %multiplica den1 y den DEN2=conv(den3,den4); %multiplica den3 y den4 DEN=conv(DEN1,DEN2); %multiplica DEN1 y DEN2 [Z,P,K]=residue(NUM,DEN); %obtiene los zetas y polos del sistema G= tf(NUM,DEN); %obtiene la función de transferencia del sistema
ACTIVIDAD Nº 4 Obtener la función de transferencia total del sistema que se muestra a continuación, suponiendo que se parte del conocimiento del numerador y el denominador de cada bloque del diagrama num1=[1 -1]; %numerador 1 num2=[1 -2]; %numerador 2 num3=[1 -3]; %numerador 3 NUM1=conv(num1,num2); %multiplica num1 y num2 NUMZP=conv(NUM1,num3); %multiplica el polinomio anterior con num3 den1=[1 1]; %denominador 1 den2=[1 3]; %denominador 2 den3=[1 -4]; %denominador 3 DEN1=conv(den1,den2); %multiplica den1 y den2 DENZP=conv(DEN1,den3); %multiplica el polinomio anterior con den3 G1=tf(NUMZP,DENZP); %obtiene la función de transferencia G1 NUMTF=[25]; %numerador de la realimentación DENTF=[1 10]; %denominador de la realimentación G2=tf(NUMTF,DENTF); %obtiene la función de transferencia G1
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
[NUM,DEN]=feedback(NUMZP,DENZP,NUMTF,DENTF,-1); %obtienen la función de transferencia de la realimentación [Num,Den]=cloop(Num,Den,-1); G3=tf(NUM,DEN); G4=tf(Num,Den);
ACTIVIDAD Nº 5 Dado el siguiente sistema determinar su respuesta al impulso, escalón y rampa: hold on; num=[1]; den=[1 1]; t=[0:0.1:10]'; ye=step(num,den,t); plot(t,ye); title( 'RESPUESTA A UN ESCALON UNITARIO' ); xlabel( 'tiempo(seg)' ) ylabel( 'PERTURBACIÓN'); grid ramp=t; yr=lsim(num,den,ramp,t); plot(t,yr,t,ramp); title( 'RESPUESTA A UNA RAMPA' ); xlabel( 'tiempo(seg)' ) ylabel( 'PERTURBACIÓN'); grid yi=impulse(num,den,t); plot(t,yi); title( 'RESPUESTA A UN IMPULSO' ); xlabel( 'tiempo(seg)' ) ylabel( 'PERTURBACIÓN'); grid hold off ; %FIN
ACTIVIDAD Nº 6
Se desea conocer el trazado del Lugar de las Raíces del sistema siguiente:
NUMK=[5]; NUMG=[1 13] %Numerador de G(s)
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
DENG=[1 10] %Denominador de G(s) NUM=conv(NUMK,NUMG); G1=tf(NUM,DENG); NUMH=[1] %Numerador de H(s) DENH=[1 1.5 8] %Denominador de H(s) [NU,DE]=feedback(NUM,DENG,NUMH,DENH,-1); G2=tf(NU,DE); rlocus(NU,DE) sgrid
ACTIVIDAD Nº 7
Suponga las siguientes funciones de transferencia
a.- Obtenga la función de transferencia en serie:
b.- Obtenga la función de transferencia en paralelo:
G1=tf(2,[1 2]); %función de transferencia 1 G2=tf(9,[1 1.5 9]); %función de transferencia 2 G12=series(G1,G2); %función de transferencia en serie G12_p=parallel(G1,G2); %función de transferencia en paralelo.
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
HOJA DE RESULTADOS:
NOMBRE Y APELLIDO________________________________C.I._______________
SECCIÓN ________ GRUPO:__________
DE ACUERDO A LA EXPERIENCIA PRÁCTICA RESPONDA:
EJERCICIO Nº 1 A.- FUNCIÓN DE TRANSFERENCIA OBTENIDA: B.- COMO OBSERVA EL COMPORTAMIENTO GRÁFICO DEL PROCESO FRENTE A UNA PERTURBACIÓN TIPO ESCALÓN UNITARIO.
EJERCICIO Nº 2
A.- FUNCIÓN DE TRANSFERENCIA OBTENIDA: B.- VALORES DEL DAMPING PARA CADA CASO
EJERCICIO Nº 3
A.- FUNCIÓN DE TRANSFERENCIA OBTENIDA: B.- ZEROS Y POLOS DE LA FUNCION DE TRASNFERENCIA:
P=
Z=
Introducción a Matlab Programa de Ingeniería Química
Prof. Ing. Carlos A. Pérez M.- Esp.
C.- DE ACUERDO A SUS RAICES INFIERA SI EL PROCESO ES ESTABLE O INESTABLE:
EJERCICIO Nº 4
A. OBTENGA LAS FUNCIONES DE TRANSFERENCIA G3 Y G4 DEL SISTEMA
EJERCICIO Nº 5
A.- COMO ES EL COMPORTAMIENTOS DE CADA UNA DE LAS GRÁFICAS EN CUANTO A SU ESTABILIDAD:
EJERCICIO Nº 6
A.- OBTENGA LA FUNCION DE TRANSFERENCIA DE LA REDUCCIÓN DEL DIAGRAMA DE BLOQUES EL CUAL ESTA REPRESENTADO POR G2
EJERCICIO Nº 7
A.- OBTENGA LAS FUNCIONES DE TRANSFERENCIA G12 Y G12_p DEL SISTEMA:
G3=
G4=
G2=
G12=
G12_p=