ブレッドボード |
ブレッドボードにESP32・LED・スイッチ・DHT11温湿度センサープルアップ抵抗付きモジュールを挿入配線する。
同ブログ:【Blynk2使い方】
LEDは秋月電子の抵抗内蔵LED,タクトスイッチはプログラムによるプルアップ抵抗接続にしてあります。pinMode(SWPin, INPUT_PULLUP);
[Quickstart Template]を行ってテンプレート画面のWidgetを一度削除する。
[Template settings ]【+ Create New】でV0~V3を下記画面を参考に設定する。
Arduino IDE【ツール】【ライブラリを管理】【blynk】【DHT sensor library】インストール
[Quickstart Template]を行ってメールアドレスに送られたコードを、一度、Arudino IDEに貼り付けます、#define BLYNK_AUTH_TOKEN "*****************(11行)までそのままにしてそれ以降を全て削除、次に下記スケッチコードの12行以降を全てコピーしてArudino IDE 12行以降に貼り付けます、35.36行のssidとpassにWiFiのSSID, keyコードを入力してESP32に書き込みます。
同ブログ:【ESP32使い方】
プログラム
- /*************************************************************
- This is a simple demo of sending and receiving some data.
- Be sure to check out other examples!
- *************************************************************/
- // Template ID, Device Name and Auth Token are provided by the Blynk.Cloud
- // See the Device Info tab, or Template settings
- #define BLYNK_TEMPLATE_ID "**************"
- #define BLYNK_DEVICE_NAME "**************"
- #define BLYNK_AUTH_TOKEN "**************"
- #define SWPin 12
- #define LEDPin 13
- #define DHTPIN 14
- int sw ;
- //https://dandydot.no-ip.biz/~dot/presen/advtech/seminars/iot_workshop/blynk_run_dht11/README.md.html
- // Comment this out to disable prints and save space
- #define BLYNK_PRINT Serial
- #include <WiFi.h>
- #include <WiFiClient.h>
- #include <BlynkSimpleEsp32.h>
- #define BLYNK_DEBUG
- #include "DHT.h" //https://github.com/adafruit/DHT-sensor-library
- #define DHTTYPE DHT11 //our sensor is DHT11 type
- DHT dht(DHTPIN, DHTTYPE); //create an instance of DHT sensor
- char auth[] = BLYNK_AUTH_TOKEN;
- // Your WiFi credentials.
- // Set password to "" for open networks.
- char ssid[] = "**********";
- char pass[] = "************";
- BLYNK_WRITE(V0)
- {
- int value = param.asInt();
- digitalWrite(LEDPin, value);
- }
- void setup()
- {
- // Debug console
- Serial.begin(115200);
- pinMode(SWPin, INPUT_PULLUP); //SW
- pinMode(LEDPin, OUTPUT); //LED
- //Blynk.begin(auth, ssid, pass);
- // You can also specify server:
- Blynk.begin(auth, ssid, pass, "blynk.cloud", 80);
- //Blynk.begin(auth, ssid, pass, IPAddress(192,168,11,20), 8080);
- // Setup a function to be called every second
- dht.begin();
- }
- void loop()
- {
- Blynk.run();
-
- // You can inject your own code or combine it with other sketches.
- // Check other examples on how to communicate with Blynk. Remember
- // to avoid delay() function!
- float temperature = dht.readTemperature(); // 温度読み取り
- float humidity = dht.readHumidity(); // 湿度読み取り
-
- // 読み取りに失敗しているかチェック
- // 失敗している場合はもう一度、温湿度の読み取りをする
- if (isnan(temperature) || isnan(humidity)) {
- Serial.println("Failed to read from DHT sensor!");
- return;
- }
- sw = digitalRead(SWPin ) ; //スイッチの状態を読む
-
- //シリアルモニターに表示
- Serial.print("湿度: ");
- Serial.print(humidity);
- Serial.print(" *C\t");
- Serial.print("温度: ");
- Serial.print(temperature);
- Serial.print(" % ");
- Serial.print("スイッチ:");
- Serial.println(sw);
-
- // V1 ピンに対して温度の値を送信
- Blynk.virtualWrite(V1, temperature);
-
- // V2 ピンに対して湿度の値を送信
- Blynk.virtualWrite(V2, humidity);
- // V3 ピンに対してSWの値を送信
- Blynk.virtualWrite(V3, sw);
-
-
- }
【TEMP】【humi】はESP32のDHT11の温湿度センサーからデータが送られてきます。
【LED】ONだとLEDが点灯
ESP32のタクトスイッチを押すと【SW】が1→0になります。
0 件のコメント:
コメントを投稿