一种通讯方法、通讯装置、通讯节点及通讯系统与流程

文档序号:26146212发布日期:2021-08-03 14:32阅读:127来源:国知局
一种通讯方法、通讯装置、通讯节点及通讯系统与流程

本发明涉及通讯技术领域,具体而言,涉及一种通讯方法、通讯装置、通讯节点及通讯系统。



背景技术:

通讯节点之间通过约定的数据格式以及内容进行交互,为了确保数据交互的可靠性,提高抗干扰能力,一般会在协议中增加相应的数据校验。

常规的抗干扰方案是:发送方在数据末尾增加整帧数据的累加和、异或、crc(cyclicredundancycheck,循环冗余校验)等校验码,如果数据在传输过程中受到干扰,会导致某些数据位发生变化,接收方接收到数据帧后,先针对前面的所有数据进行校验计算得到校验码,将该计算得到的校验码与帧末尾的校验码进行比对,若二者一致,则对整帧数据进行解析,若二者不一致,整帧数据都会被接收方所丢弃。

为了提升数据交互效率和抗干扰能力,也可以把通讯数据帧划分为多个数据段,并在每个数据段末尾增加该数据段的校验,接收方在接收数据时先针对整帧数据的总校验码进行解析,若总校验码正确,则解析整帧数据,若不正确,则针对各个数据段进行校验,对于校验正确的数据段进行正常解析,对于校验不正确的数据段,则维持上一次解析数据不变。

但是,上述方案都属于数据接收后的被动处理,可能会存在某些固定数据位一直被干扰导致无法传输的情况。



技术实现要素:

本发明实施例提供一种通讯方法、通讯装置、通讯节点及通讯系统,以至少解决现有技术中通讯干扰影响数据传输的问题。

为解决上述技术问题,本发明实施例提供了一种通讯方法,包括:获取数据帧的校验结果;根据所述校验结果识别通讯干扰的规律;根据所述通讯干扰的规律,调整通讯节点发出数据帧的时间点。

可选的,获取数据帧的校验结果,包括:在第一预设时间内,所述通讯节点对接收到的数据帧进行校验,得到校验结果;获取所述第一预设时间内所有数据帧的校验结果。

可选的,根据所述校验结果识别通讯干扰的规律,包括:若所述校验结果中出现一次校验失败,记为一个干扰事件;对所有干扰事件的时间规律进行分析,以判断所述通讯干扰是否存在规律性。

可选的,根据所述通讯干扰的规律,调整通讯节点发出数据帧的时间点,包括:若所述通讯干扰存在规律性,根据所述通讯干扰的干扰周期,调整所述通讯节点发出数据帧的时间点;若所述通讯干扰不存在规律性,根据校验通过率调整所述通讯节点发出数据帧的时间点。

可选的,根据所述通讯干扰的干扰周期,调整所述通讯节点发出数据帧的时间点,包括:判断所述干扰周期与通讯时间参数的设定值的大小关系;根据所述大小关系调整所述通讯节点发出数据帧的时间点。

可选的,根据所述大小关系调整所述通讯节点发出数据帧的时间点,包括:

若tx>t,则根据所述干扰周期确定相邻干扰之间能够完成的操作集合,并以所述操作集合为整体,调整所述通讯节点发出数据帧的时间点,以避开干扰;

若(t1+t2)<tx≤t,则根据所述干扰周期确定相邻干扰之间能够完成的操作集合,并以所述操作集合为整体,调整所述通讯节点发出数据帧的时间点,以避开干扰;

若tx>t1、tx>t2且tx≤(t1+t2),则根据所述干扰周期调整上位节点发出点名数据帧的时间点和下位节点发出回复数据帧的时间点,以避开干扰;

若tx≤t1或tx≤t2,则定期调整第一时间间隔,以避免干扰集中发生在每个数据帧的固定字段;

其中,tx表示干扰周期,t表示通讯周期,t1表示点名数据帧传输时长,t2表示第一时间间隔,t=k(t1+t2),k表示下位节点的个数;所述通讯节点包括上位节点和至少一个下位节点,所述第一时间间隔是所述上位节点向当前下位节点发完点名数据帧的时刻至所述上位节点开始向下一个下位节点发送点名数据帧的时刻之间的时间间隔。

可选的,在tx>t,或者,(t1+t2)<tx≤t的情况下,根据所述干扰周期确定相邻干扰之间能够完成的操作集合,并以所述操作集合为整体,调整所述通讯节点发出数据帧的时间点,包括:根据所述干扰周期所处的区间确定对应的指定时间,其中,所述指定时间是所述通讯时间参数中至少一个参数的设定值;根据所述干扰周期和所述指定时间确定所述操作集合,并确定在相邻干扰之间完成所述操作集合后的第一剩余时长;根据所述第一剩余时长和干扰持续时间确定第一延迟时间值;每执行完一次操作集合,经过所述第一延迟时间值之后,再执行下一次操作集合。

可选的,根据所述干扰周期调整上位节点发出点名数据帧的时间点和下位节点发出回复数据帧的时间点,包括:根据所述干扰周期,确定在相邻干扰之间完成一次点名操作后的第二剩余时长,以及在相邻干扰之间完成一次回复操作后的第三剩余时长;根据所述第二剩余时长和干扰持续时间确定第二延迟时间值,以及,根据所述第三剩余时长和所述干扰持续时间确定第三延迟时间值;每执行完一次点名操作,经过所述第二延迟时间值,执行一次回复操作,每执行完一次回复操作,经过所述第三延迟时间值,执行一次点名操作。

可选的,根据校验通过率调整所述通讯节点发出数据帧的时间点,包括:每隔第二预设时间统计一次校验通过率;根据所述校验通过率调整第一时间间隔,其中,所述第一时间间隔是所述上位节点向当前下位节点发完点名数据帧的时刻至所述上位节点开始向下一个下位节点发送点名数据帧的时刻之间的时间间隔。

可选的,根据所述校验通过率调整第一时间间隔,包括:若所述校验通过率大于或等于第一预设阈值,则维持当前的第一时间间隔不变;若所述校验通过率小于所述第一预设阈值,则将当前的第一时间间隔调整设定时间,按照调整后的第一时间间隔进行通讯,并返回执行每隔第二预设时间统计一次校验通过率的步骤,直至所述校验通过率大于或等于所述第一预设阈值。

可选的,在将当前的第一时间间隔调整设定时间之后,还包括:判断调整后的第一时间间隔是否达到第一时间间隔的上限或下限;若达到所述上限或所述下限,且所述校验通过率仍小于所述第一预设阈值,则继续在所述上限与所述下限之间循环调整所述第一时间间隔,直到所述校验通过率大于或等于所述第一预设阈值。

可选的,还包括:若满足以下至少之一的条件达到预设时长,则输出故障提示:干扰周期小于或等于预设周期、干扰持续时间大于或等于第三预设时间以及校验通过率小于或等于第二预设阈值。

本发明实施例还提供了一种通讯装置,包括:获取模块,用于获取数据帧的校验结果;识别模块,用于根据所述校验结果识别通讯干扰的规律;调整模块,用于根据所述通讯干扰的规律,调整通讯节点发出数据帧的时间点。

本发明实施例还提供了一种通讯节点,包括:本发明实施例所述的通讯装置。

本发明实施例还提供了一种通讯系统,包括:至少两个通讯节点,任意通讯节点包括本发明实施例所述的通讯装置。

可选的,所述通讯系统为空调机组通讯系统。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如本发明实施例所述的通讯方法。

应用本发明的技术方案,根据数据帧的校验结果识别通讯干扰的规律,然后根据通讯干扰的规律调整通讯节点发出数据帧的时间点,能够主动识别通讯干扰是否存在规律性,并根据干扰规律执行相应的避让措施,实现主动式避开干扰,提升通讯抗干扰能力。

附图说明

图1是本发明实施例提供的通讯方法的流程图;

图2是本发明实施例提供的常规通讯协议数据格式的示意图;

图3是本发明实施例提供的通讯时序示意图;

图4是本发明实施例提供的通讯装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

现有通讯方案无法针对通讯干扰进行主动避让处理,本发明实施例提供一种通讯方法,能够主动识别通讯干扰的规律,并根据通讯干扰的规律执行相应的避让措施,使得数据帧的传输能够避开干扰,提升通讯抗干扰能力。

图1是本发明实施例提供的通讯方法的流程图,如图1所示,该方法包括以下步骤:

s101,获取数据帧的校验结果。

s102,根据校验结果识别通讯干扰的规律。

s103,根据通讯干扰的规律,调整通讯节点发出数据帧的时间点。

其中,数据帧是指通讯节点在通讯过程中所传输的数据帧,接收方会对接收到的数据帧进行校验,具体校验方式可以是背景技术中提到的整体校验方式或划分数据段的校验方式。若数据帧在传输过程中受到干扰,会导致某些数据位发生变化,从而导致校验失败,因此,通过数据帧的校验结果可以得到通讯干扰情况。考虑到通讯干扰可能存在变化,相应的干扰规律也会变化,因此可以定期识别通讯干扰的规律,从而更准确地避开干扰,具体的,定期获取数据帧的校验结果,并根据校验结果重新识别通讯干扰的规律。

处于同一通讯网络(如can总线等)内的通讯节点可以包括上位节点和至少一个下位节点,发起点名(即发出点名数据帧)的通讯节点称为上位节点(或称为上位机),针对点名数据帧作出回复(即发出回复数据帧)的通讯节点称为下位节点(或称为下位机)。通讯过程中传输的数据帧包括:点名数据帧和回复数据帧。

本实施例的通讯方法,根据数据帧的校验结果识别通讯干扰的规律,然后根据通讯干扰的规律调整通讯节点发出数据帧的时间点,能够主动识别通讯干扰是否存在规律性,并根据干扰规律执行相应的避让措施,实现主动式避开干扰,提升通讯抗干扰能力。

为了便于后续理解,这里结合图2和图3对通讯的数据格式和时序进行示意说明。如图2所示,在划分数据段的校验方式下,按照一定的数据段长度对数据帧进行划分,将数据帧划分为至少两个数据段,每个数据段的末尾增加该数据段的校验码,且整个数据帧的末尾设置有针对整帧数据的总校验码。如图3所示,上位节点依次对各下位节点进行点名,一个完整的通讯周期t包括k次点名和k次回复,具体的,t=k(t1+t2),k表示下位节点的个数,t1表示点名数据帧传输时长(具体是单个点名数据帧的传输时长),t2表示第一时间间隔,第一时间间隔是上位节点向当前下位节点发完点名数据帧的时刻至上位节点开始向下一个下位节点发送点名数据帧的时刻之间的时间间隔,在t2时间内,下位节点会完成回复数据帧的传输。t1+t2实际上是上位节点的点名周期。在通讯过程中,上位节点会按照通讯周期t循环进行点名。图3中对数据帧进行数据段划分,每个数据段的传输时长为t1,上位节点发完点名数据帧的时刻至相应的下位节点开始发送回复数据帧之间的时间间隔记为t(第二时间间隔),下位节点发完回复数据帧的时刻至上位节点开始发送下一点名数据帧之间的时间间隔记为t’(第三时间间隔),若回复数据帧设置为固定长度,则每个下位节点对应的t’都相等。

具体的,获取数据帧的校验结果,包括:在第一预设时间内,通讯节点对接收到的数据帧进行校验,得到校验结果;获取第一预设时间内所有数据帧的校验结果。本实施方式基于第一预设时间获取校验结果,能够保证校验结果的数据量,进而能够比较准确可靠地识别出干扰规律。

其中,第一预设时间可以根据实际需求进行设置,第一预设时间越长,获取的校验结果的数据量越多,干扰规律的识别更为准确。为了便于调整,第一预设时间可以是通讯周期的倍数。在实际应用中,第一预设时间具体设置为通讯周期的几倍,取决于存储和计算资源的限制。在第一预设时间内,各通讯节点得到的校验结果,可以通过数据交互来发给用于识别干扰规律的节点,示例性的,由上位节点来识别干扰规律,在第一预设时间内,相关的下位节点接收到点名数据帧后,对点名数据帧进行校验,然后在回复数据帧中把校验结果a反馈给上位节点,上位节点接收到回复数据帧后对回复数据帧进行校验,得出校验结果b,并且通过解析回复数据帧能够从中获取下位节点发来的校验结果a,由此上位节点获取到了第一预设时间内的所有校验结果。

作为一个可选的实施方式,根据校验结果识别通讯干扰的规律,包括:若校验结果中出现一次校验失败,记为一个干扰事件;对所有干扰事件的时间规律进行分析,以判断通讯干扰是否存在规律性。本实施方式根据校验失败的情况能够准确可靠地分析出通讯干扰的时间规律,为后续主动避开干扰提供保障,尤其是划分数据段的校验方式下,干扰规律的识别更为准确。

其中,对于前述的两种校验方式而言,校验失败的可以是整帧数据,也可以是数据段。例如,在整帧校验方式下,第一预设时间内第一次出现校验失败的数据帧,记为干扰事件1,第二次出现校验失败的数据帧,记为干扰事件2,依此类推,能够将第一预设时间内的所有干扰事件全部记录下来。又如,在划分数据段的校验方式下,第一预设时间内第一次出现校验失败的数据段,记为干扰事件1,第二次出现校验失败的数据段,记为干扰事件2,依此类推,能够将第一预设时间内的所有干扰事件全部记录下来。通讯干扰的规律性是指时间上的规律性,例如,每个干扰事件或者至少两个干扰事件的组合存在相对固定的周期性。需要说明的是,校验失败的内容会在下一个通讯周期重新发送。

每个干扰事件发生的时间点以及持续时间,可以根据通讯过程中的各种时间参数得出,进而根据第一预设时间内的所有干扰事件的时间信息进行分析,便可判断通讯干扰是否存在规律性。对于整体校验方式,可以认为干扰事件发生的时间点是校验失败的整帧数据对应的发送起始时刻,干扰事件的持续时间可以是校验失败的整帧数据的传输时长。对于划分数据段的校验方式,可以根据图3所示的时间参数得出干扰事件发生的时间点以及持续时间,例如,点名数据帧中的前两个数据段校验失败,则干扰事件发生的时间点是该点名数据帧对应的发送起始时刻,干扰事件的持续时间为2×t1,若识别出每个点名数据帧中的前两个数据段均校验失败,可以确定通讯干扰存在规律性,干扰周期为t1+t2,每次干扰持续时间为2×t1。

在一个实施方式中,根据通讯干扰的规律,调整通讯节点发出数据帧的时间点,包括:若通讯干扰存在规律性,根据通讯干扰的干扰周期,调整通讯节点发出数据帧的时间点;若通讯干扰不存在规律性,根据校验通过率调整通讯节点发出数据帧的时间点。本实施方式针对通讯干扰存在规律性以及通讯干扰不存在规律性的两种情况,分别提出了对应的干扰避让措施,以尽可能减少干扰对通讯的影响。

下面分别对通讯干扰存在规律性以及通讯干扰不存在规律性的情况下的具体干扰避让措施进行说明。需要说明的是,本发明实施例中对时间点的调整只是暂时的,当干扰规律发生变化时,例如不存在通讯干扰了,通讯系统仍然按照通讯时间参数的设定值进行通讯,此外,涉及到时间大小的比较时,也是以通讯时间参数的设定值为基准进行比较。

(1)通讯干扰存在规律性

根据通讯干扰的干扰周期,调整通讯节点发出数据帧的时间点,包括:判断干扰周期与通讯时间参数的设定值的大小关系,;根据上述大小关系调整通讯节点发出数据帧的时间点。

其中,通讯时间参数是通讯过程中的各种时间参数,通讯时间参数可以包括:通讯周期、点名数据帧传输时长以及第一时间间隔,第一时间间隔是上位节点向当前下位节点发完点名数据帧的时刻至上位节点开始向下一个下位节点发送点名数据帧的时刻之间的时间间隔。对于一个通讯系统来说,按照一定的通信速率进行通讯,其通讯时间参数的取值是固定的,通讯速率变化,则通讯时间参数的取值也会相应变化。通讯时间参数的设定值是指在当前设定的通讯速率下通讯时间参数的对应取值。在通讯干扰存在规律性的情况下,将干扰周期与通讯时间参数的设定值进行比较,以确定干扰周期所处的区间,进而执行相应的避让措施。若定期识别干扰规律,则每次识别出通讯干扰存在规律性之后,都会根据干扰周期与通讯时间参数的设定值的大小关系进行进一步的调整处理。

本实施方式基于干扰周期与通讯时间参数的设定值之间的大小关系进行通讯时间点的调整,实现了根据通讯实际情况进行有效调整,提高抗干扰能力,保证数据传输的及时性和有效性。

假设通讯干扰发生的规律周期为tx(即干扰周期),此时可以根据tx的大小来制定不同的抗干扰措施。t表示通讯周期,t1表示点名数据帧传输时长,t2表示第一时间间隔,t=k(t1+t2),k表示下位节点的个数。

作为一个可选的实施方式,根据大小关系调整通讯节点发出数据帧的时间点,包括:

1)若tx>t,则根据干扰周期确定相邻干扰之间能够完成的操作集合,并以该操作集合为整体,调整通讯节点发出数据帧的时间点,以避开干扰。

2)若(t1+t2)<tx≤t,则根据干扰周期确定相邻干扰之间能够完成的操作集合,并以该操作集合为整体,调整通讯节点发出数据帧的时间点,以避开干扰。

其中,操作可以是点名操作或回复操作,操作集合可以包括x次点名操作和y次回复操作,x和y均为正整数。至于上位节点要点名哪个下位节点以及具体轮到哪个下位节点执行回复操作,按照预设点名顺序进行即可。可以理解的是,在tx>t或(t1+t2)<tx≤t的情况下,相邻的两次干扰之间执行一次对应的操作集合。

3)若tx>t1、tx>t2且tx≤(t1+t2),则根据干扰周期调整上位节点发出点名数据帧的时间点和下位节点发出回复数据帧的时间点,以避开干扰。

本情况下,相邻的两次干扰之间的时间不足以完成一个点名周期,因此通过调整相关的时间点,能够错开即将发生的干扰。示例性的,在干扰1之后执行一次点名操作,在接下来的干扰2之后执行该点名操作对应的回复操作,在干扰3之后执行下一次点名操作。

4)若tx≤t1或tx≤t2,则定期调整第一时间间隔,以避免干扰集中发生在每个数据帧的固定字段。

本情况下周期性的干扰发生得比较频繁,若不进行调整,会导致有些数据一直被干扰,无法完成传输。因此可以定期适当缩短或延长第一时间间隔,即,隔一段时间调整一次第一时间间隔,每次的调整幅度可以相同,也可以不同,调整方向可以是缩短或延长,例如,本次将第一时间间隔延长10ms,下次将第一时间间隔缩短3ms。由此使干扰不要集中发生在每帧数据的固定字段,达到随机干扰的目的,保证每个字段都有机会正常传输,从而确保即使存在干扰的情况下,每个字段在不同的通讯周期内都能得到有效的解析。在tx≤t1或tx≤t2的情况下,定期调整第一时间间隔,以避免干扰集中发生在每个数据帧的固定字段,直到识别出新的干扰规律。具体的,可以通过调整第二时间间隔t或第三时间间隔t’来实现第一时间间隔的改变,实质上就是改变了点名周期,可以理解的是,点名周期的改变是暂时的。

上述抗干扰措施通过调整相关的时间点或时间间隔,实现了规律性通讯干扰的主动避让,有效提升通讯抗干扰能力。

作为一个可选的实施方式,在tx>t,或者,(t1+t2)<tx≤t的情况下,根据干扰周期确定相邻干扰之间能够完成的操作集合,并以该操作集合为整体,调整通讯节点发出数据帧的时间点,包括:根据干扰周期所处的区间确定对应的指定时间,其中,指定时间是通讯时间参数中至少一个参数的设定值;根据干扰周期和指定时间确定操作集合,并确定在相邻干扰之间完成操作集合后的第一剩余时长;根据第一剩余时长和干扰持续时间确定第一延迟时间值;每执行完一次操作集合,经过第一延迟时间值之后,再执行下一次操作集合,依此循环,直到识别出新的干扰规律。

其中,指定时间用于确定相邻的两次干扰之间能够完成的操作情况。指定时间可以基于通讯时间参数的设定值进行设置,即,指定时间可以是通讯周期t、点名周期t1+t2、点名数据帧传输时长t1以及第一时间间隔t2中的至少一个。可以根据具体的数据传输需求预先设置不同的区间对应的指定时间,干扰周期所处的区间不同,对应的指定时间可以相同,也可以不同。

对于同一干扰周期,指定时间不同,在相邻干扰之间能够完成的操作集合也不同,相应的第一剩余时长也可能不同。具体的,根据干扰周期和指定时间确定操作集合和第一剩余时长,包括:将当前干扰结束时刻与下一次干扰发生时刻之间的时长,记为第一时长tm;按照预设规则确定第一时长tm与指定时间的函数关系;根据上述函数关系确定第一时长tm内能够完成的操作集合和第一剩余时长。其中,函数关系是指第一时长tm与指定时间的倍数关系,函数关系具体包括倍数和余数,倍数取值为正整数,余数表示第一剩余时长。例如,函数关系的表达式可以是:tm=at+b(t1+t2)+ct1+d,a、b和c分别为对应于不同时间的倍数,即完成具体指定时间所对应的操作的次数,d为余数。预设规则可以包括:指定时间中所包含的具体时间在计算函数关系时的优先级,时间的优先级能够体现出在通讯过程中该时间对应的可执行操作的执行优先级,时间越长,优先级越高。

第一延迟时间值可以是第一剩余时长与干扰持续时间的加和。第一剩余时长就是在相邻的两次干扰之间完成操作集合的时刻至最近的干扰开始时刻之间的时长。此处的干扰持续时间是指存在时间规律性的一个干扰事件或多个干扰事件组合的总持续时间。在具体实现时,可以在干扰结束之后立马执行操作集合,也可以在干扰结束之后隔一段时间(h)再执行操作集合,只要能避开干扰即可,相应的,第一延迟时间值为第一剩余时长、干扰持续时间以及h这三者的加和。

下面结合几个示例进行说明。值得注意的是,本申请中的具体示例仅是为了更好地说明本申请,并不构成对本申请的不当限定。相同或相应的术语解释此处不再赘述。

示例性的,在tx>t的情况下,指定时间为通讯周期t,计算tm=at+d,例如,tm=1900ms,t=800ms,计算得到a=2,d=300,倍数关系a=2表示第一时长tm内能够完成两个完整的通讯周期所对应的点名操作和回复操作,余数d=300表示第一时长tm内完成两个完整的通讯周期之后,还余下300ms,来不及再完成一个通讯周期,就会出现干扰了,即,操作集合为两个完整的通讯周期所对应的点名操作和回复操作,第一剩余时长为300ms。每次干扰的持续时间为100ms,第一延迟时间值为400ms。每执行完两个通讯周期所对应的操作,经过400ms之后,再执行两个通讯周期所对应的操作,依此循环,直到识别出新的干扰规律。在这种情况下,调整的是上位机发出点名数据帧的时间点。本示例相当于在相邻的两次干扰之间插入完成两个通讯周期,以避开即将发生的干扰。

示例性的,在tx>t的情况下,指定时间包括通讯周期t、点名周期t1+t2以及点名数据帧传输时长t1,优先级由高到低依次为t、t1+t2以及t1,计算tm=at+b(t1+t2)+ct1+d,a、b和c表示倍数关系,d表示余数。例如,tm=1900ms,t=800ms,t1+t2=200ms,t1=80ms,计算得到a=2,b=1,c=1,d=20。倍数关系a=2表示第一时长tm内可以完成两个完整的通讯周期所对应的点名操作和回复操作;倍数关系b=1表示第一时长tm内在完成两个完整的通讯周期之后还可以完成一个点名周期(即完成一次点名操作和一次回复操作);倍数关系c=1表示第一时长tm内完成两个完整的通讯周期以及一个点名周期之后,还可以再完成一次点名操作;余数d=20表示第一时长tm内完成两个完整的通讯周期、一个点名周期以及一次点名操作之后,还余下20ms,来不及再完成一次回复操作,就会出现干扰了。即,操作集合为两个完整的通讯周期所对应的点名操作和回复操作、一次点名操作和一次回复操作、以及单独的一次点名操作,第一剩余时长为20ms。每次干扰的持续时间为100ms,第一延迟时间值为120ms。每执行完上述操作集合,经过120ms之后,再执行一次上述操作集合,依此循环,直到识别出新的干扰规律。在这种情况下,调整的是下位机发出回复数据帧的时间点。与上一示例相比,本示例的指定时间包含的时间更为细化(包括更小的t1),因此本示例在第一时长tm内比上一示例多完成一个点名周期以及一次点名操作,能够保证数据传输的及时性。

在另一示例中,在(t1+t2)<tx≤t情况下,指定时间为点名周期t1+t2,计算tm=b(t1+t2)+d,例如,tm=1900ms,t1+t2=200ms,计算得到b=9,d=100,倍数关系b=9表示第一时长tm内可以完成九个点名周期,余数d=100表示第一时长tm内完成九个点名周期之后,还余下100ms,来不及再完成一个点名周期,就会出现干扰了。即,操作集合为九个点名周期所对应的点名操作和回复操作,第一剩余时长为100ms。每次干扰的持续时间为100ms,第一延迟时间值为200ms。每执行完九个点名周期所对应的操作,经过200ms之后,再执行九个点名周期所对应的操作,依此循环,直到识别出新的干扰规律。在这种情况下,调整的是上位机发出点名数据帧的时间点。本示例相当于在相邻的两次干扰之间插入完成九个点名周期,以避开即将发生的干扰。

通过本实施方式的上述步骤,能够在tx>t或者(t1+t2)<tx≤t情况下实现快速有效的时间调整,以避开干扰,提高通讯质量;并且指定时间包含的时间越细化,在相邻的两次干扰之间所能完成的操作越多,从而保证数据能够及时传输。

在一个可选的实施方式中,在tx>t1、tx>t2且tx≤(t1+t2)的情况下,根据干扰周期调整上位节点发出点名数据帧的时间点和下位节点发出回复数据帧的时间点,包括:根据干扰周期,确定在相邻干扰之间完成一次点名操作后的第二剩余时长,以及在相邻干扰之间完成一次回复操作后的第三剩余时长;根据第二剩余时长和干扰持续时间确定第二延迟时间值,以及,根据第三剩余时长和干扰持续时间确定第三延迟时间值;每执行完一次点名操作,经过第二延迟时间值,执行一次回复操作,每执行完一次回复操作,经过第三延迟时间值,执行一次点名操作,依此循环,直到识别出新的干扰规律。

其中,与第一延迟时间值类似,第二延迟时间值可以是第二剩余时长与干扰持续时间的加和,第三延迟时间值可以是第三剩余时长与干扰持续时间的加和。第二剩余时长就是在相邻的两次干扰之间完成一次点名操作的时刻至最近的干扰开始时刻之间的时长。第三剩余时长就是在相邻的两次干扰之间完成一次回复操作的时刻至最近的干扰开始时刻之间的时长。此处的干扰持续时间是指存在时间规律性的一个干扰事件或多个干扰事件组合的总持续时间。本实施方式在具体实现时,可以在干扰结束之后立马执行点名操作或回复操作,也可以在干扰结束之后隔一段时间(h)再执行点名操作或回复操作,只要能避开干扰即可,相应的,第二延迟时间值为第二剩余时长、干扰持续时间以及h这三者的加和,第三延迟时间值为第三剩余时长、干扰持续时间以及h这三者的加和,当然,执行点名操作之前的h和执行回复操作之前的h的取值可以不同。

考虑到在实际应用中,识别出通讯干扰的规律的时刻至下一次干扰发生时刻之间的时长,可能会小于相邻两个干扰之间可进行数据传输的时长(即干扰周期减去每次干扰持续时间),这种情况作为一种特例,以识别出通讯干扰的规律的时刻至下一次干扰发生时刻之间的时长为准,进行一次时间点调整,然后再按照上述第一延迟时间值(在tx>t或者(t1+t2)<tx≤t情况下),或者,按照上述第二延迟时间值及第三延迟时间值(在tx>t1、tx>t2且tx≤(t1+t2)的情况下)进行循环调整,直到识别出新的干扰规律。

具体的,在tx>t或者(t1+t2)<tx≤t情况下,根据干扰周期所处的区间确定对应的指定时间;根据干扰周期和指定时间,确定从识别出通讯干扰的规律的时刻至下一次干扰发生时刻之间的时长内能够完成的操作,并确定在该时长内完成该操作后的第四剩余时长;根据第四剩余时长和干扰持续时间确定第四延迟时间值;执行完该操作,经过第四延迟时间值之后,开始按照上述第一延迟时间值进行循环的操作和时间点调整,直到识别出新的干扰规律。其中,若该时长内无法完成任何操作,可以等到下一次干扰结束后,按照上述第一延迟时间值在干扰之间进行循环的操作和时间点调整。

具体的,在tx>t1、tx>t2且tx≤(t1+t2)情况下,确定从识别出通讯干扰的规律的时刻至下一次干扰发生时刻之间的时长内是否能够完成当前需要执行的点名操作或回复操作,若能够完成,确定在该时长内完成相应操作后的第五剩余时长;根据第五剩余时长和干扰持续时间确定第五延迟时间值;执行完相应操作,经过第五延迟时间值之后,开始按照上述第二延迟时间值和第三延迟时间值进行循环的操作和时间点调整,直到识别出新的干扰规律。其中,若该时长内无法完成任何操作,可以等到下一次干扰结束后,按照上述第二延迟时间值和第三延迟时间值在干扰之间进行循环的操作和时间点调整。

(2)通讯干扰不存在规律性

根据校验通过率调整通讯节点发出数据帧的时间点,包括:每隔第二预设时间统计一次校验通过率;根据校验通过率调整第一时间间隔,其中,第一时间间隔是上位节点向当前下位节点发完点名数据帧的时刻至上位节点开始向下一个下位节点发送点名数据帧的时刻之间的时间间隔。

其中,第二预设时间可以根据实际需求进行设置。在整帧校验方式下,校验通过率是第二预设时间内校验通过的数据帧个数与第二预设时间内传输的数据帧总数的比值,在划分数据段的校验方式下,校验通过率是第二预设时间内校验通过的数据段个数与第二预设时间内传输的数据段总数的比值。校验通过率能够反映出一段时间内通讯干扰的严重程度。具体的,可以通过调整第二时间间隔t或第三时间间隔t’来实现第一时间间隔的改变,实质上就是改变了点名周期,可以理解的是,点名周期的改变是暂时的。

本实施方式在通讯干扰不存在规律性的情况下,根据校验通过率调整第一时间间隔,能够根据通讯干扰的严重程度适应改变点名周期,从而在一定程度上使得干扰与数据传输错开,减少干扰对数据传输的影响,尽可能提升通讯质量。

具体的,根据校验通过率调整第一时间间隔,包括:若校验通过率大于或等于第一预设阈值,则维持当前的第一时间间隔不变;若校验通过率小于第一预设阈值,则将当前的第一时间间隔调整设定时间,按照调整后的第一时间间隔进行通讯,并返回执行每隔第二预设时间统计一次校验通过率的步骤,直至校验通过率大于或等于第一预设阈值。

其中,第一预设阈值可以根据实际需求进行设置。若校验通过率大于或等于第一预设阈值,表示通讯网络中虽然有干扰,但是整体通讯质量还在可接受范围内,此时可以维持当前的第一时间间隔不变,不作任何调整。若校验通过率小于第一预设阈值,表示通讯网络中干扰比较强,通讯质量不高,此时可以对当前的第一时间间隔进行调整,以改变点名周期,尝试尽可能多的错开干扰。设定时间可以根据实际需求进行设置。具体可以在当前的第一时间间隔的基础上缩短或延长设定时间。

通过上述步骤,在通讯干扰不存在规律性的情况下,利用校验通过率来反映通讯干扰的严重程度,进而根据校验通过率的大小执行调整操作,适应改变点名周期,能够实现较为可靠的调整,以提升通讯质量。

在一个可选的实施方式中,在将当前的第一时间间隔调整设定时间之后,还可以包括:判断调整后的第一时间间隔是否达到第一时间间隔的上限或下限;若达到上限或下限,且校验通过率仍小于第一预设阈值,则继续在上限与下限之间循环调整第一时间间隔,直到校验通过率大于或等于第一预设阈值。

本实施方式中,考虑到第一时间间隔的增减不是无限制的,为第一时间间隔设置了上限和下限,若校验通过率一直无法改善,则第一时间间隔继续在上限与下限之间来回循环,避免无限制的调整第一时间间隔影响数据传输的及时性和有效性。

对于通讯干扰比较严重的情况,可以进行故障提示,以提醒用户联系专业人员进行维修。具体的,上述方法还可以包括:若满足以下至少之一的条件达到预设时长,则输出故障提示:干扰周期小于或等于预设周期、干扰持续时间大于或等于第三预设时间以及校验通过率小于或等于第二预设阈值。

其中,预设时长可以根据实际需求进行设置,满足条件的时间持续预设时长,表示通讯干扰在预设时长内都比较严重,此时可输出故障提示。预设周期、第三预设时间以及第二预设阈值均可以根据具体情况进行设置,例如,预设周期取值为t1+t2,干扰周期小于或等于t1+t2,表示一次点名周期内都会被干扰,可以认为干扰比较频繁了。以空调机组为例,若检测到满足上述至少一个条件,经过预设时长后,空调机组会报通讯故障,此时空调机组停机处理,并提醒用户联系专业人员进行维修。

通过主动识别通讯干扰是否存在规律性,并根据识别出的干扰规律执行相应的避让措施,优化了通讯数据处理机制,提升通讯抗干扰能力,实现主动式通讯抗干扰处理。

基于同一发明构思,本发明实施例还提供一种通讯装置,可以用于实现上述实施例所述的通讯方法。该通讯装置可以通过软件和/或硬件实现。该通讯装置可以是第三方装置,也可以集成在通讯节点中。

图4是本发明实施例提供的通讯装置的结构框图,如图4所示,该装置包括:

获取模块41,用于获取数据帧的校验结果;

识别模块42,用于根据校验结果识别通讯干扰的规律;

调整模块43,用于根据通讯干扰的规律,调整通讯节点发出数据帧的时间点。

可选的,获取模块41具体用于:在第一预设时间内,通讯节点对接收到的数据帧进行校验,得到校验结果;获取第一预设时间内所有数据帧的校验结果。

可选的,识别模块42具体用于:若校验结果中出现一次校验失败,记为一个干扰事件;对所有干扰事件的时间规律进行分析,以判断通讯干扰是否存在规律性。

可选的,调整模块43包括:

第一调整单元,用于若通讯干扰存在规律性,根据通讯干扰的干扰周期,调整通讯节点发出数据帧的时间点;

第二调整单元,用于若通讯干扰不存在规律性,根据校验通过率调整通讯节点发出数据帧的时间点。

可选的,第一调整单元包括:

判断子单元,用于判断干扰周期与通讯时间参数的设定值的大小关系;

第一调整子单元,用于根据上述大小关系调整通讯节点发出数据帧的时间点。

可选的,第一调整子单元具体用于:

若tx>t,则根据干扰周期确定相邻干扰之间能够完成的操作集合,并以该操作集合为整体,调整通讯节点发出数据帧的时间点,以避开干扰;

若(t1+t2)<tx≤t,则根据干扰周期确定相邻干扰之间能够完成的操作集合,并以该操作集合为整体,调整通讯节点发出数据帧的时间点,以避开干扰;

若tx>t1、tx>t2且tx≤(t1+t2),则根据干扰周期调整上位节点发出点名数据帧的时间点和下位节点发出回复数据帧的时间点,以避开干扰;

若tx≤t1或tx≤t2,则定期调整第一时间间隔,以避免干扰集中发生在每个数据帧的固定字段;

其中,tx表示干扰周期,t表示通讯周期,t1表示点名数据帧传输时长,t2表示第一时间间隔,t=k(t1+t2),k表示下位节点的个数;通讯节点包括上位节点和至少一个下位节点,第一时间间隔是上位节点向当前下位节点发完点名数据帧的时刻至上位节点开始向下一个下位节点发送点名数据帧的时刻之间的时间间隔。

可选的,在tx>t,或者,(t1+t2)<tx≤t的情况下,第一调整子单元具体用于:根据干扰周期所处的区间确定对应的指定时间,其中,指定时间是通讯时间参数中至少一个参数的设定值;根据干扰周期和指定时间确定操作集合,并确定在相邻干扰之间完成操作集合后的第一剩余时长;根据第一剩余时长和干扰持续时间确定第一延迟时间值;每执行完一次操作集合,经过第一延迟时间值之后,再执行下一次操作集合。

可选的,在tx>t1、tx>t2且tx≤(t1+t2)的情况下,第一调整子单元具体用于:根据干扰周期,确定在相邻干扰之间完成一次点名操作后的第二剩余时长,以及在相邻干扰之间完成一次回复操作后的第三剩余时长;根据第二剩余时长和干扰持续时间确定第二延迟时间值,以及,根据第三剩余时长和干扰持续时间确定第三延迟时间值;每执行完一次点名操作,经过第二延迟时间值,执行一次回复操作,每执行完一次回复操作,经过第三延迟时间值,执行一次点名操作。

可选的,在tx>t,或者,(t1+t2)<tx≤t的情况下,第一调整子单元通过以下步骤确定操作集合和第一剩余时长:将当前干扰结束时刻与下一次干扰发生时刻之间的时长,记为第一时长tm;按照预设规则确定第一时长tm与指定时间的函数关系;根据上述函数关系确定第一时长tm内能够完成的操作集合和第一剩余时长。

可选的,第二调整单元包括:

统计子单元,用于每隔第二预设时间统计一次校验通过率;

第二调整子单元,用于根据校验通过率调整第一时间间隔,其中,第一时间间隔是上位节点向当前下位节点发完点名数据帧的时刻至上位节点开始向下一个下位节点发送点名数据帧的时刻之间的时间间隔。

可选的,第二调整子单元具体用于:若校验通过率大于或等于第一预设阈值,则维持当前的第一时间间隔不变;若校验通过率小于第一预设阈值,则将当前的第一时间间隔调整设定时间,按照调整后的第一时间间隔进行通讯,并返回执行每隔第二预设时间统计一次校验通过率的步骤,直至校验通过率大于或等于第一预设阈值。

可选的,第二调整子单元还用于:在将当前的第一时间间隔调整设定时间之后,判断调整后的第一时间间隔是否达到第一时间间隔的上限或下限;若达到上限或下限,且校验通过率仍小于第一预设阈值,则继续在上限与下限之间循环调整第一时间间隔,直到校验通过率大于或等于第一预设阈值。

可选的,上述通讯装置还包括:输出模块,用于若满足以下至少之一的条件达到预设时长,则输出故障提示:干扰周期小于或等于预设周期、干扰持续时间大于或等于第三预设时间以及校验通过率小于或等于第二预设阈值。

上述通讯装置可执行本发明实施例所提供的通讯方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例提供的通讯方法。

本发明实施例还提供一种通讯节点,包括:上述实施例所述的通讯装置。

本发明实施例还提供一种通讯系统,包括:至少两个通讯节点,任意通讯节点包括上述实施例所述的通讯装置。通讯系统中的任意一个或多个通讯节点可以包括上述实施例所述的通讯装置,可以在包括上述实施例所述的通讯装置的这些通讯节点中选取一个通讯节点用来执行上述通讯方法。

上述通讯系统可以是空调机组通讯系统。空调机组通讯系统涉及的通讯节点有内机、外机、线控器等,根据机组设计需求可以将任一通讯节点作为上位节点,例如将外机作为上位节点,外机会按照一定的周期对各下位节点进行点名。内机、外机和线控器都可以包括上述实施例所述的通讯装置,例如,可选取外机来执行上述通讯方法。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的通讯方法。

本发明实施例还提供一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够实现如上述实施例所述的通讯方法。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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