技术服务中心

概述

星纵物联LoRaWAN®网关能够对LoRaWAN®终端节点的上报数据进行解码,并将终端数据转发到BMS系统或BACnet设备使用的BACnet对象,从而便捷的将LoRaWAN®终端设备集成到楼宇管理系统中。本文以WT30X温控面板为例,测试如何通过BACnet实现数据上报和下发控制。

准备

步骤

1. 配置应用

  1. 进入“Network Server->应用”,若之前没有创建应用,则点击”+”添加应用。

  1. 创建“名称”和填写“描述”,两者均可自定义。

       3.若之前已有创建应用,则点击”编辑”应用。

4.配置参数后先保存设置。

2. BACnet 对接(温控器WT30x设备)

本次以WT30x温控器为例。

注意:具体BACnet对接根据所需要的传感器去操作,本文仅以WT30x为例作为参考。

  1. 进入Network Server–>载荷边解码器–>自定义载荷边解码器,点击“+”。

  1. 打开编解码器的代码链接Milesight/SensorDecoders。
    decoder.js代码复制到解码函数里面,将encoder.js代码复制到编码函数里面。注意:(1)图中的模板要选择对应的传感器型号(2)目前只有部分传感器产品有encoder.js文件,若网址没有,可自行进行编写。

  1. 进入“Network Server->设备”,点击添加,添加对应的设备信息,选择设备对应的载荷解码器。

  1. 进入Network Server–>数据流,点击“详情”查看解码后的结果。
  2. 进入Network Server–>应用,在数据传输选择类型为BACnet/IP,点击保存
  3. 进入“协议集成”–>BACnet Server–>Server,填写UDP端口、设备ID(需要注意ID的唯一性)、设备名称,点击保存。
  4. 进入“协议集成”–>BACnet Server–>BACnet对象,点击添加。
  5. 进入“协议集成”–>BACnet Server–>BACnet对象,生成可添加的对象,添加完成之后,查看当前温控面板上报的值。
    9.打开Yabe BACnet客户端工具读取对应数据与对节点写数据。
    (1)点击Add device,填入对应的本地电脑的地址,点击Start,就可以根据设备ID找到BACnet服务器设备并查看对象列表。
    (2)发现设备
    (3)传感器上报数据
    (4)下发数据给节点
    点击对应的BACnet对象,找到Present Value,修改Present Value的值,回车即可发送下行命令。

 

(5)在网关上即可收到通过BACnet下发的指令。

3. BACnet 对接(WS50x系列)

WS50x触控式开关面板为例,作为参考。

用以下编码函数实现bacnet下发控制1111→对应全开,1101→对应(1、3开,2关)、1001→对应(1灯开,2,3关)。

function Encode(fPort, obj) {
var bytes = [];
bytes.push(0xff);
bytes.push(0x29);
if (obj.switch1 == 1111 ) {
bytes.push(0x77);
}
else if(obj.switch1 == 1011 ){
bytes.push(0x76);
}
else if(obj.switch1 == 1101 ){
bytes.push(0x75);
}
else if(obj.switch1 == 1110 ){
bytes.push(0x73);
}
else if(obj.switch1 == 1001 ){
bytes.push(0x74);
}
else if(obj.switch1 == 1010 ){
bytes.push(0x72);
}
else if(obj.switch1 == 1100 ){
bytes.push(0x71);
}
else if(obj.switch1 == 1000 ){
bytes.push(0x70);
}

return bytes;
}

下发内容进行测试代码是否成功,如:{"switch1": 1000}

  1. 将上面的编码复制到WS50x的编码函数中,下发内容复制到编解码测试中,点击”编码“—生成FF2970。对应上方代码内容else if(obj.switch1 == 1000 ){
    bytes.push(0x70)},证验证编码没问题。
  2. 添加对象。
  3. 下发内容:1111全关。
  4. 发数据给节点
    点击对应的BAC
  5. 发数据给节点
    点击对应的BAC

在网关上即可收到通过BACnet下发的指令。

备注:机械式编码函数,实现Bacnet下发1111→对应传感器0877ff(将设备的L1、L2、L3全部打开),其他步骤同步骤三BACnet 对接(WS50x系列)),只需将模板和编码函数更换即可

function Encode(fPort, obj) {
    var bytes = [];
    bytes.push(0x08);
    if (obj.switch1 == 1111 ) {
            bytes.push(0x77);
        }
        else if(obj.switch1 == 1011 ){
            bytes.push(0x76);
        }
        else if(obj.switch1 == 1101 ){
            bytes.push(0x75);
        }
        else if(obj.switch1 == 1110 ){
            bytes.push(0x73);
        }
        else if(obj.switch1 == 1001 ){
            bytes.push(0x74);
        }
        else if(obj.switch1 == 1010 ){
            bytes.push(0x72);
        }
        else if(obj.switch1 == 1100 ){
            bytes.push(0x71);
        }
        else if(obj.switch1 == 1000 ){
            bytes.push(0x70);
        }
   bytes.push(0xff);
    return bytes;
}

补充(60.0.0.45版本)

由于60.0.0.45Bacnet界面变化较大,因此补充60.0.0.45版本操作步骤。

1.确保传感器已添加到网关,并在数据流能正常看见传感器上报数据;具体步骤参考:网关内置NS添加节点设备 – 星纵物联;本次以VS341设备为例。

2.进入“协议集成”–>BACnet Server–>Server,填写UDP端口、设备ID(需要注意ID的唯一性)、设备名称,点击保存。

3.进入“协议集成”–>BACnet Server–>BACnet对象,点击添加对象。

4.选择你想要的设备以及设备中需要上报到bacnet的对象数据,勾选即可,这边以VS341为例,因此选择上报数据流中的”电量”和”占用情况”,点击保存即可。

5.添加完成之后,即可查看VS341对象上报的数据。

返回目录

样机试用

微信客服 wechat code

在线客服

工业路由器 Lorawan®网关 LoRaWAN®传感器 数传终端DTU 智能安防产品 更多产品咨询

电话咨询

验证码