do an thiet ke he thong giam sat moi truong 23937
TRANSCRIPT
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
KHOA ĐIỆN TỬ
BỘ MÔN : KỸ THUẬT MÁY TÍNH
ĐỒ ÁN MỘN HỌC
MÔN HỌC
HỆ THỐNG NHÚNG
Đề tài : Thiết kế hệ thống giám sát môi trường nhà
vườn, ứng dụng cho vườn hoa lan
NHÓM SINH VIÊN : NGUYỄN HỮU TÌNH
DƯƠNG VĂN TÚ
LỚP : 44S
GIÁO VIÊN HƯỚNG DẪN : NGUYỄN TIẾN DUY
THÁI NGUYÊN 2012
BỘ MÔN KỸ THUẬT MÁY TÍNH - 1 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Nhận xét của giáo viên hướng dẫn
................................................................................................................................
................................................................................................................................
................................................................................................................................
................................................................................................................................
Thái Nguyên, Ngày Tháng Năm 2012
Giáo Viên hướng dẫn
(Ký ghi rõ họ tên)
Nhận xét của giáo viên chấm
................................................................................................................................
................................................................................................................................
................................................................................................................................
................................................................................................................................
................................................................................................................................
Thái Nguyên, Ngày Tháng Năm 2012
Giáo Viên hướng dẫn
(Ký ghi rõ họ tên)
Mục lục
Chương 1 Phân tích bài toán.....................................................................................................6
BỘ MÔN KỸ THUẬT MÁY TÍNH - 2 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
1.1 Khảo sát và phân tích bài toán........................................................................................61.2 các yêu cầu.........................................................................................................................71.3 Giới hạn hạn định.............................................................................................................71.4 Giải pháp công nghệ.........................................................................................................71.5 Giải pháp thiết kế.............................................................................................................8
Chương 2 : Hệ thống giám sát môi trường nhà vườn ứng dụng cho vườn hoa lan..............92.1 Sơ đồ tổng quát.................................................................................................................92.2 Sơ đồ callgraph...............................................................................................................102.3 Sơ đồ đặc tả.....................................................................................................................102.4 Các module của hệ thống...............................................................................................11
2.4.1 Module khối nguồn:.................................................................................................112.4.2 Module sử lý trung tâm...........................................................................................122.4.3 Module cảm biến......................................................................................................132.5.1 Vi điều khiển PIC16F877A.....................................................................................152.5.2 Cảm biến ẩm độ và nhiệt độ SHT71......................................................................222.5.3 Cảm biến quang (LDR)...........................................................................................282.5.4 LCD 16x2 màn hình tinh thể lỏng.........................................................................292.5.4 Trasitor.....................................................................................................................512.5.5 Tụ điện......................................................................................................................522.5.6 IC ổn áp LM7805.....................................................................................................52
2.6 Sơ đồ nguyên lý tổng thể................................................................................................532.7 Thuật toán điều khiển.....................................................................................................54
Chương 3: xây dựng hệ thống.................................................................................................573.1 Thiết kế phần cứng.........................................................................................................573.2 Thiết kế phần mềm.........................................................................................................573.3 kết quả mô phỏng...........................................................................................................723.4 Đánh giá và kết luân.......................................................................................................74
3.4.1 Đánh giá....................................................................................................................743.4.2 Kết luận....................................................................................................................76
Tài liệu tham khảo......................................................................................................................77
Danh sách các hình ảnh
Hình 2.1 sơ đồ tổng quát..............................................................................................................9Hình 2.2 sơ đồ callgraph.............................................................................................................10Hình 2.3 sơ đồ đặc tả..................................................................................................................11Hình 2.4 sơ đồ khối nguồn.........................................................................................................12Hình 2.5 sơ đồ khối điều khiển trung tâm..................................................................................13Hình 2.6 sơ đồ khối cảm biến ánh sáng......................................................................................13Hình 2.7 sơ đồ khối cảm biến sht71...........................................................................................14Hình 2.8 module hiển thị LCD...................................................................................................142.5 Lựa chọn linh kiện................................................................................................................15
BỘ MÔN KỸ THUẬT MÁY TÍNH - 3 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.9: Sơ đồ chân PIC 16F877A...........................................................................................15Hình 2.10 : Sơ đồ khối vi điều khiển PIC16F877A...................................................................17Hình 2.11 cảm biến nhiệt độ độ ẩm SHT71...............................................................................23Hình 2.12 hình ảnh và sơ đồ chân cảm biến SHT71.....................................................................26Hình 2.13 sơ đồ kết nối của SHT71..........................................................................................27Hình 2.14 cảm biến quang ( quang trở ).....................................................................................28Hình 2.15 : Hình dáng của loại LCD thông dụng.......................................................................30Hình 2.16 : Sơ đồ chân của LCD................................................................................................30Hình 2.17 : Sơ đồ khối của HD44780........................................................................................33Hình 2.18 : Giản đồ xung cập nhật AC......................................................................................36Hình 2.19 : Mối liên hệ giữa địa chỉ của DDRAM và vị trí hiển thị của LCD..........................37Hình 2.20 : Mối liên hệ giữa địa chỉ của ROM và dữ liệu tạo mẫu kí tự...................................38Hình 2.21 : Mối liên hệ giữa địa chỉ của CGRAM, dữ liệu của CGRAM, và mã kí tự.............41Hình 2.22 lệnh khởi tạo LCD.....................................................................................................50Hình 2.23 Hình ảnh transistor.....................................................................................................51Hình 2.24 Một số loại tụ điện.....................................................................................................52Hình 2.25 IC ổn áp 7805............................................................................................................53Hình 2.26 sơ đồ nguyên lý tổng thể............................................................................................54Hình 2.27 sơ đồ giải thuật...........................................................................................................56Hình 3.1 bắt đầu chương trình....................................................................................................72Hình 3.2 in lên màn hình giá trị, nhiệt độ, độ ẩm, và cường độ ánh sáng..................................73Hình 3.3 in lên màn hình giá trị, nhiệt độ, độ ẩm, và cường độ ánh sáng..................................74
BỘ MÔN KỸ THUẬT MÁY TÍNH - 4 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Giới thiệu:
Điều kiện môi trường thích hợp là sự cần thiết cho sự tăng trưởng thực vật
tối ưu, cải thiện năng suất cây trồng, và sử dụng hiệu quả nước và các nguồn
khác. Tự động hoá việc thu thập dữ liệu quá trình điều kiện đất và các thông số
khí hậu khác nhau chi phối sự phát triển của thực vật cho phép thông tin được thu
thập ở tần suất cao với yêu cầu lao động ít hơn. Hiện có hệ thống sử dụng hệ
thống máy tính hoặc dựa trên tin nhắn cho người sử dụng liên tục thông báo các
điều kiện bên trong nhà kính, nhưng khả năng chi trả, cồng kềnh, khó khăn để
duy trì và ít được chấp nhận bởi các công nhân không có kỹ năng công nghệ.
Mục tiêu của dự án này là thiết kế, dễ cài đặt, đơn giản dựa trên vi điều khiển
để theo dõi và ghi lại các giá trị của nhiệt độ, độ ẩm, và ánh sáng mặt trời môi
trường tự nhiên đang tiếp tục sửa đổi và kiểm soát để tối ưu hóa chúng đạt được
tăng trưởng thực vật và năng suất tối đa. Bộ điều khiển sử dụng điện năng thấp,
chi phí con chip hiệu quả
Chíp 16F877có thể giao tiếp với mô-đun cảm biến khác nhau trong thời gian
thực để kiểm soát quá trình ánh sáng, thông khí và độ ẩm hiệu quả bên trong một
nhà kính. Một tích hợp màn hình hiển thị tinh thể lỏng (LCD) cũng được sử dụng
để hiển thị thời gian thực của dữ liệu có được từ các cảm biến khác nhau sử dụng
BỘ MÔN KỸ THUẬT MÁY TÍNH - 5 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
của các thành phần dễ dàng có sẵn làm giảm sản xuất và chi phí bảo trì. Thiết kế
này là khá linh hoạt khi các phần mềm có thể được thay đổi bất cứ lúc nào. Nó có
thể do đó được thiết kế riêng thực hiện các yêu cầu cụ thể của người sử dụng.
Điều này làm cho hệ thống được đề xuất là kinh tế, di động và bảo trì thấp
giải pháp cho các nhà vườn, vườn lan.
Chương 1 Phân tích bài toán
1.1 Khảo sát và phân tích bài toán
Chúng ta sống trong một thế giới nơi mà tất cả mọi thứ có thể được kiểm soát
và vận hành tự động, nhưng vẫn còn một số lĩnh vực quan trọng ở nước ta mà tự
động hóa đã không được thông qua hoặc không được đưa vào sử dụng chính
thức, có lẽ vì một số lý do như là chi phí và kỹ thuật. Một trong những lĩnh vực
đó là nông nghiệp. Nhà vườn tạo thành một phần quan trọng của ngành nông
nghiệp và làm vườn ở nước ta vì chúng có thể được sử dụng để phát triển các nhà
máy trong điều kiện kiểm soát khí hậu cho các sản phẩm tối ưu, các nông sản có
độ đảm bảo an toàn thực phẩm cao . Tự động hoá dự kiến gây hiệu ứng nhà kính
theo dõi và kiểm soát các thông số khí hậu trực tiếp hoặc gián tiếp chi phối sự
tăng trưởng cây trồng.Tự động hóa là quá trình điều khiển máy móc công nghiệp
và các quá trình. Do đó có thể thay thế các công việc của con người.
Các yếu tố khí hậu tác động một cách tổng hợp lên lên cây trồng. Khi khí
hậu nóng lên, các yếu tố như sự biến động nhiệt độ, lượng mưa, cường độ chiếu
sáng sẽ là yếu những yếu tố tác động mạnh nhất lên cấy trồng.
Một hệ thống giám sát và điều khiển các thiết bị máy nông nghiệp tạo điều
kiện thuận lợi nhất cho cây trồng sẽ giúp tăng trưởng phát triển của cây trông và
giảm số lượng lao động trong nhà vườn,
BỘ MÔN KỸ THUẬT MÁY TÍNH - 6 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
1.2 các yêu cầu
Đây là một thiết lập phức tạp được trang bị tốt để phản ứng với hầu hết
những thay đổi khí hậu xảy ra bên trong nhà vườn. Nó hoạt động trên một hệ
thống thông tin phản hồi giúp nó để đáp ứng với các kích thích bên ngoài một
cách hiệu quả. Mặc dù thiết lập này lên vượt qua những vấn đề gây ra do lỗi của
con người nó không phải là hoàn toàn tự động và tốn kém.
1.3 Giới hạn hạn định
- Làm việc cả ngày lẫn đêm
- Thu nhận tín hiệu liên tục khi có sự thay đổi các yêu tố thời tiết.
-Nhiệt độ môi trường từ
-Độ ẩm môi trường
-Cường độ ánh sáng
-Hệ thống cấp điện mới từ đầu
1.4 Giải pháp công nghệ
Các hệ thống được đề xuất là một hệ thống nhúng sẽ giám sát chặt chẽ và
kiểm soát các thông số khí hậu nhà vườn trên cơ sở thường xuyên cho việc
trồng các loại cây trồng hoặc các loài thực vật cụ thể có thể tối đa hóa sản
xuất của họ trong mùa tăng trưởng toàn bộ cây trồng và loại bỏ những khó
khăn tham gia vào hệ thống bằng cách giảm sự can thiệp của con người đến
mức thấp nhất có thể. Hệ thống này bao gồm cảm biến, vi điều khiển pic,
chuyển đổi và thiết bị truyền động.
Khi đề cập ở trên các thông số khí hậu qua một ngưỡng an toàn được duy trì
để bảo vệ cây trồng, các cảm biến cảm nhận sự thay đổi và vi điều khiển pic
đọc từ các dữ liệu tại các chân đầu vào của cảm biến. Vi điều khiển Pic thực
BỘ MÔN KỸ THUẬT MÁY TÍNH - 7 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
hiện các hành động cần thiết bằng cách sử dụng các chuyển tiếp cho đến khi
các tham số khí hậu đã được đưa trở lại cấp độ tối ưu của nó. Kể từ khi một vi
điều khiển được sử dụng, nó làm cho các thiết lập chi phí thấp và hiệu quả,
tuy nhiên. Khi hệ thống cũng sử dụng một màn hình LCD liên tục cảnh báo
người dùng về tình trạng bên trong nhà kính, toàn bộ thiết lập trở nên thân
thiện với người dùng.
Như vậy, hệ thống này giúp loại bỏ những hạn chế hiện có set-up được đề cập
trong phần trước và được thiết kế như một cách dễ dàng để duy trì, linh hoạt
và giải pháp chi phí thấp.
Qua những phân tích ở trên em đưa ra phương pháp xây dựng hệ thống
giám sát môi trường nhà vườn, (từ đó có thể thiết lập thêm phần điều khiển
bật tắt các thiệt bị trong điều khiển các yếu tố khí hậu, như tưới nước nhỏ giọt,
phun sương mù, bật tắt đèn chiếu sáng, hệ thống quạt thoáng gió).
1.5 Giải pháp thiết kế
- Để thu nhận các yếu tố khí hậu của môi trường ta dùng các cảm biến ánh
sáng, độ ẩm và nhiệt độ.
- Xử lý, khối điều khiển dùng vi điều khiển pic: lập trình để pic nhận tín hiệu
từ cảm biến và tính toán sử lý để đưa ra lệnh tắt mở các thiết bị kiểm soát các yếu
tố khí hậu.
- Để hiện thị ta dùng màn hình tinh thể lỏng LCD để thông báo thông số khí
hậu.
( Điều khiển tắt mở thiết bị truyền động dùng các transistor cấp dòng cho
relays.)
BỘ MÔN KỸ THUẬT MÁY TÍNH - 8 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Chương 2 : Hệ thống giám sát môi trường nhà vườn ứng dụng
cho vườn hoa lan
2.1 Sơ đồ tổng quát
Hệ thống giám sát môi trường nhà kính gồm có 5 phần chính.
Hình 2.1 sơ đồ tổng quát
- khối nguồn : lấy AC hoặc DC đầu vào từ 5- 15V biến đổi thành nguồn DC
5V cấp cho khối điều khiển trung tâm, khối hiển thị khối cảm biến và khối chấp
hành.
- Khối điều khiển trung tâm : tiếp nhận tín hiệu từ khối cảm biến sau đó sử
lý và suất tín hiệu tới khối hiển thị.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 9 -
Khối xử lý
Khối hiểnthị
Khốicảm biến
Khối nguồn
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
- Khối hiển thị : nhận tín hiệu từ khối sử lý, hiển thị giá trị nhiệt độ, độ ẩm
và cường độ chiếu sáng.
- Khối cảm biến :Đo giá trị độ chiếu sáng, độ ẩm và nhiệt độ dùng cảm biến
quang và cảm biến nhiệt độ, độ ẩm SHT71
2.2 Sơ đồ callgraph
Hình 2.2 sơ đồ callgraph
2.3 Sơ đồ đặc tả
BỘ MÔN KỸ THUẬT MÁY TÍNH - 10 -
Chương trìnhđiều khiển chính
ModuleXử lý
Cảm biến
ModuleXử lý
Chương trình
Cảm biến
Hiển thị
Gửi lệnh thiết lập cảm biến
Nhận tín hiệu từ cảm biến
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.3 sơ đồ đặc tả
- Khối nhiệt độ, độ ẩm, cường độ ánh sáng trong nhà vườn được xác định
thông qua các cảm biến.
-khối nhà vườn. xác định nhiệt độ từ sensor và hiển thị lên màn hình
- khối hiển thị, hiển thị các thông số được xác định từ nhà vườn
2.4 Các module của hệ thống
2.4.1 Module khối nguồn:
Module này tạo ra điện áp 1 chiều 5V từ nguồn xoay chiều để cung cấp cho
các liên kiện trong hệ thống. sử sụng chỉnh lưu cầu, và IC ổn áp LM7805 để lấy
điện áp 5V ở ngõ ra.
G N D
- +
D 3
D B 1 0 5
1
2
3
4
U 1 5L M 7 8 0 5
1
2
3V I
GN
D
V O
T1
2 2 0 V A C 5 0 H z in p u t
1 3
2 5 + C 32 2 0 u F
+5 V
C 41 0 0 n F
BỘ MÔN KỸ THUẬT MÁY TÍNH - 11 -
Nhiệt độ, ánh sáng , độ ẩm
Nhà vườn Hiển thị
Xác định giá trị nhiệt độ, độ ẩm, cường độánh sáng
Hiển thị độ ẩm, nhiệt độ, cường độ ánh sáng
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.4 sơ đồ khối nguồn
2.4.2 Module sử lý trung tâm
khối điều khiển trung tâm sử dụng vi điều khiển pic 16F877
Bộ tạo dao động dùng thạch anh 4M cung cấp nguồn dao động cho Pic.
Bộ reset cấp nguồn 5V và xác lập trạng thái ban đầu cho pic.
D 4
+5 V
C K 1
D 6R S T
G N D
A D C
D 5
E
S C K
R S
D 7
P V N 2
P I C 1 6 F 8 7 7 A
234567
3 33 43 53 63 73 83 94 0
1 51 61 71 82 32 42 52 6
1 92 02 12 22 72 82 93 0
1 3
1 4
3 21 1
3 11 2
1
891 0
R A 0 / A N 0R A 1 / A N 1R A 2 / A N 2 / V R E F -/ C V R E FR A 3 / A N 3 / V R E F +R A 4 / T0 C K I / C 1 O U TR A 5 / A N 4 / S S * / C 2 O U T
R B 0 / I N TR B 1R B 2
R B 3 / P G MR B 4R B 5
R B 6 / P G CR B 7 / P G D
R C 0 / T1 O S O / T1 C K IR C 1 / T1 O S I / C C P 2R C 2 / C C P 1R C 3 / S C K / S C LR C 4 / S D I / S D AR C 5 / S D OR C 6 / TX/ C KR C 7 / R X/ D T
R D 0 / P S P 0R D 1 / P S P 1R D 2 / P S P 2R D 3 / P S P 3R D 4 / P S P 4R D 5 / P S P 5R D 6 / P S P 6R D 7 / P S P 7
O S C 1 / C L K I N
O S C 2 / C L K O U T
V D DV D D
V S SV S S
M C L R * / V P P
R E 0 / R D * / A N 5R E 1 / W R * / A N 6R E 2 / C S * / A N 7
D A TA
C k 2
G N D
+5 V
R S T
R 51 0 K
C K 2
Y 1
4 M H z
C 1
3 3 p
G N D
C 2
3 3 p
C K 1
Hình 2.5 sơ đồ khối điều khiển trung tâm
BỘ MÔN KỸ THUẬT MÁY TÍNH - 12 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
2.4.3 Module cảm biến
Bộ phận cảm biến của hệ thống chia làm hai phần, cảm biến quang và cảm
biến ẩm độ và nhiệt độ. Cảm biến ẩm độ và nhiệt độ được tích hợp trông cùng
một linh kiện.
-Cảm biến quang:
+5 V
L D R
R 2R
A D C
0
Hình 2.6 sơ đồ khối cảm biến ánh sáng
- Cảm biến ẩm độ và nhiệt độ:
S C K
+5 V
+5 V
G N D
U 1 4
s h t 7 1
sc
kv
dd
gn
dd
ata
1 2 3 4
D A TA
R 31 0 k
R 41 0 k
BỘ MÔN KỸ THUẬT MÁY TÍNH - 13 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.7 sơ đồ khối cảm biến sht71
2.4.4 module hiển thị:
Sử dụng LCD 16X2 , do ta có nhiều hơn 2 biến hiển thị lên dùng LCD có
hai dòng là phù hợp.
LD R7 8 9 1
01
11
21
31
4
1 2 3 4 5 6
d0
d1
d2
d3
d4
d5
d6
d7
vs
sv
dd
ve
e
rs rw e
G N D
D6
D7
R S
D4
D5
+ 5 V
E
Hình 2.8 module hiển thị LCD
2.5 Lựa chọn linh kiện
BỘ MÔN KỸ THUẬT MÁY TÍNH - 14 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
2.5.1 Vi điều khiển PIC16F877A
a. Sơ đồ chân vi điều khiển PIC 16F877A
Hình 2.9: Sơ đồ chân PIC 16F877A
b. Một vài thông số về vi điều khiển PIC 16F877A
Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài
14 bit. Mỗi lệnh đều được thực thi trong một chu kì xung clock. Tốc độ hoạt
động tối đa cho phép là 20 MHz với một chu kì lệnh là 200ns. Bộ nhớ chương
trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ liệu EEPROM
với dung lượng 256x8 byte. Số PORT I/O là 5 với 33 pin I/O. Các đặc tính ngoại
vi bao gồm các khối chức năng sau:
Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit.
Timer1: bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm
BỘ MÔN KỸ THUẬT MÁY TÍNH - 15 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
dựa vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep.
Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler. Hai bộ Capture/so
sánh/điều chế độ rộng xung.
Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C.
Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ.
Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điều khiển RD,
WR, CS bên ngoài.
Các đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit. Hai bộ so sánh.
Bộ nhớ flash với khả năng ghi xóa được 100.000 lần. Bộ nhớ EEPROM
với khả năng ghi xóa được 1.000.000 lần. Dữ liệu bộ nhớ EEPROM có thể lưu trữ
trên 40 năm. Khả năng tự nạp chương trình với sự điều khiển của phần mềm. Nạp
được chương trình ngay trên mạch điện ICSP (In Circuit Serial Programming)
thông qua 2 chân. Watchdog Timer với bộ dao động trong. Chức năng bảo mật mã
chương trình. Chế độ Sleep. Có thể hoạt động với nhiều dạng Oscillator khác nhau.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 16 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
c. Sơ đồ khối vi điều khiển PIC 16F877A
Hình 2.10 : Sơ đồ khối vi điều khiển PIC16F877A
d. Tổ chức bộ nhớ
Cấu trúc bộ nhớ của vi điều khiển PIC16F877A bao gồm bộ nhớ chương
trình (program memory) và bộ nhớ dữ liệu (data memory) .
BỘ MÔN KỸ THUẬT MÁY TÍNH - 17 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Bộ nhớ chương trình của vi điều khiển PIC16F877A là bộ nhớ flash ,
dung lượng bộ nhớ 8k word (1 word= 14bit) và được phân thành nhiều trang (từ
page 0 đến page 3) .Như vậy bộ nhớ chương trinh có khả năng chứa được 8*1024
=8192 lệnh (vì một lệnh sau khi mã hóa sẽ có dung lượng 1 word (14 bit). Để mã
hóa được địa chỉ của 8k word bộ nhớ chương trình , bộ đếm chương trình có
dung lượng 13 bit (PC<12:0>) . Khi vi điều khiển reset , bộ đếm chương trình sẽ
chỉ đến địa chỉ 0000h (reset vector). Khi có ngắt xảy ra , bộ đếm chương trình sẽ
chỉ đến địa chỉ 0004h (interrupt vector). Bộ nhớ chương trình không bao gồm bộ
nhớ stack sẽ được đề cập cụ thể trong phần sau.
Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM được chia ra làm
nhiều bank. Đối với PIC16F877A bộ nhớ dữ liệu được chia ra làm 4 bank. Mỗi
bank có dung lượng 128 byte, bao gồm các thanh ghi có chức năng đặc biệt SFG
(Special Function Register) nằm ở các vùng địa chỉ thấp và các thanh ghi mục
đích chung GPR (General Purpose Pegister) nằm ở vùng địa chỉ còn lại trong
bank. Các thanh ghi SFR thường xuyên được sử dụng (ví dụ như thanh ghi
STATUS) sẽ được đặt ở tất cà các bank của bộ nhớ dữ liệu giúp thuận tiện trong
quá trình truy xuất và làm giảm bớt lệnh của chương trình.
Stack không nằm trong bộ nhớ chương trình hay bộ nhớ dữ liệu mà là một
vùng nhớ đặc biệt không cho phép đọc hay ghi. Khi lệnh CALL được thực hiện
hay khi một ngắt xảy ra làm chương trình bị rẽ nhánh, giá trị của bộ đếm chương
trình PC tự động được vi điều khiển cất vào trong stack. Khi một trong các lệnh
RETURN, RETLW hat RETFIE được thực thi, giá trị PC sẽ tự động được lấy ra
từ trong stack, vi điều khiển sẽ thực hiện tiếp chương trình theo đúng qui trình
định trước.
Bộ nhớ Stack trong vi điều khiển PIC họ 16F87xA có khả năng chứa
được 8 địa chỉ và hoạt động theo cơ chế xoay vòng. Nghĩa là giá trị cất vào bộ
nhớ Stack lần thứ 9 sẽ ghi đè lên giá trị cất vào Stack lần đầu tiên và giá trị cất
BỘ MÔN KỸ THUẬT MÁY TÍNH - 18 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
vào bộ nhớ Stack lần thứ 10 sẽ ghi đè lên giá trị 6 cất vào Stack lần thứ 2. Cần
chú ý là không có cờ hiệu nào cho biết trạng thái stack, do đó ta không biết được
khi nào stack tràn. Bên cạnh đó tập lệnh của vi điều khiển dòng PIC cũng không
có lệnh POP hay PUSH, các thao tác với bộ nhớ stack sẽ hoàn toàn được điều
khiển bởi CPU.
e. Các cổng xuất nhập của PIC16F877A
Cổng xuất nhập (I/O port) chính là phương tiện mà vi điều khiển dùng để
tương tác với thế giới bên ngoài. Sự tương tác này rất đa dạng và thông qua quá
trình tương tác đó, chức năng của vi điều khiển được thể hiện một cách rõ ràng.
Một cổng xuất nhập của vi điều khiển bao gồm nhiều chân (I/O pin), tùy
theo cách bố trí và chức năng của vi điều khiển mà số lượng cổng xuất nhập và
số lượng chân trong mỗi cổng có thể khác nhau. Bên cạnh đó, do vi điều khiển
được tích hợp sẵn bên trong các đặc tính giao tiếp ngoại vi nên bên cạnh chức
năng là cổng xuất nhập thông thường, một số chân xuất nhập còn có thêm các
chức năng khác để thể hiện sự tác động của các đặc tính ngoại vi nêu trên đối với
thế giới bên ngoài. Chức năng của từng chân xuất nhập trong mỗi cổng hoàn
toàn có thể được xác lập và điều khiển được thông qua các thanh ghi SFR liên
quan đến chân xuất nhập đó.
Port A
Port A (RPA) bao gồm 6 I/O pin. Đây là các chân “hai chiều”
(bidirectional pin), nghĩa là có thể xuất và nhập được. Chức năng I/O này được
điều khiển bởi thanh ghi TRISA (địa chỉ 85h). Muốn xác lập chức năng của một
chân trong PortA là input, ta “set” bit điều khiển tương ứng với chân đó trong
thanh ghi TRISA và ngược lại, muốn xác lập chức năng của một chân trong Port
A là output, ta “clear” bit điều khiển tương ứng với chân đó trong thanh ghi
TRISA. Thao tác này hoàn toàn tương tự đối với các PORT còn lại. Bên cạnh đó
Port A còn là ngõ ra của bộ ADC, bộ so sánh, ngõ vào analog ngõ vào xung
BỘ MÔN KỸ THUẬT MÁY TÍNH - 19 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
clock của Timer0 và ngõ vào của bộ giao tiếp MSSP (Master Synchronous Serial
Port).
Các thanh ghi SFR liên quan đến Port A bao gồm:
Port A (địa chỉ 05h) : chứa giá trị các pin trong
Port A. TRISA (địa chỉ 85h) : điều khiển xuất nhập.
CMCON (địa chỉ 9Ch) : thanh ghi điều khiển bộ so sánh.
CVRCON (địa chỉ 9Dh) : thanh ghi điều khiển bộ so sánh điện áp.
ADCON1 (địa chỉ 9Fh) : thanh ghi điều khiển bộ ADC.
Port B
Port B (RPB) gồm 8 pin I/O. Thanh ghi điều khiển xuất nhập tương ứng là
TRISB. Bên cạnh đó một số chân của Port B còn đươc sử dụng trong quá trình
nạp chương trình cho vi điều khiển với các chế độ nạp khác nhau. Port B còn
liên quan đến ngắt ngoại vi và bộ Timer0. Port B còn được tích hợp chức năng
điện trở kéo lên được điều khiển bởi chương trình.
Các thanh ghi SFR liên quan đến Port B bao gồm:
Port B (địa chỉ 06h,106h) : chứa giá trị các pin trong
Port B TRISB (địa chỉ 86h,186h) : điều khiển xuất nhập
OPTION_REG(địa chỉ 81h,181h): điều khiển ngắt ngoại vi và bộ Timer0
Port C
PortC (RPC) gồm 8 pin I/O. Thanh ghi điều khiển xuất nhập tương ứng là
TRISC. Bên cạnh đó Port C còn chứa các chân chức năng của bộ so sánh, bộ
Timer1, bộ PWM và các chuẩn giao tiếp nối tiếp I2C, SPI, SSP, USART.
Các thanh ghi điều khiển liên quan đến Port C:
Port C (địa chỉ 07h) : chứa giá trị các pin trong
Port C TRISC (địa chỉ 87h) : điều khiển xuất nhập.
Port D
Port D (RPD) gồm 8 chân I/O, thanh ghi điều khiển xuất nhập tương ứng
BỘ MÔN KỸ THUẬT MÁY TÍNH - 20 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
là TRISD. Port D còn là cổng xuất dữ liệu của chuẩn giao tiếp PSP (Parallel
Slave Port).
Các thanh ghi liên quan đến Port D bao gồm:
Thanh ghi Port D : chứa giá trị các pin trong Port D.
Thanh ghi TRISD : điều khiển xuất nhập.
Thanh ghi TRISE : điều khiển xuất nhập Port E và chuẩn giao tiếp PSP.
Port E
Port E (RPE) gồm 3 chân I/O. Thanh ghi điều khiển xuất nhập tương ứng
là TRISE. Các chân của PortE có ngõ vào analog. Bên cạnh đó Port E còn là các
chân điều khiển của chuẩn giao tiếp PSP.
Các thanh ghi liên quan đến Port E bao gồm:
Port E : chứa giá trị các chân trong PortE.
TRISE : điều khiển xuất nhập và xác lập các thông số cho chuẩn giao
tiếp PSP
ADCON1: thanh ghi điều khiển khối ADC.
f. Ngắt (Interrupt)
PIC16F877A có đến 15 nguồn tạo ra hoạt động ngắt được điều khiển bởi
thanh ghi INTCON (bit GIE). Bên cạnh đó mỗi ngắt còn có một bit điều khiển và
cờ ngắt riêng. Các cờ ngắt vẫn được set bình thường khi thỏa mãn điều kiện ngắt
xảy ra bất chấp trạng thái của bit GIE, tuy nhiên hoạt động ngắt vẫn phụ thuộc
vào bit GIE và các bit điều khiển khác. Bit điều khiển ngắt RB0/INT và TMR0
nằm trong thanh ghi INTCON, thanh ghi này còn chứa bit cho phép các ngắt
ngoại vi PEIE. Bit điều khiển các ngắt nằm trong thanh ghi PIE1 và PIE2. Cờ
ngắt của các ngắt nằm trong thanh ghi PIR1 và PIR2.
Trong một thời điểm chỉ có một chương trình ngắt được thực thi, chương
trình ngắt được kết thúc bằng lệnh RETFIE. Khi chương trình ngắt được thực
thi, bit GIE tự động được xóa, địa chỉ lệnh tiếp theo của chương trình chính được
BỘ MÔN KỸ THUẬT MÁY TÍNH - 21 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
cất vào trong bộ nhớ Stack và bộ đếm chương trình sẽ chỉ đến địa chỉ 0004h.
Lệnh RETFIE được dùng để thoát khỏi chương trình ngắt và quay trở về chương
trình chính, đồng thời bit GIE cũng sẽ được set để cho phép các ngắt hoạt động
trở lại. Các cờ hiệu được dùng để kiểm tra ngắt nào đang xảy ra và phải được
xóa bằng chương trình trước khi cho phép ngắt tiếp tục hoạt động trở lại để ta có
thể phát hiện được thời điểm tiếp theo mà ngắt xảy ra.
Đối với các ngắt ngoại vi như ngắt từ chân INT hay ngắt từ sự thay đổi trạng
thái các pin của PORTB (PORTB Interrupt on change), việc xác định ngắt nào
xảy ra cần 3 hoặc 4 chu kì lệnh tùy thuộc vào thời điểm xảy ra ngắt.
Cần chú ý là trong quá trình thực thi ngắt, chỉ có giá trị của bộ đếm chương
trình được cất vào trong Stack, trong khi một số thanh ghi quan trọng sẽ không
được cất và có thể bị thay đổi giá trị trong quá trình thực thi chương trình ngắt.
Điều này nên được xử lý bằng chương trình để tránh hiện tượng trên xảy ra.
Ngắt INT
Ngắt này dựa trên sự thay đổi trạng thái của pin RB0/INT. Cạnh tác
động gây ra ngắt có thể là cạnh lên hay cạnh xuống và được điều khiển bởi bit
INTEDG (thanh ghi OPTION_ REG <6>). Khi có cạnh tác động thích hợp xuất
hiện tại pin RB0/INT, cờ ngắt INTF được set bất chấp trạng thái các bit điều
khiển GIE và PEIE. Ngắt này có khả năng đánh thức vi điều khiển từ chế độ
sleep nếu bit cho phép ngắt được set trước khi lệnh SLEEP được thực thi.
Ngắt do sự thay đổt trạng thái các PIN trong Port B
Các pin PORTB<7:4> được dùng cho ngắt này và được điều khiển
bởi bit RBIE (thanh ghi INTCON<4>). Cờ ngắt của ngắt này là bit RBIF
(INTCON<0>).
2.5.2 Cảm biến ẩm độ và nhiệt độ SHT71
SHT71 là một con chíp đo nhiệt độ độ ẩm tương đối, module đa cảm biến
được tích hợp một đầu ra, ứng dụng của công nghệ quá trình CMOS đảm bảo độ
BỘ MÔN KỸ THUẬT MÁY TÍNH - 22 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
tin cậy cao và làm việc dài hạn. Các thiết bị bao gồm một loại polymer phần tử
cảm biến điện dung cho độ ẩm tương đối và nhiệt độ cảm biến bangap. Cả hai
được liên kết trên một tín hiệu tương tử với tần số chuyển đổi kỹ thật số là 14bit
và một mạch giao tiếp nối tiếp trên cùng một chíp. Các hệ số hiệu chỉnh được lập
trình vào OTC bộ nhớ.các hệ số được sử dụng trong nội bộ quá trình các phép đo
để hiệu chỉnh các tín hiệu từ cảm biến. 2- dây được nối tiếp để điều chỉnh điện áp
nội bộ cho phép tích hợ hệ thống dễ dành và nhanh chóng. Kích thước nhở và
tiêu thụ điện năng thâp.
Hình 2.11 cảm biến nhiệt độ độ ẩm SHT71
Độ chính xác đổ ẩm là ±3% (% RH)
Độ chính xác nhiệt độ ±0.4°C (°C)
Chuẩn giao tiếp 2Wire
Các ứng dụng CMOSens ® công nghệ đảm bảo độ tin cậy tuyệt vời và ổn định
lâu dài. Cả hai cảm biến được liền mạch kết để analog 14bit để chuyển đổi kỹ
thuật số và một giao diện mạch nối tiếp. Điều này dẫn đến chất lượng tín hiệu tốt
hơn, thời gian đáp ứng nhanh chóng và vô cảm trước những xáo trộn bên ngoài
(EMC). SHT7x Mỗi cá nhân được hiệu chỉnh trong một căn phòng độ ẩm chính
xác. Hệ số hiệu chuẩn được lập trình vào bộ nhớ trên chip OTP. Các hệ số được
BỘ MÔN KỸ THUẬT MÁY TÍNH - 23 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
sử dụng trong nội bộ hiệu chỉnh các tín hiệu từ các cảm biến. 2-dây nối tiếp giao
diện và điều chỉnh điện áp nội bộ cho phép tích hợp hệ thống dễ dàng và nhanh
chóng. Kích thước nhỏ và tiêu thụ điện năng thấp làm cho SHT7x là sự lựa chọn
cuối cùng cho những ứng dụng đòi hỏi khắt khe nhất. SHT7x được cung cấp trên
FR4 với các chân cho phép tích hợp dễ dàng hoặc thay thế. Các cảm biến tương
tự cũng có sẵn như là bề mặt bao bì mountable (SHT1x) hoặc trên flex in
(SHTA1).
Sensor Chip
SHT7x V4 - mà kỹ thuật này áp dụng tính năng một phiên bản 4 chip cảm biến
Silicon. Bên cạnh cảm biến độ ẩm và nhiệt độ chip có chứa một bộ khuếch đại,
chuyển đổi A / D, bộ nhớ OTP và một giao diện kỹ thuật số.
Kết quả đó đến từ cảm biến là rất chính xác và đã được hiệu chuẩn, do đó bạn
không thể làm cho sai lầm. Đặc tính đo lường của nó được hiển thị trong bảng
dưới đây.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 24 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Nguồn cung cấp điện áp có thể được trong phạm vi từ 2,4 đến 5,5 V, nhưng tùy
thuộc vào điện áp, bạn nên chọn các hằng số khác nhau trong các chức năng tính
toán kết quả.
Giao diện kỹ thuật
Cảm biến thành phần chính nó có 4 chân.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 25 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.12 hình ảnh và sơ đồ chân cảm biến SHT71
Điện áp cung cấp SHT7x phải là trong khoảng 2.4 và 5.5V, đề nghị cung cấp
điện áp là 3.3V. Tách của VDD và GND của một tụ điện 100nF được tích hợp
trên mặt sau của bao bì cảm biến. Giao diện nối tiếp của SHT7x được tối ưu hóa
để readout cảm biến và tiêu thụ điện năng hiệu quả. Cảm biến không thể được
giải quyết bằng giao thức I2C, tuy nhiên, cảm biến có thể được kết nối với một
địa chỉ I2C mà không có sự can thiệp với các thiết bị khác kết nối với đĩa chỉ
byte. Vi điều khiển phải chuyển đổi giữa các giao thức.
Để kết nối cảm biến với vi điều khiển, bạn cần chỉ có hai chân kỹ thuật số và điện
trở pullup một. Trên hình dưới đây, bạn có thể xem ví dụ về làm thế nào để kết
nối nó.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 26 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.13 sơ đồ kết nối của SHT71
Nối tiếp đồng hồ đầu vào (SCK)
SCK được sử dụng để đồng bộ hóa các thông tin liên lạc giữa vi điều khiển và
SHT7x. Kể từ khi giao diện bao gồm logic hoàn toàn tĩnh không có tần số SCK
tối thiểu.
Nối tiếp dữ liệu (DATA)
Pin dữ liệu tri-nhà nước được sử dụng để chuyển dữ liệu vào và ra của cảm biến.
Đối với việc gửi một lệnh để cảm biến, DATA là hợp lệ trên tăng cạnh đồng hồ
nối tiếp (SCK) và phải duy trì ổn định trong khi SCK là cao. Sau khi các cạnh
thuộc của SCK giá trị dữ liệu có thể được thay đổi. Để đọc dữ liệu từ cảm biến,
DATA là hợp lệ TV sau khi SCK đã đi thấp và vẫn còn hợp lệ cho đến khi các
cạnh thuộc tiếp theo của SCK. Để tránh những ganh đua tín hiệu vi điều khiển
BỘ MÔN KỸ THUẬT MÁY TÍNH - 27 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
chỉ phải lái xe DỮ LIỆU thấp. Một bên ngoài điện trở kéo lên (ví dụ 10 kS) là
cần thiết để kéo các tín hiệu cần được lưu ý rằng điện trở kéo lên có thể được bao
gồm trong mạch I / O của vi điều khiển.
2.5.3 Cảm biến quang (LDR)
Cảm biến quang (LDR) hay còn gọi điện trở phụ thuộc ánh sáng, quang dẫn,
tế bào quang điện. Là một thiết bị thay đổi sức kháng khi thay đổi cường độ ánh
sáng chiếu vào bề mặt của nó. Nó nhạy cảm với cả khoảng ánh sáng nhìn thấy lên
nó rất thích hợp với ứng dụng đã đề xuất.
Hình 2.14 cảm biến quang ( quang trở )
Các tính năng cơ bản của bộ cảm biến quang.
- Nó được cấu tạo từ chất Cadmium sulphide (CdS)
- Sức đề kháng của LDR giảm khi cường độ ánh sáng chiếu vào nó tăng
- Các LDR của kháng có thể đạt 10 ohms k trong điều kiện trời tối và
khoảng 100 ohms ở độ sáng đầy đủ.
- Các mạch được sử dụng cho cảm biến ánh sáng trong hệ thống của chúng
tôi sử dụng 10 kΩ điện trở cố định được gắn liền với 5 V. Do đó giá trị điện áp
trong trường hợp này giảm với sự gia tăng về cường độ ánh sáng.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 28 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
- Các nút cảm biến điện áp được so sánh với điện áp ngưỡng cho các mức
độ khác nhau của cường độ ánh sáng tương ứng với bốn điều kiện, tối ưu, mờ, tối
và đêm.
- Mối quan hệ giữa kháng RL và cường độ ánh sáng Lux cho một điển hình
LDR là:
RL = 500 / Lux kΩ
- Với các LDR kết nối với 5V thông qua một điện trở 10K, điện áp đầu ra
của các LDR
là:
Vout= 5*(10+RL)/RL (V)
2.5.4 LCD 16x2 màn hình tinh thể lỏng
* Giới thiệu :
Ngày nay, 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 VĐK. 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 và giá thành rẽ …
Tổng Quát Về LCD HD44780
1> Hình dáng và kích thước:
Có rất nhiều loại LCD với nhiều hình dáng và kích thước khác nhau, trên
BỘ MÔN KỸ THUẬT MÁY TÍNH - 29 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
hình 1 là loại LCD thông
dụng.
Hình 2.15 : Hình dáng của loại LCD thông dụng
Khi sản xuất LCD, nhà sản xuất đã tích hợp chíp điều khiển (HD44780) bên
trong lớp vỏ và chỉ đưa các chân giao tiếp cần thiết. Các chân này được đánh số
thứ tự và đặt tên như hình 2 :
Hình 2.16 : Sơ đồ chân của LCD
2> Chức năng các chân :
Chân Ký Mô tả
BỘ MÔN KỸ THUẬT MÁY TÍNH - 30 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
hiệu
1 Vss Chân nối đất cho LCD, khi thiết kế mạch ta nối
chân này với GND của mạch điều khiển
2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch ta
nối chân này với VCC=5V của mạch điều khiển
3 VEE Điều chỉnh độ tương phản của LCD.
4 RS Chân chọn thanh ghi (Register select). Nối chân
RS với logic “0” (GND) hoặc logic “1” (VCC) để
chọn thanh ghi.
+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi
lệnh IR của LCD (ở chế độ “ghi” - write) hoặc nối với
bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)
+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi
dữ liệu DR bên trong LCD.
5 R/W Chân chọn chế độ đọc/ghi (Read/Write). Nối chân
R/W với logic “0” để LCD hoạt động ở chế độ ghi,
hoặc nối với logic “1” để LCD ở chế độ đọc.
6 E Chân cho phép (Enable). Sau khi các tín hiệu
được đặt lên bus DB0-DB7, các lệnh chỉ được chấp
nhận khi có 1 xung cho phép của chân E.
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD
chuyển vào(chấp nhận) thanh ghi bên trong nó khi
phát hiện một xung (high-to-low transition) của tín
hiệu chân E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra
DB0-DB7 khi phát hiện cạnh lên (low-to-high
transition) ở chân E và được LCD giữ ở bus đến khi
BỘ MÔN KỸ THUẬT MÁY TÍNH - 31 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
nào chân E xuống mức thấp.
7 - 14 DB0
- DB7
Tám đường của bus dữ liệu dùng để trao đổi
thông tin với MPU. Có 2 chế độ sử dụng 8 đường bus
này :
+ Chế độ 8 bit : Dữ liệu được truyền trên cả 8
đường, với bit MSB là bit DB7.
+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường
từ DB4 tới DB7, bit MSB là DB7
15 - Nguồn dương cho đèn nền
16 - GND cho đèn nền
Chức năng các chân của LCD
* Ghi chú : Ở chế độ “đọc”, nghĩa là MPU sẽ đọc thông tin từ LCD thông
qua các chân DBx.
Còn khi ở chế độ “ghi”, nghĩa là MPU xuất thông tin điều khiển cho LCD thông
qua các chân DBx.
3> Sơ đồ khối của HD44780:
Để hiểu rõ hơn chức năng các chân và hoạt động của chúng, ta tìm hiểu sơ qua
chíp HD44780 thông qua các khối cơ bản của nó.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 32 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.17 : Sơ đồ khối của HD44780
a> Các thanh ghi :
Chíp HD44780 có 2 thanh ghi 8 bit quan trọng : Thanh ghi lệnh IR
(Instructor Register) và thanh ghi dữ liệu DR (Data Register)
BỘ MÔN KỸ THUẬT MÁY TÍNH - 33 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
- Thanh ghi IR : Để điều khiển LCD, người dùng phải “ra lệnh” thông qua
tám đường bus DB0-DB7. Mỗi lệnh được nhà sản xuất LCD đánh địa chỉ rõ ràng.
Người dùng chỉ việc cung cấp địa chỉ lệnh bằng cách nạp vào thanh ghi IR.
Nghĩa là, khi ta nạp vào thanh ghi IR một chuỗi 8 bit, chíp HD44780 sẽ tra bảng
mã lệnh tại địa chỉ mà IR cung cấp và thực hiện lệnh đó.
VD : Lệnh “hiển thị màn hình” có địa chỉ lệnh là 00001100 (DB7…DB0)
Lệnh “hiển thị màn hình và con trỏ” có mã lệnh là 00001110
- Thanh ghi DR : Thanh ghi DR dùng để chứa dữ liệu 8 bit để ghi vào vùng RAM
DDRAM hoặc CGRAM
(ở chế độ ghi) hoặc dùng để chứa dữ liệu từ 2 vùng RAM này gởi ra cho MPU (ở
chế độ đọc). Nghĩa là, khi MPU ghi thông tin vào DR, mạch nội bên trong chíp
sẽ tự động ghi thông tin này vào DDRAM hoặc CGRAM. Hoặc khi thông tin về
địa chỉ được ghi vào IR, dữ liệu ở địa chỉ này trong vùng RAM nội của HD44780
sẽ được chuyển ra DR để truyền cho MPU.
=> Bằng cách điều khiển chân RS và R/W chúng ta có thể chuyển qua lại giữ 2
thanh ghi này khi giao tiếp với MPU. Bảng sau đây tóm tắt lại các thiết lập đối
với hai chân RS và R/W theo mục đích giao tiếp.
RS R/W Chức năng
0 0 Ghi vào thanh ghi IR để ra lệnh cho LCD
BỘ MÔN KỸ THUẬT MÁY TÍNH - 34 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
0 1 Đọc cờ bận ở DB7 và giá trị của bộ đếm địa chỉ ở
DB0-DB6
1 0 Ghi vào thanh ghi DR
1 1 Đọc dữ liệu từ DR
Chức năng chân RS và R/W theo mục đích sử dụng
b> Cờ báo bận BF: (Busy Flag)
Khi thực hiện các hoạt động bên trong chíp, mạch nội bên trong cần một
khoảng thời gian để hoàn tất. Khi
đang thực thi các hoạt động bên trong chip như thế, LCD bỏ qua mọi giao
tiếp với bên ngoài và bật cờ BF (thông qua chân DB7 khi có thiết lập RS=0,
R/W=1) lên để báo cho MPU biết nó đang “bận”. Dĩ nhiên, khi xong việc, nó sẽ
đặt cờ BF lại mức 0.
c> Bộ đếm địa chỉ AC : (Address Counter)
Như trong sơ đồ khối, thanh ghi IR không trực tiếp kết nối với vùng RAM
(DDRAM và CGRAM) mà thông qua bộ đếm địa chỉ AC. Bộ đếm này lại nối
với 2 vùng RAM theo kiểu rẽ nhánh. Khi một địa chỉ lệnh được nạp vào thanh
ghi IR, thông tin được nối trực tiếp cho 2 vùng RAM nhưng việc chọn lựa
vùng RAM tương tác đã được bao hàm trong mã lệnh.
Sau khi ghi vào (đọc từ) RAM, bộ đếm AC tự động tăng lên (giảm đi) 1 đơn
vị và nội dung của AC được xuất ra cho MPU thông qua DB0-DB6 khi có thiết
lập RS=0 và R/W=1 (xem bảng tóm tắt RS - R/W).
Lưu ý: Thời gian cập nhật AC không được tính vào thời gian thực thi lệnh
mà được cập nhật sau khi cờ BF lên mức cao (not busy), cho nên khi lập trình
BỘ MÔN KỸ THUẬT MÁY TÍNH - 35 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
hiển thị, bạn phải delay một khoảng tADD khoảng 4uS-5uS (ngay sau khi BF=1)
trước khi nạp dữ liệu mới. Xem thêm hình bên dưới.
Hình 2.18 : Giản đồ xung cập nhật AC
d> Vùng RAM hiển thị DDRAM : (Display Data RAM)
Đây là vùng RAM dùng để hiển thị, nghĩa là ứng với một địa chỉ của RAM là
một ô kí tự trên màn hình và khi bạn ghi vào vùng RAM này một mã 8 bit, LCD
sẽ hiển thị tại vị trí tương ứng trên màn hình một kí tự có mã 8 bit mà bạn đã
cung cấp. Hình sau đây sẽ trình bày rõ hơn mối liên hệ này :
BỘ MÔN KỸ THUẬT MÁY TÍNH - 36 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.19 : Mối liên hệ giữa địa chỉ của DDRAM và vị trí hiển thị của LCD
Vùng RAM này có 80x8 bit nhớ, nghĩa là chứa được 80 kí tự mã 8 bit.
Những vùng RAM còn lại không dùng cho hiển thị có thể dùng như vùng RAM
đa mục đích.
Lưu ý là để truy cập vào DDRAM, ta phải cung cấp địa chỉ cho AC theo mã
HEX
e> Vùng ROM chứa kí tự CGROM: Character Generator ROM
Vùng ROM này dùng để chứa các mẫu kí tự loại 5x8 hoặc 5x10 điểm ảnh/kí
tự, và định địa chỉ bằng 8 bit. Tuy nhiên, nó chỉ có 208 mẫu kí tự 5x8 và 32 mẫu
kí tự kiểu 5x10 (tổng cộng là 240 thay vì 2^8 = 256 mẫu kí tự). Người dùng
không thể thay đổi vùng ROM này.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 37 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.20 : Mối liên hệ giữa địa chỉ của ROM và dữ liệu tạo mẫu kí tự.
Như vậy, để có thể ghi vào vị trí thứ x trên màn hình một kí tự y nào đó,
người dùng phải ghi vào vùng DDRAM tại địa chỉ x (xem bảng mối liên hệ giữa
DDRAM và vị trí hiển thị) một chuỗi mã kí tự 8 bit trên CGROM. Chú ý là trong
bảng mã kí tự trong CGROM ở hình bên dưới có mã ROM A00.
Ví dụ : Ghi vào DDRAM tại địa chỉ “01” một chuỗi 8 bit “01100010” thì
trên LCD tại ô thứ 2 từ trái sang (dòng trên) sẽ hiển thị kí tự “b”.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 38 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Bảng mã kí tự (ROM code A00)
f> Vùng RAM chứa kí tự đồ họa CGRAM : (Character Generator
RAM)
BỘ MÔN KỸ THUẬT MÁY TÍNH - 39 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Như trên bảng mã kí tự, nhà sản xuất dành vùng có địa chỉ byte cao là 0000
để người dùng có thể tạo các mẫu kí tự đồ họa riêng. Tuy nhiên dung lượng vùng
này rất hạn chế: Ta chỉ có thể tạo 8 kí tự loại 5x8 điểm ảnh, hoặc 4 kí tự loại
5x10 điểm ảnh.
Để ghi vào CGRAM, hãy xem hình 6 bên dưới.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 40 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.21 : Mối liên hệ giữa địa chỉ của CGRAM, dữ liệu của CGRAM, và mã kí
tự.
4> Tập lệnh của LCD :
BỘ MÔN KỸ THUẬT MÁY TÍNH - 41 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Trước khi tìm hiểu tập lệnh của LCD, sau đây là một vài chú ý khi giao tiếp
với LCD :
* Tuy trong sơ đồ khối của LCD có nhiều khối khác nhau, nhưng khi lập
trình điều khiển LCD ta chỉ có thể tác động trực tiếp được vào 2 thanh ghi DR và
IR thông qua các chân DBx, và ta phải thiết lập chân RS, R/W phù hợp để
chuyển qua lại giữ 2 thanh ghi này. (xem bảng 2)
* Với mỗi lệnh, LCD cần một khoảng thời gian để hoàn tất, thời gian này có
thể khá lâu đối với tốc độ của MPU, nên ta cần kiểm tra cờ BF hoặc đợi (delay)
cho LCD thực thi xong lệnh hiện hành mới có thể ra lệnh tiếp theo.
* Địa chỉ của RAM (AC) sẽ tự động tăng (giảm) 1 đơn vị, mỗi khi có lệnh
ghi vào RAM. (Điều này giúp chương trình gọn hơn)
* Các lệnh của LCD có thể chia thành 4 nhóm như sau :
• Các lệnh về kiểu hiển thị. VD : Kiểu hiển thị (1 hàng / 2 hàng), chiều dài
dữ liệu (8 bit / 4 bit), …
• Chỉ định địa chỉ RAM nội.
• Nhóm lệnh truyền dữ liệu trong RAM nội.
• Các lệnh còn lại .
Bảng 4 : Tập lệnh của LCD
Tên
lệnh
Hoạt động
Clear
Display
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = 0 0 0 0 0 0 0
1
BỘ MÔN KỸ THUẬT MÁY TÍNH - 42 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Lệnh Clear Display (xóa hiển thị) sẽ ghi một khoảng trống-
blank (mã hiện kí tự 20H) vào tất cả ô nhớ trong DDRAM, sau đó
trả bộ đếm địa AC=0, trả lại kiểu hiển thị gốc nếu nó bị thay đổi.
Nghĩa là : Tắt hiển thị, con trỏ dời về góc trái (hàng đầu tiên), chế
độ tăng AC.
Return
home
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = 0 0 0 0 0 0 1
*
Lệnh Return home trả bộ đếm địa chỉ AC về 0, trả lại kiểu
hiển thị gốc nếu nó bị thay đổi. Nội dung của DDRAM không thay
đổi.
Entry
mode
set
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = 0 0 0 0 0 1 [I/D]
[S]
I/D : Tăng (I/D=1) hoặc giảm (I/D=0) bộ đếm địa chỉ hiển thị
AC 1 đơn vị mỗi khi có hành động ghi hoặc đọc vùng DDRAM.
Vị trí con trỏ cũng di chuyển theo sự tăng giảm này.
S : Khi S=1 toàn bộ nội dung hiển thị bị dịch sang phải
(I/D=0) hoặc sang trái (I/D=1) mỗi khi có hành động ghi vùng
DDRAM. Khi S=0: không dịch nội dung hiển thị. Nội dung hiển
thị không dịch khi đọc DDRAM hoặc đọc/ghi vùng CGRAM.
Display
on/off
control
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = 0 0 0 0 1 [D] [C]
BỘ MÔN KỸ THUẬT MÁY TÍNH - 43 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
[B]
D: Hiển thị màn hình khi D=1 và ngược lại. Khi tắt hiển thị,
nội dung DDRAM không thay đổi.
C: Hiển thị con trỏ khi C=1 và ngược lại.
B: Nhấp nháy kí tự tại vị trí con trỏ khi B=1 và ngược lại.
Chu kì nhấp nháy khoảng 409,6ms khi mạch dao động nội
LCD là 250kHz.
Cursor
or
display
shift
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = 0 0 0 1 [S/C] [R/L] *
*
Lệnh Cursor or display shift dịch chuyển con trỏ hay dữ liệu hiển thị
sang trái mà không cần hành động ghi/đọc dữ liệu. Khi hiển thị kiểu 2 dòng,
con trỏ sẽ nhảy xuống dòng dưới khi dịch qua vị trí thứ 40 của hàng đầu tiên.
Dữ liệu hàng đầu và hàng 2 dịch cùng một lúc. Chi tiết sử dụng xem bảng bên
dưới:
S/C R/L Hoạt động
0 0 Dịch vị trí con trỏ sang trái (Nghĩa là giảm
AC một đơn vị).
0 1 Dịch vị trí con trỏ sang phải (Tăng AC lên 1
đơn vị).
1 0 Dịch toàn bộ nội dung hiển thị sang trái,
con trỏ cũng dịch theo.
1 1 Dịch toàn bộ nội dung hiển thị sang phải,
con trỏ cũng dịch theo.
Functio
n
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
BỘ MÔN KỸ THUẬT MÁY TÍNH - 44 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
set DBx = 0 0 1 [DL] [N] [F] *
*
DL: Khi DL=1, LCD giao tiếp với MPU bằng giao thức 8 bit
(từ bit DB7 đến DB0). Ngược lại, giao thức giao tiếp là 4 bit (từ
bit DB7 đến bit DB0). Khi chọn giao thức 4 bit, dữ liệu được
truyền/nhận 2 lần liên tiếp. với 4 bit cao gởi/nhận trước, 4 bit thấp
gởi/nhận sau.
N : Thiết lập số hàng hiển thị. Khi N=0 : hiển thị 1 hàng, N=1:
hiển thị 2 hàng.
F : Thiết lập kiểu kí tự. Khi F=0: kiểu kí tự 5x8 điểm ảnh,
F=1: kiểu kí tự 5x10 điểm ảnh.
Set
CGRA
M
address
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = 0 1 [ACG][ACG][ACG][ACG]
[ACG][ACG]
Lệnh này ghi vào AC địa chỉ của CGRAM. Kí hiệu [ACG] chỉ
1 bit của chuỗi dữ liệu 6 bit. Ngay sau lệnh này là lệnh đọc/ghi dữ
liệu từ CGRAM tại địa chỉ đã được chỉ định.
Set
DDRA
M
address
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = 1 [AD] [AD] [AD] [AD] [AD] [AD]
[AD]
Lệnh này ghi vào AC địa chỉ của DDRAM, dùng khi cần thiết
lập tọa độ hiển thị
mong muốn. Ngay sau lệnh này là lệnh đọc/ghi dữ liệu từ
DDRAM tại địa chỉ đã được chỉ định.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 45 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Khi ở chế độ hiển thị 1 hàng: địa chỉ có thể từ 00H đến 4FH.
Khi ở chế độ hiển thị 2 hàng, địa chỉ từ 00h đến 27H cho hàng thứ
nhất, và từ 40h đến 67h cho hàng thứ 2.
Read
BF
and
address
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx =[BF] [AC] [AC] [AC] [AC] [AC] [AC]
[AC] (RS=0,R/W=1)
Như đã đề cập trước đây, khi cờ BF bật, LCD đang làm việc
và lệnh tiếp theo (nếu có) sẽ bị bỏ qua nếu cờ BF chưa về mức
thấp. Cho nên, khi lập trình điều khiển, phải kiểm tra cờ BF trước
khi ghi dữ liệu vào LCD.
Khi đọc cờ BF, giá trị của AC cũng được xuất ra các bit [AC].
Nó là địa chỉ của
CG hay DDRAM là tùy thuộc vào lệnh trước đó.
Write
data to
CG or
DDRA
M
Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
DB0
DBx = [Write
data] (RS=1, R/W=0)
Khi thiết lập RS=1, R/W=0, dữ liệu cần ghi được đưa vào các
chân DBx từ mạch
ngoài sẽ được LCD chuyển vào trong LCD tại địa chỉ được
xác định từ lệnh ghi địa chỉ trước đó (lệnh ghi địa chỉ cũng xác
định luôn vùng RAM cần ghi)
Sau khi ghi, bộ đếm địa chỉ AC tự động tăng/giảm 1 tùy theo
thiết lập Entry mode.
Read Mã lệnh : DBx = DB7 DB6 DB5 DB4 DB3 DB2 DB1
BỘ MÔN KỸ THUẬT MÁY TÍNH - 46 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
data
from
CG or
DDRA
M
DB0
DBx = [Read
data] (RS=1, R/W=1)
Khi thiết lập RS=1, R/W=1,dữ liệu từ CG/DDRAM được
chuyển ra MPU thông qua các chân DBx (địa chỉ và vùng RAM
đã được xác định bằng lệnh ghi địa chỉ trước đó).
Sau khi đọc, AC tự động tăng/giảm 1 tùy theo thiết lập Entry
mode, tuy nhiên nội dung hiển thị không bị dịch bất chấp chế độ
Entry mode.
5> Khởi tạo LCD:
Khởi tạo là việc thiết lập các thông số làm việc ban đầu. Đối với LCD, khởi
tạo giúp ta thiết lập các giao thức làm việc giữa LCD và MPU. Việc khởi tạo chỉ
được thực hiện 1 lần duy nhất ở đầu chương trình điều khiển LCD và bao gồm
các thiết lập sau :
• Display clear : Xóa/không xóa toàn bộ nội dung hiển thị trước đó.
• Function set : Kiểu giao tiếp 8bit/4bit, số hàng hiển thị 1hàng/2hàng, kiểu
kí tự 5x8/5x10.
• Display on/off control: Hiển thị/tắt màn hình, hiển thị/tắt con trỏ, nhấp
nháy/không nhấp nháy.
• Entry mode set : các thiết lập kiểu nhập kí tự như: Dịch/không dịch, tự
tăng/giảm (Increment).
a> Mạch khởi tạo bên trong chíp HD44780:
Mỗi khi được cấp nguồn, mạch khởi tạo bên trong LCD sẽ tự động khởi tạo
cho nó. Và trong thời gian khởi tạo này cờ BF bật lên 1, đến khi việc khởi tạo
hoàn tất cờ BF còn giữ trong khoảng 10ms sau khi Vcc đạt đến 4.5V (vì 2.7V thì
BỘ MÔN KỸ THUẬT MÁY TÍNH - 47 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
LCD đã hoạt động). Mạch khởi tạo nội sẽ thiết lập các thông số làm việc
của LCD như sau:
• Display clear : Xóa toàn bộ nội dung hiển thị trước đó.
• Function set: DL=1 : 8bit; N=0 : 1 hàng; F=0 : 5x8
• Display on/off control: D=0 : Display off; C=0 : Cursor off; B=0 : Blinking
off.
• Entry mode set: I/D =1 : Tăng; S=0 : Không dịch.
Như vậy sau khi mở nguồn, bạn sẽ thấy màn hình LCD giống như chưa mở
nguồn do toàn bộ hiển thị tắt. Do đó, ta phải khởi tạo LCD bằng lệnh.
b> Khởi tạo bằng lệnh: (chuỗi lệnh)
Việc khởi tạo bằng lệnh phải tuân theo lưu đồ sau của nhà sản xuất :
BỘ MÔN KỸ THUẬT MÁY TÍNH - 48 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
BỘ MÔN KỸ THUẬT MÁY TÍNH - 49 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.22 lệnh khởi tạo LCD
Như đã đề cập ở trên, chế độ giao tiếp mặc định của LCD là 8bit (tự khởi tạo
lúc mới bật điện lên). Và khi kết nối mạch theo giao thức 4bit, 4 bit thấp từ DB0-
DB3 không được kết nối đến LCD, nên lệnh khởi tạo ban đầu (lệnh chọn giao
thức giao tiếp – function set 0010****) phải giao tiếp theo chế độ 8 bit (chỉ gởi 4
BỘ MÔN KỸ THUẬT MÁY TÍNH - 50 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
bit cao một lần, bỏ qua 4 bit thấp). Từ lệnh sau trở đi, phải gởi/nhận lệnh theo 2
nibble.
Lưu ý là sau khi thiết lập function set, bạn không thể thay đổi function set
ngoại trừ thay đổi giao thức giao tiếp (4bit/8bit).
2.5.4 Trasitor
-Định nghĩa
Transistor được hình thành từ ba lớp bán dẫn ghép với nhau hình thành hai
mối tiếp giáp P-N ,nếu ghép theo thứ tự PNP ta được Transistor thuận , nếu ghép
theo thứ tự NPN ta được Transistor ngược. về phương diện cấu tạo Transistor
tương đương với hai Diode đấu ngược chiều nhau. Cấu trúc này được gọi là
Bipolar Junction Transitor (BJT) vì dòng điện chạy trong cấu trúc này bao gồm
cả hai loại điện tích âm và dương (Bipolar nghĩa là hai cực tính). Ba lớp bán dẫn
được nối ra thành ba cực, lớp giữa gọi là cực gốc ký hiệu là B (Base), lớp bán
dẫn B rất mỏng và có nồng độ tạp chất thấp. Hai lớp bán dẫn bên ngoài được nối
ra thành cực phát (Emitter) viết tắt là E, và cực thu hay cực góp (Collector) viết
tắt là C, vùng bán dẫn E và C có cùng loại bán dẫn (loại N hay P ) nhưng có kích
thước và nồng độ tạp chất khác nhau nên không hoán vị cho nhau được.
Hình 2.23 Hình ảnh transistor
-Nguyên tắc hoạt động của Transitor:
BỘ MÔN KỸ THUẬT MÁY TÍNH - 51 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Trong chế độ tuyến tính hay còn gọi là chế độ khuyếch đại, Transitor là phần
tử khuyếch đại dòng điện với dòng Ic bằng β lần dòng bazo (dòng điều khiển )
Trong đó β là hệ số khuyếch đại dòng điện : IC = β.IB
2.5.5 Tụ điện
Tụ điện là linh kiện điện tử thụ động được sử dụng rất rộng rãi trong các
mạch điện tử, chúng được sử dụng trong các mạch lọc nguồn, lọc nhiễu, mạch
truyền tín hiệu xoay chiều, mạch tạo dao động.
Hình 2.24 Một số loại tụ điện
2.5.6 IC ổn áp LM7805
7805 là một mạch tích hợp bộ điều chỉnh điện áp. Đây là một dòng IC của họ 78xx
điều chỉnh điện áp tuyến tính cố định. Nguồn điện áp trong mạch có thể có biến động và sẽ
không cho lượng điện áp cố định. Các vi mạch điều chỉnh điện áp duy trì điện áp đầu ra tại
một giá trị không đổi. Các xx trong 78xx cho biết lượng điện áp cố định nó được thiết kế
để cung cấp: 7805 cung cấp nguồn +5 V...
BỘ MÔN KỸ THUẬT MÁY TÍNH - 52 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.25 IC ổn áp 7805
2.6 Sơ đồ nguyên lý tổng thể
BỘ MÔN KỸ THUẬT MÁY TÍNH - 53 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
R S
R S
+5 V
S C K
S C K
D A TA
R 41 0 k
C k 2
- +
D 3
D B 1 0 5
1
2
3
4
C K 1
R 2R
L D R
C 41 0 0 n F
D 7
D7
+5 V
C K 1
LD R
7 8 9 10 11 12 13 141 2 3 4 5 6
d0 d1 d2 d3 d4 d5 d6 d7vss
vdd
vee
rs rw e
G N D
R S T
D 4
G N D
C 2
3 3 p
G N D
+5 V
R 51 0 K
+ C 32 2 0 u F
U 1 5L M 7 8 0 5
1
2
3V I
GN
D
V O
C K 2
T1
2 2 0 V A C 5 0 H z in p u t
1 3
2 5
+5 V
U 1 4
s h t 7 1
sck
vdd
gnd
data
1 2 3 4
G N D
G N D
D6
A D C
D A TA
A D C
E
+5 V
D5
G N D
D 6
R 31 0 k
R S T
E
G N D
P V N 2
P I C 1 6 F 8 7 7 A
234567
3 33 43 53 63 73 83 94 0
1 51 61 71 82 32 42 52 6
1 92 02 12 22 72 82 93 0
1 3
1 4
3 21 1
3 11 2
1
891 0
R A 0 / A N 0R A 1 / A N 1R A 2 / A N 2 / V R E F -/ C V R E FR A 3 / A N 3 / V R E F +R A 4 / T0 C K I / C 1 O U TR A 5 / A N 4 / S S * / C 2 O U T
R B 0 / I N TR B 1R B 2
R B 3 / P G MR B 4R B 5
R B 6 / P G CR B 7 / P G D
R C 0 / T1 O S O / T1 C K IR C 1 / T1 O S I / C C P 2R C 2 / C C P 1R C 3 / S C K / S C LR C 4 / S D I / S D AR C 5 / S D OR C 6 / TX/ C KR C 7 / R X/ D T
R D 0 / P S P 0R D 1 / P S P 1R D 2 / P S P 2R D 3 / P S P 3R D 4 / P S P 4R D 5 / P S P 5R D 6 / P S P 6R D 7 / P S P 7
O S C 1 / C L K I N
O S C 2 / C L K O U T
V D DV D D
V S SV S S
M C L R * / V P P
R E 0 / R D * / A N 5R E 1 / W R * / A N 6R E 2 / C S * / A N 7
D4
C 1
3 3 pY 1
4 M H z
D 5
+5 V
Hình 2.26 sơ đồ nguyên lý tổng thể
2.7 Thuật toán điều khiển
- Chương trình có nhiệm vụ đọc thông số từ các cảm biến.
- Hiển thị ra màn hình LCD
BỘ MÔN KỸ THUẬT MÁY TÍNH - 54 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
- Điều khiển các thiết bị truyền động
Giải thuật : chương trình điều khiển sử dụng ngắt INTERRUPT của vi
điều khiển. Chương trình chính chỉ thực hiện ngắt mạnh.
Dùng các hàm để thiết lập cho cảm biến kỹ thuật số SHT71 làm việc.
Nhận tín hiệu từ cảm biến sau đó tính toán và hiển thị,
Đọc dữ liệu từ cảm biến quang LDR tính toán chuyển đổi hiển thị lên
LCD
BỘ MÔN KỸ THUẬT MÁY TÍNH - 55 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 2.27 sơ đồ giải thuật
BỘ MÔN KỸ THUẬT MÁY TÍNH - 56 -
Bắt đầu
Khởi tạo LCD,SHT, ADC
Chương trình chính
Thiết lập cho sensor SHT 71
Tính toán độ ẩm, nhiệt độ.
Hiển thị
Lấy dữ liệu từ sensor
Gửi dữ liệu ra senser
Đọc giá trị từ sensor SHT
Đọc dữ liệu từ LDR
Quay lại vòng lặp
Tính toán cường độ ánh sáng
Quay lại vòng lặp
Hiển thị nhiệt độ, độ ẩm tuyệt đối
Hiển thị cường độ ánh sáng
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Chương trình nạp vào Vi điều khiển Pic 16F877A
Để viết chương trình điều khiển ta sử dụng ngôn ngữ C viết trên phần mềm
CCS4.114 và chạy mô phỏng trong Proteus7.7. Chương trình bao gồm chương
trình chính, chương trình con tính toán nhiệt độ, độ ẩm tuyệt đối, với cảm biến
SHt71. chương trình con làm việc với ADC, đọc dữ liệu và tính toán từ cảm biến
quang. Chương trình con hiển thị. Ngoài ra còn sử dụng các hàm comstart khởi
tạo cho SHT71, hàm comwrite sử dụng để ghi dữ liệu ra SHT71. hàm comread
đọc dữ liệu từ cảm biến SHT71 về vi sử lý. Hàm comwait chờ để đọc dữ liệu từ
SHT71,
Chương 3: xây dựng hệ thống
3.1 Thiết kế phần cứng
Với đồ án hệ thống nhúng thiết kế Hệ thống kiểm soát môi trường nhà vườn”
việc thiết kết phần cứng được chia ra làm 5 khối cơ bản:
-Khối nguồn
-xử lý trung tâm
-khối hiển thị
-khối cảm biến
3.2 Thiết kế phần mềm
* Mã lập trình
//
*****************************************************************
*********
BỘ MÔN KỸ THUẬT MÁY TÍNH - 57 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
//************ chuong trinh tu dong hoa nha
kinh***************************
//************ su dung pic 16f877 cam bien SHT71 va
LDR*********************
#include <16F877.h>
#device ADC=10 // su dung 10bit adc
#fuses
XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NOD
EBUG,NOCPD // chi dan duoc dat vao MCU
#use delay (clock=4000000) // thiet lap tao tre
#include <benim_lcd.c> // kha bao fine thu vien LCD_lcd.c
#include <stdio.h>
#define sht_data_pin PIN_c1 //xac dinh chan du lieu cho sht71
#define sht_clk_pin PIN_c0 // chan xung dong ho cho sht71
#INT_AD // ham su ly ngat chuyen doi A/D
unsigned long int bilgi;
float voltaj;
float basinc;
float doam;
//*****khoi tao cho SHT71 *****
void comstart (void)
output_float(sht_data_pin); //xuat tin hieu o muc cao,
BỘ MÔN KỸ THUẬT MÁY TÍNH - 58 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
output_bit(sht_clk_pin, 0); //xuat gia tri thap pin clk
delay_us(1); // tre
output_bit(sht_clk_pin, 1); // xuat gia tri cao chan clk
delay_us(1); // tre
output_bit(sht_data_pin, 0); // xuat gia tri thap pin data
delay_us(1); // tre 1us
output_bit(sht_clk_pin, 0); //xuat gia tri thap pin clk
delay_us(2);
output_bit(sht_clk_pin, 1); //xuat tin hiu mua cao chan clk
delay_us(1);
output_float(sht_data_pin); // tin hieu o muc cao
delay_us(1);
output_bit(sht_clk_pin, 0); //xuat gia tri thap pin clk
//*****sht71 thuc hien chuc nang ghi*****
int1 comwrite (int8 iobyte) // ham ghi du lieu ra sht và se tra ve sau no
int8 i, mask = 0x80; // khai bao
int1 ack;
delay_us(4);
for(i=0; i<8; i++)
output_bit(sht_clk_pin, 0); //
if((iobyte & mask) > 0) output_float(sht_data_pin);
BỘ MÔN KỸ THUẬT MÁY TÍNH - 59 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
else output_bit(sht_data_pin, 0);
delay_us(1);
output_bit(sht_clk_pin, 1);
delay_us(1);
mask = mask >> 1;
output_bit(sht_clk_pin, 0);
delay_us(1);
ack = input(sht_data_pin);
output_bit(sht_clk_pin, 1);
delay_us(1);
output_bit(sht_clk_pin, 0);
return(ack);
//***** doc du lieu sht71 *****
int16 comread (void) // ham doc du lieu tu SHT
int8 i;
int16 iobyte = 0;
const int16 mask0 = 0x0000;
const int16 mask1 = 0x0001;
for(i=0; i<8; i++)
BỘ MÔN KỸ THUẬT MÁY TÍNH - 60 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
iobyte = iobyte << 1;
output_bit(sht_clk_pin, 1);
delay_us(1);
if (input(sht_data_pin)) iobyte |= mask1;
else iobyte |= mask0;
output_bit(sht_clk_pin, 0);
delay_us(1);
output_bit(sht_data_pin, 0);
delay_us(1);
output_bit(sht_clk_pin, 1);
delay_us(2);
output_bit(sht_clk_pin, 0);
delay_us(1);
output_float(sht_data_pin);
for(i=0; i<8; i++)
iobyte = iobyte << 1;
output_bit(sht_clk_pin, 1);
delay_us(1);
if (input(sht_data_pin)) iobyte |= mask1;
else iobyte |= mask0;
output_bit(sht_clk_pin, 0);
BỘ MÔN KỸ THUẬT MÁY TÍNH - 61 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
delay_us(1);
output_float(sht_data_pin);
delay_us(1);
output_bit(sht_clk_pin, 1);
delay_us(2);
output_bit(sht_clk_pin, 0);
return(iobyte);
//*****chuc nang cho de doc du lieu tu sht71 *****
void comwait (void)
int16 sht_delay;
output_float(sht_data_pin);
output_bit(sht_clk_pin, 0);
delay_us(1);
for(sht_delay=0; sht_delay<30000; sht_delay++)
if (!input(sht_data_pin)) break; // neu sht_data_pin o muc thap thi sht da
san sang
delay_us(10);
BỘ MÔN KỸ THUẬT MÁY TÍNH - 62 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
//***** dat lai chuc nang truyen thong *****
void comreset (void)
int8 i;
output_float(sht_data_pin);//du lieu muc cao
output_bit(sht_clk_pin, 0); // du lieu muc thap
delay_us(2);
for(i=0; i<9; i++)
output_bit(sht_clk_pin, 1); // chuyen doi clk 9 lan
delay_us(2);
output_bit(sht_clk_pin, 0); //gui gia tri thap ra clk
delay_us(2); // tre 2us
comstart(); // thuc hien ham comstart
//***** reset lai sht71 *****
void sht_soft_reset (void)
comreset(); // goi ham comreset
BỘ MÔN KỸ THUẬT MÁY TÍNH - 63 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
comwrite(0x1e); // gui sht lenh thiet lap lai
delay_ms(15); // tre 15 mini giay
//***** sht71 chuc nang do nhiet do *****
int16 measuretemp (void)
int1 ack; // kieu so nguyen 1 bit true or false
int16 iobyte; // iobyte kieu du lieu so nguyen 16 bit
comstart(); // loi goi ham comstart
ack = comwrite(0x03);// gui lenh tam thoi va doc du lieu tu ack
if(ack == 1) return; //ack==1 tro lai
comwait(); // doi sht do luong
iobyte = comread(); // doc du lieu tam thoi tu sht
return(iobyte); // tro lai
//***** chuc nang do do am *****
int16 measurehumid (void)
int1 ack; //so 1 bit true or false
int16 iobyte; //so nguyen 16 bit
comstart();
BỘ MÔN KỸ THUẬT MÁY TÍNH - 64 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
ack = comwrite(0x05); // gui lenh va doc tinh trang RH,
if(ack == 1) return; // neu ack muc cao thi quay lai
comwait(); // cho doi
iobyte = comread(); // doc du lieu tam thoi
return(iobyte); //tro lai
//***** SHT71 chuc nang tinh toan tuong doi *****
void calculate_data (int16 temp, int16 humid, float & tc, float & rhlin, float
& rhtrue)
float rh; // so thuc 32 bit
tc = ((float) temp * 0.01) - 40.0; //tinh toan doc nhiet do
rh = (float) humid; //tinh toan do am thuc
rhlin = (rh * 0.0405) - (rh * rh * 0.0000028) - 4.0;
rhtrue = ((tc - 25.0) * (0.01 + (0.00008 * rh))) + rhlin; //do am phu thuoc
nhiet do
//***** SHT11 tinh toan *****
BỘ MÔN KỸ THUẬT MÁY TÍNH - 65 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
//***** chuong trinh con tinh toan nhiet do, do am
void sht_rd (float & temp, float & truehumid)
int16 restemp, reshumid; // su dung bien so nguyen 16 bit
float realhumid; //bien so thuc 32 bit
restemp = 0; // restemp=0
truehumid = 0; // truehumid=0
restemp = measuretemp();
reshumid = measurehumid();
calculate_data (restemp, reshumid, temp, realhumid, truehumid); //tinh toan
//tam thoi
//***** SHT11 thiet lap lai *****
void sht_init (void)
comreset(); //reset SHT75
delay_ms(20); // tao tre
//***** ldr doc du lieu *****
void ldr_read()
set_adc_channel(0); // xac dinh chan ADC
BỘ MÔN KỸ THUẬT MÁY TÍNH - 66 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
adc_start_and_read; // bat dau doc du lieu tu ADC
delay_us(20); // tre 20 us
bilgi=read_adc(); // doc gia tri va gan cho bien bilgi
voltaj=bilgi; // tinh toan chuyen doi dien ap.
basinc=500/((5*10)/(voltaj-5)); // tinh toan chuyen doi nhiet do
//********** chuong trinh chinh*******
void main()
float restemp, truehumid; //kieu du lieu 32 bit so thuc
int i=0,k=0; // mac dinh kieu du lieu nhu int8,
setup_CCP1(CCP_OFF); // tat ccp1,
setup_CCP2(CCP_OFF); // tat ccp2
set_tris_C(0xFF);
set_tris_E(0x0F);
set_tris_A(0x0F);
set_tris_D(0xFF);
setup_adc(adc_clock_div_32); // thoi gian lay mau ADC bang clock/32
setup_adc_ports(AN0); // su dung chan AN0 lam chan ADC
enable_interrupts(INT_AD); // cho phep ngat AD
enable_interrupts(GLOBAL); // ngat toan bo
BỘ MÔN KỸ THUẬT MÁY TÍNH - 67 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
lcd_hienthi(); // thuc hien chuong trinh con lcd_hazirla
sht_init(); // chuong trinh sht_init
delay_ms(500); // cho khoi tao
lcd_hien_thi(0x01); // xoa man hinh
output_low(PIN_D7); // bat den len
printf(lcd_veri," lop k44 KDT"); // in len man hinh chu dtk0851030341
imlec(2,1);
printf(lcd_veri," DAMH HT NHUNG"); // dong hai
delay_ms(1500); // tre 1500 ms
lcd_hien_thi(0x01); // xoa man hinh
i=0;
while(1) // vong lap luon dung, vong lap vo han
sht_rd (restemp, truehumid); // goi ham sht_rd
ldr_read(); // goi ham ldr_read
if(i>8)
i=0;
imlec(2,15);
printf(lcd_veri,"->");
printf(lcd_veri,"xxxxxS%3.1fN%3.1fB%3.1fFxxxxx\
r",restemp,truehumid,basinc);
imlec(2,15);
printf(lcd_veri," ");
BỘ MÔN KỸ THUẬT MÁY TÍNH - 68 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
imlec(1,1);
printf(lcd_veri,"T:%3.1f%cC R:%3.1f%%",restemp,223,truehumid);
imlec(2,1);
printf(lcd_veri,"I:%3.1f lux",basinc);
delay_ms(500);
i=i+1;
//////////////////////////////////////////////////////////////
// benim_LCD.c //
// tap tin này ket noi lcd
//
// ket nói
// //
//////////////////////////////////////////////////////////////
// RB0 D4
// RB1 D5
// RB2 D6
// RB3 D7
// RB4 RS
// RB5 E
// R/W
#define e pin_b4 // pin_b4 duoc ket noi E
BỘ MÔN KỸ THUẬT MÁY TÍNH - 69 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
#define rs pin_b5 // pin_b5 duoc ket noi voi rs
//****** gui lenh ra man hinh LCD************//
void lcd_hien_thi(byte hien_thi)
output_b(hien_thi>>4); // lenh co gia tri cao 4bit
output_low(rs); // lenh thiet lap lcd
output_high(e); //
output_low(e);
delay_ms(2); // tre 2ms
output_b(hien_thi&0x0F); // gui gia tri thap 4bit
output_low(rs); // LCD thiet aap de nhan du lieu
output_high(e); //
output_low(e);
delay_ms(2); // tre 2 ms
//******* dinh vi con tro tren man hinh *******
void lcd_veri(byte veri)
output_b(veri>>4); // gui du lieu co gia tri cao 4 bit
output_high(rs); //
output_high(e); //
output_low(e);
delay_ms(1); //
BỘ MÔN KỸ THUẬT MÁY TÍNH - 70 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
output_b(veri&0x0F); // gui gia tri thap 4 bit
output_high(rs); //
output_high(e); //
output_low(e);
delay_ms(1); //
//******* ********
void imlec(byte satir, byte sutun) // byte hang, byte cot
if (satir==1) // neu so hang bang 1
lcd_hien_thi(0x80|(sutun-1));
if (satir==2) // neu so hang bang 2
lcd_hien_thi(0x80|(0x40+(sutun-1)));
//********* cai dat ban dau*******//
void lcd_hienthi()
lcd_hien_thi(0x02);// man hinh lcd da san sang su dung
lcd_hien_thi(0x28);// 2 dong, 4 bit thong tin lien lac,5x8 dot matran duoc
su dung
lcd_hien_thi(0x08);// hien thi dong duoi cung va khong nhap nhay
lcd_hien_thi(0x0C);//
lcd_hien_thi(0x06);// moi du lieu duoc gi vao mot con tro
lcd_hien_thi(0x01);// xoa man hinh
BỘ MÔN KỸ THUẬT MÁY TÍNH - 71 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
delay_ms(1); //
3.3 kết quả mô phỏng
Hình 3.1 bắt đầu chương trình
+ Khi mới khởi bắt đầu chương trình sẽ hiển thị lên chữ “lop k44KDT” ở dòng 1,
và chữ “DAMH HT NHUNG”
BỘ MÔN KỸ THUẬT MÁY TÍNH - 72 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 3.2 in lên màn hình giá trị, nhiệt độ, độ ẩm, và cường độ ánh sáng.
+ Nhiệt độ và độ ẩm tương ứng là 28,8 oC và 70,8%
+ Chương trình in lên màn hình cường độ ánh sáng lớn nhất, tương ứng với giá
trị điện trở trên quang trở giảm xuống nhỏ nhất là 0,1 kΩ.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 73 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
Hình 3.3 in lên màn hình giá trị, nhiệt độ, độ ẩm, và cường độ ánh sáng.
+ chương trình in lên màn hình nhiệt độ T:28.8 oC R:70,8 %
+ cường độ ánh sáng là I:3090.0 lux tương ứng với 50,1 KΩ.
3.4 Đánh giá và kết luân
3.4.1 Đánh giá
a. Ưu điểm :
1. cảm biến có độ nhạy cao và dễ dàng sử lý
BỘ MÔN KỸ THUẬT MÁY TÍNH - 74 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
2. Hệ thống chi phí thấp, cung cấp tự động hóa tối đa
3. Thiết kế vòng khép kín ngăn ngừa bất kỳ cơ hội làm ảnh hưởng đến môi
trường nhà vườn
4. Bảo dưỡng thấp và tiêu thụ điện năng thấp.
5. Hệ thống nhỏ gọn hơn so với những cái hiện có, do đó có thể dễ dàng xách
tay.
6. Có thể được sử dụng cho các loài thực vật khác nhau bằng cách thay đổi
nhỏ trong các thông số môi trường xung quanh.
7. Có thể dễ dàng sửa đổi để cải thiện các thiết lập và thêm các tính năng
mới.
8. Cung cấp một giao diện thân thiện với người sử dụng do đó sẽ có một sự
chấp nhận của người lao động không có kỹ năng công nghệ.
9. Trục trặc của bộ cảm biến duy nhất sẽ không ảnh hưởng đến toàn bộ hệ
thống.
b. Nhược điểm:
1. không thể tự động phát hiện và tiêu diệt sâu bệnh trong nhà vườn.
2. Không có hệ thống tự động kiểm tra sự cố của cảm biến.
3. Yêu cầu cung cấp điện không bị gián đoạn.
4. Cơ sở giám sát nhà vườn từ xa là không đạt được.
c. Phạm vi cho phát triển thêm
1. Hiệu suất của hệ thống có thể được tiếp tục cải thiện về tốc độ hoạt động,
dung lượng bộ nhớ, Số lượng các kênh có thể được tăng lên đến giao diện số
lượng nhiều hơn các cảm biến mà có thể bằng cách sử dụng các phiên bản tiên
tiến của PIC.
BỘ MÔN KỸ THUẬT MÁY TÍNH - 75 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
2. Một hệ thống báo động khi có sự thay đổi thông số trạng thái nhà vườn.
3. Hệ thống này có thể được kết nối với máy tính model để có thể theo dõi môi
trường nhà vường từ xa
4. thiết bị có thể được thực hiện để thực hiện tốt hơn bằng cách cung cấp các
nguồn cung cấp năng lượng với sự giúp đỡ của nguồn pin có thể sạc hoặc không
thể sạc lại, để giảm bớt các yêu cầu của nguồn AC chính.
5. Một hệ thống điều khiển có thể phát triển để điều khiển các thiết bị làm thay
đổi các thông số trạng thái nhà vườn theo ý muốn.
6. bằng những thay đổi nhỏ trong phần mềm, hệ thống có thể được ứng
dụng vào các trang trại chăn nuôi gà, và một số động vật khác.
3.4.2 Kết luận
Một cách tiếp cận bước từng bước trong việc thiết kế hệ thống dựa trên vi điều
khiển Pic đo lường (kiểm soát) các thông số cần thiết cho sự phát triển của thực
vật, tức là nhiệt độ, độ ẩm, và cường độ ánh sáng, đã được theo sau. Các kết quả
thu được từ phép đo đã chỉ ra rằng hiệu suất của hệ thống là khá đáng tin cậy và
chính xác.
Hệ thống này đã thành công vượt qua một vài thiếu sót của hệ thống hiện có bằng
cách giảm tiêu thụ điện năng, bảo trì và phức tạp, đồng thời cung cấp một hình
thức linh hoạt và chính xác của việc duy trì môi trường.
Các chi phí liên tục giảm của phần cứng và phần mềm, chấp nhận rộng lớn hơn
của hệ thống điện tử trong lĩnh vực nông nghiệp, và đang nổi lên hệ thống kiểm
soát ngành công nghiệp trong nông nghiệp một số khu vực sản xuất phát triền các
loài lan quý, sẽ dẫn đến hệ thống kiểm soát đáng tin cậy sẽ giải quyết một số khía
cạnh của chất lượng và số lượng sản xuất. Các cải thiện khác sẽ được thực hiện
BỘ MÔN KỸ THUẬT MÁY TÍNH - 76 -
ĐỒ ÁN HỆ THỐNG NHÚNG GVHD NGUYỄN TIẾN DUY
như cảm biến đáng tin cậy hơn và ít tốn kém được phát triển để sử dụng trong sản
xuất nông nghiệp.
công nghệ này không phải là một nhiệm vụ khó khăn và có thể được thực hiện
thành công.
Tài liệu tham khảo
Bài giảng Hệ thống nhúng – Bộ môn Kỹ thuật Máy tính, ĐH Kỹ thuật Công
Nghiệp Thái Nguyên – 2010
Bài giảng Vi xử lý- Vi điều khiển – Bộ môn Kỹ thuật Máy tính – ĐH Kỹ
thuật Công Nghiệp Thái Nguyên – 2009
Họ vi điều khiển 8051– Tống Văn On, Hoàng Đức Hải -2009
Một số tài liệu khác trên mạng:
dientuvietnam.net
picvietnam.com
320volt.com
Alldatasheet.com
BỘ MÔN KỸ THUẬT MÁY TÍNH - 77 -