【必看】3.0版解析流程指南:私有协议开关节点配置示例

01 前言

本文章原文发表于我的微信公众号,请大家关注阅读,涉及的源代码等都在公众号,请搜索公众号: 智能家居NodeRed和HomeAssistant 即可关注。

距3.0版解析流程发布已经一个月,但迟迟没发布配置流程指南,主要是近期工作太忙,望大家理解!本章主要讲解3.0版私有协议解析流程”开关类节点”的配置方法。

0概述

改进的功能描述:

1、支持多设备、多通道的批量配置;

2、多种校验码计算方法支持;

3、支持私有协议单头码(帧头)、单尾码(帧尾)配置;

4、报文生成顺序自定义;

03 系统配置

本章以某私有协议的继电器模块为例,讲解如何配置私有协议的485模块解析,与此协议类似的继电器模块都可参照此方法进行。

在3.0解析流程中打开“开关设备”的配置节点示例,对节点配置部分进行修改,如下图所示:

图片

Device配置选项:

该配置选项主要为设备主要参数配置,例如从站地址、通道数量、协议类型、校验方式,设备名称信息:

Add:对设备从站地址进行配置;示例中{ 1: 12, 2: 12 }表示有两台设备,从站地址1和2,分别各有12个通道,当然也可配置单台设备或更多设备,以上格式修改即可。

STD:表示采用Modbus方式解析或私有协议解析,当为false时采用私有协议解析,当为true或者不定义该项时采用Modbus方式解析。

CRC:表示采用校验码计算方式,目前支持CRC16、XOR(与或)、SUM(校验和)常用的三种方式,如果不指定则默认使用CRC16。

DevName:定义HA自动发现中显示的设备名称。

analysis配置选项:

该项目定义分析解析项目的详细参数,包括通道名称、开关键定义、同通道名称、报文设定、轮询设定、指令设定。

CH:CH项目一直作为保留的项目,暂未有实际用途,后续升级更新中将会发挥它的作用,如CH值设置为1,通道数量为12,则会对应每个通道依次生成CH1~12的通道标识,CH值设定值为CH的起始值。

DrvClass:HA中的设备类型,这里为设置为switch。

entities:HA中的实体名称,请采用英文字母定义且保证全局定义不重复;在开关设备定义时,系统为根据定义的从站地址和通道数量自动生成实体名称,生成规则为:entities_Add_通道id,案例中从站1、第2通道的实体名称为switch_1_2.

Path:生成主题的路径,用于区分多设备时路径,可用默认值或按需修改。

OP:定义开关状态数据,可根据协议定义数据值所对应的状态,例如:当值为1时对应状态为ON。

Notes:HA中显示的通道中文名称,即friendname值,这里生成值的格式和entities生成格式相同。

BufferSet:报文配置,是节点配置的核心内容,务必详细分析设备协议后进行配置,以下是以某迅的反馈报文为例说明:

图片

其中:

Addbit:即报文中从站地址值所在的位置,案例中为2;

Offset:保留字段,默认为0;

BufferBit:即报文中反应状态值所在位置,案例中为4;

channelbit:即报文中通道值值所在位置,案例中为3;

Header:轮询和控制指令的尾码,没有需设置为0(反馈报文不用理会);

Trailer:轮询和控制指令的尾码,没有需设置为0(反馈报文不用理会);

PollingSEQ:定义轮询指令的组成和顺序,案例中:头码+从站地址+固定值组成;

SendSEQ:控制指令生成的组成和顺序,案例中:头码+从站地址+固定值+定义的固定逻辑+有效负载值组成;

以上报文中校验码流程会根据设置自动计算,无需再次定义,定义字段请勿改动,否则流程将不会运行。特别注意的是当前流程只支持单头码和尾码协议,同时单头码和尾码不参与校验码计算的情况下适用,后续更新中会增加多位头码和尾码的情况和自定义校验码起始位。

04  关于流程获取

可通过链接快速访问获取3.0版解析流程:

NodeRed 3.0版RS485解析流程合集

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值