この記事では、Cactusphere接点入力モデル(CT1110-W01)とMicrosoft Azure IoT Centralを使って、
スイッチ入力に対してメール通知が行われるシステムを構築してみました。
作業に要する見込み時間を記載しておりますが、これは以下の前提となります。
①MSアカウント作成済であること ②Azureアカウント作成済であること ③作業者はMicrosoft Azureの操作に習熟していないこと ④Azure Sphere SDKなどのツールのダウンロード・インストール時間は除く
ハードウェア接続
この記事では接点入力1(以下D1)に、下記のキャンペーンでも配布したリードスイッチを接続して動作を確認しております。
Cactusphere発売記念キャンペーン:
ドアセンサースイッチ(リードスイッチ)SPS-320
信号線の接続は以下のハードウェアマニュアルをご参考ください。
Cactusphere 100シリーズ ハードウェアマニュアル
◇接続イメージ
初期設定
購入いただいたCT1110-W01をお使いいただくためには、ファームウェアの書き込みやAS3(Azure Sphere Security Service)等との紐付けが必要です。
こちらについては下記のマニュアルに詳細な手順が記載されております。
だいたい1時間強程度で完了できるかと思います。
Cactusphere ソフトウェアマニュアル
応用設定
マニュアルに従って設定を行っていれば、お使いのCactusphereがIoT Centralに接続された状況になっているかと思います。
ここからはIoT Centralの画面を操作して設定を行います。
デバイス設定
デバイス設定を変更して取得するデータ種別を設定します。
今回はDI1に接続したスイッチがON→OFFになった回数を検知するので、「DI1 PulseCounter」を取得します。
DI1のPulseCounterを取得するための手順は以下の通りです。
①デバイス→任意のデバイス→settingを選択する ②DI1 PulseCounterにチェックを入れる ③DI1 PulseCounter IsPulseHighにチェックが入っていたら外す(今回は立下りエッジ検出に設定) ④DI1 PulseCounter Interval(送信周期)を「1」に設定 ⑤DI1 PulseCounter MinPulseWidth(最小パルス間隔)を「300」に設定 ⑥DI1 PulseCounter MaxPulseCount(最大カウント値)を「300」に設定 ⑦DI1 Edge、DI1 Polling等にチェックが入っていたら外しておく ⑧保存をクリックする
DI1 PulseCounterの下の表示が「Accepted」となったら設定完了です。
メールアドレス登録
Edgeを取得したときにメールを送信するアドレスを設定します。
IoT Centralのアプリケーションからメール通知出来るアドレスは、
以下の条件を満たしている必要がありますのでご注意ください
・MSアカウントのメールアドレスであること
・当該アプリケーションのユーザとして登録されていること
メールアドレスをアプリケーションのユーザとして登録するには以下の手順を実施します。
①任意のアプリケーション→管理→ユーザ→新しいユーザを選択 ②メールアドレスを入力する ③Roleを選ぶ→メール通知に使用するのみであればOperatorにしておく
登録完了したら、登録したMSアカウントでIoT Centralに1回以上ログインしておいてください。
メール通知設定
「規則」を設定することで取得した値を元にメール送信などのアクションを実行させることができます。
ここでは、Edgeが1の時に登録したメールアドレスにメールを送信するよう設定します。
①規則→新規を選択する ②規則名に任意の規則名を入力する ③メール通知を実施したいデバイスのデバイステンプレートを選択する ここではDIModelを選択する ④条件を設定する ④-1 テレメトリにDI1 EdgeEventを設定する ④-2 演算子に「次の値より大きいか等しい」を設定する ④-3 値に「5」を設定する ⑤アクションを設定する ⑤-1 アクションに電子メールを選択する ⑤-2 表示名を任意の呼称に変更する 例:「お知らせ」 ⑤-3 宛先に登録・ログインしたユーザのメールアドレスを入力する ⑤-4 注意にメールで通知する任意の文章を入力する 例:「スイッチが押されました] ⑤-5 作業完了をクリックする ⑥保存をクリックする
これですべての設定が完了しました。
実際にスイッチを押して、メールが送信されればアプリケーション構築完了です。
手順に従って操作いただければ30分程度で設定完了できるかと思います。
動作イメージ
今回作成しましたアプリケーションの動作イメージとしては、以下の動画をご覧ください。