Site icon TAPIT

Luồng dữ liệu điều khiển và cập nhật trạng thái khi sử dụng GCP

Bài viết này sẽ trình này thiết kế luồng dữ liệu điều khiển và cập nhật trạng thái trong ứng dụng nhà thông minh khi thiết kế sử dụng Google Cloud Platflorm.

Luồng dữ liệu trạng thái (đường màu xanh) thể hiện quá trình cập nhật trạng thái của thiết bị lên đám mây. Luồng dữ liệu điều khiển, cấu hình (đường màu đỏ) thể hiện quá trình yêu cầu điều khiển, cấu hình từ xa qua ứng dụng người dùng. Ứng dụng tương tác với đám mây qua Khối API được thiết kế riêng theo kiến trúc REST. Dữ liệu được tổ chức lưu trữ trong CSDL Cloud Firestore thiết kế theo mô hình reported – desired. Trường reported dùng để lưu trữ trạng thái thực của thiết bị và trường desired dùng để lưu trữ trạng thái mong muốn yêu cầu thiết bị thực hiện thay đổi. Hai trường reported và desired có thể chứa nhiều dữ liệu khác nhau được tổ chức theo các cặp key-value tạo nên các khối dữ liệu như thiết kế.

Hình 1: Quy trình luồng dữ liệu điều khiển và cập nhật trạng thái trên nền tảng GCP

Tổ chức dữ liệu trong Cloud Firestore được minh họa ở Hình 2:

Hình 2: Tổ chức dữ liệu theo kiến trúc reported-desired trong Firestore

Tài liệu chứa dữ liệu của thiết bị ESP32 trong hệ thống nhà thông minh trong trường reported lưu bao gồm 4 thông số chính:

Thiết bị giao tiếp với Cloud IoT Core qua giao thức MQTT:

Tìm hiểu thêm:
Tổng hợp hướng dẫn Internet of Things với NodeMCU ESP8266 và ESP32
Tổng hợp các bài hướng dẫn Lập trình vi điều khiển STM32
[HỌC ONLINE: LẬP TRÌNH VI ĐIỀU KHIỂN STM32, VI XỬ LÝ ARM CORTEX – M]
Fanpage Cộng đồng Kỹ thuật TAPIT: TAPIT – Learning, Research and Sharing Community

Chuỗi bài viết được thực hiện và chia sẻ bởi LCV.Khải và Các nhóm nghiên cứu tại Cộng đồng Kỹ thuật TAPIT
Chúc các bạn thành công!