Sigfox接続機能 操作マニュアル

1. はじめに

本書では、Things Cloud Sigfox接続機能に関する操作について説明します。

Sigfox接続機能では、Sigfoxネットワーク事業者の提供する Sigfox Cloud と Things Cloud を接続するインターフェースを提供します。このインターフェースを用いることにより、Sigfox 対応デバイスを Things Cloud のデバイスとして登録し、データを可視化することができます。

一度 Things Cloud への接続設定を行えば、以後 Sigfox Cloud へのデバイス登録により Things Cloud に簡単に Sigfox 対応デバイスを接続することができます。

本書に含まれる内容は以下の通りです。 Sigfox対応デバイスを準備し、Things Cloud に接続するまでの一連の手順を記載しています。

表題 内容 備考
2. 利用条件 および 制約事項 Sigfox接続機能の利用条件及び制約事項を記載しています。
3. Sigfoxプロバイダー設定 Sigfox Cloudのアカウント情報をThings Cloudに登録します。 Sigfox Cloud - Things Cloud間通信の認証に必要な設定です。(テナント毎に設定が必要です。)
4. デバイスタイプ登録 Things Cloud にデバイスタイプ(デバイスがアップロードするフォーマットを定義したもの)を登録します。 新しいデバイスタイプのデバイスを接続する際に行います。
5. デバイス登録 デバイスをThings Cloud へSigfoxデバイスとして登録します。 Sigfoxデバイスの登録によりSigfox Cloudにも自動的にデバイス登録が行われます。
6. デバイスデータの確認 Sigfox対応デバイスからのデータが Things Cloud に接続されたかを確認します。 デバイス接続後、いつでも確認できます。
7. デバイスの操作 デバイスにコマンドを実行させるためのオペレーションを送信します。 デバイス制御のコマンドが用意されているデバイスのみに対応しています。
8. サブテナントでのSigfox接続機能利用 サブテナントにおいてSigfox接続機能を利用するために、Sigfoxアプリケーションをサブスクライブします。 Sigfox接続設定済の親テナントからサブテナントを作成し、サブテナントでSigfox接続機能を利用する場合には、サブテナントに対してSigfoxアプリケーションを追加します。
9. FAQと利用上の注意事項 Sigfox接続機能(Sigfox接続)利用時のFAQおよび注意事項を記載しています。

2. 利用条件 および 制約事項

  • Sigfox Cloudと Things Cloud の状態同期、および異常時のアラーム通知等により、本機能利用時は毎分 3 回程度のデバイスAPIコールを消費します。
  • prototype (Sigfox certificate ID を持たない)デバイスはサポート対象外です。
  • Things Cloud のデバイス管理からデバイス削除を行うことができますが、デバイスから Uplink がくると、自動的に再度デバイスが登録されてしまいます。
    • これを防ぐためには、手動で Sigfoxクラウド の callback を削除する必要があります。
  • Things Cloud からデバイス登録を行うと、Sigfoxクラウドへのデバイス登録が自動で行われます。この後、初回デバイス通信により回線のアクティベーションが行われ、回線契約形態により課金される場合があります。
  • Sigfox Cloudの仕様により、Things Cloud からデバイス登録後は、Sigfox Cloud上でアクティベートされたデバイスをSigfox Cloudから削除することは、基本的にはできません。
    • Things Cloudデバイス情報画面で削除(デプロビジョン)ボタンが表示されますが、機能しません。
  • 1回のデバイスからのデータ送信(Uplink)に対し、デバイスAPIは最低でも5回程度(cacheがない場合11回)カウントされます。
  • アンダースコアを含むテナント名は利用できません。(デバイス登録でエラーとなります。)
  • デバイスデータベース名称で利用できない文字種類があります。(&(アンパサンド) '(シングルクオーテーション), (バックスラッシュ), \"(ダブルクオーテーション), <(小なり), >(大なり)の計6種)
  • Sigfox Cloudでは、同じデバイスタイプ名を複数のcontractに登録することができないため、Things Cloudからデバイス登録をする際に、同一テナント内でデバイス登録時に使用済みのデバイスタイプを選択し、先に登録したデバイスと異なる Sigfoxの契約を選択すると、デバイス登録ができません。
    • これを防ぐためには、一度デバイスタイプをエクスポートし、インポートして別の名前で登録する必要があります。

3. Sigfoxプロバイダー設定

3.1. 事前準備

Things CloudにSigfoxプロバイダ設定を行う前に、まずはSigfox Cloud上で、APIを利用するために必要な認証情報(API ACCESS)を作成しておく必要があります。
以下の2つのステップを実行することで、Sigfox Cloudでのセットアップは完了します。

Step 1

※Step 1は、必要な権限を持った "Associated user"をまだ作成していない場合のみ、実行してください。
Sigfox Cloudにログインし、新しくユーザを作成します。ユーザを任意のグループに追加し、次の権限プロファイルを選択してください。

  • DEVICE MANAGER [W]

Step 2

"GROUP" ページから "Associated user" を作成したグループを選択し、 "API ACCESS" タブを選択したら、以下の権限プロファイルを設定した新しいエントリーを作成します。

  • Device Manager [R]
  • Device Manager [W]

Sigfox Cloudでのセットアップは以上です。

3.2 接続設定

ここからは Things Cloud で設定を行います。
管理アプリケーションを表示し、左側のナビゲータから「接続」を選択します。
「接続」画面の「Sigfoxプロバイダ設定」タブを選択した状態で表示される、下記の入力項目を設定します。

入力項目 内容 備考
ログイン Sigfox Cloud で作成した API ACCESS のログイントークン
パスワード Sigfox Cloud で作成した API ACCESS のパスワードトークン
親グループ ID Sigfox Cloud で作成した該当するグループのID Sigfox CloudでGROUPの一覧画面から該当するグループを選択した画面で、URLからIDを確認することができます。
例) “https://backend.sigfox.com/group/**9823ruj29j9d2j9828hd8**/info”

入力後、「資格情報を保存」ボタンを押します。

4. デバイスタイプ登録

4.1. デバイスタイプを新規に作成する場合

デバイス管理アプリケーションを表示し、左側のナビゲータから「デバイスデータベース」を選択します。
デバイスデータベースの画面で「新規」を選択します。

「デバイスタイプ」プルダウンから「Sigfox」を選択すると、画面に追加の入力項目が現れるので、それらに入力します。
なお、付録2でデバイスタイプの設定例を掲載しています。

入力項目 内容 備考
フィールドバスタイプ デバイスが対応する無線プロトコル Sigfoxを選択する。
名前 デバイスタイプの名前 デバイスの製品名称や型番などを入力する。
ソース メッセージのタイプが決定されるソース メッセージタイプが表されているペイロードの位置(開始ビットとビット長)を入力する。
デバイスメッセージのデコードロジック定義 追加を押下し、デバイスメッセージ仕様を元に以下を入力する。
・メッセージID: メッセージタイプを識別する数値
・名称: 測定対象等の名前
・表示カテゴリ: 測定対象等のカテゴリ
(例:Temperature Mode)
・開始ビット/ビット数: データ位置の指定
・乗数: データに乗算する場合に設定する値(デフォルト値は1)
・オフセット: データに加算もしくは減算する場合に設定する値(デフォルト値は0)
・単位: データの単位(任意入力)
・オプション: データ形式に応じて選択
・機能: 実行するアクションを選択 
(選択した機能に応じタイプ/シリーズ/テキスト等を入力)

入力後、「保存」ボタンを押します。

保存後、デバイスデータベースの画面上に以下のように表示されます。

4.2. デバイスタイプをインポートする場合

デバイスタイプをファイル(JSON形式)から取り込んで登録(インポート)することもできます。
JSON形式のデバイスタイプ情報は、テナントに登録済みのデバイスタイプがあれば、その情報を取得(エクスポート)して利用することもできます。

テナントに登録済みのデバイスタイプからファイルを取得する場合は、「デバイスデータベース」画面からエクスポートします。

インポート

「デバイスデータベース」画面の「インポート」を選択し、「デバイスタイプのインポート」画面を表示します。

ファイルを指定し、必要であれば名前を変更します。「インポート」ボタンを押して、登録します。

5. デバイス登録

デバイス管理アプリケーションの左のメニュー「登録」を押下し、「デバイスを登録」ボタンを押下します。

「Sigfox」を押下します。

注記: LoRaWAN接続機能も利用している場合は、「カスタムデバイス登録」と表示されます。

表示された入力フォームに必要事項を設定します。

入力項目 内容 備考
ID デバイスを一意に識別する値 一意な16進数の値です。通常、Sigfox対応の通信モジュールに工場出荷時に書き込まれています。
PAC 移植認証コード Sigfoxクラウドへのデバイス登録時に必要な、16進数のワンタイム認証コードです。初期値は通常、Sigfox対応の通信モジュールに工場出荷時に書き込まれています。
契約 Sigfoxクラウドの契約情報 デバイス登録を行う契約情報を選択します。
デバイスタイプ 項目3で設定したデバイスタイプを選択 登録したいデバイスと対応するものを選択してください。
製品の証明書キー Sigfox Ready certificate(P2認証)の認証番号 P_から始まる番号で、Sigfox Partner networkサイトからも確認可能です。

入力後、「次へ」ボタンを押します。正常に登録されると、以下のように表示されます。

デバイス一覧からも、登録したデバイスが確認できるようになります。

デバイス登録後、Sigfox Cloudへ自動的にデバイス登録が行われます。Sigfox Cloudへデバイスが登録されることをデバイスのプロビジョニングと呼びます。

6. デバイスデータの確認

デバイスからのデータは、イベントとして Things Cloud に格納されます。
デバイス管理アプリケーションから、該当デバイスを選び、計測値やイベントを見ることでデータの到着を確認することができます。

イベントには Sigfox の payload がヘキサ文字列として "com_Sigfox_UnprocessedDataEvent.data" プロパティに格納されます。
デバイスデータベースでのデバイスタイプ設定に関わらず、以下のデータはSigfoxデバイスからのデータアップロード時に共通して作成されます。

  • event: c8y_SigfoxDeviceRegistration(プロビジョン完了時1回のみ)
  • event: com_sigfox_UnprocessedDataEvent
  • measurement: c8y_SignalStrength

7. デバイスの操作

7.1. 事前準備

downlinkによってオペレーションを送信するには、Sigfox Cloudのcallback設定のdownlinkを有効にします。

次に、callbackの設定を変更します。変更対象は、SERVICE callbacks - Acknowledge のみです。

Bodyの値を以下のように変更してください。

  • 変更後

      {"device":"{device}","time":"{time}","infoCode":"{infoCode}","infoMessage":"{infoMessage}","downlinkAck":"{downlinkAck}","downlinkOverusage":"{downlinkOverusage}"}
      
  • 【参考】変更前

      {"device":"{device}","time":"{time}","duplicate":"{duplicate}","avgSnr":"{avgSnr}","station":"{station}","lat":"{lat}","lng":"{lng}","infoCode":"{infoCode}","infoMessage":"{infoMessage}","downlinkAck":"{downlinkAck}","downlinkOverusage":"{downlinkAck}"}
      

Sigfox Cloudでのセットアップは以上です。

7.2. コマンドの送信

ここからは Things Cloud で操作を行います。
デバイス管理アプリケーションを開き、オペレーションの送信先となる該当デバイスを選択します。次に"シェル"タブをクリックします。

シェルコマンドを入力するか、または">_定義済みのコマンドを取得"項目で定義済みのコマンドを表示/編集します。
"実行"をクリックすると、デバイスへのオペレーション送信待機状態となります。

送信待機状態のコマンドが送信されるタイミング

デバイスから送信されたデータに "ack=true" が含まれているcallbackを受信すると、そのHTTPレスポンスとして、保留中となっているコマンドが送信されます。
デバイスから"ack=true"が送信されるタイミングは、デバイスによって決められています。また、Sigfoxサービスの契約内容によって1日に送信可能なDownlinkの上限回数が異なります。

ステータス

Sigfox Cloudへの送信が成功すると、以下のようにステータスが"成功"に変わります。

注記:Sigfox基地局からデバイスへdownlinkが送信された場合に、ステータスが"成功"となります。(デバイスにコマンドが到着したかどうかまでは確認できません。)

定義済みコマンド

頻繁に利用するコマンドなどを定義済みのコマンドとして保存し、利用時に取得して送信することが可能です。
コマンドを新規に定義するには、"定義済みのコマンドを取得"を押し、"新規追加"を押します。

名前、カテゴリ、コマンドを入力し、"保存"します。

定義済みのコマンドを送信する場合、前の画面に戻り、定義済みのコマンドを選択し"実行"を押します。

8. サブテナントでのSigfox接続機能利用

Sigfox接続機能を利用中の親テナントから作成したサブテナントで、Sigfox接続機能を利用するために必要な事前設定です。
管理>サブテナント画面から、Sigfox接続機能を利用するサブテナントを選択します。

"アプリケーション"のタブを押し、右側の利用可能なアプリケーションから"Sigfox-agent"を選択したときに表示される登録ボタンを押します。

左側の登録済みアプリケーションに"Sigfox-agent"が追加されます。

サブテナントでSigfox接続機能を利用するために必要な事前設定は以上です。

9. FAQと利用上の注意事項

9.1. FAQ

No. Q A
1 Things Cloud 内でのデバイス名は? 初期デバイス名は SigFox device {デバイスID} の形式になります。例えば、デバイスID が 0017B46C であった場合、SigFox device 0017B46C となります。
2 デバイス名は変えられないの? デバイスが登録された後、自由に名称を変更することができます。変更しても、デバイス管理アプリケーションからデバイスを選択し、「アイデンティティ」から デバイスID 値を確認することができます。
3 デバイスからデータが送信されていないことを検知するには? 通常の Things Cloud 利用の場合と同様、可能です。デバイス管理アプリケーションからデバイスを選択し、「情報」タブを選び、「接続の監視」セクションの要求間隔に値を記入することで、その時間内にデータ送信がない場合にアラームを発生させることができます。

9.2. トラブルシューティング

こちらを参照してください。