机器人系统控制方法、装置、系统和存储介质与流程
未命名
09-03
阅读: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.在其中一个实施例中,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,包括:
25.获取支撑臂的拖拽力;
26.根据拖拽力、机械臂末端的实时位姿和预设执行区域,通过重力补偿,控制支撑臂运动。
27.在其中一个实施例中,机器人系统控制方法还包括:
28.显示预设执行区域和可达区域于一显示界面上。
29.第二方面,本技术还提供了一种机器人系统控制装置。装置包括:
30.获取模块,用于获取机械臂末端的实时位姿;
31.确定模块,用于根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;
32.控制模块,用于在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;
33.于预设执行区域处于更新后的可达区域内,控制模块,还用于控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。
34.第三方面,本技术还提供了一种机器人系统,机器人系统包括:机械臂、支撑臂、固定靶标、跟踪仪、图像扫描设备以及计算机设备;机械臂固定连接在支撑臂上;跟踪仪用于采集机械臂末端的实时位姿以及固定靶标在跟踪仪坐标系下的第一位姿;图像扫描设备用于对目标对象和固定靶标进行扫描得到包括目标对象和固定靶标的扫描图像;计算机设备,计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
35.获取机械臂末端的实时位姿;
36.根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;
37.在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;
38.控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。
39.第四方面,本技术还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
40.获取机械臂末端的实时位姿;
41.根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;
42.在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;
43.控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。
44.第五方面,本技术还提供了一种计算机程序产品。计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
45.获取机械臂末端的实时位姿;
46.根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;
47.在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;
48.控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。
49.上述机器人系统控制方法、装置、系统、存储介质和计算机程序产品,通过获取的机械臂末端的实时位姿,结合机械臂的构型,确定机械臂末端的可达区域,在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内。这种在预设执行区域不处于可达区域内的情况下,控制支撑臂运动,保证机械臂末端的可达区域内覆盖预设执行区域,提高了机器人系统中机械臂摆位的控制效率。
附图说明
50.图1为一个实施例中机器人系统控制方法的应用环境图;
51.图2为一个实施例中机器人系统控制方法的流程示意图;
52.图3为一个实施例中支撑臂的结构示意图;
53.图4为一个实施例中机械臂末端的可达区域的示意图;
54.图5为一个实施例中s206的子流程示意图;
55.图6为另一个实施例中机器人系统控制方法的流程示意图;
56.图7为一个实施例中提取轮廓线的示意图;
57.图8为一个实施例中支撑臂的结构示意图;
58.图9为一个实施例中支撑臂x轴的结构示意图;
59.图10为一个实施例中支撑臂z轴的结构示意图;
60.图11为一个实施例中支撑臂z1轴的结构示意图;
61.图12为一个实施例中机械臂的结构示意图;
62.图13为一个实施例中机器人系统控制方法的总体流程示意图;
63.图14为又一个实施例中机器人系统控制方法的流程示意图;
64.图15为一个实施例中机械臂末端从无可达区域运动至可达区域的示意图;
65.图16为一个实施例中多个坐标系的示意图;
66.图17为一个实施例中建立机械臂末端坐标系的示意图;
67.图18为一个实施例中各个坐标系转换的示意图;
68.图19为一个实施例中自动规划运动轨迹的示意图;
69.图20为一个实施例中自动规划运动轨迹的流程示意图;
70.图21为一个实施例中重力补偿的方法示意图;
71.图22为一个实施例中机器人系统控制装置的结构框图。
具体实施方式
72.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
73.本技术实施例提供的机器人系统控制方法,可以应用于如图1所示的应用环境中。机器人系统控制方法应用于机器人系统,机器人系统包括机械臂101、支撑臂102、固定靶标103、跟踪仪104、图像扫描设备105以及计算机设备106,机械臂101固定连接在支撑臂102上,跟踪仪104用于采集机械臂末端的实时位姿以及固定靶标在跟踪仪坐标系下的第一位姿;图像扫描设备105用于对目标对象和固定靶标103进行扫描得到包括固定靶标103和目标对象的扫描图像;机器人系统控制方法由计算机设备106执行。计算机设备106获取机械臂末端的实时位姿;根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂102运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;控制支撑臂102停止运动,并控制机械臂末端在预设执行区域内运动。其中,计算机设备106可以为终端或者服务器,本技术实施例提供的机器人系统控制方法可以由终端或者服务器单独执行,也可由终端和服务器协作执行。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
74.在一个实施例中,如图2所示,提供了一种机器人系统控制方法,以该方法应用于图1中的计算机设备106为例进行说明,包括以下步骤:
75.s202,获取机械臂末端的实时位姿。
76.其中,机械臂是一种可编程的机械手臂,机械臂通过关节连接,可以旋转运动或者平移运动。机器人系统包括机械臂。位姿包括位置和姿态,位姿的变化包括平移和旋转两种运动过程,其中,位置的变化就是平移过程,姿态的变化就是旋转过程。机械臂的运动带动机械臂末端的位姿不断变化,计算机设备获取机械臂末端的实时位姿。
77.s204,根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域。
78.其中,可达区域指的是机械臂末端能够到达的所有位置点组成的区域。机械臂的构型指的是机械臂在机器人系统中的结构和连接关系。在一些实施例中,机器人系统包括机械臂和支撑臂,机械臂固定连接在支撑臂上。机械臂末端的可达区域指的是机械臂末端的活动范围,随着支撑臂和机械臂的运动,机械臂的可达区域随之变化。
79.机械臂具有多个自由度,计算机设备根据机械臂末端的实时位姿,通过机器人正运动学,可以确定出机械臂基座的位姿。由于机械臂固定连接在支撑臂上,通过设计参数,可以得到机械臂基座与支撑臂的相对位姿。由机械臂基座与支撑臂的相对位姿,以及机械臂基座的位姿,可以确定出支撑臂的实时位姿。
80.支撑臂具有多个自由度,支撑臂的自由度数量本技术不做具体限定。如图3所示为一个实施例中支撑臂的结构示意图。支撑臂的x轴301方向由丝杆和导轨组成,可以水平移动;z轴302方向由丝杆和导轨组成,可以上下移动;z1轴303方向由电机直接驱动,可以绕z轴旋转运动。支撑臂在多个轴方向运动,计算机设备根据支撑臂的实时位姿,结合多个轴方向上的活动空间,确定支撑臂的运动区域。同样地,计算机设备根据机械臂末端的实时位姿,结合机械臂多个轴方向上的活动空间,确定机械臂的运动区域。机械臂自身的运动区域,加上支撑臂的运动区域,得到机械臂末端的可达区域。如图4所示为机械臂末端的可达区域的示意图。
81.s206,在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内。
82.其中,预设执行区域指的是预设的机械臂末端的活动区域,在一些实施例中,预设执行区域可以为目标对象的病灶区域,机械臂末端在病灶区域中按照规划路径运动。计算机设备确定预设执行区域是否处于可达区域。在预设执行区域不处于可达区域内的情况下,计算机设备根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动。由于预设执行区域不处于可达区域内,计算机设备将支撑臂向预设执行区域运动,随着支撑臂的运动,机械臂末端的可达区域不断更新,直至预设执行区域处于更新后的可达区域内。预设执行区域处于更新后的可达区域内,表明预设执行区域中任一位置点都是机械臂末端可以到达的,有利于机械臂末端在预设执行区域内的运动。
83.s208,控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。
84.其中,预设执行区域处于机械臂的可达区域内时,计算机设备控制支撑臂停止运动,能够保证预设执行区域始终处于机械臂的可达区域内。
85.在一些实施例中,若预设执行区域发生更新,则确定更新后的执行区域是否处于机械臂末端的可达区域内,在更新后的执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和更新后的执行区域,控制支撑臂运动,更新可达区域,直至更新后的执行区域处于更新后的可达区域内,控制支撑臂停止运动,并控制机械臂在更新后的执行区域内运动。从而在预设执行区域发生更新的情况下,能够通过控制支撑臂运动,从而保证预设执行区域始终处于机械臂末端的可达区域内,提高了机器人系统中机械臂摆位的控制效率。
86.上述机器人系统控制方法中,通过获取的机械臂末端的实时位姿,确定机械臂末端的可达区域,在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内。这种在预设执行区域不处于可达区域内的情况下,控制支撑臂运动保证机械臂末端的可达区域内覆盖预设执行区域,提高了机器人系统中机械臂摆位的效率。
87.在一个实施例中,如图5所示,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,包括:
88.s502,获取固定靶标在跟踪仪坐标系下的第一位姿、固定靶标在图像坐标系下的第二位姿以及机械臂末端在基坐标系下的实时位姿。
89.其中,机器人系统包括固定靶标、跟踪仪和图像扫描设备。跟踪仪可以为光学跟踪
仪,固定靶标具有跟踪仪能够识别的光学标识。计算机设备根据跟踪仪建立跟踪仪坐标系。跟踪仪用于采集固定靶标在跟踪仪坐标系下的第一位姿。计算机设备通过跟踪仪获取固定靶标在跟踪仪坐标系下的第一位姿。
90.图像扫描设备是能够对目标对象和固定靶标进行图像扫描的设备,例如,图像扫描设备可以为ct(computed tomography,电子计算机断层扫描)设备。图像扫描设备用于对目标对象和固定靶标进行扫描。计算机设备根据图像扫描设备建立图像坐标系,获取固定靶标在图像坐标系下的第二位姿。
91.机械臂末端在基坐标系下的实时位姿的获取步骤为:计算机设备根据机械臂末端的实时位姿,经过机械臂运动学,可以得到机械臂末端在基坐标系下的实时位姿。
92.s504,根据固定靶标在跟踪仪坐标系下的第一位姿和固定靶标在图像坐标系下的第二位姿,配准图像坐标系和跟踪仪坐标系。
93.其中,计算机设备根据固定靶标在跟踪仪坐标系下的第一位姿和固定靶标在图像坐标系下的第二位姿,配准图像坐标系和跟踪仪坐标系,得到图像坐标系和跟踪仪坐标系的配准关系。
94.s506,根据图像坐标系和跟踪仪坐标系的配准关系、机械臂末端的实时位姿、支撑臂在基坐标系下的位姿,以及机械臂末端在基坐标系下的实时位姿,得到支撑臂在图像坐标系下的位姿。
95.其中,计算机设备由机械臂末端的实时位姿、支撑臂在基坐标系下的位姿,以及机械臂末端在基坐标系下的实时位姿,得到支撑臂在跟踪仪坐标系下的位姿,再根据图像坐标系和跟踪仪坐标系的配准关系,得到支撑臂在图像坐标系下的位姿。
96.s508,根据支撑臂在图像坐标系下的位姿和预设执行区域,控制支撑臂运动,使得预设执行区域位于可达区域。
97.其中,计算机以支撑臂在图像坐标系下的位姿为起点,控制支撑臂向预设执行区域运动,使得预设执行区域位于机械臂末端的可达区域。
98.本实施例中,通过获取固定靶标在跟踪仪坐标系下的第一位姿、固定靶标在图像坐标系下的第二位姿以及机械臂末端在基坐标系下的实时位姿,从而确定支撑臂在图像坐标系下的位姿,在图像坐标系下控制支撑臂向预设执行区域运动,从而保证预设执行区域始终处于机械臂末端的可达区域内,提高了机器人系统中机械臂摆位的控制效率。
99.在其中一个实施例中,如图6所示,机器人控制方法还包括:
100.s602,获得目标对象对应的安全区域;确定可达区域是否处于安全区域内。
101.其中,安全区域是机械臂末端运动中不会发生危险的区域。预设执行区域在安全区域内。计算机设备获得目标对象对应的安全区域,并确定可达区域是否处于安全区域内。
102.s604,在可达区域不处于安全区域内的情况下,根据可达区域与安全区域的不重合区域,控制支撑臂运动,更新可达区域,直至更新后的可达区域处于安全区域内;确定预设执行区域是否处于更新后的可达区域内。
103.其中,可达区域不处于安全区域内,表明机械臂的可达区域可能有不处于安全区域的部分,或者可达区域完全不处于安全区域。计算机设备获取可达区域与安全区域的不重合区域。计算机设备根据不重合区域,控制支撑臂向安全区域内运动。随着支撑臂的运动,机械臂末端的实时位姿不断更新,机械臂末端的可达区域不断更新,直至更新后的可达
区域处于安全区域内。更新后的可达区域处于安全区域内时,计算机设备进一步确定预设执行区域是否处于更新后的可达区域内。
104.s606,在可达区域处于安全区域内的情况下,确定预设执行区域是否处于可达区域内。
105.其中,在机械臂末端的可达区域处于安全区域内的情况下,计算机设备直接确定预设执行区域是否处于可达区域内。
106.本实施例中,在控制支撑臂运动之前,获得目标对象对应的安全区域,并确定可达区域是否处于安全区域,对于可达区域不处于安全区域的情况,根据可达区域与安全区域的不重合区域,控制支撑臂运动,从而保证更新后的可达区域处于安全区域内,进而确定预设执行区域是否处于更新后的可达区域内,有利于控制支撑臂运动,保证机械臂末端的可达区域处于安全区域,避免机械臂末端进入到不安全的区域内运动。在可达区域处于安全区域内的情况下,直接确定预设执行区域是否处于可达区域内,有利于提高机器人系统中机械臂摆位的控制效率。
107.在其中一个实施例中,安全区域的确定步骤,包括:获取目标对象的三维模型,三维模型是根据目标对象的扫描图像进行三维重建得到;在三维模型中提取目标对象的轮廓线,根据轮廓线确定安全区域。
108.其中,计算机设备获取图像扫描设备对目标对象扫描得到的扫描图像。对扫描图像进行三维重建,得到目标对象的三维模型。在三维模型中提取目标对象的轮廓线。如图7所示为提取轮廓线的示意图。根据轮廓线确定安全区域。在一些实施例中,计算机设备将轮廓线以上的区域确定为安全区域。在另一些实施例中,计算机设备沿着三维模型中轮廓线向外扩展预设距离,形成安全轮廓线。将安全轮廓线以上的区域确定为安全区域。
109.本实施例中,通过在目标对象的三维模型中提取目标对象的轮廓线,根据轮廓线确定安全区域,确定出目标对象的安全区域,在安全区域内控制机械臂末端运动,能够避免机械臂末端运动至不安全的区域。
110.在其中一个实施例中,方法还包括:在预设执行区域处于可达区域内的情况下,控制机械臂末端在预设执行区域内运动。
111.其中,预设执行区域处于可达区域内,表明机械臂末端能够到达预设执行区域,计算机设备控制机械臂末端在预设执行区域内运动。
112.本实施例中,通过在预设执行区域处于可达区域内的情况下,控制机械臂末端在预设执行区域内运动。
113.在其中一个实施例中,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,包括:获取支撑臂的拖拽力;根据拖拽力、机械臂末端的实时位姿和预设执行区域,通过重力补偿,控制支撑臂运动。
114.其中,支撑臂的拖拽力是在操作人员对支撑臂进行拖拽时产生的。支撑臂还可以通过拖拽控制。计算机设备获取支撑臂的拖拽力。拖拽控制支撑臂运动时,支撑臂受重力作用将产生控制偏差,计算机设备根据拖拽力、机械臂末端的实时位姿和预设执行区域,通过重力补偿,控制支撑臂运动,从而消除拖拽过程中的重力影响,提高支撑臂控制的准确度。
115.本实施例中,通过支撑臂的拖拽力、机械臂末端的实时位姿和预设执行区域,通过重力补偿,控制支撑臂运动,能够消除拖拽过程中的重力影响,提高支撑臂控制的准确度。
116.为详细说明本方案中机器人系统控制方法及效果,下面以一个最详细实施例进行说明:
117.机器人系统控制方法应用于机器人控制系统,系统包括机械臂、支撑臂、固定靶标、跟踪仪、图像扫描设备以及计算机设备;机械臂固定连接在支撑臂上;跟踪仪用于采集机械臂末端的实时位姿以及固定靶标在跟踪仪坐标系下的第一位姿;图像扫描设备用于对目标对象和固定靶标进行扫描得到目标对象和固定靶标的扫描图像;计算机设备,计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现机器人系统控制方法。如图8所示为一个实施例中支撑臂的结构示意图。支撑臂包括x轴、z轴和z1轴。如图9所示为支撑臂x轴的结构示意图。支撑臂的x轴方向主要由丝杆和导轨组成,可以水平移动。如图10所示为支撑臂z轴的结构示意图。z轴方向由丝杆和导轨组成,可以上下移动。如图11所示为支撑臂z1轴的结构示意图。z1轴方向由电机直接驱动,可以绕z轴旋转运动。支撑臂在多个轴方向运动,计算机设备根据支撑臂的实时位姿,结合多个轴方向上的活动空间,确定支撑臂的运动区域。同样地,计算机设备根据机械臂末端的实时位姿,结合机械臂多个轴方向上的活动空间,确定机械臂的运动区域。机械臂自身的运动区域,加上支撑臂的运动区域,得到机械臂末端的可达区域。如图12所示为机械臂的结构示意图。机械臂包括三个旋转轴和一个平移轴。
118.如图13所示为机器人系统控制方法的总体流程示意图。计算机设备获取机械臂末端的实时位姿,根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域。获得目标对象对应的安全区域,预设执行区域在安全区域内,确定可达区域是否处于安全区域内。其中,安全区域的确定步骤,包括:计算机设备获取目标对象的三维模型,三维模型是根据目标对象的扫描图像进行三维重建得到,在三维模型中提取目标对象的轮廓线,根据轮廓线确定安全区域。在可达区域不处于安全区域内的情况下,根据可达区域与安全区域的不重合区域,控制支撑臂运动,更新可达区域,直至更新后的可达区域处于安全区域内;确定预设执行区域是否处于更新后的可达区域内;在可达区域处于安全区域内的情况下,确定预设执行区域是否处于可达区域内。如图14所示为机器人系统控制方法的流程示意图。计算机设备对目标图像进行图像分割,将目标对象中病灶区域区分出来,并重构三维模型,为后续方法提供图像和规划轨迹信息。坐标系配准将病灶、固定靶标、机械臂、支撑臂的坐标融合到图像坐标系下,确定相对位置关系。路径规划在重建的三维模型上选取目标对象表面以及病灶区域上的入针点,病灶区域往往在目标对象内部。根据选取的两个入针点在坐标系下自动计算出路径。在三维模型中模拟出路径上的针道,可观察路径上是否有重要血管、器官、气管等,以避免入针到重要区域。
119.如图15所示为机械臂末端从无可达区域运动至可达区域的示意图。在预设执行区域不处于可达区域内的情况下,计算机设备根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内。于预设执行区域处于更新后的可达区域内后,控制支撑臂停止运动,并根据机械臂末端在图像坐标系下的实时位姿和预设规划轨迹,控制机械臂末端在预设执行区域内运动。计算机设备根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动。
120.如图16所示为多个坐标系的示意图。主要涉及的坐标系包括图像坐标系、固定靶标坐标系、基坐标系、支撑臂坐标系、跟踪仪坐标系以及机械臂末端坐标系。如图17所示为
建立机械臂末端坐标系的示意图。机械臂末端采用反光球做导航标识,采用三个反光球构建机械臂末端坐标系。计算机设备获取固定靶标在跟踪仪坐标系下的第一位姿、固定靶标在图像坐标系下的第二位姿以及机械臂末端在基坐标系下的实时位姿。根据固定靶标在跟踪仪坐标系下的第一位姿和固定靶标在图像坐标系下的第二位姿,配准图像坐标系和跟踪仪坐标系,根据图像坐标系和跟踪仪坐标系的配准关系、机械臂末端的实时位姿、支撑臂在基坐标系下的位姿,以及机械臂末端在基坐标系下的实时位姿,得到支撑臂在图像坐标系下的位姿。如图18所示为各个坐标系转换的示意图。图像扫描设备扫描得到的图像经过图像分割,得到分割后的图像,在分割后的图像中获取病灶与固定靶标之间的位置关系。通过跟踪仪测量得到固定靶标在跟踪仪坐标系下的位姿。机械臂末端有反光球,通过跟踪仪测量机械臂末端在跟踪仪坐标系下的位姿,进而通过正运动学计算,得到机械臂基座在跟踪仪坐标系下的位置。机械臂基座与支撑臂的相对位置通过设计参数确定,整个机器人系统在图像坐标系下的相对位置即可确定。其中,支撑臂在图像坐标系下的位姿的确定公式为:
[0121][0122]
表示支撑臂在图像坐标系下的位姿,表示固定靶标在图像坐标系下的第二位姿,表示固定靶标在跟踪仪坐标系下的第一位姿,表示机械臂末端的实时位姿,表示机械臂末端在基坐标系下的实时位姿,表示支撑臂在基坐标系下的位姿。
[0123]
根据支撑臂在图像坐标系下的位姿和预设执行区域,控制支撑臂运动,使得预设执行区域位于可达区域。
[0124]
在预设执行区域处于可达区域内的情况下,计算机设备根据预设规划轨迹,控制机械臂末端在预设执行区域内运动。如图19为自动规划运动轨迹的示意图。其中,
×
标识障碍物,
○
表示起始点,
★
表示终点,√表示closed列表,
□
表示open列表。预设执行区域被划分为二维数组,数组中每个元素对应一个小方格。机械臂末端在预设执行区域内由起始点运动至终点,路径规划过程中待检测的格子存放于open列表中,而已检测过的格子存放于close列表中。如图20所示为自动规划运动轨迹的流程示意图。开始节点放入open列表中,寻找open列表中f值最小节点作为当前选中节点,并将其放入close列表,根据父节点方向生成路径。其中,f=g+h确定往哪个格子移动,g表示从初始位置沿着已生成的路径到待检测的格子的开销,h表示待检测格子到目标点的估计移动开销。
[0125]
在一些实施例中,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,还可以通过拖拽控制的方式。如图21所示为重力补偿的方法示意图。其中,kp表示位置反馈误差比例系数,kd表示速度反馈误差比例系数。计算机设备获取支撑臂的拖拽力,根据拖拽力、机械臂末端的实时位姿和预设执行区域,通过重力补偿,控制支撑臂运动。在拖拽控制支撑臂的过程中,采用重力补偿,有利于消除重力的影响,提高支撑臂的控制精度。
[0126]
上述机器人系统控制方法,通过获取的机械臂末端的实时位姿,结合机械臂的构型,确定机械臂末端的可达区域,在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内。这种在预设执行区域不处于可达区域内的情况下,控制支撑臂运动,
保证机械臂末端的可达区域内覆盖预设执行区域,提高了机器人系统中机械臂摆位的控制效率。
[0127]
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0128]
基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的机器人系统控制方法的机器人系统控制装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个机器人系统控制装置实施例中的具体限定可以参见上文中对于机器人系统控制方法的限定,在此不再赘述。
[0129]
在一个实施例中,如图22所示,提供了一种机器人系统控制装置100,装置包括:获取模块120、确定模块140、第一控制模块160和第二控制模块180,其中:
[0130]
获取模块120,用于获取机械臂末端的实时位姿;
[0131]
确定模块140,用于根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;
[0132]
第一控制模块160,用于在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;
[0133]
第二控制模块180,用于控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。
[0134]
上述机器人系统控制装置,通过获取的机械臂末端的实时位姿,结合机械臂的构型,确定机械臂末端的可达区域,在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内。控制支撑臂运动,保证机械臂末端的可达区域内覆盖预设执行区域,提高了机器人系统中机械臂摆位的控制效率。
[0135]
上述机器人系统控制装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0136]
在一个实施例中,提供了一种机器人系统控制系统,系统包括:机械臂、支撑臂、固定靶标、跟踪仪、图像扫描设备以及计算机设备;机械臂固定连接在支撑臂上;跟踪仪用于采集机械臂末端的实时位姿以及固定靶标在跟踪仪坐标系下的第一位姿;图像扫描设备用于对目标对象和固定靶标进行扫描得到目标对象和固定靶标的扫描图像;计算机设备,该计算机设备可以是终端。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。
[0137]
本领域技术人员可以理解,上述计算机设备的组成结构仅仅是与本技术方案相关
的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0138]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取机械臂末端的实时位姿;根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。
[0139]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。
[0140]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0141]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
技术特征:
1.一种机器人系统控制方法,其特征在于,所述方法包括:获取机械臂末端的实时位姿;根据所述机械臂末端的实时位姿和所述机械臂的构型,确定所述机械臂末端的可达区域;在预设执行区域不处于所述可达区域内的情况下,根据所述机械臂末端的实时位姿和所述预设执行区域,控制支撑臂运动,更新所述可达区域,直至所述预设执行区域处于更新后的可达区域内;控制所述支撑臂停止运动,并控制所述机械臂末端在所述预设执行区域内运动。2.根据权利要求1所述的方法,其特征在于,所述根据所述机械臂末端的实时位姿和所述预设执行区域,控制支撑臂运动,包括:获取固定靶标在跟踪仪坐标系下的第一位姿、固定靶标在图像坐标系下的第二位姿以及所述机械臂末端在基坐标系下的实时位姿;根据所述固定靶标在跟踪仪坐标系下的第一位姿和所述固定靶标在图像坐标系下的第二位姿,配准图像坐标系和跟踪仪坐标系;根据图像坐标系和跟踪仪坐标系的配准关系、所述机械臂末端的实时位姿、支撑臂在基坐标系下的位姿,以及所述机械臂末端在基坐标系下的实时位姿,得到支撑臂在图像坐标系下的位姿;根据所述支撑臂在图像坐标系下的位姿和所述预设执行区域,控制所述支撑臂运动,使得所述预设执行区域位于所述可达区域。3.根据权利要求2所述的方法,其特征在于,所述控制所述机械臂末端在所述预设执行区域内运动,包括:根据所述机械臂末端在图像坐标系下的实时位姿和预设规划轨迹,控制所述机械臂末端在所述预设执行区域内运动。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:获得目标对象对应的安全区域;确定所述可达区域是否处于所述安全区域内;在所述可达区域不处于所述安全区域内的情况下,根据所述可达区域与所述安全区域的不重合区域,控制所述支撑臂运动,更新所述可达区域,直至更新后的可达区域处于所述安全区域内;确定预设执行区域是否处于所述更新后的可达区域内;在所述可达区域处于所述安全区域内的情况下,确定预设执行区域是否处于所述可达区域内。5.根据权利要求4所述的方法,其特征在于,所述安全区域的确定步骤,包括:获取目标对象的三维模型,所述三维模型是根据所述目标对象的扫描图像进行三维重建得到;在所述三维模型中提取所述目标对象的轮廓线,根据所述轮廓线确定安全区域。6.根据权利要求1所述的方法,其特征在于,所述根据所述机械臂末端的实时位姿和所述预设执行区域,控制支撑臂运动,包括:获取支撑臂的拖拽力;根据所述拖拽力、所述机械臂末端的实时位姿和所述预设执行区域,通过重力补偿,控
制所述支撑臂运动。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:显示所述预设执行区域和所述可达区域于一显示界面上。8.一种机器人系统控制装置,其特征在于,所述装置包括:获取模块,用于获取机械臂末端的实时位姿;确定模块,用于根据所述机械臂末端的实时位姿和所述机械臂的构型,确定所述机械臂末端的可达区域;控制模块,用于在预设执行区域不处于所述可达区域内的情况下,根据所述机械臂末端的实时位姿和所述预设执行区域,控制支撑臂运动,更新所述可达区域,直至所述预设执行区域处于更新后的可达区域内;于所述预设执行区域处于更新后的可达区域内,所述控制模块还用于控制所述支撑臂停止运动,并控制所述机械臂末端在所述预设执行区域内运动。9.一种机器人系统,其特征在于,所述机器人系统包括:机械臂、支撑臂、固定靶标、跟踪仪、图像扫描设备以及计算机设备;所述机械臂固定连接在所述支撑臂上;所述跟踪仪用于采集所述机械臂末端的实时位姿以及所述固定靶标在跟踪仪坐标系下的第一固定位姿;所述图像扫描设备用于对目标对象和所述固定靶标进行扫描得到包括所述目标对象和所述固定靶标的扫描图像;所述计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
技术总结
本申请涉及一种机器人系统控制方法、装置、系统、存储介质和计算机程序产品。所述方法包括:获取机械臂末端的实时位姿;根据机械臂末端的实时位姿和机械臂的构型,确定机械臂末端的可达区域;在预设执行区域不处于可达区域内的情况下,根据机械臂末端的实时位姿和预设执行区域,控制支撑臂运动,更新可达区域,直至预设执行区域处于更新后的可达区域内;控制支撑臂停止运动,并控制机械臂末端在预设执行区域内运动。采用本方法能够提高机器人系统中机械臂摆位的控制效率。械臂摆位的控制效率。械臂摆位的控制效率。
技术研发人员:请求不公布姓名
受保护的技术使用者:上海微创医疗机器人(集团)股份有限公司
技术研发日:2023.06.12
技术公布日:2023/8/31
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/