LoginSignup
2
1

More than 1 year has passed since last update.

enebularでarduino-iot-cloudノードを一通りためしてみる

Last updated at Posted at 2021-12-13

はじめに

Arduino IoT Cloudノードをenebular上から一通り触ってみて、ざっくりどのような挙動をするのかまとめてみました。

arduino-iot-cloudノードをインストールする方法について

こちらを参照してください。
https://qiita.com/Inoue_Minoru/private/d03e764ac48e9038bb9a

やってみたこと

enebular環境のNode-REDに@arduino/node-red-contrib-arduino-iot-cloudをインストールし、下記のノードを一通り試してみた。

  • propertyノード
  • historicノード
  • periodicノード
  • injectノード

試す上での前提条件

  • enebularなどのNode-RED環境にて@arduino/node-red-contrib-arduino-iot-cloudをインストールしていること。
  • Arduino IoT Cloudにアカウントを持っており、かつEntry以上のプランに入っていること。(APIキー取得済みであること)
  • Device,Thing(Valiable)を既に作成しており、何かしらのセンサデータがマイコンから取得できること。

なお、ノード設定等でPropertyという表記が出てきますが、当記事ではValiable=Propertyとして読み進めて頂いても問題ございません。

Propertyノード

まず受信ノードではNode-RED側で作成した値をArduino IoT Cloudのプロパティへ設定する場合に使います。逆に送信ノードではArduino IoT Cloud側の値をArduino IoT Cloudからポーリングする際に使います。
また、送信ノードの送信タイミングはValiable設定時のOn ChangeならびにOn Periodicallyの設定に基づきます。

histric

histric

historicノード

指定したpropertyに関して、指定期間に遡ってデータを取得できるノードです。
センサ値の状態遷移が必要な場合や、データのリアルタイム性を確保したい場合に良いかもしれません。

以下の場合は過去一時間に遡って取得したデータです。

histric

histric設定

xの値は単位msのUNIX時間(UTC)で、データ取得時間が入っています。また、yの値には指定したPropertyの値が入っています。

periodicノード

任意の実行期間でPropertyの値をポーリングしてくれます。添付写真では1秒ごとに自動でpropertyの値を取得するようになっています。
部屋の室温管理など、リアルタイム性の薄いデータ取得に向いていそうです。

periodic

periodic設定

injectノードについて

何かしらのペイロードが入力されたときにセンサ値を出力します。
AlexaのようなVUIからセンサ値を参照するような、特定のイベントのときにデータを取得したい場合に良いと思います。

inject

inject

まとめ

arduino-iot-cloudノードに関して下記のノードを試した。

  • propertyノード
  • historicノード
  • periodicノード
  • injectノード

単にpropertyから値を取得したり、逆に値を設定する場合であればpropertyノードで事は足りそうだけど、historicノードなどの下3つのノードを使えばよりシンプルにフローを構成できるかと思います。

誰かの役に立ってくれれば嬉しいです!

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1