1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf

36 0 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 36
Dung lượng 2,21 MB

Nội dung

Hệ thống tưới cây tự động là một công nghệ đang được áp dụng rộng rãi trong lĩnh vực nông nghiệp.. Ngoài ra, hệ thống tưới cây tự động cũng được ứng dụng trong các ứng dụng khác như tưới

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐHQG HÀ NỘI 

NGÀNH CN KỸ THUẬT CƠ ĐIỆN TỬ

-o0o -BÁO CÁO ĐỀ TÀI

LẬP TRÌNH NÂNG CAO

Nhóm 5

Đề tài: Hệ thống chăm sóc và theo dõi quá trình

sinh trưởng cây cà chua bi

Giảng Viên: Nguyễn Quang Nhã

Sinh viên : Kiều Văn Tiến – 20021195

Đoàn Trung Nghĩa – 20021170 Bùi Tá Phong - 20021174

Hà Nội, tháng 4, năm 2023

Trang 2

Lời nói đầu

Chúng ta đang sống trong thời đại 4.0, thời đại của công nghiệp hoá, hiện đại hoá với mục tiêu là biến quá trình sản xuất mà trước kia ta phải làm thủ công thành một dây chuyền tự động Tự động hoá không chỉ trong công nghiệp mà nó còn được ứng dụng mạnh mẽ trong nhiều lĩnh vực khác như nông nghiệp, dịch vụ,… Hệ thống tưới cây tự động là một công nghệ đang được áp dụng rộng rãi trong lĩnh vực nông nghiệp Đây

là một phương tiện hiệu quả để cung cấp nước và chất dinh dưỡng cho cây trồng một cách tự động và hiệu quả hơn so với phương pháp tưới nước thủ công truyền thống.

Hệ thống tưới cây tự động có nhiều lợi ích như giảm chi phí, tiết kiệm thời gian và nước, tăng năng suất và chất lượng sản phẩm, cải thiện môi trường Ngoài ra, hệ thống tưới cây tự động cũng được ứng dụng trong các ứng dụng khác như tưới nước cho các công viên, khu đô thị và các bảo tàng vườn quốc gia.

Trong bài viết này, chúng ta sẽ tìm hiểu thêm về hệ thống tưới cây tự động, cách thức hoạt động, các thành phần và lợi ích của nó Hy vọng những thông tin này sẽ giúp mọi người hiểu rõ hơn về hệ thống tưới cây

tự động cũng như áp dụng công nghệ này một cách hiệu quả trong công việc của mình.

Trang 3

Mục Lục CHƯƠNG I : Tổng Quan Về Hệ Thống Chăm Sóc và Theo dõi Quá Trình

sinh Trưởng của cây cà chua bi

Giới Thiệu Tính Năng Hệ Thống

Khả năng ứng dụng trong thực tế của để tài

CHƯƠNG II : Phân tích công nghệ hệ thống

Giới thiệu linh kiện và cảm biến

Phân tích quy trình thực hiện

CHƯƠNG III : Thiết kế, chế tạo và lập trình điều khiển hệ thống

Sơ đồ hệ thống

Sơ đồ thuật toán

Nguyên Lý Hoạt Động

CHƯƠNG IV : Thiết kế giao diện điều khiển giám sát

Trình tự các bước, thao tác chính thiết kế hệ thống

Vận hành giao diện điều khiển giám sát

CHƯƠNG V : Kết Luận và Kiến Nghị

Phụ Lục

Tài Liệu Tham Khảo

Trang 4

CHƯƠNG I

Tổng quan về hệ thống thăm sóc và theo dõi quá trình sinh

trưởng của cây cà chua bi

1.1 Giới thiệu tính năng hệ thống

Hệ Thống chăm sóc và theo dõi quá trình sinh trưởng của cây cà chua bi do nhóm tự thiết kế và phát triển, dựa trên các linh kiện như Raspberry pi 3, Esp32, Module Sim 800I, cảm biến ánh sáng

Hệ thống được thiết kế dựa trên ý tưởng của 1 hệ thống có khả năng dựa vào độ

ẩm không khí, đất; nhiệt độ trong không khí; cường độ ánh sáng; từ đó hệ thống sẽ

tự động đưa ra các phương pháp tưới nước hợp lý Trước khi xử lý tình huống, hệ thống sẽ sao lưu kết quả đo đạc và gửi lên web và gmail

Hình 1.1 Tổng quan thiết bị

1.2 Khả năng ứng dụng trong thực tế của đề tài

Trong thực tế, việc môi trường đang thay đổi thời tiết ngày một khó lường thì việc có 1 hệ thống có khả năng thay thế con người trong việc theo dõi thời tiết, thực hiện chăm sóc cây trồng một cách tự động là hoàn toàn cần thiết Người sử dụng hệ thống hoàn toàn có thể chủ động hơn trong việc chăm sóc cây trồng, cùng với đó là đưa ra những phương pháp đáp ứng kịp thời đối với mỗi tình huống đã và

Trang 5

đang xảy ra.

Hiện nay, việc chế tạo nên 1 hệ thống có khả năng như trên đã không còn là hiếm,có thể dễ dàng tìm thấy những hệ thống tự động tương tự trên web Nhóm đã chọn đề tài này do nó có khá nhiều ứng dụng thiết thực trong thực tế cũng như đáp ứng được những yêu cầu mà môn học đề ra, cùng với đó là niềm hứng thú khi có thể tự chế tạo nên 1 hệ thống tuy chưa hoàn chỉnh nhưng đã có thể áp dụng trong đời sống.

Trang 7

HDMI hỗ trợ phiên bản 1.3/1.4 và Composite RCA (PAL and NTSC) 10/100 BaseT Ethernet socket

Camera interface (CSI), để kết nối với camera

Display interface (DSI): được sử dụng để kết nối Raspberry Pi với màn hình cảm ứng

Khe cắm thẻ microSD: đễ lưu trữ dữ liệu

Micro USB power source

VideoCore IV multimedia/3D graphics core @ 400MHz/300MHz

2.1.2 ESP 32

Hình 2.2 ESP 32

Giới thiệu

ESP32 là một series các vi điều khiển trên một vi mạch giá rẻ, năng lượng thấp

có tích hợp WiFi và dual-mode Bluetooth (tạm dịch: Bluetooth chế độ kép) Dòng ESP32 sử dụng bộ vi xử lý Tensilica Xtensa LX6 có hai biến thể lõi kép và lõi đơn, và bao gồm các công tắc antenna tích hợp, RF balun, bộ khuếch đại công suất,

bộ khuếch đại thu nhiễu thấp, bộ lọc và module quản lý năng lượng.

Thông số kỹ thuật chính

CPU: Xtensa Dual-Core LX6 microprocessor.

Chạy hệ 32 bit

Trang 8

Tốc độ xử lý từ 160 MHz đến 240 MHz

ROM: 448 Kb

Tốc độ xung nhịp từ 40 Mhz ÷ 80 Mhz (có thể tùy chỉnh khi lập trình) RAM: 520 Kb SRAM liền chip Trong đó 8 Kb RAM RTC tốc độ cao – 8 Kb RAM RTC tốc độ thấp (dùng ở chế độ DeepSleep).

2 bộ chuyển đổi số sang tương tự (DAC) 8 bit

18 kênh bộ chuyển đổi tương tự sang số (ADC) 12 bit.

2 cổng giao tiếp I²C

3 cổng giao tiếp UART

3 cổng giao tiếp SPI (1 cổng cho chip FLASH )

2 cổng giao tiếp I²S

10 kênh ngõ ra điều chế độ rộng xung (PWM)

Trang 9

Cảm biến độ ẩm đất có thể sử dung tưới hoa tự động khi không có người quản

lý khu vườn của bạn hoặc dùng trong những ứng dụng tương tự như trồng cây.

Độ nhạy của cảm biến độ ẩm đất có thể tùy chỉnh được (bằng cách điều chỉnh chiết áp màu xanh trên board mạch) Phần đầu DO được cắm vào đất để phát hiện

độ ẩm của đất, khi độ ầm của đất đạt ngưỡng thiết lập, đầu ra DO sẽ chuyển trạng thái từ mức thấp lên mức cao.

Thông số kỹ thuật

Điện áp làm việc 3.3V ~ 5V

Có lỗ cố định để lắp đặt thuận tiện

PCB có kích thước nhỏ 3.2 x 1.4 cmỗ

Sử dung chip LM393 để so sánh, ổn định làm việc

2.1.4 Cảm biến độ ẩm, nhiệt độ không khí

Hình 2.4 Cảm biến DHT11

Giới thiệu

DHT11 là một cảm biến kỹ thuật số giá rẻ để cảm nhận nhiệt độ và độ ẩm Cảm biến này có thể dễ dàng giao tiếp với bất kỳ bộ vi điều khiển vi nào như Arduino, Raspberry Pi, để đo độ ẩm và nhiệt độ ngay lập tức DHT11 là một cảm biến độ

ẩm tương đối Để đo không khí xung quanh, cảm biến này sử dụng một điện trở nhiệt và một cảm biến độ ẩm điện dung Cảm biến DHT11 bao gồm một phần tử cảm biến độ ẩm điện dung và một điện trở nhiệt để cảm nhận nhiệt độ Tụ điện cảm biến độ ẩm có hai điện cực với chất nền giữ ẩm làm chất điện môi giữa chúng Thay đổi giá trị điện dung xảy ra với sự thay đổi của các mức độ ẩm IC đo, xử lý các giá trị điện trở đã thay đổi này và chuyển chúng thành dạng kỹ thuật số Để đo

Trang 10

nhiệt độ, cảm biến này sử dụng một nhiệt điện trở có hệ số nhiệt độ âm, làm giảm giá trị điện trở của nó khi nhiệt độ tăng Để có được giá trị điện trở lớn hơn ngay cả đối với sự thay đổi nhỏ nhất của nhiệt độ, cảm biến này thường được làm bằng gốm bán dẫn hoặc polymer.

Thông số kỹ thuật

Điện áp hoạt động: 3,3 ~ 5V.

Dòng tiêu thụ: max 2,5mA khi truyền dữ liệu.

Dải đo độ ẩm: 20% - 90% RH, sai số ±5%RH.

Dải đo nhiệt độ: 0°C ~ 50°C, sai số ±2°C.

Tần số lấy mẫu tối đa: 1Hz (1 giây 1 lần).

Thông số kỹ thuật chính

Điện áp đầu vào: 6 – 12V ( điện áp khuyên dùng: 9 – 12 V DC – 1A) Dòng điện tiêu thụ: 0.5 – 0.7 A

Trang 11

Đường kính động cơ: 27mm

Đường kinh đầu máy bơm: 44mm

Tổng chiều dài máy bơm: 60mm

Lưu lượng bơm: 1,5 – 2L /Min

Chiều dài ống hút giới hạn: 2m

Khả năng đẩy cao: 3m

Phiên bản hiện tại của Arduino Uno R3 đi kèm với giao diện USB, 6 chân đầu vào analog, 14 cổng kỹ thuật số I / O được sử dụng để kết nối với các mạch điện tử, thiết bị bên ngoài Trong đó có 14 cổng I / O, 6 chân đầu ra xung PWM cho phép các nhà thiết kế kiểm soát và điều khiển các thiết bị mạch điện tử ngoại vi một cách trực quan.

Thông số kỹ thuật chính

Trang 12

Vi điều khiển: ATmega328P(8bits)

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

Tần số hoạt động: 16 MHz

Điện áp đầu vào khuyên dùng: 7VDC - 12VDC

Điện áp vào giới hạn: 6-20V DC

Số chân Digital I/O 14 (6 chân hardware PWM)

Số chân Analog 6 (độ phân giải 10bit)

Dòng tối đa trên mỗi chân I/O 30 mA

LCD 2004 sử dụng driver HD44780, có khả năng hiển thị 4 dòng với mỗi dòng

20 ký tự, màn hình có độ bền cao, rất phổ biến, nhiều code mẫu và dễ sử dụng thích hợp cho những người mới học và làm dự án.

Thông số kỹ thuật

Điện áp hoạt động là 5V

Kích thước: 98 x 60 x 13.5 mm

Chữ đen, nền xanh dương/ chữ trắng, nền xanh dương

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

Trang 22

Phụ Lục

Code của Raspberry pi 3b

# Khai báo các thư viện thời gian, firebase

Trang 23

if ser.in_waiting > 0: # nếu nhận tín hiệu gửi từ arduino

Doamdat = float(ser.readline().decode('utf-8').rstrip()) # đọc dữ liệu từ arduino bỏ các ký tự /n, khoảng trắng và ép về kiểu nguyên

print("Do am dat: " + str(Doamdat))

# tạo dữ liệu trên firebase

dulieu1 = {"DoAmDat": Doam, "NhietDoKhongKhi": Nhietdokk,"Doamcaidat": Doamcaidat} dulieu2 = {"Giay": Giay, "Gio": Gio, "Phut": Phut}

# Khởi tạo dữ liệu trên firebase set liên tục

Trang 24

SoftwareSerial serialSIM900(RX_PIN, TX_PIN); // Cài đặt modulsim

const int DHTTYPE = DHT11;

DHT dht(DHTpin, DHTTYPE); // Cảm biến nhiệt độ, độ ẩm không khí

void tinnhan(float nhietdo, float doamkk, float doamdat) { // Thông báo bằng tin nhắn

//Nội dung tin nhắn muốn gửi

//Thiết lập định dạng tin nhắn là ASCII để có thể gửi tin nhắn dạng text

serialSIM900.println("AT+CMGF=1\r\n");

delay(1000); //Cứ mỗi lệnh AT ta cần có thời gian delay để Sim800 thực thi

//Cài đặt số điện thoại muốn gửi tin nhắn đến, và nội dung tin nhắn

void inramanhinh(float temp, float humi, float doamdat) {

lcd.clear(); // Xóa màn hình trước khi hiển thị lại

Trang 25

// Tính thời gian tính được ở đơn vị giờ, phút, giây

unsigned long thoigiangiay = thoigianbom / 1000;

unsigned long gio = thoigiangiay / 3600;

unsigned long phut = (thoigiangiay % 3600) / 60;

unsigned long giay = (thoigiangiay % 3600) % 60;

// Tính thời gian tính được ở đơn vị giờ, phút, giây

unsigned long thoigiangiay = thoigianbom / 1000;

unsigned long gio = thoigiangiay / 3600;

unsigned long phut = (thoigiangiay % 3600) / 60;

unsigned long giay = (thoigiangiay % 3600) % 60;

Trang 26

// Tính thời gian tính được ở đơn vị giờ, phút, giây

unsigned long thoigiangiay = thoigianbom / 1000;

unsigned long gio = thoigiangiay / 3600;

unsigned long phut = (thoigiangiay % 3600) / 60;

unsigned long giay = (thoigiangiay % 3600) % 60;

dht.begin(); //Khởi động cảm biến

serialSIM900.begin(9600); // Định tốc độ bau với modulsim 800A

float h = dht.readHumidity(); //Đọc độ ẩm không khí

float t = dht.readTemperature(); //Đọc nhiệt độ không khí

float doamdat = map(analogRead(cbdoam), 330, 1020, 100, 0);

float anhsang = analogRead(cbanhsang);

unsigned long thoigianbatdau = 0;

unsigned long thoigianbom = 0;

int doamcaidat1 = 70;

delay(1000);

if (Serial.available() > 0) {

int Chonchedo = Serial.parseInt();

int CdDACD = Serial.parseInt();

lcd.setCursor(0, 3);

Trang 27

int tinhieubom = Serial.parseInt();

int tinhieuden = Serial.parseInt();

Trang 28

card { background-color: white; box-shadow: 2px 2px 12px 1px rgba(140,140,140,.5); } cards { max-width: 700px; margin: 0 auto; display: grid; grid-gap: 2rem; grid-template-columns:repeat(auto-fit, minmax(320px, 1fr)); }

reading { font-size: 2.8rem; }

timestamp { color: #bebebe; font-size: 1rem; }

card-title{ font-size: 1.2rem; font-weight : bold; }

card.temperature { color: #B10F2E; }

Trang 29

transition: 4s;

}

input:checked + slider { background-color: #2196F3; }

input:focus + slider {

box-shadow: 0 0 1px #2196F3; }

input:checked + slider:before { -webkit-transform: translateX(26px); -ms-transform: translateX(26px); transform: translateX(26px); }

/* Rounded sliders */

slider.round {

border-radius: 34px;

Trang 30

<p><span style="font-size:30px"> CHỌN CHẾ ĐỘ </span></p>

<p><label>CHẾ ĐỘ TỰ ĐỘNG : </label><button onclick="cdtd()">Auto</button></p> <p><label>CHẾ ĐỘ CÀI ĐẶT : </label><button onclick="cdcd()">Set</button></p>

<p><label>CHẾ ĐỘ THỦ CÔNG : </label><button onclick="cdtc()">Manual</button></p>

<label> HỆ THỐNG ĐANG Ở CHẾ ĐỘ : </label>

<div class="card temperature">

<p class="card-title"><i class="fas fa-thermometer-half"></i> NHIỆT ĐỘ </p><p><spanclass="reading"><span id="t1"></span> &deg;C</span></p><p class="timestamp">Last Reading: <spanid="rt1"></span></p>

</div>

<div class="card humidity">

<p class="card-title"><i class="fas fa-tint"></i> ĐỘ ẨM KHÔNG KHÍ </p><p><spanclass="reading"><span id="h1"></span> &percnt;</span></p><p class="timestamp">Last Reading: <spanid="rh1"></span></p>

</div>

Trang 31

class="reading"><span id="h2"></span> &percnt;</span></p><p class="timestamp">Last Reading: <spanid="rh1"></span></p>

</div>

<div class="card temperature">

<p class="card-title"><i class="fas fa-tint"></i> THỜI GIAN BƠM </p><p><spanclass="reading"><span id="t2"></span></span></p><p class="timestamp">Last Reading: <spanid="rh1"></span></p>

<input type="checkbox" checked id="myCheck1" onclick="myFunction1()">

<span class="slider round"></span>

</label>

<p><span style="font-size:30px"> TRẠNG THÁI BƠM </span><div id="tt3"></div></p> <label class="switch" id="switch1" >

<input type="checkbox" checked id="myCheck2" onclick="myFunction2()">

<span class="slider round"></span>

</label>

<p><span style="font-size:30px"> CẤU HÌNH WIFI ĐO </span></p>

Trang 32

<label>PASS1: </label>

<input type="text" id="pass1"><br><br>

<button onclick="sendwifiinfo()"> Send</button>

<script src="https://www.gstatic.com/firebasejs/8.2.9/firebase-app.js"></script> <script src="https://www.gstatic.com/firebasejs/8.2.9/firebase-database.js"></script>

Trang 33

var doam = snapshot.val();

var cdgiay = snapshot.val();

document.getElementById("t2").innerHTML = cdgio + " : " + cdphut + " : " + cdgiay ;});

Trang 34

});

document.getElementById("tt2").innerHTML = "TẮT"}

db.ref("/tdtt").update({

"bom":0

});

document.getElementById("tt3").innerHTML = "TẮT"}

function cdcd() {

db.ref("/chonchedo").update({

Ngày đăng: 04/05/2024, 12:45

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Tổng quan thiết bị - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 1.1. Tổng quan thiết bị (Trang 4)
Hình 2.1. Raspberry Pi 3 Giới thiệu - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 2.1. Raspberry Pi 3 Giới thiệu (Trang 6)
Hình 2.2. ESP 32 Giới thiệu - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 2.2. ESP 32 Giới thiệu (Trang 7)
Hình 2.3. Cảm biến độ ẩm Giới thiệu - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 2.3. Cảm biến độ ẩm Giới thiệu (Trang 8)
Hình 2.4. Cảm biến DHT11 Giới thiệu - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 2.4. Cảm biến DHT11 Giới thiệu (Trang 9)
Hình 2.5. Máy bơm RS385 Giới thiệu - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 2.5. Máy bơm RS385 Giới thiệu (Trang 10)
Hình 2.6. Arduino Uno R3 - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 2.6. Arduino Uno R3 (Trang 11)
Hình 2.7. Màn hình LCD 2004 Giới thiệu - Đề Tài Hệ Thống Chăm Sóc Và Theo Dõi Quá Trình Sinh Trưởng Cây Cà Chua Bi.pdf
Hình 2.7. Màn hình LCD 2004 Giới thiệu (Trang 12)

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

TÀI LIỆU LIÊN QUAN

w