1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ

107 19 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết Kế Công Tơ Đo Lường Công Suất Tiêu Thụ
Tác giả Trần Xuân Hảo, Trần Đức Cường, Nguyễn Văn Tình, Nguyễn Công Tuấn, Đỗ Hải Long
Người hướng dẫn ThS. Nguyễn Thanh Tùng
Trường học Trường Đại Học Công Nghệ Thông Tin Và Truyền Thông
Chuyên ngành Máy Tính Nhúng Và Ứng Dụng
Thể loại báo cáo tiểu luận
Năm xuất bản 2021
Thành phố Thái Nguyên
Định dạng
Số trang 107
Dung lượng 3,65 MB

Cấu trúc

  • CHƯƠNG 1. TỔNG QUAN ĐỀ TÀI (9)
    • 1.1 Đặt vấn đề (9)
    • 1.2 Tầm quan trọng của quản lí và giám sát năng lượng (10)
    • 1.3 Giới thiệu một số hệ thống giám sát, quản lí năng lượng từ xa trong thực tế (11)
      • 1.3.1 Hệ thống giám sát và quản lý năng lượng từ xa qua sóng vô tuyến RF (11)
      • 1.3.2 Hệ thống giám sát và quản lý năng lượng từ xa qua bộ truyền tải tín hiệu thông (13)
    • 1.4 Mục tiêu, nhiệm vụ (16)
      • 1.4.1 Mục Tiêu (16)
      • 1.4.2 Nhiệm vụ (16)
    • 1.4 Giới hạn (16)
    • 1.5 Bố cục báo cáo (18)
  • CHƯƠNG 2. CƠ SỞ LÝ THUYẾT (20)
    • 2.1 Công nghệ IOT (20)
      • 2.3.1 Giao thức kết nối (20)
      • 2.3.2 Giao thức truyền tải dữ liệu (21)
      • 2.3.3 Firebase (25)
    • 2.2 Các chuẩn truyền dữ liệu (29)
      • 2.2.1 Giao tiếp I2C (29)
      • 2.2.2 Giao tiếp UART (38)
    • 2.3 Giới thiệu phân cứng (40)
      • 2.3.1 Module NodeMCU ESP8266 wifi v1.0 (40)
      • 2.3.2 Module PZEM004T (48)
      • 2.3.3 Màn hình LCD 20x4 (54)
      • 2.3.4 Module chuyển đổi giao tiếp I2C (0)
    • 2.4 Giới thiệu phần mềm (61)
      • 2.4.1 Phần mềm lập trình Arduino IDE (61)
      • 2.4.2 Phần mềm lập trình Android Studio (66)
      • 2.4.3 Phần mềm giám sát điện năng trên app Blynk (70)
  • CHƯƠNG 3. PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG (74)
    • 3.1 Giới thiệu (74)
    • 3.2 Thiết kế hệ thống (74)
      • 3.2.1 Thiết kế sơ đồ khối hệ thống (74)
      • 3.2.2 Sơ đồ kết nối toàn mạch (0)
      • 3.2.3 Nguyên lý hoạt động (84)
      • 3.2.4 Lưu đồ giải thuật (84)
    • 3.3 Thi công hệ thống (86)
      • 3.3.1 Mô hình thiết bi (86)
      • 3.3.2 Danh sách các linh kiện (88)
      • 3.3.3 Lắp ráp và kiểm tra (0)
    • 3.4 Lập trình phần cứng và phần mềm (0)
      • 3.4.1 Chương trình hê thống phần cứng Arduino IDE (0)
      • 3.4.2 Chương trình app Android Studio (96)
      • 3.4.3 Tạo giao diện để xem các thông số điện năng trên app Blynk (0)
    • 3.5 Kết quả, nhận xét (102)

Nội dung

CƠ SỞ LÝ THUYẾT

Công nghệ IOT

Mạng lưới vạn vật kết nối Internet (IoT) là nền tảng công nghệ mới, cho phép mỗi đồ vật và con người có định danh riêng, truyền tải và trao đổi thông tin qua một mạng duy nhất mà không cần tương tác trực tiếp IoT phát triển từ sự hội tụ của công nghệ không dây, vi cơ điện tử và Internet, tạo thành một tập hợp các thiết bị kết nối với nhau và với thế giới bên ngoài Kết nối này có thể qua Wi-Fi, mạng viễn thông băng rộng, Bluetooth, ZigBee và hồng ngoại, bao gồm điện thoại thông minh, máy pha cà phê, máy giặt và nhiều thiết bị khác Dự báo của Cisco cho thấy đến năm 2020 sẽ có khoảng 50 tỷ đồ vật kết nối vào Internet, và con số này có thể tăng cao hơn nữa IoT sẽ tạo ra một mạng lưới khổng lồ kết nối mọi thứ, bao gồm cả con người, với khả năng theo dõi sự di chuyển của từng đối tượng trong môi trường đô thị, nơi một người có thể bị bao bọc bởi từ 1.000 đến 5.000 đối tượng có khả năng theo dõi.

Việc lựa chọn chuẩn giao thức kết nối hợp lý rất quan trọng, vì nó phụ thuộc vào ứng dụng cụ thể và các yếu tố như phạm vi giao tiếp, khối lượng dữ liệu truyền, yêu cầu bảo mật và năng lượng cho hệ thống pin Những yếu tố này sẽ quyết định việc chọn lựa một hoặc nhiều phương thức truyền thông phù hợp.

Sau đây là một số giao thức IoT cho các kỹ sư phát triển tìm hiểu và lựa chọn.

Wifi là giao thức chính được ứng dụng trong nội dung đề tài này.

Wifi, viết tắt từ Wireless Fidelity hay mạng 802.11, là hệ thống mạng không dây sử dụng sóng vô tuyến để truyền tải dữ liệu Công nghệ này tương tự như các thiết bị như điện thoại di động và truyền hình, cho phép người dùng kết nối internet một cách tiện lợi và linh hoạt.

Kết nối Wifi là lựa chọn phổ biến của nhiều kỹ sư nhờ vào tính tiện lợi và chi phí hợp lý của hệ thống Wifi và mạng LAN, đặc biệt trong các mô hình kết nối trong phạm vi địa lý hạn chế.

Sóng vô tuyến dùng cho WiFi tương tự như sóng vô tuyến cho điện thoại di động và các thiết bị khác, cho phép truyền và nhận tín hiệu bằng cách chuyển đổi mã nhị phân 1 và 0 Tuy nhiên, sóng WiFi khác biệt ở chỗ chúng hoạt động ở tần số 2.4 GHz hoặc 5 GHz, cao hơn so với tần số của điện thoại di động và truyền hình Tần số cao hơn này giúp tín hiệu WiFi mang theo nhiều dữ liệu hơn.

 Dãy tần số hoạt động: 2.4GHz and 5GHz bands.

 Tốc độxử lý tối đa: 600 Mbps.

In addition to Wi-Fi, various protocols such as Bluetooth, Zigbee, NFC, Sigfox, Neul, Thread, 6LoWPAN, Z-Wave, and Cellular are utilized in specific applications of the Internet of Things (IoT).

2.3.2 Giao thức truyền tải dữ liệu

Có 5 giao thức truyền tải dữ liệu phổ biến có thể được sử dụng trong các mô hình là : MQTT, CoAP, AMQP và DDS.

MQTT là một giao thức mã nguồn mở kết nối máy với máy, cho phép truyền tin nhắn giữa nhiều Client (Publisher và Subscriber) thông qua một Broker trung gian Giao thức này được thiết kế đơn giản, nhẹ và dễ triển khai, phù hợp cho các thiết bị đo lường và giám sát nhỏ Kiến trúc MQTT dựa vào Broker và sử dụng kết nối TCP dài hạn từ các Client đến Broker Trong hệ thống MQTT, nhiều node trạm (client) kết nối tới một MQTT server (broker) và mỗi client có thể đăng ký vào một số kênh (topic) như "/client1/channel1".

"/client1/channel2" Quá trình đăng ký này gọi là "subscribe" Mỗi client sẽ nhận

15 được dữ liệu khi bất kỳ trạm nào khác gửi dữ liệu và kênh đã đăng ký Khi một client gửi dữ liệu tới kênh đó, gọi là "publish".

Hình 2.1 Giao thức truyền của MQTT

MQTT là giao thức nhẹ và nhanh, tiêu tốn ít băng thông khi kết nối với server và duy trì trạng thái kết nối liên tục Ưu điểm của nó là tiết kiệm dữ liệu và thời gian hơn so với giao thức HTTP, phù hợp cho truyền thông hai chiều qua các mạng có độ trễ cao và độ tin cậy thấp Giao thức này cũng tương thích với các thiết bị tiêu thụ điện năng thấp.

Vì vậy MQTT phù hợp để chọn làm giao thức truyền thông chính trong đề tài

"Giám sát điên năng tiêu thụ qua mạng không dây ".

CoAP (Constrained Application Protocol) là giao thức truyền tải tài liệu theo mô hình client/server tương tự như HTTP, nhưng được tối ưu hóa cho các thiết bị hạn chế Giao thức này hỗ trợ việc chuyển đổi trạng thái thông tin giữa client và server thông qua cơ chế one-to-one, giúp cải thiện hiệu suất và tiết kiệm tài nguyên cho các thiết bị IoT.

CoAP (Constrained Application Protocol) sử dụng giao thức UDP (User Datagram Protocol) và không hỗ trợ TCP Nó cho phép sử dụng địa chỉ broadcast và multicast, và truyền thông qua các datagram phi kết nối, phù hợp cho các giao thức truyền thông dựa trên gói.

UDP dễ dàng triển khai trên vi điều khiển hơn TCP, nhưng thiếu các công cụ bảo mật như SSL/TLS Để khắc phục, có thể sử dụng Datagram Transport Layer Security (DTLS) làm giải pháp thay thế.

Hình 2.2 Mô hình sử dụng giao thức CoAP và HTTP AMQP (Advanced Message Queue Protocol)

AMQP (Advanced Message Queue Protocol) là một giao thức trung gian cho các gói tin trên lớp ứng dụng, nhằm thay thế các hệ thống truyền tin độc quyền và không tương thích AMQP cung cấp các tính năng chính như định hướng message, hàng đợi, và định tuyến với độ tin cậy và bảo mật cao, bao gồm cả phương thức point-to-point và publish-subscribe Tất cả các hoạt động được thực hiện thông qua broker, cho phép điều khiển luồng hiệu quả.

RabbitMQ, một trong những Message Broker phổ biến, được phát triển bằng ngôn ngữ Erlang Nó cung cấp cho lập trình viên một giải pháp trung gian hiệu quả để giao tiếp giữa các thành phần trong hệ thống lớn.

AMQP là một giao thức có dây (wire-protocol) độc đáo, cho phép mô tả các thông điệp theo định dạng dữ liệu cụ thể Giao thức này có khả năng triển khai linh hoạt với nhiều loại ngôn ngữ lập trình khác nhau.

DDS là một ngôn ngữ trung gian dựa trên dữ liệu tập trung, cho phép khả năng mở rộng, thời gian thực, độ tin cậy cao và trao đổi dữ liệu tương tác Giao thức này hoạt động theo mô hình phi tập trung, không cần broker, với truyền thông ngang hàng trực tiếp giữa các publishers và subscribers DDS được thiết kế để trở thành ngôn ngữ và hệ điều hành độc lập, có khả năng gửi và nhận dữ liệu, sự kiện, cũng như thông tin lệnh qua UDP, đồng thời có thể hoạt động trên các giao thức truyền khác.

Các chuẩn truyền dữ liệu

2.2.1.1 Giới thiệu Đầu năm 1980 Phillips đã phát triển một chuẩn giao tiếp nối tiếp 2 dây được gọi là I2C Đây là đường Bus giao tiếp giữa các IC với nhau I2C mặc dù được phát triển bởi Philips, nhưng nó đã được rất nhiều nhà sản xuất IC trên thế giới sử dụng. I2C trở thành một chuẩn công nghiệp cho các giao tiếp điều khiển Bus I2C được sử dụng làm bus giao tiếp ngoại vi cho rất nhiều loại IC khác nhau như các loại Vi điều khiển 8051, PIC, AVR, ARM chip nhớ như: RAM tĩnh (Static Ram), EEPROM, bộ chuyển đổi tương tự số (ADC), số tương tự(DAC), IC điểu khiển LCD, LED

Hình 2.4 Bus I2C và các thiết bị ngoại vi.

Giao tiếp I2C bao gồm hai dây chính: Serial Data (SDA) và Serial Clock (SCL) Trong đó, SDA cho phép truyền dữ liệu hai hướng, trong khi SCL chỉ truyền xung đồng hồ theo một hướng để đồng bộ hóa Khi một thiết bị ngoại vi kết nối vào bus I2C, chân SDA của thiết bị sẽ được kết nối với dây SDA của bus, và chân SCL sẽ nối với dây SCL.

Hình 2.5 Kết nối thiết bị vào bus I2C ở chế độ chuẩn (Standard mode) và chế độ nhanh (Fast mode)

Mỗi dây SDA và SCL trong giao tiếp I2C được kết nối với nguồn điện dương thông qua điện trở kéo lên (pullup resistor), do chân giao tiếp của các thiết bị ngoại vi thường có cấu trúc cực máng hở (opendrain hay opencollector) Giá trị của các điện trở này thay đổi tùy thuộc vào từng thiết bị và chuẩn giao tiếp, thường nằm trong khoảng từ 1K đến 4.7K.

Trong hình 2.5, có nhiều thiết bị (ICs) được kết nối qua bus I2C, mỗi thiết bị được xác định bằng một địa chỉ duy nhất trong mối quan hệ chủ/tớ Mỗi thiết bị có khả năng hoạt động như thiết bị nhận hoặc truyền dữ liệu, hoặc có thể thực hiện cả hai chức năng Chức năng truyền hay nhận của thiết bị phụ thuộc vào vai trò của nó, là chủ (master) hay tớ (slave).

Khi một thiết bị hoặc IC kết nối với bus I2C, nó cần có một địa chỉ duy nhất để phân biệt và được cấu hình là thiết bị chủ hoặc thiết bị tớ Trong quá trình giao tiếp giữa thiết bị chủ và thiết bị tớ, thiết bị chủ sẽ tạo xung đồng hồ cho toàn bộ hệ thống và thực hiện việc quản lý.

Trong suốt quá trình giao tiếp, thiết bị chủ đóng vai trò chủ động, trong khi thiết bị tớ giữ vai trò bị động Dưới đây là 22 địa chỉ của thiết bị tớ, minh chứng cho sự tương tác và vai trò của từng thiết bị trong quá trình giao tiếp.

Hình 2.6 Quá trình truyền nhận giữa thiết bi ̣chủ (master) và tớ (slave)

Theo hình 2.6, xung đồng hồ chỉ di chuyển theo một chiều từ chủ đến tớ, trong khi luồng dữ liệu có thể diễn ra theo hai chiều: từ chủ đến tớ hoặc ngược lại từ tớ đến chủ.

2.2.1.3 Chế độ hoạt động (tốc độ truyền):

Các bus I2C có thể hoạt động ở ba chế độ khác nhau:

 Chế độ tiêu chuẩn (Standard mode).

 Chế độ nhanh (Fast mode).

 Chế độ cao tốc High-Speed (Hs) mode.

- Đây là chế độ tiêu chuẩn ban đầu được phát hành vào đầu những năm 80.

- Nó có tốc độ dữ liệu tối đa 100kbps.

- Nó sử dụng 7-bit địa chỉ, 112 địa chỉ tớ.

 Tăng cường hoặc chế độ nhanh:

- Tốc độ dữ liệu tối đa được tăng lên đến 400 kbps.

- Để ngăn chặn gai tiếng ồn Ngõ vào của thiết bị Fast-mode là Schmitt-triggered.

- Chân SCL và SDA của một thiết bị tớ I2C ở trạng thái trở kháng cao khi không cấp nguồn.

 Chế độ cao tốc (High-Speed):

Chế độ này được thiết kế để tăng tốc độ dữ liệu lên tới 36 lần so với chế độ tiêu chuẩn, cung cấp tốc độ 1,7 Mbps với Cb = 400 pF và 3,4 Mbps với Cb = 100 pF.

Một bus I2C có thể hoạt động ở nhiều chế độ khác nhau:

 Một chủ một tớ (one master - one slave) 23

 Một chủ nhiều tớ (one master - multi slave)

 Nhiều chủ nhiều tớ (Multi master - Multi slave)

Giao tiếp I2C hoạt động dựa trên mối quan hệ chủ/tớ, trong đó thiết bị A đóng vai trò là chủ và thiết bị B là tớ Khi thiết bị A muốn gửi dữ liệu đến thiết bị B, quá trình truyền tải dữ liệu được thực hiện theo một quy trình cụ thể.

Thiết bị A (Chủ) xác định chính xác địa chỉ của thiết bị B (tớ) và từ đó quyết định thực hiện thao tác đọc hoặc ghi dữ liệu vào thiết bị tớ.

 Thiết bị A gửi dữ liệu tới thiết bị B.

 Thiết bị A kết thúc quá trình truyền dữ liệu.

Khi A cần nhận dữ liệu từ B, quá trình giao tiếp sẽ diễn ra tương tự, chỉ khác là A sẽ là bên nhận dữ liệu Trong mối quan hệ này, A giữ vai trò chủ động, trong khi B vẫn là bên phụ thuộc Chi tiết về cách thiết lập giao tiếp giữa hai thiết bị sẽ được trình bày cụ thể trong phần dưới đây.

 Trình tự truyền bit trên đường truyền:

Hình 2.7 Trình tự truyền bit trên đường truyền

- Bước 1: Thiết bị chủ tạo một điều kiện start Điều kiện này thông báo cho tất cả các thiết bị tớ chuẩn bi nhậṇ dữ liệu trên đường truyền.

Trong bước 2, thiết bị chủ gửi địa chỉ của thiết bị tớ mà nó muốn giao tiếp cùng với cờ đọc/ghi dữ liệu Nếu cờ được thiết lập lên 1, byte tiếp theo sẽ được truyền từ thiết bị tớ đến thiết bị chủ Ngược lại, nếu cờ thiết lập xuống 0, byte tiếp theo sẽ được truyền từ thiết bị chủ đến thiết bị tớ.

- Bước 3: Khi thiết bị tớ trên bus I2C có địa chỉ đúng với địa chỉ mà thiết bị chủ gửi sẻ phản hồi lại bằng một xung ACK.

Bước 4 trong quá trình giao tiếp giữa thiết bị chủ và thiết bị tớ trên bus dữ liệu diễn ra khi cả hai bên có thể nhận hoặc truyền dữ liệu, tùy thuộc vào loại truyền thông là đọc hay ghi Bộ truyền sẽ gửi 8 bit dữ liệu tới bộ nhận, sau đó bộ nhận sẽ phản hồi bằng một bit ACK để xác nhận việc nhận dữ liệu.

- Bước 5: Để kết thúc quá trình giao tiếp, thiết bị chủ tạo ra một điều kiện stop.

 Điều kiện START và STOP (START and STOP conditions)

Trong giao tiếp trên bus I2C, hai điều kiện thiết yếu là START và STOP START đánh dấu sự khởi đầu của quá trình giao tiếp, trong khi STOP chỉ ra sự kết thúc Những điều kiện này là bắt buộc để thiết bị chủ có thể thiết lập kết nối với thiết bị khác.

Hình 2.8 Điểu kiện để giao tiếp I2C

Trước khi bắt đầu giao tiếp, cả hai đường SDA và SCL đều ở mức cao, cho thấy bus I2C đang ở trạng thái rỗi và sẵn sàng cho giao tiếp Trong quá trình giao tiếp giữa các thiết bị I2C, điều kiện START và STOP là rất quan trọng Điều kiện START được xác định bởi sự chuyển đổi trạng thái từ cao xuống thấp trên đường SDA.

Giới thiệu phân cứng

Phần cứng gồm có những thiết bị sau:

 Thiết bị đầu vào: nút nhấn, ổ cắm thiết bi

 Thiết bị đầu ra: LCD.

 Thiết bi đo điện năng: PZEM004T.

 Thiết bị điều khiển trung tâm: NodeMCU ESP8266 WiFi V1.0

 Các chuẩn truyền dữ liệu: UART, I2C, Wifi, 3G.

 Thiết bị giao diện điều khiển: điện thoại, máy tính, Ipad.

2.3.1.1 Giới thiệu một số loại ESP 8266

ESP8266 là một Vi điều khiển tích hợp Wifi (Wifi SoC) do Espressif Systems, một công ty Trung Quốc có trụ sở tại Thượng Hải, phát triển Nhờ vào việc kết hợp giữa vi điều khiển và Wifi, ESP8266 cho phép lập trình viên thực hiện nhiều tác vụ TCP/IP đơn giản, phục vụ cho nhiều ứng dụng khác nhau, đặc biệt là trong lĩnh vực IoT Với mức giá phải chăng, ESP8266 được xem là module Wifi SoC rẻ nhất hiện nay.

Chip ESP8266, do Espressif phát triển, cung cấp giải pháp giao tiếp Wifi cho các thiết bị IoT Điểm nổi bật của ESP8266 là việc tích hợp các mạch RF như balun, antenna switches, TX power amplifier và RX filter ngay trong chip với kích thước chỉ 5x5mm, giúp giảm thiểu kích thước board và số lượng linh kiện cần thiết.

Sau nhiều năm phát triển, AI-Thinker đã sản xuất 14 loại module ESP, từ ESP-01 đến ESP-14 Tại thị trường Việt Nam, ba module phổ biến nhất là ESP-01, ESP-07 và đặc biệt là ESP-12F, với ESP-12 được ưa chuộng hơn cả.

Hình 2.12 Ảnh ESP8266-12 thực tế và sơ đồ chân

NodeMCU được tạo ra từ sự kết hợp giữa ESP-12 và firmware ESP8266 trên Arduino, mang lại khả năng kết nối dễ dàng và lập trình trực tiếp trên phần mềm Arduino Với thiết kế phần cứng giao tiếp tiêu chuẩn và tương thích với các thư viện Arduino có sẵn, NodeMCU ESP8266 đã trở thành bộ Kit phát triển phổ biến nhất hiện nay.

Hình 2.13 Module Node MCU ESP8266 và sơ đồ chân a Thông số cấu hình của NodeMCU ESP8266

Bảng 2.1 Thông số cấu hình của NodeMCU ESP8266

THÔNG SÔ GIÁ TRI – CẤU HÌNH

Giao thức tích hợp TCP / IP

Tần số hoạt động 2.4 -2.5 GHz Điện áp cung cấp 3.0 – 3.6 V

Tốc độ xử lý 80 ~ 160MHz

Dòng điên hoạt động 80mA

Công suất đầu ra +20 dBm ở chế độ 802.11b

Giao tiếp ngoại vi UART/SDIO/SPI/I2C/I2S/IR

ADC Môt đầu vào với độ phân giải 1024 bước.

Phạm vi nhiệt độ hoạt động -40C ~ 125°C b Sơ đồ mạch nguyên lý của NodeMCU ESP8266 30

Hình 2.14 Mạch nguyên lý của NodeMCU ESP8266

Hình 2.15 Hình ảnh thực tế module PZEM004T 2.3.2.1 Chức năng

 Chức năng đo các thông số điên (điện áp, dòng điện, công suất hoạt động, năng lượng).

 Chức năng báo động quá tải (trên ngưỡng báo động điện, đèn flash nguồn và còi kêu bíp báo động).

 Chức năng cài đặt ngưỡng báo động nguồn (có thể đặt ngưỡng cảnh báo).

 Chức năng cài đặt lại của phím năng lượng.

 Lưu trữ dữ liệu khi tắt nguồn (lưu trữ năng lượng tích lũy khi tắt nguồn).

 Chức năng hiển thị số màu đỏ (hiển thị điện áp, dòng điện, công suất hoạt động, năng lượng).

Chức năng giao tiếp nối tiếp cho phép giao tiếp với nhiều thiết bị đầu cuối thông qua các chân kết nối, giúp đọc và thiết lập các thông số một cách hiệu quả.

2.3.2.2 Màn hình và phím bấm

Giao diện hiển thị được chia thành bốn phần bởi số màu đỏ, được sử dụng để hiển thị thông số điện áp, dòng điện, công suất, năng lượng.

 Công suất: Phạm vi kiểm tra: 0 ~ 22kW

Trong khoảng 0 ~ 10kW, định dạng hiển thị là 0,000 ~ 9,999. Trong khoảng 10 ~ 22kW, định dạng hiển thị là 10 ~ 22,00.

 Điện năng : Khoảng đo: 0 ~ 9999kWh

Trong khoảng 0 ~ 10kWh, định dạng hiển thị là 0,000 ~ 9,999

Trong khoảng 10 ~ 100kWh, định dạng hiển thị là 10.00 ~ 99,99

Trong phạm vi 100 ~ 1000kWh, định dạng hiển thị là 100.0 ~ 999.9.

1000 ~ 9999kWh trở lên, định dạng hiển thị là 1000 ~ 9999

 Điện áp: phạm vi kiểm tra: 80 ~ 260VAC Định dạng hiển thị là 110.0 ~ 220.0.

 Dòng điêṇ : Phạm vi kiểm tra: 0 ~ 100A Định dạng hiển thị là 00,00 ~ 99,99.

Có một phím trên bảng điều khiển, nó có thể được sử dụng để thiết lập lại năng lượngbằng cách nhấn giữ nút đó.

Phương pháp thiết lập lại năng lượng rất đơn giản: nhấn và giữ phím trong 5 giây cho đến khi màn hình nhấp nháy, sau đó nhả phím Tiếp theo, nhấn nhanh phím một lần nữa để xóa dữ liệu năng lượng và thoát khỏi trạng thái nhấp nháy, hoàn tất quá trình Reset Nếu bạn tiếp tục nhấn lâu trong 5 giây nữa cho đến khi màn hình không còn nhấp nháy, điều đó có nghĩa là bạn đã thoát khỏi trạng thái đặt lại.

Hình 2.16 Sơ đồ kết nối dây của module PZEM004T

Hệ thống bao gồm hai phần chính: dòng điện và điện áp, cho phép kết nối với thiết bị đầu vào và các dây giao tiếp nối tiếp Thiết kế này được điều chỉnh theo nhu cầu thực tế của khách hàng, với chân TTL khác nhau, nhằm đảm bảo khả năng giao tiếp linh hoạt giữa các thiết bị khác nhau.

2.3.2.4 Giao diện màn hình hiển thị

Màn hình được chia thành bốn vị trí hiển thị chính, bao gồm điện áp, dòng điện, năng lượng và công suất Mỗi thông số này đóng vai trò quan trọng trong việc theo dõi và đánh giá hiệu suất hoạt động của thiết bị.

 Màn hình hiển thị điện áp Đo và hiển thị điện áp lưới điện tần số công nghiệp tại thời điểm hiện tại.

 Màn hình hiển thị dòng điện Đo và hiển thị dòng điện tải, sử dụng cho dòng điện từ 10mA trở lên.

Màn hình hiển thị điện năng cho phép đo và hiển thị mức tiêu thụ điện năng hiện tại với độ phân giải cao, đơn vị đo năng lượng tối thiểu là 0,001 kWh Đặc biệt, trong các thử nghiệm với tải điện năng thấp dưới 100W, người dùng có thể quan sát quá trình tích lũy điện năng trực tiếp.

 Màn hình hiển thị công suất Đo và hiển thị công suất tải hiện tại, dùng cho công suất cao từ 1W trở lên.

Module này được trang bị giao diện truyền dữ liệu nối tiếp TTL, đọc và thiết lập các thông số liên quan thông qua cổng giao tiếp.

Bảng 2.2 Bảng các giao thức giao tiếp của module PZEM004T

NO FUNCTION HEAD DATA 1- DATA 5 SUM

The computer initiates a request to read the voltage value by sending a 1A command, resulting in a response from the meter indicating a voltage of 230.2V Subsequently, the computer sends a 1B request to obtain the current value, and the meter responds with a current measurement of 17.32A.

3a Active B2 C0 A8 01 01 00 (Computer sends a 1C power Req request to read the active power value)

3b Active A2 08 98 00 00 00 (Meter reply the active 42 power Resp power value is 2200w)

4a Read energy Req B3 C0 A8 01 01 00 (Computer sends a 1D request to read the energy value) 4b Read energy A3 01 86 9f 00 00 (Meter reply the energy C9

5a Set the module B4 C0 A8 01 01 00 (Computer sends a 1E address Req request to set the address, the address is 192.168.1.1) 5b Set the module A4 00 00 00 00 00 (Meter reply the A4 address resp address was successfully set)

6a Set the power B5 C0 A8 01 01 14 (computer sends a 33 alarm threshold request to set a power alarm threshold)

6b Set the power A5 00 00 00 00 00 (Meter reply the power A5 alarm threshold alarm threshold was successfully set)

Bảng 2.3 Thông số kỹ thuật của PZEM004T

THÔNG SỐ GIÁ TRỊ Điện áp đo và hoạt động 80 ~ 260VAC / 50 - 60Hz, sai số

0.01 Dòng điện đo và hoạt động 0 ~ 100A, sai số 0.01

Công suất đo và hoạt động 0 ~ 26000W

Năng lượng đo và hoạt động 0~9999kWh

Giao tiếp ngoại vi UART mức logic TTL 5VDC baudrate mặc định 9600, 8, 1

Có nhiều loại hiển thị như LCD, GLCD, LED đơn và LED 7 đoạn, mỗi loại đều có những ưu điểm và nhược điểm riêng.

Trong dự án này, tôi đã quyết định sử dụng màn hình LCD 20x4 để hiển thị giá trị điện năng, công suất, điện áp và dòng điện đo được Lựa chọn này không chỉ phù hợp về mặt kinh tế mà còn dễ dàng trong việc hiển thị thông tin và tiết kiệm thời gian hàn linh kiện Màn hình LCD là giải pháp tối ưu cho yêu cầu và giới hạn của đề tài.

Hình 2.17 Sơ đồ chân LCD 20x4 Bảng 2.4 Chức năng các chân trên LCD 20x4

1 VSS Tương đương với GND - cực âm

2 VDD Nguồn cấp cho LCD hoạt động, tương đương với VCC - cực dương (5V).

3 V0 Điều khiển độ sáng màn hình

4 RS Điều khiển địa chỉ nào sẽ được ghi dữ liệu

5 RW Đọc (read mode) hay ghi (write mode) dữ liệu

6 E Cho phép ghi vào LCD

Chân dữ liệu 7 D0-D7 có khả năng nhận giá trị HIGH hoặc LOW khi ở chế độ đọc, và sẽ nhận giá trị tương tự khi chuyển sang chế độ ghi.

8 A(+) / K(-) Tắt bật đèn màn hình LCD

2.3.4 Module chuyển đổi giao tiếp I2C

Để điều khiển và hiển thị ký tự từ vi điều khiển lên màn hình LCD, thường cần 7-8 dây nối, gây khó khăn trong việc kết nối và lập trình Tuy nhiên, mạch chuyển đổi I2C đã khắc phục vấn đề này bằng cách giảm số lượng dây tín hiệu chỉ còn hai, giúp đơn giản hóa mạch và dễ dàng hơn trong việc viết code.

Việc sử dụng giao tiếp I2C giúp giảm số lượng chân kết nối cần thiết để điều khiển màn hình LCD, chuyển giao trách nhiệm điều khiển sang IC xử lý trên mạch Chỉ cần gửi mã lệnh và nội dung hiển thị, cho phép vi điều khiển tập trung vào các tiến trình phức tạp khác Đối với các loại LCD sử dụng driver HD44780 như LCD 16x2 hay LCD 20x4, cần tối thiểu 6 chân của MCU để kết nối với các chân RS, EN, D7, D6, D5 và D4 Tuy nhiên, với module chuyển giao tiếp LCD sang I2C, chỉ cần 2 chân (SDA và SCL) của MCU kết nối với module là đủ để hiển thị thông tin lên LCD, cùng với khả năng điều chỉnh độ tương phản thông qua biến trở gắn trên module.

Hình 2.18 Hình ảnh thực tế module chuyển đổi I2C 2.3.4.1 Ưu điểm

- Giao tiếp I2C chỉ sử dụng hai dây tín hiệu để giao tiếp là SDA và SCL, giúp tiết kiệm chân trên vi điều khiển.

- Tốc đô truỵền dữ liệu lên đến 400kbps.

- Dữ liệu truyền nhận đảm bảo tính toàn vẹn vì sử dụng cơ chế phản hồi ACK trên mỗi byte dữ liệu

- Có khả năng kết nối nhiều thiết bi với nhau, trên mạch có sẵn các mối hàn A0, A1, A2 để thay đổi địa chỉ của module.

2.3.4.2 Bảng kết nối giữa module giao tiếp I2C với MCU

Bảng 2.5 Kết nối giữa module giao tiếp I2C với MCU

2.3.4.3 Sơ đồ mạch nguyên lý module chuyển đổi giao tiếp I2C

Hình 2.19 Mạch nguyên lý module chuyển đổi giao tiếp I2C

Bảng 2.7 Thông số kỹ thuật của module chuyển đổi giao tiếp I2C

Thông số Điện áp hoạt động Giao tiếp Địa chỉ giao tiếp

Giới thiệu phần mềm

2.4.1 Phần mềm lập trình Arduino IDE

Phần mềm Arduino IDE là công cụ lập trình miễn phí dành cho Arduino, hỗ trợ ba nền tảng phổ biến: Windows, Macintosh OSX và Linux Với tính chất mã nguồn mở, người dùng có thể dễ dàng mở rộng và phát triển phần mềm này theo nhu cầu của mình.

Ngôn ngữ lập trình C++ có khả năng mở rộng thông qua các thư viện, cho phép người dùng tích hợp mã AVR vào chương trình, nhờ vào nền tảng ngôn ngữ C của AVR.

2.4.1.2 Làm việc với phần mềm

Sau khi down bản mới nhất của Arduino IDE, tiến hành cài đặt như bình thường và mở chương trình.

To set up the Arduino IDE for library installation and code uploading, navigate to File → Preferences In the Additional Board Manager URLs textbox, add the following link: http://arduino.esp8266.com/stable/package_esp8266com_index.json.

Click OK để chấp nhận.

Hình 2.21 Thiết lập đường dẫn cho IDE

Tiếp theo vào Tool→Board→Boards Manager

Hình 2.22 Trình quản lí các thiết bị giao tiếp với IDE đợi một lát để chương trình tìm kiếm Ta kéo xuống và click vào ESP8266 by

ESP8266 Community, click vào Install Chờ phần mềm tự động download và cài đặt.

Hình 2.23 Tiến hành tải boad ESP8266 về

IDE Chọn Board để lập trình cho ESP8266:

Kết nối mudule USB-to-UART vào máy tính Vào Tool→Board→Generic

ESP8266 Module, chọn cổng COM tương ứng với module USB-to-UART tương ứng.

Hình 2.24 Chọn boad để nạp code 2.4.2 Phần mềm lập trình Android Studio

Android Studio là IDE chính thức dành cho phát triển ứng dụng Android, cho phép các nhà phát triển viết mã và kết hợp các ứng dụng từ nhiều gói và thư viện khác nhau.

Thư viện phần mềm, công cụ lập trình tiện dụng, nhiều hơn để giúp ta xây dựng, kiểm thử Cũng như gỡ lỗi các ứng dụng Android.

Android Studio cung cấp nhiều giả lập để kiểm tra ứng dụng, giúp đảm bảo rằng mọi chức năng hoạt động mượt mà ngay cả khi không có thiết bị thực tế.

Các công cụ như lời khuyên tối ưu hóa, đồ thị doanh số bán hàng và số liệu phân tích sẽ hỗ trợ các nhà phát triển quản lý ứng dụng của họ hiệu quả hơn, đồng thời giúp xác định hướng đi cụ thể cho từng thiết bị Android.

Android Studio là IDE chính thức của Google cho phát triển ứng dụng Android gốc, hỗ trợ các hệ điều hành Windows, Mac OS X và Linux, thay thế cho Android Development Tools (ADT) dựa trên Eclipse.

2.4.2.2 Giao diện làm việc chính

Sau khi tải và cài đặt Android Studio, người dùng có thể bắt đầu làm việc và viết mã để phát triển ứng dụng Hai ngôn ngữ chính được sử dụng trong quá trình này là Java và XML.

Hình 2.25 Màn hình làm việc với file Java

Hình 2.26 Màn hình làm việc với file Xml

2.4.3 Phần mềm giám sát điện năng trên app Blynk

Blynk là phần mềm mã nguồn mở dành cho ứng dụng IoT (Internet of Things), cho phép người dùng điều khiển phần cứng từ xa Ứng dụng này có khả năng hiển thị dữ liệu cảm biến, lưu trữ và biến đổi dữ liệu, cùng nhiều tính năng hữu ích khác Chỉ cần nhấn một nút trên phần mềm, người dùng có thể ngay lập tức bật tắt bóng đèn, mang lại sự tiện lợi và linh hoạt trong việc quản lý thiết bị.

Nền tảng Blynk có ba phần chính

Hình 2.27 Mô hình hoạt động của Blynk

 Blynk App – Ứng dụng Blynk cho phép khởi tạo giao diện cho các dự án của mình hoặc nhiều người.

Blynk Server đóng vai trò quan trọng trong việc giao tiếp hai chiều giữa điện thoại và phần cứng Mặc dù có thể sử dụng server của Blynk, nhưng người dùng sẽ gặp phải hạn chế về điểm Energy Trong các hướng dẫn sắp tới, mình sẽ sử dụng server riêng để tối ưu hóa trải nghiệm và khả năng sử dụng.

 Blynk Library – Thư viện chứa các nền tảng phổ biến , giúp việc giao tiếp phần cứng với Server dễ dàng hơn.

2.4.3.2 Màn hình làm việc và giao diện Để tải được app blynk ta chỉ việc lên Chplay của android hoặc appstore của IOS Việc cài đặt dễ dàng và thuận tiện.

Hình 2.28 Giao diện chính app Blynk

PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG

Giới thiệu

Đề tài thiết kế thiết bị "Công tơ đo lường công suất điện tiêu thụ" nhằm đo các thông số điện năng AC như dòng điện, điện áp, tần số, công suất và năng lượng tiêu thụ của thiết bị điện Để đạt được mục tiêu, cần đấu nối các module và lắp đặt mô hình thiết bị một cách an toàn Sau đó, người dùng đăng nhập vào ứng dụng Blynk và server Firebase để cấu hình kết nối nhận dữ liệu từ trung tâm xử lý Cuối cùng, thiết lập giao diện trực quan trên ứng dụng Blynk và ứng dụng Android giúp giám sát qua mạng không dây mọi lúc, mọi nơi.

Thiết kế hệ thống

3.2.1 Thiết kế sơ đồ khối hệ thống

Theo yêu cầu của đề tài thì ta tiến hành thiết kế sơ đồ khối của hệ thống như sau:

Hình 3.1 Sơ đồ khối toàn hê tḥống

 Khối đo điên năng: đọc các thông số điện áp, dòng điện, điện năng, công suất tải, tần số, hệ số điện áp.

 Khối ngõ vào: các tải từ thiết bi điện được đưa vào với mục đích giám sát điện năng.

 Khối hiển thị: hiển thị các giá tri ủca thiết bị đo được trên màn hình LCD.

 Khối xử lý trung tâm: xử lý các giá trị nhận được, gửi dữ liệu lên firebase web sever.

 Khối nguồn: có chức năng cấp nguồn để toàn mạch hoạt động.

 Firebase server: Gửi dữ liệu về mobile app để hiển thị và theo dõi.

PZEM004T là lựa chọn lý tưởng với thiết kế nhỏ gọn, hỗ trợ đọc các thông số điện và giao tiếp UART, giúp dễ dàng kết nối và truyền dữ liệu đến ESP8266 để giám sát từ xa các thông số điện năng.

Hình 3.2 Hình ảnh thực tế module PZEM004T 3.2.1.2 Khối ngõ vào

Hình 3.3 Một số thiết bị ngõ vào

Các thiết bị điện hiện đại cho phép đo điện năng và giám sát từ xa thông qua ổ cắm cố định trên vỏ hộp Để theo dõi điện năng của một thiết bị cụ thể, chỉ cần cắm thiết bị vào ổ cắm Nếu muốn đo tổng điện năng tiêu thụ trong nhà, người dùng có thể kết nối cảm biến dòng với dây tổng của hệ thống điện Việc này giúp theo dõi lượng điện tiêu thụ dễ dàng, đồng thời giảm thiểu sai số khi thanh toán tiền điện hàng tháng Một số thiết bị có thể đo bao gồm bóng đèn, quạt, tivi và tủ lạnh.

3.2.1.3 Khối xử lý trung tâm

Sử dụng vi điều khiển NodeMCU ESP8266 để kết nối với các thiết bị ngoại vi và giao tiếp với server qua WiFi, giúp giám sát dữ liệu từ module PZEM004T Dữ liệu có thể được hiển thị trên màn hình LCD hoặc gửi lên Firebase, đồng thời truyền về ứng dụng di động.

Hình 3.4 Khối xử lí trung tâm 3.2.1.4 Khối hiển thị

Để thuận tiện trong việc theo dõi các thông số điện, màn hình LCD 20x4 sẽ hiển thị giá trị điện áp, dòng điện, điện năng và công suất.

Nguồn điện xoay chiều 220~240VAC được dùng để cấp cho nguồn AC trên module PZEM004T Tổng dòng cho tất cả các linh kiện dùng nguồn 220VAC là 6A.

Sử dụng cho các thiết bi điệ n có dòng nhỏ hơn 6A trước khi cắm vào ổ cắm.

Nguồn 5V được cung cấp từ cổng USB của máy tính hoặc cổng sạc điện thoại, phục vụ để cấp điện cho các module như PZEM004T, LCD, I2C và NODEMCU ESP8266 Tổng dòng tiêu thụ cho tất cả các linh kiện sử dụng nguồn 5V là 425mA.

Hình 3.6 Khối nguồn 3.2.1.6 Khối firebase sever

Sau khi kết nối với WiFi, khối xử lý trung tâm sẽ truyền dữ liệu lên máy chủ của Blynk và Firebase Khi máy chủ nhận được dữ liệu, nó sẽ tiếp tục gửi thông tin trở lại ứng dụng để hiển thị.

Hình 3.7 Khối Sever của firebase

Bynk hiển thị dữ liệu theo dõi thời gian thực từ máy chủ, cụ thể là nhận dữ liệu từ Blynk server Ứng dụng Android sẽ tiếp nhận dữ liệu từ server Firebase.

Hình 3.8 Mobile app hiển thị dữ liệu theo thời gian thực 3.2.2 Sơ đồ kết nối toàn mạch

Sơ đồ kết nối của hệ thống cho thấy module vi điều khiển chính là ESP8266, nhận dữ liệu điện năng từ module PZEM004T qua chân tín hiệu TX và RX Dữ liệu này sau đó được hiển thị trên module LCD 2004 thông qua mạch I2C kết nối với MCU qua chân D1 và D2 Ngoài ra, hệ thống còn có nút bấm để reset các thông số nhận được từ PZEM004T.

Hình 3.9 Sơ đồ kết nối toàn mạch

Các module được kết nối và cấp nguồn, sau đó dòng điện cần đo được nối vào mạch PZEM004T, với cảm biến dòng kẹp vào một trong hai dây của thiết bị Khi mạch PZEM004T đọc xong các giá trị, nó sẽ gửi dữ liệu về ESP8266 ESP8266 tiếp tục truyền dữ liệu lên màn hình hiển thị LCD và gửi lên server, từ đó thông tin sẽ được chuyển tới ứng dụng trên điện thoại hoặc máy tính qua mạng không dây Điều này cho phép người dùng theo dõi và giám sát lượng điện năng tiêu thụ của thiết bị Ngoài ra, nút bấm có chức năng reset tổng năng lượng đo được; khi cần reset, chỉ cần nhấn giữ nút trong 5 giây để thiết lập lại thông số năng lượng.

Hình 3.10 Lưu đồ toàn hệ thống

Trên ảnh là cấu trúc lưu đồ thuật toán của hệ thống để lập trình cho mạch hoạt động Cụ thể như sau:

Để đảm bảo chương trình hoạt động mượt mà và không gặp lỗi, việc khởi tạo thư viện cho ESP8266, PZEM004T, LCD, FireBase và Blynk server là rất quan trọng Nếu thiếu các thư viện cần thiết, chương trình sẽ không thể chạy đúng cách.

- Thiết lập cổng vào ra: cổng vào là dữ liệu đo được từ module PZEM004T, cổng là module LCD để hiển thị dữ liệu

- Tải 220V hoạt động: khi có tải hoạt động thì module sẽ thu thập các chỉ số vể điện năng như: V, A, W, Wh, FR, PF….

- Hiển thị lên LCD: khi esp nhận được dữ liệu gửi về thì sẽ xuất dữ liệu đó lên màn hình hiển thị LCD 2004

Để giám sát điện năng tiêu thụ từ xa, cần thiết lập kết nối wifi cho trung tâm xử lý, giúp gửi dữ liệu lên server như Firebase và Blynk Quá trình này yêu cầu thiết lập USERNAME, PASSWORD và Key kết nối đến server Khi kết nối thành công, dữ liệu sẽ được tự động đẩy lên server.

Để thiết lập server cho ứng dụng, cần có hai server tương ứng với hai ứng dụng: server Blynk cho ứng dụng Blynk và server Firebase cho ứng dụng Android Khi ứng dụng kết nối thành công với server, dữ liệu trên server sẽ ngay lập tức được truyền tải xuống ứng dụng trên điện thoại để hiển thị Điều này có nghĩa là chỉ cần có kết nối mạng, người dùng có thể lưu trữ và theo dõi dữ liệu từ bất kỳ đâu.

Thi công hệ thống

Hộp thiết bi đượ c thiết kế với các thông số:

 Vỏ: bên ngoài lắp đặt 1 LCD, 1 ổ cắm điện, một giắc cắm 2 chân dây nguồn và môt giắc cắm nguồn và nạp code cho NodeMCU ESP8266.

 Bên trong hộp chứa mạch điện tử chính điều khiển thiết bi

Hình 3.11 Mô hình thiết bị 3.3.2 Danh sách các linh kiện

Bảng 3.1 Danh sách linh kiện sử dụng trong hê tḥống

8 Nhựa Fo-mex, keo 502, hàn

3.3.3 Lắp ráp và kiểm tra

Tiến hành ghép nối các module và linh kiện theo sơ đồ đấu nối, đảm bảo hàn các mối nối chắc chắn để tránh tình trạng linh kiện bị chập Cuối cùng, cố định các module vào hộp fo-mex để bảo vệ và giữ ổn định.

Khi lắp rắp xong tiến hành kiểm tra nguồn điện vào mạch xem có ổn định không bằng cách đo cắm dây nguồn 5V vào ESP8266 và nguồn 220v vào PZEM004T.

Nếu các đèn báo sáng thì chính tỏ nguồn đã được cấp Đi dây hợp lí để không bị rỗi cũng như bảo trì về sau.

Hình 4.2 hiển thị sản phẩm đã được cố định chắc chắn bên trong hộp, với các module được lắp ráp cẩn thận nhằm ngăn ngừa tình trạng cháy chập.

Hình 3.13 Mặt trước sản phẩm

Mặt trước của thiết bị, như hình 3.13, có thiết kế đơn giản và dễ nhìn, bao gồm một màn hình hiển thị thông số và một ổ cắm để kết nối thiết bị cần đo.

Hình 3.14 Vị trí giắc nguồn 5v và nút bấm reset

Vị trí cắm nguồn 5V được hiển thị bên cạnh hình 3.14, đồng thời cũng là đường dẫn để nạp chương trình Hệ thống có nút bấm reset và một đèn LED báo hiệu; khi giữ nút này trong khoảng 5 giây, hệ thống sẽ được khởi động lại từ đầu.

Hình 3.15 Vị trí giắc cắm nguồn 220v

Giắc cắm màu đỏ là giắc cắm dùng để cấp điện cho module PZEM004T và ổ cắm điện để nối các thiết bị điện cần đo.

3.4 Lập trình phần cứng và phần mềm

3.4.1 Chương trình hê tḥống phần cứng Arduino IDE

Hình ảnh phía dưới là một số đoạn chương trình chính của sản phẩm:

Hình 3.17 Chương trình hiển thị dữ liệu lên LCD

Hình 3.18 Gửi dữ liệu lên Blynk

Hình 3.19 Gửi dữ liệu lên Firebase 3.4.2 Chương trình app Android Studio

Hình 3.20 Code nhận dữ liệu từ firebbase trong java

Hình 3.21 Code nhận dữ liệu từ firebbase trong java Chương trình file xml

Hình 3.22 Chương trình giao diện XML

Sau khi hoàn tất biên dịch và khởi chạy, chúng ta sẽ có một ứng dụng Android như hình dưới đây Bước tiếp theo là tải file apk về và cài đặt trên thiết bị thực, từ đó có thể theo dõi các chỉ số điện năng hiển thị.

Hình 3.23 Kết quả sau khi chạy app trên máy ảo 3.4.3 Tạo giao diện để xem các thông số điện năng trên app Blynk

Với ứng dụng Blynk, người dùng không cần lập trình trực tiếp trên app, mà chỉ cần thiết lập các thông số để đồng bộ với phần cứng và server đã được lập trình trong Arduino IDE Công việc trên ứng dụng chỉ đơn giản là thêm các khối để hiển thị theo ý muốn.

Hình 3.24 Các công cụ và giao diện khi hoàn thành

Sau khi hoàn tất kết nối, hệ thống sẽ cập nhật các thông số điện năng trên màn hình LCD và truyền dữ liệu lên server Blynk và Firebase để cung cấp thông tin cho ứng dụng di động.

Hình 3.25 Sản phẩm hoàn thiện

Sau đó có thể giám sát điện năng theo thời gian thực của thiết bi ṇày trên AppBlynk và app android

Hình 3.26 Giao diện theo dõi điện năng qua app blynk và android

Kết luận, đề tài giám sát điện năng qua mạng không dây đã đạt hiệu suất ổn định 90%, cho phép người dùng theo dõi mức tiêu thụ điện từ xa qua máy tính hoặc điện thoại Đây là giải pháp thiết thực, phù hợp với nhu cầu của người dân hiện nay khi mà điện và smartphone trở nên phổ biến Hệ thống không chỉ giúp người dùng hiểu rõ mức tiêu thụ điện của gia đình mà còn so sánh với hóa đơn điện hàng tháng từ nhà cung cấp Tuy nhiên, đây mới chỉ là bước khởi đầu; cần nghiên cứu thêm để tích hợp các tính năng như tính toán tiền điện, lưu trữ lịch sử tiêu thụ theo ngày, tháng Để mở rộng ứng dụng, hệ thống có thể giám sát nhiều thiết bị cùng lúc, bổ sung chức năng bảo vệ, quản lý lịch sử và xử lý sự cố như quá tải hay quá áp thông qua điều khiển từ xa.

[1] Giáo trình Vi xử lý

[2] https://www.google.com.vn/

[4] Hương dẫn Arduino IDE, Android studio, app blynk

Kết quả, nhận xét

Sau khi hoàn tất các kết nối, hệ thống sẽ hiển thị các thông số điện năng trên màn hình LCD và tự động gửi dữ liệu lên máy chủ Blynk và Firebase, từ đó truyền tải thông tin về ứng dụng di động.

Hình 3.25 Sản phẩm hoàn thiện

Sau đó có thể giám sát điện năng theo thời gian thực của thiết bi ṇày trên AppBlynk và app android

Hình 3.26 Giao diện theo dõi điện năng qua app blynk và android

Đề tài thực hiện giám sát điện năng qua mạng không dây với hiệu suất ổn định 90% cho phép người dùng theo dõi mức tiêu thụ điện từ xa trên máy tính hoặc điện thoại Đây là giải pháp thiết thực trong bối cảnh hiện nay khi hầu hết các hộ gia đình đều sử dụng điện và smartphone Hệ thống này không chỉ giúp người dùng nắm bắt mức tiêu thụ điện mà còn so sánh với hóa đơn hàng tháng từ nhà cung cấp Mặc dù đang ở giai đoạn phát triển ban đầu, cần nghiên cứu thêm để tích hợp các tính năng như tính toán tiền điện, lưu trữ lịch sử tiêu thụ theo ngày, tháng và giám sát nhiều thiết bị cùng lúc Bên cạnh đó, việc bổ sung hệ thống bảo vệ và khả năng xử lý sự cố vượt quá tải, quá áp thông qua điều khiển từ xa sẽ nâng cao hiệu quả và tiện ích của giải pháp này trong đời sống.

[1] Giáo trình Vi xử lý

[2] https://www.google.com.vn/

[4] Hương dẫn Arduino IDE, Android studio, app blynk

Ngày đăng: 05/01/2022, 12:26

HÌNH ẢNH LIÊN QUAN

Hình 2.1 Giao thức truyền của MQTT - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.1 Giao thức truyền của MQTT (Trang 22)
Hình 2.2 Mô hình sử dụng giao thức CoAP và  HTTP AMQP (Advanced Message Queue Protocol) - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.2 Mô hình sử dụng giao thức CoAP và HTTP AMQP (Advanced Message Queue Protocol) (Trang 23)
Hình 2.3 ví dụ về XMPP 2.3.3 Firebase - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.3 ví dụ về XMPP 2.3.3 Firebase (Trang 25)
Hình 2.4 Bus I2C và các thiết bị ngoại vi. - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.4 Bus I2C và các thiết bị ngoại vi (Trang 29)
Hình 2.5 Kết nối thiết bị vào bus I2C ở chế độ chuẩn (Standard mode) và chế độ - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.5 Kết nối thiết bị vào bus I2C ở chế độ chuẩn (Standard mode) và chế độ (Trang 31)
Hình 2.6 Quá trình truyền nhận giữa thiết bi  ̣chủ (master) và tớ (slave) - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.6 Quá trình truyền nhận giữa thiết bi ̣chủ (master) và tớ (slave) (Trang 33)
Hình 2.7 Trình tự truyền bit trên đường truyền - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.7 Trình tự truyền bit trên đường truyền (Trang 35)
Hình 2.10 Kết nối UART giữa hai vi điều khiển - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.10 Kết nối UART giữa hai vi điều khiển (Trang 39)
Hình 2.13 Module Node MCU ESP8266 và sơ đồ chân - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.13 Module Node MCU ESP8266 và sơ đồ chân (Trang 44)
Bảng 2.1 Thông số cấu hình của NodeMCU ESP8266 - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Bảng 2.1 Thông số cấu hình của NodeMCU ESP8266 (Trang 44)
Hình 2.15 Hình ảnh thực tế module  PZEM004T 2.3.2.1 Chức năng - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.15 Hình ảnh thực tế module PZEM004T 2.3.2.1 Chức năng (Trang 48)
Hình 2.16 Sơ đồ kết nối dây của module PZEM004T - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.16 Sơ đồ kết nối dây của module PZEM004T (Trang 50)
Bảng 2.3 Thông số kỹ thuật của PZEM004T - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Bảng 2.3 Thông số kỹ thuật của PZEM004T (Trang 54)
Hình 2.19 Mạch  nguyên lý module  chuyển đổi giao  tiếp I2C - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.19 Mạch nguyên lý module chuyển đổi giao tiếp I2C (Trang 60)
Hình 2.22 Trình quản lí các thiết bị giao tiếp với IDE - BÁO cáo TIỂU LUẬN môn học máy TÍNH NHÚNG và ỨNG DỤNG đề tài THIẾT kế CÔNG tơ đo LƯỜNG CÔNG SUẤT TIÊU THỤ
Hình 2.22 Trình quản lí các thiết bị giao tiếp với IDE (Trang 64)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w