Khóa luận tốt nghiệp Lương Đình Tùng Khóa luận tốt nghiệp Lương Đình Tùng 19 CHƯƠNG 3 THIẾT KẾ MẠCH VÀ MÔ HÌNH MÔ PHỎNG 3 1 Cấu Trúc Và Các Tính Năng Của Từng Thiết Bị 3 1 1 Cấu trúc phần cứng của dòng chip ESP8266 có thể tóm tắt như sau Sử dụng 32 bit MCU core có tên là Tensilica Tốc độ system clock có thể set ở 80MHz hoặc 160MHz Không tích hợp bộ nhớ Flash để lưu chương trình Tích hợp 50KB RAM để lưu dữ liệu ứng dụng khi chạy Có đầy đủ các ngoại vi chuẩn đê giao tiếp như 17 GPIO, 1 S.
Trang 1CHƯƠNG 3 THIẾT KẾ MẠCH VÀ MÔ HÌNH
MÔ PHỎNG
3.1.Cấu Trúc Và Các Tính Năng Của Từng Thiết Bị
3.1.1.Cấu trúc phần cứng của dòng chip ESP8266 có thể tóm tắt như sau:
Sử dụng 32-bit MCU core có tên là Tensilica
Tốc độ system clock có thể set ở 80MHz hoặc 160MHz
Không tích hợp bộ nhớ Flash để lưu chương trình
Tích hợp 50KB RAM để lưu dữ liệu ứng dụng khi chạy
Có đầy đủ các ngoại vi chuẩn đê giao tiếp như 17 GPIO, 1 Slave SDIO, 3 SPI,
1 I2C, 1 I2S, 2 UART, 2 PWM
Tích hợp các mạch RF để truyền nhận dữ liệu ở tần số 2.4GHz
Hỗ trợ các hoạt động truyền nhận các IP packages ở mức hardware như
Acknowledgement, Fragmentation và Defragmentation, Aggregation, Frame
Encapsulation v.v… (và phần stack TCP/IP sẽ được thực hiện trên firmware
của ESP8266)
Do không hỗ trợ bộ nhớ Flash nên các board sử dụng ESP8266 phải gắn thêm
chip Flash bên ngoài và thường là Flash SPI để ESP8266 có thể đọc chương
trình ứng dụng với chuẩn SDIO hoặc SPI
Trang 2 +) Sơ đồ chân
Hình 3.1 sơ đồ chân esp8266
URXD(RX) — dùng để nhận tín hiệu trong giao tiếp UART với vi điều khiển
VCC — đầu vào 3.3V
GPIO 0 — kéo xuống thấp cho chế độ upload bootloader
RST — chân reset cứng của module, kéo xuống mass để reset
GPIO 2 — thường được dùng như một cổng TX trong giao tiếp UART để debug lỗi
CH_PD — kích hoạt chip, sử dụng cho Flash Boot và updating lại
module, nối với mức cao
GND — nối với mass
UTXD (TX) — dùng để truyền tín hiệu trong giao tiếp UART với vi điều
khiển
Trang 3+) Mạch nguyên lý đầy đủ cho ESP8266:
Hình 3.2 sơ đồ mạch
Trang 5Cảm biến độ ẩm đất và modul đi kèm gồm:
1 chân 5VDC
1 chân GND
1 chân D0 ta sử dụng chân này nối vào chân IN của modul rờ le
1 chân A0 ta sử dụng chân này để thiết lập giá trị độ ẩm
1 biến trở sử dụng để thiết lập giá trị đóng cắt D0
2 chân tín hiệu lấy từ cảm biến
- 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
Đầu kết nối sử dụng 3 dây
Module khi chưa phát hiện ở mức 1, khi phát hiện độ ẩm cho ra mức 0
Đầu ra: AOUT, DOUT, VCC, GND
+ AOUT : Tín hiệu ADC
+ DOUT: Mức logic 0,1
Trang 6Hình 3.4 que đo
Hai đầu đo của cảm biến được cắm vào đất để phát hiện độ ẩm Dùng dây nối giữa cảm biến và module chuyển đổi Thông tin về độ ẩm đất sẽ được đọc về và gởi tới module chuyển đổi
Hinh 3.5 module chuyển đổi
Trang 7Module chuyển đổi có cấu tạo chính gồm một IC so sánh LM393, một biến
trở, 4 điện trở dán 100 ohm và 2 tụ dán Biến trở có chức năng định ngưỡng so sánh
với tín hiệu độ ẩm đất đọc về từ cảm biến Ngưỡng so sánh và tín hiệu cảm biến sẽ là
2 đầu vào của IC so sánh LM393 Khi độ ẩm thấp hơn ngưỡng định trước, ngõ ra của
IC là mức cao (1), ngược lại là mức thấp (0)
- Sơ đồ nguyên lí :
Hinh 3.6 sơ đồ mạch module chuyển đổi
Trang 83.1.3 Cảm biến nhiệt độ, độ ẩm DHT11
Hình 3.7.cảm biến DHT11
DHT11 là cảm biến nhiệt độ, độ ẩm rất thông dụng hiện nay vì chi phí
rẻ (khoảng 50 000 vnd) 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 toán nào
-Nguyên lí hoạt động:
Khi vi điều khiển gửi tín hiệu bắt đầu,DHT11 chuyển từ trạng thái nghỉ sang trạng thái chạy.khi vi điều khiển hoàn thành việc gửi tín hiệu bắt đầu thì DHT11 sẻ gửi phản hồi tín hiệu có độ dài 40 bit tới vi điều khiển khi không có tín hiệu bắt đầu
từ vi điều khiển thì DHT11 sẽ không gửi tín hiệu phản hồi lại vi điều khiển khi có tín hiệu bắt đầu thì DHT11 gửi dữ liệu phản hồi về nhệt độ và đổ ẩm về vi điều khiển 1 lần.khi DHT11 hoàn thành việc gửi dữ liệu thì nó chuyển về trạng thái nghỉ
-Đặc điểm:
- Độ ẩm
Độ phân giải : 16bit
Trang 9 Độ chính xác : tại 25 C ± 5% RH
Dải độ ẩm hoạt động : 20% - 90% RH , sai số ± 5% RH
- Nhiệt độ:
Độ phân giải : 16bit
Dải nhiệt độ hoạt động : 0°C ~ 50°C, sai số ± 2°C -Đặc tính điện:
Tần số lấy mẫu : >2s
Điện áp hoạt động : 3,5V - 5,5V (DC)
Điện áp cung cấp : 60μA - 0.3mA
-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
DHT11-DDHT22-Nguyên tắc làm việc
Hình 3.8 cấu tạo cảm biến
Trang 10Hình 3.9.cấu tạo cảm biến độ ẩm
Nguyên lý làm việc của cảm biến độ ẩm
Để đo độ ẩm, họ sử dụng thành phần cảm biến độ ẩm có hai điện cực với
chất nền giữ ẩm giữa chúng Vì vậy, khi độ ẩm thay đổi, độ dẫn của chất nền thay đổi
hoặc điện trở giữa các điện cực này thay đổi Sự thay đổi điện trở này được đo và xử
lý bởi IC khiến cho vi điều khiển sẵn sàng để đọc
Mặt khác, để đo nhiệt độ, các cảm biến này sử dụng cảm biến nhiệt độ
NTC hoặc nhiệt điện trở
Một nhiệt điện trở thực sự là một điện trở thay đổi thay đổi điện trở của nó
với sự thay đổi của nhiệt độ Những cảm biến này được chế tạo bằng cách thiêu kết
các vật liệu bán dẫn như gốm hoặc polymer để cung cấp những thay đổi lớn hơn trong
điện trở chỉ với những thay đổi nhỏ về nhiệt độ Thuật ngữ có tên là NT NT nghiêm
trọng có nghĩa là hệ số nhiệt độ âm của âm thanh, có nghĩa là điện trở giảm khi nhiệt
độ tăng
Trang 11Nguyên lý làm việc-nhiệt điện trở
Hinh 3.10 Cấu tạo cảm biến độ ẩm
Các cảm biến DHTxx có bốn chân, VCC, GND, chân dữ liệu và chân không được kết nối không có cách sử dụng Cần có một điện trở kéo lên từ 5K đến 10K Ohms để giữ cho đường dữ liệu ở mức cao và để cho phép giao tiếp giữa cảm biến và Bảng Arduino Có một số phiên bản của các cảm biến này đi kèm với một bảng đột phá với điện trở kéo lên tích hợp và chúng chỉ có 3 chân
Các cảm biến DHTXX có giao thức dây đơn riêng được sử dụng để truyền
dữ liệu Giao thức này yêu cầu thời gian chính xác và sơ đồ thời gian để lấy dữ liệu từ các cảm biến có thể được tìm thấy từ bảng dữ liệu của các cảm biến Tuy nhiên, chúng tôi không phải lo lắng nhiều về các sơ đồ thời gian này bởi vì chúng tôi sẽ sử dụng thư viện DHT để lo tất cả mọi thứ
Trang 122.2.5 Module relay
Relay là một thiết bị đóng cắt cơ bản, nó được sử dụng rất nhiều trong cuộc
sống và trong các thiết bị điện tử
Cấu tạo Relay gồm 2 phần: Cuộn hút và cặp tiếp điểm
+ Cuộn hút:
-Tạo năng lượng từ trường trường về phía mình
- Tùy vào điện áp làm việc người ta chia relay ra: DC :5V,12V,24 AC: 110V,220V
Khi có năng lượng từ trường thì tiếp điểm 1 bị hút sang 3
Trong relay có thể có 1 cặp tiếp điểm ,2 cặp tiếp điểm hoặc nhiều hơn
Trang 13- Tín hiệu vào điều khiển DC 12V
+ Đưa tín hiệu từ vi điều khiển hoặc cảm biến vào IN1 ,IN2
+ Chân VCC nối với nguồn 12V
+ Chân GND nối với nguồn 0V
- Đầu ra tiếp điểm relay đống ngắt 220V-10A
+ COM chân chung của relay
+ NC tiếp điểm thường đống
+ NO tiếp điểm thường mở
- Một số thông số kỹ thuật
- Tín hiệu vào điều khiển: DC12V
Nguồn khuyên dùng: 12V-1A hoặc 12V-2A
- Mặc định tín hiệu từ vi điều khiển
Cách Sử Dụng: Có 5 chân ( VRL; VCC; IN1; IN2; GND; MAS )
- Nối chân VCC với chân VRL
- Nối chân GND với chan MAS
- Đưa tín hiệu từ Vi Điều Khiển hoặc Cảm Biến vào chân IN1 hoặc IN2
In 1 In 2 dùng để điều khiển relay 1 và relay 2, tích cực mức thấp
Trang 14Sơ đồ nguyên lý
Hình 3.12.sơ đồ của module relay 2 kênh 5VDC
-Điều khiển Relay DC:
+ Trong mạch trên là sơ đồ của 2 cặp relay
+ Hoạt động của relay 1 (sử dụng transistor PNP)
Khi S1 = 1: Q1 khóa lại, không có dòng chạy qua cuộn hút relay1 Đèn LED1 tắt Tiếp điểm 1 và 2 nối nhau
Khi S1 = 0: Q1 mở, có dòng từ VCC qua khóa Q1 cấp điện cho
cuộn hút.Lúc này có chuyển mạch của cặp tiếp điểm Tiếp điểm
1 nối với 3 Đèn LED Q1 sáng
Trong mạch có sử dụng Diode D1 mắc vào 2 đầu cuộn dây của
relay D1 có tác dụng xả dòng cho cuộn hút khi nó không hoạt động
Hoạt động relay 2 tương tự
Trong sơ đồ nếu sử dụng Relay 12V,24V thì cần thêm 1 mạch Buff.Do tín hiệu
điều khiển 5V, không cùng điện áp với điện áp cấp cho Relay (12V,24V
Trang 153.1.4 Máy Bơm
Hình 3.13 Thông số kỹ thuật của máy bơm nước mini 12V 60W
Động cơ: 0142
– Điện áp: DC12V
– Công suất tối đa: 60W
– Áp lực nước đầu vào: 0.2Mpa
– Áp lực nước đầu ra: 0.8Mpa
– Lưu lượng nước: 5L /phút
– Van bảo vệ thông minh với công tắc áp suất tự động
– Ống dẫn: 90 mét
– Phạm vi: 9 mét
– Kích thước: 16.5cm (L) x 9.6cm (W) x 6cm (H)
Trang 163.1.5 Quoạt điều hòa và bộ tản nhiệt bằng hơi nước
Quoạt thông gió
Trang 17
3.2.Thiết kế mạch điều khiển có chức năng thực hiện điều khiển tự động và giám sát môi trường thông qua điện thoại
3.2.1.Các khối xử lý
Mô hình nhà kính công nghệ cao gồm các thành phần: bộ vi xử lý, điều khiển công suất, các động cơ điện, các cảm biến đọc giá trị môi trường
Bộ vi xử lý: điều khiển các động cơ thực hiện yêu cầu, đảm bảo các
thông số về môi trường thông qua bộ điều khiển công suất với các giá trị trả về từ các cảm biến Một số bộ vi xử lý thông dụng: Arduino UNO, Arduino UNO R3, Arduino MEGA,…
Điều khiển công suất: điều khiển các động cơ thông qua cấp nguồn
riêng biệt, không lấy dòng điện trực tiếp từ bộ vi xử lý, đảm bảo cho
bộ vi xử lý và các động cơ điện vận hành ổn định, trơn tru Relay và L298 được sử dụng rất nhiều vì tính ổn định
Các động cơ điện: thực thi lệnh từ bộ vi xử lý và công suất: tưới, giảm
nhiệt độ, độ ẩm,… trong nhà kính Các động cơ dùng trong nhà kíInh: động cơ bơm, động cơ tưới, động cơ bước, quạt, …
Cảm biến: đọc các thông số môi trường hiện tại, gửi về vi xử lý Hiện nay, trên thị trường có rất nhiều loại cảm biến, đáp ứng mọi nhu cầu Ứng dụng cho nhà kính có thể chọn một số cảm biến như: cảm biến ánh sáng, cảm biến nhiệt độ, cảm biến độ
ẩm
Trang 18Hình 3.14.SƠ ĐỒ KHỐI CỦA HỆ THỐNG
3.2.2 SƠ ĐỒ GIẢI THUẬT ĐIỀU KHIỂN
Trang 19Sơ đồ giải thuật của hệ thống
Hình 3.15 sơ đồ giải thuật
Trang 20Thuật toán điều khiển động cơ bơm:
Đầu vào:
H1: là cận dưới của độ ẩm đề xuất trong nhà kính
H2: là cận trên của độ ẩm đề xuất trong nhà kính
H: là giá trị độ ẩm tức thời, được lấy từ cảm biến độ ẩm
Đầu ra:
Bật/tắt bơm với H thỏa mãn điều kiện H1<H<H2
Khi độ ẩm H1<H thì mở bơm, lặp đến khi H2<H thì dừng bơm, kết thúc thuật toán
Ngược lại, H1>H thì không mở bơm, kết thúc thuật toán
Trang 21Thuật toán điều khiển quạt
Đầu vào:
T1: là nhiệt độ đề xuất trong nhà kính
T: là nhiệt độ tức thời, được đọc từ cảm biến nhiệt độ
Đầu ra:
Bật/tắt quạt đảm bảo nhiệt độ T1<T<T2
Khi T1<T, khởi động quạt, ngừng quạt khi T1 = T, kết thúc thuật toán
Ngược lại, T1>T không khởi động quạt, kết thúc thuật toán
Trang 22Thuật toán điều khiển đóng ngắt máy bơm khi gặp sự cố
Đầu vào:
Đặt thời gian ,đảm bảo cho động cơ bơm luôn hoạt động
Đầu ra:
Đóng bơm khi xảy ra sợ cố
Bước 1: chọn thời gian để đón động cơ
Bước 2: sau khoảng thời gian t ,nếu đầu bơm không có nước thì dừng động cơ Khi hoàn thành thì kết thúc chương trình
Ngược lại thì cho động cơ chạy tiếp
Trang 233.2.3.Sơ đồ kết nối thiết bị
Sơ đồ mạch điều khiển
Hình 3.16.Sơ đồ mạch
Trang 243.2.4.Chương trình nạp esp8266
Chương trình nạp vào
/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <DHT.h>
char auth[] = "e3a0d80aecb1419d8e44bc288e91eacf";
char ssid[] = "AndroidAP";
uint8_t motor_button = OFF;
uint8_t fan_button = OFF;
uint8_t motor_state = OFF;
uint8_t fan_state = OFF;
uint8_t water_sensor_state = ON;
Trang 25t = dht.readTemperature();//doc gia tri gan vao t
h = dht.readHumidity();//doc gia tri gan vao h
Trang 26Blynk.virtualWrite(V3, mass_humidity);//xuất độ ẩm đất ra màn hình hiển thị theo thời gian thực
WidgetLED motor(V4); // báo bơm có hoạt đông không
Blynk.begin(auth, ssid, pass);
// You can also specify server:
//Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80);
//Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080);
#define MOTOR D0//d0 la motor
Trang 27timer.setInterval(500L, myTimerEvent);//500ms thi ve vong lap mytimeevant
Trang 293.2.5.Cài đặt phần mềm BLYNK cho điện thoại
Tải phần mềm BLYNK trên Chplay hoặc Apstore
Trang 30 Đăng nhập bằng địa chỉ GMAIL
Trang 31 Tạo New Project
Trang 32 Lấy mã liên kết qua GMAIL từ phần mềm BLYNK
Trang 33 Lấy các khối từ Widget
Trang 34 Cài đặt thông số cho từng khối
Trang 35 Hoàn thành giao diện
Trang 363.2.6 Chạy mô phỏng
Trang 37KẾT LUẬN
Những mục tiêu đạt được
Biết lựa chọn, tính toán đi dây
Biết thêm về các thiết bị
Thiết kế mạch và nắm vững cách thức hoạt động
Lập trinh arduio
Những mặt hạn chế và hướng phát triển
Han chế
– Chương trình vẫn chư bám sát thực tiễn
– Mô hình còn nhiều thiếu sót
Hướng phát triển
– Cải tiến ử dụng dễ dàng , dẽ hiểu và bám sát sản xuất
Trang 38– Nắm bắt được cách làm mô hình và cách chọn thiết bị phù hợp
– Biết cách hoạt đông theo nhóm, tập thể
– Biết được hạn chế của bản thân, rút ra nhiều kinh nhiệm đẻ hoàn thành bản thân hơn
– Tìm hiểu về điều khiển qua mang internet
Do thời gian và trình độ bản thân có hạn nên bản thiết kế và mô hình không tránh những sai sót nhất định Bởi vậy em rất mong được sự góp ý, chỉ dạy của thầy
cô để chúng em rút ra đượcnhiều kinh nhiệm cho công việc thưc tế sau này
Cuối cùng em xin chân thành cảm ơn sự hướng dẫn nhiệt tình của thầy Vũ Đức Vạn cùng các thầy cô bộ môn đã tận tình dạy bảo và giúp đỡ chúng em trong quá trình học tập một lần nữa chúng em xin chân thành cảm ơn
Trang 39TÀI LIỆU THAM KHẢO
– Cộng đồng arduino Việt Nam http://arduino.vn/
– https://eie.uonbi.ac.ke/sites/default/files/cae/engineering/eie/MICROCONTROLLER-BASED%20IRRIGATION%20SYSTEM.pdf