Robot device and method for parameter setting
Patent Information
- Application Number
- DE112022007036
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-06-28
- Publication Date
- 2025-02-20
- Estimated Expiration
- 2042-06-28
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical area
[0001] The present invention relates to a robot system that enables the setting of a parameter for determining a manipulation sensation in direct teaching, and a method for setting the parameter. Technical background
[0002] When using a robot system comprising an articulated-arm robot and other components at a workstation, a teaching operation is required to teach the robot arm an operating goal for a required task. A prior art robot system includes a direct teaching function for receiving manual teaching along with the operating goal for the robot arm.
[0003] In direct teaching, the user should feel comfortable when manipulating a robot. A manipulation feeling that is too difficult tends to fatigue the user, and a manipulation feeling that is too easy tends to make determining a robot position difficult. Patent Literature 1 discloses a robot system that requires a user to manually perform a specific task operation with respect to a robot, thereby enabling adjustment of a parameter to determine a manipulation feeling during direct teaching. The robot system reads the user's manipulation feeling from the execution state of the task operation and modifies the parameter to a desired parameter for the user.
[0004] The comfort of direct teaching is determined not only by the characteristics of the robot, including its structure, weight, and layout, but also significantly influenced by the characteristics and subjectivity of the user, who has a force contributing to direct teaching, a posture and gripping method of a teaching lever, and a preference for lightness or heaviness in the manipulation sensation. From this perspective, a robot system such as that described in Patent Literature 1, which merely adjusts the parameter mechanically, may not provide comfortable direct teaching for a user. List of referencesPatent literature
[0005] Patent Literature 1: Unexamined Japanese Patent Publication No. 2021-74788 Description of the invention
[0006] An object of the present invention is to provide a robot system that enables convenient direct teaching for a user, as well as a method for adjusting a parameter.
[0007] A robot system according to one aspect of the present invention includes: a robot configured to perform a predetermined operation; and a controller configured to receive direct teaching for manually teaching an operation target for the robot by a user and controlling the operation of the robot.The controller performs adjustment control for adjusting a parameter to determine a manipulation feeling in direct teaching, and is configured to, in the adjustment control: acquire the parameter related to the manipulation feeling and a predetermined evaluation index based on a result of the user inducing the robot to manually perform a specific task operation; calculate a score that is a mechanical evaluation value for the task operation based on the evaluation index and present the score to the user; and change the parameter depending on a subjective evaluation of the manipulation feeling by the user.
[0008] A method for adjusting a parameter according to another aspect of the present invention is a method for adjusting a parameter for manually determining a manipulation feeling in direct teaching for teaching an operation target for a robot by a user, the direct teaching being executable in a robot system. The method includes: causing the user to manually perform a specific task operation with respect to the robot; deriving the parameter related to the manipulation feeling and a predetermined evaluation index based on a result of performing the task operation; calculating a score based on the evaluation index, the score being a mechanical evaluation value for the task operation, and presenting the score to the user; and changing the parameter depending on a subjective evaluation related to the manipulation feeling by the user. Brief description of the drawings
[0009] Fig. 1 is a schematic view of a configuration of a robot system according to an embodiment of the present invention; Fig. 2 is a block diagram showing an electrical configuration of the robot system; Fig. 3 is a flowchart showing an adjustment control for a parameter to determine a manipulation sense in direct teaching; Fig. 4 is an illustration of an exemplary task operation to be performed by a user; Fig. 5 is an illustration of an exemplary task operation to be performed by a user; Fig. 6 is an illustration of an exemplary task operation to be performed by a user; Fig. 7 is an illustration of an exemplary interactive user interface to be used in customization control; Fig. 8A and Fig. 8B are each an illustration of an exemplary pull-down screen image incorporated into the interactive user interface. Description of embodiments
[0010] An embodiment of the present invention will be described below with reference to the accompanying drawings. A robot system according to the present invention includes a robot configured to perform a predetermined operation. The robot is typically an articulated arm robot having a plurality of arm members and a plurality of operating shafts for rotating the arm member. The robot system according to the present invention is preferably applicable to a collaborative robot system to be arranged in an area where an operator performs a predetermined work. Such a collaborative robot system often adopts manual direct teaching of an operation target for the robot arm. The embodiment to be described below illustrates a robot system having a vertical, articulated 6-axis robot arm to learn an operation target by direct teaching. [General configuration of a robot system]
[0011] Fig. 1 is a schematic view of a robot system 1 according to an embodiment of the present invention. The robot system 1 is a vertically articulated 6-axis robot system comprising a robot arm 10, an operating lever 20, a controller 30, and a display 60. The robot arm 10 has seven rotating shafts, namely, a first shaft J1, a second shaft J2, a third shaft J3, a fourth shaft J4, a fifth shaft J5, and a sixth shaft J6. The robot arm 10 includes arm elements of a base 10B, a first arm 11, a second arm 12, a third arm 13, a fourth arm 14, a fifth arm 15, a sixth arm 16, and a head 17. An end effector 18 and the operating lever 20 are attached to the head 17.
[0012] The base 10B is a housing fixedly disposed on a floor surface or a flat mounting surface of a base support or other structure. The first arm 11 is connected to an upper surface of the base 10B via the first shaft J1. The first shaft J1 is a rotary shaft extending in a vertical direction to the flat mounting surface. The first arm 11 is rotatable clockwise and counterclockwise about an axis of the first shaft J1. The second arm 12 has a proximal end connected to the first arm 11 via the second shaft J2 at an upstream portion of the second arm 12. The second shaft J2 is a rotary shaft extending in a horizontal direction parallel to the flat mounting surface. The second arm 12 is pivotable about an axis of the second shaft J2.
[0013] The third arm 13 is connected to a downstream portion of the second arm 12 and has a proximal end connected to a distal end of the second arm 12 via the third shaft J3. The third arm 13 is pivotable about an axis of the third shaft J3 extending in the horizontal direction. The fourth arm 14 is connected to a downstream portion of the third arm 13 and has a proximal end connected to a distal end of the third arm 13 via the fourth shaft J4. The fourth arm 14 is rotatable about an axis of the fourth shaft J4 extending in an axial direction of the arm.
[0014] The fifth arm 15 is connected to a downstream portion of the fourth arm 14 and has a proximal end connected to a distal end of the fourth arm 14 via the fifth shaft J5. The fifth arm 15 is pivotable about an axis of the fifth shaft J5 extending in the horizontal direction. The sixth arm 16 is connected to a downstream portion of the fifth arm 15 and has a proximal end connected to a distal end of the fifth arm 15 via the sixth shaft J6. The sixth arm 16 is rotatable about an axis of the sixth shaft J6 extending in an axial direction of the arm.
[0015] The head 17 is attached to a distal end of the sixth arm 16 via a force sensor FS, which will be described later. The head 17 serves as a support base for the end effector 18 and also serves as a mounting base for the operating lever 20, which is to be grasped by a user during direct teaching. The end effector 18 represents a structural element that performs necessary work on a workpiece to be an operational target. The end effector 18 can serve as a structural element configured to, for example, suck, weld, polish, or grip the workpiece.
[0016] Fig. 1 shows a tool center point (TCP) 19 of the end effector 18. The TCP 19 indicates a position that serves as a control reference point for the robot arm 10. The TCP 19 can be set, for example, to a position where the workpiece is sucked into the end effector 18. Alternatively, the TCP 19 can be set to a position of the center of gravity of the end effector 18 or any position related to the end effector 18. As a further alternative, the TCP 19 can be set to a front end of the robot arm 10.
[0017] The force sensor FS is a six-axis force detector located between the sixth arm 16, which is the front end of the robot arm 10, and the end effector 18. Specifically, the force sensor FS can simultaneously detect translational triaxial force components along three axes—an X-axis, a Y-axis, and a Z-axis—that intersect perpendicularly to each other, as well as torque components around the X-axis, the Y-axis, and the Z-axis. The robot arm 10 can incorporate a torque sensor instead of the force sensor FS.
[0018] The operating lever 20 is a rod-shaped element that protrudes laterally from the head 17 and is sized to allow the user to grasp it with one hand. During direct teaching, the user grasps the operating lever 20 to manually move the TCP 19 of the robot arm 10 from one teaching point to another and teach an operating target or posture.
[0019] The controller 30 controls an operation of the robot arm 10 according to the teaching data given in advance. The controller 30 receives a direct teaching for teaching an operation target or a posture for the robot arm 10 manually by the user to generate the teaching data. The controller 30 further performs adjustment control of adjusting a parameter to determine a manipulation feeling of the user regarding the robot arm 10 in the direct teaching. The controller 30 will be described later with reference to Fig. 2 described in detail.
[0020] The display 60 is composed, for example, of a tablet terminal and has various display functions related to the robot system 1 and an input function for receiving manipulation data input to the controller 30. Any other device can be used as the display 60 instead of the tablet terminal, as long as the device has the display functions and the input function. The display 60 can, for example, comprise a PC, a smartphone, or a display and input screen dedicated to the robot system 1. [Electrical configuration of the robot system]
[0021] Fig. 2 is a block diagram showing an electrical configuration of the robot system 1. The robot arm 10 includes a first drive part 41, a second drive part 42, a third drive part 43, a fourth drive part 44, a fifth drive part 45, and a sixth drive part 46, each generating rotational drive forces about the axes of the first shaft J1, the second shaft J2, the third shaft J3, the fourth shaft J4, the fifth shaft J5, and the sixth shaft J6, respectively. The first drive part 41 generates a rotational drive force for rotating the first arm 11 about the axis of the first shaft J1. Similarly, the second drive part 42 to the sixth drive part 46 generate rotational drive forces for rotating the second arm 12 to the sixth arm 16 about the axes of the second shaft J2 to the sixth shaft J6, respectively.
[0022] The first drive part 41 includes a motor 51, a brake 52, and an encoder 53. The motor 51 is a drive source that generates the rotational drive force. The brake 52 regulates the rotational drive force from the motor 51. The brake 52 is activated to fix the first shaft J1. In other words, the brake 52 is activated to prevent the motor 51 from driving and the first arm 11 from rotating about the axis of the first shaft J1. The encoder 53 detects the rotation amount of the motor 51, i.e., the rotation angle of the first arm 11. Furthermore, the first drive part 41 includes a reducer (not shown). The reducer reduces the speed of an output shaft of the motor 51 at a reduction ratio and transmits the reduced speed to a rotating mechanism of the first shaft J1.Similarly, each of the second driving parts 42 to sixth driving parts 46 includes a motor 51, a brake 52, an encoder 53 and a reducer which operate in the same manner as mentioned above.
[0023] The operating lever 20 has an operating knob 21. The operating knob 21 is operated by the user grasping the operating lever 20 in the direct teaching mode to validate the direct teaching mode. The operating lever 20 may have another operating knob for performing another function, such as a start button for starting the execution of a task operation, which will be described later. The activation of the brake 52 of each of the first drive part 41 to the sixth drive part 46 is controlled, and the fixed state of each of the first shaft J1 to the sixth shaft J6, which serve as operating shafts, is changed to enable restriction of the behavior of the robot arm 10 during direct teaching.For example, the operating lever 20 may have a manipulation knob to select a mode for completely freely moving the robot arm 10 relative to the first shaft J1 to the sixth shaft J6 or a mode for moving the robot arm only on an XY plane or a Z plane with respect to the shafts.
[0024] The controller 30 receives an input of manipulation information via the operation knob 21. The controller 30 further receives an input of data of the six-axis force components detected by the force sensor FS as described above in order to use the data for controlling an operation of the robot arm 10 in direct teaching and controlling an operation of the robot arm 10 in actual use.
[0025] The display 60 includes an interactive user interface application 61. The interactive user interface application 61 represents application software for displaying a Fig. 8 shown interactive user interface 8 when executing the adjustment control of the parameter by the controller 30.
[0026] The controller 30 is a processor that executes various processes according to a predetermined program and serves to functionally include a robot control part 31, a storage part 32, a teaching control part 33, and an adjustment control part 34 (controller) in response to the execution of the program.
[0027] The robot control part 31 causes the robot arm 10 to operate based on teaching data indicating a predetermined operation target or positioning, and causes the end effector 18 to perform a predetermined work on a workpiece in the practical application of the robot system 1 at a workstation. The storage part 32 stores the program and the teaching data. The storage part 32 further stores a parameter for determining a manipulation sense in direct teaching. The parameter can be individually set for a plurality of users, a type of application of the robot arm 10, or a type of end effector 19, and is to be stored in the storage part 32 linked to a predetermined identification code or identifier.
[0028] The teaching control part 33 performs direct teaching. Specifically, the teaching control part 33 causes the first arm 11 to the sixth arm 16 of the robot arm 10 to move in response to a movement force exerted on the robot arm 10 by the user grasping the operating lever 20. The force sensor FS detects the movement force exerted on the robot arm 10. The teaching control part 33 acquires the detection result and estimates the strength and direction of the movement force. Based on the estimation result, the teaching control part 33 controls the motor 51 of each of the first drive part 41 to the sixth drive part 46 accordingly, causing the robot arm 10 to move in the direction in which the user wishes the robot arm 10 to move.The teaching control part 33 further causes the storage part 32 to store the operation target or the position attitude of the robot arm 10 set in the direct teaching as teaching data.
[0029] The adjustment control part 34 performs adjustment control for setting a parameter to determine a manipulation feeling such as “heaviness” or “lightness” when the user moves the robot arm 10 in direct teaching.
[0030] Examples of parameters include a viscosity coefficient, an inertia coefficient, a spring coefficient, and other parameters used in impedance control for the first drive part 41 to the sixth drive part 46. The adjustment control generally includes the following steps (1) to (3): (1) detecting the parameter and a predetermined evaluation index based on a score obtained by the user manually performing a specific task operation with respect to the robot arm 10; (2) calculating a score based on the evaluation index, the score being a mechanical evaluation value for the task operation, and presenting the score to the user; and (3) Changing the parameter depending on a subjective assessment of the user's perception of manipulation.
[0031] As shown in steps (1) to (3), the adjustment control section 34 not only adjusts a parameter based on a score obtained as a result of performing the task operation in step (1), but also presents the score to the user and changes the parameter depending on a subjective evaluation by the user, as shown in steps (2) and (3). This thus enables the setting of a parameter suitable for each user while taking the user's subjective judgment into account. The adjustment control section 34 serves to include a task operation setting section 35, a data acquisition section 36, a score calculation section 37, a display control section 38, and a parameter setting section 39 in response to the execution of a predetermined program.
[0032] The task operation setting section 35 sets a task operation that mimics direct teaching performed by the user to adjust a manipulation sense. For example, the task operation setting section 35 causes the display 60 to display a wizard that encourages the user to perform the task operation. Examples of the task operation include causing the robot arm 10 to assume a specific posture, causing the TCP 19 to reciprocate a specific distance, causing the TCP 19 to move in a specific mimicked working mode, and causing the TCP 19 to move in a specific, necessary manner with a jig for evaluation.
[0033] The data acquisition section 36 acquires various types of data obtained as a result of performing the task operation. The acquired data includes a parameter related to a manipulation sensation and a predetermined evaluation index. The parameter includes a viscosity coefficient, an inertia coefficient, and a spring coefficient in the movement of the robot arm 10 when performing the task operation. The evaluation index includes information about the operation accuracy of the robot arm 10 or the TCP 19. The operation accuracy is evaluated, for example, based on whether the robot arm 10 assumes a posture that exactly corresponds to a model in the task operation or whether the TCP 19 stops at a position that exactly corresponds to an assigned position in the task operation.
[0034] The score calculation section 37 calculates a score based on the evaluation index, which is an evaluation value in a result of the task operation. The score is calculated from evaluation items including, for example, the posture accuracy of the robot arm 10 and the positional accuracy of the TCP 19 in the task operation, as well as a time required for operation, by referring to a predefined arithmetic expression and a predefined calculation table. Generally, higher operation accuracy or higher positional accuracy and an operation time falling within an appropriate range result in a score with a high evaluation.
[0035] The display control section 38 causes the display 60 to display the score calculated by the score calculation section 37, and performs display control of receiving a subjective evaluation about a manipulation feeling in the task operation by the user from the display 60. In a preferred embodiment, the display control section 38 allows the user to dynamically change the parameter by causing the display 60 to display the Fig. 7, to provide the interactive user interface 8 with the score, and to receive the user's subjective evaluation from the interactive user interface 8.
[0036] The parameter setting section 39 changes the parameter obtained by performing the task operation depending on the user's subjective evaluation and stores the changed parameter in the storage section 32. The parameter setting section 39 stores the adjusted parameter related to the manipulation sensation in the storage section 32, linked to a user ID, in such a way that it can be retrieved when executing direct teaching. The storage section 32 preferably stores the parameter for a type of application of the robot arm 10 or a type of end effector 19. [Adjustment control operation process]
[0037] Fig. 3 is a flowchart illustrating adjustment control for a parameter for determining a manipulation sense in direct teaching. When execution of adjustment control is selected, for example, with a mode selection switch in the robot system 1, the task operation setting section 35 of the adjustment control part 34 causes the display 60 to display a wizard showing a method for performing a task operation (step S1).
[0038] When a user grasps the operating lever 20 and applies a moving force to the robot arm 10 to perform the task operation, the controller 30 receives the moving force (step S2). Specifically, the teaching control part 33 drives the motor 51 of each of the first driving parts 41 to the sixth driving parts 46 in the same manner as in direct teaching to move the robot arm 10 in a direction in which the user wishes to move the robot arm 10 based on a detection result from the force sensor FS.
[0039] After receiving the execution of the task operation, the data acquisition section 36 acquires an evaluation index based on a result of the execution of the task operation and a parameter in the movement of the robot arm in the task operation (step S3). As described above, examples of the evaluation index include posture accuracy and position accuracy. Posture accuracy is the correspondence between a rotation angle of each of the arms 11 to 16 set in the task operation and a corresponding rotation angle detected by the encoder 53 after the task operation. Position accuracy is the correspondence between a position of the TCP 19 in a robot operation coordinate set set in the task operation and a position of the TCP after the task operation.The parameter specifies a value of a coefficient used in impedance control when performing task operation.
[0040] When the evaluation index has been acquired, the score calculation section 37 calculates a score, which is an evaluation value of a result of the task operation, based on the evaluation index (step S4). Subsequently, the display control section 38 causes the display 60 to activate the interactive user interface 8 and display the score obtained in step S4 on the interactive user interface 8 (step S5). The interactive user interface 8 will be described later with reference to Fig. 7 described in detail.
[0041] Next, the display control section 38 receives input of subjective evaluation data from the user on the interactive user interface 8 (step S6). For example, the interactive user interface 8 displays a question about a manipulation feeling regarding the robot arm 10 and receives response information to the question to obtain information about a subjective evaluation of the manipulation feeling.
[0042] Then, the parameter setting section 39 changes the parameter acquired in step S3 based on the score in step S5 (step S7). Specifically, when the score indicates a low value, the parameter is automatically modified to a parameter expected to yield a score indicating a high value. For example, too easy a manipulation feeling regarding the robot arm 10 makes it difficult to stop the TCP 19 at a target position, resulting in a lower position accuracy score. In this example, the parameter is modified so that the manipulation feeling is harder.
[0043] Furthermore, in step S7, the automatically modified parameter is changed depending on the subjective evaluation obtained in step S6. In many cases, the user may find the manipulation unpleasant even if the score indicates a high value. In this regard, the parameter is defined to be changeable depending on the subjective evaluation. Examples of such changes depending on a subjective evaluation include a possibility of causing the interactive user interface 8 to directly receive a change manipulation from the user and a possibility of converting the subjective evaluation into a score and automatically changing a parameter.As a further possibility, the parameter setting section 39 may generate modification suggestion information regarding the modification of the parameter based on information regarding the subjective evaluation, and the interactive user interface 8 may display the modification suggestion information.
[0044] Thereafter, the display control section 38 causes the display 60 to display options to ask the user whether they want to accept the parameter change (step S8). If the user rejects the parameter change (NO in step S8), the process returns to step S6 to receive further input of subjective evaluation data from the user. If the user accepts the parameter change (YES in step S8), the parameter setting section 39 determines that the parameter adjustment is complete and stores the parameter associated with a user ID in the storage section 32 (step S9).
[0045] Subsequently, it is confirmed whether the adaptation control should be continued (step S10). For example, if it is confirmed that the adaptation control should be continued to perform another task operation for the robot arm 10 or to execute adaptation control for the robot system 1 by another user (YES in step S10), the process returns to step S2 to repeat the relevant steps. Conversely, if it is confirmed that the adaptation control should not be continued (NO in step S10), the adaptation control part 34 ends the process. [Examples of task operation]
[0046] Each of the Fig. 4 to 6 is an illustration of an example of a task operation to be performed by a user. Fig. Figure 4 shows an execution situation of a task operation in a first example. In the first example, a user sets displacement target positions to specific positions P1, P2. The positions P1, P2 are set, for example, on an evaluation plate prepared by the user or a piece of evaluation sheet. The positions P1, P2 are registered in the controller 30 to serve as already known positions in an operation coordinate system of the robot arm 10.
[0047] The task operation in the first example represents an operation in which the TCP 19 of the robot arm 10 is caused to move linearly back and forth between position P1 and position P2. The user grasps the operating lever 20 to manually move the TCP 19 from position P1 to position P2 and then from position P2 to position P1. In the task operation, a posture of the robot arm 10, that is, a rotation angle of each of the first shaft J1 to the sixth shaft J6, can be registered. Furthermore, a target operating speed can be set, which relates to the time required for the movement between position P1 and position P2.
[0048] The score calculation section 37 compares, for example, a registered coordinate of the positions P1, P2 with a check coordinate of a stop position of the TCP 19 after the TCP 19 is manually moved by the user toward the position P1, P2, which is the target position, and reaches the position P1, P2 in the task operation. Then, a score is calculated from the degree of deviation between the registered coordinate and the check coordinate. Similarly, a score is calculated from the degree of deviation between a target rotation angle and a rotation angle of each of the first shaft J1 to the sixth shaft J6 after the task operation for posture. Regarding the target operation speed, the adjustment control section 34 can issue an alarm when the task operation is performed at an obviously abnormal speed.An abnormal speed means, for example, a speed that exceeds an upper limit at which direct teaching can be safely carried out, or a speed that is too low and ignores a cycle time.
[0049] It is desirable for the user to appropriately set the number of repetitions of the task operation. Specifically, the number of times of reciprocating movement by the TCP 19 between position P1 and position P2 is selectable by the user as desired. A larger number of repetitions achieves averaged operation and improved scoring accuracy, but a long time is required to complete the task operation. In contrast, a smaller number of repetitions saves the time required for task operation but results in lower scoring accuracy. It is desirable to allow the user to choose whether to prioritize accuracy or time.
[0050] Fig. 5 shows an execution situation of a task operation in a second example. The second example shows the use of a jig 71 for determining a displacement target position of the TCP 19 in the task operation. The jig 71 is a jig for setting a linear displacement target and includes a first reference point protrusion 711 and a second reference point protrusion 712. The first reference point protrusion 711 has a vertex set at a position P1 as a reference position, and the second reference point protrusion 712 has a vertex set at a position P2 as another reference position. For example, the jig 71 is provided by a robot manufacturer and is ensured to have positional accuracy for each of the positions P1, P2.This improves the precision of the score calculated by the score calculation section 37. The positions to be reference positions are not limited to the two positions P1 and P2, and in this example and the previous first example, three or more reference positions may be specified.
[0051] Fig. 6 shows an execution situation of a task operation in a third example. In the third example, the task operation includes causing the TCP 19 to trace a circular orbit. In the first and second examples, the TCP 19 is moved back and forth between positions P1 and P2. Instead, the task operation in the third example may include starting from a specific reference position, tracing a predetermined orbit, for example, a circular orbit, and then returning to the reference position.
[0052] It is difficult to actually move the TCP 19 to draw such a circular path in real space. From this perspective, a circular path teaching jig 72 is preferably used to cause the TCP 19 to draw the circular path, and the controller 30 preferably records the circular path as a reference. The circular path teaching jig 72 has an annular groove 721 on its top surface for receiving the end effector 18 therein. To register the circular path, the user orbits the TCP 19 along the annular groove 721 with the end effector 18 inserted into the annular groove 721. A rotation angle of each of the first shaft J1 to the sixth shaft J6 and a circular coordinate of the TCP 19 are registered based on an output value from the force sensor FS while orbiting.In the task mode, the user moves the robot arm 10 in such a way that the TCP 19 draws a circular orbit without using the circular orbit teaching jig 72. The score calculation section 37 calculates a score based on the shift of the circular orbit in the task mode from the recorded circular orbit. [Concrete example of the interactive user interface]
[0053] Fig. 7 is a diagram of an example of the interactive user interface 8 that the display control section 38 displays on the display 60 in the adjustment control. The interactive user interface 8 includes a robot image display area 80, a task situation display area 81, a number of times input section 82, a question display section 83, an answer section 84, a score display section 85, a teaching situation display section 86, a slider 87 (parameter setting area), a command button group 88, and an initial value load button 89.
[0054] The robot image display area 80 displays a robot that is to be subjected to adjustment control for a parameter to determine a manipulation sense in direct teaching. In addition, the robot image display area 80 can collectively display a model number and type of the robot, a location of the robot in a factory, a relevant work step, and other information.
[0055] The task situation display section 81 is a section that displays a situation of performing a task operation. The example in Fig. 7 displays the letters "Task Start" to indicate the start of task operation. For example, when the task operation is completed, the letters "Task End" are displayed. Section 81 for displaying the task situation can display information including task operation guidance, auxiliary information, error, and anomaly output in detail in a dialog box.
[0056] The number of times input section 82 receives an input of the setting of the number of times of repetition of the task operation from the user. The task operation setting section 35 is an input section that receives the performance of the same task operation for the number of times of repetition associated with the input to the number of times input section 82. Adjusting the number of times of repetition results in an adjustment of the time required for the user to perform the task operation. As mentioned earlier, increasing the number of times of repetition achieves an improvement in the accuracy of the task operation score, but a long time is required to perform the task operation.Such setting of the section for entering the number of times 82 allows the user to adjust the number of times of repetitions in relation to the advantages and disadvantages described above.
[0057] The question display section 83 is a display section that displays a question to the user regarding a manipulation sense regarding the robot arm 10 in the task mode. The question display section 83 is defined to enable the display of some pre-prepared question sentences in a pull-down manner. Fig. Figure 8A shows examples of questions to be displayed in the drop-down menu in the question display section 83. The drawing illustrates the following questions about manipulation sensations that the user might have directly: "Did you find the manipulation difficult?"; "Did you find moving the arm difficult initially?"; "Did you find stopping the arm difficult?"; and "Were you able to stop the TCP accurately?" These questions can be displayed sequentially in a dialog box.
[0058] The answer section 84 receives an answer from the user to a question displayed in the question display section 83. The answer section 84 has a first selection button 841 to be selected when there is discomfort regarding a feeling of manipulation corresponding to a question, a second selection button 842 to be selected when there is discomfort regarding the feeling of manipulation contrary to the question, and a third selection button 843 to be selected when there is no discomfort indicated by the question. Fig. 7 shows an example of the display of the first selection button 841 with "Yes," the second selection button 842 with "No," and the third selection button 843 with "Exactly Right" for the question "Did you feel bad about the manipulation?" The display of each of the first, second, and third selection buttons 841, 842, and 843 can be changed accordingly according to a question. Such setting of the response section 84 enables reliable detection of the user's manipulation perception during task operation and results in the setting of a manipulation perception parameter that reflects the user's perception.
[0059] The score display section 85 is a display section that displays a score mechanically calculated by the score calculation section 37 based on the result of the task operation. The score display section 85 is also intended to display an evaluation index as the basis for calculating the score. Fig. 7 shows displayed examples of the evaluation index including a position accuracy of the TCP 19 and a posture accuracy of the robot arm 10 in the task operation, and a time required for performing the task operation.
[0060] The Teaching Situation Display Section 86 is a section for selecting a Direct Teaching situation. The Teaching Situation Display Section 86 is defined to allow the display of some pre-prepared situations in a pull-down manner. Fig.8B shows situations to be displayed in the teaching situation display section 86 in a pull-down manner. The drawing illustrates situations including: "acceleration" and "deceleration," which respectively represent accelerated movement and decelerated movement of the robot arm 10; "stop time," which represents a time to stop the TCP 19; and "operation start time," which represents a time to start the movement of the TCP 19 during direct teaching. Such options are provided to enable the user to set a parameter suitable for each situation in the acceleration, deceleration, stop time, and operation start time during direct teaching.
[0061] The slider 87 is a section that receives input directly from the user to change a parameter related to a manipulation sensation, and has a slider 87S for adjusting the parameter. The slider bar 87S is moved on the slider 87 to change the parameter for a "light" manipulation sensation or a "heavy" manipulation sensation. The parameter adjustment section 39 changes the parameter related to the manipulation sensation in response to the information input to the slider 87, that is, in response to the movement of the slider bar 87S.
[0062] Various ways of changing a parameter related to a manipulation sensation can be exemplified. One way involves the automatic modification of a parameter by the parameter setting section 39 based on information about a subjective evaluation provided by the user input to the response section 84. In this case, the parameter setting section 39 automatically modifies the parameter in two stages. Specifically, the parameter setting section 39 automatically modifies the parameter based on a score mechanically calculated by the score calculation section 37 and further automatically modifies the parameter using a predetermined formula to which a normalized subjective evaluation by the user is applied.For example, if the question display section 83 displays the question "Did you feel that the manipulation was difficult?" and the user selects the first selection button 841 = "YES" in the answer section 84, the parameter setting section 39 automatically changes the parameter for an easier manipulation experience. In this way, the parameter change is completed quickly due to the automatic modification of the parameter.
[0063] Another approach involves receiving a subjective evaluation from the user through manual manipulation of the slider 87 and modifying the parameter through the parameter setting section 39. For example, a center position of the slider bar 87S is defined on the slider bar 87 to indicate a value of the parameter modified based on a score calculated by the score calculation section 37. The parameter is changed from such a predetermined default state depending on the subjective evaluation in response to the user's manipulation of the slider bar 87S. For example, a user who has a strong manipulation sense can change the parameter for an easier manipulation sense by sliding the slider bar 87S to the left. This allows for a direct "link" of the user's manipulation sense to the parameter change.Here, after the automatic modification of the parameter in response to the response in the response section 84 in the previous example, a further manual modification of the parameter by the user can be received via the slider 87.
[0064] In an actual workplace, it may be difficult for a user to determine a manipulation sensation. Taking this into account, modification suggestion information regarding the modification of a parameter can be generated based on information about a subjective evaluation acquired in the answer section 84, and the interactive user interface 8 can display the modification suggestion information. For example, if the user answers "YES" to the question "Did you feel burdened by the manipulation?" in the question display section 83, the interactive user interface 8 can display modification suggestions such as "Slide the slider bar 87S to the left by one division," "Slide the slider bar 87S toward the light," or other suggestions in a pop-up display.The method includes presenting information on recommended modification suggestion information to the user on the interactive user interface 8. This results in such a user having difficulty determining a manipulation sensation with supporting information for the determination.
[0065] The command button group 88 includes an "Undo" button 881, a "Redo" button 882, a "Cancel" button 883, and a "Save" button 884. The "Undo" button 881 is pressed to delete a temporarily set parameter related to a manipulation sensation. The "Redo" button 882 is pressed to restore the setting deleted with the "Undo" button 881. The "Cancel" button 883 is pressed to cancel an adjustment control executed up to that point. The "Save" button 884 is pressed to confirm the registration of the parameter derived under the adjustment control.
[0066] The Load Initial Value button 89 is used to load an existing parameter as an initial value. Examples of existing parameters include a parameter adjustment value obtained during a past adjustment performed on a robot in use and a parameter adjustment value pertaining to another user. Such parameter adjustment values can be read from the memory section 32 of the controller 30 or downloaded from another controller, a USB memory, or a website. In this way, an existing parameter associated with a successful adjustment is introduced as a default value, thus saving the time required to adjust a parameter.
[0067] The embodiment illustrates receiving the execution of the same task operation for the number of times associated with an input of the setting in the number of times input section 82 of the interactive user interface 8. Instead, the execution of the task operation may be completed in a case where a predetermined condition is met or a completion instruction is received from the user before the execution of the task operation reaches the set number of times of repetition.
[0068] For example, each time the task operation is executed, a user inputs a subjective evaluation into the response section 84. In this example, the repetition of the task operation in the run may be terminated in response to a user's termination instruction if the user has an optimal manipulation feeling in a particular run of the task operation before performing the task operation reaches the number of repetitions. Alternatively, the repetition of the task operation associated with a subjective evaluation for each run of the task operation may be automatically terminated if the "just right" evaluation is continuously selected for a predetermined number of times, or if the "just right" evaluation is not continuously selected but is selected to reach the predetermined number of times.If the repetition of the "difficult" or "easy" assessment continues for a predefined number of times, the repetition may be automatically terminated based on the determination that the subjective assessment is deemed inconsistent. In the case of automatic termination, the task status indicator section 81 on the interactive user interface 8 should display, for example, "Task End."
[0069] The robot system 1 or a method for adjusting a parameter according to the initially described embodiment is defined such that a parameter is not adjusted in such a way that a manipulation feeling is determined during direct teaching by prompting a user to input a numerical value, but rather such that the parameter is adjusted by prompting the user to perform a task operation. This configuration allows even a user with less expertise to easily adjust a comfortable manipulation feeling.Furthermore, the parameter is not only adjusted based on a score calculated by the score calculation section 37 with reference to a result of performing the task operation, but also presented to the user on the interactive user interface 8, and further, a subjective evaluation by the user is received from the response section 84 or via the slider 87, so that the parameter is changed. This therefore enables setting a parameter suitable for each user, taking into account a subjective evaluation of the user. [Invention encompassed by the embodiment]
[0070] The embodiment includes each of the inventions to be described below.
[0071] A robot system according to one aspect of the present invention includes: a robot configured to perform a predetermined operation; and a controller configured to receive direct teaching for manually teaching an operation target for the robot by a user and controlling the operation of the robot.The controller performs adjustment control for adjusting a parameter to determine a manipulation feeling in direct teaching, and is configured to, in the adjustment control: acquire the parameter related to the manipulation feeling and a predetermined evaluation index based on a result of causing the user to manually perform a specific task operation with respect to the robot; calculate a score that is a mechanical evaluation value for the task operation based on the evaluation index and present the score to the user; and change the parameter depending on a subjective evaluation regarding the manipulation feeling by the user.
[0072] A method for adjusting a parameter according to another aspect of the present invention is a method for adjusting a parameter for determining a manipulation feeling in direct teaching of teaching an operation target for a robot manually by a user, the direct teaching being executable in a robot system. The method includes: causing the user to manually perform a specific task operation with respect to the robot; deriving the parameter related to the manipulation feeling and a predetermined evaluation index based on a result of performing the task operation; calculating a score based on the evaluation index, the score being a mechanical evaluation value for the task operation, and presenting the score to the user; and changing the parameter depending on a subjective evaluation regarding the manipulation feeling by the user.
[0073] The robot system or method for adjusting a parameter is defined such that a parameter is not set such that a manipulation feeling is directly determined by the user in direct teaching, but the parameter is adjusted by causing the user to perform a task operation. This configuration allows even a user with less expertise to easily set a comfortable manipulation feeling. The parameter is not only adjusted based on a score obtained as a result of performing the task operation, but is also presented to the user in such a way that the parameter is changed depending on a subjective evaluation by the user. This consequently enables the setting of a parameter suitable for each user while taking into account a subjective evaluation of the user.
[0074] In the robot system, the evaluation index desirably includes information about an operating accuracy of the robot.
[0075] The configuration allows the calculation of the score based on the evaluation index of the robot's operating accuracy during task operation. This allows the parameter to be adjusted with a score based on high operating accuracy in addition to user preference.
[0076] The robot system preferably further comprises a display configured to display an interactive user interface. Preferably, the controller is configured to dynamically change the parameter by providing a score to the interactive user interface and receiving the user's subjective rating from the interactive user interface.
[0077] The configuration that receives the user's subjective evaluation on the interactive user interface allows for easy adjustment of the parameter to eliminate a discrepancy between a score, which is a mechanical evaluation value, and a manipulation feeling that the user actually has in Direct Teaching.
[0078] In the robot system, the controller may be configured to: cause the interactive user interface to display a question display section that displays a question regarding the manipulation feeling to the user, and an answer section that receives an answer to the question from the user; and acquire information regarding the subjective evaluation based on information input into the answer section.
[0079] The configuration enables reliable detection of the user's perception of manipulation based on the response to the question regarding the perception of manipulation. This allows the setting of a parameter that reflects the user's perception.
[0080] In the robot system, the controller may be configured to generate modification suggestion information regarding the change of the parameter based on the acquired information regarding the subjective evaluation and to cause the interactive user interface to display the modification suggestion information.
[0081] The configuration enables the presentation of recommended modification suggestion information to the user on the interactive user interface. This results, for example, in providing support information for a user who has difficulty determining a manipulation sensation.
[0082] In the robot system, the controller may be configured to automatically modify the parameter based on the acquired information regarding the subjective evaluation.
[0083] The configuration allows for a quick completion of changing the parameter due to the automatic modification of the parameter.
[0084] In the robot system, the controller may be configured to: cause the interactive user interface to display a parameter adjustment section that receives a change in the parameter from the user; and change the parameter based on the information entered into the parameter adjustment section.
[0085] The configuration allows for a direct link between the user's manipulation experience and the parameter change. For example, the interactive user interface is defined to display an option that allows the user to make the manipulation experience "easy" or "hard" through manipulation, allowing the user to directly adjust the parameter according to their perception.
[0086] In the robot system, the controller is configured to cause the interactive user interface to display a load button to load an existing parameter as an initial value.
[0087] The configuration introduces a pre-existing parameter as a default value, thus saving the time required to adjust a parameter. Examples of pre-existing parameters include a parameter adjustment value obtained from an adjustment performed on a robot used in the past and a parameter adjustment value that affects another user.
[0088] In the robot system, the controller may be configured to: cause the interactive user interface to display a number of times input section that receives an input for setting the number of times of repetition of the task operation; and enable performing the same task operation for the number of times of repetition associated with the input of the setting.
[0089] The configuration allows the user to adjust the time required to complete the task. Increasing the number of repetitions improves the accuracy of the task score, but it requires a significant amount of time to complete the task. This configuration allows the user to adjust the number of repetitions based on their own advantages and disadvantages.
[0090] In the robot system, the controller may be configured to terminate the execution of the task operation in a case where a predetermined condition is met or the controller receives a termination instruction from the user before the execution reaches the number of times of repetition associated with the input of the setting.
[0091] This configuration allows the execution of the task operation to be paused when a suitable parameter setting can be performed without repeating the task operation. This essentially avoids unnecessary repetition of the task operation, thus saving the time required for parameter setting.
[0092] In the robot system, the controller may be configured to execute the adjustment control at acceleration, at deceleration, at a stop time, and at an operation start time of the robot individually in direct teaching.
[0093] This configuration allows setting a parameter suitable for the user for each situation during acceleration, deceleration, stop time and operation start time in Direct Teaching.
[0094] The robot system may further include a storage portion that stores the parameter. The controller may be configured to execute the adjustment control individually for a plurality of users, for a type of robot application, or for a type of end effector; and to cause the storage portion to store the adjusted parameter so that it can be recalled when executing direct teaching.
[0095] This configuration allows the parameter to be set for each user, type of application, or type of end effector, thus achieving a more detailed adjustment of the manipulation sensation during Direct Teaching.
[0096] Finally, the present invention can provide a robot system that enables convenient direct teaching for a user and a method for adjusting a parameter. 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 2021-74788
[0005]
Claims
[1] Robot system, comprising: a robot configured to perform a predetermined operation; and a controller configured to receive direct teaching for teaching an operation target for the robot manually by a user and to control the operation of the robot, wherein the controller executes an adjustment control for adjusting a parameter to determine a manipulation sense in direct teaching, and is configured such that in the adjustment control: detects the parameter relating to the manipulation feeling and a predetermined evaluation index based on a result of the user inducing the robot to manually perform a specific task operation; calculates a score based on the evaluation index, which is a mechanical evaluation value for the task operation, and presents the score to the user; and changes the parameter depending on a subjective assessment of the user's perception of manipulation. [2] The robot system according to claim 1, wherein the evaluation index includes information about an operating accuracy of the robot. [3] The robot system of claim 1 or 2, further comprising a display configured to display an interactive user interface, wherein the controller is configured to dynamically change the parameter by providing the score to the interactive user interface and receiving the user's subjective rating from the interactive user interface. [4] Robot system according to claim 3, wherein the controller is configured to cause the interactive user interface to display a question display section that displays a question to the user regarding the manipulation sensation and a response section that receives a response to the question from the user; and to collect information regarding the user's subjective assessment based on information entered in the response section. [5] The robot system according to claim 4, wherein the controller is configured to generate modification suggestion information regarding the change of the parameter based on the acquired information regarding the subjective evaluation and to cause the interactive user interface to display the modification suggestion information. [6] The robot system of claim 4, wherein the controller is configured to automatically modify the parameter based on the acquired information regarding the subjective evaluation. [7] The robot system of claim 3, wherein the controller is configured to cause the interactive user interface to display a parameter adjustment section that receives a change in the parameter from the user; and to change the parameter based on the information entered in the parameter adjustment section. [8] The robot system of claim 3, wherein the controller is configured to cause the interactive user interface to display a load button to load an existing parameter as an initial value. [9] The robot system of claim 3, wherein the controller is configured to cause the interactive user interface to display a number of times input section that receives an input for setting the number of times the task operation is repeated; and to enable the same task operation to be performed for the number of times of repetition associated with entering the setting. [10] The robot system according to claim 9, wherein the controller is configured to terminate the execution of the task operation in a case where a predetermined condition is satisfied or the controller receives a termination instruction from the user before the execution reaches the number of times of repetition associated with the input of the setting. [11] The robot system according to claim 1, wherein the controller is configured to execute the adjustment control at acceleration, at deceleration, at a stop time and at an operation start time of the robot individually in the direct teaching. [12] Robot system according to claim 1, further comprising: a memory part that stores the parameter, where the controller is configured to to perform the adaptation control for a plurality of users individually, for a type of application of the robot or for a type of end effector; and to cause the memory section to save the set parameter so that it can be recalled when direct teaching is executed. [13] A method for adjusting a parameter to determine a manipulation sense in direct teaching for teaching an operation target for a robot manually by a user, the direct teaching being executable in a robot system, the method comprising: Causing the user to manually perform a specific task operation with respect to the robot; Deriving the parameter relating to the manipulation sensation and a predetermined evaluation index based on a result of performing the task operation; and Calculating a score based on the evaluation index, the score being a mechanical evaluation value for task operation, and presenting the score to the user; and Changing the parameter depending on a subjective assessment of the user's perception of manipulation.
Citation Information
Patent Citations
Robot system
JP2021074788A
industrial robot
DE102011003506A1
Robot control device for controlling a robot that moves according to an applied force.
DE102015004475B4
robot teaching device
DE102018107231A1
Teaching unit for robots
EP0850730B1