Robot system and control method
By controlling the overall movement mode and relative posture relationship of multiple sports arms in the robot system, the stability and collision risks of surgical robot sports arms in pre-, intra- and post-operative adjustments are solved, and efficient and safe sports arms and surgical instrument posture adjustments are achieved.
Patent Information
- Application Number
- CN202110866477.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-08-19
- Filing Date
- 2021-07-29
- Publication Date
- 2025-07-11
- Estimated Expiration
- 2041-07-29
AI Technical Summary
Existing surgical robotic motor arms have stability problems and collision risks during pre-, during and after-operative adjustments, especially in single-hole surgery, which are complex and time-consuming.
By determining the overall movement mode and the end relative posture relationship of the multiple movement arms in the robot system, the movement of the movement arm is controlled to keep the end relative posture unchanged, and the control device is used to coordinate the movement path of the multiple movement arms to avoid interference and achieve precise adjustment.
The preoperative preparation process is optimized, the degree of automation and adjustment efficiency is improved, the difficulty of user operation is reduced, and the rapid and accurate movement of multiple sports arms and the posture adjustment of surgical instruments is achieved.
Smart Images

Figure CN114073587B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of robots, and in particular, to a robot system and a control method thereof. Background Art
[0002] Laparoscopic surgery is a widely used surgical form with advantages such as small incisions. In recent years, surgical robots have been used to perform surgical operations with higher stability and accuracy by using robotic arms. During the operation, the robotic arm inserts surgical instruments into the surgical site inside the body (such as a human or an animal) through trocars to perform the surgical operation.
[0003] Currently, the surgical procedures implemented using surgical robots mainly include preoperative positioning, intraoperative operation, and postoperative arrangement. Before the operation, usually a surgical assistant (such as an assistant doctor or a nurse) needs to adjust the robotic arm to a suitable pose according to the surgical type and pose, fixedly connect the robotic arm to the trocar, and then set surgical instruments at the end of the robotic arm so that the surgical instruments can enter the body through the trocar. The movement of the robotic arm can be manually adjusted by the surgical assistant from its distal end (i.e., the end close to the patient) or can be controlled by the surgical assistant or doctor by operating a control device at the proximal end of the robotic arm (i.e., the end close to the doctor's control end). However, due to the possible large size and weight of the robotic arm, there are stability problems and collision risks, especially in single-port surgeries. Therefore, the adjustment of the robotic arm is complex and time-consuming. Similarly, during and after the operation, the above problems exist in the adjustment of the robotic arm. Summary of the Invention
[0004] In some embodiments, the present disclosure provides a control method for a robot system, the robot system including a plurality of robotic arms, the plurality of robotic arms including a first robotic arm and a second robotic arm, the control method including: determining a movement mode of a first end of the first robotic arm and a second end of the second robotic arm of the robot system, the movement mode including an overall movement of the first end of the first robotic arm and the second end of the second robotic arm; determining a first movement path of the first robotic arm and a second movement path of the second robotic arm based on the movement mode and an end relative pose relationship between the first end of the first robotic arm and the second end of the second robotic arm; and controlling the first robotic arm and the second robotic arm to move based on the first movement path and the second movement path so that the first end of the first robotic arm and the second end of the second robotic arm move in the movement mode and maintain the end relative pose relationship unchanged during the movement.
[0005] In some embodiments, the present disclosure provides a robot system, including: a plurality of moving arms, the plurality of moving arms including: a first moving arm; a second moving arm; a control device configured to: determine a movement mode of a first end of the first moving arm and a second end of the second moving arm of the robot system, the movement mode including an overall movement of the first end of the first moving arm and the second end of the second moving arm; determine a first movement path of the first moving arm and a second movement path of the second moving arm based on the movement mode and a relative end pose relationship between the first end of the first moving arm and the second end of the second moving arm; and control the first moving arm and the second moving arm to move based on the first movement path and the second movement path, so that the first end of the first moving arm and the second end of the second moving arm move in the movement mode and maintain the relative end pose relationship unchanged during the movement.
[0006] In some embodiments, the present disclosure provides a computer-readable storage medium including one or more instructions, which are executed by a processor to execute a control method of a robot system; the robot system includes a plurality of moving arms, the plurality of moving arms including a first moving arm and a second moving arm, and the control method includes: determining a movement mode of a first end of the first moving arm and a second end of the second moving arm of the robot system, the movement mode including an overall movement of the first end of the first moving arm and the second end of the second moving arm; determining a first movement path of the first moving arm and a second movement path of the second moving arm based on the movement mode and a relative end pose relationship between the first end of the first moving arm and the second end of the second moving arm; and controlling the first moving arm and the second moving arm to move based on the first movement path and the second movement path, so that the first end of the first moving arm and the second end of the second moving arm move in the movement mode and maintain the relative end pose relationship unchanged during the movement. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] In order to clearly illustrate the technical solutions in the embodiments of the present disclosure, the following will briefly introduce the drawings required for the description of the embodiments of the present disclosure. The drawings described below only show some embodiments of the present disclosure. For those of ordinary skill in the art, other embodiments can be obtained according to the content of the embodiments of the present disclosure and these drawings without creative efforts.
[0008] Figure 1 shows a block diagram of a robot system according to some embodiments of the present disclosure;
[0009] Figure 2 shows a perspective structural schematic diagram of a robot system according to some embodiments of the present disclosure;
[0010] Figure 3 Shows a schematic structural diagram of a moving arm of a robot system according to some embodiments of the present disclosure;
[0011] Figure 4 Shows a partial cross-sectional view of an auxiliary connection device according to some embodiments of the present disclosure;
[0012] Figure 5 Shows a flowchart of a control method for a robot system according to some embodiments of the present disclosure;
[0013] Figure 6 Shows another structural block diagram of a robot system according to some embodiments of the present disclosure;
[0014] Figure 7 Shows a flowchart of a method for determining a movement path of a moving arm according to some embodiments of the present disclosure;
[0015] Figure 8 Shows a flowchart of a method for determining a target pose of a moving arm according to some embodiments of the present disclosure;
[0016] Figure 9 Shows a flowchart of a method for controlling a movement path of a moving arm according to some embodiments of the present disclosure;
[0017] Figure 10 Shows a flowchart of a method for determining a joint step length of each joint included in a moving arm according to some embodiments of the present disclosure;
[0018] Figure 11 Shows a schematic diagram of the architecture of a control device according to some embodiments of the present disclosure. Detailed implementation manners
[0019] To make the technical problems solved by the present disclosure, the technical solutions adopted, and the achieved technical effects clearer, the technical solutions of the embodiments of the present disclosure will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only exemplary embodiments of the present disclosure, rather than all embodiments.
[0020] In the description of the present disclosure, it should be noted that the orientation or positional relationship indicated by terms such as "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc. is based on the orientation or positional relationship shown in the drawings. It is only for the convenience of describing the present disclosure and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus should not be construed as a limitation to the present disclosure. In addition, the terms "first" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance. In the description of the present disclosure, it should be noted that unless otherwise clearly specified and limited, the terms "mounted", "connected", "coupled" should be understood in a broad sense. For example, it can be a fixed connection or a detachable connection; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium; it can be the communication inside two elements. For those of ordinary skill in the art, the specific meanings of the above terms in the present disclosure can be understood according to specific circumstances. In the present disclosure, in a surgical robot system, the end close to the user (such as a doctor) is defined as the proximal end, the proximal part, the rear end, or the rear part, and the end close to the surgical patient is defined as the distal end, the distal part, the front end, or the front part. Those skilled in the art can understand that the embodiments of the present disclosure can be used in medical devices or surgical robots, and can also be used in other non-medical devices.
[0021] In the present disclosure, the term "position" refers to the positioning of an object or a part of an object in three-dimensional space (for example, three translational degrees of freedom can be described by changes in Cartesian X, Y, and Z coordinates, such as three translational degrees of freedom along the Cartesian X-axis, Y-axis, and Z-axis respectively). In the present disclosure, the term "orientation" refers to the rotational setting of an object or a part of an object (for example, three rotational degrees of freedom, and these three rotational degrees of freedom can be described by roll, pitch, and yaw). In the present disclosure, the term "pose" refers to the combination of the position and orientation of an object or a part of an object, and can be described by six parameters among the six degrees of freedom mentioned above, for example. In the present disclosure, the pose of a robotic arm or a part thereof refers to the pose of the coordinate system defined by the robotic arm or a part thereof relative to the coordinate system defined by the bracket or base where the robotic arm is located or the world coordinate system. In the present disclosure, the position of a robotic arm or a part thereof can be represented by a set of joint values of multiple joints of the robotic arm (for example, a one-dimensional matrix composed of these joint values). In the present disclosure, the joint value of a joint can include the angle rotated by the corresponding joint relative to the corresponding joint axis or the distance moved relative to the initial position. In the present disclosure, the movement path of a robotic arm refers to the path that the robotic arm passes through when moving from one position or orientation to another position or orientation.
[0022] Figure 1 The structural block diagram of a robot system 10 according to some embodiments of the present disclosure is shown. As Figure 1As shown, the robotic system 10 may include a control device 11 and a plurality of robotic arms connected to the control device 11. In some embodiments, as Figure 1 shown, the plurality of robotic arms may include a first robotic arm 12a and a second robotic arm 12b. The control device 11 may be configured to control the first robotic arm 12a and the second robotic arm 12b. For example, the control device 11 may adjust the movement, pose, and coordination of the first robotic arm 12a and the second robotic arm 12b. In some embodiments, the first robotic arm 12a and the second robotic arm 12b may respectively include a first end arm 128a and a second end arm 128b at their ends or distal ends. The control device 11 may control the movement of the first robotic arm 12a or the second robotic arm 12b to move the first end arm 128a or the second end arm 128b to a desired position and orientation.
[0023] For the sake of brief description in this disclosure, in Figure 1 and the subsequent drawings, the exemplary robotic system 10 is shown as including two robotic arms. However, those skilled in the art should understand that the robotic system 10 may also include three, four, or more robotic arms. The robotic system 10 may include a surgical robotic system, such as a laparoscopic surgical robotic system. It should be understood that the robotic system 10 may also include dedicated or general robotic systems for other fields (e.g., manufacturing, machinery, etc.).
[0024] Figure 2 FIG. shows a perspective structural view of a robotic system 10 according to some embodiments of the present disclosure. As Figure 2 shown, the robotic system 10 is a surgical robotic system and may include a surgical trolley 13 and a first robotic arm 12a and a second robotic arm 12b disposed on the surgical trolley 13. In some embodiments, the surgical trolley 13 may include a base 131 and a cross beam 132. In some embodiments, the first robotic arm 12a and the second robotic arm 12b may be movably disposed on the cross beam 132. It should be understood that the plurality of robotic arms of the robotic system 10 may also be disposed on a plurality of surgical trolleys. For example, each robotic arm may be correspondingly disposed on one surgical trolley. Or one robotic arm is disposed on one surgical trolley, and the remaining plurality of robotic arms are disposed on another surgical trolley. These embodiments still fall within the protection scope of the present disclosure.
[0025] In some embodiments, each robotic arm (e.g., the first robotic arm 12a and the second robotic arm 12b) of the robotic system 10 may include multiple linkages and a plurality of joints. In some embodiments, each joint of each robotic arm may include a motor for driving the corresponding joint to move, thereby driving the corresponding linkage to rotate.
[0026] Figure 3Shows a schematic structural diagram of the robotic arm of the robotic system 10 according to some embodiments of the present disclosure. As Figure 3 shown, the second robotic arm 12b (or the first robotic arm 12a) may include joints 1201b - 1208b and linkages 121b - 128b. The proximal end of the linkage 121b (the end close to the cross beam 132 in the present disclosure is defined as the proximal end of the robotic arm) is connected to the cross beam 132, and the linkages 121b - 127b are connected in series in sequence. Among them, the joint 1201b may be located at the connection between the cross beam 132 and the proximal end of the linkage 121b, the joint 1202b may be located at the connection between the linkage 121b and the second linkage 122b, the joint 1203b may be located at the connection between the linkage 122b and the linkage 123b, the joint 1204b may be located at the connection between the linkage 123b and the linkage 124b, the joint 1205b may be located at the connection between the linkage 124b and the linkage 125b, the joint 1206b may be located at the connection between the linkage 125b and the linkage 126b, the joint 1207b may be located at the connection between the linkage 126b and the linkage 127b, and the joint 1208b may be located at the connection between the linkage 127b and the linkage 128b. The linkage 128b, as the most distal linkage of the second robotic arm 12b, forms the second end arm 128b of the second robotic arm 12b. The determination and representation of the position and posture of the end arm require the joint decision of each of the foregoing joints. It should be understood that the linkages 126b, 127b, and 128b together constitute the remote center of motion mechanism (RCM mechanism) of the second robotic arm 12b.
[0027] In some embodiments, the robotic system 10 may include one or more surgical instruments. As Figure 3 shown, the surgical instrument 14a may be mounted on the first end arm 128a of the first robotic arm 12a, and the surgical instrument 14b may be mounted on the second end arm 128b of the second robotic arm 12b. It should be understood that the surgical instruments 14a and 14b may include, but are not limited to, clamps for performing surgery, electrocautery, or image capture devices (such as endoscopic tools) for lighting and imaging, and so on. A part of the surgical instruments 14a and 14b (such as the arm body and the end instrument provided at the distal end of the arm body) can enter a certain body part of a human or an animal to perform medical operations, such as surgery.
[0028] In some embodiments, as Figure 2 shown, the robotic system 10 may further include an auxiliary connection device 15, such as a sheath. The auxiliary connection device 15 can be mounted on the human body or animal body (such as in an incision or opening), a part of which can be positioned at the body part of the human or animal where surgery needs to be performed, and the other part is used for detachably connecting with the robotic arm (such as with the first and second end arms 128a, 128b of the first and second robotic arms 12a, 12b) to better serve the surgery.
[0029] Figure 4 shows a partial cross-sectional view of the auxiliary connection device 15 according to some embodiments of the present disclosure. In some embodiments, as Figure 4 shown, the auxiliary connection device 15 may include a sheath 151 and a sheath 152. In some embodiments, the auxiliary connection device 15 may further include at least two connection portions (such as connection portions 153 and 154). The connection portion may include, but is not limited to, a clamp, a latching structure, an adhesive structure, a plug-in structure, a suction structure. The connection portions 153 and 154 may be fixedly disposed on the sheaths 151 and 152 respectively.
[0030] In some embodiments, each moving arm (such as the first and second moving arms 12a, 12b) may include a connecting member (such as Figure 2 the connecting members 1281a and 1281b shown) that cooperates with the connection portions (such as connection portions 153 and 154). The auxiliary connection device 15 may be detachably and fixedly connected to the connecting members 1281a and 1281b of the first and second moving arms 12a and 12b through the connection portions 153 and 154 respectively. In some embodiments, as Figure 2 shown, the connecting members 1281a and 1281b may be fixedly disposed on the first end arm 128a and the second end arm 128b respectively. The connecting members 1281a and 1281b are respectively connected to the connection portion 153 and the connection portion 154, so that the auxiliary connection device 15 is detachably and fixedly connected to the first and second moving arms 12a and 12b.
[0031] It should be understood that the spatial positions and the attitude directions in the rotational coordinates of the first end arm 128a, the second end arm 128b, the connecting members 1281a and 1281b can be represented by coordinate vectors. In some embodiments, based on the current surgical type or the configuration of the auxiliary connection device, for example, the configuration of the auxiliary connection device can be determined based on the current surgical type. Based on the configuration of the auxiliary connection device, the shape and the relative position relationship between the multiple sheaths of the auxiliary connection device are determined to determine the relative pose of the ends of the multiple moving arms. It should be understood that the end of the moving arm may include the end arm of the moving arm, the remote center of motion mechanism (RCM mechanism) of the moving arm, or the portion on the moving arm for connecting with the auxiliary connection device. The pose of the end of the moving arm may include the pose of the end arm of the moving arm, the pose of the remote center of motion mechanism (RCM mechanism) of the moving arm, or the pose of the portion on the moving arm for connecting with the auxiliary connection device.
[0032] For example, based on the shapes and relative positional relationships of the sheaths 151 and 152, the relative end pose relationship between the first moving arm 12a and the second moving arm 12b can be determined. The relative end pose relationship between the first moving arm 12a and the second moving arm 12b can indicate the positional relationship and the attitude relationship of the end of the first moving arm 12a relative to the end of the second moving arm 12b in the world space coordinate system. It should be understood that the relative end pose relationship can include, for example, the relative pose relationship formed between the first end arm 128a of the first moving arm 12a and the second end arm 128b of the second moving arm 12b. Alternatively, the relative end pose relationship can also include the relative pose relationship formed between the surgical instruments 14a and 14b mounted on the first end arm 128a and the second end arm 128b. Alternatively, the relative end pose relationship can also include the relative pose relationship formed between the connecting members 1281a and 1281b fixedly arranged on the first end arm 128a and the second end arm 128b. In some embodiments, the relative end pose relationship can be stored in an associated relative pose model and can be used to calculate the target pose of the end of the first moving arm 12a or the second moving arm 12b. Since the connecting members 1281a and 1281b are respectively fixed on the first end arm 128a and the second end arm 128b, when the first end arm 128a and the second end arm 128b conform to the relative end pose relationship, the connecting members 1281a and 1281b can be respectively connected to the connecting portions 153 and 154.
[0033] It should be understood that when the first moving arm 12a moves to the target pose, the target pose of the surgical instrument 14a mounted at the end of the first moving arm 12a in the world coordinates can be determined, and when the second moving arm 12b moves to the target pose, the target pose of the surgical instrument 14b mounted at the end of the second moving arm 12b in the world coordinates can be determined. The attitude of the moving arm or a part thereof can be achieved through joints. For example, in some embodiments, the target spatial positions of the fixed parts on each moving arm (such as the first and second end arms 128a, 128b, and the connecting members 1281a, 1281b fixedly arranged on the first and second moving arms 12a, 12b, and the surgical instruments 14a, 14b mounted on the first and second moving arms 12a, 12b) can be achieved by some of the multiple joints included in the corresponding moving arm. The target spatial attitudes of the fixed parts on each moving arm can be achieved by some other joints included in the corresponding moving arm. In some embodiments, the multiple joints for achieving the target spatial attitude of the end of the moving arm (such as the first and second end arms 128a, 128b) are closer to the distal end of the moving arm than the multiple joints for achieving the target spatial position of the moving arm. It should be understood that the multiple joints for achieving the target spatial attitude and the target spatial position of the end of the moving arm can also include other setting manners, which can be specifically set according to the usage requirements.
[0034] In some embodiments, after the surgical instrument is installed on the distal arm, the surgical instruments 14a and 14b can smoothly pass through the sheaths 151 and 152 of the auxiliary connection device 15 at a predetermined angle respectively, and move along the sheaths 151 and 152 into the corresponding positions in the human body where surgery is required. In some embodiments, the sheaths 151 and 152 of the auxiliary connection device 15 can be flexible, and the parts of the surgical instruments 14a and 14b extending through the auxiliary connection device 15 are also flexible, which can facilitate the connection parts 153 and 154 on the auxiliary connection device 15 to be connected to the connection parts 1281a and 1281b on each moving arm when the first distal arm 128a and the second distal arm 128b generally conform to the relative distal pose relationship. The flexible part of the auxiliary connection device 15 can ensure that each surgical instrument can still smoothly pass through the sheath into the surgical area when there is a certain error in the pose of the distal arm.
[0035] It should be understood that the auxiliary connection device 15 shown as Figure 4 is merely exemplary. In some embodiments, the robotic system 10 can include three, four, or more moving arms, and the auxiliary connection device 15 can include three, four, or more sheaths, and each sheath includes a corresponding connection part for connecting each sheath to each moving arm and constraining the relative distal pose relationship between multiple distal arms.
[0036] The present disclosure provides a control method that can be used for a robotic system. Figure 5 FIG. shows a flowchart of a control method 500 for a robotic system (such as the robotic system 10) according to some embodiments of the present disclosure. Figure 6 FIG. shows another simplified block diagram of the robotic system 10 according to some embodiments of the present disclosure. As Figure 5 and Figure 6 shown, the method 500 can be executed by a control device (such as the control device 11) of the robotic system 10. The control device 11 can be configured on a computing device. The method 500 can be implemented by software, firmware, and / or hardware.
[0037] As Figure 5As shown, in step 501, determine the movement modes of the first end of the first robotic arm and the second end of the second robotic arm of the robotic system. In some embodiments, the movement modes may include the overall movement of the end of the first robotic arm 12a (e.g., the first end arm 128a) and the end of the second robotic arm 12b (e.g., the second end arm 128b). For example, the overall movement may include, but is not limited to, overall translation, overall rotation, or a combination of overall translation and overall rotation. It should be understood that the overall rotation of the end may include pitch rotation or horizontal rotation about a predetermined point. In some embodiments, the predetermined point may be the connection point of the auxiliary connection device 15 to the abdominal access port, or the predetermined point may include a point on the extension line of the end of the robotic arm, such as the RCM (Remote Center of Motion) point.
[0038] In some embodiments, the control device 11 may determine the movement modes of the end of the first robotic arm 12a and the end of the second robotic arm 12b based on an operation command. In some embodiments, the control device 11 may include an input device 113. The input device 113 is configured to be used to receive an operation command from the user or receive an operation instruction from the user, so that the control device 11 can obtain a specific operation command based on the operation instruction. For example, in the case where the movement mode is overall translation, the operation command may be a command for the first end arm 128a of the first robotic arm 12a and the second end arm 128b of the second robotic arm 12b to translate together as a whole. In the case where the movement mode is overall rotation, the operation command may be a command for the first end arm 128a of the first robotic arm 12a and the second end arm 128b of the second robotic arm 12b to rotate together as a whole about a predetermined point or a straight line. For example, the first end arm 128a of the first robotic arm 12a and the second end arm 128b of the second robotic arm 12b rotate together as a whole about a predetermined point in pitch or rotate together about the longitudinal axis. In the case where the movement mode is a combination of overall translation and overall rotation, the operation command may be a command for the first end arm 128a of the first robotic arm 12a and the second end arm 128b of the second robotic arm 12b to translate and rotate together as a whole.
[0039] In step 503, optionally, method 500 may include determining the end relative pose relationship between the first end of the first robotic arm and the second end of the second robotic arm. In some embodiments, based on the current surgical type or the configuration of the auxiliary connection device (e.g., the auxiliary connection device 15), the end relative pose relationship between the end of the first robotic arm 12a (e.g., the first end arm 128a) and the end of the second robotic arm 12b (e.g., the second end arm 128b) may be determined. In some embodiments, the end relative pose relationship between the first end of the first robotic arm and the second end of the second robotic arm may be predetermined or known.
[0040] In some embodiments, the current surgical type may be the type of surgery to be performed currently. For example, the surgical type may include, but is not limited to, general surgery, thoracic surgery, urology surgery, gynecological surgery, etc. In some embodiments, the auxiliary connection device may include a sheath. The configuration of the sheath may include, for example, the specifications and models of the sheath under different surgical procedures (the specifications and models may include, but are not limited to, for example, the length, radial dimension, aperture size, number of sheath tubes, relative positional relationship of multiple sheath tubes, etc.). The relative pose relationship of each of the multiple sheaths with at least one moving arm is associated, and the relative pose relationship of sheaths with different configurations with each moving arm may be different. In some embodiments, the input device 113 may be used to receive setting information from the user (such as setting information of the current surgical type, the configuration of the auxiliary connection device, the relative pose model, etc.).
[0041] In some embodiments, the end relative pose relationship may include the relative positional relationship and relative attitude relationship between the first end arm 128a of the first moving arm 12a and the second end arm 128b of the second moving arm 12b. In some embodiments, the surgical instruments 14a, 14b may be mounted on the first and second end arms 128a, 128b. The end relative pose relationship may include the relative positional relationship and relative attitude relationship of the surgical instruments 14a, 14b. It should be understood that the relative pose relationship between the surgical instruments 14a, 14b may be determined by the relative pose relationship of the first end arm 128a and the second end arm 128b. In some embodiments, the end relative pose relationship may further include the relative positional relationship and relative attitude relationship of the connectors 1281a and 1281b. The connectors 1281a and 1281b are respectively fixedly arranged on the first end arm 128a and the second end arm 128b. In this way, the relative pose relationship of the surgical instruments 14a, 14b may also be determined by the relative pose relationship of the connectors 1281a and 1281b. It should be understood that the relative pose relationship between surgical instruments, the relative pose relationship between end arms, and the relative pose relationship between connectors may be mutually converted.
[0042] In some embodiments, the end relative pose relationship between the end of the first moving arm 12a and the end of the second moving arm 12b may also be determined based on the current pose of the end of the first moving arm 12a and the current pose of the end of the second moving arm 12b. For example, during the operation, the end relative pose relationship may be determined based on the current pose of the end arm 128a of the first moving arm 12a and the current pose of the end arm 128b of the second moving arm 12b.
[0043] In some embodiments, as Figure 6 shown, the control device 11 may be communicatively connected to each moving arm (for example, the first moving arm and the second moving arms 12a, 12b). In some embodiments, asFigure 6 As shown, the first moving arm 12a may further include one or more sensors 129a. The motors of joints 1201 - 1208a may be respectively coupled to a plurality of sensors 129a. The second moving arm 12b may further include one or more sensors 129b. The motors of joints 1201 - 1208b may be respectively coupled to a plurality of sensors 129b. Figure 6 Exemplarily, one sensor is shown. It should be understood that the illustrated sensors 129a and 129b may represent a plurality of sensors. The sensors 129a and 129b may include, but are not limited to, for example, encoders or potentiometers. The sensors may be used to obtain data of a plurality of joints of the corresponding moving arm to measure the joint values of the corresponding joints. In some embodiments, the sensors may include fiber optic sensors extending on the moving arm for obtaining the pose of the moving arm.
[0044] In some embodiments, as Figure 6 shown, the control device 11 may include one or more processors 111 and a memory 112. The processor 111 may be communicatively connected to a plurality of sensors 129a of the first moving arm 12a to obtain the current joint values of the respective joints 1201 - 1208a of the first moving arm 12a through the plurality of sensors 129a. The processor 111 may be communicatively connected to a plurality of sensors 129b of the second moving arm 12b to obtain the current joint values of the respective joints 1201 - 1208b of the second moving arm 12b through the plurality of sensors 129b.
[0045] In some embodiments, the processor 111 may solve the current joint values of the respective joints based on the forward kinematic models of the first and second moving arms 12a and 12b to obtain the current poses of the first moving arm 12a and the second moving arm 12b (for example, the end of the first moving arm and the end of the second moving arm). It should be understood that the current pose may include the current attitude and the current position, and the current pose may be the position and attitude at any moment. The forward kinematic model of the first moving arm 12a may be preset and stored in the memory 112. The forward kinematic model of the moving arm may obtain the pose of any position or any part of the moving arm (for example, the first and second end arms 128a and 128b, and the poses of the connectors 1281a and 1281b fixedly arranged on the first and second moving arms 12a and 12b, and the surgical instruments 14a and 14b mounted on the first and second moving arms 12a and 12b) based on all known joint variables (such as joint values) of the moving arm.
[0046] In step 505, based on the movement mode and the relative end pose relationship, determine the first movement path of the first robotic arm and the second movement path of the second robotic arm. It should be understood that the movement path of the first robotic arm 12a can refer to the path that the first robotic arm 12a passes through when moving from one pose to another, and can be represented by changes in joint values of multiple joints (such as joints 1201 - 1208a) (for example, continuous changes in joint values, or one or more transition joint values). The movement path of the second robotic arm 12b can refer to the path that the second robotic arm 12b passes through when moving from one position to another, and can be represented by changes in joint values of multiple joints (such as joints 1201 - 1208b).
[0047] In step 507, control the first robotic arm and the second robotic arm to move based on the first movement path and the second movement path respectively, so that the ends of the first robotic arm and the second robotic arm move in the movement mode, and the relative end pose relationship remains unchanged during the movement.
[0048] In some embodiments, the method 500 can also determine whether an interference relationship will be formed between the first robotic arm 12a and the second robotic arm 12b based on the first movement path of the first robotic arm 12a and the second movement path of the second robotic arm 12b. In response to the fact that no interference relationship will be formed between the first robotic arm 12a and the second robotic arm 12b, execute step 507. And in response to the fact that an interference relationship will be formed between the first robotic arm 12a and the second robotic arm 12b, control the first robotic arm 12a and the second robotic arm 12b to stop moving or send an alarm message.
[0049] In some embodiments, the method 500 can include receiving an operation command. In some embodiments, the operation command includes, for example, moving the first robotic arm 12a and the second robotic arm 12b as a whole by a specific distance or rotating by a specific angle.
[0050] In some embodiments, during the process of performing steps 501 to 507, at least one of the surgical instruments (such as surgical instruments 14a and 14b) can be disposed at the ends of the corresponding robotic arms (such as the first end arm 128a of the first robotic arm and the second end arm 128b of the second robotic arm).
[0051] Figure 7 The flowchart of a method 700 for determining the movement path of a robotic arm according to some embodiments of the present disclosure is shown. In some embodiments, the method 700 can be used to implement as Figure 5In step 505 shown, based on the motion mode and the relative pose relationship of the end, the first motion path of the first motion arm and the second motion path of the second motion arm are determined. Method 700 can be executed by the control device (such as control device 11) of the robot system 10. The control device 11 can be configured on a computing device. Method 700 can be implemented by software, firmware, and / or hardware.
[0052] In step 701, based on the motion mode, the target pose of the first end of the first motion arm is determined. In some embodiments, the target pose of the first end can be determined based on an operation command received from the user. The operation command can include the target pose, the motion mode and amplitude, etc. In some embodiments, based on the current joint values of the respective joints of the first motion arm 12a, the forward kinematics model of the first motion arm 12a can be solved to obtain the current pose of the end of the first motion arm 12a (such as the first end arm 128a). The target pose of the first end of the first motion arm 12a can be determined based on the current pose of the end of the first motion arm 12a and the user operation command. For example, based on the current pose of the first end of the first motion arm and the motion mode (such as, moving left as a whole, rotating, etc.) and amplitude (such as, moving distance, rotation angle, etc.), the target pose can be determined.
[0053] In some embodiments, the target pose of the first end of the first motion arm 12a can include one of the following: the target position and target attitude of the first end arm 128a of the first motion arm 12a, the target position and target attitude of the remote center of motion mechanism (RCM mechanism) of the first motion arm 12a, the target position and target attitude of the end of the first motion arm 12a for connecting with the auxiliary connection device 15 (such as the connecting member 1281a).
[0054] In step 703, based on the motion mode, determine the target pose of the second end of the second robotic arm. In some embodiments, the target pose of the second end of the second robotic arm can be determined based on the overall motion mode, the target pose of the first end, and the relative end pose relationship. In some embodiments, the target pose of the end of the second robotic arm 12b can include one of the following: the target position and target attitude of the second end arm 128b of the second robotic arm 12b, the target position and target attitude of the remote center of motion mechanism (RCM mechanism) of the distal end of the second robotic arm 12a, the target position and target attitude of the end of the second robotic arm 12b for connecting to the auxiliary connecting device 15 (such as the connecting member 1281b). It should be understood that the target pose of the end of the second robotic arm 12b can be determined through the target pose of the end of the first robotic arm 12a and the relative end pose relationship. In some embodiments, when surgical instruments 14a and 14b are provided at the ends of the first robotic arm 12a and the second robotic arm 12b, the target poses of the surgical instruments 14a and 14b can be determined based on the target poses of the ends of the first robotic arm 12a and the second robotic arm 12b.
[0055] In some embodiments, method 700 may further include step 705. In step 705, based on the current pose of the first robotic arm and the target pose of the first end, determine the target pose of the first robotic arm, and based on the current pose of the second robotic arm and the target pose of the second end, determine the target pose of the second robotic arm. In some embodiments, the current joint values of the respective joints of the first robotic arm 12a can be obtained by sensors (such as sensor 129a) installed at the respective joints of the first robotic arm 12a, and the forward kinematic model of the first robotic arm 12a can be used for calculation to obtain the current pose of the first robotic arm 12a. The current joint values of the respective joints of the second robotic arm 12b can be obtained by sensors (such as sensor 129b) installed at the respective joints of the second robotic arm 12b, and the forward kinematic model of the second robotic arm 12b can be used for calculation to obtain the current pose of the second robotic arm 12b. It should be understood that the pose of the robotic arm can be represented by a set of joint values of the multiple joints included in the robotic arm. In some embodiments, the target pose of the robotic arm can be determined based on the current pose of the robotic arm and the target pose of the end by the method as Figure 8 shown.
[0056] In step 709, based on the current poses and target poses of the first robotic arm and the second robotic arm, determine the first motion path and the second motion path. In some embodiments, the first motion path of the first robotic arm 12a and the second motion path of the second robotic arm 12b can be determined based on the interpolation method, and the motion path can include at least one motion cycle. In some embodiments, the method as Figure 9The method shown plans the motion path of the moving arm from the initial pose to the target pose.
[0057] In some embodiments, method 700 may further include step 707. In step 707, it is determined whether an interference relationship will be formed between the first moving arm and the second moving arm. It should be understood that the interference relationship may include a collision between the first moving arm 12a and the second moving arm 12b. In response to the fact that no interference relationship will be formed between the first moving arm 12a and the second moving arm 12b, step 709 is executed.
[0058] In some embodiments, method 700 may further include step 711. In step 711, in response to the fact that an interference relationship will be formed between the first moving arm and the second moving arm, the first moving arm and the second moving arm are controlled to stop moving or an alarm message is sent.
[0059] In some embodiments, it may be determined whether an interference relationship will be formed between the first moving arm 12a and the second moving arm 12b based on a constraint relationship. Based on the satisfaction of the constraint relationship, it is determined that no interference relationship will occur between the first moving arm 12a and the second moving arm 12b. Based on the non - satisfaction of the constraint relationship, it is determined that an interference relationship will occur between the first moving arm 12a and the second moving arm 12b. It should be understood that the constraint relationship may be defined by an interference model.
[0060] In some embodiments, the constraint relationship may include at least one of the following relationships: the relative position order relationship between the first moving arm 12a and the second moving arm 21b conforms to a predetermined relative position order relationship, the distance between a predetermined point associated with the first moving arm 12a and a predetermined point associated with the second moving arm 12b is greater than a predetermined safety distance, the minimum distance between a preset line segment associated with the first moving arm 12a and a preset line segment associated with the second moving arm 12b is greater than a predetermined safety line segment distance, or the difference between the joint values of one or more joints of the first moving arm 12a and the joint values of the corresponding joints of the second moving arm 12b is greater than a predetermined safety value.
[0061] In some embodiments, the predetermined relative position order relationship may include, but is not limited to, sorting among multiple moving arms in a clockwise or counterclockwise order. The relative position order relationship among the multiple moving arms may be represented by the relative position order of the joints or linkages of the moving arms. For example, one or more joints of the first moving arm 12a close to the cross beam 132 (such as joints 1202a and / or 1203a) at the end position of each motion cycle and the corresponding one or more joints of the adjacent moving arm (such as the second moving arm 12b) close to the cross beam 132 (such as joints 1202b and / or 1203b) at the end position of each motion cycle have a relative position order that conforms to the clockwise or counterclockwise sorting, and it can be determined that the first moving arm 12a and the second moving arm 12b satisfy the constraint of the relative position order relationship. Conversely, it can be determined that the first moving arm 12a and the second moving arm 12b do not satisfy the predetermined relative position order, which may result in an interference relationship between the first moving arm 12a and the second moving arm 12b. In some embodiments, it can also be determined whether the relative position order relationship between the first moving arm 12a and the second moving arm 12b conforms to the predetermined relative position order relationship by judging whether the relative position order of the ends of one or more linkages of the first moving arm 12a (such as linkages 121a and / or 122a) and the corresponding linkages of the second moving arm 12b (such as linkages 121b and / or 122b) conforms to the predetermined relative position order relationship (such as clockwise or counterclockwise sorting).
[0062] In some embodiments, the relative position order relationship among the multiple moving arms can also be represented by the motion angles of the joints or linkages of the moving arms relative to the same reference direction. For example, based on the initial position order, it is determined that the rotation angle of the joint of the first moving arm 12a (such as joint 1201a) relative to the cross beam 132 is less than the rotation angle of the joint of the second moving arm 12b (such as joint 1201b) relative to the cross beam 132. In response to the rotation angle of joint 1201a relative to the cross beam 132 being less than the rotation angle of joint 1201b relative to the cross beam 132, it can be determined that the first moving arm 12a and the second moving arm 12b satisfy the constraint of the predetermined relative position order relationship. Conversely, it can be determined that the first moving arm 12a and the second moving arm 12b do not satisfy the predetermined relative position order, which may result in an interference relationship between the first moving arm 12a and the second moving arm 12b.
[0063] In some embodiments, the predetermined points associated with the moving arm may include fixed points on the link of the moving arm, joints of the moving arm, or other points related to the moving arm. For example, the predetermined point associated with the first moving arm 12a may be a predetermined joint of the first moving arm 12a (e.g., joint 1203a), and the predetermined point associated with the second moving arm 12b may be the corresponding joint of the second moving arm 12b (e.g., joint 1203b). In some embodiments, the distance between joint 1203a of the first moving arm 12a and joint 1203b of the second moving arm 12b may be determined based on the joint axis of joint 1203a of the first moving arm 12a and the joint axis of joint 1203b of the second moving arm 12b. In some embodiments, the predetermined point associated with the first moving arm 12a may be a fixed point on a predetermined link of the first moving arm 12a (e.g., link 121a), and the predetermined point associated with the second moving arm 12b may be a fixed point on the corresponding link (e.g., link 121b) or an adjacent link (e.g., 123b) of the second moving arm 12b. In some embodiments, the predetermined point associated with the first moving arm 12a may be a fixed point on a predetermined link in the first moving arm 12a (e.g., a remote center of motion mechanism, RCM mechanism), and the predetermined point associated with the second moving arm 12b may be the projection point of the axis of the link (e.g., link 124b) of the second moving arm 12b on the horizontal plane. For example, if the distance between the joint axes of joint 1203a and joint 1203b is greater than the safety distance, or the distance between the predetermined points on the first moving arm 12a and the second moving arm 12b is greater than the safety distance, it can be determined that the first moving arm 12a and the second moving arm 12b satisfy the constraint of the predetermined point safety distance relationship. Conversely, if the distance between the predetermined points is less than the safety distance, it is determined that interference may occur between the first moving arm 12a and the second moving arm 12b. It should be understood that the safety distance may be a pre-set distance, for example, it may include but is not limited to 135 mm. It should be understood that the safety distance may also be set based on the dimensions of the joints or links. The safety distances between the predetermined points corresponding to different joints or links may be different. It should be understood that the predetermined points associated with the first moving arm 12a and the second moving arm 12b may include but are not limited to the cases shown in the above embodiments.
[0064] In some embodiments, a predetermined line segment associated with a moving arm may include an edge or axis of a connecting rod of the moving arm, an articulation axis of the moving arm, or other line segments related to the moving arm. It should be understood that the minimum distance between two line segments is the smaller of the distance between the starting points of the two line segments and the distance between the ending points of the two line segments. For example, the predetermined line segment associated with the first moving arm 12a may be a predetermined connecting rod (such as connecting rod 121a) of the first moving arm 12b, and the predetermined line segment associated with the second moving arm 12b may be a predetermined connecting rod (such as connecting rod 122b) of the second moving arm 12b. In some embodiments, the predetermined line segment associated with the first moving arm 12a may be a predetermined connecting rod (such as connecting rod 125a) of the first moving arm 12a, and the predetermined line segment associated with the second moving arm 12b may be an edge of a connecting rod of the second moving arm 12b (such as the edge of the remote center of motion mechanism (RCM mechanism) close to connecting rod 125a, such as the edge of connecting rod 126a close to connecting rod 125a). In some embodiments, the predetermined line segment associated with the first moving arm 12a may be a line segment formed between the RCM point of the first moving arm 12a and a point on the extension line of a predetermined connecting rod (such as connecting rod 128a) of the first moving arm 12a, and the predetermined line segment associated with the second moving arm 12b may be an edge of a predetermined connecting rod (such as connecting rod 128b) of the second moving arm 12b close to the edge of the first moving arm 12a. In some embodiments, the predetermined line segment associated with the first moving arm 12a may be an edge (such as an edge close to the second moving arm 12b) of a predetermined connecting rod (such as connecting rod 124a) of the first moving arm 12a, and the predetermined line segment associated with the second moving arm 12b may be an edge (such as an edge close to the first moving arm 12a) of a corresponding connecting rod (such as connecting rod 124b) of the second moving arm 12b. In some embodiments, the predetermined line segment associated with the first moving arm 12a may be the articulation axis of the first moving arm 12a, and the predetermined line segment associated with the second moving arm 12b may be the articulation axis of the second moving arm 12b. In some embodiments, the predetermined line segment associated with the first moving arm 12a may be a line segment between the intersection point of the articulation axis (such as the axis of joint 1204a) of the first moving arm 12a and another articulation axis (such as the axis of joint 1205a) and the distal end of a connecting rod (such as connecting rod 125a) of the first moving arm 12a, and the predetermined line segment associated with the second moving arm 12b may be a line segment between the intersection point of the articulation axis (such as the axis of joint 1204b) of the second moving arm 12b and another articulation axis (such as the axis of joint 1205b) and the distal end of a connecting rod (such as connecting rod 125b) of the second moving arm 12b.For example, if the minimum distance between link 121a and link 122b is greater than the safety distance, or the minimum distance between link 125a and the edge of the RCM mechanism of the second moving arm 12b close to link 125a (e.g., the edge of link 126b close to link 125a) is greater than the safety distance, or the minimum distance between the line segment formed by the RCM point of the first moving arm 12a and the point on the extension line of link 128a and the edge of the first moving arm 12a close to link 128b is greater than the safety distance, or the minimum distance between the edge of link 124a close to the second moving arm 12b and the edge of link 124b close to the first moving arm 12a is greater than the safety distance, or the minimum distance between the line segment formed by the intersection of the axes of joints 1204a and 1205a and the distal end of link 125a and the line segment formed by the intersection of the axes of joints 1204b and 1205a and the distal end of link 125b is greater than the safety distance, it can be determined that the first moving arm 12a and the second moving arm 12b satisfy the constraint of the predetermined line segment safety distance relationship. Conversely, if the distance between the predetermined line segments is less than the safety distance, it is determined that an interference relationship may occur between the first moving arm 12a and the second moving arm 12b. It should be understood that the safety distance may include, for example, but not limited to, 135 mm, 120 mm, 60 mm, etc. It should be understood that the safety distance can also be set based on the dimensions of the joints or links. The safety distances between the corresponding predetermined points of different joints or links may be different. It should be understood that the predetermined line segments associated with the first moving arm 12a and the second moving arm 12b may include, for example, but not limited to, the situations shown in the above embodiments.
[0065] In some embodiments, if the difference between the joint values of one or more joints of the first moving arm 12a (e.g., the joint value of joint 1203a) and the joint values of the corresponding joints of the second moving arm 12b (e.g., the joint value of joint 1203b) is greater than a predetermined safety value (e.g., a safety angle), it can be determined that the first moving arm 12a and the second moving arm 12b satisfy the constraint of the joint safety angle relationship. Conversely, if the difference between the joint values is less than the predetermined safety value, it is determined that an interference relationship may occur between the first moving arm 12a and the second moving arm 12b.
[0066] It should be understood that when the robot system includes three, four or more robotic arms, the constraint relationship can also be used for interference judgment between adjacent robotic arms or between robotic arms with close positions. In some embodiments, the comparison objects of the constraint relationship can be structures that are prone to interference between adjacent robotic arms (for example, a predetermined line segment associated with the first robotic arm 12a and a predetermined line segment associated with the second robotic arm 12b, a predetermined point associated with the first robotic arm 12a and a predetermined point associated with the second robotic arm 12b, one or more joints of the first robotic arm 12a and the corresponding joints of the second robotic arm 12b). Structures that will surely not interfere between multiple robotic arms can be excluded from the comparison objects of the constraint relationship, and it is not necessary to compare all structures on adjacent robotic arms, which can reduce the computational amount of the comparison process of the constraint relationship and improve the working efficiency of the system.
[0067] Figure 8 FIG. 4 shows a flowchart of a method 800 for determining the target pose of a robotic arm according to some embodiments of the present disclosure. For example, Figure 7 in the step 705 shown, determining the first target pose of the first robotic arm based on the first current pose of the first robotic arm and the target pose of the first end, and determining the second target pose of the second robotic arm based on the second current pose of the second robotic arm and the target pose of the second end can be implemented by the method 800. The method 800 can be executed by a control device (such as the control device 11) of the robot system 10. The control device 11 can be configured on a computing device. The method 800 can be implemented by software, firmware, and / or hardware.
[0068] As Figure 8 shown, in step 801, the method 800 can include selecting one of multiple joints of the robotic arm as a characteristic joint, and setting a recommended target joint value for the characteristic joint. In some embodiments, taking the second robotic arm 12b as an example. One of the multiple joints of the second robotic arm 12b can be selected as the characteristic joint, and the recommended target joint value for the characteristic joint can be set in advance. In some embodiments, the characteristic joint of the robotic arm can be a joint that is prone to collide with an adjacent robotic arm among multiple joints. For example, the selected characteristic joint can be a joint that is easy to collide with the first robotic arm 12a among the multiple joints of the second robotic arm 12b, such as Figure 3 the joint 1205b or 1206b shown. It should be understood that when the robot system 10 includes multiple robotic arms (such as three or four robotic arms), the recommended target joint values of the characteristic joints of different robotic arms can be different. In some embodiments, the recommended target joint value can be predetermined.
[0069] In step 803, the inverse kinematic model of the robotic arm is solved based on the target pose of the end of the robotic arm and the recommended target joint values to obtain the other target joint values of the robotic arm. It should be understood that the other target joint values include the target joint values of all other joints of the robotic arm except the feature joint. For example, based on the target pose of the end arm 128b of the second robotic arm 12b and the recommended target joint values of the recommended joints (such as 1205b), the inverse kinematic model of the second robotic arm 12b is solved to obtain the other target joint values of the second robotic arm 12b.
[0070] In some embodiments, method 800 may further include step 805. In step 805, it is determined whether the other target joint values of the robotic arm are within the joint movement range of the corresponding joints. It should be understood that each joint of the robotic arm has a certain movement range, and the joint movement range of each joint is the range between the minimum limit joint value and the maximum limit joint value of the corresponding joint. The minimum limit joint value and the maximum limit joint value may not be within this range. For example, the movement range of some joints is between 18 degrees and 45 degrees, the movement range of some joints is between 45 degrees and 90 degrees, and the movement range of some joints is between -90 degrees and -45 degrees, and so on.
[0071] In some embodiments, method 800 may further include step 807. In step 807, the recommended target joint values are incremented or decremented by a predetermined adjustment value to adjust the recommended target joint values of the robotic arm, and method 800 returns to step 803. For example, in response to at least one of the other target joint values of the second robotic arm 12b not being within the joint movement range of the corresponding joints, the recommended target joint values are incremented or decremented by a predetermined adjustment value to adjust the recommended target joint values of the second robotic arm 12b. In some embodiments, the adjustment value may be set to, for example, 0.2° or 0.5° etc. to adjust the recommended target joint values. It should be understood that 0.2° or 0.5° are only examples, and the adjustment value may also be set to other values. The recommended target joint values are incremented or decremented by the predetermined adjustment value until there is a solution or the joint movement range of the feature joint (the joint limit values may not be included) is reached. For example, having a solution may mean that the recommended target joint values are within the joint movement range of the feature joint and all other target joint values are within the joint movement ranges of the corresponding joints.
[0072] In some embodiments, method 800 may further include the following steps: determining whether the adjusted recommended target joint values are within the joint movement range of the feature joint. In response to the adjusted recommended target joint values being within the joint movement range of the feature joint, the adjusted recommended target joint values are selected as the recommended target joint values, and the process returns to step 803.
[0073] In some embodiments, method 800 may further include step 811. In step 811, based on the recommended target joint values of the robotic arm and other target joint values, the target pose of the robotic arm is determined. For example, in response to all other target joint values of the second robotic arm 12b being within the joint movement range of the corresponding joints, based on the recommended target joint values and other target joint values of the second robotic arm 12b, the target pose of the second robotic arm 12b is determined. For example, a set of the recommended target joint values and other target joints may be selected as the target joint values of the second robotic arm 12b. By determining the target joint values of the second robotic arm 12b, the target pose of the second robotic arm 12b can be determined. It should be understood that the target pose of the first robotic arm 12a can also be determined by method 800.
[0074] In some embodiments, method 800 may further include step 809 between step 805 and step 811. In step 809, it is determined whether an interference relationship will be formed between multiple robotic arms. For example, in response to all other target joint values of the second robotic arm 12b being within the joint movement range of the corresponding joints, based on the constraint relationship, it is determined whether an interference relationship will be formed between the second robotic arm 12b and an adjacent robotic arm (such as the first robotic arm 12a). In some embodiments, in response to no interference relationship being formed between multiple robotic arms, step 811 is executed. For example, in response to no interference relationship being formed between the second robotic arm 12b and the first robotic arm 12a, based on the recommended target joint values and other target joint values of the second robotic arm 12b, the target pose of the second robotic arm 12b is determined. In some embodiments, in response to an interference relationship being formed between multiple robotic arms, method 800 proceeds to step 807. For example, in response to an interference relationship being formed between the second robotic arm 12b and the first robotic arm 12a, the recommended target joint values of the second robotic arm 12b are incremented or decremented by a predetermined adjustment value to adjust the recommended target joint values of the second robotic arm 12b.
[0075] In some embodiments, when there are multiple sets of solutions that satisfy the conditions for the recommended target joint values and other target joint values (such as multiple sets of target joint values of the second robotic arm 12b that satisfy the conditions), a set of solutions where each joint of the second robotic arm 12b is least likely to interfere with the first robotic arm 12a can be selected as the only solution output and used as the target joint values of the second robotic arm 12b.
[0076] Figure 9 The flowchart of method 900 for determining the movement path of a robotic arm from an initial pose to a target pose according to some embodiments of the present disclosure is shown. In some embodiments, method 900 can be used to implement as Figure 7Step 709 shown above. Method 900 can be executed by the control device (such as control device 11) of the robotic system 10. The control device 11 can be configured on a computing device. Method 900 can be implemented by software, firmware, and / or hardware.
[0077] As Figure 9 shown, in step 901, the joint step size of each joint included in the robotic arm is determined. In some embodiments, the process of controlling the robotic arm to move to the target pose may include one or more motion cycles, and each joint step size corresponds to the motion step size of the robotic arm in a single motion cycle. In one implementation, a single motion cycle can be 80 ms. In some embodiments, the joint step size of each joint can indicate the angle by which the corresponding joint can rotate around its joint axis in each motion cycle. For example, the motion step size corresponding to a single motion cycle for the robotic arm can be preset, where the motion step size of the robotic arm can be a set of joint step sizes of multiple joints of the robotic arm. In some embodiments, as Figure 10 shown, method 1000 can be used to determine the step size of each joint included in the robotic arm.
[0078] In step 903, based on the joint step size of each joint, the end pose of the robotic arm in each motion cycle is determined. In some embodiments, interpolation can be used to determine the end pose of each motion cycle among multiple motion cycles between the initial pose and the target pose of the robotic arm. For example, taking the first robotic arm 12a as an example, when the current motion cycle is the first motion cycle, the current pose of the first robotic arm 12a is the initial pose of the first robotic arm 12a. When the current motion cycle is not the first motion cycle, the current pose of the first robotic arm 12a is the end pose of the previous motion cycle. Based on the current pose of the first robotic arm 12a and the joint step size corresponding to each joint of the first robotic arm 12a, the end joint value of each joint of the first robotic arm 12a in the current cycle is determined.
[0079] In some embodiments, method 900 further includes step 905. In step 905, based on the end pose of each motion cycle, it is determined whether an interference relationship will be formed between the robotic arm and other robotic arms. For example, based on the end pose of the current cycle, it is determined whether an interference relationship (such as a collision) will be formed between the first robotic arm 12a and the second robotic arm 12b or other robotic arms (such as other robotic arms that are close in distance).
[0080] In step 907, based on the end pose of each motion cycle, the motion path of the robotic arm is determined. For example, in response to no interference relationship being formed between the robotic arm and other robotic arms during the process of the robotic arm moving from the initial pose to the target pose, the end pose of each motion cycle is determined as the motion path.
[0081] In step 909, an alarm message is issued. For example, in response to an interference relationship that may form between the moving arm and other moving arms, an alarm message can be issued. For example, an interference judgment is made on the first moving arm 12a and the second moving arm 12b, and in response to at least one of the first moving arm 12a and the second moving arm 12b colliding with other moving arms, an alarm message can be issued.
[0082] Figure 10 FIG. 1000 is a flowchart showing a method 1000 for determining the joint step size of each joint included in a moving arm according to some embodiments of the present disclosure. In some embodiments, the method 1000 can be used to implement steps such as Figure 9 shown in step 901 to determine the joint step size of each joint included in the moving arm. The method 1000 can be executed by a control device (such as the control device 11) of the robot system 10. The control device 11 can be configured on a computing device. The method 1000 can be implemented by software, firmware, and / or hardware.
[0083] As Figure 10 shown, in step 1001, based on the target pose of the moving arm, the difference between the target pose and the initial pose of the moving arm is determined. For example, the pose of the moving arm can be represented by a set of joint values of a plurality of joints included in the moving arm. The difference between the target pose and the initial pose of the moving arm can be represented by a set of differences between the joint values of the corresponding joints of the moving arm at the target pose and the corresponding joints at the initial pose.
[0084] In step 1003, based on the difference of each joint in the difference between the target pose and the initial pose of the moving arm and the joint step size extreme value of each joint, the target joint step number is determined. It should be understood that the joint step size can indicate the angle by which the joint can rotate around its joint axis in each movement cycle. The step size extreme value can refer to the maximum angle by which the joint can rotate around its joint axis in each movement cycle. For example, based on the difference of each joint in the difference between the target pose and the initial pose of the moving arm (such as the first moving arm 12a) and the step size extreme value of each joint, the number of steps of each joint of the first moving arm 12a is determined. The maximum number of steps among the number of steps of each joint can be selected as the target joint step number.
[0085] In step 1005, based on the difference of each joint in the difference between the target pose and the initial pose of the moving arm and the target joint step number, the joint step size of each joint of the moving arm is determined. For example, by dividing the difference of each joint in the difference between the target pose and the initial pose of the first moving arm 12a (or the second moving arm 12b) by the target joint step number, the joint step size of each joint of the first moving arm 12a (or the second moving arm 12b) is calculated.
[0086] Figure 11The schematic architecture diagram of the control device 11 included in the robot system 10 according to an embodiment of the present disclosure is shown. In some embodiments, as Figure 11 shown, the control device 11 may include an input device 113, an output device 114, one or more memories 112, one or more processors 111, and a communication interface 115. In some embodiments, the control device 11 may also not include an output device.
[0087] In some embodiments, the input device 113 may include, but is not limited to, devices such as buttons, keyboards, touchscreens, microphones, etc. The input device may be configured to directly receive operation commands from the user, or receive operation instructions from the user such that the control device can obtain specific operation commands based on the operation instructions. The operation commands may include, for example, a command for the second end arm 128b to move while maintaining the end relative pose relationship with the first end arm 128a unchanged. In some embodiments, the input device 113 may also be used to receive setting information from the user, such as setting information of the current surgical type, the configuration of the auxiliary connection device, the relative pose model, etc.
[0088] In some embodiments, the output device 114 may include, but is not limited to, a display, a speaker, and an indicator light, etc., which may be configured to indicate the states of the various components of the robot system 10, output alarm signals, and so on.
[0089] In some embodiments, computer programs executable on the processor 111 may be stored in the memory 112. The processor 111 implements the control method described in the above embodiments when executing the computer programs. The number of the memory 112 and the processor 111 may be one or more. The communication interface 115 is used for communication between the control device 11 (for example, the processor 111 of the control device 11) and external devices. In the present disclosure, the control device 11 may communicate with the motors disposed in the respective joints of each moving arm (for example, the first moving arm 12a, the second moving arm 12b) through the communication interface 115, so as to instruct each moving arm to move to the corresponding target position. The control device 11 may also communicate with the sensors at the respective joints of the moving arms through the communication interface 115 to receive the joint values of the respective joints of the moving arms. In an example of the present disclosure, the communication interface 115 may be a CAN bus communication interface, which enables the control device 11 to connect and communicate with the motors and sensors disposed in each joint through the CAN bus.
[0090] As Figure 11As shown, the input device 113, output device 114, memory 112, processor 111, and communication interface 115 can be interconnected via a bus to complete communication with each other. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Component (EISA) bus, or the like.
[0091] In some embodiments, the processor 111 can be various types of general-purpose processors such as a Central Processing Unit (CPU) or a Digital Signal Processor (DSP), which are not limited herein.
[0092] In some embodiments, the control device 11 can be integrated with the base 131 and located within the base 131 (e.g., below the base 131) to save space. However, in practical applications, the control device 11 can also be separately provided from the base 131, or part of the control device 11 can be integrated with the base 131 while the other part is separated from the base 131. Alternatively, the control device 11 can also be arranged in other ways to communicate with each robotic arm and control each robotic arm.
[0093] In some embodiments, the present disclosure provides a computer-readable storage medium, which may include at least one instruction, and the at least one instruction is executed by a processor to execute the control method in any of the above embodiments.
[0094] In some embodiments, the present disclosure provides a computer system, which may include a non-volatile storage medium and at least one processor. The non-volatile storage medium may include at least one instruction. The processor is configured to execute the at least one instruction to configure the processor to execute the control method in any of the above embodiments.
[0095] In some embodiments, a computer-readable storage medium can be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium can be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any combination of the above.
[0096] In some embodiments, the computer-readable storage medium may include, but is not limited to: portable computer disks, hard disks, read-only memory (ROM), random access memory (RAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid-state memory technologies, CD-ROM, digital versatile disk (DVD), HD-DVD, Blu-ray or other optical storage devices, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the required information and can be accessed by a computer, on which computer-executable instructions are stored. When the computer-executable instructions run on a machine (such as a computer device), the machine executes the control method of the present disclosure. It should be understood that the computer device may include a personal computer, a server, or a network device, etc.
[0097] Some embodiments of the present disclosure can help optimize the positioning of the robotic arms during preoperative preparation. The target pose of other robotic arms can be calculated based on the real-time pose of one robotic arm and the robotic arm can be moved to the target pose, so as to achieve a preoperative positioning process with a high degree of automation.
[0098] In some embodiments of the present disclosure, after the target pose of other robotic arms is calculated in real time, the robotic arm can also reach the target position accurately, quickly and safely in a specific planning manner, so as to achieve an efficient and safe preoperative preparation for surgery.
[0099] In some embodiments of the present disclosure, the ends of multiple robotic arms move in an integral manner, and the relative pose relationship of the ends of the multiple robotic arms can be maintained unchanged during the movement to quickly and accurately achieve the movement of the multiple robotic arms. During the operation, through the integral movement of the multiple robotic arms, the pose of the surgical instruments installed on the multiple robotic arms can also be quickly adjusted, which can reduce the operation difficulty of the user (such as a doctor) to improve the work efficiency during preoperative or intraoperative periods.
[0100] Note that the above are only exemplary embodiments of the present disclosure and the applied technical principles. Those skilled in the art will understand that the present disclosure is not limited to the specific embodiments here. Various obvious changes, re-adjustments and substitutions can be made by those skilled in the art without departing from the protection scope of the present disclosure. Therefore, although the present disclosure has been described in more detail through the above embodiments, the present disclosure is not limited to the above embodiments. Without departing from the concept of the present disclosure, more other equivalent embodiments can be included, and the scope of the present disclosure is determined by the scope of the appended claims.
Claims
1. A control method for a robotic system, the robotic system including a plurality of robotic arms, the plurality of robotic arms including a first robotic arm and a second robotic arm, the control method comprising: Determining the motion modes of a first end of the first robotic arm and a second end of the second robotic arm of the robotic system, the motion modes including the overall motion of the first end of the first robotic arm and the second end of the second robotic arm; Determining a first motion path of the first robotic arm and a second motion path of the second robotic arm based on the motion modes and the relative end pose relationship between the first end of the first robotic arm and the second end of the second robotic arm; And Controlling the motion of the first robotic arm and the second robotic arm based on the first motion path and the second motion path, so that the first end of the first robotic arm and the second end of the second robotic arm move in the motion modes, and the relative end pose relationship remains unchanged during the motion; Determining the first motion path of the first robotic arm and the second motion path of the second robotic arm based on the motion modes and the relative end pose relationship includes: Determining a target pose of the first end of the first robotic arm based on the motion modes; and Determining a target pose of the second end of the second robotic arm based on the motion modes; The control method further comprises: Determining a first target pose of the first robotic arm based on a first current pose of the first robotic arm and the target pose of the first end; and Determining a second target pose of the second robotic arm based on a second current pose of the second robotic arm and the target pose of the second end; Determining the first target pose of the first robotic arm based on the first current pose of the first robotic arm and the target pose of the first end includes: Selecting one of a plurality of joints of the first robotic arm as a first characteristic joint; Setting a first recommended target joint value of the first characteristic joint; and Determining other target joint values of the first robotic arm based on the target pose of the first end and the first recommended target joint value; or Determining the second target pose of the second robotic arm based on the second current pose of the second robotic arm and the target pose of the second end includes: Selecting one of a plurality of joints of the second robotic arm as a second characteristic joint; Setting a second recommended target joint value of the second characteristic joint; and Determining other target joint values of the second robotic arm based on the target pose of the second end and the second recommended target joint value; The first characteristic joint is a joint among a plurality of joints of the first robotic arm that is prone to collide with other robotic arms among the plurality of robotic arms; or The second characteristic joint is a joint among a plurality of joints of the second robotic arm that is prone to collide with other robotic arms among the plurality of robotic arms.
2. The control method according to claim 1, characterized in that Further comprising: Determining the relative end pose relationship between the first end of the first robotic arm and the second end of the second robotic arm based on the current surgical type or the configuration of the auxiliary connection device.
3. The control method according to claim 2, wherein the target pose of the first end includes one of the following: the target position and target attitude of the end arm of the first moving arm; the target position and target attitude of the remote center of motion mechanism (RCM mechanism) of the first moving arm; or the target position and target attitude of the end of the first moving arm for connecting with the auxiliary connecting device; or the target pose of the second end includes one of the following: the target position and target attitude of the end arm of the second moving arm; the target position and target attitude of the remote center of motion mechanism (RCM mechanism) of the second moving arm; or the target position and target attitude of the end of the second moving arm for connecting with the auxiliary connecting device.
4. The control method according to claim 1, wherein It further includes: judging whether other target joint values of the first moving arm are within the joint motion range of the corresponding joint; and in response to at least one of the other target joint values of the first moving arm not being within the joint motion range of the corresponding joint, incrementing or decrementing the first recommended target joint value by a predetermined adjustment value to adjust the first recommended target joint value; or judging whether other target joint values of the second moving arm are within the joint motion range of the corresponding joint; in response to at least one of the other target joint values of the second moving arm not being within the joint motion range of the corresponding joint, incrementing or decrementing the second recommended target joint value by a predetermined adjustment value to adjust the second recommended target joint value.
5. The control method according to claim 4, wherein It further includes: in response to all other target joint values of the first moving arm being within the joint motion range of the corresponding joint, determining the first target pose of the first moving arm based on the first recommended target joint value and other target joint values; or in response to all other target joint values of the second moving arm being within the joint motion range of the corresponding joint, determining the second target pose of the second moving arm based on the second recommended target joint value and other target joint values.
6. The control method according to claim 4, wherein It further includes: determining other target joint values of the first moving arm based on the target pose of the first end and the adjusted first recommended target joint value; or determining other target joint values of the second moving arm based on the target pose of the second end and the adjusted second recommended target joint value.
7. The control method according to claim 1, wherein It further includes: judging whether an interference relationship will be formed between the second moving arm and the first moving arm; and in response to an interference relationship being formed between the second moving arm and the first moving arm, adjusting the first recommended target joint value or the second recommended target joint value.
8. The control method according to any one of claims 1 to 7, characterized in that It further includes: judging whether an interference relationship will be formed between the first moving arm and the second moving arm based on the constraint relationship; and in response to an interference relationship being formed between the first moving arm and the second moving arm, controlling the first moving arm and the second moving arm to stop moving or sending out an alarm message.
9. The control method according to claim 8, wherein Judging whether an interference relationship will be formed between the first moving arm and the second moving arm includes: based on the satisfaction of the constraint relationship, determining that no interference relationship will occur between the first moving arm and the second moving arm; and Based on the non - satisfaction of the constraint relationship, it is determined that an interference relationship will occur between the first moving arm and the second moving arm.
10. The control method according to claim 9, characterized in that The constraint relationship includes at least one of the following: The relative position sequence relationship between the first moving arm and the second moving arm conforms to a predetermined relative position sequence relationship; The distance between a predetermined point associated with the first moving arm and a predetermined point associated with the second moving arm is greater than a predetermined safety distance; The minimum distance between a predetermined line segment associated with the first moving arm and a predetermined line segment associated with the second moving arm is greater than a predetermined safety line segment distance; Or The difference between the joint values of one or more joints of the first moving arm and the joint values of the corresponding joints of the second moving arm is greater than a predetermined safety value.
11. The control method according to any one of claims 1-7, characterized in that, Including: Based on the interpolation method, determine the first motion path of the first moving arm and the second motion path of the second moving arm.
12. The control method according to claim 11, wherein For each moving arm, based on the target pose and the initial pose of the moving arm, determine the joint step size of each joint included in the moving arm.
13. The control method according to claim 12, wherein For each moving arm, based on the joint step size of each joint included in the moving arm, determine the end pose of the moving arm at the end of each motion cycle; And Based on the end pose of each motion cycle, determine the motion path of the moving arm.
14. The control method according to any one of claims 1-7, characterized in that, The overall motion includes: overall translation, overall rotation, or a combination of overall translation and overall rotation.
15. A robot system, comprising: A plurality of moving arms, the plurality of moving arms including: A first moving arm; A second moving arm; A control device configured to execute the control method according to any one of claims 1 - 14.
16. The robot system according to claim 15, characterized in that, The robot system further includes an auxiliary connection device, and the auxiliary connection device at least includes a first sheath tube for connecting to the first end and a second sheath tube for connecting to the second end, The relative pose relationship between the ends is determined based on the shapes of the first sheath tube and the second sheath tube and their relative position relationship.
17. The robot system according to claim 16, wherein A first auxiliary connection portion is provided on the first sheath tube, and a second auxiliary connection portion is provided on the second sheath tube; A first arm body connection portion for connecting to the first auxiliary connection portion is provided at the end of the first moving arm, and a second arm body connection portion for connecting to the second auxiliary connection portion is provided at the end of the second moving arm.
18. A computer - readable storage medium, including one or more instructions, which are executed by a processor to execute the control method according to any one of claims 1 - 14.
19. A computer system, comprising: A memory for storing at least one instruction; And A processor configured to execute the at least one instruction to execute the control method according to any one of claims 1 - 14.
Citation Information
Patent Citations
Operating method and device of mechanical arm
CN107116553A
Medical Manipulator System
CN107427328A
Breaker assembling robot and method capable of achieving work track optimization of robot
CN109676610A
Device, method and system for teaching robot
CN109699177A
Automatic motion control of a dependent surgical robotic arm
CN110072483A