Nhận viết luận văn đại học, thạc sĩ trọn gói, chất lượng, LH ZALO=>0909232620
Tham khảo dịch vụ, bảng giá tại: https://vietbaitotnghiep.com/dich-vu-viet-thue-luan-van
Download luận văn đồ án tốt nghiệp ngành kĩ thuật điện tử với đề tài: Thiết kế và thi công hệ thống giám sát điện năng tiêu thụ trong hộ gia đình, cho các bạn làm luận văn tham khảo
Đề tài: Hệ thống giám sát điện năng tiêu thụ trong hộ gia đình
1. BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP-Y SINH
---------------------------------
ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
ĐỀ TÀI:
THIẾT KẾ VÀ THI CÔNG HỆ THỐNG
GIÁM SÁT ĐIỆN NĂNG TIÊU THỤ
TRONG HỘ GIA ĐÌNH
GVHD: ThS. Nguyễn Trường Duy
SVTH: Nguyễn Văn Cang
MSSV: 14141020
SVTH: Nguyễn Chí Dũng
MSSV: 14141047
Tp. Hồ Chí Minh - 7/2018
2. BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP-Y SINH
---------------------------------
ĐỒ ÁN TỐT NGHIỆP
NGÀNH KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
ĐỀ TÀI:
THIẾT KẾ VÀ THI CÔNG HỆ THỐNG
GIÁM SÁT ĐIỆN NĂNG TIÊU THỤ
TRONG HỘ GIA ĐÌNH
GVHD: Ths.Nguyễn Trường Duy
SVTH: Nguyễn Văn Cang
MSSV: 14141020
SVTH: Nguyễn Chí Dũng
MSSV: 14141047
Tp. Hồ Chí Minh - 7/2018
3. ii
TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TP. HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP-Y SINH
Tp. HCM, ngày 29 tháng 6 năm 2018
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Nguyễn Văn Cang MSSV: 14141020
Nguyễn Chí Dũng MSSV: 14141047
Chuyên ngành: Kỹ thuật điện tử, truyền thông Mã ngành: 141
Hệ đào tạo: Đại học chính quy Mã hệ: 1
Khóa: 2014 Lớp: 14141DT
I. TÊN ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG GIÁM SÁT ĐIỆN
NĂNG TIÊU THỤ TRONG HỘ GIA ĐÌNH.
II. NHIỆM VỤ
1. Các số liệu ban đầu:
- Thiết kế hệ thống đo dòng điện và điện áp của lưới điện gia đình.
- Tính toán công suất và điện năng.
- Giao tiếp bộ xử lý trung tâm, báo sự cố quá công suất.
- Kết nối Internet gửi dữ liệu.
2. Nội dung thực hiện:
- Nhiệm vụ 1: Giao tiếp các mô - đun với Vi điều khiển.
- Nhiệm vụ 2: Giao tiếp giữa các Client-Client-Server.
- Nhiệm vụ 3: Thiết kế các mạch đo lường, giao tiếp, mô hình hệ thống.
- Nhiệm vụ 4: Hiển thị thông tin và quản lý dữ liệu trên Web và hệ thống cảnh báo khi
có sự cố.
III. NGÀY GIAO NHIỆM VỤ: 27/03/2018
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 29/06/2018
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS.Nguyễn Trường Duy
CÁN BỘ HƯỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP - Y SINH
4. iii
TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TP. HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP-Y SINH
Tp. HCM, ngày 27 tháng 03 năm 2018
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên 1: Nguyễn Văn Cang
Lớp: 14141DT1A MSSV: 14141020
Họ tên sinh viên 2: Nguyễn Chí Dũng
Lớp: 14141DT2A MSSV: 14141047
Tên đề tài: Thiết kế và thi công hệ thống giám sát điện năng trong hộ gia đình.
Tuần/ngày Nội dung
Xác nhận
GVHD
1 Tìm hiểu về đề tài, lựa chọn hướng xây dựng và
tham khảo một số hệ thống đã có.
2 Lựa chọn, tìm hiểu cách thức hoạt động của một
số cảm biến, vi điều khiển.
3 Tiến hành thực nghiệm hệ thống qua các loại vi
điều khiển, các mô- đun giao tiếp khác nhau.
4 Lập trình cho vi điều khiển sau khi đã lựa chọn
xong vi điều khiển và các thiết bị mong muốn.
5 Kiểm tra hoạt động của hệ thống, chỉnh sửa.
6 Tiến hành lập trình trang web, gửi dữ liệu.
7 Thiết kế hệ thống, vẽ sơ đồ mạch nguyên lý, thiết
kế mạch in.
8 Tiến hành làm mạch, kiểm thử và chỉnh sửa các
lỗi, sau đó hoàn chỉnh bằng các phiên bản khác..
9 Thiết kế mô hình cho các thiết bị đo và thiết bị
trung tâm.
10 Tiến hành thử nghiệm hệ thống trong thực tế ở
khoảng cách mong muốn.
11 Đóng gói thiết bị bằng thành một sản phẩm hoàn
chỉnh.
5. iv
12 Viết báo cáo.
13 Viết báo cáo, thiết kế powerpoint.
GV HƯỚNG DẪN
(Ký và ghi rõ họ và tên)
6. v
LỜI CAM ĐOAN
Đề tài này là do nhóm tự thực hiện dựa vào một số tài liệu trước đó và không sao chép
từ tài liệu hay công trình đã có trước đó.
Người thực hiện đề tài
Nguyễn Văn Cang Nguyễn Chí Dũng
7. vi
LỜI CẢM ƠN
Em xin gửi lời cảm ơn sâu sắc đến Thầy Nguyễn Trường Duy_ Giảng viên bộ môn
Điện tử Công Nghiệp - Y Sinh đã trực tiếp hướng dẫn và tận tình giúp đỡ tạo điều kiện để
hoàn thành tốt đề tài.
Em xin gởi lời chân thành cảm ơn các thầy cô trong Khoa Điện-Điện Tử đã tạo
những điều kiện tốt nhất cho em hoàn thành đề tài.
Em cũng gửi lời đồng cảm ơn đến các bạn trong lớp 1414DT1 và 1414DT2 đã chia
sẻ trao đổi kiến thức cũng như những kinh nghiệm quý báu trong thời gian thực hiện đề tài.
Xin chân thành cảm ơn!
Người thực hiện đề tài
Nguyễn Văn Cang Nguyễn Chí Dũng
8. vii
MỤC LỤC
Trang bìa ....................................................................................................................i
Nhiệm vụ đồ án .........................................................................................................ii
Lịch trình..................................................................................................................iii
Cam đoan................................................................................................................... v
Lời cảm ơn................................................................................................................vi
Mục lục ....................................................................................................................vii
Liệt kê hình vẽ........................................................................................................... x
Liệt kê bảng vẽ ........................................................................................................xii
Tóm tắt....................................................................................................................xiii
Chương 1. TỔNG QUAN......................................................................................... 1
1.1 ĐẶT VẤN ĐỀ................................................................................................ 1
1.2 MỤC TIÊU.................................................................................................... 1
1.3 NỘi DUNG NGHIÊN CỨU......................................................................... 2
1.4 GIỚI HẠN..................................................................................................... 2
1.5 BỐ CỤC......................................................................................................... 3
Chương 2. CƠ SỞ LÝ THUYẾT ............................................................................ 5
2.1 QUY TRÌNH THỰC HIỆN HỆ THỐNG .................................................. 5
2.1.1 Mô tả quy trình đo điện năng.............................................................. 5
2.1.2 Mô tả quy trình giám sát và cảnh báo................................................ 5
2.2 GIỚI THIỆU PHẦN CỨNG ....................................................................... 6
2.2.1 Cảm biến biến dòng Hall 100A YHDC............................................... 6
2.2.2 Module cảm biến điện áp AC .............................................................. 7
2.2.3 Vi Điều Khiển Arduino Nano .............................................................. 9
2.2.4 Module chuyển giao tiếp LCD sang I2C .......................................... 11
2.2.5 Module LCD 20x4............................................................................... 13
2.2.6 Module NodeMCU ESP8266. ............................................................ 20
2.2.7 Module Sim900A. ............................................................................... 25
2.2.8 Đồng hồ thời gian thực DS1307......................................................... 27
2.2.9 IC EEPROM 24LC512....................................................................... 29
2.2.10 IC nguồn LM2576............................................................................... 29
9. viii
2.3 CÁC CHUẨN GIAO TIẾP........................................................................ 32
2.3.1 Chuẩn giao tiếp UART....................................................................... 32
2.3.2 Chuẩn giao tiếp I2C............................................................................ 33
2.4 GIỚI THIỆU PHẦN MỀM. ...................................................................... 38
2.4.1 Phần mềm lập trình Arduino IDE 1.8.1 ........................................... 38
2.4.2 Phần mềm thiết kế mạch Altium....................................................... 40
Chương 3. TÍNH TOÁN VÀ THIẾT KẾ ............................................................. 43
3.1 GIỚI THIỆU............................................................................................... 43
3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG ............................................. 43
3.2.1 Thiết kế sơ đồ khối hệ thống.............................................................. 44
3.2.2 Tính toán và thiết kế mạch ................................................................ 45
Chương 4. THI CÔNG HỆ THỐNG .................................................................... 65
4.1 GIỚI THIỆU............................................................................................... 65
4.2 THI CÔNG HỆ THỐNG ........................................................................... 65
4.2.1 Thi công bo mạch................................................................................ 65
4.2.2 Lắp ráp và kiểm tra............................................................................ 68
4.3 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH.................................................. 70
4.4 LẬP TRÌNH HỆ THỐNG ......................................................................... 71
4.4.1 Lưu đồ giải thuật ................................................................................ 71
4.4.2 Phần mềm lập trình cho vi điều khiển.............................................. 74
4.4.3 Phần mềm lập trình Web Server ...................................................... 78
Chương 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ .......................................... 87
5.1 KẾT QUẢ KHẢO SÁT.............................................................................. 87
5.1.1 Cảm biến.............................................................................................. 87
5.1.2 Vi điều khiển ....................................................................................... 88
5.1.3 Một số mô-đun khác và các chuẩn giao tiếp .................................... 89
5.2 KẾT QUẢ THỰC NGHIỆM..................................................................... 90
5.2.1 Một số hình ảnh về hệ thống.............................................................. 91
5.2.2 Website ................................................................................................ 95
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ......................................... 97
6.1 KẾT LUẬN ................................................................................................. 97
10. ix
6.2 HƯỚNG PHÁT TRIỂN............................................................................. 97
Tài liệu tham khảo.................................................................................................. 98
Phụ lục ................................................................................................................... 100
11. ix
LIỆT KÊ HÌNH VẼ
Hình 2. 1: Cảm biến dòng điện Hall 100A YHDC. ......................................................6
Hình 2. 2: Mặt cắt kỹ thuật chi tiết Hall 100A YHDC. ................................................7
Hình 2. 3: Module cảm biến điện áp.............................................................................8
Hình 2. 4: Arduino Nano...............................................................................................9
Hình 2. 5: Module giao tiếp I2C..................................................................................11
Hình 2. 6: Giao tiếp với LCD qua mạch chuyển I2C.................................................12
Hình 2. 7: LCD 20x4....................................................................................................13
Hình 2. 8: Giản đồ thời gian chu kỳ đọc của LCD.....................................................16
Hình 2. 9: Giản đồ thời gian chu kỳ ghi của LCD. ....................................................17
Hình 2. 10: Sơ đồ khối của bộ điều khiển LCD..........................................................18
Hình 2. 11: Module NodeMCU ESP8266 V3. ............................................................20
Hình 2. 12: Chip ESP8266. .........................................................................................22
Hình 2. 13: Sơ đồ chân ESP8266................................................................................23
Hình 2. 14: Module Sim 900A.....................................................................................25
Hình 2. 15: Kết nối Module Sim 900A với arduino....................................................26
Hình 2. 16: Hai gói cấu tạo chip DS1307...................................................................27
Hình 2. 17: Mạch đồng hồ thời gian thực DS1307....................................................28
Hình 2. 18: Mặt trước và sau của Module IC thời gian thực DS1307......................28
Hình 2. 19: IC Eeprom 24LC512. ...............................................................................29
Hình 2. 20: IC ổn áp LM2576. ....................................................................................30
Hình 2. 21: Cấu tạo của LM2576................................................................................31
Hình 2. 22: Mô tả giao tiếp UART. .............................................................................32
Hình 2. 23: Cấu trúc một khung dữ kiệu trong chuẩn giao tiếp UART. ..................32
Hình 2. 24: Mạng I2C với nhiều thiết bị và 2 điện trở kéo lên cho SDA, SCL.........34
Hình 2. 25: Giản đồ xung của SCL và SDA. ..............................................................35
Hình 2. 26: Giản đồ xung khi có REPEAT START...................................................35
Hình 2. 27: Giản đồ xung khi có Address Packet Format. ........................................37
Hình 2. 28: Giản đồ xung định dạng gói dữ liệu trong I2C. .....................................38
Hình 2. 29: Khung truyền dữ liệu trong I2C..............................................................38
Hình 2. 30: Giao diện Arduino IDE với project mới (sketch mới). ...........................39
Hình 2. 31: Biên dịch thành công...............................................................................40
Hình 2. 32: Màn hình khởi động của Altium 16........................................................41
Hình 2. 33: Cửa sổ làm việc thiết kế mạch nguyên lý Altium....................................41
Hình 2. 34: Cửa sổ thiết kế PCB. ................................................................................42
Hình 3. 1: Sơ đồ khối toàn hệ thống. ..........................................................................44
Hình 3. 2: Sơ đồ khối của khối đo dòng điện. ............................................................46
Hình 3. 3: Kết nối ngõ ra cảm biến dòng điện Hall với Arduino. .............................47
Hình 3. 4: Đo dòng điện thông qua điện áp trên 2 đầu điện trở................................48
Hình 3. 5: Thêm 2 điện trở phân áp............................................................................49
Hình 3. 6: Biểu đồ ngõ ra khi chưa được gắn tụ C1..................................................49
Hình 3. 7: Ngõ ra sau khi gắn tụ C1...........................................................................50
Hình 3. 8: Cách kết nối đúng của Hall 100A YHDC với đường dây.........................51
Hình 3. 9: Sơ đồ nguyên lý khối đo dòng điện............................................................52
Hình 3. 10: Sơ đồ khối của khối đo điện áp................................................................52
Hình 3. 11: Module cảm biến điện áp.........................................................................53
12. x
Hình 3. 12: Mạch cảm biến điện áp - băng thông (~ 50 Hz). ....................................53
Hình 3. 13: Đặc tính đầu ra của ZMPT101B………………………………………..54
Hình 3. 14: Sơ đồ nguyên lý khối đo điện áp..............................................................54
Hình 3. 15: Sơ đồ khối của khối xử lý trung tâm.......................................................55
Hình 3. 16: Sơ đồ nguyên lý khối hiển thị. .................................................................57
Hình 3. 17: Sơ đồ chân IC 24LC512...........................................................................59
Hình 3. 18: Chọn các giá trị cho t_r và C_b...............................................................61
Hình 3. 19: Sơ đồ nguyên lý mạch nguồn. .................................................................62
Hình 3. 20: Sơ đồ nguyên lý toàn mạch......................................................................64
Hình 4. 1: Bản vẽ thiết kế khối đo...............................................................................65
Hình 4. 2: Mô phỏng 3D của mạch.............................................................................66
Hình 4. 3: Mạch in của mạch......................................................................................66
Hình 4. 4: Mạch sau khi tiến hành in và rửa mạch...................................................68
Hình 4. 5: Mô hình thi công thử nghiệm....................................................................68
Hình 4. 6: Bo mạch tháo rời LCD...............................................................................69
Hình 4. 7: Mô hình đóng gói của sản phẩm...............................................................70
Hình 4. 8: Bo mạch bên trong của sản phẩm.............................................................71
Hình 4. 9: Lưu đồ giải thuật chính của hệ thống.......................................................72
Hình 4. 10: Lưu đồ chương trình đo...........................................................................73
Hình 4. 11: Tải phần mềm...........................................................................................74
Hình 4. 12: Giao diện phần mềm. ...............................................................................75
Hình 4. 13: Hướng dẫn sử dụng phần mềm...............................................................75
Hình 4. 14: Thêm đường link để tải driver. ................................................................77
Hình 4. 15: Nhấn Install để cài đặt.............................................................................77
Hình 4. 16: Chọn mudule NodeMCU 0.9. ..................................................................78
Hình 4. 17: File cài đặt Adobe Dreamweaver CS6.....................................................79
Hình 4. 18: Nhấn Accept để chấp nhận......................................................................80
Hình 4. 19: Nhấn chọn Next để tiếp tục. ....................................................................80
Hình 4. 20: Nhấn Install để cài đặt.............................................................................81
Hình 4. 21: Chương trình đang cài đặt vào máy........................................................81
Hình 4. 22: Nhấn Done để hoàn tất quá trình cài đặt................................................82
Hình 4. 23: Giao diện Adobe Dreamweaver CS6. ......................................................82
Hình 4. 24: Tạo project mới.........................................................................................83
Hình 4. 25: Lựa chọn ngôn ngữ thiết kế và tạo chương trình. .................................84
Hình 4. 26: Khung soạn thảo code..............................................................................85
Hình 5. 1: Cảm biến dòng diện Hall 100A YHDC. ....................................................87
Hình 5. 2: Module cảm biến điện áp...........................................................................88
Hình 5. 3: Module NodeMCU ESP8266.....................................................................89
Hình 5. 4: Quá trình đo điện năng tiêu thụ................................................................91
Hình 5.5. Báo cáo sai số thông qua phép đo nhiều giá trị dòn điện..........................92
Hình 5.6. Đo dòng điện hoạt động của bàn ủi bằng đồng hồ....................................93
Hình 5.7. Kết quả dòng điện của bàn ủi bằng thiết bị................................................93
Hình 5.8. Kết quả đo điện áp 2 nguồn ........................................................................94
Hình 5.9. Điện áp trên 2 nguồn do bằng mạch đo. ....................................................94
Hình 5.10. Quản lý dữ liệu qua bảng lưu trữ.............................................................95
Hình 5.11. Lưu trữ cơ sở dữ liệu.................................................................................96
Hình 5. 12: Cảnh báo qua tin nhắn...................................................................................96
13. xii
LIỆT KÊ BẢNG
Bảng 2. 1: Thông số cơ bản của cảm biến hall 100A YHDC.......................................7
Bảng 2. 2: Thông số kỹ thuật của module cảm biến điện áp. ......................................8
Bảng 2. 3: Chức năng các chân của module cảm biến điện áp...................................9
Bảng 2. 4: Thông số cơ bản của Arduino Nano.........................................................10
Bảng 2.5. Sơ đồ chân của module I2C ........................................................................11
Bảng 2. 6: Địa chỉ của module giao tiếp I2C..............................................................12
Bảng 2. 7: Các chân LCD 20x4...................................................................................13
Bảng 2. 8: Các lệnh điều khiển LCD. .........................................................................15
Bảng 2. 9: Thông số thời gian của LCD. ....................................................................17
Bảng 2. 10: Bảng mã ASCII........................................................................................19
Bảng 2. 11: Thông số kỹ thuật của ESP8266 NodeMCU. .........................................21
Bảng 2. 12: Chức năng các chân ESP8266................................................................23
Bảng 2. 13: Các thông số của Eeprom 24LC512........................................................29
Bảng 3. 1: Cấu hình địa chỉ cho EEPROM 24LC512. ..............................................59
Bảng 3. 2: Thông số cơ bản của hall 100A YHDC.....................................................61
Bảng 4. 1: Danh sách các linh kiện của mạch. ..........................................................67
14. xiii
TÓM TẮT
Với nhu cầu giám sát điện năng tiêu thụ từ xa. Chúng tôi đã xây dựng một hệ thống
giám sát điện năng bao gồm các thiết bị gắn trực tiếp trên nguồn điện, bộ xử lý trung
tâm và website và bộ cảnh báo.
Hệ thống sẽ thực hiện những nhiệm vụ là quản lý giá trị dòng điện, điện áp, công
suất và điện năng hằng hằng ngày, hằng giờ, tổng hợp và được lưu lại. Khi người dùng
muốn xem lại bất cứ lúc nào cũng có thể truy cập để tra cứu.
Khi có các sự cố, sẽ có cảnh báo cho người dùng nhằm giúp cho người dùng có
những tác động sớm nhất.
Các trường hợp sự cố mất kết nối internet thì dữ liệu sẽ được lưu lại trong bộ nhớ
và khi có kết nối trở lại sẽ được gửi lên website.
Như vậy, hệ thống có vai trò là giám sát, quản lý dữ liệu theo thời gian thực, thông
báo sự cố, đưa ra dữ liệu thống kê cho người dùng.
15. CHƯƠNG 1. TỔNG QUAN
1
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Chương 1. TỔNG QUAN
1.1. ĐẶT VẤN ĐỀ
Trong cuộc sống hiện đại, năng lượng là yếu tố quyết định trong mọi quá trình sản
xuất, lao động cũng như sinh hoạt của con người. Từ công nghiệp, nông nghiệp, dịch vụ
thậm chí đến nghiên cứu khoa học, khám phá thiên nhiên đều cần năng lượng, đặc biệt
là năng lượng điện. Ngày nay, hầu hết các thiết bị trong hộ gia đình đều sử dụng nguồn
năng lượng điện. Chính vì vậy, nhu cầu sử dụng điên năng trở thành một phần không
thể thiếu trong cuộc sống hằng ngày.[7]
Trong quá trình sử dụng điện năng tiêu thụ cho các thiết bị điện trong gia đình khó
kiểm soát được các vấn đề không mong muốn như điện năng tiêu thụ tăng cao so với
bình thường hoặc các thiết bị điện vượt quá công suất cho phép hay thậm chí là các sự
cố về điện… Nhóm đã đưa ra giải pháp là xây dựng một hệ thống giám sát các sự cố về
quá dòng hay quá áp cũng như quản lý sự thay đổi điện năng tiêu thụ để thông báo cho
người sử dụng mọi lúc, mọi nơi.[7]
Hệ thống cũng ứng dụng Internet of things (IOT) để quản lý dữ liệu trên internet
và có thể giám sát ở mọi nơi có Internet và các thiết bị điện tử thông minh như điện thoại
thông minh, laptop.
Với hệ thống giám sát, quản lý mạng lưới điện trên, người dùng có thể trực tiếp
biết được điện năng tiêu thụ trong nhà ở mọi nơi từ đó phát hiện ra những sự cố, đồng
thời đưa ra các biện pháp kịp thời và hơp lý nhằm giảm thiểu thiệt hại.
1.2. MỤC TIÊU
Thiết kế và thi công hệ thống đo điện năng một cách chính xác, trực quan. Hiển
thị và cập nhật thông tin nhanh chóng trên màn hình LCD, cảnh báo khi quá công suất
cài đặt. Xây dựng được website quản trị đồng thời cập nhật cơ sở dữ liệu lên database
thông qua mạng Internet, đăng ký được tên miền cho website. Đề tài nghiêm cứu nhầm
ứng dụng điều khiển và quản lý thông qua đường truyền Internet, hướng tới một môi
trường IOT hiện đại và phát triển.
16. CHƯƠNG 1. TỔNG QUAN
2
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
1.3. NỘI DUNG NGHIÊN CỨU
• Tìm hiểu về đề tài, lựa chọn hướng xây dựng và tham khảo một số hệ thống đã
có.
• Lựa chọn tìm hiểu cách thức hoạt động của một số cảm biến, vi điều khiển.
• Tiến hành thực nghiệm hệ thống qua các loại vi điều khiển, các module giao
tiếp khác nhau.
• Lập trình cho vi điều khiển sau khi đã lựa chọn xong vi điều khiển và các thiết
bị mong muốn.
• Thiết kế sơ đồ khối hệ thống, vẽ sơ đồ mạch nguyên lý, thiết kế mạch in và thi
công mạch.
• Tiến hành lập trình trang web.
• Kết nối mạch phần cứng với web, gửi dữ liệu.
• Tiến hành làm mạch, kiểm thử và chỉnh sửa các lỗi, sau đó hoàn chỉnh bằng các
phiên bản khác.
• Thiết kế mô hình.
• Tiến hành thử nghiệm hệ thống trong thực tế.
• Đóng gói thiết bị thành một sản phẩm hoàn chỉnh.
• Viết sách luận văn.
• Báo cáo đề tài tốt nghiệp.
1.4. GIỚI HẠN
Đề tài xây dựng mô hình có một số giới hạn, với các cảm biến, module có sẵn trên
thị trường nên có độ nhạy và sai số nhất định. Sử dụng 2 bộ vi xử lý để xử lý đo và các
tác vụ khác, ngoài ra việc tính toán công suất xoay chiều có thông số hệ số công suất vì
vẫn chưa tìm được giải pháp đo chính xác nên hệ số công suất lấy sử dụng với giá trị
bằng 1.
17. CHƯƠNG 1. TỔNG QUAN
3
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
1.5. BỐ CỤC
Đề tài hệ thống giám sát điện năng trong hộ gia đình thực hiện được chia làm các
chương sau:
Chương 1: Tổng quan.
Chương 2: Cơ cở lý thuyết.
Chương 3: Thiết kế và tính toán.
Chương 4: Thi công hệ thống.
Chương 5: Kết quả, nhận xét và đánh giá.
Chương 6: Kết luận và hướng phát triển.
Nôi dụng tóm lược của các chương như sau:
Chương 1: Tổng quan.
Trong chương này tập trung giới thiệu về các công nghệ truyền thông không dây,
cũng như các ưu nhược điểm khi sử dụng module. Từ đó đưa ra quyết định sử dụng
module cho đề tài.
Chương 2: Cơ sở lý thuyết.
Trình bày sơ lược về các module được sử dụng về phần cứng, tài nguyên, phần
mềm cũng như khả năng giao tiếp, kết nối giữa các thiết bị.
Chương 3: Thiết kế và tính toán.
Từ các yêu cầu cũng như nhiệm vụ của đề tài nhóm đã hệ thống thành sơ đồ khối.
Thiết kế phần cứng: dựa trên sơ đồ khối tiến hành thiết kế kết nối các module lại
với nhau tạo thành một hệ thống đáp ứng chức năng.
Thiết kế phần mềm: Trình bày lưu đồ thuật toán để giải quyết các yêu cầu đã được
đặt ra, tối ưu hiệu quả hoạt động.
Chương 4: Thi công hệ thống.
Từ các sơ đồ nguyên lý thiết kế, sơ đồ mạch in cũng như sơ đồ bố trí linh kiện.
Tiến hành thi công bao gồm thi công các bo mạch, cho đến kết nối các module trong hệ
thống lại với nhau và cuối cùng là đóng gói.
Chương 5: Kết quả, nhận xét và đánh giá.
18. CHƯƠNG 1. TỔNG QUAN
4
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Tiến hành lắp ráp mạch thực tế chạy thử nghiệm để quan sát được độ chính xác
cũng như ổn định của hệ thống và dòng điện từ mạch nguồn có đủ đáp ứng cho các thiết
bị hoặc module trong mạch.
Chương 6: Kết quả và hướng phát triển.
Trình bày kết quả cũng như ưu và nhược điểm còn mắc phải và giải pháp.
Đưa ra hướng phát triển và khả năng áp dụng thực tế.
19. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
5
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Chương 2. CƠ SỞ LÝ THUYẾT
2.1. QUY TRÌNH THỰC HIỆN HỆ THỐNG
Hệ thống giám sát điện năng tiêu thụ được đo thông qua các cảm biến dòng, áp và
được xử lý qua Arduino Nano kết nối với Internet thông qua module wifi ESP8266 hoạt
động dưới sự điều khiển của bộ xử lý trung tâm là NodeMCU ESP8266. Các thông tin
về dòng điện, điện áp, công suất và điện năng tiêu thụ sẽ được đưa lên Web Server sau
khi được đo để giám sát quá trình hoạt động. Những thông số về điện năng cũng được
hiển thị qua LCD và sẽ được cảnh báo cho người dùng khi điện năng quá mức cho phép
thông qua tin nhắn.
2.1.1. Mô tả quy trình đo điện năng
Quá trình đo sẽ được cảm biến dòng và cảm biến áp đo hai thông số dòng điện và
điện áp. Từ hai thông số dòng điện và điện áp có thể tính toán ra công suất và điện năng
tiêu thụ, sau khi qua đo và tính toán những thông số trên sẽ được hiển thị trên LCD và
được lưu trữ trên web server.
Dữ liệu đưa lên web server sẽ được bảo vệ khi mất kết nối wifi thông qua
EEPROM, khi mất kết nối wifi dữ liệu sẽ được lưu vào EEPROM và khi được kết nối
wifi trở lại dữ liệu sẽ cập nhật tiếp tục mà không mất đi dữ liệu cũ.[6]
2.1.2. Mô tả quy trình giám sát và cảnh báo
Những thông tin về dòng điện, điện áp, công suất và điện năng tiêu thụ sẽ được
giám sát bởi người sử dụng thông qua Web Server. Dữ liệu về những thông số sẽ được
cập nhật liên tục theo đúng ngưỡng mong muốn của người sử dụng, nếu có sự cố hoặc
trường hợp sử dụng quá mức công suất cho phép thì hệ thống sẽ cảnh báo cho người sử
dụng về trường hợp trên để người sử dụng có thể xử lý. Để dễ dàng nhận biết thông báo
hệ thống sẽ cảnh báo cho người sử dụng trên web server, tin nhắn và thiết bị đo.[6]
20. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
6
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
2.2. GIỚI THIỆU PHẦN CỨNG
Hệ thống được thiết kế có sử dụng các module, các thiết bị sau:
Thiết bị đầu vào là dòng điện và điện áp đọc từ cảm biến dòng điện Hall 100A
YHDC và module cảm biến điện áp.
Thiết bị đầu ra gồm có các led đơn báo kết nối, cảnh báo sự cố, LCD 20x4…
Thiết bị xử lý khối đo là vi điều khiển Arduino Nano.
Thiết bị xử lý trung tâm là module NodeMCU ESP8266.
Thiết bị không dây truyền nhận là module sim900A, module wifi ESP8266.
Các chuẩn truyền dữ liệu UART, I2C, Internet.
Thiết bị cung cấp nguồn 5V thông qua mạch nguồn thiết kế.
Thiết bị lưu trữ là bộ nhớ EEPROM 24LC512.
Thiết bị đồng hồ thời gian thực là mô-đun DS1307.
Thiết bị giao diện giám sát websever gồm laptop, smartphone.
2.2.1. Cảm biến biến dòng Hall 100A YHDC
Cảm biến dòng điện xoay chiều có chức năng chuyển đổi dòng điện từ lớn sang
nhỏ sau đó được chuyển đổi qua điện áp. Người sử dụng có thể biết được dòng điện
AC dựa vào việc đo điện áp ngõ ra.
Hình 2.1: Cảm biến dòng điện Hall 100A YHDC.
21. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
7
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Thông số kỹ thuật:
Bảng 2. 1: Thông số cơ bản của cảm biến hall 100A YHDC.
Model STC -013
Dòng ngõ vào 0- 100 A AC
Dòng ngõ ra 0- 50 mA AC
Nhiệt độ làm việc -25 – 70°C
Kích thước 13 mm x 13 mm
Bản vẽ cắt kĩ thuật và cấu tạo:
Hình 2. 2: Mặt cắt kỹ thuật chi tiết Hall 100A YHDC.
2.2.2. Module cảm biến điện áp AC
Module cảm biến điện áp là một module có chức năng đo điện áp AC. Khi kết
nối điện lưới AC vào cảm biến sẽ lấy mẫu vào và ra đưa ra điện áp tương tự, trong
khoảng 0 đến 5V. Là cảm biến lý tưởng cho việc đo điện áp.
22. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
8
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 2.3: Module cảm biến điện áp.
Thông số kỹ thuật:
Bảng 2.2: Thông số kỹ thuật của module cảm biến điện áp.
Chipset ZMPT101B
Loại võ OEM
Điện áp hoạt động 5V
Giới hạn điện áp đo Đến 250V
Nhiệt độ -40 đến 85o
C
Kích thước 50x20x21.5
Chân ra Analog
23. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
9
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Chức năng các chân:
Bảng 2.3: Chức năng các chân của module cảm biến điện áp.
Chân Mô tả
VCC Đầu vào 5V
OUT Chân điện áp đầu ra
GND 0V
GND 0V
N Đầu vào trung tính
L Đầu vào pha
2.2.3. Vi Điều Khiển Arduino Nano
Arduino là một nên tảng điện tử với mã nguồn mở, với phần cứng và phần mềm
linh hoạt dễ dàng cho người sử dụng.
Hình 2. 4: Arduino Nano.
Arduino Nano là phiên bản nhỏ gọn của Arduino Uno với cùng vi điều khiển
ATmega328P có thể lập trình trực tiếp bằng máy tính và đặc biệt hơn cả đó là kích thước
của nó. Kích thước của Arduino Nano cực kì nhỏ (1.85cm x 4.3cm), vì giá rẻ hơn
24. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
10
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Arduino Uno nhưng dùng được tất cả các thư viện của IDE. Cáp kết nối được dùng để
nạp Arduino là cáp mini USB.
Một số thông số cơ bản:
Bảng 2. 4: Thông số cơ bản của Arduino Nano.
Vi điều khiển Atmega328(họ 8bit)
Điện áp hoạt động 5V – DC
Tần số hoạt động 16 MHz
Dòng tiêu thụ 30 mA
Điện áp vào khuyên dùng 7 – 12 VDC
Điện áp vào giới hạn 6 – 20 VDC
Số chân Digital I/O 14 (6 chân PWM)
Số chân Analog 8 (độ phân giải 10 bit)
Dòng tối đa trên mỗi chân I/O 40 mA
Dòng ra tối đa(5V) 500 mA
Dòng ra tối đa(3.3V) 50 mA
Bộ nhớ flash
32 KB (AT mega328) với 2 KB dùng bởi
bootloader.
SRAM 2 KB (AT mega328)
EEPROM 1 KB (AT mega328)
Kích thước 1.85cm x 4.3cm
25. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
11
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
2.2.4. Module chuyển giao tiếp LCD sang I2C
Để điều khiển và hiển thị được kí tự từ vi điều khiển xuất ra màn hình LCD20x4
cần có ít nhất là 10 đường nối đến chân của vi điều khiển (8 đường data từ D0 – D7 và
2 đường điều khiển RS, RW) nếu bit DL (data length) =1 hoặc cần ít nhất 6 đường (4
đường data từ D4 – D7 và 2 đường điều khiển RS, RW) nếu bit DL=0. Chính vì điều
này đã làm cho mạch khi thiết kế rườm rà, khó viết code…Nhưng với module chuyển
đổi I2C ta chỉ cần 2 chân SDA và SCL nối với vi điều khiển là ta có thể điều khiển và
hiển thị trên màn hình LCD. Hình ảnh module I2C như hình 2.5.
Hình 2.5: Module giao tiếp I2C.
Bảng 2.5. Sơ đồ chân của module I2C
Chân Tên chân I/O Chức năng
1 GND Nguồn Chân nối mass
2 VCC Nguồn Chân nối điện áp +5V
3 SDA I/O Chân truyền nhận dữ liệu
4 SCL CLK Chân nhận xung clock
A0 A0 Jumber Chân thiết lập địa chỉ A0
A1 A1 Jumber Chân thiết lập địa chỉ A1
A2 A2 Jumber Chân thiết lập địa chỉ A2
Backlight Jumber Chân điều khiển đèn nền của LCD
Contrast Pot Chân điều khiển độ tương phản của LCD
26. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
12
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Đối với module I2C chúng ta có thể kết nối được nhiều module I2C lại với nhau để
hiển thị trên nhiều màn hình LCD cùng lúc bằng cách hàn các jump trên module I2C để
thay đổi địa chỉ. Địa chỉ mặc định khi chưa hàn các jump là 0x27. Các địa chỉ sẽ thay
đổi khi hàn các jump được trình bày trong bảng 2.6.
Bảng 2. 6: Địa chỉ của module giao tiếp I2C.
A0 A1 A2 Địa chỉ
open open open 0x27
jumper open open 0x26
open jumper open 0x25
jumper jumper open 0x24
open open jumper 0x23
jumper open jumper 0x22
open jumper jumper 0x21
jumper jumper jumper 0x20
Kết nối mạch giao tiếp I2C và LCD:
Hình 2. 6: Giao tiếp với LCD qua mạch chuyển I2C.
27. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
13
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
2.2.5. Module LCD 20x4
LCD có nhiều loại và số chân của chúng cũng khác nhau nhưng có 2 loại phổ
biến là loại 14 chân và loại 16 chân, sự khác nhau là các chân nguồn cung cấp, còn các
chân điều khiển thì không thay đổi. Hình ảnh LCD 20x4 như hình 2.7.
Hình 2. 7: LCD 20x4.
Bảng 2. 7: Các chân LCD 20x4.
TT Tên tín hiệu I/O Mô tả
1 Vss Nguồn GND
2 VDD Nguồn +5V
3 Vo Điện áp Điều khiển ánh sáng nền
4 RS INPUT Register Select
5 R/W INPUT Read/Write
28. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
14
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
6 E INPUT Enable
7 D0 I/O DATA LSB
8 D1 I/O DATA
9 D2 I/O DATA
10 D3 I/O DATA
11 D4 I/O DATA
12 D5 I/O DATA
13 D6 I/O DATA
14 D7 I/O DATA MSB
15 A I Nguồn dương +5V
16 K I GND
Chân LCD được chia làm 4 dạng:
Chân cấp nguồn: Chân số 1 là chân nối mass (0V), chân thứ 2 là VDD nối
với nguồn +5V. Chân thứ 3 (Vo) dùng để điều chỉnh contrast thường nối với
biến trở.
Các chân điều khiển: Chân số 4 làm chân RS dùng để điều khiển lựa chọn
thanh ghi, chân R/W dùng để điều khiển quá trình đọc và ghi. Chân E là chân
cho phép dạng xung chốt.
Các chân dữ liệu D7 – D0: Chân số 7 đến chân số 14 là 8 chân dùng để trao
đổi dữ liệu giữa thiết bị điều khiển và LCD.
Các chân A, K: Chân số 15 và chân số 16 là 2 chân dùng để cấp nguồn cho
đèn nền có thể nhìn thấy vào ban đêm.
29. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
15
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Bảng 2.8: Các lệnh điều khiển LCD.
LỆNH R
S
R
W
D
7
D
6
D
5
D
4
D
3
D
2
D
1
D
0
Mô tả clock
(1) NOP 0 0 0 0 0 0 0 0 0 0 No operation 0
(2) Clear
display
0 0 0 0 0 0 0 0 0 1 Clear display & sets
address counter to zero
1.52
ms
(3) cursor
home
0 0 0 0 0 0 0 0 1 0 Sets address counter to
zero, returns shifted
display to original
position. DDRAM
contents remain
unchanged
39µs
(4) Entry
mode set
0 0 0 0 0 0 0 1 I/
D
S Sets cursor move
direction, specifies
automatic shift
39µs
(5) Display
control
0 0 0 0 0 0 1 D C B Turns display (D),
cursor on/off (C) or
cursor blinking (B)
39µs
(6) Cursor/
display shift
0 0 0 0 0 1 S
/
C
R
/
L
0 0 Move cursor and shift
display. DDRAM
contents remain
unchanged
39µs
(7) Function
set
0 0 0 0 0 D
L
N M G 0 Sets interface data
width (DL), number of
display lines (N,M)
and voltage generator
39µs
(8) Set
CGRAM
0 0 0 1 Character Generator
RAM
Sets CGRAM address 39µs
30. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
16
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
(9) Set
DDRAM
addr
0 0 1 Display data ram address Sets DDRAM address 39µs
(10) Buzy
flag & Addr
0 0 B
F
Address counter Reads buzzy flag &
address counter
0µs
(11) Read
data
1 1 Read data Reads data form
CCGRAM or
DDRAM
43µs
(12) Write
data
1 0 Write data Write data to
CCGRAM or
DDRAM
43µs
Dạng sóng các tín hiệu khi thực hiện đọc dữ liệu LCD như hình 2.8.
Hình 2. 8: Giản đồ thời gian chu kỳ đọc của LCD.
Dựa vào dạng sóng ta có thể thấy được trình tự điều khiển như sau:
Điều khiển tín hiệu RS.
Điều khiển tín hiệu R/W lên mức cao.
Điều khiển tín hiệu E lên mức cao để cho phép.
Xuất dữ liệu từ Bus dữ liệu DB7 – DB0.
Điều khiển tín hiệu E về mức thấp.
31. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
17
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Dạng sóng các tín hiệu khi thực hiện ghi dữ liệu LCD như hình 2.9.
Hình 2. 9: Giản đồ thời gian chu kỳ ghi của LCD.
Dựa vào dạng sóng ta có thể thấy được trình tự điều khiển như sau:
Điều khiển tín hiệu RS.
Điều khiển tín hiệu R/W lên mức thấp.
Điều khiển tín hiệu E lên mức cao để cho phép.
Xuất dữ liệu từ Bus dữ liệu DB7 – DB0.
Điều khiển tín hiệu E về mức thấp.
Điều khiển tín hiệu R/W lên mức cao trở lại.
Bảng 2.9: Thông số thời gian của LCD.
Thông số Ký hiệu Min Max Đơn vị Tên tín hiệu
Chu kỳ cho phép tc 500 ns E
Thời gian tín hiệu E lên mức cao tw 200 ns E
Thời gian chuyển trạng thái của
tín hiệu E
tf, tr 25 ns E
Thời gian thiết lập RS, R/W tsu 40 RS, R/W
Thời gian giữ RS, R/W th 10 ns RS, R/W
32. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
18
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Thời gian đọc dữ liệu ngõ ra
chậm trễ
tD 60 120 ns DB0 – DB7
Thời gian đọc dữ liệu trong thời
gian giữ
tDH 20 ns DB0 – DB7
Thời gian thiết lập ghi dữ liệu tsu1 40 ns DB0 – DB7
Thời gian chờ ghi dữ liệu th1 10 ns DB0 – DB7
Sơ đồ khối bên trong LCD như hình 2.10.
Hình 2. 10: Sơ đồ khối của bộ điều khiển LCD.
Sơ đồ khối gồm 4 phần: Bộ điều khiển LCD, bảng kí tự LCD, bộ thúc tín hiệu các
đoạn và đèn nền.
Bộ điều khiển LCD có 3 vùng nhớ nội, mỗi vùng có một chức năng riêng. Bộ điều
khiển phải khởi động trước khi truy cập bất kỳ vùng nhớ nào.
Bộ nhớ DDRAM: Chứa dữ liệu để hiển thị, lưu trữ những mã kí tự để hiển
thị trên màn hình. Mã ký tự trong vùng DDRAM sẽ tham chiếu với từng
bitmap kí tự được lưu trữ trong CGROM đã được định nghĩa trước hoặc đặt
trong vùng do người sử dụng định nghĩa.
Bộ phát kí tự ROM – CGROM: Chứa các kiểu bitmap cho mỗi kí tự được
định nghĩa trước mà LCD có thể hiển thị, được trình bày ở bảng mã ASCII.
33. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
19
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Bộ phát kí tự RAM – CGRAM: Cung cấp vùng nhớ để tạo ra 8 kí tự tùy ý. Mỗi
kí tự gồm 5 cột và 8 hàng.
MÃ ASCII
LCD sử dụng mã ASCII để hiển thị các ký tự, các số, các ký hiệu… Có tổng cộng
256 ký tự. Mã ASCII như ở bảng 2.10.
Bảng 2. 10: Bảng mã ASCII.
34. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
20
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
2.2.6. Module NodeMCU ESP8266.
ESP8266 NodeMCU là kít phát triển dựa trên nền chip Wifi SoC ESP8266.
ESP8266 NodeMCU tích hợp bộ thu phát Wifi và 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 coded.
ESP8266 NodeMCU có thể quét và kết nối đến một mạng Wifi bất kỳ (Wifi Client)
để thực hiện các tác vụ như lưu trữ, truy cập dữ liệu từ Server, tạo điểm truy cập Wifi
(Wifi Access point) cho phép các thiết bị khác kết nối, giao tiếp và điều khiển đồng thời
nó cũng là một Server để xử lý dữ liệu từ các thiết bị sử dụng Internet khác. Với những
khả năng ưu việc, ứng dụng cao, giá thành lại hợp lý nên ESP8266 NodeMCU là sự lựa
chọn hàng đầu cho đề tài mà nhóm chúng em nghiên cứu. Hình ảnh ESP8266 NodeMCU
như hình 2.11.
Hình 2.11: Module NodeMCU ESP8266 V3.
35. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
21
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Thông số kỹ thuật của ESP8266 NodeMCU
Bảng 2. 11: Thông số kỹ thuật của ESP8266 NodeMCU.
Thông số Giá trị
Điện áp hoạt động 5V
Số chân ngõ vào ra số 13
Số chân tương tự 1
Dòng DC trên mỗi I/O 12mA
Bộ nhớ Flash 4MB
SRAM 96KB
Tần số hoạt động 80MHz-160MHz
ESP8266: Bộ xử lý trung tâm, tích hợp bộ thu phát Wifi, có bộ nhớ Flash 4MB.
Chân I/O: Có tổng cộng 13 chân GPIO (D0-D8, RX, TX, SD2, SD3). Với chức
năng là các ngõ vào và ngõ ra sử dụng các hàm pinMode(), degitalWrite() và
degitalRead() để điều khiển. Các chân (trừ D0) để thực hiện các chuẩn giao tiếp
I2C, PWM.
Chân Analog: Chân A0.
Cổng Micro USB: ESP8266 NodeMCU sử dụng cáp USB để giao tiếp với máy
tính. Thông qua cổng này người lập trình có thể nạp chương trình cho ESP8266
NodeMCU, ngoài ra cổng USB là nguồn cung cấp điện áp 5V cho ESP8266
NodeMCU hoạt động.
Giới thiệu về chip ESP8266:
ESP8266 là một mạch vi điều khiển giúp chúng ta có thể điều khiển các thiết bị
ngoại vi khác. Bên cạnh đó ESP8266 là sự kết hợp giữa module Wifi tích hợp sẵn bên
trong vi điều khiển chính sử dụng chip ESP8266 SoC (System on Chip) đượ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 thông qua Internet. Chip
ESP8266 như hình 2.12.
36. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
22
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 2.12: Chip ESP8266.
Thông số kỹ thuật:
Sử dụng vi điều khiển 32bit công suất thấp.
Hổ trợ Flash ngoài từ 512MB đến 4MB.
64KB RAM thực thi lệnh.
96KB RAM dữ liệu.
64KB boot ROM.
Hổ trợ chuẩn Wifi EEE 802.11 b/g/n, tích hợp giao thức TCP/IP.
Wifi 2.4 GHz, hỗ trợ WPA/WPA2.
1 ADC 10bit.
Hỗ trợ các chuẩn giao tiếp UART, SPI, I2C, I2S.
Chuẩn điện áp hoạt động 3.3V.
Có 3 chế độ hoạt động: Client, Access point, Both Client and Access point.
Hỗ trợ các chuẩn bảo mật: OPEN, WEP, WPA_PSK, WPA2_PSK.
37. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
23
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Sơ đồ chân ESP8266 như hình 2.13.
Hình 2. 13: Sơ đồ chân ESP8266.
Bảng 2. 12: Chức năng các chân ESP8266.
Thứ tự Tên tín hiệu I/O Mô tả
1 VDDA Nguồn Điện áp tương tự từ 2.5 V– 3.6V
2 LNA I/O Cổng giao tiếp RF.
Trở kháng đầu ra chip z=39 + j6 Ω
3 VDD3P3 Nguồn Điện áp khuếch đại 2.5 V– 3.6V
4 VDD3P3 Nguồn Điện áp khuếch đại 2.5 V– 3.6V
5 VDD_RTC Nguồn NC (1.1V)
6 TOUT I Chân ADC. Chân này được sử dụng để kiểm tra
điện áp cung cấp điện của VDD3P3 và điện áp
đầu vào của TOUT.
7 CHIP_EN I Chân cho phép chip
38. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
24
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Mức cao: bật, chip hoạt động bình thường.
Mức thấp: tắt, dòng điện nhỏ tiêu thụ
8 XPD_DCDC I/O GPIO16
9 MTMS I/O GPIO16; HSPI_CLK
10 MTDI I/O GPIO12; HSPI_MISO
11 VDDPST Nguồn Điện áp cũng cấp IO và điện áp số (1.8V –
3.6V)
12 MTCK I/O GPIO13; HSPI_MOSI; UART0_CTS
13 MTDO I/O GPIO15; HSPI_CS; UART0_RTS
14 GPIO2 I/O UART Tx trong quá trình lập trình Flash;
GPIO2
15 GPIO0 I/O GPIO0; SPI_CS2
16 GPIO4 I/O GPIO4
17 VDDPST Nguồn Điện áp cũng cấp IO và điện áp số (1.8V –
3.6V)
18 SDIO_DAT
A_2
I/O Kết nối với chân SD_D2; SPIHD; HSPIHD;
GPIO9
19 SDIO_DAT
A_3
I/O Kết nối với chân SD_D3; HSPIWP; GPIO10
20 SDIO_CMD I/O Kết nối với chân SD_CMD; SPI_CS0; GPIO11
21 SDIO_CLK I/O Kết nối với chân SD_CLK; SPI_CLK; GPIO6
22 SDIO_DAT
A_0
I/O Kết nối với chân SD_D0; SPI_MISO; GPIO7
23 SDIO_DAT
A_1
I/O Kết nối với chân SD_D1; SPI_MOSI; GPIO8
24 GPIO5 I/O GPIO5
39. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
25
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
25 U0RXD I/O UART Rx trong quá trình Flash; GPIO3
26 U0TXD I/O UART Tx trong quá trình Flash; GPIO1;
SPI_CS1
27 XTAL_OUT I/O Kết nối với đầu ra thạch anh, có thể sử dụng để
cung cấp BT đầu vào xung clock.
28 XTAL_IN I/O Kết nối với ngõ vào thạch anh
29 VDDD Nguồn Điện áp tương tự 2.5V – 3.6V
30 VDDA Nguồn Điện áp tương tự 2.5V – 3.6V
31 RES12K I Kết nối với điện trở 12 KΩ và kết nối với đất
32 EXT_RSTB I Tín hiệu đặt lại bên ngoài (hoạt động ở mức
thấp)
2.2.7. Module Sim900A
Những dự án xây dựng các hệ thống điều khiển từ xa, gửi nhận dữ liệu thu thập từ
các cảm biến... ở những nơi không có internet thì sử dụng sóng điện thoại là giải pháp
duy nhất vì chi phí rẻ, bất chấp khoảng cách và độ ổn định cao. Với Module sim 900a
kết hợp với mạch xử lý arduino uno hoặc mega các bạn có thể làm được nhiều hệ thống
tương đối tốt có thể ứng dụng vào thực tế như bộ định vị, các hệ thống điều khiển thiết
bị từ xa qua điện thoại, sms makerting,...
Hình 2.14: Module Sim 900A.
40. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
26
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hỗ trợ:
o Nghe gọi.
o Gửi - nhận tin nhắn SMS.
o Với mức điện áp hoạt động 5VDC - Chuẩn điện áp thông dụng nhất với các
loại vi điều khiển và cả giao tiếp máy tính, cùng với tính ổn định cao và đơn
giản về sử dụng, module SIM900A này rất thích hợp cho các ứng dụng thực
tế liên quan đến nghe gọi, SMS, DTMF…
Thông tin kĩ thuật:
o Điện áp hoạt động: 4.5 - 5 VDC - Dòng khuyến nghị: > 2A.
o Giao diện: TTL.
o Sơ đồ chân:
• VCC: Nguồn vào 5V.
• TXD: Chân truyền Uart TX.
• RXD: Chân nhận Uart RX.
• Headphone: Chân phát âm thanh.
• Microphone: Chân nhận âm thanh (phải gắn thêm Micro từ GND vào
chân này thì mới thu được tiếng).
• GND: Chân Mass, cấp 0V.
Kết nối với Arduino
Hình 2. 15: Kết nối Module Sim 900A với arduino.
41. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
27
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Modul sim900a mini hàn thêm diot vào chân vcc và tụ 2200uF/10V để sử
dụng được nguồn 5v từ mạch arduino.
5V nối với chân 5V của board Arduino.
GND nối với chân GND của board Arduino.
TX nối với chân 51/2 của board Arduino MEGA/UNO.
RX nối với chân 50/3 của board Arduino MEGA/UNO.
PWR: Đây là chân bật tắt modul sim900a.
SPK: Chân này cần kết nối nếu bạn muốn xuất âm thanh ra loa thoại.
MIC: Chân này cần kết nối nếu bạn muốn tạo mic để đàm thoại.
2.2.8. Đồng hồ thời gian thực DS1307
IC DS1307 là chip đồng hồ thời gian thực (RTC: Real-time clock), khái niệm thời
gian thực ở đây được dùng với ý nghĩa thời gian tuyệt đối mà con người đang sử dụng,
tính bằng giây, phút, giờ. DS1307 là một sản phẩm của Dallas Semiconductor. Chip này
có 7 thanh ghi 8 bit chứa thời gian là: giây, phút, giờ, thứ, ngày, tháng, năm. Ngoài ra
DS1307 còn có 1 thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống có thể dùng như
RAM. DS1307 được đọc và ghi thông qua giao diện nối tiếp I2C (TWI của AVR) nên
cấu tạo bên ngoài rất đơn giản. DS1307 xuất hiện ở 2 gói SOIC và DIP có 8 chân như
trong hình sau.
Hình 2. 16: Hai gói cấu tạo chip DS1307.
Các chân của DS1307 được mô tả như sau:
X1 và X2: là 2 ngõ kết nối với 1 thạch anh 32.768KHz làm nguồn tạo dao
động cho chip.
VBAT: cực dương của nguồn pin 3.3V nuôi chip.
GND: chân Mass chung cho cả pin 3.3V và Vcc.
42. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
28
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Vcc: nguồn cho giao diện I2C, thường là 5V và dùng chung với vi điều khiển.
Nếu Vcc không được cấp nhưng vẫn còn VBAT thì DS1307 vẫn đang hoạt
động.
SQW/OUT: một ngõ phụ tạo xung vuông (Square Wave / Output Driver), tần
số của xung được tạo có thể được lập trình. Như vậy chân này hầu như không
liên quan đến chức năng của DS1307 là đồng hồ thời gian thực, chúng ta sẽ
bỏ trống chân này khi nối mạch.
SCL và SDA: đường xung nhịp và đường dữ liệu của chuẩn I2C, khi kết nối
với vi điều khiển ta phải nối thêm điện trở kéo lên vì ngõ ra vi điều khiển là
dạng cực máng hở.
Hình 2. 17: Mạch đồng hồ thời gian thực DS1307.
Do mạch này được sử dụng rất nhiều trong thực tế nên nhà sản xuất đã làm ra
module thời gian thực DS1307 đi kèm với IC nhớ AT24C32. Dưới đây là hình ảnh thực
tế về module :
Hình 2. 18: Mặt trước và sau của Module IC thời gian thực DS1307.
43. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
29
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
2.2.9. IC EEPROM 24LC512
Hình 2. 19: IC Eeprom 24LC512.
IC 24LC512 là một loại Eeprom có khả năng hoạt động ở điện áp từ 2,5V- 5,5V
và có bộ nhớ 512Kb. Có khả năng ghi tới 64 KBytes dữ liệu và khả năng đọc tuần tự và
ngẫu nhiên.
Các thông số cơ bản:
Bảng 2. 13: Các thông số của Eeprom 24LC512.
Thông số Giá trị
Bộ nhớ 512kbits
Điện áp hoạt động 2,5 V- 5,5 V
Kích thước trang 128 byte
Độ bền 1.000.0000 ghi/đọc/xóa
Nhiệt độ làm việc -40°C đến 125°C
Tần số 400kHz
44. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
30
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
2.3.10. IC nguồn LM2576
LM2576 là một IC nguồn tích hợp của mạch nguồn xung theo nguyên lý nguồn
Buck.Với dòng điện định mức đầu ra tải là 3A và có các đầu điện áp đầu ra cố định
3.3V, 5V, 12V, 15V và điện áp biến đổi tùy từng loại Serial của LM2576. Đây là loại
IC nguồn cung cấp điện áp đầu ra ổn định, hoạt động ổn định với đầu tản nhiệt tốt giúp
IC hoạt động tốt trong nhiệt độ cho phép.
Hình 2. 20: IC ổn áp LM2576.
Một số tính năng chính của LM2576:
Điện áp đầu ra của các Serial là 3.3V, 5V, 12V, 15V và điện áp điều chỉnh.
Điện áp điều chỉnh được từ 1.25V đến 37V. Với điện áp đầu vào là lớn
nhất.
Dòng đầu ra định mức là 3A.
Điện áp đầu vào định mức là 40V có thể lớn 60V tùy từng dòng Serial.
Chỉ giao tiếp với 5 chân đầu vào ra.
Tần số đóng cắt chuẩn 52Khz[separator].
Hiệu suất cao.
Bảo vệ quá dòng và quá nhiệt.
45. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
31
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Sơ đồ cấu tạo của LM2576:
Hình 2. 21: Cấu tạo của LM2576.
Ở trên là sơ đồ cấu tạo bên trong của LM2576. Nguyên tắc dựa theo nguồn xung
(Nguồn Buck). Điện áp đầu ra được điều chỉnh liên tục để đảm bảo cho điện áp đầu ra
luôn giữa ở một giá trị cố định. Trong sơ đồ cấu tạo thì LM2576 gồm khối: So sánh, tạo
dao động, công suất, quá dòng...
Chân 1 (Vin): Chân nguồn đầu vào.
Chân 2 (Vout): Chân điện áp đầu ra. Tùy thuộc dòng LM2576 mà chân này
có điện áp ra ổn định khác nhau.
Chân 3 (GND): Chân nguồn chung.
Chân 4 (Feedback): Chân đưa tín hiệu phản hồi từ đầu ra về đầu vào. Đưa
vào bộ so sánh để điều chỉnh ổn định điện áp.
Chân 5 (On/Off): Chân đóng mở. Thường để GND.
Thông số chính của LM2576:
Điện áp đầu vào: + LM2576: 45V.
+ LM2576HV: 60V.
Dòng điện đầu ra: 3A.
46. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
32
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Giải nhiệt độ hoạt động là: −65˚C to +150˚C.
Điện áp ổn định đầu ra: + LM2576HVS-3.3: 3.3V.
+ LM2576HVS-5.0: 5V.
+ LM2576HVS-12: 12V.
+ LM2576HVS-15: 15V.
+ LM2576HVS-ADJ: ADJ (1.25V ~ 37V).
2.3 CÁC CHUẨN GIAO TIẾP.
2.3.1. Chuẩn giao tiếp UART.
Chuẩn giao tiếp UART là chuẩn giao tiếp được sử dụng để giao tiếp giữa vi điều
khiển và máy tính. Ngày nay rất nhiều vi điều kiển được tích hợp mạch giao tiếp UART.
Hình 2. 22: Mô tả giao tiếp UART.
Khi tiến hành giao tiếp giữa 2 vi điều khiển theo chuẩn giao tiếp UART thì các vi
điều khiển tự động xử dụng xung của chính mình tạo ra
Hình 2. 23: Cấu trúc một khung dữ kiệu trong chuẩn giao tiếp UART.
47. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
33
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Một gói dữ liệu theo chuẩn UART có thể bao gồm các bit Start, gói dữ liệu, bit
kiểm tra parity (bit kiểm tra CRC) và bit Stop.
Khi bit Start kéo từ mức cao xuống mức thấp báo hiệu quá trình truyền dữ liệu đã
sẵn sàng. Tiếp đó là việc truyền 8 bit dữ liệu. Sau khi tiến hành truyền hết dữ liệu thì bit
kiểm tra thực hiện kiểm tra dữ liệu. Cuối cùng bit Stop lên mức cao báo hiệu đã kết thúc
một quá trình truyền dữ liệu.
Các thông số cơ bản trong truyền nhận UART:
Baud rate (tốc độ baud): khoảng thời gian một bit được truyền nên phải được đồng
bộ giữa bên gửi và nhận.
Frame (khung truyền): qui định số bit dữ liệu được truyền.
Bit Start: là bit bắt buộc, bắt đầu của một khung dữ liệu báo hiệu rằng sắp có một
gói dữ liệu được truyền tới.
Data: Gói dữ liệu cần truyền, các bit có trọng số thấp (LSB) được truyền trước
xong đó tới các bit có trọng số cao (MSB).
Bit Parity: kiểm tra dữ liệu truyền có đúng không.
Bit Stop: Là bit cảnh báo rằng các bit đã được gửi xong.
2.3.2. Chuẩn giao tiếp I2C
I2C là viết tắt của từ Inter-Integrated Circuit là một chuẩn truyền thông do hãng
điện tử Philips Semiconductor sáng lập và xây dựng thành chuẩn năm 1990. Phiên bản
mới nhất của I2C là V3.0 phát hành năm 2007.
I2C: Là một truyền thông nối tiếp đa chip chủ (tạm dịch của cụm từ multi-master
serial computer bus). Khái niệm “multi-master” được hiểu là trên cùng một bus có thể
có nhiều hơn một thiết bị làm Master, đồng thời một Slave có thể trở thành một Master
nếu nó có khả năng. I2C được thực hiện trên 2 đường SDA (Serial DATA) và SCL
(Serial Clock) trong đó SDA là đường truyền/nhận dữ liệu và SCL là đường xung nhịp.
Căn cứ theo chuẩn I2C, các đường SDA và SCL trên các thiết bị có cấu hình “cực góp
mở” nghĩa là cần có các “điện trở kéo lên” (pull-up resistor) cho các đường này. Ở trạng
thái nghỉ (Idle), 2 chân SDA và SCL ở mức cao. Hình 2.13 mô tả một mô hình mạng
I2C cơ bản.
48. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
34
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Thiết bị 1 Thiết bị 2 Thiết bị 3 Thiết bị n R1 R2
SDA
SCL
Vcc Vcc
Hình 2.24: Mạng I2C với nhiều thiết bị và 2 điện trở kéo lên cho SDA, SCL.
Master: Là chip khởi động quá trình truyền nhận, phát đi địa chỉ của thiết bị cần
giao tiếp và tạo xung giữ nhịp trên đường SCL.
Slave: Là chip có một địa chỉ cố định, được gọi bởi Master và phục vụ yêu cầu từ
Master.
SDA – Serial Data: Là đường dữ liệu nối tiếp, tất cả các thông tin về địa chỉ hay
dữ liệu đều được truyền trên đường này theo thứ tự từng bit một. Chú ý là trong chuẩn
I2C, bit có trọng số lớn nhất (MSB) được truyền trước nhất, đặc điểm này ngược lại với
chuẩn UART.
SCL – Serial Clock: Là đường giữ nhịp nối tiếp. I2C là chuẩn truyền thông nối tiếp
đồng bộ, cần có 1 đường tạo xung giữ nhịp cho quá trình truyền/nhận, cứ mỗi xung trên
đường giữ nhịp SCL, một bit dữ liệu trên đường SDA sẽ được lấy mẫu (sample). Dữ
liệu nối tiếp trên đường SDA được lấy mẫu khi đường SCL ở mức cao trong một chu
kỳ giữ nhịp, vì thế đường SDA không được đổi trạng thái khi SCL ở mức cao (trừ
START và STOP condition). Chân SDA có thể được đổi trạng thái khi SCL ở mức thấp.
49. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
35
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 2.25: Giản đồ xung của SCL và SDA.
START Condition – điều kiện bắt đầu: từ trạng thái nghỉ, khi cả SDA và SCL ở
mức cao nếu Master muốn thực hiện một “cuộc gọi”, Master sẽ kéo chân SDA xuống
thấp trong khi SCL vẫn cao. Trạng thái này gọi là START Condition (chúng ta gọi tắt
là S).
STOP Condition – điều kiện kết thúc: sau khi thực hiện truyền/nhận dữ liệu, nếu
Master muốn kết thúc quá trình nó sẽ tạo ra một STOP condition. STOP condition được
Master thực hiện bằng cách kéo chân SDA lên cao khi đường SCL đang ở mức cao.
STOP condition chỉ được tạo ra sau khi địa chỉ hoặc dữ liệu đã được truyền/nhận.
REPEAT START: Bắt đầu lặp lại, khoảng giữa START và STOP condition là
khoảng bận của đường truyền, các Master khác không tác động được vào đường truyền
trong khoảng này. Trường hợp sau khi kết thúc truyền/nhận mà Master không gởi STOP
condition lại gởi thêm 1 START condition gọi là REPEAT START. Khả năng này
thường được dùng khi Master muốn lấy dữ liệu liên tiếp từ các Slaves. Hình bên dưới
mô tả các Master tạo ra START, STOP và REPEAT START.
Hình 2.26: Giản đồ xung khi có REPEAT START.
Address Packet Format: Định dạng gói địa chỉ, trên mạng I2C, tất cả các thiết bị
(chip) đều có thể là Master hay Slave. Mỗi thiết bị có một địa chỉ cố định gọi là Device
50. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
36
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
address. Khi một Master muốn giao tiếp với một Slave nào đó, nó trước hết tạo ra một
START condition và tiếp theo là gởi địa chỉ Device address của Slave cần giao tiếp trên
đường truyền, vì thế xuất hiện khái niệm “gói địa chỉ” (Address Packet). Gói địa chỉ
trong I2C có định dạng 9 bits trong đó 7 bit đầu (gọi là SLA, được gởi liền sau START
condition) chứa địa chỉ Slave, một bit READ/WRITE và một bit ACK-Ackknowledge
(xác nhận). Do bit địa chỉ có độ dài 7 bits nên về mặt lý thuyết, trên 1 mạng I2C có thể
tồn tại tối đa 2^7=128 thiết bị có địa chỉ riêng biệt. Tuy nhiên, có một số địa chỉ không
được sử dụng như các địa chỉ có định dạng 1111xxx (tức các địa chỉ lớn hơn hoặc bằng
120 không được dùng).
Riêng địa chỉ 0 được dùng cho “cuộc gọi chung” (General call). Bit READ/WRITE
(R/W) được truyền tiếp sau 7 bit địa chỉ là bit báo cho Slave biết Master muốn “đọc”
hay “ghi” vào Slave. Nếu bit này bằng 0 (gọi là W) thì quá trình “Ghi” dữ liệu từ Master
đến Slave được yêu cầu, nếu bit này bằng 1 (gọi là R) thì Master muốn “đọc” dữ liệu từ
Slave về. Tám bits trên (SLA+R/W) được Master phát ra sau khi phát START condition,
nếu một Slave trên mạng nhận ra rằng địa chỉ mà Master yêu cầu trùng khớp với Device
address của chính nó sẽ “đáp trả” lại Master bằng cách phát ra 1 tín hiệu “xác nhận”
ACK bằng cách kéo chân SDA xuống thấp trong xung thứ 9.
Ngược lại, nếu không có Slave đáp ứng lại, chân SDA vẫn ở mức cao trong xung
giữ nhịp thứ 9 thì gọi là tín hiệu “không xác nhận” – NOT ACK, lúc này Master cần có
những ứng xử phù hợp tùy theo mỗi trường hợp cụ thể. Ví dụ Master có thể gởi STOP
condition và sau đó phát lại địa chỉ Slave khác…
Như vậy, trong 9 bit của gói địa chỉ thì chỉ có 8 bit được gởi bởi Master, bit còn
lại là do Slave. Ví dụ Master muốn yêu cầu “đọc” dữ liệu từ Slave có địa chỉ 43, nó cần
phát đi một byte như sau trên đường truyền: (43<<1) + 1, trong đó (43<<1) là dịch số
43 về bên trái 1 vị trí vì 7 bit địa chỉ nằm ở các vị trí cao trong gói địa chỉ, sau đó cộng
giá trị này với “1” tức là quá trình “đọc” được yêu cầu.
51. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
37
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 2.27: Giản đồ xung khi có Address Packet Format.
General call – cuộc gọi chung: Khi Master phát đi gói địa chỉ có dạng 0 (thực chất
là 0+W) tức nó muốn thực hiện một cuộc gọi chung đến tất cả các Slave. Tất nhiên, cho
phép hay không cho phép cuộc gọi chung là do Slave quyết định. Nếu các Slave được
cài đặt cho phép cuộc gọi chung, chúng sẽ đáp lại Master bằng ACK. Cuộc gọi chung
thường xảy ra khi Master muốn gởi dữ liệu chung đến các Slaves. Chú ý là cuộc gọi
chung có dạng 0+R là vô nghĩa vì không thể Master nhận dữ liệu từ tất cả các Slave
cùng thời điểm.
Data Packet Format – định dạng gói dữ liệu: Sau khi địa chỉ đã được phát đi, Slave
đã đáp lại Master bằng ACK thì quá trình truyền/nhận dữ liệu sẽ diễn ra giữa cặp
Master/Slave này. Tùy vào bit R/W trong gói địa chỉ, dữ liệu có thể được truyền theo
hướng từ Master đến Slave hay từ Slave đến Master. Dù di chuyển theo hướng nào, gói
dữ liệu luôn bao gồm 9 bits trong đó 8 bits đầu là dữ liệu và 1 bit cuối là bit ACK. Tám
bits dữ liệu do thiết bị phát gởi và bit ACK do thiết bị nhận tạo ra. Ví dụ khi Master thực
hiện quá trình gởi dữ liệu đến Slave, nó sẽ phát ra 8 bits dữ liệu, Slave nhận và phát lại
ACK (kéo SDA xuống 0 ở xung thứ 9), sau đó Master sẽ quyết định gởi tiếp byte dữ
liệu khác hay không. Nếu Slave phát tín hiệu NOT ACK (không tác động SDA ở xung
thứ 9) sau khi nhận dữ liệu thì Master sẽ kết thúc quá trình gởi bằng cách phát đi STOP
condition. Hình bên dưới mô tả định dạng gói dữ liệu trong I2C.
52. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
38
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 2.28: Giản đồ xung định dạng gói dữ liệu trong I2C.
Phối hợp gói địa chỉ và dữ liệu: Một quá trình truyền/nhận I2C thường được bắt
đầu từ Master, Master phát đi một START condition sau đó gởi gói địa chỉ SLA+R/W
trên đường truyền. Tiếp theo nếu có một Slave đáp ứng lại, dữ liệu có thể truyền/nhận
liên tiếp trên đường truyền (1 hoặc nhiều byte liên tiếp). Khung truyền thông thường
được mô tả như hình bên dưới.
Hình 2.29: Khung truyền dữ liệu trong I2C.
2.4 GIỚI THIỆU PHẦN MỀM.
2.4.1. Phần mềm lập trình Arduino IDE 1.8.1
Phần mềm Arduino IDE là phần mềm lập trình dành cho các board Arduino.
Phần mềm có rất nhiều tiện ích như cài đặt dễ dàng nhanh chóng, mã nguồn mở nên ta
có thể thêm các thư viện mong muốn, ngôn ngữ lập trình thông dụng.
Các bước cài đặt và sử sụng phần mềm:
53. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
39
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Bước 1: Tải về và cài đặt phiên bản mới nhất của Arduino. Truy cập và website
https://www.Arduino.cc vào mục Software kéo đến phần Download Arduino IDE. Chú
ý: chọn đúng phiên bản dành cho hệ điều hành trên máy tính. Arduino IDE cho Windows
có 2 lựa chọn, một là tải về file nén “.zip”, hai là tải về file cài đặt “.exe”. Phiên bản mới
nhất hiện tại là 1.8.3. Sau khi tải về thì tiến hành cài đặt chương trình.
Bước 2: Sau khi cài đặt thành công, mở chương trình Arduino IDE lên và tiến hành
tạo project mới. Cấu trúc cơ bản của chương trình khi khởi tạo một project mới (gọi là
sketch) bao gồm hai hàm chính là setup() và loop().
Hình 2.30: Giao diện Arduino IDE với project mới (sketch mới).
Ví dụ về một chương trình mẫu bật tắt led. Trường hợp của đề tài vừa sử dụng
Arduino và sử dụng EPS8266, mặc định trên phần mềm chưa có thư viện hỗ trợ module
ESP8266, vì vậy để sử dụng được thì phải cài đặt module ESP8266 cho phần mềm. Thực
hiện cài đặt như sau: vào File, chọn Preferences vào textbox Additional Board Manager
URLs thêm vào đường link sau.
http://Arduino.esp8266.com/stable/package_esp8266com_index.json.
Tiếp theo vào Tool→Board→Boards Manager:
54. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
40
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Chọn ESP8266 by ESP8266 Community, click vào Install.
Tool→Board→NodeMCU 1.0 ESP8266-12E Module.
Bước 3: Viết chương trình cấu trúc cơ bản của chương trình bao gồm hai hàm
chính là setup và loop. Hàm setup chạy mỗi khi khởi động một chương trình, dùng để
thiết lập các cài đặt. Hàm loop được gọi lặp lại nhiều lần cho đến khi tắt nguồn.
Bước 4: Biên dịch và nạp code: sau khi vết code xong thì tiến hành biên dịch cho
đến khi chương trình không còn lỗi thì nạp chương trình vào bo mạch Arduino. Sau khi
nạp thành công thì Arduino IDE hiện “Uploading Done”. Lúc này đã nạp chương trình
vào Arduino thành công, kiểm Arduino xem có thực hiện đúng yêu cầu mong muốn
chưa, nếu chưa thì hiệu chỉnh lại code rồi tiến hành biên dịch và nạp lại.
Hình 2.31: Biên dịch thành công.
2.4.2. Phần mềm thiết kế mạch Altium
Là phần mềm thiết kế mạch chuyên nghiệp có nhiều chức năng vô cùng tiện ích
như thiết kế sơ đồ nguyên lý, thiết kế vẽ mạch layout (PCB), tạo mới linh kiện, và thư
viện 3D đẹp mắt.
55. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
41
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 2.32: Màn hình khởi động của Altium 16.
Cửa sổ làm việc phần thiết kế mạch nguyên lý:
Hình 2.33: Cửa sổ làm việc thiết kế mạch nguyên lý Altium.
56. CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
42
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Cửa sổ làm việc vẽ PCB:
Hình 2.34: Cửa sổ thiết kế PCB.
57. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
43
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Chương 3. TÍNH TOÁN VÀ THIẾT KẾ
3.1 GIỚI THIỆU
Thiết kế và thi công hệ thống giám sát điện năng tiêu trong thụ hộ gia đình thu thập
dòng điện, điện áp, tính toán công suất và điện năng hiển thị lên màn hình LCD, cài đặt
cảnh báo và cảnh báo khi quá công suất và điện năng tiêu thụ cho phép sử dụng. Xây
dựng được website quản trị có thể điều khiển, giám sát và cập nhật cơ sở dữ liệu lên
Database, hiển thị thông tin từ Database ra website thông qua mạng Internet. Đề tài
nguyên cứu nhằm ứng dụng điều khiển và quản lý thông qua Internet. Các nội dung thiết
kế sẽ được trình bày bao gồm:
Thiết kế sơ đồ khối.
Thiết kế khối nguồn.
Thiết kế giao diện hiển thị.
58. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
44
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG
3.2.1. Thiết kế sơ đồ khối hệ thống
a. Sơ đồ khối của hệ thống.
Với yêu cầu của hệ thống cần đo, cần bộ xử lý liên kết với nhiều module ngoại
vi. Từ nhiệm vụ thu thập các dữ liệu từ các khối đo gửi lên cho đến lưu dữ liệu và giao
tiếp với Internet để mang dữ liệu gửi lên mạng Internet. Sơ đồ khối bên dưới là toàn bộ
hệ thống cần thiết kế.
KHỐI ĐO
KHỐI HIỂN THỊ
KHỐI LƯU TRỮ
WEB SERVER
5V Khối đo, bộ xử lý trung tâm, khối hiển thị, khối lưu trữ,
khối cảnh báo.
KHỐI NGUỒN
KHỐI XỬ LÝ
TRUNG TÂM
KHỐI CẢNH
BÁO
KHỐI ĐẶT TRƯỚC
Hình 3. 1: Sơ đồ khối toàn hệ thống.
59. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
45
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
b. Chức năng từng khối
Khối đo: Bao gồm cảm biến dòng điện Hall 100A và cảm biến áp module
ZMPT101B được kết nối với Arduino Nano, sau khi đọc được dòng điện và điện áp từ
bên ngoài thì xử lý tính toán công suất và điện năng tiêu thụ và gửi thông số qua cho
khối xử lý trung tâm.
Khối xử lý trung tâm: NodeMCU ESP8266 có nhiệm vụ nhận dữ liệu từ khối đo,
tổng hợp, xử lý và gửi dữ liệu cho các khối hiển thị, khối lưu trữ, khối đo và khối web
server.
Khối hiển thị: Sử dụng LCD20x4 giao tiếp với bộ xử lý trung tâm bằng chuẩn
giao tiếp I2C sử dụng module chuyển đổi giao tiếp dùng IC PCF8574. Khối hiển thị sau
khi nhận được dữ liệu từ khối xử lý trung tâm sẽ có nhiệm vụ hiển thị dữ liệu ra màn
hình LCD.
Khối cảnh báo: Sử dụng SIM900A để gửi tin nhắn về người dùng khi công suất
tăng cao so với công suất cài đặt giúp hao phí điện năng trong từng ngày.
Khối truyền dữ liệu: Nhận dữ liệu từ bộ xử lý trung tâm thông qua UART, sau
đó lưu trữ dữ liệu bằng Eeprom và gửi dữ liệu lên web server.
Khối lưu trữ: Sử dụng IC Eeprom 24LC512 để lưu trữ và quản lý dữ liệu ở
NodeMCU ESP82666.
Web sever: Quản lý dữ liệu từ xa thông qua mạng wifi.
Khối nguồn: Tất cả các khối sử dụng mạch nguồn ổn áp 5V.
3.2.2. Tính toán và thiết kế mạch
a. Thiết kế khối đo:
Thiết kế đo dòng:
Thiết bị đo được sử dụng là cảm biến dòng điện Hall 100A YHDC.
Từ dòng đo được qua mạch điện chuyển đổi ta thu được giá trị thực của dòng điện
trên đường dây.
60. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
46
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Lựa chọn cảm biến dòng Hall 100A YHDC bởi nó có thể chuyển đổi giá trị dòng
điện xoay chiều lên đến 100A ở đầu vào và đưa ra ngõ ra tối đa 50mA, thuận tiện cho
việc xử lý dữ liệu.
Sơ đồ khối nguyên lý:
Khối xử lý dữ liệu từ cảm biến
(đọc và truyền dữ liệu).
Cảm biến dòng
Hall 100A
Hình 3.2: Sơ đồ khối của khối đo dòng điện.
Cảm biến dòng Hall 100A YHDC: cảm biến đọc giá trị dòng điện có ngõ vào tối
đa là 100A và ngõ ra đạt cao nhất là 50mA.
Khối xử lý dữ liệu: sử dụng Arduino Nano có kích thước nhỏ gọn, có nhiều chức
năng có thể đáp ứng tốt yêu cầu của hệ thống.
Tính toán thiết kế:
Sử dụng cảm biến dòng điện Hall 100A YHDC để đo dòng điện trên các đường
dây được kết nối với ngõ vào ADC của Arduino để đọc về giá trị. Như vậy ta cần làm
rõ các bước sau:
Ngõ ra của cảm biến dòng điện Hall là điện áp, dòng điện xoay chiều phải được
biến đổi trước khi đưa vào Arduino.
Tính toán các mạch điện liên quan.
61. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
47
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 3.3: Kết nối ngõ ra cảm biến dòng điện Hall với Arduino.
Điện trở R1 làm giảm điện áp AC, điện trở R1 và R2 cung cấp điện áp phân cực
cho DC offset. Tụ điện C1 cung cấp một trở kháng thấp để nối đất cho tín hiệu AC, giá
trị không quan trọng, chọn trong khoảng 1 μF và 10 μF sẽ đủ tốt.
Theo như hình 3.3, ta có :
Ngõ ra dòng hiệu dụng của cảm biến dòng tối đa đạt 50mA, khi mà dòng ngõ vào
đạt tối đa 100A.
Do Arduino không thể đo được nguồn có giá trị âm nên chúng ta phải cộng thêm
2.5V vào điện áp ngõ ra của cảm biến Hall.
Như vậy, ta cần tính toán lựa chọn các thông số cho mạch :
Đầu tiên ta tính được dòng điện áp đỉnh lớn nhất ngõ vào :
Iin = IRMS. √2 = 100. √2 = 141,4 (A) (3.1)
Điện áp đỉnh đầu ra của cảm biến biến dòng có tỉ lệ 2000 vòng là :
Iout =
Iin
2000
= 0,0707 (A) (3.2)
Do Arduino chỉ có thể đo được điện áp (0-5V) nên ta cần chuyển đổi từ giá trị
dòng điện sang điện áp thông qua một điện trở. Từ áp đo được trên điện trở ta sẽ tính
toán để tìm được dòng điện ngõ vào của cảm biến biến dòng Hall.
62. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
48
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 3. 4: Đo dòng điện thông qua điện áp trên 2 đầu điện trở.
Điện áp tối đa đặt trên 2 đầu điện trở R (burden) chỉ là 2,5V (do Arduino chỉ đo
được điện áp 1 chiều có giá trị từ 0- 5V). Vậy nên giá trị điện trở R (burden) tính toán
lý tưởng sẽ là:
R =
Uburden
Iout
=
2,5
0.0707
= 35.4(Ω) (3.3)
Nhưng do giá trị điện trở trên không có trong các giá trị điện trở được sản xuất nên
ta chỉ có thể chọn các điện trở gần đó là 33Ω và 39Ω. Và nên lựa chọn điện trở có giá
trị nhỏ hơn là 33Ω, hoặc sử dụng 2 điện trở có tổng gần với điện trở có giá trị mong
muốn.
Đồng thời do phải sử dụng nguồn tham chiếu từ Arduino, và Arduino không thể
đo được điện áp giá trị âm nên ta phải sử dụng thêm 2 điện trở R1 và R2 có giá trị bằng
nhau có tác dụng phân áp tạo nguồn 2.5V, để nâng điện áp lên 0-5V (vào Arduino).
Do 2 điện trở R1 và R2 chỉ có tác dụng phân áp nên ta lựa chọn giá trị của nó từ
khoảng 10kΩ - 470kΩ. Chúng tôi đề xuất sử dụng điện trở 10kΩ là phù hợp.
63. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
49
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 3. 5: Thêm 2 điện trở phân áp.
Cuối cùng là tụ C1 có chức năng giảm nhiễu ngõ ra tín hiệu khi tiến hành đo và
cũng có tác dụng bypass, có nghĩa là cung cấp một hướng khác cho dòng điện bỏ qua
điện trở R2. Nhà sản xuất cũng đưa ra một số báo cáo về việc sử dụng hoặc không sử
dụng tụ C1. Và nó có giá trị lựa chọn là 10µF.
Hình 3. 6: Biểu đồ ngõ ra khi chưa được gắn tụ C1.
Tụ c1 có tác dụng làm giảm nhiễu cũng như làm giảm sử khác biệt giữa các nguồn
cung cấp.
64. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
50
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 3. 7: Ngõ ra sau khi gắn tụ C1.
Tính sai số phép đo của thiết bị cảnh báo:
Dựa trên sai số giữa phép đo bằng đồng hồ đo và các thiết bị cảnh báo ta có thể
tìm ra các nguyên nhân.
Sai số của cảm biến biến dòng Hall 100A YHDC (SCT-013).
Sai số của mạch đo, mạch chuển đổi từ dòng xoay chiều sang áp để đưa vào vi điều
khiển arduino.
Sai số bởi một số nguyên nhân khác
Tiến hành tính toán sai số:
Sai số của cảm biến biến dòng là: ±3%.
Tính toán sai số mạch đo:
Điện trở sử dụng là 33Ω±10% nhưng theo phép tính toán là phải sử dụng điện trở
có giá trị là 35,4 Ω theo công thức số 3.3 trang 48.
Suy ra điện áp tính toán: 𝑈𝑡í𝑛ℎ 𝑡𝑜á𝑛 = 35,4 ∗ 𝐼đ𝑜
Điện áp đo:𝑈đ𝑜 = 33 ∗ 𝐼đ𝑜
Mà 𝐼𝑡ℎự𝑐 𝑡ế = 𝐼đ𝑜 ± 3%
Tính toán điện trở phân áp thực tế khi sử dụng nguồn 5V của Arduino bị sai số do
trở 10kΩ sử dụng tương tự như trên gây ảnh hưởng đến phép đo theo công thức (3.3).
65. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
51
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Một số chú ý khi sử dụng Hall 100A yhdc:
Luôn luôn kết nối cảm biến trước khi kẹp nó với dây dẫn cần đo, và luôn tháo cảm
biến trước khi ngắt kết nối.
Không bao giờ được làm hở mạch cảm biến khi nó đang kẹp trên một dây dẫn
hiện hành. Nó sẽ rất dễ dàng làm ngắn mạch cảm biến.
Không bao giờ cố gắng kẹp nó với dây dẫn trần, vì như vậy sẽ khiến cho cảm biến
bị sốc điện. Không chỉ thể còn 2 yếu tố bị ảnh hưởng đó là độ bên của cảm biến và độ
an toàn lớp cách điện của cảm biến.
Hướng dẫn cách sử dụng Hall 100A yhdc:
Hình 3. 8: Cách kết nối đúng của Hall 100A YHDC với đường dây.
Để đo được giá trị dòng điện từ cảm biến dòng Hall kẹp, phải kẹp cảm biến vào 1
dây đơn (như hình bên trái). Nếu đặt như hình bên phải thì dòng đo được sẽ bằng không
do được tính bằng tổng dòng của 2 hướng đối nghịch.
Tính trở hạn dòng cho led đơn với điện áp ngõ ra của Arduino Nano là 5V:
Led đơn hoạt động ở mức dòng điện từ 10 – 20mA, điện áp từ 1.8 – 3V.
Chọn điện áp hoạt động cho led là 3V và dòng là 10mA thì:
Giá trị điện trở hạn dòng được tính như sau:
Rℎ𝑑 =
𝑉𝑜𝑢𝑡− Uled
Iled
=
5− 3
10x10−3
= 320(Ω) (3.4)
Sơ đồ nguyên lý khối đo dòng điện:
66. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
52
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 3. 9: Sơ đồ nguyên lý khối đo dòng điện.
Thiết kế đo áp
Thiết bị đo được sử dụng là module cảm biến điện áp ZMPT101B.
Từ điện áp đo được qua mạch điện chuyển đổi ta thu được giá trị thực của điện áp
trên đường dây.
Sơ đồ khối nguyên lý:
Khối xử lý dữ liệu từ cảm biến
(đọc và truyền dữ liệu).
Cảm biến điện áp
ZMPT101B
Hình 3. 10: Sơ đồ khối của khối đo điện áp.
Module cảm biến điện áp ZMPT101B là một cảm biến điện áp được làm từ
biến thế điện áp ZMPT101B. Module có độ chính xác cao, tính nhất quán tốt cho đo
điện áp, công suất. Module rất đơn giản để sử dụng và đi kèm với một chiết áp để điều
chỉnh đầu ra ADC.
67. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
53
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hình 3. 11: Module cảm biến điện áp.
Mạch cảm biến điện áp được hiển thị trong hình (4.3) được thiết kế để đo điện áp
AC tối đa nhỏ hơn 250 VAC dựa trên các thành phần trong hình (4.2). Mạch này sử
dụng bộ suy hao vi sai sau 230 VACrms với dung sai nhỏ hơn 5 VACpp. Các dạng sóng
đầu ra (5 VAC) của mạch là đi trên điện áp DC như một offset (khoảng 2,5 V) và biên
độ có thể được điều chỉnh bởi chiết áp nhưng không lớn hơn 5 V. Đầu ra của mạch được
kết nối trực tiếp với chân ADC của bộ vi điều khiển Arduino.
Hình 3. 12: Mạch cảm biến điện áp - băng thông (~ 50 Hz).
Thiết kế mạch cảm biến điện áp trong hình 4.3 dựa trên ba giai đoạn:
Bộ biến dòng ZMPT101B với tải trở kháng thấp (R2). Các ZMPT101B là một biến
áp dòng kích thước nhỏ với sự tính nhất quán và cách ly tốt cho các phép đo điện áp.
Các đặc tính đầu ra được thể hiện trong hình (4.4). Hai đường cong hiển thị trong hình
(4.4) phụ thuộc vào điện trở đầu vào của ZMPT101B, Hình (4.4a) cho thấy mối quan hệ
giữa dòng đầu vào RMS và điện áp đầu ra RMS và Hình (4.4b) cho thấy mối quan hệ
giữa dòng đầu vào RMS và lỗi góc pha của tín hiệu đầu ra (điện trở đầu vào R1 được
kết nối theo chuỗi với biến áp).
68. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
54
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
a. Điện áp đầu ra.
b. Góc pha.
Hình 3. 13: Đặc tính đầu ra của ZMPT101B.
Sơ đồ nguyên lý đo điện áp:
Hình 3. 14: Sơ đồ nguyên lý khối đo điện áp.
69. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
55
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
b. Thiết kế bộ xử lý trung tâm
Với vai trò liên kết với nhiều module ngoại vi và phải có khả năng xử lý đủ nhanh
để thực hiện luân phiên các tác vụ trong thời gian ngắn. Từ nhiệm vụ thu thập các dữ
liệu từ các khối đo gửi lên cho đến lưu dữ liệu và giao tiếp với Internet để mang dữ liệu
gửi lên mạng Internet.
Do vậy nhóm đã quyết định sử dụng Module NodeMCU ESP8266.
Sơ đồ khối của bộ xử lý trung tâm:
KHỐI ĐO
KHỐI HIỂN THỊ
KHỐI LƯU TRỮ
WEB SERVER
KHỐI XỬ LÝ
TRUNG TÂM
KHỐI ĐẶT TRƯỚC
Hình 3. 15: Sơ đồ khối của khối xử lý trung tâm.
Chức năng: Bộ xử lý trung tâm có nhiệm vụ nhận dữ liệu từ khối đo cảm biến
sau đó đưa ra hiển thị trên LCD đồng thời gửi dữ liệu lên web server thông qua wifi
esp8266. Khi mất wifi thì dữ liệu nhận từ khối đo sẽ được lưu vào khối lữu trữ đến khi
có wifi trở lại.
Khối hiển thị là LCD 20x4.
Khối lưu trữ là EEprom 24LC512.
Khối đặt trước là nút nhấn.
Để thực hiện việc giao tiếp giữa các khối với nhau thì cần có khối xử lý trung tâm
đồng thời khối xử lý trung tâm còn đảm nhiệm cả gửi dữ liệu lên Internet. Trong hệ
thống này đã chọn NodeMCU 1.0 được phát triển từ ESP8266 12E làm bộ xử lý trung
tâm chủ đạo. Với nhiều ưu điểm: có thể lập trình trực tiếp trên chip ESP8266 12E đảm
bảo tiết kiệm năng lượng và cực kỳ nhỏ gọn, không cần phải sử dụng thêm một bộ vi xử
70. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
56
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
lý nào. Thay vì, vừa sử dụng vi điều khiển vừa phải thêm module thu phát sóng WiFi
thì ở đây chỉ cần dùng NodeMCU đã có thể sử dụng đầy đủ các chức năng.
Đầu tiên là giao tiếp với các khối hiển thị, thời gian thực và EEPROM, đặc điểm
chung của hai khối này là đều giao tiếp theo chuẩn I2C, tất cả các bus SCL và SDA của
các khối đều nối chung với nhau. Nên mỗi khối phải có một địa chỉ riêng biệt không
được trùng nhau để cho bộ xử lý trung tâm có thể nhận diện được đó là khối nào trong
mạch. Nên trong mỗi khỗi đã có kết nối phần cứng để thiết lập địa chỉ khác nhau : khối
hiển thị LCD có địa chỉ I2C là 0x3F là địa chỉ của module chuyển đổi giao tiếp I2C sang
giao tiếp LCD, khối lưu trữ EEPROM có địa chỉ 0x51, khối thời gian thực có địa chỉ là
0x68.
Kế tiếp là khối đo được liên kết với nhau thông qua kiểu truyền UART. Dưới sự
truyền nhận giữa arduino và ESP8266.
c. Tính toán khối đồng hồ thời gian thực DS1307
Dưới đây là phần tính toán mạch đồng hồ thời gian thực DS1307:
Dựa theo các công thức tính toán giá trị điện trở kéo lên cho 2 chân SCL và SDA
như trên phần tính toán mạch lưu trữ dữ liệu dùng EEPROM bên dưới, suy ra:
Rp(max) =
tr
(0.8473xCb)
(3.5)
=
1000∗10−9
0.8473∗400∗10−12
= 2.95(KΩ)
tr: Rise time của tín hiệu cả trên SDA và SCL (ns).
Cb: dung kháng trên mỗi BUS (Pf).
Rp(max): điện trở lớn nhất dùng để kéo 2 chân SDA và SCL lên mức High.
Trên thực tế giá trị điện trở thực sẽ nhỏ hơn giá trị lý thuyết của nó. Vì vậy giá trị
điện trở kéo lên cho 2 chân SCL và SDA được chọn là 3.3 kohm.
Tính toán cho nguồn pin nuôi đồng hồ: Theo datasheet của nhà sản xuất, ngõ vào
VBAT của DS1307 phải đảm bảo từ 2.0 V đến 3.5 V, vì vậy sử việc sử dụng pin 3.3V
trong module là thích hợp.
71. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
57
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Hai chân SCL và SDA cùng kết nối với SCL và SDA của khối xử lý trung tâm
(NodeMCU).
Lưu ý: Trong giao tiếp I2C nhiều thiết bị thì 2 chân SCL và SDA của tất cả các
thiết bị giao tiếp I2C trên cùng một bus đều nối chung với nhau nên chỉ cần một điện trở
kéo lên cho một dây SCL chung và SDA chung. Vì thế, trong module thời gian thực
DS1307 đã có 2 điện trở kéo lên rồi nên các module hay thiết bị khác trên bus này không
cần điện trở kéo lên nữa.
d. Thiết kế khối hiển thị
Với chức năng là hiển thị các thông tin cần thiết của hệ thống với người dùng,
nhằm cung cấp các thông tin trực quan và dễ dàng quan sát cần phải có màn hình giao
tiếp.
Vậy nên, nhóm đã lựa chọn LCD 20x4 để hiển thị các thông tin như các giá trị của
dòng điện, điện áp, công suất và điện năng tiêu thụ của hộ gia đình.
Để giao tiếp LCD 20x4 với vi điều khiển trung tâm, nhằm tiết kiệm các cổng vào
ra cho vi điều khiển bởi cần vi điều khiển trung tâm thực hiện nhiều chức năng nên phải
sử dụng thêm module chuyển giao tiếp trực tiếp sử dụng 6 chân sang giao tiếp I2C chỉ
sử dụng 2 chân là module giao tiếp I2C PCF8574.
Sơ đồ nguyên lý kết nối:
Hình 3. 16: Sơ đồ nguyên lý khối hiển thị.
72. CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
58
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Trong đề tài có sử dụng nhiều module sử dụng chung dây Bus-I2C vậy nên cần
định địa chỉ cho từng module.
Các chân A2, A1, A0 để định địa chỉ cho IC khối hiển thị là 0x37.
Đồng thời do mạch có sử dụng điện trở kéo lên cho 2 dây SDA, SCL dùng chung
cho các module. Vậy nên khi có xung từ SCL, và nhận đúng địa chỉ thì sẽ tiến hành điều
khiển thanh ghi dịch để chọn ngõ ra từ P0- P7 và đồng thời thực hiện các lệnh ghi dữ
liệu từ ngõ vào.
e. Thiết kế khối lưu trữ dữ liệu khi mất kết nối với Internet
Để tránh trường hợp không bị mất những dữ liệu quan trọng (như lúc xảy ra sự cố
quá dòng hay sụt áp trên đường dây) khi bộ xử lý trung tâm bị mất kết nối với Internet
thì bộ xử lý trung tâm phải có khả năng lưu trữ lại các dữ liệu quan trọng trong quá trình
hoạt động và đảm bảo dữ liệu lưu trữ lại được gửi lên Internet ngay khi có kết nối lại.
Vì vậy, trong bộ xử lý trung tâm được thiết kế thêm mạch lưu trữ dữ liệu sử dụng IC
chính là EEPROM. Mạch được thiết kế như sau:
Nếu hệ thống bị mất kết nối với Internet trong thời gian dài đòi hỏi dung lượng bộ
nhớ của Eeprom phải đủ lớn để đáp ứng. Khoảng thời gian giữa 2 lần lưu trữ dữ liệu
liên tiếp vào Eeprom nếu mất kết nối Internet trên 30s, mỗi lần lưu 12 byte dữ liệu, và
thời gian tối đa yêu cầu sửa chữa hệ thống là không quá 8 giờ. Vì vậy, số lần lưu dữ liệu
liên tục trong 8 giờ:
8∗ 3600
30
= 960 𝑙ầ𝑛. Mỗi lần lưu 12 byte nên:
Dung lượng bộ nhớ tối thiểu là: 960*12 = 11512 bytes = 11,25 Kbytes.
Vì vậy, trong mạch sử dụng IC 24LC512 có dung lượng bộ nhớ là 64KB giao tiếp
với ESP8266-12E NodeMCU thông qua chuẩn giao tiếp I2C với địa chỉ được cài đặt
phần cứng là 0x51 (A1, A2 nối GND, A0 nối VCC).