新聞中心
簡(jiǎn)易指南:LwM2M在Linux中的安裝

隨著物聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,對(duì)于設(shè)備管理的需求越來(lái)越迫切。Lightweight M2M (LwM2M) 是一種輕量級(jí)的機(jī)器到機(jī)器 (M2M) 通信協(xié)議,適用于物聯(lián)網(wǎng)設(shè)備的遠(yuǎn)程管理和控制。其特點(diǎn)是靈活、簡(jiǎn)單,同時(shí)具有較高的安全性和效率。本文將介紹如何在 Linux 系統(tǒng)中安裝和配置 LwM2M 協(xié)議。
一、前置需求
在本教程中,我們將使用 Contiki-NG 操作系統(tǒng)作為示例。使用 LwM2M 的前置條件有:
1. Contiki-NG 系統(tǒng) (相關(guān)文獻(xiàn)可在 Contiki 官方網(wǎng)站上找到)
2. CoAP 庫(kù)的安裝
3. 將 LwM2M 庫(kù)包括在應(yīng)用程序(內(nèi)核)中
4. 注冊(cè)一個(gè) LwM2M 服務(wù)器
二、安裝 CoAP 庫(kù)
CoAP 是一種特殊的應(yīng)用層協(xié)議,用于嵌入式 Web 服務(wù)和物聯(lián)網(wǎng)設(shè)備之間的通信。在 Linux 系統(tǒng)中安裝 CoAP 庫(kù)的步驟如下:
1. 從 GitHub 上下載 Contiki-NG。輸入以下命令:
$ git clone https://github.com/contiki-ng/contiki-ng.git
2. 進(jìn)入 Contiki-NG 目錄。輸入以下命令:
$ cd contiki-ng
3. 編譯和安裝 Contiki-NG。輸入以下命令:
$ make TARGET=native
$ make TARGET=native install
4. 安裝 CoAP 庫(kù)。輸入以下命令:
$ sudo apt-get install libcoap-dev libssl-dev
例如,如果您使用的是 Ubuntu 系統(tǒng),請(qǐng)?jiān)诮K端中輸入以下命令:
$ sudo apt-get update
$ sudo apt-get install libcoap-dev
三、將 LwM2M 庫(kù)包括在應(yīng)用程序中
將 LwM2M 庫(kù)包括在您的應(yīng)用程序中,可通過(guò) Contiki-NG 源代碼中的以下目錄來(lái)實(shí)現(xiàn):
‘examples/lwm2m-client/’
該目錄包含了一個(gè)示例應(yīng)用程序的所有源代碼,它演示了如何將 LwM2M 庫(kù)包括在一個(gè)應(yīng)用程序中。
四、配置應(yīng)用程序
在應(yīng)用程序中配置 LwM2M 的步驟如下:
1. 修改 `Makefile` 文件
這個(gè)文件是用來(lái)編譯應(yīng)用程序的。修改該文件中的以下行:
APPS += er-coap
TARGET_LIBFILES += -lcoap
2. 選擇 LwM2M 服務(wù)器
您必須選擇一個(gè) LwM2M 服務(wù)器來(lái)托管您的設(shè)備。注冊(cè)一個(gè) LwM2M 服務(wù)器有一些步驟,我們將在下一個(gè)章節(jié)中進(jìn)行講解。
3. 配置服務(wù)器
您需要編輯應(yīng)用程序中的源代碼文件,以匹配您注冊(cè)的 LwM2M 服務(wù)器的配置。更改以下行:
#define SERVER_HOST “coap://localhost:5683”
#define ENDPOINT_NAME “urn:dev:mac”
其中,`SERVER_HOST` 是您的 LwM2M 服務(wù)器的 IP 地址和端口號(hào),`ENDPOINT_NAME` 是給設(shè)備分配的唯一名稱。
五、注冊(cè) LwM2M 服務(wù)器
在您可以使用 LwM2M 協(xié)議管理和控制設(shè)備之前,必須先注冊(cè)一個(gè)可以管理設(shè)備的 LwM2M 服務(wù)器。注冊(cè) LwM2M 服務(wù)器的步驟如下:
1. 選擇一個(gè) LwM2M 服務(wù)器
您可以選擇一個(gè)開(kāi)源的 LwM2M 服務(wù)器,如 Leshan (https://www.eclipse.org/leshan/)。
2. 配置 LwM2M 服務(wù)器
在 LwM2M 服務(wù)器中,您需要配置一些參數(shù)。有關(guān)如何配置 LwM2M 服務(wù)器的指導(dǎo),請(qǐng)參閱該服務(wù)器的文檔。
3. 設(shè)備端注冊(cè)
為了讓設(shè)備成功連接 LwM2M 服務(wù)器,您需要在設(shè)備端注冊(cè)。這意味著將設(shè)備 ID、訪問(wèn)密鑰等信息提供給服務(wù)器。根據(jù)設(shè)備類型和配置的 LwM2M 服務(wù)器,可能有一些額外的步驟。
六、運(yùn)行應(yīng)用程序
現(xiàn)在已經(jīng)準(zhǔn)備好了所有必需的文件和配置,您可以啟動(dòng)應(yīng)用程序和相關(guān)的 LwM2M 服務(wù)器,并通過(guò) CoAP 協(xié)議來(lái)遠(yuǎn)程管理和控制您的物聯(lián)網(wǎng)設(shè)備了。以下命令用于編譯并運(yùn)行 LwM2M 應(yīng)用程序。在 Contiki-NG 根目錄下打開(kāi)終端,輸入以下命令:
$ make TARGET=native examples/lwm2m-client/lwm2m-client
或者,您也可以通過(guò) USB 接口將代碼燒錄到您的物聯(lián)網(wǎng)設(shè)備中,并相應(yīng)地啟動(dòng)設(shè)備。
結(jié)論
本文介紹了如何在 Linux 系統(tǒng)中安裝和配置 LwM2M 協(xié)議。LwM2M 是一種輕量級(jí)的機(jī)器到機(jī)器 (M2M) 通信協(xié)議,適用于物聯(lián)網(wǎng)設(shè)備的遠(yuǎn)程管理和控制。通過(guò)遵循上述步驟,您可以在設(shè)備和服務(wù)器之間建立連接,支持在物聯(lián)網(wǎng)設(shè)備上執(zhí)行各種操作,并實(shí)現(xiàn)快速和高效的遠(yuǎn)程管理和控制。
相關(guān)問(wèn)題拓展閱讀:
- LwM2M協(xié)議初識(shí)_2023.06.06
LwM2M協(xié)議初識(shí)_2023.06.06
學(xué)習(xí)基于記錄,而不止于記錄。
希望自己能堅(jiān)持下去~
出于工作需求,涉及物聯(lián)網(wǎng)相關(guān),綜合考慮物聯(lián)傳輸協(xié)議選型,決定使用LwM2M。本文作為本人一篇學(xué)習(xí)筆記,難免錯(cuò)漏,有路過(guò)大神歡迎指正。隨著后續(xù)學(xué)習(xí)深入,會(huì)繼續(xù)更新(大概吧)。
這里貼上 官網(wǎng)地址 ,目前中文搜索引擎優(yōu)先提供的都是一些第三方機(jī)構(gòu)或者開(kāi)發(fā)人員給出的對(duì)于協(xié)議方面的定義,這一塊建議還是看看官網(wǎng),由于是英文,可以使用中文插件漢化一下,如下。
其實(shí)理解起來(lái)也不用那么復(fù)雜,LwM2M,全稱:light weight machine to machine,顧名思義就是一種面向機(jī)器與機(jī)器,或者設(shè)備與設(shè)備之間的輕量級(jí)協(xié)議,是一種數(shù)據(jù)傳輸標(biāo)準(zhǔn)。
另外,協(xié)議棧如下圖所示,傳輸層采用的是UDP或者S協(xié)議(侍吵笑這里不討論后者);應(yīng)用層老含協(xié)議,是Coap,而LwM2M是基于Coap協(xié)議,所以說(shuō),要想了解LwM2M還是得先知道Coap協(xié)議,這里貼上一篇 Coap相關(guān)文章 ,可以先看看作為了解,另附 coap協(xié)議的官方文檔 ;至于中間的DTLS是安全協(xié)議,同時(shí)因?yàn)閁DP的特性決定,LwM2M注定是一種非可靠性的協(xié)議,而加入DTLS可以一定程度確保其可靠性,再附上 DTLS協(xié)議的官方文檔 。最后,有篇知乎專欄作為入門文章相當(dāng)不錯(cuò),貼在這里, LwM2M 協(xié)議介紹 。
看了不少博客和業(yè)內(nèi)前輩的總結(jié),關(guān)于LwM2M說(shuō)明了很多東西,但是其實(shí)很重要的一個(gè)特性就是資源,LwM2M協(xié)議將服務(wù)端和客戶端之間的交互,其實(shí)都設(shè)計(jì)為對(duì)于資源的操作,客戶端成功將自己注冊(cè)到服務(wù)端,并且告知服務(wù)端,自己所擁有的資源,服務(wù)端據(jù)此注冊(cè)信息,可以發(fā)起對(duì)資源的操作。
而LwM2M本身也是提供了一些最基本的資源供開(kāi)發(fā)者使用,這里呢,看下 官方LwM2M 注冊(cè)表 API ,里面做碰尺了說(shuō)明,如下(已漢化):
點(diǎn)擊對(duì)象發(fā)現(xiàn)里面的最新鏈接,需要注意的是label為0的是OMA定義,如下(只截取了部分):
資源的請(qǐng)求風(fēng)格,是restful風(fēng)格,比如,如果讀取id為19對(duì)象,之一個(gè)資源,及其下的之一個(gè)資源實(shí)例,便是 /19/0/0 ,根據(jù)權(quán)限,服務(wù)端可以對(duì)資源進(jìn)行讀取、刪除、寫入等操作,同事服務(wù)端可以對(duì)設(shè)備進(jìn)行管理,例如發(fā)現(xiàn)、注冊(cè)或者取消注冊(cè)等操作。
作為開(kāi)發(fā)者,我們更加關(guān)注是技術(shù)細(xì)節(jié)實(shí)現(xiàn),那么如果選擇LwM2M作為傳輸協(xié)議,我們?cè)撛趺磳?shí)現(xiàn),適合Java的LwM2M框架就是 Eclipse Leshan 。官網(wǎng)首頁(yè)如下:
目前了解還比較淺,所以能說(shuō)的也比較少,關(guān)于這方面的資料國(guó)內(nèi)不多,英文的啃起來(lái)難受,目前進(jìn)度推進(jìn)緩慢,只能勉強(qiáng)搭建起環(huán)境,后續(xù)應(yīng)該還會(huì)更新關(guān)于Leshan的相關(guān)使用。
關(guān)于lwm2m linux安裝的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
成都網(wǎng)站營(yíng)銷推廣找創(chuàng)新互聯(lián),全國(guó)分站站群網(wǎng)站搭建更好做SEO營(yíng)銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價(jià)格厚道。提供成都服務(wù)器托管租用、綿陽(yáng)服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽(yáng)服務(wù)器機(jī)房服務(wù)器托管租用。
新聞標(biāo)題:簡(jiǎn)易指南:lwm2m在Linux中的安裝 (lwm2m linux安裝)
當(dāng)前鏈接:http://www.5511xx.com/article/dhchoei.html


咨詢
建站咨詢
