[en] ABSTRACT: This final degree project aims to develop a remote laboratory system based on Rasp berry Pi devices running RISC OS. This initiative arises due to the request for home isolation experienced by the students because of the COVID-19 pandemic. Which has led to the need to restructure practical teaching in Computer Structure and Organization courses, where these practices are focused on the use of real hardware. The target of this work is thus to provide the students with a mechanism to carry on remotely the practical sessions as if they were physically on the lab. An analysis of the system requirements has been performed as part of the work, as well as a study to select the most suitable solution to address them. The system enables students to interact with the desktop of the remote Raspberry Pi device, manage its power supply (mainly to allow for device restart in case of failure) and handle peripheral hardware modules connected to the Raspberry Pi. The system also allows for a student and a lecturer to visualize the desktop of the same remote device simultaneously in real time, providing an easy mechanism to solve questions and conduct tests. The system has been split into its hardware and software components for its deve lopment. The hardware side is itself organized in four large modules: power supply, control logic, visualization and interconnect. A system based on Arduino boards with relay managament has been proposed, using a single power supply for the Raspberry Pi devices and the system components, a webcam and a 10/100Mbps Ethernet switch. The software side of the system comprises a front-end with a GUI reachable through a web browser, a back-end to manage the system, and a light server to send orders to the control logic via HTTP requests. Upon completion of the study, a prototype has been implemented to ensure proper operation of the system. The prototype is equipped with two remote Raspberry Pi devices and two general purpose input interfaces attached to one of the devices. It should be noted that the system has been successfully developed, complying with the requirements established during the analysis phase.

[es] RESUMEN: Este trabajo de fin de grado comprende el desarrollo de un sistema de laboratorio remoto para la realización de sesiones prácticas usando equipos Raspberry Pi bajo el sistema operativo RISC OS. Esta iniciativa surge debido a la situación de aislamiento domiciliario que se ha vivido durante tiempos de pandemia, lo cual ha conllevado la necesidad de reestructurar la docencia práctica en las asignaturas del área de Estructura y Organización de Computadores, donde dichas prácticas están centradas en el uso de hardware real. El objetivo del proyecto es, por tanto, proporcionar a los alumnos de un mecanismo para que pue dan desarrollar las prácticas de forma telemática como si estuviesen en el laboratorio de las asignaturas. Como parte del trabajo desarrollado se ha hecho un análisis de las necesidades a cubrir con el sistema y un estudio de las soluciones disponibles, con el fin de seleccionar la más adecuada. El sistema permite que el alumno pueda interactuar de forma remota con el escritorio de la Raspberry Pi, gestionar su alimentación (principalmente para poder reiniciar el equipo remoto en caso de fallo) e interaccionar con dispositivos hardware periféricos. Asimismo, el sistema facilita que alumno y profesor puedan visualizar el mismo equipo de forma simultánea en tiempo real, lo que facilita la resolución de dudas y la realización de pruebas de evaluación. Para su desarrollo, se ha dividido el sistema en sus componentes hardware y software. La parte hardware del sistema se organiza a su vez en cuatro grandes módulos: alimentación del sistema, lógica de control, visualización e interconexionado. Se ha se leccionado al efecto un sistema basado en placas Arduino con gestión de relés, una fuente de alimentación que abastece al sistema y a los equipos Raspberry Pi, una web cam y un switch Ethernet a 10/100Mbps. La parte software del sistema comprende un front-end con una interfaz gráfica accesible a través de un navegador, un back-end para gestionar el manejo del sistema, y un servidor ligero para transmitir órdenes a la lógica de control mediante peticiones HTTP. Tras el estudio, se ha implementado un prototipo del sistema para verificar su adecuado funcionamiento. El prototipo está dotado de dos equipos remotos y dos interfaces para pines de entrada de propósito general conectados a uno de los equipos. Cabe des tacar que el desarrollo del sistema ha sido exitoso, alcanzando los requisitos planteados en la fase de análisis.