Professional Documents
Culture Documents
Đồ Án Mô Hình Hệ Thống Trồng Rau Tự Động
Đồ Án Mô Hình Hệ Thống Trồng Rau Tự Động
ĐỒ ÁN TỐT NGHIỆP
MÔ HÌNH HỆ THỐNG TRỒNG RAU TỰ ĐỘNG
Trình độ đào tạo : Đại Học Chính Quy
Ngành : Công Nghệ Kỹ Thuật Điện – Điện Tử
Chuyên ngành : Điều Khiển Và Tự Động Hóa
Giáo viên hướng dẫn: ThS. Lưu Hoàng
Sinh viên thực hiện : Lê Công Thành MSSV: 16031542
Ngô Minh Quyền MSSV: 16031472
Lớp : DH16TD
https://timtailieu.vn/
TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU CỘNG HOÀ XÃ HỘI CHỦ NGHĨA
KHOA CNKT - NNCNC VIỆT NAM
Độc Lập - Tự Do - Hạnh Phúc
https://timtailieu.vn/
NHẬN XÉT
(Của giáo viên hướng dẫn)
•Thái độ, tác phong và nhận thức trong quá trình thực hiện:
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
3
https://timtailieu.vn/
NHẬN XÉT
(Của giáo viên phản biện)
•Thái độ, tác phong và nhận thức trong quá trình thực hiện:
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
4
https://timtailieu.vn/
LỜI CẢM ƠN
Đầu tiên nhóm em xin gởi lời cảm ơn sâu sắc đến Thầy Lưu Hoàng - Giảng
viên bộ môn Điện - Điện Tử, đã tận tình giúp đỡ, hướng dẫn, giảng giải cho chúng
em trong lựa chọn đề tài cũng như trong quá trình thực hiện đề tài. Trong quá
trình thực hiện đồ án cũng đã xảy ra nhiều khó khăn, thiếu sót nhưng được sự hỗ
trợ và góp ý của Thầy nên nhóm đã hoàn thành được đồ án.
Trong suốt thời gian được theo học tại trường Đại học Bà Rịa Vũng Tàu, Tp.
Vũng Tàu, em đã nhận được nhiều sự quan tâm và giúp đỡ từ Thầy Cô và bạn bè.
Cảm ơn Hiệu Trưởng, cùng các quý thầy cô trường Đại học Bà Rịa – Vũng Tàu
đã hỗ trợ tận tình về trang thiết bị, phần mềm, cơ sở vật chất tạo điều kiện hoàn
thành đồ án. Với lòng biết ơn sâu sắc, em xin gửi lời cảm ơn tới quý Thầy Cô,
những người đã truyền lại cho em rất nhiều kinh nghiệm và kiến thức quý báu,
những sự giúp đỡ ấy đã tiếp thêm động lực cho em vững bước trên con đường
mình đã chọn. Và đặc biệt là Thầy, Cô khoa Điện - Điện tử đã truyền đạt kiến
thức, kinh nghiệm cũng như tạo những điều kiện tốt nhất để nhóm em hoàn thành
đề tài.
Xin cảm ơn các bạn cùng khóa, cùng khoa đã động viên, khích lệ, ủng hộ về
nhiều mặt góp phần làm nên thành công của đồ án này.
5
https://timtailieu.vn/
LỜI MỞ ĐẦU
Hiện nay, khoa học Công nghệ ngày càng đạt được những thành tựu to lớn,
kéo theo đó là sự phát triển vượt bậc trong các ngành nghề có ứng dụng khoa học
kỹ thuật. Đối với một nước mà nền nông nghiệp còn chiếm vai trò to lớn trong
nền kinh tế thì việc ứng dụng khoa học Công nghệ là điều cấp thiết và cần được
mở rộng. Nhằm giải quyết vấn đề này, nhờ sự giúp sức của tiến bộ về khoa học
kỹ thuật, các hệ thống giám sát, xử lý, cung ứng quá trình sản xuất.... ngày càng
hiện đại đã được đưa vào nông nghiệp và đặc biệt là các ứng dụng của Công nghệ
IOT đã góp phần tạo nên một môi trường sản xuất năng động, khoa học và giải
phóng sức lao động, tăng năng suất, mang lại hiệu quả kinh tế cao. Với mong
muốn nghiên cứu và tạo ra một hệ thống giám sát nông nghiệp tiện ích sử dụng
Công nghệ IOT, để góp phần đáp ứng nhu cầu trên và đóng góp thêm giải pháp
phát triển, nhóm quyết định chọn đề tài: “MÔ HÌNH HỆ THỐNG TRỒNG RAU
TỰ ĐỘNG”.
6
https://timtailieu.vn/
TÓM TẮT ĐỂ TÀI
Phương pháp thực hiện là dùng ESP32 xây dựng thành một khối điều khiển
trung tâm, dùng các module cảm biến: độ ẩm đất, nhiệt độ và độ ẩm không khí
thu thập dữ liệu từ môi trường canh tác gửi về ESP32, từ đó so sánh với thông số
đã cài đặt trước ESP32 sẽ điều khiển các thiết bị ngoại vi: máy bơm nước, van
điện. Bên cạnh đó ESP32 sẽ gửi dữ liệu lên ứng dụng Android điều khiển phạm
vi gần và Web thông qua ESP32 để điều khiển hệ thống từ xa.
Nội dung đề tài tập trung nghiên cứu phương thức giao tiếp giữa ESP32 với
các cảm biến độ ẩm đất, cảm biến nhiệt độ và độ ẩm không khí. Mô hình nhỏ
gọn, bố trí linh kiện hợp lí, dễ quan sát, sử dụng, đảm bảo tính an toàn và thẩm
mỹ.
Do thời gian, kiến thức và kinh nghiệm của nhóm còn có hạn nên sẽ không
thể tránh khỏi những sai sót. Nhóm em rất mong được sự giúp đỡ và tham khảo
ý kiến của thầy cô và các bạn nhằm đóng góp phát triển thêm đề tài.
7
https://timtailieu.vn/
MỤC LỤC
1
https://timtailieu.vn/
2. THI CÔNG HỆ THỐNG ........................... Error! Bookmark not defined.
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT - ĐÁNH GIÁ ....... Error! Bookmark not
defined.
1. KẾT QUẢ .................................................... Error! Bookmark not defined.
2. NHẬN XÉT ................................................. Error! Bookmark not defined.
3. ĐÁNH GIÁ .................................................. Error! Bookmark not defined.
CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ..... Error! Bookmark not
defined.
1. KẾT LUẬN ................................................. Error! Bookmark not defined.
2. HƯỚNG PHÁT TRIỂN ............................. Error! Bookmark not defined.
TÀI LIỆU THAM KHẢO ..................................... Error! Bookmark not defined.
2
https://timtailieu.vn/
MỤC LỤC HÌNH ẢNH
Hình 1. Minh họa về ứng dụng IOT trong nông nghiệp......................................... 9
Hình 2. Bốn cấu phần cơ bản của một hệ thống IOT ............................................ 11
Hình 3. Ứng dụng Iot ............................................................................................. 11
Hình 4. Mô hình tưới rau Iot ................................................................................. 12
Hình 5. Hình ảnh minh họa ................................................................................... 14
Hình 6. Logo Wifi.................................................................................................. 15
Hình 7. Module ESP 32 ......................................................................................... 24
Hình 8. Bộ Nguồn .................................................................................................. 25
Hình 9. Mạch 8 Relay Opto cách ly 5VDC. .......................................................... 26
Hình 10. Cảm biến lưu lượng ................................................................................ 27
Hình 11. Cảm biến lưu lượng nước DN20 ............................................................ 28
Hình 12. Van điện từ ............................................................................................. 29
Hình 13. Module cảm biến độ ẩm và nhiệt độ DHT11 ......................................... 30
Hình 14. Module cảm biến độ ẩm đất ................................................................... 31
Hình 15. Sơ đồ khối hệ thống. ............................................................................... 32
Hình 16. Nguyên lý hoạt động............................................................................... 35
Hình 17. Hình ảnh mô phỏng (Hệ thống phun nước)............................................ 36
Hình 18. Hình ảnh mô phỏng (Hệ thống phun nước)............................................ 37
Hình 19. Hệ thống phun nước ............................................................................... 37
Hình 20. Hộp chứa nước........................................................................................ 38
Hình 21. Hộp chứa nước........................................................................................ 38
Hình 22. Kết nối với thiết bị điện .......................................................................... 39
Hình 23. Tổng quan mô hình từ trên ..................................................................... 39
Hình 24. Tổng quan mô hình từ sau ...................................................................... 40
Hình 25. Tổng quan mô hình từ trước ................................................................... 40
Hình 26. Tổng quan mô hình bên cạnh ................................................................. 41
Hình 27. Tổng quan mô hình ................................................................................. 41
Hình 28. Tổng quan mô hình ................................................................................. 42
3
https://timtailieu.vn/
Hình 29. Tổng quan mô hình hoàn thiện và kết nối với ap ................................... 42
Hình 30. Kết nối đường ống dẫn nước .................................................................. 43
Hình 31. Đầu phun nước........................................................................................ 43
Hình 32. Thùng chứa phân .................................................................................... 44
Hình 33. Van một chiều, van điện từ và van nước ................................................ 44
Hình 34. Cảm biến lưu lượng ................................................................................ 45
Hình 35. Hộp đựng thiết bị điện (nguồn, chip, relay) ........................................... 45
Hình 36. Motor bơm nước ..................................................................................... 46
Hình 37. Lắp đặt .................................................................................................... 46
Hình 38. Kết nối với bơm phân ............................................................................. 47
Hình 39. Tổng quan mô hình ................................................................................. 48
Hình 40. Tổng quan mô hình ................................................................................. 49
Hình 41. Đi dây, kết nối các thiết bị điện. ............................................................. 51
Hình 42. Mô hình hoạt động.................................................................................. 52
Hình 43. Mô hình hoạt động.................................................................................. 52
Hình 44. Mô hình hoạt động.................................................................................. 53
Hình 45. Mô hình hoạt động.................................................................................. 54
Hình 46. Mô hình hoạt động khi kết nối với app .................................................. 54
Hình 47. Mô hình hoạt động.................................................................................. 55
Hình 48. Cài đặt Arduino IDE ............................................................................... 56
Hình 49. Các bước cài đặt phần mền Arduino ...................................................... 57
Hình 50. Các bước cài đặt phần mền Arduino ...................................................... 57
Hình 51. Các bước cài đặt phần mền Arduino ...................................................... 58
Hình 52. Các bước cài đặt phần mền Arduino ...................................................... 59
Hình 53. Các bước cài đặt phần mền Arduino ...................................................... 59
Hình 54. Các bước cài đặt phần mền Arduino ...................................................... 60
Hình 55. Các bước cài đặt phần mền Arduino ...................................................... 60
Hình 56. Giao diện của ứng dụng ở trạng thái tự động (trái) ................................ 79
Hình 57. Giao diện cài đặt ..................................................................................... 80
4
https://timtailieu.vn/
Hình 58. Giao diện theo dõi hằng ngày ................................................................. 81
Hình 59. Cài đặt quy trình tưới nước tưới phân cho rau. ...................................... 82
Hình 60. Giao diện cài đặt quy trình ..................................................................... 82
Hình 61. Giao diện bắt đầu quy trình. ................................................................... 83
Hình 62. Giao diện cài đặt kết nối wifi ................................................................. 84
Hình 63. Giao diện cài đặt API.............................................................................. 85
Hình 64. Giao diện theo dõi quy trình ................................................................... 86
5
https://timtailieu.vn/
CHƯƠNG 1. TỔNG QUAN
1. ĐẶT VẤN ĐỀ
Nông nghiệp luôn là vấn đề trọng yếu của mỗi quốc gia trong việc bảo đảm
an ninh lương thực, nó là một trong hai ngành sản xuất vật chất quan trọng của
nền kinh tế. Là khu vực sản xuất chủ yếu, đảm bảo đời sống cho xã hội, là thị
trường rộng lớn cung cấp nguyên liệu và tiêu thụ sản phẩm của nền kinh tế và
tích lũy cho công nghiệp. Việt Nam hiện nay vẫn còn là một nước sản xuất chủ
yếu về nông nghiệp với trên 66,9% dân số cả nước tập trung sống ở vùng nông
thôn, lao động nông nghiệp chiếm tới 42% lao động trong toàn xã hội.
Ngày nay, nước ta đang hướng tới xây dựng một nền công nghiệp phát triển,
điều đó mang lại nhiều lợi ích cho đất nước nhưng cũng kèm theo nhiều hệ lụy,
đặc biệt là ô nhiễm môi trường, một trong những mảng chịu thiệt hại rất lớn từ
vấn đề trên chính là ngành nông nghiệp. Bên cạnh đó, trong nhiều năm qua, sản
xuất nông nghiệp ở Việt Nam gặp rất nhiều khó khăn do các hiện tượng thời tiết
cực đoan ngày càng diễn biến phức tạp do ảnh hưởng của biến đổi khí hậu toàn
cầu, làm ảnh hưởng to lớn đến năng suất cũng như chất lượng các sản phẩm từ
nông nghiệp.
Cùng với đó, việc chuyển dịch cơ cấu kinh tế theo hướng công nghiệp, dịch
vu, đã làm giảm đáng kể nhân lực trong nông nghiệp, và theo nhiều dự báo số
lượng này sẽ tiếp tục gia tăng trong những năm tới, điều này đưa tới những bài
toán cho việc giải quyết vấn đề nhân lực trong các ngành nông nghiệp.
Chính vì vậy, việc tìm kiếm những giải pháp mới để ổn định và nâng cao chất
lượng sản phẩm, năng suất thu hoạch trở thành ưu tiên hàng đầu của nhà nước
trong những năm qua. Do đó, những ứng dụng Công nghệ được đưa vào trong
việc chăm sóc, thu hoạch trong nông nghiệp để khắc phục vấn đề thiên tai, môi
trường, cũng như tiết kiệm nhân lực, đồng thời gia tăng năng suất cây trồng, đơn
giản hóa việc quản lý.
6
https://timtailieu.vn/
Một trong những ứng dụng Công nghệ nổi bật được đưa vào trong nông
nghiệp trong những năm gần đây là Internet of thing ( viết tắt là IOT) đã và đang
đem lại nhiều kết quả thành Công, dần dần được áp dụng và phổ biến trên nhiều
diện tích canh tác nông nghiệp, vì vậy chúng em chọn đề tài “ MÔ HÌNH HỆ
THỐNG TRỒNG RAU TỰ ĐỘNG ” nhằm có hiểu biết thêm về tác động của
Công nghệ tới khả năng phát triển của cây trồng, cũng như quản lý của người
điều khiển, bên cạnh đó là nghiên cứu thêm về các ứng dụng Công nghệ điện tử
được đưa vào.
2. MỤC TIÊU
Mục tiêu của đề tài là xây dựng được một hệ thống IoT trong nông nghiệp
có khả năng giám sát nhiệt độ, độ ẩm (thông qua các cảm biến), ổn định điều kiện
môi trường (thông qua bơm nước). Hệ thống này cho phép thực hiện các thao tác
giám sát - điều khiển trên một trang web và một ứng dụng trên smartphone.
4. GIỚI HẠN
7
https://timtailieu.vn/
5. BỐ CỤC
8
https://timtailieu.vn/
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Từ khi lần đầu được giới thiệu cách đây gần 20 năm, cho tới hiện nay các ứng
dụng IOT là một trong những mảng Công nghệ phát triển nhất trong cuộc cách mạng
Công nghiệp 4.0, nó xuất hiện và tác động tích cực tới từng ngành, từng lĩnh vực
trong đó có ngành nông nghiệp. Ứng dụng IOT trong nông nghiệp góp phần tạo nên
một môi trường sản xuất năng động, khoa học và giải phóng sức lao động, tăng năng
suất, mang lại hiệu quả kinh tế cao, giúp nâng cao tính chuyên nghiệp và cải thiện bộ
mặt cho cho nền nông nghiệp trong tương lai gần.
1.2. Cấu trúc cơ bản của một hệ thống ứng dụng Công nghệ IOT
Kiến trúc của IOT gồm bốn thành phần cơ bản chính gồm: Vạn vật (Things), Trạm
kết nối (Gateways), Hạ tầng mạng (Internet) và cuối cùng là lớp dịch vụ (Service).
9
https://timtailieu.vn/
• Vạn vật (Things): Ngày nay có vô vàn vật dụng đang hiện hữu trong cuộc sống,
ở trên các khu canh tác, ở trong nhà hoặc trên chính các thiết bị lưu động của người
dùng. Giải pháp IoT giúp các thiết bị thông minh được sàng lọc, kết nối và quản lý
dữ liệu của đối tượng nông nghiệp một cách cục bộ, còn các thiết bị chưa thông minh
thì có thể kết nối được thông qua các trạm kết nối. Từ đó, các thiết bị, vật dụng sẽ có
thể thực hiện nhiệm vụ của mình đối với đối tượng nông nghiệp cần quản lý.
• Trạm kết nối (Gateways): Các trạm kết nối sẽ đóng vai trò là một vùng trung
gian trực tiếp, cho phép các vật dụng có sẵn này kết nối với điện toán đám mây một
cách bảo mật và dễ dàng quản lý. Gateways có thể là một thiết bị vật lý hoặc là một
phần mềm được dùng để kết nối giữa Cloud (điện toán đám mây) và bộ điều khiển,
các cảm biến, các thiết bị thông minh.
• Hạ tầng mạng (Internet): Internet là một hệ thống toàn cầu của nhiều mạng IP
được kết nối với nhau và liên kết với hệ thống máy tính. Cơ sở hạ tầng mạng này bao
gồm thiết bị định tuyến, trạm kết nối, thiết bị tổng hợp, thiếp bị lặp và nhiều thiết bị
khác có thể kiểm soát lưu lượng dữ liệu lưu thông và cũng được kết nối đến mạng
lưới viễn thông và cáp - được triển khai bởi các nhà cung cấp dịch vụ.
• Lớp dịch vụ (Service): Là các ứng dụng được các hãng Công nghệ, hoặc thậm
chí người dùng tạo ra để dễ dàng sử dụng các sản phẩm IOT một cách hiệu quả và
tận dụng được hết giá trị của sản phẩm.
10
https://timtailieu.vn/
Hình 2. Bốn cấu phần cơ bản của một hệ thống IOT
− IoT trong nông nghiệp là nền tảng của Nông nghiệp Thông minh. Nó sẽ
giúp nâng cao chất lượng, bảo đảm vệ sinh an toàn thực phẩm và nâng cao giá trị
hàng nông phẩm.
Nông nghiệp thông minh là gì?
Nông nghiệp thông minh là một thuật ngữ rộng thu thập các hoạt động sản xuất
thực phẩm và nông nghiệp có ứng dụng công nghệ 4.0, bao gồm: IoT, Big Data và
công nghệ phân tích tiên tiến.
11
https://timtailieu.vn/
Ứng dụng quan trọng nhất trong nông nghiệp thông minh là Phân tích dữ liệu,
trực quan hóa và hệ thống hóa quản lý. Việc phân tích dữ liệu cảm biến sẽ thúc đẩy
tính minh bạch trong các quy trình nông nghiệp, vì nông dân có được những hiểu biết
quý giá về hiệu suất của cánh đồng, nhà kính, v.v. Không chỉ dừng lại ở đó, ở mô
hình nông nghiệp thông minh, người nông dân còn có thể tham khảo tư vấn của hệ
thống AI, được xây dựng trên nền tảng kiến thức của các nhà khoa học.
Các ứng dụng IoT phổ biến khác trong nông nghiệp thông minh có thể kể đến
như:
• Các hệ thống dựa trên cảm biến để giám sát cây trồng, đất, đồng ruộng, chăn
nuôi, kho chứa, hoặc bất kỳ yếu tố quan trọng nào ảnh hưởng đến sản xuất.
• Xe nông nghiệp thông minh, máy bay không người lái, robot tự động và thiết bị
truyền động.
• Không gian sản xuất nông nghiệp kết nối như nhà kính thông minh hoặc thủy
canh.
12
https://timtailieu.vn/
bước ngoặt, giải quyết những vấn đề cấp bách liên quan tới sự sinh tồn và phát triển
của loài người.
• Hiệu quả vượt trội: Ngày nay, ngành nông nghiệp là một cuộc đua. Nông dân
bị thúc ép phải trồng nhiều sản phẩm hơn trong khi chất lượng đất ngày một tệ hơn,
diện tích ngày một giảm và biến động thời tiết ngày một phức tạp. IoT trong nông
nghiệp sẽ cho phép nông dân theo dõi sản phẩm và điều kiện của họ trong thời gian
thực. Họ nhận được thông tin chi tiết nhanh, có thể dự đoán các vấn đề trước khi
chúng xảy ra và đưa ra quyết định sáng suốt về cách phòng tránh chúng. Ngoài ra,
các giải pháp IoT trong nông nghiệp cũng cho phép thực hiện quy trình sản xuất tự
động. Ví dụ: tưới tiêu, bón phân dựa trên nhu cầu và robot thu hoạch tự động.
• Phủ sóng nông nghiệp: Vào thời điểm dân số thế giới chạm ngưỡng 9 tỷ người,
70% trong số đó sẽ sống ở khu vực thành thị. Nhà kính và hệ thống thủy canh dựa
trên IoT đặt trong lòng thành phố sẽ là cứu cánh, cung cấp nguồn thực phẩm như trái
cây và rau tươi ngắn hạn cho công dân thành thị... Các hệ thống nông nghiệp chu
trình khép kín thông minh cho phép người ta cơ bản là trồng được thực phẩm ở khắp
mọi nơi, trong các siêu thị, trên các tòa nhà chọc trời, tường và mái nhà, trong các
container vận chuyển và, tất nhiên, trong chính gia đình mình.
• Giảm tài nguyên: Rất nhiều giải pháp IoT trong nông nghiệp được tập trung
vào việc tối ưu hóa việc sử dụng tài nguyên, như: Nước, năng lượng, đất đai. Canh
tác chính xác bằng cách sử dụng IoT dựa trên dữ liệu được thu thập từ các cảm biến
khác nhau sẽ giúp nông dân phân bổ chính xác để sử dụng vừa đủ tài nguyên cần
thiết cho sự sinh trưởng và phát triển nông sản.
• Quy trình sạch hơn: Điều tương tự cũng liên quan đến thuốc trừ sâu và phân
bón. Các hệ thống dựa trên IoT để canh tác chính xác giúp các nhà sản xuất tiết kiệm
nước và năng lượng, không chỉ làm cho nông nghiệp xanh hơn, mà còn giảm đáng
kể việc sử dụng thuốc trừ sâu và phân bón. Cách tiếp cận này cho phép có được một
sản phẩm cuối cùng sạch hơn và hữu cơ hơn so với các phương pháp nông nghiệp
truyền thống.
• Nhanh chóng: Một trong những lợi ích của việc sử dụng IoT trong nông
nghiệp là cải tiến tốc độ của các quy trình. Nhờ hệ thống giám sát và dự đoán thời
gian thực, nông dân có thể nhanh chóng phản ứng với mọi thay đổi đáng kể về thời
13
https://timtailieu.vn/
tiết, độ ẩm, chất lượng không khí cũng như sức khỏe của từng loại cây trồng hoặc đất
trên đồng ruộng. Đặc biệt, trong điều kiện thời tiết thay đổi thất thường hoặc khắc
nghiệt, việc ứng dụng IoT trong nông nghiệp sẽ có thể giúp người nông dân thời đại
mới cứu lấy mùa màng.
• Cải thiện chất lượng nông sản: Nông nghiệp dựa trên nền tảng công nghệ sẽ
cho ra đời các sản phẩm tốt hơn. Bằng việc sử dụng cảm biến đất và cây trồng, giám
sát bằng máy bay không người lái (drone) trên không và lập bản đồ trang trại, nông
dân có thể hiểu rõ hơn sự phụ thuộc chi tiết giữa các điều kiện và chất lượng của cây
trồng. Sử dụng các hệ thống được kết nối, họ có thể tạo lại các điều kiện tốt nhất và
tăng giá trị dinh dưỡng của sản phẩm.
− Kết luận
Thị trường sẽ hình thành và sụp đổ, các mô hình kinh doanh đột phá sẽ xuất hiện
hoặc thoái trào, nhưng nhu cầu lương thực của loài người sẽ không bao giờ giảm. Vì
lý do này, sự phát triển của các lĩnh vực như thực phẩm và nông nghiệp sẽ luôn được
chú trọng, đặc biệt là với các động lực chúng ta quan sát trên thế giới ngày nay. Do
đó, ứng dụng IoT trong nông nghiệp hứa hẹn một tương lai đầy tươi sáng.
14
https://timtailieu.vn/
2. CHUẨN TRUYỀN DỮ LIỆU, CHUẨN KẾT NỐI
2.1. GIAO THỨC TRUYỀN DỮ LIỆU BẰNG WIFI
Wifi (là viết tắt từ Wireless Fidelity hay mạng 802.11) là hệ thống mạng không
dây sử dụng sóng vô tuyến, cũng giống như điện thoại di đông, truyền hình và
radio. Kết nôi Wifi thường là sự lựa chọn hàng đầu của rất nhiều kỹ sư giải pháp
bởi tính thông dụng và kinh tế của hệ thống wifi và mạng LAN với mô hình kết
nối trong một phạm vi địa lý có giới hạn.
15
https://timtailieu.vn/
Các sóng vô tuyến sử dụng cho WiFi gần giống với các sóng vô tuyến sử dụng
cho thiết bị cầm tay, điện thoại di động và các thiết bị khác. Nó có thể chuyển và
nhận sóng vô tuyến, chuyển đổi các mã nhị phân 1 và 0 sang sóng vô tuyến và
ngược lại. Tuy nhiên, sóng WiFi có một số khác biệt so với các sóng vô tuyến
khác ở chỗ: Chúng truyền và phát tín hiệu ở tần số 2.4 GHz hoặc 5 GHz. Tần số
này cao hơn so với các tần số sử dụng cho điện thoại di động, các thiết bị cầm tay
và truyền hình. Tần số cao hơn cho phép tín hiệu mang theo nhiều dữ liệu hơn.
Hiện nay, đa số các thiết bị wifi đều tuân theo chuẩn 802.11n, được phát ở tần
số 2.4Ghz và đạt tốc độ xử lý tối đa 300Megabit/giây
Hệ thống này đã hoạt động ở sân bay, quán café, thư viện hoặc khách sạn. Hệ
thống cho phép truy cập Internet tại những khu vực có sóng của hệ thống này,
hoàn toàn không cần đến cáp nối. Ngoài các điểm kết nối công cộng (hotspots),
WiFi có thể được thiết lập ngay tại nhà riêng.
Tên gọi 802.11 bắt nguồn từ viện IEEE (Institute of Electrical and Electronics
Engineers). Viện này tạo ra nhiều chuẩn cho nhiều giao thức kỹ thuật khác nhau,
và nó sử dụng một hệ thống số nhằm phân loại chúng; 6 chuẩn thông dụng của
WiFi hiện nay là 802.11a/b/g/n/ac/ad.
− Hoạt động
Máy tính xách tay cắm thêm thẻ adapter ở cổng PC card đang liên lạc với
router có hai ăng-ten nằm đằng sau.
Truyền thông qua mạng không dây là truyền thông vô tuyến hai chiều. Cụ thể:
Thiết bị adapter không dây (hay bộ chuyển tín hiệu không dây) của máy tính
chuyển đổi dữ liệu sang tín hiệu vô tuyến và phát những tín hiệu này đi bằng một
ăng-ten.
16
https://timtailieu.vn/
Thiết bị router không dây nhận những tín hiệu này và giải mã chúng. Nó gởi
thông tin tới Internet thông qua kết nối hữu tuyến Ethernet.
Quy trình này vẫn hoạt động với chiều ngược lại, router nhận thông tin từ
Internet, chuyển chúng thành tín hiệu vô tuyến và gởi đến adapter không dây của
máy tính.
− Sóng Wi-Fi
Các sóng vô tuyến sử dụng cho WiFi gần giống với các sóng vô tuyến sử dụng
cho thiết bị cầm tay, điện thoại di động và các thiết bị khác. Nó có thể chuyển và
nhận sóng vô tuyến, chuyển đổi các mã nhị phân 1 và 0 sang sóng vô tuyến và
ngược lại.
Tuy nhiên, sóng WiFi có một số khác biệt so với các sóng vô tuyến khác ở
chỗ:
Chúng truyền và phát tín hiệu ở tần số 2.4 GHz, 5 GHz hoặc 60 GHz. Tần số
này cao hơn so với các tần số sử dụng cho điện thoại di động, các thiết bị cầm tay
và truyền hình. Tần số cao hơn cho phép tín hiệu mang theo nhiều dữ liệu hơn.
Chuẩn 802.11b là phiên bản đầu tiên trên thị trường. Đây là chuẩn chậm nhất
và rẻ tiền nhất, và nó trở nên ít phổ biến hơn so với các chuẩn khác. 802.11b phát
tín hiệu ở tần số 2.4 GHz, nó có thể xử lý đến 11 megabit/giây, và nó sử dụng mã
CCK (complimentary code keying).
17
https://timtailieu.vn/
Chuẩn 802.11g cũng phát ở tần số 2.4 GHz, nhưng nhanh hơn so với chuẩn
802.11b, tốc độ xử lý đạt 54 megabit/giây. Chuẩn 802.11g nhanh hơn vì nó sử
dụng mã OFDM (orthogonal frequency-division multiplexing), một công nghệ
mã hóa hiệu quả hơn.
Chuẩn 802.11a phát ở tần số 5 GHz và có thể đạt đến 54 megabit/ giây. Nó
cũng sử dụng mã OFDM. Những chuẩn mới hơn sau này như 802.11n còn nhanh
hơn chuẩn 802.11a, nhưng 802.11n vẫn chưa phải là chuẩn cuối cùng.
Chuẩn 802.11n cũng phát ở tần số 2.4 GHz, nhưng nhanh hơn so với chuẩn
802.11a, tốc độ truyền dữ liệu tối đa đạt 450 megabit/giây.
Chuẩn 802.11ac phát ở tần số 5 GHz nhanh hơn so với chuẩn 802.11n, tốc độ
truyền dữ liệu tối đa đạt đến 1.3 Gigabit/giây
Chuẩn 802.11ad phát ở tần số 60 GHz nhanh hơn so với chuẩn 802.11ac, tốc
độ truyền dữ liệu tối đa đạt đến 4,6 Gigabit/giây
WiFi có thể hoạt động trên cả ba tần số và có thể nhảy qua lại giữa các tần số
khác nhau một cách nhanh chóng. Việc nhảy qua lại giữa các tần số giúp giảm
thiểu sự nhiễu sóng và cho phép nhiều thiết bị kết nối không dây cùng một lúc.
18
https://timtailieu.vn/
− Adapter
Một adapter cắm vào khe PCI cho máy tính để bàn.
Các máy tính nằm trong vùng phủ sóng WiFi cần có các bộ thu không dây,
adapter, để có thể kết nối vào mạng. Các bộ này có thể được tích hợp vào các
máy tính xách tay hay để bàn hiện đại. Hoặc được thiết kế ở dạng để cắm vào khe
PC card hoặc cổng USB, hay khe PCI.
Khi đã được cài đặt adapter không dây và phần mềm điều khiển (driver), máy
tính có thể tự động nhận diện và hiển thị các mạng không dây đang tồn tại trong
khu vực.
− Router
• Một firewall
Hầu hết các router có độ phủ sóng trong khoảng bán kính 30,5 m về mọi
hướng.
19
https://timtailieu.vn/
− Các chuẩn bảo mật WiFi:
WEP
WEP (Wired Equivalent Privacy) là một gỉai thuật bảo mật cho mạng không
dây chuẩn IEEE 802.11. Ban đầu, các nhà sản xuất chỉ sản xuất các thiết bị WiFI
với chuẩn bảo mật 64 bit. Sau này có các cải tiến hơn với các chuẩn bảo mật 128
bit và 256 bit. Bảo mật WEP sau đó xuất hiện nhiều lổ hổng. Các khóa WEP ngày
nay có thể bị crack trong một vài phút các bằng phần mềm hoàn toàn miễn phí
trên mạng. Vào năm 2004, với sự phát triển của các chuẩn bảo mật mới như
WPA, WPÀ2, IEEE tuyên bố các chuẩn WEP trong bảo mật WiFi sẽ không còn
được hỗ trợ.
WPA
WPA (Wi-Fi Protected Access) là giao thức và chuẩn bảo mật WiFi phát triển
bởi Liên hiệp Wifi (Wifi Alliance). WPA được phát triển để thay thế cho chuẩn
WEP trước đó có nhiều lỗ hổng bảo mật.
Phiên bản phổ biến nhất của WPA là WPA-PSK (Pre-Shared Key). Các kí tự
được sử dụng bởi WPA là loại 256 bit, nên tính bảo mật sẽ cao hơn rất nhiều so
với mã hóa 64 bit và 128 bit có trong hệ thống WEP. Trong WPA có hỗ trợ TKIP
(Temporal Key Integrity Protocol). TKIP sử dụng các gỉai thuật để đảm bảo an
toàn cho các gói tin truyền trong WIFI để tránh bị đánh cắp. Tuy nhiên TKIP sau
này cũng bộc lộ một số lổ hổng bảo mật và bị thay thế bởi AES (Advanced
Encryption Standard). Giao thức AES được dùng trong cả WPA và WPA 2.
20
https://timtailieu.vn/
WPA 2
WPA 2 (WiFi Protected Access II) là giao thức và chuẩn bảo mật thay thế cho
WPA từ năm 2006 và được xem là chuẩn bảo mật an toàn nhất đến thời điểm
này. Ngoài việc sử dụng giao thức AES, thì WPA 2 còn sử dụng thêm giao thức
mã hóa CCMP (CTR mode with CBC-MAC Protocol). Giao thức CCMP là một
giao thức truyền dữ liệu và kiểm soát tính truyền dữ liệu thống nhất để bảo đảm
cả tính bảo mật và nguyên vẹn của dữ liệu được truyền đi. Cho đến nay thì giao
thức bảo mật WPA2 dùng AES là giao thức bảo mật Wifi tốt nhất.
Internet Protocol (tiếng Anh, viết tắt: IP, có nghĩa là Giao thức Internet) là
một giao thức hướng dữ liệu được sử dụng bởi các máy chủ nguồn và đích để
truyền dữ liệu trong một liên mạng chuyển mạch gói.
Dữ liệu trong một liên mạng IP được gửi theo các khối được gọi là các gói
(packet hoặc datagram). Cụ thể, IP không cần thiết lập các đường truyền trước
khi một máy chủ gửi các gói tin cho một máy khác mà trước đó nó chưa từng liên
lạc với.
IP cung cấp một dịch vụ gửi dữ liệu không đảm bảo (còn gọi là cố gắng cao
nhất), nghĩa là nó hầu như không đảm bảo gì về gói dữ liệu. Gói dữ liệu có thể
đến nơi mà không còn nguyên vẹn, nó có thể đến không theo thứ tự (so với các
gói khác được gửi giữa hai máy nguồn và đích đó), nó có thể bị trùng lặp hoặc bị
mất hoàn toàn. Nếu một phần mềm ứng dụng cần được bảo đảm, nó có thể được
cung cấp từ nơi khác, thường từ các giao thức giao vận nằm phía trên IP.
21
https://timtailieu.vn/
Các thiết bị định tuyến liên mạng chuyển tiếp các gói tin IP qua các mạng tầng
liên kết dữ liệu được kết nối với nhau. Việc không có đảm bảo về gửi dữ liệu có
nghĩa rằng các chuyển mạch gói có thiết kế đơn giản hơn. (Lưu ý rằng nếu mạng
bỏ gói tin, làm đổi thứ tự hoặc làm hỏng nhiều gói tin, người dùng sẽ thấy hoạt
động mạng trở nên kém đi. Hầu hết các thành phần của mạng đều cố gắng tránh
để xảy ra tình trạng đó. Đó là lý do giao thức này còn được gọi là cố gắng cao
nhất. Tuy nhiên, khi lỗi xảy ra không thường xuyên sẽ không có hiệu quả đủ xấu
đến mức người dùng nhận thấy được.)
IP rất thông dụng trong mạng Internet công cộng ngày nay. Giao thức tầng
mạng thông dụng nhất ngày nay là IPv4; đây là giao thức IP phiên bản 4. IPv6
được đề nghị sẽ kế tiếp IPv4: Internet đang hết dần địa chỉ IPv4, do IPv4 sử dụng
32 bit để đánh địa chỉ (tạo được khoảng 4 tỷ địa chỉ); IPv6 dùng địa chỉ 128 bit,
cung cấp tối đa khoảng 3.4×1038 địa chỉ (xem bài về IPv6 để biết thêm chi tiết).
Các phiên bản từ 0 đến 3 hoặc bị hạn chế, hoặc không được sử dụng. Phiên bản
5 được dùng làm giao thức dòng (stream) thử nghiệm. Còn có các phiên bản khác,
nhưng chúng thường dành là các giao thức thử nghiệm và không được sử dụng
rộng rãi.
Địa chỉ IP được chia thành 4 số giới hạn từ 0 - 255. Mỗi số được lưu bởi 1
byte - > IP có kích thước là 4byte, được chia thành các lớp địa chỉ. Có 3 lớp là A,
B, và C. Nếu ở lớp A, ta sẽ có thể có 16 triệu địa chỉ, ở lớp B có 65536 địa chỉ.
Ví dụ: Ở lớp B với 132.25, chúng ta có tất cả các địa chỉ từ 132.25.0.0 đến
132.25.255.255. Phần lớn các địa chỉ ở lớp A llà sở hữu của các công ty hay của
tổ chức. Một ISP thường sở hữu một vài địa chỉ lớp B hoặc C. Ví dụ: Nếu địa chỉ
IP của bạn là 132.25.23.24 thì bạn có thể xác định ISP của bạn là ai. (có IP là
132.25.x.)
22
https://timtailieu.vn/
Trên Internet thì địa chỉ IP của mỗi người là duy nhất và nó sẽ đại diện cho
chính người đó, địa chỉ IP được sử dụng bởi các máy tính khác nhau để nhận biết
các máy tính kết nối giữa chúng. Đây là lý do tại sao bạn lại bị IRC cấm, và là
cách người ta tìm ra IP của bạn. Địa chỉ IP có thể dễ dàng phát hiện ra, người ta
có thể lấy được qua các cách sau:
• Bạn lướt qua một trang web, IP của bạn bị ghi lại
• Trên ICQ, mọi người có thể biết IP của bạn, thậm chí bạn chọn ``do not
show IP`` người ta vẫn lấy được nó
• Nếu bạn kết nối với một ai đó, họ có thế gõ ``netstat –n ``, và biết được ai
đang kết nối đên họ
• Nếu ai đó gửi cho bạn một email với một đoạn mã java tóm IP, họ cũng có
thể tóm được IP của bạn
• Có thể dùng những phần mềm như tcpdump hay wireshark để nhìn vào gói
tin IP và tìm ra IP của bạn.
23
https://timtailieu.vn/
Định tuyến và địa chỉ IP
Có lẽ các khía cạnh phức tạp nhất của IP là việc đánh địa chỉ và định tuyến.
Đánh địa chỉ là công việc cấp địa chỉ IP cho các máy đầu cuối, cùng với việc
phân chia và lập nhóm các mạng con của các địa chỉ IP. Việc định tuyến IP được
thực hiện bởi tất cả các máy chủ, nhưng đóng vai trò quan trọng nhất là các thiết
bị định tuyến liên mạng. Các thiết bị đó thường sử dụng các giao thức cổng trong
(interior gateway protocol, viết tắt là IGP) hoặc các giao thức cổng ngoài
(external gateway protocol, viết tắt là EGP) để hỗ trợ việc đưa ra các quyết định
chuyển tiếp các gói tin IP (IP datagram) qua các mạng kết nối với nhau bằng giao
thức IP.
24
https://timtailieu.vn/
Thông số kỹ thuật:
• Hiệu suất cao với giá thấp
• Kích thước nhỏ gọn, dễ dàng tích hợp hệ thống.
• Bộ xử lý mạnh mẻ
• Hổ trợ các chế độ: AP, STA, và AP+STA
• Hổ trợ chương trình LUA, dễ dàng phát triển.
Ứng dụng:
Sử dụng rộng rãi trong các ứng dụng IoT: các thiết bị thông minh trong nhà,
giám sát và điều khiển không dây…
3.2. Bộ nguồn
3.2.1. Nguồn 5V
Hình 8. Bộ Nguồn
Thông số kỹ thuật:
• Điện Áp Đầu Vào: AC 220V (Chân L và N)
• Điện Áp Đầu Ra: DC 5V (Chân dương V+, Chân Mass-GND: V-)
• Điện áp ra điều chỉnh: (+) (-)10%
25
https://timtailieu.vn/
3.3. Relay
Mạch 8 Relay Opto cách ly 5VDC thích hợp với các ứng dụng đóng
ngắt tải AC hoặc DC, mạch có thiết kế nhỏ gọn, tích hợp opto và transistor
cách ly, kích đóng bằng mức thấp (0VDC) phù hợp với mọi loại MCU và thiết
kế có thể sử dụng nguồn ngoài giúp cho việc sử dụng trở nên thật linh động và
dễ dàng.
Thông số kỹ thuật:
• Điện áp sử dụng: 5VDC.
• Tín hiệu kích: TTL 3.3~5VDC, mức thấp Low Relay đóng, mức cao High
Relay ngắt.
• Mỗi Relay tiêu thụ dòng khoảng 80mA.
• Điện thế đóng ngắt tối đa: AC250V ~ 10A hoặc DC30V ~ 10A (Để an
toàn nên dùng cho tải có công suất <100W).
• Tích hợp Opto cách ly, Diod chống nhiễu và đèn báo tín hiệu kích.
• Kích thước: 137 x 56 x 20mm.
26
https://timtailieu.vn/
3.4. Cảm biến lưu lượng
Cảm biến lưu lượng nước là cảm biến lưu lượng nước thường dùng trong các
máy bơm nước hồ cá, máy bơm mini, máy nước nóng.v.v.... Cảm biến hoạt động
dựa tên cánh quạt nước và cảm biến Hall bên trong, khi nước chảy qua làm quạt
nước quay ==> cảm biến Hall ==> xung vuông (từ NPN).
Chức năng 3 dây ngõ ra:
• Màu đỏ: nguồn: 5 - 24V.
• Dây đen: GND (mass).
• Dây vàng: tín hiệu.
Công thức lưu lượng:
• Q = F / 7.5.
• F: tần số (Hz).
• Q: lưu lượng: (L/min).
• 7.5: hằng số.
Thông số kỹ thuật:
• Nguồn: 5 - 24V.
• Dòng tiêu thụ: < 10mA.
• Chịu áp lực đến: 1.75Mpa.
27
https://timtailieu.vn/
• Lưu lượng đo: 1 - 30 (L/min).
• Nhiệt độ hoạt động: < 120 độ C.
• Độ ẩm: 35% - 90% RH.
• Kích thước: 61 x 36 x 34mm.
Lưu ý quan trọng: Không được để nghiêng quá 5 độ, lắp thẳng đứng và nhiệt
độ nước chảy qua <120 độ C.
Thông số kỹ thuật:
28
https://timtailieu.vn/
3.6. Van điện từ
29
https://timtailieu.vn/
• Áp suất chịu được tối đa 7kg/cm2.
• Trọng lượng 600 gram.
• Kích thước (Dài x Rộng x Cao, mm): 120 x 80 x 60.
30
https://timtailieu.vn/
3.8. Module cảm biến độ ẩm đất
31
https://timtailieu.vn/
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
1. GIỚI THIỆU
Mô hình mà nhóm thực hiện cũng chính là mô hình thực nghiệm, vậy nên
mô hình thiết kế và thi Công phải đáp ứng được các yêu cầu sau:
• Hiển thị được giá trị nhiệt độ, độ ẩm không khí và độ ẩm đất.
• Điều khiển được các thiết bị ngoại vi bằng hai hình thức: bằng tay và tự
động.
• Mô hình đạt được sự ổn định và tính chính xác cao.
Wifi
Wifi
32
https://timtailieu.vn/
Khối cảm biến: bao gồm cảm biến nhiệt độ, cảm biến độ ẩm có tính chính
xác cao, dùng để thu thập dữ liệu về nhiệt độ, đổ ẩm xung quanh đối tượng canh
tác, từ đó đưa tín hiệu về khối điều khiển trung tâm, so sánh với giá trị đặt trước,
rồi sau đó khối điều khiển trung tâm sẽ xử lý để phù hợp với yêu cầu của giá trị
đặt trước.
Khối hiển thị: Khối hiển thị sử dụng màn hình trực tiếp từ smartphone dùng
để hiển thị số liệu đọc được từ khối cảm biến.
Khối thiết bị ngoại vi: nhận tín hiệu từ khối điều khiển để hoạt động (thiết bị
hoạt động dựa trên tín hiệu của cảm biến, được lập trình từ khối điều khiển).
Web: Nhận dữ liệu từ khối điều khiển trung tâm, hiển thị trạng thái hoạt động
của các thiết bị ngoại vi, giá trị đọc được từ các cảm biến và điều khiển hoạt động
của thiết bị.
Khối nguồn cung cấp: Khối nguồn cung cấp là khối quan trọng giúp cung
cấp điện cho toàn bộ hệ thống. Vì vậy cần tính toán hợp lý để khối nguồn có thể
cung cấp đủ dòng và áp để mạch có thể hoạt động tốt và ổn định.
2.2. Tính toán thiết kế mạch
2.2.1. Khối điều khiển trung tâm
Hiện nay trên thị trường có rất nhiều dòng vi điều khiển khác nhau như
PIC,AVR, 8051, Raspberry, Arduino, ESP8266, ESP32 … Tất cả đều có thể đáp
ứng được yêu cầu đặt ra nhưng nhóm chọn ESP32 vì nó có những ưu điểm sau:
Được sản xuất mới, nhiều chức năng mới.
Giá thành rẻ, dễ sử dụng.
Kích thước nhỏ gọn.
Là dòng vi điều khiển mã nguồn mở, có nhiều thư viện hổ trợ cho các module
chức năng khác nhau, trình biên dịch đơn giản.
33
https://timtailieu.vn/
2.2.2. Khối cảm biến
• Module Cảm biến độ ẩm đất:
Cảm biến phát hiện độ ẩm đất, bình thường đầu ra mức thấp, khi đất thiếu
nước đầu ra sẽ mức cao. Module có thể sử dụng để tưới nước tự động.
Độ nhạy của cảm biến độ ẩm đất có thể điều chỉnh được (Bằng cách điều
chỉnh biến trở màu xanh trên board mạch). Phần đầu dò được cắm vào đất để
phát hiện độ ẩm, khi độ ầm của đất đạt ngưỡng thiết lập, đầu ra DO sẽ chuyển
trạng thái từ mức thấp lên mức cao.
Thông số kỹ thuật:
• Điện áp làm việc: 3.3V ~ 5V.
• Có lỗ cố định để lắp đặt thuận tiện.
• Sử dụng chip LM393 để so sánh, ổn định làm việc. Đầu kết nối sừ dụng 3
dây.
VC 3.3V ~ 5V
CGN GND của nguồn ngoài
DDO Đầu ra tín hiệu số (mức cao hoặc mức thấp)
AO Đầu ra tín hiệu tương tự (Analog)
34
https://timtailieu.vn/
• Kích thước: 15mm x 12mm x 5.5mm.
• 4 chân, khoảng cách chân 0.1''.
• Module ESP32
Module ESP32 với thiết kế dễ sử dụng và đặc biệt là có thể sử dụng trực tiếp
trình biên dịch của Arduino để lập trình và nạp code, điều này khiến việc sử
dụng và lập trình các ứng dụng trên ESP32 trở nên rất đơn giản.
Module ESP32 được dùng cho các ứng dụng cần kết nối, thu thập dữ liệui,
đặc biệt là các ứng dụng liên quan đến IoT.
2.3. Sơ đồ nguyên lý toàn mạch
35
https://timtailieu.vn/
CHƯƠNG 4. THI CÔNG HỆ THỐNG
1. GIỚI THIỆU
Sau thời gian nghiên cứu, nhóm đã hoàn thiện được sản phẩm và đáp ứng yêu
cầu đưa ra. Các khối chức năng hoạt động đúng và đồng bộ với nhau.
Kết quả sau một chu trình hoạt động của mô hình sẽ giúp ta điều khiển được
các thiết bị ngoại vi, thực hiện các hoạt động chăm sóc đối tượng canh tác và
hiển thị các thông số lấy từ cảm biến lên màn hình APP, WEB để giúp người
dùng dễ dàng quản lí.
2. THI CÔNG HỆ THỐNG
2.1. QUÁ TRÌNH THỰC HIỆN MÔ HÌNH MÔ PHỎNG
36
https://timtailieu.vn/
Đường ống dẫn nước để tưới nước ra hai bên luống rau.
37
https://timtailieu.vn/
Hình 20. Hộp chứa nước
Hộp chưa nước và phân. Phía bên trái ở trong hộp là motor bơm nước, phía
bên phải gồm motor bơm phân và cảm biến lưu lượng.
38
https://timtailieu.vn/
Hình 22. Kết nối với thiết bị điện
39
https://timtailieu.vn/
Hình 24. Tổng quan mô hình từ sau
Sử dụng miếng dán trang trí để cho mô hình gọn gàng, tăng tính thẫm mĩ.
40
https://timtailieu.vn/
Hình 26. Tổng quan mô hình bên cạnh
Trang bị hệ thống đèn để dễ dàng quan sát và nhu cầu sử dụng mô hình vào
ban đêm.
41
https://timtailieu.vn/
Hình 28. Tổng quan mô hình
Hình 29. Tổng quan mô hình hoàn thiện và kết nối với ap
42
https://timtailieu.vn/
2.2. QUÁ TRÌNH THỰC HIỆN MÔ HÌNH THỰC TẾ
43
https://timtailieu.vn/
Hình 32 Thùng chứa phân
44
https://timtailieu.vn/
Hình 34. Cảm biến lưu lượng
45
https://timtailieu.vn/
Hình 36. Motor bơm nước
46
https://timtailieu.vn/
Hình 38. Kết nối với bơm phân
47
https://timtailieu.vn/
Hình 39. Tổng quan mô hình
48
https://timtailieu.vn/
Hình 40 Tổng quan mô hình
49
https://timtailieu.vn/
2.3. THI CÔNG BO MẠCH
50
https://timtailieu.vn/
Hình 43. Đi dây, lắp đặt các thiết bị điện.
51
https://timtailieu.vn/
2.4. KIỂM TRA VÀ VẬN HÀNH THỬ
52
https://timtailieu.vn/
Hình 47. Mô hình hoạt động
53
https://timtailieu.vn/
Hình 48. Mô hình hoạt động
Hình 49. Mô hình hoạt động khi kết nối với app
Điều khiển và giám sát trực tiếp trên web.
54
https://timtailieu.vn/
Hình 50. Mô hình hoạt động
55
https://timtailieu.vn/
2.5. LẬP TRÌNH
Vì Arduino IDE được viết trên Java nên bạn cần phải cài đặt JRE trước
Arduino IDE.
Chú ý:
Nhiều bạn do không cài JRE trên máy nên thường hay gặp phải tình trạng
không chạy được Arduino IDE.
2 bản JRE phổ biến nhất là bản dành cho Windows 32bit (x86) và Windows
64bit (x64) mình đã đánh dấu trong hình. Nhớ chọn "Accept License
Agreement".
56
https://timtailieu.vn/
Hình 52. Các bước cài đặt phần mền Arduino
Bạn sẽ được chuyển đến một trang mời quyền góp tiền để phát triển phần
mềm cho Arduino, tiếp tục bấm JUST DOWNLOAD để bắt đầu tải.
Bước 3: Copy thư mục arduino-1.8.12 vừa giải nén đến nơi lưu trữ.
Bước 4: Chạy file trong thư mục arduino-1.8.12\ để khởi động Arduino IDE
57
https://timtailieu.vn/
Hình 54. Các bước cài đặt phần mền Arduino
Để máy tính của bạn và board Arduino giao tiếp được với nhau, chúng ta cần
phải cài đặt driver trước tiên.
Nếu bạn dùng Windows 8, trong một số trường hợp Windows không cho
phép bạn cài Arduino driver (do driver không được kí bằng chữ kí số hợp lệ).
Do vậy bạn cần vào Windows ở chế độ Disable driver signature enforcement thì
mới cài được driver.
58
https://timtailieu.vn/
Hình 55. Các bước cài đặt phần mền Arduino
Khi có yêu cầu xác nhận cài đặt driver, chọn “Install”
59
https://timtailieu.vn/
Hình 57. Các bước cài đặt phần mền Arduino
Quá trình cài đặt đã hoàn tất. Bấm “Finish” để thoát.
60
https://timtailieu.vn/
2.5.2. Code của chương trình được sử dụng.
--------------------------------------------------------
#define ESP32
#include <WiFi.h>
#include <Update.h>
#define led 2
#define Setup 5
#include "FileManager.h"
#include "EepromFuntion.h"
#include "Define.h"
#include "Webpage.h"
#include "GetAPI.h"
#include "Funtion.h"
#include "AutoProcess.h"
uint8_t count2=0,wificonf=0,lastMin=0,lastDay=0;
bool intteruptDisable=1,intteruptDisable2=1;
String ssid = "";
String password = "";
bool dhcp;
uint8_t staticIP[4]={192,168,1,252};
uint8_t gateway[4]={192,168,1,1};
uint8_t subnet[4]={255,255,255,0};
IPAddress dns1(8,8,8,8);
IPAddress dns2(8,8,4,4);
uint16_t localPort=80;
WiFiServer server(localPort);//539840836
61
https://timtailieu.vn/
if(intteruptDisable2)return;
if(++timerCount<100)return;
stateUpdate=1;
uint16_t f=flowRateCount;
pumpOnTime++;
if(waterPumpDelay)waterPumpDelay--;
flowRateCount=0;
if(manurePumpOn)flowRate=(uint16_t)(f/flowmeterCalib);
else flowRate=0;
timerCount=0;
if(++onlineSec>=60){
onlineSec=0;
if(++onlineMin>=60){
onlineMin=0;
if(++onlineHour>=24){
onlineHour=0;
incDate(&onlineDay,&onlineMonth,&onlineYear);
}
}
}
Serial.println(String(onlineHour)+':' +String(onlineMin));
if(++count2>=240)count2=0;
}
void setup(){
Serial.begin(115200);
pinMode(led,OUTPUT);digitalWrite(led,0);
pinMode(Setup, INPUT_PULLUP);
Serial2.begin(9600);
if(!EEPROM.begin(EepromSize))Serial.println("failed to initialise
62
https://timtailieu.vn/
EEPROM");
Serial.println("initialise EEPROM OK");
if(!SPIFFS.begin(true))Serial.println("An Error has occurred while
mounting SPIFFS");
SystemInit();
wificonf=digitalRead(Setup);
if(wificonf)checkWifi();
else wifiConfig();
//getDateTime();
PlantingProcessInit();
}
//=====================================================
void loop(){
if(wificonf)checkWifi();
httpProcess();
if(stateUpdate){PlantingProcessRun();stateUpdate=0;}
if(count2%60==5){count2++;readDHT();}//getDateTime();
if((count2%60==25)&&(onlineMin%3==0)){getWeather();count2++;}
63
https://timtailieu.vn/
if((count2%60==25)&&(onlineMin%3==1)){getForecastHourly();count2++;}
if((count2%60==25)&&(onlineMin%3==2)){getForecastDaily();count2++;}
}
//=====================================================
void SystemInit(){
uint8_t i;
readFile("/Setting.txt",dataBuffer);
deserializeJson(document,dataBuffer);
JsonObject documentRoot = document.as<JsonObject>();
String sid = documentRoot["WifiName"];ssid=sid;
Serial.println(ssid);
String pass = documentRoot["WifiPass"];password=pass;
Serial.println(password);
dhcp=documentRoot["DHCP"];
for(i=0;i<4;i++)staticIP[i]=documentRoot["LocalIP"][i];
Serial.println((IPAddress)(staticIP));
for(i=0;i<4;i++)gateway[i]=documentRoot["LocalGateway"][i];
Serial.println((IPAddress)(gateway));
for(i=0;i<4;i++)subnet[i]=documentRoot["LocalSubnet"][i];
Serial.println((IPAddress)(subnet));
localPort=documentRoot["LocalPort"];
Serial.println(localPort);
InitAuthData(PassMax);
intteruptDisable=0;
intteruptDisable2=0;
readFile("/ApiData.txt",dataBuffer);
deserializeJson(document,dataBuffer);
64
https://timtailieu.vn/
documentRoot = document.as<JsonObject>();
String loc = documentRoot["weatherLocation"];
weatherLocation=loc;
String key = documentRoot["weatherKey"];
weatherKey=key;
String aqiloc = documentRoot["airVisualLocation"];
String aqikey = documentRoot["airVisualKey"];
airVisualLocation=aqiloc;
airVisualKey=aqikey;
String uvikey = documentRoot["openuvKey"];
openuvKey=uvikey;
}
void checkWifi(){
if(WiFi.status()==WL_CONNECTED)return;
char wait=0;
Serial.println("Connecting to WiFi..");
WiFi.begin(&ssid[0],&password[0]); // Connect to Wi-Fi
if(!dhcp)WiFi.config(staticIP,gateway,subnet,dns1,dns2);
while(WiFi.status()!=WL_CONNECTED){
Serial.print(".");
digitalWrite(led,1);delay(200);
digitalWrite(led,0);delay(200);
if(++wait>40){Serial.println(".");wifiConfig();wificonf=0;return;}
}
Serial.print("SSID: ");Serial.println(WiFi.SSID());
Serial.print("IP: ");Serial.println(WiFi.localIP());
server.begin(localPort);
}
void wifiConfig(){
WiFi.softAP("AutoPlanting:192.168.11.1","123456789");delay(100);
65
https://timtailieu.vn/
if(!WiFi.softAPConfig(IPAddress(192, 168, 11, 1), IPAddress(192, 168,
11, 1), IPAddress(255, 255, 255, 0))){
Serial.println("AP Config Failed");
}
else{
IPAddress myIP = WiFi.softAPIP();
Serial.print("AP IP address: ");Serial.println(myIP);
Serial.println("Login to config wifi");
digitalWrite(led,1);
server.begin();
}
}
void httpProcess(){
WiFiClient client = server.available();
if(!client)return;
unsigned short i=0,len;
char type=0;
char requestURI[200];
char requestBody[1200];
char httpMethod=0;
static uint16_t httpCount=0;
httpCount++;
if(client.connected()){
delay(30);
len = client.available();
if(!len){client.stop();return;}
digitalWrite(led,1);
while(len--){
if(type==0){
requestURI[i++] = client.read();
66
https://timtailieu.vn/
if(i<4){}
else if(httpMethod==0){
if((requestURI[0]=='G') && (requestURI[1]=='E') &&
(i==4)){i=0;httpMethod=GETT;}
else if((requestURI[0]=='P') && (requestURI[1]=='O') &&
(i==5)){i=0;httpMethod=POSTT;}
else if((requestURI[0]=='H') && (requestURI[1]=='E') &&
(i==5)){i=0;httpMethod=HEAD;}
else if(i>5){httpMethod=UNKNOWN;}
}
else if((requestURI[i-2]=='\r')&&(requestURI[i-
1]=='\n')){requestURI[i-2]=0;type=1;i=0;}
}
else{
requestBody[i++] = client.read();
if(i>1198){requestBody[i]=0;break;}
if(i>3){if(requestBody[i-3]=='\n'&&requestBody[i-
2]=='\r'&&requestBody[i-1]=='\n'){i=0;}}
}
if(len==0 && client.available()>0){delay(30);len=client.available();}
}
if(type==0)requestURI[i]=0;else requestBody[i]=0;
}
if(httpMethod==GETT) Serial.print(httpCount+String(" GET:"));
else if(httpMethod==POSTT)Serial.print(httpCount+String(" POST:"));
else if(httpMethod==HEAD)Serial.print(httpCount+String(" HEAD:"));
else Serial.print(httpCount+String(" UNKNOWN:"));
Serial.println(requestURI);
if(i){Serial.print(String("requestBody:"));Serial.println(requestBody);}
if(httpMethod==GETT){
67
https://timtailieu.vn/
httpGET(requestURI);
if(!imagelen)client.println(dataBuffer);
else{short
r=0;while(imagelen){client.write(dataBuffer[r++]);imagelen--;}}
}
else
if(httpMethod==POSTT){httpPOST(requestURI,requestBody);client.println(d
ataBuffer);}
client.stop();
digitalWrite(led,0);
}
#ifndef __AutoProcess_h__
#define __AutoProcess_h__
#include "Adafruit_Sensor.h"
#include "DHT.h"
#include <Arduino.h>
#define flowSensorPin 18
#define DHTPIN 19
uint16_t temp=315,humi=65;
DHT dht(DHTPIN,DHT11);
#define waterPump 25
#define manurePump 26
#define Lamp 27
#define On 0
#define Off 1
#define flowmeterCalib 75 //750xung/l/s
volatile uint8_t humiRequite=0,pumpMode;
volatile uint16_t waterPumpDelay=0,manurePumpDelay=0;
bool waterPumpOn,manurePumpOn,lampOn,stateUpdate;
68
https://timtailieu.vn/
volatile uint16_t
flowmeterCount=0,flowRateCount,flowRate=0,pumpOnTime,flowOnLitre;
extern uint8_t lastMin,lastDay;
struct SelectType{
uint8_t type;
char name[64];
uint8_t cycle;
uint8_t day;
uint8_t month;
uint8_t year;
uint8_t lastidx;
};
struct TimeType{
uint8_t hour;
uint8_t minute;
};
struct ProcessType{
uint8_t idx;
uint8_t hour;
uint8_t minute;
uint8_t day;
uint8_t month;
uint8_t year;
uint8_t water;
uint8_t manure;
uint8_t humi;
};
struct DailyProcessType{
uint8_t state;
uint8_t hour;
69
https://timtailieu.vn/
uint8_t minute;
uint8_t water; //phut
uint16_t wstate; //sec
uint8_t manure; //lit
uint16_t mstate; //lit*100
uint8_t humi;
uint8_t hstate;
};
#define pProcessMax 300
#define dailyProcessMax 20
struct ProcessType pProcess[pProcessMax];
struct DailyProcessType dailyProcess[dailyProcessMax];
struct SelectType startDate;
struct SelectType selectedProcess;
void IRAM_ATTR flowmeterCounter(){
flowmeterCount++;
flowRateCount++;
}
void readDHT(){
float t = dht.readTemperature();
if(isnan(t))Serial.println("Failed to read temp from DHT sensor!");
else {Serial.println(t);temp=uint16_t(round(t*10));}
float h = dht.readHumidity();
if(isnan(h))Serial.println("Failed to read humi from DHT sensor!");
else{Serial.println(h);humi=uint16_t(round(h));}
}
void incDate(uint8_t *dd,uint8_t *mm,uint8_t *yy){
uint8_t day=*dd,month=*mm,year=*yy;
day++;
if(month==2){
70
https://timtailieu.vn/
if(year%4){if(day>28){day=1;month++;}}
else if(day>29){day=1;month++;}
}
else
if((month==4||month==6||month==9||month==11)&&(day>30)){day=1;mo
nth++;}
else if(day>31){day=1;month++;}
if(month>12){month=1;year++;}
*dd=day;*mm=month;*yy=year;
}
void StartPlantingProcess(struct SelectType *ptr){
char buff[2000],temp[20],times[10];
uint8_t i,j,idx=0,d;
uint8_t day,month,year,startyear=ptr->year,startday=ptr-
>day,startmonth=ptr->month;
intteruptDisable=1;
if(ptr->type==2)readFile("/Process2.txt",buff);
else if(ptr->type==3)readFile("/Process3.txt",buff);
else readFile("/Process1.txt",buff);
intteruptDisable=0;
deserializeJson(document,buff);
JsonObject docRoot= document.as<JsonObject>();
day=startday-1;
month=startmonth,year=startyear;
for(i=1;i<=docRoot["Day"];i++){
incDate(&day,&month,&year);
writestr(docRoot["Type"],ptr->name);
ptr->cycle=docRoot["Day"];
for(j=0;j<docRoot["Count"];j++){
if(i>=docRoot["Action"][j]["startDay"] &&
71
https://timtailieu.vn/
i<=docRoot["Action"][j]["endDay"]){
pProcess[idx].idx=i;
writestr(docRoot["Action"][j]["time"],times);
pProcess[idx].hour=(times[0]&0x0f)*10 + (times[1]&0x0f);
pProcess[idx].minute=(times[3]&0x0f)*10 + (times[4]&0x0f);
pProcess[idx].day=day;
pProcess[idx].month=month;
pProcess[idx].year=year;
pProcess[idx].water=docRoot["Action"][j]["water"];
pProcess[idx].manure=docRoot["Action"][j]["manure"];
pProcess[idx].humi=docRoot["Action"][j]["humi"];
if(pProcess[idx].water||pProcess[idx].manure||pProcess[idx].humi)idx++;
if(idx==pProcessMax){ptr->lastidx=idx;return;}
}
}
}
ptr->lastidx=idx;
idx=0;
while(idx<ptr->lastidx){
for(i=idx+1;i<ptr->lastidx;i++){
if(pProcess[idx].day!=pProcess[i].day)break;
if(pProcess[idx].month!=pProcess[i].month)break;
if(pProcess[idx].year!=pProcess[i].year)break;
if(pProcess[idx].hour<pProcess[i].hour)continue;
if(pProcess[idx].hour<pProcess[i].hour)continue;
if((pProcess[idx].hour==pProcess[i].hour)&&(pProcess[idx].minute<=pPro
cess[i].minute))continue;
72
https://timtailieu.vn/
d=pProcess[idx].hour;pProcess[idx].hour=pProcess[i].hour;pProcess[i].hour
=d;
d=pProcess[idx].minute;pProcess[idx].minute=pProcess[i].minute;pProcess
[i].minute=d;
d=pProcess[idx].water;pProcess[idx].water=pProcess[i].water;pProcess[i].w
ater=d;
d=pProcess[idx].manure;pProcess[idx].manure=pProcess[i].manure;pProce
ss[i].manure=d;
d=pProcess[idx].humi;pProcess[idx].humi=pProcess[i].humi;pProcess[i].hu
mi=d;
}
idx++;
}
}
void GetDailyProcess(){
uint8_t i=0,k=0;
for(uint8_t k=0;k<selectedProcess.lastidx;k++){
if(pProcess[k].day==onlineDay && pProcess[k].month==onlineMonth){
dailyProcess[i].hour=pProcess[k].hour;
dailyProcess[i].minute=pProcess[k].minute;
dailyProcess[i].water=pProcess[k].water;
dailyProcess[i].manure=pProcess[k].manure;
dailyProcess[i].humi=pProcess[k].humi;
dailyProcess[i].wstate=0;
dailyProcess[i].mstate=0;
dailyProcess[i].hstate=0;
73
https://timtailieu.vn/
if((pProcess[k].hour<onlineHour)||(pProcess[k].hour==onlineHour &&
pProcess[k].minute<onlineMin)){
dailyProcess[i].state=0xff;
}
else dailyProcess[i].state=i+1;
i++;
}
}
k--;
if(i)dailyProcess[i].state=0;
else
if((pProcess[k].day+(30*pProcess[k].month)+(365*pProcess[k].year))<(onl
ineDay+(30*onlineMonth)+(365*onlineYear)))dailyProcess[0].state=0xfe;
Serial.println("dailyProcess " + String(i));
}
void PlantingProcessRun(){
if(waterPumpOn&&(pumpMode=='A')){
if(waterPumpDelay==0){
if(manurePumpOn==0){
digitalWrite(waterPump,Off);
waterPumpOn=0;Serial.println("waterPump Off");
}
}
}
if(manurePumpOn&&(pumpMode=='A')){
flowOnLitre=(uint16_t)((flowmeterCount*10)/(flowmeterCalib*6));
if(manurePumpDelay<=flowOnLitre){
manurePumpDelay=0;
digitalWrite(manurePump,Off);
manurePumpOn=0;Serial.println("manurePump Off");
74
https://timtailieu.vn/
if(waterPumpDelay==0 && waterPumpOn==1){
digitalWrite(waterPump,Off);
waterPumpOn=0;Serial.println("waterPump Off");
}
}
}
if(selectedProcess.type==0)return;
for(uint8_t i=0;i<dailyProcessMax;i++){
if(dailyProcess[i].state==0)break;
if((dailyProcess[i].wstate==0) && (dailyProcess[i].mstate==0))continue;
if(waterPumpDelay==0)dailyProcess[i].wstate=0;
if(manurePumpDelay==0)dailyProcess[i].mstate=0;
}
if(lastMin==onlineMin)return;lastMin=onlineMin;
if(lastDay!=onlineDay){GetDailyProcess();lastDay=onlineDay;}
for(uint8_t i=0;i<dailyProcessMax;i++){
if(dailyProcess[i].state==0)break;
if(dailyProcess[i].hour!=onlineHour)continue;
if(dailyProcess[i].minute!=onlineMin)continue;
dailyProcess[i].state=0xff;
if(pumpMode=='M')continue;
if(dailyProcess[i].water){
digitalWrite(waterPump,On);Serial.println("waterPump On");
waterPumpOn=1;
waterPumpDelay=(dailyProcess[i].water*60);
dailyProcess[i].wstate=waterPumpDelay;
pumpOnTime=0;
}
if(dailyProcess[i].manure){
flowmeterCount=0;
75
https://timtailieu.vn/
digitalWrite(waterPump,On);
waterPumpOn=1;
digitalWrite(manurePump,On);
manurePumpOn=1;
manurePumpDelay=(dailyProcess[i].manure*100);
dailyProcess[i].mstate=manurePumpDelay;
flowmeterCount=0;
}
if(dailyProcess[i].humi)humiRequite=dailyProcess[i].humi;
}
}
void PlantingProcessInit(){
pinMode(waterPump,OUTPUT);
pinMode(manurePump,OUTPUT);
pinMode(Lamp,OUTPUT);
digitalWrite(waterPump,Off);waterPumpOn=0;
digitalWrite(manurePump,Off);manurePumpOn=0;
digitalWrite(Lamp,Off);lampOn=0;
pumpMode=EEPROM.read(PumpModeStore);
selectedProcess.type=EEPROM.read(ProcessTypeStore);
if(selectedProcess.type>3)selectedProcess.type=0;
if(selectedProcess.type){
selectedProcess.day=EEPROM.read(ProcessDayStore);
selectedProcess.month=EEPROM.read(ProcessMonthStore);
selectedProcess.year=EEPROM.read(ProcessYearStore);
StartPlantingProcess(&selectedProcess);
}
dht.begin();delay(200);
readDHT();
76
https://timtailieu.vn/
pinMode(flowSensorPin, INPUT_PULLUP);
attachInterrupt(flowSensorPin,flowmeterCounter, FALLING);
if(onlineDay){GetDailyProcess();lastDay=onlineDay;}
startDate.day=onlineDay;startDate.month=onlineMonth;startDate.year=onli
neYear;
}
#endif
77
https://timtailieu.vn/
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT - ĐÁNH GIÁ
1. KẾT QUẢ
Sau thời gian nghiên cứu và thực hiện thi Công đề tài hệ thống giám sát nông
nghiệp bằng IOT, nhóm đã hoàn thành đề tài dù gặp nhiều khó khăn. Trong quá
trình nghiên cứu và thi Công nhóm cũng đã học thêm được nhiều kiến thức mới
bổ ích.
Qua đề tài này, nhóm còn được trau dồi thêm nhiều kỹ năng: thiết kế, lắp đặt
hệ thống điện, mô hình sao cho tối ưu. Hiểu hơn về các cảm biến thông dụng.
Bên cạnh đó, kỹ năng truyền - nhận thông tin nhờ module Esp32 cũng được nhóm
hiểu rõ hơn.
78
https://timtailieu.vn/
• Giao diện của ứng dụng
Hình 59. Giao diện của ứng dụng ở trạng thái tự động (trái)
và bằng tay (phải)
79
https://timtailieu.vn/
Hình 60. Giao diện cài đặt
80
https://timtailieu.vn/
Hình 61. Giao diện theo dõi hằng ngày
81
https://timtailieu.vn/
Hình 62. Cài đặt quy trình tưới nước tưới phân cho rau.
Có thể thêm hoặc bớt quy trình trồng, tùy vào mục đích sử dụng.
82
https://timtailieu.vn/
Hình 64. Giao diện bắt đầu quy trình.
83
https://timtailieu.vn/
Hình 65. Giao diện cài đặt kết nối wifi
84
https://timtailieu.vn/
Hình 66. Giao diện cài đặt API
85
https://timtailieu.vn/
Hình 67. Giao diện theo dõi quy trình
Hệ thống điều khiển thông qua thiết bị thông minh (Smartphone, Laptop,
PC...)
Ứng dụng này có đầy đủ các thông tin được cập nhật liên tục từ bộ điều khiển
và hỗ trợ cho quá trình điều khiển các thiết bị ngoại vi tại vườn.
Ứng dụng này không những là giải pháp tối ưu trong việc sửa chữa, bảo trì
các thiết bị ngoại vi tại vườn, mà còn là ứng dụng thay thế web khi xảy ra sự cố
về Internet.
Người trồng trọt không cần phải lắp đặt hay thao gỡ nhà kính khi muốn trồng
xen canh các loại cây khác nhau, với hệ thống IoT này, điều kiện canh tác có thể
được thay đổi một cách linh hoạt. Chi phí cho lượng điện tiêu thụ cho quá trình
canh tác cũng được giảm đáng kể, vì hệ thống thực hiện điều khiển tắt - mở các
86
https://timtailieu.vn/
thiết bị ngoại vi một cách tự động, nhiệt độ không khí đạt khoảng an toàn, độ ẩm
đất đạt khoảng ổn định cho sự sinh trưởng và phát triển của cây, bơm nước tự
động tắt; ngược lại, khi không đáp ứng được điều kiện môi trường đặt trước, hệ
thống sẽ tự động mở hoặc tắt các thiết bị ngoại vi để đảm bảo môi trường nuôi
trồng luôn ở trạng thái tốt nhất. Chính vì vậy, năng suất canh tác khi sử dụng hệ
thống IoT này sẽ tăng cao; bởi lẽ, điều kiện canh tác không phụ thuộc vào điều
kiện môi trường, đáp ứng được nhu cầu của thị trường, nhu cầu của các khách
hàng khó tính nhất.
2. NHẬN XÉT
Trong quá trình thiết kế và thi công đề tài, nhóm gặp nhiều khó khăn và phát
sinh trong việc lựa chọn linh kiện, hướng thiết kế, nhưng sau khi tìm hiểu thì
những vấn đề trên đã được giải quyết.
Khó khăn lớn nhất của đề tài là việc nghiên cứu ra sau khi thu được giá trị đọc
được từ cảm biến là thông báo để hiển thị lên Web và APP.
Trong đó việc lập trình phần mềm là vấn đề làm nhóm gặp nhiều khó khăn
trong thời gian nghiên cứu và tìm hiểu hướng giải quyết.
Sau thời gian nghiên cứu, thi công thì dự án đã hoàn thành kịp tiến độ. Hệ
thống hoạt động tương đối ổn định. Nhưng những yêu cầu đặt ra đối với hệ thống
chỉ đạt trên 85%, vẫn còn điểm hạn chế là chưa áp dụng được vào qui mô lớn.
3. ĐÁNH GIÁ
Hệ thống có khả năng giúp người dùng giám sát được đối tượng canh tác.
Hệ thống hoạt động ổn định trong thời gian dài, đảm bảo được việc thu thập
thông tin từ đối tượng canh tác cũng như truyền nhận dữ liệu lên web.
Mô hình đã cho ra được một giải pháp toàn diện cho nhà nông:
87
https://timtailieu.vn/
CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
1. KẾT LUẬN
Sau một thời gian nghiên cứu và hoàn thành đề tài, nhóm đã nhận thấy mô
hình đã hiệu quả được 85%, trong thời gian nghiên cứu và thực hiện đề tài, nhóm
đã học hỏi và tìm hiểu thêm được nhiều kiến thức mới cũng như củng cố lại kiến
thức đã học giúp hoàn thành đề tài này. Vì đây là đề tài hướng đến việc giúp cho
những người nông dân giảm bớt thời gian và sức lao động, trong qua trình canh
tác nông nghiệp nên phải chú trọng độ ổn định và chính xác dẫn đến nhiều khó
khăn trong quá trình lập trình. Nhưng nhờ sự hướng dẫn của giảng viên hướng
dẫn và các tài liệu tham khảo thì nhóm đã giải quyết được tương đối yêu cầu của
đề tài.
Trong quá trình thực hiện đề tài về phần cứng, nhóm đã tìm hiểu được chức
năng của các chân IO của board Ardruino, kết hợp với các cảm biến để đọc giá
trị, sử dụng chân TX-RX để giao tiếp và module ESP32. Việc kết hợp các module
này lại với nhau để làm việc ổn định mất nhiều thời gian nhưng cũng học hỏi
được rất nhiều trong quá trình làm.
Tuy rằng sản phẩm đã được hoàn thành nhưng nhóm vẫn nhận thấy sản phẩm
còn nhiều thiếu sót, cần được chỉnh sửa và cải tiến hơn.
− Xây dựng hoàn thành mô hình Hệ thống giám sát nông nghiệp bằng ứng
dụng IOT.
− Mô hình có khả năng cập nhật dữ liệu từ đối tượng canh tác để xử lý theo
yêu cầu mà người dùng cài đặt.
2. HƯỚNG PHÁT TRIỂN
Đề tài cơ bản đáp ứng được những yêu cầu đặt ra tuy nhiên để sản phẩm hoàn
thiện được hơn nữa thì đòi hỏi cần được cải tiến và nghiên cứu thêm.
Về chức năng, thiết bị được nghiên cứu chỉ dừng lại ở các chức năng cơ bản:
88
https://timtailieu.vn/
đọc nhiệt độ độ ẩm đất, độ ẩm không khí.
Một số chức năng nên bổ sung thêm là:
− Độ pH: Xử lý pH trong đất.
− Phát triển mô hình với quy mô lớn hơn.
− Có lò sưởi để tăng nhiệt độ khi nhiệt độ xuống thấp.
− Hoàn thiện mô hình và tối ưu một cách kinh tế hơn.
− Có thể dùng năng lượng từ pin mặt trời để tạo ra nguồn điện.
− Cài đặt giá trị để cảm biến theo điều kiện sống của từng loại cây trồng.
89
https://timtailieu.vn/
TÀI LIỆU THAM KHẢO
[1] Lê Trúc/petrotimes.com, “ Lời giải cho bài toán lao động nông nghiệp”,
2018.
[2] baomoi.com, “Chuyển dịch cơ cấu ngành kinh tế của Việt Nam: thành
tựu và kiến nghị”, 2017.
[3] Trần Thu Hà, Trương Thị Bích Ngà, “Giáo trình Điện tử cơ bản”,
Nhà xuất bản ĐH Quốc Gia TP Vũng Tàu, 2013.
[4] Nguyễn Việt Hùng, Nguyễn Ngô Lâm, Nguyễn Văn Phúc, Đặng
Phước Hải Trang, Giáo trình kỹ thuật truyền số liệu, NXB ĐH Quốc Gia TP.
HCM, 2012.
[5] Marco Schwartz, “Internet of Things with ESP8266”, Packt Publishing,
2016.
[6] Phan Quang Phô, Nguyễn Đức Chiến, “Giáo trình cảm biến”. Nhà
xuất bản Khoa Học Kỹ Thuật, 2000.
[7] Dương Minh Trí, “Cảm biến và ứng dụng”, Nhà xuất bản Khoa học
và Kỹ thuật, 2001.
[8] www.arduino.vn/bai-viet/1226- web-server-voi-arduino-va-esp8266
[9] https://nshopvn.com/product/mach-thu-phat-wifi-esp32-
cam/?utm_source=Google%20Shopping&utm_campaign=GoogleMerchants
-
Feed&utm_medium=cpc&utm_term=9698&gclid=CjwKCAjw1cX0BRBm
EiwAy9tKHoF-c3A0vfmstfgXl0XWgvH-OF_Te-
HSwjHEVjO3qbKMssPTNn4X_xoCd0AQAvD_BwE
[10] https://iotmaker.vn/module-esp32-camera.html
[11] https://htpro.vn/wifi/module-esp32-camera.html
[12] https://bkaii.com.vn/tin-tuc/163-13-cach-thuc-truyen-du-lieu-trong-iot-
cho-cac-ky-su-dien
90
https://timtailieu.vn/
[13] https://vi.wikipedia.org/wiki/Wi-Fi
[14] https://vi.wikipedia.org/wiki/Internet_Protocol
[15] http://arduino.vn/bai-viet/68-cai-dat-driver-va-arduino-ide
[16] https://ifactory.com.vn/tai-sao-nen-ung-dung-iot-trong-nong-nghiep/
91
https://timtailieu.vn/