5. MQTT 基本コンセプト及びデモ
MQTTは軽量なPub/Sub方式のメッセージングプロトコルです。
MQTTブローカーはシンプルな共通インターフェースとして機能します。
トピックはMQTTブローカーを介して購読し、発行することができます。
クライアントは関心のあるトピックを購読または発行するためにブローカーに接続することができます。
MQTTのメッセージはトピック単位で発行されます。トピックを事前に設定する必要はなく、必要になったときに発行するだけで十分です。
トピックはスラッシュ(/)を区切り文字として階層化されます。(例:lora/rxpk)
MQTTトピックの購読について、MQTT.fxを使用したデモを紹介します。MQTT.fx を以下のURLからからダウンロードし、インストールしてください。
MQTT.fxを起動し、図5-1に示すようにMQTTブローカー情報を設定してください。
ユーザー名とパスワードは「3.5. MQTT設定」の設定と同一である必要があります。デフォルトのユーザー名とパスワードは「admin」です。
次に[Connect]をクリックします。 MQTT.fxがMQTTブローカーに正常に接続すると、図5-2に示すようにMQTT.fx上に緑色のライトが表示されます。
図5-1 MQTT.fx設定
図5-2 MQTTブローカーへの正常な接続
図5-3のように、購読するトピックに「3.5. MQTT設定」の設定と同じものを指定してください。
[Subscribe]ボタンをクリックすると、他のノードから送信したLoRaパケットを、図5-3に示すようにMQTT.fx上で出力を確認できます。
図5-3 サブスクリプションデモンストレーション
次にTLG3901シリーズを介してLoRaノードにLoRaパケットの送信を行います。「3.5. MQTT設定」で指定したTransmit Packet Subscribe Topicの値を、MQTT.fxのPublish Topicに指定してください。
図5-4に示すように送信パケットの内容を入力して、[Publish]ボタンをクリックします。パケットの内容は次の文字列です。
{"imme":true, "freq":915.5, "rfch":0, "powe":14, "modu":"LORA", "datr":"SF12BW125", "codr":"4/5", "ipol":false, "size":8, "data":"MDAwMDAxMjM"}