Robot system, robot system control method, article manufacturing method using robot system, external input device, external input device control method, control program, and recording medium

JP2023170569A5Pending Publication Date: 2026-02-17CANON KK
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2022082417
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-05-19
Publication Date
2026-02-17

AI Technical Summary

Technical Problem

Existing robot systems require complex image processing and calibration to set the gripping posture for small and varied workpieces, making it difficult to easily automate the manufacturing process.

Method used

A robot system equipped with sensors that measure light conditions and a control device to set the robot's posture based on light data, eliminating the need for image processing and calibration, using a button to determine the teaching posture.

Benefits of technology

Enables easy and efficient setting of the robot's posture for various tasks, reducing teaching time and costs by eliminating the need for image processing and sensor calibration, and allowing direct user teaching.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

To facilitate setting of an attitude of a robot for executing various work.SOLUTION: A robot system is provided with a robot, a sensor that obtains information concerning light and a control device. The control device obtains a state of light obtained by the sensor at a predetermined timing, as data concerning teaching for the robot.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a robot. [Background technology]

[0002] In recent years, there has been an increasing demand for automating the manufacturing processes of industrial products such as cameras and printers, which were previously performed manually, using robotic devices equipped with robotic hands and robotic arms. Many of the parts (workpieces) that make up these products are small and precise, and come in a wide variety of shapes and materials. Therefore, in order for the robotic hand to correctly grasp the workpiece, it is necessary to set the robotic hand in a gripping posture suitable for the workpiece. One of the above-mentioned methods is the technology described in Patent Document 1. Patent Document 1 below discloses a technology in which a camera is installed on a fingertip, the camera on the fingertip is used to measure the distance to the workpiece, and a posture suitable for gripping the workpiece is set. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2009-66678 Summary of the Invention [Problem to be solved by the invention]

[0004] However, the technology described in Patent Document 1 requires image processing to measure the position and orientation of the workpiece using a camera. When performing image processing, various adjustments (camera calibration, image processing parameter adjustment, etc.) are required, which poses a problem in that it becomes difficult to easily set the orientation for gripping and assembly.

[0005] An object of the present invention is to easily set the posture of a robot for performing various tasks. [Means for solving the problem]

[0006] The present invention employs a robot system comprising a robot, a sensor that acquires information about light, and a control device, wherein the control device acquires the state of the light acquired by the sensor at a predetermined timing as data related to teaching the robot. [Effects of the Invention]

[0007] According to the present invention, it is possible to easily set the posture of a robot for performing various tasks. [Brief explanation of the drawings]

[0008] [Figure 1] 1 is a diagram showing a schematic configuration of a robot system 100 according to an embodiment. [Figure 2] FIG. 1 is a diagram illustrating a configuration of a sensor system according to an embodiment. [Figure 3] 1 is a diagram showing a schematic configuration of a robot hand body 300 in an embodiment. [Figure 4] 1 is a flowchart showing a teaching procedure in the robot system 100 according to the embodiment. [Figure 5] 10 is a flowchart showing a processing procedure when a taught operation is executed in the robot system 100 according to the embodiment. [Figure 6] FIG. 2 is a schematic diagram of teaching in the robot system 100 according to the embodiment. [Figure 7] 1A and 1B are schematic diagrams illustrating the execution of a taught operation in the robot system 100 according to the embodiment. [Figure 8] FIG. 1 is a diagram showing a schematic configuration of a robot system 100′ according to an embodiment. [Figure 9] 3 is a diagram showing a schematic configuration of a suction hand 310 in the embodiment. FIG. [Figure 10] FIG. 2 is a schematic diagram of teaching in a robot system 100′ according to an embodiment. [Figure 11]1A and 1B are schematic diagrams illustrating the execution of a taught operation in a robot system 100′ according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0009] Preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings. Note that the examples shown below are merely examples, and for example, the detailed configurations can be changed without departing from the spirit of the present invention. Furthermore, the numerical values ​​used in each embodiment are for reference only and do not limit the present invention.

[0010] (First embodiment) 1 is an explanatory diagram showing a schematic configuration of a robot system to which the present invention can be applied. The robot system 100 of this embodiment is composed of a robot arm body 200, a robot hand body 300, a robot hand control device 500, a robot arm control device 400, a sensor control device 700, and an external input device 900. A workpiece W1, which is an object to be grasped (an object to be assembled), is placed on a mounting table S1. A workpiece W2, which is an object to be assembled, is placed on a mounting table S2.

[0011] The robot system 100 can manufacture industrial products or articles by grasping, manipulating, and assembling (fitting) a workpiece W1 to a workpiece W2. For example, the operation on the workpiece W1 is performed by using the robot arm body 200 and the robot hand body 300 to grasp and move the workpiece W1 as an object to be grasped, and then fitting or assembling the workpiece W1 to the workpiece W2. The external input device 900 is connected to the robot arm control device 400, the robot hand control device 500, and the sensor control device 700 via an external IF (not shown) and a bus (not shown). The external input device 900 is equipped with a touch panel 901, which will be described later, and the GUI on the touch panel 901 can be changed by programming it by the user. When teaching the operation of the robot arm body 200 and the robot hand body 300, an optical teaching button 902 is displayed on the touch panel 901 and used as an input button.

[0012] In this embodiment, the robot arm body 200 is a multi-joint robot arm, and the base of the robot arm body 200 is fixed to a pedestal 600. A robot hand body 300, which serves as an end effector, is attached to the tip of the robot arm body 200. The end effector is a predetermined part of the robot arm body 200. In this embodiment, the description will be given using an end effector as an example of the predetermined part, but the predetermined part may also be a joint of the robot arm body 200. The robot hand body 300 is also equipped with a sensor node 800. This robot hand body 300 is used to perform an operation on a workpiece W1. Each joint of the robot arm body 200 is also provided with a motor as a drive source for driving the joint, and an encoder as position detection means for detecting the rotation angle of the motor. The installation position and output method of the encoder are not important.

[0013] The robot hand body 300 is a hand with one or more degrees of freedom that opens and closes two fingers using a motor and an opening / closing mechanism (described later) to grip or release the workpiece W1, and is only required to grip the workpiece W1 without displacing it relative to the robot arm body 200. Note that, although the number of fingers is two in this embodiment, this can be changed as appropriate by those skilled in the art. Also, in this embodiment, the fingers of the robot hand body 300 are driven by a motor (not shown), but they may be air grippers driven by air pressure or the like.

[0014] The robot arm control device 400 has a CPU (Central Processing Unit) 401, a ROM (Read Only Memory) 402, and a RAM (Random Access Memory) 403. It also has an arm IF (Interface) 404 for communicating with the outside, an external IF 405, and a flash ROM 406. The ROM 402 or the flash ROM 406 stores programs for controlling corresponding drive units in accordance with various operations of the robot arm main body 200, as well as data required for such control. The RAM 403 functions as a work area for the CPU 401.

[0015] The arm IF 404 functions as an interface for communicating with the robot arm main body. The external IF 405 functions as an interface for communicating with the robot hand control device 500, the sensor control device 700, and the external input device 900. The CPU 401 calculates the angle that each joint should take with respect to the target position and posture of the tip of the robot arm main body 200, which is the destination of the robot hand main body 300. Then, command values ​​are output via the arm IF 404 to servo circuits (not shown) that control the motors of each joint, thereby driving and controlling each joint of the robot arm main body 200. In this way, the workpiece W1 gripped by the robot hand main body 300 can be transported to the target position.

[0016] Like the robot arm control device 400, the robot hand control device 500 also has a CPU 501, ROM 502, RAM 503, hand IF 504, external IF 505, and flash ROM 506. The ROM 502 or flash ROM 506 stores programs for controlling corresponding drive units in accordance with various operations of the robot hand main body 300, as well as data necessary for these controls. The RAM 503 functions as a work area for the CPU 501.

[0017] The hand IF 504 functions as an interface for communicating with the robot hand body 300. The external IF 505 functions as an interface for communicating with the robot arm control device 400, the sensor control device 700, and the external input device 900. The CPU 501 calculates the angle that the drive source should take with respect to the target position of the fingers of the robot hand body 300. Then, a command value is output via the hand IF 504 to a servo circuit (not shown) that controls the drive source, thereby controlling the drive of the fingers of the robot hand body 300. This allows the robot hand body 300 to grasp the workpiece W1.

[0018] FIG. 2 is a control block diagram showing the control configuration of the sensor system according to this embodiment. The sensor system of this embodiment is composed of sensors 811-824, a sensor node 800, and a sensor control device 700 that controls the sensors 811-824 in an integrated manner. In this embodiment, the sensors 811-824 are optical sensors, which are proximity sensors. The optical sensors are photoreflectors consisting of an LED 851 and a phototransistor 852. While FIG. 2 uses sensor 811 as an example, the other sensors are similar. The LED 851, which serves as the transmitter, is preferably an infrared LED that is less susceptible to external light. Light emitted from the transmitter is reflected by the robot's surrounding environment, such as workpieces W1 and W2 and mounting tables S1 and S2, and the reflected light is received by the phototransistor in the receiver to measure illuminance. The phototransistor outputs a current corresponding to the illuminance. The current can be measured as a voltage by passing it through a resistor. Although optical sensors are used as proximity sensors in this embodiment, magnetic, electrostatic, or ultrasonic proximity sensors may also be used.

[0019] The sensor node 800 has a power supply controller 801 and a sensor data acquisition unit 802. The power supply controller 801 can control the on / off of the power supplies of the sensors 811 to 824. The sensor data acquisition unit 802 can acquire the outputs (detection results) of the sensors 811 to 824. In this embodiment, the outputs of the sensors 811 to 814 are voltages, and the sensor data acquisition unit 802 is equivalent to an AD converter. Furthermore, the power supply controller 801 and the sensor data acquisition unit 802 are provided with a node IF 803 capable of serial communication in order to communicate with the sensor control device 700.

[0020] The sensor control device 700 has a CPU 701, a ROM 702, a RAM 703, a sensor IF 704, an external IF 705, and a flash ROM 706. The ROM 702 or the flash ROM 706 stores programs for controlling the power supply of the sensors 811 to 824 and acquiring and correcting sensor data, as well as data necessary for these controls. The RAM 703 functions as a work area for the CPU 701. The sensor IF 704 functions as an interface connected to the node IF 803 for communicating with the power supply controller 801 and sensor data acquisition unit 802 in the sensor node 800. The external IF 705 functions as an interface for communicating with the robot arm control device 400, the robot hand control device 500, etc.

[0021] 3 is a diagram showing the schematic configuration of a robot hand body 300 of this embodiment. The robot hand body 300 has a hand motor driver 301, an encoder 302, a hand motor 303, a gear 304, fingers 305 and 306, and slide guides 307 and 308. The hand motor driver 301 measures the rotation angle of the hand motor 303 with the encoder 302 and performs feedback control based on command values ​​from each control device. The positions of the fingers 305 and 306 can be controlled via the gear 304 and slide guides 307 and 308.

[0022] Sensors 811-813, 821, and 822 are disposed at the tips of the finger portion 305. The sensors 811-813 are disposed on the same plane within an area of ​​the finger portion 305 that is smaller than the thickness of the workpiece W1 in the Z-axis direction. An LED is irradiated in the gripping direction (X-axis direction) of the finger portion 305 and the workpiece W1, and the distance between the finger portion 305 and the workpiece W1 can be measured by measuring the reflected light. Furthermore, sensors 821 and 822 are disposed at the tips of the finger portion 305 in the hand tip direction (Z-axis direction), and can measure the distance between the finger portion 305 and the workpiece W2 by measuring the reflected light from the mounting tables S1 and S2, the workpiece W2, etc.

[0023] Similar to the finger 305, sensors 814 to 816, 823, and 824 are arranged for the finger 306. The sensors 814 to 816 are arranged on the same plane as the finger 306 within an area smaller than the thickness of the workpiece W1 in the Z-axis direction. The distance between the finger 306 and the workpiece W1 can be measured by irradiating an LED in the gripping direction (X-axis direction) of the finger 306 and the workpiece W1 and measuring the reflected light. The sensors 823 and 824 are arranged at the tip of the finger 306 in the hand tip direction (Z-axis direction), and can measure the distance between the finger 306 and the workpiece W2 by measuring the reflected light from the mounting tables S1 and S2 and the workpiece W2. Meanwhile, the sensors 817 to 820 are arranged on the palm of the robot hand main body 300 at positions where their lengths relative to the workpiece W1 are greater than the width of the workpiece W1 in the Y-axis direction (the direction perpendicular to the gripping direction of the fingers). The sensors 817 to 820 can measure the distance between the palm of the robot hand body 300 and the workpiece W1.

[0024] Next, the processing procedure for teaching the robot system 100 and the processing procedure for the operation of the robot system 100 in this embodiment will be described using the flowcharts shown in Fig. 4 and Fig. 5. Fig. 4 describes the case where teaching the robot system 100 is performed, and Fig. 5 describes the case where the taught operation is executed in the robot system 100. The flow described below is executed by the CPUs of the respective control devices communicating with each other.

[0025] In addition, the following description will be made using, as appropriate, a schematic diagram of the case where an operation related to the robot system 100 is taught as shown in FIG. 6 and a schematic diagram of the case where the operation taught to the robot system 100 is executed as shown in FIG. As a premise, it is assumed that the workpiece W1 is a rectangular parallelepiped and is placed with some variation within the range of the mounting table S1. Similarly, when assembling the workpiece W1 to the workpiece W2, it is assumed that the workpiece W2 is placed on the mounting table S2 with some variation. FIG. 6(a) shows a case where the operation of gripping the workpiece W1 with the fingers 305 and 306 is taught, and FIG. 6(b) shows a case where the operation of assembling the workpiece W1 gripped by the fingers 305 and 306 to the workpiece W2 is taught. FIG. 7(a) is a diagram of the case where the operation taught in FIG. 6(a) is executed, and FIG. 7(b) is a diagram of the case where the operation taught in FIG. 6(b) is executed.

[0026] Furthermore, it is assumed that the workpieces W1 and W2 have dimensional tolerances within a range that allows for gripping and assembly. As the starting state of the flowcharts in Figures 4 and 5, in the case of Figure 4, it is assumed that the user has operated the robot system 100 up to the state immediately before Figures 6(a) and 6(b). In the case of Figure 5, it is assumed that the robot system 100 has operated up to the taught state of Figures 6(a) and 6(b).

[0027] First, in step S11, the LEDs 851 of the sensors 811 to 824 are turned on in step S11 as shown in Fig. 4. In Fig. 6(a), the user operates the robot system 100 to a predetermined posture just before the robot hand main body 300 grasps the workpiece W1, and the LEDs 851 of the sensors are turned on. In Fig. 6(b), the user operates the robot system 100 to a predetermined posture just before the robot hand main body 300 grasps the workpiece W1 and assembles it to the workpiece W2, and the LEDs 851 of the sensors are turned on.

[0028] Here, the light projection frequencies of the LEDs of the sensors 811 to 824 are set to be different from each other. As a result, by performing a Fourier transform on the output signal of each sensor, it is possible to identify which sensor's LED is responsible for the reflected light. In other words, since it is not necessary to turn on the LEDs in sequence, it is possible to shorten the time it takes to acquire sensor data. For example, if the sampling frequency fs of the sensors 811 to 824 is 1 kHz and the number of samples N is 50, the frequency resolution Δf is 20 Hz (= 1 kHz / 50). The sensor outputs can be resolved by setting the light projection frequencies of the LEDs of the sensors 811 to 824 to 20 Hz, 40 Hz, . . . , and 280 Hz, respectively.

[0029] Next, in step S12, it is determined whether the light teaching button 902 has been pressed. If the light teaching button 902 has not been pressed, step S12: NO is reached and the process returns to the state immediately before step S12. On the other hand, if the light teaching button 902 has been pressed, step S12: YES is reached and the process proceeds to step S13.

[0030] Then, in step S13, data from each sensor is acquired (stored) along with the optical teaching number. Sensor data of the hand of the robot arm main body 200 in a predetermined posture at a predetermined timing when the optical teaching button 902 is pressed is acquired (stored) as teaching data. The optical teaching number is assumed to be selected in advance using the touch panel 901 of the external input device 900. In other words, the optical teaching number is a management number used by the user to manage teaching data. For example, the optical teaching number of the teaching data in FIG. 6(a) is 1, and the optical teaching number of the teaching data in FIG. 6(b) is 2. First, the phototransistors 852 of the sensors 811 to 824 acquire the respective illuminances as output values. Next, the output values ​​are Fourier transformed and resolved by frequency to acquire the illuminance of the reflected light from each sensor as the illuminance target value lrefi_j. The subscripts indicate the target illuminance value when the reflected light from the LED 851 of sensor i is acquired by the phototransistor 852 of sensor j. The illuminance target value vector lref(1×196) at this time is expressed by the following equation. l ref =[l ref811_811 lref811_812 …l ref824_823 l ref824_824 ] T (1)

[0031] In this embodiment, all LEDs are targeted, but the LEDs related to the teaching may be limited to be acquired.

[0032] The illuminance target value vector lref is stored in the flash ROM 405, 406, etc., along with the light teaching number as teaching data for the light teaching. When acquiring (storing) the illuminance target value, the coordinates of the hand teaching point of the robot arm main body 200 when the light teaching button 902 is pressed may be stored at the same time. The range of possible hand teaching point coordinates and the work environment mode may also be stored. The work environment mode refers to the type of work, and / or the type of workpieces W1 and W2, and / or the positional relationship (coordinate values) of the sensors 811-824, and / or the light emission frequency of each LED of the sensors 811-824, and / or the weighting matrix λ (described later). As described above, by following the flowchart shown in FIG. 4, the predetermined posture of the robot system 100 shown in FIGS. 6(a) and 6(b) can be taught.

[0033] Next, the processing procedure for executing the operation of the robot system 100 taught in this embodiment will be described using the flowchart shown in FIG. 5. It is assumed that the teaching described in FIGS. 4 and 6 has already been completed. In addition, when grasping the workpiece W1, the sensors 811 to 824 are assumed to be able to measure the workpiece W1 or the mounting table S1 as the starting point for the robot hand body 300 to automatically grasp the workpiece W1. In addition, the position and orientation of the robot hand body 300 are assumed to be changed in order to grasp the workpiece W1 (FIG. 7(a)). In addition, in order to assemble the workpiece W1, the sensors 811 to 824 are assumed to be able to measure the workpiece W2 as the starting point for the robot hand body 300 to automatically assemble the workpiece W2. In addition, the position and orientation of the robot hand body 300 are assumed to be changed in order to assemble the workpiece W2 (FIG. 7(b)).

[0034] 5, first, in step S21, the LEDs 851 of the sensors 811 to 824 are turned on. The light emission frequency of the LEDs is the same as in step S11 during teaching.

[0035] Next, in step S22, the sensor data associated with the optical teaching number is used to operate the robot arm main body 200. The joint angle command value difference vector Δθ, which is a command value to the robot arm main body 200, is calculated by the following equation.

[0036]

number

[0037] where Ja is the arm Jacobian matrix, λ is the weighting matrix, lref is the illuminance target value vector, l is the illuminance vector, and V is the hand velocity vector. The hand velocity vector V consists of a three-degree-of-freedom velocity vector and a three-degree-of-freedom angular velocity vector. Note that it is based on the hand coordinate system, not the robot base coordinate system. The arm Jacobian matrix Ja is a general Jacobian matrix of the hand velocity vector V and the joint angular velocity vector based on the hand coordinate system. The illuminance target value vector lref is the illuminance target value vector lref acquired in step S13 of Figure 4. The illuminance target value vector lref is associated with the light teaching number and is read from the flash ROM 405, 406, etc., where it is stored. The illuminance vector l is the current illuminance value of the sensors 811 to 824 in step S22. The acquisition method is the same as in step S13.

[0038] The weighting matrix λ is a matrix relating the illuminance value l and the hand velocity V. To determine the elements of the weighting matrix λ, first set zero if there is no relationship between each illuminance value and the hand velocity to be corrected. If there is a relationship between each illuminance value and the hand velocity to be corrected, determine whether the element is positive or negative based on the hand velocity direction. Finally, determine the magnitude of the element value so that the arm movement converges. The magnitude of the element value may be set by the user or may be determined based on the results of machine learning, etc.

[0039] Then, in step S23, the arm operation completion condition is compared with the arm operation completion condition, which is that the following expression is satisfied. |l ref -l|<ε (3)

[0040] Here, ε is an allowable error vector, which may be set by the user or determined based on the results of machine learning, etc. If the completion conditions are met, step S23: YES is reached and the operation ends. As a result, the posture of the hand of the robot arm main body 200 becomes the state shown in FIG. 6(a) or 6(b). On the other hand, if the completion conditions are not met, step S23: NO is reached and the process returns to just before step S22. Then, when gripping the workpiece W1, the fingers 305 and 306 are moved closer to each other to grip the workpiece W1. When assembling the gripped workpiece W1 to the workpiece W2, the workpiece W1 is moved closer to the workpiece W2 and assembled.

[0041] As described above, according to this embodiment, the robot hand body 300 can be automatically positioned to the optically taught state. Furthermore, even when there is variation in the workpiece position, no adjustments such as image processing are required, and no vision is required, which shortens the teaching time and reduces costs. Therefore, the gripping posture and assembly posture of the robot can be easily set. Furthermore, since the teaching data is based on a physical quantity related to light, such as illuminance value, there is no need to convert the sensor output value into distance. Therefore, calibration of the placement of each sensor is not required, and the man-hours required for adjusting the placement of each sensor can be reduced.

[0042] (Second embodiment) In the first embodiment described above, a case has been described in which a hand having fingers is used to grasp and assemble a workpiece. However, the present invention can also be implemented in the case of a suction hand. Also, in the first embodiment described above, a case has been described in which an optical teaching button is arranged on a teaching device having a touch panel. However, the present invention can also be implemented in the case in which an optical teaching button is arranged on the robot arm main body 200. Below, parts of the hardware and control system configuration that are different from those in the first embodiment will be illustrated and described. Furthermore, it is assumed that parts similar to those in the first embodiment can have the same configuration and function as those described above, and detailed description thereof will be omitted.

[0043] 8 is a diagram showing a schematic configuration of a robot system 100' in this embodiment. In this embodiment, unlike the first embodiment, a suction hand 310 is attached to the tip of a robot arm main body 200 as an end effector. In addition, an optical teaching button 903 is disposed on the robot arm main body 200, not on a touch panel 901 of an external input device 900. The location of the optical teaching button 903 is preferably near the hand or wrist of the robot arm main body 200, as this allows for easy operation by the user during direct teaching.

[0044] FIG. 9 is a diagram showing a schematic configuration of the suction hand 310 in this embodiment. A suction pad 311 is disposed at the tip of the suction hand 310, and the suction hand 310 suctions the workpiece W1 using negative pressure air. The negative pressure air is supplied from a vacuum pump (not shown) via an air joint 312 attached to the suction hand 310. An air hose (not shown) connects the vacuum pump (not shown) to the air joint 312 and controls the air hose via a solenoid valve (not shown). Sensors 831 to 838 are disposed near the suction pad 311, facing the hand tip (Z-axis direction). Sensors 831 to 834 are disposed within the suction pad 311 and are used to measure the light reflected from the workpiece W1. Sensors 835 to 838 are disposed around the suction pad 311 and are used to measure the light reflected from the workpieces W1 and W2, the mounting tables S1 and S2, etc.

[0045] Next, the processing procedure for teaching the robot system 100 and the processing procedure for the operation of the robot system 100' in this embodiment will be described using the flowcharts shown in Figures 4 and 5. The explanation will also be made using the schematic diagram of teaching the operation of the robot system 100' shown in Figure 10 and the schematic diagram of executing the operation taught to the robot system 100' shown in Figure 11, as appropriate. The flow described below is executed by the CPUs of each control device communicating with each other. It is assumed that the workpiece W1 is a rectangular parallelepiped and is placed with some variation within the range of the mounting table S1. Similarly, when assembling the workpiece W1 to the workpiece W2, the workpiece W2 is placed on the mounting table S2 with some variation.

[0046] Fig. 10(a) shows a case where the operation of holding workpiece W1 by suction pad 311 is taught, and Fig. 10(b) shows a case where the operation of assembling workpiece W1 held by suction pad 311 to workpiece W2 is taught. Fig. 11(a) is a diagram showing the case where the operation taught in Fig. 10(a) is executed, and Fig. 11(b) is a diagram showing the case where the operation taught in Fig. 10(b) is executed.

[0047] Furthermore, it is assumed that the workpieces W1 and W2 have dimensional tolerances within a range that allows for gripping and assembly. The flowcharts of Figures 4 and 5 start in the case of Figure 4, where the user has operated the robot system 100' up to the state immediately preceding Figures 10(a) and 10(b). In the case of Figure 5, it is assumed that the robot system 100' has operated up to the taught state of Figures 10(a) and 10(b).

[0048] First, in step S11, the LEDs 851 of the sensors 831 to 838 are turned on in step S11 as shown in Fig. 4. In Fig. 10(a), the user operates the robot system 100' to a predetermined posture just before the suction hand 310 holds the workpiece W1, and the LEDs 851 of the sensors are turned on. In Fig. 10(b), the user operates the robot system 100' to a predetermined posture just before the suction hand 310 holds the workpiece W1 and assembles it to the workpiece W2, and the LEDs 851 of the sensors are turned on.

[0049] The light projection frequencies of the LEDs of the sensors 831 to 838 are set to be different from each other. As in the first embodiment, if the sampling frequency fs of the sensors 831 to 838 is 1 kHz and the number of samples N is 50, the sensor outputs can be resolved by setting the light projection frequencies of the LEDs of the sensors 831 to 838 to 20 Hz, 40 Hz, . . . , and 160 Hz, respectively.

[0050] Next, in step S12, it is determined whether the light teaching button 903 has been pressed. If the light teaching button 903 has not been pressed, step S12: NO is obtained and the process returns to the state immediately before step S12. On the other hand, if the light teaching button 903 has been pressed, step S12: YES is obtained and the process proceeds to step S13.

[0051] Then, in step S13, data from each sensor is acquired (stored) along with the optical teaching number. Sensor data in a predetermined posture of the hand of the robot arm main body 200 at a predetermined timing when the optical teaching button 903 is pressed is acquired (stored) as teaching data. The optical teaching number is assumed to be selected in advance using the touch panel 901 of the external input device 900. In other words, the optical teaching number is a management number used by the user to manage teaching data. For example, the optical teaching number of the teaching data in FIG. 10(a) is set to 3, and the optical teaching number of the teaching data in FIG. 10(b) is set to 4. First, the phototransistors 852 of the sensors 831 to 838 acquire the respective illuminances as output values. Next, the output values ​​are Fourier transformed and resolved by frequency to acquire the illuminance of the reflected light from each sensor as the illuminance target value lrefi_j. The illuminance target value vector lref(1×64) at that time is expressed as follows: l ref =[l ref831_831 l ref831_832 …l ref838_837 l ref838_838 ] T (4)

[0052] Although this embodiment targets all LEDs, acquisition may be limited to only the LEDs related to teaching. Then, as teaching data for light teaching, the illuminance target value vector lref is stored in the flash ROMs 405, 406, etc., along with the light teaching number. Therefore, the suction hand 310 can be taught by following the flowchart shown in FIG.

[0053] Next, a processing procedure for causing the robot system 100' in this embodiment to execute the taught operation will be described using the flowchart shown in FIG. 5. The schematic diagram shown in FIG. 11 will also be used for explanation as appropriate. It is assumed that the teaching in FIG. 10 has already been completed. Furthermore, in the case of suction, the sensors 831-838 are capable of measuring the workpiece W1 or the mounting table S1 as the starting point for the suction hand 310 to automatically pick up the workpiece W1. Furthermore, the position and orientation of the suction hand 310 are changed to pick up the workpiece W1 (FIG. 11(a)). Furthermore, in the case of assembly, the sensors 831-838 are capable of measuring the workpiece W2 as the starting point for the suction hand 310 to automatically assemble the workpiece W2. Furthermore, the position and orientation of the suction hand 310 are changed to assemble the workpiece W2 (FIG. 11(b)).

[0054] 5, first, in step S21, the LEDs 851 of the sensors 831 to 838 are turned on. The light emission frequency of the LEDs is the same as in step S11 during teaching.

[0055] Next, in step S22, the sensor data associated with the optical teaching number is used to operate the robot arm main body 200. The joint angle command value difference vector Δθ, which is a command value to the robot arm main body 200, is acquired using equation (2) of the first embodiment.

[0056] Then, in step S23, the arm operation completion condition is compared. The completion condition is that formula (3) in the first embodiment is satisfied. If the completion condition is satisfied, step S23: YES is reached and the operation ends. As a result, the posture of the hand of the robot arm main body 200 becomes the state shown in FIG. 10(a) or 10(b). On the other hand, if the completion condition is not satisfied, step S23: NO is reached and the process returns to the state just before step S22. Then, if the workpiece W1 is to be held, the suction pad 311 is brought close to the workpiece W1 and the workpiece W1 is held. If the held workpiece W1 is to be assembled to the workpiece W2, the workpiece W1 is brought close to the workpiece W2 and assembled.

[0057] As described above, according to this embodiment, the suction hand 310 can be automatically positioned to the optically taught state. Furthermore, even when there is variation in the workpiece position, no adjustments such as image processing are required, and no vision is required, thereby shortening teaching time and reducing costs. Therefore, the gripping and assembly postures of the robot can be easily set. Furthermore, since the teaching data is based on a physical quantity related to light, such as illuminance, there is no need to convert the sensor output value into distance. Therefore, calibration of the placement of each sensor is not required, and the labor required for adjusting the placement of each sensor can be reduced. Furthermore, by providing an optical teaching button on the robot arm main body 200, teaching can be performed during a user's direct teaching operation, making teaching the robot easier.

[0058] (Other embodiments) The processing procedures executed by the robot systems 100 and 100' of the above-described embodiments are specifically executed by the CPU of each control device. Therefore, it is also possible to configure the robot systems to read and execute a software program capable of executing the above-described functions from a recording medium. In this case, the program read from the recording medium itself realizes the functions of each of the above-described embodiments, and the program itself and the recording medium on which the program is recorded constitute the present invention.

[0059] In each embodiment, the computer-readable recording medium is a ROM, a RAM, or a flash ROM, and the program is stored in the ROM, RAM, or flash ROM. However, the present invention is not limited to this configuration. The program for implementing the present invention may be recorded on any computer-readable recording medium. For example, a HDD, an external storage device, a recording disk, or the like may be used as a recording medium for supplying the control program. Furthermore, an SSD (Solid State Drive) may be implemented instead of an HDD.

[0060] In addition, in the various embodiments described above, the robot arm body 200 is described as using a multi-joint robot arm having multiple joints, but the number of joints is not limited to this. Although a vertical multi-axis configuration has been shown as the type of robot arm, a configuration equivalent to the above can also be implemented with different types of joints, such as a horizontal multi-joint type, a parallel link type, or an Cartesian robot.

[0061] Furthermore, the various embodiments described above can be applied to machines that can automatically perform movements such as extension and contraction, bending and stretching, up and down movement, left and right movement, or rotation, or a combination of these movements, based on information stored in a memory device provided in the control device.

[0062] The present invention is not limited to the above-described embodiments, and many modifications are possible within the technical concept of the present invention. Furthermore, the effects described in the embodiments of the present invention are merely a list of the most preferable effects resulting from the present invention, and the effects of the present invention are not limited to those described in the embodiments of the present invention. Furthermore, the above-described various embodiments and modifications may be combined and implemented.

[0063] The disclosure of this embodiment also includes the following configurations and methods.

[0064] (Configuration 1) A robot system including a robot, a sensor for acquiring information about light, and a control device, the control device acquires the state of the light acquired by the sensor at a predetermined timing as data related to teaching of the robot; A robot system characterized by:

[0065] (Configuration 2) In the robot system according to configuration 1, a button for allowing a user to determine the predetermined timing; A robot system characterized by:

[0066] (Configuration 3) In the robot system according to configuration 2, The button is provided on an external input device connected to the robot or the control device. A robot system characterized by:

[0067] (Configuration 4) In the robot system according to any one of configurations 1 to 3, the robot includes a robot hand having fingers; A plurality of the sensors are provided, At least three of the sensors are provided on the finger portion and are arranged within a range from the tip of the finger portion to a length of the object in a direction perpendicular to a surface on which the object is placed. A robot system characterized by:

[0068] (Configuration 5) In the robot system according to configuration 4, The finger portion is provided on the palm portion, At least two sensors other than the three sensors are provided on the palm portion and are arranged at positions spaced apart from the finger portions by a distance greater than the length in a direction perpendicular to the direction in which the object is grasped by the finger portions. A robot system characterized by:

[0069] (Configuration 6) In the robot system according to configuration 5, the three sensors and a sensor other than the two sensors are disposed at positions where a distance between the tip of the finger and a table on which the object is placed can be measured; A robot system characterized by:

[0070] (Configuration 7) In the robot system according to any one of configurations 1 to 3, the robot includes a robot hand having a suction pad; A plurality of the sensors are provided, At least four of the sensors are provided on the suction pad. A robot system characterized by:

[0071] (Configuration 8) In the robot system according to configuration 7, At least four sensors other than the four sensors are provided around the suction pad. A robot system characterized by:

[0072] (Configuration 9) In the robot system according to any one of configurations 1 to 8, The sensors have different light projection frequencies. A robot system characterized by:

[0073] (Configuration 10) In the robot system according to any one of configurations 1 to 9, When acquiring the data, the control device acquires the illuminance of the sensor as the data. A robot system characterized by:

[0074] (Configuration 11) In the robot system according to any one of configurations 1 to 10, When acquiring the data, the control device acquires the data in association with at least one of the type of work to be performed by the robot, the object to be operated by the robot, and information about the sensor. A robot system characterized by:

[0075] (Configuration 12) In the robot system according to any one of configurations 1 to 11, the control device controls the position and / or posture of a predetermined part of the robot so as to approach the data. A robot system characterized by:

[0076] (Configuration 13) In the robot system according to configuration 12, the control device obtains a command value for controlling the position and / or posture of the predetermined portion using the illuminance vector in the data. A robot system characterized by:

[0077] (Configuration 14) In the robot system according to any one of configurations 1 to 13, When acquiring the data, the control device performs a Fourier transform on the output value from the sensor and resolves it into frequency components. A robot system characterized by:

[0078] (Configuration 15) In the robot system according to any one of configurations 1 to 14, The sensor includes an LED and a phototransistor. A robot system characterized by:

[0079] (Configuration 16) In the robot system according to any one of configurations 1 to 15, The robot includes a sensor control device that controls the sensors in an integrated manner. A robot system characterized by:

[0080] (Configuration 17) 17. The robot system according to any one of configurations 1 to 16, The sensor acquires, as the data, the state of light based on reflection of the light from the surrounding environment of the robot. A robot system characterized by:

[0081] (Method 18) 18. A method for manufacturing an article, comprising the steps of: manufacturing an article using the robot system according to any one of configurations 1 to 17.

[0082] (Method 19) A control method for a robot system including a robot, a sensor that acquires information about light, and a control device, comprising: The control device acquiring the state of the light acquired by the sensor at a predetermined timing as data related to teaching of the robot; Controlling the robot based on the data. A control method comprising:

[0083] (Configuration 20) A control program that can execute the control method according to Method 19 on a computer.

[0084] (Configuration 21) A computer-readable recording medium storing the control program according to configuration 20.

[0085] (Configuration 22) An external input device for inputting information to a robot system including a robot, a sensor for acquiring information related to light, and a control device, a button for acquiring the state of the light acquired by the sensor at a predetermined timing as data related to teaching of the robot; An external input device characterized by: [Explanation of symbols]

[0086] 100, 100' Robot System 200 Robot arm body 300 Robot hand body 301 Hand motor driver 302 Encoder 303 Hand motor 304 Gear 305, 306 fingers 307, 308 Slide Guide 310 Suction Hand 311 Suction pad 312 Air Fitting 400 Robot arm control device 500 Robot hand control device 600 pedestal 700 Sensor control device 800 sensor nodes 811~824, 831~838 Sensors 851 LED 852 Phototransistor 900 External Input Device 901 Touch Panel 902, 903 Optical teaching button S1, S2 mounting table W1, W2 work

Claims

1. A robot system comprising a robot hand equipped with a sensor for acquiring information about distance, and a control device, the control device acquires, as data related to teaching of the robot hand, information related to distance acquired by the sensor when a user sets the position and posture of the robot hand by direct teaching; A robot system characterized by:

2. 2. The robot system according to claim 1, a button for allowing a user to determine the timing of acquiring the data; A robot system characterized by:

3. 3. The robot system according to claim 2, The button is provided on a robot arm on which the robot hand is provided or on an external input device connected to the control device. A robot system characterized by:

4. In the robot system described in claim 2, the robot hand is provided on a robot arm, acquiring, as the data, the position and orientation of a predetermined part of the robot arm at the timing; A robotic hand characterized by:

5. In the robot system described in claim 1, the robot hand includes a finger portion and a palm portion, the sensor is provided on the palm, and acquiring, as the data, information regarding the distance acquired by the sensor when the user performs direct teaching on the palm of the hand. A robot system characterized by:

6. In the robot system described in claim 5, At least two of the sensors are provided on the palm portion and are arranged at positions spaced apart from the finger portions by a distance greater than the length in a direction perpendicular to the direction in which the object is grasped by the finger portions. A robot system characterized by:

7. In the robot system described in claim 5, At least three of the sensors are provided on the finger portion and are arranged within a range from the tip of the finger portion to a length of the object in a direction perpendicular to a surface on which the object is placed. A robot system characterized by:

8. In the robot system described in claim 5, The sensor is disposed at a position where a distance between the tip of the finger and a table on which an object is placed can be measured. A robot system characterized by:

9. 2. The robot system according to claim 1, the robot hand is provided with a suction pad, At least four of the sensors are provided on the suction pad. A robot system characterized by:

10. The robot system according to claim 9, The sensor is provided around the suction pad. A robot system characterized by:

11. 2. The robot system according to claim 1, The sensors each have a different light projection frequency. A robot system characterized by:

12. 2. The robot system according to claim 1, When acquiring the data, the control device acquires the illuminance of the sensor as the data. A robot system characterized by:

13. 2. The robot system according to claim 1, When acquiring the data, the control device acquires the data in association with at least one of the type of work to be performed by the robot hand, the object to be operated by the robot hand, and information related to the sensor. A robot system characterized by:

14. The robot system according to claim 4, the control device obtains a command value for controlling the position and / or posture of the predetermined portion using the illuminance vector in the data. A robot system characterized by:

15. 2. The robot system according to claim 1, When acquiring the data, the control device performs a Fourier transform on the output value from the sensor and resolves it into frequency components. A robot system characterized by:

16. 2. The robot system according to claim 1, The sensor includes an LED and a phototransistor. A robot system characterized by:

17. 2. The robot system according to claim 1, The sensor acquires information about the distance based on a light state based on reflection of light from the surrounding environment of the robot hand. A robot system characterized by:

18. A method for manufacturing an article, comprising the step of manufacturing an article using the robot system according to any one of claims 1 to 17.

19. A method for controlling a robot system including a robot hand equipped with a sensor for acquiring information about distance and a control device, comprising: The control device When a user sets the position and posture of the robot hand by direct teaching, information about the distance acquired by the sensor is acquired as data related to teaching of the robot hand. controlling the robot hand based on the data; A control method comprising:

20. An external input device for inputting information to a robot system including a robot hand equipped with a sensor for acquiring information related to distance and a control device, The system has a function of acquiring information about the distance acquired by the sensor when a user sets the position and posture of the robot hand by direct teaching as data related to teaching of the robot hand. An external input device characterized by:

21. A method for controlling an external input device that inputs information to a robot system including a robot hand equipped with a sensor that acquires information related to distance and a control device, comprising: When a user sets the position and posture of the robot hand by direct teaching, information about the distance acquired by the sensor is acquired as data related to teaching of the robot hand. A control method comprising:

22. A control program that enables a computer to execute the control method according to claim 19 or 21.

23. A computer-readable recording medium storing the control program according to claim 22. body.