Documentos de Académico
Documentos de Profesional
Documentos de Cultura
los simuladores se pueden modificar fácilmente visualizar la ejecución concreta de cada instrucción,
para añadir nuevas instrucciones, construir nuevos o la imposibilidad de observar la ejecución de una
sistemas como multiprocesadores o simplemente instrucción por pasos, o ver los posibles efectos de
ofrecer más información. la segmentación sobre el mismo código. Además no
tiene un editor propio, lo que conlleva dificultades
Finalmente otra razón para usar un simulador en para hacer cambios en el código y tener que cargar
lugar de estaciones de trabajo es que estas no es- el fichero después de cada cambio.
tán disponibles universalmente y además el constante
progreso hacia máquinas cada vez más rápidas puede Hay otro tipo de simuladores, como el DLX [3]
dejar estas estaciones obsoletas. o el SimuProc [1], que implementan un procesador
hipotético, es decir, su repertorio de instrucciones no
2.1. Características de un simulador está basado en ningún procesador real.
la instrucción. Mientras, en el caso del multiciclo va- indica la posición del puntero de pila y las restantes
riará dependiendo de la etapa en la que nos encontre- los datos.
mos.
La realización segmentada incluye además el El segmento de texto contiene una lista de
diagrama multiciclo, figura 4, que se utiliza para instrucciones que componen el programa a ejecutar.
dar una perspectiva general de diferentes situaciones Está dividido en tres columnas. En la primera
dentro de la segmentación. Se considera que el columna se indica entre corchetes la dirección de
tiempo avanza de izquierda a derecha, situación que memoria hexadecimal (PC) de la instrucción. Las
se indica con el número de ciclo en la parte superior instrucciones se almacenan a partir de la dirección
de la imagen, y las instrucciones se desplazan de la 0x0040000. La segunda columna es la codificación
parte superior a la inferior del panel. numérica de la instrucción en hexadecimal, y
la tercera columna es la instrucción en lenguaje
El segmento de datos se puede dividir en dos ensamblador.
zonas: memoria y pila. Aquella instrucción que esté siendo ejecutado en
La memoria está dividida en dos partes, la primera ese momento aparecerá resaltada en color azul. Si se
columna, cuyo valor está entre corchetes es el valor ha insertado algún punto de ruptura (breakpoint) las
de comienzo de la primera palabra de la línea. Las instrucciones posteriores aparecerán en gris y en cur-
otras cuatro columnas son los datos almacenados en siva.
la memoria de forma consecutiva. La parte inferior de la ventana contiene los si-
La pila crece hacia direcciones inferiores de guientes botones: Volver al editor, Ciclo anterior,
memoria. Igual que la memoria esta zona también Ciclo siguiente y Ejecutar que ejecuta la totalidad
está dividida en dos partes, la primera columna del código o hasta el punto de ruptura. Además, en
XI Jornadas de Enseñanza Universitaria de la Informática 493
(a) (b)
[14] Fermín Sánchez. Características deseables en [16] Miguel A. Vega and Juan A. Gómez Juan
un procesador pedagógico parala enseñanza bá- M. Sánchez. Innovación docente en la Arqui-
sica de la arquitectura de computadores. Jorna- tectura de Computadores mediante el uso de Si-
das de Enseñanza Universitaria de la Informá- muladores. Jornadas de Enseñanza Universita-
tica (JENUI), 2002. ria de la Informática (JENUI), 2000.
[15] William Stallings. Organización y arquitectura
de computadores. Prentice Hall, 2000.
Guía visual y dinámica del funcionamiento de un procesador
didáctico sencillo
didad el funcionamiento a nivel hardware de un el profesor en el aula durante sus lecciones magis-
sistema digital de cierta complejidad, como es el trales, como por los alumnos de manera autóno-
sencillo procesador diseñado, surgía el problema ma, lo que les permitiría profundizar a su ritmo en
de que un elevado número de alumnos no llegaba la comprensión del funcionamiento del procesa-
a alcanzar el nivel mínimo deseado, lo cual era un dor, sin presiones.
inconveniente en asignaturas posteriores. Al tratarse de un procesador específico, no era
Dada la amplia utilización de simuladores en viable la utilización de simuladores ya existentes,
la enseñanza de materias de Arquitectura y Orga- sino que exigía el desarrollo de un simulador es-
nización de Computadores [8] [9] [3] y las venta- pecífico, para lo que se recurrió a plantear un pro-
jas que en el proceso de enseñanza/aprendizaje yecto fin de carrera (PFC). Dada la limitación de
reportan [7], en el momento en que se diseñó el tiempo, inherente al PFC, para el desarrollo de un
procesador sencillo, se realizó también su simula- simulador completo, que permitiera la posibilidad
dor correspondiente [1]. Dicho simulador es utili- de ejecución de diferentes programas, se decidió
zado en la asignatura de primer curso “Lenguaje reducirlo, de manera que lo que se ha obtenido es
Máquina”, impartida en el segundo semestre, y es la guía visual dinámica del funcionamiento del
muy adecuado para trabajar los aspectos relacio- procesador sencillo que aquí se presenta.
nados con la programación en lenguaje ensambla-
dor, permitiendo visualizar los resultados obte- 2. Estructura del procesador sencillo
nidos en cada paso de ejecución —contenido del
conjunto de registros y de memoria principal—, La unidad de proceso del procesador sencillo
pero sin hacer hincapié en el funcionamiento del (figura 1) consta de un conjunto de 32 registros de
hardware, que es el aspecto que interesa recalcar propósito general (CR), una unidad aritmético-
en la asignatura de Diseño de Sistemas Digitales. lógica sencilla (UAL), el contador de programa
Por ello, con el objetivo de paliar las defi- (PC), el registro de instrucción (IR), y una serie de
ciencias observadas, y con la idea de obtener me- registros y circuitería auxiliar (básicamente multi-
jores resultados, se pensó que sería de gran ayuda plexores). Se considera una memoria principal de
didáctica el contar con un simulador específico del 64K x 16 bits. Los datos son de 16 bits, mientras
procesador sencillo, que hiciera hincapié en el que las instrucciones son de 32 bits (de ahí la di-
funcionamiento de los componentes hardware visión del registro de instrucción, IR, en dos par-
(PC, IR, UAL, conjunto de registros,...) y que tes, IR1 e IR2, ya que se necesitan dos lecturas en
presentara una interfaz gráfica “amistosa” y sen- memoria).
cilla, de manera que pudiera ser utilizado tanto por
Figura 1. Estructura de la unidad de proceso del procesador sencillo (pantalla principal de la aplicación).
XI Jornadas de Enseñanza Universitaria de la Informática 499
En la figura 2 se puede ver el algoritmo ASM y el sistema operativo Windows XP. Se puede eje-
que refleja el funcionamiento de la unidad de con- cutar en plataformas PC Pentium y en los sistemas
trol del procesador, tal como lo muestra el progra- operativos: Windows 9x, Milenium, NT 3.5 o su-
ma al hacer zoom sobre el recuadro de la parte in- periores, 2000/ XP.
ferior izquierda de la pantalla principal. La pantalla principal (figura 3), permite ver el
estado de cada componente de la unidad de proce-
3. Características de la aplicación so mediante una interfaz gráfica intuitiva, propor-
cionando toda la información necesaria para com-
prender el funcionamiento de la misma: señales de
La aplicación se ha desarrollado en el entorno Mi-
control que se activan en un momento dado; esta-
crosoft Visual Basic 6.0, sobre una plataforma PC
2. Arquitectura de JAVATRACEIT!
de una línea de código. La Figura 3 muestra la llamado al actual. Es posible que no exista
ejecución de este tipo de salto. ninguno más externo, por lo que step out
provocará la finalización del hilo que ejecuta
dicho método, que si es el principal, finalizará la
ejecución del programa. La Figura 5 muestra la
ejecución de este tipo de salto.
4. Conclusiones
P.A. Castillo Valdivieso, M. García Cruz, M.G. Arenas, G. Romero, A. Prieto Espinosa
Dpto. de Arquitectura y Tecnología de Computadores
Universidad de Granada, 18071 Granada
e-mail: pedro@atc.ugr.es
Figura 1. Captura de pantalla bajo Windows en la que el programa-control (a la derecha) envía coordenadas al
simulador del radar (a la izquierda). En este caso, el radar muestra cinco objetivos, de los cuales el control
ha interceptado a dos (a la derecha vemos las coordenadas a las que se ordena interceptar). Conforme el
detector del radar avanza, los objetivos que quedan más lejanos van desapareciendo.
(programa que se ejecuta en modo texto en una decida no actuar; en ese caso, los valores
ventana de comandos, a la derecha). para X e Y deben ser igual a 0. En
cualquier otro caso, las ecuaciones a
El sistema funciona de la siguiente forma: utilizar serán las siguientes:
1. La sincronización entre el programa- X = 200 + distancia * cos(angulo)
control y el simulador se hace a través de Y = 200 - distancia * sen(angulo)
dos ficheros (S y A). 5. Una vez calculada la coordenada a
2. El simulador inicializa la ventana, dibuja interceptar, se guardan los valores X e Y
el radar, y va haciendo avanzar el en el fichero A (en la primera línea,
indicador de forma constante. A cada separados ambos números por un
paso escribe en el fichero S el ángulo espacio). Para ello hay que pasar a
actual del indicador y la distancia a un cadena cada uno de los números, y
objetivo detectado en ese momento (si no escribirlos en el fichero como caracteres
hubiera objetivo, escribe el valor 0 como individuales (texto plano). Así, si la
distancia). coordenada es (45,70) se guardaría como
3. El programa-control, que estaba en un la secuencia de caracteres ‘4’, ’5’, ’ ‘, ’7‘,
bucle de espera hasta que hubiera datos ’0‘, 13, 10 (el \n , en MSDOS, se cambia
en el fichero S, lee los 2 valores. Se trata por los dos caracteres con códigos ASCII
de acceder al fichero en modo de texto e 13 y 10).
ir leyendo carácter a carácter hasta
encontrar un espacio, lo que indicará que La sincronización por ficheros hace más
se ha leído un número más. Seguiremos fácilmente portable el sistema, y al tiempo
leyendo esa línea hasta haber leído los 2 delimita los aspectos que el alumno debe estudiar
números; después se pasan esas cadenas para hacer la práctica:
leídas a números enteros. • E/S por pantalla
4. El control procesa esos dos valores para • E/S por fichero
calcular la coordenada cartesiana (X,Y) • Estructuras de control complejas para la
donde debemos interceptar. Es posible sincronización
que en alguna ocasión (si la distancia es
0, esto es, si no hay objetivo), el control
XI Jornadas de Enseñanza Universitaria de la Informática 509
Figura 2. Controles del simulador para iniciar o detener su funcionamiento, para reiniciarlo, obtener información sobre
la versión del programa, o para terminar su ejecución.
Hemos desarrollado una versión del simulador Para sincronizar ambos programas a través
de los dos ficheros, el bucle principal del
para Linux y otra para Win32, por lo que la
práctica puede plantearse en ambos sistemas programa-control (el programa que debemos
operativos. realizar en ensamblador) debe ser similar al
Las versiones del simulador para los siguiente:
repetir
diferentes sistemas pueden descargarse de la URL abrir_fichero("S")
http://atc.ugr.es/~pedro/docencia/simuladores mientras(no_hay_datos_en(“S”)){
El programa simulador dispone de varios cerrar_fichero
botones para iniciar o detener su funcionamiento, hacer_pausa
o reiniciarlo (ver Figura 2). Su función queda abrir_fichero("S")
descrita a continuación: fin_mientras
// leer los datos
• “Parar” : detiene el simulador. El indicador angulo = leer_del_fichero
deja de girar y las comunicaciones se paran. distancia = leer_del_fichero
• “Continuo” : comienza el funcionamiento del cerrar_fichero
radar. El indicador irá girando, y de cuando //calcular coordenada
en cuando detectará nuevos objetivos. Las x = calcular_coord_X
comunicaciones se llevarán a cabo y = calcular_coord_Y
//escribir en “A” la coordenada
continuamente con el programa de control.
510 Recursos docentes
FSINCOS : halla el seno y el coseno del El funcionamiento de los registros internos del
ángulo (en radianes) que hay en la cima de la coprocesador matemático es diferente al del 8086.
pila, y deja ambos valores en la cima y en la No existen aislados ni con nombres distintos.
siguiente posición de la pila. Están estructurados en forma de pila cíclica de
ocho elementos. Cada elemento de la pila es de
5. Conclusiones 10 bytes de longitud (80 bits), y el formato de los
datos es real temporal, de forma que el rango de
El aprendizaje del lenguaje ensamblador suele valores representable va de 3.4E-4932 hasta
resultar complicado a los alumnos, así como llegar 1.2E4932. La representación binaria interna sigue
a hacerles ver la necesidad de su estudio. Sin el formato IEEE754 [4,5].
embargo, plantearles unas prácticas amenas y El puntero de pila indica en todo momento
atractivas puede motivarlos, evitando que les cuál es el elemento que se encuentra en la
resulte tan engorroso el estudio a tan bajo nivel de cabecera de la pila (Stack Top). Puede valer entre
la programación. 0 y 7, es decir, señala el número del elemento.
Este trabajo presenta un simulador de radar La mayor parte de las instrucciones del 8087
desarrollado con esta idea. El alumno debe usan los registros de la pila. Así, las aritméticas
desarrollar un programa de control que recibe el utilizan uno o dos operandos de la pila y el
valor de la distancia y ángulo del objetivo resultado se deja también en la pila.
detectado, y le envía la coordenada cartesiana del Todos los nombres simbólicos de las
objetivo a interceptar. instrucciones empiezan por F. El conjunto de
El primer año en que se ha ofertado esta instrucciones se puede dividir en los siguientes
práctica varios alumnos han desarrollado tipos(ver [1,2] para obtener más detalles):
programas de control siguiendo las diferentes
opciones para el cálculo del seno y coseno. Les • de transferencia de datos. Sirven para mover
resultó estimulante y motivador comprobar cómo operandos entre los elementos de la pila y la
sus programas calculaban las coordenadas memoria:
correctamente y acertaban en los objetivos. FLD cargar real en la pila
FST almacenar real en mem.
FILD cargar entero en la pila
Referencias FIST almacenar entero en mem.
fldz ; st0= 0
Z=Y–X*X fld dword [y] ; st0=y st1=0
fld dword [x] ; st0=x st1=y st2=0
fld dword [y] ; st0=y st1=x*x st2=x ; si (st0<st1) entonces ah=???????1 (x<y)
; si (st0>st1) entonces ah=???????0 (x>y)
; st0=st1-st0 and ah,00000001b
fsubrp st1 ; st0=y-x*x st1=y st2=x*x jnz x_menor
XI Jornadas de Enseñanza Universitaria de la Informática 513
…
x_menor:
Figura 3. Captura de pantalla bajo Linux en la que el programa-control (abajo a la derecha) envía coordenadas al
simulador del radar (arriba a la izquierda). En este caso, la pantalla del simulador muestra tres objetivos,
uno de los cuales ha sido interceptado.
LABNET: Laboratorio remoto para control
de procesos
Nourdine Aliane
Departamento de Arquitectura de Computadores y Arquitectura
aliane@uem.es
3.1. EL CLIENTE
3.2. EL SERVIDOR
El servidor constituye un puente entre los
clientes y las maquetas del laboratorio. Con su
entorno GUI, el administrador puede acceder a
todas las utilidades de administración de forma
sencilla. Las funciones más desatacadas son:
• Administración de usuarios.
• Administración de las maquetas
• Administración de los experimentos
• Administración de las conexiones
los diversos parámetros y tiempos del La gestión del tiempo se hace mediante el reloj
experimento. multimedia de Windows. Es un reloj bastante
preciso para periodos de muestreo mayores de 5
La figura nº10 nos muestra la utilidad de
milisegundos. Un estudio estadístico del error,
administración de los experimentos.
realizado sobre un solo temporizador nos
muestra un error del 0,2% con una desviación
estándar del orden de 0,05%.
4. CONSIDERACIONES SOBRE LA
IMPLEMENTACIÓN Toda la implementación del sistema se ha
codificado en Builder C++ y la concurrencia se
El servidor se ejecuta sobre un PC Pentium-III ha llevado a cabo mediante los hilos de la API
con Windows 2000 y alberga 2 tarjetas de Win32.
adquisición de datos PCLAB-816 para bus ISA
de Advantech.
5. EXPERIMENTOS Y PRUEBAS
Durante la fase de desarrollo, hemos realizado
varias pruebas parciales. Las más importantes
son las pruebas sobre el reloj multimedia, el
generador de señales, las pruebas sobre los
controladores y finalmente los retardos debidos
a la red
El temporizador
Las pruebas realizadas sobre el reloj de windows
son de tipo estadístico y son diseñadas para
evaluar la robustez y la regularidad de los
temporizadores. La prueba consiste en
programar un temporizador periódico que
ejecute una rutina cada periodo de muestreo.
Esta misma prueba se realiza un número elevado
de veces y se comparan los tiempos exactos de
Figura 10: Administración de los experimentos los experimentos con los tiempos esperados.
Para simplificar la configuración del sistema, se Para periodos de muestreo del rango 5…50
han definido modelos virtuales de entrada-salida milisegundos, y realizando la misma prueba
de todas las maquetas utilizadas. Estos modelos 6000 veces, se ha obtenido un promedio de error
virtuales guardan la información como la del 0,2% y con una desviación estándar del
polaridad de las señales de control y de salida, orden de 0,05%. Esta prueba ha sido realizada
sus escalas, rangos, etc. El administrador solo solo para un temporizador y conviene
tiene que realizar un cableado entre las maquetas generalizarla a varios temporizadores.
virtuales y las reales sin preocuparse de los
detalles de ganancias de las tarjetas de
adquisición de datos. El generador de señales
En cuanto a la implementación digital de los Para comprobar el buen funcionamiento del
controladores PID, se ha utilizando un diseño generador de señales, se ha diseñado un plan de
basado en la conversión del diseño analógico pruebas el cual consiste en generar una señal
utilizando la aproximación de Tustin. El modulo especificando los parámetros de amplitud y
de los controladores está tanto en el cliente frecuencia, a continuación sacarla por un por un
como en el servidor. canal de salida de la tarjeta de adquisición. Esta
misma señal se captura y se procesa con
Matlab/Simulink. Esta prueba nos permite no
XI Jornadas de Enseñanza Universitaria de la Informática 521
solamente comprobar la onda de la señal, sino su de muestreo más elevados ya que son sistemas
generación en el tiempo. lentos.
En todo caso, estamos añadiendo un retardo de 1
periodo de muestreo que es inherente a la
Los controladores
implementación de un control digital.
Las pruebas realizadas sobre los controladores
son en lazo cerrado y en modo local. La prueba
consiste en consiste en comparar las señales de 6. CONCLUSIONES
control de PID implementado y del mismo PID,
pero implementado en el Matlab/Simulink, pero En este artículo, en un primer lugar, se han
tiene como entradas las mismas señales presentado los trabajos más importantes en los
generadas por el sistema LABNET. últimos años en el diseño de plataformas para el
acceso a los laboratorios remotos. A
La figura nº11 muestra el aspecto de la respuesta continuación, se ha presentado nuestro sistema
de la maqueta de temperatura ante un escalón y dando sus funcionalidades más importantes.
controlada con un PID con D-filtrada.
Nuestro sistema presenta ventajas en varios
aspectos, en comparación con otros sistemas,
como la posibilidad de controlar varias maquetas
de forma concurrente, la posibilidad de
experimentar una acción de control local o
remoto, la generación de informes o la
reutilización de plantillas. Estos aspectos hacen
que nuestra aplicación sea funcional y
productiva.
Sin embargo, pensamos que sistema LABNET
Figura 11: La respuesta de la maqueta de temperatura
controlada con un PI-D-filtrada
es mejorable, en los siguientes aspectos: la
posibilidad de cambio de los parámetros del
regulador en tiempo real, la posibilidad de
El control remoto edición de las leyes de control, su descarga al
servidor, la posibilidad de incrementar el
En el caso de ejecución del algoritmo de control número de maquetas de forma independiente del
en la parte cliente, hemos evaluado los retardos hardware.
que se añaden en la transmisión por la red
dependiendo del tipo de conexión (cable o
inalámbrica). Referencias
Tiendo en cuenta las condiciones experimentales [1] Aburdene, M. F., Mastascusa, et all “A
(con poco tráfico en la LAN de nuestro proposal for a remotely shared control
Campus), hemos observado, en promedio, que systems laboratory”, Proceedings of the
por el cable tenemos un retardo que en todos los ASEE 1991 Frontiers in Education
casos es menor de 1 milisegundo, mientras este Conference, Session 24A3, 1991, pp. 589-
se dispara hasta casi 42 milisegundos en el caso 592.
del acceso inalámbrico.
[2] Aktan, B, C.A. Bohus, “Distance
El efecto de los retardo sobre la calidad del Learning Applied to Control Engineering
control remoto es mínimo en el caso del cable, Laboratories”. IEEE Transactions on
ya que las maquetas que estamos utilizando son Education”, 1996 Vol 39(3), pp 320-326.
sistemas lentos. Esto nos permite utilizar
periodos de muestreo algo más elevados. En el [3 ] J. Albino Méndez Pérez et all,
caso de la red inalámbrica, el retardo es algo Controlweb: una herramienta para el
elevado, pero aun así, podemos elegir periodos análisis y simulación de sistemas de
522 Recursos docentes
Lenin Lemus1, Alberto Llorens1, Mª. Belén Bollo1, José Manuel Gómez2
1
Dpto. de Informática de Sistemas y Computadores
2
Dpto. de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
46022 Valencia
e-mail: lemus@disca.upv.es, allloboi@eui.upv.es, mbolse@fiv.upv.es, jogomez@dsic.upv.es
acontecimientos más importantes sucedidos que permita al estudiante poner en práctica todos
en el ámbito de los laboratorios virtuales. los conocimientos que vaya adquiriendo a lo largo
• En la tercera sección se presentan los del estudio de la materia y, esto, en algunos casos,
criterios para establecer un catálogo de los requiere de la manipulación de equipo sofisticado.
laboratorios virtuales disponibles. Este En las enseñanzas tradicionales, este papel lo
apartado también se dedica al material desempeñan las prácticas realizadas en los
didáctico que se presenta para que sea laboratorios. Tradicionalmente, este tipo de
utilizado en las asignaturas de la UPV. prácticas fueron pensadas para contar con la
presencia física tanto del estudiante como del
profesor.
2. Laboratorios virtuales El poder trasladar este entorno práctico a la
enseñanza a distancia, requiere de la existencia de
un sistema de apoyo: un laboratorio virtual.
En esta sección se define el término que en el
proyecto PAEES NTA2 se le ha dado a
“Laboratorio Virtual”. Cabe destacar, que algo tan 2.2. Definición
trivial como presentar una definición no ha sido
fácil, debido a que sus características han ido En el apéndice A, se proporciona una revisión
evolucionando de la mano de Internet, de manera histórica de la evolución del concepto de
que la idea de laboratorio virtual puede variar laboratorio virtual.
dependiendo del entorno en el cual se utilice. A partir de esta evolución, se puede ver que
Para llegar a esta definición, primero se algunos autores conciben un laboratorio virtual
establecen la motivación de los laboratorios como un programa de simulación [8]. Otros,
virtuales, a continuación, se presentan las consideran que un laboratorio virtual se encarga
características aceptadas por la comunidad del control remoto de la instrumentación.
educativa para un laboratorio virtual y finalmente Por otro lado, en el artículo [10] publicado en
se presenta nuestra definición, que de ninguna 1995 “The Virtual Laboratory: Using Networks to
manera trata de ser la única aceptable en las enable Widely Distributed Collaboratory
comunidades científica o educativa. Science”, los autores, establecen que un
laboratorio virtual debe cumplir con los siguientes
2.1. Motivación requisitos:
• Control remoto y monitorización de los
En la sociedad moderna en la que nos experimentos.
encontramos, la educación a distancia requiere de • Comunicaciones multimedia entre los
sistemas de enseñanza más flexibles, accesibles y investigadores, a ser posible en multicast.
adaptativos. • Un cuaderno de notas digital con todas las
Hasta hace unos años, el modelo educativo de facilidades para introducción de datos,
educación a distancia se basó fundamentalmente ficheros, figuras, búsquedas, etc.
en las tutorías por teléfono o en el correo • Gestión de los recursos, para decidir
ordinario. Actualmente, las nuevas tecnologías adecuadamente que usuario o usuarios puede
ofrecen: acceder a cada uno de los experimentos
• Los sistemas hipermedia como forma de disponibles.
estructurar la información • Seguridad tanto en el aspecto de permitir y
• E Internet como soporte de dicha denegar acceso como en los recursos para
información [1]. gestionar posibles fallos del sistema.
A pesar de que estas dos herramientas, pueden • Diversos tipos de comunicación: Voz, imagen,
ser suficientes, para la creación de sistemas de datos, resultado de experimentos, estado de
apoyo al aprendizaje de materias dotadas de una los experimentos.
componente práctica no muy fuerte, la enseñanza • Ancho de banda: Adecuado para permitir las
de asignaturas tales como: el control automático, distintas comunicaciones de datos científicos
la arquitectura y tecnología de computadores, la como de imágenes o vídeo.
física, etc., requiere de algo más. De un elemento
XI Jornadas de Enseñanza Universitaria de la Informática 525
incluir una versión digital del instrumento, aunque Para fomentar el aspecto educativo de la
muy simplificada. herramienta se han incluido unos tutoriales que
Sus características principales son: explican con detalle el funcionamiento del
• Una interfaz gráfica casi idéntica a la carátula instrumento. El usuario es guiado en todo
de los osciloscopios reales de doble traza, momento por medio de unos bocadillos, tal y
donde los botones se pueden pulsar, girar y como se aprecia en la Fig. 2. Los tutoriales vienen
encender utilizando el ratón. definidos por una serie de archivos de texto que
• Un método de enseñanza y evaluación permiten establecer diferentes configuraciones
interactivos mediante tutoriales y preguntas para cada paso del tutorial y así forzar a estar en
que pudieran ser evaluadas a posteriori por el un estado dado en algún momento del tutorial,
sistema de forma automática. aunque también se puede dejar libertad al usuario
• Un buen visualizador de señales sintéticas y para que se vea forzado a seguir los pasos de la
reales. explicación si quiere terminar correctamente el
• Comunicación con otras aplicaciones a través tutorial.
de puertos de comunicaciones y LiveConnect.
• Interacción con un repositorio de tutoriales de
diferentes idiomas y señales.
• Posibilidad de visualizar señales reales a
través de largas distancias.
Referencias
[1] Sánchez, José. Dormido, Sebastián. Morilla, F. [10] Johnston, William E. Agarwal, Debora. The
Laboratorios virtuales y remotos para la Virtual Laboratory: Using Networks to enable
práctica a Distancia de la Automática. Widely Distributed Collaboratory Science.
Departamento de Informática y Automática, Ernest Orlando Lawrence Berkeley National
UNED. Laboratory, University of California, 1995.
[2] Rodrigo, Vicent M. Modelo de referencia de [11] Hernández, A.M. Benlloch, J.V., Benet, G.
laboratorios virtuales y Aplicaciones a Sistema de instrumentación programable
sistemas de Tele-educación, 2003. multiusuario vía red local para el desarrollo
[3] Goldberg, Harold. What is Virtual de prácticas de laboratorio. II Congreso
Instrumentation? IEEE Instrumentation & TAEE ’96, Sevilla 1996.
Measurement Magazine, 2000. [12] Benlloch, J.V. Lemus, L. Buendía, F. García
[4] Mercurio, Philip J., Elvins T.T., Young J.M. Bayo, J.L. Remote Data Acquisition over
Stephen J., Cohen, Philip S., Fall, Kevin R., the Internet. Annual Conference on Education
Ellisman, Mark H. The distributed laboratory: in Electrical and Information Engineering,
an interactive visualization environment for 2000.
electron microscope and 3d imaging. [13] Spoelder, H.J.W. Ullings, A.H. Groen, F.C.A
Communications of the Association for Virtual Instrumentation: A survey of
Computing Machinery, 1992. Standards and their Interrelation. IEEE
[5] Haden, G.L. An object Oriented Modelling Instrumentation and Measurement
and Simulation Component for Virtual Technology Conference. Ottawa, Canada,
Engineering Laboratories. Proceedings of 1997.
22nd annual conference Frontiers in [14] Werges, Stephan C. Naylor, David L. A
Education, 1992. Networked Instructional Instrumentation
[6] Cerfetal, V.G. National Collaboratories – Facility. Annual Meeting of the American
Applying Information Technology for Society for Engineering Education,
Milwaukee, 1997.
Scientific Research. Committee on a National
Collaboratory, National Research Council. [15] Ferrero, Alessandro. Piuri, Vincenzo. A
National Academy Press, Washington D.C. Simulation Tool for Virtual Laboratory
1993. Experiments in a WWW Environment. IEEE
[7] Mostermean, P.J. Donaldt, M.A.M. Campbell, IMTC. St. Paul, Minnesota, Mayo 1998. IEEE
J. Olin. Burow, C. Bouw, R. Brodersen A.J. Transaction on Instrumentation and
Bourne J.R. Virtual Engineering Measurement, 1999.
Laboratories: Design and Experiments. [16] IEEE Control System Magazine. Using the
Journal of Engineering Education, 1994. Web in Your Courses: What Can You Do?
[8] Mostermean, P.J. Campbell, J. Olin. Design What Should You Do?, Febrero 1999.
and Implementation of an Electronics [17] Benetazzo, L. Bertocco, M. Ferraris, F.
Laboratory Simulator. P.J. Mostermean, J. Ferrero, A. Offelli, C. Parvis, M. and Piura, V.
Olin Campbell, R. Brodersen A.J. Bourne J.R. A Web-Based Distributed Virtual Educational
IEEE Transactions on Education. 1996. laboratory. IEEE TIM, 2000.
[9] Goldberg, Ken. Mascha, Michael. Gentner, [18] García, Xavier C. Alfonso, Julià M.
Steven. Rossman, Juergen. Rothenberg, Nick. Introducción a los Sistemas de Gestión de
Sutter, Carl. Wiegley, Jeff. The Mercury Contenidos (CMS) de código abierto.
project – Robotic tele-excavation. Beyond the Departamento de Informática y Automática,
Web: Excavating the Real World Via Mosaic. UNED, 2004.
International WWW Conference. Chicago,
1994.
EIPMail: Una herramienta para la retroalimentación en
evaluación continua vía correo electrónico.
Para la realización de esta tarea los estudiantes momento se plantea el objetivo de hacer llegar a
disponen de tiempo en el aula, pero la mayoría los alumnos determinada información objetiva
del trabajo lo realizan los grupos de forma sobre sus progresos en la asignatura. Se ha
autónoma fuera del horario de la asignatura. decidido desarrollar una aplicación que trabaja
Tras esto se procede a la corrección, donde con los datos almacenados sobre los alumnos en
cualquier miembro del grupo puede ser una hoja Excel, y que es capaz de enviarlos por
requerido para resolver el problema, y la correo electrónico de forma automática y
calificación obtenida es la que finalmente personalizada.
reciben todos los componentes del grupo.
Toda esta metodología encaja dentro del
sistema de evaluación continua seguido en una 3. La asignatura
asignatura, donde el alumno obtiene también
una calificación a partir de los distintos La asignatura “Estructuras de Datos y de la
exámenes parciales que va realizando a lo largo Información” (en adelante EDI) es una materia
del curso. La nota final de la materia sería el troncal, de segundo curso, impartida en las
resultado de un reparto porcentual de los titulaciones del área de informática de la Escuela
diferentes exámenes, notas de ejercicios de Superior Politécnica de la Universidad Europea
clase, notas de las prácticas de laboratorio y de Madrid. Originalmente tiene asignados 12
asistencia a las clases que el estudiante va créditos en el Boletín Oficial del Estado, de los
obteniendo a lo largo del curso. cuales 9 son teóricos y 3 son prácticos.
Para que el alumno tenga conocimiento de En la dinámica de la materia se distinguen
su situación en la asignatura, se revela claramente dos componentes: una teórica y otra
determinante el hecho de que pueda estar al práctica. La primera de ellas se desarrolla
tanto en cada momento el estado de su básicamente siguiendo una metodología de clase
evaluación. En el caso que nos ocupa, y como se magistral, que se ve complementada con la
ha comentado con anterioridad, son varios los realización de ejercicios para practicar y afianzar
factores que influyen en lo que se convertirá en los conceptos explicados. Normalmente estos
la calificación final del alumno. Se hace ejercicios se plantean al concluir cada tema.
necesario informar al estudiante acerca de sus Para su realización se han implantado técnicas
evoluciones (porcentaje de asistencia a clase, de aprendizaje cooperativo: los alumnos se
notas en los ejercicios, calificaciones de las organizan en grupos para la realización,
prácticas, etc.), con una frecuencia acorde con el corrección y calificación de los problemas. La
ritmo de la asignatura. asistencia se considera requisito indispensable
El sistema de comunicación elegido ha sido para la evaluación continua, por lo que se aplica
el correo electrónico. Se ha escogido este medio un coeficiente corrector sobre la nota del alumno
por su carácter activo: el correo electrónico dependiente de su porcentaje de faltas
permite al profesor decidir el ritmo con el que injustificadas.
un alumno recibe la información, viéndose así El apartado práctico se basa en la realización
reforzada su labor de director de la asignatura en del curso “Estructuras de Datos y Algoritmos”
evaluación continua. Existen alternativas de de iCarnegie. Este curso, que consiste en la
comunicación basadas en tecnología web [2] realización de cuestionarios y prácticas de
que no permiten este tipo de control por parte programación en C++ (sobre una base teórica,
del profesor, ya que queda a iniciativa del que, en este caso, encaja perfectamente con el
alumno la consulta de los datos. En este sentido, temario de EDI), es uno de de los diez ofertados
cabe resaltar también la contribución motivadora por esta institución asociada a la Carnegie
de una sabia gestión de la transmisión de Mellon University. Los cursos ofertados por
información por parte del profesor. El correo iCarnegie utilizan técnicas de formación a
electrónico ha sido utilizado como herramienta distancia a través de Internet.
de comunicación en casos anteriores [3].
Todos los alumnos de la Universidad
Europea de Madrid tienen acceso a una cuenta
que les proporciona la propia universidad. Por el
XI Jornadas de Enseñanza Universitaria de la Informática 533
Se pretende que la versión actual no sea más principales proyectos de futuro se encuentra la
que el germen de todo un sistema de herramientas construcción de herramientas de apoyo no sólo a
de apoyo a la evaluación en torno a los datos la consulta, sino también a la modificación de
almacenados en libros Excel (o cualquier otro datos en evaluación continua (por ejemplo,
origen de datos de uso común). Entre los
gestión de faltas de asistencia), el posible envío de [2] Dougiamas, M. Moodle: A Free Open Source
información de apoyo al seguimiento de la Course Management System for Online
evaluación (comentarios, valoraciones, etc…) así Learning. www.moodle.org.
como de aplicaciones que faciliten la [3] Huang, A. Innovative Use of Email for
comunicación en el sentido opuesto a EIPMail, es Teaching. Communications of the ACM.
decir, que posibiliten el envío de información por Noviembre de 2001, Vol. 44, Nº 11. Págs. 29
parte de los alumnos al profesor. a 32.
[4] Sorbonne Joint Declaration. Joint declaration
Referencias on harmonisation of the architecture of the
European higher education system, by the four
[1] Cernuda del Río, Agustín. Retroalimentación Ministers in charge for France, Germany, Italy
a los alumnos tras los exámenes finales: Un and United Kingdom. Paris, the Sorbonne,
caso práctico. X Jornadas de Enseñanza May 25, 1998.
Universitaria de la Informática, 2004. [5] The Bologna Declaration of 19 June 1999.
Alicante. Joint declaration of the European Ministers of
Education.
jsYASP: Un simulador de un procesador educativo en Javascript
A
CU Z ALU
Control Unit X
C Arithmetic-Logic Unit
ALU PC
5 microinst
IR
BusM BusR