
無料で使えるIoTプラットフォーム『Adafruit IO』を始めよう
はじめに
電子工作をしていると「このデータ、ネットにつなげて見える化したいな〜」と思うこと、ありますよね。
ですが、AWSなどのクラウドはよくわからないし、課金も恐い。という人も多いんじゃないでしょうか?
そんなあなたに「Adafruit IO(エイダフルーツ アイオー)」を紹介します。
『電子工作のメーカー』として世界的に有名な、
米Adafruits Industriesが作っているので、マイコンボードとの相性は抜群で、無料で利用できます。
データの保存は30日間、1分間に30データまでなどの制約はありますが、趣味の領域であれば全く問題なく使えるレベルです。
また、海外のサブスクでよくある「クレジットカードの事前登録」もないので、課金を気にせず安心して使うことができます。
Adafruit IOでできること
「IoTプラットフォーム」って聞いたことあるけど、一体なにができるの?という方も多いと思います。
以下にAdafruit IOでどんなことがてきるのかを詳しく紹介します。
データの収集と可視化
センサーからの温度・湿度・光などのデータをリアルタイムに収集し、クラウド上に保存できます。
収集したデータは、分かりやすいグラフやチャートにできるので、データの変化を視覚的に確認することができます。
ダッシュボード
複数のデータを一つの画面(ダッシュボード)にまとめることができます。もちろん、ダッシュボードのカスタマイズも可能です。
データの制御
スマートフォンやパソコンから、離れた場所にあるデバイスを制御(LEDのON/OFF、モーターの回転速度の調整)ができます。
操作のためのUIも用意されているので、ドラッグアンドドロップで直ぐ始められます。
自動化
IFTTTなどのサービスと連携することで、特定の条件を満たした(例えば、室温が一定値を超えたらエアコンを起動するなど)ときに自動的に動作するよう、設定することもできます。
Adafruit IOのはじめかた
それでは紹介はこのくらいにして、Adafruit IOの始め方について説明します。概要としては、以下の通りです。
アカウント登録
ログイン
フィードの作成
手動でデータを入れてみる
プログラミング前の準備
順番に詳しく解説していきます。
1.アカウントの作成
以下の公式URLにアクセスします。
下の方にある「FREE」の項目の「Sign Up Now」ボタンをクリックします。

アカウント情報の入力画面が表示されるので、各項目を入力し「Create Account」ボタンをクリックします。
名前(First Name)
名字(Last Name)
メールアドレス
ユーザーネーム※
パスワード
※フォーラムやAdafruit IOで公開される名前です。

「Create Account」ボタンをクリックすると、確認メールが登録したメールアドレス宛に届きます。
メール内の「Verify My Account」ボタンをクリックすれば、アカウントの作成は完了です。
2.ログイン
先ほどと同じ、以下のURLにアクセスします。
右上の方にある「Sign In」をクリックします。

左側の「Sign in」の方に、メールアドレスとパスワードを入れて「Sing In」ボタンをクリックすれば、ログイン完了です。

3.Feedの作成
上部のメニューで「Feeds」をクリックします。

開いた画面で「New Feed」をクリックします。

ちなみに「Feed(フィード)」は、Adafruit IO内で、センサーからのデータを管理するための、”データのまとまり” のようなものです。
1データにつき、1フィードが必要になるので、センサーから「温度・湿度・照度」を受け取りたい場合は、「3つのフィード」が必要になります。
表示されたFeedの新規作成画面で、フィードの名前と説明を入力します。説明(Description)は入力しなくてもOKです。

ここで付けたフィードの名前は、プログラムからも使用します。わかりやすい名前をつけておいてください。
「Create」ボタンをクリックしたら、Feedの作成は完了です。
3.テストデータ入れてみる
Feedはセンサーからデータ管理する場所ですが、データを貯めるだけで自動的にグラフ表示・リスト化、タイムスタンプの記録もしてくれます。
実際にデータを入れた方がイメージが付きやすいので、今回は手動でテストデータを数点入力して、フィードの動きを見ていきます。
メイン画面で「Feeds」をクリックします。

一覧画面から、作成したフィードをクリックします。

①「Add Data」ボタンを押します。

②データ内容に「1」を入力して「Create」ボタンをクリックします。

データが入力されると、フィード画面に以下のように「データ内容」「日付(タイムスタンプ)」が記録されたリストが表示されます。

上記データ追加手順を、データ内容を「2」→「1」と変えて入力していくと、以下のように三角形のようなグラフが表示され、

入力内容もリストに追加されます。

5.プログラミング前の準備
ここまでできたら、あとはセンサーからAdafruit IO(フィード)に、データを送信するブログラムを作るだけです。
プログラムからは前述のフィード名の他に「Adafruit IO Key」も必要になるので、確認しておきます。
上部メニューの鍵マークをクリックします。

Active Keyの項目で、IO Keyをコピーするか、CircuitPythonなどのプログラミング言語でKeyを定義するコードも生成されるので、好きな方をコピーしておいてください。
【注意】REGENERATE KEYのボタンは、場所的にコピーボタンのように見えますが、別のキーを再生成するボタンなので注意してください。

まとめ
無料で使えるIoTプラットフォーム Adafruit IOの始め方について解説しました。
この投稿では、「アカウントの登録」「フィードの作り方」を解説したので、あとは、電子工作の作品側をプログラムすることで、作品をインターネットの世界へデビューさせることができます。
プログラミング方法はボードなどの使用環境によって若干かわるので、別の投稿に分けます。
Adafruit IO自体は、どんな作品を作る場合でも、解説の通り簡単に登録できるので、ぜひぜひ皆さんも登録してみてください。
この投稿はAdafruit IOの使い方について、検索でる情報は古く、AIでも的を得た回答がでなかったため、作成してみました。
全文無料ですが「参考になった」「疑問が解消した」など、もしお役に立てていたら「スキ」のクリック。「お金にも余裕あるよ」という方は、有料部分へのサポートをお願いします。
参考になればうれしいです。