Chức năng: Dùng để điểu khiển đóng mở mái che.
Động cơ bước được kết nối và điều khiển thông qua module DRV8825 như hình vẽ:
BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH 43 Hình 3.30 Kết nối động cơ bước với STM32F103C8T6
➢ Khối nguồn
• Sử dụng nguồn 5 VDC:
- Dịng tiêu thụ trên cảm biến DHT11 là 2.5 mA. - Dòng tiêu thụ trên cảm biến độ ẩm đất là 5 mA. - Dòng tiêu thụ trên LCD 20x4 là 10 mA.
- Dòng tiêu thụ trên cảm biến ánh sáng là 15 mA. - Dòng tiêu thụ trên cảm biến mưa là 100 mA.
- Dòng tiêu thụ trên khối 5 Relay là 200x5 = 1000 mA. - Dòng tiêu thụ trên buzzer 25mA.
- Dòng tiêu thụ trên ESP 8266 NodeMCU là 300 mA. - Dòng tiêu thụ trên quạt 170 mA.
- Dòng tiêu thụ trên khối DRV8825 là 2500 mA. Vậy Itổng = 4128mA.
• Sử dụng nguồn 12 VDC:
- Dòng tiêu thụ trên động cơ bước 670 mA.
- Dòng tiêu thụ trên 2 bơm mini là 230 + 230 = 460 mA. Vậy Itổng = 1130 mA.
BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH 44 Hình 3.31 Bình ắc-quy 12V-5Ah.
• Loại bình VRLA, siêu kín siêu bền, miễn bảo dưỡng, an tâm trên mọi hành trình.
• Dung lượng: 12V - 5Ah (10HR)
b. Tấm pin năng lượng mặt trời
Hình 3.32 Tấm pin năng lượng mặt trời 10W
• Cơng suất tấm pin năng lượng mặt trời: Pmax=10W
• Điện áp danh định: Usac=17.07V • Dịng danh định: Isac=0.58A
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 45 Hình 3.33 Sơ đồ kết nối hệ thống năng lượng mặt trời.
➢ Cơng thức cụ thể được tính bằng Dung lượng ắc quy chia cho dịng điện nạp.
tsac= Iac-quy /Isac =5/0.58= 8.62 giờ (3.1)
Trong đó:
- Isac:Dịng sạc từ pin năng lượng mặt trời.
- Iac-quy :Dòng ắc-quy khi đầy. - Tsac: thời gian sạc đầy ắc-quy.
➢ Cơng thức tính thời gian duy trì tiêu thụ của hệ thống khi ắc-quy ngưng sạc.
Thời gian sử dụng của Ắc quy phụ thuộc vào dung lượng của Ắc quy và công suất của tải. Cơng thức tính như sau:
t = (Ah*V* η)/P =(5*12*0,7)/(12*1,130+5*4,128)=1.23 giờ (3.2) Trong đó:
- t : là thời gian tối thiểu sử dụng điện từ Ắc quy (Giờ) ở mức liên tục. - Ah: Dung lượng Ắc quy (Ah)
- V: Điện áp Ắc quy (Volt) - P: Công suất tải(W)
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 46 Module hạ áp
Nguồn cấp chính của mạch là nguồn 12V nên nếu muốn sử dụng cho các thiết bị 5V hoặc cao hơn cần phải hạ áp nguồn. Ở đây nhóm sử dụng mạch hạ áp LM2596 để hạ áp cho mạch.
Hình 3.34 Hình ảnh module hạ áp LM2596 Thông số kỹ thuật: Thông số kỹ thuật:
• Điện áp đầu vào: 2.5V – 36V.
• Điện áp đầu ra: 1.25V – 35V (có thể điều chỉnh). • Dịng ngõ ra tối đa 3A, cơng suất 15W.
• Kích thước: 66mm x 36mm x 14mm.
Sơ đồ nguyên lý của module LM2596:
Hình 3.35 Hình sơ đồ nguyên lý mạch hạ áp LM2596
Khi cấp điện vào 2 chân Vin, dòng điện sẽ được đưa qua các tụ lọc nhiễu, sau đó được đưa qua IC LM2596. Thông qua biến trở để điều chỉnh ngõ ra của chân FeedBack, IC sẽ tạo ra điện áp tương ứng phụ thuộc vào giá trị của biến trở và đưa điện áp ra chân Out đưa ra ngồi.
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 47 3.2.3 Sơ đồ nguyên lý toàn mạch
➢ Mạch điều khiển trung tâm
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
48
CHƯƠNG 4. THI CÔNG HỆ THỐNG
4.1 GIỚI THIỆU
Sau q trình tính tốn và thiết kế chọn các thiết bị hợp lý nay tiến hành thi công mạch PCB, lắp ráp các linh kiện, hàn mạch và chạy thử mạch.
4.2 THI CÔNG HỆ THỐNG 4.2.1 Thi công bo mạch 4.2.1 Thi công bo mạch
Mạch điều khiển trung tâm, sử dụng STM32F103C8T6 và Nodemcu để điều khiển, gửi dữ liệu, có led báo ngõ ra để người sử dụng dễ dàng quan sát, mạch sử dụng nguồn do module hạ áp LM2596 cấp cho toàn mạch.
Bảng 4.1 Danh sách các linh kiện
STT Tên linh kiện Giá trị/SL Chú thích
1 STM32F103C8T6 1 Module xử lý trung tâm
2 Module NodeMCU
1 Là mudule trung gian để giao tiếp với wedserver
3 Module DRV8825 1 Để điều khiển động cơ bước
4 Trở 10k 1 Để dùng cho DHT11.
5 DHT11 1 Đo nhiệt độ, độ ẩm môi trường
6 Cảm biến độ ẩm đất
1 Đo độ ẩm đất
7 Cảm biến mưa 1 Nhận biết trời mưa
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
49
9 Tụ hóa 100uF. 1 Ổn định dịng cho động cơ bước
10 Màn hình LCD 20x4.
1 Hiển thị thông tin
11 Chuông 1 Dùng để cảnh báo
12 Quạt 1 Dùng để thơng gió giảm nhiệt độ
13 Động cơ bước 1 Dùng để đóng mở mái che
14 Đèn 1 Dùng để tăng nhiệt độ
15 Máy bơm 2 Dùng để phun sương và tưới
16 Mudule LM2596 2 Dùng để hạ áp
17 Domino 3 Dùng để nối đầu tải
18 Module relay đôi mức thấp
3 Dùng để đóng ngắt thiết bị
19 Rào cái 7 Dùng để kết nối với cảm biến, lcd ,
ngõ ra relay, động cơ bước
20 Trở 330 ôm 7 Để hạn dòng cho led
21 Trở 2k2 7 Để dùng cho nút nhấn
22 Led đỏ 7 Báo hiệu ngõ ra
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
50
➢ Sơ đồ bố trí linh kiện lớp trên và lớp dưới của mạch chính:
Hình 4.1 Sơ đồ bố trí linh kiện mặt trên
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
51 4.2.2 Lắp ráp và kiểm tra
Quy trình lắp ráp – kiểm tra mạch :
Bước 1: Chuẩn bị bo mica có kích thước 235mm x200mm màu trắng.
Bước 2: Tiến hành sắp xếp các module lên bo mica sao cho hợp lý, đánh dấu vị
trí.
Bước 3: Lần lượt gắn board STM32F103C8T6, NodeMCU, DRV8825, Module
Relay , L2596 và Domino vào bo mica.
Bước 4: Dùng dây dẫn đầu ghim kết nối các module với nhau.
Bước 5: Cấp nguồn vào hệ thống. Dùng đồng hồ đo áp ở ngõ vào và ngõ ra gắn
với các module và các cảm biến.
Bước 6: Cuối cùng nạp chương trình và test chương trình có đạt như u cầu
ban đầu khơng.
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
52 4.3 ĐĨNG GĨI VÀ THI CƠNG MƠ HÌNH
Sau khi thi cơng xong các mạch, giờ bắt đầu lắp vào mơ hình. a. Lắp ráp bộ điều khiển vào mơ hình
Tiến hành lắp ráp và cố định mạch điều khiển vào trong mơ hình, lắp đế để bảo vệ mạch.
b. Lắp ráp khối hiển thị vào mơ hình
Sau khi lắp xong khối điều khiển thì tiến hành lắp ráp và cố định mạch hiển thị vào trong mơ hình, lắp đế để bảo vệ mạch.
c. Lắp ráp các cảm biến và các tải vào mơ hình.
Sau khi lắp xong khối hiển thị thì tiến hành lắp ráp các các cảm biến và các tải vào mơ hình.
Hình 4.4 Mơ hình sau khi lắp 4.4 LẬP TRÌNH HỆ THỐNG 4.4 LẬP TRÌNH HỆ THỐNG
4.4.1 Lưu đồ giải thuật
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 53 Đúng Sai Sai Sai Đúng Đúng
Hình 4.5 Lưu đồ chương trình code điều khiển
➢ Giải thích lưu đồ chương trình code điều khiển:
Chương trình bắt đầu vào khởi động module wifi NodeMCU, LCD, khởi tạo các biến. Nếu chưa kết nối thì chương trình sẽ dừng đợi đến khi nào có kết nối Vịng lặp chương trình được thực hiện. Mặc định chương trình sẽ vào chế độ tự động (AUTO, Mode =0). Nếu muốn chuyển sang chế độ tay (Mode =1) thì cho phép điều khiển trực tiếp bằng tay. Đồng thời gửi các thông số cảm biến đo lên web.
b. Lưu đồ chế độ tự động: BẮT ĐẦU Cấu hình hệ thống Đọc g.trị cảm biến hiển thị LCD KT dữ liệu từ web Chế độ tay Chế độ tự động Gửi giá trị địa chỉ lên web Thực thi chế độ tay Thực thi chế độ tự động Thực thi lệnh điều khiển
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
54
Sai Sai Sai
Đúng Đúng Đúng Sai Sai Đúng Đúng Sai Sai Đúng Đúng Sai Đúng Sai Đúng Hình 4.6 Lưu đồ chế độ tự động BẮT ĐẦU T>30*C 10*C<T< 30*C T<10*C Bật chuông Bật quạt Tắt đèn Tắt chuông Tắt quạt Tắt đèn Bật đèn Bật chng, Tắt quạt Đóng mái che Độ ẩm <10 Độ ẩm >=10 CB quang
Bật phun sương Tắt phun sương
Bật đèn KẾT THÚC Độ ẩm đất < 10 Bật bơm tưới Độ ẩm đất >= 10 Tắt bơm tưới Mở mái che Tắt đèn CB mưa
BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH
55
➢ Giải thích lưu đồ chương trình chế độ tự động:
Chế độ tự động hoạt động như sau: Nhiệt độ cảm biến đo được sẽ so sánh với giá trị cài đặt trước đó nếu lớn hơn giới hạn cao nhất thì bật quạt, bật chng và tắt đèn, nếu nằm trong khoảng cài đặt thì tắt đèn, tắt quạt và tắt chng, nếu nhỏ hơn giới hạn thấp nhất thì mở đèn, mở chng và tắt quạt. Độ ẩm khơng khí thấp hơn giá trị cài đặt thì bật phun sương, ngược lại thì tắt phun sương. Độ ẩm đất thấp hơn giá trị cài đặt trước thì bật bơm tưới, ngược lại thì tắt bơm tưới. Cảm biến quang tác động thì bật đèn, ngược lại thì tắt đèn. Cảm biến mưa tác động thì đóng mái che, ngược lại thì mở mái che.
c. Lưu đồ chế độ bằng tay ( MANUAL)
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
56
➢ Giải thích lưu đồ chương trình chế độ tay:
Chế độ bằng tay hoạt động như sau: Nhấn nút đèn nếu đèn đang tắt thì mở đèn, ngược lại thì tắt đèn. Nhấn nút bơm nếu bơm đang tắt thì mở bơm, ngược lại thì tắt bơm. Nhấn nút quạt nếu quạt đang tắt thì mở quạt, ngược lại thì tắt quạt. Nhấn nút phun sương nếu phun sương đang tắt thì mở phun sương, ngược lại thì tắt phun sương. Nhấn nút mở mái che thì mái che mở. Nhấn nút đóng mái che thì mái che đóng.
d. Lưu đồ chuyển dữ liệu lên wed
Hình 4.8 Lưu đồ chuyển dữ liệu lên web.
➢ Giải thích lưu đồ truyền nhận dữ liệu lên wed
Khởi động ESP 8266 thiết lập kết nối. Kết nối thành công chuổi dữ liệu gửi từ web xuống ESP cập nhật các giá trị tại hệ thống và từ hệ thống các giá trị cảm biến đo được sẽ được gửi lên địa chỉ web.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
57 Hình 4.9 Lưu đồ chế độ điều khiển bằng wed
➢ Giải thích lưu đồ chương trình chế độ điều khiển bằng wed:
Chế độ bằng wed hoạt động như sau: Nhấn nút đèn nếu đèn đang tắt thì mở đèn, ngược lại thì tắt đèn. Nhấn nút bơm nếu bơm đang tắt thì mở bơm, ngược lại thì tắt bơm. Nhấn nút quạt nếu quạt đang tắt thì mở quạt, ngược lại thì tắt quạt. Nhấn nút phun sương nếu phun sương đang tắt thì mở phun sương, ngược lại thì tắt phun sương. Nhấn nút mái che nếu mái che mở đang mở thì đóng mái che, ngược lại thì mở mái che.
4.4.2 Phần mềm lập trình cho vi điều khiển a. Phần mềm lập trình cho NodeMCU
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
58
Mơi trường phát triển tích hợp Arduino IDE là một ứng dụng đa nền tảng được viết bằng Java, và được dẫn xuất từ IDE cho ngơn ngữ lập trình xử lý và các dự án lắp ráp. Do có tính chất mã nguồn mở nên mơi trường lập trình này hồn tồn miễn phí và có thể mở rộng thêm bởi người dùng có kinh nghiệm.
Người sử dụng chỉ cần định nghĩa hai hàm để thực hiện một chương trình hoạt động theo chu trình:
setup(): hàm chạy một lần duy nhất vào lúc bắt đầu của một chương trình
dùng để khởi tạo các thiết lập.
loop(): hàm được gọi lặp lại liên tục cho đến khi bo mạch được tắt.
Chu trình đó có thể mơ tả trong hình 4.20 dưới đây:
Hình 4.10 Quy trình làm việc của arduino
Arduino IDE hình 4.11 là nơi để soạn thảo code, kiểm ra lỗi và upload code.
BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH
59 Arduino IDE Menu:
Hình 4.12 Giao diện menu arduino IDE
➢ Filemenu:
Hình 4.13 Giao diện file menu arduino IDE.
Trong file menu cần quan tâm tới mục Examples, đây là nơi chứa các chương trình mẫu đơn giản như: cách sử dụng các chân digital, analog, sensor,…
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
60
➢ Edit menu
Hình 4.15 Giao diện edit menu arduino IDE
➢ Sketch menu:
- Verify/ Compile: chức năng kiểm tra lỗi code. - Show Sketch Folder: hiển thị nơi code được lưu. - Add File: thêm vào một Tap code mới.
- Include Library: thêm thư viện từ bên ngồi cho IDE.
BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH
61
➢ Tool menu:
Hình 4.17 Giao diện Tool Menu Arduino IDE
Trong Tool menu ta quan tâm các mục Board và Serial Port. Trong mục Board, cần phải lựa chọn board mạch cho phù hợp với loại board sử dụng. Nếu sử dụng loại board khác thì phải chọn đúng loại board mà mình đang có, nếu sai thì khi Upload chương trình vào chip sẽ bị lỗi. Nếu là NodeMCU thì phải chọn như hình 4.28:
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
62 Serial Port: đây là nơi lựa chọn cổng Com của NodeMCU. Khi chúng ta cài đặt
driver thì máy tính sẽ hiện thơng báo tên cổng Com của NodeMCU là bao nhiêu, ta chỉ việc vào Serial Port chọn đúng cổng Com để nạp code, nếu chọn sai thì khơng thể nạp code cho NodeMCU được.
Arduino Toolbar có một số button và chức năng của chúng như sau:
Hình 4.19 Arduino Toolbar
- Verify (1): kiểm tra code có lỗi hay khơng.
- Upload (2): nạp code đang soạn thảo vào Arduino. - New, Open, Save (3): Tạo mới, mở và lưu sketch.
- Serial Monitor (4): Đây là màn hình hiển thị dữ liệu từ Arduino gửi lên máy tính.
Hình 4.20 Chương trình nạp thành cơng. b. Phần mềm lập trình cho STM32F103C8T6 b. Phần mềm lập trình cho STM32F103C8T6
Keil uvision 5
Ngơn ngữ lập trình cho vi điều khiển ARM mà nhóm dùng là ngơn ngữ C.. Để vi điều khiển có thể hiểu được những gì mà người dùng cần đáp ứng cần có một trình biên dịch làm cầu nối giữa người dùng và vi điều khiển. Với những kiến thức được học hỏi ở nhà trường nhóm quyết định chọn phần mềm Keil uvision 5 để làm điều này.
Các bước để cài đặt phần mềm Keil uvision 5:
Bước 1: chạy file setup MDK511.
Các bạn nhấp chuột phải vào file mdk511.exe và chọn open.
BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH
63 Hình 4.21 Giao diện cài đặt phần mềm MDK511
Bước 3: Tick vào ơ I agree.... Sau đó nhấn Next để tiếp tục cài đặt.
Hình 4.22 Giao diện cài đặt MDK511
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
64 Hình 4.23 Chọn nơi lưu file cài đặt MDK511
Bước 5: Chờ cho quá trình cài đặt vào máy.
Hình 4.24 Quá trình cài đặt đang được thực hiện Bước 6: Kết thúc cài đặt nhấn Finish. Bước 6: Kết thúc cài đặt nhấn Finish.
BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH
65 Hình 4.25 Q trình cài đặt kết thúc
4.4.3 Phần mềm lập trình cho web.
Visual Studio Code là một trình biên tập mã được phát triển bởi Microsoft dành
cho Windows, Linux và macOS. Nó hỗ trợ chức năng debug, đi kèm với Git, có syntax highlighting, tự hồn thành mã thông minh, snippets, và cải tiến mã nguồn.