Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y...

20
Ecuaciones en Diferencias Diagramas de Bloques Simulación de Sistemas de Tiempo Discreto Modelado y Simulación de Sistemas Dinámicos: Métodos, Algoritmos y Herramientas Sistemas de Tiempo Discreto Ernesto Kofman Laboratorio de Sistemas Dinámicos y Procesamiento de la Información FCEIA - Universidad Nacional de Rosario. CIFASIS – CONICET. Argentina Ernesto Kofman. Modelado y Simulación de Sistemas Dinámicos Sistemas de Tiempo Discreto

Transcript of Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y...

Page 1: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 2: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 3: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 4: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 5: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 6: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 7: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 8: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 9: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 10: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 11: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 12: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 13: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 14: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 15: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 16: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 17: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 18: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 19: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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

Page 20: Modelado y Simulaci n de Sistemas Din micos: M …kofman/files/eci_MyS_2.pdfMatlab, Dymola y PowerDEVS, sólo por nombrar algunos ejemplos, permiten simular Diagramas de Bloques de

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