Calibration method, device, surgical robot, electronic device and storage medium

By installing a reference array at the end of the surgical robot robot arm and adjusting the position, the corresponding conversion matrix is calculated, and the error problem caused by equipment occlusion in the traditional calibration method is solved, and a higher precision calibration effect is achieved.

CN115670660BActive Publication Date: 2025-08-12LANCET ROBOTICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211385145.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-07
Publication Date
2025-08-12
Estimated Expiration
2042-11-07

AI Technical Summary

Technical Problem

The traditional hand-eye calibration method is prone to large errors due to equipment obstruction during data acquisition, which affects the positioning accuracy of the surgical robot.

Method used

By installing the reference array at the end of the robot arm, using four asymmetric positioning parts to establish the reference array coordinate system, and through the rotation adjustment of the robot arm's intrinsic TCP coordinate system, data in multiple positions are obtained, and the conversion matrix from the positioning camera coordinate system to the robot arm's intrinsic base coordinate system is calculated, keeping the origin of the robot arm's intrinsic TCP coordinate system fixed, reducing the probability of the positioning camera being blocked.

Benefits of technology

It improves calibration accuracy and reduces errors. It is suitable for surgical robot calibration in narrow spaces and enhances positioning accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115670660B_ABST
    Figure CN115670660B_ABST
Patent Text Reader

Abstract

The embodiments of the present invention propose a calibration method, device, robot, electronic device and storage medium, which belong to the field of surgical robots. By adjusting the posture of the end of the robotic arm four times and based on the various data collected during the posture adjustment process, the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the robotic arm is calculated. In the process of adjusting the posture of the end of the robotic arm and collecting various data, the origin position of the intrinsic TCP coordinate system of the robotic arm remains unchanged. To a certain extent, the movement of the posture of the end of the robotic arm can be limited to a very small range, greatly reducing the probability of the positioning camera being blocked. At the same time, the first unit vector and the second unit vector can be flexibly selected, further reducing the probability of the positioning camera being blocked due to interference caused by the robotic arm in a small space, thereby being able to obtain various data more accurately, thereby improving the calibration accuracy and reducing errors.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of surgical robots, and in particular to a calibration method, device, robot, electronic equipment and storage medium. Background Art

[0002] Surgical robots, with their high positioning accuracy and excellent repeatability, are widely used in image-guided orthopedic surgery. The navigation and positioning principle of surgical robots is as follows: an optical positioner tracks a tool tracer mounted on the end of a robotic arm. By transforming the tool tracer into the coordinate system of the tool center point (TCP) at the end of the robotic arm, the position of the robotic arm is determined, thereby guiding the robotic arm to the planned target position.

[0003] To complete the navigation and positioning of a surgical robot, it is necessary to first determine the transformation relationship between the tool tracer and the TCP coordinate system at the end of the robotic arm. This process is called hand-eye calibration. However, traditional hand-eye calibration methods are prone to large errors due to occlusion of the acquisition device during the data acquisition process. Summary of the Invention

[0004] In view of this, an object of the present invention is to provide a calibration method, device, robot, electronic device and storage medium, which can reduce calibration errors and improve the problem of large errors in current calibration methods.

[0005] In order to achieve the above objectives, the technical solutions adopted in the embodiments of the present invention are as follows:

[0006] In a first aspect, an embodiment of the present invention provides a calibration method for calibrating a surgical robot, wherein the surgical robot includes a robotic arm, an intrinsic base of the robotic arm, and a positioning camera, the method comprising:

[0007] A reference array is installed at the end of the robotic arm; wherein the reference array includes a bracket provided at the end of the robotic arm, and four positioning members provided on the bracket, and the four positioning members are asymmetrically arranged;

[0008] Establishing a reference array coordinate system based on any three of the positioning elements;

[0009] Control the end of the manipulator to adjust to the O1 posture, obtain the first unit vector and the second unit vector in the intrinsic TCP coordinate system of the manipulator, and record the first coordinate value of the origin of the intrinsic TCP coordinate system of the manipulator in the intrinsic base coordinate system of the manipulator, the first transformation matrix from the intrinsic base coordinate system of the manipulator to the intrinsic TCP coordinate system of the manipulator, the transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and the second transformation matrix from the positioning camera coordinate system to the reference array coordinate system; wherein the first unit vector and the second unit vector are not perpendicular to each other;

[0010] The origin of the intrinsic TCP coordinate system of the manipulator is kept fixed in the intrinsic base coordinate system of the manipulator, and the manipulator end is controlled to rotate twice continuously with the first unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center using the selected rotation method and the first angle, so that the manipulator end is adjusted to the O2 pose and the O3 pose successively, and the second coordinate value and the third coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system are recorded in the O2 pose and the O3 pose respectively;

[0011] Control the end of the manipulator to adjust back to the O1 posture, keep the origin of the intrinsic TCP coordinate system of the manipulator fixed in the intrinsic base coordinate system of the manipulator, control the end of the manipulator to rotate twice continuously with the second unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center, using the selected rotation method and the second angle, so that the end of the manipulator is adjusted to the O4 posture and the O5 posture successively, and record the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system in the O4 posture and the O5 posture respectively;

[0012] Establishing a spatial rectangular coordinate system based on the first coordinate value, the first unit vector, and the second unit vector, and obtaining a third transformation matrix from the intrinsic TCP coordinate system of the manipulator to the spatial rectangular coordinate system when the manipulator end is in the O1 posture;

[0013] Calculating a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value;

[0014] According to the first transformation matrix, the second transformation matrix, the third transformation matrix and the fourth transformation matrix, the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the manipulator and the transformation matrix from the intrinsic TCP coordinate system of the manipulator to the reference array coordinate system are calculated.

[0015] Furthermore, the step of calculating a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value includes:

[0016] Based on the first unit vector and the second unit vector, calculating the representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinate system;

[0017] Fit a fitting sphere consisting of the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value and the fifth coordinate value, and obtain the coordinates p of the center of the fitting sphere c ;

[0018] According to the representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinates and the sphere center coordinates, a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system is obtained.

[0019] Furthermore, the step of calculating the representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinate system based on the first unit vector and the second unit vector includes:

[0020] Converting the first unit vector into a representation in the positioning camera coordinate system to obtain a first conversion vector;

[0021] Converting the second unit vector into a representation in the positioning camera coordinate system to obtain a second conversion vector;

[0022] The representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinate system is calculated according to the first conversion vector and the second conversion vector.

[0023] Furthermore, the step of fitting a fitting sphere consisting of the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value and the fifth coordinate value includes:

[0024] A spherical surface fitting is performed on the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value using a least square method to obtain a fitting sphere.

[0025] Furthermore, the step of establishing a space rectangular coordinate system based on the first coordinate value, the first unit vector, and the second unit vector includes:

[0026] Cross-multiply the first unit vector by the second unit vector to obtain a cross-product vector;

[0027] A spatial rectangular coordinate system is established with the first coordinate value as the origin, the first unit vector as the x-axis, and the cross product vector as the y-axis.

[0028] Furthermore, the first conversion vector is:

[0029] a′1=s1×s2 / |s1×s2|

[0030] Wherein, s1=p2-p′1, s2=p3-p2, a′1 represents the first conversion vector, p′1 represents the transformed coordinate value, p2 represents the second coordinate value, and p3 represents the third coordinate value;

[0031] The second transformation vector is:

[0032] a′2=s′1×s′2 / |s′1×s′2|

[0033] Among them, s′1=p4-p′1, s′2=p5-p4, a′2 represents the second conversion vector, p′1 represents the transformed coordinate value, p4 represents the fourth coordinate value, and p5 represents the fifth coordinate value.

[0034] In a second aspect, an embodiment of the present invention provides a calibration device for calibrating a surgical robot, wherein the surgical robot includes a robotic arm, an intrinsic base of the robotic arm, and a positioning camera, and the device includes a mounting module, a first calibration module, and a second calibration module;

[0035] The mounting module is used to mount a reference array at the end of the robotic arm; wherein the reference array comprises a bracket disposed at the end of the robotic arm, and four positioning members disposed on the bracket, wherein the four positioning members are asymmetrically disposed;

[0036] The first calibration module is used to establish a reference array coordinate system based on any three positioning elements;

[0037] The first calibration module is further used to control the end of the manipulator to adjust to the O1 posture, obtain the first unit vector and the second unit vector in the intrinsic TCP coordinate system of the manipulator, and record the first coordinate value of the origin of the intrinsic TCP coordinate system of the manipulator in the intrinsic base coordinate system of the manipulator, the first transformation matrix from the intrinsic base coordinate system of the manipulator to the intrinsic TCP coordinate system of the manipulator, the transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and the second transformation matrix from the positioning camera coordinate system to the reference array coordinate system; wherein the first unit vector and the second unit vector are not perpendicular to each other;

[0038] The first calibration module is further configured to keep the origin of the intrinsic TCP coordinate system of the manipulator fixed in the intrinsic base coordinate system of the manipulator, control the end of the manipulator to rotate twice continuously with the first unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center using a selected rotation method and a first angle, so that the end of the manipulator is adjusted to an O2 pose and an O3 pose in sequence, and record a second coordinate value and a third coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system in the O2 pose and the O3 pose, respectively;

[0039] The first calibration module is further used to control the end of the manipulator to adjust back to the O1 posture, keep the origin of the intrinsic TCP coordinate system of the manipulator fixed in the intrinsic base coordinate system of the manipulator, control the end of the manipulator to rotate twice continuously with the second unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center, using the selected rotation method and the second angle, so that the end of the manipulator is adjusted to the O4 posture and the O5 posture successively, and record the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system in the O4 posture and the O5 posture respectively;

[0040] The second calibration module is used to establish a spatial rectangular coordinate system based on the first coordinate value, the first unit vector and the second unit vector, and obtain a third transformation matrix from the intrinsic TCP coordinate system of the manipulator to the spatial rectangular coordinate system when the manipulator end is in an O1 posture;

[0041] The second calibration module is configured to calculate a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value;

[0042] The second calibration module is used to calculate the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the robotic arm, and the transformation matrix from the intrinsic TCP coordinate system of the robotic arm to the reference array coordinate system based on the first transformation matrix, the second transformation matrix, the third transformation matrix and the fourth transformation matrix.

[0043] In a third aspect, an embodiment of the present invention provides a surgical robot comprising a robotic arm, an intrinsic base of the robotic arm, a positioning camera, and a calibration device, wherein the calibration device is used to implement the calibration method described in the first aspect.

[0044] In a fourth aspect, an embodiment of the present invention provides an electronic device, comprising a processor and a memory, wherein the memory stores a computer program that can be executed by the processor, and the processor can execute the computer program to implement the calibration method as described in the first aspect.

[0045] In a fifth aspect, an embodiment of the present invention provides a storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the calibration method as described in the first aspect.

[0046] The calibration method, device, robot, electronic device and storage medium provided by the embodiments of the present invention control the posture of the end of the manipulator to be adjusted to the O1 posture while keeping the origin of the intrinsic TCP coordinate system of the manipulator fixed in the intrinsic base coordinate system of the manipulator, and adjust the posture of the end of the manipulator to the O2 posture, O3 posture, O4 posture and O5 posture based on the selected first unit vector and second unit vector. In the five postures, the data of the origin of the reference array coordinate system in the positioning camera coordinate system are obtained respectively, and then the conversion from the positioning camera coordinate system to the intrinsic base coordinate system of the manipulator is calculated based on the obtained data. The calibration is completed by using the matrix and the conversion matrix from the intrinsic TCP coordinate system of the manipulator to the reference array coordinate system. During the posture adjustment of the end of the manipulator, the origin position of the intrinsic TCP coordinate system of the manipulator remains unchanged. To a certain extent, the movement of the posture of the end of the manipulator can be limited to a very small range, greatly reducing the probability of the positioning camera being blocked. At the same time, the first unit vector and the second unit vector can be flexibly selected, further reducing the probability of the positioning camera being blocked due to interference caused by the manipulator in a small space, thereby being able to obtain various data more accurately, thereby improving the calibration accuracy and reducing errors.

[0047] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. It should be understood that the following drawings only illustrate certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without paying any creative work.

[0049] Figure 1 A block diagram of a calibration system provided by an embodiment of the present invention is shown.

[0050] Figure 2 One of the structural schematic diagrams of the surgical robot provided by an embodiment of the present invention is shown.

[0051] Figure 3 The second structural schematic diagram of the surgical robot provided by the embodiment of the present invention is shown.

[0052] Figure 4 A block diagram of a calibration device provided by an embodiment of the present invention is shown.

[0053] Figure 5 A block diagram of an electronic device provided by an embodiment of the present invention is shown.

[0054] Figure markings: 100-calibration system; 110-surgical robot; 120-controller; 130-intrinsic base of the robotic arm; 140-robotic arm; 150-end of the robotic arm; 160-positioning camera; 170-reference array; 180-bracket; 190-positioning member; 200-calibration device; 210-installation module; 220-first calibration module; 230-second calibration module; 240-electronic device. DETAILED DESCRIPTION

[0055] The following will be combined with the accompanying drawings to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings herein can be arranged and designed in various different configurations.

[0056] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention as claimed, but is merely intended to represent selected embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative work are within the scope of protection of the present invention.

[0057] It should be noted that relational terms such as "first" and "second" are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus 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 apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus comprising the element.

[0058] To complete the navigation and positioning of the surgical robot, it is necessary to obtain the transformation relationship between the tool tracer and the coordinate system of the end of the robotic arm in advance. This process is called hand-eye calibration.

[0059] Traditional hand-eye calibration methods include the following:

[0060] (1) The conversion relationship between the reference array at the end of the manipulator and the coordinate system of the intrinsic TCP at the end of the manipulator can be measured in the hardware design drawings. This measured value is the design value, which is used to perform the hand-eye calibration of the manipulator base and the positioning camera. Since there is an error between the design value and the actual value of the object, this error is brought into the hand-eye calibration of the manipulator base and the positioning camera. The result of the hand-eye calibration itself is used to correct the conversion relationship of the end tool coordinate system, resulting in this correction being localized. When the posture of the manipulator end changes significantly, this correction is no longer applicable.

[0061] (2) First, the rotation relationship between the positioning camera coordinate system and the manipulator's intrinsic base coordinate system is obtained. Then, by keeping the origin of the manipulator's intrinsic TCP coordinate system stationary and rotating the reference array at the end of the manipulator, the sphere and its center are fitted. The position of the center of the sphere is used to calculate the translation in the end-tool coordinate system transformation relationship, and the complete end-tool coordinate system transformation relationship is obtained by combining the previous rotation relationship. In this hand-eye calibration method, the end of the manipulator rotates around the end of the intrinsic TCP, which can easily cause the reference coordinate system to be blocked. The reference array is difficult to be captured by the positioning camera, resulting in errors in the collected data, which in turn leads to large calibration errors.

[0062] (3) is a modified version of the "nine-point calibration method". The end of the robotic arm needs to move nine times, and its coverage area needs to be large to ensure the global applicability of the calibration results. However, moving nine times is tedious and time-consuming, and large-scale movement is limited by the small space of the operating room.

[0063] Based on the above considerations, an embodiment of the present invention provides a calibration method that can be completed in a small space and can reduce calibration errors, thereby improving the problem of large errors existing in current calibration methods.

[0064] The calibration method provided by the embodiment of the present invention can be applied to Figure 1 The calibration system 100 shown in FIG. 1 includes a surgical robot 110 and a controller 120. The surgical robot 110 may include a Figure 2 As shown, it includes a robotic arm 140, a robotic arm intrinsic base 130 and a positioning camera 160. The robotic arm 140 is set on the robotic arm intrinsic base 130, and the positioning camera 160 is set toward the robotic arm 140. The positioning camera 160 can be connected to the controller 120 in a wired or wireless manner.

[0065] The controller 120 is used to control the position and movement of the robotic arm 140 .

[0066] The positioning camera 160 is used to position the robotic arm 140 .

[0067] The positioning camera 160 may be an optical positioning camera 160, or may be replaced by other optical positioning devices or positioning devices. The controller 120 includes but is not limited to: a PLC controller, an MCU controller, a computer and other devices.

[0068] In a possible embodiment, the present invention provides a calibration method for calibrating a surgical robot 110. The surgical robot 110 may be the surgical robot 110 shown in the figure. The calibration method may include the following steps. In this embodiment, the calibration method is applied to Figure 1 The controller 120 in FIG. 1 is used as an example.

[0069] S1, install the reference array at the end of the robotic arm.

[0070] In one possible implementation, refer to Figure 3 The reference array 170 may include a bracket 180 disposed on the end of the robotic arm 150 and four positioning members 190 disposed on the bracket 180 , wherein the four positioning members 190 are asymmetrically disposed.

[0071] In order to enable the positioning camera 160 to more clearly obtain the coordinate information of the reference array 170, the positioning member 190 can be configured as a reflective sheet.

[0072] S2, establish a reference array coordinate system based on any three positioning components.

[0073] S3, control the end of the manipulator to adjust to the O1 posture, select the first unit vector and the second unit vector in the manipulator's intrinsic TCP coordinate system, and record the first coordinate value of the origin of the manipulator's intrinsic TCP coordinate system in the manipulator's intrinsic base coordinate system, the first transformation matrix from the manipulator's intrinsic base coordinate system to the manipulator's intrinsic TCP coordinate system, the transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and the second transformation matrix from the positioning camera coordinate system to the reference array coordinate system.

[0074] The O1 posture can be flexibly selected according to the actual spatial conditions. That is, if the surgical robot 110 is in the operating room, the user can select any posture as the O1 posture according to the positioning conditions of the operating room (avoiding interference with other instruments and avoiding obstruction of the positioning camera 160). In this embodiment, no specific limitation is made.

[0075] It should be emphasized that the first unit vector and the second unit vector are not perpendicular to each other. Moreover, the directions of the first unit vector and the second unit vector can be arbitrarily selected according to the actual situation during the calibration process. In this embodiment, the directions of the first unit vector and the second unit vector are not specifically limited.

[0076] S4, keep the origin of the manipulator's intrinsic TCP coordinate system fixed in the manipulator's intrinsic base coordinate system, control the manipulator's end to rotate twice continuously with the first unit vector as the axis and the origin of the manipulator's intrinsic TCP coordinate system as the rotation center using the selected rotation method and the first angle, so that the manipulator's end is adjusted to the O2 pose and the O3 pose in succession, and record the second coordinate value and the third coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system in the O2 pose and the O3 pose respectively.

[0077] In the O2 pose, record the second coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system. In the O3 pose, record the third coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system.

[0078] S5, control the end of the manipulator to adjust back to the O1 posture, keep the origin of the manipulator's intrinsic TCP coordinate system fixed in the manipulator's intrinsic base coordinate system, control the end of the manipulator to use the second unit vector as the axis and the origin of the manipulator's intrinsic TCP coordinate system as the rotation center, and rotate twice continuously using the selected rotation method and the second angle, so that the end of the manipulator is adjusted to the O4 posture and O5 posture successively. At the O4 posture and O5 posture, respectively, record the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system.

[0079] In the O4 posture, the fourth coordinate value of the origin of the reference array 170 coordinate system in the positioning camera 160 coordinate system is recorded. In the O5 posture, the fifth coordinate value of the origin of the reference array 170 coordinate system in the positioning camera 160 coordinate system is recorded.

[0080] S6. Based on the first coordinate value, the first unit vector and the second unit vector, a spatial rectangular coordinate system is established, and a third transformation matrix from the intrinsic TCP coordinate system of the robotic arm to the spatial rectangular coordinate system is obtained when the end of the robotic arm is in the O1 posture.

[0081] S7. Calculate a fourth transformation matrix from the positioning camera coordinate system to the space rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value.

[0082] S8. Calculate the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the robotic arm, and the transformation matrix from the intrinsic TCP coordinate system of the robotic arm to the reference array coordinate system, based on the first transformation matrix, the second transformation matrix, the third transformation matrix, and the fourth transformation matrix.

[0083] It should be emphasized that during steps S3 - S5, the reference array 170 at the end of the robotic arm 150 must be visible to the positioning camera 160 throughout the process.

[0084] During the calibration process, based on its own positioning function, the positioning camera 160 can position the robotic arm 140 and the reference array 170 to obtain the first coordinate value, the transformation coordinate value, the first transformation matrix, the second transformation matrix, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value. Then, transmit the above - mentioned first coordinate value, transformation coordinate value, first transformation matrix, second transformation matrix, second coordinate value, third coordinate value, fourth coordinate value, and fifth coordinate value to the controller 120, and the controller 120 uses the methods in steps S6 - S8 to complete the calibration.

[0085] Compared with the traditional hand - eye calibration method of surgical robots, in the above - mentioned calibration method, during the process of adjusting the pose at the end of the robotic arm to collect various data, the origin position of the intrinsic TCP coordinate system of the robotic arm remains unchanged all the time. To a certain extent, it can limit the movement of the pose at the end of the robotic arm within a very small range, greatly reducing the probability of the positioning camera being blocked. At the same time, the first unit vector and the second unit vector can be flexibly selected, further reducing the probability of the robotic arm causing interference in a narrow space and blocking the positioning camera, so as to be able to obtain various data more accurately, and then improve the calibration accuracy and reduce errors.

[0086] In order to avoid, to a certain extent, the large - amplitude posture of the end of the robotic arm 150 from blocking the reference array 170 and making the positioning camera 160 unable to capture the reference matrix. Therefore, in the actual application process, the first angle and the second angle can be adjusted according to the visibility of the reference array 170 under the positioning camera 160.

[0087] In a possible implementation manner, specifically, the first angle and the second angle can meet the following limiting conditions: 10° < m < 180°, 10° < n < 180°, where m represents the first angle and n represents the second angle.

[0088] Furthermore, the rotation methods in steps S4 and S5 above can be selected according to the actual situation. For example, it can be the right - hand screw method or the left - hand screw method. In this implementation manner, no specific limitation is made. However, it should be emphasized that the rotation methods in steps S4 and S5 must be the same.

[0089] In this embodiment, the intrinsic TCP coordinate system of the robot arm is represented by F tcp Indicates that the intrinsic base coordinate system of the manipulator is F base Indicates that the positioning camera coordinate system is F camera Indicates that the reference array coordinate system is F drf Indicates that the manipulator's intrinsic TCP coordinate system F tcp The origin of the robot arm is in the intrinsic base coordinate system F base The first coordinate value under is represented by p1, and the reference array coordinate system F drf The origin of the camera coordinate system F is positioned camera The transformed coordinate value under is represented by p′1, and the manipulator’s intrinsic base coordinate system F base To the robot arm's intrinsic TCP coordinate system F tcp The first transformation matrix is T bTot Indicates that the camera coordinate system F is positioned camera To the reference array coordinate system F drf The second transformation matrix is T cTod express.

[0090] The robot's intrinsic TCP coordinate system F tcp The first unit vector is represented by a1, the second unit vector is represented by a2. The first angle is represented by m, and the reference array coordinate system F drf The origin of the camera coordinate system F is positioned camera The second coordinate value is marked with p2, and the third coordinate value is marked with p3. The second angle is marked with n, and the reference array coordinate system F drf The fourth coordinate value of the origin in the positioning camera coordinate system is represented by p4, and the fifth coordinate value is represented by p5.

[0091] The space rectangular coordinate system is F rot Indicates that the manipulator's intrinsic TCP coordinate system F tcp To the spatial rectangular coordinate system F rot The third transformation matrix is T tTor Indicates that the camera coordinate system F is positioned camera To the spatial rectangular coordinate system F rot The fourth transformation matrix is T cTor Indicates that the camera coordinate system F is positioned camera To the intrinsic base coordinate system F of the robot arm base The transformation matrix is T cTob Indicates that the manipulator's intrinsic TCP coordinate system F tcp To reference array coordinate system F drf The transformation matrix is T tTod express.

[0092] Furthermore, with respect to step S6, the spatial rectangular coordinate system can be established through the following steps.

[0093] S61, cross-multiply the first unit vector by the second unit vector to obtain a cross-product vector.

[0094] S62, establishing a spatial rectangular coordinate system with the first coordinate value as the origin, the first unit vector as the x-axis, and the cross product vector as the y-axis.

[0095] It should be understood that after the x-axis and the y-axis are determined, the z-axis of the spatial rectangular coordinate system can be determined.

[0096] Space rectangular coordinate system F rot The calculation formulas for the direction vectors of the x-axis, y-axis, and z-axis can be expressed as:

[0097]

[0098] Furthermore, after establishing the space rectangular coordinate system F rot Then, based on the conversion principle between coordinate systems, when the end arm 150 is in the O1 position, the third conversion matrix T from the TCP coordinate system of the robotic arm 140 to the spatial rectangular coordinate system is tTor It can be expressed as follows:

[0099]

[0100] In a possible implementation, step S7 can be further implemented as the following steps.

[0101] S71 , based on the first unit vector and the second unit vector, calculating the representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinates.

[0102] S72 , fitting a fitting sphere consisting of the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value, and obtaining the coordinates pc of the center of the fitting sphere.

[0103] S73 , obtaining a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system according to the representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinate system and the sphere center coordinates.

[0104] Furthermore, in a possible implementation, step S71 can be implemented through the following steps.

[0105] S711: Convert the first unit vector into a representation in the positioning camera coordinate system to obtain a first conversion vector.

[0106] S712: Convert the second unit vector into a representation in the positioning camera coordinate system to obtain a second conversion vector.

[0107] S713 , calculating, based on the first conversion vector and the second conversion vector, a representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinates.

[0108] The first transformation vector can be represented by two vectors s1 and s2 perpendicular to it. Vectors s1 and s2 can be understood as the positioning of the camera coordinate system F camera Similarly, the second transformation vector can be represented by two vectors s′1 and s′2 perpendicular to it. Vectors s′1 and s′2 can be understood as the positioning of the camera coordinate system F camera The two direction vectors below.

[0109] In a possible implementation, the first conversion vector may be expressed as: a′1=s1×s2 / |s1×s2|, where s1=p2−p′1, s2=p3−p2, and a′1 represents the first conversion vector.

[0110] The second conversion vector can be expressed as: a′2=s′1×s′2 / |s′1×s′2|, where s′1=p4−p′1, s′2=p5−p4, and a′2 represents the second conversion vector.

[0111] Based on the first transformation vector a′1 and the second transformation vector a′2, the space rectangular coordinate system F rot The three-axis direction vectors are positioned in the camera coordinate system F camera The following representations can be:

[0112]

[0113] For step S72 , in a possible implementation, a least square method may be used to perform spherical fitting on the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value to obtain a fitting sphere.

[0114] At this time, the coordinates of the center of the fitting sphere can be expressed as:

[0115] For step S73, in one possible implementation, the camera coordinate system F is positioned. camera To the spatial rectangular coordinate system F rot The fourth transformation matrix T cTor It can be expressed as follows:

[0116]

[0117] For step S8, in one possible implementation, the transformation matrix from the positioning camera 160 coordinate system to the robot arm intrinsic base 130 coordinate system and the transformation matrix from the robot arm 140 intrinsic TCP coordinate system to the reference array 170 coordinate system can be obtained according to the following transformation formula.

[0118] The conversion formula is:

[0119] T cTob =T cTor ·(T tTor ) -1 ·(T bTot ) -1 , T tTod =(TbTot) -1 ·(TcTob) -1 ·T cTod , where T cTob Represents the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the manipulator, T tTod Represents the transformation matrix from the robot's intrinsic TCP coordinate system to the reference array coordinate system.

[0120] Substituting the first transformation matrix, the second transformation matrix, the third transformation matrix, and the fourth transformation matrix into the above transformation formula, we can obtain the transformation matrix T from the positioning camera coordinate system to the manipulator intrinsic base coordinate system: cT ob, and the transformation matrix T from the manipulator's intrinsic TCP coordinate system to the reference array coordinate system tTod .

[0121] The calibration method provided by an embodiment of the present invention performs four posture adjustments on the end of the manipulator and, based on the data collected during the posture adjustment process, calculates the transformation matrix from the positioning camera coordinate system to the manipulator's intrinsic base coordinate system, as well as the transformation matrix from the manipulator's intrinsic TCP coordinate system to the reference array coordinate system. Both transformation matrices are global solutions, eliminating the problem of errors in the resulting transformation matrices caused by the use of design parameters. There is no need for additional calibration after calibration, resulting in higher calibration accuracy. Furthermore, during the calibration process, the origin position of the manipulator's intrinsic TCP coordinate system remains unchanged, meaning that the movement of the manipulator's end posture during the entire calibration process is limited to a very small range. This improves space utilization, reduces the possibility of the positioning camera being blocked, and can reduce calibration errors.

[0122] Based on the inventive concept of the above calibration method, in a possible implementation manner, referring to Figure 4 The embodiment of the present invention further provides a calibration device 200, which can be applied to Figure 1 In the controller 120 , the calibration device 200 may include an installation module 210 , a first calibration module 220 and a second calibration module 230 .

[0123] The installation module 210 is used to install a reference array at the end of the robotic arm, wherein the reference array includes a bracket arranged at the end of the robotic arm and four positioning members arranged on the bracket, and the four positioning members are arranged asymmetrically.

[0124] The first calibration module 220 is configured to establish a reference array coordinate system based on any three of the positioning elements.

[0125] The first calibration module 220 is further configured to control the manipulator end to adjust to the O1 pose, obtain a first unit vector and a second unit vector in the manipulator's intrinsic TCP coordinate system, and record a first coordinate value of the origin of the manipulator's intrinsic TCP coordinate system in the manipulator's intrinsic base coordinate system, a first transformation matrix from the manipulator's intrinsic base coordinate system to the manipulator's intrinsic TCP coordinate system, a transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and a second transformation matrix from the positioning camera coordinate system to the reference array coordinate system. The first unit vector and the second unit vector are not perpendicular to each other.

[0126] The first calibration module 220 is also used to keep the origin of the robot arm's intrinsic TCP coordinate system fixed in the robot arm's intrinsic base coordinate system, control the robot arm's end to rotate twice continuously with the first unit vector as the axis and the origin of the robot arm's intrinsic TCP coordinate system as the rotation center using the selected rotation method and the first angle, so that the robot arm's end is adjusted to the O2 posture and the O3 posture in turn, and record the second coordinate value and the third coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system in the O2 posture and the O3 posture respectively.

[0127] The first calibration module 220 is also used to control the end of the robotic arm to adjust back to the O1 posture, keep the origin of the intrinsic TCP coordinate system of the robotic arm fixed in the intrinsic base coordinate system of the robotic arm, control the end of the robotic arm to use the second unit vector as the axis and the origin of the intrinsic TCP coordinate system of the robotic arm as the rotation center, and rotate twice continuously using the selected rotation method and the second angle, so that the end of the robotic arm is adjusted to the O4 posture and the O5 posture successively, and record the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system in the O4 posture and the O5 posture respectively.

[0128] The second calibration module 230 is used to establish a spatial rectangular coordinate system based on the first coordinate value, the first unit vector and the second unit vector, and obtain a third transformation matrix from the intrinsic TCP coordinate system of the robot arm to the spatial rectangular coordinate system when the end of the robot arm is in the O1 posture.

[0129] The second calibration module 230 is used to calculate a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value and the fifth coordinate value.

[0130] The second calibration module 230 is used to calculate the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the robot arm, and the transformation matrix from the intrinsic TCP coordinate system of the robot arm to the reference array coordinate system based on the first transformation matrix, the second transformation matrix, the third transformation matrix and the fourth transformation matrix.

[0131] In the above-mentioned calibration device 200, through the coordinated action of the installation module 210, the first calibration module 220 and the second calibration module 230, in the process of adjusting the posture of the end of the robot arm to collect various data, the origin position of the robot arm's intrinsic TCP coordinate system remains unchanged. To a certain extent, the movement of the posture of the end of the robot arm can be limited to a very small range, greatly reducing the probability of the positioning camera being blocked. At the same time, the first unit vector and the second unit vector can be flexibly selected, further reducing the probability of the positioning camera being blocked due to interference caused by the robot arm in a small space, thereby being able to obtain various data more accurately, thereby improving the calibration accuracy and reducing errors.

[0132] The specific definition of the calibration device 200 can be found in the definition of the calibration method above and will not be repeated here. Each module in the calibration device 200 can be implemented in whole or in part through software, hardware, or a combination thereof. Each module can be embedded in or independent of the processor of the electronic device in hardware form, or can be stored in the memory of the electronic device in software form, so that the processor can call and execute the corresponding operations of each module.

[0133] In a possible implementation, an embodiment of the present invention further provides a robot comprising a robotic arm 140, a robotic arm intrinsic base 130, a positioning camera 160, and a calibration device, wherein the calibration device is used to implement the calibration method provided in the above implementation.

[0134] In one embodiment, an electronic device 240 is provided. The electronic device 240 may be a terminal, and its internal structure diagram may be as follows: Figure 5As shown. The electronic device 240 includes a processor, a memory, a communication interface, a display screen and an input device connected via a system bus. Among them, the processor of the electronic device 240 is used to provide computing and control capabilities. The memory of the electronic device 240 includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The communication interface of the electronic device 240 is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, an operator network, near field communication (NFC) or other technologies. When the computer program is executed by the processor, the calibration method provided in the above embodiment is implemented.

[0135] Figure 5 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present invention, and does not constitute a limitation on the electronic device 240 to which the solution of the present invention is applied. The specific electronic device 240 may include Figure 5 More or fewer components may be shown, or some components may be combined, or the components may be arranged differently.

[0136] In one embodiment, the calibration device 200 provided by the present invention can be implemented in the form of a computer program. The computer program can be used in Figure 5 The electronic device 240 is shown as running. The memory of the electronic device 240 can store various program modules constituting the calibration device 200, such as, Figure 4 The illustrated installation module 210, the first calibration module 220 and the second calibration module 230. The computer program composed of the various program modules enables the processor to execute the steps of the calibration method described in this specification.

[0137] For example, Figure 5 The electronic device 240 shown may be Figure 4 The installation module 210 in the calibration device 200 shown executes step S1. The electronic device 240 may execute steps S0-S5 through the first calibration module 220. The electronic device 240 may execute steps S16-S8 through the second calibration module 230.

[0138] In one embodiment, an electronic device 240 is provided, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the following steps when executing the computer program: installing a reference array at the end of a robotic arm; establishing a reference array coordinate system with any three positioning members as a reference; controlling the end of the robotic arm to adjust to an O1 posture, selecting a first unit vector and a second unit vector in the intrinsic TCP coordinate system of the robotic arm, and recording a first coordinate value of the origin of the intrinsic TCP coordinate system of the robotic arm in the intrinsic base coordinate system of the robotic arm, a first transformation matrix from the intrinsic base coordinate system of the robotic arm to the intrinsic TCP coordinate system of the robotic arm, a transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and a second transformation matrix from the positioning camera coordinate system to the reference array coordinate system; keeping the origin of the intrinsic TCP coordinate system of the robotic arm fixed in the intrinsic base coordinate system of the robotic arm, controlling the end of the robotic arm to rotate twice continuously with the first unit vector as the axis and the origin of the intrinsic TCP coordinate system of the robotic arm as the rotation center, using the selected rotation method and the first angle, so that the end of the robotic arm is adjusted to an O2 posture and an O3 posture successively, In the O2 and O3 poses, respectively, record the second and third coordinate values of the origin of the reference array coordinate system in the positioning camera coordinate system; control the end of the manipulator to adjust back to the O1 pose, keep the origin of the manipulator's intrinsic TCP coordinate system fixed in the manipulator's intrinsic base coordinate system, control the end of the manipulator to use the second unit vector as the axis and the origin of the manipulator's intrinsic TCP coordinate system as the rotation center, and rotate twice continuously with the selected rotation method and the second angle, so that the end of the manipulator is adjusted to the O4 pose and O5 pose respectively. In this posture, the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system are recorded; based on the first coordinate value, the first unit vector and the second unit vector, a spatial rectangular coordinate system is established, and the third transformation matrix from the intrinsic TCP coordinate system of the manipulator to the spatial rectangular coordinate system is obtained when the end of the manipulator is in the O1 posture; based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value and the fifth coordinate value, the fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system is calculated.

[0139] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored, which performs the following steps when executed by a processor: installing a reference array at the end of a manipulator; establishing a reference array coordinate system with any three positioning members as a reference; controlling the end of the manipulator to adjust to an O1 posture, selecting a first unit vector and a second unit vector in the manipulator's intrinsic TCP coordinate system, and recording a first coordinate value of the origin of the manipulator's intrinsic TCP coordinate system in the manipulator's intrinsic base coordinate system, a first transformation matrix from the manipulator's intrinsic base coordinate system to the manipulator's intrinsic TCP coordinate system, a transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and a second transformation matrix from the positioning camera coordinate system to the reference array coordinate system; keeping the origin of the manipulator's intrinsic TCP coordinate system fixed in the manipulator's intrinsic base coordinate system, controlling the end of the manipulator to rotate twice continuously with the first unit vector as the axis and the origin of the manipulator's intrinsic TCP coordinate system as the rotation center, using the selected rotation method and the first angle, so that the end of the manipulator is adjusted to an O2 posture and an O3 posture successively, respectively at O2 In the O3 pose, record the second and third coordinate values of the origin of the reference array coordinate system in the positioning camera coordinate system; control the end of the manipulator to adjust back to the O1 pose, keep the origin of the manipulator's intrinsic TCP coordinate system fixed in the manipulator's intrinsic base coordinate system, control the end of the manipulator to use the second unit vector as the axis and the origin of the manipulator's intrinsic TCP coordinate system as the rotation center, and rotate twice continuously with the selected rotation method and the second angle, so that the end of the manipulator is adjusted to the O4 pose and O5 pose respectively, and , record the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system; based on the first coordinate value, the first unit vector and the second unit vector, establish a spatial rectangular coordinate system, and obtain the third transformation matrix from the intrinsic TCP coordinate system of the manipulator to the spatial rectangular coordinate system when the end of the manipulator is in the O1 posture; based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value and the fifth coordinate value, calculate the fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system.

[0140] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can 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 show the possible architectures, functions and operations of the devices, methods and computer program products according to multiple embodiments of the present invention. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a portion of code, and the module, program segment or a portion of code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can 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, can be implemented using a dedicated hardware-based system that performs the specified function or action, or can be implemented using a combination of dedicated hardware and computer instructions.

[0141] In addition, the functional modules in the various embodiments of the present invention 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.

[0142] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0143] The foregoing description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Those skilled in the art will readily appreciate that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention are intended to be within the scope of protection of the present invention.

Claims

1. A calibration method, characterized in that: For calibration of a surgical robot, the surgical robot includes a robotic arm, an intrinsic base of the robotic arm, and a positioning camera, the method comprising: A reference array is installed at the end of the robotic arm; wherein the reference array includes a bracket provided at the end of the robotic arm, and four positioning members provided on the bracket, and the four positioning members are asymmetrically arranged; Establishing a reference array coordinate system based on any three of the positioning elements; Control the end of the robotic arm to adjust to Position, select the first unit vector and the second unit vector in the intrinsic TCP coordinate system of the manipulator, and record the first coordinate value of the origin of the intrinsic TCP coordinate system of the manipulator in the intrinsic base coordinate system of the manipulator, the first transformation matrix from the intrinsic base coordinate system of the manipulator to the intrinsic TCP coordinate system of the manipulator, the transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and the second transformation matrix from the positioning camera coordinate system to the reference array coordinate system; wherein the first unit vector and the second unit vector are not perpendicular to each other; The origin of the intrinsic TCP coordinate system of the manipulator is kept fixed in the intrinsic base coordinate system of the manipulator, and the end of the manipulator is controlled to rotate twice continuously with the first unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center, using the selected rotation method and the first angle, so that the end of the manipulator is adjusted to Posture and Position, respectively Posture and In the position and posture, record the second coordinate value and the third coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system; Control the end of the robotic arm to adjust back The origin of the intrinsic TCP coordinate system of the manipulator is kept fixed in the intrinsic base coordinate system of the manipulator, and the end of the manipulator is controlled to rotate twice continuously with the second unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center, using the selected rotation method and the second angle, so that the end of the manipulator is adjusted to Posture and Position, respectively Posture and In the position and posture, record the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system; Based on the first coordinate value, the first unit vector and the second unit vector, a spatial rectangular coordinate system is established, and the end of the robotic arm is obtained as A third transformation matrix from the intrinsic TCP coordinate system of the manipulator to the spatial rectangular coordinate system at the time of the pose; Calculating a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value; According to the first transformation matrix, the second transformation matrix, the third transformation matrix and the fourth transformation matrix, the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the manipulator and the transformation matrix from the intrinsic TCP coordinate system of the manipulator to the reference array coordinate system are calculated.

2. The calibration method according to claim 1, characterized in that: The step of calculating a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value includes: Based on the first unit vector and the second unit vector, calculating the representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinate system; Fitting a fitting sphere consisting of the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value and the fifth coordinate value to obtain the coordinates of the center of the fitting sphere ; According to the representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinates and the sphere center coordinates, a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system is obtained.

3. The calibration method according to claim 2, characterized in that: The step of calculating, based on the first unit vector and the second unit vector, a representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinate system includes: Converting the first unit vector into a representation in the positioning camera coordinate system to obtain a first conversion vector; Converting the second unit vector into a representation in the positioning camera coordinate system to obtain a second conversion vector; The representation of the three-axis direction vectors of the spatial rectangular coordinate system in the positioning camera coordinate system is calculated according to the first conversion vector and the second conversion vector.

4. The calibration method according to claim 2, characterized in that: The step of fitting a fitting sphere consisting of the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value includes: A spherical surface fitting is performed on the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value using a least square method to obtain a fitting sphere.

5. The calibration method according to claim 1 or 2, characterized in that: The step of establishing a spatial rectangular coordinate system based on the first coordinate value, the first unit vector, and the second unit vector includes: Cross-multiply the first unit vector by the second unit vector to obtain a cross-product vector; A spatial rectangular coordinate system is established with the first coordinate value as the origin, the first unit vector as the x-axis, and the cross product vector as the y-axis.

6. The calibration method according to claim 3, characterized in that: The first conversion vector is: in, , , represents the first transformation vector, Represents the transformed coordinate value, represents the second coordinate value, Indicates the third coordinate value; The second transformation vector is: in, , , represents the second transformation vector, Represents the transformed coordinate value, represents the fourth coordinate value, Indicates the fifth coordinate value.

7. A calibration device, characterized in that: Used for calibration of a surgical robot, the surgical robot comprising a robotic arm, an intrinsic base of the robotic arm, and a positioning camera, the device comprising a mounting module, a first calibration module, and a second calibration module; The mounting module is used to mount a reference array at the end of the robotic arm; wherein the reference array comprises a bracket disposed at the end of the robotic arm, and four positioning members disposed on the bracket, wherein the four positioning members are asymmetrically disposed; The first calibration module is used to establish a reference array coordinate system based on any three positioning elements; The first calibration module is also used to control the end of the robotic arm to adjust to Position and posture, obtain the first unit vector and the second unit vector in the intrinsic TCP coordinate system of the manipulator, and record the first coordinate value of the origin of the intrinsic TCP coordinate system of the manipulator in the intrinsic base coordinate system of the manipulator, the first transformation matrix from the intrinsic base coordinate system of the manipulator to the intrinsic TCP coordinate system of the manipulator, the transformed coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system, and the second transformation matrix from the positioning camera coordinate system to the reference array coordinate system; wherein the first unit vector and the second unit vector are not perpendicular to each other; The first calibration module is further used to keep the origin of the intrinsic TCP coordinate system of the manipulator fixed in the intrinsic base coordinate system of the manipulator, control the end of the manipulator to rotate twice with the first unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center, using the selected rotation method and the first angle, so that the end of the manipulator is adjusted to Posture and Position, respectively Posture and In the position and posture, record the second coordinate value and the third coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system; The first calibration module is also used to control the end of the robotic arm to adjust back to The origin of the intrinsic TCP coordinate system of the manipulator is kept fixed in the intrinsic base coordinate system of the manipulator, and the end of the manipulator is controlled to rotate twice continuously with the second unit vector as the axis and the origin of the intrinsic TCP coordinate system of the manipulator as the rotation center, using the selected rotation method and the second angle, so that the end of the manipulator is adjusted to Posture and Position, respectively Posture and In the position and posture, record the fourth coordinate value and the fifth coordinate value of the origin of the reference array coordinate system in the positioning camera coordinate system; The second calibration module is used to establish a spatial rectangular coordinate system based on the first coordinate value, the first unit vector and the second unit vector, and obtain the end of the robotic arm as A third transformation matrix from the intrinsic TCP coordinate system of the manipulator to the spatial rectangular coordinate system at the time of the pose; The second calibration module is configured to calculate a fourth transformation matrix from the positioning camera coordinate system to the spatial rectangular coordinate system based on the first unit vector, the second unit vector, the transformed coordinate value, the second coordinate value, the third coordinate value, the fourth coordinate value, and the fifth coordinate value; The second calibration module is used to calculate the transformation matrix from the positioning camera coordinate system to the intrinsic base coordinate system of the robotic arm, and the transformation matrix from the intrinsic TCP coordinate system of the robotic arm to the reference array coordinate system based on the first transformation matrix, the second transformation matrix, the third transformation matrix and the fourth transformation matrix.

8. A surgical robot system, characterized in that: The device comprises a robotic arm, an intrinsic base of the robotic arm, a positioning camera and a calibration device, wherein the calibration device is used to implement the calibration method according to any one of claims 1 to 6.

9. An electronic device, characterized in that: The system comprises a processor and a memory, wherein the memory stores a computer program that can be executed by the processor, and the processor can execute the computer program to implement the calibration method according to any one of claims 1 to 6.

10. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the calibration method according to any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Hand-eye calibration method of surgical robot based on optical positioning system

    CN114343847A

  • Method and device for calibrating tool coordinate system origin of industrial robot

    WO2018119642A1