Node MCU es una plataforma para el desarrollo de proyectos IoT que integra el famoso chip ESP8266, el cual se ha extendido enormemente debido a su facilidad para desarrollar proyectos open source que pueden ademas pueden involucrar el IoT .
Esta placa destaca porque integra capacidades de comunicación via WiFi , conteniendo en su interior un microprocesador que puede ser programado fácilmente usando el conocido lenguaje de programación Lua o bien vía Arduino IDE.
Obviamente ante todo no podemos perder de vista su bajisimo precio ( menos de 7.5€ ) comparados con otras opciones , pues no debemos olvidar que incluye el modulo wifi integrado y un bus GPIO para conectar dispositivos de E/S. Node MCU es una plataforma de desarrollo permite un prototipado rápido, para una vez satisfechos con el resultado, portar el desarrollo a un sistema final con un chip ESP8266 como pieza central.
A la hora de programar nuevas funciones, si optamos por utilizar Lua, dispondremos de un sistema simple con buena comunidad de usuarios. En cambio programar con el sistema Arduino nos aporta un fantástico IDE y un sinfin de manuales y ejemplos de desarrollo.
Este modulo es Ideal como una solución independiente en lugar de Arduino además de Wi-Fi integrado siendo fácil de programar a través del IDE de Arduino (como vamos a ver ) , al igual que un Arduino. Todos los periféricos con bus I2C puede unirse,por ejemplo Pantallas OLED, pantallas LCD, temperatura, presión, sensores de humedad pueden ser conectados en paralelo. También se puede conectar múltiples DS18B20
Sin embargo, sólo hay una entrada analógica y salida y las pantallas táctiles no se pueden conectar con ella.
Los pasos a seguir para conectar un ESP8266 son los siguientes:
Instalación del IDE de Arduino .Si aun no lo tiene instalado ,se puede hacer desde aqui
Es necesario instalar el controlador USB requerido en su ordenador para que pueda programar el ESP8266. Independientemente de la opción de firmware que elijamos, primero necesitamos comunicarnos con la placa de desarrollo ESP-12E utilizando la interfaz USB de la computadora.
El módulo USB a Serial UART incluido en la placa es Silicon Labs ‘CP2012, para lo cual generalmente necesitamos instalar los controladores de puerto COM virtual (VCP) fácilmente disponibles para su sistema operativo específico.Una vez instalado, debemos verificar que el CP2102 sea reconocido por su ordenador.
Una vez que el controlador está instalado, podemos conectar el cable USB al puerto USB de la computadora y la placa. Después de hacerlo, deberíamos ver el mensaje: software del controlador del dispositivo instalado correctamente.
Además, podemos verificar manualmente que todo funcione correctamente siguiendo estos pasos:
Abra el Administrador de dispositivos (disponible a través del Panel de control → Sistema y seguridad → Administrador de dispositivos en la sección Sistema) Debajo de la entrada Puertos (COM & LPT), debe haber un puerto abierto llamado USB-SERIAL CP2102 (COM) donde hay un número típicamente mayor o igual a 3.
Ahora que estamos listos para comunicarnos con nuestro ESP8266 a través del CP2102, podemos explorar algunas de las diferentes opciones de firmware disponibles.
Conecte un cable usb de datos al ESP8266
Seleccione Herramientas –>ESP8266 y ahi la placa que haya comprado. En caso de haberla comprado en Amazon aqui seleccione NodeMCU 1.0 (ESP-12EModule).
En el IDE de Arduino, vaya al menú de herramientas, seleccionada su placa y elija el puerto al que está conectado su ESP8266.En el ejemplo es el COM11
Problemas al reconocer el puerto
En varios casos, la placa no se detecta debido a que faltan los controladores. Sin embargo, también puede ser por el puerto USB o el cable.
Si después de instalar los controladores sigue sin funcionar, por favor:
Verifique conectando la placa en otro puerto
Intente cambiar el cable USB de conexión por otro porque a veces aunque haya alimentación pueden fallar ( no olvidar que en un cable USB standard deberia haber 4 hilos)
Pruebae en otro ordenador distinta
Una vez dicho eso, veamos los controladores de NodeMCU 8266 en Windows.
Una vez que lo descargues, extraer el fichero comprimido con extension .zip. Tendrá un programa llamado CH341SER.EXE, ejecútelo y dale permisos de administrador.
En la siguiente ventana haz click en Install:
Espere a recibir la notificación de que se ha instalado y eso es todo. Debe detectar el dispositivo en un puerto COM; yo lo tenía en el COM4.
Conclusión
Es necesario mencionar que esto lo probé en Windows 10 de 64 bits usando PlatformIO dentro de Visual Studio Code, pero supongo que debe funcionar de igual modo en otras plataformas.
Aunque NILMTK se puede instalar muy facilmente en sistemas basados en Linux , es posible instalarlo tambien desde windows . Basicamente necesitaremos instalar Anaconda ( y Git si no lo tiene instalado ) y realizar la identificación de la carga, encontrar el paquete de instalación de NILMTK y registrar el proceso deliberadamente.
Instalación de GIT Windows
Hay varias maneras de instalar Git en Windows. La forma más oficial está disponible para ser descargada en el sitio web de Git. Solo tiene que visitar http://git-scm.com/download/win y la descarga empezará automáticamente. Observe que éste proyecto conocido como Git para Windows (también llamado msysGit), es diferente de Git «normal». Para más información acerca de este proyecto visita http://msysgit.github.io/.
Otra forma de obtener Git fácilmente es mediante la instalación de GitHub para Windows. El instalador incluye la versión de línea de comandos y la interfaz de usuario de Git. Además funciona bien con Powershell y establece correctamente «caching» de credenciales y configuración CRLF adecuada. Puede descargar este instalador del sitio web de GitHub para Windows en http://windows.github.com.
Instalación de Anaconda
Descargar el instalador de Anaconda . Nos recomiendan que verifiquemos la integridad de los datos con SHA-256 .
Haga doble clic en el instalador para iniciar.Para evitar errores de permisos, no inicie el instalador desde la carpeta Favoritos .Si tiene problemas durante la instalación, desactive temporalmente su software antivirus durante la instalación y vuelva a activarlo una vez que concluya la instalación. Si instaló para todos los usuarios, desinstale Anaconda y vuelva a instalarlo solo para su usuario y vuelva a intentarlo.
Haga clic en Siguiente.
Lea los términos de la licencia y haga clic en «Acepto».
Seleccione una instalación para «Solo yo» a menos que esté instalando para todos los usuarios (lo que requiere privilegios de administrador de Windows) y haga clic en Siguiente.
Seleccione una carpeta de destino para instalar Anaconda y haga clic en el botón Siguiente. Nota: Instale Anaconda en una ruta de directorio que no contenga espacios ni caracteres Unicode..No lo instale como administrador a menos que se requieran privilegios de administrador.
Elija si desea agregar Anaconda a su variable de entorno PATH. Se Recomienda no agregar Anaconda a la variable de entorno PATH, ya que esto puede interferir con otro software. En su lugar, use el software Anaconda abriendo Anaconda Navigator o Anaconda Prompt desde el menú Inicio.
Elija si desea registrar Anaconda como su Python predeterminado. A menos que planee instalar y ejecutar múltiples versiones de Anaconda o múltiples versiones de Python, acepte el valor predeterminado y deje esta casilla marcada.
Haga clic en el botón Instalar. Si desea ver los paquetes que está instalando Anaconda, haga clic en Mostrar detalles.
O para instalar Anaconda sin PyCharm, haga clic en el botón Siguiente.
Después de una instalación exitosa, verá el cuadro de diálogo «Gracias por instalar Anaconda»:
Si desea leer más sobre Anaconda.org y cómo comenzar con Anaconda, marque las casillas “Tutorial de Anaconda Edición Individual” y “Aprenda más sobre Anaconda”. Haga clic en el botón Finalizar.
Verifique su instalación .Nota: Si está detrás de un proxy de la empresa, es posible que deba realizar una configuración adicional.
Instalación manual del NILMTK
Suponiendo que Anaconda se ha instalado en esa máquina, el entorno es Python3 y la dirección del proyecto del paquete NILMTK es: https://github.com/nilmtk/nilm_metadata/ , Como se supone tenemos instalado el comando git para descargar los recursos de git, en primer lugar descargaremos nilmtk con Git usando el siguiente comando:
OPTIONAL SUBPACKAGES sample_data: yes [installing] tests: no [skipping due to configuration]
OPTIONAL BACKEND EXTENSIONS agg: yes [installing] tkagg: yes [installing; run-time loading from Python Tcl/Tk] macosx: no [Mac OS-X only]
OPTIONAL PACKAGE DATA dlls: no [skipping due to configuration]
UPDATING build\lib.win-amd64-3.9\matplotlib_version.py set build\lib.win-amd64-3.9\matplotlib_version.py to '3.1.3' error: Setup script exited with error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.microsoft.com/downloads/
Ahora debemos descargar nilmtk-metadata por lo que una vez mas usaremos el comando git:
Encontrará la carpeta nilmtk-metadata en el directorio y hay un archivo setup.py. Cambie a este directorio y luego instale, el comando es:
python setup.py develop
Resultados de la ejecucion del comando:
C:\Users\carlo\anaconda3\nilm_metadata>python setup.py develop running develop running egg_info creating nilm_metadata.egg-info writing nilm_metadata.egg-info\PKG-INFO writing dependency_links to nilm_metadata.egg-info\dependency_links.txt writing requirements to nilm_metadata.egg-info\requires.txt writing top-level names to nilm_metadata.egg-info\top_level.txt writing manifest file 'nilm_metadata.egg-info\SOURCES.txt' reading manifest file 'nilm_metadata.egg-info\SOURCES.txt' writing manifest file 'nilm_metadata.egg-info\SOURCES.txt' running build_ext Creating c:\users\carlo\appdata\local\programs\python\python39\lib\site-packages\nilm-metadata.egg-link (link to .) Adding nilm-metadata 0.2.5 to easy-install.pth file
Installed c:\users\carlo\anaconda3\nilm_metadata Processing dependencies for nilm-metadata==0.2.5 Searching for pandas==1.3.3 Best match: pandas 1.3.3 Processing pandas-1.3.3-py3.9-win-amd64.egg pandas 1.3.3 is already the active version in easy-install.pth
Using c:\users\carlo\appdata\local\programs\python\python39\lib\site-packages\pandas-1.3.3-py3.9-win-amd64.egg Searching for six==1.16.0 Best match: six 1.16.0 Processing six-1.16.0-py3.9.egg six 1.16.0 is already the active version in easy-install.pth
Using c:\users\carlo\appdata\local\programs\python\python39\lib\site-packages\six-1.16.0-py3.9.egg Searching for pyyaml==5.4.1 Best match: pyyaml 5.4.1 Processing pyyaml-5.4.1-py3.9-win-amd64.egg pyyaml 5.4.1 is already the active version in easy-install.pth
Using c:\users\carlo\appdata\local\programs\python\python39\lib\site-packages\pyyaml-5.4.1-py3.9-win-amd64.egg Searching for pytz==2021.1 Best match: pytz 2021.1 Processing pytz-2021.1-py3.9.egg pytz 2021.1 is already the active version in easy-install.pth
Using c:\users\carlo\appdata\local\programs\python\python39\lib\site-packages\pytz-2021.1-py3.9.egg Searching for python-dateutil==2.8.2 Best match: python-dateutil 2.8.2 Processing python_dateutil-2.8.2-py3.9.egg python-dateutil 2.8.2 is already the active version in easy-install.pth
Using c:\users\carlo\appdata\local\programs\python\python39\lib\site-packages\python_dateutil-2.8.2-py3.9.egg Searching for numpy==1.21.2 Best match: numpy 1.21.2 Processing numpy-1.21.2-py3.9-win-amd64.egg numpy 1.21.2 is already the active version in easy-install.pth Installing f2py-script.py script to C:\Users\carlo\AppData\Local\Programs\Python\Python39\Scripts Installing f2py.exe script to C:\Users\carlo\AppData\Local\Programs\Python\Python39\Scripts
Using c:\users\carlo\appdata\local\programs\python\python39\lib\site-packages\numpy-1.21.2-py3.9-win-amd64.egg Finished processing dependencies for nilm-metadata==0.2.5
Instalación semiautomática de NILMTK
Abra una ventana de terminal de conda, crearemos un nuevo entorno de Conda y lo activaremos con los comandos:
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 solucionarlos, aplique el comando:
conda install matplotlib
Verificar la instalación Para verificar que Matplotlib está instalado, intente invocar la versión de Matplotlib en Python REPL. Use desde el interprete Python los comandos a continuación que incluyen llamar a .__ version__, un atributo común a la mayoría de los paquetes de Python.
>>> import matplotlib
>>> matplotlib.__version__
Ejemplo de salida:
(nilmtk-env) C:\Users\carlo>python Python 3.6.13 (default, Sep 7 2021, 06:39:02) [MSC v.1916 64 bit (AMD64)] on win32 Type «help», «copyright», «credits» or «license» for more information.
import matplotlib matplotlib.version ‘3.1.3’
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:
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.
Debe estar conectado para enviar un comentario.