RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

手把手教你使用物模型連接DDSU電表

億佰特物聯(lián)網(wǎng)應(yīng)用專家 ? 2024-06-14 08:21 ? 次閱讀

物模型其實就是云平臺對產(chǎn)品功能的數(shù)字化描述。以“燈”為例,最簡單的“燈”具有“開”和“關(guān)”屬性,只需要在平臺定義一個布爾量的數(shù)據(jù)點位,有些高級的“燈”還具有“亮度”、“色溫”、“顏色”等屬性,可以和簡單“燈”一樣定義多個屬性描述,也可以定義一個結(jié)構(gòu)體,下圖就是基于阿里云“物聯(lián)網(wǎng)平臺”定義的兩種“燈具”舉例。

fbb65c3e-29e3-11ef-a655-92fbcf53809c.pngfbc3098e-29e3-11ef-a655-92fbcf53809c.png

利用物模型規(guī)范數(shù)據(jù)傳輸?shù)母袷礁玫恼虾凸芾矶鄻踊漠a(chǎn)品數(shù)據(jù),提高數(shù)據(jù)處理和交互的效率,方便將設(shè)備接入軟件即服務(wù)(SaaS)、平臺即服務(wù)(PaaS)等云服務(wù)類型,比如利用“云智能”通用模板“零代碼”開發(fā)手機應(yīng)用以及利用“物聯(lián)網(wǎng)平臺”增值服務(wù)開發(fā)Web服務(wù)。

阿里云物模型使用

使用物模型需要對產(chǎn)品的功能進行定義,添加“燈”和“可控?zé)簟眱蓚€屬性,其中“燈”僅支持“開”“關(guān)”操作,而“可控?zé)簟背恕伴_關(guān)”以外還可以進行“亮度”“色溫”“顏色”控制。

fc19954c-29e3-11ef-a655-92fbcf53809c.png

配置完成點擊“發(fā)布上線”即可,此時在進入設(shè)備界面的“物模型數(shù)據(jù)”下可以查看剛才添加的屬性。

fc40c8d8-29e3-11ef-a655-92fbcf53809c.png

根據(jù)阿里云物模型JSON規(guī)則配置的上傳數(shù)據(jù)格式:

{"id":"123","version":"1.0","params":{"light":1,"advanced_light":{"on":1,"luminance":500,"Temperature":1000,"colour":100}},"method":"thing.event.property.post"}

利用Node-RED推送JSON報文到阿里云規(guī)定的屬性上報窗口,就可以在設(shè)備窗口查詢到上報的屬性;

fc63655a-29e3-11ef-a655-92fbcf53809c.pngfc76ab74-29e3-11ef-a655-92fbcf53809c.png

阿里云官方提供的實例演示地址:https://help.aliyun.com/zh/iot/getting-started/using-mqtt-fx-to-access-iot-platform?spm=a2c4g.11186623.0.0.12254df9kv2LCH

上述報文如何配置的都可以在此處查詢,除此之外,還需要了解平臺推送數(shù)據(jù)的方法。

阿里云和ONENET推送設(shè)置的格式基本一致,但ONENET平臺需要在收到數(shù)據(jù)后向指定地址推送接收成功的報文,講解ONENET時再展開說明;

還是以控制“燈”為例,了解平臺下發(fā)數(shù)據(jù)的報文,下述報文為平臺關(guān)閉“燈”并配置控制“可控?zé)簟睜顟B(tài)的報文:

{"id":"2024306076","version":"1.0","params":{"light":0,"advanced_light":{"on":1,"luminance":500,"Temperature":1000,"colour":100}},"method":"thing.service.property.set"}

ONENET物模型使用

所有的云平臺物模型功能較為相似,ONENET和阿里云一樣描述為功能定義,除了UI有差異外其余基本一致。

fc87e5ba-29e3-11ef-a655-92fbcf53809c.png

報文上與阿里云也比較類似,與阿里云列舉相同案例:

{"id":"123","version":"1.0","params":{"light":{"value":0,"time":1524448722123}}}

相比阿里云增加了數(shù)據(jù)點位的時間戳功能;

fcab5af4-29e3-11ef-a655-92fbcf53809c.png

fcb0a64e-29e3-11ef-a655-92fbcf53809c.png

設(shè)備屬性設(shè)置和阿里云相同,只是沒有“method”字段,最大的差異時平臺設(shè)置需要設(shè)備響應(yīng),否則服務(wù)器會返回錯誤。

DDSU666電表數(shù)據(jù)上報

《Node-RED實現(xiàn)電表數(shù)據(jù)上云》一文中使用Node-RED通過“MQTT節(jié)點”并利用“自定義topic”將透明報文數(shù)據(jù)傳輸至服務(wù)器實現(xiàn)了電表數(shù)據(jù)上云,通過自定義topic的方式連接服務(wù)器,無法使用平臺的其他開發(fā)工具,通過前面對阿里云與中移物聯(lián)網(wǎng)的物聯(lián)網(wǎng)平臺的物模型進行報文分析,接下來就手把手教大家使用物模型連接DDSU電表。

前文指路:

Node-RED實現(xiàn)電表數(shù)據(jù)采集并上云

下圖為《Node-RED實現(xiàn)電表數(shù)據(jù)上云》的系統(tǒng)框架,接下來就在此基礎(chǔ)上添加JSON報文解析和報文組合就可以實現(xiàn)物模型控制。

fccee2a8-29e3-11ef-a655-92fbcf53809c.png

按照“阿里云物模型使用”提供方法在定義“正向有功總功率”“當(dāng)前電壓”“當(dāng)前電流”“當(dāng)前功率”“查詢代碼”五條屬性(查詢代碼采用枚舉,其余需要使用浮點值),之后就是在“阿里云查詢”節(jié)點后添加兩個函數(shù)節(jié)點,分別用于提取平臺查詢代碼和查詢代碼保存(后續(xù)上報時需要用到)。

fcefd4e0-29e3-11ef-a655-92fbcf53809c.png

函數(shù)(提取查詢代碼)1:

msg.payload = msg.payload.params.Query_code;

return msg;

函數(shù)(保存查詢代碼)2:

var QueryCode=0;

flow.set("QueryCode", msg.payload);

return QueryCode;

以上步驟就可以完成阿里云平臺下發(fā)的配置指令解析,隨后和之前一樣,通過查詢碼,查詢電表數(shù)據(jù)。

fcf9d59e-29e3-11ef-a655-92fbcf53809c.png

待“電表解析”完成后,增加函數(shù)節(jié)點,組合JSON報文;

fd1ca5c4-29e3-11ef-a655-92fbcf53809c.png

函數(shù)(ALIYUN報文配置)3:

var cache={"id":"123","version":"1.0","params":{},"method":"thing.event.property.post"};

cache.id = String(Date.parse(new Date())/1000);//將id數(shù)據(jù)用時間戳替換

var QueryCode=flow.get('QueryCode') || 0;

switch (QueryCode){

case 1:

cache.params.P = parseFloat(msg.payload);

break;

case 2:

cache.params.V = parseFloat(msg.payload);

break;

case 3:

cache.params.I = parseFloat(msg.payload);

break;

case 4:

cache.params.p = parseFloat(msg.payload);

break;

}

msg.payload=cache;

return msg;

調(diào)整“阿里云查詢”“阿里云上報”的地址:

阿里云查詢(屬性設(shè)置):/sys/a1iJTfIclao/DEV01/thing/service/property/set

fd21ab28-29e3-11ef-a655-92fbcf53809c.png

阿里云上報(屬性上報):/sys/a1iJTfIclao/DEV01/thing/event/property/post

fd4b1f58-29e3-11ef-a655-92fbcf53809c.png

同阿里云一樣的方法定義五個屬性,分別為“正向有功總電能”“當(dāng)前電壓”“當(dāng)前電流”“當(dāng)前功率”“查詢代碼”。

fda5888a-29e3-11ef-a655-92fbcf53809c.png

添加“mqtt in”節(jié)點、“函數(shù)”(返回報文)、“mqtt out”節(jié)點;

fdc918a4-29e3-11ef-a655-92fbcf53809c.png

函數(shù)(返回報文),需要id一致:

var msg_cache = {"id":"1","code":200,"msg":"success"};

msg_cache.id=msg.payload.id;

msg.payload=msg_cache;

return msg;

fdea7990-29e3-11ef-a655-92fbcf53809c.png

解析過程與阿里云同步,調(diào)整函數(shù)(ONENET報文配置):

var cache={"id":"123","version":"1.0","params":{}};

cache.id = String(Date.parse(new Date())/1000);//將id數(shù)據(jù)用時間戳替換

var QueryCode=flow.get('QueryCode') || 0;

switch (QueryCode){

case 1:

cache.params.P={};

cache.params.P.value = parseFloat(msg.payload);

cache.params.P.time = Date.parse(new Date());//上傳時間錯

break;

case 2:

cache.params.V={};

cache.params.V.value = parseFloat(msg.payload);

cache.params.V.time = Date.parse(new Date());

break;

case 3:

cache.params.I={};

cache.params.V.value = parseFloat(msg.payload);

cache.params.I.time = Date.parse(new Date());

break;

case 4:

cache.params.p={};

cache.params.V.value = parseFloat(msg.payload);

cache.params.p.time = Date.parse(new Date());

break;

}

msg.payload=cache;

return msg;

ONENET查詢(屬性設(shè)置):$sys/QpUi02FdgF/220220069406/thing/property/set

fe06d9aa-29e3-11ef-a655-92fbcf53809c.png

返回接收成功(屬性設(shè)置響應(yīng)):$sys/QpUi02FdgF/220220069406/thing/property/set_reply

fe384ff8-29e3-11ef-a655-92fbcf53809c.png

ONENET上報(屬性上報):$sys/QpUi02FdgF/220220069406/thing/property/post

fe5fb9a8-29e3-11ef-a655-92fbcf53809c.png

至此,就成功將DDSU666電表連接到阿里云與中移物聯(lián)網(wǎng)。

fe655bce-29e3-11ef-a655-92fbcf53809c.png

ONENET調(diào)試窗口查詢電表數(shù)據(jù);

fe889dfa-29e3-11ef-a655-92fbcf53809c.png

ALIYUN調(diào)試窗口查詢電表數(shù)據(jù);

fe99574e-29e3-11ef-a655-92fbcf53809c.png

產(chǎn)品推薦

febb994e-29e3-11ef-a655-92fbcf53809c.jpg

E870-G1邊緣計算網(wǎng)關(guān)是基于億佰特自行研發(fā)的通訊協(xié)議《億佰特云設(shè)備通訊協(xié)議》開發(fā)的以太網(wǎng)/4G邊緣采集云網(wǎng)關(guān),可通過服務(wù)器下發(fā)指令到設(shè)備達到控制或采集功能;可采集500個邊緣數(shù)據(jù)點。設(shè)備上支持多種協(xié)議(TCP、UDP、MQTT)接入服務(wù)器,支持心跳包、注冊包設(shè)置;同時該產(chǎn)品支持多種配置方式,支持網(wǎng)頁平臺;采用工業(yè)級設(shè)計標(biāo)準(zhǔn),保證設(shè)備的高可靠性。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44557

    瀏覽量

    372754
  • 電表
    +關(guān)注

    關(guān)注

    12

    文章

    554

    瀏覽量

    35320
  • 云平臺
    +關(guān)注

    關(guān)注

    1

    文章

    1302

    瀏覽量

    38942
收藏 人收藏

    評論

    相關(guān)推薦

    圖文教程:手把手教你焊接貼片元件

    圖文教程:手把手教你焊接貼片元件,首先來張全部焊接一個點的PCB圖
    發(fā)表于 04-01 11:03 ?3.6w次閱讀
    圖文教程:<b class='flag-5'>手把手</b><b class='flag-5'>教你</b>焊接貼片元件

    手把手教你構(gòu)建一個完整的工程

    手把手教你構(gòu)建一個完整的工程
    發(fā)表于 08-03 09:54 ?33次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>構(gòu)建一個完整的工程

    手把手教你寫批處理-批處理的介紹

    手把手教你寫批處理-批處理的介紹
    發(fā)表于 10-25 15:02 ?69次下載

    美女手把手教你如何裝機(中)

    美女手把手教你如何裝機(中) 再來是硬碟的部份,這款機殼還不錯,可以旋轉(zhuǎn)支架~
    發(fā)表于 01-27 11:14 ?1462次閱讀

    美女手把手教你如何裝機(下)

    美女手把手教你如何裝機(下) 接著下來就是今天的重頭戲,開核蘿!~
    發(fā)表于 01-27 11:16 ?2923次閱讀

    手把手教你學(xué)習(xí)FPGA—LED篇

    電子專業(yè)單片機相關(guān)知識學(xué)習(xí)教材資料——手把手教你學(xué)習(xí)FPGA—LED篇
    發(fā)表于 08-08 17:19 ?0次下載

    手把手教你學(xué)電子書制作

    手把手教你學(xué)電子書制作,可以自己DIY電子書
    發(fā)表于 09-13 11:26 ?0次下載

    手把手教你安裝Quartus II

    本章手把手把教你如何安裝 Quartus II 軟件 ,并將它激活 。此外 還有USB -Blaster下載器的驅(qū)動安裝步驟 。
    發(fā)表于 09-18 14:55 ?9次下載

    手把手教你在家搭建監(jiān)控系統(tǒng)

    手把手教你在家搭建監(jiān)控系統(tǒng)
    發(fā)表于 01-17 19:47 ?25次下載

    手把手教你做電子時鐘---前言

    手把手教你做彩鈴電子時鐘
    發(fā)表于 11-14 16:53 ?11次下載

    手把手教你如何開始DSP編程

    手把手教你如何開始DSP編程。
    發(fā)表于 04-09 11:54 ?12次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>如何開始DSP編程

    手把手教你學(xué)LabVIEW視覺設(shè)計

    手把手教你學(xué)LabVIEW視覺設(shè)計手把手教你學(xué)LabVIEW視覺設(shè)計手把手教你學(xué)LabVIEW視
    發(fā)表于 03-06 01:41 ?3129次閱讀

    手把手教你開關(guān)電源PCB排板

    手把手教你開關(guān)電源PCB排板(新型電源技術(shù))-分享一下開關(guān)電源PCB排板的基本要點及分析,以及例子講解。絕對的手把手
    發(fā)表于 09-18 12:27 ?57次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>開關(guān)電源PCB排板

    手把手教你開發(fā)基于單片機的wifi通信的聯(lián)網(wǎng)項目(遠程燈控制)

    手把手教你開發(fā)基于單片機的wifi通信的聯(lián)網(wǎng)項目(遠程燈控制)
    發(fā)表于 11-12 19:36 ?18次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>開發(fā)基于單片機的wifi通信的<b class='flag-5'>物</b>聯(lián)網(wǎng)項目(遠程燈控制)

    手把手教你學(xué)FPGA仿真

    電子發(fā)燒友網(wǎng)站提供《手把手教你學(xué)FPGA仿真.pdf》資料免費下載
    發(fā)表于 10-19 09:17 ?2次下載
    <b class='flag-5'>手把手</b><b class='flag-5'>教你</b>學(xué)FPGA仿真
    RM新时代网站-首页