一.項目目標(biāo)
1、通過中移OneNET物聯(lián)網(wǎng)開放平臺新建產(chǎn)品(MQTT);
2、根據(jù)項目場景創(chuàng)建產(chǎn)品物模型;
3、創(chuàng)建基于MQTT 的云平臺設(shè)備;
4、查看設(shè)備運(yùn)行狀態(tài)及數(shù)據(jù)
5、通過模擬工具調(diào)試設(shè)備接入;
6、通過模擬設(shè)備,實(shí)現(xiàn)屬性上報;
7、OneNET 平臺下發(fā)屬性值(命令)到模擬設(shè)備;
8、基于真實(shí)設(shè)備,搭建軟硬件環(huán)境,接入 OneNET 平臺并實(shí)現(xiàn)設(shè)備屬性上報;
9、通過OneNET 平臺的“設(shè)備調(diào)試”實(shí)現(xiàn)設(shè)備屬性下發(fā);
10、通過OneNET 平臺的“API 調(diào)試”實(shí)現(xiàn)設(shè)備屬性下發(fā);
11、直接基于API 方式實(shí)現(xiàn)設(shè)備屬性下發(fā)
12、學(xué)會OneNET 平臺數(shù)據(jù)可視化編輯器的使用;
13、能夠進(jìn)行可視化數(shù)據(jù)源的配置;
14、對智慧小區(qū)安全防護(hù)系統(tǒng)進(jìn)行可視化展現(xiàn)
二.創(chuàng)建智慧小區(qū)安全防護(hù)系統(tǒng)產(chǎn)品設(shè)備和模擬設(shè)備接入
2.1創(chuàng)建產(chǎn)品設(shè)備
點(diǎn)擊物聯(lián)網(wǎng)開放平臺

點(diǎn)擊產(chǎn)品開發(fā)后點(diǎn)擊創(chuàng)建產(chǎn)品,創(chuàng)建智慧小區(qū)安全防護(hù)系統(tǒng)產(chǎn)品

根據(jù)下圖依次選擇產(chǎn)品品類等,選擇智能化方式為“設(shè)備接入”方式

點(diǎn)擊設(shè)備接入后出現(xiàn)下圖,按照下圖的內(nèi)容填入表中,填完后點(diǎn)擊確認(rèn),創(chuàng)建成功

2.2根據(jù)項目場景創(chuàng)建產(chǎn)品物模型
點(diǎn)擊產(chǎn)品開發(fā)進(jìn)入詳情頁面

點(diǎn)擊“設(shè)置物模型”按鈕,進(jìn)入物模型管理頁面

添加系統(tǒng)功能點(diǎn)

在頁面中像下圖勾選這兩個系統(tǒng)功能點(diǎn),點(diǎn)擊添加完成添加

完成系統(tǒng)功能點(diǎn)添加,添加自定義功能點(diǎn)

點(diǎn)擊“添加自定義功能點(diǎn)”,在彈出的添加頁面中,按如下內(nèi)容,添加
需的功能點(diǎn)信息。分別添加兩個自定義功能點(diǎn)一個為距離,一個為蜂鳴器

第二個自定義功能點(diǎn)

最后點(diǎn)擊保存

保存成功

2.3創(chuàng)建設(shè)備
添加設(shè)備,分別添加名為Controller和入Simulator兩個設(shè)備


2.4設(shè)備狀態(tài)及信息查看
初始創(chuàng)建的設(shè)備,顯示為“未激活”,當(dāng)實(shí)體設(shè)備使用該條設(shè)備信息接入到 OneNET 平臺后,則顯示為“在線”,斷開與OneNET 平臺的連接后,則顯示為“離線”,

查看設(shè)備詳細(xì)信息

切換到“屬性”頁面,可以查看當(dāng)前設(shè)備下的各個物模型功能點(diǎn)實(shí)際數(shù)據(jù)

點(diǎn)擊運(yùn)維監(jiān)控展開,“設(shè)備日志”子菜單,查看設(shè)備日志

2.5 設(shè)備分組管理
創(chuàng)建設(shè)備分組

創(chuàng)建成功后點(diǎn)擊詳情

key 可用于按分組方式接入 OneNET 平臺的方式時,計算 Token 的授權(quán)憑據(jù)

點(diǎn)擊“添加設(shè)備”按鈕,彈出的頁面展示了左右兩欄設(shè)備列表。勾選下圖兩個設(shè)備進(jìn)行分組


2.6模擬設(shè)備接入
模擬設(shè)備接入OneNET 平臺
打開token將產(chǎn)品ID和設(shè)備密鑰 ...填入,點(diǎn)擊“Generate”按鈕,在工具下方輸入框計算產(chǎn)生 token

安裝并配置 MQTT.fx 工具模擬設(shè)備信息
進(jìn)入客戶端配置頁面:按下圖填入相關(guān)數(shù)據(jù),其中MQTT 協(xié)議版本號:取消默認(rèn)勾中,確保下方版本選擇下拉框可選,并選擇為 3.1.1

點(diǎn)擊 “User Credentials”選項頁,繼續(xù)設(shè)置

使用 MQTT.fx 工具模擬設(shè)備接入
運(yùn)行 MQTT.fx 工具,點(diǎn)擊選擇剛剛保存的連接配置列表項,點(diǎn)擊“Connect”,如果一切正常,工具將很快登陸接入OneNET 平臺,此時 Connect 按鈕變灰,右側(cè)Disconnect 按鈕處于激活狀態(tài)。

可以點(diǎn)擊”Log“ 選項頁,查看工具連接服務(wù)端的情況,正常連接成功則提示類似如下圖紅框所示信息

當(dāng)工具顯示正常連接后,查看OneNET 平臺中當(dāng)前模擬的設(shè)備在頁面顯示為在線狀態(tài),點(diǎn)擊 MQTT 工具窗口中的 “Disconnect”按鈕,斷開工具的 MQTT 連接,等待一會兒后,刷新OneNET平臺中設(shè)備列表頁面,查看顯示的設(shè)備狀態(tài)信息:可以看到其狀態(tài)都變?yōu)殡x線。

模擬設(shè)備接入OneNET 平臺實(shí)現(xiàn)屬性上報
訂閱屬性上報結(jié)果通知消息
根據(jù)實(shí)際創(chuàng)建的產(chǎn)品和設(shè)備信息替換,將替換后完整的 topic,填入模擬
工具“Subscribe”選項頁中的輸入框,如下圖所示

點(diǎn)擊“Subscribe”按鈕向平臺訂閱該主題,平臺返回成功后,工具左側(cè)中的已訂閱主題列表會有一條記錄,且該主題下當(dāng)前消息數(shù)為 0

發(fā)送屬性上報消息
點(diǎn)擊“Publish”選項頁表頭將其中的產(chǎn)品 ID、設(shè)備名稱替換為實(shí)際的信息后填入該輸入框
在下空白編輯區(qū)中,輸入如下內(nèi)容:第二個框內(nèi)的內(nèi)容
輸入并檢查無誤后,點(diǎn)擊“Publish”按鈕

查看屬性上報結(jié)果
點(diǎn)擊“Subscribe”選項頁表頭,查看之前訂閱的屬性上報結(jié)果通知消息 topic 下,收到的消息如下圖

OneNET 平臺中查看設(shè)備的屬性最新值

OneNET 平臺下發(fā)屬性值到模擬工具
訂閱接收平臺下發(fā)屬性數(shù)據(jù)的 topic
點(diǎn)擊模擬工具的“Subscribe”選項頁表頭,在其中的輸入框填寫平臺下發(fā)屬性數(shù)據(jù)的 topic。點(diǎn)擊“Subcribe”按鈕完成訂閱

在“設(shè)備管理”中選擇要下發(fā)屬性的設(shè)備,點(diǎn)擊詳情進(jìn)入設(shè)備信息頁面,切換功能為“設(shè)備調(diào)試”

如下圖填入數(shù)據(jù)

點(diǎn)擊“Subscribe”選項頁表頭,可以看到已訂閱列表中,關(guān)于平臺下發(fā)屬性數(shù)據(jù)的topic, 當(dāng)前消息數(shù)是 1。點(diǎn)擊右側(cè)消息列表最下方一條消息,可以看到其中的內(nèi)容信息,收到的值與前一步驟中下發(fā)的值相同

仿真設(shè)備信息上傳
1 進(jìn)入設(shè)備調(diào)試功能

啟動設(shè)備模擬器
輸入關(guān)鍵字搜索定位到“WiFi定位”屬性數(shù)據(jù)點(diǎn),勾中前面的選框,并點(diǎn)擊右側(cè)下拉展開 箭 頭 , 在 該 數(shù) 據(jù) 點(diǎn) 下 的 “ 熱 點(diǎn) mac 信 息 ” 輸 入 框 中 輸 入 某 個 WiFi 熱 點(diǎn) 的 mac 地 址 信 息 , 如
dc:fe:18:f2:4c:67|ac:b3:b5:1d:63:80。點(diǎn)擊下方的“屬性上報”

觀察頁面右側(cè)顯示的數(shù)據(jù)上報及平臺回應(yīng)信息,確認(rèn)數(shù)據(jù)成功上報

在設(shè)備詳情頁面查看設(shè)備上報的熱點(diǎn)位置信息數(shù)據(jù)

三.基于真實(shí)設(shè)備接入 OneNET 平臺
搭建實(shí)訓(xùn)項目終端硬件平臺
“核心模塊”以及“Wifi 模塊”、“蜂鳴器模塊”、 “超聲波模塊”

修改設(shè)備程序的 OneNET 平臺網(wǎng)絡(luò)接入配置參數(shù)
輸入自己的Wifi 網(wǎng)絡(luò)用戶名和密碼
UsartPrintf(USART_DEBUG, "Tips: AT+CWJAP\r\n");
if(!NET_DEVICE_SendCmd("AT+CWJAP=\"223345\",\"052052052\"\r\n", "GOT IP", 400))
編譯成功,燒入代碼

等待上線

OneNET 平臺側(cè)查看設(shè)備上報數(shù)據(jù)信息

下發(fā)屬性在終端設(shè)備上執(zhí)行生效(設(shè)備調(diào)試)
設(shè)備處于上線狀態(tài)執(zhí)行,根據(jù)圖片選擇,進(jìn)入 OneNET 平臺 的設(shè)備調(diào)試功
能頁面

先勾選一個功能點(diǎn),然后設(shè)置下發(fā)的數(shù)值。

下圖調(diào)試日志展示了下發(fā)的報文

下發(fā)屬性在終端設(shè)備上執(zhí)行生效(API 調(diào)試)
在設(shè)備處于在線狀態(tài),進(jìn)入“API 調(diào)試”功能頁面

在中間頁面展示的必填參數(shù)中,填寫頁面中輸入必要的參數(shù)

點(diǎn)擊下方的“執(zhí)行”按鈕,等待一會兒后,設(shè)備端執(zhí)行下發(fā)的屬性值(蜂鳴器響),同時右側(cè)列頁面刷新顯示出調(diào)用結(jié)果

調(diào)試工具 Postman
在 Postman 工具的 Body 選項頁內(nèi)填入下圖內(nèi)容

在Header內(nèi)填入下圖 內(nèi)容

token用于生成上圖第2步的內(nèi)容

點(diǎn)擊send發(fā)起 API 請求,查看結(jié)果,蜂鳴器模塊響起

基于OneNET 云平臺的場景聯(lián)動
點(diǎn)擊頁面右上角“新建場景”,填寫場景名稱,“距離太近告警”的場景,

選擇觸發(fā)條件為依次選擇下圖中的內(nèi)容

增加“執(zhí)行動作”

點(diǎn)擊“確定”創(chuàng)建好改場景信息,并修改其啟用狀態(tài)為“開”。

再新增一個聯(lián)動規(guī)則,實(shí)現(xiàn)距離安全時取消告警

設(shè)備上線后觀察到聯(lián)動日志

四安全防護(hù)系統(tǒng)的可視化實(shí)現(xiàn)
創(chuàng)建可視化項目


增加數(shù)據(jù)源模板

跟圖填寫

添加控件:常規(guī)圖表中的平滑折線圖

設(shè)置圖表的數(shù)據(jù)來源


“數(shù)據(jù)源選擇”下拉列表會出現(xiàn)一條可選的記錄,代表以“distance” 模板生成的記錄,選擇該條記錄作為折線圖的數(shù)據(jù)源

設(shè)置不使用數(shù)據(jù)過濾器

切換回“樣式”屬性 Tab 頁。展開“數(shù)據(jù)系列”的節(jié)點(diǎn),修改列字段名為“value”

保存視圖,完成可視化項

五.實(shí)訓(xùn)問題及解決
問題:在進(jìn)行posman中蜂鳴器沒有反應(yīng)
解決:經(jīng)過多方面排查對比,發(fā)現(xiàn)了該實(shí)驗的基礎(chǔ)得在設(shè)備上線時進(jìn)行更改后成功
問題:模擬設(shè)備接入OneNET 平臺中設(shè)備沒成功上線
解決:多方面檢查成功發(fā)現(xiàn)有一處是填產(chǎn)品ID不是填用戶ID,改正后成功
六.總結(jié)
在本次實(shí)訓(xùn)中進(jìn)行可視化數(shù)據(jù)源的配置對可視化較為掌握了一些規(guī)范,學(xué)會了3種去控制蜂鳴器的方法,也了解使用屬性上報和屬性下發(fā) 的基礎(chǔ)知識,并在這次實(shí)驗中遇到一些問題,并學(xué)會去解決它,提高了自己排查問題的能力和動手能力,對 OneNET 有了更深一步的認(rèn)識,了解到了基于 OneNET 的智慧小區(qū)安全防護(hù)系統(tǒng)的大概流程,也進(jìn)一步提高自己的動手技能了