Xây Dựng Nền Tảng Quản Lý và Giám Sát Các Thiết Bị IoT

Chuyên khảo kỹ thuật phân tích Beebee xây dựng nền tảng quản lý và giám sát các thiết bị iot, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên cứu tiếp theo.

Trường đại học

Đại học Bách Khoa

Chuyên ngành

Khoa học máy tính

Người đăng

Ẩn danh

Thể loại

luận văn tốt nghiệp

2022

187
6
0

Phí lưu trữ

45 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

TÓM TẮT ĐỀ TÀI

TÓM TẮT CHƯƠNG

1. CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI

1.1. Tổng quan IoT (Internet of Things), hay còn gọi là Internet vạn vật, là một hệ thống các thiết bị tính toán, máy móc cơ khí và kỹ thuật số hoặc con người có liên quan với nhau và khả năng truyền dữ liệu qua mạng mà không yêu cầu sự...

1.2. Nội dung thực hiện

1.3. Ý nghĩa của đề tài

1.3.1. Ý nghĩa thực tiễn

1.3.2. Ý nghĩa khoa học, kỹ thuật

1.4. Giới hạn đề tài

2. CHƯƠNG 2: KIẾN THỨC NỀN TẢNG

2.1. Giao thức MQTT

2.2. Kiến trúc multi-tenant

2.3. JSON Web Token

2.4. HTTP-Only Cookies

2.5. Hash dữ liệu với salt

2.6. Công nghệ nền tảng

2.7. Hệ cơ sở dữ liệu PostgreSQL

2.8. Các API tích hợp

3. CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

3.1. Phân tích các hệ thống liên quan

3.2. Phân tích yêu cầu

3.3. Các loại người dùng trong hệ thống

3.4. Đặc tả Usecase

4. CHƯƠNG 4: THIẾT KẾ HỆ THỐNG

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

4.1.1. Thiết kế cơ sở dữ liệu dùng chung (schema public)

4.1.2. Thiết kế cơ sở dữ liệu cho khách hàng (schema tenant)

5. CHƯƠNG 5: HIỆN THỰC HỆ THỐNG

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

5.2. Quản lý mã nguồn Git - GitHub

5.3. Cấu trúc mã nguồn

5.3.1. Ứng dụng di động

5.4. Giao diện website

5.5. Giao diện ứng dụng di động

5.5.1. Giao diện ứng dụng của admin

5.5.2. Giao diện ứng dụng của người dùng cuối

6. CHƯƠNG 6: KIỂM THỬ

6.1. Kiểm thử back-end

6.2. Kiểm thử ứng dụng di động

6.3. Kiểm thử front-end

7. CHƯƠNG 7: TRIỂN KHAI

7.1. Triển khai ứng dụng di động

7.2. Triển khai back-end

7.3. Triển khai front-end

8. CHƯƠNG 8: TỔNG KẾT, ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI

8.1. Tổng kết kết quả đạt được

8.1.1. Đối với nhiệm vụ đề tài

8.1.2. Đối với cơ sở lý thuyết và công nghệ

8.1.3. Đối với quy trình phát triển phần mềm

8.1.4. Đối với lợi ích thực tế

8.2. Đánh giá kết quả đạt được

8.3. Nhược điểm

8.4. Hướng phát triển đề tài

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Nền Tảng Quản Lý và Giám Sát Thiết Bị IoT

Nền tảng quản lý và giám sát thiết bị IoT đang trở thành một phần quan trọng trong việc tối ưu hóa quy trình sản xuất và quản lý dữ liệu. IoT không chỉ giúp kết nối các thiết bị mà còn cung cấp khả năng giám sát và điều khiển từ xa. Việc xây dựng một nền tảng hiệu quả cho IoT là cần thiết để đảm bảo tính khả thi và hiệu suất của các ứng dụng IoT trong thực tế.

1.1. Khái niệm về IoT và Nền Tảng Quản Lý

IoT (Internet of Things) là một mạng lưới các thiết bị kết nối với nhau, cho phép thu thập và chia sẻ dữ liệu. Nền tảng quản lý IoT giúp tổ chức và giám sát các thiết bị này, từ đó tối ưu hóa quy trình hoạt động.

1.2. Tầm quan trọng của Giám Sát Thiết Bị Thông Minh

Giám sát thiết bị thông minh giúp phát hiện sớm các vấn đề, giảm thiểu rủi ro và tối ưu hóa hiệu suất. Điều này đặc biệt quan trọng trong các lĩnh vực như sản xuất, y tế và giao thông.

II. Vấn đề và Thách thức trong Quản Lý Thiết Bị IoT

Mặc dù IoT mang lại nhiều lợi ích, nhưng cũng tồn tại nhiều thách thức trong việc quản lý và giám sát thiết bị. Các vấn đề như bảo mật, khả năng tương thích và quản lý dữ liệu lớn cần được giải quyết để đảm bảo hiệu quả của hệ thống.

2.1. Thách thức về Bảo Mật Thiết Bị IoT

Bảo mật thiết bị IoT là một trong những thách thức lớn nhất. Các thiết bị thường dễ bị tấn công, dẫn đến rò rỉ dữ liệu và mất kiểm soát hệ thống.

2.2. Khó khăn trong Quản Lý Dữ Liệu Lớn

Quản lý dữ liệu lớn từ hàng triệu thiết bị IoT đòi hỏi các giải pháp hiệu quả để xử lý và phân tích dữ liệu, nhằm đưa ra quyết định kịp thời.

III. Phương Pháp Xây Dựng Nền Tảng Quản Lý IoT Hiệu Quả

Để xây dựng một nền tảng quản lý và giám sát thiết bị IoT hiệu quả, cần áp dụng các phương pháp và công nghệ tiên tiến. Việc sử dụng kiến trúc multi-tenant và các giao thức giao tiếp hiện đại là rất quan trọng.

3.1. Kiến Trúc Multi Tenant trong Nền Tảng IoT

Kiến trúc multi-tenant cho phép nhiều người dùng cùng sử dụng một nền tảng mà không làm ảnh hưởng đến hiệu suất của nhau. Điều này giúp tiết kiệm chi phí và tối ưu hóa tài nguyên.

3.2. Sử Dụng Giao Thức MQTT cho Giao Tiếp

Giao thức MQTT là một trong những giao thức phổ biến nhất trong IoT, cho phép truyền tải dữ liệu nhẹ nhàng và hiệu quả giữa các thiết bị.

IV. Ứng Dụng Thực Tiễn của Nền Tảng Quản Lý IoT

Nền tảng quản lý và giám sát thiết bị IoT đã được áp dụng rộng rãi trong nhiều lĩnh vực như sản xuất, nông nghiệp thông minh và y tế. Các ứng dụng này không chỉ giúp tiết kiệm chi phí mà còn nâng cao hiệu quả công việc.

4.1. Ứng Dụng trong Ngành Sản Xuất

Trong ngành sản xuất, nền tảng IoT giúp giám sát quy trình sản xuất, phát hiện lỗi và tối ưu hóa hiệu suất máy móc.

4.2. Nông Nghiệp Thông Minh với IoT

IoT trong nông nghiệp giúp theo dõi điều kiện thời tiết, độ ẩm đất và sức khỏe cây trồng, từ đó đưa ra quyết định kịp thời cho nông dân.

V. Kết Luận và Tương Lai của Nền Tảng Quản Lý IoT

Nền tảng quản lý và giám sát thiết bị IoT đang phát triển mạnh mẽ và hứa hẹn sẽ mang lại nhiều giá trị cho các doanh nghiệp. Tương lai của IoT sẽ còn nhiều tiềm năng với sự phát triển của công nghệ và nhu cầu ngày càng cao từ thị trường.

5.1. Tương Lai của Công Nghệ IoT

Công nghệ IoT sẽ tiếp tục phát triển với sự xuất hiện của các thiết bị mới và các ứng dụng thông minh, mở ra nhiều cơ hội cho doanh nghiệp.

5.2. Định Hướng Phát Triển Nền Tảng IoT

Định hướng phát triển nền tảng IoT sẽ tập trung vào việc cải thiện bảo mật, khả năng mở rộng và tích hợp với các công nghệ mới như AI và Big Data.

08/07/2025
Beebee xây dựng nền tảng quản lý và giám sát các thiết bị iot

Trích đoạn nội dung tài liệu

Chương 1 Giới thiệu đề tài 1.1 Tổng quan IoT (Internet of Things), hay còn gọi là Internet vạn vật, là một hệ thống các thiết bị tính toán, máy móc cơ khí và kỹ thuật số hoặc con người có liên quan với nhau và khả năng truyền dữ liệu qua mạng mà không yêu cầu sự tương tác giữa con người với máy tính. IoT giúp công việc và đời sống mọi người trở nên thuận tiện và hiệu quả hơn. Việc áp dụng IoT giúp các doanh nghiệp có thể kiểm soát hoàn toàn hệ thống của họ, tự động hóa các quy trình và giảm thiểu chi phí lao động, cung cấp thông tin chi tiết về mọi thứ, từ hiệu suất của máy móc đến chuỗi cung ứng và hoạt động hậu cần. Nhận thấy tiềm năng phát triển cũng như sự cần thiết đó, chúng tôi đã lên ý tưởng và thực hiện đề tài phát triển một phần mềm dịch vụ (Software as a Service) cung cấp giải pháp giám sát và quản lý các thiết bị IoT.

Ứng dụng cho phép khách hàng đăng ký tạo workspace để quản lý hệ thống IoT của từng cá nhân, tổ chức. Trong đó, workspace là một không gian làm việc chứa dữ liệu của một hệ thống IoT và được cô lập với các workpsace khác. Để thực hiện điều này, chúng tôi sử dụng kiến trúc multi-tenant để xây dựng cơ sở dữ liệu. Qua đó, giúp ứng dụng có khả năng thiết lập và khả cấu hình cho các mục đích khác nhau của khách hàng.

Ứng dụng cung cấp giải pháp quản lý và giám sát mô hình thiết bị IoT gồm các chức năng sau: • Đối với website: 17 Trường Đại Học Bách Khoa, Đại Học Quốc Gia TPHCM Khoa Khoa Học & Kỹ Thuật Máy Tính - Quản lý workspace • Đối với ứng dụng di động: - Quản lý dự án - Quản lý nhóm thiết bị - Quản lý loại thiết bị - Quản lý MQTT broker - Quản lý thiết bị - Quản lý cảnh báo - Quản lý lập lịch - Quản lý bảng điều khiển - Quản lý tài khoản người dùng 1.2 Nội dung thực hiện BeeBee là một hệ thống gồm website quản trị và ứng dụng di động cho phép khách hàng quản lý, giám sát các thiết bị IoT. Để xây dựng một hệ thống như vậy, chúng tôi đã nghiên cứu và thực hiện những nội dung sau: • Nghiên cứu các hệ thống tương tự • Nghiên cứu kiến trúc multi-tenant để áp dụng vào hệ thống • Nghiên cứu các công nghệ nền tảng dùng để hiện thực hệ thống • Thiết kế giao diện thân thiện với người dùng • Hiện thực và kiểm thử hệ thống • Triển khai và đánh giá hệ thống đã hiện thực • Hoàn thiện báo cáo về đề tài đã thực hiện Luận Văn Tốt Nghiệp Page 18/183 Trường Đại Học Bách Khoa, Đại Học Quốc Gia TPHCM Khoa Khoa Học & Kỹ Thuật Máy Tính 1.3 Ý nghĩa của đề tài 1.1 Ý nghĩa thực tiễn Hệ thống được xây dựng hướng tới các lợi ích cho doanh nghiệp: • Triển khai nhanh chóng các dự án IoT • Cung cấp cái nhìn tổng thể đối với các dự án • Đảm bảo tính an toàn và riêng tư cho dữ liệu 1.2 Ý nghĩa khoa học, kỹ thuật Xây dựng hệ thống BeeBee là cơ hội để chúng tôi tìm hiểu về các công nghệ được sử dụng trong dự án IoT như giao thức MQTT. Để xây dựng hệ thống, chúng tôi đã tổng hợp, áp dụng các kiến thức đã học về cơ sở dữ liệu, kiến trúc hệ thống; tìm hiểu và làm việc với các công nghệ phổ biến hiện nay như Next.js để phát triển website, Flutter để phát triển ứng dụng di động, thư viện shelf của Dart để phát triển back-end. Đây cũng là cơ hội để chúng tôi nâng cao khả năng tự học, kỹ năng tìm hiểu kiến thức mới, kỹ năng giải quyết các vấn đề phát sinh khi hiện thực và triển khai hệ thống.4 Giới hạn đề tài Trong quá trình xây dựng hệ thống, chúng tôi chỉ tập trung vào việc quản lý các thiết bị IoT sử dụng giao thức MQTT.

Các MQTT broker sẽ do khách hàng tự triển khai trước đó hoặc sử dụng các dịch vụ có sẵn. Ngoài ra, hệ thống chưa cung cấp một số chức năng sau đây: • Cài đặt nâng cao cho MQTT broker như chứng chỉ SSL • Hỗ trợ các giao thức khác như HTTP, LoRaWAN • Thiết lập quyền hạn cụ thể cho tài khoản người dùng trong workspace Luận Văn Tốt Nghiệp Page 19/183 Trường Đại Học Bách Khoa, Đại Học Quốc Gia TPHCM Khoa Khoa Học & Kỹ Thuật Máy Tính • Đồng bộ hóa thời gian thực dữ liệu khi thông tin các đối tượng trong cơ sở dữ liệu thay đổi Bởi vì giới hạn về nhân lực và thời gian hiện thực, chúng tôi sẽ phát triển những chức năng này trong tương lai. Luận Văn Tốt Nghiệp Page 20/183 Chương 2 Kiến thức nền tảng 2.1 Giao thức MQTT MQTT (Message Queuing Telemetry Transport) [9] được công bố vào năm 1999 bởi IBM và EuroTech. MQTT hoạt động dựa trên mô hình Publish/Subscribe (hay còn gọi là pub/sub), sử dụng TCP/IP để truyền dữ liệu.

Mô hình pub/sub bao gồm các thành phần chính sau: • Broker: là một máy chủ giao tiếp với các thiết bị (publisher và subscriber) thông qua mạng Internet hoặc mạng cục bộ. Công việc của broker là lọc các tin nhắn dựa trên topic, sau đó phân phối các tin nhắn đến các thiết bị đã đăng ký topic đó. • Publisher: Là các thiết bị kết nối đến Broker để thực hiện việc gửi gói tin của một chủ đề (topic). • Subscriber: Là các thiết bị kết nối đến Broker để thực hiện việc nhận gói tin về một chủ đề mà thiết bị đó đã đăng ký theo dõi.

Publisher và subcriber có thể hoán đổi vai trò cho nhau, và đôi khi một thiết bị có thể đảm nhiệm cả hai vai trò cùng một lúc. Số lượng publisher và subscriber có thể bị giới hạn bởi khả năng xử lý của server. 21 Trường Đại Học Bách Khoa, Đại Học Quốc Gia TPHCM Khoa Khoa Học & Kỹ Thuật Máy Tính Quality of Service - QoS Giao thức MQTT có thể truyền dữ liệu ngay cả với các kết nối không ổn định. Nó cung cấp ba tùy chọn về Quality of Service (QoS) [14] để đảm bảo độ tin cậy trong việc gửi gói tin.

Việc lựa chọn tùy chọn phụ thuộc vào mức độ quan trọng của dữ liệu và độ ổn định của kết nối. • QoS 0 (Nhiều nhất một lần): Phía gửi gửi thông tin mà không yêu cầu xác nhận từ phía nhận. Do đó, phía nhận có thể nhận được thông tin một lần hoặc không nhận được do kết nối không ổn định. Đây là chế độ gửi nhanh nhất khi chỉ cần thực hiện 1 tương tác giữa hai bên, nhưng cũng là chế độ ít tin cậy nhất nên thường được sử dụng đối với các thông tin không quá quan trọng và kết nối ổn định.1: Cơ chế QoS 0 • QoS 1 (Ít nhất một lần): Phía gửi gửi thông tin cho đến khi nhận được xác nhận truyền tin thành công (PUBACK) từ phía nhận.

Do đó, chế độ này đảm bảo rằng thông tin sẽ được gửi đến phía nhận ít nhất một lần. Cụ thể, phía gửi sẽ truyền thông tin đến phía nhận và chờ xác nhận thành công. Sau một khoảng thời gian cố định, nếu vẫn chưa nhận được xác nhận từ phía nhận, phía nhận sẽ gửi lại thông tin một lần nữa với flag DUP (duplicate). QoS 1 đảm bảo rằng phía nhận có thể nhận được thông tin ít nhất một lần nên thường được sử dụng khi thông tin truyền tải là quan trọng và kết nối không ổn định.

Luận Văn Tốt Nghiệp Page 22/183 Trường Đại Học Bách Khoa, Đại Học Quốc Gia TPHCM Khoa Khoa Học & Kỹ Thuật Máy Tính Hình 2.2: Truyền gói tin thành Hình 2.4: Thất lạc gói tin Hình 2.3: Thất lạc tin nhắn công ACK • QoS 2 (Duy nhất một lần): Đây là chế độ có độ tin cậy cao nhất khi đảm bảo rằng phía nhận chỉ nhận thông tin duy nhất một lần. Tuy nhiên QoS 2 cũng tốn nhiều thời gian nhất bởi nó bao gồm ít nhất 4 luồng gửi/nhận để hoàn tất việc truyền thông tin. Đầu tiên phía gửi gửi một tin nhắn và chờ xác nhận từ phía nhận. Sau đó, phía nhận sẽ lưu ID của tin nhắn và gửi gói tin PUBREC đến phía nhận.

Khi nhận được gói tin PUBREC, phía gửi sẽ gửi tiếp gói tin PUBREL chứa thông tin chính cần gửi và chờ gói tin PUBCOMP từ phía nhận để kết thúc quá trình. Các sơ đồ sau đây minh họa quá trình truyền nhận theo chế độ QoS 2 đối với các trường hợp khác nhau. Cần chú ý rằng tin nhắn chỉ được xử lý duy nhất một lần ở phía nhận. Qua đó đảm bảo các nghiệp vụ tương ứng với thông tin chỉ được thực hiện một lần.

Luận Văn Tốt Nghiệp Page 23/183 Trường Đại Học Bách Khoa, Đại Học Quốc Gia TPHCM Khoa Khoa Học & Kỹ Thuật Máy Tính Hình 2.5: Truyền gói tin thành Hình 2.7: Thất lạc gói tin Hình 2.6: Thất lạc tin nhắn công PUBREC Hình 2.8: Thất lạc gói tin Hình 2.9: Thất lạc gói tin PUBREL PUBCOMP Ưu điểm • MQTT sử dụng gói tin có kích thước nhỏ, do đó có thể được sử dụng cho kết nối có băng thông thấp. Luận Văn Tốt Nghiệp Page 24/183 Trường Đại Học Bách Khoa, Đại Học Quốc Gia TPHCM Khoa Khoa Học & Kỹ Thuật Máy Tính • Một thiết bị có thể gửi dữ liệu đến máy chủ bất kỳ lúc nào bất kể trạng thái của nó. • Là giao thức có độ tin cậy cao khi có các tùy chọn QoS để chọn mức độ đảm bảo khi truyền nhận dữ liệu. • Có khả năng mở rộng cao nhờ sử dụng mô hình pub/sub, Nhược điểm • Tài nguyên hệ thống dành cho MQTT nó thay đổi theo số lượng Topic.

• MQTT không được mã hóa. Thay vào đó, nó sử dụng TLS (Transport Layer Security) / SSL (Secure Sockets Layer) để mã hóa bảo mật.2 Kiến trúc multi-tenant Kiến trúc multi-tenant là mô hình mà một ứng dụng duy nhất phục vụ nhiều khách hàng khác nhau. Trong đó, khách hàng, có thể là cá nhân hay tổ chức, được gọi là tenant. Mỗi tenant có khả năng tùy chỉnh một khía cạnh của ứng dụng như các thành phần giao diện.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Nền Tảng Quản Lý và Giám Sát Thiết Bị IoT: Giải Pháp Từ Sinh Viên Đại Học Bách Khoa" cung cấp cái nhìn sâu sắc về các giải pháp quản lý và giám sát thiết bị IoT, được phát triển bởi sinh viên Đại học Bách Khoa. Tài liệu này không chỉ nêu rõ các thách thức trong việc quản lý thiết bị IoT mà còn đề xuất các phương pháp hiệu quả để tối ưu hóa quy trình giám sát. Độc giả sẽ tìm thấy những lợi ích thiết thực từ việc áp dụng các giải pháp này, bao gồm cải thiện hiệu suất và độ tin cậy của hệ thống IoT.

Để mở rộng kiến thức về lĩnh vực này, bạn có thể tham khảo thêm tài liệu Luận văn thạc sĩ mật mã dòng trong mật mã nhẹ và triển vọng trong IoT, nơi khám phá các ứng dụng của mật mã trong IoT. Ngoài ra, tài liệu Luận văn thạc sĩ công nghệ Lora cho các ứng dụng IoT sẽ giúp bạn hiểu rõ hơn về công nghệ Lora và cách nó có thể được áp dụng trong các giải pháp IoT. Cuối cùng, tài liệu Luận văn nghiên cứu các nền tảng phân tích dữ liệu trong môi trường ảo cho hệ sinh thái Internet of Things sẽ cung cấp cái nhìn sâu sắc về phân tích dữ liệu trong môi trường IoT. Những tài liệu này sẽ giúp bạn có cái nhìn toàn diện hơn về các khía cạnh khác nhau của IoT và các giải pháp liên quan.