LonMark Japan 第6回IIoT研究会
2018-10-19
LonMark Japan 理事
山添 知久
1. AIスピーカーとオープンネットワーク機器
接続実証実験(2)
2. エッジ技術を試してみた
– AWS GreengrassによるLチカ
EnOcean トイレ・会議室のIoT – 構成
• EnOcean開閉スイッチOn/Off (ドア開閉)→IoTゲートウェイ
• IoTゲートウェイ → AWSクラウドへ保存
• → Web画面で可視化
• → AIスピーカーで現在のステータス確認
IoT Gateway
EnOcean Device
Switch
EnOcean data: EnOcean Serial Protocol (ESP)
#スイッチ
0000000 0055 0207 0a0a 0020 a82d 85bb 0158 c32a
0000010 0055 0207 0a0a 0020 a82d 00bb 01ca ca29
#温度センサ
0000060 0055 020a 9b0a 0422 d500 006d 6700 c408
MQTT
Temp: 24℃
Switch: On/Off
Linux OS
EnOcean受信
MQTT送信
アプリケーション
python
OpenBlocks IoT
EnOceanモジュール付
ESP
3G
CO2 温湿度センサ
開閉スイッチ
{
'timestamp': ‘2018-06-26T21:41:40’,
‘name’: ‘switch1’,
‘value': ‘ON’,
'device_id’: 1
'}
Alexa skill
アレクサ
IoTの基本構成 + AIスピーカー
2LMJ 第6回 IIoT研究会
DALI照明を制御
• AIスピーカーに照明の点灯・消灯・調光・調色をリクエスト
• → AlexaスキルからAWS IoTへコマンドをMQTT publish
• → 手元のデバイス(RasPi)がMQTT subscribe
• → DALIコマンド変換 → DALIゲートウェイへ送信
TCP/IP
LAN
RasberryPi
DALI Device
#01, 240
#03,00
#05,00
DALI
MQTT
Alexa skill
アレクサ、ダリ照明で色を赤
MQTT Subscribe
+ DALI コマンド送信
アプリケーション
python
DALI Gateway
Dimmer
MQTT
アレクサ、ダリ照明で明るさ30%
{
‘RGB’:’f00000’,
‘dimm’:30
}
3LMJ 第6回 IIoT研究会
LonWorksを制御 – 鉄道模型を操作
EnOcean
LonWorks
DALI
EnOcean
EnOcean
EnOcean
4LMJ 第6回 IIoT研究会
1. AIスピーカーとBAS接続実証実験
LMJ 第6回 IIoT研究会 5
AIスピーカーとBAS
• OBIX XMLインターフェースに対して設定変更をAIスピーカーから
指示を行う。
• 例:照明ONスケジュールの変更
AIスピーカーをBAシステムに使ってみる(その2)
市販されているBASの設定を変更する
6LMJ 第6回 IIoT研究会
AIスピーカーによるBASの制御 - 設定変更
• AIスピーカーにスケジュールの変更をリクエスト
• → AlexaスキルからAWS IoTへコマンドをMQTT publish
• → 手元のデバイス(RasPi)がMQTT subscribe
• → OBIX XMLフォーマット変換 → BASへ送信
TCP/IP
LAN
RasberryPi
BAS System
<?xml version="1.0"
encoding="UTF-8"
standalone="yes"?>
<obj name="schelule"
href="http://192.168.1.202:6580/xxx
/xxx/">
<int name="id" val="12345" />
<int name="time" val="15:30" />
</obj>
OBIX
MQTT
Subscribe
Alexa skill
オービックスを開いて、
スケジュール変更 15:30
MQTT ->
OBIX コマンド
XML送信
Pythonプログラム
BAS
HVAC
{
‘’schedule_id’: 12345
‘time’’:’15:30’
}
7
Lighting
Lambda
function AWS IoT
LMJ 第6回 IIoT研究会
開始時刻が 15:30に変更された
AIスピーカーとBAS まとめ
• 今回デモ用のため一部スケジュールの設定に限定
した。
• OBIX XMLインターフェースのためコマンドのデータ
サイズが大きくなる。
• 対応機能を広く汎用的にするには作りこみが必要。
• 逆に一部に特化することにより、範囲を限定してセ
キュリティを高めることが可能。
• Web画面の補完的な使い方が向いている印象。
8LMJ 第6回 IIoT研究会
2. エッジ技術を試してみた
AWS GreengrassによるLチカ
LMJ 第6回 IIoT研究会 9
エッジとは?
• エッジコンピューティングとは
– クラウドと異なる場所にコンピューティングリソースと意思決定機能を持たせること
• クラウドのみで制御を行う場合の問題
– オフライン : 通信が切れると制御不可能
– 応答性 : クラウドへの通信の遅延による制御遅れ
– 帯域幅 : 不足すると遅延やデータ欠損
ローカルにも制御機能を持たせたい -> 信頼性の向上
エッジ : 応答性の要する処理
クラウド :可視化、ログ保存、データ解析など
10
HVAC Lighting etc…
中央監視
障害
HVAC Lighting etc…
中央監視
Edge
LMJ 第6回 IIoT研究会
AWS Greengrass – AWSのエッジ技術
AWS Greengrassとは
• Greengrass Core :
– エッジ用デバイスにインストールするソ
フトウェア。常駐するプロセス。
• Lambda function :
– サーバレスなクラウド上のプログラム。
Grenngrassによりエッジ上で実行される。
11
HVAC Lighting
Lambda
function
AWS IoT
Greengrass Core
制御プログラム
DB
クラウドとGreengrass Lambdaの違い
• エッジでは
– デバイスのローカルリソース(I/O、シリアルポートなど)にアクセス可能
– タイムアウトなしの常駐が可能
LMJ 第6回 IIoT研究会
AWS Greengrassを試してみる
エッジデバイス
• Greengrass Core :
– エッジ用Raspiにインストール
• Lambda function :
– LED1, LED2のOn/Offを5秒間隔で実行
– MQTT publishによりメッセージ送信
エッジでLEDデバイスの
On/Off制御
12
LED
Blinker
Lambda
function
AWS IoT
Greengrass Core
制御プログラム
DB
制御対象デバイス
• Raspi上のpythonプログラム
• MQTT subscribeでメッセージを受信
-> GPIOのOn/Off
RasberryPi
* 次回検討予定
LED1, LED2
On-Off /5sec
Topic: demo/blinker
Message: { ‘led1’:1, ‘led2’:0 }
LMJ 第6回 IIoT研究会
エッジ まとめ
• クラウドからデバイスへ配置したLambda functionに
よりデバイスの制御が可能なことを確認した。
• クラウド接続を切断した状態でも制御が継続してい
ることを確認した。
• 制御部分をローカルで実行するのは信頼性や応答
性の向上が期待できるため、中央監視のクラウド化
における問題の解決策の1つであると感じた。
• クラウド上の機能とエッジの連携のさらなる検討を
次回の研究会に向けて進める予定。
13LMJ 第6回 IIoT研究会

AWS GreengrassによるLチカとAIスピーカーによるBAS制御の実証実験

  • 1.
    LonMark Japan 第6回IIoT研究会 2018-10-19 LonMarkJapan 理事 山添 知久 1. AIスピーカーとオープンネットワーク機器 接続実証実験(2) 2. エッジ技術を試してみた – AWS GreengrassによるLチカ
  • 2.
    EnOcean トイレ・会議室のIoT –構成 • EnOcean開閉スイッチOn/Off (ドア開閉)→IoTゲートウェイ • IoTゲートウェイ → AWSクラウドへ保存 • → Web画面で可視化 • → AIスピーカーで現在のステータス確認 IoT Gateway EnOcean Device Switch EnOcean data: EnOcean Serial Protocol (ESP) #スイッチ 0000000 0055 0207 0a0a 0020 a82d 85bb 0158 c32a 0000010 0055 0207 0a0a 0020 a82d 00bb 01ca ca29 #温度センサ 0000060 0055 020a 9b0a 0422 d500 006d 6700 c408 MQTT Temp: 24℃ Switch: On/Off Linux OS EnOcean受信 MQTT送信 アプリケーション python OpenBlocks IoT EnOceanモジュール付 ESP 3G CO2 温湿度センサ 開閉スイッチ { 'timestamp': ‘2018-06-26T21:41:40’, ‘name’: ‘switch1’, ‘value': ‘ON’, 'device_id’: 1 '} Alexa skill アレクサ IoTの基本構成 + AIスピーカー 2LMJ 第6回 IIoT研究会
  • 3.
    DALI照明を制御 • AIスピーカーに照明の点灯・消灯・調光・調色をリクエスト • →AlexaスキルからAWS IoTへコマンドをMQTT publish • → 手元のデバイス(RasPi)がMQTT subscribe • → DALIコマンド変換 → DALIゲートウェイへ送信 TCP/IP LAN RasberryPi DALI Device #01, 240 #03,00 #05,00 DALI MQTT Alexa skill アレクサ、ダリ照明で色を赤 MQTT Subscribe + DALI コマンド送信 アプリケーション python DALI Gateway Dimmer MQTT アレクサ、ダリ照明で明るさ30% { ‘RGB’:’f00000’, ‘dimm’:30 } 3LMJ 第6回 IIoT研究会
  • 4.
  • 5.
  • 6.
    AIスピーカーとBAS • OBIX XMLインターフェースに対して設定変更をAIスピーカーから 指示を行う。 •例:照明ONスケジュールの変更 AIスピーカーをBAシステムに使ってみる(その2) 市販されているBASの設定を変更する 6LMJ 第6回 IIoT研究会
  • 7.
    AIスピーカーによるBASの制御 - 設定変更 •AIスピーカーにスケジュールの変更をリクエスト • → AlexaスキルからAWS IoTへコマンドをMQTT publish • → 手元のデバイス(RasPi)がMQTT subscribe • → OBIX XMLフォーマット変換 → BASへ送信 TCP/IP LAN RasberryPi BAS System <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <obj name="schelule" href="http://192.168.1.202:6580/xxx /xxx/"> <int name="id" val="12345" /> <int name="time" val="15:30" /> </obj> OBIX MQTT Subscribe Alexa skill オービックスを開いて、 スケジュール変更 15:30 MQTT -> OBIX コマンド XML送信 Pythonプログラム BAS HVAC { ‘’schedule_id’: 12345 ‘time’’:’15:30’ } 7 Lighting Lambda function AWS IoT LMJ 第6回 IIoT研究会 開始時刻が 15:30に変更された
  • 8.
    AIスピーカーとBAS まとめ • 今回デモ用のため一部スケジュールの設定に限定 した。 •OBIX XMLインターフェースのためコマンドのデータ サイズが大きくなる。 • 対応機能を広く汎用的にするには作りこみが必要。 • 逆に一部に特化することにより、範囲を限定してセ キュリティを高めることが可能。 • Web画面の補完的な使い方が向いている印象。 8LMJ 第6回 IIoT研究会
  • 9.
  • 10.
    エッジとは? • エッジコンピューティングとは – クラウドと異なる場所にコンピューティングリソースと意思決定機能を持たせること •クラウドのみで制御を行う場合の問題 – オフライン : 通信が切れると制御不可能 – 応答性 : クラウドへの通信の遅延による制御遅れ – 帯域幅 : 不足すると遅延やデータ欠損 ローカルにも制御機能を持たせたい -> 信頼性の向上 エッジ : 応答性の要する処理 クラウド :可視化、ログ保存、データ解析など 10 HVAC Lighting etc… 中央監視 障害 HVAC Lighting etc… 中央監視 Edge LMJ 第6回 IIoT研究会
  • 11.
    AWS Greengrass –AWSのエッジ技術 AWS Greengrassとは • Greengrass Core : – エッジ用デバイスにインストールするソ フトウェア。常駐するプロセス。 • Lambda function : – サーバレスなクラウド上のプログラム。 Grenngrassによりエッジ上で実行される。 11 HVAC Lighting Lambda function AWS IoT Greengrass Core 制御プログラム DB クラウドとGreengrass Lambdaの違い • エッジでは – デバイスのローカルリソース(I/O、シリアルポートなど)にアクセス可能 – タイムアウトなしの常駐が可能 LMJ 第6回 IIoT研究会
  • 12.
    AWS Greengrassを試してみる エッジデバイス • GreengrassCore : – エッジ用Raspiにインストール • Lambda function : – LED1, LED2のOn/Offを5秒間隔で実行 – MQTT publishによりメッセージ送信 エッジでLEDデバイスの On/Off制御 12 LED Blinker Lambda function AWS IoT Greengrass Core 制御プログラム DB 制御対象デバイス • Raspi上のpythonプログラム • MQTT subscribeでメッセージを受信 -> GPIOのOn/Off RasberryPi * 次回検討予定 LED1, LED2 On-Off /5sec Topic: demo/blinker Message: { ‘led1’:1, ‘led2’:0 } LMJ 第6回 IIoT研究会
  • 13.
    エッジ まとめ • クラウドからデバイスへ配置したLambdafunctionに よりデバイスの制御が可能なことを確認した。 • クラウド接続を切断した状態でも制御が継続してい ることを確認した。 • 制御部分をローカルで実行するのは信頼性や応答 性の向上が期待できるため、中央監視のクラウド化 における問題の解決策の1つであると感じた。 • クラウド上の機能とエッジの連携のさらなる検討を 次回の研究会に向けて進める予定。 13LMJ 第6回 IIoT研究会