簡単に接続された温度と湿度センサーを構築する
To monitor the temperature of the main room or the baby bedroom, you can create and develop your own connected temperature sensor easily.
これらの手順により接続温度センサを作成する.これを達成するために、ESP 8266と2シールドを使用します.
ESP 8266は、統合されたWi - FiモジュールでArduinoのようなマイクロコントローラです.
シールドは、その機能を拡大するメインボードに追加することができますボードです.シールドは非常に簡単に設定し、使用することの利点があります.
今のところ、20シールドはESP 8266 D 1ミニで利用可能です.
だから我々は簡単にお互いの上に盾をクリッピングし、小さなコードを書くことによって、多くのIOTプロジェクトを作成することができます.
このプロジェクトで使用されるもの
要件
Arduino IDEの最新のバージョン
Arduino/Preferences/Additional Boards Manager URLs
にこのURL https://arduino.esp8266.com/stable/package_esp8266com_index.jsonを加えてくださいESP 8266をボードマネージャ
Tools/Board/Board Manager
にインストールしますTools/Manage Libraries
を追加します.Adafruit_SHT31
Adafruit_SSD1306
BlynkSimpleEsp8266
Tools
で設定を変更します.LOLIN(WEMOS) D1 mini lite
/dev/cu.wchusbserial…
921600
Serial Monitor
をクリックしてくださいステップ1 -温度値を読む
当分の間、SET 30シールドをESP 8266の上に接続します.次のコードで、室温と湿度を4秒ごとにコンソールに戻します.
#include "Adafruit_SHT31.h"
Adafruit_SHT31 sht30 = Adafruit_SHT31();
void setup() {
Serial.begin(9600);
while (!Serial)
delay(10);
// will pause until serial console opens
Serial.println("SHT30 test");
if (! sht30.begin(0x45)) {
Serial.println("Couldn't find SHT30");
while (1) delay(1);
}
}
void loop() {
float t = sht30.readTemperature();
float h = sht30.readHumidity();
if (! isnan(t)) { // check if 'is not a number'
Serial.print("Temp *C = "); Serial.println(t);
} else {
Serial.println("Failed to read temperature");
}
if (! isnan(h)) { // check if 'is not a number'
Serial.print("Hum. % = "); Serial.println(h);
} else {
Serial.println("Failed to read humidity");
}
Serial.println();
delay(4000);
// wait 4 seconds before coming back into the loop
}
次のコードで、室温と湿度を4秒ごとにコンソールに戻します.ステップ2 -画面にメッセージを表示する
ESP 8266の上にOLEDディスプレイシールドを接続して、簡単なメッセージを投稿しましょう.
#include <Adafruit_SSD1306.h>
Adafruit_SSD1306 display(-1);
void setup() {
Serial.begin(9600);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
// initialize with the I2C addr 0x3C (for the 64x48)
// set the text size and color
display.setTextSize(2);
display.setTextColor(WHITE);
}
void loop() {
display.setCursor(0,0);
display.println("Hello");
display.display();
delay(1000);
display.clearDisplay();
display.setCursor(0,24);
display.println("World");
display.display();
delay(1000);
display.clearDisplay();
}
我々は今、どのようにテキストを表示する方法と画面をクリアする方法を知っている.ステップ3 -画面上の温度を表示する
温度の値を読み取ることができますし、画面に表示されるテキストは、次のステップのために、我々は温度と湿度の値が表示されます.
#include "Adafruit_SHT31.h"
#include <Adafruit_SSD1306.h>
Adafruit_SSD1306 display(-1);
Adafruit_SHT31 sht30 = Adafruit_SHT31();
void setup() {
Serial.begin(9600);
if (! sht30.begin(0x45)) {
Serial.println("Couldn't find SHT30");
while (1) delay(1);
}
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
// initialize with the I2C addr 0x3C (for the 64x48)
// set the text size and color
display.setTextSize(2);
display.setTextColor(WHITE);
display.clearDisplay();
}
void loop() {
float t = sht30.readTemperature();
float h = sht30.readHumidity();
display.setCursor(0,0);
display.sprintf("%.1fC", t);
display.setCursor(0,25);
display.printf("%.0f%%\n", h);
display.display();
delay(5000);
display.clearDisplay();
}
ステップ4 - BLynkアプリに接続
温度と湿度の値を持っているが、それを相談するのは非常に実用的ではない.それで、我々は雲の上でデータを掲示して、我々がBlynkで構築するアプリケーションでそれを取り戻すために、我々の温度センサーをインターネットに接続します.
Blynkは、アプリケーションなどの小さなアプリケーションの無料です.それは雲にあなたのデバイスを接続し、簡単に我々のアプリケーションを設計する最も人気のあるiOTプラットフォームです.
アプリケーションで新しいプロジェクトを作成する方法の詳細については、このリンクを使用することができます.
➡️ http://docs.blynk.cc/#getting-started-getting-started-with-the-blynk-app
#define BLYNK_PRINT Serial
#include "Adafruit_SHT31.h"
#include <Adafruit_SSD1306.h>
#include <BlynkSimpleEsp8266.h>
Adafruit_SSD1306 display(-1);
Adafruit_SHT31 sht30 = Adafruit_SHT31();
char auth[] = "BLYNK_API_KEY";
char ssid[] = "WIFI_NAME";
char pass[] = "WIFI_PASSWORD";
void setup() {
Serial.begin(9600);
Serial.println("Starting");
// connect to the WiFi
Blynk.begin(auth, ssid, pass);
if (! sht30.begin(0x45)) {
Serial.println("Couldn't find SHT30");
while (1) delay(1);
}
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.setTextSize(2);
display.setTextColor(WHITE);
display.clearDisplay();
}
void loop() {
// start blynk
Blynk.run();
float t = sht30.readTemperature();
float h = sht30.readHumidity();
display.setCursor(0,0);
display.printf("%.1fC", t);
// send the temp value on the virtual pin 1 (V1)
Blynk.virtualWrite(1, t);
display.setCursor(0,25);
display.printf("%.0f%%\n", h);
// send the humidity value on the virtual pin 2 (V2)
Blynk.virtualWrite(2, h);
display.display();
delay(5000);
display.clearDisplay();
}
ここで、次の写真のように2つのラベルの値を設定することにより、アプリケーションをblynkに設定できます.あなたは、アプリケーションで提供されるモジュールと少し楽しいことができます.私は、温度と湿度の値を表すグラフを作りました.
おめでとう、あなたの接続温度センサーを作った.👏
当初https://henaff.io年に出版された.
Reference
この問題について(簡単に接続された温度と湿度センサーを構築する), 我々は、より多くの情報をここで見つけました https://dev.to/monsieur_riz/easily-build-a-connected-temperature-and-humidity-sensor-22g5テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol