Instalar NILMTK en Ubuntu


EL NILM o Non-Intrusive Load Monitoring, es decir la desagregación no intrusiva de la demanda . es una técnica computacional para la estimación del consumo individual de diversos dispositivos utilizando para ello la lectura agregada de un único medidor de energía (Smart Meter, SM).

Gracias a las ventajas en cuanto instalación , coste e implementación, éste concepto ha tomado relevancia en los últimos años en el ámbito de las Smart Grids, al aportar una estimación de los hábitos de consumo de los clientes sin la necesidad de un despliegue masivo de contadores inteligentes en cada punto de consumo.

Tal es el interés por esta técnica que desde el 2010 , el número de publicaciones científicas referentes al NILM se ha incrementado exponencialmente sin duda condicionado por los beneficios de esta técnica en el marco de las redes inteligentes de energía como por ejemplo la posibilidad de generar facturas de electricidad que muestren en detalle el consumo de los electrodomésticos utilizando solamente las lecturas de un SM

Asimismo, existen aplicaciones de Energy Management System (EMS) en conjunto con NILM, las cuales pueden ser compatible con los programas de respuesta a la demanda o Demand Response (DR) de las compañías de electricidad.

Por otro lado, algunos plantean la posibilidad de usar NILM para detectar averías en los dispositivos cuando se presenta un comportamiento anómalo en las mediciones desagregadas.
Es así como NILM se presenta como una valiosa herramienta para reducir el consumo de energía, tanto así que algunos afirman que es el “santo grial de la eficiencia energética”.

En este contexto vamos a ver una herramienta o toolkit open software llamado NILMTK que nos va a ayudar a comparar algoritmos para implementar la desagregación ( ademas particularmente no contempla un uso diferente a este)

Los entornos virtuales hacen que la organización de paquetes de Python sea pan comido. Además, el proyecto NILMTK ofrece varias versiones de Conda Forge. 

Instalación de Conda

Primero, consiga Anaconda aquí. Luego, abra una ventana de terminal e inicie la instalación desde la línea de comando:

Dowloads cd / 
bash Anaconda3-2020.11-Linux-x86_64.sh -u

Se le guiará a través de varios pasos. Instale Conda y pruebe la instalación ejecutando el comando conda en el símbolo del sistema:

conda

En caso de que el comando conda resulte en «un error de intérprete incorrecto» (es decir, no existe tal error de archivo o directorio), aplique la siguiente solución:

cd / inicio / usuario / nano .bashrc

agregue la línea:

export PATH = ~ / anaconda3 / bin: $ PATH

Guarde los cambios en el archivo y, finalmente, ejecute el comando:

source .bashrc

Felicidades, acaba de instalar Conda.

Instalación de NILMTK

Abra una ventana de terminal, cree un nuevo entorno de Conda y actívelo:

conda create --name nilmtk-env 
conda activate nilmtk-env

Si aún no está presente en su instalación de Conda, agregue el conda-forge a la lista de canales:

conda config --add channels conda-forge

Finalmente, instale la última versión de NILMTK de conda-forge :

conda install -c nilmtk nilmtk=0.4.3

Observe que el signo igual no lleva espacios(piense estamos usando Python.

La ejecución del comando puede tardar un rato. Mientras tanto, consulte otros paquetes en Forge de NILMTK .

Como puede experimentar algunos problemas posteriores a la instalación con NILMTK y Matplotlib., para s olucionarlos, aplique el comando:

conda install matplotlib=3.3.2

Agregar un kernel de Jupyter

Básicamente, NILMTK ahora está instalado en su ordenador. El siguiente paso involucra los cuadernos de Jupyter. Trabajar con Jupyter abre muchas posibilidades y se dice que es una herramienta imprescindible. Por lo tanto, agregue el entorno NILMTK a Jupyter:

python -m ipykernel install --user --name nilmtk-env --display-name "Python (nilmtk-env)"

Prueba de la instalación

Ha llegado el momento de comprobar su instalación. Antes que nada, cree una nueva carpeta y descargue el conjunto de prueba aleatorio de Github:

mkdir nilmtk_test / cd nilmtk_test / wget https://raw.githubusercontent.com/nilmtk/nilmtk/master/data/random.h5

Como puede comprobar random.h5 es el fichero de de datos en en formato hdf5 .A continuación, levante Jupyter:

notebook jupyter

Para probar su instalación, intente importar el conjunto de datos aleatorio usando NILMTK y trazar todos los medidores:https://klemenjak.medium.com/media/9ba2be16d331653a7b4093a0fe412434

La salida debe ser:

MeterGroup (metros =   ElecMeter (instancia = 1, edificio = 1, conjunto de datos = Ninguno, electrodomésticos = [])   ElecMeter (instancia = 2, edificio = 1, conjunto de datos = Ninguno, electrodomésticos = [])   ElecMeter (instancia = 3, edificio = 1, conjunto de datos = Ninguno, electrodomésticos = [])   ElecMeter (instancia = 4, edificio = 1, conjunto de datos = Ninguno, electrodomésticos = [])   ElecMeter (instancia = 5, edificio = 1, conjunto de datos = Ninguno, electrodomésticos = []) )

¡Felicitaciones! Lo ha logrado. ¡NILMTK parece funcionar según lo previsto! La próxima vez, discutiremos cómo usar la API de NILMTK para una experimentación rápida y conveniente.

Si no consigue iniciar el entorno de jupyter notebook siguiendo las instrucciones anteriores, puede seguir estas instrucciones de instalación de Anaconda y Jupyter Notebook – Ubuntu. (las instrucciones han sido probadas con Ubuntu 20.04 de 64 bits y Anaconda3 2021.05 de Continuum)

Instalacion de Anaconda y Jupyter Notebook

1. Abra el programa Terminal yendo a «Mostrar aplicaciones» y seleccionando la Terminal .

2. Escriba los comandos de abajo para ir al directorio de Descargas y descargar Anaconda3 2021.05. Anaconda puede tardar unos minutos en [email protected]:~$ 

cd Descargas
[email protected]:~/Descargas$ 

wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh

3. Escriba el comando para instalar [email protected]:~/Descargas$ 

bash ./Anaconda3-2021.05-Linux-x86_64.sh

4. Presione Enter para leer el acuerdo de licencia. Use Space para continuar a la página siguiente.

5. Escriba yes para aceptar los términos de la licencia.

¿Aprueba los términos de la licencia? [yes|no]
[no] >>> yes

6. Presione Enterpara instalar Anaconda en la ubicación predeterminada.

Anaconda ahora se instalará en esta ubicación: /home/username/anaconda3
– Presione ENTER para confirmar la ubicación
– Presione CTRL-C para cancelar la instalación
– O especifique una ubicación diferente a continuación
[/home/username/anaconda3] >>> (presione ENTER)

7. Escriba yes para que Anaconda actualice su RUTA.

instalación terminada.
¿Desea que el instalador inicialice Anaconda3
ejecutando conda init? [yes|no]
[no] >>> (presione yes)

==> Para que los cambios surtan efecto, cierre y vuelva a abrir su shell actual. <==

Si prefiere que el entorno base de conda no se active al inicio, establezca el parámetro auto_activate_base en false:
conda config –set auto_activate_base false ¡

8. Abra una nueva ventana de Terminal yendo a «Mostrar aplicaciones» y seleccionando la Terminal .

9. Escriba el comando para verificar que se instaló Anaconda.

(base) [email protected]:~$ python –versión
Python 3.8.5

10. Escriba el comando para actualizar Anaconda.

(base) [email protected]:~$ conda update –all –yes

Ahora que tiene un instalación limpia debería repetir la instalación de nilmtk y creación del entrono nilmtk-env descritos en este post justo despues de instalar Conda . Seguidos esos pasos ya debería estar en condiciones de Iniciar Jupyter Notebook

1. Escriba el comando para iniciar Jupyter Notebook.

[email protected]:~$ jupyter notebook

Mas información en https://github.com/nilmtk/nilmtk