Tải bản đầy đủ (.docx) (48 trang)

Đồ án tốt nghiệp TÌM HIỂU IOT VÀ TRIỂN KHAI TESTBED DỰA TRÊN MÔ HÌNH OM2M VƠI BỘ THIẾT BỊ ZOLERTIA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.54 MB, 48 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ────────

ĐỒ ÁN

TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN

TÌM HIỂU IOT VÀ TRIỂN KHAI TESTBED
DỰA TRÊN MÔ HÌNH OM2M VƠI BỘ
THIẾT BỊ ZOLERTIA
Sinh viên thực hiện

: Nguyễn Việt Hưng

Lớp

: IS – K5

Giáo viên hướng dẫn

: PGS. TS Ngô Quỳnh Thu

HÀ NỘI 05 - 2016


PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1. Thông tin về sinh viên
Họ và tên sinh viên: NGUYỄN VIỆT HƯNG
Điện thoại liên lạc: 0969987893


Email:
Lớp: IS – K56
Hệ đào tạo: Đại học chính quy
Đồ án tốt nghiệp được thực hiện tại: Bộ môn Kỹ thuật máy tính, Viện CNTT&TT, Đại học
Bách Khoa Hà Nội.
Thời gian làm ĐATN: Từ ngày 08/02/2016 đến 27/05/2016
2. Mục đích nội dung của ĐATN
Tìm hiểu iot và triển khai testbed dựa trên mô hình om2m vơi bộ thiết bị zolertia
3. Các nhiệm vụ cụ thể của ĐATN

• Tìm hiểu và nghiên cứu công nghệ những thách thức kĩ thuật trong internet of

things (IOT).
• Tìm hiểu platform OM2M.
• Tìm hiểu zoletia.
• Dựa trên mô hình OM2M triển khai với bộ thiết bị Zolertia.
• Tiến hành cài đặt, chạy thử nghiệm và kiểm thử chương trình.
4. Lời cam đoan của sinh viên:
Tôi – Nguyễn Việt Hưng - cam kết ĐATN là công trình nghiên cứu của bản thân tôi dưới
sự hướng dẫn của PGS.TS Ngô Quỳnh Thu.
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳ
công trình nào khác.
Hà Nội, ngày 27 tháng 05 năm 2016
Tác giả ĐATN

Nguyễn Việt Hưng
5. Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảo
vệ:
Hà Nội, ngày tháng năm
Giáo viên hướng dẫn


PGS.TS Ngô Quỳnh Thu

LỜI MỞ ĐẦU

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


“Internet of things” (IoT) đang trở thành một chủ đề ngày càng được nhắc
đến nhiều trong các cuộc nói chuyện kể cả ở công sở và những nơi khác. IoT không
chỉ có khả năng ảnh hưởng đến cách chúng ta sống mà còn tới cách chúng ta làm
việc. Nhưng thật ra chính xác IoT là gì và những sự tác động của nó đến cuộc sống
của bạn như thế nào , nếu có ? Có rất nhiều vấn đề phức tạp xung quanh “ Internet
of things” nhưng bài viết này chỉ nêu lên những điểm cơ bản nhất. Đã có rất nhiều
buổi hội thảo công nghệ và chính sách liên quan nhưng rất nhiều người chỉ đang cố
gắng nắm về nền tảng của nó.
Internet băng thông rộng ngày càng phổ biến hơn , chi phí thì giảm xuống ,
nhiều thiết bị hơn với khả năng phát wifi và cảm biến bên trong , giá thành công
nghệ giảm xuống , điện thoại thông minh tràn ngập. Tất cả những thứ đó đang tạo ra
“cơn bão hoàn hảo” cho IoT.
Khái niệm về IoT là việc kết nối bất cứ thiết bị nào có công tắc tắt / mở tới
Internet ( và / hoặc tới thiết bị khác ) . Bao gồm tất cả mọi thứ từ điện thoại di
động , đèn bàn , những vật có thể mang được và tất cả các loại thiết bị khác mà bạn
có thể nghĩ tới. Ngoài ra khái niệm này còn được triển khai cho những bộ phận của
máy móc , ví dụ về động cơ của một chiếc máy bay phản lực hoặc là mũi khoan của
dàn khoan dầu . Như đã đề cập ở trên , nếu cái gì đó có công tắc tắt / mở thì nó có
rất nhiều cơ hội trở thành một phần của IoT. Phân tích viên của công ty Gartner nói
rằng cho tới 2020 sẽ có nhiều hơn 26 tỷ thiết bị kết nối vào… Có rất nhiều kết nối
( một vài khía cạnh khác cho rằng còn có thể nhiều hơn số lượng tiên đoán đó , trên
100 tỷ ) . IoT là một mạng khổng lồ để kết nối “tất cả mọi thứ “( thậm chí cả con

người ) . Mối quan hệ sẽ là người – người , người – vật , và vật – vật .

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


TÓM TẮT NỘI DUNG ĐỒ ÁN
Cấu trúc đô án gồm 4 chương với nội dung chính như sau:
Chương 1: Giải pháp và cơ sở lý thuyết trong IoT
Nêu ra vấn đề và lý do chính chọn đề tài, nhưng thách thức kĩ thuật khi triển khai hệ
thống IoT
Chương 2: Xây dựng hệ thống IOT dựa trên Platform OM2M
Trình bày lý thuyết về platform OM2M, để từ đó đi đến kết luật sử dụng platform
vào trong đồ án là phù hợp và đúng đăn
Chương 3: Xây dựng đồ án
Phân tích việc sử dụng kiến trúc TCP/IP là cần thiết cho 2 hướng giải quyết bài toán
đặt ra
Chương 4: Xây dựng hướng giải quyết 1 là mô hình IOT với Z1 Zolertia và kết
luận
Mô tả kĩ thuật, mô hình thiết kế, các bước giải quyết bài toán và kết luận
Chương 5: Xây dựng hướng giải quyết 2 là mô hình IoT với Waspmote mote
Runner
Mô tả kĩ thuật, mô hình thiết kế, các bước giải quyết bài toán và kết luận

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


LỜI CẢM ƠN
Trước hết, em xin gửi lời cảm ơn chân thành tới PGS.TS Ngô Quỳnh Thu,
người đã tận tình dạy dỗ và hướng dẫn em trong quá trình hoàn thành đồ án cũng
như trong học tập. Em xin cảm ơn đến thầy Trần Hải Anh đã đóng góp những ý

kiến quý giá, hướng dẫn cụ thể đến em, giúp em hoàn thành đồ án.
Đồng thời, em xin bày tỏ lòng biết ơn đến các thầy cô giáo trong Viện Công
nghệ thông tin và Truyền thông – trường Đại học Bách Khoa Hà Nội, những người
đã tận tâm giảng dạy, truyền đạt cho chúng em những kiến thức cơ bản làm nền
tảng cho việc thực hiện đồ án cũng như trong quá trình công tác sau này.
Em cũng xin gửi lời cảm ơn tới các anh chị tại trường Đại học Bách Khoa Hà Nội,
các bạn, các em trong nhóm sinh viên nghiên cứu, những người luôn ở bên cạnh
giúp đỡ, động viên em trong quá trình hoàn thành đồ án, từ đó có thể rút ra những
kinh nghiệm bổ ích có thể áp dụng vào thực tiễn một cách hiệu quả trong tương lai.

Cuối cùng, với tất cả sự kính trọng, con xin bày tỏ lòng biết ơn sâu sắc tới bố
mẹ và anh chị em trong gia đình đã luôn là chỗ dựa tinh thần vững chắc và tạo mọi
điều kiện cho con ăn học nên người.
Em xin chân thành cảm ơn!

Hà Nội, ngày 29 tháng 5 năm 2016

Nguyễn Việt Hưng

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


MỤC LỤC ĐATN

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


DANH MỤC HÌNH VẼ

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS



DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ
Chữ viết tắt

Viết đầy đủ

Ý nghĩa

IoT

Internet of things
European
Telecommunications
Standards Institute
Open Service Gateway
Initiative

Viện Tiêu chuẩn Viễn thông
châu Âu

ETSI
OGSi
HTTP
CoAP
RPL
GSCL
NSCL
DSCL


RFID
IEEE
M2M
WSNs
IETF
WLAN

HyperText Transfer
Protocol
Constrained Application
Protocol
The Routing Protocol for
Low-Power and Lossy
Networks
Gateway Service Capbility
Layer
Network Service Capbility
Layer
Device Service Capbility
Layer
Radio Frequency
Identification
Institute of Electrical and
Electronics Engineers
Machine to Machine

Nhận dạng sóng vô truyến

Wireless sensor networks
Internet Engineering Task

Force
wireless local area
network

ĐATN

Đồ án tốt nghiệp

Đồ án tốt nghiệp

CNTT

Công nghê thông tin

Công nghê thông tin

TTDL

Trung tâm dữ liệu

Trung tâm dữ liệu

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


PHẦN 1: GIẢI PHÁP VÀ CƠ SỞ LÝ THUYẾT TRONG IOT
Chương 1: Định hướng vấn đề và giải pháp trong lĩnh vực IoT
1.1Tổng quan về IoT

Hình 1: Tiều chuẩn hình thành nên IoT

Dựa theo tầm nhìn tương lai về IoT theo các khái niệm chính, công nghê và
tiêu chuẩn, sự xuất hiện các mô hình IoT là kết quả sự hội tụ 3 vấn đề chính:
“Things oriented” bao gồm như: thẻ Radio-Frequency Identification (RFID),
điều khoản cơ bản xây dựng tạo tiền để phát triển IoT, công nghệ mạng cảm biến
không dây , UID…
“Internet oriented” định hướng về kết nối: để phù hợp với việc chạy thiết bị
giao tiếp nhỏ gọn, hoạt động dựa trên pin các thiết bị nhúng. Chẳng hạn kết hợp
IEEE 802.15.4 vào kiển trúc IP, truyền dữ liệu qua 6LowPAN
“Semantic oriented” định hướng ngữ nghĩa: trong bối cảnh mà các rất nhiều
các thiết bị đại diện cho lưu trữ, kết nối, tìm kiếm tổ chức thông tin được tạo ra sẽ
rất khó quản lý. Như vậy cần hình thành môi trường ngữ nghĩ phù hợp với phát
triển cơ sở hạ tầng và thông tin liên lạc trong IoT
Ý nghĩa học cơ bản của IoT bao gồm các lớp
Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hình 2: Lớp cở bản trong IoT
Lớp trên cùng là lớp các Application liên kết với nhau, Lớp giữa Middleware
là một lớp phần mềm hoặc lớp phụ xem giữa của công nghê và ứng dụng. Tính
năng của nó có thể là ẩn đi các chi tiết khác nhau không cần thiết ở lớp Devices từ
đó lập trình viên có thể đơn giản hóa viết phát triển mới ứng dụng, dịch vụ.
1.2

Thách thức kĩ thuật trong IoT

Hỗ trợ nhiểu loại kết nối

Hình 3: Các loại kết nối trong IoT
IoT hỗ trợ rất nhiều loại kết nối như trong hình 3 đó là: Bluetooth, Wifi,
ZigBee, 6LowPAN, RFID, LPWAN, 3GPP. Với mỗi chuẩn đều có những đặc

điểm khác nhau về bảo mật, độ trễ, tính di động, khoảng cách truyền, năng lượng
tiêu thụ, tuổi tho pin, tốc độ dữ liệu tối đa là rất khác nhau
Như vậy vấn đề kỹ thuật đặt ra là dữ liệu được cập nhật khác nhau từ hàng
giây, hàng giờ, hàng ngày hàng tháng … Kết nối những dữ liệu khác nhau chẳng
hạn ứng dụng về sức khỏe, nông nghiệp, Smart Gird

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hình 4: Các loại kết nối cần được hỗ trợ trong mạng IoT
Yêu cầu kĩ thuật về tín hiệu độ chập chờn từ mili giây đến giây

Hình 5: Đồ thị phân bố thời gian của tín hiệu (time/jetter)
Độ trễ và độ chập chờn tín hiệu cũng là một thách thức quan trong cần giải
quyết trong IoT. Trong tiến trình tốc độ cao thì tốc độ tín hiệu phải nhanh đến µs,
với mối hệ thống thì thời gian phân bố dữ liệu sẽ tăng lên như với máy công cụ, tín
hiệu robot có thẻ từ 100µs đến 100ms, công nghê điều khiển và tự động hóa có thể
lên tới 10s.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hạ tầng mạng không có sẵn thách thức cần đáp ứng trong cự ly truyền ngắn và
xa

Hình 6: Cự ly truyền tín hiệu trong mạng IoT
Mỗi chuẩn kết nối đều có khoảng cách truyền nhất định, cự ly truyền cũng có
ảnh hưởng nhất định với việc thiết kế hệ thống. Ví dụ trong chuẩn Bluetooth, Wifi,
ZigBee, 6LowPAN, RFID khoảng cách truyền là ngắn <3m hoặc từ 10-200m như
vậy có thể thiết kế gateway ngay tại nơi để thiết bị. LPWAN, 3GPP có khoảng cách

truyền xa gateway có thể được thiết kế với một trạm base station.
Thách thức trong việc xây dựng hệ thống theo Mô hình tham chiếu trong IoT (Sẽ
được đề cập ở mục 1.5)
Thách thức về việc bảo mật (Sẽ được đề cập ở mục 1.6)
1.3

Khả năng định danh của IoT

Điểm quan trọng của IoT đó là các đối tượng phải có thể được nhận biết và
định dạng (identifiable). Nếu mọi đội tượng, kể cả con người, được "đánh dấu" để
phân biệt bản thân đối tượng đó với những thứ xung quanh thì chúng ta có thể hoàn
toàn quản lí được nó thông qua máy tính. Việc đánh dấu (tagging) có thể được thực
hiện thông qua nhiều công nghệ, chẳng hạn như RFID, NFC, mã vạch, mã QR,
watermark kĩ thuật số... Việc kết nối thì có thể thực hiện qua Wi-Fi, mạng viễn
thông băng rộng (3G, 4G), Bluetooth, ZigBee, hồng ngoại...
Ngoài những kĩ thuật nói trên, nếu nhìn từ thế giới web, chúng ta có thể sử
dụng các địa chỉ độc nhất để xác định từng vật, chẳng hạn như địa chỉ IP. Mỗi thiết
bị sẽ có một IP riêng biệt không nhầm lẫn. Sự xuất hiện của IPv6 với không gian
địa chỉ cực kì rộng lớn sẽ giúp mọi thứ có thể dễ dàng kết nối vào Internet cũng như
kết nối với nhau
Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


1.4 Các hệ thống phụ trong IoT
Không phải tất cả mọi thứ nằm trong IoT đều nhất thiết phải kết nối vào một
mạng lưới toàn cầu, chúng ta có thể hoạt động trong từng hệ thống đơn lẻ
(subsystem). Hãy tưởng tượng đến một căn nhà thông minh, trong đó các đồ điện
gia dụng có thể tự chúng tương tác với nhau và hoạt động mà không cần phải vào
Internet, trừ khi chúng ta cần điều khiển nó từ xa. Ngôi nhà này có thể được xem là
một subsystem. Cũng giống như hiện nay chúng ta có các mạng LAN, WAN, mạng

ngang hàng nội bộ chứ không kết nối trực tiếp vào Internet.
1.5 Mô hình tham chiếu trong IoT
Mô hình tham chiếu gồm 5 tầng:
-

-

Trên cùng là tầng định hướng ứng dụng
Sau đó tầng 2 sẽ chia thành các ứng dụng cụ thể như quản lý sự kiện, quản lý
việc làm, quản lý dữ liệu thu về, API … việc chia này chưa thực hiện việc xử
lý quản lý mà thực chất chỉ là lớp base mô tả cấu trúc và các công việc quản

Tâng 3 sẽ đi vào việc xử lý trực tiếp các quản lý đã phân cở tầng 2
Tầng 4 – tâng kết nối mọi hành động xác thực, giao vận, kết nối trung gian
giữa thiết bị và hệ thống sẽ qua tâng này
Tâng 5 – Things đây là tâng của các thiết bị khác nhau, các cảm biến môi
trường …

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hình 7: Mô hình tham chiếu M2M/IoT
Kết hợp mô hình tham chiếu IoT vào mạng M2M có thể phân thành mô hình
khối chứa các chức năng cụ thể và xuyên suốt trong hạ tầng mạng IoT. Để đảm bảo
tính xuyên suốt thì trong cả 5 tầng đều phải được thiết kế di động kết nối liền mạch
giữa các tầng, mỗi tâng đều có quản lý và định danh rõ ràng.
1.6

Bảo mật trong IoT


Đối với mục đích của mô hình tham chiếu IoT, các biện phát bảo mật cần phải:
o Bảo mật cho mỗi thiết bị hoặc hệ thống
o Cung cấp bảo mật cho tất cả các tiến trình ở mỗi lớp.
o Bảo mật di chuyên và truyền thông giữa mỗi lớp.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hình 8: Kiến trúc bảo mật
Như vậy hệ thống sẽ tồn tại những thách thức về bảo mật như sau:
- Cơ chế bảo mật RFID: hàm vật lý, cơ chế code
- Công nghệ cảm biến và bảo mật mạng: bảo mật framework, mã hóa và giải
mã, quản lý khóa, bảo mật định tuyến, cơ chế bảo mật xâm nhập,
- Bảo mật IoT Gateway: xử lý tiến trình dữ liệu, xác thực đăng nhập, kiểm
soát dữ liệu truy cập, kênh mã hóa
- Thông tin truyền trên IoT: lỗ hổng an ninh, giao thức bảo mật, IPv6
- Bảo mật việc xử lý thông tin: Ứng dụng, service, clould, privacy
Kết luận: Như vậy để giải quyết các thách thức kĩ thuật còn tồn tại trong IoT bước
đầu cần một nền tảng có khả năng hỗ trợ đa dạng, khả năng phát triển và mở rộng
lớn. Nền tảng đưa ra cần phải phát triển phù hợp dựa trên tiêu chuẩn về M2M và
IoT. Hiện nay có rất nhiều IoT platform được phát triển, và đi đầu trong lĩnh vực
này có thể kể đến như AWS IoT platform của Amazon, Microsoft Azure IoT của
Microsoft, ThingWorx IoT Platform của ThingWorx,... ngoài ra còn rất nhiều
platform của các tập đoàn, công ty khác trên toàn thế giới. Đồ án này đề xuất một
nền tảng phù hợp đó chính là platform OM2M sẽ được trình bày ngay sau đây.

1.2

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS



Chương 2: Xây dựng hệ thống IOT dựa trên Platform OM2M
2.1 Giới thiệu OM2M và các thành phần
2.1.1 Giới thiệu chung
-

Nhà phát triển Eclipse Technologies
Lần đầu ra mắt 20/04/2014
Phiên bản mới nhất 24/04/2016 (version 0.8.0)
Được viết bới ngông ngữ Java
Phát triển cho hệ điều hành: Windows, Linux, Mac OS X
Giấy phép độc quyền
Website: />
Dự án Eclipse OM2M phát triển được khới sướng bơi LASS-CNRS, là một
chương trình mã nguồn mở xây dựng dựa trên chuẩn oneM2M và SmartM2M. Nó
cung cấp một nền tảng dịch vụ M2M ngang hàng để phát triển dịch vụ độc lập dựa
trên các mạng cơ bản, với mục đích tạo thuận lợi cho việc triển khai các ứng dụng
theo chiều dọc hệ thống và các thiết bị không đồng nhất.
2.1.2 Các đặc điểm và tính năng
Platform tiêu chuẩn
OM2M được xây dựng dựa trên tiêu chuẩn oneM2M và SmartM2M. Nó
cung cấp một dịch vụ ngang hàng Service Common Entity (CSE) có thể triên khai
trong máy chủ M2M, một gateway, hoặc một thiết bị. Mỗi CSE cung cấp ứng dụng
Enablement, Security,Triggering, Notification, Persistency, Device Interworking,
Device Management …
RESTful API
OM2M sử dụng quy trình của RESTful API để xác thực, khai phá tài
nguyên, đăng kí các ứng dụng, quản lý container, giao tiếp đồng bộ và không đồng
bộ, ủy quyền truy cập, tổ chức nhóm và nắm bắt các mục tiêu.
Modularity & Extensibility

OM2M là một chương trình Java xậy dựng theo kiến trúc OSGi khiến cho
chương trình dễ mở rộng thông qua các plugin. Nó được xây dựng như một sản
phẩm của Eclipse sử dụng Maven và Tycho. Mỗi plugin cung cấp một chức năng cụ
thể và có thể cài đặt được từ xa như bắt đầu, dừng lại, cập nhật, gỡ bỏ cài đặt mà
không phải khởi động lại.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


2.1.3 Các thành phần trong OM2M

Hình 9: Bộ platform OM2M
-

org.eclipse.om2m.comm.coap: xây dựng CoAP là một giao thức truyền tải
tài liệu. Không giống như HTTP, CoAP được thiết kế cho nhu cầu các thiết
bị ràng buộc. Truyền tài những gói tin nhỏ hơn trên UDP
org.eclipse.om2m.comm.http: xây dựng giao thức truyền tải Http truyền tải
những goi tin có nội dung lớn trên TCP/IP
org.eclipse.om2m.comm.service: Xác nhận những yêu cầu REST từ service
org.eclipse.om2m.core: plugin xử lý và điều phối chính của chương trình
org.eclipse.om2m.ipu: xây dựng IPU điều phối hoạt động giao tiếp giữa các
proxy
org.eclipse.om2m.site.gscl: chứa thư mục build được chạy trên thiết bị
gateway
org.eclipse.om2m.site.nscl: chứa thư mục build được chạy trên nền mạng
network
org.eclipse.om2m.webapp.resourcesbrowser: xây dựng trình quản lý ứng
dụng tham gia vào mạng M2M qua trình duyệt.


2.2 Nền tảng ứng dụng dịch vụ ETSI-compliant M2M trong OM2M
2.2.1 Giới thiệu
Machine-to-Machine (M2M) là một khái niệm trừu tượng được nói đến trong
IOT hứa hẹn kết nối hàng tỉ các thiết bị công nghệ trong tương lai gần bao gồm các
lĩnh vực khác nhau. Sensors, actuators, thẻ RFID/NFC, các thiết bị thông minh đều
có thể được giao tiếp với nhau. Số lượng kết nối M2M liên tục tăng với tốc độ
chóng mặt, như vậy trong tương lai gần sẽ cung cấp nhiều tiện ích và lợi thế cho các
lĩnh vực khác nhau từ xây dựng, năng lượng, y tế, công nghiệp, giao thông, bán lẻ,
bảo mật cho các dịch vụ môi trường.
M2M trải qua nhiều phát triển và thay đổi lớn từ công nghệ đã hình thành
nên nền tảng M2M ngang hàng trên toàn cầu và được kế thừa đến hệ thống M2M
hiện nay. Việc phát triển này mở đường cho một tương tác thông suốt giữa các thiết
bị thông minh và thiết bị không đồng nhất khi triển khai M2M quy mô lớn. Tuy
Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


nhiên các yếu tố như khả năng tương tắc, hệ thống phân phối ngày càng phức tạp và
thiểu chuẩn hóa là thách thức đối với M2M.
Một tiêu chuẩn trong việc thách thức khả năng tương tác M2M đã được đưa
ra bởi Viện Tiêu chuẩn Viễn thông châu Âu (ETSI) quy định các thống số kĩ thuật
bao gồm yêu cầu dịch vụ, các chức năng, kiến trúc, giao diện truyền thông, và làm
thế nào để phối hợp chức năng hoạt động với tiêu chuẩn và công nghệ hiện có.
Như vậy trong ĐATN này đề xuất OM2M project một nền tảng của ETSIcompliant platform. OM2M sử dụng kiến trúc RESTful chạy ở lớp OGSi. Nó có thể
mở rộng thông qua bổ xung và hỗ trợ nhiều giao thức công nghệ. Một dịch vụ được
bổ xung được dựa trên tính toán và ngữ nghĩa của thiết kế trong hệ thống, phát hiện
năng động và tự cấu hình cho ứng dụng M2M.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS



2.2.2 Trình bày tổng quan về tiêu chuẩn ETSI M2M

Hình 10: Kiến trúc chức năng ETSI M2M
Một thiết bị M2M chạy các ứng dụng bằng cách sử dụng SCL. Nó kết nối
trực tiếp đến các Network Domain thông qua mạng truy cập có thể cung cấp dịch vụ
khác kết nối đến nó. Nó cũng có thể được kết nối vào Network Domain thông qua
gateway từ một Local Area Network. Một Gateway cũng có thể chạy ứng dụng
M2M bằng SCL và hoạt động như một proxy giữa các thiết bị địa phương và
Network Domain. SCL cung cấp các chức năng mà có thể được chia sẻ bởi các ứng
dụng khác nhau. Chức năng quản lý mạng cho phép quản lý truy cập và core
network, giám sát , quản lý lỗi. Chức năng Quản lý M2M bao gồm tất cả các chức
năng cần thiết để quản lý SCL trong Network Domain.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hình mô tả kiến trúc chức năng ETSI M2M. Một SCL có thể được triển
khai trên một mạng Network Domain M2M (NSCL), một cổng Gateway Domain
(GSCL), hoặc một thiết bị Device (DSCL). Nó cung cấp nhiều dịch vụ cho phép
đăng kí máy, truyền thông đồng bộ và không đồng bộ, khai phá tài nguyên, quản lý
quyền truy cập, quảng bá nhóm … Phía trên các ứng dụng mạng (NA), ứng dụng
gateway (GA), ứng dụng thiết bị Device (DA) sẽ có các điểm tham chiếu. Tương
ứng như vậy ở NA có thể truy cập vào NSCL, GA cho phép truy cập vào GSCL,
(DA/GSCl) cho phép truy cập vào NSCL. Các giao diện được thiết kế chung để hỗ
trợ một loạt các công nghệ mạng và các giao thức tăng cường khả năng tương tác.
Các kiến trúc OM2M theo tiêu chuẩn ETSI M2M. Nó bao gồm các yếu tố sau:
-

-


-

M2M Device: Một máy chạy M2M device SCL (DSCL), nó có thể được truy
vấn bới các ứng dụng thiết bị M2M thông qua một giao diện mở. Một - M2M Device có thể kết nối trực tiếp với mạng M2M hoặc gián tiếp thông
qua cổng hoạt động như một proxy mạng.
M2M Area Network: cung cấp kết nối giữa các thiết bị M2M , và giữa thiết
bị với cổng mạng. Nó dựa trên công nghệ hiện có như ZigBee, Phidgets, MBUS, KNX …
M2M Gateway: Một máy chạy M2M gateway SCL (GSCL) có thể truy vấn
bởi các ứng dụng M2M Gateway, Nó xác định và giải quyết các thiết bị
không đồng nhất, liên kết và kết nối mạng với các công nghệ giao thức khác
nhau bẳng cách lập bản đồ và chuyển đổi hoạt động.
Wide Area Network cung cấp mạng lõi với mạng truy cập để cho phép các
thiết bị M2M và các cổng giao tiếp với mạng M2M. Nó được dựa trên công
nghệ hiện có như xDSL, GERAN, UTRAN, eUTRAN, W-LAN, WiMAX …
M2M Network: cung cấp một M2M Network SCL (NSCL) mà có thể được
truy vấn bởi các ứng dụng M2M mạng (NA) thông qua một giao diện mở.
M2M service capabilities Layer (SCL) cung cấp một lớp dịch vụ ngang cho
các ứng dụng M2M trừu tượng hóa sự phức tạp của các thiết bị.

Phát triển ứng dụng mới một tên miền cụ thể.
ETSI M2M áp dụng một kiến trúc tính RESTful, Mỗi SCL là một cây tài
nguyên chuẩn nơi lưu trữ thông tin, trong đó có thể thực hiện thao tác lấy,
cập nhật, xóa, thực hiện.
Một cây tài nguyên SCL hỗ trợ nhiều loại tài nguyên khác nhau:
Để mô tả một lớp SCL lưu trữ OM2M sử dụng một lớp base “sclBase” đây là
một lớp gốc cho tất cả nguồn lực lưu trữ khác trong SCL. Nhưng “scl”
resource lưu trữ thông tin của các scls khác ở trên những máy khác sau khi
xác thực thành công.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS



Hình 11: Trường dữ liệu SCL trong OM2M
-

Các “application” lưu trữ thông tin về ứng dụng sau khi đăng kí thành công
trên SCL hosting.

Hình 12: Trường dữ liệu Application trong OM2M
-

Các nguồn tài nguyên “container” hoạt động như một trung gian giữa các dữ
liệu đệm cho phép trao đổi giữa “application” và SCLs. Các tài nguyên
“contentInstance” đại diện cho một trường dữ liệu trong các container.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hình 13: Trường dữ liệu Container trong OM2M
-

Các tài nguyên “accessRight” quản lý quyền điều hành của chủ sở hữu để
hạn chế vào bảo vệ các quyền truy cập vào cơ cấu cây tài nguyên.

Hình 14: Trường dữ liệu AccessRight trong OM2M
-

Các tài nguyên “group” tăng cường hoạt động của cây tài nguyên bằng cách
bổ xung tính năng cho nhóm.
Các tài nguyên “subscription” cho phép thuê bao đăng kí nhận được thông

báo không đông bộ khi một sự kiện xảy ra như tiếp nhận một cảm biến mới,
hoặc tạo ra, cập nhật, xóa các tài nguyên.
Các tài nguyên “announced” chứa một đại diện một phần của một tài nguyên
trong một SCL từ xa để đơn giản hóa các yêu cầu phát hiện trên SCLs phân
phối.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


-

Các nguồn tài nguyên "discovery" đóng vai trò như một công cụ tìm kiếm
các nguồn tài nguyên. Các nhóm tài nguyên bộ sưu tập tài nguyên chung với
nhau.

2.2.3 Nền tảng dịch vụ OM2M
Xây dựng nền tảng OM2M
OM2M cung cấp một API RESTful để trao đổi dữ liệu XML thông qua các
kết nối không đáng tin cậy trong môi trường phân phối cao. Nó cung cấp một kiến
trúc modular chạy phía trên của lớp OSGi như thể hiện ở hình dưới. OM2M cung
cấp một SCL linh hoạt có thể được triển khai trong một mạng M2M, một gateway,
hoặc một thiết bị. Mỗi SCL gồm một tập hợp các plugin nhỏ, mỗi phần trong đó
thực hiện một chức năng cụ thể. Một plugin có thể được cài đặt từ xa , bắt đầu, cập
nhật và gỡ cài đặt mà không phải khởi động lại. Nó cũng có thể phát hiện việc bổ
xung hoặc loại bỏ các dịch vụ thông qua đăng ký dịch vụ và thích ứng phù hợp cho
việc mở rộng SCL.

Hình 15: Mô hình nền tảng OM2M
Hình: Mô hình nền tảng OM2M
CORE là plugin chính được triển khai tại mỗi SCL. Nó cung cấp dịch vụ giao thức

độc lập để xử lý yêu cầu REST. Plugin này sẽ lập bàn đồ thông tin liên lạc cụ thể để
có thể thêm vào hỗ trợ nhiều giao thức ràng buộc như HTTP và CoAP. OM2M có
thể được mở rộng với các plugin lập bản đồ quản lý thiết bị cụ thể thực hiện cập
nhật phần mềm cho máy bằng cách dùng lại các giao thức hiện có như OMA-DM
và BBF TR-069. Nó cũng có thể được mở rộng bằng cách bổ xung liên kết mạng
proxy khác nhau để cho phép giao tiếp liền mạch với các thiết bị như phidgets,
zigbee, Các giao thức TLS-PSK được dùng để bảo đảm thông tin liên lạc M2M dựa
trên pre-shared keys. Một plugin mới dựa trên mô hình được thiết kế nhằm tăng
cường phát hiện tài nguyên OM2M và khả năng tự cấu hình.
Biểu đồ diagram các thành phần trong OM2M

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


Hình 16: Biểu đồ diagram các thành phần OM2M
CORE plugin thực hiện giao diện SCL_Service để xử lý yêu cầu RESTful
chung được yêu cầu từ HTTP_Mapping plugin. Nó nhận được một tín hiều cho một
yêu cầu về giao thức giao tiếp độc lập và trả lời xác nhận yêu cầu đó hay không,
CORE plugin chứa các thành phần:
 Thành phần Router trong CORE plugin sẽ đưa ra một định tuyến duy nhất để













xử lý mọi yêu cầu trong một bộ điều khiển tài nguyên sừ dụng Uri và method
Thành phần Resource_Controller thực hiện hàm CRUD (bao gồm Create,
Retrieve, Update, and Delete) cho mỗi tài nguyên. Nó thực hiện yêu cầu
kiểm tra chẳng hạn ủy quyền quyền truy cập, và xác minh cú pháp tài
nguyên.
Thành phần Resource_DAO cung cấp một giao diện trừu tường để đóng gói
tất cả các truy cập, để tài nguyên lưu trữ được liên tục và không làm lộ chi tiết
về cơ sở dữ liệu.
Thành phần Event_Ntifier gửi thông báo tới tất cả các subscribers quan tâm
khi nguồn tài nguyên được tạo ra, cập nhật hoặc xóa bỏ. Nó thực hiện hoạt
động lọc để loại bỏ các sự kiện không quan tâm đến một subcribers.
Thành phần Resource_Announcer thông báo một tài nguyên truy cập từ xa
vào SCL để xác minh rõ hơn và tiếp cận các máy khác. Nó cũng xử lý cả
nguồn không phải announcer.
Thành phần Request_Sender nắm giữ việc phát hiện một giao thức cụ thể
trong việc thực hiện yêu cầu từ giao diện Client_Service. Nó hoạt động như
một proxy đẻ gửi một yêu cầu chung chung thông qua giao thức.
Thành phần Interworking_Proxy phát hiện ra việc giao tiếp lẫn nhau giữa các
đơn vị proxy, thực hiện giao diện IPU_Service, và hoạt động như một proxy
để điều khiển IPU.

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


 Thành phần Device_Manager quản lý những Entity từ xa thực hiện giao diện

REM_Service và hoạt động như một proxy để gọi các bộ điều khiển thiết bị
quản lý.

Plugin HTTP_Mapping cung cấp một chiều liên kết với giao thức HTTP. Các
HTTP_Servlet nhận và chuyển đồi một yêu cầu HTTP vào một yêu cầu xác
định và gọi plugin CORE thông qua giao diện SCL_Service. Thành phần
Client_Service thực hiện giao diện Client_Service gửi những yêu cầu thông
thường qua HTTP
Plugin Phidget_Monitor phát hiện các thiết bị Phidgets và gọi các xử lý trên
plugin CORE tạo ra các resource cần thiết trên SCL. Thành phần
Phidgets_Controller thực hiện giao diên IPU_Service để liên tục thực hiện
các yêu cầu chung chung qua API Phidgets.
Plugin OMADM_Mapping cung cấp ánh xa hai chiều để quản lý các thiết bị
kích hoạt OMA-DM. OMADM_Controller thực hiện giao diện REM_Service
để chuyển đổi yêu cầu quản lý phiên OMA-DM.
Plugin DB_Driver cung cấp một hướng đối tượng cơ sở dữ liệu (OODB) truy
cập thông qua giao diện DB_Service . Các plugin khác có thể được triển khai
bằng cách sử dụng phương pháp tương tự như interwork với giao thức bổ
sung hoặc tích hợp những tính năng mới như các plugin
Autonomic_Computing.
Kịch bản tạo resource trong ứng dụng

Hình 17: Kịch bản tạo một Resource trong ứng dụng
Hình 2.3 Kịch bản tạo resource trong ứng dụng

Sinh viên thực hiện: Nguyễn Việt Hưng – 20111550 – Khóa: 56 – Lớp: IS


×