ゲートウェイにて収集されたデータはMODE Cloudにて管理されます。MODE プラットフォームのAPIを利用することで外部のアプリケーションから参照したり、外部アプリケーションからデータを登録したりすることができます。


データストア

MODE Cloudではアプリケーションの用途に応じた様々なデータストアを提供しています。Mobility Cloud では、センサーデータの管理にTSDB(時系列データベース)、動画データの管理にVideo smart moduleを利用します。外部のアプリケーションは各Smart Moduleが提供するAPIを利用することで各データにアクセスすることができます。


Smart Module

用途と使い方

TSDB

位置情報などのセンサーデータの管理で利用。

https://dev.tinkermode.com/platform/console-manual/time-series-database

Video

動画データの管理で利用。

https://dev.tinkermode.com/platform/console-manual/video


時系列データ

センサーデータは、TSDBに保存されます。TSDBが提供するAPIを利用することで、外部のアプリケーションからも取得して利用することができます。


Collection IDの命名規則

Mobility Cloud では、センサー毎にコレクションを分けてデータを管理します。各コレクションのID (Collection ID) には以下の命名規則があります。


{Data type name}:asset-{Asset ID}


Data type nameはデータの種類を表します。Asset IDは測定対象のアセットのIDを表します。


Collection IDの例

意味

location:asset-1234 

アセット#1234の位置情報

sleepbuster:asset-345

アセット#345のスリープバスターのデータ


データの種類

Mobility Cloud の標準アプリケーションでは以下のデータの種類に対応しています。session, event, location は必須のデータとなります。


Data Type Name

説明

session

データの取得を開始したとき(例:ゲートウェイの電源が入ったとき)の日時が記録されます。

event

危険運転や眠気といった事象を検出したときに記録されます。詳細は、インシデントの管理をご確認ください。

acceleration

加速度のデータ。標準では10秒毎の最大値が記録されます。

location

位置情報。標準では10秒毎の最新値が記録されます。

environment

温度、湿度などの環境情報が記録されます。

sleepbuster

スリープバスターのデータが記録されます。

obd2

OBD-IIから取得したデータ。標準では10秒毎の最新値が記録されます。


各Collectionでは、日時(timestamp)の他に、以下に示す数値データ(valueNames)とタグ(tagNames)を持ちます。値が不明な場合や未定義の場合、0 または 空白文字列が入ります。


session

valueNames

assetId

データ取得を開始したときのAsset ID。
不明な場合は0。


deviceId

データ取得を開始したときのDevice ID。
不明な場合は0。


operatorId

データ取得を開始したときのUser ID。
不明な場合は0。

tagNames

(無し)



event

valueNames

assetId

事象が発生したAsset ID。不明な場合は0。


heading

事象が発生したときの進行方向。不明な場合は0。


lat

事象が発生した緯度。不明な場合は0。


lon

事象が発生した経度。不明な場合は0。


operatorId

事象を発生させたUser ID。不明な場合は0。


speed

事象が発生した速度。不明な場合は0。


type

Event Type。インシデントの管理を参照のこと。

tagNames

addr

通常時はブランク(空白文字)。


name

Event Name。インシデントの管理を参照のこと。


timestamp

事象が発生した日時


uuid

事象を識別するユニークなID。UUID。


value

Event Value。インシデントの管理を参照のこと。


location

valueNames

heading

方向 (GPS bearing)


lat

緯度


lon

経度


speed

速度 (km/h)

tagNames

(無し)



acceleration

valueNames

x

進行方向加速度 (g)


y

左右方向加速度 (g)


z

垂直方向加速度 (g)

tagNames

(無し)



environment

valueNames

ambientLight

環境光 (lx)


co2

CO2 (ppm)


pressure

大気圧 (hPa)


relativeHumidity

湿度 (%)


seq

データ連番。無い場合や不明な場合は0。


soundNoise

騒音 (dB)


temperature

室内温度 (°C)


tvoc

TVOC (ppb)


uvIndex

UV Index (Omronセンサー固有値)

tagNames

addr

任意。センサーデバイスのアドレス。


name

任意。デバイス名。


sleepbuster

valueNames

condition

判定結果


conditionMapX

体調マップX


conditionMapY

体調マップY


elapsedTime

経過時間(秒)


feelingMapX

感覚マップX


feelingMapY

感覚マップY


invalid

通常時は0。想定外のデータを受信したときに1。


peakFreq

peak周波数変動


peakSlope

peak周波数傾き


peakTiredness

peak疲労値


touch

画面タッチ


triage

休息トリアージュ結果


zeroFreq

0x周波数変動


zeroSlope

0x周波数傾き


zeroTiredness

0x疲労値

tagNames

line

Sleep Busterから受信した元のデータ文字列


obd2

valueNames

engineCoolantTemp

エンジンクーラント温度 (°C)


engineLoad

エンジン負荷 (%)


engineRPM

エンジン回転数 (rpm)


fuelTankLevelInput

燃料タンクレベル (%)


massAirFlow

マスエアフロー (grams/sec)


speed

速度 (km/h)


throttlePosition

スロットル位置 (%)

tagNames

(無し)



補足事項:

Data Typeやそのデータ項目は各プロジェクトごとに自由に追加することができます。ただし、標準UIアプリケーションでは追加した項目は表示されません。UIアプリケーションのカスタマイズまたは独自UIアプリケーションの開発が必要となります。


インシデントの管理

Mobility Cloud では、ゲートウェイやセンサーが検知した危険運転や眠気といった事象を「イベント」としてTSDBの “event”  Collectionの中で管理します。(MODE Cloudがデータの送受信で利用するEventとは異なります。)


標準で以下のイベントタイプを規定しています。独自のイベントを追加したい場合、Event Typeは9000番台を利用してください。Event Nameにはセンサーデバイスの名称など、わかりやすい任意の文字列を設定してください。


Event Type

Event Name

説明

1101

Unsafe Driving

急ブレーキ

1102

Unsafe Driving

急加速

1103

Unsafe Driving

急ハンドル

1201

Unsafe Driver Condition

眠気・疲労 (Sleep Buster)

2001

BTN01 (ボタンのデバイス名)

ボタンプッシュ (Braveridge)


Event ValueにはEvent Typeに応じた値(JSONオブジェクトの文字列)がセットされます。


Event Type

Event Value

説明

11xx

{"gx":%.2f,"gy":%.2f}

X方向加速度とY方向加速度

1201

{"triage":%d,"condition":%d}

判定結果と休息トリアージュ結果

2001

“click” “double click” “long press”

文字列


補足事項: Event Typeの先頭2桁には以下の通りの意味があります。

  • 1xxx: unsafe event

  • 11xx: unsafe driving event

  • 12xx: unsafe driver condition event

  • 2xxx: driver's operation event (e.g. button push)

  • 9xxx: project specific event


データの登録方法

MODE Cloudが提供するAPIを利用することでMODEのゲートウェイの代わりに外部アプリケーションションからデータを登録することができます。データの登録方法には以下の2種類があります。具体的な手順は、APIを使ったデータの管理の例をご覧ください。


方式

説明

Event の送信

プロジェクトAPIキーを使いREST API (put /homes/{homeId}/event)に、"timeSeriesData" イベントを送信する方式。デバイスAPIキーを使うこともできる。(put /devices/{deviceId}/event)


HTTPで呼び出しができるため実装が容易。ただし、大量のデータ登録には利用できない。100件/秒が上限の目安。

Bulk Data Upload

Deviceからのみ利用できる方式。MQTTプロトコルを利用し、1回の送信で1MBまでのデータを送信することが可能。


動画は本方式でアップロードする必要がある。


補足事項:

データの登録には、プロジェクトAPIキーまたはデバイスAPIキーが必要です。そのため、スマホアプリ含む外部のデバイスからデータをアップロードする場合、予めそのデバイスを1台ずつMODEのデバイスとして登録しておく必要があります。ユーザーのAPIキーではデータの登録はできません。