A mechanical arm calibration method, device, system, electronic equipment and storage medium
Patent Information
- Application Number
- CN202210779101.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-30
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2042-06-30
AI Technical Summary
[0004]有鉴于此,本公开实施例提供了一种机械臂校准方法、装置、系统、电子设备及存储介质,以解决现有的机械臂校准方法对测量设备的精度要求较高,且无法实现机械臂本体参数以及机械臂在导航系统中的位置的同时校准的问题
[0017]Compared with the prior art, the beneficial effects of this disclosed embodiment include at least the following: This disclosed embodiment obtains the first identification position coordinates of a first marker point set at a first preset position of the end joint of the serial manipulator, which is identified by the navigation tracking device; the second identification position coordinates of a second marker point set at a second preset position of at least one intermediate joint of the serial manipulator, which is identified by the navigation tracking device; and the joint angle data of the serial manipulator. Based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial manipulator, the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation tracking device are calibrated. The accuracy requirements of the measuring equipment are relatively low, and the simultaneous calibration of the manipulator body parameters and the position of the manipulator in the navigation tracking device can be achieved, resulting in high calibration accuracy.
Smart Images

Figure CN117359602B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of robot application technology, and in particular to a method, apparatus, system, electronic device and storage medium for calibrating a robotic arm. Background Technology
[0002] Surgical navigation systems are widely used in various orthopedic surgeries because they can accurately correlate patient imaging data with the patient's physiological and anatomical structure, assist surgeons in executing surgical plans, and guide surgeons in operating surgical instruments, making the surgery more precise, rapid, and safe.
[0003] Because robotic arms can effectively achieve dexterous, precise, and reliable operation, they are most widely used in surgical navigation systems. In surgical navigation systems, open-loop control of the robotic arm is often required. To achieve precise open-loop control of the robotic arm, it is necessary to ensure not only the accuracy of the robotic arm's own parameters but also the accuracy of its position within the navigation system. However, existing robotic arm calibration methods require highly accurate measuring equipment and cannot simultaneously calibrate both the robotic arm's own parameters and its position within the navigation system in a surgical navigation system. Summary of the Invention
[0004] In view of this, the present disclosure provides a robotic arm calibration method, apparatus, system, electronic device, and storage medium to solve the problems that existing robotic arm calibration methods have high accuracy requirements for measuring equipment and cannot simultaneously calibrate the robotic arm body parameters and the position of the robotic arm in the navigation system.
[0005] A first aspect of this disclosure provides a robotic arm calibration method, comprising:
[0006] The system acquires the first identification position coordinates of a first marker point set at a first preset position of the end joint of the serial robotic arm, which is identified by the navigation tracking device; the second identification position coordinates of a second marker point set at a second preset position of at least one intermediate joint of the serial robotic arm, which is identified by the navigation tracking device; and the joint angle data of the serial robotic arm.
[0007] Based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial robotic arms, the robotic arm body parameters and the calibration position coordinates of the serial robotic arms in the navigation and tracking device are calibrated.
[0008] A second aspect of this disclosure provides a robotic arm calibration device, comprising:
[0009] The acquisition module is configured to acquire the first identification position coordinates of a first marker point set at a first preset position of the end joint of the serial robotic arm, which is identified by the navigation tracking device; the second identification position coordinates of a second marker point set at a second preset position of at least one intermediate joint of the serial robotic arm, which is identified by the navigation tracking device; and the joint angle data of the serial robotic arm.
[0010] The calibration module is configured to calibrate the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation and tracking device based on the first identification position coordinates, the second identification position coordinates and the joint angle data of the serial manipulator.
[0011] A third aspect of this disclosure provides a robotic arm navigation system, comprising:
[0012] A serial robotic arm includes an end joint and at least one intermediate joint. A first marker point is provided at a first preset position of the end joint, and a second marker point is provided at a second preset position of the at least one intermediate joint.
[0013] The navigation and tracking device is configured to acquire the first identification position coordinates of a first marker point and the second identification position coordinates of a second marker point; and,
[0014] The control terminal is connected in series with the robotic arm and the navigation and tracking device for communication. The control terminal includes the aforementioned robotic arm calibration device.
[0015] A fourth aspect of this disclosure provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the method described above.
[0016] A fifth aspect of this disclosure provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described method.
[0017] Compared with the prior art, the beneficial effects of this disclosed embodiment include at least the following: This disclosed embodiment obtains the first identification position coordinates of a first marker point set at a first preset position of the end joint of the serial manipulator, which is identified by the navigation tracking device; the second identification position coordinates of a second marker point set at a second preset position of at least one intermediate joint of the serial manipulator, which is identified by the navigation tracking device; and the joint angle data of the serial manipulator. Based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial manipulator, the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation tracking device are calibrated. The accuracy requirements of the measuring equipment are relatively low, and the simultaneous calibration of the manipulator body parameters and the position of the manipulator in the navigation tracking device can be achieved, resulting in high calibration accuracy. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in the embodiments of this disclosure, the accompanying drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is a schematic diagram illustrating one application scenario of an embodiment of this disclosure;
[0020] Figure 2 This is a schematic flowchart of a robotic arm calibration method provided in an embodiment of this disclosure;
[0021] Figure 3 This is a schematic diagram of the structure of a robotic arm calibration device provided in an embodiment of this disclosure;
[0022] Figure 4 This is a schematic diagram of the structure of a robotic arm navigation system provided in an embodiment of this disclosure;
[0023] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this disclosure. Detailed Implementation
[0024] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, so as to provide a thorough understanding of the embodiments of this disclosure. However, those skilled in the art will understand that this disclosure may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this disclosure with unnecessary detail.
[0025] A robotic arm calibration method, apparatus, and system according to embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings.
[0026] Figure 1 This is a schematic diagram of an application scenario according to an embodiment of this disclosure. The application scenario may include a serial robotic arm 101, a navigation and tracking device 102, a control terminal 103, and a network 104.
[0027] The serial robotic arm 101 can be a chain robot. This chain robot can be composed of a base, joint 1-link 1-joint 2-link 2-...-joint k-link k-end effector.
[0028] The navigation tracking device 102 can be a navigation camera or an electromagnetic locator. The navigation camera can be a monocular or binocular camera, preferably an infrared binocular positioning camera.
[0029] The control terminal 103 can be either hardware or software. When the control terminal 103 is hardware, it can be various electronic devices with a display screen that support communication with the navigation tracking device 102, including but not limited to smartphones, tablets, laptops, and desktop computers; when the control terminal 103 is software, it can be installed in the aforementioned electronic devices. The control terminal 103 can be implemented as multiple software programs or software modules, or as a single software program or software module; this disclosure does not limit this. Furthermore, various applications, such as data processing applications, can be installed on the control terminal 103.
[0030] Network 104 can be a wired network using coaxial cable, twisted pair, and fiber optic connection, or it can be a wireless network that enables interconnection of various communication devices without wiring, such as Bluetooth, Near Field Communication (NFC), and Infrared. This disclosure does not limit the scope of the embodiments.
[0031] The control terminal 103 can establish communication connections with the serial robotic arm 101 and the navigation tracking device 102 via the network 104 to receive or send information. Specifically, the control terminal 103 can acquire the first identification position coordinates of a first marker point located at a first preset position on the end joint of the serial robotic arm and the second identification position coordinates of a second marker point located at a second preset position on at least one intermediate joint of the serial robotic arm, as identified by the navigation tracking device 102, and acquire the joint angle data of the serial robotic arm. Then, based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial robotic arm, the control terminal 103 calibrates the robotic arm body parameters and the calibration position coordinates of the serial robotic arm in the navigation tracking device 102. The robotic arm body parameters include at least the link offset, link length, and link torsion angle of each joint of the serial robotic arm relative to its adjacent joints. This disclosure has lower accuracy requirements for the measuring equipment compared to traditional calibration methods and can simultaneously calibrate the robotic arm body parameters and the position of the robotic arm in the navigation tracking device 102, resulting in higher calibration accuracy.
[0032] It should be noted that the specific types, quantities and combinations of the serial robotic arm 101, navigation and tracking device 102, control terminal 103 and network 104 can be adjusted according to the actual needs of the application scenario, and this disclosure embodiment does not limit this.
[0033] Generally, the calibration of a tandem robotic arm under a navigation system includes two parts: calibration of the robotic arm itself, i.e., the accuracy of the robotic arm's (DH, Denavit-Hartenberg parameters) parameters, and calibration of the robotic arm's position within the navigation tracking device 102. In the prior art, the accuracy of the robotic arm itself is calibrated before surgery, while the calibration of the robotic arm's position within the navigation tracking device 102 is performed during surgery. Preoperative calibration of the robotic arm's accuracy is primarily due to the large number of parameters involved, and existing calibration methods only involve placing one or more target balls on the robotic arm's end joints. This calibration method requires highly accurate measuring equipment and cannot simultaneously calibrate both the robotic arm's parameters and its position within the navigation tracking device. Furthermore, the calibration of the robotic arm within the navigation tracking device 102 relies on the device itself; if the robotic arm's parameters are inaccurate during surgery, calibration cannot be performed using the navigation tracking device 102.
[0034] However, the robotic arm calibration method provided in this embodiment of the present disclosure, by setting a first marker point at a first preset position of the end joint of the serial robotic arm and setting a second marker point at a second preset position of at least one intermediate joint, collects the first identification position coordinates of the first marker point identified by the navigation tracking device 102, the second identification position coordinates of the second marker point identified by the navigation tracking device 102, and the joint angle data of the serial robotic arm; then, based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial robotic arm, calibrates the robotic arm body parameters of the serial robotic arm and the calibration position coordinates of the serial robotic arm in the navigation tracking device 102, which not only reduces the requirements for the accuracy of the measuring equipment, but also enables the simultaneous calibration of the robotic arm body parameters of the serial robotic arm and the position of the serial robotic arm in the navigation tracking device 102 during the operation, and the calibration accuracy is high, which can ensure the accuracy and safety of the navigation of instruments (such as robotic arms) in the navigation tracking device 102.
[0035] Figure 2 This is a schematic flowchart of a robotic arm calibration method provided in an embodiment of this disclosure. Figure 2 The robotic arm calibration method can be derived from Figure 1 The control terminal 103 executes. For example... Figure 2 As shown, the robotic arm calibration method includes:
[0036] Step S201: Obtain the first identification position coordinates of the first marker point set at the first preset position of the end joint of the serial robotic arm and identified by the navigation tracking device, the second identification position coordinates of the second marker point set at the second preset position of at least one intermediate joint of the serial robotic arm and identified by the navigation tracking device, and the joint angle data of the serial robotic arm.
[0037] In one exemplary embodiment, please refer to Figure 1 Assume a serial robotic arm has 6 joints (k = 6), denoted as joints 01, 02, 03, 04, 05, and 06. Joint 06 is the end joint of the serial robotic arm, while joints 01, 02, 03, 04, and 05 are intermediate joints. In practical applications, one or more marker points can be placed near the end of joints 01, 02, 03, 04, 05, and 06. Alternatively, one or more marker points can be placed near the end of joint 06, or any one or more of joints 01 to 05. It should be noted that one or more marker points can be placed at the end of each joint.
[0038] For example, assuming a marker point is set at the end effector position of joints 01, 03, 05, and 06, the navigation tracking device can identify and obtain the first identification position coordinates of the first marker point at the first preset position of the end joint 06 of the serial robotic arm. Similarly, the navigation tracking device can identify and obtain the second identification position coordinates 01, 03, and 05 of the second marker point at the second preset position of joints 01, 03, and 05. Multiple first and second marker points can be set at the corresponding joint end effector positions.
[0039] Joint angle data can be a single set of joint angle data or multiple sets of joint angle data. A single set of joint angle data includes the joint angles between the individual joints of a serially connected robotic arm. For example, if a serially connected robotic arm has six joints, then a single set of joint angle data includes the joint angles between these six joints.
[0040] It should be noted that a set of joint angle data typically corresponds to a first identification position coordinate and a second identification position coordinate. When the joint angle data changes, for example, when a set of joint angle data A changes to another set of joint angle data B, the corresponding first and second identification position coordinates under set of joint angle data B will also change accordingly.
[0041] Step S202: Based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial robotic arms, calibrate the robotic arm body parameters of the serial robotic arms and the calibration position coordinates of the serial robotic arms in the navigation and tracking device.
[0042] To facilitate user understanding and use of tandem robotic arms, manufacturers typically mark the robotic arm's parameters on the arm itself during production or include them in the instruction manual before shipment.
[0043] If the parameters of the robotic arm body are inaccurate during the design and development process, or if the parameters become inaccurate over time, then it is necessary to calibrate the parameters of the robotic arm body during use to improve the positioning accuracy of the navigation and tracking device.
[0044] DH parameters are a mathematical model and coordinate system for determining the positional and angular relationships between two pairs of joint links in a robotic arm. These four parameters are the joint rotation angle, link offset, link length, and link torsion angle of each joint of the cascaded robotic arm relative to its predecessor.
[0045] Typically, robotic arm parameters include the four parameters mentioned above. During the calibration of robotic arm body parameters, joint angles are generally considered known quantities because they are easier and more accurate to obtain than the other three parameters. Therefore, in this embodiment, the robotic arm body parameters to be calibrated mainly include link offset, link length, and link torsion angle. On the other hand, the encoder outputs the joint angles. Since the angles output by the encoder are inconsistent with the joint angle definitions in the robotic arm's DH model, a joint angle deviation can be added as compensation. That is, the robotic arm body parameters to be calibrated include joint angle deviation, link offset, link length, and link torsion angle.
[0046] The technical solution provided in this disclosure acquires the first identification position coordinates of a first marker point located at a first preset position of the end joint of a serial manipulator, which is identified by the navigation tracking system; the second identification position coordinates of a second marker point located at a second preset position of at least one intermediate joint of the serial manipulator, which is identified by the navigation tracking system; and the joint angle data of the serial manipulator. Based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial manipulator, the manipulator body parameters and the calibration position coordinates of the serial manipulator in the navigation tracking device are calibrated. This method has relatively low requirements for the accuracy of the measuring equipment and can simultaneously calibrate the manipulator body parameters and the position of the manipulator in the navigation system. The calibration accuracy is high, which can ensure the accuracy and safety of the navigation of the instruments (such as manipulators) in the navigation system.
[0047] In some embodiments, step S202 above may specifically include the following steps:
[0048] S2021 determines the first transformation matrix of the end pose of the end joint of the serial robotic arm relative to the base coordinate system of the robotic arm based on the three-dimensional transformation matrix of the end pose of each joint of the serial robotic arm relative to the previous joint.
[0049] S2022 determines the second transformation matrix of the end pose of the end joint of the serial robotic arm relative to the navigation and tracking coordinate system based on the first transformation matrix;
[0050] S2023 calculates the calibration values of the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation and tracking device based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, and the joint angle data.
[0051] Step S2021 may specifically include the following steps:
[0052] Based on the joint rotation angle, link offset, link length and link torsion angle of each joint of the serial manipulator relative to its previous joint, a three-dimensional transformation matrix of the end pose of each joint of the serial manipulator relative to its previous joint is established.
[0053] Based on the three-dimensional transformation matrix, determine the first transformation matrix of the end pose of the end joint of the serial robotic arm relative to the base coordinate system of the robotic arm.
[0054] In an exemplary embodiment, it is assumed that each joint i of the serial robotic arm is numbered starting from the base, i = 1, ..., k. k represents the number of joints in the serial robotic arm. For ease of description, the base of the serial robotic arm can be considered as the joint i = 0. The transformation of the end-effector pose of each joint i relative to its previous joint i-1 can be represented by the three-dimensional transformation matrix M of the following equation (1). i In general, M can be represented using DH parameters. i .
[0055] M i =f(θ) i d i a i-1 α i-1 (1).
[0056] In equation (1), θ i d i a i-1 α i-1 Let f represent the joint rotation angle, link offset, link length, and link torsion angle of the i-th joint of the serial robotic arm relative to the (i-1)-th joint (i.e., the joint preceding the i-th joint), respectively, and f be a function that determines the expression.
[0057] As an example, f can be expressed as the following equation (2).
[0058]
[0059] Therefore, based on the above three-dimensional transformation matrix M i Determine the first transformation matrix M of the end-effector pose (i.e., the last joint i=k) of the serial robotic arm relative to the robotic arm base coordinate system (Base). The robotic arm base coordinate system is the fundamental coordinate system of the robotic arm. If the base of the robotic arm is mounted on the ground, then the origin of the robotic arm base coordinate system is located on the base.
[0060] The expression for the first transformation matrix M is given by equation (3).
[0061]
[0062] For step S2022, define the second transformation matrix T of the end-effector pose in the base coordinate system of the serial robotic arm relative to the navigation and tracking coordinate system. base The navigation and tracking coordinate system is a camera coordinate system with the optical center of the navigation and tracking device (such as an infrared binocular positioning camera) as the origin, the z-axis coinciding with the optical axis (that is, the z-axis pointing in front of the camera (that is, perpendicular to the imaging plane), and the positive directions of the x-axis and y-axis parallel to the object coordinate system.
[0063] Step S2023 may specifically include the following steps:
[0064] Collect the position coordinates of the marker points of the serial robotic arms. The marker points include the first marker point and the second marker point.
[0065] Determine the conversion relationship between the position coordinates of the marker points of the serial robotic arms and the identification position coordinates of the marker points recognized by the navigation and tracking device;
[0066] Based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, the joint angle data of the serial robotic arms, and the transformation relationship, the calibration values of the robotic arm body parameters of the serial robotic arms and the calibration position coordinates of the serial robotic arms in the navigation and tracking device are calculated.
[0067] If a marker point j (j is the j-th marker point on the i-th joint) is installed at the end position of joint i in a serial robotic arm, the coordinates of this marker point can be denoted as P. ij Simultaneously, this marker point can be identified by the navigation tracking device, and the coordinates of the identified location can be denoted as Q. ij For example, suppose the serial robotic arm is a robotic arm with 6 joints, and a marker point is installed at the end of each joint. Specifically, the marker point installed at the end position (i.e., the first preset position) of the end joint (i.e., joint 06) of the serial robotic arm can be named the first marker point. One or more first marker points can be set, where j is the number of first marker points, and the first position coordinates of the first marker point are denoted as P. 61 Similarly, one or more second markers can be set on the intermediate joints. For example, if only one second marker is installed at the end position of the intermediate joints 01-05 of the serial robotic arm, then the second position coordinates of the second marker installed at the end position (i.e., the second preset position) of the joints 01-05 of the serial robotic arm are denoted as P. 11 P 21 P 31 P 41 P 51 Then, the coordinates of the identified positions of joints 01 to 06 by the navigation system are Q, respectively. 11 Q 21 Q31 Q 41 Q 51 and Q 61 For example, if marker points are installed at the end positions of joints 01, 03, 05, and 06 of a serial robotic arm, then the coordinates of their marker point positions can be recorded as P. 11 P 31 P 51 P 61 The coordinates of their identified locations by the navigation system can be recorded as Q. 11 Q 31 Q 51 Q 61 .
[0068] During the calibration of the robotic arm, before the operation, the position coordinates P of the j-th marker point at the end position of joint i of the serial robotic arm are determined. ij The coordinates can be directly measured using measuring instruments such as laser trackers or coordinate measuring machines. Then, the navigation and tracking device identifies the coordinates Q of the j-th marker point at the end position of joint i of the serial robotic arm. ij Substituting into equation (4) below, the position coordinates P can be solved. ij The position coordinates P of the j-th marker point of the serial robotic arm can be determined by the transformation matrix relative to the navigation and tracking coordinate system. ij Rather than identifying position coordinates Q ij The conversion relationship between them. During surgery, considering the aseptic environment requirements, direct measurement is generally not performed; instead, P can be... ij This is added as one of the unknowns that need to be solved. At this point, the joint rotation angles measured intraoperatively and the coordinates Q of the identified positions of the marker points on the tandem robotic arms, as determined by the navigation and tracking device, can be used as the basis. ij To express P ij .
[0069] As an example, combining the above equation (3) and the second transformation matrix T base Q ij (Including the first and second identification position coordinates) and the joint angle data of the serial robotic arm, the following equation (4) is constructed.
[0070]
[0071] Wherein, the first transformation matrix M in equation (4) l =f(θ) l ,d l ,a l-1 ,α l-1 ), l is an intermediate variable, P ijLet Q represent the position coordinates (a 3-DOF coordinate system) of the j-th marker point on the i-th joint of the serial robotic arm, including the first position coordinates of the first marker point and the second position coordinates of the second marker point. ij This represents the position of the j-th marker point on the i-th joint of the serial robotic arm, as identified by the navigation tracking device, within the navigation system. This includes the first identified position coordinates of the first marker point and the second identified position coordinates of the second marker point. θ l i represents the joint rotation angle of the l-th (l=1,…,k) joint of the serial robotic arm relative to the (l-1)-th joint. n This represents the number of marker points on the i-th joint of a serial robotic arm. For example, if a serial robotic arm has 6 joints, and the ends of the 6 joints are equipped with 1, 0, 2, 1, 3, and 1 marker points respectively, then the values of i1, i2, i3, i4, i5, and i6 are 1, 0, 2, 1, 3, and 1 respectively.
[0072] Let represent the first transformation matrix indicating the pose of the l-th joint of the serial robotic arm relative to the robotic arm's base coordinate system. The second transformation matrix represents the pose of the l-th joint of the serial robotic arm relative to the navigation and tracking coordinate system.
[0073] Combining equation (4) above, since θ l It is a known number, which can be obtained through measurement during the use of the robotic arm, T base It can be represented by 6 degrees of freedom, therefore the calibration of the robotic arm can be determined by 6 + 3*k unknowns, where k represents the number of joints in the serial robotic arm. The above calibration includes... Equations, i n This represents the number of marker points on joint i of the serial robotic arm. When the condition is met... When at least one set of joint angle data (θ1,..,θ) is known k ) and Q ij Based on this, theoretically all the unknowns (d) in the above equation (4) can be solved. l ,a l-1 ,α l-1 ,l=1…k,T base This allows for the simultaneous calibration of the robot arm's body parameters and its position within the navigation system.
[0074] It should be noted that the solution process of the above equation (4) can refer to the traditional solution method, and will not be repeated here.
[0075] Because measuring the coordinates of the identified positions of the markers on the tandem robotic arm using a navigation camera has a large error, it can easily lead to inaccurate calibration of the robotic arm's body parameters and its position in the navigation tracking device. This embodiment of the present disclosure uses at least three sets of joint angle data, which increases the number of equations in the above equation (4), thereby effectively improving the calibration accuracy of the robotic arm's body parameters and its position in the navigation system.
[0076] In an exemplary embodiment, if the position coordinate P of the j-th marker point of the i-th joint is... ij If it is unknown, then it is equivalent to adding to equation (4). There are several unknowns. Multiple sets of joint angle data (θ1,...,θ) are obtained. k Under the condition that the number of equality constraints is much greater than the number of unknowns, the accurate calibration of the parameters of the serial robotic arm and the position of the serial robotic arm in the navigation system can still be achieved.
[0077] In a preferred embodiment, at least three sets of joint angle data can be corrected first to obtain corrected joint angle data corresponding to each set of joint angle data; then, the corrected joint angle data can be substituted into the above equation (4) to simplify equation (4), reduce the amount of data processing, and thus improve the data processing efficiency.
[0078] In some embodiments, after calculating the calibration values of the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation and tracking device based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, and the joint angle data, the following steps may be further included:
[0079] Calculate the overall error value of the serial robotic arms based on the calibration values of the robotic arm body parameters and the calibration position coordinates;
[0080] If the overall error value meets the preset allowable error range, the calibration of the tandem robotic arm under the navigation system is completed.
[0081] The above steps calculate the overall error value of the cascaded robotic arms based on the calibration values of the robotic arm body parameters and the calibration position coordinates. Specifically, this may include the following steps:
[0082] Calculate the system calibration value of the serial robotic arms in the navigation system based on the calibration values of the robotic arm body parameters and the calibration position coordinates;
[0083] The overall error value of the serial robotic arm is calculated based on the system calibration value, the coordinates of the first identification position, and the coordinates of the second identification position.
[0084] Specifically, the overall error value S of the serial robotic arm can be calculated according to the following formula (5).
[0085]
[0086] In equation (5) above, i = 1, ..., k, j = 1, ..., i n , Q is the system calibration value. ij This includes the coordinates of the first identification location and the coordinates of the second identification location.
[0087] Next, if the overall error value S calculated above satisfies the following formula (6), then the overall error value is determined to be within the preset allowable error range, and the calibration of the serial robotic arm under the navigation system is completed.
[0088]
[0089] In formula (6) above, ε represents the preset allowable error threshold. This error threshold can be flexibly set according to the actual situation. For example, it can be specifically determined according to the accuracy requirements of the serial robotic arm. For example, it can be set to 0.5mm, 0.8mm, etc. There is no specific limitation here. Generally, ε < 1mm.
[0090] In some embodiments, if the overall error value does not meet the preset allowable error range, the joints of the robotic arm are moved to reacquire the third identification position coordinates of the first marker point set at the first preset position of the end joint of the serial robotic arm, which is identified by the navigation tracking device; the fourth identification position coordinates of the second marker point set at the second preset position of at least one intermediate joint of the serial robotic arm, which is identified by the navigation tracking device; and new joint angle data of the serial robotic arm are reacquired.
[0091] Based on the third and fourth identification position coordinates and the new joint angle data of the serial manipulator, the manipulator body parameters and the calibration position coordinates of the serial manipulator in the navigation and tracking device are recalibrated.
[0092] If the overall error value S is greater than ε, it indicates that there is a large error in the calibration values of the robot arm's body parameters and its position in the navigation system. Therefore, the following steps can be repeated: the third identification position coordinates of the first marker point at the first preset position of the end joint of the serial robot arm (identified by the navigation tracking device), the fourth identification position coordinates of the second marker point at the second preset position of at least one intermediate joint of the serial robot arm (identified by the navigation tracking device), and the new joint angle data of the serial robot arm. This process is repeated to recalibrate the robot arm's body parameters and its calibration position coordinates in the navigation system until the overall error value S is less than or equal to ε, thus completing the calibration of the robot arm.
[0093] In practical applications, at least three sets of joint angle data can be collected before surgery, and the robot arm body parameters (θ) can be solved using the above formula (4). l ,d l ,a l-1 ,α l-1 Then, during the operation, at least one set of joint angle data is collected. Using the above formula (4) and the robot arm body parameters solved before the operation, the pose T of the robot arm in the navigation and tracking coordinate system is calculated. base This further calibrates the robotic arm's position coordinates within the navigation system. This reduces the time surgeons spend calibrating the robotic arm during surgery, improving efficiency while ensuring safety and accuracy. The calibration process is as follows:
[0094] Step 1: Before the operation, the parameters of the robotic arm are calibrated.
[0095] Step 2: During the procedure, the position of the robotic arm in the navigation system is calibrated.
[0096] Step 3: Determine whether the calibration accuracy of the robotic arm's position in the navigation system is up to standard.
[0097] Step 4: If the result is satisfactory, the calibration of the robotic arm is complete, and the calibration process ends.
[0098] Step 5: If the result is unsatisfactory, the calibration and re-calibration of the robot arm's body parameters and its position in the navigation system will be performed again, and then the process will return to Step 3 above.
[0099] All of the above-mentioned optional technical solutions can be combined in any way to form the optional embodiments of this application, and will not be described in detail here.
[0100] The following are embodiments of the apparatus disclosed herein, which can be used to execute embodiments of the method disclosed herein. For details not disclosed in the apparatus embodiments of this disclosure, please refer to the embodiments of the method disclosed herein.
[0101] Figure 3 This is a schematic diagram of the structure of a robotic arm calibration device provided in an embodiment of this disclosure. Figure 3 As shown, the robotic arm calibration device includes:
[0102] The acquisition module 301 is configured to acquire the first identification position coordinates of the first marker point set at the first preset position of the end joint of the serial robotic arm and identified by the navigation tracking device, the second identification position coordinates of the second marker point set at the second preset position of at least one intermediate joint of the serial robotic arm and identified by the navigation tracking device, and the joint angle data of the serial robotic arm.
[0103] The calibration module 302 is configured to calibrate the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation and tracking device based on the first identification position coordinates, the second identification position coordinates and the joint angle data of the serial manipulator.
[0104] In some embodiments, the calibration module 302 includes:
[0105] The first determining unit is configured to determine the first transformation matrix of the end pose of the end joint of the serial manipulator relative to the manipulator base coordinate system based on the three-dimensional transformation matrix of the end pose of each joint of the serial manipulator relative to its previous joint.
[0106] The second determining unit is configured to determine, based on the first transformation matrix, a second transformation matrix of the end pose of the end joint of the serial robotic arm relative to the navigation and tracking coordinate system.
[0107] The calculation unit is configured to calculate the calibration values of the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation and tracking device based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates and the joint angle data of the serial manipulator.
[0108] In some embodiments, the first determining unit described above may be specifically configured as follows:
[0109] Based on the joint rotation angle, link offset, link length and link torsion angle of each joint of the serial manipulator relative to its previous joint, a three-dimensional transformation matrix of the end pose of each joint of the serial manipulator relative to its previous joint is established.
[0110] Based on the three-dimensional transformation matrix, determine the first transformation matrix of the end pose of the end joint of the serial robotic arm relative to the base coordinate system of the robotic arm.
[0111] In some embodiments, the above-mentioned computing unit may be specifically configured as follows:
[0112] Collect the position coordinates of the marker points of the serial robotic arms. The marker points include the first marker point and the second marker point.
[0113] Determine the conversion relationship between the position coordinates of the marker points of the serial robotic arms and the identification position coordinates of the marker points recognized by the navigation and tracking device;
[0114] Based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, the joint angle data of the serial robotic arms, and the transformation relationship, the calibration values of the robotic arm body parameters of the serial robotic arms and the calibration position coordinates of the serial robotic arms in the navigation and tracking device are calculated.
[0115] In some embodiments, the above-described robotic arm calibration device may further include:
[0116] The error calculation module is configured to calculate the overall error value of the serial robotic arms based on the calibration values of the robotic arm body parameters and the calibration position coordinates.
[0117] The calibration module is configured to complete the calibration of the tandem robotic arm under the navigation and tracking device if the overall error value meets the preset allowable error range.
[0118] In some embodiments, the above-described robotic arm calibration device may further include:
[0119] The reacquisition module is configured to reacquire the third identification position coordinates of the first marker point set at the first preset position of the end joint of the serial robotic arm, which is identified by the navigation tracking device, the fourth identification position coordinates of the second marker point set at the second preset position of at least one intermediate joint of the serial robotic arm, which is identified by the navigation tracking device, and the new joint angle data of the serial robotic arm if the overall error value does not meet the preset allowable error range.
[0120] The recalibration module is configured to recalibrate the manipulator body parameters and the calibration position coordinates of the manipulator in the navigation and tracking device based on the third and fourth identification position coordinates and the new joint angle data of the manipulator.
[0121] In some embodiments, the error calculation module described above may include:
[0122] The first calculation unit is configured to calculate the system calibration value of the serial robotic arm in the navigation system based on the calibration values of the robotic arm body parameters and the calibration position coordinates.
[0123] The second calculation unit is configured to calculate the overall error value of the serial robotic arm based on the system calibration value, the first identification position coordinates, and the second identification position coordinates.
[0124] Figure 4 This is a schematic diagram of the structure of a robotic arm navigation system provided in an embodiment of this disclosure. Figure 4 As shown, the robotic arm navigation system includes:
[0125] The serial robotic arm 101 includes an end joint and at least one intermediate joint. A first marker point is provided at a first preset position of the end joint, and a second marker point is provided at a second preset position of the at least one intermediate joint.
[0126] The navigation tracking device 102 is configured to acquire the first identification position coordinates of a first marker point and the second identification position coordinates of a second marker point; and,
[0127] Control terminal 103 is communicatively connected to the serial robotic arm 101 and the navigation and tracking device 102, and includes, for example, Figure 3 The robotic arm calibration device shown.
[0128] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this disclosure.
[0129] Figure 5 This is a schematic diagram of the electronic device 5 provided in an embodiment of this disclosure. Figure 5 As shown, the electronic device 5 of this embodiment includes: a processor 501, a memory 502, and a computer program 503 stored in the memory 502 and executable on the processor 501. When the processor 501 executes the computer program 503, it implements the steps in the various method embodiments described above. Alternatively, when the processor 501 executes the computer program 503, it implements the functions of each module / unit in the various device embodiments described above.
[0130] Electronic device 5 can be a desktop computer, laptop, handheld computer, cloud server, or other electronic device. Electronic device 5 may include, but is not limited to, processor 501 and memory 502. Those skilled in the art will understand that... Figure 5 This is merely an example of electronic device 5 and does not constitute a limitation on electronic device 5. It may include more or fewer components than shown, or different components.
[0131] The processor 501 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
[0132] The memory 502 can be an internal storage unit of the electronic device 5, such as a hard disk or RAM of the electronic device 5. The memory 502 can also be an external storage device of the electronic device 5, such as a plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card, Flash Card, etc., equipped on the electronic device 5. The memory 502 can also include both internal and external storage units of the electronic device 5. The memory 502 is used to store computer programs and other programs and data required by the electronic device.
[0133] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0134] If an integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program may include computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. A computer-readable medium may include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in a computer-readable medium may be appropriately added to or subtracted according to the requirements of legislation and patent practice in a jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media may not include electrical carrier signals and telecommunication signals.
[0135] The above embodiments are only used to illustrate the technical solutions of this disclosure, and are not intended to limit it. Although this disclosure has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this disclosure, and should all be included within the protection scope of this disclosure.
Claims
1. A method for calibrating a robotic arm, characterized in that, include: The system acquires the first identification position coordinates of a first marker point located at a first preset position of the end joint of the serial robotic arm, which is identified by the navigation tracking device; the second identification position coordinates of a second marker point located at a second preset position of at least one intermediate joint of the serial robotic arm, which is identified by the navigation tracking device; and the joint angle data of the serial robotic arm. Based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the tandem robotic arm, the robotic arm body parameters and the calibration position coordinates of the tandem robotic arm in the navigation and tracking device are calibrated, including: Based on the three-dimensional transformation matrix of the end pose of each joint of the serial robotic arm relative to its previous joint, the first transformation matrix of the end pose of the end joint of the serial robotic arm relative to the base coordinate system of the robotic arm is determined. Based on the first transformation matrix, a second transformation matrix is determined for the end pose of the end joint of the serial robotic arm relative to the navigation and tracking coordinate system. Based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial robotic arms, the calibration values of the robotic arm body parameters and the calibration position coordinates of the serial robotic arms in the navigation and tracking device are calculated.
2. The method according to claim 1, characterized in that, Based on the three-dimensional transformation matrix of the end-effector pose of each joint of the serial robotic arm relative to its previous joint, a first transformation matrix of the end-effector pose of the serial robotic arm relative to the robotic arm base coordinate system is determined, including: Based on the joint rotation angle, link offset, link length and link torsion angle of each joint of the serial robotic arm relative to its previous joint, a three-dimensional transformation matrix of the end pose of each joint of the serial robotic arm relative to its previous joint is established. Based on the three-dimensional transformation matrix, the first transformation matrix of the end pose of the end joint of the serial robotic arm relative to the base coordinate system of the robotic arm is determined.
3. The method according to claim 1, characterized in that, Based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, and the joint angle data of the tandem robotic arm, the calibration values of the robotic arm body parameters and the calibration position coordinates of the tandem robotic arm in the navigation and tracking device are calculated, including: The position coordinates of the marker points of the serial robotic arms are collected, and the marker points include a first marker point and a second marker point; Determine the conversion relationship between the position coordinates of the marker points of the serial robotic arms and the identification position coordinates of the marker points as identified by the navigation and tracking device; Based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, the joint angle data of the serial robotic arms, and the transformation relationship, the calibration values of the robotic arm body parameters of the serial robotic arms and the calibration position coordinates of the serial robotic arms in the navigation and tracking device are calculated.
4. The method according to claim 1, characterized in that, Based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates, and the joint angle data of the tandem robotic arm, after calculating the calibration values of the robotic arm body parameters and the calibration position coordinates of the tandem robotic arm in the navigation and tracking device, the method further includes: The overall error value of the serial robotic arms is calculated based on the calibration values of the robotic arm body parameters and the calibration position coordinates. If the overall error value meets the preset allowable error range, the calibration of the serial robotic arm under the navigation and tracking device is completed.
5. The method according to claim 4, characterized in that, After calculating the overall error value of the serially connected robotic arms based on the calibration values of the robotic arm body parameters and the calibration position coordinates, the method further includes: If the overall error value does not meet the preset allowable error range, then the navigation tracking device will reacquire the third identification position coordinates of the first marker point set at the first preset position of the end joint of the serial robotic arm, the fourth identification position coordinates of the second marker point set at the second preset position of at least one intermediate joint of the serial robotic arm, and the new joint angle data of the serial robotic arm. Based on the third and fourth identification position coordinates and the new joint angle data of the serial robotic arm, the robotic arm body parameters and the calibration position coordinates of the serial robotic arm in the navigation and tracking device are recalibrated.
6. The method according to claim 4, characterized in that, Based on the calibration values of the robotic arm body parameters and the calibration position coordinates, the overall error value of the serial robotic arm is calculated, including: Based on the calibration values of the robotic arm body parameters and the calibration position coordinates, calculate the system calibration value of the serial robotic arm in the navigation and tracking device; The overall error value of the serial robotic arm is calculated based on the system calibration value, the first identification position coordinates, and the second identification position coordinates.
7. A robotic arm calibration device, characterized in that, The apparatus is used to implement the method as described in any one of claims 1 to 6, the apparatus comprising: The acquisition module is configured to acquire the first identification position coordinates of a first marker point set at a first preset position of the end joint of the serial robotic arm, which is identified by the navigation tracking device; the second identification position coordinates of a second marker point set at a second preset position of at least one intermediate joint of the serial robotic arm, which is identified by the navigation tracking device; and the joint angle data of the serial robotic arm. The calibration module is configured to calibrate the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation and tracking device based on the first identification position coordinates, the second identification position coordinates, and the joint angle data of the serial manipulator.
8. The robotic arm calibration device as described in claim 7, characterized in that, The calibration module includes: The first determining unit is configured to determine a first transformation matrix of the end pose of the end joint of the serial manipulator relative to the manipulator base coordinate system based on the three-dimensional transformation matrix of the end pose of each joint of the serial manipulator relative to its previous joint. The second determining unit is configured to determine a second transformation matrix of the end pose of the end joint of the tandem robotic arm relative to the navigation and tracking coordinate system, based on the first transformation matrix. The calculation unit is configured to calculate the calibration values of the manipulator body parameters of the serial manipulator and the calibration position coordinates of the serial manipulator in the navigation and tracking device based on the first transformation matrix, the second transformation matrix, the first identification position coordinates, the second identification position coordinates and the joint angle data of the serial manipulator.
9. A robotic arm navigation system, characterized in that, include: A serial robotic arm, the serial robotic arm including an end joint and at least one intermediate joint, wherein a first marker point is provided at a first preset position of the end joint and a second marker point is provided at a second preset position of the at least one intermediate joint; The navigation and tracking device is configured to acquire the first identification position coordinates of the first marker point and the second identification position coordinates of the second marker point; and, The control terminal is communicatively connected to the serial robotic arm and the navigation and tracking device, and the control terminal includes the robotic arm calibration device as described in claim 7 or 8.
10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 6.
11. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Parameter measurement and identification method and device of mechanical arm, terminal, and storage medium
CN108527373A
Monocular vision excavator pose measuring system and measuring method based on target
CN110954067A