Conectividad de EJS con Matlab/Simulink y otras herramientas

34
Conectividad de EJS con Matlab/Simulink y otras herramientas Madrid, Marzo 2010 Gonzalo Farias Departamento de Informática y Automática Universidad Nacional de Educación a Distancia (UNED) Curso-Taller CEA: Nuevas Posibilidades de Desarrollo en EJS

description

Curso-Taller CEA: Nuevas Posibilidades de Desarrollo en EJS. Conectividad de EJS con Matlab/Simulink y otras herramientas. Gonzalo Farias. Departamento de Informática y Automática Universidad Nacional de Educación a Distancia (UNED). Madrid, Marzo 2010. Contenidos. 2/33. Introducción - PowerPoint PPT Presentation

Transcript of Conectividad de EJS con Matlab/Simulink y otras herramientas

Page 1: Conectividad de EJS con Matlab/Simulink y otras herramientas

Conectividad de EJS con Matlab/Simulinky otras herramientas

Madrid, Marzo 2010

Gonzalo Farias

Departamento de Informática y AutomáticaUniversidad Nacional de Educación a Distancia (UNED)

Curso-Taller CEA: Nuevas Posibilidades de Desarrollo en EJS

Page 2: Conectividad de EJS con Matlab/Simulink y otras herramientas

1. Introducción• Motivación• Enfoque de interoperación

2. API de interoperación ExternalApp• Protocolo de Interoperación de bajo nivel• Protocolo de interoperación de alto nivel• Protocolo de interoperación remoto: Servidor JIM

3. Librería ExternalApp en EJS • Usando la librería ExternalApp.jar desde EJS• Taller 1: Utilizando Matlab• Taller 2: Utilizando Simulink• Utilizando el servidor JIM

4. Elemento ExternalApp en EJS• Configurando el elemento ExternalApp• Taller 3: Utilizando el elemento ExternalApp

5. Conclusiones

2/33Contenidos

Page 3: Conectividad de EJS con Matlab/Simulink y otras herramientas

1. Introducción• Motivación• Enfoque de interoperación

2. API de interoperación ExternalApp• Protocolo de Interoperación de bajo nivel• Protocolo de interoperación de alto nivel• Protocolo de interoperación remoto: Servidor JIM

3. Librería ExternalApp en EJS • Usando la librería ExternalApp.jar desde EJS• Taller 1: Utilizando Matlab• Taller 2: Utilizando Simulink• Utilizando el servidor JIM

4. Elemento ExternalApp en EJS• Configurando el elemento ExternalApp• Taller 3: Utilizando el elemento ExternalApp

5. Conclusiones

3/33Contenidos

Page 4: Conectividad de EJS con Matlab/Simulink y otras herramientas

Una típica simulacion de ingeniería

Bajo nivel de interactividad y visualización

4/33Introducción

Page 5: Conectividad de EJS con Matlab/Simulink y otras herramientas

Una simulación interactiva

Alto nivel de interactividad y visualización

5/33Introducción

Page 6: Conectividad de EJS con Matlab/Simulink y otras herramientas

Creando una GUI con Matlab

Problema: Es difícil crear y reutilizar la GUI!

6/33Introducción

Page 7: Conectividad de EJS con Matlab/Simulink y otras herramientas

Solución:

1. Usar software de ingeniería para crear la simulación de ingeniería.

2. Usar un lenguaje dedicado o herramientas de autor para crear la GUI interactiva.

7/33Introducción

Interfaz HumanaSimulación de Ingeniería

Protocolo deComunicación

Page 8: Conectividad de EJS con Matlab/Simulink y otras herramientas

Enfoque de Interoperación (1/3)

El Enfoque de Interoperación es una metodología uniforme y efectiva para crear simulaciones de ingeniería interactivas manipulando el software de ingeniería desde una interfaz humana interactiva.

8/33Introducción

Page 9: Conectividad de EJS con Matlab/Simulink y otras herramientas

Enfoque de Interoperación (2/3)

API del Protocolo de Comunicación

9/33Introducción

Protocolo de bajo nivel

Protocolo de alto nivel Protocolo Remoto

Page 10: Conectividad de EJS con Matlab/Simulink y otras herramientas

10/33Introducción

Enfoque de Interoperación (3/3)

La GUI puede reutilizarse para otras simulaciones

Page 11: Conectividad de EJS con Matlab/Simulink y otras herramientas

1. Introducción• Motivación• Enfoque de interoperación

2. API de interoperación ExternalApp• Protocolo de Interoperación de bajo nivel• Protocolo de interoperación de alto nivel• Protocolo de interoperación remoto: Servidor JIM

3. Librería ExternalApp en EJS • Usando la librería ExternalApp.jar desde EJS• Taller 1: Utilizando Matlab• Taller 2: Utilizando Simulink• Utilizando el servidor JIM

4. Elemento ExternalApp en EJS• Configurando el elemento ExternalApp• Taller 3: Utilizando el elemento ExternalApp

5. Conclusiones

11/33Contenidos

Page 12: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Protocolo de interoperación de bajo nivel

Salida

12/33API de interoperación ExternalApp

Page 13: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Protocolo de interoperación de alto nivel

Salida

13/33API de interoperación ExternalApp

Page 14: Conectividad de EJS con Matlab/Simulink y otras herramientas

14/33API de interoperación ExternalApp

• Protocolo de interoperación remoto: servidor JIM

Page 15: Conectividad de EJS con Matlab/Simulink y otras herramientas

1. Introducción• Motivación• Enfoque de interoperación

2. API de interoperación ExternalApp• Protocolo de Interoperación de bajo nivel• Protocolo de interoperación de alto nivel• Protocolo de interoperación remoto: Servidor JIM

3. Librería ExternalApp en EJS • Usando la librería ExternalApp.jar desde EJS• Taller 1: Utilizando Matlab• Taller 2: Utilizando Simulink• Utilizando el servidor JIM

4. Elemento ExternalApp en EJS• Configurando el elemento ExternalApp• Taller 3: Utilizando el elemento ExternalApp

5. Conclusiones

15/33Contenidos

Page 16: Conectividad de EJS con Matlab/Simulink y otras herramientas

16/33Librería ExternalApp en EJS

Demo: Usando la librería ExternalApp.jar desde EJS

Page 17: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 1 (1/5): Dibujando una señal – motor EJS

17/33Librería ExternalApp en EJS

Variables

Evolución

Page 18: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 1 (2/5): Dibujando una señal – motor EJS

18/33Librería ExternalApp en EJS

Vista

Simulación

Page 19: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 1 (3/5): Dibujando una señal – motor EJS

19/33Librería ExternalApp en EJS

Elementos Vista

Page 20: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 1 (4/5): Dibujando una señal – motor Matlab

20/33Librería ExternalApp en EJS

LibreríaVariables

Elemento Vista

Page 21: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 1 (5/5): Dibujando una señal – motor Matlab

21/33Librería ExternalApp en EJS

Inicialización y Evolución

Simulación

Page 22: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 2 (1/3): Pelota que rebota – Motor EJS

22/33Librería ExternalApp en EJS

Simulación en EJS

Page 23: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 2 (2/3): Pelota que rebota – Motor Simulink

23/33Librería ExternalApp en EJS

Inicialización

Evolución

Page 24: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 2 (3/3): Pelota que rebota – Motor Simulink

24/33Librería ExternalApp en EJS

Elemento Vista

Page 25: Conectividad de EJS con Matlab/Simulink y otras herramientas

25/33Librería ExternalApp en EJS

Demo: Utilizando el servidor JIM

Page 26: Conectividad de EJS con Matlab/Simulink y otras herramientas

1. Introducción• Motivación• Enfoque de interoperación

2. API de interoperación ExternalApp• Protocolo de Interoperación de bajo nivel• Protocolo de interoperación de alto nivel• Protocolo de interoperación remoto: Servidor JIM

3. Librería ExternalApp en EJS • Usando la librería ExternalApp.jar desde EJS• Taller 1: Utilizando Matlab• Taller 2: Utilizando Simulink• Utilizando el servidor JIM

4. Elemento ExternalApp en EJS• Configurando el elemento ExternalApp• Taller 3: Utilizando el elemento ExternalApp

5. Conclusiones

26/33Contenidos

Page 27: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Configurando el Elemento ExternalApp

27/33Elemento ExternalApp en EJS

Page 28: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 3 (1/3): Dibujando una señal con Elemento

28/33Elemento ExternalApp en EJS

Configurar Matlab

Page 29: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 3 (2/3): Dibujando una señal con Elemento

29/33Elemento ExternalApp en EJS

Configurar y Enlazar Variables Matlab

Page 30: Conectividad de EJS con Matlab/Simulink y otras herramientas

• Taller 3 (3/3): Pelota que rebota con Elemento

30/33Elemento ExternalApp en EJS

Configurar y Enlazar Variables Simulink

Page 31: Conectividad de EJS con Matlab/Simulink y otras herramientas

1. Introducción• Motivación• Enfoque de interoperación

2. API de interoperación ExternalApp• Protocolo de Interoperación de bajo nivel• Protocolo de interoperación de alto nivel• Protocolo de interoperación remoto: Servidor JIM

3. Librería ExternalApp en EJS • Usando la librería ExternalApp.jar desde EJS• Taller 1: Utilizando Matlab• Taller 2: Utilizando Simulink• Utilizando el servidor JIM

4. Elemento ExternalApp en EJS• Configurando el elemento ExternalApp• Taller 3: Utilizando el elemento ExternalApp

5. Conclusiones

31/33Contenidos

Page 32: Conectividad de EJS con Matlab/Simulink y otras herramientas

• El enfoque de interoperación divide el desarrollo de una simulación interactiva de ingeniería en dos partes, la interfaz interactica y la simulación de ingeniería.

• Se ha descrito un protocolo de comunicación para conectar ambas partes de la simulación.

• La librería ExternalApp presenta una implementación para el protocolo de comunicación.

• El elemento ExternalApp puede ser utilizado con facilidad desde EJS para construir simulaciones interactivas.

32/33Conclusiones

Page 33: Conectividad de EJS con Matlab/Simulink y otras herramientas

• G. Farias, S. Dormido, F. Esquembre (2011) Interactive Human Interfaces with Engineering Software , Proceedings of the 18th IFACWorld Congress 2011, accepted, Milan, Italy.

• E. Fábregas, G. Farias, S. Dormido-Canto, S. Dormido, F. Esquembre (2011) Developing a remote laboratory for engineering education, Computer & Education, ISSN 0360-1315, (accepted).

• Farias G., De Keyser R., Dormido S., Esquembre F. (2010) Developing Networked Control Labs: A Matlab and Easy Java Simulations Approach, IEEE Transactions on Industrial Electronics, ISSN 0278-0046, Vol. 57, No. 10, pp. 3266-3275.

• G. Farias, R. De Keyser, S. Dormido, F. Esquembre (2009) Building Remote Labs Using Easy Java Simulation and Matlab, The European Control Conference 2009, August 23-26, 2009, ISBN: 978-963-311- 369-1, Budapest, Hungary.

• Farias G., Arzen K., Cervin A., Dormido S., Esquembre F. (2010) Teaching Embedded Control Systems The International Journal of Engineering Education, ISSN 0949-149X, Vol. 26, No. 4, pp. 938-949.

• G. Farias, F. Esquembre, J. Sánchez, S. Dormido, H. Vargas, S. Dormido-Canto, R. Dormido, N. Duro (2006) Laboratorios Virtuales Remotos Usando Easy Java Simulations y Simulink, Jornadas de Automática. Almería, España.

• G. Farias, F. Esquembre, J. Sánchez, S. Dormido, H. Vargas, S. Dormido-Canto, R. Dormido, N. Duro (2006) Desarrollo de laboratorios virtuales, interactivos y remotos utilizando Easy Java Simulations y Modelos Simulink, XII Latin-American Congress on Automatic Control. Bahía, Brasil.

• S. Dormido, F. Esquembre, G. Farias, J. Sánchez (2005) Adding interactivity to existing Simulink models using Easy Java Simulations, 44th IEEE Conference on Decision and Control and European Control Conference (CDC-ECC’05) Seville, Spain.

33/33Referencias

Page 34: Conectividad de EJS con Matlab/Simulink y otras herramientas

Conectividad de EJS con Matlab/Simulinky otras herramientas

Madrid, Marzo 2010

Gonzalo Farias

Departamento de Informática y AutomáticaUniversidad Nacional de Educación a Distancia (UNED)

Curso-Taller CEA: Nuevas Posibilidades de Desarrollo en EJS