ROBOT CONTROL DEVICE, CONTROL METHOD AND ROBOT SYSTEM
The robot control device addresses the issue of inaccurate force estimation in robots with flexible links by determining and distributing the mass of these links as loads, improving control precision and reducing false contact detections.
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-22
- Publication Date
- 2026-04-02
AI Technical Summary
Existing robot control devices struggle to accurately control robots equipped with flexible elongated links due to the mass of these links introducing errors into force estimation, leading to imprecise control.
A robot control device that determines the mass of a flexible elongated limb retrofitted to the robot and specifies this mass as a load acting on each movable limb, distributing it based on predefined dimensions and center of gravity positions to improve force estimation accuracy.
Enables precise control of robots with flexible elongated limbs by accurately accounting for the loads applied by these limbs, reducing false contact detections and enhancing operational precision, especially in high-speed operations.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical field
[0001] The present disclosure relates to a robot control device, a control method and a robot system. State of the art
[0002] As is known, there is a control device for controlling a robot which is equipped with a robot arm having several joint sections and a flexible elongated link which is attached along the side surface of the robot arm (see, for example, patent literature 1). List of known writings on patent literature
[0003] PTL 1 Unexamined Japanese patent application, publication no. 2015-171747 Brief description of the invention: Technical problem
[0004] The control device described above estimates a force acting on the robot arm and controls the robot based on this estimate. However, in a case where a flexible elongated link is attached to the robot arm, the mass of the flexible elongated link, acting as a load on the robot arm, introduces an error into the force estimated by the control device, and thus the control device cannot precisely control the robot.
[0005] Therefore, it is desirable to be able to accurately control a robot in which a flexible elongated limb is attached to a robot arm. Solution to the problem
[0006] One aspect of the present disclosure is a robot control device for controlling a robot comprising several movable limbs, wherein the control device comprises at least one processor, wherein the processor determines the mass of a flexible elongated limb retrofitted to the robot and specifies the determined mass of the flexible elongated limb as a load acting on each of the movable limbs. Brief description of the drawings { Fig. 1} Fig. Figure 1 is a side view showing a robot system according to an embodiment of the present disclosure. { Fig. 2} Fig. Figure 2 is a block diagram showing the configuration of a control device according to an embodiment of the present disclosure. { Fig. 3} Fig. Figure 3 is a flowchart showing a control procedure according to one embodiment of the present disclosure. { Fig. 4} Fig. Figure 4 is a schematic representation to illustrate an example of the tax procedure according to the embodiment of the present disclosure. Description of embodiments
[0007] A control device 10 and a robot system 100 according to an embodiment of the present disclosure are described below with reference to the drawings.
[0008] As in Fig. As shown in Figure 1, the robot system 100 according to this embodiment comprises, for example, a robot 1 and the control device 10 for controlling the robot 1.
[0009] Robot 1, for example, is a 6-axis articulated robot, which is a collaborative robot that works together with a worker.
[0010] As in Fig. As shown in Figure 1, the robot 1 comprises: a base 3 installed on a horizontal floor F; and a rotating drum 4 supported in such a way as to be rotatable about a vertical first axis J1 with respect to the base 3. Furthermore, the robot 1 comprises: several arm segments (movable limbs) supported by the rotating drum 4 and rotatably connected to one another; and a wrist unit.
[0011] The robot 1 comprises the following arm segments: a first arm 5, which is supported to be rotatable about a horizontal second axis J2 with respect to the rotating drum 4; and a second arm 6, which is supported to be rotatable about a horizontal third axis J3 with respect to the first arm 5. Furthermore, the wrist unit comprises a first wrist element (movable link) 7, which is supported to be rotatable about a fourth axis J4 with respect to the second arm 6, the axis being perpendicular to the third axis J3. The wrist unit also comprises a second wrist element (movable link) 8, which is supported to be rotatable about a fifth axis J5 with respect to the first wrist element 7, the axis being perpendicular to the fourth axis J4.Furthermore, the wrist unit includes a third wrist element (movable link) 9, which is supported in such a way as to be rotatable with respect to the second wrist element 8 about a sixth axis J6, which is orthogonal to the fifth axis J5.
[0012] In other words, the robot 1 comprises six rotary joints A1 to A6, each of which rotates around the six axes, namely the first axis J1 to the sixth axis J6.
[0013] Each of the individual rotary joints A1 to A6 is driven by a motor and a reducer (not shown) to slow down the rotation of the respective motors. In addition, 6-axis force sensors (not shown) are attached to the respective rotary joints A1 to A6 to detect forces acting on the individual joint axes.
[0014] For example, a tool T is attached to the distal end of the robot 1, i.e., a flange surface 9f provided on the third wrist element 9, by a user loading the robot 1 or the like. The tool T is, for example, a hand equipped with a drive unit for grasping a workpiece to be handled or the like.
[0015] Furthermore, after the installation of robot 1, a flexible, elongated link 2, such as a cable for transmitting power and a control signal to tool T, is retrofitted to robot 1 by the user or similar. The flexible, elongated link 2 is achieved by bundling several cables together using a cable conduit or similar. In an example shown in Fig. As shown in Figure 1, one end of the flexible elongated link 2 is connected to the control device 10 and the other end of it is connected to the tool T.
[0016] The following is an example of a method for attaching the flexible elongated link 2 to the robot 1.
[0017] The flexible elongated link 2 is attached to the outer surface of the robot 1, for example in a state in which the robot 1 is in a basic orientation as shown in Fig. 1 is arranged. Here, for example, the basic orientation of robot 1 is an orientation in which the third axis J3 is arranged vertically above the second axis J2, the fifth axis J5 is arranged so that it is parallel to the third axis J3 on the front in the horizontal direction, and the sixth axis J6 is arranged so that it extends forward in the horizontal direction.
[0018] Specifically, the flexible elongated link 2 extends to the base 3 from one end, which is connected to the control device 10 located at a position remote from the robot 1, and is raised upwards at a position away from the base 3. The flexible elongated link 2 then runs outside the pivot joints A1, A2, is positioned along the side surface of the first arm 5, and is fixed to the side surface of the first arm 5 by two fixing tools f1, f2.
[0019] Furthermore, the flexible elongated link 2 extends outside the pivot joints A3, A4, is then positioned along the side surface of the first wrist element 7, and is fixed to the side surface of the first wrist element 7 by a fixing tool f3. Then the flexible elongated link 2 extends outside the pivot joints A5, A6, and its other end is then connected to the tool T.
[0020] If the flexible elongated link 2 runs outside the rotary joints A1 to A6, it hangs loosely by being sufficiently longer than a route along the surface of the robot 1. This secures the flexible elongated link 2 in such a way that no excessive force is applied to it, even when the rotary joints A1 to A6 are actuated.
[0021] Next, the control device 10 according to this embodiment will be described. As in Fig. As shown in Figure 2, the control device 10 comprises an input device 11, at least one memory 12, such as a ROM and a RAM, and at least one processor 13, such as a CPU.
[0022] The input device 11 is, for example, a touchscreen or a combination of a display device, such as a monitor, and a keyboard, mouse, push button, etc. When setting conditions after the tool T and the flexible elongated link 2 have been attached to the robot 1, the input device 11 receives information about the tool T and the flexible elongated link 2, which is entered by the user or the like.
[0023] Memory 12 stores the dimensions and center of gravity positions of individual sections of robot 1 in advance as initial setting values. The dimensions of individual sections of robot 1 include, for example, a distance L1 between the second axis J2 and the third axis J3 of the first arm 5, and a distance L2 between the third axis J3 of the second arm 6 and the fifth axis J5 of the first wrist element 7. Furthermore, the dimensions also include a distance L3 from the fifth axis J5 to the flange surface 9f.
[0024] Furthermore, the center of gravity positions include the center of gravity position of dimension L1 on the longitudinal axis of the first arm 5, the center of gravity position of dimension L2 on the fourth axis J4 and the center of gravity position of dimension L3 on the sixth axis J6.
[0025] The control device 10 is equipped with a function for setting the mass and center of gravity position of a fastening element or the like attached to the flange surface 9f. The user or the like uses this function to input the mass and center of gravity position of the tool T attached to the flange surface 9f. This makes it possible to correctly control the robot 1, even if a heavy object is attached to the flange surface 9f and the properties of the entire robot 1 are changed, taking into account the load applied to the robot 1 by the heavy object.
[0026] In addition to the function mentioned above, the control device 10, according to the present disclosure, is provided with a function for defining the flexible elongated link 2 connected to the tool T as a load. Specifically, the control device 10 stores a definition program for defining the flexible elongated link 2 as a load in the memory 12.
[0027] The user, or similar entity, who has attached the flexible elongated link 2 to the robot 1, causes a predefined user interface to be displayed on a screen of the input device 11 by starting the setting program stored in memory 12. The user, or similar entity, then enters, for example, the total weight (mass) of the flexible elongated link 2 according to the displayed user interface.
[0028] Once the total weight is entered, the processor 13 of the control device 10 divides the total weight into three weights based on the ratio L1:L2:L3 of the dimensions L1 to L3, which are stored as the initial setting values in the memory 12. The processor 13 then defines the three partial weights as loads acting at the respective center of gravity positions, which are also stored as the initial setting values in the memory 12.
[0029] In other words, the ratio weight corresponding to dimension L1 is defined at the center of gravity position at the midpoint of dimension L1 as a load acting on the first arm 5. Furthermore, the ratio weight corresponding to dimension L2 is defined at the center of gravity position at the midpoint of dimension L2 as a load acting on the second arm 6. Furthermore, the ratio weight corresponding to dimension L3 is defined at the center of gravity position at the midpoint of dimension L3 as a load acting on the second wrist element 8.
[0030] In a tax procedure according to this embodiment, as shown in the illustration in Fig. 3. First, the user or similar person enters the total weight of the flexible elongated link 2 into the input device 11 (step S1). When the tool T and the flexible elongated link 2 are attached to the robot 1, the total weight of the flexible elongated link 2 can be entered together with the mass and center of gravity position of the tool T.
[0031] Then the entered total weight of the flexible elongated link 2 is sent to memory 12 and stored there together with the mass and center of gravity position of the tool T.
[0032] Next, the processor 13 reads the dimensions L1 to L3 stored in the memory 12 and divides the input total weight of the flexible elongated link 2 into three weights based on the ratio L1:L2:L3 of the read dimensions (step S2).
[0033] Then, the weights distributed by processor 13 are defined as loads acting on the respective movable limbs, namely the first arm 5, the second arm 6, and the second wrist element 8 (step S3). In other words, the total weight of the flexible elongated limb 2 attached to robot 1 is distributed as loads corresponding to the respective movable limbs.
[0034] By such a setting, the control device 10 can, for example, detect contact between the robot 1 and an external object or the like, taking into account the loads applied by the flexible elongated link 2.
[0035] An example of a contact detection method, when the control device 10 causes the robot 1 to perform a predetermined task, is described below.
[0036] Processor 13 reads an operating program from memory 12 to cause robot 1 to perform a predefined task and executes the operating program. Processor 13 thereby causes the respective motors for the rotary joints A1 to A6 of robot 1 to rotate based on several operating commands contained in the operating program, and subsequently changes the orientation of robot 1.
[0037] In this case, processor 13 estimates the forces acting on the rotary joints A2, A3, and A5 before robot 1 performs a predefined operating procedure. This estimate is based on inertial forces acting on the respective moving parts due to their operation and their weights (masses). Processor 13 then causes robot 1 to perform the predefined operating procedure and also determines the detection values of the respective force sensors for the rotary joints A2, A3, and A5, subtracting the estimated forces from the determined detection values.
[0038] In a case where the value obtained by subtraction exceeds a predetermined threshold, the processor 13 determines that a force is acting on the robot 1 that is higher than expected, i.e., that the robot 1 is in contact with an external object or the like. Then, in the case where it is determined that the robot 1 is in contact with an external object or the like, the operation of the robot 1 is slowed down or stopped. In this way, the control device 10 causes the robot 1 to perform a predetermined task while simultaneously performing contact detection on the robot 1.
[0039] In this case, since the total weight of the flexible elongated link 2 attached to the robot 1 is higher, the forces acting on the respective movable links due to the loads applied by the flexible elongated link 2 are also higher, i.e., the influence on the detection values of the respective force sensors for the rotary joints A2, A3, A5 is also higher. If the weight of the flexible elongated link 2 is not defined as a load, a large error occurs between the estimated forces acting on the rotary joints A2, A3, A5 and the detection values of the respective force sensors, and contact with the robot 1 is falsely detected.
[0040] In this embodiment, the processor 13 can take into account the influence of the loads applied by the flexible elongated link 2 attached to the robot 1 when estimating the respective forces acting on the rotary joints A2, A3, A5. This allows the processor 13 to estimate the respective forces acting on the rotary joints A2, A3, A5 more accurately and thus prevents false detection of contact by the robot 1.
[0041] Furthermore, in this embodiment, the loads applied by the flexible elongated link 2 to the robot 1 are calculated based on the ratio L1:L2:L3 of the dimensions pre-stored in memory 12 and the total weight of the flexible elongated link 2, which is entered by the user or the like. In other words, the user or the like does not need to enter any information about the length of the flexible elongated link 2 and does not need to measure the length of the flexible elongated link 2 according to the respective movable links of the robot 1, for example, when attaching the flexible elongated link 2 to the robot 1, thus reducing the effort required by the user or the like.
[0042] It is noted that, although in this embodiment the total weight of the flexible elongated limb 2 is defined as a load acting on the robot 1, alternatively the weight of a section of the flexible elongated limb 2 can be defined as a load.
[0043] For example, according to the representation in Fig. 1. In a case where the flexible elongated link 2 is in contact with the base F between the base 3 and the control device 10, the weight of a section between the position where the flexible elongated link 2 is in contact with the base F and the other end connected to the tool T is defined as a load. In this case, it is possible to define a load excluding the weight of the flexible elongated link 2 between the end connected to the control device 10 and the position where the flexible elongated link 2 is in contact with the base F, i.e., the weight of a section that does not actually act as a load on the robot 1.
[0044] Furthermore, in this embodiment, the total weight of the flexible elongated link 2 is distributed according to the ratio of its dimensions L1, L2, L3 to the respective movable links. Alternatively, the total weight of the flexible elongated link 2 can be distributed based on values obtained by multiplying the dimensions L1, L2, L3 by coefficients greater than 1.
[0045] For example, according to the illustration in Fig. 1 In a case where the flexible elongated member 2 has much additional length near the pivot joints A3, A4, the dimensions L1, L2 are multiplied by larger coefficients according to the additional length.
[0046] This makes it possible to perform weighting according to the additional length of the flexible elongated link 2 at dimensions L1, L2, L3 and to carry out a very precise load determination that is more closely adapted to the actual installation design of the flexible elongated link 2.
[0047] Furthermore, in this embodiment, the loads applied by the flexible elongated link 2 attached to the robot 1 are set such that they act at the center of gravity positions of the respective movable links of the robot 1. Alternatively, the positions at which the loads applied by the flexible elongated link 2 act can be set to arbitrary positions entered by the user or the like.
[0048] If the user or similar person designs a fastening element or similar device for attaching the flexible elongated link 2 to the robot 1, there is a case in which a routing route of the flexible elongated link 2 is checked and the center of gravity positions of the flexible elongated link 2 are predetermined. In such a case, the user or similar person can input the center of gravity positions, which are identified in advance based on a routing design or similar device of the flexible elongated link 2 attached to the robot 1, via the input device 11. This makes it possible to define the loads applied by the flexible elongated link 2 so that they more closely reflect reality.
[0049] Furthermore, in this embodiment, the total weight of the flexible elongated link 2 is distributed based on the dimensions L1 to L3 of the respective sections of the robot 1. Alternatively, if the mass per unit length of the flexible elongated link 2 is known, the mass can be entered to estimate the loads acting on the respective movable links based on the dimensions L1 to L3 stored in the memory 12.
[0050] In this case, the user or the like enters the mass per unit length of the flexible elongated link 2 using the input device 11. The processor 13 multiplies the dimensions L1, L2, L3 stored in the memory 12 by the input mass per unit length of the flexible elongated link 2 and estimates the loads acting on the respective movable links using the values obtained by the multiplication.
[0051] Furthermore, in a case where the user or the like can easily measure the lengths of the respective areas of the flexible elongated link 2 that act as loads on the respective movable links, the heights of the loads acting on the respective movable links can be estimated based on the measured lengths of the respective areas.
[0052] For example, the user or the like actually measures the lengths of the respective areas to be obtained by dividing the total length of the flexible elongated limb 2 attached to the robot 1 according to the lengths of the respective movable limbs of the robot 1. Then the user or the like enters the actually measured lengths of the respective areas together with the mass per unit length of the flexible elongated limb 2 into the input device 11.
[0053] Processor 13 defines the loads acting on the respective movable links by multiplying the input lengths of the respective sections of the flexible elongated link 2 by the input mass per unit length of the flexible elongated link 2. This makes it possible to define the loads applied by the flexible elongated link 2 to the robot 1 more precisely.
[0054] Furthermore, if the user or the like actually measures the lengths of the respective sections of the flexible elongated link 2 according to the respective movable links, in a case where an additional length is provided on at least one side of a section, the length of this section can be measured by defining an intermediate position in the length direction of the additional length as a section boundary. In other words, in the Fig.In the example shown in Figure 4, additional lengths are provided on both sides of a region of the flexible elongated link 2, which corresponds to the second arm 6; thus, it is sufficient to measure a length 1 along the flexible elongated link 2 between an intermediate position M1 and an intermediate position M2 in the longitudinal direction of the additional lengths on both sides.
[0055] Furthermore, in this embodiment, the total weight of the flexible elongated link 2 is entered into the input device 11 by a worker. Alternatively, in a case where a specific tool T and a flexible elongated link 2 are attached to the robot 1, the total weight of the flexible elongated link 2 can be stored in advance in the memory 12 as an initial setting value.
[0056] Furthermore, in this embodiment, the pivot joints A2, A3, and A5 for driving the first arm 5, the second arm 6, and the second wrist element 8 are shown as examples of the pivot joint on which the mass of the flexible elongated link 2 acts strongly as a load. Moreover, in a case where the center of gravity positions of the flexible elongated link 2 can be determined with high accuracy, its weight can be defined as the loads acting on the pivot joints A1, A4, and A6.
[0057] Furthermore, although the case in which the control device 10 controls the articulated robot comprising the six rotary axes A1 to A6 has been described as an example in this embodiment, the object to be controlled by the control device 10 is not limited to this. For example, the control device 10 can be used to control a direct-drive robot comprising at least one linear motion mechanism.
[0058] Furthermore, although the control method according to this embodiment is used for contact detection for robot 1, which is a collaborative robot, the control method is not limited to this and can, for example, be used for operational control of a robot 1 that is not a collaborative robot.
[0059] Particularly in a case where individual arm segments and wrist elements of the robot 1 are moved at high speed, the loads applied by the flexible elongated limb 2 attached to the robot 1 strongly influence the dynamic properties of the robot 1. Thus, the application of the control method according to this embodiment offers the advantage of being able to control the robot 1, which is operated at high speed, more precisely.
[0060] Although the embodiments of the present disclosure have been described in detail above, the present disclosure is not limited to the individual embodiments described above. Various additions, substitutions, modifications, partial omissions, and so forth may be made to these embodiments within a scope that does not deviate from the scope of protection of the invention or within a scope that does not deviate from the concept and idea of the present invention as derived from the content stated in the claims and their equivalents. For example, in the embodiments described above, the sequence of individual operating operations and the sequence of individual processes are illustrated by way of example, and the sequences are not limited thereto.
[0061] With regard to the embodiments and modifications described above, the following pending features are further disclosed. (Note 1)
[0062] Robot control device for controlling a robot comprising several movable limbs, wherein the control device comprises at least one processor, wherein the processor determines the mass of a flexible elongated limb retrofitted to the robot and specifies the determined mass of the flexible elongated limb as a load acting on each of the movable limbs. (Note 2)
[0063] Control device according to Note 1, which further comprises a memory for storing the length of each of the movable links, wherein the processor distributes the determined mass of the flexible elongated link as the load acting on each of the movable links according to a ratio corresponding to the length of each of the movable links stored in the memory. (Note 3)
[0064] Control device according to Note 1, further comprising a memory for storing the length of each of the movable links, wherein the processor determines the mass per unit length of the flexible elongated link and calculates the load acting on each of the movable links by multiplying the determined mass per unit length of the flexible elongated link by a length corresponding to the length of each of the movable links stored in the memory. (Note 4)
[0065] Control device according to Note 3, wherein the length corresponding to the length of each of the movable links stored in the memory is calculated by multiplying the length of each of the movable links stored in the memory by a coefficient greater than 1. (Note 5)
[0066] Control device according to one of Notes 1 to 4, wherein the processor detects a disruptive interaction between the robot and an object or person at a periphery of the robot on the basis of a value that includes the mass of each of the movable limbs and the load acting on each of the movable limbs. (Note 6)
[0067] Robot system comprising the robot and the control device according to any one of Notes 1 to 5. (Note 7)
[0068] Control method for controlling a robot comprising several movable limbs, wherein the control method comprises determining the mass of a flexible elongated limb retrofitted to the robot and specifying the determined mass of the flexible elongated limb as a load acting on each of the movable limbs. Reference symbol list 1 robot 2 flexible elongated link 5 first arm (movable limb) 6. Second arm (movable limb) 7 first wrist element (movable limb) 8 second wrist element (movable link) 9 third wrist element (movable limb) 10 Control device 12 storage locations 13 processor 100 robot systems QUOTES INCLUDED IN THE DESCRIPTION
[0000] This list of documents cited by the applicant was automatically generated and is included solely for the reader's convenience. The list is not part of the German patent or utility model application. The DPMA accepts no liability for any errors or omissions. Cited patent literature
[0000] JP 2015-171747
[0003]
Claims
[1] Robot control device for controlling a robot comprising several movable limbs, wherein the control device includes at least one processor, where the processor: the mass of a flexible elongated limb retrofitted to the robot is determined; and which defines the specific mass of the flexible elongated link as a load acting on each of the movable links. [2] Control device according to claim 1, further comprising a memory for storing the length of each of the movable links, wherein the processor distributes the determined mass of the flexible elongated link as the load acting on each of the movable links according to a ratio corresponding to the length of each of the movable links stored in the memory. [3] Control device according to claim 1, further comprising a memory for storing the length of each of the movable links, wherein the processor: the mass per unit length of the flexible elongated limb is determined; and The load acting on each of the movable links is calculated by multiplying the determined mass per unit length of the flexible elongated link by a length corresponding to the length of each of the movable links stored in the memory. [4] Control device according to claim 3, wherein the length corresponding to the length of each of the movable elements stored in the memory is calculated by multiplying the length of each of the movable elements stored in the memory by a coefficient of more than 1. [5] Control device according to one of claims 1 to 4, wherein the processor detects a disruptive interaction between the robot and an object or person at a periphery of the robot on the basis of a value comprising the mass of each of the movable links and the load acting on each of the movable links. [6] Robot system comprising the following: the robot; and the control device according to one of claims 1 to 5. [7] Control method for controlling a robot comprising several movable parts, wherein the control method comprises: Determining the mass of a flexible elongated limb retrofitted to the robot; and Defining the specific mass of the flexible elongated link as a load acting on each of the movable links.
Citation Information
Patent Citations
Robot control device that senses contact with external environment
JP2015171747A
2015-171747