Vậy nên, cần có sự hỗ trợ của các thiết bị kỹ thuật có khả năng đo đạc, điều khiển các thông số trong môi trường như: nhiệt độ, độ ẩm, chất dinh dưỡng cung cấp phù hợp từng giai đoạn phá
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH
ĐỒ ÁN TỐT NGHIỆP
VƯỜN TỰ ĐỘNG ỨNG DỤNG IOT
Ngành: Kỹ thuật Điện, điện tử
Giảng viên hướng dẫn: Ths.Nghiêm Hoàng Hải
Sinh viên thực hiện: MSSV: Lớp:
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH
ĐỒ ÁN TỐT NGHIỆP
VƯỜN TỰ ĐỘNG ỨNG DỤNG IOT
Ngành: Kỹ thuật Điện, điện tử
Giảng viên hướng dẫn: Ths.Nghiêm Hoàng Hải
Sinh viên thực hiện: MSSV: Lớp:
Trang 3LỜI CẢM ƠN
Lời đầu tiên nhóm em xin chân thành gửi lời cảm ơn sâu sắc đến quý thầy cô, giảng viên trường Đại học Công nghệ Tp.HCM nói chung và các thầy cô khoa Điện – Điện Tử nói riêng Trong suốt quá trình học tập tại trường, quý thầy cô đã tận tình truyền đạt những kiến thức, kinh nghiệm quý báo để nhóm có được để nhóm có được nền tảng và kiến thức để nhóm có thể hoàn thành đề tài tốt nghiệp như ngày hôm nay
Trong suốt quá trình thực hiện đồ án nhóm em đã gặp không ít những khó khăn, vướng mắc về các vấn đề kỹ thuật và các vấn đề liên quan Khi đó, nhóm đã nhận được sự giúp đỡ rất nhiệt tình của Giáo viên hướng dẫn Ths.Nghiêm Hoàng Hải Thầy đã hỗ trợ nhóm trong suốt quá trình thực hiện đề tài, là người đã đưa ra các phương pháp giải quyết khi nhóm gặp vấn đề Trong quá trình thực hiện đề tài nhóm không chỉ có thêm các kiến thức về kỹ thuật mà còn học hỏi thêm tác phong làm việc nghiêm túc và chuyên nghiệp của thầy Nhóm em xin được gửi lời cảm ơn chân thành đến thầy
Qua đây, nhóm cũng xin gửi lời cảm ơn đến gia đình, người thân và bạn bè những người đã luôn quan tâm, giúp đỡ và tạo điều kiện thuận lợi nhất trong suốt quá trình thực hiện đề tài này
Cuối cùng nhóm cũng xin gửi lời cảm ơn đến ban giám hiệu trường Đại học Công Nghệ Tp.HCM đã luôn tạo điều kiện thuận lợi để nhóm có thể hoàn thành đồ án tốt nghiệp
Thành phố Hồ Chí Minh, ngày 15 tháng 08 năm 2021
(SV ký và ghi rõ họ tên)
Trang 4MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC HÌNH ẢNH vi
LỜI MỞ ĐẦU 1
CHƯƠNG 1 GIỚI THIỆU 2
1.1 Đặt vấn đề 2
1.1.1 Tình hình nghiên cứu ngoài nước 3
1.1.2 Tinh hình nghiên cứu trong nước 3
1.2 Mục tiêu của đề tài 4
1.3 Phương pháp nghiên cứu 4
1.4 Phạm vi nghiên cứu 4
CHƯƠNG 2 TỔNG QUAN GIẢI PHÁP 6
2.1 Đặt tính cây xanh trong nông nghiệp 6
2.2 Các nhân tố ảnh hưởng đến cây trồng 6
2.2.1 Ảnh hưởng của ánh sáng đến quang hợp 6
2.2.2 Ảnh hưởng của nồng độ CO2 6
2.2.3 Ảnh hưởng của nước 6
2.2.4 Ảnh hưởng của nhiệt độ 7
2.2.5 Ảnh hưởng của nguyên tố khoáng 7
2.3 Tăng năng suất cây trồng 7
2.4 Ứng dụng IoT trong nông nghiệp 8
2.4.1 Giới thiệu 8
2.4.2 Cấu trúc cơ bản của một hệ thống ứng dụng công nghệ IoT 8
2.5 Các chuẩn dữ liệu, chuẩn kết nối 10
2.5.1 Chuẩn giao tiếp UART 10
2.5.2 Chuẩn giao tiếp I2C 11
Trang 52.5.3 Giao thức MQTT 12
2.5.4 Giao thức truyền dữ liệu bằng bluetooth 13
CHƯƠNG 3 PHƯƠNG PHÁP GIẢI QUYẾT 15
3.1 Sơ đồ khối 15
3.2 Lưu đồ giải thuật 15
3.3 Sờ đồ kết nối hệ thống 18
3.4 Sơ đồ nguyên lý 19
3.5 Ứng dụng Blynk 20
3.5.1 Các thành phần chính 20
3.5.2 Lý do chọn Blynk 20
3.5.3 Cách thức hoạt động 21
CHƯƠNG 4 QUY TRÌNH THIẾT KẾ 30
4.1 Giới thiệu Nodemcu Esp8266 30
4.1.1 Khái niệm 30
4.1.2 Phần mềm lập trình Nodecm Esp8266 31
4.1.3 Lý do chọn Nodemcu Esp8266 32
4.2 Màn hình LCD 32
4.3 Cảm biến 34
4.3.1 Cảm biến nhiệt độ DHT11 34
4.3.2 Cảm biến độ ẩm đất 34
4.3.3 Cảm biến mưa 35
4.3.4 Cảm biến ánh sáng 36
4.3.5 Module L298N 37
4.3.6 Mạch hạ áp XL4005 39
4.3.7 Relay 39
4.3.8 Nguồn 40
CHƯƠNG 5 THI CÔNG 42
5.1 Quy trình thi công: 42
5.2 Chạy thử sản phẩm, mô hình thực tế: 42
Trang 6CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 44
6.1 Kết luận 44
6.2 Hướng phát triển 44
PHỤ LỤC 45
TÀI LIỆU THAM KHẢO 56
Trang 7DANH MỤC HÌNH ẢNH
Hình 1.1 Mô hình nông trại thẳng đứng 3
Hình 1.2 Hệ thống tưới cây tự động của kỹ sư Vi Toàn Nghĩa 4
Hình 2.1 Ứng dụng IoT trong nông nghiệp 8
Hình 2.2 Bốn phần cơ bản của một hệ thống IoT 9
Hình 2.3 Hệ thống truyền dữ liệu bất đồng bộ 10
Hình 3.1 Sơ đồ khối hệ thống 15
Hình 3.2 Lưu đồ giải thuật hệ thống 17
Hình 3.3 Sơ đồ kết nối hệ thống 18
Hình 3.4 Sơ đồ nguyên lí 19
Hình 3.5 Biểu tượng Blynk 20
Hình 3.6 Giao diện Blynk 21
Hình 3.7 Tạo project 22
Hình 3.8 Chọn Board 23
Hình 3.9 Blynk gửi mã Auth Token qua gmail 24
Hình 3.10 Chọn đối tượng trong Widget Box 25
Hình 3.11 Chọn cấu hình chân, mức logic 26
Hình 3.12 Chọn đúng module sử dụng 27
Hình 3.13 Tải thư viện Blynk 28
Hình 3.14 Giao diện hoàn chỉnh 29
Hình 4.1 Nodemcu Esp8266 30
Hình 4.2 Sơ đồ chân Nodemcu Esp8266 31
Hình 4.3 Giao diện phần mềm Arduino IDE 32
Hình 4.4 Màn hình LCD 33
Hình 4.5 Cấu tạo màn hình LCD 33
Hình 4.6 Cảm biến DHT11 34
Hình 4.7 Cảm biến độ ẩm đất 35
Hình 4.8 Cảm biến mưa 36
Trang 8Hình 4.9 Cảm biến ánh sáng 37
Hình 4.10 Module L298N 38
Hình 4.11 Mạch hạ áp XL4005 39
Hình 4.12 Module 2 Relay 40
Hình 4.13 Adapter 12v-5A 41
Hình 5.1 Chạy thử sản phẩm 42
Hình 5.2 mô hình thực tế 43
Trang 9LỜI MỞ ĐẦU
Cùng với sự phát triển lớn mạnh của công nghiệp, công nghệ thông tin, việc sự dụng công nghệ cao trong ngành nông nghiệp hiện nay cũng là một vấn đề rất quan trọng Tại nhiều nước phát triển trên thế giới như Nhật Bản, Anh, Pháp, Mĩ… Các vườn ươm đã được nghiên cứu, ứng dụng công nghiệp và ứng dụng công nghệ thông tin vào từ lâu, họ đem lĩnh vực tự động hóa áp dụng vào nông nghiệp đem lại hiệu quả vô cùng to lớn
Việc áp dụng tự động hóa vào nông nghiệp đặc biệc là vườn ươm thì đã giúp cho việc giám sát, điều khiển các công việc một cách dễ dàng hơn bao giờ hết Việc điều khiển có thể là tự động hoặc người điều khiển từ xa mà không cần phải đến tận nơi Ngoài ra cùng với sự phát triển của công nghệ thông tin thì khoảng cách về không gian thời gian được rút ngắn, cho phép người vận hành điều khiển hệ thống của mình từ khoảng cách hàng ngàn kilomet với chiếc máy tính hoặc điện thoại
Nhận thấy nhu cầu về trồng rau ở mỗi gia đình ngày một tăng cao, để có được một không gian đủ để làm một hệ thống vườn tự động để trồng rau và phục vụ cho chính gia đình mỗi người thì không dễ Do vậy ý tưởng về một khu vườn tự động mini ra đời
Không phải tốn không gian lớn làm vườn vẫn có thể trồng rau, có thể biến nó trở thành sản phẩm trang trí ngay trong nhà của chúng ta Đem mô hình này đến với nhiều gia đình hơn trong bối cảnh nền nông nghiệp nước ta còn quá phụ thuộc vào khí hậu tự nhiên với những phương pháp canh tác truyền thống
Vậy nên, cần có sự hỗ trợ của các thiết bị kỹ thuật có khả năng đo đạc, điều khiển các thông số trong môi trường như: nhiệt độ, độ ẩm, chất dinh dưỡng cung cấp phù hợp từng giai đoạn phát triển cây trồng, xuất phát từ những vấn đề trên chúng em đã nghiên cứu và tiến hành thiết kế mô hình vườn rau tự động ứng dụng IoT
Vì thời gian và kiến thức còn hạn hẹp nên không tránh khỏi những thiếu sót mong quý Thầy Cô thông cảm Chúng em mong được nhận những ý kiến từ quý Thầy Cô và các bạn để có thể hoàn thiện và phát triển đề tài
Trang 10CHƯƠNG 1 GIỚI THIỆU
Trong bối cảnh thực phẩm bẩn đang lan tràn mọi ngõ ngách, rau phun thuốc trừ sâu buổi sáng buổi chiều hái đem ra chợ khiến nhiều người dân lúc nào cũng cảm thấy nơm nớp về chuyện khoảng cách từ mâm cơm đến nghĩa địa quá gần Nhiều người với tiêu chí chỉ tin vào chính mình đã chuyển hướng sang vườn rau tự trồng
để phần nào đảm bảo an ninh lương thực cho gia đình
Tuy nhiên cuộc sống đô thị với thời gian eo hẹp và không gian chật chội khiến một khu vườn trên mái trở thành gánh nặng khi ngày nào cũng phải cặm cụi tưới bón Có gia đình từ khi trồng vườn trên mái không dám đi chơi xa chỉ vì sợ rau cỏ chết sạch mấy ngày xa nhà
Trong điều kiện của vườn, sự phát sinh, phát triển và lây lan các dịch bệnh do nhiều yếu tố ngoại như: độ ẩm không khí trong vườn luôn cao, mật độ cây trong vườn dày đặc và giai đoạn này cây trồng rất dễ bị các vi sinh vật gây bệnh tấn công thông qua các bộ phận lá mầm
Vì vậy giai đoạn cây con là giai đoạn yêu cầu cần có những chế độ tưới đặc biệt Không những cung cấp độ ẩm cho cây mà cần kết hợp hệ thống cung cấp dinh dưỡng, hệ thống phun thuốc bảo vệ thực vật và đặt biệt kích thích hạt nước tưới phun phải nhỏ để tránh làm rách, nát lá mầm cũng như thân non của cây
Từ những đánh giá trên, em quyết định làm một hệ thống quản lý vườn thông minh với tính năng đáp ứng được cơ bản nhu cầu của người sử dụng
Trang 111.1.1 Tình hình nghiên cứu ngoài nước
Có thể nói Mỹ, Singapore, Nhật Bản là những quốc gia đi tiên phong trong phát triển nông nghiệp cao với những công nghệ chăm sóc cây trồng vô cùng độc đáo như hệ thống tưới nhỏ giọt, hệ thống tưới phun sang, hệ thống tưới phun mưa, hệ thống tưới cảnh quan và ngay cả hệ thống thủy canh trồng cây không dùng đất
Và gần đây nhất hướng đến nhu cầu trồng cây trên những diện tích nhỏ hẹp nên
có thêm giải pháp trồng rau xanh trên những nông trại thẳng đứng như Hình 1.1 đang là xu hướng được quan tâm tại nhiều nơi hiện nay bởi vựa tận dụng tối đa diện tích canh tác, vừa cho rau sạch với sản lượng lớn, phục vụ nhu cầu cho nhiều hộ gia đình
Hình 1.1 Mô hình nông trại thẳng đứng 1.1.2 Tinh hình nghiên cứu trong nước
Nước ta hiện nay thuật ngữ nông nghiệp hiện đại không còn xa lạ gì với nhiều người nhưng do chi phí đầu tư hệ thống chăm sóc cây tự động khá cao do phải nhập chủ yếu tử nước ngoài, dẫn đến việc nhân rộng mô hình chưa phổ biến, và hạn chế những hệ thống chăm sóc cây tự động chủ yếu hướng tới đối tượng người dùng phải
có diện tích trồng cây rộng lớn, chưa chú trọng đến thị trường người dùng có diện tích trồng eo hẹp
Trong nước cũng có rất nhiều nghiên cứu hệ thống tưới cây tự động của kỹ sư
Vi Toàn Nghĩa như Hình 1.2, sau đó là hàng loạt công trình nghiên cứu hệ thống trồng cây điều khiển từ xa, hệ thống trồng cây tự động hướng đến cả phân khúc người sử dụng có quỹ tích eo hẹp
Trang 12Hình 1.2 Hệ thống tưới cây tự động của kỹ sư Vi Toàn Nghĩa
Nhưng những nghiên cứu còn hạn chế, chưa tận dụng hạ tầng internet hiện có
để mở rộng người dùng với hệ thống trồng cây có giám sát tự động từ xa, hướng đến cả người dùng không những có diện tích trồng nhỏ, không có thời gian chăm sóc nhưng vẫn có vườn rau an toàn cho riêng mình
1.2 Mục tiêu của đề tài
➢ Xây dựng được mô hình hệ thống
➢ Module cảm biến thu thập mọi thông tin về môi trường như nhiệt độ, ánh sáng, độ ẩm, từ đó có những điều chỉnh phù hợp với điều kiện phát triển của cây
➢ Điều khiển hệ thống bằng hai phương pháp tự động hoặc bằng tay
➢ Người sử dụng có thể giám sát, điều khiển từ xa thông qua mạng internet hoặc wifi
➢ Có thể điều khiển trực tiếp bằng nút nhấn, và giám sát các thông số nhiệt độ,
độ ẩm, hiển thị trên màn hình LCD khi không có wifi hoặc mạng internet
1.3 Phương pháp nghiên cứu
➢ Nghiên cứu, tham khảo thông qua các tài liệu trên mạng, tài liệu nước ngoài
➢ Thiết kế hệ thống
➢ Lập trình điều khiển
➢ Vận hành thử nghiệm
Trang 13➢ Đánh giá ưu nhược điểm
➢ Khắc phục
➢ Hoàn thiện hệ thống
1.4 Phạm vi nghiên cứu
➢ Nghiên cứu Nodemcu Esp8266
➢ Nghiên cứu các loại cảm biến phục vụ cho mục đích của đề tài
➢ Xây dựng các module thành phần của hệ thống như sau:
+ Module thông tin đầu vào là các giá trị, thông số từ các cảm biến
+ Module thông tin đầu ra điều khiển các thiết bị bật tắt theo chức năng định trước
+ Module điều khiển trung tâm của hệ thống là board Nodemcu Esp8266
Trang 14CHƯƠNG 2 TỔNG QUAN GIẢI PHÁP
2.1 Đặt tính cây xanh trong nông nghiệp
Quang hợp ở cây xanh là qúa trình trong đó năng lượng ánh sáng mặt trời được diệp lục hấp thụ để tạo ra cacbohiđrat và O2 từ khí CO2 và nước
Như vậy đặc tính quang hợp của cây trồng phụ thuộc vào các yếu tố chính như: cường độ ánh sáng, nhiệt độ, lượng CO2, và nước
2.2 Các nhân tố ảnh hưởng đến cây trồng
2.2.1 Ảnh hưởng của ánh sáng đến quang hợp
Ánh sáng ảnh hưởng đến quang hợp về hai mặt: cường độ sáng và quang phổ sáng
➢ Cường độ ánh sáng: có hai trị số liên quan đến quang hợp đó là điềm bù sáng
và điểm bảo hòa ánh sáng
+ Điểm bù sáng: là cường độ sáng mà tại đó cường độ quang hợp cân bằng với cường độ hô hấp
+ Điểm bảo hòa ánh sáng: là trị số ánh sáng mà từ đó cường độ quang hợp không tăng thêm mặc dù cường độ sáng tiếp tục tăng
➢ Quang phổ sáng: các tia sáng khác nhau ảnh hưởng khác nhau đến quang hợp Quang hợp chỉ xảy ra ở miền ánh sáng xanh, tím và đỏ Thành phần ánh sáng biến động phụ thuộc vào độ sâu trong môi trường nước, thời gian của ngày, cây mọc dưới tán
2.2.2 Ảnh hưởng của nồng độ CO2
Cây quang hợp được ở nồng độ CO2 thấp nhất là 0,0,8 – 0,01% Khi tăng nồng
độ CO2 lúc đầu cường độ quang hợp tăng tỉ lệ thuận sau đó tăng chậm cho tới khi đền trị số bão hòa CO2 Vượt quá mức đó thì cường độ quang hợp lại giảm
2.2.3 Ảnh hưởng của nước
Ảnh hưởng của nước đến sự đóng mở khí khổng, nên ảnh hưởng đến khả năng hấp thụ CO2 vào lá để tiến hành các phản ứng quang hợp Nước quyết định tốc độ
Trang 15vận chuyển các sản phẩm quang hợp ra khỏi lá Thiếu nước sản phẩm quang hợp sẽ
bị tắc nghẽn dẫn đến ức chế quang hợp Khi cây thiếu nước đến 40 – 60% thì quang hợp sẽ giảm hoặc ngưng quang hợp
2.2.4 Ảnh hưởng của nhiệt độ
Nhiệt độ ảnh hưởng đến các phản ứng Enzim chủ yếu trong pha tối của quang hợp Đối với một số loại cây khả năng quang hợp tăng theo nhiệt độ đến giá trị tối
ưu Trên ngưỡng đó quang hợp sẽ giảm dần
Khi nhiệt độ quá lạnh , một số cây trồng sẽ có hiện tượng chết rét; thời thiết nóng ở trên Cây khô héo và có thể bị chết Cây trồng quang hợp hiệu quả ở các nhiệt độ như sau: ; ; v.v tùy theo từng loại cây trồng
2.2.5 Ảnh hưởng của nguyên tố khoáng
Các nguyên tố khoáng tham gia vào vào việc cấu thành nên Enzim quang hợp
và diệp lục của lá cây, điều tiết độ đóng mở của khí khổng và liên quan đến quá trình phân ly nước
2.3 Tăng năng suất cây trồng
Để tăng năng suất cây trồng có nhiều cách như chọn lựa giống mới, cải tạo đất, tuy nhiên biện pháp hữu hiệu nhất là tăng năng suất cây trồng thông qua sự điều khiển quang hợp của cây Tức là tăng diện tích bộ lá, tăng cường độ quang hợp và tăng hệ số kinh tế
Tăng diện tích lá là áp dụng các biện pháp kĩ thuật như chăm sóc, bón phân, tưới nước hợp lý phù phợp với loài và giống cây trồng
Tăng cường độ quang hợp là tuyển chọn và tạo giống mới có cường độ và hiệu suất quang hợp cao kết hợp áp dụng kĩ thuật chăm sóc hợp lí
Tăng hệ số kinh tế là tăng hệ số kinh tế của cây trồng bằng biện pháp chọn giống và bón phân
[Trích Giáo trình chồng trọt cơ bản Nhà xuất bản Hà Nội, xuất bản năm 2012
Trang 35 – 42]
Trang 162.4 Ứng dụng IoT trong nông nghiệp
2.4.1 Giới thiệu
Từ khi lần đầu được giới thiệu cách đây 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 như Hình , 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 nên nông nghiệp trong tương lai gần
Hình 2.1 Ứng dụng IoT trong nông nghiệp 2.4.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 IoT gồm bốn thành phần cơ bản chính như Hình gồm: Things, Gateways, Internet, Service
Trang 17Hình 2.2 Bốn phần cơ bản của một hệ thống IoT
Things là vạn vật, ngày nay có vô vàn vật dụng đang hiện hữu trong cuộc sống,
ở trên 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 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ý
Gateways có nghĩa là trạm kết nối, 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 dùng để kết nối giữa đ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
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ết bị lặp và nhiều thiết bị khác có thẻ kiếm soát lưu lượng dữ liệu thông tin và cũng được kết nối đên mạng lưới viễn thông và cáp
Serivce 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 hết giá trị của sản phẩm
Trang 182.5 Các chuẩn dữ liệu, chuẩn kết nối
2.5.1 Chuẩn giao tiếp UART
UART được viết tắt là Universal Asynchronous Receiver Transmitter có nghĩa
là truyền dữ liệu nối tiếp bất đồng bộ Hệ thống truyền dữ liệu bất đồng bộ như Hình có một đường phát dữ liệu và một đường nhận dữ liệu, không có tín hiệu xung clock nên gọi là bất đồng bộ Để truyền được dữ liệu thì cả hai bên truyền và nhận phải tự tạo xung clock có cùng tần số và thường gọi là tốc độ baud Ví dụ như
2400 baud, 4800 baud, 9600 baud,…
Hình 2.3 Hệ thống truyền dữ liệu bất đồng bộ
Sau đây là các khái niệm quan trọng trong chế độ truyền thông này
Baudrate là số bit truyền được trong 1s, ở truyền nhận không đồng bộ thì ở các bên truyền và nhận phải thống nhất Baudrate Các thông số tốc độ Baudrate thường hay sử dụng dể giao tiếp với máy tính là 600, 1200, 2400, 4800, 9600, 14400,
19200, 38400, 56000, 57600, 115200
Frame là khung truyền, ngoài việc giống nhau của tốc độ baud 2 thiết bị truyền nhận thì khung truyền của bên cũng được cấu hình giống nhau Khung truyền quy định số bit trong mỗi lần truyền, bit bắt đầu start bit, các bit kết thúc stop bit, bit kiểm tra tính chẵn lẻ Parity, ngoài ra số bit quy định trong một gói dữ liệu cũng được quy định bởi khung truyền Có thể thấy, khung truyền đóng một vai trò rất quan trọng trong việc truyền thành công dữ liệu
Start bit là bit đầu tiên được truyền trong một frame, bit này có chức năng báo cho bên nhận rằng sắp có một gói dữ liệu truyền đến Đường truyền UART luôn ở trạng thái cao mức 1 cho đến khi chip muốn truyền dữ liệu đi thì nó gởi bit start bằng cách kéo xuống mức 0 Như vậy start bit giá trị điện áp 0V và phải bắt buộc có bit start trong khung truyền
Trang 19Data hay còn gọi dữ liệu là thông tin mà chúng ta nhận được trong quá trình truyền và nhận Data trong STM32 có quy định khung truyền là 8bit hoặc 9bit Trong quá trình truyền UART, bit có trọng số thấp nhất (LSB – least significant bit – bên phải) sẽ được truyền trước và cuối cùng là bit có ảnh hưởng cao nhất (MSB – most significant bit – bên trái)
Parity bit: Parity dùng để kiểm tra dữ liệu truyền có đúng hay không Có 2 loại Parity đó là Parity chẵn (even parity) và parity lẽ (odd parity) Parity chẵn nghĩa là
số bit 1 trong trong data truyền cùng với bit Parity luôn là số chẵn, ngược lại nếu Parity lẽ nghĩa là số bit 1 trong data truyền cùng với bit Parity luôn là số lẽ Bit Parity không phải là bit bắt buộc và vì thế chúng ta có thể loại bỏ bit này ra khỏi khung truyền
Stop bits là một bit báo cáo để cho bộ truyền/nhận biết được gói dữ liệu đã được gởi xong Stop bits là bit bắt buộc phải có trong khung truyền Stop bits có thể là 1bit, 1.5bit, 2bit, 0.5bit tùy thuộc vào ứng dụng UART của người sử dụng
2.5.2 Chuẩn giao tiếp I2C
I2C là tên viết tắt của cụm từ tiếng anh “Inter-Integrated Circuit” Nó là một giao thức giao tiếp được phát triển bởi Philips Semiconductors để truyền dữ liệu giữa một bộ xử lý trung tâm với nhiều IC trên cùng một board mạch chỉ sử dụng hai đường truyền tín hiệu
Do tính đơn giản của nó nên loại giao thức này được sử dụng rộng rãi cho giao tiếp giữa vi điều khiển và mảng cảm biến, các thiết bị hiển thị, thiết bị IoT, EEPROMs, v.v …
Đây là một loại giao thức giao tiếp nối tiếp đồng bộ Nó có nghĩa là các bit dữ liệu được truyền từng bit một theo các khoảng thời gian đều đặn được thiết lập bởi một tín hiệu đồng hồ tham chiếu
I2C sử dụng hai đường truyền tín hiệu:
➢ Một đường xung nhịp đồng hồ (SCL) chỉ do Master phát đi thông thường ở 100kHz và 400kHz, mức cao nhất là 1Mhz và 3.4 Mhz
➢ Một đường dữ liệu (SDA) theo hai hướng
Trang 20Có rất nhiều thiết bị có thể cùng được kết nối vào một bus I2C, tuy nhiên sẽ không xảy ra chuyện nhầm lẫn giữa các thiết bị, bới mỗi thiết bị sẽ được nhận ra bởi một địa chỉ duy nhất với một quan hệ chủ tớ tồn tại trong suốt thời gian kết nối Mỗi thiết bị có thể hoạt động như là thiết bị nhận hoặc truyền dữ liệu hay có thể vừa truyền vừa nhận Hoạt động truyền hay nhận còn tùy thuộc vào thiết bị đó là chủ hay tớ
Một thiết bị hay một IC khi kết nối với bus I2C, ngoài một địa chỉ để phân biệt,
nó còn được cấu hình là thiêt bị chủ hay tớ Đó là vì trên một bus I2C thì quyền điều khiển thuộc về thiết bị chủ Thiết bị chủ nắm vai trò tạo xung đồng hồ cho toàn hệ thống, khi giữa hai thiết bị chủ và tớ giao tiếp với nhau thì thiết bị chủ có nhiệm vụ tạo xung đồng hồ và quản lý địa chỉ của thiết bị tớ trong suốt quá trình giao tiếp
Điểm mạnh của I2C chính là hiệu suất và sự đơn giản của nó, một khối điều khiển trung tâm có thể điều khiển cả một mạng thiết bị mà chỉ cần hai lối ra điều khiển
2.5.3 Giao thức MQTT
MQTT là một giao thức truyền thông điệp theo mô hình xuẩn bản và theo dõi,
sử dụng cho các thiết bị IoT với băng thông thấp, độ tin cậy cao và khả năng sử dụng trong mạng lưới không ổn định Bởi vì giao thức nay sử dụng băng thông thấp trong môi trường có độ trễ cao nên nó là một giao thức lý tưởng cho các ứng dụng M2M
Kiến trúc mức cao của MQTT gồm hai thành phần chính là Broker và Client
Trong đó Broker được coi như là trung tâm, nó là điểm giao của tất cả các kết nối đến từ client Nhiệm vụ của nó là nhận messeage theo hàng đợi rồi chuyển chúng tới một địa chỉ cụ thể
Client thì được chia thành hai nhóm chính là xuấn bản và giỏi Client là các thành phần phần mềm hoạt động tại edge divice nên chúng được thiết kế để có thể hoạt động một cách linh hoạt Nhiệm vụ của Client là xuất bản các messenge lên các chủ đề cụ thể hoặc theo dõi một chủ đề nào đó để nhận messenge từ chủ đề này
Trang 212.5.4 Giao thức truyền dữ liệu bằng bluetooth
Bluetooth là chuẩn kết nối không dây có tần số 2,4 Ghz Đây là công nghệ giúp trao đổi dữ liệu giữa các thiết bị điện tử với nhau tạo thành mạng cục bộ nhỏ
Khi hai thiết bị được kết nối với nhau bằng bluetooth có thể chia sẽ tập tin giữa hai thiết bị Do là một chuẩn điện tử, nó bắt buộc các hãng sản xuất các thiết bị phải tuân thủ các tiêu chuẩn kỹ thuật chung nhằm tạo sự tương thích tối ưu giữa các thiết bị với nhau
Các chuẩn kết nối bluetooth từ xưa đến nay gồm:
➢ Bluetooth 1.0 và 1.0B: đạt tốc độ xấp xỉ 1Mbps nhưng công nghệ này lại gặp nhiều vấn đề về khả năng tương thích
➢ Bluetooth 1.1 đây là bản được chuẩn hóa theo tiêu chuẩn IEEE 802.15 và là phiên bản sửa lỗi của phiên bản 1.0 nhưng không thay đổi tốc độ
➢ Bluetooth 1.2 phiên bản được cải thiện hơn về việc làm giảm thời gian dò tìm và tăng tốc độ kết nối hơn so với 1.1 lên tới 721kbs/s
➢ Bluetooth 2.0 + EDR: là phiên bản được công bố năm 2007, phiên bản này
ổn định hơn và cho tốc độ chia sẻ nhanh hơn, đồng thời giảm mức độ tiêu thụ năng lượng
➢ Bluetooth 2.1 + EDR: đây là phiên bản nâng cấp của 2.0 với sự cải thiện về hiệu năng và tiết kiệm năng lượng hơn so với những phiên bản trước Một nhược điểm của phiên bản này là nó không cho phép truyền những file có dung lượng lớn (khoảng 1GB trở lên), thế nên nếu muốn chuyển những file
có dung lương từ 1 đến 2GB trở lên giữa các thiết bị thì chỉ có thể dùng cáp sạc USB để truyền
➢ Bluetooth 3.0 + HS: phiên bản này được SIG công bố vào ngày 21/4/2009 với sự tốc độ truyền tải dữ liệu lên tới 24Mbps Ngoài ra, phiên bản này giúp các thiết bị tương tác tốt hơn, tăng khả năng kết nối và tiết kiệm năng lượng hơn nhờ chức năng điều khiển năng lượng nâng cao
➢ Bluetooth 4.0 + LE: SIG công bố phiên bản 4.0 vào ngày 30/6/2010 là sự kết hợp giữa Classic Bluetooth, Bluetooth high speed và Bluetooth Low Energy
Trang 22Phiên bản này giúp những thiết bị kết nối với nhau nhanh hơn với công nghệ Bluetooth HS và tiết kiệm năng lượng hơn so với các phiên bản trước bằng công nghệ Bluetooth LE
➢ Bluetooth 4.1: đây là phiên bản nâng cấp của Bluetooth 4.0, mang đến tốc độ truyền tải dữ liệu nhanh hơn và giúp các thiết bị di động thông minh dễ dàng kết nối hơn so với trước đây
➢ Bluetooth 4.2: được công vào ngày 2/12/2014 với những đặc tính được cải tiến gồm tăng tốc độ lên 2.5 lần tăng mức độ bảo mật và tiết kiệm năng lượng hơn
Trang 23CHƯƠNG 3 PHƯƠNG PHÁP GIẢI QUYẾT
3.1 Sơ đồ khối
Sơ đồ khối hệ thống như Hình 3 gồm năm thành phần:
➢ Khối trung tâm xử lí sử dụng Nodemcu Esp 8266 dùng để điều khiển các thiết bi, đọc dữ liệu từ cảm biến, giao tiếp với màn hình LCD, kết nối mạng wifi hoặc internet
➢ Khối cảm biến bao gồm cảm biến nhiệt độ, cảm biến độ ẩm, cảm biến ánh sáng, cảm biến mưa, dùng để thu thập dữ liệu về nhiệt độ, độ ẩm,
độ sáng trong môi trường khu vườn từ đó đưa tín hiệu về khối trung tâm
xử lí
➢ Module điều khiển nhận dữ liệu từ khối trung tâm xử lí thông qua các giá trị, dữ liệu từ cảm biến trước đó để điều khiển bật tắt các thiết bị
➢ Khối thiết bị bao gồm đèn, quạt, bơm nước, rèm che mưa
➢ Khối nguồn giúp cung cấp điện cho toàn bộ hệ thống
Hình 3.1 Sơ đồ khối hệ thống 3.2 Lưu đồ giải thuật
Lưu đồ giải thuật hệ thống như Hình hoạt động như sau:
Ban đầu khởi động hệ thống sau đó ta cài đặt các giá trị thông số như độ ẩm, nhiệt độ, ánh sáng trên thiết bị sử dụng wifi hoặc internet, tiếp theo ta chọn chế độ điều khiển hệ thống
Trang 24Có hai chế độ điều khiển là tự động hoặc bằng tay
+ Đèn sẽ tự bật nếu trời tối và tự tắt nếu trời sáng
+ Khi cảm biến mưa phát hiện trời mưa thì rèm che tự động mở ra, hết mưa rèm che đóng lại
➢ Chế độ bằng tay:
+ Ở chế độ bằng tay thì sẽ điều khiển trực tiếp bằng các nút nhấn ON/OFF trên thiết bị sử dụng wifi, mạng internet để bật tắt các thiết bị, nếu ko có wifi và mạng internet có thể điểu khiển các nút nhấn thủ công trên bảng điều khiển
Trang 25Hình 3.2 Lưu đồ giải thuật hệ thống
Trang 263.3 Sờ đồ kết nối hệ thống
Hình 3.3 Sơ đồ kết nối hệ thống
Trang 27➢ Hệ thống vẫn hoạt động bình thường khi mất kết nối với wifi
➢ Ở chế độ manual điều khiển tắt mở các thiết bị bằng nút nhấn tại mô hình hoặc app trên điện thoại, hiển thị dữ liệu cảm biến trên LCD và điện thoại
➢ Ở chế độ auto hệ thế sẽ kiểm tra dữ liệu đọc từ cảm biến để so sánh với giá trị hạn mức được cài đặt trên app
➢ Nếu độ ẩm đất thấp dưới mức cài đặt hệ thống sẽ tự động bật bơm tưới và hiển thị trên app cho đến khi độ ẩm đất đạt mức yêu cầu
➢ Hệ thống đọc cảm biến ánh sáng để điều khiển mức sáng của đèn, trời càng tối đèn càng sáng và ngược lại
Trang 283.5 Ứng dụng Blynk
Blynk (Hình 3.5) là một ứng dụng chạy trên nền tảng iOS và Android để điều khiển và giám sát thiết bị thông qua internet Blynk không bị ràng buộc với những phần cứng cụ thể nào cả, thay vào đó, nó hỗ trợ phần cứng để lựa chọn như Arduino, Raspberry Pi, ESP8266 và nhiều module phần cứng phổ biến khác
Hình 3.5 Biểu tượng Blynk 3.5.1 Các thành phần chính
Có ba thành phần chính trong nền tảng là Blynk app, Blynk sever, Blynk library
➢ Blynk app cho phép tạo giao diện cho sản phẩm của bạn bằng cách kéo thả các chức năng khác nhau mà nhà cung cấp đã thiết kế sẵn
➢ Blynk Server chịu trách nhiệm xử lý dữ liệu trung tâm giữa điện thoại, máy tính bảng và phần cứng Người dùng có thể sử dụng Blynk Cloud của Blynk cung cấp hoặc tự tạo máy chủ Blynk riêng của bản thân
➢ Library Blynk support cho hầu hết tất cả các nền tảng phần cứng phổ biến, cho phép giao tiếp với máy chủ và xử lý tất cả các lệnh đến và đi
➢ Không phải lập trình android hay ios: Nếu như không có kiên thức về làm app trên điện thoại thì việc điều khiển thiết bị từ chính smartphone của mình quả là điều vô cùng khó khăn và phức tạp Nhờ blynk thì chúng ta có thể bỏ
Trang 29qua bước lập trình tạo app Có thể thử nhanh chóng và ứng dụng được dự án của mình vào thực tế
➢ Thử nghiệm nhanh chóng, có thể điều khiển giám sát ở bất kỳ nơi nào có internet
3.5.3 Cách thức hoạt động
Sau khi tải ứng dụng Blynk về điện thoại, lúc mở ứng dụng màn hình hiển thị giao diện như Hình 3.6, lúc này việc cần làm là tạo một tài khoản hoặc dùng tài khoản facebook đều đuợc
Hình 3.6 Giao diện Blynk
Đăng nhập tài khoản vừa tạo rồi, thì việc tiếp theo cần làm là tạo một project như Hình 3.7, đây được hiểu như là một ứng dụng
Trang 30Hình 3.7 Tạo project
Sau đó điền tên project và chọn Board phần cứng như Hình 3.8
Trang 31Hình 3.8 Chọn Board
Mỗi project, Blynk sẽ gửi cho cho người dùng 1 mã Auth Token qua gmail như Hình 3.9 để nhập vào trong code của Board mạch điều khiển NodeMCU
Trang 32Hình 3.9 Blynk gửi mã Auth Token qua gmail
Sau đó chúng ta có thể lựa chọn nhiều chức năng như nút bấm, hẹn giờ, biểu đồ,
để đưa vào project của mình bằng cách nhấp vào biểu tượng dấu + ở góc bên phải trên cùng giao diện
Mỗi chức năng chọn sẽ tốn energy như Hình 3.10