一种智能家居控制总线的设备冲突解决方法与流程

文档序号:11279470阅读:356来源:国知局
一种智能家居控制总线的设备冲突解决方法与流程

本发明属于智能家居领域,更具体的说涉及一种智能家居控制总线的设备冲突解决方法。



背景技术:

现有智能家居行业的rs485总线上的设备,要正常工作,都必须基于所有设备的id地址具备唯一性,所以在设备上会有个地址开关(例如拨码开关作为id地址),需要安装工人(需要进行额外的培训)在安装前,通过地址开关设定不同的id地址。

但在很多情况下,设备安装后,才会去通电,此时若发现某个预设的id设备因为id非唯一而未能正常通讯,要想去查找是哪个设备出了问题,例如地址不对或拨码开关故障,是非常困难,往往需要拆卸设备进行验证,而大多数情况下,地址开关是隐藏安装的。

以上对现有技术的描述中存在两个困难:

1.安装工人往往不懂设备id,需要增加相应的培训;

2.假设安装工人,保证地址开关无误,但在地址开关故障或没有拨到位等情况下,产生了设备id地址冲突。等到技术人员,在安装完成上电后再去一一去核实,查找哪个设备地址有误,将会带来额外成本。



技术实现要素:

本发明为解决的安装工人在不懂设备id的情况下,无法确定各个设备的地址是否有误的技术问题是而提供的一种可以远程识别id地址冲突并对其进行修改的一种智能家居控制总线的设备冲突解决方法。

为了解决上述技术问题,本发明的技术方案为:一种智能家居控制总线的设备冲突解决方法,包括以下步骤:

步骤一:将主设备和从设备之间通过rs485进行连接,使用pc客户端通过net与主设备相连;

步骤二:通过pc客户端检测从设备id地址是否具备唯一性,并通过pc客户端显示各个从设备的id地址;

步骤三:若检测到所有从设备id地址都具备唯一性,则表示各个从设备id地址未冲突;若检测到从设备id地址不具备唯一性,则通过pc客户端通过net对id地址相同的从设备的id地址进行修改,直至所有从设备id地址都具备唯一性为止。

通过pc客户端检测各个从设备的id地址是否具有唯一性,并且通过pc客户端的面板显示各个从设备的id地址,未冲突则检测完毕,整条总线正常使用,若是出现冲突,id地址相同的从设备显示到pc端的控制面板上,并且通过pc客户端对id地址相同的从设备进行修改,直至所有从设备id地址都具备唯一性为止,即可以确定每个从设备的id地址都准确无误,使得总线可以正常工作;这样设计实现了远程识别id地址冲突并对其进行修改的目的。

作为优选,在步骤二中,主设备依次向从设备发送请求报文,所有从设备接收到主设备请求报文后,并对主设备进行响应,当主设备只向其中一个id地址的从设备发送请求报文后,但同时收到多个从设备的响应报文时,则说明存在从设备id地址冲突;当主设备只向其中一个id地址的从设备发送请求报文后,同时只收到一个从设备的响应报文时,则从设备不存在id地址冲突。

主设备从第一个开始依次发送请求报文,从设备回复响应报文,通过当主设备发送一个请求报文时收到的响应报文的个数来判断是否有从设备id地址冲突,即只收到一个时,不存在冲突,当收到多个时,则表明存在冲突。

作为优选,当主设备向一个id地址的从设备发送请求报文后,收到多个id地址相同的从设备的响应时,若多个从设备的响应报文是先后顺序到达主设备时,则根据先后顺序可判定存在id地址冲突;若多个响应报文重叠时,通过报文crc校验进行识别,并判断是否存在id地址冲突,当主设备检测到从设备id地址存在冲突的情况,则发送特殊模式报文给存在id冲突的从设备,id地址冲突的从设备接收到该报文后,进入特殊模式。

在存在冲突这种情况下,即当主设备发送一个请求报文时收到多个响应报文时,若是多个响应报文两者不叠加,可以轻松判断有多个响应报文,而当有多个响应报文重叠时,通过报文crc校验进行识别,来判断是否存在id地址冲突,以及有几个地址冲突;主设备检测到从设备id地址存在冲突的情况,则发送特殊模式报文给存在id冲突的从设备,id地址冲突的从设备接收到该报文后,进入特殊模式。

作为优选,在特殊模式下,主设备将发送推测报文,所述推测报文包括推测序号tid和推测位数n,所述推测序号tid与从设备序列号sid的长度等长,从设备接收到推测报文时,根据推测公式计算推测结果result;当推测结果result为0时,从设备将推测反馈报文反馈给主设备,告知推测准确,所述推测反馈报文内包括有ack,主设备收到ack时,将推测位数n的值加1,并进行下一轮推测;当推测结果result非0时,从设备不作应答,主设备在超过等待时间后,将推测序号tid的推测位数n位进行翻转,n值保持不变,并进入下一轮推测。

作为优选,对于id地址冲突的从设备,在特殊模式下的推测过程中,当且仅当只有一台从设备响应推测报文时,主设备即可获得到对应的从设备的序列号sid,主设备通过sid号与从设备进行降级通讯,使其退出特殊模式。

作为优选,当主设备识别出对应冲突设备的sid后,通过sid进行降级通讯,发送修改报文,修改冲突从设备的id地址。

从设备收到推测报文时,并获取推测序号tid,根据推测位数n,与自身序列号sid进行计算,公式如下:

case1:当result为0时,从设备将发送推测反馈报文给主设备,告知推测准确。推测反馈报文如7所示,主设备收到推测反馈报文中的ack(可能会收到多个从设备的ack),将n值加1,并进入下一轮推测。

case2:当result非0时,从设备不反馈任何信息,主设备会在超过等待时间后,将tid的n位进行翻转,n值保持不变,并进入下一轮推测(等待时间根据传输介质所定)。

作为优选,在重复特殊模式下的推测过程中,当且仅当只有一台从设备响应推测报文时,主设备即可获得到对应的从设备的序列号sid,主设备通过sid号与从设备进行降级通讯,使其退出特殊模式。

若还有剩余从设备id地址冲突,可以重复使用以上方法,识别出对应冲突设备的sid。

作为优选,当主设备识别出对应冲突设备的sid后,通过sid进行降级通讯,发送修改报文,修改冲突从设备的id地址。

当主设备识别出对应冲突设备的sid后,通过sid进行降级通讯,发送修改报文,修改冲突从设备的id地址。

本发明的有益效果是:本发明可以不依赖类似地址开关,进行设备id地址的区分,因为器件具备一定的故障率;当id地址冲突时,可以通过远程进行识别,并远程直接修改,而无需拆卸或者额外操作。本发明不仅减少了相关器件的成本,也大大降低了人力成本的投入,从而提高了系统的可用性。

附图说明

图1为本发明中主设备和从设备的系统结构图;

图2为id地址冲突示意图;

图3为id冲突修改示意图;

图4为请求报文格式的结构示意图;

图5为特殊模式报文格式的结构示意图;

图6为推测报文格式的结构示意图;

图7为推测反馈报文格式的结构示意图;

图8为修改报文格式的结构示意图。

具体实施方式

下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。

一种智能家居控制总线的设备冲突解决方法,包括以下步骤:

步骤一:将主设备和从设备之间通过rs485进行连接,使用pc客户端通过net与主设备相连;

步骤二:通过pc客户端检测从设备id地址是否具备唯一性,并通过pc客户端显示各个从设备的id地址;

步骤三:若检测到所有从设备id地址都具备唯一性,则表示各个从设备id地址未冲突;若检测到从设备id地址不具备唯一性,则通过pc客户端通过net对id地址相同的从设备的id地址进行修改,直至所有从设备id地址都具备唯一性为止。

作为优选,在步骤二中,主设备依次向从设备发送请求报文,所有从设备接收到主设备请求报文后,并对主设备进行响应,当主设备只向其中一个id地址的从设备发送请求报文后,但同时收到多个从设备的响应报文时,则说明存在从设备id地址冲突;当主设备只向其中一个id地址的从设备发送请求报文后,同时只收到一个从设备的响应报文时,则从设备不存在id地址冲突。

作为优选,当主设备向一个id地址的从设备发送请求报文后,收到多个id地址相同的从设备的响应时,若多个从设备的响应报文是先后顺序到达主设备时,则根据先后顺序可判定存在id地址冲突;若多个响应报文重叠时,通过报文crc校验进行识别,并判断是否存在id地址冲突,当主设备检测到从设备id地址存在冲突的情况,则发送特殊模式报文给存在id冲突的从设备,id地址冲突的从设备接收到该报文后,进入特殊模式。

作为优选的,在特殊模式下,主设备将发送推测报文,所述推测报文包括推测序号tid和推测位数n,所述推测序号tid与从设备序列号sid的长度等长,从设备接收到推测报文时,根据推测公式计算推测结果result。

作为优选的,当推测结果result为0时,从设备将推测反馈报文反馈给主设备,告知推测准确,所述推测反馈报文内包括有ack,主设备收到ack时,将推测位数n的值加1,并进行下一轮推测;当推测结果result非0时,从设备不作应答,主设备在超过等待时间后,将推测序号tid的推测位数n位进行翻转,n值保持不变,并进入下一轮推测。

作为优选的,对于id地址冲突的从设备,特殊模式下的推测过程中,当且仅当只有一台从设备响应推测报文时,主设备即可获得到对应的从设备的序列号sid,主设备通过sid号与从设备进行降级通讯,使其退出特殊模式。

作为优选的,当主设备识别出对应冲突设备的sid后,通过sid进行降级通讯,发送修改报文,修改冲突从设备的id地址。

根据图1部署图对系统进行安装。主要操作流程分三步骤,具体如下:

步骤一:其中主设备与从设备之间通过rs485进行连接;

步骤二:技术人员使用pc通过net与主设备相连,并通过pc端工具,远程检测设备id是否具有唯一性,当设备id地址冲突时,如图2所示,图2中,从设备e和从设备f的id地址均为5,表示id地址冲突,(以当两个设备冲突为例,当三个甚至多个时为同样原理)。

步骤三:若要使总线能够正常运行,可以通过工具远程进行设备id地址修改。如图3所示;

将从设备f的id地址改为6,以保证设备id地址的唯一性,直到所有设备id地址具备唯一性为止。

在步骤二中,当从设备e与从设备f的id地址冲突(id地址同为5)时。主设备对从设备进行数据请求,发送请求报文,请求报文格式如图4所示;

两个冲突的从设备即:从设备e和从设备f接收到来自主设备的请求,请求报文中的设备id地址与自身id一致,都会进行处理,并对主设备的请求进行响应,此时主设备会同时收到从设备e和从设备f的响应报文,存在两种情况:

情况一:主设备先后收到两个从设备的响应报文,则判定存在从设备id冲突;

情况二:从设备应答报文重叠,会导致总线报文错误,主设备经过crc校验,可以判断存在报文叠加错误,则判定从设备存在id地址冲突。

以上两种情况下,主设备将会发送特殊模式报文,如图5所示;

id冲突的从设备接收到该报文后,都进入特殊模式。因设备都拥有sid号(序列号,出厂时具备唯一性),为了方便阐释,我们假设序列号为8位的二进制数据表示,即1字节长度。

在特殊模式下,主设备将发送推测报文,如图6所示,图6中,推测序号tid与序列号sid长度等长,初始值为0b00000000(二进制)开始推测;

从设备收到推测报文时,并获取推测序号tid,根据推测位数n,与自身序列号sid进行计算,公式如下:

case1:当result为0时,从设备将发送推测反馈报文给主设备,告知推测准确。推测反馈报文如7所示,主设备收到推测反馈报文中的ack(可能会收到多个从设备的ack),将n值加1,并进入下一轮推测。

case2:当result非0时,从设备不反馈任何信息,主设备会在超过等待时间后,将tid的n位进行翻转,n值保持不变,并进入下一轮推测(等待时间根据传输介质所定)。

重复特殊模式下的推测过程,只有一台从设备应答推测报文时,主设备即可获得到对应的从设备的sid号,主设备可以通过sid号与从设备进行降级通讯,让其退出特殊模式。

若还有剩余从设备id地址冲突,可以重复使用以上方法,识别出对应冲突设备的sid。

在步骤三过程中,通过sid进行通讯,并修改冲突从设备的id地址,发送修改报文,报文格式示例如图8所示,修改完成后,即可使用唯一的id地址,进行正常通讯。

通过id地址冲突解决方法,提高了产品的可用性,降低了施工的要求,减少了人力成本投入,提高了产品效益。

以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1