センサーデータの収集から送信まで&ラスト1マイルの解決
コネクト株式会社

本セミナーの構成
データ収集• センサーデータの収集から送信まで&ラスト1マイルの解決

ビッグデータ構築運用• 貯めるIoT

データ解析• 械学習を用いたセンサーデータからの機器状態診断のデモ・事例紹介
Copyright © konekto Inc. All Rights Reserved.

Page 2

ＩｏＴとはInternet of Things（モノのインターネット） 様々なモノ（機械やセンサー）が、インターネットを通じてサーバーやクラウドサービスに接続され、相互に情報交換をする仕組みです。

具体的には
 モノの状態を知りたい モノの状態を変えたい

なぜ、可能になったかセンサー/制御機器の進化(小型軽量化)
インタネット基盤の進化(多様化/無線化)
サーバ側の進化(高性能化/Cloud化)
大量データ処理体制(ビッグデータ/データ解析)
Copyright © konekto Inc. All Rights Reserved.

Page 3

これまでのIoT
大規模なニーズが見込める事案は構築済
 自動車運行管理：約15年前にパイロットシステムを開発
 車載器(タコメーターから進化) 位置/加速度/運行時間を採取して安全運行に役立てる

 ガス検針および料金管理：約13年前に開発
 オンラン検針システム
 ワイヤレス検針端末

超大企業から大中企業への拡大/浸透へ 小規模(ロット)での対応
 汎用機器が存在しない
 コストできるだけ抑えたい(パイロットシステムならなおさら)
Copyright © konekto Inc. All Rights Reserved.

Page 4

データ採取方法
エンドノードCopyright © konekto Inc. All Rights Reserved.

Page 5

IoTのためのコンピュータ• 汎用性• 外部機器接続

Raspberry Pi• センサー• 制御機器操作• 通信機能(又はオンボード)• 省電力• 電池駆動可• スリープ可• コンパクト• 低コスト• 耐久性

Arduino比較モデル名Raspberry Pi 3 model B

Arduino Uno

CPU

64bit 1GHz

8bit 20MHz

メモリ

1GB

2 KB

ストレージSDカード (2〜16G)

フラッシュ32KB
EEPROM 1KB

OSあり/マルチタスクなし/シングルタスク

アナログ入力

要ADコンバータ可能

PMW信号出力

2チャンネル

6チャンネル

インターファイス RJ-45,HDMI, Bluetooth,WiFi シリアル価格
推奨用途
Copyright © konekto Inc. All Rights
Reserved.

4,800円

2,940円ゲートウェイ

センサーノード
Page 6

様々なArduino• ベーシックモデル

ATmega328P
CPU：8bit 20MHz
Flashメモリ:32KB
SRAM:2KB
EEPROM:1KB

USB：電源/シリアル

電源

LoRa/LoRaWAN

アナログ入出力：14
デジタル入力：6
電源供給：3.3v/5v

通信機能搭載型

WiFi

拡張シールド小型モデル

Arduino Nano

*無線機器を日本国内で使用するには技適(技術基準適合証明)マークを確認してください

SduinoCopyright © konekto Inc. All Rights Reserved.

Page 7

豊富なセンサー＆制御機器
スイッチ/圧力(重量)/振動/チルト(傾き)
温度/湿度/気圧/光(赤外線・紫外線)/距離
方角/加速度/位置(GPS)ジョイスティック/リモコン/マイク

LED/ディスプレイ
ブザー/スピーカー
リレー(サーボ・ステップモーター)
Copyright © konekto Inc. All Rights Reserved.

Page 8

作業手順
ディバイス準備• センサー接続 Adruino + センサ + バッテリー• コーディング(Arduino IDE)

サーバ準備
• サーバ構築(Webサーバなど)• スクリプトコーディング

実行• データ採取• レポート作成

Copyright © konekto Inc. All Rights Reserved.

Page 9

今すぐIoTを実現したい①
Arduinoによる温度監視
 WiFi内蔵Arduino(EPS8266)
 温度センサー(LM35DZ)
 電源：USBバッテリー

約1,480円
約110円

Copyright © konekto Inc. All Rights Reserved.

Page 10

①ソース

7.

void setup() {8.

WiFi.begin(ssid, password);9.

while (WiFi.status() != WL_CONNECTED) {delay(500);

1.

#include <ESP8266WiFi.h>

10.

2.

const char* ssid

11.

}

3.

const char* password = “abcdefg";

12.

WiFiClient client;4.

const char* host = "192.1.2.3";

13.

if (!client.connect(host, httpPort)) {5.

const String docroot = "/test.php";

14.

return;6.

const int httpPort = 80;

15.

}

16.

int sensorValue=analogRead(A0);17.

String url=docroot;= “MyWiFi";•void loop() {18.

url = url + “?temp=”+ String(sensorValue*100.0 /0.3125/1024*1.00 + "&Mac=" + WiFi.macAddress();

•}

19.

client.print(String("GET ") + url + " HTTP/1.1¥r¥n" +20.

while (client.available() == 0) {21.

if (timeout - millis() < 0) {22.

client.stop();23.

return;24.

"Connection: close¥r¥n¥r¥n"); int timeout = millis() + 5000;

}

25.

}

26.

while(client.available()){

27.

String line = client.readStringUntil('¥r');

28.

"Host: " + host + "¥r¥n" +}29. ESP.deepSleep(57e6); // 62e2 is 60 seconds
30. }Copyright © konekto Inc. All Rights Reserved.

Page 11

今すぐIoTを実現したい①
センサーノード 1分間隔で温度とMacアドレスを送信

受信サーバ
 Apahe httpd PHPでデータシステムへ格納

アクセスログ
192.1.2.3 - - [03/May/2018:07:46:43 +0900] "GET /test.php?temp=26.56&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
192.1.2.3 - - [03/May/2018:07:47:43 +0900] "GET /test.php?temp=26.87&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
192.1.2.3 - - [03/May/2018:07:48:43 +0900] "GET /test.php?temp=26.56&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
192.1.2.3 - - [03/May/2018:07:49:43 +0900] "GET /test.php?temp=26.56&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
192.1.2.3 - - [03/May/2018:07:50:43 +0900] "GET /test.php?temp=26.56&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
192.1.2.3 - - [03/May/2018:07:51:43 +0900] "GET /test.php?temp=26.87&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
192.1.2.3 - - [03/May/2018:07:52:44 +0900] "GET /test.php?temp=27.50&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
192.1.2.3 - - [03/May/2018:07:53:44 +0900] "GET /test.php?temp=27.81&Mac=BC:DD:C2:FD:C6:5E HTTP/1.1"
Copyright © konekto Inc. All Rights Reserved.

Page 12最小限の消費電力で動作• 動作状態(WiFi使用)• それなりの電力を消費します• スリープ状態• タイマー以外をすべて停止

Copyright © konekto Inc. All Rights
Reserved.

Page 13

今すぐIoTを実現したい②
Arduinoによる位置監視 WiFi内蔵Arduino(EPS8266) 約1,480円
 GPSモジュール(GYSFDMAXB) 約2,100円
 電源：USBバッテリー

Copyright © konekto Inc. All Rights Reserved.

Page 14

ソース②1.

#include <TinyGPS++.h>2.

#include <SoftwareSerial.h>3.

#include <ESP8266WiFi.h>4.

static const int gps_RX = 4, gps_TX = 5;

5.

SoftwareSerial gps_ss(gps_RX, gps_TX, false, 256);

6.

TinyGPSPlus gps;

7.

const char* ssid

8.

const char* password = “abcdefg";

9.

const char* host = "192.1.2.3";= “MyWiFi";

10. void setup() {11.

delay(10);12.

WiFi.begin(ssid, password);13.

while (WiFi.status() != WL_CONNECTED) {14.

delay(500);

15. }
16. delay(50);

18. void loop() {19.

WiFiClient client;20.

const int httpPort = 80;

21.

if (!client.connect(host, httpPort)) return; //connection failed

22.

while (gps_ss.available() > 0)23.

gps.encode(gps_ss.read());

24.

String url = "/test.php?" + “LAT=” + String(gps.location.lat()) + “&LONG=” + String(gps.location.lng()) + "&ALT=" + String(gps.altitude.meters());

25.

client.print(String("GET ") + url + " HTTP/1.1¥r¥n" +"Host: " + host + "¥r¥n" +"Connection: close¥r¥n¥r¥n");26.

int timeout = millis() + 5000;

27.

while (client.available() == 0) {28.

if (timeout - millis() < 0) {29.

client.stop(); //>>> Client Timeout !

30.

return;

31.
32.

}
}

33. while(client.available())
34.

String line = client.readStringUntil('¥r');

35. delay(5000);
36. }

17. }

Copyright © konekto Inc. All Rights Reserved.

Page 15

今すぐIoTを実現したい②センサーノード
 10秒間隔でGPS情報を送信(安定まで40秒ほど)

受信サーバ
 Apahe httpd PHPでデータシステムへ格納

アクセスログ
192.1.2.3 - - [18/May/2018:17:11:24 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=133.80 HTTP/1.1
192.1.2.3 - - [18/May/2018:17:11:34 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=129.50 HTTP/1.1
192.1.2.3 - - [18/May/2018:17:11:44 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=125.10 HTTP/1.1
192.1.2.3 - - [18/May/2018:17:11:54 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=120.00 HTTP/1.1
192.1.2.3 - - [18/May/2018:17:12:04 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=115.50 HTTP/1.1
192.1.2.3 - - [18/May/2018:17:12:14 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=112.00 HTTP/1.1
192.1.2.3 - - [18/May/2018:17:12:24 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=112.10 HTTP/1.1
192.1.2.3 - - [18/May/2018:17:12:34 +0900] "GET /test.php?LAT=35.68&LONG=139.74&ALT=114.10 HTTP/1.1
Copyright © konekto Inc. All Rights Reserved.

Page 16

ラスト1マイルの解決方法
エンドノード&ゲートウェイ

Copyright © konekto Inc. All Rights Reserved.

Page 17

インターネット接続
有線接続
 ＬＡＮケーブル： 1m～100m(カスケード可能)

無線接続
 WiFi：1m～50mぐらい(中継器で延長可能)
 2.5GHz(申請不要)
 5GHz(屋内なら申請不要/屋外でも一部不要)

もっと遠距離(100m以上)の機器と接続するには

Copyright © konekto Inc. All Rights Reserved.

Page 18

ラスト1マイルを解決する方法
携帯電話網(事業者のみ：各社人口カバー率99%以上)
 3G(1～1.5GHz)
 LTE(920MHz)

LPWA(Low Power Wide Area) (事業者/自営)
 Sigfox： ～10km(都市では2km程度)
 LoRaWAN：～10km(都市では2km程度)
 ライセンスバンド

Copyright © konekto Inc. All Rights Reserved.

Page 19

各通信方式の位置付け（出典）総務省「第4次産業革命における産業構造分析とIoT・AI等の進展に係る現状及び課題に関する調査研究」（平成29年）

Copyright © konekto Inc. All Rights Reserved.

Page 20

主なLPWA規格の位置付け

Bluetooth Low Energy

UNB：ウルトラナローバンド
SIGFOXネットワークなど（出典）総務省「第4次産業革命における産業構造分析とIoT・AI等の進展に係る現状及び課題に関する調査研究」（平成29年）

Copyright © konekto Inc. All Rights Reserved.

Page 21

普及予測

Copyright © konekto Inc. All Rights Reserved.

Page 22

日本での920MHz帯(LoRa)運用
標準規格 ARIB STD-T108 920MHz帯テレメータ用、テレコントロール用及びデータ伝送用無線設備* 一般社団法人電波産業会(電波利用システムの研究開発・標準化、普及、国際連携)

周波数(200kHzステップ) CH

キャリアセンス

送信時間

休止時間

総和制限

920.6MHz

923.4MHz

24～38

5ms以上

4s以下

50ms

なし

922.4MHz

923.4MHz

33～38

922.4MHz

928.0MHz33～61

128μs以上

200~400ms

送信時間の10倍

1時間あたり360s以下

CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)

 送信前に５ミリ秒以上その周波数が使われていないかキャリアセンス
 使われていなければ４秒間だけ送信できる
 よって、ペーロードは、11~242バイトとなります。
 DR=5(SF=7, BW=125kHz) 242 Byte
 DR=2(SF=10, BW=125kHz)で11 Byte

 送信後に再度送信する場合には５０ミリ秒待たなければならない
Copyright © konekto Inc. All Rights Reserved.

Page 23

LPWA製品事例(LoRa) ：エンジンスターター• LoRa採用により• これまで• 429MHz(10mW)を使用• 市街地：～500m• 最大：～2500m• 920MHz(20mW)を使用• 市街地：～2000m
約4倍• 最大：～12000m
約5倍

株式会社ユピテル
エンジンスターターVE-E8810st 製品ページ よりhttps://www.yupiteru.co.jp/products/en_sta/ve-e8810st/

Copyright © konekto Inc. All Rights Reserved.

Page 24

LPWA製品事例：メッセージ送受信
腕時計端末とWindowsPC間でメッセージ送受信をおこなう「WorkWatch Alarm（ワークウォッチアラーム）」
本製品は、腕時計型端末とSubGiga-BluetoothGateway、SubGigaホストアダプター、Windows用アプリケーションから構成されるシステムセットです。
腕時計端末を装着した作業員と管理棟のWindows PC間でメッセージの送受信をおこなうコ
ミュニケーションシステムとしてご使用いただけます。WindowsPC用アプリケーション開発キットとしてSDKを提供しておりますので、稼働中の既存システムと連携し、腕時計端末へメッセージ送信やバイブレーションによる通知をおこなうことが可能となります。

ラトックシステム株式会社 より腕時計端末によるメッセージ送受信を既存システムに組み込める「WorkWatch Alarm（ワークウォッチアラーム）」6月下旬出荷開始
http://www.ratocsystems.com/info/news/2018/0521.html

Copyright © konekto Inc. All Rights Reserved.

Page 25

LoRaとLoRaWAN
LoRa(Long Range) SEMTECH社が開発した無線通信方式： LoRa変調
 低出力で長距離通信が可能
 最大ペイロード：28～50バイト
 免許不要：エンドノード、自営ゲートウェイ

LoRaWAN(LoRa+WAN)

 LoRa Allianceが策定したオープンなネットワーク概念

 セムテック, STマイクロエレクトロニクス,マイクロチップ・テクノロジーなど300社

 LoRa変調通信＋インターネット

 LoRa変調通信：エンドノード⇔ゲートウェイ
 インターネット：ゲートウェイ⇔ネットワークサーバ⇔アプリケーションサーバ
 最大ペイロード：11～242バイト
 免許不要：エンドノード、自営ゲートウェイ
 免許必要：共用ゲートウェイ
Copyright © konekto Inc. All Rights Reserved.

26

LoRaとLoRaWAN
エンドノード独自ゲートウェイ

独自サーバ

暗号可能
(独自実装)
エンドノード暗号化

ゲートウェイ(自営)ネットワークサーバ

アプリケーションサーバ

ゲートウェイ(共有)Copyright © konekto Inc. All Rights Reserved.

Page 27

LoRaWAN普及状況：海外事情と日本
通信事業者がサービスを提供
 100%網羅：

 フランス、スペイン、オランダ、ベルギー、スイス、韓国など

 構築中
 インド：タタ・コミュニケーションズとヒューレット・パッカード・エン
タープライズは共同で、世界最大規模のネットワークを構築すると発表

 日本でも構築中
 ソラコム センスウェイ NTT西日本
 ソフトバンク
Copyright © konekto Inc. All Rights Reserved.

Page 28

LoRaWAN：The Things Networkの利用(無償利用可能)
The Things Networkはオランダのスタートアップベンチャー企業によるクラウドファウンディングから始まった世界最大のLoRaWANコミュニティです。

The Things Networkは、ネットワークサーバになります。LoRaエンドノード、LoRaゲートウェイ、アプリケーションサーバと組み合わせて使います。
エンドノードゲートウェイ ネットワークサーバ

アプリケーションサーバ

Copyright © konekto Inc. All Rights Reserved.

29

LoRaWAN設定手順(The Things Network)アカウント• アカウント作成• コンソール設定• ハンドラー設定

ディバイス• ゲートウェイ登録• ゲートウェイEUI(Macアドレスの4～5にFFを追加）• 諸情報を登録
ゲートウェイ • コレボレーター設定

アプリケーション• アプリケーション登録• アプリケーションID(一意なIDを入力)• アプリケーションEUI(自動生成)• ハンドラー設定

ゲートウエイディバイス•ディバイスの登録•ディバイスID(一意なIDを入力)•ディバイスEUI(自動生成/sitei)•App Key(自動生成/指定)•App EUI(アプリケーションEUIを選択)•ゲートウェイ設定•サーバ情報(ネットワークサーバのURLおよびポート)•ゲートウェイEUI入力•位置情報を設定•LoRa通信条件を設定•コードへの記述•ABP（ディバイスアドレス/ネットワークセッションキー/アプリケーションセッションキー）•OTAA（ディバイスEUI/アプリケーションEUI/アプリケーションキー）•LoRa通信条件

Copyright © konekto Inc. All Rights Reserved.

Page 30

LoRa IoT スターターキット• LoRa IoT スターターキット- I
LoRa ゲートウェイ LG01-JP
x1
LoRa mini 用開発ボード
x2
温度、湿度センサーDHT11
x2
59,800 円( 税別)• LoRa IoT スターターキット- II
LoRa ゲートウェイ LG01-JP
x2
LoRa センサーノード LoRa mini x 2
LoRa mini 用アンテナ
x2
LoRa mini 用開発ボード
x5
LoRa mini 用テストユーティリティ x 1x2
温度、湿度センサーDHT11158,000 円( 税別)
株式会社オープンウェーブ

LG01-JP

LoRa mini

神奈川県横浜市神奈川区西神奈川１－８－１１－１０３
メール: contact@openwave.co.jp
電話: ０４５－６２０－６６４８（IoT担当まで）

Copyright © konekto Inc. All Rights Reserved.

Page 31使用例：温度データ送信/GPSデータ送信

Qiita 「LoRaでIoTプラットフォーム（ThingSpeak）にデータを上げる方法」 より
https://qiita.com/openwave-co-jp/items/fc4695f6de36fc9cd398#%E4%BD%BF%E7%94%A8%E3%82%BD%E3%83%95%E3%83%88
Qiita 「LoRaにGPSを付けて、会社の周りを歩いてみた」 より
https://qiita.com/openwave-co-jp/items/8dae802638cf6ac62650

Copyright © konekto Inc. All Rights Reserved.

Page 32

評価例：固定文字送信

Qiita 「LoRaWANでIoTプラットフォーム（The Things Network）にデータを上げる方法」 より
https://qiita.com/openwave-co-jp/items/d1f7aad54a5bba7b81cd#%E6%B3%A8%E6%84%8F
もっと詳しい内容はこちらへ

Copyright © konekto Inc. All Rights Reserved.

Page 33

konekto
オープンソースで推進するICTコネクト株式会社〒102-8578
東京都千代田区紀尾井町4-1
ニューオータニ・ビジネスコート 10F

TEL：03-6256-8598
FAX：03-3234-0191

since 2001