Laboratorio para Acceso
Remoto por Internet
Ramón Rodríguez Pecharromán
Rafael Palacios Hielscher
Antecedentes
1. Laboratorio de Control en entorno Matlab:
¾ Entorno Matlab: Matlab + Simulink +
+ RTW (Real Time Workshop) +
+ RTT (Real Time Toolbox) ó RTWT (Real Time Windows Target)
¾ Plantas a controlar:
¾ Sistema térmico (control de temperatura de un flujo de aire)
¾ Servomecanismo de posición y velocidad
¾ Sistema hidráulico
Antecedentes
Control de nivel
Antecedentes
2. Experiencia en:
¾ Programación web: ¾ Configuración de servidores ¾ Comunicaciones ¾ Formularios¾ Actuaciones Hardware vía web:
¾ Portero automático remoto vía Internet
R. Palacios, "Remote Automatic Doorman via the Internet",
Antecedentes
3. Proyecto Punto Omega de la Upco:
¾ Utilización de las TIC en el ámbito de la docencia
¾ Plataforma SIFO (Solución Integral para la Formación On-line)
¾ Proyectos piloto:
Esquema general de funcionamiento
Internet
http
Servidor web
Ordenador del laboratorio Ordenador del laboratoriohttp
LA N u pco. esDescripción del funcionamiento
Por razones de seguridad, el sistema se ha
diseñado de la siguiente manera:
¾ Todos los usuarios tienen un único punto de entrada a la red local de la Universidad
¾ El acceso se realiza exclusivamente en protocolo http por medio de un servidor web bien configurado y que sea seguro
¾ El servidor web se encarga de establecer las conexiones con los distintos ordenadores que controlan los experimentos (esta conexión es de tipo local)
¾ El servidor web envía los parámetros del experimento y recoge los resultados
¾ Por último comunica los resultados a los alumnos
Trabajo individual y en grupo
El sistema contempla dos modalidades de trabajo:
¾ Trabajo individual: Sólo hay un alumno para definir parámetros y recibir los resultados.
¾ Trabajo en grupo: Varios alumnos forman un grupo y acuerdan una fecha/hora para conectarse al sistema.
¾ Uno de los alumnos hace el papel de líder en cada momento, y se encarga de enviar los parámetros del experimento.
¾ Todos los alumnos reciben los resultados porque comparten claves de acceso comunes
¾ Los resultados se comentan por correo electrónico o por chat y se acuerdan los nuevos parámetros del experimento
¾ El líder del grupo es el encargado de ir recogiendo la información y las sugerencias del grupo para generar el informe de la práctica
Prácticas Individuales (animación)
Internet
pará
met
ros
Servidor web
Servidor del laboratorioActivación del experimento
LA N u
pco. es
Prácticas en Grupo (animación)
Internet
LA N u pco. esServidor web
Servidor del laboratorioActivación del experimento
pa
rám
etr
os
Tipos de escenarios
Se contemplan dos tipos de escenarios según el grado de
interacción del usuario
:
¾ Simulación/Ensayo rápido (dura segundos)
¾ Simulación/Ensayo lento o continuo
Se contemplan también dos tipos de entornos según los
recursos utilizados
:
¾ Simulación del proceso, utilizando el ordenador del laboratorio
¾ Ensayo directo sobre un sistema físico, conectado al ordenador del laboratorio
Simulación/Ensayo rápido
¾
El usuario fija los parámetros del ensayo en un
formulario
¾
A continuación hace la petición de ejecución y su
navegador se queda esperando la respuesta
¾
A los pocos segundos recibe la respuesta
(resultados numéricos y gráficas)
¾
En función de los resultados puede volver a ajustar
los parámetros para completar el experimento
Simulación/Ensayo lento o continuo
¾
El usuario fija los parámetros iniciales del ensayo en
un formulario
¾
A continuación hace la petición de ejecución y
recupera el control inmediatamente.
(También puede ocurrir que el sistema ya esté corriendo y no sea necesario arrancarlo)¾
En cualquier momento se puede consultar el estado
del sistema (resultados numéricos y gráficas)
¾
En función del estado del sistema puede decidir
cambiar los parámetros (sin interrumpir el
experimento) mediante un formulario
Características de la Simulación
La
simulación
corre en el ordenador del laboratorio sin
que el usuario necesite instalar ningún software, ni
solicitar ninguna licencia.
Un solo ordenador de laboratorio puede correr varias
simulaciones simultáneas, por lo tanto se puede
atender a varios alumnos a la vez.
Las simulaciones normalmente son rápidas, el
navegador del alumno queda bloqueado unos
segundos a la espera de los resultados.
Simulación Larga
Si un programa de simulación fuese muy largo:
¾ Hay que programarlo de manera que se guarden resultados
parciales periódicamente.
¾ De esta manera los alumnos puede ver la evolución del
programa
¾ No es normal que las simulaciones de las prácticas que se imparten en laboratorio sean largas. Un ejemplo de este escenario son los cursos de formación de operadores de una central.
Simulación Larga
Hay dos maneras de generar gráficas de
resultados parciales:
1. Las gráficas se generan a petición del usuario
2. El sistema actualiza las gráficas automáticamente
El método 1 es más adecuado para trabajo individual, ya que sólo se generan las gráficas cuando hacen falta
El método 2 es el más adecuado para trabajo en grupo, ya que carga menos el sistema
Características de los Ensayos
El
ensayo
se realiza sobre un equipo concreto como si
el alumno estuviese en el laboratorio.
El número de equipos de ensayo es limitado y por lo
tanto hay que restringir el número de alumnos y
establecer turnos de uso.
Generalmente cada equipo está conectado a un
ordenador de laboratorio, que tiene instalados los
programas y drivers necesarios. El alumno no
necesita instalar nada en el ordenador remoto.
Es necesario verificar los parámetros para que el
equipo no pueda resultar dañado.
Ensayo Rápido
Si el ensayo es rápido el funcionamiento es
igual que en simulación:
¾ El alumno espera los resultados durante unos segundos
mientras tiene el navegador bloqueado.
¾ Al obtener los resultados, se analizan individualmente o en grupo y se proponen nuevos parámetros para el siguiente ensayo.
Ensayo Lento o Continuo
Si es lento/continuo, resulta interesante poder
modificar parámetros sin interrumpir el
ensayo
¾ La modificación de parámetros exige establecer un canal de comunicación especial con el proceso de control (que es un proceso que corre en tiempo real).
¾ Un mecanismo muy utilizado en estos controles es la creación de un socket, que permite enviar parámetros al proceso de control y recuperar variables de estado.
¾ Una alternativa es intercambiar parámetros y variables de estado mediante archivos
25
Comunicación por sockets
Para ensayo individual
¾ Una primera posibilidad consistiría en cargar un applet java en el navegador del alumno que establezca comunicación directa con el programa de control
¾ El socket se crearía por internet y por lo tanto habría que relajar las medidas de seguridad del Firewall que protege la red local. Esto es algo que en principio conviene evitar.
Servidor web
Servidor del laboratorio1
socket2
26
Comunicación segura por sockets
Para ensayo individual o en grupo
¾ Aunque se complica ligeramente el desarrollo software, resulta más seguro utilizar un programa intermedio para establecer la comunicación.
¾ El socket se crearía dentro de la red local de la Universidad y por lo tanto no hace falta abrir puertos especiales en el Firewall.
Servidor del
socket
Programa de comunicaciones
27
Comunicación por archivos
Para ensayo individual o en grupo
¾ Resulta más ineficiente por utilizar dispositivos externos
¾ El retraso es mínimo si el volumen de información es pequeño
¾ Es sencillo de implantar y garantiza la seguridad
¾ Permite interrumpir y retomar la conexión en cualquier momento
¾ Varios usuarios pueden interaccionar a la vez para trabajo en grupo
Servidor del laboratorio
Ensayo continuo sin cambio de parámetros
Un caso particular de ensayo continuo son aquellos
que no requieren cambio de parámetros.
El ordenador conectado al equipo experimental debe ir
guardando datos del estado
A petición del alumno se refrescan los datos en
pantalla.
Esta petición puede ser manual (pulsando un botón) o
bien automática (mediante código JavaScript
embebido en la pagina web del alumno)
Ensayo continuo sin cambio de parámetros
Ejemplo 1: Imágenes de una cámara de video
Programa de captura de fotos
Ensayo continuo sin cambio de parámetros
Ejemplo 2: Monitorizar el estado de un sistema
Generador de resultados
equipo
Programa de control Variables de estadoResumen
•Utiliza un equipo real •Ejecuta en batch: el
navegador queda en espera de la respuesta
•Utiliza un simulador •Ejecuta en batch: el
navegador queda en espera de la respuesta
•Matlab WebServer
Rápido
•Utiliza un equipo real
•Cambia parámetros on-line •Requiere mecanismos especiales de comunicación •Utiliza un simulador
•Cambia parámetros on-line •Raro en control
Lento o
Continuo
Ensayo
Simulación
Tipo de interacción del usuario
Resumen
¿Dónde estamos?
¾
En pleno desarrollo
¾
Recién solucionados los problemas técnicos básicos
¾ Manejo de Matlab + Simulink + RTWT desde comandos
¾ Comunicación de parámetros y gráficos mediante archivos