iot-mqtt-panel

IoT MQTT panel | MQTT explorer

MQTT nám umožňuje poměrně jednoduše nastavit a spolehlivě provozovat velký počet IoT zařízení. Jednou z dalších výhod protokolu MQTT je celá řada dostupných programů a aplikací pro konfiguraci i vlastní ovládání. Stačí si do „chytrého mobilu“ nebo tabletu nainstalovat některou z nich a během chvilky je můžete využívat pro své projekty.

Tentokrát vám představíme aplikaci (pro Android) s názvem IoT MQTT panel (obrázek představuje ikonu, pod kterou jí poznáte). Tato aplikace vám umožní snadno spravovat a vizualizovat jednoduché projekty IoT.
V mobilních aplikacích pro MQTT (a tato není výjimkou) se typicky nastaví přihlášení k brokeru a pak se vytváří množství kontrolních prvků (widgetů) – tyto využívají publish a/nebo subscribe na jednotlivé zprávy, pomocí nichž ovládáte nebo monitorujete jednotlivá zařízení.

Vybrané vlastnosti a funkce:

  • Aplikace běží na pozadí a znovu se připojuje automaticky. Může proto fungovat „24/7“.
  • Podporuje protokol MQTT (TCP) i Websocket.
  • SSL pro bezpečnou komunikaci (zabezpečený protokol).
  • Podpora JSON pro odběr i publikování strukturovaných zpráv.
  • Panely se k odběru přihlašují automaticky a proto se aktualizují v reálném čase.
  • Navrženo pro efektivní práci s veřejným brokerem (pomocí předpony zařízení).
  • Odeslané a přijaté časové razítko (timestamp) od brokera.

Připravili jsme dvě samostatná zařízení EDU_KIT1. Zatímco na jednom využíváme jen vestavěnou LED a displej (na obrázku vlevo), na druhém jsme připojili navíc RGB panel (4×4) a servo. Obě zařízení používají stejný kód:
github.com/octopusengine/…/examples/mqtt/mqtt-edu-kit.py
a ovládací prvky v aplikaci IoT MQTT panel jsme umístili do společného panelu:

Na obrázku vidíte použití některých vybraných komponent (ovládacích a zobrazovacích prvků). Aplikaci připojte ke stejnému MQTT brokeru, jako jednotlivá zařízení. Na základní experimentování můžete opět zkusit veřejně dostupného brokera, kde nastavíte: „mqtt_broker“: „broker.hivemq.com„, „mqtt_ssl“: 0. Připojení je pak signalizováno mráčkem v oranžovém poli nahoře.
Pro každý prvek si definujte takzvaný Topic, což je jednoznačná identifikace jednoho zařízení nebo skupiny zařízení a jejich komponent. Například pro EDU_KIT používáme komponety Led (vestavěná LED dioda), RGB (barevná WS dioda nebo panel 4×4), Button (tlačítko boot na modulu Do-It). Případně se dají přímo použít i Displ7 (pro připojený displej) nebo Servo (jako ve druhém modulu).


Pro lepší porozumění MQTT i snadnější práci a ladění doporučujeme vyzkoušet i desktopovou aplikaci http://mqtt-explorer.com/. Program je ke stažení pro všechny platformy (Linux, Mac i Windows) a práce s ním je poměrně intuitivní, (koukněte se na video z předchozího odkazu). Nejdříve si opět nastavíte MQTT brokera (třeba nějakého veřejného nebo ve vlastním počítači přes Node Red) a pak uvidíte veškeré probíhající „komunikace“. V ukázce jsme se připojili k zařízení (device) „…abb35“ (dáno svým jedinečným identifikačním číslem UID) a pomocí „příkazu“ (klíčového slova) rgb jsme poslali hodnotu #000032, čímž jsme na konkrétním zařízení rozsvítili RGB Led diodu modře. Celý topic je pak:
octopus/device/…abb35/rgb, kde „…abb35“ je celé UID, zde zkracujeme, aby se vešlo.

Máte už nějakou zkušenost s MQTT? Napište nám na info@octopuslab.cz, jaké projekty realizujete a jaké aplikace k tomu používáte. Ozvěte se i pokud vám něco nebylo jasné nebo vám něco nefungovalo.












co se už nevešlo:

Jednoduchá ukázka a uživatelská příručka: snrlab.in/iot/iot-mqtt-panel-user-guide/


Předchozí díly:
https://www.octopuslab.cz/mqtt/
https://www.octopuslab.cz/smart_home/