BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI Khoa Cơ khí BÁO CÁO ĐỒ ÁN MÔN HỌC CƠ ĐIỆN TỬ Đề tài Nghiên cứu và thiết kế hệ thống vườn thông minh Giáo viên hướng dẫn Ths Trần Anh Sơn Sinh viên thực.
GIỚI THIỆU CHUNG
Tổng quan về hệ thống vườn thông minh
Rau xanh là thực phẩm thiết yếu, cung cấp vitamin và khoáng chất, góp phần cân bằng dinh dưỡng hàng ngày Tại Việt Nam, ô nhiễm môi trường và an toàn thực phẩm đang là vấn đề cấp bách Nguyên nhân chủ yếu là do lạm dụng hóa chất độc hại, thuốc bảo vệ thực vật và nguồn nước, đất ô nhiễm trong sản xuất rau Người tiêu dùng hiện nay thường tiêu thụ sản phẩm nông nghiệp như rau xanh và hoa quả mà không rõ nguồn gốc, dẫn đến những lo ngại về sức khỏe.
Theo thống kê, mỗi năm Việt Nam ghi nhận hơn 170 vụ ngộ độc thực phẩm, ảnh hưởng đến gần 5.000 người Tình hình an toàn thực phẩm trong nông nghiệp đang trở nên phức tạp, khiến người tiêu dùng, bao gồm cả những người làm trong lĩnh vực quản lý an toàn thực phẩm, khó có thể xác định nguồn gốc và chất lượng của thực phẩm, đặc biệt là rau củ.
Thực trạng sử dụng thuốc trừ sâu độc hại đang gây lo ngại về an toàn sức khỏe Việc thiếu thông tin về quy trình kiểm soát an toàn thực phẩm từ trồng trọt, thu hoạch, chế biến đến bảo quản và bán hàng là một vấn đề nghiêm trọng cần được quan tâm.
Số liệu thống kê từ UBND Thành phố Hà Nội cho thấy, đến tháng 10/2019,
Hà Nội hiện chỉ có khoảng 5.000 ha rau an toàn, đáp ứng 30% nhu cầu thực phẩm của người dân Người dân tại các thành phố lớn như Hà Nội và TP HCM đang lo ngại về thực phẩm bẩn Diễn đàn trực tuyến Vườn Rau Xanh đã chứng kiến sự gia tăng thành viên đáng kể, từ hơn 2.000 người vào năm 2015 lên gần 19.000 thành viên hiện nay Đối tượng tham gia chủ yếu là người dân thành thị, tìm đến việc trồng rau xanh vì nhiều lý do khác nhau.
Hình 1.2: Thực trạng thực phẩm bẩn gây ung thư
Nhóm đã phát triển hệ thống vườn thông minh tự động với khả năng điều chỉnh độ ẩm, nhiệt độ và ánh sáng theo tiêu chuẩn cây trồng Phương thức chăm bón hoàn toàn tự động và có thể điều khiển từ xa, giúp giảm thiểu sâu bệnh và tiết kiệm thời gian, công sức cho người trồng Đặc biệt, việc không sử dụng hóa chất nông nghiệp đảm bảo rau an toàn cho người tiêu dùng, phù hợp với cư dân đô thị, những người muốn trồng rau sạch nhưng không có nhiều thời gian.
Mặc dù công nghệ nhà thông minh đã trở nên phổ biến trong nhiều hộ gia đình, nhưng tự động hóa khu vườn vẫn chưa được áp dụng rộng rãi Nhiều người làm vườn vẫn phải sử dụng máy cắt cỏ truyền thống và dành nhiều thời gian cho việc tưới cây Tuy nhiên, với vườn thông minh, các thiết bị như đèn chiếu sáng, máy cắt cỏ và hệ thống tưới tiêu được kết nối bằng công nghệ hiện đại, cho phép chúng hoạt động một cách đồng bộ và hiệu quả.
Hình 1.3: Lợi ích từ vườn thông minh
Bằng cách sử dụng thiết bị tự động, các công việc như cắt cỏ và tưới nước trở nên dễ dàng hơn bao giờ hết Bạn chỉ cần thiết lập thiết bị theo yêu cầu, và có thể dễ dàng quản lý các hoạt động định kỳ thông qua ứng dụng Điều này giúp nâng cao hiệu quả trong công việc làm vườn.
Mục tiêu đề tài
Xây dựng hệ thống vườn thông minh giúp người dùng dễ dàng kiểm soát và điều chỉnh các yếu tố môi trường trong vườn một cách tự động Hệ thống này không chỉ nâng cao hiệu quả chăm sóc cây trồng mà còn mang lại sự tiện lợi cho người sử dụng Các ứng dụng của hệ thống này sẽ bao gồm việc giám sát độ ẩm, ánh sáng và nhiệt độ, từ đó tối ưu hóa điều kiện phát triển cho cây trồng.
- Nhận dữ liệu bật tắt các công tắc (switch), đồng thời gửi giá trị trạng thái bật tắt hiện tại của nó lên websever.
- Đọc các giá trị nhiệt độ, độ ẩm và gửi lên websever và hiển thị gia trị trên web, mobile app để người dùng dễ dàng theo dõi.
- Tự động bât tắt các công tắc dựa trên giá trị cảm biến.
- Cho phép 3 cơ chế điều khiển: bật tắt bằng tay (ON/OFF); bật tắt thông qua web và mobile app; bật tắt tự động theo giá trị đặt sẵn
Phương pháp nghiên cứu
Kiểm tra hoạt động của các cảm biến bằng Firebase Thông qua đó tích lũy những kinh nghiệm quý báu cho việc thiết kế, lập trình cho hệ thống.
Xây dựng từng phần của các module phần cứng kết hợp với các phương pháp mô phỏng Đánh giá tính khả thi và điều chỉnh các chỉ tiêu hệ thống nhằm nâng cao chất lượng và giảm thiểu nhiễu tối đa.
Dựa trên các kỹ thuật đo thử, việc kiểm tra và đánh giá nên được thực hiện ở cuối mỗi quá trình để giảm thiểu rủi ro và tiết kiệm thời gian cũng như chi phí.
Phạm vi nghiên cứu
Phạm vi của đề tài gồm:
Ứng dụng điện thoại chạy hệ điều hành Android và IOS
Dữ liệu của các cảm biến được hiển thị trên LCD và trên App Android
App Android khi có kết nối mạng mới có thể điều khiển được hệ thống
Hệ thống hoạt động với ba chế độ: tự động, thủ công và theo thời gian Chế độ thủ công cho phép người dùng điều khiển dễ dàng thông qua nút nhấn trên bảng điều khiển hoặc qua ứng dụng Android.
CƠ SỞ LÝ THUYẾT
Các yêu cầu đối với hệ thống vườn thông minh
2.1.1 Các yêu cầu đối với hệ thống vườn thông minh
- Nhà kính có kết cấu vững chắc, chịu được các yếu tố bất lợi của môi trường.
- Các cơ cấu chấp hành hoạt động ổn định, hợp lí, tránh lãng phí điện năng và tài nguyên.
- Bộ điều khiển, cảm biến có thể hoạt động ổn định liên tục, dễ dàng tìm kiếm và thay thế.
- Thích ứng được với nhiều loại cảm biến và được sử dụng rộng rãi.
- Hệ thống có giao diện hợp lý, bắt mắt và dễ dàng thao tác với người sử dụng.
2.1.2 Nguyên lý hoạt động của hệ thống
Mô hình vườn thông minh IoT sử dụng module WiFi ESP32 kết hợp với các cảm biến độ ẩm và nhiệt độ, cho phép người dùng theo dõi tình trạng môi trường một cách dễ dàng Người dùng có thể điều khiển thiết bị thông qua smartphone, thiết lập mức nhiệt độ và độ ẩm để tự động bật tắt thiết bị, từ đó đưa ra những giải pháp điều khiển phù hợp.
Cảm biến nhiệt độ và độ ẩm thu thập thông tin từ khu vườn và truyền dữ liệu đến Module ESP32 để hiển thị giá trị nhiệt độ và độ ẩm trên màn hình Đồng thời, các giá trị này cũng được gửi lên máy chủ để lưu trữ và phân tích.
Dữ liệu được gửi lên máy chủ để xử lý trước khi truyền đến điện thoại thông minh qua Internet Khi điện thoại gửi lệnh điều khiển, lệnh này sẽ được gửi lên máy chủ để điều khiển thiết bị phần cứng Việc điều khiển các cơ cấu chấp hành dựa vào giá trị cài đặt tương ứng với từng loại cây trồng, sử dụng thông số nhiệt độ và độ ẩm để quyết định kích hoạt relay, đồng thời hiển thị thông số trên màn hình LCD và lưu trữ trên máy tính Khi độ ẩm giảm dưới mức cài đặt hoặc nhiệt độ vượt quá ngưỡng cho phép, các cơ cấu chấp hành sẽ tự động hoạt động để tăng độ ẩm và giảm nhiệt độ về mức tối ưu.
Phần cơ khí
2.2.1 Vật liệu dựng nhà kính a) Khung nhà kính.
Khung nhà kính được chế tạo từ ống thép mạ kẽm, mang lại độ bền cao và chi phí hợp lý Với kết cấu chắc chắn, khung kim loại này có khả năng chống chịu tốt trước các yếu tố thời tiết và môi trường, hạn chế tình trạng rỉ sét Hơn nữa, các ống sắt có thể được gia công thành những thiết kế nhà kính đẹp mắt, cho phép sử dụng lâu dài mà không cần bảo trì.
Hình 2.1: Khung nhà kính thực tế
Các ống sắt làm khung được liên kết bằng ốc vít và bu lông, mang lại độ chắc chắn cao hơn so với phương pháp hàn và đảm bảo khả năng chống gỉ sét Khung nhà kính đóng vai trò quan trọng trong việc nâng đỡ toàn bộ trọng lượng của nhà kính, đồng thời chịu đựng các tác động liên tục từ thời tiết như nắng, mưa, gió và bão.
Hệ thống khung nhà kính đóng vai trò quan trọng, ảnh hưởng đến toàn bộ cấu trúc của nhà kính Việc lựa chọn vật liệu phù hợp cho khung là cần thiết, và trong quá trình lắp đặt, cần chú ý đến việc chôn cọc và cố định chắc chắn để đảm bảo khả năng chịu đựng gió mạnh trong nhiều năm.
Ngoài việc sử dụng khung sắt để định hình và tăng cường độ bền cho nhà kính, lớp kính bao bên ngoài cũng đóng vai trò quan trọng trong việc tạo thành tường và mái nhà Hiện nay, có ba loại vật liệu phổ biến được sử dụng cho mục đích này.
Kính thủy tinh là vật liệu truyền thống được ưa chuộng nhờ khả năng truyền sáng tốt và giữ nhiệt hiệu quả vào ban đêm, giúp tiết kiệm chi phí sưởi ấm cho nhà kính Mặc dù chi phí đầu tư ban đầu có thể cao, nhưng kính thủy tinh ít khi cần bảo trì, mang lại lợi ích tiết kiệm chi phí lâu dài.
Tấm nhựa hiện đang được sử dụng phổ biến với ba loại chính là nhựa PC, sợi thủy tinh và acrylic Nhựa PC, hay polycarbonate, nổi bật với độ bền cao, khả năng giữ nhiệt và ngăn tia UV hiệu quả, đồng thời có giá thành hợp lý và dễ thi công Sợi thủy tinh có ưu điểm về khả năng truyền ánh sáng nhưng lại dễ gãy vỡ và dễ cháy, do đó ít được ưa chuộng Acrylic, với cấu trúc hai lớp gồm acrylic màu vàng và polycarbonate trong suốt, mang lại khả năng truyền nhiệt và ánh sáng tốt nhất, đồng thời có tuổi thọ sử dụng trên 10 năm.
Màng nhựa là một trong những vật liệu phổ biến nhất hiện nay nhờ vào giá thành hợp lý và hiệu suất sử dụng cao Chất liệu của màng nhựa thường được sản xuất từ Ethyl vinyl acetate, Polyvinyl clorua và Polyethylene.
Màng nhựa PE là vật liệu phổ biến nhất trong nông nghiệp, được sản xuất từ hạt nhựa PE nguyên sinh cao cấp, mang lại độ dẻo dai và bền bỉ vượt trội Với màu trắng trong, màng PE cho phép ánh sáng xuyên qua tốt, cung cấp đủ lượng ánh sáng cần thiết cho quá trình quang hợp của cây trồng Ngoài ra, lớp phủ UV trên bề mặt màng giúp ngăn chặn các tia UV có hại, bảo vệ cây trồng khỏi hiện tượng cháy nắng trong những ngày nắng gắt.
Màng PE nhà kính có trọng lượng nhẹ, giúp việc vận chuyển và lắp đặt trở nên dễ dàng Tuy nhiên, để đảm bảo không gây hư hỏng và kéo dài tuổi thọ sử dụng của vật liệu, việc lắp đặt cần phải tuân thủ đúng kỹ thuật Ngoài ra, cần chú ý đến các vật tư phụ đi kèm.
Nẹp chặn zíc-zắc là hai phụ kiện tách rời, khi lắp đặt sẽ kết nối với nhau để tạo thành khung cố định cho các mép của màng nhà kính một cách chắc chắn Với chiều rộng khoảng 2.5cm, độ dày 0.5mm và chiều dài 2m, thanh nẹp được chế tạo từ thép mạ kẽm chống gỉ Hai đầu của thanh nẹp được uốn cong để tạo điểm tựa cho việc gài cây zíc-zắc vào.
Máng xối là thanh kim loại hình chữ U hoặc tròn, được lắp đặt ở phần trũng và mép nhà kính để thu nước mưa, giúp ngăn ngừa tình trạng đọng nước và tăng cường khả năng chịu lực cho nhà kính Nguyên lý hoạt động của máng xối nhà kính tương tự như máng xối mái nhà nhưng có kích thước nhỏ hơn Thường được làm từ thép không gỉ, phụ kiện này có khả năng chống lại gỉ sét và ăn mòn, đảm bảo độ bền lâu dài cho công trình.
Cùm khóa được chế tạo từ thép chống gỉ với hình dạng tròn, có hai đầu khoan lỗ để lắp bù lông cố định Kích thước của cùm khóa có thể nhỏ vừa hoặc lớn hơn các ống khung sắt, giúp lắp đặt dễ dàng Hai loại cùm nhà kính phổ biến hiện nay là cùm một lỗ và cùm hai lỗ.
2.2.2 Các kích thước yêu cầu
Chiều cao hông nhà tối thiểu: 3 m.
Chiều cao đến đỉnh tối thiểu: 4.5 m.
Từ mặt đất lên 1m quây bằng màng nilon để tránh côn trùng và nước bắn vào khi mưa
Từ 1m trở lên đến 3 m quây bằng lưới thưa, để thoáng gió và hạn chế tác hại của mưa tạt vào
Từ 3m đến hết chiều cao hông quây bằng màng nilon để tránh mưa tạt xéo.
Phần điện
2.3.1 Bộ điều khiển a) Bộ xử lý trung tâm Đối với các dự án, sản phẩm yêu cầu điều khiển và theo dõi thông qua Internet, hệ thống phải có khả năng kết nối được vào mạng Internet Vì vậy nếu sử dụng các bộ vi điều khiển như Arduino UNO, Arduino MEGA… ta cần phải kết nối thêm module Wifi để có thể truy cập Internet Tuy nhiên, NODEMCU ESP32 có thể giải quyết vấn đề này khi vừa có thể điều khiển hệ thống, vừa có thể kết nối sóng Wifi.
ESP32 là một vi mạch tích hợp Wi-Fi và Bluetooth 2,4 GHz, được sản xuất bằng công nghệ 40 nm tiết kiệm năng lượng của TSMC Chip này mang lại hiệu suất và công suất RF tối ưu, thể hiện sự mạnh mẽ, linh hoạt và độ tin cậy cao trong nhiều ứng dụng và điều kiện nguồn điện khác nhau.
ESP32 là một vi xử lý lý tưởng cho các ứng dụng di động, thiết bị điện tử đeo và Internet vạn vật (IoT), với các tính năng hiện đại như định vị xung nhịp chi tiết, nhiều chế độ năng lượng và khả năng chia tỷ lệ năng lượng động Trong các ứng dụng trung tâm cảm biến IoT công suất thấp, ESP32 được thiết kế để chỉ được đánh thức khi có điều kiện cụ thể, giúp giảm thiểu tiêu thụ năng lượng Ngoài ra, đầu ra của bộ khuếch đại công suất có thể điều chỉnh, tạo ra sự cân bằng tối ưu giữa phạm vi giao tiếp, tốc độ dữ liệu và mức tiêu thụ điện năng.
ESP32 là một giải pháp tích hợp cao cho các ứng dụng IoT, hỗ trợ cả Wi-Fi và Bluetooth Nó chỉ cần khoảng 20 thành phần bên ngoài, bao gồm một công tắc ăng-ten, RF balun, bộ khuếch đại công suất, bộ khuếch đại nhận tiếng ồn thấp, bộ lọc và mô-đun quản lý điện năng.
ESP32 có thể hoạt động độc lập hoặc như thiết bị phụ cho MCU chủ, giúp tiết kiệm chi phí giao tiếp Nó cung cấp chức năng Wi-Fi và Bluetooth qua các giao diện SPI/SDIO hoặc I2C/UART, cho phép giao tiếp hiệu quả với các hệ thống khác.
Bảng 2.1: Bảng thông số cơ bản ESP32
CPU Xtensa Dual-Core LX6 microprocessor
Bluetooth v4.2 BR/EDR and BLE Điện áp hoạt động: 2.2-3.6V Điện áp đầu vào: 5V
Hình 2.4: Sơ dồ chân ESP32 b) Relay
Relay, hay còn gọi là rơ-le, là một công tắc điện từ hoạt động bằng dòng điện nhỏ để điều khiển dòng điện lớn hơn Nó được cấu tạo từ một nam châm điện và hệ thống tiếp điểm đóng cắt, thiết kế module hóa giúp dễ dàng lắp đặt.
Rơ le điện từ hoạt động dựa trên lực hút điện từ, khi mạch rơ le phát hiện dòng sự cố, nó sẽ kích hoạt trường điện từ, tạo ra từ trường tạm thời Từ trường này tác động lên phần ứng của rơ le, giúp mở hoặc đóng các kết nối.
Hình 2.6: Nguyên lý hoạt động Relay
2.3.2 Cảm biến a) Cảm biến nhiệt độ
Nhiệt độ ảnh hưởng đến mọi sự sống và các hệ thống vật lý, hóa học, theo nhiều nghiên cứu khoa học Do tầm quan trọng của nó, nhiệt độ trở thành đại lượng được đo nhiều nhất trên thế giới Việc đo nhiệt độ giúp cung cấp thông số chính xác về môi trường, từ đó có biện pháp điều chỉnh phù hợp Có nhiều phương pháp và thiết bị khác nhau để đo nhiệt độ, trong đó cảm biến nhiệt là một trong những công cụ phổ biến.
Hình 2.7: Cảm biến nhiệt độ
Cảm biến nhiệt là thiết bị dùng để đo lường sự biến đổi nhiệt độ của các đại lượng cần theo dõi Khi nhiệt độ thay đổi, cảm biến sẽ phát ra tín hiệu, và từ tín hiệu này, các bộ đọc sẽ chuyển đổi thành giá trị nhiệt độ cụ thể.
Cảm biến đo nhiệt độ có cấu tạo chính là 2 dây kim loại khác nhau được gắn vào đầu nóng và đầu lạnh.
Ngoài ra, nó còn được cấu tạo bởi nhiều bộ phận khác, cụ thể như sau:
Bộ phận cảm biến là phần quan trọng nhất, quyết định độ chính xác của toàn bộ thiết bị Nó được lắp đặt bên trong vỏ bảo vệ sau khi đã kết nối với đầu nối.
Dây kết nối: các bộ phận cảm biến có thể được kết nổi bằng 2,3 hoặc
4 dây kết nổi Trong đó, vật liệu dây sẽ phụ thuộc hoàn toàn vào điều kiện sử dụng đầu đo.
Hình 2.8: Cấu tạo cảm biến nhiệt
Chất cách điện gốm đóng vai trò quan trọng trong việc ngăn ngừa đoản mạch và đảm bảo cách điện hiệu quả giữa các dây kết nối và vỏ bảo vệ.
Phụ chất làm đầy, bao gồm bột alumina mịn đã được sấy khô và rung, có vai trò quan trọng trong việc lấp đầy các khoảng trống, nhằm bảo vệ cảm biến khỏi những rung động.
Vỏ bảo vệ là bộ phận thiết yếu dùng để bảo vệ cảm biến và dây kết nối, đảm bảo an toàn và hiệu quả hoạt động Vật liệu làm vỏ cần phải phù hợp với kích thước của thiết bị, và trong trường hợp cần thiết, có thể sử dụng thêm lớp bọc bổ sung để tăng cường độ bảo vệ.
Đầu kết nối: Bộ phận này được làm bằng vật liệu cách điện (gốm), chứa các bảng mạch, cho phép kết nối của điện trở.
Cảm biến nhiệt hoạt động dưa trên cơ sở là sự thay đổi điện trở của kim loại so với sự thay đổi nhiệt độ vượt trội.
Khi có sự chênh lệch nhiệt độ giữa đầu nóng và đầu lạnh, một sức điện động V sẽ được phát sinh tại đầu lạnh Nhiệt độ ở đầu lạnh cần phải ổn định và có thể đo được, đồng thời phụ thuộc vào chất liệu của cặp nhiệt Điều này dẫn đến sự xuất hiện của các loại cặp nhiệt độ khác nhau như E, J, K, R, S, và T, mỗi loại tạo ra một sức điện động riêng biệt Bên cạnh đó, cảm biến độ ẩm đất cũng là một thiết bị quan trọng trong việc đo lường và kiểm soát độ ẩm trong môi trường đất.
Cảm biến đo độ ẩm là thiết bị quan trọng dùng để xác định độ ẩm của không khí hoặc đất Chúng được ứng dụng rộng rãi trong nhiều lĩnh vực và có thể lắp đặt cho nhiều ứng dụng khác nhau, góp phần nâng cao hiệu quả trong việc quản lý và kiểm soát độ ẩm.
Hình 2.9: Cảm biến đo độ ẩm
Phần mềm
Firebase là nền tảng của Google hỗ trợ phát triển ứng dụng di động và web Với nhiều công cụ và dịch vụ hữu ích, Firebase giúp nâng cao chất lượng ứng dụng, rút ngắn thời gian phát triển và đưa sản phẩm đến tay người dùng nhanh chóng.
Firebase là một nền tảng đám mây mạnh mẽ do Google cung cấp, mang đến cho người dùng các dịch vụ cơ sở dữ liệu hiệu quả Nó bao gồm nhiều công cụ hữu ích cho các nhà phát triển, giúp họ xây dựng và mở rộng ứng dụng theo nhu cầu của mình.
Firebase nhằm mục đích giải quyết ba vấn đề chính cho các nhà phát triển:
Xây dựng một ứng dụng, nhanh chóng
Tự tin phát hành và giám sát ứng dụng
Firebase là một nền tảng đa năng, nó cung cấp rất nhiều dịch vụ khác nhau cho người dùng Các trường hợp sử dụng Firebase khá rộng điển hình:
Ứng dụng thời gian thực
Ứng dụng trò chuyện và nhắn tin
Tối ưu hóa quảng cáo dựa trên hành vi của người dùng
Nền tảng Firebase không phải là sự lựa chọn ngẫu nhiên, mà được sử dụng rộng rãi nhờ vào nhiều ưu điểm nổi bật của nó.
Sử dụng dễ dàng: Những người dùng có thể đăng ký một tài khoản
Firebase cho phép người dùng đăng nhập qua tài khoản Google, giúp đơn giản hóa quá trình phát triển ứng dụng Nền tảng này hỗ trợ cộng tác hiệu quả, mang lại trải nghiệm dễ dàng cho các nhà phát triển.
Firebase giúp tăng tốc độ phát triển ứng dụng một cách nhanh chóng, cho phép lập trình viên tiết kiệm thời gian trong quá trình phát triển và tiếp thị sản phẩm của mình.
Firebase cung cấp đa dạng dịch vụ hỗ trợ phát triển trang web, cho phép người dùng lựa chọn giữa hai loại cơ sở dữ liệu: Firestore và Realtime, phù hợp với nhu cầu của họ.
Google Firebase là nền tảng phát triển ứng dụng mà Google đã mua lại, tích hợp vào hệ sinh thái của mình Với Firebase, người dùng có thể tận dụng tối đa sức mạnh và các dịch vụ phong phú mà Google cung cấp.
Firebase giúp lập trình viên chú trọng hơn vào việc phát triển giao diện người dùng nhờ vào kho Backend mẫu đa dạng, hỗ trợ tối ưu hóa trải nghiệm người dùng.
Firebase app không có máy chủ: Chính điều này sẽ giúp cho
Firebase có được khả năng tối ưu hóa nhất về hiệu suất làm việc nhờ vào việc mở rộng cụm database.
Học máy: Ứng dụng Firebase sẽ cung cấp học máy cho các lập trình viên để hỗ trợ tốt nhất cho việc phát triển ứng dụng
Firebase App hỗ trợ tạo lập các chỉ mục, giúp nâng cao thứ hạng của ứng dụng trên bảng xếp hạng của Google, từ đó tăng cường lưu lượng truy cập.
Hình 2.17: Ưu điểm của Firebase
Các đặc điểm vượt trội được đánh giá cao
Theo dõi lỗi là một công cụ phát triển và khắc phục lỗi hiệu quả, giúp người dùng yên tâm hơn khi sử dụng, vì không lo bỏ sót lỗi nào.
Chức năng sao lưu của Firebase cho phép người dùng thực hiện sao lưu dữ liệu một cách thường xuyên, đảm bảo tính sẵn có tối ưu Đồng thời, tính năng này cũng bảo vệ thông tin và dữ liệu một cách an toàn nhất, giúp người dùng yên tâm về tính bảo mật.
Bên cạnh những ưu điểm nổi bật thì Firebase cũng còn tồn tại một số nhược điểm nhất định:
Firebase không phải là mã nguồn mở, điều này khiến nó trở thành một lựa chọn không tối ưu cho nhiều nhà phát triển Người dùng không có khả năng sửa đổi mã nguồn của Firebase, điều này hạn chế tính linh hoạt trong việc tùy chỉnh ứng dụng.
Việc người dùng không truy cập được mã nguồn là một thách thức lớn, đặc biệt đối với các ứng dụng quy mô lớn Khi muốn chuyển đổi sang các nhà cung cấp khác, toàn bộ hệ thống Backend sẽ cần phải được thiết kế lại từ đầu, điều này không hề đơn giản.
Hình 2.18: Người dùng không có quyền truy cập mã nguồn
Nền tảng không hoạt động nhiều quốc gia: Firebase chính là một
Subdomain của Google.Trang web chính thức của Firebase hiện tại đang bị chặn ở nhiều quốc gia trên thế giới, trong đó có cả Trung Quốc
Firebase chỉ hỗ trợ cơ sở dữ liệu NoSQL, điều này có thể gây khó khăn cho người dùng trong việc xử lý dữ liệu nhanh chóng Với việc sử dụng chủ yếu định dạng JSON và hạn chế SQL, việc chuyển đổi từ cơ sở dữ liệu khác sang Firebase sẽ gặp nhiều trở ngại.
Firebase hoàn toàn tích hợp với Google Cloud, điều này có nghĩa là toàn bộ hạ tầng ứng dụng chỉ hoạt động trên nền tảng của Google Người dùng không có khả năng triển khai ứng dụng trên các nhà cung cấp dịch vụ đám mây khác.
TÍNH TOÁN THIẾT KẾ VƯỜN THÔNG MINH
Tính toán thiết kế nhà kính
Chọn các vật liệu xây dựng nhà kính:
Ống thép mạ kẽm được lựa chọn làm khung cho nhà kính vì tính chắc chắn, giúp nâng đỡ toàn bộ sức nặng và chống chịu được các yếu tố như bão, gió Ngoài ra, ống thép mạ kẽm còn có khả năng chống gỉ, phù hợp với môi trường nóng ẩm, đảm bảo độ bền lâu dài cho cấu trúc nhà kính.
Hình 3.30: Ống thép mạ kẽm
Màng nhựa PE là lựa chọn lý tưởng cho việc phủ nhà kính nhờ vào độ bền và tính dai khi tiếp xúc với nắng, gió Với khối lượng nhẹ, màng PE có độ dày 200 micromet và thời gian sử dụng lên đến hơn 3 năm, đảm bảo hiệu quả trong việc bảo vệ cây trồng.
Các kích thước của khung nhà kính:
Khoảng cách giữa các vì kèo: 4.5m
Hình 3.32: Mô hình nhà kính 3D
Tính chọn các cơ cấu chấp hành
Với diện tích trồng 18x8m, có thể bố trí 13 hàng cây, mỗi hàng cách nhau 60cm Trong mỗi hàng dài 18m, khoảng cách giữa các cây là 40cm, cho phép trồng 45 cây trong mỗi hàng Mỗi cây được tưới bằng béc tưới nhỏ giọt bù áp với lưu lượng 6 lít/giờ.
Qua đó tính được hệ thống cần lưu lượng nước tối thiểu là:
Trong đó: V là lưu lượng nước tối thiểu của máy bơm
L là lưu lượng nước mỗi béc nhỏ giọt
Mỗi béc tưới nhỏ giọt hoạt động ổn định dưới áp suất 0.03 bar Ta tính được áp suất cần cung cấp tại đầu đường ống là:
Trong đó: P là áp suất tối thiểu máy bơm
N là số lượng cây p là áp suất hoạt động mỗi béc tưới
Khi chọn máy bơm, cần lưu ý chọn máy có lưu lượng và cột áp cao hơn ít nhất 1,5 lần so với yêu cầu hoạt động của thiết bị, tùy thuộc vào điều kiện địa hình Điều này giúp đảm bảo hiệu suất làm việc tối ưu cho máy bơm Ngoài áp suất cần thiết để thiết bị tưới hoạt động, cần tính thêm tổn hao áp suất trong hệ thống đường ống qua các bộ phận như lọc, bộ châm dinh dưỡng, co, tê, và giảm Do đó, máy bơm nên có lưu lượng từ 5m³/giờ và cột áp từ 26m trở lên.
Thỏa mãn các yêu cầu trên, ta có thể chọn máy bơm ly tâm Marino CM100.
Thông số kỹ thuật của CM100:
Lưu lượng nước tối đa: 6000 l/h Đường kính ống hút, xả: 25 mm (1")
Sản phẩm bảo hành chính hãng: 12 tháng
3.2.2 Tính chọn quạt thông gió Đối với nhà kính 8x18 m 2 , chiều cao hông nhà 3,0 m, chiều cao đến đỉnh 4.5m ta cần tính được thể tích của nhà kính xấp xỉ:
V = Chiều dài x chiều rộng x chiều cao
Tổng lượng không khí trao đổi trong nhà kính được xác định theo quy chuẩn với 70 lần tuần hoàn gió mỗi giờ, tức là mỗi hơn 1 phút, toàn bộ không khí trong nhà kính sẽ được thay đổi một lần Do đó, lượng không khí cần thiết để duy trì sự thông thoáng trong nhà kính là rất quan trọng.
T = X x V (m 3 /h) Trong đó: X là số lần thay đôi không khí.
V là thể tích không gian.
=> T = 70 x 540 = 37800 m 3 Qua tìm hiểu nhóm đã tổng hợp được một số model quạt thông gió:
Bảng 3.2: Thống kê một số mẫu quạt
Model Đường kính cánh (mm)
(vòng/p hút) Điện áp đầu vào (kW)
Dựa trên lưu lượng khí cần thiết và bảng thông số của các mẫu quạt thông gió, nhóm đã quyết định chọn quạt thông gió mẫu BNF-900.
Vậy số lượng quạt BNF-900 cần dùng được tính theo công thức:
Trong đó: T là tổng lượng không khí cần dùng.
Q là lưu lượng gió của quạt (m 3 /h).
Các thông số và hình ảnh cụ thể mẫu quạt BNF-900:
Tính toán, thiết kế hệ thống điện, điện tử
3.3.1 Thiết kế hệ thống điện a) Sơ đồ cấu tạo cơ bản hệ thống:
Hình 3.35: Sơ đồ khối hệ thống
Khối nguồn là thành phần quan trọng cung cấp năng lượng cho toàn bộ hệ thống, bao gồm khối xử lý trung tâm, khối giao tiếp wifi, khối webserver, khối điều khiển trực tiếp và hiển thị, khối cảm biến, khối relay, và khối cơ cấu chấp hành.
Khối xử lý trung tâm: Thu thập dữ liệu từ các thiết bị sau đó xử lý và điều khiển khối chấp hành và khối hiển thị.
Khối giao tiếp wifi đóng vai trò quan trọng trong việc kết nối giữa khối điều khiển trung tâm và server, hoạt động như cầu nối trung gian để nhận và gửi dữ liệu điều khiển các thiết bị điện trong khu vườn.
Khối webserver là thành phần quan trọng trong việc xây dựng giao diện cho web và ứng dụng di động, cho phép hiển thị và lưu trữ dữ liệu Nó cũng cung cấp khả năng cho người dùng thao tác và điều khiển hệ thống một cách gián tiếp thông qua kết nối Wifi.
Khối điều khiển trực tiếp và hiển thị: Cho phép người dùng theo dõi các thông số môi trường, thao tác điều khiển trực tiếp ngay trên màn hình.
Khối cảm biến là hệ thống bao gồm các cảm biến có chức năng thu thập thông tin về môi trường, từ đó giúp điều khiển và giám sát khu vườn một cách hiệu quả.
Khối module Relay cho phép đóng ngắt các tiếp điểm theo điều khiển từ ngõ ra của ESP32, giúp kiểm soát thiết bị một cách hiệu quả Nó cũng đảm bảo sự cách ly giữa mạch công suất và mạch điều khiển, tăng cường độ an toàn và ổn định cho hệ thống.
Khối chấp hành bao gồm các thiết bị giúp điều chỉnh các thông số và cơ cấu của khu vườn, đảm bảo môi trường luôn ở điều kiện tối ưu Việc lựa chọn Aptomat bảo vệ hệ thống là rất quan trọng để duy trì sự hoạt động hiệu quả của khu vườn.
Ta đã tính toán và chọn được các cơ cấu chấp hành cho hệ thống, từ đó ta tính được tổng công suất tiêu thụ tối đa:
Trong đó: là tổng công suất các bơm là tổng công suất các quạt
Hệ thống sử dụng điện lưới 220V, ta tính được I của hệ thống:
Do hệ thống có thiết bị động cơ, dòng của Aptomat cần gấp 2 đến 2.5 lần dòng của hệ thống:
I2 = 2.5 x I1 = 26.25 A Vậy ta lựa chọn Aptomat cho hệ thống điện có dòng điện định mức là 32A
Hình 3.36: Aptomat c) Thiết kế mạch điện
Nối vi điều khiển ESP32 với các thiết bị ngoại vi theo sơ đồ:
Hình 3.37: Thiết kế mạch điện
Sơ đồ đấu nối từ relay ra bơm và quạt:
Hình 3.38: Sơ đồ đấu nối từ relay ra bơm và quạt
Sơ đồ đấu nối LCD với ESP32:
Hình 3.39: Sơ đồ đấu nối LCD với ESP32
3.3.2 Lựa chọn cảm biến a) Cảm biến nhiệt độ DS18B20
Cảm biến nhiệt độ DS18B20, sản phẩm của hãng MAXIM, là cảm biến digital với độ phân giải cao 12bit Thiết bị này sử dụng giao tiếp 1-Wire, giúp việc lập trình trở nên đơn giản và gọn gàng Ngoài ra, DS18B20 còn có tính năng cảnh báo khi nhiệt độ vượt ngưỡng và có khả năng cấp nguồn từ chân data thông qua chế độ parasite power.
Hình 3.40: Cảm biến nhiệt độ
Thông số của Cảm biến nhiệt độ DS18B20 dây mềm:
Dải đo nhiệt độ: -55 đến 125 độ C ( -67 đến 257 độ F)
Sai số: +- 0.5 độ C khi đo ở dải -10 – 85 độ C
Độ phân giải: người dùng có thể chọn từ 9 – 12 bits
Chuẩn giao tiếp: 1-Wire (1 dây).
Có cảnh báo nhiệt khi vượt ngưỡng cho phép và cấp nguồn từ chân data.
Thời gian chuyển đổi nhiệt độ tối đa: 750ms (khi chọn độ phân giải 12bit).
Mỗi IC có một mã riêng (lưu trên EEPROM của IC) nên có thể giao tiếp nhiều DS18B20 trên cùng 1 dây
Ống thép không gỉ (chống ẩm, nước) đường kính 6mm, dài 50mm
Đường kính đầu dò: 6mm
Cảm biến nhiệt độ DS18B20 sử dụng giao tiếp 1-Wire, chỉ cần một dây để truyền và nhận dữ liệu, khác với các chuẩn như I2C, UART hay SPI yêu cầu nhiều dây hơn Giao thức 1-Wire có tốc độ thấp, phù hợp cho việc thu thập dữ liệu như nhiệt độ và thời tiết, mà không cần tốc độ cao Khi không hoạt động, giao tiếp 1-Wire cần duy trì ở mức cao để đảm bảo hiệu suất.
Do đó, cần kết nối dây này với nguồn thông qua điện trở (pull_up resistor).
Giao tiếp 1-Wire hoạt động với hai chế độ chính: chế độ standard và chế độ overdrive Ở chế độ standard, tốc độ truyền dữ liệu đạt 15 kbps, trong khi chế độ overdrive cho phép tốc độ cao hơn.
Giao tiếp 1-Wire hoạt động với tốc độ 111 kbps và tuân theo mô hình master-slave, cho phép kết nối nhiều thiết bị slave trên một đường truyền dữ liệu, trong khi chỉ có một thiết bị master duy nhất.
Trong giao tiếp 1-Wire, đường dây được duy trì ở mức cao (High), và các thao tác cơ bản của bus được xác định thông qua thời gian kéo đường truyền xuống mức thấp (Low).
Gửi bit 1: Khi muốn gửi đi bit 1, thiết bị Master sẽ kéo bus xuống mức 0 trong một khoảng thời gian A (às) và trở về mức 1 trong khoảng B (às).
Khi gửi bit 0, thiết bị Master kéo bus xuống mức 0 trong thời gian C (às) và trở lại mức 1 trong khoảng D (às) Để đọc bit, thiết bị Master hạ bus xuống mức 1 trong khoảng A (às) Trong thời gian E (às) tiếp theo, thiết bị Master sẽ lấy mẫu; nếu bus ở mức 1, nó sẽ đọc bit 1, ngược lại, nếu bus ở mức 0, thiết bị Master sẽ đọc bit 0.
Trong quá trình hoạt động, thiết bị Master thực hiện reset bằng cách giảm bus xuống mức 0 trong một khoảng thời gian H (às) trước khi trở về mức 1 Khoảng thời gian này được gọi là tín hiệu reset Tiếp theo, trong khoảng thời gian I (às), thiết bị Master tiến hành lấy mẫu Nếu thiết bị Slave gửi tín hiệu 0 (bus ở mức 0), Master hiểu rằng Slave vẫn hoạt động và quá trình trao đổi dữ liệu tiếp tục diễn ra Ngược lại, nếu Slave gửi tín hiệu 1 (bus ở mức 1), Master nhận biết không có thiết bị Slave nào kết nối và sẽ dừng quá trình Thiết bị cảm biến độ ẩm đất điện dung SEN0193 là một ví dụ điển hình trong hệ thống này.
Hình 3.43: Cảm biến độ âm đất điện dung SEN0193
Cảm biến độ ẩm đất điện dung là một giải pháp tiên tiến, vượt trội hơn so với cảm biến điện trở truyền thống nhờ vào độ bền và tuổi thọ cao Thiết bị này hoạt động hiệu quả trong dải điện áp từ 3.3V đến 5.5V, cho phép tương thích với nhiều loại vi điều khiển khác nhau.
Mạch cảm biến độ ẩm đất sử dụng mạch tạo xung NE555 kết hợp với tụ điện để tính tần số, với hai bản cực được thiết kế trên hai mặt PCB Trong môi trường ẩm, hơi nước bao quanh hai bản cực hoạt động như môi trường điện môi, làm tăng hằng số điện môi và dẫn đến tăng điện dung của mạch Điều này làm giảm tần số (f = 1/(R.C)), và ngược lại Tần số này được đưa qua mạch lọc thông thấp, tạo ra mức điện áp tương ứng với giá trị độ ẩm đất tại chân AOUT.
Thông số kỹ thuật: Điện áp hoạt động: 3,3 - 5,5 VDC Điện áp đầu ra: 0 - 3 VDC.
Tín hiệu đầu ra: Analog
Thiết kế phần mềm
Hình 3.44: Thuật toán điều khiển
3.4.2 Thiết lập Firebase Để bắt đầu sử dụng Firebase ta truy cập đến trang chủ ở địa chỉ: https://firebase.google.com/ do Firebase là dịch vụ của Google nên ta đăng nhập bằng tài khoản Gmail của mình
Sau đó ta sẽ được chuyển đến giao diện như dưới đây, chọn và Add project.
Hình 3.46: Add project mới Đặt tên cho Project và nhấn continue đến step 3
Hình 3.47: Đặt tên cho project Ở đây ta chọn Default Account for Firebase rồi chọn Create project và đợi Firebase khởi tạo project của chúng ta
Sau khi khởi tạo project xuất hiện giao diện sau.
Hình 3.49: Tạo dự án thành công
Chúng ta có thể thấy một số dịch vụ nổi bật như:
Authentication: xây dựng các bước xác thực người dùng bằng Email,
Facebook, Twitter, GitHub và Google cung cấp các phương thức xác thực nặc danh cho ứng dụng, giúp bảo vệ thông tin cá nhân của người dùng Hoạt động xác thực này đóng vai trò quan trọng trong việc đảm bảo an toàn và ngăn chặn việc đánh cắp tài khoản.
Hosting: cung cấp dịch vụ lưu trữ nhanh và an toàn cho ứng dụng web, nội dung tĩnh và động cũng như các dịch vụ vi mô của bạn.
Cơ sở dữ liệu thời gian thực (Real-time Database) là một giải pháp NoSQL lưu trữ trên đám mây, cho phép lưu trữ và đồng bộ hóa dữ liệu giữa người dùng trong thời gian thực Đối với các ứng dụng đa nền tảng, tất cả các client đều truy cập cùng một cơ sở dữ liệu, với dữ liệu tự động được cập nhật mỗi khi lập trình viên phát triển ứng dụng Tất cả thông tin được truyền qua kết nối an toàn SSL, đảm bảo bảo mật với chứng nhận 2048 bit.
Khi mất kết nối mạng, dữ liệu sẽ được lưu trữ tại local và tự động cập nhật lên Server của Firebase khi có thay đổi Đồng thời, các dữ liệu cũ hơn ở local cũng sẽ được cập nhật để đảm bảo luôn có thông tin mới nhất.
Chúng ta sẽ sử dụng dịch vụ Realtime Database của Firebase để tạo cơ sở dữ liệu cho việc cập nhật dữ liệu theo thời gian thực Đầu tiên, hãy tạo Realtime Database và chọn tùy chọn mặc định để tiếp tục đến bước 2.
Để tạo cơ sở dữ liệu thời gian thực, người dùng có thể chọn chế độ test mode khi phát triển dự án nhằm kiểm tra các chức năng Tuy nhiên, cần lưu ý rằng cơ sở dữ liệu sẽ ở trạng thái mở trong quá trình này.
Trong 30 ngày đầu tiên, khi cần một cơ sở dữ liệu cho ứng dụng di động hoặc các ứng dụng web chính thức, chúng ta nên chọn chế độ locked mode Điều này giúp cơ sở dữ liệu hoạt động ở chế độ riêng tư và tuân theo các quy tắc mà chúng ta đã thiết lập, đảm bảo an toàn và bảo mật cho dữ liệu.
Hình 3.52: Chọn mục đích xây dựng dự án
Firebase Realtime Database được cấu trúc theo dạng cây, tương tự như cây thư mục trong Windows Explorer Mỗi nhánh trong cơ sở dữ liệu này chỉ có thể chứa một loại dữ liệu duy nhất, khác với Windows Explorer, nơi một thư mục có thể chứa nhiều thư mục con và tập tin cùng cấp Trong Firebase, mỗi nhánh hoạt động như một container, chỉ chứa dữ liệu tương ứng với nhánh đó hoặc một tập hợp các nhánh con được tổ chức theo cách tương tự.
Hình 3.53: Sơ đồ tổ chức của Realtime Database
Ta có thể tạo ra trường dữ liệu và gán dữ liệu theo cách thủ công bằng cách nhấn vào dấu cộng (add child)
3.4.3 Lập trình vi điều khiển Để lập trình cho module ESP32 nhóm sử dụng phần mềm Arduino IDE. Trước khi lập trình, ta cần tải các tài nguyên liên quan đến ESP32 cho phần mềm Vào File chọn Preferences, tại ô Additional Board Manager URLs thêm đường link sau: https://raw.githubusercontent.com/espressif/arduino-esp32/gh- pages/package_esp32_ index.json
Hình 3.54: Set up tài nguyên phục vụ lập trình
To set up the ESP32 compiler in Arduino, navigate to the Tools menu and select Board, then click on Boards Manager In the search box, type "esp32," choose "ESP32 by Espressif Systems," and click install Please wait a few minutes for the installation to complete.
Hình 3.55: Cài đặt biên dịch cho ESP32 trong Arduino
Sau khi cài đặt tài nguyên cho phần mềm, quay lại giao diện chính để bắt đầu viết chương trình Đầu tiên, cần khai báo các thư viện cần thiết để sử dụng trong chương trình.
Để thiết lập kết nối với Firebase, trước tiên cần khai báo các chân kết nối, biến và địa chỉ Địa chỉ và mật khẩu Firebase được khai báo bằng cách sử dụng lệnh #define FIREBASE_HOST “” và #define FIREBASE_AUTH “”.
Hình 3.56: Khai báo các chân kết nối, các biến và địa chỉ của Firebase
Trong phần Void setup () chương trình chỉ chạy một lần, ta khai báo các chân vào, ra, khởi động màn hình lcd, kết nối Wifi, kết nối với Firebase.
Khai báo các chân INPUT/OUTPUT, ta sử dụng lệnh pinmode:
Khởi động và bật đèn nền màn hình LCD:
Kết nối ESP32 với mạng Wifi:
Sau khi đã kết nối với Wifi, ta khởi động và kết nối lên Firebase:
Tiếp theo, chúng ta sẽ viết các chương trình con để giải quyết những bài toán nhỏ Những chương trình con này sẽ được gọi trong chương trình chính chỉ với một câu lệnh Mỗi chương trình con sẽ thực hiện một nhiệm vụ cụ thể.
Lấy và trả về giá trị nhiệt độ
Lấy và trả về giá trị độ ẩm đất Đặt chế độ Auto hoặc Manual
Gửi các giá trị nhiệt độ, độ ẩm lên Firebase Đặt và nhận các trạng thái của biến điều khiển trên Firebase
Chương trình chính sẽ được thực thi trong phần void loop (), cho phép chương trình chạy lặp lại liên tục Tại đây, chỉ cần gọi tên các chương trình con đã được viết trước đó mà không cần phải lập trình lại các hành động chi tiết.
Khác với việc sử dụng React Native thuần túy, nơi bạn cần cài đặt và cấu hình Android Studio hoặc Xcode cùng các phụ thuộc khác, Expo đơn giản hóa quá trình phát triển ứng dụng với chỉ vài bước dễ dàng để bắt đầu.