đề tài xây dựng hệ thống tưới tự động dựa trên độ ẩm đất và theo dõi từ xa trên điện thoại thông qua blink app

22 0 0
Tài liệu đã được kiểm tra trùng lặp
đề tài xây dựng hệ thống tưới tự động dựa trên độ ẩm đất và theo dõi từ xa trên điện thoại thông qua blink app

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài báo cáo tập trung vào việc xây dựng một hệ thống tưới tự động dựatrên độ ẩm và khả năng theo dõi từ xa thông qua điện thoại.. Trong bối cảnhmôi trường nông nghiệp đang đối mặt với nh

Trang 1

TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤTKhoa: Công Nghệ Thông Tin

ĐIỆN THOẠI THÔNG QUA BLINK APP

Giáo viên hướng dẫn : Nguyễn Thùy Dương

Thành viên nhóm :Mã sinh viên

Phan Thị Ngọc Ánh 2121050704Trần Ngô Mạnh Hưng 2021050812

~ Hà Nội – 2024 ~

Trang 2

Mục lục

LỜI MỞ ĐẦU 3

Chương 1: TỔNG QUAN VỀ ĐỂ TÀI 5

1.1 Giới thiệu tổng quan về IoT 5

1.2 Mục tiêu ý tưởng đề tài 5

1.3 Sơ đồ khối hệ thống và nguyên lý hoạt động của hệ thống 6

Chương 2: THIẾT KẾ HỆ THỐNG IOT 10

2.1 Lập bảng dữ liệu 10

2.2 Thiết kế sơ đồ mạch điện 11

2.3 Lưu đồ thuật toán (Flowchart) 12

2.4 Thiết kế ứng dụng trên điện thoại thông minh 12

2.5 Viết code chương trình điều khiển 16

Chương 3: KIỂM TRA HOẠT ĐỘNG CỦA HỆ THỐNG 18

Chương 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 20

Tài liệu tham khảo 21

Trang 3

LỜI MỞ ĐẦU

Trong thời đại công nghệ ngày nay, việc áp dụng các giải pháp thôngminh vào việc quản lý và sử dụng tài nguyên tự nhiên trở nên ngày càngphổ biến và cần thiết Trong lĩnh vực nông nghiệp, việc tự động hóa quytrình tưới cây có thể mang lại nhiều lợi ích không chỉ về mặt tài chính màcòn về môi trường và năng suất.

Bài báo cáo tập trung vào việc xây dựng một hệ thống tưới tự động dựatrên độ ẩm và khả năng theo dõi từ xa thông qua điện thoại Trong bối cảnhmôi trường nông nghiệp đang đối mặt với những thách thức của biến đổikhí hậu và sự cần thiết của tiện lợi và hiệu quả, việc sử dụng công nghệ đểcải thiện quản lý tưới cây không chỉ là một lựa chọn thông minh mà còn làbước tiến quan trọng.

Bài báo cáo này sẽ trình bày một phương pháp cụ thể để xây dựng hệthống tưới tự động, từ việc lựa chọn các linh kiện cần thiết đến việc lậptrình và tích hợp các phần mền điều kiển tự xa Áp dụng công nghệ vàonông nghiệp và quản lý tài nguyên một cách thông minh và hiệu quả

Phân công công việc

Nguyễn Tiến Quý - 2121050723 Viết code, chuẩn bị thiết bị,lắp đặt thiết bị, build BlynkApp + Web, viết báo cáo,

Cả nhóm cùng thực hiện đều hoàn thành công việc của mình được giao, có tinh thần tránh

nhiệm , giúp đỡ thành viên trong nhómPhan Thị Ngọc Ánh - 2121050704 Viết báo cáo, lên ý tưởng,

Trang 4

4

Trang 6

Chương 1: TỔNG QUAN VỀ ĐỂ TÀI

1.1 Giới thiệu tổng quan về IoT

Thuật ngữ Internet of things ( viết tắt là Iot) được hiểu một cách đơn giản là mộtmạng lưới vạn vật kế nối với nhau thông qua Internet Chúng bao gồm các đồ vật, conngười được cung cấp một định danh của mình và tất cả có khả năng truyền tải hay traođổi thông tin hay dữ liệu qua mạng lưới duy nhất mà không cần đến sự tương tác trựctiếp giữa người với người, hay người với máy tính IoT đã phát triển từ sự hội tụ củacông nghệ không dây, công nghệ vi cơ điện tử và quan trọng hơn là sự có mặt củaInternet Nói đơn giản IoT là một tập hợp các thiết bị có khả năng kết nối mọi thứ lạivới nhau với Internet và với thế giới bên ngoài để thực hiện một công việc nào đó Cóthể nói IoT có mặt trong hầu hết các lĩnh vực đời sống của chúng ta hiện nay từ vănhóa, du lịch, giáo dục, y học, truyền thông Tất cả các lĩnh vực trên đều được úngdụng từ các thành tự của IoT cả Như trước đây nếu chúng ta muốn thông tin liên lạcvới nhay thì không còn cách nào khác đó là viết thư và truyền thư thông qua ngườigiao nhận Còn bây giờ thông qua các thiết bị thông mịn, chúng được kết nối với nhauthông qua hệ thống wifi, 3G hay các ứng dụng riêng của từng hãng Chưa đầy 10schúng ta đã có thể gửi tin nhắn đến một người hay nhiều người khác Bên cạnh đó thìcòn có nhiều ứng dụng khác như:

 Quản lý môi trường

 Quản lý hệ thống máy móc  Hệ thống mua sắn trực tuyến  Hệ thống kiểm soát an ninh  Nhà thông minh

 Ứng dụng quản lý toàn bộ thiết bọ cá nhân thông qua việc đồng bộ

1.2 Mục tiêu ý tưởng đề tài

Trang 7

Notification và hiện thị LCD “ độ ẩm cao”

+ Trên NodeMCU: Bật LED vàng, ngắt relay tắt máy bơm *Nếu độ ẩm thấp hơn ngưỡng dưới:

+ Trên Blynk: Bật LED đỏ, gửi cảnh báo “ độ ẩm thấp”, LCD “ đang tưới nước”+ Trên NodeMCU: Bật LED đỏ, đóng relay để mở máy bơm

*Nếu độ ẩm trong ngưỡng thì:

+ Trên Blynk: Bật LED xanh, LCD “ độ ẩm BT”

+ Trên NodeMCU: Bật LED xanh, đóng relay để tắt máy bơm4 Chế độ Manual:

+ Sử dụng nút nhấn button (V9) trên Blynk app để điều khiển đóng ngắt relay Về thực nghiệm: Chạy thành công hệ thống tưới nước dựa trên độ ẩm đất vàtheo dõi từ xa trên ứng dụng

1.3 Sơ đồ khối hệ thống và nguyên lý hoạt động của hệ thống a) Sơ đồ khối:

b) Nguyên lý hoạt động * Mode Auto

Cảm biến thu tín hiệu độ ẩm về chân A0 của NodeMCU => Hiện thị trên Blynkthông qua Value Display (V1)

Sau đó gửi tín hiệu về NodeMCU để thực thi các lệnh đã ràng buộc

* Mode Manual

- Điều khiển đóng tắt relay thông qua BlynkApp bằng button (V9)7

Trang 8

- Bật: Xuất tín hiệu HIGH về chân D2 trên NodeMCU để đóng relay mở máy bơm- Tắt : Xuất tín hiệu LOW về chân D2 trên Node MCU để đóng relay tắt máy bơm

c) Lựa chọn phần cứng cho hệ thống:

Trên cơ sở phân tích yêu cầu của hệ thống ở Bước 1, chúng ta sẽ chọn linh kiệnphần cứng cho phù hợp như:

 Board mạch điều khiển: NodeMCU

+ NodeMCU V1.0 được phát triển dựa trên Chip WiFi ESP8266EX bên trongModule ESP-12E dễ dàng kết nối WiFi với một vài theo tác Board còn tích hợp ICCP2102, giúp dễ dàng giao tiếp với máy tính thông qua Micro USB để thao tác vớiboard Và có sẵn nút nhấn, led để tiện quá trình học, nghiên cứu.

+ Với kích thước nhỏ gọn, linh hoạt board dễ dàng liên kết với các thiết bị ngoại viđể tạo thành project, sản phẩm mẫu một cách nhanh chóng.

+ Thông số kỹ thuật: - Chip : ESP82666EX

- WiFi: 2.4 GHz hỗ trợ chuẩn 802.11b/g/n

- Điện áp hoạt động : 3.3 V

- Điện áp vào: 5V thông qua cổng USB - Số chân I/O: 11 (tất cả các chân I/O

đều có Interrupt/PWM/12C/One –wire, trừ chân D0)

- Số chân Analog Input: 1 (điện áp vàotối đa 5 V)

- Bộ nhớ Flash: 4MB

- Giao tiếp: Cable Micro USB- Hỗ trợ bảo mật: WPA/WPA2- Tích hợp giao thức TCP/IP

- Lập trình trên các ngôn ngữ: C/C++,Micropython, NodeMCU – Lua

 Cảm biến độ ẩm đất

8

Trang 9

+Thông số :

- Mô đun cảm biến độ ẩm đất- Điện áp hoạt động : 3.3 ~ 5V- Sử dụng chip so sánh LM393,

ổn định

- Chỉ báo nguồn (đỏ) và chỉ báođầu ra công tắc kỹ thuật số(xanh lá)

- Kích thước bảng mạch PCBnhỏ: 3cm * 1.6cm

- VCC bên ngoài 3.3V-5V- GND bên ngoài

- DO - Giao diện đầu ra kỹ thuậtsố bảng nhỏ (0 và 1)

- AO - Giao diện đầu ra analog bảng nhỏ Thiết bị chấp hành (Relay 5V) :

+ Thông số kĩ thuật:

- Sử dụng điện áp nuôi DC 5V.- Relay mỗi Relay tiêu thụ dòng

khoảng 80mA.

- Điện thế đóng ngắt tối đa:AC250V ~ 10A hoặc DC30V~ 10A.

- Có đèn báo đóng ngắt trên mỗiRelay.

- Có thể chọn mức tín hiệu kích0 hoặc 1 qua jumper.

- Kích thước: 1.97 in x 1.02 in x0.75 in (5.0 cm x 2.6 cm x 1.9cm)

- Weight: 0.60oz (17g)  Nguồn tổ ong

9

Trang 10

+ Thông số kĩ thuật:

- Điện áp đầu vào: AC 110V/220V – 50Hz/60Hz.- Điện áp đầu ra: DC 5V

- Công suất: 20W- Dòng ra: 4A

- Kích thước: 85*58*32mm  Mô tơ 5V

+ Thông số kĩ thuật :- Điện Áp: 3 - 5V DC- Dòng : 100-200ma- Kích Thước: 23x43mm- Đầu Hút Nước Vào: 5mm- Đầu Nước Ra:

+ Đầu Chui 45mm

+ Đầu Bao Ngoài: 75mm- Lưu lượng :1.1-1.6L/Phút.- Dây USB dài 1m

 Đèn Led 3V

10

Trang 11

Chương 2:THIẾT KẾ HỆTHỐNG IOT

2.1 Lập bảng dữ liệu

Chân kết nối

Code Adruino IDE

Hiên thị giá trị cảm biến

A0 nối vớicảm biến độẩm đất

// 0 1023

analogVal = analogRead(analogPin);

phantram=map( analogVal,0, 1023, 100, 0);

Điều chỉnh chế độ Auto /Manual

D5 nối vớiled đỏ

D6 nối vớiled xanhD7 nối vớiled vàng

// điều chỉnh chế độBLYNK_WRITE(V2) { value1 = param.asInt();}

Blynk.syncVirtual(V2);V3,V4 Numetic Lấy giá trị

ngưỡng trên và dưới từ app Blynk

//Lấy giá trị ngưỡng trênBLYNK_WRITE(V3){ Refl=param.asInt();}

Blynk.syncVirtual(V3);//Lấy giá trị ngưỡng dướiBLYNK_WRITE(V4){ Ref2=param.asINT();}

Blynk.syncVirtual( V4);V9 Button Bật tắt

relay ở

D2 kết nốivới relay

// nút nhấn bật tắt relayBLYNK_WRITE(V9){

Trang 12

chế độ manual

Button=param.asInt();}

Trang 13

2.3 Lưu đồ thuật toán (Flowchart)

2.4 Thiết kế ứng dụng trên điện thoại thông minh 2.4.1 Giới thiệu về Blynk

Blynk là một ứng dụng chạy trên nền tảng iOS và Android để điều khiển vàgiám sát và giám sát thiết bị thông qua internet Blynk không ràng buộc vớinhững phần cũng cụ thể nào cả, thay vào đó, nó hỗ trợ phần cứng cho bạn lựachọn như Arduino, Raspberry Pi, ESP8266 và nhiều module phần cúng phổbiến khác.

- Điều khiển, giám sát thiết bị ở bất kỳ đây thông qua internet với khảnăng đồng bộ hóa trạng thái và thiết bị.

13

Trang 14

Library Blynk – support cho hầu hết tất cả nền tảng phần cứng phổ biến – chophép giao tiếp với máy chủ và xử lý tất cả các lệnh đến và đi.

Theo dõi lịch sử dữ liệu

Thông tin liên lạc từ thiết bị đến thiết bọ bằng Widget Gửi email, tweet, thông báo realtime, v,v.

được cập nhật các tính năng liên tục!

2.4.2 cấu hình các nút chức năng

14

Trang 15

1 Chức năng Gauge(V1) 2 Chức năng button(V2, V9)

3 Chức năng Numeric Input (V3,V4) 4 Chức năng SuperChart(V1)

2.4.3 Giao diện ứng dụng hoàn chỉnh của Blynk app

15

Trang 16

2.4.3 Giao diện ứng dụng hoàn chỉnh của Blynk Web

16

Trang 17

2.5 Viết code chương trình điều khiểna, Phần kết nối và khai báo các biến:

/* Comment this out to disable prints and save space */

#defineBLYNK_PRINT Serial

#defineBLYNK_TEMPLATE_NAME"Tuoi cay tu dong"

BlynkTimer timer;

// Your WiFi credentials.

// Set password to "" for open networks.

char ssid[] = "Nguyen An";

Serial.begin(9600)

//pinMode(5, INPUT_PULLUP);// test cam bien

Blynk.begin(auth, ssid, pass); pinMode(ledr,OUTPUT)

pinMode(ledy,OUTPUT)

pinMode(ledg,OUTPUT)

pinMode(relay,OUTPUT); Blynk.syncVirtual(V1); Blynk.syncVirtual(V2); Blynk.syncVirtual(V3); Blynk.syncVirtual(V4); Blynk.syncVirtual(V9);

Trang 18

Ref1=param.asInt();

BLYNK_WRITE(V4) // LấSy giá trị ngưỡng duoi26

Ref2=param.asInt();

BLYNK_WRITE(V9) // Nut nhan bat tat relay

button=param.asInt();

c, Phần dòng lệnh chạy chương trình và các điều lệnh ràng buộc

Blynk.run(); timer.run();

analogVal = analogRead(analogPin) // 0 > 1023

phantram=map(analogVal, 0, 1023, 100, 0; // chuyen sang phantram

Blynk.virtualWrite(V1,phantram); // hiềRn thị giá trị caRm biềSn

elseifphantram < Ref2){ // độ ấRm thấSp

digitalWrite(ledr,HIGH); digitalWrite(ledg,LOW)

digitalWrite(relay,LOW); }

}}

18

Trang 19

Chương 3: KIỂM TRA HOẠT ĐỘNG CỦA HỆ THỐNG

3.1 Tình huống 1:

Kiểm tra kết nối sever giữa NodeMCU và Blynk App có đang hoạt động tốt

không Tránh trường hợp mất kết nối hệ thống không hiện các thông báo về độ ẩm đất.Chúng ta sẽ không thể theo dõi được tình hình của độ ẩm để có thể điều khiển cácngưỡng cũng như tắt mở bơm nước gây ảnh hưởng xấu đến cây trồng

Lỗi trên là do Blynk app và NodeMCU không giao tiếp được với do 1 trong sốnhững nguyên nhân sau:

+ Lỗi kết nối do mất mạng, mất wifi

+ Do NodeMCU bị mất nguồn hoặc cổng USB bị hỏng + Do chưa cắm cổng USB của NodeMCU vào nguồn + Do không tìm được băng thông kết nối

3.2 Tình huống 2:

Kiểm tra đọ nhạy của cảm biến độ ẩm đất.

Theo thời gian có thể đầu cảm biến bị ăn mòn không còn chính xác nên cầntheo dõi thường xuyên và đưa ra biện pháp xử lý thích hợp tránh trường hợp cảm biếnbị sai lệch ảnh hướng xấu đến cây trồng.

Lỗi trên do 1 một số nguyên nhân sau:

+ Lỗi cảm biến sử dụng lâu năm bị ăn mòn hu hại đến việc không còn cập nhậtchính xác giá trị độ ẩm Cần thay mới cảm biến.

+ Do lỗi kết nối giữa NodeMCU và Blynk app dẫn đến việc không thể chuyển

Trang 20

giá trị đah ẩm thu được từ chân NodeMCU lên Blynk app

3.3 Tình huống 3;

Kiểm tra hệ thống thông báo của Blynk app ( chức năng notifications)

Đôi khi xảy ra trường hợp độ ẩm vượt qua ngưỡng trên hoặc thấp hơnngưỡng supiws mà hệ thống thông báo ( chức năng nitifications) của Blynk không thểhiện thị thông báo dẫn đến chúng ta không biết được rủi ro xảy ra có thẻ có tác hại xấuđến cây trồng

Không hiện thị thông báo khi độ ẩm có thể do một số nguyên nhân sau: + Do sai lệch điều khiển hoặc thiết lâph sai chân Virtual trên Code và Blynkapp

+ Do chưa cập nhật phiên bản và chức năng timer run

3.4 Đánh giá hoạt động của hệ thống:

Hệ thống tưới phun mưa được sử dụng nhiều trong nông nghiệp với các cây trồngcần tưới nhiều nước tưới cho cả tán lá Ngoài ra phương pháp này còn được áp dụngcho việc tưới các bãi cỏ, các tán cây cảnh các địa điểm công cộng, khu vực nghỉdưỡng với thiết kế đảm bảo cả tính mỹ quan.

Hệ thống do bọn mình thiết kế áp dụng tốt được trong phòng thí nghiệm và cácmô hình trồng rau tại nhà Ưu điểm của hệ thống là nhỏ gọn giá thành rẻ tiện dụng chocác mô hình trồng rau nhỏ vừa, dễ chỉnh sủa phương thức có thể phát triển thànhnhững dự án lớn về phát triển nông nghiệp Tuy nhiên, để mở rộng cho các dự án lớnhơn thì càn phải cải tiến hệ thống rất nhiêug về các mặt kỹ thuật cũng như cản biến

20

Trang 21

Chương 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

* Kết quả đạt được

Sau một thời gian tìm hiểu, tham khảo tài liệu từ nhiều nguồn khác nhau, cũng nhưđược sự giúp đỡ của giảng viên bộ môn và bạn bè, nhóm em đã hoàn thành đề tài: “xây dựng hệ thống tưới tự động dựa trên độ ẩm đất và theo dõi từ xa thông qua điện diđộng”

Nhìn chung đề tài của nhóm em có ưu điểm:

 Mạch có cấu tạo và hoạt động đơn giản và không phức tạp nhưngtính chính xác và khả năng áp dụng thực tế cao, giảm bớt công sứccon người trong việc chăm sóc vườn

 Mạch được thiết kế với các module có biến trở, ta có thể dàng điềuchỉnh tùy thuộc vào yêu cầu và trường hợp cụ thể.

 Các thiết bọ dễ mua được ngoài thị trường, giá thành rẻ. Dễ lắp ráp đối với người mới tập làm mạch điện tử  Có thể mở rộng và phát triển dễ dàng

Để tài trình bày được những nguyên lý cơ bản nhất của một hệ thống tướinước tự động và theo dõi từ xa, từ đây có thể phát triển đề tài thành hệ thống vườnthông minh phù hợp với nhu cầu xã hội

- Đề xuất hướng phát triển

Với đề tài này nếu có đử thời gian nghiên cứu thì có thể mở rộng ra ngoài việc sửdụng cảm biến độ ẩm còn có thể sử dụng thêm các loại cảm biến khác như: cảm biếnđộ ẩm, cảm biến nhiệt độ, cảm biến tốc độ động cơ có thể điều chỉnh lượng nước tướitiết kiệm hiệu quả, cảm biến đo độ pH để đo độ pH trong nước tưới, từ đó kịp thời xửlý nếu nước bị nhiễm phèn.

Trang 22

Tài liệu tham khảo

[1] https://www.youtube.com/watch?v=mEpYH0HAIUw&t=325s

22

Ngày đăng: 16/05/2024, 13:39

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan