Readable storage medium, surgical robot system, and adjustment system
By using readable storage media in the surgical robot system to achieve automatic posture adjustment of the robotic arm or support device, the problem of tedious and time-consuming adjustment of body position and robotic arm posture during surgery is solved, the surgical efficiency and safety are improved, and the risk of robotic arm collision is reduced.
Patent Information
- Application Number
- CN202110614235.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-06-02
- Publication Date
- 2025-09-30
- Estimated Expiration
- 2041-06-02
AI Technical Summary
During surgery, when the preoperative drilling position is not ideal or the patient's position changes, the existing surgical robot system needs to interrupt the surgical process to adjust the patient's position and the robotic arm posture. The operation is cumbersome and time-consuming, and there is a risk of robotic arm collision.
By storing a computer program in a readable storage medium, the target position of the robotic arm or support device can be automatically adjusted, the motion trajectory can be planned using a preset objective function and interpolation algorithm, and the robotic arm or support device can be controlled to perform corresponding movements to avoid withdrawing the device.
Without withdrawing the instrument, the patient's position and the robotic arm's posture can be automatically adjusted, improving surgical efficiency, reducing preoperative preparation time, and lowering the probability of robotic arm collision.
Smart Images

Figure CN115429432B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robotics technology, and in particular to a readable storage medium, a surgical robot system, and an adjustment system. Background Art
[0002] At present, all industries are in the general trend of electronicization and intelligence, especially in the operating room. A large number of semi-automatic and fully automatic electromechanical equipment are gradually being applied to various surgical scenarios. For example, traditional handheld surgical instruments are gradually being replaced by surgical robots.
[0003] Surgical robots are designed to perform complex surgical procedures with minimally invasive precision, overcoming the limitations of the human eye and employing stereoscopic imaging technology to provide the operator with a clearer view of internal organs. Robotic arms can rotate 360 degrees, move, swing, and grip without shaking in areas previously inaccessible to human hands, making them a popular choice for both doctors and patients. As a high-end medical device, they are now widely used in various clinical procedures. However, during surgery, if the preoperative puncture site is not ideal, collisions between adjacent robotic arms can occur, significantly impacting the surgical process. Alternatively, due to the patient's position, the lesion may be obscured by other tissues during surgery, making it impossible to continue the procedure. Alternatively, if a new lesion is discovered during surgery, requiring surgical intervention at a new location, the user must interrupt the procedure and remove the surgical instruments. The robotic arms must then be disengaged from the cannula at the puncture site, completely separating the patient from the robot. The patient can then be repositioned and the preoperative preparations for the robot can be continued before the procedure can resume. This process is not only time-consuming, but also very cumbersome to operate, and requires a high level of proficiency from medical staff. Summary of the Invention
[0004] The object of the present invention is to provide a readable storage medium, a surgical robot system and an adjustment system, which can achieve the purpose of automatically adjusting the patient's position and the posture of the robotic arm without withdrawing the instrument.
[0005] To achieve the above-mentioned object, the present invention provides a readable storage medium for use in a surgical robot system, wherein the readable storage medium stores a computer program. When the computer program is executed by a processor, the following steps are implemented:
[0006] Receive adjustment instructions from users;
[0007] Obtaining a target position of the robotic arm or a target position of the supporting device;
[0008] According to the target posture of the robotic arm, controlling the robotic arm to perform adjustment movement and controlling the supporting device to follow the robotic arm to perform corresponding movement; or
[0009] According to the target posture of the supporting device, the supporting device is controlled to perform adjustment movement and the robotic arm is controlled to follow the supporting device to perform corresponding movement.
[0010] Optionally, obtaining a target posture of the robotic arm or a target posture of the supporting device includes:
[0011] Obtaining the target posture of the robotic arm or the target posture of the supporting device according to a pre-stored correspondence between the target posture and the surgery type; or
[0012] The target posture of the robotic arm or the target posture of the supporting device is obtained according to a preset objective function.
[0013] Optionally, obtaining a target posture of the robotic arm or a target posture of the supporting device according to a preset objective function includes:
[0014] Use one of the robotic arms as the target robotic arm;
[0015] Obtaining the current position of the fixed point of the target manipulator;
[0016] Creating a safe space based on the current position of the fixed point of the target manipulator;
[0017] Traversing each point of the safety space and solving the function value of the preset objective function at different positions;
[0018] The position where the function value satisfies the preset condition is used as the target position of the fixed point of the target manipulator;
[0019] The target posture of the manipulator arm or the target posture of the supporting device is obtained according to the target position of the fixed point of the target manipulator arm.
[0020] Optionally, the preset objective function is:
[0021] w(q)=α·w1(q)+β·w2(q)
[0022]
[0023]
[0024] Wherein, α is the weight of w1(q), β is the weight of w2(q), and α+β=1, N is the number of joints of the target manipulator, q i is the position of the i-th joint of the target manipulator when traversing the safe space, is the average position of the i-th joint of the target manipulator, q imax is the maximum position of the i-th joint of the target manipulator, q iminis the minimum position of the i-th joint of the target manipulator, n is the number of manipulators of the robot, h i is the distance between two adjacent robotic arms when traversing the safe space, is the average distance between all adjacent robotic arms;
[0025] The step of taking the position where the function value satisfies a preset condition as the target position of the fixed point of the target manipulator comprises:
[0026] The position at which the function value is maximum is used as the target position of the fixed point of the target manipulator.
[0027] Optionally, controlling the robotic arm to perform adjustment movement and controlling the supporting device to follow the robotic arm to perform corresponding movement according to the target posture of the robotic arm includes:
[0028] Obtaining the current position of the robotic arm;
[0029] Planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm;
[0030] According to the planned motion trajectory of the robotic arm, controlling the robotic arm to adjust the movement according to the motion trajectory, and controlling the supporting device to move accordingly following the motion trajectory of the robotic arm;
[0031] The controlling the supporting device to perform adjustment movement and controlling the robotic arm to follow the supporting device to perform corresponding movement according to the target posture of the supporting device includes:
[0032] Obtaining the current posture of the supporting device;
[0033] Planning a motion trajectory of the support device according to the target posture and current posture of the support device;
[0034] According to the planned motion trajectory of the support device, the support device is controlled to adjust its movement according to its motion trajectory, and the robot arm is controlled to follow the motion trajectory of the support device to perform corresponding movement.
[0035] Optionally, planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm includes:
[0036] According to the target posture and current posture of the robotic arm, an interpolation algorithm is used to obtain the motion trajectory of the robotic arm;
[0037] The step of planning the motion trajectory of the supporting device according to the target posture and current posture of the supporting device includes:
[0038] According to the target posture and current posture of the supporting device, an interpolation algorithm is adopted to obtain the motion trajectory of the supporting device.
[0039] Optionally, planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm includes:
[0040] Planning the motion trajectory of each joint of the robotic arm according to the target position and current position of each joint of the robotic arm;
[0041] The step of planning the motion trajectory of the supporting device according to the target posture and current posture of the supporting device includes:
[0042] The motion trajectory of each joint of the support device is planned according to the target position and current position of each joint of the support device.
[0043] Optionally, controlling the supporting device to follow the robotic arm to perform corresponding movement includes:
[0044] Obtaining real-time position information of the fixed point of the robotic arm in the robot coordinate system;
[0045] Acquire a target mapping relationship between the support device coordinate system and the world coordinate system in real time based on the real-time position information of the fixed point in the robot coordinate system, the mapping relationship between the fixed point and the support device coordinate system, and the mapping relationship between the robot coordinate system and the world coordinate system;
[0046] Controlling the support device to follow the robotic arm to perform corresponding movements according to a target mapping relationship between the support device coordinate system and the world coordinate system acquired in real time;
[0047] The controlling the robotic arm to follow the supporting device to perform corresponding movement includes:
[0048] Obtaining the real-time mapping relationship between the support device coordinate system and the world coordinate system;
[0049] According to the real-time mapping relationship between the support device coordinate system and the world coordinate system, the mapping relationship between the fixed point of the manipulator and the support device coordinate system, and the mapping relationship between the robot coordinate system and the world coordinate system, the target position information of the fixed point of the manipulator in the robot coordinate system is obtained in real time;
[0050] According to the target position information of the fixed point of the manipulator in the robot coordinate system acquired in real time, the manipulator is controlled to follow the supporting device to perform corresponding movement.
[0051] Optionally, when the computer program is executed by a processor, the following steps are implemented:
[0052] Determine whether the current state of the surgical robot system meets the adjustment requirements.
[0053] Optionally, when the computer program is executed by a processor, the following steps are implemented:
[0054] The real-time adjustment movement process of the robotic arm and the supporting device is monitored to determine whether any abnormal situation occurs.
[0055] Optionally, when the computer program is executed by a processor, the following steps are implemented:
[0056] The real-time adjustment movement process of the robotic arm and the supporting device is displayed.
[0057] To achieve the above objectives, the present invention also provides a surgical robot system, which includes a robot and a controller, the robot includes at least one robotic arm, the controller is communicatively connected to the robot, and the controller includes a processor and a readable storage medium as described above.
[0058] Optionally, the surgical robot system includes a display device communicatively connected to the controller, and the display device is used to display the real-time adjustment movement process of the robotic arm and the supporting device.
[0059] To achieve the above-mentioned purpose, the present invention also provides an adjustment system, which includes the robot system and positioning device described above, and the positioning device is used to obtain the mapping relationship between the robot coordinate system and the world coordinate system and the mapping relationship between the support device coordinate system and the world coordinate system.
[0060] Optionally, the adjustment system includes a supporting device, which is communicatively connected to the controller, and the controller is used to control the supporting device to perform adjustment movement.
[0061] Compared with the prior art, the readable storage medium, surgical robot system and adjustment system provided by the present invention have the following advantages: the present invention first obtains the target position of the robot's manipulator arm, then adjusts the manipulator arm to the target position, and during the adjustment process of the manipulator arm, controls the support device to follow the manipulator arm to perform corresponding movements; or first obtains the target position of the support device, then adjusts the support device to the target position, and during the adjustment process of the support device, controls the robot's manipulator arm to follow the support device to perform corresponding movements. It can be seen that the present invention can achieve the adjustment of the patient's position (i.e., the support device position) and the manipulator arm's position without withdrawing the instrument, thereby enabling the operation to be completed more efficiently and safely, reducing the requirements for the preoperative drilling position and equipment placement, effectively reducing the preoperative preparation time, and effectively avoiding the probability of the manipulator arm colliding. BRIEF DESCRIPTION OF THE DRAWINGS
[0062] Figure 1 This is a schematic diagram of steps implemented when a computer program stored on a readable storage medium is executed by a processor in one embodiment of the present invention;
[0063] Figure 2 Schematic diagram of the process of obtaining the target posture in one embodiment of the present invention;
[0064] Figure 3 Schematic diagram of the process of solving and obtaining the target pose in one embodiment of the present invention;
[0065] Figure 4 Schematic diagram of the process of adjusting movement of the robot arm following the support device in one embodiment of the present invention;
[0066] Figure 5 Schematic diagram of the process of adjusting movement of the support device following the robot arm in one embodiment of the present invention;
[0067] Figure 6 Schematic diagram of the process of planning motion trajectory by using trapezoidal velocity curve interpolation in one embodiment of the present invention;
[0068] Figure 7 A schematic diagram of a trapezoidal velocity curve planning motion trajectory in one embodiment of the present invention;
[0069] Figure 8 A schematic diagram of a motion trajectory planned by a triangular velocity curve in one embodiment of the present invention;
[0070] Figure 9 A velocity curve diagram of a polynomial interpolation planning motion trajectory in one embodiment of the present invention;
[0071] Figure 10 An acceleration curve diagram of a polynomial interpolation planning motion trajectory in one embodiment of the present invention;
[0072] Figure 11 Schematic diagram of the overall process of automatic adjustment of the robotic arm and the supporting device in one embodiment of the present invention;
[0073] Figure 12 Schematic diagram of the monitoring process of the adjustment state in one embodiment of the present invention;
[0074] Figure 13 Schematic diagram of the framework structure of the adjustment system in one embodiment of the present invention;
[0075] Figure 14 is a block diagram of a processor in one embodiment of the present invention;
[0076] Figure 15 Schematic diagram of the measurement principle of a positioning device in one embodiment of the present invention;
[0077] Figure 16 FIG. 4 is a schematic diagram of a display device according to an embodiment of the present invention.
[0078] The accompanying drawings are numerals as follows:
[0079] Support device-100; support device base-110; support body-120; robot-200; robot base-210; robotic arm-220; instrument-230; controller-300; target posture acquisition module-310; control module-320; memory unit-311; solution unit-312; trajectory planning unit-321; adjustment unit-322; state judgment module-330; monitoring module-340; positioning device-400; first marker-130; second marker-240; display device-500; doctor control terminal-600. DETAILED DESCRIPTION
[0080] The following is combined with Figures 1 to 16The readable storage medium, surgical robot system and adjustment system proposed in the present invention are further described in detail with specific embodiments. According to the following description, the advantages and features of the present invention will be clearer. It should be noted that the drawings are in a very simplified form and are not in precise proportions, which are only used to conveniently and clearly assist in explaining the purpose of the embodiments of the present invention. In order to make the purposes, features and advantages of the present invention more obvious and easy to understand, please refer to the drawings. It should be noted that the structures, proportions, sizes, etc. illustrated in the drawings of this specification are only used to match the contents disclosed in the specification for people familiar with this technology to understand and read, and are not used to limit the conditions for the implementation of the present invention. Any modification of the structure, change in the proportional relationship or adjustment of the size should still fall within the scope of the technical content disclosed in the present invention when the effects and purposes that can be achieved are the same or similar to those that can be produced by the present invention.
[0081] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0082] The main purpose of the present invention is to provide a readable storage medium, a surgical robot system and an adjustment system, which can achieve the purpose of automatically adjusting the patient's position and the posture of the robotic arm without withdrawing the instrument. It should be noted that the robot coordinate system (X2, Y2, Z2) referred to in this article is a coordinate system created with any point on the robot base as the origin, the support device coordinate system (X1, Y1, Z1) is a coordinate system created with any point on the support body of the support device as the origin, the position of the robotic arm refers to the position of the robotic arm in the robot coordinate system (X2, Y2, Z2), and the position of the support device refers to the position of the support device in the world coordinate system (X0, Y0, Z0); during the automatic adjustment process, the mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0) remains unchanged, and the mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) changes with the change of the position of the support device.
[0083] To achieve the above-mentioned object, the present invention provides a readable storage medium, which is applied to a surgical robot system, wherein the surgical robot system includes a robot, and the robot includes at least one robotic arm, and the readable storage medium stores a computer program. Figure 1 , which schematically shows a schematic diagram of the steps implemented when a computer program stored on a readable storage medium provided by an embodiment of the present invention is executed by a processor. Figure 1 As shown, when the computer program is executed by a processor, the following steps are implemented:
[0084] Step S1: receiving an adjustment instruction from a user;
[0085] Step S2: obtaining a target posture of the robotic arm or a target posture of the supporting device;
[0086] Step S3: According to the target posture of the robotic arm, control the robotic arm to move and control the support device to follow the robotic arm to perform corresponding movement; or according to the target posture of the support device, control the support device to adjust the movement and control the robotic arm to follow the support device to perform corresponding movement.
[0087] Therefore, the present invention first obtains the target posture of the robot's manipulator arm, then adjusts the manipulator arm to adjust the posture of the manipulator arm to the target posture, and during the adjustment process of the manipulator arm, controls the support device to follow the manipulator arm to perform corresponding movements; or first obtains the target posture of the support device, then adjusts the support device to adjust the posture of the support device to the target posture, and during the adjustment process of the support device, controls the robot's manipulator arm to follow the support device to perform corresponding movements. It can be seen that the present invention can achieve the adjustment of the patient's body position (i.e., the support device posture) and the posture of the manipulator arm without withdrawing the instrument, thereby completing the operation more efficiently and safely, reducing the requirements for the preoperative drilling position and equipment placement, effectively reducing the preoperative preparation time, and effectively avoiding the probability of collision of the manipulator arm.
[0088] Furthermore, obtaining the target posture of the robotic arm or the target posture of the supporting device includes:
[0089] Obtaining the target posture of the robotic arm or the target posture of the supporting device according to a pre-stored correspondence between the target posture and the surgery type; or
[0090] The target posture of the robotic arm or the target posture of the supporting device is obtained according to a preset objective function.
[0091] Please refer to Figure 2, which schematically shows a flow chart of obtaining the target posture provided by one embodiment of the present invention. Figure 2 As shown, the user (such as medical staff) can select the corresponding surgery type through the input unit (such as a physical button or a virtual button) to enter the recovery mode. At this time, the target posture of the robotic arm or the target posture of the support device can be selected according to the pre-stored correspondence between the target posture and the surgery type. The user (such as medical staff) can also choose to enter the setting mode through the physical button or the virtual button. At this time, the target posture of the robotic arm or the target posture of the support device can be obtained according to the preset objective function. It should be noted that the target posture of the robotic arm referred to in this application refers to the posture to which the robotic arm needs to be adjusted (i.e., the end position and posture of the robotic arm), and the target posture of the support device refers to the posture to which the support device needs to be adjusted (i.e., the three-dimensional spatial position of the support device and the rotation angle around each direction).
[0092] Specifically, the target posture of the robotic arm or the target posture of the supporting device can be obtained according to a preset objective function through the following steps:
[0093] Use one of the robotic arms as the target robotic arm;
[0094] Obtaining the current position of the fixed point of the target manipulator;
[0095] Creating a safe space based on the current position of the fixed point of the target manipulator;
[0096] Traversing each point of the safety space and solving the function value of the preset objective function at different positions;
[0097] The position where the function value satisfies the preset condition is used as the target position of the fixed point of the target manipulator;
[0098] The target posture of the manipulator arm or the target posture of the supporting device is obtained according to the target position of the fixed point of the target manipulator arm.
[0099] Please refer to Figure 3 , which schematically shows a flow chart of solving and obtaining the target pose provided by one embodiment of the present invention. Figure 3As shown, in the actual operation process, any robotic arm can be selected as the target robotic arm. For example, a robotic arm equipped with an endoscope is selected as the target robotic arm. The current position of the fixed point of the target robotic arm (the coordinates in the robot coordinate system (X2, Y2, Z2)) is obtained, and a safe space is created according to the current position of the fixed point of the target robotic arm (to ensure that the robotic arm will not damage the patient's organs and tissues when moving in this safe space). The safe space can be a three-dimensional space with smooth boundaries, such as a spherical space, an ellipsoidal space, or a cone space. Specifically, taking the spherical space as an example, the safe space can be created with the current position of the fixed point as the center of the sphere and a preset radius (for example, 2 cm) as the radius. Then, each point in the safe space (including each point on the boundary of the safe space and each point in the safe space) is traversed with a fixed step size to solve the function value of the preset objective function at different positions, and the position where the function value meets the preset conditions is used as the target position of the fixed point. At this time, the target position of the fixed point refers to the coordinates of the fixed point in the robot coordinate system (X2, Y2, Z2), that is, the target posture of the target robotic arm. By performing an inverse solution on the target position of the fixed point, for example, using an inverse kinematics method, the target position of each joint of the target robotic arm can be obtained. Since the fixed points of the other robotic arms have a predetermined mapping relationship with the fixed points of the target robotic arm, the target position of the fixed point of the other robotic arm, i.e., the target posture of the other robotic arm, can be obtained based on the mapping relationship between the fixed points of the other robotic arms and the fixed points of the target robotic arm and the target position of the fixed point of the target robotic arm. By performing an inverse solution on the target position of the fixed point of the other robotic arm, the target position of each joint of the other robotic arm can be obtained.
[0100] Similarly, since there is a predetermined mapping relationship between the fixed point of the target manipulator and the support device coordinate system (X1, Y1, Z1), and a predetermined mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0), the target position of the support device in the world coordinate system (X0, Y0, Z0) can be obtained based on the target position of the fixed point of the target manipulator, the mapping relationship between the fixed point of the target manipulator and the support device coordinate system (X1, Y1, Z1), and the mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0). By inversely solving the target position of the support device, the target position of each joint of the support device can be obtained. The mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0) can be measured by the positioning device described below.
[0101] Furthermore, the preset objective function is:
[0102] w(q)=α·w1(q)+β·w2(q)
[0103]
[0104]
[0105] Wherein, α is the weight of w1(q), β is the weight of w2(q), and α+β=1, N is the number of joints of the target manipulator, q i is the position of the i-th joint of the target manipulator when traversing the safe space, is the average position of the i-th joint of the target manipulator, q imax is the maximum position of the i-th joint of the target manipulator, q imin is the minimum position of the i-th joint of the target manipulator, n is the number of manipulators of the robot, h i is the distance between two adjacent robotic arms when traversing the safe space, is the average distance between all adjacent robotic arms.
[0106] Correspondingly, taking the position where the function value satisfies the preset condition as the target position of the fixed point includes:
[0107] The position where the objective function value is maximum is used as the target position of the fixed point.
[0108] Specifically, when traversing a certain point in the safety space, an inverse kinematics algorithm is used to determine the positions of the joints of the target manipulator at that location, as well as the corresponding positions of the fixed points of the other manipulators at that location, to obtain the function value of the objective function w(q) at that location. Similarly, when traversing any other point in the safety space, the above method can be used to obtain the function value of the objective function w(q) at the corresponding location. By comparing the function values of the objective function w(q) at different locations, the location at which the function value is maximized is used as the target position of the fixed point of the target manipulator.
[0109] The specific values of α and β can be set according to specific circumstances. For example, when α is 1 and β is 0, the objective function is:
[0110]
[0111] In this case, when the function value of the objective function w(q) is the largest, q i Approaching That is, the positions of the joints of the robot's mechanical arm 220 are close to their average positions, so the working space range of the mechanical arm is greatly improved, and the optimal conditions for the movement space of the mechanical arm can be met.
[0112] When α is 0 and β is 1, the objective function is:
[0113]
[0114] In this case, when the objective function value is the largest, h i Approaching That is, the robotic arms of the robot are distributed at approximately equal intervals, thereby effectively avoiding collisions between the robotic arms during surgery, and at this time, the conditions for optimal robotic arm positioning can be met.
[0115] When α is 0.5 and β is 0.5, the optimization of the robot arm's motion space and the optimization of the robot arm's position can achieve a balance, which can not only increase the effective motion space of the robot arm, but also effectively reduce the probability of collision of the robot arm during surgical operations.
[0116] Please continue to refer to Figure 4 , which schematically shows a flow chart of the adjustment movement of the robot arm following the support device provided by one embodiment of the present invention, such as Figure 4 As shown, the process of controlling the manipulator to adjust the movement and controlling the support device to follow the manipulator to perform corresponding movement according to the target posture of the manipulator includes:
[0117] Obtaining the current position of the robotic arm;
[0118] Planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm;
[0119] According to the planned motion trajectory of the robotic arm, the robotic arm is controlled to adjust its movement according to the motion trajectory, and the supporting device (such as an operating table) is controlled to move accordingly following the motion trajectory of the robotic arm.
[0120] Please continue to refer to Figure 5 , which schematically shows a flow chart of the support device provided by one embodiment of the present invention following the robot arm to adjust the movement. Figure 5 As shown, according to the target posture of the supporting device, controlling the supporting device to adjust the movement and controlling the robotic arm to follow the supporting device to perform corresponding movement, including:
[0121] Obtaining the current posture of the supporting device;
[0122] Planning a motion trajectory of the support device according to the target posture and current posture of the support device;
[0123] According to the planned motion trajectory of the support device, the support device is controlled to adjust its movement according to its motion trajectory, and the robot arm is controlled to follow the motion trajectory of the support device to perform corresponding movement.
[0124] Furthermore, planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm includes:
[0125] According to the target posture and current posture of the robotic arm, an interpolation algorithm is used to obtain the motion trajectory of the robotic arm;
[0126] The step of planning the motion trajectory of the supporting device according to the target posture and current posture of the supporting device includes:
[0127] According to the target posture and current posture of the supporting device, an interpolation algorithm is adopted to obtain the motion trajectory of the supporting device.
[0128] Please refer to Figures 6 to 8 ,in, Figure 6 A schematic diagram of a process for planning the motion trajectory of a robotic arm or a supporting device using trapezoidal velocity curve interpolation according to an embodiment of the present invention is provided; Figure 7 A schematic diagram of trapezoidal speed curve planning provided by one embodiment of the present invention is schematically shown; Figure 8 The following schematically shows a triangle speed curve planning diagram provided by one embodiment of the present invention. Figures 6 to 8 As shown, according to the set maximum speed V max And constant acceleration a can be obtained in the trapezoidal velocity curve velocity rise time t s , where the maximum speed V max and constant acceleration a can be set according to the specific situation. When the planned distance s (the distance between the target position and the current position) is less than V max *t s When , a triangular velocity curve is used to generate the motion trajectory, where the velocity trajectory is as follows: Figure 8 As shown in , the position trajectory can be obtained by velocity integration, where:
[0129]
[0130] v=at,t≤0
[0131] v=a(t-2t0), t0≤t≤2t0
[0132] When the planning distance s is greater than or equal to V max *t s When , a trapezoidal velocity curve is used to generate the motion trajectory, where the velocity trajectory is as follows Figure 7 As shown in , the position trajectory can be obtained by velocity integration, where:
[0133] v=at,t≤t s
[0134] v=V max , t s ≤t≤t f -t s
[0135] v=-a(tt f ), t f -t s ≤t≤t f
[0136] The following uses pentaminc interpolation as an example to illustrate the principle of using polynomial interpolation to plan motion trajectories.
[0137] Assume the position expression at time t is:
[0138] q(t)=a5t 5 +a4t 4 +a3t 3 +a2t 2 +a1t+a0
[0139] Set the initial position to q0 and the final position to q f , the initial speed and the final speed are both 0. The above conditions are all constraints, that is, the constraints are:
[0140] q(0)=q s
[0141] q(t f )=q f
[0142]
[0143]
[0144]
[0145]
[0146] Using the above six constraints, we can get the position trajectory, where:
[0147] a0=q s
[0148] a1=a2=0
[0149]
[0150]
[0151]
[0152] The velocity trajectory can be obtained by derivatizing the position trajectory. Please refer to Figure 9 , which schematically shows the velocity curve of the pentaminc interpolation planning trajectory provided by one embodiment of the present invention. The acceleration trajectory can be obtained by derivatizing the velocity trajectory, please refer to Figure 10 , which schematically shows an acceleration curve diagram of a pentaminc interpolation planning trajectory provided by one embodiment of the present invention.
[0153] In an exemplary embodiment, planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm includes:
[0154] Planning the motion trajectory of each joint of the robotic arm according to the target position and current position of each joint of the robotic arm;
[0155] The step of planning the motion trajectory of the supporting device according to the target posture and current posture of the supporting device includes:
[0156] The motion trajectory of each joint of the support device is planned according to the target position and current position of each joint of the support device.
[0157] Furthermore, controlling the supporting device to follow the robotic arm to perform corresponding movements includes:
[0158] Obtaining real-time position information of the fixed point of the robotic arm in the robot coordinate system;
[0159] Acquire a target mapping relationship between the support device coordinate system and the world coordinate system in real time based on the real-time position information of the fixed point in the robot coordinate system, the mapping relationship between the fixed point and the support device coordinate system, and the mapping relationship between the robot coordinate system and the world coordinate system;
[0160] According to the target mapping relationship between the support device coordinate system and the world coordinate system acquired in real time, the support device is controlled to follow the robot arm to perform corresponding movement.
[0161] Specifically, when the support device follows the robot arm j to perform corresponding movements, the target mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) is It can be obtained by the following formula:
[0162]
[0163] in, is the mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0), 2 P i is the coordinate of the fixed point of the robot arm j in the robot coordinate system (X2, Y2, Z2), which changes with the adjustment movement of the robot arm j. 1 P j is the coordinate of the fixed point of the robot arm j in the support device coordinate system (X1, Y1, Z1), ( 1 P j ) + for 1 P j Pseudo-reversal.
[0164] Since position sensors are installed on each joint of the robot arm j, the coordinates of each joint in the robot coordinate system (X2, Y2, Z2) can be obtained in real time during the adjustment movement of the robot arm 220. The coordinates of the fixed point of the robot arm j in the robot coordinate system (X2, Y2, Z2) can be obtained in real time through the kinematic equation. 2 P j Thus, according to the above formula, the target mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) can be obtained in real time. Then, the target mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) obtained in real time can be obtained. Control the support device to follow the robot arm j to perform corresponding movements. Specifically, the target mapping relationship between the obtained support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) can be obtained. The target position of each joint of the support device is obtained by using the inverse kinematics solution, and then the support device is controlled to follow the robot arm j to perform corresponding movements according to the target position of each joint of the support device obtained in real time.
[0165] The controlling the robotic arm to follow the supporting device to perform corresponding movement includes:
[0166] Obtaining the real-time mapping relationship between the support device coordinate system and the world coordinate system;
[0167] According to the real-time mapping relationship between the support device coordinate system and the world coordinate system, the mapping relationship between the fixed point of the manipulator and the support device coordinate system, and the mapping relationship between the robot coordinate system and the world coordinate system, the target position information of the fixed point of the manipulator in the robot coordinate system is obtained in real time;
[0168] According to the target position information of the fixed point of the manipulator in the robot coordinate system acquired in real time, the manipulator is controlled to follow the supporting device to perform corresponding movement.
[0169] Specifically, taking the robot arm j as an example, when the robot arm j follows the support device to adjust the movement, the target coordinates of the fixed point of the robot arm j in the robot coordinate system (X2, Y2, Z2) are 2 P′ j It can be obtained by the following formula:
[0170]
[0171] in, It is the mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0), which changes with the adjustment movement of the support device. is the mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0), 1 P j is the coordinate of the fixed point of the robot arm j in the support device coordinate system (X1, Y1, Z1).
[0172] During the adjustment movement of the support device, the mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) can be measured in real time by the positioning device described below. Therefore, according to the above formula, the target coordinates of the fixed point of the robot arm j in the robot coordinate system (X2, Y2, Z2) can be obtained in real time 2 P j ', and then the target coordinates of the fixed point in the robot coordinate system (X2, Y2, Z2) obtained in real time can be obtained 2 P j ', control the robot arm j to follow the support device 100 to adjust the movement. Specifically, the target coordinates of the fixed point in the robot coordinate system (X2, Y2, Z2) can be 2 P j ', an inverse kinematics solution is used to obtain the target positions of each joint of the robot arm j. Then, based on the target positions of each joint of the robot arm j obtained in real time, the robot arm j is controlled to follow the support device 100 to perform corresponding movements. The movement process of the other robot arms 220 can refer to the adjustment process of the robot arm j described above, so it will not be described in detail here.
[0173] Please refer to Figure 11 , which schematically shows a flow chart of automatic adjustment of the robot arm and the support device provided by one embodiment of the present invention. Figure 11As shown, when the computer program is executed by the processor, the following steps are also implemented:
[0174] Determine whether the current state of the surgical robot system meets the adjustment requirements.
[0175] Specifically, such as Figure 11 As shown, after receiving the user's automatic adjustment instruction, it is first determined whether the current state of the surgical robot system is suitable for the adjustment movement of the manipulator and the support device. If the judgment result is yes, the automatic adjustment movement of the support device and the manipulator is performed; if the judgment result is no, the automatic adjustment process is terminated. It can be seen that the present invention can effectively ensure the safety of the surgery during the automatic adjustment process by performing the automatic adjustment movement of the support device and the manipulator under the premise that the current state of the surgical robot system meets the adjustment requirements. Specifically, several safety checks can be performed to determine whether the current state of the surgical robot system meets the adjustment requirements. The safety checks include but are not limited to detecting whether each of the manipulators is in a position-holding state (i.e., whether the manipulator is in a stationary state), whether the position of the instrument mounted on each of the manipulators has been locked, and whether the position of the instrument mounted on each of the manipulators is appropriate. For example, when each of the manipulators is not in a position-holding state, the position of the instrument mounted on each of the manipulators is not locked, or the position of the instrument mounted on each of the manipulators is not appropriate, it is determined that the current state of the surgical robot system does not meet the adjustment requirements. When each of the robotic arms is in a position-holding state, the position of the instruments installed on each of the robotic arms is locked, and the position of the instruments installed on each of the robotic arms is appropriate, it is determined that the current state of the surgical robot system meets the adjustment requirements.
[0176] Furthermore, if Figure 11 As shown, when the computer program is executed by the processor, the following steps are also implemented:
[0177] The real-time adjustment movement process of the robotic arm and the supporting device is displayed.
[0178] Therefore, by displaying the real-time adjustment movement process of the robotic arm and the supporting device during the automatic adjustment process, it is convenient for the user to observe the adjustment movement process of the robotic arm and the supporting device.
[0179] Please continue to refer to Figure 12 , which schematically shows a flow chart of monitoring the adjustment state provided by one embodiment of the present invention. Figure 12 As shown, when the computer program is executed by the processor, the following steps are also implemented:
[0180] The real-time adjustment movement process of each of the robotic arms and the supporting device is monitored to determine whether any abnormal situation occurs.
[0181] Specifically, such as Figure 12 As shown, during the automatic adjustment process of the robotic arm and support device, the real-time adjustment movement process of each robotic arm and support device is monitored, and whether there are any abnormalities during the adjustment process is determined. Therefore, if an abnormality occurs during the adjustment process, the automatic adjustment process can be immediately stopped to protect the patient's safety. For example, if it is determined that the force on the patient's puncture site is too large, it will be determined as an abnormality. If the fixed point of the robotic arm is significantly offset in the support device coordinate system, it will also be determined as an abnormality.
[0182] Furthermore, if Figure 12 As shown, when the computer program is executed by the processor, the following steps are also implemented:
[0183] Determining whether the robotic arm and / or the supporting device has moved to a target posture;
[0184] If so, save the target pose.
[0185] Therefore, during the automatic adjustment process of the robotic arm and the support device, it is determined whether the robotic arm and / or the support device have moved to the target position, so that when the robotic arm and / or the support device move to the target position, the target position can be saved and the automatic adjustment process can be ended.
[0186] The present invention also provides an adjustment system, please refer to Figure 13 , which schematically shows a schematic diagram of the framework structure of the adjustment system provided by one embodiment of the present invention, such as Figure 13 As shown, the adjustment system includes a surgical robot system, the surgical robot system includes a robot 200, the robot 200 includes a robot base 210, and at least one robot arm 220 is installed on the robot base 210.
[0187] Please continue to refer to Figure 13The adjustment system further includes a positioning device 400, a support device 100 and a controller 300. The robot 200, the positioning device 400 and the support device 100 are all in communication with the controller 300. The controller 300 includes a processor and the readable storage medium described above. The support device 100 has multiple degrees of freedom, such as movement, pitch, and yaw (the support device has multiple joints to achieve multiple degrees of freedom such as movement, pitch, and yaw. The specific structure of the support device can refer to the multi-degree-of-freedom hospital bed in the prior art and will not be repeated here). The support device 100 includes a support device base 110 and a support body 120 mounted on the support device base 110. The support device 100 is used to support the surgical object (e.g., the surgical object), that is, the surgical object can lie or sit on the support device 200 for surgery. The support device 200 can be a hospital bed or other components other than a hospital bed that can support the surgical object for surgical operation.
[0188] In some embodiments, the controller 300 can be set in combination with any one or more devices in the surgical robot system, for example, it can be set at the doctor's control terminal 600 of the surgical robot system, or at the robot 100, or at the display device 500 described below, etc.; in some embodiments, the controller 300 can also be set at the positioning device 400; in some other embodiments, the controller 300 is set separately; and the controller 300 can be a specific hardware or software unit, or a combination of hardware and software. The present invention does not limit the specific setting of the controller 300.
[0189] Please continue to refer to Figure 14 , which schematically shows a block diagram of a processor in a controller provided in one embodiment of the present invention. Figure 14 As shown, the processor specifically includes a target posture acquisition module 310 and a control module 320. The target posture acquisition module 310 is used to acquire the target posture of the manipulator 220 or the target posture of the support device 100; the control module 320 is used to control the manipulator 220 to perform an adjustment movement and control the support device 100 to follow the manipulator 220 to perform a corresponding movement according to the target posture of the manipulator 220; or control the support device 100 to perform an adjustment movement and control the manipulator 220 to follow the support device 100 to perform a corresponding movement according to the target posture of the support device 100.
[0190] like Figure 14As shown, further, the target posture acquisition module 310 includes a memory unit 310 and a solution unit 312, wherein the memory unit 310 is used to obtain the target posture of the robotic arm 220 or the target posture of the support device 100 according to the correspondence between the pre-stored target posture and the operation type. For example, the memory unit is used to store a preset robotic arm and bed configuration, and save the preset configuration to achieve automatic recovery to the preset configuration during surgery. The preset configuration can avoid collision of the robotic arm during surgery and / or have an optimal operating space; the solution unit 312 is used to obtain the target posture of the robotic arm 220 or the target posture of the support device 100 according to a preset objective function.
[0191] The memory unit 310 is pre-set with several different surgical configurations (i.e., target positions) for the robotic arm 220 and the support device 100, such as a kidney-type surgical configuration, a prostate-type surgical configuration, etc. The solution unit 312 can calculate the optimal configuration of the robotic arm 220 or the support device 100 through an optimization algorithm based on the state of the surgical robot system and the specific needs of the user (e.g., medical staff). During actual operation, the user (e.g., medical staff) can select the corresponding surgical type through a physical button or a virtual button to enter the recovery mode. At this time, the control module 320 will control the robotic arm 220 or the support device 100 to automatically move to the configuration position based on the configuration of the robotic arm 220 or the support device 100 obtained by the memory unit 310. The user (e.g., medical staff) can also select to enter the setting mode through a physical button or a virtual button. At this time, the control module 320 will control the robotic arm 220 or the support device 100 to automatically move to the optimal configuration based on the optimal configuration of the robotic arm 220 or the support device 100 calculated by the solution unit 312. After determining the optimal configuration of the robotic arm 220 or the support device 100, the user (e.g., medical staff) can save the relevant information of the optimal configuration through the memory unit 310, so that during subsequent surgical procedures, the user (e.g., medical staff) can directly control the robotic arm 220 or the support device 100 through the controller 300 to restore it to the saved optimal configuration.
[0192] It should be noted that, as can be understood by those skilled in the art, in some other embodiments, the target pose acquisition module 310 may only include the memory unit 310; in some other embodiments, the target pose acquisition module 310 may also only include the solution unit 312.
[0193] like Figure 14As shown, the control module 320 includes a trajectory planning unit 321 and an adjustment unit 322. The trajectory planning unit 321 is used to plan the motion trajectory of the manipulator 220 according to the target posture and current posture of the manipulator 220, or to plan the motion trajectory of the support device 100 according to the target posture and current posture of the support device 100; the adjustment unit 322 is used to control each manipulator 220 to adjust its motion according to the motion trajectory of the planned manipulator 220, and control the support device 100 to move accordingly following the motion trajectory of the manipulator 220, or to control the support device 100 to adjust its motion according to its motion trajectory according to the planned motion trajectory of the support device 100, and control the manipulator 220 to move accordingly following the motion trajectory of the support device 100.
[0194] Furthermore, the trajectory planning unit 321 is used to plan the motion trajectory of each joint of the robotic arm 220 based on the target position and current position of each joint of the robotic arm 220; or to plan the motion trajectory of each joint of the support device 100 based on the target position and current position of each joint of the support device 100.
[0195] Furthermore, the trajectory planning unit 321 is used to obtain the motion trajectory of the robotic arm 220 (the motion trajectory of each joint of the robotic arm 220) by using an interpolation algorithm based on the target posture and current posture of the robotic arm 220 (the target position and current position of each joint of the robotic arm 220); or to obtain the motion trajectory of the support device 100 (the motion trajectory of each joint of the support device 100) by using an interpolation algorithm based on the target posture and current posture of the support device 100 (the target position and current position of each joint of the support device 100).
[0196] Please refer to Figure 15 , which schematically shows the measurement principle diagram of the positioning device provided by one embodiment of the present invention. Figure 15As shown, the positioning device 400 is a binocular camera, that is, in this embodiment, the positioning device 400 obtains the mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0) and the real-time mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) based on the binocular vision measurement principle. A plurality of first markers 130 are provided on the support body 120 of the support device 100. Furthermore, in order to improve the measurement accuracy, a plurality of first markers 130 may also be provided on the support device base 110, and a plurality of second markers 240 are provided on the robot base 210. By acquiring images of the plurality of first markers 130 through the binocular camera, the coordinates of the plurality of first markers 130 in the world coordinate system (X0, Y0, Z0) can be obtained, and then, based on the mapping relationship between the plurality of first markers 130 and the support device coordinate system (X1, Y1, Z1), the mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) can be obtained. Similarly, by acquiring images of the multiple second markers 240 through the binocular camera, the coordinates of the multiple second markers 240 in the world coordinate system (X0, Y0, Z0) can be acquired, and then based on the mapping relationship between the multiple second markers 240 and the robot coordinate system (X2, Y2, Z2), the mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0) can be acquired.
[0197] It should be noted that, as those skilled in the art can understand, in some other embodiments, the positioning device 400 can also obtain the mapping relationship between the robot coordinate system (X2, Y2, Z2) and the world coordinate system (X0, Y0, Z0) and the real-time mapping relationship between the support device coordinate system (X1, Y1, Z1) and the world coordinate system (X0, Y0, Z0) based on commonly used position measurement methods such as monocular vision measurement, optical tracking measurement or electromagnetic measurement. The present invention is not limited to this.
[0198] Furthermore, after the adjustment movement of the robotic arm 220 and the support device 100 is completed, the system saves the adjusted position of the robotic arm 220 and the position of the support device 100, ending the entire automatic adjustment process. Thus, by saving the adjusted position of the robotic arm 220 and the position of the support device 100, the robotic arm 220 and the support device 100 can be directly restored to the saved position during a subsequent surgical procedure.
[0199] like Figure 14As shown, the processor also includes a state determination module 330, which is used to determine whether the current state of the surgical robot system is suitable for adjusting the robotic arm 220 and the support device 100. Specifically, after a user (e.g., a medical professional) sends an automatic adjustment instruction to the controller 300 via a physical button on the surgical robot system or a virtual button on the interactive interface (i.e., after the controller 300 receives the user instruction), to ensure safety during the automatic adjustment process, before entering the automatic adjustment process, the state determination module 330 will perform several safety checks to determine whether the current state of the surgical robot system is suitable for adjusting the robotic arm 220 and the support device 100. If the judgment result is yes, the automatic adjustment movement of the support device 100 and the robotic arm 220 will be performed. If the judgment result is no, the automatic adjustment request of the user (e.g., the medical professional) will be prohibited, and the automatic adjustment process will end directly. In order to facilitate users (such as medical staff) to know in time, under the control of the controller 300, the surgical robot system will provide users (such as medical staff) with several explanatory messages, or provide feedback in the form of sound and light alarms.
[0200] like Figure 14 As shown, the processor further includes a monitoring module 340 , and the monitoring module 340 is used to monitor the adjustment movement of each of the robotic arms 220 and the supporting device 100 .
[0201] like Figure 13 As shown, the adjustment system further includes a display device 500 in communication with the controller 300, and the display device 500 is used to display the real-time adjustment movement process of the robot arm 220 and the support device 100. Thus, the adjustment movement process of the robot arm 220 and the support device 100 can be displayed in real time through the display device 500, and the display content is, for example, Figure 16 As shown in the right box in FIG, in addition, the user (such as medical staff) can also observe the image taken by the endoscope installed on the robotic arm 220 through the display device 500, and the display content is as follows: Figure 16 As shown in the left box in the figure, the instrument 230 installed on the robotic arm 220 is prevented from damaging the patient's tissue.
[0202] It should be noted that the readable storage medium of the embodiment of the present invention can adopt any combination of one or more computer-readable media. The readable medium can be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium can be, for example, but not limited to, a system, device or component of electricity, magnetism, light, electromagnetic, infrared or semiconductor, or any combination thereof. More specific examples (non-exhaustive list) of computer-readable storage media include: an electrical connection with one or more wires, a portable computer hard disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In this article, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it.
[0203] A computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0204] Computer program code for performing the operations of the present invention may be written in one or more programming languages, or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0205] In summary, compared with the prior art, the readable storage medium, surgical robot system and adjustment system provided by the present invention have the following advantages: the present invention first obtains the target position of the robot's manipulator arm, then adjusts the manipulator arm to the target position, and during the adjustment of the manipulator arm, controls the support device to follow the manipulator arm to perform corresponding movements; or first obtains the target position of the support device, then adjusts the support device to the target position, and during the adjustment of the support device, controls the robot's manipulator arm to follow the support device to perform corresponding movements. It can be seen that the present invention can achieve the adjustment of the patient's body position (i.e., the support device position) and the manipulator arm's position without withdrawing the instrument, thereby completing the operation more efficiently and safely, reducing the requirements for the preoperative drilling position and equipment placement, effectively reducing the preoperative preparation time, and effectively avoiding the probability of collision of the manipulator arm.
[0206] It should be noted that the devices and methods disclosed in the embodiments of this document may also be implemented in other ways. The device embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of the devices, methods, and computer program products according to the various embodiments of this document. In this regard, each box in the flowchart or block diagram may represent a module, program, or portion of code, wherein the module, program segment, or portion of code contains one or more executable instructions for implementing a specified logical function, and the module, program segment, or portion of code contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the boxes may also occur in an order different from that marked in the accompanying drawings. For example, two consecutive boxes may actually be executed substantially in parallel, or they may sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart, may be implemented by a dedicated hardware-based system for performing the specified function or action, or may be implemented by a combination of dedicated hardware and computer instructions.
[0207] In addition, the functional modules in the various embodiments of this document may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.
[0208] The above description is merely a description of preferred embodiments of the present invention and does not limit the scope of the present invention. Any changes or modifications made by persons skilled in the art based on the above disclosure are within the scope of protection of the present invention. Obviously, various modifications and variations may be made by persons skilled in the art without departing from the spirit and scope of the present invention. Thus, if such modifications and variations fall within the scope of the present invention and its equivalents, the present invention is intended to include such modifications and variations.
Claims
1. A readable storage medium, applied to a surgical robot system, characterized in that: The readable storage medium stores a computer program, and when the computer program is executed by the processor, the following steps are implemented: Receive adjustment instructions from users; Obtaining a target position of the robotic arm or a target position of the supporting device; According to the target posture of the robotic arm, controlling the robotic arm to perform adjustment movement and controlling the supporting device to follow the robotic arm to perform corresponding movement; or According to the target posture of the support device, controlling the support device to perform adjustment movement and controlling the robotic arm to follow the support device to perform corresponding movement; The obtaining of the target posture of the robotic arm or the target posture of the supporting device includes: Use one of the robotic arms as the target robotic arm; Obtaining the current position of the fixed point of the target manipulator; Creating a safe space based on the current position of the fixed point of the target manipulator; Traversing each point of the safety space and solving the function value of the preset objective function at different positions; The position where the function value satisfies a preset condition is used as the target position of the fixed point of the target manipulator, wherein the preset condition includes any one of the following: optimal manipulator motion space, optimal manipulator position, and a balance between optimization of the manipulator motion space and optimization of the manipulator position; The target posture of the manipulator arm or the target posture of the supporting device is obtained according to the target position of the fixed point of the target manipulator arm.
2. The readable storage medium according to claim 1, wherein The preset objective function is: w(q)=α·w1(q)+β·w2(q) Wherein, α is the weight of w1(q), β is the weight of w2(q), and α+β=1, N is the number of joints of the target manipulator, q i is the position of the i-th joint of the target manipulator when traversing the safe space, is the average position of the i-th joint of the target manipulator, q imax is the maximum position of the i-th joint of the target manipulator, q imin is the minimum position of the i-th joint of the target manipulator, n is the number of manipulators of the robot, h i is the distance between two adjacent robotic arms when traversing the safe space, is the average distance between all adjacent robotic arms; The step of taking the position where the function value satisfies a preset condition as the target position of the fixed point of the target manipulator comprises: The position at which the function value is maximum is used as the target position of the fixed point of the target manipulator.
3. The readable storage medium according to claim 1, wherein The controlling the manipulator arm to perform adjustment movement and controlling the supporting device to follow the manipulator arm to perform corresponding movement according to the target posture of the manipulator arm includes: Obtaining the current position of the robotic arm; Planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm; According to the planned motion trajectory of the robotic arm, controlling the robotic arm to adjust the movement according to the motion trajectory, and controlling the supporting device to move accordingly following the motion trajectory of the robotic arm; The controlling the supporting device to perform adjustment movement and controlling the robotic arm to follow the supporting device to perform corresponding movement according to the target posture of the supporting device includes: Obtaining the current posture of the supporting device; Planning a motion trajectory of the support device according to the target posture and current posture of the support device; According to the planned motion trajectory of the support device, the support device is controlled to adjust its movement according to its motion trajectory, and the robot arm is controlled to follow the motion trajectory of the support device to perform corresponding movement.
4. The readable storage medium according to claim 3, wherein: Planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm includes: According to the target posture and current posture of the robotic arm, an interpolation algorithm is used to obtain the motion trajectory of the robotic arm; The step of planning the motion trajectory of the supporting device according to the target posture and current posture of the supporting device includes: An interpolation algorithm is used according to the target posture and current posture of the supporting device to obtain the motion trajectory of the supporting device.
5. The readable storage medium according to claim 3, wherein: Planning the motion trajectory of the robotic arm according to the target posture and current posture of the robotic arm includes: Planning the motion trajectory of each joint of the robotic arm according to the target position and current position of each joint of the robotic arm; The step of planning the motion trajectory of the supporting device according to the target posture and current posture of the supporting device includes: The motion trajectory of each joint of the support device is planned according to the target position and current position of each joint of the support device.
6. The readable storage medium according to claim 1, wherein The controlling the supporting device to follow the robotic arm to perform corresponding movement includes: Obtaining real-time position information of the fixed point of the manipulator in the robot coordinate system; Acquire a target mapping relationship between the support device coordinate system and the world coordinate system in real time based on the real-time position information of the fixed point in the robot coordinate system, the mapping relationship between the fixed point and the support device coordinate system, and the mapping relationship between the robot coordinate system and the world coordinate system; Controlling the support device to follow the robotic arm to perform corresponding movements according to a target mapping relationship between the support device coordinate system and the world coordinate system acquired in real time; The controlling the robotic arm to follow the supporting device to perform corresponding movement includes: Obtaining the real-time mapping relationship between the support device coordinate system and the world coordinate system; According to the real-time mapping relationship between the support device coordinate system and the world coordinate system, the mapping relationship between the fixed point of the manipulator and the support device coordinate system, and the mapping relationship between the robot coordinate system and the world coordinate system, the target position information of the fixed point of the manipulator in the robot coordinate system is obtained in real time; According to the target position information of the fixed point of the manipulator in the robot coordinate system acquired in real time, the manipulator is controlled to follow the supporting device to perform corresponding movement.
7. The readable storage medium according to claim 1, wherein: When the computer program is executed by a processor, the following steps are implemented: Determine whether the current state of the surgical robot system meets the adjustment requirements.
8. The readable storage medium according to claim 1, wherein: When the computer program is executed by a processor, the following steps are implemented: The real-time adjustment movement process of the robotic arm and the supporting device is monitored to determine whether any abnormal situation occurs.
9. The readable storage medium according to claim 1, wherein: When the computer program is executed by a processor, the following steps are implemented: The real-time adjustment movement process of the robotic arm and the supporting device is displayed.
10. A surgical robot system, characterized in that: The invention comprises a robot and a controller, wherein the robot comprises at least one robotic arm, the controller is communicatively connected with the robot, and the controller comprises a processor and a readable storage medium according to any one of claims 1 to 9.
11. The surgical robot system according to claim 10, wherein: The surgical robot system includes a display device that is communicatively connected to the controller, and the display device is used to display the real-time adjustment movement process of the robotic arm and the supporting device.
12. An adjustment system, characterized in that: It comprises the surgical robot system and positioning device according to claim 10 or 11, wherein the positioning device is used to obtain the mapping relationship between the robot coordinate system and the world coordinate system and the mapping relationship between the support device coordinate system and the world coordinate system.
13. The adjustment system according to claim 12, characterized in that The adjustment system includes a supporting device, which is communicatively connected to the controller. The controller is used to control the supporting device to perform adjustment movements.
Citation Information
Patent Citations
System and method for integrated surgical table
CN107072725A