2017 年 2 月 ver.1.2
さくらの IoT プラットフォーム利用マニュアル

1. さくらの IoT プラットフォームとは「さくらの IoT Platform」とは、通信環境とデータの保存や処理システムを一体型で提供する IoT のプラットフォームです。「さくらの IoT 通信モジュール」（※以下通信モジュール）と、キャリアネットワークを接続した閉域網によって、安全にデータベース、ルールエンジンを含むバックエンド、外部のクラウドやアプリケーションサービスと連携させることができます。また外部から簡単に操作できるAPI も提供しています。

1.

さくらの IoT プラットフォームとは ........................................................ 1

2.

対象読者 ........................................................................................... 3

3.

注意 ................................................................................................. 3

4.

警告 ................................................................................................. 3

5.

禁則事項 ........................................................................................... 36.

利用概要 ........................................................................................... 47.

A.

取り出し/確認 .............................................................................. 5B.

起動 ........................................................................................... 5C.

登録（モジュール/サービス） .......................................................... 6i.

コントロールパネルへのログオン ...................................................... 6ii.

モジュールの登録について............................................................... 7iii.

プロジェクト/サービスの作成 ......................................................... 8iv

モジュールの登録. ........................................................................ 18D.

API について ............................................................................. 21

E.

マイコンとの接続 ........................................................................ 23
参考 ............................................................................................... 24

2

2. 対象読者
本マニュアルは、さくらの IoT プラットフォームを利用し、IoT 機器の製品開発をされる方向けに書かれています。このマニュアルは利用するためには、組み込むボード、通信等の用語、API の利用に関する知識が必要になります。各社ボードの仕様および、それらの利用方法については各社にお問い合わせください。

3. 注意
通信モジュールには、通信キャリアの SIM が組み込まれています。このため、同梱されているアンテナ以外の取り付け、飛行物体等上空での利用については法律上の制限がありますので、ご注意ください。また、現在利用可能なプラットフォームは β 版となっているため、予告なく仕様の変更修正が実施されることがあります。

4. 警告

この製品は、さくらの通信モジュールの評価および試験研究に用いられることを意図したものであり、一般消費者あるいは産業向けの最終製品において通常要求される安全性、信頼性、適合性等が、設計上、販売上、およ び製造上、考慮されているものではありません。購入者側の責任で、意図されていない用途にこの製品を使用さ れた場合、当社はいかなる責も負いかねますのでご了承ください。

5. 禁則事項
分解、パーツ単位での利用、逆アセンブル等リバースエンジニアリングに類する行為、接続方法（ID/PASS）・接続経路等の公開、下記規約に反する行為。
・販売規約
・SIM カード貸与規約
・ソフトウェア使用許諾規約
その他さくらインターネットが適切ではないと判断する行為。

3

6. 利用概要
通信モジュールは、さくらの IoT プラットフォームに接続／登録することによって、データ通信が可能になります。出荷時は未登録となっており、そのままでは利用することができません。未登録の状態でデータ通信をしても、データはすべて破棄されます。ここでは、通信モジュールと Arduino シールドとの接続をし、実際に利用ができるようになるまでについて説明をしています。
ご購入いただいた通信モジュール、Arduino シールド、ブレイクアウトボードのパッケージには、マイコン、センサーは同梱されていません。またマイコンとセンターの取り付け、設定方法などについては、記載されていません。本書では、マイコンとして Arduino Uno を利用していますので、必要に応じて購入してください。
・Arduino Uno
https://www.switch-science.com/catalog/list/?keyword=arduino

🔳さくらの IoT プラットフォーム通信モジュールの利用順序
手順

STEP１

STEP２

STEP３

STEP４

作業等

起動

登録

通信確認

マイコン接続インターネットアクセス可能
必要物品

Arduinoな PC
さくらインターネット会員 ID／PASS

4

ArduinoA. 取り出し/確認
さくらの通信モジュール、Arduino シールド、ブレイクアウトボードは、それぞれビニールのパッケージに入って送付されています。
※取り外しの際、手などを傷つけないようご注意ください。

内容物については、それぞれ下記の通りとなります。
さくらの通信モジュール -β版
・モジュール基板 - 数量：1・アンテナ- 数量：2・アンテナケーブル - 数量：2Arduino シールド -β版
・Arduino シールド基板 - 数量：1・両面粘着シート - 数量：1・アンテナプレート - 数量：2・樹脂スペーサー - 数量：2・ネジ - 数量：4・ジャンパー - 数量：10

ブレイクアウトボード -β版
・ブレイクアウト基板 - 数量：1・両面粘着シート - 数量：1・ジャンパー - 数量：1

B. 起動
通信モジュールは、接続されているマイコンから電源を取得しています。ご用意いただいた Arduino と通信モジュールをしっかりと接続し、Arduino の電源を投入します。

※ うまく通信ができない場合は圏外の可能性もありますので、電波状況の良い場所に移動するなどをお願い致します。SoftBank 4G のサービス提供エリアで利用可能です。

5

C. 登録（モジュール/サービス）i.

コントロールパネルへのログオン
以下の URL からコントロールパネルにアクセスします。
→ https://secure.sakura.ad.jp/iot/

注意：コントロールパネルへのログオンには、さくらインターネットの会員 ID とパスワードが必要になります。お持ちでない方やお忘れの方は、取得をお願い致します。
→ https://secure.sakura.ad.jp/member-regist/input
注意：モジュールには 100 万 RP がバンドルされていますが、コントロールパネルでモジュールを追加した時点で、RP がアカウントに対して紐付き、以降、別のアカウントへは移行できなくなります。

※ RP：プラットフォームを使用するために必要なポイントとなります。β 版ではRP の消費はありません。

6初回のみ、約款同意画面が表示されます。

各約款を確認の上、「同意する」ボタンをクリックします。

ii.

モジュールの登録について

さくらの IoT プラットフォームは、『プロジェクト』、という管理理単位で通信モジュールを管理理しています。プロジェクトに通信モジュールを登録し、それぞれどのような連携をするのかを指定していくといった流れになります。
2017 年 02月01⽇現在、下記のサービスが選択可能となっており、今後も随時追加していく予定です。
WebSocket：双⽅向通信を実現する
OutgoinWebhook：特定のサーバーにデータを送信する
IncomingWebhook：特定のサーバーからデータを受信する
MQTT Client：お客様側で用意していただいた MQTT ブローカーとデータを送受信する
DataStore(β)：
AWS IoT：AWS IoT とデータを送受信する

7

iii.

プロジェクト/サービスの作成「新規プロジェクト」ボタンをクリックして、新しいプロジェクトを作成します。

ここでは、Example という名称のプロジェクトを作成します。
名称が入力できたら「作成する」ボタンをクリックし、プロジェクトを追加します。

8

続いて、『＋サービス追加』をクリックして連携サービスを追加します。

ここでは、データを通信モジュール側に送信する Incoming Webhook を選択します。

9

ここでは TEST という名前のサービスを作成します。

「作成する」ボタンをクリックすると、URL など確認画面が表示されますので、「保存する」ボタンをクリックし、設定を保存してください。
保存後は、「戻る」をクリックする事で、はじめの画面に戻れます。

10

WebSocket、Outgoing Webhook サービスも同様に作成可能です。

▲WebSocket▲

Outgoing Webhook

11

MQTT Client
MQTT Client は、お客様で用意していただいた MQTT ブローカーにさくらの IoT
Platform がクライアント(Publisher/Subscriber)として接続しにいくことでモジュールとのデータ送受信を可能にします。

名前：任意
ホスト名(必須)：MQTT ブローカーの稼働しているホスト名 or IP アドレス
ポート番号(必須)：標準は 1883(TLS 有効時は 8883)ですが、MQTT ブローカーの設定により設定してください。
ユーザー名、パスワード：これらに何らかの文字列が入力されている場合 MQTT のユーザー

12

認証が有効となります。また、TLS を設定しない限り平文で送信されます。
Publish する Topic のプレフィックス：さくらの通信モジュールから送信されてきたメッセージが Publish されるトピックを指定します。
"指定したトピック/モジュール ID" という形のトピックに WebSocket などで使用している
JSON が Publish されます。また、Publish は QoS Lv0 で行われます。
Subscribe する Topic：ここで指定されたトピックをさくらの IoT Platform 側 MQTT
Client が Subscribe します。
MQTT ブローカーに接続した他のクライアントからここに JSON が Publish された際に、JSON をプラットフォームが取り込んで通信モジュール側に送信します。
なお、トピック名にワイルドカードはご利用いただけません。また、Subscribe は QoS Lv0で行われます。

「TLS による接続の保護を行う」に、チェックを入れる事で、TLS による暗号化が有効化されます。

※TLS が有効化されている場合、ルート証明書(PEM 形式)の入力は必須となります。

13

また、「クライアント証明書による認証を有効化」にチェックを入れる事で、クライアント証明書および、クライアント秘密鍵を入力する欄が表示されます。

■注意事項
MQTT Client 連携サービスでは QoS Lv0 での Publish/Subscribe にのみ対応しています。
subscribe するトピックにワイルドカードは使用できません。
publish 先トピックと subscribe するトピックの重複は許可されません。
禁止されているトピックの例
・publish 先 sakura/hoge/ subscribe するトピック sakura/hoge/(重複禁止)
・subscribe するトピック sakura/hoge/#(ワイルドカードを含む)

14

DataStore (β)
さくらの IoT Platform では、新たに蓄積データの活用として【DataStore】を提供しています。

[名前]は任意の名称を入力し、[作成する]をクリックします。

[名前]は任意の名称を入力し、[作成する]をクリックすると、Token および API ドキュメントの URL が生成されます。

15

API ドキュメントの URL に遷移すると、[ /messages ]と[ /channels ]の二種類のAPI が用意されています。
API の使い方は以下のドキュメントを参照してください。

▼Sakura IoT Plartform DataStore API (experimental)https://api.sakura.io/datastore/v1/docs/[ /messages ]は蓄積されたデータを RM 単位で取得します。RM に含まれる複数チ
ャンネルのデータの関係性が重要な場合に活用しやすい形式です。
[ /messages ]には通信モジュールの接続および切断の情報も含まれています。

[ /channels ]は蓄積されたデータをチャンネル単位で取得します。単体のデータを複数の形式（入力時の形式[value]、数値[value_num]、文字列[value_str]）で格納しているため、単体でも価値のあるデータが活用しやすい形式となっています。

16

AWS IoT
お客様で用意していただいた AWS IoT のインスタンスにさくらの IoT Platform がクライアント(Publisher/Subscriber)として接続しにいくことにでモジュールとのデータ送受信を可能にします。

名前：任意
ホスト名：AWS 側のホスト名 or IP アドレス
ポート番号：任意。デフォルトでは TLS 通信標準の 8883 が入っています。
Publish する Topic のプレフィックス：さくらの通信モジュールから送信されてきたメッセージが Publish されるトピックを指定します。
Subscribe する Topic：ここで指定されたトピックをさくらの IoT Platform 側 がSubscribe します。
TLS：AWS 側で取得した CA 証明書、クライアント証明書、クライアントを入力します。

17

iv.モジュールの登録
手元に、さくらの通信モジュールを用意し、「モジュール登録」ボタンを押します。

※通信モジュール出荷時は下記のように、登録用 ID、パスワードがシールによって保護されています。シールをはがし、ID、パスワードをご確認ください。

18

「モジュールの追加」画面にて、必要事項を記入します。

登録用 ID：通信モジュールに記載されている ID を⼊⼒します。
登録用パスワード：通信モジュールに記載されているパスワードを⼊⼒します。
名称：任意の文字列を⼊⼒してください。
プロジェクト：プルダウンから、通信モジュールを紐付けたいプロジェクトを選んでください。

必要な情報を入力後、「追加する」ボタンをクリックする事でモジュールが登録されます。

19

v. 確認 正常に登録されるかどうかを確認します。
下記のように画面が表示されると、さくらの IoT 通信モジュールが利用可能な状態となります。

20

D. API について
API キーの取得方法
ほとんどのさくらの IoT Platform API は、呼び出すために Token と Secret という2 種類のデータが必要になります。

コントロールパネルの右上にある、会員 ID の表示をクリックすると「API キー」、各種 API ドキュメントへのリンク、「ログアウト」のメニューが出てきますので、「API キー」をクリックします。

画面遷移後、画面右上の「+」マークをクリックすると、API キーの追加画面に遷移します。

21

名前欄を任意の文字列で入力し、アクセスレベルを、全権限、サービス連携の変更、読み取り権限のうちから選択して「作成する」をクリックします。

Token と Secret が表示されます。
また、ここではプルダウンから、アクセスレベルを変更する事が可能です。

22

E. マイコンとの接続
マイコンとの接続方法には以下の 2 種類があります。
1. Arduino シールドを使う
2. ブレイクアウトボードを使う
それぞれの接続方法について以下で説明します。

Arduino シールドを利用する
Arduino やその互換機などと接続したい場合に最適です。ボードに積み重ねるように接続するだけで配線が完了します。詳細は取り扱い説明書にてご確認ください。

▼Arduino シールド 取り扱い説明書
https://iot.sakura.ad.jp/developer/pdf/sco-ard-01_manual.pdf

ブレイクアウトボードを使う
ブレッドボードにモジュールを接続したい場合に最適です。詳細は取り扱い説明書
にてご確認ください。

▼ブレイクアウトボード 取り扱い説明書
https://iot.sakura.ad.jp/developer/pdf/sco-bb-01_manual.pdf

通信確認 Arduino を用いて動作確認する場合 (Arduino 向けライブラリの利用)
さくらの IoT Platform では、Arduino で使用可能なライブラリを提供しています。
ライブラリ内にはいくつかのサンプルスケッチ、及び、FirmwareUpdate、Shell という二つのツールが格納されています。

【使用方法】
https://github.com/sakura-internet/SakuraIOArduino

上記 URL からライブラリをダウンロードし、Arduino IDE で「SakuraIO」内に含まれるサンプルスケッチを開きます。これらのサンプルスケッチをコンパイルして23

Arduino に書き込むと、さくらの通信モジュールを利用するためのサンプルプログ
ラム。およびツールが起動します。

【ツールの説明】・FirmwareUpdate
通信モジュールのファームウェアを最新にアップデートします。
・Shell
シリアルモニタからのコマンド操作を提供します。改行を[CR のみ]とした後、提供されているコマンドを手入力で確認することができます。

7. 参考取り扱い説明書▼さくらの通信モジュール（β版）取扱説明書
https://iot.sakura.ad.jp/developer/pdf/sakura_module_manual.pdf▼Arduino シールド 取扱説明書
https://iot.sakura.ad.jp/developer/pdf/sco-ard-01_manual.pdf▼ブレイクアウトボード 取扱説明書
https://iot.sakura.ad.jp/developer/pdf/sco-bb-01_manual.pdf

回路図▼Arduino シールド 回路図 -Β版
https://iot.sakura.ad.jp/developer/pdf/sco-ard-01_sch.pdf▼ブレイクアウトボード 回路図 -Β版
https://iot.sakura.ad.jp/developer/pdf/sco-bb-01_sch.pdf

24