WO2021169855A1 - 机器人校正方法、装置、计算机设备及存储介质 - Google Patents
机器人校正方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- WO2021169855A1 WO2021169855A1 PCT/CN2021/076987 CN2021076987W WO2021169855A1 WO 2021169855 A1 WO2021169855 A1 WO 2021169855A1 CN 2021076987 W CN2021076987 W CN 2021076987W WO 2021169855 A1 WO2021169855 A1 WO 2021169855A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- point
- target
- offset
- value
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
Definitions
- This application relates to the field of robotics technology, for example, to a robot calibration method, device, computer equipment, and storage medium.
- Industrial robots have the advantages of simple structure, reliable movement, fast movement speed, and high positioning accuracy. They are widely used in the plastics industry, automobile industry, electronic product industry, pharmaceutical industry and food industry.
- the laser tracker is complicated to operate, and the equipment is expensive and heavy.
- the cost is high and the operation is complicated.
- this application provides a robot calibration method, device, computer equipment and storage medium.
- An embodiment of the present application provides a robot calibration method.
- the method includes: sending a first alignment control instruction to the robot, where the first alignment control instruction is used to instruct the robot to align the first target point on the checkerboard; according to the robot's response
- the first alignment control instruction is the first position offset between the first actual point actually aligned and the first target point, which controls the robot to move from the first actual point actually aligned to the first target point, and then After the robot moves to the first target point, obtain the coordinate value of the robot and the angles of the multiple translation axes of the robot; determine the coordinate offset value of the robot according to the coordinate value of the robot and the coordinate value of the first target point; according to the coordinate offset of the robot Calculate the offset value of the target parameter of the robot and correct the target parameter according to the offset value of the target parameter.
- a camera component is provided on the robot, and according to the first position offset between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction, Controlling the robot to move from the first actual point that is actually aligned to the first target point includes: after the robot responds to the first alignment control command, using a camera component to take a picture of the chessboard to obtain an image of the chessboard;
- the first target point is located in the image of the grid, and the point in the center of the image of the checkerboard is regarded as the first actual point; the pixel offset of the first target point and the first actual point in the image of the checkerboard
- the amount is used as the first position offset; according to the first position offset, the robot is controlled to move from the first actual point that is actually aligned to the first target point.
- a camera component is provided on the robot, and according to the first position offset between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction, Controlling the robot to move from the first actual point that is actually aligned to the first target point includes: controlling the robot to move according to the first position offset, and after the robot moves, judging the current actual point the robot is pointing to and the first target Whether the current position offset between the points is greater than the preset offset threshold; when the current position offset between the current actual point pointed by the robot and the first target point is greater than the preset offset threshold, the current The position offset controls the robot to continue to move until the robot is aligned with the first target point.
- the method further includes: sending a second alignment control instruction to the robot, and the second alignment control instruction is used to instruct the robot to The second target point on the quasi-checkerboard; obtain the second position offset between the second actual point and the second target point that the robot actually aligns in response to the second alignment control instruction; when the second position is offset When the amount is less than the preset threshold, it is determined that the correction of the robot is completed.
- calculating the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angles of the multiple translation axes of the robot includes: according to the coordinate offset value of the robot and multiple translations of the robot The angle of the axis constructs an error model equation set, which is used to determine the offset value of the target parameter of the robot; the error model equation set is solved to obtain the offset value of the target parameter of the robot.
- the number of first target points is multiple, and the number of first target points is greater than or equal to a preset multiple of the number of translation axes of the robot.
- the deviation value of the target parameter of the robot includes the deviation value of the arm length deviation value, the angle deviation value and the deceleration ratio correction value of each translation axis of the robot.
- An embodiment of the present application provides a robot calibration device, the device includes: a sending module configured to send a first alignment control instruction to the robot, the first alignment control instruction is used to instruct the robot to align the first target point on the chessboard ;
- the coordinate acquisition module is configured to control the robot to be actually aligned by the first position offset between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction
- the actual point moves to the first target point, and after the robot moves to the first target point, the coordinate values of the robot and the angles of multiple translation axes of the robot are obtained;
- the offset value obtaining module is set to be based on the coordinate value of the robot and the first
- the coordinate value of the target point determines the coordinate offset value of the robot;
- the correction module is set to calculate the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angle of multiple translation axes of the robot, and according to the offset value of the target parameter The shift value corrects the target parameter.
- An embodiment of the application provides a computer device, including a memory and a processor, the memory stores a computer program, and when the computer program is executed by the processor, the following steps are implemented: sending a first alignment control instruction to a robot, and a first alignment
- the control instruction is used to instruct the robot to align with the first target point on the chessboard; according to the first position offset between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction , Control the robot to move from the first actual point that is actually aligned to the first target point, and obtain the coordinate value of the robot and the angle of the multiple translation axes of the robot after the robot moves to the first target point; according to the coordinate value of the robot and The coordinate value of the first target point determines the coordinate offset value of the robot; the offset value of the target parameter of the robot is calculated according to the coordinate offset value of the robot and the angle of multiple translation axes of the robot, and the offset value of the target parameter is adjusted according to the offset value of the target parameter.
- the embodiment of the application provides a computer-readable storage medium that stores a computer program.
- the program is executed by a processor, the following steps are implemented: sending a first alignment control instruction to a robot, and the first alignment control instruction is used to instruct the robot to The first target point on the quasi-checkerboard; according to the first position offset between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction, the robot is controlled to be actually aligned Move the first actual point to the first target point, and obtain the coordinate value of the robot and the angle of the multiple translation axes of the robot after the robot moves to the first target point; according to the coordinate value of the robot and the coordinate value of the first target point Determine the coordinate offset value of the robot; calculate the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angle of multiple translation axes of the robot, and correct the target parameter according to the offset value of the target parameter.
- FIG. 1 is a schematic diagram of an implementation environment of a robot calibration method provided by an embodiment of the application
- FIG. 2 is a flowchart of a robot calibration method provided by an embodiment of the application
- FIG. 3 is a flowchart of a method for a robot to align a first target point on a chessboard grid provided by an embodiment of the application;
- FIG. 4 is a flowchart of another method for aligning a robot to a first target point on a chessboard grid provided by an embodiment of the application;
- FIG. 5 is a flowchart of a method for calculating the offset value of a target parameter of a robot according to an embodiment of the application
- FIG. 6 is a diagram of the connection relationship between adjacent translation axes of a robot provided by an embodiment of the application.
- FIG. 7 is a flowchart of a method for verifying a calibration result of a robot according to an embodiment of the application.
- FIG. 8 is a block diagram of a robot calibration device provided by an embodiment of the application.
- Fig. 9 is a block diagram of a computer device provided by an embodiment of the application.
- the Selective Compliance Assembly Robot Arm (SCARA) robot is an industrial robot.
- the SCARA robot includes a rotation axis and a translation axis.
- the translation axis is set to be positioned and oriented in a plane, and the rotation axis is set to complete the end piece. Movement in perpendicular to the plane.
- the SCARA robot has the advantages of simple structure, reliable movement, fast movement speed, and high positioning accuracy. It is widely used in the plastics industry, automobile industry, electronic product industry, pharmaceutical industry and food industry.
- the zero point of the robot is the coordinate value of the position point corresponding to the end of the robot in the base coordinate system when the multiple translation axes are collinear and coincide with the X axis of the base coordinate system of the robot.
- the base coordinate system is the coordinate system of the robot.
- the arm length of the robot refers to the actual length of each translation axis of the robot, and the reduction ratio of the robot refers to the ratio of the instantaneous input speed to the output speed in the speed reduction mechanism.
- a laser tracker is generally used to collect robot parameters, and then a large number of operations are performed on coordinate equations and calibration equations to perform zero position correction, arm length correction, and reduction ratio correction on the robot.
- the measurement accuracy of this method is relatively high, but the measurement process is cumbersome and the efficiency is not high. And the detection process of different types of robots is different, so the versatility is not high.
- the embodiment of the application provides a robot calibration method, which determines the coordinate offset value of the robot by controlling the robot to align with the first target point on the chessboard grid, and corrects the target parameters of the robot according to the coordinate offset value.
- the robot is on the chessboard
- the operation on the grid is relatively simple, and the cost of the checkerboard grid is lower, therefore, the cost is lower than the related technology, and the operation is easier.
- the implementation environment may include a robot 101, a camera component 102 and a checkerboard 103.
- the checkerboard is located below the robot, and the size of the checkerboard covers the entire working range of the robot in the plane as much as possible.
- the camera assembly is installed at the end of the robot.
- the camera component can assist the robot to aim at the first target point on the chessboard, and the robot is equipped with a controller and a driver.
- the controller of the robot (hereinafter referred to as the controller) can send a first alignment control instruction to the driver of the robot, and the first alignment control instruction is used to instruct the driver to drive the robot to align with the first target point on the checkerboard; the controller also According to the first position offset between the first actual point and the first target point that the robot is actually aligned by the driver of the robot in response to the first alignment control instruction, the driver can be controlled to drive the robot to be actually aligned by the first positional offset.
- the actual point moves to the first target point, and after the robot moves to the first target point, the coordinate value of the robot and the angle of multiple translation axes of the robot are obtained; the controller determines the coordinate value of the robot and the coordinate value of the first target point The coordinate offset value of the robot; the controller calculates the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angle of multiple translation axes of the robot, and corrects the target parameter according to the offset value of the target parameter.
- a camera component is provided on the robot, and the driver according to the robot drives the first actual point that the robot actually aligns with the first actual point in response to the first alignment control instruction.
- a first position offset between a target point the controller of the robot controls the driver of the robot to drive the robot to move from the first actual point that is actually aligned to the first target point, including : After the driver of the robot has responded to the first alignment control instruction, the camera component is used to photograph the checkerboard to obtain an image of the checkerboard; the controller of the robot is in the The first target point is located in the image of the checkerboard, and the point at the center position in the image of the checkerboard is taken as the first actual point; the controller of the robot takes the first target point And the pixel offset of the first actual point in the checkerboard image as the first position offset; according to the first position offset, the controller of the robot controls the robot The driver drives the robot to move from the first actual point that is actually aligned to the first target point.
- a camera component is provided on the robot, and the first actual point and the first target point that are actually aligned according to the robot's driver in response to the first alignment control instruction
- the robot’s controller controls the robot’s driver to drive the robot to move from the first actual point actually aligned to the first target point, including: according to the first position offset between the The first position offset, the controller of the robot controls the driver of the robot to drive the robot to move, and after the robot moves, it is determined that the current actual point currently pointed by the robot and the first target point Whether the current position offset between the two is greater than a preset offset threshold; in response to the current position offset between the current actual point to which the robot is currently pointing and the first target point is greater than the preset As a result of the judgment of the offset threshold, the controller of the robot controls the driver of the robot to drive the robot to continue to move according to the current position offset until the robot is aligned with the first target point.
- the method further includes: the controller of the robot sends a second alignment control instruction to the driver of the robot , Wherein the second alignment control instruction is used to instruct the driver of the robot to drive the robot to align with the second target point on the checkerboard; acquiring the driver of the robot in response to the second alignment The second position offset between the second actual point actually aligned by the control instruction and the second target point; in the case that the second position offset is less than a preset threshold, determine the robot’s The calibration is complete.
- the controller of the robot calculates the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angles of the multiple translation axes of the robot, including: The controller constructs an error model equation set according to the coordinate offset value of the robot and the angles of the multiple translation axes of the robot, wherein the error model equation set is used to determine the offset value of the target parameter of the robot; The controller of the robot solves the error model equation set to obtain the offset value of the target parameter of the robot.
- the number of the first target points is multiple, and the number of the first target points is greater than or equal to a preset multiple of the number of translation axes of the robot.
- the offset value of the target parameter of the robot includes an arm length deviation value, an angle deviation value, and a deviation value of a reduction ratio correction value of each translation axis of the robot.
- the implementation environment may include a server, a robot, a camera component, and a checkerboard, where the checkerboard is located below the robot, and the size of the checkerboard covers as much as possible the entire working range of the robot in the plane .
- the camera assembly is installed at the end of the robot.
- the server is configured to send a first alignment control instruction to the robot.
- the camera component can assist the robot in aligning to the first target point on the checkerboard.
- the server can actually align the first actual point according to the robot in response to the first alignment control instruction.
- the first position offset between the first target point and the first target point is used to control the robot to move from the first actual point that is actually aligned to the first target point, and obtain the coordinate value of the robot and the robot after the robot moves to the first target point.
- the angle of multiple translation axes According to the coordinate value of the robot and the coordinate value of the first target point, the coordinate offset value of the robot is determined, and the offset value of the target parameter of the robot is calculated according to the coordinate offset value of the robot and the angle of the robot's multiple translation axes. The offset value of the parameter corrects the target parameter.
- FIG. 2 shows a flowchart of a robot calibration method provided by an embodiment of the present application.
- the robot calibration method can be applied to the implementation environment shown in FIG. 1.
- the robot calibration The method can include the following steps.
- Step 201 Send a first alignment control instruction to the robot.
- the first alignment control instruction is used to instruct the robot to align the first target point on the chessboard.
- the first alignment control command can be any coordinate value.
- the first alignment control instruction may be the coordinate value of the first target point on the chessboard.
- the controller of the robot can control the movement of the translation axis of the robot, and control the end of the translation axis (also referred to as "joint axis") of the robot to align with the first target point according to the first alignment control instruction.
- Robot movement can be understood as the movement of the robot's translation axis (also called “translation axis movement”), and the alignment of the robot to the first target point can be understood as the end of the robot's translation axis aligned with the first target point, so that the end of the translation axis Align the camera assembly at the first target point.
- Step 202 According to the first position offset between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction, control the robot to move from the first actual point that is actually aligned to The first target point, and the coordinate values of the robot and the angles of the multiple translation axes of the robot are obtained after the robot moves to the first target point.
- the robot Since the accuracy of the robot is low before calibration, when the robot responds to the first alignment control instruction, it cannot really align to the first target point.
- the point where the robot is actually aligned is called the first actual point.
- this position difference is referred to as the first position offset.
- a coordinate system with the first actual point as the coordinate origin can be established ( Called "checkerboard coordinate system"), calculate the coordinate value of the first target point in the coordinate system, the X-axis coordinate and Y-axis coordinate corresponding to the coordinate value, that is, the X-axis offset corresponding to the first position offset Offset from the Y axis.
- the robot can use the first actual point as the initial point and move the distance corresponding to the first position offset until it is aligned with the first target point.
- the actual coordinate value of the robot in the base coordinate system of the robot is the coordinate value of the robot.
- the multiple translation axes of the robot will also present different angles.
- the angle of each translation axis of the robot can refer to the difference between each translation axis of the robot and the base coordinate system.
- Step 203 Determine the coordinate offset value of the robot according to the coordinate value of the robot and the coordinate value of the first target point.
- the coordinate value of the first target point is the coordinate value of the first target point in the checkerboard coordinate system.
- the converted coordinate value is the theoretical coordinate value when the robot is aligned with the first target point. In this way, the coordinate value of the robot and the theoretical coordinate value when the robot is aligned with the first target point are both in the base coordinate system of the robot, so that they are comparable.
- the theoretical coordinate value when the robot is aligned with the first target point is different from the actual coordinate value when the robot is aligned with the first target point (that is, the coordinate value of the robot).
- the coordinate offset value of the robot can be calculated according to the coordinate value of the robot and the theoretical coordinate value when the robot is aligned with the first target point.
- the base coordinate system of the robot can be represented by Q
- the checkerboard coordinate system can be represented by Pw
- the conversion matrix between the base coordinate system and the checkerboard coordinate system can be obtained.
- the conversion matrix T between the base coordinate system and the checkerboard coordinate system can be expressed as:
- the rotation matrix R can be expressed as:
- XYZ represents the three dimensional vectors in the base coordinate system Q of the robot; Represents the projection of the n-axis unit vector of the checkerboard coordinate system in the base coordinate system of the robot; vector Represents the projection of the o-axis unit vector of the checkerboard coordinate system in the base coordinate system of the robot; vector Represents the projection of the a-axis unit vector of the checkerboard coordinate system in the base coordinate system of the robot.
- the translation matrix P can be expressed as:
- p x , p y and p z are the offset values of the origin of the checkerboard coordinate system relative to the origin of the robot base coordinate system in the X axis, Y axis and Z axis of the robot base coordinate system.
- the coordinate value of any point in the checkerboard coordinate system can be converted into the coordinate value of the point in the base coordinate system.
- the coordinate value of the first target point on the checkerboard in the checkerboard coordinate system can be transformed by the transformation matrix T, and the transformed first target point is in the base coordinate system of the robot. The converted coordinate value.
- Step 204 Calculate the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angles of the multiple translation axes of the robot, and perform correction processing on the target parameter according to the offset value of the target parameter.
- the deviation value of the target parameter of the robot includes the deviation value of the arm length deviation value, the angle deviation value, and the deviation value of the reduction ratio correction value of each translation axis of the robot.
- the process of correcting the target parameter according to the offset value of the target parameter can be: according to the deviation value of the arm length of each translation axis of the robot, the deviation value of the angle, and the deviation value of the reduction ratio correction value for each translation of the robot
- the arm length, zero point and reduction ratio of the shaft are respectively corrected.
- the robot correction method provided in this embodiment determines the coordinate offset value of the robot by controlling the robot to align with the first target point on the chessboard grid, and corrects the target parameters of the robot according to the coordinate offset value of the robot.
- the robot is on the chessboard
- the operation on the grid is relatively simple, and the cost of the checkerboard grid is lower, therefore, the cost is lower than the related technology, and the operation is easier.
- FIG. 3 shows a flowchart of a method for the robot to align the first target point on the checkerboard, including the following steps.
- Step 301 After the robot responds to the first alignment control instruction, the camera component is used to photograph the checkerboard to obtain an image of the checkerboard.
- the robot After the robot responds to the first alignment control instruction, the robot aligns to a position point on the chessboard, which is the first actual point.
- the camera component can be controlled to photograph the checkerboard to obtain an image of the checkerboard.
- the camera component photographs the checkerboard, it is taken at an angle perpendicular to the plane of the checkerboard.
- the camera assembly is arranged at the end of the translation axis of the robot.
- the camera component moves synchronously with the translation axis of the robot, and the translation axis of the robot moves to the first actual point, which means that the camera component on the robot also moves to the first actual point.
- Step 302 Locate the first target point in the image of the checkerboard, and use the point at the center position in the image of the checkerboard as the first actual point.
- the process for the robot to locate the first target point in the checkerboard image may be: obtaining the coordinate value of the first target point in the checkerboard image, which may be referred to as the checkerboard coordinate value of the first target point , Find the first target point in the checkerboard image according to the checkerboard coordinate value of the first target point, and determine the pixel point corresponding to the first target point, and the pixel point is the located first target point.
- the point where the camera assembly is actually aligned on the checkerboard is the same as the first actual point where the robot is actually aligned in the checkerboard.
- the points can be the same point.
- the first actual point that the camera assembly is aimed at is the pixel at the center of the checkerboard image.
- the pixels corresponding to the first actual point aligned by the robot on the checkerboard image in the checkerboard image and the pixel points corresponding to the first target point on the checkerboard image in the checkerboard image are respectively determined. . In this way, the position offset between the first actual point and the first target point can be quantified.
- Step 303 Use the pixel offset of the first target point and the first actual point in the checkerboard image as the first position offset.
- the pixel offset between the pixel point corresponding to the first actual point and the pixel point corresponding to the first target point can be determined in the checkerboard image.
- the process of using the pixel offset as the first position offset may include the following:
- the camera coordinate system is a three-dimensional rectangular coordinate system established with the focus center of the camera as the origin and the optical axis as the Z axis.
- the process of determining the conversion matrix between the camera coordinate system and the base coordinate system of the robot may be: controlling the robot to move a relative position dx on the X axis from the current coordinate Q(x0, y0).
- the camera component is used to take a picture of the chessboard to obtain the first photographed image.
- the coordinate value of the corner point in the camera coordinate system K is recorded as K(u0,v0), search for the offset corner point K(u0,v0) in the first captured image, and record the coordinate value after the robot moves Point Q (x1, y1), and the corner point coordinate K (u1, v1) in the camera coordinate system K.
- the first position offset refers to the distance between the first actual point that the robot actually aligns and the theoretical coordinate point that the robot theoretically aligns in the base coordinate system of the robot.
- each pixel in the photographed image taken by the camera component corresponds to the position in the base coordinate system of the robot.
- the pixel offset in the image of the checkerboard can be converted into the first position offset between the first actual point and the first target point in the base coordinate system of the robot.
- Step 304 Control the robot to move from the first actual point actually aligned to the first target point according to the first position offset.
- the first position offset refers to the displacement difference between the coordinate value of the first actual point that the robot is actually aligned with and the theoretical coordinate when the robot is aligned with the first target point in the base coordinate system of the robot.
- the robot can control the movement of the robot according to the position deviation corresponding to the first position offset in the base coordinate system of the robot, so that it can move from the first actual point to the first target point.
- the pixel offset in the checkerboard image taken by the camera component can be converted into the base coordinate system of the robot.
- the first position offset so that the robot can accurately align with the first target point.
- Fig. 4 shows a flowchart of another method for a robot to align a first target point on a chessboard, including the following steps.
- Step 401 Control the robot to move according to the first position offset. After the robot moves, determine whether the current position offset between the current actual point pointed by the robot and the first target point is greater than a preset offset threshold .
- the process of controlling the movement of the robot according to the first position offset can refer to the above step 303.
- the judgment process can be:
- the process of obtaining the current position offset may be: using the camera component to take a picture of the checkerboard to obtain an image of the current checkerboard.
- the pixel at the center of the image of the current checkerboard is the current actual point where the robot points to the checkerboard.
- the current pixel deviation is determined according to the position difference between the pixel point corresponding to the current actual point in the current checkerboard image and the pixel point corresponding to the first target point in the current checkerboard image.
- the current pixel deviation is converted into the current position deviation between the current actual point and the first target point in the base coordinate system through the conversion matrix A0 Shift.
- B2 Determine whether the current position offset is greater than the preset offset threshold.
- the current position offset is greater than the offset threshold, indicating that the distance between the current actual point that the robot is actually aligned with and the first target point is relatively large, and therefore, the robot is not aligned with the first target point.
- the current position offset is less than or equal to the offset threshold, indicating that the distance between the current actual point that the robot is actually aligned with and the first target point is small, and the gap between the current actual point and the first target point can be ignored. When, make sure that the robot is aimed at the first target point.
- Step 402 When the current position offset between the current actual point pointed by the robot and the first target point is greater than the preset offset threshold, the robot is controlled to continue to move according to the current position offset until the robot is aligned with the first target point. Up to the target point.
- the robot when the current position offset is greater than the offset threshold, the robot needs to be controlled to continue to aim at the first target point.
- the process of controlling the robot to continue aligning to the first target point may be: controlling the robot to move according to the current position offset, so that the robot moves from the current actual point to the first target point.
- the robot moves according to the current position offset, it is still necessary to judge whether the robot is actually aligned with the first target point after the movement, and the judgment process is to repeat step 401. After it is determined that the robot is aligned with the first target point, the coordinate values of the robot and the angles of the multiple translation axes of the robot can be obtained.
- the accuracy of the robot's alignment to the first target point is ensured.
- the coordinates of the robot and the angles of the multiple translation axes of the robot are more accurate, thereby improving the accuracy of the robot's calibration.
- FIG. 5 shows a flowchart of a method for calculating the offset value of a target parameter of a robot, which includes the following steps.
- step 501 an error model equation set is constructed according to the coordinate offset value of the robot and the angles of multiple translation axes of the robot.
- FIG. 6 shows a connection relationship diagram between adjacent translation axes of the robot.
- the DH motion model can be established according to the connection relationship diagram between adjacent translation axes shown in FIG. 6, and the DH motion model is a model proposed by Denavit and Hartenberg. A model established by a modeling method.
- the transformation matrix between adjacent translation axes in the DH motion model can be expressed as follows:
- the transformation matrix is only shown as an example, and the physical meaning of the multiple matrix elements in the transformation matrix is not explained here.
- Zero and translational axis of the robot arm length can be represented by the length of the transform matrix d i, and the angle ⁇ i.
- the above transformation matrix does not reflect the reduction ratio of multiple translation axes of the robot.
- i r translational axis actual reduction ratio i t is the theoretical reduction ratio translational axis
- ⁇ t is the theoretical angle of movement
- ⁇ r is the actual angle of movement
- k i is the reduction ratio correction value.
- an error model can be established based on the expression of the reduction ratio and the expression of the transformation matrix.
- the error model is a kinematic position differential equation, and the expression of the error model can be:
- ⁇ X 1 is the X-axis offset value in the coordinate offset value of the robot
- ⁇ Y 1 is the Y-axis offset value in the coordinate offset value of the robot
- a i represents the theoretical arm length of the i-th translation axis of the robot
- ⁇ i represents the angle of the i-th translation axis of the robot
- k i represents the correction value of the reduction ratio of the i-th translation axis
- n is the number of the translation axis.
- the coordinate offset value of the robot and the angles of multiple translation axes of the robot can be obtained according to the contents disclosed in step 201 to step 203.
- the number of first target points is N and the number of translation axes of the robot is M.
- the coordinate offset value of the robot and the number of translation axes of the robot can be obtained.
- angle It means that the coordinate offset values of N robots and the angles of N ⁇ M translation axes can be obtained.
- the coordinate offset of the robot and the angles of the M translation axes can be brought into the error model to obtain an error model equation set.
- step 502 the error model equation set is solved to obtain the offset value of the target parameter of the robot.
- the number N of the first target point is greater than or equal to the preset number M of the translation axis of the robot multiple.
- the preset multiple is greater than or equal to 1.5.
- the process of solving the error model equation group may be: deform the error model to obtain:
- J is the Jacobian matrix
- ⁇ a i offset value for the arm length ⁇ i is an angle deviation and the deviation ⁇ k i for the speed reduction ratio correction value.
- the obtained robot coordinate offset value (X, Y) and the angle ⁇ i of each translation axis can be brought into the above-mentioned error model equation set, and then Use matrix left division to find ⁇ a 1 , ⁇ 1 , ⁇ k 1 , ⁇ a 2 , ⁇ 2 and ⁇ k 2 .
- the relationship expression between the translation axes of the robot is established through the DH motion model, and the error model is established according to the relationship expression, so that the offset value of the target parameter can be obtained.
- the result of the correction may not reach the theoretical state due to an error in the calculation process or an error in the data acquisition process.
- the steps from step 201 to step 204 are performed again on the corrected robot, so that the robot performs multiple corrections.
- Fig. 7 shows a flow chart of a method for verifying the calibration result of the robot. The method includes the following steps.
- Step 701 Send a second alignment control instruction to the robot, where the second alignment control instruction is used to instruct the robot to align the second target point on the chessboard.
- the coordinate value of the second target point on the checkerboard in the checkerboard coordinate system can be converted to the theoretical coordinate value of the second target point in the base coordinate system of the robot through the transformation matrix T.
- the second alignment control instruction may refer to the theoretical coordinate value of the second target point in the base coordinate system of the robot.
- the robot After the robot receives the second alignment control instruction, it controls the translation axis to move to the position point corresponding to the theoretical coordinate value in the base coordinate system.
- Step 702 Obtain a second position offset between the second actual point and the second target point that the robot actually aligns in response to the second alignment control instruction.
- the robot can use the camera component to take a picture of the checkerboard to obtain a verification image, and based on the pixel offset between the second target point and the second actual point in the verification image, and the camera coordinate system of the camera component and the base coordinate system of the robot
- the conversion matrix A0 between A0 determines the second position offset value corresponding to the second target point and the second actual point in the base coordinate system.
- Step 703 When the second position offset is less than the preset threshold, it is determined that the correction of the robot is completed.
- Second position offset value is less than the preset threshold value.
- the second position offset value is less than the preset threshold value, it means that the distance between the second actual point and the second target point that the robot is aligned with is small. 2. The distance between the actual point and the second target point is ignored. At this time, it is determined that the robot is aligned with the second target point, that is, the correction of the robot is completed.
- the second position offset value is greater than or equal to the preset threshold value, it indicates that the distance between the second actual point that the robot is aligned with and the second target point is relatively large. Therefore, it is determined that the robot is not aligned with the second target point.
- step 201 When the robot does not aim at the second target point, it is necessary to repeat the content of step 201 to step 204 to calibrate the robot again until the calibration of the robot is completed.
- the robot can align multiple second target points in sequence, and obtain the second position offset between the actual aligned point of the robot and each second target point when each second target point is aligned.
- the second position offset when the robot is aligned with multiple second target points may be accumulated and summed, and when the sum result is less than a preset threshold, it is determined that the correction of the robot is completed.
- the accuracy of the robot after each calibration is verified through multiple iterations of verification, so as to determine that the accuracy of the robot after the calibration is in a high state.
- FIG. 8 shows a block diagram of a robot calibration device provided by an embodiment of the present application.
- the robot calibration device can be configured in the robot in the implementation environment shown in FIG. 1.
- the robot correction device may include a sending module 801, a coordinate acquisition module 802, an offset value acquisition module 803, and a correction module 804.
- the sending module 801 is configured to send a first alignment control instruction to the robot, where the first alignment control instruction is used to instruct the robot to align the first target point on the chessboard.
- the coordinate acquisition module 802 is configured to control the robot to be aligned from the first actual point actually aligned according to the first position offset between the first actual point and the first target point that the robot actually aligned in response to the first alignment control instruction.
- the point moves to the first target point, and after the robot moves to the first target point, the coordinate values of the robot and the angles of the multiple translation axes of the robot are obtained.
- the offset value acquisition module 802 is configured to determine the coordinate offset value of the robot according to the coordinate value of the robot and the coordinate value of the first target point.
- the correction module 804 is configured to calculate the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angles of the multiple translation axes of the robot, and perform correction processing on the target parameter according to the offset value of the target parameter.
- a camera component is provided on the robot, and the coordinate acquisition module 802 is further configured to use the camera component to photograph the checkerboard after the robot responds to the first alignment control command to obtain an image of the checkerboard. ; Locate the first target point in the checkerboard image, and use the center point in the checkerboard image as the first actual point; set the first target point and the first actual point in the checkerboard image The pixel offset is used as the first position offset; according to the first position offset, the robot is controlled to move from the first actual point actually aligned to the first target point.
- a camera component is provided on the robot, and the coordinate acquisition module 802 is also set to control the movement of the robot according to the first position offset. After the movement of the robot is completed, it is determined that the current actual point currently pointed by the robot is Whether the current position offset between the first target points is greater than the preset offset threshold; when the current position offset between the current actual point that the robot is pointing at and the first target point is greater than the preset offset threshold , Control the robot to continue to move according to the current position offset until the robot is aligned with the first target point.
- the correction module 804 is further configured to send a second alignment control instruction to the robot, and the second alignment control instruction is used to instruct the robot to align the second target point on the checkerboard; obtain the robot response A second position offset between the second actual point and the second target point actually aligned by the second alignment control instruction; when the second position offset is less than the preset threshold, it is determined that the correction of the robot is completed.
- the offset value acquisition module 802 is further configured to construct an error model equation set according to the coordinate offset value of the robot and the angles of multiple translation axes of the robot, and the error model equation set is used to determine the target of the robot.
- the offset value of the parameter; the error model equation group is solved to obtain the offset value of the target parameter of the robot.
- the number of first target points is multiple, and the number of first target points is greater than or equal to a preset multiple of the number of translation axes of the robot.
- the deviation value of the target parameter of the robot includes the deviation value of the arm length deviation value, the angle deviation value and the deceleration ratio correction value of each translation axis of the robot.
- Each module in the above-mentioned robot correction device can be implemented in whole or in part by software, hardware and a combination thereof.
- Each of the foregoing modules may be embedded in the form of hardware or independent of the processor in the computer device, or may be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operation corresponding to each of the foregoing modules.
- a computer device is provided.
- the computer device may be a controller or a server of a robot.
- the internal structure diagram of the computer device may be as shown in FIG. 9.
- the computer equipment includes a processor, a memory, and a network interface connected through a system bus.
- the processor of the computer device is configured to provide calculation and control capabilities.
- the memory of the computer device includes a non-volatile storage medium and an internal memory.
- the non-volatile storage medium stores an operating system, a computer program, and a database.
- the internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium.
- the network interface of the computer device is set to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a robot calibration method is realized.
- FIG. 9 is only a block diagram of part of the structure related to the solution of the present application, and does not constitute a limitation on the computer equipment to which the solution of the present application is applied.
- the computer equipment may include More or fewer components are shown in the figure, or some components are combined, or have different component arrangements.
- a computer device including a memory and a processor, the memory stores a computer program, and the processor implements the following steps when the processor executes the computer program: sending a first alignment control instruction to the robot, first
- the alignment control instruction is used to instruct the robot to align the first target point on the checkerboard; according to the first position deviation between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction
- the amount of movement controls the robot to move from the first actual point that is actually aligned to the first target point, and after the robot moves to the first target point, the coordinate value of the robot and the angle of the robot's multiple translation axes are obtained; according to the coordinates of the robot Value and the coordinate value of the first target point to determine the coordinate offset value of the robot; calculate the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angle of multiple translation axes of the robot, and according to the offset of the target parameter Value to correct the target parameter.
- the processor further implements the following steps when executing the computer program: after the robot has responded to the first alignment control instruction, the camera component is used to photograph the chessboard to obtain an image of the chessboard;
- the first target point is located in the image of the grid, and the point in the center of the image of the checkerboard is regarded as the first actual point; the pixel offset of the first target point and the first actual point in the image of the checkerboard The amount is used as the first position offset; according to the first position offset, the robot is controlled to move from the first actual point that is actually aligned to the first target point.
- the processor further implements the following steps when executing the computer program: controlling the movement of the robot according to the first position offset, and after the movement of the robot is finished, judging the current actual point currently pointed by the robot and the first target Whether the current position offset between the points is greater than the preset offset threshold; when the current position offset between the current actual point currently pointed by the robot and the first target point is greater than the preset offset threshold, the current The position offset controls the robot to continue to move until the robot is aligned with the first target point.
- the processor further implements the following steps when executing the computer program: sending a second alignment control instruction to the robot, and the second alignment control instruction is used to instruct the robot to align the second target point on the chessboard. ; Acquire the second position offset between the second actual point and the second target point that the robot actually aligns in response to the second alignment control instruction; when the second position offset is less than the preset threshold, determine the robot The correction is complete.
- the processor further implements the following steps when executing the computer program: constructing an error model equation set according to the coordinate offset value of the robot and the angles of multiple translation axes of the robot, and the error model equation set is used to determine the robot The offset value of the target parameter of the robot; solve the error model equations to obtain the offset value of the target parameter of the robot.
- a computer-readable storage medium which stores a computer program.
- the following steps are implemented: sending a first alignment control instruction to a robot, and a first alignment control
- the instruction is used to instruct the robot to align the first target point on the checkerboard; according to the first position offset between the first actual point and the first target point that the robot actually aligns in response to the first alignment control instruction, Control the robot to move from the first actual point that is actually aligned to the first target point, and obtain the coordinate value of the robot and the angles of multiple translation axes of the robot after the robot moves to the first target point; according to the coordinate value and the first target point of the robot
- the coordinate value of a target point determines the coordinate offset value of the robot; the offset value of the target parameter of the robot is calculated according to the coordinate offset value of the robot and the angle of the multiple translation axes of the robot, and the target parameter is adjusted according to the offset value of the target parameter.
- the parameters are corrected.
- the following steps may be implemented: after the robot has responded to the first alignment control instruction, the camera component is used to photograph the chessboard to obtain an image of the chessboard; Locate the first target point in the checkerboard image, and use the center point in the checkerboard image as the first actual point; set the first target point and the first actual point to the pixels in the checkerboard image The offset is used as the first position offset; according to the first position offset, the robot is controlled to move from the first actual point that is actually aligned to the first target point.
- the following steps can also be implemented: control the movement of the robot according to the first position offset, and after the movement of the robot is completed, determine the current actual point and the first point the robot is currently pointing to. Whether the current position offset between the target points is greater than the preset offset threshold; when the current position offset between the current actual point currently pointed by the robot and the first target point is greater than the preset offset threshold, Control the robot to continue to move according to the current position offset until the robot is aligned with the first target point.
- the following steps can also be implemented: sending a second alignment control instruction to the robot, and the second alignment control instruction is used to instruct the robot to align the second alignment on the checkerboard. Target point; acquiring the second position offset between the second actual point and the second target point that the robot actually aligns in response to the second alignment control instruction; when the second position offset is less than the preset threshold, Make sure that the calibration of the robot is complete.
- the following steps can be implemented: construct an error model equation set according to the coordinate offset value of the robot and the angles of multiple translation axes of the robot, and the error model equation set is used for Determine the offset value of the target parameter of the robot; solve the error model equation set to obtain the offset value of the target parameter of the robot.
- the technical solutions provided by the embodiments of the present application may at least: the above-mentioned robot calibration method, device, computer equipment and storage medium, by sending a first alignment control instruction to the robot, the first alignment control instruction is used to instruct the robot to align on the chessboard According to the first position offset between the first actual point and the first target point that the robot is actually aligned in response to the first alignment control instruction, the robot is controlled to be aligned by the first actual The point moves to the first target point, and after the robot moves to the first target point, the coordinate value of the robot and the angle of multiple translation axes of the robot are obtained; the coordinate value of the robot is determined according to the coordinate value of the robot and the coordinate value of the first target point Offset value: Calculate the offset value of the target parameter of the robot according to the coordinate offset value of the robot and the angle of multiple translation axes of the robot, and correct the target parameter according to the offset value of the target parameter.
- this application determines the coordinate offset value of the robot by controlling the robot to align with multiple first target points on the chessboard, and corrects the target parameters of the robot according to the coordinate offset value of the robot.
- the robot is in the chessboard
- the operation on the above is relatively simple, and the cost of the checkerboard is lower, therefore, the cost is lower than the related technology, and the operation is easier.
- a person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing relevant hardware through a computer program.
- the computer program can be stored in a non-volatile computer readable storage.
- the medium when the computer program is executed, it may include the processes of the above-mentioned method embodiments. Any reference to memory, storage, database or other media used in each embodiment provided in this application may include non-volatile and/or volatile memory.
- Non-volatile memory can include read-only memory (Read-Only Memory, ROM), programmable ROM (Programmable Read-Only Memory, PROM), electrically programmable ROM (Electrically Programmable Read-Only Memory, EPROM), and electrically erasable Except for Programmable ROM (Electrically Erasable Programmable Read-Only Memory, EEPROM) or flash memory. Volatile memory may include random access memory (Random Access Memory, RAM) or external cache memory.
- RAM Random Access Memory
- RAM is available in various forms, such as static RAM (Static Random Access Memory, SRAM), dynamic RAM (Dynamic Random Access Memory, DRAM), synchronous DRAM (Synchronous Dynamic Random Access Memory, SDRAM), dual Data rate SDRAM (Double Data Rate Synchronous Dynamic Access Memory, DDR SDRAM), Enhanced SDRAM (Enhanced Synchronous Dynamic Access Memory, ESDRAM), Synchronous Link DRAM (SyncLink Dynamic Random Access Memory, SLDRAM), Memory Bus Direct RAM (Rambus) Direct Random Access Memory (RDRAM), Direct Rambus Random Access Memory (DRDRAM), and memory bus dynamic RAM (Rambus Random Access Memory, RDRAM), etc.
- SRAM static RAM
- DRAM Dynamic Random Access Memory
- SDRAM synchronous DRAM
- SDRAM dual Data rate SDRAM (Double Data Rate Synchronous Dynamic Access Memory, DDR SDRAM)
- Enhanced SDRAM Enhanced Synchronous Dynamic Access Memory, ESDRAM
- Synchronous Link DRAM Synchronous Link DRAM
- SLDRAM Syn
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
一种机器人校正方法,包括:向机器人(101)发送第一对准控制指令,根据机器人(101)响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人(101)移动至第一目标点,获取机器人(101)的坐标值以及机器人(101)的多个平移轴的角度;根据机器人(101)的坐标值以及第一目标点的坐标值确定机器人(101)的坐标偏移值;根据机器人(101)的坐标偏移值和机器人(101)的多个平移轴的角度计算机器人(101)的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。还提供一种机器人校正装置、计算机设备及存储介质。
Description
本申请要求在2020年02月28日提交中国专利局、申请号为202010127614.1的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
本申请涉及机器人技术领域,例如涉及一种机器人校正方法、装置、计算机设备及存储介质。
工业机器人具有结构形式简单、运动可靠、动作速度快、定位精度高的优点,被广泛应用于塑料工业、汽车工业、电子产品工业、药品工业和食品工业等领域。
由于机械加工误差、装配误差、摩擦磨损等因素的影响,工业机器人实际的运动学参数(如零点、臂长、减速比等)与理论设计值存在一定偏差,因此,需要对机器人的多个参数进行校正。相关技术中,一般采用激光跟踪仪对工业机器人的零点、臂长和减速比进行校正。
然而,激光跟踪仪操作复杂,且设备昂贵笨重。当对生产线上的大量的工业机器人进行逐一校正时,成本高,且操作复杂。
发明内容
本申请针对上述存在的对生产线上的大量的工业机器人进行逐一校正时,成本高且操作复杂的问题,提供一种机器人校正方法、装置、计算机设备及存储介质。
本申请实施例提供一种机器人校正方法,该方法包括:向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点;根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度;根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
在本申请的一个实施例中,机器人上设置有相机组件,根据机器人响应于 第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,包括:在机器人对第一对准控制指令响应完毕之后,利用相机组件对棋盘格进行拍摄,得到棋盘格的图像;在棋盘格的图像中定位到第一目标点,并将棋盘格的图像中位于中心位置处的点作为第一实际点;将第一目标点和第一实际点在棋盘格的图像中的像素偏移量作为第一位置偏移量;根据第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点。
在本申请的一个实施例中,机器人上设置有相机组件,根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,包括:根据第一位置偏移量,控制机器人移动,在机器人移动结束后,判断机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量是否大于预设偏移量阈值;当机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量大于预设偏移量阈值时,根据当前位置偏移量控制机器人继续移动,直至机器人对准第一目标点为止。
在本申请的一个实施例中,根据目标参数的偏移值对目标参数进行校正处理之后,该方法还包括:向机器人发送第二对准控制指令,第二对准控制指令用于指示机器人对准棋盘格上的第二目标点;获取机器人响应于第二对准控制指令而实际对准的第二实际点与第二目标点之间的第二位置偏移量;当第二位置偏移量小于预设阈值时,确定机器人的校正完成。
在本申请的一个实施例中,根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,包括:根据机器人的坐标偏移值和机器人的多个平移轴的角度构建误差模型方程组,误差模型方程组用于确定机器人的目标参数的偏移值;对误差模型方程组进行求解,得到机器人的目标参数的偏移值。
在本申请的一个实施例中,第一目标点的个数为多个,且第一目标点的个数大于或等于机器人的平移轴的个数的预设倍数。
在本申请的一个实施例中,机器人的目标参数的偏移值包括机器人的每个平移轴的臂长偏差值、角度偏差值和减速比修正值的偏差值。
本申请实施例提供一种机器人校正装置,该装置包括:发送模块,设置为向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点;坐标获取模块,设置为根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之 后获取机器人的坐标值以及机器人的多个平移轴的角度;偏移值获取模块,设置为根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;校正模块,设置为根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
本申请实施例提供一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该计算机程序被该处理器执行时实现以下步骤:向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点;根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度;根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
本申请实施例提供一种计算机可读存储介质,存储有计算机程序,该程序被处理器执行时实现以下步骤:向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点;根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度;根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
图1为本申请实施例提供的机器人校正方法的实施环境的示意图;
图2为本申请实施例提供的一种机器人校正方法的流程图;
图3为本申请实施例提供的一种机器人对准棋盘格上的第一目标点的方法的流程图;
图4为本申请实施例提供的另一种机器人对准棋盘格上的第一目标点的方法的流程图;
图5为本申请实施例提供的一种计算机器人的目标参数的偏移值的方法的流程图;
图6为本申请实施例提供的一种机器人的相邻的平移轴之间的连接关系图;
图7为本申请实施例提供的一种对机器人的校正结果进行验证的方法的流程图;
图8为本申请实施例提供的一种机器人校正装置的模块图;
图9为本申请实施例提供的一种计算机设备的模块图。
下面将结合附图对本申请实施方式进行描述。
选择性柔顺装配机械臂(Selective Compliance Assembly Robot Arm,SCARA)机器人是一种工业机器人,SCARA机器人包括旋转轴和平移轴,平移轴设置为在平面内进行定位和定向,旋转轴设置为完成末端件在垂直于平面的运动。SCARA机器人具有结构形式简单、运动可靠、动作速度快、定位精度高的优点,被广泛应用于塑料工业、汽车工业、电子产品工业、药品工业和食品工业等领域。
在实际应用中,工业机器人的误差来源是多方面的,例如,机器人由于长期使用,多个零部件都会受到不同程度的磨损和疲劳破坏;制造机器人的过程中,机器人的臂长会存在制造误差;在机器人的装配过程中,也可能会出现装配误差。基于上述这些原因,工业机器人实际的运动学参数(如零点、臂长、减速比等)与理论设计值存在一定偏差,因此,需要对机器人的多个参数进行校正。机器人的零点为多个平移轴共线且与机器人的基坐标系的X轴重合时,机器人的末端对应的位置点在基坐标系中的坐标值。基坐标系即机器人的坐标系。机器人的臂长是指机器人的每个平移轴的实际长度,机器人的减速比是指减速机构中瞬时输入速度与输出速度的比值。
相关技术中,一般采用激光跟踪仪采集机器人的参数,然后通过对坐标方程及标定方程进行大量运算,以对机器人进行零点位置校正、臂长校正以及减速比校正。该种方法测量的精度较高,但是测量过程较为繁琐,效率不高。并且不同型号的机器人的检测过程不同,因此通用性不高。
本申请实施例提供一种机器人校正方法,通过控制机器人对准棋盘格上的第一目标点来确定机器人的坐标偏移值,并根据坐标偏移值对机器人的目标参数进行校正,机器人在棋盘格上的操作较为简单,且棋盘格成本较低,因此,比相关技术的成本更低,操作更简便。
下面,将对本申请实施例提供的机器人校正方法所涉及到的实施环境进行 简要说明。
请参考图1,该实施环境可以包括机器人101、相机组件102和棋盘格103。棋盘格位于机器人的下方,且棋盘格的大小尽可能覆盖整个机器人在平面中的工作范围。相机组件安装于机器人的末端。
相机组件可以辅助机器人对准棋盘格上的第一目标点,机器人配置有控制器和驱动器。机器人的控制器(以下简称为控制器)可以向机器人的驱动器发送第一对准控制指令,第一对准控制指令用于指示驱动器驱动机器人对准棋盘格上的第一目标点;控制器还可以根据机器人的驱动器响应于第一对准控制指令而驱动机器人实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制驱动器驱动机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度;控制器根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;控制器根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
在一实施例中,所述机器人上设置有相机组件,所述根据所述机器人的驱动器响应于所述第一对准控制指令而驱动所述机器人实际对准的第一实际点与所述第一目标点之间的第一位置偏移量,所述机器人的控制器控制所述机器人的驱动器驱动所述机器人由实际对准的所述第一实际点移动至所述第一目标点,包括:在所述机器人的驱动器对所述第一对准控制指令响应完毕之后,利用所述相机组件对所述棋盘格进行拍摄,得到所述棋盘格的图像;所述机器人的控制器在所述棋盘格的图像中定位到所述第一目标点,并将所述棋盘格的图像中位于中心位置处的点作为所述第一实际点;所述机器人的控制器将所述第一目标点和所述第一实际点在所述棋盘格的图像中的像素偏移量作为所述第一位置偏移量;根据所述第一位置偏移量,所述机器人的控制器控制所述机器人的驱动器驱动所述机器人由实际对准的所述第一实际点移动至所述第一目标点。
在一实施例中,所述机器人上设置有相机组件,所述根据所述机器人的驱动器响应于所述第一对准控制指令而实际对准的第一实际点与所述第一目标点之间的第一位置偏移量,所述机器人的控制器控制所述机器人的驱动器驱动所述机器人由实际对准的所述第一实际点移动至所述第一目标点,包括:根据所述第一位置偏移量,所述机器人的控制器控制所述机器人的驱动器驱动所述机器人移动,在所述机器人移动结束后,判断所述机器人当前指向的当前实际点与所述第一目标点之间的当前位置偏移量是否大于预设偏移量阈值;响应于所述机器人当前指向的所述当前实际点与所述第一目标点之间的当前位置偏移量 大于所述预设偏移量阈值的判断结果,所述机器人的控制器根据所述当前位置偏移量控制所述机器人的驱动器驱动所述机器人继续移动,直至所述机器人对准所述第一目标点为止。
在一实施例中,在所述根据所述目标参数的偏移值对所述目标参数进行校正处理之后,还包括:所述机器人的控制器向所述机器人的驱动器发送第二对准控制指令,其中,所述第二对准控制指令用于指示所述机器人的驱动器驱动所述机器人对准所述棋盘格上的第二目标点;获取所述机器人的驱动器响应于所述第二对准控制指令而实际对准的第二实际点与所述第二目标点之间的第二位置偏移量;在所述第二位置偏移量小于预设阈值的情况下,确定所述机器人的校正完成。
在一实施例中,所述机器人的控制器根据所述机器人的坐标偏移值和所述机器人的多个平移轴的角度计算所述机器人的目标参数的偏移值,包括:所述机器人的控制器根据所述机器人的坐标偏移值和所述机器人的多个平移轴的角度构建误差模型方程组,其中,所述误差模型方程组用于确定所述机器人的目标参数的偏移值;所述机器人的控制器对所述误差模型方程组进行求解,得到所述机器人的目标参数的偏移值。
在一实施例中,所述第一目标点的个数为多个,且所述第一目标点的个数大于或等于所述机器人的平移轴的个数的预设倍数。
在一实施例中,所述机器人的目标参数的偏移值包括所述机器人的每个平移轴的臂长偏差值、角度偏差值和减速比修正值的偏差值。
在一种可选的实现方式中,该实施环境可以包括服务器、机器人、相机组件和棋盘格,其中,棋盘格位于机器人的下方,且棋盘格的大小尽可能覆盖整个机器人在平面中的工作范围。相机组件安装于机器人的末端。
服务器设置为向机器人发送第一对准控制指令,相机组件可以辅助机器人对准棋盘格上的第一目标点,服务器可以根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动到第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度。根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值,根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正。
请参考图2,图2示出了本申请实施例提供的一种机器人校正方法的流程图, 该机器人校正方法可以应用于图1所示的实施环境中,如图2所示,该机器人校正方法可以包括以下步骤。
步骤201,向机器人发送第一对准控制指令。
第一对准控制指令用于指示机器人对准棋盘格上的第一目标点。
第一对准控制指令可以是任意的坐标值。可选的,第一对准控制指令可以是第一目标点在棋盘格上的坐标值。
本实施例中,机器人的控制器可以控制机器人的平移轴移动,并根据第一对准控制指令控制机器人的平移轴(也称为“关节轴”)的末端对准第一目标点。
机器人移动可以理解为机器人的平移轴移动(也称为“平移轴运动”),机器人对准第一目标点可以理解为机器人的平移轴的末端对准第一目标点,以使平移轴的末端的相机组件对准第一目标点。
步骤202,根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度。
由于机器人在没有校正之前,精度较低,因此,机器人响应第一对准控制指令时,并不能真正地对准第一目标点。本实施例中,将机器人实际对准的点称为第一实际点。
第一实际点与第一目标点之间存在位置差别,本实施例中将该位置差别称为第一位置偏移量,可选的,可以建立以第一实际点为坐标原点的坐标系(称为“棋盘格坐标系”),计算第一目标点在该坐标系中的坐标值,该坐标值对应的X轴坐标和Y轴坐标即第一位置偏移量对应的X轴偏移量和Y轴偏移量。
机器人可以以第一实际点为初始点,移动第一位置偏移量所对应的距离,直到对准第一目标点。
当机器人实际对准第一目标点时,机器人在机器人的基坐标系中的实际坐标值为机器人的坐标值。同时,机器人实际对准第一目标点时,机器人的多个平移轴也会呈现不同的角度,其中,机器人的每个平移轴的角度可以是指机器人的每个平移轴与基坐标系中的X轴或者Y轴的夹角。
步骤203,根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值。
本实施例中,第一目标点的坐标值为第一目标点在棋盘格坐标系中的坐标 值。首先需要将第一目标点的坐标值转换到机器人的基坐标系中,得到第一目标点在基坐标系中对应的转换坐标值。该转换坐标值即是机器人对准第一目标点时的理论坐标值。这样机器人的坐标值和机器人对准第一目标点时的理论坐标值均是在机器人的基坐标系中,从而具有可比性。
然后,由于机器人的精度不准确,机器人对准第一目标点时的理论坐标值与机器人对准第一目标点时的实际坐标值(即机器人的坐标值)是不相同的。可以根据机器人的坐标值和机器人对准第一目标点时的理论坐标值计算得到机器人的坐标偏移值。
可选的,本实施例中,机器人的基坐标系可以用Q表示,棋盘格坐标系可以用P
w表示。本实施例中,可以获取基坐标系与棋盘格坐标系之间的转换矩阵。
可选的,基坐标系与棋盘格坐标系之间的转换矩阵T可以表示为:
其中,旋转矩阵R可以表示为:
其中,XYZ表示机器人的基坐标系Q中的三个维度向量;
表示棋盘格坐标系的n轴单位向量在机器人的基坐标系中的投影;向量
表示棋盘格坐标系的o轴单位向量在机器人的基坐标系中的投影;向量
表示棋盘格坐标系的a轴单位向量在机器人的基坐标系中的投影。
平移矩阵P可以表示为:
p
x、p
y和p
z分别为棋盘格坐标系原点相对机器人基坐标系原点在机器人基坐标系的X轴、Y轴和Z轴的偏移值。通过转换矩阵T,可以将棋盘格坐标系中任一点的坐标值转换为该点在基坐标系中的坐标值。基于该原理,本实施例中,可以将棋盘格上的第一目标点在棋盘格坐标系中的坐标值通过转换矩阵T进行转换,得到转换后的第一目标点在机器人的基坐标系中的转换坐标值。
步骤204,根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
可选的,本实施例中,机器人的目标参数的偏移值包括机器人的每个平移轴的臂长偏差值、角度偏差值和减速比修正值的偏差值。
根据目标参数的偏移值对目标参数进行校正处理的过程可以是:根据机器人的每个平移轴的臂长的偏差值、角度的偏差值和减速比修正值的偏差值对机器人的每个平移轴的臂长、零点和减速比分别进行校正。
本实施例提供的机器人校正方法,通过控制机器人对准棋盘格上的第一目标点来确定机器人的坐标偏移值,并根据机器人的坐标偏移值对机器人的目标参数进行校正,机器人在棋盘格上的操作较为简单,且棋盘格成本较低,因此,比相关技术的成本更低,操作更简便。
在本申请的一个实施例中,机器人上设置有相机组件,请参考图3,图3示出了机器人对准棋盘格上的第一目标点的方法的流程图,包括以下步骤。
步骤301,在机器人对第一对准控制指令响应完毕之后,利用相机组件对棋盘格进行拍摄,得到棋盘格的图像。
在机器人对第一对准控制指令响应完毕之后,机器人对准了棋盘格上的一个位置点,该位置点为第一实际点。
本实施例中,可以控制相机组件对棋盘格进行拍摄,得到棋盘格的图像。相机组件对棋盘格进行拍摄时,以垂直于棋盘格平面的角度进行拍摄。
本实施例中,相机组件设置于机器人的平移轴的末端。相机组件与机器人的平移轴同步移动,机器人的平移轴移动至第一实际点,就表示机器人上的相机组件也移动至该第一实际点。
步骤302,在棋盘格的图像中定位到第一目标点,并将棋盘格的图像中位于中心位置处的点作为第一实际点。
本实施例中,机器人在棋盘格的图像中定位到第一目标点的过程可以是:获取第一目标点在棋盘格的图像中的坐标值,可以称为第一目标点的棋盘格坐标值,根据第一目标点的棋盘格坐标值在棋盘格的图像中寻找该第一目标点,并确定该第一目标点对应的像素点,该像素点即定位到的第一目标点。
本实施例中,将棋盘格的图像中位于中心位置处的点作为第一实际点的过程中,相机组件在棋盘格上实际对准的点与机器人在棋盘格中实际对准的第一实际点可以为同一个点。本实施例中,在相机组件拍摄时,相机组件对准的第 一实际点即是棋盘格的图像中位于中心位置处的像素点。
本实施例中,分别确定出了机器人在棋盘格上对准的第一实际点在棋盘格的图像中对应的像素点以及棋盘格上的第一目标点在棋盘格的图像中对应的像素点。这样,可以对第一实际点与第一目标点之间的位置偏移量进行量化处理。
步骤303,将第一目标点和第一实际点在棋盘格的图像中的像素偏移量作为第一位置偏移量。
本实施例中,在棋盘格的图像中,第一实际点对应的像素点(即棋盘格的图像的中心点)与第一目标点对应的像素点之间具有位置差别。
可以在棋盘格的图像中确定出第一实际点对应的像素点与第一目标点对应的像素点之间的像素偏移量。
本实施例中,将像素偏移量作为第一位置偏移量的过程可以包括以下内容:
A1,确定相机坐标系与机器人的基坐标系之间的转换矩阵。其中,相机坐标系是以相机的聚焦中心为原点,以光轴为Z轴建立的三维直角坐标系。
本实施例中,确定相机坐标系与机器人的基坐标系之间的转换矩阵的过程可以是:控制机器人从当前坐标Q(x0,y0)在X轴移动一个相对位置dx。
机器人停止移动后,利用相机组件对棋盘格进行拍照,得到第一拍摄图像。机器人移动前,角点在相机坐标系K中的坐标值记为K(u0,v0),在第一拍摄图像中搜索偏移的角点K(u0,v0),记录机器人移动后的坐标值点Q(x1,y1),和角点在相机坐标系K中的坐标K(u1,v1)。
控制机器人从当前坐标Q(x0,y0)在Y轴移动一个相对位置dy。
机器人停止移动后,利用相机组件对棋盘格进行拍照,得到第二拍摄图像,在第二拍摄图像中搜索偏移的角点K(u0,v0),记录机器人移动后的坐标值点Q(x2,y2),和角点在相机坐标系K中的坐标K(u2,v2)。
可以根据上述获得的坐标点Q(x0,y0)、Q(x1,y1)、Q(x2,y2)、K(u0,v0)、K(u1,v1)、K(u2,v2)计算得到相机组件的相机坐标系K与机器人的基坐标系Q之间的转换矩阵A0,其中,K×A0=Q可以表示如下:
A2,根据该转换矩阵A0,将上述像素偏移量转换为在机器人的基坐标系下的的第一位置偏移量。
第一位置偏移量是指在机器人的基坐标系中,机器人实际对准的第一实际 点与机器人理论对准的理论坐标点之间的距离。
根据上述转换矩阵A0,可以确定出,相机组件拍摄的拍摄图像中的每个像素在机器人的基坐标系中对应的位置。从而可以将棋盘格的图像中的像素偏移量转换为机器人的基坐标系中第一实际点与第一目标点之间的第一位置偏移量。
步骤304,根据第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点。
本实施例中,第一位置偏移量是指在机器人的基坐标系中,机器人实际对准的第一实际点的坐标值与机器人对准第一目标点时的理论坐标之间的位移差。机器人可以根据第一位置偏移量在机器人的基坐标系中所对应的位置偏差控制机器人移动,从而可以从第一实际点移动至第一目标点。
本实施例中,通过建立相机组件的相机坐标系与机器人的基坐标系之间的转换关系,可以将相机组件拍摄的棋盘格的图像中的像素偏移量转换为机器人的基坐标系中的第一位置偏移量,从而使得机器人能够准确地对准第一目标点。
本实施例中,由于在未校正之前,机器人的精度较差,因此,在得到第一位置偏移量的基础上,机器人实际移动的距离可能与第一位置偏移量不相符,导致机器人根据第一位置偏移量移动后,依然不能准确地对准第一目标点。针对该种情况,如图4所示,图4示出了另一种机器人对准棋盘格上的第一目标点的方法的流程图,包括以下步骤。
步骤401,根据第一位置偏移量,控制机器人移动,在机器人移动结束后,判断机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量是否大于预设偏移量阈值。
本实施例中,根据第一位置偏移量控制机器人移动的过程可以参考上述步骤303。
在机器人移动结束后,需要判断机器人是否真的对准第一目标点,判断的过程可以是:
B1,在机器人移动结束后,获取机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量。
获取当前位置偏移量的过程可以是:利用相机组件对棋盘格进行拍照,得到当前棋盘格的图像。当前棋盘格的图像的中心位置处的像素点为机器人指向棋盘格的当前实际点。
根据当前实际点在当前棋盘格的图像中对应的像素点与第一目标点在当前 棋盘格的图像中对应的像素点的位置差别确定当前像素偏差量。
根据相机组件的相机坐标系与机器人的基坐标系之间的转换矩阵A0,将当前像素偏差量通过转换矩阵A0转换为基坐标系中的当前实际点与第一目标点之间的当前位置偏移量。
B2,判断当前位置偏移量是否大于预设偏移量阈值。
当前位置偏移量大于偏移量阈值,说明机器人实际对准的当前实际点与第一目标点之间的距离较大,因此,机器人并没有对准第一目标点。
当前位置偏移量小于等于偏移量阈值,说明机器人实际对准的当前实际点与第一目标点之间的距离较小,可以将当前实际点与第一目标点之间的差距忽略,此时,确定机器人对准了第一目标点。
步骤402,当机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量大于预设偏移量阈值时,根据当前位置偏移量控制机器人继续移动,直至机器人对准第一目标点为止。
本实施例中,当当前位置偏移量大于偏移量阈值时,需要控制机器人继续对准第一目标点。
控制机器人继续对准第一目标点的过程可以是:控制机器人根据当前位置偏移量移动,以使机器人从当前实际点移动至第一目标点。
本实施例中,当机器人根据当前位置偏移量移动之后,仍需要对移动后机器人是否实际对准第一目标点进行判断,判断过程即重复执行步骤401。当确定机器人对准第一目标点后,才可以获取机器人的坐标值和机器人的多个平移轴的角度。
本实施例中,通过多次控制机器人移动,保证了机器人对准第一目标点的精度,这样获取的机器人的坐标值和机器人的多个平移轴的角度更准确,从而可以提高机器人的校正精度。
在本申请的一个实施例中,请参考图5,图5示出了计算机器人的目标参数的偏移值的方法流程图,包括以下步骤。
步骤501,根据机器人的坐标偏移值和机器人的多个平移轴的角度构建误差模型方程组。
如图6所示,图6示出了机器人的相邻的平移轴之间的连接关系图。本实施例中,根据图6示出的相邻的平移轴之间的连接关系图可以建立DH运动模型,DH运动模型是由德纳维特(Denavit)和哈滕贝格(Hartenberg)提出的一 种建模方法建立的模型。
DH运动模型中相邻的平移轴之间的变换矩阵可以表示如下:
其中,如图6所示,a
i等于沿X
i轴,从Z
i移动到Z
i+1的距离;α
i等于绕X
i轴,从Z
i旋转到Z
i+1的角度;a
i-1等于沿X
i-1轴,从Z
i-1移动到Z
i的距离;α
i-1等于绕X
i-1轴,从Z
i-1旋转到Z
i的角度;d
i等于沿Z
i轴,从X
i-1移动到X
i的距离;θ
i等于绕Z
i轴,从X
i-1旋转到X
i的角度。
该变换矩阵仅为示例性的示出,对于变换矩阵中的多个矩阵元素的物理意义不在此展开说明。机器人的平移轴的零点和臂长可以用变换矩阵中的长度d
i和角度θ
i表示。但上述变换矩阵并不能体现出机器人的多个平移轴的减速比。
为了标定减速比,本实施例中,假定减速比误差是不变的,那么可以得到如下表达式:
其中,i
r为平移轴实际减速比,i
t为平移轴理论减速比,θ
t为理论运动角度,θ
r为实际运动角度,k
i为减速比修正值。
本实施例中,可以基于上述减速比的表达式和变换矩阵的表达式建立误差模型,误差模型为运动学位置微分方程,误差模型的表达式可以为:
其中,ΔX
1为机器人的坐标偏移值中的X轴偏移值;ΔY
1为机器人的坐标偏移值中的Y轴偏移值;a
i表示机器人的第i个平移轴的理论臂长;θ
i表示机器人的第i个平移轴的角度;k
i表示第i个平移轴的减速比修正值;n为平移轴的个数。
本申请中,第一目标点的个数为多个,对于每个第一目标点,可以根据步骤201-步骤203公开的内容获取机器人的坐标偏移值以及机器人的多个平移轴的角度。
例如第一目标点的个数为N,机器人的平移轴的个数为M,那么机器人对准每个第一目标点时,均可以获取机器人的坐标偏移值和机器人的多个平移轴的角度。就表示,可以获取N个机器人的坐标偏移值,以及N×M个平移轴的角度。
本实施例中,可以将机器人对准每个第一目标点时,机器人的坐标偏移量以及M个平移轴的角度带入该误差模型中,得到误差模型方程组。
步骤502,对误差模型方程组进行求解,得到机器人的目标参数的偏移值。
在求解误差模型方程组的过程中,由于当有M个平移轴时,需要确定出每个平移轴的臂长偏差值、角度偏差值和减速比修正值的偏差值,也就是说,至少需要3M个方程才可以得出每个平移轴的每个目标参数的偏移值。
根据上述误差模型可知,对于每个第一目标点,可以建立2个方程组,N个第一目标点可以对应建立2N个方程组。
为了保证机器人的每个平移轴的目标参数的偏移值都可以解出确定的值,本实施例中,第一目标点的个数N大于或等于机器人的平移轴的个数M的预设倍数。
可选的,该预设倍数为大于或等于1.5。
本实施例中,对误差模型方程组进行求解的过程可以是:对误差模型进行变形,可以得到:
其中,J为雅克比矩阵,Δa
i为臂长偏差值,Δθ
i为角度偏差值和Δk
i为减速比修正值的偏差值。
本实施例中,假定机器人具有两个平移轴,两个平移轴的角度分别用θ
1和θ
2表示。当第一目标点的个数为N个时,误差模型方程组可以表示为:
本实施例中,可以将机器人对准每个第一目标点时,获取的机器人的坐标偏移值(X,Y)以及每个平移轴的角度θ
i带入上述误差模型方程组中,然后利用矩阵左除求出Δa
1,Δθ
1,Δk
1,Δa
2,Δθ
2和Δk
2。
本实施例中,通过DH运动模型建立机器人的平移轴之间的关系表达式,并根据该关系表达式建立了误差模型,从而可以求得目标参数的偏移值。
本实施例中,根据目标参数的偏移值对机器人的多个平移轴进行校正时,可能由于在计算过程中的误差或者在获取数据过程中的误差导致校正后的结果并不能达到理论状态。对此,本实施例中,在利用目标参数的偏移值对机器人的多个平移轴进行校正后,对校正后的机器人再次执行步骤201至步骤204的步骤,使得机器人进行多次校正。
如图7所示,图7示出了一种对机器人的校正结果进行验证的方法的流程图。该方法包括以下步骤。
步骤701,向机器人发送第二对准控制指令,第二对准控制指令用于指示机器人对准棋盘格上的第二目标点。
本实施例中,棋盘格上的第二目标点的在棋盘格坐标系中的坐标值可以通过转换矩阵T转换到第二目标点在机器人的基坐标系中的理论坐标值。
可选的,第二对准控制指令可以是指第二目标点在机器人的基坐标系中的理论坐标值。
机器人接收到第二对准控制指令后,控制平移轴移动至基坐标系中的理论坐标值对应的位置点。
步骤702,获取机器人响应于第二对准控制指令而实际对准的第二实际点与第二目标点之间的第二位置偏移量。
机器人可以利用相机组件对棋盘格进行拍照,得到验证图像,并根据验证图像中的第二目标点和第二实际点之间的像素偏移量以及相机组件的相机坐标 系与机器人的基坐标系之间的转换矩阵A0确定出第二目标点和第二实际点在基坐标系中对应的第二位置偏移值。
步骤703,当第二位置偏移量小于预设阈值时,确定机器人的校正完成。
判断第二位置偏移值是否小于预设阈值,当第二位置偏移值小于预设阈值时,说明机器人对准的第二实际点与第二目标点之间的距离较小,可以将第二实际点与第二目标点之间的距离忽略,此时确定机器人对准了第二目标点,即机器人的校正完成。
当第二位置偏移值大于或等于预设阈值时,说明机器人对准的第二实际点与第二目标点之间的距离较大,因此,确定机器人并没有对准第二目标点。
当机器人并没有对准第二目标点时,需要重复步骤201-步骤204的内容,对机器人进行再次校正,直至机器人的校正完成。
在一种可选的实现方式中,第二目标点可以有多个。
机器人可以依次对准多个第二目标点,并获得对准每个第二目标点时,机器人的实际对准的点与每个第二目标点之间的第二位置偏移量。
可选的,本实施例中,可以对机器人对准多个第二目标点时的第二位置偏移量进行累加求和,当求和结果小于预设阈值时,确定机器人的校正完成。
当求和结果大于或等于预设阈值时,确定机器人仍需要再次校正。
本实施例,通过多次迭代验证的方式,对每次校正后的机器人的精度进行验证,从而确定校正完成的机器人的精度处于较高的状态。
请参考图8,示出了本申请实施例提供的一种机器人校正装置的框图,该机器人校正装置可以配置在图1所示实施环境中的机器人中。如图8所示,该机器人校正装置可以包括发送模块801,坐标获取模块802,偏移值获取模块803和校正模块804。
发送模块801设置为向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点。
坐标获取模块802设置为根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度。
偏移值获取模块802设置为根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值。
校正模块804设置为根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
在本申请的一个实施例中,机器人上设置有相机组件,坐标获取模块802还设置为在机器人对第一对准控制指令响应完毕之后,利用相机组件对棋盘格进行拍摄,得到棋盘格的图像;在棋盘格的图像中定位到第一目标点,并将棋盘格的图像中位于中心位置处的点作为第一实际点;将第一目标点和第一实际点在棋盘格的图像中的像素偏移量作为第一位置偏移量;根据第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点。
在本申请的一个实施例中,机器人上设置有相机组件,坐标获取模块802还设置为根据第一位置偏移量,控制机器人移动,在机器人移动结束后,判断机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量是否大于预设偏移量阈值;当机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量大于预设偏移量阈值时,根据当前位置偏移量控制机器人继续移动,直至机器人对准第一目标点为止。
在本申请的一个实施例中,校正模块804还设置为向机器人发送第二对准控制指令,第二对准控制指令用于指示机器人对准棋盘格上的第二目标点;获取机器人响应于第二对准控制指令而实际对准的第二实际点与第二目标点之间的第二位置偏移量;当第二位置偏移量小于预设阈值时,确定机器人的校正完成。
在本申请的一个实施例中,偏移值获取模块802还设置为根据机器人的坐标偏移值和机器人的多个平移轴的角度构建误差模型方程组,误差模型方程组用于确定机器人的目标参数的偏移值;对误差模型方程组进行求解,得到机器人的目标参数的偏移值。
在本申请的一个实施例中,第一目标点的个数为多个,且第一目标点的个数大于或等于机器人的平移轴的个数的预设倍数。
在本申请的一个实施例中,机器人的目标参数的偏移值包括机器人的每个平移轴的臂长偏差值、角度偏差值和减速比修正值的偏差值。
关于机器人校正装置的限定可以参见上文中对于机器人校正方法的限定,在此不再赘述。上述机器人校正装置中的每个模块可全部或部分通过软件、硬件及其组合来实现。上述每个模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上每个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是机器人的控制器或者服务器,该计算机设备的内部结构图可以如图9所示。该计算机设备包括通过***总线连接的处理器、存储器和网络接口。该计算机设备的处理器设置为提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口设置为与外部的终端通过网络连接通信。该计算机程序被处理器执行时实现一种机器人校正方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在本申请的一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点;根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度;根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:在机器人对第一对准控制指令响应完毕之后,利用相机组件对棋盘格进行拍摄,得到棋盘格的图像;在棋盘格的图像中定位到第一目标点,并将棋盘格的图像中位于中心位置处的点作为第一实际点;将第一目标点和第一实际点在棋盘格的图像中的像素偏移量作为第一位置偏移量;根据第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:根据第一位置偏移量,控制机器人移动,在机器人移动结束后,判断机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量是否大于预设偏移量阈值;当机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量大于 预设偏移量阈值时,根据当前位置偏移量控制机器人继续移动,直至机器人对准第一目标点为止。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:向机器人发送第二对准控制指令,第二对准控制指令用于指示机器人对准棋盘格上的第二目标点;获取机器人响应于第二对准控制指令而实际对准的第二实际点与第二目标点之间的第二位置偏移量;当第二位置偏移量小于预设阈值时,确定机器人的校正完成。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:根据机器人的坐标偏移值和机器人的多个平移轴的角度构建误差模型方程组,误差模型方程组用于确定机器人的目标参数的偏移值;对误差模型方程组进行求解,得到机器人的目标参数的偏移值。
本申请实施例提供的计算机设备,实现原理与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现以下步骤:向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点;根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度;根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。
在本申请的一个实施例中,计算机程序被处理器执行时还可以实现以下步骤:在机器人对第一对准控制指令响应完毕之后,利用相机组件对棋盘格进行拍摄,得到棋盘格的图像;在棋盘格的图像中定位到第一目标点,并将棋盘格的图像中位于中心位置处的点作为第一实际点;将第一目标点和第一实际点在棋盘格的图像中的像素偏移量作为第一位置偏移量;根据第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点。
在本申请的一个实施例中,计算机程序被处理器执行时还可以实现以下步骤:根据第一位置偏移量,控制机器人移动,在机器人移动结束后,判断机器人当前指向的当前实际点与第一目标点之间的当前位置偏移量是否大于预设偏移量阈值;当机器人当前指向的当前实际点与第一目标点之间的当前位置偏移 量大于预设偏移量阈值时,根据当前位置偏移量控制机器人继续移动,直至机器人对准第一目标点为止。
在本申请的一个实施例中,计算机程序被处理器执行时还可以实现以下步骤:向机器人发送第二对准控制指令,第二对准控制指令用于指示机器人对准棋盘格上的第二目标点;获取机器人响应于第二对准控制指令而实际对准的第二实际点与第二目标点之间的第二位置偏移量;当第二位置偏移量小于预设阈值时,确定机器人的校正完成。
在本申请的一个实施例中,计算机程序被处理器执行时还可以实现以下步骤:根据机器人的坐标偏移值和机器人的多个平移轴的角度构建误差模型方程组,误差模型方程组用于确定机器人的目标参数的偏移值;对误差模型方程组进行求解,得到机器人的目标参数的偏移值。
本申请实施例提供的计算机可读存储介质,实现原理与上述方法实施例类似,在此不再赘述。
本申请实施例提供的技术方案至少可以:上述机器人校正方法、装置、计算机设备及存储介质,通过向机器人发送第一对准控制指令,第一对准控制指令用于指示机器人对准棋盘格上的第一目标点;根据机器人响应于第一对准控制指令而实际对准的第一实际点与第一目标点之间的第一位置偏移量,控制机器人由实际对准的第一实际点移动至第一目标点,并在机器人移动至第一目标点之后获取机器人的坐标值以及机器人的多个平移轴的角度;根据机器人的坐标值以及第一目标点的坐标值确定机器人的坐标偏移值;根据机器人的坐标偏移值和机器人的多个平移轴的角度计算机器人的目标参数的偏移值,并根据目标参数的偏移值对目标参数进行校正处理。由此可知,本申请通过控制机器人对准棋盘格上的多个第一目标点来确定机器人的坐标偏移值,并根据机器人的坐标偏移值对机器人的目标参数进行校正,机器人在棋盘格上的操作较为简单,且棋盘格成本较低,因此,比相关技术的成本更低,操作更简便。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。本申请所提供的每个实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、可编程ROM (Programmable Read-Only Memory,PROM)、电可编程ROM(Electrically Programmable Read-Only Memory,EPROM)、电可擦除可编程ROM(Electrically Erasable Programmable Read-Only Memory,EEPROM)或闪存。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(Static Random Access Memory,SRAM)、动态RAM(Dynamic Random Access Memory,DRAM)、同步DRAM(Synchronous Dynamic Random Access Memory,SDRAM)、双数据率SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory,DDRSDRAM)、增强型SDRAM(Enhanced Synchronous Dynamic Random Access Memory,ESDRAM)、同步链路DRAM(SyncLink Dynamic Random Access Memory,SLDRAM)、存储器总线直接RAM(Rambus Direct Random Access Memory,RDRAM)、直接存储器总线动态RAM(Direct Rambus Random Access Memory,DRDRAM)、以及存储器总线动态RAM(Rambus Random Access Memory,RDRAM)等。
Claims (10)
- 一种机器人校正方法,包括:向所述机器人发送第一对准控制指令,其中,所述第一对准控制指令用于指示所述机器人对准棋盘格上的第一目标点;根据所述机器人响应于所述第一对准控制指令而实际对准的第一实际点与所述第一目标点之间的第一位置偏移量,控制所述机器人由实际对准的所述第一实际点移动至所述第一目标点,并在所述机器人移动至所述第一目标点之后获取所述机器人的坐标值以及所述机器人的多个平移轴的角度;根据所述机器人的坐标值以及所述第一目标点的坐标值确定所述机器人的坐标偏移值;根据所述机器人的坐标偏移值和所述机器人的多个平移轴的角度计算所述机器人的目标参数的偏移值,并根据所述目标参数的偏移值对所述目标参数进行校正处理。
- 根据权利要求1所述的方法,其中,所述机器人上设置有相机组件,所述根据所述机器人响应于所述第一对准控制指令而实际对准的第一实际点与所述第一目标点之间的第一位置偏移量,控制所述机器人由实际对准的所述第一实际点移动至所述第一目标点,包括:在所述机器人对所述第一对准控制指令响应完毕之后,利用所述相机组件对所述棋盘格进行拍摄,得到所述棋盘格的图像;在所述棋盘格的图像中定位到所述第一目标点,并将所述棋盘格的图像中位于中心位置处的点作为所述第一实际点;将所述第一目标点和所述第一实际点在所述棋盘格的图像中的像素偏移量作为所述第一位置偏移量;根据所述第一位置偏移量,控制所述机器人由实际对准的所述第一实际点移动至所述第一目标点。
- 根据权利要求1所述的方法,其中,所述机器人上设置有相机组件,所述根据所述机器人响应于所述第一对准控制指令而实际对准的第一实际点与所述第一目标点之间的第一位置偏移量,控制所述机器人由实际对准的所述第一实际点移动至所述第一目标点,包括:根据所述第一位置偏移量,控制所述机器人移动,在所述机器人移动结束后,判断所述机器人当前指向的当前实际点与所述第一目标点之间的当前位置偏移量是否大于预设偏移量阈值;响应于所述机器人当前指向的所述当前实际点与所述第一目标点之间的当 前位置偏移量大于所述预设偏移量阈值的判断结果,根据所述当前位置偏移量控制所述机器人继续移动,直至所述机器人对准所述第一目标点为止。
- 根据权利要求1所述的方法,在所述根据所述目标参数的偏移值对所述目标参数进行校正处理之后,还包括:向所述机器人发送第二对准控制指令,所述第二对准控制指令用于指示所述机器人对准所述棋盘格上的第二目标点;获取所述机器人响应于所述第二对准控制指令而实际对准的第二实际点与所述第二目标点之间的第二位置偏移量;在所述第二位置偏移量小于预设阈值的情况下,确定所述机器人的校正完成。
- 根据权利要求1所述的方法,其中,所述根据所述机器人的坐标偏移值和所述机器人的多个平移轴的角度计算所述机器人的目标参数的偏移值,包括:根据所述机器人的坐标偏移值和所述机器人的多个平移轴的角度构建误差模型方程组,其中,所述误差模型方程组用于确定所述机器人的目标参数的偏移值;对所述误差模型方程组进行求解,得到所述机器人的目标参数的偏移值。
- 根据权利要求1至5任一所述的方法,其中,所述第一目标点的个数为多个,且所述第一目标点的个数大于或等于所述机器人的平移轴的个数的预设倍数。
- 根据权利要求1至5任一所述的方法,其中,所述机器人的目标参数的偏移值包括所述机器人的每个平移轴的臂长偏差值、角度偏差值和减速比修正值的偏差值。
- 一种机器人校正装置,包括:发送模块,设置为向所述机器人发送第一对准控制指令,其中,所述第一对准控制指令用于指示所述机器人对准棋盘格上的第一目标点;坐标获取模块,设置为根据所述机器人响应于所述第一对准控制指令而实际对准的第一实际点与所述第一目标点之间的第一位置偏移量,控制所述机器人由实际对准的所述第一实际点移动至所述第一目标点,并在所述机器人移动至所述第一目标点之后获取所述机器人的坐标值以及所述机器人的多个平移轴的角度;偏移值获取模块,设置为根据所述机器人的坐标值以及所述第一目标点的坐标值确定所述机器人的坐标偏移值;校正模块,设置为根据所述机器人的坐标偏移值和所述机器人的多个平移轴的角度计算所述机器人的目标参数的偏移值,并根据所述目标参数的偏移值对所述目标参数进行校正处理。
- 一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其中,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法。
- 一种计算机可读存储介质,存储有计算机程序,其中,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010127614.1 | 2020-02-28 | ||
CN202010127614.1A CN111438688B (zh) | 2020-02-28 | 2020-02-28 | 机器人校正方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021169855A1 true WO2021169855A1 (zh) | 2021-09-02 |
Family
ID=71648819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/076987 WO2021169855A1 (zh) | 2020-02-28 | 2021-02-20 | 机器人校正方法、装置、计算机设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111438688B (zh) |
WO (1) | WO2021169855A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115946123A (zh) * | 2023-01-16 | 2023-04-11 | 佛山智能装备技术研究院 | 工业机器人多工具中心点及零点标定方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111438688B (zh) * | 2020-02-28 | 2022-03-22 | 广东拓斯达科技股份有限公司 | 机器人校正方法、装置、计算机设备及存储介质 |
CN112223280A (zh) * | 2020-09-27 | 2021-01-15 | 广东以诺通讯有限公司 | 一种机械手坐标校准方法和*** |
CN113911621B (zh) * | 2021-09-23 | 2023-03-07 | 江苏齐鑫智能科技有限公司 | 一种智能档案柜***扫描储位方法 |
CN114052915B (zh) * | 2021-11-02 | 2023-11-21 | 武汉联影智融医疗科技有限公司 | 手术机器人定位精度的测试方法、***和模体 |
CN116038698A (zh) * | 2022-12-27 | 2023-05-02 | 上海深其深网络科技有限公司 | 一种机器人引导方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62156701A (ja) * | 1985-12-27 | 1987-07-11 | Yaskawa Electric Mfg Co Ltd | ロボットシステムによる組立部品の座標キャリブレーション方法 |
CN105066884A (zh) * | 2015-09-09 | 2015-11-18 | 大族激光科技产业集团股份有限公司 | 一种机器人末端定位偏差校正方法及*** |
CN106671081A (zh) * | 2016-11-30 | 2017-05-17 | 同济大学 | 一种基于单目视觉的少自由度机器人运动学标定方法 |
CN110202582A (zh) * | 2019-07-03 | 2019-09-06 | 桂林电子科技大学 | 一种基于三坐标平台的机器人标定方法 |
CN111438688A (zh) * | 2020-02-28 | 2020-07-24 | 广东拓斯达科技股份有限公司 | 机器人校正方法、装置、计算机设备及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5083073A (en) * | 1990-09-20 | 1992-01-21 | Mazada Motor Manufacturing U.S.A. Corp. | Method and apparatus for calibrating a vision guided robot |
JP4167940B2 (ja) * | 2003-05-29 | 2008-10-22 | ファナック株式会社 | ロボットシステム |
CN103231375A (zh) * | 2013-04-28 | 2013-08-07 | 苏州大学 | 基于距离误差模型的工业机器人标定方法 |
DE102016116702B4 (de) * | 2015-09-14 | 2019-01-24 | Fanuc Corporation | Messsystem zum Kalibrieren der mechanischen Parameter eines Roboters |
CN105773609A (zh) * | 2016-03-16 | 2016-07-20 | 南京工业大学 | 一种基于视觉测量及距离误差模型的机器人运动学标定方法 |
WO2018053430A1 (en) * | 2016-09-16 | 2018-03-22 | Carbon Robotics, Inc. | System and calibration, registration, and training methods |
CN109605380B (zh) * | 2019-01-25 | 2021-09-17 | 甄圣超 | 一种Scara机器人交流伺服电机的驱动方法 |
CN110148187B (zh) * | 2019-06-04 | 2021-03-12 | 郑州大学 | 一种SCARA机械手Eye-in-Hand的高精度手眼标定方法和*** |
CN110717943A (zh) * | 2019-09-05 | 2020-01-21 | 中北大学 | 用于二维平面的眼在手上机械手手眼标定方法及*** |
-
2020
- 2020-02-28 CN CN202010127614.1A patent/CN111438688B/zh active Active
-
2021
- 2021-02-20 WO PCT/CN2021/076987 patent/WO2021169855A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62156701A (ja) * | 1985-12-27 | 1987-07-11 | Yaskawa Electric Mfg Co Ltd | ロボットシステムによる組立部品の座標キャリブレーション方法 |
CN105066884A (zh) * | 2015-09-09 | 2015-11-18 | 大族激光科技产业集团股份有限公司 | 一种机器人末端定位偏差校正方法及*** |
CN106671081A (zh) * | 2016-11-30 | 2017-05-17 | 同济大学 | 一种基于单目视觉的少自由度机器人运动学标定方法 |
CN110202582A (zh) * | 2019-07-03 | 2019-09-06 | 桂林电子科技大学 | 一种基于三坐标平台的机器人标定方法 |
CN111438688A (zh) * | 2020-02-28 | 2020-07-24 | 广东拓斯达科技股份有限公司 | 机器人校正方法、装置、计算机设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115946123A (zh) * | 2023-01-16 | 2023-04-11 | 佛山智能装备技术研究院 | 工业机器人多工具中心点及零点标定方法 |
CN115946123B (zh) * | 2023-01-16 | 2023-10-31 | 佛山智能装备技术研究院 | 工业机器人多工具中心点及零点标定方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111438688A (zh) | 2020-07-24 |
CN111438688B (zh) | 2022-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021169855A1 (zh) | 机器人校正方法、装置、计算机设备及存储介质 | |
CN108453701B (zh) | 控制机器人的方法、示教机器人的方法和机器人*** | |
CN113001535B (zh) | 机器人工件坐标系自动校正***与方法 | |
JP5850962B2 (ja) | ビジュアルフィードバックを利用したロボットシステム | |
JP6167622B2 (ja) | 制御システムおよび制御方法 | |
KR20220098699A (ko) | 로봇 모션 용 비전 시스템의 자동 핸드-아이 캘리브레이션을 위한 시스템 및 방법 | |
JP6429473B2 (ja) | ロボットシステム、ロボットシステムの校正方法、プログラム、およびコンピュータ読み取り可能な記録媒体 | |
CN110517320B (zh) | 基于uvw***的高速高精自动对位方法、装置、计算机设备 | |
WO2020173240A1 (zh) | 图像采集装置标定方法、装置、计算机设备和存储介质 | |
US20180161984A1 (en) | Control device, robot, and robot system | |
CN111801198A (zh) | 一种手眼标定方法、***及计算机存储介质 | |
US10632622B2 (en) | Error compensation device and error compensation method | |
JP2008012604A (ja) | 計測装置及びキャリブレーション方法 | |
JPWO2018043525A1 (ja) | ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法 | |
CN110842919B (zh) | 一种机器人打螺钉的视觉引导方法 | |
US20200262080A1 (en) | Comprehensive model-based method for gantry robot calibration via a dual camera vision system | |
CN113211431B (zh) | 基于二维码修正机器人***的位姿估计方法 | |
TWI701123B (zh) | 機器人工件座標系自動校正系統與方法 | |
EP4101604A1 (en) | System and method for improving accuracy of 3d eye-to-hand coordination of a robotic system | |
CN110682293A (zh) | 机器臂校正方法、装置、机器臂的控制器和存储介质 | |
US7957834B2 (en) | Method for calculating rotation center point and axis of rotation, method for generating program, method for moving manipulator and positioning device, and robotic system | |
US20220395981A1 (en) | System and method for improving accuracy of 3d eye-to-hand coordination of a robotic system | |
WO2023083056A1 (zh) | 用于标定机器人的运动学参数的方法和装置 | |
CN115741720A (zh) | 基于双目视觉技术及lm算法的机器人的零点标定***及其方法 | |
JP6668321B2 (ja) | 誤差補償装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21761099 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21761099 Country of ref document: EP Kind code of ref document: A1 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21761099 Country of ref document: EP Kind code of ref document: A1 |