1. Trang chủ
  2. » Luận Văn - Báo Cáo

báo cáo bài tập lớn hệ thống đo nhiệt độ độ ẩm và ánh sáng

19 1 0
Tài liệu đã được kiểm tra trùng lặp

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

1.1Yêu cầu bài tập lớnTrong khuôn khổ bài tập lớn môn học Thiết kế hệ thống nhúng, nhóm chúng em quyết địnhchọn đề tài: “Hệ thống giám sát nhiệt độ và độ ẩm theo thời gian thực.” Đề tài

Trang 1

ĐẠI HỌC BÁCH KHOA HÀ NỘITRƯỜNG ĐIỆN – ĐIỆN TỬ

BÁO CÁO BÀI TẬP LỚN

Đề tài : Hệ thống đo nhiệt độ, độ ẩm và ánh sáng

Hà Nội, 02/2022

201918272019189120192127

Trang 2

MC LC

CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI 2

1.1 YÊUCẦUBÀITẬP LỚN 2

1.2 MỤCTIÊUTHIẾTKẾ 3

CHƯƠNG 2 GIỚI THIỆU PHẦN CỨNG 4

2.1 NGUYÊNLÝ CÁCMODULE PHẦNCỨNG 4

2.1.1 Kit ESP32 DOIT DEVKIT V1 4

2.1.2 Module cảm biến nhiệt độ, độ ẩm DHT11 5

2.1.3 Màn hình LCD 7

CHƯƠNG 3 SƠ ĐỒ KHỐI 7

3.1 SƠĐỒKHỐI, LƯU ĐỒTHUẬTTOÁN GIAO TIẾP GIỮA VI ĐIỀU KHIỂN ESP32 VÀ MODULEPHẦN CỨNG 8

3.2 LẬPTRÌNHSUPER LOOP CHẠY TỪNG TASK MỘT TỪ TRÊN XUỐNG DƯỚI 9

CHƯƠNG 4 SƠ ĐỒ NGUYÊN LÍ 9

4.1 CÁCNGOẠI ESP32 VICẦN SỬ DỤNG 9

4.2 SƠĐỒGHÉP NỐIVI ĐIỀU KHIỂN VÀMODULE PHẦNCỨNG 10

CHƯƠNG 5 MÔ PHỎNG VÀ CHẠY THỬ 12

5.1 MÔPHỎNG 12

5.2 KẾTQUẢ CHẠY THỬ TRÊN MÔ PHỎNG 12

CHƯƠNG 6 KẾT QUẢ VÀ ĐÁNH GIÁ 12

6.1 CÁCKẾTQUẢ ĐẠT ĐƯỢC 12

6.2 PHÂNTÍCH VÀĐÁNHGIÁ KẾTQUẢ 12

TÀI LIỆU THAM KHẢO 13

Trang 3

1.1Yêu cầu bài tập lớn

Trong khuôn khổ bài tập lớn môn học Thiết kế hệ thống nhúng, nhóm chúng em quyết địnhchọn đề tài: “Hệ thống giám sát nhiệt độ và độ ẩm theo thời gian thực.” Đề tài chúng em được trình bày gồm 5 chương:

Chương 1: Tổng quan đề tàiChương 2: Giới thiệu phần cứngChương 3: Sơ đồ khốiChương 4: Sơ đồ nguyên lí Chương 5: Mô phỏng và chạy thửChương 5: Kết quả và đánh giá

Chúng em xin cảm ơn thầy Nguyễn Cảnh Quang đã luôn tận tình hướng dẫn chúng em trong suốt quá trình học trên lớp và thực hiện đề tài, do kiến thức chúng em còn rất nhiều hạn chế nên đề tài còn rất nhiều sai sót, mong thầy góp ý và chỉnh sửa để chúng em tiến bộ hơn Em xin chân thành cảm ơn!

1.2Mục tiêu thiết kế

Triển khai ứng dụng thời gian thực trên vi điều khiển ESP32 với các yêu cầu:

Lập trình vi điều khiển ESP32 giao tiếp với cảm biến DHT11 và cảm biến quang cds hiểnthị thông số lên LCD, truyền thông số lên web server Cài đặt thời gian và thông số bộ lậplịch từ máy tính.

Gửi dữ liệu đo được lên web server

Trang 4

CHƯƠNG 2.GIỚI THIỆU PHẦN CỨNG2.1.1Nguyên lý các module phần cứng

2.1.2Vi điều khiển STM32F103C8T6

STM32F103C8T6 là vi điều khiển 32bit, thuộc họ F1 của dòng chip STM32 hãng ST.- Lõi ARM COTEX M3.

- Tốc độ tối đa 72Mhz - Bộ nhớ :

64 kbytes bộ nhớ Flash20 kbytes SRAM - Clock, reset và quản lý nguồnĐiện áp hoạt động từ 2.0 → 3.6V.

Sử dụng thạch anh ngoài từ 4Mhz → 20Mhz

Thạch anh nội dùng dao động RC ở mode 8Mhz hoặc 40Khz

Trang 5

2.1.3Kit ESP32 DOIT DEVKIT V1

Hình 1 Kit ESP32 DOIT DEVKIT V11

ESP32 là một hệ thống vi điều khiển trên chip (SoC) giá rẻ của Espressif Systems, nhà phát triểncủa ESP8266 SoC Nó là sự kế thừa của SoC ESP8266 và có cả hai biến thể lõi đơn và lõi kép của bộ vi xử lý 32-bit Xtensa LX6 của Tensilica với Wi-Fi và Bluetooth tích hợp Dưới đây là một số thông số kỹ thuật của kit:

Trang 6

Điện áp hoạt động: 2.2 V 3.6 V

Bộ vi xử lý LX6 32-bit lõi đơn hoặc lõi kép với xung nhịp lên đến 240 MHzTích hợp cổng USB để nạp Bootloader hoặc sử dụng ngoại vi USBHỗ trợ kết nối Wi-Fi 802.11 b / g / n với tốc độ lên đến 150 MbpsKết nối nối tiếp bao gồm 4 x SPI, 2 x I2C, 2 x I2S, 3 x UART

2.1.4Module cảm biến nhiệt độ, độ ẩm DHT11

Hình 2 Module DHT11 2

DHT11 là cảm biến nhiệt độ, độ ẩm rất thông dụng hiện nay vì chi phí giá rẻ và rất dễ lấy dữ liệu thông qua giao tiếp 1-wire Cảm biến được tích hợp bộ tiền xử lý tín hiệu giúp dữ liệu nhận về được chính xác mà không cần phải thông qua mạch xử lý tín hiệu nào Dưới đây là một số thông số kỹ thuật:

Điện áp hoạt động: 35 VDC.

Dải đo độ ẩm: 20%90% RH, sai số 5% RH.Dải đo nhiệt độ: 0 50 , sai số 2 ℃ ℃ ℃Tần số lấy mẫu tối đa: 1 Hz.Khoảng cách truyền tối đa: 20 m.

Sơ đồ chân module DHT11 gồm 2 chân cấp nguồn và 1 chân tín hiệu Hiện nay trên thị trường có hai loại thông dụng được đóng gói với 3 chân hoặc 4 chân

Nguyên lý hoạt động :

Trang 7

Hình 3 Kết nối module DHT11 với vi điều khiển

Vi điều khiển giao tiếp với DHT11 theo chuẩn 1 wire với 2 bước:Gửi yêu cầu đo tới DHT11, sau đó đợi DHT11 phản hồi.

Khi DHT11 sẵn sàng giao tiếp, nó sẽ gửi lại 5 byte dữ liệu chứa giá trị nhiệt độ và độ ẩm do được.

Dưới đây là chi tiết các bước thực hiện:

e Byte 5: byte checksum (nếu byte 5 bằng tổng giá trị 4 byte trên thì dữ liệu thu được là chính xác).

2 Sau khi xác nhận thành công yêu cầu giao tiếp với DHT11, nó sẽ gửi liên tiếp 40 bit về viđiều khiển:

Với mỗi bit dữ liệu gửi về vi điều khiển, DHT11 sẽ kéo chân DATA xuống mức logic 0 trong 50 s, sau đó:

Nó sẽ kéo chân DATA lên mức logic 1 và giữ trong 2628 s nếu dữ liệu truyền về vi điều khiển là bit 0.

Trang 8

Hình 4 Biểu diễn mức logic 0

Nó sẽ kéo chân DATA lên mức logic 1 và giữ trong 70 µs nếu dữ liệu truyền về vi điều khiển là bit 1.

Hình 5 Biểu diễn mức logic 1 5

2.1.5Cảm biến nhiệt độ LM35

Thông số kĩ thuật:

Điện áp hoạt động: 4-20 VDCDòng điện tiêu thụ: khoảng 60uAKhoảng đo: -55°C đến 150°C

Điện áp tuyến tính theo nhiệt độ: 10mV/°CSai số: 0.25°C

Trang 9

2.1.6Cảm biến nhiệt độ DS18B20

Thông số kĩ thuật:

Nguồn: 3 – 5.5V

Dải đo nhiệt độ: -55 đến 125 độ

Sai số: +- 0.5 độ C khi đo ở dải -10 – 85 độ C

2.1.7Màn hình LCD

Hình 6 Màn hình LCD 16026

Màn hình LCD 1602 (Liquid Crystal Display) được sử dụng trong rất nhiều ứng dụng của vi điều khiển LCD 1602 có rất nhiều ưu điểm so với các dạng hiển thị khác như: khả năng hiển thịký tự đa dạng (chữ, số, ký tự đồ họa); dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giaotiếp khác nhau Dưới đây là một số thông số kỹ thuật quan trọng:

Dải điện áp hoạt động: 2.75.5 VDC.Điện áp ra mức cao: > 2.4 VDC.

Trang 10

Điện áp ra mức thấp: < 0.4 VDC.Dòng điện cấp nguồn: 350µA600µA.Nhiệt độ hoạt động: -3075 ℃

Tụ C và C có tác dụng lọc điện áp cấp cho tải tiêu thụ lấy từ đầu ra của IC LM1117, tụ 45

C4 giúp ổn định điện áp đầu ra cung cấp cho tải, tụ C có trở kháng lớn, có tác dụng lọc nhiễu 5

điện áp đầu ra (nhiễu là điện áp không mong muốn làm cho dạng điện áp ra hình răng cưa).

3.1Sơ đồ khối, Lưu đồ thuật toán giao tiếp giữa vi điều khiển ESP32 và module phần cứng

Hình 13 Sơ đồ khối hệ thống

Trang 11

Hình 14 Lưu đồ thuật toán chương trình

Trang 12

Hình 19 Kết quả mô phỏng

5.1Các kết quả đạt được

Trang 13

Hình 20 Thử nghiệm mạch trên breadboard

Hình 21 Kết quả vi điều khiển gửi về web server

CODE:

Trang 14

#include <DHT.h>

#include <LiquidCrystal_I2C.h>#include <PubSubClient.h>#include <WiFi.h>

const char* mqtt_server = "172.20.10.2";const char* mqtt_user = "haison-nguyenphuc";const char* mqtt_password = "soncua2001";uint16_t mqtt_port = 1883;

const char* mqtt_clientId = "ClientEsp32";#define SSID "Minh Huy"

#define PASSWORD "Minhhuy1010"

#define MSG_BUFFER_SIZE 50#define LED 2

WiFiClient wifiClient;PubSubClient client(wifiClient);

#define DHT_SENSOR_PIN 25 // ESP32 pin GIOP23 connected to DHT11 sensor#define DHT_SENSOR_TYPE DHT11

int cambien = 2; //Cảm biến nối chân số 5 Arduinoint giatri;

LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x3F, 16 column and 2 rowsDHT dht_sensor(DHT_SENSOR_PIN, DHT_SENSOR_TYPE);

void setup() {

Serial.begin(115200);

Serial2.begin(115200, SERIAL_8N1, 16, 17); setupWiFi();

client.setServer(mqtt_server, 1883); client.setCallback(callback);

Trang 15

pinMode(LED, OUTPUT);

dht_sensor.begin(); //Khởi động cảm biến pinMode(cambien, INPUT);

lcd.init(); //Khởi động LCD lcd.backlight(); //Mở đèn

lcd.setCursor(0,0); lcd.print("DO AM:"); lcd.setCursor(0,1); lcd.print("C|F:");

void loop() {

if (!client.connected()) { reconnect();

}

client.loop();

digitalWrite(LED, HIGH);

float doam = dht_sensor.readHumidity(); //Đọc độ ẩm

float doC = dht_sensor.readTemperature(); //Đọc nhiệt độ C

float doF = dht_sensor.readTemperature(true); //Đọc nhiệt độ F

// Kiểm tra cảm biến có hoạt động hay không if (isnan(doam) || isnan(doC) || isnan(doF)) {

Serial.println("Không có giá trị trả về từ cảm biến DHT"); return;

Trang 16

}

Serial.print("humidity value: "); Serial.print(doam);

lcd.setCursor(7,0); //con trỏ vị trí số 7, hiện ô số 8 lcd.print(doam);

lcd.setCursor(12,0); //Con trở ở vị trí 12, hiện ô 13 lcd.print("%");

Serial.print("% Temperature value: "); Serial.print(doC);

Serial.print("°C | "); Serial.print(doF); Serial.println("°F");

giatri = analogRead(cambien); //Đọc giá trị cảm biến và gán vào biến giatri Serial.print("Cuong do anh sang: ");

Serial.println(giatri);

lcd.setCursor(5,1); lcd.print(doC); lcd.setCursor(10,1); lcd.print("|"); lcd.setCursor(11,1); lcd.print(doF);

client.publish("sensor1", String(doam).c_str()); client.publish("sensor2", String(doC).c_str()); client.publish("sensor3", String(doF).c_str()); delay(2000);

}

Trang 17

//callback function is used to receive value from mqtt brokervoid callback(char* topic, byte* payload, unsigned int length) {}

void setupWiFi() {

WiFi.begin(SSID, PASSWORD); Serial.println("Waiting for WiFi");

while (WiFi.status() != WL_CONNECTED) { delay(500);

Serial.print("."); }

Serial.println("WiFi Connected."); Serial.print("IP Address: "); Serial.println(WiFi.localIP());}

client.subscribe("connected"); } else {

Serial.print("failed, rc="); Serial.print(client.state());

Serial.println(" try again in 5 seconds"); // Wait 5 seconds before retrying delay(5000);

}

Trang 18

}

5.2Phân tích và đánh giá kết quả

Trong khuôn khổ bài tập lớn môn học Thiết kế hệ thống nhúng, nhóm em đã làm được các công việc:

Lập trình vi điểu khiển giao tiếp với cảm biến DHT11, cảm biến quang trở CDS, LCD và truyền nhận dữ liệu với máy tính.

Gửi dữ liệu lên web server và phân tích

Trang 19

TÀI LIỆU THAM KHẢO

[1] https://www.sparkfun.com/datasheets/Components/DS1307.pdf

[2] https://lib.hpu.edu.vn/bitstream/handle/123456789/17890/7_NguyenNgocTrung_DCL301.pdf

[3] Version-1143054.pdf

https://www.mouser.com/datasheet/2/758/DHT11-Technical-Data-Sheet-Translated-[4] https://www.windriver.com/solutions/learning/rtos

Ngày đăng: 17/06/2024, 17:25

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w