数据传输的方法和装置的制造方法

文档序号:9320783阅读:264来源:国知局
数据传输的方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,具体而言,涉及一种数据传输的方法和装置。
【背景技术】
[0002]控制器局域网络(Controller Area Network,简称为CAN)是目前应用广泛的现场总线之一,CAN总线是一种有效支持分布式控制或实时控制的串行通讯总线。由CAN总线构建的分布式控制系统具有各个节点设备之间数据通信实时性强的优点,在由CAN总线构建的分布式控制系统中,各个设备节点可在任意时刻主动地向其他设备节点发送信息,根据各个设备节点发送的信息的优先级顺序来决定通讯次序。在一种应用场景中,主设备节点与子设备节点时,主设备节点周期性的向子设备节点发送控制数据,子设备节点周期性的向主设备节点汇报自身的状态数据,其他类型的享有较高优先级的数据,则按照需求实时发送,例如查询数据、应答数据、特殊控制数据等。
[0003]然而,在相关技术中,由于各个设备节点可在任意时刻主动地向其他设备节点发送信息,当设备节点数量较多时,可能会出现大量数据集中发送进而使CAN总线一直处于满负荷状态。在这种情况下,就相当于总线处于以最大发送时间为周期的发送机制,导致总线数据更新缓慢,进而影响了通讯系统数据传输的实时性。
[0004]针对上述的问题,目前尚未提出有效的解决方案。

【发明内容】

[0005]本发明的主要目的在于提供一种数据传输的方法和装置,以至少解决由于多节点周期性发送数据时总线处于满负荷状态造成的数据传输实时性低的技术问题。
[0006]根据本发明实施例的一个方面,提供了一种数据传输的方法,包括:在设备节点启动通讯之后,读取设备节点在当前时刻下的第一计时时间;在第一计时时间达到预设的第一发送周期时,发送设备节点的第一待传输数据;在第一计时时间没有达到第一发送周期时,读取设备节点在当前时刻下所累计的第二计时时间,在第二计时时间达到预设的第二发送周期时,发送设备节点的第二待传输数据,其中,第二发送周期小于第一发送周期。
[0007]进一步地,当设备节点为主设备节点时,在设备节点启动通讯之前,方法还包括:检测通讯总线的空闲时间;当通讯总线的空闲时间达到预设阈值时,控制主设备节点在预设延时后发出通讯时序起始帧。
[0008]进一步地,当设备节点为子设备节点时,在发送设备节点的第一待传输数据之前,方法还包括:获取子设备节点的节点标识;根据子设备节点的节点标识从发送次序数据库中进行查询,得到子设备节点的发送次序,其中,发送次序数据库预存了子设备节点的节点标识与发送次序的对应关系;控制子设备节点按照发送次序发送第一待传输数据。
[0009]进一步地,子设备节点的节点标识与发送次序的对应关系包括:发送次序对应于设备节点标识对预设参数进行取余运算后的余数,其中,预设参数为整数。
[0010]进一步地,控制子设备节点按照发送次序发送第一待传输数据包括:判断发送次序与比对参数的值是否相等,其中,比对参数为整数,且比对参数小于等于预设参数;若是,控制子设备节点发送第一待传输数据;若否,在预设时间间隔后,按照预设计算规则调整比对参数的值,并返回执行判断发送次序与比对参数的值是否相等的步骤。
[0011]进一步地,发送第二待传输数据包括:获取预设发送次数;控制设备节点按照预设发送次数,发送第二待传输数据。
[0012]进一步地,第一待传输数据和第二待传输数据包括设备节点在当前时刻下的常规数据和控制数据。
[0013]进一步地,第一待传输数据包括设备节点在当前时刻下的常规数据和控制数据,第二待传输数据包括当前时刻下设备节点的常规数据和控制数据与上一次发送的设备节点的常规数据和控制数据相比发生变化的数据。
[0014]进一步地,在发送第二待传输数据之前,方法还包括:判断当前时刻下设备节点的常规数据和控制数据与上一次发送的设备节点的常规数据和控制数据相比,是否发生变化,其中,上一次发送的设备节点的常规数据和控制数据包括:第一计时时间达到第一发送周期时设备节点的常规数据和控制数据,或者,第二计时时间达到第二发送周期时设备节点的常规数据和控制数据;在设备节点的常规数据和控制数据发生变化时,获取设备节点的常规数据和控制数据中发生变化的数据,得到第二待传输数据。
[0015]根据本发明实施例的另一方面,还提供了一种数据传输的装置,包括:第一获取模块,用于在设备节点启动通讯之后,读取设备节点在当前时刻下的第一计时时间;第一发送模块,用于在第一计时时间达到预设的第一发送周期时,发送设备节点的第一待传输数据;第二发送模块,用于在第一计时时间没有达到第一发送周期时,读取设备节点在当前时刻下所累计的第二计时时间,在第二计时时间达到预设的第二发送周期时,发送设备节点的第二待传输数据,其中,第二发送周期小于第一发送周期。
[0016]进一步地,当设备节点为主设备节点时,装置还包括:检测模块,用于检测通讯总线的空闲时间;第三发送模块,用于当通讯总线的空闲时间达到预设阈值时,控制主设备节点在预设延时后发出通讯时序起始帧。
[0017]进一步地,当设备节点为子设备节点时,装置还包括:第二获取模块,用于获取子设备节点的节点标识;第三获取模块,用于根据子设备节点的节点标识从发送次序数据库中进行查询,得到子设备节点的发送次序,其中,发送次序数据库预存了子设备节点的节点标识与发送次序的对应关系;控制模块,用于控制子设备节点按照发送次序发送第一待传输数据。
[0018]进一步地,子设备节点的节点标识与发送次序的对应关系包括:发送次序对应于设备节点标识对预设参数进行取余运算后的余数,其中,预设参数为整数。
[0019]进一步地,控制模块包括:判断单元,用于判断发送次序与比对参数的值是否相等,其中,比对参数为整数,且比对参数小于等于预设参数;第一控制单元,用于在发送次序与比对参数的值相等时,控制子设备节点发送第一待传输数据;第二控制单元,用于在发送次序与比对参数的值不相等时,在预设时间间隔后,按照预设计算规则调整比对参数的值,并返回执行判断单元的功能。
[0020]进一步地,第二发送模块还包括:获取单元,用于获取预设发送次数;第三控制单元,控制设备节点按照预设发送次数,发送第二待传输数据。
[0021]进一步地,第一待传输数据和第二待传输数据包括设备节点在当前时刻下的常规数据和控制数据。
[0022]进一步地,第一待传输数据包括设备节点在当前时刻下的常规数据和控制数据,第二待传输数据包括当前时刻下设备节点的常规数据和控制数据与上一次发送的设备节点的常规数据和控制数据相比发生变化的数据。
[0023]进一步地,装置还包括:判断模块,用于判断当前时刻下设备节点的常规数据和控制数据与上一次发送的设备节点的常规数据和控制数据相比,是否发生变化,其中,上一次发送的设备节点的常规数据和控制数据包括:第一计时时间达到第一发送周期时设备节点的常规数据和控制数据,或者,第二计时时间达到第二发送周期时设备节点的常规数据和控制数据;第四获取模块,用于在设备节点的常规数据和控制数据发生变化时,获取设备节点的常规数据和控制数据中发生变化的数据,得到第二待传输数据。
[0024]在本发明实施例中,采用在设备节点启动通讯之后,读取设备节点在当前时刻下的第一计时时间;在第一计时时间达到预设的第一发送周期时,发送设备节点的第一待传输数据;在第一计时时间没有达到第一发送周期时,读取设备节点在当前时刻下所累计的第二计时时间,在第二计时时间达到预设的第二发送周期时,发送设备节点的第二待传输数据,其中,第二发送周期小于第一发送周期,进而解决了由于多节点周期性发送数据时总线处于满负荷状态造成的数据传输实时性低的技术问题,从而实现了提高多联机的CAN通讯质量,减少了网络上的冗余数据,减少了监控模块的数据传输负担。
【附图说明】
[0025]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0026]图1是根据本发明实施例一的数据传输的方法流程图;
[0027]图2是根据本发明实施例一的一种可选的设置子设备节点的节点标识与发送次序对应关系的方法流程图;
[0028]图3是根据本发明实施例一的一种可选的当节点设备为主节点设备时数据传输方法流程图;
[0029]图4是根据本发明实施例一的一种可选的当节点设备为子节点设备时数据传输方法流程图;
[0030]图5是根据本发明实施例二的数据传输的装置结构框图。
【具体实施方式】
[0031]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0032]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1