Xây dựng ứng dụng điều khiển đèn trên nền edge computing

33 23 1
Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trong thời đại kết nối Internet vạn vật (IoT), các thiết bị như xe hơi, ti vi, tủ lạnh, bóng đèn,... đều được kết nối Internet. Ước lượng mỗi ngày có hàng tỷ thiết bị kết nối IoT truyền và nhận dữ liệu, sinh ra một lượng dữ liệu khổng lồ. Như vậy, việc truyền dữ liệu lên tận Cloud để xử lý rồi trả lại kết quả có thể gây ra sự chậm trễ và ảnh hưởng đến tính an toàn của thông tin. Để giải quyết vấn đề này, điện toán biên (Edge Computing) ra đời. Edge Computing được đánh giá là một xu hướng tất yếu trong thời đại công nghệ IoT 4.0, được công ty phân tích Gartner dự báo là một trong mười xu hướng công nghệ sẽ tác động và chuyển đổi các ngành kinh tế từ nay tới năm 2023. Nhận thấy tiềm năng phát triển trong tương lai của công nghệ này, nhóm chọn đề tài nghiên cứu với mong muốn hiểu được cách hoạt động của Edge Computing và có thể áp dụng lâu dài sau này.

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN ĐẠI HỌC QUỐC GIA TPHCM  MÔN HỌC ĐỒ ÁN CHUYÊN NGÀNH Đề Tài Xây dựng ứng dụng điều khiển đèn Edge Computing Giáo viên hướng dẫn: Tiến Sĩ Lê Trung Quân Sinh viên thực hiện: Nguyễn Đình Thanh 16521119 Trương Thị Thanh Nhã 16520861 TP Hồ Chí Minh, 12/2019 MỤC LỤC I LÝ DO CHỌN ĐỀ TÀI II GIỚI THIỆU CÔNG NGHỆ .3 Edge Computing 1.1 Edge Computing gì? 1.2 Lợi ích Edge Computing Mimik 2.1 Backend Service 2.2 EdgeSDK .7 2.3 Microservices III CÁC MODULES SỬ DỤNG Tổng quan kịch hệ thống 1.1 Ứng dụng edgeLight Android .9 1.2 edgeSDK microservice điện thoại Android 13 1.3 edgeSDK microservice Raspberry Pi 18 1.4 Ứng dụng xử lý bật/tắt đèn Raspberry Pi 24 IV DEMO .26 Kiểm tra microservices 26 V MỞ RỘNG VÀ HƯỚNG PHÁT TRIỂN 32 Tính bảo mật kiến trúc Edge Computing 32 Hướng phát triển 33 VI TÀI LIỆU THAM KHẢO .33 I LÝ DO CHỌN ĐỀ TÀI Trong thời đại kết nối Internet vạn vật (IoT), thiết bị xe hơi, ti vi, tủ lạnh, bóng đèn, kết nối Internet Ước lượng ngày có hàng tỷ thiết bị kết nối IoT truyền nhận liệu, sinh lượng liệu khổng lồ Như vậy, việc truyền liệu lên tận Cloud để xử lý trả lại kết gây chậm trễ ảnh hưởng đến tính an tồn thơng tin Để giải vấn đề này, điện tốn biên (Edge Computing) đời Edge Computing đánh giá xu hướng tất yếu thời đại công nghệ IoT 4.0, cơng ty phân tích Gartner dự báo mười xu hướng công nghệ tác động chuyển đổi ngành kinh tế từ tới năm 2023 Nhận thấy tiềm phát triển tương lai cơng nghệ này, nhóm chọn đề tài nghiên cứu với mong muốn hiểu cách hoạt động Edge Computing áp dụng lâu dài sau II GIỚI THIỆU CÔNG NGHỆ Edge Computing 1.1 Edge Computing gì? Edge Computing (điện tốn biên) mạng lưới trung tâm xử lý lưu trữ liệu cục trước liệu gửi đến Data Center (trung tâm liệu) đưa lên Cloud (đám mây) Dữ liệu tính toán để xử lý biên hệ thống mạng Hình 1: Mơ hình truyền liệu từ thiết bị IoT đến Edge Computing đến Cloud, Data Center 1.2 Lợi ích Edge Computing + Tốc độ (Speed): Dữ liệu xử lý thiết bị, giúp cải thiện tốc độ xử lý gửi tất liệu lên Cloud đợi Cloud xử lý trả + Bảo mật (Security): Với Cloud Computing, liệu phải truyền đến Data Center/Cloud để xử lý Như vậy, kẻ cơng bắt gói tin đường truyền Với Edge Computing, liệu nhạy cảm, quan trọng xử lý thiết bị mà chưa phải gửi đi, góp phần bảo vệ liệu + Độ tin cậy (Reliable): Các thiết bị Edge đặt cạnh thiết bị IoT đặt trung tâm liệu gần đó, có khả lưu trữ xử lý liệu cục bộ, đảm bảo thành phần tiếp tục làm việc bình thường liệu không bị kết nối Internet + Giảm chi phí (Cost-Effective): Việc hàng tỷ thiết bị IoT kết nối vào mạng, từ truyền tất lượng liệu khổng lồ đến Cloud tốn dung lượng băng thông đáng kể, đồng nghĩa chi phí đường truyền cao Edge Computing cho phép người dùng định dịch vụ nào, liệu xử lý lưu trữ cục bộ, liệu gửi lên Cloud + Khả mở rộng (Scalability): Edge Computing cho phép bổ sung thêm thiết bị Edge nhu cầu kết nối thiết bị IoT tăng, băng thông tăng lên không đáng kể Hình 2: Sự phát triển Cloud tương lai Mimik Mimik hệ thống đầu cuối tạo thành từ thành phần: + Bộ công cụ hỗ trợ phát triển Mimik (Mimik edge-Software Development Kit - edgeSDK) + Dịch vụ phụ trợ Mimik (backend service) + Một số dịch vụ siêu nhỏ (microservice) 2.1 Backend Service Mimik Backend Service nằm Cloud, có nhiệm vụ cung cấp dịch vụ cần thiết để hỗ trợ Edge nodes (nút biên) thông qua Edge Cloud Một Edge Cloud tập hợp nodes (hay thiết bị) với ID node phạm vi tồn cầu Mimik Backend Service có thành phần chính: • mDS (mimik Global Discovery Service) • mSS (mimik Signaling Service) • SEP (Signaling End-Point) • BEP (Bearer End-Point) • IS (Identity Service) 2.1.1 mDS mSS Các phần mDS mSS vừa đặt Backend, vừa đặt Egde node MDS làm nhiệm vụ quản lý cluster MSD nắm giữ đầy đủ thông tin lưu trữ node cluster: thông tin, tình trạng cluster; thơng tin chi tiết, vị trí, dịch vụ có sẵn nodes cluster Khi có node muốn đăng ký vào cluster, node phải đăng ký với supernode, sau supernode gửi thông báo đến mDS Để tiết kiệm băng thông, supernode gửi cập nhật tới mDS có thay đổi xảy cluster Một chức quan trọng khác mDS kiểm tra tính tiếp cận supernode Khi supernode đứng sau tường lửa, mDS hay nodes lớp mạng khác lắng nghe tín hiệu từ supernode Trong trường hợp này, mDS gửi yêu cầu đến mSS để tạo kết nối SEP Như vậy, mSS làm nhiệm vụ tạo kết nối SEP BEP cho cluster i Phân chia phạm vi nodes Các nodes Edge Computing phân chia làm phạm vi: + Có tài khoản người dùng (user account): nodes đăng ký tài khoản ID + Có lớp mạng (network): nodes cluster nằm lớp mạng + Lân cận (proximity): nodes lớp mạng khác khu vực địa lý Hình 3: Ví dụ cách phân chia phạm vi nodes 2.1.2 SEP BEP SEP dùng để gửi tín hiệu kết nối Sau kết nối thành công, liệu truyền qua BEP SEP BEP triển khai dựa tham số thời gian tồn tại, số lượng kết nối đồng thời giao thức truyền thơng (HTTP, SSH, Web socket UDP tunnel) Ví dụ hình 4, giả sử người dùng có thiết bị (node) đăng ký: node cluster node cluster Mimik cung cấp SEP cho node Node dùng SEP để giao tiếp trực tiếp với node Sau tín hiệu node thiết lập thành công, liệu truyền node nhờ vào BEP Tóm lại, bước để node người dùng khác lớp mạng giao tiếp với nhau: + Gửi yêu cầu đến supernode để nhận thông tin nodes phạm vi + Xác định node muốn kết nối với thông tin tín hiệu từ node + Gửi tín hiệu kết nối đến node muốn kết nối thông qua SEP + Node bên sau nhận tín hiệu, gửi lại yêu cầu kết nối BEP cho node gửi + Hai nodes kết nối truyền liệu thơng qua BEP Hình 4: Tìm, kết nối, giao tiếp thiết bị UID (user ID) 2.1.3 IS Mimik sử dụng phần mềm nhận dạng bên thứ ba - phần mềm dịch vụ (software as a service – SaaS), dựa chuẩn OAuth2.0 Mimik sử dụng token để định danh Token giúp xác minh thông tin đăng nhập, người dùng hợp pháp cấp quyền truy cập vào Backend service Các đối tượng cần dùng đến token là: edgSDK, microservice sử dụng edgSDK, người phát triển ứng dụng sử dụng edgSDK người dùng EdgeSDK Bộ công cụ hỗ trợ phát triển Mimik (Mimik edge-Software Development Kit edgeSDK) tập hợp thư viện API tương ứng Mimik EdgeSDK nằm hệ điều hành người dùng cuối Một thiết bị cài đặt edgeSDK trở thành Cloud Edge Node (đám mây biên) nút mạng thông minh Hiểu đơn giản, edgeSDK giúp mở rộng Cloud vị trí biên cung cấp containers để chạy microservices thiết bị 2.2 EdgeSDK chạy thiết bị di động, cổng cố định (fixed gateway), xe hơi, ti vi thơng minh chí trung tâm Cloud, tùy thuộc vào trường hợp sử dụng ứng dụng Mỗi cluster có supernode Supernode chịu trách nhiệm mang thơng tin liên quan đến cluster tất nút thành viên Ngồi ra, supernode cịn gán vai trò proxy cục hay nhớ đệm cục cho node khác cluster EdgeSDK hỗ trợ cho node người dùng, nhiều microservices nhiều nhà cung cấp ứng dụng Hình 5: Các thành phần Mimik edgeSDK Các thành phần Mimik edgeSDK bao gồm: + Network + Webserver + Container manager Microservices Mimik cung cấp dịch vụ siêu nhỏ (microservices) có sẵn khác tùy vào nhu cầu người dùng Ngoài ra, người dùng tự xây dựng microservices riêng 2.3 III CÁC MODULES SỬ DỤNG Tổng quan kịch hệ thống Mơ hình đồ án nhóm gồm modules chính:  Ứng dụng bật/tắt đèn điện thoại  edgeSDK microservice điện thoại Android  edgeSDK microservice Raspberry Pi  Ứng dụng xử lý bật/tắt đèn Raspberry Pi Hình 6: Mơ hình ứng dụng điều khiển đèn edge computing Các bước hoạt động: • Điện thoại Raspberry Pi lấy accesstoken từ mimik IS triển khai microservices • Ứng dụng gửi tín hiệu đến edgeSDK điện thoại • edgeSDK điện thoại gửi tín hiệu trực tiếp đến edgeSDK Raspberry Pi • edgeSDK Raspberry Pi gửi tín hiệu đến ứng dụng xử lý bật tắt đèn Ứng dụng edgeLight Android 1.1.1 Mơ hình dự kiến Sử dụng thư viện edgeSDK-android-app-ops để thực định nghĩa hàm xử lý kiện với edgeSDK 1.1 Sử dụng thư viện edgeSDK-android-app-auth để kết nối điện thoại với mimik Identity Service lấy accesstoken 1.1.2 Hiện thực Xử lý kiện nút ‘start’ để khởi động edgeSDK cài sẵn điện thoại Xử lý kiện nút ‘info’ để lấy thông tin edgeSDK thiết bị 10 1.3.2 Hiện thực Viết API để mIoT xử lý tín hiệu từ điện thoại 19   Các API chờ GET Request từ điện thoại Tuỳ vào tín hiệu bật hay tắt đèn, API tiếp tục tạo HTTP request tới web server dựng lên module điều khiển LED Đóng gói thành image Docker 20  File script ‘build.sh’ sử dụng Docker để đóng gói theo liệu từ Dockerfile Kết nối Raspberry Pi với mimik Identity Service 21  Tạo request tới http://localhost:8083/ws/edge-service-api/v1 để lấy kết nối tài khoản Dùng ‘access token’ để đưa image ‘iot-v1.tar’ lên edgeSDK 22 (Nếu có accessTonken, ta triển khai HTTP Request) Dùng image triển khai container edgeSDK Tạo request đến http://localhost:8083/mcm/v1/containers 1.4 Ứng dụng xử lý bật/tắt đèn Raspberry Pi 1.4.1 Mơ hình dự kiến 23 Raspberry Pi: Sử dụng Raspberr Pi thiết bị cần thiết để lắp mạch hình vẽ: Hình 7: Cắm mạch Raspberry Pi kết nối đèn LED  Chân dương LED kết nối trực tiếp với cổng GPIO  Chân âm LED kết nối với cổng GND thông qua điện trở 220V - Sử dụng module ‘ http’ để tạo HTTP Server để lắng nghe tín hiệu điều khiển - Sử dụng module ‘url ’ để đọc tín hiệu từ HTTP Request - Sử dụng module ‘onoff ’ để Raspberry Pi tương tác với LED 1.4.2 Hiện thực Dựng Web Server để lắng nghe tín hiệu từ edgeSDK 24 Raspberry Pi tương tác với Led qua module ‘onoff’ Lọc tách tín hiệu từ HTTP request điều khiển đèn LED Đoạn mã hoàn chỉnh: 25 IV DEMO Kiểm tra microservices Kết nối Raspberry Pi với tài khoản Gửi image lên egdeSDK 26 Triển khai container Kiểm tra API ‘/test’ gửi liệu lên Webhook 27 Tạo request đến edgeSDK ‘curl’ Dữ liệu gửi lên Webhook 28 Kiểm tra kết hợp module bật/tắt đèn từ microservices Lắp đèn theo mơ hình chuẩn bị Kiểm tra API ‘/lighton’ ‘/lightoff’ edgeSDK 29 Tạo HTTP Request tới API ‘/lighton’ Kết ‘/lighton’ 30 Tạo HTTP Request tới API ‘/lightoff’ Kết ‘/lightoff’ 31 V MỞ RỘNG VÀ HƯỚNG PHÁT TRIỂN Tính bảo mật kiến trúc Edge Computing Hình 8: Ba cấp độ bảo mật kiến trúc Edge Computing Kiến trúc Edge Computing có cấp độ bảo mật:  Cấp độ 1: Mã hóa đường truyền Giao tiếp nodes thường với supernode mã hóa AES thơng qua giao thức HTTP  Cấp độ 2: Mã hóa tải trọng Các nodes đăng ký tài khoản user account mã hóa tải trọng AES  Cấp độ 3: Chứng thực token 32 Ứng dụng đăng ký phải sử dụng token để thực lệnh gọi API đến edgeSDK Hướng phát triển Các ngành cơng nghiệp có tiềm phát triển mạnh tương lai nhờ vào công nghệ Edge Computing ngành sử dụng phát triển số lượng lớn thiết bị IoT như: + Du lịch, vận tải cung ứng + Năng lượng: ví dụ: sử dụng cảm biến để phát nước bị rị rỉ, + Sức khỏe: ví dụ: thiết bị đeo theo dõi nhịp tim, hay robot hỗ trợ phẫu thuật – cần xác tối đa thời gian cách xử lý,… + Bán lẻ: ví dụ: phịng thử đồ thơng minh – người mua không cần thử đồ theo cách truyền thống, + Tiện ích Hình 9: Ước lượng tiềm phát triển tương lai Edge Computing VI TÀI LIỆU THAM KHẢO [1] Mimik-and-smart-manufacturing-March-15-2018.pdf [2] Edge-computing-dien-toan-bien-cong-nghe-moi-trong-thoi-dai-iot.html 33 ... Ứng dụng gửi tín hiệu đến edgeSDK điện thoại • edgeSDK điện thoại gửi tín hiệu trực tiếp đến edgeSDK Raspberry Pi • edgeSDK Raspberry Pi gửi tín hiệu đến ứng dụng xử lý bật tắt đèn Ứng dụng edgeLight... edgeSDK microservice điện thoại Android  edgeSDK microservice Raspberry Pi  Ứng dụng xử lý bật/tắt đèn Raspberry Pi Hình 6: Mơ hình ứng dụng điều khiển đèn edge computing Các bước hoạt động: • Điện... nghiên cứu với mong muốn hiểu cách hoạt động Edge Computing áp dụng lâu dài sau II GIỚI THIỆU CÔNG NGHỆ Edge Computing 1.1 Edge Computing gì? Edge Computing (điện tốn biên) mạng lưới trung tâm

Ngày đăng: 14/12/2021, 21:44

Hình ảnh liên quan

Hình 3: Ví dụ về cách phân chia phạm vi các nodes - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Hình 3.

Ví dụ về cách phân chia phạm vi các nodes Xem tại trang 6 của tài liệu.
Hình 4: Tìm, kết nối, giao tiếp giữa 2 thiết bị cùng một UID (user ID) - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Hình 4.

Tìm, kết nối, giao tiếp giữa 2 thiết bị cùng một UID (user ID) Xem tại trang 7 của tài liệu.
Hình 5: Các thành phần chính của Mimik edgeSDK - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Hình 5.

Các thành phần chính của Mimik edgeSDK Xem tại trang 8 của tài liệu.
Hình 6: Mô hình ứng dụng điều khiển đèn trên nền edge computing - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Hình 6.

Mô hình ứng dụng điều khiển đèn trên nền edge computing Xem tại trang 9 của tài liệu.
1.3.1. Mô hình dự kiến - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

1.3.1..

Mô hình dự kiến Xem tại trang 18 của tài liệu.
Hình 7: Cắm mạch Raspberry Pi 2 kết nối đèn LED - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Hình 7.

Cắm mạch Raspberry Pi 2 kết nối đèn LED Xem tại trang 24 của tài liệu.
Lắp đèn theo mô hình đã chuẩn bị. - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

p.

đèn theo mô hình đã chuẩn bị Xem tại trang 29 của tài liệu.
Hình 8: Ba cấp độ bảo mật trong kiến trúc Edge Computing - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Hình 8.

Ba cấp độ bảo mật trong kiến trúc Edge Computing Xem tại trang 32 của tài liệu.
V. MỞ RỘNG VÀ HƯỚNG PHÁT TRIỂN - Xây dựng ứng dụng điều khiển đèn trên nền edge computing
V. MỞ RỘNG VÀ HƯỚNG PHÁT TRIỂN Xem tại trang 32 của tài liệu.
Hình 9: Ước lượng tiềm năng phát triển trong tương lai của Edge Computing - Xây dựng ứng dụng điều khiển đèn trên nền edge computing

Hình 9.

Ước lượng tiềm năng phát triển trong tương lai của Edge Computing Xem tại trang 33 của tài liệu.

Mục lục

    I. Lý do chọn đề tài

    II. Giới thiệu công nghệ

    1.1. Edge Computing là gì?

    1.2. Lợi ích của Edge Computing

    III. Các modules sử dụng

    1. Tổng quan kịch bản hệ thống

    1.1. Ứng dụng edgeLight trên Android

    1.2. edgeSDK và microservice trên điện thoại Android

    Sau khi ấn nút ‘Start’

    Nút ‘Login and associate’

Tài liệu cùng người dùng

Tài liệu liên quan