You are on page 1of 80

ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc

----***----

Tp. Hồ Chí Minh, ngày 20 tháng 6 năm 2019

NHIỆM VỤ ĐỒ ÁN MÔN HỌC

Họ và tên sinh viên: Lê Hoàng Nghĩa MSSV: 16141061


Ngành: Công Nghệ Kỹ Thuật Điện tử, Truyền thông Lớp: 16141DTC
Giảng viên hướng dẫn: Nguyễn Ngô Lâm ĐT: 0387181212
Ngày nhâ ̣n đề tài: 06/3/2019 Ngày nộp đề tài: 20/6/2019

1. Tên đề tài: Thiết kế và thi công hệ thống điều


khiển quạt tự động.

2. Các số liệu, tài liệu ban đầu:

Kiến thức cơ bản về các môn Mạch điện, Điện tử


cơ bản ,Vi xử lý.

3. Nội dung thực hiện đề tài:

 Thiết kế khối nguồn.


 Thiết kế hệ thống.
 Mô phỏng mạch trên Proteus.
 Chỉnh sửa và thi công mạch.
 Viết luận văn báo cáo.

4. Sản phẩm: Mạch điều khiển quạt tự động.

SVTH: LÊ HOÀNG NGHĨA 1


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh Phúc


*******

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Họ và tên Sinh viên: Lê Hoàng Nghĩa .............................. MSSV: 16141061 ..............


Ngành: Công nghệ kỹ thuật Điện tử, Truyền thông ......................................................
Tên đề tài: Thiết kế và thi công hệ thống điều khiển quạt tự động ...............................
Họ và tên Giáo viên hướng dẫn: Nguyễn Ngô Lâm .....................................................
NHẬN XÉT
1. Về nội dung đề tài & khối lượng thực hiện:
.......................................................................................................................................
.......................................................................................................................................
2. Ưu điểm:
.......................................................................................................................................
.......................................................................................................................................
3. Khuyết điểm:
.......................................................................................................................................
.......................................................................................................................................
4. Đề nghị cho bảo vệ hay không?
.......................................................................................................................................
5. Đánh giá loại:
.......................................................................................................................................
6. Điểm:……………….(Bằng chữ:............................................................................ )
Tp. Hồ Chí Minh, ngày 20 tháng 6 năm 2019
Giáo viên hướng dẫn

SVTH: LÊ HOÀNG NGHĨA 2


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh Phúc


*******

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

Họ và tên Sinh viên: Lê Hoàng Nghĩa .............................. MSSV: 16141061 ..............


Ngành: Công nghệ kỹ thuật Điện tử, Truyền thông ......................................................
Tên đề tài: Thiết kế và thi công hệ thống điều khiển quạt tự động ...............................
Họ và tên Giáo viên phản biện: .....................................................................................
NHẬN XÉT
7. Về nội dung đề tài & khối lượng thực hiện:
.......................................................................................................................................
.......................................................................................................................................
8. Ưu điểm:
.......................................................................................................................................
.......................................................................................................................................
9. Khuyết điểm:
.......................................................................................................................................
.......................................................................................................................................
10. Đề nghị cho bảo vệ hay không?
.......................................................................................................................................
11. Đánh giá loại:
.......................................................................................................................................
12. Điểm:……………….(Bằng chữ: ..................................................................... )
Tp. Hồ Chí Minh, ngày 20 tháng 6 năm 2019
Giáo viên phản biện

SVTH: LÊ HOÀNG NGHĨA 3


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

MỤC LỤC

NHIỆM VỤ ĐỒ ÁN MÔN HỌC ______________________________________1


PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN____________________2
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN _____________________3
MỤC LỤC _________________________________________________________4
DANH MỤC CÁC TỪ VIẾT TẮT _____________________________________7
DANH MỤC CÁC BẢNG BIỂU ______________________________________8
DANH SÁCH CÁC HÌNH ẢNH, BIỂU ĐỒ _____________________________9
CHƯƠNG 1: TỔNG QUAN HỆ THỐNG ______________________________11
1.1. Đặt vấn đề _________________________________________________11
1.2. Tình hình nghiên cứu hiện nay ________________________________11
1.3. Mục tiêu đề tài______________________________________________11
1.4. Tiếp cận nghiên cứu đề tài ____________________________________11
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ___________________________________12
2.1. Cảm biến nhiệt độ LM35 _____________________________________12
2.2. Màn hình LCD hiển thị ______________________________________14
2.2.1 Tổng quan ______________________________________________14
2.2.2 Thông số kỹ thuật LCD 1602 HD44780 _____________________14
a) Sơ đồ chân ______________________________________________14
b) Thông số kỹ thuật _________________________________________16
2.2.3 Bộ điều khiển LCD và các vùng nhớ ________________________16
a) Bộ nhớ DDRAM (Display Data RAM) ________________________17
b) Bộ phát kí tự ROM – CGROM (Character Generator ROM) _____17
c) Bộ phát kí tự RAM – CGRAM (Character Generator RAM) _____17
2.2.4 Tập lệnh điều khiển LCD _________________________________17
2.2.5 Hoạt động đọc ghi của LCD _______________________________20
2.2.6 Bảng mã ASCII _________________________________________22
2.3. IC Driver động cơ L298N ____________________________________23
2.4. Vi xử lí PIC 16F887 _________________________________________25

SVTH: LÊ HOÀNG NGHĨA 4


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

a) Sơ đồ khối PIC 16F887 ______________________________________26


b) Đặc tính của vi điều khiển PIC 16F887 _________________________27
c) Sơ đồ chân _________________________________________________28
2.5. Một số linh kiện khác ________________________________________29
a) Biến áp ____________________________________________________29
b) Điện trở ___________________________________________________30
c) Tụ điện ____________________________________________________31
d) Biến trở ___________________________________________________32
CHƯƠNG 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG _________________33
3.1. Yêu cầu và sơ đồ khối hệ thống ________________________________33
3.1.1. Yêu cầu hệ thống ________________________________________33
3.1.2. Sơ đồ khối hệ thống ______________________________________33
3.1.3. Hoạt động của hệ thống ___________________________________34
3.2. Thiết kế phần cứng hệ thống __________________________________35
3.2.1 Khối nguồn _____________________________________________35
a) Yêu cầu của khối nguồn ____________________________________35
b) Sơ đồ khối và chức năng các khối ____________________________35
c) Biến áp:__________________________________________________36
d) Mạch chỉnh lưu và lọc nguồn sau chỉnh lưu ____________________36
e) Khối ổn áp _______________________________________________38
f) Hoàn thiện mạch nguồn ____________________________________39
3.2.2 Khối điều khiển _________________________________________41
3.2.3 Khối cảm biến___________________________________________42
3.2.4 Khối hiển thị ____________________________________________43
3.2.5 Khối quạt ______________________________________________44
3.2.6 Khối xử lí trung tâm: _____________________________________46
CHƯƠNG 4: LƯU ĐỒ GIẢI THUẬT _________________________________48
4.1 Lưu đồ giải thuật hệ thống: ___________________________________48
4.2 Lưu đồ giải thuật điều khiển quạt______________________________50
4.3 Lưu đồ giải thuật khởi tạo LCD _______________________________51

SVTH: LÊ HOÀNG NGHĨA 5


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.4 Lưu đồ giải thuật ngắt Timer 1 định thời _______________________52


4.5 Lưu đồ giải thuật chống dội nút nhấn __________________________53
4.6 Lưu đồ giải thuật xử lí chức năng nút nhấn ONOFF ______________53
4.7 Lưu đồ giải thuật xử lí chức năng nút nhấn SET _________________54
4.8 Lưu đồ giải thuật đọc giá trị nhiệt độ từ cảm biến ________________54
4.9 Lưu đồ giải thuật xử lí chức năng nút nhấn UP và DW ____________55
a) Nút nhấn UP _______________________________________________55
b) Nút nhấn DW ______________________________________________56
4.10 Lưu đồ giải thuật xử lí thời gian hoạt động ______________________57
4.11 Lưu đồ giải thuật xử lí thời gian nghỉ ___________________________58
CHƯƠNG 5: KẾT QUẢ THI CÔNG VÀ THỰC NGHIỆM_______________59
5.1 Kết quả ____________________________________________________59
5.2 Kết nối các module _________________________________________61
5.3 Thực nghiệm (Kiểm tra, vận hành hệ thống)_____________________62
CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN __________________64
6.1 Kết luận ___________________________________________________64
6.2 Hướng phát triển ___________________________________________64
TÀI LIỆU THAM KHẢO ___________________________________________65
PHỤ LỤC ________________________________________________________66
Code chương trình viết bằng CCS __________________________________66

SVTH: LÊ HOÀNG NGHĨA 6


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

DANH MỤC CÁC TỪ VIẾT TẮT

Tên viết tắt Tên tiếng Anh Tên tiếng Việt


(Xếp theo ABC)
AC Alternative Current Dòng điện xoay chiều
DC Alternative Current Dòng điện một chiều
LED Light Emitting Diode Đèn led
IC Integrated Circuit Mạch tích hợp
IoT Internet of Things Mạng lưới thông minh
kết nối máy tính và mạng
GPIO General-purpose input/output Cổng đầu vào và ra với
mục đích cơ bản
I/O Input/Output Ngõ vào/ngõ ra
MCU Microprocessor Control Unit Khối vi điều khiển
UART Universal Asynchronous Truyền dữ liệu nối tiếp
Receiver – Transmitter bất đồng bộ
LCD Liquid Crystal Display Màn hình tinh thể lỏng
ADC hay A/D Analog Digital Converter Chuyển đổi tín hiệu
tương tự sang tín hiệu số

SVTH: LÊ HOÀNG NGHĨA 7


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

DANH MỤC CÁC BẢNG BIỂU


Bảng 2.1. Sơ đồ chân màn hình LCD 1602...............................................................15
Bảng 2.2. Tập lệnh điều khiển LCD ..........................................................................17
Bảng 2.3. Bảng mã ASCII .........................................................................................22
Bảng 2.4. Chức năng các chân IC L298 ...................................................................23
Bảng 2.5. Bảng quy ước màu điện trở ................................................................30

SVTH: LÊ HOÀNG NGHĨA 8


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

DANH SÁCH CÁC HÌNH ẢNH, BIỂU ĐỒ


Hình 2.1. Cảm biến nhiệt LM35 ................................................................................12
Hình 2.2. Màn hình LCD 1602..................................................................................14
Hình 2.3. Sơ đồ chân màn hình LCD 1602 ...............................................................14
Hình 2.4. Sơ đồ khối bộ điều khiển ...........................................................................16
Hình 2.5. Dạng sóng điều khiển đọc .........................................................................20
Hình 2.6. Dạng sóng điều khiển ghi ..........................................................................21
Hình 2.7. Sơ đồ chân của IC L298 ............................................................................23
Hình 2.8. Vi xử lí PIC 16F887 ..................................................................................25
Hình 2.9. Sơ đồ khối PIC 16F887 .............................................................................26
Hình 2.10. Sơ đồ chân PIC 16F887 ..........................................................................28
Hình 2.11. Một số loại biến áp phổ biến ...................................................................29
Hình 2.12. Cách tính giá trị điện trở bằng các vòng màu ........................................30
Hình 2.13. Kí hiệu tụ điện .........................................................................................31
Hình 2.14. Các loại kí hiệu biến trở ..........................................................................32
Hình 2.15. Một số loại biến trở .................................................................................32
Hình 3.1. Sơ đồ khối hệ thống ...................................................................................33
Hình 3.2. Sơ đồ khối mạch nguồn .............................................................................35
Hình 3.3. Sơ đồ nguyên lí của biến áp ......................................................................36
Hình 3.4. Sơ đồ nguyên lí mạch cầu diode ...............................................................37
Hình 3.5. Một số loại tụ điện thường ........................................................................37
Hình 3.6. Sơ đồ chân của IC ổn áp ...........................................................................38
Hình 3.7. Mạch nguyên lí mạch nguồn ổn áp ...........................................................39
Hình 3.8. Sơ đồ PCB mạch nguồn ổn áp ..................................................................40
Hình 3.9. Mạch nguồn ổn áp mô phỏng trên 3D Visualize .......................................40
Hình 3.10. Sơ đồ nút nhấn kết nối với vi điều khiển .................................................41
Hình 3.11. Sơ đồ nguyên lý cảm biến LM35 kết nối với vi điều khiển ......................42
Hình 3.12. Sơ đồ nguyên lý LCD kết nối với vi điều khiển .......................................43
Hình 3.13. Sơ đồ chân và kích thước quạt ................................................................44
Hình 3.14. Sơ đồ nguyên lý cầu H L298 kết nối với vi điều khiển ............................45

SVTH: LÊ HOÀNG NGHĨA 9


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Hình 3.15. Sơ đồ nguyên lý vi điều khiển ..................................................................46


Hình 4.1. Lưu đồ giải thuật hệ thống ........................................................................48
Hình 4.2. Lưu đồ giải thuật điều khiển quạt .............................................................50
Hình 4.3. Lưu đồ giải thuật khởi tạo LCD ................................................................51
Hình 4.4. Lưu đồ giải thuật ngắt Timer 1 .................................................................52
Hình 4.5. Lưu đồ giải thuật chống dội nút nhấn .......................................................53
Hình 4.6. Lưu đồ giải thuật xử lí nút nhấn ONOFF .................................................53
Hình 4.7. Lưu đồ giải thuật xử lí nút nhấn SET ........................................................54
Hình 4.8. Lưu đồ giải thuật đọc nhiệt độ ..................................................................54
Hình 4.9. Lưu đồ giải thuật xử lí chức năng nút nhấn UP .......................................55
Hình 4.10. Lưu đồ giải thuật xử lí chức năng nút nhấn DW ....................................56
Hình 4.11. Lưu đồ giải thuật xử lí thời gian hoạt động ............................................57
Hình 4.12. Lưu đồ giải thuật xử lí thời gian nghỉ .....................................................58
Hình 5.1. Sơ đồ mạch in khối nguồn .........................................................................59
Hình 5.2. Mạch nguồn thi công thực tế .....................................................................59
Hình 5.3. Mạch in module điều khiển .......................................................................60
Hình 5.4. Mạch module điều khiển thi công thực tế .................................................60
Hình 5.5. Kết nối thực tế ...........................................................................................61
Hình 5.6. Kết nối hệ thống với khối quạt ..................................................................61
Hình 5.7. Hệ thống khi vừa cấp nguồn .....................................................................62
Hình 5.8. Cài đặt thông số thời gian .........................................................................62
Hình 5.9. Giao diện hệ thống khi quạt hoạt động .....................................................63
Hình 5.10. Hình ảnh hệ thống được cho phép hoạt động .........................................63

SVTH: LÊ HOÀNG NGHĨA 10


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CHƯƠNG 1: TỔNG QUAN HỆ THỐNG

1.1. Đặt vấn đề:


Ở một đất nước có khí hậu nóng ẩm như Việt Nam thì việc sử dụng hệ
thống điều hoà không khí là việc tất yếu và cần thiết cho nhu cầu của con người.
Điều hoà không khí trong phòng kín là thiết bị được sử dụng làm cho không khí
phòng được mát mẻ, thoải mái cho người bên trong phòng. Khi nhiệt độ trong
phòng càng cao, hiệu suất làm việc của hệ thống càng tăng làm cho nhiệt độ giảm
và ổn định ở một mức nhất định.

Chức năng chính của hệ thống điều hoà không khí:


 Điều khiển nhiệt độ phòng
 Điều khiển lưu lượng không khí
 Lọc sạch không khí trong phòng kín
1.2. Tình hình nghiên cứu hiện nay:

Thế giới: Các nước tiên tiến và phát triển đã ứng dụng rộng rãi các hệ
thống điều hoà không khí, đặc biệt ở những nước có khí hậu giống với nước ta.

Ở Việt Nam: Hệ thống hầu như chỉ sử dụng trong công nghiệp, các nhà
máy xí nghiệp và trong các trường đại học, chưa phổ biến rộng rãi trong các hộ dân
và các trường trung học do giá thành còn khá cao.

1.3. Mục tiêu đề tài:


Đề tài thiết kế nhận tín hiệu nhiệt độ từ cảm biến nhiệt LM35 đưa đến
khối xử lí trung tâm để tạo tín hiệu ngõ ra để điều khiển thiết bị, cụ thể là quạt để
làm mát và điều hoà không khí.
1.4. Tiếp cận nghiên cứu đề tài:
Để có thể tiếp cận đề tài, người nghiên cứu cần có những kiến thức cơ
bản về vi điều khiển (có thể là PIC hoặc ARM), kỹ thuật số, điện tử cơ bản, các loại
cảm biến. Các kiến thức về lập trình (có thể là ngôn ngữ C hoặc các ngôn ngữ
khác).

SVTH: LÊ HOÀNG NGHĨA 11


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. Cảm biến nhiệt độ LM35:


Với nhu cầu sử dụng như hiện nay, việc chọn và ứng dụng cảm biến
cũng rất quan trọng. Tuỳ các trường hợp, mục đích sửa dụng khác nhau mà các loại
cảm biến sẽ khác nhau. Chính vì thế mà cảm biến nhiệt độ không thể thiếu trong đề
tài này. Cảm biến nhiệt độ là thiết bị dùng để đo sự biến đổi về nhiệt độ của các đại
lượng cần đo.

Cảm biến nhiệt độ LM35 là loại cảm biến tương tự, hoạt động chính xác,
sai số nhỏ, kích thước gọn nhẹ, được sản xuất theo công nghệ bán dẫn dựa trên các
chất bán dẫn dễ bị tác động bởi sự thay đổi nhiệt độ. Đầu ra của cảm biến là điện áp
(V) tỉ lệ với nhiệt độ mà nó được đặt trong môi trường cần đo. Loại cảm biến
nhiệt độ tương tự này cũng rất dễ dàng đọc thông số, giá trị đo bằng các hàm đơn
giản.

Hình 2.1. Cảm biến nhiệt LM35

SVTH: LÊ HOÀNG NGHĨA 12


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Cảm biến LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà
điện áp đầu ra của nó tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius. Chúng
cũng không yêu cầu cân chỉnh ngoài vì vốn chúng đã được cân chỉnh. Cảm biến
LM35 hoạt động bằng cách cho ra một giá trị hiệu điện thế nhất định tại chân Vout
(chân giữa) ứng với mỗi mức nhiệt độ.

 Thông số kỹ thuật:
- Điện áp đầu vào : ViDC = 4V đến 30V
- Điện áp đầu ra : VoDC = -1V đến 6V
- Dòng đầu ra : Io = 10mA
- Dòng tiêu thụ: I = 60uA
- Độ phân giải điện áp đầu ra : 10mV/1°C
- Dải đo nhiệt độ : -55°C đến 150°C

 Ưu điểm : Giá thành rẻ, chống nhiễu khá tốt, mạch xử lí đơn giản, độ
chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng 2°C tới 150°C,
thích hợp đo nhiệt độ môi trường hoặc do nhiệt độ bảo vệ các mạch điện tử.

 Nhược điểm : Tính chịu nhiệt độ cao kém (giới hạn ở 150°C) , kém bền,
khi nhiệt độ vượt ngưỡng bảo vệ có thể làm hỏng cảm biến.

SVTH: LÊ HOÀNG NGHĨA 13


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

2.2. Màn hình LCD hiển thị :


2.2.1 Tổng quan:

Có nhiều cách để hiển thị nhưng kết quả cho hệ thống, chẳng hạn như có
thể dùng LED đơn báo hiệu, có thể dùng LED 7 đoạn hoặc có thể dùng các loại
LCD… lựa chọn thiết bị hiển thị đúng với nhu cầu là điều thiết yếu để đảm bảo tính
rõ ràng, hợp lí của hệ thống.

Hình 2.2. Màn hình LCD 1602


HD44780
Thiết bị hiển thị LCD (Liquid Crystal Display) được sử dụng trong rất
nhiều các ứng dụng của vi điều khiển.,LCD có rất nhiều ưu điểm so với các dạng
hiển thị khác: Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ
họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn
rất ít tài nguyên hệ thống,giá thành thấp.
2.2.2 Thông số kỹ thuật LCD 1602 HD44780:

a) Sơ đồ chân:

Hình 2.3. Sơ đồ chân màn hình LCD 1602


HD44780

SVTH: LÊ HOÀNG NGHĨA 14


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Trong 16 chân của LCD được chia làm 4 dạng tín hiệu như sau:
- Các chân cấp nguồn: Chân số 1 nối mass (0V), chân thứ 2 là VDD nối nguồn +5V.
Chân thứ 3 dùng để chỉnh độ tương phản (contrast) thường nối với biến trở, chỉnh
cho đến khi thấy được kí tự thì ngừng.
- Các chân điều khiển: Chân số 4 là chân RS dung để điều khiển lựa chọn thanh ghi.
Chân R/W dung để điều khiển quá trình đọc và ghi. Chân E là chân cho phép.
- Các chân dữ liệu D0 – D7: Chân số 7 đến chân số 14 là 8 chân dung để trao đổi
dữ liệu giữa thiết bị điều khiển và LCD
- Các chân LED_A và LED_K: Chân số 15 và 16 là 2 chân dùng để cấp nguồn cho
đèn nền để có thể nhìn thấy vào ban đêm.
Chân số Tên chân Input/Output Chức năng
1 VSS Power GND
2 VDD Power +5V
3 VO Analog Contrast Control
4 RS Input Register Slectect
5 R/W Input Read/Write
6 E Input Enable (strobe)
7 D0 I/O Data (LSB)
8 D1 I/O Data
9 D2 I/O Data
10 D3 I/O Data
11 D4 I/O Data
12 D5 I/O Data
13 D6 I/O Data
14 D7 I/O Data (MSB)
15 LED_A Input Backlight Anode
16 LED_K Input Backlight Cathode

Bảng 2.1. Sơ đồ chân màn hình LCD 1602


HD44780

SVTH: LÊ HOÀNG NGHĨA 15


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

b) Thông số kỹ thuật:

 Điện áp hoạt động là +5V


 Kích thước: 80 x 36 x 12.5 mm
 Chữ đen, nền xanh lá
 Khoảng cách giữa hai chân kết nối là 0.1 inch tiện dụng khi kết nối với Breadboard.
 Tên các chân được ghi ở mặt sau của màn hình LCD hổ trợ việc kết nối, đi dây
điện.
 Có đèn LED nền, có thể dùng biến trở hoặc PWM điều chình độ sáng để sử dụng ít
điện năng hơn.
 Có thể được điều khiển với 6 dây tín hiệu.
 Có bộ ký tự được xây dựng hổ trợ tiếng Anh và tiếng Nhật.

2.2.3 Bộ điều khiển LCD và các vùng nhớ:


Sơ đồ khối bộ điều khiển LCD:

Hình 2.4. Sơ đồ khối bộ điều khiển


LCD

Sơ đồ khối gồm có 4 phần: Bộ điều khiển LCD, bảng kí tự LCD, bộ thúc tín hiệu
các đoạn, đèn nền.

SVTH: LÊ HOÀNG NGHĨA 16


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Bộ điều khiển LCD có 3 vùng nhớ, mỗi vùng có chức năng riêng. Bộ điều khiển
phải khởi động trước khi truy cập vào các vùng nhớ.
a) Bộ nhớ DDRAM (Display Data RAM):
Bộ nhớ chứa dữ liệu để hiển thị, lưu trữ những mã kí tự để hiển thị lên màn
hình. Mã kí tự được lưu trong vùng DDRAM sẽ tham chiếu với từng vùng bitmap
kí tự được lưu trữ trong CGROM (Character Generator ROM) đã được định nghĩa
trước hoặc đặt trong vùng do người sử dụng định nghĩa.
b) Bộ phát kí tự ROM – CGROM (Character Generator ROM):
Bộ phát kí tự ROM chứa các kiểu bitmap cho mỗi kí tự được định nghĩa
trước mà LCD có thể hiển thị.
Mã kí tự lưu trong DDRAM cho mỗi vùng kí tự sẽ được tham chiếu đến một
vị trí trong CGROM.
c) Bộ phát kí tự RAM – CGRAM (Character Generator RAM):
Bộ phát kí tự RAM cung cấp vùng nhớ để tạo ra 8 kí tự tuỳ ý. Mỗi kí tự gồm
5 cột và 8 hàng.
2.2.4 Tập lệnh điều khiển LCD:

Lệnh RS RW D7 D6 D5 D4 D3 D2 D1 D0 Mô tả Thời
gian
thực
thi
NOP 0 0 0 0 0 0 0 0 0 0 Không hoạt 0
động
Clear 0 0 0 0 0 0 0 0 0 1 Ghi một 1,52
Display khoảng trống ms
vào tất cả các ô
nhớ trong
DDRAM và trả
địa chỉ đếm về
0
Cursor 0 0 0 0 0 0 0 0 1 0 Trả bộ đếm địa 39 us
Home chỉ về 0, trả
con trỏ về vị trí
gốc. Nội dung

SVTH: LÊ HOÀNG NGHĨA 17


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

DDRAM
không đổi
Entry 0 0 0 0 0 0 0 1 I/D S I/D: Bộ đếm 39 us
Mode Set tăng hoặc giảm
1 đơn vị khi có
hành động đọc
trong vùng
DDRAM.
S: Khi S=1 thì
toàn bộ nội
dung hiển thị
dịch sang phải
(I/D=1) hoặc
sang trái
(I/D=0), không
dịch khi S=0.
Display 0 0 0 0 0 0 1 D C B D: Hiển thị 39 us
Control màn hình khi
bằng 1.
C: Hiển thị con
trỏ khi bằng 1
B: Nhấp nháy
con trỏ khi
bằng 1
Cursor 0 0 0 0 0 1 S/C R/L 0 0 Dịch chuyển 39 us
Display con trỏ hay dữ
Shift liệu hiển thị
sang trái hoặc
phải mà không
cần hành động
ghi/đọc dữ
liệu. Dữ liệu
trong DDRAM
không đổi.
Function 0 0 0 0 1 DL N F 0 0 Thiết lập giao 39 us
Set thức dữ liệu 4
bit (DL=1)
hoặc 8 bit
(DL=0), thiết
lập số hàng
hiển thị (N=0
hiển thị hàng 1,

SVTH: LÊ HOÀNG NGHĨA 18


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

N=1 hiển thị


hàng 2), thiết
lập kiểu kí tự
(F=0 kiểu kí tự
5x8 điểm ảnh,
F=1 kiểu kí tự
5x10 điểm
ảnh).
Set 0 0 0 1 AC5 AC4 AC3 AC2 AC1 AC0 Ghi địa chỉ của 39 us
CGRAM CGRAM vào
addr địa chỉ đếm
Set 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 Ghiđịa chỉ của 39 us
DGRAM DGRAM vào
addr địa chỉ đếm,
thiết lập toạ độ
hiển thị.
Read Busy 0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 Kiểm tra hoạt 0
Flag & động bên trong
Addr LCD bằng cờ
BF, giá trị của
địa chỉ đếm
được xuất ra
các bit AC, đó
là địa chỉ của
CGRAM hoặc
DGRAM
Write Data 1 0 D7 D6 D5 D4 D3 D2 D1 D0 Ghi dữ liệu vào 43 us
to RAM CGRAM hoặc
DGRAM
Read Data 1 1 D7 D6 D5 D4 D3 D2 D1 D0 Đọc dữ liệu từ 43us
from CGRAM hoặc
RAM DGRAM

Bảng 2.2. Tập lệnh điều khiển LCD

SVTH: LÊ HOÀNG NGHĨA 19


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

2.2.5 Hoạt động đọc ghi của LCD:

Hình 2.5. Dạng sóng điều khiển đọc


LCD

 Hoạt động đọc của LCD:

- Điều khiển tín hiệu RS


- Điều khiển tín hiệu R/W lên mức 1
- Điều khiển tín hiệu E lên mức cao để cho phép
- Đọc dữ liệu từ bus dữ liệu D7 – D0 (data bus)
- Điều khiển tín hiệu E về mức thấp

SVTH: LÊ HOÀNG NGHĨA 20


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Hình 2.6. Dạng sóng điều khiển ghi


LCD

 Hoạt động ghi của LCD:

- Điều khiển tín hiệu RS


- Điều khiển tín hiệu R/W lên mức 0
- Điều khiển tín hiệu E lên mức cao để cho phép
- Đọc dữ liệu từ bus dữ liệu D7 – D0 (data bus)
- Điều khiển tín hiệu E về mức thấp

SVTH: LÊ HOÀNG NGHĨA 21


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

2.2.6 Bảng mã ASCII:

Bảng 2.3. Bảng mã ASCII

LCD sử dụng mã ASCII để hiển thị các kí tự, số, kí hiệu,…tổng cộng là 256 kí tự.
Trong bảng mã ASCII, các số hiển thị trên LCD có mã từ 0x30 đến 0x39 và các kí
tự la tinh có mã từ 0x41 đến 0x5A.

SVTH: LÊ HOÀNG NGHĨA 22


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

2.3. IC Driver động cơ L298N


Để sử dụng các động cơ, ta cần đến IC Driver để điều khiển chúng. IC L298N
là một trong số các driver có thể dùng để điều khiển động cơ.
Nếu như muốn đảo chiều của động cơ thì cần đảo chiều dòng điện, mà chúng
ta không thể đảo dây trong quá trình hoạt động. Thế nên mạch Driver sẽ giúp bạn
làm điều này. Không chỉ vậy, Driver còn được sử dụng để thay đổi tốc độ của động
cơ dễ dàng hơn, vì chỉ cần xuất xung PWM là có thể thay đổi tốc độ động cơ.

Hình 2.7. Sơ đồ chân của IC L298

 Chức năng các chân:


Số TT Chân Tên Chân Chức năng
1;15 Sense A; Sense B Giữa chân này và GND được khối nối đến
điện trở cảm biến để điều khiển dòng ra của
tải
2;3 Out1; Out2 Ngõ ra của cầu A
4 Vs Nguồn cung cấp cho ngõ ra, một tụ điện
100nF phải được kết nối giữa chân này với
GND
5;7 Input 1; Input 2 Ngõ vào TTL của cầu A
6;11 Enable A; Enable B Ngõ vào cho phép TTL : Dùng để cho
phép/ không cho phép cầu A hoặc cầu B
hoạt động
8 GND Nối đất

SVTH: LÊ HOÀNG NGHĨA 23


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

9 VSS Nguồn cung cấp cho khối logic của mạch,


một tụ điện 100nF phải được kết nối giữa
chân này với GND
10;12 Input 3; Input 4 Ngõ vào TTL của cầu B
13;14 Out 3; Out 4 Ngõ ra của cầu B
- N.C Không kết nối

Bảng 2.4. Chức năng các chân IC L298

 Đặc tính điện của IC L298:

- Nguồn cung cấp : Vs= 2,5V đến 46V


- Dòng cấp tải tối đa: Imax = 2A
- Nguồn cấp logic: Vss = 5V
- Điện áp vào mức thấp: ViL = -0,3V đến 1,5V
- Điện áp vào mức cao: ViH = 2,3V đến 5V
- Điện áp cho phép mức thấp: VenL = -0,3V đến 1,5V
- Điện áp cho phép mức cao: VenH = 2,3V đến 5V

SVTH: LÊ HOÀNG NGHĨA 24


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

2.4. Vi xử lí PIC 16F887:


Hiện nay, với sự phát triển của công nghệ thì việc sử dụng vi điều khiển
không còn xa lạ nữa, ta có thể tìm mua và sử dụng từ các hãng sản xuất lớn như
Texas Instrument, ST,Motorola,... Vi xử lý hiện nay đã phát triển khá nhiều so với
thuở sơ khai, trải dài từ 4bit cho đến 64bit. Tuy nhiên, vi xử lý 4 bit hiện nay không
còn nhưng vi xử lý 8 bit vẫn còn tương đối được ưa chuộng mặc dù đã phát triển lên
tới 64bit. Với nhu cầu nhỏ gọn, hệ thống xử lí đơn giản nên ta sẽ sử dụng họ vi điều
khiển PIC 16F887 làm bộ xử lí trung tâm. Được phát triển bởi Microchip, bộ vi
điều khiển PIC có tốc độ nhanh và cấu trúc đơn giản rất nhiều so với các dòng
ARM hiện nay, dễ dàng giao tiếp, lập trình với các thiết bị ngoại vi.
Vi điều khiển 16F887 là một con chip tích hợp các module như RAM, ROM,
CPU, TIMER, bộ đếm COUNTER, bộ chuyển đổi tương tự sang số (ADC). Ngoãi
ra, nó còn hỗ trợ các giao thức như CAN, SPI, UART để giao tiếp với các thiết bị
ngoại vi bổ sung.

Hình 2.8. Vi xử lí PIC 16F887

SVTH: LÊ HOÀNG NGHĨA 25


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

a) Sơ đồ khối PIC 16F887 :

Hình 2.9. Sơ đồ khối PIC 16F887

Các khối bên trong vi điều khiển PIC 16F887 :


- Khối CPU: nơi xử lý các lệnh, thông tin đưa vào từ ngoại vi và là nơi đặt WDT,các
biến báo ngắt và cũng là khối quan trọng nhất trong vi điều khiển PIC 16F887.

- Khối cổng chân I/O: là cầu nối giữa vi xử lý và các ngoại vi bên ngoài đưa tín hiệu
vào cho vi xử lý như các cảm biến, các công tắc, nút nhấn. Hoặc đưa tín hiệu ra để
điều khiển các ngoại vi như LED 7 đoạn hoặc LCD

- Khối bộ nhớ: là nơi lưu trữ các lệnh chương trình để vi xử lý thực hiện và cũng là
nơi lưu trữ các dữ liệu trước và sau khi xử lý

- Khối Timer: là một bộ đếm xung nhịp (xung clock), có chứa các thanh ghi chứa giá
trị đếm được và dùng dữ liệu đó để quét led, tạo xung PWM,….

- Khối ADC: chuyển đổi tín hiệu tương tự nhận được từ các cảm biến thông qua các
chân I/O thành tính hiệu số để vi xử lý có thể xử lý được

- Khối CCP/PWM: điều chế độ rộng xung nhằm làm thay đổi giá trị trung bình của
điện áp hoặc dòng điện, từ đó có thể dùng để điều khiển tốc độ động cơ DC

SVTH: LÊ HOÀNG NGHĨA 26


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

- Khối tạo xung dao động: dùng để tạo xung cấp cho các hoạt động của vi xử lý và
các ngoại vi bên trong con vi điều khiển

- Khối truyền dữ liệu nối tiếp: dùng để truyền dữ liệu giữa các thiết bị với vi điều
khiển mà không tiêu tốn quá nhiều cổng I/O trên vi điều khiển

- Khối nguồn: cung cấp nguồn nuôi cho vi xử lý và các ngoại vi liên quan có trong vi
điều khiển đó

b) Đặc tính của vi điều khiển PIC 16F887 :

- Bộ dao động nội chính xác: Sai số ± 1% và có thể lựa chọn tần số dao động nội từ
31 kHz đến 8 Mhz bằng phần mềm.
- Chế độ bắt đầu 2 cấp tốc độ.
- Mạch phát hiện hỏng dao động thạch anh cho các ứng dụng quan trọng.
- Có chuyển mạch nguồn xung clock trong quá trình hoạt động để tiết kiệm công
suất.
- Có chế độ ngủ để tiết kiệm năng lượng.
- Dãy điện áp hoạt động rộng từ 2V đến 5,5V.
- Tầm nhiệt độ làm việc theo chuẩn công nghiệp.
- Có mạch reset khi có điện (Power On Reset – POR).
- Có bộ định thời chờ ổn định điện áp khi mới có điện (Power up Timer – PWRT) và
bộ định thời chờ dao động hoạt động ổn định khi mới cấp điện (Oscillator Startup
Timer – OST).
- Có mạch tự động reset khi phát hiện nguồn điện cấp bị sụt giảm, cho phép lựa chọn
bằng phần mềm (Brown out Reset – BOR).
- Có bộ định thời giám sát (Watchdog Timer – WDT) dùng dao động trong chip cho
phép bằng phần mềm (có thể định thời lên đến 268 giây).
- Đa hợp ngõ vào reset với ngõ vào có điện trở kéo lên.
- Có bảo vệ code đã lập trình.
- Bộ nhớ Flash cho phép xóa và lập trình 100,000 lần.
- Bộ nhớ Eeprom cho phép xóa và lập trình 1,000,000 lần và có thể tồn tại trên 40
năm.
- Cho phép đọc/ghi bộ nhớ chương trình khi mạch hoạt động.
- Có tích hợp mạch gỡ rối.

SVTH: LÊ HOÀNG NGHĨA 27


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

c) Sơ đồ chân:

Hình 2.10. Sơ đồ chân PIC 16F887

- Các port I/O


 PortA gồm các tín hiệu từ RA0 đến RA7.
 PortB gồm các tín hiệu từ RB0 đến RB7.
 PortC gồm các tín hiệu từ RC0 đến RC7.
 PortD gồm các tín hiệu từ RD0 đến RD7.
 PortE gồm các tín hiệu từ RE0 đến RE3.
- Các ngõ vào bộ chuyển đổi ADC : có 14 kênh
 14 kênh ngõ vào tương tự từ AN0 đến AN13.
 Hai ngõ vào nhận điện áp tham chiếu bên ngoài là Vref+ và Vref-.
- Các ngõ vào bộ so sánh C1 và C2 : có 2 bộ so sánh
 Có 4 ngõ vào nhận điện áp ngõ vào âm của 2 bộ so sánh là: C12IN0-,
C12IN1-, C12IN2-, C12IN3-
 Có 2 ngõ vào nhận điện áp tương tự dương cho 2 bộ so sánh là: C12IN0+,
C12IN1+, C12IN2+, C12IN3+
 Có 2 ngõ ra của 2 bộ so sánh là : C1OUT và C2OUT
 Có 1 ngõ vào nhận điện áp tham chiếu chuẩn cấp cho 2 bộ so sánh là: CVREF
- Chức năng dao động cấp xung cho CPU hoạt động.
- Chức năng truyền dữ liệu SPI.
- Chức năng truyền dữ liệu I2C.
- Chức năng truyền dữ liệu đồng bộ ESUART.

SVTH: LÊ HOÀNG NGHĨA 28


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

- Chức năng truyền dữ liệu không đồng bộ ESUART


- Chức năng ngắt
- Chức năng CCP (capture, compare, pulse with modulation)
- Chức năng nạp chương trình vào bộ nhớ Flash
- Có 1 ngõ vào reset có tên là MCLR (master clear)
- Có 4 chân cấp nguồn: VDD cấp nguồn dương, VSS nối với 0V.

2.5. Một số linh kiện khác:


a) Biến áp:
Máy biến áp hay máy biến thế, tên ngắn gọn là biến áp, là thiết bị điện thực hiện
truyền đưa năng lượng hoặc tín hiệu điện xoay chiều giữa các mạch điện thông
qua cảm ứng điện từ.
Máy biến áp gồm có một cuộn dây sơ cấp và một hay nhiều cuộn dây thứ cấp
liên kết qua trường điện từ. Khi đưa dòng điện với điện áp xác định vào cuộn sơ
cấp, sẽ tạo ra trường điện từ. Theo định luật cảm ứng Faraday trường điện từ tạo
ra dòng điện cảm ứng ở các cuộn thứ cấp. Để đảm bảo sự truyền đưa năng lượng thì
bố trí mạch dẫn từ qua lõi cuộn dây. Vật liệu dẫn từ phụ thuộc tần số làm việc.

Hình 2.11. Một số loại biến áp phổ biến

SVTH: LÊ HOÀNG NGHĨA 29


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

b) Điện trở:
Điện trở là đại lượng vật lý đặc trưng cho tính chất cản trở dòng điện của một
vật thể dẫn điện. Nó được định nghĩa là tỷ số của hiệu điện thế giữa hai đầu vật thể
đó với cường độ dòng điện đi qua nó:
𝑈
𝑅=
𝐼
- Trong đó:
+ U là hiệu điện thế giữa hai đầu vật dẫn, đơn vị Volt (V)
+ I là cường độ dòng điện đi qua vật dẫn, đơn vị Ampe (A)
+ R là điện trở vật dẫn, đơn vị Ohm (Ω)
Quy ước màu quốc tế :
Màu sắc Giá trị
Đen 0
Nâu 1
Đỏ 2
Cam 3
Vàng 4
Xanh lá 5
Xanh dương 6
Tím 7
Xám 8
Trắng 9
Nhũ vàng -1
Nhũ bạc -2

Bảng 2.5. Bảng quy ước màu điện trở

- Cách đọc trị số điện trở 4 vòng màu được mô tả qua hình dưới đây:

Hình 2.12. Cách tính giá trị điện trở bằng các vòng màu

SVTH: LÊ HOÀNG NGHĨA 30


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

c) Tụ điện:
Tụ điệnlà một loại linh kiện điện tử thụ độngtạo bởi hai bề mặt dẫn điện được
ngăn cách bởi điện môi. Khi có chênh lệch điện thế tại hai bề mặt, tại các bề mặt sẽ
xuất hiện điện tích cùng điện lượng nhưng trái dấu.

Hình 2.13. Kí hiệu tụ điện


Sự tích tụ của điện tích trên hai bề mặt tạo ra khả năng tích trữnăng lượngđiện
trườngcủa tụ điện. Khi chênh lệch điện thế trên hai bề mặt là điện thế xoay chiều, sự
tích luỹ điện tích bị chậm pha so với điện áp, tạo nên trở kháng của tụ điện trong
mạch điện xoay chiều.
Điện dunglà đại lượng vật lý nói lên khả năng tích điện giữa hai bản cực của
tụ điện, điện dung của tụ điện phụ thuộc vào diện tích bản cực, vật liệu làm chất điện
môi và khoảng cách giữ hai bản cực theo công thức:

Trong đó,

 C: là điện dung tụ điện, đơn vị là Fara [F]


 ε: Là hằng số điện môi của lớp cách điện;
 ε0: Là hằng số điện thẩm;
 d: là chiều dày của lớp cách điện;
 S: là diện tích bản cực của tụ điện.
Đơn vị của đại lượng điện dung là Fara [F].
Tụ điện có nhiều loại: Tụ điện phân cực (Hầu hết là tụ hoá, có phân cực
dương âm rõ rang khi nối phải nối đúng cực), tụ điện không phân cực (tụ giấy, tụ
gốm, tụ mica, không xác định cực tính), tụ có giá trị biến đổi( tụ xoay, có thể thay
đổi giá trị điện dung).

SVTH: LÊ HOÀNG NGHĨA 31


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

d) Biến trở:

Biến trở là các thiết bị có điện trở thuần có thể biến đổi được theo ý muốn. Chúng
có thể được sử dụng trong các mạch điện để điều chỉnh hoạt động của mạch điện.

Điện trở của thiết bị có thể được thay đổi bằng cách thay đổi chiều dài của dây
dẫn điện trong thiết bị, hoặc bằng các tác động khác như nhiệt độ thay đổi, ánh sáng
hoặc bức xạ điện từ, ...

Ký hiệu biến trở:

Hình 2.14. Các loại kí hiệu biến trở

Hình 2.15. Một số loại biến trở

SVTH: LÊ HOÀNG NGHĨA 32


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CHƯƠNG 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG

3.1. Yêu cầu và sơ đồ khối hệ thống:


3.1.1. Yêu cầu hệ thống:
Hệ thống có các chức năng sau:
- Giám sát nhiệt độ trong phòng : Có thể đo nhiệt độ trong khoảng từ 2oC đến
150oC và hiển thị lên LCD.
- Tự động điều chỉnh tốc độ của quạt khi nhiệt độ thay đổi, nhiệt độ càng cao
quạt quay càng nhanh, nhiệt độ càng thấp quạt quay càng chậm.
- Sử dụng các nút nhấn để điều khiển bật/tắt quạt, điều chỉnh thời gian cho
phép quạt chạy và thời gian nghỉ của quạt.
- Hiển thị trạng thái nhiệt độ phòng, thời gian chạy, thời gian nghỉ của quạt
trên màn hình LCD

3.1.2. Sơ đồ khối hệ thống:

Hình 3.1. Sơ đồ khối hệ thống

SVTH: LÊ HOÀNG NGHĨA 33


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Chức năng từng khối:


- Khối nguồn: Cung cấp các nguồn điện một chiều cho các khối : Khối hiển
thị, khối điều khiển và cảm biến, khối xư lí trung tâm, quạt.
- Cảm biến: Thu thập nhiệt độ từ môi trường và gửi đến khối xử lí trung tâm
- Khối điều khiển: Nhận các tín hiệu điều khiển từ các nút nhấn và gửi đến
khối xử lí trung tâm.
- Khối xử lí trung tâm: Có nhiệm vụ đọc dữ liệu từ cảm biến nhiệt độ, tiếp
nhận các tín hiệu từ khối điều khiển, từ đó xuất các tín hiệu điều khiển quạt
và hiển thị lên khối hiển thị LCD.
- Khối hiển thị: Nhận tín hiệu từ khối xử lí trung tâm, hiển thị trạng thái nhiệt
độ mỗi trường, thiết lập thời gian,…
- Khối quạt: Nhận tín hiệu điều khiển từ khối xử lí trung tâm để hoạt động.

3.1.3. Hoạt động của hệ thống:


Khi hệ thống được cấp nguồn hệ thống sẽ hoạt động theo trình tự như sau:

- Khi được cấp nguồn, toàn bộ hệ thống sẽ được cấp nguồn, khối hiển
thị, khối cảm biến, quạt sẽ đợi tín hiệu điều khiển từ khối xử lí trung tâm.
- Khối xử lí trung tâm bắt đầu đọc dữ liệu từ khối cảm biến nhiệt độ,
sau đó xử lí rồi xuất dữ liệu nhiệt độ đã được xử lí ra khối hiển thị LCD
- Khối hiển thị LCD sẽ hiển thị thời gian chạy, thời gian nghỉ của quạt.
Các giá trị thời gian này được cài đặt bởi khối điều khiển. Khi khối điều
khiển tác động sẽ gửi các tín hiệu điều khiển đến khối xử lí trung tâm, từ đó
xử lí các tín hiệu điều khiển và xuất ra màn hình các giá trị thời gian cài đặt.
- Khối quạt lúc này sẽ chờ tín hiệu điều khiển từ khối xử lí trung tâm.
Khi khối điều khiển tác động cho phép quạt hoạt động, khối xử lí trung tâm
sẽ nhận tín hiệu này và điều khiển khối quạt theo thời gian đã được cài đặt
sẵn.

SVTH: LÊ HOÀNG NGHĨA 34


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

3.2. Thiết kế phần cứng hệ thống:


3.2.1 Khối nguồn:

a) Yêu cầu của khối nguồn:


- Điện áp ngõ vào Ui = 220VAC – 50Hz
- Điện áp ngõ ra: V1DC = 5V, V2DC = 12V
- Dòng cấp tải tối đa cho mỗi nguồn : Imax = 1A
- Điện áp ngõ ra ổn định, ít gợn song, các linh kiện trong mạch đảm bảo ở trạng
thái hoạt động tốt, không quá nhiệt.
b) Sơ đồ khối và chức năng các khối:

Hình 3.2. Sơ đồ khối mạch nguồn


ổn áp

Biến áp: Biến đổi dòng xoay chiều 220V thành dòng xoay chiều có điện áp
phù hợp và ngăn cách mạch chỉnh lưu với mạng điện xoay chiều về một chiều.
Mạch chỉnh lưu: Chuyển điệp áp U2 thành dạng điện áp một chiều nhưng
vẫn còn một ít thành phần của sóng sin từ ngõ vào.
Bộ lọc: San bằng điện áp một chiều UT thành dòng một chiều ổn định, ít
nhấp nhô và răng cưa, loai bỏ các thành phần gợn sóng.
Bộ ổn áp: Ổn định điện áp ra ở một giá trị cụ thể như mong muốn mà không
phụ thuộc vào điện áp đầu vào.

SVTH: LÊ HOÀNG NGHĨA 35


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

c) Biến áp:

Hình 3.3. Sơ đồ nguyên lí của biến áp

Nguồn áp sử dụng lưới điện xoay chiều 220V – 50Hz và điện áp đầu ra của bộ
nguồn 1 là 5VDC-1A, nguồn 2 là 12VDC-1A.
Công suất nguồn ra : P = P1 + P2 = 5x1 + 12x1 = 17 (W)
Sinh viên sử dụng biến áp có điện áp vào là 220 VAC, có điện áp ra
VOAC = 18 VAC và dòng tải IOAC = 2A
d) Mạch chỉnh lưu và lọc nguồn sau chỉnh lưu:

- Phương án 1: Sử dụng mạch chỉnh lưu bán kỳ (Chỉnh lưu nửa sóng).
 Ở phương án này, chỉ có một nửa chu kỳ được chỉnh lưu, do đó mạch
chỉnh lưu cho ra hiệu suất thấp, dạng sóng rang cưa lớn, không ổn định
khi dùng để làm mạch nguồn ổn áp cho các linh kiện điện tử.
- Phương án 2: Sử dụng mạch chỉnh lưu toàn kỳ (Chỉnh lưu toàn sóng).
 Đối với chỉnh lưu toàn kỳ, sinh viên sử dụng cầu diode để chỉnh lưu, với
hiệu suất chỉnh lưu cao hơn bán kỳ, cho ra dạng sóng sau chỉnh lưu ổn
định, điện áp ra liên tục, sóng răng cưa nhỏ dễ dàng lọc thành dạng
phẳng. Khi điện áp lưới có giá trị lớn nhất là Umax = 240 VAC, dòng lớn
nhất qua diode sẽ là 2A. Điện áp sau chỉnh lưu là:

U = 18√2 – 1,4 = 24 V

SVTH: LÊ HOÀNG NGHĨA 36


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

- Từ các lựa chọn tính toán trên, sinh viên chọn mạch cầu diode 50V – 3A cho
mạch chỉnh lưu.

Hình 3.4. Sơ đồ nguyên lí mạch cầu diode


- Đối với bộ lọc nguồn sau chỉnh lưu, sinh viên sử dụng bộ lọc bằng tụ điện để
đơn giản hoá mà tính hiệu quả cao. Tụ điện có tác dụng nạp xả để biến điện
áp sau chỉnh lưu từ dạng rang cưa về dạng phẳng, từ đó ổn định đầu ra. Với
điện áp sau chỉnh lưu là 24VDC nên sinh viên chọn tụ lọc C = 2200uF / 50V.

Hình 3.5. Một số loại tụ điện thường


dùng

SVTH: LÊ HOÀNG NGHĨA 37


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

e) Khối ổn áp:
Do dễ tìm mua, sử dụng và hiệu suất làm việc cao, lắp ráp đơn giản nên
sinh viên sẽ sử dụng khối ổn áp họ IC LM78xx, cụ thể là IC LM7805 cho điện áp
đầu ra 5V và IC LM7812 cho điện áp đầu ra là 12V.
 Các đặc tính của IC LM7805 ở 25oC
- Điện áp đầu vào : Vi = 7,5V – 20V
- Điện áp đầu ra : Vo = 5V
- Điện áp sụt : Vdrop = 2V
- Dòng đầu ra: Io= 5mA – 1A
- Nhiệt độ hoạt động : Tj = 0oC – 125oC

 Các đặc tính của IC LM7812 ở 25oC


- Điện áp đầu vào : Vi = 14,5V – 27V
- Điện áp đầu ra : Vo = 11,5V – 12,5V
- Điện áp sụt : Vdrop = 2V
- Dòng đầu ra: Io= 5mA – 1A
- Nhiệt độ hoạt động : Tj = 0oC – 125oC

Hình 3.6. Sơ đồ chân của IC ổn áp


7805

SVTH: LÊ HOÀNG NGHĨA 38


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

f) Hoàn thiện mạch nguồn:


Dựa vào nguyên lý hoạt động của các họ IC LM7805 và IC LM7812 sinh viên
sẽ lắp đặt thành mạch nguyên lý như sau:

Hình 3.7. Mạch nguyên lí mạch nguồn ổn áp

 Các thông số LED D2, D4:


 Điện áp rơi trên LED : Vdrop = 3,3 V
 Dòng cấp cho LED : ILED = 10mA đến 20mA
12−3,3
- Trở hạn dòng cho LED D2 : ID2 = = 580 Ω
15𝑚𝐴
5−3,3
- Trở hạn dòng cho LED D2 : ID4 = = 113 Ω
15𝑚𝐴

- Vậy, ta chọn trở hạn dòng R3 = 560 Ω và R2 = 220Ω


 Chọn giá trị cho tụ lọc C11,C12 là 470uF / 50V.
 Chọn giá trị cho các tụ gốm C6,C8,C9,C10 là 0,1uF / 50V.

SVTH: LÊ HOÀNG NGHĨA 39


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

 Sơ đồ PCB của mạch nguồn :

Hình 3.8. Sơ đồ PCB mạch nguồn ổn áp

 Mô phỏng mạch nguồn bằng 3D Visualize của Proteus :

Hình 3.9. Mạch nguồn ổn áp mô phỏng trên 3D Visualize

SVTH: LÊ HOÀNG NGHĨA 40


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

3.2.2 Khối điều khiển:


Trong đề tài này, nút nhấn nhấn nhả là một lựa chọn thích hợp nhất cho
khối điều khiển với ưu điểm như dễ sử dụng, dễ dàng lắp đặt, giá thành rẻ. Các nút
nhấn khi được tác động sẽ có tác dụng tạo tín hiệu gửi đến vi điều khiển, dựa trên
tín hiệu nhận được từ chân nào mà vi điều khiển sẽ thực hiện các công việc khác
nhau.
- Sơ đồ nguyên lí của khối điều khiển:

Hình 3.10. Sơ đồ nút nhấn kết nối với vi điều khiển

- Kết nối với các chân trong vi điều khiển:


 Nút nhấn UP nối với chân RC7 (chân 26) của vi điều khiển.
 Nút nhấn DW nối với chân RC6 (chân 25) của vi điều khiển.
 Nút nhấn SET nối với chân RC5 (chân 24) của vi điều khiển.
 Nút nhấn ONOFF nối với chân RC4 (chân 23) của vi điều khiển.

- Chức năng các nút nhấn :


 Nút nhấn UP : Dùng để tăng giá trị cài đặt (ở đây giá trị cài đặt là thời gian)
 Nút nhấn DW : Dùng để giảm giá trị cài đặt (ở đây giá trị cài đặt là thời gian)
 Nút nhấn SET: Chuyển đổi cài đặt giá trị thời gian cho phép quạt hoạt động
và thời gian nghỉ của quạt.
 Nút nhấn ONOFF: Cho phép hoặc không cho phép quạt hoạt động.

SVTH: LÊ HOÀNG NGHĨA 41


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

3.2.3 Khối cảm biến:

Phương án thiết kế:

 Dùng cảm biến số nhiệt độ độ ẩm DHT11: DHT11 Là cảm biến rất


thông dụng hiện nay, lấy dữ liệu thông qua giao tiếp 1-wire (giao tiếp digital
1-wire truyền dữ liệu duy nhất). Cảm biến được tích hợp bộ tiền xử lý tín
hiệu giúp dữ liệu nhận về được chính xác mà không cần phải qua bất kỳ tính
toán nào. Tuy nhiên, DHT11 chỉ có dải đo nhiệt độ từ 0oC đến 50oC, sai số
2oC.
 Dùng cảm biến LM35 : Cảm biến nhiệt độ LM35 là một loại cảm biến
tương tự rất hay được ứng dụng trong các ứng dụng đo nhiệt độ thời gian
thực. Kích thước nhỏ và giá thành rẻ là một trong những ưu điểm của nó. So
với các cảm biến số, cảm biến LM35 thu thập giá trị nhiệt độ môi trường và
xuất ra dạng điện áp thay đổi theo nhiệt độ tuyến tính 10mV/ 1oC. Độ chính
xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng 2°C tới 150°C.
Cùng với hiệu năng cao của nó mà LM35 sẽ được lựa chọn để đo nhiệt độ
cho hệ thống.

Kết nối phần cứng:


Cảm biến LM35 gồm có 3 chân:
 Chân 1: Nối nguồn 5V
 Chân 3: Nối GND
 Chân 2: Chân tín hiệu ngõ ra
được nối với chân A0 của vi
điều khiển.
 Giữa chân ngõ ra của LM35
(chân 2) và chân GND (chân
3) có mắc một tụ điện có
điện dung C = 0,1uF có tác
dụng lọc nhiễu của tín hiệu
đưa ra từ LM35.

Hình 3.11. Sơ đồ nguyên lý cảm biến LM35 kết nối với vi điều khiển

SVTH: LÊ HOÀNG NGHĨA 42


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

3.2.4 Khối hiển thị:


Phương án thiết kế:
 Dùng LED 7 đoạn để hiển thị: Được sử dụng rất rộng rãi, tác dụng duy nhất
của LED 7 đoạn là hiển thị, với giá thành rẻ và tính dễ sử dụng. Tuy nhiên,
LED 7 đoạn được sử dụng hiển thị các dãy số, kí tự không đòi hỏi quá phức
tạp hay chỉ cần hiện số là đủ như nhiệt độ, đồng hồ, số lượng sản phẩm,…Do
đó mà ứng dụng của nó bị hạn chế ở các hệ thống đòi hỏi sự phức tạp trong
hiển thị.
 Dùng màn hình LCD để hiển thị: Một phương pháp khác để hiển thị tốt hơn
LED 7 đoạn là dùng màn hình LCD. Nó có khả năng hiển thị kí tự đa dạng,
trực quan (chữ, số và kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo
nhiều giao thức giao tiếp khác nhau, tốn rất ít tài nguyên hệ thống, giá thành
thấp. Do đó, sinh viên chọn LCD 16x2 dùng để hiển thị cho hệ thống.
Kết nối phần cứng:

 Chân VDD nối với nguồn 5V.


 Chân VSS nối GND.
 Chân VEE nối với một biến trở
để điều chỉnh độ tương phản trên
màn hình.
 Chân RS, RW, E lần lượt nối với
các chân RD5, RD6, RD7 của vi
điều khiển.
 Các chân dữ liệu từ D0 đến D7
lần lượt được nối với các chân từ
RB0 đến RB7 của vi điều khiển.
 Ngoài ra LCD16x2 có hai chân
Anode và Cathode để cấp nguồn
cho đèn nền. Chân Anode nối
với nguồn 5V và chân Cathode
nối với GND

Hình 3.12. Sơ đồ nguyên lý LCD kết nối với vi điều khiển

SVTH: LÊ HOÀNG NGHĨA 43


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

3.2.5 Khối quạt:


Mục đích xây dựng hệ thống là để làm mát tự động và tiết kiệm năng lượng
nên quạt là một thiết bị không thể thiếu trong đề tài. Cái chính là cần phải xác định
nhu cầu của khu vực mà hệ thống hoạt động để lựa chọn quạt phù hợp. Ví dụ đối
với các nhà xưởng, xí nghiệp ta nên lựa chọn các loại quạt công suất lớn và ngược
lại nên chọn quạt công suất vừa, nhỏ đối với khu vực nhà ở, văn phòng…Vì chỉ sử
dụng trong phạm vi là mô hình báo cáo nên sinh viên sẽ chọn quạt DC 12V không
chổi than.

Hình 3.13. Sơ đồ chân và kích thước quạt

Thông số kỹ thuật :
- Điện áp định mức: Uđm = 12 (V)
- Dòng điện định mức: Iđm = 0,2 (A)
- Điện áp khởi động: Ustart = 7 (V)
- Công suất ngõ vào: Pin = 3 (W)
- Điện áp hoạt động: Uo = 10,2 ~ 13.8 (V)
- Nhiệt độ hoạt động: -10oC ~ 70oC
Quạt sẽ được điều khiển bằng khối xử lí trung tâm, nhưng do đầu ra của vi
điều khiển chỉ đáp ứng được 5V sẽ không điều khiển được hiệu năng của quạt nên
ta sẽ điều khiển quạt bằng một module trung gian. Có rất nhiều module điều khiển
động cơ DC khác nhau tuỳ theo công suất của động cơ và nhu cầu của người sử
dụng. Đối với quạt 12V DC không chổi than, ta nên dùng module cầu H sử dụng IC
L298N để điều khiển. Việc sử dụng mạch cầu H L298N sẽ phù hợp với các động cơ
nhỏ, công suất thấp.

SVTH: LÊ HOÀNG NGHĨA 44


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Kết nối phần cứng:

Hình 3.14. Sơ đồ nguyên lý cầu H L298 kết nối với vi điều khiển

 Chân ENA của L298 được kết nối với chân RC2 (Chân CCP1) của
vi điều khiển.
 Chân IN1, VS, SENSA kết nối với nguồn 12 V và được nối song
song với một tụ điện có giá trị điện dung 100nF theo hướng dẫn
của nhà sản xuất.
 Chân VCC nối với nguồn 5V và được nối song song với một tụ
điện có giá trị điện dung 100nF theo hướng dẫn của nhà sản xuất.
 Chân GND nối với GND
 Chân OUT1 được kết nối với chân VCC của quạt

SVTH: LÊ HOÀNG NGHĨA 45


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

3.2.6 Khối xử lí trung tâm:


Hiện nay trên thị trường vi điều khiển rất đa dạng, có nhiều loại rất nhiều họ
vi điều khiển khác nhau: ARM, AVR, PIC, STM, AT…Do nhu cầu sử dụng hệ thống
không đòi hỏi tiêu tốn nhiều tài nguyên, không thực hiện nhiều tính năng. Hệ thống
chỉ cần thu thập dữ liệu từ cảm biến, trao đổi dữ liệu với khối xử lý trung tâm chính
và điều khiển quạt. Do đó sinh viên đã chọn vi điều khiển PIC16F877 với giá thành
rẻ, phù hợp với yêu cầu của hệ thống.

Hình 3.15. Sơ đồ nguyên lý vi điều khiển

SVTH: LÊ HOÀNG NGHĨA 46


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Kết nối các chân trong vi điều khiển:


 Chân 11, 32: Nối nguồn cung cấp 5V
 Chân 12, 31: Nối GND
 Chân 13,14 : Nối với bộ dao động thạch anh 20 MHz
 Chân 1: Nối với nút nhấn reset
Kết nối các port trong vi điều khiển:
 Port B từ RB0 đến RB7 : Kết nối lần lượt với các chân từ D0 đến
D7 của LCD theo kết nối 8 bits.
 Chân 2: Được nối với chân điện áp ngõ ra của cảm biến nhiệt độ
LM35
 Chân 28, 29, 30 lần lượt kết nối với các chân RS, RW, E của LCD
 Chân 23, 24, 25, 26 lần lượt kết nối với các nút nhấn UP, DW,
SET, ONOFF
 Chân 17 : Được kết nối với chân ENA của mạch cầu H L298

SVTH: LÊ HOÀNG NGHĨA 47


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CHƯƠNG 4: LƯU ĐỒ GIẢI THUẬT

4.1 Lưu đồ giải thuật hệ thống:

Hình 4.1. Lưu đồ giải thuật hệ thống

SVTH: LÊ HOÀNG NGHĨA 48


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Giải thích lưu đồ:


- Đầu tiên khởi tạo các port của vi điều khiển :
o Port A là 0xFF : Cấu hình port A là ngõ vào
o Port B là 0x00 : Cấu hình port B là ngõ ra
o Port C là 0x0F : Cấu hình các chân từ RC0 đến RC3 là ngõ vào, từ RC4
đến RC7 là ngõ ra
o Port D là 0x00 : Cấu hình port D là ngõ ra
- Tiếp theo là khởi tạo Timer 1 dùng để định thời dùng xung CLOCK nội và qua
bộ chia 8. Khởi tạo LCD để thiết lập cho màn hình LCD khi vừa cấp nguồn, cài
đặt chân ADC là chân A0.
- Khởi tạo PWM dùng Timer 2 để điều chế độ rộng xung (PWM). Để sử dụng
chế độ PWM phải tính toán hệ số chu kì (Cho chu kì PWM là 0.8 ms):
o Vì thạch anh vi điều khiển sử dụng có tần số 20 Mhz nên chu kì
TOSC = 50 (ns).
o Chu kỳ PWM : PERIODPWM = [(PR2)+1]*4*TOSC*PVTMR2
= 0.8 ms = 800 000 (ns)
PERIODPWM 800 000 𝑛𝑠
o [(𝑃𝑅2) + 1] = = = 250. Vậy PR2 = 249
4∗𝑇𝑂𝑆𝐶∗𝑃𝑉𝑇𝑀𝑅2 4∗50𝑛𝑠∗16
𝑃𝐸𝑅𝐼𝑂𝐷𝑃𝑊𝑀 800 000 𝑛𝑠
o 𝐻ệ 𝑠ố chu kì = = = 1000. Vậy giới hạn hệ số chu
𝑇𝑂𝑆𝐶∗𝑃𝑉𝑇𝑀𝑅2 50 𝑛𝑠∗16
kì của PWM là từ 0 đến 1000 với các thông số đã cho.
- Sau khi đã khởi tạo, hệ thống vào vòng lặp vô hạn :
o Đầu tiên chương trình kiểm tra biến đếm ngắt có bé hơn 10 hay không.
Biến đếm ngắt được tác động bởi Timer 1 khi giá trị của Timer 1 tràn
làm cho biến đếm ngắt tăng lên 1. Nếu biến đếm ngắt bé hơn 10 thì
chương trình thực hiện đọc giá trị nhiệt độ từ cảm biến, hiển thị trạng
thái nhiệt độ lên màn hình LCD và kiểm tra 4 nút nhấn UP, DW, SET,
ONOFF.
o Sau khi hoàn thành kiểm tra nút nhấn, nếu giá trị điều khiển bằng 1 thì
cho phép quạt chạy, nếu không thì tắt PWM.
o Khi biến đếm ngắt lớn hơn 10, lúc này chương trình sẽ cập nhật lại giá trị
cho biến đếm ngắt bằng cách trừ 10 giá trị. Đồng thời xử lí thời gian
chạy của quạt và thời gian nghỉ của quạt.
o Kết thúc các tác vụ trên thì chương trình sẽ quay lại từ đầu và thực hiện
lại các chương trình.

SVTH: LÊ HOÀNG NGHĨA 49


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.2 Lưu đồ giải thuật điều khiển quạt:

Hình 4.2. Lưu đồ giải thuật điều khiển quạt

Giải thích lưu đồ:


- Đầu tiên là thiết lập chân RC2 (CCP1) ờ chế độ PWM.
- Tiếp theo chương trình dùng giá trị nhiệt độ so sánh với các mức nhiệt độ đã
được đặt trước, tuỳ theo nhiệt độ mà hệ thống sẽ cho giá trị PWM lớn hay nhỏ:
o Nhiệt độ lớn hơn 32 : Cài đặt giá trị hệ số chu kì của PWM là 1000.
o Nhiệt độ lớn hơn 28 và bé hơn 32 : Cài đặt giá trị hệ số chu kì của PWM
là 850.
o Nhiệt độ lớn hơn 25 và bé hơn 28 : Cài đặt giá trị hệ số chu kì của PWM
là 700.
o Nhiệt độ bé hơn 25 : Cài đặt giá trị hệ số chu kì của PWM là 500.

SVTH: LÊ HOÀNG NGHĨA 50


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.3 Lưu đồ giải thuật khởi tạo LCD:


Giải thích lưu đồ:
- Đầu tiên, khi vừa cấp nguồn cho hệ
thống phải chờ 20 mili giây cho
LCD được cấp nguồn và sẵn sang
hoạt động.
- Chương trình xuất tín hiệu các chân
nối với chân RS, RW, E ở mức thấp
để quá trình khởi tạo được bắt đầu.
- Muốn khởi tạo lại LCD, trước hết
phải xoá màn hình và đợi 2 mili
giây cho LCD có thời gian để xoá
theo khuyến cáo của nhà sản xuất.
- Tiếp theo là gửi mã
FUNCTION_SET là 0x38: mã này
thiết lập cho LCD giao tiếp theo
chuẩn 4 BIT, hiển thị trên 2 hàng,
kiểu kí tự hiển thị là 5x8 điểm ảnh.
- Sau đó là gửi mã lệnh
DISPLAY_CONTROL là 0x0C :
mã này thiết lập cho phép LCD hiển
thị và không hiển thị con trỏ trên
màn hình.
- Cuối cùng là gửi mã lệnh
ENTRY_MODE là 0x18: mã này
cho phép LCD tự tăng 1 đơn vị
trong vùng nhớ SRAM khi có hành
động đọc một chuỗi các dữ liệu hiển
thị liên tiếp.
Hình 4.3. Lưu đồ giải thuật khởi tạo LCD

SVTH: LÊ HOÀNG NGHĨA 51


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.4 Lưu đồ giải thuật ngắt Timer 1 định thời:


Giải thích lưu đồ:
- Để định thời cho vi điều khiển, sinh viên sử
dụng Timer 1 để định thời. Timer 1 đếm
xung nội có tần số 20MHz qua bộ chia 4 còn
5MHz. Sử dụng bộ chia trước có hệ số là 8
nên xung vào bộ đếm với tần số còn lại là
0.625Mhz (625 000 Hz) có nghĩa là 1 giây
Timer 1 sẽ đếm được 625 000 xung.
- Timer 1 chỉ có 16 bit và giới hạn đếm lớn
nhất là 65536 xung thì tràn nên phải thiết lập
cho Timer 1 đếm 62500 xung và thực hiện
đếm 10 lần để định thời 1 giây.
- Thiết lập giá trị ban đầu cho Timer 1 là 3036
nên Timer 1 đếm 62500 xung thì tràn và báo
ngắt.
- Khi đó, biến đếm ngắt sẽ tăng giá trị lên 1
rồi tiến hành cài lại giá trị cho Timer 1 là
3036.
- Quá trình thực hiện cho đến khi biến đếm
ngắt bằng 10 thì vi điều khiển định thời được
1 giây và trả giá trị biến đếm ngắt về 0.

Hình 4.4. Lưu đồ giải thuật ngắt Timer 1

SVTH: LÊ HOÀNG NGHĨA 52


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.5 Lưu đồ giải thuật chống dội nút nhấn:


Giải thích lưu đồ :
- Đầu tiên, chương trình sẽ kiểm tra phím đã được
nhấn hay chưa. Nút nhấn trong hệ thống được kết
nối mạch nguyên lí tích cực mức thấp. Khi không
nhấn nút thì gửi tín hiệu mức 1 vào vi điều khiển,
khi nhấn nút thì gửi tín hiệu mức 0.
- Vì khi nhấn nút sẽ tạo ra các xung dội gây nhiễu
nên phải chờ 20 ms rồi kiểm tra lại nút nhấn.
- Nếu sau 20 ms vẫn nhận được tín hiệu mức 0 (tức
là nút đã được nhấn) thì thực hiện xử lí chức năng
của phím nhấn đó. Sau đó chờ nhả phím.

Hình 4.5. Lưu đồ giải thuật chống dội nút nhấn

4.6 Lưu đồ giải thuật xử lí chức năng nút nhấn ONOFF:


Giải thích lưu đồ:
- Khi nút nhấn ONOFF được tác động và gửi tín hiệu
đến vi điều khiển thì sẽ tiến hành xử lí chức năng
của nút nhấn này.
- Chương trình sẽ so sánh giá trị MOD với 0. Nếu
bằng nhau thì thực hiện đảo trạng thái của biến giá
trị điều khiển. Nếu bằng 1 thì đảo thành 0 và ngược
lại. Nếu giá trị MOD khác không thì sẽ bỏ qua bước
xử lí rồi kết thúc.
- Khi giá trị điều khiển bằng 1 thì cho phép quạt hoạt
động và không cho phép cài đặt thời gian. Khi bằng
0 thì không cho phép quạt chạy và được phép cài
đặt thời gian.
Hình 4.6. Lưu đồ giải thuật xử lí nút nhấn ONOFF

SVTH: LÊ HOÀNG NGHĨA 53


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.7 Lưu đồ giải thuật xử lí chức năng nút nhấn SET:


Giải thích lưu đồ:
- Khi nút nhấn SET được tác động và gửi tín hiệu
đến vi điều khiển thì sẽ tiến hành xử lí chức năng
của nút nhấn này.
- Chương trình so sánh giá trị điều khiển với 0.
Nếu đúng thì tăng giá trị MOD thêm 1. Nếu sai
thì kết thúc.
- Tiếp đó, chương trình kiểm tra giá trị MOD đã
bằng 4 hay chưa. Vì chương trình chỉ có 3 chế độ
điều chỉnh nên giá trị MOD không thể bằng 4.
Nếu bằng 4 thì cài lại giá trị MOD bằng 0. Nếu
chưa bằng 4 thì kết thúc.

Hình 4.7. Lưu đồ giải thuật xử lí nút nhấn SET


4.8 Lưu đồ giải thuật đọc giá trị nhiệt độ từ cảm biến:
Giải thích lưu đồ:
- Để đọc nhiệt độ môi trường, sinh viện đã
dùng cảm biến nhiệt độ tương tự LM35. Vì
là tín hiệu tương tự nên phải sử dụng khối
ADC của vi điều khiển để đọc.
- Vi điều khiển PIC 16F887 có 14 kênh
ADC. Sinh viên chọn kênh 0 (ứng với chân
A0) để đọc giá trị điện áp từ cảm biến.
- Sau khi chọn kênh phải chờ 2 ms để vi
điều khiển có thời gian thiết lập.
- Cuối cùng là dùng hàm có sẵn đọc về giá
trị cảm biến LM35 rồi chia cho 2.046 để
trả về đúng với giá trị nhiệt độ.
Hình 4.8. Lưu đồ giải thuật đọc nhiệt độ

SVTH: LÊ HOÀNG NGHĨA 54


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.9 Lưu đồ giải thuật xử lí chức năng nút nhấn UP và DW:


a) Nút nhấn UP:

Giải thích lưu đồ:


- Khi nút nhấn UP được tác động và
gửi tín hiệu đến vi điều khiển thì sẽ
tiến hành xử lí chức năng của nút
nhấn này.
- Đầu tiên, chương trình nhận giá trị
MOD rồi kiểm tra.
- Nếu giá trị MOD bằng 1 thì tăng
giá trị của giây thêm 1. Khi giá trị
này tăng đến 59 thì trở về giá trị 0.
- Nếu giá trị MOD bằng 2 thì tăng
giá trị của phút thêm 1. Khi giá trị
này tăng đến 59 thì trở về giá trị 0.
- Nếu giá trị MOD bằng 3 thì tăng
giá trị phút của thời gian đợi thêm
1. Khi giá trị này tăng đến 59 thì trở
về giá trị 0.

Hình 4.9. Lưu đồ giải thuật xử lí chức năng nút nhấn UP

SVTH: LÊ HOÀNG NGHĨA 55


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

b) Nút nhấn DW:

Giải thích lưu đồ:


- Khi nút nhấn DW được tác động và
gửi tín hiệu đến vi điều khiển thì sẽ
tiến hành xử lí chức năng của nút
nhấn này.
- Đầu tiên, chương trình nhận giá trị
MOD rồi kiểm tra.
- Nếu giá trị MOD bằng 1 thì giảm
giá trị của giây đi 1. Khi giá trị này
giảm về 0 thì cài lại giá trị 59.
- Nếu giá trị MOD bằng 2 thì giảm
giá trị của phút đi 1. Khi giá trị này
giảm về 0 thì cài lại giá trị 59.
- Nếu giá trị MOD bằng 3 thì giảm
giá trị phút của thời gian đợi đi 1.
Khi giá trị này giảm về 0 thì cài lại
giá trị 59.

Hình 4.10. Lưu đồ giải thuật xử lí chức năng nút nhấn DW

SVTH: LÊ HOÀNG NGHĨA 56


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.10 Lưu đồ giải thuật xử lí thời gian hoạt động:


Giải thích lưu đồ:
- Đầu tiên, chương trình kiểm tra giá trị
điều khiển hoạt động bằng 1 và giá trị
nghỉ bằng 0. Nếu đúng thì giảm giá trị
của giây đi 1. Nếu sai thì bỏ qua chương
trình xử lí.
- Khi giá trị của giây bằng 0 thì thực hiện
giảm giá trị của phút đi 1. Nếu khác
không thì bỏ qua bước xử lí giá trị của
phút.
- Tiếp theo, chương trình sẽ kiểm tra lần
cuối giá trị của giây và phút. Nếu cả hai
giá trị này đều bằng 0 thì chuyển sang
chế độ nghỉ.

Hình 4.11. Lưu đồ giải thuật xử lí thời gian hoạt động

SVTH: LÊ HOÀNG NGHĨA 57


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

4.11 Lưu đồ giải thuật xử lí thời gian nghỉ:


Giải thích lưu đồ:
- Đầu tiên, chương trình kiểm tra giá trị
điều khiển hoạt động bằng 1 và giá trị
nghỉ bằng 1. Nếu đúng thì giảm giá trị
giây của thời gian nghỉ đi 1. Nếu sai thì
bỏ qua chương trình xử lí.
- Khi giá trị giây của thời gian nghỉ bằng
0 thì thực hiện giảm giá trị phút của
thời giản nghỉ đi 1. Nếu khác không thì
bỏ qua bước xử lí này.
- Tiếp theo, chương trình sẽ kiểm tra lần
cuối giá trị giây và phút của thời gian
nghỉ. Nếu cả hai giá trị này đều bằng 0
thì chuyển sang chế hoạt động.

Hình 4.12. Lưu đồ giải thuật xử lí thời gian nghỉ

SVTH: LÊ HOÀNG NGHĨA 58


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CHƯƠNG 5: KẾT QUẢ THI CÔNG VÀ THỰC NGHIỆM


CỦA HỆ THỐNG
5.1 Kết quả:
Quá trình thực hiện đề tài sinh viên đã hoàn thành thành công được các khối
trong hệ thống như:
 Khối nguồn.
 Khối cảm biến.
 Khối điều khiển.
 Khối hiển thị LCD.
 Khối quạt.
 Khối xử lí trung tâm.
Trong khâu thiết kế, sinh viên đã sử dụng khối nguồn là một module nguồn
ổn áp và các khối còn lại được kết hợp với nhau tạo thành module điều khiển.
Về khối nguồn:
- Sinh viên đã thi công và thiết kế thành công khối nguồn ổn áp với
điện áp đầu ra là 5V và 12V.
- Mạch in khối nguồn:

Hình 5.1. Sơ đồ mạch in khối nguồn


- Mạch nguồn thi công:

Hình 5.2. Mạch nguồn thi công thực tế

SVTH: LÊ HOÀNG NGHĨA 59


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

Về module điều khiển:


- Sinh viên đã thi công thành công mạch điều khiển “Hệ thống điều
khiển quạt tự động”.
- Module trên đã kết hợp các khối cảm biến, khối điều khiển, khối
hiển thị LCD, khối xử lí trung tâm, khối quạt lại với nhau.
- Mạch in module điều khiển :

Hình 5.3. Mạch in module điều khiển


- Module điều khiển được thi công :

Hình 5.4. Mạch module điều khiển thi công thực tế

SVTH: LÊ HOÀNG NGHĨA 60


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

5.2 Kết nối các module :


Các module được kết nối như sau :
- Đầu tiên là biến áp giảm điện áp xoay chiều 220V xuống còn 12V
để cung cấp cho bộ nguồn.
- Bộ nguồn ổn áp cung cấp hai mức điện áp một chiều cho hệ thống
là 5V và 12V.
- Điện áp ngõ ra từ khối nguồn sẽ được đưa vào module điều khiển.

Hình 5.5. Kết nối thực tế

Hình 5.6. Kết nối hệ thống với khối quạt

SVTH: LÊ HOÀNG NGHĨA 61


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

5.3 Thực nghiệm (Kiểm tra, vận hành hệ thống)


Hệ thống được kiểm tra và vận hành theo các trình tự sau đây:
 Khi vừa được cấp nguồn, hệ thống sẽ tiến hành đo nhiệt độ môi trường từ
cảm biến LM35 và hiển thị lên màn hình LCD chỉ số nhiệt độ, trạng thái
nhiệt độ, trạng thái hoạt động của quạt và thời gian cho phép quạt hoạt động.

Hình 5.7. Hệ thống khi vừa cấp nguồn

Hình
Hình 5.8.
5.8. HệCài đặt khi
thống thông
vừasốcấp
thờinguồn
gian
 Các nút nhấn có chức năng cài đặt thời gian cho hệ thống. Trước khi cho
phép quạt hoạt động phải cài đặt các thông số thời gian cho quạt.

Hình 5.8. Cài đặt thông số thời gian

SVTH: LÊ HOÀNG NGHĨA 62


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

 Sau khi kiểm tra và thiết lập hệ thống thì có thể cho phép quạt chạy bằng nút
nhấn ONOFF. Hệ thống sẽ hoạt động liên tục cho đến khi được tắt.

Hình 5.9. Giao diện hệ thống khi quạt hoạt động

Hình 5.10. Hình ảnh hệ thống hoạt động

SVTH: LÊ HOÀNG NGHĨA 63


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

6.1 Kết luận:


 Về ưu điểm:
- Mạch đã vận hành thành công, đáp ứng được yêu cầu đề ra.
- Sử dụng ít linh kiện, các linh kiện có giá thành tương đối thấp.
- Mạch đơn giản, dễ vận hành và sử dụng.
- Phù hợp cho những nơi có nhiệt độ nóng ẩm cao.
- Có thể điều chỉnh thời gian hoạt động.
- Tiết kiệm điện năng khi sử dụng lâu dài, hỗ trợ điều chỉnh thời
gian nghỉ của quạt.

 Về khuyết điểm:
- Về khả năng định thời của PIC16F887 còn một số hạn chế nên dẫn
đến sai lệch so với thời gian thực.
- Tốc độ đáp ứng khá chậm vì chương trình sử dụng nhiều tài
nguyên của vi điều khiển.
- Diện tích bảng mạch còn khá lớn do sinh viên chưa có nhiều kinh
nghiệm trong thiết kế.
- Một số chân của vi xử lí còn bỏ trống, chưa tận dụng khai thác
được hết khả năng của vi điều khiển.

6.2 Hướng phát triển:


Đề tài “Hệ thống điều khiển quạt tự động” có thể được mở rộng theo nhiều
hướng khác nhau tuỳ theo yêu cầu người dùng:
 Phát triển theo hướng IoT (Internet of Things): Sinh viên có thể thêm vào
một số chức năng giao tiếp hệ thống với các websever, thực hiện điều khiển
và giám sát hệ thống qua mạng.
 Phát triển theo hướng Smart Home (Nhà thông minh): Dựa vào hệ thống đã
có sẵn kết hợp điều khiển các module khác như bóng đèn, module động cơ
đóng mở cửa,… tạo ra một hệ thống thông minh sử dụng cho các ngôi nhà.
Ngoài ra, có thể cải thiện hệ thống tốt hơn bằng cách dùng thời gian thực để điều
khiển làm cho thời gian được định thời chính xác hơn, đồng thời cũng giảm bớt
công việc xử lí cho vi điều khiển. Hoặc để cải thiện tốc độ xử lí của hệ thống theo
chuẩn công nghiệp, có thể lựa chọn các dòng vi điều khiển mạnh hơn, kiến trúc hiện
đại hơn như ARM thay vì dùng các chip PIC đã lỗi thời.

SVTH: LÊ HOÀNG NGHĨA 64


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

TÀI LIỆU THAM KHẢO

[1] Nguyễn Đình Phú(2014), “Giáo trình vi xử lý Vi Điều Khiển PIC”, Nhà
xuất bản Trường Đại Học Sư Phạm Kỹ Thuật Tp.HCM.
[2] Nguyễn Đình Phú(2/2014), “Giáo trình thực hành Vi Điều Khiển PIC”,
Nhà xuất bản Trường Đại Học Sư Phạm Kỹ Thuật Tp.HCM.
[3] Trương Thị Bích Ngà(9/2012), “tài liệu thực hành Điện tử cơ bản”, Nhà
xuất bản Trường Đại Học Sư Phạm Kỹ Thuật Tp.HCM.

SVTH: LÊ HOÀNG NGHĨA 65


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

PHỤ LỤC
Code chương trình viết bằng CCS:

#INCLUDE <TV_16F887.C>
#INCLUDE <TV_LCD.C>

//DINH NGHIA CAC NUT NHAN


#DEFINE UP PIN_C7
#DEFINE DW PIN_C6
#DEFINE MOD PIN_C5
#DEFINE SS PIN_C4

//KHAI BAO BIEN


UNSIGNED INT16 KQ_ADC0;
UNSIGNED INT8 CHUC,DONVI,BDN=0,GT_MOD=0;
INT1 TT_SS=0,TT_WAIT=0;
SIGNED INT8
PHUT=0,GIAY=0,PHUT_DONVI,GIAY_DONVI,PHUT_CHUC,GIAY_CHUC;
SIGNED INT8
GIAY_WAIT=10,PHUT_WAIT=0,PHUT_WAIT_SET=0,PHUT_SET=0,GIAY_S
ET=0;

#INT_TIMER1
VOID INTERRUPT_TIMER1()
{
BDN++;
SET_TIMER1(3036);
}

SVTH: LÊ HOÀNG NGHĨA 66


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

//CHONG DOI NUT NHAN UP


VOID CD_UP()
{
IF (!INPUT(UP))
{
DELAY_MS(10);
IF (!INPUT(UP))
{
SWITCH(GT_MOD)
{
CASE 1: IF (GIAY==59) GIAY=0;
ELSE
{
GIAY++;
GIAY_SET = GIAY;
}
BREAK;
CASE 2: IF (PHUT==60) PHUT=0;
ELSE
{
PHUT++;
PHUT_SET = PHUT;
}
BREAK;
CASE 3: IF (PHUT_WAIT==10) PHUT_WAIT=0;

SVTH: LÊ HOÀNG NGHĨA 67


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

ELSE
{
PHUT_WAIT++;
PHUT_WAIT_SET = PHUT_WAIT;
}
BREAK;
}
WHILE (!INPUT(UP));
}
}
}

//CHONG DOI NUT NHAN DW


VOID CD_DW()
{
IF (!INPUT(DW))
{
DELAY_MS(10);
IF (!INPUT(DW))
{
SWITCH(GT_MOD)
{
CASE 1: IF (GIAY==0) GIAY=59;
ELSE
{
GIAY--;

SVTH: LÊ HOÀNG NGHĨA 68


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

GIAY_SET = GIAY;
}
BREAK;
CASE 2: IF (PHUT==0) PHUT=60;
ELSE
{
PHUT--;
PHUT_SET = PHUT;
}
BREAK;
CASE 3: IF (PHUT_WAIT==0) PHUT_WAIT=10;
ELSE
{
PHUT_WAIT--;
PHUT_WAIT_SET = PHUT_WAIT;
}
BREAK;
}
WHILE (!INPUT(DW));
}
}
}

//CHONG DOI NUT NHAN MOD


VOID CD_MOD()
{

SVTH: LÊ HOÀNG NGHĨA 69


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

IF (!INPUT(MOD))
{
DELAY_MS(10);
IF (!INPUT(MOD))
{
IF (TT_SS==0)
{
GT_MOD++;
IF (GT_MOD == 4) GT_MOD=0;
}
WHILE (!INPUT(MOD));
}
}
}

//CHONG DOI NUT NHAN SS


VOID CD_SS()
{
IF (!INPUT(SS))
{
DELAY_MS(10);
IF (!INPUT(SS))
{
IF (GT_MOD==0)
TT_SS = ~TT_SS;
WHILE (!INPUT(SS));

SVTH: LÊ HOÀNG NGHĨA 70


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

}
}
}

//HAM GIAI MA LCD


VOID GIAI_MA_LCD()
{
CHUC = KQ_ADC0 / 10 % 10 + 0X30;
DONVI= KQ_ADC0 % 10 + 0X30;
PHUT_DONVI = PHUT % 10 + 0X30;
PHUT_CHUC = PHUT /10 %10 + 0X30;
GIAY_DONVI = GIAY % 10 + 0X30;
GIAY_CHUC = GIAY /10 %10 + 0X30;
}

//HAM HIEN THI LCD


VOID HIEN_THI_LCD()
{
//HANG 1 HIEN THI
LCD_COMMAND(0X80);
LCD_DATA("NDO");
LCD_DATA(":");
LCD_COMMAND(0X80 + 4);
LCD_DATA(CHUC);
LCD_DATA(DONVI);
LCD_DATA(0XDF);

SVTH: LÊ HOÀNG NGHĨA 71


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

LCD_DATA("C");
LCD_DATA("-->");
LCD_COMMAND(0X80 + 12);
IF (KQ_ADC0 > 32)
LCD_DATA("HOT ");
ELSE IF ((KQ_ADC0 <= 32) & (KQ_ADC0 > 28))
LCD_DATA("WARM");
ELSE IF ((KQ_ADC0 <= 28) & (KQ_ADC0 > 25))
LCD_DATA("COOL");
ELSE IF (KQ_ADC0 <= 25)
LCD_DATA("COLD");

//HANG 2 HIEN THI


IF (TT_SS == 0)
{
IF (GT_MOD == 0)
{
LCD_COMMAND(0XC0);
LCD_DATA(" FAN OFF:");
LCD_COMMAND(0XC0 + 10);
LCD_DATA(PHUT_CHUC);
LCD_DATA(PHUT_DONVI);
LCD_COMMAND(0XC0 + 12);
LCD_DATA(":");
LCD_DATA(GIAY_CHUC);
LCD_DATA(GIAY_DONVI);

SVTH: LÊ HOÀNG NGHĨA 72


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

LCD_COMMAND (0XC0 + 15);


LCD_DATA(" ");
}
IF (GT_MOD == 1)
{
LCD_COMMAND(0XC0);
LCD_DATA(" FAN OFF:");
LCD_COMMAND(0XC0 + 10);
LCD_DATA(PHUT_CHUC);
LCD_DATA(PHUT_DONVI);
LCD_COMMAND(0XC0 + 12);
LCD_DATA(":");
LCD_DATA(GIAY_CHUC);
LCD_DATA(GIAY_DONVI);
LCD_COMMAND (0XC0 + 15);
LCD_DATA("<");
}

IF (GT_MOD == 2)
{
LCD_COMMAND(0XC0);
LCD_DATA(" FAN OFF:");
LCD_COMMAND(0XC0 + 10);
LCD_DATA(PHUT_CHUC);
LCD_DATA(PHUT_DONVI);
LCD_COMMAND(0XC0 + 12);

SVTH: LÊ HOÀNG NGHĨA 73


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

LCD_DATA("<");
LCD_DATA(GIAY_CHUC);
LCD_DATA(GIAY_DONVI);
LCD_COMMAND (0XC0 + 15);
LCD_DATA(" ");
}

IF (GT_MOD == 3)
{
LCD_COMMAND(0XC0);
LCD_DATA(" WAIT : ");
LCD_COMMAND(0XC0 + 10);
LCD_DATA(PHUT_WAIT/10 + 0X30);
LCD_DATA(PHUT_WAIT%10 + 0X30);
LCD_DATA("<");
LCD_DATA(GIAY_WAIT/10 + 0X30);
LCD_DATA(GIAY_WAIT%10 + 0X30);
LCD_COMMAND (0XC0 + 15);
LCD_DATA(" ");
}
}
ELSE
{
IF (TT_WAIT == 0)
{
LCD_COMMAND(0XC0);

SVTH: LÊ HOÀNG NGHĨA 74


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

LCD_DATA(" FAN ON :");


LCD_COMMAND(0XC0 + 10);
LCD_DATA(PHUT_CHUC);
LCD_DATA(PHUT_DONVI);
LCD_COMMAND(0XC0 + 12);
LCD_DATA(":");
LCD_DATA(GIAY_CHUC);
LCD_DATA(GIAY_DONVI);
LCD_COMMAND (0XC0 + 15);
LCD_DATA(" ");
}
ELSE
{
LCD_COMMAND(0XC0);
LCD_DATA(" WAIT : ");
LCD_COMMAND(0XC0 + 10);
LCD_DATA(PHUT_WAIT/10 + 0X30);
LCD_DATA(PHUT_WAIT%10 + 0X30);;
LCD_DATA(":");
LCD_DATA(GIAY_WAIT/10 + 0X30);
LCD_DATA(GIAY_WAIT%10 + 0X30);
}
}
}

//HAM DOC ADC

SVTH: LÊ HOÀNG NGHĨA 75


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

VOID DOC_ADC()
{
SET_ADC_CHANNEL(0);
DELAY_MS(2);
KQ_ADC0 = READ_ADC() / 2.046;
}

//DIEU KHIEN PWM


VOID FAN()
{
SETUP_CCP1(CCP_PWM);
IF (KQ_ADC0 > 32)
SET_PWM1_DUTY(1000);
ELSE IF ((KQ_ADC0 <= 32) & (KQ_ADC0 > 28))
SET_PWM1_DUTY(850);
ELSE IF ((KQ_ADC0 <= 28) & (KQ_ADC0 > 25))
SET_PWM1_DUTY(700);
ELSE IF ((KQ_ADC0 <= 25) & (KQ_ADC0 > 20))
SET_PWM1_DUTY(500);
ELSE
SET_PWM1_DUTY(0);
}

VOID TIMEON()
{
IF ((TT_SS == 1)&&(TT_WAIT==0))

SVTH: LÊ HOÀNG NGHĨA 76


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

{
GIAY--;
IF (GIAY==-1)
{
GIAY=59;
PHUT--;
}
IF ((PHUT == 0)&&(GIAY==0))
{
TT_WAIT = ~TT_WAIT;
PHUT_WAIT = PHUT_WAIT_SET;
GIAY_WAIT = 0;
}
}
}

VOID TIMEWAIT()
{
IF ((TT_SS == 1)&&(TT_WAIT==1))
{
GIAY_WAIT--;
IF (GIAY_WAIT==-1)
{
GIAY_WAIT=59;
PHUT_WAIT--;
}

SVTH: LÊ HOÀNG NGHĨA 77


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

IF ((PHUT_WAIT == 0)&&(GIAY_WAIT==0))
{
TT_WAIT = ~TT_WAIT;
GIAY = GIAY_SET;
PHUT = PHUT_SET;
}
}
}

//HAM CHINH
VOID MAIN()
{
//KHOI TAO BAN DAU
SET_TRIS_A(0XFF); // 1: INPUT | 0: OUTPUT
SET_TRIS_B(0X00);
SET_TRIS_D(0X00);
SET_TRIS_C(0X0F);

//CAI DAT TIMER

SETUP_TIMER_1(T1_INTERNAL|T1_DIV_BY_8);
SET_TIMER1(3036);
ENABLE_INTERRUPTS(GLOBAL);
ENABLE_INTERRUPTS(INT_TIMER1);

//CAI DAT LCD

SVTH: LÊ HOÀNG NGHĨA 78


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

LCD_SETUP();

//KHOI TAO PWM


SETUP_CCP1(CCP_PWM);
SETUP_TIMER_2(T2_DIV_BY_16,249,1);
SET_PWM1_DUTY(0);

//CAI DAT ADC


SETUP_ADC(ADC_CLOCK_DIV_32);
SETUP_ADC_PORTS(sAN0|VSS_VDD);

HIEN_THI_LCD();

//VONG LAP WHILE TRUE


WHILE(TRUE)
{

IF (BDN < 10)


{
DOC_ADC();
GIAI_MA_LCD();
HIEN_THI_LCD();
CD_MOD();
CD_UP();
CD_DW();
CD_SS();

SVTH: LÊ HOÀNG NGHĨA 79


ĐỒ ÁN MÔN HỌC 1 GVHD: NGUYỄN NGÔ LÂM

IF ((TT_SS == 1) && (TT_WAIT==0))


FAN();
ELSE SETUP_CCP1(CCP_OFF);
}
ELSE
{
BDN = BDN-10;
TIMEON();
TIMEWAIT();
}
}
}

SVTH: LÊ HOÀNG NGHĨA 80

You might also like