Robot control device, robot system and teaching device
The robot control device addresses unpredictable behavior during surface or edge line teaching by using contact detection to set teaching points, facilitating easy and accurate trajectory teaching.
Patent Information
- Application Number
- DE112022006785
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-05-10
- Publication Date
- 2025-06-18
AI Technical Summary
Existing robot teaching methods struggle when teaching a trajectory that follows a surface or edge line of a workpiece, as reaction forces cause the robot to behave unpredictably, making intuitive teaching difficult.
A robot control device with a teaching point setting unit that sets positions based on contact detection by a mounted detector, allowing for intuitive teaching of trajectories with contact points.
Enables easy and accurate teaching of trajectories following edge lines or surfaces by automatically recording contact points, reducing the need for caution and maintaining intuitive operation.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
field of technology
[0001] The present invention relates to a robot control device, a robot system and a teaching device. State of the art
[0002] A technique for creating a robot program by direct teaching is known, in which an operator teaches a movement to the robot by directly operating it. In this regard, PTL 1 describes as follows: "When a lead-through operation is performed, a lead-through switch 44 is pressed, so that monitoring of a contact force is deactivated. Therefore, a robot 10 can be prevented from being inadvertently stopped due to an operating force applied to the robot 10 by an operator during the lead-through operation." (paragraph 0037).
[0003] PTL 2 refers to a robot control device and describes as follows: "A control unit stores, as an initial reference state, the position and posture of a robot arm in an initial phase in which an operator starts direct teaching by holding the robot arm and the like. When direct teaching starts, the control unit calculates a force control signal according to position information from a position detection unit and speed information from a speed detection unit and transmits it to a drive unit to control a force or torque of an actuator for driving the robot arm. When the actuator is a linear motion system, the force is controlled, and when the actuator is a rotary system, the torque is controlled.When the operator applies a force to the robot arm to move the robot arm from the reference state, the control unit stores the position and posture of the robot arm as a teach-in value of a trajectory." (paragraph 0017). List of citationsPatent literature [PTL 1] Unexamined Japanese Patent Publication (Kokai) No. 2015-199174 A [PTL 2] Unexamined Japanese Patent Publication (Kokai) No. 2019-030931 A Overview of the inventionTechnical task
[0004] As techniques for creating a robot program by direct teaching, there are a technique in which a robot control unit stores positions on a trajectory along which a robot is moved by an operator at predetermined time intervals, and a technique in which an operator operates a robot to stop at an important location, and the position of the robot when the robot is stopped is stored.
[0005] The technique of storing positions on a trajectory along which the robot moves at predetermined time intervals is suitable for teaching the robot a motion when a tool tip portion of the robot moves in mid-air without coming into contact with any object. However, when teaching a trajectory that follows a surface or edge line of a workpiece, a reaction force is exerted on the robot at the time of contact between the robot and the workpiece. In this case, the reaction force is detected by a force sensor or torque sensor mounted on the robot, and thus the robot is more likely to behave in such a way that it jumps away from the workpiece in one direction at the moment of contact with the workpiece.Since such robot behavior differs from a robot movement that is intuitively expected by an operator, teaching the robot is difficult.
[0006] In the technique where the operator stops the robot at a key location and saves the robot's position, the problem described above can be avoided by saving the robot's position immediately before the robot comes into contact with the workpiece. However, since extreme caution is required to stop the robot at a position immediately before the robot comes into contact with the workpiece, the advantage of direct teaching, that an operator can perform teaching through intuitive operation, is lost. Technical solution
[0007] One aspect of the present disclosure is a robot control device for controlling a robot, and the robot control device includes a teaching point setting unit configured to set, as a teaching point of a robot program, a position of the robot when contact between the robot and an object is detected based on an output of a first detector capable of detecting contact with the object, the first detector being mounted on the robot.
[0008] Another aspect of the present disclosure is a robot system including: a robot on which a first detector capable of detecting contact with an object is mounted; and a teaching point setting unit configured to set, as a teaching point of a robot program, a position of the robot when contact between the robot and the object is detected based on an output of the first detector.
[0009] Yet another aspect of the present disclosure is a teaching device for teaching a robot, and the teaching device includes a teaching point setting unit configured to set, as a teaching point of a robot program, a position of the robot when contact between the robot and an object is detected based on an output of a first detector capable of detecting contact with the object, the first detector being mounted on the robot. Advantageous effects of the invention
[0010] According to the configuration described above, when a trajectory including contact points with a workpiece, such as a trajectory following an edge line or a surface of a workpiece, is taught to a robot by direct teaching, an operator can easily perform a teaching operation.
[0011] The objects, features and advantages and other objects, features and advantages will become more apparent from the detailed description of typical embodiments of the present invention illustrated in the accompanying drawings. Short description of the drawings Fig. 1 is a diagram showing a device configuration of a robot system according to a first embodiment. Fig. 2 is a diagram showing an example of a hardware configuration of a robot controller and a teaching pendant. Fig. 3 is a functional block diagram of each device constituting the robot system according to the first embodiment. Fig. 4A is a graphical representation showing the operation procedure for teaching an edge line of a workpiece by direct teaching. Fig. Figure 4B is a graphical representation showing the operation procedure for teaching the edge line of the workpiece by direct teaching. Fig. Figure 5 is a flow chart illustrating a direct learning procedure. Fig. Figure 6 is a graphical representation showing an example of a program creation screen. Fig. 7 is a graphical representation showing a setting screen of a direct learning icon. Fig. 8 is a graphical representation showing an example of a state in which a direct teaching icon is developed and displayed. Fig. 9 is a diagram showing a device configuration of a robot system according to a second embodiment. Fig. 10 is a functional block diagram of the robot system according to the second embodiment. Fig. 11 is a functional block diagram of a robot system according to a third embodiment. Description of the embodiments
[0012] Next, embodiments of the present disclosure will be described with reference to the drawings. A similar configuration area or a similar functional area is denoted by the same reference numeral in the drawings. For clarity, a scale in the drawings is appropriately changed. An aspect illustrated in the drawing is an example of implementing the present invention, and the present invention is not limited to the illustrated aspect.
[0013] A robot system according to a first embodiment to a third embodiment will be described below. The robot system according to each of the embodiments is a system capable of direct teaching, in which an operator performs teaching by directly operating a robot. First embodiment
[0014] Fig. 1 is a diagrammatic representation of a device configuration of a robot system 100 according to a first embodiment. As shown in Fig. 1, the robot system 100 includes a robot 10, a robot controller 50 that controls the robot 10, and a teaching pendant 30 that is used to perform various settings and operations related to teaching.
[0015] Here, an example is described in which the robot 10 is a vertically articulated robot, but other types of robots, such as parallel linkage robots and dual-arm robots, can be used as the robot 10. The robot 10 includes a base 11 fixed to a support surface and a plurality of links mounted on the base 11. The plurality of links constitute a rotary torso section 12, a lower arm section 13, an upper arm section 14, and a wrist section 15 of the robot.
[0016] The robot 10 can perform a desired work through an end effector attached to a wrist flange 16. The end effector is an external device that is interchangeable according to use, and is, for example, a hand, a welding gun, a tool, and the like. Fig. 1 illustrates an example in which a deburring tool 60 is used as an example of the end effector.
[0017] Furthermore, a direct teaching device 80, which is used when an operator performs direct teaching, is mounted on the wrist flange 16 of the robot 10. The direct teaching device 80 includes an operating handle 82 and an operating switch 81 (see Fig. 3) including a switch that enables and disables the operation for direct learning, and another function switch. As in Fig. 1, the direct teaching device 80 is mounted on the wrist flange 16 of the robot 10 via an external force detector 71. Furthermore, the deburring tool 60 is mounted closer to a tip side than the direct teaching device 80 with respect to the wrist flange 16 of the robot 10. A signal from the operation switch 81 is provided to the robot controller 50 and used to control the direct teaching operation.
[0018] The external force detector 71 can detect an external force applied to the robot 10. A force sensor or a load cell can be used as the external force detector 71. As an example, it is assumed herein that the force sensor is to be used as the external force detector 71. The force sensor is, for example, a 6-axis force sensor that detects a force in a 3-axis direction and a moment about three axes. A detection value of the force sensor is input to the robot controller 50. Note that the external force applied to the robot 10 can be detected by a torque sensor arranged on each joint axis of the robot 10. Alternatively, a force applied to the robot can be detected from a current value flowing through a motor of each axis of the robot.
[0019] With this configuration, a magnitude and a direction of an operating force acting on the robot when an operator OP operates the operating handle 82 of the direct teaching device 80 can be detected by the external force detector 71, and the robot 10 (arm tip portion) can be moved in accordance with an operation by the operator OP.
[0020] The robot controller 50 has the function of controlling the robot 10 according to a robot program, the function of controlling the robot 10 according to a command from the teaching pendant, the function of controlling the direct teaching operation in which the operator OP operates the robot 10 using the direct teaching device 80, and the like.
[0021] An operator can create a robot program to perform a job on a workpiece W by direct teaching, as shown in Fig. 1. The robot controller 50 allows an operator to easily perform direct teaching to teach a trajectory including contact points with a workpiece, such as a trajectory following an edge line, a surface, and the like of a workpiece, to the robot.
[0022] Fig. 2 illustrates an example of a hardware configuration of the robot controller 50 and the teaching pendant 30. The robot controller 50 may have a general computer configuration in which a memory 52 (such as ROM, RAM, and non-volatile memory), various input / output interfaces 53, an operation unit 54 including various operation switches, and the like are connected to a processor 51 via a bus. The teaching pendant 30 may have a general computer configuration in which a memory 32 (such as ROM, RAM, and non-volatile memory), a display unit 33, an operation unit 34 formed of an input device such as a keyboard (or a software button), various input / output interfaces 35, and the like are connected to a processor 31 via a bus.
[0023] Fig. 3 is a functional block diagram of each device constituting the robot system 100. A motor 111 for driving a joint axis and a motor angle detector 112 for detecting a position (angular position) of the motor are arranged in each joint section of the robot 10. Fig. 3 represents the motor 111 and the motor angle detector 112 provided on a joint axis.
[0024] As in Fig. 3, the robot controller includes a force control unit 151, a motion control unit 152, a storage unit 153, a robot position detection unit 154, a contact detection unit 155, and a program creation unit 156.
[0025] The force control unit 151 has a function of generating a command to move the robot 10 according to an external force detected by the external force detector 71. In direct teaching, the force control unit 151 generates a movement command such that the robot 10 moves in a direction of the external force detected by the external force detector 71 (a direction of a force applied to the robot 10 by the operator OP).
[0026] The motion control unit 152 generates a command for each joint axis of the robot 10 through kinematic calculation according to a command from the force control unit 151 and performs servo control on the motor of each joint axis. Thus, the robot 10 can be controlled according to the command from the force control unit 151. In this way, the direct teaching achieves the function of moving the robot 10 (the deburring tool 60) in a direction of a force applied by the operator OP to the operating handle 82 of the direct teaching device 80.
[0027] A robot program created by the program creation unit 156, various types of information required for programming, and the like are stored in the storage unit 153.
[0028] The external force detected by the external force detector 71 is further input to the contact detection unit 155, and contact between the robot 10 and an object is detected. The contact detection unit 155 may be configured to detect contact between the robot 10 and an object, for example, (1) when a magnitude of a force or moment detected by the external force detector 71 exceeds a predetermined threshold, or (2) when a force or moment detected by the external force detector 71 is reversed.
[0029] When the contact is detected, the contact detection unit 155 notifies the program creation unit 156 by sending a signal to the program creation unit 156.
[0030] A threshold value for the contact detection unit 155 to determine whether contact with an object has occurred can be obtained, for example, by: (1) a technique for recording a maximum force while operating the robot by direct teaching in a state where the robot 10 is not in contact with any object, and for determining a value larger than the maximum force by a predetermined margin as a threshold value, or (2) a technique where a user can set the threshold.
[0031] The robot position detection unit 154 detects a position and a posture of the robot 10 based on an output of the motor angle detector 112 arranged on each joint axis. The robot position detection unit 154 provides information about the detected position and posture of the robot 10 to the program creation unit 156.
[0032] The program creation unit 156 has various functions for creating a robot program. Among the functions of the program creation unit 156 is a function for creating a robot program by direct teaching. As shown in Fig. 3, the program creation unit 156 includes a teaching point setting unit 161, a command generation unit 162, and a display control unit 163.
[0033] The teaching point setting unit 161 has a function of setting teaching points in direct teaching. In the present embodiment, the teaching point setting unit 161 has a function of setting a position and posture of the robot 10 as a teaching point when contact between the robot 10 and an object is detected by the contact detection unit 155.
[0034] The command generation unit 162 has a function of generating a movement command of the robot 10 based on the teaching point set by the teaching point setting unit 161.
[0035] The display control unit 163 has a function of generating various screens of a user interface (UI) for performing program creation, a function of supporting various operations through the UI screen, and the like.
[0036] In the present embodiment, various UI screens for programming are displayed on the display unit 33 of the teaching pendant 30, and an operation on the UI screen is performed via the operation unit 34.
[0037] A specific operation example for direct teaching according to the present embodiment will be described. A case is assumed where a trajectory along an edge line L of the workpiece W as shown in Fig. 1, is taught into the robot. In this case, a robot program is a program for moving the deburring tool 60 in such a way that the deburring tool 60 follows an end face (edge line L) of the workpiece W.
[0038] Here, a case is considered where an edge line of such a workpiece is taught to the robot by a technique in which positions on a trajectory of the robot during a movement of the robot are stored as teaching points at predetermined time intervals. In this case, to teach the edge line L of the workpiece to the robot, the robot (the tool) is brought into contact with the workpiece W, but a reaction force is applied to the robot when the robot is brought into contact with the workpiece. The reaction force is detected by the external force detector, and therefore the robot is more likely to behave in a way that moves away from the workpiece. Therefore, with such a direct teaching technique, it is difficult for an operator to correctly teach a trajectory following the edge line to the robot.Furthermore, even if direct teaching is performed by an operator stopping the robot at an important location and storing the robot's position when the robot is stopped, extreme caution is required to stop the robot at a position immediately before the robot comes into contact with the workpiece, and therefore the advantage of direct teaching is lost. The robot controller 50 (program creation unit 156) according to the present embodiment, by a configuration in which a position and posture of the robot when the robot 10 (the deburring tool 60) comes into contact with a workpiece can be detected as a teaching point in direct teaching, solves the above-described problem that arises when an edge line and the like of the workpiece are taught to the robot by direct teaching.
[0039] Fig. 4A and Fig. 4B are diagrams illustrating an operation for teaching a trajectory of the edge line L of the workpiece W by direct teaching according to the present embodiment. Note that Fig. 4A and Fig. 4B, for convenience of description, only the workpiece W and the deburring tool 60 are shown. The operator OP performs a predetermined operation to start direct teaching. The operation to start direct teaching can be performed, for example, by operating the operation switch 81 of the direct teaching device 80 or by operating a UI screen displayed on the teach pendant 30. First, the operator OP records a teaching start point P1 while operating the robot 10 using the direct teaching device 80. The operator OP causes the robot 10 (the deburring tool 60) to approach the workpiece W from the teaching start point P1.The teaching point setting unit 161 can detect positions of the robot 10 during the movement from the teaching start point P1 to a first contact point C1 with the workpiece W at predetermined time intervals and can automatically record the positions as teaching points.
[0040] The teaching point setting unit 161 automatically records the contact point C1 at which the deburring tool 60 first comes into contact with the workpiece W as a teaching point. When the deburring tool 60 and the workpiece W come into contact with each other, the robot 10 may behave such that it moves away from the workpiece W, but a position D1 of the deburring tool 60 away from the workpiece W is not recorded as a teaching point in this case. The operator OP causes the deburring tool 60 to approach the workpiece W again and come into contact with it again. A contact point C2 with the workpiece at this second time is also automatically recorded as a teaching point. The deburring tool 60 moves away from the workpiece W again, but no position D2 is recorded.Subsequently, a contact point C3 at which the operator OP subsequently brings the deburring tool 60 into contact with the workpiece W is automatically recorded as a teaching point. The operator OP continues such an operation along the entire edge line L to set teaching points along the entire edge line L.
[0041] As the operator repeats such an operation, positions (contact points C1, C2, C3, and ...) where the deburring tool and the workpiece W come into contact with each other are automatically recorded as teaching points. In other words, a plurality of teaching points can be set at positions along the edge line L. Since the positions of the robot when the deburring tool 60 comes into contact with the workpiece W are automatically recorded, the operator OP can easily create a trajectory following the edge line L of the workpiece W.
[0042] It should be noted that when performing the direct teaching described above, the operator OP desirably considers bringing the robot into contact with a workpiece at a point (for example, a corner point) where a direction of a trajectory changes significantly and at a point where a robot posture (tool posture) changes significantly, and recording these points as teaching points.
[0043] The force control unit 151 performs control such that the robot 10 (control area) moves in a direction of an external force detected by the external force detector 71, that is, a force applied to the robot 10 by the operator OP during direct teaching. As such force control, control for operating the robot in a direction of an applied force at a speed proportional to a magnitude of the force, impedance control, or damping control can be selected. Note that impedance control is a technique for controlling a movement of the robot (control area) according to a movement equation representing a mechanical impedance curve defined by a virtual inertia coefficient, viscous coefficient, and elasticity coefficient.Damping control is a technique for determining a mechanical impedance curve, particularly based on a viscosity coefficient.
[0044] When performing direct teaching according to the present embodiment, the force control unit 151 desirably performs force control in such a manner as to reduce a movement of moving away from or jumping up from an object when the robot 10 comes into contact with the object. Damping control is a technique capable of inhibiting or reducing such behavior that the robot (control section) moves away from the object or jumps up when the robot 10 comes into contact with the object.
[0045] Fig. 5 represents a flow chart of the procedure of the method described above with reference to Fig. 4A and Fig. 4B. The present direct teaching processing is activated in response to a predetermined operation for providing an instruction to start direct teaching. First, in response to an operation of the operation handle 82 by the operator OP, the program creation unit 156 (teaching point setting unit 161) records a position of the robot when direct teaching starts as a teaching start point P1 (step S1). Next, the teaching point setting unit 161 records positions of the robot 10 at predetermined time intervals as teaching points while the robot 10 is operated by the operator OP to move from the teaching start point P1 to a first contact point (step S2).
[0046] Next, the teaching point setting unit 161 records a position (a contact point) of the robot 10 as a teaching point when the robot 10 first comes into contact with the workpiece W (when a first contact is detected by the contact detection unit 155), and further continues the operation of recording positions (contact points) of the robot 10 as teaching points when contact between the robot 10 and the workpiece W is detected (step S3). In this case, the teaching point setting unit 161 records only the contact point and does not record a position when the robot 10 moves away from the workpiece W.
[0047] The teaching point setting unit 161 continues the operation process for recording the contact point (step S3) until an instruction to end the direct teaching is provided (step S4: NO). The instruction to end the direct teaching can be provided, for example, by operating the operation switch 81 of the direct teaching device 80. When the end instruction is provided (step S4: YES), the present processing ends.
[0048] When the operation for obtaining the contact points as teaching points is performed in the above-described step S3, the teaching point setting unit 161 may apply one of the following rules (r1) and (r2). (r1) After a teach point (contact point) has been recorded, no next teach point (contact point) is recorded until a specified time has elapsed. (r2) After a teaching point (contact point) has been recorded, no next teaching point (contact point) is recorded until the robot (control area) moves a predetermined distance or more away from the one teaching point.
[0049] By choosing one of the rules (r1) and (r2) described above, the number of learning points can be prevented from becoming excessively large.
[0050] The program creation unit 156 may provide a function for performing programming via a UI screen. Operations for performing programming via the UI screen and direct teaching will be described below in connection with a case where the program creation unit 156 has a function for performing programming based on an icon. The UI screen is displayed on a display screen of the display unit 33 of the teaching pendant 30 and can be operated via the operation unit 34 (such as a software button arranged on the display screen).
[0051] Fig. 6 is a diagram illustrating a program creation screen 300 generated by the display control unit 163 of the program creation unit 156. The program creation screen 300 includes a program display area 310, an icon display area 320, and a motion state display area 330 on which a trajectory and the like of the robot are displayed.
[0052] The icon display area 320 is an area for displaying a list of icons that can be used for programming. Fig. 6, a linear motion icon 401, a move-each-axis icon 402, an if statement icon 403, a for loop icon 404, a hold icon 405, a release icon 406, and a direct teach icon 407 are included in the icon display area 320.
[0053] The linear motion icon 401 is an icon corresponding to a command to move the robot linearly (within the specified control range). The each-axis motion icon 402 is an icon corresponding to a command to cause the robot (within the specified control range) to perform a movement of each axis. The if statement icon 403 is an icon corresponding to a conditional branch command of a program. The for loop icon 404 is an icon corresponding to a loop condition command of a program. The hold icon 405 is an icon corresponding to a command to close a hand and hold a workpiece. The release icon 406 is an icon corresponding to a command to open the hand and release the workpiece. The direct teaching icon 407 is an icon corresponding to a command to perform direct teaching.
[0054] The program display area 310 is an area for creating a program by arranging icons selected from the icon display area 320 and displaying a program. In the motion state display area 330, a robot model 10M can be simulated to move according to the taught content.
[0055] An operator can perform programming by selecting a desired icon from the icon display area 320 and arranging the icon in a sequence along a time bar 311 in the program display area 310. In the Fig. In the example shown in Figure 6, a robot program 501 is created that includes the linear motion icon 401, the each-axis motion icon 402, the direct teaching icon 407, the each-axis motion icon 402, and the linear motion icon 401. Note that when programming is performed by displaying the icon display area 320 on the program creation screen 300, an operator selects a programming tab 371. By selecting an icon in the program display area 310 and pressing a details tab 372, a setting screen of the selected icon can be opened and detailed setting can be performed.
[0056] Next, an operation for generating a movement command of the direct teaching icon 407 will be described. The operator OP can generate a setting screen of the direct teaching icon 407 by performing a predetermined operation on the program creation screen 300 in Fig. 6. An operation for selecting the direct teach-in icon 407 in the program display area 310 and selecting the details tab 372 can be used as a default operation.
[0057] Fig. Fig. 7 illustrates a state in which a setting screen 321 of the direct teaching icon 407 is displayed by selecting the direct teaching icon 407 in the program display area 310 in Fig. 6 and selecting the Details tab 372 is displayed. As in Fig. As shown in Figure 7, the setting screen 321 includes a speed setting field 451 for teaching a movement speed of the robot (the predetermined control range) to the robot. An operator can teach the movement speed of the robot 10 to the robot by performing a numerical input in the speed setting field 451 or by operating a button located next to the speed setting field 451.
[0058] The setting screen 321 includes a status display field 452 for displaying a status of the direct learning. The status of the direct learning is displayed in the status display field 452. In the example in Fig. 7, the direct teach-in has not yet been performed, and therefore “TRAJECTORY NOT TRAINED” is displayed in the status display field 452.
[0059] The setting screen 321 includes a teaching start button 455 and a teaching stop button 456 for specifying a start and a stop of direct teaching, respectively. An operator can start direct teaching according to the present embodiment by pressing the teaching start button 455. Furthermore, the operator can stop direct teaching by pressing the teaching stop button 456.
[0060] A teaching interval specification field 453 for specifying a teaching interval is provided on the setting screen 321. The time interval used when positions on a trajectory are automatically recorded while the robot moves from the teaching start point to the first contact point as in step S2 in Fig. 4 is specified in the teaching interval specifying field 453. A motion shape specifying field 454 for specifying a motion shape of the robot is included in the setting screen 321. A linear motion, a movement of each axis, and the like can be specified in the motion shape specifying field 454. Fig. 7 illustrates an example in which the movement of each axis ("each axis") is specified as the movement mode of the robot. In this case, the command generation unit 162 generates a command to move each axis as a movement command.
[0061] An operator can perform direct teaching via such a UI screen by the method described above with reference to Fig. 4A to 4B. It is assumed that parameter input has been performed via the setting screen 321 and that direct teaching has also been performed. The command generation unit 162 generates a program according to the acquired teaching points and the taught parameters. The operator is allowed to develop the direct teaching icon 407 to display contents of the direct teaching icon 407 by performing a predetermined operation on the direct teaching icon 407 (for example, an operation to double-click the direct teaching icon 407) on the program display area 310 of the program creation screen 300 in Fig. 6 or on a screen on which the setting screen 321 is displayed in Fig. 7 is displayed.
[0062] Fig. Figure 8 shows an example in which the direct teach-in icon 407 is displayed in a developed state. As in Fig. 8, the direct teaching icon 407 is displayed in a greatly expanded state, and movement commands (herein, the movement of each axis icon 402) for the respective teaching points obtained by direct teaching are developed and displayed. In this way, by developing and displaying the direct teaching icon 407, the operator can confirm contents of the program created by direct teaching. Furthermore, teaching contents can be configured by selecting the movement of each axis icon 402 and opening a setting screen of the movement of each axis icon 402 in the Fig. 8 shown developed and displayed condition must be confirmed and adjusted.
[0063] As described above, according to the first embodiment, when a trajectory including contact points with a workpiece, such as a trajectory following an edge line or a surface of a workpiece, is taught by the direct teaching, an operator can easily perform a teaching operation.
[0064] It should be noted that the functions provided by the robot controller 50 and the teaching pendant 30 according to the first embodiment can be collectively referred to as a teaching device. Second embodiment
[0065] A robot system 100A according to a second embodiment will be described below. Fig. 9 is a diagram showing a device configuration of the robot system 100A according to the second embodiment. Fig. Figure 10 is a graphical functional block diagram of the 100A robot system. Note that in Fig. 9 and Fig. 10, the same components as those of the robot system 100 according to the first embodiment are provided with the same reference numerals.
[0066] The first embodiment is the configuration example in which force control and contact detection are performed based on an output of the external force detector 71. In the second embodiment, an external force detector for detecting contact with an object is used in addition to an external force detector used for force control. In the present embodiment, it is assumed that a detector used for detecting contact with an object is used as a first external force detector (denoted by a reference numeral 71A in Fig. 9 and Fig. 10) and a detector used for force control is referred to as a second external force detector (which is designated by a reference numeral 72 in Fig. 9 and Fig. 10). As in Fig. 9 and Fig. 10, the robot system 100A includes the second external force detector 72 arranged at a position corresponding to the external force detector 71 in the first embodiment, and the first external force detector 71A arranged at a position closer to a tip side of a robot 10 than a direct teaching device 80. Here, the tip side of the robot refers to a side closer to a tool tip (ie, a side closer to a workpiece). The second external force detector 72 may be formed of the same detector as the external force detector 71 in the first embodiment.
[0067] As in Fig. 9, in the robot system 100A, an output from the first external force detector 71A is input to a contact detection unit 155 of a robot controller 50A. As described in the first embodiment, the contact detection unit 155 detects contact between the robot and an object when a detected external force exceeds a predetermined threshold, and the like. The first external force detector 71A is arranged on the robot 10 at a position closer to the tip side than a region touched by an operator for direct teaching. With this configuration, a contact force applied to the robot 10 by a deburring tool 60 of the robot 10 coming into contact with the object can be detected more accurately.
[0068] Specifically, in a case where both the detection of a force applied by an operator to the robot during direct teaching and the detection of contact between the robot and a workpiece are performed by an external force detector, there is a possibility that the robot controller may erroneously detect that contact with a workpiece has occurred if the operator applies an operating force such that the robot moves in the air with large acceleration / deceleration. In this point, the possibility of such a problem occurring can be eliminated or reduced by providing a detector (a first external force detector 71A) that detects contact with an object, as in the present embodiment.
[0069] With the above configuration, a program creation unit 156 in the second embodiment can also provide the same function as that in a case of the first embodiment. In other words, in the second embodiment, the program creation unit 156 also enables an operator to directly teach a trajectory including contact points with a workpiece W, as described above with reference to Fig. 4A and Fig. 4B, easy to perform.
[0070] Note that the first external force detector 71A in the second embodiment may be formed of a force sensor or a load cell, but a mechanical switch that detects contact with an external environment may be used as the first external force detector 71A. In this case, an arrangement position of the mechanical switch is set so that the mechanical switch comes into contact with a workpiece when an operator brings a tool into contact with the workpiece during direct teaching.
[0071] Furthermore, the program creation unit 156 in the second embodiment may also provide a function for performing direct teaching via a UI screen, as shown in Fig. 6 to 8.
[0072] In this way, in the second embodiment, an operator can also easily perform a teaching operation when a trajectory including contact points with a workpiece, such as a trajectory following an edge line, a surface, or the like of a workpiece, is taught by the direct teaching.
[0073] It should be noted that the functions provided by the robot controller 50A and a teaching pendant 30 according to the second embodiment can be collectively referred to as a teaching device. Third embodiment
[0074] A robot system 100B according to a third embodiment will be described below. The robot system according to the first embodiment and the second embodiment is the configuration example in which the function as the program creation unit 156 is included in the robot controllers 50 and 50A, but a configuration in which the function as the program creation unit 156 is included in a teach pendant (teaching device) is also possible. The robot system 100B according to the third embodiment is a configuration example in which the function as the program creation unit 156 is implemented in the teach pendant (teaching device).
[0075] Fig. 11 shows a graphical functional block diagram of the robot system 100B according to the third embodiment. In the Fig. In the robot system 100B according to the third embodiment shown in Fig. 11, a functional element equivalent to the functional element in the first embodiment is provided with the same reference numeral. As shown in Fig. 11, in the present embodiment, the function as a program creation unit 156, which is arranged in the robot controller 50 in the first embodiment, is arranged in a teaching pendant (a teaching device) 30B.
[0076] As in Fig. As shown in Fig. 11, a signal from a contact detection unit 155 indicating contact with an object, information about a position and posture of a robot from a robot position detection unit 154, and information about other various types of robot control are provided to a program creation unit 156B in the teach pendant 30B via a data transmission control unit 159 in a robot controller 50B and a data transmission control unit 135 in the teach pendant 30B. A notification signal to a force control unit 151 and a robot program generated by the program creation unit 156B are provided to a robot controller 50B via the data transmission control unit 135 and the data transmission control unit 159.
[0077] With the above configuration, the program creation unit 156B in the third embodiment can also provide the same function as that of the program creation unit 156 in the first embodiment. In other words, in the third embodiment, the program creation unit 156B also enables an operator to directly teach a trajectory including contact points with a workpiece W, as described above with reference to Fig. 4A and Fig. 4B, easy to perform.
[0078] Furthermore, the program creation unit 156B in the third embodiment may also provide a function for performing direct teaching via a UI screen, as shown in Fig. 6 to 8.
[0079] In this way, in the third embodiment, an operator can also easily perform a teaching operation when a trajectory including contact points with a workpiece, such as a trajectory following an edge line, a surface, or the like of a workpiece, is taught by the direct teaching.
[0080] It should be noted that as a modification example for the configuration in the Fig. 11, as described in the second embodiment, a second external force detector 72 may be mounted on a robot 10, and contact between the robot 10 and an object may be detected based on an output of the second external force detector 72.
[0081] As described above, according to each of the embodiments, an operator can easily perform a teaching operation when a trajectory including contact points with a workpiece, such as a trajectory following an edge line or a surface of a workpiece, is taught by the direct teaching.
[0082] The present invention has been described above by means of the typical embodiments, but it will be apparent to those skilled in the art that changes, other various changes, omissions and additions can be made to each of the embodiments described above without departing from the scope of the present invention.
[0083] When the functional blocks are distributed in the Fig. 3, Fig. 10 and Fig. The graphical function block diagram shown in Figure 11 is an example, and various modification examples can be configured for the arrangement of functions in the robot system. For example, in the Fig. 11, a configuration is also possible in which a function as the command generation unit 162 arranged in the program creation unit 156B of the teaching pendant 30B is arranged on the robot controller 50B side. In this case, a teaching point recorded on the teaching pendant 30B side is provided to the robot controller 50B side, and a robot program is generated on the robot controller 50B side.
[0084] The Fig. 3, Fig. 10 and Fig.The functional block shown in Fig. 11 can be achieved by executing various types of software stored in a storage device by a processor of the robot controller or the teaching device, or can be achieved by a configuration in which hardware such as an application specific integrated circuit (ASIC) is a main body.
[0085] The program for executing various types of processing such as the direct teaching processing in the above-described embodiments can be recorded in various computer-readable recording media (for example, a ROM, an EEPROM, a semiconductor memory such as a flash memory, a magnetic recording medium, or an optical disk such as a CD-ROM and a DVD-ROM). List of reference symbols 10 robots 30, 30B programming handset 31 processors 32 memory 33 Display unit 34 Control unit 35 Input / output interface 50, 50A robot control device 51 processor 52 storage 53 Input / output interface 54 Control unit 60 deburring tools 71 Detector for an external force 71A first detector for an external force 72 second detector for an external force 80 Device for direct learning 81 control switches 100, 100A, 100B robot system 111 Engine 112 Motor angle detector 135 Data transmission control unit 151 Power control unit 152 Motion control unit 153 storage unit 154 Robot position detection unit 155 Contact detection unit 156 Program creation unit 159 Data transmission control unit 161 Teach-in point setting unit 162 Command generation unit 163 Display control unit 300 Program creation screen 310 Program display area 320 icon display area 321 Setting screen 330 Motion status display area QUOTES CONTAINED IN THE DESCRIPTION
[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature
[0000] JP 2015-199174 A
[0003] JP 2019-030931 A
[0003]
Claims
[1] A robot control device for controlling a robot, the robot control device comprising a teaching point setting unit configured to set, as a teaching point of a robot program, a position of the robot when contact between the robot and an object is detected based on an output of a first detector capable of detecting contact with the object, the first detector being mounted on the robot. [2] Robot control device according to claim 1, wherein the first detector is an external force detector that detects an external force, the robot control device further comprises a force control unit configured to perform control in such a manner that the robot moves in accordance with the external force detected by the first detector, and the teaching point setting unit sets a position of the robot as a teaching point of the robot program when contact between the robot and the object is detected while the robot is moving under the control of the force control unit. [3] Robot control device according to claim 1, further comprising a force control unit configured to perform control in such a manner that the robot moves in accordance with an external force detected by a second detector mounted on the robot and used to detect an external force, wherein the teaching point setting unit sets a position of the robot as a teaching point of the robot program when contact between the robot and the object is detected while the robot is moving under the control of the force control unit. [4] The robot control device according to claim 2 or 3, wherein the force control unit performs force control by damping control. [5] The robot control device according to any one of claims 1 to 4, wherein after the teaching point setting unit sets a teaching point, the teaching point setting unit operates not to set a next teaching point until a predetermined time has elapsed. [6] The robot control device according to any one of claims 1 to 4, wherein the teaching point setting unit operates so that a distance between a teaching point and a next teaching point is equal to or greater than a predetermined distance. [7] Robot system comprising: a robot having mounted thereon a first detector capable of detecting contact with an object; and a teaching point setting unit configured to set, as a teaching point of a robot program, a position of the robot when contact between the robot and the object is detected based on an output of the first detector. [8] Robot system according to claim 7, wherein the first detector is an external force detector that detects an external force, the robot system further comprises a force control unit configured to perform control in such a manner that the robot moves in accordance with an external force detected by the first detector, and the teaching point setting unit sets a position of the robot as a teaching point of the robot program when contact between the robot and the object is detected while the robot is moving under the control of the force control unit. [9] Robot system according to claim 7, wherein furthermore, a second detector for detecting an external force is mounted on the robot, the robot system further comprises a force control unit configured to perform control in such a manner that the robot moves in accordance with an external force detected by the second detector, and the teaching point setting unit sets a position of the robot as a teaching point of the robot program when contact between the robot and the object is detected while the robot is moving under the control of the force control unit. [10] The robot system according to claim 9, wherein the first detector is arranged at a position closer to a tip side of the robot than the second detector. [11] The robot system according to any one of claims 8 to 10, wherein the force control unit performs force control by damping control. [12] The robot system according to any one of claims 7 to 11, wherein, after the teaching point setting unit sets a teaching point, the teaching point setting unit operates not to set a next teaching point until a predetermined time has elapsed. [13] The robot system according to any one of claims 7 to 11, wherein the teaching point setting unit operates such that a distance between a teaching point and a next teaching point is equal to or greater than a predetermined distance. [14] A teaching device for teaching a robot, the teaching device comprising a teaching point setting unit configured to set, as a teaching point of a robot program, a position of the robot when contact between the robot and an object is detected based on an output of a first detector capable of detecting contact with the object, the first detector being mounted on the robot.
Citation Information
Patent Citations
2019-030931A
2015-199174A