どこでも使えるIoTを目指して～さくらインターネットのIoTへの取り組み～

2017/5/29

さくらインターネット株式会社

コミュニティマネージャー

法林 浩之(C) Copyright 1996-2017 SAKURA Internet Inc私についてFacebook 法林 浩之
写真Twitter@hourin

どんな人？
・日本UNIXユーザ会 幹事 (元会長)- 全国のOSCなどで研究会を開催- 多種多様なコミュニティとイベントを共同開催
・フリーランスエンジニア
・さくらインターネット コミュニティマネージャー- 会社主催イベントの運営- 社外イベント対応(協賛/出展/登壇/取材など)- 技術記事の執筆
・くわしくは「法林浩之」で検索
2

どんな話をするのか• IoTを取り巻く状況(簡単に)• IoTサービスを作るときの問題点• sakura.ioについて• 開発経緯• サービス概要• 利用事例• OSSとの組み合わせ3

さくらインターネットについて

大阪本社

東京支社

4

さくらインターネットの事業領域
VPS・クラウド

レンタルサーバ

さくらのレンタルサーバ
さくらのマネージドサーバ
1台のサーバを複数の契約者でサーバを共有または占有することができ、管理はさくらインター
ネットに任せて使うサービス

1台を共有

専用サーバ

さくらの VPS
仮想化技術を用い、1台の物理サーバ上に複数の仮想サーバを構築し、仮想専用サーバとして分けた領域の占有サービス

1台を占有

データセンター

新サービス

ハウジング

通信環境とデータの保存や処理システムを一体型で提供するIoTプラットフォーム・サービス

リモートハウジング
高性能サーバと拡張性の高いネットワークを圧倒的なコストパ
フォーマンスで利用できるIaaS型パブリック・クラウド・サービス

高性能で拡張性と信頼性の高いサーバをまるごと独占して利用することができ、自由にカスタマイズして利用可能なサービス

データセンター内にお客様専用のハウジングスペースを確保し、ネットワーク機器やサーバなどの機材を自由に置けるサービ
ス

1台～複数台Dockerコンテナをマネージドされた環境へ、手軽・シンプルにプロビジョニング可能なサービス【サービスの主な利用用途】
ウェブサイト運営、ブログ、インターネット・メール
ネットビジネス、電子商取引、動画・音楽配信、開発環境
エンタープライズ
会員制サイト、キャンペーン・サイト
SNS、ウェブ・アプリケーション、SaaS、ASP

機械学習、データ解析、高精度シミュレー
ション用途に特化したGPU搭載の専用サー
バサービス

新しい社会のインフラを支えながら、最先端のサービスを構築
5

IoTを取り巻く状況(簡単に)6

IoTと呼ばれているもの

http://mattturck.com/2016-iot-landscape/7

IoTと呼ばれているもの“インターネット"と同じぐらい広すぎる8

IoTと呼ばれているもの(分類)

モノとサービスの両方を提供(垂直統合型)
汎用的な基盤を提供(水平統合型)
各種構成要素を提供(要素技術)
9

sakura.ioの位置付け

sakura.ioはここに分類されるサービス

ソフトウェア/接続性/分析/セキュリティなどのプラットフォームサービス

http://mattturck.com/2016-iot-landscape/10

IoTはビジネス転換のキーになると言われている

出典：総務省 http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h28/html/nc123200.html
出典：総務省 http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h28/html/nc121100.html

世界のIoTデバイス数の推移及び予測

従来のデータに加え、IoTによりデータが収集・活用されることでビジネスモデル転換を生み、さらにデータの活用が促進される

11どうやってデータ集めるの？
12

IoTをサービス化するときの問題点
13

IoTをサービス化する時の問題点• 量産可能かどうか• 開発コスト / 部品原価 / 生産コスト / 歩留まり
• 特に物理的なモノを製造するのがIoTサービスの特徴• 持続可能かどうか• サポート / トラブル対応 / アップデート• 特にIoTでは機器関連のアップデートが発生• ファームウェアなど• 台数も膨大になることがある

14

IoTをサービス化する時の問題点

通信方法をどうするか

TCP/IP

not IP

近くとつながる
どこでもつながる
15

IoTをサービス化する時の問題点

IoTサービスを作る人がやりたいことモノからデータを取得してWebやアプリで使いたい！
Webやアプリから指令を出してモノを操作したい！
通信 ネットワーク

DB

ミドル

API

モノに関する部分と、Webサービスやアプリの部分だけ作りたい16

IoTをサービス化する時の問題点

IoTサービスを作る人が実際にやること

通信 ネットワーク

DB

ミドル

API

ネットワークとデータをやり取りしたいだけなのに…
やらなければならないことが多すぎる

17

IoTをサービス化する時の問題点• 環境視点• WiFiがあるとは限らない• スマホがあるとは限らない• 製造者視点• IoTではLinux以外のOSも普及(リアルタイムOSなど)• モノ作りの人にTCP/IPやSSLの実装は難易度が高い• セキュリティ対策が面倒(不正アクセス、DoSなど)• ユーザ視点• 設定や操作をしなくても使えるようにしたい18

さくらインターネットの取り組み

通信⇔データ連携
さくらインターネットにおまかせ

通信 ネットワーク

DB

ミドル

API

モノとWebの間でデータを相互にやりとりするためのプラットフォームサービスを開発

モノとWebの間でデータを相互にやりとりするためのプラットフォームサービスを開発

19

sakura.ioの沿革

2015年12月 「さくらの聖夜」にて「さくらのIoT Platform」発表

2016年2月 α版を発表(記者発表会/さくらの夕べ)
2016年10月 CEATECにてβ版を発表
2016年11月 β版提供開始
2017年4月18日 正式版提供開始、名称を「sakura.io」に変更

20

sakura.io概要
21

これまで気付けなかった「モノ・コト」の相関性や関係性を見出し、それを世界でシェアできるプラットフォーム「電気信号」と「JSONデータ」の変換を実現「モノづくり」と「コトづくり」の間に入って開発をより簡単に
22

sakura.ioが提供する価値

ハードウェア&SIM

回線

バックエンドシステム【 電気信号 】と【 JSONデータ 】の相互変換装置として動作
これまでのIoTデバイス/サービス開発の中間層を補完

23

他のIoTプラットフォームとの差異

sakura.io
やりたい

他社IoT
プラットフォームIoT用MVNO事業者

企画・アイディア「データを迎えに行く」という発想

センサー/チップ・モノからのアウトプットだけでなくモノへのインプットも・電源を入れるだけで利用可能

デバイス（外装、基板、ファームウェア）

サービス（可視化/予測/効率化）

やら
ね
ばな
ら
ない

データの送受信手段
安全な通信経路
デバイス認証/管理プラットフォーム機能（収集/蓄積/連携）【 やりたい 】に注力できるプラットフォームとして提供
24sakura.io詳細
25

データセンタ事業者だからできたデータの収集データの蓄積ラージスケール対応

データの連携アップデート

運用機能

障害切り分け、復旧

セキュリティ

必要な機能・運用をプラットフォームサービスとして提供
IoTデバイスやサービスごとの基本機能開発や運用設計は不要

26

さくらの通信モジュール

データの収集データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

運用機能

34mm

LTEモデムチップ
通信制御用MCU

SIMカードコネクタ
46mm

SDカードほぼ2枚分に収まるコンパクトサイズ
モノ側の通信に必要なすべてを凝縮

27

組込エンジニアの負担を軽減

データの収集データの蓄積データの連携

ラージスケール対応

障害切り分け、復旧

セキュリティ

運用機能

アンテナ

開発範囲

アプリケーション

アップデート

従来の通信手法
I2C/SPI

コマンドI/F
上位プロトコル
TCP/IPスタック
モデムコマンド制御

削減

UART制御省電力制御

複数の無線規格に対応

IoTデバイス/サービスの開発工数を削減「作らなければならないもの」より「作りたいもの」に注力可能

28

どこでもつながる通信モジュール

データの収集46mm

量産性に配慮した“基板間コネクタ”を採用

LTE
2.4GHz920MHz(LoRa)

34mm

データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

運用機能

方式

GW

特徴

通信可能
レンジ

伝送
速度

消費
電力

LTE

不要

単独使用可

キャリア網内どこでも速い大きい

2.4GHz帯

必要

短距離
大容量数百メートル速い

小さい

920MHz帯

必要

長距離
小容量遅い

小さい

（最大1Km程度）

数キロメートル（最大10km程度）

共通インターフェースおよび寸法のため複数の無線規格への対応が容易

29

データの自動保管、ポリシーに応じたプラン選定

データの収集データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

フリーライト

スタンダード

プレミアム

料金

無料

有料（50円/月）

有料（200円/月）

有料

専有/共有

共有領域

共有領域

共有領域

専有領域

公開有無公開

非公開

非公開

非公開

閲覧可能期間

40日間

40日間

2年間

制限なし

リリース

未公開

リリース済みリリース済み未公開

運用機能※料金は通信モジュール1個あたりの金額となります※ライトプランは現在無料で提供されています

設定をしなくても、データはプラットフォームに自動で保存されるポリシーに応じて複数プランから選択可能

30

Webエンジニアの負担を軽減する設計

データの収集

リアルタイム連携

データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

運用機能

JSON形式{"module": "XXXXXXXXX","type": "channels","datetime": "2016-06-01T12:21:11.628907163Z","payload": {"channels": [{"channel": 1,"type": "i","value": 1,"datetime": "2016-06-01T10:21:11.628907163Z"}, {"channel": 2,…
}]
}

一括連携

HTTP
Request}

データ取り出しやデバイス制御はすべてJSONフォーマットで実施
既存システムや扱いに慣れたクラウドサービスとの接続も可能

31

「安全」を超えた「安心」を

データの収集データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

運用機能

さくらの通信モジュール

さくらの通信モジュール

SSL/TLS通信
インターネット

他社モジュール＋さくら提供SIM

デバイスからプラットフォームまでは閉域網経由、他デバイス含め外部アクセスはAPI経由でのみ行うことでセキュリティを担保

32

さくらが考えるIoTのセキュリティ• インターネット上のサーバ間の通信はSSLを使用• サーバは継続的にアップデート可能• 組み込み機器との通信は構造上安全にする• 閉域網を利用(グローバルネットワークに接続しない)• 通信の暗号化と認証は基本的にLTEを利用• その上で簡易な暗号化と認証をソフトウエアで実装• モノ作りの人にTCP/IPやSSLを実装させない
33

運用を考慮した機能群

データの収集データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

運用機能

時刻提供機能

時刻要求

時刻提供

時刻提供
※一部マイコン側での対応が必要です

スケジュールでの一斉動作といった場合でも通信モジュールから時刻情報を提供可能

34

運用を考慮した機能群

データの収集データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

運用機能

簡易位置情報提供機能
基地局情報

簡易位置情報提供※利用には別途月額料金が必要になります

大まかな設置情報をとりたいケースであれば通信モジュールの機能として提供

35

運用を考慮した機能群

データの収集データの蓄積データの連携

ラージスケール対応

アップデート

障害切り分け、復旧

セキュリティ

運用機能

ファイル配信機能
ファイル要求ファイル要求ファイル配信ファイル配信
※一部マイコン側での対応が必要です※別途通信量に対する課金が発生します

設置済みデバイスに対する遠隔アップデート等
ソフトウェアな問題への対処を実現

36

世界のすべてを繋ぎたい
汎用/特定サービスとの連携

世界中で利用できる世界対応

統一IF
サイズ

セキュリティ
連携
サービス

クラウド
スケール

既存システムと連携しやすいフラットな仕組みを世界のどこでも使えるように提供

37

ご提供価格/方式
38

sakura.ioの利用料金

さくらが目指した価格帯• モジュール料金（LTE） 1万円以下• 月額基本料金100円以下

39

sakura.io 料金体系

つなぐ

初期費用（モジュール購入）
月額費用（回線、プラットフォーム利用）

貯める

連携する

8,000円
60円/月 ～

※料金はモジュール単位、正式版とβ版の通信モジュールは、電気的な仕様変更なし

40

sakura.io 料金体系（月額費用）
•基本料金



60円/月 ※毎月1万回分の通信が可能なポイントを付与•追加料金
 通信回数の追加、オプション機能の利用※特定のオプション機能を利用した場合は別途定額の追加料金がかかります

追加料金
オプション機能利用60円

sakura.io
利用開始

モジュール購入

通信回数追加100円

通信回数追加100円

モジュールB 基本料金

モジュールB 基本料金

60円

60円

モジュールA 基本料金

モジュールA 基本料金

モジュールA 基本料金

60円

60円

60円

N月

N+1月

N+2月

基本料金

5分に1回の通信なら、毎月60円で実現
より幅広いサービスへ適用可能

41

sakura.io 1回の通信に含めることができるデータ

1回の送受信データ（メッセージ）は、最大「128byte（8byte x 16）」■自動で付与されるデータ
・ モジュールID→ 通信モジュールが持つ一意のID

sakura.ioのデータ送信体系

メッセージ1
データ1

モジュールID
時間②

チャンネル番号…

・ 時間①→ データを送受信したタイミング

・ 時間②

時間①

データ1

時間②

型式

データ

型式

データ型式

データ

型式

データ

最大16個

チャンネル番号→ 各データをキューに格納したタイミング■利用者が指定するデータ
・ チャンネル番号→ 0〜127で任意の番号 ※送信/受信別枠

・ 型式

sakura.ioのデータ受信体系

メッセージ1

データ1

モジュールID

時間②・ データ→ 実際に送受信するデータの値（8byte）…

→ 数字、文字列などの型式チャンネル番号

データ1

時間②

最大16個

チャンネル番号

指定するデータ以外に自動付与される時間や型式といった情報も利用可能
送信回数での課金のため、複数データの一括送信等で送信回数の節約が可能 42

提供方式
提供方式

数量

販売経路

用途

備考

個包装

１個〜

店舗
ECサイト

個人利用
プロトタイプ生産
少量製品

アンテナ同梱トレイ

90個単位ECサイト
商社

少〜中量生産アンテナ無し自動化生産ライン
自社製品組み込み

初期費用＋
サポート費用

ハードウェア
ライセンス
応相談
プロトコル
ライセンス

お問い合わせください

独自設計マイコンに機能追加

ライセンス方式での提供で、より柔軟な設計製造が可能に
43

利用事例
44

広がる利活用分野

行政
教育
農業
健康新分野
製造
45

スマート水田サービス• スマート水田サービス「Paditch」• 水門に通信モジュールを装着し遠隔管理• 水位や時間による水門の開閉を設定可能• http://www.paditch.com/

46

害獣駆除

• イノシシやマングースの駆除に利用• 罠に通信モジュールを装着し動作状況を取得• LTEが不安定な場所ではゲートウェイを利用

http://pcn.club/katsuyama/azure201703/

http://knowledge.sakura.ad.jp/other/7902/

47

バス乗客リアルタイムオープンデータシステム• 鯖江市のコミュニティ
バス「つつじバス」• 運転手の操作盤に通信モジュールを装着し乗客数などを取得• 集計結果はオープンデータとして活用

https://www.sakura.ad.jp/press/2017/0330_sabae-tsutsujibus/
48

シニア向けIoTデバイス• シニア向けIoTデバイス「MAGOボタン」• 音声入出力とボタンを装備• くらしの情報を音声で通知• ボタンを押すと安否確認や固定メッセージを送信• http://pr.mago-btn.com/
49ゴミ集積状況の可視化• ハウステンボス内のゴミ集積状況の測定• ゴミ箱に通信モジュールを装着し集積量を測定• ゴミ箱の見回り回数削減• 将来はAIによる自動回収もデータ
連携
さくらインターネット
提供範囲

データ
通信

回収指示
赤黄
青50

無人物流プラットフォーム• 香川県で無人物流プラットフォームの実証実験• 輸送{機/船/車}に通信モジュールを装着して制御• 飛行機ではLTEが使えないのでLoRaを使用

http://www.kamomeya-inc.com/

51

シェアリングエコノミーを加速させる
スマートロックを中心としたプラットフォームカンパニー

2017/5/25(C) Copyright 1996-2016 SAKURA Internet Inc

52sakura.ioとOSSの組み合わせ53

sakura.ioの両端はオープン

電気信号とJSONを相互変換する
プラットフォーム
I2C/SPI

JSON

モノ/マイコンクラウド

sakura.ioの両端はオープンな通信方式とデータ形式を採用
54

デバイス側• I2C/SPIで通信できればよい• 接続用ボードを販売• Arduino用シールド• Raspberry Pi用HAT (開発中)• Arduino用ライブラリやサンプルプログラムも公開• http://www.arduinolibraries.info/libraries/sakura-io• https://github.com/sakura-internet/SakuraAlphaArduino55

インターネット側• sakura.ioで用意したAPIによりリクエストを送出{• 対応プロトコル/サービス"module": "XXXXXXXXX",• Websocket• Webhook (Incoming / Outgoing)• MQTT• DataStore API• AWS IoT
• Azure IoT Hub• URLの例"type": "channels","datetime": "2016-06-01T12:21:11.628907163Z","payload": {"channels": [{"channel": 1,"type": "i","value": 1,"datetime": "2016-06-01T10:21:11.628907163Z"}, {"channel": 2,…
}]}}• wss://api.sakura.io/ws/v1/(ID)• https://api.sakura.io/incoming/v1/(ID)• JSON形式のデータが返ってくる• 多数のプログラミング言語にJSONを扱うライブラリあり
56

利用例その1：Node-RED

温湿度データを取得しsakura.ioへ送出
マイコン（Arduino Uno）

さくらの通信モジュール

Websocketでデータを入手しNode-REDで処理
LTE
閉域網

WebSocket

仮想サーバ
Linux (CentOS)
温湿度センサ（HDC1000）57

Node-REDとは
Node-REDは「ノード」と呼ばれる機能の固まりをシート上で組み合わせ、ひとつの「フロー」にすることで、ほとんどプログラミングを知らない人でもプログラムを構築することができるツールです。
デプロイ

ノード
パレット

シート

Info/Debug
コンソール

58

Node-RED フローサンプルの紹介

59

取得した温湿度をTwitterに投稿

60

利用例その2：Zabbix

温湿度データを取得しsakura.ioへ送出
マイコン（Arduino Uno）

さくらの通信モジュール

Websocketでデータを入手しZabbixに投入
LTE
閉域網

WebSocket

仮想サーバ
Linux (CentOS)
温湿度センサ（HDC1000）61温度・湿度をZabbixでグラフ化

62まとめ63

今日お話ししたこと• IoTを取り巻く状況(簡単に)• データ収集方法が課題• IoTサービスを作るときの問題点• やりたいことに比べて付帯作業が多過ぎる• sakura.ioについて• 開発経緯 / サービス概要 / 利用事例

• sakura.ioとOSSとの組み合わせ• オープンな通信方式とデータ形式で利用可能
64

sakura.ioが目指す世界

通信⇔データ連携
さくらインターネットにおまかせ

通信 ネットワーク

DB

ミドル

API

モノとWebの間でデータを相互にやりとりするためのプラットフォームサービスを開発

既存の事業領域/スキルセットの大幅な変更なくモノ/サービスづくり、連携に注力可能

65

全国でさくらのイベントを！

• さくらのイベントを全国で開催したい！
• sakura.ioのハンズオン• さくらのクラウドなど各種サービスのハンズオン• さくらの夕べ / さくらクラブ など…
• 協力者求む！
• 会場の提供• 参加者集め
• 地元コミュニティとの共催も可66

そこに、さくら67