CN113580115A - Robot point location automatic correction method and device, medium and robot controller - Google Patents

Robot point location automatic correction method and device, medium and robot controller Download PDF

Info

Publication number
CN113580115A
CN113580115A CN202110864102.8A CN202110864102A CN113580115A CN 113580115 A CN113580115 A CN 113580115A CN 202110864102 A CN202110864102 A CN 202110864102A CN 113580115 A CN113580115 A CN 113580115A
Authority
CN
China
Prior art keywords
point location
point
coordinate
robot
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN202110864102.8A
Other languages
Chinese (zh)
Inventor
左登云
苏志伟
应坤
李飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gree Electric Appliances Inc of Zhuhai
Original Assignee
Gree Electric Appliances Inc of Zhuhai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gree Electric Appliances Inc of Zhuhai filed Critical Gree Electric Appliances Inc of Zhuhai
Priority to CN202110864102.8A priority Critical patent/CN113580115A/en
Publication of CN113580115A publication Critical patent/CN113580115A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/023Cartesian coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

The invention provides a robot point location automatic correction method, a device, a storage medium and a robot controller, wherein the method comprises the following steps: receiving a point location in any Cartesian space selected from a robot program as a first point location, and receiving a first calibration point location obtained by re-teaching the first point location; receiving any other point location in the Cartesian space selected from the robot program as a second point location, and receiving a second calibration point location obtained by re-teaching the second point location; determining a first coordinate deviation value of the first calibration point position and the first point position or a second coordinate deviation value of the second calibration point position and the second point position; determining the rotation angle of the workbench of the robot relative to a base coordinate system according to the point position coordinates of the first point position and the second point position; and obtaining corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value. The scheme of the invention can automatically correct the program point location.

Description

Robot point location automatic correction method and device, medium and robot controller
Technical Field
The invention relates to the field of control, in particular to a robot point location automatic correction method and device, a storage medium and a robot controller.
Background
In the industrial production process, according to the change of production environment, the condition that the worktable needs to be moved often appears, and the relative position of the robot and the workpiece changes at the moment. After the workbench is moved, if the recorded program point locations of the robot are not changed, the tool end of the robot cannot be guaranteed to reach the designated target point when the program is operated again, and therefore, the program point locations need to be modified to complete the production task.
Disclosure of Invention
The main purpose of the present invention is to overcome the above-mentioned defects in the prior art, and provide a method and a device for automatically correcting a point location of a robot, a storage medium, and a robot controller, so as to solve the problem of point location deviation after an industrial robot worktable moves in the prior art.
The invention provides a robot point location automatic correction method on one hand, which comprises the following steps: receiving a point location in any Cartesian space selected from a robot program as a first point location, and receiving a first calibration point location obtained by re-teaching the first point location; receiving any other point position in the Cartesian space selected from the robot program as a second point position, and receiving a second calibration point position obtained by re-teaching the second point position; determining a first coordinate deviation value of the first calibration point location and the first point location or a second coordinate deviation value of the second calibration point location and the second point location; determining the rotation angle of the workbench of the robot relative to a base coordinate system according to the point position coordinates of the first point position and the second point position; and obtaining corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value.
Optionally, obtaining corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value, includes: obtaining a rotation matrix according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value; and correcting the point location coordinates in all Cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates.
Optionally, the correcting, according to the rotation matrix, point location coordinates in all cartesian spaces in the robot program to obtain corrected point location coordinates includes: and multiplying the point location coordinates in other Cartesian spaces in the robot program by the rotation matrix to obtain corrected point location coordinates.
Optionally, the method further comprises: before receiving a second calibration point location obtained by re-teaching the second point location, judging whether the first point location has an offset in the X direction or the Y direction relative to the second point location; and if the deviation in the X direction or the Y direction exists, re-receiving the point in any other Cartesian space selected from the program as a second point.
Optionally, determining a rotation angle of the workbench of the robot relative to a base coordinate system according to the point location coordinate of the first point location and the point location coordinate of the second point location includes: by the formula of vector dot product
Figure BDA0003186722220000021
Calculating a rotation angle theta of the workbench relative to a base coordinate system; wherein, P1Is the point location coordinate of said first point location, P1' is a point location coordinate of the first calibration point location; p is a radical of2Is a point location coordinate of the second point location, P'2Is the point location coordinate of the second calibration point location,
Figure BDA0003186722220000022
another aspect of the present invention provides an automatic point location calibration device for a robot, including: the robot comprises a first receiving unit, a second receiving unit and a control unit, wherein the first receiving unit is used for receiving a point position in any Cartesian space selected from a robot program as a first point position and receiving a first calibration point position obtained by re-teaching the first point position; the second receiving unit is used for receiving any other point position in the Cartesian space selected from the robot program as a second point position and receiving a second calibration point position obtained by re-teaching the second point position; the first determining unit is used for determining a first coordinate deviation value of the first calibration point position and the first point position or a second coordinate deviation value of the second calibration point position and the second point position; the second determining unit is used for determining the rotation angle of the workbench of the robot relative to a base coordinate system according to the point position coordinates of the first point position and the second point position; and the correction unit is used for obtaining corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value.
Optionally, the obtaining, by the correction unit, a corrected point location coordinate according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value includes: obtaining a rotation matrix according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value; and correcting the point location coordinates in all Cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates.
Optionally, the correcting unit corrects the point location coordinates in all cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates, and the correcting unit includes: and multiplying the point location coordinates in other Cartesian spaces in the program by the rotation matrix to obtain corrected point location coordinates.
Optionally, the method further comprises: a determining unit, configured to determine whether the first point location has an offset in an X direction or a Y direction with respect to the second point location before the second receiving unit receives a second calibration point location re-taught to the second point location; the second determining unit is further configured to: and if the judging unit judges that the offset in the X direction or the Y direction exists, re-receiving the point location in any other Cartesian space selected from the program as a second point location.
Optionally, the second determination unit determines a rotation angle of the table of the robot with respect to the base coordinate system based on the point position coordinates of the first point position and the point position coordinates of the second point positionAnd (b) degree, comprising: by the formula of vector dot product
Figure BDA0003186722220000031
Calculating a rotation angle theta of the workbench relative to a base coordinate system; wherein, P1Is the coordinate of said first point location, P1' is a first calibration point location coordinate; p is a radical of2Is the coordinate of the second point location, P'2Is the coordinate of the second calibration point position,
Figure BDA0003186722220000041
a further aspect of the invention provides a storage medium having stored thereon a computer program which, when executed by a processor, carries out the steps of any of the methods described above.
Yet another aspect of the invention provides a robot controller comprising a processor, a memory, and a computer program stored on the memory and executable on the processor, the processor implementing the steps of any of the methods described above when executing the program.
The invention further provides a robot controller which comprises the robot point location automatic correction device.
According to the technical scheme of the invention, under the condition that the relative position of the industrial robot and the workpiece is changed, the deviation amount between the actual position and the program data recording position is calculated through calibration, all program point positions in Cartesian space stored in the program data are shifted according to coordinate transformation, and the program data are modified to offset the change of the relative position of the robot and the workpiece. When the workbench moves in the actual production process, the situation that the origin of the workpiece coordinate system exceeds the working space of the robot to cause that the correct workpiece coordinate system cannot be calibrated is avoided.
And after the relative position of the robot and the workpiece is changed, shifting the point position of the program by using an automatic point position correction method. The method only needs to select two point positions in the Cartesian space in the program for recalibration, automatically corrects all the point positions in the robot program through the offset between the actual position and the program data recording position, and modifies the program data, so that the situation that the workpiece coordinate system cannot be calibrated due to the limitation of the working space of the robot is avoided.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the invention and not to limit the invention. In the drawings:
FIG. 1 is a schematic diagram of a robot point location automatic correction method according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a method for automatically correcting a point location of a robot according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of an embodiment of the automatic robot point location correction device provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be clearly and completely described below with reference to the specific embodiments of the present invention and the accompanying drawings. It is to be understood that the described embodiments are merely exemplary of the invention, and not restrictive of the full scope of the invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in sequences other than those illustrated or described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
When the table needs to be moved, for example, in actual production, the table may need to be moved depending on a change in production environment, and the relative position between the robot and the workpiece may change.
Fig. 1 is a schematic method diagram of an embodiment of the robot point location automatic correction method provided by the present invention. (the method can be used on a controller, and the demonstrator is only used for displaying point positions and operation prompts)
As shown in fig. 1, according to an embodiment of the present invention, the method includes at least step S110, step S120, step S130, step S140, and step S150.
Step S110, receiving a point location in any Cartesian space selected from a robot program as a first point location, and receiving a first calibration point location obtained by re-teaching the first point location.
Specifically, a point offset function icon or button may be set in the program editing interface in advance. After the workbench is moved, clicking a point location offset function icon or button on a program editing interface, if point location offset is not selected, the program still runs according to the current point location, and if the relative position of the robot and the workpiece changes and is not processed in other modes, the position of the tail end of the robot tool which actually runs cannot be guaranteed to reach the target position; if point location deviation is selected, point location automatic correction is carried out, and after point location is corrected, the fact that the actual running position of the robot reaches the target position when the program is written can be achieved.
If the user selects the point location deviation function, a calibration prompt interface can be displayed, and the user selects the point location P in any Cartesian space in the program1(X1, Y1, Z1), selecting the point P by the user1As a first point location; the user re-teaches the point location through the demonstrator to obtain the point location P1'(X1', Y1', Z1') to re-teach the obtained point P1' as the first calibration point.
And step S120, receiving any point position in other Cartesian spaces selected from the robot program as a second point position, and receiving a second calibration point position obtained by re-teaching the second point position.
In particular, the user selects a second cartesian spatial down-point p in the robot program2(X2, Y2, Z2), namely P removal in the program1Any point location outside the point, the point location p selected by the user2As a second point, the user again teaches the point to obtain a point P 'through a demonstrator'2(X2 ', Y2 ', Z2 '), the point P ' obtained by the re-teaching '2As a second calibration point.
Preferably, before receiving a second calibration point location re-taught to the second point location, it is determined whether the first point location has a shift in the X direction or the Y direction with respect to the second point location; and if the deviation exists in the X direction or the Y direction, re-receiving any other point position in the Cartesian space selected from the robot program as a second point position, and receiving a second calibration point position obtained by re-teaching the second point position.
In particular, the second point p2The point position being relative to the first point position P1The dot locations must be offset in either the X or Y direction. For example, p is2And P1Subtracting the X, Y coordinate value of (1), if the absolute value of the difference is less than 10-6And mm, judging that no offset exists, popping up a prompt by a demonstrator to recalibrate, and otherwise, failing to calculate and needing recalibration.
Step S130, determining a first coordinate deviation value of the first calibration point location and the first point location or a second coordinate deviation value of the second calibration point location and the second point location.
Specifically, according to a difference value between cartesian coordinate values of the first calibration point location and the first point location, a coordinate deviation value between the first point location and the first calibration point location is determined. That is, the first calibration point P1' with the first point P1The cartesian coordinate values of (a) are subtracted, i.e., Δ X1 ═ X1' -X1, ("Δ Y1 ═ Y1' -Y1, (" Δ Z1 ═ Z1' -Z1) (using a vector method, a point offset vector is obtained by subtracting the starting point from the end point, because the point offset vector is obtained by subtracting the starting point from the end pointIn this case, Δ X1 ═ X1' -X1, Δ Y1 ═ Y1' -Y1, and Δ Z1 ═ Z1' -Z1) to obtain the first calibration point P)1' with said first point P1I.e., the coordinate deviation value of the actual position from the program data recording position.
Determining a coordinate deviation value of the second calibration point position and the second point position according to a difference value of the Cartesian coordinate values of the second calibration point position and the second point position; the second calibration point position P'2And said second point location p2The cartesian coordinate values of (a) are subtracted, that is, Δ X2 ═ X2 '-X2, Δ Y2 ═ Y2' -Y2, and Δ Z2 ═ Z2 '-Z2, to obtain the second calibration point P'2And a second point p2I.e., the coordinate deviation value of the actual position from the program data recording position.
Step S140, determining the rotation angle of the working platform of the robot relative to the base coordinate system according to the point position coordinates of the first point position and the second point position.
In particular, by P1And P1The cartesian coordinates of' calculate the differences Δ X, Δ Y, Δ Z as X, Y, Z directional displacements of the stage with respect to the base coordinate system. Vector quantity
Figure BDA0003186722220000081
By the formula of vector dot product
Figure BDA0003186722220000082
The rotation angle theta of the table with respect to the base coordinate system is obtained. Vector quantity
Figure BDA0003186722220000083
Is P1' and P1The coordinate values of the points are subtracted, that is, the above-mentioned Δ X1 ═ X1' -X1, Δ Y1 ═ Y1' -Y1, Δ Z1 ═ Z1' -Z1, and the vector
Figure BDA0003186722220000084
Is p2And p2The coordinate values of the point positions are subtracted from each other, that is, Δ X2 ═ X2 ' -X2, Δ Y2 ═ Y2 ' -Y2, and Δ Z2 ═ Z2 ' -Z2, and the rotation angle is solved as described aboveFormula (II)
Figure BDA0003186722220000085
Determining the angle of rotation
Figure BDA0003186722220000086
Wherein, P1Is the point location coordinate of said first point location, P1' is a point location coordinate of the first calibration point location; p is a radical of2Is a point location coordinate of the second point location, P'2And point location coordinates of the second calibration point location are obtained.
And S150, obtaining corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value.
In a specific embodiment, a rotation matrix is obtained according to the rotation angle and the first coordinate offset value or the second coordinate offset value. And correcting the point location coordinates in all Cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates. Namely, a rotation matrix is obtained according to the rotation angle and the first coordinate deviation value, or a rotation matrix is obtained according to the rotation angle and the first coordinate deviation value.
The rotation matrix of the deviation between the original position and the actual position of the two calibration point positions is as follows:
Figure BDA0003186722220000087
the displacement of the workbench relative to the base coordinate system only needs the offset of one calibration point, the offset of a point P1 or the offset of a point P2, and the offset calculation through the point P1 is only listed above.
Coordinate P of other point positions in Cartesian space in the robot program3Multiplying with the rotation matrix to obtain the shifted point location (multiplying with the matrix through the point location, as shown in the following formula)
Figure BDA0003186722220000091
The result is calculated as a new coordinate P'3) And obtaining the corrected point position coordinates. And modifying the data of the points in the Cartesian space in the program one by one until the data of the points in all the Cartesian spaces in the program is modified, and finishing the correction of the points of the program.
The robot program before the point offset is as follows:
Global Robtarget P1:=[364.000,0.000,-20.000,-200.000];
Global Robtarget P2:=[424.800,20.800,-20.000,0.000];
Global Robtarget P3:=[364.800,40.800,-20.000,250.000];
(the P1 and P2 used in the previous embodiment only represent any two points in the robot program, P1, P2 and P3 in the program are names of point locations, and any two points are selected as P1 and P2 points to carry out point location offset)
Proc main()
MovP(P1,tool0);
MovP(P2,tool0);
MovP(P3,tool0);
End Procroot
The worktable is moved by 20mm respectively along the X, Y, Z directions, the C direction is moved by 20 degrees, and the robot program after point displacement is as follows:
Global Robtarget P1:=[323.971,-151.917,-40.000,-220.000];
Global Robtarget P2:=[368.269,-125.747,-40.000,-20.000];
Global Robtarget P3:=[331.120,-98.383,-40.000,230.000];
Proc main()
MovP(P1,tool0);
MovP(P2,tool0);
MovP(P3,tool0);
End Procroot
according to the technical scheme, after the workbench moves, all point positions in the program can be automatically corrected only by manually teaching any two point positions in the program through the demonstrator, coordinate data can be modified, the operation steps are simple, the condition that the origin of a workpiece coordinate system exceeds the working space of the robot is avoided, and the program editing steps in the production process are simplified.
In another specific embodiment, a new coordinate system is established according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value, and the corrected point location coordinate is obtained based on the established new coordinate system. That is, during point position correction, after the displacement and rotation angle of the worktable in each direction are calculated, a new workpiece coordinate system is established according to the offset without modifying the point position, and the same point position correction purpose can be achieved through the conversion of the coordinate system.
Specifically, the coordinate deviation values Δ X, Δ Y, Δ Z of the stage with respect to the base coordinate system, and the rotation angle θ are obtained by the foregoing embodiments, and the calculation method is consistent with the above-described method. The obtained offset and rotation angle are stored in a new workpiece coordinate system, i.e., work1 ═ Δ X, Δ Y, Δ Z, θ. When writing a robot program, the same object can be achieved using the object coordinate system work1 after each movement instruction. )
In order to clearly illustrate the technical solution of the present invention, an implementation flow of the robot point location automatic correction method provided by the present invention is described below with a specific embodiment.
Fig. 2 is a schematic method diagram of an embodiment of the robot point location automatic correction method provided by the present invention. As shown in fig. 2, in a case that the workbench needs to be moved, after the workbench is moved, the point location offset function icon may be clicked on the program editing interface, if point location offset is not selected, the program still runs according to the current point location, and if the relative position of the robot and the workpiece changes and is not processed in other manners, it cannot be guaranteed that the actual running position of the end of the robot tool reaches the target position; if point location deviation is selected, point location automatic correction is carried out, and after point location is corrected, the fact that the actual running position of the robot reaches the target position when the program is written can be achieved. If the user selects the point location deviation function, a calibration prompt interface can be popped up, and the user selects any Cartesian space lower point location P in the program1(P1Point canAs a first point location for any point in the program), the point location is taught again by the demonstrator to obtain a point location P1'. Will P1And P1The cartesian coordinate values of 'are subtracted from each other, that is, Δ X ═ X1' -X1, Δ Y ═ Y1'-Y1, and Δ Z ═ Z1' -Z1, to obtain an offset value between the actual position and the program data recording position. Selecting any remaining Cartesian space down point P in the program2(p2The point may be in the program except for P1Any point other than the point is taken as a second point location), and the point location is taught again by the demonstrator to obtain a point location P'2Judgment of p2Dot position relative to P1And if the point position has no offset, recalibrating is needed, otherwise, calculation cannot be carried out.
By P1And P1The cartesian coordinates of' calculate the differences Δ X, Δ Y, Δ Z as X, Y, Z directional displacements of the stage with respect to the base coordinate system. Vector quantity
Figure BDA0003186722220000111
By the formula of vector dot product
Figure BDA0003186722220000112
And (3) solving the rotation angle theta of the workbench relative to the base coordinate system, solving a rotation matrix of the deviation between the original positions and the actual positions of the two calibration points, and multiplying the unchanged program point location by the rotation matrix to obtain the point location after the deviation. And modifying the data of the points in the Cartesian space in the program one by one until the data of the points in all the Cartesian spaces in the program is modified, and finishing the correction of the points of the program.
Fig. 3 is a schematic structural diagram of an embodiment of the automatic robot point location correction device provided in the present invention. (this apparatus may be used on a controller, and a teach pendant is used only for displaying point positions and operation prompts.) as shown in fig. 3, the robot point position automatic correction apparatus 100 includes a first receiving unit 110, a second receiving unit 120, a first determining unit 130, a second determining unit 140, and a correcting unit 150.
The first receiving unit 110 is configured to receive a point location in any cartesian space selected from the robot program as a first point location, and receive a first calibration point location obtained by re-teaching the first point location.
Specifically, a point offset function icon or button may be set in the program editing interface in advance. After the workbench is moved, clicking a point location offset function icon or button on a program editing interface, if point location offset is not selected, the program still runs according to the current point location, and if the relative position of the robot and the workpiece changes and is not processed in other modes, the position of the tail end of the robot tool which actually runs cannot be guaranteed to reach the target position; if point location deviation is selected, point location automatic correction is carried out, and after point location is corrected, the fact that the actual running position of the robot reaches the target position when the program is written can be achieved.
If the user selects the point location deviation function, a calibration prompt interface can be displayed, and the user selects the point location P in any Cartesian space in the program1(X1, Y1, Z1), selecting the point P by the user1As a first point location; the user re-teaches the point location through the demonstrator to obtain the point location P1'(X1', Y1', Z1') to re-teach the obtained point P1' as the first calibration point.
The second receiving unit 120 is configured to receive a point location in any other cartesian space selected from the robot program as a second point location, and receive a second calibration point location obtained by re-teaching the second point location.
In particular, the user selects a second cartesian spatial down-point p in the robot program2(X2, Y2, Z2), namely P removal in the program1Any point location outside the point, the point location p selected by the user2As a second point, the user again teaches the point to obtain a point P 'through a demonstrator'2(X2 ', Y2 ', Z2 '), the point P ' obtained by the re-teaching '2As a second calibration point.
Preferably, the apparatus 100 further comprises: a determining unit (not shown) configured to determine whether the first point location has a deviation in the X direction or the Y direction with respect to the second point location before the second receiving unit 120 receives the second calibration point location re-taught to the second point location; if there is a deviation in the X direction or the Y direction, the second receiving unit 120 receives a point location in any other cartesian space selected from the robot program as a second point location again, and receives a second calibration point location re-taught from the second point location.
In particular, the second point p2The point position being relative to the first point position P1The dot locations must be offset in either the X or Y direction. For example, p is2And P1Subtracting the X, Y coordinate value of (1), if the absolute value of the difference is less than 10-6And mm, judging that no offset exists, popping up a prompt by a demonstrator to recalibrate, and otherwise, failing to calculate and needing recalibration.
The first determining unit 130 is configured to determine a first coordinate deviation value of the first point location and the first calibration point location or a second coordinate deviation value of the second point location and the second calibration point location.
Specifically, according to a difference value between the cartesian coordinate values of the first calibration point location and the first point location, a coordinate deviation value between the first calibration point location and the first point location is determined. That is, the first calibration point P1' with the first point P1The first calibration point P is obtained by subtracting cartesian coordinate values of (Δ X1 ═ X1'-X1, (. DELTA.y 1 ═ Y1' -Y1), (. DELTA.z 1 ═ Z1 '-Z1) (by using a vector method, a point offset vector is obtained by subtracting a starting point from a terminal point, and thus, (. DELTA.x 1 ═ X1' -X1, (. DELTA.y 1 ═ Y1 '-Y1), and ═ Z1 ═ Z1' -Z1)1' with said first point P1I.e., the coordinate deviation value of the actual position from the program data recording position.
Determining a coordinate deviation value of the second point location and the second calibration point location according to a difference value of the Cartesian coordinate values of the second calibration point location and the second point location; the second calibration point position P'2And a second point p2The second point p is obtained by subtracting cartesian coordinate values of (a) X2 (X2 ' -X2), Y2 (Y2 ' -Y2), and (a) Z2 (Z2 ' -Z2)2And the second calibration pointP′2I.e., the coordinate deviation value of the actual position from the program data recording position.
The second determining unit 140 is configured to determine a rotation angle of the worktable of the robot with respect to the base coordinate system according to the point location coordinate of the first point location and the point location coordinate of the second point location.
In particular, by P1And P1The cartesian coordinates of' calculate the differences Δ X, Δ Y, Δ Z as X, Y, Z directional displacements of the stage with respect to the base coordinate system. Vector quantity
Figure BDA0003186722220000141
By the formula of vector dot product
Figure BDA0003186722220000142
The rotation angle theta of the table with respect to the base coordinate system is obtained. Vector quantity
Figure BDA0003186722220000143
Is P1' and P1The coordinate values of the points are subtracted, that is, the above-mentioned Δ X1 ═ X1' -X1, Δ Y1 ═ Y1' -Y1, Δ Z1 ═ Z1' -Z1, and the vector
Figure BDA0003186722220000144
Is p2And p2The coordinate values of the point positions are subtracted from each other, that is, Δ X2 ═ X2 ' -X2, Δ Y2 ═ Y2 ' -Y2, and Δ Z2 ═ Z2 ' -Z2, and the rotation angle is solved by the above formula
Figure BDA0003186722220000145
Determining the angle of rotation
Figure BDA0003186722220000146
Wherein, P1Is the point location coordinate of said first point location, P1' is a point location coordinate of the first calibration point location; p is a radical of2Is a point location coordinate of the second point location, P'2And point location coordinates of the second calibration point location are obtained.
And the correcting unit 150 is configured to obtain corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value.
In a specific embodiment, the calibration unit 150 obtains a rotation matrix according to the rotation angle and the first coordinate offset value or the second coordinate offset value; and correcting the point location coordinates in all Cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates.
The rotation matrix of the deviation between the original position and the actual position of the two calibration point positions is as follows:
Figure BDA0003186722220000147
the displacement of the workbench relative to the base coordinate system only needs the offset of one calibration point, the offset of a point P1 or the offset of a point P2, and the offset calculation through the point P1 is only listed above.
The calibration unit 150 maps the point coordinates P in other cartesian spaces in the robot program3The multiplication with the rotation matrix results in the shifted point locations (by multiplying the point locations with the matrix, as follows,
Figure BDA0003186722220000151
the result is calculated as a new coordinate P'3) And obtaining the corrected point position coordinates. And modifying the data of the points in the Cartesian space in the program one by one until the data of the points in all the Cartesian spaces in the program is modified, and finishing the correction of the points of the program.
The invention also provides a storage medium corresponding to the robot point location automatic correction method, and a computer program is stored on the storage medium, and when the program is executed by a processor, the steps of any one of the methods are realized.
The invention also provides a robot controller corresponding to the robot point location automatic correction method, which comprises a processor, a memory and a computer program stored on the memory and capable of running on the processor, wherein the processor realizes the steps of any one of the methods when executing the program.
The invention also provides a robot controller corresponding to the robot point location automatic correction device, which comprises any one of the robot point location automatic correction devices.
Therefore, according to the scheme provided by the invention, under the condition that the relative position of the industrial robot and the workpiece is changed, the deviation amount between the actual position and the program data recording position is calculated through calibration, all program point positions in the Cartesian space stored in the program data are subjected to deviation according to coordinate transformation, and the program data are modified to offset the change of the relative position of the robot and the workpiece. When the workbench moves in the actual production process, the situation that the origin of the workpiece coordinate system exceeds the working space of the robot to cause that the correct workpiece coordinate system cannot be calibrated is avoided.
And after the relative position of the robot and the workpiece is changed, shifting the point position of the program by using an automatic point position correction method. The method only needs to select two point positions in the Cartesian space in the program for recalibration, automatically corrects all the point positions in the program through the offset between the actual position and the program data recording position, and modifies the program data, so that the situation that the workpiece coordinate system cannot be calibrated due to the limitation of the working space of the robot is avoided.
The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Other examples and implementations are within the scope and spirit of the invention and the following claims. For example, due to the nature of software, the functions described above may be implemented using software executed by a processor, hardware, firmware, hardwired, or a combination of any of these. In addition, each functional unit may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
In the embodiments provided in the present application, it should be understood that the disclosed technology can be implemented in other ways. The above-described embodiments of the apparatus are merely illustrative, and for example, the division of the units may be a logical division, and in actual implementation, there may be another division, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, units or modules, and may be in an electrical or other form.
The units described as separate parts may or may not be physically separate, and the parts serving as the control device may or may not be physical units, may be located in one place, or may be distributed on a plurality of units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic or optical disk, and other various media capable of storing program codes.
The above description is only an example of the present invention, and is not intended to limit the present invention, and it is obvious to those skilled in the art that various modifications and variations can be made in the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the scope of the claims of the present invention.

Claims (12)

1. A robot point location automatic correction method is characterized by comprising the following steps:
receiving a point location in any Cartesian space selected from a robot program as a first point location, and receiving a first calibration point location obtained by re-teaching the first point location;
receiving any other point position in the Cartesian space selected from the robot program as a second point position, and receiving a second calibration point position obtained by re-teaching the second point position;
determining a first coordinate deviation value of the first calibration point location and the first point location or a second coordinate deviation value of the second calibration point location and the second point location;
determining the rotation angle of the workbench of the robot relative to a base coordinate system according to the point position coordinates of the first point position and the second point position;
and obtaining corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value.
2. The method of claim 1, wherein obtaining corrected point location coordinates according to the rotation angle and the first coordinate offset value or the second coordinate offset value comprises:
obtaining a rotation matrix according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value;
and correcting the point location coordinates in all Cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates.
3. The method of claim 2, wherein correcting point location coordinates in all Cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates comprises:
and multiplying the point location coordinates in other Cartesian spaces in the robot program by the rotation matrix to obtain corrected point location coordinates.
4. The method according to any one of claims 1-3, further comprising:
before receiving a second calibration point location obtained by re-teaching the second point location, judging whether the first point location has an offset in the X direction or the Y direction relative to the second point location;
and if the deviation in the X direction or the Y direction exists, re-receiving the point in any other Cartesian space selected from the program as a second point.
5. The method according to any one of claims 1-4, wherein determining the rotation angle of the table of the robot with respect to a base coordinate system based on the point location coordinates of the first point location and the point location coordinates of the second point location comprises:
by the formula of vector dot product
Figure FDA0003186722210000021
Calculating a rotation angle theta of the workbench relative to a base coordinate system;
wherein, P1Is a point location coordinate of the first point location, P'1Point location coordinates of the first calibration point location; p is a radical of2Is a point location coordinate of the second point location, P'2Is the point location coordinate of the second calibration point location,
Figure FDA0003186722210000022
6. the utility model provides a robot point location automatic correction device which characterized in that includes:
the robot comprises a first receiving unit, a second receiving unit and a control unit, wherein the first receiving unit is used for receiving a point position in any Cartesian space selected from a robot program as a first point position and receiving a first calibration point position obtained by re-teaching the first point position;
the second receiving unit is used for receiving any other point position in the Cartesian space selected from the robot program as a second point position and receiving a second calibration point position obtained by re-teaching the second point position;
the first determining unit is used for determining a first coordinate deviation value of the first calibration point position and the first point position or a second coordinate deviation value of the second calibration point position and the second point position;
the second determining unit is used for determining the rotation angle of the workbench of the robot relative to a base coordinate system according to the point position coordinates of the first point position and the second point position;
and the correction unit is used for obtaining corrected point location coordinates according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value.
7. The apparatus according to claim 6, wherein the correcting unit obtains the corrected point location coordinate according to the rotation angle and the first coordinate offset value or the second coordinate offset value, and includes:
obtaining a rotation matrix according to the rotation angle and the first coordinate deviation value or the second coordinate deviation value;
and correcting the point location coordinates in all Cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates.
8. The apparatus according to claim 7, wherein the correction unit corrects the point location coordinates in all cartesian spaces in the robot program according to the rotation matrix to obtain corrected point location coordinates, and includes:
and multiplying the point location coordinates in other Cartesian spaces in the program by the rotation matrix to obtain corrected point location coordinates.
9. The apparatus of any of claims 6-8, further comprising:
a determining unit, configured to determine whether the first point location has an offset in an X direction or a Y direction with respect to the second point location before the second receiving unit receives a second calibration point location re-taught to the second point location;
the second determining unit is further configured to: and if the judging unit judges that the offset in the X direction or the Y direction exists, re-receiving the point location in any other Cartesian space selected from the program as a second point location.
10. The apparatus according to any one of claims 6 to 9, wherein the second determination unit determines the rotation angle of the table of the robot with respect to the base coordinate system based on the point location coordinates of the first point location and the point location coordinates of the second point location, includes:
by the formula of vector dot product
Figure FDA0003186722210000031
Calculating a rotation angle theta of the workbench relative to a base coordinate system;
wherein, P1Is a coordinate, P 'of the first point location'1The first calibration point location coordinate is set; p is a radical of2Is the coordinate of the second point location, P'2Is the coordinate of the second calibration point position,
Figure FDA0003186722210000032
11. a storage medium, having stored thereon a computer program which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 5.
12. A robot controller comprising a processor, a memory, and a computer program stored in the memory and operable on the processor, wherein the processor executes the program to implement the steps of the method according to any one of claims 1 to 5, or comprises the automatic robot point location correction device according to any one of claims 6 to 10.
CN202110864102.8A 2021-07-29 2021-07-29 Robot point location automatic correction method and device, medium and robot controller Withdrawn CN113580115A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110864102.8A CN113580115A (en) 2021-07-29 2021-07-29 Robot point location automatic correction method and device, medium and robot controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110864102.8A CN113580115A (en) 2021-07-29 2021-07-29 Robot point location automatic correction method and device, medium and robot controller

Publications (1)

Publication Number Publication Date
CN113580115A true CN113580115A (en) 2021-11-02

Family

ID=78251917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110864102.8A Withdrawn CN113580115A (en) 2021-07-29 2021-07-29 Robot point location automatic correction method and device, medium and robot controller

Country Status (1)

Country Link
CN (1) CN113580115A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114290330A (en) * 2021-12-13 2022-04-08 库卡机器人制造(上海)有限公司 Calibration method and calibration device for robot, robot and readable storage medium
CN114638888A (en) * 2022-03-31 2022-06-17 广东利元亨智能装备股份有限公司 Position determination method and device, electronic equipment and readable storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114290330A (en) * 2021-12-13 2022-04-08 库卡机器人制造(上海)有限公司 Calibration method and calibration device for robot, robot and readable storage medium
CN114290330B (en) * 2021-12-13 2023-09-05 库卡机器人制造(上海)有限公司 Calibration method and calibration device for robot, and readable storage medium
CN114638888A (en) * 2022-03-31 2022-06-17 广东利元亨智能装备股份有限公司 Position determination method and device, electronic equipment and readable storage medium
CN114638888B (en) * 2022-03-31 2022-12-16 广东利元亨智能装备股份有限公司 Position determination method and device, electronic equipment and readable storage medium

Similar Documents

Publication Publication Date Title
CN113580115A (en) Robot point location automatic correction method and device, medium and robot controller
JP4271232B2 (en) Apparatus, method, program, and recording medium for executing offline programming of robot
EP1834738B1 (en) Teaching position correcting apparatus and teaching position correction method
JP4137909B2 (en) Robot program correction device
US20180290304A1 (en) Offline programming apparatus and method having workpiece position detection program generation function using contact sensor
CN113634871A (en) Robot friction stir welding track planning method based on offline programming
JP2021137946A (en) Information processing method, information processing system, and program
CN108705530B (en) Method and system for automatically correcting path of industrial robot
CN110142748A (en) A kind of quick teaching system of robot suitable for spraying welding profession and method
WO2020037496A1 (en) Method, device and system for correcting offline programming program, medium, and terminal
JP6849262B1 (en) Information processing method, information processing system, program
CN109311163B (en) Method for correcting motion control command of robot and related equipment thereof
JP6912529B2 (en) How to correct the visual guidance robot arm
JP5375703B2 (en) Numerical controller
CN112907669A (en) Camera pose measuring method and device based on coplanar feature points
CN107636418B (en) Robot control method, control equipment and system
JP5381063B2 (en) Machining parameter determination device, machining parameter determination method and program
JP2796016B2 (en) CAD system
US20230046827A1 (en) Robot programming device and robot programming method
CN115533924B (en) Cooperative motion control method and device, robot control device and storage medium
CN112621713B (en) Robot demonstrator, controller, robot demonstrator and robot demonstrator control method, robot demonstrator control device and robot demonstrator control medium
JP6079352B2 (en) ROBOT CONTROL METHOD, ROBOT CONTROL DEVICE, ROBOT, ROBOT SYSTEM, AND PROGRAM
CN113600650B (en) Automatic calibration method for coordinate system of robot pipe bending machine
WO2023073959A1 (en) Work assistance device and work assistance method
CN114194849B (en) Stacking error correction method and stacking robot

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20211102

WW01 Invention patent application withdrawn after publication