THI CÔNG HỆ THỐNG

Một phần của tài liệu Điều khiển thiết bị điện thông qua trợ lý ảo google assistant 50 (Trang 33)

a Sơ đồ mạch in của mạch điều khiển độ sáng đèn bulb

Đối với mạch điều khiển độ sáng đèn bulb nhóm em vẽ mạch in 2 lớp PCB

Hình 4 1 Sơ đồ mạch in lớp trên và dưới mạch điện điều khiển độ sáng đèn bulb

CHƢƠNG 4 THI CÔNG HỆ THỐNG

b Sơ đồ bố trí linh kiện trong mạch điều khiển độ sáng đèn bulb

Hình 4 2 Sơ đồ bố trí linh kiện mạch điều khiển độ sáng đèn bulb

c Sơ đồ mạch in của mạch giám sát nhiệt độ, độ ẩm và chuyển động

Đối với mạch giám sát nhiệt độ, độ ẩm và chuyển động nhóm em vẽ mạch in 2 lớp PCB

Hình 4 3 Sơ đồ mạch in lớp trên và dưới mạch giám sát nhiệt độ, độ ẩm và chuyển động

CHƢƠNG 4 THI CÔNG HỆ THỐNG

d Sơ đồ bố trí linh kiện trong mạch giám sát nhiệt độ, độ ẩm và chuyển động

Hình 4 4 Sơ đồ bố trí linh kiện mạch giám sát nhiệt độ, độ ẩm và chuyển động

Bảng 4 1 Danh sách các linh kiện sử dụng

STT Tên linh kiện Giá trị Số

lƣợng

Chú thích

1 IC ổn áp AMS 1117

Điện áp vào tối đa 15V, dòng ra tối đa 1A

3 Linh kiện dán kích thƣớc 6 71mm x 79mm x 1 8mm

2 Tụ 100uF Điện dung 100uF, điện áp 25V

6 Linh kiện dán, kích thƣớc 6 3mmx7 7mm 3 Tụ 104 Điện dung 104pF,

điện áp 25V

3 Linh kiện xuyên lỗ kích thƣớc 2mm x 1 25mm

4 Điện trở 1k8 Ω Giá trị điện trở 1k8 Ω, công suất 1/8W

9 Linh kiện dán kích thƣớc 2mm x 1 25mm 5 Diode zener Diode zener 3V3,

công suất 1W

9 Linh kiện xuyên lỗ, kích thƣớc 4 10mm x 2 6 mm

CHƢƠNG 4 THI CÔNG HỆ THỐNG

6 Điện trở 10k Ω Giá trị điện trở 10k Ω, công suất 1/8W

11 Linh kiện dán, kích thƣớc 2mm x 1 25mm

7 Điện trở 4k7 Ω Giá trị điện trở 4k7 Ω, công suất 1/8W 9 Linh kiện dán, kích thƣớc 2mmx1 25mm 8 ESP8266 ESP- 12E NodeMCU Điện áp 3 0V – 3 6 V Dòng tiệu thụ trung bình 80mA 3 Linh kiện dán 16mm x 24mm x 3mm

9 Opto PC817 Điện áp vào chân 1 không quá 6V, điện áp qua chân 4 không quá 35V, dòng tiêu thụ trung bình 50mA

4 Linh kiện xuyên lỗ, kích thƣớc 7 62mm x 4 58mm x 3 5mm

10 Mosfet irf 830 Điện áp chịu đựng không quá 500V, điện áp kích không quá 20V,công suất 125W

2 Linh kiện xuyên lỗ

11 Điện trở 220Ω Giá trị điện trở 220, công suất 1/8W

4 Linh kiện dán kích thƣớc 2mm x 1 25mm

12 Điện trở 100Ω Giá trị điện trở 100, công suất 1/8W

4 Linh kiện dán kích thƣớc 2mm x 1 25mm

13 Led xanh lá Điện áp hoạt động từ 3 0V – 3 4 V, dòng tiêu thụ 10mA 4 Linh kiện dán kích thƣớc 2mm x 1 25mm 14 Cảm biến DHT11 Điện áp hoạt động 3V – 5V (DC), dòng tiêu thụ 2 5mA

CHƢƠNG 4 THI CÔNG HỆ THỐNG

4 2 2 Lắp ráp và kiểm traa Mạch nguồn a Mạch nguồn

- Mạch nguồn công suất

Mạch nguồn công suất thiết của bị đèn có điện áp ngõ ra 210VDC, ở đây do nhóm chúng em cải tiến từ thiết bị đèn có sẵn trên thị trƣờng nên nhóm chúng em sẽ sử dụng mạch nguồn công suất có sẵn của đèn, nếu xét về tính thƣơng mại thì sẽ giúp giảm đi thời gian và chi phí sản xuất

Hình 4 5 mạch nguồn công suất

- Mạch nguồn điều khiển

Mạch nguồn nguồn này cung cấp điện áp 5VDC và dòng điện ngõ ra tối đa là 700mA cho mạch điều khiển độ sáng đèn bulb và mạch giám sát nhiệt độ, độ ẩm và chuyển động Do mạch nguồn có ngõ ra 5VDC và mức dòng điện 700mA nên phù hợp với các mạch này và kèm theo đó là tính ổn định có bảo vệ ngắn mạch, kích thƣớc nhỏ phù hợp khoản không gian nhỏ bên trong vỏ đèn nên nhóm em đã chọn 15 Nút nhấn 2 chân Điện áp chịu đựng

12VDC,dòng chịu đựng 50mA

3 Linh kiện dán, Kích thƣớc 6 0x3 6x2 5mm 16 Buzzer Điện áp hoạt động

5V

1 Linh kiện xuyên lỗ 17 Đế cắm bus 2

chân

10 Linh kiện xuyên lỗ 18 Đế cắm bus 3

chân

1 Linh kiện xuyên lỗ 19 Đế cắm bus 4

chân

1 Linh kiện xuyên lỗ 20 Đế cắm bus 6

chân

CHƢƠNG 4 THI CÔNG HỆ THỐNG

mua mạch nguồn này

Hình 4 6 Module nguồn điều khiển 5V-700mA

b Lắp ráp mạch điều khiển độ sáng đèn bulb -

- - -

Bƣớc 1: Hàn vi điều khiển ESP8266-ESP 12E lên mạch Bƣớc 2: Hàn điện trở, led, tụ, nút nhấn, ASM1117 lên mạch Bƣớc 3: Hàn các jump kết nối, opto PC817,diode zener, irf830 Bƣớc 4: Dùng đồng hồ đo kiểm tra thông mạch

Hình 4 7 Mặt trên và dưới của mạch điều khiển độ sáng đèn bulb sau khi hàn

c Lắp ráp mạch giám sát nhiệt độ, độ ẩm và chuyển động - Bƣớc 1: Hàn vi điều khiển ESP8266-ESP 12E lên mạch - Bƣớc 2: Hàn điện trở, led, tụ, nút nhấn, ASM1117 lên mạch

- Bƣớc 3: Hàn các jump kết nối, opto PC817,diode zener,buzzer, DHT11 - Bƣớc 4: Dùng đồng hồ đo kiểm tra thông mạch

CHƢƠNG 4 THI CÔNG HỆ THỐNG

Hình 4 8 Mặt trên và dưới mạch giám sát nhiệt độ, độ ẩm và chuyển động sau khi hàn

d Kiểm tra toàn bộ mạch đã thi công  Mạch điều khiển độ sáng đèn bulb

- - -

-

-

Bƣớc 1: Kiểm tra mối hàn chì ở những chân linh kiện với đƣờng mạch Bƣớc 2: Kiểm tra đƣờng dây mạch liên kết các kinh kiện với nhau

Bƣớc 3: Cấp nguồn vào kiểm tra nguồn ở chân vào, chân ra của ic tạo nguồn, nguồn vào ở các chân nguồn của vi điều khiển

Bƣớc 4: Nạp chƣơng trình cơ bản vào vi điều khiển và kiểm tra xem có hoạt động tốt không

Bƣớc 5: Dùng vi điều khiển xuất xung cấp nguồn kiểm tra kích Mosfet để tắt bật và chỉnh độ sáng tối đèn

 Mạch giám sát nhiệt độ, độ ẩm và chuyển động - - - - - -

Bƣớc 1: Kiểm tra mối hàn chì ở những chân linh kiện với đƣờng mạch Bƣớc 2: Kiểm tra đƣờng dây mạch liên kết các kinh kiện với nhau

Bƣớc 3: Cấp nguồn vào kiểm tra nguồn ở chân vào, chân ra của ic tạo nguồn, nguồn vào ở các chân nguồn của vi điều khiển

Bƣớc 4: Nạp chƣơng trình cơ bản vào vi điều khiển và kiểm tra xem có hoạt động tốt không

CHƢƠNG 4 THI CÔNG HỆ THỐNG

 Kết quả thu đƣợc:

• Sau khi thực hiện các ƣớc kiểm tra trên thu đƣợc bảng kết quả sau:

Bảng 4 2 Bảng kết quả sau quá trình kiểm tra mạch điều khiển độ sáng đèn bulb

Bảng 4 3 Bảng kết quả sau quá trình kiểm tra mạch giám sát nhiệt độ,độ ẩm và

chuyển động

Đối tƣợng kiểm tra Kết quả

Các mối hàn Tiếp xúc tốt

Các đƣờng mạch Không xảy ra chạm đƣờng mạch

Nguồn Nguồn vào 5VDC, nguồn ra ở ic AMS1117 đúng 3 3V, nguồn vào ESP8266 đúng 3 3VDC Hoạt động ESP8266 - Khi viết 1 chƣơng trình cho ESP8266

phát wifi và ESP8266 đã hoạt động tốt

- Khi viết 1 chƣơng trình nhỏ cho

ESP8266 ở mạch đèn tạo xung PWM và ESP8266 đã hoạt động tốt

Mạch công suất Sau khi cấp nguồn 210VDC cho mạch công suất và cấp xung pwm cho mạch nhận thấy rằng Mosfet đƣợc mở cổng đèn sáng ổn định Mosfet không nóng

Đối tƣợng kiểm tra Kết quả

Các mối hàn Tiếp xúc tốt

Các đƣờng mạch Không xảy ra chạm đƣờng mạch

Nguồn Nguồn vào 5VDC, nguồn ra ở ic AMS1117 đúng 3 3V, nguồn vào ESP8266 đúng 3 3VDC

CHƢƠNG 4 THI CÔNG HỆ THỐNG

Hoạt động ESP8266 -

-

Khi viết 1 chƣơng trình cho ESP8266 phát wifi và ESP8266 đã hoạt động tốt

Khi viết 1 chƣơng trình cho ESP8266 đọc nhiệt độ,độ ẩm và chuyển động từ cảm biến và ESP8266 giao tiếp đƣợc

4 3 THI CÔNG MÔ HÌNH

 Mô hình mạch điều khiển độ sáng đèn bulb

Nhóm chúng em lắp ráp các mạch điện vào bên trong đèn thực hiện các bƣớc sau:

- Bƣớc 1: Ghép khối nguồn công suất và khối nguồn điều khiển lại với nhau, sau đó hàn ngõ vào 220VAC vào hai khối nguồn và hàn ngõ ra 5VDC của khối nguồn điều khiển và ngõ ra 210VDC của khối nguồn công suất vào 2 đầu dây bus 2 tƣơng ứng để thuận tiện kết nối với mạch điều khiển

CHƢƠNG 4 THI CÔNG HỆ THỐNG

-

-

Bƣớc 2: Cắt tấm form đặt vào và cho các dây bus nguồn đi qua, kết nối với mạch điều khiển và đặt mạch điều khiển lên

Hình 4 10 Công đoạn lắp ráp bước 2

Bƣớc 3: Kết nối jump đèn với mạch điều khiển và đậy nắp chụp nhôm lên

CHƢƠNG 4 THI CÔNG HỆ THỐNG

- Bƣớc 4: Cuối cùng ta lấy nắp đèn đậy lại

Hình 4 12 Kết quả sau khi lắp ráp

 Mô hình mạch giám sát nhiệt độ, độ ẩm và chuyển động

Nhóm em lắp ráp mạch giám sát nhiệt độ, độ ẩm và chuyển động vào hộp đựng gồm các bƣớc sau:

- Bƣớc 1: Đục lỗ nắp hộp và gắn các led và cảm biến PIR lên

CHƢƠNG 4 THI CÔNG HỆ THỐNG

-

-

Bƣớc 2: Đặt mạch giám sát nhiệt độ, độ ẩm và chuyển động, gắn module nguồn điều khiển vào bên trong đế hộp

Hình 4 14 Công đoạn lắp ráp bước 2

Bƣớc 3: Kết nối đèn led và cảm biến PIR trên nắp với mạch giám sát nhiệt độ, độ ẩm và chuyển động và đậy nắp lại

CHƢƠNG 4 THI CÔNG HỆ THỐNG

4 4 LẬP TRÌNH MẠCH ĐIỀU KHIỂN ĐỘ SÁNG ĐÈN BULB 4 4 1 Lƣu đồ giải thuật 4 4 1 Lƣu đồ giải thuật

Bắt đầu

Khởi tạo Serial, khởi tạo Wifi Manager

Tiến hành kết nối với mạng Wifi Mạng wifi đã S được kết nối ? Chuyển sang chế độ Access point S Đ Mạng wifi đã được kết nối ? Đ

Đăng kí MQTT,khởi tạo kết nối với cơ sở dữ liệu thời gian thực Firebase

Kết nối với MQTT

Đọc dữ liệu từ Adafruit_MQTT, xử lí bật tắt đèn hoặc tăng giảm biến độ

sáng, gửi giá trị độ sáng lên Firebase

Kết nối S Firebase lỗi ?

Đ

Giữ nguyên giá trị pwm hiện tại

Đọc giá trị độ sáng từ Firebase, so sánh với các giá trị từ 1 đến 10 để

xuát pwm tương ứng

Kết thúc

CHƢƠNG 4 THI CÔNG HỆ THỐNG

Khi có nguồn cung cấp cho mạch vi điều khiển ESP8266 ESP-12E NodeMCU sẽ hoạt động khởi tạo Serial, Wifi Manager Tiếp theo nó sẽ tiến hành kết nối với Wifi, nếu kết nối đƣợc thì tiến hành đăng kí MQTT và khởi tạo kết nối Firebase, trƣờng hợp không kết nối đƣợc thì nó sẽ chuyển sang chế độ Access point ( điểm truy cập) và đợi ngƣời dùng kết nối với Wifi do nó phát ra và thiết lập Wifi cho nó tại địa chỉ 192 168 4 1 Sau khi ngƣời dùng thiết lập xong ESP sẽ chuyển sang chế độ Station ( thu Wifi ) và kết nối Wifi, nếu vẫn chƣa kết nối đƣợc thì nó vẫn ở chế độ Access point

Trong vòng lặp tuần hoàn:

Thực hiện chƣơng trình kết nối MQTT, sau đó đọc dữ liệu từ Adafruit_MQTT và so sánh với các địa chỉ đăng kí MQTT, nếu đúng địa chỉ thì sẽ xử lí dữ liệu nhận đƣợc để bật tắt thiết bị đèn, hoặc tăng giảm biến độ sáng và gửi lại giá trị độ sáng lên Firebase

Nếu kết nối với Firebase bị lỗi sẽ giữ nguyên giá trị PWM hiện tại Sau đó đọc giá trị độ sáng trên Firebase và so sánh với các giá trị từ 1 đến 10 để xuất ra PWM tƣơng ứng

Chƣơng trình cứ thế lặp lại

4 4 2 Chƣơng trình cho mạch điều khiển độ sáng đèn bulb

Chƣơng trình nhóm chúng em viết cho mạch điều khiển độ sáng đèn bulb gồm các tính năng nhƣ sau:

-

-

Thứ 1: Các thiết bị đèn hoạt động độc lập với nhau, ngƣời dùng có thể tùy chỉnh riêng biệt từng đèn trên app hoặc thông qua Google assistant

Thứ 2: Các thiết bị đèn có thể kết nối với mạng wifi bất kì, khi chƣa kết nối đƣợc thì thiết bị đèn chuyển sang chế độ Access point (với tên wifi không trùng lặp) để ngƣời dùng dùng điện thoại kết nối với đèn và truy cập địa chỉ “192 168 4 1” để thiết lập wifi cho nó, sau khi thiết lập xong đèn sẽ chuyển sang chế độ station để kết nối wifi mà ngƣời đã dùng thiết lập

CHƢƠNG 4 THI CÔNG HỆ THỐNG

giữ nguyên ( sáng hoặc không sáng), thiết bị đèn sẽ chờ kết nối,khi kết nối đƣợc sẽ hoạt động lại bình thƣờng

- Thứ 4: Các trạng thái của đèn ( sáng hoặc không sáng) sẽ đƣợc cập nhật lên cơ sở dữ liệu và phần mềm điện thoại sẽ cập nhật đƣợc trạng thái thực tế để giúp ngƣời dùng nhận biết

- Thứ 5: Khi đèn hoạt động thì dữ liệu sẽ đƣợc cập nhật lên cơ sở dữ liệu và khi không hoạt động thì sẽ không cập nhật dữ liệu lên cơ sở dữ liệu nhờ dữ liệu này mà ứng dụng trên điện thoại sẽ phân tích và báo cho ngƣời dùng biết thiết bị thực tế có đang hoạt động hay không

-

-

Thứ 6: Độ sáng đèn có thể thay đổi đƣợc dựa trên sự điều khiển của ngƣời dùng thao tác trên phần mềm điều khiển trên điện thoại thông minh Độ sáng sẽ thay đổi tăng độ sáng tuyến tính hoặc giảm độ sáng tuyến tính để mắt ngƣời sử dụng dễ thích nghi

Thứ 7: Đèn có thể bật tắt và thay đổi độ sáng bằng giọng nói thông qua trợ lý ảo Google assistant mà không cần bật ứng dụng

Do phần chƣơng trình bao gồm một số tính năng nên chƣơng trình nhiều dòng lệnh và nhóm chúng em sẽ giải thích chƣơng trình chính của chƣơng trình lập trình cho vi điều khiển ESP8266 ESP-12E NodeMCU trong mạch điều khiển độ sáng đèn bulb

Để tiến hành lập trình thì cần thêm các bộ thƣ viện để sử dụng các tính năng Thêm thƣ viện để thực hiện đƣợc các tính năng wifi của mạch vi điều khiển ESP8266 ESP-12E NodeMCU

#include <ESP8266WiFi h>

Thêm thƣ viện để thực hiện viêc đọc ghi dữ liệu lên cơ sở dữ liệu thời gian thực FIREBASE

#include <FirebaseArduino h>

Thêm thƣ viện để thực hiện viêc kết nối Adafruit_Mqtt để nhận dữ liệu điều khiển bằng Google asstant

#include "Adafruit_MQTT h"

CHƢƠNG 4 THI CÔNG HỆ THỐNG

Thêm thƣ viện để thực hiện viêc kết nối wifi tự động

#include <WiFiManager h>

Để tạo kết nối với cơ sở dữ liệu thời gian thực cần có địa chỉ và mã cho ngƣời phát triển , 2 thông tin này sẽ đƣợc gán vào 2 biến tƣơng ứng là FIREBASE_HOST, FIREBASE_AUTH thông qua định nghĩa:

#define FIREBASE_HOST "testdatn-12cd4 firebaseio com"

#define FIREBASE_AUTH

“HszRBsnMPCl1Yc05DeHtErXk7IhNoVk8KJ10swB1"

Để kết nối với Adfruit thì cần có các thông số sau: dịa chỉ sever kết nối, port kết nối, tên tài khoản, mật khẩu với định nghĩa:

#define MQTT_SERV "io adafruit com" #define MQTT_PORT 1883

#define MQTT_NAME "masterpoke"

#define MQTT_PASS "7b5c65d02b14449f945c55acfd4d20fe"

Để thực hiện việc điều khiển ta cần liên kết với các feed đƣợc tạo từ trƣớc trên Adfruit

WiFiClient client;

Adafruit_MQTT_Client mqtt(&client, MQTT_SERV, MQTT_PORT,

MQTT_NAME, MQTT_PASS); Adafruit_MQTT_Subscribe ds1 = Adafruit_MQTT_Subscribe(&mqtt, MQTT_NAME "/f/dosang1"); Adafruit_MQTT_Subscribe MQTT_NAME "/f/max"); dsmax = Adafruit_MQTT_Subscribe(&mqtt,

Adafruit_MQTT_Subscribe light = Adafruit_MQTT_Subscribe(&mqtt, MQTT_NAME "/f/light1");

CHƢƠNG 4 THI CÔNG HỆ THỐNG

uint16_t a=0; int8_t dosang1;

• Trong chƣơng trình khởi tạo:

WiFiManager w;

w autoConnect("light 1"); Serial println("connected ");

Khởi tạo wifimanager, thực hiện tự động kết nối wifi, khi chƣa kết nối đƣợc wifi thì tự chuyển sang chế Access point với tên wifi “light 1”, sau khi kết nối đƣợc thì in ra “connected”

Với các câu lệnh:

mqtt subscribe(&ds1);

mqtt subscribe(&dsmax); mqtt subscribe(&light);

Thực hiện đăng kí Mqtt cho các địa chỉ trên

Thực hiện kết nối Firebase và gửi giá trị „1‟ theo đƣờng dẫn “/den1” qua 2 dòng lệnh:

Firebase begin(FIREBASE_HOST,FIREBASE_AUTH); Firebase setInt("/den1", 1);

• Trong vòng lặp chƣơng trình:

Một phần của tài liệu Điều khiển thiết bị điện thông qua trợ lý ảo google assistant 50 (Trang 33)