MỞ ĐẦU IoT hiện nay đang là một xu hướng mạnh mẽ trên toàn thế giới, mở ra những cơ hội chưa từng có cho các nền kinh tế, doanh nghiệp, tổ chức và cá nhân để cạnh tranh trong môi trường mới. Rất nhiều các công ty tập đoàn có giá trị thị trường lớn đang đầu tư vào tỷ đô la vào nghiên cứu và phát triển lĩnh vực này trên thế giới. Cha đ của IoT - ông Kevin Ashton (nhà sáng lập Trung tâm Auto-ID tại Viện Công nghệ Massachusetts, M ) từng giải thích, IoT được hiểu đơn giản là viễn cảnh mà tất cả đồ vật trên thế giới, từ chiếc máy bay khổng lồ cho đến những vật dụng bình thường nh bé trong cuộc sống, đều được kết nối, truyền tải, tương tác và trao đổi dữ liệu với nhau qua mạng internet. Khi đó, mỗi đồ vật sẽ được gán một mã nhận dạng, giống như địa chỉ IP trên hệ thống.
Nhờ vậy, người dùng có thể tương tác, điều khiển và kiểm soát mọi thứ trong cuộc sống thông qua những thiết bị thông minh, như điện thoại thông minh, máy tính bảng. [12] Phạm vi ứng dụng công nghệ IoT thực sự rộng lớn và đa dạng, từ quản lý giao thông, quản lý đô thị, quản lý môi trường, ứng phó khẩn cấp đến mua sắm thông minh, các dịch vụ y tế chăm sóc sức kh e. IoT gần đây đã đạt được lực kéo rất lớn. IoT thách thức các doanh nghiệp, các công ty nh , và các nhà phát triển với những vấn đề mới để giải quyết đặc biệt là vấn đề giao tiếp giữa các thiết bị IoT.
Để các thiết bị có thể giao tiếp với nhau, chúng sẽ cần một hoặc nhiều giao thức, có thể xem là một thứ ngôn ngữ chuyên biệt để giải quyết một tác vụ nào đó. Chắc chắn chúng ta đã ít nhiều sử dụng một trong những giao thức phổ biến nhất thế giới, đó là HTTP để tải web. Ngoài ra chúng ta còn có SMTP, POP, IMAP dành cho email, FTP dùng để trao đổi file… Những giao thức như thế này hoạt động ổn bởi các máy chủ web, mail và FTP thường không phải nói với nhau nhiều, khi cần, một phần mềm phiên dịch đơn giản sẽ đứng ra làm trung gian để hai bên hiểu nhau. Còn với các thiết bị IoT, chúng phải đảm đương rất nhiều thứ, phải nói chuyện với nhiều loại máy móc thiết bị khác nhau.
Đáng tiếc rằng hiện người ta chưa có nhiều sự đồng thuận về các giao thức để Luan van 2 IoT trao đổi dữ liệu. Nói cách khác, tình huống này gọi là "giao tiếp thất bại", một bên nói nhưng bên kia không muốn (và không thể) nghe. Hiện nay có rất nhiều giao thức giao tiếp giữa các thiết bị IoT được đưa ra như: HTTP, Universal Plug and Play (UPnP), CoAP, XMPP, MQTT. Trong giai đoạn gần đây giao thức MQTT đang nổi lên như là một giao thức được sử dụng phổ biến dùng cho giao tiếp IoT, rất nhiều hãng công nghệ lớn đã sử dụng, áp dụng và hỗ trợ giao thức MQTT cho các ứng dụng của mình như: Facebook cho ứng dụng Facebook Messenger, IBM, Intel, Amazon, WSO2, Microsoft [7].
Đó là lý do tôi chọn đề tài: “Nghiên cứu giao thức MQTT (Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT” làm luận văn tốt nghiệp. Cấu trúc của luận văn được chia làm ba chương, với nội dung chính của mỗi chương như sau: Chƣơng 1: Tổng quan về Internet of Things (IoT). Chƣơng 2: Tìm hiểu giải pháp thu thập dữ liệu cảm biến bằng công nghệ IoT. Chƣơng 3: Xây dựng ứng dụng IoT thu thập dữ liệu cảm biến theo giao thức MQTT.
Luan van 3 CHƢƠNG I: TỔNG QUAN VỀ INTERNET OF THINGS (IoT) Trong khoảng hai năm trở lại đây, chắc hẳn chúng ta đã không ít lần nghe thoáng qua về khái niệm IoT, hay bắt gặp tin tức về các sản phẩm được quảng cáo là phục vụ cho nhu cầu “smart home” (nhà thông minh). Trong đó, những thiết bị gia dụng như lò nướng hay tủ lạnh có thể "nói chuyện" được với nhau. Nhưng chúng kết nối với nhau như thế nào, và liệu xu hướng này có thực sự bùng nổ, đưa chúng ta đến một thế giới tương lai như trong game hay phim ảnh? Trong bối cảnh mà hàng ngày càng nhiều chủng loại thiết bị được gán mác “thông minh - smart” và thi nhau “lên mây-cloud” như hiện nay, sẽ là không thừa khi chúng ta tìm hiểu các kiến thức căn bản về hệ sinh thái IoT này.1 Giới thiệu về IoT Hình 1. 1: Mô hình Internet of Things (Nguồn: Tham khảo từ internet) IoT là khái niệm để chỉ các thiết bị có khả năng kết nối với nhau, kết nối với Internet và tạo nên một mạng lưới các thiết bị thông minh phục vụ cho cuộc sống người dùng [12].1 Định nghĩa về IoT Hình 1.
2: Sự tăng trƣởng của các thiết bị IoT [12] Mạng lưới vạn vật kết nối Internet viết tắt là IoT là một kịch bản của thế giới, khi mà mỗi đồ vật, con người được cung cấp một định danh của riêng mình và tất cả có khả năng truyền tải, trao đổi thông tin, dữ liệu qua một mạng duy nhất mà không cần đến sự tương tác trực tiếp giữa người với người, hay người với máy tính. IoT đã phát triển từ sự hội tụ của công nghệ không dây, công nghệ vi cơ điện tử và Internet. Nói đơn giản là một tập hợp các thiết bị có khả năng kết nối với nhau, với Internet và với thế giới bên ngoài để thực hiện một công việc nào đó. IoT là thuật ngữ dùng để chỉ các đối tượng có thể được nhận biết cũng như chỉ sự tồn tại của chúng trong một kiến trúc mang tính kết nối.
Cụm từ này được đưa ra bởi Kevin Ashton vào năm 1999. Ông là một nhà khoa học đã sáng lập ra Trung tâm Auto-ID ở đại học MIT, nơi thiết lập các quy chuẩn toàn cầu cho RFID cũng như một số loại cảm biến khác [14]. Vào tháng 6 năm 2009, Ashton từng cho biết rằng "hiện nay máy tính - và do đó, Internet - gần như phụ thuộc hoàn toàn vào con người để chuyển tải dữ liệu. Gần như tất cả trong số 50 petabyte dữ liệu đang có trên Internet (vào thời điểm đó) Luan van 6 đều được ghi lại hoặc tạo ra bởi con người chúng ta, thông qua các các thức như gõ chữ, nhấn nút, chụp ảnh, quét mã vạch.
Con người chính là nhân tố quyết định trong thế giới Internet hiện nay. Thế nhưng con người lại có nhiều nhược điểm: chúng ta chỉ có thời gian hạn chế, khả năng tập trung và độ chính xác cũng ở mức thấp so với máy móc. Điều đó có nghĩa là chúng ta không gi i trong việc thu thập thông tin về thế giới xung quanh, và đây là một vấn đề lớn cần được giải quyết và là yếu tố quyết định để IoT ra đời [14]. 3: Mô hình triến trúc IoT [13] Lớp thiết bị: Có thể gồm nhiều loại thiết bị khác nhau có kết nối trực tiếp hoặc gián tiếp với mạng Internet.
Các giao tiếp kết nối có thể đa dạng: wifi, ethernet, ZigBee, Bluetooth,…Mỗi thiết bị có một tên định danh duy nhất (unique identifier (UUID)) và tên định danh được lưu trong ROM. Luan van 7 Lớp truyền thông (Communications): Lớp này hỗ trợ kết nối giữa các thiết bị và giữa thiết bị với đám mây. Một số giao thức truyền thông được sử dụng phổ biến: MQTT, CoAP, HTTP/HTTPS, Websocket. Lớp tập hợp/bus (Aggregation/Bus layer): Có khả năng hỗ trợ máy chủ HTTP và/hoặc MQTT broker để giao tiếp với thiết bị.
Có khả năng tập hợp và kết hợp các giao tiếp từ các thiết bị khác nhau, và định tuyến các giao tiếp đến một thiết bị chỉ định (có thể qua một gateway). Có khả năng làm cầu nối và chuyển đổi giữa các giao thức khác nhau, ví dụ như cho phép các lời gọi API dựa trên HTTP thành một thông điệp MQTT đi đến thiết bị. Lớp xử lý và phân tích sự kiện (Event Processing and Analytics): Nhận các sự kiện từ bus và cung cấp khả năng xử lý và hành động dựa trên các sự kiện, có khả năng lưu dữ liệu vào CSDL. Lớp truyền thông ngoài (Client/external communications): Hỗ trợ truyền thông với thế giới bên ngoài, Có thể được thực hiện theo ba k thuật: Sử dụng ứng dụng web/portal, sử dụng dashboard (bảng điều khiển), sử dụng các giao tiếp máy- máy (APIs).
Lớp quản lý thiết bị (Device manager): Gồm hai thành phần: Device manager: bộ quản lý thiết bị giao tiếp với Device management agents; Device management agents: các agent quản lý thiết bị chạy trên từng thiết bị. Các thiết bị có thể được quản lý theo ba mức: Không quản lý (non-managed) Quản lý bán phần (semi-managed) Quản lý đầy đủ (fully managed) Lớp quản lý danh tính và truy nhập (Identity and access management): cung cấp các dịch vụ: Cấp phát và kiểm tra OAuth2 token; Luan van 8 Cung cấp các dịch vụ định danh khác như: SAML2 SSO và OpenID Connect; Quản lý người dụng (như LDAP) Quản lý chính sách điều khiển truy cập.2 Lợi ích và vai trò của IoT IoT có ảnh hưởng và ứng dụng rất rộng rãi trên nhiều lĩnh vực như: quản lý hạ tầng, y tế, xây dựng và tự động hóa, giao thông, quân sự, truyền thông, tài chính… Cụ thể trong lĩnh vực y tế, các thiết bị IoT có thể được sử dụng để cho phép theo dõi sức kh e từ xa và hệ thống thông báo khẩn cấp. Các thiết bị theo dõi sức kh e như đo huyết áp, nhịp tim hay các thiết bị tiên tiến có khả năng giám sát cấy ghép đặc biệt như máy điều hòa nhịp tim, máy trợ thính… đang được đưa vào nghiên cứu, sản xuất để phục vụ cho nhu cầu của con người một cách tối ưu nhất. Nhờ IoT, có nhiều ý tưởng độc đáo đã trở thành hiện thực.
Không chỉ phát huy tốt hơn cho công dụng vốn có của thiết bị, IoT còn góp phần đem lại cuộc sống tốt đẹp hơn cho con người Có thể nói, lợi ích của IoT đối với cuộc sống của con người hiện đại là vô cùng phong phú. Không những chỉ quan tâm chăm lo về vấn đề sức kh e, mà còn hướng đến những lợi ích khác về mặt an ninh, giáo dục. Theo như dự báo của các chuyên gia về tiềm năng của IoT đến năm 2020, họ cho rằng, IoT sẽ càng ngày càng phát triển mạnh mẽ hơn nữa. IoT đã và đang trở thành chìa khóa thành công trong tương lai [1].