Robot kinematics calibration method and device and electronic equipment
By establishing a measurement coordinate system in the robot's workspace and determining the absolute position of the calibration position point using distance sensors and encoders, high-accuracy calibration of robot kinematic calibration is achieved, and data incompleteness and computational complexity in the prior art are solved. The problem.
Patent Information
- Application Number
- CN202411604401.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-12
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2044-11-12
AI Technical Summary
In the existing kinematic calibration methods of robots, the implementation method based on the wire-pull displacement sensor has the problem of incomplete data, which affects the identification accuracy of the robot structural parameters, and the sensor installation accuracy requirements are high and the calculation complexity is high.
Establish a measurement coordinate system in the robot workspace, use distance sensors and vertically arranged encoders to determine the absolute position of the calibration position point, and realize the calibration and measurement coordinate system of the kinematic calibration model and the robot base coordinate system through multiple calibration position points. The transformation relationship between the two is calibrated.
It improves the accuracy of robot kinematic calibration, simplifies the model, reduces the computational complexity, and avoids the problems caused by multiple coordinate system transformation.
Smart Images

Figure CN119115964A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of control technology, and in particular to a robot kinematics calibration method, device and electronic equipment. Background Art
[0002] In order to ensure that the robot can accurately perform various tasks, it is often necessary to perform robot kinematic calibration to correct errors caused by installation and use. Therefore, robot kinematic calibration is a necessary process to ensure that the robot works accurately and reliably according to the design intent, which is of great significance to improving production efficiency and product quality.
[0003] Among the existing kinematic calibration methods, laser trackers and three-coordinate measuring machines are mainly used for implementation. Laser trackers have high precision, wide measurement range, and are relatively easy to use, but they are very expensive, and the dynamic measurement process has some speed restrictions, and it is easy to have light interruption and other phenomena. The three-coordinate measuring machine is a high-efficiency, high-precision measuring device based on precision machinery, but it occupies a large space and is expensive. In contrast, the wire displacement sensor is a measuring device that has the advantages of high precision, low cost, easy operation, simple installation, and a wide measurement range.
[0004] At present, the implementation method of kinematic calibration based on the wire displacement sensor is usually to determine the direction vector and distance corresponding to each position of the robot, and then calculate the relative distance between the two positions of the robot, and combine it with the robot's kinematic equation to realize the calibration of the robot. This method may lead to incomplete data due to the use of indirect measurement, thus affecting the identification accuracy of the robot's structural parameters. In addition, there are also strict requirements for the position of each sensor, which puts high requirements on the sensor installation accuracy, and the error may affect the calibration results.
[0005] In addition, there is also a method of combining a single sensor with multiple inclinometers in the prior art, but this method has high requirements on the interconnection, relative movement and installation accuracy of the sensor and the inclinometer. In addition, multiple coordinate systems are involved in the measurement process, and the conversion of multiple coordinate systems increases the computational complexity. Summary of the invention
[0006] The purpose of the embodiments of the present invention is to provide a robot kinematics calibration method, device and electronic equipment to achieve high-accuracy robot kinematics calibration.
[0007] In a first aspect, the present invention provides a robot kinematics calibration method, the method comprising: A measurement coordinate system is established in the workspace where the robot is located, wherein a distance sensor is arranged at the origin of the measurement coordinate system, and encoders are respectively arranged on a first coordinate axis and a second coordinate axis perpendicular to each other of the measurement coordinate system; Moving the robot to a plurality of calibrated positions by teaching; For each of the calibrated position points, based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each of the encoders, determine the absolute position of the calibrated position point in the measurement coordinate system; Based on the absolute positions of the multiple calibration position points, the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system are achieved.
[0008] In an optional embodiment, the step of calibrating the kinematic calibration model and the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the absolute positions of the multiple calibration position points includes: Obtaining the position of the calibration point in the robot base coordinate system; determining a position error based on an absolute position of the robot and a position in a base coordinate system of the robot; Based on the position errors respectively corresponding to the plurality of calibration position points, the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system are achieved.
[0009] In an optional embodiment, the step of determining the absolute position of the calibrated position point in the measurement coordinate system based on the distance between the robot and the distance sensor detected by the distance sensor and the rotation angle of the robot relative to the corresponding coordinate axis detected by each encoder includes: Based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each encoder, a homogeneous transformation matrix between the measurement coordinate system and the robot end coordinate system is established; The absolute position of the calibrated position point in the measurement coordinate system is obtained based on the homogeneous transformation matrix.
[0010] In an optional embodiment, the step of obtaining the position of the calibrated position point in the robot base coordinate system includes: Constructing a transformation relationship between adjacent joints of the robot at the calibration position based on structural parameters in a kinematic calibration model; Obtaining a total transformation matrix based on a transformation relationship between a plurality of adjacent joints of the robot; The position of the calibration point in the robot base coordinate system is determined according to the total transformation matrix.
[0011] In an optional embodiment, the step of determining the position error based on the absolute position of the robot and the position in the robot base coordinate system comprises: Converting the absolute position of the calibrated position point in the measurement coordinate system into a converted position in the robot base coordinate system; A position error is determined based on the position in the robot base coordinate system and the transformed position.
[0012] In an optional embodiment, the step of calibrating the kinematic calibration model and the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the position errors respectively corresponding to the plurality of calibration position points comprises: Based on the position errors respectively corresponding to the plurality of calibration position points, the error values of the structural parameters in the kinematic calibration model and the error value of the transformation relationship between the measurement coordinate system and the robot base coordinate system are obtained.
[0013] In an optional embodiment, the step of obtaining the error values of each structural parameter in the kinematic calibration model and the error value of the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the position errors respectively corresponding to the plurality of calibration position points comprises: Based on the position errors respectively corresponding to the plurality of calibration position points, the original values of the structural parameters in the kinematic calibration model, and the original values of the transformation relationship between the measurement coordinate system and the robot base coordinate system, a nonlinear equation group about the error values of the structural parameters and the error values of the transformation relationship is constructed; The nonlinear equation group is optimized and solved to obtain the error value of each structural parameter and the error value of the transformation relationship.
[0014] In an optional embodiment, the original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system is obtained by: For each of the calibrated position points, obtaining a rotation angle and a translation amount of the robot at the calibrated position point relative to each coordinate axis of the robot base coordinate system; An original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system is obtained based on the rotation angle and the translation amount.
[0015] In a second aspect, the present invention provides a robot kinematics calibration device, the device comprising: An establishing module, used for establishing a measuring coordinate system in the workspace where the robot is located, wherein a distance sensor is arranged at the origin of the measuring coordinate system, and encoders are arranged on a first coordinate axis and a second coordinate axis perpendicular to each other of the measuring coordinate system respectively; A teaching module, used for moving the robot to a plurality of calibrated position points by teaching; a determination module, configured to determine, for each of the calibrated position points, an absolute position of the calibrated position point in the measurement coordinate system based on the distance between the robot and the distance sensor detected by the distance sensor and the rotation angle of the robot relative to the corresponding coordinate axis detected by each of the encoders; The calibration module is used to calibrate the kinematic calibration model and the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the absolute positions of the multiple calibration position points.
[0016] In a third aspect, the present invention provides an electronic device, comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, and when the processor executes the computer program, the steps of the method described in any one of the aforementioned implementation modes are implemented.
[0017] The beneficial effects of the embodiments of the present invention include, for example: The present invention provides a robot kinematic calibration method, device and electronic device. A measurement coordinate system is established in a workspace where a robot is located. The origin of the measurement coordinate system is provided with a position where a distance sensor is located, and encoders are respectively provided on mutually perpendicular first and second coordinate axes. The robot is moved to a plurality of calibration positions by teaching. Based on the distance between the robot and the distance sensor detected by the distance sensor and the rotation angle of the robot relative to the corresponding coordinate axis detected by each encoder, the absolute position of the calibration position in the measurement coordinate system is determined. Based on the absolute positions of the plurality of calibration position points, the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system are realized. The scheme adopts a distance sensor for distance measurement and two vertically arranged encoders for rotation angle measurement, and can realize three-dimensional position measurement of any point in space. By measuring the absolute position of each calibration position point for kinematic calibration, a better calibration result can be obtained, and the model is simple. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments of the present invention are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0019] Figure 1 A flowchart of a robot kinematics calibration method provided by an embodiment of the present invention; Figure 2 A schematic diagram of a measurement coordinate system provided by an embodiment of the present invention; Figure 3 for Figure 1 A flowchart of the sub-steps included in S13; Figure 4 for Figure 1 A flowchart of the sub-steps included in S14; Figure 5 for Figure 4 A flowchart of the sub-steps included in S141; Figure 6 for Figure 4 A flowchart of the sub-steps included in S142; Figure 7 for Figure 4 A flowchart of the sub-steps included in S143; Figure 8 A functional module block diagram of a robot kinematics calibration device provided by an embodiment of the present invention; Fig. 9 This is a structural block diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0020] The technical solutions in the embodiments of the present invention will be described below in conjunction with the accompanying drawings in the embodiments of the present invention.
[0021] See also Figure 1 , is a flow chart of a robot kinematic calibration method provided by an embodiment of the present invention, the robot kinematic calibration method can be executed by a robot kinematic calibration device, the robot kinematic calibration device can be implemented by software and / or hardware, and can be configured in an electronic device, the electronic device can be a computer device, a server, a programmable logic controller, etc. The detailed steps of the robot kinematic calibration method are described as follows.
[0022] S11, establishing a measurement coordinate system in the workspace where the robot is located, wherein a distance sensor is arranged at the origin of the measurement coordinate system, and encoders are respectively arranged on a first coordinate axis and a second coordinate axis perpendicular to each other of the measurement coordinate system.
[0023] S12, moving the robot to a plurality of calibrated position points by teaching.
[0024] S13, for each of the calibrated position points, based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each of the encoders, determine the absolute position of the calibrated position point in the measurement coordinate system.
[0025] S14, based on the absolute positions of the multiple calibration position points, realize the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system.
[0026] In this embodiment, Figure 2 The figure shows a schematic diagram of the established measurement coordinate system, in which two perpendicular intersecting axes are constructed in the workspace where the robot is located, and the axes of the two axes coincide with the first coordinate axis and the second coordinate axis respectively, wherein the first coordinate axis and the second coordinate axis can be the X axis and the Z axis respectively, and the Y axis is determined according to the right-hand rule. The origin of the measurement coordinate system is the position point where the distance sensor is located, and encoders are respectively arranged on the X axis and the Z axis.
[0027] Among them, the distance sensor can be a wire sensor, which can measure the distance between itself and the robot, and the encoder can measure the rotation angle of the robot in the workspace relative to the X-axis and Z-axis.
[0028] The robot is moved to multiple calibration positions by teaching, wherein the selected calibration positions can be evenly distributed in the robot's workspace as much as possible, and the robot can be controlled to be in a variety of different positions. In this way, the diversity of the data used for calibration can be increased, and the accuracy of calibration can be guaranteed.
[0029] For each calibration position point, the distance sensor can obtain the distance between itself and the robot at the calibration position point, and the two encoders can obtain the rotation angle of the robot relative to the X axis and Z axis respectively. In this way, by measuring the transformation relationship between the coordinate system and the robot end coordinate system, the absolute position of the calibration position point in the measurement coordinate system represented by the distance and the two rotation angles can be obtained.
[0030] The calibration of the kinematic calibration model mainly involves the calibration of the structural parameters in the kinematic calibration model. The structural parameters in the kinematic calibration model can be obtained, that is, they are known, but they may change due to errors in installation or long-term use of the robot. Therefore, it is necessary to calibrate the structural parameters in the kinematic calibration model in order to eliminate the influence of errors on control.
[0031] Similarly, the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system is also to avoid the influence of errors in the measurement results in the robot base coordinate system.
[0032] In this embodiment, based on the absolute positions of the plurality of calibration position points obtained, the kinematic calibration model is calibrated and the transformation relationship between the measurement coordinate system and the robot base coordinate system is calibrated.
[0033] In this solution, a distance sensor is used for distance measurement, and two vertically arranged encoders are used to measure the rotation angle, which can achieve the three-dimensional position measurement of any point in space. By measuring the absolute position of each calibration position point for kinematic calibration, a better calibration result can be obtained, and the model is simple.
[0034] See also Figure 3 In this embodiment, the step of determining the absolute position of the calibration point in the measurement coordinate system based on the detected distance and rotation angle can be implemented in the following manner: S131, establishing a homogeneous transformation matrix between the measurement coordinate system and the robot end coordinate system based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each encoder.
[0035] S132: Obtain the absolute position of the calibration point in the measurement coordinate system based on the homogeneous transformation matrix.
[0036] In this embodiment, the measurement coordinate system is denoted as [M], the robot end coordinate system is denoted as [P], the distance detected by the distance sensor is denoted as L, the rotation angle of the robot around the X-axis detected by the encoder is β, and the rotation angle around the Z-axis is γ.
[0037] Based on the detected distance L, rotation angles β and γ, the homogeneous transformation matrix between the measurement coordinate system and the robot end coordinate system can be established :
[0038] Extract the above homogeneous transformation matrix The first three rows of the fourth column in are the absolute positions of the calibration points in the measurement coordinate system, recorded as .
[0039] Based on multiple calibration points, the absolute position of each calibration point in the measurement coordinate system can be obtained. Figure 4 , the steps of implementing calibration based on the absolute positions of multiple calibration position points can be implemented in the following ways: S141, obtaining the position of the calibration point in the robot base coordinate system.
[0040] S142, determining a position error based on the absolute position of the robot and the position in the robot base coordinate system.
[0041] S143, based on the position errors respectively corresponding to the plurality of calibration position points, realize the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system.
[0042] See also Figure 5 In this embodiment, the step of obtaining the position of the calibration point in the robot base coordinate system can be achieved by: S1411, constructing a transformation relationship between adjacent joints of the robot at the calibration position points based on the structural parameters in the kinematic calibration model.
[0043] S1412, obtaining a total transformation matrix based on the transformation relationship between multiple adjacent joints of the robot.
[0044] S1413: Determine the position of the calibration point in the robot base coordinate system according to the total transformation matrix.
[0045] In this embodiment, the structural parameters of the robot, i.e., the structural parameters, are kinematically modeled in the following manner. Four parameters are defined in the kinematic model to describe the relationship between two adjacent joints of the robot. The structural parameters include , , , , where i represents the degree of freedom and the value of i ranges from 1 to 6. represents the distance from joint i to i+1 in the x-axis direction, represents the rotation angle of the z-axis from joint i to joint i+1, represents the vertical distance from the z-axis of joint i to the x-axis of joint i+1, Represents the rotation angle of the x-axis from joint i to joint i+1.
[0046] Based on the above structural parameters, the transformation relationship between adjacent joints of the robot is characterized by the following method:
[0047] In this embodiment, assuming that the robot has six degrees of freedom, the total transformation matrix of the transformation relationship between multiple adjacent joints of the robot is As shown below:
[0048] in:
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
[0060] , , ,
[0061] In this embodiment, the total transformation matrix is taken The elements of the first three rows of the fourth column are the positions of the calibration points in the robot base coordinate system, denoted as .
[0062] After obtaining the absolute position of each calibration point in the measurement coordinate system and the position of each calibration point in the robot base coordinate system, refer to Figure 6 , the step of determining the position error based on the absolute position of the robot and the position in the robot base coordinate system can be achieved in the following way: S1421, converting the absolute position of the calibration position point in the measurement coordinate system into a converted position in the robot base coordinate system.
[0063] S1422, determining a position error based on the position in the robot base coordinate system and the converted position.
[0064] In this embodiment, the homogeneous transformation matrix between the robot base coordinate system [B] and the measurement coordinate system [M] is established in the following manner: :
[0065] in, , and are the rotation angles of the measurement coordinate system around the x, y, and z axes of the robot base coordinate system, , and is the translation of the measurement coordinate system in the x, y, and z axes of the robot base coordinate system. The relevant parameters of the transformation relationship between the measurement coordinate system and the robot base coordinate system can be recorded as .
[0066] The transformation matrix between the robot base coordinate system and the measurement coordinate system is multiplied by the absolute position of the calibration point to obtain the conversion position of the calibration point in the robot base coordinate system. , the calculation formula is as follows:
[0067] The position error can be obtained by subtracting the transformed position from the position of the calibration point in the robot base coordinate system. , the calculation formula is as follows:
[0068] From the above, it can be seen that the calibration of the kinematic calibration model is essentially the calibration of the error values of each structural parameter in the kinematic calibration model, and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system is essentially the calibration of the error values of each parameter in the transformation relationship.
[0069] Therefore, in this embodiment, when the kinematic calibration model is calibrated based on the position errors of multiple calibration position points and the transformation relationship between the measurement coordinate system and the robot base coordinate system is calibrated, it is achieved in the following way: Based on the position errors respectively corresponding to the plurality of calibration position points, the error values of the structural parameters in the kinematic calibration model and the error value of the transformation relationship between the measurement coordinate system and the robot base coordinate system are obtained.
[0070] Among them, what needs to be calibrated is the error value of each structural parameter in the kinematic calibration model, that is, the structural parameter , , , The respective error values can be expressed as , , , In addition, the error values of various parameters in the transformation relationship between the measurement coordinate system and the robot base coordinate system can also be calibrated, that is, , , , , and The respective error values can be expressed as , , , , and .
[0071] See also Figure 7 In this embodiment, the specific implementation method of calibration is as follows: S1431, based on the position errors corresponding to the multiple calibration position points, the original values of the structural parameters in the kinematic calibration model, and the original values of the transformation relationship between the measurement coordinate system and the robot base coordinate system, a nonlinear equation group about the error values of the structural parameters and the error values of the transformation relationship is constructed.
[0072] S1432, optimizing and solving the nonlinear equation group to obtain the error value of each structural parameter and the error value of the transformation relationship.
[0073] In this embodiment, the position error is characterized by the position of the calibration position point in the robot base coordinate system and the absolute position of the calibration position point in the measurement coordinate system converted to the converted position in the robot base coordinate system.
[0074] The position of the calibration position point in the robot base coordinate system is represented by the structural parameters (the original values of the structural parameters) in the kinematic calibration model, and the transformed position of the calibration position point is represented by the absolute position and the homogeneous transformation matrix between the robot base coordinate system and the measurement coordinate system, that is, by the original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system.
[0075] Therefore, the position error can be characterized by the original values of the structural parameters in the kinematic calibration model and the original values of the transformation relationship between the measurement coordinate system and the robot base coordinate system.
[0076] Among them, the original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system is obtained by: For each of the calibrated position points, the rotation angle and translation amount of the robot relative to each coordinate axis of the robot base coordinate system at the calibrated position point are obtained; and based on the rotation angle and translation amount, the original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system is obtained.
[0077] In this embodiment, the original value of the transformation relationship between the obtained measurement coordinate system and the robot base coordinate system is represented as follows: .
[0078] In this embodiment, by fully differentiating the position error and using the total differential equation to approximately replace the kinematic error equation, the robot kinematic error calibration model shown below can be obtained:
[0079] in:
[0080]
[0081] In the above equation, The 30 parameters included in are the error values of the structural parameters to be solved and the error values of the transformation relationship. On the basis of obtaining multiple position errors, a nonlinear equation group can be established based on multiple position errors, and the values corresponding to each position error can be substituted into the nonlinear equation group for optimization and solution. For example, the least squares method can be used for optimization and solution. Finally, The values of each parameter in , that is, the error values of each structural parameter and the error value of the transformation relationship.
[0082] Based on this, when the error values of various structural parameters in the kinematic calibration model are obtained, the error values can be used to correct various structural parameters, thereby avoiding problems that affect the control accuracy during the control process. Similarly, based on the error values of the transformation relationship between the measurement coordinate system and the robot base coordinate system, in the actual application process, the error values can be used to correct various parameters in the transformation relationship between the measurement coordinate system and the robot base coordinate system, thereby avoiding problems that affect the control accuracy.
[0083] The robot kinematics calibration method provided in this embodiment uses a distance sensor to measure the distance and two vertically arranged encoders to measure the rotation angle, which can realize the measurement of the three-dimensional position of any point in space. This solution can achieve a good calibration effect by measuring the absolute position of each calibration position point for kinematic calibration. In addition, the model structure in this solution is simple, and only one measurement coordinate system needs to be established, without the need to establish multiple coordinate systems as in the prior art, thereby avoiding the problem of increased computational complexity caused by multiple coordinate system conversions.
[0084] Based on the same inventive concept, please refer to Figure 8 , showing a schematic diagram of the functional modules of the robot kinematic calibration device provided in an embodiment of the present invention, this embodiment can divide the functional modules of the robot kinematic calibration device according to the above method embodiment. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present invention is schematic, which is only a logical functional division, and there may be other division methods in actual implementation.
[0085] For example, when each functional module is divided into corresponding functional modules, Figure 8 The robot kinematics calibration device shown is only a schematic diagram of the device. The robot kinematics calibration device may include a building module, a teaching module, a determination module and a calibration module. The functions of each functional module of the robot kinematics calibration device are described in detail below.
[0086] An establishing module, used for establishing a measuring coordinate system in the workspace where the robot is located, wherein a distance sensor is arranged at the origin of the measuring coordinate system, and encoders are arranged on a first coordinate axis and a second coordinate axis perpendicular to each other of the measuring coordinate system respectively; It can be understood that the above-mentioned establishment module can be used to execute the above-mentioned S11. The detailed implementation method of the establishment module can refer to the relevant content of the above-mentioned S11.
[0087] A teaching module, used for moving the robot to a plurality of calibrated position points by teaching; It can be understood that the above teaching module can be used to execute the above S12. The detailed implementation of the teaching module can refer to the relevant content of the above S12.
[0088] a determination module, configured to determine, for each of the calibrated position points, an absolute position of the calibrated position point in the measurement coordinate system based on the distance between the robot and the distance sensor detected by the distance sensor and the rotation angle of the robot relative to the corresponding coordinate axis detected by each of the encoders; It can be understood that the above-mentioned determination module can be used to execute the above-mentioned S13. The detailed implementation of the determination module can refer to the relevant content of the above-mentioned S13.
[0089] The calibration module is used to calibrate the kinematic calibration model and the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the absolute positions of the multiple calibration position points.
[0090] It can be understood that the above calibration module can be used to execute the above S14. The detailed implementation of the calibration module can refer to the relevant content of the above S14.
[0091] In a possible implementation, the calibration module may be specifically used for: Obtaining the position of the calibration point in the robot base coordinate system; determining a position error based on an absolute position of the robot and a position in a base coordinate system of the robot; Based on the position errors respectively corresponding to the plurality of calibration position points, the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system are achieved.
[0092] In a possible implementation, the above-mentioned determination module may be used to: Based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each encoder, a homogeneous transformation matrix between the measurement coordinate system and the robot end coordinate system is established; The absolute position of the calibrated position point in the measurement coordinate system is obtained based on the homogeneous transformation matrix.
[0093] In a possible implementation, the above-mentioned determination module can be used to obtain the position of the calibration position point in the robot base coordinate system in the following manner: Constructing a transformation relationship between adjacent joints of the robot at the calibration position based on structural parameters in a kinematic calibration model; Obtaining a total transformation matrix based on a transformation relationship between a plurality of adjacent joints of the robot; The position of the calibration point in the robot base coordinate system is determined according to the total transformation matrix.
[0094] In a possible implementation, the calibration module may be used to determine the position error in the following manner: Converting the absolute position of the calibrated position point in the measurement coordinate system into a converted position in the robot base coordinate system; A position error is determined based on the position in the robot base coordinate system and the transformed position.
[0095] In a possible implementation, the calibration module may be specifically used for: Based on the position errors respectively corresponding to the plurality of calibration position points, the error values of the structural parameters in the kinematic calibration model and the error value of the transformation relationship between the measurement coordinate system and the robot base coordinate system are obtained.
[0096] In a possible implementation, the calibration module may be specifically used for: Based on the position errors respectively corresponding to the plurality of calibration position points, the original values of the structural parameters in the kinematic calibration model, and the original values of the transformation relationship between the measurement coordinate system and the robot base coordinate system, a nonlinear equation group about the error values of the structural parameters and the error values of the transformation relationship is constructed; The nonlinear equation group is optimized and solved to obtain the error value of each structural parameter and the error value of the transformation relationship.
[0097] In a possible implementation, the calibration module may be used to obtain the original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system in the following manner: For each of the calibrated position points, obtaining a rotation angle and a translation amount of the robot at the calibrated position point relative to each coordinate axis of the robot base coordinate system; An original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system is obtained based on the rotation angle and the translation amount.
[0098] Fig. 9 1 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. The electronic device may be a computer device, a server, a notebook computer, etc. Fig. 9 As shown, the electronic device includes one or more processors and a memory; the processor in the electronic device may be one or more, Figure 8 A processor is taken as an example; the memory is used to store one or more programs; the one or more programs are executed by one or more processors, so that the one or more processors implement the robot kinematic calibration method as any one of the embodiments of the present invention.
[0099] The electronic device may further include: an input device and an output device.
[0100] The processor, memory, input device and output device in the electronic device can be connected through a bus or other means. Fig. 9 The example of connecting through bus is taken in the following.
[0101] The memory in the electronic device is a computer-readable storage medium that can be used to store one or more programs, which can be software programs, computer executable programs, and modules, such as program instructions / modules corresponding to the robot kinematics calibration method provided in the embodiment of the present invention. The processor executes various functional applications and data processing of the terminal device by running the software programs, instructions, and modules stored in the memory, that is, implementing the robot kinematics calibration method in the above method embodiment.
[0102] The memory may include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application required for at least one function; the data storage area may store data created according to the use of the device, etc. In addition, the memory may include a high-speed random access memory and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage devices.
[0103] In some examples, the memory may further include a memory remotely located relative to the processor, and these remote memories may be connected to the device via a network. Examples of the above network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0104] The input device can be used to receive input digital or character information and generate key signal input related to user settings and function control of the device. The output device can include display devices such as display screens.
[0105] An embodiment of the present invention provides a computer-readable storage medium having a computer program stored thereon. When the program is executed by a processor, the program can also be used to execute the robot kinematic calibration method provided by any embodiment of the present invention.
[0106] The computer-readable storage medium of the embodiment of the present invention may adopt any combination of one or more computer-readable media. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (Random Access Memory, RAM), a read-only memory (Read Only Memory, ROM), an erasable programmable read-only memory (Erasable Programmable ReadOnly Memory, EPROM), a flash memory, an optical fiber, a portable CD-ROM, an optical storage device, a magnetic storage device, or any suitable combination of the above. The computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, device or device.
[0107] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, which carry computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to: electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0108] The program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, radio frequency (RF), etc., or any suitable combination of the above.
[0109] Computer program code for performing the operations of the present invention may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0110] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims
1. A robot kinematic calibration method, characterized in that: The method comprises: A measurement coordinate system is established in the workspace where the robot is located, wherein a distance sensor is arranged at the origin of the measurement coordinate system, and encoders are respectively arranged on a first coordinate axis and a second coordinate axis perpendicular to each other of the measurement coordinate system; Moving the robot to a plurality of calibrated positions by teaching; For each of the calibrated position points, based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each of the encoders, determine the absolute position of the calibrated position point in the measurement coordinate system; Based on the absolute positions of the multiple calibration position points, the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system are achieved.
2. The robot kinematic calibration method according to claim 1, characterized in that: The step of realizing the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the absolute positions of the multiple calibration position points comprises: Obtaining the position of the calibration point in the robot base coordinate system; determining a position error based on an absolute position of the robot and a position in a base coordinate system of the robot; Based on the position errors respectively corresponding to the plurality of calibration position points, the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system are achieved.
3. The robot kinematic calibration method according to claim 1, characterized in that: The step of determining the absolute position of the calibrated position point in the measurement coordinate system based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each encoder comprises: Based on the distance between the distance sensor and the robot and the rotation angle of the robot relative to the corresponding coordinate axis detected by each encoder, a homogeneous transformation matrix between the measurement coordinate system and the robot end coordinate system is established; The absolute position of the calibrated position point in the measurement coordinate system is obtained based on the homogeneous transformation matrix.
4. The robot kinematic calibration method according to claim 2, characterized in that: The step of obtaining the position of the calibrated position point in the robot base coordinate system comprises: Constructing a transformation relationship between adjacent joints of the robot at the calibration position based on structural parameters in a kinematic calibration model; Obtaining a total transformation matrix based on a transformation relationship between a plurality of adjacent joints of the robot; The position of the calibration point in the robot base coordinate system is determined according to the total transformation matrix.
5. The robot kinematic calibration method according to claim 2, characterized in that: The step of determining the position error based on the absolute position of the robot and the position in the robot base coordinate system comprises: Converting the absolute position of the calibrated position point in the measurement coordinate system into a converted position in the robot base coordinate system; A position error is determined based on the position in the robot base coordinate system and the transformed position.
6. The robot kinematics calibration method according to claim 2, characterized in that: The step of realizing the calibration of the kinematic calibration model and the calibration of the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the position errors respectively corresponding to the plurality of calibration position points comprises: Based on the position errors respectively corresponding to the plurality of calibration position points, the error values of the structural parameters in the kinematic calibration model and the error value of the transformation relationship between the measurement coordinate system and the robot base coordinate system are obtained.
7. The robot kinematic calibration method according to claim 6, characterized in that: The step of obtaining the error values of each structural parameter in the kinematic calibration model and the error value of the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the position errors respectively corresponding to the plurality of calibration position points comprises: Based on the position errors respectively corresponding to the plurality of calibration position points, the original values of the structural parameters in the kinematic calibration model, and the original values of the transformation relationship between the measurement coordinate system and the robot base coordinate system, a nonlinear equation group about the error values of the structural parameters and the error values of the transformation relationship is constructed; The nonlinear equation group is optimized and solved to obtain the error value of each structural parameter and the error value of the transformation relationship.
8. The robot kinematics calibration method according to claim 7, characterized in that: The original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system is obtained by: For each of the calibrated position points, obtaining a rotation angle and a translation amount of the robot at the calibrated position point relative to each coordinate axis of the robot base coordinate system; An original value of the transformation relationship between the measurement coordinate system and the robot base coordinate system is obtained based on the rotation angle and the translation amount.
9. A robot kinematic calibration device, characterized in that: The device comprises: An establishing module, used for establishing a measuring coordinate system in the workspace where the robot is located, wherein a distance sensor is arranged at the origin of the measuring coordinate system, and encoders are arranged on a first coordinate axis and a second coordinate axis perpendicular to each other of the measuring coordinate system respectively; A teaching module, used for moving the robot to a plurality of calibrated position points by teaching; a determination module, configured to determine, for each of the calibrated position points, an absolute position of the calibrated position point in the measurement coordinate system based on the distance between the robot and the distance sensor detected by the distance sensor and the rotation angle of the robot relative to the corresponding coordinate axis detected by each of the encoders; The calibration module is used to calibrate the kinematic calibration model and the transformation relationship between the measurement coordinate system and the robot base coordinate system based on the absolute positions of the multiple calibration position points.
10. An electronic device comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Robot control device, and robot control method
JP2011230238A
Device and method for teaching-procedure calibration for robot
JP2011230243A
Robot system and calibration method of robot system
JP2015182144A
