Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y...
Transcript of Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y...
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Modelado y Simulación de SistemasDinámicos: Métodos, Algoritmos y
HerramientasSistemas de Tiempo Discreto
Ernesto Kofman
Laboratorio de Sistemas Dinámicos y Procesamiento de la InformaciónFCEIA - Universidad Nacional de Rosario.
CIFASIS – CONICET. Argentina
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Organización de la Presentación
1 Ecuaciones en Diferencias
2 Diagramas de Bloques
3 Simulación de Sistemas de Tiempo Discreto
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Organización de la Presentación
1 Ecuaciones en Diferencias
2 Diagramas de Bloques
3 Simulación de Sistemas de Tiempo Discreto
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Ecuaciones en Diferencias
El siguiente modelo, correspondiente a un filtro digital muysimple, es una ecuación en diferencias de segundo orden
y(k) + a1 · y(k − 1) + a2 · y(k − 2) = b0u(k)
El modelo está definido sólo para los instantes discretost0, t1, · · · , tk , · · · .
y(k) = y(tk ) es la variable de salida del modelo.
u(k) = u(tk ) es la variable de entrada del modelo.
Las constantes a1, a2, b0 son parámetros del modelo.
Este caso se trata de un modelo lineal y estacionario.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Ecuaciones en Diferencias
En general, las ecuaciones en diferencias pueden escribirse dela forma:
y(k) = f [y(k − 1), · · · , y(k − n), u(k), u(k − 1), · · · , u(k −m), k ]
o más generalmente, admitiendo casos implícitos tenemos:
f [y(k), y(k−1), · · · , y(k−n), u(k), u(k−1), · · · , u(k−m), k ] = 0
En ambos casos se trata de un modelo externo.
Suponiendo que n > m, n es el orden del sistema.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Ecuaciones en Diferencias: Estados
Una ecuación en diferencias de orden n se puede representarpor n ecuaciones de orden 1. En el caso del filtro digital,
x1(k + 1) = x2(k)
x2(k + 1) = −a2 · x1(k) − a1 · x2(k) + u(k)
donde además
y(k) = −a2 · b0 · x1(k) − a1 · b0 · x2(k) + b0 · u(k)
Las nuevas variables x1(k) y x2(k) se denominan variablesde estado.Las dos ecuaciones de orden 1 se llaman ecuaciones deestado.La ecuación estática que calcula y(k) es la ecuación desalida.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Ecuaciones en Diferencias. Ejemplo No Lineal
El siguiente modelo se denomina Ecuación deNicholson–Bailey y representa la dinámica de poblaciones deparásitos y huéspedes.
N(k + 1) = λ · N(k) · e−a·P(k)
P(k) = N(k) · (1 − e−a·P(k))
N(k) y P(k) son las variables de estado (número dehuéspedes y parásitos, respectivamente).
Son Ecuaciones de Estado no lineales.
Es un modelo autónomo y estacionario.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Ecuaciones en Diferencias: Forma General
La forma general de escribir una ecuación en diferencias en surepresentación de Ecuaciones de Estado es la que sigue:
x1(k + 1) = f1[x1(k), x2(k), · · · , xn(k), u1(k), · · · , um(k), k ]
x2(k + 1) = f2[x1(k), x2(k), · · · , xn(k), u1(k), · · · , um(k), k ]
...
xn(k + 1) = fn[x1(k), x2(k), · · · , xn(k), u1(k), · · · , um(k), k ]
con las Ecuaciones de Salida:
y1(k) = g1[x1(k), x2(k), · · · , xn(k), u1(k), · · · , um(k), k ]
y2(k) = g2[x1(k), x2(k), · · · , xn(k), u1(k), · · · , um(k), k ]
...
yp(k) = gp[x1(k), x2(k), · · · , xn(k), u1(k), · · · , um(k), k ]
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Ecuaciones en Diferencias: Notación Vectorial
Las Ecuaciones de Estado se escriben generalmente en formavectorial. Definiendo:
x(k) ,
x1(k)...
xn(k)
; u(k) ,
u1(k)...
um(k)
; y(k) ,
y1(k)...
yp(k)
; f(·) ,
f1(·)...
fn(·)
las ecuaciones de estado y salida se pueden reescribir:
x(k + 1) = f[x(k), u(k), k ]
y(k) = g[x(k), u(k), k ]
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Organización de la Presentación
1 Ecuaciones en Diferencias
2 Diagramas de Bloques
3 Simulación de Sistemas de Tiempo Discreto
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Diagramas de Bloques
Los Diagramas de Bloques son una herramienta gráfica derepresentación de modelos. Las variables se representan conflechas, y las operaciones matemáticas con bloques.
Delay Delayb0
a1
a2
u(k)y(k) y(k − 1) y(k − 2)
y(k) + a1 · y(k − 1) + a2 · y(k − 2) = b0u(k)
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Diagramas de Bloques. Ejemplo No Lineal
Delay
Delay
λ · N(k) · e−a·P(k)
N(k + 1)
N(k) · [1 − e−a·P(k)]
P(k + 1)
N(k)
N(k)
P(k)
P(k)
N(tk+1) = λ · N(tk ) · e−a·P(tk )
P(tk+1) = N(tk ) · [1 − e−a·P(tk )]Nicholson–Bailey
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Diagrama de Bloques. Caso General
Delay
Delay
f1(x(k), u(k))
x1(k + 1)x1(k)
fn(x(k), u(k))
xn(k + 1)xn(k)
u(k)
x(k)
......
x(k + 1) = f[x(k), u(k)]
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Diagramas de Bloques Jerárquicos
Delay Delayb0
a1
a2
y(k − 1) y(k − 2)
u(k)
u(k)
y(k)
y(k)
y(k) + a1 · y(k − 1) + a2 · y(k − 2) = b0u(k)
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Diagramas de Bloques Jerárquicos
El acoplamiento jerárquico permite construir modelos máscomplejos a partir de submodelos ya construidos.
Delay Delay Delay Delay
u(k)
u(k)
b0b0
a1a1
a2a2
y(k)
Cascada de dos filtros.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Organización de la Presentación
1 Ecuaciones en Diferencias
2 Diagramas de Bloques
3 Simulación de Sistemas de Tiempo Discreto
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Simulación de Sistemas de Tiempo Discreto
La simulación de un sistema de tiempo discreto es trivial. Dadauna representación de la forma
x(k + 1) = f[x(k), u(k)]
y conocidas las condiciones iniciales x(0), el siguientealgoritmo simula el sistema:
1 Ponemos inicialmente k = 02 Calculamos el siguiente valor del estado
x(k + 1) = f[x(k), u(k)].3 Incrementamos k en 1.4 Si tk ≥ tf terminamos la simulación. En otro caso,
volvemos al punto 2.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Simulación de la Ecuación de Nicholson-Bailey
0 5 10 15 20 25 30 35 40 45 500
50
100
150
200
250
300
350
400
450
Time
N(k
),P
(k)
Cond.Inic.N(0) = 120,P(0) = 40.Parámetros:λ = 1.5, a = 0.01.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Software de Simulación de Sistemas de TiempoDiscreto
Si bien la simulación de un sistema de tiempo discreto estrivial, su representación puede ser complicada.
En el caso de los dos filtros en cascada, por ejemplo,resulta tedioso deducir las ecuaciones.
Esto motivó el herramientas de software capaces de trataren forma gráfica con los Diagramas de Bloques.
Matlab, Dymola y PowerDEVS, sólo por nombrar algunosejemplos, permiten simular Diagramas de Bloques deSistemas de Tiempo Discreto.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto
Ecuaciones en DiferenciasDiagramas de Bloques
Simulación de Sistemas de Tiempo Discreto
Bibliografía
J. Proakis and D. Manolakis.Digital Signal Processing.Prentice Hall, 4th. edition, 2006.
Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto