Skip to main content

Practice 29: NodeRed (Http) + Telegram

✅ Práctica 29
▷ #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 que está instalado Node-Red, que está familiarizado con el entorno y que sabe instalar librerías. En caso de no ser así, puede revisar la practica 24 dando clic aquí. 
  1. Descargar y crearse una cuenta en Telegram en caso de no tenerla. Busque en la tienda de su dispositivo móvil. 
  2. En el buscador de Telegram escriba BotFather. Tenga en cuenta que tenga la verificación (visto azul) e imagen de perfil que se muestra a continuación. Y abra su chat.



  3. Escriba el comando /start

  4. Seleccione o escriba el comando /newbot y colóquele un nombre a su bot, tal y como se muestra en la imagen. 

  5. Abra el entorno de Node-Red e instale la librería node-red-contrib-telegrambot.
  6. Importar el proyecto que se encuentra disponible aquí. En caso de tener proyectos anteriores abiertos, deshabilite los dashboard y msg.payload.
  7. Dar doble clic en el bloque de Telegram que está conectado al payload, en bot seleccionar Add new telegram bot ... y seleccionar el lápiz.

  8. Para mayor facilidad de trabajo, recomendaría abrir Telegram en la versión web ya que se necesita colocar el nombre y el token que se generó previamente con BotFather tal cual como en la imagen que se muestra a continuación. Para posteriormente dar clic en Add y en done. 

  9. A modo de prueba se debe dar Deploy al proyecto y en el buscador de telegram se debe colocar el nombre del bot, en mi caso TSC-Lab-kechica para iniciar chat y se procede a enviar cualquier mensaje y si la configuración se la realizó de manera correcta en el debug se podrá ver dicho mensaje. Mientras se vea el mensaje, omitir cualquier tipo de error que se muestre.


    Debug de Node-Red

  10. A todos los bloques de telegram se le debe asiganr el bot creado tal cual como se lo hizo anteriormente.
  11. Del mensaje que se envió y se vió en el debug hay una variable llamada chatId, a esta se la debe copiar y pegar en el código que aparece cuando se da doble clic en el bloque de las funciones tal cual como se ve en las imágenes.



  12. Dar deploy al proyecto, cargar el código al TSC-Lab, el cual es el mismo que el de la práctica anterior.
    
  1. En telegram, al bot creado escribirle los comandos temp1 y temp2 y la respuesta será inmediata.





                  

Comments

Popular posts from this blog

Practice 38: Deep sleep to TSC-Lab

✅ Práctica 38 ▷  #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 quinta práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Establecer el modo de suspensión profunda al TSC-Lab. Materiales: TSC-Lab Introducción: Una de las formas más fáciles para para el ahorro de energía de manera general dentro de proyectos IOT es estableciendo el modo de suspensión profunda del ESP-32. En la presente práctica se colocorá el microcontrolador del TSC-Lab en sueño profundo (deep sleep) y se lo despertará con un temporizador. Cabe recalcar que existen más alternativas para despertarlo, entre ellas está el despertador táctil...

Practice 26 : Over-The-Air programming (OTA)

✅ Práctica 26 Github Repositories ▷  #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 sexta práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Actualizar el código del TSC-Lab utilizando OTA. Materiales: IOTAppStory TSC-Lab Introducción: A lo largo de todas las prácticas previamente realizadas, cada código se ha cargado al TSC-Lab con ayuda del cable USB por comunicación serial. Sin embargo, esta no es la única forma de hacerlo. Al igual que muchos otros dispositivos como celulares, carros inteligentes, decodificadores, entres otros se le pueden realizar ajustes y configuraciones de manera inalámbrica por una programaci...

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...

Practice 1 (VS Code): Initial setups and tests

✅ Práctica 1 (VS Code) Github Repositories ▷  #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 cuadragésima tercerapráctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Descargar e instalar Visual Studio Code para programar el TSC-Lab utilizando el ESP-IDF (framework que recomienda su fabricante, Espressif) Materiales: Visual Studio Code TSC-Lab Introducción: A lo largo de todas estas prácticas se ha venido programando el ESP-32 del TSC-Lab en el IDE de Arduino. Sin embargo, esta no es la única forma de programarlo, una de ellas e inclusive la que recomienda su fabricante es utilizando el ESP-IDF, siendo este el framework de desarr...

Practice 34: SISO using temperature sensor

▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI Repositories En el siguiente blog se presenta la trigésima primera práctica del laboratorio de control de temperatura y velocidad de un motor. Objetivo general: Embeber un sistema de control PID para la temperatura del TSC-Lab Materiales: TSC-Lab Introducción: Una de las alternativas para implementar un sistema de control dentro del ESP-32 es mediante un controlador PID. En la presente práctica se usará el propuesto por Ziegler Nichols.  Procedimiento: Nota: se asume que todas las librerías han sido previamente instaladas. Además se cree que la función de transferencia del sistema ya se lo tiene por lo que se procederá a cambiar los valores tanto de la ganacia, tau y retardo del código.  Copiar y cargar el siguiente código al TSC-Lab.      Repositories:  https://github.com/vasanza/TSC-Lab/tree/main/Practice31

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...

Práctica 1: Initial setups and tests

✅ Práctica 1 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la primera práctica del laboratorio de control de temperatura. Objetivo general: Entender el funcionamiento básico de TSC-Lab para la realización de futuras prácticas. Objetivos específicos: Analizar el comportamiento de la curva cuando los heaters están activados y desactivados. Guardar las mediciones obtenidas con ayuda de Cool Term y exportarlas en un archivo  comma-separtaed-values  (csv). Materiales: Programa Cool Term PCB de Temperature Control Lab (TSC-Lab) Introducción: El laboratorio de control de temperatura es un sistema en lazo cerrado. Sin embargo, en esta y futuras prácticas a realizar se comportará como un sistema de control en lazo abierto ya que no existe retroalimentación, únicamente los heaters se activan y los sensores empiezan a medir el incremento de temperatura y al desactivarlos los sensores miden como la temperatura baja hasta...

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:

Practica 3: Activation of Transistor 1 and Reading of temperature sensor 1 and 2

✅ Práctica 3 Github Repositories ▷  #TSCLab #TCLab #ESP32 #Arduino #Control #MACI En el siguiente blog se presenta la tercera práctica del laboratorio de control de temperatura. 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 el heater 2 activado. 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. Para esta práctica se trabajará con el caso 2 . Los mediciones son almacenadas en el ordenador gracias a Cool Term.  Procedimient...