WO2023280310A1 - 一种手术机器人及其控制方法 - Google Patents

一种手术机器人及其控制方法 Download PDF

Info

Publication number
WO2023280310A1
WO2023280310A1 PCT/CN2022/104671 CN2022104671W WO2023280310A1 WO 2023280310 A1 WO2023280310 A1 WO 2023280310A1 CN 2022104671 W CN2022104671 W CN 2022104671W WO 2023280310 A1 WO2023280310 A1 WO 2023280310A1
Authority
WO
WIPO (PCT)
Prior art keywords
pose
end tool
function
current
acetabular
Prior art date
Application number
PCT/CN2022/104671
Other languages
English (en)
French (fr)
Inventor
曾致贤
陈龙
王选
刘强
罗彩连
马波琪
杨帆
陈超民
谢强
Original Assignee
武汉联影智融医疗科技有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from CN202110778767.7A external-priority patent/CN113520601B/zh
Priority claimed from CN202110777345.8A external-priority patent/CN113509296B/zh
Priority claimed from CN202110778776.6A external-priority patent/CN113509270B/zh
Application filed by 武汉联影智融医疗科技有限公司 filed Critical 武汉联影智融医疗科技有限公司
Publication of WO2023280310A1 publication Critical patent/WO2023280310A1/zh

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots

Definitions

  • the present application relates to the technical field of medical equipment, in particular to a surgical robot and a control method thereof.
  • the guided robot is a robot that performs surgical operations mainly on the operator.
  • This robot improves the participation of the operator, can effectively reduce the probability of accidents, and improve the success rate of surgery.
  • the operator's mastery and control degree of the position and orientation information of the end tool of the guided robot largely affects the success rate of the operation. Therefore, the present application proposes a surgical robot and a control method thereof that enable the operator to grasp the pose information of the end tool in a timely and accurate manner.
  • the embodiments of the present specification provide a method for controlling a surgical robot, including: acquiring pose information of an end tool; and providing first feedback information to an operator based on the pose information.
  • a surgical robot including: a mechanical arm device, used to control the movement of the end tool; a positioning device, used to obtain the first pose information of the end tool and the second pose information of the object a processor configured to: acquire first pose information of the end tool; and provide first feedback information to an operator based on the first pose information.
  • Another aspect of the embodiment of the present specification provides an end tool movement guidance method, including: detecting the current position of the end tool, and determining the current position of the end tool if the current position of the end tool is not on the preset path of the constrained space A corresponding sub-constraint space and a distance stiffness function corresponding to the sub-constraint space, wherein the central axis of the constraint space is the preset path of the end tool, and the constraint space includes at least two sub-constraint spaces nested together ; Outputting a first feedback force toward the preset path to the end tool according to the current position and the distance stiffness function corresponding to the current position.
  • a surgical robot including: a mechanical arm device, used to drive the end tool to move under the action of an external force, and output a feedback force to the end tool; a positioning device, used to obtain the end tool in the constraint The current position in the space, the central axis of the constraint space is the preset path of the end tool, the constraint space includes at least two sub-constraint spaces nested together; a processor, configured to detect by the positioning device The current position of the end tool, if the current position of the end tool is not on the preset path of the constraint space, determine the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space; According to the current position and the distance stiffness function corresponding to the current position, the mechanical arm outputs a first feedback force toward the preset path to the end tool.
  • Another aspect of the embodiment of this specification provides a method for real-time correction of the pose of the end tool, including: obtaining the first pose correspondence between the end tool and the reference coordinate system, and the second pose of the end tool and the object Correspondence; when the pose of the object is detected to change, the pose offset of the object is obtained, where the pose offset of the object is the current pose of the object relative to the initial pose of the object the offset of the pose; control the movement of the end tool according to the first pose correspondence and the object pose offset, so that the pose correspondence between the end tool and the object returns to the first Correspondence between two poses.
  • a surgical robot including: a first attitude acquisition device, which is arranged on the object and maintains a fixed corresponding relationship with the object, and is used to acquire the pose of the object; a second attitude acquisition device, It is arranged on the mechanical arm or the end tool used for carrying the end tool to move, and is used to obtain the pose of the end tool; the controller is used to obtain the first pose correspondence between the end tool and the reference coordinate system, and the The corresponding relationship between the end tool and the second pose of the object; when it is detected that the pose of the object changes, obtain the offset of the object pose; according to the first pose correspondence and the object pose The offset controls the movement of the end tool, so that the pose correspondence between the end tool and the object returns to the second pose correspondence.
  • Another aspect of the embodiment of this specification provides a method for automatically adjusting the posture of an acetabular cup, including: S1, controlling the movement of the acetabular cup from the current position to the preset cupping position, and detecting the posture adjustment signal in real time, and When the posture adjustment signal is received, the current posture information of the acetabular cup and the current posture information of the acetabular socket of the subject are obtained, and the preset cupping place is located in the acetabular socket; S2, according to the acetabular socket The current pose information of the acetabular cup and the current pose information of the acetabular socket adjust the pose of the acetabular cup so that the central axis of the acetabular cup coincides with the central axis of the acetabular socket; S3 . If the posture-adjusted acetabular cup is not at the preset cupping position, repeat the above S1 and S2.
  • a surgical robot including: a motion module, including a mechanical arm, used to drive the movement of the acetabular cup; a pose acquisition module, including an acetabular cup pose unit and an acetabular fossa pose unit, Acquire the current pose information of the acetabular cup in real time through the acetabular cup pose unit and obtain the current pose information of the acetabular socket of the subject in real time through the acetabular socket pose unit; The current pose information of the acetabular cup and the current pose information of the acetabular socket, adjust the pose of the acetabular cup so that the central axis of the acetabular cup is aligned with the center of the acetabular socket axis coincident.
  • Fig. 1 is a schematic diagram of an exemplary module structure of a surgical robot according to some embodiments of the present specification
  • Fig. 2 is an exemplary flow chart of a method for controlling a surgical robot according to some embodiments of the present specification
  • Fig. 3 is an exemplary structural diagram of a first preset area according to some embodiments of the present specification
  • Fig. 4 is an exemplary structural diagram of a second preset area according to some embodiments of the present specification.
  • Fig. 5 is an exemplary flowchart of applying a first feedback force according to some embodiments of the present specification
  • Fig. 6 is a schematic diagram of an exemplary image of a distance stiffness function according to some embodiments of the present specification
  • Fig. 7 is an exemplary flowchart of applying the first feedback torque according to some embodiments of the present specification.
  • FIG. 8 is a schematic diagram of an exemplary image of an angular stiffness function according to some embodiments of the present specification.
  • Fig. 9 is an exemplary flowchart of applying a second feedback force according to some embodiments of the present specification.
  • FIG. 10 is a schematic diagram of an exemplary image of a damping function according to some embodiments of the present specification.
  • Fig. 11 is an exemplary flowchart of applying a second feedback torque according to some embodiments of the present specification.
  • Fig. 12 is an exemplary flow chart of actively adjusting the pose of an end tool according to some embodiments of the present specification
  • Fig. 13 is an exemplary flowchart of determining an object pose offset according to some embodiments of the present specification
  • Fig. 14 is an exemplary flow chart of determining an end tool target pose offset according to some embodiments of the present specification
  • Figure 15 is an exemplary flow chart of calibrating an acetabular cup according to some embodiments of the present specification
  • 16 to 19 are schematic diagrams of different poses of the acetabular cup according to some embodiments of the present specification.
  • Fig. 20 is a schematic diagram of an exemplary structure of a surgical robot in a joint rasp stage according to some embodiments of the present specification
  • Fig. 21 is an exemplary flow chart of an end tool movement guidance method according to some embodiments of the present specification.
  • Fig. 22 is an exemplary flowchart of a method for real-time correction of end tool pose according to some embodiments of the present specification
  • Fig. 23 is a schematic diagram of another exemplary module structure of a surgical robot according to some embodiments of the present specification.
  • Fig. 24 is an exemplary flowchart of a method for automatically adjusting the pose of an acetabular cup according to some embodiments of the present specification
  • Fig. 25 is a schematic diagram of another exemplary module structure of a surgical robot according to some embodiments of the present specification.
  • system means for distinguishing different components, elements, components, parts or assemblies of different levels.
  • the words may be replaced by other expressions if other words can achieve the same purpose.
  • the flow chart is used in this application to illustrate the operations performed by the system according to the embodiment of this application. It should be understood that the preceding or following operations are not necessarily performed in the exact order. Instead, various steps may be processed in reverse order or simultaneously. At the same time, other operations can also be added to these processes, or a certain step or steps can be removed from these processes.
  • the embodiment of this specification provides a surgical robot, which is mainly used for performing medical operations such as orthopedic operations.
  • the surgical robot mainly includes a robotic arm device, a positioning device and a processor, wherein the robotic arm device can be used to control the movement of the end tool.
  • the positioning device can acquire pose information of the end tool.
  • the processor may provide the operator with first feedback information based on the pose information of the end tool. The operator can know the current position of the terminal tool in time through the first feedback information, thereby improving the control precision of the terminal tool and improving the success rate of the operation.
  • the positioning device can also acquire pose information of the surgically operated object.
  • the processor may control the end tool to actively follow the object based on the pose information of the end tool and the pose information of the object.
  • the processor can actively adjust the pose relationship of the end tool relative to the object based on the pose information of the end tool and the pose information of the object, so as to meet the requirements of the operation.
  • Embodiments of the present specification also provide a method for controlling a surgical robot, which can be used to control the aforementioned surgical robot.
  • Fig. 1 is a schematic diagram of an exemplary module structure of a surgical robot according to some embodiments of the present specification.
  • the surgical robot 100 mainly includes a robotic arm device 110 , a positioning device 120 , and a processor 130 .
  • the robotic arm assembly 110 can be used to move the end tool. In some embodiments, the robotic arm device 110 can also output a set feedback force to the end tool. For more details of the robotic arm device 110, reference may be made to FIG. 20 and related descriptions, and details are not repeated here.
  • the positioning device 120 (also referred to as a navigation device) may be used to obtain pose information of a preset target.
  • predetermined targets may include end tools, surgical objects, or other markers, among others.
  • the positioning device 120 may be used to acquire the first pose information of the end tool and the second pose information of the object.
  • the positioning device 120 may include, but not limited to, an optical principle positioning device, an acoustic principle positioning device, an electromagnetic locator, a GPS locator, a gyroscope, an acceleration sensor, and the like. For more content of the positioning device 120, reference may be made to FIG. 20 and related descriptions thereof, and details are not repeated here.
  • the processor 130 can communicate data with the positioning device 120 and the robot device 110 respectively.
  • the processor 130 can obtain the pose information of the end tool through the positioning device 120, and control the robotic arm device 110 to provide the first feedback information to the operator based on the pose information.
  • the processor 130 can control the movement of the robotic arm device 110 to control the poses of the robotic arm device 110 and the end tool.
  • the processor 130 may include a central processing unit (CPU), a digital signal processor (DSP), a system on a chip (SoC), a microprocessor (MCU), etc., or any combination thereof.
  • processor 130 may be local or remote.
  • the processor 130 may access information and/or data stored in the robotic arm device 110 or other components of the surgical robot 100 (eg, the positioning device 120 ) through a network.
  • the processor 130 may be directly connected to the robotic arm device 110 to access information and/or data stored therein.
  • the processor 130 may be implemented on a cloud platform.
  • the cloud platform may include private clouds, public clouds, hybrid clouds, community clouds, distributed clouds, cross-clouds, multi-clouds, etc., or any combination thereof.
  • FIG. 2 is an exemplary flowchart of a method for controlling a surgical robot according to some embodiments of the present specification.
  • the process 200 includes the following steps.
  • process 200 may be performed by surgical robot 100 .
  • the operations of process 200 presented below are intended to be illustrative. In some embodiments, the process may be accomplished with one or more additional operations not described and/or one or more operations not discussed.
  • Step 210 acquiring pose information of the end tool.
  • step 210 may be performed by the processor 130 .
  • an end tool may refer to an operating instrument or treatment material for surgery located at the end of the robotic arm device 110 .
  • the terminal tool may be a file used to clean up the affected part, or a prosthesis used to replace the diseased part.
  • the surgical robot 100 may be used in hip surgery, and the end tool may be an acetabular rasp or an acetabular cup.
  • pose information may include information such as position and pose.
  • the pose information of the end tool may include the current position of the end tool.
  • the current position of the end tool may be the position of the end tool within the first predetermined area.
  • the current position of the end tool may be the distance between the feature point of the end tool and the central axis of the first preset area.
  • the pose information of the end tool may include a current angle of the end tool.
  • the current angle of the end tool may be the angle of the end tool in the first predetermined region.
  • the current angle of the end tool may be an angle between the central axis of the end tool and the central axis of the first predetermined area. In some embodiments, the current position and/or current angle of the end tool may also be a position or angle within other preset areas, which is not limited in this embodiment of the present specification.
  • Fig. 3 is an exemplary structural diagram of a first preset area according to some embodiments of the present specification.
  • the operating area of the end tool may include a first preset area 300 , and the end tool may perform surgical operations in the first preset area 300 .
  • the first preset area 300 may be an area defined by an operable space near the target position of the surgically operated object.
  • the surgical object also referred to as surgical object or object
  • the first preset area 300 corresponding to the end tool may follow the surgical object.
  • the positioning device 120 can determine the pose of the end tool in the first preset area 300, and the processor 130 can apply the first feedback information to the operator according to the current pose information of the end tool to keep the end tool in position. within the first preset area 300 , and enables the operator to determine whether the pose of the end tool within the first preset area 300 meets the surgical requirements according to the first feedback information.
  • the first predetermined area 300 may include a tapered area (as shown in FIG. 3 ). In other embodiments, the first preset area 300 may also include a bowl-shaped area or a columnar area. In some other embodiments, the first preset area 300 may also include a tapered area and a columnar area (as shown in FIG. 4 ), at this time, the central columnar area 420 in FIG. 4 may correspond to the skin part of the surgical object. It should be noted that, the actual range of the first preset area 300 may be preset by the operator according to specific conditions and/or personal habits.
  • the central axis of the first preset area 300 may be the preset path of the end tool, that is, the movement path of the end tool desired by the operator.
  • the top point D of the first predetermined area 300 (such as the top point D of the tapered area in Figure 3 and Figure 4 ) is the target position of the end tool on the object, that is, the end of the preset path ( Or called the lower end) is the surgical position of the end tool.
  • the operator when the end tool is located in the first preset area 300 , the operator can manually drag the end tool to perform a surgical operation.
  • the movement range of the end tool is limited within the first preset area 300, that is, when the external force applied by the operator to the end tool does not exceed
  • the preset value of the external force constraining the end tool within the first preset region 300 can be set by the user, for example, the user can set the preset value to 80 Newtons.
  • the value range of the preset value of the external force constraining the end tool within the first preset region 300 may include 40 Newtons to 80 Newtons. In some embodiments, the value range of the preset value of the external force constraining the end tool within the first preset region 300 may include 20 Newtons to 100 Newtons. In some embodiments, the value range of the preset value of the external force constraining the end tool within the first preset region 300 may include 60 Newtons to 80 Newtons.
  • the range of the taper angle of the tapered area of the first preset area 300 is related to the opening size of the operating area, and the range of the taper angle represents Limits the range of allowable angles between the end tool and the preset path. Therefore, in practical applications, the operator can set the cone angle range of the cone area according to specific conditions.
  • the taper angle of the tapered region may range from 20° to 40°. In some embodiments, the taper angle of the tapered region may range from 25° to 35°. In some embodiments, the taper angle of the tapered area may be 30°, and at this time, the half taper angle of the tapered area is 15°, as shown in FIG. 3 .
  • the height of the tapered area of the first preset area 300 represents the depth of the operation area, that is, the distance from the opening of the subject's skin surface to the operation area (target position), so in practical applications , the operator can set the height range of the cone area according to the specific situation.
  • the height of the tapered region may range from 100 mm to 300 mm. In some embodiments, the height of the tapered region may range from 150 mm to 250 mm. In some embodiments, the height of the tapered region may be 200mm.
  • Fig. 4 is an exemplary structural diagram of a second preset area according to some embodiments of the present specification.
  • the operation area of the end tool may further include a second preset area 400 , and the end tool may follow the movement of the object in the second preset area 400 .
  • the robotic arm device 110 can actively control the end tool to generate a corresponding movement according to the motion information of the surgical object.
  • the robotic arm device 110 can control the active movement of the end tool according to the corresponding information (such as object motion information, end tool force information, etc.), so as to ensure that the relative position of the end tool and the surgical object remains unchanged. Or basically unchanged, which is convenient for the follow-up operation of the operation.
  • the corresponding information such as object motion information, end tool force information, etc.
  • the range of the second preset area 400 may be preset (eg, set by an operator or a manufacturer). In some embodiments, the second preset area 400 may be an area within a certain range above the first preset area 300 . In some embodiments, the second preset area 400 may be an area overlapping with the first preset area 300 within a certain range. In some embodiments, referring to FIG. 4 , the second preset area 400 may be an area including the first preset area 300 . It should be noted that “up” and “down” in this specification refer to relative directions. Referring to FIG. 4, the side along the central axis of the first preset area 300 that is close to the target position on the object is "down". The side farther away from the target position on the object along the direction of the central axis of the first preset area 300 is "up". In some embodiments, the shape of the second preset area 400 may be any shape.
  • the second preset area 400 may include the first preset area 300 .
  • the top shaded area 410 , the central columnar area 420 , and the lower tapered area 430 in FIG. 4 may all belong to the second preset area 400 , when the end tool is located in the above three areas , the robotic arm device 110 can actively control the movement of the end tool.
  • the second preset area 400 may not include the first preset area 300 .
  • the top shaded area 410 in FIG. 4 may belong to the first preset area 400, and the middle columnar area 420 and the lower tapered area 430 (ie, the first preset area 300) may not belong to the second preset area. 400.
  • the robotic arm device 110 can actively control the end tool to follow the object; when the end tool is located in the middle columnar area 420 or the lower cone area 430, the operator can control the end tool to follow the object sports.
  • the pose information of the end tool may include distance information and angle information of the end tool.
  • the distance information of the end tool may include the target distance between the current pose of the end tool and the preset path;
  • the angle information of the end tool may include the axis of the end tool and the preset path (such as the cone shape of the first preset area 300 The current angle between the central axes of the region).
  • the pose information of the end tool may be determined by the positioning device 120 , and the processor 130 acquires the pose information of the end tool through the positioning device 120 .
  • feature points for pose tracking may be set on the end tool, and pose information of the feature points may represent pose information of the end tool.
  • Step 220 providing first feedback information to the operator based on the pose information.
  • step 220 may be performed by processor 130 .
  • the operator may refer to an operator of the surgical robot, such as a doctor.
  • the first feedback information is determined according to the pose information of the end tool, and different pose information of the end tool corresponds to different first feedback information. The operator may determine the pose information of the corresponding end tool based on the received first feedback information.
  • the first feedback information may include a first feedback force.
  • step 220 may include the following operations: applying the first feedback force to the operator based on the pose information.
  • the first feedback force refers to the force fed back to the operator, and the magnitude and direction of the first feedback force are related to the pose information and motion direction of the end tool.
  • the first feedback force can also change nonlinearly based on the pose information of the end tool, so as to enhance the reminding effect.
  • the magnitude of the first feedback force may be small.
  • the magnitude of the first feedback force may be 0.
  • the magnitude of the first feedback force may be larger.
  • the distance between the end tool and the preset path is relatively large, at this time the first feedback force can suddenly increase to play a role in alerting the operator Effect.
  • the first feedback information may further include a first feedback torque.
  • step 220 may further include the following operation: applying the first feedback torque to the operator based on the pose information.
  • the first feedback torque refers to the torque fed back to the operator.
  • the first feedback torque may change non-linearly based on the pose information of the end tool, so as to enhance the reminding effect. For more details about the first feedback torque, reference may be made to FIG. 7 and its related descriptions, which will not be repeated here.
  • the process 200 may further include step 230: making the end tool provide second feedback information to the operator when the end tool moves in the first preset area.
  • step 230 may be performed by the robotic arm device 110 .
  • the processor 130 may cause the end tool to provide the second feedback information to the operator.
  • the movement information of the end tool may include information such as the movement velocity and the movement angular velocity of the end tool.
  • the second feedback information may be determined based on a damping coefficient.
  • the damping coefficient may be determined based on a damping function corresponding to the movement speed or the movement angular velocity of the tip tool.
  • the biological characteristics of the object can be used to determine the damping coefficient, so as to simulate the real touch during operation, and the second feedback information can be determined based on the biological characteristics of the object.
  • the biological characteristics of the subject may include body characteristics such as fat and joint fluid.
  • the second feedback information may include a second feedback force.
  • the second feedback force may refer to a force applied to the operator determined based on the speed of movement of the tip tool. For more details about the second feedback force, reference may be made to FIG. 9 and its related descriptions, which will not be repeated here.
  • the second feedback information may further include a second feedback torque.
  • the second feedback torque may be a torque applied to the operator determined based on the angular velocity of movement of the end tool. For more details about the second feedback torque, refer to FIG. 11 and its related descriptions, which will not be repeated here.
  • the process 200 may further include step 240: when the end tool does not meet the preset condition, output a warning message.
  • step 240 may be performed by the processor 110 .
  • the preset condition may be a range interval or judgment condition set for related parameters of the end tool, such as the allowable force range of the end tool, whether the actual path of the end tool matches the preset path, and the like.
  • the number of preset conditions may be one or more than two.
  • the warning information is a signal used to warn the operator and draw the attention of the operator.
  • the warning information may include but not limited to sound warning information, visual warning information and the like.
  • the warning information may be an alarm bell, a light of a specified color, a specified warning pattern, a light source flickering at a specified frequency, and the like.
  • the warning information can be issued by corresponding components, for example, the speaker can emit an alarm bell, and the light bulb can emit a light of a specified color or a flashing light of a specified frequency.
  • step 240 may include: when the end tool does not leave the first preset area according to the preset path, outputting a warning message.
  • the process of the end tool detaching from the first preset area 300 may adversely affect the wound in the opening area of the surgical object, thereby affecting the effect of the operation. Therefore, when the end tool does not leave the first preset area 300 according to the preset path, the processor 130 may control the corresponding component to send a corresponding warning message.
  • step 240 may further include: outputting a warning message when the force or moment experienced by the end tool is greater than a preset threshold.
  • the preset threshold may include the maximum value of the external force or moment generated by the external force on the end tool.
  • the processor 130 may control the corresponding components to send corresponding warning information.
  • the end tool may include a six-dimensional force sensor.
  • the six-dimensional force sensor can be used to detect the force and/or moment on the end tool, such as the contact force between the end tool and the target position on the object corresponding to the surgical operation, the drag force exerted by the operator on the end tool, and the like.
  • the six-dimensional force sensor can also perform low-pass filtering on the detected force signal, so as to filter out noise such as operator's hand or body shaking of the surgical object, thereby improving the accuracy of force detection.
  • the process 200 may further include other steps for adjusting the pose of the end tool, so that the end tool actively follows the movement of the object.
  • steps for adjusting the pose of the end tool please refer to FIG. 12 and related descriptions, and details will not be repeated here.
  • Fig. 5 is an exemplary flowchart of applying a first feedback force according to some embodiments of the present specification.
  • the process 500 may include the following steps.
  • process 500 may be performed by surgical robot 100 .
  • the operations of flow 500 presented below are intended to be illustrative. In some embodiments, the process may be accomplished with one or more additional operations not described and/or one or more operations not discussed.
  • Step 510 acquire the current position and current stiffness of the end tool, and determine the first feedback force based on the current position and current stiffness.
  • step 510 may be performed by the processor 130 .
  • the current position of the end tool may be the position of the feature point of the end tool in the first preset area 300 relative to the preset path. In some embodiments, based on the current position of the end tool, the current distance (also referred to as target distance) from the feature point on the end tool to the preset path of the first preset area may be determined. In some embodiments, the feature point of the end tool may be a point on the end tool for position tracking. In some embodiments, the current stiffness of the tip tool refers to the ability of the tip tool to resist moving away from a predetermined path. The current stiffness of the end tool is relative to the current position of the end tool. For example, the farther the end tool is from the preset path, the greater the current stiffness of the end tool may be.
  • the product of the target distance corresponding to the current pose and the current stiffness value may be used as the magnitude of the first feedback force.
  • the direction of the first feedback force may be towards the preset path from the end tool, that is, the direction of the first feedback force may be towards the preset path.
  • the current stiffness of the end tool corresponds to the current position in the current pose.
  • the corresponding relationship may be in the form of a table, and a distance value or a distance range may correspond to a stiffness value.
  • the corresponding relationship can also be in the form of a function, the distance value (for example, the current distance) can be used as the independent variable of the function, the stiffness value (for example, the current stiffness) can be used as the dependent variable of the function, and each distance value can be Determine a corresponding stiffness value according to the functional relationship.
  • the corresponding relationship may be pre-stored in the processor 130, or may be temporarily input. In some embodiments, the operator can view or modify the correspondence.
  • the current stiffness may be determined based on a distance stiffness function.
  • the argument of the distance stiffness function may be the current distance between the current position of the end tool and the preset path, and the current stiffness corresponding to the distance may be determined through the distance stiffness function.
  • the argument of the distance stiffness function may be the distance equivalent of the feature point of the end tool relative to the preset path within the first preset area 300 at the current position.
  • the distance equivalent may refer to the ratio of the current distance to the maximum distance of the feature point of the end tool relative to the preset path when the feature point of the end tool is at the current position, that is, in the tapered area, the feature point of the end tool relative to the preset path The ratio of the distance to the distance of the boundary of the first preset area relative to the preset path.
  • Fig. 6 is a schematic diagram of an exemplary image of a distance stiffness function according to some embodiments of the present specification.
  • the abscissa of the coordinate system shown in FIG. 6 is the current distance equivalent of the end tool, that is, the image when the argument of the distance stiffness function is the distance equivalent.
  • the value interval of the independent variable of the distance stiffness function (for example, the distance equivalent) may be 0-1.
  • the distance stiffness function may be a piecewise function within the value interval of the independent variable.
  • the distance stiffness function may also be a non-segmental function within the value interval of the independent variable.
  • the distance stiffness function may include a constant function and a monotonically increasing quadratic function. In some other embodiments, the distance stiffness function may also include a discrete function. In still some embodiments, the distance stiffness function may also include other monotonically increasing functions, such as a cubic function, a monotonically increasing piecewise function, and the like.
  • the distance equivalent is used as an argument of the distance stiffness function, so that the first feedback force experienced by the end tool at different positions along the axis of the first preset region 300 on the boundary of the same region is the same.
  • point A and point B are the boundary points of the inner layer area 310 respectively, although the distance between point A and point B from the central axis (preset path) of the first preset area 300 is different, But both are located on the boundary of the same area, and the distance equivalents corresponding to the two are the same, so the first feedback force that the end tool receives at the boundary point A and at the boundary point B is the same. In this way, the operator can judge whether the end tool has reached or is close to the boundary of each area in the first preset area 300 by sensing the first feedback force provided by the end tool at the current position, so as to determine the position range of the end tool.
  • the distance stiffness function is continuous over more than half of the range of values of the independent variable.
  • the argument of the distance stiffness function may include three continuous value intervals, and the three value intervals may correspond to the inner region 310 and the middle region of the first preset region 300 respectively. 320. The outer region 330. At this time, the distance stiffness function may be continuous within two or three value intervals.
  • the distance stiffness function value corresponding to the first junction point E of the first value range (inner layer region 310) can be compared with the distance stiffness at the first junction point E of the second value range (middle layer region 320)
  • the function values are the same, so that the distance stiffness function can be continuous in the first value range (inner region 310 ) and the second value range (middle layer region 320 ).
  • the distance stiffness function value corresponding to the second junction point F of the second value interval (middle layer region 320) can be the same as the distance stiffness function value at the second junction point F place of the third value interval (outer layer region 330). The same, so that the distance stiffness function can be continuous in the second value range (middle layer region 320 ) and the third value range (outer layer region 330 ). In some embodiments, the distance stiffness function is continuous over more than 60% of the range of values of the independent variable. In some embodiments, the distance stiffness function is continuous over more than 80% of the range of values of the independent variable. In some embodiments, the distance stiffness function is continuous over more than 90% of the range of values of the independent variable.
  • the distance stiffness function is continuous over more than 95% of the range of values of the independent variable. In some embodiments, the distance stiffness function is continuous within the entire value range of the independent variable corresponding to the first preset region 300 .
  • the derivative of the distance stiffness function is not less than a first preset value.
  • the value range of the derivative of the distance stiffness function is limited by the first preset value, thereby limiting the increase or decrease of the distance stiffness function.
  • the first preset value may be 0, or other positive values close to 0.
  • the derivative of the corresponding distance stiffness function may be 0 or a positive number greater than 0, and at this time the distance stiffness function may include a constant function or an increasing function.
  • the first preset value is other positive values close to 0 (such as 0.01, 0.001, etc.)
  • the derivative of the corresponding distance stiffness function is a positive number
  • the distance stiffness function may include an increasing function.
  • the distance stiffness function may include a first derivative discontinuity. That is, there may be two adjacent value intervals of the independent variable. At the junction point of these two intervals, the first-order derivative of the distance stiffness function is discontinuous, and the rate of change of the distance stiffness function at this junction point is inconsistent. The image of the distance stiffness function at this junction does not have a consistent slope of the tangent.
  • the distance stiffness function on the left side of point F is an increasing function, and the first-order derivative of the increasing function at point F is greater than 0; the distance stiffness function on the right side of point F is a constant function, and the constant function The first derivative at point F is equal to 0, so point F is the discontinuous point of the first derivative of the distance stiffness function.
  • the distance stiffness function may include two second derivative discontinuities. That is, there may be two junction points between multiple different value intervals. At these two junction points, the second-order derivative of the distance stiffness function is discontinuous, the rate of change of the derivative of the distance stiffness function is inconsistent, and the distance stiffness function Inconsistent slopes of tangent lines in derivative plots.
  • the distance stiffness function may have three or more continuous value intervals of the independent variable, that is, there may be two or more intersection points between multiple value intervals of the independent variable. At the two junction points, the second derivative of the distance stiffness function is discontinuous. In some embodiments, as shown in FIG.
  • the argument of the distance stiffness function may include three continuous value intervals, and the three value intervals may correspond to the inner region 310 and the middle region of the first preset region 300 respectively.
  • the outer region 330, the second derivative value of the distance stiffness function corresponding to the first junction point E of the inner region 310 may be different from the second derivative value of the distance stiffness function at the first junction point E of the middle region 320
  • the second derivative value of the distance stiffness function corresponding to the second junction point F of the middle region 320 may be different from the second derivative value of the distance stiffness function at the second junction point F of the outer region 330 .
  • the distance stiffness function may have four continuous value intervals of the independent variable, the junction point between the first value interval and the second value interval is the first junction point, and the second value interval and the third interval The junction point of the value interval is the second junction point, and the junction point between the third value interval and the fourth value interval is the third junction point.
  • the second order derivative of the distance stiffness function may be discontinuous at the first junction point and the third junction point, and the second order derivative of the distance stiffness function may be continuous at the second junction point.
  • the distance stiffness function may include multiple independent variable value intervals with different functional relationships.
  • the independent variable of the distance stiffness function may include a first value interval, a second value interval and a third value interval with different functional relationships.
  • the first value interval of the independent variable of the distance stiffness function in the first value interval of the independent variable of the distance stiffness function, the first-order derivative of the distance stiffness function in more than half of the range is not greater than the second preset value;
  • the first-order derivative of the distance stiffness function in more than half of the interval is greater than the second preset value; in the third value interval of the independent variable of the distance stiffness function, the distance stiffness function in more than half of the interval The first order derivative is not greater than the second preset value.
  • the first value interval, the second value interval and the third value interval of the independent variable of the distance stiffness function may be continuous intervals.
  • the first value interval of the independent variable of the distance stiffness function , the second value range and the third value range may correspond to three different spatial regions of the first preset region 300 .
  • the first value interval of the argument of the distance stiffness function may correspond to the inner region 310 of the first preset area 300
  • the second value interval of the argument of the distance stiffness function may correspond to the first preset In the middle region 320 of the region 300
  • the third value interval of the argument of the distance stiffness function may correspond to the outer region 330 of the first preset region 300 .
  • the abscissa of the coordinate system in FIG. 6 is the distance equivalent
  • the range of the third value interval of the distance equivalent includes 5/6 ⁇ 1, corresponding to the boundary point of the outer region 330 in FIG. 6 being F ⁇ 1.
  • the first value interval, the second value interval and the third value interval of the independent variable of the distance stiffness function may also be discontinuous intervals.
  • the value range of the independent variable of the distance stiffness function can be 0-1
  • the first value range of the independent variable of the distance stiffness function can be 0-0.32
  • the second value range of the independent variable of the distance stiffness function can be 0.33- 0.65
  • the third value interval of the independent variable of the distance stiffness function may be 0.66-1.
  • the second preset value may be greater than or equal to the first preset value. In some embodiments, the second preset value may be a non-negative number. In some embodiments, the first preset value may be 0, and the value range of the second preset value may also be 0.
  • the first-order derivative of the distance stiffness function in more than half of the range may be 0, and the distance in the inner region 310 at this time
  • the stiffness function can be a constant function; in the middle region 320, the first derivative of the distance stiffness function in more than half of the range can be greater than 0, and the distance stiffness function in the middle region 320 can be an increasing function; in the outer region 330 , the first derivative of the distance stiffness function in more than half of the interval range may be 0, and at this time the distance stiffness function in the outer region 330 may be a constant function.
  • the second preset value may also be any positive number greater than 0.
  • the spatial area that is, the approximate pose of the end tool in the first preset area 300 , implements pose guidance for the end tool.
  • the distance stiffness function may also include multiple functions, and different value intervals of the independent variable may be represented by different functions.
  • the distance stiffness function may include a constant function and an increasing function alternately set.
  • the distance stiffness function corresponding to the inner region 310 may be a first constant stiffness function.
  • the distance stiffness function corresponding to the middle region 320 may be an increasing stiffness function.
  • the increasing function may comprise a monotonically increasing quadratic function.
  • the distance stiffness function corresponding to the outer layer region 330 may be a second constant stiffness function.
  • Step 520 applying a first feedback force to the operator based on the movement direction of the end tool.
  • step 520 may be performed by the robotic arm device 110 .
  • the direction of the first feedback force can always be from the end tool towards the preset path, so as to prompt the operator where the preset path is relative to the end tool, and prevent the operator from moving the end tool out of the first preset path.
  • Set area 300 when the end tool enters the middle region 320 from the inner region 310, the resistance to movement of the end tool becomes greater. In some embodiments, when the end tool enters the inner region 310 from the middle region 320 , since the movement direction of the end tool is toward the preset path, the end tool is not subjected to resistance at this time, that is, the first feedback force is 0 at this time.
  • the movement resistance of the end tool becomes larger.
  • the end tool enters from one spatial region to another
  • the spatial region for example, enters the middle region 320 from the inner region 310
  • the first feedback force it receives changes continuously instead of jumping.
  • the continuously changing first feedback force helps to improve the operator's control over the end tool, thereby improving the operator's accuracy in dragging the end tool.
  • the value range of the first feedback force provided by the end tool to the operator is 0 Newton ⁇ 6 Newtons. In some embodiments, within the first value interval of the distance equivalent, the value range of the first feedback force provided by the end tool to the operator is from 0 Newton to 4 Newton. In some embodiments, within the first value interval of the distance equivalent, the value range of the first feedback force provided by the end tool to the operator is from 0 Newton to 8 Newton.
  • the value range of the first feedback force provided by the end tool to the operator is 6 Newtons to 208 Newtons.
  • the value range of the first feedback force provided by the end tool to the operator is 4 Newtons to 200 Newtons.
  • the value range of the first feedback force provided by the end tool to the operator is 8 Newtons to 220 Newtons.
  • the value range of the first feedback force provided by the end tool to the operator is 208 Newtons to 250 Newtons.
  • the value range of the first feedback force provided by the end tool to the operator is 200 Newtons to 250 Newtons. In the third value interval of the distance equivalent, the value range of the first feedback force provided by the end tool to the operator is 220 Newtons to 250 Newtons.
  • Fig. 7 is an exemplary flowchart of applying the first feedback torque according to some embodiments of the present specification.
  • the process 700 may include the following steps.
  • process 700 may be performed by surgical robot 100 .
  • the operations of flow 700 presented below are intended to be illustrative. In some embodiments, the process may be accomplished with one or more additional operations not described and/or one or more operations not discussed.
  • Step 710 acquire the current angle and current angle stiffness of the end tool, and determine the first feedback torque based on the current angle and angle stiffness.
  • step 710 may be performed by processor 130 .
  • the current angle of the end tool refers to the angle between the axis of the end tool and the predetermined path (eg, the central axis of the tapered region of the first predetermined region 300 ).
  • the maximum current angle allowed by the tip tool is the taper angle of the tapered region of the first predetermined region 300 .
  • the current angle is the smallest, and the angle value is 0; when the axis of the end tool is parallel to the boundary of the tapered area, the allowed current angle is the largest, and the angle value is the cone angle half.
  • angular stiffness refers to the ability of the end tool to resist rotation. The current angular stiffness of the end tool is relative to the current angle of the end tool. For example, the greater the angle of the end tool to the preset path, the greater the current angular stiffness of the end tool can be.
  • the current angular stiffness of the tip tool corresponds to the current angle.
  • the correspondence relationship may be in the form of a table, and an angle value or an angle range may correspond to an angle stiffness value.
  • the corresponding relationship can also be in the form of a function, the angle value can be used as an independent variable of the function, and the angle stiffness value can be used as a dependent variable of the function, and each angle value can determine a corresponding angle stiffness value according to the functional relationship.
  • the corresponding relationship may be pre-stored in the processor 130, or may be temporarily input. In some embodiments, the operator can view or modify the correspondence.
  • the current angular stiffness may be determined based on an angular stiffness function.
  • the argument of the angular stiffness function may be a current angle between the tip tool and the preset path, and the current angular stiffness corresponding to the current angle may be determined through the angular stiffness function.
  • the argument of the angular stiffness function may be an angle equivalent of the current pose of the end tool relative to the preset path within the first preset region 300 .
  • the angle equivalent may refer to the ratio of the current angle corresponding to the current pose of the end tool to the maximum angle, that is, the ratio of the current angle corresponding to the current pose of the end tool to half of the cone angle in the cone area .
  • Fig. 8 is a schematic diagram of an exemplary image of an angular stiffness function according to some embodiments of the present specification.
  • the abscissa of the coordinate system shown in FIG. 8 is the current angle equivalent of the end tool, that is, the image when the argument of the angular stiffness function is the angle equivalent.
  • the value interval of the independent variable of the angular stiffness function (for example, the angle equivalent) may be 0-1.
  • the angular stiffness function may include a constant function and a monotonically increasing quadratic function.
  • the angular stiffness function may also include a discrete function.
  • the angular stiffness function may also include other monotonically increasing functions, such as a cubic function, a piecewise function, and the like.
  • the argument of the angular stiffness function may have three continuous value intervals, the first angle interval containing the minimum angle, the third angle interval containing the maximum angle, that is, the third angle interval, located in the first angle interval The second angle interval between and the third angle interval.
  • the corresponding first preset area 300 can be divided into three different spatial areas, a first angle area including the central axis, a third angle area including a tapered area boundary, located between the first angle area and the third angle area The second angle area of . It should be noted that since the tapered area is axisymmetric, the three angular areas are also axisymmetric.
  • the angular stiffness function may include a piecewise function, and different value intervals of the independent variable correspond to different angular stiffness functions.
  • the angular stiffness function can be alternately set as a constant function and an increasing function.
  • the angular stiffness function corresponding to the first angular interval may be a first constant angular stiffness function
  • the angular stiffness function corresponding to the second angular interval may be an incremental angular stiffness function
  • the angular stiffness function corresponding to the third angular interval may be is the second constant angular stiffness function.
  • the angular stiffness function may also be a non-segmental function within the value interval of the independent variable.
  • the angular stiffness function is continuous over more than half of the range of values of the independent variable.
  • the independent variable of the angular stiffness function may include three continuous value intervals. The junction point between the first angle interval and the second angle interval is set as the first junction point G, and the junction point between the second angle interval and the third angle interval is set as the second junction point H.
  • the angular stiffness function value corresponding to the first junction point G of the first angle interval can be the same as the angular stiffness function value at the first junction point G of the second angle interval, so that the angular stiffness function can be in the first angle interval Continuing with the second angle interval.
  • the angular stiffness function value corresponding to the second junction point H of the second angle interval can be the same as the angular stiffness function value at the second junction point H of the third angle interval, so that the angular stiffness function can be in the second angle interval and the first Continuous in the interval of three angles.
  • the angular stiffness function is continuous over more than 60% of the range of values of the independent variable. In some embodiments, the angular stiffness function is continuous over more than 80% of the range of values of the independent variable. In some embodiments, the angular stiffness function is continuous over more than 90% of the range of values of the independent variable. In some embodiments, the angular stiffness function is continuous over more than 95% of the range of values of the independent variable.
  • the angular stiffness function is continuous throughout the range of values of the independent variable. By setting the angular stiffness function to be continuous, the magnitude of the first feedback torque can be made continuous, thereby preventing the operator from feeling frustrated during the operation and improving the operation experience.
  • the derivative of the angular stiffness function is not less than a third preset value.
  • the value range of the derivative of the angular stiffness function is limited by the third preset value, thereby limiting the increase or decrease of the angular stiffness function.
  • the third preset value may be 0, or other positive values close to 0.
  • the derivative of the corresponding angular stiffness function may be 0 or a positive number greater than 0, and in this case, the angular stiffness function may include a constant function or an increasing function.
  • the third preset value is other positive values close to 0 (such as 0.01, 0.001, etc.)
  • the derivative of the corresponding angular stiffness function is a positive number
  • the angular stiffness function may include an increasing function.
  • the angular stiffness function may include a first derivative discontinuity. That is, there may be two adjacent value intervals of the independent variable. At the junction point of these two value intervals, the first-order derivative of the angular stiffness function is discontinuous, and the rate of change of the angular stiffness function at this junction point is inconsistent. The tangent slope of the image of the angular stiffness function at this junction point is inconsistent.
  • the angular stiffness function on the left side of point H is an incremental function, and the first-order derivative of the incremental function at point H is greater than 0; the angular stiffness function on the right side of point H is a constant function, and the constant function
  • the first derivative at point H is equal to 0, so point H is the discontinuous point of the first derivative of the angular stiffness function.
  • the angular stiffness function may include two second derivative discontinuities. That is, there may be two junction points between multiple different value intervals. At these two junction points, the second-order derivative of the angular stiffness function is discontinuous, the rate of change of the derivative of the angular stiffness function is inconsistent, and the angular stiffness function Inconsistent slopes of tangent lines in derivative plots.
  • the angular stiffness function may have three or more continuous independent variable value ranges, that is, there may be two or more junction points between multiple value ranges of the independent variable. At the two junction points, the second derivative of the angular stiffness function is discontinuous.
  • the argument of the angular stiffness function can include three continuous value intervals, and the three value intervals are the first angle interval (i.e. the first value of the argument of the angular stiffness function value interval), the second angle interval (i.e. the second value interval of the independent variable of the angular stiffness function) and the third angle interval (i.e.
  • the second-order derivative value of the angular stiffness function corresponding to a junction point G can be different from the second-order derivative value of the angular stiffness function at the first junction point G of the second angle interval, and at the second junction point H of the second angle interval.
  • the value of the second derivative of the corresponding angular stiffness function may be different from the value of the second derivative of the angular stiffness function at the second junction point H of the third angular interval.
  • the angular stiffness function may have four continuous value intervals of the independent variable, the junction point between the first value interval and the second value interval is the first junction point, and the second value interval and the third interval The junction point of the value interval is the second junction point, and the junction point between the third value interval and the fourth value interval is the third junction point.
  • the second order derivative of the angular stiffness function may be discontinuous at the first junction point and the third junction point, and the second order derivative of the angular stiffness function may be continuous at the second junction point.
  • the angular stiffness function may include a plurality of independent variable value intervals with different functional relationships.
  • the independent variable of the angular stiffness function may include a first value interval, a second value interval and a third value interval with different functional relationships.
  • the value intervals of the multiple independent variables with different functional relationships of the angular stiffness function may be continuous value intervals. In some other embodiments, the value intervals of the multiple independent variables with different functional relationships of the angular stiffness function may also be discontinuous value intervals.
  • the first-order derivative of the angular stiffness function in more than half of the range is not greater than the fourth preset value;
  • the first-order derivative of the angular stiffness function in more than half of the range is greater than the fourth preset value; in the third value of the independent variable of the angular stiffness function interval (the third angle interval), the first-order derivative of the angular stiffness function in more than half of the interval range is not greater than the fourth preset value.
  • the fourth preset value may be greater than or equal to the third preset value. In some embodiments, the fourth preset value may be a non-negative number. In some embodiments, the third preset value may be 0, and the value range of the fourth preset value may also be 0.
  • the first-order derivative of the angular stiffness function in more than half of the interval range can be 0, and at this time the angle in the first angle interval
  • the stiffness function can be a constant function; in the second angle interval, the first-order derivative of the angle stiffness function in more than half of the interval range can be greater than 0, and the angle stiffness function in the second angle interval can be an increasing quadratic curve function; in the third angle interval, the first-order derivative of the angular stiffness function in more than half of the interval range may be 0, and at this time, the angular stiffness function in the third angle interval may be a constant function.
  • the space area where the tool is currently located that is, the approximate pose of the end tool in the first preset area 300 , implements pose guidance for the end tool.
  • the argument of the angular stiffness function may be an angle equivalent of the current pose relative to the preset path within the first preset region 300 .
  • the range of the third value interval of the angle equivalent includes 5/6 ⁇ 1, corresponding to the boundary point of the third angle interval in FIG. 8 is H ⁇ 1.
  • Step 720 applying a first feedback torque to the operator based on the movement direction of the end tool.
  • step 720 may be performed by the robotic arm device 110 .
  • the direction of the first feedback torque can always be the rotation direction of the end tool towards the preset path, so as to prompt the operator the posture of the preset path relative to the end tool, and prevent the operator from turning the end tool to Outside the first preset area 300 .
  • the rotation resistance of the end tool becomes larger.
  • the end tool rotates from an angle region with a larger angle value to an angle region with a smaller angle value, since the rotation direction of the end tool is toward the preset path, the end tool is not subjected to an hindering moment at this time, that is, When the first feedback torque is 0.
  • the angular stiffness functions corresponding to two adjacent value intervals have the same angular stiffness value at the common boundary, so the end When the angle between the tool and the preset path enters from one value range to another value range, the first feedback torque received by the end tool changes continuously instead of jumping.
  • the continuously changing first feedback torque helps to improve the operator's control over the end tool, thereby improving the accuracy of the user's dragging of the end tool.
  • the direction of the first feedback torque may also be determined based on the movement direction of the end tool.
  • the direction of the first feedback torque may be opposite to the direction of rotation of the end tool.
  • the first feedback torque is determined based on the product of the current angle between the end tool and the preset path and the angular stiffness value corresponding to the current angle
  • the angular stiffness value is determined by the current angle and the angular stiffness function corresponding to the current angle
  • the angular stiffness function determines the change form of the first feedback torque, so the operator can determine the terminal according to the change form of the first feedback torque
  • the value range of the tool that is, the determination of the angle range between the end tool and the expected path, helps to improve the user's control over the pose of the end tool, thereby improving the speed and accuracy of orthopedic surgery.
  • the value range of the first feedback torque provided by the end tool to the operator is 0 N ⁇ m to 17 N ⁇ m. In some embodiments, within the first value interval of the angle equivalent, the value range of the first feedback torque provided by the end tool to the operator is 0 N ⁇ m to 14 N ⁇ m. In some embodiments, within the first value interval of the angle equivalent, the value range of the first feedback torque provided by the end tool to the operator is 0 N ⁇ m to 20 N ⁇ m. In some embodiments, within the second value interval of the angle equivalent, the first feedback torque provided by the end tool to the operator ranges from 17 N ⁇ m to 65 N ⁇ m.
  • the first feedback torque provided by the end tool to the operator ranges from 14 N ⁇ m to 62 N ⁇ m. In some embodiments, within the second value interval of the angle equivalent, the value range of the first feedback torque provided by the end tool to the operator is 20 N ⁇ m to 68 N ⁇ m. In some embodiments, within the third value interval of the angle equivalent, the first feedback torque provided by the end tool to the operator ranges from 65 N ⁇ m to 78.5 N ⁇ m. In some embodiments, within the third value interval of the angle equivalent, the value range of the first feedback torque provided by the end tool to the operator is 62 N ⁇ m to 78.5 N ⁇ m. In some embodiments, within the third value interval of the angle equivalent, the first feedback torque provided by the end tool to the operator ranges from 68 N ⁇ m to 78.5 N ⁇ m.
  • Fig. 9 is an exemplary flowchart of applying a second feedback force according to some embodiments of the present specification.
  • the process 900 may include the following steps.
  • process 900 may be performed by surgical robot 100 .
  • the operations of flow 900 presented below are intended to be illustrative. In some embodiments, the process may be accomplished with one or more additional operations not described and/or one or more operations not discussed.
  • Step 910 obtain the current speed and current damping of the end tool.
  • step 910 may be performed by processor 130 .
  • the corresponding damping function can be determined through the current speed of the tip tool, so as to determine the current damping corresponding to the current speed.
  • the allowable speed of the end tool does not exceed a preset speed, so as to avoid accidents caused by the excessive movement of the end tool, such as possible injury to the wound in the opening area of the surgical object, affecting the surgical effect and the like.
  • the preset speed refers to the maximum speed value that the end tool is allowed to reach. The preset speed can be determined by the operator according to the actual situation.
  • the current damping may have a correspondence with the current velocity of the tip tool.
  • the corresponding relationship may be in the form of a table, and a speed value or a speed range may correspond to a damping value.
  • the corresponding relationship can also be in the form of a function, the speed value can be used as an independent variable of the function, and the damping value can be used as a dependent variable of the function, and each speed value can determine a corresponding damping value according to the functional relationship.
  • the corresponding relationship may be pre-stored in the processor 130, or may be temporarily input. In some embodiments, the operator can view or modify the correspondence.
  • current damping may be determined based on a damping function.
  • the argument of the damping function can be the current speed of the end tool, and the current damping corresponding to the speed can be determined through the damping function, for example, the magnitude of the damping corresponding to the magnitude of the speed, and the direction of the speed Corresponding damping direction.
  • the value range of the current speed may be from the minimum allowable speed to the maximum allowable speed.
  • the minimum allowable speed and the maximum allowable speed can be set by the operator according to actual conditions. In some embodiments, the minimum allowed speed may be zero.
  • Fig. 10 is a schematic diagram of an exemplary image of a damping function according to some embodiments of the present specification.
  • the abscissa of the coordinate system shown in FIG. 10 is the current speed of the end tool, that is, the image when the argument of the damping function is speed.
  • the damping function may be a piecewise function within the value range of the independent variable.
  • the damping function may also be a non-segmented function within the value interval of the independent variable.
  • the damping function may include a constant function and a monotonically increasing quadratic function.
  • the damping function may also include a discrete function.
  • the damping function may also include other monotonically increasing functions, such as a cubic function, a piecewise function, and the like.
  • the argument of the damping function takes the current velocity of the tip tool.
  • the damping function may include a piecewise function (that is, include multiple functions), and the functions corresponding to different value intervals of the independent variable are different.
  • the damping function can be alternately set as a constant function and an increasing function.
  • the damping function corresponding to the first speed range may be a first constant damping function
  • the damping function corresponding to the second speed range may be an incremental damping function
  • the damping function corresponding to the third speed range may be a second constant damping function function.
  • the second constant damping function may include a damping function corresponding to a maximum allowable speed range of the end tool.
  • the damping function can also be expressed as a function. In some embodiments, the damping function is continuous over more than half of the range of values of the independent variable. In some embodiments, the damping function may include a plurality of independent variable value intervals with different functional relationships. In some embodiments, a plurality of independent variable value intervals with different functional relationships of the damping function may include a first value interval (also referred to as the first speed interval), a second value interval (also referred to as the second speed interval ) and the third value range (also known as the third speed range). In some embodiments, as shown in FIG. 10 , the first value interval, the second value interval and the third value interval of the independent variable of the damping function may be three consecutive value intervals.
  • the junction point between the first speed interval and the second speed interval is set as the first junction point J
  • the junction point between the second speed interval and the third speed interval is set as the second junction point K.
  • the damping function value corresponding to the first junction point J of the first speed interval can be the same as the damping function value at the first junction point J of the second speed interval, so that the damping function can be in the first speed interval and the second Continuous in the speed range.
  • the damping function value corresponding to the second junction point K of the second speed interval can be the same as the damping function value at the second junction point K of the third speed interval, so that the damping function can be in the second speed interval and the third speed interval Inner continuous.
  • the damping stiffness function is continuous over more than 60% of the range of values of the independent variable. In some embodiments, the damping stiffness function is continuous over more than 80% of the range of values of the independent variable. In some embodiments, the damping stiffness function is continuous over more than 90% of the range of values of the independent variable. In some embodiments, the damping stiffness function is continuous over more than 95% of the range of values of the independent variable. In some embodiments, the damping stiffness function is continuous within the entire value interval of the independent variable corresponding to the first preset region 300 . By setting the damping stiffness function to be continuous, the magnitude of the first feedback force can be made continuous, thereby preventing the operator from feeling frustrated during the operation and improving the operation experience. In some other embodiments, the first value interval, the second value interval and the third value interval of the independent variable of the damping function may also be discontinuous value intervals.
  • the derivative of the damping function is not less than a fifth preset value.
  • the value range of the derivative of the damping function is limited by the fifth preset value, thereby limiting the increase or decrease of the damping function.
  • the fifth preset value may be 0, or other positive values close to 0.
  • the derivative of the corresponding damping function may be 0 or a positive number greater than 0, and the damping function may include a constant function or an increasing function.
  • the corresponding derivative of the damping function is a positive number, and the damping function may include an increasing function.
  • the damping function may include a first derivative discontinuity. That is, there may be two adjacent value ranges of the independent variable. At the junction of these two value ranges, the first derivative of the damping function is discontinuous, and the rate of change of the damping function at this junction is inconsistent.
  • the damping function The tangent slope of the image at this junction point is inconsistent.
  • the damping function on the left side of point K is an incremental function, and the first-order derivative of the incremental function at point K is greater than 0; the damping function on the right side of point K is a constant function, and the constant function is constant at K
  • the first derivative at the point is equal to 0, so K point is the discontinuous point of the first derivative of the damping function.
  • the damping function may include two second derivative discontinuities. That is, there may be two junction points between multiple different value intervals. At these two junction points, the second-order derivative of the damping function is discontinuous, the rate of change of the derivative of the damping function is inconsistent, and the image of the derivative of the damping function Tangent slopes are inconsistent.
  • the damping function may include three continuous value intervals of the independent variable, that is, there may be two intersection points between multiple value intervals of the independent variable, and at these two intersection points, the damping function The second derivative is discontinuous. In some embodiments, as shown in FIG.
  • the independent variable of the damping function may include three continuous value intervals, and the second derivative value of the damping function corresponding to the first junction point J of the first speed interval may be the same as the first
  • the second order derivative value of the damping function at the first junction point J of the second speed interval is different, and the second order derivative value of the damping function corresponding to the second junction point K place of the second speed interval can be different from the second junction of the third speed interval
  • the value of the second derivative of the damping function at point K is different.
  • the damping function may have four continuous value intervals of the independent variable, the junction point between the first value interval and the second value interval is the first junction point, and the second value interval and the third value interval The junction point of the interval is the second junction point, and the junction point between the third value interval and the fourth value interval is the third junction point.
  • the second order derivative of the damping function may be discontinuous at the first junction point and the third junction point, and the second order derivative of the damping function may be continuous at the second junction point.
  • the first derivative of the damping function in more than half of the interval range is not greater than the sixth preset value; in the second speed interval of the damping function, more than The first-order derivative of the damping function is greater than the sixth preset value in half of the range; in the third speed range of the damping function, the first-order derivative of the damping function is not greater than the sixth preset value in more than half of the range.
  • the sixth preset value may be greater than or equal to the fifth preset value. In some embodiments, the sixth preset value may be a non-negative number. In some embodiments, the fifth preset value may be 0, and the value range of the sixth preset value may also be 0. In some embodiments, the sixth preset value may also be any positive number greater than 0.
  • the first derivative of the damping function in more than half of the interval range can be 0, and at this moment, the damping function in the first speed interval can be a constant function; in the second speed interval , the first-order derivative of the damping function in more than half of the range can be greater than 0, and the damping function in the second speed range can be an increasing quadratic curve function; in the third speed range, more than half of the range The first-order derivative of the damping function in can be 0, and the damping function in the third speed interval can be a constant function.
  • the damping function may also be determined based on the subject's biometrics.
  • the biological characteristics of the subject may include human body characteristics such as fat and joint fluid, and the damping function may be the same or similar to the damping of fat and joint fluid.
  • Step 920 Determine the second feedback force based on the current speed and the current damping.
  • step 920 may be performed by processor 130 .
  • the product of the current speed and the current damping value corresponding to the current speed can be used as the magnitude of the second feedback force.
  • the direction of the second feedback force may be opposite to the direction of the current speed, that is, when the operator controls the movement of the end tool, the end tool may provide the operator with the second feedback force opposite to the movement direction.
  • the direction of the second feedback force may be toward the preset path, that is, when the operator controls the movement of the end tool away from the preset path, the end tool may provide the operator with a second feedback opposite to the direction of movement. The end tool may not provide the second feedback force when the operator controls the movement of the end tool toward the preset path.
  • the direction of the second feedback force may be away from the preset path, that is, when the operator controls the end tool to move toward the preset path, the end tool may provide the operator with a second feedback that is opposite to the direction of motion.
  • the end tool may only provide the first feedback force without providing the second feedback force.
  • the second feedback force it receives is Continuously changing, not jumping.
  • the continuously changing second feedback force helps to improve the operator's control over the end tool, thereby improving the operator's accuracy in dragging the end tool.
  • the second feedback force is determined based on the product of the current speed of the end tool and the current damping value corresponding to the current speed , and the damping value is determined by the current speed and the damping function corresponding to the current speed, so the damping function determines the variation form of the second feedback force. Therefore, the operator can determine the speed range of the end tool according to the variation form of the second feedback force.
  • the total feedback force received by the operator is the vector sum of the first feedback force and the second feedback force. Therefore, the change form of the total feedback force is the vector combination of the change form of the first feedback force and the change form of the second feedback force, so the operator can correspond to the change form of the first feedback force and the change form of the second feedback force according to the change form of the current total feedback force.
  • the hand feeling corresponding to the vector combination of the change forms of the two feedback forces determines the space area and speed range where the end tool is currently located.
  • Fig. 11 is an exemplary flowchart of applying the second feedback torque according to some embodiments of the present specification.
  • the process 1100 may include the following steps.
  • process 1100 may be performed by surgical robot 100 .
  • the operations of process 1100 presented below are intended to be illustrative. In some embodiments, the process may be accomplished with one or more additional operations not described and/or one or more operations not discussed.
  • Step 1110 acquiring the current angular velocity of the end tool and the current rotation damping corresponding to the current angular velocity.
  • step 1110 may be performed by processor 130 .
  • the corresponding rotation damping function can be determined through the current angular velocity of the end tool, so as to determine the current rotation damping corresponding to the current angular velocity.
  • the allowable angular velocity of the end tool does not exceed the preset angular velocity, so as to avoid accidents caused by excessive movement of the end tool, such as possible injury to the wound in the opening area of the surgical object, affecting the surgical effect and the like.
  • the preset angular velocity refers to the maximum angular velocity value that the end tool is allowed to achieve. The preset angular velocity can be determined by the operator according to the actual situation.
  • the current rotational damping may have a correspondence with the current angular velocity of the tip tool.
  • the corresponding relationship may be in the form of a table, and an angular velocity value or an angular velocity range may correspond to a rotational damping value.
  • the corresponding relationship can also be in the form of a function, and the angular velocity value can be used as an independent variable of the function, and the rotational damping value can be used as a dependent variable of the function, and each angular velocity value can determine a corresponding rotational damping value according to the functional relationship.
  • the corresponding relationship may be pre-stored in the processor 130, or may be temporarily input. In some embodiments, the operator can view or modify the correspondence.
  • the current rotational damping may be determined based on a rotational damping function.
  • the argument of the rotation damping function may be the current angular velocity of the tip tool, and the current rotation damping corresponding to the angular velocity value may be determined through the rotation damping function.
  • the rotational damping function may include a constant function and a monotonically increasing quadratic function. In other embodiments, the rotational damping function may also include a discrete function. In still some embodiments, the rotational damping function may also include other monotonically increasing functions, such as cubic functions, piecewise functions, and the like.
  • the argument to the rotational damping function takes the current angular velocity of the tip tool.
  • the value range of the current angular velocity may be from the minimum allowable angular velocity to the maximum allowable angular velocity.
  • the minimum allowable angular velocity and the maximum allowable angular velocity can be set by the operator according to actual conditions.
  • the minimum allowed angular velocity may be zero.
  • the rotational damping function may include a piecewise function, and different rotational damping functions correspond to different value ranges of the independent variable. For example, the rotation damping function can be alternately set as a constant function and an increasing function.
  • the rotation damping function corresponding to the first value interval may be a first constant rotation damping function
  • the damping function corresponding to the rotation in the second value interval may be an incremental rotation damping function
  • the rotation corresponding to the third value interval The damping function may be a second constant rotational damping function.
  • the rotational damping function is continuous over more than half of the range of values of the independent variable. In some embodiments, the rotational damping function is continuous over more than 60% of the range of values of the independent variable. In some embodiments, the rotational damping function is continuous over more than 80% of the range of values of the independent variable. In some embodiments, the rotational damping function is continuous over more than 90% of the range of values of the independent variable. In some embodiments, the rotational damping function is continuous over more than 95% of the values of the independent variable. In some embodiments, the rotational damping function is continuous over all value intervals of the independent variable. In some embodiments, the independent variable of the rotation damping function may include three continuous value intervals.
  • the junction point between the first angular velocity interval and the second angular velocity interval is set as the first junction point
  • the junction point between the second angular velocity interval and the third angular velocity interval is set as the second junction point.
  • the value of the rotation damping function corresponding to the first intersection point of the first angular velocity interval can be the same as the value of the rotation damping function at the first intersection point of the second angular velocity interval, so that the rotation damping function can be in the first angular velocity interval and the second angular velocity interval. Continuous in the interval of two angular velocities.
  • the value of the rotation damping function corresponding to the second junction point of the second angular velocity interval can be the same as the rotation damping function value at the second junction point of the third angular velocity interval, so that the rotation damping function can be in the second angular velocity interval and the third angular velocity continuous in the interval.
  • the derivative of the rotational damping function may be zero or a positive number greater than zero.
  • the rotational damping function may include a first derivative discontinuity. That is, there may be two adjacent value intervals of the independent variable. At the intersection point of these two value intervals, the first-order derivative of the rotational damping function is discontinuous, and the rate of change of the rotational damping function at this intersection point is inconsistent. The tangent slope of the image of the rotational damping function at this junction point is inconsistent.
  • the rotational damping function may include two second derivative discontinuities. That is, there may be two junction points between multiple different value intervals. At these two junction points, the second derivative of the rotational damping function is discontinuous, the rate of change of the derivative of the rotational damping function is inconsistent, and the Inconsistent slopes of tangent lines in derivative plots.
  • the rotational damping function may also be determined based on the subject's biometrics.
  • the biological characteristics of the object may include human body characteristics such as fat and joint fluid, and the rotational damping function may be the same or similar to the rotational damping of fat and joint fluid.
  • Step 1120 determine the second feedback torque based on the current speed and the current damping. In some embodiments, step 1120 may be performed by processor 130 .
  • the second feedback torque can be determined by using the current angular velocity and the current rotational damping value corresponding to the current angular velocity.
  • the rotational damping functions corresponding to two adjacent value intervals have the same rotational damping value at the common boundary, so the end When the angle between the tool and the preset path enters another value range from one value range, the second feedback torque received by the end tool changes continuously instead of jumping.
  • the continuously changing second feedback torque helps to improve the operator's control over the end tool, thereby improving the accuracy of the user's dragging of the end tool.
  • the object may move, thereby changing the pose of the object, so that the central axis of the end tool no longer coincides or roughly coincides with the central axis of the operation area, which affects the surgical effect.
  • the “approximately coincident” of the two axes mentioned in this specification means that within the scope of the operating area, the maximum distance between the two axes does not exceed 0.1 mm.
  • Fig. 12 is an exemplary flowchart of actively adjusting the pose of an end tool according to some embodiments of the present specification.
  • the process 1200 may include the following steps.
  • procedure 1200 may be performed by surgical robot 100 .
  • the operations of flow 1200 presented below are intended to be illustrative. In some embodiments, the process may be accomplished with one or more additional operations not described and/or one or more operations not discussed.
  • the end tool can be operated in the second preset area 400, and the second preset area 400 is an active follow-up area.
  • the second preset area 400 follows the motion of the object, and the second preset area 400 and the object remain in a relatively static state.
  • the robotic arm device 110 can actively control the end tool to generate a corresponding movement, so that the position of the end tool in the second preset area 400 remains unchanged, even if the position state of the end tool in the second preset area 400 remains unchanged, Therefore, the relative position of the end tool and the object remains unchanged, which facilitates the operation and reduces the possibility of accidents in the operation.
  • Step 1210 acquire the first initial pose of the end tool and the pose offset of the object.
  • step 1210 may be performed by processor 130 .
  • the first initial pose of the end tool refers to the pose state of the end tool in the second preset area 400 before the object moves
  • the pose state of the end tool may include the relative position of the reference point of the end tool The distance from the target position of the object, the angle between the axis of the tip tool and the axis of the target position of the object, etc.
  • the pose offset of the object refers to the amount of change in the pose state of the object before and after the movement.
  • the first initial pose of the end tool can be determined by the positioning device 120.
  • the positioning device 120 may include a first optical array disposed on the base of the fixed robotic arm device 110, a second optical array disposed on the robotic arm device 110, and a target object (such as the operating area) The third optical array.
  • the second optical array and the robotic arm device 110 (end tool) maintain a fixed pose correspondence (that is, the second optical array and the end tool move synchronously, and the relative position remains unchanged), and the third optical array and the second preset area 400 (The object) maintains a fixed pose correspondence (that is, the third optical array moves synchronously with the object, and the relative position remains unchanged).
  • the first optical array and the base are kept relatively fixed, which can be used as a reference point of the reference coordinate system.
  • the reference coordinate system refers to a coordinate system that is not affected by the movement of the end tool and the object, that is, when the end tool and the object move, the reference coordinate system can remain stationary, and the end tool and the object move within the reference coordinate system.
  • the first optical array as the reference point of the reference coordinate system can also be located on other parts (such as rollers, etc.) with constant positions on the surgical robot 100, or objects with constant positions in the surrounding environment (such as hospital beds, etc.).
  • the first optical array can serve as a reference datum point of the reference coordinate system.
  • the first initial pose of the end tool may be determined by the second optical array as s T marker2 —static .
  • Fig. 13 is an exemplary flowchart of determining an object pose offset according to some embodiments of the present specification.
  • step 1210 can determine the pose offset of the object through the following sub-steps: step 1211, obtain the second initial pose of the object and the current pose of the object; step 1212, based on The second initial pose and the current pose determine the pose offset of the object.
  • the second initial pose of the object refers to the pose state of the object before the pose changes.
  • the current pose of an object refers to the current pose state of the object after it moves.
  • the pose offset of the object can be understood as the movement amount of the object from the second initial pose to the current pose.
  • the second initial pose of the object can be determined as s T marker3_static by the third optical array
  • the current pose of the object can be determined as s T marker3_dynamic by the third optical array.
  • the current pose of the object may be acquired by the third optical array when the controller detects the pose following signal and detects that the current pose of the object changes compared with the second initial pose.
  • the frequency of acquiring the current pose of the object by the third optical array is greater than or equal to 250 times/s, so as to meet the frequency requirement of the pose correction of the end tool (for example, greater than or equal to 250 times/s).
  • the pose offset marker3_static T maeker3_dynamic of the object can be determined based on the following formula (1):
  • marker3_static T maeker3_dynamic Inverse( s T marker3_static ) ⁇ s T marker3_dynamic (1)
  • Inverse( s T marker3_static ) is the inverse matrix of the second initial pose s T marker3_static of the object.
  • Step 1220 based on the first initial pose and the pose offset, determine the target pose offset of the end tool. In some embodiments, step 1220 may be performed by processor 130 .
  • the target pose offset of the end tool can be determined by the following formula (2):
  • tool_static T tool_dynamic Inverse( object T tool )* marker3_static T marker3_dynamic * object T tool (2)
  • object T tool is the pose change relationship between the object and the end tool before the object moves, that is, the corresponding relationship between the first initial pose of the end tool and the second initial pose of the object.
  • Inverse( object T tool ) is the inverse matrix of object T tool .
  • Fig. 14 is an exemplary flow chart of determining an end tool target pose offset according to some embodiments of the present specification.
  • step 1220 can determine the target pose offset of the end tool through the following sub-steps: Step 1221, determine the object and end tool based on the first initial pose and the second initial pose The second pose correspondence relationship; Step 1222, based on the pose offset and the second pose correspondence, determine the target pose offset.
  • the second pose correspondence object T tool of the first initial pose of the end tool relative to the second initial pose of the object may refer to the pose that needs to be maintained between the pose of the end tool and the pose of the object. relative relationship.
  • the second pose correspondence object T tool of the first initial pose of the end tool relative to the second initial pose of the object can be determined by formula (3):
  • s T marker3_static is the second initial pose of the object
  • Inverse( s T marker3_static ) is the inverse matrix of s T marker3_static
  • s T marker2_static is the first initial pose of the end tool.
  • the target pose offset can be determined by the above formula (2).
  • the second pose correspondence can be determined and recorded when the operator inputs the recording signal.
  • the operator can input the recording signal multiple times to record multiple sets of data on the correspondence between the object and the end tool.
  • the latest recorded data of the pose correspondence between the object and the end tool may be used as the second pose correspondence.
  • the target pose offset of the end tool determined according to the corresponding relationship between the pose offset and the second pose is the amount of movement required for the end tool to adjust from the first initial pose to the target pose, so according to the target pose
  • the offset controls the movement of the end tool, that is, when the end tool completes the target pose offset, the pose correspondence between the end tool and the object (the second preset area 400 ) is restored to the position of the two before the object movement. posture correspondence.
  • Step 1230 adjust the end tool to the target pose based on the target pose offset, so as to control the end tool to actively follow the movement of the object.
  • step 1230 may be performed by processor 130 .
  • the corresponding target pose offset of the end tool can be controlled to reach the target pose, so that the end tool actively follows the movement of the object, and the relative position of the end tool and the object remain unchanged for subsequent operations.
  • the pose adjustment amount can be transformed into the reference coordinate system, so as to determine the robotic arm device 110 for carrying the end tool.
  • the amount of pose change in the reference coordinate system, and according to the amount of pose change, the robot arm device 110 is controlled to drive the end tool to move, so that when the robot arm device 110 completes the movement of the pose change amount, the end tool completes the target position
  • the movement of the pose offset reaches the target pose, and at the same time, the pose correspondence between the end tool and the object returns to the second pose correspondence.
  • the process 1200 may further include a step of: obtaining a first pose correspondence between the end tool and the reference coordinate system.
  • step 1230 may include: determining the target pose based on the first pose correspondence and the target pose offset.
  • the corresponding relationship between the end tool and the first pose of the reference coordinate system can be understood as a change relationship between the reference datum point of the reference coordinate system and the first initial pose of the end tool before the object moves.
  • the corresponding relationship between the end tool and the first pose of the reference coordinate system may be denoted as B T Tool_static .
  • the first pose correspondence relationship B T Tool_static can be calculated from the forward kinematics of each joint position of the robotic arm device 110 in the surgical robot 100 .
  • the pose change amount of the robotic arm device 110 can be determined by formula (4):
  • BT tool_dynamic actually includes BT tool and tool T marker2 .
  • B T tool is the actual control amount of the robotic arm device 110 .
  • the tool T marker2 is used to define the motion correspondence between the robotic arm device 110 and the end tool. Since there are many ways in which the mechanical arm device 110 drives the end tool, it is necessary to uniquely define the movement mode in which the mechanical arm device 110 drives the end tool through the corresponding motion, so that the end tool can be uniquely determined by determining the movement of the mechanical arm device 110. The movement of the tool realizes any desired posture adjustment by driving the end tool through the mechanical arm device 110 . It should be noted that the tool T marker2 can be calibrated in advance, such as hand-eye calibration.
  • the controller or processor outputs a pose-following completion signal when detecting that the movement of the end tool has completed the pose adjustment.
  • the pose-following completion signal may be output through a flashing light provided on the robotic arm, or through an output device connected to a controller or a processor. This embodiment does not limit the specific form of the pose-following completion signal.
  • the controller when the controller detects the following stop signal, it stops detecting and acquiring the current pose of the active follow-up zone. At this time, the operator can manually adjust the pose of the end tool, and the adjustment can be arbitrary.
  • the adjustment process described above may be used in hip replacement surgery.
  • the end tool may include an acetabular reamer or an acetabular cup, and the operator may provide an active follow-up function for the operator during the process of reaming or preparing a cup for the surgical object.
  • the surgical robot 100 can prompt the operator whether to enable the active follow function, and when the operator chooses to enable the active follow function, the surgical robot 100 can control the end tool Adjust the pose of itself (that is, the end tool) following the change of the object's pose, so that the relative pose between the end tool and the object remains unchanged.
  • the operator may also choose not to enable the active following function, at this time, the surgical robot 100 will not control the end tool to follow the change of the object's pose.
  • the end tool can be an acetabular rasp or an acetabular cup
  • the initial pose correspondence between the end tool and the object can be the relationship between the central axis of the end tool and the active follow-up zone.
  • the central axes coincide.
  • the acetabular fossa may be ground with the acetabular reamer (end tool) prior to the cupping procedure for hip replacement surgery, , you can drag the acetabular reamer to the active follow-up area, then adjust the pose of the acetabular reamer so that the corresponding relationship between the acetabular reamer and the acetabular socket is the desired pose, and then make the acetabular socket Preparations for bone grinding, such as preparing surgical instruments, etc.
  • the user inputs a recording signal, and the controller or processor detects the recording signal, the poses of the acetabular reamer and the acetabular fossa are obtained according to the recorded signal, and the pose of the acetabular reamer is used as the initial tool pose (that is, the first initial pose), and the pose of the acetabular fossa is used as the initial tool pose.
  • the user can input the recording signal by stepping on the foot pedal of the robot, so that the controller obtains the pose of the acetabular rasp and the pose of the acetabular fossa according to the recorded signal. Then, the pose following signal is input through the second stepping mode of the pedal, and the controller uses the current pose of the acetabular reamer and the acetabular fossa as the initial tool pose and initial object pose respectively according to the pose following signal. The pose correspondence between them is used as the initial pose correspondence, and the initial pose offset of the initial tool pose relative to the initial object pose is determined.
  • the object pose offset of the current pose of the hip joint relative to its initial object pose is obtained, and according to the initial pose offset and the object pose offset to determine the pose adjustment of the end tool, and control the movement of the end tool according to the pose adjustment, so that when the end tool completes the movement, it will output on the display device to indicate the completion of pose following
  • the pose correspondence between the end tool and the hip joint returns to the initial pose correspondence.
  • the acetabular cup before the cupping operation in hip replacement surgery, it is usually necessary to move the acetabular cup (end tool) to the preset cupping position in the active follow-up zone, where the acetabular cup is
  • the acetabular cup reaches the preset cupping position, its central axis coincides with the central axis of the active follow-up area.
  • the central axis of the acetabular cup may also coincide with the active follow-up area.
  • the controller detects the corresponding relationship between the acetabular cup and the acetabular fossa in real time during the process of moving the acetabular cup to the preset cupping position, and generates Record the signal, and automatically record the pose of the active follow-up area and the pose of the end tool according to the recorded signal, and when the pose following signal input by the doctor through the pedal is detected, the latest recorded active follow-up area
  • the pose and the pose of the end tool are used as the initial object pose and the initial tool pose respectively, and the correspondence between the initial object pose and the initial tool pose is taken as the initial pose correspondence. Afterwards, the surgical robot 100 can automatically adjust the pose of the end tool to follow the change of the pose of the object.
  • the output device may output a prompt signal indicating that the pose following is completed.
  • the surgical robot 100 can also automatically perform the pose locking operation after the pose following is completed.
  • the posture following of the acetabular cup can occur during the operator's cupping operation. The operator can perform the cupping operation on the acetabular cup by hitting the acetabular cup knocking handle. The acetabular cup is in the Collision with the acetabular fossa after being hit may cause the pose of the acetabular fossa to change. At this time, the operator can turn on the active follow function of the surgical robot 100 . In some embodiments, after the active following is completed, the operator can perform the cupping operation again according to the prompt signal.
  • the end tool can include an acetabular cup and the object can include the patient's acetabular socket.
  • the acetabular socket may be in a state where acetabular socket grinding surgery has been completed.
  • the central axis of the acetabular cup needs to coincide or approximately coincide with the central axis of the acetabular socket.
  • the general operator manually controls the movement of the acetabular cup to the vicinity of the acetabular fossa. Adjust the posture of the acetabular cup so that the central axis of the acetabular cup coincides or approximately coincides with the central axis of the acetabular socket.
  • the positioning device 120 can detect the pose of the acetabular cup, and the processor 130 can judge whether the pose of the acetabular cup satisfies the first preset condition. In response thereto, processor 130 may calibrate the acetabular cup.
  • the first preset condition may include two judgment thresholds: the distance threshold between the central axis of the acetabular cup and the central axis of the acetabular fossa, and the distance threshold between the central axis of the acetabular cup and the central axis of the acetabular fossa. Angle threshold between axes.
  • the first preset condition may include two judgment conditions: whether the distance between the central axis of the acetabular cup and the central axis of the acetabular fossa is less than a distance threshold, and whether the distance between the central axis of the acetabular cup and the central axis of the acetabular fossa Whether the angle of is less than the angle threshold.
  • the distance threshold and the angle threshold can be set according to actual conditions. The setting of distance threshold and angle threshold can ensure that the acetabular cup is located near the acetabular fossa.
  • the operator can manually reset the Control, adjust the acetabular cup, and move the acetabular cup to the acetabular fossa.
  • the first predetermined condition may further include that the central axis of the acetabular cup and the central axis of the acetabular socket do not coincide or do not substantially coincide.
  • the processor 130 does not need to Align the acetabular cup.
  • Fig. 15 is an exemplary flow chart of calibrating the acetabular cup according to some embodiments of the present specification
  • Fig. 16 to Fig. 19 are schematic diagrams of different poses of the acetabular cup according to some embodiments of the present specification.
  • the process 1500 may include the following steps.
  • procedure 1500 may be performed by surgical robot 100 .
  • the operations of flow 1500 presented below are intended to be illustrative. In some embodiments, the process may be accomplished with one or more additional operations not described and/or one or more operations not discussed.
  • Step 1510 when the force on the acetabular cup is greater than the threshold, detect the direction of the force on the acetabular cup.
  • step 1510 may be performed by processor 130 .
  • the acetabular cup after the acetabular cup enters the acetabular fossa, the acetabular cup will be subjected to a collision force when it touches the inner wall of the acetabular fossa (as shown in FIG. 16 ) during movement.
  • the collision force can be measured by a force sensor disposed on the robotic arm device 110 .
  • the force of the acetabular cup When the force of the acetabular cup is greater than the threshold, it indicates that the acetabular cup has been in contact with the inner wall of the acetabular socket and cannot be further penetrated. At this time, the force direction of the acetabular cup can be detected, and the force direction of the acetabular cup can be compared with the axial direction of the acetabular fossa, so as to judge the position and posture of the acetabular cup in the acetabular fossa, and facilitate the acetabular alignment. Adjust the pose of the cup.
  • Step 1520 judging whether the force direction of the acetabular cup is parallel to the axis of the acetabular fossa.
  • step 1520 may be performed by processor 130 .
  • the condition for judging whether to be parallel does not have to be exact parallel, but may include parallel or substantially parallel.
  • substantially parallel may mean that the included angle between two directions judged to be parallel is within 10°. In some embodiments, substantially parallel may mean that the included angle between two directions judged to be parallel is within 5°. In some embodiments, when the force direction of the acetabular cup is parallel or substantially parallel to the axis of the acetabular socket (for example, the angle between the force direction of the acetabular cup and the axis of the acetabular socket is within 10°), The processor 130 can determine whether the result is yes, otherwise, the determination result is no.
  • step 1520 If the judgment result of step 1520 is negative, indicating that the force direction of the acetabular cup is not parallel to the axis of the acetabular fossa, then step 1530 is executed. If the judgment result of step 1520 is yes, indicating that the force direction of the acetabular cup is parallel to the axis of the acetabular fossa, then step 1550 is executed.
  • Step 1530 perform the first operation.
  • step 1530 may be performed by processor 130 .
  • the first operation may be used to adjust the axis of the acetabular cup to coincide or approximately coincide with the axis of the acetabular fossa.
  • the first operation may include: sub-step 1531, adjusting the axis direction of the acetabular cup so that the axis of the acetabular cup is parallel to the axis of the acetabular fossa; sub-step 1532, when the axis of the acetabular cup is parallel to the axis
  • the acetabular cup is controlled to move toward the axis of the acetabular sockets until the axes of the acetabular cups coincide or roughly coincide with the axes of the acetabular sockets.
  • the processor 130 can control the mechanical arm device 110 to drive the acetabular cup to rotate to adjust the axis direction of the acetabular cup until the position and posture of the acetabular cup measured by the positioning device 130 shows that the axis of the acetabular cup is in line with
  • the axes of the acetabular fossa are parallel, as shown in Figures 16 and 17.
  • the axis of the acetabular cup is parallel to the axis of the acetabular fossa, it is judged whether the distance between the axis of the acetabular cup and the axis of the acetabular fossa is greater than a threshold.
  • the distance between the two is less than or equal to the threshold, it indicates that the distance between the axis of the acetabular cup and the axis of the acetabular fossa meets the condition of approximately coincidence, and at this time the axis of the acetabular cup and the axis of the acetabular fossa approximately coincide.
  • Step 1540 may be performed during movement of the acetabular cup toward the axis of the acetabular socket.
  • Step 1540 judging whether the acetabular cup is subjected to a blocking force during the movement toward the axis of the acetabular fossa.
  • step 1540 may be performed by processor 130 .
  • the acetabular cup when the acetabular cup is subjected to a blocking force during the movement toward the axis of the acetabular socket, it means that the acetabular cup collides with the inner wall of the acetabular socket, and the acetabular cup is too deep into the acetabular socket. Proceed to step 1550 .
  • the acetabular cup can be controlled to continue moving toward the axis of the acetabular fossa until the axis of the acetabular cup coincides with the axis of the acetabular fossa or roughly Coincidentally, the posture adjustment of the acetabular cup is completed.
  • Step 1550 perform the second operation.
  • step 1550 may be performed by processor 130 .
  • the second operation may be used to adjust the axis of the acetabular cup to coincide or approximately coincide with the axis of the acetabular fossa.
  • the second operation may include: substep 1551, controlling the acetabular cup to move away from the acetabular fossa along the axis direction parallel to the acetabular fossa; substep 1552, when the force of the acetabular cup is not greater than the threshold , to control the movement of the acetabular cup toward the axis of the acetabular socket until the axis of the acetabular cup coincides or roughly coincides with the axis of the acetabular socket.
  • the acetabular cup when the acetabular cup is too deep into the acetabular fossa and the force is large, the acetabular cup can be controlled to move away from the acetabular fossa along the axis parallel to the acetabular fossa to reduce the impact of the acetabular fossa on the hip.
  • the pressure of the acetabular cup is shown in Figure 17 and Figure 18.
  • the processor 130 can control the mechanical arm device 110 to drive the acetabular cup to move toward the axis of the acetabular fossa, Alignment is complete until the axis of the acetabular cup coincides or approximately coincides with the axis of the acetabular socket.
  • Fig. 20 is a schematic diagram of an exemplary structure of a surgical robot in a joint rasp stage according to some embodiments of the present specification. As shown in FIG. 20 , this specification also provides a surgical robot 2000 . In some embodiments, the surgical robot 2000 includes a robotic arm device 2010, a positioning device, and a processor.
  • the robotic arm assembly 2010 may be used to control end tool motion. In some embodiments, the robotic arm device 2010 can also output set feedback information to the end tool.
  • the robotic arm assembly 2010 may include a base 2011 and an arm assembly 2012 .
  • the arm assembly 2012 is fixed to the base 2011, and the base 2011 provides a supporting installation platform.
  • the end of the arm assembly 2012 away from the base 2011 is provided with an end tool 2040 .
  • the arm assembly 2012 may be connected to the end tool 2040 through a link 2050 , and the arm assembly 2012 drives the end tool 2040 to move through the link 2050 .
  • the central axis of link 2050 may coincide with the central axis of tip tool 2040 .
  • the end of the link 2050 away from the end tool 2040 further includes an operation aid 2051 .
  • the end tool 2040 when the surgical operation is in the stage of joint grinding, the end tool 2040 can be an acetabular file, the connecting rod 2050 can be an acetabular file link, and the operation aid 2051 can be an acetabular file power device.
  • the end tool 2040 when the surgical procedure is in the cupping stage (not shown in FIG. 20 ), can be an acetabular cup, the link 2050 can be an acetabular cup link, and the operation aid 2051 can be an acetabular cup.
  • the end cap of the cup connecting rod during the cupping process, the operator can transmit power to the acetabular cup by tapping the end cap for cupping operation.
  • the positioning device can be used to obtain pose information of a preset target.
  • predetermined targets may include end tools, surgical objects, or other markers, among others.
  • the positioning device may be used to obtain the first pose information of the end tool 2040 and the second pose information of the object.
  • the positioning device may include a positioning information acquisition structure 2025 and markers.
  • the positioning information acquisition structure can cooperate with the marker to acquire the corresponding pose information.
  • the markers may include a first marker 2021 disposed on the base 2011 and a third marker 2023 disposed on the object.
  • the positioning device may further include a second marker 2022 for indicating the pose of the end tool 2040 .
  • second marker 2022 may be disposed on tip tool 2040 .
  • the second marker 2022 can also be set on the joint of the mechanical arm that fixes the end tool 2040 .
  • the first marker 2021 can be used as a reference point of the reference coordinate system
  • the second marker 2022 can be used to determine the pose information of the end tool
  • the third marker 2023 can be used to determine the pose information of the object.
  • the marker may include at least one of an optical array, an electronic locator, an electromagnetic locator, a GPS locator, a gyroscope, and an acceleration sensor.
  • the first marker 2021 can be a first optical array
  • the second marker 2022 can be a second optical array
  • the third marker 2033 can be a third optical array
  • the positioning information acquisition structure 2025 may correspondingly include an optical camera.
  • the processor can obtain the pose information of the end tool 2040 through the positioning device, and control the robotic arm device 2010 to provide the first feedback information to the operator based on the pose information. In some embodiments, the processor can control the movement of the robotic arm device 2010 to control the poses of the robotic arm device 2010 and the end tool. In some embodiments, the number of processors may be one or more.
  • the surgical robot 2000 may also include a memory, an input device, and an output device 2060 .
  • the processor, memory, input device, and output device may be connected by a bus or otherwise.
  • the memory can be used to store software programs, computer-executable programs and modules, such as the program instructions/modules corresponding to the process 200 in this specification (for example, the distance stiffness function determination module and the first feedback force output module).
  • the processor executes various functional applications and data processing of the device by running software programs, instructions and modules stored in the memory.
  • the memory may mainly include an area for storing programs and an area for storing data.
  • the storage program area can store an operating system, an application program required by at least one function; the storage data area can store data created according to the use of the terminal, and the like.
  • the memory may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage devices.
  • the memory may also include memory located remotely from the processor, and these remote memories may be connected to the device through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
  • the input device can be used to receive inputted numerical or character information, and to generate key signal input related to user settings and function control of the device.
  • the output device 2060 can be used to output various warning information, for example, the warning information issued when the end tool 2040 does not leave the first preset area 300 according to the preset path.
  • the output device 2060 can also be used to output the pose correspondence between the end tool 2040 and the second preset area 400 and/or the first preset area 300 .
  • the output device 2060 can also be used to output various pose information determined by the positioning device, such as pose information of the end tool 2040 and the like.
  • the output device 2060 can also be used to output a signal that the end tool 2040 pose adjustment is completed.
  • the output device 2060 may include a display, and various warning information output by the output device 2060 may be displayed through the display.
  • the output device 2060 can also output the first preset area 300 and/or the second preset area 400 (or the constrained space and its sub-constrained spaces), and the operator can observe from the display of the output device 2060 and Confirm the specific position of the end tool in the first preset area 300 and/or the second preset area 400 (or the constrained space and its sub-constrained spaces).
  • Fig. 21 is an exemplary flow chart of a method for guiding motion of an end tool according to some embodiments of the present specification.
  • this specification also provides a movement guidance method for the end tool as shown in the process 2100, which can realize the position guidance and movement direction guidance of the end tool, through the position guidance and movement direction of the end tool Guided optimization of end-tool motion paths for improved speed, safety, and accuracy in orthopedic surgery.
  • This specification also provides a surgical robot used in the above method. In some embodiments, the above method can be performed by the surgical robot.
  • the surgical robot may include a robotic arm device, a positioning device, and a processor.
  • the robotic arm device can be used to drive the end tool to move under the action of external force.
  • the robotic arm assembly can output a feedback force to the end tool.
  • the positioning device can be used to obtain the current position of the end tool in the constrained space, wherein the central axis of the constrained space is the preset path of the end tool, and the constrained space can include at least two sub-constrained spaces nested together .
  • the processor can be used to detect the current position of the end tool by the positioning device.
  • the processor may determine the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space. In some embodiments, the processor may output the first feedback force toward the preset path to the end tool through the robotic arm device according to the current position and the distance stiffness function corresponding to the current position.
  • the mechanical arm device can refer to the mechanical arm device 2010 of the surgical robot 2000 shown in Figure 20
  • the positioning device can refer to the positioning device of the surgical robot 2000 shown in Figure 20
  • the processor can refer to the The processor of the surgical robot 2000 will not be described in detail here.
  • the process 2100 mainly includes the following steps.
  • Step 2110 Detect the current position of the end tool. If the current position of the end tool is not on the preset path of the constraint space, determine the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space.
  • the constraint space may include two or more sub-constraint spaces nested in the same direction, and the central axes of each sub-constraint space coincide.
  • the method for determining the sub-constrained space includes: dividing the constrained space into two or more layers from the inside to the outside according to the preset ratio of the effective radius range of each sub-constrained space, and using each layer as a sub-constrained space .
  • the constraint space can be divided into three layers, that is, the constraint space is divided into three sub-constraint spaces.
  • the three sub-constrained spaces are free constrained space, buffer constrained space and boundary constrained space from inside to outside.
  • different distance stiffness functions may be configured for different sub-constraint spaces, wherein the distance stiffness functions are constant functions or increasing functions.
  • the sub-constraint space whose distance stiffness function is a constant function and the sub-constraint space whose distance stiffness function is an increasing function are set alternately.
  • distance stiffness functions corresponding to adjacent sub-constraint spaces have the same distance stiffness value at the common boundary.
  • the distance stiffness function corresponding to the free constraint space is the first constant stiffness function; the distance stiffness function corresponding to the buffer constraint space located in the middle layer of the constraint space is a monotonically increasing quadratic curve;
  • the distance stiffness function corresponding to the boundary constraint space is the second constant stiffness function.
  • the structure of the confined space can refer to the structure of the first preset area 300 shown in FIG. 3 and the structure of the second preset area 400 shown in FIG. 4 , which will not be repeated here.
  • Step 2120 Output the first feedback force toward the preset path to the end tool according to the current position and the distance stiffness function corresponding to the current position.
  • the distance stiffness value corresponding to the current position is determined, and the product of the target distance corresponding to the current position and the distance stiffness value is used as the first An absolute value of the feedback force, and output the first feedback force toward the preset path to the end tool.
  • the direction of the first feedback force is vertical and toward a preset path.
  • the target distance between the current position and the preset path, and the target distance equivalent corresponding to the target distance determines the distance stiffness value corresponding to the current position; determine the absolute value of the first feedback force according to the target distance equivalent and the distance stiffness value, and output the first feedback force towards the preset path to the end tool feedback force.
  • Some embodiments of the present specification also provide an end tool motion guiding device, which is used to implement the end tool motion guiding method provided in any of the above embodiments, and the device can be implemented by software or hardware.
  • the end tool motion guiding device may include: a distance stiffness function determination module and a first feedback force output module.
  • the distance stiffness function determination module can be used to detect the current position of the end tool, if the current position of the end tool is not on the preset path of the constraint space, determine the sub-constraint corresponding to the current position of the end tool space and a distance stiffness function corresponding to the sub-constraint space, wherein the central axis of the constrained space is the expected path of the end tool, and the constrained space includes at least two sub-constrained spaces nested in the same direction.
  • the first feedback force output module may be configured to output a first feedback force toward the desired path to the end tool according to the current position and a distance stiffness function corresponding to the current position.
  • the first feedback force output module can also be used to determine the target distance between the current position and the preset path, and the target distance equivalent corresponding to the target distance (ie, the current distance equivalent); according to The target distance equivalent and the distance stiffness function corresponding to the current position determine the distance stiffness value corresponding to the current position; according to the target distance equivalent and the distance stiffness value, output to the end tool the Set the first feedback force of the path.
  • the end tool motion guiding device may further include an angle stiffness function determination module, configured to determine the current angle of the current clamp when it is detected that the current angle between the end tool and the preset path is greater than zero.
  • the angular stiffness function corresponding to the included angle interval where the angle is located, wherein the number of included angle intervals is greater than or equal to 2.
  • the number of the included angle intervals is 3; the angular stiffness functions corresponding to the included angle intervals containing the largest included angle and the included angle intervals containing the smallest included angle are both constant functions, located at the angle interval containing the largest included angle
  • the angular stiffness function corresponding to the included angle interval between the included angle interval and the included angle interval containing the smallest included angle is an increasing function; the angular stiffness functions corresponding to adjacent included angle intervals have the same angular stiffness value at the common boundary.
  • the end tool motion guiding device may also include a rotational moment output module, configured to output to the end tool according to the current included angle and the angular stiffness function corresponding to the current included angle to make the end tool A rotational torque (for example, a first feedback torque) for the tool to rotate to the preset path.
  • a rotational moment output module configured to output to the end tool according to the current included angle and the angular stiffness function corresponding to the current included angle to make the end tool A rotational torque (for example, a first feedback torque) for the tool to rotate to the preset path.
  • the end tool motion guiding device may further include a damping function determination module, configured to determine the corresponding value of the current motion speed of the end tool when it is detected that the direction of the current motion speed of the end tool deviates from the preset path.
  • the speed range and the damping function corresponding to the speed range are both constant functions, located between the speed range containing the maximum allowable speed and the speed range containing the minimum allowable speed.
  • the damping degree function corresponding to the speed interval is an increasing function; the damping function corresponding to the adjacent speed interval has the same damping value at the common boundary.
  • the end tool motion guiding device may further include a second feedback force output module, configured to output to the end tool a direction toward the preset force according to the current motion speed and the damping function corresponding to the current motion speed.
  • the second feedback force for the path.
  • the end tool motion guiding device may further include a warning module, configured to perform a braking operation on the end tool when it is detected that the feature point of the end tool is located at the outer boundary of the restricted space, and Output the first alert message.
  • the target position of the end tool is the top of the buffer constraint space.
  • the current position of the end tool is detected by the stiffness distance function determination module, and if the end tool is not currently on the preset path of the constrained space, then the current position of the end tool is determined
  • the corresponding sub-constraint space and the distance stiffness function corresponding to the sub-constraint space through the first feedback force output module, output the first feedback force toward the preset path to the end tool according to the current position and the distance stiffness function corresponding to the current position; because
  • the constraint space includes at least two sub-constraint spaces nested together. Different sub-constraint spaces correspond to different distance stiffness functions.
  • the first feedback force received by the end tool in different sub-constraint spaces varies in different forms, so that users can According to the change form of the first feedback force, the sub-constrained space where the end tool is currently located, that is, the approximate position of the end tool in the constraint space, realizes the position guidance of the end tool; the user can also make the user according to the first feedback force
  • the direction determines the movement direction of the end tool, realizes the guidance of the movement direction of the end tool, and optimizes the movement path of the end tool through the position guidance and movement direction guidance of the end tool, thereby improving the speed, safety and accuracy of orthopedic surgery.
  • Fig. 22 is an exemplary flowchart of a method for real-time correction of the pose of an end tool according to some embodiments of this specification
  • Fig. 23 is a schematic diagram of another exemplary module structure of a surgical robot according to some embodiments of this specification.
  • this specification also provides a real-time correction method of the end tool pose as shown in the process 2200 and a surgical robot 2300 as shown in FIG. 23 . This method helps to improve the efficiency and accuracy of end tool pose adjustment, thereby improving the efficiency and success rate of joint replacement.
  • the method can control the surgical robot 2300 to correct the pose of the end tool in real time according to the hip joint pose change, so as to restore the pose correspondence between the end tool and the acetabular socket to the original second position posture correspondence.
  • process 2200 may be performed by controller 2330 of surgical robot 2300 .
  • controller 2330 may be a processor, server, or other computing device disposed inside or outside surgical robot 2300 .
  • the controller 2330 may be implemented in software and/or hardware.
  • the surgical robot 2300 mainly includes a first posture acquisition device 2310 , a second posture acquisition device 2320 and a controller 2330 .
  • the first pose acquiring device 2310 may be disposed on the object and maintain a fixed corresponding relationship with the object, so as to acquire the pose of the object.
  • the second pose acquiring device 2320 may be disposed on a robot arm or an end tool for moving the end tool, and used to acquire the pose of the end tool.
  • the controller 2330 can be used to obtain the first pose correspondence between the end tool and the reference coordinate system. In some embodiments, the controller 2330 may also be used to acquire the correspondence between the end tool and the second pose of the object.
  • the controller 2330 may also be used to obtain the object pose offset when detecting that the object pose changes. In some embodiments, the controller 2330 can also be used to control the movement of the end tool according to the first pose correspondence and the object pose offset, so as to restore the pose correspondence between the end tool and the object to the second pose correspondence .
  • the first posture acquisition device 2310 and the second posture acquisition device 2320 can refer to the positioning device of the surgical robot 2000 shown in FIG. 20
  • the controller 2330 can refer to the processor of the surgical robot 2000 shown in FIG. 20 , I won't repeat them here.
  • the process 2200 mainly includes the following steps.
  • Step 2210 obtain the first pose correspondence between the end tool and the reference coordinate system, and the second pose correspondence between the end tool and the object.
  • Step 2220 when it is detected that the pose of the object changes, acquire the pose offset of the object.
  • Step 2230 Control the movement of the end tool according to the first pose correspondence and the object pose offset, so as to restore the pose correspondence between the end tool and the object to the second pose correspondence.
  • Fig. 24 is an exemplary flowchart of a method for automatically adjusting the pose of an acetabular cup according to some embodiments of this specification
  • Fig. 25 is a schematic diagram of another exemplary module structure of a surgical robot according to some embodiments of this specification.
  • this specification also provides a method for automatically adjusting the pose of an acetabular cup as shown in a process 2400 and a surgical robot 2500 as shown in FIG. 25 .
  • This method can greatly reduce the posture adjustment time of the acetabular cup, and can adjust the acetabular cup to the best posture for cupping, which helps to improve the success rate of acetabular cup installation.
  • the method can adjust the posture of the acetabular cup through the current posture information of the acetabular cup and the current posture information of the acetabular socket, so that when the acetabular cup is located at the preset cupping position, its center The axis coincides with the central axis of the acetabular fossa.
  • process 2400 may be performed by controller 2530 of surgical robot 2500 .
  • controller 2530 may be a processor, server, or other computing device disposed inside or outside surgical robot 2300 .
  • the controller 2530 may be implemented in software and/or hardware.
  • the surgical robot 2500 mainly includes a motion module 2510 , a pose acquisition module 2520 and a controller 2530 .
  • the motion module 2510 may include a robotic arm for moving the acetabular cup.
  • the pose acquisition module 2520 may include an acetabular cup pose unit and an acetabular fossa pose unit.
  • the pose acquisition module 2520 can obtain the current pose information of the acetabular cup in real time through the acetabular cup pose unit. Get the current pose information of the object's acetabular socket.
  • the controller 2530 can be used to adjust the pose of the acetabular cup according to the current pose information of the acetabular cup and the current pose information of the acetabular fossa, so that the central axis of the acetabular cup is in line with the acetabulum The central axis of the fossa coincides.
  • the motion module 2510 can refer to the robotic arm device 2010 of the surgical robot 2000 shown in FIG. 20
  • the pose acquisition module 2520 can refer to the positioning device of the surgical robot 2000 shown in FIG.
  • the processor of the surgical robot 2000 shown in 20 will not be described in detail here.
  • the process 2400 mainly includes the following steps.
  • Step 2410 control the acetabular cup to move from the current position to the preset cupping position, and detect the pose adjustment signal in real time, and obtain the current pose information of the acetabular cup and the acetabulum of the target object when the pose adjustment signal is detected
  • a target subject (also referred to as a subject) may be a patient currently undergoing acetabular cup placement.
  • the target subject may be a patient who has completed an acetabular socket grinding procedure and is awaiting implantation of the acetabular cup.
  • the preset cupping position is the cupping position determined by the doctor before operation, and its center is close to the center of the acetabular fossa.
  • the posture adjustment signal may be triggered by an external force, which is a collision force received when the acetabular cup touches the inner wall of the acetabular socket during the movement to the preset cupping position.
  • an external force which is a collision force received when the acetabular cup touches the inner wall of the acetabular socket during the movement to the preset cupping position.
  • the force sensor arranged on the mechanical arm detects that the acetabular cup is subjected to an external force due to contact with the inner wall of the acetabular socket, a pose adjustment signal is generated, and the acetabular cup is obtained according to the pose adjustment signal The current pose information of the object and the current pose information of the acetabular socket of the target object.
  • the acetabular cup By moving first, and then generating a posture adjustment signal based on external force, the acetabular cup is first adjusted longitudinally, and then the acetabular cup is adjusted laterally through the posture adjustment signal and subsequent steps, realizing automatic Adjust the position of the acetabular cup.
  • the current position and orientation information of the acetabular cup and the current position of the acetabular socket of the target object are obtained.
  • posture information adjust the posture of the acetabular cup according to the current posture information of the acetabular cup and the current posture information of the acetabular fossa, so that the central axis of the acetabular cup coincides with the central axis of the acetabular fossa.
  • the acetabular cup Before the longitudinal adjustment of the acetabular cup, the acetabular cup should be adjusted laterally so that the central axis of the acetabular cup is parallel to the central axis of the acetabular fossa at the beginning of the first movement, which helps Increases the amount of longitudinal movement of the acetabular cup during first movement.
  • the method for making the central axis of the acetabular cup coincide with the central axis of the acetabular socket may include: adjusting the position of the acetabular cup according to the current pose information of the acetabular cup and the current pose information of the acetabular socket so that the central axis of the acetabular cup is parallel to the central axis of the acetabular fossa to update the current pose information of the acetabular cup; adjust the central axis of the acetabular cup according to the updated current pose information of the acetabular cup in A position in a preset direction so that the central axis of the acetabular cup coincides with the central axis of the acetabular fossa, wherein the preset direction is a direction perpendicular to the central axis of the acetabular fossa.
  • the posture adjustment signal is generated when it is detected that the acetabular cup has moved through a preset step size, and the preset step size is smaller than the minimum distance between the preset cupping position and the inner wall of the acetabular socket.
  • the distance between the current acetabular cup and the preset cupping place is set as H, and H is equal to 8 preset steps.
  • a pose adjustment signal is generated every time the preset step length is completed, and the current pose information of the acetabular cup and the current pose information of the acetabular fossa of the target object are obtained according to the pose adjustment signal.
  • the acetabular cup is adjusted horizontally, then the acetabular cup is adjusted longitudinally, and then the acetabular cup is subsequently adjusted based on the pose adjustment signal, realizing the real-time pose correction of the acetabular cup.
  • the mode of automatically adjusting the pose of the acetabular cup is triggered by a pose following signal, which is generated by the doctor by stepping on the foot pedal of the surgical robot.
  • a pose following signal which is generated by the doctor by stepping on the foot pedal of the surgical robot.
  • the doctor drags the acetabular cup to the vicinity of the acetabular socket and needs the surgical robot to automatically perform the posture adjustment of the acetabular cup, step on the foot pedal of the surgical robot, and the controller Motion information generates pose follow-up signals.
  • the doctor needs to terminate the mode of automatically adjusting the pose of the acetabular cup he can also generate a pose follow-up termination signal by stepping on the foot pedal.
  • the way of stepping on the pedals used to generate the pose following signal is different from the way and/or timing of stepping on the pedals used to generate the end signal of pose following.
  • pose adjustment signals generated based on different trigger methods correspond to different automatic adjustment modes, and different automatic adjustment modes require different pose follow-up signals to trigger, and different pose follow-up signals can be triggered by different feet The way the pedal is pressed is generated.
  • Step 2420 adjust the pose of the acetabular cup according to the current pose information of the acetabular cup and the current pose information of the acetabular socket, so that the central axis of the acetabular cup coincides with the central axis of the acetabular socket.
  • the pose of the acetabular cup is adjusted according to the current pose information of the acetabular cup and the current pose information of the acetabular socket, so that the central axis of the acetabular cup is parallel to the central axis of the acetabular socket, so that Update the current pose information of the acetabular fossa; adjust the position of the central axis of the acetabular cup in the preset direction according to the updated current pose information of the acetabular cup, so that the central axis of the acetabular cup and the acetabular fossa
  • the central axes coincide. It is used to complete the coincidence adjustment of the acetabular cup in the lateral direction.
  • the preset direction is a direction perpendicular to the central axis of the acetabular fossa.
  • Step 2430 if the posture-adjusted acetabular cup is not at the preset cupping position, repeat the above steps 2410 and 2420 .
  • the pose adjustment signal is triggered by an external force.
  • the robotic arm is controlled to drive the acetabular cup to move toward the preset cupping position until the external force on the acetabular cup due to touching the inner wall of the acetabular socket is detected.
  • Generate a pose adjustment signal according to the external force and obtain the current pose information of the acetabular cup and the current pose information of the acetabular socket of the target object according to the pose adjustment signal, and obtain the current pose information of the acetabular cup and the hip
  • the current pose information of the acetabular socket adjusts the pose of the acetabular cup so that the central axis of the acetabular cup coincides with the central axis of the acetabular socket.
  • the current pose information of the acetabular socket adjusts the pose of the acetabular cup so that the central axis of the acetabular cup coincides with the central axis of the acetabular socket.
  • the posture adjustment signal is generated when it is detected that the acetabular cup movement completes a preset step.
  • the mechanical arm is controlled to drive the acetabular cup after the posture adjustment to move toward the preset cupping position, and a posture adjustment signal is generated when it is detected that the robotic arm drives the acetabular cup to complete a preset step length, and The current pose of the acetabular cup is adjusted according to the pose adjustment signal, so that the central axis of the acetabular cup after the pose adjustment coincides with the central axis of the acetabular fossa.
  • a preset step size Generate a posture adjustment signal when a preset step is completed, and adjust the current posture of the acetabular cup according to the posture adjustment signal, so that the central axis of the acetabular cup after posture adjustment is in line with the hip The central axes of the sockets coincide.
  • the coordinates of the preset cupping place are set as the coordinates of the origin, and the direction from the preset cupping place to the opening of the acetabular fossa is positive. If the longitudinal coordinate of the acetabular cup after the pose adjustment is smaller than the longitudinal coordinate of the preset place where the cup is placed, the control arm drives the acetabular cup to move toward the opening of the acetabular fossa; if the longitudinal coordinate of the acetabular cup after the pose adjustment If it is greater than the longitudinal coordinate of the preset cupping place, the robotic arm is controlled to drive the acetabular cup to move toward the bottom of the acetabular socket.
  • the acetabular cup can be controlled to move to the preset cupping position through an automatic adjustment mode, and the central axis of the acetabular cup at the preset cupping position coincides with the central axis of the acetabular fossa.
  • the movement of the acetabular cup to the preset cupping position can also be controlled by mixing the two automatic adjustment modes, and the central axis of the acetabular cup at the preset cupping position and the center of the acetabular socket axis coincident.
  • the acetabular cup can be moved to the vicinity of the preset cupping position through the automatic adjustment mode in which the posture adjustment signal is triggered by an external force, and then the automatic adjustment mode in which the posture adjustment signal is generated based on the preset step length , to control the movement of the acetabular cup from the vicinity of the preset cupping position to the preset cupping position, and its central axis coincides with the central axis of the acetabular fossa.
  • the automatic adjustment mode of the posture adjustment signal is triggered by an external force, so that the acetabular cup moves to the vicinity of the preset cupping position, the acetabular cup will make a reciprocating movement near the preset cupping position.
  • the current automatic adjustment mode can be switched to an automatic adjustment mode that generates a posture adjustment signal based on the preset step length.
  • the pose of the mechanical arm when it is detected that the pose-adjusted acetabular cup is at the preset cupping position, the pose of the mechanical arm can be locked through a pose lock command, thereby locking the pose of the acetabular cup, which can be convenient Perform the cupping operation on the pose-locked acetabular cup.
  • aspects of the present application may be illustrated and described in several patentable categories or circumstances, including any new and useful process, machine, product or combination of substances, or any combination of them Any new and useful improvements.
  • various aspects of the present application may be entirely executed by hardware, may be entirely executed by software (including firmware, resident software, microcode, etc.), or may be executed by a combination of hardware and software.
  • the above hardware or software may be referred to as “block”, “module”, “engine”, “unit”, “component” or “system”.
  • aspects of the present application may be embodied as a computer product comprising computer readable program code on one or more computer readable media.
  • a computer storage medium may contain a propagated data signal embodying a computer program code, for example, in baseband or as part of a carrier wave.
  • the propagated signal may have various manifestations, including electromagnetic form, optical form, etc., or a suitable combination.
  • a computer storage medium may be any computer-readable medium, other than a computer-readable storage medium, that can be used to communicate, propagate, or transfer a program for use by being coupled to an instruction execution system, apparatus, or device.
  • Program code residing on a computer storage medium may be transmitted over any suitable medium, including radio, electrical cable, fiber optic cable, RF, or the like, or combinations of any of the foregoing.
  • the computer program codes required for the operation of each part of this application can be written in any one or more programming languages, including object-oriented programming languages such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB.NET, Python etc., conventional procedural programming languages such as C language, Visual Basic, Fortran 2003, Perl, COBOL 2002, PHP, ABAP, dynamic programming languages such as Python, Ruby and Groovy, or other programming languages.
  • the program code may run entirely on the user's computer, or as a stand-alone software package, or run partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server.
  • the remote computer can be connected to the user computer through any form of network, such as a local area network (LAN) or wide area network (WAN), or to an external computer (such as through the Internet), or in a cloud computing environment, or as a service Use software as a service (SaaS).
  • LAN local area network
  • WAN wide area network
  • SaaS service Use software as a service
  • numbers describing the quantity of components and attributes are used. It should be understood that such numbers used in the description of the embodiments use the modifiers "about”, “approximately” or “substantially” in some examples. grooming. Unless otherwise stated, “about”, “approximately” or “substantially” indicates that the stated figure allows for a variation of ⁇ 20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximations that can vary depending upon the desired characteristics of individual embodiments. In some embodiments, numerical parameters should take into account the specified significant digits and adopt the general digit reservation method. Although the numerical ranges and parameters used in some embodiments of the present application to confirm the breadth of the scope are approximate values, in specific embodiments, such numerical values are set as precisely as practicable.

Abstract

一种手术机器人(100)及其控制方法,该方法包括:获取末端工具的位姿信息;基于该位姿信息向操作者提供第一反馈信息。

Description

一种手术机器人及其控制方法
交叉引用
本申请要求于2021年7月9日提交的申请号为202110778767.7的专利申请的优先权,于2021年7月9日提交的申请号为202110777345.8的专利申请的优先权,于2021年7月9日日提交的申请号为202110778776.6的专利申请的优先权,其内容通过引用的方式并入本文。
技术领域
本申请涉及医疗设备技术领域,特别涉及一种手术机器人及其控制方法。
背景技术
引导型机器人是以操作者为主执行手术操作的机器人,这种机器人提升了操作者的参与度,能够有效降低发生意外的概率,提升手术的成功率。而在手术过程中,操作者对于引导型机器人的末端工具的位姿信息的掌握情况及控制程度很大程度上影响了手术的成功率。因此,本申请提出一种能够使操作者及时准确地掌握末端工具的位姿信息的手术机器人及其控制方法。
发明内容
本说明书实施例一方面提供一种手术机器人控制方法,包括:获取末端工具的位姿信息;基于所述位姿信息向操作者提供第一反馈信息。
本说明书实施例另一方面提供一种手术机器人,包括:机械臂装置,用于控制末端工具运动;定位装置,用于获取所述末端工具的第一位姿信息以及对象的第二位姿信息;处理器,被配置为:获取末端工具的第一位姿信息;基于所述第一位姿信息向操作者提供第一反馈信息。
本说明书实施例另一方面提供一种末端工具运动引导方法,包括:检测末端工具的当前位置,若末端工具的当前位置未在约束空间的预设路径上,则确定所述末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数,其中,所述约束空间的中心轴为所述末端工具的预设路径,所述约束空间包括嵌套在一起的至少两个子约束空间;根据所述当前位置以及所述当前位置对应的距离刚度函数,向所述末端工具输出朝向所述预设路径的第一反馈力。
本说明书实施例另一方面提供一种手术机器人,包括:机械臂装置,用于在外力作用下带动末端工具运动,以及向所述末端工具输出反馈力;定位装置,用于获取末端工具在约束空间中的当前位置,所述约束空间的中心轴为所述末端工具的预设路径,所述约束空间包括嵌套在一起的至少两个子约束空间;处理器,用于通过所述定位装置检测末端工具的当前位置,若所述末端工具的当前位置未在所述约束空间的预设路径上,确定所述末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数;根据所述当前位置以及所述当前位置对应的距离刚度函数,通过所述机械臂向所述末端工具输出朝向所述预设路径的第一反馈力。
本说明书实施例另一方面提供一种末端工具位姿的实时修正方法,包括:获取末端工具与参考坐标系的第一位姿对应关系,以及所述末端工具与所述对象的第二位姿对应关系;检测到所述对象的位姿发生变化时,获取对象位姿偏移量,其中,所述对象的位姿偏移量为所述对象的当前位姿相对于所述对象的初始位姿的偏移量;根据所述第一位姿对应关系和所述对象位姿偏移量控制所述末端工具运动,使所述末端工具与所述对象的位姿对应关系恢复至所述第二位姿对应关系。
本说明书实施例另一方面提供一种手术机器人,包括:第一姿态获取装置,设置于对象上并与对象保持固定的对应关系,用于获取所述对象的位姿;第二姿态获取装置,设置于用于携带末端工具运动的机械臂或末端工具上,用于获取所述末端工具的位姿;控制器,用于获取末端工具与参考坐标系的第一位姿对应关系,以及所述末端工具与所述对象的第二位姿对应关系;在检测到所述对象的位姿发生变化时,获取对象位姿偏移量;根据所述第一位姿对应关系和所述对象位姿偏移量控制所述末端工具运动,使所述末端工具与所述对象的位姿对应关系恢复至所述第二位姿对应关系。
本说明书实施例另一方面提供一种自动调整髋臼杯位姿的方法,包括:S1、控制髋臼杯从当前位置向预设打杯处运动,并实时检测位姿调整信号,以及在检测到位姿调整信号时,获取所述 髋臼杯的当前位姿信息与对象的髋臼窝的当前位姿信息,所述预设打杯处位于所述髋臼窝中;S2、根据所述髋臼杯的当前位姿信息和所述髋臼窝的当前位姿信息调整所述髋臼杯的位姿,以使所述髋臼杯的中心轴与所述髋臼窝的中心轴重合;S3、如果位姿调整后的髋臼杯未处于所述预设打杯处,则重复执行上述S1和S2。
本说明书实施例另一方面提供一种手术机器人,包括:运动模块,包括机械臂,用于带动髋臼杯运动;位姿获取模块,包括髋臼杯位姿单元和髋臼窝位姿单元,用于通过所述髋臼杯位姿单元实时获取髋臼杯的当前位姿信息以及通过所述髋臼窝位姿单元实时获取对象的髋臼窝的当前位姿信息;控制器,用于根据所述髋臼杯的当前位姿信息和所述髋臼窝的当前位姿信息,调整所述髋臼杯的位姿,以使所述髋臼杯的中心轴与所述髋臼窝的中心轴重合。
附图说明
本申请将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的手术机器人的示例性模块结构示意图;
图2是根据本说明书一些实施例所示的手术机器人控制方法的示例性流程图;
图3是根据本说明书一些实施例所示的第一预设区域的示例性结构图;
图4是根据本说明书一些实施例所示的第二预设区域的示例性结构图;
图5是根据本说明书一些实施例所示的施加第一反馈力的示例性流程图;
图6是根据本说明书一些实施例所示的距离刚度函数的示例性图像示意图;
图7是根据本说明书一些实施例所示的施加第一反馈力矩的示例性流程图;
图8是根据本说明书一些实施例所示的角度刚度函数的示例性图像示意图;
图9是根据本说明书一些实施例所示的施加第二反馈力的示例性流程图;
图10是根据本说明书一些实施例所示的阻尼函数的示例性图像示意图;
图11是根据本说明书一些实施例所示的施加第二反馈力矩的示例性流程图;
图12是根据本说明书一些实施例所示的主动调整末端工具位姿的示例性流程图;
图13是根据本说明书一些实施例所示的确定对象位姿偏移量的示例性流程图;
图14是根据本说明书一些实施例所示的确定末端工具目标位姿偏移量的示例性流程图;
图15是根据本说明书一些实施例所示的校准髋臼杯的示例性流程图;
图16~图19是根据本说明书一些实施例所示的髋臼杯的不同位姿示意图;
图20是根据本说明书一些实施例所示的手术机器人在关节磨锉阶段的示例性结构示意图;
图21是根据本说明书一些实施例所示的末端工具运动引导方法的示例性流程图;
图22是根据本说明书一些实施例所示的末端工具位姿实时修正方法的示例性流程图;
图23是根据本说明书一些实施例所示的手术机器人的另一示例性模块结构示意图;
图24是根据本说明书一些实施例所示的自动调整髋臼杯位姿方法的示例性流程图;
图25是根据本说明书一些实施例所示的手术机器人的另一示例性模块结构示意图。
具体实施方式
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时, 也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
本说明书实施例中提供了一种手术机器人,其主要用于进行医疗手术例如骨科手术等。在一些实施例中,手术机器人主要包括机械臂装置、定位装置以及处理器,其中机械臂装置可以用于控制末端工具运动。
在一些实施例中,定位装置可以获取末端工具的位姿信息。在一些实施例中,处理器可以基于末端工具的位姿信息向操作者提供第一反馈信息。操作者可以通过第一反馈信息及时了解末端工具的当前位置,从而提升对末端工具的控制精度,提升手术的成功率。
在一些实施例中,定位装置还可以获取手术操作的对象的位姿信息。在一些实施例中,处理器可以基于末端工具的位姿信息和对象的位姿信息控制末端器械主动跟随对象运动。在一些实施例中,处理器可以基于末端工具的位姿信息和对象的位姿信息主动调整末端工具相对于对象的位姿关系,以满足手术的要求。
本说明书实施例中还提供一种手术机器人控制方法,该控制方法可以用于控制上述的手术机器人。
参见图1,图1是根据本说明书一些实施例所示的手术机器人的示例性模块结构示意图。在一些实施例中,手术机器人100主要包括机械臂装置110、定位装置120、以及处理器130。
在一些实施例中,机械臂装置110可以用于带动末端工具运动。在一些实施例中,机械臂装置110还可以向末端工具输出设定的反馈力。机械臂装置110的更多内容可以参照图20及相关描述,在此不再赘述。
在一些实施例中,定位装置120(也称为导航装置)可以用于获取预设目标的位姿信息。在一些实施例中,预设目标可以包括末端工具、手术操作的对象或其他标记物等。在一些实施例中,定位装置120可以用于获取末端工具的第一位姿信息与对象的第二位姿信息。定位装置120可以包括但不限于光学原理定位装置、声学原理定位装置、电磁定位器、GPS定位器、陀螺仪、加速度传感器等。定位装置120的更多内容可以参照图20及其相关描述,在此不再赘述。
处理器130可以分别与定位装置120及机械臂装置110数据互通。在一些实施例中,处理器130可以通过定位装置120获取末端工具的位姿信息,并基于该位姿信息控制机械臂装置110向操作者提供第一反馈信息。在一些实施例中,处理器130可以控制机械臂装置110的运动从而控制机械臂装置110及末端工具的位姿。在一些实施例中,处理器130可以包括中央处理单元(CPU)、数字信号处理器(DSP)、系统芯片(SoC)、微处理器(MCU)等,或其任意组合。在一些实施例中,处理器130可以是本地的或远程的。例如,处理器130可以通过网络访问存储在机械臂装置110或手术机器人100的其他部件(例如定位装置120)中的信息和/或数据。再例如,处理器130可以直接与机械臂装置110连接,以便访问存储在其中的信息和/或数据。在一些实施例中,处理器130可以在云平台上实现。仅作为示例,所述云平台可以包括私有云、公共云、混合云、社区云、分布式云、跨云、多云等,或其任何组合。
参见图2,图2是根据本说明书一些实施例所示的手术机器人控制方法的示例性流程图。如图2所示,流程200包括下述步骤。在一些实施例中,流程200可以由手术机器人100执行。下面呈现的流程200的操作意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成该流程。
步骤210、获取末端工具的位姿信息。在一些实施例中,步骤210可以由处理器130执行。
在一些实施例中,末端工具可以是指位于机械臂装置110末端的用于手术的操作器具或治疗材料等。示例性的,在骨科手术中,末端工具可以是用于清理患处的锉刀,也可以是用于替换病变体的假体。在一些实施例中,手术机器人100可以用于髋关节手术中,末端工具可以是髋臼锉或髋臼杯。
在一些实施例中,位姿信息可以包括位置和姿态等信息。在一些实施例中,末端工具的位姿信息可以包括末端工具的当前位置。在一些实施例中,末端工具的当前位置可以是末端工具在第一预设区域中的位置。在一些实施例中,末端工具的当前位置可以是末端工具的特征点与第一预设区域的中轴线之间的距离。在一些实施例中,当末端工具在第一预设区域内时,末端工具的位姿信息可以包括末端工具的当前角度。在一些实施例中,末端工具的当前角度可以是末端工具在第一预设区域中的角度。在一些实施例中,末端工具的当前角度可以是末端工具的中轴线与第一预设区域的中轴线之间的夹角的角度。在一些实施例中,末端工具的当前位置和/或当前角度也可以是其他预设区域内的位置或角度,本说明书实施例对此不作限制。
图3是根据本说明书一些实施例所示的第一预设区域的示例性结构图。请参照图3,在一 些实施例中,末端工具的操作区域可以包括第一预设区域300,末端工具可以在第一预设区域300进行手术操作。在一些实施例中,第一预设区域300可以是由手术操作的对象的目标位置附近的可操作空间确定的区域范围。在一些实施例中,当手术操作的对象(也称为手术对象或对象)运动,末端工具对应的第一预设区域300可以跟随手术操作的对象运动。在一些实施例中,定位装置120可以确定末端工具在第一预设区域300内的位姿,处理器130可以根据末端工具的当前位姿信息向操作者施加第一反馈信息以使末端工具保持在第一预设区域300内,并使操作者可以根据第一反馈信息确定末端工具在第一预设区域300内的位姿是否满足手术要求。
在一些实施例中,第一预设区域300可以包括锥形区域(如图3所示)。在另一些实施例中,第一预设区域300也可以包括碗状区域或柱状区域。在另一些实施例中,第一预设区域300还可以包括锥形区域与柱状区域(如图4所示),此时图4中的中部柱状区域420可以对应于手术对象的皮肤部分。需要说明的是,第一预设区域300的实际范围可以由操作者根据具体情况和/或个人习惯预先进行设置。
在一些实施例中,第一预设区域300的中心轴可以为末端工具的预设路径,即操作者所希望的末端工具的运动路径。在一些实施例中,第一预设区域300的顶端D点(如图3与图4中的锥形区域的顶点D点)为末端工具在对象上的目标位置,即预设路径的末端(或称为下端)为末端工具的手术位置。
在一些实施例中,当末端工具位于第一预设区域300内时,操作者可以手动拖拽末端工具执行手术操作。在一些实施例中,当操作者对末端工具施加的外力不超过预设值时,末端工具的运动范围被限制在第一预设区域300内,即在操作者对末端工具施加的外力不超过预设值时,操作者无法将末端工具移至第一预设区域300以外。在一些实施例中,将末端工具限制在第一预设区域300内的外力的预设值可以由用户设定,例如,用户可以将该预设值设置为80牛顿。在一些实施例中,将末端工具限制在第一预设区域300内的外力的预设值的取值范围可以包括40牛顿~80牛顿。在一些实施例中,将末端工具限制在第一预设区域300内的外力的预设值的取值范围可以包括20牛顿~100牛顿。在一些实施例中,将末端工具限制在第一预设区域300内的外力的预设值的取值范围可以包括60牛顿~80牛顿。
在一些实施例中,由于第一预设区域300为末端工具的操作区域,因此,第一预设区域300的锥形区域的锥角范围与操作区域的开口大小有关,而锥角的范围代表了末端工具与预设路径之间的允许角度的范围。因此在实际应用中,操作者可以根据具体情况设定锥形区域的锥角范围。在一些实施例中,锥形区域的锥角的角度范围可以为20°~40°。在一些实施例中,锥形区域的锥角的角度范围可以为25°~35°。在一些实施例中,锥形区域的锥角的角度可以为30°,此时锥形区域的半锥角的角度为15°,如图3所示。
在一些实施例中,第一预设区域300的锥形区域的高度代表了操作区域的深度,即从对象皮肤表层的开口至操作区域(目标位置)之间的距离长度,因此在实际应用中,操作者可以根据具体情况设定锥形区域的高度范围。在一些实施例中,锥形区域的高度范围可以为100mm~300mm。在一些实施例中,锥形区域的高度范围可以为150mm~250mm。在一些实施例中,锥形区域的高度可以为200mm。
图4是根据本说明书一些实施例所示的第二预设区域的示例性结构图。在一些实施例中,参见图4,末端工具的操作区域还可以包括第二预设区域400,末端工具可以在第二预设区域400跟随对象运动。在一些实施例中,当末端工具位于第二预设区域400内时,当手术操作的对象运动,机械臂装置110可以根据手术操作的对象的运动信息,主动控制末端工具产生相应的运动。即,当手术对象运动,此时机械臂装置110可以根据相应信息(例如对象的运动信息、末端工具的受力信息等)控制末端工具主动运动,以保证末端工具与手术对象的相对位置不变或基本不变,便于手术的后续操作。
在一些实施例中,第二预设区域400的范围可以是预先设置(如,由操作者或厂家设置)的。在一些实施例中,第二预设区域400可以是第一预设区域300上方一定范围内的区域。在一些实施例中,第二预设区域400可以是与第一预设区域300有一定重合范围的区域。在一些实施例中,参见图4,第二预设区域400可以是包含第一预设区域300的区域。需要说明的是,本说明书所述的“上”、“下”指相对方向,参见图4,沿第一预设区域300的中心轴的方向靠近对象上的目标位置的一方为“下”,沿第一预设区域300的中心轴的方向远离对象上的目标位置的一方为“上”。在一些实施例中,第二预设区域400的形状可以是任意形状。
在一些实施例中,第二预设区域400可以包括第一预设区域300。在一些实施例中,如图 4所示,图4中的顶部阴影区域410、中部柱状区域420、下部锥状区域430可以均属于第二预设区域400,当末端工具位于上述三个区域时,机械臂装置110可以主动控制末端工具运动。
在一些实施例中,第二预设区域400可以不包括第一预设区域300。在一些实施例中,图4中的顶部阴影区域410可以属于第一预设区域400,中部柱状区域420与下部锥状区域430(即第一预设区域300)可以不属于第二预设区域400,当末端工具位于顶部阴影区域410时,机械臂装置110可以主动控制末端工具跟随对象运动;当末端工具位于中部柱状区域420或下部锥状区域430时,可以由操作者控制末端工具跟随对象运动。
在一些实施例中,末端工具的位姿信息可以包括末端工具的距离信息与角度信息。其中,末端工具的距离信息可以包括末端工具当前位姿与预设路径之间的目标距离;末端工具的角度信息可以包括末端工具的轴线与预设路径(例如第一预设区域300的锥形区域的中心轴)之间的当前角度。
在一些实施例中,末端工具的位姿信息可以由定位装置120确定,处理器130通过定位装置120获取末端工具的位姿信息。
在一些实施例中,末端工具上可以设置有用于位姿跟踪的特征点,该特征点的位姿信息可以代表末端工具的位姿信息。
步骤220、基于位姿信息向操作者提供第一反馈信息。在一些实施例中,步骤220可以由处理器130执行。
在一些实施例中,操作者可以是指手术机器人的操作人员,例如医生等。在一些实施例中,第一反馈信息是根据末端工具的位姿信息确定的,不同的末端工具的位姿信息对应不同的第一反馈信息。操作者可以基于接收到的第一反馈信息确定对应的末端工具的位姿信息。
在一些实施例中,第一反馈信息可以包括第一反馈力。此时,步骤220可以包括以下操作:基于位姿信息向操作者施加第一反馈力。其中,第一反馈力是指反馈给操作者的力,第一反馈力的大小及方向与末端工具的位姿信息及运动方向相关。在一些实施例中,第一反馈力还可以基于末端工具的位姿信息非线性变化,以便增强提醒效果。在一些实施例中,当末端工具与预设路径之间的距离较小时,第一反馈力的大小可以较小。在一些实施例中,当末端工具与预设路径之间的距离为0时,第一反馈力的大小可以为0。在一些实施例中,当末端工具与预设路径之间的距离较大时,第一反馈力的大小可以较大。在一些实施例中,当末端工具位于第一预设区域300的边缘时,末端工具与预设路径之间的距离较大,此时第一反馈力可以突然增大,以发挥提醒警示操作者的效果。关于第一反馈力的更多内容可以参照图5及其相关描述,在此不再赘述。
在一些实施例中,第一反馈信息还可以包括第一反馈力矩。此时,步骤220还可以包括以下操作:基于位姿信息向操作者施加第一反馈力矩。其中,第一反馈力矩是指反馈给操作者的力矩。在一些实施例中,第一反馈力矩可以基于末端工具的位姿信息非线性变化,以便增强提醒效果。关于第一反馈力矩的更多内容可以参照图7及其相关描述,在此不再赘述。
在一些实施例中,流程200还可以包括步骤230:在第一预设区域,当末端工具运动时,使末端工具向操作者提供第二反馈信息。在一些实施例中,步骤230可以由机械臂装置110执行。
在一些实施例中,当末端工具在第一预设区域300内运动时,基于末端工具的运动信息,处理器130可以使末端工具向操作者提供第二反馈信息。在一些实施例中。末端工具的运动信息可以包括末端工具的运动速度、运动角速度等信息。
在一些实施例中,第二反馈信息可以基于阻尼系数确定。在一些实施例中,阻尼系数可以基于末端工具的运动速度或运动角速度对应的阻尼函数确定。在一些实施例中,可以采用对象的生物特征来确定阻尼系数,以模拟手术操作时的真实触感,第二反馈信息可以基于对象的生物特征确定。在一些实施例中,对象的生物特征可以包括脂肪、关节液等人体特征。
在一些实施例中,第二反馈信息可以包括第二反馈力。第二反馈力可以是指基于末端工具的运动速度确定的、向操作者施加的力。关于第二反馈力的更多内容可以参照图9及其相关描述,在此不再赘述。
在一些实施例中,第二反馈信息还可以包括第二反馈力矩。第二反馈力矩可以是基于末端工具的运动角速度确定的、向操作者施加的力矩。关于第二反馈力矩的更多内容可以参照图11及其相关描述,在此不再赘述。
在一些实施例中,流程200还可以包括步骤240:当末端工具不满足预设条件时,输出警示信息。在一些实施例中,步骤240可以由处理器110执行。
在一些实施例中,预设条件可以是针对末端工具的相关参数设置的范围区间或判断条件, 例如末端工具的允许受力的大小范围、末端工具的实际路径与预设路径是否相符等。在一些实施例中,预设条件的数量可以是一个或两个及以上的多个。在一些实施例中,警示信息是用于向操作者示警、引起操作者注意的信号。在一些实施例中,警示信息可以包括但不限于声音警示信息、视觉警示信息等。例如警示信息可以是警铃声、指定颜色的灯光、指定预警图案、指定频率闪烁的光源等。在一些实施例中,警示信息可以由相应的零部件发出,例如扬声器可以发出警铃声、灯泡可以发出指定颜色的灯光或指定频率闪烁的光线等。
在一些实施例中,步骤240可以包括:当末端工具未按照预设路径脱离第一预设区域时,输出警示信息。当末端工具的实际运动路径与预设路径不一致时,末端工具从第一预设区域300脱离的过程中,可能会对手术对象的开口区域的伤口造成不利影响,进而影响到手术的效果。因此,当末端工具未按照预设路径脱离第一预设区域300时,处理器130可以控制对应元器件发出相应的警示信息。
在一些实施例中,步骤240还可以包括:当末端工具受到的力或力矩大于预设阈值时,输出警示信息。在一些实施例中,预设阈值可以包括末端工具受到的外力或外力产生的力矩的最大值。为了避免末端工具在外力的作用下脱离第一预设区域300,操作者向末端工具施加的外力或力矩应处于预设阈值范围内,以避免影响手术效果。因此,当末端工具受到的力或力矩大于预设阈值时,处理器130可以控制对应元器件发出相应的警示信息。
在一些实施例中,末端工具可以包括六维力传感器。六维力传感器可以用于检测末端工具受到的力和/或力矩,例如末端工具与手术操作对应的对象上的目标位置的接触力、操作者施加在末端工具上的拖动力等。在一些实施例中,六维力传感器还可以对检测到的力信号进行低通滤波,以过滤掉操作者手部或者手术对象身体抖动等噪声,从而提高力检测的准确性。
在一些实施例中,当检测到手术对象运动时,流程200还可以包括其他步骤用于调整末端工具的位姿,以使末端工具主动跟随对象运动。有关主动调整末端工具位姿的更多内容,请参照图12及相关描述,在此不再赘述。
图5是根据本说明书一些实施例所示的施加第一反馈力的示例性流程图。如图5所示,流程500可以包括下述步骤。在一些实施例中,流程500可以由手术机器人100执行。下面呈现的流程500的操作意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成该流程。
步骤510、获取末端工具的当前位置和当前刚度,基于当前位置和当前刚度确定第一反馈力。在一些实施例中,步骤510可以由处理器130执行。
在一些实施例中,末端工具的当前位置可以是末端工具的特征点在第一预设区域300中相对于预设路径的位置。在一些实施例中,基于末端工具的当前位置,可以确定末端工具上的特征点距离第一预设区域的预设路径的当前距离(也称为目标距离)。在一些实施例中,末端工具的特征点可以是末端工具上用于位置跟踪的点。在一些实施例中,末端工具的当前刚度是指末端工具抵抗远离预设路径的能力。末端工具的当前刚度与末端工具的当前位置相关。例如,末端工具距离预设路径越远,末端工具的当前刚度可以越大。
在一些实施例中,当前位姿对应的目标距离与当前刚度的值的乘积可以作为第一反馈力的大小。在一些实施例中,第一反馈力的方向可以由末端工具朝向预设路径的,即第一反馈力的方向可以是朝向预设路径的。
在一些实施例中,末端工具的当前刚度与当前位姿中的当前位置具有对应关系。在一些实施例中,对应关系可以是表格形式,一个距离值或者一个距离范围可以对应一个刚度值。在另一些实施例中,对应关系还可以是函数形式,距离值(例如,当前距离)可以作为函数的自变量,刚度值(例如,当前刚度)可以作为函数的因变量,每个距离值可以根据函数关系确定一个对应的刚度值。
在一些实施例中,对应关系可以是预先存储在处理器130中的,也可以是临时输入的。在一些实施例中,操作者可以查看或修改对应关系。
在一些实施例中,当前刚度可以基于距离刚度函数确定。在一些实施例中,距离刚度函数的自变量可以是末端工具当前位置与预设路径之间的当前距离,通过距离刚度函数可以确定与该距离对应的当前刚度。
在另一些实施例中,距离刚度函数的自变量可以是末端工具的特征点在当前位置时在第一预设区域300内相对于预设路径的距离当量。在一些实施例中,距离当量可以是指末端工具的特征点在当前位置时相对于预设路径的当前距离与最大距离的比值,即锥形区域中,末端工具的特征点 相对于预设路径的距离与第一预设区域的边界处相对于预设路径的距离的比值。在确定了末端工具的当前位置对应的距离后,可以确定该距离对应的距离当量;根据该距离当量以及该当前位置对应的距离刚度函数,可以确定当前位置对应的当前刚度。
图6是根据本说明书一些实施例所示的距离刚度函数的示例性图像示意图。请参照图6,图6中所示坐标系的横坐标为末端工具的当前距离当量,即距离刚度函数的自变量为距离当量时的图像。在一些实施例中,距离刚度函数的自变量(例如,距离当量)的取值区间可以为0~1。在一些实施例中,距离刚度函数可以是自变量取值区间内的分段函数。在另一些实施例中,距离刚度函数也可以是自变量取值区间内的非分段函数。在一些实施例中,距离刚度函数可以包括常数函数与单调递增二次曲线函数。在另一些实施例中,距离刚度函数还可以包括离散函数。在还一些实施例中,距离刚度函数还可以包括其他单调递增的函数,例如三次函数、单调递增分段函数等。
在一些实施例中,距离刚度函数的自变量采用距离当量,可使末端工具在同一区域的边界上沿第一预设区域300的轴线方向的不同位置处受到的第一反馈力是相同的。如图3所示,点A与点B分别为内层区域310的边界点,虽然A点与B点两点距离第一预设区域300的中心轴(预设路径)的距离是不同的,但二者均位于同一区域的边界上,两者对应的距离当量是相同的,因此末端工具在边界点A与其在边界点B受到的第一反馈力是相同的。这样操作者可以通过感知末端工具在当前位置提供的第一反馈力来判断末端工具是否已经到达或临近第一预设区域300中的各区域的边界,从而确定末端工具的位置范围。
请参照图3,以图3中的内层区域310作为示例,将图3中内层区域310的边界点C对应的半径作为参考半径R ,设定M为距离刚度函数,末端工具在该边界点C处受到的第一反馈力为F=M·R 。若末端工具的当前位置位于该参考半径的中心点处,在该参考半径的中心点
Figure PCTCN2022104671-appb-000001
处受到的第一反馈力为
Figure PCTCN2022104671-appb-000002
同理,如果末端工具当前位于边界点B所在半径的中间点上,末端工具的当前位置对应的最大半径为R B,当前位置与预设路径的距离为
Figure PCTCN2022104671-appb-000003
末端工具在当前位置处受到的第一反馈力为
Figure PCTCN2022104671-appb-000004
即末端工具在距离当量相同的当前位置所受到的第一反馈力相同。
在一些实施例中,距离刚度函数在超过一半的自变量取值区间内连续。在一些实施例中,如图6所示,距离刚度函数的自变量可以包括三个连续的取值区间,三个取值区间可以分别对应第一预设区域300的内层区域310、中层区域320、外层区域330,此时距离刚度函数可以在两个或三个取值区间内连续。设定第一个取值区间(对应于第一预设区域的内层区域310)与第二个取值区间(对应于第一预设区域的中层区域320)的交界点为第一交界点E,第二个取值区间与第三个取值区间(对应于第一预设区域的外层区域330)的交界点为第二交界点F。此时第一个取值区间(内层区域310)的第一交界点E处对应的距离刚度函数值可以与第二个取值区间(中层区域320)的第一交界点E处的距离刚度函数值相同,从而使得距离刚度函数可以在第一个取值区间(内层区域310)与第二个取值区间(中层区域320)内连续。第二个取值区间(中层区域320)的第二交界点F处对应的距离刚度函数值可以与第三个取值区间(外层区域330)的第二交界点F处的距离刚度函数值相同,从而使得距离刚度函数可以在第二个取值区间(中层区域320)与第三个取值区间(外层区域330)内连续。在一些实施例中,距离刚度函数在超过60%的自变量取值区间内连续。在一些实施例中,距离刚度函数在超过80%的自变量取值区间内连续。在一些实施例中,距离刚度函数在超过90%的自变量取值区间内连续。在一些实施例中,距离刚度函数在超过95%的自变量取值区间内连续。在一些实施例中,距离刚度函数在对应于第一预设区域300的整个自变量取值区间内连续。通过设置距离刚度函数连续,可以使得第一反馈力的大小连续,从而避免操作者在操作过程中有顿挫感,提升操作体验。
在一些实施例中,距离刚度函数的导数不小于第一预设值。通过第一预设值对距离刚度函数的导数的取值范围进行限制,从而对距离刚度函数的增减性进行限制。在一些实施例中,第一预设值可以是0,或其他接近0的正数数值。在一些实施例中,当第一预设值为0时,对应的距离刚度函数的导数可以是0或者大于0的正数,此时距离刚度函数可以包括常数函数或递增函数。在一些实施例中,当第一预设值是其他接近0的正数数值(例如0.01、0.001等)时,对应的距离刚度函数的导数为正数,此时距离刚度函数可以包括递增函数。
在一些实施例中,距离刚度函数可以包括一个一阶导数不连续点。即,可以存在两个相邻 的自变量取值区间,在这两个取值区间的交界点处,距离刚度函数的一阶导数不连续,距离刚度函数在此交界点处的变化率不一致,距离刚度函数在此交界点处的图像的切线斜率不一致。例如图6中所示的F点处,F点左侧的距离刚度函数为递增函数,递增函数在F点处的一阶导数大于0;F点右侧的距离刚度函数为常数函数,常数函数在F点处的一阶导数等于0,因此F点为距离刚度函数的一阶导数不连续点。
在一些实施例中,距离刚度函数可以包括两个二阶导数不连续点。即,可以存在多个不同取值区间之间的两个交界点,在这两个交界点处,距离刚度函数的二阶导数不连续,距离刚度函数的导数的变化率不一致,距离刚度函数的导数图像的切线斜率不一致。在一些实施例中,距离刚度函数可以存在三个或三个以上连续的自变量取值区间,即自变量的多个取值区间之间的交界点可以有两个或两个以上,在这两个交界点处,距离刚度函数的二阶导数不连续。在一些实施例中,如图6所示,距离刚度函数的自变量可以包括三个连续的取值区间,三个取值区间可以分别对应第一预设区域300的内层区域310、中层区域320、外层区域330,内层区域310的第一交界点E处对应的距离刚度函数的二阶导数值可以与中层区域320的第一交界点E处的距离刚度函数的二阶导数值不同,中层区域320的第二交界点F处对应的距离刚度函数的二阶导数值可以与外层区域330的第二交界点F处的距离刚度函数的二阶导数值不同。在一些实施例中,距离刚度函数可以存在四个连续的自变量取值区间,第一取值区间与第二取值区间的交界点为第一交界点,第二取值区间与第三取值区间的交界点为第二交界点,第三取值区间与第四取值区间的交界点为第三交界点。距离刚度函数的二阶导数可以在第一交界点处以及第三交界点处不连续,距离刚度函数的二阶导数可以在第二交界点处连续。
在一些实施例中,距离刚度函数可以包括函数关系不同的多个自变量取值区间。在一些实施例中,距离刚度函数的自变量可以包括函数关系不同的第一取值区间、第二取值区间和第三取值区间。在一些实施例中,在距离刚度函数的自变量的第一取值区间,超过一半的区间范围内的距离刚度函数的一阶导数不大于第二预设值;在距离刚度函数的自变量的第二取值区间,超过一半的区间范围内距离刚度函数的一阶导数大于第二预设值;在距离刚度函数的自变量的第三取值区间,超过一半的区间范围内距离刚度函数的一阶导数不大于第二预设值。
在一些实施例中,距离刚度函数的自变量第一取值区间、第二取值区间和第三取值区间可以是连续的区间,结合图3,距离刚度函数的自变量第一取值区间、第二取值区间和第三取值区可以对应于第一预设区域300的三个不同的空间区域。在一些实施例中,距离刚度函数的自变量的第一取值区间可以对应第一预设区域300的内层区域310,距离刚度函数的自变量的第二取值区间可以对应第一预设区域300的中层区域320,距离刚度函数的自变量的第三取值区间可以对应第一预设区域300的外层区域330。在一些实施例中,参照图6,图6中坐标系的横坐标为距离当量,距离当量的第一取值区间的范围可以包括0~2/3,对应图6中内层区域310的边界点0~E,即此时E=2/3;距离当量的第二取值区间的范围包括2/3~5/6,对应图6中中层区域320的边界点E~F,即此时F=5/6;距离当量的第三取值区间的范围包括5/6~1,对应图6中的外层区域330的边界点为F~1。
在另一些实施例中,距离刚度函数的自变量第一取值区间、第二取值区间和第三取值区间也可以是不连续的区间。例如,距离刚度函数的自变量的取值范围可以是0-1,距离刚度函数的自变量第一取值区间可以是0-0.32,距离刚度函数的自变量第二取值区间可以是0.33-0.65,距离刚度函数的自变量第三取值区间可以是0.66-1。
在一些实施例中,第二预设值可以大于或等于第一预设值。在一些实施例中,第二预设值可以是非负数。在一些实施例中,第一预设值可以为0,第二预设值的取值范围可以也是0。在一些实施例中,当第二预设值为0时,在内层区域310中,超过一半的区间范围内的距离刚度函数的一阶导数可以为0,此时内层区域310中的距离刚度函数可以为常数函数;在中层区域320中,超过一半的区间范围内的距离刚度函数的一阶导数可以大于0,此时中层区域320中的距离刚度函数可以为递增函数;在外层区域330中,超过一半的区间范围内的距离刚度函数的一阶导数可以为0,此时外层区域330中的距离刚度函数可以为常数函数。在一些实施例中,第二预设值也可以是大于0的任意正数。由于不同空间区域对应的距离刚度函数不同,因此,末端工具在不同的空间区域内所受到的第一反馈力的变化形式不同,因此用户可以根据第一反馈力的变化确定末端工具当前所处的空间区域,即末端工具当前在第一预设区域300内的大致位姿,实现了对末端工具的位姿引导。
在一些实施例中,距离刚度函数也可以包括多个函数,自变量的不同取值区间可以使用不同的函数表示。例如,距离刚度函数可以包括常数函数与递增函数交替设置。在一些实施例中,内层区域310对应的距离刚度函数可以为第一常数刚度函数。中层区域320对应的距离刚度函数可以 为递增刚度函数。在一些实施例中,递增函数可以包括单调递增的二次曲线函数。在一些实施例中,外层区域330对应的距离刚度函数可以为第二常数刚度函数。
步骤520、基于末端工具的运动方向向操作者施加第一反馈力。在一些实施例中,步骤520可以由机械臂装置110执行。
在一些实施例中,第一反馈力的方向可以始终是由末端工具朝向预设路径的,从而为操作者提示预设路径相对于末端工具所在的方位,避免操作者将末端工具移出第一预设区域300。在一些实施例中,当末端工具从内层区域310进入中层区域320时,末端工具的运动阻力变大。在一些实施例中,当末端工具从中层区域320进入内层区域310时,由于末端工具的运动方向朝向预设路径,此时末端工具不受到阻力,即此时第一反馈力为0。在一些实施例中,当末端工具所在位姿对应的距离当量变大时,末端工具的运动阻力变大。请参照图3,以内层区域310与中层区域320为例,由于两个相邻的空间区域对应的距离刚度函数在公共边界处的距离刚度值相同,因此末端工具在从一个空间区域进入另一个空间区域(例如从内层区域310进入中层区域320)时,其受到的第一反馈力是连续变化的,而非跳变的。该连续变化的第一反馈力有助于提高操作者对末端工具的掌控力,从而提高操作者拖动末端工具运动的准确性。
在一些实施例中,在距离当量的第一取值区间(例如内层区域310对应的0~2/3范围)内,末端工具向操作者提供的第一反馈力的取值范围为0牛顿~6牛顿。在一些实施例中,在距离当量的第一取值区间内,末端工具向操作者提供的第一反馈力的取值范围为0牛顿~4牛顿。在一些实施例中,在距离当量的第一取值区间内,末端工具向操作者提供的第一反馈力的取值范围为0牛顿~8牛顿。在距离当量的第二取值区间(例如中层区域320对应的2/3~5/6范围)内,末端工具向操作者提供的第一反馈力的取值范围为6牛顿~208牛顿。在距离当量的第二取值区间内,末端工具向操作者提供的第一反馈力的取值范围为4牛顿~200牛顿。在距离当量的第二取值区间内,末端工具向操作者提供的第一反馈力的取值范围为8牛顿~220牛顿。在距离当量的第三取值区间(例如外层区域330对应的5/6~1范围)内,末端工具向操作者提供的第一反馈力的取值范围为208牛顿~250牛顿。在距离当量的第三取值区间内,末端工具向操作者提供的第一反馈力的取值范围为200牛顿~250牛顿。在距离当量的第三取值区间内,末端工具向操作者提供的第一反馈力的取值范围为220牛顿~250牛顿。
图7是根据本说明书一些实施例所示的施加第一反馈力矩的示例性流程图。如图7所示,流程700可以包括下述步骤。在一些实施例中,流程700可以由手术机器人100执行。下面呈现的流程700的操作意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成该流程。
步骤710、获取末端工具的当前角度和当前角度刚度,基于当前角度和角度刚度确定第一反馈力矩。在一些实施例中,步骤710可以由处理器130执行。
在一些实施例中,末端工具的当前角度是指末端工具的轴线与预设路径(例如第一预设区域300的锥形区域的中心轴)之间的角度。在一些实施例中,末端工具所允许的最大当前角度为第一预设区域300的锥形区域的锥角。当末端工具的轴线与预设路径重合或平行时,当前角度最小,角度值为0;当末端工具的轴线与锥形区域的边界平行时,所允许的当前角度最大,角度值为锥角的一半。在一些实施例中,角度刚度是指末端工具抵抗旋转的能力。末端工具的当前角度刚度与末端工具的当前角度相关。例如,末端工具与预设路径的角度越大,末端工具的当前角度刚度可以越大。
在一些实施例中,末端工具的当前角度刚度与当前角度具有对应关系。在一些实施例中,对应关系可以是表格形式,一个角度值或者一个角度范围可以对应一个角度刚度值。在另一些实施例中,对应关系还可以是函数形式,角度值可以作为函数的自变量,角度刚度值可以作为函数的因变量,每个角度值可以根据函数关系确定一个对应的角度刚度值。
在一些实施例中,对应关系可以是预先存储在处理器130中的,也可以是临时输入的。在一些实施例中,操作者可以查看或修改对应关系。
在一些实施例中,当前角度刚度可以基于角度刚度函数确定。在一些实施例中,角度刚度函数的自变量可以是末端工具与预设路径之间的当前角度,通过角度刚度函数可以确定与当前角度对应的当前角度刚度。
在另一些实施例中,角度刚度函数的自变量可以是末端工具的当前位姿在第一预设区域300内相对于预设路径的角度当量。在一些实施例中,角度当量可以是指末端工具的当前位姿对应的当前角度与最大角度的比值,即锥形区域中,末端工具的当前位姿对应的当前角度与锥角的一半 的比值。在确定了末端工具的当前位姿对应的当前角度后,可以确定该距离对应的角度当量;根据该角度当量以及该当前角度对应的角度刚度函数,可以确定当前角度对应的当前角度刚度。
图8是根据本说明书一些实施例所示的角度刚度函数的示例性图像示意图。请参照图8,图8中所示坐标系的横坐标为末端工具的当前角度当量,即角度刚度函数的自变量为角度当量时的图像。在一些实施例中,角度刚度函数的自变量(例如,角度当量)的取值区间可以为0~1。在一些实施例中,角度刚度函数可以包括常数函数与单调递增二次曲线函数。在另一些实施例中,角度刚度函数还可以包括离散函数。在还一些实施例中,角度刚度函数还可以包括其他单调递增的函数,例如三次函数、分段函数等。
在一些实施例中,角度刚度函数的自变量可以具有三个连续的取值区间,包含最小角度的第一角度区间,包含最大角度的第三角度区间即第三角度区间,位于第一角度区间与第三角度区间之间的第二角度区间。相应的第一预设区域300可以划分为三个不同的空间区域,包括中心轴的第一角度区域,包括锥形区域边界的第三角度区域,位于第一角度区域与第三角度区域之间的第二角度区域。需要说明的是,由于锥形区域是轴对称的,因此三个角度区域也是轴对称的。
在一些实施例中,角度刚度函数可以包括分段函数,自变量的不同取值区间对应的角度刚度函数不同。例如,角度刚度函数可以为常数函数与递增函数交替设置。在一些实施例中,第一角度区间对应的角度刚度函数可以为第一常数角度刚度函数,第二角度区间对应的角度刚度函数可以为递增角度刚度函数,第三角度区间对应的角度刚度函数可以为第二常数角度刚度函数。在一些实施例中,角度刚度函数也可以是自变量取值区间内的非分段函数。
在一些实施例中,角度刚度函数在超过一半的自变量取值区间内连续。在一些实施例中,如图8所示,角度刚度函数的自变量可以包括三个连续的取值区间。设定第一角度区间与第二角度区间的交界点为第一交界点G,第二个角度区间与第三角度区间的交界点为第二交界点H。此时第一角度区间的第一交界点G处对应的角度刚度函数值可以与第二角度区间的第一交界点G处的角度刚度函数值相同,从而使得角度刚度函数可以在第一角度区间与第二角度区间内连续。第二角度区间的第二交界点H处对应的角度刚度函数值可以与第三角度区间的第二交界点H处的角度刚度函数值相同,从而使得角度刚度函数可以在第二角度区间与第三角度区间内连续。在一些实施例中,角度刚度函数在超过60%的自变量取值区间内连续。在一些实施例中,角度刚度函数在超过80%的自变量取值区间内连续。在一些实施例中,角度刚度函数在超过90%的自变量取值区间内连续。在一些实施例中,角度刚度函数在超过95%的自变量取值区间内连续。在一些实施例中,角度刚度函数在整个自变量取值区间内连续。通过设置角度刚度函数连续,可以使得第一反馈力矩的大小连续,从而避免操作者在操作过程中有顿挫感,提升操作体验。
在一些实施例中,角度刚度函数的导数不小于第三预设值。通过第三预设值对角度刚度函数的导数的取值范围进行限制,从而对角度刚度函数的增减性进行限制。在一些实施例中,第三预设值可以是0,或其他接近0的正数数值。在一些实施例中,当第三预设值为0时,对应的角度刚度函数的导数可以是0或者大于0的正数,此时角度刚度函数可以包括常数函数或递增函数。在一些实施例中,当第三预设值是其他接近0的正数数值(例如0.01、0.001等)时,对应的角度刚度函数的导数为正数,此时角度刚度函数可以包括递增函数。
在一些实施例中,角度刚度函数可以包括一个一阶导数不连续点。即,可以存在两个相邻的自变量取值区间,在这两个取值区间的交界点处,角度刚度函数的一阶导数不连续,角度刚度函数在此交界点处的变化率不一致,角度刚度函数在此交界点处的图像的切线斜率不一致。例如图8中所示的H点处,H点左侧的角度刚度函数为递增函数,递增函数在H点处的一阶导数大于0;H点右侧的角度刚度函数为常数函数,常数函数在H点处的一阶导数等于0,因此H点为角度刚度函数的一阶导数不连续点。
在一些实施例中,角度刚度函数可以包括两个二阶导数不连续点。即,可以存在多个不同取值区间之间的两个交界点,在这两个交界点处,角度刚度函数的二阶导数不连续,角度刚度函数的导数的变化率不一致,角度刚度函数的导数图像的切线斜率不一致。在一些实施例中,角度刚度函数可以存在三个或三个以上连续的自变量取值区间,即自变量的多个取值区间之间的交界点可以有两个或两个以上,在这两个交界点处,角度刚度函数的二阶导数不连续。在一些实施例中,如图8所示,角度刚度函数的自变量可以包括三个连续的取值区间,三个取值区间为第一角度区间(即角度刚度函数的自变量的第一取值区间)、第二角度区间(即角度刚度函数的自变量的第二取值区间)与第三角度区间(即角度刚度函数的自变量的第三取值区间),第一角度区间的第一交界点G处对应的角度刚度函数的二阶导数值可以与第二角度区间的第一交界点G处的角度刚度函数的二 阶导数值不同,第二角度区间的第二交界点H处对应的角度刚度函数的二阶导数值可以与第三角度区间的第二交界点H处的角度刚度函数的二阶导数值不同。在一些实施例中,角度刚度函数可以存在四个连续的自变量取值区间,第一取值区间与第二取值区间的交界点为第一交界点,第二取值区间与第三取值区间的交界点为第二交界点,第三取值区间与第四取值区间的交界点为第三交界点。角度刚度函数的二阶导数可以在第一交界点处以及第三交界点处不连续,角度刚度函数的二阶导数可以在第二交界点处连续。
在一些实施例中,角度刚度函数可以包括函数关系不同的多个自变量取值区间。在一些实施例中,角度刚度函数的自变量可以包括函数关系不同的第一取值区间、第二取值区间和第三取值区间。在一些实施例中,角度刚度函数的函数关系不同多个自变量取值区间可以是连续的取值区间。在另一些实施例中,角度刚度函数的函数关系不同的多个自变量取值区间也可以是不连续的取值区间。在一些实施例中,在角度刚度函数的自变量的第一取值区间(第一角度区间),超过一半的区间范围内的角度刚度函数的一阶导数不大于第四预设值;在角度刚度函数的自变量的第二取值区间(第二角度区间),超过一半的区间范围内角度刚度函数的一阶导数大于第四预设值;在角度刚度函数的自变量的第三取值区间(第三角度区间),超过一半的区间范围内角度刚度函数的一阶导数不大于第四预设值。
在一些实施例中,第四预设值可以大于或等于第三预设值。在一些实施例中,第四预设值可以是非负数。在一些实施例中,第三预设值可以为0,第四预设值的取值范围可以也是0。在一些实施例中,当第四预设值为0时,在第一角度区间中,超过一半的区间范围内的角度刚度函数的一阶导数可以为0,此时第一角度区间中的角度刚度函数可以为常数函数;在第二角度区间中,超过一半的区间范围内的角度刚度函数的一阶导数可以大于0,此时第二角度区间中的角度刚度函数可以为递增的二次曲线函数;在第三角度区间中,超过一半的区间范围内的角度刚度函数的一阶导数可以为0,此时第三角度区间中的角度刚度函数可以为常数函数。由于不同角度区间对应的角度刚度函数不同,因此,末端工具在不同的角度区间对应的空间区域内所受到的第一反馈力矩的变化形式不同,因此用户可以根据第一反馈力矩的变化形式确定末端工具当前所处的空间区域,即末端工具当前在第一预设区域300内的大致位姿,实现了对末端工具的位姿引导。
在一些实施例中,角度刚度函数的自变量可以为当前位姿在第一预设区域300内相对于预设路径的角度当量。此时,请参照图8,将图8中坐标系的横坐标替换为角度当量,角度当量的第一取值区间的范围可以包括0~2/3,对应图8中第一角度区间的边界点0~G,即此时G=2/3;角度当量的第二取值区间的范围包括2/3~5/6,对应图8中第二角度区间的边界点G~H,即此时H=5/6;角度当量的第三取值区间的范围包括5/6~1,对应图8中的第三角度区间的边界点为H~1。
步骤720、基于末端工具的运动方向向操作者施加第一反馈力矩。在一些实施例中,步骤720可以由机械臂装置110执行。
在一些实施例中,第一反馈力矩的方向可以始终是由末端工具朝向预设路径的转动方向,从而为操作者提示预设路径相对于末端工具所在的姿态,避免操作者将末端工具转动到第一预设区域300外。在一些实施例中,当末端工具从角度值较小的角度区域转动至角度值较大的角度区域时,末端工具的转动阻力变大。在一些实施例中,当末端工具从角度值较大的角度区域转动至角度值较小的角度区域时,由于末端工具的转动方向朝向预设路径,此时末端工具不受到阻碍力矩,即此时第一反馈力矩为0。在一些实施例中,由于角度刚度函数的自变量的三个取值区间是连续的,因此两个相邻的取值区间所对应的角度刚度函数在公共边界处的角度刚度值相同,因此末端工具与预设路径之间的角度在从一个取值区间进入另一取值区间时,末端工具受到的第一反馈力矩是连续变化的,而非跳变的。该连续变化的第一反馈力矩有助于提高操作者对末端工具的掌控力,从而提高用户拖动末端工具运动的准确性。
在另一些实施例中,第一反馈力矩的方向也可以基于末端工具的运动方向确定。例如,第一反馈力矩的方向可以与末端工具的转动方向相反。当末端工具向远离预设路径的方向转动时,第一反馈力矩可以启动阻拦作用;当末端工具向靠近预设路径的方向转动时,第一反馈力矩可以启动助推作用,从而为操作者提示预设路径相对于末端工具所在的方位。
在一些实施例中,由于不同的取值区间对应不同的角度刚度函数,而且第一反馈力矩是基于末端工具与预设路径之间的当前角度以及该当前角度对应的角度刚度值的乘积确定的,而角度刚度值是由该当前角度以及该当前角度对应的角度刚度函数确定的,因此角度刚度函数决定着第一反馈力矩的变化形式,因此操作者可以根据第一反馈力矩的变化形式确定末端工具所在的取值区间,即确定末端工具与预计路径之间的角度范围,有助于提高用户对末端工具位姿的掌控力,从而提高 骨科手术的速度和准确性。
在一些实施例中,在角度当量的第一取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为0牛·米~17牛·米。在一些实施例中,在角度当量的第一取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为0牛·米~14牛·米。在一些实施例中,在角度当量的第一取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为0牛·米~20牛·米。在一些实施例中,在角度当量的第二取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为17牛·米~65牛·米。在一些实施例中,在角度当量的第二取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为14牛·米~62牛·米。在一些实施例中,在角度当量的第二取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为20牛·米~68牛·米。在一些实施例中,在角度当量的第三取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为65牛·米~78.5牛·米。在一些实施例中,在角度当量的第三取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为62牛·米~78.5牛·米。在一些实施例中,在角度当量的第三取值区间内,末端工具向操作者提供的第一反馈力矩的取值范围为68牛·米~78.5牛·米。
图9是根据本说明书一些实施例所示的施加第二反馈力的示例性流程图。如图9所示,流程900可以包括下述步骤。在一些实施例中,流程900可以由手术机器人100执行。下面呈现的流程900的操作意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成该流程。
步骤910、获取末端工具的当前速度和当前阻尼。在一些实施例中,步骤910可以由处理器130执行。
在一些实施例中,通过末端工具的当前速度可以确定对应的阻尼函数,从而确定当前速度对应的当前阻尼。在一些实施例中,末端工具的允许速度不超过预设速度,以免末端工具运动过快导致意外,例如可能与手术对象的开口区域的伤口造成伤害,影响手术效果等。在一些实施例中,预设速度是指末端工具允许达到的最大速度值。预设速度可以由操作者根据实际情况进行确定。
在一些实施例中,当前阻尼与末端工具的当前速度可以具有对应关系。在一些实施例中,对应关系可以是表格形式,一个速度值或者一个速度范围可以对应一个阻尼值。在另一些实施例中,对应关系还可以是函数形式,速度值可以作为函数的自变量,阻尼值可以作为函数的因变量,每个速度值可以根据函数关系确定一个对应的阻尼值。
在一些实施例中,对应关系可以是预先存储在处理器130中的,也可以是临时输入的。在一些实施例中,操作者可以查看或修改对应关系。
在一些实施例中,当前阻尼可以基于阻尼函数确定。在一些实施例中,阻尼函数的自变量可以是末端工具的当前速度,通过阻尼函数可以确定与该速度对应的当前阻尼,例如,与该速度的大小对应的阻尼大小,以及与该速度的方向对应的阻尼方向。在一些实施例中,当前速度的取值区间可以是最小允许速度至最大允许速度。在一些实施例中,最小允许速度和最大允许速度可以由操作者根据实际情况设置。在一些实施例中,最小允许速度可以是0。
图10是根据本说明书一些实施例所示的阻尼函数的示例性图像示意图。请参照图10,图10中所示坐标系的横坐标为末端工具的当前速度,即阻尼函数的自变量为速度时的图像。在一些实施例中,阻尼函数可以是自变量取值区间内的分段函数。在另一些实施例中,阻尼函数也可以是自变量取值区间内的非分段函数。在一些实施例中,阻尼函数可以包括常数函数与单调递增二次曲线函数。在另一些实施例中,阻尼函数还可以包括离散函数。在还一些实施例中,阻尼函数还可以包括其他单调递增的函数,例如三次函数、分段函数等。
在一些实施例中,阻尼函数的自变量采用末端工具的当前速度。在一些实施例中,阻尼函数可以包括分段函数(即包括多个函数),自变量的不同取值区间对应的函数不同。例如,阻尼函数可以为常数函数与递增函数交替设置。在一些实施例中,第一速度区间对应的阻尼函数可以为第一常数阻尼函数,第二速度区间对应的阻尼函数可以为递增阻尼函数,第三速度区间对应的阻尼函数可以为第二常数阻尼函数。在一些实施例中,第二常数阻尼函数可以包括末端工具的最大允许速度区间对应的阻尼函数。
在一些实施例中,阻尼函数也可以表示为一个函数。在一些实施例中,阻尼函数在超过一半的自变量取值区间内连续。在一些实施例中,阻尼函数可以包括函数关系不同的多个自变量取值区间。在一些实施例中,阻尼函数的函数关系不同的多个自变量取值区间可以包括第一取值区间(也称为第一速度区间)、第二取值区间(也称为第二速度区间)和第三取值区间(也称为第三速度区间)。在一些实施例中,如图10所示,阻尼函数的自变量的第一取值区间、第二取值区间和第三取 值区间可以是三个连续的取值区间。设定第一速度区间与第二速度区间的交界点为第一交界点J,第二个速度区间与第三速度区间的交界点为第二交界点K。此时第一速度区间的第一交界点J处对应的阻尼函数值可以与第二速度区间的第一交界点J处的阻尼函数值相同,从而使得阻尼函数可以在第一速度区间与第二速度区间内连续。第二速度区间的第二交界点K处对应的阻尼函数值可以与第三速度区间的第二交界点K处的阻尼函数值相同,从而使得阻尼函数可以在第二速度区间与第三速度区间内连续。在一些实施例中,阻尼刚度函数在超过60%的自变量取值区间内连续。在一些实施例中,阻尼刚度函数在超过80%的自变量取值区间内连续。在一些实施例中,阻尼刚度函数在超过90%的自变量取值区间内连续。在一些实施例中,阻尼刚度函数在超过95%的自变量取值区间内连续。在一些实施例中,阻尼刚度函数在对应于第一预设区域300的整个自变量取值区间内连续。通过设置阻尼刚度函数连续,可以使得第一反馈力的大小连续,从而避免操作者在操作过程中有顿挫感,提升操作体验。在另一些实施例中,阻尼函数的自变量的第一取值区间、第二取值区间和第三取值区间也可以是不连续的取值区间。
在一些实施例中,阻尼函数的导数不小于第五预设值。通过第五预设值对阻尼函数的导数的取值范围进行限制,从而对阻尼函数的增减性进行限制。在一些实施例中,第五预设值可以是0,或其他接近0的正数数值。在一些实施例中,当第五预设值为0时,对应的阻尼函数的导数可以是0或者大于0的正数,此时阻尼函数可以包括常数函数或递增函数。在一些实施例中,当第五预设值是其他接近0的正数数值(例如0.01、0.001等)时,对应的阻尼函数的导数为正数,此时阻尼函数可以包括递增函数。
在一些实施例中,阻尼函数可以包括一个一阶导数不连续点。即,可以存在两个相邻的自变量取值区间,在这两个取值区间的交界点处,阻尼函数的一阶导数不连续,阻尼函数在此交界点处的变化率不一致,阻尼函数在此交界点处的图像的切线斜率不一致。例如图10中所示的K点处,K点左侧的阻尼函数为递增函数,递增函数在K点处的一阶导数大于0;K点右侧的阻尼函数为常数函数,常数函数在K点处的一阶导数等于0,因此K点为阻尼函数的一阶导数不连续点。
在一些实施例中,阻尼函数可以包括两个二阶导数不连续点。即,可以存在多个不同取值区间之间的两个交界点,在这两个交界点处,阻尼函数的二阶导数不连续,阻尼函数的导数的变化率不一致,阻尼函数的导数图像的切线斜率不一致。在一些实施例中,阻尼函数可以包括三个连续的自变量取值区间,即自变量的多个取值区间之间的交界点可以有两个,在这两个交界点处,阻尼函数的二阶导数不连续。在一些实施例中,如图10所示,阻尼函数的自变量可以包括三个连续的取值区间,第一速度区间的第一交界点J处对应的阻尼函数的二阶导数值可以与第二速度区间的第一交界点J处的阻尼函数的二阶导数值不同,第二速度区间的第二交界点K处对应的阻尼函数的二阶导数值可以与第三速度区间的第二交界点K处的阻尼函数的二阶导数值不同。在一些实施例中,阻尼函数可以存在四个连续的自变量取值区间,第一取值区间与第二取值区间的交界点为第一交界点,第二取值区间与第三取值区间的交界点为第二交界点,第三取值区间与第四取值区间的交界点为第三交界点。阻尼函数的二阶导数可以在第一交界点处以及第三交界点处不连续,阻尼函数的二阶导数可以在第二交界点处连续。
参照图10,在一些实施例中,在阻尼函数的第一速度区间,超过一半的区间范围内的阻尼函数的一阶导数不大于第六预设值;在阻尼函数的第二速度区间,超过一半的区间范围内阻尼函数的一阶导数大于第六预设值;在阻尼函数的第三速度区间,超过一半的区间范围内阻尼函数的一阶导数不大于第六预设值。
在一些实施例中,第六预设值可以大于或等于第五预设值。在一些实施例中,第六预设值可以是非负数。在一些实施例中,第五预设值可以为0,第六预设值的取值范围可以也是0。在一些实施例中,第六预设值也可以是大于0的任意正数。在一些实施例中,在第一速度区间中,超过一半的区间范围内的阻尼函数的一阶导数可以为0,此时第一速度区间中的阻尼函数可以为常数函数;在第二速度区间中,超过一半的区间范围内的阻尼函数的一阶导数可以大于0,此时第二速度区间中的阻尼函数可以为递增的二次曲线函数;在第三速度区间中,超过一半的区间范围内的阻尼函数的一阶导数可以为0,此时第三速度区间中的阻尼函数可以为常数函数。
在一些实施例中,阻尼函数还可以基于对象的生物特征确定。在一些实施例中,对象的生物特征可以包括脂肪、关节液等人体特征,阻尼函数可以与脂肪、关节液等的阻尼相同或相近。
步骤920、基于当前速度和当前阻尼确定第二反馈力。在一些实施例中,步骤920可以由处理器130执行。
在一些实施例中,当前速度与当前速度对应的当前阻尼值的乘积可以作为第二反馈力的大 小。在一些实施例中,第二反馈力的方向可以与当前速度的方向相反,即在操作者控制末端工具运动的过程中,末端工具可以向操作者提供与运动方向相反的第二反馈力。在另一些实施例中,第二反馈力的方向可以朝向预设路径,即在操作者控制末端工具远离预设路径运动的过程中,末端工具可以向操作者提供与运动方向相反的第二反馈力,而在操作者控制末端工具朝向预设路径运动的过程中,末端工具可以不提供第二反馈力。在还一些实施例中,第二反馈力的方向可以远离预设路径,即在操作者控制末端工具朝向预设路径运动的过程中,末端工具可以向操作者提供与运动方向相反的第二反馈力,而在操作者控制末端工具远离预设路径运动的过程中,末端工具可以仅提供第一反馈力而不提供第二反馈力。
在一些实施例中,由于两个相邻的速度区间对应的阻尼函数在公共边界处的阻尼值相同,因此末端工具在从一个速度区间进入另一速度区间时,其受到的第二反馈力是连续变化的,而非跳变的。该连续变化的第二反馈力有助于提高操作者对末端工具的掌控力,从而提高操作者拖动末端工具运动的准确性。
在一些实施例中,由于不同的速度区间对应不同的阻尼函数(或称为不同的函数关系),第二反馈力是基于末端工具的当前速度以及该当前速度对应的当前阻尼值的乘积确定的,而阻尼值是由该当前速度以及该当前速度对应的阻尼函数确定的,因此阻尼函数决定着第二反馈力的变化形式。因此操作者可以根据第二反馈力的变化形式确定末端工具速度范围。
需要说明的是,当末端工具同时向操作者提供第一反馈力和第二反馈力时,操作者受到的总反馈力是第一反馈力与第二反馈力的矢量和。因此总反馈力的变化形式是第一反馈力的变化形式与第二反馈力的变化形式的矢量组合,因此操作者可以根据当前总反馈力的变化形式对应的第一反馈力的变化形式与第二反馈力的变化形式的矢量组合所对应的手感,确定出末端工具当前所处的空间区域和速度区间。
图11是根据本说明书一些实施例所示的施加第二反馈力矩的示例性流程图。如图11所示,流程1100可以包括下述步骤。在一些实施例中,流程1100可以由手术机器人100执行。下面呈现的流程1100的操作意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成该流程。
步骤1110、获取末端工具的当前角速度以及与当前角速度对应的当前旋转阻尼。在一些实施例中,步骤1110可以由处理器130执行。
在一些实施例中,通过末端工具的当前角速度可以确定对应的旋转阻尼函数,从而确定当前角速度对应的当前旋转阻尼。在一些实施例中,末端工具的允许角速度不超过预设角速度,以免末端工具运动过快导致意外,例如可能与手术对象的开口区域的伤口造成伤害,影响手术效果等。在一些实施例中,预设角速度是指末端工具允许达到的最大角速度值。预设角速度可以由操作者根据实际情况进行确定。
在一些实施例中,当前旋转阻尼与末端工具的当前角速度可以具有对应关系。在一些实施例中,对应关系可以是表格形式,一个角速度值或者一个角速度范围可以对应一个旋转阻尼值。在另一些实施例中,对应关系还可以是函数形式,角速度值可以作为函数的自变量,旋转阻尼值可以作为函数的因变量,每个角速度值可以根据函数关系确定一个对应的旋转阻尼值。
在一些实施例中,对应关系可以是预先存储在处理器130中的,也可以是临时输入的。在一些实施例中,操作者可以查看或修改对应关系。
在一些实施例中,当前旋转阻尼可以基于旋转阻尼函数确定。在一些实施例中,旋转阻尼函数的自变量可以是末端工具的当前角速度,通过旋转阻尼函数可以确定与该角速度值对应的当前旋转阻尼。
在一些实施例中,旋转阻尼函数可以包括常数函数与单调递增二次曲线函数。在另一些实施例中,旋转阻尼函数还可以包括离散函数。在还一些实施例中,旋转阻尼函数还可以包括其他单调递增的函数,例如三次函数、分段函数等。
在一些实施例中,旋转阻尼函数的自变量采用末端工具的当前角速度。在一些实施例中,当前角速度的取值区间可以是最小允许角速度至最大允许角速度。在一些实施例中,最小允许角速度和最大允许角速度可以由操作者根据实际情况设置。在一些实施例中,最小允许角速度可以是0。在一些实施例中,旋转阻尼函数可以包括分段函数,自变量的不同取值区间对应的旋转阻尼函数不同。例如,旋转阻尼函数可以为常数函数与递增函数交替设置。在一些实施例中,第一取值区间对应的旋转阻尼函数可以为第一常数旋转阻尼函数,第二取值区间对应旋转的阻尼函数可以为递增旋转阻尼函数,第三取值区间对应的旋转阻尼函数可以为第二常数旋转阻尼函数。
在一些实施例中,旋转阻尼函数在超过一半的自变量取值区间内连续。在一些实施例中,旋转阻尼函数在超过60%的自变量取值区间内连续。在一些实施例中,旋转阻尼函数在超过80%的自变量取值区间内连续。在一些实施例中,旋转阻尼函数在超过90%的自变量取值区间内连续。在一些实施例中,旋转阻尼函数在超过95%的自变量取值区间内连续。在一些实施例中,旋转阻尼函数在全部自变量取值区间内连续。在一些实施例中,旋转阻尼函数的自变量可以包括三个连续的取值区间。设定第一角速度区间与第二角速度区间的交界点为第一交界点,第二个角速度区间与第三角速度区间的交界点为第二交界点。此时第一角速度区间的第一交界点处对应的旋转阻尼函数值可以与第二角速度区间的第一交界点处的旋转阻尼函数值相同,从而使得旋转阻尼函数可以在第一角速度区间与第二角速度区间内连续。第二角速度区间的第二交界点处对应的旋转阻尼函数值可以与第三角速度区间的第二交界点处的旋转阻尼函数值相同,从而使得旋转阻尼函数可以在第二角速度区间与第三角速度区间内连续。
在一些实施例中,旋转阻尼函数的导数可以是0或者大于0的正数。
在一些实施例中,旋转阻尼函数可以包括一个一阶导数不连续点。即,可以存在两个相邻的自变量取值区间,在这两个取值区间的交界点处,旋转阻尼函数的一阶导数不连续,旋转阻尼函数在此交界点处的变化率不一致,旋转阻尼函数在此交界点处的图像的切线斜率不一致。
在一些实施例中,旋转阻尼函数可以包括两个二阶导数不连续点。即,可以存在多个不同取值区间之间的两个交界点,在这两个交界点处,旋转阻尼函数的二阶导数不连续,旋转阻尼函数的导数的变化率不一致,旋转阻尼函数的导数图像的切线斜率不一致。
在一些实施例中,旋转阻尼函数还可以基于对象的生物特征确定。在一些实施例中,对象的生物特征可以包括脂肪、关节液等人体特征,旋转阻尼函数可以与脂肪、关节液等的旋转阻尼相同或相近。
步骤1120、基于当前速度和当前阻尼确定第二反馈力矩。在一些实施例中,步骤1120可以由处理器130执行。
在一些实施例中,通过当前角速度与当前角速度对应的当前旋转阻尼值可以确定第二反馈力矩。
在一些实施例中,由于旋转阻尼函数的自变量的三个取值区间是连续的,因此两个相邻的取值区间所对应的旋转阻尼函数在公共边界处的旋转阻尼值相同,因此末端工具与预设路径之间的角度在从一个取值区间进入另一取值区间时,末端工具受到的第二反馈力矩是连续变化的,而非跳变的。该连续变化的第二反馈力矩有助于提高操作者对末端工具的掌控力,从而提高用户拖动末端工具运动的准确性。
在手术过程中,为了使末端工具能够精准地对手术对象进行操作,一般需要保持末端工具的中轴线与操作区域(例如第一预设区域300、第二预设区域400等)的中轴线重合或大致重合。但是在操作前或操作过程中,对象可能会发生移动,从而改变对象的位姿,使得末端工具的中心轴不再与操作区域的中轴线重合或大致重合,对手术效果造成影响。此时,需要根据对象的位姿变化对末端工具的位姿进行调整,以便于手术的进行。需要说明的是,本说明书所述的两个轴线“大致重合”是指,在操作区域范围内,两个轴线之间的最大距离不超过0.1毫米。
图12是根据本说明书一些实施例所示的主动调整末端工具位姿的示例性流程图。如图12所示,流程1200可以包括下述步骤。在一些实施例中,流程1200可以由手术机器人100执行。下面呈现的流程1200的操作意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成该流程。
在一些实施例中,末端工具可以在第二预设区域400内进行手术操作,第二预设区域400为主动随动区。当手术对象运动之后,第二预设区域400跟随对象运动,第二预设区域400与对象保持相对静止状态。此时,机械臂装置110可以主动控制末端工具产生相应的运动,以使末端工具在第二预设区域400内位置不变,即使末端工具在第二预设区域400内的位置状态不变,从而使末端工具与对象的相对位置不变,便于手术的进行,降低了手术出现意外的可能性。
步骤1210、获取末端工具的第一初始位姿和对象的位姿偏移量。在一些实施例中,步骤1210可以由处理器130执行。
在一些实施例中,末端工具的第一初始位姿指的是对象运动前的末端工具在第二预设区域400内的位姿状态,末端工具的位姿状态可以包括末端工具的参考点相对于对象的目标位置的距离、末端工具的轴线与对象的目标位置的轴线的角度等。在一些实施例中,对象的位姿偏移量指的是对象在运动前后的位姿状态的改变量。在一些实施例中,末端工具的第一初始位姿可以通过定位装置 120确定。
在一些实施例中,定位装置120可以包括设置于固定机械臂装置110的基座上的第一光学阵列、设置于机械臂装置110的第二光学阵列、以及设置于目标对象(例如操作区域)的第三光学阵列。第二光学阵列与机械臂装置110(末端工具)保持固定的位姿对应关系(即第二光学阵列与末端工具同步运动,相对位置保持不变),第三光学阵列与第二预设区域400(对象)保持固定的位姿对应关系(即第三光学阵列与对象同步运动,相对位置保持不变)。在一些实施例中,第一光学阵列与基座保持相对固定,可以作为参考坐标系的基准参考点。其中,参考坐标系是指不受末端工具与对象的运动影响的坐标系,即,当末端工具与对象运动时,参考坐标系可以保持不动,末端工具与对象在参考坐标系内运动。在另一些实施例中,作为参考坐标系的基准参考点的第一光学阵列也可以位于手术机器人100上其他位置不变的零部件(例如滚轮等),或是周边环境中位置不变的物件(例如病床等)。在一些实施例中,第一光学阵列可以作为参考坐标系的参考基准点。有关第一光学阵列、第二光学阵列、第三光学阵列、基座的更多内容可以参照图20及其相关描述,在此不再赘述。
在一些实施例中,末端工具的第一初始位姿可以通过第二光学阵列确定为 sT marker2_static
图13是根据本说明书一些实施例所示的确定对象位姿偏移量的示例性流程图。请参照图13,在一些实施例中,步骤1210可以通过如下的子步骤确定对象的位姿偏移量:步骤1211、获取对象的第二初始位姿和对象的当前位姿;步骤1212、基于第二初始位姿和当前位姿确定对象的位姿偏移量。
在一些实施例中,对象的第二初始位姿指的是对象在位姿发生变化之前的位姿状态。对象的当前位姿指的是对象运动之后当前的位姿状态。对象的位姿偏移量可以理解为对象从第二初始位姿运动至当前位姿的运动量。
在一些实施例中,对象的第二初始位姿可以通过第三光学阵列确定为 sT marker3_static,对象的当前位姿可以通过第三光学阵列确定为 sT marker3_dynamic。在一些实施例中,对象的当前位姿可以是控制器在检测到位姿跟随信号同时检测到对象的当前位姿相较于第二初始位姿发生变化时由第三光学阵列获取的。在一些实施例中,第三光学阵列获取对象的当前位姿的频率大于或等于250次/s,以满足末端工具的位姿修正的频率要求(例如,大于或等于250次/s)。在一些实施例中,基于下述公式(1)可以确定对象的位姿偏移量 marker3_staticT maeker3_dynamic
marker3_staticT maeker3_dynamic=Inverse( sT marker3_staticsT marker3_dynamic   (1)
其中,Inverse( sT marker3_static)为对象的第二初始位姿 sT marker3_static的逆矩阵。
步骤1220、基于第一初始位姿和位姿偏移量,确定末端工具的目标位姿偏移量。在一些实施例中,步骤1220可以由处理器130执行。
在一些实施例中,基于末端工具的第一初始位姿 sT marker2_static与对象的位姿偏移量 marker3_staticT maeker3_dynamic,可以通过下述公式(2)确定末端工具的目标位姿偏移量:
tool_staticT tool_dynamic=Inverse( objectT tool)* marker3_staticT marker3_dynamic* objectT tool   (2)
其中, objectT tool为对象运动前对象与末端工具之间的位姿变化关系,即末端工具的第一初始位姿相对于对象的第二初始位姿的第二位姿对应关系。Inverse( objectT tool)为 objectT tool的逆矩阵。第二位姿对应关系 objectT tool的更多内容可以参照图14及其相关描述。
图14是根据本说明书一些实施例所示的确定末端工具目标位姿偏移量的示例性流程图。请参照图14,在一些实施例中,步骤1220可以通过如下的子步骤确定末端工具的目标位姿偏移量:步骤1221、基于第一初始位姿和第二初始位姿确定对象与末端工具的第二位姿对应关系;步骤1222、基于位姿偏移量和第二位姿对应关系,确定目标位姿偏移量。
在一些实施例中,末端工具的第一初始位姿相对于对象的第二初始位姿的第二位姿对应关系 objectT tool可以指末端工具的位姿与对象的位姿之间需要保持的相对关系。
在一些实施例中,末端工具的第一初始位姿相对于对象的第二初始位姿的第二位姿对应关系 objectT tool可以通过公式(3)确定:
objectT tool=Inverse( sT marker3_static)* sT marker2_static   (3)
其中, sT marker3_static为对象的第二初始位姿,Inverse( sT marker3_static)为 sT marker3_static的逆矩阵, sT marker2_static为末端工具的第一初始位姿。
在一些实施例中,基于位姿偏移量和第二位姿对应关系,可以通过上述公式(2)确定目标位姿偏移量。在一些实施例中,第二位姿对应关系可以在操作者输入记录信号时确定并记录。在一 些实施例中,操作者可以多次输入记录信号来记录多组对象与末端工具的位姿对应关系的数据。在一些实施例中,当需要控制末端工具主动跟随对象时,可以将最新记录的对象与末端工具的位姿对应关系的数据作为第二位姿对应关系。
由于根据位姿偏移量和第二位姿对应关系确定的末端工具的目标位姿偏移量,为末端工具从第一初始位姿调整为目标位姿所需的运动量,因此根据目标位姿偏移量控制末端工具运动,即可使末端工具在完成目标位姿偏移量时,将末端工具与对象(第二预设区域400)的位姿对应关系恢复至对象运动前两者的位姿对应关系。
步骤1230、基于目标位姿偏移量调整末端工具至目标位姿,以控制末端工具主动跟随对象运动。在一些实施例中,步骤1230可以由处理器130执行。
在一些实施例中,确定目标位姿偏移量后,可以控制末端工具运动相应的目标位姿偏移量到达目标位姿,从而使得末端工具主动跟随对象运动,使末端工具与对象的相对位置保持不变,以便于后续手术的进行。
由于目标位姿偏移量对应的是末端工具的运动量,而末端工具的运动是由机械臂装置110带动的,即处理器130是通过控制机械臂装置110的运动来带动末端工具的运动。因此,在一些实施例中,可以根据末端工具对应的坐标系与参考坐标系之间的转换关系,将该位姿调整量转换至基准坐标系,从而确定用于携带末端工具的机械臂装置110在基准坐标系中的位姿改变量,以及根据该位姿改变量控制机械臂装置110带动末端工具运动,以使机械臂装置110在完成该位姿改变量的运动时,末端工具完成目标位姿偏移量的运动,到达目标位姿,同时末端工具与对象的位姿对应关系恢复至第二位姿对应关系。
在一些实施例中,流程1200还可以包括步骤:获取末端工具与参考坐标系的第一位姿对应关系。此时,步骤1230可以包括:基于第一位姿对应关系和目标位姿偏移量确定目标位姿。
在一些实施例中,末端工具与参考坐标系的第一位姿对应关系可以理解为在对象运动前参考坐标系的参考基准点到末端工具的第一初始位姿的变化关系。在一些实施例中,末端工具与参考坐标系的第一位姿对应关系可以记作 BT Tool_static。在一些实施例中,第一位姿对应关系 BT Tool_static可以由手术机器人100中机械臂装置110的各个关节位置的正运动学推算出。
在一些实施例中,机械臂装置110的位姿改变量可以通过公式(4)确定:
BT tool_dynamicBT Tool_static* Tool_staticT tool_dynamic   (4)
其中, BT tool_dynamic实际上包括 BT tooltoolT marker2BT tool为机械臂装置110的实际控制量。 toolT marker2用于限定机械臂装置110与末端工具之间的运动对应关系。由于机械臂装置110带动末端工具的运动方式有多种,因此需要通过该运动对应关系唯一地限定机械臂装置110带动末端工具的运动方式,从而通过确定机械臂装置110的运动来唯一地确定末端工具的运动,实现通过机械臂装置110带动末端工具进行任意所需的位姿调整。需要说明的是, toolT marker2可以提前进行标定,例如手眼标定等。
在一些实施例中,控制器或处理器在检测到末端工具完成位姿调整的运动时,输出位姿跟随完成信号。该位姿跟随完成信号可以通过设置于机械臂上的闪烁灯输出,也可以通过与控制器或处理器相连的输出装置输出,本实施例不对位姿完成信号的具体形式进行限定。
在一些实施例中,控制器在检测到跟随停止信号时,停止检测并获取主动随动区的当前位姿,此时操作者可以手动调整末端工具的位姿,该调整可以是任意的。
在一些实施例中,上述调整过程可以用于髋关节置换手术中。在一些实施例中,末端工具可以包括髋臼锉或髋臼杯,操作者在对手术的对象进行关节磨锉或准备打杯的过程中,手术机器人100可以为操作者提供主动跟随的功能。在一些实施例中,当末端工具位于第二预设区域400内时,手术机器人100可以提示操作者是否开启主动跟随功能,当操作者选择开启主动跟随功能后,手术机器人100即可控制末端工具跟随对象的位姿变化调整自身(即末端工具)的位姿,使得末端工具与对象之间的相对位姿保持不变。在一些实施例中,操作者也可以选择不开启主动跟随功能,此时,手术机器人100不会控制末端工具跟随对象的位姿变化。
在一些实施例中,末端工具可以为髋臼锉或髋臼杯,末端工具与对象的初始位姿对应关系(即第二位姿对应关系)可以是末端工具的中心轴与主动随动区的中心轴重合。
以下结合髋关节置换手术的不同阶段说明上述主动跟随功能的使用过程。
在一些实施例中,在髋关节置换手术的打杯操作之前,可以先使用髋臼锉(末端工具)对髋臼窝进行磨骨操作,在使用髋臼锉对髋臼窝进行磨骨操作之前,可以将髋臼锉拖动至主动随动区内,然后调整髋臼锉的位姿以使髋臼锉与髋臼窝的位姿对应关系为期望的位姿对应关系,然后做髋 臼窝磨骨的准备工作,比如,准备手术器械等。为了防止因患者髋关节位姿在该准备工作期间发生变化,从而导致髋臼锉与髋臼窝之间的位姿对应关系发生变化,用户输入记录信号,控制器或处理器在检测到该记录信号时,根据该记录信号获取髋臼锉和髋臼窝的位姿,并将髋臼锉的位姿作为初始工具位姿(即第一初始位姿),将髋臼窝的位姿作为初始对象位姿(即第二初始位姿),以及将该初始工具位姿和初始对应位姿之间的对应关系作为初始位姿对应关系(即第二位姿对应关系)。在一些实施例中,用户可以通过踩踏机器人的脚踏板输入记录信号,以使控制器根据该记录信号获取髋臼锉的位姿与髋臼窝的位姿。然后通过脚踏板的第二踩踏方式输入位姿跟随信号,控制器根据该位姿跟随信号分别将髋臼锉与髋臼窝的当前位姿作为初始工具位姿与初始对象位姿,将二者之间的位姿对应关系作为初始位姿对应关系,以及确定该初始工具位姿相对于该初始对象位姿的初始位姿偏移量。在检测到髋关节的位姿相对于其初始对象位姿发生变化时,获取髋关节的当前位姿相对于其初始对象位姿的对象位姿偏移量,并根据该初始位姿偏移量和对象位姿偏移量确定末端工具的位姿调整量,以及根据该位姿调整量控制末端工具运动,以使末端工具在该运动完成时,在显示装置上输出用于表示位姿跟随完成的提示信号,此时末端工具与髋关节之间的位姿对应关系恢复至该初始位姿对应关系。
在一些实施例中,在髋关节置换手术的打杯操作之前,通常还需要将髋臼杯(末端工具)移动至主动随动区的预设打杯处,髋臼杯在该预设打杯处时,其中心轴与主动随动区的中心轴重合,髋臼杯在达到该预设打杯处时,其中心轴与主动随动区也有可能重合过。控制器在髋臼杯移动至预设打杯处的过程中实时检测髋臼杯与髋臼窝之间的位姿对应关系,在检测到髋臼杯中心轴与髋臼窝中心轴重合时生成记录信号,并根据该记录信号自动记录主动随动区的位姿与末端工具的位姿,以及在检测到医生通过脚踏板输入的位姿跟随信号时,将最新记录的主动随动区的位姿和末端工具的位姿分别作为初始对象位姿和初始工具位姿,以及将该初始对象位姿与初始工具位姿之间的对应关系作为初始位姿对应关系。之后,手术机器人100即可自动调整末端工具的位姿,使其跟随对象的位姿变化而变化。在一些实施例中,当主动跟随完成后,输出装置可以输出用于表示位姿跟随完成的提示信号。在一些实施例中,手术机器人100还可以在位姿跟随完成后自动执行位姿锁定操作。在一些实施例中,髋臼杯的位姿跟随可以发生在操作者打杯操作的过程中,操作者可以通过敲击髋臼杯敲击柄对髋臼杯执行打杯操作,髋臼杯在被打击之后与髋臼窝发生碰撞,可能导致髋臼窝的位姿发生改变,此时操作者可以开启手术机器人100的主动跟随功能。在一些实施例中,在主动跟随完成后,操作者可以根据该提示信号再次执行打杯操作。
以下继续以髋关节置换手术为例,对末端工具的另一些位姿调整过程(尤其是在打杯操作过程中,对髋臼杯的位姿调整过程)进行说明。在一些实施例中,末端工具可以包括髋臼杯,对象可以包括患者的髋臼窝。在一些实施例中,髋臼窝可以为已经完成髋臼窝磨削手术的状态。在髋关节置换手术中,髋臼杯的中轴线与髋臼窝的中轴线需要重合或大致重合。但是在手术中,一般操作者是通过手动控制髋臼杯移动至髋臼窝附近的,很难保证髋臼杯的中轴线与髋臼窝的中轴线重合或大致重合,因此需要对髋臼杯的位姿进行调整,以使髋臼杯的中轴线与髋臼窝的中轴线重合或大致重合。
在一些实施例中,定位装置120可以检测髋臼杯的位姿,处理器130可以判断髋臼杯的位姿是否满足第一预设条件。响应于是,处理器130可以校准髋臼杯。
在一些实施例中,第一预设条件可以包括两个判断阈值:髋臼杯的中轴线与髋臼窝的中轴线之间的距离阈值,以及髋臼杯的中轴线与髋臼窝的中轴线之间的角度阈值。第一预设条件可以包括两个判断条件:髋臼杯的中轴线与髋臼窝的中轴线之间的距离是否小于距离阈值,以及髋臼杯的中轴线与髋臼窝的中轴线之间的角度是否小于角度阈值。当两个判断条件的结果都为“是”时,可以判断髋臼杯的位姿满足第一预设条件,可以对髋臼杯进行校准。在一些实施例中,距离阈值与角度阈值可以根据实际情况设置。距离阈值与角度阈值的设置可以保证髋臼杯位于髋臼窝附近。若是髋臼杯的中轴线与髋臼窝的中轴线之间的距离大于距离阈值或髋臼杯的中轴线与髋臼窝的中轴线之间的角度大于角度阈值,则可以由操作者重新手动控制,对髋臼杯进行调整,将髋臼杯移动至髋臼窝附近。在一些实施例中,第一预设条件还可以包括髋臼杯的中轴线与髋臼窝的中轴线未重合或未大致重合。在一些实施例中,若操作者通过手动控制髋臼杯移动至髋臼窝附近时,已直接使得髋臼杯的中轴线与髋臼窝的中轴线重合或大致重合,则处理器130无需再校准髋臼杯。
图15是根据本说明书一些实施例所示的校准髋臼杯的示例性流程图,图16~图19是根据本说明书一些实施例所示的髋臼杯的不同位姿示意图。如图15、图16~图19所示,流程1500可以包括下述步骤。在一些实施例中,流程1500可以由手术机器人100执行。下面呈现的流程1500的 操作意图是说明性的。在一些实施例中,可以利用一个或以上未描述的附加操作和/或未讨论的一个或以上操作来完成该流程。
步骤1510、当髋臼杯的受力大于阈值时,检测髋臼杯的受力方向。在一些实施例中,步骤1510可以由处理器130执行。
在一些实施例中,当髋臼杯进入髋臼窝之后,髋臼杯在运动过程中碰触到髋臼窝内壁(如图16所示)时会受到碰撞力。在一些实施例中,该碰撞力可以通过设置于机械臂装置110的力传感器测量。
当髋臼杯的受力大于阈值时,表明髋臼杯已经与髋臼窝内壁接触,无法继续深入。此时可以检测髋臼杯的受力方向,并将髋臼杯的受力方向与髋臼窝的轴线方向进行比较,从而判断髋臼杯在髋臼窝内的位姿,进而方便对髋臼杯的位姿进行调整。
步骤1520、判断髋臼杯的受力方向是否与髋臼窝的轴线平行。在一些实施例中,步骤1520可以由处理器130执行。
需要说明的是,本说明书一些实施例中判断是否平行的条件不必是精确的平行,而是可以包括平行或基本平行。在一些实施例中,基本平行可以是指判断平行的两个方向之间的夹角在10°以内。在一些实施例中,基本平行可以是指判断平行的两个方向之间的夹角在5°以内。在一些实施例中,当髋臼杯的受力方向与髋臼窝的轴线平行或基本平行(例如,髋臼杯的受力方向与髋臼窝的轴线的夹角在10°以内)时,处理器130均可判断结果为是,反之则判断结果为否。若步骤1520判断结果为否,表明髋臼杯的受力方向与髋臼窝的轴线不平行,则执行步骤1530。若步骤1520判断结果为是,表明髋臼杯的受力方向与髋臼窝的轴线平行,则执行步骤1550。
步骤1530、执行第一操作。在一些实施例中,步骤1530可以由处理器130执行。
在一些实施例中,第一操作可以用于将髋臼杯的轴线调整至与髋臼窝的轴线重合或大致重合。
在一些实施例中,第一操作可以包括:子步骤1531、调整髋臼杯的轴线方向,使得髋臼杯的轴线与髋臼窝的轴线平行;子步骤1532、当髋臼杯的轴线与髋臼窝的轴线之间的距离大于阈值时,控制髋臼杯朝向髋臼窝的轴线方向运动,直至髋臼杯的轴线与髋臼窝的轴线重合或大致重合。
在一些实施例中,处理器130可以控制机械臂装置110带动髋臼杯旋转以调整髋臼杯的轴线方向,直至定位装置130测得的髋臼杯的位姿状态显示髋臼杯的轴线与髋臼窝的轴线平行,如图16与图17所示。当髋臼杯的轴线与髋臼窝的轴线平行后,判断髋臼杯的轴线与髋臼窝的轴线之间的距离是否大于阈值。若两者的距离小于或等于阈值,表明髋臼杯的轴线与髋臼窝的轴线之间的距离符合大致重合的条件,此时髋臼杯的轴线与髋臼窝的轴线大致重合。若两者的距离大于阈值,说明髋臼杯的轴线与髋臼窝的轴线距离较远,可以控制髋臼杯朝向髋臼窝的轴线方向运动,直至髋臼杯的轴线与髋臼窝的轴线重合或大致重合,如图17与图19所示。在髋臼杯朝向髋臼窝的轴线方向运动的过程中,可以执行步骤1540。
步骤1540、判断髋臼杯朝向髋臼窝的轴线方向运动过程中是否受到阻挡力。在一些实施例中,步骤1540可以由处理器130执行。
在一些实施例中,当髋臼杯朝向髋臼窝的轴线方向运动过程中受到阻挡力时,说明髋臼杯与髋臼窝的内壁产生碰撞,髋臼杯过于深入髋臼窝,此时可以继续执行步骤1550。当髋臼杯朝向髋臼窝的轴线方向运动过程中未受到阻挡力时,可以控制髋臼杯继续朝向髋臼窝的轴线方向运动,直至髋臼杯的轴线与髋臼窝的轴线重合或大致重合,完成髋臼杯的位姿调整。
步骤1550、执行第二操作。在一些实施例中,步骤1550可以由处理器130执行。
在一些实施例中,在髋臼杯朝向髋臼窝的轴线方向运动过程中,第二操作可以用于将髋臼杯的轴线调整至与髋臼窝的轴线重合或大致重合。
在一些实施例中,第二操作可以包括:子步骤1551、控制髋臼杯沿平行于髋臼窝的轴线方向背离髋臼窝运动;子步骤1552、当髋臼杯的受力不大于阈值时,控制髋臼杯朝向髋臼窝的轴线方向运动,直至髋臼杯的轴线与髋臼窝的轴线重合或大致重合。
在一些实施例中,当髋臼杯过于深入髋臼窝、受力较大时,可以先控制髋臼杯沿平行于髋臼窝的轴线方向背离髋臼窝运动,减小髋臼窝对髋臼杯的压力,如图17与图18所示。当髋臼杯的受力不大于阈值时,控制髋臼杯朝向髋臼窝的轴线方向运动,直至髋臼杯的轴线与髋臼窝的轴线重合或大致重合,如图18与图19所示,完成校准。
若髋臼杯的受力方向与髋臼窝的轴线平行,当髋臼杯的受力不大于阈值时,处理器130可以控制机械臂装置110带动髋臼杯朝向髋臼窝的轴线方向运动,直至髋臼杯的轴线与髋臼窝的轴线 重合或大致重合,完成校准。
图20是根据本说明书一些实施例所示的手术机器人在关节磨锉阶段的示例性结构示意图。如图20所示,本说明书还提供一种手术机器人2000。在一些实施例中,手术机器人2000包括机械臂装置2010、定位装置以及处理器。
在一些实施例中,机械臂装置2010可以用于控制末端工具运动。在一些实施例中,机械臂装置2010还可以向末端工具输出设定的反馈信息。在一些实施例中,机械臂装置2010可以包括基座2011和臂组件2012。臂组件2012固定于基座2011,基座2011提供支撑安装平台。在一些实施例中,臂组件2012远离基座2011的一端设置有末端工具2040。在一些实施例中,臂组件2012可以通过连杆2050与末端工具2040相连,臂组件2012通过连杆2050带动末端工具2040运动。在一些实施例中,连杆2050的中心轴可以与末端工具2040的中心轴重合。
在一些实施例中,连杆2050远离末端工具2040的一端还包括操作辅助件2051。在一些实施例中,参见图20,当手术操作处于关节磨锉阶段时,末端工具2040可以是髋臼锉,连杆2050可以是髋臼锉连杆,操作辅助件2051可以是髋臼锉动力装置。在一些实施例中,当手术操作处于打杯阶段时(图20未示出),末端工具2040可以为髋臼杯,连杆2050可以是髋臼杯连杆,操作辅助件2051可以是髋臼杯连杆的端盖,在打杯过程中,操作者可以通过敲击端盖将动力传至髋臼杯上,以进行打杯操作。
定位装置可以用于获取预设目标的位姿信息。在一些实施例中,预设目标可以包括末端工具、手术对象或其他标记物等。在一些实施例中,定位装置可以用于获取末端工具2040的第一位姿信息与对象的第二位姿信息。
在一些实施例中,定位装置可以包括定位信息获取结构2025和标记物。定位信息获取结构可以与标记物相互配合获取对应的位姿信息。在一些实施例中,标记物可以包括设置于基座2011上的第一标记物2021和设置于对象上的第三标记物2023。在一些实施例中,定位装置还可以包括用于指示末端工具2040位姿的第二标记物2022。在一些实施例中,第二标记物2022可以设置在末端工具2040上。在另一些实施例中,第二标记物2022也可以设置在固定末端工具2040的机械臂关节上。第一标记物2021可以作为参考坐标系的参考基准点,第二标记物2022可以用于确定末端工具的位姿信息,第三标记物2023可以用于确定对象的位姿信息。
在一些实施例中,标记物可以包括光学阵列、电子定位器、电磁定位器、GPS定位器、陀螺仪、加速度传感器中的至少一种。在一些实施例中,当标记物包括光学阵列时,第一标记物2021可以为第一光学阵列,第二标记物2022可以为第二光学阵列,第三标记物2033可以为第三光学阵列,此时定位信息获取结构2025可以相应的包括光学相机。
在一些实施例中,处理器可以通过定位装置获取末端工具2040的位姿信息,并基于该位姿信息控制机械臂装置2010向操作者提供第一反馈信息。在一些实施例中,处理器可以控制机械臂装置2010的运动从而控制机械臂装置2010及末端工具的位姿。在一些实施例中,处理器的数量可以是一个或多个。
在一些实施例中,手术机器人2000还可以包括存储器、输入装置以及输出装置2060。在一些实施例中,处理器、存储器、输入装置以及输出装置可以通过总线或其他方式连接。
存储器作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本说明书中的流程200对应的程序指令/模块(例如,距离刚度函数确定模块和第一反馈力输出模块)。处理器通过运行存储在存储器中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理。
在一些实施例中,存储器可主要包括存储程序区和存储数据区。存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。在一些实施例中,存储器可以包括高速随机存取存储器,也可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件等。在一些实施例中,存储器还可以包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。
输出装置2060可以用于输出各种警示信息,例如当末端工具2040未按照预设路径脱离第一预设区域300时发出的警示信息。在一些实施例中,输出装置2060还可以用于输出末端工具2040与第二预设区域400和/或第一预设区域300之间的位姿对应关系。在一些实施例中,输出装置2060 还可以用于输出定位装置确定的各个位姿信息,例如末端工具2040的位姿信息等。在一些实施例中,输出装置2060还可以用于输出末端工具2040位姿调整完成的信号。在一些实施例中,输出装置2060可以包括显示器,输出装置2060输出的各种警示信息可以通过显示器进行显示。
在一些实施例中,输出装置2060还可以输出第一预设区域300和/或第二预设区域400(或约束空间及其子约束空间),操作者可以从输出装置2060的显示器中观察并确认末端工具在第一预设区域300和/或第二预设区域400(或约束空间及其子约束空间)中所处的具体位置。
图21是根据本说明书一些实施例所示的末端工具运动引导方法的示例性流程图。如图21所示,本说明书还提供一种如流程2100所示的末端工具的运动引导方法,该方法可以实现对末端工具的位置引导及运动方向的引导,通过末端工具的位置引导与运动方向引导优化末端工具的运动路径,从而提高骨科手术的速度、安全性和准确性。本说明书还提供一种用于上述方法的手术机器人。在一些实施例中,上述方法可以由该手术机器人执行。
在一些实施例中,该手术机器人可以包括机械臂装置、定位装置以及处理器。在一些实施例中,机械臂装置可以用于在外力作用下带动末端工具运动。在一些实施例中,机械臂装置可以向末端工具输出反馈力。在一些实施例中,定位装置可以用于获取末端工具在约束空间中的当前位置,其中约束空间的中心轴为末端工具的预设路径,约束空间可以包括嵌套在一起的至少两个子约束空间。在一些实施例中,处理器可以用于通过定位装置检测末端工具的当前位置。在一些实施例中,若末端工具的当前位置未在约束空间的预设路径上,处理器可以确定末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数。在一些实施例中,处理器可以根据当前位置以及当前位置对应的距离刚度函数,通过机械臂装置向末端工具输出朝向预设路径的第一反馈力。
在一些实施例中,机械臂装置可以参照图20所示的手术机器人2000的机械臂装置2010,定位装置可以参照图20所示的手术机器人2000的定位装置,处理器可以参照图20所示的手术机器人2000的处理器,在此不再赘述。
在一些实施例中,流程2100主要包括以下步骤。
步骤2110、检测末端工具的当前位置,若末端工具的当前位置未在约束空间的预设路径上,则确定末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数。
在一些实施例中,约束空间可以包括同向嵌套的两个或两个以上子约束空间,且每个子约束空间的中心轴重合。其中,子约束空间的确定方法包括:根据预设各个子约束空间的有效半径范围的比例,将约束空间从内到外划分为两层或两层以上,并将每一层作为一个子约束空间。在一些实施例中,可以将约束空间划分为三层,即将约束空间划分为三个子约束空间。该三个子约束空间从内到外分别是自由约束空间、缓冲约束空间和边界约束空间。在一些实施例中,可以为不同子约束空间配置不同的距离刚度函数,其中,距离刚度函数为常数函数或递增函数。距离刚度函数为常数函数的子约束空间与距离刚度函数为递增函数的子约束空间交替设置。在一些实施例中,相邻子约束空间对应的距离刚度函数在共同边界处的距离刚度值相同。在一些实施例中,自由约束空间对应的距离刚度函数为第一常数刚度函数;位于约束空间中间层的缓冲约束空间对应的距离刚度函数为单调递增的二次曲线;位于约束空间最外层的边界约束空间对应的距离刚度函数为第二常数刚度函数。约束空间的结构可以参照图3所示的第一预设区域300及图4所示的第二预设区域400的结构,在此不再赘述。
步骤2120、根据当前位置以及当前位置对应的距离刚度函数,向末端工具输出朝向预设路径的第一反馈力。
在一些实施例中,在确定了末端工具的当前位置以及当前位置对应的距离刚度函数后,确定当前位置对应的距离刚度值,并将该当前位置对应的目标距离与该距离刚度值乘积作为第一反馈力的绝对值,以及向末端工具输出朝向预设路径的第一反馈力。优选地,该第一反馈力的方向垂直且朝向预设路径。
在一个实施例中,在确定了末端工具的当前位置以及当前位置对应的距离刚度函数后,确定当前位置与预设路径之间的目标距离,以及该目标距离对应的目标距离当量;根据该目标距离当量以及该当前位置对应的距离刚度函数,确定当前位置对应的距离刚度值;根据目标距离当量与距离刚度值确定第一反馈力的绝对值,并向末端工具输出朝向预设路径的第一反馈力。
在一些实施例中,流程2100的各步骤可以参照流程200及图2~图11的相关描述,在此不再赘述。
本说明书一些实施例还提供一种末端工具运动引导装置,该装置用于执行上述任意实施例所提供的末端工具运动引导方法,该装置可选为软件或硬件实现。在一些实施例中,末端工具运动 引导装置可以包括:距离刚度函数确定模块和第一反馈力输出模块。
在一些实施例中,距离刚度函数确定模块可以用于检测末端工具的当前位置,若末端工具的当前位置未在约束空间的预设路径上,则确定所述末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数,其中,所述约束空间的中心轴为所述末端工具的期望路径,所述约束空间包括同向嵌套的至少两个子约束空间。
在一些实施例中,第一反馈力输出模块可以用于根据所述当前位置以及所述当前位置对应的距离刚度函数,向所述末端工具输出朝向所述期望路径的第一反馈力。在一些实施例中,第一反馈力输出模块还可以用于确定所述当前位置与所述预设路径之间的目标距离,以及该目标距离对应的目标距离当量(即当前距离当量);根据所述目标距离当量以及所述当前位置对应的距离刚度函数,确定所述当前位置对应的距离刚度值;根据所述目标距离当量与所述距离刚度值,向所述末端工具输出朝向所述预设路径的第一反馈力。
在一些实施例中,末端工具运动引导装置还可以包括角度刚度函数确定模块,用于在检测到所述末端工具与所述预设路径之间的当前夹角大于零时,确定所述当前夹角所在夹角区间对应的角度刚度函数,其中,夹角区间的数量大于或等于2。在一些实施例中,所述夹角区间的数量为3;包含最大夹角的夹角区间与包含最小夹角的夹角区间对应的角度刚度函数均为常数函数,位于该包含最大夹角的夹角区间与该包含最小夹角的夹角区间之间的夹角区间对应的角度刚度函数为递增函数;相邻夹角区间对应的角度刚度函数在共同边界处的角度刚度值相同。
在一些实施例中,末端工具运动引导装置还可以包旋转力矩输出模块,用于根据所述当前夹角以及所述当前夹角对应的角度刚度函数向所述末端工具输出用于使所述末端工具向所述预设路径旋转的旋转力矩(例如,第一反馈力矩)。
在一些实施例中,末端工具运动引导装置还可以包括阻尼函数确定模块,用于在检测到所述末端工具的当前运动速度的方向背离所述预设路径时,确定所述当前运动速度对应的速度区间以及该速度区间对应的阻尼函数。在一些实施例中,包含最大允许速度的速度区间与包含最小允许速度的速度区间对应的阻尼函数均为常数函数,位于该包含最大允许速度的速度区间与该包含最小允许速度的速度区间之间的速度区间对应的阻尼度函数为递增函数;相邻速度区间对应的阻尼函数在共同边界处的阻尼值相同。
在一些实施例中,末端工具运动引导装置还可以包括第二反馈力输出模块,用于根据所述当前运动速度以及所述当前运动速度对应的阻尼函数向所述末端工具输出朝向所述预设路径的第二反馈力。
在一些实施例中,末端工具运动引导装置还可以包括警示模块,用于在检测到所述末端工具的特征点位于所述约束空间的外边界时,对所述末端工具执行制动操作,并输出第一警示信息。其中,所述末端工具的目标位置为缓冲约束空间的顶端。
本说明书一些实施例提供的末端工具运动引导装置的技术方案,通过刚度距离函数确定模块检测末端工具的当前位置,若末端工具当前未在约束空间的预设路径上,则确定末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数;通过第一反馈力输出模块根据当前位置以及当前位置对应的距离刚度函数,向末端工具输出朝向预设路径的第一反馈力;由于约束空间包括嵌套在一起的至少两个子约束空间,不同子约束空间对应不同的距离刚度函数,因此末端工具在不同子约束空间内所受到的第一反馈力的变化形式不同,因此可使用户根据第一反馈力的变化形式确定末端工具当前所处的子约束空间,即末端工具当前在约束空间内的大致位置,实现了对末端工具的位置引导;还可使用户根据第一反馈力的方向确定末端工具的移动方向,实现了对末端工具运动方向的引导,通过末端工具的位置引导与运动方向引导优化末端工具的运动路径,从而提高骨科手术的速度、安全性和准确性。
图22是根据本说明书一些实施例所示的末端工具位姿实时修正方法的示例性流程图,图23是根据本说明书一些实施例所示的手术机器人的另一示例性模块结构示意图。如图22与图23所示,本说明书还提供一种如流程2200所示的末端工具位姿的实时修正方法以及如图23所示的手术机器人2300。该方法有助于提高末端工具位姿调整的效率和准确性,从而提高关节置换术的效率和成功率。在一些实施例中,该方法可以控制手术机器人2300根据髋关节的位姿变化实时修正末端工具的位姿,从而将末端工具与髋臼窝之间的位姿对应关系恢复至初始的第二位姿对应关系。在一些实施例中,流程2200可以由手术机器人2300的控制器2330来执行。在一些实施例中,控制器2330可以是设置在手术机器人2300内部或外部的处理器、服务器或其它计算设备。在一些实施例中,控制器2330可以采用软件和/或硬件的方式实现。
在一些实施例中,手术机器人2300主要包括第一姿态获取装置2310、第二姿态获取装置2320以及控制器2330。在一些实施例中,第一姿态获取装置2310可以设置于对象上并与对象保持固定的对应关系,以用于获取对象的位姿。在一些实施例中,第二姿态获取装置2320可以设置于用于携带末端工具运动的机械臂或末端工具上,用以于获取末端工具的位姿。在一些实施例中,控制器2330可以用于获取末端工具与参考坐标系的第一位姿对应关系。在一些实施例中,控制器2330还可以用于获取末端工具与对象的第二位姿对应关系。在一些实施例中,控制器2330还可以用于在检测到对象的位姿发生变化时,获取对象位姿偏移量。在一些实施例中,控制器2330还可以用于根据第一位姿对应关系和对象位姿偏移量控制末端工具运动,使末端工具与对象的位姿对应关系恢复至第二位姿对应关系。
在一些实施例中,第一姿态获取装置2310与第二姿态获取装置2320可以参照图20所示的手术机器人2000的定位装置,控制器2330可以参照图20所示的手术机器人2000的处理器,在此不再赘述。
在一些实施例中,流程2200主要包括以下步骤。
步骤2210、获取末端工具与参考坐标系的第一位姿对应关系,以及末端工具与对象的第二位姿对应关系。
步骤2220、检测到对象的位姿发生变化时,获取对象位姿偏移量。
步骤2230、根据第一位姿对应关系和对象位姿偏移量控制末端工具运动,使末端工具与对象的位姿对应关系恢复至第二位姿对应关系。
在一些实施例中,流程2200的各步骤可以参照流程1200及图12~图14的相关描述,在此不再赘述。
图24是根据本说明书一些实施例所示的自动调整髋臼杯位姿方法的示例性流程图,图25是根据本说明书一些实施例所示的手术机器人的另一示例性模块结构示意图。如图24与图25所示,本说明书还提供一种如流程2400所示的自动调整髋臼杯位姿的方法以及如图25所示的手术机器人2500。该方法可以大大减少髋臼杯的位姿调整时间,而且能够将髋臼杯调整至最佳打杯位姿,有助于提高髋臼杯安装术的成功率。在一些实施例中,该方法可以通过髋臼杯的当前位姿信息与髋臼窝的当前位姿信息调整髋臼杯的位姿,以使髋臼杯位于预设打杯处时,其中心轴与髋臼窝中心轴重合。在一些实施例中,流程2400可以由手术机器人2500的控制器2530来执行。在一些实施例中,控制器2530可以是设置在手术机器人2300内部或外部的处理器、服务器或其它计算设备。在一些实施例中,控制器2530可以采用软件和/或硬件的方式实现。
在一些实施例中,手术机器人2500主要包括运动模块2510、位姿获取模块2520以及控制器2530。在一些实施例中,运动模块2510可以包括机械臂,用于带动髋臼杯运动。在一些实施例中,位姿获取模块2520可以包括髋臼杯位姿单元和髋臼窝位姿单元。在一些实施例中,位姿获取模块2520可以通过髋臼杯位姿单元实时获取髋臼杯的当前位姿信息,在一些实施例中,位姿获取模块2520可以通过髋臼窝位姿单元实时获取对象的髋臼窝的当前位姿信息。在一些实施例中,控制器2530可以用于根据髋臼杯的当前位姿信息和髋臼窝的当前位姿信息,调整髋臼杯的位姿,以使髋臼杯的中心轴与髋臼窝的中心轴重合。
在一些实施例中,运动模块2510可以参照图20所示的手术机器人2000的机械臂装置2010,位姿获取模块2520可以参照图20所示的手术机器人2000的定位装置,控制器2530可以参照图20所示的手术机器人2000的处理器,在此不再赘述。
在一些实施例中,流程2400主要包括以下步骤。
步骤2410、控制髋臼杯从当前位置向预设打杯处运动,并实时检测位姿调整信号,以及在检测到位姿调整信号时,获取髋臼杯的当前位姿信息与目标对象的髋臼窝的当前位姿信息,其中,预设打杯处位于髋臼窝中。
在一些实施例中,目标对象(也称为对象)可以为当前接收髋臼杯安装术的患者。在一些实施例中,目标对象可以是已经完成髋臼窝磨削手术并等待髋臼杯打入的患者。在一些实施例中,预设打杯处为医生术前确定的打杯位置,其中心接近髋臼窝的中心。
在一些实施例中,位姿调整信号可以是由外力触发的,该外力为髋臼杯在向预设打杯处的运动过程中碰触到髋臼窝内壁时受到的碰撞力。在一些实施例中,在通过设置于机械臂上的力传感器检测到髋臼杯因碰触到髋臼窝内壁受到外力时,生成位姿调整信号,并根据该位姿调整信号获取髋臼杯的当前位姿信息与目标对象的髋臼窝的当前位姿信息。通过先运动,再基于外力生成位姿调整信号的方式,实现了先对髋臼杯进行纵向调整,然后通过位姿调整信号以及后续步骤对髋臼杯进 行横向上的重合度调整,实现了自动调整髋臼杯位姿的。
在一些实施例中,在控制髋臼杯从当前位置向预设打杯处运动,并实时检测位姿调整信号之前,获取髋臼杯的当前位姿信息以及目标对象的髋臼窝的当前位姿信息;根据髋臼杯的当前位姿信息和髋臼窝的当前位姿信息调整髋臼杯的位姿,以使髋臼杯的中心轴与髋臼窝的中心轴重合。在对髋臼杯进行纵向调整之前,先对髋臼杯进行横向的重合度调整,以使髋臼杯在首次运动起始时,其中心轴与髋臼窝中心轴是平行的,有助于增加髋臼杯在首次运动过程中的纵向运动量。在一些实施例中,使髋臼杯的中心轴与髋臼窝的中心轴重合的方法可以包括:根据髋臼杯的当前位姿信息和髋臼窝的当前位姿信息调整髋臼杯的位姿,以使髋臼杯的中心轴与髋臼窝的中心轴平行,以更新髋臼杯的当前位姿信息;根据更新后的髋臼杯的当前位姿信息调整髋臼杯的中心轴在预设方向上的位置,以使髋臼杯的中心轴与髋臼窝的中心轴重合,其中,预设方向为垂直于髋臼窝中心轴的方向。
在一些实施例中,位姿调整信号是在检测到髋臼杯运动完预设步长时生成的,该预设步长小于预设打杯处与髋臼窝内壁的最小距离。具体地,设定髋臼杯当前与预设打杯处之间的距离为H,H等于8个预设步长。对髋臼杯进行位姿调整,以使其中心轴与髋臼窝中心轴重合,然后控制位姿调整后的髋臼杯以预设步长向预设打杯处运动,且在检测到其每运动完预设步长时生成位姿调整信号,并根据该位姿调整信号获取髋臼杯的当前位姿信息与目标对象的髋臼窝的当前位姿信息。先对髋臼杯执行横向的重合度调整,然后对髋臼杯进行纵向位置调整,再基于位姿调整信号对髋臼杯进行后续的重合度调整,实现了髋臼杯的实时位姿修正。
在一些实施例中,自动调整髋臼杯位姿的模式由位姿随动信号触发,该位姿随动信号由医生通过踩踏该手术机器人的脚踏板来产生。在一些实施例中,当医生将髋臼杯拖动至髋臼窝附近,且需要手术机器人自动执行髋臼杯的位姿调整时,踩踏手术机器人的脚踏板,控制器根据脚踏板的动作信息生成位姿随动信号。相应的,当医生需要终止自动调整髋臼杯位姿的模式时,还可以通过踩踏脚踏板来生成位姿随动终止信号。当然,用于生成位姿随动信号的脚踏板踩踏方式与用于生成位姿随动终止信号的脚踏板踩踏方式和/或踩踏时机不同。
需要说明的是,基于不同触发方式生成的位姿调整信号对应不同的自动调整模式,不同的自动调整模式需要不同的位姿随动信号来触发,不同的位姿随动信号可通过不同的脚踏板踩踏方式生成。
步骤2420、根据髋臼杯的当前位姿信息和髋臼窝的当前位姿信息调整髋臼杯的位姿,以使髋臼杯的中心轴与髋臼窝的中心轴重合。
在一些实施例中,根据髋臼杯的当前位姿信息和髋臼窝的当前位姿信息调整髋臼杯的位姿,以使髋臼杯的中心轴与髋臼窝的中心轴平行,以更新髋臼窝的当前位姿信息;根据更新后的髋臼杯的当前位姿信息调整髋臼杯的中心轴在预设方向上的位置,以使髋臼杯的中心轴与髋臼窝的中心轴重合。用于完成髋臼杯在横向上的重合度调整。其中,预设方向为垂直于髋臼窝中心轴的方向。
步骤2430、如果位姿调整后的髋臼杯未处于预设打杯处,则重复执行上述步骤2410与步骤2420。
在一些实施例中,流程2400的各步骤可以参照流程1500及图15~图19的相关描述,在此不再赘述。
在一些实施例中,对于位姿调整信号是由外力触发的情况。在一些实施例中,控制机械臂带动髋臼杯向预设打杯处运动,直至检测到髋臼杯因碰触到髋臼窝内壁时受到的外力。根据该外力生成位姿调整信号,以及根据该位姿调整信号获取髋臼杯的当前位姿信息与目标对象的髋臼窝的当前位姿信息,以及根据髋臼杯的当前位姿信息和髋臼窝的当前位姿信息调整髋臼杯的位姿,以使髋臼杯的中心轴与髋臼窝的中心轴重合。然后检测位姿调整后的髋臼杯当前是否位于预设打杯处;若是,则锁定髋臼杯的当前位姿;若否,则继续控制机械臂带动髋臼杯向预设打杯处运动,直至再次检测到髋臼杯因碰触到髋臼窝内壁时受到的外力。根据该外力生成位姿调整信号,以及根据该位姿调整信号获取髋臼杯的当前位姿信息与目标对象的髋臼窝的当前位姿信息,以及根据髋臼杯的当前位姿信息和髋臼窝的当前位姿信息调整髋臼杯的位姿,以使髋臼杯的中心轴与髋臼窝的中心轴重合。检测位姿调整后的髋臼杯当前是否位于预设打杯处;若是,则锁定髋臼杯的当前位姿;若否,则重复执行上述步骤,直至位姿调整后的髋臼杯处于预设打杯处。
在一些实施例中,对于位姿调整信号是在检测到髋臼杯运动完成预设步长时生成的情况。在一些实施例中,控制机械臂带动位姿调整后的髋臼杯向预设打杯处运动,在检测到机械臂带动髋臼杯运动完一个预设步长时生成位姿调整信号,并根据该位姿调整信号调整髋臼杯的当前位姿,以使位姿调整后的髋臼杯的中心轴与髋臼窝的中心轴重合。检测位姿调整后的髋臼杯是否位于预设打 杯处;若是,则锁定髋臼杯的当前位姿;若否,则带动位姿调整后的髋臼杯继续向预设打杯处运动一个预设步长。在运动完一个预设步长时生成位姿调整信号,以及根据该位姿调整信号对髋臼杯的当前位姿进行位姿调整,以使位姿调整后的髋臼杯的中心轴与髋臼窝的中心轴重合。检测位姿调整后的髋臼杯是否位于预设打杯处;若是,则锁定髋臼杯的当前位姿;若否,则重复执行上述步骤,直至位姿调整后的髋臼杯处于预设打杯处。
在一些实施例中,设定预设打杯处的坐标为原点坐标,预设打杯处至髋臼窝开口处的方向为正向。如果位姿调整后的髋臼杯的纵向坐标小于预设打杯处的纵向坐标,则控制机械臂带动髋臼杯向髋臼窝开口方向运动;如果位姿调整后的髋臼杯的纵向坐标大于预设打杯处的纵向坐标,则控制机械臂带动髋臼杯向髋臼窝底部方向运动。
在一些实施例中,可以通过一种自动调整模式控制髋臼杯运动至预设打杯处,且处于预设打杯处的髋臼杯中心轴与髋臼窝中心轴重合。在另一些实施例中,也可以通过两种自动调整模式相混合的方式控制髋臼杯运动至预设打杯处,且处于预设打杯处的髋臼杯的中心轴与髋臼窝中心轴重合。在一些实施例中,可以先通过由外力触发位姿调整信号的自动调整模式,使髋臼杯运动至预设打杯处附近,然后通过基于预设步长生成位姿调整信号的自动调整模式,控制髋臼杯从预设打杯处附近运动至预设打杯处,且其中心轴与髋臼窝中心轴重合。在一些实施例中,当通过外力触发位姿调整信号的自动调整模式,使髋臼杯运动至预设打杯处附近时,髋臼杯会在预设打杯处附近做往返运动,因此在检测到髋臼杯在预设打杯处开始做往返运动时,可以将当前的自动调整模式切换成基于预设步长生成位姿调整信号的自动调整模式。
在一些实施例中,在检测到位姿调整后的髋臼杯处于预设打杯处时,可以通过位姿锁定指令锁定机械臂的位姿,从而锁定髋臼杯的位姿,这样即可方便对位姿锁定后的髋臼杯执行打杯操作。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如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)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了 一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本申请引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本申请作为参考。与本申请内容不一致或产生冲突的申请历史文件除外,对本申请权利要求最广范围有限制的文件(当前或之后附加于本申请中的)也除外。需要说明的是,如果本申请附属材料中的描述、定义、和/或术语的使用与本申请所述内容有不一致或冲突的地方,以本申请的描述、定义和/或术语的使用为准。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。

Claims (68)

  1. 一种手术机器人控制方法,包括:
    获取末端工具的位姿信息;
    基于所述位姿信息向操作者提供第一反馈信息。
  2. 根据权利要求1所述的方法,其中,所述基于所述位姿信息向操作者提供第一反馈信息包括:
    基于所述位姿信息向所述操作者施加第一反馈力。
  3. 根据权利要求2所述的方法,其中,所述第一反馈力基于所述位姿信息非线性变化。
  4. 根据权利要求3所述的方法,其中,所述基于所述位姿信息向所述操作者施加第一反馈力包括:
    获取所述末端工具的当前位置和当前刚度,基于所述当前位置和所述当前刚度确定所述第一反馈力;
    基于所述末端工具的运动方向向所述操作者施加所述第一反馈力。
  5. 根据权利要求4所述的方法,其中,所述当前刚度与所述当前位置具有对应关系。
  6. 根据权利要求5所述的方法,其中,所述当前刚度基于距离刚度函数确定。
  7. 根据权利要求6所述的方法,其中,所述距离刚度函数在超过一半的自变量取值区间内连续。
  8. 根据权利要求7所述的方法,其中,所述距离刚度函数的导数不小于第一预设值。
  9. 根据权利要求8所述的方法,其中,所述距离刚度函数包括一个一阶导数不连续点。
  10. 根据权利要求8所述的方法,其中,所述距离刚度函数包括两个二阶导数不连续点。
  11. 根据权利要求8所述的方法,其中,在所述距离刚度函数的自变量的第一取值区间,至少超过一半的区间范围内刚度函数的一阶导数不大于第二预设值;在所述距离刚度函数的自变量的第二取值区间,至少超过一半的区间范围内刚度函数的一阶导数大于第二预设值;在所述距离刚度函数的自变量的第三取值区间,至少超过一半的区间范围内刚度函数的一阶导数不大于第二预设值。
  12. 根据权利要求11所述的方法,其中,所述距离刚度函数的自变量的第一取值区间、所述距离刚度函数的自变量的第二取值区间和所述距离刚度函数的自变量的第三取值区间依次连续。
  13. 根据权利要求12所述的方法,其中,所述距离刚度函数的自变量为所述当前位置在第一预设区域内相对于预设路径的距离当量,所述距离当量的第一取值区间的范围包括0~2/3;所述距离当量的第二取值区间的范围包括2/3~5/6;所述距离当量的第三取值区间的范围包括5/6~1。
  14. 根据权利要求1所述的方法,其中,所述基于所述位置信息向操作者提供第一反馈信息包括:
    基于所述位置信息向所述操作者施加第一反馈力矩。
  15. 根据权利要求14所述的方法,其中,所述第一反馈力矩基于所述位置信息非线性变化。
  16. 根据权利要求15所述的方法,其中,所述基于所述位置信息向所述操作者施加第一反馈力矩包括:
    获取所述末端工具的当前角度和当前角度刚度,基于所述当前角度和所述角度刚度确定所述第一反馈力矩;
    基于所述末端工具的运动方向向所述操作者施加所述第一反馈力矩。
  17. 根据权利要求16所述的方法,其中,所述当前角度刚度与所述当前角度具有对应关系。
  18. 根据权利要求17所述的方法,其中,所述当前角度刚度基于角度刚度函数确定。
  19. 根据权利要求18所述的方法,其中,所述角度刚度函数连续。
  20. 根据权利要求19所述的方法,其中,所述角度刚度函数的导数不小于第三预设值。
  21. 根据权利要求19所述的方法,其中,所述角度刚度函数包括一个一阶导数不连续点。
  22. 根据权利要求19所述的方法,其中,所述角度刚度函数包括两个二阶导数不连续点。
  23. 根据权利要求19所述的方法,其中,在所述角度刚度函数的自变量的第一取值区间,至少超过一半的区间范围内所述角度刚度函数的一阶导数不大于第四预设值;在所述角度刚度函数的自变量的第二取值区间,至少超过一半的区间范围内所述角度刚度函数的一阶导数大于第四预设值;在所述角度刚度函数的自变量的第三取值区间,至少超过一半的区间范围内所述角度刚度函数的一阶导数不大于第四预设值。
  24. 根据权利要求23所述的方法,其中,所述角度刚度函数的自变量的第一取值区间、所述角度刚度函数的自变量的第二取值区间和所述角度刚度函数的自变量的第三取值区间依次连续。
  25. 根据权利要求24所述的方法,其中,所述角度刚度函数的自变量为所述当前角度在第一预 设区域内相对于预设路径的角度当量,所述角度当量的第一取值区间的范围包括0~2/3;所述角度当量的第二取值区间的范围包括2/3~5/6;所述角度当量的第三取值区间的范围包括5/6~1。
  26. 根据权利要求1~25任一项所述的方法,其中,所述基于所述位置信息向操作者提供第一反馈信息包括:
    当所述末端工具位于第一预设区域时,基于所述位置信息向所述操作者提供第一反馈信息。
  27. 根据权利要求26所述的方法,其中,第一预设区域的顶端为所述末端工具在所述对象上的目标位置,所述目标位置跟随所述对象运动。
  28. 根据权利要求26所述的方法,其中,所述第一预设区域包括锥形区域。
  29. 根据权利要求28所述的方法,其中,所述锥形区域的锥角的角度范围为20°~40°。
  30. 根据权利要求28所述的方法,其中,所述锥形区域的高度范围为100mm~300mm。
  31. 根据权利要求26所述的方法,其中,所述方法还包括:
    在所述第一预设区域,当所述末端工具运动时,使所述末端工具向操作者提供第二反馈信息。
  32. 根据权利要求31所述的方法,其中,所述第二反馈信息包括第二反馈力;所述当所述末端工具运动时,使所述末端工具向操作者提供第二反馈信息,包括:
    获取所述末端工具的当前速度和当前阻尼;
    基于所述当前速度和所述当前阻尼确定所述第二反馈力。
  33. 根据权利要求32所述的方法,其中,所述末端工具的允许速度不超过预设速度。
  34. 根据权利要求32所述的方法,其中,所述当前速度和当前阻尼具有对应关系。
  35. 根据权利要求34所述的方法,其中,所述当前阻尼基于阻尼函数确定。
  36. 根据权利要求34所述的方法,其中,所述阻尼函数在超过一半的自变量取值区间内连续。
  37. 根据权利要求36所述的方法,其中,所述阻尼函数的导数不小于第五预设值。
  38. 根据权利要求36所述的方法,其中,所述阻尼函数包括一个一阶导数不连续点。
  39. 根据权利要求36所述的方法,其中,所述阻尼函数包括两个二阶导数不连续点。
  40. 根据权利要求36所述的方法,其中,在所述阻尼函数的自变量的第一取值区间,至少超过一半的区间范围内所述阻尼函数的一阶导数不大于第六预设值;在所述阻尼函数的自变量的第二取值区间,至少超过一半的区间范围内所述阻尼函数的一阶导数大于第六预设值;在所述阻尼函数的自变量的第三取值区间,至少超过一半的区间范围内所述阻尼函数的一阶导数不大于第六预设值。
  41. 根据权利要求40所述的方法,其中,所述阻尼函数的自变量的第一取值区间、所述阻尼函数的自变量的第二取值区间和所述阻尼函数的自变量的第三取值区间依次连续。
  42. 根据权利要求31所述的方法,其中,所述第二反馈信息包括第二反馈力矩;所述当所述末端工具运动时,使所述末端工具向操作者提供第二反馈信息,包括:
    获取所述末端工具的当前角速度以及与所述当前角速度对应的当前旋转阻尼;
    基于所述当前角速度和所述当前旋转阻尼确定所述第二反馈力矩。
  43. 根据权利要求31所述的方法,其中,所述第二反馈信息基于所述对象的生物特征确定。
  44. 根据权利要求26所述的方法,其中,所述方法还包括:
    当所述末端工具不满足预设条件时,输出警示信息。
  45. 根据权利要求44所述的方法,其中,所述当所述末端工具不满足预设条件时,输出警示信息,包括:
    当所述末端工具未按照所述预设路径脱离所述第一预设区域时,输出所述警示信息。
  46. 根据权利要求44所述的方法,其中,所述当所述末端工具不满足预设条件时,输出警示信息,包括:
    当所述末端工具受到的力或力矩大于预设阈值时,输出所述警示信息。
  47. 根据权利要求46所述的方法,其中,所述末端工具包括六维力传感器,所述六维力传感器用于检测所述末端工具受到的力和/或力矩。
  48. 根据权利要求1所述的方法,其中,当检测到所述对象运动时,所述方法还包括:
    获取所述末端工具的第一初始位姿和所述对象的位姿偏移量;
    基于所述第一初始位姿和所述位姿偏移量,确定所述末端工具的目标位姿偏移量;
    基于所述目标位姿偏移量调整所述末端工具至目标位姿,以控制所述末端工具主动跟随所述对象运动。
  49. 根据权利要求48所述的方法,其中,所述方法还包括:
    获取所述末端工具与参考坐标系的第一位姿对应关系;
    所述基于所述目标位姿偏移量调整所述末端工具至目标位姿,包括:
    基于所述第一位姿对应关系和所述目标位姿偏移量确定所述目标位姿。
  50. 根据权利要求48所述的方法,其中,所述方法还包括:
    获取所述对象的第二初始位姿和所述对象的当前位姿;
    基于所述第二初始位姿和所述当前位姿确定所述对象的所述位姿偏移量。
  51. 根据权利要求50所述的方法,其中,所述基于所述第一初始位姿和所述位姿偏移量,确定所述末端工具的目标位姿偏移量,包括:
    基于所述第一初始位姿和所述第二初始位姿确定所述对象与所述末端工具的第二位姿对应关系;
    基于所述位姿偏移量和所述第二位姿对应关系,确定所述目标位姿偏移量。
  52. 根据权利要求1所述的方法,其中,所述末端工具包括髋臼杯,所述对象包括髋臼窝;所述方法还包括:
    检测所述髋臼杯的位姿是否满足第一预设条件;
    响应于是,校准所述髋臼杯。
  53. 根据权利要求52所述的方法,其中,所述校准所述髋臼杯包括:
    当所述髋臼杯的受力大于阈值时,检测所述髋臼杯的受力方向;
    当所述髋臼杯的受力方向与所述髋臼窝的轴线不平行时,执行第一操作;
    当所述髋臼杯的受力方向与所述髋臼窝的轴线平行时,执行第二操作。
  54. 根据权利要求53所述的方法,其中,所述第一操作包括:
    调整所述髋臼杯的轴线方向,使得所述髋臼杯的轴线与所述髋臼窝的轴线平行;
    当所述髋臼杯的轴线与所述髋臼窝的轴线之间的距离大于阈值时,控制所述髋臼杯朝向所述髋臼窝的轴线方向运动,直至所述髋臼杯的轴线与所述髋臼窝的轴线重合或大致重合。
  55. 根据权利要求54所述的方法,其中,所述方法还包括:
    若所述髋臼杯朝向所述髋臼窝的轴线方向运动过程中受到阻挡力,则执行所述第二操作;
    若所述髋臼杯朝向所述髋臼窝的轴线方向运动过程中未受到阻挡力,则在所述髋臼杯的轴线与所述髋臼窝的轴线重合或大致重合时,完成校准。
  56. 根据权利要求53~55任一项所述的方法,其中,所述第二操作包括:
    控制所述髋臼杯沿平行于所述髋臼窝的轴线方向背离所述髋臼窝运动;
    当所述髋臼杯的受力不大于阈值时,控制所述髋臼杯朝向所述髋臼窝的轴线方向运动,直至所述髋臼杯的轴线与所述髋臼窝的轴线重合或大致重合。
  57. 根据权利要求53所述的方法,其中,所述第二操作还包括:
    当所述髋臼杯的受力不大于阈值时,控制所述髋臼杯朝向所述髋臼窝的轴线方向运动,直至所述髋臼杯的轴线与所述髋臼窝的轴线重合或大致重合。
  58. 一种手术机器人,包括:
    机械臂装置,用于控制末端工具运动;
    定位装置,用于获取所述末端工具的第一位姿信息以及对象的第二位姿信息;
    处理器,被配置为:
    获取末端工具的第一位姿信息;
    基于所述第一位姿信息向操作者提供第一反馈信息。
  59. 根据权利要求58所述的手术机器人,其中,所述机械臂装置包括基座和臂组件;所述定位装置包括定位信息获取结构和标记物,所述标记物包括设置于所述基座上的第一标记物和设置于所述对象上的第三标记物。
  60. 根据权利要求59所述的手术机器人,其中,所述定位装置还包括用于指示所述末端工具位姿的第二标记物。
  61. 根据权利要求59所述的手术机器人,其中,所述标记物包括光学阵列、电子定位器、电磁定位器、GPS定位器、陀螺仪、加速度传感器中的至少一种。
  62. 根据权利要求58所述的手术机器人,其中,所述末端工具包括髋臼锉或髋臼杯。
  63. 一种末端工具运动引导方法,包括:
    检测末端工具的当前位置,若末端工具的当前位置未在约束空间的预设路径上,则确定所述末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数,其中,所述约束空间的中心轴为所述末端工具的预设路径,所述约束空间包括嵌套在一起的至少两个子约束空间;
    根据所述当前位置以及所述当前位置对应的距离刚度函数,向所述末端工具输出朝向所述预设路径的第一反馈力。
  64. 一种手术机器人,包括:
    机械臂装置,用于在外力作用下带动末端工具运动,以及向所述末端工具输出反馈力;
    定位装置,用于获取末端工具在约束空间中的当前位置,所述约束空间的中心轴为所述末端工具的预设路径,所述约束空间包括嵌套在一起的至少两个子约束空间;
    处理器,用于通过所述定位装置检测末端工具的当前位置,若所述末端工具的当前位置未在所述约束空间的预设路径上,确定所述末端工具的当前位置对应的子约束空间以及该子约束空间对应的距离刚度函数;根据所述当前位置以及所述当前位置对应的距离刚度函数,通过所述机械臂向所述末端工具输出朝向所述预设路径的第一反馈力。
  65. 一种末端工具位姿的实时修正方法,包括:
    获取末端工具与参考坐标系的第一位姿对应关系,以及所述末端工具与所述对象的第二位姿对应关系;
    检测到所述对象的位姿发生变化时,获取对象位姿偏移量,其中,所述对象的位姿偏移量为所述对象的当前位姿相对于所述对象的初始位姿的偏移量;
    根据所述第一位姿对应关系和所述对象位姿偏移量控制所述末端工具运动,使所述末端工具与所述对象的位姿对应关系恢复至所述第二位姿对应关系。
  66. 一种手术机器人,包括:
    第一姿态获取装置,设置于对象上并与对象保持固定的对应关系,用于获取所述对象的位姿;
    第二姿态获取装置,设置于用于携带末端工具运动的机械臂或末端工具上,用于获取所述末端工具的位姿;
    控制器,用于获取末端工具与参考坐标系的第一位姿对应关系,以及所述末端工具与所述对象的第二位姿对应关系;在检测到所述对象的位姿发生变化时,获取对象位姿偏移量;根据所述第一位姿对应关系和所述对象位姿偏移量控制所述末端工具运动,使所述末端工具与所述对象的位姿对应关系恢复至所述第二位姿对应关系。
  67. 一种自动调整髋臼杯位姿的方法,包括:
    S1、控制髋臼杯从当前位置向预设打杯处运动,并实时检测位姿调整信号,以及在检测到位姿调整信号时,获取所述髋臼杯的当前位姿信息与对象的髋臼窝的当前位姿信息,所述预设打杯处位于所述髋臼窝中;
    S2、根据所述髋臼杯的当前位姿信息和所述髋臼窝的当前位姿信息调整所述髋臼杯的位姿,以使所述髋臼杯的中心轴与所述髋臼窝的中心轴重合;
    S3、如果位姿调整后的髋臼杯未处于所述预设打杯处,则重复执行上述S1和S2。
  68. 一种手术机器人,包括:
    运动模块,包括机械臂,用于带动髋臼杯运动;
    位姿获取模块,包括髋臼杯位姿单元和髋臼窝位姿单元,用于通过所述髋臼杯位姿单元实时获取髋臼杯的当前位姿信息以及通过所述髋臼窝位姿单元实时获取对象的髋臼窝的当前位姿信息;
    控制器,用于根据所述髋臼杯的当前位姿信息和所述髋臼窝的当前位姿信息,调整所述髋臼杯的位姿,以使所述髋臼杯的中心轴与所述髋臼窝的中心轴重合。
PCT/CN2022/104671 2021-07-09 2022-07-08 一种手术机器人及其控制方法 WO2023280310A1 (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
CN202110778767.7A CN113520601B (zh) 2021-07-09 2021-07-09 末端工具位姿的实时修正方法、系统以及手术机器人
CN202110777345.8A CN113509296B (zh) 2021-07-09 2021-07-09 自动调整髋臼杯位姿的方法、系统和手术机器人
CN202110778776.6 2021-07-09
CN202110778767.7 2021-07-09
CN202110778776.6A CN113509270B (zh) 2021-07-09 2021-07-09 末端工具运动引导方法、系统和手术机器人
CN202110777345.8 2021-07-09

Publications (1)

Publication Number Publication Date
WO2023280310A1 true WO2023280310A1 (zh) 2023-01-12

Family

ID=84801327

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/104671 WO2023280310A1 (zh) 2021-07-09 2022-07-08 一种手术机器人及其控制方法

Country Status (1)

Country Link
WO (1) WO2023280310A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116672031A (zh) * 2023-08-02 2023-09-01 北京壹点灵动科技有限公司 机器人的控制方法、装置、处理器及电子设备
CN117243699A (zh) * 2023-11-14 2023-12-19 杭州三坛医疗科技有限公司 一种移位检测方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050182320A1 (en) * 2002-05-21 2005-08-18 Jan Stifter Arrangement for ascertaining function-determining geometric parameters of a joint of a vertebrate
CN101160104A (zh) * 2005-02-22 2008-04-09 马科外科公司 触觉引导系统及方法
CN111870348A (zh) * 2020-07-23 2020-11-03 武汉联影智融医疗科技有限公司 手术机器人辅助定位方法、手术机器人及存储介质
US20210015634A1 (en) * 2018-03-30 2021-01-21 The Regents Of The University Of Michigan System and method for aligning hip replacement prostheses
CN112809686A (zh) * 2021-02-02 2021-05-18 杭州柳叶刀机器人有限公司 一种机器人体态随动控制方法及装置
CN113069207A (zh) * 2021-03-24 2021-07-06 杭州键嘉机器人有限公司 一种机器人辅助髋关节置换手术导航系统
CN113509270A (zh) * 2021-07-09 2021-10-19 武汉联影智融医疗科技有限公司 末端工具运动引导方法、系统和手术机器人
CN113520601A (zh) * 2021-07-09 2021-10-22 武汉联影智融医疗科技有限公司 末端工具位姿的实时修正方法、系统以及手术机器人

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050182320A1 (en) * 2002-05-21 2005-08-18 Jan Stifter Arrangement for ascertaining function-determining geometric parameters of a joint of a vertebrate
CN101160104A (zh) * 2005-02-22 2008-04-09 马科外科公司 触觉引导系统及方法
US20210015634A1 (en) * 2018-03-30 2021-01-21 The Regents Of The University Of Michigan System and method for aligning hip replacement prostheses
CN111870348A (zh) * 2020-07-23 2020-11-03 武汉联影智融医疗科技有限公司 手术机器人辅助定位方法、手术机器人及存储介质
CN112809686A (zh) * 2021-02-02 2021-05-18 杭州柳叶刀机器人有限公司 一种机器人体态随动控制方法及装置
CN113069207A (zh) * 2021-03-24 2021-07-06 杭州键嘉机器人有限公司 一种机器人辅助髋关节置换手术导航系统
CN113509270A (zh) * 2021-07-09 2021-10-19 武汉联影智融医疗科技有限公司 末端工具运动引导方法、系统和手术机器人
CN113520601A (zh) * 2021-07-09 2021-10-22 武汉联影智融医疗科技有限公司 末端工具位姿的实时修正方法、系统以及手术机器人

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116672031A (zh) * 2023-08-02 2023-09-01 北京壹点灵动科技有限公司 机器人的控制方法、装置、处理器及电子设备
CN116672031B (zh) * 2023-08-02 2023-12-19 北京壹点灵动科技有限公司 机器人的控制方法、装置、处理器及电子设备
CN117243699A (zh) * 2023-11-14 2023-12-19 杭州三坛医疗科技有限公司 一种移位检测方法及装置
CN117243699B (zh) * 2023-11-14 2024-03-15 杭州三坛医疗科技有限公司 一种移位检测方法及装置

Similar Documents

Publication Publication Date Title
WO2023280310A1 (zh) 一种手术机器人及其控制方法
JP7233841B2 (ja) ロボット外科手術システムのロボットナビゲーション
US11564761B2 (en) Systems and methods for controlling movement of a surgical tool along a predefined path
US20220151703A1 (en) Patient-Specific Preoperative Planning Simulation Techniques
US10441146B2 (en) Method of measuring distance by an endoscope, and endoscope system
CN107405180B (zh) 用于外科手术机器人系统的交互式引导和操纵检测安排、以及相关联方法
US20210315645A1 (en) Feature identification
JP2018158104A (ja) ロボット外科システムのロボットナビゲーション
CN109152615A (zh) 在机器人手术过程期间识别和跟踪物理对象的系统和方法
CN113925610A (zh) 用于在由虚拟对象限定的目标部位处对患者执行手术的系统和方法
JP6393319B2 (ja) 物体と相互作用するシステム及び方法
WO2017013828A1 (ja) 医療行為支援装置
US20210298846A1 (en) Systems And Methods For Controlling Robotic Movement Of A Tool Based On A Virtual Boundary
EP3860491A1 (en) Navigational aid
US20200214667A1 (en) Ultrasound probe navigation using a haptic feedback device
JP2023511272A (ja) ナビゲーション支援手術中にオフセットをモニタするシステム及び方法
EP3295339B1 (en) Solid-joint deformation-model verification
CN116196112B (zh) 一种机械臂运动控制方法及手术机器人
US20230180995A1 (en) Medical system and control method
JP2023519879A (ja) 触覚インタフェースを備えるロボット脊椎手術システムおよび方法
US20210369472A1 (en) Systems And Methods For Planning Placement Of An Acetabular Implant For A Patient Based On Pelvic Tilt
WO2016208140A1 (ja) 医療行為支援装置
CN113509296B (zh) 自动调整髋臼杯位姿的方法、系统和手术机器人
WO2023040897A1 (zh) 一种手术机器人的空间注册位姿计算方法和系统
US20230329813A1 (en) Systems And Methods For Guided Placement Of A Robotic Manipulator

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22837055

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022837055

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2022837055

Country of ref document: EP

Effective date: 20240209