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.
TRƯỜ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 ĐÀ NẴNG, 5-2019 Tên thành viên Nhiệm vụ giao Chữ ký 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 phát nhấn nút Trần Ngọc Hiếu - Lắp ráp mạch tiến hành nghiên cứu tìm thuật tốn code chương trình điều khiển cho module - Thu thập số liệu, kết để đưa vào báo cáo - Làm mơ hình mơ Module điều khiển bật - tắt thiết bị phịng có khơng có người: - Nghiên cứu cách thức đo khoảng cách cảm biến siêu âm Đoàn Văn Sinh - Nghiên cứu cách thức hoạt động module relay - Nghiên cưu tìm thuật tốn để nhận biết có người vào phịng - Nhận tín hiệu từ module nhiệt , tính tốn xử lý tín hiệu nhân đươc để điều khiển relay - Làm báo cáo Module điều khiển bật – tắt số lượng đèn có phịng theo cường độ sáng phòng: - Nghiên cứu cách đọc giá trị quang trở Trần Văn Hồng Quân - Khảo sát thực nghiệm để đưa số bóng đèn cần sáng cho phù hợp với cường độ sáng -Nghiên cứu thuật tốn để viết chương trình điều khiển cho module đèn - Thu thập kết để báo cáo - Làm slide Bảng 1: Bảng phân công nhiệm vụ cho thành viên Mục lục TÓM TẮT ĐỒ ÁN Mơ hình phịng thơng minh hệ thống gồm module chính: bật – tắt đèn tự động, bật – tắt – điều chỉnh tốc độ quạt tự động bật – tắt tất thiết bị có người khơng có người phịng Hệ thống hoạt động dựa thông số mà cảm biết đo từ mơi trường phịng, từ điều chỉnh bật – tắt thiết bị, độ sáng tốc độ quạt cho người phòng cảm thấy dễ chịu tiện nghi I Giới thiệu đề tài Với tốc độ phát triển nhanh chóng ngành công nghiệp đại công nghệ thông tin, cơng nghệ truyền thơng, khí, động lực thời gian qua tách rời với ngành điện tử Ngành điện tử đóng vai trị quan trọng, xâm nhập vào sống người sớm từ thiết bị đơn giản đèn chiếu sáng, radio, …, đến máy móc phức tạp ứng dụng công nghệ cao hệ thống camera, robot…tất điều đươc ứng dụng rộng rãi góp phần hiệu vào cơng việc giải phóng sức lao động người đưa người hướng tới giới công nghệ ngày hiên đại tinh vi Do đó, việc đời ngơi nhà thơng minh phịng thơng minh khơng cịn mơ ước người mà thực hóa Qua phương tiện truyền thơng, báo chí, thấy mơ hình nhà thơng minh – phịng thơng minh đời Là sinh viên khoa Công nghệ thông tin, với kiến thức học mong muốn tạo phịng thơng minh đáp ứng nhu cầu thiết yếu người Xuất phát từ ý tưởng nên chúng em chọn đề tài “Hệ thống phịng thơng minh” Trong thời q trình thực mơ hình “Hệ thống phịng thơng minh”, chúng em cố gắng để hoàn thiện hệ thống cách tốt Nhưng với kiến thức hiểu biết có hạn nên chúng em tránh khỏi thiếu sót, nên kính mong thầy bạn đóng góp ý kiến để hệ thống chúng em hồn thiện II Phân tích đề tài Các chức hệ thống - Module bật – tắt thiết bị có khơng có người phòng module quan trọng hệ thống, phát có người khơng có người phịng từ cung cấp nguồn cho module có phòng để chúng hoạt động nhằm giúp tiết kiệm điện cho gia chủ, bên cạnh việc tắt bật thiết bị khác có phịng giúp thiết bị có hệ thống có thời gian nghỉ, giúp kéo dài tuổi thọ hệ thống - Module bật – tắt bóng đèn phòng để điều chỉnh độ sáng phòng: Tự động bật – tắt đèn số lượng đèn cho độ sáng giúp cho người dùng cảm thấy dễ chịu đồng thời khơng bị lãng phí điện Cho phép người dùng bật – tắt đèn muốn không muốn sử dụng - Module bật – tắt điều chỉnh tốc độ quạt: Tự động bật – tắt điều chỉnh tốc độ quạt cho phù hợp với nhiệt độ phòng giúp cho cảm thấy dễ chịu, bên cạnh đó, lúc vừa vận động xong lúc thể cảm thấy khơng thoải mái bật – tắt điều chỉnh quạt phương pháp thủ công Linh kiện sử dụng hệ thống STT Tên thiết bị Số lượng Arduino R3 Module relay Quang trở Cảm biến nhiệt LM35 Cảm biến HC-SR04 Nút bấm Board mạch LCD 16x2 Nguồn 12V 10 Biến trở 11 Điện trở 12 Dây dẫn 13 Jack cắm nguồn Bảng 2: Danh sách linh kiện sử dụng hệ thống Thiết kế nguyên tắc làm việc linh kiện 3.1 - Module Relay Hình 1: Module Relay - Cấu tạo module Relay: o o o o o o VCC: Điện áp dương nguồn 5V GND: Điện áp âm nguồn IN: Có thể set mức cao thấp để điều khiển Relay NO: Chân thường mở Relay COM: Chân chung Relay NC: Chân thường đóng Relay - Nguyên lý hoạt động: Module rơ-le sử dụng mơ hình rơ-le đóng mức thấp – có nghĩa cấp điện áp mức thấp (0V) vào chân tín hiệu rơ-le tương ứng với chân tín hiệu đóng - Các tham số kỹ thuật: + Điện áp làm việc: 5V + Ngõ Relay tiếp xúc tối đa AC250 V10A DC 30V 10A 3.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 loại cảm biến tương tự hay sử dụng ứng dụng đo nhiệt độ thời gian thực Vì hoạt động xác với sai số nhỏ, đồng thời với kích thước nhỏ giá thành rẻ ưu điểm Vì cảm biến tương tự nên ta dễ dàng đọc giá trị hàm ‘analogRead()’ Nhiệt độ xác định cách hiệu điện ngõ LM35, đơn vị đo nhiệt độ °C nhiệt độ thay đổi tuyến tính 10mV/°C Nguyên lý hoạt động: Cảm biến nhiệt LM35 hoạt động cách cho giá trị hiệu điện định chân Vout (chân giữa) ứng với mức nhiệt độ Như vậy, cách đưa vào chân trái cảm biến LM35 hiệu điện 5V chân phải nối đất, đo hiệu điện chân pin A0 Arduino, ta xác định nhiệt độ cơng thức: Với T nhiệt độ tính theo °C, V điện đo chân A0 -Sơ đồ mạch lắp mạch: Hì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: int sensorPin = A0;// chân analog kết nối tới cảm biến LM35 void setup() { Serial.begin(9600); //Khởi động Serial mức baudrate 9600 } void loop() { //đọc giá trị từ cảm biến LM35 int reading = analogRead(sensorPin); 10 11 //tính giá trị hiệu điện (đơn vị Volt) từ giá trị cảm biến 12 float voltage = reading * 5.0 / 1024.0; 13 //cứ 10mV = độ C 14 // Vì biến voltage biến lưu hiệu điện (đơn vị Volt) 15 // ta việc nhân voltage cho 100 nhiệt độ! 16 17 float temp = voltage * 100.0; 18 19 Serial.println(temp); 20 delay(1000);//đợi giây cho lần đọc 21 } 3.3 – Cảm biến ánh sáng Hình 4: Quang trở 5mm - Quang trở làm chất bán dẫn trở kháng cao khơng có tiếp giáp Trong bóng tối, quang trở có điện trở lên đến vài MΩ Khi có ánh sáng, điện trở giảm xuống mức vài trăm Ω - Nguyên lý hoạt động: Quang trở hoạt động dựa hiệu ứng quang điện khối vật chất Khi photon có lượng đủ lớn đập vào, làm bật electron khỏi phân tử, trở thành tự khối chất 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 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 sử dụng phổ biến để xác định khoảng cách rẻ xác Cảm biến sử dụng song siêu âm đo khoảng cách từ – 300cm, với độ xác gần phụ thuộc vào lập trình Cảm biến HC-SR04 có 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: Để khoảng cách, ta phát xung ngắn ( µs ) từ chân Trig Sau đó, cảm biến tạo xung HIGH chân Echo nhận lại sóng phản xạ pin Chiều rộng xung với thời gian song siêu âm phát từ cảm biến quay trở lại Tốc độ âm khơng khí 340m/s (hằng số vật lý), tương đương với 29.412… Khi tính thời gian, ta chia cho 29.412 để nhận khoảng cách 10 - 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: const int trig = 8; // chân trig HC-SR04 const int echo = 7; // chân echo HC-SR04 void setup() { Serial.begin(9600); // giao tiếp Serial với baudrate 9600 pinMode(trig,OUTPUT); // chân trig phát tín hiệu pinMode(echo,INPUT); // chân echo nhận tín hiệu } 10 11 void loop() 12 { 13 unsigned long duration; // biến đo thời gian 14 int distance; // biến lưu khoảng cách 15 16 /* Phát xung từ chân trig */ 17 digitalWrite(trig,0); // tắt chân trig 11 18 delayMicroseconds(2); 19 digitalWrite(trig,1); // phát xung từ chân trig 20 delayMicroseconds(5); // xung có độ dài microSeconds 21 digitalWrite(trig,0); // tắt chân trig 22 23 /* Tính tố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 Serial Monitor */ 30 Serial.print(distance); 31 Serial.println("cm"); 32 delay(200); 33 } III Giải pháp triển khai Module bật – tắt thiết bị phịng có ho ặc khơng có ng ười phịng 1.1Như phần đặt vấn đề, module có chức sau: o Nhận biết người vào, phòng o Bật – tắt module đèn, quạt có phịng 1.2Giải pháp: o Sử dụng 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 relay để bật – tắt module khác a) Sử dụng cảm biến siêu âm HC-SR04 để nhận biết có người ra, vào phịng 12 Hình 7: Sơ đồ khối mạch đếm số người vào phịng - Nếu có người ra, vào phịng khoảng cách distance distance thay đổi theo sau: o Khi có người vào phịng thì: distance giảm, distance khơng đổi distance giảm distance giảm distance trở khoảng cách ban đầu (khoảng cách khơng có vật cản) distance giảm so với khoảng cách khơng có vật cảm distance distance trở trạng thái ban đầu o Khi có người phịng thì: distance giảm, distance không đổi distance giảm distance giảm distance trở khoảng cách ban đầu (khoảng cách khơng có vật cản) distance giảm so với khoảng cách khơng có vật cảm distance distance trở trạng thái ban đầu b) Sử dụng module relay để bật – tắt module khác - Khi khơng có người phịng cấp điện đầu mức cao nối đến chân điều khiển relay tương ứng cấp nguồn cho module khác phịng lúc nguồn nối đến module ngắt - Khi có người phịng cấp điện đầu mức thấp (0V) nối đến chân điều khiển relay tương ứng cấp nguồn cho module khác phịng lúc nguồn nối đến module đóng 1.3 Triển khai - Sơ đồ khối Vi xử lý Tín hiệu điều khiển Cảm biến siêu từ module âm Cảm biến siêu âm Module relay 13 - Sơ đồ mạch điện: Hình 8: Sơ đồ lắp ráp module đếm người vào – phòng 14 - Thuật toán: START - - Khởi tạo biến lưu số người phòng cho mặc định (tức khởi động hệ thống chưa có phịng) Khai báo chân xuất tín hiệu chân nhận tín hiệu Gọi đến hàm nhận biết người vào phịng (trong chương trình hàm personInRoom() ) - Nếu có người vào phịng biến lưu số người phòng tăng lên - Nếu có người khỏi phịng biến lưu số người phòng bị giảm (với điều kiện số người phòng phải lớn giảm) Nếu số người phịng lớn (tức có người phịng ) bật thiệt bị phòng Nếu số người phịng (tức phịng khơng có người ) tắt hết thiết bị phòng Delay 1000 ms 15 Module điều chỉnh bật – tắt tốc độ quạt phòng 2.1 Đặt vấn đề: module có chế độ chế độ tự động chế độ tùy chọn o Điều khiển tốc độ quạt tự động theo nhiệt độ 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 độ phòng o Tính tốn khảo sát thực nghiệm nhằm chia khoảng nhiệt độ phù hợp với cấp độ quạt o Sử dụng nút bấm để chọn chế độ chọn cấp độ phù hợp với nhu cầu người sử dụng a Sử dụng cảm biến nhiệt độ LM35 để đo nhiệt độ phòng - Theo phần giới thiệu cảm biến nhiệt độ LM35, tính nhiệt độ phòng b Khảo sát thực nghiệm chia khoảng nhiệt độ phù hợp với cấp độ quạt - Bằng thực tế số phòng, ta chia khoảng nhiệt độ sau: o Dưới 27°C khơng cần bật quạt – tương ứng với cấp độ quạt o Từ 27°C đến 32°C cần điều chỉnh quạt cấp độ o Từ 32°C đến 35°C cần điều chỉnh quạt cấp độ o Từ 35°C trở lên cần điều chỉnh quạt cấp độ Với quạt sử dụng có cấp độ tương ứng nêu tăng dần từ đến 3, cấp độ tương ứng với tắt quạt 2.3 Triển khai - Sơ đồ khối: Cảm biến nhiệt Vi xử lý Tín hiệu điều khiển - Nhóm nút bấm - Sơ đồ mạch: 16 Hình 9: Sơ đồ mạch module điều chỉnh tốc độ quạt phòng 17 - Sơ đồ thuật toán START - Khai báo chân vào vi điều khiển Khởi tạo biến s lưu chế độ sử dụng (mặc định chế độ tự động: s = 1) Gọi đến hàm chọn chế độ Chế độ tự động Chế độ thủ công Đọc tính tốn nhiệt độ cấp tín hiệu điều khiển phù hợp để bật cấp độ quạt phù hợp Đọc nút bấm từ nhận biết người dùng lựa chọn cấp độ quạt , từ cấp tín hiệu điều khiển cấp độ quạt theo yêu cầu người dùng Delay 1000 ms 18 Module điều khiển đèn tự động phòng 3.1 Đặt vấn đề: o Đo độ sáng phòng điều chỉnh số bóng đèn sáng cho phù hợp với nhu cầu sử dụng người dùng 3.2 Giải pháp: o Với đặc tính thay đổi điện trở quang trở theo cường độ sáng, ta nhận biết thay đổi cường độ sáng phòng o Bằng thực nghiệm, ta chia khoảng điện đo (ứng với tín hiệu đọc từ chân analog ứng với 0V – 1024 ứng với 5V) từ quang trở theo khoảng cường độ sáng tương ứng, cụ thể sau: Dưới 700 không cần bật đèn Từ 700 đến 800 bật bóng Từ 800 đến 900 bật bóng Từ 900 đến 1000 bật bóng Từ 1000 trở lên bật bóng Ở đây, cường độ sáng lớn giá trị đọc nhỏ 3.3 Triển khai - Sơ đồ khối Quang trở Vi xử lý Tín hiệu khiển đèn điều Nút bấm 19 - Sơ đồ mạch Hình 10: Sơ đồ mạch module điều khiển đèn phịng 20 - Sơ đồ thuật tốn START - Khởi tạo biến lưu chế độ phòng (mặc định 0, tức chạy chế độ tự động) Khai báo chân xuất tín hiệu chân nhận tín hiệu Gọi đến hàm chuyển chế độ, hàm có chức nhận biết người dùng có bấm nút chuyển chế độ hay khơng Nếu có nhấn nút chuyển chế độ thực thay đổi giá trị biến lưu chế độ: chuyển thành ngược lại Nếu biến lưu chế độ (tức chế độ tự động) gọi đến hàm tính tốn số đèn cần bật theo độ sáng phòng thực bật số đèn tương ứng Nếu biến lưu chế độ phòng (tức tắt đèn) thực tắt hết đèn phịng Delay 1000 ms 21 Kết nối module lại với Sơ đồ khối kết nối: 22 IV Kết đạt Module nhận biết có người phịng hay khơng Hình 11: Khi khơng có người phịng Hình 12.Khi có người vào phịng ( mơ hình nên có vật thể qt qua lối vào bật thiết bị phịng) 23 Module điều chỉnh tốc độ quạt phòng Module điều chỉnh bóng đèn phịng 24 V Đánh giá kết luận - - - Ưu điểm: o Hệ thống có tính ứng dụng tốt o Được kết hợp tự động thủ công Nhược điểm: o Độ xác thiết bị chưa cao o Vẫn cịn số trục trặc nhỏ lỏng dây dẫn đến hệ thống hoạt động không ổn định o Do thiết kế mơ hình nhỏ dẫn đến số trục trặc nhỏ xác định người vào hệ thống Kết luận: Nhìn chung, hệ thống hoạt động mục tiêu ban đầu đề ra, kết hợp tự động thủ công giúp tiện lợi phù hợp với nhu cầu người dung Tuy nhiên, hệ thống cần cãi thiện độ hoạt động xác nhằm tối ưu - Hướng phát triển: o Khắc phục hạn chế o Kết hợp camera để nhận biết người vào, Link code module: https://drive.google.com/file/d/1cGycgitVlN1drs9Kd-kse8VUu7a1NpjU/view? usp=sharing 25 ... Sơ đồ khối: Cảm biến nhiệt Vi xử lý Tín hiệu điều khiển - Nhóm nút bấm - Sơ đồ mạch: 16 Hình 9: Sơ đồ mạch module điều chỉnh tốc độ quạt phòng 17 - Sơ đồ thuật toán START - Khai báo chân vào vi. .. khai - Sơ đồ khối Quang trở Vi xử lý Tín hiệu khiển đèn điều Nút bấm 19 - Sơ đồ mạch Hình 10: Sơ đồ mạch module điều khiển đèn phịng 20 - Sơ đồ thuật tốn START - Khởi tạo biến lưu chế độ phòng (mặc... từ cấp tín hiệu điều khiển cấp độ quạt theo yêu cầu người dùng Delay 1000 ms 18 Module điều khiển đèn tự động phòng 3.1 Đặt vấn đề: o Đo độ sáng phòng điều chỉnh số bóng đèn sáng cho phù hợp