Simulación de Sistemas de Control en JAVA: Bases Conceptuales y Metodológicas para un Laboratorio Virtual

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Simulación de Sistemas de Control en JAVA: Bases Conceptuales y Metodológicas para un Laboratorio Virtual"

Transcripción

1 n : 2006 Proyecto de Grado Presentado ante la ilustre Universidad de Los Andes como requisito parcial para obtener el Título de Ingeniero de Sistemas Simulación de Sistemas de Control en JAVA: Bases Conceptuales y Metodológicas para un Laboratorio Virtual Por Br. Leticia Esmeralda Torres Díaz Tutor: Richard Márquez Cotutor: Wladimir Rodríguez Mérida, Venezuela, Junio 2006 Derechos Reservados c 2006 Universidad de Los Andes

2 Simulación de Sistemas de Control en JAVA: Bases Conceptuales y Metodológicas para un Laboratorio Virtual Br. Leticia Esmeralda Torres Díaz Proyecto de Grado Control y Automatización, 107 páginas Resumen: La World Wide Web ha desarrollado un gran potencial para nuevos métodos de enseñanza que pueden servir de complemento para la educación tradicional. Una de las iniciativas más populares en las instituciones académicas es la creación de laboratorios virtuales que permiten exponer a los estudiantes a un conjunto de experiencias prácticas e interactivas a través de herramientas tecnológicas y metodologías de última generación. En este trabajo se presenta el desarrollo de un entorno de simulación, que tiene por objeto brindar nuevas alternativas para acompañar al proceso de enseñanza-aprendizaje de las asignaturas relacionadas con sistemas de control de la carrera de Ingeniería de Sistemas de la Universidad de Los Andes. Para la creación de las simulaciones de sistemas de control dirigidas a conformar un laboratorio virtual, estudiamos distintas formas de estructurar sus componentes y evaluamos las herramientas (lenguajes de programación y motores matemáticos) disponibles para su construcción. Para el desarrollo de las simulaciones, aprovechamos las capacidades de Easy Java Simulations, entorno gráfico de programación para el desarrollo de simulaciones científicas con Java, con el cual las simulaciones pueden se convertidas en elementos Web dinámicos del lado del cliente (Java Applets), utilizando como motor de numérico a un conjunto de funciones programadas en Java y a sus librerías matemáticas nativas. Palabras clave: Sistemas de control, Simulación interactiva, Lenguaje Java, Laboratorio virtual, Enseñanza basada en Web

3 Índice Índice de Figuras Agradecimientos vi viii 1 Introducción Propuesta Objetivos Organización Recursos para la enseñanza práctica basada en Web Laboratorios tradicionales versus laboratorios virtuales Laboratorios tradicionales Laboratorios virtuales Ambientes de simulación basada en Web Herramientas para la construcción de laboratorios virtuales de simulación Herramientas para la GUI Herramientas para el motor de simulación Herramientas para el servidor Web Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación Metodología versus ciclo de vida Metodología de desarrollo propuesta Caso de estudio: un sistema no lineal clásico Modelado del sistema iii

4 3.1.1 Restricciones físicas Análisis del sistema de control Especificaciones de la respuesta temporal Linealización aproximada Controlabilidad Observabilidad Estrategias de control Estrategia I: control por realimentación del vector de estados Estrategia II: control por realimentación con observador dinámico de estados Desarrollo del laboratorio virtual para simulación de sistemas de control Análisis Etapa 1: descripción y dominio de la aplicación Etapa 2: requerimientos del sistema Diseño Diseño instruccional (nivel educativo) Diseño de la presentación (nivel comunicacional) Diseño de la interfaz (nivel computacional) Desarrollo Tecnologías y herramientas Construcción de las simulaciones en Java con Easy Java Simulations Construcción del LVSSC Evaluación Administración Instalación y configuración Administración previa al uso del LVSSC Conclusiones y recomendaciones 93

5 Bibliografía 96 A Glosario 99 B Misceláneas 102 B.1 Código fuente de las simulaciones en Java B.2 Información complementaria: Applets de Java B.2.1 Ciclo de vida del Applet B.2.2 Restricciones de seguridad del Applet de Java

6 Índice de Figuras 2.1 Configuraciones de los laboratorios virtuales (Dormido et al. 2004) Elementos característicos de la simulación basada en Web Funcionamiento de Matlab Web Server Jerarquía de clases de Java en donde se ubica JMatLink Métodos básicos de JMatLink Funcionamiento de JMatLink Paradigma arquitectónico MVC Funcionamiento de Easy Java Simulations Modelo de procesos de ingeniería (de Jensen y Tonies, 1979) Metodología de análisis, diseño y desarrollo de ambientes educativos computarizados basados en Internet (Galvis & Mendoza 1999) Modelo Físico de la Nave Ubicación de los polos en el plano complejo s a partir de ζ y ω n Diagrama de bloques del control lineal por realimentación del vector de estado para sistemas no lineales Diagrama de bloques del control lineal por realimentación del vector de estado para sistemas no lineales, con un Observador dinámico de estado Dimensiones pedagogicas del diseño instruccional del LVSSC Mapas conceptuales de las etapas de un ejercicio de sistemas de control Aspectos que conforman la experiencia del usuario (Fuente: Maria J. Lamarca. Universidad Complutense de Madrid) Mapa conceptual de navegación del LVSSC) Mapa conceptual del entorno de simulación para la estrategia de control I 61 vi

7 4.6 Mapa conceptual del entorno de simulación para la estrategia de control II Bosquejo tipo 1 para las páginas Web Bosquejo tipo 2 para las páginas Web Bosquejo de las ventanas emergentes Bosquejo de la GUI principal del entorno de simulación Bosquejo del elemento de registro gráfico del entorno de simulación Flujo entre las capas de una arquitectura MVC Declaración de las variables del modelo matemático Declaración de las variables del observador Declaración de las variables del controlador Declaración de las variables de la simulación Inicialización de las variables del modelo matemático Declaración de ecuaciones diferenciales ordinarias del modelo matemático Inicialización de las variables del modelo matemático Inicialización de las variables del modelo matemático Propiedades de un elemento gráfico tipo contenedor en EJS Inicialización de las variables del modelo matemático Declaración de ecuaciones diferenciales ordinarias del modelo matemático Declaración de ecuaciones diferenciales ordinarias del modelo matemático Opciones de EJS Declaración de ecuaciones diferenciales ordinarias del modelo matemático Declaración de ecuaciones diferenciales ordinarias del modelo matemático Simulación de la respuesta del sistema aeroespacial del ejemplo piloto, con la estrategia de control I Simulación de la respuesta del sistema aeroespacial del ejemplo piloto, con la estrategia de control II B.1 Código Java del archivo NaveControlCG utilizado para la simulación de la estrategia de control II B.2 Código Java del archivo NaveControlCGApplet utilizado para el Applet de simulación de la estrategia de control II B.3 Ciclo de vida de un Applet de Java

8 Agradecimientos A Dios Amor, Padre-Madre... A mi amada familia, por su inmenso apoyo espiritual y material. Este primer fruto va dedicado a Ustedes. A Hosward, inspiración, fuerza y refugio, aún en la distancia. A mis amigos, en especial a Yuri, Ana Lucía, Anais, Carmen y Eliel, por su ayuda e incentivo que de muchas formas permitieron concluir este trayecto de mi carrera. Al profesor Richard, por su guía oportuna, por su mano siempre extendida y por su paciencia infinita. Al profesor Mario, por su sabiduría de vida y para la vida. Al profesor Francisco Esquembre, de la Universidad de Murcia por su valiosísima contribución a este trabajo. Al profesor Wladimir y el profesor Juan y el profesor Gilberto por su comprensión y buena disposición en todo momento. A todos los profesores de la Escuela de Ingeniería de Sistemas, que brindaron sus conocimientos para la construcción de las bases... las paredes y el techo de esta obra. A mi Alma Mater, la Universidad de Los Andes, por acoger las oportunidades, personas, recursos y situaciones que me permitieron llegar hasta aquí. GRACIAS. viii

9 Capítulo 1 Introducción Al igual que cuando células aisladas se conectan y evolucionan para formar el cerebro humano, las computadoras se conectan y evolucionan para formar la más poderosa herramienta para el aprendizaje e intercambio de conocimiento... Las tecnologías de información y comunicación (TICs) pueden jugar muchos papeles en la enseñanza y en el aprendizaje de las ciencias, en particular en el desarrollo de habilidades científicas: cálculo, análisis, interpretación, modelado, etc. La evolución del Internet ha hecho posible compartir información y servicios de forma extendida y eficiente. Esto ha permitido a las personas involucradas en el campo de la enseñanza poner a disposición no solo su experiencia sino también una gran cantidad de recursos y aplicaciones en diferentes áreas del conocimiento. La educación es una de las aplicaciones más importantes del Internet. Tendencias señalan el papel fundamental de las TICs como recurso de apoyo efectivo en el proceso de educación tradicional pues provee muchas maneras de mejorar la experiencia de aprendizaje y expandir las oportunidades educativas para los estudiantes, véase Poindexter & Heck (1999). La enseñanza de sistemas de control y otros cursos de ingeniería con un fuerte contenido práctico en donde resulta fundamental la utilización de herramientas de modelado y simulación dinámica para la aplicación y verificación de los aspectos teóricos, apunta en la actualidad a la incorporación de elementos que permitan expandir la experiencia del laboratorio tradicional a ambientes libres de limitaciones espacio-temporales

10 1 Introducción 2 (acceso las 24 horas los 7 días de la semana, desde cualquier lugar), a través del uso de la Web. El trabajo de Fishwick (1996) presentado en la Winter Simulation Conference hace ya diez años en la ciudad de San Francisco, está considerado como uno de los primeros en describir a la simulación basada en el Web como una realidad que ya estaba presente en las ideas y trabajos de multitud de investigadores de todo el mundo vinculados al área de la simulación por computador (Dormido et al. 2004). Desde entonces, han sido numerosos los estudios hechos en esta área, destacándose los proyectos del Departamento de Informática de la Universidad Nacional de Educación a Distancia (UNED) en España como pioneros en el desarrollo de nuevos paradigmas de laboratorios para la realización de experimentos prácticos a través de Internet. En la Universidad de Los Andes (ULA), Venezuela, destacan los aportes de Puente & Ríos (2003) orientado a laboratorios remotos de control, y de Calderón-Vielma (1999) dirigido a la enseñanza de automatización e instrumentación industrial mediante la integración de varias herramientas. En la última década, son numerosas las disciplinas en las que se utilizan los laboratorios virtuales remotos y de simulación para la realización de prácticas, sobre todo en el área de las ingenierías (Jiménez et al. 2005, Candelas & Sánchez 2005). Gran parte de éstos recursos están conformados por aplicaciones que han sido construidas para el estudio analítico de sistemas de control desde el punto de vista gráfico y/o numérico, a través de interfaces de usuario de elevada interactividad que permiten visualizar el comportamiento de un sistema conforme se modifican los valores de los parámetros y variables a distintos niveles. Hasta hace unos pocos años la mayoría de las aplicaciones eran programadas para funcionar localmente y en principio eran diseñadas para la industria con el objeto de facilitar el control de procesos bien estructurados y también con propósitos de entrenamiento para operadores de planta antes de enfrentar situaciones reales críticas. Con el avance de la tecnología, surge la necesidad de acercar al estudiante de alguna forma a las experiencias que le permitirán reaccionar ante situaciones particulares en ambientes industriales cada vez más sofisticados, por lo que gradualmente, los recursos desarrollados por los departamentos de investigación de grandes compañías, comienzan

11 1.1 Propuesta 3 a utilizarse con fines educativos en las universidades para las carreras de Ingeniería de Sistemas, Automática y afines, véase Sanchez et al. (2002). Las aplicaciones disponibles hasta la fecha van desde laboratorios remotos en donde es posible acceder a través de Internet a un sistema físico real para su manipulación directa (Müller & Waller 1999) (Sánchez et al. 2004) hasta laboratorios virtuales de simulación diseñados para potenciar el aprendizaje a través de características como visualización dinámica, animación de elementos y tutoriales. En la actualidad disponemos de poderosos leguajes de programación de alto nivel como C, C++ y Java, y algunas herramientas de ingeniería, basadas en ventanas e interfaces gráficas tales como MATLAB R, LabVIEW, Scilab, GNU Octave y SysQuake, que brindan alternativas como motores matemáticos y de simulación, ampliamente utilizadas. El desarrollo de este proyecto se encuentra motivado en una primera instancia a la evaluación las alternativas disponibles para implementar ambientes de simulación con fines didácticos para materias de índole científico. Como resultado de tal evaluación, esta contribución tiene como propósito final crear un entorno de simulación sencillo accesible desde Internet para el desarrollo de prácticas y ejercicios preparatorios en áreas del conocimiento como control de sistemas utilizando las herramientas de simulación numérica mejor adaptadas a nuestro ámbito académico. En este trabajo, la simulación de sistemas de control se enmarca en el contexto de un laboratorio virtual, dirigido a mostrar las características dinámicas de un sistema clásico ante varios esquemas de control, donde el usuario puede definir distintos escenarios a través de la variación de los parámetros del modelo matemático. De esta forma proveemos un enfoque más práctico e intuitivo para comprender las abstracciones de la teoría de sistemas de control. 1.1 Propuesta Considerando los pocos recursos de aprendizaje interactivo disponibles en asignaturas con alto contenido práctico de ingeniería de control y afines en la Facultad de Ingeniería de la Universidad de Los Andes, y tomando en cuenta que la simulación dinámica es una

12 1.2 Objetivos 4 herramienta básica para verificar aspectos teóricos, nos vemos motivados a proponer: Diseñar y construir un ambiente de simulación para un laboratorio virtual, que en su fase funcional facilite el estudio analítico de sistemas de control desde el punto de vista gráfico y/o numérico, a través de una interfaz de usuario de elevada interactividad que permita visualizar el comportamiento de un sistema conforme se modifican los valores de los parámetros y variables a distintos niveles. La propuesta incluye aprovechar las ventajas Económicas, Espaciales y Temporales que ofrecen los laboratorios virtuales y el uso de Internet. Para realizar este proyecto se examinan las ventajas y limitaciones de los productos de software y hardware disponibles para nuestros fines. Posteriormente, considerando la naturaleza pedagógica de los laboratorios virtuales, se procede al análisis, diseño, desarrollo, evaluación e implementación del entorno de simulación tomando como base una metodología propuesta por Galvis & Mendoza (1999) especializada para el desarrollo de ambientes vituales educativos. A través de esta metodología, y luego de diversas revisiones y evaluaciones, se plantea como solución general la utilización de elementos Web dinámicos del lado del cliente (Java Applets) para sustentar las simulaciones del laboratorio virtual, utilizando como herramienta de desarrollo a Easy Java Simulations, y como motor de numérico a un conjunto de funciones programadas en Java y sus librerías matemáticas nativas. 1.2 Objetivos Los objetivos generales y específicos de este proyecto se resumen en las siguientes líneas: Objetivo general: desarrollar un entorno de simulación interactiva para un laboratorio virtual destinado a aplicaciones de sistemas de control. Objetivos específicos: Permitir a los usuarios:

13 1.3 Organización 5 Disponer de vistas múltiples de un sistema ante la variación de parámetros. Abordar los mecanismos básicos de control a través de la exploración, verificación de hipótesis y descubrimiento. Permitir a los docentes: Mostrar conceptos de sistemas de control. Proporcionar nuevas perspectivas de problemas de interés académico. Ilustrar aspectos de análisis y diseño. 1.3 Organización Este trabajo está organizado de la siguiente de la manera: El Capítulo 2 está dedicado a presentar los conceptos teóricos y aspectos relacionados a los laboratorios virtuales de simulación. También se incluyen secciones que muestran las distintas herramientas disponibles para la construcción de un entorno de simulación basada en Web, así como una descripción de los aspectos básicos de las herramientas de más amplia utilización: MATLAB R, un entorno gráfico computacional muy poderoso de modelado y simulación, y Easy Java Simulation (EJS), un generador de código que ayuda a crear simulaciones dinámicas interactivas en el lenguaje Java. En el Capítulo 3 se describe brevemente el modelo matemático de la aplicación no lineal que mostramos como caso de estudio en la implementación del entorno de simulación de un laboratorio virtual de sistemas de control, así como los principios de control de sistemas necesarios para comprender las entradas y salidas definidas para las simulaciones. El Capítulo 4 comprende la aplicación paso a paso de la metodología de desarrollo con base a la propuesta de Galvis & Mendoza (1999), seguida para diseñar y construir el entorno de simulación para un laboratorio virtual. Esta metodología incluye la descripción y análisis de requerimientos, diseño, la presentación de los componentes necesarios para la implementación, el proceso de construcción del laboratorio y finalmente las características finales y pruebas al sistema. El trabajo finaliza con las conclusiones y algunas recomendaciones.

14 Capítulo 2 Recursos para la enseñanza práctica basada en Web La Web debe su potencialidad en la educación a dos elementos: los sistemas hipermedia y multimedia como forma de estructurar la información, y las redes de área extendida (Internet por ejemplo) como soporte de conexión y persistencia de la información (Dormido & Torres 2005, Sanchez et al. 2002). Este hecho ha permitido el surgimiento de aplicaciones que representan un puente entre el aprendizaje pasivo y el compromiso activo, siendo muy importantes para que los estudiantes desarrollen el juicio práctico y comprendan cómo con cierto tipo de recursos y utilizando modelos adecuados pueden ser capturados los comportamientos de un proceso. Éstas aplicaciones constituyen en la actualidad un complemento eficaz de las formas de educación convencionales. En los centros de investigación y en las universidades los espacios destinados para la realización de actividades prácticas en áreas como automatización, instrumentación, computación, control, robótica, simulación y dinámica de sistemas, estaban limitados en principio a estructuras físicas a modo de modelos a pequeña escala de la realidad llamados laboratorios.

15 2.1 Laboratorios tradicionales versus laboratorios virtuales Laboratorios tradicionales versus laboratorios virtuales Actualmente cabe diferenciar estos típicos laboratorios, de los laboratorios virtuales que deben su auge a la evolución de los sistemas computacionales Laboratorios tradicionales Los laboratorios tradicionales son espacios donde los estudiantes llevan a la práctica sus conocimientos teóricos con la finalidad de ganar una experiencia lo más cercana posible a la vida real, solo que con las limitaciones de un ambiente físicamente confinado y con modelos reducidos a un par de variables (Roberts 2004). El contacto directo del estudiante con los aspectos prácticos de un contenido resulta en el desarrollo significativo de habilidades cognitivas, además de proporcionar una experiencia por lo general más interesante que un salón de clases. Esta es la ventaja más significante de un laboratorio tradicional. Las dos principales desventajas de un laboratorio tradicional son los costos y las restricciones de los recursos (el costo de adquirir, almacenar y mantener los equipos puede llegar a ser grande). Por otra parte, el acceso de los estudiantes a los laboratorios en la mayoría de los casos está restringido a un pequeño número de unidades de experimentación y a un cierto horario Laboratorios virtuales Los laboratorios virtuales son laboratorios basados en simulaciones por computador que pueden lucir, operar y producir resultados similares a los laboratorios reales. En el mejor de los casos, estos laboratorios permiten trabajar con modelos más completos gracias a la capacidad de manejo numérico de los computadores. En comparación a los laboratorios tradicionales, los laboratorios virtuales se caracterizan por su versatilidad y flexibilidad debido a que están basados en software (Roberts 2004). Entre las ventajas de los laboratorios virtuales están: Costo: como los computadores reemplazan algunos o todos los equipos de laboratorio, los costos de adquisición, almacenamiento y mantenimiento se reducen. Sin

16 2.1 Laboratorios tradicionales versus laboratorios virtuales 8 embargo, esto está sujeto a los costos involucrados en el desarrollo del software requerido. Seguridad: un laboratorio virtual puede filtrar la configuración de parámetros potencialmente destructivos en la vida real, o simular el daño que podrían causar. Disponibilidad espacial y temporal: si un laboratorio está disponible a través de Internet (o cualquier otra red), podemos acceder al él en cualquier momento, desde cualquier lugar. Presentación del material: las capacidades multimedia de los computadores hacen posible presentar el material de diversas maneras, mejorando progresivamente el aprendizaje del usuario. Registro: como el laboratorio virtual forma parte de un sistema computarizado, en algunos casos, ciertas capacidades se pueden aprovechar para grabar automáticamente en un registro, el proceso y los datos generados en la simulación. Entre las desventajas de los laboratorios virtuales tenemos: Poco realismo: el contexto de la vida real siempre contiene un elemento de impredecibilidad, que en muchos casos puede proveer de lecciones valiosas, como sucede comúnmente con un laboratorio tradicional. Problemas de diseño: los laboratorios virtuales requieren ser diseñados con mucho detalle y cuidado. Si no se diseñan apropiadamente, pueden amplificar los problemas existentes y crear otros nuevos. Falta de control del usuario: por lo general los usuarios deben completar las experiencias del laboratorio virtual según se lo indica el computador. Sin embargo, en algunos casos, la falta de contacto cara a cara con el profesor brinda menos oportunidades de discutir ideas o conceptos que caen fuera del rango cubierto por la simulación. La solución ideal para aprovechar las ventajas de ambos tipos de laboratorios consiste en: combinarlos. Es importante comprender que aunque en los procesos formativos básicos para materias prácticas, los sistemas a distancia facilitan el trabajo y

17 2.1 Laboratorios tradicionales versus laboratorios virtuales 9 aprendizaje individualizado, nunca sustituyen el rol del profesor. Más bien el sistema ayuda al profesor a mejorar la interactividad con el estudiante y sirven para complementar y enriquecer el proceso de aprendizaje. De acuerdo con las distintas tecnologías empleadas para construir los laboratorios virtuales, podemos categorizarlos en función de su configuración y funcionalidad (Candelas & Sánchez 2005). Figura 2.1: Configuraciones de los laboratorios virtuales (Dormido et al. 2004) Así, tenemos: 1. Laboratorios virtuales remotos (basados en sistemas reales): se accede a través de Internet a un sistema físico real para su manipulación directa. El software utilizado para el control remoto puede ser un navegador Web o una aplicación que necesita ser descargada del servidor del laboratorio. En algunas ocasiones puede que sea posible su visualización e incluso audición en tiempo real. 2. Laboratorios virtuales de simulación (basados en simulación):se pueden a su vez dividir en: (a) Laboratorio virtual monolítico: se descarga un Applet de Java, un ActiveX o una aplicación que se ejecuta dentro del navegador Web y reside en el computador del cliente. Es decir, la interfaz y el núcleo de la simulación constituyen un objeto único. Véase la Figura 2.1a. No se necesita la instalación de ningún entorno de simulación, salvo los correspondientes plug-ins o run-time de Java, LabVIEW o SysQuake. También se incluyen aplicaciones ejecutables independientes.

18 2.2 Ambientes de simulación basada en Web 10 (b) Laboratorio virtual híbrido: es análogo al monolítico pero necesita obligatoriamente que el cliente tenga instalado en su computador el entorno de modelado y simulación, como por ejemplo MATLAB R y Simulink R.Véase la Figura 2.1b. (c) Laboratorio virtual distribuido: el cliente (usuario) ejecuta la interfaz en el navegador Web mientras que el motor numérico es una aplicación (como por ejemplo MATLAB R y Simulink R ) residente del lado del servidor. El diálogo se establece mediante un servidor de manejo de solicitudes/respuestas usando alguna tecnología Web dinámica del lado del servidor (CGI, PHP, ASP, JSP o Java Servlets) o del lado del cliente (Java Script, Applets de Java o ActiveX). Véase la Figura 2.1c. Los laboratorios virtuales (en cualquiera de sus categorías) se diseñan de acuerdo al área de aplicación, véase Candelas & Sánchez (2005). Una de las aplicaciones más populares (y la que nos ocupa en este caso) es los sistemas de control y automatización. Así, los laboratorios virtuales de control, son los que permiten exportar elementos prácticos de los sistemas de control haciendo uso de los recursos y tecnologías informáticos. Estos laboratorios requieren que el usuario tenga conocimientos sólidos de matemáticas y teoría de control. La interactividad que caracteriza a los laboratorios virtuales de control, brinda a los usuarios la posibilidad de modificar y comparar salidas del modelo con sus expectativas, permitiéndoles explorar y emprender acciones que le ayuden a comprender el conocimiento detrás de la relación-resultado percibido (Martin et al. 2003). 2.2 Ambientes de simulación basada en Web Como sabemos por la descripción dada en la sección previa, en la actualidad los laboratorios vituales -en general- se sustentan en la Web. Por esta razón, también podemos referirnos a los laboratorios virtuales basados en simulación como ambientes de simulación basada en Web. A partir del concepto dado por Fishwick (1996), Dormido et al. (2004) redefine la simulación basada en Web como la convergencia de metodologías, recursos y

19 2.2 Ambientes de simulación basada en Web 11 aplicaciones de simulación por computador dentro del WWW localizadas en el lado del cliente o en el lado del servidor. En la simulación basada en Web existen dos aspectos que se interrelacionan de forma total (Dormido et al. 2004): 1. Enseñanza: el WWW se contempla en el campo de la simulación como un medio clave para distribuir y universalizar la información contenida en las herramientas de simulación. 2. Programas de simulación: gracias a las bondades del WWW, la interfaz gráfica con un software de simulación puede accedida y manipulada desde cualquier lugar del mundo con tan sólo disponer de un navegador Web. Incluso es posible realizar simulaciones distribuidas y paralelas. De esta menara podríamos pensar, tal y como sugiere Fishwick (1996), en la reutilización de pequeños modelos para construir sistemas más grandes y complejos. De lo expuesto anteriormente deducimos las características más relevantes de la simulación basada en Web. Así tenemos que: Se apoya en la arquitectura cliente-servidor (base del Internet) como medio para transmitir la información al cliente desde una ubicación remota. En este sentido entiéndase por cliente al proceso que inicia el diálogo o solicita los recursos y por servidor, al proceso que responde a las solicitudes. Emplea los recursos y tecnologías disponibles en el WWW para la interacción con herramientas de simulación ubicadas tanto del lado del cliente como del lado del servidor. Recurre a los navegadores Web como soporte para las interfaces gráficas que conectan al usuario con la simulación debido a que son independientes de la plataforma, son fáciles de usar y minimizan el software adicional requerido. Los componentes principales de la simulación basada en Web son: La interfaz gráfica de usuario o GUI (por las siglas en inglés de Graphic User Interface)

20 2.2 Ambientes de simulación basada en Web 12 Figura 2.2: Elementos característicos de la simulación basada en Web El motor de simulación El servidor Web La GUI es la que permite al usuario interactuar con los elementos propios de una simulación. Más específicamente en el caso de los laboratorios virtuales, la GUI integra elementos experimentales y teóricos. Básicamente, el elemento experimental está constituido por los esquemas de determinados procesos más un conjunto de diagramas de señal para analizar la evolución de los parámetros y variables del sistema en estudio a lo largo del tiempo de simulación. Asimismo, el elemento teórico está conformado por un conjunto de presentaciones conceptuales, por lo general en páginas HTML como forma de proporcionar o completar las bases teóricas necesarias para abordar la realización del trabajo práctico. El motor de simulación es el que se encarga de ejecutar los modelos matemáticos que sustentan a la simulación de los sistemas de interés. El motor de simulación puede ser un programa específico orientado al modelado y la simulación, o un conjunto de librerías para simulación creadas con un lenguaje de propósito común. El servidor Web es un programa de software que habilita la comunicación entre el

21 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 13 cliente y el servidor y hace posible el intercambio de recursos entre ellos. En el servidor están contenidos los mecanismos necesarios para manejar las solicitudes/respuestas y permitir la comunicación con los elementos, procesos y programas locales. Refiriéndonos explícitamente a los laboratorios virtuales de simulación, la forma de estructurar éstos componentes depende directamente de la forma de diseñarlos (Dormido et al. 2004). El diseño atiende a un conjunto de criterios como: La ubicación del motor matemático de cálculo, que puede ser del lado del cliente (caso en el cual la GUI y la simulación forman un todo que convive en el navegador Web) o del lado del servidor (caso en el cual la GUI y la simulación se ejecutan se ejecutan en computadores diferentes). La naturaleza del núcleo de la simulación, que considera si la simulación en sí misma ha sido construida por medio de una herramienta específica orientada al modelado y la simulación (como MATLAB R, Simulink R, GNU Octave, SciLab), o si se ha recurrido a lenguajes de alto nivel de propósito general (como C, C++, Fortran, Java) mediante el empleo de librerías específicas orientadas a la simulación. El grado de interactividad con el usuario, que puede ser pseudo-batch(no hay inmediatez de la respuesta en forma de datos numéricos o gráficos) u on-line(la simulación avanza de forma continua y dinámica, proporcionando los resultados inmediatos en un flujo continuo numérico o gráfico). Obsérvese en la Tabla 2.1 un ejemplo de elección de los criterios de diseño para la estructuración de los componentes en los casos de laboratorios virtuales de simulación monolíticos y distribuidos: 2.3 Herramientas para la construcción de laboratorios virtuales de simulación Las herramientas de software para construir un laboratorio virtual de simulación comprenden diversos tipos de tecnologías que se pueden agrupar en varias categorías de

22 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 14 Tabla 2.1: Ejemplo sobre la elección de criterios de diseño Criterio de Laboratorio virtual Laboratorio virtual diseño monolítico distribuido Ubicación del motor En el cliente En el servidor matemático Naturaleza del núcleo Lenguaje de Programa de modelado de simulación alto nivel y simulación Interactividad con el usuario on-line pseudo-batch acuerdo con dos de sus componentes base: la GUI y el motor de simulación. La selección de las herramientas más adecuadas puede variar de acuerdo a los propósitos funcionales del sistema que se desea implementar, considerando además los criterios de diseño expuestos en la sección anterior Herramientas para la GUI Las tecnologías más utilizadas como herramientas en el desarrollo de las GUI para laboratorios virtuales de simulación se dividen en cuatro tipos: 1. Controles ActiveX: son componentes Web autosuficientes para el desarrollo de páginas dinámicas. Tienen presencia en la programación del lado del servidor (para permitir conexiones a bases de datos, por ejemplo) y del lado del cliente (incluidos en la páginas Web para realizar acciones de diversa índole). Los controles ActiveX están limitados al empleo de navegadores Web de Microsoft R -Internet Explorer R - y a plataformas Windows R. 2. Applets de Java: son componentes de software escritos en lenguaje Java que corren en el contexto de otro programa, por ejemplo un navegador Web. Los Applets de Java son utilizados para proveer características interactivas que no pueden se proporcionadas por el HTML. Son descargados desde un servidor Web (como aplicaciones independientes o embebidos en una página Web) y ejecutados con un navegador Web en el lado del cliente. Los Applets de Java funcionan de

23 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 15 la misma manera en cualquier plataforma y ofrecen la posibilidad de construir interfaces en tiempo real. Este tipo de componente requiere que el navegador tenga el run-time de Java (es decir la máquina virtual de Java o JVM, que es el intérprete general de Java). 3. Virtual Reality Modeling Language (VRML): es un lenguaje de modelado de mundos virtuales para el desarrollo de interfaces gráficas tridimensionales, diseñado particularmente para su empleo en la Web. Consiste en un formato de archivos de texto en el que se especifican los vértices y las aristas de cada polígono tridimensional, además del color de su superficie. Para poder interpretar y ejecutar estos programas es necesario que el navegador en uso tenga instalado el plug-in correspondiente. 4. Lenguajes interpretados (o lenguajes de script): son los más utilizados para añadir interactividad a las páginas Web, pues permiten al diseñador de las páginas manipular datos introducidos a través de formularios y acceder a eventos tales como inicios, salidas y clicks de ratón. Estos lenguajes también proveen de funciones para cambiar imágenes, reproducir diferentes sonidos, correr programas alojados en el servidor y otras acciones en respuesta a los eventos registrados. Entre los lenguajes interpretados más utilizados están: PHP,JSP,ASP y JavaScript. Adicionalmente, existen otras tecnologías encargadas de implementar la funcionalidad cliente-servidor necesaria para el manejo de solicitudes y respuestas del usuario. Los Java Servlets y los Common Gateway Interface(CGI)son ejemplos de éstas tecnologías. En ambos, el navegador Web (cliente) envía solicitudes al servidor. El servidor procesa la solicitud ejecutando el programa de la aplicación requerida que reside del lado del servidor. Los programas de CGI se escriben típicamente en Perl o Visual Basic, mientras que los Java Servlets se escriben en Java. Aunque los programas CGI fueron el enfoque más tradicional al inicio, los Java Servlets son más utilizados en la actualidad sobre todo en el diseño de aplicaciones para simulación basada en Web, pues ofrecen ventajas significativas como: (a) ejecución en hilos y no en procesos (esto reduce la carga en el servidor cuando múltiples clientes solicitan simultáneamente); (b) independencia de la plataforma y (c) acceso a todos los API s de Java.

24 2.3 Herramientas para la construcción de laboratorios virtuales de simulación Herramientas para el motor de simulación Existen diversas alternativas en lo que se refiere al motor matemático y de simulación, que se pueden agrupar según la naturaleza del núcleo de simulación (segundo criterio de diseño de componentes que conforman un laboratorio virtual de simulación). Así, dentro del grupo de las herramientas orientadas al modelado y la simulación programas como MATLAB R, Mathematica R, LabVIEW, Scilab, GNU Octave y SysQuake, brindan alternativas -algunas más maduras que otras- adecuadas por su facilidad de integración con otros componentes y por su robusta estructura para procesamiento numérico y cálculos matemáticos complejos. Igualmente, dentro del grupo de las librerías específicas orientadas a la simulación construidas a partir de lenguajes de alto nivel de propósito general (como C, C++, Fortran y Java), existen trabajos interesantes que han resultado ser muy versátiles para procesos de simulación didácticos y de flujo continuo (por ejemplo, aplicaciones de tiempo real). Particularmente, en los últimos años, esfuerzos hechos por investigadores del área de las ciencias enfocados hacia la programación, han convertido a Java en una alternativa de manejo numérico para la elaboración de recursos de cálculo científico, como es el caso de la herramienta Easy Java Simulations creada por Esquembre (2005) y la librería JMatlib de Müller (2003). A continuación presentamos una breve descripción de las alternativas de más amplia utilización en cada uno de los grupos nombrados anteriormente. MATLAB R de The MathWorks, Inc. MATLAB R es un ambiente de computación técnica dotado de un lenguaje de programación de alto nivel (Mathworks 2005). Esta herramienta, junto con Simulink R, se puede considerar de facto como un estándar en el campo del control automático y de la simulación. Sus bondades permiten: Análisis de datos y visualización Cálculo numérico y simbólico Gráficos avanzados y visualización

25 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 17 Modelado y simulación Desarrollo de algoritmos y aplicaciones Funcionalidad extensible (integración con lenguajes de programación externos) La funcionalidad de MATLAB R como motor de simulación numérica puede extenderse a los ambientes de simulación Web, bien sea utilizando tecnologías existentes para ese propósito (como MATLAB Web Server R ) o proporcionando una solución propia (por ejemplo, a través de Java). Con fines de comprender bien el contexto en el que seleccionamos las herramientas para construir el laboratorio virtual de simulación, veremos brevemente en que consisten éstas alternativas. 1. MATLAB Web Server R es al igual que MATLAB R un producto de The Mathworks Inc., que permite desplegar cualquier aplicación (numérica y/o gráfica) basada en MATLAB R a través de la Web. Las aplicaciones de MATLAB R que corren en el MATLAB Web Server R pueden ejecutarse en cualquier máquina virtual con acceso a Internet utilizando un navegador Web como MS Internet Explorer, Netscape o Mozilla Firefox. Como resultado, los usuarios de las aplicaciones no requieren aprender MATLAB R, y MATLAB R no necesita estar instalado en la máquina cliente. Las aplicaciones de MATLAB R residen solo en la máquina servidor controlada por el desarrollador, véase la Figura 2.3: Sin embargo, MATLAB Web Server R presenta funcionalidad limitada (hardware de gran capacidad, tiempo de respuesta alto con resultados gráficos), además del considerable costo de la licencia y la complejidad para manejar hilos múltiples de ejecución (poca escalabilidad). Por este motivo, esta alternativa es utilizada por lo general bajo circunstancias favorables al propósito de la simulación (y asumiendo que se puede adquirir la licencia). Existe otra alternativa basada en Java, más flexible y económica, como veremos a continuación.

26 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 18 Figura 2.3: Funcionamiento de Matlab Web Server 2. JMatLink implementa el segundo enfoque planteado por Klimke (2003) al refererirse a las formas de acceder a MATLAB R desde la Web. JMatLink es un conjunto de librearias creadas por Müller ( ), desarrolladas como una DLL (Dynamic Link Library) que hace posible utilizar el motor computacional de MATLAB R dentro de aplicaciones locales de Java, Applets de Java y Servlets de Java. Todas sus funciones son métodos de la interfaz nativa de Java (JNI por las siglas del inglés de Java Native Interface) que son soportados por plataformas múltiples (Windows R 95/98/NT/ 2000/XP y UNIX) véase Müller ( ) y Y.Bai (2003). JMatLink está definido como una clase, localizada bajo java.lang.thread, tal como se muestra en la Figura 2.4: En la Figura 2.5 podemos observar el despliegue de una aplicación de prueba que muestra los principales métodos disponibles en JMatLink para establecer comunicación e intercambio de datos (numéricos y/o gráficos) con MATLAB R. Unificado a un Servlet de Java, JMatLink puede extender la funcionalidad de

27 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 19 Figura 2.4: Jerarquía de clases de Java en donde se ubica JMatLink Figura 2.5: Métodos básicos de JMatLink una aplicación que utilice MATLAB R a la Web, tal como lo muestra la Figura 2.6. Figura 2.6: Funcionamiento de JMatLink

28 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 20 Sin embargo, JMatLink también presenta un par de desventajas como lo son el grado de complejidad para programar su uso a través de la Web para muchos usuarios (requiere un alto nivel de manejo del lenguaje Java), además de no resultar adecuado para simulación de sistemas en tiempo real (procesamiento pseudo-batch). Easy Java Simulations(EJS) de Francisco Esquembre EJS es un entorno gráfico de programación para el desarrollo de simulaciones científicas con Java diseñada para apoyar a las personas involucradas en educación (estudiantes y profesores) en áreas como ciencias e ingeniería en la creación aplicaciones dinámicas e interactivas de simulación sin necesidad de un alto perfil en programación (Esquembre 2005). EJS permite desarrollar simulaciones interactivas de forma completa en tres pasos, utilizando una simplificación del paradigma arquitectónico Modelo-Vista-Controlador o MVC (Dormido et al. 2004, Esquembre 2005) que básicamente consiste en: 1. Modelo: que comprende la descripción del modelo matemático en términos de variables y relaciones, utilizando las librerías matemáticas de Java, 2. Vista: se refiere a la construcción de la GUI utilizando los elementos gráficos de la herramienta basados en las clases gráficas de Java, 3. Controlador: que se encarga de vincular los componentes de la GUI a las variables del modelo, definiendo las acciones que el usuario puede realizar en la simulación. Originalmente esta herramienta está diseñada para construir aplicaciones locales de Java o Applets de Java utilizando como motor numérico únicamente a Java. Versiones recientes han hecho posible utilizar EJS en conjunción con MATLAB R /Simulink R, usándolos como el motor numérico interno que describe y resuelve el modelo matemático, aunque es requisito tener instalado MATLAB R en la máquina de forma local. Actualmente se está trabajando en el desarrollo de la versión de EJS que permite correr aplicaciones que utilizan MATLAB R desde la instalación localizada en el servidor Web.

29 2.3 Herramientas para la construcción de laboratorios virtuales de simulación 21 Figura 2.7: Paradigma arquitectónico MVC Herramientas para el servidor Web En el caso del servidor Web, si bien no se requieren herramientas de construcción en el sentido estricto de la palabra, debe seleccionarse el software adecuado que brinde la funcionalidad requerida. Los cuatro programas más populares en el grupo de los servidores Web se listan a continuación: Apache HTTP Server de Apache Software Foundation. Internet Information Services (IIS) de Microsoft R. Sun Java System Web Server de Sun Microsystems R (anteriormente Sun ONE Web Server, iplanet Web Server, y Netscape Enterprise Server). Zeus Web Server de Zeus Technology.

30 2.4 Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación 22 Figura 2.8: Funcionamiento de Easy Java Simulations 2.4 Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación En ingeniería, el paso natural para resolver un problema es la comprensión de los elementos e interacciones del sistema en estudio mediante la aplicación de un modelo de procesos. Cuando la solución a nuestro problema consiste en la creación de software, también empleamos procesos de desarrollo fundamentados en este modelo. Véase la Figura 2.9. La ingeniería de software concentra el modelo de procesos en las metodologías de desarrollo. Se entiende por metodología de desarrollo al conjunto de procedimientos (definición de la forma de ejecutar las actividades en que se dividen los procesos), técnicas (utilizadas para aplicar un procedimiento), herramientas (que sirven de apoyo en la utilización de las técnicas) y soporte documental que ayudan a los desarrolladores a realizar nuevo software.

31 2.4 Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación 23 Figura 2.9: Modelo de procesos de ingeniería (de Jensen y Tonies, 1979) Metodología versus ciclo de vida Una metodología puede seguir uno o varios modelos de ciclo de vida. El ciclo de vida indica qué es lo que hay que obtener a lo largo del desarrollo del proyecto y la metodología indica cómo hay que obtener los distintos productos parciales y finales del proyecto. La utilización de una metodología adecuada es un factor determinante para alcanzar el éxito en los proyectos de desarrollo de gran escala. Sin embargo, cuando se trata de proyectos pequeños, la metodología se reduce a separar rápidamente la aplicación en procesos, cada proceso en funciones, y por cada función determinar un tiempo aproximado de desarrollo. Es de suma importancia comprender que un laboratorio virtual de simulación es por naturaleza un entorno de aprendizaje-enseñanza a distancia, y por consiguiente debemos incluir en la metodología de desarrollo los aspectos relacionados con los procesos educativos a los que se vincula. Una de las metodologías mejor adaptadas al tipo de aplicación que deseamos crear,

32 2.4 Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación 24 y que muestra claramente la fusión entre los actuales paradigmas de desarrollo de software y los aspectos pedagógicos que deben considerarse en los desarrollos educativos, fue propuesta inicialmente por Galvis (1992) en su libro Ingeniería del Software Educativo, que gracias al auge de los entornos educativos a distancia, fue refinada para implementaciones basadas en Web en trabajos posteriores, véase (Galvis 1998, Galvis & Mendoza 1999) Metodología de desarrollo propuesta La metodología que empleamos para desarrollar este proyecto, está basada casi en su totalidad en la metodología propuesta por Galvis & Mendoza (1999) para la construcción de ambientes virtuales de aprendizaje. La metodología que propone Galvis & Mendoza (1999) consiste en un proceso iterativo de varias fases las cuales deben llevarse a cabo como lo determina la Figura Las cinco etapas que componen esta metodología son análisis, diseño, desarrollo, evaluación y administración. Análisis Esta fase debe llevar como resultado a la formulación de los requerimientos que deberá atender el ambiente virtual de aprendizaje que se desea construir: descripción de la aplicación, restricciones relacionadas con la población objetivo y sus características, áreas de contenido y sus características, modos de uso de la aplicación (individual, grupal, con apoyo de instructor, etc.) y todo lo que el usuario necesita antes de usar el sistema. Diseño El diseño se elabora en base a los resultados de la fase de análisis, tomando decisiones relevantes de acuerdo con los requerimientos extraídos. En ésta etapa se definen los objetos, su comportamiento, el propósito de la aplicación, las restricciones y los escenarios de interacción.

33 2.4 Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación 25 Figura 2.10: Metodología de análisis, diseño y desarrollo de ambientes educativos computarizados basados en Internet (Galvis & Mendoza 1999) El diseño se realiza a tres niveles diferentes: educativo, comunicacional y computacional. 1. Diseño instruccional (educativo): debe incluir los elementos de instrucción que permitan motivar al usuario, especificar qué se aprenderá, y proveer las guías del proceso de aprendizaje. 2. Diseño de la presentación (comunicacional): comprende el diseño de la información, diseño de la estructura y elaboración de un mapa de navegación. 3. Diseño de la interfaz (computacional): consta de varias tareas como la definición formal de cada pantalla, los objetivos, los eventos que la interfaz está en capacidad de atender o detectar, los diagramas de la pantallas, cuáles objetos tiene y dónde están ubicados, el listado de las características tanto de la pantalla

34 2.4 Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación 26 como de los objetos que contiene, los enlaces con otros elementos de la interfaz y finalmente el diagrama de flujo de información de la interfaz, que indica la relación entre las diferentes pantallas y permite ver la secuencia que se seguirá en la aplicación. Desarrollo De acuerdo con el diseño que se ha realizado y observando los lineamientos planteados en la fase de análisis, se continúa con la fase de desarrollo en el cual se lleva a cabo la elaboración del producto final. En esta fase se procede a la integración de contenidos en diversos formatos: documentos HTML, documentos PDF, documentos comprimidos, animaciones, componentes Web, etc. Evaluación En esta fase se quiere determinar cuáles son las fallas a nivel de análisis, diseño y desarrollo, con la finalidad de verificar el correcto funcionamiento de la aplicación construida. Esto se consigue mediante diversas pruebas, a saber: Prueba de interfaz y de funcionamiento, con la cual se pueden detectar errores de funcionamiento y fallas en los enlaces. Prueba de efectividad, que permite determinar el impacto educativo del producto final. Se realiza en una situación real de aprendizaje, utilizándolo como apoyo instruccional en el desarrollo de un curso normal. Administración La administración de un ambiente virtual de aprendizaje incluye todo aquello que debe estar en su lugar para asegurar un funcionamiento correcto del sistema con el mínimo de problemas y un máximo de satisfacción de los usuarios. Esta fase consta de varias actividades: Instalación y configuración del sistema (setup): que consiste en determinar qué sistema operativo soportará el ambiente de aprendizaje virtual, el servidor de

35 2.4 Enfoque metodológico para el desarrollo de laboratorios virtuales de simulación 27 HTTP que permite poner en funcionamiento el sitio Web, las estrategias de seguridad, el sitio mirror que almacenará la copia exacta del sistema original y el centro de recursos donde se colocarán todos los materiales ya sean artículos, videos, sonidos o software relevantes al curso. Administración antes del curso: refiriéndose a la cantidad y calidad de la preparación previa que el usuario requiere para aprovechar las bondades del sistema. Para este trabajo, a lo largo de cada una de las fases, es conveniente introducir algunos cambios en pequeña escala que permitan adaptar la metodología a nuestros propósitos particulares. Los mismos son señalados en el Capítulo 4.

36 Capítulo 3 Caso de estudio: un sistema no lineal clásico Una de las formas más completas de ilustrar académicamente la aplicación de los aspectos conceptuales y prácticos del control de sistemas dinámicos, son los sistemas no lineales. En la realidad, casi todos los sistemas son de naturaleza no lineal, sin embargo la teoría de control para sistemas no lineales resulta ser más compleja de abordar por los estudiantes de cursos básicos de control de procesos. A través del ejemplo piloto seleccionado para demostrar el funcionamiento del laboratorio virtual de simulación, pretendemos acercar al usuario a una manera sencilla de entender la aplicación de estrategias de control de sistemas no lineales tratados bajo un primer enfoque, como lo es la linealización aproximada. Recordemos que el funcionamiento de las simulaciones en el laboratorio virtual se fundamentan en el conocimiento de la lógica matemática que rige al ejemplo piloto. A su vez, ésta lógica puede expresarse en términos del modelo matemático que describe la dinámica del sistema y las técnicas adecuadas de análisis y control, es decir, en el diseño del sistema de control. Para diseñar un sistema de control, se recomienda seguir una serie de pasos, como vemos a continuación: Estudiar el sistema (planta) que se desea controlar y obtener información adicional acerca de los objetivos de control.

37 3.1 Modelado del sistema 29 Modelar el sistema y simplificar el modelo. Analizar el modelo resultante; determinar sus propiedades. Decidir, cuáles son las variables que hay que controlar (salidas controladas). Seleccionar la configuración de control y decidir cúal es el tipo de controlador que se va a utilizar. Decidir las especificaciones de comportamiento, tomando en consideración los objetivos globales de control. Diseñar un controlador. Analizar el sistema controlado resultante para comprobar si se satisfacen las especificaciones y si no se cumplen modificar las especificaciones o el tipo de controlador. Esto nos da una idea bien estructurada de como podemos organizar la presentación del ejercicio al usuario del sistema (asumiendo que el usuario sigue la misma lógica para el diseño de sistemas de control fuera del ámbito del laboratorio). Con la finalidad de comprender de una forma más amplia el contexto de teoría de control necesario para construir el corazón de este proyecto, en el siguiente apartado mostramos brevemente algunos conceptos de teoría de sistemas, el modelado del sistema no lineal seleccionado como piloto y el diseño de las estrategias que control que se implementarán. Como caso de estudio, este modelo, su análisis y el diseño de las estrategias de control están basados en un ejemplo mostrado a lo largo del libro Control de Sistemas No Lineales de Sira-Ramírez et al. (2005). 3.1 Modelado del sistema Hemos seleccionado un modelo simplificado que puede representar de forma genérica a un sistema aeroespacial (artefacto espacial) o un sistema náutico (barco); llamémosle nave.

38 3.1 Modelado del sistema 30 Supongamos que requerimos controlar la orientación de la nave, dada por su posición angular θ, tal como podemos observar en la Figura 3.1. Como mecanismo de control tenemos una tobera que forma parte del cuerpo de la nave, que puede girar sobre un pivote en la base. La dirección de la tobera respecto del eje principal de la nave está dada por el ángulo β. El ángulo β de la tobera cambia de forma proporcional a u (ley de control). La distancia entre el centro de gravedad (cg) de la nave y el punto de apoyo de la tobera en el cuerpo de la nave la llamamos L. Suponemos que existe una fuerza de reacción debida a la expulsión de los gases de combustión del motor de la nave. Esta fuerza la llamamos F y está aplicada sobre el punto de apoyo de la tobera en el cuerpo de la nave. De esta forma, por efecto de la fuerza F la nave gira en algún sentido alrededor de su centro de gravedad. Figura 3.1: Modelo Físico de la Nave Nos planteamos como objetivo: Controlar el ángulo de orientación de la nave. Esto quiere decir que debemos mantener en un valor fijo el ángulo θ, utilizando como control la velocidad de cambio u del ángulo β de la tobera. Para modelar la dinámica que rige al sistema de orientación de la nave, debemos

Introducción a WebMathematica

Introducción a WebMathematica Introducción a WebMathematica WebMathematica es una nueva tecnología que permite la generación de contenido web dinámico con Mathematica. Se integra en Mathematica a través de un servidor web. WebMathematica

Más detalles

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Modulo I. Introducción a la Programación Web. 1.1 Servidor Web. Antes de analizar lo que es un servidor Web y llevara a cabo su instalación, es muy importante identificar diferentes elementos involucrados

Más detalles

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el Capitulo II. Análisis de herramientas y tecnologías de desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el lenguaje de Modelo de Objetos llamado UML (Unified

Más detalles

Simulador de Protocolos de Red a tráves de WEB

Simulador de Protocolos de Red a tráves de WEB Simulador de Protocolos de Red a tráves de WEB Propuesta de Estudio 20071608 Director Ing. Francisco Antonio Polanco Montelongo Resumen Introducción Actualmente, el desarrollo tecnológico a alcanzado niveles

Más detalles

Capítulo I. Marco Teórico

Capítulo I. Marco Teórico 1 Capítulo I. Marco Teórico 1. Justificación Hoy en día existe una gran diversidad de aplicaciones que corren sobre la World Wide Web (WWW o Web), y cada una orientada a un fin en particular, el cuál depende

Más detalles

POTENCIAL DE MACROMEDIA FLASH EN EL ENTORNO DOCENTE

POTENCIAL DE MACROMEDIA FLASH EN EL ENTORNO DOCENTE POTENCIAL DE MACROMEDIA FLASH EN EL ENTORNO DOCENTE (1) Juan A. Juanes Méndez; (2) Alberto Prats Galino, (3) Mª José Rodríguez Conde; (4) Sandra y David Martínez-Juanes (1)Dpto. de Anatomía Humana. Facultad

Más detalles

Tema 3. 3.3 Tecnologías de Desarrollo

Tema 3. 3.3 Tecnologías de Desarrollo Tema 3 3.3 Tecnologías de Desarrollo HTML pronto pasa a ser insuficiente para todas las posibilidades de la Red No se puede interactuar con el servidor Aparecen los primeros scripts para propocionar dichar

Más detalles

Bienvenidos a la presentación: Introducción a conceptos básicos de programación.

Bienvenidos a la presentación: Introducción a conceptos básicos de programación. Bienvenidos a la presentación: Introducción a conceptos básicos de programación. 1 Los programas de computadora son una serie de instrucciones que le dicen a una computadora qué hacer exactamente. Los

Más detalles

Modelar, documentar, discutir, versionar, difundir, capacitar DESCRIPCIÓN TÉCNICA

Modelar, documentar, discutir, versionar, difundir, capacitar DESCRIPCIÓN TÉCNICA Sistema para Gestión de Conocimiento Modelar, documentar, discutir, versionar, difundir, capacitar DESCRIPCIÓN TÉCNICA Contenido Introducción... 3 Antecedentes... 4 Ediciones... 4 Empresarial... 4 Personal...

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

Software de Simulación aplicado a entornos de e-learning

Software de Simulación aplicado a entornos de e-learning Software de Simulación aplicado a entornos de e-learning 2009 Laboratorio de Investigación de Software Universidad Tecnológica Nacional Facultad Regional Córdoba Titulo del Proyecto Software de Simulación

Más detalles

VISIÓN GENERAL HERRAMIENTAS COMERCIALES

VISIÓN GENERAL HERRAMIENTAS COMERCIALES VISIÓN GENERAL El servidor de MS SQL se ha convertido en un estándar en muchas partes de la América corporativa. Puede manejar volúmenes de datos grandes y se integra bien con otros productos de Microsoft.

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software MSDN Ingeniería de Software...1 Ingeniería del Software_/_ Ingeniería y Programación...1 Análisis de Requerimientos...2 Especificación...3 Diseño...4 Desarrollo en Equipo...5 Mantenimiento...6

Más detalles

CÓMO CONFIGURAR INTERNET INFORMATION SERVER

CÓMO CONFIGURAR INTERNET INFORMATION SERVER CÓMO CONFIGURAR INTERNET INFORMATION SERVER Cintado Mejías, Silvia 75770772-D Ingeniera Técnica en Informática de Gestión 0. INTRODUCCIÓN En este artículo se van a desarrollar el concepto de Internet Information

Más detalles

Ingeniería de Software I

Ingeniería de Software I Ingeniería de Software I Agenda Objetivo. Unidades de aprendizaje. Formas de evaluación. Bibliografía. 2 Datos del profesor Correo electrónico: egonzalez@upemor.edu.mx Asesorías Jueves de 11:00 a 13:00

Más detalles

LABORATORIO VIRTUAL REMOTO PARA LA ENSEÑANZA DE ROBÓTICA

LABORATORIO VIRTUAL REMOTO PARA LA ENSEÑANZA DE ROBÓTICA LABORATORIO VIRTUAL REMOTO PARA LA ENSEÑANZA DE ROBÓTICA F. Torres, F. A. Candelas, S. T. Puente, F. G. Ortiz, J. Pomares, P. Gil. Departamento de Física, Ingeniería de Sistemas y Teoría de la Señal. Universidad

Más detalles

Arquitectura de Software

Arquitectura de Software Arquitectura de Software (Estilos Arquitectónicos) Universidad de los Andes Demián Gutierrez Mayo 2011 1 Diseño Arquitectónico Diseño Arquitectónico Arquitectura del Software Estilos Arquitectónicos Frameworks

Más detalles

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente Capítulo 5: Aplicaciones cliente 46 5.1 La aplicación cliente en la Pocket PC La aplicación desarrollada para el cliente en un dispositivo móvil como corresponde a la Pocket PC necesita una capa muy delgada

Más detalles

CAPÍTULO 1 Instrumentación Virtual

CAPÍTULO 1 Instrumentación Virtual CAPÍTULO 1 Instrumentación Virtual 1.1 Qué es Instrumentación Virtual? En las últimas décadas se han incrementado de manera considerable las aplicaciones que corren a través de redes debido al surgimiento

Más detalles

Arquitectura del CourseWare. M. Ed. Fredys Simanca Herrera

Arquitectura del CourseWare. M. Ed. Fredys Simanca Herrera Arquitectura del CourseWare M. Ed. Fredys Simanca Herrera Contenido 1. Equipo de desarrollo 2. Población objetivo 3. Contenido del curso 4. Organización del curso 5. Del Conductismo Al Constructivismo

Más detalles

Marco Conceptual para la Gestión de Conocimiento de entornos de colaboración: aplicación a la creación 217 de un portal de revistas electrónicas

Marco Conceptual para la Gestión de Conocimiento de entornos de colaboración: aplicación a la creación 217 de un portal de revistas electrónicas Marco Conceptual para la Gestión de Conocimiento de entornos de colaboración: aplicación a la creación 217 INDICE 4...219 4.1 Introducción...219 4.2 Arquitectura Física...219 4.2.1 Arquitectura Cliente/Servidor...219

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 3: Estructura del sistema operativo. 3.1 Componentes del sistema. 3.2 Servicios del sistema operativo. 3.3 Llamadas al sistema. 3.4 Programas

Más detalles

Capítulo II. Arquitectura del Software

Capítulo II. Arquitectura del Software Capítulo II. Arquitectura del Software Después de un cuidadoso análisis de los objetivos del proyecto, se determinó que la mejor manera de estructurar el sistema era haciendo uso del muy famoso patrón

Más detalles

GENMATWEB: GENERADOR DE PRÁCTICAS PARA MATLAB WEB SERVER

GENMATWEB: GENERADOR DE PRÁCTICAS PARA MATLAB WEB SERVER XXV Jornadas de Automática Ciudad Real, del 8 al 10 de septiembre de 2004 GENMATWEB: GENERADOR DE PRÁCTICAS PARA MATLAB WEB SERVER Estrella Gómez Fernández Univ. Europea de Madrid estrella.gomez@uem.es

Más detalles

La Arquitectura de las Máquinas Virtuales.

La Arquitectura de las Máquinas Virtuales. La Arquitectura de las Máquinas Virtuales. La virtualización se ha convertido en una importante herramienta en el diseño de sistemas de computación, las máquinas virtuales (VMs) son usadas en varias subdiciplinas,

Más detalles

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR En este capítulo se describe el análisis y diseño de un sistema, denominado e-commerce Constructor, el cual cumple con los siguientes objetivos: Fungir

Más detalles

Aprendizaje con Simuladores. Aplicación a las Redes de Comunicaciones. Eduardo Zornoza Martínez I.E.S. Leonardo da Vinci eduardo.zornoza@gmail.

Aprendizaje con Simuladores. Aplicación a las Redes de Comunicaciones. Eduardo Zornoza Martínez I.E.S. Leonardo da Vinci eduardo.zornoza@gmail. Aprendizaje con Simuladores. Aplicación a las Redes de Comunicaciones Eduardo Zornoza Martínez I.E.S. Leonardo da Vinci eduardo.zornoza@gmail.com Resumen El objetivo de la enseñanza superior es formar

Más detalles

Capítulo 2. Marco Teórico

Capítulo 2. Marco Teórico Capítulo 2. Marco Teórico 2.1. Frameworks para Aplicaciones Web en Java Con el crecimiento exponencial de Internet en los últimos años, las aplicaciones Web se han convertido en una parte básica y común

Más detalles

http://www.cem.itesm.mx/extension/ms

http://www.cem.itesm.mx/extension/ms Diplomado Programación orientada a objetos con Java y UML Las empresas necesitan contar con sistemas de información modernos, ágiles y de calidad para alcanzar sus objetivos y ser cada vez más competitivos

Más detalles

CAPÍTULO 3 VISUAL BASIC

CAPÍTULO 3 VISUAL BASIC CAPÍTULO 3 VISUAL BASIC 3.1 Visual Basic Microsoft Visual Basic es la actual y mejor representación del viejo lenguaje BASIC, le proporciona un sistema completo para el desarrollo de aplicaciones para

Más detalles

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor. Procesamiento del lado del servidor La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante la interpretación de un script en el

Más detalles

Qué es una aplicación web

Qué es una aplicación web Departamento de Lenguajes y Sistemas Informáticos Qué es una aplicación web Programación en Internet Curso 2006-2007 Índice Introducción Cliente Servidor Transferencia páginas web Entornos web Ventajas

Más detalles

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante

A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante Modulo 2. Inicio con Java Muchas veces encontramos en nuestro entorno referencias sobre Java, bien sea como lenguaje de programación o como plataforma, pero, que es en realidad Java?, cual es su historia?,

Más detalles

Herrera, M; De Lima, L; Delgado, D. Abstract. Índice

Herrera, M; De Lima, L; Delgado, D. Abstract. Índice Herramienta Multimedia para la enseñanza, discusión y evaluación de una asignatura dictada con la técnica didáctica Casos de Estudio bajo modalidad semipresencial Herrera, M; De Lima, L; Delgado, D. Índice

Más detalles

Unidad V: Programación del lado del servidor

Unidad V: Programación del lado del servidor Unidad V: Programación del lado del servidor 5.1 Introducción al lenguaje La Programación del lado del servidor es una tecnología que consiste en el procesamiento de una petición de un usuario mediante

Más detalles

Educación Virtual. Prof. Aida Ocasio Pérez

Educación Virtual. Prof. Aida Ocasio Pérez Educación Virtual Prof. Aida Ocasio Pérez Introducción Las leyes y las instituciones deben ir de la mano con el progreso de la mente humana. En la medida en que ésta se desarrolle, se ilustra; conforme

Más detalles

LA INTRANET COMO PORTAL CORPORATIVO Técnicas de diseño y gestión

LA INTRANET COMO PORTAL CORPORATIVO Técnicas de diseño y gestión Curso On-line LA INTRANET COMO PORTAL CORPORATIVO Técnicas de diseño y gestión DIRECTOR Y TUTOR TIPO JOSE ANTONIO SÁNCHEZ MONTERO Jefe de Área de Documentación y Biblioteca. Comisión Nacional de Energía

Más detalles

1 El trabajo expuesto está subvencionado por el proyecto de la URJC PGRAL-2001/14

1 El trabajo expuesto está subvencionado por el proyecto de la URJC PGRAL-2001/14 EVALUACIÓN A TRAVÉS DE LA WEB: EL SISTEMA TUTORMAP 1 R.Criado, D.Martín y S. Sánchez (GIEMATI, Dpto. de CC. Experimentales e Ingeniería de la URJC) Resumen En este trabajo se describen las características

Más detalles

Sistema de aprendizaje por refuerzo para la mejora del rendimiento del alumno en prácticas

Sistema de aprendizaje por refuerzo para la mejora del rendimiento del alumno en prácticas Memoria resumen del Proyecto de Innovación Docente (PID) Ref.: 52B (periodo 2009-2011) Sistema de aprendizaje por refuerzo para la mejora del rendimiento del alumno en prácticas Investigador Principal:

Más detalles

CAPÍTULO 5. Hemos utilizado la técnica de programación orientado a objetos por su

CAPÍTULO 5. Hemos utilizado la técnica de programación orientado a objetos por su 88 CAPÍTULO 5 5. IMPLEMENTACIÓN 5.1 Modelo Utilizado en Programación. Hemos utilizado la técnica de programación orientado a objetos por su eficiencia y eficacia en el modelo mvc, ya que permite la reutilización

Más detalles

5.1. Qué es Internet? controla todo el sistema, pero está conectado de tal manera que hace

5.1. Qué es Internet? controla todo el sistema, pero está conectado de tal manera que hace 5. Internet 5.1. Qué es Internet? Internet es una red mundial de equipos que se comunican usando un lenguaje común. Es similar al sistema telefónico internacional: nadie posee ni controla todo el sistema,

Más detalles

LABORATORIOS VIRTUALES REMOTOS USANDO EASY JAVA SIMULATIONS Y SIMULINK

LABORATORIOS VIRTUALES REMOTOS USANDO EASY JAVA SIMULATIONS Y SIMULINK LABORATORIOS VIRTUALES REMOTOS USANDO EASY JAVA SIMULATIONS Y SIMULINK G. Farias 1, F. Esquembre, J. Sanchez 1, S. Dormido 1 1 Departamento de Informática y Automática, UNED. Ciudad Universitaria, C.P.

Más detalles

Facultad de Sistemas e Informática

Facultad de Sistemas e Informática Escuela Politécnica del Ejército Sede Latacunga Facultad de Sistemas e Informática Galarza Maira Tapia Cevallos Paulina DESARROLLO DE APLICACIONES DISTRIBUIDAS UTILIZANDO PATRONES DE DISEÑO MODELO/VISTA

Más detalles

CAPITULO 3 MOVILIDAD EN LA NAVEGACIÓN Y ALMACENAMIENTO EN BASES DE DATOS

CAPITULO 3 MOVILIDAD EN LA NAVEGACIÓN Y ALMACENAMIENTO EN BASES DE DATOS CAPITULO 3 MOVILIDAD EN LA NAVEGACIÓN Y ALMACENAMIENTO EN BASES DE DATOS La introducción de las redes locales marca una nueva etapa en la evolución de las computadoras personales al permitir ligar varias

Más detalles

Curso de Android con Java

Curso de Android con Java Todos los Derechos Reservados Global Mentoring Experiencia y Conocimiento para tu Vida 1 Este es un tiempo único para el mundo de los celulares, en particular de los Smartphones. Este tipo de dispositivos

Más detalles

Apéndice A Herramientas utilizadas

Apéndice A Herramientas utilizadas Apéndice A Herramientas utilizadas A.1 Java Media Framework El Java Media Framework (JMF) es una interfaz para el desarrollo de aplicaciones (API) e incorpora el manejo de audio y video en el lenguaje

Más detalles

I.S.F.D. y T. Nº 114 PLANIFICACIÓN ANUAL 2015

I.S.F.D. y T. Nº 114 PLANIFICACIÓN ANUAL 2015 I.S.F.D. y T. Nº 114 PLANIFICACIÓN ANUAL 2015 CARRERA: PROFESORADO DE EDUCACIÒN SECUNDARIA EN MATEMÀTICA ASIGNATURA: COMPUTACIÓN PROFESOR: ELlCECHE, ALEJANDRO CURSO: 4 año MÓDULOS: Previstos para el desarrollo

Más detalles

Programación con PHP y MySql Instituto CBTech 5/14

Programación con PHP y MySql Instituto CBTech 5/14 Programación con PHP y MySql Instituto CBTech 5/14 Programación con PHP y MySql Instituto CBTech 6/14 Qué es una aplicación web? Una aplicación web es un sistema informático que los usuarios utilizan accediendo

Más detalles

Selección de arquitecturas y herramientas de programación

Selección de arquitecturas y herramientas de programación 1 Selección de arquitecturas y herramientas de programación Objetivos del capítulo 44 Caracterizar y diferenciar los modelos de ejecución de código en un entorno cliente/servidor. 44 Conocer los mecanismos

Más detalles

GUÍA DOCENTE PROGRAMACION DE APLICACIONES WEB

GUÍA DOCENTE PROGRAMACION DE APLICACIONES WEB GUÍA DOCENTE PROGRAMACION DE APLICACIONES WEB I.- DATOS INICIALES DE IDENTIFICACIÓN Nombre de la asignatura: Programación de aplicaciones web Carácter: Optativa Titulación: Master Sistemas y Servicios

Más detalles

Capítulo III. Análisis y diseño.

Capítulo III. Análisis y diseño. Capítulo III. Análisis y diseño. 3.1 Análisis. El análisis es el intermediario entre los requisitos del sistema y el diseño, esta sección definiremos el análisis con una serie de modelos técnicos del sistema,

Más detalles

Programación WEB. Carrera: SCF - 0427 2-4-8. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Programación WEB. Carrera: SCF - 0427 2-4-8. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Programación WEB Ingeniería en Sistemas Computacionales SCF - 0427 2-4-8 2.- HISTORIA

Más detalles

HERRAMIENTAS WEB PARA EL CONTROL DE LABORATORIOS REMOTOS A TRAVÉS DE INTERNET. Universidad Miguel Hernández Dpto. Ingeniería de Sistemas Industriales

HERRAMIENTAS WEB PARA EL CONTROL DE LABORATORIOS REMOTOS A TRAVÉS DE INTERNET. Universidad Miguel Hernández Dpto. Ingeniería de Sistemas Industriales HERRAMIENTAS WEB PARA EL CONTROL DE LABORATORIOS REMOTOS A TRAVÉS DE INTERNET Universidad Miguel Hernández Dpto. Ingeniería de Sistemas Industriales Plataformas 1. RECOLAB: laboratorio remoto vía Internet

Más detalles

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y Capítulo VI Conclusiones En este capítulo abordaremos la comparación de las características principales y de las ventajas cada tecnología Web nos ofrece para el desarrollo de ciertas aplicaciones. También

Más detalles

CUALIFICACIÓN CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB PROFESIONAL. Nivel 2. Versión 5 Situación RD 1201/2007 Actualización

CUALIFICACIÓN CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB PROFESIONAL. Nivel 2. Versión 5 Situación RD 1201/2007 Actualización Página 1 de 18 CUALIFICACIÓN CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 2 Código IFC297_2 Versión 5 Situación RD 1201/2007 Actualización

Más detalles

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable 1. Introducción. El Sistema de Administración de Información de un Negocio Franquiciable (SAINF)

Más detalles

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web Arquitectura 1.- Aplicaciones Web Definición Contenidos 1.- Aplicaciones Web 2.- Arquitectura de aplicaciones Web Lo que distingue una aplicación Web de una mero sitio Web reside en la posibilidad que

Más detalles

Universidad Autónoma de Nayarit Área Económico-Administrativa Licenciatura en Informática

Universidad Autónoma de Nayarit Área Económico-Administrativa Licenciatura en Informática Taha, Hamdy A., "Investigación de operaciones una introducción ", México Pearson Educación 2004 10. PERFIL DE LOS DOCENTES PARTICIPANTES EN LA UNIDAD DE APRENDIZAJE: ESTUDIOS REQUERIDOS: Preparación profesional

Más detalles

Todo acerca de Easy Java Simulations. Francisco Esquembre Universidad de Murcia

Todo acerca de Easy Java Simulations. Francisco Esquembre Universidad de Murcia Todo acerca de Easy Java Simulations Francisco Esquembre Universidad de Murcia Barcelona, 3 de febrero de 2011 Contenido de la presentación Qué es Easy Java Simulations? Quién puede usar EJS? Por qué EJS

Más detalles

1. INTRODUCCIÓN Y OBJETIVOS

1. INTRODUCCIÓN Y OBJETIVOS 1. INTRODUCCIÓN Y OBJETIVOS Los teléfonos móviles son ya parte esencial en nuestra forma de vida y cada día son más los usuarios de estos terminales. Hasta ahora nos han acompañado a todas partes y nos

Más detalles

2.3. Lenguajes de programación del lado Servidor. ASP.NET (Active Server Pages).

2.3. Lenguajes de programación del lado Servidor. ASP.NET (Active Server Pages). 2.3. Lenguajes de programación del lado Servidor Existe una multitud de lenguajes concebidos o no para Internet. Cada uno de ellos explota más a fondo ciertas características que lo hacen más o menos útiles

Más detalles

1 INTRODUCCIÓN. Yacelga De la Torre Carlos Paolo. e-mail: charles_ing@hotmail.com

1 INTRODUCCIÓN. Yacelga De la Torre Carlos Paolo. e-mail: charles_ing@hotmail.com PAPER 2012 DISEÑO, DESARROLLO E IMPLEMENTACIÓN DE UNA APLICACIÓN WEB PARA EL INGRESO Y CONSULTAS DE NOTAS ON-LINE PARA LA ACADEMIA MILITAR SAN DIEGO, UTILIZANDO SOFTWARE LIBRE (PHP Y MYSQL) Yacelga De

Más detalles

CAPÍTULO 3. AMBIENTES DE ENSEÑANZA ASISTIDOS POR COMPUTADORA

CAPÍTULO 3. AMBIENTES DE ENSEÑANZA ASISTIDOS POR COMPUTADORA CAPÍTULO 3. AMBIENTES DE ENSEÑANZA ASISTIDOS POR COMPUTADORA 3.1 CAI (Computer Assisted Instruction). La enseñanza asistida por computadora consiste en tecnologías de la información que permiten al estudiante

Más detalles

SCF - 0427 2-4-8. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. Academia de sistemas y computación.

SCF - 0427 2-4-8. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. Academia de sistemas y computación. 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Programación WEB Ingeniería en Sistemas Computacionales SCF - 0427 2-4-8 2.- HISTORIA

Más detalles

SÍLABO DE SOLUCIONES WEB Y APLICACIONES DISTRIBUIDAS

SÍLABO DE SOLUCIONES WEB Y APLICACIONES DISTRIBUIDAS SÍLABO DE SOLUCIONES WEB Y APLICACIONES DISTRIBUIDAS I. INFORMACIÓN GENERAL 1.1 Facultad: Ingeniería 1.2. Carrera Profesional: Ingeniería en Sistemas Computacionales 1.3. Departamento: -----------------------

Más detalles

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes. SISTEMAS DISTRIBUIDOS DE REDES 2.- MODELOS ORIENTADOS A OBJETOS DISTRIBUIDOS 2.1. Tecnologías de sistemas distribuidos Para la implementación de sistemas distribuidos se requiere de tener bien identificados

Más detalles

Las Web 3D como instrumento de formación en la carrera de Ingeniería Agrícola

Las Web 3D como instrumento de formación en la carrera de Ingeniería Agrícola Universidad Agraria de La Habana Fructuoso Rodríguez Pérez Las Web 3D como instrumento de formación en la carrera de Ingeniería Agrícola Autor: MS.c Reynolds León Guerra Mayabeque, 2013 RESUMEN En el presente

Más detalles

Anexo 4 Documento de Arquitectura

Anexo 4 Documento de Arquitectura Anexo 4 Documento de Arquitectura 1. Introducción El anexo se describe el propósito y alcance referentes al proyecto correspondiente al documento de arquitectura. 2. Propósito El propósito del anexo de

Más detalles

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura

Más detalles

ENCUENTA - CONTABILIDAD Net. Definiciones generales

ENCUENTA - CONTABILIDAD Net. Definiciones generales ENCUENTA - CONTABILIDAD Net Definiciones generales 2013 ENCUENTA - CONTABILIDAD Net Definiciones generales Contenido 1 GENERALIDADES... 3 2 DISTRIBUCIÓN GENERAL DE LOS ELEMENTOS DEL SISTEMA... 3 3 REQUERIMIENTOS...

Más detalles

Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O

Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O Fundamentos de las aplicaciones Web Página Web Sitio Web Servidor Web Aplicación Web HTTP y HTML Página Web Una página web

Más detalles

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

GLOSARIO Archie: Aplicación cliente/servidor que proporciona acceso a bases de datos. Active X: Diseño de red (forma como se distribuye los dispositivos por si mismos en una red) en el cual el Hub central

Más detalles

Denominación de la materia. N créditos ECTS = 36 carácter = OBLIGATORIO SISTEMAS DE SOFTWARE. Ubicación dentro del plan de estudios y duración

Denominación de la materia. N créditos ECTS = 36 carácter = OBLIGATORIO SISTEMAS DE SOFTWARE. Ubicación dentro del plan de estudios y duración Denominación de la materia SISTEMAS DE SOFTWARE N créditos ECTS = 36 carácter = OBLIGATORIO Ubicación dentro del plan de estudios y duración La materia Sistemas de Software está formada por 6 asignaturas

Más detalles

Para el desarrollo de aplicaciones Web se han generado múltiples tecnologías entre ellas se encuentran:

Para el desarrollo de aplicaciones Web se han generado múltiples tecnologías entre ellas se encuentran: Desarrollo de aplicaciones y servicios web Cinxgler Mariaca Minda Cinxgler@udistrital.edu.co Presidente Capítulo de Computadores Rama IEEE Universidad Distrital Francisco José de Caldas Resumen: Este articulo

Más detalles

STATMEDIA: UN CURSO MULTIMEDIA DE ESTADÍSTICA

STATMEDIA: UN CURSO MULTIMEDIA DE ESTADÍSTICA 27 Congreso Nacional de Estadística e Investigación Operativa Lleida, 8-11 de abril de 2003 STATMEDIA: UN CURSO MULTIMEDIA DE ESTADÍSTICA M. Calvo, A.Villarroya, A.Miñarro, S.Vives, A.Arcas Departamento

Más detalles

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema Capítulo2 Planteamientodelproblema 38 2.1Antecedentesycontextodelproyecto En lo que respecta a los antecedentes del proyecto, se describe inicialmente el contexto donde se utiliza el producto de software.

Más detalles

Protección de Software Protección de información Protección para Internet

Protección de Software Protección de información Protección para Internet Protección de Software Protección de información Protección para Internet Con el Sistema Integral de Seguridad HARDkey obtiene una poderosa herramienta de protección de software, cifrado de archivos de

Más detalles

Módulo 2. Inicio con Java

Módulo 2. Inicio con Java Módulo 2. Inicio con Java Objetivos: -Clasificar el lenguaje de programación Java según las formas de clasificar los lenguajes de programación. -Describir el funcionamiento de la plataforma Java. -Explicar

Más detalles

Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos. Unidad didáctica 1: Fase de análisis de requisitos Modelo E/R

Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos. Unidad didáctica 1: Fase de análisis de requisitos Modelo E/R índice Módulo A Unidad didáctica 1: Introducción a las Bases de Datos Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos 3 19 Módulo B Unidad didáctica 1: Fase de análisis de requisitos Modelo

Más detalles

HOJA TÉCNICA. SemTalk 2

HOJA TÉCNICA. SemTalk 2 HOJA TÉCNICA SemTalk 2 SemTalk 2 - Información Técnica SemTalk 2 es una herramienta para modelamiento de procesos de negocios y conocimientos orientado a objetos 100% compatible con MS Office. REQUERIMIENTOS

Más detalles

Utilización y desarrollo de aplicaciones multimedia para la promoción de proyectos en la Internet

Utilización y desarrollo de aplicaciones multimedia para la promoción de proyectos en la Internet Utilización y desarrollo de aplicaciones multimedia para la promoción de proyectos en la Internet Marco Antonio Romero E. maromero@usa.net ROMERO, MARCO A. 1.- ANTECEDENTES. La complejidad de este tema

Más detalles

Objetivo de aprendizaje del tema

Objetivo de aprendizaje del tema Computación II Tema 14. Java Server Pages (JSP) Objetivo de aprendizaje del tema Al finalizar el tema serás capaz de: Ejemplificar la manera de desarrollar aplicaciones i Java EE usando páginas JSP. Describir

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ACATLÁN LICENCIATURA EN MATEMÁTICAS APLICADAS Y COMPUTACIÓN

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ACATLÁN LICENCIATURA EN MATEMÁTICAS APLICADAS Y COMPUTACIÓN UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ACATLÁN LICENCIATURA EN MATEMÁTICAS APLICADAS Y COMPUTACIÓN ACATLÁN CLAVE: PROGRAMA DE ASIGNATURA DESARROLLO W EB SEMESTRE: 6 (SEXTO)

Más detalles

CAPÍTULO 1 INTRODUCCIÓN

CAPÍTULO 1 INTRODUCCIÓN CAPÍTULO 1 INTRODUCCIÓN Capítulo 7: Resultados y Trabajo a Futuro Recientemente nuestras vidas han sido cambiadas radicalmente por la Internet, nuestros hábitos de comunicación han sido influenciados por

Más detalles

Internet Servicios WEB (WWW)

Internet Servicios WEB (WWW) Universidad de Cantabria Internet Servicios WEB (WWW) Arquitectura de Aplicaciones WEB Febrero-2006 Ricardo Sáez Marta Zorrilla Internet- Arquitectura aplicaciones 1 Cliente/Servidor & Intranet/Internet

Más detalles

Historia de revisiones

Historia de revisiones Binary Rain Glosario Versión 1.1 Historia de revisiones Fecha Versión Descripción Autor 17/08/2012 1.0 Creación del documento Carolina Trias 18/08/2012 1.1 Revisado y corregido por SQA Mercedes Marzoa

Más detalles

Introducción a la plataforma.net

Introducción a la plataforma.net Introducción a la plataforma.net Autora: Mª del Pilar Pavón Rosano DNI: 52.923.715-W INTRODUCCIÓN Este artículo está dirigido a los profesores y profesoras del módulo Diseño y Realización de Servicios

Más detalles

O3 Requerimientos de Software y Hardware

O3 Requerimientos de Software y Hardware IdeaSoft Uruguay S.R.L. Phone: +598 (2) 710 4372 21 de Setiembre 2570 Fax: +598 (2) 710 4965 Montevideo http://www.ideasoft.com.uy Uruguay O3 Requerimientos de Software y Hardware Uso de memoria, espacio

Más detalles

Productos para desarrollar aplicaciones web: ASP, CFM, JSP y PHP

Productos para desarrollar aplicaciones web: ASP, CFM, JSP y PHP Departamento de Lenguajes y Sistemas Informáticos Productos para desarrollar aplicaciones web: ASP, CFM, JSP y PHP Curso 001-00 ASP, CFM, JSP y PHP (I) Diferente tecnologías con un mismo propósito: proporcionar

Más detalles

Capítulo 6: Instrumentación: Diseño del Sistema de H2O

Capítulo 6: Instrumentación: Diseño del Sistema de H2O Capítulo 6: Instrumentación: Diseño del Sistema de H2O Digital Media Server El video en demanda a través del web aún está restringido a las grandes empresas que pueden pagar por contar por un servicio

Más detalles

SERVICIOS TELEMÁTICOS PARA GESTIÓN DEL TURISMO RURAL EN UNA COMARCA.

SERVICIOS TELEMÁTICOS PARA GESTIÓN DEL TURISMO RURAL EN UNA COMARCA. UNIVERSIDAD DE VALLADOLID ESCUELA UNIVERSITARIA POLITÉCNICA INGENIERO TÉCNICO INDUSTRIAL, ESPECIALIDAD EN ELECTRÓNICA INDUSTRIAL MEMORIA RESUMEN PROYECTO FIN DE CARRERA SERVICIOS TELEMÁTICOS PARA GESTIÓN

Más detalles

PLATAFORMAS VIRTUALES

PLATAFORMAS VIRTUALES AREA : TECNOLOGIA E INFORMATICA DOCENTE : BLANCA FLOR MORA RAMIREZ PERIODO : 3 I. HORARIA : 2H GRADO : 11 FECHA NOMBRE DEL ALUMNO(A) TEMA: PLATAFORMAS VIRTUALES LOGRO: Reconoce la importancia de la formación

Más detalles

Carrera: Clave de la asignatura: SCF - 0427. Lugar y fecha de Observaciones elaboración o

Carrera: Clave de la asignatura: SCF - 0427. Lugar y fecha de Observaciones elaboración o 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Programación WEB Ingeniería en Sistemas Computacionales Clave de la asignatura: SCF - 0427 Horas teoría-horas práctica-créditos 2-4-8 2.- HISTORIA

Más detalles

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos 2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven

Más detalles

SOFTWARE EDUCATIVO PARA EL APRENDIZAJE EXPERIMENTAL DE LAS MATEMÁTICAS. Eugenio Jacobo Hernández Valdelamar. jack_hv@yahoo.com

SOFTWARE EDUCATIVO PARA EL APRENDIZAJE EXPERIMENTAL DE LAS MATEMÁTICAS. Eugenio Jacobo Hernández Valdelamar. jack_hv@yahoo.com SOFTWARE EDUCATIVO PARA EL APRENDIZAJE EXPERIMENTAL DE LAS MATEMÁTICAS Eugenio Jacobo Hernández Valdelamar jack_hv@yahoo.com Fundación Arturo Rosenblueth Tecnología Educativa Galileo Insurgentes Sur 670-3.

Más detalles

Tema 47. Las herramientas ofimáticas. Integración con sistemas de información estructurada.

Tema 47. Las herramientas ofimáticas. Integración con sistemas de información estructurada. Tema 47. Las herramientas ofimáticas. Integración con sistemas de información estructurada. Esquema Introducción... 2 Historia... 2 Suites... 2 Herramientas ofimáticas... 3 Tipos de programas ofimáticos:...

Más detalles

Capitulo VIII. Multimedios. En informática, multimedios es la forma de presentar información que emplea

Capitulo VIII. Multimedios. En informática, multimedios es la forma de presentar información que emplea Capitulo VIII Multimedios. En informática, multimedios es la forma de presentar información que emplea una combinación de texto, sonido, imágenes, animación y vídeo. Entre las aplicaciones informáticas

Más detalles

REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD DEL ZULIA NÚCLEO PUNTO FIJO PROGRAMA DE CIENCIA Y TECNOLOGÍA LICENCIATURA EN COMPUTACIÓN

REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD DEL ZULIA NÚCLEO PUNTO FIJO PROGRAMA DE CIENCIA Y TECNOLOGÍA LICENCIATURA EN COMPUTACIÓN REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD DEL ZULIA NÚCLEO PUNTO FIJO PROGRAMA DE CIENCIA Y TECNOLOGÍA LICENCIATURA EN COMPUTACIÓN DESARROLLO DE UN SISTEMA DE AYUDA INTERACTIVA PARA USUARIOS DE OPENOFFICE.ORG

Más detalles