TCP自定义和Modbus_RTU类型_物联网平台_边缘计算网关

TCP自定义类型

属性上传

新增产品为TCP自定义类型,选择默认鉴权脚本和自定义上行脚本。新增该产品的设备,连接工具Net Assistant连接环境,通过发送设备访问令牌使设备上线,上线后推送16进制数据,此时设备通过转换脚本并数据解析,在设备详情中的物模型数据查看数据。

测试脚本中需要解析的数据需要跟产品中物模型保持一致,需要对应的物模型上传数据,就在脚本中写入。

var teleData = {};
  var params = msg['params'];
  /*物模型数据(可选):原始数据*/
  teleData.source = params;
  /*直连设备:tempVal是产品物模型中所定义属性的标识符*/
  var tempVal = params;
  /*物模型温度标识符*/
  teleData.temp = (parseInt('0x'+tempVal.substr(10, 4))*0.1).toFixed(2);
  /*物模型湿度标识符*/
  teleData.wet = (parseInt('0x'+tempVal.substr(6, 4))*0.1).toFixed(2);
  /*物模型开关标识符*/
  teleData.switch = parseInt('0x'+tempVal.substr(7, 1));
  msg.datas = teleData;
  /*必填:true表示设备上报的遥测数据,false表示命令下发的响应数据*/
  msg.telemetry = true;
  delete msg.params
  /*必填:true表示设备上报的遥测数据,false表示命令下发的响应数据*/
  return {msg: msg};

服务实现

自定义产品的物模型管理中,点击服务(服务是指设备可被调用的方法,支持定义参数,如执行某项任务),新增服务功能,调用方式为异步和同步,也就是单向服务下发和双向服务下发。

💡 提示:TCP自定义类型的服务使用范围:组态控制元件使用,看板管理控制组件使用,设备命令下发,场景联动中的设备输出使用。Ascll和hex服务命令必须为偶数。

TCPmodbus_Rtu

当产品类型为Modbus_Rtu时,设备数据实现不需要转换脚本,而是通过物模型扩展描述,操作类型、寄存器地址、数据类型、缩放因子来定义该物模型。

💡 提示

TCPmodbus协议类型与TCP自定义类型区别:

组态区别:TCP自定义控制元件参数设置为自定义和服务,TCPmodbus为自定义和标准modbus协议下发。

大屏和新版看板:TCP自定义无法控制开关按钮下发。

旧版看板区别:TCP自定义控制元件下发为自定义和服务,TCPmodbus为标准modbus协议下发。

场景联动区别:TCP自定义设备输出下发为自定义和服务,TCPmodbus为自定义命令。

TCPmodbus_Rtu实现参考

此处为语雀内容卡片,点击链接查看:https://yunteng.yuque.com/avshoi/v1xdocs/hsit8h6glcvgl7rb

本文通过 YUQUE WORDPRESS 同步自语雀
云腾五洲-AI助理