Tải bản đầy đủ (.pdf) (58 trang)

(Đồ án hcmute) thiết kế và thi công hồ cá đa năng sử dụng board ardunio mega 2560

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

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CNKT ĐIỆN TỬ TRUYỀN THÔNG

THIẾT KẾ VÀ THI CÔNG HỒ CÁ ĐA NĂNG SỬ DỤNG
BOARD ARDUINO MEGA 2560

GVHD: TS. NGUYỄN THANH HẢI
SVTH: NGUYỄN THÀNH TÂM - 12141197
HỒ MINH THÁI - 12141202

SKL 0 0 4 5 1 6

Tp. Hồ Chí Minh, tháng 1 năm 2017

do an


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
Chương
KH
ĐÀ TẠ CH T Ư NG C

ĐỒ ÁN TỐT NGHIỆP

THIẾT KẾ VÀ THI CÔNG
HỒ CÁ Đ NĂNG SỬ DỤNG
BOARD ARDUINO MEGA 2560



SVTH:

NGUYỄN THÀNH TÂM - 12141197
HỒ MINH THÁI - 12141202
Khóa:
12
Ngành: Ngành CNKT Điện Tử - Truyền Thơng
GVHD: TS. NGUYỄN TH NH HẢI

Tp. Hồ Chí Minh, tháng 1 năm 2017

do an


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KH
ĐÀ TẠ CH T Ư NG C

ĐỒ ÁN TỐT NGHIỆP

THIẾT KẾ VÀ THI CÔNG
HỒ CÁ Đ NĂNG SỬ DỤNG
BOARD ARDUINO MEGA 2560

SVTH:

NGUYỄN THÀNH TÂM - 12141197
HỒ MINH THÁI - 12141202
Khóa:

12
Ngành: Ngành CNKT Điện Tử - Truyền Thơng
GVHD: TS. NGUYỄN TH NH HẢI

Tp. Hồ Chí Minh, tháng 1 năm 2017

do an


ỜI CẢM ƠN
Nhóm thực hiện đề tài “Thiết kế và thi công hồ cá đa năng sử dụng board
Arduino Mega 2560” xin gửi lời cảm ơn chân thành đến các thầy, cô trường Đại
Học Sư Phạm Kỹ Thuật TP.HCM đã tận tình giảng dạy, hướng dẫn trong suốt quá
trình học tập, nghiên cứu và rèn luyện ở trường. Những kiến thức, kinh nghiệm mà
các quý thầy cô chỉ dạy đã giúp nhóm thực hiện có nền tảng vững chắc để hồn
thành chương trình học và đồ án tốt nghiệp một cách tốt đẹp.
Nhóm xin gửi lời cảm ơn đặc biệt đến thầy Nguyễn Thanh Hải đã tận tình
hướng dẫn, góp ý và tạo điều kiện để nhóm thực hiện có thể hoàn thành đề tài này
một cách tốt nhất.
Đề tài tuy được thực hiện với sự cẩn thận và cố gắng của nhóm nhưng vẫn
khơng thể tránh khỏi thiếu sót, kính mong nhận được sự góp ý của các q thầy cơ
để nhóm thực hiện rút ra được nhiều bài học kinh nghiệm quý báu qua đồ án này.
Nhóm thực hiện đề tài:
Nguyễn Thành Tâm
Hồ Minh Thái

Trang i

do an



TĨM TẮT
Cơng nghệ kỹ thuật điện tử nói chung hay cơng nghệ khơng dây nói riêng
đang ngày càng đóng vai trị quan trọng giúp con người có thể tạo ra những sản
phẩm mới, đa năng, hiện đại trong hầu hết các lĩnh vực như công nghiệp, nông
nghiệp, dịch vụ, y tế, quốc phòng,… Dựa trên những kiến thức đã học trong chương
trình đào tạo và ngồi cuộc sống thực tiễn, nhóm thực hiện đề tài đã quyết định
nghiên cứu, thiết kế và thi cơng một mơ hình thu thập, giám sát thông số và điều
khiển thiết bị thông qua hệ thống nút nhấn và sóng điện thoại di động dành cho hồ
ni cá. Mơ hình hệ thống được thiết kế có hai chương trình điều khiển tự động và
chương trình điều khiển bằng tay tùy theo nhu cầu sử dụng của con người.
Để giải quyết các yêu cầu và vấn đề của mơ hình, nhóm thực hiện tiến hành
xem xét các phương pháp lựa chọn, tính tốn, thiết kế phần cứng mạch điện tử và
phần mềm của hệ thống. Về phần cứng, nhóm lựa chọn Board vi xử lí Arduino
Mega 2560 làm bộ trung tâm xử lý kết nối các mạch cảm biến nhiệt độ nước và độ
pH, mạch thời gian thực DS1307, mạch giao tiếp từ xa Module Sim800L, mạch nút
nhấn – hiển thị LCD và mạch kích relay điều khiển thiết bị. Bên cạnh đó, nhóm
cũng thiết kế một mạch báo mất nguồn và chuyển nguồn pin để dự phòng cho
trường hợp mất điện hệ thống. Về phần mềm, nhóm đã nghiên cứu và thiết kế một
giao diện hiển thị trên màn hình LCD để người dùng có thể giám sát thông tin dữ
liệu và điều khiển thiết bị. Dữ liệu được giám sát gồm có nhiệt độ nước, độ pH, giờ
hẹn bật tắt và trạng thái hoạt động của các thiết bị. Người dùng cịn có thể tương tác
với giao diện qua hệ thống nút nhấn để cài đặt và chỉnh sửa giờ hẹn bật tắt tự động
thủ cơng các thiết bị. Ngồi ra, hệ thống được lập trình có thể tự động gửi tin nhắn
điện thoại cảnh báo về dữ liệu cảm biến sau đó phát tín hiệu điều khiển cho các thiết
bị giúp kiểm sốt khi giá trị vượt ngưỡng.
Mơ hình đề tài sau khi hoàn thành đã đáp ứng được phần lớn yêu cầu đề ra
và tính đa năng của hệ thống tuy nhiên vẫn còn những mặt hạn chế về sự chắc chắn,
ổn định, tính thẩm mỹ và hiệu quả áp dụng thực tiễn.


Trang ii

do an


ABSTRACT
Electronic Technology in general and Wireless Technology in particular
have been importantly contributing to help people create new, modern,
multifunctional products in industry, agriculture, service, healthcare and military,…
Based on knowledge achieved in study program and real life, our group decided to
research, design and build a model that could collect, monitor data and control
devices via buttons system and telephone system. The model is specially designed
for aquarium and to have both manual program and auto program depend on user’s
demand.
To resolve the model’s requirements and problems, our group has considered
some of the choices, computations, designs of our system’s electronic circuit and
programs. About electronic circuit, our group chose the Arduino Mega 2560 as the
“central processing unit” connecting to sensors, IC DS1307, Module Sim800L,
buttons-LCD system and relay circuit. In addtion, our group also designed a circuit
which could alert the power failure and pin power transition. About programs, our
group investigated and designed a LCD interface program for user to monitor the
data and control devices. The data monitored here include temperature, pH, setting
time and devices operating status. The user can also interact with the LCD interface
program via buttons system to set and edit time to turn on/off devices. Furthermore,
the system was programmed to automatically send phone messages alerting about
sensors data and then control devices itself to handle the situation when the value
becomes too high.
The completed model has fulfilled most of the requirements and the system’s
multifunction but there are still disadvantages about reliability, stability, esthetics
and reality.


Trang iii

do an


MỤC ỤC
ỜI CẢM ƠN .............................................................................................................i
TÓM TẮT ................................................................................................................. ii
ABSTRACT ............................................................................................................. iii
D NH MỤC HÌNH ẢNH VÀ BẢNG BIỂU..........................................................vi
CHƯƠNG 1: TỔNG QU N .................................................................................... 1
1.1. Giới thiệu tình hình nghiên cứu hiện nay, lí do chọn đề tài .............................1
1.2. Mục tiêu của đề tài ...........................................................................................1
1.3. Tính cấp thiết của đề tài ...................................................................................2
1.4. Đối tượng và phạm vi nghiên cứu ....................................................................2
1.5. Giới hạn của đề tài ............................................................................................2
1.6. Bố cục của Báo cáo Đồ án ................................................................................2
CHƯƠNG 2: TÍNH T ÁN VÀ THIẾT KẾ PHẦN CỨNG HỆ THỐNG ........... 4
2.1. Mô tả hệ thống ..................................................................................................4
2.2. Sơ đồ khối của hệ thống ...................................................................................4
2.3. Nguyên lý hoạt động của hệ thống ...................................................................5
2.4. Tính tốn, thiết kế các khối ..............................................................................6
2.4.1. Khối xử lí trung tâm ..................................................................................6
2.4.2. Khối kích relay điều khiển thiết bị ............................................................8
2.4.3. Khối cảm biến ...........................................................................................9
2.4.4. Khối thời gian thực .................................................................................12
2.4.5. Khối giao tiếp từ xa .................................................................................14
2.4.6. Khối nút nhấn và hiển thị LCD ...............................................................16
2.4.7. Khối nguồn ..............................................................................................17

2.4.7.1. Mạch chuyển nguồn Pin cho Khối nguồn ........................................17
2.4.7.2. Mạch báo mất điện ...........................................................................19
CHƯƠNG 3: THIẾT KẾ PHẦN MỀM HỆ THỐNG ......................................... 20
3.1. Giao diện LCD ...............................................................................................20

Trang iv

do an


3.2. Giải thuật cho chương trình nút nhấn .............................................................21
3.3. Giải thuật chương trình tự động điều khiển các thiết bị giờ hẹn ....................25
3.4. Giải thuật chương trình tự động gửi tin nhắn cảnh báo và điều khiển relay
theo nhiệt độ nước .................................................................................................27
3.5. Giải thuật đo cảm biến nhiệt độ nước ............................................................28
3.6. Giải thuật đo cảm biến pH ..............................................................................28
3.7. Giải thuật chương trình cho Module Sim800L ..............................................30
3.7.1. Giải thuật chương trình cấu hình Module Sim800L ...............................30
3.7.2 Giải thuật chương trình con Module Sim800L gửi tin nhắn ....................32
CHƯƠNG 4: KẾT QUẢ, HƯỚNG DẪN SỬ DỤNG, KIỂM TR , ĐÁNH GIÁ,
NHẬN XÉT .............................................................................................................. 33
4.1. Hình ảnh mạch điện tử của hệ thống ..............................................................33
4.1.1. Mạch chính ..............................................................................................33
4.1.2. Mạch relay nối thiết bị ............................................................................34
4.1.3. Mạch chuyển nguồn và mạch báo mất điện ............................................35
4.2. Mơ hình hệ thống sau khi lắp ráp mạch .........................................................37
4.3. Hướng dẫn sử dụng nút nhấn và giao diện LCD ............................................40
4.4. Kiểm tra, đánh giá và nhận xét kết quả ..........................................................43
CHƯƠNG 5: KẾT UẬN VÀ HƯỚNG PHÁT TRIỂN ..................................... 45
5.1. Kết luận ..........................................................................................................45

5.1.1. Ưu điểm ...................................................................................................45
5.1.2. Nhược điểm .............................................................................................45
5.2. Hướng phát triển .............................................................................................45
TÀI IỆU TH M KHẢ ...................................................................................... 46
PHỤ ỤC ................................................................................................................. 47

Trang v

do an


D NH MỤC HÌNH ẢNH VÀ BẢNG BIỂU
Hình 2.1 Sơ đồ khối hệ thống .....................................................................................5
Hình 2.2. Arduino Mega 2560 ....................................................................................7
Hình 2.3. Khối xử lý trung tâm Arduino Mega 2560 .................................................8
Hình 2.4. Sơ đồ kết nối Khối kích relay .....................................................................8
Hình 2.5. Cảm biến DS18B20.....................................................................................9
Hình 2.6. Sơ đồ kết nối cảm biến DS18B20 .............................................................10
Hình 2.7. Bộ cảm biến ph DFRobot ..........................................................................11
Hình 2.8. Sơ đồ kết nối cảm biến pH ........................................................................12
Hình 2.9. Hai gói cấu tạo chip DS1307 ....................................................................12
Hình 2.10. Tổ chức bộ nhớ của IC DS1307 ..............................................................13
Hình 2.11. Sơ đồ kết nối mạch thời gian thực ..........................................................14
Hình 2.12. Module Sim800L ....................................................................................14
Hình 2.13. Sơ đồ kết nối Module Sim ......................................................................15
Hình 2.14. Mạch nút nhấn .........................................................................................16
Hình 2.15. Mạch kết nối LCD ...................................................................................16
Hình 2.16. Khối nguồn ..............................................................................................17
Hình 2.17. Mạch chuyển nguồn cho Khối nguồn .....................................................18
Hình 2.18. Pin sạc 18650 Panasonic 3.7V- 2A .........................................................18

Hình 2.19. Mạch báo mất điện ..................................................................................19
Hình 3.1. Khái quát phần mềm hệ thống ..................................................................20
Hình 3.2. Giao diện LCD phần mềm hệ thống .........................................................21
Hình 3.3. Lưu đồ giải thuật cho phím chuyển trang giao diện chính .......................22
Hình 3.4. Lưu đồ giải thuật cho phím Mode .............................................................23
Hình 3.5. Lưu đồ giải thuật chương trình phím Up ..................................................24
Hình 3.6. Lưu đồ giải thuật chương trình tự động bật máy cho ăn theo giờ hẹn ......25
Hình 3.7. Lưu đồ giải thuật chương trình tự động điều khiển đèn theo giờ hẹn .......26
Hình 3.8. Lưu đồ giải thuật chương trình tự động điều khiển relay theo nhiệt độ
nước ...........................................................................................................................27
Hình 3.9. Lưu đồ giải thuật đo cảm biến nhiệt độ nước ...........................................28
Hình 3.10. Lưu đồ giải thuật đo cảm biến pH...........................................................29
Hình 3.11. Lưu đồ giải thuật chương trình cấu hình Module Sim800L ...................31
Hình 3.12. Lưu đồ giải thuật chương trình con Module Sim800L gửi tin nhắn .......32
Hình 4.1. Mạch in mạch chính ..................................................................................33
Hình 4.2. Mạch chính sau khi thi công .....................................................................33

Trang vi

do an


Hình 4.3. Mạch chính sau khi thi cơng .....................................................................34
Hình 4.4. Mạch chính sau khi thi cơng .....................................................................34
Hình 4.5. Mạch in mạch relay nối thiết bị ................................................................35
Hình 4.6. Mạch relay sau khi thi cơng ......................................................................35
Hình 4.7. Mạch in mạch chuyển nguồn ....................................................................36
Hình 4.8. Mạch chuyển nguồn sau khi thi cơng........................................................36
Hình 4.9. Mạch báo mất điện ....................................................................................37
Hình 4.10. Mơ hình hệ thống nhìn từ trên xuống .....................................................37

Hình 4.11. Mơ hình hệ thống nhìn từ mặt bên ..........................................................38
Hình 4.12. Mơ hình hệ thống nhìn từ trên xuống .....................................................39
Hình 4.13. Mặt trên mơ hình hệ thống ......................................................................39
Hình 4.14. Mặt trong mơ hình hệ thống ....................................................................40
Hình 4.15. Nút nhấn trên mạch .................................................................................41
Hình 4.16. Trang khởi động giao diện LCD .............................................................41
Hình 4.17. Giao diện hiển thị thời gian hiện tại, nhiệt độ nước và độ pH ................42
Hình 4.18. Giao diện cài đặt hẹn giờ bật máy cho ăn, bật/tắt đèn, máy lọc, máy sủi
oxi ..............................................................................................................................42
Hình 4.19. Trạng thái hoạt động các thiết bị .............................................................43
Hình 4.20. Giao diện cài đặt ngưỡng cảnh báo tin nhắn cho nhiệt độ nước và độ ph,
điều khiển thiết bị qua nút nhấn ................................................................................43
Bảng 2.1. Thông số kĩ thuật cảm biến pH DFRobot .................................................11
Bảng 2.2. Thông số kĩ thuật của Module Sim800L ..................................................15

Trang vii

do an


CHƯƠNG 1: TỔNG QU N
1.1. Giới thiệu tình hình nghiên cứu hiện nay, lí do chọn đề tài
Việc nghiên cứu và ứng dụng công nghệ kỹ thuật điện tử vào các hệ thống
giám sát – điều khiển nông nghiệp nay đã khơng cịn là điều mới mẻ đối với Việt
Nam nhưng vẫn là một trong những vấn đề quan trọng cần được xúc tiến thực hiện
để góp phần phát triển nền nơng nghiệp cịn mang nặng tính chất thủ cơng của nước
ta, nhất là trong bối cảnh nông nghiệp vẫn cịn đóng vai trị khơng nhỏ trong tồn bộ
nền kinh tế của Việt Nam.
Một trong những lĩnh vực nông nghiệp được quan tâm phát triển hàng đầu là
nuôi trồng thủy sản. “Tổng sản lượng thủy sản ước đạt hơn 6,7 triệu tấn, trong đó,

khai thác gần 3,1 triệu tấn, ni trồng trên 3,6 triệu tấn, diện tích ni trồng đạt 1,3
triệu ha, kim ngạch xuất khẩu khoảng 7 tỷ USD. Thủy sản vẫn là mũi nhọn của
ngành nông nghiệp” (Ngành thủy sản tổng kết hoạt động năm 2016,
www.thuysanvietnam.com.vn). Ngành này mỗi năm mang lại lợi nhuận tương đối
ổn định cho các hộ nơng dân nhưng có lúc vẫn xảy ra tình trạng lỗ nặng do các sinh
vật thủy sản đột ngột chết hàng loạt khơng thể kiểm sốt. Điển hình là các vụ như
“Cá chết hàng loạt tại khu nuôi trồng thủy sản huyện Phú Quý” (2016,
www.phuquy.binhthuan.gov.vn) hay “Cá nuôi lồng trên sông Mã chết hàng loạt”
(2017, www.dantri.com.vn). Nắm bắt được những khó khăn này, các nhóm kĩ sư,
các cơng ty công nghệ đã bắt đầu thực hiện nghiên cứu và ứng dụng các hệ thống
mạch điện tử (vi điều khiển, cơng nghệ khơng dây,…) có chức năng giám sát thông
số chất lượng nước, điều khiển các thiết bị hỗ trợ, cả ở gần và từ xa, giúp người
nông dân theo dõi kịp thời chất lượng môi trường sống của các sinh vật thủy sản, từ
đó đưa ra phương án xử lý thích hợp, giảm thiểu các biến cố bất ngờ.
Với tình hình nghiên cứu như vậy, nhóm thực hiện hi vọng đề tài “Thiết kế
và thi công hồ cá đa năng sử dụng board Arduino Mega 2560” có thể nghiên cứu,
tìm hướng giải quyết hiệu quả các vấn đề thực tiễn của các hệ thống giám sát – điều
khiển nuôi trồng thủy sản hiện nay, thông qua việc thi cơng và hồn thiện một mơ
hình mini.
1.2. Mục tiêu của đề tài
Đề tài thiết kế và thi cơng mơ hình hồ cá đa năng tự động sử dụng board vi
điều khiển Arduino Mega 2560 thực hiện các công việc như hẹn giờ cho cá ăn, lọc
nước, bật tắt đèn. Ngoài ra, đề tài cịn cho phép người dùng có thể giám sát mực

1

do an


nước, chất lượng môi trường nước như nhiệt độ nước, độ pH và điều khiển các thiết

bị từ xa thông qua điện thoại di động.
1.3. Tính cấp thiết của đề tài
Qua tìm hiểu các đề tài đồ án của các cựu sinh viên, nhóm nhận thấy phần
lớn đề tài sử dụng các vi điều khiển 8 bit như các vi điều khiển họ PIC, AVR,…
Các vi điều khiển này rất hạn chế về số lượng cổng giao tiếp (cả về các chuẩn giao
tiếp đặc biệt và các cổng tín hiệu số) do đó sẽ khơng đáp ứng được u cầu đa năng
mà đề tài đặt ra. Nhóm nhận thấy Board vi điều khiển Arduino Mega 2560 vừa có
số lượng cổng giao tiếp đáp ứng u cầu, vừa có quy mơ vừa phải và giá thành phù
hợp để được chọn làm Board xử lý trung tâm cho hệ thống. Hơn nữa, đây là một
Board vi điều khiển đang rất phổ biến, cộng đồng nghiên cứu về Arduino đang được
phát triển mạnh mẽ.
Đề tài cũng nghiên cứu và đưa vào ứng dụng Module Sim mới nhất, đây là
một trong những loại Module hiện đại, phù hợp cho chức năng giám sát từ xa qua
điện thoại di động. Đề tài hướng đến sự đa năng cho hệ thống, giúp người dùng có
thể điều khiển được hầu hết các thiết bị hỗ trợ quan trọng nhất cho hồ cá.
1.4. Đối tượng và phạm vi nghiên cứu
 Các yếu tố ảnh hưởng đến chất lượng sống của loài cá.
 Board vi điều khiển Arduino Mega 2560.
 Giao tiếp cảm biến đo nhiệt độ nước, độ pH, đo khoảng cách.
 Lập trình hẹn giờ điều khiển thiết bị với module thời gian thực.
 Giao tiếp Module Sim để giám sát các thông số.
1.5. Giới hạn của đề tài
 Đề tài thực hiện trên mơ hình.
 Cảm biến pH được sử dụng có khoảng nhiệt độ nước đo từ 0 – 60 độ C, tốc
độ phản ứng < 1 phút.
 Cảm biến đo nhiệt độ nước DS18B20 được sử dụng có ngưỡng nhiệt độ
nước từ -10 đến 125 độ C.
1.6. Bố cục của Báo cáo Đồ án
Chương 1: Tổng Quan
Tổng quan, lí do lựa chọn đề tài, mục tiêu và giới hạn đề tài, đối tượng và phạm vi

nghiên cứu.
Chương 2: Tính tốn và thiết kế phần cứng hệ thống
2

do an


Chương này mô tả chi tiết về phần cứng hệ thống, sơ đồ khối, sơ đồ mạch, giải
thích mạch nguyên lý, các phương pháp tính tốn và lựa chọn linh kiện cho phần
cứng hệ thống.
Chương 3: Thiết kế phần mềm
Chương 3 trình bày và giải thích giải thuật của các chương trình chính, chương trình
con phần mềm hệ thống.
Chương 4: Kết quả, hướng dẫn sử dụng, kiểm tra, đánh giá, nhận xét
Chương 4 trình bày hình ảnh kết quả mạch và mơ hình của hệ thống. Kiểm tra, đánh
giá và nhận xét hệ thống.
Chương 5: Kết luận và hướng phát triển
Chương 5 trình bày kết luận và hướng phát triển của đồ án.

3

do an


CHƯƠNG 2: TÍNH T ÁN VÀ THIẾT KẾ PHẦN CỨNG HỆ
THỐNG
Chương này trình bày về mơ tả khái qt hệ thống, sơ đồ khối, nguyên lý
hoạt động của hệ thống và tính tốn, thiết kế phần cứng hệ thống.
2.1. Mơ tả hệ thống
Hệ thống được thiết kế có các tính năng sau:

 Cho phép người dùng tùy chỉnh hẹn giờ tự động bật tắt đèn hồ cá, lọc nước,
cho cá ăn, bật máy sủi oxi.
 Đo độ pH, nhiệt độ nước bằng cảm biến và hiển thị lên LCD cho người dùng
theo dõi. Tự động gửi tin nhắn cảnh báo cho người dùng nếu nhiệt độ nước và
độ pH vượt cao quá hoặc xuống mức cho phép.
 Tự động bật tắt quạt làm mát và que sưởi để kiểm soát nhiệt độ nước ở mức
thích hợp. Ngưỡng nhiệt độ nước và độ pH có thể được cài đặt qua nút nhấn và
giao diện LCD.
 Cho phép người dùng điều khiển các thiết bị qua hệ thống nút nhấn gắn trên
hồ cá.
2.2. Sơ đồ khối của hệ thống
Hệ thống được thiết kế gồm có 7 phần chính được mơ tả như hình 2.1.
 Khối xử lý trung tâm: board Arduino Mega 2560 xử lý tín hiệu nhận được từ
khối cảm biến, giao tiếp với Module Sim800L và Khối thời gian thực, hiển
thị dữ liệu xử lý lên LCD và gửi tín hiệu cho Khối kích relay điều khiển thiết
bị.
 Khối cảm biến: gồm 2 cảm biến là cảm biến nhiệt độ nước DS18B20 và cảm
biến pH của hãng DFRobot.
 Khối thời gian thực: là mạch IC thời gian thực DS1307 cung cấp thời gian
thực cho board Arduino để so sánh với thời gian hẹn giờ được cài đặt bởi
người dùng.

4

do an


Khối nút nhấn
và hiển thị LCD
Khối cảm biến

Khối
Nguồn

Khối thời
gian thực

Khối xử lí
trung tâm

Khối giao
tiếp từ xa

Khối kích Relay
điều khiển thiết bị

Hình 2.1 Sơ đồ khối hệ thống
 Khối giao tiếp từ xa: gồm Module Sim800L và Điện thoại di động của người
dùng, có chức năng: gửi tin nhắn cảnh báo về dữ liệu cảm biến tới điện thoại
của người dùng, gửi tin nhắn cảnh báo mất điện.
 Khối kích relay điều khiển thiết bị: mạch nhận tín hiệu điều khiển từ board
Arduino kích hoạt cho các thiết bị hoạt động.
 Khối nguồn: gồm mạch nguồn sử dụng IC LM2576 để cho ra điện áp +4.5V
DC - dòng 3A, mạch chuyển nguồn Pin khi mất điện và mạch báo mất điện.
2.3. Nguyên lý hoạt động của hệ thống
Khi được cấp nguồn, board xử lý Arduino Mega 2560 lập tức đọc dữ liệu
gửi về từ cảm biến nhiệt độ nước DS18B20 và cảm biến pH, hiển thị lên LCD. Khi
người dùng thực hiện cài đặt hẹn giờ bật tắt cho các thiết bị, bằng cách tương tác
qua nút nhấn và giao diện LCD, board xử lý sẽ lưu lại giờ hẹn vào các biến, khi so
sánh thấy thời gian hẹn giờ bằng với thời gian thực đọc được từ IC thời gian thực
DS1307, board xử lý ra tín hiệu cho Khối kích relay điều khiển thiết bị như mong

muốn, điều này cũng xảy ra khi người dùng bật tắt thủ công các thiết bị ngay lập tức
bằng các nút nhấn trên mạch. Đồng thời, board xử lý cũng kiểm tra trạng thái hoạt
động của các thiết bị và hiển thị lên LCD cho người dùng theo dõi.

5

do an


Bên cạnh đó, board xử lý thường xuyên kiểm tra nhiệt độ nước và độ pH
hiện tại của nước. Nếu giá trị này vượt quá hoặc xuống quá ngưỡng cho phép thì sẽ
phát tín hiệu cho Module Sim800L thực hiện gửi tin nhắn cảnh báo cho người dùng,
đồng thời tự động bật/tắt quạt làm hoặc que sưởi để kiểm soát nhiệt độ nước ở mức
thích hợp cho cá.
2.4. Tính tốn, thiết kế các khối
2.4.1. Khối xử lí trung tâm
Vi điều khiển là bộ não xử lý trung tâm của hệ thống nên việc lựa chọn vi
điều khiển thích hợp là điều rất quan trọng. Nhóm đã chọn board Arduino Mega
2560 cho đề tài dù trước đó có nhiều phương án cho vị trí này như: PIC, board
ARM, board Raspberry Pi.
Vi điều khiển PIC là họ vi điều khiển giá thành thấp, dễ tiếp cận, tuy nhiên
lại hạn chế về số lượng các cổng giao tiếp. Trong khi PIC16F887A chỉ có 1 cổng
UART thì Arduino có tới 4 cổng UART, đề tài đã sử dụng 1 cổng UART cho
Module Sim, do đó nếu muốn sử dụng thêm một số module hay cảm biến kết nối
qua UART thì Arduino rõ ràng là một sự lựa chọn tốt hơn. Hơn nữa, đề tài của
nhóm sử dụng khá nhiều thiết bị cũng như cảm biến (7 thiết bị, 3 cảm biến,
LCD,..v..v..), do đó nếu sử dụng PIC thì đề tài sẽ khơng thể có đủ cổng giao tiếp
ngoại vi để sử dụng.
Board ARM hay Raspberry Pi cũng là các phương án lí tưởng cho đề tài. Tuy
nhiên, 2 board này có giá thành rất cao (gấp nhiều lần Arduino) và do đó, nó được

thiết kế có sẵn rất nhiều cổng giao tiếp ngoại vi mà đề tài khơng dùng đến, gây ra sự
lãng phí khơng cần thiết, với Arduino thì chúng ta chỉ cần mua các shield mạch giao
tiếp cần thiết và gắn trực tiếp lên trên board Arduino. Hơn nữa, board ARM lại khó
tiếp cận và lập trình hơn so với Arduino vì các thư viện phần mềm cho board này là
không nhiều, người dùng phải tự viết hoặc chỉnh sửa rất nhiều từ các thư viện khác.
Các thư viện phần mềm mà nhà xản xuất hay cộng đồng Arduino tạo ra là vơ
cùng lớn và đa dạng, chúng ta có thể sử dụng các thư viện này để hỗ trợ lập trình
giao tiếp cảm biến, điều khiển động cơ,… mà không cần phải tìm hiểu từ đầu, giúp
tiết kiệm thời gian lập trình cho các dự án đề tài lớn.

6

do an


Hình 2.2. Arduino Mega 2560
Arduino Mega 2560 (hình 2.2) là Board vi xử lý sử dụng chip Atmega2560, gồm có
các chân giao tiếp như sau:
 5 Chân GND, 3 chân +5V, 1 chân +3.3V
 1 nút reset
 16 chân analog
 4 chân UART
 54 chân digital (trong đó có 15 chân có thể được sử dụng như những chân
PWM là từ chân số 2 → 13 và chân 44, 45, 46).
 6 ngắt ngoài: chân 2 (interrupt 0), chân 3 (interrupt 1), chân 18 (interrupt 5),
chân 19 (interrupt 4), chân 20 (interrupt 3), và chân 21 (interrupt 2).
 16 chân vào analog (từ A0 đến A15).
 6 Chân lập trình ISP
và nhiều thành phần khác...


7

do an


Hình 2.3. Khối xử lý trung tâm Arduino Mega 2560
2.4.2. Khối kích relay điều khiển thiết bị

Hình 2.4. Sơ đồ kết nối Khối kích relay
Khối kích relay sử dụng transistor C1815 để kích cho relay hoạt động (xem
hình 2.21). Chức năng của các linh kiện trong mạch như sau:
 Điện trở 10K có tác dụng ổn định cực B của transistor C1815.

8

do an


 Led D2 có tác dụng báo tín hiệu điều khiển từ Arduino, vừa có tác dụng cách
ly dịng điện sự cố trả về gây hư hỏng mạch Arduino. Ở đây ta khơng cần
mắc điện trở hạn dịng cho Led vì dịng tín hiệu ngõ ra Arduino có giá trị rất
nhỏ.
 Diode 1N4007 được song song với cuộn dây relay để dập xung ngược, bảo
vệ transistor đóng mở dịng cho relay. Khi cuộn dây relay bị ngắt dòng điện
sẽ phát sinh dòng điện cảm ứng cùng chiều với dòng ban đầu, dịng điện này
sẽ được diode dập do nó được phân cực thuận, do đó mối nối CE của
transistor khơng bị phá hủy bởi dòng điện cảm ứng.

2.4.3. Khối cảm biến


Hình 2.5. Cảm biến DS18B20
DS18B20 (hình 2.9) là cảm biến kĩ thuật số đo nhiệt độ nước giao tiếp theo
chuẩn 1 dây (1-wire), có chức năng cảnh báo nhiệt độ nước khi vượt ngưỡng và có
thế cấp nguồn từ chân data (chế độ parasite power), khơng bị suy hao tín hiệu
đường dây dài.
Cảm biến nhiệt độ nước DS18B20 có mã nhận diện lên đến 64-bit, vì vậy ta
có thể đo nhiệt độ nước với nhiều con DS18B20 mà chỉ dùng 1 dây dẫn duy nhất để
giao tiếp với các IC này.
Ứng dụng: đo nhiệt độ nước bên trong các tòa nhà, thiết bị, máy móc, hệ
thống giám sát; đo những nơi cách xa board điều khiển, hoặc trong môi trường ẩm
ướt.
Thông số kỹ thuật:
+ Điện áp cấp: 3~5v.

9

do an


+ Dải đo: Có thể đo nhiệt độ nước trong khoảng -55 -> +125°C. Với khoảng
nhiệt độ nước là -10°C to +85°C thì độ chính xác là ±0.5°C, ±0.25°C, ±0.125°C,
±0.0625°C theo số bit cấu hình.
+ Cung cấp nhiệt độ nước với độ phân giải 9, 10, 11, 12 bit, tùy theo sử
dụng. Trong trường hợp khơng cài đặt thì nó tự động đo ở chế độ 12 bit.
+ Chuẩn giao tiếp 1 Wire.
+ Thời gian chuyển đổi nhiệt độ nước tối đa là 750ms cho mã hóa 12 bit.
+ Kích thước: 90cm - đường kính đầu cảm biến: 4mm.
+ Dịng tiêu thụ tại chế độ nghỉ rất nhỏ.

Hình 2.6. Sơ đồ kết nối cảm biến DS18B20

Sơ đồ kết nối cảm biến nhiệt độ nước với Board Arduino được cho như hình
2.10. Trên thị trường có các loại cảm biến nhiệt độ nước như LM35, TMP36,…
nhưng để đo nhiệt độ nước nước và so sánh về độ ổn định thì DS18B20 là phương
án tối ưu nhất cho hệ thống, sai số chỉ 0.5 độ C. Hơn nữa, 2 cảm biến LM35 và
TMP36 giao tiếp qua analog, DS18B20 lại dùng cơ chế truyền tín hiệu 1-wire, cơ
chế này cho phép chúng ta đọc nhiều con DS18B20 trên cùng 1 dây.
Ta cần mắc 1 con điện trở kéo lên 4.7K giữa nguồn 5V và chân tín hiệu của
DS18B20, mục đích là để ngõ vào vi điều khiển khơng bị nhiễu khi khơng có tín
hiệu truyền, giá trị điện trở dựa theo các yếu tố sau:
Giá trị này không được quá thấp để tránh lãng phí dịng điện cũng như khơng
làm ảnh hưởng đến toàn mạch.
Giá trị điện trở kéo lên này kết hợp với trở kháng của đầu vào vi điều khiển
tạo ra mạch phân áp, điện áp tại đầu vào này sẽ phụ thuộc vào giá trị điện trở kéo
lên. Nếu giá trị này quá cao sẽ dẫn đến sụt áp đầu vào nhiều, vi điều khiển khơng
phân biệt được chính xác trạng thái đầu vào.

10

do an


Thông thường ta chọn giá trị điện trở kéo lên RPULL-UP khoảng bằng 1/10 trở
kháng đầu vào của vi điều khiển (nằm trong khoảng 100kohm – 1Mohm):
( 2.1)

Từ đó, ta nên chọn 4.7kohm là thỏa điều kiện.

Hình 2.7. Bộ cảm biến ph DFRobot
Bộ cảm biến pH được sản xuất bởi hãng DFRobot và được thiết kế đặc biệt
cho các board Arduino. Đây là loại cảm biến pH sử dụng cho phịng thí nghiệm,

gồm có LED báo tín hiệu, đầu nối BNC và một module chuyển đổi analog kèm
theo, ta đưa ngõ ra module này vào một ngõ vào analog của board Arduino để xử lý
dữ liệu, từ đó xuất ra được giá trị pH (như được mô tả ở sơ đồ kết nối hình 2.12).
Bảng 2.1. Thơng số kĩ thuật cảm biến pH DFRobot
Thơng số

Giá trị

Nguồn cấp

+5VDC

Tín hiệu trả về

Analog

Khoảng đo pH

0-14 pH

Khoảng
nước đo

nhiệt

độ 0-60 độ C

11

do an



Độ chính xác

0.1 pH (25 độ C)

Tốc độ phản ứng

<1 phút

Hình 2.8. Sơ đồ kết nối cảm biến pH
2.4.4. Khối thời gian thực
DS1307 là IC đồng hồ thời gian thực (RTC: Real-time clock), khái niệm thời
gian thực nghĩa là thời gian tuyệt đối mà con người đang sử dụng, tình bằng giây,
phút, giờ… DS1307 được cấu tạo bởi 2 gói SOIC và DIP có 8 chân (như trong hình
2.13).

Hình 2.9. Hai gói cấu tạo chip DS1307







IC DS1307 có các chân giao tiếp như sau:
X1 và X2: là 2 ngõ kết nối với 1 thạch anh 32.768KHz làm nguồn tạo dao
động cho chip.
VBAT: cực dương của một nguồn pin 3V nuôi chip.
GND: chân mass chung cho cả pin 3V và Vcc.

VCC: nguồn cho giao diện I2C, thường là +5V và dùng chung với vi điều
khiển. Nếu VCC không được cấp nguồn nhưng VBAT được cấp thì DS1307
vẫn đang hoạt động (nhưng không ghi và đọc được).
SQW/OUT: một ngõ phụ tạo xung vuông (Square Wave / Output Driver), tần
số của xung được tạo có thể được lập trình. Chân này hầu như không liên
quan đến chức năng của DS1307 là đồng hồ thời gian thực, ta bỏ trống chân
này khi nối mạch.

12

do an


 SCL và SDA là 2 đường giao xung nhịp và dữ liệu của giao diện I2C.
Cấu tạo bên trong DS1307 bao gồm một số thành phần như mạch nguồn,
mạch dao động, mạch điều khiển logic, mạch giao điện I2C, con trỏ địa chỉ và
các thanh ghi (hay RAM). Bộ nhớ DS1307 có tất cả 64 thanh ghi 8-bit được
đánh địa chỉ từ 0 đến 63 (từ 0x00 đến 0x3F theo hệ hexadecimal). Tuy nhiên,
thực chất chỉ có 8 thanh ghi đầu là dùng cho chức năng “đồng hồ” (gọi là RTC)
cịn lại 56 thanh ghi bỏ trống có thể được dùng chứa biến tạm như RAM nếu
muốn. Bảy thanh ghi đầu tiên chứa thông tin về thời gian của đồng hồ bao gồm:
giây (SECONDS), phút (MINUTES), giờ (HOURS), thứ (DAY), ngày (DATE),
tháng (MONTH) và năm (YEAR). Việc ghi giá trị vào 7 thanh ghi này tương
đương với việc cài đặt thời gian khởi động cho RTC. Việc đọc giá trị từ 7 thanh
ghi là đọc thời gian thực mà chip tạo ra. Ví dụ, lúc khởi động chương trình,
chúng ta ghi vào thanh ghi “giây” giá trị 42, sau đó 12s chúng ta đọc thanh ghi
này, chúng ta thu được giá trị 54. Thanh ghi thứ 8 (CONTROL) là thanh ghi
điều khiển xung ngõ ra SQW/OUT (chân 6). Tuy nhiên, do chúng ta khơng dùng
chân SQW/OUT nên có thề bỏ qua thanh ghi thứ 8. Tổ chức bộ nhớ của DS1307
được trình bày trong hình 2.15.


Hình 2.10. Tổ chức bộ nhớ của IC DS1307

13

do an


Hình 2.11. Sơ đồ kết nối mạch thời gian thực
Sơ đồ kết nối mạch thời gian thực với board Arduino được cho như hình
2.16. Ta cần mắc vào đây 2 con điện trở kéo lên vào 2 chân SCL và SDA, tác dụng
và cách lựa chọn giá trị tương tự như điện trở kéo lên cho cảm biến nhiệt độ nước
DS18B20. Thạch anh 32768 kHz mắc vào 2 chân X1 và X2 làm nguồn tạo dao
động cho DS1307.
2.4.5. Khối giao tiếp từ xa

Hình 2.12. Module Sim800L
Khối giao tiếp từ xa sử dụng Module GSM Sim800L có chức năng nhắn tin

14

do an


SMS, nghe, gọi, GPRS,…, kích thước nhỏ nhất trong các loại Module Sim (25 mm
x 22 mm). Module được điều khiển bởi bộ tập lệnh AT, chân kết nối dùng rào đực
thông dụng chuẩn 100mil.
Bảng 2.2. Thông số kĩ thuật của Module Sim800L
Thông số
Giá trị

Nguồn cấp
+3.7 đến +4.2VDC
Khe cắm SIM
micro SIM
Dòng khi ở chế độ chờ 10 mA
Dòng khi hoạt động
100 mA đến 1A
Hỗ trợ 4 băng tần phổ biến
Chức năng các chân giao tiếp của Module Sim800L
 VCC: Nguồn vào từ 3.7 – 4.2VDC.
 TXD: Chân truyền UART TX.
 RXD: Chân nhận UART TX.
 DTR: Chân UART DTR, thường không xài.
 SPKP, SPKN: ngõ ra âm thanh, nối với loa để phát âm thanh.
 MICP, MICN: ngõ vào âm thanh, phải gắn thêm Micro để thu âm thanh.
 Reset: Chân khởi động lại Sim800L (thường không xài).
 RING: báo có cuộc gọi đến.
 GND: Chân Mass, cấp 0V.

Hình 2.13. Sơ đồ kết nối Module Sim

15

do an


×