システム概要

本アプリケーションノートでは、

  • ModbusRTUを使用してセンサから値を取得すること
  • 取得したデータをクラウドにアップロードすること
  • 3G/LTE、有線LAN、無線LAN を使用して通信を行うこと
  • クラウドからArmadilloを制御すること

などの開発時に必要のなることの多い処理を実装しているシンプルな構成のシステム例として、 ModbusRTUを使用して電力量モニタから値を取得しクラウドと通信を行う、消費電力監視システムのサンプルアプリケーションをご紹介します。

電力量モニタからは、以下の値を取得します。

  • 電圧
  • 電流

1.1. システム構成図

本システムの構成図を以下に示します。

images/system_diagram.png

AWS内のシステム構成図を以下に示します。

images/aws_constitution.png

1.2. システム全体フロー

本システムの、電源投入後からの状態遷移図を以下に示します。

図中の各処理については、「各処理のシーケンス図」を参照してください。

images/system_flow.png

1.3. 各処理のシーケンス図

「システム全体フロー」の状態遷移中に記載されている、各処理のシーケンス図を以下に示します。

1.3.1. Setup

初回起動時のセットアップのシーケンス図を以下に示します。

images/setup.png

1.3.2. SystemOperation

システム起動後、センサからデータを取得してクラウドへ送信し、Webブラウザ上でユーザーがデータ閲覧可能となるまでのシーケンス図を以下に示します。

images/system_operation.png

1.3.3. GetParameter

Aradillo-IoT ゲートウェイ G3 がクラウドから各種パラメータ(警告閾値、閾値超過回数、データ取得周期、データ送信周期、アラーム ON/OFF)を取得する際のシーケンス図を以下に示します。

images/get_parameter.png

1.3.4. SetParameter

ユーザーがWebブラウザから各種パラメータを変更する際のシーケンス図を以下に示します。

images/set_parameter.png

1.4. データストア仕様

本システムのデータストア仕様を以下の表に示します。

データ内容 生成タイミング 更新タイミング データ名

警告閾値

ユーザー設定

APIアクセス時

threshold

閾値超過回数

ユーザー設定

APIアクセス時

evaluation_periods

データ送信周期

ユーザー設定

APIアクセス時

upload_period

データ取得周期

ユーザー設定

APIアクセス時

data_get_period

アラート ON/OFF

ユーザー設定

APIアクセス時

alert_status

消費電力

データ取得時

データ取得時

wattage

データ取得時のタイムスタンプ

データ取得時

データ取得時

timestamp