Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
どんなデータもAzure IoT Hub に転送!IoT デバイスで汎用的に利用できるサンプルコード紹介
DA61
はじめに:ソースコードの入手
de:code 2018 シアターセッション DA61
どんなデータも Azure IoT Hub に転送!IoT デバイスで汎用的に利用できるサンプ
ルコード紹介 の日本語解説はこちら
はじめに:ソースコードの入手(続き)
日本語解説
の表示
デバイスのセンサーデータを容易に IoT Hub に送る。
(⇔IoT Device SDK)
どんなデータも… 汎用的に使える
IoTを成功させるコツ
ゴール(解決する課題)
EnOcean 無線通信のデータを容易に IoT Hub に送りたい
D2C コンテスト (2017年) のサンプルプログラム 事例
難解
背景(開発のきっかけ)
• センサーやデバイスの接続種類(主にローカル)
• センサーやデバイスの接続種類(主にリモート)
「どんなデータも… 汎用的に使える」とは?
解決したい接続事例
Azure IoT Hub
Azure
IoT-Edge
EnOcean
Receiver
例:EnOcean 無線通信
テレメトリーデータ
IoT ゲートウェイ
• Linux D-bus
• Windows SPB
• Alljoyn (OCF)
• Socket
• Named Pipe
• IPC
• .NET Core
• ファイル渡し
汎用的に使える? 論理ローカル・コネクティビティ例
課題
(超安定!)
(データ変換不要、データ長)
数値データのファイル渡し
IoT Edge 既存ソース (simulated_device.c)
additionalTemp = 0.0;sprintf_s(msgText, sizeof(msgText),"{¥"temperature¥": %.2f}",avgTemperature + additionalTemp)
additionalTemp += 1.0;
解説:元の JSON 設定ファイル(simulated_device.c)
"IoTHubName": "<<insert here IoTHubName>>","IoTHubSuffix": "<<insert here IoTHubSuffix>>",
"deviceId": "<<insert here deviceId>>","deviceKey": "<<insert here deviceKey>>"
解説:追加の JSON 設定ファイル(simulated_device.c)
"filename": "<<insert here filename like /var/tmp/MyDevice1>>","messagePeriod": 2000
"filename": "<<insert here like C:¥¥temp¥¥MyDevice1.txt>>","messagePeriod": 2000
応用事例
電池の心配無用の IoT...半永久的 CO2センシング
Azure
IoT-Edge
OPC UA
Client
EnOcean
Receiver
OPC UA Server
USB400J
DPRIDE
Raspbian
Windows
EnOcean Gateway
Open62541
Custom OPC UA Server
Bridge File
Azure IoT-Edge
Custom IoT Gateway
Web View
Cogent DataHub Web server
Internet
Explorer
TCP/IP TCP/IP
USB
Raspberry Pi
PC
Device
Explorer
TCP/IP
Control File EEP File
Azure IoT HubEnOcean Receiver
OPC UA元々は OPC →OLE for Process Control
OLE (Object Linking and Embedding)→ COM/DCOMが発祥の機器間通信
OPC DAとも
補足:Industry 4.0 標準プロトコル
補足:EnOcean 無線通信
• IoT Edge V2 対応• オープンソース化される
• Edge Computing 対応• Stream Analytics, Functions, Machine Learning 事例, …
• メッセージ (アクチュエータ) 対応
• データ受信イベント、差分データ 対応
• 応用事例の拡張
今後の予定
• ソースコードの入手
• 「どんなデータも... 汎用的に使える」とは?
• 汎用的に使える? 論理ローカル・コネクティビティ
• 数値データのファイル渡し
• JSON 設定ファイル
• 応用事例
• 今後の予定
まとめ
© 2018 Atomu Hidaka All rights reserved.
本コンテンツの著作権、および本コンテンツ中に出てくる商標権、団体名、ロゴ、製品、サービスなどはそれぞれ、各権利保有者に帰属します。
本情報の内容 (添付文書、リンク先などを含む) は、de:code 2018 開催日 (2018年5月22~23日) 時点のものであり、予告なく変更される場合があります
ありがとうございました。