Tải bản đầy đủ (.docx) (32 trang)

Hệ thống nông nghiệp thông minh dùng độ ẩm đất + DHT 11 + HC SR04

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.88 MB, 32 trang )

MỤC LỤC
LỜI MỞ ĐẦU........................................................................................................................... 3
MỞ ĐẦU................................................................................................................................... 4
1. Lý do chọn đề tài................................................................................................................ 4
2. Mục đích nghiên cứu..........................................................................................................4
3. Nhiệm vụ nghiên cứu.........................................................................................................4
4. Đối tượng nghiên cứu........................................................................................................4
5. Phạm vi nghiên cứu...........................................................................................................5
PHẦN 1 – NGHIÊN CỨU LÝ THUYẾT VỀ CẢM BIẾN ĐỘ ẨM ĐẤT VÀ NODEMCU
ESP 8266 CH340....................................................................................................................... 6
Chương 1. Sơ sở lý thuyết........................................................................................................6
1. Nơng nghiệp thơng minh là gì?......................................................................................6
2. IoT (Internet of Things) là gì?.......................................................................................8
3. Ứng dụng IoT trong nơng nghiệp..................................................................................8
Chương 2. Cảm biến độ ẩm đất và ESP8266..........................................................................9
1. Khái niệm, nguyên lý làm việc, ứng dụng của cảm biến Độ ẩm đất..............................9
1.1. Khái niệm.................................................................................................................9
1.2. Nguyên lý làm việc...................................................................................................9
1.3. Ứng dụng..................................................................................................................9
1.4. Cảm biến độ ẩm dựa vào độ dẫn nhiệt có các đặc điểm......................................10
1.5. Các tiêu chí trong lựa chọn cảm biến độ ẩm........................................................11
2. ESP8266 ESP-12E NodeMCU v3.................................................................................11
PHẦN 2 – XÂY DỰNG MƠ HÌNH VẬT LÝ. ỨNG DỤNG CẢM BIẾN SOIL
MOISTURE VÀO HỆ THỐNG TƯỚI CÂY THÔNG MINH............................................14
1. Lựa chọn linh kiện, thiết bị..............................................................................................14
1.1 Cảm biến độ ẩm đất Soil Moisture..............................................................................14
1.2 Mạch 2 Relay Opto 5VDC High/Low.........................................................................15
1.3 Máy Bơm Water Pump P385.......................................................................................15
1.4 Kit RF Thu Phát Wifi ESP8266 NodeMCU Lua V3 CH340.......................................16
1.5 Cảm Biến Độ Ẩm, Nhiệt Độ DHT11 Temperature Humidity Sensor Ra Chân...........16
1.6 Cảm biến siêu âm Ultrasonic HC-SR04......................................................................17


1.7 Dây cắm Breadboard...................................................................................................17
2. Mơ hình ghép nối..............................................................................................................18
1


3. Ngun lý hoạt động.........................................................................................................18
4. Mơ hình cơ khí.................................................................................................................. 19
5. Sơ đồ giải thuật.................................................................................................................20
6. Code chương trình............................................................................................................20
6

Lập trình............................................................................................................................ 24

7

Đánh giá............................................................................................................................ 30
7.1 Ưu điểm....................................................................................................................... 30
7.2 Nhược điểm................................................................................................................. 30
7.3 Xu hướng phát triển.....................................................................................................30
7.4 Phạm vi ứng dụng.......................................................................................................30

PHẦN 3 – TÀI LIỆU THAM KHẢO....................................................................................32

2


LỜI MỞ ĐẦU
Hiện nay, cuộc cách mạch khoa học công nghệ lần thứ 4 đã, đang và sẽ mở ra những cơ
hội phát triển cực lớn cho các nghành nghề. Và nông nghiệp cũng không phải là ngoại lệ. Đối
với những nghành đang phát triển như Việt Nam thì nền nơng nghiệp vẫn cịn đang chiếm vai

trị lớn trong nền kinh tế. Việc ứng dụng khoa học – công nghệ là điều cấp thiết để phát triển
kinh tế cũng như giúp cho những người nông dân đỡ vất vả và cực khổ hơn.
Nhằm giải guyết vấn đề này, hệ thống nông nghiệp thông minh gồm các hệ thống giám
sát, xử lý, cung ứng quá trình sản xuất ngày càng hiện đại đã được đưa vào nơng nghiệp. Trong
đó chủ yếu là tích hợp IoT (Internet of Things) – “Mạng Lưới vạn vật kết nối” góp phần thúc
đẩy sự chuyển đổi từ nông nghiệp truyền thống sang nông nghiệp thông minh, tạo nên một môi
trường sản xuất nông nghiệp năng động, khoa học và giải phóng sức lao động, tăng năng suất,
mang lại hiệu quả kinh tế cao.
Với mong muốn nghiên cứu và tạo ra một hệ thống giám sát nông nghiệp tiện ích ứng
dụng cơng nghệ IoT, đề góp phần đáp ứng nhu cầu trên và đóng góp thêm giải pháp phát triển,
Tôi quyết định chọn đề tài: “Nghiên cứu, phát triển mơ hình tưới cây thơng minh”. Trong bài
báo cáo này chúng ta sẽ nghiên cứu và xây dựng một hệ thống nông nghiệp sử dụng cảm biến
nhận diện các chỉ số mơi trường, thời tiết từ đó có thể tự động canh tác nông nghiệp hiệu quả
và báo cáo về người dùng.
Bài nghiên cứu của chúng tôi được chia làm hai phần:
Phần 1 – NGHIÊN CỨU LÝ THUYẾT VỀ CẢM BIẾN ĐỘ ẨM ĐẤT VÀ
NODEMCU ESP 8255 CH340.
Phần 2 – XÂY DỰNG MƠ HÌNH VẬT LÝ ỨNG DỤNG CẢM BIẾN ĐỘ ẨM ĐẤT
(SOIL MOISTURE) VÀO HỆ THỐNG TƯỚI CÂY THƠNG MINH.
Phần 3 – TÀI LIỆU THAM KHẢO.
Nhóm chúng tôi xin gửi lời cảm ơn sâu sắc đến Giảng viên – Thầy Nguyễn Thái Hùng
đã nhiệt tình hỗ trợ, giúp đỡ để tơi có thể hồn thành bài nghiên cứu một cách trọn vẹn nhất.

3


MỞ ĐẦU
1. Lý do chọn đề tài
Trong thời đại của cuộc cách mạng công nghiệp 4.0, việc ứng dụng công nghệ vào nhiều
lĩnh vực đã chứng minh được hiệu quả rõ rệt của mình. Nơng nghiệp từ trước đến nay luôn

nằm trong những lĩnh vực hạn chế áp dụng thanh tựu khoa học công nghệ nhất. Việt Nam
là một nước có nền nơng nghiệp lâu đời, người dân đa phần làm nông nghiệp một cách thủ
công, phụ thuộc nhiều vào yếu tố như đặc tính cây troongm thời tiết… Chính vì vậy mà
năng suất cũng như chất lượng sản phẩm thu được chưa đạt được như mong muốn.
Bên cạnh những hiện tượng biến đổi khí hậu trong những năm trở lại đây cũng là một vấn
đề đặt ra nhiều thách thức, tình trạng dân số tăng nhanh vơ hình chung tạo nên áp lực lớn
cho nghành nông nghiệp. Việc đảm bảo đủ lương thực cũng như chất lượng nông sản là
một trong những vấn đề tồn cầu. Vì những lý do này, để gia tăng hiệu quả năng suất, yêu
cầu cho nghành nông nghiệp là phải áp dụng những tiến bộ của khoa học công nghệ mới để
đạt được hiệu quả tốt hơn.
Nhiệm vụ của sinh viên nghành công nghệ như tôi cần luôn bắt được xu hướng thay đổi
của công nghệ, khoa học kỹ thuật, ứng dụng vào thực tế để nâng cao chất lượng cuộc sống
tốt hơn. Vì vậy chúng tôi đã lựa chọn đề tài: “Nghiên cứu, phát triển mơ hình tưới cây
thơng minh” phần nào hiểu được và đưa ra những giải pháp thiết thực giúp người nông dân
phát triển nông nghiệp từ quy mô hộ gia đình hay xa hơn là nơng nghiệp nước nhà.
2. Mục đích nghiên cứu
Với đề tài “Nghiên cứu, phát triển mơ hình tưới cây thơng minh” nhằm mục đích nâng cao
hiểu biết về nông nghiệp thông minh và ứng dụng IoT vào trong nơng nghiệp. Cùng với đó
là thiết kế 1 hệ thống theo dõi, giám sát các chỉ số môi trường kèm các chức năng tự động,
thủ công cho hệ thống nông nghiệp thông minh.
3. Nhiệm vụ nghiên cứu
Phát triển hệ thống nơng nghiệp thơng minh tích hợp IoT kết hợp với các khối cổng thông
tin, phần mềm điện thoại, Web Dashboard và phần mềm nhúng.
4. Đối tượng nghiên cứu
 IoT (Internet of Things), nông nghiệp thông minh
 IC, cảm biến, Kit WIFI ESP 8266 v3
4





5.



App thông báo Mobile và Web Dashboard
Hệ thống theo dõi, giám sát và điều khiển nông nghiệp tự động với thủ công.
Phạm vi nghiên cứu
Thế kế hệ thống theo dõi, giám sát các hoạt động thời tiết chỉ số môi trường.
Điều khiển hệ thống tự động tưới phù hợp với mơi trường đồng thời người sử dụng có

thể chỉnh sang chế độ thủ cơng để có thể tưới 1 cách chủ động hơn.
 Ứng dụng hệ thống IoT thông báo cho con người.

5


NGHIÊN CỨU, PHÁT TRIỂN HỆ THỐNG NÔNG NGHIỆP THÔNG MINH
PHẦN 1 – NGHIÊN CỨU LÝ THUYẾT VỀ CẢM BIẾN ĐỘ ẨM ĐẤT VÀ NodeMCU
ESP 8266 CH340
Chương 1. Sơ sở lý thuyết
1. Nơng nghiệp thơng minh là gì?
Nơng nghiệp thơng minh là một cụm từ đang được các người nông dân, các nhà vườn hiện nay
quan tâm. Biến đổi khí hậu đang ngày càng diễn biến phức tạp và khó lường, cây trồng ngày
càng bất ổn và môi trường đang diễn biến xấu đi. Cùng với đó nhân cơng ngày càng thiếu hụt
thì cơng nghệ thơng minh được đưa vào sản xuất chính là một trong những giải pháp cấp bách
hiện nay.
Nền nông nghiệp ứng dụng công nghệ cao (Tự động hóa, cơ giới hóa,.), cơng nghệ sản xuất,
bảo đảm sản phẩm an tồn (GAP, GlobalGAP, hữu cơ…), cơng nghệ quản lý (IoT, Big Data),
nhận diện sản phẩm với công nghệ AI (Trí tuệ nhân tạo) chính là nơng nghiệp thơng minh.


Hình 1. Hình ảnh nơng nghiệp thơng minh
Thành phần cấu thành nền nông nghiệp thông minh:
IoT (Internet of Things - Cảm biến vạn vật kết nối) hay còn được gọi là vạn vật kết nối với
nhau thông qua mạng Internet với các thiết bị cảm biến kết nối và điều khiển tự động trong
suốt quá trinhfsanr xuất giúp ứng phó với biến đổi khí hậu trong nhà kính.

6


Robot (người máy): người máy sẽ thay thế làm các việc mà người nơng dân thường làm, giúp
giảm chi phí nhân lực một cách đáng kể. Các bộ phân phân tích do các phần mềm trợ giúp sẽ
đưa ra xu hướng trong các trang trại ứng dụng nông nghiệp thông minh một cách nhanh chóng.
Drones (Thiết bị khơng người lái): Được sử dụng để thu thập dữ liệu ở các trang trại từ xa,
thiết bị bay khơng người lái cịn có thể sử dụng để phun thuốc bảo vệ thực vật từ xa.

Hình 2. Máy bay khơng người lái đang phun thuốc
Solar Cell (Tế bào quang điện – Pin mặt trời): Hầu hết các thiết bị trong trang trại được cấp
điện mặt trời và các bộ pin mặt trời trở nên rất quan trọng, nhằm giảm chi phí năng lượng và
sử dụng không gian trang trại một cách hiệu quả hơn.

Hình 3. Hệ thống pin năng lượng mặt trời dùng trong nông nghiệp
7


2. IoT (Internet of Things) là gì?
Internet vạn vật (IoT) là mạng kết nối các đồ vật và thiết bị thông qua cảm biến, phần mềm và
các công nghệ khác, cho phép các đồ vật và thiết bị thu thập và trao đổi dữ liệu với nhau.
Internet vạn vật lan tỏa lợi ích của mạng internet tới mọi đồ vật được kết nối, chứ không chỉ
dừng lại ở phạm vi một chiếc máy tính. Khi một đồ vật được kết nối với internet, nó sẽ trở nên

thơng minh hơn nhờ khả năng gửi và/hoặc nhận thông tin và tự động hoạt động dựa trên các
thơng tin đó.
Các thiết bị IoT có thể là đồ vật được gắn thêm cảm biến để thu thập dữ liệu về môi trường
xung quanh (giống như các giác quan), các máy tính/bộ điều khiển tiếp nhận dữ liệu và ra lệnh
cho các thiết bị khác, hoặc cũng có thể là các đồ vật được tích hợp cả hai tính năng trên.
Tiềm năng ứng dụng của internet vạn vật (IoT) trải rộng trên mọi lĩnh vực. Tuy nhiên, mọi hệ
thống IoT hồn chỉnh đều có đủ 4 bước: thu thập dữ liệu, chia sẻ dữ liệu, xử lý dữ liệu, và đưa
ra quyết định.

Hình 4. Nguyên lý hoạt động cơ bản của IoT
3. Ứng dụng IoT trong nông nghiệp.
 Theo dõi nguồn nước và giám sát dinh dưỡng
 Theo dõi dịch bênh và giám sát lỗi
 Giám sát đất
 Theo dõi sức khỏe cây trồng
 Máy móc
 Mơi trường
Để tạo ra nền nơng nghiệp bền vững, việc sử dụng IoT sẽ là trung tâm hàng đầu trong các hoạt
động nông nghiệp. IoT sắp xếp hợp lý cách làm việc từ sử dụng nước và điện, vận chuyển cây
8


trồng, cảnh báo vận hành, bảo trì máy móc nơng trại. IoT đã chứng tỏ một bước đột phá và tiếp
tục thay đổi cách nhìn vào các hoạt động nơng nghiệp khác nhau, trên thế giới ước tính có hơn
75 triệu thiết bị dựa trên IoT sẽ hoạt động trong ngành nơng nghiệp vào năm 2020. Trong
tương lai, IoT có thể được định hình bởi những tiến bộ vượt bậc trong Mạng cảm biến không
dây WSN (Wireless Sensor Network - WSN) và thế hệ thứ 5 của công nghệ thông tin di động
(5G) để cung cấp cho nông dân dữ liệu và thông tin theo thời gian thực mọi lúc mọi nơi trên
đất của họ.
Chương 2. Cảm biến độ ẩm đất và ESP8266

1. Khái niệm, nguyên lý làm việc, ứng dụng của cảm biến Độ ẩm đất.
1.1. Khái niệm
Cảm biến độ ẩm là một thiết bị điện tử đo độ ẩm trong mơi trường của nó và chuyển
đổi các phát hiện của nó thành tín hiệu điện tương ứng.
1.2. Ngun lý làm việc
Cảm biến đo độ ẩm hoạt động dựa trên nguyên lí: sự hấp thụ hơi nước làm biến đổi
tính chất của thành phần cảm nhận trong cảm biến làm thay đổi điện trở của cảm biến qua
đó xác định được độ ẩm.
Đối với một ẩm kế điện dung, khơng khí chảy vào giữa hai tấm kim loại. Sự thay đổi
độ ẩm khơng khí tỷ lệ thuận với sự thay đổi điện dung giữa các bản.
Trong nguyên lý đo độ ẩm điện trở, polymer hoặc sứ hấp thụ độ ẩm, sau đó ảnh hưởng
đến điện trở suất của nó. Và được kết nối với một mạch trong đó độ ẩm ảnh hưởng đến điện
trở của vật liệu. Từ đó độ ẩm tương đối sau đó được xác định dựa trên sự thay đổi của dòng
điện.Ứng dụng
1.3. Ứng dụng
Cảm biến điện dung được sử dụng cho các ứng dụng khác nhau để đo độ ẩm trong các
hệ thống HVAC, Máy in, Máy fax, Trạm thời tiết, ô tô, chế biến thực phẩm, tủ lạnh, vv.
Do có chi phí thấp và kích thước nhỏ, cảm biến điện trở được sử dụng trong các ứng
dụng dân dụng, công nghiệp và trong nước.

9


Cảm biến đo độ ẩm thường được tìm thấy ở nơi cần kiểm sốt độ ẩm. Ví dụ, Trong một
ngơi nhà có thể sử dụng chúng trong một hệ thống kiểm soát độ ẩm, giám sát các khu vực
khác nhau của ngơi nhà để ngăn ngừa nấm mốc phát triển.

Hình 5. Độ ẩm đất Soil Moisture
Tương tự trong nhà kính, phòng tắm hơi, bảo tàng và máy ấp trứng cũng sử dụng máy
đo độ ẩm để đảm bảo lượng ẩm khơng khí ở mức thích hợp cho cây, người…và trứng trong

khu vực kín.

1.4. Cảm biến độ ẩm dựa vào độ dẫn nhiệt có các đặc điểm
+ Đo độ ẩm tuyệt đối.

10


+ Gồm 1 điện trở đặt trong Nito khô và một đặt trong môi trường, sai lệch nhiệt độ tỷ lệ
với độ ẩm
1.5. Các tiêu chí trong lựa chọn cảm biến độ ẩm
Những tiêu chí quan trọng trong lựa chọn cảm biến độ ẩm bao gồm:












Nguồn điện sử dụng
Độ chính xác
Tính thay thế lấp lẫn
Tính lặp lại các đặc tính kỹ thuật
Tính ổn định
Khả năng phục hồi sau ngưng tụ hơi nước

Tính kháng nhiễm tạp chất, chất bẩn
Kích cỡ và bao gói
Tính hiệu quả và giá thành
Giá thành bảo dưỡng và thay thế khi có hỏng hóc
Tính phức hợp và hiện thực hóa q trình chuẩn hóa tín hiệu và mạch thu thập dữ

liệu.
2. ESP8266 ESP-12E NodeMCU v3
NodeMCU Dev Board dựa trên Hệ thống esp8266 được khám phá rộng rãi trên Chip từ
Expressif. Nó kết hợp các tính năng của điểm truy cập WIFI và trạm + vi điều khiển và sử
dụng ngơn ngữ lập trình dựa trên LUA đơn giản. ESP8266 NodeMCU cung cấp:
- IO phần cứng giống như Arduino
- API điều khiển thông minh cho các ứng dụng mạng
-10 GPIO D0-D10, chức năng PWM, IIC và SPI giao tiếp, 1-Wire và ADC A0, v.v. tất cả trong
một bảng
- Kết nối mạng wifi (có thể được sử dụng làm điểm truy cập và / hoặc trạm, lưu trữ một máy
chủ web), kết nối với internet để tìm nạp hoặc tải lên dữ liệu.
- Hệ thống rẻ chỉ cài đô la trên một Vi xử lí cho các dự án Internet of Things (IoT).

11


Hình 6. Sơ đồ chân của NodeMCU ESP 8266 v3
Lưu ý:
* Chip ESP8266 yêu cầu điện áp nguồn 3.3V. Nó không nên được cấp nguồn với 5volt như các
bo mạch arduino khác.
* Bo mạch nhà phát triển NodeMCU ESP-12E có thể được kết nối với 5Vsử dụng đầu nối
microUSB hoặc chân Vin có sẵn trên bo mạch.
* Các chân I / O của ESP8266 chỉ giao tiếp hoặc đầu vào / đầu ra tối đa 3,3V. tức là các chân
KHÔNG phải là đầu vào chịu được 5V.

Thông số kĩ thuật:
Microcontroller
NodeMCU Model
NodeMCU Size
Carrier Board Size
Pin Spacing
Clock Speed
USB to Serial
USB Connector
Operating Voltage
Input Voltage
Flash Memory/SRAM

ESP-8266 32-bit
Clone LoLin
58mm x 32mm
n/a
1.1" (27.94mm)
80 MHz
CH340G
Micro USB
3.3V
4.5V-10V
4 MB / 64 KB
12


Digital I/O Pins
Analog In Pins
ADC Range

UART/SPI/I2C
WiFi Built-In
Temperature Range

11
1
0-3.3V
1/1/1
802.11 b/g/n
-40 - 1250C

13


PHẦN 2 – XÂY DỰNG MƠ HÌNH VẬT LÝ. ỨNG DỤNG CẢM BIẾN SOIL
MOISTURE VÀO HỆ THỐNG TƯỚI CÂY THÔNG MINH
1. Lựa chọn linh kiện, thiết bị
1.1 Cảm biến độ ẩm đất Soil Moisture
a. Cấu tạo
 Sử dụng cảm biến hồng ngoại YG1006, tốc độ phản ứng nhanh và độ nhạy cao.
 Tích hợp IC LM393 để chuyển đổi ADC.
 Biến trở để tùy chỉnh độ nhạy của cảm biến.
b. Nguyên lý làm việc
 Khi module hoạt động các chân tín hiệu sẽ báo tín hiệu về thiết bị điều khiển. Lúc
đó tín hiệu chân AO:
 Aout cho ra tín hiệu tương tự sẽ chạy từ 0 đến 1024.
c. Cách đấu nối
Cấu hình chân của cảm biến này được hiển thị bên dưới. Nó bao gồm bốn chân
trong đó bao gồm những điều sau đây. Khi mô-đun này hoạt động với bộ vi điều khiển
thì các chân.

 Chân VCC: Nguồn cung cấp điện áp tăng từ 3,3V đến 5V.
 Chân GND: Đây là chân nối đất (GROUND).
 Chân AO: Đây là chân đầu ra tương tự (Analog Output).
 Chân DO: Đây là chân đầu ra kỹ thuật số (Digital Output) mức cao hoặc thấp.
Bộ não của cảm biến Flame Sensor là một con IC LM393 nó là trung tâm điều khiển
của con cảm biến, đồng thời nó cịn bao gồm:
 PWR-LED: là led hiển thị khi cảm biến có nguồn điện đi qua.
 DO-LED: là led hiển thị khi cảm biến nhận đc tín hiệu nhiệt từ bên ngồi mơi
trường thơng qua đầu cảm biến hồng ngoại YG1006.

14

Hình 7. Cảm biến độ ẩm đất Soil Moisture


 Biến trở để tùy chỉnh độ nhạy cảm biến.
d. Thông số kỹ thuật cảm biến Soil Moisture
 Nguồn cấp: 3.3V – 5VDC
 Tín hiệu ra: Digital 3.3 – 5VDC, tùy nguồn
cấp hoặc Analog.
 Kích thước: 3 x 1.6 cm
1.2 Mạch 2 Relay Opto 5VDC High/Low
Thông số kỹ thuật
 Sử dụng điện áp ni DC 5V.
 Dịng tiêu thụ: khoảng 200mA/1 relay.
 Đ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ỗi Relay.
 Có thể chọn mức tín hiệu kích 0 hoặc 1 qua jumper.
 Kích thước: 52 (L) * 41W * 19 (H) mm.


Hình 8. Relay 5VDC Kích
High/Low 2 Kênh

1.3 Máy Bơm Water Pump P385
Thông số kỹ thuật
 Loại động cơ: P385
 Điện áp sử dụng: 6~12VDC
 Dòng điện sử dụng: 0.5~0.7A
 Lưu lượng bơm: 1~2L/phút
 Thời gian chạy liên tục: < 1h
 Đường kính đầu bơm: đường kính trong 6mm,
đường kính ngồi 8.5mm

Hình 9. Bơm nước 12VDC

 Kích thước: 90 x 40 x 35mm

15


1.4 Kit RF Thu Phát Wifi ESP8266 NodeMCU Lua V3 CH340
Thơng số kỹ thuật



















IC chính: ESP8266 Wifi SoC.
Phiên bản firmware: NodeMCU Lua
Chip nạp và giao tiếp UART: CH340
GPIO tương thích hoàn toàn với firmware Node MCU.
Cấp nguồn: 5VDC MicroUSB hoặc Vin.
GIPO giao tiếp mức 3.3VDC
Tích hợp Led báo trạng thái, nút Reset, Flash.
Tương thích hồn tồn với trình biên dịch Arduino.
Kích thước: 59 x 32mmIC chính: ESP8266 Wifi SoC.
Phiên bản firmware: NodeMCU Lua
Chip nạp và giao tiếp UART: CH340
GPIO tương thích hồn tồn với firmware Node MCU.
Cấp nguồn: 5VDC MicroUSB hoặc Vin.
GIPO giao tiếp mức 3.3VDC
Tích hợp Led báo trạng thái, nút Reset, Flash.
Tương thích hồn tồn với trình biên dịch Arduino.
Kích thước: 59 x 32mm

Hình 10. NodeMCU ESP8266 V3


1.5 Cảm Biến Độ Ẩm, Nhiệt Độ DHT11 Temperature Humidity Sensor Ra Chân
Thông số kỹ thuật:
Điện áp hoạt động : 5VDC
Chuẩn giao tiếp: TTL, 1 wire.
Khoảng đo độ ẩm: 20%-90% RH (sai số 5%RH)
Khoảng đo nhiệt độ: 0-50°C (sai số 2°C)
Tần số lấy mẫu tối đa: 1Hz (1 giây / lần)
Kích thước : 28mm x 12mm x10mm
Hình 11. Cảm biến DHT11
1.6 Cảm biến siêu âm Ultrasonic HC-SR04







Thông số kỹ thuật:

16











Điện áp hoạt động: 5VDC
Dịng tiêu thụ: 10~40mA
Tín hiệu giao tiếp: TTL
Chân tín hiệu: Echo, Trigger.
Góc qt:<15 độ
Tần số phát sóng: 40Khz
Khoảng cách đo được: 2~450cm (khoảng cách xa nhất
đạt được ở điều khiện lý tưởng với không gian trống và

Hình 12. Cảm biến vật HC-SR04

bề mặt vật thể bằng phẳng, trong điều kiện bình thường
cảm biến cho kết quả chính xác nhất ở khoảng cách <100cm).
 Sai số: 0.3cm (khoảng cách càng gần, bề mặt vật thể càng phẳng sai số càng nhỏ).
 Kích thước: 43mm x 20mm x 17mm
1.7 Dây cắm Breadboard
Thơng số kỹ thuật:
 Một bó có 40 dây.
 Dây lõi đồng nhiều sợi có độ dẫn điện cao, mối tiếp xúc chắc chắn, độ dài 20cm, có
nhiều màu sắc khác nhau (10 màu).
1.8 Mini Breakboard 170 lỗ (2x5x17)
Thông số kỹ thuật:
 Chất liệu: Nhựa, mối tiếp xúc bằng đồng mạ.
 Số điểm trên test board: 170 điểm.
 Kích thước: 45 x 34 x 9mm

Hình 13. Mini Breakboard

17



2. Mơ hình ghép nối

Hình 14. Sơ đồ ghép nối của hệ thống tưới cây thông minh
3. Nguyên lý hoạt động
Chế độ tự động (Auto): Cảm biến sẽ nhận độ ẩm từ mơi trường đất sau đó sẽ truyền về
VXL với tín hiệu Analog để xử lí theo code mà đã đc lập trình sẵn nếu độ ẩm nhỏ hơn 70% thì
sẽ kích relay ở chế độ HIGH cho máy bơm hoạt động khi đã bơm nước đến 1 mức nhất định và
cảm biến thu được độ ẩm trên 70% thì VXL sẽ chỉnh relay về chế độ LOW và tắt máy bơm và
ở chế này tôi cũng thêm 1 con cảm biến đo khoảng cách HC-SR04 để đo mực nước còn lại
trong bồn chưa để tự động bơm nước vào bồn khi nước đạt đến khoảng cách đã cài đặt sẵn để
tránh bị gián đoạn trong quá hoạt động của thống tưới cây.
Chế độ điều khiển thủ công (Manual): Ở chế độ này có thể sẽ xem được độ ẩm của đất hiện
tại đang là bao nhiêu và mình có thể chủ động tắt mở máy bơm từ xa thông qua app Blynk kết
nối giữa ESP8266 với app Blynk được cài đặt sẵn trên thiết bị điện thoại muốn điều khiển.

18


Quy trình hoạt động của hệ thống báo cháy
 Là một quy trình khép kín.
 Khi cảm biến độ ẩm đo được độ ẩm giảm dưới mức quy định thiết bị đầu vào (cảm biến
độ ẩm đất) nhận tín hiệu và truyền cho khối điều khiển.
 Khối điều khiển: xử lý thông tin nhận được, xác định ngưỡng quy định độ ẩm tháp hơn
ngưỡng quy định và truyền thông tin đến các thiết bị đầu ra (Bơm), các thiết bị này sẽ
hoạt động nếu giá trị của còn biến độ ẩm đất đưa vào là thấp hơn so với ngưỡng đặt ra.
4. Mơ hình cơ khí

Hình 15. Mơ hình cơ khí của hệ thống tưới cây thơng minh


19


5. Sơ đồ giải thuật

Hình 16. Sơ đồ giải thuật của hệ thống
6. Code chương trình
7. /* Chương trình hệ thống tưới cây thông minh
8. Chức năng điểu khiển tùy chỉnh hệ thống chạy ở chế độ Auto/ Manual
9. Chức năng đọc cảm biến độ ẩm đất
10. Hiển thị LCD
11. Chức năng điều khiển tưới tiêu bằng tay 2 bơm
12. // Kết nối
13. // DHT
| ESP8266
14. //--------------------------15. // VCC(1) | 3.3V
16. // DATA(2) | 2
17. // GND(4) | GND
18. //---------------19. //Cảm biến độ ẩm | ESP8266
20. //-------------------------21. // VCC(1)
| 5V

20


22. // GND(2)
| GND
23. // D0(3)
| x

24. // A0(4)
| A0
25. */
26. /* ESP & Blynk */
27.
28. #define BLYNK_PRINT Serial
29.
30. #define BLYNK_TEMPLATE_ID "TMPL-OUjyxJv"
31. #define BLYNK_DEVICE_NAME "Thử nghiệm 1"
32. #define BLYNK_AUTH_TOKEN "iDvVzJ-z90zLHKg9B1y3C_T6Wnigcyvr"
33.
34. #include <ESP8266WiFi.h>
35. #include <BlynkSimpleEsp8266.h>
36.
37. char auth[]= "iDvVzJ-z90zLHKg9B1y3C_T6Wnigcyvr";
38. char ssid[]= "PhatPhamStudio_5Hz"; //Tên wifi
39. char pass[]= "PlsChangePhat2001"; // Mật khẩu wifi
40.
41. int Ref, sw_mode, button1, button2, sensor_value;
42.
43. const int trigPin = 12; //D6
44. const int echoPin = 14; //D5
45.
46. #define DHTPIN 2 //D4
47. #define DHTTYPE DHT11 //Dùng loại DHT11
48. #include <DHT.h>
49. DHT dht(DHTPIN, DHTTYPE);
50.
51. long duration;
52. float distanceCm;

53.
54. WidgetLED led(V0);//Led trạng thái kết nối giữa ESP8266 với App Blynk
55. WidgetLED appledr(V5);
56. WidgetLED appledg(V6);
57. WidgetLCD hienthi(V7); //Hiển thị trạng thái trên LCD app Blynk
58.
59. void setup() {
60. Serial.begin(9600);
61. Blynk.begin(auth, ssid, pass);
62. dht.begin();
63. pinMode(D1,OUTPUT);
64. pinMode(D2,OUTPUT);
65. pinMode(trigPin, OUTPUT);//Xuất tín hiệu ra
66. pinMode(echoPin, INPUT);//Thu tín hiệu vào
67. Blynk.syncVirtual(V2);
68. Blynk.syncVirtual(V3);
69. Blynk.syncVirtual(V7);
70. Blynk.syncVirtual(V8);
71. Blynk.syncVirtual(V9);
72. Blynk.syncVirtual(V11);

21


73. Blynk.syncVirtual(V12);
74.
75. }
76.
77. BLYNK_WRITE(V3){ //Cài đặt ngưỡng độ ẩm ở chế độ Auto
78. Ref = param.asInt();

79. }
80.
81. BLYNK_WRITE(V4){//Nút chuyển chế độ Auto hay Manual
82. sw_mode = param.asInt();
83. }
84.
85. BLYNK_WRITE(V8){ //Nút bật bơm 1
86. button1 = param.asInt();
87. }
88.
89. BLYNK_WRITE(V9){ //Nút bật bơm 2
90. button2 = param.asInt();
91. }
92.
93. void loop() {
94. Blynk.run();
95. //Hàm hiển thì trạng thái bật tắt bơm chế độ auto
96. String s;
97. if(sensor_value < Ref){
98. s = "Bơm bật";
99. }else{
100.
s="Bơm tắt";
101.
}
102.
Blynk.virtualWrite(V10,s);
103.
//Xử lý tín hiệu Cảm biến Soil Moisture
104.

sensor_value = analogRead(A0);
105.
sensor_value = map(sensor_value, 0, 1023, 0, 100);//Chuyển về dạng 100%
106.
Blynk.virtualWrite(V1,sensor_value);
107.
//Xử lý tín hiệu cảm biến DHT
108.
digitalWrite(trigPin, LOW);
109.
delayMicroseconds(2);
110.
// Sets the trigPin on HIGH state for 10 micro seconds
111.
digitalWrite(trigPin, HIGH);
112.
delayMicroseconds(10);
113.
digitalWrite(trigPin, LOW);
114.
115.
// Đọc chân echoPin, Trả về thời gian di chuyển sóng âm tại microseconds
116.
duration = pulseIn(echoPin, HIGH);
117.
118.
// Tính tốn khoảng cách đơn vị là cm
119.
distanceCm = 0.034 * duration/2;
120.

Blynk.virtualWrite(V2,distanceCm);
121.
//Hiển thị trạng thái Kết nối VXL với App Blynk
122.
if(led.getValue()) {
123.
led.of();

22


124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.

143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.

173.
174.

delay(1000);
}
else {
led.on();
delay(1000);
}
//***********************************************
if(sw_mode == 0){//Chế độ Auto
if(sensor_valueappledr.on();
hienthi.print(0 , 0, "Độ ẩm:" + String(sensor_value) + "%
");
hienthi.print(0 , 1, "Mực nước:" + String(distanceCm) + "cm ");
digitalWrite(D1,HIGH);
}
else{
appledr.of();
hienthi.print(0 , 0, "Độ ẩm:" + String(sensor_value) + "%
");
hienthi.print(0 , 1, "Mực nước:" + String(distanceCm) + "cm ");
digitalWrite(D1,LOW);
}
if (distanceCm < 4){
appledg.on();
digitalWrite(D2,LOW);
}
else{

appledg.of();
digitalWrite(D2,HIGH);
}
}
else{//Chế độ Manual
if(button1 == 1){
appledg.on();
hienthi.print(0 , 0, "Bơm 1 đang bật ");
digitalWrite(D1,HIGH);
}
else{
appledg.of();
hienthi.print(0 , 0, "Bơm 1 đang tắt ");
delay(2000);
digitalWrite(D1,LOW);
}
if(button2 == 1){
appledr.on();
hienthi.print(0 , 1, "Bơm 2 đang bật ");
digitalWrite(D2,HIGH);
}
else{
appledr.of();
hienthi.print(0 , 1, "Bơm 2 đang tắt ");
digitalWrite(D2,LOW);

23


175.

176.
177.
178.
179.
180.
181.

}
}
float h = dht.readHumidity();
float t = dht.readTemperature();
Blynk.virtualWrite(V11,h);
Blynk.virtualWrite(V12,t);
}

7. Lập trình
o Để chạy được app Blynk thì cần có một số cái mới cần phải thêm vào chương trình Kết nối
ESP 8266 với ứng dụng Blynk IoT
 Thêm thư viện BlynkSimpleEsp8266 ở đầu chương trình
1. #include <ESP8266WiFi.h>
2. #include <BlynkSimpleEsp8266.h>

 Cần thay đổi các thơng tin ở các dịng code sau:
1
2
3
4

//Token Blynk và wifi
char auth[] = "api_token_blynk"; // Điền api token blynk của bạn khi tạo Device

char ssid[] = "ten_wifi"; //Tên wifi
char pass[] = "pass_wifi";//Password

 Trong Setup (), cần cấu hình Blynk với token, tên wifi và mật khẩu với hàm
Blynk.begin(auth, ssid, pass);
1. void setup() {
2. Serial.begin(9600);
3. Blynk.begin(auth, ssid, pass);

 Gọi hàm Blynk.run(); tại vòng lặp loop()
1. void loop() {
2.
Blynk.run();

 Để gửi dữ liệu từ cảm biến lên Blynk Server: Blynk.virtualWrite(VirtualPin, sensor
data);

24


Hình 17. Coppy Dịng khoanh đỏ để bỏ vơ code để nạp cho ESP8266 để có thể kết nối với
Blynk IoT

Hình 18. Tạo các Datastreams trên Blynk Dashboard để hiển thị các giá trị của cảm biến lên
Blynk IoT
o Web Dashboard

25



×