Mô hình phòng thông minh là một hệ thống gồm 3 module chính: bật – tắt đèn tự động, bật – tắt – điều chỉnh tốc độ quạt tự động và bật – tắt tất cả các thiết bị khi có người hoặc không có người trong phòng. Hệ thống hoạt động dựa trên các thông số mà cảm biết đo được từ môi trường trong phòng, từ đó điều chỉnh bật – tắt các thiết bị, độ sáng và tốc độ quạt sao cho người trong phòng cảm thấy dễ chịu và tiện nghi hơn.
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO ĐỒ ÁN LẬP TRÌNH HỆ THỐNG VÀ VI ĐIỀU KHIỂN
ĐỀ TÀI:
MÔ HÌNH PHÒNG THÔNG MINH
GV HƯỚNG DẪN: TS NINH KHÁNH DUY
Trang 2Tên thành viên Nhiệm vụ được giao Chữ ký
Trần Ngọc Hiếu
Module điều khiển quạt theo nhiệt độ phòng:
- Tìm hiểu cách thức đo nhiệt độ từ cảm biến LM35
- Tìm hiểu cách đọc và phát hiện nhấn nút
- Lắp ráp mạch và tiến hành nghiên cứu tìm thuật toán và code chương trình điều khiển cho module của mình
- Thu thập số liệu, kết quả để đưa vào báo cáo
- Làm mô hình mô phỏng
Đoàn Văn Sinh
Module điều khiển bật - tắt các thiết bị trong phòng khi có hoặc không có người:
- Nghiên cứu cách thức đo khoảng cách bằng cảm biến siêu âm
- Nghiên cứu cách thức hoạt động của module 4relay
- Nghiên cưu tìm ra thuật toán để nhận biết được có người vào ra phòng
- Nhận tín hiệu từ module nhiệt , tính toán và
xử lý tín hiệu nhân đươc để điều khiển relay
- Nghiên cứu cách đọc giá trị quang trở
- Khảo sát thực nghiệm để đưa ra số bóng đèn cần sáng sao cho phù hợp với cường độ sáng
-Nghiên cứu thuật toán để viết chương trình điều khiển cho module đèn
- Thu thập kết quả để báo cáo
- Làm slide
Bảng 1: Bảng phân công nhiệm vụ cho từng thành viên
Trang 3Mục lục
Trang 4TÓM TẮT ĐỒ ÁN
Mô hình phòng thông minh là một hệ thống gồm 3 module chính: bật – tắt đèn tự động,bật – tắt – điều chỉnh tốc độ quạt tự động và bật – tắt tất cả các thiết bị khi có người hoặckhông có người trong phòng Hệ thống hoạt động dựa trên các thông số mà cảm biết đođược từ môi trường trong phòng, từ đó điều chỉnh bật – tắt các thiết bị, độ sáng và tốc độquạt sao cho người trong phòng cảm thấy dễ chịu và tiện nghi hơn
I Giới thiệu đề tài
Với tốc độ phát triển nhanh chóng của các ngành công nghiệp hiện đại như côngnghệ thông tin, công nghệ truyền thông, cơ khí, động lực trong thời gian qua không thểtách rời với ngành điện tử Ngành điện tử đóng vai trò rất quan trọng, nó đã xâm nhậpvào cuộc sống con người khá sớm từ những thiết bị đơn giản như đèn chiếu sáng, radio,
…, đến những máy móc phức tạp và ứng dụng công nghệ cao như hệ thống camera,robot…tất cả điều đươc ứng dụng rộng rãi và góp phần hiệu quả vào công việc giảiphóng sức lao động của con người đưa con người hướng tới một thế giới công nghệ mớingày càng hiên đại và tinh vi hơn Do đó, việc ra đời những ngôi nhà thông minh hoặcnhững căn phòng thông minh không còn là những mơ ước của con người nữa mà nó đãđược hiện thực hóa Qua những phương tiện truyền thông, báo chí, chúng ta đã thấynhững mô hình nhà thông minh – phòng thông minh ra đời Là sinh viên khoa Công nghệthông tin, với những kiến thức đã học và những mong muốn tạo ra một căn phòng thôngminh đáp ứng được những nhu cầu thiết yếu của con người Xuất phát từ những ý tưởngtrên nên chúng em đã chọn đề tài “Hệ thống phòng thông minh”
Trong thời quá trình thực hiện mô hình “Hệ thống phòng thông minh”, chúng em
đã cố gắng để hoàn thiện hệ thống một cách tốt nhất Nhưng với kiến thức và sự hiểubiết có hạn nên chúng em không thể tránh khỏi những thiếu sót, vậy nên kính mong thầy
cô và các bạn đóng góp ý kiến để hệ thống của chúng em hoàn thiện hơn
Trang 5II Phân tích đề tài
- Module bật – tắt các bóng đèn trong phòng để điều chỉnh độ sáng trong phòng:
Tự động bật – tắt đèn số lượng đèn sao cho độ sáng giúp cho người dùng cảm thấy dễchịu và đồng thời không bị lãng phí điện Cho phép người dùng bật – tắt đèn khi muốnhoặc không muốn sử dụng
- Module bật – tắt và điều chỉnh tốc độ quạt: Tự động bật – tắt hoặc điều chỉnh tốc
độ quạt sao cho phù hợp với nhiệt độ trong phòng giúp cho cảm thấy dễ chịu, bên cạnh
đó, trong những lúc vừa vận động xong hoặc những lúc cơ thể cảm thấy không thoải máithì chúng ta có thể bật – tắt hoặc điều chỉnh quạt bằng phương pháp thủ công
2 Linh ki n đ ệ ượ ử ụ c s d ng trong h th ng ệ ố
Trang 63 Thi t k và nguyên t c làm vi c c a linh ki n ế ế ắ ệ ủ ệ
3.1 - Module Relay
Hình 1: Module Relay
- Cấu tạo của module Relay:
o VCC: Điện áp dương của nguồn 5V
o GND: Điện áp âm của nguồn
o IN: Có thể set mức cao thấp để điều khiển Relay
o NO: Chân thường mở của Relay
o COM: Chân chung của Relay
o NC: Chân thường đóng của Relay
- Nguyên lý hoạt động: Module rơ-le được sử dụng trong mô hình này là rơ-leđóng ở mức thấp – có nghĩa là khi cấp điện áp ở mức thấp (0V) vào chân tín hiệu thì rơ-letương ứng với chân tín hiệu đó sẽ đóng
- Các tham số kỹ thuật:
+ Điện áp làm việc: 5V+ Ngõ ra Relay tiếp xúc tối đa là AC250 V10A và DC 30V 10A
Trang 73.2 – Cảm biến nhiệt LM35
Hình 2: Cảm biến nhiệt LM35
- Cảm biến nhiệt LM35 là một loại cảm biến tương tự rất hay được sử dụng trongcác ứng dụng đo nhiệt độ thời gian thực Vì nó hoạt động khá chính xác với sai sốnhỏ, đồng thời với kích thước nhỏ và giá thành rẻ là một trong những ưu điểm của
nó Vì đây là cảm biến tương tự nên ta có thể dễ dàng đọc giá trị của nó bằng hàm
Với T là nhiệt độ tính theo °C, V là điện thế đo được tại chân A0
-Sơ đồ mạch lắp mạch:
Trang 8Hình 3: Sơ đồ lắp mạch với Cảm biến nhiệt LM35
- Đoạn code làm việc với LM35:
1 int sensorPin = A0;// chân analog kết nối tới cảm biến LM35
11.//tính ra giá trị hiệu điện thế (đơn vị Volt) từ giá trị cảm biến
12.float voltage = reading * 5.0 1024.0;
13.//cứ mỗi 10mV = 1 độ C
14.// Vì vậy nếu biến voltage là biến lưu hiệu điện thế (đơn vị Volt)
15.// thì ta chỉ việc nhân voltage cho 100 là ra được nhiệt độ!
16
17.float temp = voltage * 100.0;
Trang 919.Serial.println(temp);
20 delay(1000);//đợi 1 giây cho lần đọc tiếp theo
21.}
Trang 103.3 – Cảm biến ánh sáng
Hình 4: Quang trở 5mm
- Quang trở làm bằng chất bán dẫn trở kháng cao và không có tiếp giáp nào Trongbóng tối, quang trở có điện trở lên đến vài MΩ Khi có ánh sáng, điện trở giảmxuống mức một vài trăm Ω
khối vật chất Khi photon có năng lượng đủ lớn đập vào, sẽ làm bật electron khỏiphân tử, trở thành tự do trong khối chất và làm chất bán dẫn thành dấn điện Mức
độ dẫn điện tùy thuộc số photo được hấp thụ
3.4 – Cảm biến khoảng cách HC-SR04
Hình 5: Cảm biến HC-SR04
- Cảm biến khoảng cách siêu âm HC-SR04 được sử dụng rất phổ biến để xác địnhkhoảng cách vì rẻ và chính xác Cảm biến sử dụng song siêu âm và có thể đokhoảng cách từ 2 – 300cm, với độ chính xác gần như chỉ phụ thuộc vào lập trình
- Cảm biến HC-SR04 có 4 chân:
- Vcc: 5V
- Trig: Một chân digital output
- Echo: Một chân digital input
- GND: chân nối đất
- Nguyên lý hoạt động: Để do khoảng cách, ta sẽ phát xung rất ngắn ( 5 µs ) từchân Trig Sau đó, cảm biến sẽ tạo ra 1 xung HIGH ở chân Echo cho đến khi nhậnlại được sóng phản xạ ở pin này Chiều rộng của xung sẽ bằng với thời gian songsiêu âm được phát từ cảm biến và quay trở lại
29.412… Khi đã tính được thời gian, ta sẽ chia cho 29.412 để nhận được khoảngcách
Trang 11- Sơ đồ lắp mạch:
Hình 6: Sơ đồ lắp mạch với cảm biến HC-SR04
- Đoạn code làm việc với cảm biến HC-SR04:
1 const int trig = 8;// chân trig của HC-SR04
2 const int echo = 7;// chân echo của HC-SR04
3
4 void setup()
5 {
6 Serial.begin(9600);// giao tiếp Serial với baudrate 9600
7 pinMode(trig,OUTPUT);// chân trig sẽ phát tín hiệu
8 pinMode(echo,INPUT);// chân echo sẽ nhận tín hiệu
9 }
10
11.void loop()
12.{
Trang 1218 delayMicroseconds(2);
19 digitalWrite(trig,1);// phát xung từ chân trig
20 delayMicroseconds(5);// xung có độ dài 5 microSeconds
21 digitalWrite(trig,0);// tắt chân trig
22
23./* Tính toán thời gian */
24.// Đo độ rộng xung HIGH ở chân echo
25 duration = pulseIn(echo,HIGH);
26.// Tính khoảng cách đến vật
27 distance = int(duration/2/29.412);
28
29./* In kết quả ra Serial Monitor */
30.Serial.print(distance);
31.Serial.println("cm");
32 delay(200);
33.}
III Giải pháp triển khai
1 Module b t – t t các thi t b trong phòng khi có ho c không có ng ậ ắ ế ị ặ ườ i trong phòng
1.1Như ở phần đặt vấn đề, module này có các chức năng chính như sau:
o Nhận biết người vào, ra phòng
o Bật – tắt 2 module đèn, quạt có trong phòng
1.2Giải pháp:
o Sử dụng 2 cảm biến siêu âm HC-SR04 để nhận biết có người ra, vào phòng
o Sử dụng module 4 relay để bật – tắt các module khác
a) Sử dụng 2 cảm biến siêu âm HC-SR04 để nhận biết có người ra, vào phòng
Trang 13Hình 7: Sơ đồ khối của mạch đếm số người vào ra phòng
- Nếu có người ra, vào phòng thì khoảng cách distance 1 và distance 2 sẽ thay đổitheo tuần tự như sau:
o Khi có người vào phòng thì: distance 1 sẽ giảm, distance 2 không đổi distance 1 giảm và distance 2 giảm distance 1 trở về khoảng cách ban đầu(khoảng cách khi không có vật cản) và distance 2 giảm so với khoảng cáchkhi không có vật cảm cho đến khi distance 1 và distance 2 trở về trạngthái ban đầu
o Khi có người ra phòng thì: distance 2 sẽ giảm, distance 1 không đổi distance 2 giảm và distance 1 giảm distance 2 trở về khoảng cách ban đầu(khoảng cách khi không có vật cản) và distance 1 giảm so với khoảng cáchkhi không có vật cảm cho đến khi distance 1 và distance 2 trở về trạngthái ban đầu
b) Sử dụng module 4 relay để bật – tắt các module khác
- Khi không có người trong phòng thì cấp điện thế đầu ra ở mức cao nối đến chânđiều khiển của relay tương ứng cấp nguồn cho các module khác ở trong phòng thìlúc đó nguồn nối đến các module đó sẽ ngắt
- Khi có người trong phòng thì cấp điện thế đầu ra ở mức thấp (0V) nối đến chânđiều khiển của relay tương ứng cấp nguồn cho các module khác ở trong phòng thìlúc đó nguồn nối đến các module đó sẽ đóng
Trang 14- Sơ đồ mạch điện:
Hình 8: Sơ đồ lắp ráp của module đếm người vào – ra phòng
Trang 15Gọi đến hàm nhận biết người vào ra phòng(trong chương trình là hàm personInRoom() )
- Nếu có người vào phòng thì biến lưu
số người trong phòng sẽ được tăng lên 1
- Nếu có người ra khỏi phòng thì biến lưu số người trong phòng sẽ bị giảm đi
1 (với điều kiện số người trong phòng phải lớn hơn 0 thì mới giảm)
- Khởi tạo biến lưu số người trong phòng và chomặc định là 0 (tức là khi khởi động hệ thống thì chưa có ai trong phòng)
- Khai báo các chân xuất tín hiệu và các chân nhận tín hiệu
START
Trang 162 Module đi u ch nh b t – t t và t c đ c a qu t trong phòng ề ỉ ậ ắ ố ộ ủ ạ
2.1 Đặt vấn đề: module có 2 chế độ là chế độ tự động và chế độ tùy chọn
o Điều khiển tốc độ quạt tự động theo nhiệt độ trong phòng
o Điều khiển tốc độ quạt thủ công tùy theo nhu cầu người sử dụng
2.2 Giải pháp:
o Sử dụng cảm biến nhiệt độ LM35 để đo nhiệt độ trong phòng
o Tính toán và khảo sát thực nghiệm nhằm chia khoảng nhiệt độ phù hợp vớitừng cấp độ của quạt
o Sử dụng nút bấm để chọn chế độ và chọn cấp độ phù hợp với nhu cầungười sử dụng
a Sử dụng cảm biến nhiệt độ LM35 để đo nhiệt độ trong phòng
- Theo phần giới thiệu về cảm biến nhiệt độ LM35, chúng ta tính được nhiệt độtrong phòng
b Khảo sát thực nghiệm và chia khoảng nhiệt độ phù hợp với từng cấp độ của quạt
- Bằng thực tế tại một số phòng, ta chia được các khoảng nhiệt độ sau:
o Dưới 27°C thì không cần bật quạt – tương ứng với cấp độ quạt là 0
o Từ 27°C đến dưới 32°C thì cần điều chỉnh quạt ở cấp độ 1
o Từ 32°C đến dưới 35°C thì cần điều chỉnh quạt ở cấp độ 2
o Từ 35°C trở lên thì cần điều chỉnh quạt ở cấp độ 3
Với quạt được sử dụng ở đây có 4 cấp độ tương ứng nêu trên và tăng dần từ 1 đến
3, cấp độ 0 tương ứng với tắt quạt
Trang 17Hình 9: Sơ đồ mạch của module điều chỉnh tốc độ quạt trong phòng
Trang 18- Sơ đồ thuật toán
đó cấp tín hiệu điều khiểncấp độ quạt theo yêu cầu
Chế độ thủ côngChế độ tự động
Trang 193 Module đi u khi n đèn t đ ng trong phòng ề ể ự ộ
Trang 20- Sơ đồ mạch
Hình 10: Sơ đồ mạch của module điều khiển đèn trong phòng
Trang 21- Sơ đồ thuật toán
Nếu biến lưu chế độ trongphòng bằng 1 (tức tắtđèn) thì thực hiện tắt hếtđèn trong phòng
Nếu biến lưu chế độ bằng 0
Nếu có nhấn nút chuyển chế độ thì thựchiện thay đổi giá trị biến lưu chế độ: nếu đangbằng 0 thì chuyển thành 1 và ngược lại
- Khởi tạo biến lưu chế độ trong phòng (mặc định bằng 0, tức là chạy chế độ tự động)
- Khai báo các chân xuất tín hiệu và các chân nhận tín hiệu
START
Trang 224 K t n i các module l i v i nhau ế ố ạ ớ
Sơ đồ khối kết nối:
Trang 23IV Kết quả đạt được
1 Module nhận biết có người trong phòng hay không
Hình 11: Khi không có người trong phòng
Trang 242 Module điều chỉnh tốc độ quạt trong phòng
3 Module điều chỉnh bóng đèn trong phòng
Trang 25o Do thiết kế mô hình nhỏ dẫn đến 1 số trục trặc nhỏ khi xác định người vào
ra trong hệ thống
- Kết luận:
Nhìn chung, hệ thống đã hoạt động được như mục tiêu ban đầu đề ra, được kếthợp giữa tự động và thủ công giúp tiện lợi hơn và phù hợp với nhu cầu của ngườidung Tuy nhiên, hệ thống vẫn cần cãi thiện hơn về độ hoạt động chính xác nhằmtối ưu hơn
- Hướng phát triển:
o Khắc phục những hạn chế ở trên
o Kết hợp camera để nhận biết người vào, ra
Link code từng module:
https://drive.google.com/file/d/1cGycgitVlN1drs9Kd-kse8VUu7a1NpjU/view?
usp=sharing