Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

IoTで畑を監視してみる

2,102 views

Published on

2016/2/16 「JAWS-UG IoT専門支部 IoTサロン 2016-02」で発表した資料

Published in: Internet
  • Be the first to comment

IoTで畑を監視してみる

  1. 1. IoTで畑を監視する
  2. 2. @sparkgene 市川 純 リクルートマーケティングパートナーズ AWSを使った環境の構築・運用をやってます
  3. 3. IoTで畑を 監視する?
  4. 4. http://www.kokuchpro.com/event/awsiot_handson/14096/ キッカケ
  5. 5.
  6. 6. 週末農家の悩み ▸  毎日畑の様子を見ることは出来ない ▸  週末外出すると、畑仕事ができなくなることがある ▸  そんな時に限って作物がダメになってしまう
  7. 7. サーバも監視するんだし、 畑も監視すればいい
  8. 8. センサーを使って監視しよう 水分センサー 温湿度センサー 光センサー
  9. 9. Raspberry Piを使って制御します Raspberry Pi 1 Model B (jessie)
  10. 10. 全体像 AWS IoT SORACOM Air
  11. 11. 水分センサー(YL-69) 水分量によって電極間の抵抗値が変わることを利用して 測ります。 アナログ値で取得する方法と、一定のしきい値を超えた時に ONになるデジタル出力が可能です。 Raspberry PiはデジタルのI/Oしか無いので、 A/Dコンバータを使ってアナログ値をデジタル に変換します。
  12. 12. 温度&湿度センサー(DHT11) 温度と湿度を計測できるセンサー。 シリアル通信でデジタル値を取得できます。
  13. 13. 光量照度センサ(BH1750FVI/GY-30) 明るさ(ルクス)をデジタル値として取得できる センター。 ボードとはI2Cで繋ぎます。
  14. 14. 各センサーからデータを収集している様子
  15. 15. データ取得∼送信の流れ(常時接続) センサーの値取得 AWS IoTへ送信 5分スリープ 繰り返し l  SORACOMへは常時接続 l  スクリプト内で5分スリープ l  SORACOMのダイアルアップとスク リプトはsupervisorで自動起動させて、 Raspberry Pi起動と同時にデータ送信
  16. 16. データ取得∼送信の流れ(間欠運転) センサーの値取得 AWS IoTへ送信 SORACOMの接続解 除 SORACOMへ接続 l  センサーからのデータ取得と、送信 部分は分離 l  データの取得は5分おき l  データの送信は20分おき l  ネットに繋がらなければ、データを ファイルへ溜め込む ファイルに追記 ファイルから読み込み
  17. 17. データ取得∼送信の比較 常時接続 間欠運転 リアルタイム性 高い 20分遅れ 難易度 普通 普通 電力消費 高い 普通 気になること SORACOMの料金 ファイルの肥大
  18. 18. 消費電力の違い USBモデムで接続している USBモデムで接続していない
  19. 19. AWS側の話
  20. 20. AWS側の構成(初期) AWS IoT DynamoDB Lambda CloudWatch stream
  21. 21. 送信データのフォーマット { "deviceid":"raspberrypi", "timestamp":"2016-02-14 05:55:46", "temp":"25.0", "hum":"45.0", "lx":"9737", "moi":"495” } l  データ量が多くなるがデバッグしやすい l  AWS IoT SQLではJSON形式のデータに対して   select temp, hum from topic と操作できる Ø  {“temp”:“25.0”, “hum”:“45.0”} といった形で取り出せる
  22. 22. AWS IoT Rules ${JSONのキー}とを指定することで、 簡単にDynamoDBに保存することが可能
  23. 23. AWS側の構成(現在) AWS IoT Lambda CloudWatch
  24. 24. 送信データのフォーマット { "deviceid":"raspberrypi", ”metrics":"2016-02-14 05:55:46,25.0,45.0,9737,495” } l  データ量は減るが見づらい l  AWS IoTのRuleで直接値を参照するのが難しい
  25. 25. AWS IoT Rules Lambdaのイベントには送信されてきたデータが渡ってくる { 'device': 'raspberrypi', 'metrics': '2016-02-14 10:25:03,54.0,19.0,13,482' }
  26. 26. LambdaからCloudWatchに登録 CloudWatch Dashnoard で任意のメトリックスを 並べることが出来る。 Y軸の最小・最大値が指定 できるので、グラフが 見やすくなる
  27. 27. 実際のCloudWatch画面
  28. 28. “実際に畑に置く事を考えると。。。 電源どうする?
  29. 29. ソーラーUSB電源システム https://tokyodevices.jp/items/27 日中はソーラーパネルで 発電しつつバッテリーへ蓄電 夜間はバッテリーに蓄電した 電力を使う
  30. 30. “課題
  31. 31. 実際の畑は広い ▸ 今回はプランターを使ったけど、実際の畑 だと複数のセンサーを配置しなければならな い ▸ センサーを分散させると配線や電源の問題 が出てくる ▸ ZigBeeとかを使って、センサーの無線化? ▹ ボタン電池でも結構持つらしい。けどセ ンサーと絡めると・・
  32. 32. 遠隔地の監視 ▸ ハードの障害やソフトのアップデートなど 遠隔地にモノがあると、メンテナンスが大変 ▸ AWS IoTのDevice Shadowを利用してオフ ライン時でも指示が出せ、オンライン時に反 映できる ▹ ソフトウエアの自動アップデート
  33. 33. 今後の展開
  34. 34. 雪がすごくて畑を監視できない
  35. 35. 実際に考えていること ▸ 写真を撮って見れるようにする ▸ 機械学習? ▸ 通知も
  36. 36. THANKS! You can find me at @sparkgene
  37. 37. l  畑の悩みの話 l  監視について考えてみる l  全体のイメージ l  センサーの説明 l  AWS IoTの話し l  データ蓄積の話 l   DynamoDBの話し l  データのビジュアライズの話 l   cloudwatch l  SORACOMの話し l  通信料の問題 l  データのダイエット l  データの送り方の方針 l  電源の問題 l  消費電力の話 l  24/7電源の話 l  11.74v→11.14v

×