SlideShare a Scribd company logo
1 of 58
Download to read offline
Copyright © 2016 AGREX INC. All rights reserved.
JAWS-UG 札幌 in AWS Cloud Roadshow 2016
2016.10.12
札幌事業所 松田 生吾
AWS歴2週間で IoT に挑戦してみた。
Copyright © 2016 AGREX INC. All rights reserved. 2
自己紹介
松田 生吾(まつだ しょうご)
 所属
 (株)アグレックス 札幌事業所
 主な仕事内容
 某市の人事給与システム開発、保守
 AWS
 気になるAWSサービス
 AWS IoT(なんかすごそう。)
 その他
 JAWS-UGのイベント初参加&
初登壇です。
New!!
趣味はマラソン
※ガチなのはちょっとお休み中・・・
Copyright © 2016 AGREX INC. All rights reserved. 3
AWS との関わり
2016.09 2016.10
今ここ!
(部長)
AWS やらない?
(JAWS-UGの人)
来月
Cloud Rowdshow
あるんだけどさぁ・・・。
AWS歴 約1ヶ月・・・
Copyright © 2016 AGREX INC. All rights reserved. 4
さて、何の話をしよう
何か語れるほど、まだ業務で AWS に触れていない。
↓
「業務で困ってたアレをこうしてみた!」みたいな
人の役に立つような話ができない・・・。
↓
とりあえず、自分に関する問題をAWSを使って
解決してネタにしてみよう・・・。
Copyright © 2016 AGREX INC. All rights reserved. 5
AWS を利用して解決したいこと
-外出時-
Lock!
施錠する。
Copyright © 2016 AGREX INC. All rights reserved. 6
AWS を利用して解決したいこと
-外出時-
Lock!
出かける。
Copyright © 2016 AGREX INC. All rights reserved. 7
AWS を利用して解決したいこと
鍵
は
締
め
た
だ
ろ
う
か
…
-外出時-
Lock!
Locked…?
不安になる。
Copyright © 2016 AGREX INC. All rights reserved. 8
AWS を利用して解決したいこと
-外出時-
(Before)
Lock!
確認しに戻る。
(無限ループ)
Copyright © 2016 AGREX INC. All rights reserved. 9
AWS を利用して解決したいこと
-外出時-
(After)
Lock!
施錠する。
Copyright © 2016 AGREX INC. All rights reserved. 10
AWS を利用して解決したいこと
鍵
は
締
ま
り
ま
し
た
よ
。
-外出時-
(After)
Lock!
施錠したことを教えてくれる。
Copyright © 2016 AGREX INC. All rights reserved. 11
AWS を利用して解決したいこと
鍵
は
締
ま
り
ま
し
た
よ
。
-外出時-
(After)
Lock!
Locked!!
安心して
出かけられる!
Copyright © 2016 AGREX INC. All rights reserved. 12
AWS を利用した解決策(ぼんやり)
Locked!!
Lock!
家の施錠状態をAWSがうまいこと処理してスマホに通知してくれる。
Copyright © 2016 AGREX INC. All rights reserved. 13
AWS を利用した解決策
Locked!!
Lock!
家の施錠状態をセンサーが検知し、AWS IoTで処理してスマホに通知する。
Copyright © 2016 AGREX INC. All rights reserved. 14
AWS IoT とは・・・
Q: AWS IoT とは何ですか?
AWS IoT では、接続されたデバイスが簡単かつ安全にクラウドアプリケーションやそ
の他のデバイスとやり取りできるマネージド型クラウドプラットフォームです。AWS IoT
では数十億のデバイスと数兆のメッセージをサポートし、それらのメッセージを AWS エ
ンドポイントおよび他のデバイスに確実かつ安全に処理しルーティングします。AWS
IoT によってアプリケーションはそれらが接続されていない場合でも、全てのデバイスを
常に追跡し通信することができます。
AWS IoT を使用すると、AWS Lambda、Amazon Kinesis、Amazon S3、
Amazon Machine Learning、Amazon DynamoDB、Amazon
CloudWatch、AWS CloudTrail、および Amazon Elasticsearch
Service (組み込みの Kibana と統合されている) といった AWS の各種サービス
を簡単に使用でき、インフラストラクチャを管理をせずに、接続されたデバイスによって
生成されたデータを収集、処理、分析、実行する IoT アプリケーションを構築できま
す。
https://aws.amazon.com/jp/iot/faqs/
Copyright © 2016 AGREX INC. All rights reserved. 15
AWS IoT とは・・・
要するに、AWS IoT を利用することで、
お手軽に IoT を実現できるらしい!!
https://aws.amazon.com/jp/iot/how-it-works/
Copyright © 2016 AGREX INC. All rights reserved. 16
IoTを実現するために用意したもの
センサーと、センサーの情報をAWSに飛ばすものが必要。
Copyright © 2016 AGREX INC. All rights reserved. 17
今回使用したもの①:SimpleLink SensorTag(CC2650)
 BLE(Bluetooth Low Energy)対応
 低消費電力(ボタン電池1個で数ヶ月稼働)
 複数のセンサーを搭載
 赤外線および周囲温度センサー
 周辺光センサー
 湿度センサー
 大気圧センサー
 9軸モーショントラッキングデバイス
 3軸加速度計
 3軸ジャイロスコープ
 3軸磁力計
 磁気センサー
 $29.00(USD)
(送料とかを含めると4000円くらい) 50mm
40mm
シリコンケースを外した状態
Copyright © 2016 AGREX INC. All rights reserved. 18
今回使用したもの②:Raspberry Pi 3 Model B
 無線LAN標準搭載
(IEEE 802.11 b/g/n 2.4 GHz)
 Bluetooth標準搭載
(Bluetooth Low Energy)
 使用するのに必要な一式を揃えても1万円前後
(本体、SDカード、HDMIケーブル、アダプタ、ケース)
公式のケースがかわいい!
Copyright © 2016 AGREX INC. All rights reserved. 19
SensorTag × Raspberry Pi 3 Model B
Bluetooth
(無線)
Wi-Fi
(無線)
余計な配線、電子工作が不要!
 ハンダ付け・・・?
 ブレッドボード・・・ ??
 ジャンパーワイヤー・・・???
とってもお手軽!文系な人でもあんしん!
Copyright © 2016 AGREX INC. All rights reserved. 20
AWS 側の設定をしよう
Copyright © 2016 AGREX INC. All rights reserved. 21
AWS IoT の設定
1. Thing
利用するデバイス(Raspberry Pi など)を登録する
2. Rule
デバイスからデータが届いた際の振る舞いを設定する
3. Policy
デバイスに AWS IoT の各種操作を許可するためのポリシーを作成する
4. Certificate
デバイスに登録する証明書を作成する
Copyright © 2016 AGREX INC. All rights reserved. 22
AWS IoT の設定(Thingの作成)
Copyright © 2016 AGREX INC. All rights reserved. 23
AWS IoT の設定(Ruleの作成①)
Topicを設定
SELECT * FROM ‘lockState/sns’
Copyright © 2016 AGREX INC. All rights reserved. 24
AWS IoTの 設定(Ruleの作成②)
選択できる Action
 CloudWatch alarms
 CloudWatch metrics
 DynamoDB
 Amazon Elasticsearch Service
 Amazon Kinesis
 AWS IoT
 S3
 SNS
 SQS
 Lambda
今回はSNSを利用
Copyright © 2016 AGREX INC. All rights reserved. 25
AWS IoT の設定(Ruleの作成③)
Copyright © 2016 AGREX INC. All rights reserved. 26
AWS IoT の設定(Ruleの作成④)
E-Mailへの通知
Copyright © 2016 AGREX INC. All rights reserved. 27
AWS IoT の設定(Ruleの作成⑤)
Actionが追加された!
Copyright © 2016 AGREX INC. All rights reserved. 28
AWS IoT の設定(証明書、ポリシーの作成)
証明書とポリシーを
同時作成
Copyright © 2016 AGREX INC. All rights reserved. 29
AWS IoT の設定(証明書、ポリシーの作成)
ダウンロードした秘密鍵と証明書は
Raspberry Pi へ
Copyright © 2016 AGREX INC. All rights reserved. 30
AWS IoT の設定(できた!)
 Thing
 Rule
 Policy
 Certificate
Copyright © 2016 AGREX INC. All rights reserved. 31
Raspberry Pi からメッセージを送ってみる
AWS IoT デバイス SDK を利用
※https://aws.amazon.com/jp/iot/sdk/
 Embedded C
 JavaScript
 Arduino Yún
 Java
 Python
 iOS
 Android
今回はJavaScriptを利用
Copyright © 2016 AGREX INC. All rights reserved. 32
Raspberry Pi からメッセージを送ってみる
$ git clone https://github.com/aws/aws-iot-device-sdk-js.git
$ cd aws-iot-device-sdk-js.git
$ npm install
AWS IoT デバイス SDKをインストール
メッセージ送信用のサンプル(iot-test.js)
var awsIot = require('..');
var device = awsIot.device({
keyPath :'private.pem.key',
certPath:'certificate.pem.crt',
caPath :'rootCA.crt',
clientId:'KeyLockNotifier',
region:'ap-northeast-1'
});
device.publish('lockState/sns', 'CloudRoadshowに間に合うかな?');
AWS IoT設定時に
作成した
秘密鍵、証明書、Thing
AWS IoT設定時に
設定したtopic
Copyright © 2016 AGREX INC. All rights reserved. 33
Raspberry Pi からメッセージを送ってみる
$ sudo node iot-test.js
実行
Copyright © 2016 AGREX INC. All rights reserved. 34
Raspberry Pi からメッセージを送ってみる
$ sudo node iot-test.js
実行
メールが来た!
Copyright © 2016 AGREX INC. All rights reserved. 35
SensorTag のデータを Raspberry Pi で取得する
$ sudo hcitool lescan
LE Scan ...
24:71:89:XX:XX:86 (unknown)
24:71:89:XX:XX:86 CC2650 SensorTag
$ gatttool -b 24:71:89:XX:XX:86 -I
[24:71:89:XX:XX:86][LE]> connect
Attempting to connect to 24:71:89:XX:XX:86
Connection successful
[24:71:89:XX:XX:86][LE]> char-write-req 0x2f 01
Characteristic value was written successfully
[24:71:89:XX:XX:86][LE]> char-read-hnd 0x2c
Characteristic value/descriptor: 68 61 44 7c
試しにコマンドラインから接続、データ(気温)を取得する
なんだこれは・・・・
センサーのMACアドレス
Copyright © 2016 AGREX INC. All rights reserved. 36
SensorTag のデータを Raspberry Pi で取得する
$ sudo hcitool lescan
LE Scan ...
24:71:89:XX:XX:86 (unknown)
24:71:89:XX:XX:86 CC2650 SensorTag
$ gatttool -b 24:71:89:XX:XX:86 -I
[24:71:89:XX:XX:86][LE]> connect
Attempting to connect to 24:71:89:XX:XX:86
Connection successful
[24:71:89:XX:XX:86][LE]> char-write-req 0x2f 01
Characteristic value was written successfully
[24:71:89:XX:XX:86][LE]> char-read-hnd 0x2c
Characteristic value/descriptor: 68 61 44 7c
試しにコマンドラインから接続、データ(気温)を取得する
センサーから取得したデータを活用するには適切な加工が必要。
生データでは意味が分からないし時間もないので先人の力を頼ることに・・・。
※変換式についてはWikiに載っています
http://processors.wiki.ti.com/index.php/CC2650_SensorTag_User's_Guide
Copyright © 2016 AGREX INC. All rights reserved. 37
SensorTag のデータを Raspberry Pi で取得する
$ npm install async
$ npm install bluebird
$ npm install sensortag
SensorTag 用の node.js ライブラリをインストール
※https://github.com/sandeepmistry/node-sensortag
SensorTag.discoverByAddress(address, callback(sensorTag));
デバイスの検知
デバイスの接続
sensorTag.connectAndSetUp(callback(error));
センサーデータの読込・通知
sensorTag.enableGyroscope(callback(error));
sensorTag.readGyroscope(callback(error, x, y, z));
sensorTag.notifyGyroscope(callback(error));
hcitool lescanで取得した
MACアドレス
Copyright © 2016 AGREX INC. All rights reserved. 38
SensorTagで取得できる情報
 赤外線温度(℃)
 周囲温度(℃)
 周辺光(lux)
 湿度(%)
 大気圧(hPa)
 加速度(G)
 ジャイロスコープ(deg/s)
 地磁気 (μT)
 磁気(磁石が近づくとON)
Copyright © 2016 AGREX INC. All rights reserved. 39
施錠状態を検知するために、何の計測値を使おう・・・
 赤外線温度(℃)
 周囲温度(℃)
 周辺光(lux)
 湿度(%)
 大気圧(hPa)
 加速度(G)
 ジャイロスコープ(deg/s)
 地磁気 (μT)
 磁気(磁石が近づくとON)
→関係ない。
→関係ない。
→使えないことはないけど、夜使えない。
→関係ない。
→関係ない。
→鍵が動いたことは検知できそう。
→スマホとかでも使われてるアレ。傾きが取れる?
→よく分からない。
→磁石と組み合わせれば・・・?
とりあえずジャイロスコープの値を使ってみよう。
Copyright © 2016 AGREX INC. All rights reserved. 40
施錠状態を検知するために、何の計測値を使おう・・・
ジャイロスコープ(英語: gyroscope)とは、
物体の角度(姿勢)や角速度あるいは角加速度を検出する計測器ないし装置。
※Wikipediaより。
ジャイロスコープの値の単位
deg/s(角速度:単位時間あたりに変化した角度)
→ある期間内の角速度の合計から角度の変化を読み取れる・・・?
【速さ×時間=距離】的な・・・(ガバガバ発想)
Copyright © 2016 AGREX INC. All rights reserved. 41
SensorTag のデータを Raspberry Pi で取得する
1秒ごとにジャイロスコープの値を取得する(垂直→水平)
Sat Oct 08 2016 20:29:08 GMT+0900 (JST),x= 1.32813, y=-3.16406, z=-1.67969
Sat Oct 08 2016 20:29:09 GMT+0900 (JST),x= 0.76563, y=-1.60938, z=-1.39844
Sat Oct 08 2016 20:29:10 GMT+0900 (JST),x= 1.72656, y=-1.98438, z=-0.72656
Sat Oct 08 2016 20:29:11 GMT+0900 (JST),x=-0.21875, y=-2.79688, z=-1.24219
Sat Oct 08 2016 20:29:12 GMT+0900 (JST),x= 1.28906, y=-0.95313, z=-0.85938
Sat Oct 08 2016 20:29:13 GMT+0900 (JST),x= 1.78906, y=-1.58594, z=-0.42969
Sat Oct 08 2016 20:29:14 GMT+0900 (JST),x= 0.29688, y=-1.85938, z=-1.32813
Sat Oct 08 2016 20:29:15 GMT+0900 (JST),x= 2.24219, y=-1.70313, z=-0.45313
Sat Oct 08 2016 20:29:16 GMT+0900 (JST),x= 0.92969, y=-1.35938, z=-2.58594
Sat Oct 08 2016 20:29:17 GMT+0900 (JST),x= 0.88281, y=-1.40625, z=-3.17969
垂
直
水
平
Copyright © 2016 AGREX INC. All rights reserved. 42
SensorTag のデータを Raspberry Pi で取得する
1秒ごとにジャイロスコープの値を取得する(垂直→水平)
Sat Oct 08 2016 20:29:08 GMT+0900 (JST),x= 1.32813, y=-3.16406, z=-1.67969
Sat Oct 08 2016 20:29:09 GMT+0900 (JST),x= 0.76563, y=-1.60938, z=-1.39844
Sat Oct 08 2016 20:29:10 GMT+0900 (JST),x= 1.72656, y=-1.98438, z=-0.72656
Sat Oct 08 2016 20:29:11 GMT+0900 (JST),x=-0.21875, y=-2.79688, z=-1.24219
Sat Oct 08 2016 20:29:12 GMT+0900 (JST),x= 1.28906, y=-0.95313, z=-0.85938
Sat Oct 08 2016 20:29:13 GMT+0900 (JST),x= 1.78906, y=-1.58594, z=-0.42969
Sat Oct 08 2016 20:29:14 GMT+0900 (JST),x= 0.29688, y=-1.85938, z=-1.32813
Sat Oct 08 2016 20:29:15 GMT+0900 (JST),x= 2.24219, y=-1.70313, z=-0.45313
Sat Oct 08 2016 20:29:16 GMT+0900 (JST),x= 0.92969, y=-1.35938, z=-2.58594
Sat Oct 08 2016 20:29:17 GMT+0900 (JST),x= 0.88281, y=-1.40625, z=-3.17969
何のことやら全く分からない・・・。
有意な差があるようにも見えない・・・。
おまけに、静止状態でも値が変動している・・・。
垂
直
水
平
Copyright © 2016 AGREX INC. All rights reserved. 43
SensorTag のデータを Raspberry Pi で取得する
1秒ごとに地磁気の値を取得する(垂直→水平)
Sat Oct 08 2016 20:26:07 GMT+0900 (JST),x=-16.33936, y=77.34961, z=-64.0083
Sat Oct 08 2016 20:26:08 GMT+0900 (JST),x=-16.78906, y=79.14844, z=-63.7085
Sat Oct 08 2016 20:26:09 GMT+0900 (JST),x=-18.13818, y=76.15039, z=-60.86035
Sat Oct 08 2016 20:26:10 GMT+0900 (JST),x=-16.48926, y=76.4502 , z=-61.45996
Sat Oct 08 2016 20:26:11 GMT+0900 (JST),x=-17.83838, y=78.69873, z=-62.65918
Sat Oct 08 2016 20:26:12 GMT+0900 (JST),x=-14.09082, y=49.76758, z=-38.2251
Sat Oct 08 2016 20:26:13 GMT+0900 (JST),x=-14.54053, y=47.66895, z=-39.42432
Sat Oct 08 2016 20:26:14 GMT+0900 (JST),x=-16.18945, y=48.26855, z=-37.92529
Sat Oct 08 2016 20:26:15 GMT+0900 (JST),x=-14.09082, y=49.31787, z=-39.57422
Sat Oct 08 2016 20:26:16 GMT+0900 (JST),x=-15.43994, y=46.46973, z=-37.47559
垂
直
水
平
Copyright © 2016 AGREX INC. All rights reserved. 44
SensorTag のデータを Raspberry Pi で取得する
1秒ごとに地磁気の値を取得する(垂直→水平)
Sat Oct 08 2016 20:26:07 GMT+0900 (JST),x=-16.33936, y=77.34961, z=-64.0083
Sat Oct 08 2016 20:26:08 GMT+0900 (JST),x=-16.78906, y=79.14844, z=-63.7085
Sat Oct 08 2016 20:26:09 GMT+0900 (JST),x=-18.13818, y=76.15039, z=-60.86035
Sat Oct 08 2016 20:26:10 GMT+0900 (JST),x=-16.48926, y=76.4502 , z=-61.45996
Sat Oct 08 2016 20:26:11 GMT+0900 (JST),x=-17.83838, y=78.69873, z=-62.65918
Sat Oct 08 2016 20:26:12 GMT+0900 (JST),x=-14.09082, y=49.76758, z=-38.2251
Sat Oct 08 2016 20:26:13 GMT+0900 (JST),x=-14.54053, y=47.66895, z=-39.42432
Sat Oct 08 2016 20:26:14 GMT+0900 (JST),x=-16.18945, y=48.26855, z=-37.92529
Sat Oct 08 2016 20:26:15 GMT+0900 (JST),x=-14.09082, y=49.31787, z=-39.57422
Sat Oct 08 2016 20:26:16 GMT+0900 (JST),x=-15.43994, y=46.46973, z=-37.47559
y と z の値に何か有意な差を感じる・・・が、センサータグの
設置場所によって値が変化するので使うのは難しそう・・・。
(そもそも地磁気って何だよ・・・。)
垂
直
水
平
Copyright © 2016 AGREX INC. All rights reserved. 45
SensorTag のデータを Raspberry Pi で取得する
1秒ごとに加速度の値を取得する(垂直→水平)
Sat Oct 08 2016 20:27:31 GMT+0900 (JST),x=-0.91895, y= 0.04517, z=0.00269
Sat Oct 08 2016 20:27:32 GMT+0900 (JST),x=-0.91919, y= 0.10327, z=0.0625
Sat Oct 08 2016 20:27:33 GMT+0900 (JST),x=-0.87817, y= 0.01904, z=0.00244
Sat Oct 08 2016 20:27:34 GMT+0900 (JST),x=-0.87646, y= 0.0354 , z=0.03613
Sat Oct 08 2016 20:27:35 GMT+0900 (JST),x=-0.91772, y= 0.05078, z=0.08105
Sat Oct 08 2016 20:27:36 GMT+0900 (JST),x= 0.38184, y=-0.13159, z=2.88232
Sat Oct 08 2016 20:27:37 GMT+0900 (JST),x= 0.24121, y= 0.11401, z=1.05908
Sat Oct 08 2016 20:27:38 GMT+0900 (JST),x= 0.21802, y= 0.1167 , z=1.04248
Sat Oct 08 2016 20:27:39 GMT+0900 (JST),x= 0.18213, y= 0.12842, z=0.96167
Sat Oct 08 2016 20:27:40 GMT+0900 (JST),x= 0.21704, y= 0.04224, z=1.01587
垂
直
水
平
Copyright © 2016 AGREX INC. All rights reserved. 46
SensorTag のデータを Raspberry Pi で取得する
1秒ごとに加速度の値を取得する(垂直→水平)
Sat Oct 08 2016 20:27:31 GMT+0900 (JST),x=-0.91895, y= 0.04517, z=0.00269
Sat Oct 08 2016 20:27:32 GMT+0900 (JST),x=-0.91919, y= 0.10327, z=0.0625
Sat Oct 08 2016 20:27:33 GMT+0900 (JST),x=-0.87817, y= 0.01904, z=0.00244
Sat Oct 08 2016 20:27:34 GMT+0900 (JST),x=-0.87646, y= 0.0354 , z=0.03613
Sat Oct 08 2016 20:27:35 GMT+0900 (JST),x=-0.91772, y= 0.05078, z=0.08105
Sat Oct 08 2016 20:27:36 GMT+0900 (JST),x= 0.38184, y=-0.13159, z=2.88232
Sat Oct 08 2016 20:27:37 GMT+0900 (JST),x= 0.24121, y= 0.11401, z=1.05908
Sat Oct 08 2016 20:27:38 GMT+0900 (JST),x= 0.21802, y= 0.1167 , z=1.04248
Sat Oct 08 2016 20:27:39 GMT+0900 (JST),x= 0.18213, y= 0.12842, z=0.96167
Sat Oct 08 2016 20:27:40 GMT+0900 (JST),x= 0.21704, y= 0.04224, z=1.01587
x と z の値に何か有意な差を感じる・・・
しかし、よく分からない・・・。
垂
直
水
平
Copyright © 2016 AGREX INC. All rights reserved. 47
SensorTag のデータを Raspberry Pi で取得する
センサーをいじりながら観測を続けること数日間・・・
とりあえず、加速度のデータが
ジャイロ・地磁気に比べると見込みがありそう・・・。
Copyright © 2016 AGREX INC. All rights reserved. 48
SensorTag のデータを Raspberry Pi で取得する
加速度を近似値で整数化してみる
Copyright © 2016 AGREX INC. All rights reserved. 49
SensorTag のデータを Raspberry Pi で取得する
加速度を近似値で整数化してみる
Sat Oct 08 2016 21:09:26 GMT+0900 (JST),x=-1, y=0, z=0
Sat Oct 08 2016 21:09:27 GMT+0900 (JST),x=-1, y=0, z=0
Sat Oct 08 2016 21:09:28 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:29 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:30 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:31 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:32 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:33 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:34 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:35 GMT+0900 (JST),x=-1, y=0, z=0
Sat Oct 08 2016 21:09:36 GMT+0900 (JST),x=-1, y=0, z=0
垂
直
水
平
垂
直
Copyright © 2016 AGREX INC. All rights reserved. 50
SensorTag のデータを Raspberry Pi で取得する
加速度を近似値で整数化してみる
Sat Oct 08 2016 21:09:26 GMT+0900 (JST),x=-1, y=0, z=0
Sat Oct 08 2016 21:09:27 GMT+0900 (JST),x=-1, y=0, z=0
Sat Oct 08 2016 21:09:28 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:29 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:30 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:31 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:32 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:33 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:34 GMT+0900 (JST),x= 0, y=0, z=1
Sat Oct 08 2016 21:09:35 GMT+0900 (JST),x=-1, y=0, z=0
Sat Oct 08 2016 21:09:36 GMT+0900 (JST),x=-1, y=0, z=0
垂
直
水
平
垂
直
垂直の時は x = -1、水平の時は z = 1 になるらしい!
(理屈は不明)
Copyright © 2016 AGREX INC. All rights reserved. 51
実装
SensorTag から1秒毎に送られてくる加速度を監視し、
状態が変化したら以下のメッセージを AWS IoT に publish する。
加速度(x)が、-1になった場合 →「鍵が開いたよ!」
加速度(z)が、1になった場合 →「鍵が締まったよ!」
両面テープでSensorTagを貼付け(雑)
※シリコンケースは外してます。
Copyright © 2016 AGREX INC. All rights reserved. 52
実装
UNLOCK
LOCK
施錠してみる。
Copyright © 2016 AGREX INC. All rights reserved. 53
実装
UNLOCK
LOCK
メールが来た!
Copyright © 2016 AGREX INC. All rights reserved. 54
実装
UNLOCK
LOCK
これで安心して外出できるように・・・
Copyright © 2016 AGREX INC. All rights reserved. 55
AWS IoT を使ってみての感想
 AWS周りの設定は簡単。
 デバイス→AWS IoT のデータ送信も簡単。
 もうちょっと AWS のサービスを組み合わせて使いたい。
 センサーから取得したデータをどう扱うかがキモ。
※今回のネタ作りにかかった時間の半分以上はココ・・・。
Copyright © 2016 AGREX INC. All rights reserved. 56
AWS IoT を使ってみての感想
 アイディア次第で色々できそう
 センサーのデータを検知できなくなったら通知
→自転車の盗難通知(カメラモジュールも使うといいかも。)
 センサーのデータを検知できるようになったら通知
→こども(鍵っ子)の帰宅通知
 光センサーの利用
→遠方の実家の両親の見守り(冷蔵庫の開閉)
Copyright © 2016 AGREX INC. All rights reserved. 57
AWS IoT を使ってみての感想
意外とかんたんなので、気軽に IoT してみましょう!
THANK YOU

More Related Content

What's hot

What's hot (20)

イマドキ!ユースケース別に見るAWS IoT への接続パターン
イマドキ!ユースケース別に見るAWS IoT への接続パターンイマドキ!ユースケース別に見るAWS IoT への接続パターン
イマドキ!ユースケース別に見るAWS IoT への接続パターン
 
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
AWS IoT Coreを オンプレミス環境と使う際の アーキテクチャ例 (AWS IoT Deep Dive #5)
 
03_AWS IoTのDRを考える
03_AWS IoTのDRを考える03_AWS IoTのDRを考える
03_AWS IoTのDRを考える
 
AWS の IoT 向けサービス
AWS の IoT 向けサービスAWS の IoT 向けサービス
AWS の IoT 向けサービス
 
20120206 aws meister-reloaded-direct-connect-public
20120206 aws meister-reloaded-direct-connect-public20120206 aws meister-reloaded-direct-connect-public
20120206 aws meister-reloaded-direct-connect-public
 
Aws step functionsのい・ろ・は
Aws step functionsのい・ろ・はAws step functionsのい・ろ・は
Aws step functionsのい・ろ・は
 
JAWS re:Mote 2015 Nagoya
JAWS re:Mote 2015 NagoyaJAWS re:Mote 2015 Nagoya
JAWS re:Mote 2015 Nagoya
 
デバイスの運用で使える AWS IoTサービスの紹介
デバイスの運用で使える AWS IoTサービスの紹介デバイスの運用で使える AWS IoTサービスの紹介
デバイスの運用で使える AWS IoTサービスの紹介
 
20200414 Advanced Features in Amazon Elasticsearch Service
20200414 Advanced Features in Amazon Elasticsearch Service20200414 Advanced Features in Amazon Elasticsearch Service
20200414 Advanced Features in Amazon Elasticsearch Service
 
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
 
Amazon Web Services 最新事例集
Amazon Web Services 最新事例集Amazon Web Services 最新事例集
Amazon Web Services 最新事例集
 
AWS IoT Device Defender による IoT デバイスのセキュリティ管理
AWS IoT Device Defender による IoT デバイスのセキュリティ管理AWS IoT Device Defender による IoT デバイスのセキュリティ管理
AWS IoT Device Defender による IoT デバイスのセキュリティ管理
 
Scale Your Business without Servers
Scale Your Business without ServersScale Your Business without Servers
Scale Your Business without Servers
 
IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方
IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方
IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方
 
【IVS CTO Night & Day】IoT Solution
【IVS CTO Night & Day】IoT Solution【IVS CTO Night & Day】IoT Solution
【IVS CTO Night & Day】IoT Solution
 
Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -
Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -
Big DataとContainerとStream - AWSでのクラスタ構成とストリーム処理 -
 
[AWS Summit 2012] 基調講演 Day1: Go Global !
[AWS Summit 2012] 基調講演 Day1: Go Global ! [AWS Summit 2012] 基調講演 Day1: Go Global !
[AWS Summit 2012] 基調講演 Day1: Go Global !
 
製造業向けSmart Factoryデモと 関連AWSサービスのご紹介
製造業向けSmart Factoryデモと 関連AWSサービスのご紹介製造業向けSmart Factoryデモと 関連AWSサービスのご紹介
製造業向けSmart Factoryデモと 関連AWSサービスのご紹介
 
Morning Session - AWS Serverless Ways
Morning Session - AWS Serverless WaysMorning Session - AWS Serverless Ways
Morning Session - AWS Serverless Ways
 
Security Night #1 AWSのセキュリティアプローチとTLS
Security Night #1 AWSのセキュリティアプローチとTLSSecurity Night #1 AWSのセキュリティアプローチとTLS
Security Night #1 AWSのセキュリティアプローチとTLS
 

Viewers also liked

テキサスインスツルメンツ Cc2650、cc2650 rcを使ってみた
テキサスインスツルメンツ Cc2650、cc2650 rcを使ってみたテキサスインスツルメンツ Cc2650、cc2650 rcを使ってみた
テキサスインスツルメンツ Cc2650、cc2650 rcを使ってみた
Yoshiaki Ito
 
Robomec2014 rtm講習会第1部(その1)
Robomec2014 rtm講習会第1部(その1)Robomec2014 rtm講習会第1部(その1)
Robomec2014 rtm講習会第1部(その1)
openrtm
 
IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...
IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...
IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...
Arun Joseph
 

Viewers also liked (20)

AWS Black Belt Tech シリーズ 2015 - AWS IoT
AWS Black Belt Tech シリーズ 2015 - AWS IoTAWS Black Belt Tech シリーズ 2015 - AWS IoT
AWS Black Belt Tech シリーズ 2015 - AWS IoT
 
AWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターンAWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターン
 
テキサスインスツルメンツ Cc2650、cc2650 rcを使ってみた
テキサスインスツルメンツ Cc2650、cc2650 rcを使ってみたテキサスインスツルメンツ Cc2650、cc2650 rcを使ってみた
テキサスインスツルメンツ Cc2650、cc2650 rcを使ってみた
 
AWS IoT アップデート 2016.02.16
AWS IoT アップデート 2016.02.16AWS IoT アップデート 2016.02.16
AWS IoT アップデート 2016.02.16
 
AWS IoTで家庭内IoTをやってみた【JAWS DAYS 2016】
AWS IoTで家庭内IoTをやってみた【JAWS DAYS 2016】AWS IoTで家庭内IoTをやってみた【JAWS DAYS 2016】
AWS IoTで家庭内IoTをやってみた【JAWS DAYS 2016】
 
BluemixとIBM DevOps Servicesで始めるアプリケーション開発
BluemixとIBM DevOps Servicesで始めるアプリケーション開発BluemixとIBM DevOps Servicesで始めるアプリケーション開発
BluemixとIBM DevOps Servicesで始めるアプリケーション開発
 
AWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoTAWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoT
 
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターンAWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
 
µIP (micro IP)
µIP (micro IP)µIP (micro IP)
µIP (micro IP)
 
CTIA startup stage
CTIA startup stageCTIA startup stage
CTIA startup stage
 
Cc 2650 la tradicion de la oración en la Iglesia
Cc 2650  la tradicion de la oración en la IglesiaCc 2650  la tradicion de la oración en la Iglesia
Cc 2650 la tradicion de la oración en la Iglesia
 
Ok httpの紹介
Ok httpの紹介Ok httpの紹介
Ok httpの紹介
 
Smart Irrigation System: Hardware Architecture for WaRM project
Smart Irrigation System: Hardware Architecture for WaRM projectSmart Irrigation System: Hardware Architecture for WaRM project
Smart Irrigation System: Hardware Architecture for WaRM project
 
Developing TI RTOS Applications and BLE Profiles
Developing TI RTOS Applications and BLE ProfilesDeveloping TI RTOS Applications and BLE Profiles
Developing TI RTOS Applications and BLE Profiles
 
IoTで5days学生インターン
IoTで5days学生インターンIoTで5days学生インターン
IoTで5days学生インターン
 
2016 1011 io tlt勉強会_発表用
2016 1011 io tlt勉強会_発表用2016 1011 io tlt勉強会_発表用
2016 1011 io tlt勉強会_発表用
 
AWSの提供するioTソリューションと実例
AWSの提供するioTソリューションと実例AWSの提供するioTソリューションと実例
AWSの提供するioTソリューションと実例
 
Robomec2014 rtm講習会第1部(その1)
Robomec2014 rtm講習会第1部(その1)Robomec2014 rtm講習会第1部(その1)
Robomec2014 rtm講習会第1部(その1)
 
IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...
IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...
IoT Implementation of Sensor Data Acquisition in Surveillance Applications - ...
 
IoT Protocols by Nagasai Panchakarla | CuTech Talks
IoT Protocols by Nagasai Panchakarla | CuTech TalksIoT Protocols by Nagasai Panchakarla | CuTech Talks
IoT Protocols by Nagasai Panchakarla | CuTech Talks
 

Similar to AWS歴2週間で IoT に挑戦してみた。

Similar to AWS歴2週間で IoT に挑戦してみた。 (20)

SORACOM Conference Discovery 2017 | A4. SORACOM Air for Sigfox
SORACOM Conference Discovery 2017 | A4. SORACOM Air for SigfoxSORACOM Conference Discovery 2017 | A4. SORACOM Air for Sigfox
SORACOM Conference Discovery 2017 | A4. SORACOM Air for Sigfox
 
エッジコンピューティングで実現できる活用シナリオ3選
エッジコンピューティングで実現できる活用シナリオ3選エッジコンピューティングで実現できる活用シナリオ3選
エッジコンピューティングで実現できる活用シナリオ3選
 
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
JAWS DAYS 2018 | IoT時代におけるデバイスのファームウェアとクラウドのいい関係
 
AWS greengrassとは何か (in Japanese)
AWS greengrassとは何か (in Japanese)AWS greengrassとは何か (in Japanese)
AWS greengrassとは何か (in Japanese)
 
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
 
20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...
20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...
20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...
 
LagopusとAzureとIPsecとDPDK
LagopusとAzureとIPsecとDPDKLagopusとAzureとIPsecとDPDK
LagopusとAzureとIPsecとDPDK
 
JAWS-UG 佐賀 re:Boot | AWS Greengrassと相性のいい♥ SORACOMサービス
JAWS-UG 佐賀 re:Boot | AWS Greengrassと相性のいい♥ SORACOMサービスJAWS-UG 佐賀 re:Boot | AWS Greengrassと相性のいい♥ SORACOMサービス
JAWS-UG 佐賀 re:Boot | AWS Greengrassと相性のいい♥ SORACOMサービス
 
Mixed Realityを活用したIot Edgeの管理と情報の可視化による「Digital Twins」の実現
Mixed Realityを活用したIot Edgeの管理と情報の可視化による「Digital Twins」の実現Mixed Realityを活用したIot Edgeの管理と情報の可視化による「Digital Twins」の実現
Mixed Realityを活用したIot Edgeの管理と情報の可視化による「Digital Twins」の実現
 
04 citynet awsセミナー_クラウドでビックデータのスモールスタート
04 citynet awsセミナー_クラウドでビックデータのスモールスタート04 citynet awsセミナー_クラウドでビックデータのスモールスタート
04 citynet awsセミナー_クラウドでビックデータのスモールスタート
 
クラウドでビックデータのスモールスタート
クラウドでビックデータのスモールスタートクラウドでビックデータのスモールスタート
クラウドでビックデータのスモールスタート
 
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
Node.jsとAWS入門(Elastic Beanstalk & AWS SDK for Node.js)
 
地方のユーザとクラウド
地方のユーザとクラウド地方のユーザとクラウド
地方のユーザとクラウド
 
JAWS FESTA 2018 OSAKA | 世界一早い(?)「SORACOM LTE-M Button powered by AWS」の開発の解説
JAWS FESTA 2018 OSAKA | 世界一早い(?)「SORACOM LTE-M Button powered by AWS」の開発の解説JAWS FESTA 2018 OSAKA | 世界一早い(?)「SORACOM LTE-M Button powered by AWS」の開発の解説
JAWS FESTA 2018 OSAKA | 世界一早い(?)「SORACOM LTE-M Button powered by AWS」の開発の解説
 
ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後
 
SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望  〜パネルディスカッション〜
SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望  〜パネルディスカッション〜SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望  〜パネルディスカッション〜
SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望  〜パネルディスカッション〜
 
AWS IoT Events はステートマシンですから。
AWS IoT Events はステートマシンですから。AWS IoT Events はステートマシンですから。
AWS IoT Events はステートマシンですから。
 
インメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギインメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギ
 
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
 
GoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみよう
GoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみようGoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみよう
GoAzure 2015:IoTなどの大量データをStream Analyticsでリアルタイムデータ分析してみよう
 

Recently uploaded

Recently uploaded (12)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

AWS歴2週間で IoT に挑戦してみた。

  • 1. Copyright © 2016 AGREX INC. All rights reserved. JAWS-UG 札幌 in AWS Cloud Roadshow 2016 2016.10.12 札幌事業所 松田 生吾 AWS歴2週間で IoT に挑戦してみた。
  • 2. Copyright © 2016 AGREX INC. All rights reserved. 2 自己紹介 松田 生吾(まつだ しょうご)  所属  (株)アグレックス 札幌事業所  主な仕事内容  某市の人事給与システム開発、保守  AWS  気になるAWSサービス  AWS IoT(なんかすごそう。)  その他  JAWS-UGのイベント初参加& 初登壇です。 New!! 趣味はマラソン ※ガチなのはちょっとお休み中・・・
  • 3. Copyright © 2016 AGREX INC. All rights reserved. 3 AWS との関わり 2016.09 2016.10 今ここ! (部長) AWS やらない? (JAWS-UGの人) 来月 Cloud Rowdshow あるんだけどさぁ・・・。 AWS歴 約1ヶ月・・・
  • 4. Copyright © 2016 AGREX INC. All rights reserved. 4 さて、何の話をしよう 何か語れるほど、まだ業務で AWS に触れていない。 ↓ 「業務で困ってたアレをこうしてみた!」みたいな 人の役に立つような話ができない・・・。 ↓ とりあえず、自分に関する問題をAWSを使って 解決してネタにしてみよう・・・。
  • 5. Copyright © 2016 AGREX INC. All rights reserved. 5 AWS を利用して解決したいこと -外出時- Lock! 施錠する。
  • 6. Copyright © 2016 AGREX INC. All rights reserved. 6 AWS を利用して解決したいこと -外出時- Lock! 出かける。
  • 7. Copyright © 2016 AGREX INC. All rights reserved. 7 AWS を利用して解決したいこと 鍵 は 締 め た だ ろ う か … -外出時- Lock! Locked…? 不安になる。
  • 8. Copyright © 2016 AGREX INC. All rights reserved. 8 AWS を利用して解決したいこと -外出時- (Before) Lock! 確認しに戻る。 (無限ループ)
  • 9. Copyright © 2016 AGREX INC. All rights reserved. 9 AWS を利用して解決したいこと -外出時- (After) Lock! 施錠する。
  • 10. Copyright © 2016 AGREX INC. All rights reserved. 10 AWS を利用して解決したいこと 鍵 は 締 ま り ま し た よ 。 -外出時- (After) Lock! 施錠したことを教えてくれる。
  • 11. Copyright © 2016 AGREX INC. All rights reserved. 11 AWS を利用して解決したいこと 鍵 は 締 ま り ま し た よ 。 -外出時- (After) Lock! Locked!! 安心して 出かけられる!
  • 12. Copyright © 2016 AGREX INC. All rights reserved. 12 AWS を利用した解決策(ぼんやり) Locked!! Lock! 家の施錠状態をAWSがうまいこと処理してスマホに通知してくれる。
  • 13. Copyright © 2016 AGREX INC. All rights reserved. 13 AWS を利用した解決策 Locked!! Lock! 家の施錠状態をセンサーが検知し、AWS IoTで処理してスマホに通知する。
  • 14. Copyright © 2016 AGREX INC. All rights reserved. 14 AWS IoT とは・・・ Q: AWS IoT とは何ですか? AWS IoT では、接続されたデバイスが簡単かつ安全にクラウドアプリケーションやそ の他のデバイスとやり取りできるマネージド型クラウドプラットフォームです。AWS IoT では数十億のデバイスと数兆のメッセージをサポートし、それらのメッセージを AWS エ ンドポイントおよび他のデバイスに確実かつ安全に処理しルーティングします。AWS IoT によってアプリケーションはそれらが接続されていない場合でも、全てのデバイスを 常に追跡し通信することができます。 AWS IoT を使用すると、AWS Lambda、Amazon Kinesis、Amazon S3、 Amazon Machine Learning、Amazon DynamoDB、Amazon CloudWatch、AWS CloudTrail、および Amazon Elasticsearch Service (組み込みの Kibana と統合されている) といった AWS の各種サービス を簡単に使用でき、インフラストラクチャを管理をせずに、接続されたデバイスによって 生成されたデータを収集、処理、分析、実行する IoT アプリケーションを構築できま す。 https://aws.amazon.com/jp/iot/faqs/
  • 15. Copyright © 2016 AGREX INC. All rights reserved. 15 AWS IoT とは・・・ 要するに、AWS IoT を利用することで、 お手軽に IoT を実現できるらしい!! https://aws.amazon.com/jp/iot/how-it-works/
  • 16. Copyright © 2016 AGREX INC. All rights reserved. 16 IoTを実現するために用意したもの センサーと、センサーの情報をAWSに飛ばすものが必要。
  • 17. Copyright © 2016 AGREX INC. All rights reserved. 17 今回使用したもの①:SimpleLink SensorTag(CC2650)  BLE(Bluetooth Low Energy)対応  低消費電力(ボタン電池1個で数ヶ月稼働)  複数のセンサーを搭載  赤外線および周囲温度センサー  周辺光センサー  湿度センサー  大気圧センサー  9軸モーショントラッキングデバイス  3軸加速度計  3軸ジャイロスコープ  3軸磁力計  磁気センサー  $29.00(USD) (送料とかを含めると4000円くらい) 50mm 40mm シリコンケースを外した状態
  • 18. Copyright © 2016 AGREX INC. All rights reserved. 18 今回使用したもの②:Raspberry Pi 3 Model B  無線LAN標準搭載 (IEEE 802.11 b/g/n 2.4 GHz)  Bluetooth標準搭載 (Bluetooth Low Energy)  使用するのに必要な一式を揃えても1万円前後 (本体、SDカード、HDMIケーブル、アダプタ、ケース) 公式のケースがかわいい!
  • 19. Copyright © 2016 AGREX INC. All rights reserved. 19 SensorTag × Raspberry Pi 3 Model B Bluetooth (無線) Wi-Fi (無線) 余計な配線、電子工作が不要!  ハンダ付け・・・?  ブレッドボード・・・ ??  ジャンパーワイヤー・・・??? とってもお手軽!文系な人でもあんしん!
  • 20. Copyright © 2016 AGREX INC. All rights reserved. 20 AWS 側の設定をしよう
  • 21. Copyright © 2016 AGREX INC. All rights reserved. 21 AWS IoT の設定 1. Thing 利用するデバイス(Raspberry Pi など)を登録する 2. Rule デバイスからデータが届いた際の振る舞いを設定する 3. Policy デバイスに AWS IoT の各種操作を許可するためのポリシーを作成する 4. Certificate デバイスに登録する証明書を作成する
  • 22. Copyright © 2016 AGREX INC. All rights reserved. 22 AWS IoT の設定(Thingの作成)
  • 23. Copyright © 2016 AGREX INC. All rights reserved. 23 AWS IoT の設定(Ruleの作成①) Topicを設定 SELECT * FROM ‘lockState/sns’
  • 24. Copyright © 2016 AGREX INC. All rights reserved. 24 AWS IoTの 設定(Ruleの作成②) 選択できる Action  CloudWatch alarms  CloudWatch metrics  DynamoDB  Amazon Elasticsearch Service  Amazon Kinesis  AWS IoT  S3  SNS  SQS  Lambda 今回はSNSを利用
  • 25. Copyright © 2016 AGREX INC. All rights reserved. 25 AWS IoT の設定(Ruleの作成③)
  • 26. Copyright © 2016 AGREX INC. All rights reserved. 26 AWS IoT の設定(Ruleの作成④) E-Mailへの通知
  • 27. Copyright © 2016 AGREX INC. All rights reserved. 27 AWS IoT の設定(Ruleの作成⑤) Actionが追加された!
  • 28. Copyright © 2016 AGREX INC. All rights reserved. 28 AWS IoT の設定(証明書、ポリシーの作成) 証明書とポリシーを 同時作成
  • 29. Copyright © 2016 AGREX INC. All rights reserved. 29 AWS IoT の設定(証明書、ポリシーの作成) ダウンロードした秘密鍵と証明書は Raspberry Pi へ
  • 30. Copyright © 2016 AGREX INC. All rights reserved. 30 AWS IoT の設定(できた!)  Thing  Rule  Policy  Certificate
  • 31. Copyright © 2016 AGREX INC. All rights reserved. 31 Raspberry Pi からメッセージを送ってみる AWS IoT デバイス SDK を利用 ※https://aws.amazon.com/jp/iot/sdk/  Embedded C  JavaScript  Arduino Yún  Java  Python  iOS  Android 今回はJavaScriptを利用
  • 32. Copyright © 2016 AGREX INC. All rights reserved. 32 Raspberry Pi からメッセージを送ってみる $ git clone https://github.com/aws/aws-iot-device-sdk-js.git $ cd aws-iot-device-sdk-js.git $ npm install AWS IoT デバイス SDKをインストール メッセージ送信用のサンプル(iot-test.js) var awsIot = require('..'); var device = awsIot.device({ keyPath :'private.pem.key', certPath:'certificate.pem.crt', caPath :'rootCA.crt', clientId:'KeyLockNotifier', region:'ap-northeast-1' }); device.publish('lockState/sns', 'CloudRoadshowに間に合うかな?'); AWS IoT設定時に 作成した 秘密鍵、証明書、Thing AWS IoT設定時に 設定したtopic
  • 33. Copyright © 2016 AGREX INC. All rights reserved. 33 Raspberry Pi からメッセージを送ってみる $ sudo node iot-test.js 実行
  • 34. Copyright © 2016 AGREX INC. All rights reserved. 34 Raspberry Pi からメッセージを送ってみる $ sudo node iot-test.js 実行 メールが来た!
  • 35. Copyright © 2016 AGREX INC. All rights reserved. 35 SensorTag のデータを Raspberry Pi で取得する $ sudo hcitool lescan LE Scan ... 24:71:89:XX:XX:86 (unknown) 24:71:89:XX:XX:86 CC2650 SensorTag $ gatttool -b 24:71:89:XX:XX:86 -I [24:71:89:XX:XX:86][LE]> connect Attempting to connect to 24:71:89:XX:XX:86 Connection successful [24:71:89:XX:XX:86][LE]> char-write-req 0x2f 01 Characteristic value was written successfully [24:71:89:XX:XX:86][LE]> char-read-hnd 0x2c Characteristic value/descriptor: 68 61 44 7c 試しにコマンドラインから接続、データ(気温)を取得する なんだこれは・・・・ センサーのMACアドレス
  • 36. Copyright © 2016 AGREX INC. All rights reserved. 36 SensorTag のデータを Raspberry Pi で取得する $ sudo hcitool lescan LE Scan ... 24:71:89:XX:XX:86 (unknown) 24:71:89:XX:XX:86 CC2650 SensorTag $ gatttool -b 24:71:89:XX:XX:86 -I [24:71:89:XX:XX:86][LE]> connect Attempting to connect to 24:71:89:XX:XX:86 Connection successful [24:71:89:XX:XX:86][LE]> char-write-req 0x2f 01 Characteristic value was written successfully [24:71:89:XX:XX:86][LE]> char-read-hnd 0x2c Characteristic value/descriptor: 68 61 44 7c 試しにコマンドラインから接続、データ(気温)を取得する センサーから取得したデータを活用するには適切な加工が必要。 生データでは意味が分からないし時間もないので先人の力を頼ることに・・・。 ※変換式についてはWikiに載っています http://processors.wiki.ti.com/index.php/CC2650_SensorTag_User's_Guide
  • 37. Copyright © 2016 AGREX INC. All rights reserved. 37 SensorTag のデータを Raspberry Pi で取得する $ npm install async $ npm install bluebird $ npm install sensortag SensorTag 用の node.js ライブラリをインストール ※https://github.com/sandeepmistry/node-sensortag SensorTag.discoverByAddress(address, callback(sensorTag)); デバイスの検知 デバイスの接続 sensorTag.connectAndSetUp(callback(error)); センサーデータの読込・通知 sensorTag.enableGyroscope(callback(error)); sensorTag.readGyroscope(callback(error, x, y, z)); sensorTag.notifyGyroscope(callback(error)); hcitool lescanで取得した MACアドレス
  • 38. Copyright © 2016 AGREX INC. All rights reserved. 38 SensorTagで取得できる情報  赤外線温度(℃)  周囲温度(℃)  周辺光(lux)  湿度(%)  大気圧(hPa)  加速度(G)  ジャイロスコープ(deg/s)  地磁気 (μT)  磁気(磁石が近づくとON)
  • 39. Copyright © 2016 AGREX INC. All rights reserved. 39 施錠状態を検知するために、何の計測値を使おう・・・  赤外線温度(℃)  周囲温度(℃)  周辺光(lux)  湿度(%)  大気圧(hPa)  加速度(G)  ジャイロスコープ(deg/s)  地磁気 (μT)  磁気(磁石が近づくとON) →関係ない。 →関係ない。 →使えないことはないけど、夜使えない。 →関係ない。 →関係ない。 →鍵が動いたことは検知できそう。 →スマホとかでも使われてるアレ。傾きが取れる? →よく分からない。 →磁石と組み合わせれば・・・? とりあえずジャイロスコープの値を使ってみよう。
  • 40. Copyright © 2016 AGREX INC. All rights reserved. 40 施錠状態を検知するために、何の計測値を使おう・・・ ジャイロスコープ(英語: gyroscope)とは、 物体の角度(姿勢)や角速度あるいは角加速度を検出する計測器ないし装置。 ※Wikipediaより。 ジャイロスコープの値の単位 deg/s(角速度:単位時間あたりに変化した角度) →ある期間内の角速度の合計から角度の変化を読み取れる・・・? 【速さ×時間=距離】的な・・・(ガバガバ発想)
  • 41. Copyright © 2016 AGREX INC. All rights reserved. 41 SensorTag のデータを Raspberry Pi で取得する 1秒ごとにジャイロスコープの値を取得する(垂直→水平) Sat Oct 08 2016 20:29:08 GMT+0900 (JST),x= 1.32813, y=-3.16406, z=-1.67969 Sat Oct 08 2016 20:29:09 GMT+0900 (JST),x= 0.76563, y=-1.60938, z=-1.39844 Sat Oct 08 2016 20:29:10 GMT+0900 (JST),x= 1.72656, y=-1.98438, z=-0.72656 Sat Oct 08 2016 20:29:11 GMT+0900 (JST),x=-0.21875, y=-2.79688, z=-1.24219 Sat Oct 08 2016 20:29:12 GMT+0900 (JST),x= 1.28906, y=-0.95313, z=-0.85938 Sat Oct 08 2016 20:29:13 GMT+0900 (JST),x= 1.78906, y=-1.58594, z=-0.42969 Sat Oct 08 2016 20:29:14 GMT+0900 (JST),x= 0.29688, y=-1.85938, z=-1.32813 Sat Oct 08 2016 20:29:15 GMT+0900 (JST),x= 2.24219, y=-1.70313, z=-0.45313 Sat Oct 08 2016 20:29:16 GMT+0900 (JST),x= 0.92969, y=-1.35938, z=-2.58594 Sat Oct 08 2016 20:29:17 GMT+0900 (JST),x= 0.88281, y=-1.40625, z=-3.17969 垂 直 水 平
  • 42. Copyright © 2016 AGREX INC. All rights reserved. 42 SensorTag のデータを Raspberry Pi で取得する 1秒ごとにジャイロスコープの値を取得する(垂直→水平) Sat Oct 08 2016 20:29:08 GMT+0900 (JST),x= 1.32813, y=-3.16406, z=-1.67969 Sat Oct 08 2016 20:29:09 GMT+0900 (JST),x= 0.76563, y=-1.60938, z=-1.39844 Sat Oct 08 2016 20:29:10 GMT+0900 (JST),x= 1.72656, y=-1.98438, z=-0.72656 Sat Oct 08 2016 20:29:11 GMT+0900 (JST),x=-0.21875, y=-2.79688, z=-1.24219 Sat Oct 08 2016 20:29:12 GMT+0900 (JST),x= 1.28906, y=-0.95313, z=-0.85938 Sat Oct 08 2016 20:29:13 GMT+0900 (JST),x= 1.78906, y=-1.58594, z=-0.42969 Sat Oct 08 2016 20:29:14 GMT+0900 (JST),x= 0.29688, y=-1.85938, z=-1.32813 Sat Oct 08 2016 20:29:15 GMT+0900 (JST),x= 2.24219, y=-1.70313, z=-0.45313 Sat Oct 08 2016 20:29:16 GMT+0900 (JST),x= 0.92969, y=-1.35938, z=-2.58594 Sat Oct 08 2016 20:29:17 GMT+0900 (JST),x= 0.88281, y=-1.40625, z=-3.17969 何のことやら全く分からない・・・。 有意な差があるようにも見えない・・・。 おまけに、静止状態でも値が変動している・・・。 垂 直 水 平
  • 43. Copyright © 2016 AGREX INC. All rights reserved. 43 SensorTag のデータを Raspberry Pi で取得する 1秒ごとに地磁気の値を取得する(垂直→水平) Sat Oct 08 2016 20:26:07 GMT+0900 (JST),x=-16.33936, y=77.34961, z=-64.0083 Sat Oct 08 2016 20:26:08 GMT+0900 (JST),x=-16.78906, y=79.14844, z=-63.7085 Sat Oct 08 2016 20:26:09 GMT+0900 (JST),x=-18.13818, y=76.15039, z=-60.86035 Sat Oct 08 2016 20:26:10 GMT+0900 (JST),x=-16.48926, y=76.4502 , z=-61.45996 Sat Oct 08 2016 20:26:11 GMT+0900 (JST),x=-17.83838, y=78.69873, z=-62.65918 Sat Oct 08 2016 20:26:12 GMT+0900 (JST),x=-14.09082, y=49.76758, z=-38.2251 Sat Oct 08 2016 20:26:13 GMT+0900 (JST),x=-14.54053, y=47.66895, z=-39.42432 Sat Oct 08 2016 20:26:14 GMT+0900 (JST),x=-16.18945, y=48.26855, z=-37.92529 Sat Oct 08 2016 20:26:15 GMT+0900 (JST),x=-14.09082, y=49.31787, z=-39.57422 Sat Oct 08 2016 20:26:16 GMT+0900 (JST),x=-15.43994, y=46.46973, z=-37.47559 垂 直 水 平
  • 44. Copyright © 2016 AGREX INC. All rights reserved. 44 SensorTag のデータを Raspberry Pi で取得する 1秒ごとに地磁気の値を取得する(垂直→水平) Sat Oct 08 2016 20:26:07 GMT+0900 (JST),x=-16.33936, y=77.34961, z=-64.0083 Sat Oct 08 2016 20:26:08 GMT+0900 (JST),x=-16.78906, y=79.14844, z=-63.7085 Sat Oct 08 2016 20:26:09 GMT+0900 (JST),x=-18.13818, y=76.15039, z=-60.86035 Sat Oct 08 2016 20:26:10 GMT+0900 (JST),x=-16.48926, y=76.4502 , z=-61.45996 Sat Oct 08 2016 20:26:11 GMT+0900 (JST),x=-17.83838, y=78.69873, z=-62.65918 Sat Oct 08 2016 20:26:12 GMT+0900 (JST),x=-14.09082, y=49.76758, z=-38.2251 Sat Oct 08 2016 20:26:13 GMT+0900 (JST),x=-14.54053, y=47.66895, z=-39.42432 Sat Oct 08 2016 20:26:14 GMT+0900 (JST),x=-16.18945, y=48.26855, z=-37.92529 Sat Oct 08 2016 20:26:15 GMT+0900 (JST),x=-14.09082, y=49.31787, z=-39.57422 Sat Oct 08 2016 20:26:16 GMT+0900 (JST),x=-15.43994, y=46.46973, z=-37.47559 y と z の値に何か有意な差を感じる・・・が、センサータグの 設置場所によって値が変化するので使うのは難しそう・・・。 (そもそも地磁気って何だよ・・・。) 垂 直 水 平
  • 45. Copyright © 2016 AGREX INC. All rights reserved. 45 SensorTag のデータを Raspberry Pi で取得する 1秒ごとに加速度の値を取得する(垂直→水平) Sat Oct 08 2016 20:27:31 GMT+0900 (JST),x=-0.91895, y= 0.04517, z=0.00269 Sat Oct 08 2016 20:27:32 GMT+0900 (JST),x=-0.91919, y= 0.10327, z=0.0625 Sat Oct 08 2016 20:27:33 GMT+0900 (JST),x=-0.87817, y= 0.01904, z=0.00244 Sat Oct 08 2016 20:27:34 GMT+0900 (JST),x=-0.87646, y= 0.0354 , z=0.03613 Sat Oct 08 2016 20:27:35 GMT+0900 (JST),x=-0.91772, y= 0.05078, z=0.08105 Sat Oct 08 2016 20:27:36 GMT+0900 (JST),x= 0.38184, y=-0.13159, z=2.88232 Sat Oct 08 2016 20:27:37 GMT+0900 (JST),x= 0.24121, y= 0.11401, z=1.05908 Sat Oct 08 2016 20:27:38 GMT+0900 (JST),x= 0.21802, y= 0.1167 , z=1.04248 Sat Oct 08 2016 20:27:39 GMT+0900 (JST),x= 0.18213, y= 0.12842, z=0.96167 Sat Oct 08 2016 20:27:40 GMT+0900 (JST),x= 0.21704, y= 0.04224, z=1.01587 垂 直 水 平
  • 46. Copyright © 2016 AGREX INC. All rights reserved. 46 SensorTag のデータを Raspberry Pi で取得する 1秒ごとに加速度の値を取得する(垂直→水平) Sat Oct 08 2016 20:27:31 GMT+0900 (JST),x=-0.91895, y= 0.04517, z=0.00269 Sat Oct 08 2016 20:27:32 GMT+0900 (JST),x=-0.91919, y= 0.10327, z=0.0625 Sat Oct 08 2016 20:27:33 GMT+0900 (JST),x=-0.87817, y= 0.01904, z=0.00244 Sat Oct 08 2016 20:27:34 GMT+0900 (JST),x=-0.87646, y= 0.0354 , z=0.03613 Sat Oct 08 2016 20:27:35 GMT+0900 (JST),x=-0.91772, y= 0.05078, z=0.08105 Sat Oct 08 2016 20:27:36 GMT+0900 (JST),x= 0.38184, y=-0.13159, z=2.88232 Sat Oct 08 2016 20:27:37 GMT+0900 (JST),x= 0.24121, y= 0.11401, z=1.05908 Sat Oct 08 2016 20:27:38 GMT+0900 (JST),x= 0.21802, y= 0.1167 , z=1.04248 Sat Oct 08 2016 20:27:39 GMT+0900 (JST),x= 0.18213, y= 0.12842, z=0.96167 Sat Oct 08 2016 20:27:40 GMT+0900 (JST),x= 0.21704, y= 0.04224, z=1.01587 x と z の値に何か有意な差を感じる・・・ しかし、よく分からない・・・。 垂 直 水 平
  • 47. Copyright © 2016 AGREX INC. All rights reserved. 47 SensorTag のデータを Raspberry Pi で取得する センサーをいじりながら観測を続けること数日間・・・ とりあえず、加速度のデータが ジャイロ・地磁気に比べると見込みがありそう・・・。
  • 48. Copyright © 2016 AGREX INC. All rights reserved. 48 SensorTag のデータを Raspberry Pi で取得する 加速度を近似値で整数化してみる
  • 49. Copyright © 2016 AGREX INC. All rights reserved. 49 SensorTag のデータを Raspberry Pi で取得する 加速度を近似値で整数化してみる Sat Oct 08 2016 21:09:26 GMT+0900 (JST),x=-1, y=0, z=0 Sat Oct 08 2016 21:09:27 GMT+0900 (JST),x=-1, y=0, z=0 Sat Oct 08 2016 21:09:28 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:29 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:30 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:31 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:32 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:33 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:34 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:35 GMT+0900 (JST),x=-1, y=0, z=0 Sat Oct 08 2016 21:09:36 GMT+0900 (JST),x=-1, y=0, z=0 垂 直 水 平 垂 直
  • 50. Copyright © 2016 AGREX INC. All rights reserved. 50 SensorTag のデータを Raspberry Pi で取得する 加速度を近似値で整数化してみる Sat Oct 08 2016 21:09:26 GMT+0900 (JST),x=-1, y=0, z=0 Sat Oct 08 2016 21:09:27 GMT+0900 (JST),x=-1, y=0, z=0 Sat Oct 08 2016 21:09:28 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:29 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:30 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:31 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:32 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:33 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:34 GMT+0900 (JST),x= 0, y=0, z=1 Sat Oct 08 2016 21:09:35 GMT+0900 (JST),x=-1, y=0, z=0 Sat Oct 08 2016 21:09:36 GMT+0900 (JST),x=-1, y=0, z=0 垂 直 水 平 垂 直 垂直の時は x = -1、水平の時は z = 1 になるらしい! (理屈は不明)
  • 51. Copyright © 2016 AGREX INC. All rights reserved. 51 実装 SensorTag から1秒毎に送られてくる加速度を監視し、 状態が変化したら以下のメッセージを AWS IoT に publish する。 加速度(x)が、-1になった場合 →「鍵が開いたよ!」 加速度(z)が、1になった場合 →「鍵が締まったよ!」 両面テープでSensorTagを貼付け(雑) ※シリコンケースは外してます。
  • 52. Copyright © 2016 AGREX INC. All rights reserved. 52 実装 UNLOCK LOCK 施錠してみる。
  • 53. Copyright © 2016 AGREX INC. All rights reserved. 53 実装 UNLOCK LOCK メールが来た!
  • 54. Copyright © 2016 AGREX INC. All rights reserved. 54 実装 UNLOCK LOCK これで安心して外出できるように・・・
  • 55. Copyright © 2016 AGREX INC. All rights reserved. 55 AWS IoT を使ってみての感想  AWS周りの設定は簡単。  デバイス→AWS IoT のデータ送信も簡単。  もうちょっと AWS のサービスを組み合わせて使いたい。  センサーから取得したデータをどう扱うかがキモ。 ※今回のネタ作りにかかった時間の半分以上はココ・・・。
  • 56. Copyright © 2016 AGREX INC. All rights reserved. 56 AWS IoT を使ってみての感想  アイディア次第で色々できそう  センサーのデータを検知できなくなったら通知 →自転車の盗難通知(カメラモジュールも使うといいかも。)  センサーのデータを検知できるようになったら通知 →こども(鍵っ子)の帰宅通知  光センサーの利用 →遠方の実家の両親の見守り(冷蔵庫の開閉)
  • 57. Copyright © 2016 AGREX INC. All rights reserved. 57 AWS IoT を使ってみての感想 意外とかんたんなので、気軽に IoT してみましょう!