ESP-WROOM02(ESP8266)で温度、湿度を取得してみた!

最終更新日

Comments: 0

 

こんばんわ!

今回はESP-WROOM02で温度と湿度を取得してみたいと思います!

※ArduinoやESP-WROOM32をお使いの方でもやり方はほぼ同じなのでご参考になればと思います!

 

使うセンサーはズバリ、これです↓

 

DHT22というセンサーでございます!

このセンサーはかなり制度が良くお勧めです!

型  名 DHT22(別名AM2302)
 電源電圧  3.3V ~ 6V
 消費電力(電流)  測定中:最大 1.5mA
 待機中:最大 50μA
 測定範囲 温度  -40 ~ 80℃
湿度  0 ~ 100%RH
 精  度 温度  <±0.5℃
湿度  ±2%RH
 感度と解像度 温度  0.1℃ 16bit
(分解能) 湿度  0.1%RH 16bit
 サンプリング周期  2秒以上

 

ではさっそく使ってみましょう!


①「部品集め」

 

・DHT22(温湿度センサー)

Amazonだと700円前後⇩

DHT22 AM2302 デジタル温度センサーモジュール

 

Wi-Fiモジュール ESP-WROOM-02

ESP-WROOM02

 

超小型USBシリアル変換モジュール

低損失三端子レギュレーター 3.3V1A TA48033S

三端子レギュレーター

 

電解コンデンサ 47μF35V(秋月電子で購入すると、3端子レギュレータに付属されています。)

電解コンデンサ

 

セラミックコンデンサ 0.1μF(秋月電子で購入すると、3端子レギュレータに付属されています。)

 

LED(起動などを確認するためのメッセージ用に使う。なので任意)

LED(緑)

 

タクトスイッチ(2個)(任意ですがあると便利です)

タクトスイッチ

 

ブレットボード

 

ジャンパーワイヤー

 

ブレッドボード・ジャンパーワイヤ

(ブレットボードで回路を組むとき、見栄え良く綺麗に繫げられますのであると便利)

 

通信対応USBケーブル

タイプB通信ケーブル

 

※任意(楽したい方向け)

ESP-WROOM-02開発ボードを使うとすぐに開発ができるよう回路が組まれているため、上記の「ESP-WROOM02」「超小型USBシリアル変換モジュール」「3端子レギュレータ」「電解コンデンサ 47μF35V」「セラミックコンデンサ 0.1μF」「タクトスイッチ」は不要になります!

 

②「回路組み立て」

 

・ESP-WROOM02の回路は再び下記サイトさんの「6.各部品の接続」を参考にしていただければと思います。

WROOM 単体に Arduino スケッチで Wi-Fi ストリーミング

 

 

ESP‐WROOM02本体の接続箇所↓

※GPIO 0(IO0)をLOWの状態で起動させるときのみ書き込みモード、

LOWじゃなければ実行モードになります。

なのでGPIO 0とGNDにダクトスイッチをかましとくと後が楽です。

 

※RST(リセット)もLOWにすることでプログラムのリセットが行えますので、

RSTとGNDにダクトスイッチをかましておくと後が楽です。

ESP-WROOM02の配線

 

※画像をクリックすれば拡大できます。

 

ESP-WROOM-02開発ボードをご使用の方はここからスタート。

 

・温湿度センサー(DHT22)の接続箇所↓

DHT22 接続箇所(pin)
5V
GND
out IO5

 

※ArduinoやESP-WROOM32もこの接続でできるはずです。

(できなかったら報告を頂けると助かります)

 

完成するとこんな感じになります↓

※画像をクリックすると大きく見れます。

 

③「開発環境準備」

 

・Arduino IDEでまだESP-WROOM02を使えるようにしていない方はこちらを参考に⇩

Arduino IDEにESP-WROOM02を使えるようにする!

※WSP-WROOM32でチャレンジされるこちらのサイトをご参考にお願いします。

 

次に、DHTセンサーのライブラリーを入れます

Arduino IDEを開き、ツール⇒ライブラリー管理を選択、

「DHT sensor library」を検索しインストールします。



④「プログラミング」

・いよいよプログラミング!

ArduinoやESP-WROOM32もこのプログラムでできるはずです。(できなかったら報告を頂けると助かります)

 

※ビルドをした際に、こんなエラーが出たら書き込みモードになっていないのが原因です。

(GPIO 0(IO0)をLOWの状態で起動させるときのみ書き込みモード、LOWじゃなければ実行モードになります。)

改善されない場合はもう一度②「回路組み立て」を読み直してみてください。

 

※ビルドをした際に、「ボードGeneric ESP8266 Moduleに対するコンパイル時にエラーが発生しました。」

というエラーが出た場合は、エラー内容を確認してみましょう。

「In file included from C:\Users\…\Documents\arduino-1.8.5-windows\arduino-1.8.5\libraries\DHT-sensor-library-master/****.h:22:0,」

(エラー内容が表示されていない場合、エラーが表示されている所をカーソルで少し上にやると表示されてます。)

 

こんな感じのエラー内容の場合DHT-sensor-library-masterの中にある****.hファイルが

なにかおかしいみたいなので消すことによって解決しました。

(同じ名前のファイルが2つ並んでいたら容量の小さいほうを消してみましよょう)

 

2018/7/21追記

※シリアルモニターに変な暗号が表示されたり、何も表示されない場合、シリアルモニターの右下にあるbpsが115200bpsになっているか確認してください。

 

※シリアルモニターが選択できない場合、まずツールの中にあります「シリアルポート:COM 」

が選択されているか確認してください。

 

これが選択できない状態だたUSBケーブルが原因の可能性があります。

USBケーブルは必ずデータ通信が可能なものを使用しましょう。

 

こんな感じで対応していけば解決できるかと思います!

 

⑤「実行結果」

・左から温度、湿度、体感温度的な暑さ指数、不快指数になります!

 

※画像が見づらい場合はクリックすると綺麗に見れます。

 

個人的に使ってた感想ですが、精度はなかなか良く簡単に使えますので便利です

息を吹きかけると1~5秒ぐらい遅れて数値が変化しました!

 

以上、ご訪問ありがとうございます^^

ご不明点、や誤字がありましたらお気軽にコメントください^^



コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

コメントする