Por favor, use este identificador para citar o enlazar este ítem:
http://hdl.handle.net/11531/14377
Título : | FPGA Web |
Autor : | Alexandres Fernández, Sadot Muñoz Frías, José Daniel Miguel Fernández, Rita de Universidad Pontificia Comillas, Escuela Técnica Superior de Ingeniería (ICAI) |
Palabras clave : | 33 Ciencias tecnológicas;3304 Tecnología de los ordenadores;330417 Sistemas en tiempo real;3307 Tecnología electrónica;330703 Diseño de circuitos |
Fecha de publicación : | 2016 |
Resumen : | INTRODUCCIÓN
Hoy en día, en prácticamente todos los hogares se dispone de al menos un ordenador, así como dispositivos electrónicos móviles como smartphones y tablets. Mediante este proyecto se pretende hacer uso de estas tecnologías para poder tener acceso a determinado material de los laboratorios de ICAI mediante internet, para que así los alumnos puedan realizar prácticas, o simplemente investigar por su cuenta, de una forma sencilla y sin necesidad de disponer directamente del material hardware necesario. Esta idea se corresponde con el concepto de laboratorio remoto.
Un laboratorio remoto es una herramienta de software y hardware que permite a los estudiantes acceder de forma remota a equipos reales situados en la universidad. Los estudiantes pueden utilizar este material como si estuvieran en una sesión de laboratorio rutinaria.
OBJETIVOS
El objetivo principal del proyecto es la creación de un laboratorio remoto funcional para su instalación en la universidad. Se centrará en la implementación en una placa FPGA Altera DE1 de un sistema que permita su manejo de forma remota mediante un ordenador o dispositivo móvil. Este sistema proporciona a los alumnos la capacidad de controlar el equipo real, localizado en el centro, de manera que pueden programarlo y manipularlo con sus propios archivos sin necesidad de encontrarse en la universidad.
METODOLOGÍA
Como se ha mencionado en el apartado anterior, el dispositivo elegido para su control por internet es la FPGA Altera DE1 [1], escogido por ser una herramienta que se utiliza en algunas asignaturas impartidas en la universidad. Se ha utilizado el software CAD del mismo desarrollador que la placa, Quartus II [2], para la carga de proyectos en la misma.
Los principales aspectos a controlar son los interruptores y pulsadores de la placa, la descarga de archivos y la visión de la placa por internet, además de la creación de una página web que permita la ejecución de todos estos pasos. Para todo ello se ha utilizado como herramienta principal Xampp [3], una distribución de Apache que permite el uso de los lenguajes HTML, PHP y JavaScript entre otros.
En primer lugar se ha procedido a realizar el control de los interruptores y los pulsadores, es decir, las entradas manipulables de la FPGA. Para ello se ha utilizado un Arduino Uno [4]. Las conexiones de los elementos a manejar de la FPGA se han conectado físicamente a pines del Arduino (Figura 1), por los que se envía la información necesaria para configurar estos dispositivos como encendidos o apagados mediante la comunicación por el puerto serie.
Figura 1. Conexión interruptores y pulsadores
Utilizando el programa Xampp se han construido los botones necesarios para que aparezcan en pantalla y, según cual se presione, se envía un carácter diferente por el puerto serie. Mediante el compilador de Arduino se ha establecido una relación entre cada uno de los posibles caracteres y una acción en alguno de los pines de esta placa.
A continuación se ha desarrollado el módulo de carga de archivos, todo ello a través de Xampp. El sistema creado permite seleccionar el archivo deseado (para la correcta descarga del proyecto es necesario subir el archivo *.sof del mismo, que se crea automáticamente tras una compilación del proyecto en Quartus II) y subirlo al servidor, almacenándolo en una carpeta determinada. Tras esto, otro archivo con extensión *.cdf que se encuentra en la misma carpeta es el que hace posible la descarga del proyecto seleccionado en la FPGA.
Para la visión de la placa se ha utilizado el programa Yawcam [5], que permite la visualización a tiempo real de la grabación de una cámara. Se ha diseñado una estructura ligera (Figura 2) para la distribución de todos los elementos de manera que permanezcan fijos.
Figura 2. Estructura del montaje
Otro componente importante de la página es el temporizador. Existe un temporizador que, después de cierto tiempo de inactividad en la ventana en la que se puede interactuar con la placa, redirige al usuario automáticamente a la página de inicio, permitiendo así el acceso de otras personas.
Finalmente, se han unido todos los módulos anteriores creando una interfaz simple para que el usuario pueda manejar el sistema de forma sencilla. La estructura principal del sitio web es la reflejada en la Figura 3.
Figura 3. Diagrama de bloques del sitio web
RESULTADOS Y CONCLUSIONES
El resultado final del proyecto es una página web en la que se puede cargar un programa en una placa FPGA, interactuar con ella y ver qué le sucede en tiempo real. La estructura de la misma se puede observar en la Figura 3: a partir de una página de inicio, se accede a la ventana de subida de archivos para finalmente poder manipular la placa de manera remota. La página cuenta con una pantalla de información y ayuda, así como enlaces a la página de inicio y a la página de la Universidad Pontificia de Comillas. La página principal del sitio web, en la que se puede manipular la placa, es la mostrada en la Figura 4.
A pesar de que la página es completamente funcional, cabe destacar que admite la implantación de una gran cantidad de mejoras, como pueden ser crear un control de usuarios o añadir nuevos dispositivos para controlarlos de forma remota. Estos aspectos serán considerados por futuros alumnos que continúen el proyecto.
Figura 4. Página web
REFERENCIAS
[1] Altera DE1 [Online] http://www.terasic.com.tw/cgi-bin/page/archive.pl?No=83
[2] Quartus II [Online] http://dl.altera.com/13.0sp1/?edition=web
[3] Xampp [Online] https://www.apachefriends.org/es/index.html
[4] Arduino Uno [Online] https://www.arduino.cc/en/Main/ArduinoBoardUno
[5] Yawcam [Online] http://www.yawcam.com/ INTRODUCTION Nowadays, there is a computer in nearly every home, such as mobile electronic devices like smartphones or tablets. This project aims to use these technologies to provide access to determined material of ICAI’s laboratories through the internet, in order to allow the students to perform their experiments or investigate easily on their own. This project eliminates the necessity of possessing the hardware devices in the same room. This concept correlates to a remote laboratory. A remote laboratory consists in a software and hardware tool that allows the students to remotely access to real equipment located at the University. Students can use this material as if they were in a routine laboratory session. OBJECTIVES The main objective of the project is the creation of a functional remote laboratory for its installation at the University. It will be focused on the implementation in a FPGA Altera DE1 board of a system that allows its management remotely using a computer or a mobile device. This system provides students the ability of controlling real equipment, located in the building, so they can program it and handle it with their own files without having to be in the University. METHODOLOGY As it was mentioned in the section above, the chosen device to control by internet is the FPGA Altera DE1 [1]. It was selected because this instrument is used in some subjects taught at the University. It was chosen the programming tool Quartus II [2] to upload files on the FPGA, since it belongs to the same developer than the board. The main points to control are the switches and push buttons of the FPGA, the programming of files in the board and the visualization of the board in the web page, in addition to the creation of a web page that allows the execution of all these steps. It has been used as the primary tool a program named Xampp [3], an Apache distribution that allows the use of HTML, PHP and JavaScript languages among others. First of all the control of the switches and the pushbuttons, i.e. the manipulated entries of the FPGA, needed to be done. To accomplish this point an Arduino Uno [4] was used. Physical connections were made between the elements to handle in the FPGA and the Arduino pins (Figure 1). The needed information to configure the devices as turned on or turned off is sent from the Arduino pins to the buttons using serial port communication. Figure 1. Switches and pushbuttons connection There have been built the necessary buttons in the screen to control the physical ones, and according to which one is pressed, a different character is sent by the serial port. Using the Arduino compiler a relationship between each of the possible characters and an action on the desired pin has been established. Then the file upload module had been developed, all through Xampp. The created system allows users to select the desired file (for a correct compilation and programming of the project is necessary to upload the *.sof file, which is automatically created after a project compilation in Quartus II) and upload it to the server, storing it in a specific folder. After this, another file with extension *.cdf, which is located in the same folder, makes possible the programming of the selected project in the FPGA. To obtain the visualization of the board a program called Yawcam [5] was used. This program allows real time display of the record of a camera. A lightweight structure (Figure 2) has been designed for the distribution of all the elements so they remain fixed. Figure 2. Structure Another important component of the web page page is the timer. There is a timer that, after a certain time of inactivity on the window in which you can interact with the board, it automatically redirects the user to the home page, allowing the access to other people. Finally, all the previous modules were joined creating a simple interface so the user can manage the system in a simple way. The main structure of the web site is reflected in the Figure 3. Figure 3. Block diagram of the web site RESULTS AND CONCLUSIONS The final result of the project is a web site in which a user can load a program on an FPGA board, interact with it and see what happens in it in real time. The structure of the page can be observed in the Figure 3: beginning in a home page, the user can access to a window where he can upload the desired file to, finally, be able to handle the board in a remote way. The page has a screen of information and support, as well as links to the home page and the web page of the Universidad Pontificia de Comillas. The principal page of the web site, the one in which you can manipulate the board, is shown in the Figure 4. While the page is fully-functional, is noteworthy that it supports the implementation of a large number of improvements, such as creating a user control or adding new devices to control them remotely. These aspects will be considered by prospective students that will continue the project. Figure 4. Web page REFERENCES [1] Altera DE1 [Online] http://www.terasic.com.tw/cgi-bin/page/archive.pl?No=83 [2] Quartus II [Online] http://dl.altera.com/13.0sp1/?edition=web [3] Xampp [Online] https://www.apachefriends.org/es/index.html [4] Arduino Uno [Online] https://www.arduino.cc/en/Main/ArduinoBoardUno [5] Yawcam [Online] http://www.yawcam.com/ |
Descripción : | Grado en Ingeniería Electromecánica |
URI : | http://hdl.handle.net/11531/14377 |
Aparece en las colecciones: | KL0-Trabajos Fin de Grado |
Ficheros en este ítem:
Fichero | Descripción | Tamaño | Formato | |
---|---|---|---|---|
TFG000962.pdf | Trabajo Fin de Grado | 3,58 MB | Adobe PDF | Visualizar/Abrir |
TFG000962 Autorizacion.pdf | Autorización | 231,62 kB | Adobe PDF | Visualizar/Abrir Request a copy |
Los ítems de DSpace están protegidos por copyright, con todos los derechos reservados, a menos que se indique lo contrario.