Skip to main content

Practice 27: NodeRed (USB)

✅ Práctica 27
▷ #TSCLab #TCLab #ESP32 #Arduino #Control #MACI

En el siguiente blog se presenta la vigési cuarta práctica del laboratorio de control de temperatura y velocidad de un motor.

Objetivo general:

  • Enviar los valores sensados del motor del TSC-Lab por comunicación serial a Node-Red y visualizarlo. 

Materiales:

  • Node-Red
  • TSC-Lab

Introducción:

En la presente práctica se muestra otra de las alternativas para visualizar y controlar dispositivos, la cual es Node-Red, siendo esta una herramienta de desarrollo basada en flujo para programación visual desarrollada originalmente por IBM para conectar dispositivos de hardware, API y servicios en línea como parte de Internet of Things. Para ir familiarizándose con el entorno de Node-Red se hará una conexión por comunicación seríal con el TSC-Lab.

Procedimiento:

Se necesita instalar Node-Red, a continuación se mostrará como hacerlo en un sistema operativo de Windows. 
  1. Instalar Node.js, puede descargarlo aquí. Cualquiera de las versiones son válidas, en mi caso usé la 17.1.0 y la instalación se hace aceptando terminos como cualquier otro programa que se desea instalar. Debe seleccionar la casilla de instalar herramientas adicionales, en caso de no hacerlo se presentarán inconvenientes en el desarrollo de las prácticas.
  2. Abrir el Símbolo del sistema (CMD) y escribir el siguiente comando: npm install -g --unsafe-perm node-red 
  3. Una vez que se ha realizado la instalación de manera exitosa, en el mismo CMD se debe escribir el comando: node-red. Al cabo de unos segundos aparecerá la dirección del servidor, la cual se debe copiar y pegar en cualquier navegador, tal cual como se ve en la siguiente imagen.

  4. Conectar el TSC-Lab y tener en cuenta el puerto que se le asignó. En caso de no saberlo puede averiguarlo en administrador de dispositivos.

  5. Copiar el archivo .json aquí
  6. Importar el archivo copiado en Node-Red, para ello hay que dirigirse a las tres líneas horizontales que aparece en la interfaz de Node-Red.

  7. Seleccionar la opción importar

  8. Pegar el código en el cuadro rosa que aparece.

  9. Una vez que pegado el código en formato json dar clic en importar

  10. Si aparece el recuadro que se muestra en la imagen dar clic en Import copy

  11. Es necesario instalar la librería de Dashboard la cual hace posible la visualización de datos. Para ello hay que dirigirse a las tres línes horizontales y dar clin en Manage palette.

  12. Seleccionar la pestañana install y escribir en el buscador: node-red-dashboard, para posteriormente dar clic en install. Luego instale node-red-node-serialport y finalmente de clic en close.

  13. En la interfaz de Node-Red debe aparecer algo como la imagen de abajo y se debe dar doble clic sobre ella.

  14. Seleccionar Add new serial-port

  15. Dar clic en el lápiz

  16. Escribir el nombre del puerto asignado, cambiar el Baud Rate a 115200 y dar clic en Add

  17. Debe aparecer algo similar a lo que se muestra en la imagen. Dar clic en Done



  18. Antes de continuar con la visualización, se debe cargar el código que se muestra a continuación en el TSC-Lab, el código a utilizar es una práctica de las RPM del motor y se asume que las librerías ya fueron previamente instaladas.

    
  1. Volviendo a la interfaz de Node-Red, hay que dar clic en Deploy para guardar y cargar todos los datos al server.

  2. Para visualizar los valores de RPM, se debe dar clic en la flecha que se muestra en la imagen y luego en Dashboard.

  3.  En la pestaña del dashboard hay que dar clic en el ícono que se encierra en la siguiente imagen

  4. Se abrirá una ventana donde se visualiza las RPM del motor en tiempo real.


                  



Comments

Popular posts from this blog

Practice 10: Data acquisition with square velocity input

✅ Práctica 10a Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la décima práctica y corresponde a la quinta del laboratorio de control de velocidad. Github repository: https://github.com/vasanza/TSC-Lab Objetivo general: Recopilar y guardar las RPM para crear un dataset. Objetivos específicos: Comparar los resultados de movimiento con diferentes parámetros. Materiales: Aplicación de escritorio CoolTerm PCB de Temperature Control Lab (TSC-Lab) Introducción: Una vez entendido todo el funcionamiento y control de velocidad del motor, se pretende crear un dataset para mejorar el mismo, lo que se hará es tomar 10 muestras tanto en un PWM de 255 y 0 durante un periodo de 13 segundos, dichos datos pueden ser modificados en la parte inicial del código de arduino.  Procedimiento: Nota: revisar la práctica 1 donde se le recuerda a como utilizar la apliación CoolTerm. Se asume que la placa del ESP-32 ha sido previamente instalada e...

Practice 9: Encoder Implementation (RPM)

✅ Práctica 9 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la novena práctica y corresponde a la cuarta del laboratorio de control de velocidad. Objetivo general: Visualizar las RPM del motor en base a la PWM asignada. Objetivos específicos: Comparar los resultados de movimiento con diferentes parámetros. Materiales: PCB de Temperature Control Lab (TSC-Lab) Introducción: En la práctica anterior se puso en marcha en motor asignándole un valor PWM, además brindaba la opción de escoger el sentido de gira. Ahora, en el presente laboartorio se implementa un encoder óptico, que mediante el código de programación en el IDE de Arduino, permite saber a cuantas revoluciones por minuto gira el motor. Es importante mencionar que en esta ocasión se hará uso de interrupciones, cualquier pin GPIO del ESP-32 puede ser utilizado con interrupción, en este caso se ha escogido el 27, pin en el cual está conectado el encoder óptico. Procedimient...

Practice 35: NodeRed (MQTT) + Telegram

✅ Práctica 35 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la vigésima sextapráctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Recibir los valores sensados de temperatura del TSC-Lab a Telegram.  Materiales: Node-Red TSC-Lab Introducción: En la práctica anterior se aprendió a información del TSC-Lab a Node-Red mediante Wi-Fi con protocolo HTTP. Ahora a mas de enviar dicha información se pretende recibirla y monitoreada desde Telegram, la cual es una aplicación enfocada en la mensajería instantánea, el envío de varios archivos y la comunicación en masa. Se la puede descargar desde la tienda de Google Play o App Store. También se la puede utilizar desde su sitio web o versión de escritorio. En esta práctica se crearrá un bot en Telegram el cual al recibir un comando en específico, enviará de manera instantanea el valor de temperatura solicitado. Procedimiento: Nota: se asume qu...

Práctica 5: Activation of Transistor 1 and 2, also Reading of temperature sensor 1 and 2

✅ Práctica 5a ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la quinta práctica del laboratorio de control de temperatura. Github repository: https://github.com/vasanza/TSC-Lab Objetivo general: Guardar las mediciones obtenidas con ayuda de Cool Term y exportarlas en un archivo comma-separtaed-values (csv). Objetivos específicos: Guardar los datos de las lecturas realizadas con los heaters 1 y 2 activados. Materiales: Programa Cool Term PCB de Temperature Control Lab (TSC-Lab) Introducción: Para esta práctica, el sistema sigue sin tener retroalimentación, es decir, es en lazo abierto ya que simplemente se está midiendo el cambio de temperatura conforme los heaters estén activados o desactivados y esto dependerá con cual de los casos el estudiante desea trabajar. Caso 1: ningun heater está activado Caso 2: únicamente el heater 1 se activa y desactiva. Caso 3: únicamente el heater 2 se activa y desactiva. Caso 4: ambos heaters se activa...

Practice 33: MQTT

✅ Práctica 33 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la vigésima octava práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Realizar una conexión MQTT utilizando el TSC-Lab.  Objetivos específicos: Enviar un mensaje al servidor y verificarlo en MQTTLens. Materiales: MQTTLens TSC-Lab Introducción: En las prácticas anteriores se realizararon conexiones a .diferentes plataformas donde se envió la información e inclusive se pudo visualizar los datos. Sin embargo, poseen muchas limitaciones como por ejemplo ThingSpeak que únicamente permite crear cuatro canales y el envío de información lo hace con un delay mínimo de 14 segundos, inclusive utilizar el protocolo HTTP ha generado conflictos. Ante ello, la mejor alternativa es trabajar con un servidor y enviar la data por medio de protocolo MQTT.  Procedimiento: Nota: revisar la práctica 1 donde se le recuerda a como insta...

Practice 21: SISO using DC Motor

▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI Repositories En el siguiente blog se presenta la vigésima segunda práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Realizar la adquisición de datos en Matlab emplenado comunicación serial Materiales: Matlab TSC-Lab TSC-Lab 3D view Simulink: https://drive.google.com/drive/folders/16W5_6BPTgedT5vyFnJCiYwqh7fQjR9Po?usp=sharing Se recomienda comparar el lazo cerrado con el modelo identificado: Código para el TSC-LAB:

Practice 12: Speed Control Lab

✅ Práctica 12 ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI When using this resource, please cite the original publication: Víctor Asanza, Kevin Chica-Orellana, Jonathan Cagua, Douglas Plaza, César Martín, Diego Hernan Peluffo-Ordóñez. (2021). Temperature and Speed Control Lab (TSC-Lab). IEEE Dataport. https://dx.doi.org/10.21227/8cty-6069 En el siguiente blog se presenta la vigésima segunda práctica del laboratorio de control de temperatura y velocidad de un motor. Github repository: https://github.com/vasanza/TSC-Lab Objetivo general: Realizar la adquisición de datos en Matlab emplenado comunicación serial. Materiales: Matlab TSC-Lab Registro de datos en formato Byte: Esta versión se recomienda si se utiliza Matlab de versiones anteriores a las 2017. Repository: https://github.com/vasanza/TSC-Lab/tree/main/Practice12/Practice12_Byte Registro de datos en formato String: Esta versión se recomienda si se utiliza Matlab de versiones actuales. Repository:  https://github.c...

Practice 37: Using two core of ESP-32

✅ Práctica 37 ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI Repositories When using this resource, please cite the original publication: Víctor Asanza, Kevin Chica-Orellana, Jonathan Cagua, Douglas Plaza, César Martín, Diego Hernan Peluffo-Ordóñez. (2021). Temperature and Speed Control Lab (TSC-Lab). IEEE Dataport. https://dx.doi.org/10.21227/8cty-6069 En el siguiente blog se presenta la trigésima cuarta práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Realizar multitareascon los dos núcleos del ESP-32. Materiales: TSC-Lab Introducción: El ESP-32 posee 2 microprocesadores Xtensa LX6 de 32 bits denominados núcleo 0 y núcleo 1. Por defecto, el código se ejecuta en el núcleo 1. Sin embargo, en la presente práctica de laboratorio se aprenderá a utilizar el doble núcleo del ESP-32 realizando una multitarea, trabajando con la planta de temperatura y velocidad del motor a la vez. Procedimiento: Nota: se asume que todas las librerías han s...

Practice 12: Speed Control Lab

  ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI Repositories En el siguiente blog se presenta la vigésima segunda práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Realizar la adquisición de datos en Matlab emplenado comunicación serial Materiales: Matlab TSC-Lab TSC-Lab 3D view Simulink: https://drive.google.com/drive/folders/18ANTrb-_z_2zbsUbq2Rz6FC7749ECxUc?usp=sharing Código para el TSC-LAB:

Practice 31: MQTT connection (mydata-lab)

✅ Práctica 31 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la vigésima octava práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Realizar una conexión MQTT utilizando el TSC-Lab.  Objetivos específicos: Enviar un mensaje al servidor y verificarlo en MQTTLens. Materiales: MQTTLens TSC-Lab Introducción: En las prácticas anteriores se realizararon conexiones a .diferentes plataformas donde se envió la información e inclusive se pudo visualizar los datos. Sin embargo, poseen muchas limitaciones como por ejemplo ThingSpeak que únicamente permite crear cuatro canales y el envío de información lo hace con un delay mínimo de 14 segundos. Ante ello, la mejor alternativa es trabajar con el servidor del TSC-Lab debido a que no tiene limitaciones en cuanto a la creación de proyectos, ni envío de información. Por esta razón, en la presente prácticase darán los primeros pasos para poder con...