Đồ án Điện công nghiệp - Đề tài: Thiết kế hệ thống tưới cây tự động sử dụng arduino
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ
ĐỐ ÁN ĐIỆN CÔNG NGHIỆP
THIẾT KẾ HỆ THỐNG TƯỚI CÂY TỰ
ĐỘNG SỬ DỤNG ARDUINO
Cán bộ hướng dẫn:
Sinh viên thực hiện:
Ths. Hoàng Đăng Khoa
Lê Trường Thuận B1603753
Phan Thành Nam B1603734
Cần Thơ, 2019
Đồ án điện công nghiệp
LỜI NÓI ĐẦU
Ngày nay khoa học công nghệ ngày càng phát triển, vi điều khiển AVR và vi điều
khiển PIC ngày càng thông dụng và hoàn thiện hơn. Nhưng có thể nói sự xuất hiện của
Arduino vào năm 2005 tại Italia đã mở ra một hướng đi mới cho vi điều khiển. Sự xuất
hiện của Arduino đã hỗ trợ cho con người rất nhiều trong lập trình và thiết kế, nhất là
đối với những người mới bắt đầu tìm tòi về vi điều khiển mà không có quá nhiều kiến
thức, hiểu biết sâu sắc về vật lý và điện tử. Phần cứng của thiết bị đã được tích hợp nhiều
chức năng cơ bản và là mã nguồn mở. Ngôn ngữ lập trình trên nền Java lại vô cùng dễ
sử dụng tương thích với ngôn ngữ C/C++ và hệ thống thư viện rất phong phú và được
chia sẻ miễn phí. Chính vì những lý do như vậy nên Arduino hiện đang dần phổ biến và
được phát triển ngày càng mạnh mẽ trên toàn thế giới...Trong đề tài này, em sẽ thiết kế
một hệ thống tưới cây tự động được xây dựng với trung tâm là Arduino UNO R3 (một
trong các loại Board Arduino), chi phí thấp, thiết kế đơn giản, có ứng dụng rộng rải từ
mô hình nhỏ đơn giản đến mô hình lớn phức tạp.
GVHD: Th.s Hoàng Đăng Khoa
Trang i
Đồ án điện công nghiệp
LỜI CẢM ƠN
Qua đồ án này, nhóm em xin cảm ơn thầy Hoàng Đăng Khoa đã giúp đỡ cho chúng
em trong quá trình hoàn thành đồ án. Giúp chúng em hiểu rõ hơn về mạch Arduino, cách
thiết kế mạch, chạy code hay biết được nhiều ứng dụng hay của mạch Arduino. Ngoài
ra, nhờ thầy hướng dẫn nên chúng em cũng đã hoàn thành mạch in, hiểu được một quá
trình làm một mạch in với các công đoạn thiết kế, làm mạch, khoan và hàn các linh kiện.
Qua đó giúp chúng em tiến bộ hơn và đã có bước đầu hiểu hơn về các mạch điện tử.
Thông qua đồ án, chúng em đã tích lũy và học được một ít kinh nghiệm thực tế rất có ít
cho việc học tập và công việc của chúng em sau này. Bên cạnh đó còn có nhiều mặt hạn
chế do lần đầu tiếp xúc với linh kiện điện tử thực tế và còn do kỹ năng yếu kém nên dẫn
đến sản phẩm còn nhiều khuyết điểm, mông thầy sẽ thông cảm và bỏ qua cho chúng em.
Một lần nửa tụi em xin cảm ơn thầy Hoàng Đăng Khoa đã giúp đở nhóm em hoàng
thành đồ án này.
GVHD: Th.s Hoàng Đăng Khoa
Trang ii
Đồ án điện công nghiệp
MỤC LỤC
LỜI NÓI ĐẦU .............................................................................................................i
LỜI CẢM ƠN.............................................................................................................ii
MỤC LỤC ...............................................................................................................1
MỤC LỤC HÌNH ẢNH..............................................................................................3
CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI
1.1.
1.2.
Đặt vấn đề..............................................................................................4
Mục tiêu và phạm vi nghiên cứu đề tài .................................................4
CHƯƠNG 2. GIỚI THIỆU CÁC LINH KIỆN TRONG MẠCH
2.1. Arduino UNO R3 .......................................................................................5
2.1.1. Các thông số cơ bản của Arduino UNO R3 ..........................................6
2.1.2. Vi điều khiển .........................................................................................6
2.1.3. Các chân của Arduino ...........................................................................6
2.1.4. Lập trình cho Arduino...........................................................................7
2.2. Cảm biến độ ẩm và module chuyển đổi .....................................................7
2.2.1. Cảm biến độ ẩm.....................................................................................7
2.2.2. Module chuyển đổi................................................................................7
2.3. Module 5VDC 2 kênh ................................................................................9
2.4. Động cơ bơm 12V ....................................................................................10
2.5. Điện trở 220Ω và Led...............................................................................11
2.6. Bộ nguồn nhiều ngõ ra .............................................................................12
CHƯƠNG 3.GIỚI THIỆU ARDUINO IDE & PROTEUS VÀ MÔ PHỎNG HỆ
THỐNG
3.1. Phần mềm mô phỏng Proteus...................................................................13
3.2. Thư viện Arduino cho Proteus .................................................................14
3.3. Arduino IDE và lập trình cho Arduino.....................................................14
3.4. Mô phỏng hệ thống...................................................................................15
3.4.1 Mô phỏng mạch nguyên lý trên Proteus ...............................................16
GVHD: Th.s Hoàng Đăng Khoa
Trang 1
Đồ án điện công nghiệp
3.4.2 Nguyên lý hoạt động .............................................................................16
3.4.3 Viết code chương trình cho Arduino.....................................................16
CHƯƠNG 4. THIẾT KẾ MẠCH
4.1. Thiết kế mạch in......................................................................................21
4.2. Thi công mạch.........................................................................................21
CHƯƠNG 5. NHẬN XÉT VÀ KẾT LUẬN
5.1. Nhận xét ...................................................................................................23
5.2. Kết luận ....................................................................................................23
TÀI LIỆU THAM KHẢO.........................................................................................24
GVHD: Th.s Hoàng Đăng Khoa
Trang 2
Đồ án điện công nghiệp
MỤC LỤC HÌNH ẢNH
Hình 1. Hình dáng bên ngoài của Arduino .................................................................5
Hình 2. Thông số cơ bản của Arduino ........................................................................6
Hình 3. Cảm biến độ ẩm .............................................................................................7
Hình 4. Module chuyển đổi.........................................................................................7
Hình 5. Module relay 5VDC 2 kênh...........................................................................9
Hình 6. Động cơ bơm 12V........................................................................................10
Hình 7. Điện trở 220Ω .............................................................................................11
Hình 8. Led ...............................................................................................................11
Hình 9. Bộ nguồn nhiều ngõ ra.................................................................................12
Hình 10. Giao diện phần mềm Proteus 8.7 ...............................................................13
Hình 11. Các linh kiện trong thư viện Arduino cho Proteus.....................................14
Hình 12. Giao diện phần mềm Arduino IDE ............................................................15
Hình 13. Mạch nguyên lý vẽ trên Proteus.................................................................16
Hình 14. Viết code bằng Arduino IDE......................................................................16
Hình 15. Sơ đồ mạch in trên Proteus ........................................................................21
Hình 16. Mạch thực tế sau khi hoàn thành................................................................22
Hình 17. Mô hình thực tế sau khi lắp đặt..................................................................22
GVHD: Th.s Hoàng Đăng Khoa
Trang 3
Đồ án điện công nghiệp
CHƯƠNG 1. TỔNG QUANG VỀ ĐỀ TÀI
1.1 ĐẶT VẤN ĐỀ
Thực tế trong cuộc sống ngày càng bận rộn, nhiều người vẫn có thú vui là trồng
những cây cảnh, vườn rau trong không gian trống của nhà mình như sân thượng, ban
công. Tuy nhiên, trong những lúc bạn bận các công việc hằng ngày thì những cây cảnh
và vườn hoa ở nhà sẽ không được ai tưới nước. Ngoài phương pháp tưới cây phổ thông,
chúng ta có thể tạo ra những hệ thống tưới cây tự động đơn giản cho khu vườn nhỏ của
mình thậm chí có thể mở rộng hệ thống tưới cây cho cả một khu vườn lớn.
1.1
MỤC TIÊU VÀ PHẠM VI NGHIÊN CỨU ĐỀ TÀI
Mục tiêu của đồ án là thiết kế một hệ thống tưới cây tự động đơn giản với nguyên
lý là thông qua cảm biến độ ẩm của đất để truyền tín hiệu cho hệ thống để biết lúc nào
nên vận hành động cơ bơm nước cho khu vườn. Tất cả mọi việc đều tự động diễn ra
trong quá trình cài đặt sẵn và qua các cảm biến để điều tiết việc tưới cây hợp lí trong
mọi thời tiết.
Với mô hình mạch đơn giản, chi phí thấp, dễ thiết kế nên có thể áp dụng rộng rải
vào cuộc sống thực tế của chúng ta.
GVHD: Th.s Hoàng Đăng Khoa
Trang 4
Đồ án điện công nghiệp
CHƯƠNG 2. GIỚI THIỆU CÁC LINH KIỆN TRONG MẠCH
2.1
ARDUINO UNO R3
•Arduino thực sự đã gây sóng gió trên thì trường thế giới trong nhiều năm qua với
số lượng người dùng cực lớn và đa dạng với trình độ trải rộng từ bậc phổ thông đến bậc
đại học.
•Arduino UNO R3 là một trong những mạch Arduino được sữ dụng phổ biến nhất.
Hiện nay, dòng mạch này đã phát triển đến thế hệ thứ 3 (R3).
Hình 1: Hình dáng bên ngoài Arduino
2.1.1
Các thông số cơ bản của Arduino UNO R3
GVHD: Th.s Hoàng Đăng Khoa
Trang 5
Đồ án điện công nghiệp
Hình 2: Thông số cơ bản của Arduino
Vi điều khiển.
2.1.2
•Arduino Uno được xây dựng với phân nhân là vi điều khiển ATmega328P sử
dụng thạch anh có chu kì dao động là 16 MHz. Với vi điều khiển này, ta có 14 ngỏ
ra/vào được đánh số từ 0 đến 13. Song song đó, ta có thêm 6 ngỏ nhậ tín hiệu analog
được đánh ký hiệu từ A0 đến A5.
•Trên board còn có 1 nút reset, 1 ngõ kết nối với máy tính qua cổng USB và 1 ngõ
cấp nguồn sử dụng jack 2.1mm lấy năng lượng trực tiếp từ AC-DC adapter hay thông
qua ắc-quy nguồn.
2.1.3
•Các chân năng lượng: GND (Ground), 5V, 3.3V, Vin (Voltage Input), IOREF,
RESET.
Các chân của Arduino.
•Các cổng ra/vào: Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu
và 6 chân analog (A0 - A5) cung cấp độ phân giải tín hiệu 10bit, để đọc giá trị điện áp
trong khoảng 0V - 5V.
GVHD: Th.s Hoàng Đăng Khoa
Trang 6
Đồ án điện công nghiệp
2.1.4
Lập trình cho Arduino.
•Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngôn riêng. Ngôn ngữ
này dựa trên ngôn ngữ Wiring được viết cho phần cứng nói chung và Wiring lại là một
biến thể của C/C++. Có người gọi nó là Wiring, một số khác thì gọi là C hay C/C++ và
tên gọi phổ biến nhất là ngôn ngữ Arduino. Ngôn ngữ Arduino bắt nguồn từ C/C++ phổ
biến hiện nay do đó rất dễ học và từ việc lập trình ta có thể thiết kế mạch theo ý muốn
của mình và vận hành một cách hiệu quả và tối ưu nhất.
2.2
CẢM BIẾN ĐỘ ẨM ĐẤT VÀ MODULE CHUYỂN ĐỔI.
Cảm biến độ ẩm đất.
2.2.1
Hình 3. Cảm biến độ ẩm đất
•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.
2.2.2
Module chuyển đổi.
Hình 4. Module chuyển đổi
GVHD: Th.s Hoàng Đăng Khoa
Trang 7
Đồ án điện công nghiệp
•
Module 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.
•
Đặc điểm:
Điện áp hoạt động: 3.3V-5V
Kích thước PCB: 3cm × 1.6cm
Led báo hiệu
o
o
Led đỏ báo nguồn
Led xanh báo mức độ ẩm ở pin DO
Mô tả các pin trên module
•
Nguyên lý hoạt động của cảm biến độ ẩm
GVHD: Th.s Hoàng Đăng Khoa
Trang 8
Đồ án điện công nghiệp
Khi module cảm biến độ ẩm phát hiện, khi đó sẽ có sự thay đổi điện áp ngay tại đầu vào
của ic LM393. Ic này nhận biết có sự thay đổi nó sẽ đưa ra một tín hiệu 0V để báo hiệu.
và thay đổi như thế nào sẽ được tính toán để đọc độ ẩm đất.
+ Cảm biến độ ẩm đất rất nhạy với độ ẩm môi trường xung quanh, thường được sử dụng
để phát hiện độ ẩm của đất.
+ Khi độ ẩm đất vượt quá giá trị được thiết lập, ngõ ra của module D0 ở mức giá trị là
0V.
+
Ngõ ra D0 có thể được kết nối trực tiếp với vi điều khiển như
(Arduino,PIC,AVR,STM), để phát hiện cao và thấp, và do đó để phát hiện độ ẩm của
đất.
+ Đầu ra Analog AO có thể được kết nối với bộ chuyển đổi ADC, có thể nhận được các
giá trị chính xác hơn độ ẩm của đất.
2.3
MODULE RELAY 5VDC 2 KÊNH
Hình 5. Module relay 5VDC 2 kênh
•
Relay 2 Kênh gồm 2 rơ le hoạt động tại điện áp 5VDC, chịu được hiệu
điện thế lên đến 250VAC 10A. Relay 2 kênh được thiết kế chắc chắn, khả năng
cách điện tốt. Trên module đã có sẵn mạch kích relay sử dụng transistor và IC
cách ly quang giúp cách ly hoàn toàn mạch điều khiển (vi điều khiển) với relay,
bảo đảm vi điều khiển hoạt động ổn định.
GVHD: Th.s Hoàng Đăng Khoa
Trang 9
Đồ án điện công nghiệp
•
Mạch relay 2 kênh sử dụng chân kích mức thấp (0V), mức cao (5V) tùy
thuộc vào chọn Jumper. Ứng dụng với relay module khá nhiều bao gồm cả điện
DC hay AC.
•
Thông số kỹ thuật:
Điện áp hoạt động: 5VDC.
Tín hiệu kích: High (5V) hoặc Low (0V) chọn bằng Jumper.
Nguồn cấp: 5VDC.
Tiếp điểm đóng ngắt max: 250VAC-10A hoặc 30VDC-10A
Kích thước: 52mm × 41mm × 19mm.
Điện áp hoạt động: 5VDC
Có thể sử dụng relay để điều khiển các thiết bị có công suất 30VDC-10A hoặc
250VAC-10A
Điện áp kích mức thấp
2.4
ĐỘNG CƠ BƠM 12V
Hình 6. Động cơ bơm 12V
•
Thông số kỹ thuật:
Máy bơm có điện áp: DC 12V
Dòng tiêu thụ: 0.6-2A
Công suất: 5-12W
Lưu lượng bơm: 1-2 lít/phút
Kích thước: 90×40×35 mm.
GVHD: Th.s Hoàng Đăng Khoa
Trang 10
Đồ án điện công nghiệp
2.5
ĐIỆN TRỞ 220Ω VÀ LED
• Điện trở 220V
Hình 7. Điện trở 220Ω
Led:
Led hoạt động ở mức 1,8 đến 3V, dòng 10 đến 20mA.
•
Hình 8. Led
GVHD: Th.s Hoàng Đăng Khoa
Trang 11
Đồ án điện công nghiệp
2.6
BỘ NGUỒN NHIỀU NGÕ RA
Hình 9. Bộ nguồn nhiều ngõ ra
Thông số kỹ thuật:
•
- Điện áp ngõ vào: AC 220V
- Điện áp ngõ ra: DC 3.3V, 5V, 9V, 12V
- Cường độ dòng điện: 1A
•
Sử dụng nguồn DC 9V cấp cho Arduino UNO R3 qua jack cắm, sử dụng
nguồn DC 12V cấp cho động cơ bơm.
GVHD: Th.s Hoàng Đăng Khoa
Trang 12
Đồ án điện công nghiệp
CHƯƠNG 3 GIỚI THIỆU ARDUINO IDE & PROTEUS VÀ MÔ
PHỎNG HỆ THỐNG
3.1 PHẦN MỀM MÔ PHỎNG PROTEUS
Phần mềm Proteus là phần mềm cho phép mô phỏng hoạt động của mạch điện tử
bao gồm phần thiết kế mạch và viết chương trình điều khiển cho các họ vi điều khiển
MCS-51, PIC, AVR,... Proteus là phần mềm mô phỏng mạch điện tử của Labcenter
Electronic, mô phỏng cho hầu hết các linh kiện điện tử thông dụng, đặc biệt hỗ trợ cho
các MCU như PIC, 8051, AVR, Motorola.
Phần mềm bao gồm 2 chương trình: ISIS cho phép mô phỏng mạch và ARES
dùng để vẽ mạch in. Proteus là phần mềm mô phỏng cho các loại vi điều khiển khá tốt,
hỗ trợ các dòng vi điều khiển PIC, 8051, dsPIC, AVR, HC11,... các giao tiếp I2C, SPI,
CAN, USB, Ethenet,... ngoài ra còn mô phỏng các mạch số, mạch tương tự một cách
hiệu quả.
Hình 10. Giao diện phần mềm Proteus 8.7
GVHD: Th.s Hoàng Đăng Khoa
Trang 13
Đồ án điện công nghiệp
3.2 THƯ VIỆN ARDUINO TRONG PROTEUS
Thư viện Arduino là một bổ sung rất hay cho phần mềm Proteus, nó giúp cho
việc mô phỏng Arduino được thuận tiện và dễ dàng hơn thay vì chỉ mô phỏng được
chip Atmega328 (nhân của Arduino), thư viện này được phát triển bởi các kỹ sư Cesar,
Osaka, Daniel Cezar, Roberto Bauer và được đăng tải trên blog tiếng Bồ Đào Nha
Thư viện bao gồm các linh kiện sau:
- Arduino UNO (Phiên bản chip Atmega328 chân DIP)
- Arduino UNO (Phiên bản chip Atmega328 chân SMD)
- Arduino mega
- Arduino Lilypad
- Arduino Nano
- Cảm biến siêu âm Ultrasonic V2
Hình 11. Các linh kiện trong thư viện Arduino cho Proteus
3.3 ARDUINO IDE VÀ LẬP TRÌNH CHO ARDUINO
Thiết kế bo mạch nhỏ gọn, trang bị nhiều tính năng thông dụng mang lại nhiều
lợi thế cho Arduino, tuy nhiên sức mạnh thực sự của Arduino nằm ở phần mềm. Môi
GVHD: Th.s Hoàng Đăng Khoa
Trang 14
Đồ án điện công nghiệp
trường lập trình đơn giản dễ sử dụng, ngôn ngữ lập trình Wiring dễ hiểu và dựa trên
nền tảng C/C++ rất quen thuộc với người làm kỹ thuật. Và quan trọng hơn là số lượng
thư viện code được viết sẵn và chia sẽ bởi cộng đồng nguồn mở là cực kỳ lớn.
Hình 12. Giao diện phần mềm Arduino IDE
Arduino IDE là phần mềm dùng để lập trình cho Arduino. Môi trường lập trình
cho Arduino là IDE có thể chạy trên ba nền tảng phổ biến nhất hiện nay là Windows,
Macintosh OSX là Linux. Do có tính chất nguồn mở nên môi trường lập trình này
hoàn toàn miển phí và có thể mở rộng bởi người dùng có kinh nghiệm
Ngôn ngữ lập trình có thể được mở rộng thông qua các thư viện C++. Và ngôn
ngữ lập trình này dựa trên nền tảng của ngôn ngữ C của AVR nên người dùng hoàn
toàn có thể nhúng thê code viết bằng AVR vào chương trình nếu muốn. Hiện tại,
GVHD: Th.s Hoàng Đăng Khoa
Trang 15
Đồ án điện công nghiệp
3.4 MÔ PHỎNG HỆ THỐNG
3.4.1 Mô phỏng mạch nguyên lý trên Proteus
Hình 13. Mạch nguyên lý vẽ trên Proteus
3.4.2 Nguyên lý hoạt động:
Giá trị độ ẩm của đất được nhận biết qua cảm biến độ ẩm và đưa về bộ điều
khiển là Arduino UNO R3 bằng tín hiệu Digital. Khi đất không đủ độ ẩm giá trị tín
hiệu gởi về là 0, bộ điều khiển đưa tín hiệu cho đóng Rờ le và động cơ máy bơm bắt
đầu hoạt động bơm nước tưới vào chậu. Khi đã đủ nước, độ ẩm cao, cảm biến sẽ gởi
về tín hiệu có giá trị là 1, bộ điều khiển đưa tín hiệu ngắt rờ le, máy bơm dừng hoạt
động.
Led đỏ có tác dụng báo hiệu độ ẩm thấp, chậu cây đang thiếu nước.
Led xanh có tác dụng báo hiệu độ ẩm cao, chậu cây đã đủ nước.
Led vàng có tác dụng báo hiệu trạng thái hoạt động và dừng của máy bơm.
3.4.3 Viết code chương trình cho Arduino
Khởi động phần mềm Arduino IDE và soạn code. Sau khi lập trình xong, nhấn
để biên dịch code sau vài giây phần mềm sẽ biên dịch cho ta 1 file hex của chương trình
GVHD: Th.s Hoàng Đăng Khoa
Trang 16
Đồ án điện công nghiệp
Hình 14. Viết code bằng Arduino IDE
Sau khi tạo được file hex t nạp file vào linh kiện Arduino trong proteus để chạy
mô phỏng hệ thống.
❖
Mã code của hệ thống:
/**
* Automatic Watering using Arduino
* Cao Hieu 2016
*/
int const SENSOR_MH_D_PIN = 4;
int const SENSOR_MH_A_PIN = A0;
int const T_RELAY_PIN = 2;
int const TIME_TO_GET_SAMPLE = 5000; //5s
int const SAMPLE_TIME = 500; //0.5 s
int const LED_PIN = 13;
int const LED_BLUE_PIN = 10;
int const LED_YEWLOW_PIN = 9;
int const LED_RED_PIN = 8;
int const TREE_WATER_LEVEL_HIGH = 600;
GVHD: Th.s Hoàng Đăng Khoa
Trang 17
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Điện công nghiệp - Đề tài: Thiết kế hệ thống tưới cây tự động sử dụng arduino", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- do_an_thiet_ke_he_thong_tuoi_cay_tu_dong_su_dung_arduino.docx