You are on page 1of 7
HH Simulacién de sistemas en Matlab’® y Simulink” En esta practica aprenderas a simular sistemas en Matlab, un potente programa de calculo muy utilizado a nivel de ingenieria. Se trata de un programa desarrollado por MathWorks®, cuya primera version data de 1984, por lo que cuenta ya con mas de 30 fos de antigledad en los que Se han ide incorporande multitud de funcionalidades orientadas a satisfacer todo tipo de nece~ sidades profesionales, cubriendo temas tan diversos como el procesamiento de imagen o la estadistica, El nombre del programa proviene de Matrix Laboratory, lo que deja entrever su especial optimizacién para e! manejo de datos en forma de matrices 0 vectores. No obstante, este paquete de célculo permite también trabajar de forma simbélica, aunque de manera mas limitada. Cabe destacar que existen diversas alternativas a Matiab®, siendo algunas de ellas gratuites. Entre ellas destacan Octave, Sci- lab y especialmente A, que ha ganado mucha popularidad en los dttimos afios. La creciente competencia de Matlab” ha servi- do también para que el precio del software haya bajado considerablemente en los uiltimos afios, especialmente en su version para estudiantes. Esto ultimo, unido al hecho de que Matiab® cuenta con grandes herramientas para el andlisis, disefio y simu- lacion de sistemas, nos ha motivado a elegir este programa para esta guia. Ello no quiere decir que no puedan obtenerse los miemos recultadee con otroe paquetes de oftware de céloulo, poro ningun otro programa cuenta con el nivel de penetracién de Matlab® en lo relacionado con el procesamiento de sefiales y sistemas. Ademés, el aprendizaje de Matlab® garantiza una fa- cil trasiacién de los conocimientos adquiridos a otros programas. Asimismo, puedes descargar una versién gratuita de Matlab” desde la web de MathWorks® Esparia que permite su utiizacion gratuita durante 30 dias. De todas las extensiones que ofrece el programa, nos interesan dos especialmente: Simwulink® y Control System Toolbox. En lo que sigue, se asume que has descargado e instalado Matlab”, incluyendo los dos paquetes anteriormente sefialados, Si- mulink® y Control System Toolbox. Las pantalias que se ofrecen en esta guia se corresponden con la version R2017a del pro- grama. Diferentes versiones del programa y de! sistema operative podrian conducir a interfaces con una apariencia ligeramente distinta, aunque en lo sustancial no deberia haber ninguna diferencia. Simulink® Para areancar Simulink® hay qua arrancar Matlah®, escribir el camanda: simulink emi = Yoder ro Toate tee TS — arrancara Simulink® en una ven- = tana separads, mostrando una | |) pantalla de inicia coma ta que an se muestra en la Figura 1.18. | TT" need il cra Deas opciones que se presen- | w= a tan, la que mas nos interesa es la.de ciwar un modelo en ban a 0, que aparece arriba a la iz- : quierda, Debemos hacer clic — ee nen soneed con el botén izquierdo del ra- tén en ella para que aparezca Ja pantalla principal de Simu- —— -—— _ —— link®, que 6@ mueetra en ta Fi- gura 1.16. a i ee o La pantalla principal de Simu- ciones para crear un modelo y aoe link® dispone de multitud de op- Fle Est View Oispuy Dagram Simaston Anayss Code Tole Hep a configurar su simulacién. Las mas importantes se sefialan ex- plicitamente en la Figura 1.16 y son las siguientes: al hacer clic con el botén izquierdo se desplieya un mend que per mite guardar 0 abrir un mo- elo previamente quardado, Ademas, ofrece también ac- cso ala configuracién de las preferencies en el manejo det programa. + Pardmetros de simula al hacer clic con el botén iz- Archivo. Ge Simuank Libreria Activary patne la simulacion Parémetros de simulacién quierdo, se despliega una figura 1.14. Pantalla ava la eck de modelos en Simulink ventana emergente a través e la cual podemos configurar diferentes pardmetros del modelo que vamos a simular. Entre ellos destacan el tiempo de ini- cio y de final de la simulacién, que determinan la cantidad de tiempo para la cual se quiere simular el sistema, Ademds, po- demos configurar también otros aspectos mas avanzados, como aquellos relacionados con el métode numérico empleado para la resolucion de las ecuaciones diferenciales relacionadas con la simulacion det modelo, lo que puede resultar necesario ‘en algunas ocasiones. + Librerfa de Simulink*: sin lugar a dudas, se trata del pardmetro mas importante que ofrece este programa. Al hacer clic con el boton izquierdo aparece la ventana emergente que se muestra en la Figura 1.17. A través de ella podemos elegir los blo- ques que describen de manera grafica el modelo, Debido a su relevancia dedicaremos unas lineas mas adelante a comentar .cémo trabajar con ella. * Activar y parar la simulacién: por ditimo, la pantalla principal ofrece también algunos botones de acceso ri- pidos a través de los cuales podemos lanzar 0 detener Ja simulacién de! modelo con un simple clic, La biblioteca de bloques de Simulink La libreria 0 biblioteca de bloques de Simulink* aparece: en la Figura 1.17, En esta ventana se pueden seleccionar los bloques que permiten describir graficamente un mo~ dvio. En concreto, destacamos tres uspectos esenciales de la interfaz de seleccién de bloques: * Categorias: on la columna tzquierda aparece un lista- do de categorias. La seleccién con ol botén izquierdo de cualquiera de estos elementos hace que en la co- lumna derecha de la pantalla aparezca un listado de ‘subcatagorias o bloques relacionados. * Listado de bloques: en la columna derecha de la pan- talla aparecen las subcategorias 0 bloques asociados una categoria dada. La manera de distingulr los blo- ‘ques de las categorias es que los primeros aparecen Figura 1,17, Biblioteca de bloques de Sioulink, ‘con unas marcas en forma de fiecha en el entorno del icono. Dichas marcas se corresponden con puertos de entrada o de ‘salida del bloque y sirven para su conexién con otros elementos, tal y como veremos en unos instantes. Por su parte, el icono de categoria muestra una serie de recténgulos superpuestos para denotar que existen bloques en su interior. Haciendo doble clic en este icono, se actualiza la columna derecha de la pantalla, la de todos los bloques contenidos en la subcategoria. = Busqueda de bloques: en esta ventana aparece también un cuadro de texto en ef que puede introducirse ef nombre de un determinado bloque para buscarlo dentro de Ia biblioteca, presionando Ia tecla Intro después de escribir. Se trata de una epcién muy util dada la gran cantidad de bloques que pueden encontrarse dentro de la biblioteca del programa. Evidente- mente, también puede accederse al mismo bloque seleccionando la categoria (y la subcategoria) correspondiente en los listados de las columna izquierda y derecha anteriormente comentados, pero puede suceder que no recordemos con preci- sidn como llegar al miseno. En ese caso, la herramnienta de bésqueda ries ahorrard el lempo de explorar la biblioteca hasta dar con el bloque. Simulacién de un circuito ALC mediante sus ecuaciones diferenciales Con objeto de ilustrar el funcionamiento de Simulink® realizaremos la simulacién de un circuito RLC como el que se muestra en la Figura 1.18. Este tipo de circuitos se utilizan en numerosas aplicaciones, tales como osciladores o sistemas de fitrado de fre- cuencia en receptores de television. En este circuito, la entrada es y la salida es . Las ecuaciones di- Rae eee ferenciales que rigen un circuito RLC pueden obtenerse a partir WY. de las leyes de Kirchhoff, En concreto, la intensidad que recorre ef circuito es la misma para todos sus elementos y puede ser cal- culada en funcién del voltaje que cae en el condensador dela si- guiente forma: c+ vo vio dV (t) dt i(Q=C Por otro lado, se sabe que el voltaje proporcionado por la fuen- Fiera 1.18, Circuito RLC. te de tensién debe ser igual al que cae en el resto del circuito, es ecir: VO EVO deters di(t) VO) = Rei) +L + VE) = RC +O A partir de esta ecuacion diferencia! es posible utilizar Simulink® para simular el sistema tal y como se muestra en la Figura 1.18, Por simplicidad, asumiremos que el valor de todos los pardmetros (F, L y G) a¢ tomara igual a 1. ‘Se han utilizado los siguientes bloques, que han sido arrastrados desde la biblioteca de Simulink* hasta la pantalla de edicion del modelo mientras se pulsa el botén izquierdo del ratén: = Escalon (Step): este bloque se usa como entrada del sistema y puede encontrarse dentro de la categoria Simulink®: Sou- roes (0 fuentes, si usamos una versién en castellano del programa). Por defecto, proporciona una sefal cuyo valor inicial es © y que al transcurrir un segundo de tiempo simulado cambia a 1. aunaue estos valores pueden ser cambiados en la venta- na emergente que se abre tras hacer doble clic en el bloque. ‘+ Visor (Scope): este bloque se usa para representar gréficamente el valor de la salida del sistema y puede encontrarse en la categoria Simulink®: Commonly Used Blocks. Se trata de un bloque que muestra la evolucién temporal de la sefial que re- cibe como entrada, en una ventana emergente que se despliega al hacer doble clic sobre él. + Suma (Sum): este bloque suma ly resta) varias sefiales y puede encontrarse en la categoria Simulink*: Commonly Used Blocks. Por defecto, presenta Gnicamente dos entradas. No obstante, si se hace doble clic en é! se abre una ventana en la ‘que aparece un cuadro de texto editable llamado List of signs (lista de signos), Editantio este campo tal y como se muestra ‘en la Figura 1.20 se pusde conseguir la configuracion representada en la Figura 1,19, esto es, una sefal entra con signo po- sitivo y las dos restante aparecen con signo negativo. * Ganancia (Gain): de nuevo, se trata de un bloque que puede encontrarse en la categoria Simulink®: Commonly Used Blocks. La misién de este bloque es generar una sevial de salida que es igual a la sefial de entrada que recibe multiplicada Por una constante que puede ser editada a través de la ventana que se abre tras hacer doble clic sobre el bloque. * Derivador (Derivative): este bloque puede encontrarse en la categoria Simulink®: Continuous. E| propésito de este bloque es generar una sefial a su salida que es igual a la derivada con respecto al tiempo de la serial que recibe como entrada. Dobe observarse que algunos de estos bloques han sido rotados convenientemente tras su Introduccion en el modelo. Ello se consigue seleccionando el bloque correspondiente con el boton izquierdo del raton y pulsando Ciri+r (=r» de rotar). Asimismo, Ja unién entre bioques se realiza arrastrando el ratén mientras se pulsa el botén derecho desde la salida de un bloque hasta la entrada de otro, Si es preciso, pueden generarse bifurcaciones realizando esta misma operacién desde una flecha conectora mientras se pulsa la tecla Ctrl. La idea de este modelo en Simulink® de la Figura 1.19 es aprovechar la ecuacién diferencial que modela el sistema para expre- sar la salida del sistema como: V0 = Ven — Reig — 1 2 = VO ~ Ri — Le De este modo, se toma la sefial de entrada y se le rastan las caidas de voltaje producidas en la resistencia y en la hobina Como ambas dependen de fa intensidad y esta a su vez depende de la derivada del voltaje de salida, lo primero que se hace con la salida es derivaria y multiplicaria por C. A continuacion, se aprovecha esa intensidad para calcular las dos caidas de vol- taje sefaladas, que van a parar al sumador para ser sustraidas de la sefal de entrada. En la Figura 1.21 se muestra la ventana que se abre tras pulsar dos veces con el bot6n izquierdo del ratén sobre el bloque del visor introducide. Como puede verse, la salida permanece constante e igual a 0 hasta el segundo una (sistema en reposo), mo- mento en el cual el escalén que se utiliza como sefial de entrada realiza una transicién abrupta desde 0 a 1. A partir de este ins- tante la ealida del sistema evoluciona y exhibe una dinémica de segundo orden caracterizada por una pequefia sobreoscilacién hasta que se estabiliza en torno a 1 para el tiempo de simulacién t=7 sequndos, Se recomienda al alumno que pruebe con diferentes valores de jos parametros que caracterizan al sistema para ver como cam- bia la dindmica de la evolucién temporal de la respuesta. ene oseonic Fle Eat View Osply Oucram Sinaton Arlvis Code Tous Helo ror 8 Bw O-S-e 4d so0 > O~ ty © EaimoaeR.C “qq. DSH ram Sc by cara me dagram od ng Baro heck eM erin " ‘Suma (Sum) a Siewulink -> Commonly Used Blocks = Escalon (Step) t ‘Visor (Scope) ay Sines Sources ‘Simulink > Commoniy Used Blocks =, onesién bloawes: ’ - aaaiar ran putaindo. ’ Figura 1.19, Modelo RLC en e dominio del tempo. Figura 1.20. Configuracn de! bloque suma del ejemplo mostrado en Figura 1.21. Representacidn de la evolu nperal de a sald del eitcaito RLC di Simulacion de un circuito RLC mediante su funcidn de transferencia Asumiendo condiciones iniciales nulas y aplicando la transformada de Laplace, se tiene: V(s) = SRC V(8) + SLCV(s) + V,(8) = VQ) (LCs, + RCs + 1) lo que conduce a la funcién de traneferencia: 1 © (LC? + RCs + 1) Simulink® permite también introducir funciones de transferencia, tal y como se muestra en la Figura 1.22. En concreto, se utili- zan dos bloques nuevos en dicha figura: Commonly Used Blocks. Se utiliza pa e en la F * Multiplexor (Mux): este bloque puede encontrarse en la categoria Simulink®: combinar dos sefiales en una misma sefial, por ejemplo para representarias a la vez en un visor tal y como gura 1.22 * Funcién de transferencia (Transfer Fen): este bloque se encuentra en la categoria Simulink*: Continuous. Su propdsito es generar la salida que corresponde cuando se introduce la sefial que recibe en un sistema cuya funcién de transferencia se pasa como parametro en la ventana emergente que se abre tras hacer doble clic sobre el bloque. En particular, la funcion coeficientes de! polinomio de la funcién en el numerador y el denominador. Por mpo correspondiente. como pardmetros vectores con ejemplo, si el palinamio es as+b, entonces debe escribirse [a b] en el 4, la funcién de transferencia puede escribirse como: Dado que A, L y C Vis) 1 G(s) = =s Vs) oP +sti lo que lleva a poder definir los siguientes polinomios: ‘numerador = [1] denominador = [1 1 1] donde el clemento mas a la derecha ea et término independiente y cl resto de los clementos a la izquierda 30 correaponden con coeficientes de monamios en s en arden craciente. La Figura 1.22 admite algunos comentarios mas. En primer lugar, se muestra el sistema simulado en paralelo de dos maneras_ diferentes. En concreto. en la parte de arriba se muestra una modificacién del modelo representado en la Figura 1.18 en la que los derivadores se han sustituido por funciones de transferencia con numerador [1 0] y denominador [0,01 1]. Nétese que el de- nominador deberia ser simplemente [1], pero eso generarla un error en Simulink®, ya que como se indicé en la teoria un siste- ma fisicamente realizable debe tener al menos el mismo grado en el denominadior que en el numerador. El hecho de multiplicar ef término que muttiplica al monomio s en el denominader por 0,01 ayuda a que el efecto de este término sea poco apreciable en la simulacién. Podria utilizarse un coeficiente alin mas pequefio, pero esto podria generar algunos problemas numéricos en la simulacién que llevarian a que se generaran Ventanas de error en Simulink®. Esto permite apreciar Ia versatiidad de las fun- ciones de transferencia y comprobar de primera mano algunas de las limitaciones numéricas que pueden plantearse en el mo- Mento de simular sistemas. Por otra parte, la salida de la simulacién se muestra en ta Figura 1.23. Como puede apreciarse, las dos salidas son practica- Mente igénticas, aunque se observan algunas diferencias minimas como consecuencia de la aproximacién introducida en los Gerivadores. Con el fin de observarias con claridad, la Figura 1.24 muestra el resultado de representar ta diferencia entre las sa- lidas de ambos modelos a través de otro visor. Dichas diferencias se hacen alin mas evidentes cuando se realiza la simulacién con los derivacores originales, los cuales son también una aproximacién, pues no existe un sistema que se comporte exacta- mente como un derivador tedrico (por ejemplo, et derivador tedrico deberia dar una salida infinita ante cualquier cambio abrup- to Ge la entrada, lo que es imposible). Se deja como ejercicio aplicar fo aprendido para simular los dos sistemas utilizados como ejemplos en este tema, a saber, el tanque y la posicién de la masa unida al mueile. eos nate Fle Eait View Display Diagram Simulation Anaiysis Code Tools Help B- or B Be-a-6 4.» - » Or tee Multiptoxor (Mux) ‘Simutink -> Commonly Used Blocks Modelo a partir de \a tuncién de transterencia Figura 1.22. Modifcacién del modelo de a Figua 1.18 para smal también mediante funcion de transferencia. 11.25, Salida del vi o- 400 a>:

You might also like