SlideShare una empresa de Scribd logo
Matlab para An´alisis Din´amico de Sistemas
An´alisis Din´amico de Sistemas, curso 2006-07
7 de noviembre de 2006
1. Introducci´on
Para usar las funciones aqu´ı mencionadas se necesita Matlab con el paque-
te de Control de Sistemas (Control System Toolbox). Para obtener un listado
de todas las funciones disponibles en esta toolbox, basta ejecutar en l´ınea de
comandos de Matlab:
help control
Asimismo, para obtener una descripci´on breve del modo de uso de una funci´on
cualquiera, basta ejecutar en l´ınea de comandos:
help nombre_de_la_funcion
2. Definici´on de un sistema por su funci´on de
transferencia
Para definir un sistema por su funci´on de transferencia, se puede usar la
funci´on tf de la siguiente manera:
G=tf(num,den)
donde G ser´a la variable que contendr´a el objeto “sistema” (que adem´as se mos-
trar´a por pantalla al realizar la asignaci´on), y num y den son respectivamente
los polinomios del numerador y del denominador de la funci´on de transferencia
en el formato de representaci´on de polinomios de Matlab. Este formato consiste
en un vector que contiene los coeficientes del polinomio en orden de grado de-
creciente, siendo el de m´as a la derecha siempre el t´ermino independiente. Por
ejemplo, para definir el polinomio del denominador s3
+ 5s + 10, se escribir´ıa:
den=[ 1 0 5 10]
Obs´ervese que el segundo elemento del vector es un cero que corresponde al
t´ermino de grado 2.
Otra funci´on ´util para definir los polinomios de numerador y denominador
a partir de los ceros y los polos del sistema es poly, que crea un polinomio
(con representaci´on Matlab) a partir de un vector conteniendo sus ra´ıces, por
ejemplo:
den=poly( [ polo1 polo2 ] )
1
Si en ese caso fu´eramos a definir un sistema con dos polos complejos conjugados,
habr´ıamos escrito antes de la l´ınea anterior:
polo1=-5+6*j
polo2=conj(polo1)
Tambi´en existe una funci´on roots para obtener las ra´ıces a partir del polinomio.
Por ejemplo, para obtener los polos a partir del polinomio del denominador:
polos=roots(den)
3. Respuesta a impulso y escal´on unitarios
Para obtener la respuesta a impulso unitario se dispone de la funci´on impulse,
y para el escal´on unitario step. Ambas tienen como ´unico par´ametro el objeto
sistema. Por ejemplo, para el escal´on:
sis=tf([1 2],[1 2 3])
step(sis)
generar´ıa la gr´afica de la evoluci´on en el tiempo de la salida del sistema ante
una entrada escal´on unitario mostrada en la figura 1:
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Step Response
Time (sec)
Amplitude
Figura 1: Respuesta a escal´on unitario
4. Mapa de polos y ceros
La funci´on pzmap realiza la representaci´on gr´afica de la situaci´on en el plano
complejo de los polos (cruces) y los ceros (c´ırculos) del sistema. Por ejemplo, el
siguiente c´odigo Matlab:
sis=tf([1 8.5],[1 10 61])
pzmap(sis)
2
sirve para representar el mapa de polos y ceros mostrado en la figura 2, corres-
pondiente al sistema con funci´on de transferencia:
G(s) =
s + 8,5
s2 + 10s + 61
-9 -8 -7 -6 -5 -4 -3 -2 -1 0
-8
-6
-4
-2
0
2
4
6
8
Pole-Zero Map
Real Axis
ImaginaryAxis
Figura 2: Mapa de polos y ceros
5. Representaci´on gr´afica de la respuesta tem-
poral a partir de su expresi´on funcional
En este apartado se pretenden dar algunas ideas b´asicas para representar
la respuesta temporal de un sistema lineal a partir de la expresi´on funcional
obtenida como resultado de aplicar el m´etodo de Heaviside1
.
Para representar, por ejemplo, la siguiente respuesta impulsional:
g(t) = 2e−t
− 2e−2t
− te−2t
correspondiente al sistema con funci´on de transferencia:
G(s) =
s + 3
(s + 1)(s + 2)2
primero debe generarse la secuencia de instantes de tiempo en los que se va a
evaluar la funci´on g(t) para su representaci´on:
t=linspace(0,3,200);
expresi´on que genera un vector fila t, que contiene 200 valores equiespaciados
de tiempo desde t = 0 hasta t = 3. El valor final se obtiene por prueba y error,
1Para entender mejor las expresiones aqu´ı mostradas, deber´a consultarse el documento
“Introducci´on a Matlab”
3
pero se puede comenzar con tres veces el inverso del menor valor2
de entre los a
de todos los t´erminos e−at
. En este caso es a = 1, y por lo tanto tmax = 3/a = 3.
Una vez obtenido el vector de tiempos,la evaluaci´on de la funci´on g(t) para
todos los instantes de tiempo contenidos en t es inmediato:
g=2*exp(-t)-2*exp(-2*t)-t.*exp(-2*t)
Obs´ervese la diferencia de uso entre el operador *, que en este caso corresponde
siempre a producto de escalar por vector, y el operador .*, que corresponde
al producto elemento a elemento de dos vectores. La expresi´on t*exp(-2*t),
adem´as de no ser lo que se pretende, generar´ıa un error porque es el producto
de dos matrices que no cumplen los requisitos dimensionales para poder llevar
a cabo dicho producto: n´umero de columnas de la primera igual al n´umero de
filas de la segunda.
Por ´ultimo, con el comando plot se representa gr´aficamente el resultado de
evaluar la funci´on:
plot(t,g);
representado en la figura 3, donde las etiquetas de los ejes se han colocado con
las funciones xlabel e ylabel.
0 0.5 1 1.5 2 2.5 3
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
tiempo, t (s)
g(t)
Figura 3: Respuesta a impulso representada a partir de su expresi´on funcional
En caso de tener polos complejos conjugados (sea uno de ellos p, con coefi-
ciente de Heaviside C), podemos tener t´erminos del tipo:
sig=real(p);
w=imag(p);
yi=2*abs(C)*exp(sig*t).*cos(w*t+angle(C))
donde abs es la funci´on para obtener el m´odulo de un complejo, angle la fun-
ci´on para obtener su argumento o ´angulo, real su parte real e imag su parte
imaginaria.
2Siempre positivo: no consideramos aqu´ı sistemas inestables
4
6. Problema propuesto
Dado el sistema lineal definido por la siguiente ecuaci´on diferencial:
d3
y(t)
dt3
+ 5
d2
y(t)
dt2
+ 8,25
dy(t)
dt
+ 17y(t) = 3u(t) +
du(t)
dt
donde y(t) es la salida y u(t) es la entrada, se pide:
1. Deducir la forma aproximada de la respuesta a impulso unitario del siste-
ma dado, a partir de la distribuci´on de sus polos en el plano complejo.
2. Obtener la expresi´on matem´atica exacta en funci´on del tiempo de dicha
respuesta.
3. Dibujar con Matlab la respuesta impulsional obtenida en el apartado an-
terior y compararla con la que se obtiene por medio de la funci´on impulse.
5

Más contenido relacionado

PPT
Resumen Complejidad Computacional y de Algoritmos
PDF
Grafica en Matlab de series de fourier
PPTX
Grafica de una Serie De FOURIER en Matlab
DOC
Estructuras dinámicas de datos
PDF
Sa fourier con matlab
DOCX
RESOLUCION Capitulo4 soria porras
PDF
Matlab principios
PPT
Complejidad Computacional
Resumen Complejidad Computacional y de Algoritmos
Grafica en Matlab de series de fourier
Grafica de una Serie De FOURIER en Matlab
Estructuras dinámicas de datos
Sa fourier con matlab
RESOLUCION Capitulo4 soria porras
Matlab principios
Complejidad Computacional

La actualidad más candente (20)

PDF
Analisis Algoritmo
PDF
Lab 03 - Análisis de Señales - UNTECS
PDF
PDF
Solucion taller 1 de control 2
DOCX
Algoritmos divide y vencerás
PDF
Divide y Vencerás
PPT
Complejidad de Algoritmos
PPTX
EVALUACION DE ALGORTIMOS
PPTX
Matematica4
PPT
Complejidad de Algoritmos
PDF
Fourier
PPT
Theme 5
DOC
Analisis De La Transformada De Fourier En Matlab
PPT
ANALISIS DE ALGORITMOS
PDF
Convolucion Tiempo Discreto
DOCX
Metodo de la burbuja en algoritmo
PPT
Divide y Venceras
PDF
Ss clase 3
PDF
Tema 4: Transformada de Laplace
Analisis Algoritmo
Lab 03 - Análisis de Señales - UNTECS
Solucion taller 1 de control 2
Algoritmos divide y vencerás
Divide y Vencerás
Complejidad de Algoritmos
EVALUACION DE ALGORTIMOS
Matematica4
Complejidad de Algoritmos
Fourier
Theme 5
Analisis De La Transformada De Fourier En Matlab
ANALISIS DE ALGORITMOS
Convolucion Tiempo Discreto
Metodo de la burbuja en algoritmo
Divide y Venceras
Ss clase 3
Tema 4: Transformada de Laplace
Publicidad

Destacado (20)

PDF
Bologna Programm
PPS
L Aumer Messe 4 0
PPTX
Dibujos animados
PPTX
Buena práctica solánggel
PPT
Residuos hospitalarios
PPTX
Presentación1
PDF
Brochure Hr Metrics & Technology Summit | Mexico 2011
PPTX
Smart Grids - Wieviel PV verträgt das Netz? Möglichkeiten zu Erhöhung der Dic...
PPSX
A La Mierda
PDF
Die NGO Website – 10 Fehler die wir alle machen!
PPS
Calendrio Fofo 2010
PPTX
El planeta tierra
PDF
Sant jordi-2014-portal-del-angel
PDF
Abhol-Adresse für Tipp24-Jackpots (Tipp24 Services Ltd.) von Tipp24Blog.com
PPT
Die französische revolution sound2
PPTX
Cómo participar de un hangout on air?
PPT
Solid Solution
PPTX
PräSentation1
PPT
Partnerschaft Somi
Bologna Programm
L Aumer Messe 4 0
Dibujos animados
Buena práctica solánggel
Residuos hospitalarios
Presentación1
Brochure Hr Metrics & Technology Summit | Mexico 2011
Smart Grids - Wieviel PV verträgt das Netz? Möglichkeiten zu Erhöhung der Dic...
A La Mierda
Die NGO Website – 10 Fehler die wir alle machen!
Calendrio Fofo 2010
El planeta tierra
Sant jordi-2014-portal-del-angel
Abhol-Adresse für Tipp24-Jackpots (Tipp24 Services Ltd.) von Tipp24Blog.com
Die französische revolution sound2
Cómo participar de un hangout on air?
Solid Solution
PräSentation1
Partnerschaft Somi
Publicidad

Similar a Ads matlab (20)

DOCX
Funcionesdetransferencia respuesta en el dominio del tiempo
PDF
Practica 5 simulink-5156
PDF
Lugar geometrico
PDF
Practica 7(1) de ingeniería de control: Laboratorio de ingeniería de control(...
PDF
Tutorial controltoolbox
PDF
Matlab tutorial control
PDF
Matlab tutorial control
DOCX
Teoria de control -- aplicaciones matlab
PDF
Desarrollo de ejercicios básicos en matlab
PDF
Taller 10-14-ii
DOCX
Teoria de control
DOCX
Teoria de control
PDF
Estructura de datos avanzada
PDF
Sistemas variantes en el tiempo
DOCX
Estabilidad de sistemas lineales informe 6
PPT
SISTEMAS LTI
PDF
Matlab scientific scilab_mathematics
DOC
Unidad i. introduccion a los sistemas dinamicos.
DOC
Logica difusautilizandomatlab
PDF
Electrónica digital: Sistemas secuenciales
Funcionesdetransferencia respuesta en el dominio del tiempo
Practica 5 simulink-5156
Lugar geometrico
Practica 7(1) de ingeniería de control: Laboratorio de ingeniería de control(...
Tutorial controltoolbox
Matlab tutorial control
Matlab tutorial control
Teoria de control -- aplicaciones matlab
Desarrollo de ejercicios básicos en matlab
Taller 10-14-ii
Teoria de control
Teoria de control
Estructura de datos avanzada
Sistemas variantes en el tiempo
Estabilidad de sistemas lineales informe 6
SISTEMAS LTI
Matlab scientific scilab_mathematics
Unidad i. introduccion a los sistemas dinamicos.
Logica difusautilizandomatlab
Electrónica digital: Sistemas secuenciales

Último (20)

PDF
Curso Introductorio de Cristales Liquidos
PDF
Módulo V. Tema 2. Disruptive & Transformation 2024 v.0.4.pdf
PDF
Repaso sobre el Gusano_cogollero y como ataca .pdf
PPTX
TOPOGRAFÍA - INGENIERÍA CIVIL - PRESENTACIÓN
PDF
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
PPTX
clase MICROCONTROLADORES ago-dic 2019.pptx
PDF
SESION 9 seguridad IZAJE DE CARGAS.pdf ingenieria
PDF
manual-sostenibilidad-vivienda-yo-construyo (1).pdf
PPTX
MANEJO DE QUIMICOS Y SGA GRUPO Mnsr Aleman.pptx
PPTX
CNE-Tx-ZyD_Comite_2020-12-02-Consolidado-Version-Final.pptx
PDF
SESION 10 SEGURIDAD EN TRABAJOS CON ELECTRICIDAD.pdf
PPTX
Expo petroelo 2do ciclo.psssssssssssssptx
PDF
LIBRO UNIVERSITARIO INTELIGENCIA ALGORITMICA BN.pdf
PPTX
A8B08CED-D3D9-415C-B4A3-2A6CA6409A48.1.1Presentación Dirección 2022 unidade...
PDF
Diseño y Utiliación del HVAC Aire Acondicionado
PDF
MANTENIMIENTO AIRE ACOINDICIOANDO S1_ELEC_MANT.pptx.pdf
PPTX
DEBL Presentación PG 23.pptx [Autoguardado].pptx
PPTX
Cómo Elaborar e Implementar el IPERC_ 2023.pptx
PDF
LIBRO UNIVERSITARIO SISTEMAS PRODUCTIVOS BN.pdf
PDF
METODOLOGÍA DE INVESTIGACION ACCIDENTES DEL TRABAJO.pdf
Curso Introductorio de Cristales Liquidos
Módulo V. Tema 2. Disruptive & Transformation 2024 v.0.4.pdf
Repaso sobre el Gusano_cogollero y como ataca .pdf
TOPOGRAFÍA - INGENIERÍA CIVIL - PRESENTACIÓN
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
clase MICROCONTROLADORES ago-dic 2019.pptx
SESION 9 seguridad IZAJE DE CARGAS.pdf ingenieria
manual-sostenibilidad-vivienda-yo-construyo (1).pdf
MANEJO DE QUIMICOS Y SGA GRUPO Mnsr Aleman.pptx
CNE-Tx-ZyD_Comite_2020-12-02-Consolidado-Version-Final.pptx
SESION 10 SEGURIDAD EN TRABAJOS CON ELECTRICIDAD.pdf
Expo petroelo 2do ciclo.psssssssssssssptx
LIBRO UNIVERSITARIO INTELIGENCIA ALGORITMICA BN.pdf
A8B08CED-D3D9-415C-B4A3-2A6CA6409A48.1.1Presentación Dirección 2022 unidade...
Diseño y Utiliación del HVAC Aire Acondicionado
MANTENIMIENTO AIRE ACOINDICIOANDO S1_ELEC_MANT.pptx.pdf
DEBL Presentación PG 23.pptx [Autoguardado].pptx
Cómo Elaborar e Implementar el IPERC_ 2023.pptx
LIBRO UNIVERSITARIO SISTEMAS PRODUCTIVOS BN.pdf
METODOLOGÍA DE INVESTIGACION ACCIDENTES DEL TRABAJO.pdf

Ads matlab

  • 1. Matlab para An´alisis Din´amico de Sistemas An´alisis Din´amico de Sistemas, curso 2006-07 7 de noviembre de 2006 1. Introducci´on Para usar las funciones aqu´ı mencionadas se necesita Matlab con el paque- te de Control de Sistemas (Control System Toolbox). Para obtener un listado de todas las funciones disponibles en esta toolbox, basta ejecutar en l´ınea de comandos de Matlab: help control Asimismo, para obtener una descripci´on breve del modo de uso de una funci´on cualquiera, basta ejecutar en l´ınea de comandos: help nombre_de_la_funcion 2. Definici´on de un sistema por su funci´on de transferencia Para definir un sistema por su funci´on de transferencia, se puede usar la funci´on tf de la siguiente manera: G=tf(num,den) donde G ser´a la variable que contendr´a el objeto “sistema” (que adem´as se mos- trar´a por pantalla al realizar la asignaci´on), y num y den son respectivamente los polinomios del numerador y del denominador de la funci´on de transferencia en el formato de representaci´on de polinomios de Matlab. Este formato consiste en un vector que contiene los coeficientes del polinomio en orden de grado de- creciente, siendo el de m´as a la derecha siempre el t´ermino independiente. Por ejemplo, para definir el polinomio del denominador s3 + 5s + 10, se escribir´ıa: den=[ 1 0 5 10] Obs´ervese que el segundo elemento del vector es un cero que corresponde al t´ermino de grado 2. Otra funci´on ´util para definir los polinomios de numerador y denominador a partir de los ceros y los polos del sistema es poly, que crea un polinomio (con representaci´on Matlab) a partir de un vector conteniendo sus ra´ıces, por ejemplo: den=poly( [ polo1 polo2 ] ) 1
  • 2. Si en ese caso fu´eramos a definir un sistema con dos polos complejos conjugados, habr´ıamos escrito antes de la l´ınea anterior: polo1=-5+6*j polo2=conj(polo1) Tambi´en existe una funci´on roots para obtener las ra´ıces a partir del polinomio. Por ejemplo, para obtener los polos a partir del polinomio del denominador: polos=roots(den) 3. Respuesta a impulso y escal´on unitarios Para obtener la respuesta a impulso unitario se dispone de la funci´on impulse, y para el escal´on unitario step. Ambas tienen como ´unico par´ametro el objeto sistema. Por ejemplo, para el escal´on: sis=tf([1 2],[1 2 3]) step(sis) generar´ıa la gr´afica de la evoluci´on en el tiempo de la salida del sistema ante una entrada escal´on unitario mostrada en la figura 1: 0 1 2 3 4 5 6 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 Step Response Time (sec) Amplitude Figura 1: Respuesta a escal´on unitario 4. Mapa de polos y ceros La funci´on pzmap realiza la representaci´on gr´afica de la situaci´on en el plano complejo de los polos (cruces) y los ceros (c´ırculos) del sistema. Por ejemplo, el siguiente c´odigo Matlab: sis=tf([1 8.5],[1 10 61]) pzmap(sis) 2
  • 3. sirve para representar el mapa de polos y ceros mostrado en la figura 2, corres- pondiente al sistema con funci´on de transferencia: G(s) = s + 8,5 s2 + 10s + 61 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 -8 -6 -4 -2 0 2 4 6 8 Pole-Zero Map Real Axis ImaginaryAxis Figura 2: Mapa de polos y ceros 5. Representaci´on gr´afica de la respuesta tem- poral a partir de su expresi´on funcional En este apartado se pretenden dar algunas ideas b´asicas para representar la respuesta temporal de un sistema lineal a partir de la expresi´on funcional obtenida como resultado de aplicar el m´etodo de Heaviside1 . Para representar, por ejemplo, la siguiente respuesta impulsional: g(t) = 2e−t − 2e−2t − te−2t correspondiente al sistema con funci´on de transferencia: G(s) = s + 3 (s + 1)(s + 2)2 primero debe generarse la secuencia de instantes de tiempo en los que se va a evaluar la funci´on g(t) para su representaci´on: t=linspace(0,3,200); expresi´on que genera un vector fila t, que contiene 200 valores equiespaciados de tiempo desde t = 0 hasta t = 3. El valor final se obtiene por prueba y error, 1Para entender mejor las expresiones aqu´ı mostradas, deber´a consultarse el documento “Introducci´on a Matlab” 3
  • 4. pero se puede comenzar con tres veces el inverso del menor valor2 de entre los a de todos los t´erminos e−at . En este caso es a = 1, y por lo tanto tmax = 3/a = 3. Una vez obtenido el vector de tiempos,la evaluaci´on de la funci´on g(t) para todos los instantes de tiempo contenidos en t es inmediato: g=2*exp(-t)-2*exp(-2*t)-t.*exp(-2*t) Obs´ervese la diferencia de uso entre el operador *, que en este caso corresponde siempre a producto de escalar por vector, y el operador .*, que corresponde al producto elemento a elemento de dos vectores. La expresi´on t*exp(-2*t), adem´as de no ser lo que se pretende, generar´ıa un error porque es el producto de dos matrices que no cumplen los requisitos dimensionales para poder llevar a cabo dicho producto: n´umero de columnas de la primera igual al n´umero de filas de la segunda. Por ´ultimo, con el comando plot se representa gr´aficamente el resultado de evaluar la funci´on: plot(t,g); representado en la figura 3, donde las etiquetas de los ejes se han colocado con las funciones xlabel e ylabel. 0 0.5 1 1.5 2 2.5 3 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 tiempo, t (s) g(t) Figura 3: Respuesta a impulso representada a partir de su expresi´on funcional En caso de tener polos complejos conjugados (sea uno de ellos p, con coefi- ciente de Heaviside C), podemos tener t´erminos del tipo: sig=real(p); w=imag(p); yi=2*abs(C)*exp(sig*t).*cos(w*t+angle(C)) donde abs es la funci´on para obtener el m´odulo de un complejo, angle la fun- ci´on para obtener su argumento o ´angulo, real su parte real e imag su parte imaginaria. 2Siempre positivo: no consideramos aqu´ı sistemas inestables 4
  • 5. 6. Problema propuesto Dado el sistema lineal definido por la siguiente ecuaci´on diferencial: d3 y(t) dt3 + 5 d2 y(t) dt2 + 8,25 dy(t) dt + 17y(t) = 3u(t) + du(t) dt donde y(t) es la salida y u(t) es la entrada, se pide: 1. Deducir la forma aproximada de la respuesta a impulso unitario del siste- ma dado, a partir de la distribuci´on de sus polos en el plano complejo. 2. Obtener la expresi´on matem´atica exacta en funci´on del tiempo de dicha respuesta. 3. Dibujar con Matlab la respuesta impulsional obtenida en el apartado an- terior y compararla con la que se obtiene por medio de la funci´on impulse. 5