CN113558771B - 机器人平面限位控制方法、装置和手术机器人 - Google Patents
机器人平面限位控制方法、装置和手术机器人 Download PDFInfo
- Publication number
- CN113558771B CN113558771B CN202110864692.4A CN202110864692A CN113558771B CN 113558771 B CN113558771 B CN 113558771B CN 202110864692 A CN202110864692 A CN 202110864692A CN 113558771 B CN113558771 B CN 113558771B
- Authority
- CN
- China
- Prior art keywords
- robot
- acting
- coordinate system
- tail end
- force
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/30—Surgical robots
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/70—Manipulators specially adapted for use in surgery
- A61B34/77—Manipulators with motion or force scaling
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/101—Computer-aided simulation of surgical operations
- A61B2034/102—Modelling of surgical devices, implants or prosthesis
- A61B2034/104—Modelling the effect of the tool, e.g. the effect of an implanted prosthesis or for predicting the effect of ablation or burring
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/108—Computer aided selection or customisation of medical implants or cutting guides
Abstract
本申请实施例提供一种机器人平面限位控制方法、装置和手术机器人,该方法包括:通过六轴力传感器采集作用于机器人末端的在传感器坐标系下的第一作用力和第一作用力矩;基于第一作用力和机器人在世界坐标系下受到的重力计算末端在传感器坐标系下受到的外力,以及基于第一作用力矩和重力产生的重力矩计算末端在传感器坐标系下受到的外力矩;计算所述外力和所述外力矩在机器人牵引点的实际作用力和实际作用力矩;基于实际作用力和实际作用力矩控制末端在目标平面进行限位运动。可以实现机器人末端的平面限位,使得末端在规划的平面轨迹范围内运动。
Description
技术领域
本申请涉及机器人控制技术领域,尤其涉及一种机器人平面限位控制方法、装置和手术机器人。
背景技术
在利用机器人辅助膝关节置换的过程中,需医生手持机械臂,带动机械臂末端的电动摆锯在不同的方向上进行平移切割,如图1所示的六个方向。例如,对于股骨截骨,通常会根据手术前预先规划的假体的设计和大小,在每个方向上将切割出一个股骨切割面。
在实际操作中,通过上位机控制,保证机械臂末端的电动摆锯精准定位到待切割的平面,并限制其在一定范围内运动,以保证医生手持机械臂末端进行切割时不会损伤周围解剖结构。
发明内容
本申请实施例提供一种机器人平面限位控制方法、装置和手术机器人,可以实现机器人末端的平面限位,使得末端在规划的平面轨迹范围内运动。
本申请的实施例提供一种机器人平面限位控制方法,所述机器人末端设有六轴力传感器,包括:
通过所述六轴力传感器采集作用于所述机器人末端的在传感器坐标系下的第一作用力和第一作用力矩;
基于所述第一作用力和所述机器人在世界坐标系下受到的重力计算所述末端在所述传感器坐标系下受到的外力,以及基于所述第一作用力矩和所述重力产生的重力矩计算所述末端在所述传感器坐标系下受到的外力矩;
根据所述传感器坐标系下的所述外力和所述外力矩计算在机器人牵引点的实际作用力和实际作用力矩;
基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动。
在一些实施例中,所述基于所述第一作用力和所述机器人在世界坐标系下受到的重力计算所述末端在所述传感器坐标系下受到的外力,包括:
计算所述传感器坐标系在世界坐标系下的第一姿态矩阵;
根据所述机器人在世界坐标系下受到的重力和所述第一姿态矩阵计算所述重力在末端产生的迁移作用力;
将所述第一作用力与所述末端产生的迁移作用力作差,得到所述末端在所述传感器坐标系下受到的外力。
在一些实施例中,所述基于所述第一作用力矩和所述重力产生的重力矩计算所述末端在所述传感器坐标系下受到的外力矩,包括:
根据所述重力在末端产生的所述迁移作用力和重力力臂计算所述重力在末端产生的迁移作用力矩;
将所述第一作用力矩与所述末端产生的迁移作用力矩作差,得到所述末端在所述传感器坐标系下受到的外力矩。
在一些实施例中,所述根据所述传感器坐标系下的所述外力和所述外力矩计算在机器人牵引点的实际作用力和实际作用力矩,包括:
根据所述传感器坐标系和所述牵引点所在坐标系计算出传感器到手持点的第二姿态矩阵,并对所述第二姿态矩阵进行逆变换得到手持点到传感器的第三姿态矩阵;
根据所述传感器坐标系下的所述外力与所述第三姿态矩阵计算在所述机器人牵引点的实际作用力;
根据所述外力和所述外力在所述传感器坐标系下的力臂长度计算在所述末端产生的扭矩;
根据所述传感器坐标系下的所述外力矩与所述扭矩之差计算出在所述机器人牵引点的实际作用力矩。
在一些实施例中,所述限位运动为在所述目标平面的位姿限位运动,所述基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动,包括:
依据所述机器人的作用于末端的外力及外力矩与末端位姿之间的预设控制关系,根据所述机器人在所述目标平面进行限位运动的末端位姿期望轨迹计算出作用于所述末端所需的期望外力及期望外力矩;
根据所述期望外力及期望外力矩,控制在机器人牵引点的实际作用力和实际作用力矩,以使所述末端达到期望位姿。
在一些实施例中,所述限位运动为在所述目标平面的速度限位运动,所述基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动,包括:
依据所述机器人的作用于末端的外力及外力矩与末端速度之间的预设控制关系,根据所述机器人在所述目标平面进行限位运动的末端速度期望轨迹计算出作用于所述末端所需的期望外力及期望外力矩;
根据所述期望外力及期望外力矩,控制在机器人牵引点的实际作用力和实际作用力矩,以使所述末端达到期望速度。
本申请的实施例还提供一种机器人平面限位控制装置,所述机器人末端设有六轴力传感器,所述机器人平面限位控制装置包括:
数据采集模块,用于通过所述六轴力传感器采集作用于所述机器人末端的在传感器坐标系下的第一作用力和第一作用力矩;
计算模块,用于基于所述第一作用力和所述机器人在世界坐标系下受到的重力计算所述末端在所述传感器坐标系下受到的外力,以及基于所述第一作用力矩和所述重力产生的重力矩计算所述末端在所述传感器坐标系下受到的外力矩;
所述计算模块,还用于根据所述传感器坐标系下的所述外力和所述外力矩计算在机器人牵引点的实际作用力和实际作用力矩;
限位控制模块,用于基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动。
本申请的实施例还提供一种手术机器人,所述手术机器人包括处理器和存储器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序以实施上述的机器人平面限位控制方法。
本申请的实施例还提供一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上执行时,实施上述的机器人平面限位控制方法。
本申请的实施例具有如下有益效果:
本申请实施例提出的机器人平面限位控制方法通过将六轴力传感器采集到的三维力和三维力矩数据进行平衡掉重力处理以得到实际的外力及外力矩,进而计算出在手持点处的作用力和作用力矩,以便对末端进行精准地平面限位运动控制。该方法可以实现机器人末端的平面限位,使得末端在规划的平面轨迹范围内精准运动。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了一种机器人辅助膝关节置换的切割面示意图;
图2示出了本申请实施例的机器人平面限位控制方法的第一流程示意图;
图3示出了本申请实施例的机器人的坐标系构建的示意图;
图4示出了本申请实施例的机器人平面限位控制方法的第二流程示意图;
图5示出了本申请实施例的机器人平面限位控制方法的第三流程示意图;
图6示出了本申请实施例的机器人平面限位控制方法的运用于膝关节切割的某个平面限位示意图;
图7示出了本申请实施例的机器人平面限位控制装置的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在下文中,可在本申请的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本申请的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本申请的各种实施例中被清楚地限定。
实施例1
请参照图2,本实施例提出一种机器人平面限位控制方法,可应用于需要进行平面切割的辅助性手术机器人(或机械臂)中。
示范性地,如图2所示,该机器人平面限位控制方法包括:
步骤S110,通过六轴力传感器采集作用于机器人末端的在传感器坐标系下的第一作用力和第一作用力矩。
本实施例中,该机器人的末端带有用于平面切割的电动摆锯,为了方便检测电动摆锯与外界环境的接触情况,这里将在末端片设有一个六轴力传感器,其中,六轴力传感器也称六维力传感器,可用于检测机器人末端与外界环境之间的作用力,其中包括三个方向的力(即三维力)和三个方向的力矩(即三维力矩)。
对于上述步骤S110,示范性地,通过设置的该六轴力传感器进行末端受力实时检测,可以得到在传感器自身坐标系下的作用于该末端的三维力和三维力矩。
步骤S120,基于所述第一作用力和机器人在世界坐标系下受到的重力计算末端在传感器坐标系下受到的外力,以及基于所述第一作用力矩和所述重力产生的重力矩计算末端在传感器坐标系下受到的外力矩。
考虑到机器人的末端具有含一定质量的电动摆锯等夹具,本实施例将对采集到的数据进行重力平衡处理,即通过平衡掉机器人的重力在末端传感器上产生的作用力及作用力矩,进而可得到在末端传感器上的单纯的外力及外力矩的大小。可以理解,机器人进行一次重力标定以后,则不需要重复进行精度标定就可以平衡掉机器人自身所带夹具的重量,例如,力辅助医生手持2kg左右的手术器械(机器人)对患者进行治疗的过程中,并且在医生不使用器械的时候,夹具能够保持在空中,而不会受重力作用下坠从而影响医生的正常工作。通过重力平衡处理,使得过滤掉机器人限位的平面信息,力辅助医生切出预期效果的平面切割口,可避免器械震动使得使用者把持不住器械的情况。
本实施例中,为了方便对机器人进行末端平面切割控制,该机器人将预先设有多个坐标系,其中包括传感器所在位置构建的传感器坐标系,有时也称工具坐标系,如图3中的坐标系O1,以及用户手持点所在的手持点坐标系,如图3中的坐标系O2等。
对于末端在传感器坐标系下的受到的外力,在一种实施方式中,示范性地,如图4所示,该外力的获取步骤包括:
子步骤S210,计算所述传感器坐标系在世界坐标系下的第一姿态矩阵;子步骤S220,根据机器人在世界坐标系下受到的重力和所述第一姿态矩阵计算所述重力在末端产生的迁移作用力;子步骤S230,将所述第一作用力与末端产生的迁移作用力作差,得到末端在传感器坐标系下受到的外力。
示范性地,通过该六轴力传感器在世界坐标系下的姿态逆变换,可得到传感器坐标系在世界坐标系下的第一姿态矩阵,如下:
其中,c()和s()分别为cos函数和sin函数的缩写形式,rx、ry和rz分别为欧拉角绕X轴、Y轴和Z轴的旋转矩阵。
假设机器人在世界坐标系下受到的重力为Fg=Mg,其中,M为机器人的质量,若写成三维的重力向量形式,如下:
{trsfMg}3*1=[0 0 Mg]。
于是,通过第一姿态矩阵点乘重力向量,可得到重力在末端产生的迁移作用力trsfconfigureMg,具体如下:
{trsfconfigureMg}3*1={trsfconfigure}3*3·{trsfMg}3*1。
为了消除重力带来的作用力影响,这里利用采集到的第一作用力Fsensor与重力在末端产生的迁移作用力进行作差处理,从而得到单纯的在末端传感器上的外力{trsf}sensor_configure,如下:
{trsf}sensor_configure=Fsensor-{trsfconfigureMg}3*1。
而对于末端在传感器坐标系下的受到的外力矩,在一种实施方式中,示范性地,可根据机器人的重力在末端产生的该迁移作用力和重力力臂计算重力在末端产生的迁移作用力矩;进而,将所述第一作用力矩与末端产生的迁移作用力矩作差,即可得到末端在传感器坐标系下受到的外力矩。
{Ttorque}3*1={trsfconfigureMg}3*1×{trsftrabsform}1*3。
同样,利用采集得到的第一作用力矩Tsensor与重力在末端产生的迁移作用力矩{Ttorque}3*1进行作差处理,从而得到单纯的在末端传感器上的外力矩{trsf}sensor_transform,如下:
{trsf}sensor_transform=Tsensor-{Ttorque}3*1。
步骤S130,根据传感器坐标系下的所述外力和所述外力矩计算在机器人牵引点的实际作用力和实际作用力矩。
由于用户在使用机器人时是作用于手持点的,而手持点到末端具有一定的力传递过程,为了准确地施加力的大小,以便控制末端的运动,本实施例将反推算出传感器上的外力及外力矩对应于用户在手持点所施加的实际力及该实际力产生的力矩。
在一种实施方式中,示范性地,如图5所示,上述步骤S130包括:
子步骤S310,根据所述传感器坐标系和所述牵引点所在坐标系计算出传感器到手持点的第二姿态矩阵,并对所述第二姿态矩阵进行逆变换得到手持点到传感器的第三姿态矩阵。
假设建立的传感器坐标系为{trsf}Sensor,手持点所在的手持点坐标系为{trsf}Handle,于是可计算出两者的转换关系为:
{trsf}SensorToHandle={trsf}Sensor -1*{trsf}Handle
={xSensorToHandle,ySensorToHandle,zSensorToHandle,rxSensorToHandle,rySensorToHandle,rzSensorToHandle};
其中,{trsf}SensorToHandle为传感器到手持端的旋转矩阵转欧拉角,其中包括在X、Y、Z三个坐标轴上的位置以及绕三个坐标轴的旋转角度;{trsf}Sensor -1为传感器坐标系的欧拉角的逆;{trsf}Handle为手持点坐标系的欧拉角。
进而,由上述的转换矩阵{trsf}SensorToHandle,可知传感器到手持点的第二姿态矩阵{trsf}SensorToHandle_config为:
{trsf}SensorToHandle_config={0,0,0,rxSensorToHandle,rySensorToHandle,rzSensorToHandle};
最后,可计算出手持点到传感器的第三姿态矩阵{trsf}HandleToSensor为:
{trsf}HandleToSensor=!{0,0,0,rxSensorToHandle,rySensorToHandle,rzSensorToHandle}。
子步骤S320,根据传感器坐标系下的所述外力与所述第三姿态矩阵计算在机器人牵引点的实际作用力。
示范性地,将末端传感器处产生的外力{trsf}sensor_configure点乘传感器到手持点的第三姿态矩阵,即可得到在牵引点的实际作用力{trsf}ForcrToHandle,如下:
{trsf}ForcrToHandle={trsf}sensor_configure·{trsf}HandleToSensor。
子步骤S330,根据所述外力和所述外力在传感器坐标系下的力臂长度计算在末端产生的扭矩。
子步骤S340,根据传感器坐标系下的所述外力矩与所述扭矩之差计算出在机器人牵引点的实际作用力矩。
示范性地,已知外力在传感器坐标系下作用的力臂长度记为{trsfForceToSensor}3*1={lx,ly,lz},则在末端产生的扭矩{trsf}Torque_Sum为:
{trsf}Torque_Sum={trsfForceToSensor}×{trsf}HandleToSensor。
进而,将上述计算得到的在传感器坐标系下的外力矩与该扭矩进行作差处理,可得到在机器人牵引点的实际作用力矩{trsf}Torque_Branch,即:
{trsf}Torque_Branch={trsf}sensor_configure·({trsf}sensor_transform-{trsf}Torque_sum)。
步骤S140,基于所述实际作用力和实际作用力矩控制末端在目标平面进行限位运动。
本实施例中,该限位运动可以是在目标平面的对末端位姿(包括位置和/或姿态)的限位运动,即从位姿角度进行平面限位运动控制,此外,该限位运动也可以是在目标平面的对末端速度的限位运动,即从速度角度进行平面限位运动控制。
以位置平面限位为例,本实施例的机器人的控制器提供了位置控制接口,该控制器基于作用于末端的外力及外力矩与末端位姿之间的预设控制关系构建得到,具体如PI控制器、PD控制器等形式,其输出的是机器人末端的位置偏移量指令或位置指令,进而用于控制机器人的末端位置。例如,以库卡机器人为例,库卡机器人可提供位置控制的接口。而如史陶比尔机器人等则可提供实时速度控制的接口,以便进行速度平面限位。
当需要在指定的目标平面进行位置限位运动时,在一种实施方式中,示范性地,可根据机器人在该指定的目标平面进行限位运动的预先规划的末端速度期望轨迹,计算出作用于该末端所需的期望外力及期望外力矩;进而,在已知当前的在机器人牵引点的实际作用力和实际作用力矩的情况下,通过调整控制在牵引点的实际作用力和实际作用力矩来实现末端所需的期望外力及期望外力矩,最终使得机器人末端达到期望的位置。
例如,当需要平面控制时,机器人的控制器输出为位置偏移量{trsf}DeltaLength={Δx,Δy,Δz,Δa,Δb,Δc},其中,若想在x,z平面移动,输出时,可以将Δy=0,Δa=0,Δb=0,Δc=0。于是,根据该设置可得到对应方向上的外力及外力矩的期望值。根据该期望值来调整该当前的实际作用力和实际作用力矩,可使得机器人末端从当前位置达到期望的位置,即可实现对应的位置限位运动,如图6所示,仅在规划的圈起区域内进行运动。
同样,若以速度限位为例,机器人的控制器的速度控制接口可表示为{xSensor,ySensor,zSensor,rxSensor,rySensor,rzSensor},其中,xSensor,ySensor,zSensor分别为控制机器人末端在传感器坐标下的位置速度,其与手持点的力{trsf}ForceToHandle成线性关系;rxSensor,rySensor,rzSensor为控制机器人末端在传感器坐标系下的姿态速度,其与手持点的力矩{trsf}Torque_Branch成线性关系。例如,当需要平面控制时,机器人若想在x,z平面移动,在输出控制时,可设置ySensor,rxSensor,rySensor,rzSensor对应的系数项为零。进而,根据该设置可得到对应方向上的外力及外力矩的期望值,以用于实现对应的速度平面限位。同位置控制类似,这里不再重复描述。
本实施例的机器人平面限位控制方法通过将六轴力传感器采集到的三维力和三维力矩数据进行平衡掉重力处理以得到实际的外力及外力矩,进而计算出在手持点处的作用力和作用力矩,以便对末端进行精准地平面限位运动控制。该方法可以实现机器人末端的平面限位,使得末端在规划的平面轨迹范围内精准运动。
实施例2
请参照图7,基于上述实施例1的方法,本实施例提出一种机器人平面限位控制装置100,其中,该机器人末端设有六轴力传感器。示范性地,该机器人平面限位控制装置100包括:
数据采集模块110,用于通过所述六轴力传感器采集作用于所述机器人末端的在传感器坐标系下的第一作用力和第一作用力矩;
计算模块120,用于基于所述第一作用力和所述机器人在世界坐标系下受到的重力计算所述末端在所述传感器坐标系下受到的外力,以及基于所述第一作用力矩和所述重力产生的重力矩计算所述末端在所述传感器坐标系下受到的外力矩;
所述计算模块120,还用于根据所述传感器坐标系下的所述外力和所述外力矩计算在机器人牵引点的实际作用力和实际作用力矩;
限位控制模块130,用于基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动。
可以理解,本实施例的装置对应于上述实施例1的方法,上述实施例1中的可选项同样适用于本实施例,故在此不再重复描述。
本申请还提供了一种手术机器人,例如,该手机机器人可以是膝关节置换手术机器人等,示范性地,该手术机器人包括处理器和存储器,其中,存储器存储有计算机程序,处理器通过运行所述计算机程序,从而使手术机器人执行上述的机器人平面限位控制方法或者上述机器人平面限位控制装置中的各个模块的功能。
本申请还提供了一种可读存储介质,用于储存上述手术机器人中使用的所述计算机程序。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (8)
1.一种机器人平面限位控制方法,其特征在于,所述机器人末端设有六轴力传感器,包括:
通过所述六轴力传感器采集作用于所述机器人末端的在传感器坐标系下的第一作用力和第一作用力矩;
基于所述第一作用力和所述机器人在世界坐标系下受到的重力计算所述末端在所述传感器坐标系下受到的外力,以及基于所述第一作用力矩和所述重力产生的重力矩计算所述末端在所述传感器坐标系下受到的外力矩;
根据所述传感器坐标系下的所述外力和所述外力矩计算在机器人牵引点的实际作用力和实际作用力矩,具体包括:根据所述传感器坐标系和所述牵引点所在坐标系计算出传感器到手持点的第二姿态矩阵,并对所述第二姿态矩阵进行逆变换得到手持点到传感器的第三姿态矩阵;根据所述传感器坐标系下的所述外力与所述第三姿态矩阵计算在所述机器人牵引点的实际作用力;根据所述外力和所述外力在所述传感器坐标系下的力臂长度计算在所述末端产生的扭矩;根据所述传感器坐标系下的所述外力矩与所述扭矩之差计算出在所述机器人牵引点的实际作用力矩;
基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动。
2.根据权利要求1所述的机器人平面限位控制方法,其特征在于,所述基于所述第一作用力和所述机器人在世界坐标系下受到的重力计算所述末端在所述传感器坐标系下受到的外力,包括:
计算所述传感器坐标系在世界坐标系下的第一姿态矩阵;
根据所述机器人在世界坐标系下受到的重力和所述第一姿态矩阵计算所述重力在末端产生的迁移作用力;
将所述第一作用力与所述末端产生的迁移作用力作差,得到所述末端在所述传感器坐标系下受到的外力。
3.根据权利要求2所述的机器人平面限位控制方法,其特征在于,所述基于所述第一作用力矩和所述重力产生的重力矩计算所述末端在所述传感器坐标系下受到的外力矩,包括:
根据所述重力在末端产生的所述迁移作用力和重力力臂计算所述重力在末端产生的迁移作用力矩;
将所述第一作用力矩与所述末端产生的迁移作用力矩作差,得到所述末端在所述传感器坐标系下受到的外力矩。
4.根据权利要求1至3中任一项所述的机器人平面限位控制方法,其特征在于,所述限位运动为在所述目标平面的位姿限位运动,所述基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动,包括:
依据所述机器人的作用于末端的外力及外力矩与末端位姿之间的预设控制关系,根据所述机器人在所述目标平面进行限位运动的末端位姿期望轨迹计算出作用于所述末端所需的期望外力及期望外力矩;
根据所述期望外力及期望外力矩,控制在机器人牵引点的实际作用力和实际作用力矩,以使所述末端达到期望位姿。
5.根据权利要求1至3中任一项所述的机器人平面限位控制方法,其特征在于,所述限位运动为在所述目标平面的速度限位运动,所述基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动,包括:
依据所述机器人的作用于末端的外力及外力矩与末端速度之间的预设控制关系,根据所述机器人在所述目标平面进行限位运动的末端速度期望轨迹计算出作用于所述末端所需的期望外力及期望外力矩;
根据所述期望外力及期望外力矩,控制在机器人牵引点的实际作用力和实际作用力矩,以使所述末端达到期望速度。
6.一种机器人平面限位控制装置,其特征在于,所述机器人末端设有六轴力传感器,所述机器人平面限位控制装置包括:
数据采集模块,用于通过所述六轴力传感器采集作用于所述机器人末端的在传感器坐标系下的第一作用力和第一作用力矩;
计算模块,用于基于所述第一作用力和所述机器人在世界坐标系下受到的重力计算所述末端在所述传感器坐标系下受到的外力,以及基于所述第一作用力矩和所述重力产生的重力矩计算所述末端在所述传感器坐标系下受到的外力矩;
所述计算模块,还用于根据所述传感器坐标系下的所述外力和所述外力矩计算在机器人牵引点的实际作用力和实际作用力矩,具体包括:根据所述传感器坐标系和所述牵引点所在坐标系计算出传感器到手持点的第二姿态矩阵,并对所述第二姿态矩阵进行逆变换得到手持点到传感器的第三姿态矩阵;根据所述传感器坐标系下的所述外力与所述第三姿态矩阵计算在所述机器人牵引点的实际作用力;根据所述外力和所述外力在所述传感器坐标系下的力臂长度计算在所述末端产生的扭矩;根据所述传感器坐标系下的所述外力矩与所述扭矩之差计算出在所述机器人牵引点的实际作用力矩;
限位控制模块,用于基于所述实际作用力和实际作用力矩控制所述末端在目标平面进行限位运动。
7.一种手术机器人,其特征在于,所述手术机器人包括处理器和存储器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序以实施权利要求1-5中任一项所述的机器人平面限位控制方法。
8.一种可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在处理器上执行时,实施根据权利要求1-5中任一项所述的机器人平面限位控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110864692.4A CN113558771B (zh) | 2021-07-29 | 2021-07-29 | 机器人平面限位控制方法、装置和手术机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110864692.4A CN113558771B (zh) | 2021-07-29 | 2021-07-29 | 机器人平面限位控制方法、装置和手术机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113558771A CN113558771A (zh) | 2021-10-29 |
CN113558771B true CN113558771B (zh) | 2022-12-16 |
Family
ID=78169096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110864692.4A Active CN113558771B (zh) | 2021-07-29 | 2021-07-29 | 机器人平面限位控制方法、装置和手术机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113558771B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113813005B (zh) * | 2021-08-20 | 2023-01-24 | 中国科学院深圳先进技术研究院 | 一种用于切除脊柱椎板的机器人 |
CN114098960A (zh) * | 2021-11-29 | 2022-03-01 | 杭州柳叶刀机器人有限公司 | 医疗器械自动定位方法、装置、机械臂和可读存储介质 |
CN114767302B (zh) * | 2022-06-17 | 2022-11-01 | 杭州柳叶刀机器人有限公司 | 口腔机器人的控制方法、装置和电子设备 |
CN115813563B (zh) * | 2023-02-20 | 2023-07-14 | 北京壹点灵动科技有限公司 | 手术机器人控制装置、存储介质以及处理器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105583824B (zh) * | 2016-01-26 | 2017-05-24 | 清华大学 | 力控牵引和摆位的多自由度机械臂控制装置及其控制方法 |
AU2017295728B2 (en) * | 2016-07-15 | 2021-03-25 | Mako Surgical Corp. | Systems for a robotic-assisted revision procedure |
US11272985B2 (en) * | 2017-11-14 | 2022-03-15 | Stryker Corporation | Patient-specific preoperative planning simulation techniques |
CN111452049B (zh) * | 2020-04-16 | 2022-04-05 | 珠海格力智能装备有限公司 | 机器人运动的控制方法及装置 |
-
2021
- 2021-07-29 CN CN202110864692.4A patent/CN113558771B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113558771A (zh) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113558771B (zh) | 机器人平面限位控制方法、装置和手术机器人 | |
CN110076772B (zh) | 一种机械臂的抓取方法及装置 | |
JP6380828B2 (ja) | ロボット、ロボットシステム、制御装置、及び制御方法 | |
EP3112096B1 (en) | Robot arm apparatus, calibration method, and program | |
JP5175691B2 (ja) | ロボットアームの教示システム及び方法 | |
KR102363857B1 (ko) | 로봇에 의한 충돌 처리 | |
JP6364836B2 (ja) | ロボット、ロボットシステム、及び制御装置 | |
EP3134021A1 (en) | Robotic interface positioning determination systems and methods | |
JP6700726B2 (ja) | ロボット制御装置、ロボット制御方法、ロボット制御システムおよびコンピュータプログラム | |
JP2014014902A (ja) | 制御システム、プログラム及び機械装置の制御方法 | |
CN115919250A (zh) | 一种人体动态关节角测量系统 | |
CN117047771A (zh) | 机器人的柔顺控制方法、装置及电子设备 | |
CN110682287B (zh) | 自动机械以及控制装置 | |
CN116481695A (zh) | 手术机器人的实际作用力确定方法、装置、设备及介质 | |
JP6455869B2 (ja) | ロボット、ロボットシステム、制御装置、及び制御方法 | |
CN113664813B (zh) | 双臂机器人控制方法、装置、双臂机器人和可读存储介质 | |
CN111358659A (zh) | 一种机器人的助力控制方法、系统及下肢康复机器人 | |
JP2011067884A (ja) | 高速高精度な接触作業に適用するロボット制御システム、ロボット制御方法、ロボット制御装置、およびプログラム | |
WO2017026045A1 (ja) | ハンド力覚計測装置、ハンド力覚計測方法、及びハンド力覚計測プログラム | |
Han et al. | Trajectory prediction of space robot for capturing non-cooperative target | |
CN109916352B (zh) | 一种获取机器人tcp坐标的方法和装置 | |
CN112643678A (zh) | 机械臂及其控制装置、机械臂的控制系统和控制方法 | |
Tobergte et al. | An approach to ulta-tightly coupled data fusion for handheld input devices in robotic surgery | |
CN113450903B (zh) | 一种人体动作映射方法、装置、计算机设备和存储介质 | |
CN115414117B (zh) | 骨科手术机器人执行末端位置坐标的确定方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |