末端工具的运动控制方法、装置、设备及存储介质与流程

未命名 07-23 阅读:98 评论:0


1.本公开涉及机器人运动控制领域,尤其涉及一种末端工具的运动控制方法、装置、设备及存储介质。


背景技术:

2.在使用机器人进行关节置换手术时,对机器人的安全性要求极高,需要机器人的末端工具始终保持在特定的预设运动区边界内运动。例如,在全膝置换手术中,在切削胫骨时,要求机器人的末端工具始终保持在切削区域内运动,以保证全膝置换手术的精准性和安全性。
3.为了控制末端工具始终保持在特定的预设运动区边界内运动,需要实时控制末端工具的位置。在现有技术中,当检测到末端工具超出预设运动区边界时,先将末端工具断电,待手动控制末端工具回到预设运动区边界内,再对末端工具通电,控制末端工具继续进行手术。然而,当末端工具处于预设运动区边界时,就会频繁的出现通断电的情况,给用户操作带来不便,降低了手术的流畅性和效率。


技术实现要素:

4.为了解决上述技术问题,本公开提供了一种末端工具的位置控制方法、装置、设备及存储介质。
5.第一方面,本公开提供了一种末端工具的位置控制方法,该方法包括:
6.在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,所述预设过渡区是由所述末端工具的过渡区边界至所述预设运动区边界围成的区域;
7.若所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动,确定所述末端工具在当前周期的阻尼系数,其中,所述阻尼系数用于确定所述末端工具的阻力,所述阻力用于阻碍所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动;
8.基于所述阻尼系数、所述末端工具在上一周期的实际位置以及所述末端工具在当前周期的规划位置,确定所述末端工具在当前周期的实际位置;
9.按照所述末端工具在当前周期的实际位置,在所述当前周期控制所述末端工具在所述预设运动区边界内运动。
10.第二方面,本公开提供了一种末端工具的位置控制装置,该装置包括:
11.预测模块,用于在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,所述预设过渡区是由所述末端工具的过渡区边界至所述预设运动区边界围成的区域;
12.第一确定模块,用于若所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动,确定所述末端工具在当前周期的阻尼系数,其中,所述阻尼系数用于确
定所述末端工具的阻力,所述阻力用于阻碍所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动;
13.第二确定模块,用于基于所述阻尼系数、所述末端工具在上一周期的实际位置以及所述末端工具在当前周期的规划位置,确定所述末端工具在当前周期的实际位置;
14.控制模块,用于按照所述末端工具在当前周期的实际位置,在所述当前周期控制所述末端工具在所述预设运动区边界内运动。
15.第三方面,本公开实施例还提供了一种电子设备,该设备包括:
16.一个或多个处理器;
17.存储装置,用于存储一个或多个程序,
18.当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现第一方面所提供的方法。
19.第四方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面所提供的方法。
20.本公开实施例提供的技术方案与现有技术相比具有如下优点:
21.本公开实施例的一种末端工具的位置控制方法、装置、设备及存储介质,在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,预设过渡区是由末端工具的过渡区边界至预设运动区边界围成的区域;若末端工具在预设过渡区内沿着指向预设运动区边界的方向运动,确定末端工具在当前周期的阻尼系数,其中,阻尼系数用于确定末端工具的阻力,阻力用于阻碍末端工具在预设过渡区内沿着指向预设运动区边界的方向运动;基于阻尼系数、末端工具在上一周期的实际位置以及末端工具在当前周期的规划位置,确定末端工具在当前周期的实际位置;按照末端工具在当前周期的实际位置,在当前周期控制末端工具在预设运动区边界内运动。由此,当末端工具在预设过渡区沿着指向预设运动区边界的方向运动时,确定阻尼系数和阻力,并基于阻力阻碍末端工具继续向预设运动区边界运动,保证末端工具始终在预设运动区边界内运动,这样,当末端工具在预设运动区边界附近运动时不会出现频繁断动力电的问题,而是会表现为末端工具无法继续运动,或者沿着远离预设运动区边界的方向运动,从而提高了手术操作的流畅行和效率。
附图说明
22.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
23.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
24.图1为本公开实施例提供的一种末端工具的位置控制方法的流程示意图;
25.图2为本公开实施例提供的一种全膝手术中切削区域边界的示意图;
26.图3为本公开实施例提供的一种末端工具的运动状态示意图;
27.图4为本公开实施例提供的另一种末端工具的位置控制方法的流程示意图;
28.图5为本公开实施例提供的另一种末端工具的运动状态示意图
29.图6为本公开实施例提供的一种末端工具的位置控制装置的结构示意图;
30.图7为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
31.为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
32.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
33.为了避免末端工具向运动区边界运动时,出现频繁断动力电的问题,下面结合图1至图5对本公开实施例提供的末端工具的位置控制方法进行说明。在本公开实施例中,该末端工具的位置控制方法可以由电子设备执行。其中,电子设备可以包括平板电脑、台式计算机、笔记本电脑等具有通信功能的设备,也可以包括虚拟机或者模拟器模拟的设备。
34.图1示出了本公开实施例提供的一种末端工具的位置控制方法的流程示意图。
35.如图1所示,该末端工具的位置控制方法可以包括如下步骤。
36.s110、在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,预设过渡区是由末端工具的过渡区边界至预设运动区边界围成的区域。
37.在本实施例中,当使用目标机器人进行手术时,目标机器人的控制器需要控制末端工具始终在预设运动区边界内运动,为了避免目标机器人在运动过程中发生速度突变,在预设运动区边界以内的一定区域设置预设过渡区,以保证末端工具在接近预设运动区边界时保持平稳运动。进一步的,在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,以采用合适的方式对末端工具进行运动控制。
38.具体的,目标机器人的控制器可以预先定义至少一个目标点,并在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,获取每个目标点在当前周期的规划距离,选择最小的规划距离作为末端工具在当前周期的规划距离,同时,获取每个目标点在上一周期的实际距离,选择最小的实际距离作为末端工具在上一周期的实际距离,同时,获取预设过渡区的宽度,并基于末端工具在当前周期的规划距离、末端工具在上一周期的实际距离以及预设过渡区的宽度,预测末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动。
39.其中,目标机器人是指手术机器人,末端工具可以是摆据或磨头。例如,在关节置换手术(如全膝手术)中,获取预先规划的切削区域边界作为预设运动区边界,并控制末端工具始终在切削区域边界内运动,实现对胫骨进行精准切削。
40.其中,目标点是指末端工具在运动过程中的定位参考点。具体的,目标点可以包括控制点和监视点,控制点是末端工具的坐标系原点,监视点是不允许超过运动区边界的点,监视点可以是末端工具的顶点,数量可以是多个,控制点只能有一个。具体的,控制点在当前周期的规划位置具体为末端工具在当前周期的规划位置。
41.其中,过渡区边界是指过渡区的内边界,预设运动区边界是指过渡区的外边界并且是允许末端工具运动的临界曲线。
42.为了便于理解运动区边界,图2示出了全膝手术中切削区域边界的示意图。如图2所示,在利用手术机器人进行全膝手术时,需要控制末端工具210始终在切削区域边界220内运动,以实现精准切削。
43.为了便于理解末端工具上的目标点,图3示出了一种末端工具的运动状态示意图。如图3所示,控制点是末端工具310最上方边长的中点,监视点包括末端工具310最上方边长的两个顶点。
44.s120、若末端工具在预设过渡区内沿着指向预设运动区边界的方向运动,确定末端工具在当前周期的阻尼系数,其中,阻尼系数用于确定末端工具的阻力,阻力用于阻碍末端工具在预设过渡区内沿着指向预设运动区边界的方向运动。
45.在本实施例中,可选的,确定末端工具在当前周期的阻尼系数,包括:获取预设过渡区的宽度以及末端工具在当前周期的规划距离;基于规划距离和预设过渡区的宽度,计算阻尼系数。
46.其中,规划距离是在对末端工具进行规划运动时,末端工具上至少一个目标点与预设运动区边界的距离的最小值,并将规划距离记为l。
47.其中,预设过渡区的宽度是指过渡区边界至预设运动区边界之间的距离,并将预设过渡区的宽度记为d。
48.具体的,将规划距离与预设过渡区的宽度作比,得到末端工具在当前周期的阻尼系数,并将阻尼系数记为c。则,阻尼系数c=l/d。
49.进一步的,基于阻尼系数和末端工具的运动速度,确定末端工具的阻力,该阻力作为阻碍末端工具在预设过渡区内继续沿着指向预设运动区边界的方向运动的反向作用力,使得在阻力的作用下阻碍末端工具超出预设运动区边界运动,直至到预设运动区边界时,末端工具的阻力最大。
50.s130、基于阻尼系数、末端工具在上一周期的实际位置以及末端工具在当前周期的规划位置,确定末端工具在当前周期的实际位置。
51.在本实施例中,目标机器人的控制器基于末端工具在上一周期的实际位置以及末端工具在当前周期的规划位置,确定末端工具在当前周期规划的第一位移矢量,将位移矢量与阻尼系数相乘,确定末端工具在当前周期实际对应的第二位移矢量,第二位移矢量具体是由末端工具在当前周期的实际位置与末端工具在当前周期的规划位置构成的向量,再根据第二位移矢量和末端工具在当前周期的规划位置,确定末端工具在当前周期的实际位置。
52.继续参见图3,末端工具在上一周期的实际位置是指末端工具上的控制点在上一周期实际对应的位置,将该实际位置记为p1。末端工具在当前周期的规划位置是指末端工具上的控制点在当前周期规划的位置,将该规划位置记为p2。则,第一位移矢量记为p1p2,第二位移矢量p1p2’=p1p2*c,则末端工具在当前周期的实际位置记为p2’。
53.s140、按照末端工具在当前周期的实际位置,在当前周期控制末端工具在预设运动区边界内运动。
54.在本实施例中,目标机器人的控制器确定末端工具在当前周期的实际位置,可以
基于末端工具在当前周期的实际位置,在当前周期控制末端工具在预设运动区边界内运动,使得末端工具在实际运动过程中,保证末端工具始终在预设运动区边界内运动。
55.本公开实施例的一种末端工具的位置控制方法,在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,预设过渡区是由末端工具的过渡区边界至预设运动区边界围成的区域;若末端工具在预设过渡区内沿着指向预设运动区边界的方向运动,确定末端工具在当前周期的阻尼系数,其中,阻尼系数用于确定末端工具的阻力,阻力用于阻碍末端工具在预设过渡区内沿着指向预设运动区边界的方向运动;基于阻尼系数、末端工具在上一周期的实际位置以及末端工具在当前周期的规划位置,确定末端工具在当前周期的实际位置;按照末端工具在当前周期的实际位置,在当前周期控制末端工具在预设运动区边界内运动。由此,当末端工具在预设过渡区沿着指向预设运动区边界的方向运动时,确定阻尼系数和阻力,并基于阻力阻碍末端工具继续向预设运动区边界运动,保证末端工具始终在预设运动区边界内运动,这样,当末端工具在预设运动区边界附近运动时不会出现频繁断动力电的问题,而是会表现为末端工具无法继续运动,或者沿着远离预设运动区边界的方向运动,从而提高了手术操作的流畅行和效率。
56.在其他情况下,该方法还包括:
57.若末端工具未进入预设过渡区运动,或者,末端工具在预设过渡区内沿着远离预设运动区边界的方向运动,则将末端工具在当前周期的规划位置作为末端工具在当前周期的实际位置。
58.可以理解的是,若末端工具未进入预设过渡区运动,或者,末端工具在预设过渡区内沿着远离预设运动区边界的方向运动,则不会对末端工具产生阻力,则直接将末端工具在当前周期的规划位置作为末端工具在当前周期的实际位置,并控制末端工具在预设过渡区外正常运动,或者,控制末端工具在预设过渡区内沿着远离预设运动区边界的方向运动。
59.在本公开另一种实施方式中,先预测末端工具是否在预设运动区边界内运动,在预测出末端工具在预设运动区边界内运动时,采用不同的方式确定末端工具在当前周期的实际位置,同时,在预测出末端工具在预设运动区边界外运动时,也可以采用不同的方式确定末端工具在当前周期的实际位置。
60.图4示出了本公开实施例提供的另一种末端工具的位置控制方法的流程示意图。
61.如图4所示,该末端工具的位置控制方法可以包括如下步骤。
62.s410、在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,基于末端工具在当前周期的规划距离,预测末端工具是否在预设运动区边界内运动。
63.可以理解的是,当目标点在预设运动区边界的内部时,规划距离l为非负值,相反的,当目标点在预设运动区边界的外部时,规划距离l为负值。因此,判断规划距离是否大于0,若规划距离大于或等于0,则确定末端工具在预设运动区边界内运动,并执行s420,若规划距离小于0,则确定末端工具在预设运动区边界外运动,并执行s470。
64.s420、基于末端工具在上一周期的实际距离、预设过渡区的宽度以及规划距离,预测末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动。
65.具体的,若预测出末端工具在预设过渡区内沿着指向预设运动区边界的方向运动,则执行s430,若末端工具未进入预设过渡区运动,或者,末端工具在预设过渡区内沿着
远离预设运动区边界的方向运动,则执行s460。
66.在本公开实施例中,可选的,s420具体包括:若规划距离大于或等于预设过渡区的宽度,则预测出末端工具未进入预设过渡区运动;若规划距离大于或等于实际距离,则预测出末端工具在预设过渡区内沿着远离预设运动区边界的方向运动;若规划距离小于实际距离,并且,规划距离小于过渡区的宽度,则预测出末端工具在预设过渡区内沿着指向预设运动区边界的方向运动。
67.其中,实际距离是在上一周期,末端工具上至少一个目标点与预设运动区边界的距离的最小值,并将实际距离记为l0。
68.可以理解的是,若规划距离l》=预设过渡区的宽度d,则确定末端工具未进入预设过渡区运动;若规划距离l》=实际距离l0,则确定末端工具在预设过渡区内沿着远离预设运动区边界的方向运动;若规划距离l《预设过渡区的宽度d,并且,规划距离l《实际距离l0,则末端工具在预设过渡区内沿着指向预设运动区边界的方向运动。
69.s430、确定末端工具在当前周期的阻尼系数,其中,阻尼系数用于确定末端工具的阻力,阻力用于阻碍末端工具在预设过渡区内沿着指向预设运动区边界的方向运动。
70.s440、基于阻尼系数、末端工具在上一周期的实际位置以及末端工具在当前周期的规划位置,确定末端工具在当前周期的实际位置。
71.s450、按照末端工具在当前周期的实际位置,在当前周期控制末端工具在预设运动区边界内运动。
72.其中,s430~s450与s120~s140相似,在此不做赘述。
73.s460、将末端工具在当前周期的规划位置作为末端工具在当前周期的实际位置。
74.由此,在末端工具在预设运动区边界内运动时,能够采用不同的方式确定末端工具在当前周期的实际位置,以实现在不同场景下均能准确的确定末端工具在当前周期的实际位置。
75.s470、对末端工具上的目标点在预设的回退次数内进行回退处理。
76.可以理解的是,若规划距离小于0,则确定末端工具在预设运动区边界外运动,也就是说,末端工具上存在目标点在预设运动区边界外,说明当前周期的规划距离不合适,需要将末端工具上的目标点回退到预设运动区边界内,以控制末端工具不超过预设运动区边界内运动。
77.在本实施例中,可选的,s470具体包括:从第一个回退次数开始,在当前回退次数内,沿着靠近预设运动边界的方向并按照当前回退次数对应的当前回退距离,将当前回退距离对应的目标点回退到边界上,其中,当前回退距离是规划距离;重复执行上述过程,直至对目标点进行了预设的回退次数的回退处理之后,停止对目标点继续进行预设的回退次数的回退处理。
78.具体的,s470的循环步骤具体可以包括:
79.s1、在当前周期,将末端工具对应的规划距离,作为当前回退距离;
80.s2、沿着靠近预设运动边界的方向并按照当前回退次数对应的当前回退距离,将当前回退距离对应的目标点回退到边界上,并确定下一回退次数对应的下一回退距离。其中,下一回退距离是在下一回退次数,末端工具上至少一个目标点与预设运动区边界的距离的最小值。
81.s3、沿着靠近预设运动边界的方向并按照下一回退次数对应的下一回退距离,将下一回退距离对应的目标点回退到边界上;
82.s4、判断是否对目标点进行了预设的回退次数的回退处理。若是,则返回执行s2~s3,否则,执行s5。
83.s5、停止对目标点继续进行预设的回退次数的回退处理。
84.s480、判断目标点是否在预设的回退次数内回退到预设运动区边界上。
85.具体的,若目标点在预设的回退次数内回退到预设运动区边界上,则执行s490,否则,执行s491。
86.s490、获取目标点在最后一个回退次数对应的回退位置,并将回退位置作为末端工具在当前周期的实际位置,以及按照末端工具在当前周期的实际位置,控制末端工具在预设运动区边界内运动。
87.在本实施例中,目标点在最后一个回退次数对应的回退位置可以记为p3,并将回退位置p3作为末端工具在当前周期的实际位置,以实现通过回退操作迭代确定末端工具在当前周期的实际位置,从而将规划的预设运动区边界外的末端工具移动至预设运动区边界内,进而按照末端工具在当前周期的实际位置,控制末端工具始终在预设运动区边界内运动。
88.s491、将目标点在上一周期的实际位置作为末端工具在当前周期的实际位置,并按照末端工具在当前周期的实际位置,控制末端工具在预设运动区边界内运动。
89.可以理解的是,若在预设的回退次数内没有将末端工具回退到预设运动区边界上,则说明末端工具在当前周期的规划位置位于预设运动区边界外,如果控制末端工具在当前周期按照规划位置进行运动,末端工具会在预设运动区边界外运动,因此,为了避免末端工具在预设运动区边界外运动,直接将目标点在上一周期的实际位置作为末端工具在当前周期的实际位置,并按照末端工具在当前周期的实际位置,控制末端工具始终在预设运动区边界内运动。
90.为了便于理解回退过程,图5示出了另一种末端工具的运动状态示意图。如图5所示,根据末端工具在当前周期的规划距离p1,预估末端工具按照规划距离在预设运动区边界外运动,即末端工具在当前周期的规划位置位于预设运动区边界外,需要对末端工具上的目标点在预设的回退次数内进行回退处理,确定末端工具在当前周期的实际位置p2’,进而按照末端工具在当前周期的实际位置,控制末端工具在预设运动区边界内运动。在其他情况下,若目标点在预设的回退次数内未回退到预设运动边界上,则将目标点在上一周期的实际位置p1作为末端工具在当前周期的实际位置,并按照末端工具在当前周期的实际位置,控制末端工具在预设运动区边界内运动。
91.由此,当末端工具在预设运动区边界外运动,则对末端工具上的目标点在预设的回退次数内进行回退处理,保证末端工具始终在预设运动区边界内运动,最终提高了手术过程的安全性和精准性。
92.本公开实施例还提供了一种用于实现上述的末端工具的位置控制方法的末端工具的位置控制装置,下面结合图6进行说明。在本公开实施例中,该末端工具的位置控制装置可以为电子设备。其中,电子设备可以包括平板电脑、台式计算机、笔记本电脑等具有通信功能的设备,也可以包括虚拟机或者模拟器模拟的设备。
93.图6示出了本公开实施例提供的一种末端工具的位置控制装置的结构示意图。
94.如图6所示,末端工具的位置控制装置600可以包括:
95.预测模块610,用于在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,所述预设过渡区是由所述末端工具的过渡区边界至所述预设运动区边界围成的区域;
96.第一确定模块620,用于若所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动,确定所述末端工具在当前周期的阻尼系数,其中,所述阻尼系数用于确定所述末端工具的阻力,所述阻力用于阻碍所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动;
97.第二确定模块630,用于基于所述阻尼系数、所述末端工具在上一周期的实际位置以及所述末端工具在当前周期的规划位置,确定所述末端工具在当前周期的实际位置;
98.控制模块640,用于按照所述末端工具在当前周期的实际位置,在所述当前周期控制所述末端工具在所述预设运动区边界内运动。
99.本公开实施例的一种末端工具的位置控制装置,在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,预设过渡区是由末端工具的过渡区边界至预设运动区边界围成的区域;若末端工具在预设过渡区内沿着指向预设运动区边界的方向运动,确定末端工具在当前周期的阻尼系数,其中,阻尼系数用于确定末端工具的阻力,阻力用于阻碍末端工具在预设过渡区内沿着指向预设运动区边界的方向运动;基于阻尼系数、末端工具在上一周期的实际位置以及末端工具在当前周期的规划位置,确定末端工具在当前周期的实际位置;按照末端工具在当前周期的实际位置,在当前周期控制末端工具在预设运动区边界内运动。由此,当末端工具在预设过渡区沿着指向预设运动区边界的方向运动时,确定阻尼系数和阻力,并基于阻力阻碍末端工具继续向预设运动区边界运动,保证末端工具始终在预设运动区边界内运动,这样,当末端工具在预设运动区边界附近运动时不会出现频繁断动力电的问题,而是会表现为末端工具无法继续运动,或者沿着远离预设运动区边界的方向运动,从而提高了手术操作的流畅行和效率。
100.在本公开一些实施例中,第一确定模块620,包括:
101.获取单元,用于获取预设过渡区的宽度以及所述末端工具在当前周期的规划距离,其中,所述规划距离是在对所述末端工具进行规划运动时,所述末端工具上至少一个目标点与所述预设运动区边界的距离的最小值;
102.计算单元,用于基于所述规划距离和所述预设过渡区的宽度,计算所述阻尼系数。
103.在本公开一些实施例中,该装置还包括:
104.第三确定模块,用于若所述末端工具未进入所述预设过渡区运动,或者,所述末端工具在所述预设过渡区内沿着远离所述预设运动区边界的方向运动,则将所述末端工具在当前周期的规划位置作为所述末端工具在当前周期的实际位置。
105.在本公开一些实施例中,预测模块610,包括:
106.第一预测单元,用于基于所述末端工具在当前周期的规划距离,预测所述末端工具是否在所述预设运动区边界内运动;
107.第二预测单元,用于若所述末端工具在所述预设运动区边界内运动,则基于所述末端工具在上一周期的实际距离、所述预设过渡区的宽度以及所述规划距离,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动。
108.在本公开一些实施例中,第二预测单元具体用于,若所述规划距离大于或等于所述预设过渡区的宽度,则预测出所述末端工具未进入所述预设过渡区运动;
109.若所述规划距离大于或等于所述实际距离,则预测出所述末端工具在所述预设过渡区内沿着远离所述预设运动区边界的方向运动;
110.若所述规划距离小于所述实际距离,并且,所述规划距离小于所述过渡区的宽度,则预测出所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动。
111.在本公开一些实施例中,预测模块610还包括:
112.回退单元,用于若所述末端工具在所述预设运动区边界外运动,则对所述末端工具上的目标点在预设的回退次数内进行回退处理;
113.判断单元,用于判断所述目标点是否在所述预设的回退次数内回退到所述预设运动区边界上;
114.第一控制单元,用于若所述目标点在所述预设的回退次数内回退到所述预设运动边界上,则获取所述目标点在最后一个回退次数对应的回退位置,并将所述回退位置作为所述末端工具在所述当前周期的实际位置,以及按照所述末端工具在所述当前周期的实际位置,控制所述末端工具在所述预设运动区边界内运动;
115.第二控制单元,用于若所述目标点在所述预设的回退次数内未回退到所述预设运动边界上,则将所述目标点在上一周期的实际位置作为所述末端工具在所述当前周期的实际位置,并按照所述末端工具在所述当前周期的实际位置,控制所述末端工具在所述预设运动区边界内运动。
116.在本公开一些实施例中,回退单元具体用于:
117.从第一个回退次数开始,在当前回退次数内,沿着靠近所述预设运动边界的方向并按照所述当前回退次数对应的当前回退距离,将所述当前回退距离对应的目标点回退到边界上,其中,所述当前回退距离是所述规划距离;
118.重复执行上述过程,直至对所述目标点进行了所述预设的回退次数的回退处理之后,停止对所述目标点继续进行所述预设的回退次数的回退处理。
119.需要说明的是,图6所示的末端工具的位置控制装置600可以执行图1至图5所示的方法实施例中的各个步骤,并且实现图1至图5所示的方法实施例中的各个过程和效果,在此不做赘述。
120.图7示出了本公开实施例提供的一种电子设备的结构示意图。该电子设备可以是上述实施例提到的目标机器人的控制器。
121.如图7所示,该电子设备可以包括处理器701以及存储有计算机程序指令的存储器702。
122.具体地,上述处理器701可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
123.存储器702可以包括用于信息或指令的大容量存储器。举例来说而非限制,存储器
702可以包括硬盘驱动器(hard disk drive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,usb)驱动器或者两个及其以上这些的组合。在合适的情况下,存储器702可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器702可在综合网关设备的内部或外部。在特定实施例中,存储器702是非易失性固态存储器。在特定实施例中,存储器702包括只读存储器(read-only memory,rom)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmable rom,prom)、可擦除prom(electrical programmable rom,eprom)、电可擦除prom(electrically erasable programmable rom,eeprom)、电可改写rom(electrically alterable rom,earom)或闪存,或者两个或及其以上这些的组合。
124.处理器701通过读取并执行存储器702中存储的计算机程序指令,以执行本公开实施例所提供的末端工具的位置控制方法的步骤。
125.在一个示例中,该电子设备还可包括收发器703和总线704。其中,如图7所示,处理器701、存储器702和收发器703通过总线704连接并完成相互间的通信。
126.总线704包括硬件、软件或两者。举例来说而非限制,总线可包括加速图形端口(accelerated graphics port,agp)或其他图形总线、增强工业标准架构(extended industry standard architecture,eisa)总线、前端总线(front side bus,fsb)、超传输(hyper transport,ht)互连、工业标准架构(industrial standard architecture,isa)总线、无限带宽互连、低引脚数(low pin count,lpc)总线、存储器总线、微信道架构(micro channel architecture,mca)总线、外围控件互连(peripheral component interconnect,pci)总线、pci-express(pci-x)总线、串行高级技术附件(serial advanced technology attachment,sata)总线、视频电子标准协会局部(video electronics standards association local bus,vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线704可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
127.以下是本公开实施例提供的计算机可读存储介质的实施例,该计算机可读存储介质与上述各实施例的末端工具的位置控制方法属于同一个发明构思,在计算机可读存储介质的实施例中未详尽描述的细节内容,可以参考上述末端工具的位置控制方法的实施例。
128.本实施例提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种末端工具的位置控制方法,该方法包括:
129.在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,所述预设过渡区是由所述末端工具的过渡区边界至所述预设运动区边界围成的区域;
130.若所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动,确定所述末端工具在当前周期的阻尼系数,其中,所述阻尼系数用于确定所述末端工具的阻力,所述阻力用于阻碍所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动;
131.基于所述阻尼系数、所述末端工具在上一周期的实际位置以及所述末端工具在当前周期的规划位置,确定所述末端工具在当前周期的实际位置;
132.按照所述末端工具在当前周期的实际位置,在所述当前周期控制所述末端工具在
所述预设运动区边界内运动。
133.当然,本公开实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本公开任意实施例所提供的末端工具的位置控制方法中的相关操作。
134.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本公开可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机云平台(可以是个人计算机,服务器,或者网络云平台等)执行本公开各个实施例所提供的末端工具的位置控制方法。
135.注意,上述仅为本公开的较佳实施例及所运用技术原理。本领域技术人员会理解,本公开不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本公开的保护范围。因此,虽然通过以上实施例对本公开进行了较为详细的说明,但是本公开不仅仅限于以上实施例,在不脱离本公开构思的情况下,还可以包括更多其他等效实施例,而本公开的范围由所附的权利要求范围决定。

技术特征:
1.一种末端工具的运动控制方法,其特征在于,包括:在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,所述预设过渡区是由所述末端工具的过渡区边界至所述预设运动区边界围成的区域;若所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动,确定所述末端工具在当前周期的阻尼系数,其中,所述阻尼系数用于确定所述末端工具的阻力,所述阻力用于阻碍所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动;基于所述阻尼系数、所述末端工具在上一周期的实际位置以及所述末端工具在当前周期的规划位置,确定所述末端工具在当前周期的实际位置;按照所述末端工具在当前周期的实际位置,在所述当前周期控制所述末端工具在所述预设运动区边界内运动。2.根据权利要求1所述的方法,其特征在于,所述确定所述末端工具在当前周期的阻尼系数,包括:获取预设过渡区的宽度以及所述末端工具在当前周期的规划距离,其中,所述规划距离是在对所述末端工具进行规划运动时,所述末端工具上至少一个目标点与所述预设运动区边界的距离的最小值;基于所述规划距离和所述预设过渡区的宽度,计算所述阻尼系数。3.根据权利要求1所述的方法,其特征在于,还包括:若所述末端工具未进入所述预设过渡区运动,或者,所述末端工具在所述预设过渡区内沿着远离所述预设运动区边界的方向运动,则将所述末端工具在当前周期的规划位置作为所述末端工具在当前周期的实际位置。4.根据权利要求1~3任一项所述的方法,其特征在于,所述预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,包括:基于所述末端工具在当前周期的规划距离,预测所述末端工具是否在所述预设运动区边界内运动;若所述末端工具在所述预设运动区边界内运动,则基于所述末端工具在上一周期的实际距离、所述预设过渡区的宽度以及所述规划距离,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动。5.根据权利要求4所述的方法,其特征在于,所述基于所述末端工具在上一周期的实际距离、所述预设过渡区的宽度以及所述规划距离,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,包括:若所述规划距离大于或等于所述预设过渡区的宽度,则预测出所述末端工具未进入所述预设过渡区运动;若所述规划距离大于或等于所述实际距离,则预测出所述末端工具在所述预设过渡区内沿着远离所述预设运动区边界的方向运动;若所述规划距离小于所述实际距离,并且,所述规划距离小于所述过渡区的宽度,则预测出所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动。6.根据权利要求4所述的方法,其特征在于,还包括:
若所述末端工具在所述预设运动区边界外运动,则对所述末端工具上的目标点在预设的回退次数内进行回退处理;判断所述目标点是否在所述预设的回退次数内回退到所述预设运动区边界上;若所述目标点在所述预设的回退次数内回退到所述预设运动边界上,则获取所述目标点在最后一个回退次数对应的回退位置,并将所述回退位置作为所述末端工具在所述当前周期的实际位置,以及按照所述末端工具在所述当前周期的实际位置,控制所述末端工具在所述预设运动区边界内运动;若所述目标点在所述预设的回退次数内未回退到所述预设运动边界上,则将所述目标点在上一周期的实际位置作为所述末端工具在所述当前周期的实际位置,并按照所述末端工具在所述当前周期的实际位置,控制所述末端工具在所述预设运动区边界内运动。7.根据权利要求6所述的方法,其特征在于,所述对所述末端工具上的目标点在预设的回退次数内进行回退处理,包括:从第一个回退次数开始,在当前回退次数内,沿着靠近所述预设运动边界的方向并按照所述当前回退次数对应的当前回退距离,将所述当前回退距离对应的目标点回退到边界上,其中,所述当前回退距离是所述规划距离;重复执行上述过程,直至对所述目标点进行了所述预设的回退次数的回退处理之后,停止对所述目标点继续进行所述预设的回退次数的回退处理。8.一种末端工具的运动控制装置,其特征在于,包括:预测模块,用于在对目标机器人的末端工具按照当前周期的规划位置进行运动控制时,预测所述末端工具是否在预设过渡区内沿着指向预设运动区边界的方向运动,其中,所述预设过渡区是由所述末端工具的过渡区边界至所述预设运动区边界围成的区域;第一确定模块,用于若所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动,确定所述末端工具在当前周期的阻尼系数,其中,所述阻尼系数用于确定所述末端工具的阻力,所述阻力用于阻碍所述末端工具在所述预设过渡区内沿着指向所述预设运动区边界的方向运动;第二确定模块,用于基于所述阻尼系数、所述末端工具在上一周期的实际位置以及所述末端工具在当前周期的规划位置,确定所述末端工具在当前周期的实际位置;控制模块,用于按照所述末端工具在当前周期的实际位置,在所述当前周期控制所述末端工具在所述预设运动区边界内运动。9.一种电子设备,其特征在于,包括:处理器;存储器,用于存储可执行指令;其中,所述处理器用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实现上述权利要求1-7中任一项所述的方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述存储介质存储有计算机程序,当所述计算机程序被处理器执行时,使得处理器实现上述权利要求1-7中任一项所述的方法。

技术总结
本公开涉及一种末端工具的位置控制方法、装置、设备及存储介质。当末端工具在预设过渡区沿着指向预设运动区边界的方向运动时,确定阻尼系数和阻力,并基于阻力阻碍末端工具继续向预设运动区边界运动,保证末端工具始终在预设运动区边界内运动,这样,当末端工具在预设运动区边界附近运动时不会出现频繁断动力电的问题,而是会表现为末端工具无法继续运动,或者沿着远离预设运动区边界的方向运动,从而提高了手术操作的流畅行和效率。提高了手术操作的流畅行和效率。提高了手术操作的流畅行和效率。


技术研发人员:叶根 刘立波 李纪庆
受保护的技术使用者:北京纳通医用机器人科技有限公司
技术研发日:2023.04.18
技术公布日:2023/7/21
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐