Robot system, control method, article manufacturing method, program, and recording medium
The robot system efficiently acquires the relative positional relationship between the robot and the workbench by moving a predetermined portion along a specific path while in contact with the workbench, addressing the time-consuming nature of conventional methods.
Patent Information
- Application Number
- JP2023151608
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-19
- Publication Date
- 2025-04-01
AI Technical Summary
Conventional methods for acquiring information about the relative positional relationship between a robot and a workbench are time-consuming due to the need for accurate positioning and contact with calibration jigs and L-shaped blocks.
A robot system comprising a robot, a workbench, and a control unit that acquires information about the positional relationship by moving a predetermined portion of the robot along a specific path while in contact with the workbench, using information from the moving route to calculate the positional relationship.
This approach allows for efficient acquisition of the relative positional relationship between the robot and the workbench, reducing the time and effort required for calibration and enabling quicker changes in work site layouts.
Smart Images

Figure 2025043975000001_ABST
Abstract
Description
[Technical field]
[0001] The present disclosure relates to robot technology. [Background technology]
[0002] In order to flexibly respond to changes in the layout of a work site such as a factory, it is considered to make the robot and / or the work table movable. When the robot and / or the work table is moved, the relative position between the robot and the work table changes. Therefore, it is necessary to obtain information on the relative positional relationship between the robot and the work table.
[0003] Conventionally, the three-point measurement method has been used to obtain information on the relative positional relationship between a robot and a workbench. The three-point measurement method is a method in which a tool attached to the tip of a robot arm is moved by operating the robot arm to obtain information on three positions, and the relative positional relationship between the robot and the workbench is calculated from the information on the three positions.
[0004] Patent Document 1 discloses a method for acquiring information on three positions by fitting a tool into three holes in a calibration jig. Patent Document 2 discloses a method for acquiring information on three positions by placing L-shaped blocks at three locations on a workbench and contacting each block with a tool. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] JP 2010-284750 A [Patent Document 2] JP 2015-33747 A Summary of the Invention [Problem to be solved by the invention]
[0006] However, with conventional methods, in order to obtain position information, the tool had to be precisely positioned and brought into contact with each of the calibration jig and L-shaped blocks, which was a time-consuming process.
[0007] The present disclosure provides a technique that is advantageous for acquiring information on the relative positional relationship between a robot and a workbench. [Means for solving the problem]
[0008] A first aspect of the present disclosure is a robot system comprising a robot, a workbench on which the robot works, and a control unit that controls the robot based on information on a relative positional relationship between the robot and the workbench, wherein the control unit acquires information on a position on a movement path when a predetermined part of the robot is moved from a first position via a second position to a third position while the predetermined part is in contact with the workbench, and acquires information on the positional relationship based on the information on the position on the movement path.
[0009] A second aspect of the present disclosure is a control method of a control unit that controls a robot based on information on a relative positional relationship between the robot and a worktable, characterized in that the control method obtains information on a position on a movement path when a predetermined part of the robot is moved from a first position via a second position to a third position while the predetermined part is in contact with the worktable, and obtains information on the positional relationship based on the information on the position on the movement path. Effect of the Invention
[0010] The present disclosure provides a technique that is advantageous for acquiring information on the relative positional relationship between a robot and a workbench. [Brief description of the drawings]
[0011] [Figure 1] FIG. 1 is an explanatory diagram of a robot system according to a first embodiment. [Diagram 2]1A is an explanatory diagram of a movable platform according to the first embodiment, and FIG. 1B is an explanatory diagram of functions of a control unit according to the first embodiment. [Diagram 3] 1 is a block diagram showing a configuration of a robot system according to a first embodiment. [Figure 4] FIG. 2 is an explanatory diagram of a jig according to the first embodiment. [Diagram 5] 4 is a flowchart of a control method in a calibration mode according to the first embodiment. [Figure 6] 4 is a flowchart of a part of a control method in a calibration mode according to the first embodiment. [Figure 7] 5(a) to 5(c) are diagrams illustrating a part of the process of a control method in a calibration mode according to the first embodiment. [Figure 8] 4 is a flowchart of a part of a control method in a calibration mode according to the first embodiment. [Figure 9] 4 is a flowchart of a part of a control method in a calibration mode according to the first embodiment. [Figure 10] 4 is a flowchart of a part of a control method in a calibration mode according to the first embodiment. [Figure 11] 1A is a schematic diagram for explaining a method of calculating a workpiece coordinate system according to the first embodiment, and FIG. 1B is a diagram for explaining teaching points according to the first embodiment. [Figure 12] 10 is a flowchart of a part of a control method in a calibration mode according to the second embodiment. [Figure 13] 13(a) and 13(b) are schematic diagrams for explaining a process according to a second embodiment. [Figure 14] 13 is a flowchart of a part of a control method in a calibration mode according to the third embodiment. [Figure 15] 13(a) and 13(b) are schematic views for explaining a process according to a third embodiment. [Figure 16] 13(a) and 13(b) are explanatory views of a jig according to a fourth embodiment. [Figure 17]13 is a flowchart of a part of a control method in a calibration mode according to the fifth embodiment. [Figure 18] 13 is a flowchart of a part of a control method in a calibration mode according to the fifth embodiment. [Figure 19] 13 is a flowchart of a part of a control method in a calibration mode according to the fifth embodiment. [Figure 20] FIG. 13 is a block diagram showing the configuration of a robot system according to a sixth embodiment. [Figure 21] FIG. 13 is an explanatory diagram of a robot system according to a seventh embodiment. [Figure 22] 23 is a flowchart of a control method in a calibration mode according to the seventh embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the drawings. The following embodiments are illustrative of preferred configurations of the present disclosure, and for example, those skilled in the art can appropriately modify the detailed configurations without departing from the spirit of the present disclosure. In addition, in the drawings referred to in the following description of the embodiments, elements indicated by the same reference numbers have the same functions unless otherwise noted. In addition, these drawings are represented diagrammatically for convenience of illustration and explanation, and therefore shapes, sizes, arrangements, etc. may not strictly match between the drawings.
[0013] In the following embodiments, directions based on the robot are indicated by the XYZ coordinate system, which is a three-dimensional Cartesian coordinate system. The X, Y, and Z directions are mutually orthogonal. In the XYZ coordinate system, the XY plane is a horizontal plane, and the XZ and YZ planes are vertical planes. The X and Y directions are horizontal directions. The negative direction of the Z axis is the vertical direction (gravity direction), in other words, the downward direction. The positive direction of the Z axis is the upward direction. The Z direction is also the height direction.
[0014] In the following description, for example, the positive direction of the X-axis refers to the same direction as the X-axis arrow in the XYZ coordinate system, and the negative direction of the X-axis refers to the direction 180 degrees opposite to the direction of the X-axis arrow in the XYZ coordinate system. Also, when simply referring to the X-direction, it refers to the direction parallel to the X-axis, regardless of whether it is in the same direction as the X-axis arrow. The same applies to the Y-axis and Z-axis other than the X-axis.
[0015] [First embodiment] FIG. 1 is an explanatory diagram of a robot system 1000 according to the first embodiment. The robot system 1000 includes a robot 100, a movable mobile platform 400, and a work platform 800. The work platform 800 is a platform on which the robot 100 works. The robot 100 includes a robot arm 101 and a probe 102, which is an example of a predetermined part. The robot arm 101 is, for example, a vertical articulated robot arm. The robot arm 101 is a multi-axis, for example, six-axis, robot arm. The robot arm 101 is used for manufacturing an article, or for transporting or picking a workpiece. The robot 100 may further include an end effector (not shown), or the probe 102 may be replaced with the end effector. The end effector may be, for example, a robot hand configured to be able to hold an object (not shown).
[0016] The robot 100 is, for example, an industrial robot. In a production line for manufacturing goods, the robot 100 can grasp a workpiece with a robot hand to carry it, assemble it to another workpiece, or grasp a tool to process the workpiece. Alternatively, the robot 100 can perform work by attaching an actuator other than the robot hand to the tip of the robot arm 101 instead of the robot hand, depending on the work content of the manufacturing process.
[0017] For example, a plurality of workpieces are arranged around the robot 100. An article that is an assembly can be manufactured by having the robot 100 hold one workpiece and assemble the workpiece to another workpiece. The assembly can be an intermediate product or a final product.
[0018] The robot 100 is positioned and arranged on a movable platform 400. The movable platform 400 can be moved by an operator. The work platform 800 has a work platform main body 851 and a jig 810 arranged on the main body 851. The main body 851 has a plane 852. The plane 852 is a horizontal plane. The jig 810 is positioned and arranged on the plane 852.
[0019] 2(a) is an explanatory diagram of the moving platform 400 according to the first embodiment. The robot system 1000 includes a control device 410, an input device 450, and an emergency stop switch 470, which are arranged inside the moving platform 400. The control device 410 is a device that controls the operation of the robot 100. The input device 450 is a device that can be operated by a user to input various information to the control device 410, and can be, for example, a teaching pendant. The emergency stop switch 470 is a device that can input an emergency stop signal to the control device 410.
[0020] 2(b) is an explanatory diagram of the function of the control unit 440 according to the first embodiment. The CPU of the control device 410 executes a program to function as the control unit 440. The control unit 440 selectively executes an operation mode M1 in which the robot 100 performs a manufacturing operation such as an assembly operation by controlling the operation of the robot 100, and a calibration mode M2 in which data such as a teaching point is calibrated. The jig 810 is used in the calibration mode M2. The operation mode M1 is an example of a first mode, and the calibration mode M2 is an example of a second mode.
[0021] In the operation mode M1, the control unit 440 acquires a plurality of teaching points, calculates trajectory data by interpolating the plurality of teaching points, and controls six joints of the robot arm 101 based on the trajectory data. The trajectory data includes a plurality of point data. Each point data in the trajectory data used for controlling the robot 100 may include position (angle) command data for the six joints.
[0022] 3 is a block diagram showing the configuration of a robot system 1000 according to the first embodiment. The robot arm 101 has a motor 131, an angle sensor 150, and a torque sensor 160 arranged at each joint.
[0023] The sensor 170 is configured to have a number of torque sensors 160 equal to the number of joints, and is used to obtain information on the force acting on the probe 102. The control unit 440 determines whether the probe 102 has come into contact with a jig 810 on the workbench 800 based on the force information obtained from the sensor 170.
[0024] The control device 410 is an information processing device configured by a computer. The control device 410 has a CPU (Central Processing Unit) 411 as a processor. The control device 410 also has a ROM (Read Only Memory) 412, a RAM (Random Access Memory) 413, and a HDD (Hard Disk Drive) 414 as examples of a storage unit. The control device 410 also has a recording disk drive 415 and a plurality of input / output interfaces (I / F) 416 to 419.
[0025] A ROM 412, a RAM 413, a HDD 414, a recording disk drive 415, and interfaces 416 to 419 are connected to the CPU 411 via a bus 420. A basic program that is read by the CPU 411 when the computer is started is stored in the ROM 412. The RAM 413 is a storage device that temporarily stores various data such as the results of calculations performed by the CPU 411.
[0026] The HDD 414 is a storage device that stores the results of arithmetic processing by the CPU 411 and various data acquired from the outside. A program 430 for causing the CPU 411 to execute arithmetic processing is recorded in this HDD 414. The CPU 411 functions as a control unit 440 that executes a control method described below based on the program 430 recorded (stored) in the HDD 414. The recording disk drive 415 can read out various data, programs, etc. recorded in the recording disk 431.
[0027] An input device 450 is connected to the interface 416. The CPU 411 acquires input data (input information) from the input device 450 via the interface 416 and the bus 420. An emergency stop switch 470 is connected to the interface 417. The interface 418 is configured to be connectable to an external storage device 480, which is a storage unit such as a rewritable nonvolatile memory or an external HDD.
[0028] The servo control device 130 is connected to the interface 419. The motors 131, angle sensors 150, and torque sensors 160 of the respective joints of the robot arm 101 are connected to the servo control device 130. The motors 131 are, for example, brushless DC motors or AC motors, and rotate the corresponding joints.
[0029] The angle sensor 150 is, for example, a rotary encoder, and is provided on the motor 131 so as to be able to obtain information on the rotation angle of the motor 131 .
[0030] The torque sensors 160 are disposed at the corresponding joints and are configured to be able to obtain information on the torque acting on the corresponding joints.
[0031] The CPU 411 can obtain angle information from the angle sensor 150 and torque information from the torque sensor 160 via the servo control device 130, the interface 419, and the bus 420. The servo control device 130 may convert the angle of the motor 131 detected by the angle sensor 150 into angle information of the corresponding joint and transmit it to the CPU 411.
[0032] The CPU 411 outputs command value data corresponding to each joint to the servo control device 130 via the bus 420 and the interface 419 at predetermined time intervals (for example, 1 ms).
[0033] The HDD 414 is also a non-transient recording medium readable by a computer. In this embodiment, the program 430 is stored in the HDD 414, but is not limited to this. The program 430 may be recorded in any recording medium as long as it is a non-transient recording medium readable by a computer. For example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a magnetic tape, or a non-volatile memory may be used as a recording medium for supplying the program 430. The optical disk is, for example, a disk medium such as a Blu-ray disk, a DVD, or a CD. The non-volatile memory is, for example, a storage device such as a USB memory, a memory card, a ROM, or an SSD. The program 430 may also be acquired via a network.
[0034] 4 is an explanatory diagram of a jig 810 according to the first embodiment. The jig 810 is placed on a flat surface 852 of a main body 851 of a work table 800 on which the robot 100 performs work.
[0035] The jig 810 has a plurality of blocks 811 to 813. The block 811 is a component having a flat surface 8110. The flat surface 8110 is a horizontal surface. The flat surface 8110 is a surface with which the tip of the probe 102 can come into contact.
[0036] A contact portion 820 is configured with the blocks 812 and 813. The contact portion 820 is formed in a shape that can be contacted by the tip of the probe 102 and that guides the probe 102 that has come into contact with the contact portion 820 to a reference position 815.
[0037] The block 812 is an example of a first protruding portion that protrudes with respect to the plane 8110, and is disposed on the plane 8110. The block 812 has a contact surface 8120 with which the tip of the probe 102 can come into contact. The contact surface 8120 is formed in a shape that guides the tip of the probe 102 to the reference position 815, and is, for example, a plane. The contact surface 8120 is a vertical surface that is perpendicular to the plane 8110. The block 812 extends parallel to an axis C2. The axis C2 is an example of a first axis.
[0038] The block 813 is an example of a second protruding portion that protrudes with respect to the plane 8110, and is disposed on the plane 8110. The block 813 has a contact surface 8130 with which the tip of the probe 102 can come into contact. The contact surface 8130 is formed in a shape that guides the tip of the probe 102 to the reference position 815, and is, for example, a plane. The contact surface 8130 is a vertical surface that is perpendicular to the plane 8110 and the contact surface 8130. The block 813 extends parallel to an axis C1. The axis C1 is an example of a second axis.
[0039] The plane 8110, the contact surface 8120, and the contact surface 8130 are perpendicular to each other. A position where the tip of the probe 102 contacts these three surfaces 8110, 8120, and 8130 is defined as a reference position 815. In the first embodiment, the probe 102 is installed at the tip of the robot arm 101. The tip of the probe 102 is formed in a spherical shape.
[0040] Here, the teaching points of the robot 100 can be created in a robot coordinate system Σ1 based on the robot 100, or a workpiece coordinate system Σ2 based on the worktable 800. The robot coordinate system Σ1 is an example of a first coordinate system. The workpiece coordinate system Σ2 is an example of a second coordinate system.
[0041] The robot coordinate system Σ1 is a three-dimensional orthogonal coordinate system based on the robot 100, for example, an XYZ coordinate system having mutually orthogonal X-axis, Y-axis, and Z-axis, and has its origin at the base of the robot 100. The workpiece coordinate system Σ2 is a three-dimensional orthogonal coordinate system based on the worktable 800, and has its origin at, for example, the reference position 815 of the jig 810.
[0042] If the teaching points are created based on the robot coordinate system Σ1, the operator needs to create the teaching points again every time the robot 100 is moved due to a layout change or the like.
[0043] On the other hand, when the teaching points are created based on the workpiece coordinate system Σ2, that is, when the teaching points are created at positions relative to the reference position 815, in the calibration mode M2, the control unit 440 may update the teaching points based on the workpiece coordinate system Σ2 to teaching points based on the robot coordinate system Σ1 using information on the positional relationship R1 between the robot 100 and the worktable 800, and the operator does not need to create the teaching points again. Then, the trajectory data may be calculated from the updated teaching points. Here, when creating the trajectory data, the teaching points created based on the workpiece coordinate system Σ2 are converted (updated) to teaching points based on the robot coordinate system Σ1, and the conversion process is performed using the information on the positional relationship R1 described above. In the first embodiment, the control unit 440 specifies information on the positional relationship R1 in the calibration mode M2. The positional relationship R1 is a transformation matrix indicating the relationship between the robot coordinate system Σ1 and the workpiece coordinate system Σ2, for example, a coordinate transformation.
[0044] The workpiece coordinate system Σ2 has three axes C1, C2, and C3. The three axes C1, C2, and C3 are perpendicular to each other. The contact surface 8120 is a surface that extends parallel to the axis C2, and the contact surface 8130 is a surface that extends parallel to the axis C1.
[0045] FIG. 5 is a flowchart of a control method in the calibration mode M2 according to the first embodiment. In the first embodiment, the jig 810 is separate from the main body 851. Therefore, in step S1, an operator installs the jig 810 on the main body 851. The installation position of the jig 810 is determined in advance, and the jig 810 is positioned and fixed to the main body 851 by a fastening member such as a screw. Note that, when the jig 810 is installed on the main body 851 in advance, or when the jig 810 and the main body 851 are integrated, step S1 is omitted. In addition, a probe 102, which is a tool, is attached to the tip of the robot arm 101 instead of or in addition to the end effector.
[0046] In step S2, the worker roughly teaches the robot 100 an upper point of the jig 810. For example, the worker inputs the upper point (rough teaching point) to the input device 450 so that the probe 102 is positioned directly above the plane 8110, and operates the robot 100 to the roughly teaching point. The position directly above the plane 8110 is a position away from the plane 8110 in the positive direction of the Z axis. The rough teaching point can be arbitrarily set within the movable range of the robot 100 as long as it is positioned directly above the plane 8110 of the block 811 of the jig 810. Therefore, if the probe 102 is positioned directly above the block 811 when the robot 100 is moved to the roughly teaching point, there is no need to roughly teach the robot 100 again.
[0047] Next, in step S3, the control unit 440 performs an operation to search for the reference position 815 of the jig 810, and acquires information on at least three positions, in the first embodiment, information on three positions. In step S4, the control unit 440 calculates the work coordinate system Σ2 from the position information acquired in step S3, and updates the work coordinate system Σ2 in step S5.
[0048] The process of step S3 will be described in detail. FIG. 6 is a flowchart of a part of the control method in the calibration mode M2 according to the first embodiment. In FIG. 6, a flowchart of the process of step S3 according to the first embodiment is illustrated. FIGS. 7(a) to 7(c) are explanatory diagrams of a part of the process of the control method in the calibration mode M2 according to the first embodiment. In FIGS. 7(a) to 7(c), explanatory diagrams of the process of step S3 according to the first embodiment are illustrated. As shown in FIG. 6, the process of step S3 includes three processes of steps S31, S32, and S33. The process of step S31 is a process of a first position acquisition operation, the process of step S32 is a process of a second position acquisition operation, and the process of step S33 is a process of a third position acquisition operation.
[0049] As shown in FIG. 7(a), in step S2, the control unit 440 moves the probe 102 to an upper point 111 that is the search start position.
[0050] As shown in Fig. 7(b), in step S31, the control unit 440 lowers the probe 102 in the negative direction of the Z axis to bring the tip of the probe 102 into contact with the plane 8110. When the probe 102 is brought into contact with the plane 8110, the control unit 440 acquires information on a position 801 shown in Fig. 7(c). The position 801 is an example of a first position. The information on the position 801 is, for example, a coordinate value in the robot coordinate system Σ1.
[0051] Next, in step S32, the control unit 440 moves the probe 102 from position 801 in the positive direction of the X-axis of the robot coordinate system Σ1 while keeping the probe 102 in contact with the plane 8110, and brings the probe 102 into contact with the contact surface 8120. When the probe 102 is brought into contact with the contact surface 8120, the control unit 440 acquires information about the position 802 shown in FIG. 7(c). The position 802 is an example of a second position. The information about the position 802 is, for example, a coordinate value in the robot coordinate system Σ1. The positive direction of the X-axis is an example of a first direction.
[0052] Next, in step S33, the control unit 440 moves the probe 102 from the position 802 along the contact surface 8120, for example in the positive direction of the Y axis, while keeping the probe 102 in contact with the plane 8110 and the contact surface 8120, to bring the probe 102 into contact with the contact surface 8130. When the probe 102 is brought into contact with the contact surface 8130, the control unit 440 acquires information on the position 803 shown in FIG. 7(c). The probe 102 is positioned at the reference position 815 by bringing the probe 102 into contact with the plane 8110, the contact surface 8120, and the contact surface 8130. Here, the position 803 is the reference position 815. The position 803 is an example of a third position. The information on the position 803 is, for example, a coordinate value of the robot coordinate system Σ1.
[0053] 7B, a moving path PT1 of the probe 102 from a position 801 to a position 803 via a position 802 is illustrated by a dashed arrow. In this manner, the control unit 440 causes the probe 102 to follow the jig 810 to search for the reference position 815.
[0054] The processes of steps S31, S32, and S33 will be described in detail below. Fig. 8 is a flowchart of a part of a control method in the calibration mode M2 according to the first embodiment. Fig. 8 shows a flowchart of the process of step S31 according to the first embodiment. Step S31 is made up of steps S311 to S315.
[0055] In step S311, the control unit 440 sets a set value of a force corresponding to a pressing force in the Z direction pressing the probe 102 against the jig 810. Here, the force acting on the probe 102 is calculated (measured) by forward dynamics from the value of the torque sensor 160 of each joint. The force acting on the probe 102 is a reaction force of the pressing force pressing the probe 102 against the jig 810, and is measured as a force in the opposite direction to the pressing force. Therefore, the value of the force acting on the probe 102 corresponding to the pressing force is set as a set value. This set value is set as a target value for feedback control of the force. Here, the control unit 440 setting the set value means, for example, that the control unit 440 reads the set value from a storage such as the HDD 414 and stores it in the RAM 413. Note that the set value may be set as a value of the pressing force, and in the feedback control, the sign of the set value may be inverted to set it as a target value, or the sign of the measured value may be inverted. That is, in the feedback control, a set value may be set so that the pressing force in the Z direction that presses the probe 102 against the jig 810 becomes a predetermined force.
[0056] In step S312, the control unit 440 starts control for searching for the position 801, and controls the robot arm 101 to move the probe 102 in the negative direction of the Z axis of the robot coordinate system Σ1, that is, downward in the direction of gravity.
[0057] In step S313, the control unit 440 acquires a measurement value (information) of the force acting on the probe 102. In step S313, the control unit 440 only needs to acquire a measurement value of at least the force in the Z direction. The measurement value of the force acting on the probe 102 is calculated by forward dynamics from the value of the torque sensor 160 of each joint.
[0058] In step S314, the control unit 440 determines whether the measured force value in the Z direction among the acquired force measurements exceeds the threshold value. If the measured force value in the Z direction does not exceed the threshold value, that is, if step S314 is NO, the control unit 440 returns to the process of step S312.
[0059] That is, in steps S312 to S314, the control unit 440 controls the robot arm 101 so that the measured value of the force in the Z direction approaches the target value. The target value can be the set value set in step S311, as described above. If the measured value of the force in the Z direction is zero, the probe 102 is not in contact with the jig 810. Therefore, the control unit 440 controls the robot arm 101 so that the probe 102 moves in the negative direction of the Z axis.
[0060] If the measured value of the force in the Z direction is equal to or greater than the threshold value, i.e., if step S314 is YES, the tip of the probe 102 is in contact with the flat surface 8110 of the jig 810, and the control unit 440 proceeds to the process of step S315. Here, the control unit 440 controls the measured value of the force in the Z direction to be the target value, so that after the probe 102 comes into contact with the flat surface 8110, the probe 102 is pressed against the flat surface 8110 with a predetermined force in the negative direction of the Z axis.
[0061] In step S315, the control unit 440 acquires information on the position 801. The information on the position 801 is calculated by forward kinematics from the values of the angle sensors 150 of each joint. Therefore, the information on the position 801 is acquired in coordinate values based on the robot coordinate system Σ1.
[0062] Fig. 9 is a flowchart of a part of a control method in the calibration mode M2 according to the first embodiment. Fig. 9 shows a flowchart of the process of step S32 according to the first embodiment. Step S32 is made up of steps S321 to S325.
[0063] In step S321, the control unit 440 sets force setting values corresponding to the pressing forces in the Z direction and the X direction for pressing the probe 102 against the jig 810.
[0064] The tip of probe 102 is in contact with plane 8110 at position 801. In step S322, control unit 440 starts control for searching for position 802, and controls robot arm 101 to move probe 102 from position 801 in the positive direction of the X axis while pressing the tip of probe 102 against jig 810 in the negative direction of the Z axis with a pressing force corresponding to the setting value set in step S321. The positive direction of the X axis is an example of a first direction.
[0065] In step S323, the control unit 440 acquires a measurement value (information) of the force acting on the probe 102. In step S323, the control unit 440 may acquire at least a measurement value of the force in the Z direction and a measurement value of the force in the X direction. The measurement value of the force acting on the probe 102 is calculated by forward dynamics from the value of the torque sensor 160 of each joint.
[0066] In step S324, control unit 440 determines whether the Z-direction force measurement value and the X-direction force measurement value each exceed a threshold value among the acquired force measurement values. If the Z-direction force measurement value or the X-direction force measurement value does not exceed the threshold value, that is, if step S324 is NO, control unit 440 returns to the process of step S322.
[0067] That is, in steps S322 to S324, the control unit 440 controls the robot arm 101 so that the measured force value in the Z direction and the measured force value in the X direction approach the target value. The target value can be the set value set in step S321. Therefore, the control unit 440 controls the robot arm 101 so that the probe 102 moves in the positive direction of the X axis while pressing the tip of the probe 102 against the jig 810 in the negative direction of the Z axis with a force corresponding to the set value.
[0068] If the measured force value in the Z direction and the measured force value in the X direction are each equal to or greater than the threshold value, i.e., if step S324 is YES, the tip of the probe 102 is in contact with the flat surface 8110 and the contact surface 8120 of the jig 810, and the control unit 440 proceeds to processing of step S325.
[0069] Here, control unit 440 controls so that the measured value of the force in the X direction becomes the target value, so that after probe 102 comes into contact with contact surface 8120, probe 102 is pressed against contact surface 8120 with a predetermined force in the positive direction of the X axis. Also, control unit 440 controls so that the measured value of the force in the Z direction becomes the target value, so that probe 102 is pressed against plane 8110 with a predetermined force in the negative direction of the Z axis.
[0070] In step S325, the control unit 440 acquires information on the position 802. The information on the position 802 is calculated by forward kinematics from the values of the angle sensors 150 of the joints. Therefore, the information on the position 802 is acquired in coordinate values based on the robot coordinate system Σ1.
[0071] Fig. 10 is a flowchart of a part of a control method in the calibration mode M2 according to the first embodiment. Fig. 10 shows a flowchart of the process of step S33 according to the first embodiment. Step S33 is made up of steps S331 to S335.
[0072] In step S331, the control unit 440 sets force setting values corresponding to the pressing forces in the Z direction, X direction, and Y direction for pressing the probe 102 against the jig 810.
[0073] In step S332, control unit 440 starts control for searching for position 803, and controls robot arm 101 to move probe 102 from position 802 in the positive direction of the Y axis while pressing the tip of probe 102 against jig 810 in the negative direction of the Z axis and the positive direction of the X axis with a pressing force corresponding to the setting value set in step S331.
[0074] In step S333, the control unit 440 acquires measurement values (information) of the force acting on the probe 102. In step S333, the control unit 440 may acquire the measurement value of the force in the Z direction, the measurement value of the force in the X direction, and the measurement value of the force in the Y direction. The measurement value of the force acting on the probe 102 is calculated by forward dynamics from the value of the torque sensor 160 of each joint.
[0075] In step S334, control unit 440 determines whether the Z-direction force measurement value, the X-direction force measurement value, and the Y-direction force measurement value each exceed a threshold value among the acquired force measurement values. If the Z-direction force measurement value, the X-direction force measurement value, or the Y-direction force measurement value does not exceed the threshold value, that is, if step S334 is NO, control unit 440 returns to the process of step S332.
[0076] That is, in steps S332 to S334, the control unit 440 controls the robot arm 101 so that each of the measured force values in the Z direction, the measured force value in the X direction, and the measured force value in the Y direction approaches a target value. The target value may be a set value set in step S331. Therefore, the control unit 440 controls the robot arm 101 so that the probe 102 moves in the positive direction of the Y axis while pressing the tip of the probe 102 against the jig 810 in the negative direction of the Z axis with a force corresponding to the set value and pressing the tip of the probe 102 in the positive direction of the X axis with a force corresponding to the set value.
[0077] Here, when the probe 102 is moved in the positive direction of the Y axis, if the measured value of the force in the X direction is smaller than a set value, the probe 102 is moved in the positive direction of the X axis, and if the measured value of the force in the X direction is larger than the set value, the probe 102 is moved in the negative direction of the X axis. This adjusts the position of the probe 102 in the X direction so that the probe 102 is pressed against the contact surface 8120 with a predetermined force in the X direction. As a result, the probe 102 moves from the position 802 in the direction in which the contact surface 8120 extends (the positive direction of the Y axis in the example of FIG. 7(b)), following the contact surface 8120. This moving direction, which is the positive direction of the Y axis in the example of FIG. 7(b), is an example of the second direction.
[0078] If the Z-direction force measurement value, the X-direction force measurement value, and the Y-direction force measurement value are each greater than or equal to a threshold value, i.e., if step S334 is YES, the tip of the probe 102 is in contact with the flat surface 8110, the contact surface 8120, and the contact surface 8130 of the jig 810, and the control unit 440 proceeds with the processing of step S335.
[0079] Here, the control unit 440 controls so that the measured value of the force in the Y direction becomes the target value, so that after the probe 102 comes into contact with the contact surface 8130, the probe 102 is pressed against the contact surface 8130 with a predetermined force in the positive direction of the Y axis. Also, the control unit 440 controls so that the measured value of the force in the Z direction becomes the target value, so that the probe 102 is pressed against the plane 8110 with a predetermined force in the negative direction of the Z axis. Similarly, the control unit 440 controls so that the measured value of the force in the X direction becomes the target value, so that the probe 102 is pressed against the contact surface 8120 with a predetermined force in the positive direction of the X axis. Therefore, the probe 102 comes into contact with these surfaces 8110, 8120, and 8130, so that the probe 102 is positioned at the reference position 815.
[0080] In step S335, the control unit 440 acquires information on a position 803. The position 803 is a reference position 815. The information on the position 803 is calculated by forward kinematics from the values of the angle sensors 150 of the joints. Therefore, the information on the position 803 is acquired in coordinate values based on the robot coordinate system Σ1.
[0081] In this way, the control unit 440 acquires information on at least three positions 801, 802, and 803 on the movement path PT1 when the probe 102 of the robot 100 is moved from position 801 to position 803 via position 802 while being in contact with the jig 810 on the workbench 800.
[0082] Next, the control unit 440 acquires information on the positional relationship R1 based on information on at least three positions 801, 802, and 803. For example, in step S4 shown in FIG. 5, the control unit 440 calculates the workpiece coordinate system Σ2. The control unit 440 defines the position and direction of the workpiece coordinate system Σ2 viewed from the origin of the robot coordinate system Σ1 using the positions 801 to 803 acquired in steps S31, S32, and S33. The three positions 801 to 803 are different from each other and are not aligned on a single straight line when viewed in a direction perpendicular to the plane 8110. In other words, when viewed in a direction perpendicular to the plane 8110, the position 803 does not exist on a straight line passing through the positions 801 and 802.
[0083] FIG. 11(a) is a schematic diagram for explaining a calculation method of the workpiece coordinate system Σ2 according to the first embodiment. First, the control unit 440 determines a direction vector V1 from the position 803 to the position 802, with the position 803 being the reference position 815 that is the origin of the jig 810. Next, the control unit 440 determines a direction vector V2 of a normal line of a plane P1 including the positions 801 to 803 from the direction vector V1 and the position 801. The direction vector V2 is a vector perpendicular to the plane P1. Furthermore, the control unit 440 determines a direction vector V3 perpendicular to the direction vector V1 and the direction vector V2 by calculating the cross product of the direction vector V1 and the direction vector V2. The direction vector V1 is an example of a first vector, the direction vector V2 is an example of a second vector, and the direction vector V3 is an example of a third vector.
[0084] The direction vector V3 corresponds to the axis C1 of the work coordinate system Σ2 shown in Figure 4, the direction vector V1 corresponds to the axis C2 of the work coordinate system Σ2 shown in Figure 4, and the direction vector V2 corresponds to the axis C3 of the work coordinate system shown in Figure 4.
[0085] The control unit 440 acquires mutually orthogonal direction vectors V1 to V3 from the positions 801 to 803, and acquires information on the work coordinate system Σ2 viewed from the robot coordinate system Σ1, i.e., information on the positional relationship R1 shown in Figure 4, based on these direction vectors V1 to V3.
[0086] Then, in step S5, the control unit 440 updates the information of the work coordinate system Σ2 registered (stored) in the HDD 414, i.e., the information of the positional relationship R1, with the information of the work coordinate system Σ2 obtained in step S4, i.e., the information of the positional relationship R1.
[0087] Fig. 11(b) is a diagram for explaining teaching points according to the first embodiment. In the first embodiment, the control unit 440 manages information on teaching points registered (saved) in a storage such as the HDD 414 in a tree structure. Information (data) on the teaching points is registered in advance in the HDD 414 before moving the robot, for example. For example, in the example of Fig. 11(b), data on three teaching points 112, 113, and 114 is registered in the HDD 414.
[0088] 11(b), the teaching point 112 is given the name "P001", the teaching point 113 is given the name "P002", and the teaching point 114 is given the name "P003". The parent node of the teaching points 112 to 114 corresponds to the workbench 800, i.e., the jig 810, and is given the name "WORK".
[0089] The teaching points 112 to 114 are managed by the same position and orientation information as the relative position and orientation information of the parent node. That is, the teaching points 112 to 114 are teaching points registered for work on the workbench 800, and are managed as child nodes of the jig 810 (WORK). When the relative position and orientation of the jig 810, which is the parent node of the teaching points, is changed with respect to the robot arm 101 (i.e., the robot coordinate system Σ1), the positions and orientations of the teaching points 112, 113, and 114, which are child nodes of the jig 810, are also changed in conjunction with the jig 810.
[0090] Since the teaching points 112 to 114 are registered in the HDD 414 as coordinate values in the work coordinate system Σ2, i.e., relative position information with respect to the reference position 815, they need to be converted to coordinate values in the robot coordinate system Σ1 based on the robot arm 101. The control unit 440 collectively updates (converts) the teaching point 112 of "P001", the teaching point 113 of "P002", and the teaching point 114 of "P003", which are child nodes of "WORK" in the tree structure, based on the information of the updated positional relationship R1.
[0091] Incidentally, it is preferable that the coordinate values of the teaching points 112 to 114 in the workpiece coordinate system Σ2 are stored in the HDD 414 without being deleted from the HDD 414, and it is sufficient that the coordinate values of the teaching points 112 to 114 in the robot coordinate system Σ1 are updated.
[0092] In the operation mode M1, the control unit 440 controls the robot 100 based on information on the relative positional relationship R1 between the robot 100 and the worktable 800. That is, in the operation mode M1, the control unit 440 generates trajectory data based on the updated teaching points 112-114 based on the robot coordinate system Σ1, and controls the robot arm 101 of the robot 100 in accordance with the trajectory data.
[0093] Thus, according to the first embodiment, after moving the robot arm 101, i.e., the movable platform 400, the control unit 440 updates the work coordinate system Σ2, thereby making it possible to cause the robot 100 to perform work based on the teaching points 112-114 on the worktable 800 without re-teaching the teaching points 112-114.
[0094] Since the operator does not need to re-teach the teaching points 112 to 114, the start-up time of the robot system 1000 after the layout change is shortened and the operation mode can be quickly switched to M1, thereby improving the efficiency of the manufacture of articles by the robot 100.
[0095] As described above, according to the first embodiment, the tip of the probe 102 is caused to follow the jig 810 to search for the reference position 815 of the jig 810, so when the robot 100 is moved to change its relative position with respect to the work table 800, the robot system 1000 can be quickly started up without re-teaching the robot 100. Thus, according to the first embodiment, a technique that is advantageous for acquiring information on the relative positional relationship R1 between the robot 100 and the work table 800 is provided.
[0096] In the first embodiment, the control unit 440 acquires at least three positions, i.e., three positions 801, 802, and 803, among the multiple positions on the movement path PT1, and acquires information on the positional relationship R1 based on the three positions 801, 802, and 803, but the present invention is not limited to this. The control unit 440 may acquire information on a position between the positions 801 and 802, instead of the information on the position 801, as the information on the at least three positions on the movement path PT1. The control unit 440 may also acquire information on a position between the positions 802 and 803, instead of the information on the position 802, for example.
[0097] [Second embodiment] The second embodiment will be described. In the following, elements with the same reference symbols as those in the first embodiment will have substantially the same configurations and functions as those described in the first embodiment unless otherwise specified, and differences from the first embodiment will be mainly described.
[0098] The hardware configuration of the robot system in the second embodiment is similar to that of the robot system 1000 in the first embodiment. That is, the processing of the control unit 440 shown in Fig. 2(b) is partially different from the processing described in the first embodiment. The parts that differ from the first embodiment will be described below.
[0099] 12 is a flowchart of a part of a control method in the calibration mode M2 according to the second embodiment. When viewed in the negative direction of the Z axis, with respect to a state in which the contact surface 8120 of the jig 810 is parallel to the Y axis of the robot coordinate system Σ1, if the relative posture of the jig 810 with respect to the robot 100 is significantly shifted counterclockwise around the Z axis, the search for the position 802 may fail. In the second embodiment, the control unit 440 executes the process of step S32A shown in FIG. 12 instead of the process of step S32 shown in FIG. 6.
[0100] In the operation of acquiring information on the position 802 which is the second position, depending on the relative positional relationship between the robot 100 and the work table 800, the probe 102 may come off the jig 810, and the search for the position 802 may fail. Therefore, in the second embodiment, when the search for the position 802 fails, the control unit 440 executes a process of changing the search direction by 90 degrees and executes a process of searching for the position 802 again. Here, the search direction is the direction in which the probe 102 is moved to search for the target position, which in the second embodiment is the position 802.
[0101] 13(a) and 13(b) are schematic diagrams for explaining the process according to the second embodiment. Fig. 13(a) shows an example of a case where the search for the position 802 in step S322 has failed.
[0102] In step S321, the control unit 440 sets force setting values corresponding to the pressing forces in the Z direction and the X direction for pressing the probe 102 against the jig 810.
[0103] Next, in step S321A, control unit 440 sets counter i, which indicates the number of search failures, to 0.
[0104] The tip of probe 102 is in contact with plane 8110 at position 801. In step S322, control unit 440 starts control for searching for position 802, and controls robot arm 101 to move probe 102 from position 801 in the positive direction of the X axis while pressing the tip of probe 102 against jig 810 in the negative direction of the Z axis with a pressing force corresponding to the setting value set in step S321. The positive direction of the X axis is an example of a first direction.
[0105] In step S323, the control unit 440 acquires a measurement value (information) of the force acting on the probe 102. In step S323, the control unit 440 may acquire at least a measurement value of the force in the Z direction and a measurement value of the force in the X direction. The measurement value of the force acting on the probe 102 is calculated by forward dynamics from the value of the torque sensor 160 of each joint.
[0106] In step S326, the control unit 440 determines whether the search has failed. The search has failed, for example, when the probe 102 has moved a predetermined amount, or when the probe 102 has fallen off the block 811 of the jig 810 and moved in the Z direction by more than the allowable amount.
[0107] If the search is successful, it means that the probe 102 has been successfully brought into contact with the contact portion 820, and if the search is unsuccessful, it means that the probe 102 has not been successfully brought into contact with the contact portion 820.
[0108] If it is determined that the search has failed, that is, if step S326 is YES, then contact of the probe 102 with the contact unit 820 has failed, and the control unit 440 increments the counter i indicating the number of search failures by 1 in step S327.
[0109] In step S328, control unit 440 determines whether counter i is less than 4 (i<4).
[0110] If counter i is 4 or more, that is, if step S328 is NO, control unit 440 proceeds to error processing.
[0111] If counter i is less than 4 (3 or less), that is, if step S328 is YES, control unit 440 proceeds to the process of step S329.
[0112] In step S329, the control unit 440 changes the search direction for searching for the position 802 by a predetermined angle in the clockwise or counterclockwise direction of the Z axis of the robot coordinate system Σ1 when viewed in the negative direction of the Z axis, for example, by 90 degrees counterclockwise about the Z axis of the robot coordinate system Σ1. An example of a changed search direction is shown in Fig. 13(b). In the example of Fig. 13(b), the search direction is changed from the D1 direction, which is the positive direction of the X axis, to the D1' direction, which is the positive direction of the Y axis.
[0113] In step S329A, the control unit 440 controls the robot arm 101 to move the probe 102 to position 801. At this time, it is preferable that the control unit 440 moves the probe 102 to position 801 via the upper point 111 shown in Fig. 7(a). After the control unit 440 moves the probe 102 to position 801, the process returns to step S322.
[0114] In step S322, the control unit 440 controls the robot arm 101 to move the probe 102 from the position 801 in the positive direction of the Y axis, which is different from the positive direction of the X axis.
[0115] If it is determined in step S326 that the search has not failed, that is, if step S326 is NO, then the probe 102 has been successfully brought into contact with the contact portion 820, and the control portion 440 proceeds to the process of step S324.
[0116] In step S324, control unit 440 determines whether the Z-direction force measurement value and the X-direction force measurement value each exceed a threshold value among the acquired force measurement values. If the Z-direction force measurement value or the X-direction force measurement value does not exceed the threshold value, that is, if step S324 is NO, control unit 440 returns to the process of step S322.
[0117] If the measured force value in the Z direction and the measured force value in the X direction are each equal to or greater than the threshold value, i.e., if step S324 is YES, the tip of the probe 102 is in contact with the flat surface 8110 and the contact surface 8120 of the jig 810, and the control unit 440 proceeds to processing of step S325.
[0118] In step S325, the control unit 440 acquires information on the position 802. The information on the position 802 is calculated by forward kinematics from the values of the angle sensors 150 of the joints. Therefore, the information on the position 802 is acquired in coordinate values based on the robot coordinate system Σ1.
[0119] As described above, if the search for position 802 fails, by changing the search direction in increments of a specified angle, for example, in increments of 90 degrees, it is possible to calculate the work coordinate system Σ2, i.e., the positional relationship R1, without the operator having to readjust the search direction, even when the relative posture between the robot 100 and the worktable 800 has changed significantly.
[0120] Note that the second embodiment or the modified example of the second embodiment may be combined with at least one of the first embodiment and the modified example of the first embodiment.
[0121] [Third embodiment] The third embodiment will be described below. In the following, elements with the same reference symbols as those in the first or second embodiment will have substantially the same configurations and functions as those described in the first or second embodiment unless otherwise specified, and differences from the first and second embodiments will be mainly described.
[0122] The hardware configuration of the robot system in the third embodiment is similar to that of the robot system 1000 in the first embodiment. That is, the process of the control unit 440 shown in Fig. 2(b) is partially different from the process described in the first embodiment. The parts that differ from the first embodiment will be described below.
[0123] 14 is a flowchart of a part of a control method in the calibration mode M2 according to the third embodiment. When viewed in the negative direction of the Z axis, with respect to a state in which the contact surface 8120 of the jig 810 is parallel to the Y axis of the robot coordinate system Σ1, if the relative posture of the jig 810 with respect to the robot 100 is significantly shifted clockwise around the Z axis, the search for the position 803 may fail. In the third embodiment, the control unit 440 executes the process of step S33A shown in FIG. 14 instead of the process of step S33 shown in FIG. 6.
[0124] In the operation of acquiring information on the third position, ie, position 803, depending on the relative positional relationship between the robot 100 and the worktable 800, the probe 102 may come off the jig 810, resulting in failure to search for position 803. In the third embodiment, therefore, when the search for position 803 fails, the control unit 440 executes a process of changing the search direction by 180 degrees and executes a process of searching again for position 803. Here, the search direction is the direction in which the probe 102 is moved to search for the target position, which in the third embodiment is the position 803.
[0125] 15(a) and 15(b) are schematic diagrams for explaining the process according to the third embodiment. Fig. 15(a) shows an example of a case where the search for the position 803 in step S332 has failed.
[0126] In step S331, the control unit 440 sets force setting values corresponding to the pressing forces in the Z direction, X direction, and Y direction for pressing the probe 102 against the jig 810.
[0127] Next, in step S331A, control unit 440 sets counter i, which indicates the number of search failures, to 0.
[0128] In step S332, the control unit 440 starts control for searching for position 803, and controls the robot arm 101 to move the probe 102 from position 802 in the positive direction of the Y axis while pressing the tip of the probe 102 against the jig 810 in the negative direction of the Z axis and the positive direction of the X axis with a pressing force corresponding to the setting value set in step S331. In the third embodiment, the positive direction of the Y axis is the moving direction of the probe 102 following the contact surface 8130, and is an example of the second direction.
[0129] In step S333, the control unit 440 acquires measurement values (information) of the force acting on the probe 102. In step S333, the control unit 440 may acquire the measurement value of the force in the Z direction, the measurement value of the force in the X direction, and the measurement value of the force in the Y direction. The measurement value of the force acting on the probe 102 is calculated by forward dynamics from the value of the torque sensor 160 of each joint.
[0130] In step S336, the control unit 440 determines whether the search has failed. The search may fail, for example, when the probe 102 moves a predetermined amount, or when the probe 102 falls off the block 811 of the jig 810 and moves in the Z direction by an amount greater than the allowable amount.
[0131] If the search is successful, it means that the probe 102 has been successfully positioned at the reference position 815 (position 803), and if the search is unsuccessful, it means that the probe 102 has not been successfully positioned at the reference position 815 (position 803).
[0132] If it is determined that the search has failed, that is, if step S336 is YES, positioning of the probe 102 to the reference position 815 (position 803) has failed, and the control unit 440 increments the counter i indicating the number of search failures by 1 in step S337.
[0133] In step S338, control unit 440 determines whether counter i is less than 2 (i<2).
[0134] If counter i is 2 or more, that is, if step S338 is NO, control unit 440 proceeds to error processing.
[0135] If counter i is less than 2 (1 or less), that is, if step S338 is YES, control unit 440 proceeds to the process of step S339.
[0136] In step S339, the control unit 440 changes the search direction for searching the position 802 by a predetermined angle, for example, 180 degrees around the Z axis of the robot coordinate system Σ1, clockwise or counterclockwise when viewed in the negative direction of the Z axis. An example of a changed search direction is shown in Fig. 15(b). In the example of Fig. 15(b), the search direction is changed from the D2 direction, which is the positive direction of the Y axis, to the D2' direction, which is the negative direction of the Y axis.
[0137] In step S339A, the control unit 440 controls the robot arm 101 to move the probe 102 to position 802. At this time, it is preferable that the control unit 440 moves the probe 102 to position 802 via the upper point 111 and position 801 shown in Fig. 7(a). After moving the probe 102 to position 802, the control unit 440 returns to the process of step S332.
[0138] In step S332, the control unit 440 controls the robot arm 101 to move the probe 102 from the position 802 in the direction D2' following the contact surface 8130 of the contact unit 820. The direction D2' is the opposite direction to the direction D2, which is the positive direction of the Y axis.
[0139] If it is determined in step S336 that the search has not failed, that is, if step S336 is NO, the probe 102 has been successfully positioned at the reference position 815 (position 803), and the control unit 440 proceeds to the process of step S334.
[0140] In step S334, control unit 440 determines whether the Z-direction force measurement value, the X-direction force measurement value, and the Y-direction force measurement value each exceed a threshold value among the acquired force measurement values. If the Z-direction force measurement value, the X-direction force measurement value, or the Y-direction force measurement value does not exceed the threshold value, that is, if step S334 is NO, control unit 440 returns to the process of step S332.
[0141] If the Z-direction force measurement value, the X-direction force measurement value, and the Y-direction force measurement value are each greater than or equal to a threshold value, i.e., if step S334 is YES, the tip of the probe 102 is in contact with the flat surface 8110, the contact surface 8120, and the contact surface 8130 of the jig 810, and the control unit 440 proceeds with the processing of step S335.
[0142] In step S335, the control unit 440 acquires information on a position 803. The position 803 is a reference position 815. The information on the position 803 is calculated by forward kinematics from the values of the angle sensors 150 of the joints. Therefore, the information on the position 803 is acquired in coordinate values based on the robot coordinate system Σ1.
[0143] As described above, if the search for position 803 fails, by changing the search direction by a predetermined angle, for example 180 degrees, the calculation of the work coordinate system Σ2, i.e., the positional relationship R1, can be performed without the operator having to readjust the search direction, even when the relative posture between the robot 100 and the worktable 800 has changed significantly.
[0144] The third embodiment and the modified example of the third embodiment may be combined with at least one of the first embodiment, the modified example of the first embodiment, the second embodiment, and the modified example of the second embodiment.
[0145] [Fourth embodiment] The fourth embodiment will be described. In the following, elements with the same reference symbols as those in the first, second or third embodiment will have substantially the same configurations and functions as those described in the first, second or third embodiment unless otherwise specified, and the following mainly describes the parts that differ from the first, second and third embodiments. In the fourth embodiment, the configuration of the jig is different from the configuration of jig 810 in the first embodiment.
[0146] 16(a) and 16(b) are explanatory diagrams of a jig 810A according to the fourth embodiment. The jig 810A has a block 811A and a block 813A. The block 811A has a flat surface 8110A and a groove portion 812A recessed into the flat surface 8110A. The block 813A is a protruding portion that protrudes from the flat surface 8110A.
[0147] The contact portion 820A is configured with the groove portion 812A and the block 813A. The contact portion 820A is formed in a shape that can be contacted by the tip of the probe 102 and that guides the probe 102 that has come into contact with the contact portion 820A to the reference position 815.
[0148] The groove 812A has a contact surface 8120A that can be contacted by the tip of the probe 102. The contact surface 8120A is formed in a shape that guides the tip of the probe 102 to the reference position 815, and is, for example, a surface with a V-shaped cross section. The groove 812A extends parallel to an axis C2. The axis C2 is an example of a first axis.
[0149] The block 813A is an example of a protruding part that protrudes with respect to the plane 8110A, and is disposed on the plane 8110A. The block 813A has a contact surface 8130A with which the tip of the probe 102 can come into contact. The contact surface 8130A is formed in a shape that guides the tip of the probe 102 to the reference position 815, and is, for example, a plane. The contact surface 8130A is a vertical surface that is perpendicular to the plane 8110A and the contact surface 8130A. The block 813A extends parallel to an axis C1. The axis C1 is an example of a second axis.
[0150] Position 802A is obtained by contacting probe 102 with groove 812A, and position 803A is obtained by moving probe 102 along groove 812A. The three positions for determining work coordinate system Σ2 must be on the same plane.
[0151] In the fourth embodiment, positions 802A and 803A are lower in the negative direction of the Z axis from plane 8110A by the amount of groove 812A relative to position 801. Therefore, control unit 440 adds a predetermined value to each of the obtained positions 802A and 803A, and updates them to positions 802 and 803.
[0152] The control unit 440 can perform calculations of the work coordinate system Σ2 based on the information of the three positions 801 to 803 in step S4 shown in FIG. 5, and can update the work coordinate system Σ2 in step S5 shown in FIG.
[0153] In addition, the fourth embodiment and the modified example of the fourth embodiment may be combined with at least one of the first embodiment, the modified example of the first embodiment, the second embodiment, the modified example of the second embodiment, the third embodiment, and the modified example of the third embodiment.
[0154] [Fifth embodiment] The fifth embodiment will be described below. In the following, elements having the same reference symbols as those in the first, second, third, or fourth embodiment will have substantially the same configurations and functions as those described in the first, second, third, or fourth embodiment unless otherwise specified, and differences from the first, second, third, and fourth embodiments will be mainly described.
[0155] The hardware configuration of the robot system in the fifth embodiment is similar to that of the robot system 1000 in the first embodiment. That is, the process of the control unit 440 shown in Fig. 2(b) is partially different from the process described in the first embodiment. The following describes the parts that are different from the first embodiment.
[0156] Fig. 17 is a flowchart of a part of a control method in the calibration mode M2 according to the fifth embodiment. In the fifth embodiment, the control unit 440 executes the process of step S31B shown in Fig. 17 instead of the process of step S31 shown in Fig. 6.
[0157] The processes in steps S311 to S314 are as described in the first embodiment.
[0158] If the measured value of the force in the Z direction is equal to or greater than the threshold in step S314, that is, if step S314 is YES, the tip of the probe 102 is in contact with the flat surface 8110 of the jig 810, and the control unit 440 proceeds to the process of step S315B.
[0159] Here, the control unit 440 controls the measured value of the Z direction force to become the target value, so that after the probe 102 comes into contact with the plane 8110, the probe 102 is pressed against the plane 8110 with a predetermined force in the negative direction of the Z axis.
[0160] If the target value is the setting value set in step S311, and the rigidity of the robot arm 101 is low, the pushing force may cause distortion in the robot arm 101. Since the position 801 is calculated by the forward kinematics of the robot arm 101, an error may occur in the calculation of the position 801.
[0161] Therefore, in step S315B, the control unit 440 sets the target value to a value lower than the set value by a predetermined value, and controls the measured value of the force in the Z direction to become the target value. This reduces the pressing force of the probe 102 in the Z direction. This reduces the distortion of the robot arm 101.
[0162] In step S315, the control unit 440 acquires information on the position 801. The information on the position 801 is calculated by forward kinematics from the values of the angle sensors 150 of each joint. Therefore, the information on the position 801 is acquired in coordinate values based on the robot coordinate system Σ1.
[0163] In this way, the pressing force of the probe 102 is reduced while maintaining the contact state between the probe 102 and the jig 810, and distortion of the robot arm 101 is reduced, so that information on the position 801 can be obtained with high accuracy.
[0164] 18 is a flowchart of a part of a control method in the calibration mode M2 according to the fifth embodiment. In the fifth embodiment, the control unit 440 executes the process of step S32B shown in FIG. 18 instead of the process of step S32 shown in FIG.
[0165] The processes in steps S321 to S324 are as described in the first embodiment.
[0166] If the measured force value in the Z direction and the measured force value in the X direction are each equal to or greater than the threshold value, i.e., if step S324 is YES, the tip of the probe 102 is in contact with the flat surface 8110 and the contact surface 8120 of the jig 810, and the control unit 440 proceeds to processing of step S325B.
[0167] If the target value is the setting value set in step S321, and the rigidity of the robot arm 101 is low, the pushing force may cause distortion in the robot arm 101. Since the position 802 is determined by the forward kinematics of the robot arm 101, an error may occur in the calculation of the position 802.
[0168] In step S325B, the control unit 440 sets the target value to a value lower than the set value by a predetermined value, and controls the measured force value in the Z direction and the measured force value in the X direction to each become the target value. This reduces the pressing forces of the probe 102 in the Z direction and the X direction. This reduces the distortion of the robot arm 101.
[0169] In step S325, the control unit 440 acquires information on the position 802. The information on the position 802 is calculated by forward kinematics from the values of the angle sensors 150 of the joints. Therefore, the information on the position 802 is acquired in coordinate values based on the robot coordinate system Σ1.
[0170] In this way, the pressing force of the probe 102 is reduced while maintaining the contact state between the probe 102 and the jig 810, and distortion of the robot arm 101 is reduced, so that information on the position 802 can be obtained with high accuracy.
[0171] 19 is a flowchart of a part of a control method in the calibration mode M2 according to the fifth embodiment. In the fifth embodiment, the control unit 440 executes the process of step S33B shown in FIG. 19 instead of the process of step S33 shown in FIG.
[0172] The processes in steps S331 to S334 are as described in the first embodiment.
[0173] If the Z-direction force measurement value, the X-direction force measurement value, and the Y-direction force measurement value are each greater than or equal to a threshold value, i.e., if step S334 is YES, the tip of probe 102 is in contact with plane 8110, contact surface 8120, and contact surface 8130 of jig 810, and control unit 440 proceeds with processing of step S335B.
[0174] If the target value is the setting value set in step S331, and the rigidity of the robot arm 101 is low, the pushing force may cause distortion in the robot arm 101. Since the position 803 is determined by the forward kinematics of the robot arm 101, an error may occur in the calculation of the position 803.
[0175] In step S335B, the control unit 440 sets the target value to a value lower than the set value by a predetermined value, and controls the measured force value in the Z direction, the measured force value in the X direction, and the measured force value in the Y direction to each become the target value. This reduces the pressing forces of the probe 102 in the Z direction, the X direction, and the Y direction. This reduces the distortion of the robot arm 101.
[0176] In step S335, the control unit 440 acquires information on a position 803. The position 803 is a reference position 815. The information on the position 803 is calculated by forward kinematics from the values of the angle sensors 150 of the joints. Therefore, the information on the position 803 is acquired in coordinate values based on the robot coordinate system Σ1.
[0177] In this way, the pressing force of the probe 102 is reduced while maintaining the contact state between the probe 102 and the jig 810, and distortion of the robot arm 101 is reduced, so that information on the position 803 can be obtained with high accuracy.
[0178] As described above, according to the fifth embodiment, the control unit 440 controls the robot arm 101 so that the force with which the probe 102 contacts the work table 800 when acquiring information on the positions 801 to 803 is lower than the force with which the probe 102 contacts the work table 800 when the probe 102 is moving in contact with the work table 800. As a result, the pressing force of the probe 102 is reduced while the probe 102 and the jig 810 are maintained in contact with each other, and distortion of the robot arm 101 is reduced, so that information on the positions 801 to 803 can be obtained with high accuracy.
[0179] [Sixth embodiment] The sixth embodiment will be described below. In the following, elements having the same reference symbols as those in the first, second, third, fourth, or fifth embodiment will have substantially the same configurations and functions as those described in the first, second, third, fourth, or fifth embodiment unless otherwise specified, and the following mainly describes the parts that differ from the first, second, third, fourth, and fifth embodiments.
[0180] The hardware configuration of the robot system in the sixth embodiment is partially different from that of the robot system 1000 in the first embodiment. Note that the processing of the control unit 440 is the same as the processing described in the first embodiment.
[0181] 20 is a block diagram showing the configuration of a robot system 1000B according to the sixth embodiment. In the robot system 1000B, the robot 100 in the robot system 1000 is replaced with a robot 100B. The robot 100B has a robot arm 101B and a probe 102 (FIG. 1).
[0182] The robot 100B of the sixth embodiment includes a force sensor 160B provided on a link at the tip of the robot arm 101B as a sensor 170B used to obtain information on a force acting on the probe 102. The force sensor 160B is a sensor capable of obtaining force information in translational directions of at least three axes, and in the sixth embodiment, is a sensor capable of obtaining force information in translational directions of three axes and force (moment) information in rotational directions about three axes. The control unit 440 determines whether the probe 102 has contacted a jig 810 of the workbench 800 based on the force information obtained from the sensor 170B. The robot arm 101B has a configuration substantially similar to that of the robot arm 101 of the first embodiment, but the torque sensor 160 may be omitted.
[0183] The force sensor 160B is disposed, for example, between the tip of the robot arm 101B and the probe 102. The force sensor 160B is connected to the servo control device 130, and outputs information related to the force acting on the probe 102 to the servo control device 130. The control unit 440 (CPU 411) can acquire the information related to the force from the force sensor 160B via the servo control device 130, the interface 419, and the bus 420.
[0184] As described above, the force acting on the probe 102 can also be detected by the force sensor 160B, and the control unit 440 can control the robot arm 101 so that the probe 102 follows the jig 810.
[0185] [Seventh embodiment] The seventh embodiment will be described below. In the following, elements having the same reference symbols as those in the first, second, third, fourth, fifth, or sixth embodiment will have substantially the same configurations and functions as those described in the first, second, third, fourth, fifth, or sixth embodiment unless otherwise specified, and the following mainly describes the parts that differ from the first, second, third, fourth, fifth, and sixth embodiments.
[0186] The hardware configuration of the robot system in the seventh embodiment is similar to that of the robot system 1000 in the first embodiment. That is, the process of the control unit 440 shown in Fig. 2(b) is partially different from the process described in the first embodiment. The parts that differ from the first embodiment will be described below.
[0187] Fig. 21 is an explanatory diagram of a robot system 1000 according to the seventh embodiment. Fig. 22 is a flowchart of a control method in a calibration mode M2 according to the seventh embodiment. In the seventh embodiment, an operator 510 directly operates the robot 100 to directly teach the robot 100. The control unit 440 operates the robot 100 following the operating force with which the operator 510 operates the robot 100, and acquires information on positions 801, 802, and 803.
[0188] In step S1, the operator 510 places the jig 810 on the main body 851. In step S340, the control unit 440 operates the robot 100 in accordance with the operating force applied by the operator 510 to operate the robot 100, and moves the probe 102 to a position above the plane 8110.
[0189] In step S341, control unit 440 sets counter i, which indicates the number of pieces of acquired position information, to 1.
[0190] In step S352, the control unit 440 operates the robot 100 in accordance with the operating force applied by the operator 510 to operate the robot 100, and moves the probe 102 to the position 801, which is the first position.
[0191] In step S353, when the worker 510 operates a position acquisition button (not shown), the control unit 440, in response to the operation of the position acquisition button, acquires information on the position 801. The position acquisition button may be, for example, a physical switch disposed on the robot arm 101B, or a touch switch displayed on the input device 450.
[0192] In step S354, control unit 440 determines whether counter i is less than 3 (i<3).
[0193] If counter i is less than 3 (2 or less), that is, if step S354 is YES, control unit 440 increments counter i, which indicates the number of acquired positions, by 1 in step S355, and returns to the process of step S352.
[0194] As described above, control unit 440 loops the processes of steps S352 to S355 until counter i reaches 3, that is, until information on positions 801, 802, and 803 is acquired.
[0195] If counter i is not less than 4 (i=3), that is, if step S354 is NO, control unit 440 proceeds to the process of step S4.
[0196] In step S4, the control unit 440 calculates the work coordinate system Σ2 from the acquired information on the positions 801, 802, and 803, and updates the work coordinate system Σ2 in step S5.
[0197] As described above, the control unit 440 can obtain information on the three positions 801, 802, and 803 by direct teaching following the operating force of the operator 510, and can obtain information on the positional relationship R1.
[0198] [Other variations] The present disclosure is not limited to the above-described embodiments, and the embodiments can be modified in many ways within the technical concept of the present disclosure. For example, at least two of the above-described embodiments and modifications may be combined. In addition, the effects described in the present embodiment are merely a list of the most favorable effects resulting from the embodiments of the present disclosure, and the effects of the embodiments of the present disclosure are not limited to those described in the present embodiment.
[0199] In the above embodiment, the robot is a vertically articulated robot, but the present invention is not limited to this. The robot may be, for example, a horizontally articulated robot, a parallel link robot, or an orthogonal robot. The present disclosure is also applicable to a machine that can automatically perform movements such as expansion and contraction, bending and stretching, vertical movement, horizontal movement, or rotation, or a combination of these movements, based on information in a storage device provided in a control device.
[0200] (Other Examples) The present invention can also be realized by a process in which a program for implementing one or more of the functions of the above-described embodiments is supplied to a system or device via a network or a storage medium, and one or more processors in a computer of the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that implements one or more of the functions.
[0201] The disclosure of the above embodiments includes the following sections.
[0202] (Section 1) Robots and A worktable on which the robot works; a control unit that controls the robot based on information on a relative positional relationship between the robot and the workbench, The control unit is acquiring information on a position on a movement path when a predetermined portion of the robot is moved from a first position to a third position via a second position while the predetermined portion is in contact with the work table; acquiring the information on the positional relationship based on information on the position on the movement path; A robot system comprising:
[0203] (Section 2) The information on the positions on the moving path includes information on the first position, information on the second position, and information on the third position. 2. The robot system according to item 1,
[0204] (Section 3) The control unit controls the robot based on the information on the positional relationship in a first mode, and acquires the information on the positional relationship in a second mode. 3. The robot system according to item 1 or 2,
[0205] (Section 4) The apparatus further includes a movable platform movable relative to the workbench, The robot is disposed on the moving platform. 4. The robot system according to any one of items 1 to 3,
[0206] (Section 5) The predetermined portion is a probe. 5. The robot system according to any one of items 1 to 4,
[0207] (Section 6) The workbench has a flat surface and a contact portion that is contactable with the predetermined portion and has a shape that guides the predetermined portion to the third position. 6. The robot system according to any one of items 1 to 5,
[0208] (Section 7) The control unit brings the predetermined portion into contact with the plane to acquire information on the first position. Item 7. The robot system according to item 6,
[0209] (Section 8) After the predetermined portion is brought into contact with the flat surface, the predetermined portion is moved in a first direction from the first position; When the predetermined portion is successfully brought into contact with the contact portion, information on the second position is acquired. 8. The robot system according to item 6 or 7,
[0210] (Section 9) When the control unit fails to bring the predetermined portion into contact with the contact portion, the control unit moves the predetermined portion from the first position in a direction different from the first direction. Item 9. The robot system according to item 8, characterized in that:
[0211] (Section 10) the control unit brings the predetermined portion into contact with the contact portion, and then moves the predetermined portion from the second position in a second direction following the contact portion; When the predetermined portion is successfully positioned at the third position, information on the third position is acquired. 10. The robot system according to item 8 or 9,
[0212] (Section 11) When the control unit fails to position the predetermined portion at the third position, the control unit moves the predetermined portion from the second position in a direction opposite to the second direction along the contact portion. Item 11. The robot system according to item 10,
[0213] (Section 12) The positional relationship includes a relationship between a first coordinate system based on the robot and a second coordinate system based on the worktable. 12. The robot system according to any one of items 1 to 11,
[0214] (Section 13) the control unit updates the teaching points set with the second coordinate system as a reference to teaching points with the first coordinate system as a reference based on the information on the positional relationship, and controls the robot according to the updated teaching points. Item 13. The robot system according to item 12,
[0215] (Section 14) the work table has a flat surface and a contact portion that is contactable with the predetermined portion and has a shape that guides the contacted predetermined portion to the third position; the second coordinate system is a three-dimensional Cartesian coordinate system; The contact portion includes a first protrusion extending parallel to a first axis of the second coordinate system and a second protrusion extending parallel to a second axis of the second coordinate system. 14. The robot system according to item 12 or 13,
[0216] (Section 15) the work table has a flat surface and a contact portion that is contactable with the predetermined portion and has a shape that guides the contacted predetermined portion to the third position; the second coordinate system is a three-dimensional Cartesian coordinate system; The contact portion includes a groove portion extending parallel to a first axis of the second coordinate system and a protrusion portion extending parallel to a second axis of the second coordinate system. 14. The robot system according to item 12 or 13,
[0217] (Section 16) The control unit is acquiring a first vector, a second vector, and a third vector which are orthogonal to each other from the first position, the second position, and the third position, and acquiring information of the second coordinate system based on the first vector, the second vector, and the third vector. 16. The robot system according to any one of items 12 to 15,
[0218] (Section 17) the first vector is a vector directed from the third position to the second position, the second vector is a vector perpendicular to a plane including the first position, the second position, and the third position, The third vector is a vector orthogonal to the first vector and the second vector. Item 17. The robot system according to item 16,
[0219] (Section 18) The robot has a sensor used to obtain information on a force acting on the predetermined portion, The control unit determines whether or not the predetermined portion has contacted the worktable based on the force information acquired from the sensor. 18. The robot system according to any one of items 1 to 17,
[0220] (Section 19) the sensor includes a plurality of torque sensors each arranged at a plurality of joints of the robot and capable of acquiring torque information; Item 19. The robot system according to item 18, characterized in that
[0221] (Section 20) The robot has a robot arm, The sensor includes a force sensor disposed between the robot arm and the predetermined portion and capable of acquiring information on force in at least three translational directions. Item 19. The robot system according to item 18, characterized in that
[0222] (Section 21) the control unit sets a force with which the predetermined portion contacts the work table when acquiring information on the position on the movement path to be lower than a force with which the predetermined portion contacts the work table when the predetermined portion is being moved in contact with the work table. 21. The robot system according to any one of items 1 to 20,
[0223] (Section 22) The workbench includes a main body and a jig disposed on the main body; The control unit acquires the position information by moving the specific portion while the specific portion is in contact with the jig. 22. The robot system according to any one of items 1 to 21,
[0224] (Section 23) The control unit operates the robot in accordance with an operating force applied by a worker to operate the robot, and acquires the position information. 23. The robot system according to any one of items 1 to 22,
[0225] (Section 24) A control method for a control unit that controls a robot based on information on a relative positional relationship between a robot and a workbench, comprising: acquiring information on a position on a movement path when a predetermined portion of the robot is moved from a first position to a third position via a second position while the predetermined portion is in contact with the work table; acquiring the information on the positional relationship based on information on the position on the movement path; A control method comprising:
[0226] (Section 25) Item 24. A method for manufacturing an article, comprising the steps of: manufacturing an article by using the robot system according to any one of items 1 to 23.
[0227] (Section 26) Item 25. A program for causing a computer to execute the control method according to item 24.
[0228] (Section 27) Item 27. A computer-readable recording medium having the program according to item 26 recorded thereon. [Explanation of symbols]
[0229] 100...robot, 102...probe (predetermined portion), 440...control unit, 800...work table, 801...position (first position), 802...position (second position), 803...position (third position), 1000...robot system
Claims
1. Robots and A worktable on which the robot works; a control unit that controls the robot based on information on a relative positional relationship between the robot and the workbench, The control unit is acquiring information on a position on a movement path when a predetermined portion of the robot is moved from a first position to a third position via a second position while the predetermined portion is in contact with the work table; acquiring the information on the positional relationship based on information on the position on the movement path; A robot system comprising:
2. The information on the positions on the moving path includes information on the first position, information on the second position, and information on the third position.
2. The robot system according to claim 1 .
3. The control unit controls the robot based on the information on the positional relationship in a first mode, and acquires the information on the positional relationship in a second mode.
2. The robot system according to claim 1 .
4. The apparatus further includes a movable platform movable relative to the workbench, The robot is disposed on the moving platform.
2. The robot system according to claim 1 .
5. The predetermined portion is a probe.
2. The robot system according to claim 1 .
6. The work table has a flat surface and a contact portion that is contactable with the predetermined portion and has a shape that guides the predetermined portion to the third position.
2. The robot system according to claim 1 .
7. The control unit brings the predetermined portion into contact with the plane to obtain information on the first position.
7. The robot system according to claim 6.
8. After the predetermined portion is brought into contact with the flat surface, the predetermined portion is moved in a first direction from the first position; When the predetermined portion is successfully brought into contact with the contact portion, information on the second position is acquired.
7. The robot system according to claim 6.
9. When the control unit fails to bring the predetermined portion into contact with the contact portion, the control unit moves the predetermined portion from the first position in a direction different from the first direction. The robot system according to claim 8 .
10. the control unit causes the predetermined portion to come into contact with the contact portion, and then moves the predetermined portion from the second position in a second direction following the contact portion; When the predetermined portion is successfully positioned at the third position, information on the third position is acquired. The robot system according to claim 8 .
11. When the control unit fails to position the predetermined portion at the third position, the control unit moves the predetermined portion from the second position in a direction opposite to the second direction along the contact portion. The robot system according to claim 10 .
12. the positional relationship includes a relationship between a first coordinate system based on the robot and a second coordinate system based on the worktable; 2. The robot system according to claim 1 .
13. the control unit updates the teaching point set with reference to the second coordinate system to a teaching point with reference to the first coordinate system based on the information on the positional relationship, and controls the robot according to the updated teaching point. The robot system according to claim 12 .
14. the work table has a flat surface and a contact portion that is contactable with the predetermined portion and has a shape that guides the contacted predetermined portion to the third position, the second coordinate system is a three-dimensional Cartesian coordinate system; the contact portion includes a first protrusion extending parallel to a first axis of the second coordinate system and a second protrusion extending parallel to a second axis of the second coordinate system; The robot system according to claim 12 .
15. the work table has a flat surface and a contact portion that is contactable with the predetermined portion and has a shape that guides the contacted predetermined portion to the third position, the second coordinate system is a three-dimensional Cartesian coordinate system; the contact portion includes a groove portion extending parallel to a first axis of the second coordinate system and a protrusion portion extending parallel to a second axis of the second coordinate system. The robot system according to claim 12 .
16. The control unit is acquiring a first vector, a second vector, and a third vector which are orthogonal to each other from the first position, the second position, and the third position, and acquiring information of the second coordinate system based on the first vector, the second vector, and the third vector. The robot system according to claim 12 .
17. the first vector is a vector directed from the third position to the second position, the second vector is a vector perpendicular to a plane including the first position, the second position, and the third position; the third vector is a vector orthogonal to the first vector and the second vector; 17. The robot system according to claim 16.
18. The robot has a sensor used to obtain information on a force acting on the predetermined portion, The control unit determines whether or not the predetermined portion has contacted the worktable based on the force information acquired from the sensor.
2. The robot system according to claim 1 .
19. the sensor includes a plurality of torque sensors each arranged at a plurality of joints of the robot and capable of acquiring torque information; 20. The robot system of claim 18.
20. The robot has a robot arm, The sensor includes a force sensor disposed between the robot arm and the predetermined portion and capable of acquiring information on force in at least three translational directions.
20. The robot system of claim 18.
21. the control unit sets a force with which the predetermined portion contacts the work table when acquiring information on the position on the movement path to be lower than a force with which the predetermined portion contacts the work table when the predetermined portion is being moved in contact with the work table.
2. The robot system according to claim 1 .
22. The workbench includes a main body and a jig disposed on the main body; The control unit acquires the position information by moving the specific portion while the specific portion is in contact with the jig.
2. The robot system according to claim 1 .
23. The control unit operates the robot in accordance with an operating force applied by a worker to operate the robot, and acquires the position information.
2. The robot system according to claim 1 .
24. A control method for a control unit that controls a robot based on information on a relative positional relationship between a robot and a workbench, comprising: acquiring information on a position on a movement path when a predetermined portion of the robot is moved from a first position to a third position via a second position while the predetermined portion is in contact with the work table; acquiring the information on the positional relationship based on information on the position on the movement path; A control method comprising:
25. A method for manufacturing an article, comprising the steps of: manufacturing an article by using the robot system according to any one of claims 1 to 23;
26. A program for causing a computer to execute the control method according to claim 24.
27. A computer-readable recording medium having the program according to claim 26 recorded thereon.
Citation Information
Patent Citations
Calibration tool, workpiece installation stand, and calibration method
JP2010284750A
Robot system, robot control device and robot control method
JP2015033747A