Robot position setting measurement device, robot position setting measurement method, robot control device, teaching system, and simulation device
By acquiring the 3D commands and actual position information of the robot tool's front end, and using a homogeneous transformation matrix to correct the robot's coordinate system, the problem of setting the robot's coordinate system in complex environments was solved, and high-precision coordinate system correction was achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- FANUC LTD
- Filing Date
- 2022-02-24
- Publication Date
- 2026-05-26
AI Technical Summary
In complex production units, peripheral devices become obstacles, making it difficult to use 3D measuring instruments to measure the position information of the measurement points on the robot's reference plane and the reference reflector on the base, resulting in difficulties in setting the robot's coordinate system.
By employing a robot position measurement device, the three-dimensional command position and actual position information of the robot tool tip are obtained, and the robot coordinate system is corrected using a homogeneous transformation matrix to ensure that the difference in position information obtained under multiple postures is minimized.
Even in complex environments, it can set the robot's coordinate system with high precision, avoid interference from external devices, and simplify the coordinate system correction process.
Smart Images

Figure CN116867615B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a robot positioning measurement device, a positioning measurement method, a robot control device, a teaching system, and a simulation device. Background Technology
[0002] A robot system is known that uses a three-dimensional measuring device, similar to a radar tracking system, to establish the robot's coordinate system (see, for example, Patent Document 1). This robot system establishes the robot's coordinate system on the reference plane based on measurement results of at least the vertical position coordinates of three or more measuring points on a reference plane on which the robot is set, and measurement results of the position information of multiple reference reflectors located at the base of the robot.
[0003] According to this robot system, the actual coordinate system of the robot can be determined by measurement. For example, the coordinate system of the robot that is ideally set in offline simulation can be corrected to the actual coordinate system.
[0004] Existing technical documents
[0005] Patent documents
[0006] Patent Document 1: Japanese Patent Application Publication No. 2019-77016 Summary of the Invention
[0007] The problem the invention aims to solve
[0008] However, in situations involving complex production units, peripheral devices can become obstacles, making it difficult to measure the positional information of measurement points on the robot's reference plane and the reference reflector located at the robot's base using a 3D measuring instrument. Therefore, it is desirable to be able to set the robot's coordinate system with high precision even when it is difficult to measure the reference plane measurement points or the reference reflector located at the robot's base using a 3D measuring instrument.
[0009] Solution for solving the problem
[0010] One aspect of the present invention is a robot positioning and measuring device, comprising: a first position information acquisition unit that acquires first position information when the robot is positioned in an arbitrary posture, the first position information being a three-dimensional commanded position of a tool tip point fixed to a flange at the front end of the robot; a second position information acquisition unit that acquires second position information in the posture using a three-dimensional measuring device set in a predetermined measuring coordinate system, the second position information being the three-dimensional actual position of the tool tip point; and a coordinate system correction unit that corrects the robot coordinate system, which serves as the reference for the robot's actions, so that the difference between the first position information and the second position information acquired when the robot is positioned in multiple different postures is reduced. Attached Figure Description
[0011] Figure 1 This is an overall structural diagram of a robot system equipped with a positioning measuring device according to one embodiment of the present invention.
[0012] Figure 2 It means in Figure 1 A block diagram of the robot control device that controls the robot in a robot system.
[0013] Figure 3 It means Figure 1 A side view of the position measurement device of the robot system.
[0014] Figure 4 It means control Figure 3 Block diagram of the measurement control device for the position measuring device.
[0015] Figure 5 It means Figure 1 A block diagram of the setting position measuring device.
[0016] Figure 6 This is an explanatory diagram illustrating the coordinate system and homogeneous transformation matrix of a positioning measurement method according to one embodiment of the present invention.
[0017] Figure 7 This is an explanation Figure 6 The flowchart shows the method for setting up the location measurement.
[0018] Figure 8 This is a block diagram illustrating a robot control device according to one embodiment of the present invention.
[0019] Figure 9 It means Figure 5 A block diagram of a modified example of a position measuring device.
[0020] Figure 10 This is an example of a display screen illustrating a teaching system according to an embodiment of the present invention. Detailed Implementation
[0021] Hereinafter, a robot positioning measuring device 1 and a positioning measuring method according to an embodiment of the present invention will be described with reference to the accompanying drawings.
[0022] like Figure 1 As shown, the robot positioning measuring device 1 of this embodiment is provided in a robot system (teaching system) 100, which includes: a robot 20, a robot control device 30 for controlling the robot 20, a simulation device 40, and a positioning measuring device (three-dimensional measuring device) 50.
[0023] The robot 20 is used to perform predetermined operations such as spot welding on a workpiece (not shown). It has multiple drive axes and multiple servo motors 11 that drive each drive axis. Various servo motors, such as rotary motors and linear motors, can be used as each servo motor 11. Each servo motor 11 has a built-in work position detection device, such as an encoder, to detect its working position, and the detection values from the work position detection device are sent to the robot control unit 30.
[0024] A machining tool 22 is mounted on the flange 21 at the front end of the robot 20.
[0025] like Figure 2 As shown, the robot control device 30 includes, for example, a robot control unit 31, which has a CPU, RAM, etc.; a display device 32; and a storage device 33, which has a non-volatile memory, ROM, etc. In addition, the robot control device 30 includes: a plurality of servo controllers 34, which are arranged to correspond to the servo motors 11 respectively; and a teach pendant 35, which is connected to the robot control device 30 and can be carried by the operator.
[0026] Alternatively, the teaching control panel 35 may be configured to be separate from the robot control device 30 and to communicate wirelessly with the robot control device 30.
[0027] The storage device 33 stores a system program 33a, which performs the basic functions of the robot control device 30. Additionally, the storage device 33 stores at least one motion program 33b created using the simulation device 40. Specifically, a three-dimensional model of the robot 20 and a model of the workpiece are created on the simulation device 40; for example, motion program 33b is created to weld multiple weld points while avoiding interference between the robot 20 and the workpiece.
[0028] The robot control unit 31 operates according to the system program 33a, reading the motion program 33b stored in the storage device 33 and temporarily storing it in RAM. Furthermore, according to the read motion program 33b, it sends control signals to the servo controller 34 and controls the servo amplifiers of each servo motor 11 of the robot 20. The robot control unit 31 generates command values based on a pre-set robot coordinate system to achieve the commanded positions of the flange center or tool tip point required in the motion program 33b.
[0029] like Figure 3 As shown, the position measuring device 50 includes a laser head 51 and a head drive unit 52. The laser head 51 emits a laser beam toward a reflective component fixed to the tip of the tool and receives reflected light from the reflective component. The reflective component is a spherical reflector fixed to the tip of the tool during the positioning measurement of the robot 20.
[0030] The head drive unit 52 includes a vertical axis motor 53 and a horizontal axis motor 54 for changing the orientation of the laser head 51. The vertical axis motor 53 rotates the laser head 51 and the horizontal axis motor 54 about a vertical axis. The horizontal axis motor 54 rotates the laser head 51 about a horizontal axis.
[0031] The vertical axis motor 53 and the horizontal axis motor 54 are connected to and controlled by the measurement and control device 60. The vertical axis motor 53 and the horizontal axis motor 54 have built-in encoders or other working position detection devices to detect their working positions, and the detection values from these devices are sent to the measurement and control device 60.
[0032] A laser head 51 is provided with a laser emission section 51a, from which laser light from a laser oscillator (not shown) is emitted. Additionally, a light sensor 51b is provided within the laser emission section 51a of the laser head 51 to receive reflected light from reflective components or the like. The laser head 51 is connected to a measurement and control device 60, which controls the emission of laser light from the laser emission section 51a of the laser head 51, and the detection result detected by the light sensor 51b is sent to the measurement and control device 60.
[0033] like Figure 4 As shown, the measurement control device 60 includes, for example, a control unit 61, which has a CPU, RAM, etc.; a display device 62; a storage device 63, which has a non-volatile memory, ROM, etc.; and an input device 64. Furthermore, the input device 64 may also be configured to communicate wirelessly with the measurement control device 60.
[0034] The storage device 63 stores the system program 63a, which undertakes the basic functions of the measurement and control device 60.
[0035] In addition, the measurement and control device 60 can be built into the position measuring device 50 or set in other locations outside the position measuring device 50.
[0036] The simulation device 40 is composed of a computer and stores three-dimensional models of one or more robots 20, machining tools 22, workpieces, and peripheral devices. The simulation device 40 creates motion programs by teaching the positions and movement speeds of multiple teaching points while moving the three-dimensional models of the robot 20 and machining tools 22 relative to the three-dimensional model of the workpiece. Furthermore, by executing the created motion programs, the simulation device 40 enables the three-dimensional models of the robot 20 and machining tools 22 to move according to the motion programs, simulating tasks such as interference inspection and production takt time measurement.
[0037] In the simulation device 40, as a prerequisite for creating the motion program, the x-direction of the robot coordinate system R0 is precisely aligned with the frontal direction of the robot 20, so that the robot 20 is set at the origin of the designed robot coordinate system R0. Furthermore, the position measuring device 50 is also set at the origin of the design-based measuring coordinate system L0, which is set relative to the origin of the aforementioned designed robot coordinate system R0. Moreover, the size and shape of the machining tool 22 mounted on the flange 21 of the robot 20 are set according to design values, and a design-based tool coordinate system T0 is set as observed from the flange coordinate system F0.
[0038] The positioning measuring device 1 in this embodiment is a device equipped with a CPU, RAM, etc., such as... Figure 1 As shown, it is connected to the robot control device 30, the simulation device 40, and the position measuring device 50.
[0039] like Figure 5 As shown, the position measuring device 1 includes a first position information acquisition unit 2, a second position information acquisition unit 3, and a coordinate system correction unit 4.
[0040] The first position information acquisition unit 2 sends commands to the robot control device 30 to cause the robot 20 to move and position itself in multiple postures, and acquires the position information (first position information) of the tool tip point of each posture commanded by the robot control device 30. At this time, the robot coordinate system (robot coordinate system, general coordinate system) in which the robot 20 performs its actions is the design coordinate system set in the simulation device 40, and the commanded position is also the design position information calculated based on the design values.
[0041] The second position information acquisition unit 3 sends a command to the measurement control device 60 to activate the position measuring device 50, causing the position measuring device 50 to measure the three-dimensional position of the reflective component positioned at the tool tip point of the actual robot 20, and to acquire the measured position information (second position information) from the position measuring device 50. The position information acquired at this moment is the actual position information of the tool tip point observed from the measurement coordinate system (unknown) set by the actual position measuring device 50.
[0042] The coordinate system correction unit 4 corrects the robot coordinate system based on the position information of the command position of the tool tip point obtained by the first position information acquisition unit 2 and the actual position information of the tool tip point obtained by the second position information acquisition unit 3, using the following method.
[0043] That is, such as Figure 6 As shown above, the position and orientation of the design measurement coordinate system L0, observed from the design robot coordinate system R0, are pre-set in the simulation device 40. Using the homogeneous transformation matrix A... UF This indicates these.
[0044] Furthermore, the flange coordinate system F0 observed from the robot coordinate system R0 in the design, and the tool coordinate system T0 set at the tool tip point in the design, can also be transformed using the homogeneous transformation matrix A. R A UT express.
[0045] Furthermore, the position and orientation of the actual measurement coordinate system L1 are unknown, and there is usually an error between the designed measurement coordinate system L0 and the actual measurement coordinate system L1. This error can be addressed using the homogeneous transformation matrix A. ΔUF This represents the actual measurement coordinate system L1 as observed from the design measurement coordinate system L0.
[0046] Furthermore, there is usually an error between the tool coordinate system T0 in the design and the actual tool coordinate system T1, which can be addressed using the homogeneous transformation matrix A. ΔUT This represents the actual tool coordinate system T1 as observed from the design tool coordinate system T0.
[0047] Furthermore, if these homogeneous transformation matrices are used, then the following formula (1) holds.
[0048] P = A -1 ΔUF (A -1 UF A R A UT A ΔUT (1)
[0049] Here, P is the homogeneous transformation matrix calculated based on the command position of the tool tip point observed from the design measurement coordinate system L0, and A -1 ΔUF A -1 UF They are A ΔUF A UF The inverse matrix.
[0050] Furthermore, the position measurement device 50 is used to acquire the actual position information of the tool tip point as observed from the actual measurement coordinate system L1.
[0051] The coordinate system correction unit 4 moves the robot 20 in multiple postures, thereby calculating the difference between the commanded position information of the tool tip point obtained according to formula (1) and the actual position information obtained by the position measuring device 50 in each posture, and identifies the homogeneous transformation matrix A that reduces the difference (e.g., the difference is minimized). ΔUF A ΔUT .
[0052] Furthermore, by utilizing the homogeneous transformation matrix A obtained in this way... ΔUF Thus, according to the homogeneous transformation matrix A shown in the following formula (2), new_UF This yields the actual measurement coordinate system L1 as observed from the actual robot coordinate system.
[0053] A new_UF =A UF A ΔUF (2)
[0054] Therefore, by calculating the homogeneous transformation matrix A new_UF The inverse matrix can be used to obtain the actual robot coordinate system as observed from the actual measurement coordinate system L1.
[0055] The coordinate system correction unit 4 performs correction by sending the corrected robot coordinate system obtained in this way to the simulation device 40 and replacing the robot coordinate system R0 set in the design of the simulation device 40 with the corrected robot coordinate system.
[0056] Furthermore, in the simulation device 40, the motion program is simulated offline using the corrected real robot coordinate system, thereby correcting the motion program so that the robot 20 and the machining tool 22 do not interfere with the workpiece or peripheral devices.
[0057] The following describes the method for measuring the setting position using the setting position measuring device 1 of this embodiment, which is configured in this way.
[0058] like Figure 7As shown, in the position measurement method of this embodiment, the number of measurements k is initialized (step S1), and the robot control device 30 controls the robot 20 according to the instructions from the first position information acquisition unit 2, thereby positioning it in an arbitrary posture (step S2). The first position information, which is the instruction position of the tool tip point at this time, is sent from the robot control device 30 to the first position information acquisition unit 2 and stored (step S3).
[0059] Next, in the posture positioned in step S2, the measurement control device 60 controls the position measuring device 50 to measure the position of the tool tip point according to the instruction from the second position information acquisition unit 3 (step S4). The second position information, which is composed of the measured position information of the tool tip point, is sent to the second position information acquisition unit 3 and stored (step S5).
[0060] Next, it is determined whether the number of measurements k has reached the specified number N0 (step S6). If the specified number N0 has not been reached, the number of measurements k is incremented (step S7), and the process starting from step S2 is repeated. The specified number N0 is, for example, N0 = 3.
[0061] When the number of measurements k reaches the specified number N0, all the stored first position information and second position information are sent to the coordinate system correction unit 4, and the robot coordinate system is corrected in the coordinate system correction unit 4 (step S8).
[0062] Thus, according to the positioning measuring device 1 and positioning measuring method of this embodiment, by positioning the robot 20 in multiple postures and measuring the position of the reflective component fixed at the tool tip point, the robot coordinate system can be corrected. Therefore, unlike conventional methods that use measuring points on the reference plane of the robot 20 and reflective components provided at the base of the robot 20, it has the following advantages: even in cases of complex production units, it does not hinder peripheral devices, and the robot coordinate system can be easily corrected.
[0063] Furthermore, in this embodiment, the coordinate system correction unit 4 simultaneously identifies the homogeneous transformation matrix A whose difference between the first position information and the second position information becomes smaller. ΔUF A ΔUT However, it is also possible to identify only one of them. For example, if the actual measurement coordinate system L1 is highly consistent with the design measurement coordinate system L0, or if the actual tool coordinate system T1 is highly consistent with the design tool coordinate system T0, it is sufficient to identify only one of them.
[0064] In this embodiment, the commanded position of the tool tip point is illustrated as the first information received by the first position information acquisition unit 2 from the robot control device 30. Alternatively, the first position information can also be obtained by the first position information acquisition unit 2 receiving the origin position of the flange coordinate system F0 from the robot control device 30 and calculating the position of the tool tip point.
[0065] Furthermore, in this embodiment, an example is shown where the position measuring device 1 and the robot control device 30 are set separately, but instead, as shown... Figure 8 As shown, the robot control device 30 may also include a position measuring device 1.
[0066] In this case, the robot control device 30 may also include: a parameter storage unit 36 that stores multiple error parameters for calculating the accurate position of the tool tip point based on the command value for the robot 20; and a mechanical error correction unit 37 that uses the error parameters stored in the parameter storage unit 36 to correct mechanical errors using known methods. Examples of mechanical errors include Denavit-Hartenberg parameters (D-H parameters) or gravity springs.
[0067] The robot control unit 31 uses the mechanical error correction unit 37 to correct mechanical errors using error parameters and generates command values that make the calculated command position the command position required in the motion program. As a result, when correcting the robot coordinate system, the accuracy of the command values obtained from the robot control unit 31 can be improved, and a more accurate robot coordinate system can be obtained.
[0068] Mechanical errors can be corrected beforehand through calibration, or they can be corrected simultaneously with the tool coordinate system and robot coordinate system using the mechanical error correction unit 37 provided in the robot control device 30.
[0069] In addition, in this embodiment, the degree of dependence between error parameters can be determined in the coordinate system correction unit 4. If the degree of dependence is high, the identification of the corresponding vector of the tool coordinate system is not performed.
[0070] The error parameter related to the measurement of the robot 20's set position is the correction value (x) of the measurement coordinate system. a y a z a w a p a r a ) and the correction value of the tool vector (x) b y b z b These nine.
[0071] If the vector with these error parameters as elements is set as q, the vector p representing the three-dimensional position of the tool tip can be expressed as follows using the function f considering the error model.
[0072] p = f(q)
[0073] The vector Δp representing the deviation between the position information of the commanded position of the tool tip and the measured actual position information can be approximated by the sum of linear combinations of small variations of each error parameter. In addition, JA is the Jacobian matrix.
[0074]
[0075] Since the radar tracking system is a three-dimensional measurement, three equations are established according to one measurement attitude. If these are extended to multiple measurement attitudes, the vector Δr representing the corresponding deviation and the Jacobian matrix D can be obtained and expressed as follows.
[0076] Δr = D·Δq
[0077] Generally, the error parameters are identified by solving the iterative estimation problem that minimizes Δr.
[0078] If the number of equations is set to N and the number of error parameters is set to M, the above Jacobian matrix D is provided as follows.
[0079] [Equation 1]
[0080]
[0081] When the number of equations is more than the number of unknowns, by converting [D]{p} = {q} to [D] T [D]{p} = [D] T {q}, the following formula can be obtained to solve the general least squares problem.
[0082] [Equation 2]
[0083]
[0084] [D] T [D] is an M×M matrix.
[0085] In the determination of the degree of subordination, the inner product Q of the unit vectors of each column vector of this [D] T [D] is calculated. For example, when 0.9 < Q ≤ 1, it can be determined that the degree of subordination is high.
[0086] For example, when the z-axis directions of the measurement coordinate system and the tool coordinate system are aligned, and each measurement posture involves rotation only around the Z-axis of the tool coordinate system, the z-components of the measurement coordinate system and the tool coordinate system are subordinate to each other. For example, when the correction amount for the z-component of the measurement coordinate system is the first error parameter, and the correction amount for the z-component of the tool coordinate system is the second error parameter, the aforementioned [D]... T The inner product Q of the vector in the first column of [D] and the unit vector in the second column satisfies the above condition. When the degree of dependence is high, the coordinate system correction unit 4 does not identify the corresponding vector of the tool coordinate system, that is, it does not calculate the correction amount of the z component of the tool coordinate system.
[0087] When the machining tool 22 fixed to the flange 21 of the robot 20 is, for example, a servo gun with a balancing mechanism, if the tool's posture changes along the pressure direction, i.e., the z-axis direction of the tool coordinate system, the position of the tool's tip point changes due to its own weight. If the position of the tool's tip point changes, the error increases and the calculation accuracy deteriorates. Therefore, during the robot 20's movement when correcting the robot coordinate system, it is positioned in several postures, such as the servo gun maintaining a posture in which the position of the tool's tip point does not change due to its own weight.
[0088] In this situation, it can be said that the z-components of the tool coordinate system and the measurement coordinate system are oriented almost in the same direction, indicating a high degree of dependence. With high dependence, it's impossible to distinguish which z-component of the tool coordinate system or the measurement coordinate system should be corrected, thus making it impossible to accurately identify the two homogeneous transformation matrices A. ΔUF A ΔUT Therefore, when the degree of dependence is high, the z-axis direction of the tool coordinate system is not calculated. Instead, the robot coordinate system can be set with high precision by using the drawing values and pre-measured values.
[0089] Alternatively, error parameters with small intrinsic values can be removed from the error parameter set until [D] is reached. T The ratio of the maximum intrinsic value to the minimum intrinsic value of [D] becomes a fixed value. Thus, for example, it is possible to detect and notify in advance of cases where the measurement attitudes are obviously adjacent and the correction amount of the measurement coordinate system cannot be calculated with high precision.
[0090] The Jacobian matrix D can be calculated before position information is obtained through measurement. By using the Jacobian matrix D, it is possible to know in advance which error parameters to calculate before starting the measurement. By knowing in advance the cases where the components of the tool coordinate system to be calculated are not to be calculated or cannot be calculated with high precision, the attitude to be measured can be studied in advance.
[0091] In addition, in this embodiment, such as Figure 9As shown, the position measuring device 1 may also include a tool coordinate system output unit 5.
[0092] After the tool coordinate system output unit 5 corrects the robot coordinate system in the coordinate system correction unit 4, it positions the robot 20 in any pose and calculates and outputs the tool coordinate system using the following method.
[0093] That is, the tool coordinate system output unit 5 receives the robot coordinate system corrected in the coordinate system correction unit 4. Then, the tool coordinate system output unit 5 calculates the position of the tool coordinate system based on the commanded position of the origin of the flange coordinate system (first position information) obtained from the robot control device 30 and the actual position of the tool tip point obtained from the position measuring device 50 (second position information).
[0094] After the robot coordinate system is corrected, because both the robot coordinate system and the measurement coordinate system are corrected with high precision, the homogeneous transformation matrix A of the measurement coordinate system observed from the robot coordinate system is... UF It becomes known.
[0095] Additionally, the homogeneous transformation matrix A of the flange coordinate system observed from the robot coordinate system. R It can also calculate the position with high precision based on the command obtained from the robot control device 30.
[0096] Furthermore, by obtaining the homogeneous transformation matrix P based on the actual tool tip point observed from the measurement coordinate system obtained from the position measuring device 50, the homogeneous transformation matrix A of the tool coordinate system observed from the origin of the flange coordinate system can be calculated according to formula (3). UT .
[0097] A UT =A -1 R A UF P (3)
[0098] Furthermore, the tool coordinate system output unit 5 only retrieves and outputs the homogeneous transformation matrix A. UT The position components are thus determined. Therefore, the tool coordinate system can be output while the robot 20 is positioned in a specific orientation, reducing the required time. Furthermore, when the tool coordinate system changes according to the orientation of the machining tool 22, it is sometimes desirable to create a graph of the tool coordinate system corresponding to the tool orientation. In this case, it is advantageous to obtain the tool coordinate system for each desired orientation.
[0099] When the tool coordinate system is calculated using the tool coordinate system output unit 5, the robot control device 30 can obtain more accurate command values and a more accurate tool coordinate system simply by using error parameters to correct mechanical errors.
[0100] Hereinafter, a teaching system 100 according to one embodiment of the present invention will be described with reference to the accompanying drawings.
[0101] The teaching system 100 of this embodiment is composed of a robot system, which includes: the robot 20 described above, a robot control device 30 for controlling the robot 20, a simulation device 40, a position measuring device (three-dimensional measuring instrument) 50, and a position measuring device 1 for setting. The simulation device 40 includes a display device (update unit) 41 such as a display screen, and an input device (update unit) such as a mouse or keyboard (not shown).
[0102] exist Figure 10 The following is an example of the display screen of the display device 41 of the analog device 40.
[0103] exist Figure 10 In the example shown, a setting button for the coordinate system of the three-dimensional measuring instrument, i.e., the position measuring device 50, is displayed on the left side of the screen. The operator can press the coordinate system setting button to input the coordinate system information.
[0104] exist Figure 10 The center of the displayed screen shows buttons for operating the robot control device 30 or the teach pendant 35.
[0105] By pressing the "Open Position Measurement Screen" button, the position measurement screen is displayed on the display device 32 of the robot control device 30.
[0106] By pressing the "Set Coordinate System, etc." button, you can switch between valid and invalid tool coordinate system calculations, valid and invalid robot coordinate system calculations, input robot coordinate system and tool coordinate system in the design, and set load, etc.
[0107] By pressing the "Select Program" button, a program can be specified to make the robot 20 move when measuring the set position. If a program is specified, the specified program is converted into a measurement program after each action line, with additional measurement commands from the 3D measuring machine.
[0108] By pressing the "Execute" button, the robot control device 30 causes the robot 20 to perform actions according to the set measurement program, and uses the set position measuring device 1 to calculate the corrected robot coordinate system.
[0109] exist Figure 10On the upper right side of the display screen shown, there is an "error display unit 42" that displays error information between the robot coordinate system corrected by the position measuring device 1 and the robot coordinate system before correction. The error information displayed on the error display unit 42 can be displayed numerically or by overlaying the graphics of the robot coordinate systems before and after correction.
[0110] exist Figure 10 The lower right side of the displayed screen is provided with a model display unit 43 that displays a three-dimensional model of the robot 20 and the like obtained from the simulation device 40.
[0111] On this display screen, for example, by dragging the error information displayed on the error display unit 42 with the mouse, it can be moved (applied) to the model display unit 43. As a result, the display of the three-dimensional model of the robot 20 with the robot coordinate system set before correction, which is displayed on the model display unit 43, can be updated to the display of the three-dimensional model of the robot 20 with the robot coordinate system set after correction.
[0112] Alternatively, instead of updating the display in the model display unit 43, or based on this, the motion program created offline in the simulation device 40 can also be updated using error information. That is, the simulation device 40 has a receiving unit that receives error information of the robot coordinate system before and after correction. In the simulation device 40, the received error information is applied to the motion program created based on the designed robot coordinate system R0, thereby updating the motion program to be based on the corrected robot coordinate system.
[0113] Specifically, based on the error information of the robot coordinate system, the positions of each teach point in the motion program created according to the original robot coordinate system are offset. Executing this updated motion program offline in a simulation device allows for motion verification, such as interference checks.
[0114] And, by pressing on Figure 10 The "Load" button at the bottom center of the displayed screen loads the updated motion program from the simulation device 40 into the robot control device 30. This allows the robot 20 to perform actions using the motion program obtained through offline motion verification using a 3D model.
[0115] Furthermore, in the description of the teaching system 100, it is set to... Figure 10 The display screen is shown on the display device 41 set in the analog device 40, but it can also be shown on a display device attached to another computer.
[0116] In addition, an example was given of a case where the position measuring device 1 and the robot control device 30 are configured separately, but the position measuring device 1 can also be built into the robot control device 30.
[0117] Explanation of reference numerals in the attached figures:
[0118] 1: Install a position measuring device
[0119] 2: First Location Information Acquisition Unit
[0120] 3: Second Location Information Acquisition Unit
[0121] 4: Coordinate system correction section
[0122] 5: Tool Coordinate System Output Section
[0123] 10: Robot System (Teaching System)
[0124] 20: Robot
[0125] 21: Flange
[0126] 30: Robot control device
[0127] 36: Parameter storage unit
[0128] 37: Mechanical Error Correction Department
[0129] 40: Simulation device
[0130] 41: Display device (update unit)
[0131] 42: Error Display Unit
[0132] 43: Model Display Section
[0133] 50: Position measuring device (3D measuring instrument)
[0134] F0: Flange coordinate system
[0135] L0, L1: Measurement coordinate systems
[0136] R0: Robot coordinate system
[0137] T0, T1: Tool coordinate system
Claims
1. A robot control device, characterized in that, have: The first position information acquisition unit acquires first position information when the robot is positioned in an arbitrary posture. The first position information is the three-dimensional command position of the tool tip point fixed to the flange at the front end of the robot. The second position information acquisition unit acquires second position information by using a three-dimensional measuring device set in a predetermined measurement coordinate system under the posture. The second position information is the three-dimensional actual position of the tool tip point. A parameter storage unit stores multiple error parameters for calculating the command position of the tool tip point based on the command value for the robot. as well as The coordinate system correction unit corrects the robot coordinate system based on the plurality of error parameters, so as to reduce the difference between the first position information and the second position information obtained when the robot is positioned in multiple different postures.
2. The robot control device according to claim 1, characterized in that, The coordinate system correction unit identifies at least one of the tool coordinate system and the measurement coordinate system observed from the origin of the robot coordinate system to reduce the difference between the first position information and the second position information, and corrects the robot coordinate system according to the identified tool coordinate system and / or the measurement coordinate system, wherein the tool coordinate system defines the position and orientation from the origin of the flange coordinate system fixed to the flange to the tool tip point.
3. The robot control device according to claim 2, characterized in that, The coordinate system correction unit simultaneously identifies both the tool coordinate system and the measurement coordinate system to reduce the difference between the first position information and the second position information.
4. The robot control device according to claim 3, characterized in that, The coordinate system correction unit determines the degree of membership of the vector used to define the orientation of the tool coordinate system and the measurement coordinate system, and does not identify vectors that are determined to have a high degree of membership.
5. The robot control device according to any one of claims 2 to 4, characterized in that, The robot control device includes a tool coordinate system output unit. When the robot is positioned in an arbitrary posture, the tool coordinate system output unit calculates and outputs the tool coordinate system based on the command position of the origin of the flange coordinate system observed from the robot coordinate system corrected by the coordinate system correction unit, and the actual position of the tool tip point obtained by the three-dimensional measuring device.
6. The robot control device according to any one of claims 1 to 4, characterized in that, have: The mechanical error correction unit corrects the mechanical error of the robot using the error parameters stored in the parameter storage unit.
7. The robot control device according to any one of claims 1 to 4, characterized in that, The position and orientation of the measurement coordinate system relative to the robot coordinate system are unknown.
8. A method for measuring the positioning of a robot, characterized in that, include: Position the robot in two or more postures; In each of the aforementioned postures, first position information is obtained, wherein the first position information is the three-dimensional command position of the tool tip point fixed to the flange at the front end of the robot; In each of the aforementioned postures, a second position information is obtained using a three-dimensional measuring device set in a predetermined measurement coordinate system. The second position information is the actual three-dimensional position of the tool tip point. as well as The robot coordinate system, which serves as the reference for the robot's actions, is corrected based on multiple error parameters to reduce the difference between the acquired first position information and the second position information. The multiple error parameters are used to calculate the command position of the tool tip point based on the command value for the robot.
9. The robot positioning measurement method according to claim 8, characterized in that, Correcting the robot coordinate system includes: The tool coordinate system and at least one of the measurement coordinate system observed from the origin of the robot coordinate system are identified to reduce the difference, and the robot coordinate system is corrected according to the identified tool coordinate system and / or the measurement coordinate system, the tool coordinate system defining the position and orientation from the origin of the flange coordinate system fixed to the flange to the tool tip point.
10. The robot positioning measurement method according to claim 9, characterized in that, Correcting the robot coordinate system includes: Simultaneously identify both the tool coordinate system and the measurement coordinate system to reduce the difference.
11. The robot positioning measurement method according to claim 10, characterized in that, Correcting the robot coordinate system includes: The degree of membership of the vector used to define the orientation of the tool coordinate system and the measurement coordinate system is determined, and the vector that is determined to have a high degree of membership is not identified.
12. The method for measuring the set position of a robot according to any one of claims 8 to 11, characterized in that, The position and orientation of the measurement coordinate system relative to the robot coordinate system are unknown.
13. A teaching system, characterized in that, have: The robot control device according to any one of claims 1 to 7; A simulation device that can create motion programs offline based on the robot's three-dimensional model; The model display unit is capable of displaying a three-dimensional model of the robot; An error display unit displays error information, which represents the error between the robot coordinate system set in the simulation device before correction and the robot coordinate system corrected in the robot control device; and The updating unit applies the error information displayed on the error display unit to the three-dimensional model displayed in the model display unit, thereby updating at least one of the display of the three-dimensional model in the model display unit and the action program stored in the simulation device according to the error information.
14. A simulation device capable of creating motion programs offline based on a robot's three-dimensional model, characterized in that, The simulation device is configured to receive a corrected robot coordinate system from a setup position measuring device that corrects the robot's coordinate system based on the difference between first position information and second position information. The first position information is the three-dimensional commanded position of a tool tip point fixed to the flange of the robot's front end, calculated based on multiple error parameters used to calculate the commanded position of the tool tip point according to command values for the robot. The second position information is the three-dimensional actual position of the tool tip point. The simulation device includes: a model display unit, which is capable of displaying a three-dimensional model of the robot; An error display unit displays error information, which represents the error between the robot coordinate system set in the simulation device and the corrected robot coordinate system; and The updating unit updates at least one of the following based on the error information: the error information displayed on the error display unit is dragged and applied to the three-dimensional model displayed on the model display unit.