3.1. ICE Core SDK概要¶
ICEではエッジ側のアプリケーション開発を行うためのSDKが提供されます。
本SDKのファイル構成は下記の通りです。
core/
+-- bin/ # npm等の実行ファイル群
|
+-- conf/ # 開発環境用の初期設定ファイル群
|
+-- include/ # Node.jsのヘッダファイル群
|
+-- lib/node_modules # npm用のライブラリ群
|
+-- native/include/ # ICE Data Delivery C API のヘッダファイル群
|
+-- sample/ # Device Adapter、Edge Application、Node-REDフローのサンプル群
|
+-- share/ # Node.jsの共有ファイル群
3.1.1. エッジ側開発環境のセットアップ¶
運用・利用ガイドを参照しICE Coreをセットアップします
ICE CoreをセットアップしたディレクトリにSDKを展開します
# cd /opt/nec/pf/ice # tar xzf iot_connectivity_engine_core-sdk-noarch-1.2.3.tar.gz
gcc をインストール
Device Adapterや Edge Applicationを開発する場合にはgccをインストールします。 Node-REDのみを利用した開発の場合は不要です。
# apt-get install gcc make
3.1.2. サンプル一覧¶
ICE Core SDKの中に、エッジ側のアプリケーションサンプルを同梱しています。
本開発ガイドでは、サンプルを使ってDevice AdapterやEdge Applicationの実装について簡単に説明します。
core/
+-- samples/
+-- native/app/
| +-- thermometer_sample/ # Device Adapter サンプル
| | # 疑似温度(摂氏)センサ
| |
| +-- hydrometer_sample/ # Device Adapter サンプル
| | # 擬似湿度センサ
| |
| +-- temp_converter_sample/ # Edge Application サンプル
| | # 摂氏 → 華氏 変換処理
| |
| +-- device_operation_sample/ # Device Adapter サンプル
| | # Backendからの任意指示を受信
| |
| +-- edgeap_operation_sample/ # Edge Application サンプル
| | # Backendからの任意指示を受信
| |
| +-- partition_sample/ # Device Adapter サンプル
| | # 64KBを越えるデータを分割
| |
| +-- assemble_sample/ # Edge Application サンプル
| | # 分割されたデータを結合
| |
| +-- air_conditioning_sample/ # Device Adapter サンプル
| | # 空調機器を想定したエミュレータ
| |
| +-- lighting_sample/ # Device Adapter サンプル
| # 照明機器を想定したエミュレータ
|
+-- node-red/
| discomfort.json # 温度センサ、湿度センサのデータを元に不快指数を算出・通知するフロー
| device_actuation.json # 空調、照明にアクチュエーションするフロー
| aws_thingshadow.json # AWS IoTのThing Shadowと連携するフロー
|
|
+-- onvif_xml/ # ONVIF対応Node-REDノード用のテンプレートサンプル
- SDKには実行時に利用するライブラリは含まれません。