ユースケースを基にしたダッシュボードの設定方法
はじめに
本レポートは、Things Cloud の利用例をより知っていただくための実利用レポートとして作成したものです。 Things Cloud は極力後方互換性を持つよう開発されていますが、今後のリリースにより、一部画面やコマンド、手順などが変更となったり、 利用できない可能性があることをあらかじめご了承ください。 なお、作成にあたり、以下バージョンを用いています。
- ver 1006.6.32 (backend)
本レポートは、Things Cloud の利用例をより知っていただくための実利用レポートとして作成したものです。 Things Cloud は極力後方互換性を持つよう開発されていますが、今後のリリースにより、一部画面やコマンド、手順などが変更となったり、 利用できない可能性があることをあらかじめご了承ください。 なお、作成にあたり、以下バージョンを用いています。
本レポートでは、Things Cloudをよりよく知っていただくために、デバイスの位置に焦点をあてたユースケースを用いた画面の構築方法等について解説します。
概念や機能の大枠は理解しているが、実現したいことに対し、Things Cloudでどのような設定をするかのイメージを持っていただくことを目的としています。
また、本レポートではプリセットのシミュレーターを利用していますので、一緒に手を動かし同じようなダッシュボードを構築することもできます。
本レポートを読まれた後には、ぜひStep2 機器監視ユースケース もお読みいただくことをお勧めいたします。
本レポートの構成は以下の通りです。
工事現場で重機の位置を把握したい
以下は実現したいユースケースのイメージ図です。このイメージ図を元にシステムを構築していきましょう。
本レポート完了時に、以下のようなダッシュボードが完成します。
グループダッシュボード
デバイスダッシュボード
Things Cloudでの実現方法検討に入る前に、IoTシステム導入により実現したいことを実現するための大まかなシステム構成(全体アーキテクチャ)を考えます。
例えば以下のような要素を洗い出しておくと良いでしょう。
上記について洗い出し、実現したいことの全体像を明らかにしていきます。以下のような一枚絵が描ける程度の詳細度で問題ありません。
アセット管理についての詳細は以下ををご参照ください。
次に、要件をもとにデータモデルを定義し、Things Cloudの機能を使って、どのように実現できるか考えます。
デバイスからアップロードする時系列データとしてメジャーメント(計測値)、イベント、アラーム について、データモデルを考えます。
詳細は、ドメインモデルをご参照ください。
データモデルの使い分けを考えます。
イベント vs アラーム
両者とも何かが起きたことを通知するイベントであるのに対して、アラームは人の対応を要するため、コックピットで何らかのアラームが発生したことを知る方法は複数あり人が検知しやすく設計されており、アラームをクリアしなければアクティブのままとなります。
アクティブであるアラームは、コックピットのアラーム画面やデバイスグループのアラームタブをはじめとし、デバイスのピンの色などでも表現されます。
重機のジオフェンス外への進入や重機故障など、管理者への通知を要するようなイベントデータをアラームとして扱うと良いことが多いです。
詳細は、Alarm の利用について > アラーム各値の付与基準 > アラーム vs イベントをご参照ください。
イベント vs メジャーメント(計測値)
Things Cloudではメジャーメントの数値データを使って、データポイントデータとしてさまざまな可視化を実現しています。データポイント系のウィジェットはもちろんのこと、SCADAウィジェットなどで最終報告されたメジャーメントの値をマッピングし表示することができます。
イベントでは対象日のイベント数をウィジェットにマッピングすることは可能ですが、基本的にはどのようなイベントが発生したかをイベントリストで確認します。イベントデータをストリーム処理などで別のデータタイプに変換したりなど、データを汎用的に取り扱うと良いことが多いです。また、イベントデータはバイナリデータを1つ添付することができるため、何らかのイベントに対するCSVデータやメディアデータなど関連付けて格納することができます。
詳細は、バイナリをご参照ください。
メジャーメントのフラグメントタイプはカスタムで設定することができ、typeなども含めて検討しておくと良いでしょう。
詳細は、センサー・ライブラリをご参照ください。
要件を基にデータモデルを考えた後、要件を実現するための機能、またその用途、各機能で表示対象となるデータ、設定値は何かを考えます。
要件に完全に当てはまる機能がない場合でも、標準機能の組み合わせによって実現できないか考えてみると良いです。
デバイスデータのタイプ別に可視化に適したものをグルーピングした下記の標準ウィジェット一覧から考えます。
参考: デバイスデータのタイプ別に可視化に適したものをグルーピング
c8y_GeofenceAlarm
アラームのように、どのようなアラームが発生したかわかりやすいタイプを設定する(テキストも同じ)スマートルールの詳細に関してはスマートルールをご参照ください。
地図上にデバイスのピン(位置)を表示するには、デバイスの位置を設定する。
地図上にデバイスの移動軌跡を表示するには、トラッキングデータをイベントデータで送信する。
デバイス管理画面で地図に関する表示のまとめとして、デバイス管理画面での表示を確認する。
参考 上記にはシミュレーターを利用できます。
詳細は、シミュレーターの操作をご参照ください。
デバイスの位置は、マネージドオブジェクトのフラグメントc8y_Position
として地理的な位置を緯度、経度および高度として管理します。
※ シミュレーターにはデフォルトで設定されてます。
デバイスのマネージドオブジェクトにフラグメントc8y_Position
を追加します。
PUT <<url>>/inventory/managedObjects/<<deviceId>>
{
"c8y_Position": {
"alt": 67,
"lng": 6.15173,
"lat": 51.211977
}
}
詳細は、位置確認特性をご参照ください。
タイプc8y_LocationUpdate
の位置更新イベントを作成し、デバイスの位置を追跡します。現在のデバイスの位置も更新する必要があります。
POST <<url>>/event/events
{
"c8y_Position": {
"alt": 67,
"lng": 6.75933,
"lat": 51.224464
},
"time": "<<作成日時>>",
"source": { "id": "<<deviceId>>" },
"type": "c8y_LocationUpdate"
}
デバイス管理画面でも位置の設定や、追跡ができます。
対象デバイスのデバイス詳細を表示し、右メニューの参照から「位置を追加」をクリックすると c8y_Position
フラグメントが、マネージドオブジェクトに追加され位置タブと追跡タブが表示します。(位置の値はデフォルト値が設定されます。)
情報タブのデバイスデータの編集からもフラグメントを追加することができます。
デバイス詳細の位置タブを表示し、「位置を編集」から位置を更新します。
デバイス詳細の追跡タブを表示し、イベントの追跡を確認します。イベントの追跡は時系列データのため、日付での絞り込みが可能です。
詳細は、デバイス詳細の位置をご参照ください。
業務オペレーター向けにデバイスからのデータを可視化するために、コックピットを設定します。
コックピットの詳細についてはコックピットをご参照ください。
大まかなシステム構成を考えるで検討したアセット構成を元に作成します。 以下の構成と想定した上で、グループを作成し、グループへデバイスを所属させます。デバイスグループは任意で設定可能です。
グループについてはアセット管理をご参照ください。
ダッシュボードの作成についてはダッシュボードをご参照ください。
ウィジェットの一覧についてはウィジェットコレクションをご参照ください。
クリア済み
のチェックを外す警告
のチェックを外す詳細は アセットプロパティ > アクションの追加 をご参照ください。
集計日時選択ボックスを表示
にチェックを入れると、ウィジェット本体でも日付指定ができます。最小
と最大
へ値を設定します。ファイルリポジトリ
へ保存されます。ファイルリポジトリについてはデータ管理 > ファイルリポジトリ内のファイルの管理をご参照ください。
一定の範囲外に出てしまった場合にアラームを生成する設定を行わなければならないので、スマートルールを使用します。
ジオフェンスアラームを生成するスマートルールに関してはスマートルールコレクションをご参照ください。
ジオフェンス時 アラームを作成
のスマートルールを作成します。退出時
を選択します。工事現場が増えて管理対象を増やしたい時、どのようにグループやダッシュボードを追加していけば良いでしょうか。このような場合に活用できる2つの機能があります。
「千代田区大手町一丁目」で新たに工事が開始し、管理対象として加えるとしましょう。 新たに「千代田区大手町一丁目」グループを作成し、その配下に必要なデバイスを割り当てます。 「千代田区丸の内二丁目」のダッシュボードをコピーし、「千代田区大手町一丁目」グループに貼り付けます。
このように、本機能を利用することで管理対象のアセットが増えた場合でも、グループのダッシュボードを新たに作ることなく既存のダッシュボードを流用できます。
詳細は ダッシュボードを一つのオブジェクトから別のオブジェクトへコピー をご参照ください。
デバイス(ManagedObject)のタイプ(type)が同じ場合、ダッシュボードを共有することができます。 「千代田区丸の内二丁目」のホイールローダのデバイスタイプを「c8y_WheelDevice」に変更し、ホイールローダに作成されているダッシュボードの編集画面より、「すべてのデバイス タイプにダッシュボードを適用」にチェックを入れます。
「千代田区大手町一丁目」でも「ホイールローダ2」が使用されると想定し、「千代田区丸の内二丁目」のホイールローダと 同じデバイスタイプ「c8y_WheelDevice」を設定しましょう。 設定後、自動的に既に設定してあるダッシュボードが反映されていると思います。
詳細は以下をご参照ください。
機能1と機能2を活用することにより、グループやデバイスの数が増えた時でも既存の設定を活用できます。
注意点
- 機能1では、ウィジェット設定画面の「対象のアセットもしくはデバイス」の項目が現在のグループ(コピー元ダッシュボードが作成されているグループ)の場合のみ利用可能です。
- 機能2では、既にデバイスダッシュボードを作成している場合にデバイスタイプを変更すると、変更後のデバイスタイプのダッシュボードに上書きされます。
本レポートでは、Things Cloudをよりよく知っていただくために、ユースケースを用いた画面の構築方法等について解説します。
概念や機能の大枠は理解しているが、実現したいことに対し、Things Cloudでどのような設定をするかのイメージを持っていただくことを目的としています。
本レポートは問題編のため、本文には設定例が記載されていますが、設定内容は自由であり、記載のある設定例にならない場合もあります。
また、本レポートを読まれる際には、事前にStep1 工事現場ユースケース をお読みいただくことを推奨します。
本レポートの構成は以下の通りです。
工場に設置されている機器の遠隔監視を行いたい
以下は実現したいユースケースのイメージ図となります。このイメージ図を元にシステムを構築していきましょう。
Step1の考え方を参考に取り組んでみましょう。 以下は一例です。
Step1の考え方を参考に取り組んでみましょう。 以下は一例です。
まず、IoTシステム導入により実現したいこと で記載した事項をThings Cloud内のどの機能を使えば良いか調査します。
以下は一例です。
SCADAウィジェットの詳細やSVG画像の作成方法についてはSCADA ウィジェットによるデータ可視化をご参照ください。
レポート機能に関する詳細はレポートの管理とエクスポートをご参照ください。
Step1の考え方を参考に取り組んでみましょう。
以下は一例です。
以下のデバイスを作成します。
デバイスのデータをThings Cloudへアップロードします。以下はデータモデルの一例となります。
{
"type": "com_OperationStatus",
"time": (時間),
"text": "機器が稼働開始しました。",
}
{
"type": "com_FactoryEnvironment",
"time": (時間),
"c8y_Temperature": {
"T": {
"unit": "℃",
"value": (数値)
}
},
"c8y_Carbondioxide": {
"co2": {
"unit": "ppm",
"value": (数値)
}
},
"c8y_Noise": {
"db": {
"unit": "db",
"value": (数値)
}
}
}
{
"type": "com_FactoryProduction",
"time": (時間),
"c8y_PartsProduction": {
"P1": {
"unit": "count",
"value": (数値)
}
},
"c8y_PartsDefect": {
"D1": {
"unit": "count",
"value": (数値)
}
}
}
Step1の考え方を参考に取り組んでみましょう。
グループを作成してみましょう。 以下は一例です。
ダッシュボードを作成してみましょう。 以下は一例です。
ダッシュボード内へウィジェットを作成してみましょう。
Things Cloudでの実現方法を検討する でリスト化したウィジェットを作成します。
以下はウィジェット作成内容の一例です。
スマートルールを作成してみましょう。 以下は一例です。
レポートを設定してみましょう。 以下は一例です。
以下はこれまでの工程で実現できる画面の一例です。