TỔNG QUAN
ĐẶT VẤN ĐỀ
Hiện nay, cùng với sự phát triển của xã hội, cuộc sống ngày càng được nâng cao thì việc áp dụng khoa học công nghệ vào đời sống ngày càng cần thiết Cuộc cách mạng công nghiệp 4.0 đang dần lan rộng ra nhiều lĩnh vực đời sống xã hội Cụ thể là ứng dụng IoTs đang được phổ biến rộng rãi trong lĩnh vực nông nghiệp Nhiều mô hình trồng trọt đang được xây dựng với quy mô lớn hơn, vận hành thông minh hơn giúp tiết kiệm chi phí sản xuất, đảm bảo cây trồng sinh trưởng và phát triển trong điều kiện tối ưu nhất Ngoài ra, mô hình trồng trọt này giúp cho chất lượng nông sản cao hơn, thích nghi tốt với các tiêu chuẩn ngày càng khắt khe của thị trường, giảm số lượng nhân công và hạn chế các rủi ro từ môi trường bên ngoài
Hiện nay mô hình trồng nấm bào ngư xám đang mang lại hiệu quả kinh tế cao, đặc biệt ở các tỉnh Đông Nam Bộ và Tây Nam Bộ Một trong những lý do để người dân lựa chọn loại nấm này để trồng bởi đây là một loại nấm khá dễ trồng và đặc điểm sinh học thích nghi với điều kiện môi trường ở Việt Nam Ngoài ra chi phí ban đầu để trồng nấm bào ngư xám là không cao nhưng nó lại mang một nguồn thu nhập ổn định do thu hoach nhiều đợt và ít bị dịch bệnh phá hoại Tuy nhiên, người trồng nấm phải nắm chắc kiến thức kĩ thuật thì nấm mới đạt được năng suất cao Để có năng suất và chất lượng nấm thương phẩm cao đòi hỏi người trồng nấm phải có nhiều kinh nghiệm, biết áp dụng các phương pháp kỹ thuật vào việc trồng và chăm sóc nấm theo từng giai đoạn cụ thể Hiện nay, có nhiều mô hình trồng nấm đang được áp dụng mang lại hiệu quả kinh tế cao Tuy nhiên mô hình trồng nấm trong nhà lưới đang phổ biến Nhờ có hệ thống lưới bao quanh nên cản trở được côn trùng xâm nhập, hạn chế được việc phá hoại của chúng tới nấm, đẫn đến giảm tối đa việc sử dụng thuốc bảo vệ thực vật Ngoài ra, trồng nấm trong nhà lưới kín còn giúp hạn chế tác động của thời tiết lên cây trồng, tránh được ánh sáng trực tiếp của mặt trời và mưa trực tiếp Nhà trồng nấm phải thông thoáng, ánh sáng phù hợp và giữ độ ẩm tốt Nền nhà giữ ẩm và mái che phải đảm bảo độ mát Một trong những yếu tố quan trọng với nấm bào ngư xám là độ ẩm do vậy lúc nào môi trường trồng nấm phải đạt ở mức 70% độ ẩm Người trồng cần tưới nước để nấm dễ mọc (tưới từ 1-2 lần/ ngày) Mô hình trồng nấm bào ngư thân thiện với môi trường, vì rác thải ra sẽ tự phân hủy Sau khi thu hoạch, có thể tận dụng mùn phôi thải để trồng nấm rơm Như vậy, nhà lưới giúp nâng cao năng suất, chất lượng, giúp người nông dân có lợi nhuận cao hơn Ngoài ra, việc áp dụng một số hệ thống tự động giúp giảm công lao động, giúp người trồng trọt đỡ vất vả, tăng độ chính xác trong giám sát khi trồng quy mô lớn
Với mong muốn nghiên cứu, tạo ra một hệ thống dùng trong giám sát quá trình sinh trưởng và phát triển của nấm cũng như tự động hóa trong quá trình trồng nấm, giảm bớt gánh nặng về nhân công cũng như đảm bảo chất lượng và năng suất của nấm cao, nhóm sinh viên quyết định chọn đề tài: “THIẾT KẾ VÀ THI CÔNG HỆ
THỐNG CHĂM SÓC VƯỜN NẤM”
MỤC TIÊU NGHIÊN CỨU
Trong quá trình thực hiện Đồ án tốt nghiệp với đề tài “Thiết kế và thi công hệ thống chăm sóc vườn nấm” nhóm tập trung giải quyết và hoàn thành những nội dung sau:
Tìm hiểu được về sự sinh trưởng của cây nấm mong muốn để từ đó nắm bắt được những điều kiện nhiệt độ, độ ẩm đất, độ ẩm không khí, ánh sáng thích hợp với sự phát triển của loại nấm đó
Tìm hiểu được cơ sở lý thuyết của các thiết bị được sử dụng trong mô hình
Thiết kế được hệ thống chăm sóc cây nấm thông qua việc điều khiển trực tiếp và điều khiển thông qua smartphone của người dùng
Thiết kế được hệ thống tự động chăm sóc thông qua việc cài đặt các thông số nhiệt độ, độ ẩm đất, độ ẩm không khí, cường độ ánh sáng
Thiết kế được giao diện Webserver giám sát các thiết bị, thông số môi trường và các thông số cài đặt giới hạn thông qua mạng Internet
Thi công được mô hình khu vườn
Cân chỉnh, hoàn thiện được mô hình khu vườn.
NỘI DUNG NGHIÊN CỨU
Nội dung 1: Tìm hiểu và nghiên cứu về cấu tạo phần cứng, nguyên lý hoạt động, tính năng của các module Arduino Mega 2560, module NODEMCU ESP8266, module L298N, động cơ bước, DHT11, module cảm biến ánh sáng BH1750, module cảm biến mưa, module cảm biến độ ẩm đất, module thời gian thực
Nội dung 2: Tìm hiểu và nghiên cứu về lập trình Web, tìm hiểu về ngôn ngữ HTML, CSS, Java, App Android Studio
Nội dung 3: Các giải pháp thiết kế hệ thống, thi công mô hình
Nội dung 4: Thiết kế hệ thống điều khiển, lưu đồ giải thuật và chương trình điều khiển mô hình
Nội dung 5: Thiết kế hoàn chỉnh mô hình thực tế
Nội dung 6: Chạy thử nghiệm hệ thống
Nội dung 7: Cân chỉnh hệ thống
Nội dung 8: Viết sách luận văn
Nội dung 9: Bảo vệ đề tài tốt nghiệp.
GIỚI HẠN
Chọn cây nấm bào ngư xám là đối tượng nghiên cứu
Thiết lập mô hình nhà lưới đơn giản có kích thước dài, rộng, cao là 60 x 60 x 60 cm bằng khung nhôm và bọc lưới xung quanh, có mái che
Ứng dụng điện thoại chạy trên hệ điều hành Android
Dữ liệu từ các cảm biến sẽ được hiển thị trên màn hình cảm ứng HMI, app android studio, và web trên máy tính
Màn hình cảm ứng để thao tác có kích thước 3.5 inch có thể theo dõi các thông số từ cảm biến và bật tắt các thiết bị cũng như cài đặt các thông số cho chế độ tự động
Hệ thống có hai chế độ: điều khiển tự động (Auto) và điều khiển thủ công (Manual)
Web và App Android khi có kết nối mạng mới có thể giám sát và điều khiển được hệ thống
Có thể giám sát các thông số, điều khiển các thiết bị và cài đặt các thông số trên màn hình cảm ứng và trên app android Web chỉ hiển thị các thông số trạng thái của các thiết bị, các thông số từ cảm biến được sử dụng trong hệ thống
Sử dụng hai module hạ áp để giảm áp từ nguồn tổ ong 12V
Hệ thống chỉ sử dụng điện từ nguồn điện ngoài, chưa áp dụng bộ lưu điện vào hệ thống
Dừng lại ở mức độ mô hình học tập, kiểm nghiệm chưa triển khai thực tế để sử dụng.
BỐ CỤC
Chương này trình bày về đặt vấn đề dẫn nhập lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới hạn thông số và bố cục đồ án
Chương 2: Cơ Sở Lý Thuyết
Trong chương này trình bày về các lý thuyết có liên quan đến các vấn đề mà đề tài sẽ dùng để thực hiện thiết kế, thi công cho đề tài
Chương 3: Tính Toán Và Thiết Kế
Chương này giới thiệu tổng quan về các yêu cầu của đề tài mà mình thiết kế và các tính toán, thiết kế gồm những phần nào Như thiết kế sơ đồ khối hệ thống, sơ đồ nguyên lý toàn mạch, tính toán thiết kế mạch
Chương 4: Thi Công Hệ Thống
Chương này trình bày về quá trình vẽ mạch in lắp ráp các thiết bị, đo kiểm tra mạch, lắp ráp mô hình Thiết kế lưu đồ giải thuật cho chương trình và viết chương trình cho hệ thống
Chương 5: Kết Quả-Nhận Xét-Đánh Giá
Trình bày về những kết quả đã được mục tiêu đề ra sau quá trình nghiên cứu thi công Từ những kết quả đạt được để đánh giá quá trình hoàn thành được bao nhiêu phần trăm
Chương 6: Kết Luận Và Hướng Phát Triển
Chương này trình bày về những kết quả mà đồ án đạt được, những hạn chế, từ đó rút ra kết luận và hướng phát triển để giải quyết các vấn đề tồn đọng để đồ án hoàn thiện hơn
CƠ SỞ LÝ THUYẾT
GIỚI THIỆU VỀ NẤM
2.1.1 Giới thiệu về các loại nấm
Hiện nay trong ẩm thực Việt Nam, các loại nấm được sử dụng như một loại nguyên liệu để chế biến những món ăn hấp dẫn Chúng đều là những loại nấm giàu chất dinh dưỡng, có giá trị kinh tế cao và dễ trồng Ngoài việc làm thức ăn cung cấp chất dinh dưỡng, nấm còn nhiều tác dụng thần kỳ khác như sử dụng trong y học có tác dụng chống viêm, kháng khuẩn, tăng cường miễn dịch…
Dưới đây là một số loại nấm phổ biến hiện nay tại Việt Nam:
Nấm rơm: có tính mát, vị ngọt nhẹ, có nhiều ở các làng quê Loại nấm này dễ trồng nhưng lại đem lại hiệu quả kinh tế cao nên được nhiều hộ gia đình trồng bán
Nấm kim châm: có chân màu nâu nhạt, thân trắng, mũ nấm trắng có hình cầu hoặc bán nguyệt Ăn hơi dai và giòn rất ngon miệng
Nấm tai mèo (Mộc nhĩ): là loại nấm không có chân, có hình dạng gần giống tai của loài mèo Là nguyên liệu để chế biến nhiều món ăn ngon và bổ dưỡng
Nấm hương: được người châu Á xem như biểu tượng của trường sinh Nó giúp tăng cường hệ miễn dịch, hạ đường huyết, gây ức chế tế bào ung thư, ngăn ngừa ung thư
Nấm linh chi đỏ Việt Nam: thuộc họ nấm lim, một loại nấm quý mà chỉ vua chúa, quý hầu xưa mới được sử dụng Nó giúp mang lại một hệ miễn dịch tốt, sức đề kháng cao, giải độc gan, điều hòa huyết áp, trị tiểu đường, tốt cho tim mạch, cải thiện trí não, tăng cường tư duy, chống mất ngủ
Nấm bào ngư: có dạng hình phễu lệch, mũ nấm xòe ra, mặt trên mũ có màu trắng hoặc màu xám tượng trưng cho màu của 2 loài nấm này, chóp nấm lõm nhẹ, dưới mũ nấm có các cánh tơ mỏng và thân khá chắc Một số tác dụng của nấm Bào Ngư trong y học như giảm cholesterol, tăng cường miễn dịch, chức năng não, giảm viêm, giảm lượng đường trong máu, hạ huyết áp, kiểm soát ung thư
2.1.2 Giới thiệu về nấm Bào Ngư [6] [28]
Nấm Bào Ngư là một loài nấm thuộc họ Pleurotaceae rất đặc trưng trong họ hàng nhà nấm Loài nấm này mang trong mình giá trị dinh dưỡng phong phú, giúp cơ thể bồi dưỡng, lợi hệ tiêu hóa và phòng ngừa nhiều loại bệnh trong cuộc sống
Hiện nay, nó được nuôi trồng phổ biến nhất và sử dụng thông dụng nhất trong ẩm thực ở Việt Nam bên cạnh một số loại nấm ăn khác Vì là loại nấm được tiêu thụ khá phổ biến nên ít nhất ai cũng từng ăn thử 1 lần trong đời
Nấm Bào Ngư hay mọc thành từng cụm với nhau, ít khi mọc đơn lẻ, nếu có mọc đơn lẻ thì chỉ có thể xảy ra 2 trường hợp, một là do dinh dưỡng không đủ hoặc hai là dinh dưỡng chỉ đủ nuôi 1 nhánh nấm và nhánh này cực to và khỏe
Loại nấm này có 2 loại, đó là TRẮNG và
XÁM Để phân biệt thì rất đơn giản, bạn chỉ cần dựa vào màu sắc ở mũ nấm, loại có mũ màu xám sẽ được gọi là Nấm Bào Ngư Xám, còn loại màu trắng thường được gọi là Nấm Bào Ngư Trắng, có nơi còn gọi là Nấm Sò Trắng
2.1.3 Đặc điểm sinh học của nấm bào ngư xám a) Nhiệt độ
Nấm Bào Ngư mọc tốt ở nhiệt độ ôn đới và nhiệt đới Nấm Bào Ngư ra quả thể được trong một giới hạn nhiệt độ khá rộng Tuy nhiên, nhiệt độ có ảnh hưởng lớn đến sản lượng và chất lượng nấm Các loài nấm Bào Ngư có nhiệt độ tối ưu để ra quả thể thấp (20 o C) Nhìn chung, nhiệt độ thích hợp cho sự tăng trưởng của hệ sợi tơ khoảng 25-30 o C và cho ra quả thể trong khoảng 15 - 25 o C
Bảng 2.1: Nhiệt độ thích hợp đối với một số nấm Bào Ngư
STT Loại nấm Nhiệt độ tối ưu cho tăng trưởng sợi tơ
Nhiệt độ tối ưu ra quả thể
6 Pleurotus sajor-caju 25 o C - 30 o C 15 o C - 25 o C b) Độ ẩm Độ ẩm rất quan trọng đối với sự phát triển tơ và quả thể của nấm Trong giai đoạn tăng trưởng tơ, độ ẩm nguyên liệu yêu cầu từ 60 – 70% (độ ẩm cơ chất trồng nấm) và cho quả thể 70 -90% (độ ẩm không khí) Ở giai đoạn tưới nấm ra quả thể, độ ẩm không khí tốt nhất là 80 – 95% Ở độ ẩm không khí 50%, nấm ngừng phát triển
Hình 2.2: Nấm bào ngư trắng Hình 2.3: Nấm bào ngư xám
6 và chết, nếu nấm ở dạng phễu lệch và dạng lá thì sẽ bị khô mặt và cháy vàng bìa mũ nấm Nhưng nếu độ ẩm cao trên 95%, tai nấm dễ bị nhũn và rũ xuống
Bảng 2.2: Độ ẩm thích hợp cho sự phát triển của nấm bào ngư
STT Loài nấm Độ ẩm thích hợp của cơ chất Độ ẩm tương đối (%) của không khí Thích hợp cho sự sinh trưởng của hệ sợi nấm
Thích hợ cho sự sinh trưởng của quả nấm
3 P.ostreatus 60-70 70-80 85-90 c) Ánh sáng Ánh sáng không có lợi cho sự phát triển sợi tơ nên trong giai đoạn ủ thường để meo trong tối Yếu tố này chỉ cần thiết trong giai đoạn ra quả thể nhằm kích thích nụ nấm phát triển Nhà nuôi trồng nấm cần có ánh sáng khuyếch tán – ánh sáng phòng Cường độ ánh sáng yếu làm chân nấm dài ra, mũ nấm hẹp nên tỉ lệ phần trăm giữa chân nấm so với mũ nấm tăng Cường độ ánh sáng quá mạnh sẽ làm ngăn cản việc hình thành nụ nấm.
MÔ HÌNH TRỒNG NẤM BÀO NGƯ TRONG NHÀ LƯỚI
Trong quá trình sản xuất nấm, môi trường để nấm phát triển là một yếu tố hết sức quan trọng, góp phần tăng năng suất nấm Đối với cây nấm bào ngư xám có thể sống và phát triển tốt chủ yếu dựa vào độ ẩm và nhiệt độ, do đó việc xây dựng nhà trồng nấm bào ngư cần phải đảm bảo đủ điều kiện cho nấm phát triển
Nấm bào ngư xám là loài nấm dễ trồng cho năng suất cao và mang lại giá trị hiệu quả kinh tế cao Thu hoạch liên tục trong vòng 4 tháng, từ khi trồng đến khi thu hoạch khoảng 75 ngày Cứ 15 ngày có thể thu hoạch 1 lần Hiện tại, nấm bào ngư xám có giá thành khác cao và mang lại nguồn thu nhập ổn định cho người trồng
Nền trại nên cao ráo, sạch và thoáng mát, tránh ngập lụt khi có mưa lớn hoặc hạn chế tối đa
Không quá gần nơi chăn nuôi (heo, bò, gà, dê) có nguồn nước đảm bảo và thuận lợi cho việc chăm sóc nấm Độ ẩm không khí: 70% – 90%
Nhiệt độ trong trại: 25℃ - 32℃ Ít ánh sáng nhưng không tối, ánh sáng cần thiết trong giai đoạn quả thể Trong giai đoạn mọc quả thể cần ánh sáng nhẹ, giai đoạn phát triển quả thể cần ánh sáng phòng (100-200lux) Tránh bị ánh nắng chiếu trực tiếp
Xung quanh trại cần phải giăng bạc kín (tránh gió), lưới tránh sự xâm nhập của côn trùng
Nhà xưởng hoặc trại nên làm thoáng gió trên mái bằng gió tự nhiên hoặc quạt hút Có thể thực hiện bằng nhiều cách miễn sao đừng cho gió lùa trực tiếp vào nấm/phôi nấm
Xây dựng nhà trồng nấm sao cho thích hợp là yếu tố quyết định không nhỏ đến khả năng sinh trưởng, phát triển và lợi nhuận của mô hình Hiện nay mô hình
7 trồng nấm khá đa dạng về kiểu dáng, tuy nhiên có 2 loại nhà lưới khá phổ biến là nhà lưới kín và nhà lưới hở
Trồng nấm diện tích lớn:
Toàn bộ mái, xung quanh nhà được phủ bằng lưới, cửa ra vào được căng phủ bằng lưới
Khung nhà được làm bằng cột bê tông hoặc bằng khung sắt Mái được thiết kế theo kiểu mái bằng hoặc mái nghiêng hai bên, có độ cao chỉ từ 2,0 - 3,9 m Diện tích mỗi nhà lưới có thể từ 500 - 1.000 m² theo từng điều kiện canh tác Ưu điểm:
- Nhà lưới kín ngăn ngừa được côn trùng phá hoại và đẻ trứng, giảm lượng hóa chất sử dụng, tăng độ an toàn cho nấm
- Tránh được ánh nắng trực tiếp chiếu vào
- Tránh được nước mưa trực tiếp thấm vào phôi nấm
- Đối lưu không khí bên trong nhà kín thấp, trao đổi không khí với môi trường bên ngoài còn hạn chế
- Không tận dụng được ánh sáng trực tiếp từ môi trường bên ngoài
- Chi phí xây dựng tốn kém
- Do thông gió kém, nếu không có thiết bị thông gió, về mùa nắng, nhiệt độ trong nhà lưới cao hơn ở ngoài 1- 2℃ sẽ ảnh hưởng đến sinh trưởng của cây
Nhà lưới chỉ được che chủ yếu trên mái hoặc một phần bao xung quanh Nhà thiết kế rất đơn giản với kiểu mái bằng, mái nghiêng hai bên.; khung nhà có thể làm bằng cột bê tông, khung sắt, khung gỗ, cây gỗ chống và căng dây kẽm, dây cáp để giữ lưới. Ưu điểm:
- Sử dụng nhà lưới hở giúp giảm ánh sáng chiếu trực tiếp, hạn chế mưa xối trực tiếp
- Gíup lưu thông không khí bên trong môi trường nhà lưới
- Không có tác dụng ngăn ngừa côn trùng
Trồng nấm diện tích nhỏ (trong hộ gia đình):
- Là một mô hình trồng thực phẩm sạch tại nhà không đòi hỏi nhiều diện tích, kỹ thuật cao và công chăm sóc
- Người trồng sẽ mua các phôi nấm đóng bịch sẵn trên thị trường, sau đó tìm những nơi có độ ẩm cao và tránh được ánh nắng trực tiếp của mặt trời như gầm cầu thang, tán cây lớn
- Lựa chọn những đồ chứa như thùng xốp có chiều cao tối thiểu
40cm, có thể đục vài lỗ xung quanh để tạo độ thông thoáng
- Dán miếng nilon trong, áo mưa cũ lên mặt trống của thùng xốp làm màn che nhằm giữ độ ẩm bên trong thùng xốp hạn chế thoát ra ngoài
- Cho bịch phôi nấm đã chạy kín tơ vào thùng, xếp trồng lên nhau
- Tiến hành tháo bông gòn ở miệng phôi
- Dùng bình xịt phun sương để tưới nấm, chỉ tưới ở phần thân bịch phôi, không tưới vào miệng bịch phôi, có thể tưới nhiều nước và mỗi ngày tưới nhiều lần để tạo độ ẩm
Với những đặc điểm của từng phương pháp ở trên, nhóm thực hiện sẽ cố gắng khắc phục những khuyết điểm, giữ lại những điểm mạnh đang tồn tại như:
- Sử dụng mô hình nhà lưới kín để ngăn côn trùng phá hoại và đẻ trứng, giảm lượng thuốc trừ sâu sử dụng
- Sự dụng hệ thống mái che tự động giúp tận dụng được ánh nắng trực tiếp từ bên ngoài, đối lưu không khí với môi trường xung quanh và có thể điều chỉnh lượng ánh sáng phù hợp với môi trường bên trong Ngoài ra, tránh mưa xối trực tiếp lên nấm
- Thêm hệ thống thông gió để môi trường bên trong thông thoáng, giảm nhiệt độ môi trường bên trong
- Sử dụng cơ chế giám sát qua các cảm biến, hiển thị trên App, Web cho người dùng dễ thao tác và giám sát
- Thêm chế độ tự động giúp người sử dụng giảm công tác giám sát các thông số môi trường ảnh hưởng đến hoạt động sinh trưởng và phát triển của nấm
Từ các phương pháp đã đề xuất, nhóm sinh viên đã từng bước xây dựng hệ thống hoạt động theo một chu trình nhất định được thể hiện trong mục 2.3.
QUY TRÌNH HOẠT ĐỘNG CỦA HỆ THỐNG
Qua quá trình tìm hiểu về đặc tính sinh trưởng, các yếu tố ảnh hưởng đến nấm bào ngư xám và các mô hình trồng nấm thực tế đang áp dụng thì giải pháp đặt ra cho mô hình trồng nấm bào ngư xám của nhóm là phải có một khối xử lý trung tâm tiếp nhận tín hiệu từ khối cảm biến gồm cảm biến ánh sáng, cảm biến độ ẩm đất, cảm biến
Hình 2.6: Trồng nấm bào ngư trong thùng xốp tại nhà
9 nhiệt độ và độ ẩm Sau đó, nó điều khiển khối cơ cấu chấp hành gồm bơm, quạt, đèn, đèn sưởi, động cơ bước hoạt động khi có yêu cầu từ người dùng ở chế độ Manual hoặc đảm bảo duy trì các thông số đã cài đặt sẵn ở chế độ Auto Đồng thời dữ liệu sẽ được gửi tới màn hình cảm ứng, App và Web Người dùng cũng có thể bật tắt các thiết bị thông qua App hoặc trực tiếp trên màn hình cảm ứng theo ý muốn Sự kết hợp của các thiết bị trên sẽ tạo ra một hệ thống hoàn thiện Mô hình trồng nấm sẽ có hai chế độ gồm chế độ chăm sóc thủ công (Manual) và chế độ chăm sóc tự động (Auto)
Chế độ chăm sóc thủ công người dùng có thể bật tắt thiết bị trên màn hình cảm ứng, và trên giao diện app android khi Smartphone kết nối với Internet
Chế độ chăm sóc tự động người dùng có thể cài đặt ngưỡng giới hạn cho các thông số được thu thập từ các cảm biến Từ đó hệ thống sẽ cập nhật và điều khiển trạng thái của các thiết bị một cách tự động phù hợp với điều kiện thực tế của môi trường Việc cài đặt các thông số có thể thực hiện trên màn hình cảm ứng và trên app android khi có Internet.
TỔNG QUAN CÁC PHẦN CỨNG SỬ DỤNG
- Cảm biến nhiệt độ độ ẩm DHT11, cảm biến cường độ ánh sáng, cảm biến mưa, cảm biến độ ẩm đất, module thời gian thực DS1307, màn hình cảm ứng HMI UART
- Thiết bị công suất: bơm nước, bơm công suất, đèn, quạt, đèn sưởi, loa
- Thiết bị giao tiếp tải: relay
- Thiết bị hiển thị: màn hình cảm ứng HMI
- Thiết bị điều khiển trung tâm: Arduino Mega 2560
- Các chuẩn truyền dữ liệu: UART, I2C, 1 Wire
- Thiết bị giao diện giám sát: Laptop hoặc điện thoại có kết nối Internet
- Thiết bị giao diện giám sát và điều khiển: điện thoại Android có kết nối Internet
2.4.1 Tổng quan về Arduino Mega2560 [7] a) Giới thiệu Board Arduino Mega2560
Arduino Mega2560 chính là phiên bản nâng cấp của Arduino Mega
(Arduino Mega 1280), đây là phiên bản được sử dụng rộng rãi và đa dạng hơn các phiên bản khác Nó được thiết kế cho các ứng dụng cần nhiều I/O hoặc thiết bị ngoại vi
Khác với các vi xử lý khác của
Arduino, Arduino Mega 2560 không sử dụng chip FTDI điều khiển chuyển tín hiệu từ USB để xử lý thông tin mà nó sử dụng ATmega16U2 được lập trình như một thiết bị chuyển đổi tín hiệu truyền
10 từ USB Ngoài ra, Arduino Mega 2560 cơ bản tương tự như Arduino Uno R3, chỉ khác ở số lượng chân và sở hữu nhiều tính năng mạnh mẽ hơn Do đó, người dùng hoàn toàn vẫn có thể lập trình cho loại vi điều khiển này bằng chương trình lập trình tương tự như với Arduino Uno R3 b) Thông số kỹ thuật
Bảng 2.3: Thông số kỹ thuật của Arduino Mega 2560
Bảng 2.4: Thông số các chân của Arduino Mega 2560
STT Chức năng Chân Mô tả
1 Chân 5V 5 chân Đầu ra điện áp 5V Dòng tối đa cho phép cấp ở pin này là 0.5A
2 Chân 3.3V 1 chân Đầu ra điện áp 3.3V Dòng tối đa cho phép cấp ở pin này là 0.05A
3 Chân GND 5 chân Chân nối đất của nguồn điện cấp cho kit
4 Chân Vin 1 chân Cấp nguồn ngoài cho Arduino
5 Chân Reset Khi nhấn nút Reset, kit sẽ reset vi điều khiển
Chức năng của nó không phải là cấp nguồn mà chỉ là tham chiếu điện áp hoạt động của vi xử lý
7 Chân AREF Là chân đưa vào điện áp tham chiếu khi sử dụng các chân Analog
8 Chân AVCC Chân cung cấp điện áp cho quá trình chuyển đổi ADC
Các chân từ 0-53 Được sử dụng làm chân nhập, xuất tín hiệu số thông qua các hàm chính: pinMode (), digitalWrite (), digitalRead ()
Các chân từ 2-13 và chân
Chức năng cấp xung PWM
51, 50 Bốn chân này dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác
12 Chân led 13 Chân 13 Đèn led này giúp người lập trình quan sát trực quan khi test, kiểm tra chương trình
Chân A0- A15 Được sử dụng như chân đầu vào tương tự cho bộ ADC với độ phân giải 10 bit
Dùng để giao tiếp chuẩn I2C với các thiết bị khác
Gồm có 4 cổng Serial Dùng để nhận (receive – RX) và gửi
(transmit – TX) dữ liệu TTL Serial
Những chân này dùng để kích hoạt ngắt khi chân có mức điện áp thấp, cao, xung cạnh lên, xung cạnh xuống hoặc có sự thay đổi điện áp
2.4.2 Tổng quan Module Esp8266 [8] a) Giới thiệu về ESP8266 NodeMCU
NodeMCU V1.0 là một dạng vi điều khiển có tích hợp Wifi, được phát triển dựa trên chip Wifi ESP8266EX bên trong module ESP-12E, cho phép dễ dàng kết nối wifi với một vài thao tác Node MCU có 128 KB RAM và 4MB bộ nhớ Flash để lưu trữ dữ liệu và chương trình Sức mạnh xử lý cao với các tính năng Wi-Fi, Bluetooth và Deep Sleep Operating tích hợp khiến nó trở nên lý tưởng cho các dự án Iot
Với việc sử dụng và kết nối dễ dàng, có thể lập trình và nạp chương trình trực tiếp trên phần mềm Arduino IDE
Hình 2.8: Node MCU ESP8266 b) Thông số kỹ thuật
Bảng 2.5: Thông số kỹ thuật Node MCU ESP8266
3 Giao thức tích hợp TCP/IP
4 Tần số hoạt động 2.4 2.5 GHz
6 Dòng điện hoạt động 80 mA
8 Tốc độ xử lý 80 160 MHz
13 Giao tiếp ngoại vi UART/SDIO/SPI/I2C/I2S/IR Remote
Bảng 2.6: Thông số các chân của Node MCU ESP 8266
STT Chức năng Chân Mô tả
1 Micro-USB Giao tiếp hoặc cấp nguồn từ máy tính thông qua cổng USB
2 Chân 3.3V Đầu ra điện áp 3.3V
4 Chân 5V Đầu ra điện áp 5V
5 Chân Vin Cấp nguồn ngoài cho ESP
6 RST Khi nhấn nút Reset, ESP được reset
7 A0 Sử dụng như chân đầu vào tương tự cho bộ ADC với độ phân giải 10
Node MCU có 16 chân đầu vào –đầu ra cho mục đích chung trên bo mạch chính
Node MCU có sẵn bốn chân giao tiếp SPI
Node MCU có hai giao diện UART, UART0 UART1 được sử dụng để tải chương trình cơ sở
GPIO2 (SDA) Hỗ trợ giao thức I2C
Hình 2.9: Node MCU ESP8266 Schematic
2.4.3 Tổng quan màn hình HMI UART cảm ứng điện trở 3.5 inch [9] a) Giới thiệu màn hình HMI UART cảm ứng điện trở 3.5 inch
Màn hình HMI UART cảm ứng điện trở 3.5 inch được phát triển với mục đích giúp người sử dụng có thể thiết kế các giao diện điều khiển và hiển thị (GUI) trên màn cảm ứng một cách dễ dàng và trực quan nhất
Các điểm mạnh về tính năng:
- Giao tiếp UART, với chỉ 2 dây tín hiệu (TX, RX) rất dễ dàng giao tiếp và điều khiển
- Phần mềm thiết kế giao diện trên máy tính trực quan và dễ sử dụng, giao tiếp với màn hình qua giao tiếp UART
- Có bộ nhớ lưu trữ và xử lý hình ảnh, tích hợp khe thẻ nhớ, nên giảm thiểu được hầu hết các tác vụ về xử lý hình cho mạch điều khiển trung tâm, chỉ truyền về trung tâm các dữ liệu thao tác cảm ứng
- Để lập trình phần mềm cần sử dụng phần mềm lập trình HMI UART b) Thông số kỹ thuật
- Màn hình HMI 3.5 inch cảm ứng điện trở
- Giao tiếp UART mức TTL (3 - 5VDC)
- Có phần mềm thiết kế giao diện đi kèm
- Có bộ nhớ lưu trữ và xử lý hình ảnh
Bảng 2.7: Thông số kỹ thuật màn HMI 3.5 Inch cảm ứng điện trở
2.4.4 Tổng quan cảm Module biến nhiệt độ và độ ẩm DHT11 [10] a) Giới thiệu Module cảm biến DHT11
DHT11 là một trong những cảm biến thông dụng hiện nay để đo nhiệt độ và độ ẩm Cảm biến này có thể dễ dàng giao tiếp với bất kỳ bộ vi điều khiển vi nào như Arduino, Raspberry Pi, để đo độ ẩm và nhiệt độ ngay lập tức thông qua giao tiếp 1 wire
STT Ký hiệu Thông số Min
Max (tối đa) Đơn vị
1 Vcc Điện áp hoạt động 4.75 5 7 V
4 VOH Điện áp ngõ ra mức cao 3.0 3.2 V
5 VOL Điện áp ngõ ra mức thấp 0.1 0.2 V
6 VIH Điện áp đầu vào cao 2.0 3.3 5.0 V
7 VIL Điện áp đầu vào thấp -0.7 0.0 1.3 V
Hình 2.10: Màn hình HMI cảm ứng điện trở 3.5 Inch
Cảm biến DHT11 bao gồm một phần tử cảm biến độ ẩm điện dung và một điện trở nhiệt để cảm nhận nhiệt độ b) Thông số kỹ thuật
Bảng 2.8: Bảng sơ đồ chân DHT11
Bảng 2.9: Thông số kỹ thuật DHT11
STT Ký hiệu Tham số Min
Max (tối đa) Đơn vị
1 Vcc Điện áp hoạt động 3 5 5.5 V
2 I Dòng điện tiêu thụ 0.5 2.5 mA
3 Itb Dòng điện trung bình 0.2 1 mA
4 Phạm vi cảm biến độ ẩm 20 90 %RH
5 Phạm vi cảm biến nhiệt độ 0 50 °C
6 Tần số lấy mẫu 1 Hz
Sai số đo nhiệt độ: ±5%RH
Sai số đo độ ẩm: ±2°C c) Cấu tạo và nguyên lí hoạt động
Cảm biến độ ẩm nhờ vào điện dung của tụ điện
DHT11 có cấu tạo gồm 3 lớp, hai lớp ngoài là điện cực và lớp giữa là chất nền giữ ẩm Hai điện cực có cấu tạo giống như hai bản cực của tụ và lớp giữa giống như dung môi
Khi chất nền hấp thụ hàm lượng nước, điện trở giữa hai điện cực sẽ giảm Sự thay đổi điện trở giữa hai điện cực tỷ lệ với độ ẩm tương đối Độ ẩm tương đối cao làm giảm điện trở giữa các điện cực, độ ẩm tương đối thấp làm tăng điện trở giữa các điện cực Sự thay đổi về điện trở này được đo bằng ADC của vi điều khiển và độ ẩm tương đối được tính toán
STT Tên chân Mô tả
2 Data Đầu ra cả nhiệt độ và độ ẩm thông qua dữ liệu nối tiếp
Hình 2.12: Sơ đồ chân DHT11
Cảm biến nhiệt độ dựa vào một điện trở nhiệt
DHT11 sử dụng nhiệt điện trở NTC Với nhiệt điện trở NTC, điện trở giảm khi nhiệt độ tăng, do sự gia tăng số lượng các điện tử dẫn được cung cấp năng lượng bởi sự kích động nhiệt từ vùng hóa trị Nhiệt điện trở NTC là phi tuyến tính d) Giao thức giao tiếp 1 dây DHT11
Cách thức giao tiếp Đầu tiên, vi điều khiển gửi tín hiệu khởi động bằng cách kéo chân Data xuống mức thấp (>18 ms), sau đó vi điều khiển đưa chân data lên mức cao và chờ DHT11 phản hồi Nếu không có tín hiệu khởi động từ vi điều khiển, DHT11 sẽ không cung cấp tín hiệu phản hồi cho vi điều khiển DHT11 phản hồi bằng cách kéo chân Data xuống mức thấp (80às) và đưa chõn data lờn mức cao (80 às) Sau khi dữ liệu được thu thập, DHT11 sẽ chuyển sang chế độ tiêu thụ điện năng thấp cho đến khi nhận được tín hiệu khởi động lại từ vi điều khiển
Dữ liệu được mó húa thành cỏc bit 0 và 1 Data ở mức thấp (50 às) và mức cao
(26 às – 28 às): bit 0 Data ở mức cao (70 às) và mức thấp (50 às): bit 1 Kết thỳc chuỗi dữ liệu Kéo chân Data xuống mức thấp sau đó đưa lên mức cao
Cấu trúc của chuỗi dữ liệu Định dạng dữ liệu một bus được sử dụng để giao tiếp và đồng bộ hóa giữa vi điều khiển và cảm biến DHT11 được thể hiện qua hình 2.13 Một quá trình giao tiếp là khoảng 4ms Dữ liệu bao gồm phần thập phân và phần tích phân Truyền dữ liệu hoàn chỉnh là 40bit và cảm biến sẽ gửi bit dữ liệu cao hơn trước Định dạng dữ liệu như sau: Dữ liệu RH nguyên 8bit + Dữ liệu RH thập phân 8bit + Dữ liệu T nguyên 8bit + Dữ liệu T thập phân 8bit + Tổng kiểm tra 8bit Nếu truyền dữ liệu đúng, tổng kiểm tra phải là 8 bit cuối cùng của "Dữ liệu RH nguyên 8 bit + Dữ liệu RH thập phân 8 bit + Dữ liệu T nguyên 8 bit + Dữ liệu T thập phân 8 bit"
Hình 2.13 : Cấu trúc chuỗi dữ liệu DHT11
2.4.5 Tổng quan Module cảm biến độ ẩm đất FC-28 [11] a) Giới thiệu về cảm biến độ ẩm đất
Module Cảm biến phát hiện độ ẩm đất có thể sử dụng để tưới cây tự động khi không có người quản lý khu vườn
Trạng thái đầu ra mức thấp (0V) khi độ ẩm đất nhỏ hơn ngưỡng cài đặt, khi độ ẩm đất vượt ngưỡng cài đặt đầu ra sẽ là mức cao
(5V), độ nhạy có thể điều chỉnh được bằng biến trở (bằng cách điều chỉnh chiết áp màu xanh trên board mạch)
Phần đầu đo được cắm vào đất để phát hiện độ ẩm của đất, 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 b) Thông số kỹ thuật
Bảng 2.10 và 2.11 mô tả chi tiết các thông số kĩ thuật và sơ đồ chân của module cảm biến độ ẩm đất
Bảng 2.10: Thông số kỹ thuật module cảm biến độ ẩm đất
Bảng 2.11: Sơ đồ chân của module cảm biến độ ẩm đất
Chân đầu ra kỹ thuật số Nếu điện áp thấp hơn giá trị ngưỡng cài đặt giá trị xuất ra là mức 0 Ngược lại, nếu điện áp cao hơn giá trị ngưỡng cài đặt giá trị xuất ra là mức 1
4 AO Chân đầu ra tương tự Phạm vi từ nguồn cung cấp đến GND
Dùng để xuất ra giá trị độ ẩm của mẫu đất cần đo c) Cấu tạo
CHUẨN TRUYỀN DỮ LIỆU
Chuẩn UART (Universal Asynchronous Receiver – Transmitter) không phải là một giao thức giao tiếp như SPI và I2C, mà là một mạch vật lý trong bộ vi điều khiển hoặc IC độc lập Mục đích chính của UART là truyền và nhận dữ liệu nối tiếp
Trong giao tiếp UART, hai UART giao tiếp trực tiếp với nhau UART truyền chuyển đổi dữ liệu song song từ thiết bị điều khiển thành dữ liệu nối tiếp, truyền nối tiếp đến UART nhận, sau đó UART nhận chuyển đổi dữ liệu nối tiếp thành dữ liệu song song cho thiết bị nhận Để thực hiện việc truyền dữ liệu, bắt đầu bằng việc gửi đi một bit START, tiếp theo là các bit dữ liệu và cuối cùng là bit STOP để kết thúc dữ liệu
Hình 2.38: Truyền dữ liệu bằng chuẩn UART
Dữ liệu được truyền từ bus dữ liệu sang UART truyền ở dạng song song Sau khi UART truyền nhận dữ liệu, nó sẽ thêm bit bắt đầu, bit chẵn lẻ và bit dừng, đóng gói dữ liệu Tiếp theo, gói dữ liệu sẽ được xuất ra nối tiếp, từng bit tại chân TX UART nhận đọc từng bit gói dữ liệu tại chân RX của nó UART nhận sau đó chuyển dữ liệu trở lại dạng song song và loại bỏ bit bắt đầu, bit dừng, bit chẵn lẻ Cuối cùng, UART nhận chuyển gói dữ liệu song song với bit dữ liệu ở đầu nhận
Khi chưa truyền dữ liệu thì ban đầu điện thế ở mức logic 1 (mức cao) Khi bắt đầu truyền dữ liệu, bit START chuyển từ mức logic 1 về logic 0, báo cho bộ nhận là việc truyền dữ liệu bắt đầu được thực hiện Tiếp theo là truyền đi các bit dữ liệu D0-
D7 (có thể là mức logic 1 hoặc logic 0) Bộ nhận sẽ kiểm tra tính đúng đắn của dữ liệu truyền đi dựa theo bit PARITY (kiểm tra chẵn lẻ) Cuối cùng bit STOP sẽ báo cho thiết bị rằng dữ liệu đã được gửi đi hoàn tất
Tốc độ truyền dữ liệu được biểu thị bằng bit trên giây (bps) Cả hai UART phải hoạt động ở cùng tốc độ truyền Tốc độ truyền tối đa của chuẩn UART là 1Mbit/sec
2.5.2 Chuẩn giao tiếp I2C [23] a) Giới thiệu
I2C là tên viết tắt Inter-Integrated Circuit Với I2C, người dùng có thể kết nối nhiều Slave với một Master duy nhất và cũng có thể có nhiều Master kiểm soát một hoặc nhiều Slave Bus I2C được sử dụng làm bus giao tiếp ngoại cho rất nhiều loại
IC khác nhau như các loại vi điều khiển 8051, PIC, AVR, ARM… chip nhớ như: RAM tĩnh (Static Ram), EEPROM, bộ chuyển đổi tương tự số (ADC), IC điều khiển LCD, LED… b) Đặc điểm giao tiếp I2C
Hình 2.39: Nguyên lý truyền nhận chuẩn I2C
I2C chỉ sử dụng hai dây để truyền dữ liệu giữa các thiết bị:
SDA (Serial Data) - đường truyền cho master và slave để gửi và nhận dữ liệu
SCL (Serial Clock) - đường mang tín hiệu xung nhịp
Với I2C, dữ liệu được truyền trong tin nhắn Tin nhắn được chia thành các khung dữ liệu Mỗi tin nhắn có một khung địa chỉ chứa địa chỉ nhị phân của Slave và một hoặc nhiều khung dữ liệu chứa dữ liệu được truyền Tin nhắn cũng bao gồm các điều kiện bắt đầu và dừng, các bit đọc/ghi và các bit ACK/NACK giữa mỗi khung dữ liệu Tốc độ truyền tối đa của I2C là 400Kbit/sec c) Các bước truyền dữ liệu
Master gửi điều kiện khởi động đến mọi slave được kết nối bằng cách chuyển đường SDA từ mức điện áp cao sang mức điện áp thấp trước khi chuyển đường SCL từ mức cao xuống mức thấp
Master gửi cho mỗi slave địa chỉ 7 hoặc 10 bit của slave mà nó muốn giao tiếp, cùng với bit đọc / ghi
Mỗi slave sẽ so sánh địa chỉ được gửi từ master với địa chỉ của chính nó Nếu địa chỉ trùng khớp, slave sẽ trả về một bit ACK bằng cách kéo dòng SDA xuống thấp cho một bit Nếu địa chỉ từ master không khớp với địa chỉ của slave, slave rời khỏi đường SDA cao
Master gửi hoặc nhận khung dữ liệu
Sau khi mỗi khung dữ liệu được chuyển, thiết bị nhận trả về một bit ACK khác cho thiết bị gửi để xác nhận đã nhận thành công khung
Để dừng truyền dữ liệu, master gửi điều kiện dừng đến slave bằng cách chuyển đổi mức cao SCL trước khi chuyển mức cao SDA
2.5.3 Chuẩn giao tiếp wifi [24] a) Giới thiệu
Wifi là tên viết tắt của Wireless Fidelity, được gọi chung là mạng không dây sử dụng sóng vô tuyến, loại sóng vô tuyến này tương tự như sóng truyền hình, điện thoại và radio Wifi phát sóng trong phạm vi nhất định, các thiết bị điện tử tiêu dùng ngày nay như laptop, smartphone hoặc máy tính bảng có thể kết nối và truy cập internet trong tầm phủ sóng b) Nguyên tắc hoạt động Để tạo được kết nối wifi nhất thiết phải có Router (bộ thu phát) Router này lấy thông tin từ mạng internet qua kết nối hữu tuyến rồi chuyển nó sang tín hiệu vô tuyến và gửi đi, bộ chuyển tín hiệu không dây (adapter) trên các thiết bị di động thu nhận tín hiệu này rồi giải mã nó sang những dữ liệu cần thiết Quá trình này có thể thực hiện ngược lại, Router nhận tín hiệu vô tuyến từ Adapter và giải mã chúng rồi gửi qua Internet
2.5.4 Chuẩn giao tiếp 1-Wire [21] a) Giới thiệu
Chuẩn giao tiếp 1-Wire là giao diện 1 dây, bán song công, hai chiều, tốc độ thấp, giao thức truyền dữ liệu nối tiếp đường dài Tiêu chuẩn một dây có cấu hình chính và phụ, trong đó chỉ có thể có một thiết bị chính và nhiều thiết bị phụ và 1 dây bus tiêu chuẩn
Giao thức này không sử dụng tín hiệu đồng hồ Thay vào đó, các thiết bị phụ được tạo xung nhịp bên trong và được đồng bộ hóa với tín hiệu từ thiết bị chính Tốc độ dữ liệu trong giao thức 1 dây thấp so với các giao thúc truyền dữ liệu nối tiếp tiêu chuẩn khác Mặc dù tiêu thụ điện năng thấp nhưng nó có thể truyền dữ liệu trên một khoảng cách tương đối dài b) Đặc điểm
Về nguyên lý, chuẩn 1-Wire có thể giao tiếp với nhiều thiết bị trong cùng một mạng theo sơ đồ như hình 2.40 Để 1 Wire hoạt động, sẽ có 4 phương thức được sử dụng đó là: Reset, Write bit 0, Write bit 1, Read
Hình 2.40: Sơ đồ kết nối chuẩn giao tiếp 1-Write
TỔNG QUAN VỀ FIREBASE [26]
Google Firebase là phần mềm phát triển ứng dụng do Google hỗ trợ cho phép các nhà phát triển ứng dụng Ios, Android và Web Firebase cung cấp các công cụ để theo dõi phân tích, báo cáo và khắc phục sự cố ứng dụng, tạo thử nghiệm tiếp thị và sản phẩm
Hình 2.41: Phương thức hoạt động của 1-Wire
Firebase cung cấp cho người dùng các dịch vụ cơ sở dữ liệu hoạt động trên nền tảng đám mây với hệ thống máy chủ cực kỳ mạnh mẽ của Google Chức năng chính của firebase là giúp người dùng lập trình ứng dụng, phần mềm trên các nền tảng web, di động bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu
2.6.2 Các tính năng của Firebase
Những tính năng chính của Firebase:
Cơ sở dữ liệu thời gian thực Firebase là cơ sở dữ liệu NoSQL được lưu trữ trên đám mây cho phép dữ liệu được lưu trữ và đồng bộ hóa giữa những người dùng trong thời gian thực
Firebase xác thực giúp các nhà phát triển dễ dàng xây dựng các hệ thống xác thực an toàn và nâng cao trải nghiệm đăng nhập cũng như tích hợp cho người dùng Tính năng này cung cấp giải pháp nhận dạng hoàn chỉnh, hỗ trợ tài khoản email mật khẩu, xác thực điện thoại, cũng như đăng nhập Google, Facebook…
Firebase Cloud Messaging là một công cụ nhắn tin đa nền tảng cho phép các công ty nhận và gửi tin nhắn một cách đáng tin cậy trên Ios, Android, Web mà không mất phí
Cloud Functions Firebase cho phép người dùng viết những câu truy vấn database lưu trữ trên cloud Code của người dùng được lưu trữ trong cloud của Google và chạy trong một môi trường bảo mật, được quản lý Người dùng không cần quan tâm đến vấn đề mở rộng các máy chủ Với firebase, khi người dùng muốn lấy dữ liệu cần phải viết các câu truy vấn trực tiếp từ client Điều này có thể vô tình để lộ một số thông tin nhạy cảm Để khắc phục vấn đề đó, Cloud Function đã ra đời Nhiều lúc, các developers muốn kiểm soát logic trên server để tránh giả mạo phía client Ngoài ra, đôi khi không muốn mã của mình khi bị decode sẽ gây ra các vấn đề về bảo mật Cloud Functions được tách biệt hoàn toàn với client, vì vậy ngườ dùng có thể yên tâm nó về bảo mật và luôn thực hiện chính xác những gì họ muốn
Firebase Analytics là tính năng cung cấp báo cáo miễn phí, không giới hạn về các sự kiện riêng biệt Analytics trình bày dữ liệu về hành vi của người dùng trong ứng dụng Android và Ios, giúp đưa ra các quyết định tốt hơn về việc cải thiện hiệu suất và tiếp thị ứng dụng
Firebase Crashlytics là trình báo cáo sự cố theo thời gian thực giúp các nhà phát triển theo dõi, ưu tiên và khắc phục sự cố về độ ổn định làm giảm chất lượng ứng dụng của họ Với crashlytics, các nhà phát triển ít dành thời gian cho việc tổ chức và khắc phục sự cố và có nhiều thời gian để xây dựng các tính năng cho ứng dụng
Firebase Performance cung cấp cho nhà phát triển cái nhìn sâu sắc về các đặc điểm hiệu suất của ứng dụng Ios và Android giúp xác định vị trí và thời điểm có thể cải thiện hiệu suất của ứng dụng
Firebase Test Lab là cơ sở hạ tầng thử nghiệm ứng dụng dựa trên đám mây Với một thao tác, nhà phát triển có thể thử nghiệm ứng dụng IOs hoặc Android của họ trên nhiều loại thiết bị và cấu hình thiết bị.
GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID [27]
2.7.1 Giới thiệu về hệ điều Android
Hệ điều hành Android là một hệ điều hành di động được phát triển bởi Google chủ yếu được sử dụng cho các thiết bị màn hình cảm ứng, điện thoại di động và máy tính bảng
Thiết kế của nó cho phép người dùng điều khiển các thiết bị di động một cách trực quan, với các chuyển động của ngón tay phản chiếu các chuyển động thông thường, chẳng hạn như chụm, vuốt, gõ
Các nhà phát triển phần mềm và ứng dụng đã có thể sử dụng công nghệ Android để phát triển các ứng dụng dành cho thiết bị di động, được bán thông qua các cửa hàng ứng dụng, chẳng hạn như Google Play Và bởi vì nó được phát triển như một sản phẩm của Google, nên người dùng Android có cơ hội liên kết thiết bị di động của họ với các sản phẩm khác của Google, chẳng hạn như lưu trữ đám mây, nền tảng email và dịch vụ email
2.7.2 Ưu và nhược điểm Ưu điểm:
+ Android là một hệ điều hành mã nguồn mở dựa trên Linux, nó có thể được phát triển bởi bất kì ai
+ Dễ dàng truy cập vào các ứng dụng Android Hỗ trợ tất cả các dịch vụ của Google
+ Điện thoại Android cũng có thể hoạt động như bộ định tuyến để chia sẻ internet
+ Bổ sung và loại bỏ các tính năng không mông muốn Kho ứng dụng Google PlayStore đồ sộ
+ Khả năng đa nhiệm, chạy cùng lúc nhiều ứng dụng
+ Ứng dụng hoạt động ở chế độ nền
+ Bảo mật kém hơn nên có thể dễ dàng cài đặt các ứng dụng giả mạo để đánh cắp dữ liệu của người dùng từ các tài nguyên lạ
+ Điện thoại di động có thông số kỹ thuật thấp chạy rất chậm
+ Bố cục và hoạt ảnh rất khó viết mã trong Android
+ Chất lượng một số ứng dụng không tốt
GIỚI THIỆU VỀ CÁC NGÔN NGỮ LẬP TRÌNH WEBSITE [25]
HTML là tên viết tắt của HyperText Markup Language Nó là một ngôn ngữ đánh dấu tiêu chuẩn để tạo trang web Nó cho phép tạo và cấu trúc các phần, đoạn văn và liên kết bằng cách sử dụng các phần tử HTML (các khối xây dựng của trang web) chẳng hạn như thẻ và thuộc tính
HTML không được coi là ngôn ngữ lập trình vì nó không thể tạo chức năng động Nó hiện được coi là một tiêu chuẩn web chính thức Ưu và nhược điểm của HTML: Ưu điểm:
Thân thiện với người bắt đầu HTML có một lộ trình rõ ràng và nhất quán Ngôn ngữ này được sử dụng rộng rãi, với rất nhiều tài nguyên và một cộng đồng lớn
Có thể truy cập Nó là mã nguồn mở và hoàn toàn miễn phí HTML chạy tự nhiên trong tất cả các trình duyệt web
Linh hoạt HTML có thể dễ dàng tích hợp với các ngôn ngữ phụ trợ như PHP và Node.js
Ngôn ngữ này chủ yếu được sử dụng cho các trang web tĩnh Đối với chức năng động, có thể sử dụng JavaScript hoặc ngôn ngữ phụ trợ như PHP
Trang HTML riêng biệt Người dùng phải tạo các trang web riêng lẻ cho HTML
Tính tương thích của trình duyệt web Một số trình duyệt áp dụng các tính năng mới một cách chậm chạp
HTML được sử dụng để thêm các thành phần văn bản và tạo cấu trúc nội dung Tuy nhiên, nó không đủ để xây dựng một trang web chuyên nghiệp Vì vậy, cần sự hỗ trợ của Cascading Style Sheets (CSS) và JavaScripts để tạo ra phần lớn nội dung trang web
CSS chịu trách nhiệm về các kiểu dáng như nền, màu sắc, bố cục, khoảng cách và hoạt ảnh Mặt khác, JavaScripts thêm chức năng như thanh trượt, của sổ bật lên và thư viện ảnh
JavaScripts là ngôn ngữ lập trình nhẹ mà các nhà phát triển web thưởng sử dụng để tạo ra các tương tác động hơn khi phát triển các trang web, ứng dụng, máy chủ và thậm chí là trò chơi
JavaScripts được sử dụng trong các ứng dụng sau: Ứng dụng web và di động; Xây dựng máy chủ Web và ứng dụng máy chủ; Thêm các tính năng động cho các trang web; Phát triển trò chơi Ưu điểm:
JavaScripts có cấu trúc đơn giản, dễ học và triển khai hơn Đồng thời nó cũng chạy nhanh hơn một số ngôn ngữ khác Lỗi cũng dễ dàng phát hiện và sữa chữa
JavaScripts hoạt động trên nhiều trình duyệt nền tảng
JavaScripts giúp website tương tác tốt hơn với khách truy cập
JavaScripts tương thích với các ngôn ngữ khác như PHP, Perl và java Nó cũng làm cho các nhà phát triển có thể tiếp cận khoa học dữ liệu và học máy
Khả năng tương thích của trình duyệt, các trình duyệt web khác nhau diễn giải mã JavaScripts khác nhau, gây ra sự không nhất quán
Bảo mật: Mã JavaScripts chạy ở phía máy khách dễ bị khai thác bởi những người dùng vô trách nhiệm
Hỗ trợ gỡ lỗi kém hiệu quả
CSS là tên viết tắt của ngôn ngữ Cascading Style Sheets và được sử dụng để cách điệu các thành phần được viết bằng ngôn ngữ đánh dấu như HTML
Mối quan hệ giữa HTML và CSS được gắn chặt với nhau vì HTML là nền tảng của một trang web và CSS là tất cả tính thẩm mỹ của toàn bộ trang web Ưu điểm của CSS trên các trang web:
CSS giúp tiết kiệm thời gian: CSS có thể được viết một lần và sau đó sử dụng lại cùng một trang tính trong nhiều trang HTML Người dùng có thể định nghĩa một kiểu dáng cho mỗi phần tử HTML và áp dụng nó cho bao nhiêu trang Web tùy thích
Các trang tải nhanh hơn: Chỉ cần viết một quy tắc CSS của thẻ và áp dụng quy tắc đó cho tất cả các lần xuất hiện của thẻ đó
Dễ dàng bảo trì: Để thực hiện thay đổi toàn bộ, chỉ cần thay đổi kiểu và tất cả các thành phần trong tất cả các trang web sẽ được cập nhật tự động
GIỚI THIỆU VỀ PHẦN MỀM LẬP TRÌNH CHO HỆ THỐNG
Hình 2.44: Biểu tượng phần mềm Arduino
Arduino IDE là phần mềm lập trình và biên dịch phổ biến đối với các sinh viên hiện nay Phần mềm có nhiều hàm, thư viện được viết sẵn và dễ sử dụng Ngoài ra, nó còn chạy được trên nhiều nền tảng khác nhau như Windows, MAC, Linux Trình biên dịch này chuyển đổi những đoạn mã mà người lập trình sang mã HEX và tiến hành nạp vào các bo vi điều khiển Một số vi điều khiển hiện nay có thể dùng trình biên dịch Arduino như các bo của hãng Arduino, các board ESP, hay một số vi điều khiển STM,…
Ngôn ngữ sử dụng: C, C++, html,…
Một vài đặc điểm giao diện
Hình 2.45: Giao diện phần mềm Arduino IDE
Vùng lệnh: bao gồm các nút lệnh menu (File, Edit, Sketch, Tools, Help) Phía dưới là các icon cho phép sử dụng nhanh các chức năng thường dùng của IDE
Ngoài ra để mở màn hình
Serial Monitor, chúng ta chọn Tool >
Serial Monitor là thành phần của Arduino IDE, giúp bo mạch và máy tính có thể gửi và nhận dữ liệu với nhau qua giao tiếp USB
Vùng soạn thảo chương trình: vùng soạn thảo chương trình được mặc định bằng 2 chương trình là hàm setup () và hàm loop ()
Setup (): Hàm này chạy mỗi khi khởi động một chương trình, dùng
Hình 2.46: Các lệnh cơ bản của Arduino IDE
Hình 2.47: Cách chọn Port trong Arduino
43 để thiết lập các cài đặt và chỉ chạy một lần trong suốt chương trình
Loop (): Hàm này được chạy sau hàm setup () và được lặp đi lặp lại cho đến khi tắt nguồn hệ thống
Vùng thông báo: Là vùng thông báo cho người dùng biết những lỗi trong chương trình Nếu chương trình không có lỗi và được biên dịch thành công thì sẽ thông báo cho người dùng biết thông tin dung lượng file chương trình và bộ nhớ ram đã sử dụng.
GIỚI THIỆU VỀ PHẦN MỀN LẬP TRÌNH MÀN HÌNH HMI UART
Trong đề tài này, nhóm sử dụng màn hình cảm ứng UART HMI 3.5 inch của Nextion để điều khiển hệ thống cũng như hiển thị thông tin Màn hình Nextion là màn hình cảm ứng điện trở giúp dễ dàng xây dựng giao diện người dùng đồ họa (GUI)
Nó là một giải pháp tuyệt vời để giám sát và kiểm soát các quy trình, được áp dụng chủ yếu cho các ứng dụng IoTs
Nextion có bộ vi điều khiển ARM tích hợp để điều khiển màn hình, chẳng hạn như nó đảm nhiệm việc tạo các nút, tạo văn bản, lưu trữ hình ảnh hoặc thay đổi nền Nextion giao tiếp với bất kỳ bộ vi điều khiển nào bằng cách sử dụng giao tiếp nối tiếp ở tốc độ 9600 baud
Các thành phần trên giao diện màn hình
2 Canvas: Đây là nơi người dùng thêm các thành phần của mình để xây dựng giao diện
3 Hộp công cụ: Đây là nơi chứa các thành phần mà người dùng có thể thêm vào giao diện như hình ảnh, thanh tiến trình, nút, thanh trượt
4 Danh sách hình ảnh, phông chữ: phần này hiển thị các phông chữ và hình ảnh được nhập vào dự án Người dùng có thể tự tạo phông chữ và hình ảnh để thêm vào
5 Khu vực trang: Người dùng có thể quản lý các trang của dự án như thêm trang, sao chép và xóa trang
6 Khu vực thuộc tính: Phần này hiển thị các thuộc tính của thành phần dự án người dùng
7 Cửa sổ đầu ra của trình biên dịch: Hiển thị bất kì lỗi nào xảy ra trong quá trình biên dịch
8 Cửa sổ sự kiện: Thêm mã để chạy các sự kiện đáp ứng
Tạo một dự án mới
File > New để tạo tệp mới Đặt tên và lưu nó Sau đó một cửa sổ bật lên để chọn mô hình
Chọn hướng của màn hình
Sau khi chọn mà hình và hướng Nhấn nút
OK để bắt đầu dự án
Biên dịch và tải mã lên màn hình Nextion
Nhấn nút biên dịch trong Menu chính
Hình 2.48: Chọn loại màn hình
Hình 2.49: Chọn hướng của màn hình
Cắm thẻ nhớ microSD vào máy tính Đi tới File >
Sao chép tệp.TFT tương ứng với dự án đang làm việc
Dán tệp đó vào thẻ microSD
Cắm thẻ nhớ microSD trên màn hình Nextion và cắm nguồn
Thông báo trên màn hình cho thấy File đang được tải lên
Khi tệp đã sẵn sàng, màn hình sẽ hiển thị thông báo
Tháo nguồn khỏi màn hình
Nextion và rút thẻ nhớ microSD.
PHẦN MỀM LẬP TRÌNH APP ĐIỆN THOẠI DI ĐỘNG (ANDROID STUDIO) [29]
Android Studio là môi trường phát triển tích hợp (IDE) chính thức để phát triển ứng dụng
Android Nó dựa trên IntelliJ
IDEA, một môi trường phát triển tích hợp Java dành cho phần mềm và kết hợp các công cụ phát triển và chỉnh sửa mã của nó Hình 2.54: Logo Android Studio
Hình 2.51: Kết nối thẻ nhớ với màn hình HMI
Hình 2.52: File đang được tải lên màn HMI
Hình 2.53: Màn hình HMI nạp thành công
Những tính năng chính của Android Studio:
Chạy ứng dụng tức thì: Đây là một công nghệ tiên tiến, trong đó nó hiểu một cách khéo léo các chuyển đổi được thực hiện trong các ứng dụng và cung cấp nó ngay lập tức mà không mất thời gian để xây dựng lại apk và quá trình cài đặt
Trình chỉnh sửa bố cục trực quan: Trình chỉnh sửa bố cục giúp xây dựng bố cục nhanh chóng bằng cách thêm các thuộc tính khác nhau bằng mã cứng hoặc kéo và thả
Trình giả lập nhanh: Android có một tính năng tuyệt vời là trình giả lập, giống hệt như điện thoại Android để kiểm tra xem ứng dụng trông như thế nào trong các thiết bị vật lý
Trợ giúp xây dựng ứng dụng cho mọi thiết bị: Android Studio xây dựng các ứng dụng cho mọi kích thước màn hình
Trợ giúp kết nối với Firebase: Kết nối Firebase giúp tạo các bản cập nhật trực tiếp và cung cấp kết nối cơ sở dữ liệu Android Studio giúp mang lại trải nghiệm thời gian thực với việc phát triển dự án dựa trên IOT.
PHẦN MỀM LẬP TRÌNH WEB (VISUAL STUDIO CODE)
Visual Studio Code (VS Code) là một trình soạn thảo mã nguồn nhẹ nhưng mạnh mẽ, chạy trên máy tính và hỗ trợ Windows, macOS và Linux.Nó đi kèm với hỗ trợ tích hợp sẵn cho JavaScript, TypeScript và Node.js và có một hệ sinh thái mở rộng phong phú cho các ngôn ngữ khác chẳng hạn như C++, C#, Java, Python, PHP và Go) và thời gian chạy (chẳng hạn như NET và Unity)
Một số tính năng của Visual Studio Code:
Hỗ trợ nhiều ngôn ngữ lập trình: Visual Studio Code hỗ trợ nhiều ngôn ngữ lập trình như C/C++, C#, Visual Basic, HTML, CSS, JavaScripts
Intelli-Sense: Nó có thể phát hiện xem có đoạn mã nào chưa hoàn thành hay không Ngoài ra, các cú pháp biến phổ biến và khai báo biến được thực hiện tự động
Hỗ trợ đa nền tảng: Visual Studio Code hỗ trợ đa nền tảng, các trình chỉnh sửa được sử dụng để hỗ trợ hệ thống Windows hoặc Linux hoặc Mac
Tiện ích mở rộng và hỗ trợ: Thường hỗ trợ tất cả các ngôn ngữ lập trình, nhưng nếu người lập trình muốn sử dụng ngôn ngữ lập trình không được hỗ trợ thì có thể tải xuống tiện ích mở rộng và sử dụng nó
Hỗ trợ Web: Các ứng dụng web có thể được xây dựng và hỗ trợ trong Visual Studio Code Đa dự án: Có thể mở rộng đồng thời nhiều dự án chứa nhiều tệp/thư mục
Hỗ trợ Git: Có thể lấy tài nguyên từ GitHubRepo trực tuyến và ngược lại
THIẾT KẾ HỆ THỐNG
SƠ ĐỒ KHỐI CỦA HỆ THỐNG
3.1.1 Yêu cầu của hệ thống Đề tài: “THIẾT KẾ VÀ THI CÔNG HỆ THỐNG CHĂM SÓC VƯỜN
Hệ thống chính điều khiển nấm bằng màn hình cảm ứng HMI (gồm 2 chế độ hoạt động là MANUAL và AUTO):
- Đọc được dữ liệu về các thông số nhiệt độ, độ ẩm không khí, độ ẩm đất, cường độ ánh sáng từ cảm biến DHT11, cảm biến độ ẩm đất và cảm biến ánh sáng
- Chế độ MANUAL: người dùng có thể điều khiển các thiết bị một cách chủ động, bật tắt các thiết bị tùy ý mà không cần phụ thuộc vào các điều kiện của môi trường
- Chế độ AUTO: người dùng cài đặt các thông giới hạn của môi trường, từ đó các thiết bị sẽ hoạt động theo các thông số mà cảm biến đo đạc được
- Sử dụng màn hình HMI 3,5 Inch để giám sát và điều khiển trực tiếp các thiết thiết bị bơm, đèn sưởi, đèn, quạt và phun sương
Hệ thống mở rộng bao gồm:
- Sử dụng App điện thoại di động để giám sát các thông số môi trường và điều khiển các thiết bị bơm, đèn, đèn sưởi, phun sương, quạt từ xa Khi chuyển chế độ hoạt động trên App thông qua Internet thì phần cứng sẽ chuyển đổi chế độ hoạt động theo
- Sử dụng Website để giám sát các thông số của môi trường, các giới hạn cài đặt và trạng thái của các thiết bị
3.1.2 Sơ đồ khối và chức năng từng khối
Khối xử lý trung tâm:
- Nhận dữ liệu từ khối cảm biến, thực thiện tính toán để ra giá trị thông số môi trường chính xác và gửi dữ liệu đến khối điều khiển hiển thị để hiển thị trên màn hình
- Nhận lệnh từ khối điều khiển hiển thị và sẽ thực hiện điều khiển khối giao tiếp với tải dựa trên dữ liệu nhận được
- Giao tiếp với module Node MCU ESP82266 để gửi và nhận dữ liệu lên khối cơ sở dữ liệu
Khối giao tiếp wifi: có chức năng giao tiếp với khối xử lý trung tâm theo chuẩn UART để gửi và nhận dữ liệu, nhằm làm trung gian kết nối giữa khối cơ sở dữ liệu và khối xử lý trung tâm trong việc truyền nhận dữ liệu về các thông số cảm biến và trạng thái của các thiết bị thông qua kết nối Internet
Khối điều khiển trực tiếp và hiển thị:
- Hiển thị số liệu đọc được từ khối cảm biến, hiển thị trạng thái của các thiết bị, hiển thị thời gian, hiển thị các giá trị cài đặt giới hạn
- Thao tác, điều khiển trực tiếp thiết bị, chọn chế độ trực tiếp trên màn hình
Hình 3.1: Sơ đồ khối của hệ thống
Khối cảm biến (mưa, độ ẩm, ánh sáng): thu thập thông số của môi trường trong vườn nấm như nhiệt độ, độ ẩm không khí, độ ẩm đất, cường độ ánh sáng và gửi về khối xử lý trung tâm thông qua các giao thức truyền dữ liệu
Khối thời gian thực: đọc giá trị thời gian thực hiển thị lên màn hình giúp quá trình giám sát dễ dàng hơn
Khối giao tiếp với tải: đóng ngắt các tiếp điểm theo sự điều khiển khối xử lý trung tâm giúp điều khiển khối cơ cấu chấp hành Cách ly giữa mạch công suất và mạch điều khiển
Khối cơ cấu chấp hành (quạt, đèn, phun sương): nhận tín hiệu từ khối xử lý trung tâm bật tắt các thiết bị như bơm, đèn, phun sương giữ cho khu vườn luôn ở điều kiện thích hợp nhất
Khối điều khiển mái che: đóng mở mái che giúp cân bằng lại môi trường trong vườn nấm với môi trường bên ngoài sau thu hoạch hay tránh mưa trực tiếp tác động lên nấm
Khối Web: hiển thị các thông số được đo từ cảm biến, trạng thái hoạt động của các thiết bị và các thông số giới hạn một cách trực quan
Khối App: hiển thị các thông số môi trường, thông số cài đặt, điều khiển các thiết bị, tăng giảm thông số cài đặt, chuyển chế độ hoạt động (Manual và Auto)
Khối nguồn: cấp nguồn cho toàn bộ hệ thống hoạt động ổn định
3.1.3 Hoạt động của hệ thống
Khi hệ thống được cấp nguồn toàn bộ các khối trong hệ thống sẽ được khởi động và hoạt động như sau:
Khối xử lý trung tâm nhận dữ liệu từ khối cảm biến như: cảm biến nhiệt độ độ ẩm, cảm biến độ ẩm đất 1, cảm biến độ ẩm đất 2, cảm biến ánh sáng Sau khi nhận dữ liệu, khối xử lý trung tâm sẽ gửi dữ liệu đến khối giao tiếp wifi để đưa dữ liệu lên firebase và hiển thị các thông số trên khối hiển thị và điều khiển
Khối hiển thị điều khiển gửi dữ liệu đến khối xử lý trung tâm Dữ liệu này bao gồm các lệnh điều khiển các thiết bị đối với chế độ Manual hoặc các thông số giới hạn đối với chế độ Auto Khối xử lý trung tâm điều khiển trực tiếp các thiết bị thông qua khối giao tiếp với tải ở chế độ Manual hoặc so sánh giữa các thông số môi trường với các thông số cài đặt giới hạn để thực hiện bật tắt tự động các thiết bị ở chế độ Auto
THIẾT KẾ PHẦN CỨNG
khối App Dữ liệu này bao gồm chế độ hoạt động, điều khiển các thiết bị và các thông số cài đặt giới hạn Dữ liệu này sẽ được truyền về khối xử lý trung tâm để cập nhật lại hệ thống Cả khối App và Web đều lấy dữ liệu từ firebase để hiển thị Riêng khối App còn có chức năng điều khiển
Trong phần thiết kế phần cứng cho hệ thống, chúng tôi thực hiện thiết kế ở mức độ mô hình và chỉ dừng lại ở việc tính toán, chọn lựa các linh kiện cũng như module có sẵn trên thị trường phù hợp với yêu cầu đặt ra để sử dụng
3.2.1 Khối điều khiển và hiển thị
Khối hiển thị và điều khiển có chức năng hiển thị những thông số của môi trường trong vườn nấm như nhiệt độ, độ ẩm không khí, độ ẩm đất, độ sáng và trạng thái hoạt động của các thiết bị Ngoài ra, người sử dụng có thể điều khiển trực tiếp các thiết bị của chế độ Manual hoặc cài đặt thông số giới hạn của chế độ Auto
Với các yêu cầu kể trên, có thể sử dụng màn hình LCD để hiển thị các thông số của môi trường Song song với đó có thể sử dụng các nút nhấn hoặc bàn phím để điều khiển các thiết bị Ưu điểm của chúng là giá rẻ, dễ tìm kiếm trên thị trường và đã được sử dụng rộng rãi trên nhiều mô hình Tuy nhiên, nhược điểm của chúng là hiển thị hình ảnh chưa được trực quan, sinh động Và khi áp dụng vào đề tài nếu sử dụng nút nhấn để điều khiển các thiết bị cần phải tốn một số lượng khá lớn các chân trên vi điều khiển Do đó, nhóm muốn tiếp cận đến cách thức điều khiển và hiển thị mới Thiết bị này phải đảm bảo các yêu cầu cơ bản của việc hiển thị, người dùng có thể dễ dàng điều khiển trực tiếp trên thiết bị Và yêu cầu cao hơn đó là việc kết nối đến vi điều khiển cũng như hiển thị hình ảnh sinh động thu hút sự chú ý của người dùng Vì thế, nhóm quyết định sử dụng màn hình cảm ứng HMI USART 3.5 inch cho khối này
Hình 3.2: Kết nối màn hình với Arduino
Cách nối dây cho màn hình HMI vào Arduino Mega 2560 như sau:
- Dây Vcc màn hình HMI nối vào nguồn 5V và dây GND màn hình HMI nối vào chân GND
- Dây TX của màn hình HMI nối vào chân số RX2 của arduino và dây RX của màn hình HMI nối chân TX2 của arduino
Khối cảm biến sẽ có nhiệm vụ thu thập các thông số của môi trường để cung cấp dữ liệu cho khối xử lý trung tâm Từ đó có những hướng xử lý, điều chỉnh phù hợp nhất với sự phát triển của nấm Ở đề tài này, các thông số mà nhóm quan tâm đến là thông số về nhiệt độ môi trường, độ ẩm không khí, độ ẩm đất, cường độ ánh sáng Ứng với mỗi thông số có rất nhiều sự lựa chọn trên thị trường với nhiều mức giá và tính năng khác nhau a) Cảm biến nhiệt độ và độ ẩm DHT11
Trên thị trường hiện nay, có nhiều dòng cảm biến đo nhiệt độ phổ biến: cảm biến nhiệt LM35, module cảm biến nhiệt độ DS18b20, cảm biến nhiệt độ RTD PT100 Đối với độ ẩm, hiện nay cũng có nhiều cảm biến để đo độ ẩm không khí cụ thể: HRT M030, HR202…
Với mong muốn tích hợp cả đo nhiệt độ và độ ẩm trên cùng một module, nhóm đã lựa chọn cảm biến DHT11 Do yêu cầu đề tài phạm vi đo nhiệt độ và độ ẩm không quá rộng, kích thước của mô hình nhỏ và ít tốn chi phí, tỷ lệ lấy mẫu cao hơn Tốc độ lấy mẫu của DHT11 là 1Hz tức là một lần đọc mỗi giây Vì vậy, nhóm đã quyết định chọn DHT11 làm cảm biến đo nhiệt độ và độ ẩm cho hệ thống
Hình 3.3 mô tả kết nối giữa cảm biến DHT11 và Arrduino Mega
- Do theo chuẩn kết nối 1 wire nên chân Data của cảm biến
DHT11 kết nối với chân 24 của khối xử lý trung tâm (Arduino) để truyền cả dữ liệu nhiệt độ và độ ẩm về khối xử lý trung tâm
- Chân VDD của các cảm biến nối với nguồn 3.3V
- Chân GND của các cảm biến nối với chân GND của nguồn b) Cảm biến độ ẩm đất
Hiện nay để đo độ ẩm đất có nhiều loại cảm biến khác nhau: cảm biến đo độ ẩm đất điện dung (FC-28), máy đo FDR hoặc TDR Các cảm biến này có thể theo dõi và kiểm soát độ ẩm đất Từ đó, giúp cho người dùng có thể đưa ra các giải pháp phù
Hình 3.3: Kết nối DHT11 với Arduino Mega 2560
52 hợp hoặc có thể xây dựng hệ thống có thể tự động cung cấp lượng nước tưới phù hợp tránh tưới quá nhiều hoặc quá ít mà không cần sự hỗ trợ của con người
Nhóm đã quyết định chọn cảm biến độ ẩm đất điện dung, cụ thể là cảm biến độ ẩm đất FC-28 để sử dụng đo độ ẩm đất cho hệ thống vì tính tiện dụng, dễ tìm kiếm trên thị trường, độ sai số không quá lớn và ít tốn chi phí Tuy nhiên cảm biến này có tuổi thọ ngắn do thường xuyên tiếp xúc với hơi ẩm Hơn nữa, liên tục cấp nguồn cho cảm biến khi bị chôn vùi trong đất làm tăng tốc độ ăn mòn Do trong mô hình nhóm sử dụng hai phôi nấm nên cần hai độ ẩm đất để có thể đo độ ẩm cũng như so sánh độ chính xác và kiểm soát độ ẩm đất Để đọc tín hiệu Analog hai module cảm biến đo độ ẩm đất được kết nối với khối xử lý trung tâm như hình
- Chân A0 của cảm biến độ ẩm đất 1 và 2 lần lượt kết nối với chân A0 và A1 của Arduino Mega 2560
- Chân VCC của các cảm biến nối với nguồn 5V
- Chân GND của các cảm biến nối với chân GND của nguồn c) Cảm biến mưa
Với yêu cầu tận dụng ánh sáng tự nhiên và điều hòa không khí trong vườn nấm nên nhóm sẽ sử dụng mái che trong mô hình Tuy nhiên, thời tiết không thể đoán trước và nấm bào ngư xám không thể bị tác động trực tiếp từ mưa nhưng hệ thống trồng nấm rất dễ để mái che ở trạng thái mở Vì thế, nhóm đã sử dụng cảm biến mưa để gửi thông báo yêu cầu đóng mở mái che bất cứ khi nào phát hiện có mưa
Hoạt động của cảm biến khá đơn giản Tấm cảm biến với một loạt đồng tiếp xúc, cùng hoạt động như một biến trở (giống như một chiết áp) có điện trở thay đổi tùy theo lượng nước trên bề mặt của nó Điện trở này tỉ lệ nghịch với lượng nước
Module cảm biến mưa chính là module đo độ ẩm đất sử dụng IC LM393 đã trình bày ở chương 2 mục 2.4.5 Tuy nhiên, do cảm biến mưa chỉ phát hiện có mưa hay không dựa theo độ ẩm Vì vậy, nhóm sẽ sử dụng chân digital của cảm biến để kết nối với khối xử lý trung tâm (Arduino)
Hình 3.4: Kết nối cảm biến độ ẩm đất với Arduino Mega 2560
Hình 3.5 mô tả kết nối giữa cảm biến DHT11 và
- Chân Data của cảm biến mưa kết nối với chân 22 của khối xử lý trung tâm (Arduino)
- Chân VCC của các cảm biến nối với nguồn 5V
- Chân GND của các cảm biến nối với chân GND của nguồn d) Cảm biến cường độ ánh sáng
Qua khảo sát thực tế, có nhều module cảm biến đo cường độ ánh sáng khác nhau: module đo cường độ ánh sáng BH1750FVI, cảm biến cường độ ánh sáng GY-
2561 TSL2561, cảm biến cường độ ánh sáng GY-30 BH1750FVI Các cảm biến này đều có khả năng đo cường độ ánh sáng với độ chính xác cao Tuy nhiên, nhóm quyết định sử dụng module cảm biến ánh sáng GY-30 BH1750VI Ưu điểm của thiết bị này là khá phổ biến trên thị trường, giá thành rẻ, nhạy với ánh sáng Module cảm biến ánh sáng GY-30 BH1750FVI sử dụng chuẩn truyền I2C Với chuẩn truyền này, cảm biến có thể giao tiếp với khối xử lý trung tâm cùng với khối thời gian thực theo chế độ một master và hai slave
Hình 3.6 mô tả kết nối giữa cảm biến cường độ ánh sáng và
- Chân SDA, SCL của cảm biến cường độ ánh sáng lần lượt kết nối với chân A0 và A1 của Arduino
- Chân VCC của các cảm biến nối với nguồn 5V
- Chân GND của các cảm biến nối với chân GND của nguồn
Hình 3.5: Kết nối cảm biến mưa với
Hình 3.6: Kết nối cảm biến cường độ ánh sáng với Arduino Mega 2560
KẾT QUẢ THI CÔNG HỆ THỐNG
GIỚI THIỆU
Danh sách các linh kiện được sử dụng trong mô hình được liệt kê trong bảng 4.1 dưới đây
Bảng 4.1: Bảng tổng hợp các linh kiện phần cứng sử dụng
STT Linh kiện Thông số Số lượng Chú thích
3 Màn hình HMI UART cảm ứng điện trở 3.5 Inch 5V 1
5 Module cảm biến độ ẩm đất 5V 2
6 Module cảm biến ánh sáng
19 Nút nhấn 1 Kích thước 5x4mm
20 Công tắt 3A-6A 2 Kích thước 10 x 15 mm
21 Led 1 Led trắng, đường kính chân 2.54 mm
4.2 THIẾT KẾ VÀ THI CÔNG MẠCH PCB
Hình 4.1: Thiết kế PCB kết nối các phần cứng
Hình 4.2: Bố trí các linh kiện trên mặt trước của PCB
Hình mặt trên của board mạch hệ thống tương thích với các số là vị trí của các khối, lần lượt là các khối:
Vị trí 1: Khối xử lý trung tâm (Arduino Mega 2560)
Vị trí 2: Khối giao tiếp WiFi (Node MCU ESP8266)
Vị trí 3: Khối cảm biến (cảm biến mưa, cảm biến ánh sáng, cảm biến độ ẩm đất, cảm biến nhiệt độ, độ ẩm DHT11)
Vị trí 4: Khối hiển thị và điều khiển (Màn hình HMI UART 3.5 INCH)
Vị trí 5: Khối thời gian thực (Module DS1307)
Vị trí 6: Khối điều khiển mái che (Module L298N)
Vị trí 7: Khối giao tiếp tải
Vị trí 8: Nút nhấn Reset hệ thống
4.3.1 Kiểm tra board PCB và lắp ráp linh kiện
Quy trình lắp ráp – kiểm tra mạch:
- Bước 1: Chuẩn bị board đã được in mạch in PCB lên trên
- Bước 2: Dựa vào vị trí các linh kiện trên file layout PCB so sánh với vị trí các linh kiện trên board PCB thực tế để kiểm tra độ chính xác
- Bước 3: Sử dụng VOM để kiểm tra thông mạch trên board trước khi
Hình 4.3: Mặt sau PCB thực tế
- Bước 4: Dựa vào vị trí các linh kiện đã được in trên mạch, để gắn các hàng rào, điện trở vào các lỗ đã khoan
- Bước 5: Hàn cố định các chân linh kiện
- Bước 6: Sử dụng VOM để kiểm tra thông mạch trên board để đảm bảo việc hàn là chính xác và mạch cái đường dây trên board hoạt động tốt
- Bước 5: Gắn trực tiếp Arduino Mega 2560 và NodeMCU ESP8266 vào chân hàng rào đã cố định trên board các module và linh kiện còn lại thì sẽ sử dụng dây bus để kết nối với board
- Bước 6: Kiểm tra thông mạch trên board 1 lần nữa
- Bước 7: Cấp nguồn cho toàn bộ hệ thống và sử dụng VOM kiểm tra nguồn điện áp
- Bước 8: Cuối cùng nạp chương trình và test chương trình có đạt như yêu cầu ban đầu không
4.3.2 Thi công và lắp ráp mô hình hoàn chỉnh
Với giá thành tương đối rẻ, kết cấu khá chắc chắn cũng như dễ dàng trong việc đặt các linh kiện một cách cố định nên nhóm quyết định sử dụng khung sắt làm khung cố định cho vườn nấm Ngoài cung cấp không gian để có thể trồng nấm, mô hình còn dùng để lắp đặt tủ điều khiển và các thiết bị của hệ thống
Mô hình nhìn từ mặt trước bao gồm:
- Vị trí 1: tủ điều khiển
- Vị trí 2: hộp đựng nguồn tổ ong
- Vị trí 3: bơm phun sương
- Vị trí 4: quạt tản nhiệt
Hình 4.4: Hình ảnh mô hình từ mặt trước
Mô hình nhìn từ mặt trên bao gồm:
- Vị trí 1: động cơ bước
- Vị trí 2: các vòi phun sương
- Vị trí 4: cảm biến DHT11
- Vị trí 5: cảm biến độ ẩm đất
- Vị trí 6: cảm biến mưa
Chi tiết mô hình mô phỏng vườn nấm:
Mô tả: Mô hình có phần khung làm bằng sắt V có lỗ, phần mái che làm bằng tấm bạt có thể đóng mở Bao quanh khung là lưới nhựa để chắn gió, ánh nắng trực tiếp và ngăn chặn côn trùng
Chứa: Các phôi nấm, các cảm biến, cơ cấu chấp hành, hệ thống dây điện kết nối các thiết bị, hệ thống ống nước đáp ứng yêu cầu tưới và giữ ẩm
Chi tiết hộp điều khiển: Được đặt ở phía trước của mô hình Mặt trước của hộp điều khiển là màn hình HMI hiển thị toàn bộ thông tin liên quan đến mô hình bao gồm: thời gian thực, các thông số môi trường, các giới hạn cài đặt, các switch để điều khiển và chọn chế độ hoạt động Hộp điều khiển bằng nhựa không lo bị rò điện hay chạm mas, chống nước, chịu được ánh nắng mặt trời, kích thước nhỏ gọn
Chất liệu: tủ điện bằng nhựa
Bên trong chứa mạch PCB của mô hình, module hạ áp, dây kết nối tới các cảm biến Cạnh bên có module điều khiển động cơ L298N, module relay, hệ thống dây điện
Hình 4.5: Hình ảnh mô hình từ mặt trên
Hình 4.6: Bên trong của hộp điều khiển
Hình 4.7: Cạnh trái của hộp điều khiển Hình 4.8: Cạnh phải của hộp điều khiển
4.4.1 Lưu đồ giải thuật chương trình chính của hệ thống Để mô hình hoạt động ổn định cần phải có một quy trình thực hiện cho hệ thống Lưu đồ của chương trình chính được thể hiện trong hình 4.11
Giải thích lưu đồ chương trình chính:
Khi cấp điện, Arduino Mega
2560, màn hình HMI, ESP 8266, HMI sẽ khởi động Đồng thời, khởi tạo thư viện, định nghĩa các chân và biến, các giá trị ban đầu
Tiếp theo, Arduino Mega 2560 sẽ tiến hành đọc dữ liệu từ cảm biến
Sau đó, Arduino Mega 2560 sẽ gửi toàn bộ dữ liệu nhận được sang ESP8266 theo chuẩn truyền UART Dữ liệu bao gồm các thông số môi trường, trạng thái của các thiết bị và các thông số giới hạn
Khi khởi động hoặc reset hệ thống, Arduino Mega 2560 sẽ đi vào thực thi chương trình Manual
Arduino đọc dữ liệu nhận được từ ESP theo chuẩn UART Dữ liệu này được lấy từ firebase thông qua ESP
Chế độ mặc định của hệ thống là Manual Ở chế độ này màn hình sẽ hiển thị các thông số môi trường, bật tắt các thiết bị Khi người dùng chọn chế độ Auto, người dùng có thể cài đặt thông số giới hạn và toàn bộ hệ thống sẽ hoạt động tự động
Tiếp tục quay trở lại thực thi tuần tự
Hình 4.9: Lưu đồ giải thuật chương trình chính
4.4.2 Lưu đồ giải thuật chương trình trình con màn hình HMI
Giải thích lưu đồ chương trình màn hình HMI:
Khi được cấp điện, màn hình HMI sẽ khởi động Trên giao diện màn hình trang chủ sẽ cung cấp ba tùy chọn cho người dùng
Chạm nút nhấn Sensor nếu muốn xem các thông số từ môi trường bao gồm nhiệt độ, độ ẩm không khí, độ ẩm đất, cường độ ánh sáng Nếu muốn thoát ra khỏi trang hiện tại chạm nút nhấn Back để quay về trang chủ
Chạm nút nhấn Control nếu muốn chọn chế độ hoạt động của hệ thống Nếu không chạm switch Auto, mặc định hệ thống đang ở chế độ Manual Người dùng có thể bật tắt các thiết bị thông qua các switch trên trang Control Để chọn chế độ Auto, người dùng sẽ chạm switch Auto trên trang Control, tất cả các nút điều khiển thiết bị sẽ không được kích hoạt Màn hình chỉ cho phép người dùng cài đặt các thông số giới
Hình 4.10: Lưu đồ giải thuật chương trình trình con màn hình HMI
70 hạn ở trang Setting Nếu muốn thoát ra khỏi trang hiện tại chạm nút nhấn Back để quay về trang chủ
Chạm nút nhấn Setting nếu muốn cài đặt thông số giới hạn để điều khiển các thiết bị một cách tự động Nếu muốn thoát khỏi trang hiện tại chạm nút nhấn Back để quay về trang chủ
4.4.3 Lưu đồ giải thuật chương trình con chế độ Auto
Hình 4.11: Lưu đồ giải thuật chương trình con chế độ Auto
Giải thích lưu đồ chương trình chế độ Auto:
Trong chế độ Auto, chương trình sẽ quét liên tục các nút nhấn cộng trừ để thay đổi các thông số giới hạn của môi trường
Nhiệt độ không khí hiện tại sẽ được so sánh với nhiệt độ không khí cài đặt giới hạn dưới được ghi vào code Nếu nhỏ hơn, hệ thống sẽ tự động bật đèn sưởi và tắt quạt Nếu lớn hơn nhiệt độ giới hạn trên do người dùng cài đặt, hệ thống sẽ tự động bật quạt và tắt đèn sưởi Độ ẩm không khí hiện tại sẽ được so sánh với độ ẩm không khí cài đặt giới hạn Nếu nhỏ hơn, hệ thống sẽ tự động bật phun sương Ngược lại, hệ thống sẽ tắt phun sương
72 Độ ẩm đất 1 hiện tại sẽ được so sánh với độ ẩm đất 1 cài đặt giới hạn Nếu lớn hơn, hệ thống sẽ tự động tắt bơm 1 Ngược lại, hệ thống sẽ bật bơm 1 Độ ẩm đất 2 hiện tại sẽ được so sánh với độ ẩm đất 2 cài đặt giới hạn Nếu lớn hơn, hệ thống sẽ tự động tắt bơm 2 Ngược lại, hệ thống sẽ bật bơm 2
THI CÔNG PHẦN CỨNG
4.3.1 Kiểm tra board PCB và lắp ráp linh kiện
Quy trình lắp ráp – kiểm tra mạch:
- Bước 1: Chuẩn bị board đã được in mạch in PCB lên trên
- Bước 2: Dựa vào vị trí các linh kiện trên file layout PCB so sánh với vị trí các linh kiện trên board PCB thực tế để kiểm tra độ chính xác
- Bước 3: Sử dụng VOM để kiểm tra thông mạch trên board trước khi
Hình 4.3: Mặt sau PCB thực tế
- Bước 4: Dựa vào vị trí các linh kiện đã được in trên mạch, để gắn các hàng rào, điện trở vào các lỗ đã khoan
- Bước 5: Hàn cố định các chân linh kiện
- Bước 6: Sử dụng VOM để kiểm tra thông mạch trên board để đảm bảo việc hàn là chính xác và mạch cái đường dây trên board hoạt động tốt
- Bước 5: Gắn trực tiếp Arduino Mega 2560 và NodeMCU ESP8266 vào chân hàng rào đã cố định trên board các module và linh kiện còn lại thì sẽ sử dụng dây bus để kết nối với board
- Bước 6: Kiểm tra thông mạch trên board 1 lần nữa
- Bước 7: Cấp nguồn cho toàn bộ hệ thống và sử dụng VOM kiểm tra nguồn điện áp
- Bước 8: Cuối cùng nạp chương trình và test chương trình có đạt như yêu cầu ban đầu không
4.3.2 Thi công và lắp ráp mô hình hoàn chỉnh
Với giá thành tương đối rẻ, kết cấu khá chắc chắn cũng như dễ dàng trong việc đặt các linh kiện một cách cố định nên nhóm quyết định sử dụng khung sắt làm khung cố định cho vườn nấm Ngoài cung cấp không gian để có thể trồng nấm, mô hình còn dùng để lắp đặt tủ điều khiển và các thiết bị của hệ thống
Mô hình nhìn từ mặt trước bao gồm:
- Vị trí 1: tủ điều khiển
- Vị trí 2: hộp đựng nguồn tổ ong
- Vị trí 3: bơm phun sương
- Vị trí 4: quạt tản nhiệt
Hình 4.4: Hình ảnh mô hình từ mặt trước
Mô hình nhìn từ mặt trên bao gồm:
- Vị trí 1: động cơ bước
- Vị trí 2: các vòi phun sương
- Vị trí 4: cảm biến DHT11
- Vị trí 5: cảm biến độ ẩm đất
- Vị trí 6: cảm biến mưa
Chi tiết mô hình mô phỏng vườn nấm:
Mô tả: Mô hình có phần khung làm bằng sắt V có lỗ, phần mái che làm bằng tấm bạt có thể đóng mở Bao quanh khung là lưới nhựa để chắn gió, ánh nắng trực tiếp và ngăn chặn côn trùng
Chứa: Các phôi nấm, các cảm biến, cơ cấu chấp hành, hệ thống dây điện kết nối các thiết bị, hệ thống ống nước đáp ứng yêu cầu tưới và giữ ẩm
Chi tiết hộp điều khiển: Được đặt ở phía trước của mô hình Mặt trước của hộp điều khiển là màn hình HMI hiển thị toàn bộ thông tin liên quan đến mô hình bao gồm: thời gian thực, các thông số môi trường, các giới hạn cài đặt, các switch để điều khiển và chọn chế độ hoạt động Hộp điều khiển bằng nhựa không lo bị rò điện hay chạm mas, chống nước, chịu được ánh nắng mặt trời, kích thước nhỏ gọn
Chất liệu: tủ điện bằng nhựa
Bên trong chứa mạch PCB của mô hình, module hạ áp, dây kết nối tới các cảm biến Cạnh bên có module điều khiển động cơ L298N, module relay, hệ thống dây điện
Hình 4.5: Hình ảnh mô hình từ mặt trên
Hình 4.6: Bên trong của hộp điều khiển
Hình 4.7: Cạnh trái của hộp điều khiển Hình 4.8: Cạnh phải của hộp điều khiển
LẬP TRÌNH HỆ THỐNG
4.4.1 Lưu đồ giải thuật chương trình chính của hệ thống Để mô hình hoạt động ổn định cần phải có một quy trình thực hiện cho hệ thống Lưu đồ của chương trình chính được thể hiện trong hình 4.11
Giải thích lưu đồ chương trình chính:
Khi cấp điện, Arduino Mega
2560, màn hình HMI, ESP 8266, HMI sẽ khởi động Đồng thời, khởi tạo thư viện, định nghĩa các chân và biến, các giá trị ban đầu
Tiếp theo, Arduino Mega 2560 sẽ tiến hành đọc dữ liệu từ cảm biến
Sau đó, Arduino Mega 2560 sẽ gửi toàn bộ dữ liệu nhận được sang ESP8266 theo chuẩn truyền UART Dữ liệu bao gồm các thông số môi trường, trạng thái của các thiết bị và các thông số giới hạn
Khi khởi động hoặc reset hệ thống, Arduino Mega 2560 sẽ đi vào thực thi chương trình Manual
Arduino đọc dữ liệu nhận được từ ESP theo chuẩn UART Dữ liệu này được lấy từ firebase thông qua ESP
Chế độ mặc định của hệ thống là Manual Ở chế độ này màn hình sẽ hiển thị các thông số môi trường, bật tắt các thiết bị Khi người dùng chọn chế độ Auto, người dùng có thể cài đặt thông số giới hạn và toàn bộ hệ thống sẽ hoạt động tự động
Tiếp tục quay trở lại thực thi tuần tự
Hình 4.9: Lưu đồ giải thuật chương trình chính
4.4.2 Lưu đồ giải thuật chương trình trình con màn hình HMI
Giải thích lưu đồ chương trình màn hình HMI:
Khi được cấp điện, màn hình HMI sẽ khởi động Trên giao diện màn hình trang chủ sẽ cung cấp ba tùy chọn cho người dùng
Chạm nút nhấn Sensor nếu muốn xem các thông số từ môi trường bao gồm nhiệt độ, độ ẩm không khí, độ ẩm đất, cường độ ánh sáng Nếu muốn thoát ra khỏi trang hiện tại chạm nút nhấn Back để quay về trang chủ
Chạm nút nhấn Control nếu muốn chọn chế độ hoạt động của hệ thống Nếu không chạm switch Auto, mặc định hệ thống đang ở chế độ Manual Người dùng có thể bật tắt các thiết bị thông qua các switch trên trang Control Để chọn chế độ Auto, người dùng sẽ chạm switch Auto trên trang Control, tất cả các nút điều khiển thiết bị sẽ không được kích hoạt Màn hình chỉ cho phép người dùng cài đặt các thông số giới
Hình 4.10: Lưu đồ giải thuật chương trình trình con màn hình HMI
70 hạn ở trang Setting Nếu muốn thoát ra khỏi trang hiện tại chạm nút nhấn Back để quay về trang chủ
Chạm nút nhấn Setting nếu muốn cài đặt thông số giới hạn để điều khiển các thiết bị một cách tự động Nếu muốn thoát khỏi trang hiện tại chạm nút nhấn Back để quay về trang chủ
4.4.3 Lưu đồ giải thuật chương trình con chế độ Auto
Hình 4.11: Lưu đồ giải thuật chương trình con chế độ Auto
Giải thích lưu đồ chương trình chế độ Auto:
Trong chế độ Auto, chương trình sẽ quét liên tục các nút nhấn cộng trừ để thay đổi các thông số giới hạn của môi trường
Nhiệt độ không khí hiện tại sẽ được so sánh với nhiệt độ không khí cài đặt giới hạn dưới được ghi vào code Nếu nhỏ hơn, hệ thống sẽ tự động bật đèn sưởi và tắt quạt Nếu lớn hơn nhiệt độ giới hạn trên do người dùng cài đặt, hệ thống sẽ tự động bật quạt và tắt đèn sưởi Độ ẩm không khí hiện tại sẽ được so sánh với độ ẩm không khí cài đặt giới hạn Nếu nhỏ hơn, hệ thống sẽ tự động bật phun sương Ngược lại, hệ thống sẽ tắt phun sương
72 Độ ẩm đất 1 hiện tại sẽ được so sánh với độ ẩm đất 1 cài đặt giới hạn Nếu lớn hơn, hệ thống sẽ tự động tắt bơm 1 Ngược lại, hệ thống sẽ bật bơm 1 Độ ẩm đất 2 hiện tại sẽ được so sánh với độ ẩm đất 2 cài đặt giới hạn Nếu lớn hơn, hệ thống sẽ tự động tắt bơm 2 Ngược lại, hệ thống sẽ bật bơm 2
Cường độ ánh sáng hiện tại sẽ được so sánh với cường độ ánh sáng cài đặt giới hạn Nếu lớn hơn giới hạn cường độ ánh sáng do người dùng cài đặt, hệ thống sẽ tự động tắt đèn led Nếu nhỏ hơn giới hạn cường độ ánh sáng, hệ thống sẽ bật đèn led
Cảm biến mưa sẽ trực tiếp điều khiển hệ thống mái che Nếu có mưa, buzzer sẽ kêu, hệ thống mái che sẽ đóng Ngược lại, buzzer sẽ ngưng kêu, hệ thống mái che sẽ mở
Các thông số và trạng thái cũng sẽ liên tục cập nhật giữa màn hình HMI và FireBase và giữa App và FireBase Riêng Web chỉ theo dõi các thông số được thu thập từ cảm biến
4.4.4 Lưu đồ giải thuật chương trình con chế độ Manual
Hình 4.12: Lưu đồ giải thuật chương trình con chế độ Manual
Giải thích lưu đồ chương trình chế độ Manual:
Bắt đầu, các thiết bị của hệ thống sẽ được kích hoạt Các thông số của cảm biến sẽ được cập nhật lên màn hình HMI và FireBase Khi người dùng chọn chế độ Manual, trạng thái của các thiết bị sẽ là OFF
Nếu chạm vào switch đèn sưởi, vi điều khiển sẽ đảo biến trạng thái Nếu biến trạng thái là 1 sẽ mở đèn sưởi Ngược lại sẽ tắt đèn sưởi
Nếu chạm vào switch đèn led, vi điều khiển sẽ đảo biến trạng thái Nếu biến trạng thái là 1 sẽ mở đèn led Ngược lại sẽ tắt đèn led
Nếu chạm vào switch bơm 1, vi điều khiển sẽ đảo biến trạng thái Nếu biến trạng thái là 1 sẽ mở bơm 1 Ngược lại sẽ tắt bơm 1
Nếu chạm vào switch bơm 2, vi điều khiển sẽ đảo biến trạng thái Nếu biến trạng thái là 1 sẽ mở bơm 2 Ngược lại sẽ tắt bơm 2
Nếu chạm vào switch quạt, vi điều khiển sẽ đảo biến trạng thái Nếu biến trạng thái là 1 sẽ mở quạt Ngược lại sẽ tắt quạt
Nếu chạm vào switch phun sương, vi điều khiển sẽ đảo biến trạng thái Nếu biến trạng thái là 1 sẽ mở phun sương Ngược lại sẽ tắt phun sương
Nếu chạm vào switch mái che, vi điều khiển sẽ đảo biến trạng thái Nếu biến trạng thái là 1 sẽ đóng mái che Ngược lại sẽ mở mái che
4.4.5 Lưu đồ giải thuật chương trình con đọc cảm biến
Giải thích lưu đồ chương trình đọc cảm biến:
Bắt đầu, khi khởi động các cảm biến Thiết lập các chân vào ra kết nối giữa cảm biến với vi điều khiển, Đọc giá trị nhiệt độ thông qua cảm biến DHT11 Đọc giá trị độ ẩm thông qua cảm biến DHT11 Đọc giá trị độ ẩm đất 1 và 2 thông qua cảm biến độ ẩm đất 1 và 2 Do giá trị độ ẩm đất được đọc từ vi điều khiển là giá trị Analog Vì vây, muốn thuận tiện cho người sử dụng hệ thống đã ánh xạ từ giá trị Analog sang giá trị phần trăm của độ ẩm đất 1và 2 Đọc giá trị digital từ cảm biến mưa Nếu mức 0 có nghĩa là không mưa và mức
1 là có mưa Đọc giá trị thứ, ngày, tháng, năm, giờ phút giây thông qua module thời gian thực RTC Đọc cường độ ánh sáng từ cảm biến cường độ ánh sáng
Hình 4.13: Lưu đồ giải thuật chương trình con đọc cảm biến
4.4.6 Lưu đồ chương trình con ESP gửi dữ liệu lên FireBase
Giải thích lưu đồ chương trình ESP gửi dữ liệu lên Firebase:
Bắt đầu, khi bật hệ thống Qúa trình truyền nhận dữ liệu giữa Arduino và ESP8266 diễn ra
Nếu có chuỗi dữ liệu từ Arduino gửi đến ESP sẽ tiến hành đọc chuỗi dữ liệu đã nhận được
ESP sẽ tiến hành thiết lập kết nối WiFi
Kiểm tra kết nối WiFi Nếu kết nối thành công tiến hành thiết lập
Thiết lập kết nối với FireBase
Kiểm tra kết nối với FireBase
Nếu kết nối thành công sẽ thực hiện quá trình truyền nhận dữ liệu giữa Firebase và ESP8266
Hình 4.14: Lưu đồ chương trình con ESP gửi dữ liệu lên FireBase
LẬP TRÌNH GIAO DIỆN APP VÀ WEB
4.5.1 Lập trình giao diện App Android
Hình 4.15: Lưu đồ lập trình thao tác trên App Android
Giải thích lưu đồ chương trình thao tác trên App: Đầu tiên để có thể thực hiện giám sát và điều khiển qua App, điện thoại cần có kết nối với Internet Sau đó, đăng nhập vào hệ thống bằng Username = “admin” và Password = “admin” Khi đăng nhập thành công, App sẽ hiển thị giao diện trang chủ
Từ đây, người dùng có ba lựa chọn Khi chọn mục giám sát, App sẽ hiển thị các thông số của môi trường Khi chọn mục Manual, App cho phép người dùng chọn chế độ
78 của hệ thống Nếu chọn chế độ Manual, người dùng có thể bật tắt các thiết bị thông qua switch Nếu chọn chế độ Automation, trong mục Automation sẽ có các nút cộng trừ để tăng giảm các thông số giới hạn Các giá trị App được cập nhật, đồng bộ từ cơ sở dữ liệu FireBase
4.5.2 Lập trình giao diện Web
Hình 4.16: Lưu đồ lập trình thao tác trên Web
Giải thích lưu đồ chương trình thao tác trên Web: Đầu tiên để có thể thực hiện giám sát và điều khiển qua Web, thiết bị cần có kết nối với Internet Sau đó, truy cập vào đường link trang web Khi đăng nhập thành công, Web sẽ hiển thị các tùy chọn cho người dùng Mục trang chủ sẽ cung cấp các hình ảnh về nấm bào ngư xám và mô hình hệ thống Khi chọn mục thiết bị, Web sẽ hiển thị trạng thái hoạt động hiện tại của các thiệt bị của hệ thống Khi chọn mục môi trường, Web sẽ hiển thị các thông số của môi trường Khi chọn mục cài đặt, Web sẽ hiển thị giá trị giới hạn của thông số môi trường Các giá trị Web được cập nhật, đồng bộ từ cơ sở dữ liệu FireBase
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ
Trong chương 5 sẽ trình bày về kết quả thu được sau khi thiết kế, lập trình cho toàn hệ thống Từ những kết quả đạt được nhóm đưa ra nhận xét và đánh giá về mức độ hoạt động của hệ thống
5.1 KẾT QUẢ ĐẠT ĐƯỢC VỀ LÝ THUYẾT
Qua quá trình tìm hiểu nghiên cứu và thực hiện đồ án tốt nghiệp, nhóm đã ôn lại các kiến thức đã học về các linh kiện điện tử, nguyên lý hoạt động và quá trình truyền nhận dữ liệu qua các phương thức giao tiếp Thông qua quá trình thực hiện, nhóm đã biết quy trình để hoàn thiện một mô hình, tìm hiểu nguyên nhân và cách giải quyết các vấn đề phát sinh Bên cạnh đó nhóm cũng nhận được nhiều chia sẻ kiến thức hữu ích từ giáo viên hướng dẫn
Về các module, thiết bị phần cứng: Tìm hiểu các thông số kĩ thuật, cách chọn các linh kiện và kết nối giữa các linh kiện Nguyên lý thu thập và truyền dữ liệu của các cảm biến: DHT11, cảm biến độ ẩm đất, cảm biến ánh sáng, module thời gian thực, cảm biến mưa Cách kết nối và điều khiển các thiết bị: quạt, đèn, đèn sưởi, buzzer, bơm, phun sương Cách điều khiển động cơ bước thông qua module L298N
Tìm hiểu về chuẩn truyền dữ liệu giữa các thiết bị phần cứng Biết cách tạo cơ sở dữ liệu, có thể gửi và nhận dữ liệu lên firebase
Về các ứng dụng phần mềm, tìm hiểu về hệ điều hành Android, biết cách tạo một ứng dụng app Android cơ bản dùng ngôn ngữ java Tìm hiểu cấu trúc của một trang web Xây dựng một trang web cơ bản dùng để giám sát Biết cách liên kết gữa cơ sở dữ liệu với App và Web
Về các công cụ hỗ trợ, hiểu và nắm được quy trình cách vẽ sơ đồ nguyên lý và mạch in PCB trên phần mềm Proteus
Sau quá trình thực hiện đề tài, nhóm đã đạt được các kết quả sau:
Hoàn thành thi công mô hình hệ thống bao gồm khung mô hình và hộp điều khiển
Thu thập các thông số từ môi trường với phạm vi trong khu vực mô hình thông qua các cảm biến: nhiệt độ, độ ẩm không khí, độ ẩm đất, cường độ ánh sáng, mưa Đồng thời, hiển thị các thông số trên màn hình HMI
Có hai chế độ được tích hợp trên hệ thống Đối với chế độ Manual, có thể bật tắt các thiết bị trên màn hình cảm ứng Đối với chế độ tự động, có thể cài đặt các giá trị giới hạn cho các thông số môi trường Các thiết bị có thể bật tắt tự động thông qua chế độ Auto
Thiết kế được App và Web có thể điều khiển từ xa
Giám sát các thông số môi trường đo được, trạng thái của các thiết bị thông qua App và Web Có thể lựa chọn chế độ hoạt động, bật tắt các thiết bị hoặc cài đặt các giá trị giới hạn thông qua App
Sau khi thiết kế hoàn chỉnh mô hình hệ thống cũng như lập trình cho hệ thống nhóm đã cho hệ thống hoạt động để kiểm tra và chỉnh sửa lỗi Phần kết quả toàn hệ thống sau khi hoàn thiện được thể hiện bên dưới
5.2.1 Kết quả mô hình hệ thống
Hình 5.1: Hình ảnh thực tế mô hình sau khi thi công
Màn hình HMI UART cảm ứng điện trở 3.5 Inch được gắn ở mặt trước tủ điều khiển hệ thống để hiển thị thời gian thực, các giá trị cảm biến, cài đặt các thông số giới hạn và điều khiển trực tiếp các thiết bị
81 a Giao diện màn hình chính
Khi khởi động hệ thống, màn hình HMI 3.5 Inch sẽ hiển thị màn hình chính gồm logo và tên trường Đại học Sư phạm Kỹ thuật TP Hồ Chí Minh, tên thiết bị, thời gian thực, ba nút chuyển màn hình được thể hiện ở hình 5.2
Hình 5.2: Giao diện màn hình chính b Giao diện màn hình hiển thị giá trị cảm biến
Sau khi chọn nút nhấn sensor trên màn hình chính, giao diện màn hình hiển thị giá trị cảm biến hiện ra
Hình 5.3 thể hiện giao diện màn hình hiển thị giá trị cảm biến từ trên xuống dưới gồm: Nhiet do (nhiệt độ môi trường), Do am dat 1 (độ ẩm đất 1), Do am dat 2 (độ ẩm đất 2), Do am (độ ẩm không khí), Do sang (cường độ ánh sáng), Mua (trạng thái mưa) Ngoài ra, góc trái dưới cùng hiển thị nút nhấn chọn hình mũi tên có tác dụng quay lại màn hình chính
Hình 5.3: Màn hình hiển thị giá trị cảm biến c Giao diện màn hình cài đặt và hiển thị trạng thái của thiết bị
Sau khi chọn nút nhấn control trên màn hình chính, giao diện màn hình cài đặt và hiển thị trạng thái của thiết bị hiện ra
KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ
KẾT QUẢ THỰC NGHIỆM
Giám sát các thông số môi trường đo được, trạng thái của các thiết bị thông qua App và Web Có thể lựa chọn chế độ hoạt động, bật tắt các thiết bị hoặc cài đặt các giá trị giới hạn thông qua App
Sau khi thiết kế hoàn chỉnh mô hình hệ thống cũng như lập trình cho hệ thống nhóm đã cho hệ thống hoạt động để kiểm tra và chỉnh sửa lỗi Phần kết quả toàn hệ thống sau khi hoàn thiện được thể hiện bên dưới
5.2.1 Kết quả mô hình hệ thống
Hình 5.1: Hình ảnh thực tế mô hình sau khi thi công
Màn hình HMI UART cảm ứng điện trở 3.5 Inch được gắn ở mặt trước tủ điều khiển hệ thống để hiển thị thời gian thực, các giá trị cảm biến, cài đặt các thông số giới hạn và điều khiển trực tiếp các thiết bị
81 a Giao diện màn hình chính
Khi khởi động hệ thống, màn hình HMI 3.5 Inch sẽ hiển thị màn hình chính gồm logo và tên trường Đại học Sư phạm Kỹ thuật TP Hồ Chí Minh, tên thiết bị, thời gian thực, ba nút chuyển màn hình được thể hiện ở hình 5.2
Hình 5.2: Giao diện màn hình chính b Giao diện màn hình hiển thị giá trị cảm biến
Sau khi chọn nút nhấn sensor trên màn hình chính, giao diện màn hình hiển thị giá trị cảm biến hiện ra
Hình 5.3 thể hiện giao diện màn hình hiển thị giá trị cảm biến từ trên xuống dưới gồm: Nhiet do (nhiệt độ môi trường), Do am dat 1 (độ ẩm đất 1), Do am dat 2 (độ ẩm đất 2), Do am (độ ẩm không khí), Do sang (cường độ ánh sáng), Mua (trạng thái mưa) Ngoài ra, góc trái dưới cùng hiển thị nút nhấn chọn hình mũi tên có tác dụng quay lại màn hình chính
Hình 5.3: Màn hình hiển thị giá trị cảm biến c Giao diện màn hình cài đặt và hiển thị trạng thái của thiết bị
Sau khi chọn nút nhấn control trên màn hình chính, giao diện màn hình cài đặt và hiển thị trạng thái của thiết bị hiện ra
Hình 5.4 thể hiện giao diện màn hình cài đặt và hiển thị trạng thái của thiết bị từ trên xuống dưới, từ trái qua phải gồm: Auto (chọn chế độ), Den (đèn chiếu sáng), Bom 1 (Bơm nhỏ giọt 1), Bom 2 (Bơm nhỏ giọt 2), Quat (quạt tản nhiệt), Den Suoi (đèn sưởi), Phun Suong (phun sương), Mai che (mái che mưa) Ngoài ra, góc trái dưới cùng hiển thị nút nhấn chọn hình mũi tên có tác dụng quay lại màn hình chính
Hình 5.4: Màn hình cài đặt và hiển thị trạng thái thiết bị d Giao diện màn hình cài đặt và hiển thị giá trị giới hạn
Sau khi chọn nút nhấn setting trên màn hình chính, giao diện màn hình cài đặt và hiển thị giá trị giới hạn hiện ra
Hình 5.5 thể hiện giao diện màn hình cài đặt và hiển thị giá trị giới hạn từ trên xuống dưới gồm: Nhiet do (nhiệt độ môi trường giới hạn trên), Do am dat 1 (độ ẩm đất 1 giới hạn), Do am dat 2 (độ ẩm đất 2 giới hạn), Do am (độ ẩm không khí giới hạn), Anh sang (cường độ ánh sáng giới hạn) Ngoài ra, góc trái dưới cùng hiển thị nút nhấn chọn hình mũi tên có tác dụng quay lại màn hình chính
Hình 5.5: Màn hình cài đặt và hiển thị giá trị giới hạn
5.2.3 Kết quả giao diện Web Ở đề tài này, các dữ liệu của Web được lấy từ cơ sở dữ liệu Firebase và được cập nhật liên tục Yêu cầu của trang web cần phải có kết nối với internet Ở giao diện chính, trang web hiển thị các thông tin có liên quan đến đề tài Trang này sẽ hiển thị các hình ảnh của mô hình, hình ảnh của nấm, thông tin liên lạc và một số hình ảnh về mô hình
Hình 5.6: Giao diện chính trang web
Tiếp đến khi chọn vào mục thiết bị, giao diện điều khiển của Web được thế hiện như hình 5.7 Ở giao diện này hiển thị cho người dùng biết trạng thái hoạt động của các thiết bị Nhóm đã sử dụng hình ảnh động để cung cấp giao diện trực quan và sinh động hơn Nếu thiết bị được bật, ảnh gif sẽ chuyển động tương ứng với mỗi thiết bị cụ thể
Khi chọn mục môi trường, giao diện môi trường sẽ được hiển thị như hình 5.8 Ở giao diện này, người dùng có thể theo dõi dữ liệu được thu thập từ các cảm biến
Dữ liệu này bao gồm các thông số của nhiệt độ, độ ẩm, độ ẩm đất, cường độ ánh sáng
Hình 5.7: Giao diện hiển thị trạng thái thiết bị của Web
Hình 5.8: Giao diện hiển thị giá trị cảm biến của Web
Khi chọn mục cài đặt, giao diện cài đặt sẽ được hiển thị như hình 5.9 Ở giao diện này, người dùng có thể theo dõi các giá trị đã được cài đặt ở phần cứng Các giá trị này là các thông số giới hạn của các thông số môi trường trong chế độ Auto
Hình 5.9: Giao diện cài đặt của Web
5.2.4 Kết quả giao diện trên App Android
Giao diện App được cài đặt, sử dụng trên điện thoại chạy hệ điều hành Android và cần được kết nối mạng internet Tương tự giao diện trên màn hình HMI, trên App cũng hiển thị giao diện giám sát, điều khiển (Manual) và cài đặt (Auto) Các giá trị dữ liệu được cập nhật và đồng bộ từ cơ sở dữ liệu firebase
Hình 5.11 thể hiện giao điện đăng nhập của App Android App cần tên đăng nhập và mật khẩu để có thể truy cập vào hệ thống
Giao diện đầu tiên của hệ thống là trang chủ gồm ba tab như hình 5.12
Hình 5.10: Giao diện đăng nhập của
Hình 5.11: Giao diện trang chủ
Khi người dùng nhấn chọn GIAM SAT (giám sát) trên giao diện trang chủ, Tab giám sát sẽ hiển thị các thông số đo được trong mô hình hệ thống như: nhiệt độ, độ ẩm, cường độ ánh sáng, độ ẩm đất 1, độ ẩm đất 2, cường độ ánh sáng như hình 5.12
Khi người dùng nhấn chọn MANUAL (chế độ điều khiển thiết bị thủ công) trên giao diện trang chủ, Tab Manual sẽ hiển thị cho phép người dùng bật tắt thiết bị bằng cách trượt thanh trạng thái Kéo thanh trạng thái qua phải là “Bật”, thanh trạng thái chuyển sang màu sáng xanh, qua trái là “Tắt”, thanh trạng thái chuyển sang màu xám Hình 5.13 thể hiện giao diện Manual
Khi người dùng nhấn chọn
AUTOMATION (chế độ cài đặt thiết bị tự động) trên giao diện trang chủ, Tab
Automation sẽ hiển thị các giá trị giới hạn và cho phép người dùng điều chỉnh bằng các phím “+”, “-” Ứng với mỗi thông số môi trường sẽ có hai nút nhấn: muốn tăng giá trị thông số cài đặt chọn nút cộng, muốn giảm chọn nút trừ Mỗi lần thực hiện cài đặt các giá trị giới hạn sẽ tăng hoặc giảm một đơn vị
NHẬN XÉT VÀ ĐÁNH GIÁ HỆ THỐNG
Qua quá trình vận hành hệ thống hoạt động, nhóm nhận thấy được mô hình hoạt động đúng như yêu cầu và mục tiêu đặt ra của đề tài:
Về hoạt động phần cứng:
Hệ thống hoạt động ổn định
Các switch trên màn hình có độ nhạy tương đối tốt
Dữ liệu từ các cảm biến tương đối chính xác
Màn hình HMI hiển thị sáng rõ, hình ảnh trực quan sinh động
Thiết bị bơm tưới, bơm phun sương, đèn, đèn sưởi, quạt, động cơ mái che hoạt động tốt
Về hoạt động trên phần mềm:
Giao diện hiển thị App Android và Web đơn giản, dễ quan sát và sử dụng
App và Web đồng bộ hóa với cơ sở dữ liệu phần cứng
Các thông số được cập nhật lên cơ sở dữ liệu firebase liên tục
Tuy nhiên trong quá trình hoạt động vẫn còn tồn tại mốt số hạn chế như:
Hệ thống chưa sử dụng nguồn điện dự phòng Vì vậy, khi mất điện hệ thống sẽ không thể hoạt động Do đó cần phải cung cấp điện một cách liên tục
Khi không có kết nối wifi, App và Web không thực hiện được Để điều khiển App và Web cần phải có wifi liên tục
Khi reset hệ thống hoặc cấp nguồn ban đầu cho hệ thống, hệ thống mất một khoảng thời gian (3s đến 5s) mới có thể hoạt động ổn định
Khi chuyển từ chế độ Auto sang chế độ Manual, cần phải thực hiện thao tác tắt các thiết bị đang hoạt động ở chế độ Auto
App chưa thể đồng bộ với màn hình HMI, khi chuyển trạng thái của các thiết bị trên App Trạng thái switch trên màn hình HMI vẫn chưa thể chuyển đổi đúng định dạng Người dùng cần phải theo dõi trạng thái hoạt động của các thiết bị để có thể điều khiển các thiết bị
Đối với cơ sở dữ liệu firebase do sử dụng tài khoản miễn phí nên đôi lúc thông tin cập nhật bị chậm khoảng 4 đến 5s và còn tùy vào tốc độ mạng Biện pháp khắc phục cần mua tài khoản Webserver để dữ liệu được cập nhật nhanh hơn
Để mô tả rõ hơn hoạt động của sản phẩm nhóm có đính kèm video clip với đường dẫn truy cập sau: https://drive.google.com/drive/folders/1n5mtul8ALcqqI44gzrDvyE_2rMufsH5y
CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Sau khoảng thời gian tìm hiểu nghiên cứu và thực hiện đề tài: “Thiết kế và thi công hệ thống chăm sóc vườn nấm” nhóm đã thực hiện hoàn thành mô hình hệ thống đáp ứng được các mục tiêu đặt ra cụ thể như sau:
Thu thập các thông số từ môi trường của vườn nấm: nhiệt độ, độ ẩm không khí, độ ẩm đất, cường độ ánh sáng
Điều khiển bật hoặc tắt các thiết bị bơm tưới nước, phun sương, đèn, quạt, mái che, thông qua nhiều cách như chạm switch trên màn hình cảm ứng HMI, chạm switch trên giao diện App
Hệ thống còn có chức năng tự động khi cài đặt sẵn các giá trị giới hạn Có thể cài đặt các giá trị giới hạn thông qua màn hình cảm ứng hoặc trên giao diện App
Các thiết bị phần cứng, giao diện App và Website hoạt động tương đối ổn định
Mặc dù mô hình đã hoạt động tương đối ổn định tuy nhiên vẫn còn nhiều thiếu sót và cần được phát triển thêm
Tuy đề tài thực hiện và dừng lại ở mô hình nhỏ nhưng nhóm nhận thấy có thể phát triển một số chức năng:
Hệ thống camera giúp người dùng có thể quan sát được khu vườn ở xa thông qua hình ảnh thực tế từ camera
Sử dụng cảm biến mực nước để thông báo khi xảy ra tình trạng thiếu nước
Xây dựng thêm chế độ hẹn giờ để tự động bật tắt các thiết bị theo lịch trình cài đặt từ người dùng
Trên app, xây dựng chức năng thông báo cho người dùng khi các thông số môi trường vượt quá giới hạn cho phép và thêm chức năng thông báo thời gian sinh trưởng và đưa ra các giải pháp cho người dùng
Trên web, ngoài hiển thị dữ liệu có thể nâng cao chất lượng bằng cách thêm chức năng bật tắt các thiết bị, chọn chế độ hoạt động Ngoài ra, có thể tích hợp thêm biểu đồ đường để hiển thị các thông số trực quan sinh động hơn
Đưa vào sử dụng thực tế ở quy mô lớn hơn mức mô hình
Tiếng Việt (Sách, tạp chí, bảng in…)
Trần Thu Hà (Chủ biên) - Trương Thị Bích Ngà - Nguyễn Thị Lưỡng - Bùi Thị Tuyết Đan - Phù Thị Ngọc Hiếu - Dương Thị Cẩm Tú (2013),
“Giáo trình điện tử cơ bản”, NXB Trường Đại Quốc Gia TP.HCM, 642 trang
[2] TS Nguyễn Minh Tâm - Ths Trần Tùng Giang - Ths Lê Thị Thanh
Hoàng, “Giáo trình mạch điện”, NXB Trường Đại Quốc Gia TP.HCM
[3] Nguyễn Đình Phú, “GIÁO TRÌNH VI XỬ LÝ II”, NXB ĐH Quốc Gia
T G Phát & N T Bão, “Thiết kế và thi công hệ thống giám sát, chăm sóc hoa cảnh ứng dụng IoTs”, Trường ĐH SPKT TP Hồ Chí Minh,
C N Tân & T T Hoàng, “Thiết kế và thi công hệ thống giám sát và chăm sóc vườn trồng rau sạch”, Trường ĐH SPKT TP Hồ Chí Minh,
N T Thảo, “Nghiên cứu trồng nấm bào ngư xám trên cơ chất mạt cưa cao su có bổ sung trùn”, Trường ĐH Kỹ thuật Công nghiệp TP HCM,
2011 https://www.slideshare.net/garmentspace/nghin-cu-trng-nm-bo-ng-xm- trn-c-cht-mt-ca-cao-su-c-b-sung-phn-trn Đường link web tham khảo
ArduinoMega2560(chipAtmega2560): http://ww1.microchip.com/downloads/en/DeviceDoc/ATmega640-
Datasheet ESP8266: https://www.espressif.com/sites/default/files/documentation/0a- esp8266ex_datasheet_en.pdf
Datasheet màn hình HMI UART cảm ứng điện trở 3.5 inch: https://nextion.tech/datasheets/nx4832t035/
Datasheet DHT11: https://pdf1.alldatasheet.com/datasheet- pdf/view/1440068/ETC/DHT11.html
Cảm biến độ ẩm đất FC-28: https://circuitdigest.com/microcontroller-projects/interfacing-soil- moisture-sensor-with-arduino-uno
Datasheet cảm biến ánh sáng BH1750: https://components101.com/sensors/bh1750-ambient-light-sensor
Cảm biến mưa: https://circuitdigest.com/microcontroller-projects/interfacing-rain- sensor-with-arduino
Datasheet DS1307: https://datasheets.maximintegrated.com/en/ds/DS1307.pdf
Datasheet L298: https://www.sparkfun.com/datasheets/Robotics/L298_H_Bridge.pdf
Module L298N: https://www.electroduino.com/introduction-to-l298n-motor-driver- how-its-work/
[17] Động cơ bước: https://minhmotor.com/dong-co-buoc.html
Module LM2596: https://nshopvn.com/product/mach-giam-ap-dc-lm2596-3a/ https://www.ti.com/lit/ds/symlink/lm2596.pdf
Module Relay: https://www.elprocus.com/5v-relay-module/
[20] Bơm chìm mini: https://caka.vn/ban-may-bom-mini-dc-5v-gia-re-tai-tphcm
Chuẩn giao tiếp 1-Wire: https://www.engineersgarage.com/what-is-the-1-wire-protocol/
Giao tiếp UART: https://www.circuitbasics.com/basics-uart-communication/ https://kysungheo.com/chuan-giao-tiep-uart/ https://developer.electricimp.com/resources/uart
Chuẩn giao tiếp I2C: https://www.circuitbasics.com/basics-of-the-i2c-communication- protocol/
92 https://dientutuonglai.com/chuan-giao-tiep-i2c-la-gi.html
Chuẩn giao tiếp Wifi: https://www.tp-link.com/vn/blog/1078/chuan-wifi-moi-nhat-hien-nay- la-gi-tim-hieu-chi-tiet-ve-chuan-wifi-802-11-ax/
Ngôn ngữ lập trình Websize
- HTML: https://www.hostinger.com/tutorials/what-is- html#Pros_and_Cons_of_HTML
- JavaScripts: https://www.hostinger.com/tutorials/what-is- javascript#What_Is_JavaScript
- CCS: https://www.tutorialspoint.com/css/what_is_css.htm https://www.hostinger.com/tutorials/what-is-css
Tổng quan FireBase: https://coder.com.vn/tim-hieu-ve-firebase/
Tổng quan về hệ điều hành Android: https://www.elprocus.com/what-is-android-introduction-features- applications/
Nghiên cứu về nấm bào ngư: http://tvugate.tvu.edu.vn/jspui/bitstream/TVU_123456789/824/1/TOM TAT%20dakl%20Nguyen%20Thi%20Truc%20Duyen.pdf https://tamsach.vn/ky-thuat-trong-va-cham-soc-nam-bao- ngu/#3_Thiet_ke_nha_trong_nam_va_cham_soc_bao_ngu
Tìm hiểu về App Android Studio: https://www.admecindia.co.in/miscellaneous/top-10-features-android- studio-developers-not-miss/
TÀI LIỆU HƯỚNG DẪN, THAO TÁC SỬ DỤNG Để hệ thống hoạt động, cần cấp nguồn điện xoay chiều 220V cho đầu vào nguồn tổ ong 12V/10A để cung cấp nguồn cho các thiết bị hoạt động Sau khi cấp nguồn và mở công tắc thì đèn báo hiệu sẽ sáng tức mạch đã hoạt động
Sau đó đợi khoảng 3s để các giá trị cảm biến đọc và cập nhật lên màn hình hiển thị Người dùng có thể điều khiển giám sát trực tiếp trên màn hình cảm ứng HMI Khi ESP8266 kết nối với wifi, người dùng có thể truy cập vào web hoặc app được xây dựng trên điện thoại (các thiết bị web và app cần được kết nối mạng internet) Trên giao diện web và app, người sử dụng có thể giám sát và điều khiển thiết bị hoặc cài đặt giá trị giới hạn cho các cảm biến
Thao tác trực tiếp trên màn hình HMI:
Khi bật nguồn hệ thống sẽ hoạt động ở chế độ thủ công, giao diện màn hình sẽ hiển thị giống hình PL1.1 Giao diện này hiển thị logo và tên trường Đại học Sư phạm Kỹ thuật TP Hồ Chí Minh, tên thiết bị, thời gian thực, ba nút chuyển màn hình sensor (hiển thị giá trị cảm biến), control (cài đặt và hiển thị trạng thái của thiết bị), setting (cài đặt và hiển thị giá trị giới hạn)
Hình PL1.1: Giao diện màn hình sau khi cấp nguồn Để chuyển sang giao diện thứ 2, tại giao diện màn hình chính ta ấn phím sensor Màn hình sẽ hiển thị như hình PL1.2 Khi ở giao diện màn hình hiển thị giá trị cảm biến, các thông số môi trường hiển thị giúp người dùng giám sát có thể theo dõi được các thông số môi trường
Hình PL1.2: Giao diện màn hình hiển thị giá trị cảm biến
94 Để chuyển sang giao diện thứ 3, tại giao diện màn hình chính ta ấn phím control Màn hình sẽ hiển thị như hình PL1.3 Khi ở giao diện màn hình cài đặt và hiển thị trạng thái của thiết bị, người dùng có thể chọn chế độ hoạt động cho hệ thống và bật tắt các thiết bị
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
HƯỚNG PHÁT TRIỂN
Tuy đề tài thực hiện và dừng lại ở mô hình nhỏ nhưng nhóm nhận thấy có thể phát triển một số chức năng:
Hệ thống camera giúp người dùng có thể quan sát được khu vườn ở xa thông qua hình ảnh thực tế từ camera
Sử dụng cảm biến mực nước để thông báo khi xảy ra tình trạng thiếu nước
Xây dựng thêm chế độ hẹn giờ để tự động bật tắt các thiết bị theo lịch trình cài đặt từ người dùng
Trên app, xây dựng chức năng thông báo cho người dùng khi các thông số môi trường vượt quá giới hạn cho phép và thêm chức năng thông báo thời gian sinh trưởng và đưa ra các giải pháp cho người dùng
Trên web, ngoài hiển thị dữ liệu có thể nâng cao chất lượng bằng cách thêm chức năng bật tắt các thiết bị, chọn chế độ hoạt động Ngoài ra, có thể tích hợp thêm biểu đồ đường để hiển thị các thông số trực quan sinh động hơn
Đưa vào sử dụng thực tế ở quy mô lớn hơn mức mô hình