Luồng dữ liệu cảm biến khi sử dụng GCP

Luồng dữ liệu cảm biến cho ứng dụng IoT: nhà thông minh, được thiết kế trên nền tảng điện toán đám mây Google Cloud Platform, nhóm đề xuất như Hình 1:

Hình 1: Quy trình luồng dữ liệu cảm biến trên nền tảng GCP

Cloud IoT Core : giao tiếp với thiết bị qua giao thức MQTT, hỗ trợ cấu hình liên kết với các topic của dịch vụ Pub/Sub mà Cloud IoT Core sẽ đóng vai trò là publisher.

Cloud Pub/Sub: chuyển tiếp tin nhắn từ Cloud IoT Core đến Cloud Function, đảm bảo tin nhắn được lưu trữ và gửi đến Cloud Functions một cách đầy đủ, an toàn.

Cloud Functions: Là môi trường thực thi các đoạn mã logic theo kiến trúc không máy chủ (serverless) được cung cấp bởi GCP. Cloud Function được gọi thực thi bởi các trình kích hoạt (trigger), mỗi trình kích hoạt đại diện cho một sự kiện (event) chính là điều kiện để kích hoạt Cloud Function. Cloud Function hỗ trợ các trình kích hoạt: HTTP, Cloud Storage, Cloud Pub/Sub, Cloud Firestore, Firebase (Realtime Database, Storage, Analytics, Auth), Stackdriver Logging. Trong luồng dữ liệu cảm biến, Cloud Functions được kích hoạt từ trình kích hoạt Cloud Pub/Sub.

Cloud Firestore: bảng sensor-collection lưu trữ dữ liệu cảm biến theo dấu thời gian được minh họa ở Hình 2:


Hình 2: Giá trị cảm biến lưu trữ trong Firestore

Các trường lưu trữ trong CSDL:

  • Trường time(String): lưu trữ chuỗi giá trị thời gian để sắp xếp dữ liệu phục vụ truy vấn theo thời gian
  • Trường temperature(Number): lưu trữ giá trị nhiệt độ
  • Trường humidity (Number): lưu trữ giá trị độ ẩm
  • Trường gas(Number): lưu trữ giá trị nồng độ khí gas
  • Trường pir(Boolean): lưu trữ giá trị mức hồng ngoại.
Tìm hiểu thê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!