ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA ĐIỆN TỬ - VIỄN THÔNG
---------------o0o---------------
BÁO CÁO
ĐỒ ÁN MÔN HỌC
THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN GIÁM SÁT
NHIỆT ĐỘ, ĐỘ ẨM
GVHD:
SVTH:
Ts.Tăng Anh Tuấn
Hồ Tấn Nhân
Lớp: 17DT1
Đà nẵng, tháng 5, năm 2021
TÓM TẮT ĐỒ ÁN
Ở Việt Nam việc ứng dụng kỹ thuật điều khiển vào điều khiển khí hậu của nhà trồng rau
cũng đã có khắp nơi, các thiết bị điều khiển hầu như là nhập từ các nước có cơng nghệ tiến tiến
giá thành các thiết bị này tương đối cao, rất khó cho người nơng dân Việt Nam tiếp cận. Vì vậy
cần phải có những nghiên cứu và chế tạo các thiết bị trong nước sao cho đảm bảo được người
nơng dân có thể đầu tư được và dể sử dụng. Đây cũng chính là mục đích của người nghiên cứu
cần hướng tới nhằm tạo ra một sản phẩm tốt và hiện đại cho người nông dân Việt Nam.
Trong đề tài này chúng tôi cũng nghiên cứu hệ thống điều khiển qua mạng truyền thông Internet
nhằm nâng cao khả năng giám sát điều kiện môi trường của nhà trồng để đưa quyết định kịp thời
cho việc điều khiển tiểu khí hậu nhà trồng tốt hơn. Điều này sẽ góp phần tắng hiệu quả sản xuất
và thương mại hóa sản phẩm, tăng tiện ích cho con người.
Đề tài gồm 4 Phần :
Phần 1: Tổng quan đề tài ”Hệ thống Giám sát nhiệt độ, độ ẩm, tưới cây tự động”
Phần 2: Cơ sở lí thuyết
Phần 3: Thiết kế , thực hiện hệ thống
Phần 4: Kết quả, Tổng kết đề tài
Sau khi hoàn thành , kết quả phù hợp với tiêu chí đề ra giúp tiết kiệm thời gian và sức người
trong việc chăm sóc cây. Mơ hình có thể sử dụng ở vườn rau , thảm cỏ ,vườn hộ gia đình nhất là
những nơi có khn viên nhỏ của hộ gia đình ở khu đơ thị.
1
PHẦN 1: TỔNG QUAN ĐỀ TÀI
1.1 Đặt vấn đề :
Nhiệt độ và độ ẩm là hai yếu tố vô cùng quan trọng ảnh hưởng đến sự phát triển cũng như
năng suất và chất lượng của cây trồng. Chính vì vậy, để nâng cao năng suất, chất lượng hướng tới
lợi nhuận cao người nông dân cần theo dõi sát sao để điều chỉnh nhiệt độ và độ ẩm phù hợp với
từng giai đoạn sinh trưởng của từng loại cây trồng. Trong điều kiện biến đổi khí hậu với những
thay đổi thất thường như hiện nay, đây chính là một trong những vấn đề vơ cùng nan giải. Tuy
nhiên, với sự phát triển của khoa học cơng nghệ, nhà nơng hồn tồn có thể kiểm sốt được
những chỉ số này. Hệ thớng giám sát nhiệt đợ , độ ẩm và tưới nước tự độ ng với ứng dụng
Esp8266 chính là một trong những giải pháp hữu hiệu.
Esp8266 là gì và lý do nào khiến nhóm nghiên cứu chọn đây là giải pháp cho hệ thống giám sát
nhiệt độ, độ ẩm và tưới nước tự động của mình. Hiểu một cách đơn giản nhất, Esp8266 là một
dịng chíp vi điều khiển có thể lập trình để điều khiển các chân IO(đầu vào, đầu ra) . Đặc điểm nổi
bật của nó có kết nối Wi-Fi, vì vậy bạn có thể sử dụng nó để kết nối với mạng Wi-Fi, kết nối
Internet, lưu trữ máy chủ web với các trang web thực, để điện thoại thông minh của bạn kết nối
với nó, khơng có gì lạ khi con chip này đã trở thành thiết bị IoT phổ biến nhất hiện có. Bên cạnh
cịn có NodeMCU firmware mã nguồn mở LUA được phát triển cho chip wifi ESP8266. Firmware
NodeMCU đi kèm với bo ESP8266, là môi trường phát triển ứng dụng cực kỳ dễ sử dụng, với một
ngơn ngữ lập trình có thể học nhanh chóng ngay cả với những người ít am hiểu về điện tử và lập
trình. Đặc biệt, mức giá cho chi phí ứng dụng Esp8266 rất thấp và tính chất nguồn mở từ
firmware NodeMCU kết hợp với phần mềm Arduino IDE sẽ dễ dàng cho việc lập trình.
Chính vì vậy, khơng chỉ được áp dụng rộng rãi trên thế giới, hiện nay, Esp8266 được biết đến và
ứng dụng phổ biến trong sản xuất nông nghiệp, công nghiệp ở Việt Nam. Đây cũng là phương án
được nhiều đối tượng từ học sinh, sinh viên đang bước đầu tìm hiểu ứng dụng công nghệ vào sản
xuất công nghiệp, nông nghiệp, đời sống, đến các nhà khoa học, nhà sáng chế sản phẩm ứng
dụng công nghệ thông minh lựa chọn.
1.2 Mục tiêu đề tài:
Hiện nay trên thế giới, việc ứng dụng các công nghệ điều khiển vào trong sản xuất là rất
nhiều và cần thiết trong các ngành nghề kể cả trong nông nghiệp. Trong nông nghiệp, nhờ ứng
dụng các công nghệ điều khiển hiện đại mà năng suất và chất lượng cây trồng tăng lên đáng kể.
Mục tiêu của đề tài là nghiên cứu, phân tích và thiết kế được mạch có khả năng điều khiển và
giám sát hệ thống tưới nước tự động thông qua các thông tin thu thập về. Thông tin độ ẩm môi
trường, độ ẩm đất được cảm biến đo chuyển tới khối xử lý dữ liệu. Dựa vào các thông tin trên để
điểu khiển máy bơm tưới nước tự động.
2
Hình 1.1 Ảnh Minh Họa
1.3 Các tính năng của hệ thống :
Người dùng có thể chạy ứng dụng trên nhiều thiết bị từ smartphone, máy tính bảng cho
đến máy tính cá nhân. Theo đó, người dùng có thể quản lý hệ thống vườn cây của mình từ xa
thơng qua kết nối Internet tại bất cứ đâu.
Những tính năng cơ bản của hệ thống có thể vận hành tự động hoặc bán tự động, bao gồm: Điều
khiển hệ thống trực tiếp từ các thiết bị di động và máy tính, theo dõi các điều kiện trồng (nhiệt
độ, độ ẩm,…) thông qua biểu đồ ( theo giờ, ngày..) và khả năng tưới nước bán tự động (điều
khiển bằng tay bật hoặc tắt ), hẹn giờ tưới hoặc tưới theo điều kiện môi trường ( có thẻ là độ ẩm
hoặc nhiệt độ)
3
PHẦN 2 : CƠ SỞ LÝ THUYẾT
2.1 Ảnh hưởng của nước, nhiệt độ:
Nước là thành phần cơ bản nhất có trong mọi thực thể sống nên nước mặc nhiên nắm giữ vai
trị vơ cùng quan trọng quyết định đến sự sống cây trồng. Nước khơng những góp phần cấu tạo
nên các thành phần của cây trồng mà còn tham gia vào các q trình sinh hóa bên trong cây.
Thiếu nước sản phẩm quang hợp sẽ bị tắc nghẽn dẫn đến ức chế quang hợp. Khi cây thiếu nước
đến 40 – 60% thì quang hợp sẽ giảm hoặc ngưng quang hợp. Đặc tính quang hợp rất quan trọng
cho năng suất cây trồng, quyết định 90 – 95% năng suất cây trồng. Do đó việc tìm hiểu về đặc
tính quang hợp của cây trồng, giúp cho việc điều chỉnh ánh sáng, nhiệt độ và độ ẩm tốt hơn và
làm cho cây trồng phát triển tốt và cho năng suất cao.
2.2 Hệ thống tự động
Hệ thống điều khiển tự động là hệ thống, bao gồm các phần tử tự động nhằm điều khiển
các quy trình xảy ra trong thiên nhiên, cuộc sống mà khơng có sự tham gia trực tiếp của con
người.
-
Tự động hóa máy mọc nông nghiệp:
Việc phát triển nông nghiệp thông minh là vấn đề cấp thiết để cho ra nguồn thực phẩm
sạch. Muốn có được nền nơng nghiệp thơng minh cần có sự kết hợp của nhiều lĩnh vực cơng
nghệ. Đặc biệt các thiết bị máy móc sử dụng cần được ứng dụng tự động hóa – số hóa để tạo
nên các chuỗi giá trị cho sản phẩm.
Các giải pháp tự động hóa được triển khai với quy mơ lớn, tham gia vào hầu hết các
khâu. Q trình tự động hóa khi được áp dụng vào các thiết bị sẽ giúp tăng năng suất sản
xuất. Đặc biệt tạo ra số lượng lớn nhưng vẫn đảm bảo nguồn thực phẩm sạch theo đúng quy
chuẩn.
2.3 Ứng dụng của tự động hóa trong tưới tiêu cây trồng
Ngày nay với sự phát triển mạnh mẽ của cơng nghệ chế tạo thiết bị tự động hóa, kết
hợp với thành tựu trong công nghệ vi điện tử và công nghệ thông tin, đã cho phép tạo nên
một giải pháp tự động hóa trong mọi lĩnh vực khơng chỉ trên lĩnh vực nơng nghiệp. Có thể
nói tự động hóa trở thành xu hướng tất yếu cho bất kì quốc gia, vùng lãnh thổ nào muốn
phát triển kinh tế trên Thế giới.
Tưới nước là khâu rất quan trọng cho sự phát triển của cây trồng. Việc tưới nước phải đảm bảo
độ ẩm cần thiết cho cây trồng đồng thời phải tránh sự ngập úng quá mức gây các bệnh về rễ và
nấm cho cây trồng.
Tuy nhiên tưới như thế nào để đảm bảo các điều kiện trên mà không hao phí nước, giảm thiểu
các chi phí do tưới nước. Hiện nay công nghệ tưới nước tiết kiệm rất đa dạng, nhưng việc tưới
4
nước phải phù hợp với kiểu quang hợp và nhiệt độ của từng loại cây. Dưới đây là một số cơng
nghệ tưới nước:
a) Cơng nghệ tưới mưa
Thích hợp khơng gian rộng, thống. Lượng nước sử dụng nhiều.
b) Cơng nghệ tưới phun sương
Khả năng tiết kiệm nước cao, luôn làm ẩm và mát bầu khơng khí, thích hợp với
loại cây chịu nhiệt độ thấp. Tuy nhiên giá thành của hệ thống phun sương cao.
c) Công nghệ tưới nhỏ giọt
Khả năng tiết kiệm nước rất cao, luôn làm ẩm đất với một lượng nhất định. Tuy nhiên tốn
kém chi phí lắp đặt ống tới từng gốc cây trồng, không cải thiện nhiều nhiệt độ môi trường xung
quanh.
Tùy theo từng loại cây trồng mà sử dụng hệ thống tưới phù hợp. hệ thống tưới mưa chỉ
thích hợp với khơng gian rộng như trồng cây ngồi khơng gian tự nhiên. Hệ thống tưới nhỏ
giọt thích hợp với những cây có khả năng chống nấm thấp, khơng ưa độ ẩm cao như cà chua,
dưa lưới …. Hệ thống tưới phun sương thích hợp với những cây có thân yếu, lá dễ bị dập nát
nhưng chịu ẩm cao như các loại cải, mồng tơi, ngị ….
Hình 2.1 Hệ thống tưới tiêu – hình minh họa
5
PHẦN 3 : THIẾT KẾ, THỰC HIỆN HỆ THỐNG
3.1 Giới thiệu về mơ hình hệ thống
Hệ thống gồm 5 phần chính :
Phần thứ nhất là khối thu thập dữ liệu gồm các cảm biến nhiệt độ-độ ẩm DHT- 11, cảm
biến độ ẩm đất . Các cảm biến này sẽ thu thập thơng tin trong mơi trường hiện tại sau đó
sẽ gửi thơng tin đến trung tâm xử lí.
Phần thứ 2 là bộ xử lí trung tâm có nhiệm vụ nhận tín hiệu gửi về từ khối thu thập dữ
liệu và khối điều khiển. Thơng tin xử lí sẽ được gửi đến các khối thiết bị và hiển thị.
Phần thứ 3 là khối thiết bị gồm có máy bơm nước. Khi đạt đủ điều kiện hệ thống điều
khiển sẽ bật ( tắt ) máy bơm cung cấp nước cho cây trồng.
Phần thứ 4 là khối hiển thị gồm có 1 màn hình LCD 16x2 để hiện thị thơng số hiện tại
tại nơi đặt thiết bị. Ngồi ra, thơng tin cịn được hiển thị qua phần mềm android.
Phần thứ 5 là khối nguồn cung cấp điện áp cho bộ sử lí hoạt động
Hình 3.1 Sơ đồ khối của hệ thống
3.3 Chức năng của từng khối
3.3.1 Khối vi điều khiển
Vi điều khiển là một máy tính được tích hợp trên một chip, nó thường được sử dụng
để điều khiển các thiết bị điện tử. Vi điều khiển, thực chất, là một hệ thống bao gồm một vi
xử lý có hiệu suất đủ dùng và giá thành thấp (khác với các bộ vi xử lý đa năng dùng trong máy
tính) kết hợp với các khối ngoại vi như bộ nhớ, các module vào/ra, các module biến đổi số
sang tương tự và tương tự sang số,... Ở máy tính thì các module thường được xây dựng bởi
các chip và mạch ngoài.
6
Vi điều khiển thường được dùng để xây dựng các hệ thống nhúng. Nó xuất hiện khá nhiều
trong các thiết bị điện, điện tử, máy giặt, lị vi sóng, điện thoại, đầu đọc DVD, thiết bị đa
phương tiện, dây chuyền tự động,...
KIT điều khiển ESP8266 NodeMCU
Kit RF thu phát Wifi ESP8266 NodeMCU Lua CP2102 là kit phát triển dựa trên nền chip
Wifi SoC ESP8266 với thiết kế dễ sử dụng và đặc biệt là có thể sử dụng trực tiếp trình biên
dịch của Arduino để lập trình và nạp code, điều này khiến việc sử dụng và lập trình các ứng
dụng trên ESP8266 trở nên rất đơn giản.
Khả năng lưu trữ và xử lý mạnh mẽ cho phép nó được tích hợp với các bộ cảm biến, vi
điều khiển và các thiết bị ứng dụng cụ thể khác thông qua GPIOs với chi phí tối thiểu và một
PCB tối thiểu. Với mức độ tích hợp cao trên chip, trong đó bao gồm các anten chuyển đổi
balun, bộ chuyển đổi quản lý điện năng…Kit RF thu phát Wifi ESP8266 NodeMCU Lua CP2102
được dùng cho các ứng dụng cần kết nối, thu thập dữ liệu và điều khiển qua sóng Wifi, đặc
biệt là các ứng dụng liên quan đến IoT.
ESP8266 cung cấp một giải pháp kết nối mạng Wi-Fi hoàn chỉnh và khép kín, cho phép
nó có thể lưu trữ các ứng dụng hoặc để giảm tải tất cả các chức năng kết nối mạng
Wi-Fi từ một bộ xử lý ứng dụng.
Luôn phiên, phục vụ như một bộ chuyển đổi Wi-Fi, truy cập internet khơng dây có thể
được thêm vào bất kỳ thiết kế vi điều khiển nào dựa trên kết nối đơn giản qua giao
diện UART hoặc giao diện cầu CPU AHB.
Khả năng lưu trữ và xử lý mạnh mẽ cho phép nó được tích hợp với các bộ cảm biến, vi điều
khiển và các thiết bị ứng dụng cụ thể khác thơng qua GPIOs với chi phí tối thiểu và một PCB tối
thiểu. Với mức độ tích hợp cao trên chip, trong đó bao gồm các anten chuyển đổi balun, bộ
chuyển đổi quản lý điện năng
Hình 3.2 Hình ảnh thực tế ESP8266 NodeMCU
7
Thông số kỹ thuật
Chip điều khiển
ESP8266EX
WiFi
2.4 GHz hỗ trợ chuẩn 802.11 b/g/n
Điện áp hoạt động
3.3 V
Điện áp đầu 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/I2C/One- wire, trừ chân D0)
Số chân Analog Input
1 (điện áp vào tối đa 3.3V)
Bộ nhớ Flash
4MB
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
Sơ đồ chân ESP8266 Node MCU
8
Hình 3.3 Sơ đồ chân của ESP8266 NodeMCU
9
Chức năng của các chân:
VCC: Điện áp 3.3V .
GND: Chân nối đất.
Tx: Chân Tx của giao thức UART, kết nối đến chân Rx của vi điều khiển.
Rx: Chân Rx của giao thức UART, kết nối đến chân Tx của vi điều khiển.
RST: chân reset, kéo xuống mass để reset.
10 chân GPIO từ D0 – D8, có chức năng PWM, IIC, giao tiếp SPI, 1- Wire và ADC
trên chân A0.
Tính năng của NODEMCU ESP8266:
WiFi: 2.4 GHz hỗ trợ chuẩn 802.11 b/g/n, hỗ trợ WPA/WPA2.
Điện áp cung cấp : DC 5 ~ 9V.
Bộ nhớ Flash: 32MB.
Chuẩn giao tiếp nối tiếp UART với tốc độ Baud lên đến115200
Tích hợp ngăn xếp giao thứcTCP / IP.
Hỗ trợ nhiều loại anten.
Wake up và truyền các gói dữ liệu trong <2ms.
Hỗ trợ cả 2 giao tiếp TCP và UDP.
Hỗ trợ các chuẩn bảo mật như: OPEN, WEP, WPA_PSK, WPA2_PSK,
WPA_WPA2_PSK
Có 3 chế độ hoạt động: Client, Access Point, Both Client and Access Point.
Quản lý năng lượng NODEMCU ESP8266
ESP8266 được thiết kế cho điện thoại di động, điện tử lắp ráp và ứng dụng
InternetofThings với mục đích đạt được mức tiêu thụ điện năng thấp nhất với sự
kết hợp của nhiềukỹ thuật độc quyền. Kiến trúc tiết kiệm năng lượng hoạt động
trong 3 chế độ: chế độ hoạt động, chế độ ngủ và chế độ ngủ sâu.
Bằng cách sử dụng các kỹ thuật quản lý nguồn điện và kiểm soát chuyển đổi giữa
chế độ ngủ ESP8266 tiêu thụ chưa đầy 12uA ở chế độ ngủ nhỏ hơn 1.0mW so với
(DTIM = 3) hoặc ít hơn 0.5mW (DTIM = 10) để giữ kết nối với các điểm truy cập.
Khi ở chế độ ngủ, chỉ có bộ phận hiệu chỉnh đồng hồ thời gian thực và cơ quan
giám sát vẫn hoạt động. Đồng hồ thời gian thực có thể được lập trình để đánh
thức ESP8266 ở bất kỳ khoảng thời gian cần thiết nào.
ESP8266 có thể được lập trình để thức dậy khi một điều kiện chỉ định được phát
hiện. Tính năng tối thiểu thời gian báo thức này của ESP8266 có thể được sử dụng
bởi Tính năng tối thiểu thời gian báo thức của ESP8266 có thể được sử dụng bởi
thiết bị di động SOC. Cho phép chúng vẫn ở chế độ chờ, điện năng thấp cho đến
khi Wifi là cần thiết.
Để đáp ứng nhu cầu điện năng của thiết bị di động và điện tử lắp giáp, ESP8266 có
thể được lập trình để giảm cơng suất đầu ra của PA phù hợp với các ứng dụng khác
10
nhau.
Module Relay 2 kênh 5V
Module Relay 2 kênh 5V V1 có chế độ chọn mức kích High/Low được sử dụng để
bật/tắt thiết bị AC/DC qua Relay, mạch có thể tùy chọn kích bằng mức cao hoặc thấp
(High/Low) qua Jumper, ngồi ra mạch cịn tích hợp Opto cách ly, giúp tăng cường độ an
toàn cho mạch và khả năng kháng nhiễu, module thích hợp với các ứng dụng điều khiển
ON/OFF trong hệ thống nhúng, IoT,...
THÔNG SỐ KỸ THUẬT:
Điện áp sử dụng: 5V
Số kênh điều khiển: 2 kênh
Dòng tiêu thụ: khoảng 200mA /1Relay
Tín hiệu kích: Tùy chọn mức cao High(5VDC) hoặc thấp Low(0VDC) qua Jumper.
Tiếp điểm đóng ngắt Relay trên mạch: Max 250VAC-10A hoặc 30VDC-10A
Kích thước: 52x41x19 mm
Hình 3.4 Module Relay 2 kênh
3.3.2 Khối thu thập dữ liệu
Khối cảm biến là thiết bị điện tử cảm nhận những trạng thái hay q trình vật lý, hóa
học hay sinh học của môi trường cần khảo sát, và biến đổi thành tín hiệu điện để thu thập
thơng tin về trạng thái hay q trình đó.
Cảm biến nhiệt độ độ ẩm khơng khí DHT11
11
Hình 3.4 Cảm biến nhiệt độ độ ẩm DHT 11
DHT11 Là cảm biến nhiệt độ, độ ẩm rất thông dụng hiện nay vì chi phí rẻ và rất dễ lấy
dữ liệu thông qua giao tiếp 1-wire ( giao tiếp digital 1-wire truyền dữ liệu duy nhất). Cảm
biến được tích hợp bộ tiền xử lý tín hiệu giúp dữ liệu nhận về được chính xác mà khơng cần
phải qua bất kỳ tính tốn nào.
Đặc điểm:
Điện áp hoạt động : 3V - 5V (DC)
Dải độ ẩm hoạt động : 20% - 90% RH, sai số ±5%RH
Dải nhiệt độ hoạt động : 0°C ~ 50°C, sai số ±2°C
Tần số lấy mẫu tối đa: 1 Hz ( 1 giây/lần )
Khoảng cách truyển tối đa: 20m
Sơ đồ chân Cảm biến DHT11 gồm 2 chân cấp nguồn, và 1 chân tín hiệu. Hiện nay, thơng dụng
ngồi thị trường có hai loại đóng gói cho DHT11: 3 chân
Nhận xét: Cảm biến nhiệt độ, độ ẩm DHT11 với giá thành rẻ, dễ sử dụng, thích hợp sử
dụng trong các ứng dụng u cầu độ chính xác khơng cao, mơi trường khơng khắc nghiệt.
Ngun lý hoạt động:
Để có thể giao tiếp với DHT11 theo chuẩn 2 chân vi xử lý thực hiện theo 2bước:
Gửi tín hiệu muốn đo (Start) tới DHT11 xác nhận lại.
Khi giao tiếp được với DHT11, Cảm biến sẽ gửi lại 5 byte dữ liệu và nhiệt độ đo được.
Cảm biến độ ẩm đất
12
Hình 3.5
Cảm biến độ
ẩm đất
Cảm biến độ ẩm đất có thể hiển thị chính xác độ ẩm đất.Ứng dụng
trong các project 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, hay hệ thống tưới tiêu tự động. Độ nhạy của
Cảm biến phát hiệ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 đo đượ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 hoạt động: 3.3V-5V
Kích thước PCB: 3cm * 1.6cm
Led đỏ báo nguồn vào, Led xanh báo độ ẩm.
IC so sánh : LM393
VCC: 3.3V-5V
GND: 0V
DO: Đầu ra tín hiệu số (0 và 1)
AO: Đầu ra Analog (Tín hiệu tương tự)
3.3.3 Khối hiển thị
Màn hinh hiển thị LCD 1602A
Ngày nay, thiết bị hiên thị LCD (Liquid Crystal Display) được sử dụng rất nhiều các
13
ứng dụng của vi điều khiển. LCD có rất nhiều ưu điểm so với các dạng hiển thị khác. Nó có
khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa) dễ dàng đưa vào mạch
ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn rất ít tài nguyên và giá thành rẻ...
Ưu điểm :
Hiển thị kí tự đa dạng , trực quan ( chữ , số và kí tự đồ họa )
Dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau Tốn ít
tài nguyên hệ thống và giá thành rẻ
Nhược điểm :
Vì mật độ điểm ảnh trên màn LCD rất thấp nên khi ra ngoài ánh sáng mặt trời thì màu
sắc hiển thị rất kém cũng như dễ nhìn thấy các hoạt điểm ảnh trên màn hình.
Thơng số kĩ thuật màn hình 1602A
Màn hình text LCD1602 xanh lá sử dụng driver HD44780, có khả năng hiển thị 2 dịng với
mỗi dịng 16 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.
Điện áp hoạt động là 5 V.
Kích thước: 80 x 36 x 12.5 mm
Chữ đen, nền xanh lá
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 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.
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.
Có thể được điều khiển với 6 dây tín hiệu
14
Hình 3.6 Màn hình LCD 1602A
3.3.4 Khối thiết bị
Hình 3.7 Máy bơm nước 1 chiều R385 5-12V
Máy bơm áp lực mini 12V/12W/2L Smartpumps DP-12W2L là dòng máy bơm mini nhỏ
lưu lượng 2 lít/phút có khả năng tự hút. Được dùng bơm thực phẩm, bơm làm mát máy
khoan, bơm định lượng, bơm nước hồ cá, bơm tưới và bơm chất lỏng, bơm phun xịt khử
trùng, bơm hóa chất diệt khuẩn, máy bơm nước rửa tay, máy bơm nước sạch và bơm phun
sương.
Thông số kỹ thuật:
Điện áp Vào Jack DC 5.5x2.1mm, DC6- 12V (đề nghị 9V-1A hoặc 12V-1A)
Dịng Tiêu Thụ: 0.5-0.7A
Đường kính động cơ: 27mm đường kính đầu: 44mm Tổng chiều dài: 60mm
Lưu lượng: 1,5-2 L / Min
Chiều dài ống hút tối đa: 2 m
Đẩy Cao: lên đến 3 mét
Tuổi Thọ: lên đến 2500H
Nhiệt độ nước cho phép: lên đến 80 độ C
3.4 Thực hiện hệ thống
3.4.1 Phần cứng: thiết kế mạch
Dùng phần mềm Proteus 8 professional
-
Sơ đồ nguyên lý :
15
Hình 3.8 sơ đồ ngun lí dùng proteus 8
Sơ đồ nguyên lí gồm 4 khối: Khối vi điều khiển, khối cảm biến, khối hiển thị, khối thiết bị
(máy bơm, đèn). Khi mạch được cấp điện áp 5 VDC, khối cảm biến và sẽ lấy các giá trị nhiệt độ,
độ ẩm đưa về khối vi điều khiển để xử lí. Sau khi nhận dữ liệu từ các khối hỗ trợ, vi điều khiển
tiến hành so sánh các giá trị nhiệt độ, độ ẩm với các giá trị tương ứng. Sau khi kiểm tra và tính
tốn các giá trị trên, nếu thỏa mã điều kiện cài đặt, vi điều khiển sẽ phát tín hiệu cho khối thiết
bị (ở đây là máy bơm), khi máy bơm nhận được tín hiệu của vi điều khiển sẽ thực hiện bơm
nước tự động trong khoảng thời gian cài đặt. Tất cả các giá trị nhiệt độ, độ ẩm và các bước cài
đặt cho hệ thống sẽ được hiển thị trên LCD 16x2.
-
Các linh kiện chính được sử dụng:
ST
T
1
NodeMCU ESP8266
Số
lượng
1
2
LCD 16x2
1
3
Moldule I2C
1
4
Module cảm biến
DHT-11
Module cảm biến độ
ẩm đất
1
5
Tên linh kiện
1
16
-
6
LED
3
7
Nút nhấn
4
8
Ổn áp 7805
1
9
Cầu chì
1
10
Tụ 220µF-25V
2
11
Trở 100 Ω
3
12
Module Relay
2
Layout mạch
Hình 3.9 Layout mạch
-
Mạch in hoàn chỉnh :
17
Hình 3.10 mạch in mơ hình
18
3.4.2 Lập trình hệ thống
Yêu cầu đặt ra cho phần mềm:
1. Phần mềm phải đáp ứng được những nhu cầu của người sử dụng.
2. Những ứng dụng phải phù hợp với thực tế.
3. Viết ứng dụng giao diện phải hợp lí và dễ dàng thao tác cho người sử dụng
Lưu đồ giải thuật phía xử lí, điều khiển
19
-
Lưu đồ giải thuật phía kết nối Server :
-
Phần mềm Arduino IDE :
Giới thiệu:
Arduino IDE là một phần mềm mã nguồn mở chủ yếu được sử dụng để viết và biên dịch mã
vào module Arduino. Đây là một phần mềm Arduino chính thức, giúp cho việc biên dịch mã trở
20
nên dễ dàng mà ngay cả một người bình thường khơng có kiến thức kỹ thuật cũng có thể làm
được.
Nó có các phiên bản cho các hệ điều hành như MAC, Windows, Linux và chạy trên nền tảng
Java đi kèm với các chức năng và lệnh có sẵn đóng vai trò quan trọng để gỡ lỗi, chỉnh sửa và biên
dịch mã trong môi trường. Hơn nữa, phần mềm Arduino IDE sử dụng phiên bản giản thể của C+
+.
Bạn có thể điều khiển các chức năng của bo mạch của mình bằng cách nạp các tập lệnh đến vi
điều khiển trên bo mạch. Thông qua phần mềm hỗ trợ là Arduino IDE.
Khi người dùng viết mã và biên dịch, IDE sẽ tạo file Hex cho mã. File Hex là các file thập phân
Hexa được Arduino hiểu và sau đó được gửi đến bo mạch bằng cáp USB. Mỗi bo Arduino đều
được tích hợp một bộ vi điều khiển, bộ vi điều khiển sẽ nhận file hex và chạy theo mã được
viết.
-
Sử dụng Arduino IDE:
Hình 3.10 Giao diện Arduino IDE
21
Một chương trình hiển thị trên cửa sổ giao diện được gọi là sketch.Sketch được tạo từ hai hàm
cơ bản là setup () và loop () :
- Setup() : Hàm này được gọi khi một sketch khởi động, được sử dụng để khởi tạo biến, đặt
các chế độ chân ( nhận hay xuất tín hiệu ), khởi động một thư viện … Hàm setup() chỉ chạy một
lần, sau khi cấp nguồn hoặc reset mạch.
- Loop(): Sau khi khởi tạo hàm setup(), hàm loop() sẽ được khởi tạo và thiết lập các giá trị ban
đầu. Như tên gọi, hàm loop tạo các vòng lặp liên tục, có cho phép sự thay đổi và đáp ứng.
Chức năng tương tự như vòng lặp while() trong C, hàm loop() sẽ điều khiển toàn bộ mạch.
- Các nhóm cấu trúc lệnh cơ bản
Các chương trình Arduino có thể được chia thành : nhóm cấu trúc, nhóm biến và hằng ,
nhóm hàm. Trên trang Arduino.cc có đầy đủ và chi tiết các hàm, lệnh, phép toán cùng cách thức
sử dụng cũng như các ví dụ đi kèm.
Chúng ta sẽ tìm hiểu các hàm cơ bản trước : setup() ; loop () ; pinMode() ; digitalRead();
digitalWrite(); analogWrite() ; …
- Một vài ví dụ:
Mỗi hàm, lệnh hay thuật ngữ trong phần này đều được giải thích rất ngắn gọn, rõ ràng, dễ
dàng áp dụng.
+
Hàm pinMode(pin, mode):thiết lập một chân cụ thể là chân nhận hay xuất tín hiệu. Trong
đó: pin là chân sẽ được thiết lập; mode là một trong các chế độ INPUT. OUTPUT hoặc
INPUT_PULLUP
+ Hàm digitalRead(pin): đọc giá trị từ một chân digital. Trong đó: pin là chân digital mà chúng
ta muốn đọcGiá trị trả về : HIGH hoặc LOW
- ESP8266 trên Arduino IDE :
Esp8266 có thể lập trình trên Arduino IDE thơng qua packed được phát triển trên nền tảng
Arduino IDE:
Cài đặt cấu hình cho Arduino IDE:
Bước 1: Tải package cho NodeMCU vào Arduino IDE:
Từ màn hình chính chọn File → Preferences, thêm đường dẫn bên dưới vào mục Addition
Boards Manager URLs Link: />
22
Hình 3.11 Tải package cho NodeMCU
Bước 2: Tải thư viện hỗ trợ.
Từ màn hình chính chọn Tool→ Board→ Board managers. Tại thanh tìm kiếm của hộp thoại
Board Managers nhập vào esp8266, chọn Install để tiến hành tải và cài đặt thư viện.
Hình 3.12 Hộp thoại Board Manager
Bước 3: Chọn Tool→ board → ESP 8266 boards → NodeMCU 1.0
23
-
Giao thức HTTP
HTTP (Hyper Text Transfer Protocol) là một giao thức nằm ở tầng ứng dụng (Application
layer) của tập giao thức TCP/IP, sử dụng để truyền nhận dữ liệu giữa các hệ thống phân tán
thông qua internet, cụ thể giao thức hoạt động theo mơ hình Client-Server bằng cách thực
hiện các q trình request-response giữa các hệ thống máy tính khác nhau. Giao thức HTTP
quy định cấu trúc của các gói tin và cách thức truyền nhận dữ liệu giữa client và server thông
qua môi trường internet. Với khả năng truyền dẫn siêu văn bản (text, hình ảnh, âm thanh,
video,…), HTTP hiện là nền tảng truyền dẫn dữ liệu của ứng dụng duyệt web hiện nay và được
ứng dụng rất nhiều trong các hệ thống Internet of Things.
Mơ hình giao thức
Để dễ hình dung, mỗi khi người dùng sử dụng trình duyệt và truy cập vào một website, một
phiên làm việc HTTP (gọi là Session) sẽ được diễn ra với client là máy tính của người dùng và
serer là máy chủ của website. Mặc định HTTP sẽ được thực hiện thông qua port 80, đây là port
chuẩn của giao thức được định nghĩa bởi tổ chức IANA quy định.
Hình 3.13 giao thức HTTP
Ví dụ khi người dùng truy cập vào một địa chỉ http Quá trình của một phiên làm việc HTTP diễn ra
như sau:
1. HTTP client thiết lập một kết nối TCP đến server. Nếu thiết lập thành công, client và server
sẽ truyền nhận dữ liệu với nhau thông qua kết nối này, kết nối được thiết lập còn gọi là
24