Please use this identifier to cite or link to this item:
https://dspace.ctu.edu.vn/jspui/handle/123456789/104580
Full metadata record
DC Field | Value | Language |
---|---|---|
dc.contributor.advisor | Nguyễn, Khắc Nguyên | - |
dc.contributor.author | NGUYỄN, Thanh Huy | - |
dc.date.accessioned | 2024-07-04T07:34:52Z | - |
dc.date.available | 2024-07-04T07:34:52Z | - |
dc.date.issued | 2023-12 | - |
dc.identifier.uri | https://dspace.ctu.edu.vn/jspui/handle/123456789/104580 | - |
dc.description.abstract | Hệ thống Server IoT trên nền tảng Raspberry Pi 4 ngày càng phát triển và phổ biến, đã và đang được ứng dụng rộng rãi trong đời sống. Nhằm đáp ứng nhu cầu về hệ thống Server IoT nhỏ gọn trên máy tính nhúng Raspberry Pi 4 và theo dõi cũng như điều khiển khiển thiết bị từ xa, đề tài thực hiện thiết kế xây dựng một hệ thống server IoT cơ bản đơn giản trên Raspberry Pi 4. Hệ thống tích hợp nhiều phần mềm trên Raspberry Pi 4 bằng Docker nhằm giảm thiểu sử dụng quá nhiều dung lượng của Raspberry Pi 4, hệ thống thực hiện được các chức năng như truyển tải dữ liệu qua lại giữa các thiết bị IoT bằng giao thức MQTT, nhận dữ liệu từ MQTT thực hiện lưu trữ và truy xuất dữ liệu bằng cơ sở dữ liệu InfluxDB, lập trình kết nối thiết kế Dashboard bằng Node-RED, có một giao diện Dashboard đơn giản dễ sử dụng và tích hợp Google Maps hiểu thị trực tiếp vị trí các trạm kết nối, dễ dàng theo dõi và biểu độ hiểu thị dữ liệu. Kết quả nghiên cứu xây dựng hoàn thành một hệ thống Server IoT cơ bản và đơn giản trong tương lai có thể ứng dụng thực tế. Từ khóa: Máy chủ IoT Raspberr Pi 4, Công nghệ IoT. | vi_VN |
dc.description.tableofcontents | Lời cảm tạ i Tóm tắt ii Abstract iii Lời cam đoan iv Danh mục hình viii Danh mục từ viết tắt xi Chương 1: Giới thiệu đề tài 1 1.1 Tổng quan đề tài 1 1.1.1 Sơ lược về Server IoT trên máy tính nhúng Raspberry Pi 4 1 1.1.2 Giới thiệu Raspberry Pi 4 3 1.1.3 Vai trò của Raspberry Pi 4 trong phát triển Sever IoT 4 1.2 Tình hình nghiên cứu 5 1.2.1 Trên thế giới: 5 1.2.2 Tại Việt Nam: 6 1.2.3 Tại Trường Đại Học Cần Thơ 6 1.3 Đặt vấn đề 7 1.4 Lý do thực hiện đề tài 7 1.5 Mục tiêu và phạm vi nghiên cứu 8 1.5.1 Mục tiêu nghiên cứu: 8 1.5.2 Phạm vi nghiên cứu: 8 Chương 2: Cơ sở lý thuyết 9 2.1 Giới thiệu về mô hình Server IoT trên Raspberry Pi 4 9 2.1.1 Giới thiệu về Docker 9 2.1.2 Các tính năng của Docker 10 2.1.3 Giới thiệu về Portainer 11 2.1.4 Các tính năng của Portainer 12 2.2 Giao thức truyền thông 13 2.2.1 Giao thức MQTT 13 2.2.2 Các tính năng của MQTT 14 2.3 Cơ sở dữ liệu (Databases) 14 2.3.1 Giới thiệu InfluxDB 14 2.3.2 Các tính năng của InfluxDB 15 2.4 Môi trường lập trình và dashboard 16 2.4.1 Môi trường lập trình Node-RED 16 2.4.2 Các tính năng của Node-RED 17 2.4.3 Thiết kế Dashboard trên Node-RED 18 Chương 3: Thực hiện 19 3.1 Mô hình hệ thống 20 3.2 Xây dựng Docker chứa các module phần mềm 20 3.2.1 Mục tiêu 20 3.2.2 Docker và các gói phần mềm 21 3.3 Xây dựng module giao tiếp với các Node cảm biến thông qua Gateway ………………………………………………………………………..24 3.3.1 Mô hình 24 3.3.2 Giải thuật và gói thông tin truyền thông 24 3.4 Xây dựng giao diện người dùng (Dashboard) 27 3.4.1 Chức năng giao diện 27 3.4.2 Liệt kê các giao diện và mô tả các tính năng 27 3.5 Xây dựng module lưu trữ dữ liệu 42 3.5.1 Mô hình lưu trữ 42 3.5.2 Cấu trúc dữ liệu lưu trữ 43 3.5.3 Lưu trữ và truy vấn dữ liệu từ InfluxDB lên Dashboard Node- RED 44 Chương 4: Kết quả 46 4.1 Kết quả thực tế về hệ thống 46 4.1.1 Docker và các container 46 4.2 Giao tiếp ổn định qua MQTT 46 4.3 Thu thập và lưu trữ liệu 47 4.4 Dashboard đơn giản dễ sử dụng 48 Chương 5: Kết luận 49 5.1.1 Kết luận 49 5.1.2 Ưu điểm 49 5.1.3 Nhược điểm 49 5.2 Hướng phát triển 50 Tài liệu tham khảo 51 Phụ lục 53 DANH MỤC HÌNH Hình 1. 1 Trang chủ Web Công ty TNHH KỸ THUẬT ĐIỆN VIỆT [1] 2 Hình 1. 2 Ví dụ về xử lý dữ liệu IoT [2]. 2 Hình 1. 3 Raspberry Pi 4 [3]. 4 Hình 2. 1 Mô hình tổng quan hệ thống [11]. 9 Hình 2. 2 Cấu trúc của Docker [12] 10 Hình 2. 3 Kiến trúc của Portainer [13] 12 Hình 2. 4 Nguyên lý hoạt động của MQTT [14]. 13 Hình 2. 5 Minh họa về ứng dụng InfluxDB [15] 15 Hình 2. 6 Node-RED trên raspberry Pi 4 [16] 17 Hình 2. 7 Node-RED Dashboard trên Raspberry Pi 4 [17] 19 Hình 3. 1 Mô hình hệ thống 20 Hình 3. 2 Cài đặt Docker lên Raspberry Pi 4 21 Hình 3. 3 Cài Docker-compose và kiểm tra phiên bản. 22 Hình 3. 4 Các module phần mềm chạy trên Docker 22 Hình 3. 5 Tệp Docker-compose.yml. 23 Hình 3. 6 Giao diện quản lý contianer bằng Portainer 23 Hình 3. 7 Mô hình kết nối cảm biến thông qua Raspberry Pi 4 24 Hình 3. 8 Xây dựng các nút kết nối MQTT trên Node-RED 25 Hình 3. 9 Xây dựng định dạng dữ liệu và truyền vào Database. 25 Hình 3. 10 Code Node Function cập nhật dữ liệu MQTT 26 Hình 3. 11 Thiết lập ở trạm kết nối. 27 Hình 3. 12 Giao diện đăng nhập. 28 Hình 3. 13 Luồng node giao diện đăng nhập. 28 Hình 3. 14 Cấu hình Node Form. 29 Hình 3. 15 Sơ đồ giải thật Node-function đăng nhập 29 Hình 3. 16 Code node Function đăng nhập 30 Hình 3. 17 Cấu hình node change. 30 Hình 3. 18 Code CSS giao diện đăng nhập. 31 Hình 3. 19 Chức năng node notification. 31 Hình 3. 20 Giao diện google map. 32 Hình 3. 21 Luồng node giao diện Google Maps. 32 Hình 3. 22 Cấu hình node inject. 33 Hình 3. 23 Code node Function điểm trên Maps. 33 Hình 3. 24 Luồng node tương tác với bản đồ Maps. 34 Hình 3. 25 Sơ đồ giải thuật node Function. 34 Hình 3. 26 Code node Function tương tác điểm. 35 Hình 3. 27 Cấu hình node change 35 Hình 3. 28 Giao diện khi bật nút swicth. 36 Hình 3. 29 Luồng node nút switch trên giao diện Google Maps. 36 Hình 3. 30 Cấu hình node switch. 37 Hình 3. 31 Chức năng node inject. 37 Hình 3. 32 Cấu hình các node chức năng swith. 38 Hình 3. 33 Chức năng node change ẩn hoặc hiểu thị Tap. 39 Hình 3. 34 Giao diện biểu đồ 39 Hình 3. 35 Luồng node biểu đồ 39 Hình 3. 36 Kích dữ liệu 1 lần và tự động kích. 40 Hình 3. 37 Code node Function chuyển đổi thời gian. 40 Hình 3. 38 Luồng node của nút Map. 41 Hình 3. 39 Luồng node ẩn bảng và hiểu thị bảng. 41 Hình 3. 40 Cấu hình node change 41 Hình 3. 41 Trang trí CSS bằng node template. 42 Hình 3. 42 Mô hình lưu trữ dữ liệu 43 Hình 3. 43 Sơ đồ cấu trúc dữ liệu lưu trữ 43 Hình 3. 44 Cấu hình lưu trữ vào InfluxDB. 44 Hình 3. 45 Truy cập container InfluxDB trên Raspberry Pi 4 45 Hình 3. 46 Truy xuất dữ liệu từ measurement 45 Hình 4. 1 Giao diện tạo container thực tế 46 Hình 4. 2 Truyển tải dữ liệu MQTT thực tế 47 Hình 4. 3 Lưu trữ thực tế trong InfluxDB. 47 Hình 4. 4 Cấu trúc lưu trữ thực tế trong các measurements 48 Hình 4. 5 Giao diện thực tế dashboard: (a) Giao diện đăng nhập; (b) Giao diện Google Maps; (c) Giao diện biểu đồ 48 | vi_VN |
dc.language.iso | vi | vi_VN |
dc.publisher | Trường Đại Học Cần Thơ | vi_VN |
dc.subject | Cơ điện tử | vi_VN |
dc.title | PHÁT TRIỂN SERVER IOT TRÊN NỀN TẢNG RASPBERRY PI 4 | vi_VN |
dc.type | Thesis | vi_VN |
Appears in Collections: | Trường Bách khoa |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
_file_ Restricted Access | 2.66 MB | Microsoft Word XML | ||
Your IP: 3.138.101.51 |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.