一种现场总线通讯的调度方法及系统与流程

文档序号:16671903发布日期:2019-01-18 23:38阅读:242来源:国知局
一种现场总线通讯的调度方法及系统与流程

本申请涉及数据处理技术领域,尤其涉及一种现场总线通讯的调度方法及系统。



背景技术:

工业控制网络是一种典型的实时应用系统,其中的任务分为周期性任务和非周期性任务。周期性任务按照一定的时间间隔触发,并且对任务的执行时间具有截止期要求;非周期性任务只有在特定的时间触发下才出现,例如设备配置、故障诊断、程序的上载/下载、运行记录等。这两种任务反映在工业控制网络的通信上,就是两类通信信息:实时信息和非实时信息。

在现有技术中,工业控制网络总线通信的调度方法是将传输周期分为周期阶段和非周期阶段,保证在任意时刻网络上都只有一个报文在传输以避免碰撞。周期性信息是实时信息,非周期信息是非实时信息,周期性通信信息和非周期性通信信息具有不同的时间特性。一旦系统组态完成,周期性通信信息的发送就具有时间确定性。非周期性通信信息则是在周期性通信信息通信的间隙数据交互。

现有的非周期性通信信息采用基于令牌的集中调度方式,包括主节点和若干个从节点,从节点在接收到主节点发送的令牌后,方可进行数据交互。但是这种调度方式中,主节点依次向从节点发放令牌,各个从节点接收到令牌的次数相同,即各个从节点进行数据交互的机会相同。在实际应用中,各个从节点所需要进行发送的数据量不同,数据量较大的从节点,在一次令牌发言周期内,无法完成全部数据的交互时,需要多循环一次或多次令牌发言周期,才能完成数据交互。

因此,在现场总线通讯的调度过程中,如何保证各个从节点均能完成数据交互,满足现场总线网络数据通信的实时性、确定性和可靠性,是一项亟待解决的问题。



技术实现要素:

有鉴于此,本申请提供了一种现场总线通讯的调度方法,能够根据从节点上需要进行交互的数据量大小,调节从节点在一个令牌发言周期内的发言次数,从而保证各个从节点均能完成数据交互,满足现场总线网络数据通信的实时性、确定性和可靠性。

本申请提供了一种现场总线通讯的调度方法,所述方法包括:

确定从节点需要进行交互的数据量大小;

基于所述数据量大小调节所述从节点在一个令牌发言周期内的发言次数;

基于所述发言次数完成数据传输。

优选地,所述确定从节点需要进行交互的数据量大小包括:

基于前段i/o卡件上需要上传的数据包数量,确定从节点需要进行交互的数据量大小。

优选地,所述基于所述数据量大小调节所述从节点在一个令牌发言周期内的发言次数包括:

基于所述数据量大小生成令牌调度顺序表;

基于所述令牌调度顺序表调节所述从节点在一个令牌发言周期内的发言次数。

优选地,所述基于所述发言次数完成数据传输包括:

判断所述发言次数是否为零,若否,则:

所述从节点返回响应数据至主节点。

优选地,当所述发言次数为零时,所述从节点向所述主节点发送令牌响应帧。

一种现场总线通讯的调度系统,包括:

确定模块,用于确定从节点需要进行交互的数据量大小;

调节模块,用于基于所述数据量大小调节所述从节点在一个令牌发言周期内的发言次数;

数据传输模块,用于基于所述发言次数完成数据传输。

优选地,所述确定模块具体用于:

基于前段i/o卡件上需要上传的数据包数量,确定从节点需要进行交互的数据量大小。

优选地,所述调节模块具体用于:

基于所述数据量大小生成令牌调度顺序表;

基于所述令牌调度顺序表调节所述从节点在一个令牌发言周期内的发言次数。

优选地,所述数据传输模块具体用于:

判断所述发言次数是否为零,若否,则:

所述从节点返回响应数据至主节点。

优选地,所述数据传输模块具体还用于:

当所述发言次数为零时,所述从节点向所述主节点发送令牌响应帧。

综上所述,本申请公开了一种现场总线通讯的调度方法,当需要实现现场总线通讯的调度时,首先确定从节点需要进行交互的数据量大小,然后基于数据量大小调节从节点在一个令牌发言周期内的发言次数,最后基于发言次数完成数据传输。本申请能够根据从节点上需要进行交互的数据量大小,调节从节点在一个令牌发言周期内的发言次数,从而保证各个从节点均能完成数据交互,满足现场总线网络数据通信的实时性、确定性和可靠性。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请公开的一种现场总线通讯的调度方法方法实施例1的流程图;

图2为本申请公开的一种现场总线通讯的调度方法实施例2的流程图;

图3为本申请公开的一种现场总线通讯的调度系统实施例1的结构示意图;

图4为本申请公开的一种现场总线通讯的调度系统实施例2的结构示意图;

图5为本申请公开的令牌调度模型图;

图6为本申请公开的机架拓扑图;

图7为本申请公开的原始令牌调度顺序图;

图8为本申请公开的调整后的令牌调度顺序图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

如图1所示,为本申请公开的一种现场总线通讯的调度方法实施例1的流程图,所述方法可以包括以下步骤:

s101、确定从节点需要进行交互的数据量大小;

如图5所示,现场总线通讯采用确定性的调度方案,及设计采用主从通讯,以令牌调度的方式进行总线上的传输控制。总线上的任何设备,只有拿到令牌时,才能发送数据。

令牌发布由链路调度器控制,链路调度器与主节点耦合,即工作主节点具有链路调度功能。

链路调度器周期地向总线上设定范围内的各个从节点发放令牌(token),不关心设备是否在线。任何从节点在获得令牌时,可以且仅可以发送一包响应数据(response)。

由此看出,当需要实现现场总线通讯的调度时,首先确定出总线上设定范围内的各个从节点需要进行交互的数据量大小,即分别确定出每个从节点需要向主节点反馈的数据量的大小。

s102、基于数据量大小调节从节点在一个令牌发言周期内的发言次数;

当确定出每个从节点需要向主节点反馈的数据量大小后,进一步根据每个从节点要向主节点反馈的数据量大小,调节相应的从节点在一个令牌发言周期内的发言次数,即确定在一个令牌发言周期内,该从节点可以几次向主节点反馈数据。

s103、基于发言次数完成数据传输。

在确定出从节点在一个令牌发言周期内的发言次数后,根据确定的发言次数完成从节点与主节点之间的数据传输。

综上所述,在上述实施例中,当需要实现现场总线通讯的调度时,首先确定从节点需要进行交互的数据量大小,然后基于数据量大小调节从节点在一个令牌发言周期内的发言次数,最后基于发言次数完成数据传输。本申请能够根据从节点上需要进行交互的数据量大小,调节从节点在一个令牌发言周期内的发言次数,从而保证各个从节点均能完成数据交互,满足现场总线网络数据通信的实时性、确定性和可靠性。

如图2所示,为本申请公开的一种现场总线通讯的调度方法实施例2的流程图,所述方法可以包括以下步骤:

s201、基于前段i/o卡件上需要上传的数据包数量,确定从节点需要进行交互的数据量大小;

如图6所示,为本申请公开的机架拓扑图,工业通讯的链路上以机架为单位,支持本地机架和远程机架的扩展通讯,扩展方式为级联扩展,经过光纤扩展后的级联扩展均为远程机架。

如图5所示,现场总线通讯采用确定性的调度方案,及设计采用主从通讯,以令牌调度的方式进行总线上的传输控制。总线上的任何设备,只有拿到令牌时,才能发送数据。

令牌发布由链路调度器控制,链路调度器与主节点耦合,即工作主节点具有链路调度功能。

链路调度器周期地向总线上设定范围内的各个从节点发放令牌(token),不关心设备是否在线。任何从节点在获得令牌时,可以且仅可以发送一包响应数据(response)。

由此看出,当需要实现现场总线通讯的调度时,首先通过上位机获取前端i/o卡件上需要上传的数据包数量,确定出总线上设定范围内的各个从节点需要进行交互的数据量大小,即分别确定出每个从节点需要向主节点反馈的数据量的大小。

s202、基于数据量大小生成令牌调度顺序表;

如图7所示,为本申请公开的原始令牌调度顺序,每个机架20个槽位,m1表示1号槽位控制器,m2表示2号槽位的控制器,com1表示3号槽位的网络通信模块,com2表示4号槽位的网络通信模块,主机架上i/o1-i/o16表示5-20号槽位的卡件,扩展机架上i/o1-i/o20表示1-20号槽位的卡件。

由于该工业通讯网采用的通讯协议,从节点在接收到令牌后,每次能且只能发送一包数据包,可以确定各个从节点在一个周期内需要发言的次数,再通过上位机组态自动生成令牌调度顺序表,例如,如图8所示,为本申请公开的调整后的令牌调度顺序图。

s203、基于令牌调度顺序表调节从节点在一个令牌发言周期内的发言次数;

然后根据令牌调度顺序表调节相应的从节点在一个令牌发言周期内的发言次数,即确定在一个令牌发言周期内,该从节点可以几次向主节点反馈数据。

s204、判断发言次数是否为零,若否,则进入s205,若是,则进入s206:

主节点在读取令牌调度顺序表后,通过链路调度器,依次向各个从节点发放令牌,保证一次令牌发放的周期内,各个从节点根据需要发送数据包数量的不同,得到不同的发言次数,改变从节点相对整个周期的带宽,确保一个周期内能完成一次完整的数据交互。

s205、从节点返回响应数据至主节点;

各从节点获得令牌后,如果有数据需要发送,该数据同时作为返回令牌标志,不需要再次发送令牌响应帧。

s206、从节点向主节点发送令牌响应帧。

如果从节点没有数据需要发送,则必须向链路调度器发送令牌响应帧。链路调度器实时监控链路状态,对令牌丢失、未及时响应等异常情况进行处理,最大总线空闲时间为120μs,超时则链路调度器收回令牌。

综上所述,本申请根据前端卡件所需要上传数据包的数量,调节卡件对应从节点在一次周期内的发言次数,改变该从节点在一个令牌发言周期内的带宽,保证一个周期内,所有从节点均能完成数据交互;通过调整令牌调度顺序表,向需要更多发言机会的从节点多次发放令牌,提升该节点的发言次数,但又不影响其它从节点的数据交互;通过对令牌调度顺序表的动态调整,插入多次从节点的令牌顺序,延长令牌周期,变相调节各个节点相对令牌周期的带宽,保证每个令牌都能及时完成数据交互。

如图3所示,为本申请公开的一种现场总线通讯的调度系统实施例1的结构示意图,所述系统可以包括:

确定模块301,用于确定从节点需要进行交互的数据量大小;

如图5所示,现场总线通讯采用确定性的调度方案,及设计采用主从通讯,以令牌调度的方式进行总线上的传输控制。总线上的任何设备,只有拿到令牌时,才能发送数据。

令牌发布由链路调度器控制,链路调度器与主节点耦合,即工作主节点具有链路调度功能。

链路调度器周期地向总线上设定范围内的各个从节点发放令牌(token),不关心设备是否在线。任何从节点在获得令牌时,可以且仅可以发送一包响应数据(response)。

由此看出,当需要实现现场总线通讯的调度时,首先确定出总线上设定范围内的各个从节点需要进行交互的数据量大小,即分别确定出每个从节点需要向主节点反馈的数据量的大小。

调节模块302,用于基于数据量大小调节从节点在一个令牌发言周期内的发言次数;

当确定出每个从节点需要向主节点反馈的数据量大小后,进一步根据每个从节点要向主节点反馈的数据量大小,调节相应的从节点在一个令牌发言周期内的发言次数,即确定在一个令牌发言周期内,该从节点可以几次向主节点反馈数据。

数据传输模块303,用于基于发言次数完成数据传输。

在确定出从节点在一个令牌发言周期内的发言次数后,根据确定的发言次数完成从节点与主节点之间的数据传输。

综上所述,在上述实施例中,当需要实现现场总线通讯的调度时,首先确定从节点需要进行交互的数据量大小,然后基于数据量大小调节从节点在一个令牌发言周期内的发言次数,最后基于发言次数完成数据传输。本申请能够根据从节点上需要进行交互的数据量大小,调节从节点在一个令牌发言周期内的发言次数,从而保证各个从节点均能完成数据交互,满足现场总线网络数据通信的实时性、确定性和可靠性。

如图4所示,为本申请公开的一种现场总线通讯的调度系统实施例2的结构示意图,所述系统可以包括:

确定模块401,用于基于前段i/o卡件上需要上传的数据包数量,确定从节点需要进行交互的数据量大小;

如图6所示,为本申请公开的机架拓扑图,工业通讯的链路上以机架为单位,支持本地机架和远程机架的扩展通讯,扩展方式为级联扩展,经过光纤扩展后的级联扩展均为远程机架。

如图5所示,现场总线通讯采用确定性的调度方案,及设计采用主从通讯,以令牌调度的方式进行总线上的传输控制。总线上的任何设备,只有拿到令牌时,才能发送数据。

令牌发布由链路调度器控制,链路调度器与主节点耦合,即工作主节点具有链路调度功能。

链路调度器周期地向总线上设定范围内的各个从节点发放令牌(token),不关心设备是否在线。任何从节点在获得令牌时,可以且仅可以发送一包响应数据(response)。

由此看出,当需要实现现场总线通讯的调度时,首先通过上位机获取前端i/o卡件上需要上传的数据包数量,确定出总线上设定范围内的各个从节点需要进行交互的数据量大小,即分别确定出每个从节点需要向主节点反馈的数据量的大小。

调节模块402,用于基于数据量大小生成令牌调度顺序表,基于令牌调度顺序表调节从节点在一个令牌发言周期内的发言次数;

如图7所示,为本申请公开的原始令牌调度顺序,每个机架20个槽位,m1表示1号槽位控制器,m2表示2号槽位的控制器,com1表示3号槽位的网络通信模块,com2表示4号槽位的网络通信模块,主机架上i/o1-i/o16表示5-20号槽位的卡件,扩展机架上i/o1-i/o20表示1-20号槽位的卡件。

由于该工业通讯网采用的通讯协议,从节点在接收到令牌后,每次能且只能发送一包数据包,可以确定各个从节点在一个周期内需要发言的次数,再通过上位机组态自动生成令牌调度顺序表,例如,如图8所示,为本申请公开的调整后的令牌调度顺序图。

然后根据令牌调度顺序表调节相应的从节点在一个令牌发言周期内的发言次数,即确定在一个令牌发言周期内,该从节点可以几次向主节点反馈数据。

数据传输403,用于判断发言次数是否为零,若否,则从节点返回响应数据至主节点;若是,则从节点向主节点发送令牌响应帧。

主节点在读取令牌调度顺序表后,通过链路调度器,依次向各个从节点发放令牌,保证一次令牌发放的周期内,各个从节点根据需要发送数据包数量的不同,得到不同的发言次数,改变从节点相对整个周期的带宽,确保一个周期内能完成一次完整的数据交互。

各从节点获得令牌后,如果有数据需要发送,该数据同时作为返回令牌标志,不需要再次发送令牌响应帧。

如果从节点没有数据需要发送,则必须向链路调度器发送令牌响应帧。链路调度器实时监控链路状态,对令牌丢失、未及时响应等异常情况进行处理,最大总线空闲时间为120μs,超时则链路调度器收回令牌。

综上所述,本申请根据前端卡件所需要上传数据包的数量,调节卡件对应从节点在一次周期内的发言次数,改变该从节点在一个令牌发言周期内的带宽,保证一个周期内,所有从节点均能完成数据交互;通过调整令牌调度顺序表,向需要更多发言机会的从节点多次发放令牌,提升该节点的发言次数,但又不影响其它从节点的数据交互;通过对令牌调度顺序表的动态调整,插入多次从节点的令牌顺序,延长令牌周期,变相调节各个节点相对令牌周期的带宽,保证每个令牌都能及时完成数据交互。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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