Patent ID: 12226900

DETAILED DESCRIPTION

For ease of understanding of the present application, the present application will be described more fully hereinafter with reference to the associated drawings. Preferred embodiments of the present application are set forth in the accompanying drawings. This application may, however, be embodied in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided for the purpose of providing a more thorough and thorough understanding of the disclosure of the present application.

It should be noted that when an element is referred to as being “disposed on” another element, it may be directly on the other element or intervening elements may also be present. When an element is considered to be “connected” to another element, it may be directly connected to another element or intervening elements may be present at the same time. When an element is considered to be “coupled” to another element, it may be directly coupled to another element or intervening elements may be present at the same time. As used herein, the terms “vertical”, “horizontal”, “left”, “right” and the like are intended for purpose of illustration only and are not intended to be limiting. As used herein, the terms “distal end” and “proximal end” are common terms in the art of interventional medical devices, where “distal end” refers to the end far away from the operator during the surgical procedure, and the “proximal end” refers to the end close to the operator during the surgical procedure.

Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the term “and/or” includes all combinations of one or more of the associated listed items.

Referring toFIGS.1to3, a schematic structural view of a surgical robot according to an embodiment and a partial schematic view thereof are illustrated.

A surgical robot includes a master console1and a slave operating device2. The master console1has a controller11and a display12. A doctor gives a control command to the slave operating device2by operating the controller11, to make the slave operating device2perform the corresponding operation according to the control command of the doctor given to the controller11, and the surgical area is observed by the display12. In particular, the controller11can freely move and rotate, thus the doctor has a greater operating space, for example, the controller11can be connected to the master console1by a connection wire, or by a rotatable link connected to the master console1. The slave operating device2includes a robot arm21having a plurality of links connected by joints, and the link at a remote end of the robot arm21is a power mechanism22, and the power mechanism22is configured for installing and driving operating arms31each having an end instrument34.

In one embodiment, the joints of the robot arm21can be remotely operated by the controller11to make the power mechanism22move to a desired position and/or pose.

In another embodiment, the power mechanism22can be dragged to allow the joints of the robot arm21to linkably move, such that the power mechanism22moves to a desired position and/or pose. The present disclosure discloses how the power mechanism22can be dragged to a desired position and/or pose.

As shown inFIG.4, the power mechanism22includes an outer casing223connected to a remote end of the robot arm21, the outer casing223has rails221, each of the rails221is for a power unit222slidably mounted thereon, and the power units222are configured for mounting and driving the operating arms31each having the end instrument34. The number of rails221is one or more (four shown inFIG.4), and the number of power units222is the same as the number of rails221. The rail221is typically a linear guide, and the power unit222performs a linear movement on the rail221, in particular, there may be a power portion (not shown) located on the rail221for driving the power unit222slide on the rail221. For ease of dragging, a handle (not shown) can be installed in the outer casing223.

An internal installation state and position state of the power mechanism22may easily change a load of the power mechanism22to affect the drag of the power mechanism22. The installation state inside the power mechanism22is specifically associated with whether or not the operating arm31is installed and/or associated with a type of operation arm31, and the internal position state of the power mechanism22is specifically associated with a position of the respective power unit222relative to the corresponding rail221.

Exemplary, there is no operating arm31installed on each of the power units222; inFIG.5, an operating arm31is installed on the power unit222; inFIG.6, each of the four power units222has an operating arm31installed thereon, and the four power units222are at a same position state relative to the respective rails221; inFIG.7, the four power units222each are installed with an operating arm31, but a position state of one of the power units222relative to the respective rail221is different from other position state of the remaining power units222relative to the respective rails221. InFIG.4toFIG.7, it is assumed that the type of operation arms31installed on the power units222does not affect the load change, thus substantially reflecting different state changes inside the power mechanism22, which can cause changes of the load of a six-dimensional sensor. In fact, the difference in the type of operation arms31installed on the power units222also affects the load change, and it can be considered when using the control method below.

In one embodiment, as shown inFIG.8, the power mechanism22is connected to an adjacent link by a six-dimensional sensor, and the six-dimensional sensor is connected to a control device of the surgical robot, in particular, the hollow circle “◯” refers to the joint that does not have a six-dimensional sensor installed thereon, and the solid circle “●” refers to the joint that have a six-dimensional sensor installed thereon. More specifically, the six-dimensional sensor is arranged on a joint of the remote end of the robot arm21and is rigidly attached to the outer casing223of the power unit222. For such six-dimensional sensor, the entire power mechanism22constitutes its load, and the six-dimensional sensor can monitor all force/torque vectors in the load side.

As shown inFIG.9, in a control method of a robot arm of a surgical robot in one embodiment, the control method includes:

Step S11, according to installation state information and position state information inside of a power mechanism, acquiring load parameters of the power mechanism at a corresponding state.

The load parameters include quality parameters and centroid parameters.

Step S12, according to the load parameters, determining a load mechanics model corresponding to a load caused by the power mechanism at a six-dimensional sensor coordinate system.

Step S13, acquiring position information of each of joints of the robot arm and combining with the load mechanics model to calculate a six-dimensional force/torque vector.

Step S14, acquiring a total six-dimensional/torque vector of a six-dimensional sensor, and acquiring a zero-biased six-dimensional force/torque vector of the six-dimensional sensor. Specifically, step S14can only be placed before step S15.

Specifically, a corresponding six-dimensional force/torque vector can be obtained by decoupling and filtering data acquired by the six-dimensional sensor. The zero-biased six-dimensional force/torque vector can be obtained in advance.

Step S15, according to the total six-dimensional force/torque vector, the zero-biased six-dimensional force/torque vector, and the six-dimensional force/torque vector of the load, calculating a six-dimensional force/torque vector of an external force applied to the power mechanism.

Step S16, analyzing the six-dimensional force/torque vector of the external force to acquire target position and/or pose information of the power mechanism at a base coordinate system of the robot arm, and according to the target position and/or pose information, controlling a movement of each of the joints of the robot arm to allow the power mechanism to reach a corresponding target position and/or pose.

In one embodiment, as shown inFIG.10, specifically before step S11, the control method includes:

Step S111, based on each of installation states inside the power mechanism, determining respectively the load parameters of the power mechanism at corresponding installation states and different internal position states.

In particular, in a same installation state, the more position states selected, the more accurate the determined load parameters. In particular, the operating arm31on each of the power units222is installed by operators, and a position change of the power unit222relative to the rail221can be carried out by controlling the power unit222slidable on the rail221, for example, the control device can generate a few position parameters for driving the power unit222slide on the rail221to corresponding positions.

Step112, according to the determined load parameter of the power mechanism, in the respective installation state, with the different internal position states, establishing a parameter calculation model corresponding to each of the installation states of the power mechanism.

Furthermore, as shown inFIG.11, in step S11, the control method includes:

Step113, acquiring the installation state information and the position state information inside of the power mechanism.

Step114, according to the installation state information of the power mechanism, selecting a parameter calculating model.

Step115, combining the selected parameter calculating model and the position state information of the power mechanism to calculate the load parameters of the power mechanism at corresponding states.

In step S113, in order to acquire the installation state information of whether or not each of the power units222has installed the operating arm31, a detecting mechanism can be provided on each of the power units222, which is used to detect whether or not the power unit222has installed the operating arm31, the detecting mechanism can be selected from a proximity sensor, a pressure sensor, a photoelectric sensor, and the like.

In step S113, in order to acquire type information of the operation arm31installed on each of the power units222in the installation state information, in one aspect, a memory having the type information of the corresponding operating arm31can be configured on each of the operating arms31, and in the power mechanism22, for example, the power unit222is provided with a data interface connected to the control device in the surgical robot, when the operating arm31is attached to the power unit222, the data interface is connected to the memory, and then the type information of the operating arm31is read through the data interface. On the other hand, an electronic tag that has the type information of the corresponding operating arm31can be configured on each of the operating arms31, and correspondingly in the power mechanism22is provided with a reader connected to the control device in the surgical robot, when the operating arm31is installed on the power unit222, the reader inducts the electronic tag and read the type information of the operating arm31therefrom, the electronic tag may be an RFID electronic tag, an NFC electronic tag, etc., accordingly the reader can be RFID reader or NFC reader. In particular, the type of operation arm31is mainly related to the type of end instrument34thereon, or it may be related to the type of structure of the operating arm31itself. The end instrument34includes an image end instrument34A and an operating end instrument34B as shown inFIG.2. Generally, the image end instruments34ahave fewer types, and the operation end instruments34B can have various types.

In step S113, in order to acquire the position information of each power unit222with respect to the respective rail221in the position state information, a position sensor can be set in driving portions for driving the power unit222slide relative to the rail221to detect the position information. The driving portions typically include a motor and an encoder, and the encoder can be used as a position sensor to obtain the above-described position information.

Specifically, the number of parameter calculation models mentioned in step S112is consistent with the number of the internal installation states of the power mechanism22. It is assumed that the number of the power units222of the power mechanism22is N, and it is assumed that the number of operating arms31is m, which may have the following number of installation states depending on the setting condition.

Example 1, if only whether each of the power units222has installed the operating arm31is considered. At this situation, a total 2n installation states can be obtained, and accordingly there are 2n parameter calculation models.

Example 2, if each of the power units222has installed the operation arm31, and the types of the operating arms31are considered. At this situation, a total (m+1)ninstallation states can be obtained, and accordingly there are (m+1)nparameter calculation models.

In particular, in the example 2:

If only different power units222are allowed to install different types of operating arms31, when M≥N, a total of 1+Cm1An1+Cm2An2+L CmnAnninstallation states can be obtained, and accordingly there are 1+Cm1An1+Cm2An2+L CmnAnnparameter calculation models; When m<n, a total of 1+Cm1An1+Cm2An2+L CmmAnminstallation states can be obtained, and accordingly there are 1+Cm1An1+Cm2An2+L CmmAnmparameter calculation models.

If only one power unit222is allowed to install an operating arm31having an image end instrument34A, a total of n×mn−1installation states can be obtained, and accordingly there are n×mn−1parameter calculation models; furthermore, under this condition, if one of the power units222at a specific position is allowed to install the operating arm31having the image end instrument34A, and if it has been installed, a total of mn−1installation states can be obtained, and accordingly there are mn−1parameter calculation models.

By limiting different conditions, the number of identifiable installation states can be reduced, accordingly thereby reducing the number of parameter calculation models.

The establishment of the parameter calculation model referred to in step S112includes the following steps:

Defining a mathematical formula of the parameter calculation model;

Sampling and calculating input and output data for the parameter calculation model; and

According to the above sampled and calculated input and output data of the parameter calculation model, estimating model parameters, thereby determining the parameter calculation model.

In particular, this parameter calculation model may be in the form of MISO (Multi-input single output) or MIMO (multi-input multi-output) form, which can be determined according to the coupling states of the model parameters of selected load mechanics model. In addition, a learning model can be defined, corresponding to different installation states, by using machine learning and using as more the input and output data associated with the sampling parameter calculation model to obtain the parameter calculation model. This parameter calculation model can be linear or non-linear, which can be determined by preliminary mechanics analysis or test data. If it is linear, a minimum multiplier or greatly likelihood, etc. is used to determine the model parameters of the parameter calculation model; if it is non-linear, a nonlinear optimization calculation method such as Newton Gaussi can determine the model parameters of the parameter calculation model.

Step S112, the parameter calculation model and the corresponding installation state information thereof can be associated with the data structure such as a parameter dictionary, a list, and the like to facilitate selection in subsequent step S114.

The load parameters of the load mechanics model for determining a six-dimensional force/torque vector of the load described in the above step S12can be calculated based on the parameter calculation model. This parameter calculation model exemplary can be represented as Pload=f(S′P′), wherein Ploadrefers to the load parameters, S′ refers to the position state information of each power unit relative to the respective rail, and P′ refers to the model parameters of the parameter calculation model.

Exemplary, assuming Pload=k1S′1+k2S′2+ . . . +knS′n+kn+1, n refers to the number of power units222, and P′ refers to the model parameters of the parameter calculation model, that is k1˜kn+1, S′1˜S′n, respectively presents the position state information of each power unit222relative to the rail221, wherein Kn+1refers to a zero state parameter of the parameter calculation model, and K1˜Kn+1all are obtained by detecting (such as calibration and/or identification).

The above load mechanics model exemplarily represented by Fm=f(S,Pload), wherein Fmrefers to the six-dimensional force/torque vector of the load, and S represents the position state information of each joint in the robot arm.

The position state information of each of the joints in the robot arm21can be acquired by a position sensor disposed at each joint, and the position sensor can also be an encoder of a driving portion (i.e., a motor having an encoder) which is configured for driving the joints to move.

The above step S15can be obtained according to the following formula:
Fe=Fs−Fm−F0

Ferefers to a six-dimensional force/torque vector of an external force, Fsrefers to a total six-dimensional force/torque vector, Fmrefers to a six-dimensional force/torque vector of a load, F0refers to a zero-biased six-dimensional force/torque vector. Wherein, the Fecalculation needs Fs, Fmand F0calculation performed under the same reference coordinate system, which is usually calculated directly under the sensor coordinate system of the six-dimensional sensor.

As shown inFIG.12, in step S16, the control method includes:

Step S161, analyzing the six-dimensional force/torque vector of the external force to be incremental position and/or pose information of the power mechanism at the base coordinate system of the robot arm.

Step S162, acquiring the position information of each joint assembly of the robot arm.

In the embodiment illustrated inFIGS.1and13, the robot arm21has 5 degrees of freedom, and can be collected such a group of position information (d1, θ2, θ3, θ4, θ5) by each of the position sensors.

Step S163, according to the position information of each joint assembly, calculating current position and/or pose information of the power mechanism at the base coordinate system of the robot arm.

In particular, the current position and/or pose information of the power mechanism at the base coordinate system of the robot arm actually refers to current position and/or pose information of a tool coordinate system of the robot arm at the base coordinate system, which usually can be calculated in conjunction with forward kinematics. Establish a kinematics model of the fixed point (i.e., the C point, the origin of the tool coordinate system of the robot arm21is at the fixed point) of the robot arm21to the base of the robot arm21, output model conversion matrix0CT of the C point to the base. The calculation method is0CT=01T12T34T4CT.

Step S164, based on the current position and/or pose information and the incremental position and/or pose information of the power mechanism at the base coordinate system of the robot arm, calculating the target position and/or pose information of the power mechanism at the base coordinate system of the robot arm.

In particular, according to the model conversion matrix0CT of the C point to the base, the position and/or pose information of the C point at the fixed coordinate system is acquired. It is assumed that the C point position is unchanged, rotate the coordinate system of the C point, to reach the position and/or pose described by the model conversion matrix to obtain a rotary axis angle [θx0, θy0, θz0], as shown inFIG.14. Wherein θx0refers to a rolling angle, θy0refers to a yaw angle, θz0refers to a pitch angle, and in the robotic arm21shown inFIGS.1and13, lacking the freedom of the rolling angle results in θx0unadjustable.

Step S165, according to the target position and/or pose information, calculating the target position and/or pose information of each joint assembly in the robot arm.

The above step is typically calculated in combination with inverse kinematics.

Step S166, according to the target position and/or pose information of each joint assembly, controlling the joint assembly in the robot arm to linkedly move to allow the power mechanism to move to a target position and/or pose.

This step can use CSP (period synchronization location) mode and combined with PID adjustment to control the joint assembly of the robot arm21linkedly move.

In this embodiment, in step S16of analyzing the six-dimensional force/torque vector to obtain the target position and/or pose information of the power mechanism at the base coordinate system of the robot arm, an input operating command associated with task degrees of freedom of the power mechanism can be acquired, and combined with the task degrees of freedom to analyze the six-dimensional force/torque vector of the external force to obtain the target position and/or pose information of the power mechanism at the base coordinate system of the robot arm.

In particular, the operating command includes a first operating command and the second operating command. The first operating command is associated with a case that the task degrees of freedom are completely matched with effective degrees of freedom of the robot arm21, and the acquired target position and/or pose information analyzed by the first operating command can freely drag the power mechanism22. The second operating command is associated with a case that the task degrees of freedom are not completely matched with the effective degrees of freedom of the robot arm21, but are included in the effective degrees of freedom of the robot arm21, the acquired target position and/or pose information analyzed by the second operating command can drag the power mechanism22within a predetermined degree of freedom. Furthermore, the second operating command is associated with a case of the task degrees of freedom of the power mechanism22being selected from effective degrees of freedom which is within the effective degrees of freedom of the robot arm21and associated with pose degrees of freedom thereof.

Specifically, the task degrees of freedom of the power mechanism22can be understood to be allowable degrees of freedom of the power mechanism22in the Cartesian space, which is at most 6 degrees of freedom. The power mechanism22has effective degrees of freedom in the Cartesian space, and the effective degrees of freedom of the power mechanism22is associated with the configuration (i.e., structural features) of the robot arm21, the effective degrees of freedom of the power mechanism22can be understood to be achievable effective degrees of freedom of the power mechanism22in Cartesian space, which is at most 6 degrees of freedom. The task degrees of freedom of the power mechanism22is allowable movement degrees of freedom.

The six-dimensional force/torque vector of the external force can be analyzed according to the task degrees of freedom (configuration information) in step S16, and then the analyzed six-dimensional force/torque vector of the external force can be mapped to the incremental position and/or pose information of the power mechanism. For example, the task degrees of freedom allows [x, y, z] degrees of freedom in [x, y, z, α, β, γ] position and/or pose information, thus in analyzing the six-dimensional force/torque of external force, only the six-dimensional force/torque vectors of the external force corresponding to the [x, y, z] three degrees of freedom are analyzed, and the six-dimensional force/torque vectors of the external force corresponding to the [x, y, z] three degrees of freedom are mapped to the incremental position and/or pose information of the power mechanism22.

Of course, it is also possible to completely analyze the six-dimensional force/torque vector of the external force, and then according to the task degrees of freedom of freedom, map the analyzed six-dimensional force/torque vector of the external force to be the incremental position and/or pose information of the power mechanism22. For example, the task degrees of freedom also allows the [x, y, z] degrees of freedom in the [x, y, z, α, β, γ] position and/or pose information, thus in analyzing the six-dimensional force/torque of the external force, the six-dimensional force/torque vectors of the external force corresponding to the [x, y, z, α, β, γ] six degrees of freedom are all analyzed, and then the six-dimensional force/torque vectors of the external force corresponding to the [x, y, z] degrees of freedom are mapped to the incremental position and/or pose information of the power mechanism22.

For example, in the robot arm21shown inFIG.13, the effective degrees of freedom information of the robot arm21includes [x, y, z, α, β], which is caused by the joint assemblies210to214, and do not include degrees of freedom in rolling angle γ.

If the configuration information of the task degrees of freedom of the power mechanism22is [x, y, z, α, β], accordingly the configuration information of the task degrees of freedom of the power mechanism22is completely matched with the effective degrees of freedom information of the robot arm21, in this situation, the power mechanism22is in free control, and it is possible to control the power mechanism22to be moved to accommodate the operating chamber arrangement, which corresponds to the case associated with the first operating command.

When the configuration information of the task degrees of freedom of the power mechanism22is [x, y, z, α] or [x, y, z], etc., the configuration information of the task degrees of freedom of the power mechanism22is included in the effective degrees of freedom of the robot arm21, but is not completely matched, thus in controlling the power mechanism22, only the [x, y, z, α] or [x, y, z] degrees of freedom can be adjusted, in this situation, the power mechanism22is constrained control, and the power mechanism22can be controlled within a predetermine range.

In particular, if the configuration information of the task degrees of freedom of the power mechanism22only includes [α, β], this belongs to the RCM constraint control of constraint controls, that is, moving around the remote moving center (i.e., the fixed point), only the yaw angle and the pitch angle can be adjusted, which can meet the fine tuning during the surgical process, which corresponds to the case associated with the second operation command above.

Of course, when the effective degrees of freedom information of the robot arm21includes [x, y, z, α, β, γ], by a configuration of the degrees of freedom of the power mechanism22, the RCM constraint control can include adjustment of only the yaw angle, only the pitch angle, only the rolling angle, both the yaw angle and the pitch angle, both the yaw angle and the rolling angle, both the pitch angle and the rolling angle, and all of the yaw angle, the pitch angle and the rolling angle.

In step S16, specifically using the stiffness matrix, the six-dimensional force/torque vector of the external force can be analyzed to obtain the target position and/or pose information of the power mechanism at the base coordinate system of the robot arm.

In particular, the stiffness matrix is used to realize the conversion of the force information to the position and/or pose information, which is typically a matrix associated with the vector dimension of task degrees of freedom and external force. Exemplary, assuming that the configuration information of the task degrees of freedom of the power mechanism22describes a (1≤a≤6) degrees of freedom motion, and at the same time assumes that the vector dimension of the external force is b (1≤b≤6), the stiffness matrix is described as a matrix of a×b (row and column). Different stiffness matrices typically have different control parameters, which can be determined by finite experiments or computer auto-calculations.

The control parameter of the stiffness matrix can be set to be adjustable, to realize the linear or index enlarge or reduce of the external force information to the position and/or pose information according to need. Exemplary, an input device connected to the control device can be provided for inputting a control information for adjusting the control parameters of the stiffness matrix, wherein the control information is typically an input physical parameter, and the specific adjustment process can be achieved through the following steps:

Obtaining physical parameters.

In particular, the physical parameters may be discrete, or may be continuous, determined according to the characteristics of the input device itself, for example an input device such as a gear or button usually input discrete physical parameters, and input device types of stepless knob or touch screens usually input continuous physical parameters.

Combining with a parameter adjustment model and the physical parameters to adjust parameters in the stiffness matrix.

In an example, corresponding to discrete physical parameters, the parameter adjustment model can be a control parameter dictionary. This parameter dictionary stores multiple sets of control parameters, which one-to-one corresponds to a series of discrete physical parameters generated by the input device. In this situation, when the stiffness matrix is required to be controlled, by the mapping relationship between the physical parameters and the control parameters in the parameter dictionary, using the corresponding control parameter to adjust the stiffness matrix, thereby making it more adaptable for the operator's drag habits of the robotic arms and improve user experience.

In an example, corresponding to the continuous physical parameters, the parameter adjustment model can be a parameter calculation model. This parameter calculation model is a determined mathematical formula, a continuous physical parameter generated by the input device is configured as an independent variable in controlling the parameter computing model, and the control parameter is a dependent variable of the parameter calculation model and changed with the physical parameters input to the parameter calculation model. In this situation, when it is required to control the stiffness matrix, since the physical parameter and the control parameter have a relationship between the independent variable and dependent variable in controlling the parameter calculation model, the control parameter is calculated according to the physical parameters to adjust the stiffness matrix. In this embodiment, the parameter calculation model can be designed as a polynomial model, preferably a quintic polynomial model, because the quintic polynomial model has the incremental curve consistent in the slope direction, especially the trajectory of the quintic polynomial model is more flat at beginning section and end section, thus it is facilitated to smoothly deal with the external force.

The above parameter adjustment model can include the above both models to accommodate any control requirements; or may be taken from one of the above models, to accommodate a specific control requirement. The parameter adjustment model can be selected according to the type of the input device, and the control parameters can be acquired in conjunction with the physical parameters input by the input device.

In one embodiment, if the configuration information of the task degrees of the power mechanism22is partially included in the effective degrees of freedom information of the robot arm21, a preferred option is prompting the configuration error, and another option is only allowing part of the degrees of freedom of the effective degrees of freedom of the robot arm21being adjustable. Take the robot arm21shown inFIG.13as an example, and if the configuration information of the task degrees of freedom of the power mechanism22is [y, z, α, γ, γ] or [x, y, z, α, β, γ], on one hand, it can be prompted configuration error, and on the other hand allowing degrees of freedom adjustable in [y, z, α, β] or [x, y, z, α, β]. This can be configured according to actual needs.

The surgical robot can have another hardware configuration, mainly reflected in the number of six-dimensional sensor installation. In this embodiment, a six-dimensional sensor can be provided between two or more adjacent links including the power mechanism as one link, for example, as shown inFIG.15, the same, the hollow circle “◯” refers to the joint that does not have the six-dimensional sensor, and the solid round “●” refers to the joint that has installed the six-dimensional sensor. Through such hardware configurations, the operator can drag the links having the six-dimensional sensor other than the power mechanism, to achieve the corresponding control objects, especially for use in the case that there are redundant degrees of freedom of the robot arm. According to this hardware configuration, a control method of a robot arm in another surgical robot is provided, as shown inFIG.19, the control method includes:

Step S21, obtaining a group of load parameters under each of six-dimensional sensors.

In particular, the group of load parameters includes load parameters of each link located at a distal end of the respective six-dimensional sensor. The load parameters include quality parameters and centroid parameters. It is worth noting that the load parameters of other links other than the power mechanism22can be obtained by measurement, and the load parameters of the power mechanism22can be obtained from steps S111to S115described in the foregoing embodiment, and will not be repeated herein.

Step S22, according to the group of load parameters of each of the six-dimensional sensors, determining a load mechanics model under a six-dimensional sensor coordinate system, and corresponding to a load caused by the respective link at the distal end of the six-dimensional sensor.

In particular, the expression form of load mechanics model under different six-dimensional sensor coordinate systems can be the same, but the expression content can be different. If the load mechanics model of the power mechanism under the six-dimensional sensor coordinate system is Fm=f (S, PLoad); the load mechanics model of a link adjacent to the power mechanism under the six-dimensional force sensor coordinate system is Fm=f (S, PLoad, P1), P1refers to the load parameters of the adjacent link, and P1is fixed while PLoadmay be changable; accordingly the load mechanics model in each six-dimensional sensor coordinate system can be obtained.

Step S23, obtaining position information of each joint in the robot arm, combined with the load mechanics model under each six-dimensional sensor, respectively calculating a six-dimensional force/torque vector of the load under each six-dimensional sensor.

Step S24, acquiring a total six-dimensional force/torque vector of the six-dimensional force sensor, acquiring a zero-biased six-dimensional force/torque vector of the six-dimensional sensor, combining with the six-dimensional force/torque of the load under each of the six-dimensional force sensors to calculate a six-dimensional force/torque vector of an external force applied on each of the six-dimensional sensors.

Step S25, according to the calculated six-dimensional force/torque vector of the external force applied on each of six-dimensional force sensors and a six-dimensional force/torque vector of the external force applied on an adjacent six-dimensional force sensor, determining a force applied link, and calculating a six-dimensional force/torque vector of the external force applied to the force applied link.

In particular, if the total six-dimensional force/torque vector at the corresponding six-dimensional sensor coordinate system is equal to the sum of the six-dimensional force/torque vector of the load at a distal end of the corresponding six-dimensional sensor, the zero-biased six-dimensional force/torque vector and the six-dimensional force/torque vector of an external force acted on an adjacent six-dimensional sensor, in this situation it can be determined that the link adjacent to the six-dimensional sensor does not have a force applied thereon. If the total six-dimensional force/torque vector in the corresponding six-dimensional sensor coordinate system is greater than the sum of the six-dimensional force/torque vector of the load at a distal end of the corresponding six-dimensional sensor, the zero-biased six-dimensional force/torque vector and the six-dimensional force/torque vector of an external force acted on an adjacent six-dimensional sensor, in this situation it can be determined that the link adjacent to the six-dimensional sensor have a force applied thereon, and the difference between the total six-dimensional force/torque vector and the sum of the above six-dimensional force/torque vectors is the six-dimensional force/torque vector of the external force applied on the force applied link. It is worth noting that “acted on” is different from “applied on”, and the “acted on” includes “applied on”.

In step S26, analyzing the six-dimensional force/torque vector of the external force applied to the link to obtain target position and/or pose information of the link at a corresponding coordinate system, and according to the target position and/or pose information, controlling the robot arm to perform a corresponding movement.

In this embodiment, the power mechanism can also be configured to configure the task degrees of freedom, and in step S26, combined with the target degrees of freedom of the power mechanism to analyze the six-dimensional/torque vector of the external force applied to the force applied link to obtain the target position and/or pose of the force applied link at the corresponding coordinate system. For this, it is no longer repeated.

Under the configuration of this example, in the links of the robotic arm21, each of which has the six-dimensional sensor, one link can be the force applied link, or two or more of the links can be the force applied links:

In an embodiment, when the number of the force applied link is one, if the force applied link is a power mechanism, as shown inFIG.15, in step S26, the control method includes:

Combining with the target degrees of freedom of the power mechanism to analyze the six-dimensional force/torque vector of the external force of the power mechanism, obtaining the target position and/or pose information of the power mechanism at the base coordinate system of the robot arm.

According to the target position and/or pose information to control the links of the robot arm to move, thereby the power mechanism reaching the corresponding target position and/or pose.

This situation is consistent with the example shown inFIG.8, such as under the configuration ofFIG.8, the power mechanism22can also be freely dragged or be dragged in RCM constraint control, that is, no matter the input is the first operating command or the second operating command, can be controlled according to the above steps.

In an embodiment, when the force applied link is only one, if the force applied link is not the power mechanism and the acquired is the first operating command input, as shown inFIG.16, in the above step S26, including:

Analyzing the six-dimensional force/torque vector of the external force applied on the link to obtain the target position and/or pose information of the force applied link at the base coordinate system of the robot arm.

According to the target position and/or pose information, controlling a movement of the force applied link of the robot arm and each link at a proximal end of the force applied link to allow the force applied link to move to the corresponding target position and/or pose.

In this situation, the robot arm21is divided into two segments, and controls each of the links at the proximal end of the force applied link to reach the corresponding target position and/or pose, and each of the links at the distal end of the force applied link move with the force applied link.

In an embodiment, when the number of the force applied link is one, if the force applied link is not the power mechanism and the acquired input is the aforementioned second operating command, combined withFIGS.16and20, in the above step S26, the control method includes:

Step S2611, analyzing the six-dimensional force/torque vector of the external force applied on the link to obtain the target and/or pose information of the force applied link at the base coordinate system of the robot arm, and obtaining the current position and/or pose information of the power mechanism at the base coordinate system of the robotic arm.

Step S2612, under a condition of the force applied link reaching the target position and/or pose corresponding to the target position and/or pose information of the force applied link at the base coordinate system of the robot arm, converting the current position and/or pose information of the power mechanism at the base coordinate system of the robot arm to obtain the target position and/or pose information of the power mechanism at the coordinate system of the force applied link.

In step S2612, the target position and/or pose information of the power mechanism at the coordinate system of the force applied link can be calculated using the formulaTCT=BTT−1·BCT. In particular,TCT refers to the target position and/or pose information of the power mechanism at the coordinate system of the force applied link,BTT−1refers to the target position and/or pose information of the force applied link at the base coordinate system of the robot arm,BCT refers to the current position and/or pose information of the force applied link at the base coordinate system of the robot arm, B refers to the base coordinate system of the robot arm, and T refers to the coordinate system of the force applied link.

Step S2613, according to the target position and/or pose information of the force applied link, controlling a movement of the force applied link and each link at a proximal end of the force applied link to allow the force applied link to reach the corresponding target position and/or pose, and according to the target position and/or pose information of the power mechanism, controlling a movement of the power mechanism and the links between the power mechanism and the force applied link to allow the power mechanism to maintain the current position or pose.

In this situation, the robot arm21is divided into two segments, controls each of the links at the proximal end of the force applied link to reach the corresponding target position and/or pose, and controls each of the links at the distal ends of the force applied link to move to allow the power mechanism22maintain its current position and/or pose. The usage scenario can be a certain movement of a section of the robot arm to achieve avoidance, while ensuring the safety of the surgical procedure.

Prior to the above step S2613, the effectiveness of the target position and/or pose information of the power mechanism at the coordinate system of the force applied link can be determined, and step S2613is performed if it is effective. For example, the step of determining the effectiveness can be performed in this way: the target position and/or pose information is analyzed into a target motion state parameter (including positional parameters, speed parameters, and acceleration parameters) of each of the joints of a section of the robot arm, then the target motion parameter is compared with the motion state threshold of the corresponding joint, if each target motion parameter is within the corresponding motion state threshold, it is determined effective, otherwise, it is determined ineffective.

In an embodiment, when the force applied link is more than two, if the acquired input is the above described first operating command, as shown inFIG.21, in the above step S26, the control method includes:

Step S2621, analyzing the six-dimensional force/torque vector of the external force applied on the force applied link closest to the proximal end of the robot arm to obtain the target position and/or pose information of the force applied link at the base coordinate system of the robot arm.

Step S2622, analyzing the six-dimensional force/torque vector of the external force of the farer away from the proximal end of the robot arm between each two adjacent force applied links to obtain the target position and/or pose information of the force applied link at the coordinate system of adjacent force link.

Step S2623, according to the target position and/or pose information of the force applied link closest to the proximal end of the robot arm, controlling the force applied link closest to the proximal end of the robot arm and each link at a proximal end of the force applied link to move, to allow the force applied link closest to the proximal end of the robot arm reach the corresponding target position and/or pose; and according to the target position and/or pose information of the force applied link farer away from the proximal end of the robot arm between each two adjacent links, controlling a movement of the force applied link farer away from the proximal end of the robot arm and each link between the force applied link and an adjacent force applied link, to allow the force applied link farer away from the proximal end of the robot arm reach to a corresponding target position and/or pose.

In this case, if the number of force applied links is d, it is equivalent to divide the robot arm21into d+1 segments, except that the force applied link closest to the proximal end of the robot arm moves according to the corresponding target position and/or pose information to reach the target position and/or pose at the base coordinate system of the robot arm, the remaining force applied links move according to the respective target position and/or pose information, thereby the corresponding force applied link move relative to the coordinate system of the force applied link adjacent to a proximal end thereof to reach corresponding target position and/or pose. If a distal end of the force applied link at the remote end of the robot arm21also has links, these links can be moved with the force applied link at the remote end of the robot arm21.

Steps S2621to S2623are suitable for any ofFIGS.17and18, i.e., regardless of whether or not the force applied link includes the power mechanism22.

In an embodiment, if the number of the force applied links is more than two, if the acquired input is the above described second operating command, and the force applied links do not include the power mechanism, in connection withFIGS.17and22, the above steps S26, including:

Step S2631, analyzing the six-dimensional force/torque vector of the external force of the force applied link closest to the proximal end of the robot arm, to obtain the target position and/or pose information of the force applied link at the base coordinate system of the robot arm.

Step S2632, analyzing the six-dimensional force/torque vector of the external force of the force applied link farer away from the proximal end of the robot arm between each two adjacent force applied links to obtain a target position and/or pose information of the force applied link at the coordinate system of adjacent force applied link.

Step S2633, acquiring the current position and/or pose information of the power mechanism information at the base system of the robot arm, and under the condition of the force applied link reaching the target position and/or pose corresponding to the target position and/or pose information at the corresponding coordinate system, converting the current position and/or pose information of the power mechanism at the base coordinate system of the robot arm to obtain the target position and/or pose information of the power mechanism at the coordinate system of adjacent force applied link.

Step S2633can also be converted using the formulas and principles in step S2612.

Step S2634, according to the target position and/or pose information of the force applied link closest to the proximal end of the robotic arm, controlling a movement of the force applied link closest to the proximal end of the robot arm and each link at a proximal end of the force applied link, to allow the force applied link closest to the proximal end of the robot arm reach the corresponding target position and/or pose. According to the target position and/or pose information of the force applied link farer away from the proximal end of the robot arm, controlling a movement of the force applied link farer away from the proximal end of the robotic arm, and each of the links between the force applied link and an adjacent force applied link, to allow the force applied link farer away from the proximal end of the robotic arm reach the corresponding target position and/or pose. According to the target and/or pose information of the power mechanism, controlling a movement of the power mechanism and the respective links between the power mechanism and the adjacent force applied link, to allow the power mechanism maintain the current position and/or pose.

In this situation, the robot arm21is also equivalent to a multi-segment, each of force applied links moves to the target position and/or pose relative to the respective coordinate system, while maintaining the power mechanism22the current position and/or pose to ensure the operation of the operation safety.

In one embodiment, if the number of the force applied links is more than two or more, if the previously described second operating command is acquired, the power mechanism is included in the force applied links, in conjunction withFIGS.18and23, the above step S26including:

Step S2641, analyzing the six-dimensional force/torque vector of the external force applied on the link absolutely proximity to the proximal end of the robot arm to obtain a target position and/or pose information of the force applied link at the base coordinate system of the robotic arm.

Step S2642, analyzing the six-dimensional force/torque vector of the external force of the power mechanism to obtain the target position and/or pose information of the power mechanism at the base coordinate system of the robot arm.

Step S2643, analyzing the six-dimensional force/torque vector of the external force applied on the link relative away from the proximal end of the robot arm in adjacent links other than the power mechanism, to obtain the target position and/or pose information of the force applied link at the coordinate system of adjacent force applied link.

Step S2644, under the condition of the force applied link adjacent to the power mechanism reaching the target position and/or pose corresponding to the target position and/or pose information at the corresponding coordinate system, converting the target position and/or pose information of the power mechanism at the base coordinate system of the robotic arm to obtain the target position and/or pose information of the power mechanism at the coordinate system of adjacent force applied link.

Step S2644may also be converted using the formula and principle as in step S262.

Step S2645, determining whether the target position and/or pose information of the power mechanism at the coordinate system of adjacent force applied link is effective.

If it is effective, the process proceeds to step S2646. If it is ineffective, the process proceeds to step S2647.

Step S2646, according to the target position and/or pose information of the force applied link closest to the proximal end of the robot arm, controlling a movement of the force applied link closest to the proximal end of the robotic arm and each link at a proximal end of the force applied link, to allow the force applied link closest to the proximal end of the robot arm reach the corresponding target position and/or or pose. According to the target position and/or pose information of the force applied link farer from the proximal end of the robotic arm, controlling a movement of the force applied link farer away from the proximal end of the robot arm and each link between the force applied link and an adjacent force applied link, to allow the force applied link farer away from the proximal end of the robot arm to reach the corresponding target position and/or pose. According to the target position and/or pose information of the power mechanism, controlling a movement of the power mechanism and each link between the power mechanism and adjacent force applied link, to allow the power mechanism maintaining its current position while adjusting pose thereof.

Step S2647, combining with the task degrees of freedom of the power mechanism to analyze the six-dimensional force/torque vector of the external force of the power mechanism to obtain the target position and/or pose information of the power mechanism at the base coordinate system of the robot arm, and according to the target position and/or pose information of the power mechanism, controlling a movement of the links of the robot arm, to allow the power mechanism maintain the position thereof and while adjusting a pose thereof.

In this situation, that is when the target position and/or pose information determined in step S2645is effective, the robot arm21performs segmentation control and realizes the RCM constraint drag control of the power mechanism22; when it is ineffective, the robot arm21is performed overall control to realize the RCM constraint drag control.

In the above embodiment, the validity of the acquired target position and/or pose information can be determined, the determination process and the principle are the same or similar to the judgment procedure between step S2612and step S2613, and enter the corresponding subsequent steps implement the corresponding control, and will not be described here.

The above embodiment is suitable for controlling a robot arm in a surgical robot as shown inFIG.1. The type of surgical robot includes a robot arm21and an operating arm31having an end instrument34at the distal end of the robot arm21, which has several degrees of freedom.

The above embodiments are also applicable to control of end instruments in the surgical robot type shown inFIG.24. This type of surgical robot includes a main arm32′, one or more adjustment arms30′ mounted at a remote end of the main arm32′, and one or more operating arms31′ each having an end instrument, with the main arm32′, the adjustment arm30′ and the operating arm31′ each have several degrees of freedom. As shown inFIG.24, in the surgical robot, there may be four adjustment arms30′, and each of the adjusting arms30′ can have only one operating arm31′. According to the actual use scenario, the three-section arm structure of the surgical robot as shown inFIG.24can be configured to be the two-section arm structure of the surgical robot type shown inFIG.1to achieve control. In an embodiment, in the case where the concept of the operating arms in the two types of surgical robots is consistent, for example, according to the configuration, each adjustment arm30′ in the surgical robot of the type shown inFIG.24can be regarded as the robot arm21in the surgical robot type shown inFIG.1to perform control; another example, according to the configuration, any of the adjustment arms30′ and the main arm32′ as an entire in the surgical robot type shown inFIG.24can be regarded to be the robot arm21in the surgical robot type shown inFIG.1to achieve control. In an embodiment, the main arm32′ in the surgical robot type shown inFIG.24can be considered as a robot arm21in the surgical robot type shown inFIG.24. The adjustment arm30′ and its corresponding operating arm31′ as an entire in the surgical robot type shown inFIG.24can be regarded to be the operating arm31in the surgical robot type shown inFIG.1to achieve control.

In an embodiment, the control method of the above-mentioned surgical robot is generally configured to be implemented in the control device of the surgical robot, the control device includes a memory and more than one processor, the memory is configured for storing a computer program, a processor is configured for loading and executing the computer program to carry out the control method described in any of the above embodiments.

In an embodiment, a computer readable storage medium is provided, and a computer readable storage medium stores a computer program, which is configured to perform the control method steps described in any of the above-described embodiments.

The various technical features of the above-described embodiments may be combined in any combination, so that the description is concise, and all possible combinations of the various technical features in the above-described embodiments are described. However, as long as the combination of these technical features does not conflict, it is to be understood that the scope of the present specification is not to be taken in a limiting sense.

The above-described embodiments have only expressed several embodiments of the present application, which are described in more detail and detail, but are not therefore to be construed as limiting the scope of the present application. It should be noted that variations and modifications may be made to one of ordinary skill in the art without departing from the spirit of the present application, all of which fall within the scope of the present application. Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.