技术领域
本申请实施例涉及医疗设备技术领域,具体涉及一种运动控制方法和设备。
背景技术
放射治疗是治疗肿瘤的常规手段之一,其工作的核心目的就是利用加速器发出的射线极大程度的杀死肿瘤组织并尽量保护其周围正常组织,这就要求高能射线束流射向患者时,必须对其照射范围加以限制。由于患者需求、病灶位置以及其三维形状均不尽相同,所以出于精确治疗、提高治疗效率等方面的考虑,需要对放射治疗涉及的运动系统实现精确控制。其中,放射治疗涉及的主要运动系统分别为:机架旋转控制系统、剂量控制系统和多叶准直器(MLC)。如图1所示,11为多叶准直器,12为机架,13为放射射束,14为治疗床,15为治疗头。机架是支撑整个直线加速器的主体结构,可以在垂直于地面并垂直于治疗床的平面内旋转,可以根据实际要求加速或减速。放射射束即为高能射线束流,其放射速度是可以调节的,由于物理特性,病灶所接受到的照射量是单调递增的,该照射总量称之为累积剂量。
放射治疗首先根据影像设备得到的肿瘤相关信息,然后综合病人需求及肿瘤类型等多种因素来确定治疗方案,再进一步得到治疗计划(treatment planning system,TPS),每个治疗计划称之为射野,包含诸如患者信息、治疗方案信息、设备信息、容许误差等等,其中还包含若干个子射野,每个子射野中包含每个控制系统的规定位置,所有的控制系统都需要严格遵守对应治疗方案的TPS信息进行运动。目前,放射治疗主要的治疗方案包括适形模式(Aperture)、静态调强(Step&shoot)、弧形治疗(ARC)、动态调强治疗(Dynamic Intensity-Modulated Radiation Therapy,DIMRT)、容积调强弧形放射治疗(Volumetric Modulated Arc Therapy,VMAT)等。其中,VMAT是当前放疗研究领域的一个热点。在这种治疗方案中,在放射源出束的同时,叶片和机架也在协调运动,根据治疗计划的要求,三个控制系统需要同时到达各个指定位置点,并具有同时启动同时停止的特点。这种治疗手段充分考虑到肿瘤的三维结构,具有速度快、精度高、剂量需求低、肿瘤适应性更高、损伤小和治疗效果好的优势。然而,由于几个系统需要协调运动,因此在运动规划上提出了较高的复杂性。另外,对各个系统的响应速度及控制精度上都会带来更大的挑战。
如图2所示,现有技术中存在一种VMAT控制方法,可以采用规则库的方式对各系统进行规划。这种方法按照规则来完成各个系统的协调运动,并设置MLC系统作为关键系统。若关键系统到位,其他系统未到位且误差在容许范围内则继续运动。若关键系统未到位,其他系统到位,则其他系统暂停工作1秒,关键系统继续运动;若1秒后,关键系统仍未到位,则停止治疗,检查系统驱动能力。在这种控制方法中,在其他系统到位而MLC系统不到位的情况下,会要求其他系统停止工作。但由于惯性的存在,这往往需要一定时间,从而可能产生过冲,还需要重新调节矫正,再启动的情况下亦会由于惯性的存在导致起步阶段速度较低。此外,采用规则进行矫正,采取措施往往是在某一系统到位时进行,即控制点间运动过程没有相应策略,会导致精确度偏低,很难保证准确到达治疗计划中要求的位置,严重时很可能每个控制点的位置都会存在一定偏差,从整体来看很可能影响治疗效果。
发明内容
本申请实施例提供了一种动态放射治疗控制方法及设备,旨在解决现有技术存在的放射治疗控制方法精度低、不能实时调整的技术问题。
为此,本申请实施例提供如下技术方案:
本申请实施例的第一方面,公开了一种运动控制方法,所述方法应用于运动控制系统,所述运动控制系统用于控制至少两个运动系统在相同的时间,各自运动到对应的期望位置,所述方法包括:获取各运动系统在一射野中的各子野中的期望位置;设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度,在控制周期的起始时间点,获取每个运动系统当前的实际运动位置;根据每个运动系统当前的实际运动位置与在子野中的期望位置的差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差;在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
本申请实施例的第二方面,公开了一种运动控制方法,所述方法应用于运动控制系统,所述运动控制系统用于控制至少两个运动系统在相同的时间,各自运动到对应的期望位置,所述方法包括:获取各运动系统在一射野中的各子野中的期望位置;设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度;通过各运动系统在各子野中的期望位置和所述控制周期,获得各运动系统在各控制周期的目标位置;在控制周期的起始时间点,获取每个运动系统当前的实际运动位置;根据每个运动系统当前的实际运动位置与所述运动系统在上一控制周期的目标位置的位置差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差;在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
本申请实施例的第三方面,公开了一种动态放射治疗控制方法,应用于动态放射治疗控制系统,所述系统包括上位机模块、处理模块、控制系统模块和反馈模块,所述控制系统模块包括机架旋转控制系统、剂量控制系统、多叶准直器MLC,所述控制系统模块用于控制被控对象在相同的时间,各自运动到对应的期望位置,所述被控对象包括机架、加速管栅极枪、MLC,所述方法包括:所述上位机模块获取射野信息与子野信息,向所述处理模块发送获取的射野信息与子野信息;所述射野信息包含各被控对象的期望位置,所述子野信息包含被控对象在各子野中的期望位置;所述处理模块获取上位机模块发送的射野信息与子野信息,以及在当前控制周期的起始时间点,获取反馈模块发送的各被控对象当前的实际运动位置;所述处理模块在控制周期的起始时间点,根据所述被控对象当前的实际运动位置与子野中的期望位置的差值或者被控对象当前的实际运动位置与上一控制周期的目标位置的位置差值,调整所述被控对象在当前控制周期的运动速度以补偿所述被控对象的运动偏差;所述控制系统模块用于根据所述处理模块计算的运动速度控制各被控对象进行运动。
本申请实施例的第四方面,公开了一种运动控制设备,所述运动控制设备用于控制至少两个运动系统在相同的时间,各自运动到对应的期望位置,包括:第一获得单元,用于获取各运动系统在一射野中的各子野中的期望位置;设置单元,用于设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度;第二获得单元,用于在控制周期的起始时间点,获取每个运动系统当前的实际运动位置;调整单元,用于根据每个运动系统当前的实际运动位置与子野中的期望位置的差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差;控制单元,用于在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
本申请实施例的第五方面,公开了一种用于运动控制的设备,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行如第一方面所述的运动控制方法。
本申请实施例的第六方面,公开了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得设备执行如第一方面所述的运动控制方法。
本申请实施例的第七方面,公开了一种用于运动控制的设备,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行如第二方面所述的运动控制方法。
本申请实施例的第八方面,公开了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得设备执行如第二方面所述的运动控制方法。
本申请实施例提供的运动控制方法及设备,可以应用于运动控制系统,所述运动控制系统用于控制至少两个运动系统在相同的时间,各自运动到对应的期望位置。具体地,本申请实施例可以获取各运动系统在一射野中的各子野中的期望位置,设置控制周期以便在每个子野的形成过程中分段控制各运动系统的运动速度。在控制周期的起始时间点,获取每个运动系统当前的实际运动位置,根据每个运动系统当前的实际运动位置与在子野中的期望位置的差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差;在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。由于可以根据各运动系统的实际运动情况,调整当前控制周期运动系统的运动速度,以补偿运动系统在上一控制周期的运动差值,实现了实时、精确地控制,并能够实现两个以上运动系统的协调运动。因此,本申请实施例可以实现动态实时规划调整,有效提高系统整体的控制精度,有利于放射治疗的顺利完成,减轻医护人员及患者的压力
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为直线加速器放疗照射示意示意图;
图2为现有技术提供的VMAT控制方法示意图;
图3为本申请一实施例提供应用场景示意图;
图4为本申请一实施例提供的运动控制方法流程图;
图5为本申请另一实施例提供的运动控制方法流程图;
图6为本申请另一实施例提供的运动控制方法流程图;
图7为本申请再一实施例提供的运动控制方法流程图;
图8为本申请又一实施例提供的运动控制方法流程图;
图9为本申请实施例提供的动态放射治疗控制系统示意图;
图10为本申请一实施例提供的运动控制设备示意图;
图11为根据一示例性实施例示出的一种用于运动控制设备的框图;
图12为本申请又一实施例提供的运动控制方法流程图。
具体实施方式
本申请实施例提供了一种运动控制方法及设备,可以实现动态实时规划调整,有效提高系统整体的控制精度,有利于放射治疗的顺利完成,减轻医护人员及患者的压力。
需要说明的是,本申请实施例提供的方法可以应用于运动控制系统中,所述运动控制系统用于控制至少两个运动系统协调运动。当然,所述运动控制系统也可以用于控制三个或者三个以上运动系统协调运动。在本申请实施例中,以所述方法应用于动态放射治疗控制系统为例进行说明。当然,本申请实施例还可以应用到其他应用场景中,例如应用到两个以上运动系统协调运动的应用场景。
首先,对本申请的思想进行阐述。需要说明的是,VMAT的实现是依据治疗计划的,每一份治疗计划都会分为若干个子野,对应多个控制周期,每个子野中规定机架位置、累积剂量值及多叶准直器中各个叶片的目标位置。需要说明的是,在形成一个子野的过程中一般会设置多个控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度。在运动系统在一个子野的运动过程中,可能包含一个或多个控制周期,以逐步运动到子野中的期望位置。所以实现VMAT的目标是三个系统同时从第一个子野位置开始,同时按治疗计划的顺序到达每一个子野规定的位置,直到最后一个子野时同时停止,其中,每个子野可以被称之为一个控制点。其示意图如图3所示。其中,i为当前控制点序号,Φi为规定的机架位置,Di为规定的累积剂量值,Pi为规定的叶片位置值,需要注意Pi为数组,包含多个叶片的位置值。
如果运动系统不发生任何改变的前提下,在当前控制点和下一个控制点之间可以根据要求匀速运行。然而实际的运动过程中,系统外部会存在各种扰动,系统内部也会由于摩擦,惯性及精确度等原因产生误差,从而会影响运动系统的准确性。
为了能够保证叶片在每个累积剂量达到时都能够准确的达到指定位置,每隔一定时间需要对各个系统所处的位置进行检测,并根据检测数据及治疗计划的需要进行校正,进而需要引入运动规划及控制系统。申请人在实现本申请的过程中发现,由于外部环境的影响和内部各系统的特性不同,如何协调运动几个控制系统是实现VMAT治疗模式的一个关键点。基于此,本申请提出了一种控制方法,可以不受外部扰动及控制系统内部误差的影响,根据控制系统的实际反馈信号及TPS计划的要求,可以实时规划各个控制系统下一控制周期的目标速度和/或目标位置,能够以最快速度完成治疗,并保证较高的位置精度,尽量减少某个系统停止等待甚至偏差较大引起故障提示的情况,保证整个治疗平稳,快速的完成。
本发明技术实现方案整体架构如图9所示,所述方法应用于动态放射治疗控制系统,所述系统包括上位机模块、处理模块、控制系统模块和反馈模块,所述控制系统模块包括机架旋转控制系统、剂量控制系统、多叶准直器MLC控制系统。所述机架旋转控制系统包括机架控制器、执行电机、机架;所述剂量控制系统包括剂量控制器、调制器、加速管栅极枪;所述MLC控制系统包括MLC控制器、执行电机、MLC。其中,所述控制系统模块用于控制被控对象在相同的时间,各自运动到对应的期望位置,所述被控对象包括机架、加速管栅极枪、MLC,所述被控对象又可以成为运动部件或者运动系统。需要说明的是,可以设置多个控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度。子野信息包含了各机架旋转控制系统、剂量控制系统、多叶准直器MLC在各子野中的期望位置。如图9所示,其中,[Φi,Di,Pi]为治疗计划中第i个控制周期的机架角度,累积剂量值和MLC中各叶片的目标位置。[Φr,Dr,Pr]为处理器规划得到的下一个控制周期的调整位置,[Φe,De,Pe]为控制系统中控制器的输入值(位置差),[Φu,Du,Pu]为控制器输出,[φM,DM,PM]分别为各系统执行器的驱动扭矩和触发脉冲,[Φc,Dc,Pc]为实际位置值。所述上位机模块901用于获取射野信息与子野信息,向所述处理模块发送获取的射野信息与子野信息。具体地,上位机模块901负责将治疗计划通过专用的解析软件,将射野信息和子野信息的数据导出并传送至处理模块902中按照协议格式存储以供处理模块调用。所述射野信息包含各被控对象的期望位置,例如可以包括MLC的叶片数量,子野数量,机架旋转方向等。所述子野信息包括被控对象在各子野中的期望位置,例如可以包含机架位置,累积剂量值和MLC中各个叶片位置等。
处理模块(MCU)902(例如单片机,FPGA,PC机等等)获取上位机模块发送的射野信息与子野信息,以及在当前控制周期的起始时间点,获取反馈模块发送的各被控对象当前的实际运动位置,并在当前控制周期,根据所述被控对象当前的实际运动位置与子野中的期望位置的差值或者被控对象当前的实际运动位置与上一控制周期的目标位置的位置差值,调整所述被控对象在当前控制周期的运动速度以补偿所述被控对象的运动偏差。具体地,处理模块会计算得到在当前控制周期的调整运动速度,根据该调整运动速度计算得到在当前控制周期各被控对象调整后的目标位置。将该调整目标位置发送到各控制系统模块中。
控制系统模块903中每个控制系统都包含控制器、执行电机及相应被控对象三个组成部分,每个控制系统的控制器获取调整后被控对象在当前控制周期的目标位置与被控对象在当前控制周期开始前的实际运动位置的位置差值,根据所述位置差值来调整被控参数(电流或者电压值),由相应的驱动装置驱动被控对象运动到调整后的目标位置。需要说明的是控制系统内部的实际控制周期一般不长于处理模块设定的控制周期,而且是越短效果越优。然后,再通过反馈模块904将实际的位置信息(或速度信息)通过各个系统的节点反馈给处理模块902和控制系统模块903,按照控制周期,处理模块902采集相应数据进行下一次规划,从而形成规划闭环和控制闭环的结构。
当某一控制系统的实际位置超过下一个控制点的设定位置,则将下一个控制点之后的控制点的数据导入作为新的目标位置进行规划,直至处理器检测到位后发出停止命令。如果其中某一控制系统的位置值出现在容许范围内的偏差,规划模块会根据情况调整另外两个系统目标位置以实现多系统协调运动;但与之前介绍方案类似,如果某一系统的偏差过大,则该规划模块会发出错误码并要求停止治疗。
下面将结合附图4至附图8本申请示例性实施例示出的运动控制方法进行介绍。
参见图4,为本申请一实施例提供的运动控制方法流程图。所述方法应用于运动控制系统,所述运动控制系统用于控制至少两个运动系统在相同的时间,各自运动到对应的期望位置。如图4所示,可以包括:
S401,获取各运动系统在一射野中的各子野中的期望位置。
前面提到,各运动系统在一射野中包含多个子野,每个子野包含了各运动系统在子野中的期望位置。例如,所述子野信息可以包含各机架旋转控制系统、剂量控制系统、多叶准直器MLC在各子野中的期望位置。
S402,设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度。
具体实现时,为了使至少两个运动系统在相同的时间,各自运动到对应的期望位置,可以设置多个控制周期。在每个子野形成过程中,可以设置一个或多个控制周期,用于在每个子野的形成过程中分段控制各运动系统的运动速度。需要说明的是,每个子野对应的控制周期的数量可以是不同的。控制周期的长度可以是相同的。举例说明,假设在第一个子野的形成过程中,设置了5个控制周期,各控制周期分别为0-2秒、3-4秒、5-6秒、7-8秒、9-10秒。又如,在第二个子野的形成过程中,可以设置3个控制周期,例如11-12S、13-14S、15-16S。当然,以上仅为示例性说明,不视为对本申请的限制。
S403,在控制周期的起始时间点,获取每个运动系统当前的实际运动位置。
S404,根据每个运动系统当前的实际运动位置与在子野中的期望位置的差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差。
S405,在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
在本申请具体实现时,根据S404的实现不同,具有不同的实现方式。具体地,在这一实施例中,是根据运动系统在当前控制周期对应的子野的期望位置与该运动系统在上一控制周期实际运动位置的位置差值调节运动系统在当前控制周期的运动速度来补偿运动偏差的。根据如何调整运动速度的方式不同,又存在两种不同的实现方式。
具体地,在一些实施方式中,所述根据各运动系统当前的实际运动位置与在子野中的期望位置的差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差包括:获取各运动系统在当前控制周期对应的子野中的期望位置与各运动系统当前实际运动位置的位置差值,根据所述位置差值以及各运动系统的最大运动速度确定各运动系统到达所述子野中的期望位置所需的最短执行时间;确定各最短执行时间的最大值,作为各运动系统在当前控制周期的执行时间;根据所述执行时间确定所述运动系统在当前控制周期的期望运动速度。在这种实现方式中,是通过确定最短执行时间的最大值来确定所述运动系统的运动速度的,从而实现了所述个运动系统的协调运动。具体实现可以参照图6所示实施例的描述。
在一些实施方式中,所述根据各运动系统当前的实际运动位置与子野中的期望位置的差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差包括:根据各运动系统当前的实际运动位置与在子野中的期望位置的差值,计算得到所述运动系统在当前控制周期的执行能力利用率值;获取所述运动系统在上一控制周期的执行效率值;将所述运动系统执行能力利用率值与执行效率值的比值中的最大值作为调节系数;根据所述调节系数确定所述运动系统在当前控制周期的运动速度。在这种实现方式中,是考虑了系统执行效率的因素,通过调节系数实现对所述系统运动速度的条件,从而实现了所述个运动系统的协调运动。具体实现可以参照图7所示实施例的描述。
下面从应用于动态放射治疗控制系统为例说明本申请提供的运动控制方法。需要说明的是,如何根据至少两个运动系统的实际运动位置与目标位置的差值,调整各运动系统在当前控制周期的运动速度以补偿所述运动系统的运动偏差的具体实现可以参照图5至图8实施例而进行。
参见图5,为本申请一实施例提供的运动控制方法流程图。应用于动态放射治疗控制系统,所述系统包括上位机模块、处理模块、控制系统模块和反馈模块,所述控制系统模块包括机架旋转控制系统、剂量控制系统、多叶准直器MLC控制系统,所述控制系统模块用于控制被控对象在相同的时间,各自运动到对应的期望位置,所述被控对象包括机架、加速管栅极枪、MLC,如图5所示,可以包括:
S501,上位机模块获取射野信息与子野信息,向所述处理模块发送获取的射野信息与子野信息。
其中,所述射野信息例如可以包括MLC的叶片数量、子野数量、机架旋转方向以及各被控对象的期望位置等。其中,子野数量用于表明在期望时间内设置的控制周期的数量,例如子野数量为5,则表明设置了5个控制周期。所述子野信息包括各被控对象在各控制周期的目标位置。例如可以包含机架位置、累积剂量值和MLC中各个叶片位置等。其中,各被控对象又可以称为运动系统。
S502,处理模块获取上位机模块发送的射野信息与子野信息,以及在当前控制周期开始时,获取反馈模块发送的各被控对象当前的实际运动位置。
S503,处理模块在当前控制周期,根据所述被控对象当前的实际运动位置与子野中的期望位置的差值或者被控对象当前的实际运动位置与上一控制周期的目标位置的位置差值,调整所述被控对象在当前控制周期的运动速度以补偿所述被控对象的运动偏差。
S504,所述控制系统模块用于根据所述处理模块计算的运动速度控制各被控对象进行运动。
具体实现时,根据处理模块如何调整运动速度的方式不同,本申请实施例具有不同的实现方式。
为了便于本领域技术人员更清楚地理解本申请的实施方式,下面以三个具体示例对本申请实施如何调整各运动系统的运动速度来实现运动偏差补偿的具体实现方式进行介绍。需要说明的是,该具体示例仅为使得本领域技术人员更清楚地了解本申请,但本申请的实施方式不限于该具体示例。
参见图6,为本申请再一实施例提供的运动控制方法流程图。如图6所示,可以包括:
S601,获取各运动系统在当前控制周期对应的子野中的期望位置与各运动系统当前实际运动位置的位置差值。
具体实现时,可以获取各运动系统在当前控制周期对应的子野中的期望位置[Φi,Di,Pi]。其中,[Φi,Di,Pi]为治疗计划中第i个控制点(第i个子野)的机架角度、累积剂量值和MLC中各叶片的位置,也就是各运动系统在第i个子野中的期望位置。
S602,根据所述差值以及各运动系统的最大运动速度确定各运动系统到达所述子野中的期望位置所需的最短执行时间。
具体实现时,可以根据位置差和最大速度确定各个系统的达到下一控制点所需的最短执行时间。
其中,t1min,t2min,t3min分别为机架系统、剂量系统和MLC系统的最短执行时间;分别为反馈模块反馈的当前机架位置值,累积剂量值和叶片位置值;ωmax,μmax,νmax分别为当前设备的最大机架转速、最大剂量率和最大叶片移动速度。其中,[Φi,Di,Pi]为治疗计划中第i个控制点的机架角度、累积剂量值和MLC中各叶片的位置,也就是各运动系统在子野中的期望位置。
由于叶片数量较多,但由于叶片的形状、材料和驱动电机是一样的,故执行器的执行能力相同,因此只需要确定距离目标位置最远的叶片进行计算即可。
S603,确定各最短执行时间的最大值,作为各运动系统在当前控制周期的执行时间。
具体实现时,可以得到三个最短执行时间中的最大值,即以所需时间最长的系统作为标准,另外两个系统则降低速度,从而保证不会超过每个系统的速度上限,又可以发挥相对最慢的系统的能力,从而整个系统尽快能够达到目标位置。另外,由于需要按照控制周期进行规划,因此此处对最长时间控制周期取整,表达式如下所示:
t=ceil(max(t1min,t2min,t3min)/T)*T
Ceil函数表示向上取整,T为设定的控制周期,t为当前控制周期的执行时间。
S604,根据所述执行时间确定各运动系统在当前控制周期的期望运动速度。
具体地,根据上一步得到的执行时间,重新规划到达控制点时的速度:
分别为重新规划后的期望机架转速,期望剂量率和期望叶片移动速度。
S605,根据期望运动速度确定各运动系统在当前控制周期的目标位置值。
为j+1个控制周期的机架的目标位置;为第j+1个控制周期的剂量系统的期望累积剂量值;为第j+1个周期叶片目标位置值。T为控制周期。
S606,判断是否转至下一控制点;若是,执行S601。
具体实现时,当某一系统的位置到达甚至超过目标位置则跳转到下一个控制点。
具体地,在跳转到下一个控制点时,如果有未到达目标且偏差未超过阈值,则继续按照下一个控制点进行规划。如果超过设定阈值,则处理模块记录当前位置并发出错误报告,直接停止治疗检查该控制系统的各个部分,待系统恢复后,由临床人员、维护人员和患者评估继续治疗或终止治疗。
在本申请这一实施例中,设定当前所需时间最长的系统以最大速度运行,另外两个系统相应降速的方式,充分发挥三个系统的运动能力,可以实现治疗时间最短,并可避免有系统一直跟不上其他系统的现象。本申请实施例可以充分发挥三个系统的运动能力,设定当前所需时间最长的系统采取最大速度运行的方式,对于不同累计剂量的治疗计划的适应度更好。此外,由于采用在线规划的方式,累积剂量平滑度更好,而且精度实时可调,可靠性更高。
参见图7,为本申请又一实施例提供的运动控制方法流程图。与图6所示方案不同的是,采用差值补偿的方式实现协调运动。也就是说,上一控制周期运动偏差在后面的运动过程中补回来,但由于各个控制系统具有运动速度上限,因此直接补偿可能会超过该系统的最大速度范围,因此还需要进行重规划。如图7所示,所示方法可以包括:
S701,获取各运动系统在当前控制周期对应的子野的期望位置与各运动系统当前实际运动位置的差值。
S702,获取各运动系统在上一控制周期的执行效率值。
具体地,可以获取各运动系统在上一控制周期的目标位置、各运动系统当前的实际运动位置以及所述运动系统的运动速度值计算得到各运动系统在上一控制周期的执行效率值。
例如,可以根据反馈的位置值与上一个控制周期的目标位置值和期望的速度值计算得到每个系统的执行效率值。
其中,分别为机架系统,剂量系统和MLC系统的执行效率值,MLC系统依然选择距离目标值最远的叶片。为第j-1个控制周期的机架的目标位置;为第j-1个控制周期剂量系统的目标累积剂量值;为第j-1个控制周期叶片期望位置值。为第j个控制周期的机架的目标位置;为第j个控制周期剂量系统的目标累积剂量值;为第j个控制周期叶片目标位置值。T为控制周期。分别为第j个控制周期的期望机架转速、期望剂量率和期望叶片移动速度。
S703,根据各运动系统当前的实际运动位置与在子野中的期望位置的差值,计算得到所述运动系统在当前控制周期的执行能力利用率值。
具体实现时,S703又可以包括:
S703A,根据S701获取的所述差值以及各运动系统的最大运动速度确定各运动系统到达所述子野中的期望位置所需的最短执行时间。
S703B,确定所述最短执行时间的最大值,作为各运动系统在当前控制周期的执行时间。
S703C,根据所述执行时间确定各运动系统在当前控制周期的期望运动速度。
S703D,将所述期望运动速度与最大运动速度的比值作为各运动系统在当前控制周期的执行能力利用率值。
其中,S703A至S703C的实现可以参照S601至S604而进行,在此不再赘述。
具体地,可以根据反馈得到的当前位置和下一个控制点的位置值,可以得到期望的执行能力利用率,即规划得到的期望速度与最大速度的比值。
ηΦ,ηR,ηP分别为机架系统、剂量系统和MLC系统的执行能力利用率。分别为重新规划后的期望机架转速、期望剂量率和期望叶片移动速度。ωmax,μmax,νmax分别为当前设备的最大机架转速、最大剂量率和最大叶片移动速度。t为S703确定的当前控制周期的执行时间。
S704,将各运动系统执行能力率用率值与执行效率值的比值中的最大值作为调节系数。
具体地,可以取各运动系统的执行能力利用率与执行效率比值的最大值作为调节系数。
其中,t′为调节系数。
S705,根据所述调节系数确定各运动系统在当前控制周期的运动速度。
具体地,可以根据以下公式确定当前控制周期的期望运动速度。
其中,分别为调整后的期望机架转速、期望剂量率和期望叶片移动速度。
S706,根据各运动系统在当前控制周期的运动速度计算目标运动位置。
在图7所示实施例中,考虑了控制系统执行器的执行能力存在固定偏差的影响,并提供了相应的矫正方法。具体地,是通过计算调节系数的方式来矫正各系统的偏差,从而实现各个系统协调运动。此外,由于引入执行效率的概念,可以矫正执行效率偏差较大的运动系统,并重新规划各运动系统,防止期望速度超过系统阈值,提高系统的到位精度。
在另一些实施方式中,可以通过其他方式实现控制至少两个运动系统在相同的时间,各自运动到对应的期望位置。如图12所示:
S1201,获取各运动系统在一射野中的各子野中的期望位置。
S1202,设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度。
S1203,通过各运动系统在各子野中的期望位置和所述控制周期,获得各运动系统在各控制周期的目标位置。
具体实现时,所述运动系统在第i个控制周期的目标位置的计算可以参照S601至S605进行。
S1204,在控制周期的起始时间点,获取每个运动系统当前的实际运动位置。
S1205,根据每个运动系统当前的实际运动位置与所述运动系统在上一控制周期的目标位置的位置差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差。
具体实现时,所述运动系统在第i个控制周期的目标位置的计算可以参照S601至S605进行。
S1206,在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
在这一实施方式中,采用了实时补偿的方式,通过计算运动系统在上一控制周期的目标位置与实际运动位置的位置差的方式,调节所述运动系统的运动速度,从而实现了运动偏差补偿。具体地,在一些实施方式中,所述根据所述位置差值调整所述运动系统在当前控制周期的运动速度以补偿所述运动系统的运动偏差包括:若所述位置差值大于零且当前运动速度小于第一设定阈值时,提高所述运动系统在当前控制周期的运动速度;若所述差值小于零且当前运动速度大于零时,降低所述运动系统在当前控制周期的运动速度。下面结合图8对这一实现方式进行详细地阐述。
参见图8,为本申请又一实施例提供的运动控制方法流程图。在这一实施例中,提供了与图6、图7不同的调整方式。在这个实施例中,可以获取各运动系统在上一控制周期的目标位置与各运动系统在上一控制周期实际运动位置的位置差值,根据所述位置差值调整各运动系统在当前控制周期的运动速度以补偿所述运动系统的运动偏差。具体地,若所述位置差值大于零且所述运动系统在当前控制周期的运动速度小于第一设定阈值时,提高所述运动系统在当前控制周期的运动速度;若所述位置差值小于零且所述运动系统在当前控制周期的运动速度大于零时,降低所述运动系统在当前控制周期的运动速度。下面以一个具体的实例进行说明。
S801,确定规划运动速度。
在这一实施例中,将各运动系统的速度上限设置为两个等级。以机架系统为例,设置两个速度值分别为ω1,ω2,其中ω1>ω2。其中ω1为实际系统最大速度值,ω2为相对偏小的一个保守最大速度值。同样的,设定剂量系统速度设定值为μ1,μ2,MLC系统运动速度设定值为ν1,ν2。
具体实现时,在上位机将治疗计划传入处理模块后,处理模块可以根据各相邻控制点的位置差并按照较低速度上限(ω2,μ2,ν2)进行规划。具体可以参考图6所示实施例中的S601至S604而实现。然后将各控制点间规划得到的速度值存储起来,待到达相应控制点处进行调用。
S802,获取各运动系统在上一控制周期的目标位置与各运动系统当前的实际运动位置的差值。
S803,若所述位置差值大于零且所述运动系统在当前控制周期的运动速度小于第一设定阈值时,提高所述运动系统在当前控制周期的运动速度。
以机架控制系统为例说明,具体实现时,可以根据在上一控制周期的期望位置与上一控制周期结束时的实际运动位置的差值进行比较,根据偏差Δ进行补偿。举例说明,若Δ>0,且重新规划速度则为下一个控制周期的期望速度,为各运动系统在S801获得的规划运动速度。如果且偏差未超出阈值,则ω1为下一个控制周期的期望速度继续运动,如果超过阈值则停止治疗检查该系统的各个部件。
S804,若所述位置差值小于零且所述运动系统在当前控制周期的运动速度大于零时,降低所述运动系统在当前控制周期的运动速度。
举例说明,若Δ<0,且重新规划速度则为下一个控制周期的期望速度,为各运动系统在S801获得的规划运动速度。如果则以最快速度减速停止运动,如果偏差未超出阈值,则待规划速度为正或者Δ>0时继续运动,如果超过阈值则停止治疗检查该系统的各个部件。
S805,若所述差值等于零,则按照规划的期望运动速度继续运动。
例如,如果Δ=0,则继续按照规划的期望速度继续运动。
在这一实例中,设定两级速度上限值,在准备阶段中按较低速度上限值离线完成位置规划,然后根据检测结果进行位置(或/和速度)补偿的方式实现VMAT治疗方案,提高了控制精度。
需要说明的是,通过以上实例的介绍,可以看出,本申请实施例提供的运动控制方法,可以精确地根据各个系统的实际位置实时进行协调调整。由于可以在各控制周期对各控制点进行调整,使得各系统的到位精度更高,进而保证了加速器的治疗效果,减少患者正常组织的损伤和加强对肿瘤细胞的杀伤。此外,本申请实施例提供的实时调整方法,减少停束的可能性,从而减少了过冲的产生,保证了治疗精度。另外,本申请实施例对于外界扰动及各控制系统内部产生的变化的应变能力增强,可以根据反馈信息对各控制系统进行及时调整。
以上对本申请实施例提供的方法进行了详细地介绍,下面对本申请实施例提供的方法对应的设备进行介绍。
参见图10,为本申请一实施例提供的运动控制设备示意图。
一种运动控制设备1000,所述运动控制设备用于控制至少两个运动系统在相同的时间,各自运动到对应的期望位置,所述设备包括:
第一获得单元1001,用于获取各运动系统在一射野中的各子野中的期望位置。
设置单元1002,用于设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度;
第二获得单元1003,用于在控制周期的起始时间点,获取每个运动系统当前的实际运动位置;
调整单元1004,用于根据每个运动系统当前的实际运动位置与在子野中的期望位置的差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差。
控制单元1005,用于在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
在一些实施方式中,所述调整单元包括:
最短执行时间计算单元,用于获取各运动系统在当前控制周期对应的子野中的期望位置与各运动系统当前的实际运动位置的位置差值,根据所述位置差值以及各运动系统的最大运动速度确定各运动系统到达所述子野中的期望位置所需的最短执行时间;
执行时间确定单元,用于确定各最短执行时间的最大值,作为各运动系统在当前控制周期的执行时间;
第一运动速度计算单元,用于根据所述执行时间确定各运动系统在当前控制周期的期望运动速度。
在一些实施方式中,所述调整单元包括:
效率值计算单元,用于获取各运动系统在上一控制周期的执行效率值;
利用率值计算单元,用于根据各运动系统当前的实际运动位置与在子野中的期望位置的差值,计算得到所述运动系统在当前控制周期的执行能力利用率值;
调节系数计算单元,用于将各运动系统执行能力利用率值与执行效率值的比值中的最大值作为调节系数;
第二运动速度计算单元,用于根据所述调节系数确定各运动系统在当前控制周期的运动速度。
在一些实施方式中,所述效率值计算单元具体用于:获取各运动系统在上一控制周期的目标位置、各运动系统当前实际运动位置以及所述运动系统的运动速度值计算得到各运动系统在上一控制周期的执行效率值。
在一些实施方式中,所述利用率值计算单元包括:
最短执行时间计算单元,用于获取各运动系统在当前控制周期对应的子野的期望位置与各运动系统当前实际运动位置的位置差值,根据所述位置差值以及各运动系统的最大运动速度确定各运动系统到达所述子野中的期望位置所需的最短执行时间;
执行时间确定单元,用于确定所述最短执行时间的最大值,作为各运动系统在当前控制周期的执行时间;
期望运动速度计算单元,用于根据所述执行时间确定各运动系统在当前控制周期的期望运动速度;
调节系数计算单元,用于将所述期望运动速度与最大运动速度的比值作为各运动系统在当前控制周期的执行能力利用率值。
本申请实施例还提供了一种运动控制设备,所述运动控制设备用于控制至少两个运动系统在相同的时间,各自运动到对应的期望位置,所述设备包括:
第一获得单元,用于获取各运动系统在一射野中的各子野中的期望位置;
设置单元,用于设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度;
目标位置获得单元,用于通过各运动系统在各子野中的期望位置和所述控制周期,获得各运动系统在各控制周期的目标位置;
第二获得单元,用于在控制周期的起始时间点,获取每个运动系统当前的实际运动位置;
调整单元,用于根据每个运动系统当前的实际运动位置与所述运动系统在上一控制周期的目标位置的位置差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差;
控制单元,用于在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
在一些实施方式中,所述调整单元包括:
提高单元,用于若所述位置差值大于零且所述运动系统在当前控制周期的运动速度小于第一设定阈值时,提高所述运动系统在当前控制周期的运动速度;
降低单元,用于若所述位置差值小于零且所述运动系统在当前控制周期的运动速度大于零时,降低所述运动系统在当前控制周期的运动速度。
在一些实施方式中,所述设备还包括:
规划单元,用于若所述至少两个运动系统在上一控制周期的实际运动位置超过当前控制点的设定位置时,获取下一控制点的设定位置进行运动规划。
参见图11,是本申请另一实施例提供的运动控制的设备的框图。包括:至少一个处理器1101(例如CPU),存储器1102和至少一个通信总线1103,用于实现这些设备之间的连接通信。处理器1101用于执行存储器1102中存储的可执行模块,例如计算机程序。存储器1102可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器1101执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取各运动系统在一射野中的各子野中的期望位置;设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度;在控制周期的起始时间点,获取每个运动系统当前的实际运动位置;根据每个运动系统当前的实际运动位置与在子野中的期望位置的差值或者每个运动系统当前的实际运动位置与上一控制周期的目标位置的位置差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差;在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。
在一些实施方式中,处理器1101具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取各运动系统在当前控制周期对应的子野中的期望位置与各运动系统当前实际运动位置的位置差值,根据所述位置差值以及各运动系统的最大运动速度确定各运动系统到达所述子野中的期望位置所需的最短执行时间;确定各最短执行时间的最大值,作为各运动系统在当前控制周期的执行时间;根据所述执行时间确定各运动系统在当前控制周期的期望运动速度。
在一些实施方式中,处理器1101具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:据各运动系统当前的实际运动位置与在子野中的期望位置的差值,计算得到所述运动系统在当前控制周期的执行能力利用率值;获取各运动系统在上一控制周期的执行效率值;将各运动系统执行能力利用率值与执行效率值的比值中的最大值作为调节系数;根据所述调节系数确定各运动系统在当前控制周期的运动速度。
在一些实施方式中,处理器1101具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取各运动系统在上一控制周期的目标位置、各运动系统当前实际运动位置以及所述运动系统的运动速度值计算得到各运动系统在上一控制周期的执行效率值。
在一些实施方式中,处理器1101具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取各运动系统在当前控制周期对应的子野的期望位置与各运动系统当前实际运动位置的位置差值,根据所述位置差值以及各运动系统的最大运动速度确定各运动系统到达所述子野中的期望位置所需的最短执行时间;确定所述最短执行时间的最大值,作为各运动系统在当前控制周期的执行时间;根据所述执行时间确定各运动系统在当前控制周期的期望运动速度;将所述期望运动速度与最大运动速度的比值作为各运动系统在当前控制周期的执行能力利用率值。
在一些实施方式中,处理器1101具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取各运动系统在上一控制周期的目标位置与各运动系统当前实际运动位置的位置差值;若所述位置差值大于零且所述运动系统在当前控制周期的运动速度小于第一设定阈值时,提高所述运动系统在当前控制周期的运动速度;若所述位置差值小于零且所述运动系统在当前控制周期的运动速度大于零时,降低所述运动系统在当前控制周期的运动速度。
在一些实施方式中,处理器1101具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:若所述至少两个运动系统在上一控制周期的实际运动位置超过当前控制点的设定位置时,获取下一控制点的设定位置进行运动规划。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由设备的处理器执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种机器可读介质,例如该机器可读介质可以为非临时性计算机可读存储介质,当所述介质中的指令由设备(终端或者服务器)的处理器执行时,使得设备能够执行一种运动控制方法,所述方法包括:获取各运动系统在一射野中的各子野中的期望位置;设置控制周期,所述控制周期用于在每个子野的形成过程中分段控制各运动系统的运动速度;在控制周期的起始时间点,获取每个运动系统当前的实际运动位置;根据每个运动系统当前的实际运动位置与子野中的期望位置的差值或者每个运动系统当前的实际运动位置与上一控制周期的目标位置的位置差值,调整各运动系统在当前控制周期的运动速度以补偿各运动系统的运动偏差;在当前控制周期,根据调整后的运动速度控制各运动系统进行运动。其中,本申请设备各单元或模块的设置可以参照图4至图8所示的方法而实现,在此不赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。