MQTT

MQTTとは何ですか?

MQTT(Message Queuing Telemetry Transport, メッセージングキューテレメトリートランスポート)は、発行/購読(publish/subscribe)モデルに基づく"軽量"の通信プロトコルです。TCP/IPプロトコル上に構築され、低コスト、低帯域幅消費のリアルタイム通信プロトコルとして、IoT、小型機器、モバイルアプリケーションなどに広範な応用が見込まれています。

UIFlowとMQTTです

UIFlowでは、MQTT機能を使用して、2台以上のCORE間の通信とインタラクションを実現し、強力なリモートコントロール機能を提供します。

MQTT server

MQTTサービスを選択します

MQTTプロトコルを用いてデータの交換を行うには、サーバーのサポートが必要です。第三者のサーバープラットフォームを選択する余地はあります。ここでは、CloudMQTTをデモンストレーション用のプラットフォームとします。

サーバーのサービスを設立後、サーバーのアドレス、ユーザー名、パスワードなどの設定情報が得られます。UIFlowのMQTTブロック中は、これらの情報を使用します。

MQTT機能です

UIFlowの高度な機能中、MQTT機能ブロックを探し出し、MQTTプロトコルを単純化して"発行"(Publish)と"購読"(Subscribe)の2つの環節と捉えることができます。

発行者がメッセージを発行後、購読者はその情報を取得し、機器間の通信を実現します。

初始化程序

MQTT構成ブロックです

MQTTの設定ブロックを追加し、Setupブロックに接続します。

情報記入です

個人または第三者のサーバープラットフォーム上のサーバー情報を記入し、接続の準備を整えます。

注意

複数の機器同時に使用する場合は、ID名(下図のIDは"M5stack")は、設定情報の他のオプションや他の機器のIDと重複してはいけません。同時に、同一のサーバー中、同一のID名の機器は、オンライン状態の1台だけを許可します。プログラムを機器にダウンロードして実行する場合は、プログラムの初期化部分にWi-Fi接続プログラムを追加する必要があります。

MQTT Start

MQTTの設定ブロックの下にStartブロックを追加します。これは、設定情報を入力後、通信を開始する意味です。

Publish发布

功能说明

Publish発行は、通信中のデータ発行の環節を指し、発行内容は"主題"(topic)と"内容"(msg)の2部分から成ります

Publish “主题”(topic)

発行主題を設定し、他の機器が該主題下の内容情報を取得したい時、一致の主題名を購読する必要があります。

Publish “内容”(msg)

発行する内容情報を設定します。

使用方法

プログラムがPublish発行ブロックに到達した時、メッセージを発行します。例えば: Aボタンを押下した時、主題"RGB"、内容"open"のメッセージを発行。 Bボタンを押下した時、主題"RGB"、内容"close"のメッセージを発行。

Subscribe订阅

功能说明

Subscribe購読は、通信中のデータ受信の環節を指し、発行者が情報を発行した後、購読者は自動的に購読した主題(topic)のメッセージ内容(msg)を受信します。

Subscribe “主题”(topic)

購読したい主題を設定します。

Get topic data “内容”(msg)

該購読下のメッセージ内容を取得します。

使用方法

Subscribeブロックを追加し、購読したい主題(topic)を記入し、Get topic dataブロックを使用して取得し、分析処理します。例えば:

Publishから"open"を取得した時、RGB barを点灯。取得した内容が"close"の時、RGB barを消灯。

使用案例

实现功能

COREを用いて単純な使用事例をプログラミングし、その機能を検証します。COREは同時に発行者(Publish)と購読者(Subscribe)の役割を果たします。

完整程序

使用方法

Aボタンを押すと、メッセージリリース(テーマは"RGB"、内容は"open")が行われ、RGBバーが点灯します。

Bボタンを押すと、メッセージリリース(テーマは"RGB"、内容は"close")を行い、RGBバーは消灯します。

On This Page