本案例將通過(guò)Docker容器安裝DLT-645協(xié)議插件采集實(shí)現(xiàn)電表數(shù)據(jù)上云,前面已經(jīng)講過(guò)Modbus RTU協(xié)議通過(guò)Node -RED上云,如果采用支持Modbus RTU電表可以參考之前的“Docker容器實(shí)現(xiàn)邊緣采集”。
首先需要搭建Node-RED運(yùn)行環(huán)境,可以參考以往案例,也可以直接百度搜索,接下來(lái)的部分都是在搭建好環(huán)境的基礎(chǔ)上進(jìn)行。
安裝插件
打開(kāi)“菜單”選擇“節(jié)點(diǎn)管理”在點(diǎn)擊控制板,選擇“安裝”;
搜索插件“node-red-contrib-meter-works”,點(diǎn)擊安裝即可,該插件由Node-RED社區(qū)的三方開(kāi)發(fā)者制作的免費(fèi)插件。
創(chuàng)建“流程”
這次使用MQTT服務(wù)器來(lái)轉(zhuǎn)發(fā)數(shù)據(jù),Node-RED內(nèi)置MQTT3.1.1協(xié)議可以快速接入云服務(wù)器,創(chuàng)建一個(gè)“MQTT IN”節(jié)點(diǎn)用于接收平臺(tái)請(qǐng)求數(shù)據(jù);
上圖“2”為添加一個(gè)MQTT連接(通過(guò)EMQX搭建的私有服務(wù)器,使用阿里云、ONENET等支持標(biāo)準(zhǔn)MQTT3.1.1服務(wù)器與此處類(lèi)似);
以阿里云為例演示如何配置標(biāo)準(zhǔn)MQTT3.1.1服務(wù)連接方法。
登錄阿里云查詢(xún)?nèi)兀?/p>
填入上面查詢(xún)得到的三要素;
查詢(xún)或定義用于測(cè)試的Topic,也可以使用標(biāo)準(zhǔn)物模型的訂閱發(fā)布Topic,如果使用標(biāo)準(zhǔn)物模型需要加入編解碼過(guò)程,筆者這里先不講,大家可以自己先研究下,只需要使用一個(gè)節(jié)點(diǎn)一個(gè)腳本即可實(shí)現(xiàn);
配置訂閱地址(也就是剛才選擇的MQTT IN節(jié)點(diǎn)):
點(diǎn)擊部署,連接成功后于節(jié)點(diǎn)下方會(huì)提示“已連接”代表設(shè)備連接服務(wù)器成功,并成功訂閱;
code_meter(DLT654查詢(xún)節(jié)點(diǎn))采用固定查詢(xún)方式,為了實(shí)現(xiàn)不同的數(shù)據(jù)查詢(xún)引入“SWITCH”節(jié)點(diǎn),如若使用阿里云標(biāo)準(zhǔn)物模型就可以在“SWITCH”節(jié)點(diǎn)前加入“function”節(jié)點(diǎn)實(shí)現(xiàn)數(shù)據(jù)的解碼;
筆者為了演示方便直接使用服務(wù)器下發(fā)“1”“2”“3”“4”分別代表查詢(xún)“正向有功功率”“當(dāng)前電壓”“當(dāng)前電流”“當(dāng)前功率”;
配置code_meter節(jié)點(diǎn)的表號(hào)和功能碼,按照相同方法配置“當(dāng)前電壓”“當(dāng)前電流”“當(dāng)前功率”;
DLT645是一個(gè)用于串口的收發(fā)協(xié)議,筆者暫時(shí)沒(méi)有測(cè)試過(guò)Node-RED直接驅(qū)動(dòng)串口節(jié)點(diǎn)(node-red-node-serialport),并且搭建Node-RED的USB被之前搭建的3D打印機(jī)(Kilpper)占用,不想調(diào)試參數(shù),這里就使用串口服務(wù)器來(lái)轉(zhuǎn)發(fā)數(shù)據(jù),添加網(wǎng)絡(luò)節(jié)點(diǎn)“tcp out”;
根據(jù)配置的服務(wù)器參數(shù)配置串口服務(wù)器網(wǎng)絡(luò)參數(shù)和串口參數(shù),DDSU666電表默認(rèn)采用2400-8O1,將串口服務(wù)器的串口參數(shù)與電表一致;
至此已經(jīng)完成指令發(fā)送的全部過(guò)程,如下所示。
接下來(lái)處理電表返回?cái)?shù)據(jù),配置“tcp in”節(jié)點(diǎn)采集串口服務(wù)器返回?cái)?shù)據(jù);
添加“decode_meter”節(jié)點(diǎn)解析電表返回參數(shù);
配置發(fā)布地址用于向服務(wù)器返回采集數(shù)據(jù),一圖為自建MQTT服務(wù)器,二圖為阿里云MQTT服務(wù)器;
至此就完成了Node-RED服務(wù)器采集DLT645電表全部流程。
測(cè)試演示
自建服務(wù)器查詢(xún)當(dāng)前電壓,利用MQTTX連接服務(wù)器,向Node-RED訂閱地址“DLT645SUB”發(fā)送數(shù)據(jù)2,就會(huì)從Node-RED發(fā)布地址“DLT645PUB”收到當(dāng)前電壓值,發(fā)送其他指令代碼也會(huì)收到對(duì)應(yīng)數(shù)據(jù);
利用阿里云查詢(xún)“當(dāng)前電壓”,利用云服務(wù)器調(diào)試接口向“/a1iJTfIclao/DEV01/user/get”Node-RED訂閱地址發(fā)送數(shù)據(jù)2,就會(huì)從Node-REN發(fā)布地址“/a1iJTfIclao/DEV01/user/test”收到當(dāng)前電壓值,發(fā)送其他指令代碼也會(huì)收到對(duì)應(yīng)數(shù)據(jù);
查詢(xún)MQTT日志,電表返回?cái)?shù)據(jù)成功傳輸?shù)椒?wù)器;
如果采用物模型就可以利用阿里云的提供的安卓軟件“云智能”查看DDSU666的采集的參數(shù)。
產(chǎn)品推薦
E870-G1邊緣計(jì)算網(wǎng)關(guān)是基于億佰特自行研發(fā)的通訊協(xié)議《億佰特云設(shè)備通訊協(xié)議》開(kāi)發(fā)的以太網(wǎng)/4G邊緣采集云網(wǎng)關(guān),可通過(guò)服務(wù)器下發(fā)指令到設(shè)備達(dá)到控制或采集功能;可采集500個(gè)邊緣數(shù)據(jù)點(diǎn)。設(shè)備上支持多種協(xié)議(TCP、UDP、MQTT)接入服務(wù)器,支持心跳包、注冊(cè)包設(shè)置;同時(shí)該產(chǎn)品支持多種配置方式,支持網(wǎng)頁(yè)平臺(tái);采用工業(yè)級(jí)設(shè)計(jì)標(biāo)準(zhǔn),保證設(shè)備的高可靠性。
-
數(shù)據(jù)采集
+關(guān)注
關(guān)注
39文章
6673瀏覽量
115035 -
電表
+關(guān)注
關(guān)注
13文章
617瀏覽量
35787 -
智能電表
+關(guān)注
關(guān)注
26文章
954瀏覽量
110011 -
Docker
+關(guān)注
關(guān)注
0文章
499瀏覽量
12466 -
docker容器
+關(guān)注
關(guān)注
0文章
30瀏覽量
3428
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
Node-Red是什么?如何去學(xué)習(xí)Node-Red?
新手求助如何去學(xué)習(xí)Node-Red
第2部分:使用Node-RED的程序
運(yùn)用 Node-RED 開(kāi)發(fā) LoRa 應(yīng)用
虹科工業(yè)樹(shù)莓派Node-RED應(yīng)用(一) : 低代碼實(shí)現(xiàn)狀態(tài)監(jiān)測(cè)
基于Node-RED的優(yōu)易通串口服務(wù)器應(yīng)用實(shí)例

虹科干貨 | 虹科工業(yè)樹(shù)莓派Node-RED應(yīng)用(一) : 低代碼實(shí)現(xiàn)狀態(tài)監(jiān)測(cè)

物聯(lián)網(wǎng)與ESP32、Node-RED和InfluxDB與WebSocket

Node-RED安裝本地教程

Node-RED如何制作漂亮的界面

Node-RED初學(xué)者教程-三分鐘學(xué)習(xí)

【干貨】什么是Node-RED?一文帶你了解!

【教程】Node-RED中Chirpstack節(jié)點(diǎn)使用指南

評(píng)論