Mechanical arm pose control method and surgical robot system

CN117679181BActive Publication Date: 2026-11-03SUZHOU MICROPORT ORTHOBOT CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410105285.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-01-25
Publication Date
2026-11-03
Estimated Expiration
2044-01-25

AI Technical Summary

Technical Problem

Existing technologies for controlling the position of robotic arms in hip replacement surgery suffer from poor control stiffness and precision, which affects the bone-grinding effect of the bone-grinding tool.

Method used

By acquiring the current and target positions of the center points of the end-effector and the operating tool of the robotic arm, and using impedance control methods, the impedance torque is calculated based on the deviation to constrain the tool axis to coincide with the central axis of the anatomical structure, thereby improving control accuracy.

Benefits of technology

The control rigidity and precision of the robotic arm were improved, the bone-grinding effect of the bone-grinding tool was enhanced, the alignment of the tool axis with the central axis of the anatomical structure was ensured, and the surgical precision was improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117679181B_ABST
    Figure CN117679181B_ABST
Patent Text Reader

Abstract

The application provides a mechanical arm pose adjustment method and a surgical robot system. The mechanical arm pose adjustment method comprises the following steps: acquiring current positions of a first control point and a second control point; a line connecting the first control point and the second control point constitutes a tool axis, and the tool axis coincides with a mechanical arm end axis; acquiring target positions of the first control point and the second control point; acquiring a first deviation between the current position and the target position of the first control point, and acquiring a second deviation between the current position and the target position of the second control point; and providing impedance control to the mechanical arm based on the first deviation and the second deviation, so that the tool axis coincides with a central axis of an anatomical structure. The control mode of the double control points effectively improves the control stiffness of the mechanical arm.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of medical device technology, specifically relating to a robotic arm posture control method and a surgical robot system. Background Technology

[0002] When performing hip replacement surgery using a surgical robot, a bone-grinding tool needs to be attached to the end of the robotic arm to perform bone-grinding operations on the acetabulum. During the bone-grinding process, it is desirable for the tool to feed along the axis of the acetabulum. To achieve this, existing technologies generally employ Cartesian impedance control of the robotic arm based on the position of the tool's control point at the end of the arm. However, this robotic arm pose control method suffers from disadvantages such as poor control stiffness and low accuracy. Summary of the Invention

[0003] The purpose of this invention is to provide a robotic arm posture control method and a surgical robot system, which aims to improve the control precision of the robotic arm during the execution of hip replacement surgery, thereby improving the bone reshaping effect.

[0004] To achieve the above objectives, the present invention provides a robotic arm pose control method, comprising:

[0005] The current positions of the first control point and the second control point are obtained respectively; the first control point is the center point of the tool loading component connected to the end of the robotic arm, and the second control point is the center point of the operating tool connected to the tool loading component. The line connecting the second control point and the first control point forms the tool axis, and the tool axis coincides with the axis of the end of the robotic arm.

[0006] The target positions of the first control point and the second control point are obtained respectively; when the first control point and the second control point are located at their respective target positions, the tool axis coincides with the central axis of the anatomical structure.

[0007] Obtain the first deviation between the current position of the first control point and the corresponding target position, and obtain the second deviation between the current position of the second control point and the corresponding target position; and,

[0008] Impedance control is provided based on the first deviation and the second deviation to constrain the robotic arm so that the tool axis coincides with the central axis of the anatomical structure.

[0009] Optionally, the step of providing impedance control based on the first deviation and the second deviation includes:

[0010] The first sub-impedance torque is obtained based on the first deviation, and the second sub-impedance torque is obtained based on the second deviation;

[0011] A first impedance torque is obtained based on the first sub-impedance torque and the second sub-impedance torque; the first impedance torque is applied to the robotic arm to constrain the robotic arm.

[0012] Optionally, the step of obtaining the first sub-impedance torque based on the first deviation includes:

[0013] Based on the first deviation, calculate a first corrective torque related to the stiffness of the robotic arm, a second corrective torque related to the damping of the robotic arm, and an inertial compensation torque related to the inertia of the robotic arm.

[0014] Based on the first correction torque, the second correction torque, and the inertia compensation torque corresponding to the first deviation, the first sub-impedance torque is obtained; and / or,

[0015] The step of obtaining the second sub-impedance torque based on the second deviation includes:

[0016] Based on the second deviation, calculate a first corrective torque related to the stiffness of the robotic arm, a second corrective torque related to the damping of the robotic arm, and an inertial compensation torque related to the inertia of the robotic arm.

[0017] The second sub-impedance torque is obtained based on the first correction torque, the second correction torque, and the inertia compensation torque corresponding to the second deviation.

[0018] Optionally, the step of obtaining the current positions of the first control point and the second control point includes:

[0019] Obtain the current pose of the center point of the anatomical structure;

[0020] The pose of the robotic arm's base coordinate system is corrected based on the current pose of the center point of the anatomical structure, and the Y-axis of the corrected robotic arm's base coordinate system is parallel to the central axis of the anatomical structure.

[0021] Based on the pose of the corrected robotic arm base coordinate system, the kinematic parameters of the robotic arm corresponding to the first control point are obtained, and kinematic calculations of the robotic arm are performed based on the kinematic parameters corresponding to the first control point to obtain the current absolute position of the first control point; and,

[0022] Based on the pose of the corrected robot arm base coordinate system, obtain the robot arm kinematic parameters corresponding to the second control point, and perform robot arm kinematic calculation based on the robot arm kinematic parameters corresponding to the second control point to obtain the current absolute position of the first control point.

[0023] Optionally, the step of correcting the pose of the robotic arm's base coordinate system based on the current pose of the center point of the anatomical structure includes:

[0024] The component of the current pose of the center point of the anatomical structure in the Y direction is obtained as a first vector, and the component of the pose of the robot arm base coordinate system before correction in the Y direction is obtained as a second vector; the Y direction is parallel to the central axis of the anatomical structure.

[0025] Obtain the angle between the first vector and the second vector, and obtain the normal vector of the plane containing the first vector and the second vector;

[0026] The axis-angle matrix is ​​obtained based on the included angle and the normal vector;

[0027] Based on the axis-angle matrix, the difference matrix between the current posture of the target point and the posture of the robot arm base coordinate system before correction is obtained;

[0028] The pose of the corrected robotic arm base coordinate system is obtained based on the difference matrix and the pose of the robotic arm base coordinate system before correction.

[0029] Optionally, the step of obtaining the target location of the first control point includes:

[0030] Obtain the current position and the positions of the first control point at the previous n time points;

[0031] The predicted position of the first control point is obtained based on its current position and its positions at the previous n time points.

[0032] The target position of the first control point is obtained based on its current position and its predicted position; and / or,

[0033] The steps for obtaining the target position of the second control point include:

[0034] Obtain the current position and the positions of the second control point at the previous n time points;

[0035] The predicted position of the second control point is obtained based on its current position and its positions at the previous n time points.

[0036] The target position of the second control point is obtained based on the current position and the predicted position of the second control point.

[0037] Optionally, n is an even number;

[0038] The step of obtaining the predicted position of the first control point based on its current position and its positions at the previous n time points includes:

[0039] Place the first control point first The position at each time point is input into the linear position prediction model to obtain the primary predicted position of the first control point;

[0040] The primary predicted position of the first control point, and the first control point in the subsequent... The position of the first control point at each time point and its current position are input into a multinomial position prediction model to obtain the predicted position of the first control point; and / or,

[0041] The step of obtaining the predicted position of the second control point based on its current position and its positions at the previous n time points includes:

[0042] Place the second control point first. The position at each time point is input into the linear position prediction model to obtain the primary predicted position of the second control point;

[0043] The primary predicted position of the second control point, and the second control point are placed later. The position of the second control point at each time point and the current position of the second control point are input into the multinomial position prediction model to obtain the predicted position of the second control point.

[0044] Optionally, the step of obtaining the first deviation includes:

[0045] Obtain the Chebyshev distance between the current position of the first control point and the corresponding target position;

[0046] The Chebyshev distance between the current position of the first control point and the corresponding target position is processed in a second order to obtain the first processed distance.

[0047] The first processing distance is projected onto the Y direction, and the value of the projection of the first processing distance onto the Y direction is used as the first deviation and / or...

[0048] The steps for obtaining the second deviation include:

[0049] Obtain the Chebyshev distance between the current position of the second control point and the corresponding target position;

[0050] The Chebyshev distance between the current position of the second control point and the corresponding target position is processed in a second order to obtain the second processed distance.

[0051] The second processing distance is projected onto the Y direction, and the value of the projection of the second processing distance onto the Y direction is used as the second deviation;

[0052] The Y direction is parallel to the central axis of the anatomical structure.

[0053] Optionally, the robotic arm pose control method further includes:

[0054] Virtual safety boundaries are planned based on the pose of the center point of the anatomical structure.

[0055] The method determines whether the end effector of the robotic arm touches the virtual safety boundary. If so, it generates and controls a display device to display an alarm message, and also generates a second impedance torque. The second impedance torque is applied to the robotic arm to drive it to move until the end effector returns to the virtual safety boundary. And / or, the robotic arm pose control method further includes:

[0056] Obtain target information;

[0057] Determine whether the target information is abnormal. If so, generate and control a display device to display alarm information, and also lock the robotic arm.

[0058] The target information is at least one of the following: the current pose of the center point of the anatomical structure, the deviation between the current pose of the end effector of the robotic arm and the pose at the previous moment, and the projection of the deviation between the current pose of the end effector of the robotic arm and the initial pose onto the perpendicular direction of the Y direction; the Y direction is parallel to the central axis of the anatomical structure.

[0059] To achieve the above objectives, the present invention also provides a surgical robot system, comprising:

[0060] A robotic arm, the end of which is used to connect to a bone-grinding tool via a tool loading device;

[0061] A navigation device includes a locator and a tool target, the tool target being positioned at the end effector of a robotic arm; the locator is used to identify the tool target to obtain the pose of the end effector of the robotic arm, the pose of the end effector being used to obtain the center point of the tool loading component and the center point of the operating tool; and,

[0062] The control unit is communicatively connected to the positioning device and is configured to execute the robotic arm pose control method as described above.

[0063] Compared with the prior art, the robotic arm pose control method and surgical robot system of the present invention have the following advantages:

[0064] The aforementioned robotic arm pose control method includes: acquiring the current positions of a first control point and a second control point; the first control point is the center point of a tool loading component connected to the end of the robotic arm, and the second control point is the center point of a bone-grinding tool connected to the tool loading component; the line connecting the second control point and the first control point constitutes a tool axis, which coincides with the axis of the end of the robotic arm; acquiring the target positions of the first control point and the second control point; when the first control point and the second control point are respectively located at their corresponding target positions, the tool axis coincides with the central axis of the anatomical structure; acquiring a first deviation between the current position of the first control point and the target position, and a second deviation between the current position of the second control point and the target position; and providing impedance control based on the first deviation and the second deviation to constrain the robotic arm so that the tool axis coincides with the central axis of the anatomical structure. By using two control points (i.e., the first control point and the second control point) to perform impedance control on the robotic arm, the tool axis is kept as close as possible to the central axis of the anatomical structure, resulting in high control stiffness and accuracy, and effectively improving the bone-grinding effect. Attached Figure Description

[0065] The accompanying drawings are provided to better understand the invention and are not intended to unduly limit the scope of the invention. Wherein:

[0066] Figure 1 This is a schematic diagram illustrating an application scenario of the surgical robot system provided by the present invention according to an embodiment;

[0067] Figure 2 This is a partial schematic diagram of an application scenario of the surgical robot system provided by the present invention according to an embodiment;

[0068] Figure 3 This is a flowchart illustrating the bone registration and mapping of the central axis of the planned anatomical structure to the real-world scene during the application of the surgical robot system provided by the present invention according to an embodiment.

[0069] Figure 4 This is a flowchart illustrating the initial positioning of the robotic arm during the application of the surgical robot system provided by an embodiment of the present invention.

[0070] Figure 5 This is an overall flowchart of the robotic arm pose control method executed by the control unit in the application of the surgical robot system provided by the present invention according to an embodiment;

[0071] Figure 6This is a partial flowchart of a robotic arm pose control method executed by the control unit of a surgical robot system according to an embodiment of the present invention. The flowchart shows the steps of correcting the base coordinate system of the robotic arm.

[0072] Figure 7 This is a partial flowchart of the robotic arm pose control method executed by the control unit in the application of the surgical robot system provided by the present invention according to an embodiment. The flowchart mainly shows the process of correcting the pose of the robotic arm base coordinate system.

[0073] Figure 8 This is a partial flowchart of a robotic arm pose control method executed by the control unit in the application of a surgical robot system according to an embodiment of the present invention. The flowchart mainly shows the process of obtaining the current position of the first control point and the second control point.

[0074] Figure 9 This is a partial flowchart of the robotic arm pose control method executed by the control unit in the application of the surgical robot system provided by the present invention according to an embodiment. The flowchart mainly shows the process of obtaining the target positions of any first control point and second control point.

[0075] Figure 10 This is a partial flowchart of the robotic arm pose control method executed by the control unit in the application of the surgical robot system provided by the present invention according to an embodiment. The figure mainly shows a schematic diagram of obtaining the deviation between the current position and the target position of any first control point and second control point.

[0076] Figure 11 This is a schematic diagram of the impedance controller pre-stored in the control unit of the surgical robot system provided according to an embodiment of the present invention;

[0077] Figure 12 This is a schematic diagram of parameter tuning during the design process of the impedance controller pre-stored in the control unit of the surgical robot system provided by an embodiment of the present invention.

[0078] Figure 13 This is a partial flowchart of the robotic arm pose control method executed by the control unit in the application of the surgical robot system provided by the present invention according to an embodiment. The flowchart shows the implementation steps of the first protection strategy.

[0079] Figure 14 This is a schematic diagram of the virtual safety boundary planned by the control unit of the surgical robot system provided according to an embodiment of the present invention;

[0080] Figure 15This is a partial flowchart of the robotic arm pose control method executed by the control unit during the application of the surgical robot system provided by the present invention according to an embodiment. The flowchart shows the implementation steps of the second protection strategy. Detailed Implementation

[0081] The following specific examples illustrate the implementation of the present invention. Those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and various details in this specification can be modified or changed based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the illustrations provided in this embodiment are only schematic representations of the basic concept of the present invention. Therefore, the drawings only show components related to the present invention and are not drawn according to the actual number, shape, and size of components in implementation. In actual implementation, the type, quantity, and proportion of each component can be arbitrarily changed, and the component layout may also be more complex. Furthermore, each embodiment described below has one or more technical features; however, this does not mean that the user of the present invention must simultaneously implement all technical features in any embodiment, or can only separately implement some or all technical features in different embodiments. In other words, provided implementation is possible, those skilled in the art can selectively implement some or all technical features in any embodiment, or selectively implement a combination of some or all technical features in multiple embodiments, based on the disclosure of the present invention and depending on design specifications or implementation needs, thereby increasing the flexibility of the implementation of the present invention.

[0082] To make the objectives, advantages, and features of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings. It should be noted that the drawings are all in a very simplified form and use non-precise proportions, and are only used to facilitate and clearly illustrate the objectives of the embodiments of the present invention. The same or similar reference numerals in the drawings represent the same or similar parts.

[0083] Figure 1 and Figure 2 This diagram illustrates an application scenario of the surgical robot system provided in an embodiment of the present invention. For example... Figure 1 and Figure 2As shown, the surgical robot system includes a robotic arm 100, a navigation device, and a control unit. The end effector of the robotic arm 100 is used to mount a tool loading member 300, allowing the end effector to connect to an operating tool via the tool loading member 300. The central axis of the operating tool coincides with the axis of the end effector of the robotic arm 100. The central axis of the operating tool passes through the center point of the tool loading member 300 and the center point of the operating tool; that is, the line connecting the center point of the tool loading member 300 and the center point of the operating tool constitutes the central axis of the operating tool. For simplicity, the central axis of the operating tool will be referred to as the tool axis in the following text. The operating tool is used to perform predetermined operations on the anatomical structure of the target object 1. In this embodiment of the invention, the surgical robot system is applied to hip replacement surgery. The anatomical structure is the acetabulum, and the operating tool is a bone-grinding tool 400, which specifically includes an electrically driven unit 410 and an acetabular reamer 420 connected to the electrically driven unit 410. The electrically driven unit 410 drives the acetabular reamer 420 to perform bone-grinding operations on the acetabulum. The navigation device includes a bone target 210, a tool target 220, and a locator 230. The bone target 210 is positioned on the pelvis of the target object 1, and the tool target 220 is positioned at the end of the robotic arm 100. The locator 230 acquires the pose information of the bone target 210 and the tool target 220, and sends these pose information to the control unit. Those skilled in the art will understand that, based on the pose information of the bone target 210, the pose information of various actual registration points on the pelvis, such as the center point of the acetabulum, can be obtained; and based on the pose information of the tool target 220, the pose information of the center point of the tool loading component 300 and the center point of the bone grinding tool 400 can be obtained. The pose information includes position information and orientation information. The bone target 210 and the tool target 220 can be optical targets, and the locator 230 is correspondingly an optical locator. In addition, in actual surgery, target object 1 is the patient, while in simulated surgery, target object 1 is a human model.

[0084] The partial procedure for performing hip replacement surgery using a surgical robot system is as follows: First, bone registration is performed, and based on the results, the pre-planned central axis 01 of the acetabulum is mapped to the real-world scene, obtaining the initial pose of the central axis 01 of the acetabulum in the real-world scene. Then, the robotic arm 100 is initially positioned so that the tool axis (i.e., the central axis of the bone-grinding tool 400) coincides with the central axis 01 of the acetabulum in the real-world scene. Afterward, the operator can push the running bone-grinding tool 400 along the central axis 01 of the acetabulum in the real-world scene to perform bone-grinding operations on the acetabulum. The bone-grinding tool 400 feeding along the central axis 01 of the acetabulum in the real-world scene means that during the bone-grinding process, the bone-grinding tool 400 moves in a direction close to the center point of the acetabulum, and the tool axis coincides with the central axis 01 of the acetabulum in the real-world scene.

[0085] The bone registration process can be as follows: Figure 3 As shown, it includes:

[0086] Step S01: The operator holds the registration target and aligns it with the actual registration point on the pelvis. Simultaneously, the locator 230 acquires the pose of the registration target to determine the position of the actual registration point. It can be understood that the actual registration point corresponds one-to-one with the pre-planned registration point. The registration target can be a pointed target.

[0087] Step S02: Use the control unit to register the planned registration point and the actual registration point to obtain the first transformation matrix between the planned registration point and the actual registration point.

[0088] After bone registration is completed, step S03 can be executed. Step S03 includes using the first transformation matrix to map the preoperatively planned central axis O1 of the acetabulum to the real scene, thereby obtaining the central axis O1 of the acetabulum in the real scene.

[0089] The initial positioning operation of the robotic arm 100 can be performed as follows: Figure 4 As shown, it includes:

[0090] Step S04: Obtain the original pose of the tool target 220.

[0091] Step S05: Obtain the original pose of the end effector of the robotic arm 100 based on the original pose of the tool target 220.

[0092] Step S06: Calculate the second transformation matrix between the original pose of the tool target 220 and the initial pose of the central axis 01 of the acetabulum in the real scene.

[0093] Step S07: Based on the original pose and the second transformation matrix of the end effector of the robotic arm 100, obtain the target pose of the end effector of the robotic arm 100. When the end effector of the robotic arm 100 reaches the target pose, the tool axis coincides with the central axis O1 of the acetabulum in the real scene.

[0094] Step S08: Control the movement of the robotic arm 100 until the end of the robotic arm 100 reaches the target pose to complete the initial positioning of the robotic arm 100. The pose of the end of the robotic arm 100 at this time is called the initial pose of the end of the robotic arm 100.

[0095] Those skilled in the art will understand that during bone grinding, the feed direction of the bone grinding tool 400 often deviates from the central axis 01 of the acetabulum in the displayed scene due to various reasons. Therefore, during bone grinding, the control unit is configured to execute a robotic arm pose control method to make the tool axis coincide with the central axis 01 of the acetabulum in the real scene as much as possible, so that the bone grinding tool 400 feeds along the central axis 01 of the acetabulum in the real scene. The basic flow of the robotic arm pose control method is as follows: Figure 5 As shown, it includes:

[0096] Step S100: Obtain the current position of the first control point and the current position of the second control point. The first control point is the center point of the tool loading component 300, and the second control point is the center point of the bone grinding tool 400. Thus, the line connecting the first control point and the second control point constitutes the tool axis described above.

[0097] Step S200: Obtain the target positions of the first control point and the second control point. It can be understood that when the first and second control points are at their respective target positions, the tool axis coincides with the central axis O1 of the acetabulum in the real-world scene.

[0098] Step S300: Obtain the first deviation between the target position and the current position of the first control point, and obtain the second deviation between the target position and the current position of the second control point.

[0099] Step S400: Provide impedance control based on the first deviation and the second deviation to constrain the robotic arm 100 so that the tool axis coincides with the central axis O1 of the acetabulum in the real scene.

[0100] It should be understood that "the tool axis coincides with the central axis 01 of the acetabulum in the real-world scenario" includes both the case where the tool axis is completely coincident with the central axis 01 of the acetabulum in the real-world scenario and the case where the tool axis is substantially coincident with the central axis 01 of the acetabulum in the real-world scenario. It can also be understood that this robotic arm pose control method is repeatedly executed throughout the bone-grinding process.

[0101] This robotic arm pose control method controls the pose of the end effector of the robotic arm 100 based on the pose of two control points. Compared with the existing technology that only uses the control point of the end effector of the robotic arm for single-point control, it changes the single-point control stiffness to line control stiffness, effectively improving control accuracy and improving bone grinding effect.

[0102] The following section will provide a detailed introduction to each step of the robotic arm's pose control method.

[0103] The operation of step S100 actually includes obtaining the current pose of the tool target 220, and then performing kinematic calculations on the robotic arm 100 based on the current pose of the tool target 220 to obtain the current position of the first control point and the current position of the second control point.

[0104] In practice, during the bone-grinding procedure on the acetabulum, the patient will move slightly under the action of the grinding tool 400, causing a change in the pose of the center point of the acetabulum and deviating the pose of the central axis 01 of the acetabulum in the real-world scenario from its initial pose. If kinematic calculations are performed using the original pose of the robotic arm's base coordinate system (i.e., the pose of the robotic arm's base coordinate system before bone grinding), the obtained positions of the first and second control points will be relative to the current pose of the central axis 01 of the acetabulum in the real-world scenario. Using the relative positions of the first and second control points to control the robotic arm's pose is not conducive to improving control stiffness.

[0105] Therefore, step S100 is preferably performed based on the real-time pose of the center point of the acetabulum. Specifically, as... Figure 6 As shown, step S100 includes steps S110, S120 and S130.

[0106] Step S110 includes obtaining the current pose of the center point of the acetabulum. Optionally, this step is implemented by obtaining the current pose of the central axis 01 of the acetabulum in the real scene based on the current pose of the bone target 210 and the third transformation matrix between the pose of the bone target 210 and the pose of the central axis 01 of the acetabulum in the real scene. It can be understood that the pose of the central axis 01 of the acetabulum in the real scene is related to the pose of the center point of the acetabulum. That is, after obtaining the current pose of the central axis 01 of the acetabulum in the real scene, the current pose of the center point of the acetabulum can be obtained. In addition, the third transformation matrix can be executed at any time after the central axis 01 of the acetabulum planned before surgery is mapped to the real scene and before bone grinding. It is obtained by obtaining the pose of the bone target 210 before bone grinding, and then calculating the third transformation matrix based on the pose of the bone target 210 before bone grinding and the initial pose of the central axis 01 of the acetabulum in the real scene.

[0107] Step S120 includes correcting the robot arm's base coordinate system based on the current pose of the acetabulum's center point, such that the Y-axis of the corrected robot arm base coordinate system is parallel to the central axis O1 of the acetabulum in the real-world scene. In an exemplary implementation, the specific operation of this step is as follows: Figure 7 As shown, it includes:

[0108] Step S121: Obtain the Y-direction component of the current pose of the center point of the acetabulum, as the first vector. Also, obtain the Y-direction component of the pose of the robot arm's base coordinate system before correction, as the second vector. The Y-direction is parallel to the central axis O1 of the acetabulum in the current real-world scene.

[0109] Step S122: Calculate the angle between the first vector and the second vector, and the normal vector of the plane containing the first vector and the second vector.

[0110] Step S123: Calculate the axis-angle matrix between the current pose of the center point of the acetabulum and the pose of the robot arm base coordinate system before correction based on the included angle and normal vector obtained in step S122. The axis-angle matrix can characterize the difference between the current pose of the center point of the acetabulum and the pose of the robot arm base coordinate system before correction.

[0111] Step S124: Convert the axis-angle matrix obtained in step S123 into a rotation matrix using the Rodriguez formula, and use this rotation matrix as the difference matrix between the current pose of the center point of the acetabulum and the pose of the robot arm base coordinate system before correction.

[0112] Step S125: Calculate the pose of the corrected robotic arm base coordinate system based on the difference matrix between the pose of the robotic arm base coordinate system before correction and the pose obtained in step S124. The specific calculation formula is: PoseBase = PoseBase0 * Terr, where PoseBase represents the pose of the corrected robotic arm base coordinate system, PoseBase0 represents the pose of the robotic arm base coordinate system before correction, and Terr represents the difference matrix between the current pose of the center point of the acetabulum and the pose of the robotic arm base coordinate system before correction.

[0113] Step S130 includes obtaining the current absolute position of the first control point based on the calibrated robot arm base coordinate system as the current position of the first control point, and obtaining the current absolute position of the second control point as the current position of the second control point. The specific operation process is as follows: Figure 8As shown, the procedure includes steps S131, S132, and S133. Step S131 involves obtaining the first kinematic parameters corresponding to the first control point and the second kinematic parameters corresponding to the second control point based on the pose of the corrected robotic arm base coordinate system. Those skilled in the art will understand that the first control point is equivalent to the end-effector control point of the robotic arm 100, while the second control point is located on the bone-grinding tool 400. Therefore, the portion of the bone-grinding tool 400 located between the second and first control points can be considered a link of the robotic arm. Thus, the robotic arm model corresponding to the first control point is different from the robotic arm model corresponding to the second control point, resulting in different first and second kinematic parameters. Step S132 involves performing kinematic calculations on the robotic arm based on the first kinematic parameters to obtain the pose transformation matrix of the first control point, and performing kinematic calculations on the robotic arm based on the second kinematic parameters to obtain the pose transformation matrix of the second control point. Step S132 includes obtaining the inverse of the Jacobian matrix of the first control point based on the pose transformation matrix of the first control point, thereby obtaining the current absolute position of the first control point, and obtaining the inverse of the Jacobian matrix of the second control point based on the pose transformation matrix of the second control point, thereby obtaining the current absolute position of the second control point.

[0114] Therefore, in subsequent operations, the absolute positions of the first and second control points can be used to control the pose of the end effector of the robotic arm 100, thereby further improving control stiffness. Furthermore, by correcting the robotic arm's base coordinate system, the position and attitude of the tool axis are decoupled, eliminating attitude deviation terms. This avoids problems such as abrupt Euler angle attitude changes, axis angle attitude integration failure, and quaternion attitude nonlinear mapping when executing step S400 to obtain the impedance torque. It also reduces impedance parameters, preventing coupling between attitude control parameters and position control parameters, thus avoiding problems such as limited impedance torque output and reverse disturbances.

[0115] The embodiments of the present invention do not particularly limit the specific implementation of step S200. However, in a preferred implementation, step S200 is executed using a position prediction operator, as detailed below. Figure 9 As shown, it includes:

[0116] Step S210: Obtain the current position of the first control point and its position at the previous n time points, and obtain the current position of the second control point and its position at the previous n time points.

[0117] Step S220: Based on the current position of the first control point and its position at the previous n times, and a predetermined position prediction model, obtain the predicted position of the first control point; and based on the current position of the second control point and its position at the previous n times, and a predetermined position prediction model, obtain the predicted position of the second control point.

[0118] Step S230: Obtain the target position of the first control point based on the current position and the predicted position of the first control point, and obtain the target position of the second control point based on the current position and the predicted position of the second control point.

[0119] When n is even, and the predetermined prediction model includes a linear location prediction model and a polynomial location prediction model, step S220 more specifically includes:

[0120] Step S221: Place the first control point in front The position at each time point is input into a linear position prediction model to obtain the initial predicted position of the first control point, and the position of the second control point is then placed in front. The position at each time point is input into the linear position prediction model to obtain the primary predicted position of the second control point.

[0121] Step S222: Set the primary predicted position of the first control point, and place the first control point in the later... The position of the first control point at a given time and the current position of the second control point are input into the multinomial position prediction model to obtain the predicted position of the first control point, and the initial predicted position of the second control point and the position of the second control point in the subsequent... The position at each moment and the current position of the second control point are input into the multinomial position prediction model to obtain the predicted position of the second control point.

[0122] In a specific embodiment, n can be 4. Thus, step S210 obtains the positions of the first control point and the second control point at five consecutive moments. Following the order from first to last, the five positions of the first control point are denoted as P11, P12, P13, P14, and P15, and the five positions of the second control point are denoted as P21, P22, P23, P24, and P25. It can be understood that P15 is the current position of the first control point, and P25 is the current position of the second control point.

[0123] Step S221 includes inputting P11, P12 and P13 into the linear position prediction model to obtain the primary predicted position of the first control point, denoted as predict11, and inputting P21, P22 and P23 into the linear position prediction model to obtain the primary predicted position of the second control point, denoted as predict21.

[0124] Step S222 includes inputting predict11, P14 and P15 into the polynomial position prediction model to obtain the predicted position of the first control point, denoted as predict12; and inputting predict21, P24 and P25 into the polynomial position prediction model to obtain the predicted position of the second control point, denoted as predict22.

[0125] Step S230 can calculate the target position of the first control point based on the formula TP1 = confidence * P15 + (1 - confidence) * predict12, and calculate the target position of the second control point based on the formula TP2 = confidence * P25 + (1 - confidence) * predict22. In the formula, TP1 represents the target position of the first control point, TP2 represents the target position of the second control point, and confidence represents the preset confidence level.

[0126] The specific operation of step S300 is as follows: Figure 10 As shown, it includes:

[0127] Step S310: Obtain the Chebyshev distance between the current position and the target position of the first control point; and obtain the Chebyshev distance between the current position and the target position of the second control point.

[0128] Step S320: Perform second-order processing on the Chebyshev distance between the current position and the target position of the first control point to obtain the first processed distance; and perform second-order processing on the Chebyshev distance between the current position and the target position of the second control point to obtain the second processed distance.

[0129] Step S330: Project the first processing distance and the second processing distance onto the Y direction respectively, and use the value of the projection of the first processing distance onto the Y direction as the first deviation, and use the value of the projection of the second processing distance onto the Y direction as the second deviation.

[0130] In an alternative embodiment, step S310 obtains the Euclidean distance between the current position of the first control point and the target position, and the Euclidean distance between the current position of the second control point and the target position. Compared to using Euclidean distance to obtain the first and second deviations, the accuracy of the first and second deviations obtained using Chebyshev distance is higher. Moreover, when performing step S200 through the position prediction operator and step S300 based on Chebyshev distance, numerical jump problems can be effectively avoided, further improving the accuracy of the obtained first and second deviations.

[0131] Please refer to Figure 5 and Figure 6 Step S400 includes:

[0132] Step S410: Obtain the first sub-impedance torque based on the first deviation, and obtain the second sub-impedance torque based on the second deviation.

[0133] Step S420: Obtain the first impedance torque based on the first sub-impedance torque and the second sub-impedance torque. The first impedance torque is applied to the robotic arm 100 to constrain the robotic arm 100.

[0134] Step S430: Control a power mechanism to apply a first resistive torque to the robotic arm 100, so that the tool axis coincides with the central axis O1 of the acetabulum in the real scene.

[0135] Specifically, step S410 includes calculating a first correction torque related to the stiffness of the robotic arm 100, a second correction torque related to the damping of the robotic arm 100, and an inertia compensation torque related to the inertia of the robotic arm 100, based on the first deviation; and calculating the first correction torque related to the stiffness of the robotic arm 100, the second correction torque related to the damping of the robotic arm 100, and the inertia compensation torque related to the inertia of the robotic arm 100, based on the second deviation. Then, a first sub-impedance torque is obtained based on the first correction torque, the second correction torque, and the inertia compensation torque corresponding to the first deviation; and a second sub-impedance torque is obtained based on the first correction torque, the second correction torque, and the inertia compensation torque corresponding to the second deviation.

[0136] In practice, step S410 involves storing the first deviation input in the control unit in advance using a first impedance controller, which outputs a first sub-impedance torque; and storing the second deviation input in the control unit in advance using a second impedance controller, which outputs a second sub-impedance torque.

[0137] In this embodiment of the invention, the first impedance controller and the second impedance controller have the same structure, both including the following: Figure 11 The input module 501, the first calculation module 502, the second calculation module 503, the third calculation module 504, and the fourth calculation module 505 shown are connected to the input module 501, and the fourth calculation module 505 is connected to the first calculation module 502, the second calculation module 503, and the third calculation module 504.

[0138] During operation, input module 501 is used to input the corresponding deviation (first deviation or second deviation). First calculation module 502 is used to calculate a first correction torque related to the stiffness of the robotic arm 100 based on the deviation. Second calculation module 503 is used to calculate the derivative based on the input deviation, and then calculate a second correction torque related to the damping of the robotic arm 100 based on the derivative. The derivative refers to the difference between the deviation input at the previous moment and the deviation input at the current moment. Third calculation module 504 is used to calculate the inertia based on the input deviation, and then calculate an inertia compensation torque related to the inertia of the robotic arm 100 based on the inertia. Calculating the inertia based on the input deviation is well known to those skilled in the art and will not be elaborated here. Fourth calculation module 504 is used to calculate the sub-impedance torque based on the first correction torque, the second correction torque, and the inertia compensation torque.

[0139] The formulas for calculating the first correction torque are: f1 = StiffnessCoe * JointStiffnessRatio * APE. The formula for calculating the second correction torque is: f2 = DampingCoe * JointDampingRatio * DAPE. The formula for calculating the inertia compensation torque is: f3 = CompCoe * OAPE. The formula for calculating the sub-impedance torque is: F = f1 + f2 + f3. In the formula, f1 represents the first correction torque, StiffnessCoe represents the stiffness parameter of the robotic arm 100, JointStiffnessRatio represents the stiffness coefficient of the joint of the robotic arm 100, APE represents the input deviation (i.e., the first deviation or the second deviation), f2 represents the second correction torque, DampingCoe represents the damping coefficient of the robotic arm 100, JointDampingRatio represents the damping coefficient of the joint of the robotic arm 100, DAPE represents the derivative; f3 represents the inertia compensation torque, CompCoe represents the inertia parameter of the robotic arm 100, OAPE represents the inertia quantity, and F represents the sub-impedance torque.

[0140] Those skilled in the art will understand that impedance controllers require parameter tuning during the design process. As described above, both the first and second impedance controllers have three parameters: stiffness, damping, and inertia compensation. Therefore, these three parameters need to be tuned during the design of the impedance controller. Figure 12 This diagram illustrates the parameter tuning process of the impedance controller according to an embodiment of the present invention. Please refer to it. Figure 12The parameter tuning includes steps S001, S002, and S003 executed sequentially. Step S001 involves designing stiffness parameters, fixing the step size, and tuning the stiffness reference value of the robotic arm 100 until the impedance controller is stable and free of overshoot. The stiffness parameters are designed according to the formula: StiffnessCoe = Baseval * Motorlnertia, where Baseval represents the stiffness reference value of the robotic arm 100, and Motorlnertia represents the inherent property of the joint motor of the robotic arm 100. Step S002 involves designing damping parameters using the tuned stiffness parameters of the robotic arm 100, and tuning the damping scaling constant ratio until the impedance controller is stable and free of oscillation. The damping parameters are designed according to the formula: DampingCoe = StiffnessCoe * ScaleRatio, where ScaleRatio represents the damping scaling constant ratio. Step S003 involves designing inertia compensation parameters and tuning the bandwidth until the impedance controller is stable and free of steady-state error. The inertial compensation term parameter design satisfies the formula: CompCoe = Bandwidth * CutoffFreq / Cycletime, where Bandwidth represents the bandwidth, CutoffFreq represents the cutoff bandwidth, and Cycletime represents the sampling time. This tuning method avoids the problem of steady-state error instability. Moreover, after correcting the robot arm's base coordinate system using the current pose of the acetabulum's center point, the impedance parameters are reduced (i.e., there is no longer an attitude deviation term), thereby improving the efficiency of impedance controller parameter tuning. It is understood that at least one of the stiffness, damping, and inertial compensation terms of the first and second impedance controllers is different.

[0141] Step S420 actually involves calculating the sum of the first sub-impedance torque and the second sub-impedance torque as the first impedance torque.

[0142] Furthermore, the control unit also executes the first protection strategy and / or the second protection strategy in real time during the bone grinding process to ensure the safe operation of the robotic arm 100 and reduce the occurrence of accidents.

[0143] Please refer to Figure 13 and Figure 14 The first protection strategy includes:

[0144] Step S510: Plan virtual safety boundaries based on the current pose of the center point of the acetabulum.

[0145] Step S520: Determine whether the end of the robotic arm 100 touches the virtual safety boundary 610. If so, proceed with steps S530 and S540.

[0146] Step S530 includes calculating the second resistive torque and controlling a power mechanism to apply the second resistive torque to the robotic arm 100 to drive the robotic arm 100 to move to the end of the robotic arm 100 back into the virtual safety boundary 610.

[0147] Step S540 includes generating a first alarm message and controlling a display device to display the first alarm message.

[0148] In an exemplary embodiment, the virtual safety boundary 610 includes a first circular surface 611, a second circular surface 612, and a side surface 613, where the side surface 613 is part of a conical surface. The diameter of the first circular surface 611 is smaller than the diameter of the second circular surface 612. The center of the first circular surface 611 is the center point of the acetabulum. The second circular surface 612 is coaxial with the first circular surface 611 and is located near the end of the robotic arm 100. Thus, the central axis 01 of the acetabulum in the real-world scenario constitutes the central axis of the virtual safety boundary 610, and the space enclosed by the virtual safety boundary 610 is frustum-shaped. It should be understood that the diameters of the first circular surface 611 and the second circular surface 612, as well as the distance between the first and second circular surfaces 611 and 612, are all set according to actual needs. Furthermore, the spatial pose of the virtual safety boundary 610 can be calculated based on the pose of the center point of the acetabulum. The specific calculation method is well-known to those skilled in the art and will not be described in detail here.

[0149] Step S520 specifically includes obtaining the distance vector between the first control point and the second control point as a third vector, and obtaining the distance vector from the first control point to the virtual safety boundary 610 as a fourth vector. The third vector points from the first control point to the second control point, and the fourth vector points from the first control point to the first target point on the virtual safety boundary 610, and the fourth vector is perpendicular to the tangent at the first target point. Then, the angle between the third and fourth vectors is calculated, and the vector magnitude of the fourth vector is calculated. Subsequently, it is determined whether the angle between the third and fourth vectors is greater than a first preset value, and whether the vector magnitude of the fourth vector is greater than a second preset value. If the angle between the third and fourth vectors is greater than the first preset value, and the vector magnitude of the fourth vector is greater than the second preset value, then it is determined that the end effector of the robotic arm 100 has touched the virtual boundary 610. It should be noted that when the end effector of the robotic arm 100 touches the virtual safety boundary, at least one of the first control point and the second control point is located outside the virtual safety boundary.

[0150] Step S530 includes obtaining the distance vector from the second control point to the virtual safety boundary 610 as the fifth vector. The fifth vector points from the second control point to the second target point on the virtual safety boundary 610, and the fifth vector is perpendicular to the tangent at the second target point. Then, the vector magnitude of the fifth vector is calculated. Next, the vector magnitude of the fourth vector is input into the third impedance controller pre-stored in the control unit to obtain the third sub-impedance torque, and the vector magnitude of the fifth vector is input into the fourth impedance controller predicted in the control unit to obtain the fourth sub-impedance torque. Finally, the sum of the third and fourth sub-impedance torques is calculated as the second impedance torque.

[0151] The third and fourth impedance controllers are constructed in the same way as the first impedance controller described above, and their parameter tuning processes are also the same. The difference lies in the specific value of at least one of the stiffness, damping, and inertia compensation terms.

[0152] Please refer to Figure 15 The second security strategy includes:

[0153] Step S710: Obtain target information.

[0154] Step S720: Determine if the target information is abnormal. If so, proceed to steps S730 and S740.

[0155] Step S730: Generate a second alarm message and control a display device to display the second alarm message.

[0156] Step S740: Lock the robotic arm 100 to prevent it from moving.

[0157] The target information includes at least one of the following: the current pose of the center point of the acetabulum, the deviation between the current pose of the end effector of the robotic arm 100 and the pose at the previous moment, and the projection of the deviation between the current pose of the end effector of the robotic arm 100 and its initial pose onto the perpendicular direction of the Y direction.

[0158] When the target information includes the current pose of the center point of the acetabulum, an abnormal target information refers to any of the following situations: the current pose of the center point of the acetabulum acquired by the control unit is a non-numerical value, a blank signal, or an infinite value. Here, the reason why the current pose of the center point of the acetabulum acquired by the control unit is a non-numerical value may be due to an anomaly in the process of solving the pose of the center point of the acetabulum based on the current pose of the bone target 210; the reason why the current pose of the center point of the acetabulum acquired by the control unit is a blank signal may be due to frame loss by the locator 230 or occlusion of the bone target 210; the reason why the current pose acquired by the control unit is an infinite value may be due to a division by zero during the calculation of the pose of the center point of the acetabulum based on the tool target 210. When the pose of the center point of the acetabulum acquired by the control unit is abnormal, that is, the control unit does not acquire the actual pose of the center point of the acetabulum, allowing the robotic arm 100 to move in this situation may lead to a safety accident.

[0159] When the target information includes the deviation between the current pose and the previous pose of the end effector of the robotic arm 100, the target information is considered abnormal if the deviation is greater than a third preset value. When the target information includes the projection of the deviation between the current pose and the initial pose of the end effector of the robotic arm 100 onto the perpendicular direction of the Y direction, the target information is considered abnormal if the projection of the deviation is greater than a fourth preset value.

[0160] Furthermore, embodiments of the present invention also provide a computer-readable storage medium having a program stored thereon, which, when executed, performs the aforementioned robotic arm pose adjustment method.

[0161] While the present invention has been disclosed above, it is not limited thereto. Those skilled in the art can make various modifications and variations to the present invention without departing from its spirit and scope. Therefore, if such modifications and variations fall within the scope of the claims and their equivalents, the present invention also intends to include such modifications and variations.

Claims

1. A method for controlling the pose of a robotic arm, characterized in that, include: Obtain the current positions of the first control point and the second control point respectively; The first control point is the center point of the tool loading component connected to the end of the robotic arm, the second control point is the center point of the operating tool connected to the tool loading component, and the line connecting the second control point and the first control point forms the tool axis, which coincides with the axis of the end of the robotic arm; The target positions of the first control point and the second control point are obtained respectively; when the first control point and the second control point are located at their respective target positions, the tool axis coincides with the central axis of the anatomical structure. Obtain the first deviation between the current position of the first control point and the corresponding target position, and obtain the second deviation between the current position of the second control point and the corresponding target position; and, Based on the first deviation, calculate a first correction torque related to the stiffness of the robotic arm, a second correction torque related to the damping of the robotic arm, and an inertia compensation torque related to the inertia of the robotic arm; based on the second deviation, calculate a first correction torque related to the stiffness of the robotic arm, a second correction torque related to the damping of the robotic arm, and an inertia compensation torque related to the inertia of the robotic arm. Based on the first correction torque, the second correction torque, and the inertia compensation torque corresponding to the first deviation, a first sub-impedance torque is obtained; based on the first correction torque, the second correction torque, and the inertia compensation torque corresponding to the second deviation, a second sub-impedance torque is obtained. The first impedance torque is obtained based on the first sub-impedance torque and the second sub-impedance torque; the first impedance torque is applied to the robotic arm to constrain the robotic arm so that the tool axis coincides with the central axis of the anatomical structure.

2. The robotic arm pose control method according to claim 1, characterized in that, The steps for obtaining the current positions of the first control point and the second control point include: Obtain the current pose of the center point of the anatomical structure; The pose of the robotic arm's base coordinate system is corrected based on the current pose of the center point of the anatomical structure, and the Y-axis of the corrected robotic arm's base coordinate system is parallel to the central axis of the anatomical structure. Based on the pose of the corrected robotic arm base coordinate system, the kinematic parameters of the robotic arm corresponding to the first control point are obtained, and kinematic calculations of the robotic arm are performed based on the kinematic parameters corresponding to the first control point to obtain the current absolute position of the first control point; and, Based on the pose of the corrected robot arm base coordinate system, obtain the robot arm kinematic parameters corresponding to the second control point, and perform robot arm kinematic calculation based on the robot arm kinematic parameters corresponding to the second control point to obtain the current absolute position of the first control point.

3. The robotic arm pose control method according to claim 2, characterized in that, The step of correcting the pose of the robotic arm's base coordinate system based on the current pose of the center point of the anatomical structure includes: The component of the current pose of the center point of the anatomical structure in the Y direction is obtained as a first vector, and the component of the pose of the robot arm base coordinate system before correction in the Y direction is obtained as a second vector; the Y direction is parallel to the central axis of the anatomical structure. Obtain the angle between the first vector and the second vector, and obtain the normal vector of the plane containing the first vector and the second vector; The axis-angle matrix is ​​obtained based on the included angle and the normal vector; Based on the axis-angle matrix, the difference matrix between the current pose of the center point of the anatomical structure and the pose of the robotic arm base coordinate system before correction is obtained; The pose of the corrected robotic arm base coordinate system is obtained based on the difference matrix and the pose of the robotic arm base coordinate system before correction.

4. The robotic arm pose control method according to claim 1, characterized in that, The steps for obtaining the target position of the first control point include: Obtain the current position and the positions of the first control point at the previous n time points; The predicted position of the first control point is obtained based on its current position and its positions at the previous n time points. The target position of the first control point is obtained based on its current position and its predicted position; and / or, The steps for obtaining the target position of the second control point include: Obtain the current position and the positions of the second control point at the previous n time points; The predicted position of the second control point is obtained based on its current position and its positions at the previous n time points. The target position of the second control point is obtained based on the current position and the predicted position of the second control point.

5. The robotic arm pose control method according to claim 4, characterized in that, n is an even number; The step of obtaining the predicted position of the first control point based on its current position and its positions at the previous n time points includes: Place the first control point first The position at each time point is input into the linear position prediction model to obtain the primary predicted position of the first control point; The primary predicted position of the first control point, and the first control point in the subsequent... The position of the first control point at each time point and its current position are input into a multinomial position prediction model to obtain the predicted position of the first control point; and / or, The step of obtaining the predicted position of the second control point based on its current position and its positions at the previous n time points includes: Place the second control point first. The position at each time point is input into the linear position prediction model to obtain the primary predicted position of the second control point; The primary predicted position of the second control point, and the second control point are placed later. The position of the second control point at each time point and the current position of the second control point are input into the multinomial position prediction model to obtain the predicted position of the second control point.

6. The robotic arm pose control method according to any one of claims 1-5, characterized in that, The steps for obtaining the first deviation include: Obtain the Chebyshev distance between the current position of the first control point and the corresponding target position; The Chebyshev distance between the current position of the first control point and the corresponding target position is processed in a second order to obtain the first processed distance. The first processing distance is projected onto the Y direction, and the value of the projection of the first processing distance onto the Y direction is used as the first deviation and / or... The steps for obtaining the second deviation include: Obtain the Chebyshev distance between the current position of the second control point and the corresponding target position; The Chebyshev distance between the current position of the second control point and the corresponding target position is processed in a second order to obtain the second processed distance. The second processing distance is projected onto the Y direction, and the value of the projection of the second processing distance onto the Y direction is used as the second deviation; The Y direction is parallel to the central axis of the anatomical structure.

7. The robotic arm pose control method according to claim 1, characterized in that, The robotic arm pose control method also includes: Virtual safety boundaries are planned based on the pose of the center point of the anatomical structure. The method determines whether the end effector of the robotic arm touches the virtual safety boundary. If so, it generates and controls a display device to display an alarm message, and also generates a second impedance torque. The second impedance torque is applied to the robotic arm to drive it to move until the end effector returns to the virtual safety boundary. And / or, the robotic arm pose control method further includes: Obtain target information; Determine whether the target information is abnormal. If so, generate and control a display device to display alarm information, and also lock the robotic arm. The target information is at least one of the following: the current pose of the center point of the anatomical structure, the deviation between the current pose of the end effector of the robotic arm and the pose at the previous moment, and the projection of the deviation between the current pose of the end effector of the robotic arm and the initial pose onto the perpendicular direction of the Y direction; the Y direction is parallel to the central axis of the anatomical structure.

8. The robotic arm pose control method according to claim 7, characterized in that, The step of determining whether the end effector of the robotic arm touches the virtual safety boundary includes: Obtain the distance vector between the first control point and the second control point, and use it as a third vector, wherein the third vector points from the first control point to the second control point; Obtain the distance vector from the first control point to the virtual security boundary as a fourth vector, the fourth vector pointing from the first control point to the first target point on the virtual security boundary, and the fourth vector being perpendicular to the tangent at the first target point; Calculate the angle between the third vector and the fourth vector, and calculate the vector magnitude of the fourth vector; Determine whether the angle between the third vector and the fourth vector is greater than a first preset value, and determine whether the vector magnitude of the fourth vector is greater than a second preset value; if the angle between the third vector and the fourth vector is greater than the first preset value, and the vector magnitude of the fourth vector is greater than the second preset value, then determine that the end of the robotic arm touches the virtual safety boundary.

9. The robotic arm pose control method according to claim 7, characterized in that, The step of generating the second impedance torque includes: Obtain the distance vector from the first control point to the virtual security boundary as a fourth vector; the fourth vector points from the first control point to the first target point on the virtual security boundary, and the fourth vector is perpendicular to the tangent at the first target point; Obtain the distance vector from the second control point to the virtual security boundary, and use it as the fifth vector; the fifth vector points from the second control point to the second target point on the virtual security boundary, and the fifth vector is perpendicular to the tangent at the second target point; Calculate the vector magnitude of the fourth vector and the vector magnitude of the fifth vector; The vector magnitude of the fourth vector is input into the third impedance controller to obtain the third sub-impedance torque, and the vector magnitude of the fifth vector is input into the fourth impedance controller to obtain the fourth sub-impedance torque. The sum of the third sub-impedance torque and the fourth sub-impedance torque is calculated as the second impedance torque.

10. A surgical robot system, characterized in that, include: A robotic arm, the end of which is used to connect to a bone-grinding tool via a tool loading device; A navigation device, including a locator and a tool target, the tool target being positioned at the end of the robotic arm; The locator is used to identify the tool target to obtain the pose of the end effector of the robotic arm, and the pose of the end effector of the robotic arm is used to obtain the center point of the tool loading component and the center point of the operating tool. as well as, The control unit is communicatively connected to the positioner and configured to perform the robotic arm pose control method as described in any one of claims 1-9.

Citation Information

Patent Citations

  • Feedforward control method for flexible torque of robot based on flexible kinetic model

    CN108714896A

  • Dynamic interaction-oriented object limb time-varying stiffness identification method and device

    CN113524235A