« Home « Kết quả tìm kiếm

Nghiên cứu kiến trúc và các dịch vụ nền tảng mạng xã hội ứng dụng cho internet of things


Tóm tắt Xem thử

- 51 Hình 3.3: Quản lý thiết bị trong SIoT.
- 57 Hình 3.6: Quy trình khai báo và đăng ký một thiết bị.
- 8: Sơ đồ use case truy xuất dữ liệu, quản lý thiết bị.
- 56 3.2.4 Truy xuất dữ liệu, điều khiển thiết bị.
- Ngày nay công nghệ ngày càng phát triển, mọi đồ vật đều có thể kết nối đến internet (Internet of Things) do đó các thiết bị điện tử cũng đều có những thông tin riêng.
- Xuất phát từ yêu cầu đó tôi lựa chọn đề tài ―Nghiên cứu kiến trúc và các dịch vụ nền tảng mạng xã hội ứng dụng cho Internet of Things‖ tập chung xây dựng một mạng xã hội dành cho các thiết bị, là nơi các thiết bị điện tử chia sẻ, cập nhật thông tin dưới sự quản lý của con người - người sở hữu các thiết bị.
- Phải đến gần đây, với sự phát triển như vũ bão của các ứng dụng Intetnet kết nối các thiết bị/đồ vật (Internet of things - IoT), mạng xã hội kết nối các thiết bị (Social Internet of things - SIoT) mới ra đời [1].
- Trong đó, SIoT là một mạng xã hội dành cho các thiết bị nhằm cung cấp môi trường để người sử dụng có thể quản lý thiết bị từ xa, tìm các dịch vụ cho các thiết bị mà họ có, đồng thời cung cấp API để nhà phát triển có thể khai thác và cung cấp các tiện ích dựa trên các thông tin được các thiết bị chia sẻ [1].
- Khi tham gia vào mạng, nhà phát triển được khai thác, sử dụng API, tài nguyên của hệ thống, được quảng bá ứng dụng trên các thiết bị đến người dùng.
- Bên cạnh đó, các thông tin của nhiều thiết bị của người dùng có thể được kết hợp với nhau để nhà phát triển khai thác tạo nên những ứng dụng, thiết bị tự động hóa, hiện đại.
- Người dùng có thể quản lý được các thiết bị của mình từ xa, có thể tìm kiếm thêm dịch vụ cho các thiết bị mà mình đang có.
- Thiết bị trở nên hữu ích hơn với người sử dụng do các thông tin mà nó thu thập được khai thác triệt để, đem lại nhiều lợi ích về kinh tế, xã hội.
- Hay hiểu một cách đơn giản IoT 15 là tất cả các thiết bị có thể kết nối với nhau.
- Các thiết bị giữa các network có thể tương tác với nhau nhờ vào sự liên kết của các network.
- Quy mô lớn: Sẽ có một số lượng rất lớn các thiết bị được quản lý và giao tiếp với nhau.
- 16 Số lượng các thông tin được truyền bởi thiết bị sẽ lớn hơn nhiều so với được truyền bởi con người.
- Điều này cần thiết để mạng có thể thích ứng với các lĩnh vực ứng dụng khác nhau, môi trường truyền thông khác nhau, và nhiều loại thiết bị khác nhau.
- Đã có hàng tỷ thiết bị IoT xuất hiện trên thế giới và con số này tiếp tục tăng nhanh nên chúng ta cần kiến trúc có thể mở rộng (scalable.
- Các thiết bị IoT có thể không có giao diện người dùng (UI), sử dụng hàng ngày nên cần hỗ trợ cập nhật tự động và quản lý được từ xa.
- 18 - Hầu hết thiết bị IoT dùng để thu thập và phân tích dữ liệu cá nhân.
- Vì vậy, cần có mô hình quản lý định danh và điều khiển truy nhập cho các thiết bị IoT cũng như cách xuất bản, sử dụng những dữ liệu này.
- 1.3.3.1 Phân loại thiết bị IoT và phương thức kết nối Internet Các thiết bị IoT rất đa dạng nhưng có thể phân thành ba loại chủ yếu, xét theo kích cỡ.
- Những thiết bị này có thể đóng vai trò gateway hoặc cầu (bridge) cho các thiết bị nhỏ hơn.
- Có một số giải pháp kết nối giữa thiết bị với Internet hoặc gateway.
- Kết nối và giao tiếp Các giao thức hiện tại như HTTP có vị trí rất quan trọng trong nhiều thiết bị.
- Khả năng ngắt kết nối với thiết bị hỏng hoặc bị đánh cắp.
- Khả năng cập nhật phần mềm trên thiết bị.
- Xác định vị trí thiết bị mất cắp.
- Xóa dữ liệu bảo mật khỏi thiết bị mất cắp.
- Kiến trúc tham chiếu được thiết kế để quản lý số lượng lớn 21 thiết bị.
- Tính khả mở (scalability) Bất kỳ kiến trúc phía máy chủ (server-side) nào đều cần tính khả mở cao, có thể hỗ trợ hàng triệu thiết bị liên tục gửi, nhận và hoạt động dựa trên dữ liệu.
- Các thiết bị IoT thường thu thập dữ liệu có tính cá nhân cao và đưa lên Internet (và ngược lại).
- Đó có thể chỉ đơn giản là việc mở các cổng trên thiết bị.
- Những nguy cơ riêng từ chính bản thân thiết bị IoT, nhất là phần cứng.
- Có thể cập nhật, thay đổi chính sách truy nhập mà không cần lập trình lại hay chỉnh sửa thiết bị.
- Có 2 lớp theo chiều dọc là quản lý thiết bị và quản lý định danh & truy nhập.
- Lớp Truyền thông (Communications) Lớp truyền thông hỗ trợ kết nối các thiết bị.
- Vì đó là giao thức dựa trên ký tự đơn giản nên nhiều thiết bị nhỏ như bộ điều khiển 8 bit đều có thể hỗ trợ HTTP.
- Các thiết bị 32 bit lớn hơn có thể sử dụng các thư viện HTTP client đầy đủ.
- Hỗ trợ máy chủ HTTP và/hoặc chức năng chuyển đổi MQTT để giao tiếp với thiết bị.
- Hợp nhất nội dung truyền từ các thiết bị khác nhau và định tuyến truyền thông tới một thiết bị cụ thể (có thể qua gateway.
- Đó là nền tảng dựa trên cloud khả mở hỗ trợ các công nghệ như Apache Hadoop để cung cấp những phân tích map-reduce (quy trình xử lý dữ liệu siêu lớn) đối với tập hợp dữ liệu đến từ các thiết bị.
- Dashboard là hệ thống tái sử dụng tập trung vào việc trình bày đồ thị mô tả dữ liệu đến từ các thiết bị và lớp xử lý sự kiện.
- Lớp Quản lý Thiết bị (Device Management) Trong lớp quản lý thiết bị, hệ thống phía máy chủ DM (Device Manager) giao tiếp với các thiết bị thông qua các giao thức khác nhau và điều khiển phần mềm của từng thiết bị hoặc một nhóm thiết bị (có thể khóa hoặc xóa dữ liệu trên thiết bị khi cần), quản lý định danh các thiết bị và ánh xạ vào chủ nhân các thiết bị đó.
- 36 Chƣơng 2: Nghiên cứu kiến trúc và dịch vụ nền tảng mạng xã hội 2.1 Giới thiệu hệ thống mạng xã hội vạn vật SIoT (Social Internet of Things) là hệ thống mạng xã hội dành cho các thiết bị, là nơi các thiết bị điện tử chia sẻ, cập nhập thông tin dưới sự quản lý của con người – người sở hữu các thiết bị (hình 2.1).
- Vì vậy mà các mạng xã hội cho các thiết bị đã ra đời.
- Trong môi trường phổ biến, người dùng có xu hướng truy cập vào các dịch vụ bất cứ lúc nào và bất cứ nơi nào sử dụng bất kỳ loại thiết bị thông qua bất kỳ loại của các mạng lưới thông tin liên lạc.
- WSNs bao gồm các thiết bị có khả năng hạn chế (tức là pin, khả năng xử lý, lưu trữ.
- Những dữ liệu này có thể được biểu diễn dưới dạng dữ liệu định hình hoặc đơn giản là phản hồi cho các truy vấn được gửi bởi người dùng và/hoặc thiết bị.
- Thiết bị cảm biến và thiết bị truyền động từ WSNs, M2M.
- Các phát triển được định hướng để cho phép khả năng tương tác giữa các thiết bị và người dùng sẽ là một trụ cột quan trọng trong thiết kế SIoT.
- Do đó một lớp đối tượng trừu tượng (Object abstaction) là cần thiết để phù hợp với việc truyền thông của các thiết bị khác nhau.
- Mô đun quản lý mạng xã hội và phương tiện mạng xã hội thường được thực hiện trong một máy chủ bên ngoài nhưng đôi khi có thể đặt trong chính thiết bị khi được trang bị đủ khả năng xử lý, như trong trường hợp điện thoại thông minh.
- Với Heli, người dùng, nhà phát triển không chỉ thu thập được thông tin từ những thiết bị cá nhân mà còn có thể có được thông tin trên thiết bị của người dùng khác trong mạng xã hội nếu được chia sẻ quyền truy cập, từ những thông tin đó nhà phát triển có thể xây dựng những ứng dụng hữu ích phục vụ người sử dụng.
- 3.1 Đặt vấn đề bài toán SIOT là một hệ thống core framework tích hợp các chức năng thu thập, chia sẻ thông tin, điều khiển thiết bị như một mạng xã hội dành cho thiết bị.
- Do End User sử dụng dịch vụ do developer tạo ra, nên end-user sẽ gắn liền với thiết bị (Thing) do developer phát triển.
- 49 o Developer đăng ký thiết bị.
- o Developer sử dụng thông tin thiết bị đã đăng ký để truy xuất dữ liệu, điều khiển thiết bị và xây dựng Application tương ứng với các dữ liệu nhận được hoặc chia sẻ với các Developer khác.
- 3.2 Phân tích thiết kế hệ thống Trong xã hội thông tin Internet hiện nay, việc quản lý, điều khiển, giám sát thiết bị, cũng như phát triển các dịch vụ cho thiết bị trên mạng Internet là một nhu cầu thiết yếu.
- Ngoài ra, nếu mạng xã hội cho thiết bị Heli được nhiều người sử dụng, nhiều dịch vụ và ứng dụng tiện ích cho người dùng cũng sẽ được phát triển, làm xuất hiện các cơ hội kinh doanh dựa trên Heli giống như các ứng dụng, dịch vụ trên mạng xã hội như Facebook đã và đang phát triển và được sử dụng rộng rãi.
- Phía client: tùy vào nhu cầu của người dùng mà lựa chọn các thiết bị khác nhau như là điện thoại, máy tính, thiết bị nhúng, mô đun điện tử có khả năng kết nối internet.
- Lớp Interface đóng vai trò cung cấp API, các thư viện hỗ trợ kết nối giao tiếp với thiết bị của người dùng truyền lên.
- Hình 3.3: Quản lý thiết bị trong SIoT 52 3.2.1 Một số đặc điểm của Heli  Tính xã hội: Heli là một hệ thống SIoT thể hiện tính xã hội mạnh mẽ, để có thể hình thành một cộng đồng người dùng rộng rãi, cung cấp nhiều tiện ích hơn cho người sử dụng.
- Nhà phát triển có thể đưa ra nhiều dịch vụ dành cho các thiết bị hoặc nhóm các thiết bị cung cấp các thông tin nhất định.
- người sử dụng sẽ được cung cấp thêm các dịch vụ cho cho các thiết bị mà họ đang dùng, ngoài ra họ còn có thể quản lý và điều khiển các thiết bị từ xa.
- Kênh quản lý thiết bị: o Sử dụng ASP.NET MVC làm mô hình phát triển hệ thông web-based.
- Cung cấp dịch vụ, thư viện, các hàm API hỗ trợ các nhà phát triển: Khác với các hệ thống SIoT đã được xây dựng, cài đặt, Heli là hệ thống quan tâm đến khả năng cung cấp thông tin của các thiết bị và dịch vụ mà các thiết bị được cung 53 cấp.
- Từ đó, nhà phát triển có thể xây dựng các ứng dụng trên các client khác nhau (mobile, PC, hay thiết bị nhúng) truyền thông với máy chủ phục vụ thu thập, hiển thị, giám sát dữ liệu hay điều khiển thiết bị từ xa.
- để giúp các nhà phát triển tích hợp khả năng kết nối giữa thiết bị của mình với mạng xã hội.
- Tính bảo mật của hệ thống: Heli cung cấp cơ chế định danh thiết bị duy nhất, các thủ tục xác thực, cơ chế phân quyền người dùng đảm bảo an toàn thông tin.
- Các thiết bị tham gia vào mạng được định danh bằng mã GUID (Globally Unique Identifier) đảm bảo tính duy nhất như trong nhiều nghiên cứu về Internet of things [4].
- một server lưu trữ thông tin quản lý thiết bị.
- Để đăng ký được thiết bị, người sử dụng cần phải cung cấp AccessToken và thông tin chi tiết của thiết bị cần khai báo.
- Hệ thống sẽ tự động thêm thiết bị vào trong danh sách thiết bị của người dùng nếu như các thông tin khai báo hợp lệ.
- 60 Hình 3.7: Sơ đồ tuần tự các bước đăng ký tạo ứng dụng mới Developer muốn truy xuất thông tin của thiết bị cần phải cung cấp mã AccessToken của tài khoản và DeviceAccessToken của thiết bị cần truy xuất thông tin.
- 8: Sơ đồ tuần tự truy xuất dữ liệu, quản lý thiết bị Truy xuất dữ liệu - Các thông tin có thể thu thập được từ các thiết bị: o Thông tin cơ bản hệ thống (model, firmware version, device name, device ID.
- đối với các thiết bị di động.
- o Thông tin về vị trí của thiết bị.
- o Thông tin mở rộng (thông tin này do Developer có thể phát triển ứng dụng trên thiết bị để cung cấp dữ liệu đặc thù của ứng dụng.
- Ứng dụng đáp ứng được việc dữ liệu cơ bản, vị trí thiết bị có thể được lưu trữ và hiển thị thông qua Web Application của hệ thống.
- Đối với truy xuất dữ liệu từ các thiết bị: có thể cho phép lựa chọn các thông tin nào được chia sẻ, các thông tin nào được bảo mật 3.2.4.3 Điều khiển thiết bị - Mỗi thiết bị được đăng ký nằm trong nhóm Thiết bị có thể điều khiển được đều có một bảng tham chiếu giá trị nằm trên hệ thống.
- Hệ thống cung cấp được các chức năng điều khiển một số thiết bị cơ bản: Arduino, Raspberry Pi.
- o Module điều khiển GPIO (dành cho các thiết bị có thể điều khiển được.
- 3.3.3 Xây dựng hệ thống riêng biết sử dụng API của SIOT - Ngoài ra, SIOT cũng hỗ trợ Developer xây dựng các ứng dụng của riêng mình thông qua một loạt các API hỗ trợ giao tiếp với các thiết bị trên hệ thống.
- 3.3.4 Chia sẻ dữ liệu với các Developer khác - Dữ liệu từ các thiết bị của một Developer có thể được chia sẻ với các Developer khác thông qua phân quyền và nhóm người dùng.
- Thông tin từ một thiết bị gửi lên sẽ ở một trong các trạng thái sau đây: o Riêng tư (chỉ dành cho Developer quản lý hoặc người dùng sử dụng thiết bị).
- Đối với dữ liệu, SIOT cung cấp các API cho phép một cá nhân bất kỳ có thể xem nội dung dữ liệu của một thiết bị bất kỳ nếu như phân quyền dữ liệu đó cho phép.
- Để truy xuất dữ liệu của một thiết bị bất kỳ, Developer đó phải cung cấp các tham số sau đây: o AccessToken của Developer (dùng để định danh tài khoản).
- 65 o Device AccessToken của thiết bị (dùng để dịnh danh thiết bị.
- 3.4 Sử dụng Application của Developer - Đối với người sử dụng cuối End-User (người sử dụng thiết bị, ứng dụng của Developer), có thể truy xuất dữ liệu từ thiết bị mình đang sử dụng, hoặc ứng dụng do Developer xây dựng): o Ứng dụng di động o Thiết bị thực tế o Ứng dụng Web của nhà phát triển - Người sử dụng cũng có thể tùy chỉnh thiết bị của mình về quyền chia sẻ thông tin, quyền truy xuất thông tin cơ bản hệ thống đối với Developer (đối với ứng dụng di động) 3.5 Xây dựng phát triển ứng dụng Trong phần này sẽ trình bày chi tiết các bước xây dựng một ứng dụng mẫu là điều khiển thiết bị và theo dõi nhiệt độ môi trường từ xa thông qua internet dựa trên nền tảng mạng xã hội vạn vật.
- Ứng dụng cho phép người dùng có thể điều khiển các thiết bị trong nhà từ xa và theo dõi nhiệt độ phòng, có thể chia sẻ cho các thành viên khác trong nhà cùng điều khiển.
- Khi nhận được lệnh điều khiển từ server vi xử lý thực hiện giải mã dữ liệu và thực thi điều khiển các thiết bị tương ứng.
- Hoặc người dùng có thể đăng ký là nhà phát triển để có thể cung cấp thiết bị và dịch vụ cho người sử dụng.
- Quản lý ứng dụng: Hình 3.16: Giao diện quản lý ứng dụng 73 Là một nhà phát triển, người dùng có thể tạo ra các ứng dụng riêng, trong đó các ứng dụng sẽ có một danh sách các thiết bị để cung cấp cho người sử dụng.
- Tự đánh giá tiền năng của đề tài Với nhà nghiên cứu, phát triển: Nhà phát triển khai thác được thông tin của các thiết bị mà người dùng sử dụng, từ đó có thể đưa ra nhiều dịch vụ đến người sử dụng.
- Heli cho phép người dùng tìm kiếm thêm ứng dụng cho các thiết bị của mình, từ đó tăng hiệu quả sử dụng thiết bị, đem lại nhiều lợi ích cho người sử dụng.
- Nghiên cứu: Nhà nghiên cứu có thể có nhiều thông tin từ thiết bị đến từ nhiều người ở nhiều nơi trên thế giới mà không cần lắp đặt thiết bị.
- Y tế: Heli cho phép theo dõi, chăm sóc sức khỏe từ xa thông qua các thông tin liên quan đến y tế mà thiết bị người dùng cung cấp.
- Các thiết bị này để sử dụng chính thức như các công cụ khám chữa bệnh cần phải được kiểm định.
- Các doanh nghiệp có thể quảng bá thông tin của mình dựa trên các thiết bị mà họ sử dụng

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt