1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Báo cáo đồ án Hệ thống tưới tự động dựa trên độ ẩm đất theo giỏi và giám sát thông qua Wedsite (file Proteus + Code kèm theo)

26 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Định dạng
Số trang 26
Dung lượng 19,99 MB
File đính kèm Code + proteus.rar (34 KB)

Nội dung

TRƯỜNG ĐẠI HỌC CẦN THƠ TRƯỜNG BÁCH KHOA ….…. BÁO CÁO Đồ án Điện tử căn bản_KC331 ĐỀ TÀI: HỆ THỐNG TƯỚI TỰ ĐỘNG DỰA TRÊN ĐỘ ẨM ĐẤT VÀ THEO DÕI THÔNG QUA WEDSITE Giảng viên hướng dẫn : Thầy Trương Quốc Bảo Học phần : Đồ án Điện tử căn bản_KC331 Sinh viên thực hiện : Nguyễn Quốc Bảo MSSV : B2012416

Trang 1

TRƯỜNG ĐẠI HỌC CẦN THƠ

TRƯỜNG BÁCH KHOA

….….

BÁO CÁO

Đồ án Điện tử căn bản_KC331

ĐỀ TÀI: HỆ THỐNG TƯỚI TỰ ĐỘNG DỰA TRÊN ĐỘ

ẨM ĐẤT VÀ THEO DÕI THÔNG QUA WEDSITE

Trang 2

Do thời gian làm báo cáo có hạn cũng như những hạn chế về kiến thức, trong bài chắc chắn sẽ không tránh khỏi những thiếu sót Rất mong nhận được sự nhận xét, đóng góp ý kiến từ phía Thầy để bài làm của nhóm em được hoàn thiện hơn.

Lời cuối cùng, em xin kính chúc thầy nhiều sức khỏe, thành công và hạnh phúc!”

Em xin chân thành cảm ơn!

Sinh viên thực hiện

Nguyễn Quốc Bảo

MỤC LỤC

Đồ án Điện tử căn bản_KC331

HỆ THỐNG TƯỚI TỰ ĐỘNG DỰA TRÊN ĐỘ ẨM ĐẤT VÀ THEO DÕI

THÔNG QUA WEDSITE

I GIỚI THIỆU 5

II PHƯƠNG PHÁP THỰC HIỆN 6

1 Tổng quan về hệ thống 6

2 Tổng quan về thiết bị sử dụng 7

Trang 3

2.1 Vi xử lý Arduino Uno 7

2.2 Cảm biến độ ẩm đất (Soil moisture sensor) 8

2.3 Nguồn tổ ong 9

2.4 Mạch cầu H (L298N) 11

2.5 Động cơ bơm nước R385 (DC motor 12V) 12

2.6 Màn hình LCD 16*2 và module I2C 12

3 Thiết kế hệ thống 13

3.1 Thiết kế phần cứng 13

3.2 Thiết kế phần mềm 15

3.3 Thiết kế giao diện Wed 21

3.4 Thiết kế mô hình 24

III KẾT QUẢ VÀ THẢO LUẬN 25

IV KẾT LUẬN VÀ ĐỀ NGHỊ 26

DANH MỤC BẢNG VÀ HÌNH

Hình 1: Hình 1: Vi xử lý Arduino Uno Bảng 1: Các thống số kỹ thuật của arduino:

Hình 2: Sơ đồ chi tiết của Arduino Uno Bảng 2: Các thống số kỹ thuật của cảm biến:

Hình 3: Cảm biến độ ẩm đất Bảng 3: Các thống số kỹ thuật của nguồn tổ

ong:

Trang 4

Hình 4: Sơ đồ kết nối của cảm biến Bảng 4: Các thống số kỹ thuật của mạch

Hình 14: Sơ đồ kết nối I2C với LCD

Hình 15: Sơ đồ khối của hệ thống

Hình 16: Sơ đồ nguyên lý của hệ thống mô phỏng trên

phần mềm Proteus

Hình 17: Lưu đồ của hệ thống

Hình 19: Sơ đồ các node để thiết lập giao diện Wed

Hình 20: Sơ đồ các node để thiết lập giao diện Wed

Hình 21: Thiết kế mô hình cho đề tài và phần cứng

mạch điện

Hình 22: Một số hình ảnh thực tế của hệ thống

HỆ THỐNG TƯỚI TỰ ĐỘNG DỰA TRÊN ĐỘ ẨM ĐẤT

VÀ THEO DÕI THÔNG QUA WED

Nguyễn Quốc Bảo 1

1 Sinh viên lớp TN20S3A1, Mã số SV:B2012416, Số ĐT: 0869 911 434, email: baob2012416@student.ctu.edu.vn

Trang 5

This project is about making a system that waters plants automatically using soil moisture sensors The system will check how wet the soil is by reading signals from these sensors Then, it will decide if the soil needs water and turn on the water pump if it does To make this happen, we'll use a small computer called arduino to

do the thinking and talking between the water pump, soil moisture sensor, and a control panel on a website This project could lead to making other cool things like smart vegetable gardens in neighborhoods or even inside greenhouses The main goal here is to learn more about programming and how to use sensors effectively to control things.

Keyword: Soil moisture sensor, microcontroller, pump.

Title: Building an automatic irrigation system based on soil moisture and monitoring irrigation through the website interface

Từ khóa: Cảm biến độ ẩm đất, vi điều khiển, máy bơm.

Tiêu đề: Xây dựng hệ thống tưới tự động dựa trên độ ẩm đất và giám sát việc tưới qua giao diện trang wed

Cách mạng 4.0 mang lại cho lĩnh vực điều khiển tự động một sự thay đổi mạnh mẽ

Đề tài “Thiết kế hệ thống tưới tự động dựa vào độ ẩm đất” sẽ là một phần quan

trọng trong việc phát triển mạnh mẽ trong lĩnh vực công nghệ điều khiển và tự độnghóa Việc sử dụng vi điều khiển để để đọc dữ liệu cảm biến độ ẩm đất và điều khiển

máy bơm nước và đèn sưởi mang lại nhiều lợi ích Đầu tiên, nó cung cấp khả năng

tự động hóa quá trình điều khiển dựa trên độ ẩm đất của cảm biến đọc được, giúp

tối ưu hóa hiệu suất và độ chính xác của hệ thống Thứ hai, việc sử các thành phần phần cứng và phần mềm mã nguồn mở (Arduino) giúp giảm chi phí cài đặt và phát triển hệ thống Cuối cùng, đề tài này có tiềm năng ứng dụng rộng rãi trong lĩnh vực

nông nghiệp, giáo dục kỹ thuật, và đóng vai trò quan trọng trong việc cải thiện quátrình điều khiển và đo lường

Đề tài được lấy ý tưởng từ Thầy Trương Quốc Bảo - Trường Đại học Cần Thơ Mục

tiêu là phát triển một hệ thống tự động hóa để đọc cảm biến độ ẩm đất và điều khiểnmáy bơm nước và đèn sưởi Cụ thể bao gồm xây dựng kết nối tin cậy giữa các thành

Trang 6

phần, thu thập dữ liệu từ cảm biến độ ẩm đất và điều khiển các thiết bị chấp hành

dựa trên thông tin có sẵn này, đảm bảo độ chính xác và đáng tin cậy trong quá trình

điều khiển

1 Tổng quan về hệ thống

Tổng quan về hệ thống bao gồm như: Về mục tiêu chính: Xây dựng hệ thống tự

động hóa việc tưới nước dựa trên độ ẩm đất, giúp nâng cao hiệu suất và tiết kiệm tài

nguyên nước và cung cấp lượng nước tưới cần thiết khi cây cần thiết.Về các thành

phần chính:Vi xử lý (Arduino) là trung tâm điều khiển cho hệ thống, Cảm biến độ

ẩm đất dùng để đo thông tin độ ẩm của đất và cung cấp dữ liệu cho hệ thống Hệ

thống tưới nước và sưởi tự động: Điều khiển việc tưới nước và sấy khô dựa trên dữ

liệu cảm biến (động cơ bơm nước, đèn sưởi) Về giao diện web: Cung cấp khả năng

theo dõi và điều khiển hệ thống Chức năng quan trọng là theo dõi và điều khiển

người dùng có thể theo dõi trạng thái của hệ thống và tưới nước từ bất kỳ đâu thông

qua giao diện trang web Về tính tự động hóa tưới nước: Hệ thống hoạt động khi độ

ẩm đất thấp hơn ngưỡng quy định, giúp ngăn chặn thiếu nước cho cây trồng Về lợi

ích: Tiết kiệm tài nguyên nước tăng hiệu suất sử dụng nước và giảm lãng phí tài

nguyên, tăng năng suất nông nghiệp đảm bảo cây trồng nhận đủ nước và tạo điều

kiện tốt nhất cho sự phát triển, người dùng có khả năng quản lý và kiểm soát hệ

thống từ xa, thuận tiện và linh hoạt Về công nghệ và mô hình: Sử dụng các cảm

biến độ ẩm đất với độ độ chính xác và độ bền đã được nhà sản xuất chứng minh

Mô hình do cá nhân tìm hiểu lên ý tưởng và thiết kế

2 Tổng quan về thiết bị sử dụng

2.1.Vi xử lý Arduino Uno

Arduino là một bo mạch vi điều khiển do một nhóm

giáo sư và sinh viên nước Ý thiết kế và đưa ra đầu tiên

vào năm 2005 Mạch Arduino được sử dụng để cảm

nhận và điều khiển nhiều đối tượng khác nhau Nó có

thể thực hiện nhiều nhiệm vụ lấy tín hiệu từ cảm biến

đến điều khiển đèn, động cơ, và nhiều đối tượng khác

Ngoài ra mạch còn có khả năng liên kết với nhiều

module khác nhau như: module đọc thẻ từ, ethernet

shield, sim900A, v.v…để tăng khả ứng dụng của

mạch.Phần cứng bao gồm một board mạch nguồn mở

được thiết kế trên nền tảng vi xử lý AVR Atmel 8bit,

hoặc ARM, Atmel 32-bit, Hiện phần cứng của

Arduino có tất cả 6 phiên bản, Tuy nhiên, phiên bản

thường được sử dụng nhiều nhất là Arduino Uno và

Arduino Mega Phần mềm để lập trình cho mạch

Arduino là phần mềm IDE

Hình 1: Vi xử lý Arduino Uno

Trang 7

Bảng 1: Các thống số kỹ thuật của arduino:

Điện áp cấp (hoạt động tốt)  7 – 12 V

Trang 8

2.2 Cảm biến độ ẩm đất (Soil moisture sensor)

Cảm biến độ ẩm đất (soil moisture sensor) là một thiết

bị quan trọng trong lĩnh vực tự động hóa nông nghiệp

và quản lý tưới tiêu Chức năng chính của cảm biến

này là đo lường mức độ ẩm của đất trong một khu vực

cụ thể Cảm biến giúp xác định độ ẩm của đất qua đầu

dò và trả về giá trị analog hoặc digital qua 2 chân

tương ứng để giao tiếp với vi điều khiển để thực hiện

vô số các ứng dụng khác nhau

Thông qua việc đo lường này, người dùng có thể biết

được liệu đất đã khô hay ẩm và cần được tưới nước

hay không Cảm biến độ ẩm đất thường được tích hợp

vào các hệ thống tưới tự động để cung cấp nước cho

cây trồng đúng lúc và đúng lượng, giúp tối ưu hóa sự

phát triển của cây và tiết kiệm nước

Bảng 2: Các thống số kỹ thuật của cảm biến:

Hình 3: Cảm biến độ ẩm đất

Hình 4: Sơ đồ kết nối của cảm biến

+

DO (mức cao hoặc mứcĐầu ra tín hiệu số

Digital: High hoặc

Low, có thể điềuchỉnh độ ẩm mongmuốn bằng biến trởthông qua mạch sosánh LM393 tích

Trang 9

áp thường sẽ sử dụng lõi thép kỹ thuật điện Nguồn tổ ong sửdụng lõi ferit.

 Cầu chì: linh kiện có tác dụng bảo vệ mạch nguồn bị ngắnmạch. 

 Bộ phận: cuộn chống nhiễu, tụ lọc sơ cấp Điốt chỉnh lưu sẽ

có nhiệm vụ biến đổi dòng xoay chiều 220VAC thành điện áp

1 chiều tích Sau đó tích điện trên tụ lọc sơ cấp để cung cấpnăng lượng cho cuộn sơ cấp của máy biến áp xung

 Sò công suất: phần bán dẫn dùng như một công tắc chuyểnmạch trong bộ xung Trong đó có thể là transistor, mosfet, ICtích hợp, IGBT Những bộ phần này có nhiệm vụ  đóng cắtđiện từ chân (+) của tụ lọc sơ cấp vào cuộn dây sơ cấp củabiến áp xung rồi cho xuống mass

 Tụ lọc nguồn thứ cấp: bộ phận này có nhiệm vụ  tích trữ năng lượng điện từcuộn thứ cấp của biến áp xung để cấp cho tải tiêu thụ Khi cuộn sơ cấp đượcđóng cắt điện liên tục bằng sò Chúng ta đều biết sẽ xuất hiện trường biếnthiên dẫn đến cuộn thứ cấp cũng xuất hiện một điện áp ra Điện áp sẽ đượcchỉnh lưu qua các điốt rồi đưa vào tụ lọc thứ cấp để san phẳng điện áp

 IC quang và IC TL431: hai linh liện này có nhiệm vụ tạo ra điện áp ổn định

để khống chế điện áp ra bên thứ cấp ổn định theo mong muốn người dùng.Chúng cần phải khống chế dao động đóng cắt điện vào cuộn sơ cấp để điện

áp ra bên thứ cấp đạt yêu cầu

Hình 6: Cấu tạo nguồn tổ ong Hình 5: Nguồn tổ ong

Trang 10

Bảng 3: Các thống số kỹ thuật của nguồn tổ ong:

cơ step (bước) bằng cách cung cấp dòng điện lớn và chính xác từ nguồn cung cấp

ngoại vi

Mạch L298N thường đi kèm với hai cầu H (H-bridge)

độc lập, cho phép điều khiển động cơ theo cả hai

hướng (tiến và lùi) cũng như điều khiển tốc độ quay

của động cơ Nó cũng có khả năng chống ngược điện

và chịu được dòng điện cao, làm cho nó trở thành lựa

chọn lý tưởng cho việc điều khiển các động cơ có

dòng điện lớn

Mạch L298N thường được điều khiển bằng cách sử

dụng tín hiệu từ một vi điều khiển Điều này cho phép

người dùng linh hoạt trong việc lập trình và điều khiển

Hình 7: Sơ đồ phân tích nguyên lý hoạt động của bộ nguồn

Hình 8: Mạch L298N

Trang 11

Công suất tải tối đa 25WDòng tiêu thụ không tải 0 – 36mA Nhiệt độ bảo quản 20 – 135 độ C

2.5 Động cơ bơm nước R385 (DC motor 12V)

Động cơ bơm nước R385 Water Pump 12VDC là một

thiết bị nhỏ gọn và mạnh mẽ được sử dụng để bơm

nước và dung dịch Với điện áp sử dụng từ 6 đến

12VDC, động cơ có thể hoạt động hiệu quả trong nhiều

ứng dụng khác nhau Nó là một lựa chọn tốt cho các dự

án sử dụng máy bơm 12V và đáp ứng tốt nhu cầu cho

những mô hình sinh viên hay nghiên cứu

Bảng 5: Các thống số kỹ thuật của động cơ bơm 12V - R385:

Thời gian làm việc liên tục tối đa: 120h

Hình 10: Động cơ bơm 12V

Trang 12

Áp suất nước tạo ra: 0.3Mpa

Hoạt động nhiệt độ môi trường: 5 - 40℃ ℃

2.6 Màn hình LCD 16*2 và module I2C

 Màn hình LCD 16*2:

 LCD được sử dụng để hiển thị trạngthái hoặc các thông số:

 LCD 16x2 có 16 chân trong đó có:

- 8 chân dữ liệu (D0 - D7)

- 3 chân điều khiển (RS, RW, EN),

- 5 chân còn lại dùng để cấp nguồn và đènnền cho LCD 16x2

Các chân điều khiển giúp ta dễ dàng cấu hình LCD ở chế độ lệnh hoặc chế độ dữ liệu chúng còn giúp ta cấu hình ở chế độ đọc hoặc ghi.

 LCD 16x2 có thể sử dụng ở chế độ 4 bit hoặc 8 bit tùy theo ứng dụng ta đanglàm

 Module IC2:

 Module I2C là một module dựa trên giao thứcI2C Module này giúp giảm số lượng kết nối dâygiữa vi điều khiển và màn hình LCD xuống chỉcòn 2 dây, điều này giúp tiết kiệm rất nhiều chânGPIO cho các cảm biến và thiết bị khác

Trang 13

Bảng 6: Các thống số kỹ thuật của LCD 16*2 và module I2C:

Thông số module I2C

3.1.1 Sơ đồ khối của hệ thống

SVTH: Nguyễn Quốc Bảo Trang 13

Hình 15: Sơ đồ khối của hệ thống

Phần được điều khiển trược tiếp trên giao diện dashboar

Giao diện Dashboar

(Theo dõi và điều khiển)

Cổng COM Cổng COM

Chữ đen, nền xanh lá có đèn led nền

Có thể dùng biến trở hoặc PWM điều chình độsáng để sử dụng ít điện năng hơn

Khoảng cách giữa hai chân kết nối là 0.1 inch tiện dụngkhi kết nối với Breadboard

Tên các chân được ghi ở mặt sau của màn hình LCD hổtrợ việc kết nối, đi dây điện

Trang 14

 Mô tả sơ đồ khối:

- Bộ nguồn: Bộ nguồn cung cấp năng lượng vi xử lí trung tâm là Arduino đồng

thời cung cấp cho các thiết bị khac như động cơ, mạch điều khiển L298N…

- Bộ xử lí trung tâm: Arduino Uno có nhiệm vụ xử lí tín hiệu từ cảm biến độ ẩm

đất , xử lí các tính hiệu theo điều kiện để bật/tắt các thiết bị chấp hành Đồngthời xử lí đề điều khiển hiển thị LCD

- Giao diện Dashboar: Cho phép quan sát và điều khiển từ xa hoạt động của hệ

thống tăng tính tiện lợi và trực quan

- Bộ điều khiển: L298N có nhiệm vụ điều khiển động cơ bật và tắt đồng thời

thông qua đó có thể điều chỉnh độ rộng xung đê điều khiển tốc độ cũng nhưchiều quay của động cơ

- Bộ hiển thị: LCD hiển thị trực quan cho phép quan sát kết quả đo được từ cảm

biến

- Bộ cảnh báo: Người dùng có thể điều khiển còi báo để cảnh báo về tình trạng

của hệ thống hiện tại như vườn tưới thiếu nước cung cấp cho động cơ, động cơ

bị hỏng

- Động cơ bơm 12V và động cơ phụ 5V: Động cơ bơm dùng để bơm nước tưới

cho hệ thống khi độ ẩm thấp và động cơ phụ dùng để bật khi động cơ chính xãy

ra sự cố hư hỏng nhàm giúp đảm bảo kịp thời lượng nước tưới cho cây

- Đèn sưởi: Dùng để sưởi ấm khi độ ẩm tăng cao trong vườn tưới lúc vừa tưới

nước từ động cơ

3.1.2 Sơ đồ nguyên lý

Trang 15

3.2 Thiết kế phần mềm

3.2.1 Lưu đồ của hệ thống

SVTH: Nguyễn Quốc Bảo Trang 15

Giao diện Dashboard

Tiếp nhận và xử lí chuổi JSON

Tạo và gửi chuổi JSON qua cổng

Serial Monitor

1 Led red OFF, Led green ON, Motor OFF, Đèn ON

2 Nếu nhận kí tự số: “0” Động cơ phụ OFF và nhận kí

Trang 16

Giải thích lưu đồ: Chương trình bắt đầu bằng begin sau đó khởi tạo các GPIO cho

các chân kết nối của: Sensors, đèn LED, buzzer, động cơ, LCD…sau đó tiến hành

đo giá trị độ ẩm đất bằng cảm biến độ ẩm đất giá trị này được tiếp nhận và sử lý bởi

bộ điều khiển trung tâm sau đó hiển thị giá trị ra màn hình LCD Tiếp đến chươngtrình kiểm tra điều kiện độ ẩm đất có lớn hơn hoặc bằng 50% hay không nếu lớnhơn thì thực hiện bật động cơ và led tương ứng và ngược lại độ ẩm nhỏ hơn hoặcbằng 50% thì tắt động cơ và các led tương ứng Cuối cùng, chương trình in ra chuổiJSON để giao diện nhận được chuổi và xử lí chuổi JSON và hiển thị lên giao diệnwed Ở phần giao diện wed này cũng cho phép gửi ký hiệu truyền về để điều khiểncác thiết bị chấp hành như động cơ phụ, còi báo

3.2.2 Đoạn code chương trình

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

ẩm đất

// Kết nối với L298N cho động cơ bơm 12V

#define IN3_PIN 8 // Chân kết nối với L298N IN3

#define IN4_PIN 7 // Chân kết nối với L298N IN4

#define ENB_PIN 6 // Chân kết nối với L298N ENB

// Kết nối với L298N cho đèn sưởi

#define IN1_PIN 2 // Chân kết nối với L298N IN1

#define IN2_PIN 4 // Chân kết nối với L298N IN2

Trang 17

// Khai báo chân cho hai led đỏ và xanh

Trang 18

void loop() {

// Đo độ ẩm đất

int moistureValue = analogRead(MOISTURE_SENSOR_PIN);

float moisturePercentage = map(moistureValue, 300, 1023, 100,0); // Chuyển đổi giá trị ADC sang phần trăm

json += "\"LED Red\": \"ON\", ";

json += "\"LED Blue\": \"OFF\"";

Trang 19

json += "\"LED Red\": \"OFF\", ";

json += "\"LED Blue\": \"ON\"";

Trang 20

// Đọc lệnh từ Serial và thực hiện các hành động tương ứng(Dashboar)

if (Serial.available() > 0) { char command = Serial.read();

if (command == '1') { digitalWrite(MOTOR2_PIN, HIGH); // Bật động cơ phụ

} else if (command == '0') { digitalWrite(MOTOR2_PIN, LOW); // Tắt động cơ phụ

} else if (command == '2') { digitalWrite(BUZZER_PIN, HIGH); // Bật còi

} else if (command == '3') { digitalWrite(BUZZER_PIN, LOW); // Tắt còi

} } delay(1000);

}

3.3 Thiết kế giao diện Wed

3.3.1 Các khối chức năng và đoạn mã code cho các khối

Trang chủ:

SVTH: Nguyễn Quốc Bảo Trang 20

Ngày đăng: 10/05/2024, 06:48

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w