Control de cargas con Raspberry-pi usando MQTT


MQTT significa MQ Telemetry Transport, es decir hablamos de un protocolo de mensajería publicación / suscripción, extremadamente sencillo y ligero, diseñado para dispositivos limitados y bajo ancho de banda y latencia alta o redes no confiables , razón por lo cual  es ideal para IoT (Internet de las cosas).

Los principios de diseño se centran en  minimizar el ancho de banda de la red y los requisitos de recursos del dispositivo, a la vez que intentan asegurar la fiabilidad y cierto grado de garantía de las entregas. Estos principios también resultan ideales para conformar el protocolo ideal de la emergente (M2M) «máquina a máquina» o «Internet de las cosas»  que compone el universo de los dispositivos conectados, asi como  también para aplicaciones móviles en las que el ancho de banda y la energía de la batería están en juego

A partir de marzo de 2013, MQTT está en el proceso de normalización a someterse a OASIS.La especificación del protocolo ha sido publicada abiertamente con una licencia libre de regalías para muchos años, y empresas como Eurotech (anteriormente conocido como Arcom) han puesto en práctica el protocolo en sus productos.En noviembre de 2011 IBM y Eurotech anunciaron su participación conjunta en el Grupo de Trabajo de la Industria M2M Eclipse y la donación del código MQTT al proyecto Eclipse OPS  .

Muy resumidamente  un  sistema basado en  MQTT funciona mediante un Brocker, que es al fin y al cabo un pequeño servidor en el cual se pueden publicar temas llamados Topics.

mqrç

Una vez  publicados esos Topics  en el  Broker ,  otros dispositivos pueden suscribirse a éstos  para intercambiar información o simplemente para consumir información.

Hay muchas librerías para utilizar MQTT,  tanto con diversos microcontroladores (como por ejemplo Arduino)  , con el ESP8266 y por supuesto también con la Raspberry-Pi.

Como Broker, uno de los más famosos es Mosquitto  , el cual también puede correr en una Raspeberry-Pi

Para interectuar con el broker  , no tenemos que crear una nueva app , pues existe la aplicación  ioT Mqtt dashboard , gratuita desrcargable desde Google Play  (si está buscando una aplicación para administrar sus proyectos de IO utilizando el protocolo MQTT, dejar de buscar, aquí está 🙂

Con esta aplicación, puede controlar fácilmente los dispositivos cliente MQTT con pasos de configuración muy sencillas. En un momento  puede comunicarse con su  Arduino, o puede ordenar a su ESP8266 esclavo que haga algo,etc …

 

iot mqtt

Las principales funcionalidades de esta app:

  •  Muchas conexiones
  •  Conexión SSL
  •  Especificar su unidad de datos
  •  Visualizar los valores numéricos de una tabla de actualización en tiempo real
  •  Componentes de Publicaciones personalizables:
    + Texto
    + Botón
    + Interruptor
    + Barra de búsqueda
    + Cuadro de lista desplegable
    + Selector de color
    + botones multi
  • WIDGETS PANTALLA DE INICIO( Botón,Botón basculante (versión del componente widget de interruptor),Selector de color)

Nota:
– Usted puede encontrar el registro de errores en: almacenamiento externo (tarjeta SD) / MQTT-salpicadero / registro
– Los widgets de la pantalla principal se utilizan para publicar sólo! Ellos no se suscribe al tema y reflejan su estado.

El protocolo MQTT es pues un sencillo y ligero sistema diseñado especialmente para IoT (Internet Of Things) que funciona prácticamente en cualquier sitio y no consume apenas recursos  como lo vamos a ver , precisamente usando una Raspberry-PI al que simplemente se han conectado tres leds de colores a modo de ejemplo ,pero que obviamente se podría haber conectado cualquier carga , usando por ejemplo un simple relé o un driver de potencia.

El  esquema como podemos simplemente usa los pines 11,12 y 13 y la masa (pin6) del conector de aplicación de la Raspberry Pi   para conectar simplemente tres leds de colores al que solo se han conectado  tres simples resistencias para limitar la corriente que circula por el puerto:

esqeuma

Como una imagen (y si es en vídeo), vale mas que 1000 palabras , continuación en el siguiente vídeo podemos ver la aplicación ioT Mqtt dashboard , interactuar con una Raspberry Pi usando el esquema anterior:

 

 

Para mas información sobre este proyecto  se puede consultar los siguientes recursos:

Cómo reciclar una tableta averiada


A estas alturas debido al bajo precio así como la rápida obsolescencia de las tabletas  de origen asiático, no  siempre merece la pena reparar una tableta  pues en la mayoría de las ocasiones las piezas de repuesto, casi siempre vienen de Asia, y al precio de compra hay que sumarle el costo del transporte desde allí y no siempre compensará el gasto adicional de piezas para su reparación.

Los elementos  que se suelen romper con más frecuencia en una tableta, como se ha comentado ya en este blog, muy resumidamente  son los siguientes:

  • El panel táctil (puede ser «reemplazado» usando un ratón via OTG , pero la experiencia no sera la misma)
  • El panel  LCD(en cierta manera puede ser minimizado si esta cuenta con salida hdmi o mini hdmi pues la podemos conectar a un monitor o TV  ,pero también es cierto que  la mayoria de las tabletas de bajo costo no cuenta con esa posibilidad )
  • A menudo se rompen los 2  elementos anteriores la vez, pues va superpuesto el panel encima de la pantalla LCD y los dos son de cristal.
  • La placa madre: en este caso ,la mayoría  de las veces no arrancara el sistema operativo  pero aun asi  podremos usarla como gestor de carga para la batería y también para la alimentación de leds de potencia  o motores gracias al convertidor DC/DC usado para la reto-iluminación del panel lcd

Según el estado y grado de la avería de la tableta podremos utilizar en   mayor o medida algunas piezas

Lo primero que tendremos que hacer es desmontar la tableta siendo lo más habitual  que la tapa trasera y la parte frontal vayan encajadas con pestañas de plástico. Para no romperlas, lo mejor es separar las dos partes con algo de plástico, como la capucha de un bolígrafo  y así podremos usar  lo siguientes elementos:

  • La batería, normalmente de Polímero de Litio, suele llevar impresas las características, como la tensión nominal, de 3,7 V, y la capacidad, en este caso de 3000 mAh. La batería se puede aprovechar, por ejemplo, para hacernos una batería portátil USB.
  • El cargador , normalmente de 5V  y hasta  2A  por ejemplo cambiando el conector nos puede servir para alimentar una placa Raspberry Pi
  • También llevan altavoces, uno o dos. Son muy pequeños y de poca potencia, pero se pueden utilizar para reparar algunos auriculares, por ejemplo.
  • Panel reto-iluminación del LCD: En caso de romperse el lcd al que van adherida ,aun es posible darle una utilidad a esta parte si lo separamos, pues podremos utilizarlo para hacer una mesa de calco o, si es lo suficientemente luminoso (los de 7 pulgadas no iluminan mucho, mejor más grande) se puede hacer una caja de luz para fotografía de objetos pequeño
  • Circuito de carga de bateria : si la placa madre no tiene salida de vídeo  o incluso este averiada por completo , aun  podremos usarla como gestor de carga para la propia batería que incluye la tableta   alimentando otra carga.También la placa madre puede ser usada  para la alimentación de leds de potencia  o motores gracias al convertidor DC/DC usado para la reto-iluminación del panel lcd . En el siguiente video podemos ver como  aprovecharnos de esta placahttp://www.youtube.com/watch?v=mqhkr7h_CxM
  • Reciclar el digitalizador incluso roto:esta es una idea de posoco   ,que es es capaz de determinar mediante un método muy sencillo  una  parte que este operativa del panel , para luego utilizar esa parte  como sensor capacitivo de un solo canal :
  • Reciclar la tarjeta wifi: Algunas tabletas chinas integran el modulo wifi aparte como una extensión. Un modulo muy usado es el rtl8723, el cual  incluso integra un adaptador wifi y bluetooth con interfaz usb en la misma placa  por lo que lo único que hay que hace es desoeldarlo de la tableta y luego soldarlo a un conector usb .En el  siguiente  vídeo nos  muestran la manera en que podemos reciclarla la tarjeta de WIFi de una tablet china rota para ser utilizada en un pc cualquiera.Para los que tienen tarjetas que funcione  exclusivamente con 3.3v también  una forma muy sencilla de educir el voltaje via un 7833 y un condensador de 1mf ( en este video podemos ver mas detalles  https://youtu.be/xHM26u_da48)

 

Para terminar respecto a la placa madre , si aun no les es de utilidad el circuito de carga o el convertidor dc-dc también le pueden servir todos los conectores ,pulsadores, etc que estas llevan.

¿Se le ocurre alguna pieza que nos hayamos olvidado en este resumen?