An active positioning method and system applied to a surgical robot

By identifying the gravity, Coulomb friction, and viscous friction of the robotic arm based on current, and calculating the motor compensation current, the problems of control deviation and high economic cost of the active positioning scheme of surgical robots are solved, and the robotic arm positioning is realized quickly and easily.

CN116392253BActive Publication Date: 2025-11-07SHANGHAI DROIDSURG MEDICAL CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202310419921.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-19
Publication Date
2025-11-07
Estimated Expiration
2043-04-19

AI Technical Summary

Technical Problem

Existing active positioning solutions for surgical robots suffer from control deviations and high costs. Solutions based on dual encoders are complex and inaccurate, while solutions based on joint torque sensors are expensive.

Method used

The drag assist compensation is performed using a current-based method. By identifying the gravity, Coulomb friction, and viscous friction of the robotic arm's joints, the motor compensation current is calculated to reduce the force applied by the user, thereby achieving active positioning assistance.

Benefits of technology

It enables accurate acquisition of the relationship between external force, angle, and angular velocity without the need for an additional torque sensor, reducing the force applied by the user during the robotic arm's positioning process and achieving a fast, easy, and labor-saving positioning effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116392253B_ABST
    Figure CN116392253B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of surgical robots, and provides an active positioning method applied to a surgical robot, which comprises the following steps: S1, collecting joint angles of arm shaft joints in the operation process of a mechanical arm, and calculating joint angular velocities; S2, calculating a gravity identification item according to the joint angles, calculating a coulomb friction force identification item according to the joint angular velocities, and calculating a viscous friction force identification item according to the joint angular velocities; and S3, calculating a current for compensating a motor of the arm shaft joint based on the gravity identification item, the coulomb friction force identification item and the viscous friction force identification item, so as to reduce the force applied by a user in the positioning process of the mechanical arm. The above technical scheme adopts a current-based mode to compensate for the drag assist, does not need an additional torque sensor, and only needs to identify the gravity, the coulomb friction force and the viscous friction force generated in the drag process, so that the relationship between the external force and the angle and the angular velocity can be accurately obtained, and the active positioning assist function is realized.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of surgical robots, and in particular to a method and system for active positioning of a surgical robot. BACKGROUND

[0002] Surgical robots are robotic systems that can assist surgeons during operations. They are typically composed of multiple robotic arms, each equipped with a small tool such as a laser, scissors, forceps, etc., which can be inserted through small incisions into the patient's body to perform surgery. Surgical robots have high precision and stability, which can reduce errors and tremors during surgery, thereby reducing the risk of surgery and the incidence of complications. In addition, surgical robots can also provide better visualization and magnification, allowing surgeons to better observe the surgical area and perform more delicate surgical operations.

[0003] The remote center mechanism of a surgical robot is typically a mechanical arm in a surgical robot system, also known as a "surgical arm" or "tool arm", which is responsible for delivering surgical tools into the patient's body for surgical operations. The design of the remote center mechanism usually employs some advanced technologies, such as motor drive, sensor feedback, and computer control, etc. These technologies can ensure that the mechanical arm has high precision in movement and positioning, and can accurately deliver surgical tools into the patient's body and perform delicate surgical operations. In addition, the remote center mechanism of the surgical robot also has some special designs, such as a bendable end part that can flexibly operate in a narrow surgical space, and some mechanical arms have certain autonomous movement capabilities that can automatically adjust and cooperate according to the surgeon's instructions. In general, the remote center mechanism of the surgical robot is one of its core components, and its high precision in movement and positioning provides important support and protection for surgical operations.

[0004] Before surgery, the surgeon or assistant needs to position the remote center mechanism of the surgical robot to the corresponding position. Due to the large and heavy mechanical arm and the need for repeated alignment, the remote center mechanism of the surgical robot needs to be actively positioned.

[0005] Existing active positioning solutions include:

[0006] Based on double encoders: two encoders are installed at the motor end and the load end, respectively, and are connected through a reducer in the middle. When the joint load end is stressed, the motor end encoder and the load end encoder will produce a position deviation due to the elastic deformation of the reducer. Closing loop control of this deviation value can reduce the force that needs to be applied by the user during positioning.

[0007] Based on joint torque sensor: the torque sensor is installed at the robot joint, which can directly measure the joint torque. Closing loop control of this torque can compensate for the force required during positioning.

[0008] However, the active positioning scheme in the prior art has the following defects:

[0009] Based on double encoder: The reducer dynamics modeling is complex, and is related to the elastic deformation of the flexible gear, the deformation amount of the wave generator and the input side backlash. The model is a nonlinear model, which cannot accurately estimate the external force, so the closed-loop control will also produce control deviation, resulting in poor positioning assistance effect.

[0010] Based on joint torque sensor: The joint torque sensor can accurately measure the motor output torque and compensate for the torque. However, the joint force sensor is expensive, which is not ideal from the economic point of view. SUMMARY

[0011] In view of the above problems, the purpose of the present application is to provide an active positioning method and system applied to a surgical robot, which adopts a current-based drag assistance compensation method, does not require an additional torque sensor, and only needs to identify the gravity, coulomb friction and viscous friction generated during the drag process to accurately obtain the relationship between the external force and the angle and angular velocity, and realize the active positioning assistance function.

[0012] The above application purpose of the present application is realized by the following technical scheme:

[0013] An active positioning method applied to a surgical robot, comprising the following steps:

[0014] S1: collecting the joint angle of the shaft joint of the mechanical arm during the operation of the mechanical arm, and calculating the joint angular velocity of the shaft joint of the mechanical arm;

[0015] S2: calculating a gravity identification term according to the joint angle, calculating a coulomb friction identification term according to the joint angular velocity, and calculating a viscous friction identification term according to the joint angular velocity;

[0016] S3: based on the gravity identification term, the coulomb friction identification term and the viscous friction identification term, calculating the current for compensating the motor of the shaft joint of the mechanical arm to reduce the force applied by the user during the positioning process of the mechanical arm.

[0017] Further, in step S2, before calculating the gravity identification term according to the joint angle, it further comprises: establishing a theoretical model of the gravity identification term, specifically:

[0018] A homogeneous transformation matrix based on the DH parameters of the mechanical arm is established by using the DH parameters of each link of the mechanical arm; based on the homogeneous transformation matrix, the relationship between the gravity term and the joint angle is derived by Lagrange dynamics, which is the relationship formula of the theoretical model of the gravity identification term.

[0019] Further, in step S2, further comprising: identifying and fitting the gravity term and the Coulomb friction term to obtain the gravity identification term and the Coulomb friction identification term, specifically:

[0020] The position loop control is performed on the mechanical arm, the position loop control includes setting the cross frequency when the mechanical arm moves, inputting the sinusoidal current excitation, comparing the joint angle, designing a lead compensator to compensate for the phase margin, and connecting a lag compensator in series to reduce the high-frequency gain; after the position loop control is designed, the S motion planning is performed on the motor, so that the mechanical arm moves at a low uniform speed in two directions, and the current in the same position in the low uniform speed motion process in the two directions is collected, and the difference and the sum are obtained to obtain the Coulomb friction identification term and the gravity identification term curve, wherein the Coulomb friction identification term is a constant, and the coefficient of the relationship formula of the gravity identification term is fitted according to the relationship formula of the theoretical model.

[0021] Further, in step S2, further comprising: identifying and fitting the gravity term and the Coulomb friction term to obtain the gravity identification term and the Coulomb friction identification term, specifically:

[0022] The current joint angular velocity and the current joint position are obtained through a low-pass filter; the gravity compensation based on the gravity identification term is calculated through the current joint position; the threshold value of the joint angular velocity is set, if the current joint angular velocity is within the threshold value range, the static output of the high-frequency square wave is increased to realize the initial assistance, if the current joint angular velocity is outside the threshold value range, the Coulomb friction compensation based on the Coulomb friction identification term is calculated according to the direction of the joint angular velocity; the viscous friction compensation based on the viscous friction identification term is calculated by setting the adjustment coefficient of the viscous friction and the joint angular velocity, which is proportional to the joint angular velocity.

[0023] Further, in step S3, based on the gravity identification term, the Coulomb friction identification term and the viscous friction identification term, the current for compensating the motor of the shaft joint of the mechanical arm is calculated, specifically:

[0024] The gravity compensation, the Coulomb friction compensation and the viscous friction compensation are added to obtain the target output current for compensating the motor of the shaft joint of the mechanical arm.

[0025] Further, in step S3, based on the gravity identification term, the Coulomb friction identification term and the viscous friction identification term, the current for compensating the motor of the shaft joint of the mechanical arm is calculated, and the specific calculation formula is:

[0026]

[0027] wherein G(θ) is the gravity recognition term, is the coulomb friction recognition term, is the viscous friction recognition term, and θ is the joint angle, is the joint angular velocity;

[0028] When the mechanical arm has not been dragged, the mechanical arm will remain in the current position due to the compensation of the gravity recognition term, and because of the existence of the high-frequency square wave, initial assistance is provided for the user when dragging to reduce the influence of static friction. When the mechanical arm starts to be dragged, the high-frequency square wave is replaced by the compensation constant of the coulomb friction recognition term, and the corresponding viscous friction recognition term is compensated according to the joint angular velocity, so as to realize the function of positioning assistance.

[0029] Further, the compensation current of the gravity recognition term, the coulomb friction recognition term and the viscous friction recognition term is calculated, and the specific calculation formula is:

[0030] The gravity recognition term is:

[0031] G(θ)=A sinθ+B cosθ+C

[0032] wherein A, B and C are coefficients after the gravity term is identified and fitted according to the relationship formula of the theoretical model;

[0033] The coulomb friction recognition term is:

[0034]

[0035] wherein k is a constant of the identified coulomb friction recognition term, a is a threshold value of the joint angular velocity, and SquareWave is the high-frequency square wave as a static output when the joint angular velocity is within the threshold value, which is used to provide assistance at the beginning of the movement of the mechanical arm;

[0036] The viscous friction recognition term is:

[0037]

[0038] wherein b is an adjustment coefficient of the viscous friction and the joint angular velocity.

[0039] A surgical robot positioning system for performing the surgical robot positioning method as described above, comprising:

[0040] The mechanical arm parameter acquisition module is configured to acquire joint angles of the joint of the mechanical arm shaft during operation of the mechanical arm, and to calculate joint angular velocities of the joint of the mechanical arm shaft;

[0041] The identification item calculation module is configured to calculate a gravity identification item according to the joint angles, to calculate a coulomb friction force identification item according to the joint angular velocities, and to calculate a viscous friction force identification item according to the joint angular velocities;

[0042] The compensation current calculation module is configured to calculate a current for compensating a motor of the joint of the mechanical arm shaft based on the gravity identification item, the coulomb friction force identification item, and the viscous friction force identification item, so as to reduce a force applied by a user during positioning of the mechanical arm.

[0043] A computer device includes a memory and one or more processors, the memory stores computer code, and the computer code is executed by the one or more processors to cause the one or more processors to perform the method described above.

[0044] A computer readable storage medium stores computer code, and the computer code is executed to perform the method described above.

[0045] Compared with the prior art, the present application has the following advantages:

[0046] By providing an active positioning method applied to a surgical robot, the method includes the following steps: S1: acquiring joint angles of a joint of a mechanical arm shaft during operation of the mechanical arm, and calculating joint angular velocities of the joint of the mechanical arm shaft; S2: calculating a gravity identification item according to the joint angles, calculating a coulomb friction force identification item according to the joint angular velocities, and calculating a viscous friction force identification item according to the joint angular velocities; and S3: calculating a current for compensating a motor of the joint of the mechanical arm shaft based on the gravity identification item, the coulomb friction force identification item, and the viscous friction force identification item, so as to reduce a force applied by a user during positioning of the mechanical arm. The above technical solution compensates for drag assistance based on a current, does not require an additional torque sensor, and only needs to identify gravity, coulomb friction force, and viscous friction force generated during dragging to accurately obtain a relationship between an external force and an angle and an angular velocity, thereby achieving an active positioning assistance function. When a user drags the mechanical arm, a current compensation is input to the motor of the joint of the mechanical arm shaft, so as to reduce the force applied by the user during positioning as much as possible, thereby achieving the purpose of fast, easy, and labor-saving positioning. BRIEF DESCRIPTION OF DRAWINGS

[0047] Figure 1 The present application is an active positioning method applied to a surgical robot, and the overall flowchart of the method is shown in the figure.

[0048] Figure 2This is a detailed flowchart of the active positioning method of the present invention applied to a surgical robot;

[0049] Figure 3 This is an overall structural diagram of the active positioning system of the present invention applied to a surgical robot. Detailed Implementation

[0050] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0051] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this specification means the presence of the stated features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0052] First Embodiment

[0053] like Figure 1 and 2 As shown, this embodiment provides an active positioning method for a surgical robot, including the following steps:

[0054] S1: Collect the joint angles of the robotic arm's axis joints during the operation of the robotic arm, and calculate the joint angular velocity of the robotic arm's axis joints.

[0055] Specifically, in this embodiment, we need to collect the joint angles and angular velocities of the robotic arm's axis joints in real time to calculate the gravity identification term, Coulomb friction identification term, and viscous friction identification term for active positioning current compensation.

[0056] The methods for acquiring joint angles and calculating joint angular velocities are existing technologies, and any existing technology can be used; no restrictions are imposed in this invention.

[0057] The joint angle of each joint of the robot arm can be determined by the following method: (1) determining the coordinate system: the coordinate system of the robot arm usually adopts the right-hand coordinate system, wherein each joint corresponds to a coordinate system; (2) defining the joint angle: for each joint, the angle thereof is defined as the rotation angle from the previous coordinate system to the next coordinate system, which is usually represented by Euler angles or quaternions; (3) forward kinematics calculation of the robot arm: the angle of each joint is converted into the position and posture of the end of the robot arm, i.e., the position and posture of the end effector of the robot arm relative to the base coordinate system, through forward kinematics calculation; and (4) inverse kinematics calculation of the robot arm: the angle of each joint is calculated according to the position and posture of the end effector of the robot arm, so that the end effector of the robot arm can reach the specified position and posture.

[0058] The joint angular velocity of each joint of the robot arm can be determined by the following method: (1) forward kinematics calculation of the robot arm: the position and posture of the end effector of the robot arm relative to the base coordinate system are calculated according to the geometric structure and kinematics model of the robot arm; (2) derivation of the forward kinematics equation of the robot arm: the linear velocity and angular velocity of the end effector of the robot arm are obtained by derivation of the forward kinematics equation of the robot arm; and (3) calculation of the joint angular velocity based on the chain rule: the angular velocity of the end effector of the robot arm is decomposed into the angular velocity of each joint according to the chain rule, to obtain the angular velocity of each joint.

[0059] S2: calculating a gravity identification term according to the joint angle, calculating a coulomb friction identification term according to the joint angular velocity, and calculating a viscous friction identification term according to the joint angular velocity.

[0060] Specifically, before active positioning current compensation of the surgical robot is performed, the gravity identification term, the coulomb friction identification term and the viscous friction identification term need to be calculated.

[0061] For the gravity identification term, before the gravity identification term is calculated, a theoretical model of the gravity identification term needs to be established, specifically as follows:

[0062] (1) since the length, mass and center of mass position of each link of the robot arm are known, a homogeneous transformation matrix based on DH parameters of each link of the robot arm is established by using the DH parameters of each link of the robot arm.

[0063] DH (Denavit-Hartenberg) parameters are a method for describing the relative position and direction relationship between joints of a robot arm. Through the DH parameters, a kinematics model of the robot arm can be established, and then forward and inverse kinematics calculations of the robot arm can be performed. The homogeneous transformation matrix based on the DH parameters is a mathematical tool for converting the coordinate systems of each joint of the robot arm relative to each other.

[0064] For the i-th joint of a robot arm, its DH parameters include four variables: theta_i, d_i, a_i and alpha_i, which represent the rotation angle of the joint, the translation distance, the distance between the front and rear adjacent joints and the angle between the front and rear adjacent joints, respectively. Using these parameters, the transformation matrix A_i of the i-th joint can be obtained, which represents the transformation of the i-th coordinate system relative to the i-1-th coordinate system.

[0065] In the standard definition of DH parameters, the z-axis of the i-th coordinate system is taken as the intersection of the x-axis of the i-1-th coordinate system and the i-th coordinate system, the x-axis is taken as the projection of the x-axis of the i-1-th coordinate system on the intersection of the z-axis and the i-th coordinate system, and the y-axis is determined by the right-hand rule. Therefore, the origin of the i-th coordinate system is the axis point of the i-th joint of the robot arm. Based on the DH parameters, the robot arm starts moving from the 0-th coordinate system (usually the base coordinate system), calculates the transformation matrix between each coordinate system according to the DH parameters of each joint, and finally obtains the transformation matrix of the end effector of the robot arm relative to the base coordinate system, i.e. the forward kinematics model of the robot arm.

[0066] Generally, the forward kinematics model of the robot arm can be expressed as a homogeneous transformation matrix as follows:

[0067] T 0n =A1A2...A n

[0068] where T 0n represents the transformation matrix of the end effector of the robot arm relative to the base coordinate system, A i represents the transformation matrix of the i-th coordinate system relative to the i-1-th coordinate system. Since the transformation matrix is a matrix in the homogeneous coordinate system, matrix operations and coordinate transformations can be easily performed.

[0069] (2) Based on the homogeneous transformation matrix, the relationship between the gravity term and the joint angle is derived by Lagrange dynamics as the relationship of the theoretical model of the gravity identification term.

[0070] Lagrange dynamics, a kind of analytical mechanics, was established by Lagrange in 1788, and is a new mathematical expression of classical mechanics. The original expression of classical mechanics was established by Newton, which focuses on the relationship between displacement, velocity, acceleration, force and other vectors, also known as vector mechanics. Lagrange introduced the concept of generalized coordinates and used D'Alembert's principle to obtain Lagrange equations equivalent to Newton's second law. However, Lagrange equations have more general significance and are more widely applicable. Moreover, by selecting appropriate generalized coordinates, the solution of Lagrange equations can be greatly simplified.

[0071] Based on the homogeneous transformation matrix, the center of gravity position of each link of each robot arm is calculated by Lagrange dynamics, the gravitational potential energy = gravity * height, and the partial derivative of the gravitational potential energy of each link with respect to the angle can calculate the torque acting on the motor of each link. Obtain the theoretical model relationship G(θ) = A sinθ + B cosθ + C, but the specific variables A, B and C need to be identified to be more accurate.

[0072] After establishing the theoretical model of the gravity term, the gravity term and the Coulomb friction term need to be identified and fitted to obtain the gravity identification term and the Coulomb friction identification term, specifically:

[0073] The position loop control of the robot arm includes setting the cross frequency when the robot arm moves, inputting the sinusoidal current excitation, comparing the joint angle, designing a lead compensator to compensate for the phase margin, and connecting a lag compensator in series to reduce the high-frequency gain.

[0074] After designing the position loop control, the motor is subjected to S motion planning, so that the robot arm moves at a low uniform speed in both forward and reverse directions. By collecting the current at the same position in the low uniform speed motion process in both forward and reverse directions, the difference and the sum are obtained to get the Coulomb friction identification term and the gravity identification term curve, respectively. The Coulomb friction identification term takes a constant (approximately considered as a constant), and the coefficients of the relationship of the gravity identification term are fitted according to the relationship of the theoretical model (for example: based on the difference and the sum of the measured current during motion, the gravity curve is fitted and identified in MATLAB using cftool), and a more accurate relationship with the joint angle is obtained.

[0075] After identifying the gravity term and the Coulomb friction term, the corresponding current compensation strategy can be developed, specifically:

[0076] The current joint angular velocity and the current joint position are obtained through a low-pass filter. The gravity compensation based on the gravity identification term is calculated through the current joint position. The threshold value of the joint angular velocity is set. If the current joint angular velocity is within the threshold value, the static output of the high-frequency square wave is increased to realize the initial assistance. If the current joint angular velocity is outside the threshold value, the Coulomb friction compensation based on the Coulomb friction identification term is calculated according to the direction of the joint angular velocity. Based on the fact that the viscous friction is approximately proportional to the joint angular velocity, the adjustment coefficient of the viscous friction and the joint angular velocity is set to calculate the viscous friction compensation based on the viscous friction identification term.

[0077] S3: based on the gravity identification item, the coulomb friction force identification item and the viscous friction force identification item, calculate the current for compensating the motor of the mechanical arm shaft joint to reduce the force exerted by the user during the mechanical arm positioning process, specifically:

[0078] Add the gravity compensation, the coulomb friction force compensation and the viscous friction force compensation to obtain the target output current for compensating the motor of the mechanical arm shaft joint.

[0079] Second embodiment

[0080] The embodiment provides specific calculation formulae of the active positioning method applied to the surgical robot based on the first embodiment. Specifically:

[0081] Before the operation, the user of the surgical robot needs to position the telecentric mechanism of the surgical robot to the corresponding position. Considering that the mechanical arm is large and heavy and needs to be repeatedly swung to align, the user needs to input appropriate current instructions to the motor of the mechanical arm shaft joint to reduce the force exerted by the user during the positioning process as much as possible, so as to achieve the purpose of quick, easy and labor-saving positioning. The present application positions based on gravity, coulomb friction force and viscous friction force. The mechanical arm collects the joint angle θ in the running process by using an encoder, and calculates the joint angular velocity The compensated current is:

[0082]

[0083] Wherein, G(θ) is the gravity identification item, is the coulomb friction force identification item, is the viscous friction force identification item, θ is the joint angle, is the joint angular velocity;

[0084] When the mechanical arm has not been dragged, the mechanical arm will remain in the current position due to the compensation of the gravity identification item, and due to the existence of the high-frequency square wave, the initial assistance is provided for the user when dragging to reduce the influence of the static friction. When the mechanical arm starts to be dragged, the high-frequency square wave is replaced by the compensation constant of the coulomb friction force identification item, and the corresponding viscous friction force identification item is compensated according to the joint angular velocity, so as to realize the function of positioning assistance.

[0085] The specific formulae of each identification item are as follows:

[0086] The gravity identification item is:

[0087] G(θ) = A sin θ + B cos θ + C

[0088] Wherein, A, B, and C are the coefficients after the gravity term is identified and fitted according to the relationship of the theoretical model;

[0089] The Coulomb friction identification item:

[0090]

[0091] Where k is the constant of the identified Coulomb friction force identification term, a is the threshold of the joint angular velocity, and SquareWave is the high-frequency square wave that is added as a static output when the joint angular velocity is within the threshold range, in order to provide assistance at the beginning of the movement of the robotic arm.

[0092] The viscous friction identification item:

[0093]

[0094] Where b is the adjustment coefficient of the viscous friction force and the joint angular velocity.

[0095] Third Embodiment

[0096] like Figure 3 As shown, this embodiment provides an active positioning system for a surgical robot for performing the active positioning method for a surgical robot as described in the first embodiment, comprising:

[0097] The robotic arm parameter acquisition module 1 is used to acquire the joint angles of the robotic arm axis joints during the operation of the robotic arm, and to calculate the joint angular velocity of the robotic arm axis joints.

[0098] The identification item calculation module 2 is used to calculate the gravity identification item based on the joint angle, the Coulomb friction identification item based on the joint angular velocity, and the viscous friction identification item based on the joint angular velocity.

[0099] The compensation current calculation module 3 is used to calculate the compensation current for the motor of the robotic arm joint based on the gravity identification item, the Coulomb friction identification item, and the viscous friction identification item, so as to reduce the force applied by the user during the positioning of the robotic arm.

[0100] A computer readable storage medium stores computer code which, when executed, performs the method described above. It is understood by those skilled in the art that all or part of the steps in the above-described embodiments of the various methods can be instructed by a program to relevant hardware, and the program can be stored in a computer readable storage medium, which can include a read only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0101] The above description is only preferred embodiments of the present application, and the protection scope of the present application is not limited to the above-described embodiments. Any technical solution falling within the concept of the present application shall fall within the protection scope of the present application. It should be noted that, for ordinary skilled in the art, some improvements and refinements can be made without departing from the principles of the present application, and these improvements and refinements shall be considered as falling within the protection scope of the present application.

[0102] The technical features of the above-described embodiments can be combined arbitrarily. In order to make the description concise, all possible combinations of the technical features in the above-described embodiments are not described, however, as long as the combinations of the technical features do not contradict each other, they shall be considered as falling within the scope of the present application.

[0103] It should be noted that the above-described embodiments can be freely combined as needed. The above description is only preferred embodiments of the present application, and it should be noted that, for ordinary skilled in the art, some improvements and refinements can be made without departing from the principles of the present application, and these improvements and refinements shall be considered as falling within the protection scope of the present application.

Claims

1. An active positioning method applied to a surgical robot, characterized by, The method comprises the following steps: S1: collecting joint angles of the joints of the robot arm during the operation of the robot arm, and calculating joint angular velocities of the joints of the robot arm; S2: calculating a gravity identification term according to the joint angles, calculating a coulomb friction force identification term according to the joint angular velocities, and calculating a viscous friction force identification term according to the joint angular velocities; Before the gravity identification term is calculated according to the joint angles, the method further comprises the following steps: establishing a theoretical model of the gravity identification term, specifically: establishing a homogeneous transformation matrix based on DH parameters of each link of the robot arm by using the DH parameters; obtaining a relationship between a gravity term and the joint angles by Lagrange dynamics based on the homogeneous transformation matrix, and taking the relationship as a relationship formula of the theoretical model of the gravity identification term; S3: calculating a current for compensating a motor of the joint of the robot arm based on the gravity identification term, the coulomb friction force identification term and the viscous friction force identification term, so as to reduce a force applied by a user during the positioning of the robot arm; In step S2, the method further comprises the following steps: identifying and fitting the gravity term and the coulomb friction force term to obtain the gravity identification term and the coulomb friction force identification term, specifically: performing position loop control on the robot arm, the position loop control comprising setting a cross frequency during the movement of the robot arm, inputting a sinusoidal current excitation, comparing the joint angles, designing a lead compensator to compensate for a phase margin, and connecting a lag compensator in series to reduce a high-frequency gain; after the position loop control is designed, performing S motion planning on the motor, so that the robot arm moves at a low uniform speed in two directions, and by collecting currents at the same position during the low uniform speed movement in the two directions, a difference and a sum are obtained to obtain curves of the coulomb friction force identification term and the gravity identification term, wherein the coulomb friction force identification term is a constant, and coefficients of the relationship formula of the gravity identification term are fitted according to the relationship formula of the theoretical model.

2. The active positioning method for a surgical robot according to claim 1, wherein In step S2, the method further comprises the following steps: calculating a compensation current based on the gravity identification term, the coulomb friction force identification term and the viscous friction force identification term, specifically: obtaining a current joint angular velocity and a current joint position by a low-pass filter; calculating a gravity compensation based on the gravity identification term by the current joint position; setting a threshold value of the joint angular velocity, if the current joint angular velocity is within the threshold value range, increasing a static output of a high-frequency square wave to realize initial assistance, if the current joint angular velocity is outside the threshold value range, calculating a coulomb friction compensation based on the coulomb friction force identification term according to a direction of the joint angular velocity; setting an adjustment coefficient of the viscous friction force and the joint angular velocity based on the fact that the viscous friction force is proportional to the joint angular velocity, to calculate a viscous friction compensation based on the viscous friction force identification term.

3. The active positioning method for a surgical robot according to claim 2, wherein In step S3, the current for compensating the motor of the joint of the robot arm is calculated based on the gravity identification term, the coulomb friction force identification term and the viscous friction force identification term, specifically: The gravity compensation, the coulomb friction compensation and the viscous friction compensation are added to obtain a target output current for compensating the motor of the mechanical arm shaft joint.

4. The active positioning method for a surgical robot according to claim 2, wherein In step S3, based on the gravity identification term, the coulomb friction identification term and the viscous friction identification term, a current for compensating the motor of the mechanical arm shaft joint is calculated, and the specific calculation formula is: wherein, is the gravity recognition term, is the coulomb friction recognition term, is the viscous friction recognition term, is the joint angle, is the joint angular velocity; When the mechanical arm has not been dragged, the mechanical arm remains at the current position due to the compensation of the gravity identification term, and the initial assistance is provided for the user when dragging to reduce the influence of the static friction due to the existence of the high-frequency square wave, when the mechanical arm starts to be dragged, the high-frequency square wave is replaced by the compensation constant of the coulomb friction identification term, and the corresponding viscous friction identification term is compensated according to the joint angular velocity to realize the positioning assistance function.

5. The active positioning method for a surgical robot according to claim 4, wherein, The compensation currents of the gravity identification term, the coulomb friction identification term and the viscous friction identification term are calculated, and the specific calculation formula is: The gravity identification term: Wherein, A, B and C are coefficients after the gravity term is identified and fitted according to the relationship formula of the theoretical model; The coulomb friction identification term: wherein, is a constant for the identified Coulomb friction identification term, is a threshold value for the joint angular velocity, and SquareWave is a high frequency square wave as a static output when the joint angular velocity is within the threshold value, to provide assistance at the beginning of the motion of the robot arm. The viscous friction identification term: wherein, is a regulation coefficient of the viscous friction force and the joint angular velocity.

6. A surgical robot active positioning system for performing the surgical robot active positioning method according to any one of claims 1-5, comprising: A mechanical arm parameter acquisition module for acquiring the joint angle of the mechanical arm shaft joint during the operation of the mechanical arm, and calculating the joint angular velocity of the mechanical arm shaft joint; An identification term calculation module for calculating the gravity identification term according to the joint angle, calculating the coulomb friction identification term according to the joint angular velocity, and calculating the viscous friction identification term according to the joint angular velocity; A compensation current calculation module for calculating the current for compensating the motor of the mechanical arm shaft joint based on the gravity identification term, the coulomb friction identification term and the viscous friction identification term, to reduce the force applied by the user during the positioning of the mechanical arm.

7. A computer device comprising a memory and one or more processors, the memory having computer code stored therein, the computer code being executed by the one or more processors to cause the one or more processors to perform the method of any one of claims 1-5.

8. A computer readable storage medium storing computer code, when the computer code is executed, the method of any one of claims 1-5 is executed.

Citation Information

Patent Citations

  • Robot direct teaching control method based on moment balance

    CN103425100A

  • Flexible servo control method for industrial robot

    CN108453741A

  • Fractional order impedance controller based on dynamic feedforward and design method thereof

    CN115556103A