複雑な構成の実現

PD Handler からのデータを Node-RED フィルタリングしたい場合、 WEB UI の設定だけでも Node-RED をユーザー定義デバイスとすれば、 PD Repeater から lsocket を用いてデータを Node-RED に渡し、Node-RED の出力を PD Handler へ返す構成が可能ですが、 データの収集において弊社用意するアプリケーション (PD Handler) を用いず、 各デバイス等からデータを取得するアプリケーションをユーザーが独自に開発し、 PD Repeater と連携しクラウドにデータを送信する方法を説明します。

../../../_images/through_repeater.png

IoTデータ制御のアプリ設定 に示すユーザー定義のコンフィグを使用しUNIXドメインソケット名を変更することで、 下図のようなよりスループットを意識した構成とすることが可能です。

../../../_images/direct.png

設定ファイル(コンフィグ)はJSON形式で記載されており、UNIXドメインソケット名は次のキーで表記されます。

アプリ起動制御の設定項目

キー

形式

bind

文字列

データを待ち受けるUNIXドメインソケット名。 空白の場合は各アプリケーションのデフォルト値をプリフックスとし、 デバイス番号を差フックスとするソケット名がもちいられる。 先頭が@の場合は抽象的ドメイン名 (Abstract UNIX doamin name) であることを意図します。

push_to

文字列

データの送り先となるUNIXドメインソケット名。 空白の場合は各アプリケーションのデフォルト値をプリフックスとし、 デバイス番号を差フックスとするソケット名がもちいられる。 先頭が@の場合は抽象的ドメイン名 (Abstract UNIX doamin name) であることを意図します。

Beacon デバイス (PD Handler BLE)を例に設定方法を示します。

  1. IoTデータ制御のアプリ設定 に示す「コンフィグ設定モード」が「本システムコンフィグ」であることを確認します。 | WEB UIの「IoTデータ」→「アプリ設定」タブより、「コンフィグ設定モード表示」をチェックしてPD Handler BLEが「本システムコンフィグ」となっていることを確認します。

../../../_images/system_config.png
  1. WEB UIの「IoTデータ」→「送受信設定」タブの「送受信設定」メニューより、 送受信先の設定を行います。 設定方法は:ref:pd_repeater を参照して下さい。

  2. WEB UIの「IoTデータ」→「送受信設定」タブの「ビーコン送信設定」メニューより、 ビーコンを受信し送信する設定を行います。設定方法は:ref:pd_handler_beacon を参照して下さい。

  3. ここまでの設定で下図のようにPD Repeater は、UNIXドメインソケット @/pd_repeater/device_beacon.sock でデータを持ち受け、 PD Handler BLE は @/pd_repeater/device_beacon.sock にデータ書き込むよう設定されます。 | ここでUNIXドメインソケット名の '@' はソケットが抽象的ドメイン名 (Abstract UNIX doamin name) であることを意図するものです。

../../../_images/straight.png
  1. 「コンフィグ設定モード」を「ユーザー設定コンフィグ」に切り替えます。 | WEB UIの「IoTデータ」→「アプリ設定」タブより、「コンフィグ設定モード表示」をチェックしてPD Handler BLEを「ユーザー設定コンフィグ」に切り替えます。

../../../_images/user_config.png
  1. WEB UIにより作成されたシステムコンフィグをユーザーコンフィグとしてコピーし、 UNIXドメインソケット名を @/pd_repeater/device_beacon.sock から @/node-red/device_beacon.sock に変更します。

  6-1. WEB UIの「IoTデータ」→「編集」タブより、「編集対象ファイル」として
    「PD Handler BLE」を選択します。
  6-2.「Load(システムコンフィグ)」をクリックします。テキストエリアに表示された設定情報
    (JSON文字列)をコピーします。
  6-3.「Load(ユーザーコンフィグ)」をクリックします。2項で取得した設定情報(JSON文字列)
    をテキストエリアにペーストします。
  6-4. "push_to" キーの値を"@/node-red/device_beacon.sock"に変更します。
  6-5.「保存」をクリックします。
../../../_images/edit_config.png
  1. Node-REDのUNIXドメインソケット入力ipc-inノードのプロパティを設定します。 Node-REDの利用方法については Node-REDスターターガイド を参照して下さい。

    ipc-inノードを配置し、プロパティの「Path」を"/node-red/device_beacon.sock" に設定し、「Abstract Flag」をチェツクします。

../../../_images/node_red1.png
  1. Node-REDのUNIXドメインソケット出力ipc-outノードのプロパティを設定します。

    ipc-outノードを配置し、プロパティの「Path」を"/pd_repeater/device_beacon.sock"に設定し、「Abstract Flag」をチェツクします。

../../../_images/node_red2.png

以上の設定で PD Handler BLE は @/node-red/device_beacon.sock にデータ書き込み、 Node-RED は @/node-red/device_beacon.sock でデータを待ち受け @/pd_repeater/device_beacon.sock に書き込むように設定されます。

../../../_images/via_node_red.png