Ngày nay cùng với sự phát triển của ngành khoa học kỹ thuật , kỹ thuật điện tử đóng vai trò quan trọng trong mỗi lĩnh vực khoa học kỹ thuật , quản lý ,công nghiệp tự động hoá , cung cấp thông tin do đó chúng ta phải nắm bắt và vận dụng một cách có hiệu quả nhằm góp phần vào sự phát triển của nền khoa học kỹ thuật thế giới nói chung và trong kỹ thuật điện tử nói riêng. Với nền công nghiệp phát triển 4.0 như bây giờ thì chúng ta sẽ không ngạc nhiên gì khi các thiết bị điện ngày càng phát triển và hiện đại . Các thiết bị ngày càng tinh vi và có mặt rất nhiều trong đời sống con người mang lại cho chúng ta sự tiện nghi chưa từng có. Qua thời gian nghiên cứu và tìm hiểu em quyết định chọn đề tài “ Sử dụng kít ADRUINO NANO xây dựng hệ thống phòng thông minh sử dụng cảm biến nhiệt độ và các loại cảm biến khác đóng ngắt RELAY”.
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA KỸ THUẬT ĐIỆN TỬ 1
BÁO CÁO BÀI TẬP LỚN MÔN ĐỒ ÁN THIẾT KẾ MẠCH ĐIỆN TỬ
Trang 2NHẬN XÉT CỦA GIẢNG VIÊN
Trang 3
LỜI MỞ ĐẦU
Ngày nay cùng với sự phát triển của ngành khoa học kỹ thuật , kỹ thuật điện tử đóng vai trò quan trọng trong mỗi lĩnh vực khoa học kỹ thuật , quản lý ,công nghiệp tự động hoá , cung cấp thông tin do đó chúng ta phải nắm bắt và vận dụng một cách có hiệu quả nhằm góp phần vào sự phát triển của nền khoa học kỹ thuật thế giới nói chung và trong kỹ thuật điện tử nói riêng.
Với nền công nghiệp phát triển 4.0 như bây giờ thì chúng ta sẽ không ngạc nhiên
gì khi các thiết bị điện ngày càng phát triển và hiện đại Các thiết bị ngày càng tinh vi
và có mặt rất nhiều trong đời sống con người mang lại cho chúng ta sự tiện nghi chưa từng có Qua thời gian nghiên cứu và tìm hiểu em quyết định chọn đề tài “ Sử dụng kít ADRUINO NANO xây dựng hệ thống phòng thông minh sử dụng cảm biến nhiệt độ
và các loại cảm biến khác đóng ngắt RELAY”.
Bài báo cáo được trình bày như sau:
Trang 4MỤC LỤC
LỜI MỞ ĐẦU 3
CHƯƠNG I MỞ ĐẦU 6
1 Tổng quan 6
2 Ý tưởng 6
3 Giải pháp 6
CHƯƠNG 2 TỔNG QUAN VỀ CÁC LINH KIỆN SỬ DỤNG TRONG MẠCH 7
1 KÍT ARDUINO NANO 7
a Thông số kỹ thuật: 8
b Các chân được sử dụng: 8
2 CÁC LINH KIỆN KHÁC 9
a Thông số kỹ thuật LCD 16x2 9
b Module I2C LCD 10
c Module DHT11 10
d Cảm biến âm thanh LM393 11
e RELAY 5V 11
f Cảm biến lửa 12
g Buzzer và LED đơn, button 13
CHƯƠNG 3 SƠ ĐỒ KẾT NỐI VÀ NGUYÊN LÝ HOẠT ĐỘNG 14
1 SƠ ĐỒ KẾT NỐI 14
2 NGUYÊN LÝ HOẠT ĐỘNG CỦA MẠCH 14
CHƯƠNG 4 CODE 16
TÀI LIỆU THAM KHẢO 21
Trang 5DANH MỤC HÌNH ẢN
Hình 1 Cấu tạo của kít ARDUINO NANO 7
Hình 2 Màn hình lcd 16x2 9
Hình 3 Module I2C 10
Hình 4 Module DHT11 10
Hình 5 Cảm biến âm thanh LM393 11
Hình 6 RELAY 5V 11
Hình 7 Cảm biến lửa 12
Hình 8 Buzzer 13
Hình 9 Led đơn 13
Hình 10 Sơ đồ khối của mạch 14
Hình 11 Sản phẩm thực tế 15
Trang 6CHƯƠNG I MỞ ĐẦU
1 Tổng quan
Hiện nay ta đang sống trong kỉ nguyên của công nghệ số của công nghệ 4.0 và rất nhiều thiết bị và hệ thống thông minh tự động được tích hợp ngay trong ngôi nhà của chúng ra giúp chúng ta giám sát và kiểm soát ngôi nhà của chúng ta tốt hơn và thuận tiện hơn Do đó chúng em đã làm ra sản phẩm đó là hệ thống phòng thông minh Mục tiêu là muốn cung cấp sự tiện lợi cho người sử dụng , dễ dàng bảo dưỡng quản lý thiết bị đồng thời đảm bảo mạch hoạt động tốt mà đảm báo kinh tế.
2 Ý tưởng
Theo dõi, kiểm soát nhiệt độ, độ ẩm trong căn phòng
Hành động nhỏ để bật tắt thiết bị điện của căn phòng
Theo dõi, cảnh báo và thực hiện phòng cháy chữa cháy tại căn phòng khi có đám cháy xảy ra
Đọc cảm biến âm thanh để điều khiển đóng ngắt đèn 220v bằng relay.
Đọc giá trị cảm biến lửa để làm chuông kêu và mở máy bơm phun nước dập tắt đám cháy
Trang 7CHƯƠNG 2 TỔNG QUAN VỀ CÁC LINH KIỆN SỬ DỤNG
TRONG MẠCH
1 KÍT ARDUINO NANO
Hình 1 Cấu tạo của kít ARDUINO NANO
Trang 8a Thông số kỹ thuật:
Bootloader
o Chân A4, A5 được kết nối với module I2C.
o Chân D7 được kết nối với cảm biến nhiệt độ DHT11.
o Chân D0 được kết nối với cảm biến âm thanh LM393.
o Chân D3, D4 được nối với relay 5v.
o Chân A6 được kết nối với cảm biến lửa.
o Chân D12 được nối với loa buzzer.
2 CÁC LINH KIỆN KHÁC
a Thông số kỹ thuật LCD 16x2
Trang 10Hình 3 Module I2C
Module I2C điện áp hoạt động 2.5 -6 VDC.
Hỗ trợ màn hình LCD 1602, 1604, 2004.
Giao tiếp I2C.
Tích hợp biến trở xoay điều chỉnh độ tương phản.
Chân SDA - A4, SCL – A5, GND - đất, VCC- 5V.
Trang 11 Khoảng cách chuyền tối đa 20m.
Chân D7 – signal , VCC- 5V, GND – đất.
d Cảm biến âm thanh LM393
Hình 5 Cảm biến âm thanh LM393
Điện áp hoạt động 3.3 – 5VDC.
Chân pin 4 đầu ra mức logic 0 hoặc 1.
Chân pin 1 đầu ra tín hiệu tương tự 0 =>1023.
Chân Pin 4 của LM393 – D5 của nano.
e RELAY 5V
Hình 6 RELAY 5V
DC+ nối với VCC.
Trang 12 IN nối với chân tín hiệu điều khiển relay.
RELAY_1 chân IN_1 nối với D4.
RELAY_2 chân IN_2 nối với D3.
f Cảm biến lửa
Hình 7 Cảm biến lửa
Ngồn hoạt động 5V.
Loại dữ liệu Analog hoặc digital.
Analog out được nối với A6 nano.
Trang 13g Buzzer và LED đơn, button
Chân dương của loa nối vào chân D12 nano
LED ĐƠN chân dương nối vào D8
BUTTON được nối vào chân D6
Trang 14CHƯƠNG 3 SƠ ĐỒ KẾT NỐI VÀ NGUYÊN LÝ HOẠT ĐỘNG
1. SƠ ĐỒ KẾT NỐI
Hình 10 Sơ đồ khối của mạch
Mạch dùng kít ARDUINIO NANO để đọc các cảm biến nhiệt độ, cảmbiến âm thanh LM393 và cảm biến khí gas Thống số nhiệt độ được đọc từ cảmbiến nhiệt độ gồm nhiệt độ, độ ẩm sẽ được hiển thị lại lên LCD
Cảm biến âm thanh LM393 được kết nối với kit ARDUINO NANO, khí
có âm thanh như tiếng vỗ tay thì cảm biến âm thanh sẽ nhận được và gửi tín hiệuđến vi sử lý và vi sử lý sẽ đóng hoặc mở relay_1 để bật hoặc tắt đèn
Cảm biến khí lửa sẽ kiểm tra môi trường xem có lửa cháy hay không, nếu
có ngọn lửa bùng cháy cảm biến sẽ đọc báo cho vi xử lý và vi xử lý sẽ kích hoạtcòi báo buzzen đồng thời kích relay_2
Trang 16CHƯƠNG 4 CODEDùng 3 thư viện:
TaskScheduler: Dùng để lập lịch cho từng task riêng, tránh thời gian trễ.
LiquidCrystal_I2C: Dùng để kết nối I2C với LCD.
DHT: Thư viện của cảm biến DHT11.
#include <TaskScheduler.h> // khai báo thư viện để lập lịch cho từng task
#include <LiquidCrystal_I2C.h>// thư viện LCD I2C,SDA:A4 SCL:A5
#include <DHT.h> // THư viện cảm biến nhiệt độ độ ẩm dht11
bool ledStatus = false;
unsigned long timer = 0;
Trang 17Task t1(1, TASK_FOREVER, &readSoundSensor);
Task t2(2000, TASK_FOREVER, &readDHTSensor);
Task t3(1000, TASK_FOREVER, &readGasSensor);
Trang 18void readSoundSensor() {// hàm đọc giá trị của cảm biến âm thanh
int soundValue = digitalRead(soundSensorPin);
Serial.println("Sound Value:" + String(soundValue));
if (soundValue == 1)// nếu có âm thanh đến
{
timer = millis();
clap++;// biến vỗ tay sẽ được cộng
delay(200);// thêm delay để tránh trường hợp clap bị cộng liên tục khi có 1 tínhiệu âm thanh đến
while (millis() - timer < 1000)// đợi trong 1 giây xem có âm thanh nào đến nữa không, mục đích tránh nhiễu
{
soundValue = digitalRead(soundSensorPin);
if (soundValue == 1)// nếu có thì biến clap cộng thêm
Trang 20Serial.println("Flame Value:" + String(flameValue));
if (flameValue > 55 && buttonState == 0) {
Trang 21TÀI LIỆU THAM KHẢO