Motion control method for multiple motion arms, robot system and computer equipment
By determining the target pose of the control point of the master motion arm and calculating the joint control signals of the slave motion arms in a single-port laparoscopic surgical robot system, the problem of coordinated motion control of multiple motion arms is solved, enabling safe, stable and efficient surgical operations and improving surgical efficiency and safety.
Patent Information
- Application Number
- CN202410946971.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-16
- Publication Date
- 2026-01-27
AI Technical Summary
In single-port laparoscopic surgical robot systems, the safe, stable, and efficient motion control of multiple moving arms has not yet been effectively resolved, affecting the efficiency and safety of the surgical procedure.
By determining the target pose of the control point of the master motion arm and calculating the joint control signal of the slave motion arm based on the pose relationship, the coordinated motion control of the master and slave motion arms is realized, ensuring that the pose relationship between multiple motion arms remains consistent.
It enables safe, stable, and efficient coordinated movement of multiple motion arms, improving the efficiency and safety of the surgical procedure and reducing surgical wounds and patient recovery time.
Smart Images

Figure CN121400985A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of medical devices, and more particularly to motion control methods for multiple motion arms, robotic systems, computer devices, and storage media. Background Technology
[0002] Laparoscopic surgery is a surgical procedure that has gradually developed and been widely used in recent years. It has advantages such as smaller incisions, which greatly reduces patients' recovery time, discomfort, and postoperative side effects. Performing laparoscopic surgery using surgical robots, especially single-port laparoscopic surgery, allows for optimization of the surgical procedure through remote computer control technology.
[0003] Single-port surgical robot systems typically have multiple robotic arms that deliver surgical instruments via surgical connectors (e.g., sheaths) to the surgical site. Currently, surgical procedures using robotic surgery primarily include preoperative positioning, intraoperative manipulation, and postoperative care. Preoperatively, the robotic arms are typically positioned appropriately based on the type of surgery and surgical posture, and then docked with the surgical connectors. During the procedure, the positions of the robotic arms are adjusted to move the docked surgical connectors, allowing for adjustments to the surgical area and field. Therefore, the safe, stable, and efficient movement of the robotic arms is crucial in single-port surgical robot systems. Summary of the Invention
[0004] In some embodiments, this disclosure provides a motion control method for multiple motion arms, the multiple motion arms including a master motion arm and at least one slave motion arm, each of the multiple motion arms including at least one arm body and at least one joint for connecting the at least one arm body, the method including: determining a target pose of a control point of the master motion arm; determining a target pose of a control point of at least one slave motion arm based on the target pose of the control point of the master motion arm and the pose relationship between the control point of the master motion arm and the control point of the at least one slave motion arm; determining a joint control signal of at least one joint of the master motion arm based on the target pose of the control point of the master motion arm; and determining a joint control signal of at least one joint of the at least one slave motion arm based on the joint control signal of the at least one joint of the master motion arm and the target pose of the control point of the at least one slave motion arm, such that the pose relationship between the control point of the master motion arm and the control point of the at least one slave motion arm is maintained.
[0005] In some embodiments, this disclosure provides a robot system including a plurality of motion arms, including a master motion arm and at least one slave motion arm, each of the plurality of motion arms including at least one arm body and at least one joint for connecting the at least one arm body; and a control device connected to the plurality of motion arms for performing a motion control method for the plurality of motion arms as described in any of some embodiments of this disclosure.
[0006] In some embodiments, this disclosure provides a computer device comprising: a memory for storing at least one instruction; and a processor coupled to the memory and configured to execute at least one instruction to perform a motion control method for a plurality of motion arms according to any of some embodiments of this disclosure.
[0007] In some embodiments, this disclosure provides a computer-readable storage medium for storing at least one instruction, which, when executed by a computer, causes the computer to implement a motion control method for multiple motion arms as described in any of some embodiments of this disclosure. Attached Figure Description
[0008] To more clearly illustrate the technical solutions in the embodiments of this disclosure, the accompanying drawings used in the description of the embodiments of this disclosure will be briefly introduced below. The accompanying drawings described below only show some embodiments of this disclosure. For those skilled in the art, other embodiments can be obtained based on the content of the embodiments of this disclosure and these drawings without creative effort.
[0009] Figure 1 A flowchart is shown for a motion control method for multiple motion arms according to some embodiments of the present disclosure.
[0010] Figure 2 A structural block diagram of a robot system according to some embodiments of the present disclosure is shown.
[0011] Figure 3 A schematic diagram of the structure of a surgical robot system according to some embodiments of the present disclosure is shown.
[0012] Figure 4 A schematic diagram of the structure of a surgical connection device according to some embodiments of the present disclosure is shown.
[0013] Figure 5 A schematic diagram illustrating the coordinated pose adjustment of multiple motion arms according to some embodiments of the present disclosure is shown.
[0014] Figure 6 A flowchart illustrating a method for determining the target pose of the control points of the main motion arm according to some embodiments of the present disclosure is shown.
[0015] Figure 7 A kinematic modeling diagram of a second motion arm according to some embodiments of the present disclosure is shown.
[0016] Figure 8 A schematic diagram illustrating the shortest distance between two line segments in space according to some embodiments of the present disclosure is shown.
[0017] Figure 9A schematic diagram illustrating the shortest distance from a point to a line segment according to some embodiments of the present disclosure is shown.
[0018] Figure 10 A schematic block diagram of a computer device according to some embodiments of the present disclosure is shown. Detailed Implementation
[0019] To make the technical problems solved by this disclosure, the technical solutions adopted, and the technical effects achieved clearer, the technical solutions of the embodiments of this disclosure will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are merely exemplary embodiments of this disclosure, and not all embodiments.
[0020] In the description of this disclosure, it should be noted that the terms "center," "upper," "lower," "left," "right," "vertical," "horizontal," "inner," and "outer," etc., indicating orientation or positional relationships based on the orientation or positional relationships shown in the accompanying drawings, are only for the convenience of describing this disclosure and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of this disclosure. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance. In the description of this disclosure, it should be noted that unless otherwise expressly specified and limited, the terms "installed," "connected," "coupled," and "coupled" should be interpreted broadly. For example, they can refer to fixed connections or detachable connections; mechanical connections or electrical connections; direct connections or indirect connections through an intermediate medium; and internal connections between two components. Those skilled in the art can understand the specific meaning of the above terms in this disclosure according to the specific circumstances. In this disclosure, the end closer to the operator (e.g., a doctor) is defined as the proximal end, proximal or rear end, or posterior end, and the end closer to the surgical patient is defined as the distal end, distal or anterior end, or anterior end. Those skilled in the art will understand that embodiments of this disclosure can be used in medical devices or surgical robots, as well as in other non-medical devices.
[0021] In this disclosure, the term "position" refers to the location of an object or part of an object in three-dimensional space (e.g., three translational degrees of freedom can be described using variations in Cartesian X, Y, and Z coordinates, such as three translational degrees of freedom along the Cartesian X, Y, and Z axes, respectively). In this disclosure, the term "pose" refers to the rotational setting of an object or part of an object (e.g., three rotational degrees of freedom, which can be described using roll, pitch, and yaw). In this disclosure, the term "pose" refers to a combination of the position and pose of an object or part of an object, which can be described, for example, using six parameters from the six degrees of freedom mentioned above. In this disclosure, the configuration or pose of a motion arm or part of it can be represented by a set of joint values of the joints of the motion arm (e.g., a one-dimensional matrix of these joint values). In this disclosure, the joint values of a joint can include the angle of rotation of the respective joint relative to the respective joint axis or the distance moved relative to an initial position. In this disclosure, a reference coordinate system can be understood as a coordinate system capable of describing the pose of an object. Depending on the actual positioning requirements, the reference coordinate system can be selected with either the origin of a virtual reference object or the origin of a physical reference object as the origin of the coordinate system.
[0022] Some embodiments of this disclosure provide a motion control method for multiple motion arms. Figure 1 A flowchart is shown of a motion control method 100 (hereinafter also referred to as "method 100") for multiple motion arms according to some embodiments of the present disclosure. Method 100 may be implemented or performed at least in part by hardware, software, or firmware. In some embodiments, method 100 may be at least in part by a robot system (e.g., Figure 2 The robot system 200 shown Figure 3 The surgical robot system 300 shown is executed. In some embodiments, method 100 can be implemented as computer-readable instructions. These instructions can be executed by a general-purpose processor or a special-purpose processor (e.g., Figure 2 The control device 210 shown reads and executes the commands. For example, the control device of a robot system (e.g., Figure 2 The control device 210 shown may include a processor configured to execute method 100. In some embodiments, these instructions may be stored on a computer-readable medium.
[0023] Some embodiments of this disclosure provide a robotic system. Figure 2 A structural block diagram of a robot system 200 according to some embodiments of the present disclosure is shown. Figure 2 As shown, the robot system 200 may include a control device 210 and a plurality of motion arms connected to the control device 210. In some embodiments, such as Figure 2As shown, the multiple motion arms may include a first motion arm 221, a second motion arm 222, a third motion arm 223, and a fourth motion arm 224. In some embodiments, the control device 210 can be communicatively connected to the multiple motion arms, for example, via a cable connection or a wireless connection. The control device 210 can be used to control the first motion arm 221, the second motion arm 222, the third motion arm 223, and the fourth motion arm 224. For example, the control device 210 can adjust the movement, posture, and coordination of the first motion arm 221, the second motion arm 222, the third motion arm 223, and the fourth motion arm 224.
[0024] In some embodiments, the plurality of motion arms may include a master motion arm and at least one slave motion arm, for example, Figure 2 One of the multiple motion arms in the illustrated robot system 200 (e.g., one of the first motion arm 221, the second motion arm 222, the third motion arm 223, and the fourth motion arm 224) can be the master motion arm, and the remaining motion arms can be slave motion arms. The control device 210 can be communicatively connected to the master motion arm and at least one slave motion arm, respectively. The control device 210 can control the coordinated movement of the master motion arm and at least one slave motion arm. For example, the control device 210 can be used to execute motion control methods for multiple motion arms (e.g., method 100) in some embodiments of this disclosure to achieve the coordinated movement of the master motion arm and at least one slave motion arm.
[0025] In this disclosure, Figure 2 The exemplary robot system shown in the following figures is illustrated as including four moving arms. Those skilled in the art will understand that the robot system may also include two, three, five, or more moving arms. The robot system provided in this disclosure may be a surgical robot system (e.g., a laparoscopic surgical robot system). The robot system may also be a specialized or general-purpose robot system for other fields (e.g., logistics, industrial manufacturing, etc.).
[0026] Figure 3 A schematic diagram of the structure of a surgical robot system 300 according to some embodiments of the present disclosure is shown. Figure 3As shown, the surgical robot system 300 may include multiple motion arms and control devices (not shown). In some embodiments, the surgical robot system 300 may include a movable base 310, which may include a base body 311, a column 312 extending vertically from the base body 311, and a crossbeam 313 mounted on the top of the column 312. The crossbeam 313 may extend horizontally from the top of the column 312 perpendicular to the height direction of the base body 311. A gimbal 314 may be fixedly or rotatably mounted at the end of the crossbeam 313 to support the multiple motion arms. In some embodiments, the gimbal 314 may rotate relative to the end of the crossbeam 313 to drive the multiple motion arms to rotate as a whole, adjusting the angle of the multiple motion arms relative to the movable base 310. In some embodiments, the crossbeam 313 may extend and retract along its length to adjust the length of the surgical robot system 300, driving the gimbal 314 and the multiple motion arms mounted on the gimbal 314 to move back and forth as a whole. In some embodiments, the column 312 can be raised and lowered along the height direction to adjust the height of the surgical robot system 300, thereby driving the crossbeam 313, the gimbal 314, and the multiple motion arms mounted on the gimbal 314 to rise and fall as a whole.
[0027] In some embodiments, the plurality of motion arms may include a multi-degree-of-freedom motion arm composed of multiple joints. For example, the plurality of motion arms may be connected to the gimbal 314 at their proximal ends (e.g., the end closer to the surgical robot system) via joints, and at their distal ends (e.g., the end farther from the surgical robot system) may include end arms, on which end-effectors (e.g., surgical instruments) may be disposed. In some embodiments, the plurality of motion arms may each include at least one arm body and at least one joint for connecting at least one arm body. In some embodiments, the plurality of motion arms may include a first transverse arm 321 and a first transverse arm rotation joint 3211. The proximal end of the first transverse arm 321 is rotatably connected to the gimbal 314 via the first transverse arm rotation joint 3211, such that the first transverse arm 321 rotates relative to the gimbal 314 about the rotation axis of the first transverse arm rotation joint 3211 (e.g., an axis perpendicular to the horizontal plane). In some embodiments, the surgical robot system 300 may include a plurality of motion arms, such as... Figure 3 The surgical robot system 300 shown includes four motion arms: a first motion arm 320a, a second motion arm 320b, a third motion arm 320c, and a fourth motion arm 320d. Each motion arm can be rotatably connected to a gimbal 314 via its respective first transverse arm rotation joint 3211, or the rotation axes of the first transverse arm rotation joints 3211 of the multiple motion arms can be coaxial. For example, as... Figure 3As shown, the first horizontal arm 321 of the second motion arm 320b is rotatably connected to the gimbal 314 via the first horizontal arm rotation joint 3211. The first horizontal arm 321 of the first motion arm 320a is located below and partially overlaps with the first horizontal arm 321 of the second motion arm 320b. The rotation axis of the first horizontal arm rotation joint 3211 of the first motion arm 320a is coaxially arranged with the rotation axis of the first horizontal arm rotation joint 3211 of the second motion arm 320b. The first horizontal arm 321 of the third motion arm 320c is rotatably connected to the gimbal 314 via the first horizontal arm rotation joint 3211. The first horizontal arm 321 of the fourth motion arm 320d is located below and partially overlaps with the first horizontal arm 321 of the third motion arm 320c. The rotation axis of the first horizontal arm rotation joint 3211 of the fourth motion arm 320d is coaxially arranged with the rotation axis of the first horizontal arm rotation joint 3211 of the third motion arm 320c.
[0028] In some embodiments, such as Figure 3 As shown, the plurality of moving arms may further include a second horizontal arm 322 and a second horizontal arm rotational joint. The proximal end of the second horizontal arm 322 is rotatably connected to the distal end of the first horizontal arm 321 via the second horizontal arm rotational joint, so that the second horizontal arm 322 rotates relative to the first horizontal arm 321 about the rotation axis of the second horizontal arm rotational joint. In some embodiments, such as Figure 3As shown, the multiple moving arms also include a vertical arm 323 and a vertical arm rotation joint. The proximal end of the vertical arm 323 is rotatably connected to the distal end of the second horizontal arm 322 via the vertical arm rotation joint, so as to rotate relative to the distal end of the second horizontal arm 322 about the rotation axis of the vertical arm rotation joint. In some embodiments, the rotation axes of the first horizontal arm rotation joint, the second horizontal arm rotation joint, and the vertical arm rotation joint are parallel, for example, the rotation axes of the first horizontal arm rotation joint, the second horizontal arm rotation joint, and the vertical arm rotation joint are axes that are parallel to each other and perpendicular to the horizontal plane. In some embodiments, the vertical arm 323 may also include a lifting joint, which is disposed in the vertical arm 323 and is used for longitudinal lifting and lowering movement of the vertical arm 323 to adjust the length of the vertical arm 323. In some embodiments, the plurality of motion arms further include a slant arm 324 and a slant arm rotation joint, wherein the proximal end of the slant arm 324 is rotatably connected to the distal end of the vertical arm 323 via the slant arm rotation joint, and the rotation axis of the slant arm rotation joint may be angled relative to the longitudinal direction to allow the slant arm 324 to yaw relative to the vertical arm 323. It should be understood that the angle of the rotation axis of the slant arm rotation joint relative to the longitudinal direction can be between 0 and 90°. In some embodiments, the angle of the rotation axis of the slant arm rotation joint relative to the longitudinal direction is 45°. In some embodiments, the plurality of motion arms may further include a telecentric motion mechanism 325, the proximal end of which is rotatably connected to the distal end of the slant arm 324 via a telecentric motion rotation joint. In some embodiments, the telecentric motion mechanism 325 may include motion arms connected sequentially via a plurality of movable joints to allow the distal ends of the plurality of motion arms to rotate about the RCM (Remote Center of Motion). In some embodiments, such as Figure 7 As shown, the telecentric motion mechanism 325 may include a first movable arm 3251, a second movable arm 3252, and a third movable arm 3253. The proximal end of the first movable arm 3251 is rotatably connected to the distal end of the inclined arm 324 through a rotary joint. The distal end of the first movable arm 3251 is rotatably connected to the proximal end of the second movable arm 3252 through a first movable joint. The distal end of the second movable arm 3252 is rotatably connected to the third movable arm 3253 through a second movable joint.
[0029] In some embodiments, such as Figure 3 As shown, the surgical robot system 300 may further include at least one end effector 330 for performing surgical tasks. The end effector 330 may be disposed at the end of a plurality of moving arms, for example, as... Figure 3 As shown, the end effector 330 can be mounted on the distal arm of a multi-arm telecentric motion mechanism 325. In the surgical robot system 300, the end effector 330 includes surgical instruments, including but not limited to surgical tools, lighting or image acquisition devices (e.g., endoscopes).
[0030] In some embodiments, the end arms of the plurality of motion arms include a linear module for driving the end effector 330 to perform linear feed motion along the axial direction of the end effector 330. For example, such as Figure 7 As shown, the end effector 330 can be mounted on the third movable arm 3253 located at the end of the telecentric motion mechanism 325 of multiple moving arms. The third movable arm 3253 is provided with a linear module 3254. The end effector 330 is mounted on the linear module 3254 and is used to drive the end effector 330 to feed linearly along the axis of the end effector 330.
[0031] In some embodiments, the surgical robot system 300 further includes a connection device for docking with a plurality of motion arms (e.g., such as...). Figure 4 The surgical connection device 400 shown may further include a connecting mechanism for detachably connecting the ends of the multiple motion arms to the connecting device. In some embodiments, the connecting mechanism may be disposed on the telecentric motion mechanism 325. In some embodiments, each joint of the multiple motion arms may include a joint motor that drives the corresponding joint to rotate under the control of a control device, causing the multiple motion arms to move in space to form a desired configuration, thereby enabling the deployment and positioning of the multiple motion arms. In this disclosure, positioning refers to adjusting the configuration of at least one motion arm of the robot system to achieve a positioning configuration in which the operation can be performed. In some embodiments, the positioning of at least one motion arm may include the deployment, adjustment, and positioning of at least one motion arm (e.g., connection to the connecting device).
[0032] In some embodiments, a surgical connection device for connecting to multiple motion arms in a surgical robot system 300 may include multiple sheaths corresponding to the ends of the multiple motion arms. In some embodiments, the sheaths of the surgical connection device may include flexible portions that can be detachably connected to the motion arms even if the configuration of the motion arms has some errors. Figure 4 A schematic diagram of the structure of a surgical connection device 400 according to some embodiments of the present disclosure is shown. For example... Figure 4 As shown, the surgical connection device 400 may include a main body 410 and multiple sheaths inserted into the main body 410. For example, the surgical connection device 400 may include four sheaths 420, 430, 440, and 450 to allow the ends of surgical instruments to pass through. In some embodiments, the surgical connection device 400 may include multiple connection structures disposed on the multiple sheaths for connecting the ends of corresponding surgical arms. For example, as Figure 4 As shown, sheaths 420, 430, 440, and 450 may each have a connecting structure 421, 431, 441, and 451 at their distal ends. The connecting structure may include, but is not limited to, a snap-fit structure, an adhesive structure, a plug-in structure, and a suction structure. In some embodiments, in... Figure 3 The surgical robot system 300 shown can have connecting mechanisms formed on the ends of multiple moving arms (e.g., telecentric motion mechanism 325) that respectively cooperate with the connecting structures 421-451, thereby realizing a detachable fixed connection between the ends of the moving arms and the surgical connecting device.
[0033] In some embodiments, the relative pose relationships between the plurality of sheaths of the surgical connection device 400 can be determined based on the configuration of the surgical connection device 400. During surgical preparation, the plurality of motion arms of the surgical robot system 300 need to be positioned, and the poses of the control points of the plurality of motion arms need to be adjusted to achieve a fixed connection between the ends of the plurality of motion arms and the surgical connection device 400. In some embodiments, the control points of the plurality of motion arms may include the remote motion centers of the motion arms. The poses of the control points of the plurality of motion arms may include the poses of the remote motion centers of the plurality of motion arms.
[0034] In some implementations, multiple kinematic arms (e.g., based on the relative pose relationships of the sheaths at 420, 430, 440, and 450) can be determined. Figure 3 The relative pose relationships of the control points of the first motion arm 320a, the second motion arm 320b, the third motion arm 320c, and the fourth motion arm 320d are shown. In some embodiments, the relative pose relationships of the control points can be stored in an associated relative pose model, which can be used to calculate the target pose of the control points of the multiple motion arms.
[0035] Those skilled in the art will understand that, Figure 4 The surgical connection device 400 shown is merely exemplary. In some embodiments, the surgical robot system 300 may include three, four or more motion arms, and the surgical connection device 400 may include three, four or more sheaths, each sheath including a corresponding connection portion for connecting each sheath to each motion arm and constraining the relative pose relationship between the control points of the multiple motion arms.
[0036] In some embodiments, such as Figure 3 The multiple motion arms in the surgical robot system 300 shown may include a main motion arm (e.g., such as...) Figure 3 The third moving arm 320c shown) and at least one slave moving arm (e.g., such as Figure 3The first motion arm 320a, second motion arm 320b, and fourth motion arm 320d shown are examples of multiple motion arms capable of coordinated pose adjustment (including coordinated position adjustment and / or coordinated posture adjustment). In some embodiments, the coordinated pose adjustment of the multiple motion arms includes the coordinated pose adjustment of the control point (e.g., a remote motion center) of the master motion arm or at least one slave motion arm. During the coordinated pose adjustment of the multiple motion arms, a predetermined pose relationship is maintained between the control point of the master motion arm and the control point of at least one slave motion arm. This pose relationship is based on a surgical connection device (e.g., [missing information]) for connection to the master motion arm and at least one slave motion arm. Figure 4 The configuration of the surgical connection device 400 shown is determined.
[0037] For example, in some embodiments, during the preoperative positioning stage, multiple motion arms can be coordinated in position (including coordinated position adjustment and / or coordinated posture adjustment) according to the surgical type and surgical posture. After the control points of the multiple motion arms are adjusted to a suitable posture, the multiple motion arms are connected to the surgical connection device (e.g., Figure 4 The surgical connection device 400 shown is docked. During the preoperative positioning phase, the coordinated posture adjustment of multiple positioning arms can include coordinated position adjustment or posture adjustment in multiple directions. For example, multiple moving arms can perform coordinated up-and-down position adjustment, coordinated forward-and-backward position adjustment, coordinated left-and-right position adjustment, and coordinated forward-and-backward position adjustment; or multiple positioning arms can perform coordinated clockwise and counter-clockwise posture adjustment, and coordinated upward and downward posture adjustment. During the coordinated posture adjustment of multiple moving arms, the positional relationship of the control points of the multiple moving arms, determined by the configuration of the surgical connection device, can constrain the movement of the multiple moving arms. This ensures that the control points of the multiple moving arms maintain a predetermined positional relationship during the coordinated posture adjustment process, so that after the multiple moving arms have reached their coordinated positions, they can be directly connected to the surgical connection device.
[0038] For example, in some embodiments, during surgery, the overall movement of the surgical connector and multiple surgical instruments can be driven by the coordinated posture adjustment of multiple moving arms, thereby achieving overall posture adjustment of the surgical connector and multiple surgical instruments, and realizing the transfer of the surgical area and adjustment of the surgical field. In some embodiments, during surgery, multiple moving arms can perform coordinated forward and backward position adjustment, so that the surgical connector and multiple surgical instruments can be adjusted as a whole along the central axis of the surgical connector. Multiple moving arms can also perform coordinated clockwise and counterclockwise posture adjustment, and coordinated upward and downward posture adjustment, so that the surgical connector and multiple surgical instruments can be adjusted as a whole in clockwise and counterclockwise, upward and downward postures.
[0039] In some embodiments, coordinated pose adjustment of multiple motion arms includes coordinated pose adjustment of the control point (e.g., a remote motion center) of the master motion arm or at least one slave motion arm. Since the pose relationship between the control point of the master motion arm and the control point of at least one slave motion arm is predetermined, for ease of description, coordinated pose adjustment of multiple motion arms can be simplified as coordinated pose adjustment of the control point of the master motion arm.
[0040] Figure 5 A schematic diagram illustrating the coordinated pose adjustment of multiple motion arms 510 according to some embodiments of the present disclosure is shown. Figure 5 As shown, when multiple motion arms 510 (e.g., Figure 3 After the motion arms 320a-320d shown are connected to the surgical connection device 520, the main motion arm (e.g., as shown) Figure 3 The control point 530 of the third motion arm 320c shown can be located at a fixed position of the surgical connection device 520. Multiple motion arms 510 can be adjusted vertically along the first axis 541, horizontally along the second axis 542, left-right along the third axis 543, forward and backward along the fourth axis 544, rotate clockwise and counterclockwise around the first axis 541, and tilt upward and downward around the third axis 543. In some embodiments, the first axis 541 can be a reference coordinate system as shown in some of the following embodiments: A b}of z ab The second axis, 542, can be the coordinates of the remote motion center of the main motion arm. A 3} z A3 The axis in the reference coordinate system { A b}of x ab axis- y ab The projection of the axis plane, the third axis 543 can be the cross product of the axial direction of the first axis 541 and the axial direction of the second axis 542, and the fourth axis 544 can be the coordinates of the remote motion center of the main motion arm. A 3} z A3 The axis. The position adjustment direction vectors of multiple motion arms 510 for coordinated up-down, coordinated forward-backward, coordinated left-right, and coordinated forward-and-backward position adjustment, as well as the attitude adjustment directions for coordinated clockwise and counterclockwise posture adjustment and coordinated upward and downward posture adjustment, are described in detail in some of the following embodiments.
[0041] Those skilled in the art will understand that, in order to illustrate that the relative pose relationship between the control points of the multiple motion arms 510 is constrained by the relative pose relationship of the multiple sheaths in the connecting device 520 to achieve coordinated movement, Figure 5 The illustration shows various coordinated posture adjustments of multiple motion arms 510 connected to the surgical connection device 520. However, those skilled in the art will understand that during surgery, the surgical connection device 520 can be adjusted in the forward and backward positions through the coordinated adjustment of the forward and backward positions of the multiple motion arms 510, but it cannot be adjusted in other directions. For example, the surgical connection device 520 cannot be adjusted in the up-down, forward-backward, or left-right positions through the coordinated adjustment of the up-down, forward-backward, or left-right positions of the multiple motion arms 510, so as to avoid pulling on the opening on the body surface and causing medical accidents.
[0042] The following, in conjunction with the appendix Figure 1 This document provides a detailed explanation of the implementation process of the motion control method 100 for multiple motion arms provided in this disclosure.
[0043] In some embodiments, the plurality of motion arms includes a master motion arm and at least one slave motion arm. For example, such as Figure 3 In the surgical robot system shown, multiple motion arms include a first motion arm 320a, a second motion arm 320b, a third motion arm 320c, and a fourth motion arm 320d. The third motion arm 320c can be the master motion arm, and the first motion arm 320a, the second motion arm 320b, and the fourth motion arm 320d can be slave motion arms.
[0044] See Figure 1 In step 101, the target pose of the control point of the main motion arm is determined.
[0045] Those skilled in the art will understand that the pose of the control points of the motion arm (e.g., the current pose and / or the target pose, etc.) involved in this disclosure should be understood as the pose of the control point coordinate system (e.g., the remote motion center coordinate system with the control point of the motion arm as the origin) as the pose of the control point coordinate system (e.g., the remote motion center coordinate system with the remote motion center of the motion arm as the origin).
[0046] In some implementations, the control point of the main motion arm includes the remote motion center of the main motion arm, and the target pose of the control point of the main motion arm includes the target pose of the remote motion center of the main motion arm.
[0047] Figure 6A flowchart illustrating a method 600 (hereinafter also referred to as "method 600") for determining the target pose of control points of a master motion arm according to some embodiments of the present disclosure. Method 600 may be implemented or performed at least in part by hardware, software, or firmware. In some embodiments, method 600 may be at least in part by a robotic system (e.g., Figure 2 The robot system 200 shown Figure 3 The surgical robot system 300 shown is executed. In some embodiments, method 600 can be implemented as computer-readable instructions. These instructions can be executed by a general-purpose processor or a special-purpose processor (e.g., Figure 2 The control device 210 shown reads and executes the commands. For example, the control device of a robot system (e.g., Figure 2 The control device 210 shown may include a processor configured to execute method 600. In some embodiments, these instructions may be stored on a computer-readable medium.
[0048] See Figure 6 In step 601, the current pose of the control point of the main motion arm is obtained.
[0049] In some embodiments, the control point of the main motion arm includes the remote motion center of the main motion arm, and the current pose of the control point of the main motion arm includes the current pose of the remote motion center of the main motion arm.
[0050] In some embodiments, the current pose of the remote center of motion of each actuator arm can be obtained based on the kinematic model of each actuator arm. For example, the current pose of the remote center of motion of the master actuator arm can be obtained based on the kinematic model of the master actuator arm.
[0051] As an example, with Figure 3 The second motion arm 320b in the surgical robot system 300 shown is used as an example to illustrate the modeling method of the kinematic model of the motion arm. Figure 7 A schematic diagram of the kinematic modeling of a second motion arm 320b according to some embodiments of the present disclosure is shown. In some embodiments, such as Figure 7 As shown, multiple coordinate systems can be constructed for the second motion arm 320b, including a reference coordinate system { A b}, Zero coordinate system {0}, First coordinate system {1}, Second coordinate system {2}, Third coordinate system {3}, Fourth coordinate system {4}, Fifth coordinate system {5}, Sixth coordinate system {6}, Seventh coordinate system {7}, Eighth coordinate system {8}, Remote motion center coordinate system { A 2}, The definitions of multiple coordinate systems are as follows: Reference coordinate system { A bThe origin is located at the midpoint of the line connecting the rooting points of the second moving arm 320b and the third moving arm 320c on the lower surface of the gimbal 314. z Ab The axis is vertically upward. x Ab The axis runs along the main crossbeam and away from the main column. y Ab Axis based x Ab shaft and z Ab The axis is determined using the right-hand rule.
[0052] Zero coordinate system {0}: Origin and reference coordinate system { A b}The origins coincide, z 0 axis and z Ab With the axes aligned, the zero coordinate system {0} serves as the reference coordinate system { A b} around z Ab The axis rotates 90° clockwise.
[0053] First coordinate system {1}: The origin is located at the intersection of the lower surface of the gimbal 314 and the rotation axis of the first horizontal arm rotary joint 3211. z Axis 1 is vertically upward along the rotation axis of the first horizontal arm rotary joint 3211. x Axis 1 points along the first transverse arm 321 from the first transverse arm rotation joint 3211 towards the second transverse arm rotation joint. y 1 axis based x 1 axis and z The first coordinate system {1} is defined using a right-handed coordinate system. The first coordinate system {1} is the zero coordinate system {0} along... x 0-axis translation L 0, along z 1-axis translation d 1. Go around again z 1-axis rotation q 1, among which, L 0 is the rotation axis of the first transverse arm rotary joint 3211 and z The distance between the 0 axis, d 1 represents the distance between the lower surface of the gimbal 314 and the upper surface of the first horizontal arm 321. q 1 is the first transverse arm rotation joint 3211. z The right-handed rotation angle of axis 1 is defined when... x 1 axis and x When the 0 axis is in the same direction, the degree is 0.
[0054] Second coordinate system {2}: The origin is located at the intersection of the rotation axis of the second horizontal arm rotary joint and the upper surface of the second horizontal arm 322.z The second axis is vertically upward along the rotation axis of the second horizontal arm rotary joint. x The second axis extends along the second horizontal arm 322 from the second horizontal arm rotation joint towards the vertical arm rotation joint. y 2-axis based x 2-axis and z The two axes are defined using a right-handed coordinate system. The second coordinate system {2} is derived from the first coordinate system {1} along... x 1-axis translation L 1. Along z 2-axis translation - H 1. Go around again z 2-axis rotation q 2, of which, L 1 represents the length of the first horizontal arm 321 (the distance between the rotation axes of the first horizontal arm rotation joint 3211 and the second horizontal arm rotation joint). H 1 represents the thickness of the first crossarm, 321. q 2 is the second horizontal arm rotation joint around z The right-handed rotation angle of a 2-axis system is defined when... x 2-axis and x When the axes are in the same direction, the angle is 0 degrees.
[0055] The third coordinate system {3}: The origin is located at the intersection of the rotation axis of the vertical arm rotation joint and the lower surface of the second horizontal arm 322. z The three axes are vertically upward along the rotation axis of the vertical arm rotary joint. x 3 axes perpendicular to z The three axes are along the directions shown in the figure. y 3-axis based x 3-axis and z The three axes are defined using a right-handed coordinate system. The third coordinate system {3} is derived from the second coordinate system {2} along... x 2-axis translation L 2, along z 3-axis translation - H 2. Go around again z 3-axis rotation 180°+ q 3, of which, L 2 represents the length of the second horizontal arm 322 (the distance between the rotation axes of the second horizontal arm rotation joint and the vertical arm rotation joint). H 2 represents the thickness of the second crossarm, 322. q 3 represents the rotation of the vertical arm joint. z The right-handed rotation angle of the 3-axis system is defined as follows: the central symmetry plane of the vertical arm 323 is along the central symmetry plane of the second horizontal arm 322, and the distal telecentric motion mechanism is... x The angle is 0 degrees in the extended direction of axis 2.
[0056] The fourth coordinate system {4}: the origin is located at the intersection of the rotation axis of the vertical arm rotary joint and the rotation axis of the inclined arm rotary joint.z The four axes are vertically upward along the rotation axis of the vertical arm rotary joint. x 4-axis direction and y All three axes are aligned. y 4-axis based x 4-axis and z The four axes are defined using a right-handed coordinate system. The fourth coordinate system {4} is derived from the third coordinate system {3} along... z 3-axis translation - q 4- d 1 +H 1 +H 2. Go around again z Rotate 90° on 4 axes, where, q 4 z 4 axes and the fifth coordinate system {5} z The distance from the intersection of the 5 axes to the lower surface of the gimbal 314.
[0057] Fifth coordinate system {5}: The origin is located at the intersection of the rotation axis of the telecentric rotation joint and the rotation axis of the inclined arm rotation joint. z The 5-axis rotation axis along the diagonal arm rotary joint points away from the diagonal arm rotary joint. x 5 axes perpendicular to z 5-axis pointing Figure 7 The direction shown y 5-axis based x 5-axis and z The five axes are defined using a right-handed coordinate system. The fifth coordinate system {5} is derived from the fourth coordinate system {4} around which the coordinate system {4} rests. x 4-axis rotation -135°, along z 5-axis translation L 5. Go around again z 5-axis rotation 90°+ q 5, of which, L 5 represents the length of the diagonal arm, which is 324. q 5 is a diagonal arm rotation joint. z The right-handed rotation angle of the 5-axis system is defined when the central symmetry plane of the linear module 3245 is in the vertical plane and the direction is as follows: Figure 7 The direction shown is 0 degrees.
[0058] The origin of the sixth coordinate system {6} coincides with the origin of the fifth coordinate system {5}. z The rotation axis of the 6-axis telecentric rotary joint points to Figure 7 The direction shown x 6 axes perpendicular to z 6-axis pointing Figure 7 The direction shown y 6-axis based x 6-axis and zThe six axes are defined using a right-handed coordinate system. The sixth coordinate system {6} is derived from the fifth coordinate system {5} around which the coordinate system {5} rests. x Rotate 5 axes -90°, then circle z 6-axis rotation 90°+ q 6, of which, q 6 represents the centripetal rotation joint. z The rotation angle of the 6-axis right-hand drive is defined as 0 degrees when the telecentric motion mechanism is theoretically fully retracted to the inclined arm 324.
[0059] The seventh coordinate system {7}: The origin is located at the intersection of the rotation axis of the first movable joint and the first side surface of the second movable arm 3252 (the side surface of the second movable arm 3252 away from the first movable arm 3251). z The 7th axis is perpendicular to the direction of the first movable joint. Figure 7 The direction shown x 7 axes perpendicular to z 7-axis pointing Figure 7 The direction shown y 7-axis based x 7-axis and z The seven axes are defined using a right-handed coordinate system. The seventh coordinate system {7} is derived from the sixth coordinate system {6} along... x 6-axis translation L 6. Go around again z 7-axis rotation 180° - q 6, of which, L 6 represents the length of the first movable arm 3251.
[0060] The eighth coordinate system {8}: The origin is located at the intersection of the rotation axis of the second movable joint and the first side surface of the second movable arm 3252 (the side surface of the second movable arm 3252 away from the first movable arm 3251). z The 8-axis is perpendicular to the direction of the second movable joint. Figure 7 The direction shown x 8 axes perpendicular to z 8-axis pointing Figure 7 The direction shown y 8-axis based x 8-axis and z The 8 axes are defined using a right-handed coordinate system. The eighth coordinate system {8} is derived from the seventh coordinate system {7} along... x 7-axis translation L 7. Go around again x 8-axis rotation q 6 + 24.55° - 90°, where, L 7 represents the length of the second movable arm 3252.
[0061] Remote motion center coordinate system { A 2}: The origin is the remote motion center of the second motion arm 320b.z A2 The axis along the end effector 330 of the second moving arm 320b points in the feed direction of the end effector 330. x A2 The axis is perpendicular to the longitudinal section of the linear module 3254 and points towards Figure 7 The direction shown y A2 Axis based x A2 shaft and z A2 The axes are defined using a right-handed coordinate system. Remote motion center coordinate system { A 2} is the eighth coordinate system {8} around x 8-axis rotation -90°, along x A2 Axis translation H 9, along z A2 Axis translation L 9. Go around again z A2 The axis is rotated 90°, where, H 9 represents the distance from the origin of the eighth coordinate system {8} to the 330 axis of the end-effector. L 9 is the projection length of the line segment connecting the origin of the eighth coordinate system {8} and the remote motion center in the direction of the axis 330 of the end device.
[0062] Those skilled in the art will understand that, for example Figure 3 The surgical robot system 300 shown can construct coordinate systems for each motion arm in a manner similar to that described in the above embodiments, including a first coordinate system {1} to an eighth coordinate system {8} and a remote motion center coordinate system { Ai}, Remote motion center coordinate system { Ai} indicates the first i The remote motion center coordinate system of the motion arm.
[0063] In some embodiments, the kinematic models of each motion arm can be constructed based on the DH parameter method or the exponential product representation method. For example, the coordinate systems of each motion arm can be modeled to determine the coordinate systems of each motion arm (e.g., the reference coordinate system of the second motion arm 320b). A b}, Zero coordinate system {0}, First coordinate system {1}, Second coordinate system {2}, Third coordinate system {3}, Fourth coordinate system {4}, Fifth coordinate system {5}, Sixth coordinate system {6}, Seventh coordinate system {7}, Eighth coordinate system {8}, Remote motion center coordinate system { A The kinematic model of the motion arm can be determined based on the transfer of DH parameters between coordinate systems.
[0064] As an example, such as Figure 7 The reference coordinate system in the second moving arm 320b shown { A b}, Zero coordinate system {0}, First coordinate system {1}, Second coordinate system {2}, Third coordinate system {3}, Fourth coordinate system {4}, Fifth coordinate system {5}, Sixth coordinate system {6}, Seventh coordinate system {7}, Eighth coordinate system {8}, Remote motion center coordinate system { A The DH parameters passed between 2} are shown in Table 1: Table 1. DH Parameters of the Second Motion Arm 320b (Length in mm)
[0065] In Table 1, In coordinate system { j -1} The distance of movement in the axial direction, For the coordinate system { j -1} The rotation angle of the shaft, In coordinate system { j}of The distance of movement in the axial direction, For the coordinate system The rotation angle of the axis.
[0066] Those skilled in the art will understand that, for example Figure 3 The DH parameters of the surgical robot system shown are determined based on the specific configuration of each motion arm 320a, 320b, 320c, and 320d, and the DH parameters of each motion arm are slightly different.
[0067] In some embodiments, based on the DH parameters transferred between the coordinate systems of the motion arm, the pose transfer matrix between adjacent coordinate systems can be obtained. For example, coordinate system { j Relative coordinate system { j pose of -1} It can be expressed as shown in formula (1): (1) Based on formula (1), the kinematic model of each moving arm can be expressed as shown in formula (2): (2) in, Indicates the first i The remote motion center coordinate system of the motion arm { A i Relative reference coordinate system {A b The position of}.
[0068] In some embodiments, obtaining the current pose of the control points of the main motion arm may include: obtaining the current joint value of at least one joint of the main motion arm. For example, for Figure 3 The surgical robot system 300 shown can have a main motion arm, which can be a third motion arm 320c. It can obtain the current joint values of the first horizontal arm rotation joint, the second horizontal arm rotation joint, the vertical arm rotation joint, the lifting joint, the oblique arm rotation joint, and the distal motion rotation joint of the main motion arm, respectively. q 1. q 2. q 3. q 4. q 5. q 6.
[0069] In some embodiments, obtaining the current pose of the control point of at least one motion arm may further include: calculating the current pose of the control point of the main motion arm based on the current joint values of at least one joint. In some embodiments, the control point of the main motion arm may be a remote motion center of the main motion arm, and the current pose of the control point of the main motion arm may be the current pose of the remote motion center of the main motion arm. In some embodiments, for example, for Figure 3 The surgical robot system 300 shown may have a main motion arm, which can be a third motion arm 320c. The main motion arm can be based on the current joint values of the first transverse arm rotation joint, second transverse arm rotation joint, vertical arm rotation joint, lifting joint, oblique arm rotation joint, and distal motion rotation joint of the main motion arm. q 1. q 2. q 3. q 4. q 5. q 6, and the coordinate system of the remote motion center of the main motion arm is calculated using formulas (1) and (2) { A 3} Relative reference coordinate system { A b} pose The current pose of the remote motion center of the master arm can be the coordinate system of the remote motion center of the master arm. A 3} Relative reference coordinate system { A b} pose .
[0070] Continue reading Figure 6 In step 603, motion control signals for the control points of the main motion arm are obtained.
[0071] In some embodiments, the motion control signal includes the motion mode of the multiple motion arms and the magnitude of the linear velocity and / or angular velocity.
[0072] In some implementations, the motion mode includes a control point of the master motion arm and a cooperative pose adjustment mode of at least one control point of the slave motion arm. In some embodiments, the cooperative pose adjustment mode includes a cooperative position adjustment mode and / or a cooperative posture adjustment mode.
[0073] In some implementations, the coordinated position adjustment methods include vertical coordinated position adjustment, forward and backward coordinated position adjustment, horizontal coordinated position adjustment, and forward and backward coordinated position adjustment. In some implementations, the coordinated posture adjustment methods include clockwise and counterclockwise coordinated posture adjustment, and upward and downward coordinated posture adjustment. These have been described in detail in the above embodiments and will not be repeated here.
[0074] In some embodiments, the linear velocity can be the translational linear velocity when multiple motion arms coordinate their position adjustment, and the angular velocity can be the rotational angular velocity when multiple motion arms coordinate their attitude adjustment. In some embodiments, the linear velocity and / or angular velocity can be preset.
[0075] Continue reading Figure 6 In step 605, the target pose of the control point of the main motion arm is calculated based on the current pose of the control point of the main motion arm and the motion control signal.
[0076] In some embodiments, the motion control signal includes the motion mode of multiple motion arms and the magnitude of linear velocity and / or angular velocity. The motion mode includes the control point of the master motion arm and the cooperative position adjustment mode and / or cooperative posture adjustment mode of at least one control point of the slave motion arm.
[0077] In some embodiments, method 600 may include: obtaining a position adjustment direction vector of the control point of the main motion arm based on a cooperative position adjustment method; and calculating a target pose of the control point of the main motion arm based on the current pose of the control point of the main motion arm, the position adjustment direction vector, and the magnitude of the linear velocity; and / or obtaining an attitude adjustment direction of the control point of the main motion arm based on a cooperative attitude adjustment method; and calculating a target pose of the control point of the main motion arm based on the current pose of the control point of the main motion arm, the attitude adjustment direction, and the magnitude of the angular velocity.
[0078] In some embodiments, the coordinated position adjustment method includes vertical coordinated position adjustment, forward and backward coordinated position adjustment, left and right coordinated position adjustment, and forward and backward coordinated position adjustment. In some embodiments, the position adjustment direction vector of the control point of the main motion arm may include the control point of the main motion arm in a reference coordinate system (e.g., the reference coordinate system { A bThe position adjustment direction vector is in the control point coordinate system of the main motion arm (e.g., the control point coordinate system of the main motion arm {}). In some embodiments, the position adjustment direction vector can be based on the control point coordinate system of the main motion arm (e.g., the control point coordinate system of the main motion arm {}). A 3) In the reference coordinate system (e.g., reference coordinate system { A b The current pose in the coordinate system of the control point of the main motion arm is obtained by obtaining the longitudinal coordinate axis of the control point coordinate system (e.g., ...). z A3 The direction of the axis in the reference coordinate system can be denoted as This allows us to define the control points of the main motion arm in the reference coordinate system (e.g., the reference coordinate system { A b The position adjustment direction vector in}) Up-down coordinated position adjustment: Multiple moving arms can move along a first axis (e.g., Figure 5 The first axis 541 shown is translated, and the first axis can be the { of the reference coordinate system}. A b}of z Ab An axis can be defined along a reference coordinate system { A b}of z Ab The positive direction of the axis is the upward direction, along the reference coordinate system { A b}of z Ab The negative direction of the axis is the downward direction. The position adjustment direction vector in the upward direction can be expressed as shown in formula (3), and the position adjustment direction vector in the downward direction can be expressed as shown in formula (4): (3) (4) Forward and backward coordinated position adjustment: Multiple moving arms can be positioned along a second axis (e.g., Figure 5 The second axis (542) shown in the figure represents translation. The second axis can be the coordinates of the remote motion center of the main motion arm. A 3} z A3 The axis in the reference coordinate system { A b}of x Ab axis- y Ab The projection onto the axial plane can define the end effector orientation of the main motion arm (i.e., the coordinates of the remote motion center of the main motion arm). A 3} z A3The projection of the axis direction onto the horizontal plane is the forward direction, and the opposite direction is the backward direction. The position adjustment vector of the forward direction can be expressed as shown in formula (5), and the position adjustment vector of the backward direction can be expressed as shown in formula (6). (5) (6) Left-right coordinated position adjustment: Multiple moving arms can move along a third axis (e.g., Figure 5 The third axis (543) shown in the figure is translated. The third axis can be the cross product of the axis of the first axis and the axis of the second axis. The cross product of the up direction and the front direction can be defined as the left direction. The right direction is opposite to the left direction. The position adjustment direction vector of the left direction can be expressed as shown in formula (7). The position adjustment direction vector of the right direction can be expressed as shown in formula (8). (7) (8) Forward and backward coordinated position adjustment: Multiple moving arms can move along a fourth axis (e.g., Figure 5 The fourth axis (544) shown is translated; the fourth axis can be the coordinates of the remote motion center of the main motion arm. A 3} z A3 An axis can define the end effector orientation of the master motion arm (i.e., the coordinates of the master motion arm's remote motion center). A 3} z A3 The forward direction is the axial direction, and the reverse direction is the backward direction. The position adjustment vector of the forward direction can be expressed as shown in formula (9), and the position adjustment vector of the backward direction can be expressed as shown in formula (10). (9) (10) In some embodiments, the coordinated posture adjustment method includes clockwise and counterclockwise coordinated posture adjustment, and pitching and slouching coordinated posture adjustment. The posture adjustment direction of clockwise and counterclockwise coordinated posture adjustment and pitching and slouching coordinated posture adjustment can be defined as: Clockwise and counterclockwise coordinated posture adjustment: Rotation clockwise around the remote motion center of the main motion arm in the vertically upward direction is the clockwise direction, and rotation in the opposite direction is the counterclockwise direction. In some embodiments, the forward position adjustment direction vector can be defined as [-1, 0, 0]. T At that time, the deflection angle ( yaw (0 degrees)
[0079] Upward and downward coordinated posture adjustment: A counter-clockwise rotation to the left of the remote motion center of the main motion arm corresponds to the downward direction, and a rotation in the opposite direction corresponds to the upward direction. In some embodiments, the end effector orientation of the main motion arm (i.e., the coordinates of the remote motion center of the main motion arm) can be defined. A 3} z A3 When the axis direction is in the horizontal plane, the pitch angle ( pch (0 degrees)
[0080] In some embodiments, the control point of the main motion arm includes the remote motion center of the main motion arm, and the pose of the control point of the main motion arm can be represented as the pose of the remote motion center of the main motion arm. Based on the position adjustment direction and / or attitude adjustment direction of the main motion arm, the pose of the remote motion center of the main motion arm can be represented as a translation and rotation transformation as shown in formula (11): (11) in, Indicates translation Displacement, Indicates circling z Axis rotation yaw angle, Indicates circling y Axis rotation pch angle, Given a fixed homogeneous transformation matrix, The linear module of the main motion arm revolves around the axis of the end effector of the main motion arm (i.e., the coordinates of the remote motion center of the main motion arm). A 3} z A3 The roll angle of the axis is determined.
[0081] In some implementations, the roll angle of the linear module of the main motion arm about the axis of the end effector of the active motion arm is 21°. This can be expressed as shown in formula (12): (12) in, Indicates circling z Rotate the axis by -90°. Indicates circling y Rotate the axis by -21°. Indicates circling x The axis rotates 90°.
[0082] In some embodiments, the current pose of the control point of the main motion arm can be obtained based on formula (2). For example, the current pose of the control point of the main motion arm can be obtained based on formula (2). k The current pose of the control point of the main motion arm at any given time can be denoted as: , It can be expressed in matrix form as shown in formula (13): (13) In some embodiments, it can be based on the formula (13) shown k The current pose of the control point of the main motion arm at all times ,get k Position of the control point of the main motion arm at all times Bow angle and pitch angle .
[0083] In some embodiments, the pose adjustment period of the control point of the active arm can be denoted as dt, Based on k The current pose, position adjustment direction vector, and linear velocity of the control point of the active motion arm are calculated at all times. k + dt The target pose of the control point of the main motion arm at any given time. The position adjustment direction vector can be determined based on the definitions in some of the above embodiments, and the position adjustment direction vector can be denoted as... d (For example, d up , d down , d fwd , d bkw , d left , d right , d in , d out The magnitude of the linear velocity can be adjusted based on the position of the main motion arm's control reference point and the direction vector. d The linear velocity for movement and the linear velocity for position adjustment can be preset and can be denoted as... v In some implementations, calculations can be performed based on formula (14). k + dt Target pose of the control point of the main motion arm at any given time: (14) In some embodiments, the pose adjustment period of the control point of the active arm can be denoted as dt , can be based on k The current pose, attitude adjustment direction, and angular velocity of the control point of the main motion arm are calculated at all times. k + dtThe target pose of the control point of the main motion arm at any given time. The attitude adjustment direction can be determined based on the definitions in some of the above embodiments, and the angular velocity can be the angular velocity of the control point of the main motion arm rotating based on the attitude adjustment direction. The magnitude of the angular velocity can be preset and can be denoted as... .
[0084] In some embodiments, when coordinating clockwise and counterclockwise posture adjustments, the formula (15) can be used to calculate... k + dt Target pose of the control point of the main motion arm at any given time: (15) In some embodiments, when adjusting the tilting and lowering posture, the formula (16) can be used to calculate... k + dt Target pose of the control point of the main motion arm at any given time: (16) Continue reading Figure 1 In step 103, the target pose of the control point of at least one slave arm is determined based on the target pose of the control point of the master arm and the pose relationship between the control point of the master arm and the control point of at least one slave arm.
[0085] In some embodiments, the control point of the master arm includes the remote motion center of the master arm, and the control point of at least one slave arm includes at least one remote motion center of the slave arm. The target pose of the control point of the master arm can be the target pose of the remote motion center of the master arm, and the target pose of at least one slave arm can be the target pose of the remote motion center of at least one slave arm.
[0086] In some embodiments, such as Figure 3 The surgical robot system 300 shown includes a main motion arm and at least one slave motion arm connected to a connecting device (e.g., Figure 4 After the surgical connection device 400 shown is connected, the pose of at least one control point of the slave arm is determined based on the pose of the control point of the master arm and the pose relationship between the control point of the master arm and the control point of at least one slave arm. In some embodiments, such as Figure 3The surgical robot system 300 shown, during the preoperative positioning phase (when the main motion arm and at least one slave motion arm are not connected to the connecting device), can constrain the movement of multiple motion arms based on the pose relationship between the control points of the main motion arm and the control points of at least one slave motion arm, thereby achieving coordinated adjustment of multiple motion arms. Therefore, for the pose adjustment of multiple positioning arms during the preoperative positioning phase and the surgical procedure, the target pose of the control point of at least one slave motion arm can be determined based on the target pose of the control point of the main motion arm and the pose relationship between the control point of the main motion arm and the control point of at least one slave motion arm.
[0087] In some embodiments, the pose relationship between the control points of the master arm and at least one slave arm is based on the connection means for connecting to the master arm and at least one slave arm (e.g., ...). Figure 4 The configuration of the surgical connection device 400 shown is determined.
[0088] In some embodiments, for such Figure 3 The surgical robot system shown may include a master motion arm, which may include a third motion arm 320c, and at least one slave motion arm, which may include a first motion arm 320a, a second motion arm 320b, and a fourth motion arm 320d. The target pose of the control point of at least one slave motion arm may be expressed as shown in formula (17): (17) in, For the first i A single moving arm (e.g., such as) Figure 3 The target pose of the control points of the first moving arm 320a, the second moving arm 320b, and the fourth moving arm 320d shown in the figure. The main moving arm (e.g., such as) Figure 3 The target pose of the control point of the third motion arm 320c shown is as follows. The control point of the main moving arm and the first i The pose relationship of the control points of the main motion arm. In some embodiments, the target pose of the control points of the main motion arm. It can be obtained based on methods similar to those described in some of the above embodiments, for example, it can be obtained based on formula (14), formula (15), or formula (16). k + dt Target pose of the control point of the main motion arm at all times .
[0089] Continue reading Figure 1 In step 105, based on the target pose of the control point of the main motion arm, the joint control signal of at least one joint of the main motion arm is determined.
[0090] In some embodiments, the joint control signal of at least one joint of the main motion arm includes the target joint value of at least one joint of the main motion arm. Determining the joint control signal of at least one joint of the main motion arm includes: calculating the target joint value of at least one joint of the main motion arm based on the target pose of the control point of the main motion arm and the inverse kinematics model of the main motion arm.
[0091] This disclosure also provides a method for solving the joint values of multiple joints of a motion arm based on an inverse kinematics model of the motion arm. In some embodiments, the inverse kinematics model of the motion arm can be solved based on a geometric method to obtain the joint values of multiple joints of the motion arm.
[0092] For example, for Figure 3 The surgical robot system 300 shown has each motion arm (e.g., Figure 3 The first moving arm 320a, the second moving arm 320b, the third moving arm 320c, and the fourth moving arm 320d shown each include at least one arm body and at least one joint connecting at least one arm body. At least one arm body includes a first horizontal arm 321, a second horizontal arm 322, a vertical arm 323, a diagonal arm 324, and a telecentric motion mechanism 325, distributed sequentially from proximal to distal. At least one joint includes a first horizontal arm rotation joint 3211, a second horizontal arm rotation joint, a vertical arm rotation joint, a lifting joint, a diagonal arm rotation joint, and a telecentric motion rotation joint. The proximal end of the first horizontal arm 321 is rotatably connected to the gimbal 314 via the first horizontal arm rotation joint 3211. The second horizontal arm 320b, the second horizontal arm 320c, the third horizontal arm 320d, the fourth horizontal arm 320d, and the fifth horizontal arm 320d are connected to the gimbal 314 via the first horizontal arm rotation joint 3211. The proximal end of the first horizontal arm 321 is rotatably connected to the distal end of the second horizontal arm 322 via a second horizontal arm rotation joint. The proximal end of the vertical arm 323 is rotatably connected to the distal end of the second horizontal arm 322 via a vertical arm rotation joint. The rotation axes of the first horizontal arm rotation joint 321, the second horizontal arm rotation joint, and the vertical arm rotation joint are parallel. A lifting joint is provided in the vertical arm 323 to realize the vertical arm 323's lifting and lowering movement along the longitudinal direction. The proximal end of the inclined arm 324 is rotatably connected to the distal end of the vertical arm 323 via an inclined arm rotation joint, and the rotation axis of the vertical arm rotation joint is at an angle relative to the longitudinal direction. The proximal end of the telecentric motion mechanism 325 is rotatably connected to the distal end of the inclined arm 324 via a telecentric motion rotation joint.
[0093] In some embodiments, for the first i A single moving arm (e.g., Figure 3 (Any one of the following moving arms shown: first moving arm 320a, second moving arm 320b, third moving arm 320c, and fourth moving arm 320d) i The target pose of the control point of the first arm can be the first... i The target pose of the remote motion center of each arm can be expressed as shown in formula (18): (18) In some embodiments, it may be based on the first i The remote motion center coordinate system of the motion arm { A i} posture x Projection of direction onto the vertical plane x z Calculate the first i Joint values of the diagonal rotation joint of a single moving arm q 5 can be expressed as shown in formula (19): (19) In some embodiments, it can be in the first i Using the remote motion center of the moving arm as the endpoint, draw three rays upward along the inclined arm 324, and in the vertical direction (e.g., in the reference coordinate system { A b}of z Ab (Axial direction) upwards, in the opposite direction of the axis of the end device 330, and at a unit height, a horizontal plane intersects with the three rays to obtain three intersection points, the first... i The remote motion center of the first moving arm and its three intersection points form a triangular pyramid. Based on the angular relationships between the lines and planes, and between the planes themselves, the angle of the first moving arm can be calculated. i Joint values of the distal rotation joint of a single moving arm q 6 can be expressed as shown in formula (20): (20) In some embodiments, based on the angular relationships between lines and planes, and between planes in a triangular pyramid, the first... i The direction vector of the downward direction of the inclined arm 324 of the motion arm. v 45 .
[0094] In some embodiments, if , v 45 This can be expressed as shown in formula (21): (twenty one) like , v 45 This can be expressed as shown in formula (22): (twenty two) in, b, sA, cA These can be represented as shown in formulas (23), (24), and (25): (twenty three) (twenty four) (25) In some embodiments, the first i The remote motion center position of each motion arm is along the direction vector of the inclined arm. v 45 Reverse movement distance ( L 5 +L 7) After that, we can get the first i Position of the origin of the fourth coordinate system {4} in the moving arm x 4. y 4. z 4, can be expressed as shown in formula (26): (26) In some embodiments, it can be based on z 4. Obtain the first i Joint values of the lifting joint of the arm q 4 can be expressed as shown in formula (27): (27) In some embodiments, it may be based on the first i The horizontal position of the fourth coordinate system {4} in the moving arm ( x 4. y 4) The horizontal position and direction of the first coordinate system {1} are determined using the first coordinate system {1}. i The projections of the rotation axes of the first horizontal arm rotation joint 3211, the second horizontal arm rotation joint, and the vertical arm rotation joint of the moving arm onto the horizontal plane form a triangle (the three sides of the triangle are respectively the lengths of the first horizontal arm rotation joint 3211, the second horizontal arm rotation joint, and the vertical arm rotation joint). i The length of the first horizontal arm 321 of the moving arm, the length of the... i The length of the second horizontal arm of the first moving arm is 322. i (Calculate the horizontal distance between the origins of the first coordinate system {1} and the fourth coordinate system {4} in the first moving arm). i Joint values of the first transverse arm rotation joint 3211 of the moving arm q 1. No. i Joint values of the second transverse arm rotation joint of the motion arm q 2 and the i Joint values of the vertical arm rotation joint of the motion arm q 3.
[0095] For example, with Figure 3 or Figure 7 Taking the second positioning arm 320b as an example, the joint values of the first horizontal arm rotation joint 3211 of the second positioning arm 320b are... q 1. Joint values of the second horizontal arm rotation joint of the second positioning arm 320b q2. Joint values of the vertical arm rotation joint of the second positioning arm 320b q 3 can be calculated based on formulas (28)-(32): (28) (29) (30) (31) (32) L 0 represents the rotation axis of the first horizontal arm rotary joint 3211 of the second positioning arm 320b relative to the reference coordinate system. A b}of z The distance between the 0 axis, L 1 represents the length of the first horizontal arm 321 of the second positioning arm 320b. L 2 represents the length of the second horizontal arm 322 of the second positioning arm 320b.
[0096] In some embodiments, the target pose of the control point of the main motion arm can be obtained based on formula (14), formula (15), or formula (16). Based on the target pose of the control point of the main motion arm and the inverse kinematics model of the main motion arm, the inverse kinematics model of the main motion arm is solved by the methods in some of the embodiments above to obtain the target joint value of at least one joint of the main motion arm, such as the joint values of the first horizontal arm rotation joint, the second horizontal arm rotation joint, the vertical arm rotation joint, the lifting joint, the oblique arm rotation joint, and the centripetal motion rotation joint of the main motion arm.
[0097] Continue reading Figure 1 In step 107, based on the joint control signal of at least one joint of the master motion arm and the target pose of the control point of at least one slave motion arm, the joint control signal of at least one joint of the slave motion arm is determined, such that the control point of the master motion arm and the control point of the slave motion arm maintain a pose relationship.
[0098] In some embodiments, the joint control signal of at least one joint of at least one slave arm includes the target joint value of at least one joint of at least one slave arm, and determining the joint control signal of at least one joint of at least one slave arm includes: calculating the target joint value of at least one joint of at least one slave arm based on the target joint value of at least one joint of the master slave arm, the target pose of the control point of at least one slave arm, and the inverse kinematics model of at least one slave arm.
[0099] In some embodiments, the target pose of at least one control point of the slave arm can be obtained based on formula (17). Based on the target pose of the control point of at least one slave arm and the inverse kinematics model of at least one slave arm, the inverse kinematics model of at least one slave arm can be solved by the methods in some of the embodiments above to obtain the target joint values of at least one joint of at least one slave arm, such as the joint values of the first horizontal arm rotation joint, the second horizontal arm rotation joint, the vertical arm rotation joint, the lifting joint, the oblique arm rotation joint and the centripetal motion rotation joint of at least one slave arm.
[0100] In one implementation, at least one of the moving arms can be positioned around the axis of the end effector 330 (e.g., the first...). i The remote motion center coordinate system of the motion arm { Ai}of z Ai The axis rotates, thus obtaining at least one target pose from the control point of the moving arm based on formula (17). It is not directly used to inversely calculate the joint value of at least one joint of the corresponding moving arm.
[0101] In some embodiments, the target pose from at least one control point of the motion arm can be represented in matrix form as shown in equation (33): (33) in, The matrix only represents the first i The remote motion center coordinate system of the motion arm { Ai}of z Ai The axis in the reference coordinate system { A b} direction And represents the first i The remote motion center coordinate system of the motion arm { Ai In the reference coordinate system { A b The position in the middle It is fixed, the first i The remote motion center coordinate system of the motion arm { Ai}of x Ai The axis in the reference coordinate system { A b Direction in} and the i The remote motion center coordinate system of the motion arm { Ai}of y Ai The axis in the reference coordinate system { A b Direction in} There are multiple solutions. Therefore, in some embodiments, the solution can be based on the joint control signal of at least one joint of the main motion arm, and the... i The remote motion center coordinate system of the motion arm { Ai}of z Ai The axis in the reference coordinate system { A b Direction in} , No. i The remote motion center coordinate system of the motion arm { Ai In the reference coordinate system { A b} position And at least one inverse kinematic model of the motion arm, calculate the target joint value of at least one joint of at least one motion arm.
[0102] In some embodiments, at least one joint of the master motion arm includes at least one feature joint, and at least one joint of at least one slave motion arm includes at least one associated joint, the at least one associated joint being associated with at least one feature joint. Determining the joint control signal of at least one joint of at least one slave motion arm includes: obtaining a target joint value for at least one feature joint of the master motion arm; calculating a target joint value for at least one associated joint based on the target joint value of at least one feature joint and the association model; and calculating target joint values for other joints of at least one slave motion arm based on the target joint values of at least one associated joint, the target pose of a control point of at least one slave motion arm, and the inverse kinematics model of at least one slave motion arm.
[0103] In some implementations, the association model includes an interpolation model, in which the target joint value of at least one associated joint is calculated based on the target joint value of at least one feature joint, the maximum limit joint value of at least one feature joint, and the minimum limit joint value.
[0104] In some implementations, the interpolation model includes a linear interpolation model, for example, a linear interpolation model can be expressed as shown in equation (34): (34) in, For the moving arm i The target joint value of the associated joint, The target joint values of the characteristic joints of the main moving arm. The maximum limit joint value of the characteristic joints of the main moving arm. The minimum limiting joint values of the characteristic joints of the main moving arm. , These are model parameters. In some embodiments, , , , It can be pre-calibrated.
[0105] In some embodiments, each motion arm includes at least one arm body and at least one joint for connecting at least one arm body. The at least one arm body of each motion arm includes a first horizontal arm, a second horizontal arm, a vertical arm, a diagonal arm, and a telecentric motion mechanism distributed sequentially from the proximal end to the distal end. The at least one joint includes a first horizontal arm rotation joint, a second horizontal arm rotation joint, a vertical arm rotation joint, a lifting joint, a diagonal arm rotation joint, and a telecentric motion rotation joint. The proximal end of the first horizontal arm is rotatably connected to the gimbal via the first horizontal arm rotation joint. The proximal end of the second horizontal arm is rotatably connected to the distal end of the first horizontal arm via the second horizontal arm rotation joint. The proximal end of the vertical arm is rotatably connected to the distal end of the second horizontal arm via the vertical arm rotation joint. The rotation axes of the first horizontal arm rotation joint, the second horizontal arm rotation joint, and the vertical arm rotation joint are parallel. The lifting joint is disposed in the vertical arm to realize the vertical arm's vertical lifting movement. The proximal end of the diagonal arm is rotatably connected to the distal end of the vertical arm via the diagonal arm rotation joint, and the rotation axis of the vertical arm rotation joint is at an angle relative to the longitudinal direction. The proximal end of the telecentric motion mechanism is rotatably connected to the distal end of the diagonal arm via the telecentric motion rotation joint. In some embodiments, at least one characteristic joint of the master motion arm may include a telecentric rotational joint of the master motion arm, and at least one associated joint of at least one slave motion arm may include at least one oblique rotational joint of the slave motion arm.
[0106] For example, for Figure 3 The surgical robot system shown may include a master arm and three slave arms. For example, the third arm 320c is the master arm, and the first arm 320a, the second arm 320b, and the fourth arm 320d are the three slave arms. At least one characteristic joint of the master arm may include a distal rotational joint of the master arm. i At least one associated joint from the moving arm may include the first i A slant arm rotation joint of the master arm. In some embodiments, the target joint value of the distal slant arm rotation joint of the master arm can be denoted as... Based on the linear interpolation model shown in Equation (35), multiple target joint values from the oblique arm rotation joint of the motion arm can be calculated. : (35) in, The maximum limit joint value of the distal rotational joint of the main moving arm. The minimum limit joint value of the distal rotation joint of the main moving arm. , These are the model parameters.
[0107] In some embodiments, simulation models can be used to... , , , Pre-calibration is performed to obtain the linear interpolation model shown in formula (35). The linear interpolation model shown in formula (35) ensures that the mechanical structures below the vertical arms of the multiple motion arms do not collide when the multiple motion arms are adjusted within the pitch range.
[0108] In some embodiments, it can be based on the motion arm i Remote motion center coordinate system { Ai}of z Ai The axis in the reference coordinate system { A b Direction in} From the moving arm i Remote motion center coordinate system { Ai In the reference coordinate system { A b} position And from the moving arm i Target joint values of the diagonal arm rotation joint According to the methods in some of the above embodiments, the motion arm i Solving the inverse kinematics model yields the results from the motion arm. i The target joint values for the remaining joints (first transverse arm rotation joint, second transverse arm rotation joint, vertical arm rotation joint, lifting joint, and telecentric rotation joint).
[0109] In some embodiments, method 100 may further include: performing collision detection on the main motion arm and at least one slave motion arm based on target joint values of at least one joint of the main motion arm and at least one slave motion arm.
[0110] In some embodiments, collision detection of the main motion arm and at least one slave motion arm based on the target joint values of at least one joint of the main motion arm and at least one slave motion arm may include: calculating the end point positions of at least one arm body of the main motion arm and at least one arm body of the slave motion arm based on the target joint values of at least one joint of the main motion arm and at least one arm body of the slave motion arm; calculating the minimum distance between the arm bodies based on the end point positions; and determining that there is no collision risk between the arm bodies based on the minimum distance between the arm bodies being greater than the collision distance; or determining that there is a collision risk between the arm bodies based on the minimum distance between the arm bodies not being greater than the collision distance.
[0111] In some implementations, based on the end point positions of at least one arm body of the main motion arm and at least one arm body of the slave motion arm, the arm body can be regarded as a line segment. The problem of finding the minimum distance between the arm bodies is transformed into finding the shortest distance between line segments. Then, the minimum distance between the arm bodies can be calculated using the spatial line segment shortest distance algorithm to determine whether the arm bodies have collided.
[0112] Figure 8 A schematic diagram illustrating the shortest distance between two line segments in space according to some embodiments of this disclosure is shown. For example... Figure 8 As shown, for line segments in space l 1. l 2, can be remembered v 1. v 2 are line segments l 1. l 2. Direction vector, v 1. v 2 can be expressed as shown in formulas (36) and (37): (36) (37) in, P 1. P 2 is a line segment l The endpoint position of 1 Q 1. Q 2 is a line segment l The endpoint position of 2.
[0113] line segment l 1. l Point 2 P , Q This can be expressed as shown in formulas (38) and (39): (38) (39) in, .
[0114] In some embodiments, the line segment can be obtained by solving a constrained optimization problem as shown in equation (40). l 1. l The shortest distance between 2: (40) In some embodiments, the minimum value can be calculated from the minimum condition. , It can be expressed as shown in formulas (41) and (42): (41) (42) In some embodiments, if the following conditions are met Then the line segment l 1. l The shortest distance between 2 This can be expressed as shown in formula (43): (43) In some embodiments, if not satisfied The endpoints can be calculated separately. P 1 to line segment l 2 Shortest distance d 1. Endpoint P 2 to line segment l 2 Shortest distance d 2. Endpoint Q 1 to line segment l 1 Shortest distance d 3. Endpoints Q 2 to line segment l 1 Shortest distance d 4, Take the minimum value among the four, line segment l 1. l The shortest distance between 2 This can be expressed as shown in formula (44): (44) Figure 9 This diagram illustrates the shortest distance from a point to a line segment according to some embodiments of the present disclosure. For example... Figure 9 As shown, line segment l Points on P This can be expressed as shown in formula (45): (45) in, , , P 1. P 2 is a line segment l The endpoint position.
[0115] In some embodiments, the point can be obtained by solving a constrained optimization problem as shown in equation (46). P 0 and line segment l Shortest distance between: (46) In some embodiments, the minimum value can be calculated from the minimum condition. It can be expressed as shown in formula (47): (47) In some embodiments, if the following conditions are met Then point P 0 and line segment l shortest distance between This can be expressed as shown in formula (48): (48) In some embodiments, if not satisfied Then point P 0 and line segment l shortest distance between This can be expressed as shown in formula (49): (49) In some embodiments, the minimum distance between the arms can be obtained based on some of the formulas in formulas (36)-(49) in some of the above embodiments. When the minimum distance between the arms and the body When formula (50) is satisfied, there is a risk of collision between the arms; otherwise, there is no risk of collision between the arms. (50) in, W This represents the collision distance.
[0116] In some embodiments, the target joint value of the distal rotational joint of the main motion arm in the above embodiments and the linear interpolation model shown in formula (35) can be used to calculate the first... i The target joint value is derived from the diagonal rotation joint of the motion arm. Since the linear interpolation model shown in formula (35) avoids collisions between the mechanical structures below the vertical arms of the multiple motion arms, it can ensure that the mechanical structures below the vertical arms of the multiple motion arms do not collide when the multiple motion arms are adjusted within the pitch range. Therefore, in some embodiments, collision detection can be mainly performed on the first horizontal arm, the second horizontal arm, and the vertical arm of the multiple arms, which can reduce the amount of computation and improve the efficiency of collision detection. Those skilled in the art will understand that when performing collision detection, the arms that will definitely not collide with each other can be excluded from the detection object, so that it is not necessary to perform collision detection on all the arms on the multiple motion arms, which can further reduce the amount of computation and improve the efficiency of collision detection.
[0117] In some embodiments, method 100 further includes determining a drive control signal for at least one joint based on the absence of collision risk between the master motion arm and at least one slave motion arm.
[0118] In some embodiments, at least one joint of the master motion arm and at least one joint of the slave motion arm each include at least one joint motor. The method 100 further includes: determining a target joint speed of at least one joint based on target joint values of at least one joint of the master motion arm and at least one joint of the slave motion arm; and determining a drive control signal for at least one joint based on the target joint values and the target joint speed, so as to drive at least one joint motor based on the drive control signal.
[0119] In some embodiments, method 100 may further include performing a response operation based on the risk of collision between the master motion arm and at least some slave motion arms. In some embodiments, the response operation includes indicating collision information. Collision handling may be performed based on the collision information, for example, stopping pose adjustment of multiple positioning arms to avoid accidents.
[0120] In some embodiments of this disclosure, a computer device is also provided, including a memory and a processor. The memory may be used to store at least one instruction, and the processor is coupled to the memory for executing the at least one instruction to perform some or all of the steps in the method of this disclosure, such as... Figure 1 Some or all of the steps in the disclosed method 100, or as... Figure 6 Some or all of the steps in the method 600 disclosed herein.
[0121] Figure 10 A schematic block diagram of a computer device 1000 according to some embodiments of the present disclosure is shown. See also Figure 10 The computer device 1000 may include a central processing unit (CPU) 1001, a system memory 1004 including random access memory (RAM) 1002 and read-only memory (ROM) 1003, and a system bus 1005 connecting the various components. The computer device 1000 may also include an input / output system and a mass storage device 1007 for storing an operating system 1012, application programs 1013, and other program modules 1014. The input / output system includes an input / output controller 1006 primarily consisting of a display 1008 and input devices 1009.
[0122] Mass storage device 1007 is connected to central processing unit 1001 via a mass storage controller (not shown) connected to system bus 1005. Mass storage device 1007 or computer-readable media provides non-volatile storage for computer devices. Mass storage device 1007 may include computer-readable media (not shown) such as hard disk or compact disc read-only memory (CD-ROM) drives.
[0123] Without loss of generality, computer-readable media can include computer storage media and communication media. Computer storage media include volatile and non-volatile, removable and non-removable media implemented using any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media include RAM, ROM, flash memory or other solid-state storage technologies, CD-ROM, or other optical storage, magnetic tape cassettes, magnetic tape, disk storage, or other magnetic storage devices. Of course, those skilled in the art will recognize that computer storage media are not limited to the above-mentioned types. The aforementioned system memories and mass storage devices can be collectively referred to as memory.
[0124] Computer device 1000 can be connected to network 1011 via network interface unit 1010 connected to system bus 1005. System memory 1004 or mass storage device 1007 is also used to store one or more instructions. Central processing unit 1001 implements all or part of the steps of the methods in some embodiments of this disclosure by executing the one or more instructions, for example, Figure 1 Some or all of the steps in the disclosed method 100, or as... Figure 6 Some or all of the steps in the method 600 disclosed herein.
[0125] In some embodiments of this disclosure, a computer-readable storage medium is also provided, storing at least one instruction that is executed by a processor to cause a computer to perform some or all of the steps in the methods of some embodiments of this disclosure, such as... Figure 1 Some or all of the steps in the disclosed method 100, or as... Figure 6 Some or all of the steps in the method 600 disclosed herein. Examples of computer-readable storage media include memory for computer programs (instructions), such as read-only memory (ROM), random access memory (RAM), compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage devices.
[0126] Note that the above are merely exemplary embodiments and technical principles of this disclosure. Those skilled in the art should understand that this disclosure is not limited to the specific embodiments described herein, and various obvious changes, readjustments, and substitutions can be made without departing from the scope of protection of this disclosure. Therefore, although this disclosure has been described in detail through the above embodiments, this disclosure is not limited to the above embodiments, and may include many other equivalent embodiments without departing from the concept of this disclosure, the scope of which is determined by the scope of the appended claims.
Claims
1. A motion control method for multiple motion arms, characterized in that, The plurality of moving arms includes a master moving arm and at least one slave moving arm, each of the plurality of moving arms including at least one arm body and at least one joint for connecting the at least one arm body, the method comprising: Determine the target pose of the control points of the main motion arm; Based on the target pose of the control point of the master motion arm and the pose relationship between the control point of the master motion arm and the control point of the at least one slave motion arm, the target pose of the control point of the at least one slave motion arm is determined. Based on the target pose of the control points of the main motion arm, determine the joint control signal of at least one joint of the main motion arm; and Based on the joint control signals of at least one joint of the master motion arm and the target pose of the control point of the at least one slave motion arm, the joint control signals of at least one joint of the at least one slave motion arm are determined, such that the pose relationship is maintained between the control point of the master motion arm and the control point of the at least one slave motion arm.
2. The method according to claim 1, characterized in that, Determining the target pose of the control points of the main motion arm includes: Obtain the current pose of the control points of the main motion arm; Obtain motion control signals for the control points of the main motion arm; Based on the current pose of the control point of the main motion arm and the motion control signal, the target pose of the control point of the main motion arm is calculated.
3. The method according to claim 2, characterized in that, Obtaining the current pose of the control point of the main motion arm includes: Obtain the current joint value of at least one joint of the main motion arm; and Based on the current joint values, calculate the current pose of the control points of the main motion arm.
4. The method according to claim 2, characterized in that, Also includes: The motion control signal includes the motion mode of the plurality of motion arms and the magnitude of linear velocity and / or angular velocity. The motion mode includes the control point of the main motion arm and the coordinated position adjustment mode and / or coordinated posture adjustment mode of the control point of at least one slave motion arm.
5. The method according to claim 4, characterized in that, The method includes: Based on the aforementioned coordinated position adjustment method, the position adjustment direction vector of the control point of the main motion arm is obtained; and Based on the current pose of the control point of the main motion arm, the position adjustment direction vector, and the magnitude of the linear velocity, calculate the target pose of the control point of the main motion arm; and / or Based on the aforementioned coordinated posture adjustment method, the posture adjustment direction of the control point of the main motion arm is obtained; and The target pose of the control point of the main motion arm is calculated based on the current pose of the control point of the main motion arm, the attitude adjustment direction, and the magnitude of the angular velocity.
6. The method according to claim 2, characterized in that, The pose relationship between the control points of the primary motion arm and the control points of the at least one secondary motion arm is determined based on the configuration of the connecting device used to connect with the primary motion arm and the at least one secondary motion arm.
7. The method according to claim 1, characterized in that, The joint control signal of at least one joint of the main motion arm includes the target joint value of at least one joint of the main motion arm, and the joint control signal of at least one joint of at least one slave motion arm includes the target joint value of at least one joint of at least one slave motion arm. Determining the joint control signal for at least one joint of the main motion arm includes: Based on the target pose of the control points of the main motion arm and the inverse kinematics model of the main motion arm, the target joint value of at least one joint of the main motion arm is calculated. Determining the joint control signal of at least one joint from the at least one moving arm includes: Based on the target joint values of at least one joint of the master motion arm, the target pose of the control point of the at least one slave motion arm, and the inverse kinematics model of the at least one slave motion arm, the target joint values of at least one joint of the at least one slave motion arm are calculated.
8. The method according to claim 7, characterized in that, At least one joint of the primary motion arm includes at least one feature joint, and at least one joint of the at least one secondary motion arm includes at least one associated joint, the at least one associated joint being associated with the at least one feature joint; Determining the joint control signal of at least one joint from the at least one moving arm includes: Obtain the target joint value of at least one characteristic joint of the main motion arm; Based on the target joint values of the at least one characteristic joint and the association model, calculate the target joint values of the at least one associated joint; and Based on the target joint values of the at least one associated joint, the target pose of the control point of the at least one slave arm, and the inverse kinematics model of the at least one slave arm, the target joint values of the other joints of the at least one slave arm are calculated.
9. The method according to claim 8, characterized in that, The association model includes an interpolation model, wherein the target joint value of the at least one associated joint is calculated based on the target joint value of the at least one feature joint, the maximum limit joint value of the at least one feature joint, and the minimum limit joint value of the at least one feature joint.
10. The method according to claim 9, characterized in that, The interpolation model includes a linear interpolation model.
11. The method according to claim 8, characterized in that, At least one arm body of each motion arm includes a first horizontal arm, a second horizontal arm, a vertical arm, an oblique arm and a telecentric motion mechanism distributed sequentially from the proximal end to the distal end, and at least one joint includes a first horizontal arm rotation joint, a second horizontal arm rotation joint, a vertical arm rotation joint, a lifting joint, an oblique arm rotation joint and a telecentric motion rotation joint. The proximal end of the first horizontal arm is rotatably connected to the gimbal via a first horizontal arm rotation joint. The proximal end of the second horizontal arm is rotatably connected to the distal end of the first horizontal arm via a second horizontal arm rotation joint. The proximal end of the vertical arm is rotatably connected to the distal end of the second horizontal arm via a vertical arm rotation joint. The rotation axes of the first horizontal arm rotation joint, the second horizontal arm rotation joint, and the vertical arm rotation joint are parallel. The lifting joint is disposed in the vertical arm to realize the vertical arm's lifting and lowering movement along the longitudinal direction. The proximal end of the inclined arm is rotatably connected to the distal end of the vertical arm via an inclined arm rotation joint, and the rotation axis of the vertical arm rotation joint is at an angle relative to the longitudinal direction. The proximal end of the telecentric motion mechanism is rotatably connected to the distal end of the inclined arm via a telecentric motion rotation joint.
12. The method according to claim 11, characterized in that, The at least one characteristic joint of the main motion arm includes a telecentric rotational joint of the main motion arm; The at least one associated joint of the at least one actuator arm includes the at least one oblique arm rotation joint of the at least one actuator arm.
13. The method according to claim 7, characterized in that, The method further includes: Collision detection is performed on the main motion arm and the at least one slave motion arm based on the target joint values of at least one joint of the main motion arm and the at least one slave motion arm; Based on the absence of collision risk between the primary motion arm and at least one secondary motion arm, a drive control signal for at least one joint is determined; and Based on the risk of collision between the main motion arm and at least some of the slave motion arms, a response operation is performed.
14. The method according to claim 13, characterized in that, Collision detection of the primary motion arm and the at least one secondary motion arm, based on the target joint values of at least one joint of the primary motion arm and the at least one secondary motion arm, includes: Based on the target joint values of at least one joint of the main motion arm and at least one slave motion arm, calculate the end point positions of at least one arm body of the main motion arm and at least one arm body of the at least one slave motion arm. Based on the positions of the arm endpoints, calculate the minimum distance between the arms; and Based on the fact that the minimum distance between the arms is greater than the collision distance, it is determined that there is no risk of collision between the arms; or Based on the fact that the minimum distance between the arms is no greater than the collision distance, it is determined that there is a risk of collision between the arms.
15. The method according to claim 13, characterized in that, At least one joint of the main moving arm and at least one joint of the slave moving arm each include at least one joint motor, and the method further includes: Based on the target joint values of at least one joint of the primary motion arm and at least one joint of the at least one secondary motion arm, a target joint velocity of at least one joint is determined; and Based on the target joint value and the target joint speed, a drive control signal for at least one joint is determined to drive at least one joint motor based on the drive control signal.
16. The method according to claim 13, characterized in that, The response operation includes indicating collision information.
17. The method according to any one of claims 1-16, characterized in that, The control point of the master motion arm includes the remote motion center of the master motion arm, and / or, the control point of the at least one slave motion arm includes the remote motion center of the at least one slave motion arm.
18. A robot system, characterized in that, include: Multiple motion arms, including a master motion arm and at least one slave motion arm, each of the multiple motion arms including at least one arm body and at least one joint for connecting the at least one arm body; as well as A control device, connected to the plurality of motion arms, is used to perform the method as described in any one of claims 1-17.
19. A computer device, characterized in that, The computer device includes: Memory for storing at least one instruction; and A processor, coupled to the memory and configured to execute the at least one instruction to perform the method as described in any one of claims 1-17.
20. A computer-readable storage medium for storing at least one instruction, characterized in that, When the at least one instruction is executed by the computer device, it causes the computer to perform the method as described in any one of claims 1-17.