§  ESP32による近距離無線通信の実験③ MQTT通信

 Facebookがオンラインチャットシステム(Messenger)にMQTTを使用していることは知られていますが、その後、2015年にはAmazon Web ServicesがMQTTに基づいたAmazon IoTを発表。さらにMicrosoft Azure IoT Hubが、テレメトリメッセージのメインプロトコルとしてMQTTを採用。またGoogleも Cloud IoT CoreでMQTTをサポートするなど、MQTTを実装する大規模なプロジェクトが増えています。
 これらに関連して、デバイスとクラウド間のメッセージ送受信についての解説も増えてきて興味をそそられます。一方、MQTTの動作環境を手元に設置するのは容易であり、比較的簡単に通信システムを構築することができます。クラウドの利用とは別に手元で実験を行うことは、ただ動作の詳細や性能、開発の要点を把握することにとどまらず、応用面で多くのヒントを得られるのではないかと思います。
 ここでは、『ESP32による近距離無線通信の実験① 準備作業編』で作成した計測用と監視用のデバイスを使って、MQTTによる双方向通信の実験に取り組みます。
 続いて、赤外線通信の準備をして身近な家電製品のリモコン情報を取り込み、ESP32でMQTT版赤外線リモコンと赤外線送信器を作成。MQTTで結んで家電製品を制御します。

Ⅰ. 開発のための基礎知識  ・MQTTとは  ・MQTTの基本概念 ・サービス品質(QoS)  ・その他の補助機能
 ・プロトコルの概要
Ⅱ. 実験の概要とブローカーの構築  ・実験の概要 ・トピックの設定 ・MQTTライブラリーとプログラム構造
 ・ブローカーの構築 
Ⅲ-1. MQTT通信①計測デバイス編  ・計測用デバイスの基本要件 ・Async MQTTクライアントライブラリー
 ・LWT(Last Will and Testament)の設定 ・コードの解説 ・実行結果
Ⅲ-2. MQTT通信②監視デバイス編  ・監視用デバイスの基本要件 ・ブロッキング関数の実行制限 ・コードの解説
 ・動作検証
Ⅳ-1. MQTTで赤外線制御:準備編  ・ホームオートメーションと赤外線制御 ・赤外線モニターボードの作成
 ・赤外線送信器ボードの作成 ・赤外線リモコンボードの作成
Ⅳ-2. 赤外線情報のハンドリング  ・ESP32用の赤外線送受信ライブラリー ・赤外線モニターとリモコンデータの解析
 ・赤外線リモコンソフトの作成 ・コードの解説 ・動作検証
Ⅳ-3. 部屋別のエアコン制御  ・赤外線送信器ソフトの作成 ・コードの解説 ・実行結果 ・今後の課題