Arduino Cloud連携でどこからでも家の温度を監視
必要な部品と材料
| Arduino UNO | ×1 |
| Arduino Yun Shield | ×1 |
| 温度センサー(TMP36) | ×1 |
| ジャンパーワイヤー | ×1 |
| ブレッドボード | ×1 |
使用するアプリとオンラインサービス
- Arduino IDE
- Arduino IoT Cloud
プロジェクト概要
TMP36温度センサー、Arduino Yun Shield、Arduino Cloudを使って、どこからでも自宅の温度を確認できるシステムを構築します。
作り方
組み立ては非常に簡単です。まずYun Shieldをお好みのArduinoに装着し、TMP36を5VとGNDに接続、信号ピンをA0に接続します。
Arduino Cloudのセットアップ
cloud.arduino.cc にアクセスし、新しい「Thing」を作成して「TempPanel」と命名します。次に新しいプロパティを作成し「Temp」と命名。タイプを華氏(Fahrenheit)または摂氏(Celsius)に設定し、ポリシーを「値が変更されたときに更新」にします。


コード
コードではTMP36の値をArduino Cloudへ送信しますが、アナログ値を温度スケールに変換するコードを毎回書くのは面倒なので、それを自動で行うライブラリを作成しました(インストール必須)。Arduinoライブラリマネージャーで「TMP36」と検索すると、筆者(Isaac100)作成の唯一のライブラリが見つかります。詳細はGitHubページを参照してください。また、Arduino Cloudライブラリもインストールが必要です。
以下にスケッチを提供しますが、いくつか編集が必要です:
const char userName[] = "Username";
ここにあなたのArduinoユーザー名を入力。以下の行には:
const char thingId[] = "thingID";
const char thingPsw[] = "thingPsw";
Arduino Cloudの情報タブ(歯車アイコン)で確認できるThing IDとパスワードを入力。さらに:
//TempPanel.addProperty("Temp", TEMPERATURE_F, R); // 華氏の場合はコメント解除
//TempPanel.addProperty("Temp", TEMPERATURE_C, R); // 摂氏の場合はコメント解除
使用する温度単位の行をコメント解除。同様に:
//float temp = myTMP36.getTempF(); // 華氏の場合
//float temp = myTMP36.getTempC(); // 摂氏の場合
該当する行をコメント解除してください。アップロード後、正常ならArduino Cloudに「TempPanel is online」と表示され、温度が確認できるはずです。
家とTMP36の画像はCC BY-SAライセンスです。
コード
Arduino Cloud Temp
TMP36 Library
https://github.com/Isaac100/TMP36/
製造プロセス
- 気象観測ステーションをCWOPと統合:実践ガイド
- 家庭用の低コストワイヤレスセンサーネットワークを構築
- スマートホテル&ホーム監視システム:クラウドベース自動制御
- Arduino NanoとMPU-6050で作るリアルタイムジャイロスコープゲーム
- Arduino Nanoで水滴を高速撮影 – DIYハイスピードフォトグラフィ
- Unopad: Ableton Live連携シームレスなArduino MIDIコントローラー
- Arduinoでシンプルな障害物センサーを自作 – IR LEDとフォトダイオード入門
- Windows 10 CortanaでBluetooth経由でArduinoのLEDを制御
- 最適なクラウド製造ソリューション選定のための専門家ガイドとベストプラクティス
- R&D税額控除でパンデミック後のビジネスを活性化
- Advantech、NVIDIA統合でエッジへの高速コンピューティングを拡張