Surgical robot and its robot arm control method and control device
The control method for surgical robots uses a six-axis force sensor to calculate and adjust the robotic arm's position and posture, addressing the instability of load situations for precise and accurate movement.
Patent Information
- Application Number
- JP2023172342
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-09-10
- Filing Date
- 2023-10-03
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2040-09-08
AI Technical Summary
The instability of the load situation at the distal end of a surgical robot's robotic arm during positioning leads to inaccurate determination of the external force applied, resulting in a gap between the intended drag and actual movement, affecting precision and tracking in minimally invasive surgeries.
A control method that acquires load parameters and constructs a load dynamic model using a six-axis force sensor to calculate the six-axis force/moment vector of the external force, allowing for accurate determination of the target position and posture of the robotic arm, adjusting its operation based on task degrees of freedom to match or constrain within the effective degrees of freedom of the robot arm.
This method enables precise and accurate dragging of the robotic arm, improving the feel and tracking of the external force, ensuring better surgical precision and alignment.
Smart Images

Figure 0007766992000010 
Figure 0007766992000011 
Figure 0007766992000012
Abstract
Description
[Technical Field]
[0001] The present invention claims priority from Chinese patent application CN201910854105.6, filed on September 10, 2019, entitled "Surgical robot and control method and control device for the robotic arm thereof," the contents of which are incorporated herein by reference in their entirety. The present invention relates to the field of minimally invasive surgical medical equipment, and in particular to a surgical robot and a control method and control device for the robot arm. [Background technology]
[0002] Minimally invasive surgery refers to a surgical method that uses the latest medical devices and related equipment, such as laparoscopes and thoracoscopes, to perform surgery inside the human body. Compared to conventional surgical methods, minimally invasive surgery has the advantages of causing less trauma, less pain, and faster recovery.
[0003] With technological advances, minimally invasive surgical robot technology has gradually matured and been widely applied. A minimally invasive surgical robot typically includes a master console and a slave operating device, where the master console includes a handle, and a surgeon operates the handle to send control commands to the slave operating device. The slave operating device includes a robotic arm, the distal end of which includes an actuating arm, and the actuating arm includes an end instrument. Before performing surgery on a patient, the surgeon needs to drag the robotic arm to move its distal end to the desired position and orientation of the surgeon's planned surgical incision site on the patient.
[0004] However, when the robot arm is dragged to the planned position, the load situation due to the structure at the distal end of the force-receiving position is unstable, making it impossible to accurately determine the external force applied by the operator, resulting in a large gap between the feel of the drag and the operator's intention, and poor tracking. Summary of the Invention [Problem to be solved by the invention]
[0005] In view of the above, it is necessary to provide a surgical robot capable of effectively dragging a power mechanism, a control method thereof, and a computer-readable recording medium. [Means for solving the problem]
[0006] In one aspect, the present invention provides a control method for a robot arm of a surgical robot, the control method including the steps of: acquiring load parameters, including mass parameters and center of gravity parameters, in a corresponding state of the powered mechanism based on installation state information and position state information inside the powered mechanism; determining a load dynamic model in a coordinate system of a six-axis force sensor according to the load applied by the powered mechanism based on the load parameters; acquiring position information of each joint in the robot arm and calculating a six-axis force / moment vector of the load in accordance with the load dynamic model; acquiring a zero-offset six-axis force / moment vector and a sum of the six-axis force / moment vectors; calculating a six-axis force / moment vector of an external force applied to the powered mechanism based on the sum of the six-axis force / moment vectors, the zero-offset six-axis force / moment vector, and the six-axis force / moment vector of the load; analyzing the six-axis force / moment vector of the external force to acquire target position and posture information of the powered mechanism in a base coordinate system of the robot arm, and operating each joint in the robot arm based on the target position and posture information to make the powered mechanism reach the corresponding target position and posture.
[0007] In one embodiment, the mounting status information relates to the mounting status of the actuating arm of each of the power units, the position status information relates to the position status of each of the power units relative to the corresponding guide rail, and the mounting status information includes information on whether an actuating arm is mounted on each of the power units and / or information on the type of actuating arm mounted on each of the power units.
[0008] In one embodiment, before the step of acquiring load parameters in a corresponding state of the power mechanism based on mounting state information and position state information inside the power mechanism, the method includes the steps of measuring load parameters of the power mechanism corresponding to each mounting state inside the power mechanism when the power mechanism is in the corresponding mounting state and its interior is in a different position state, and establishing one parameter calculation model corresponding to each mounting state of the power mechanism based on the measured load parameters corresponding to the corresponding mounting state of the power mechanism when its interior is in a different position state.
[0009] In one embodiment, the step of acquiring load parameters in a corresponding state of the power mechanism based on mounting state information and position state information inside the power mechanism includes the steps of acquiring mounting state information and position state information inside the power mechanism, calling a parameter calculation model based on the mounting state information of the power mechanism, and calculating load parameters in a corresponding state of the power mechanism according to the called parameter calculation model and the position state information of the power mechanism.
[0010] In one embodiment, the step of analyzing the six-axis force / moment vectors of the external force to obtain target position and posture information in a base coordinate system of the robot arm of the powered mechanism includes a step of obtaining an input operation command related to the task degrees of freedom of the powered mechanism before the step of analyzing the six-axis force / moment vectors of the external force to obtain target position and posture information in a base coordinate system of the robot arm of the powered mechanism. Specifically, the step of analyzing the six-axis force / moment vectors of the external force to obtain target position and posture information in a base coordinate system of the robot arm of the powered mechanism includes analyzing the six-axis force / moment vectors of the external force in accordance with the task degrees of freedom to obtain target position and posture information in the base coordinate system of the robot arm of the powered mechanism, so that the powered mechanism can be operated with the corresponding task degrees of freedom.
[0011] In one embodiment, the operation command includes a first operation command and a second operation command. The first operation command is relevant when the task degrees of freedom completely match the effective degrees of freedom of the robot arm, and drag-controls the powered mechanism freely in accordance with the target position and orientation information acquired based on the first operation command. The second operation command is relevant when the task degrees of freedom do not completely match the effective degrees of freedom of the robot arm but are included in the effective degrees of freedom of the robot arm, and drag-controls the powered mechanism only within the set task degrees of freedom in accordance with the target position and orientation information acquired based on the second operation command.
[0012] In one embodiment, the second operation command is relevant when the task degree of freedom of the powered mechanism is selected from the effective degrees of freedom of the robot arm that are related to the attitude degree of freedom.
[0013] In one embodiment, the step of analyzing the six-axis force / moment vectors of the external force to obtain target position and posture information in a base coordinate system of the robot arm of the powered mechanism specifically includes controlling a stiffness matrix with adjustable parameters to convert the six-axis force / moment vectors of the external force into target position and posture information in a base coordinate system of the robot arm of the powered mechanism.
[0014] In another aspect, the present invention provides a method for controlling a robot arm of a surgical robot, the method comprising the steps of: acquiring, for each six-axis force sensor, a set of load parameters including load parameters of each link located at a distal end of the corresponding six-axis force sensor; and acquiring load parameters of the power mechanism including mass parameters and center of gravity parameters based on mounting state information and position state information inside the power mechanism; determining a load dynamic model in a corresponding six-axis force sensor coordinate system according to the load caused by each link at the distal end of the six-axis force sensor using the set of load parameters of each six-axis force sensor; acquiring position information of each joint in the robot arm and calculating six-axis force / moment vectors of the load at each six-axis force sensor in accordance with the load dynamic model of each six-axis force sensor; The method includes the steps of: obtaining the sum of the moment vector and the six-axis force / moment vector; calculating the six-axis force / moment vector of the external force acting on each of the six-axis force sensors in accordance with the six-axis force / moment vector of the load on each of the six-axis force / torque sensors; determining a force-receiving link based on the calculated six-axis force / moment vector of the external force acting on each six-axis force / torque sensor and the six-axis force / moment vector of the external force acting on the one six-axis force / torque sensor adjacent to its distal end, and calculating the six-axis force / moment vector of the external force applied to the force-receiving link; analyzing the six-axis force / moment vector of the external force applied to the force-receiving link, obtaining target position and posture information in a coordinate system corresponding to the force-receiving link, and operating the robot arm in accordance with the target position and posture information.
[0015] In one embodiment, the mounting status information relates to a mounting status of the actuating arm of each of the power units, the position status information relates to a position status of each of the power units relative to the corresponding guide rail, and the mounting status information includes information on whether an actuating arm is mounted on each of the power units and / or information on the type of actuating arm mounted on each of the power units.
[0016] In one embodiment, before the step of acquiring load parameters in a corresponding state of the power mechanism based on mounting state information and position state information inside the power mechanism, the method includes the steps of measuring load parameters of the power mechanism corresponding to each mounting state inside the power mechanism when the power mechanism is in the corresponding mounting state and its interior is in a different position state, and establishing one parameter calculation model corresponding to each mounting state of the power mechanism based on the measured load parameters corresponding to the corresponding mounting state of the power mechanism when its interior is in a different position state.
[0017] In one embodiment, the step of acquiring load parameters in a corresponding state of the power mechanism based on mounting state information and position state information inside the power mechanism includes the steps of acquiring mounting state information and position state information inside the power mechanism, calling a parameter calculation model based on the mounting state information of the power mechanism, and calculating load parameters in a corresponding state of the power mechanism according to the called parameter calculation model and the position state information of the power mechanism.
[0018] In one embodiment, the step of analyzing the six-axis force / moment vectors of the external force applied to the force-receiving link to obtain target position and posture information in a coordinate system corresponding to the force-receiving link includes a step of obtaining an input operation command related to the task degrees of freedom of the powered mechanism before the step of analyzing the six-axis force / moment vectors of the external force applied to the force-receiving link to obtain a corresponding control command for operating the robot arm, specifically, the step of analyzing the six-axis force / moment vectors of the external force applied to the force-receiving link in accordance with the task degrees of freedom of the powered mechanism to obtain target position and posture information in a coordinate system corresponding to the force-receiving link.
[0019] In one embodiment, the operation command includes a first operation command and a second operation command. The first operation command is relevant when the task degrees of freedom completely match the effective degrees of freedom of the robot arm, and drag-controls the powered mechanism freely in accordance with the target position and orientation information acquired based on the first operation command. The second operation command is relevant when the task degrees of freedom do not completely match the effective degrees of freedom of the robot arm but are included in the effective degrees of freedom of the robot arm, and drag-controls the powered mechanism only within the set task degrees of freedom in accordance with the target position and orientation information acquired based on the second operation command.
[0020] In one embodiment, the second operation command is relevant when the task degree of freedom of the powered mechanism is selected from the effective degrees of freedom of the robot arm that are related to the attitude degree of freedom.
[0021] In one embodiment, when there is one force-receiving link, and the force-receiving link is the powered mechanism, the step of analyzing a six-axis force / moment vector of an external force applied to the force-receiving link to obtain target position and posture information in a coordinate system corresponding to the force-receiving link, and operating the robot arm according to the target position and posture information includes the steps of analyzing a six-axis force / moment vector of an external force applied to the force-receiving link in accordance with the task degrees of freedom of the powered mechanism to obtain target position and posture information in a base coordinate system of the robot arm of the powered mechanism, and operating each of the links in the robot arm based on the target position and posture information to make the powered mechanism reach the corresponding target position and posture.
[0022] In one embodiment, when there is one force-receiving link, the force-receiving link is not the power mechanism, and the acquired input is the first operation command, the step of analyzing a six-axis force / moment vector of an external force applied to the force-receiving link to acquire target position and posture information in a coordinate system corresponding to the force-receiving link, and operating the robot arm in accordance with the target position and posture information includes: analyzing the six-axis force / moment vector of the external force applied to the force-receiving link to acquire target position and posture information of the force-receiving link in a base coordinate system of the robot arm; and operating the force-receiving link and each of the links at its proximal end within the robot arm based on the target position and posture information to make the force-receiving link reach the corresponding target position and posture.
[0023] In one embodiment, when there is one force-receiving link, the force-receiving link is not the powered mechanism, and the acquired input is the second operation command, the step of analyzing a six-axis force / moment vector of the external force applied to the force-receiving link to obtain target position and posture information in a corresponding coordinate system of the force-receiving link, and operating the robot arm according to the target position and posture information includes the steps of analyzing a six-axis force / moment vector of the external force applied to the force-receiving link to obtain target position and posture information of the force-receiving link in a base coordinate system of the robot arm, and obtaining current position and posture information of the powered mechanism in the base coordinate system of the robot arm; The method includes a step of converting current position and posture information in the base coordinate system of the robot arm, and acquiring target position and posture information in the coordinate system of the force receiving link of the power mechanism when the force receiving link reaches a target position and posture corresponding to the target position and posture information of the force receiving link in the base coordinate system of the robot arm; and a step of operating the force receiving link and each of the links at its proximal end based on the target position and posture information of the force receiving link to make the force receiving link reach a corresponding target position and posture, and operating the power mechanism and each of the links between the power mechanism and the force receiving link based on the target position and posture information of the power mechanism to maintain the power mechanism at its current position or position or posture.
[0024] In one embodiment, when the number of the force-receiving links is two or more, if the acquired input is the first operation command, the step of analyzing the six-axis force / moment vector of the external force applied to the force-receiving link to obtain target position and posture information in a coordinate system corresponding to the force-receiving link, and operating the robot arm according to the target position and posture information includes the steps of analyzing the six-axis force / moment vector of the external force applied to the force-receiving link that is absolutely adjacent to the proximal end of the robot arm to obtain target position and posture information of the force-receiving link in a base coordinate system of the robot arm, and analyzing the six-axis force / moment vector of the external force applied to the force-receiving link that is relatively far from the proximal end of the robot arm among each of the two adjacent force-receiving links to obtain target position and posture information of the force-receiving link adjacent to the force-receiving link. and actuating the force receiving link absolutely adjacent to the proximal end of the robot arm and each of the links at its proximal end based on the target position and posture information of the force receiving link absolutely adjacent to the proximal end of the robot arm to make the force receiving link absolutely adjacent to the proximal end of the robot arm reach a corresponding target position and posture, and actuating the force receiving link relatively away from the proximal end of the robot arm and each of the links between the force receiving link adjacent to it based on the target position and posture information of the force receiving link relatively away from the proximal end of the robot arm to make the force receiving link relatively away from the proximal end of the robot arm reach a corresponding target position and posture.
[0025] In one embodiment, when there are two or more force-receiving links, if the acquired input is the second operation command and the force-receiving link does not include the power mechanism, the step of analyzing the six-axis force / moment vector of the external force applied to the force-receiving link to acquire target position and posture information in a corresponding coordinate system of the force-receiving link, and operating the robot arm according to the target position and posture information includes the steps of analyzing the six-axis force / moment vector of the external force applied to the force-receiving link that is absolutely adjacent to the proximal end of the robot arm to acquire target position and posture information of the force-receiving link in a base coordinate system of the robot arm, analyzing the six-axis force / moment vector of the external force of the force-receiving link that is relatively far from the proximal end of the robot arm among each of the two adjacent force-receiving links to acquire target position and posture information of the force-receiving link in the coordinate system of the adjacent force-receiving link, and acquiring current position and posture information of the power mechanism in the base coordinate system of the robot arm, converting the current position and posture information of the power mechanism in the base coordinate system of the robot arm, and converting the current position and posture information of the power mechanism in the base coordinate system of the robot arm to the previous position and posture information. a step of acquiring target position and posture information in a coordinate system of the adjacent force receiving link of the force mechanism when the force receiving link reaches a target position and posture corresponding to the target position and posture information in the corresponding coordinate system; and actuating the force receiving link absolutely adjacent to the proximal end of the robot arm and each of the links at its proximal end based on the target position and posture information of the force receiving link absolutely adjacent to the proximal end of the robot arm, causing the force receiving link absolutely adjacent to the proximal end of the robot arm to reach a corresponding target position and posture, and actuating the force receiving link that is relatively far from the proximal end of the robot arm and each of the links between the force receiving link that is relatively far from the proximal end of the robot arm and the adjacent force receiving link based on target position and posture information of the force receiving link that is relatively far from the proximal end of the robot arm, thereby causing the force receiving link that is relatively far from the proximal end of the robot arm to reach a corresponding target position and posture; and actuating the power mechanism and each of the links between the power mechanism and the adjacent force receiving link based on the target position and posture information of the power mechanism, thereby holding the power mechanism at a current position or posture.
[0026] In one embodiment, when there are two or more force-receiving links, if the acquired input is the second operation command and the force-receiving link includes the power mechanism, the step of analyzing a six-axis force / moment vector of the external force applied to the force-receiving link to obtain target position and posture information in a coordinate system corresponding to the force-receiving link, and operating the robot arm according to the target position and posture information includes analyzing a six-axis force / moment vector of the external force applied to the force-receiving link that is absolutely adjacent to the proximal end of the robot arm to obtain a base position and posture information of the robot arm of the force-receiving link. a step of analyzing six-axis force / moment vectors of an external force of the power mechanism to acquire target position / posture information in a base coordinate system of the robot arm of the power mechanism; a step of analyzing six-axis force / moment vectors of an external force of the force receiving link that is relatively far from the proximal end of the robot arm among each of two adjacent force receiving links other than the power mechanism to acquire target position / posture information in a coordinate system of the force receiving link adjacent to the force receiving link; a step of converting target position and orientation information in a base coordinate system, and acquiring target position and orientation information in the coordinate system of the force receiving link adjacent to the power mechanism when the force receiving link adjacent to the power mechanism reaches a target position and orientation corresponding to the target position and orientation information in the corresponding coordinate system; a step of determining whether the target position and orientation information in the coordinate system of the force receiving link adjacent to the power mechanism is valid; and if valid, determining whether the target position and orientation information in the coordinate system of the force receiving link adjacent to the power mechanism is valid, and acquiring absolute target position and orientation information for the proximal end of the robot arm based on the target position and orientation information of the force receiving link absolutely adjacent to the proximal end of the robot arm. and each of the links at the proximal end thereof to operate the force receiving link adjacent to the proximal end thereof, so that the force receiving link absolutely adjacent to the proximal end of the robot arm reaches a corresponding target position and posture; and based on target position and posture information of the force receiving link relatively away from the proximal end of the robot arm, operate the force receiving link relatively away from the proximal end of the robot arm and each of the links between the force receiving link adjacent to the force receiving link, so that the force receiving link relatively away from the proximal end of the robot arm reaches a corresponding target position and posture; and based on target position and posture information of the power mechanism,The method includes a step of operating the power mechanism and each of the links between the power mechanism and the adjacent force-receiving link to hold the position of the power mechanism and adjust its attitude, and if the operation is invalid, a step of analyzing six-axis force / moment vectors of an external force of the power mechanism in accordance with the task degree of freedom of the power mechanism, acquiring target position and attitude information of the power mechanism in the base coordinate system of the robot arm, and operating each of the links in the robot arm based on the target position and attitude information of the power mechanism to hold the position of the power mechanism and adjust its attitude.
[0027] In another aspect, the present invention provides a control device for a robotic arm of a surgical robot, comprising a memory for storing a computer program and a processor for loading and executing the computer program, the computer program being loaded by the processor to perform the steps of the control method according to any of the above-described embodiments.
[0028] In another aspect, the present invention provides a surgical robot, including a robot arm and a control device. The robot arm has a plurality of links connected by joints. The link at the distal end of the robot arm is a power mechanism. The power mechanism is connected to adjacent links by a six-axis force sensor and includes a guide rail and a power unit slidably mounted on the guide rail. The power unit is used to mount and drive an actuation arm that performs surgical operations. The control device executes the steps of the control method described in any of the above-mentioned embodiments.
[0029] In another aspect, the present invention provides a surgical robot, including a robot arm having a plurality of links connected by joints, the distal end of which is a powered mechanism; and a control device connected to the robot arm. The control device is configured to receive an external force applied to the powered mechanism, acquire an input operation command related to the task degrees of freedom of the powered mechanism, analyze the external force in accordance with the task degrees of freedom of the powered mechanism, acquire target position and orientation information for the powered mechanism in a base coordinate system of the robot arm, and operate each joint in the robot arm based on the target position and orientation information to operate the powered mechanism with the corresponding task degrees of freedom to reach the corresponding target position and orientation. The operation command includes a first operation command or a second operation command. The first operation command is associated with a case where the task degrees of freedom completely match the effective degrees of freedom of the robot arm, and freely drags and controls the powered mechanism in accordance with the target position and orientation information acquired based on the first operation command. The second operation command is relevant to a case where the task degrees of freedom do not completely match the effective degrees of freedom of the robot arm but are included in the effective degrees of freedom of the robot arm, and drag controls the power mechanism only within the set task degrees of freedom in accordance with the target position and posture information acquired based on the second operation command.
[0030] In another aspect, the present invention provides a surgical robot, including a robot arm having a plurality of links connected by joints, the distal link being a powered mechanism; and a control device connected to the robot arm. The control device is configured to determine a force-receiving link among the links, receive an external force applied to the force-receiving link, obtain an input manipulation command related to a task degree of freedom of the powered mechanism, analyze the external force applied to the force-receiving link according to the task degree of freedom of the powered mechanism to obtain target position and orientation information in a coordinate system corresponding to the force-receiving link, and operate the robot arm according to the target position and orientation information. The manipulation command includes a first manipulation command or a second manipulation command. The first manipulation command is associated with a case where the task degree of freedom completely matches the effective degree of freedom of the robot arm, and freely drags and controls the powered mechanism according to the target position and orientation information obtained based on the first manipulation command. The second operation command is relevant to a case where the task degrees of freedom do not completely match the effective degrees of freedom of the robot arm but are included in the effective degrees of freedom of the robot arm, and drag controls the power mechanism only within the set task degrees of freedom in accordance with the target position and posture information acquired based on the second operation command.
[0031] In another aspect, the present invention provides a method for controlling a robot arm of a surgical robot, the robot arm having a plurality of links connected by joints. The link at the distal end of the robot arm is a powered mechanism. The control method includes the steps of: determining a force-receiving link among the links and receiving an external force applied to the force-receiving link; acquiring an input operation command related to a task degree of freedom of the powered mechanism; analyzing the external force applied to the force-receiving link in accordance with the task degree of freedom of the powered mechanism to obtain target position and orientation information in a coordinate system corresponding to the force-receiving link; and configuring the robot arm to operate according to the target position and orientation information. The operation command includes a first operation command or a second operation command. The first operation command is associated with a case where the task degree of freedom completely matches the effective degree of freedom of the robot arm, and freely drags and controls the powered mechanism according to the target position and orientation information obtained based on the first operation command. The second operation command is relevant to a case where the task degrees of freedom do not completely match the effective degrees of freedom of the robot arm but are included in the effective degrees of freedom of the robot arm, and drag controls the power mechanism only within the set task degrees of freedom in accordance with the target position and posture information acquired based on the second operation command. [Effects of the Invention]
[0032] The beneficial effects of the present invention are as follows:
[0033] Accurately determining the load parameters of the load due to the distal end structure of the force-receiving member contributes to accurately determining the six-axis force / moment vector of the load, making it possible to accurately determine the six-axis force / moment vector of the external force received by the force-receiving member, and further contributing to accurately dragging the force-receiving member with the external force, resulting in a good drag feel and excellent tracking. [Brief explanation of the drawings]
[0034] [Figure 1] 1 is a diagram showing the configuration of an embodiment of a surgical robot of the present invention. [Figure 2]FIG. 2 is a diagram showing a part of the surgical robot shown in FIG. [Figure 3] FIG. 2 is a diagram showing a part of the surgical robot shown in FIG. [Figure 4] ~ [Figure 7] 10A-10C show different mounting and positioning conditions within the power mechanism. [Figure 8] 2A and 2B are diagrams illustrating the operation of the robot arm shown in FIG. 1 in one arrangement configuration. [Figure 9-12] 4 is a flowchart illustrating another embodiment of the control method of the present invention. [Figure 13] FIG. 2 is a diagram illustrating a principle structure of the robot arm shown in FIG. [Figure 14] FIG. 10 illustrates the analysis of spatial motion angles in the control method of the present invention. [Figure 15-18] 2A to 2C are diagrams illustrating different operations of the robot arm shown in FIG. 1 in other configurations. [Figure 19-23] 4 is a flowchart illustrating another embodiment of the control method of the present invention. [Figure 24] FIG. 10 is a diagram showing the configuration of another embodiment of the surgical robot of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0035] To facilitate understanding of the present invention, the present invention will now be described more generally with reference to the accompanying drawings. The drawings show preferred embodiments of the present invention. However, the present invention is not limited to the embodiments shown in this specification, and may be implemented in various other forms. The embodiments shown in the specification are described merely to provide a clearer and more comprehensive understanding of the disclosed subject matter of the present invention.
[0036] In addition, when a member is described as being "mounted" on another member, the member may be directly disposed on the other member, or an intervening member may be present between the two. When a member is described as being "connected" to another member, the member may be directly connected to the other member, or an intervening member may be present between the two. When a member is described as being "coupled" to another member, the member may be directly connected to the other member, or an intervening member may be present between the two. The terms "vertical," "horizontal," "left," "right," and similar terms used herein are used for descriptive purposes only and are not intended to limit the scope of the embodiments. The terms "distal end" and "proximal end" used herein are directional terms, and these directional terms are commonly used technical terms in the medical device field. The "distal end" refers to the end that is farther from the operator during surgery, and the "proximal end" refers to the end that is closer to the operator during surgery.
[0037] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The terms used herein are for the purpose of describing specific embodiments only and are not intended to limit the present disclosure. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items. As used herein, "each" includes one and more than one.
[0038] 1 to 3 are diagrams showing the configuration of an embodiment of a surgical robot of the present invention and a diagram showing a part of the surgical robot of the present invention, respectively.
[0039] The surgical robot includes a master console 1 and a slave operating device 2. The master console 1 has a handle 11 and a display 12. The surgeon operates the handle 11 to send control commands to the slave operating device 2, which then performs an action according to the control command entered by the surgeon on the handle 11, while the surgeon observes the surgical field on the display 12. Since the handle 11 can move and rotate freely, a relatively large operating space is provided for the surgeon. For example, the handle 11 can be connected to the master console 1 via wiring or a rotating link. The slave operating device 2 includes a robot arm 21 having multiple links connected by joints. The link at the distal end of the robot arm 21 is a power mechanism 22. The power mechanism 22 is used to attach and drive an operating arm 31 having an end instrument 34.
[0040] In one embodiment, the handle 11 may be used to remotely control and link the joints of the robot arm 21 to move the power mechanism 22 to a desired position and orientation.
[0041] In another embodiment, the powered mechanism 22 may be moved to a desired position and orientation by dragging the powered mechanism 22 and interlocking the joints of the robot arm 21. This specification will describe in detail a technical solution for realizing pulling the powered mechanism 22 to a desired position and orientation.
[0042] As shown in FIG. 4, the power mechanism 22 includes a housing 223 connected to a joint at the distal end of the robot arm 21. A guide rail 221 is mounted inside the housing 223. A power unit 222 is slidably installed on the guide rail 221 for mounting and driving the actuation arm 31 having the end instrument 34. The number of guide rails 221 may be one or more (four is shown in FIG. 4). The number of power units 222 is the same as the number of guide rails 221. The guide rail 221 is typically a linear guide rail. The power unit 222 moves linearly along the guide rail 221. Specifically, a drive unit (not shown) is disposed on the guide rail 221 for sliding the power unit 222 along the guide rail 221. A handle (not shown) may be provided on the housing 223 to facilitate dragging.
[0043] The load can be easily changed by changing the mounting state and position state inside the power mechanism 22, which further affects the drag of the power mechanism 22. The mounting state inside the power mechanism 22 specifically relates to whether an actuating arm 31 is mounted on each power part 222 and / or the type of actuating arm 31 mounted thereon, and the position state inside the power mechanism 22 specifically relates to the position of each power part 222 relative to the corresponding guide rail 221.
[0044] 4, no actuating arm is attached to each power unit 222, in FIG. 5, an actuating arm 31 is attached to one power unit 222, in FIG. 6, one actuating arm 31 is attached to each of four power units 222, and the four power units 222 are positioned in the same manner relative to the corresponding guide rail 221, and in FIG. 7, one actuating arm 31 is attached to each of four power units 222, but the position of one power unit 222 relative to the corresponding guide rail 221 is different from the position of the other power units 222 relative to the corresponding guide rail. Assuming that the type of actuating arm 31 attached to each power unit 222 does not affect the load change, the different state changes within the power mechanism 22 can be reflected in FIGS. 4 to 7, and these state changes cause changes in the load on the six-axis force sensor. In reality, the degree to which the load fluctuation is affected varies depending on the type of operating arm 31 attached to the power unit 222, so both of these can be taken into consideration when adopting the following control method.
[0045] In one embodiment, as shown in FIG. 8 , the power mechanism 22 is connected to the link adjacent to the power mechanism 22 by a 6-axis force sensor, and the 6-axis force sensor is connected to the surgical robot's control device. Note that "◯" indicates that a 6-axis force sensor is not attached to the joint, and "●" indicates that a 6-axis force sensor is attached. More specifically, the 6-axis force sensor is installed in a joint at the distal end of the robot arm 21 and rigidly connected to the housing 223 of the power mechanism 222. With respect to the 6-axis force sensor, the entire power mechanism 22 acts as a load for the 6-axis force sensor. The 6-axis force sensor is capable of monitoring all force / moment vectors on the load side.
[0046] As shown in FIG. 9, a method for controlling a robot arm of a surgical robot according to one embodiment includes the following steps. Step S11: Based on the installation state information and position state information inside the power mechanism, the load parameters of the power mechanism in the corresponding state are obtained.
[0047] The load parameters include a mass parameter and a center of gravity parameter.
[0048] Step S12: Based on the load parameters, a load dynamic model corresponding to the load constituted by the power mechanism is determined in the coordinate system of the six-axis force sensor.
[0049] Step S13: Obtain position information for each joint in the robot arm, and calculate the six-axis force / moment vector of the load in accordance with the load dynamic model.
[0050] Step S14: The sum of the six-axis force / moment vectors of the six-axis force / torque sensor is obtained, and the zero-offset six-axis force / moment vectors of the six-axis force / torque sensor are also obtained. Note that this step may be executed before step S15.
[0051] Specifically, the data collected by the six-axis force / moment sensor is decoupled and filtered to obtain the corresponding six-axis force / moment vectors. The zero-offset six-axis force / moment vectors can be obtained if they are measured in advance.
[0052] Step S15: Calculate the six-axial force / moment vector of the external force applied to the power mechanism based on the sum of the six-axial force / moment vector, the six-axial force / moment vector of the zero offset, and the six-axial force / moment vector of the load.
[0053] Step S16: The six-axis force / moment vectors of the external force are analyzed to obtain target position and posture information in the base coordinate system of the robot arm of the power mechanism, and based on the target position and posture information, each joint in the robot arm is operated to make the power mechanism reach the corresponding target position and posture.
[0054] In one embodiment, as shown in FIG. 10, before step S11, the following steps are included: Step S111: According to each mounting state inside the power mechanism, the load parameters of the power mechanism are measured when the power mechanism is in the corresponding mounting state and the inside is in a different position state.
[0055] In the same mounting state, the more position states are selected, the more accurate the measured load parameters will be. Note that the mounting of the actuating arm 31 of each power unit 222 generally needs to be performed manually, but the control device controls the drive unit to slide the power unit 222 on the guide rail 221, thereby changing the position of the power unit 222 relative to the corresponding guide rail 221. For example, the control device generates a random position parameter for each drive unit, causing each drive unit to slide the power unit 222 to a corresponding position on the guide rail 221.
[0056] Step S112: Based on the measured load parameters of the power mechanism when the power mechanism is in a corresponding mounting state and its interior is in a different position state, establish a parameter calculation model according to each mounting state of the power mechanism.
[0057] Furthermore, as shown in FIG. 11, step S11 includes the following steps: Step S113: The mounting state information and the position state information inside the power mechanism are acquired.
[0058] Step S114: A parameter calculation model is called based on the mounting state information of the power mechanism.
[0059] Step S115: The called parameter calculation model and the position state information of the power mechanism are combined to calculate the load parameters of the power mechanism in the corresponding state.
[0060] In step S113, a detection mechanism may be provided in each power unit 222 to obtain information on whether or not the actuating arm 31 is attached to each power unit 222, which is part of the attachment state information. This detection mechanism detects whether or not the actuating arm 31 is attached to the power unit 222, and may be selected from a proximity sensor, a pressure sensor, a photoelectric sensor, etc.
[0061] In step S113, to obtain the type information of the actuator arm 31 attached to each power unit 222 from the attachment status information, a memory for storing type information may be installed in each actuator arm 31. When a data interface connected to the surgical robot's control device is installed in the power mechanism 22, for example, in the power unit 222, and the actuator arm 31 is attached to the power unit 222, the data interface may be connected to the memory, thereby reading the type information of the actuator arm 31 via the data interface. Alternatively, when an electronic tag for storing type information is installed in each actuator arm 31, a corresponding reader / writer connected to the surgical robot's control device is installed in the power mechanism 22, and the actuator arm 31 is attached to the power unit 222, the reader / writer may sense the electronic tag and read the type information of the actuator arm 31. The electronic tag may be an RFID electronic tag, an NFC electronic tag, or the like. Correspondingly, the reader / writer may be an RFID reader / writer or an NFC reader / writer. The type of the actuator arm 31 is primarily related to the type of its end instrument 34, and may also be related to the structure of the actuator arm itself. The end device 34 includes an image end device 34A and an operation end device 34B as shown in Fig. 2. Generally, the type of the image end device 34A is relatively simple, and the type of the operation end device 34B is relatively abundant.
[0062] In step S113, in order to obtain position information of each power unit 222 relative to the corresponding guide rail 221 among the position state information, a position sensor may be installed in each drive unit that slides the power unit 222 relative to the guide rail 221 to sense the position information. The drive unit typically includes a motor and an encoder. The encoder may be used as a position sensor to obtain the above-mentioned position information.
[0063] Specifically, the number of parameter calculation models in step S112 matches the number of mounting states inside the power mechanism 22. If the number of power units 222 in the power mechanism 22 is n and the number of types of actuating arms 31 is m, the following number of mounting states may result depending on the setting conditions.
[0064] Example 1: Considering only whether or not the actuating arm 31 is attached to each power unit 222, n A total of 2 species parameters were calculated according to the model. n It is possible to obtain the seed attachment status.
[0065] Example 2: Considering whether or not the actuating arm 31 is attached to each power unit 222 and the type of the actuating arm 31, (m+1) n Total (m+1) according to the species parameter calculation model n It is possible to obtain the seed attachment status.
[0066] JPEG0007766992000001.jpg38170
[0067] JPEG0007766992000002.jpg29170
[0068] By limiting the different conditions, it is possible to reduce the number of identifiable mounting states accordingly, and further reduce the number of parameter calculation models.
[0069] The process of establishing the parameter calculation model in step S112 includes the steps of defining a mathematical formula for the parameter calculation model, sampling and calculating input / output data of the parameter calculation model, and estimating model parameters based on the sampled and calculated input / output data of the parameter calculation model to determine the parameter calculation model.
[0070] The parameter calculation model may be of MISO (multiple-input, single-output) type or MIMO (multiple-input, multiple-output) type, and is determined based on the coupling status of the model parameters of the load dynamic model to be determined. Alternatively, one learning model may be defined to correspond to different mounting conditions, and the parameter calculation model may be obtained by using machine learning and training with as much sampled input / output data related to the parameter calculation model as possible. The parameter calculation model may be linear or nonlinear, and its linearity or nonlinearity may be determined based on initial dynamic analysis or test data. When the parameter calculation model is linear, the model parameters of the parameter calculation model may be determined by a method such as the least squares method or the maximum likelihood method. When the parameter calculation model is nonlinear, the model parameters may be determined by a nonlinear optimization calculation method such as Newton-Gauss.
[0071] In step S112, the parameter calculation model and the corresponding mounting state information are associated with each other and stored in a data structure such as a parameter dictionary or list, so that they can be easily called up in the subsequent step S114.
[0072] JPEG0007766992000003.jpg28170
[0073] Illustratively, P load =k1S'1+k2S'2+ +k n S' n +k n+1 where n represents the number of power units, and P' represents the model parameters of the parameter calculation model, i.e., k1 to k n+1, S'1~S' n Each represents the positional information of each power unit relative to the corresponding guide rail. n+1 is the zero parameter of the parameter calculation model, and k1~k n+1 are both obtained by measurement (e.g., orientation and / or identification).
[0074] JPEG0007766992000004.jpg16170
[0075] Position status information of each joint in the robot arm 21 may be acquired by a position sensor disposed at each joint. Simply put, the sensor may be an encoder in a drive unit (i.e., a motor having an encoder) that similarly drives the operation of each joint. The calculation in step S15 may be performed using the following formula: F e = F s -F m -F0 F e is the six-axis force / moment vector of the external force, F s is the sum of six axial force / moment vectors, F m is the six-axis force / moment vector of the load, and F0 is the six-axis force / moment vector of the offset. e For the calculation of F s , F m and F0 must be calculated, and usually, F is calculated in the sensor coordinate system of a 6-axis force sensor. s , F m and F0 may be calculated.
[0076] As shown in FIG. 12, the above step S16 includes the following steps. Step S161: The six-axis force / moment vector of the external force is analyzed as the incremental position and posture information in the base coordinate system of the robot arm of the power mechanism.
[0077] Step S162: The position information of each joint module of the robot arm is acquired.
[0078] In the embodiment shown in FIGS. 1 and 13, the robot arm 21 has five degrees of freedom, and each position sensor can acquire one set of such position information (d1, θ2, θ3, θ4, θ5). Step S163: Based on the position information of each joint module, the current position and posture information of the robot arm of the power mechanism in the base coordinate system is calculated.
[0079] JPEG0007766992000005.jpg38170
[0080] Step S164: Based on the current position and posture information and the increased position and posture information in the base coordinate system of the robot arm of the power mechanism, target position and posture information in the base coordinate system of the robot arm of the power mechanism is calculated.
[0081] JPEG0007766992000006.jpg31170
[0082] Step S165: Based on the target position and orientation information, target position information of each joint module in the robot arm is calculated.
[0083] Typically, this step may involve calculations in conjunction with inverse kinematics.
[0084] Step S166: Based on the target position information of each joint module, the joint modules in the robot arm are linked together to move the distal end of the power mechanism to the target position and posture.
[0085] In this step, for example, each joint in the robot arm 21 is interlocked in accordance with PID control using a CSP (cycle synchronous position control) mode.
[0086] In the above embodiment, specifically, in step S16, the six-axis force / moment vectors of the external force are analyzed to obtain target position / posture information in the base coordinate system of the robot arm of the power mechanism. This obtains the input operation command related to the task degrees of freedom of the power mechanism, and analyzes the six-axis force / moment vectors of the external force in accordance with the task degrees of freedom to obtain target position / posture information in the base coordinate system of the robot arm of the power mechanism.
[0087] The operation commands include a first operation command and a second operation command. The first operation command is relevant when the task degrees of freedom completely match the effective degrees of freedom of the robot arm 21, and the powered mechanism 22 can be freely drag-controlled based on target position and posture information obtained by analysis based on the first operation command. The second operation command is relevant when the task degrees of freedom do not completely match the effective degrees of freedom of the robot arm 21 but are included in the effective degrees of freedom of the robot arm 21, and the powered mechanism 22 is drag-controlled only within the set task degrees of freedom according to the target position and posture information obtained by analysis based on the second operation command. Furthermore, the second operation command is relevant when the task degrees of freedom of the powered mechanism 22 are selected from the effective degrees of freedom of the robot arm 21 that are related to the posture degrees of freedom.
[0088] Specifically, the task degrees of freedom of the powered mechanism 22 may be understood as the degrees of freedom of the powered mechanism 22's allowed movement in Cartesian space, which is six or less. The powered mechanism 22 has effective degrees of freedom in Cartesian space. The effective degrees of freedom of the powered mechanism 22 are related to the configuration (i.e., structural features) of the robot arm 21 and may be understood as the degrees of freedom that the powered mechanism 22 can realize in Cartesian space, which is also six or less. The task degrees of freedom of the powered mechanism 22, i.e., the degrees of freedom that the powered mechanism 22's movement is allowed to have.
[0089] In step S16, the six-axis force / moment vectors of the external force may be analyzed using the task degrees of freedom (setting information), and then the analyzed six-axis force / moment vectors of the external force may be mapped as the increased position and posture information of the power mechanism. For example, if the task degrees of freedom allow movement of three degrees of freedom, i.e., [x, y, z], among the position and posture information [x, y, z, α, β, γ], when analyzing the six-axis force / moment vectors of the external force, only the six-axis force / moment vectors of the external force corresponding to the three degrees of freedom, i.e., [x, y, z], are analyzed, and then the six-axis force / moment vectors of the external force corresponding to the three degrees of freedom, i.e., [x, y, z], are mapped as the increased position and posture information of the power mechanism 22.
[0090] Naturally, after the six-axis force / moment vectors of external force are completely analyzed, the analyzed six-axis force / moment vectors of external force may be mapped based on the task degrees of freedom as the increased position and posture information of the power mechanism 22. For example, if the task degrees of freedom similarly allow movement of the three degrees of freedom, i.e., [x, y, z], among the position and posture information [x, y, z, α, β, γ], when analyzing the six-axis force / moment vectors of external force, the six-axis force / moment vectors of external force corresponding to all six degrees of freedom, i.e., [x, y, z, α, β, γ], are analyzed, and then the six-axis force / moment vectors of external force corresponding to the three degrees of freedom, i.e., [x, y, z], are mapped as the increased position and posture information of the power mechanism 22.
[0091] For example, in the robot arm 21 shown in FIG. 13, information on the effective degrees of freedom of the robot arm 21 includes [x, y, z, α, β] and is based on the joint modules 210 to 214, and does not have degrees of freedom in the roll angle γ. When the setting information for setting the task degrees of freedom of the power mechanism 22 is [x, y, z, α, β], the setting information of the task degrees of freedom of the power mechanism 22 is completely consistent with the information of the effective degrees of freedom of the robot arm 21, and at this time, the power mechanism 22 is freely controlled, and the power mechanism 22 is moved in a wide range to adapt to the layout of the operating room, and this setting corresponds to the case related to the above-mentioned first operation command.
[0092] When the setting information for setting the task degrees of freedom of the power mechanism 22 is [x, y, z, α] or [x, y, z], etc., the setting information for the task degrees of freedom of the power mechanism 22 is included within the information on the effective degrees of freedom of the robot arm 21, but does not completely match, and when the power mechanism is controlled, adjustment is made only with the corresponding degrees of freedom, which are [x, y, z, α] or [x, y, z], and at that time, constraint control is performed on the power mechanism 22, and the power mechanism 22 is controlled within the limited range.
[0093] In particular, when the setting information for setting the task degrees of freedom of the power mechanism 22 includes only [α, β], it belongs to RCM constraint control in constraint control, i.e., it moves around the remote motion center (i.e., fixed point), adjusts only the yaw angle and pitch angle, and can satisfy fine adjustment during surgery, and such setting corresponds to the case related to the above-mentioned second operation command.
[0094] Naturally, the information of the effective degrees of freedom of the robot arm 21 includes [x, y, z, α, β, γ], and by setting the task degrees of freedom of the power mechanism 22, the RCM constraint control may include a variety of types in total, such as adjustment of yaw angle only, adjustment of pitch angle only, adjustment of roll angle only, adjustment of yaw angle and pitch angle, adjustment of yaw angle and roll angle, adjustment of pitch angle and roll angle, and adjustment of yaw angle, pitch angle and roll angle.
[0095] Specifically, in step S16, the six-axis force / moment vector of the external force is analyzed using the stiffness matrix, and target position and posture information in the base coordinate system of the robot arm of the power mechanism is obtained.
[0096] The stiffness matrix is used to convert force information into position and orientation information, and is typically a matrix related to the task degrees of freedom and the vector dimension of the external force. For example, if the setting information for the task degrees of freedom of the power mechanism 22 describes the allowable movement of a (1≦a≦6) degrees of freedom and the vector dimension of the external force is assumed to be b (1≦b≦6), the stiffness matrix can be described as a single a×b (matrix) matrix. Different stiffness matrices typically have different control parameters, and each can be determined by a limited number of experiments or automatic computer calculations.
[0097] The control parameters of the stiffness matrix may be adjustable, and linear or exponential scaling from external force information to position and orientation information may be achieved as needed. For example, an input device connected to the control device may be provided. The input device inputs control information for adjusting the control parameters of the stiffness matrix. The control information is typically a physical parameter to be input, and the specific adjustment process may be achieved in the step of acquiring the physical parameter.
[0098] The physical parameters may be of a discrete type or a continuous type, which is determined by the characteristics of the input device itself. For example, input devices such as gears and push buttons generally input discrete type physical parameters, while input devices such as stepless knobs and touch bars input general continuous physical parameters.
[0099] The parameter adjustment model and the physical parameters are combined to adjust the control parameters in the stiffness matrix.
[0100] In one example, the parameter adjustment model may be a single control parameter dictionary corresponding to a discrete physical parameter. The parameter dictionary stores a plurality of sets of control parameters. The plurality of sets of control parameters correspond one-to-one to a series of discrete physical parameters generated by operating an input device. In this case, when control of the stiffness matrix is required, the corresponding control parameter can be indexed and called up according to the mapping relationship between the physical parameter and the control parameter in the parameter dictionary to adjust the stiffness matrix. This allows for better matching with the operator's dragging habits on the robot arm, improving the user experience.
[0101] In one example, the parameter adjustment model may be a single parameter calculation model corresponding to a continuous physical parameter. The parameter calculation model is a predetermined mathematical formula, and continuous physical parameters generated by operating an input device are set as independent variables of the control parameter calculation model. The control parameters are explanatory variables of the parameter calculation model and vary depending on the physical parameters input to the parameter calculation model. In this case, if control of the stiffness matrix is required, the physical parameters and the control parameters are the relationship between the independent variables and explanatory variables in the control parameter calculation model, and the control parameters are calculated based on the physical parameters to adjust the stiffness matrix in the stiffness matrix. In this example, the parameter calculation model may be set to a polynomial model, and a fifth-order polynomial model is preferable. The fifth-order polynomial model has an increasing curve whose trajectory coincides with the direction of the slope rate. In particular, the trajectory of the fifth-order polynomial model is relatively gentle at both ends, contributing to smooth control of external forces.
[0102] The parameter adjustment model may include the above two models to meet all control needs, or may select one of the above two models to meet specific control needs. The parameter adjustment model may call an appropriate parameter adjustment model based on the type information of the input device to obtain the control parameters according to the physical parameters input by the input device.
[0103] In one embodiment, when the setting information of the task degrees of freedom of the powered mechanism 22 is partially included in the information of the effective degrees of freedom of the robot arm 21, a preferred option is to present information indicating that there is an error in the setting, and another option is to allow adjustment of only some of the degrees of freedom included in the information of the effective degrees of freedom of the robot arm 21. Taking the robot arm 21 shown in FIG. 13 as an example, when the setting information of the task degrees of freedom of the powered mechanism 22 is [y,z,α,β,γ] or [x,y,z,α,β,γ], information indicating that there is an error in the setting may be presented, and adjustment of the degrees of freedom corresponding to [y,z,α,β] or [x,y,z,α,β] may be allowed. This may be set as necessary.
[0104] The surgical robot may have other hardware configurations, primarily indicated by the number of 6-axis force sensors installed. In this embodiment, a force sensor with a 6-axis sensor may be installed between two or more consecutive links, each of which uses a power mechanism as a link. For example, as shown in FIG. 15, a "circle" indicates that a 6-axis force sensor is not installed at that joint, and a "circle" indicates that a 6-axis force sensor is installed. With this hardware configuration, the operator can achieve the corresponding control objective by dragging the link, other than the power mechanism, on which the 6-axis force sensor is installed. This is particularly applicable when the robot arm has many redundant degrees of freedom. The above hardware configuration provides another method for controlling the robot arm of a surgical robot, which, as shown in FIG. 19, includes the following steps: Step S21: Obtain one set of load parameters for each of the six-axis force sensors.
[0105] The set of load parameters includes load parameters of each link located at the distal end of the corresponding six-axis force sensor. The load parameters include a mass parameter and a center of gravity parameter. While the load parameters of the links other than the power mechanism 22 may be obtained by measurement, it should be noted that the load parameters of the power mechanism are obtained by steps S111 to S115 described in the above embodiment, and details thereof will be omitted.
[0106] Step S22: Using a set of load parameters for each six-axis force sensor, a load dynamic model is determined in the corresponding six-axis force sensor coordinate system according to the load applied by each link at the distal end of the six-axis force sensor. JPEG0007766992000007.jpg14170JPEG0007766992000008.jpg21170
[0107] Step S23: Obtain position information for each joint in the robot arm, and calculate the six-axis force / moment vector of the load at each six-axis force sensor in accordance with the load dynamic model at each six-axis force sensor.
[0108] Step S24: The sum of the 6-axis force / moment vectors of the 6-axis force / torque sensors is obtained, the 6-axis force / moment vectors of the offsets of the 6-axis force / torque sensors are obtained, and the 6-axis force / moment vectors of the external force acting on each 6-axis force / torque sensor are calculated in accordance with the 6-axis force / moment vectors of the load on each 6-axis force / torque sensor.
[0109] Step S25: Determine a force-receiving link based on the calculated six-axis force / moment vector of the external force acting on each six-axis force sensor and the six-axis force / moment vector of the external force acting on the one six-axis force sensor adjacent to its distal end, and calculate the six-axis force / moment vector of the external force applied to the force-receiving link.
[0110] If the sum of the six-axis force / moment vectors in the corresponding six-axis force / torque sensor coordinate system is the same as the sum of the six-axis force / moment vector of the distal end load, the six-axis force / moment vector of the offset, and the six-axis force / moment vector of an external force acting on one six-axis force sensor adjacent to the distal end, it is determined that the link adjacent to the distal end of the six-axis force / torque sensor is not energized.If the sum of the six-axis force / moment vectors in the corresponding six-axis force / torque sensor coordinate system is greater than the sum of the six-axis force / moment vector of the distal end load, the six-axis force / moment vector of the offset, and the six-axis force / moment vector of an external force acting on one six-axis force sensor adjacent to the distal end, it is determined that the link adjacent to the distal end of the six-axis force / torque sensor is energized. The difference between the sum of the six-axis force / moment vectors in the corresponding six-axis force / torque sensor coordinate system and the six-axis force / moment vector of the distal end load, the six-axis force / moment vector of the offset, and the six-axis force / moment vector of the external force acting on one of the six-axis torque sensors adjacent to that distal end is the six-axis force / moment vector of the external force applied to the force-receiving link. Note that the concept of "acting" is different from the concept of "imparting," and that "acting" includes the concept of "imparting."
[0111] Step S26: Analyze the six-axis force / moment vector of the external force applied to the force-receiving link to obtain target position and posture information in the corresponding coordinate system of the force-receiving link, and operate the robot arm according to the target position and posture information.
[0112] In this embodiment, the task degrees of freedom may also be set for the power mechanism, and in step S26, the six-axis force / moment vectors of the external force applied to the force-receiving link are analyzed in accordance with the task degrees of freedom of the power mechanism to obtain the target position and posture information in the corresponding coordinate system of the force-receiving link.Detailed description will be omitted here.
[0113] In the case where the hardware of this example is arranged, the link of the robot arm 21 to which the 6-axis force sensor is attached may be biased in only one direction or in two or more directions. In one embodiment, when there is one force-receiving link, if the force-receiving link is a powered mechanism, as shown in FIG. 15 , step S26 above includes a step of analyzing six-axis force / moment vectors of the external force on the force-receiving link in accordance with the task degrees of freedom of the powered mechanism, and acquiring target position and posture information in the base coordinate system of the robot arm of the powered mechanism.
[0114] Based on the target position and posture information, each link in the robot arm is operated to make the power mechanism reach the corresponding target position and posture.
[0115] This case is the same as the above-described embodiment, for example, the case shown in FIG. 8. For example, the arrangement shown in FIG. 8 can realize free drag or RCM constrained drag of the power mechanism 22, i.e., control can be achieved in the above steps regardless of whether the acquired input is the first operation command or the second operation command.
[0116] In one embodiment, when there is one force-receiving link, the force-receiving link is not a power mechanism, and the acquired input is the above-mentioned first operation command, as shown in FIG. 16, the above step S26 includes the following steps: The six-axis force / moment vector of the external force on the force-receiving link is analyzed to obtain the target position and posture information of the force-receiving link in the base coordinate system of the robot arm.
[0117] Based on the target position and posture information, the force-receiving link and each link at its proximal end within the robot arm are actuated to make the force-receiving link reach the corresponding target position and posture.
[0118] In this case, the robot arm 21 is equivalent to being split in half, and each link at the proximal end of the force-receiving link is actuated to make the force-receiving link reach the corresponding target position and posture, and each link at the distal end of the force-receiving link is actuated along with the force-receiving link.
[0119] In one embodiment, when there is one force-receiving link, the force-receiving link is not a power mechanism, and the acquired input is the above-mentioned second operation command, referring to Figures 16 and 20 together, the above step S26 includes the following steps: Step S2611: The six-axis force / moment vector of the external force on the force-receiving link is analyzed, and the target position and posture information of the force-receiving link in the base coordinate system of the robot arm is obtained, as well as the current position and posture information of the power mechanism in the base coordinate system of the robot arm.
[0120] Step S2612: Under the condition that the force-receiving link has reached the target position and posture corresponding to the target position and posture information in the base coordinate system of the robot arm of the force-receiving link, the current position and posture information in the base coordinate system of the robot arm of the power mechanism is converted to obtain the target position and posture information in the coordinate system of the force-receiving link of the power mechanism.
[0121] JPEG0007766992000009.jpg43170
[0122] Step S2613: Based on the target position and posture information of the force-receiving link, the force-receiving link and each link at its proximal end are actuated to make the force-receiving link reach the corresponding target position and posture, and based on the target position and posture information of the power mechanism, the power mechanism and each link between the power mechanism and the force-receiving link are actuated to maintain the power mechanism at its current position or position and posture.
[0123] In this case, the robot arm 21 is equivalent to being split in half, and each link at the proximal end of the force-receiving link is actuated to make the force-receiving link reach a corresponding target position or posture, while each link at the distal end of the force-receiving link is actuated to maintain the power mechanism 22 in the current position or posture. This can be used in situations where the operation of a certain part of the robot arm is adjusted to achieve effects such as obstacle avoidance, as well as in situations where the safety of a surgical procedure is ensured.
[0124] Before step S2613, the validity of the target position and posture information in the coordinate system of the force-receiving link of the power mechanism may be determined, and step S2613 may be executed only if the information is valid. For example, in this validity determination step, the target position and posture information may be analyzed as target operating state parameters (including position parameters, velocity parameters, and acceleration parameters) of each joint in a corresponding partial structure of the robot arm, and the target operating parameters may be compared one by one with the operating state thresholds of the corresponding joints. If each target operating parameter is within the corresponding operating state threshold, it may be determined to be valid, and if not, it may be determined to be invalid.
[0125] In one embodiment, when there are two or more force-receiving links, if the acquired input is the first operation command, as shown in FIG. 21, step S26 includes the following steps: Step S2621: The six-axis force / moment vectors of the external force on the force-receiving link absolutely adjacent to the proximal end of the robot arm are analyzed, and target position and posture information of the force-receiving link in the base coordinate system of the robot arm is obtained.
[0126] Step S2622: Of each pair of adjacent force-receiving links, the six-axis force / moment vectors of the external force of the force-receiving link that is relatively far away from the proximal end of the robot arm are analyzed, and target position and posture information in the coordinate system of the force-receiving link adjacent to the force-receiving link is obtained.
[0127] Step S2623: Based on the target position and posture information of the force receiving link absolutely adjacent to the proximal end of the robot arm, the force receiving link absolutely adjacent to the proximal end of the robot arm and each link at its proximal end are actuated to make the force receiving link absolutely adjacent to the proximal end of the robot arm reach the corresponding target position and posture, and based on the target position and posture information of the force receiving link that is relatively far from the proximal end of the robot arm out of each of the two adjacent links, each link between the force receiving link relatively far from the proximal end of the robot arm and its adjacent force receiving link is actuated to make the force receiving link relatively far from the proximal end of the robot arm reach the corresponding target position and posture.
[0128] In this case, if the number of force-receiving links is d, this is equivalent to dividing the robot arm 21 into d+1 parts, and the force-receiving link absolutely adjacent to the proximal end of the robot arm operates according to the corresponding target position and posture information to reach the target position and posture in the base coordinate system of the robot arm, and the other force-receiving links operate according to their own target position and posture information to operate the corresponding force-receiving link with respect to the coordinate system of the force-receiving link adjacent to its proximal end to reach their corresponding position and posture. If the distal end of the force-receiving link at the distal end of the robot arm 21 has further links, these links can operate together with the force-receiving link at the distal end of the robot arm 21.
[0129] Steps S2621 to S2623 described above are suitable for either of the biasing cases shown in FIG. 17 and FIG. 18, that is, this method is applicable regardless of whether the force-receiving link includes the power mechanism 22 or not.
[0130] In one embodiment, when there are two or more force-receiving links, if the acquired input is the second operation command and the force-receiving link does not include a power mechanism, in accordance with Figures 17 and 22, step S26 includes the following steps: Step S2631: The six-axis force / moment vectors of the external force on the force-receiving link absolutely adjacent to the proximal end of the robot arm are analyzed, and the target position and posture information of the force-receiving link in the base coordinate system of the robot arm is obtained.
[0131] Step S2632: Of each pair of adjacent force-receiving links, the six-axis force / moment vectors of the external force of the force-receiving link that is relatively far away from the proximal end of the robot arm are analyzed, and target position and posture information in the coordinate system of the force-receiving link adjacent to the force-receiving link is obtained.
[0132] Step S2633: Current position and posture information in the base coordinate system of the robot arm of the power mechanism is obtained, and when each force-receiving link has reached the target position and posture corresponding to the target position and posture information in the corresponding coordinate system, the current position and posture information in the base coordinate system of the robot arm of the power mechanism is converted to obtain target position and posture information in the coordinate system of the adjacent force-receiving link of the power mechanism.
[0133] The step S2633 may perform the conversion using, for example, the formula and principle of step S2612.
[0134] Step S2634: Based on the target position and posture information of the force receiving link absolutely adjacent to the proximal end of the robot arm, the force receiving link absolutely adjacent to the proximal end of the robot arm and each link at its proximal end are actuated to make the force receiving link absolutely adjacent to the proximal end of the robot arm reach the corresponding target position and posture; based on the target position and posture information of the force receiving link relatively away from the proximal end of the robot arm, the force receiving link relatively away from the proximal end of the robot arm and each link between it and its adjacent force receiving link are actuated to make the force receiving link relatively away from the proximal end of the robot arm reach the corresponding target position and posture; based on the target position and posture information of the power mechanism, the power mechanism and each link between the power mechanism and the adjacent force receiving link are actuated to maintain the power mechanism at its current position or position or posture.
[0135] In this case, the robot arm 21 is divided into multiple parts, and each force-receiving link operates in its own coordinate system to reach the target position and posture, while the power mechanism 22 is maintained in the current position or position and posture to ensure the safety of the surgical process.
[0136] In one embodiment, when there are two or more force-receiving links, when the acquired input is the second operation command, and when the force-receiving links include a power mechanism, in accordance with Figures 18 and 23, step S26 includes the following steps: Step S2641: The six-axis force / moment vectors of the external force on the force-receiving link absolutely adjacent to the proximal end of the robot arm are analyzed to obtain the desired position and posture information of the force-receiving link in the base coordinate system of the robot arm.
[0137] Step S2642: The six-axis force / moment vectors of the external force of the power mechanism are analyzed to obtain the target position and posture information of the robot arm of the power mechanism in the base coordinate system.
[0138] Step S2643: Analyze the six-axis force / moment vectors of the external force of the force-receiving link that is relatively far away from the proximal end of the robot arm, among each of the two adjacent force-receiving links other than the power mechanism, to obtain the target position and posture information in the coordinate system of the adjacent force-receiving link.
[0139] Step S2644: When the force-receiving link adjacent to the power mechanism has reached the target position and posture corresponding to the target position and posture information in the corresponding coordinate system, the target position and posture information in the base coordinate system of the robot arm of the power mechanism is converted to obtain the target position and posture information in the coordinate system of the force-receiving link adjacent to the power mechanism.
[0140] Step S2644 may perform the conversion using, for example, the formula and principles of step S262.
[0141] Step S2645: It is determined whether or not the target position and attitude information in the coordinate system of the adjacent force receiving link of the power mechanism is valid.
[0142] If it is valid, the process proceeds to step S2646, and if it is invalid, the process proceeds to step S2647.
[0143] Step S2646: Based on the target position and posture information of the force receiving link absolutely adjacent to the proximal end of the robot arm, actuate the force receiving link absolutely adjacent to the proximal end of the robot arm and each link at its proximal end to make the force receiving link absolutely adjacent to the proximal end of the robot arm reach the corresponding target position and posture; based on the target position and posture information of the force receiving link relatively away from the proximal end of the robot arm, actuate the force receiving link relatively away from the proximal end of the robot arm and each link between it and the adjacent force receiving link to make the force receiving link relatively away from the proximal end of the robot arm reach the corresponding target position and posture; based on the target position and posture information of the power mechanism, actuate the power mechanism and each link between the power mechanism and the adjacent force receiving link to maintain the position of the power mechanism and adjust its posture.
[0144] Step S2647: The six-axis force / moment vectors of the external forces of the power mechanism are analyzed in accordance with the task degrees of freedom of the power mechanism to obtain target position and posture information of the power mechanism in the base coordinate system of the robot arm, and based on the target position and posture information of the power mechanism, each link within the robot arm is activated to maintain the position of the power mechanism and adjust its posture.
[0145] In this case, that is, if it is determined in step S2645 that the target position and posture information is valid, the robot arm 21 is controlled in parts and RCM constraint drag control of the power mechanism 22 is realized; on the other hand, if it is invalid, the robot arm 21 is controlled as a whole to realize RCM constraint drag control.
[0146] In each of the above-mentioned embodiments, the validity of each acquired target position and posture information is judged, and the judgment process and principle are the same as or similar to the judgment process and principle between steps S2612 and S2613. Furthermore, if the information is valid, the process proceeds to the corresponding subsequent step to realize the corresponding control, and detailed explanations are omitted here.
[0147] The above-described embodiment applies to control of a robotic arm of a surgical robot of the type shown in Figure 1. This type of surgical robot includes a robotic arm 21 and one or more actuation arms 31 attached to the distal end of the robotic arm 21 and carrying an end instrument 34. Both the robotic arm 21 and the actuation arms 31 have multiple degrees of freedom.
[0148] The above-described embodiment also applies to the control of a robot arm of a surgical robot of the type shown in FIG. 24. This type of surgical robot includes one main arm 32', one or more adjustable arms 30' attached to the distal end of the main arm 32', and one or more actuator arms 31' with end instruments attached to the distal end of the adjustable arms 30'. The main arm 32', adjustable arms 30', and actuator arms 31' each have multiple degrees of freedom. As shown in FIG. 24, this surgical robot may be provided with four adjustable arms 30', or each adjustable arm 30' may be provided with only one actuator arm 31'. In actual use, the three-stage arm structure of the surgical robot of the type shown in FIG. 24 may be arranged in the two-stage arm structure of the surgical robot of the type shown in FIG. 1 to achieve control. In one embodiment, if the concept of the actuator arms of these two types of surgical robots is the same, for example, by arrangement, each adjustable arm 30' of the surgical robot of the type shown in FIG. 24 may be controlled as the robot arm 21 of the surgical robot of the type shown in FIG. 1. Also, for example, depending on the arrangement, any of the adjustable arm 30' and main arm 32' of a surgical robot of the type shown in Figure 24 may be controlled as robot arm 21 of a surgical robot of the type shown in Figure 1. In one embodiment, the main arm 32' of a surgical robot of the type shown in Figure 24 may be robot arm 21 of a surgical robot of the type shown in Figure 1, and the adjustable arm 30' and its corresponding actuation arm 31' of a surgical robot of the type shown in Figure 24 may be controlled as actuation arm 31 of a surgical robot of the type shown in Figure 1.
[0149] In one embodiment, the control method for the surgical robot is typically implemented by being set within a control device for the surgical robot, the control device including a memory and one or more processors, the memory storing a computer program, and the processor loading and executing the computer program to implement the control method described in any of the above embodiments.
[0150] In one embodiment, a computer-readable recording medium is provided, having a computer program stored thereon, the computer program being configured to be executed by one or more processors to implement the control method according to any of the above embodiments.
[0151] The technical features of the above embodiments can be combined in any way, and for the sake of brevity, not all possible combinations of the technical features in the above embodiments are described, but combinations of these technical features are considered to fall within the scope described in this specification as long as they are not contradictory.
[0152] The combination of each technical feature and any technical feature of the above-mentioned embodiments is versatile and can be applied not only to single-port surgical robots but also to multi-port surgical robots, and does not affect or restrict use with robotic arms of different configurations.
[0153] The above examples are intended to specifically illustrate only some embodiments of the present invention, but should not be construed as limiting the scope of protection of the present invention. Those skilled in the art should understand that, without departing from the creative concept of the present invention, some modifications and improvements may be made, all of which should fall within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined based on the content specified in the claims.
Claims
1. A surgical robot, a robot arm having a plurality of links connected by joints, the distal end of which is a power mechanism; a controller connected to the robot arm; the power mechanism is connected to adjacent links by a six-axis force sensor, and includes a guide rail and a power unit slidably installed on the guide rail, the power unit being used to attach and drive an operating arm that performs a surgical operation; The control device determining a force-receiving link among the links to receive the external force applied to the force-receiving link; When the number of the force-receiving link is one and the force-receiving link does not include the power mechanism, and the task degrees of freedom set in the power mechanism are effective degrees of freedom corresponding to the posture degrees of freedom in the robot arm, acquiring load parameters including mass parameters and center of gravity parameters based on mounting state information and position state information inside the power mechanism; determining a load dynamic model corresponding to the load caused by the power mechanism in a coordinate system of the six-axis force sensor based on the load parameters; Acquire position information of each joint in the robot arm, and calculate six-axis force / moment vectors of the load in accordance with the load dynamic model; obtaining a zero-offset six-axial force / moment vector and a sum of the six-axial force / moment vectors; calculating a six-axial force / moment vector of an external force applied to the power mechanism based on the sum of the six-axial force / moment vectors, the zero-offset six-axial force / moment vector, and the six-axial force / moment vector of the load; analyzing six-axis force / moment vectors of the external force applied to the force-receiving link to obtain target position and posture information of the force-receiving link in a base coordinate system of the robot arm, and obtaining current position and posture information of the power mechanism in the base coordinate system; under a condition that the force receiving link has reached a target position and orientation corresponding to the target position and orientation information in the base coordinate system, current position and orientation information of the power mechanism in the base coordinate system is converted to target position and orientation information in the coordinate system of the force receiving link of the power mechanism; the force receiving link and each of the links at its proximal end are actuated based on target position and posture information of the force receiving link in the base coordinate system to cause the force receiving link to reach a corresponding target position and posture, and the power mechanism and each of the links between the power mechanism and the force receiving link are actuated based on target position and posture information of the power mechanism in the coordinate system of the force receiving link to maintain the power mechanism at a current position or posture; A surgical robot characterized by:
2. The surgical robot according to claim 1, The attachment state information is information on whether an actuating arm is attached to each of the power units and / or information on the type of actuating arm attached to each of the power units. A surgical robot characterized by:
3. The surgical robot according to claim 1 or 2, The control device acquires the load parameters based on one parameter calculation model established in advance according to each installation state inside the power mechanism and position state information of the power mechanism. A surgical robot characterized by:
Citation Information
Patent Citations
Static and dynamic identification method for dynamic parameter for robot
CN102320043A
Verification system and verification method for kinematic and dynamical robot model
CN106292338A
Mechanical arm, working method thereof and surgical robot
CN108210070A
Mechanical arm safety collision strategy based on external force observer
CN108772838A
Direct dragging teaching system and method based on force sensor
CN108789363A