一种控制器局域网总线的分时调度方法和系统与流程

文档序号:29710262发布日期:2022-04-16 17:07阅读:84来源:国知局
一种控制器局域网总线的分时调度方法和系统与流程

1.本说明书涉及医疗设备领域,特别涉及一种控制器局域网总线的分时调度方法和系统。


背景技术:

2.控制器局域网总线(can,controller area network)是一种用于实时应用的串行通信协议总线,是世界上应用最广泛的现场总线之一。由于can的高性能和可靠性的特点,已被广泛应用于工业自动化、船舶、医疗设备、工业设备等方面。
3.随着业务种类的丰富和扩展,一些应用场景对于实时性和可靠性提出了更高的要求,而原有的can网络通信机制并不能适应这些要求。
4.因此,需要提供一种控制器局域网总线的分时调度方法和系统,以满足系统对实时性和可靠性的要求。


技术实现要素:

5.本说明书的一个方面提供一种控制器局域网总线的分时调度方法。该方法包括:确定控制器局域网总线的消息发送周期;其中,所述消息发送周期包括时间同步段、第一时间段和第二时间段,所述时间同步段用于同步所述控制器局域网总线与医疗设备系统的时间;所述医疗设备系统包括控制单元和多个系统部件,所述控制单元与所述多个系统部件中的至少一个通过所述控制器局域网总线连接;将第一优先级消息设置为在所述第一时间段对应的时间发送;将第二优先级消息设置为在所述第二时间段对应的时间发送。
6.本说明书的另一个方面提供一种控制器局域网总线的分时调度系统。该系统包括:确定模块,用于确定控制器局域网总线的消息发送周期;其中,所述消息发送周期包括时间同步段、第一时间段和第二时间段,所述时间同步段用于同步所述控制器局域网总线与医疗系统的时间;所述医疗设备系统包括控制单元和多个系统部件,所述控制单元与所述多个系统部件中的至少一个通过所述控制器局域网总线连接;第一设置模块,用于将第一优先级消息设置为在所述第一时间段对应的时间发送;第二设置模块,用于将第二优先级消息设置为在所述第二时间段对应的时间发送。
7.本说明书的另一个方面提供一种控制器局域网总线的分时调度装置,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现如上述的控制器局域网总线的分时调度方法。
8.本说明书的另一个方面提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行所述方法。
附图说明
9.本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构。
10.图1是根据本说明书一些实施例所示的控制器局域网总线的分时调度系统的示例性应用场景示意图;
11.图2是根据本说明书一些实施例所示的控制器局域网总线的分时调度方法的示例性流程图;
12.图3是根据本说明书一些实施例所示的对第一时间段进行时间分片划分的示例性流程图;
13.图4是根据本说明书一些实施例所示的控制器局域网总线数据通信时序的示例性示意图;
14.图5是根据本说明书一些实施例所示的消息发送周期的示例性示意图;
15.图6是根据本说明书一些实施例所示的消息发送周期的示例性示意图;
16.图7是根据本说明书一些实施例所示的控制器局域网总线的分时调度系统的模块图。
具体实施方式
17.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
18.应当理解,本文使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其它词语可实现相同的目的,则可通过其它表达来替换所述词语。
19.如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
20.本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其它操作添加到这些过程中,或从这些过程移除某一步或数步操作。
21.目前,控制器局域网总线技术可以应用于医学设备、汽车制造、工业控制、智能家庭等领域。例如,在医学设备系统(例如,x光成像系统、dsa成像系统等)中,系统控制部件间的通信多采用can总线通信,充分利用了can网络的以下特点:(1)多主结构、各节点的地位平等、方便区域组网、总线利用率高等特点;(2)实时性高,非破坏总线仲裁技术,优先级高的节点无延时;(3)出错的can节点会自动关闭并切断和总线的联系,不影响总线的通讯;(4)报文为短帧结构并有硬件crc校验,受干扰概率小,数据出错率极低;(5)自动检测报文发送成功与否,可硬件自动重发,传输可靠性很高。基于以上特点可以看出,在can总线空闲时,多个节点的多个消息报文同时发送时,可以按照消息报文标识符的优先级顺序,低优先级消息报文自动退出,高优先级消息报文继续发送,可以在一定程度上提高网络的利用率
和保证高优先级消息的实时性;当总线占用时,无论是消息报文的先级高低,均需要等待总线空闲后,再按照节点消息报文优先级先后发送。
22.而随着x光成像系统、dsa成像系统等领域业务种类的丰富和扩展,以及系统性能本身提升的需求,系统复杂度增加,cnn网络节点数量、信息传输量成倍增长,尤其在高帧频序列曝光等业务中,can网络负载快速增加,已有的can总线控制技术已经不能满足需求。比如,原有设计可能使低优先级消息报文经常由于总线冲突而被迫退出发送,导致低优先级消息报文传输时延长,并且当总线忙时哪怕是高优先级的消息报文的传输时延也变得不确定。对于实时性和可靠性要求特别高或有安全性要求的场合,已有的can网络通信机制已经不能满足系统的要求。
23.因此,本说明书实施例披露了一种控制器局域网总线的分时调度方法和系统,通过设置控制器局域网总线的消息发送周期,并在消息发送周期内同步系统时间,以及在不同的时间段对应的时间内发送不同优先级的消息,可以提高控制器局域网总线的消息发送实时性和可靠性。例如,利用本说明书实施例所披露的技术方案,应用在x光成像系统中时,使用基于时分can网络通信,可以使can网络节点获得系统统一时间,相同同步性能下可以使分布式控制更易实现;消息报文使用系统规划的时间区间定义有序发送,保证系统控制时序的确定性和一致性;有效避免因节点发送时序不可控,引起的can节点进入主动或被动错误,甚至总线关闭状态,保证了系统可靠性;不需要对系统硬件和网络拓扑进行改动,就可以提高can网络的传送实时性。
24.需要说明的是,以上例子仅出于示例的目的,并不旨在对本说明书实施例所披露的技术方案的应用场景进行限定,还可以应用于其他场景,例如,工业自动化、船舶、工业设备等。以下通过对附图的描述详细阐述本说明书所披露的技术方案。
25.图1是根据本说明书一些实施例所示的控制器局域网总线的分时调度系统的示例性应用场景示意图。
26.如图1所示,控制器局域网总线的分时调度系统100可以包括控制设备110、节点120和控制器局域网总线130。
27.控制器局域网总线的分时调度系统100可以使得系统中的节点(例如,节点120)获得系统的统一时间,从而在相同同步性能下实现对各节点的分布式控制,以及保证系统控制时序的实时性和可靠性。
28.控制设备110可以应用于医学设备控制、汽车控制、工业设备控制、机器人控制、智能家庭/小区控制等。在一些实施例中,控制设备110可以为医学成像设备,包括计算机断层成像(ct)设备、发射型计算机断层成像(emission computed tomography,ect)设备、x射线摄影设备、正电子发射断层成像(positron emission computed tomography,pet)设备、数字减影血管造影(dsa,digital subtraction angiography)设备等中的一种或几种的组合。在一些实施例中,控制设备110可以包括机架、探测器、扫描区域和扫描床。目标对象可以放置于扫描床上接受扫描。机架可以支撑探测器。在一些实施例中,探测器可以包括一个或多个探测器单元。探测器单元可以是和/或包括单排探测器和/或多排探测器。探测器单元可以包括闪烁探测器(例如,碘化铯探测器)和其他探测器等。在一些实施例中,机架可以旋转,例如,在ct成像设备中,机架可以围绕机架旋转轴线顺时针或逆时针旋转。在一些实施例中,控制设备110可以进一步包括放射扫描源,放射扫描源可以与机架一同旋转。放射
扫描源可以发出放射线束(例如,x射线)到目标对象,经目标对象衰减后被探测器探测到,进而产生图像信号。在一些实施例中,控制设备110可以与控制器局域网总线的分时调度系统100中的其他组件(例如,节点120)通信,以交换数据和/或信息,例如,节点120可以向控制设备110发送消息。在一些实施例中,控制设备110中可以包括处理设备。
29.节点120可以为医学成像系统中的控制部件。示例性地,以dsa系统为例,控制部件可以包括收发器、控制器、微处理器、开关机板卡、主控板卡、病床接口板卡、用户接口板卡、机器人底座接口板卡、c臂接口板卡、运动控制板卡等中的一种或多种。在一些实施例中,节点120可以连接至控制器局域网总线130,以通过控制器局域网总线100实现与控制设备110之间的数据和/或信息交换。例如,节点n1、节点n2可以连接至控制器局域网总线(can0),节点m1、节点m2可以连接至控制器局域网总线(can1),以将消息发送至控制器局域网总线,再通过控制局域网总线将消息发送至控制设备110。在一些实施例中,多个节点120之间可以并联,例如,节点m2与节点m3并联,并连接至can1。在一些实施例中,控制器局域网总线的分时调度系统100中可以包括可选节点,例如,节点m。
30.在一些实施例中,节点120也可以为其他终端设备。例如,个人计算机、笔记本电脑、移动电话等。
31.在一些实施例中,控制器局域网总线130可以为一条或多条。例如,总线can0和总线can1可以为同一条总线,也可以为同时与至控制设备110连接的不同总线。控制器局域网总线130可以向不同的方向延伸,并与更多的节点连接。可以理解,图1中仅示出了总线can0和总线can1的一部分。
32.在一些实施例中,控制器局域网总线130可以设置有消息发送周期。消息发送周期可以包括时间同步段、第一时间段和第二时间段。其中,时间同步段可以用于同步所述控制器局域网总线与目标系统(例如,控制设备110)的时间。可以将第一优先级消息设置为在所述第一时间段对应的时间发送。可以将第二优先级消息设置为在所述第二时间段对应的时间发送。
33.应当注意,控制器局域网总线的分时调度系统100仅仅是为了说明的目的而提供,并不意图限制说明书的范围。对于本领域的普通技术人员而言,可以根据本说明书的描述,做出多种修改或变化。例如,控制器局域网总线的分时调度系统100还可以包括存储设备。又例如,控制器局域网总线的分时调度系统100可以在其它设备上实现类似或不同的功能。然而,这些变化和修改不会背离本说明书的范围。
34.图2是根据本说明书一些实施例所示的控制器局域网总线的分时调度方法的示例性流程图。在一些实施例中,流程200可以由处理设备执行。例如,流程200可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程200。流程200可以包括以下操作。
35.步骤202,确定控制器局域网总线的消息发送周期。在一些实施例中,步骤s201可以由确定模块710执行。
36.消息发送周期是指通过控制器局域网(can)总线按照时序发送消息的时间间隔。消息可以包括报文。
37.在相关技术中,控制器局域网总线中的消息发送一般是按照数据通信时的时序进行发送。例如,参见图4,图4是根据本说明书一些实施例所示的控制器局域网总线数据通信
时序的示例性示意图。如图4所示,410为控制器局域网总线、420-450为与总线连接的节点。节点可以是指连接至总线的设备或控制部件(例如,处理器、控制器、收发器等)。
38.控制器局域网(can)总线网络具有多主结构,各节点的地位平等;优先发送高优先级消息;节点出错,自动断开与总线连接;自动检测消息是否发送成功特点。can总线发送消息包括两种状态,一种为总线空闲状态,另一种为总线占用状态。在总线空闲状态下,当多个节点的多个消息报文同时发送时,总线会按照消息报文标识符的优先级顺序(例如,数字小的数据标号优先级高),低优先级消息报文自动退出,高优先级消息报文继续发送,一定程度上可以提高网络的利用率和高优先级消息的实时性;在总线占用状态下,无论是消息报文的先级高低,均需要等待总线空闲后,再按照节点消息报文优先级先后发送。而这种消息发送方式,可能使低优先级消息报文经常由于总线冲突而被迫退出发送,导致低优先级消息报文传输时延长,且当总线忙时哪怕是高优先级的消息报文的传输时延也变得不确定。
39.例如,在图4中,各个节点的地位平等,即发送消息时将按照将其与总线通信发送消息的时间进行发送。图中从左到右的箭头表示时间t的流逝,则从图中可以看出,节点430的消息2-1为时间最早的消息,然后依次为节点420的消息1-1、节点450的消息4-1、节点440的消息3-1,然而根据消息的优先级和时间顺序,总线发送消息的顺序为2-1、1-1、3-1、
……
、4-1、4-2,即使节点450的消息4-1按照时间在先,但是由于其优先级较低,依然会后发送,而总线具有低优先级消息会自动退出的特性,而在低优先级消息退出的这段时间内,可能会有其他高优先级的消息加入,这也就会导致低优先级的消息可能一直无法发送。这种机制对于消息发送有着实时性、可靠性或有安全性要求的场合,显得并不适用。
40.因此,在本说明书实施例中,将控制器局域网总线的消息发送划分多个周期,从而达到基于时分的方式实现对消息的发送调度,提高控制器局域网总线的消息发送实时性和可靠性。
41.如图5所示,图5是根据本说明书一些实施例所示的消息发送周期的示例性示意图。510表示控制器局域网总线,520表示一个消息发送周期。
42.在一些实施例中,处理设备可以将控制器局域网总线按照固定的时间间隔划分成为多个周期段,例如,每5秒时间间隔,划分得到一个周期段可以表示一个消息发送周期。在一些实施例中,每个消息发送周期可以相同。
43.在一些实施例中,所述消息发送周期包括时间同步段、第一时间段和第二时间段。
44.时间同步段可以用于同步控制器局域网总线与目标系统的时间。目标系统可以是指连接至控制器局域网总线,需要通过该控制器局域网总线进行控制的系统。目标系统可以包括医疗设备系统、车辆控制系统、工业控制系统等。同步可以是指使控制器局域网总线的时间与目标系统的时间相同。该时间可以是目标系统的本地时间或网络时间,例如,系统时间(如计算机时间)、互联网时间。
45.在一些实施例中,医疗设备系统可以包括计算机断层扫描系统、x射线系统、正电子发射断层成像系统、数字减影血管造影系统、核磁共振成像系统中的一种或多种。
46.在一些实施例中,医疗设备系统可以包括控制单元和多个系统部件,控制单元与所述多个系统部件中的至少一个通过所述控制器局域网总线连接。在一些实施例中,多个系统部件可以包括病床、限束器、机架、开关控制接口、主控接口、用户接口、机器人底座接
口、c臂接口、运动控制接口、电源接口以及图像采集软件中的一种或多种。
47.在一些实施例中,多个系统部件可以是设置于特别监护病房(scu,special care unit),例如,重症监护病房等。
48.在一些实施例中,处理设备可以按照下文实施例所述的方法,同步所述控制器局域网总线与目标系统的时间。
49.在一些实施例中,处理设备可以确定时间同步间隔。时间同步间隔是指多次同步总线与目标系统的时间之间的时间间隔。例如,每隔5秒同步一次、每隔10秒同步一次等。在一些实施例中,处理设备可以将消息发送周期的周期时间作为时间同步间隔。
50.处理设备可以将时间同步消息设置为在同步时间段对应的时间内基于所述时间同步间隔向目标系统发送。比如,在每个时间同步间隔的同步时间段对应的时间内,通过发送时间同步消息的方式,同步控制局域网总线的时间与目标系统的时间。在一些实施例中,在时间同步段内对应的时间内,在通过控制器局域网总线向目标系统发送时间同步消息后,目标系统的处理设备或时间同步模块等可以将目标系统的系统时间发送至控制器局域网总线,进而根据该时间完成控制器局域网时间与目标系统时间的同步。通过同步时间,可以避免由于控制器局域网总线时间与目标系统时间的差异而带来的消息延时等问题,可以有效地提高消息发送的实时性。
51.第一时间段是指消息发送周期内用于发送第一优先级消息的时间段。第二时间段是指消息发送周期内用于发送第二优先级消息的时间段。其中,第一优先级消息可以是指高优先级消息,第二优先级消息可以是指低优先级消息。在相同情况下,高优先级消息将先于低优先级消息发送。在一些实施例中,高优先级消息可以包括实时消息,低优先级消息可以包括非实时消息。
52.在一些实施例中,第二优先级消息可以包括新增节点的消息。新增节点可以是指在确定控制器局域网总线的消息发送周期后,连接至所述控制器局域网总线的节点。以此可以实现通过控制器局域网总线对系统进行控制的扩展,从而可以发送更多的消息。
53.关于第一时间段和第二时间段的更多说明,可以参见本说明书其他部分,例如,步骤204、步骤206以及图3的相关描述,此处不再赘述。
54.在一些实施例中,处理设备可以基于目标系统对应的消息传输目的、控制器局域网总线对应的节点数量以及消息传输速率中的一种或多种,确定控制器局域网总线的消息发送周期。
55.消息传输目的可以是指传输消息所要达到的目的。发送消息所想要达到的目的可以体现对该消息的实时性要求。例如,消息为节点向目标系统发送的控制消息,以实现对目标系统的定时控制,节点需要每隔五秒向目标系统发送一次控制消息,也可以理解为,目标系统每隔五秒就需要接收到一次控制消息,此时,消息发送的实时性要求就较高。
56.控制器局域网总线对应的节点数量是指需要通过控制器局域网总线发送消息的节点的个数。在一些实施例中,所述控制器局域网总线对应的节点数量可以少于与该控制器局域网总线连接的节点数量。
57.在一些实施例中,消息发送周期t可通过以下公式确定:t=nt1+t258.其中,n为节点数量,t1为固定分配每个节点可以使用的时间(包括第一时间段和
第二时间段所对应的时间),t2为时间同步段对应的时间。由以上公式可知,消息发送周期t可以是固定分配给所有节点的时间nt1与时间同步段对应的时间t2之和。例如,有4个节点,每个节点需要5秒,时间同步段为0.5秒,则消息发送周期的最短时间可以为20.5秒,可选地,消息发送周期的时间可以大于20.5秒,例如,21秒、25秒等。
59.消息传输速率可以是指控制器局域网总线的传输波特率。例如,500kbps。消息传输速率可以影响消息传输的速度,消息传输速率越高,消息传输越快,那么传输相同消息所需要的时间越短,则消息发送周期则可以相应短一些。
60.在一些实施例中,处理设备可以基于目标系统对应的消息传输目的、控制器局域网总线对应的节点数量以及消息传输速率中的一种或多种,确定消息发送周期的最短周期,例如,将满足其中任意一种要求的最短时间作为消息发送周期。
61.步骤204,将第一优先级消息设置为在所述第一时间段对应的时间发送。在一些实施例中,该步骤204可以由第一设置模块执行。
62.在一些实施例中,第一优先级消息可以携带消息标识,例如,用于识别在第一时间段对应的时间发送的第一标识。在一些实施例中,第一标识可以携带于第一优先级消息报文中。具有第一标识的消息可以在第一时间段对应的时间发送。
63.步骤206,将第二优先级消息设置为在所述第二时间段对应的时间发送。在一些实施例中,该步骤206可以由第二设置模块执行。
64.在一些实施例中,第二优先级消息可以携带消息标识,例如,用于识别在第二时间段对应的时间发送的第二标识。在一些实施例中,第二标识可以携带于第二优先级消息报文中。具有第二标识的消息可以在第二时间段对应的时间发送。
65.在一些实施例中,第二优先级消息也可以在所述第一时间段对应的时间发送。在一些实施例中,将第二优先级消息设置为在所述第一时间段有空余时在所述第一时间段对应的时间发送,在所述第一时间段没有空余时在所述第二时间段对应的时间发送。可以理解的是,若第一优先级消息较少,只需要在第一时间段对应的部分时间内即可完成发送,则可以将部分第二优先级消息在第一时间段对应的时间内发送,由于第一时间段的实时性和可靠性高于第二时间段,以此可以提高消息发送的实时性和可靠性。例如,假设一个消息发送周期内,第一时间段和第二时间段分别为30秒,对于第一时间段,将30秒对应划分给两个节点,第一个节点15秒,在消息发送周期内,第一个节点就只能利用这15秒发送消息,若要发送的消息需要20秒,则只能从20秒的消息中选择出15秒的消息在第一时间段对应的时间内发送,剩下5秒用第二时间段。反过来,若第一个节点同样是发送消息需要20秒,但是只有10秒的消息需要立即发送,则可以从另外10秒不需要立即发送的消息中选择5秒的消息,在第一时间段对应的时间内发送。
66.在一些实施例中,处理设备可以基于预设消息发送规则,在第二时间段对应的时间发送第二优先级消息。预设发送规则可以是在总线空闲状态下,总线按照消息报文标识符的优先级顺序(第二优先级消息也可以具有优先级),低优先级消息报文自动退出,高优先级消息报文继续发送;在总线占用状态下,等待总线空闲后,再按照节点消息报文优先级先后发送。
67.在一些实施例中,处理设备可以关闭目标系统的自动重发设置。由于对控制器局域网总线按照时间进行了周期划分,关闭自动重发设置,可以避免由于自动重发而对总线
分时发送消息产生影响,提高消息发送的稳定性。
68.在本说明书实施例中,将控制器局域网总线发送消息的方式设置为周期发送的方式,多个消息发送周期内划分出了时间同步段、第一时间段和第二时间段,实现了控制器局域网总线与目标系统的时间同步,以及实时消息通过第一时间段优先发送。消息的分时段发送,可以减少控制器局域网总线对消息发送的仲裁,提高了消息发送的实时性和可靠性。另外,在一些实施例中,本说明书所披露的技术方案通过软件设定即可实现,不一定需要对系统硬件和系统网络结构进行改动,实现方式简单。
69.图3是根据本说明书一些实施例所示的对第一时间段进行时间分片划分的示例性流程图。在一些实施例中,流程300可以由处理设备执行。例如,流程300可以以程序或指令的形式存储在存储装置(如处理设备的自带存储单元或外接存储设备)中,所述程序或指令在被执行时,可以实现流程300。流程300可以包括以下操作。
70.步骤302,基于所述控制器局域网总线对应的节点数量,对所述第一时间段进行划分,确定一个或多个所述时间分片。
71.节点可以是指连接至控制器局域网总线的设备或控制部件。设备可以包括终端设备、移动设备、医学设备、工业设备等。控制部件可以包括处理器、控制器、收发器、设备部件等。节点数量是指需要通过控制器局域网总线发送消息的节点的个数。
72.在一些实施例中,时间分片可以是指第一时间段中可以用于各个节点发送消息的时间段。
73.在一些实施例中,可以根据节点数量将第一时间段平均划分,得到与节点数量相等的多个时间分片。例如,参见图6,图6是根据本说明书一些实施例所示的消息发送周期的示例性示意图。610表示控制器局域网总线,620表示一个消息发送周期,630表示第一时间段。其中的a、b、c、d分别为4个节点。假设,第一时间段为2ms、则可以将第一时间段2ms划分为4个0.5ms的时间分片,依次对应的a、b、c、d节点。
74.在一些实施例中,也可以根据各个节点对于消息发送的要求,例如,要发送的实时性消息数量、非实时性消息数量等将第一时间段划分为不完全相等的时间分片。节点对于消息发送的实时性越高、数量越多,则划分到的对应时间分片可以相应越长。例如,当第一时间段为2ms、节点数量为4个时,b节点和d节点需要发送的消息的实时性较高,并且数量较多,则可以将第一时间段分为0.2ms、0.8ms、0.2ms、0.8ms这4个时间分片,依次对应4个节点。
75.在一些实施例中,处理设备还可以基于节点的消息特征,对所述第一时间段进行划分。
76.消息特征可以是指节点所需要发送消息的数据特点。在一些实施例中,消息特征可以包括实时发送、滞后发送以及定期发送中的一种或多种。实时发送是指需要立马发送,比如,消息需要在消息发送周期内发送出去的消息。滞后发送可以是指延迟发送,比如,消息的实时性要求不高,只要发送出去即可,什么时候发送并不重要,则可以稍后发送。定期发送是指在需要按照一定时间间隔定期发送。例如,需要每两个周期要发送一次消息,则该部分消息需要在第一时间段对应的时间内发送。
77.步骤304,将所述时间分片分配给所述控制器局域网总线对应的节点。
78.将时间分片分配给节点可以理解为将控制器局域网总线在该时间分片对应的时
间内的使用权分配给节点。获得使用权的节点可以在该时间分片对应的时间内通过总线发送消息。
79.步骤306,将各节点的第一优先级消息设置为在第一时间段的时间分片所对应的时间发送。
80.在一些实施例中,处理设备可以通过控制器局域网总线在第一时间段的时间分片发送对应节点的第一优先级消息。例如,仍参见图6,第一时间段630划分为了4个时间分片,分别对应a、b、c、d四个节点。假设a节点要发送第一优先级消息,则a节点可以在第一时间段的第一部分(即a对应的时间分片)对应的时间内发送,b节点要发送的第一优先级消息,在第一时间段的第二部分(即b对应的时间分片)对应的时间内发送。
81.图7是根据本说明书一些实施例所示的控制器局域网总线的分时调度系统的模块图。如图7所示,系统700可以包括确定模块710、第一设置模块720和第二设置模块730。
82.确定模块710可以用于确定控制器局域网总线的消息发送周期。
83.所述消息发送周期包括时间同步段、第一时间段和第二时间段,所述时间同步段用于同步所述控制器局域网总线与目标系统的时间。所述目标系统为医疗设备系统。在一些实施例中,同步所述控制器局域网总线与目标系统的时间,包括:确定时间同步间隔;将时间同步消息设置为在所述时间同步段对应的时间内基于所述时间同步间隔向目标系统发送。
84.在一些实施例中,确定模块710基于所述目标系统对应的消息传输目的、所述控制器局域网总线对应的节点数量以及消息传输速率中的一种或多种,确定所述控制器局域网总线的消息发送周期。
85.在一些实施例中,确定模块710可以基于所述控制器局域网总线对应的节点数量,对所述第一时间段进行划分,确定一个或多个所述时间分片。
86.在一些实施例中,确定模块710可以基于所述节点的消息特征,对所述第一时间段进行划分。所述消息特征包括实时发送、滞后发送以及定期发送中的一种或多种。
87.在一些实施例中,确定模块710还可以用于关闭目标系统的自动重发设置。
88.第一设置模块720可以用于将第一优先级消息设置为在所述第一时间段对应的时间发送。
89.在一些实施例中,第一设置模块720可以判断消息是否为第一优先级消息,并将第一优先级消息在所述第一时间段对应的时间内发送。在一些实施例中,第一设置模块720可以将第一优先级消息在其他时间发送。
90.在一些实施例中,第一设置模块720可以将所述时间分片分配给所述控制器局域网总线对应的节点;将各节点的第一优先级消息设置为在第一时间段的时间分片所对应的时间发送。
91.第二设置模块730可以用于将第二优先级消息设置为在所述第二时间段对应的时间发送。
92.在一些实施例中,第二设置模块730可以判断消息是否为第二优先级消息,并将第二优先级消息在所述第二时间段对应的时间内发送。在一些实施例中,第二设置模块730可以将第二优先级消息在其他时间发送。在一些实施例中,第二设置模块730可以设置基于预设消息发送规则,在所述第二时间段对应的时间发送第二优先级消息。
93.关于控制器局域网总线的分时调度系统的各模块的具体描述,可以参考本说明书流程图部分,例如,图2和图3的相关说明。
94.应当理解,图7所示的控制器局域网总线的分时调度系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd-rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
95.需要注意的是,以上对于控制器局域网总线的分时调度系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,确定模块710、第一设置模块720和第二设置模块730可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
96.本说明书实施例可能带来的有益效果包括但不限于:(1)采用硬件、软件结合的方式,通过软件设置的方式实现对控制器局域网消息的分时调度,减少了硬件总线仲裁;(2)每个周期内划分出了时间同步段、发送实时性消息的第一时间段和发送非实时性消息的第二时间段,既确保了总线时间与系统时间的时间同步,又确保了实时消息的稳定发送,提高了消息发送的实时性和可靠性。
97.需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
98.上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
99.同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
100.此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或
对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
101.计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、rf、或类似介质,或任何上述介质的组合。
102.本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如java、scala、smalltalk、eiffel、jade、emerald、c++、c#、vb.net、python等,常规程序化编程语言如c语言、visual basic、fortran 2003、perl、cobol 2002、php、abap,动态编程语言如python、ruby和groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(lan)或广域网(wan),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(saas)。
103.此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
104.同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
105.一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有
±
20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
106.针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、
书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
107.最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1