Thiếu chức năng: hiển thị ngày, giờ hiện tại 1.7.. Các chức năng đã thực hiện có đáp ứng tốt độ nhạy, tốc độ tính toán, hiển thị 2.3.. LỜI NÓI ĐẦUĐộ ẩm là đại lượng vật lý dùng để xác đị
Trang 1TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT
BỘ MÔN KỸ THUẬT ĐIỆN - ĐIỆN TỬ
====o0o====
BÁO CÁO
BÀI TẬP LỚN VI ĐIỀU KHIỂN VÀ
ỨNG DỤNG
ĐỀ TÀI:
Tìm hiểu về cảm biến độ ẩm và thiết kế mạch hiển
thị giá trị độ ẩm trên LCD
Nhóm: 03 – DDT07 – 2023 GVHD: ThS Nguyễn Tiến Sỹ
Trang 2Hà Nội, 12/2023 NHÓM 03– DCCDCDT66A
Phạm Văn Đức Phạm Công Chức Lê Đức Kiên
Trang 32 Phạm Công Chức
Nhận xét (phần GVHD ghi):
0 Tổng điểm ban đầu
1 Điểm trừ
1.1 Không có sản phẩm
1.2 Không có báo cáo bản cứng
1.3 Thiếu chức năng: đo độ ẩm
1.4 Thiếu chức năng: hiển thị độ ẩm lên LCD
1.5 Thiếu chức năng: đo nhiệt độ
1.6 Thiếu chức năng: hiển thị ngày, giờ hiện tại
1.7 Thiếu chức năng: chỉnh ngày, giờ hệ thống
1.8 Thiếu một đoạn code viết bằng ASM
1.9 PCB không có tên nhóm và các thành viên
1.10 Báo cáo sơ sài/thiếu nội dung (tên để tài/nhóm/mục lục/yêu cầu
của đề tài/kế hoạch nhóm/thiết kế sơ đồ khối/code)
Trang 42 Điểm cộng
2.1 Mạch nhỏ gọn, sắp xếp linh kiện hợp lý
2.2 Các chức năng đã thực hiện có đáp ứng tốt (độ nhạy, tốc độ tính toán, hiển thị)
2.3 Có chức năng: hiển thị nhiệt độ và độ ẩm
2.4 Có chức năng: đo khí gas
2.5 Có chức năng: cảnh báo cháy
2.6 Dễ sử dụng
2.7 Trình bày rõ ràng, trả lời được các câu hỏi chuyên môn
TỔNG ĐIỂM:
Trang 5I LỜI NÓI ĐẦU
Độ ẩm là đại lượng vật lý dùng để xác định khối lượng hơi nước tính theo gam
có trong đơn vị thể tích xác định, hay nói cách khác đó là lượng hơi nước có trong không khí Độ ẩm chính là thước đo dùng để xác định khả năng mưa hoặc lượng mưa, lượng sương mù của thời tiết
Khi độ ẩm không khí quá thấp hoặc quá cao sẽ có thể gây hại cho sức khỏe của con người Vậy độ ẩm cao là bao nhiêu? Độ ẩm trên 80% được đánh giá là cao Khi
độ ẩm cao, tình trạng ngưng tụ hơi nước sẽ xảy ra, thường xuất hiện các hiện tượng nồm, đọng hơi nước trên cửa sổ, nền nhà, tường gạch, tường thạch cao…
Khi độ ẩm trong không khí đạt trên 80% đến 100% thì đây là độ ẩm bão hòa hay còn gọi là độ ẩm cực đại, lúc này hơi nước trong không khí không thể bốc hơi và bay thêm vào môi trường được nữa
Ngược lại, độ ẩm thấp là mức dưới 40%, lúc này, bạn sẽ cảm thấy da bị khô, bị căng, mẩn ngứa, nứt nẻ và cảm thấy không khí khô hanh
Ngoài việc trau dồi các kiến thức về môn học qua lý thuyết và bài tập trên lớp, chúng em cũng mong muốn được áp dụng các kiến thức này vào các vấn đề thiết thực
và gần gũi trong thực tế Vì vậy, nhóm chúng em đã lựa chọn đề tài: “Đo và hiển thị
độ ẩm” làm chủ đề cho bài tập lớn của môn học này
Chúng em xin chân thành cảm ơn Thầy ThS Nguyễn Tiến Sỹ đã tận tình giảng dạy và củng cố các kiến thức của môn học để chúng em có thể hoàn thành bài tập lớn này
Trang 6II MÔ TẢ ĐỀ TÀI
1.1 Yêu cầu chức năng
- Chức năng 1: Đo độ ẩm
- Chức năng 2: Đo nhiệt độ
- Chức năng 3: Hiển thị lên LCD
o Hiển thị tên nhóm trên LCD
o Hiển thị giá trị nhiệt độ ở hàng 1 của LCD
o Hiển thị giá trị độ ẩm ở hàng 2 của LCD
o Hiển thị chất lượng không khí
- Chức năng 4: Cảnh báo cháy
1.2 Yêu cầu phi chức năng
- Đóng hộp sản phẩm kích thước 195 x 120 x 40 mm
- Giá thành dự kiến: 500.000 đ
- Đối tượng sử dụng: gia đình
1.3 Sơ đồ khối hệ thống
- Hệ thống gồm 4 khối cơ bản
o Khối nguồn: cấp nguồn 5VDC cho các khối còn lại
o Khối biến trở: DHT11; DC5V; FLAME SENSOR
o Khối vđk trung tâm: ARDUINO UNO R3
o Khối LCD: LCD 16x2 hiển thị tên nhóm và giá trị điện áp
Trang 7Hình 1 Sơ đồ khối sản phẩm
1.4 Kế hoạch thực hiện và phân chia công việc
1
2
Chương2.
2.1 Khối chức năng A
Đo độ ẩm và nhiệt độ
2.2 Khối chức năng B
Hiển thị trên màn hình LCD 16x2
2.3 Khối chức năng C
Cảnh báo cháy
Trang 82.4 Hoàn thiện sản phẩm
Trang 92.5 Sơ đồ nguyên lý toàn mạch
Hình 2: Sơ đồ nguyên lý toàn mạch
2.6 Sơ đồ Layout mạch
Trang 102.7 Hình ảnh thật sản phẩm
Trang 13IV KẾT LUẬN
TÀI LIỆU THAM KHẢO
PHỤ LỤC A: ĐÓNG GÓP CÁC THÀNH VIÊN
A.1 NGUYỄN VĂN A
A.2 PHẠM THỊ B
Trang 141 #include <Wire.h>
2 #include <dht.h>
3 #include <LiquidCrystal_I2C.h>
4 dht myDHT_3;
5 LiquidCrystal_I2C mylcd(0x27,16,2);
6 int dht_3_gethumidity() {
7 int chk = myDHT_3.read11(3);
8 int value = myDHT_3.humidity;
9 return value;
10 }
11 int dht_3_gettemperature() {
12 int chk = myDHT_3.read11(3);
13 int value = myDHT_3.temperature;
14 return value;
15 }
16 void setup(){
17 mylcd.init();
18 mylcd.backlight();
19 mylcd.clear();
20 mylcd.setCursor(0, 0);
21 mylcd.print("Do do am ");
22 mylcd.setCursor(0, 1);
23 mylcd.print("va nhiet do");
24 delay(3000);
25 mylcd.clear();
26 mylcd.setCursor(0, 0);
27 mylcd.print("Khoi dong ");
28 mylcd.setCursor(0, 1);
29 mylcd.print("Design By Nhom 3");
30 delay(3000);
31 pinMode(5, INPUT);
32 pinMode(6, OUTPUT);
33 pinMode(6, OUTPUT);
34 }
Trang 1535 void loop(){
36 mylcd.clear();
37 delay(500);
38 mylcd.setCursor(1-1, 1-1);
39 mylcd.print("Nhiet do :");
40 mylcd.setCursor(13-1, 1-1);
41 mylcd.print(dht_3_gettemperature());
42 mylcd.setCursor(16-1, 1-1);
43 mylcd.print("C");
44 mylcd.setCursor(1-1, 2-1);
45 mylcd.print("Do am :");
46 mylcd.setCursor(13-1, 2-1);
47 mylcd.print(dht_3_gethumidity());
48 mylcd.setCursor(16-1, 2-1);
49 mylcd.print("%");
50 delay(2000);
51 mylcd.clear();
52 mylcd.setCursor(1-1, 1-1);
53 mylcd.print("Canh bao chay");
54 mylcd.setCursor(16-1, 1-1);
55 mylcd.print(digitalRead(5));
56 if (digitalRead(5) == 0) {
57 digitalWrite(6,HIGH);
58 }
59 if (digitalRead(5) == 1) {
60 noTone(6);
61 }
62 delay(2000);
63.}