Mostrando entradas con la etiqueta mqtt. Mostrar todas las entradas
Mostrando entradas con la etiqueta mqtt. Mostrar todas las entradas

miércoles, 12 de mayo de 2021

Internet de las cosas con la placa NodeMCU y Ubidots

 IOT con la NodeMCU y Ubidots

Una manera rápida de introducirse al mondo del internet de las cosas es por medio de una pagina que nos provea el servicio de captura y visualización de datos, en este tutorial se ha elegido Ubidots por se una plataforma fácil de configurar y que provee una plantilla de código para trabajar con las placas basadas en el Soc ESP8266 o ESP32.

Protocolo MQTT

MQTT es un protocolo abierto el cual posibilita la comunicación entre sí y continua de dos o más

dispositivos enfocado directamente en la conectividad M2M (Machine-to-Machine) que opera con una 

arquitectura publicación-suscripción tal como se ve en la siguiente figura.Para el ejemplo a desarrollar

el cliente que publica es la placa Node MCU, el broker sera Ubidots y la visualización sera por medio

del dash board de Ubidots.

 

MQTT utiliza el paradigma de publicación-suscripción que refiere a que cualquiera de los clientes

puede suscribirse a determinados tópicos o temas y de esta misma manera cualquiera podrá publicar.


Placa NodeMCU

Para poder trabajar con la plataforma NodeMCU ESP8266 en el IDE de Arduino, es necesario

instalar el compilador para las plataformas basadas en el microcontrolador ESP8266, el siguiente

video muestra como se hace la configuración del IDE y la programación de prueba en la placa.

 

 


 

Broker MQTT Ubidots

Ubidots es una iniciativa colombiana para la elaboración de sistemas basados en el internet 

de las cosas.

Ubidots logró convertir su emprendimiento de servicios de monitoreo remoto en una startups que

recibió el apoyo de Mass Challenge - una de las mayores aceleradoras de empresas emergentes del

mundo-, logró levantar un millón de dólares de inversión entre Medellín y Silicon Valley y lanzó

un producto que hoy se usa en más de 160 empresas en todo el mundo. Ubidots ha logrado 

posicionarse al punto de tener una comunidad de más de 40.000 desarrolladores y presencia en países

como Argentina, Brasil, EE. UU., Inglaterra, Israel, Australia.

(https://www.rutanmedellin.org//es/tendencias/item/ubidots-la-startup-local-que-conecta-datos-de-todo-el-mundo)

El circuito de prueba empleado se indica en la siguiente figura, es importante indicar que las placas

basadas en el ESP8266 trabajan a 3.3 voltios.

El montaje también puede realizarse con la placa WeMos D1 o Mini. 

El video que esta a continuación indica el procedimiento para conectar la Placa NodeMCU con

Ubidots.


El código de prueba se deja a continuación, en el video muestra como se configura TOKEN y la 

red WiFi

/****************************************
* Include Libraries
****************************************/
#include "UbidotsESPMQTT.h"
/****************************************
* Define Constants
****************************************/
#define TOKEN " " // Your Ubidots TOKEN
#define WIFINAME " " //Your SSID
#define WIFIPASS " " // Your Wifi Pass
Ubidots client(TOKEN);
/****************************************
* Auxiliar Functions
****************************************/
void callback(char* topic, byte* payload, unsigned int length) {
Serial.print("Mensaje recibido [");
Serial.print(topic);
Serial.print("] ");
for (int i=0;i<length;i++) {
Serial.print((char)payload[i]);
}
Serial.println();
}
/****************************************
* Main Functions
****************************************/
void setup() {
// put your setup code here, to run once:
//client.ubidotsSetBroker("industrial.api.ubidots.com"); // Sets the broker properly for the industrial account
client.setDebug(true); // Pass a true or false bool value to activate debug messages
Serial.begin(115200);
client.wifiConnection(WIFINAME, WIFIPASS);
client.begin(callback);
}
int i=0;
void loop() {
//put your main code here, to run repeatedly:
if(!client.connected()){
client.reconnect();
}
if(i<100){
float value1 = analogRead(A0);//Lectura analogo
client.add("var_pot01", value1);//El cliente agrega una variable
client.ubidotsPublish("prueba");//Colocar el nombre de dipositivo
client.loop();
i++;
delay(2000);
}


 

 

 

 

 

miércoles, 28 de abril de 2021

Instalación de ActiveMQ en Linux

 ActiveMQ

Instalación de ActiveMQ

En esta publicación se describirá como se realiza la instalación de ActiveMQ en el sistema operativo Linux.

La instalación se realizo sobre un distribución basada en Ubuntu específicamente Pop! OS  

El siguiente video explica el proceso de instalación y prueba realizado.


Descarga

La descarga se puede realizar desde la pagina principal del proyecto y desde la pagina de downloads de Apache.

La descarga descarga y descompresión desde el terminal se realiza con las siguientes instrucciones

wget http://www.apache.org/dist//activemq/5.16.1/apache-activemq-5.16.1-bin.tar.gz


tar -zxvf apache-activemq-5.16.1-bin.tar.gz

 

La URL empleada en el terminal accede a el enlace de downloads de Apache. En caso de dar error en la descarga por no encontrar la versión esta se puede revisar en el enlace de downloads. 

 

Configuración

Teniendo ya la carpeta con las archivos de ActiveMQ se procede a configurar el permiso de ejecución y según las necesidades el cambio de parámetros en el archivo de configuración env.

El archivo de ejecución de ActiveMQ esta en la carpeta bin dentro de la carpeta que se ha descomprimido. 

 

Ruta de la carpeta bin
 

Las instrucciones empleadas en el terminal son las siguientes, tal como se muestra en el video. 

 

cd apache-activemq-5.16.1/bin


ls -l


chmod 755 activemq


ls -l

  

El archivo de configuración también se encuentra dentro de la carpeta bin, para visualizar y editar se emplearon cat (visualizar) y vi (editar).

 

cat env


vi env

 

Es importante tener una versión actualizada de Java instalada, para saber sobre que versión se dispone se emplea la siguiente instrucción. 


java -version

 

Para ver la ayuda de ActiveMQ se ejecuta la siguiente instrucción. 

 

 ./activemq -help

 

Los siguientes enlaces contienen información adicional sobre las instrucciones empleadas en el terminal .

Prueba

La prueba del broker se realiza desde el terminal ademas de poderse emplear el browser para la viusalizacion del estado de los mensajes enviados y recepcionados. La siguiente imagen muestra las instrucciones empleadas desde el terminal para la realizacion de la prueba.


 Las intrucciones de prueba tal como se emplean en el video son las siguietes:

./activemq start 

./activemq bstat 

./activemq producer 

./activemq consumer 

./activemq stop     

La URL local que se crea al inicial el broker es   http://127.0.0.1:8161/admin/ y tiene por defecto como usuario admin y password admin. La siguiente figura muestra la pagina que debe ser visualizada en el broker.

Si el broker no es inicializado con la intruccion ./activemq start no se se podra acceder a la URL