工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

LCD I2C16x2ディスプレイを備えたArduinoDTH22湿度温度

コンポーネントと消耗品

>
Arduino UNO
× 1
DHT22温度センサー
× 1
ホワイトオンブルー16×2LCDモジュールとI2Cバックパックモジュール– 5V
× 1
無はんだブレッドボードフルサイズ
× 1
9Vバッテリー(汎用)
× 1
5.5mm /2.1mmプラグ付きのAdafruit9Vバッテリークリップ
× 1
USB-A-ミニUSBケーブル
× 1
オス/メスのジャンパー線
× 1
オス/オスジャンパー線
× 1

このプロジェクトについて

私の息子(7)は、2年間、ペットのヘビを飼いたいと思っていました。最後に、彼はテラリウムを備えたヘビを数匹購入しました。ヘビを快適な環境に保つには、温度と湿度を監視する必要があります。

そこで、アナログ湿度/温度センサーを購入し、両方を良好なレベルに保つのはそれほど簡単ではないことを発見しました。新しく購入したArduinoUnoでプロジェクトを始めたいと思っていたので、湿度/温度センサーを使用して、Arduinoにテラリウムの温度と湿度の自動化を行わせるのは良い考えのようでした。そのため、DTH22湿度/温度センサーとLCD I2C 16x2ディスプレイを購入し、試してみました。

このチュートリアルは、このプロジェクトの基礎です。このチュートリアルには自動化は一切ありません。 DTH22とLCDI2Cディスプレイを使用するだけです。

この目的のために他のチュートリアルを見たことがありますが、これはI2CなしでLCDを使用していました。 LCDにI2Cを接続していない場合は、ThothLokiによるこのチュートリアルをご覧ください

必要なハードウェア

  • 任意の5VArduino(この場合はArduino Uno R3)
  • DTH22湿度/温度センサー
  • I2CがマウントされたLCD16x2ディスプレイ
  • ブレッドボード
  • 6本のオス/オスジャンパー線
  • 4本のオス/メスジャンパー線

必要なライブラリ

  • Adafruit_Sensor
  • DHT
  • NewliquidCrystal

始める前に

Arduinoに接続する必要があるかもしれないし、接続する必要がないかもしれないすべてのピンのトラブルを省くので、I2CがマウントされたLCD16x2が好きです。必要なジャンパー線は4本だけです。

ディスプレイには、コマンドを受け入れたりメッセージを送信したりするためのI2Cアドレスがあります。欠点は、続行する前に、使用するアドレスを把握する必要があることです。ここでは詳細については説明しませんが、Arduinoフォーラムですべてを読むことができます。

私の場合、デバイスは 0x3Fアドレスを使用します 、お使いのデバイスがこのアドレスも使用している場合は、幸運なことに、コードをコピーするだけです。

ブレッドボードをArduinoに接続します

DHT22センサーとLCD1602 I2Cは、5V電源を使用します。したがって、Arduinoの5Vピンをブレッドボードの赤+列に接続し、Arduinoの地面を青-ブレッドボードに接続しました。色の同期を維持したいので、スキーマでは5Vに赤いケーブルを使用し、アースに青いケーブルを使用します。実生活では、地面に青を使用していませんでしたが、白は...カーエレクトロニクスで遊びすぎていると思います。

データには黄色のケーブル、SDAにはオレンジ色のケーブル、SCLには灰色のケーブルを使用します。文字2はI2Cにあります。

DHT22センサーの追加

ピン配置を見てみましょう。 DHT22センサー(DHT11と同様)には4つのピンがあります。 DHT22センサーをブレッドボードに前面を外側に向けて配置します。このようにして、最初のピン(5V電源)が右側にあります(回路図を参照)。

小さな赤いジャンパーケーブルを使用して、5V VCCをブレッドボードの5V(+)行に接続します。そして、ブレッドボードの地面(-)列に地面を接続するための小さな青いジャンパーケーブル。 2番目のピンであるデータピンをArduinoに接続するために、長い黄色のケーブルを使用しました。デジタルデータなので、Arduinoのデータポート4に接続しました。他の例では、おそらくポート7を使用している人がいるでしょう。どちらも機能します。より多くのデータポートを使用することを予想し、万が一に備えてポート7を保存したかったので、ポート4を使用しました。これはスキーマにも表示されます。

<図>

LCD 16x2I2Cの追加

LCD 16x2I2Cにも4つのピンがあります。下の写真を左から右に見てください:

  • グラウンド
  • VCC(5V)
  • SDA
  • SCL

最初の(左)ピンをブレッドボードの地面(-)列に接続します。ブレッドボードの5V(+)行を赤くするために2番目のピンを接続します。私はArduinoUnoを使用しているので、A4(SDA)とA5(SCL)にI2C接続があります。そこで、Arduinoの3番目のピンをA4に接続し、4番目のピンをA5コネクタに接続しました。

<図>

コード

画面では、接続するアドレスを変えることができることを忘れないでください。私のI2Cはアドレス0x3Fを使用しているので(「始める前に」の部分を参照)、私のコードがこのアドレス用に設定されていることに注意してください。

必要なライブラリ(Adafruit_Sensor、DHT、NewliquidCrystal)を覚えておいてください。これらのライブラリをダウンロードして解凍し、プロジェクトのライブラリディレクトリに配置します。

次に、コードをArduinoにアップロードし、テラリウム(またはサーバーキャビネット、冷蔵庫、またはリビングルーム)の湿度と温度を確認します。

コード

  • hygroThermo.ino
hygroThermo.ino C / C ++
 / * Arduino uno温度および湿度センサーでDHT-22センサーを使用する方法詳細:http://www.ardumotive.com/how-to-use-dht-22-sensor-en.html Dev: Michalis Vasilakis //日付:2015年1月7日// www.ardumotive.com * /// Libraries#include  #include  #include  #include  // Constants#define DHTPIN 4 //接続しているピン#defineDHTTYPE DHT22 // DHT 22(AM2302)DHT dht(DHTPIN、DHTTYPE); ////通常の16mhzArduino用にDHTセンサーを初期化します//これは常にLCDI2Cおよびアドレスで使用します0x3F#define I2C_ADDR 0x3F#define BACKLIGHT_PIN 3#define En_pin 2#define Rw_pin 1#define Rs_pin 0#define D4_pin 4#define D5_ #define D6_pin 6#define D7_pin 7LiquidCrystal_I2C lcd(I2C_ADDR、En_pin、Rw_pin、Rs_pin、D4_pin、D5_pin、D6_pin、D7_pin); // Variablesint chk; float hum; //湿度値を保存しますfloattemp; //温度値を格納しますvoidsetup(){Serial.begin(9600); dht.begin(); lcd.begin(16,2); lcd.setBacklightPin(BACKLIGHT_PIN、POSITIVE); lcd.setBacklight(HIGH);} void loop(){delay(2000); //データを読み取り、変数humおよびtempに保存しますhum =dht.readHumidity(); temp =dht.readTemperature(); //温度と湿度の値をシリアルモニターに出力しますSerial.print( "Humidity:"); Serial.print(hum); Serial.print( "%、Temp:"); Serial.print(temp); Serial.println( "摂氏"); lcd.clear(); lcd.setCursor(0,0); lcd.print( "Temp:"); lcd.print(temp); lcd.print( ""); lcd.print((char)223); lcd.print( "C"); lcd.setCursor(0,1); lcd.print( "ハム:"); lcd.print(hum); lcd.print( "%"); delay(2000); // 2秒遅らせる} 

回路図

スキーマフリッツing schema_UcHE1qRu2t.fzz

製造プロセス

  1. Raspi 2WIOTとのArduinoI2C通信
  2. フライトシミュレータ用のArduinoを備えたLCDパネル
  3. Arduinoで水滴をキャプチャする
  4. 温度および湿度データロガー
  5. Nextionディスプレイで遊ぶ
  6. Arduino UNOを使用してLCDTFTスクリーンに画像を表示する!
  7. NextionディスプレイのBME280温度、湿度、および圧力
  8. 128x64LCDディスプレイ上のDIY10Hz-50kHzオシロスコープ
  9. u-blox LEA-6H 02GPSモジュールとArduinoおよびPython
  10. DHT11でBlynkの温度と湿度を読み取る方法
  11. DS1302RTCを備えたシンプルな目覚まし時計