1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đo nhiệt Độ, Độ Ẩm gửi Đến blynk

4 0 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Đo Nhiệt Độ, Độ Ẩm Gửi Đến Blynk
Định dạng
Số trang 4
Dung lượng 390,73 KB

Nội dung

Tổng hợp những câu hỏi cần thiết và quan trọng của môn Thiết kế hệ thống nhúng (KMA). Tài liệu này giúp các bạn sinh viên có thể vượt qua các bài kiểm tra giữa kỳ, cuối kỳ và đạt kết quả cao nhất. Xin cảm ơn các bạn đã xem và tải tài liệu.

Trang 1

ĐO NHIỆT ĐỘ, ĐỘ ẨM GỬI ĐẾN BLYNK VÀ ĐIỀU KHIỂN

ĐÈN LED TỪ XA BẰNG ĐIỀU KHIỂN BLYNK

Link Wokwi: https://wokwi.com/projects/381177565320726529

Trên ứng dụng Blynk tạo một đèn LED và một switch để điều khiển đèn LED Một màn hình hiển thị nhiệt độ và một màn hình hiển thị độ ẩm lấy dữ liệu từ wokwi.

Một chân của đèn LED được nối với chân esp:21, chân còn lại nối với GND của ESP32.

Cảm biến DHT22: Chân dht1:VCC nối với esp:D0, chân dht1:SDA nối với esp:15, chân dht1:GND nối với GND của ESP32.

Hình ảnh đo cảm biến nhiệt độ và độ ẩm, đèn tắt

Trang 2

Hình ảnh đo cảm biến nhiệt độ và độ ẩm, đèn bật

CODE:

#define BLYNK_TEMPLATE_ID "TMPL6ifmjvOG5" //Định nghĩa mã mẫ&u cu)a Blynk

Mã mẫ&u này là một chuỗ&i đặc biệt để) liển kể7t với ứng dụng Blynk

#define BLYNK_TEMPLATE_NAME "ThinkIOT" //Đặt tển cho mẫ&u Blynk

#define BLYNK_AUTH_TOKEN "6MVpEiwHcI0GgtAyMldbYGWS93bjQYpf" //Xác định token xác thực Blynk cho kể7t nỗ7i với ứng dụng Blynk

//Nhúng thư viện DHTesp cho ca)m biể7n DHT22 và thư viện Blynk cho kể7t nỗ7i với ứng dụng Blynk thỗng qua ESP32

#include <DHTesp.h>

#include <BlynkSimpleEsp32.h>

#define DHTPIN 15 //Led nỗ7i chẫn 15

#define LED_PIN 21 //Ca)m biể7n nỗ7i chẫn 21

DHTesp dht; //Tạo một đỗ7i tượng cu)a lớp DHTesp để) sư) dụng cho ca)m biể7n DHT22

char auth[] = BLYNK_AUTH_TOKEN; //Đặt token xác thực Blynk vào một ma)ng

ký tự

char ssid[] = "Wokwi-GUEST"; //Đặt tển mạng WiFi mà ESP32 sẽ kể7t nỗ7i char pass[] = ""; //Đặt mật khẫ)u mạng WiFi Trong trường hợp này, mật khẫ)u được đặt là chuỗ&i rỗ&ng

BlynkTimer timer; //Tạo một đỗ7i tượng timer để) lển lịch cho việc gư)i dữ liệu từ ca)m biể7n DHT

void setup() {

Trang 3

pinMode(LED_PIN, OUTPUT); //Thiể7t lập chẫn LED_PIN là chể7 độ OUTPUT để) điểgu khiể)n đèn LED

Serial.begin(115200); //Bắ7t đẫgu giao tiể7p serial để) ghi thỗng tin debug

dht.setup(DHTPIN, DHTesp::DHT22); // IKhở)i tạo ca)m biể7n DHT

Blynk.begin(auth, ssid, pass); //Kể7t nỗ7i với ứng dụng Blynk sư) dụng token xác thực và thỗng tin mạng WiFi

timer.setInterval(2000L, sendDHTData); // Gư)i dữ liệu DHT cứ sau 2 giẫy

}

BLYNK_WRITE(V3) { //Hàm được gọi khi trạng thái nút trển ứng dụng Blynk thay đỗ)i

int buttonState = param.asInt(); //Đọc trạng thái cu)a nút từ tham sỗ7

if (buttonState == 1) {

digitalWrite(LED_PIN, HIGH);

} else {

digitalWrite(LED_PIN, LOW);

}

}

void sendDHTData() { //Hàm gư)i dữ liệu từ ca)m biể7n DHT22 để7n ứng dụng Blynk

//Đọc dữ liệu nhiệt độ và độ ẫ)m từ ca)m biể7n

float t = dht.getTemperature();

float h = dht.getHumidity();

if (isnan(h) || isnan(t)) {

Serial.println("Khỗng đọc được từ ca)m biể7n DHT!");

return;

}

//Gư)i dữ liệu để7n ứng dụng Blynk

Blynk.virtualWrite(V0, t);

Blynk.virtualWrite(V1, h);

Serial.print("Humidity: ");

Serial.print(h);

Serial.print("%\t");

Serial.print("Temperature: ");

Serial.print(t);

Serial.println(" °C");

}

void loop() {

Blynk.run(); //Xư) lý tẫ7t ca) sự kiện Blynk

timer.run(); //Kiể)m tra và chạy các sự kiện đã được lển lịch trong timer

Trang 4

}

Ngày đăng: 23/04/2024, 18:12

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w