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

HỆ THỐNG VƯỜN THÔNG MINH

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 (0 B, 36 trang )

BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
-----------------⸙∆⸙-----------------

MƠN HỌC: THỰC TẬP THỰC TẬP THIẾT KẾ HỆ THỐNG NHÚNG
TRONG CÔNG NGHIỆP
ĐỀ TÀI:
HỆ THỐNG VƯỜN THÔNG MINH

GVHD: Ths. Nguyễn Thanh Nghĩa
SVTH: Lê Đinh Hưng: 19161243
Nguyễn Như Nghĩa: 19161266

Tp. Hồ Chí Minh tháng năm

1


Mục lục
Mục lục...................................................................................................................................i
Danh sách hình ảnh...............................................................................................................iii
Danh sách bảng.....................................................................................................................iv
Chương 1.

TỔNG QUAN..................................................................................................1

1.1

ĐẶT VẤN ĐỀ.........................................................................................................1


1.2

MỤC TIÊU..............................................................................................................1

1.3

NỘi DUNG NGHIÊN CỨU....................................................................................1

1.4

GIỚI HẠN...............................................................................................................1

Chương 2.
2.1.

CƠ SỞ LÝ THUYẾT.......................................................................................1

NGƠN NGỮ PYTHON.........................................................................................1

2.1.1.

LỊCH SỬ VỀ PYTHON................................................................................2

2.1.2.

TÍNH NĂNG CỦA PYTHON.......................................................................2

2.1.3.

LỢI ÍCH CỦA VIỆC SỬ DỤNG NGÔN NGỮ PYTHON.........................3


2.2.

TỔNG QUAN VỀ SENSOR.................................................................................4

2.2.1.

KHÁI NIỆM SENSOR..................................................................................4

2.2.2.

PHÂN LOẠI SENSOR..................................................................................4

Chương 3.

TÍNH TỐN, THIẾT KẾ VÀ THI CÔNG.....................................................8

3.1.

TỔNG QUAN VỀ HỆ THỐNG...........................................................................8

3.1.1.

GIỚI THIỆU VỀ KIT RASPBERRY PI4.......................................................8

3.1.2.

ĐẶC TRƯNG CỦA RASPBERRY PI4..........................................................9

3.1.3.


CẢM BIẾN ĐO ĐỘ ẨM ĐẤT........................................................................11

3.1.4.

CẢM BIẾN MƯA............................................................................................12

3.1.5.

MÀN HÌNH LCD 16X2...................................................................................13

3.2.

SƠ ĐỒ KHỐI.......................................................................................................15

3.3.

CODE PYTHON VÀ THIẾT KẾ APP ĐIỀU KHIỂN....................................15

3.3.1.

CODE PYTHON..............................................................................................15

3.3.2.

THIẾT KẾ APP ĐIỀU KHIỂN THÔNG QUA MQTT DASHBOARD....22

3.4.

SƠ ĐỒ KẾT NỐI PHẦN CỨNG.......................................................................26


Chương 4.

KẾT QUẢ THỰC HIỆN................................................................................28

4.1

Quá trình thực hiện đề tài......................................................................................28

4.2

Kết quả..................................................................................................................30



Khảo sát hoạt động của hệ thống:..........................................................................30

TÀI LIỆU THAM KHẢO....................................................................................................33

i


Danh sách hình ản

Hình 2.1 Các loại sensor thơng dụng.........................................................................4
Hình 3.1 Kit Raspberry pi4 ......................................................................................8
Hình 3.2 Sơ đồ SPIO của Raspberry Pi4................................................................11
Hình 3.3: SOIL MOISTURE SENSOR.................................................................12
Hình 3.4: RAIN SENSOR ...................................................................................13
Hình 3.5: LCD 16x2..............................................................................................14

Hình 3.6 Sơ đồ khối hệ thống vườn thơng minh.....................................................15
Hình 4.1 Viết code và mơ phỏng thử hệ thống.......................................................28
Hình 4.2 Mua và kết nối các linh kiện....................................................................28
Hình 4.3 Xây dựng app...........................................................................................29

ii


Danh sách bảng
Bảng 2.1 Các phiên bản Python đã phát hành ..........................................................2
Bảng 2.2 Chuyển đổi giữa đáp ứng và kích thích......................................................4
Bảng 2.3 Phân loại theo dạng kích thích...................................................................5
Bảng 2.4 Cảm biển thụ động.....................................................................................6
Bảng 2.5 Cảm biến tích cực......................................................................................6
Bảng 3.1: Thơng tin ngày phát hành, hình thức và kích thước của các phiên bản Pi.8

iii


Chương 1.

TỔNG QUAN

1.1 ĐẶT VẤN ĐỀ
Nền nông nghiệp của nước ta là nền nơng nghiệp vẫn cịn lạc hậu cũng như chưa
có nhiều ứng dụng khoa học kĩ thuật được áp dụng vào thực tế. Rất nhiều quy trình
kĩ thuật trồng trọt, chăm sóc được tiến hành một cách chủ quan và khơng đảm bảo
được đúng u cầu. Có thể nói trong nơng học ngồi những kĩ thuật trồng trọt, chăm
sóc thì tưới nước là một trong các khâu quan trọng nhất trong trồng trọt, để đảm bảo
cây sinh trưởng và phát triển bình thường, tưới đúng và tưới đủ theo yêu cầu nông

học của cây trồng sẽ không sinh sâu bệnh, hạn chế thuốc trừ sâu cho sản phẩm an
toàn, đạt năng suất, hiệu quả cao. Mặt khác hiện nay nước ta đang trong giai đoạn
cơng nghiệp hóa, hiện đại hóa các thiết bị máy móc tự động được đưa vào phục vụ
thay thế sức lao động của con người. Vì vậy nhóm chúng em đã thực hiện đề tài đó
là thiết kế vườn thơng minh.
1.2 MỤC TIÊU
-

Hiểu được nguyên lý hoạt động của các loại cảm biến

-

Hiểu được cách kết nối và điều khiển các module thông qua kit Raspberry

-

Biết vận dụng ngơn ngữ Python để lập trình nhúng

-

Sản phẩm phải thỏa mãn được các yêu cầu đặt ra như: khi mưa thì motor
khơng hoạt động, độ ẩm cao motor cũng không hoạt động,…

1.3 NỘi DUNG NGHIÊN CỨU
-

Chương 2: Cơ sở lý thuyết

-


Chương 3: Tính tốn thiết kế và thi công

1.4 GIỚI HẠN
+ Không thể tự điều chỉnh độ ẩm để thực hiện tưới nước theo nhu cầu giống cây
trồng.
+ Đề tài chỉ nhận vào tín hiệu Digital mà chưa tối ưu được việc nhận tín hiệu
Analog để thực hiện những nhiệm vụ quan trọng như đo nồng độ PH,..
+ Mơ hình vườn thơng minh cịn khá đơn giản, cần phải tối ưu hơn.

Chương 2.

CƠ SỞ LÝ THUYẾT
1


2.1. NGÔN NGỮ PYTHON
2.1.1. LỊCH SỬ VỀ PYTHON
Python là một ngôn ngữ khá cũ được tạo ra bởi Guido Van Rossum. Thiết kế bắt
đầu vào cuối những năm 1980 và được phát hành lần đầu tiên vào tháng 2 năm
1991.
Vào cuối những năm 1980, Guido Van Rossum làm việc trong Amoeba, phân
phối một nhóm hệ điều hành. Ơng muốn sử dụng một ngơn ngữ thơng dịch như
ABC (ABC có cú pháp rất dễ hiểu) để truy cập vào những cuộc gọi hệ thống
Amoeba. Vì vậy, ơng quyết định tạo ra một ngôn ngữ mở rộng. Điều này đã dẫn đến
một thiết kế của ngơn ngữ mới, chính là Python sau này.\
Bảng 2.1Các phiên bản Python đã phát hành
Phiên bản
Python 1.0 (bản phát hành chuẩn đầu tiên)

Ngày phát hành

01/1994

Python 1.6 (Phiên bản 1.x cuối cùng)

05/09/2000

Python 2.0 (Giới thiệu list comprehension)

16/10/2000

Python 2.7 (Phiên bản 2.x cuối cùng)

03/07/2010

Python 3.0 (Loại bỏ cấu trúc và mơ-đun trùng lặp)

03/12/2008

Python 3.8.5 (Bản mới nhất tính đến thời điểm cập nhật bài) 20/07/2020
2.1.2. TÍNH NĂNG CỦA PYTHON
Ngơn ngữ lập trình đơn giản, dễ học: Python có cú pháp rất đơn giản, rõ ràng.
Nó dễ đọc và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác như
C++, Java, C#. Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập trung
vào những giải pháp chứ khơng phải cú pháp.
Miễn phí, mã nguồn mở: Bạn có thể tự do sử dụng và phân phối Python, thậm
chí là dùng nó cho mục đích thương mại. Vì là mã nguồn mở, bạn khơng những có
thể sử dụng các phần mềm, chương trình được viết trong Python mà cịn có thể thay
đổi mã nguồn của nó. Python có một cộng đồng rộng lớn, khơng ngừng cải thiện nó
mỗi lần cập nhật.
Khả năng di chuyển: Các chương trình Python có thể di chuyển từ nền tảng

này sang nền tảng khác và chạy nó mà khơng có bất kỳ thay đổi nào. Nó chạy liền
mạch trên hầu hết tất cả các nền tảng như Windows, macOS, Linux.
2


Khả năng mở rộng và có thể nhúng: Giả sử một ứng dụng đòi hỏi sự phức tạp
rất lớn, bạn có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngơn ngữ
khác (có thể gọi được từ C) vào code Python. Điều này sẽ cung cấp cho ứng dụng
của bạn những tính năng tốt hơn cũng như khả năng scripting mà những ngơn ngữ
lập trình khác khó có thể làm được.
Thư viện tiêu chuẩn lớn để giải quyết những tác vụ phổ biến: Python có một
số lượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở
hơn rất nhiều, đơn giản vì khơng phải tự viết tất cả code.
2.1.3. LỢI ÍCH CỦA VIỆC SỬ DỤNG NGƠN NGỮ PYTHON
Cú pháp đơn giản: Lập trình bằng Python rất thú vị. Nó dễ dàng để hiểu và
code bằng Python. Tại sao? Cú pháp của Python khá giống với ngơn ngữ tự nhiên,
ví dụ như đoạn code dưới đây:
3. a = 2
4. b = 3
5. sum = a + b
6. print(sum)
Ngay cả khi chưa lập trình bao giờ, bạn có thể dễ dàng đoán được đoạn code này
thêm vào hai số a, b, tính tổng và in tổng của chúng.
Khơng q khắt khe: Bạn không cần xác định kiểu của một biến trong Python,
không cần thêm dấu chấm phẩy vào cuối câu lệnh. Python buộc bạn tuân theo
những bài tập có sẵn (như chỉ dẫn đúng). Điều nhỏ nhặt này giúp cho việc học
Python dễ dàng với người mới hơn rất nhiều.
Viết code ít hơn: Python cho phép viết những chương trình có nhiều chức năng
tốt hơn với ít dịng code hơn. Bạn có thể tham khảo mã nguồn game Tic-tac-toe
(pastebin.com/7LTkj2V5) với giao diện đồ họa và đối thủ máy tính thơng minh mà

chỉ chưa đến 500 dòng code. Đây chỉ là một ví dụ. Bạn có thể sẽ ngạc nhiên về
những gì mà Python có thể làm được khi tìm hiểu sâu hơn về nó.
Cộng đồng lớn, hỗ trợ tốt: Python có một cộng đồng hỗ trợ rộng lớn, có nhiều
diễn đàn hoạt động trực tuyến giúp bạn khi bị mắc kẹt với vấn đề nào đó trong
Python:
3


2.2. TỔNG QUAN VỀ SENSOR
2.2.1. KHÁI NIỆM SENSOR
Sensor (hay cảm biến) là một thiết bị cảm nhận, biến đổi các đại lượng vật lý và
các đại lượng khơng có tính chất điện cần đo thành các đại lượng có thể đo và xử lý
được.
Các đại lượng đo thường khơng có tính chất điện(như nhiệt độ, áp suất, trọng
lượng,..) tác động lên cảm biến cho ta đại lượng đặc trưng mang tính chất điện
như(điện tích, điện áp, dịng điện hay trở kháng) chứa đựng thông tin cho phép xác
định giá trị của đại lượng cần đo.

Hình 2.1 Các loại sensor thơng dụng
2.2.2. PHÂN LOẠI SENSOR
Các bộ cảm biến được phân loại theo đặc trưng sau đây:
+ Theo nguyên lý chuyển đổi giữa đáp ứng kích thích.
Bảng 2.2 Chuyển đổi giữa đáp ứng và kích thích
Hiện tượng
Vật lý

Chuyển đổi và đáp ứng kích thích
Nhiệt điện, quang điện, quang từ, điện từ, quang đàn

Hóa học

Sinh học

hồi, từ điện, nhiệt từ
Biến đổi hóa học, biến đổi điện hóa, phân tích phổ
Biến đổi sinh hóa, biến đổi vật lý, hiệu ứng trên cơ thể

sống
+ Phân loại theo dạng kích thích

Bảng 2.3 Phân loại theo dạng kích thích
4


Âm thanh
Điện

Biên pha, phân cực, phổ, tốc độ truyền sóng
Điện tích, dịng điện, điện thế, điện áp, điện trường, điện

Từ
Quang

dẫn, hằng số điện môi
Từ trường, từ thông, cường độ điện trường, độ từ thẩm
Biên, pha, phân cực, phổ, tốc độ truyền, hệ số phát xạ,



khúc xạ, hệ số hấp thụ, hệ số bức xạ.
Vị trí, lực, áp suất, gia tốc, vận tốc, ứng suất, độ cứng,


Nhiệt
Bức xạ

moment, khối lượng tỷ trọng, vận tốc chất lưu, độ nhớt
Nhiệt dộ, thông lượng, nhiệt dung, tỉ nhiệt
Kiểu, năng lượng, cường độ

+ Phân loại theo phạm vi sử dụng
 Khả năng quá tải
 Tốc độ đáp ứng
 Độ ổn định
 Tuổi thọ
 Điều kiện lựa chọn
 Kích thước, trọng lượng
+ Phân loại theo tính năng
 Độ nhạy
 Độ chính xác
 Độ phân giải
 Độ chọn lọc
 Độ tuyến tính
 Cơng suất tiêu thụ
 Dải tần
 Độ trễ
+ Phân loại theo lĩnh vực ứng dụng
 Cơng nghiệp
 Nghiên cứu khoa học
 Mơi trường , khí tượng
 Thông tin, viễn thông
 Nông nghiệp

 Dân dụng
5


 Vũ trụ
 Quân sự
 Y học
+ Phân loại theo thơng số mơ hình mạch thay thế
 Cảm biến tích cực đầu ra là nguồn áp, nguồn dòng (NPN, PNP)
 Cảm biến thụ động được đặc trưng bời thông số R, L, C, M,.. tuyến tính hoặc
phi tuyến
 Đường cong chuẩn của cảm biến là đường cong được biểu diễn sự phụ thuộc
vào đại lượng điện (S) ở đầu ra của cảm biến vào giá trị của đại lượng cần đo
(M) ở đầu vào
+ Cảm biến thụ động và cảm biến tích cực
Bảng 2.4 Cảm biến thụ động
Đại lượng
Nhiệt độ

Thơng số biến đổi
Điện trở suất

Vật liệu làm cảm biến
Kim loại, platine, Nickel,
đồng, chất bán dẫn, thủy

Điện trở suất, độ từ thẩm

tinh
Hợp kim nickel và silic


Vị trí
Từ thơng của bức xạ

Điện trở suất
Điện trở suất

mạ, hợp kim sắt từ
Từ trở
Bán dẫn

quang
Độ ẩm

Điên trở suất, hằng số

Hợp kim polimere

Mức

điện môi
Hằng số điện môi

Cách điện lỏng

Hiệu ứng sử dụng
Áp điện
Nhiệt điện
Cảm ứng điện từ
Hiệu ứng Hall

Hóa quang

Tín hiệu ra
Điện tích
Điện áp
Điện áp
Điện áp
Điện tích

Phát xạ quang

Dịng điện

Hiệu ứng quang thấp

Điện áp

Hiệu ứng quang điện từ

Điện áp

Biến dạng

Bảng 2.5 Cảm biến tích cực
Đại lượng vật lý cần đo
Lực, áp suất, gia tốc
Nhiệt độ
Tốc độ (Vận tốc)
Vị trí
Từ thơng, bức xạ quang


6


7


Chương 3.

TÍNH TỐN, THIẾT KẾ VÀ THI CƠNG

3.1. TỔNG QUAN VỀ HỆ THỐNG
3.1.1. GIỚI THIỆU VỀ KIT RASPBERRY PI4
Raspberry Pi là một máy tính rất nhỏ gọn, kích thước hai cạnh như bằng
khoảng một cái thẻ ATM và chạy hệ điều hành Linux. Raspberry Pi được phát triển
bởi Raspberry Pi Foundation - một tổ chức phi lợi nhuận.Bạn có thể sử dụng
Raspberry Pi như một máy vi tính bởi người ta đã tích hợp mọi thứ cần thiết trong
đó. Bộ xử lí SoC Broadcom BCM2835 của nó bao gồm CPU, GPU, RAM, khe cắm
thẻ microSD, Wi-Fi, Bluetooth và 4 cổng USB 2.0.
Với Raspberry Pi, bạn chỉ cần cài hệ điều hành, gắn chuột, bàn phím và màn
hình là có thể sử dụng như một máy vi tính. Raspberry Pi khơng hồn tồn có thể
thay thế được máy tính để bàn hoặc laptop nhưng nó là một thiết bị đa năng có thể
được sử dụng cho những hệ thống điện tử, thiết lập hệ thống tính tốn, những dự án
DIY… với chi phí rẻ.

Hình 3.1 Kit Raspberry pi4
Bảng 3.1: Thơng tin ngày phát hành, hình thức và kích thước của các phiên bản Pi
Raspberry Pi Version

8


Release

Form

Dimensions (in

Date

Factor

mm)


Raspberry Pi 4 Model B

2019-2020

Standard

85.6 x 56.5

Raspberry Pi 3 Model B+

2018

Standard

85.6 x 56.5


Raspberry Pi 3 Model B

2016

Standard

85.6 x 56.5

Raspberry Pi 3 Model A+

2018

Compact

65 x 56.5

Raspberry Pi Zero Wireless with

2017

Mini

65 x 30 x 5

Raspberry Pi Zero Wireless

2016

Mini


65 x 30 x 5

Raspberry Pi Zero

2015

Mini

65 x 30 x 5

Raspberry Pi 2 Model B

2015

Standard

85.6 x 56.5

Raspberry Pi 1 Model B +

2014

Standard

85.6 x 56.5

Raspberry Pi 1 Model B

2012


Standard

85.6 x 56.5

Raspberry Pi 1 Model A+

2014

Compact

65 x 56.5

Raspberry Pi 1 Model A

2013

Standard

85.6 x 56.5

Headers

3.1.2. ĐẶC TRƯNG CỦA RASPBERRY PI4
+ Về phần cứng
• Nhân 64-bit ARM-Cortex A72 chạy với tốc độ 1.5GHz
• Có nhiều options như 1, 2 and 4 Gigabyte RAM
• H.265 (HEVC) hardware decode (up to 4Kp60)
• H.264 hardware decode (up to 1080p60)
• VideoCore VI 3D Graphics
9



• Supports dual HDMI display output up to 4Kp60
+ Về giao diện
• 802.11 b/g/n/ac Wireless LAN
• Bluetooth 5.0 with BLE
• 1x SD Card
• 2x micro-HDMI ports supporting dual displays up to 4Kp60 resolution
• 2x USB2 ports
• 2x USB3 ports
• 1x Gigabit Ethernet port (supports PoE with add-on PoE HAT)
• 1x Raspberry Pi camera port (2-lane MIPI CSI)
• 1x Raspberry Pi display port (2-lane MIPI DSI)
• 28x user GPIO supporting various interface options:
– Up to 6x UART
– Up to 6x I2C
– Up to 5x SPI
– 1x SDIO interface
– 1x DPI (Parallel RGB Display)
– 1x PCM
– Up to 2x PWM channels
– Up to 3x GPCLK outputs

10


Hình 3.2 Sơ đồ SPIO của Raspberry Pi4
3.1.3. CẢM BIẾN ĐO ĐỘ ẨM ĐẤT
Cảm biến độ ẩm đất Soil Moisture Sensor thường được sử dụng trong các mơ
hình tưới nước tự động, vườn thông minh,..., cảm biến giúp xác định độ ẩm của đất

qua đầu dò và trả về giá trị Analog, 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 số kỹ thuật:


Điện áp hoạt động: 3.3~5VDC



Tín hiệu đầu ra:
o

Analog: theo điện áp cấp nguồn tương ứng.

o

Digital: High hoặc Low, có thể điều chỉnh độ ẩm mong muốn
bằng biến trở thông qua mạch so sánh LM393 tích hợp.



Kích thước: 3 x 1.6cm.

Sơ đồ chân:
VCC
GND
DO

3.3V ~ 5V
GND của nguồn ngồi

Đầu ra tín hiệu số (mức cao hoặc mức thấp)
11


AO

Đầu ra tín hiệu tương tự (Analog)

Hình 3.3: SOIL MOISTURE SENSOR
3.1.4. CẢM BIẾN MƯA
Cảm biến mưa sử dụng để phát hiện mực nước, trời mưa, hay các mơi trường
có nước. Mạch cảm biến mưa được đặt ngoài trời để kiểm tra trời có mưa khơng,
qua đó truyền tín hiệu điều khiển đóng / ngắt rơ le.
Mạch cảm biến mưa gồm 2 bộ phận:
+ Bộ phận cảm biến mưa được gắn ngoài trời
+ Bộ phận điều chỉnh độ nhạy cần được che chắn
Mạch cảm biến mưa hoạt động bằng cách so sánh hiệu điện thế của mạch
cảm biến nằm ngoài trời với giá trị định trước (giá trị này thay đổi được thơng qua 1
biến trở màu xanh) từ đó phát ra tín hiệu đóng / ngắt rơ le qua chân D0.
Khi cảm biến khô ráo (trời không mưa), chân D0 của module cảm biến mưa
sẽ được giữ ở mức cao (5V-12V). Khi có nước trên bề mặt cảm biến (trời mưa), đèn
LED màu đỏ sẽ sáng lên, chân D0 được kéo xuống thấp (0V).
+ Mạch hoạt động với nguồn 5V.

12


Hình 3.4: RAIN SENSOR
3.1.5. MÀN HÌNH LCD 16X2
+ LCD 16×2 được sử dụng để hiển thị trạng thái hoặc các thơng số.

+ LCD 16×2 có 16 chân trong đó 8 chân dữ liệu (D0 – D7) và 3 chân điều khiển
(RS, RW, EN).
+ 5 chân còn lại dùng để cấp nguồn và đèn nền cho LCD 16×2.
+ 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 16×2 có thể sử dụng ở chế độ 4 bit hoặc 8 bit tùy theo ứng dụng ta đang
làm.Các giai đoạn xử lý ảnh

13


Hình 3.5: LCD 16x2
Chức năng của từng chân LCD 16x2:
- Chân số 1 - VSS : chân nối đất cho LCD được nối với GND của mạch điều khiển
- Chân số 2 - VDD : chân cấp nguồn cho LCD, được nối với VCC=5V của mạch
điều khiển
- Chân số 3 - VE : điều chỉnh độ tương phản của LCD
- Chân số 4 - RS : chân chọn thanh ghi, được nối với logic "0" hoặc logic "1":
+ Logic “0”: Bus DB0 - DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ
“ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)
+ Logic “1”: Bus DB0 - DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD
- Chân số 5 - R/W : chân chọn chế độ đọc/ghi (Read/Write), được nối với logic “0”
để ghi hoặc nối với logic “1” đọc
- Chân số 6 - E : chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus
DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân này như
sau:
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào thanh ghi bên trong khi
phát hiện một xung (high-to-low transition) của tín hiệu chân E
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên

(low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống
mức thấp
- Chân số 7 đến 14 - D0 đến D7: 8 đường của bus dữ liệu dùng để trao đổi thơng tin
với MPU. Có 2 chế độ sử dụng 8 đường bus này là: Chế độ 8 bit (dữ liệu được
14


truyền trên cả 8 đường, với bit MSB là bit DB7) và Chế độ 4 bit (dữ liệu được
truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7)
- Chân số 15 - A : nguồn dương cho đèn nền
- Chân số 16 - K : nguồn âm cho đèn nền.
3.2. SƠ ĐỒ KHỐI

Hình 3.6 Sơ đồ khối hệ thống vườn thơng minh
Giải thích sơ đồ khối:
+ Rain sensor sẽ xác nhận thơng tin về việc có hay khơng có mưa, sau đó
Soil moisture sensor sẽ thực hiện việc đo độ ẩm.
+ Raspberry Pi4 sẽ nhận thông tin từ 2 cảm biến ở trên để xử lý
+ Sau khi xử lý xong, Pi4 sẽ gửi tín hiệu điều khiển đến Motor đồng thời gửi
thông tin đến App MQTT dashboard để thơng báo đến chủ vườn về tình
trạng hoạt động của hệ thống
3.3. CODE PYTHON VÀ THIẾT KẾ APP ĐIỀU KHIỂN
3.3.1. CODE PYTHON
import time
import os
import RPi.GPIO as GPIO
import Adafruit_DHT
15



from urllib.parse import urlparse
import paho.mqtt.client as paho
import os,sys

GPIO.setmode(GPIO.BOARD)
GPIO.setwarnings(False)
# Define GPIO to LCD mapping
LCD_RS = 7
LCD_E = 11
LCD_D4 = 12
LCD_D5 = 13
LCD_D6 = 15
LCD_D7 = 16
RELAY_PIN = 29
SOIL_SENSOR_PIN = 31
Rain_SENSOR_PIN = 33
'''
define pin for lcd
'''
# Timing constants
E_PULSE = 0.0005
E_DELAY = 0.0005
delay = 1
GPIO.setup(LCD_E, GPIO.OUT) # E
GPIO.setup(LCD_RS, GPIO.OUT) # RS
GPIO.setup(LCD_D4, GPIO.OUT) # DB4
GPIO.setup(LCD_D5, GPIO.OUT) # DB5
GPIO.setup(LCD_D6, GPIO.OUT) # DB6
GPIO.setup(LCD_D7, GPIO.OUT) # DB7
16




Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×