Tải bản đầy đủ (.docx) (26 trang)

Đồ án tốt nghiệp ứng dụng vi điều khiển vào hệ thống chiếu sáng, hệ thống báo cháy báo khói trong ngôi nhà thông minh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (380.14 KB, 26 trang )

CHƯƠNG 3: ỨNG DỤNG VI ĐIỀU KHIỂN VÀO HỆ
THỐNG CHIẾU SÁNG VÀ HỆ THỐNG BÁO CHÁY
TRONG NHÀ THÔNG MINH

Yêu cầu điều khiển
Đảm bảo đầy đủ các yếu tố cơ bản nhất mô phỏng một ngôi nhà thông minh thu

3.1.
-

nhỏ.
Có tính khả thi và thực hiện được trong thời gian ngắn.
Đảm bảo phát triển theo mục tiêu của đề tài đặt ra: thiết kế hệ thống chiếu sáng
-

-

và hệ thống báo cháy tự động có hiển thị nhiệt độ trong hệ thống nhà thông
-

minh.
Thiết kế và thi công một số cảm biến như: cảm biến chuyển động, cảm biến báo
khói, cảm biến nhiệt độ… và các mạch công suất để điều khiển các thiết bị như:

-

đèn chiếu sáng, quạt gió, máy bơm …
Hệ thống phải hoạt động 24/24.
3.2.
Phương án thiết kế các hệ điều khiển trong ngôi nhà thông minh
3.2.1. Hệ thống chiếu sáng


 Mô tả mô hình
Khi có người đi vào trong nhà cảm biến chuyển động truyền tín hiệu đến bộ
điều khiển trung tâm, bộ điều khiển truyền tín hiệu đến hệ thống đèn, đèn chiếu
sáng sẽ bật, và khi không có người ở trong nhà hệ thống đèn sẽ tắt.
Khi trời tối cảm biến quang sẽ truyền tín hiệu bật hệ thống đèn chiếu sáng
hành lang.



Yêu cầu kỹ thuật


Thiết bị cần được thiết kế phải gọn nhẹ, dễ lắp đặt, đảm bảo ánh sáng luôn
luôn vừa đủ, lượng điện tiêu hao vừa phải.
Có thể đóng ngắt được khi cần thiết.
Cảm biến chuyển động, cảm biến quang hoạt động chính xác.


Các phương pháp và lựa chọn
Đối với hệ thống ánh sáng thường thì có hai kiểu là: ánh sáng thay đổi khi

điện áp thay đổi hoặc điều khiển hệ thống đèn tắt mở khi ánh sáng xung quanh
thay đổi. Kiểu ánh sáng thay đổi theo điện áp có độ chính xác cao, độ điều chỉnh
ánh sáng có độ thay đổi là rất nhỏ, mắt người khó phát hiện ra được, và phần lập
trình khá phức tạp. Còn với kiểu điều khiển tắt mở đèn khi ánh sáng thay đổi, cách
này mắt người dễ phát hiện, và phần lập trình đơn giản hơn.
Do thời gian có hạn và đây cũng là phương án thông dụng tại nước ta nên
em chọn phương án điều khiển hệ thống bóng đèn tắt mở khi ánh sáng xung quanh
thay đổi.



Ưu điểm
Cảm biến khá chính xác.
Điều khiển đơn giản hơn khi điều khiển nhiều đèn.
Dễ thay đổi điều khiển.
Giá thành vừa phải.

3.2.2.


Hệ thống báo khói, báo cháy có hiển thị nhiệt độ
Mô tả mô hình


Khi nhà có mức độ khói vượt mức cho phép cảm biến báo khói phát hiện và
truyền tín hiệu đến mạch chủ, mạch chủ phát tín hiệu đến chuông báo động,
chuông báo động kêu thông báo cho chủ nhà.
Nhiệt độ được đo bởi cảm biến nhiệt độ và hiển thị trên màn hình LCD. Khi
nhiệt độ vượt mức 35°C cảm biến nhiệt sẽ truyền tín hiệu bật quạt thông gió, khi
nhiệt độ vượt mức 45°C chuông báo động kêu cảnh báo có cháy đồng thời bật máy
bơm phun nước dập lửa.


Yêu cầu kỹ thuật
Phải đảm bảo thiết bị nhận biết khói và nhiệt độ chính xác, dễ lắp đặt trong

nhà, thiết kế với giá cả phù hợp, thiết bị phải gọn nhẹ, không cồng kềnh, phải đảm
bảo an toàn cho ngôi nhà, phát hiện và báo động kịp thời.



Các phương án và lựa chọn
Đối với thiết bị báo cháy, thông thường ta sử dụng hệ thống cảm biến nhiệt

độ, đây là phương pháp phổ thông và thông dụng nhất hiện nay, ngoài ra còn có
phương pháp cảm biến độ bền vật liệu để nhận biết độ an toàn của ngôi nhà, tuy
nhiên phương pháp này ít được sử dụng tại nước ta.
Do đó ta chọn phương pháp cảm biến nhiệt độ của môi trường.


Ưu điểm
Cảm biến báo khói và cảm biến nhiệt khá chính xác.
Cách lắp đặt đơn giản nếu chỉ có 1 chức năng cảm biến.
Giá thành rẻ.

3.3.

Lựa chọn thiết bị thiết kế mô hình


3.3.1.

Cảm biến nhiệt độ
DS18B20 là bộ cảm biến nhiệt độ được sản xuất bởi Dalas Semiconductor

được tích hợp giao thức 1-Wire. Một số thông số chính của DS18B20:
-

Điện áp: 3.0V đến 5.5V
Dải đo:-55°C đến +125°C. Trong dải từ -10°C đến +85°C, độ chính xác là


-

±0.5°C.
Mỗi giá trị nhiệt độ được biến đổi sang giá trị số với độ phân giải 12bit.

Hình 3.1: Sơ đồ chân của DS18B20


Hình 3.2: Sơ đồ khối của DS18B20
Các thành phần chính trên DS18B20 bao gồm:
-

64-bit lasered ROM,
Cảm biến nhiệt độ (temperature sensor)
Các thanh ghi cấu hình.
Bộ cảnh báo quá nhiệt so với nhiệt độ đặt trước trong TH, TL.
Bộ phát mã vòng (CRC).
Bộ đệm, bộ biến đổi tương tự-số (SCRATCHPAD)
Khi hoạt động, DS18B20 sẽ tự động biến đổi nhiệt độ thu được từ cảm biến

thành giá trị số, truyền về thiết bị chủ bằng giao thức 1-Wire. Bảng 3.1 mô tả quan
hệ giữa nhiệt độ thực và giá trị số.
TEMPERATUR
E

DIGITAL OUTPUT
(Binary)

+125°C


0000 0111 1101 0000

DIGITAL
OUTPUT
(HEX)
07D0h

+85°C
+25.0625°C
+10.125°C
+0.5°C

0000 0101 0101 0000
0000 0001 1001 0001
0000 0000 1010 0010
0000 0000 0000 1000

0550h*
0191h
00A2h
0008h


0°C
-0.5°C

0000 0000 0000 0000
1111 1111 1111 1000

000h

FFF8h

-10.125°C
-25.0625°C
-55°C

1111 1111 0101 1110
1111 1110 0110 1111
1111 1100 1001 0000

FF5Eh
FF6Fh
FC90h

Bảng 3.1: Giá trị số tương ứng được biến đổi tương ứng nhiệt độ thực


Giao thức 1-wire
Giao thức 1-Wire được phát phát triển bởi Dallas Semiconductor (Công ty

con của Maxim). Kiến trúc của giao thức này chỉ bao gồm 1 đường truyền dữ liệu,
1 điện trở pull-up gắn ở phía thiết bị chủ (hình 3.3).

Hình 3.3: Truyền thông giữa các vi mạch bằng giao thức 1-Wire


Tốc độ truyền nhận tiêu chuẩn của 1-wire là 15,4kbps, khoảng cách giữa
thiết bị chủ và thiết bị tớ xa nhất có thể đạt tới 200m. Số lượng thiết bị tớ kết nối
trên bus được khuyến cáo nên nhỏ hơn 20 thiết bị.
Giao thức 1-Wire sử dụng mức logic CMOS/TTL. Điện áp hoạt động nằm

trong dải từ 2.8 đến 6V. Thiết bị chủ và thiết bị tớ có thể truyền/nhận với nhau, tuy
nhiên tại một thời điểm chỉ có một trong hai thao tác được thực thi. Bit có trọng số
thấp nhất (LSB) được truyền đi trước.
Thủ tục truyền/nhận giữa thiết bị chủ và thiết bị tớ bao gồm 3 bước:
Reset, xác nhận có thiết bị được nối trên bus, đồng bộ giữa thiết bị chủ và
thiết bị tớ (hình 3.4).

Hình 3.4: Dạng sóng khi thiết bị chủ thực hiện reset
Để thực hiện thao tác này, từ thiết bị chủ, bus phải được đặt chiều ra và đưa
từ mức cao xuống mức thấp, giữ mức thấp trong khoảng thời gian từ 480 đến
640µs. Tiếp theo bus sẽ được đặt chiều vào để đọc xung xác nhận của thiết bị tớ.
Xung này sẽ xuất hiện trong khoảng thời gian 60 đến 240µs. Nếu có thiết bị tớ
được kết nối, bus sẽ có trạng thái logic “0”, ngược lại sẽ là “1”. Cuối cùng, bus cần
một khoảng thời gian từ 45 đến 180 µs để “phục hồi” về mức logic “1” trước khi
thực hiện các thao tác khác.


3.3.2.

Cảm biến quang (quang trở)
Quang trở là một loại "vật liệu" điện tử rất hay gặp và được sử dụng trong

những mạch cảm biến ánh sáng. Có thể hiểu một cách dễ dàng rằng, quang trở là
một loại điện trở có điện trở thay đổi theo cường độ ánh sáng. Nếu đặt ở môi
trường có ít ánh sáng, có bóng râm hoặc tối thì điện trở của quang trở sẽ tăng cao
còn nếu đặt ở ngoài nắng, hoặc nơi có ánh sáng thì điện trở sẽ giảm.
Là điện trở có trị số càng giảm khi được chiếu sáng càng mạnh. Điện trở tối
(khi không được chiếu sáng - ở trong bóng tối) thường trên 1MΩ, trị số này giảm
rất nhỏ có thể dưới 100Ω khi được chiếu sáng mạnh.


Hình 3.5: Hình dạng và ký hiệu của cảm biến quang
Nguyên lý làm việc của quang điện trở là khi ánh sáng chiếu vào chất bán
dẫn (có thể là Cadmium sulfide – CdS, Cadmium selenide – CdSe) làm phát sinh
các điện tử tự do, tức sự dẫn điện tăng lên và làm giảm điện trở của chất bán dẫn.
Các đặc tính điện và độ nhạy của quang điện trở dĩ nhiên tùy thuộc vào vật liệu
dùng trong chế tạo.


Hình 3.6: Tỷ lệ giữa điện trở và tần số ánh sáng chiếu vào
Về phương diện năng lượng, ta nói ánh sáng đã cung cấp một năng lượng
E=h.f để các điện tử nhảy từ dải hóa trị lên dải dẫn điện. Như vậy năng lượng cần
thiết “h.f” phải lớn hơn năng lượng của dải cấm.
3.4.
3.4.1.

Quy trình thiết kế mô hình
Hướng thiết kế
Trong đề tài em sử dụng vi điều khiển PIC 18F4520 để điều khiển và lấy dữ

liệu từ cảm biến nhiệt độ DS18B20, cho hiển thị trên màn hình LCD. Cho cảm
biến chuyển động, cảm biến quang nhận biết chuyển động, nhận biết ánh sáng và
điều khiển bóng đèn tắt mở.
3.4.2.
3.4.2.1.

Thiết kế phần cứng
Mạch nguyên lý




Hình 3.7: Mạch nguyên lý
3.4.2.2.

Sơ đồ mạch in


Hình 3.8: Sơ đồ mạch in


3.4.2.3.

Chương trình điều khiển

#include "main.h"
#include "DS18B20.c"
#include "1wire.c"
#include "lcd4bit.h"
//-----Dinh nghia chan int out--------//
#define MQ2

PIN_A0 // khai bao MQ2 la cam bien bao khoi bao khi gas

#define PIR PIN_C1 // cam bien chuyen dong
#define QT

PIN_C2 // cam bien quang tro

#define MODE PIN_C3 // nut bam set che do
#define UP


PIN_C4 // nut an tang len

#define DOWN PIN_C5 // nut an giam xuong
#define den1 PIN_B0 // khai bao den 1
#define den2 PIN_B1 // khai bao den 2
#define motor PIN_B2 // khai bao motor bom nuoc
#define buzz PIN_B3 // khai bao loa buzz
#define fan

PIN_C6 // khai bao quat fan

//----- Khai bao bien -----//
float temp;


int dem=0,nhietdo=32;
//----- chuong trinh doc cam bien khi gas -----//
void read_MQ2(void)
{
if(input(MQ2)==1)

//kiem tra xem co khi gas và khoi hay khong neu co thi

bao coi buzz
{
delay_us(20);
if(input(MQ2)==1)
{
output_High(buzz); // xuat muc cao cho coi buzz
delay_ms(400);

output_Low(buzz);

// xuat muc thap cho coi buzz

delay_ms(100);
}
}
else
output_Low(buzz);
}

// xuat muc thap cho coi buzz


//----- chuong trinh doc cam bien nhiet do ds18b20 -----//
void read_nhietdo(void)
{
if(dem==0)
{
temp=ds18b20_read();

// Gan bien temp bang gia tri nhiet do doc duoc

LCD_Cmd(0x80);

// Hien thi o dong thu nhat

LCD_Char(" Nha Thong Minh ");
LCD_Cmd(0xC0);


// Hien thi o dong thu 2

Printf(LCD_Char,"Nhiet do: %3.1f%cC",temp,0xdf);//xuat gia tri nhiet do ra
man hinh
}
}
//----- chuong trinh dieu khien den 1 -----//
void dk_den1(void)
{
if(input(PIR)==0)
{
delay_us(20);


if(input(PIR)==0)
{
busy=0;
output_High(den1);
if(dem==0)
{
LCD_Cmd(0x80);
LCD_Char(" Bat Den 1

");

}
}
}
else
output_Low(den1);

}
//----- chuong trinh dieu khien den 2 -----//
void dk_den2(void)
{
if(input(QT)==1)
{


delay_us(20);
if(input(QT)==1)
{
busy=0;
output_High(den2);
if(dem==0)
{
LCD_Cmd(0x80);
LCD_Char(" Bat den 2

");

}
}
}
else
output_Low(den2);
}
//----- chuong trinh kiem tra nhiet do va bao co hoa hoan -----//
void KT_nhietdo(void)
{
if(temp>=50&&input(MQ2)==0)



{
output_High(motor);
if(dem==0)
{
LCD_Cmd(0x80);
LCD_Char(" Canh bao co chay ");
LCD_Cmd(0xc0);
LCD_Char(" Thoat va bat bom ");
output_Low(fan);
output_High(buzz);
delay_ms(400);
output_Low(buzz);
delay_ms(100);
}
}
else
output_Low(motor);
}
//----- chuong trinh doc nut nhan sw -----//


void read_mode(void)
{
if(input(mode)==0)
{
delay_us(50);
if(input(mode)==0)
{

while(!input(mode));
{
dem++;
if(dem==2)
dem=0;
}
}
}
}
void read_sw(void)
{
if(dem==1)


{
if(input(up)==0)
{
delay_us(50);
if(input(up)==0)
{
while(!input(up));
{
nhietdo++;
if(nhietdo>=100)
nhietdo=0;
}
}
}
if(input(down)==0)
{

delay_us(50);
if(input(down)==0)
{


while(!input(down));
{
nhietdo--;
if(nhietdo<=0)
nhietdo=0;
}
}
}
LCD_Cmd(0x80);
LCD_Char(" Setup T Fan

");

LCD_Cmd(0xC0);
Printf(LCD_Char,"Nhiet do:%d%cC ",nhietdo,0xdf);
}
}
//----- chuong trinh dieu khien quat lam mat -----//
void dk_fan(void)
{
if(nhietdo<=temp&&temp<=50)
{


output_High(fan);

}
else
output_Low(fan);
}
void read_QT_and_PIR(void)
{
if(input(PIR)==0&&input(QT)==1)
{
if(dem==0)
{
LCD_Cmd(0x80);
LCD_Char(" Bat Den1_Den2 ");
}
}
}
//----- chuong trinh chinh -----//
void main()
{


LCD_Init ();

setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_CLOCK_DIV_2|ADC_TAD_MUL_0);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_wdt(WDT_OFF);
setup_timer_0(RTCC_INTERNAL);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);

setup_timer_3(T3_DISABLED|T3_DIV_BY_1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
output_Low(buzz);
output_High(PIN_A1);
LCD_Cmd(0x80);
LCD_Char(" Nha Thong Minh ");
LCD_Cmd(0xc0);
LCD_Char(" Khoa DT _K7

");


delay_ms(1000);
while(true)
{
read_nhietdo();
read_sw();
read_mode();
read_MQ2();
dk_den1();
dk_den2();
KT_nhietdo();
dk_fan();
read_QT_and_PIR();
}
}


KẾT LUẬN


Sau 2 tháng tìm tòi nghiên cứu và hoàn thành đồ án, em đã đạt được nhiều
kiến thức nhất định về ngôi nhà thông minh. Theo yêu cầu đặt ra là thiết kế ngôi
nhà thông minh với các đặc điểm sau:



Thiết kế hệ thống cảm biến ánh sáng.
Thiết kế hệ thống báo khói, báo cháy và hiển thị nhiệt độ, có quạt thông gió,
máy bơm nước chữa cháy.
Ưu, nhược điểm

I.

Đồ án có những ưu, nhược điểm như sau:
 Ưu điểm
 Mạch lấy dữ liệu nhiệt độ và hiển thị ra chính xác, ổn định.
 Tỉ lệ sai số nhỏ.
 Độ chia nhỏ (0,5 độ).
 Cảnh báo khi lượng khói vượt mức cho phép và khi nhiệt độ quá cao.
 Khi có nhiều khói hoặc nhiệt độ cao quạt thông gió sẽ được bật làm

giảm

lượng khói, giảm nhiệt độ trong nhà.
 Khi có cháy xảy ra máy bơm nước sẽ được bật để dập đám cháy.
 Mạch tự động bật đèn khi có người vào nhà, bật đèn ngoài trời khi trời tối.
 Nhược điểm
 Thời gian lấy mẫu lâu.
 Mạch điều khiển ít thiết bị.

 Không hoạt động khi cúp điện.
 Mạch cảm biến nhiệt và báo cháy chưa nhớ được khi nhà bị cúp điện.
 Mạch không nhận biết nhiệt độ trong phạm vi rộng được nên cần lắp tại


II.

nhiều chỗ
Cả biến bào khỏi không lắp được ở những nơi quá cao, khi đó sẽ k cảnh
báo kịp thời khi có khói.
Hướng phát triển đề tài


×