CN117958983A - Zero point calibration method and device of surgical robot, storage medium and electronic equipment - Google Patents

Zero point calibration method and device of surgical robot, storage medium and electronic equipment Download PDF

Info

Publication number
CN117958983A
CN117958983A CN202410384909.5A CN202410384909A CN117958983A CN 117958983 A CN117958983 A CN 117958983A CN 202410384909 A CN202410384909 A CN 202410384909A CN 117958983 A CN117958983 A CN 117958983A
Authority
CN
China
Prior art keywords
angle
shaft
determining
plane
rotation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410384909.5A
Other languages
Chinese (zh)
Inventor
胡世雄
张靖
陈阳
鄂丽曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing AK Medical Co Ltd
Original Assignee
Beijing AK Medical Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing AK Medical Co Ltd filed Critical Beijing AK Medical Co Ltd
Priority to CN202410384909.5A priority Critical patent/CN117958983A/en
Publication of CN117958983A publication Critical patent/CN117958983A/en
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

The invention discloses a zero point calibration method and device of a surgical robot, a storage medium and electronic equipment. Relates to the field of surgical robots, the method comprises the following steps: determining a first rotation angle of the first shaft according to the included angle between the central axis of the second shaft and the reference vector, and calibrating the zero point of the first shaft according to the first rotation angle; determining a third rotation angle of a third shaft according to the included angle between the normal vector of the target plane of the target object and the reference vector, and calibrating a zero point of the third shaft according to the third rotation angle; and determining a second rotation angle of the second shaft according to the included angle between the central axis of the first shaft and the central axis of the third shaft, and calibrating the zero point of the second shaft according to the second rotation angle. The invention solves the technical problem that the zero calibration of the surgical robot in the related art depends on an external calibration block, so that the zero calibration efficiency is low.

Description

Zero point calibration method and device of surgical robot, storage medium and electronic equipment
Technical Field
The invention relates to the field of surgical robots, in particular to a zero point calibration method and device of a surgical robot, a storage medium and electronic equipment.
Background
With the rapid development of manufacturing industry, robots are rapidly developed as high and new industries, the application scene of the robots is continuously expanded, and surgical robots are generated. The zero point is a reference of a robot coordinate system, if the zero point of the robot is inaccurate, the robot can move inaccurately in space, and for the surgical robot with high absolute positioning accuracy requirement, zero point calibration is a necessary work before leaving a factory.
Currently, in the related art, an external calibration block is generally relied on to perform zero calibration on a surgical robot, for example, the external calibration block is installed at a specific position around the surgical robot to ensure that it is within the operating robot working range, and then a zero calibration procedure is performed through a control system of the surgical robot, which generally recognizes and positions the calibration block using a vision system of the surgical robot, and determines a zero position and posture of the robot by measuring and analyzing characteristic points of the calibration block. This method has a problem of low calibration efficiency because an external calibration block needs to be fixed to a specific position in advance.
In view of the above problems, no effective solution has been proposed at present.
Disclosure of Invention
The embodiment of the invention provides a zero point calibration method, a zero point calibration device, a storage medium and electronic equipment of a surgical robot, which at least solve the technical problem that the zero point calibration efficiency is low due to the fact that the zero point calibration of the surgical robot depends on an external calibration block in the related technology.
According to an aspect of the embodiment of the present invention, there is provided a zero point calibration method of a surgical robot, including: determining a first rotation angle of the first shaft according to the included angle between the central axis of the second shaft and the reference vector, and performing zero calibration on the first shaft according to the first rotation angle; determining a third rotation angle of the third shaft according to the included angle between the normal vector of the target plane of the target object and the reference vector, and performing zero calibration on the third shaft according to the third rotation angle, wherein the target object is rigidly connected with the third shaft; determining a second rotation angle of the second shaft according to the included angle between the central axis of the first shaft and the central axis of the third shaft, and performing zero calibration on the second shaft according to the second rotation angle; and under the condition that the first shaft, the second shaft and the third shaft finish zero point calibration, determining that the surgical robot finishes zero point calibration.
Further, the surgical robot further comprises a base, wherein the zero calibration method of the surgical robot further comprises the following steps: acquiring point cloud data of a base plane by adopting a visual camera; processing the point cloud data of the base plane according to a plane fitting algorithm to determine three-dimensional information of the base plane; and determining a normal vector of the base plane according to the three-dimensional information of the base plane, and determining the normal vector of the base plane as a reference vector.
Further, the zero point calibration method of the surgical robot further comprises the following steps: calculating the included angle between the central axis of the second shaft and the reference vector to obtain a first angle; updating the value of the first initial angle to be the value of the current first angle under the condition that the current first angle is smaller than or equal to a preset first initial angle, and obtaining an updated first initial angle; determining a first rotation angle according to the current first angle, and controlling the first shaft to rotate along a first direction according to the first rotation angle, wherein the first rotation angle is smaller than the current first angle, and the first direction is a direction in which the current first angle has a trend of becoming smaller in the rotation process of the first shaft; and (3) recalculating the first angle after the first shaft rotates, and repeatedly executing the steps of updating the first initial angle and determining a new first rotation angle under the condition that the current first angle is smaller than or equal to the current first initial angle until the current first angle is larger than the current first initial angle, rotating the first shaft to a position after the last rotation, and determining that the first shaft completes zero calibration after the first shaft rotates.
Further, the surgical robot is provided with a target marker, and the target marker changes position along with the rotation of the second shaft, wherein the zero calibration method of the surgical robot further comprises the following steps: controlling the second shaft to rotate, and acquiring point cloud data of the target marker by using a visual camera in the rotation process of the second shaft to obtain first point cloud data; processing the first point cloud data according to a plane fitting algorithm, and determining three-dimensional information of a first plane formed by the target marker in the rotating process; determining a normal vector of the first plane according to the three-dimensional information of the first plane, wherein the normal vector of the first plane is parallel to the central axis of the second axis; the angle between the normal vector of the first plane and the reference vector is determined as a first angle.
Further, the zero point calibration method of the surgical robot further comprises the following steps: calculating the included angle between the normal vector of the target plane of the target object and the reference vector to obtain a third angle; updating the value of the third initial angle to be the value of the current third angle under the condition that the current third angle is smaller than or equal to a preset third initial angle, and obtaining an updated third initial angle; determining a third rotation angle according to the current third angle, and controlling the third shaft to rotate along a third direction according to the third rotation angle, wherein the third rotation angle is smaller than the current third angle, and the third direction is a direction in which the current third angle has a trend of becoming smaller in the rotation process of the third shaft; and (3) recalculating the third angle after the third shaft rotates, and repeatedly executing the steps of updating the third initial angle and determining a new third rotation angle under the condition that the current third angle is smaller than or equal to the current third initial angle until the current third angle is larger than the current third initial angle, rotating the third shaft to the position after the last rotation, and determining that the third shaft completes zero calibration after the third shaft rotates.
Further, the zero point calibration method of the surgical robot further comprises the following steps: acquiring point cloud data of a target plane of a target object by adopting a visual camera; processing the point cloud data of the target plane according to a plane fitting algorithm, and determining three-dimensional information of the target plane; and determining the normal vector of the target plane according to the three-dimensional information of the target plane.
Further, the zero point calibration method of the surgical robot further comprises the following steps: calculating the included angle between the central axis of the first shaft and the central axis of the third shaft to obtain a second angle; updating the value of the second initial angle to be the value of the current second angle under the condition that the current second angle is smaller than or equal to a preset second initial angle, and obtaining an updated second initial angle; determining a second rotation angle according to the current second angle, and controlling the second shaft to rotate along a second direction according to the second rotation angle, wherein the second rotation angle is smaller than the current second angle, and the second direction is a direction in which the current second angle has a trend of becoming smaller in the rotation process of the second shaft; and (3) re-calculating the second angle after the second shaft rotates, and repeatedly executing the steps of updating the second initial angle and determining a new second rotation angle under the condition that the current second angle is smaller than or equal to the current second initial angle until the current second angle is larger than the current second initial angle, rotating the second shaft to the position after the last rotation, and determining that the second shaft completes zero calibration after the second shaft rotates.
Further, the surgical robot is provided with a target marker, and the target marker changes positions along with the rotation of the first shaft, the second shaft and the third shaft respectively, wherein the zero calibration method of the surgical robot further comprises the following steps: the first shaft or the third shaft is used as a target shaft, the rotation of the target shaft is controlled, and in the rotation process of the target shaft, the point cloud data of the target marker are collected by using a vision camera, so that second point cloud data are obtained; processing the second point cloud data according to a plane fitting algorithm, and determining three-dimensional information of a second plane formed by the target marker in the rotating process; determining a normal vector of the second plane according to the three-dimensional information of the second plane, wherein the normal vector is parallel to the central axis of the target shaft; and determining the included angle between the normal vector of the second plane corresponding to the first axis and the normal vector of the second plane corresponding to the third axis as a second angle.
According to another aspect of the embodiment of the present invention, there is also provided a zero calibration device of a surgical robot, including: the first determining module is used for determining a first rotation angle of the first shaft according to the included angle between the central axis of the second shaft and the reference vector, and performing zero calibration on the first shaft according to the first rotation angle; the second determining module is used for determining a third rotation angle of the third shaft according to the included angle between the normal vector of the target plane of the target object and the reference vector, and performing zero calibration on the third shaft according to the third rotation angle, wherein the target object is rigidly connected with the third shaft; the third determining module is used for determining a second rotation angle of the second shaft according to the included angle between the central axis of the first shaft and the central axis of the third shaft and performing zero calibration on the second shaft according to the second rotation angle; and the fourth determining module is used for determining that the surgical robot finishes zero calibration under the condition that the first shaft, the second shaft and the third shaft finish zero calibration.
According to another aspect of the embodiments of the present invention, there is also provided a computer readable storage medium having a computer program stored therein, wherein the computer program is configured to perform the above-described zero calibration method of a surgical robot when run.
According to another aspect of an embodiment of the present invention, there is also provided an electronic device including one or more processors; and a memory for storing one or more programs which, when executed by the one or more processors, cause the one or more processors to implement a method for operating the program, wherein the program is configured to perform the zero calibration method of the surgical robot described above when operated.
In the embodiment of the invention, a zero point calibration mode is adopted for the surgical robot through angle calculation and shaft movement, a first rotation angle of a first shaft is determined according to the size of an included angle between a central axis of the second shaft and a reference vector, the zero point calibration is carried out on the first shaft according to the first rotation angle, then a third rotation angle of a third shaft is determined according to the size of an included angle between a normal vector of a target plane of a target object and the reference vector, the zero point calibration is carried out on the third shaft according to the third rotation angle, then the second rotation angle of a second shaft is determined according to the size of an included angle between the central axis of the first shaft and the central axis of the third shaft, and the zero point calibration is carried out on the second shaft according to the second rotation angle, so that the zero point calibration is finished for the surgical robot under the condition that the zero point calibration is finished for the first shaft, the second shaft and the third shaft. Wherein the target object is rigidly connected to the third shaft.
In the process, the effective determination of the installation error of the robot is realized by determining the included angle between the central axis of the second shaft and the reference vector, the included angle between the normal vector of the target plane of the target object and the reference vector and the included angle between the central axis of the first shaft and the central axis of the third shaft, the rotation angles of the first shaft, the second shaft and the third shaft are respectively determined according to the included angle, and the zero calibration is carried out on the first shaft, the second shaft and the third shaft according to the rotation angles, so that the compensation angle for compensating the installation error according to the installation error is realized, the zero calibration of the surgical robot is completed according to the compensation angle, the efficiency of the zero calibration is improved, and the problem that the calibration block is required to be fixed to a specific position in advance when the external calibration block is relied on in the related technology is avoided, thereby influencing the calibration efficiency.
Therefore, the scheme provided by the application achieves the purpose of zero calibration of the surgical robot through angle calculation and axial movement, thereby realizing the technical effect of improving the zero calibration efficiency, and further solving the technical problem of low zero calibration efficiency caused by the fact that the zero calibration of the surgical robot depends on an external calibration block in the related technology.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification, illustrate embodiments of the application and together with the description serve to explain the application and do not constitute a limitation on the application. In the drawings:
FIG. 1 is a schematic illustration of an alternative zero calibration method for a surgical robot according to an embodiment of the present invention;
FIG. 2 is a schematic view of an alternative surgical robot according to an embodiment of the present invention;
FIG. 3 is a schematic illustration of vectors associated with an alternative surgical robot in accordance with an embodiment of the present invention;
FIG. 4 is a flow chart of an alternative zero calibration of the first shaft according to an embodiment of the present invention;
FIG. 5 is a flow chart of an alternative zero calibration of a third shaft according to an embodiment of the present invention;
FIG. 6 is a flow chart of an alternative zero calibration of the second axis according to an embodiment of the invention;
FIG. 7 is a schematic view of an alternative zero calibration device of a surgical robot in accordance with an embodiment of the present invention;
Fig. 8 is a schematic diagram of an alternative electronic device according to an embodiment of the invention.
Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present invention and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be noted that, the user information (including but not limited to user equipment information, user personal information, etc.) and the data (including but not limited to data for analysis, stored data, presented data, etc.) related to the present application are information and data authorized by the user or fully authorized by each party, and the collection, use and processing of the related data need to comply with the related laws and regulations and standards of the related region, and provide corresponding operation entries for the user to select authorization or rejection.
Example 1
According to an embodiment of the present invention, there is provided an embodiment of a zero calibration method of a surgical robot, it being noted that the steps shown in the flowchart of the drawings may be performed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be performed in an order different from that herein.
Fig. 1 is a schematic view of an alternative zero calibration method of a surgical robot according to an embodiment of the present invention, as shown in fig. 1, the method includes the steps of:
Step S101, determining a first rotation angle of the first shaft according to the included angle between the central axis of the second shaft and the reference vector, and performing zero calibration on the first shaft according to the first rotation angle.
Alternatively, the device such as the electronic device, the application system, the server, or the like may be used as the execution body, in this embodiment, the target control system independent of the surgical robot is used as the execution body to perform zero calibration on the surgical robot, and in other embodiments, the control system inside the surgical robot may be used as the execution body to perform zero calibration on the surgical robot.
In this embodiment, fig. 2 is a schematic view of an alternative surgical robot according to an embodiment of the present invention, as shown in fig. 2, the surgical robot is a three-axis robot, and the surgical robot includes a first axis, a second axis, and a third axis that are sequentially connected, where the first axis, the second axis, and the third axis are all rotation axes, and the surgical robot further includes a base connected to the first axis, where the surgical robot may be used to track a joint position of a patient, and assist a doctor in performing operations such as positioning, posture fixing, and the like of a surgical tool. As shown in fig. 2, in this embodiment, the plane of the base is a horizontal plane, the central axis of the first shaft and the central axis of the third shaft of the surgical robot are parallel to the horizontal plane, the central axis of the second shaft is parallel to the vertical plane, the second shaft can drive the third shaft to rotate with the second shaft as the rotation center in the rotation process, the central axis of the second shaft is always coplanar with the central axis of the third shaft, the first shaft can drive the second shaft and the third shaft to rotate with the first shaft as the rotation center in the rotation process, and the central axis of the first shaft is always coplanar with the central axis of the second shaft.
Optionally, in the process of calibrating the surgical robot, it is determined that when the central axis of the first shaft, the central axis of the second shaft, the central axis of the third shaft, and the normal vector of the target plane of the target object rigidly connected to the third shaft are all in the same reference plane, the surgical robot completes zero calibration, in this embodiment, the reference plane is a plane parallel to the normal vector of the base plane of the surgical robot, and when the base plane is a horizontal plane, the reference plane corresponds to a vertical plane, for example, the surgical robot shown in fig. 2 is at a zero position after zero calibration.
Therefore, the target control system can firstly rotate the first shaft according to the included angle between the central axis of the second shaft and the reference vector, so that the central axis of the first shaft and the central axis of the second shaft are both in the same reference plane, namely, the central axis of the second shaft is parallel to the reference vector, and the zero point calibration of the first shaft is determined to be completed under the condition that the central axis of the first shaft and the central axis of the second shaft are both in the same reference plane. The angle between the central axis of the second shaft and the reference vector can be understood as an installation error angle of the surgical robot, the angle between the central axis of the second shaft and the reference vector can be the angle between the second vector and the reference vector, the second vector is parallel to the central axis of the second shaft, and under the condition that the surgical robot is at the zero point position after zero point calibration, the direction of the second vector is the same as the direction of the reference vector, that is, the angle between the second vector and the reference vector is equal to or approximately equal to 0.
The first rotation angle is used for compensating the included angle between the central axis of the second shaft and the reference vector, so that the central axis of the first shaft and the central axis of the second shaft are both in the same reference plane, namely the first rotation angle is used for enabling the included angle between the central axis of the second shaft and the reference vector to be reduced to be equal to 0 or approximately 0.
In the process of zero calibration of the first shaft according to the first rotation angle, the target control system can directly determine the included angle between the central axis of the second shaft and the reference vector as the first rotation angle, then rotate the first shaft according to the first rotation angle to complete zero calibration of the first shaft, optionally, the target control system can also determine a first rotation angle according to the included angle between the central axis of the second shaft and the reference vector, and after rotating the first shaft according to the first rotation angle, re-determine the included angle between the central axis of the second shaft and the reference vector, and re-determine the first rotation angle according to the determined first rotation angle, and rotate the first shaft, so that iteration is continuously performed until the included angle between the central axis of the second shaft and the reference vector is equal to 0 or approximately 0, and the zero calibration of the first shaft is completed.
Step S102, determining a third rotation angle of the third shaft according to the included angle between the normal vector of the target plane of the target object and the reference vector, and performing zero calibration on the third shaft according to the third rotation angle, wherein the target object is rigidly connected with the third shaft.
The target object may be a flange rigidly connected to the end of the third shaft remote from the second shaft, the flange being used for mounting an end tool, for example for mounting a robot. The target plane may refer to either of two planes of the flange, and the target plane is parallel to the central axis of the third shaft.
The angle between the normal vector of the target plane of the target object and the reference vector can be understood as the installation error angle of the surgical robot, and the normal vector of the target plane is the same as the direction of the reference vector when the surgical robot is at the zero position after zero calibration, that is, the target plane is parallel to the base plane when the surgical robot is at the zero position after zero calibration.
The target control system can rotate the third shaft according to the included angle between the normal vector of the target plane of the target object and the reference vector, so that the normal vector of the target plane of the target object is positioned on the reference plane, and the zero point calibration of the third shaft is determined to be completed under the condition that the normal vector of the target plane of the target object is positioned on the reference plane.
The third rotation angle is used for compensating the included angle between the normal vector of the target plane of the target object and the reference vector so that the normal vector of the target plane of the target object is parallel to the reference vector, that is, the third rotation angle is used for enabling the included angle between the normal vector of the target plane of the target object and the reference vector to be smaller to be equal to 0 or approximately equal to 0.
In the process of zero calibration of the third shaft according to the third rotation angle, the target control system can directly determine the angle between the normal vector of the target plane and the reference vector as the third rotation angle, then rotate the third shaft according to the third rotation angle to complete zero calibration of the third shaft, optionally, the target control system can also determine a third rotation angle according to the angle between the normal vector of the target plane and the reference vector, and then re-determine the angle between the normal vector of the target plane and the reference vector after rotating the third shaft according to the third rotation angle, and re-determine the third rotation angle according to the angle, and then rotate the third shaft, so that iteration is continuously performed until the angle between the normal vector of the target plane and the reference vector is equal to or approximately equal to 0, and the zero calibration of the third shaft is completed.
And step S103, determining a second rotation angle of the second shaft according to the included angle between the central axis of the first shaft and the central axis of the third shaft, and performing zero calibration on the second shaft according to the second rotation angle.
Optionally, the target control system may rotate the second shaft according to the angle between the central axis of the first shaft and the central axis of the third shaft, so that the central axes of the first shaft and the third shaft are both in the same reference plane, and determine that the zero calibration of the second shaft is completed when the central axes of the first shaft and the third shaft are both in the reference plane. The angle between the central axis of the first shaft and the central axis of the third shaft can be understood as an installation error angle of the surgical robot, the angle between the central axis of the first shaft and the central axis of the third shaft can be an angle between the first vector and the third vector, the first vector is parallel to the central axis of the first shaft, the third vector is parallel to the central axis of the third shaft, and under the condition that the surgical robot is at the zero point position after zero point calibration, the direction of the first vector is opposite to the second shaft, and the direction of the first vector is the same as the direction of the third vector, namely, the angle between the first vector and the third vector is equal to or approximately equal to 0.
The second rotation angle is used for compensating the included angle between the central axis of the first shaft and the central axis of the third shaft, so that the central axes of the first shaft and the third shaft are both in the same reference plane, namely the second rotation angle is used for enabling the included angle between the central axis of the first shaft and the central axis of the third shaft to be reduced to be equal to 0 or approximately 0.
In the process of zero calibration of the second shaft according to the second rotation angle, the target control system can directly determine the included angle between the central axis of the first shaft and the central axis of the third shaft as the second rotation angle, then rotate the second shaft according to the second rotation angle to complete zero calibration of the second shaft, optionally, the target control system can also determine a second rotation angle according to the included angle between the central axis of the first shaft and the central axis of the third shaft, and after rotating the second shaft according to the second rotation angle, re-determine the included angle between the central axis of the first shaft and the central axis of the third shaft, and re-determine the second rotation angle according to the determined included angle, and rotate the second shaft, so that iteration is repeated until the included angle between the central axis of the first shaft and the central axis of the third shaft is equal to 0 or approximately equal to 0, and complete zero calibration of the second shaft.
In this embodiment, the execution order of the step S102 and the step S103 is not particularly limited, and the step S102 may be executed first and then the step S103 may be executed, or the step S103 may be executed first and then the step S102 may be executed.
Step S104, under the condition that the first shaft, the second shaft and the third shaft finish zero point calibration, the surgical robot is determined to finish zero point calibration.
Optionally, under the condition that the first shaft, the second shaft and the third shaft complete zero point calibration, the central axis of the first shaft, the central axis of the second shaft, the central axis of the third shaft and the normal vector of the target plane of the target object rigidly connected with the third shaft are all in the same reference plane, so that the surgical robot is determined to complete zero point calibration.
Based on the scheme defined in the steps S101 to S104, it can be known that in the embodiment of the present invention, by adopting a manner of performing zero calibration on the surgical robot through angle calculation and shaft motion, determining a first rotation angle of the first shaft according to the magnitude of an included angle between the central axis of the second shaft and the reference vector, performing zero calibration on the first shaft according to the first rotation angle, then determining a third rotation angle of the third shaft according to the magnitude of an included angle between the normal vector of the target plane of the target object and the reference vector, performing zero calibration on the third shaft according to the third rotation angle, then determining a second rotation angle of the second shaft according to the magnitude of an included angle between the central axis of the first shaft and the central axis of the third shaft, and performing zero calibration on the second shaft according to the second rotation angle, thereby determining that the surgical robot completes zero calibration on the condition that the first shaft, the second shaft and the third shaft complete zero calibration. Wherein the target object is rigidly connected to the third shaft.
It is easy to note that in the above-mentioned process, the effective determination of the installation error of the robot is realized by determining the magnitude of the included angle between the central axis of the second shaft and the reference vector, the magnitude of the included angle between the normal vector of the target plane of the target object and the reference vector, and the magnitude of the included angle between the central axis of the first shaft and the central axis of the third shaft, and by determining the rotation angles of the first shaft, the second shaft and the third shaft according to the foregoing included angle magnitudes, respectively, and zero calibration is performed on the first shaft, the second shaft and the third shaft according to the rotation angles, thereby realizing the compensation angle for compensating the installation error according to the installation error, thereby compensating the installation error according to the compensation angle to complete the zero calibration of the surgical robot, improving the efficiency of the zero calibration, and avoiding the need to fix the calibration block to a specific position in advance when relying on the external calibration block in the related art, thereby affecting the calibration efficiency.
Therefore, the scheme provided by the application achieves the purpose of zero calibration of the surgical robot through angle calculation and axial movement, thereby realizing the technical effect of improving the zero calibration efficiency, and further solving the technical problem of low zero calibration efficiency caused by the fact that the zero calibration of the surgical robot depends on an external calibration block in the related technology.
In an alternative embodiment, the surgical robot further comprises a base, wherein the target control system may determine the reference vector by: acquiring point cloud data of a base plane by adopting a visual camera; processing the point cloud data of the base plane according to a plane fitting algorithm to determine three-dimensional information of the base plane; and determining a normal vector of the base plane according to the three-dimensional information of the base plane, and determining the normal vector of the base plane as a reference vector.
Optionally, the target control system may acquire the base plane with a probe in a visual field of the visual camera by using the visual camera, so as to obtain point cloud data of the base plane, and process the point cloud data of the base plane through a plane fitting algorithm to determine three-dimensional information of the base plane, where the three-dimensional information of the base plane includes information for characterizing a position and a direction of the base plane, and the three-dimensional information of the base plane may be a mathematical equation for describing the base plane.
After determining the three-dimensional information of the base plane, the target control system may determine a normal vector of the base plane from the three-dimensional information of the base plane so as to determine the normal vector of the base plane as a reference vector, and in this embodiment, the normal vector of the base plane is oriented toward the first, second, and third axes. For example, fig. 3 is a schematic view of vectors associated with an alternative surgical robot according to an embodiment of the present invention, where n1 in fig. 3 corresponds to the normal vector of the aforementioned base plane, i.e. the reference vector.
It should be noted that, by taking the normal vector of the base plane as the reference vector, quick and accurate determination of the reference vector is realized.
In an alternative embodiment, in the process of determining the first rotation angle of the first shaft according to the angle between the central axis of the second shaft and the reference vector and performing zero calibration on the first shaft according to the first rotation angle, the target control system may calculate the angle between the central axis of the second shaft and the reference vector to obtain the first angle, then update the value of the first initial angle to the value of the current first angle when the current first angle is smaller than or equal to the preset first initial angle, obtain the updated first initial angle, then determine the first rotation angle according to the current first angle, and control the first shaft to rotate in the first direction according to the first rotation angle, thereby recalculate the first angle after the first shaft rotates, and repeatedly perform the steps of updating the first initial angle and determining a new first rotation angle when the current first angle is smaller than or equal to the current first initial angle until the current first angle is larger than the current first initial angle, and then rotate the first shaft to the position after the previous rotation, and determine that the first shaft rotates in the current direction is smaller than the current first rotation angle, wherein the first rotation trend is smaller than the current first rotation trend, and the first rotation trend is completed in the first direction.
The process of zero calibration of the first shaft is equivalent to the process of adjusting the central axis of the first shaft and the central axis of the second shaft to be in the same reference plane. The magnitude of the angle between the central axis of the second axis and the reference vector (i.e., the first angle) may refer to the magnitude of the angle between the second vector and the reference vector, for example, n1 in fig. 3 corresponds to the reference vector, n2 in fig. 3 corresponds to the aforementioned second vector, and the angle between n1 and n2 in fig. 3 corresponds to the first angle. It should be noted that, the first angle is greater than or equal to 0 ° and less than or equal to 180 °, and since the installation error of the surgical robot is not very large in practical applications, the maximum value of the first angle is often less than 90 °.
The preset first initial angle may be 90 degrees, or may be other angles greater than 0 degrees, and if the current first angle θ1 is smaller than or equal to the preset first initial angle θ0, the value of the first initial angle θ0 is updated to be the value of the current first angle θ1, so as to obtain an updated first initial angle θ0. For example, if the current first angle θ1 is 30 °, the first initial angle θ0 is 90 °, the updated first initial angle θ0 is 30 °.
The target control system may then determine the first rotation angle according to the current first angle θ1, in this embodiment, the first rotation angle may be 1/2 of the first angle θ1, and in other embodiments, the first rotation angle may be other angles smaller than the current first angle.
After the first rotation angle is determined, the target control system may control the first shaft to rotate in the first direction according to the first rotation angle such that the first angle θ1 tends to be smaller during the rotation of the first shaft. For example, if the aforementioned second vector n2 is offset by the reference vector n1 by the first angle θ1 in the clockwise rotation direction of the central axis of the first shaft, the first direction is the counterclockwise rotation direction of the central axis of the first shaft.
After the first axis is rotated, the target control system may recalculate the first angle θ1, for example, if the first rotation angle is 1/2 of the first angle θ1, the first angle θ1 before rotation is 30 °, and the first angle θ1 calculated after rotation is 15 °. Then, the target control system may repeatedly perform the steps of updating the first initial angle θ0 and determining a new first rotation angle, and controlling the first shaft to rotate in the first direction according to the new first rotation angle, in the case that the current first angle θ1 is less than or equal to the current first initial angle θ0.
Wherein, after repeating the above steps, the first angle θ1 and the first initial angle θ0 become smaller and smaller until they approach 0, that is, the first rotation angle becomes smaller and smaller until they approach 0, and the minimum rotatable angle of the surgical robot is larger than the first rotation angle when repeating the above steps a certain number of times based on the limitation of precision, and thus, there may be a case that the recalculated first angle θ1 may be larger than the current first initial angle θ0 when controlling the rotation of the first shaft according to the first rotation angle. In this case, it is determined that the first angle θ1 calculated after the previous rotation cannot be reduced any more, and therefore, in the process of the repeated iteration, until the current first angle θ1 is greater than the current first initial angle θ0, the first shaft is rotated to the position after the previous rotation, and the first shaft is determined to complete zero calibration after the first shaft is rotated.
For example, fig. 4 is a flowchart of an alternative zero calibration of the first shaft according to an embodiment of the present invention, and as shown in fig. 4, the process of zero calibration of the first shaft may include the following steps:
Step S201, acquiring and storing position information Jab1 of a first shaft from an encoder of the first shaft; wherein the encoder of the first shaft is used to measure and record the position and speed of the first shaft movement;
step S202, calculating the included angle between the central axis of the second shaft and the reference vector to obtain a first angle theta 1;
Step S203, judging the magnitude between the theta 1 and a preset first initial angle theta 0, if the theta 1 is smaller than or equal to the theta 0, executing step S204, and if the theta 1 is larger than the theta 0, executing step S205;
Step S204, let θ0=θ1 to update θ0, and control the first axis to rotate along the first direction according to 1/2 θ1, and then execute step S201;
In step S205, the first shaft is rotated to the position after the last rotation according to the position information Jab1, and it is determined that the zero calibration of the first shaft is completed.
It should be noted that, through constantly determining the first rotation angle according to the first angle, and rotate the first axle according to the first rotation angle, realized adjusting the first axle many times, avoided the phenomenon that can't adjust in place in one step because there is rotation error when adjusting the first axle once to have, in addition, through the position after rotating the first axle last time in the current first angle is greater than current first initial angle's circumstances, and confirm the first axle and accomplish the zero point calibration after the first axle is rotatory, make the zero point calibration to the first axle can reach the minimum precision that this surgical robot supported, thereby improved the accuracy of zero point calibration.
In an alternative embodiment, the surgical robot is provided with a target marker, the target marker changes position along with the rotation of the second shaft, wherein in the process of calculating the size of an included angle between the central axis of the second shaft and the reference vector to obtain a first angle, the target control system can control the second shaft to rotate, in the process of rotating the second shaft, the point cloud data of the target marker is collected by using the vision camera to obtain first point cloud data, then the first point cloud data is processed according to a plane fitting algorithm, three-dimensional information of a first plane formed by the target marker in the rotating process is determined, and then the normal vector of the first plane is determined according to the three-dimensional information of the first plane, so that the size of the included angle between the normal vector of the first plane and the reference vector is determined to be the first angle. Wherein the normal vector of the first plane is parallel to the central axis of the second axis.
In this embodiment, the target marker may be disposed on the third shaft, and the target marker may be an original component on the third shaft of the surgical robot, or may be disposed on the third shaft by a worker for zero calibration, for example, the position of the target marker is shown in fig. 2 and 3. Since the target marker changes position following the rotation of the second shaft, the second shaft rotation may be controlled to determine the direction information of the central axis of the second shaft from the movement information of the target marker, thereby facilitating the determination of the first angle.
Optionally, the target control system may control the rotation of the second shaft, so that in the rotation process of the second shaft, first point cloud data is acquired, and three-dimensional information of the first plane is determined according to the first point cloud data by using a plane fitting algorithm. Wherein the three-dimensional information of the first plane includes information for characterizing a position and a direction of the first plane, and the three-dimensional information of the first plane may be a mathematical equation for describing the first plane.
After determining the three-dimensional information of the first plane, the target control system may determine a normal vector of the first plane according to the three-dimensional information of the first plane, thereby determining the normal vector of the first plane as a second vector, and further determining the magnitude of an included angle between the normal vector of the first plane and the reference vector as a first angle.
It should be noted that, since the target marker changes position along with the rotation of the second shaft, by rotating the second shaft and acquiring movement information of the target marker in the rotation process, accurate determination of the direction of the central axis of the second shaft can be achieved, and thus accurate determination of the first angle can be further achieved.
In an alternative embodiment, in the process of determining the third rotation angle of the third shaft according to the angle between the normal vector of the target plane of the target object and the reference vector and performing zero calibration on the third shaft according to the third rotation angle, the target control system may calculate the angle between the normal vector of the target plane of the target object and the reference vector to obtain the third angle, then update the value of the third initial angle to the value of the current third angle when the current third angle is smaller than or equal to the preset third initial angle, obtain the updated third initial angle, then determine the third rotation angle according to the current third angle, and control the third shaft to rotate along the third direction according to the third rotation angle, thereby re-calculating the third angle after the third shaft rotates, and repeatedly performing the steps of updating the third initial angle and determining the new third rotation angle when the current third angle is smaller than or equal to the current third initial angle until the current third angle is larger than the current third initial angle, rotating the third shaft to the previous position, and completing the calibration of the third shaft after the third shaft rotates once. The third rotation angle is smaller than the current third angle, and the third direction is a direction in which the current third angle tends to be smaller in the rotation process of the third shaft.
The process of zero point calibration on the third axis is equivalent to the process of adjusting the normal vector of the target plane of the target object to be in the reference plane. The normal vector of the target plane is the same as the direction of the reference vector when the surgical robot is at the zero position after zero calibration. For example, n3 in fig. 3 corresponds to the normal vector of the target plane of the target object, and the included angle between n1 and n3 in fig. 3 corresponds to the third angle. It should be noted that, the third angle is greater than or equal to 0 ° and less than or equal to 180 °, and since the installation error of the surgical robot is not very large in practical applications, the maximum value of the third angle is often less than 90 °.
The preset third initial angle may be the same as or different from the preset first initial angle, and the preset third initial angle may be 90 ° or may be another angle greater than 0, and if the current third angle θ3 is smaller than or equal to the preset third initial angle θ0', the value of the third initial angle θ0' is updated to the value of the current third angle θ3, so as to obtain an updated third initial angle θ0'. For example, if the current third angle θ3 is 10 °, the third initial angle θ0 'is 90 °, the updated third initial angle θ0' is 10 °.
The target control system may then determine the third rotation angle according to the current third angle θ3, in which case the third rotation angle may be a third angle θ3 of 1/2, in other embodiments the third rotation angle may be another angle less than the current third angle.
After the third rotation angle is determined, the target control system may control the third shaft to rotate in the third direction according to the third rotation angle such that the third angle θ3 has a tendency to be smaller in the rotation process of the third shaft. For example, if the aforementioned third vector n3 is offset by the third angle θ3 from the reference vector n1 in the counterclockwise direction of the center axis of the third shaft, the third direction is the clockwise direction of the center axis of the third shaft.
After the third shaft is rotated, the target control system may recalculate the third angle θ3, for example, if the third rotation angle is a third angle θ3 of 1/2, and the third angle θ3 before rotation is 10 °, the third angle θ3 calculated after rotation is 5 °. Then, the target control system may repeatedly perform the steps of updating the third initial angle θ0 'and determining a new third rotation angle, and controlling the third shaft to rotate in the third direction according to the new third rotation angle, in the case that the current third angle θ3 is equal to or smaller than the current third initial angle θ0'.
Wherein, after repeating the above steps, the third angle θ3 and the third initial angle θ0 'become smaller and smaller until they approach 0, that is, the third rotation angle becomes smaller and smaller until they approach 0, and the minimum rotatable angle of the surgical robot is larger than the third rotation angle in the case that the above steps are repeated a certain number of times based on the limitation of precision, and thus, there is a case that the recalculated third angle θ3 may be larger than the current third initial angle θ0' after controlling the rotation of the third shaft according to the third rotation angle. In this case, it is determined that the third angle θ3 calculated after the last rotation cannot be reduced any more, and therefore, in the process of the above repeated iteration, until the current third angle θ3 is greater than the current third initial angle θ0', the third shaft is rotated to the position after the last rotation, and the zero calibration is completed by determining the third shaft after the third shaft is rotated.
For example, fig. 5 is a flowchart of an alternative zero calibration process for the third shaft according to an embodiment of the present invention, and as shown in fig. 5, the process for zero calibration for the third shaft may include the following steps:
step S301, position information Jab3 of a third shaft is obtained from an encoder of the third shaft and stored; wherein the encoder of the third shaft is used for measuring and recording the position and speed of the movement of the third shaft;
step S302, calculating the included angle between the normal vector of the target plane of the target object and the reference vector to obtain a third angle theta 3;
Step S303, judging the magnitude between the theta 3 and a preset third initial angle theta 0', if the theta 3 is smaller than or equal to theta 0', executing step S304, and if the theta 3 is larger than theta 0', executing step S305;
Step S304, let θ0 '=θ3 to update θ0', and control the third shaft to rotate along the third direction according to 1/2 of θ3, and then execute step S301;
step S305, rotating the third shaft to the position after the last rotation according to the position information Jab3, and determining that the zero calibration of the third shaft is completed.
It should be noted that, through constantly determining the third rotation angle according to the third angle, and rotate the third axle according to the third rotation angle, realized adjusting the third axle many times, avoided the phenomenon that can't adjust in place in one step because there is rotation error when carrying out once to the third axle, in addition, through the position after rotating the third axle last time in the present third angle more than the present third initial angle's circumstances, and confirm the third axle and accomplish the zero point calibration after the third axle is rotatory, make the zero point calibration to the third axle can reach the minimum precision that this surgical robot supports, thereby improved the accuracy of zero point calibration.
In an alternative embodiment, the target control system may determine the normal vector of the target plane of the target object by: acquiring point cloud data of a target plane of a target object by adopting a visual camera; processing the point cloud data of the target plane according to a plane fitting algorithm, and determining three-dimensional information of the target plane; and determining the normal vector of the target plane according to the three-dimensional information of the target plane.
Optionally, the target plane is parallel to the central axis of the third shaft, and the target plane is parallel to the base plane with the surgical robot in a zero position after zero calibration. Wherein the three-dimensional information of the target plane includes information for characterizing the position and the direction of the target plane, and the three-dimensional information of the target plane can be a mathematical equation for describing the target plane.
It should be noted that, by fitting three-dimensional information of the target plane according to the vision camera and the plane fitting algorithm, and determining the normal vector of the target plane according to the three-dimensional information, accurate determination of the normal vector of the target plane is realized.
In an alternative embodiment, in the process of determining the second rotation angle of the second shaft according to the angle between the central axis of the first shaft and the central axis of the third shaft and performing zero calibration on the second shaft according to the second rotation angle, the target control system may calculate the angle between the central axis of the first shaft and the central axis of the third shaft to obtain the second angle, in the case that the current second angle is smaller than or equal to the preset second initial angle, update the value of the second initial angle to the value of the current second angle to obtain the updated second initial angle, then determine the second rotation angle according to the current second angle, and control the second shaft to rotate along the second direction according to the second rotation angle, thereby re-calculating the second angle after the second shaft rotates, and repeatedly performing the steps of updating the second initial angle and determining the new second rotation angle in the case that the current second angle is smaller than or equal to the current second initial angle until the current second angle is larger than the current second initial angle, rotating the second shaft is rotated to the position after the second shaft rotates once, and determining the zero calibration on the second shaft is completed. The second rotation angle is smaller than the current second angle, and the second direction is a direction in which the current second angle tends to be smaller in the rotation process of the second shaft.
The process of zero calibration of the second shaft is equivalent to the process of adjusting the central axis of the first shaft and the central axis of the third shaft to be in the same reference plane. The magnitude of the angle between the central axis of the first shaft and the central axis of the third shaft may refer to the magnitude of the angle between the first vector and the third vector, for example, n5 in fig. 3 corresponds to the first vector, n4 in fig. 3 corresponds to the third vector, and the angle between n5 and n4 in fig. 3 corresponds to the second angle. It should be noted that, the second angle is greater than or equal to 0 ° and less than or equal to 180 °, and since the installation error of the surgical robot is not very large in practical applications, the maximum value of the second angle is often less than 90 °.
The preset second initial angle may be the same as or different from the preset first initial angle, and the preset second initial angle may be 90 ° or other angles greater than 0, and if the current second angle θ2 is smaller than or equal to the preset second initial angle θ0 ", the value of the second initial angle θ0″ is updated to the value of the current second angle θ2, so as to obtain an updated second initial angle θ0″. For example, if the current second angle θ2 is 16 °, the second initial angle θ0″ is 90 °, the updated second initial angle θ0″ is 16 °.
The target control system may then determine the second rotation angle according to the current second angle θ2, in this embodiment, the second rotation angle may be 1/2 of the second angle θ2, and in other embodiments, the second rotation angle may be other angles smaller than the current second angle.
After determining the second rotation angle, the target control system may control the second shaft to rotate in the second direction in accordance with the second rotation angle such that the second angle θ2 tends to be smaller during rotation of the second shaft. For example, if the third vector n4 is offset by the first vector n5 by the second angle θ2 in the clockwise rotation direction of the central axis of the second shaft, the second direction is the counterclockwise rotation direction of the central axis of the second shaft.
After the second shaft rotates, the target control system may recalculate the second angle θ2, for example, if the second rotation angle is 1/2 of the second angle θ2 and the second angle θ2 before rotation is 16 °, the second angle θ2 calculated after rotation is 8 °. Then, the target control system may repeatedly perform the steps of updating the second initial angle θ0″ and determining a new second rotation angle, and controlling the second shaft to rotate in the second direction according to the new second rotation angle, in the case that the current second angle θ2 is less than or equal to the current second initial angle θ0″.
After the steps are repeatedly performed, the second angle θ2 and the second initial angle θ0″ may become smaller and smaller until they approach 0, that is, the second rotation angle may become smaller and smaller until they approach 0, and the minimum rotatable angle of the surgical robot may be larger than the second rotation angle when the steps are repeatedly performed a certain number of times based on the limitation of precision, so that the recalculated second angle θ2 may be larger than the current second initial angle θ0″ when the second shaft is controlled to rotate according to the second rotation angle. In this case, it is determined that the second angle θ2 calculated after the previous rotation cannot be reduced any more, and therefore, in the process of the above repeated iteration, until the current second angle θ2 is greater than the current second initial angle θ0″, the second shaft is rotated to the position after the previous rotation, and the zero calibration is completed by determining the second shaft after the second shaft is rotated.
For example, fig. 6 is a flowchart of an alternative zero calibration of the second axis, and as shown in fig. 6, the process of zero calibration of the first axis may include the following steps:
step S401, position information Jab2 of a second shaft is obtained from an encoder of the second shaft and stored; wherein the encoder of the second shaft is used for measuring and recording the position and speed of the second shaft movement;
step S402, calculating the included angle between the central axis of the first shaft and the central axis of the third shaft to obtain a second angle theta 2;
Step S403, judging the magnitude between the theta 2 and the preset second initial angle theta 0', if the theta 2 is smaller than or equal to the theta 0', executing step S404, and if the theta 2 is larger than the theta 0', executing step S405;
Step S404, let θ0 '=θ2 to update θ0', and control the second shaft to rotate along the second direction according to 1/2 of θ2, and then execute step S401;
Step S405, according to the position information Jab2, the second shaft is rotated to the position after the last rotation, and it is determined that the zero calibration of the second shaft is completed.
It should be noted that, through constantly determining the second rotation angle according to the second angle, and rotate the second axle according to the second rotation angle, realized adjusting the second axle many times, avoided the phenomenon that can't adjust in place in one step because there is rotation error to the second axle when carrying out once adjustment to the second axle to take place, in addition, through the position after rotating the second axle last time in the present second angle is greater than the present second initial angle's circumstances, and confirm the second axle after the second axle is rotatory and accomplish the zero point calibration, make the zero point calibration to the second axle can reach the minimum precision that this surgical robot supported, thereby improved the accuracy of zero point calibration.
In an alternative embodiment, the surgical robot is provided with a target marker, the target marker changes positions along with rotation of the first shaft, the second shaft and the third shaft respectively, wherein in the process of calculating the included angle between the central axis of the first shaft and the central axis of the third shaft to obtain the second angle, the target control system can control the rotation of the target shaft by taking the first shaft or the third shaft as the target shaft, collect point cloud data of the target marker by using a vision camera in the rotation process of the target shaft to obtain second point cloud data, then process the second point cloud data according to a plane fitting algorithm, determine three-dimensional information of a second plane formed by the target marker in the rotation process, and then determine a normal vector of the second plane according to the three-dimensional information of the second plane, wherein the normal vector is parallel to the central axis of the target shaft, so that the included angle between the normal vector of the second plane corresponding to the first shaft and the normal vector of the second plane corresponding to the third shaft is determined to be the second angle.
In this embodiment, the target marker may be disposed on the third shaft, and the target marker may be an original component on the third shaft of the surgical robot, or may be disposed on the third shaft by a worker for zero calibration, for example, the position of the target marker is shown in fig. 2 and 3. Since the target marker changes positions following the rotation of the first shaft, the second shaft, and the third shaft, respectively, the first shaft may be individually controlled to rotate to determine the direction information of the central axis of the first shaft according to the movement information of the target marker, and the third shaft may be individually controlled to rotate to determine the direction information of the central axis of the third shaft according to the movement information of the target marker.
Optionally, the target control system may use the first axis or the third axis as a target axis, and control the rotation of the target axis, so as to acquire second point cloud data in the rotation process of the target axis, and determine three-dimensional information of the second plane according to the second point cloud data by using a plane fitting algorithm. Wherein the three-dimensional information of the second plane includes information for characterizing a position, a direction of the second plane, and the three-dimensional information of the second plane may be a mathematical equation for describing the second plane.
After determining the three-dimensional information of the second plane, the target control system may determine a normal vector of the second plane according to the three-dimensional information of the second plane, thereby determining a normal vector of the second plane corresponding to the first axis as the first vector, determining a normal vector of the second plane corresponding to the third axis as the third vector, and further determining an included angle between the normal vector of the second plane corresponding to the first axis and the normal vector of the second plane corresponding to the third axis as the second angle.
It should be noted that, since the target marker changes positions along with the rotation of the first shaft, the second shaft, and the third shaft, respectively, by rotating the first shaft and the third shaft separately, and acquiring movement information of the target marker during rotation, respectively, accurate determination of the direction of the central axis of the first shaft and the direction of the central axis of the third shaft can be achieved, and thus accurate determination of the second angle can be further achieved.
Therefore, the scheme provided by the application achieves the purpose of zero calibration of the surgical robot through angle calculation and axial movement, thereby realizing the technical effect of improving the zero calibration efficiency, and further solving the technical problem of low zero calibration efficiency caused by the fact that the zero calibration of the surgical robot depends on an external calibration block in the related technology.
Example 2
According to an embodiment of the present invention, there is provided an embodiment of a zero calibration device of a surgical robot, wherein fig. 7 is a schematic view of an alternative zero calibration device of a surgical robot according to an embodiment of the present invention, as shown in fig. 7, the device includes:
The first determining module 701 is configured to determine a first rotation angle of the first shaft according to an angle between the central axis of the second shaft and the reference vector, and perform zero calibration on the first shaft according to the first rotation angle;
The second determining module 702 is configured to determine a third rotation angle of the third shaft according to an angle between a normal vector of the target plane of the target object and the reference vector, and perform zero calibration on the third shaft according to the third rotation angle, where the target object is rigidly connected to the third shaft;
a third determining module 703, configured to determine a second rotation angle of the second shaft according to an angle between the central axis of the first shaft and the central axis of the third shaft, and perform zero calibration on the second shaft according to the second rotation angle;
And a fourth determining module 704, configured to determine that the surgical robot completes the zero calibration if the first axis, the second axis, and the third axis complete the zero calibration.
It should be noted that the first determining module 701, the second determining module 702, the third determining module 703 and the fourth determining module 704 correspond to steps S101 to S104 in the above embodiment, and the four modules are the same as examples and application scenarios implemented by the corresponding steps, but are not limited to those disclosed in the above embodiment 1.
Optionally, the zero calibration device of the surgical robot further includes: the first acquisition module is used for acquiring point cloud data of the base plane by adopting a visual camera; the fifth determining module is used for processing the point cloud data of the base plane according to a plane fitting algorithm and determining three-dimensional information of the base plane; and the sixth determining module is used for determining the normal vector of the base plane according to the three-dimensional information of the base plane and determining the normal vector of the base plane as a reference vector.
Optionally, the first determining module 701 further includes: the first calculating sub-module is used for calculating the included angle between the central axis of the second shaft and the reference vector to obtain a first angle; the first updating sub-module is used for updating the value of the first initial angle to the value of the current first angle to obtain an updated first initial angle under the condition that the current first angle is smaller than or equal to a preset first initial angle; the first processing sub-module is used for determining a first rotation angle according to a current first angle and controlling the first shaft to rotate along a first direction according to the first rotation angle, wherein the first rotation angle is smaller than the current first angle, and the first direction is a direction in which the current first angle has a trend of becoming smaller in the rotation process of the first shaft; and the first determining submodule is used for recalculating the first angle after the first shaft rotates, and repeatedly executing the steps of updating the first initial angle and determining a new first rotation angle under the condition that the current first angle is smaller than or equal to the current first initial angle until the current first angle is larger than the current first initial angle, rotating the first shaft to the position after the last rotation, and determining that the first shaft completes zero point calibration after the first shaft rotates.
Optionally, the first computing sub-module further includes: the first acquisition unit is used for controlling the second shaft to rotate, and acquiring point cloud data of the target marker by using the visual camera in the rotation process of the second shaft to obtain first point cloud data; the first determining unit is used for processing the first point cloud data according to a plane fitting algorithm and determining three-dimensional information of a first plane formed by the target marker in the rotating process; a second determining unit configured to determine a normal vector of the first plane according to the three-dimensional information of the first plane, where the normal vector of the first plane is parallel to a central axis of the second axis; and a third determining unit, configured to determine the size of an included angle between the normal vector of the first plane and the reference vector as the first angle.
Optionally, the second determining module 702 further includes: the second calculation sub-module is used for calculating the included angle between the normal vector of the target plane of the target object and the reference vector to obtain a third angle; the second updating sub-module is used for updating the value of the third initial angle to the value of the current third angle to obtain an updated third initial angle under the condition that the current third angle is smaller than or equal to a preset third initial angle; the second processing sub-module is used for determining a third rotation angle according to the current third angle and controlling the third shaft to rotate along a third direction according to the third rotation angle, wherein the third rotation angle is smaller than the current third angle, and the third direction is a direction which enables the current third angle to have a smaller trend in the rotation process of the third shaft; and the second determining submodule is used for recalculating the third angle after the third shaft rotates, and repeatedly executing the steps of updating the third initial angle and determining a new third rotation angle under the condition that the current third angle is smaller than or equal to the current third initial angle until the current third angle is larger than the current third initial angle, rotating the third shaft to the position after the last rotation, and determining that the third shaft finishes zero calibration after the third shaft rotates.
Optionally, the zero calibration device of the surgical robot further includes: the second acquisition module is used for acquiring point cloud data of a target plane of the target object by adopting a visual camera; the seventh determining module is used for processing the point cloud data of the target plane according to a plane fitting algorithm and determining three-dimensional information of the target plane; and the eighth determining module is used for determining the normal vector of the target plane according to the three-dimensional information of the target plane.
Optionally, the third determining module 703 further includes: the third calculation sub-module is used for calculating the included angle between the central axis of the first shaft and the central axis of the third shaft to obtain a second angle; the third updating sub-module is used for updating the value of the second initial angle to the value of the current second angle to obtain an updated second initial angle under the condition that the current second angle is smaller than or equal to a preset second initial angle; the third processing sub-module is used for determining a second rotation angle according to the current second angle and controlling the second shaft to rotate along a second direction according to the second rotation angle, wherein the second rotation angle is smaller than the current second angle, and the second direction is a direction in which the current second angle has a trend of becoming smaller in the rotation process of the second shaft; and the third determining submodule is used for recalculating the second angle after the second shaft rotates, and repeatedly executing the steps of updating the second initial angle and determining a new second rotation angle under the condition that the current second angle is smaller than or equal to the current second initial angle until the current second angle is larger than the current second initial angle, rotating the second shaft to the position after the last rotation, and determining that the second shaft completes zero calibration after the second shaft rotates.
Optionally, the third calculation sub-module further includes: the second acquisition unit is used for controlling the rotation of the target shaft by taking the first shaft or the third shaft as the target shaft, and acquiring the point cloud data of the target marker by using the vision camera in the rotation process of the target shaft to obtain second point cloud data; the fourth determining unit is used for processing the second point cloud data according to a plane fitting algorithm and determining the three-dimensional information of a second plane formed by the target marker in the rotating process; a fifth determining unit configured to determine a normal vector of the second plane according to the three-dimensional information of the second plane, wherein the normal vector is parallel to a central axis of the target shaft; and a sixth determining unit, configured to determine, as the second angle, an angle between a normal vector of the second plane corresponding to the first axis and a normal vector of the second plane corresponding to the third axis.
Example 3
According to another aspect of the embodiments of the present invention, there is also provided a computer readable storage medium having a computer program stored therein, wherein the computer program is configured to perform the above-described zero calibration method of a surgical robot when run.
Example 4
According to another aspect of an embodiment of the present invention, there is also provided an electronic device, wherein fig. 8 is a schematic diagram of an alternative electronic device according to an embodiment of the present invention, as shown in fig. 8, the electronic device including one or more processors; and a memory for storing one or more programs which, when executed by the one or more processors, cause the one or more processors to implement a method for operating the program, wherein the program is configured to perform the zero calibration method of the surgical robot described above when operated.
The foregoing embodiment numbers of the present invention are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
In the foregoing embodiments of the present invention, the descriptions of the embodiments are emphasized, and for a portion of this disclosure that is not described in detail in this embodiment, reference is made to the related descriptions of other embodiments.
In the several embodiments provided in the present application, it should be understood that the disclosed technology may be implemented in other manners. The above-described embodiments of the apparatus are merely exemplary, and the division of units may be a logic function division, and there may be another division manner in actual implementation, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be through some interfaces, units or modules, or may be in electrical or other forms.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed over a plurality of units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in essence or a part contributing to the prior art or all or part of the technical solution in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method of the various embodiments of the present invention. And the aforementioned storage medium includes: a usb disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a removable hard disk, a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The foregoing is merely a preferred embodiment of the present invention and it should be noted that modifications and adaptations to those skilled in the art may be made without departing from the principles of the present invention, which are intended to be comprehended within the scope of the present invention.

Claims (11)

1. A zero point calibration method of a surgical robot, wherein the surgical robot is a three-axis robot, the surgical robot includes a first axis, a second axis, and a third axis connected in sequence, the method comprising:
determining a first rotation angle of the first shaft according to the included angle between the central axis of the second shaft and the reference vector, and performing zero calibration on the first shaft according to the first rotation angle;
Determining a third rotation angle of the third shaft according to the included angle between the normal vector of the target plane of the target object and the reference vector, and performing zero calibration on the third shaft according to the third rotation angle, wherein the target object is rigidly connected with the third shaft;
determining a second rotation angle of the second shaft according to the included angle between the central axis of the first shaft and the central axis of the third shaft, and performing zero calibration on the second shaft according to the second rotation angle;
And under the condition that the first shaft, the second shaft and the third shaft finish zero point calibration, determining that the surgical robot finishes zero point calibration.
2. The method of claim 1, wherein the surgical robot further comprises a base, wherein the reference vector is determined by:
acquiring point cloud data of a base plane by adopting a visual camera;
Processing the point cloud data of the base plane according to a plane fitting algorithm, and determining three-dimensional information of the base plane;
And determining a normal vector of the base plane according to the three-dimensional information of the base plane, and determining the normal vector of the base plane as the reference vector.
3. The method according to claim 1 or 2, wherein determining a first rotation angle of the first shaft according to an angle between a central axis of the second shaft and a reference vector, and performing zero calibration on the first shaft according to the first rotation angle, comprises:
Calculating the included angle between the central axis of the second shaft and the reference vector to obtain a first angle;
Updating the value of the first initial angle to be the value of the current first angle under the condition that the current first angle is smaller than or equal to a preset first initial angle, and obtaining an updated first initial angle;
Determining a first rotation angle according to the current first angle, and controlling the first shaft to rotate along a first direction according to the first rotation angle, wherein the first rotation angle is smaller than the current first angle, and the first direction is a direction in which the current first angle has a trend of becoming smaller in the rotation process of the first shaft;
And recalculating the first angle after the first shaft rotates, and repeatedly executing the steps of updating the first initial angle and determining a new first rotation angle under the condition that the current first angle is smaller than or equal to the current first initial angle until the current first angle is larger than the current first initial angle, rotating the first shaft to a position after the last rotation, and determining that the first shaft completes zero point calibration after the first shaft rotates.
4. A method according to claim 3, wherein a target marker is provided on the surgical robot, the target marker changing position following rotation of the second shaft, wherein calculating the magnitude of the angle between the central axis of the second shaft and the reference vector, results in a first angle, comprising:
controlling the second shaft to rotate, and acquiring point cloud data of the target marker by using a visual camera in the rotation process of the second shaft to obtain first point cloud data;
Processing the first point cloud data according to a plane fitting algorithm, and determining three-dimensional information of a first plane formed by the target marker in the rotating process;
determining a normal vector of the first plane according to the three-dimensional information of the first plane, wherein the normal vector of the first plane is parallel to the central axis of the second axis;
And determining the size of an included angle between the normal vector of the first plane and the reference vector as the first angle.
5. The method according to claim 1 or 2, wherein determining a third rotation angle of the third shaft according to an angle between a normal vector of a target plane of the target object and the reference vector, and performing zero calibration on the third shaft according to the third rotation angle, comprises:
calculating the included angle between the normal vector of the target plane of the target object and the reference vector to obtain a third angle;
updating the value of the third initial angle to be the value of the current third angle under the condition that the current third angle is smaller than or equal to a preset third initial angle, and obtaining an updated third initial angle;
Determining a third rotation angle according to the current third angle, and controlling the third shaft to rotate along a third direction according to the third rotation angle, wherein the third rotation angle is smaller than the current third angle, and the third direction is a direction in which the current third angle has a smaller trend in the rotation process of the third shaft;
And re-calculating the third angle after the third shaft rotates, and repeatedly executing the steps of updating the third initial angle and determining a new third rotation angle under the condition that the current third angle is smaller than or equal to the current third initial angle until the current third angle is larger than the current third initial angle, rotating the third shaft to the position after the last rotation, and determining that the third shaft finishes zero calibration after the third shaft rotates.
6. The method of claim 5, wherein the normal vector to the target plane of the target object is determined by:
Acquiring point cloud data of a target plane of the target object by adopting a visual camera;
Processing the point cloud data of the target plane according to a plane fitting algorithm, and determining three-dimensional information of the target plane;
And determining the normal vector of the target plane according to the three-dimensional information of the target plane.
7. The method according to claim 1 or 2, wherein determining a second rotation angle of the second shaft according to an angle between the central axis of the first shaft and the central axis of the third shaft, and performing zero calibration on the second shaft according to the second rotation angle, comprises:
Calculating the included angle between the central axis of the first shaft and the central axis of the third shaft to obtain a second angle;
updating the value of the second initial angle to be the value of the current second angle under the condition that the current second angle is smaller than or equal to a preset second initial angle, so as to obtain an updated second initial angle;
Determining a second rotation angle according to the current second angle, and controlling the second shaft to rotate along a second direction according to the second rotation angle, wherein the second rotation angle is smaller than the current second angle, and the second direction is a direction in which the current second angle has a trend of becoming smaller in the rotation process of the second shaft;
And re-calculating the second angle after the second shaft rotates, and repeatedly executing the steps of updating the second initial angle and determining a new second rotation angle under the condition that the current second angle is smaller than or equal to the current second initial angle until the current second angle is larger than the current second initial angle, rotating the second shaft to the position after the last rotation, and determining that the second shaft completes zero calibration after the second shaft rotates.
8. The method of claim 7, wherein the surgical robot has a target marker disposed thereon that changes position following rotation of the first shaft, the second shaft, and the third shaft, respectively, wherein calculating the magnitude of the included angle between the central axis of the first shaft and the central axis of the third shaft, and obtaining the second angle, comprises:
The first shaft or the third shaft is used as a target shaft, the rotation of the target shaft is controlled, and in the rotation process of the target shaft, point cloud data of the target marker are collected by using a vision camera, so that second point cloud data are obtained;
Processing the second point cloud data according to a plane fitting algorithm, and determining three-dimensional information of a second plane formed by the target marker in the rotating process;
determining a normal vector of the second plane according to the three-dimensional information of the second plane, wherein the normal vector is parallel to the central axis of the target shaft;
And determining the size of an included angle between the normal vector of the second plane corresponding to the first axis and the normal vector of the second plane corresponding to the third axis as the second angle.
9. The utility model provides a zero point calibration device of surgical robot, its characterized in that, surgical robot is triaxial robot, surgical robot includes first axle, second axle and the third axle that connects gradually, the device includes:
the first determining module is used for determining a first rotation angle of the first shaft according to the included angle between the central axis of the second shaft and the reference vector, and performing zero calibration on the first shaft according to the first rotation angle;
The second determining module is used for determining a third rotation angle of the third shaft according to the included angle between the normal vector of the target plane of the target object and the reference vector, and performing zero calibration on the third shaft according to the third rotation angle, wherein the target object is rigidly connected with the third shaft;
The third determining module is used for determining a second rotation angle of the second shaft according to the included angle between the central axis of the first shaft and the central axis of the third shaft, and performing zero calibration on the second shaft according to the second rotation angle;
and the fourth determining module is used for determining that the surgical robot finishes zero point calibration under the condition that the first shaft, the second shaft and the third shaft finish zero point calibration.
10. A computer readable storage medium, characterized in that the computer readable storage medium has stored therein a computer program, wherein the computer program is arranged to perform the zero calibration method of the surgical robot according to any one of claims 1 to 8 at run-time.
11. An electronic device, the electronic device comprising one or more processors; a memory for storing one or more programs that, when executed by the one or more processors, cause the one or more processors to implement a method for operating a program, wherein the program is configured to perform the zero calibration method of the surgical robot of any one of claims 1 to 8 when operated.
CN202410384909.5A 2024-03-29 2024-03-29 Zero point calibration method and device of surgical robot, storage medium and electronic equipment Pending CN117958983A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410384909.5A CN117958983A (en) 2024-03-29 2024-03-29 Zero point calibration method and device of surgical robot, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410384909.5A CN117958983A (en) 2024-03-29 2024-03-29 Zero point calibration method and device of surgical robot, storage medium and electronic equipment

Publications (1)

Publication Number Publication Date
CN117958983A true CN117958983A (en) 2024-05-03

Family

ID=90856647

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410384909.5A Pending CN117958983A (en) 2024-03-29 2024-03-29 Zero point calibration method and device of surgical robot, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN117958983A (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200261161A1 (en) * 2018-07-20 2020-08-20 Brainlab Ag Method for automatic detection of instrument orientation for robotic surgery
CN113768640A (en) * 2021-11-09 2021-12-10 极限人工智能有限公司 Method and device for determining working pose of mechanical arm
CN114041875A (en) * 2021-11-24 2022-02-15 电子科技大学 Integrated operation positioning navigation system
CN114631889A (en) * 2022-01-21 2022-06-17 天津市天津医院 Long tubular bone fracture parallel six-axis robot reduction navigation system and method thereof
CN115349956A (en) * 2022-08-26 2022-11-18 上海微创医疗机器人(集团)股份有限公司 Mechanical arm structure, control method and robot system
CN115670660A (en) * 2022-11-07 2023-02-03 杭州柳叶刀机器人有限公司 Calibration method, calibration device, surgical robot, electronic device and storage medium
CN116942314A (en) * 2023-07-19 2023-10-27 杭州湖西云百生科技有限公司 Positioning method and system for mixing optical positioning and mechanical positioning
CN117100435A (en) * 2023-09-28 2023-11-24 山东科技大学 Oral surgery robot drilling method based on implantation guide plate

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200261161A1 (en) * 2018-07-20 2020-08-20 Brainlab Ag Method for automatic detection of instrument orientation for robotic surgery
CN113768640A (en) * 2021-11-09 2021-12-10 极限人工智能有限公司 Method and device for determining working pose of mechanical arm
CN114041875A (en) * 2021-11-24 2022-02-15 电子科技大学 Integrated operation positioning navigation system
CN114631889A (en) * 2022-01-21 2022-06-17 天津市天津医院 Long tubular bone fracture parallel six-axis robot reduction navigation system and method thereof
CN115349956A (en) * 2022-08-26 2022-11-18 上海微创医疗机器人(集团)股份有限公司 Mechanical arm structure, control method and robot system
CN115670660A (en) * 2022-11-07 2023-02-03 杭州柳叶刀机器人有限公司 Calibration method, calibration device, surgical robot, electronic device and storage medium
CN116942314A (en) * 2023-07-19 2023-10-27 杭州湖西云百生科技有限公司 Positioning method and system for mixing optical positioning and mechanical positioning
CN117100435A (en) * 2023-09-28 2023-11-24 山东科技大学 Oral surgery robot drilling method based on implantation guide plate

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
布鲁诺·西西利亚诺: "机器人手册 第1卷 机器人基础 原书第2版", 30 September 2022, 机械工业出版社, pages: 25 - 28 *
樊泽明: "机器人学基础", 31 January 2022, 机械工业出版社, pages: 28 - 53 *

Similar Documents

Publication Publication Date Title
CN107995885B (en) Coordinate system calibration method, system and device
CN107738254B (en) Conversion calibration method and system for mechanical arm coordinate system
JP6570957B2 (en) Geometric error identification method for mechanical structure, numerical control method using the geometric error identification method, numerical control apparatus, and machining center
CN112692828B (en) Robot calibration method, system, device and storage medium
CN113211445B (en) Robot parameter calibration method, device, equipment and storage medium
JP2017061012A (en) Machine tool geometrical error identification method and geometrical error identification program
Liu et al. Identification of position independent geometric errors of rotary axes for five-axis machine tools with structural restrictions
CN111780698B (en) Calibration method of workpiece coordinate system and related device
US11554494B2 (en) Device for acquiring a position and orientation of an end effector of a robot
JP3349652B2 (en) Offline teaching method
CN116277035B (en) Robot control method and device, processor and electronic equipment
CN112907683A (en) Camera calibration method and device for dispensing platform and related equipment
JP5778649B2 (en) Translation and rotation error correction amount creation device
CN112631200A (en) Machine tool axis measuring method and device
JPH10301609A (en) Position error detection method for robot and device therefor
CN117958983A (en) Zero point calibration method and device of surgical robot, storage medium and electronic equipment
KR20160007791A (en) Calibration Method of Robot for Interventional treatment
CN111604904A (en) Robot positioning calibration method and device and electronic equipment
CN116175569A (en) Method for determining relation model of hand-eye matrix, hand-eye calibration method and equipment
CN111376261A (en) Robot calibration method
CN108592838B (en) Calibration method and device of tool coordinate system and computer storage medium
US11487268B2 (en) Method of calibrating a machine having at least two rotation axes
JP6628170B1 (en) Measurement system and measurement method
CN109916352B (en) Method and device for acquiring TCP (Transmission control protocol) coordinates of robot
CN112258578A (en) Coordinate origin measuring method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination