Bối cảnh và vấn đề nghiên cứu

Theo số liệu thống kê của Bộ Công an được trích dẫn trong văn bản, trong 5 năm gần đây trên toàn quốc đã xảy ra hơn 17.000 vụ cháy, làm hơn 433 người tử vong, hơn 700 người bị thương và gây thiệt hại về tài sản ước tính lên đến hàng nghìn tỷ đồng. Các vụ hỏa hoạn đặc biệt nghiêm trọng tập trung nhiều tại các khu vực đô thị có mật độ dân cư cao như chung cư, khu nhà trọ, nhà ở riêng lẻ và căn hộ mini — nơi tập trung người có mức thu nhập trung bình đến thấp.

Thực trạng ghi nhận các hệ thống báo cháy tại các khu vực này còn mang tính chất công nghệ cũ, việc kiểm tra và bảo dưỡng định kỳ đòi hỏi nhiều nhân lực nhưng hiệu quả quản lý tập trung chưa cao. Đồng thời, các cảnh báo chủ yếu xử lý cục bộ tại chỗ (còi, chuông), thiếu sự kết nối đa nền tảng tức thời đến người sử dụng và cơ quan chức năng khi xảy ra sự cố.

Đề tài đặt ra các mục tiêu và nhiệm vụ nghiên cứu cụ thể:

  1. Thu thập và giám sát liên tục các thông số môi trường từ mạng lưới cảm biến liên quan đến cháy nổ, bao gồm nhiệt độ, khói, khí gas và lửa.
  2. Thiết kế cơ chế phát hiện và kích hoạt cảnh báo đa kênh tức thời đến người dùng thông qua ứng dụng di động (thông báo đẩy - push notification, âm thanh cảnh báo, tin nhắn SMS, email và cuộc gọi thoại tự động).
  3. Định vị chính xác tọa độ không gian xảy ra sự cố cháy nổ (phòng, tầng, số nhà, tòa nhà, khu vực dân cư) nhằm hỗ trợ lực lượng cứu hộ khoanh vùng nhanh chóng.
  4. Xây dựng và triển khai kiến trúc hệ thống trên hạ tầng điện toán đám mây Amazon Web Services (AWS) để tối ưu hóa hiệu năng, tăng cường độ tin cậy và khả năng mở rộng quy mô.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Hệ thống cảnh báo sớm sự cố cháy nổ dựa trên mạng lưới cảm biến IoT kết hợp hạ tầng đám mây và ứng dụng di động.
  • Phạm vi không gian: Áp dụng cho các mô hình nhà ở dân cư, phòng trọ, khu chung cư cao tầng. Dữ liệu phần cứng cảm biến được thực hiện thông qua mô phỏng trên nền tảng AWS IoT Core.
  • Phạm vi thời gian và học thuật: Đồ án tốt nghiệp đại học ngành Hệ thống Nhúng và IoT, thực hiện và bảo vệ vào tháng 06/2024 tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh.

Cơ sở lý thuyết và phương pháp

Đồ án xây dựng dựa trên sự tích hợp giữa các công nghệ phát triển phần mềm, giao thức mạng IoT và cơ sở hạ tầng đám mây hiện đại:

Nhóm thành phần Công nghệ / Giao thức sử dụng Vai trò trong hệ thống
Nền tảng máy chủ (Backend) Node.js, ExpressJS Xây dựng hệ thống máy chủ đơn luồng hướng sự kiện, xử lý API RESTful và luồng I/O không đồng bộ.
Cơ sở dữ liệu MongoDB (NoSQL) Quản lý dữ liệu dạng JSON/BSON, lưu trữ thông tin thiết bị, người dùng, tòa nhà và lịch sử sự kiện.
Ứng dụng di động React Native, Expo Phát triển ứng dụng di động đa nền tảng (iOS, Android) với giao diện trực quan cho người dùng cuối.
Xác thực & Thông báo JWT (RFC 7519), Firebase Cloud Messaging (FCM) Cung cấp cơ chế xác thực phiên làm việc an toàn và chuyển tiếp thông báo đẩy thời gian thực đến điện thoại.
Giao thức mạng MQTT, HTTP, WebSocket Truyền nhận dữ liệu từ cảm biến lên đám mây (MQTT) và truyền thông dữ liệu hai chiều thời gian thực (WebSocket, HTTP).
Dịch vụ đám mây AWS AWS IoT Core, AWS SNS, AWS EC2, AWS S3, AWS DynamoDB, VPC Tiếp nhận dữ liệu cảm biến, quản lý phân luồng cảnh báo đa kênh (SMS, Email, cuộc gọi), lưu trữ và vận hành cụm dịch vụ.
Hạ tầng & Điều phối Docker, Kubernetes (K8s), Terraform Đóng gói ứng dụng dạng container, tự động hóa điều phối cụm máy chủ và định nghĩa hạ tầng bằng mã (IaC).

Phương pháp nghiên cứu thực nghiệm và triển khai:

  • Phương pháp phân tích - tổng hợp: Nghiên cứu các giải pháp báo cháy IoT trong nước và quốc tế, đánh giá ưu nhược điểm của các giải pháp truyền thống dựa trên module vi điều khiển (như ESP8266, Raspberry Pi qua mạng di động LTE) để xác định bài toán độ trễ và quản trị tập trung.
  • Phương pháp thiết kế kiến trúc phần mềm: Áp dụng mô hình kiến trúc hướng sự kiện (Event-driven Architecture) tách biệt giữa khối xử lý API chính, khối xử lý thời gian thực và khối cảnh báo.
  • Phương pháp mô phỏng và giả lập: Do tính chất an toàn và chi phí phần cứng, hệ thống sử dụng AWS IoT Core để giả lập môi trường phát sinh dữ liệu cảm biến nhiệt độ, khói và khí gas với các ngưỡng kích hoạt cảnh báo thực tế.
  • Phương pháp kiểm thử: Đánh giá từng khối chức năng qua Unit Test và kiểm thử tích hợp toàn bộ chu trình từ lúc cảm biến vượt ngưỡng đến khi kích hoạt cảnh báo đa kênh trên ứng dụng di động.

Thiết kế và triển khai hệ thống

1. Kiến trúc hệ thống

Hệ thống được thiết kế theo mô hình phân tầng hướng sự kiện, gồm ba thành phần cốt lõi:

  • Tầng biên / Thu thập dữ liệu (Sensor Layer): Mạng lưới các node cảm biến mô phỏng gửi dữ liệu đo đạc (khói, nhiệt độ, khí gas) định kỳ hoặc khi có biến thiên đột ngột lên đám mây thông qua giao thức truyền thông MQTT.
  • Tầng xử lý trung tâm (Cloud & Server Layer):
    • AWS IoT Core tiếp nhận gói tin MQTT, phân tích dữ liệu theo các tập luật (Rules Engine) để xác định trạng thái bất thường.
    • Cụm máy chủ Backend xây dựng trên Node.js/ExpressJS, tiếp nhận tín hiệu từ IoT Core, phân loại mức độ nguy hiểm và kích hoạt các kênh cảnh báo thông qua Amazon SNS và Firebase Cloud Messaging.
    • Hạ tầng cơ sở dữ liệu MongoDB lưu trữ thông tin có cấu trúc về người dùng, thiết bị, căn hộ, phòng và nhật ký sự kiện.
  • Tầng ứng dụng người dùng (Application Layer): Ứng dụng di động viết bằng React Native kết nối với máy chủ qua RESTful API và WebSocket để cập nhật trạng thái thiết bị theo thời gian thực và hiển thị các cảnh báo khẩn cấp.

2. Thiết kế cơ sở dữ liệu

Hệ cơ sở dữ liệu MongoDB được thiết kế thông qua 9 collections chính nhằm đảm bảo khả năng mở rộng dữ liệu:

Tên Collection Mục đích quản lý
users Thông tin định danh tài khoản, quyền hạn và chi tiết cá nhân người sử dụng.
keys Khóa bảo mật phiên làm việc và mã xác thực API của người dùng.
notifications Lịch sử thông báo hệ thống, nội dung cảnh báo cháy, thời gian và trạng thái gửi.
apartments Thông tin chi tiết các căn hộ trong phạm vi giám sát.
apikey Quản lý khóa truy cập API cho các phân hệ tích hợp ngoại vi.
rooms Danh mục từng phòng cụ thể gắn liền với căn hộ và tầng.
verify Quản lý mã OTP và quy trình xác thực tài khoản đăng ký.
sensors Quản lý danh mục các cảm biến (loại cảm biến, ngưỡng giới hạn, trạng thái hoạt động).
building Thông tin các tòa nhà, vị trí địa lý, địa chỉ cụ thể và cấu trúc tầng.

3. Triển khai hạ tầng và quy trình tự động hóa

  • Container hóa với Docker: Đóng gói toàn bộ mã nguồn backend, các thư viện phụ thuộc và môi trường chạy vào Docker Image thông qua Dockerfile tối ưu hóa, đảm bảo tính nhất quán giữa môi trường phát triển và môi trường vận hành thực tế.
  • Điều phối cụm bằng Kubernetes (K8s): Quản lý vòng đời các Pod dịch vụ thông qua kiến trúc phân chia Master Node (Control Plane gồm API server, etcd, scheduler, controller-manager) và Worker Node (Kubelet, Kube-proxy, CRI), hỗ trợ tự động mở rộng (auto-scaling) và duy trì tính sẵn sàng cao khi lưu lượng tăng đột biến.
  • Hạ tầng dưới dạng mã (IaC) với Terraform: Toàn bộ tài nguyên trên đám mây AWS (bao gồm VPC, máy chủ EC2, S3, nhóm bảo mật Security Group và các cấu hình định tuyến) được định nghĩa và khởi tạo hoàn toàn bằng các tập tin mã khai báo Terraform, giúp chuẩn hóa và rút ngắn thời gian thiết lập môi trường.
  • Quy trình CI/CD: Tự động hóa quá trình đóng gói, kiểm thử mã nguồn và triển khai ứng dụng cho cả hai phân hệ frontend di động và backend máy chủ.

Nội dung chính theo từng chương

Chương 1: Giới thiệu đề tài

Chương 1 thiết lập cơ sở lý luận và thực tiễn của đề tài. Tác giả trình bày thực trạng gia tăng số lượng các vụ hỏa hoạn tại khu vực đô thị, phân tích nguyên nhân bắt nguồn từ sự thiếu chủ động phát hiện sự cố và các hệ thống báo cháy hiện hành đã lạc hậu, chậm được bảo trì. Đề tài xác định rõ 4 mục tiêu nghiên cứu cụ thể, tập trung vào việc áp dụng công nghệ IoT và cơ sở hạ tầng đám mây AWS nhằm tự động hóa quy trình cảnh báo cháy đa kênh. Trong phần tổng quan tài liệu, nhóm tác giả phân tích các nghiên cứu trong nước (nghiên cứu của Phạm Ngọc Pha & Nguyễn Trọng Hiếu; nghiên cứu của Trần Như Chí & Trần Hoài An) và nghiên cứu quốc tế sử dụng vi điều khiển ESP8266, Arduino Nano, module SIM900 truyền tin qua mạng 4G/LTE. Qua đó, tác giả chỉ ra hạn chế của các giải pháp trước đây là tính cục bộ, độ trễ truyền tin thực nghiệm còn cao (khoảng 20 giây) và thiếu cơ chế quản lý tập trung trên nền tảng đám mây.

Chương 2: Cơ sở lý thuyết

Chương 2 trình bày chi tiết các cơ sở công nghệ được sử dụng làm nền tảng cho việc xây dựng đồ án. Nhóm tác giả phân tích kiến trúc đơn luồng không đồng bộ dựa trên Event Loop và Thread Pool của Node.js, framework ExpressJS với hệ thống routing và middleware linh hoạt. Hệ quản trị cơ sở dữ liệu NoSQL MongoDB được giải thích qua cơ chế sharding, phân tán dữ liệu và tài liệu dạng BSON. Về phía giao diện, tác giả phân tích framework React Native kết hợp Expo CLI, cơ chế gửi thông báo đẩy qua Firebase Cloud Messaging (FCM) và chuẩn an toàn thông tin JSON Web Token (JWT RFC 7519). Ở tầng hạ tầng, chương này giới thiệu tổng quan về nền tảng đám mây AWS (EC2, S3, IoT Core, SNS), công nghệ đóng gói container Docker (Engine, Daemon, Image), cơ chế điều phối cụm Kubernetes (Master/Worker Nodes, vòng đời của Pod) và công cụ Infrastructure as Code Terraform.

Chương 3: Thiết kế hệ thống

Chương 3 là nội dung kỹ thuật trọng tâm của đồ án, bao gồm đặc tả yêu cầu, mô hình tổng quát và sơ đồ khối chức năng. Tác giả xây dựng chi tiết lưu đồ thuật toán cho 3 khối: khối xử lý thời gian thực (real-time), khối xử lý chính (API) và khối xử lý cảnh báo. Chương này trình bày chi tiết mô hình giải lập mạng lưới cảm biến trên AWS IoT Core; phân tích các lược đồ Use Case cho người dùng thông thường (User) và khách (Guest); chi tiết hóa các sơ đồ tuần tự (Sequence Diagrams) cho các luồng nghiệp vụ: đăng ký, đăng nhập, xem thông tin thiết bị, truy xuất lịch sử cảnh báo và cơ chế tiếp nhận thông báo đẩy. Cấu trúc 9 bảng dữ liệu trong MongoDB được thiết kế chi tiết kèm theo các thuộc tính định danh. Về kiến trúc hạ tầng, chương này mô tả chi tiết Dockerfile, mô hình triển khai cụm Kubernetes, sơ đồ mạng Virtual Private Cloud (VPC) trên AWS và các kịch bản mã hóa hạ tầng Terraform.

Chương 4: Kết quả thực hiện

Chương 4 công bố các kết quả thực nghiệm đạt được của đề tài qua hai phân hệ:

  1. Mô phỏng cảm biến: Thiết lập thành công các kịch bản mô phỏng thông số cảm biến cho hệ thống báo cháy, bao gồm dữ liệu đo nhiệt độ và cảm biến khói được truyền nhận ổn định qua AWS IoT Core.
  2. Giao diện và chức năng phần mềm:
    • Giao diện quản lý trạng thái cảm biến hoạt động chính xác khi có cảnh báo xuất hiện.
    • Ứng dụng di động hiển thị đầy đủ màn hình chính, màn hình chi tiết thông tin cảm biến, lịch sử sự kiện cảnh báo gần đây.
    • Kiểm thử thành công các phương thức kích hoạt thông báo: pop-up khẩn cấp trên ứng dụng, thông báo đẩy hệ thống và chức năng tự động thực hiện cuộc gọi điện thoại thoại đến người dùng khi có dấu hiệu cháy nổ.

Chương 5: Kết luận và hướng phát triển

Chương 5 tổng kết lại toàn bộ khối lượng công việc đã hoàn thành so với mục tiêu ban đầu: xây dựng thành công hệ thống giám sát và cảnh báo cháy nổ hoạt động đa nền tảng, tích hợp hoàn chỉnh từ hạ tầng đám mây AWS đến thiết bị di động của người dùng cuối. Đồng thời, nhóm tác giả thẳng thắn chỉ ra các điểm còn tồn tại và đề xuất các định hướng nghiên cứu tiếp theo để nâng cao tính ứng dụng trong thực tiễn đời sống.


Kết quả và đóng góp

1. Kết quả kỹ thuật đạt được

  • Xây dựng thành công hệ thống phần mềm hoàn chỉnh cho bài toán phát hiện và phản ứng sớm với hỏa hoạn, kết hợp kiến trúc hướng sự kiện trên nền tảng Node.js và AWS.
  • Thiết lập giải pháp mô phỏng mạng lưới cảm biến toàn diện (nhiệt độ, khói) truyền dữ liệu chuẩn hóa qua giao thức MQTT lên AWS IoT Core.
  • Xây dựng ứng dụng di động đa nền tảng bằng React Native và Expo, cung cấp giao diện trực quan cho phép người dùng theo dõi chỉ số môi trường, xem vị trí cụ thể của đám cháy theo phân cấp tòa nhà - tầng - phòng.
  • Hiện thực hóa thành công chu trình cảnh báo đa kênh: kích hoạt thông báo pop-up trên màn hình ứng dụng, gửi thông báo đẩy thông qua FCM và kích hoạt cuộc gọi thoại tự động đến số điện thoại khẩn cấp.
  • Chuẩn hóa toàn bộ quy trình triển khai và vận hành hệ thống thông qua việc áp dụng công nghệ container Docker, điều phối Kubernetes và tự động hóa cung cấp hạ tầng bằng Terraform.

2. Đóng góp của đề tài

So với các đề tài nghiên cứu trước đây tại Việt Nam vốn chủ yếu dừng lại ở mức độ phần cứng cục bộ (chỉ kích hoạt còi tại chỗ hoặc gửi tin nhắn qua module SIM900/LTE với độ trễ cao lên tới 20 giây), đồ án này có những đóng góp rõ nét:

  • Giải quyết bài toán tập trung hóa dữ liệu: Đưa toàn bộ việc tiếp nhận, phân tích dữ liệu cảm biến lên hạ tầng đám mây AWS, cho phép quản lý hàng loạt thiết bị từ nhiều tòa nhà khác nhau trên cùng một nền tảng.
  • Tối ưu hóa phản ứng cảnh báo: Không phụ thuộc vào một kênh liên lạc đơn lẻ mà tích hợp đồng thời nhiều hình thức cảnh báo (thông báo đẩy trên app, tin nhắn, email và cuộc gọi thoại tự động), giúp gia tăng tỷ lệ tiếp cận người dùng trong các tình huống nguy cấp.
  • Khả năng mở rộng cao: Việc áp dụng kiến trúc microservices/containerized với Kubernetes và IaC với Terraform cho phép hệ thống dễ dàng mở rộng quy mô phục vụ mà không cần tái cấu trúc mã nguồn.

Hạn chế và hướng nghiên cứu tiếp

Dựa trên nội dung được trình bày trong văn bản báo cáo, các hạn chế và định hướng phát triển của đề tài được xác định như sau:

  • Hạn chế: Hệ thống cảm biến thu thập thông số môi trường hiện tại mới dừng lại ở mức độ mô phỏng và giả lập các kịch bản dữ liệu trên nền tảng AWS IoT Core, chưa được triển khai thử nghiệm diện rộng trên các module phần cứng cảm biến vật lý thực tế tại các công trình.
  • Hướng nghiên cứu tiếp:
    1. Chuyển đổi và kết nối hệ thống với các bo mạch phần cứng cảm biến vật lý thực tế đặt tại các khu dân cư, chung cư.
    2. Tích hợp thuật toán trí tuệ nhân tạo (AI/Machine Learning) vào quá trình phân tích chuỗi dữ liệu cảm biến nhằm loại bỏ các tín hiệu nhiễu, hạn chế tối đa tình trạng cảnh báo giả (false alarm) và hỗ trợ ra quyết định cảnh báo chính xác hơn.
    3. Tối ưu hóa chi phí vận hành tài nguyên trên hạ tầng điện toán đám mây khi triển khai ở quy mô thương mại lớn.

Giá trị tham khảo

Đồ án là tài liệu tham khảo có giá trị học thuật và kỹ thuật đối với:

  • Sinh viên ngành Hệ thống Nhúng, IoT, Kỹ thuật Máy tính và Công nghệ Phần mềm: Cung cấp tài liệu tham khảo thực tế về mô hình kết nối trọn vẹn từ thiết bị biên (IoT), máy chủ trung gian (Node.js/ExpressJS) đến ứng dụng di động (React Native).
  • Kỹ sư và người nghiên cứu triển khai Cloud/DevOps: Phần thiết kế kiến trúc hạ tầng ở Chương 3 là tài liệu hữu ích cho việc học tập cách đóng gói ứng dụng Docker, thiết lập cụm Kubernetes và viết mã khai báo tài nguyên đám mây AWS bằng Terraform.
  • Nhà phát triển các hệ thống giám sát an toàn đô thị: Cung cấp giải pháp tham khảo về mặt kiến trúc cơ sở dữ liệu (MongoDB) và giải pháp tích hợp thông báo khẩn cấp đa kênh (AWS SNS, FCM, cuộc gọi thoại) cho các bài toán cảnh báo thiên tai, sự cố môi trường.

Câu hỏi thường gặp

1. Hệ thống sử dụng phương thức nào để giải quyết vấn đề dữ liệu cảm biến trong đồ án?

Trong đồ án này, nhóm tác giả tận dụng các dịch vụ của AWS để xây dựng môi trường mô phỏng và giả lập mạng lưới cảm biến (nhiệt độ, khói, khí gas). Dữ liệu mô phỏng từ các cảm biến ảo này được đẩy trực tiếp lên dịch vụ AWS IoT Core thông qua giao thức MQTT để kiểm thử khả năng phân tích và phản ứng của hệ thống.

2. Khi phát hiện chỉ số bất thường, hệ thống cảnh báo đến người dùng qua những hình thức nào?

Hệ thống kích hoạt cơ chế cảnh báo đa kênh thông qua dịch vụ AWS SNS và Firebase Cloud Messaging (FCM), bao gồm:

  • Thông báo đẩy (push notification) xuất hiện trực tiếp trên màn hình điện thoại di động.
  • Giao diện cảnh báo dạng pop-up khẩn cấp kèm âm thanh báo động trên ứng dụng di động.
  • Gửi tin nhắn SMS và thư điện tử (email).
  • Thực hiện cuộc gọi thoại tự động đến số điện thoại của người dùng được thiết lập sẵn trong hệ thống.

3. Cơ sở dữ liệu của hệ thống được tổ chức như thế nào?

Hệ thống sử dụng hệ quản trị cơ sở dữ liệu NoSQL MongoDB với 9 collections chuyên biệt, bao gồm: users (người dùng), keys (khóa bảo mật), notifications (nhật ký thông báo), apartments (thông tin căn hộ), apikey (khóa truy cập API), rooms (danh mục phòng), verify (mã xác thực), sensors (thông tin cảm biến) và building (danh mục tòa nhà).

4. Công nghệ Infrastructure as Code (IaC) nào được sử dụng và có vai trò gì trong đồ án?

Công cụ Terraform được sử dụng để thực hiện phương pháp Infrastructure as Code. Terraform cho phép nhóm tác giả tự động hóa hoàn toàn việc khởi tạo, cấu hình và quản lý các tài nguyên hạ tầng đám mây trên AWS (như máy chủ EC2, VPC, cấu hình mạng và dịch vụ lưu trữ) bằng các tệp tin mã khai báo mang tính nhất quán và dễ tái sử dụng.

5. Tại sao đồ án lựa chọn kết hợp Kubernetes cùng với Docker?

Docker chịu trách nhiệm đóng gói ứng dụng và toàn bộ môi trường phụ thuộc thành các container nhẹ và độc lập. Trong khi đó, Kubernetes (K8s) đóng vai trò điều phối cụm (cluster orchestration), tự động hóa việc phân phối, kiểm tra trạng thái sức khỏe, mở rộng số lượng Pod (auto-scaling) và định tuyến mạng giữa các dịch vụ, đảm bảo hệ thống duy trì tính sẵn sàng cao khi tiếp nhận lượng lớn dữ liệu cảnh báo.


Kết luận

Đồ án tốt nghiệp "Thiết kế hệ thống IoT cảnh báo cháy nổ trên hạ tầng Amazon Cloud Services" của sinh viên Lê Đức Phong và Nguyễn Lương Phú Gia đã giải quyết bài toán phát hiện và phản ứng sớm sự cố cháy nổ tại các khu dân cư đô thị. Đề tài xây dựng hoàn chỉnh chu trình kết nối từ mô phỏng cảm biến IoT, xử lý dữ liệu hướng sự kiện trên nền tảng đám mây AWS, đến ứng dụng di động React Native tích hợp cảnh báo đa kênh tức thời. Nghiên cứu thể hiện tính ứng dụng cao về mặt kỹ thuật phần mềm và DevOps thông qua việc chuẩn hóa toàn bộ hạ tầng bằng Docker, Kubernetes và Terraform.