UIFlowでは、MQTT機能を使用して、2台以上のCORE間の通信とインタラクションを実現し、強力なリモートコントロール機能を提供します。
MQTTサービスを選択します
MQTTプロトコルを用いてデータの交換を行うには、サーバーのサポートが必要です。第三者のサーバープラットフォームを選択する余地はあります。ここでは、CloudMQTTをデモンストレーション用のプラットフォームとします。
サーバーのサービスを設立後、サーバーのアドレス、ユーザー名、パスワードなどの設定情報が得られます。UIFlowのMQTTブロック中は、これらの情報を使用します。
MQTT機能です
UIFlowの高度な機能中、MQTT機能ブロックを探し出し、MQTTプロトコルを単純化して"発行"(Publish)と"購読"(Subscribe)の2つの環節と捉えることができます。
発行者がメッセージを発行後、購読者はその情報を取得し、機器間の通信を実現します。
MQTT構成ブロックです
MQTTの設定ブロックを追加し、Setupブロックに接続します。
情報記入です
個人または第三者のサーバープラットフォーム上のサーバー情報を記入し、接続の準備を整えます。
MQTT Start
MQTTの設定ブロックの下にStartブロックを追加します。これは、設定情報を入力後、通信を開始する意味です。
Publish発行は、通信中のデータ発行の環節を指し、発行内容は"主題"(topic)と"内容"(msg)の2部分から成ります
Publish “主题”(topic)
発行主題を設定し、他の機器が該主題下の内容情報を取得したい時、一致の主題名を購読する必要があります。
Publish “内容”(msg)
発行する内容情報を設定します。
プログラムがPublish発行ブロックに到達した時、メッセージを発行します。例えば: Aボタンを押下した時、主題"RGB"、内容"open"のメッセージを発行。 Bボタンを押下した時、主題"RGB"、内容"close"のメッセージを発行。
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バーは消灯します。