BỘ CÔNG THƯƠNG
TRƯỜNG CAO ĐẲNG KỸ THUẬT CAO THẮNG
KHOA ĐIỆN TỬ - TIN HỌC
GVHD: NGUYỄN THỊ HỒNG ÁNH
SVTH: VƯƠNG CHÍ THANH
LỚP: CĐĐTVT 08B
Năm Học 2008 - 2011
LỜI CẢM ƠN
Trong suốt khóa học tại Trường Cao Đẳng Kỹ Thuật Cao Thắng,
với sự giúp đỡ của quý Thầy Cô và giáo viên hướng dẫn về mọi mặt từ
nhiều phía và nhất là trong thời gian thực hiện đề tài. Lời đầu tiên em xin
chân thành cảm ơn đến :
Quí Thầy Cô trong khoa Điện tử -Tin học đã giảng dạy những kiến
thức chuyên môn làm cơ sở để thực hiện tốt luận văn tốt nghiệp và đã tạo
điều kiện thuận lợi cho em thực hiện hoàn tất khóa học.
Đặc biệt, cô Nguyễn Thị Hồng Ánh – giáo viên hướng dẫn đề tài
đã nhiệt tình giúp đỡ và cho em những lời chỉ dạy quý báu, giúp em định
hướng tốt trong khi thực hiện đồ án.
Đồng thời, Em cũng gửi lời cám ơn đến các bạn sinh viên, trong
thời gian thực hiện đồ án này, đã quan tâm góp ý giúp em hoàn thành đồ án
tốt hơn.
Với đề tài “ Đo & Hiển Thị, Cảnh Báo Nhiệt Độ Trên LCD” ,Em
đã áp dụng những kiến thức đã được học để có thể hiểu rõ hơn lý thuyết và
so sánh với thực tiễn. Tuy nhiên, trong quá trình thực hiện không tránh khỏi
những thiếu sót về nội dung lẫn hình thức, kính mong nhận được sự góp ý
kiến của quý thầy cô và các bạn sinh viên.
Một lần nữa, Em xin chân thành cảm ơn !
MỤC LỤC
1-Nội dung và yêu cầu của đề tài
2-Sơ đồ khối
3-Sơ đồ nguyên lý
4-Lưu đồ giải thuật
5-Tổng kết
ĐẶT VẤN ĐỀ
Với sự phát triển của khoa học, ngày nay các ngành công nghiệp
bước vào lĩnh vực sản xuất với nhiều tiện ích và thuận lợi hơn. Với sự làm
việc của máy móc, việc đảm bảo an toàn cho người lao động và kéo dài
thời gian làm việc cho các loại máy móc là mối quan tâm hàng đầu của
các doanh nghiệp, cũng như những cơ sở sản xuất.
Một trong những nguyên nhân gây hư hại cho máy móc và nguy
hiểm cho người lao động là sự thay đổi nhiệt độ vượt quá giới hạn cho
phép.
Đồng thời, trong cuộc sống hàng ngày của chúng ta, việc biết
được nhiệt độ môi trường có ý nghĩa quan trọng cho việc dự báo thời tiết,
cho những kế hoạch làm việc cũng như nghỉ ngơi được hợp lý,…
Với những lý do trên, Em quyết định chọn đề tài “Đo & Hiển
Thị, Cảnh Báo Nhiệt Độ Trên LCD”, để nghiên cứu và hy vọng đem
những kiến thức đã thu lượm được trong quá trình làm việc áp dụng vào
thực tế.
ỨNG DỤNG
Đo nhiệt độ ở các xí nghiệp sản xuất nhằm đảm bảo nhiệt độ môi
trường không quá nguy hiểm cho quá trình làm việc.
Hiển thị nhiệt độ trong nhà, cơ quan, nơi công cộng để mọi người
biết nhiệt độ hiện thời là bao nhiêu.
Đo nhiệt độ của các lò, như lò bánh, lò gốm, lò viba,…
Cân chỉnh nhiệt độ hợp lý, diều khiển nhiệt độ thông qua bàn phím
YÊU CẦU ĐỀ TÀI
Với những hạn chế về thời gian, kiến thức, cũng như kinh nghiệm
nên đề tài được giới hạn như sau:
Đo nhiệt độ từ 0 – 990C dùng LM35 (hàm truyền 10mV/0C )
Hiển thị trên LCD từ Port B,
Thông báo báo động bằng led hoặc chuông.
Thay đổi nhiệt độ báo động từ bàn phím.
Khối Báo Động
Khối Vi Xử Lý Píc 16F877A
Khối Cảm Biến
Khối Hiển Thị
LCD
Khối Bàn Phím
Khối Nguồn
Sơ Đồ Khối
KHỐI NGUỒN
Trong một mạch điện tử thì bộ nguồn có vai trò rất quan
trọng, nó quyết định sự hoạt động hay ngưng hoạt động của mạch. Một bộ
nguồn không tốt sẽ làm cho mạch hoạt động kém ổn định và dể làm hỏng
linh kiện. Vì vậy bộ nguồn ổn áp tốt sẽ rất cần thiết cho các mạch điện tử
( mạch dùng các IC số). Sử dụng biến áp, cầu diode, tụ với IC 7805 để tạo ra
nguồn điện ổn định 5VDC để cấp nguồn nuôi cho tất cả các khối trong mạch
KHỐI XỬ LÝ
Gồm pic 16f877a và các port IO. Là nơi xử lý tất cả các tín hiệu
được truyền về và xuất đi tín hiệu điều khiển, điều khiển theo phần mềm
được lập trình. Sử dụng thạch anh 4Mhz và tụ 33pF tạo xung clock cho pic.
Trong mạch có thêm bộ Reset cho pic 16f877a gồm điện trở, tụ chống nẩy và
nút nhấn
KHỐI BÁO ĐỘNG
Khi nhiệt độ ở mức báo động thì chân Píc điều khiển báo động sẽ
kích làm cho transistor dẫn bảo hòa thì sẽ tạo dòng điện từ nguồn 5V qua
relay về mass làm cho relay hoạt động và cấp nguồn cho chuông kêu. Khi
không được kích transistor ở trạng thái tắt thì lập tức ngắt dòng qua mạch của
relay làm cho relay tắt và ngắt nguồn cung cấp cho chuông.
KHỐI CẢM BIẾN
Dùng IC LM35 để chuyển đổi nhiệt độ môi trường bên ngoài thành
dạng điện áp. Nhiệt độ môi trường cứ tăng lên 1oC thì điện áp ngõ ra của
LM35 tăng lên 10mV. Mức điện áp này sẽ được đưa vào chân RA0 của PIC
16F877A để bộ chuyển đổi ADC trong PIC tiến hành chuyển đổi từ tín hiệu
tương tự thành tín hiệu số
Kết quả sau khi chuyển đổi sẽ được xử lý và so sánh với các giá trị đặt
trước để xuất tín hiệu điều khiển ra khối hiển thị và báo động
KHỐI HIỂN THỊ LCD
Gồm tụ dùng để lọc, biến trở dùng để chỉnh độ tương phản LCD và
màn hình LCD dùng để hiển thị chữ, nhiệt độ…. Khi có lệnh hiển thị từ Píc
thì nội dung cần hiển thị sẽ được hiển thị lên LCD
KHỐI BÀN PHÍM
Gồm các nút nhấn và điện trở. Các nút nhấn được nối với port D từ
RD1 tới RD6 dùng để nhập dữ liệu từ bên ngoài vào.
Mỗi vị trí nút nhấn sẽ được mã hóa bằng một hàm bởi phần mềm. Khi một
vị trí tích cực, dữ liệu sẽ được đưa về khối xử lý để xử lý rồi đưa ra tín hiệu
điều khiển cho các khối khác
MẠCH NGUỒN
2
3
1
4
D 1
-
IN
7805
GN D
U 1
OU T
3
R 1
330
2
1
12VAC
C 1
+
1000uF
C 2
104
LED
D 3
1
2
J1
1
2
J2
1
2
J3
1
2
J4
Để an toàn IC 7805 cung cấp dòng cho tải là: 100mA – 1A
Nhằm đảm bảo tính ổn định của mạch, đề tài thiết kế mạch nguồn sử
dụng IC ổn áp dương 7805.( ổn áp dương có điện áp ngõ ra cố định là 5V,
dòng điện ngõ ra từ 100mA đến 1A).
Điện áp ngõ vào tối thiểu phải cao hơn điện áp ngõ ra 2V để mạch hoạt
động tốt.
Mạch sử dụng bộ chỉnh lưu và nắn điện bằng cầu diode và tu 1000uf
Mach sử dụng 1 led báo khi có nguồn
Tụ 104 dùng để chống nhiễu và có tác dụng lọc nguồn
MẠCH CẢM BIẾN
1
2
1
R 1
10K
IN
O U T
2
0
1
2
3
4
5
3
J 2
LM 35
G N D
U 2
R 2
50K
R 1
10K
R 1
3 30
LE D
J 4
P O R TA
D 3
LM35 được cấp nguồn nuôi 5v, đọc nhiệt độ từ môi trường về cấp
cho chân RA0 của vi xử lý.
Cầu phân áp R1-R1 cấp nguồn 2,56V cho RA3/AN3/V REF+
Chân RA2/V REF- được nối mass
Như vậy Uc của bộ ADC= 2,5V
Điện áp chuẩn đưa vào chân RA3/NA3/VREF+ được tính như sau:
Nhiệt độ môi trường tăng 1oC thì ngõ ra của LM35 tăng lên 10mV
=> Q = 10mV = 0,01 V
Q = Uc / 2n (n = 8)
=> Uc = 2n.0,01 = 28.0,01 = 2,56 V
MẠCH BÁO ĐỘNG
V C C _ 5 V D C
0
1
2
3
4
5
6
7
V C C _ 2 2 0 V A C
R 4 2 3 .3 k
D 4
D IO D E
J 5
3 3 0
D 1
R 2
3 3 0
D 2
R 3
3 3 0
L S 1
R E L A Y
R 1
D 3
L S 3
4
1
2
Q 1
C 1 8 1 5
P O R T C
5
3
1 2 v
C H U Ô N G
L E D _ D O
L E D _ XA N H
L E D _ V A N G
Điện trở gắn ở cực B transistor để bảo vệ cho transistor.
Khi nhiệt độ vượt mức cho phép thì píc sẽ xuất tín hiệu ra chân port
làm cho chân port lên mức 1 khi đó cực B của Transistor được kích làm
cho Transistor dẫn, khi Transistor dẫn thì relay cũng được kích , lúc này
tiếp điểm thường hở của relay sẽ đóng lại, đồng thời cấp nguồn cho
chuông hoạt động
MẠCH HIỂN THỊ
0
1
2
3
4
5
6
7
1
2
3
4
5
6
7
8
9
1
1
1
1
1
1
1
0
1
2
3
4
5
6
G
V
V
R
R
E
D
D
D
D
D
D
D
D
A
K
N D
C C
E E
S
/W
L C D 1 6 x2
R 2
100K
J 3
N guon
P O R T E
0
1
2
3
4
5
6
7
0
1
2
1
2
0 .1 m F
C 1
J 5
P O R T B
Dữ liệu cần hiển thị sẽ được truyền đến khối hiển thị từ port B của khối xử
lý Píc. Dữ liệu sẽ được LCD nhận ở 8 chân dữ liệu từ chân 7-14 của LCD.
Dữ liệu sẽ được hiển thị lên LCD khi 3 chân RS, R/W và E được tác động
(RS=1, R/W=0,E=0,E=1)
MẠCH BÀN PHÍM
V C C
BAN PHIM
R 6
10k
R 7
10k
R 8
10k
1
2
3
4
5
6
7
8
9
E N TE R
C LE A R
0
J 13
0
1
2
3
4
5
6
7
P O R TD
Bàn phím này gồm 12 nút nhấn.các nút nhấn này được nối vớ vi điều khiển.
Khi thực hiện kiểm tra phím nhấn, vấn đề cần thiết là là phải thực hiện
chống rung phím và chống nhiễu. Quá trình thực hiện chống rung phím và
chống nhiễu có thể thực hiện bằng phần mềm. Do thời gian rung phím vào
khoảng 20ms nên quá trình chống rung bằng phần mềm đơn giản là tạo thời
gian chờ đủ lớn để chương trình bỏ qua ảnh hưởng khi rung phím và chống
nhiễu
Để phát hiện phím nhấn ta sử dụng phương pháp quét hàng. Khi
không nhấn thì hàng của bàn phím nối với Vcc thông qua điện trở R nên có
mức logic 1.Để phát hiện trang thái của phím nhấn thì mức logic khi nhấn
phím phải là mức logic 0.
Khi nhấn 1 phím nào đó tương ứng hàn và cột của bàn phím sẽ kết
nối với nhau. Do đó, để thực hiện kiểm tra 1 phím thì ta phải cho trước hàng
chứa phím tương ứng ở mức logic 0, sau đó kiểm tra cột của phím. Nếu cột
bằng 0 thì có nhấn phím còn cột bằng 1 thì không nhấn phím. Sau khi phím
được nhấn dữ liệu của phím đó sẽ được đến khối Píc để xử lý
Các điện trở hạn dòng khi chuyển đổi các trạng thái của nút nhấn
được xác định như nhau cho tín hiệu không bị phân dãy. Giá trị các điện trở
là 10K
MẠCH PÍC 16F877A
VC C
10K
R 3
U 1
R ESET
1
M C L R /V p p
R B 7 /P G D
R B 6 /P G C
R B5
R B4
R B 3 /P G M
R B2
R B1
R B 0 /IN T
J8
C 3
104
0
1
2
3
4
5
2
3
4
5
6
7
R
R
R
R
R
R
A
A
A
A
A
A
0
1
2
3
4
5
/A N
/A N
/A N
/A N
/TO
/A N
0
1
2 /V re f -/C V re f
3 /V re f +
C K I/C 1 /o u t
4 /S S /C 2 o u t
4
3
3
3
3
3
3
3
0
9
8
7
6
5
4
3
J5
J9
0
1
2
J5
8
9
10
PO R TE
11
12
33P C 5
13
PO W ER
4M h
Vdd
Vss
O S C 1 /C L K 1
P IC 1 6 F 8 7 7 A
14
1
1
1
1
5
6
7
8
Vdd
Vss
R E 0 /R D /A N 5
R E 1 /W R /A N 6
R E 2 /C S /A N 7
Y 1
33P C 4
J10
PO R TB
PO R TA
2
1
0
1
2
3
4
5
6
7
32
31
PO W ER
R
R
R
R
R
R
R
R
D
D
D
D
D
D
D
D
7
6
5
4
3
2
1
0
/P
/P
/P
/P
/P
/P
/P
/P
S
S
S
S
S
S
S
S
P
P
P
P
P
P
P
P
7
6
5
4
3
2
1
0
3
2
2
2
2
2
2
1
0
9
8
7
2
1
0
9
2
2
2
2
6
5
4
3
O S C 2 /C L K 2
R
R
R
R
C
C
C
C
0
1
2
3
2
1
/T 1 O S O /T 1 C K I R C 7 /R X /D T
/T 1 O S I/C C P 2
R C 6 //T X/C K
/C C P 1
R C 5 /S D O
/S C K /S C L
R C 4 /S D I/S D A
0
1
2
3
4
5
6
7
J11
PO R TD
J12
0
1
2
3
4
5
6
7
P O R TC
MACH PIC16F877A
Khối xử lý trung tâm có nhiệm vụ là nhận biết tín hiệu thu được từ các
khối đưa về. Sau đó xử lý các tín hiệu số và xuất ra các tín hiệu điều khiển
thích hợp để điều khiển hệ thống theo chương trình lập sẵn.
Địa chỉ chức năng kết nối của hệ thống xử lý trung tâm như sau:
PortA : Đọc ADC về .
PortB : Giao tiếp với LCD
PortC :
PortC_0: Báo động bằng chuông
PortC_1: Báo động bằng LED
PortC_2: LED cảnh báo
PortC_2: LED cảnh báo
PortD : Giao tiếp với bàn phím
PortE: Điều khiển LCD
BEGIN
HIỆN T0
HIỆN TRANG THÁI
KHỞI TẠO LCD
ĐỌC ADC
B
KIỂM TRA
T 0 <20
ĐÚNG
KIỂM TRA
PHÍM
ENTER
SAI
KIỂM TRA
20≤ T 0 <32
ĐÚNG
KIỂM TRA
PHÍM
CLEAR
ĐÚNG
ĐÚNG
HIỆN T0
BÁO ĐỘNG X 0C
SAI
SAI
KIỂM TRA
T 0 ≥X
X=60
ĐÚNG
SAI
SAI
KIỂM TRA
32≤ T 0 <45
LED BĐ TẮT
CÒI KHÔNG KÊU
ĐÚNG
DELAY 2S
A
BEGIN
SAI
C
A
HIỆN TRẠNG THÁI
BÁO ĐỘNG
LED BĐ SÁNG
CÒI KÊU
B
C
NHẬP PHÍM
HIỂN THỊ PHÍM
LƯU VÀO X
DELAY 4S
BEGIN
Sau hơn 7 tuần thực hiện với nhiều cố gắng và nổ lực của bản thân
cùng với sự tận tình hướng dẫn của cô Nguyễn Thị Hồng Ánh, em đã hoàn
thành đúng thời gian qui định theo yêu cầu đặt ra là thiết kế một mạch đo
nhiệt độ dùng LM35 điều khiển bằng PIC16F877A.
Để thực hiện được yêu cầu trên em đã nghiên cứu, tìm hiểu những
vấn đế về vi điều khiển, vi xử lí, và các vấn đề khác có liên quan đến đề tài.
Nội dung chính của đề tài này bao gồm những phần chính sau:
Phần kiến thức:
-Khảo sát bộ vi điều khiển PIC16F877A
-Lập trình với ngôn ngữ ASEMBLY hoặc CCS
-Mô phỏng bằng protues
Phần thiết kế thi công:
- Thiết kế và thi công mô hình
-Viết chương trình với ngôn ngữ ASEMLY cho Frit
Hạn chế:
- Đọc nhiệt độ chưa thật chuẩn xác
- Thiết kế mô hình,bố trí mạch điện chưa phù hợp
Hướng phát triển:
- Mở rộng nhiệt độ đọc về
- Mở rộng nhiệt độ báo động
- Thu nhỏ kích thước sản phẩm
- Đo và điều khiển được nhiệt độ thông qua máy tính
-Sử dụng điều khiển nhiệt độ để điều khiển các thiết bị như bảo vệ thiết
bị,cảnh báo…..
Kết Luận
Đề tài đã trình bày được nguyên tắc hoạt động cơ bản của mạch,
giới thiệu về cách sử dụng cũng như sơ đồ chân, sơ đồ nội bộ của các IC số
dùng trong mạch.
Tuy nhiên, do còn hạn chế về thời gian và trình độ nên đề tài không
tránh khỏi nhiều sai sót, Em rất mong nhận được sự đóng góp ý kiến chân
tình của quý thầy cô và các bạn để đề tài được hoàn chỉnh hơn.
Một lần nữa, Em xin chân thành cảm ơn quý thầy cô đã tận tình
hướng dẫn, giúp đỡ em trong thời gian thực hiện đề tài này.
Xin chân thành cảm ơn!!