[en] The aim of this project is to design an inexpensive but at the same time highly customizable system to be used as a tool to experiment with the communication between devices through a power line and, in particular, through the 240VAC mains, using the authorized low frequency band (around 100kHz). The tool should allow the evaluation of the deployment of the PLC technology in different scenarios to determine its feasibility. Therefore, it must provide many customizable options for maximum versatility, like different modulations schemes, configurable transmission rates, adjustable voltage levels, etc. The transmission of data over the mains must address these main challenges: • At transmission, it requires the data to be modulated to don't interfere with other existing signals, as the smart metering used by the energy providers. The usage of the available band is regulated by global organizations and it's different depending on the region. • At reception, it requires the signal to be captured at high enough sampling rates to be able to properly demodulate it and recover the transmitted data. • In both sides, the electronics must be designed to manage the coupling between the modulated signal carrying the data and the AC supplied energy. This project consists on the development of a full software framework to manage an existing system consisting on the popular BeagleBone Black platform plus an attached cape which has been explicitly developed for this project (called PlcCape). The core of that board is an Analog Front End which integrates a high speed DAC that must be handled by a SPI bus. The DAC in conjunction with an integrated Power Amplifier stage will generate the modulated signal that will be transmitted over the power line. This project covers these main areas: • Software patches over the off-the-self SPI and ADC drivers that come with the Linux version in the BeagleBone, with the aim of attaining the real-time performance required. • Creation of static reusable libraries to encapsulate the low-level access to the underlying hardware. • Design of a plugin-based system to allow an easy customization and expansion of the framework through the addition of third-party modulation algorithms. • Development of a dedicated application to be used as a laboratory tool to test with different waves, frequencies, modulations, filters, gains, etc. • Testing of the whole system in different scenarios to confirm the viability of the solution proposed.

[es] El objetivo de este proyecto es diseñar un sistema asequible pero a su vez altamente personalizable para ser usado como una herramienta para experimentar con la comunicación entre dispositivos a través de una línea de potencia y, en particular a través de la red de suministro de 240VAC, usando la banda de bajas frecuencias autorizada (sobre los 100kHz). La herramienta debería servir para poder evaluar el despliegue de la tecnología PLC en diferentes escenarios y así determinar su viabilidad. Por tanto, debe proporcionar una gran variedad de opciones de configuración para una máxima versatilidad, como por ejemplo, diferentes esquemas de modulación, velocidades de transmisión configurables, niveles de tensión ajustables, etc. La transmisión de datos por la red eléctrica se puede resumir en estos puntos clave: • En la parte transmisora los datos se tienen que modular para no interferir con otras señalizaciones existentes, como puede ser la telemetría inteligente usada por las compañías eléctricas. El uso de la banda disponible está regulado por organizaciones globales y es diferente según la región. • En la parte receptora la señal se tienen que capturar con una frecuencia de muestreo suficiente para ser capaces de demodularla correctamente y recuperar los datos enviados. • En ambos lados de la comunicación la electrónica debe gestionar el acoplamiento entre la señal modulada que lleva los datos y el suministro de energía. Este proyecto consiste en el desarrollo de un aplicativo o paquete completo de software encargado de gobernar un sistema existente basado en la popular plataforma BeagleBone Black con una placa anexa (cape) que ha sido desarrollada explícitamente para este proyecto (denominada PlcCape). El corazón de esta placa es un bloque analógico que integra un DAC de alta velocidad que se controla mediante un bus SPI. El DAC, junto con una etapa de potencia integrada, generará la señal modulada que se transmitirá por la línea de potencia. Este proyecto abarca las siguientes áreas: • Parcheado del código fuente de los drivers SPI y ADC que vienen de serie con la versión de Linux de la BeagleBone, con el objetivo de alcanzar el rendimiento a tiempo-real que se necesita. • Creación de librerías estáticas reutilizables que encapsulen el acceso de bajo nivel al hardware. • Diseño de un sistema basado en extensiones (plugins) para permitir una fácil personalización y expansión del aplicativo mediante la incorporación de algoritmos de modulación de terceros. • Desarrollo de una aplicación dedicada para ser utilizada como una herramienta de laboratorio que permita probar con diferentes formas de onda, frecuencias, modulaciones, filtros, ganancias, etc. • Ejecución de pruebas de todo el sistema en escenarios diferentes para confirmar la viabilidad de la solución propuesta.