AUTOMATED METHOD FOR SETTING THE PAYLOAD OF A COLLABORATIVE ROBOT

The method automates payload-weight determination in collaborative robots, eliminating the need for payload plans and programming, and reduces measurement delays, enhancing productivity by using a force sensor for on-demand weight measurements.

DE102025142718A1Pending Publication Date: 2026-05-07FANUC ROBOTICS NORTH AMERICA INC
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
FANUC ROBOTICS NORTH AMERICA INC
Filing Date
2025-10-20
Publication Date
2026-05-07

AI Technical Summary

Technical Problem

Existing methods for determining payload weight in collaborative robots are inefficient, requiring complex payload plans, individual programming, and cause unnecessary delays due to weight measurements after each gripping or releasing operation, which reduces productivity.

Method used

A method and system for automatically setting payload-weight values using a force sensor to determine object weights, allowing for automatic adjustment without the need for payload plans or individual programming, and measuring weights only when necessary, thus eliminating delays.

Benefits of technology

This approach increases robot productivity by eliminating the need for complex payload plans and programming, reducing measurement delays, and ensuring accurate payload compensation without manual intervention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method and system for automatically setting a payload-weight value for a collaborative robot, wherein one or more objects are picked up by a robot gripper, the weight of the objects is automatically determined by a force sensor, and this weight is used for the payload. The payload value is automatically adjusted when one of the objects is set down. If all objects are known to have the same weight, only one weight measurement is required; objects with different weights can be handled with a single weight measurement for each object. The system performs the payload adjustment automatically without requiring manual adjustment or individual programming.The robot uses the payload-weight value when it detects an externally applied force indicating contact with an operator or another object, and also to ensure that the accelerations of the load do not exceed the gripping force capacity or the load limits of the robot joints.
Need to check novelty before this filing date? Find Prior Art

Description

CROSS-REFERENCE TO RELATED REGISTRATIONS

[0001] This application claims the benefit of the priority date of the preliminary US patent application No. 63 / 715,043 filed on November 1, 2024, entitled “AUTOMATED METHOD TO SET PAYLOAD OF COLLABORATIVE ROBOT”. STATE OF THE ART Technical field

[0002] The present disclosure relates generally to the field of industrial robot control and in particular to a method for automatically setting a payload weight value for a collaborative robot, wherein one or more objects are picked up by a robot gripper, the weight of the objects is automatically determined by a force sensor and used for the payload, and the payload value is automatically adjusted when one of the objects is put down. Discussion of related technology

[0003] The use of industrial robots to perform a wide range of manufacturing, assembly, and material handling tasks is well established. Many of these tasks are performed by articulated robots, such as five- or six-axis robots with a servo motor at each joint. These robots are controlled in real time, with a motion program divided into small motion increments. A robot controller then performs real-time calculations for feedback control to generate input commands for the articulated motor, which move the end effector center point along a predefined trajectory.

[0004] A common type of robot task is material handling, where packages or workpieces are moved from a starting point to a destination. A specific application of this type involves the robot being equipped with a vacuum gripper to pick up packages (e.g., boxes) and move them to a predetermined location. This type of robotic activity is typically used for depalletizing or palletizing (i.e., moving boxes from a pallet to a conveyor or vice versa).

[0005] For tasks of the type described above, it is necessary to know the weight of the "payload" or the objects being moved by the robot arm. The payload is typically understood to encompass the gripper (often a vacuum gripper with considerable weight) along with the box(es) it is carrying at any given time. This payload-weight value is used to calculate the robot arm's trajectory, as well as the corresponding speeds and accelerations, ensuring that the robot joint loads remain within prescribed limits and that the box(es) do not detach from the vacuum gripper.

[0006] Certain applications necessitate the use of collaborative robots, which are robots designed to operate alongside a human worker in a workspace. Collaborative robots incorporate control functions to prevent violent contact between the robot or its payload and the human worker. In collaborative robot applications, the payload-weight value is used not only for the trajectory calculation described above, but also to define the control parameters for detecting contact with any obstacle in the workspace.

[0007] Various methods have been used to set a payload-weight value for robots. In the simplest case, a robot moves only one box at a time, each box has the same weight, and the weight is known. In this case, the payload-weight value is simply the weight of the gripper when it is not carrying a box, or the weight of the gripper plus the known box weight when it is carrying a box.

[0008] Most real-world applications, however, are more complex and involve boxes of varying sizes and weights on a single pallet, requiring the robot to pick up multiple boxes simultaneously and place some boxes in one location and others in different locations, and so on. In such applications, determining the payload-to-weight ratio can be complicated and time-consuming.

[0009] A common method for determining a payload-to-weight ratio involves simply measuring the weight of each transported box after every gripping or releasing operation. This weight measurement can be performed by a force sensor mounted on the robot arm near the vacuum gripper. The disadvantage of this method is that the robot must stop after each gripping or releasing operation, and the weight measurement then takes a certain amount of time. This measurement delay significantly reduces the productivity of the robot performing the package movement.

[0010] Even when the box weights are known (all boxes of the same weight or boxes with different known weights), most palletizing / depalletizing operations require the flexibility to pick up and release boxes in varying numbers and combinations depending on the composition of specific pallets. For example, one task might require the robot to pick up three boxes of different weights and place them one after the other in different locations, while another task might require the robot to pick up four boxes of the same weight and place them in quantities of two, one, and one. Each of these different task combinations requires a specific payload schedule, with each schedule specifying the payload-weight value for each of the task's multiple steps.This quickly leads to an increase in payload plans, which are difficult to keep track of and require complex individual programming for integration with the robot control.

[0011] In view of the circumstances described above, there is a need for an improved procedure for setting a load-bearing capacity weight value without the need to define load-bearing capacity plans or individual programming and without unnecessary delays caused by package weighing. BRIEF SUMMARY OF THE INVENTION

[0012] The present disclosure describes a method and a system for automatically setting a payload-weight value for a collaborative robot, wherein one or more objects are picked up by a robot gripper, the weight of the objects is automatically determined by a force sensor, and this weight is used for the payload. The payload value is automatically adjusted when one of the objects is set down. If it is known that all objects have the same weight, only one weight measurement is required, and objects with different weights can be handled with a single weight measurement for each object. The system performs the payload compensation automatically without the need for payload plans or individual programming.The robot uses the payload-weight value when it detects an externally applied force indicating contact with a worker or another object, and also to ensure that the accelerations of the load do not exceed the gripping force capacity or the load limits of the robot joints.

[0013] Further features of the systems and methods disclosed herein will become apparent from the following description and the attached patent claims in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS Fig. Figure 1 is a representation of an industrial robot equipped with a vacuum gripper tool and a package attached to the vacuum gripper and moved by the robot, as an example of an application in which the methods of the present disclosure can be used to benefit; Fig. 2 includes illustrations of a pallet with many identical boxes and a pallet with boxes of different sizes and weights, which additionally show examples of applications where the methods of the present disclosure can be used to advantage; Fig. Figure 3 is a flowchart of an existing method for setting load-weight values ​​using load-weight plans in a robot-assisted palletizing or depalletizing operation as known from the prior art; Fig. Figure 4 is a flowchart of a method for automatically setting a payload-weight value for a robot that picks up and places a single box, according to embodiments of the present disclosure; and Fig. Figure 5 is a flowchart of a method for automatically setting a payload weight value for a robot that picks up and places multiple boxes, according to embodiments of the present disclosure. DETAILED DESCRIPTION OF THE EXECUTION FORMS

[0014] The following discussion of embodiments of the disclosure relating to the automatic adjustment of payload in collaborative robots is only exemplary and is not intended to limit the disclosed devices and techniques or their applications or uses in any way.

[0015] Industrial robots are used for a wide variety of manufacturing, assembly, and material handling tasks. In one application, a robot is used to move a workpiece or package from one location to another. A specific example of robot-assisted package movement is depalletizing, where boxes are taken from a stack on a pallet and moved to a destination, such as a conveyor. The reverse process—picking boxes from a conveyor and placing each box at a specific location on a pallet—is called palletizing and is also frequently used.

[0016] Fig. Figure 1 is a representation of an industrial robot 100 equipped with a vacuum gripper 120 and a package 130 attached to the vacuum gripper 120 and moved by the robot 100, as an example of an application where the methods of the present disclosure can be used. The robot 100 comprises an articulated robot arm with several segments 110, the segments 110 being connected to one another by rotary joints driven by servo motors, as is known to those skilled in the art. The vacuum gripper 120 is the tool used by the robot 100, the vacuum gripper 120 being connected to an outer arm segment or wrist of the robot 100. The vacuum gripper 120 is a commonly used tool when the package 130 is a box, as in Figure 1. Fig. 1 shown, or several boxes, as discussed below.

[0017] The robot 100 is connected to a controller 140 in a manner known from the prior art, the controller 140 providing joint movement commands to the robot 100, causing the robot 100 to move the vacuum gripper 120 to a target location where the package 130 is gripped, followed by movement commands causing the robot 100 to move the gripper 120 to a destination location where the package 130 is placed and released. If several boxes are gripped, they can be placed in different locations or all in the same location.

[0018] A load sensor 150 can be provided on the robot 100, for example, at a location between the outer arm segment 110 and the vacuum gripper 120, as shown. Other positions can also be used for the load sensor 150, depending on the specific robot model, including integrating the load sensor into one of the arm segments 110 so that the sensor is not visible from the outside. The load sensor 150 provides measured values ​​to the controller 140. In a typical palletizing / depalletizing operation under static conditions, the force or load value measured by the sensor 150 is the weight of the gripper 120 and the box(es) attached to it (i.e., the package 130).

[0019] Fig. Figure 2 includes illustrations of a pallet 200 containing many identical boxes and a pallet 220 containing boxes of different sizes and weights, which further illustrate examples of applications where the methods of the present disclosure can be used. The pallet 200 contains a plurality of boxes 210, all of which are identical. The weight of each of the boxes 210 may or may not be known in advance. Note that each layer of the pallet 200 contains boxes with two different orientations, which is quite common. The vacuum gripper on the robot arm can be rotated to pick up two adjacent boxes with one of the two orientations, or to pick up two boxes with one orientation and a third box with the other orientation, to give just a few examples.

[0020] Pallet 220 contains a variety of boxes in three different sizes and shapes, including several of box 230, box 240, and box 250. Pallet 220 is shown with separate layers, each containing only one specific box size, but this is not always the case. On mixed-size pallets, different box sizes may be placed in the same layer, and parallel layers are not even necessarily present. Furthermore, mixed-size pallets may contain boxes that are the same size but have different weights.

[0021] Based on Fig. 2. One can easily imagine a depalletizing operation in which pallets such as pallet 200 or pallet 220 are presented to a robot, which takes boxes from the pallet and moves them to another location. As already mentioned, the methods discussed below in the present disclosure are also applicable to palletizing operations in which boxes or other packages are picked up at one location—such as a truck or a conveyor—and placed at specific locations and with specific orientations on pallets that are currently being formed.

[0022] Some palletizing and depalletizing tasks, such as those discussed above, are performed by an articulated robot mounted on a mobile base. This allows the robot to be moved to a desired location to perform palletizing or depalletizing operations near a truck, loading dock, conveyor, etc. Some of these tasks are performed using collaborative robots in the presence of a human worker.

[0023] Precisely setting the payload-weight value for robot-assisted material handling is important for several reasons. First, the payload value is used to calculate robot trajectories and accelerations when moving objects from one location to another. A heavy payload may necessitate reduced accelerations during material movement to avoid exceeding the gripping capacity of the vacuum gripper or the load limits of the robot joints. Additionally, the payload-weight value is used to control the collaborative robot's movement and detect contact between the robot or its load and any obstacle, including human workers. If the payload-weight value is set too high, the collaborative robot may not stop as intended in the event of unintentional contact.If the payload weight value is set too low, the robot controller may interpret normal operating loads as an indication of contact, triggering a command to stop the robot. This requires the operator to manually clear the error to resume operation, resulting in unnecessary robot downtime.

[0024] Robot-assisted material handling activities such as palletizing and depalletizing are often performed in warehouses and factory floors where a wide variety of items are handled. In other words, a robot might depalletize several pallets of boxes from a truck, all of which are the same size and weight, and then the robot could be used to assemble a pallet from boxes arriving on a conveyor belt that vary in size and weight. This kind of flexibility in terms of tasks historically required defining and programming a large number of payload plans for the robot, selecting the appropriate plan for each specific task at the start of the operation.

[0025] A load capacity plan is a document or data table that defines the load capacity weight value for a specific combination of packages that will be transported by a vacuum gripper.

[0026] Fig. Figure 3 is a flowchart 300 of an existing method for setting payload-weight values ​​using payload plans for a robot-assisted palletizing or depalletizing operation, as known from the prior art. In Box 310, a robot with a vacuum gripper picks up several boxes from a pallet, conveyor, or other source. In this example, the boxes all have the same size and the same known weight. In Box 320, a first step of selecting the payload plan is performed based on the number of boxes picked up. In this example, three boxes were picked up, so there are three optional paths for selecting the payload plan depending on the plan for setting the boxes down.

[0027] For box 330, the plan specifies that a box is placed (for example, onto a pallet or conveyor). Therefore, for box 332, a load capacity plan designated No. 3 is selected, whereby this load capacity plan sets the load capacity based on a certain number of boxes and, after placement, readjusts the load capacity based on a new number of boxes, reduced by one.

[0028] For box 340, the plan specifies that two boxes will be placed down. Therefore, for box 342, a load capacity plan designated No. 2 is selected, whereby this load capacity plan sets the load capacity based on a certain number of boxes and, after placement, readjusts the load capacity based on a new number of boxes, which is reduced by two.

[0029] For box 350, the plan specifies that three boxes will be placed down. Therefore, for box 352, a load capacity plan designated No. 1 is selected, whereby this load capacity plan sets the load capacity based on a certain number of boxes and, after placement, readjusts the load capacity based on a new number of boxes, which is reduced by three.

[0030] At box 360, the one or more boxes are placed at the designated location. The process then proceeds to decision diamond 370, where it is determined whether the just-completed placement operation was the last placement operation of the current cycle (i.e., whether the gripper is now empty). If the gripper is not empty, the process returns to box 320, where a new current box count is set, and a new load plan is selected from one of the three paths based on the planned next placement number.

[0031] From decision diamond 370, if the value of "last drop operation" is "True" (i.e., the gripper is empty), the process moves to box 380, where the next cycle begins with the robot picking up several boxes at box 310.

[0032] Even in the simple example of Fig. 3. It is obvious that payload plans must be developed and that customized robot logic must be programmed to accommodate all foreseeable combinations of box pick-up and drop-off sequences. In a typical real-world palletizing / depalletizing operation with a modern industrial robot, 20 to 30 different box types, each with varying sizes and weights, may need to be handled. The vacuum gripper can pick up to 10 boxes simultaneously, which can then be dropped individually or in groups. This number of package weights and pick-up / drop-off options results in a very large number of possible payload combinations, potentially reaching 200 or more. Using existing methods, a payload plan must be defined for each of these possible payloads, and individual robot programming must be created to implement the payload plans in the Fig. The three methods shown are to integrate the robot-assisted work processes. Managing this entire complexity is both labor-intensive and prone to errors.

[0033] An alternative method was developed to set load capacity weight values ​​without the need for complex load capacity plans and programming. This method involves measuring the weight of the load after each pick-and-place operation and adjusting the load capacity weight value accordingly. While this method is simple and flexible, it adds a significant delay to the pick-and-place process.

[0034] Consider an example where a robot picks up four boxes and places them down one after the other. In this example, the robot must measure the box weights four times: 1) measure the weight of four boxes when picking them up; 2) place one box down, measure the remaining three boxes; 3) place one box down, measure the remaining two boxes; 4) place one box down, measure the remaining one box.

[0035] A typical industrial robot equipped with a vacuum gripper and a load sensor, as in Fig. As shown in Figure 1, it takes approximately 1.8 seconds to accurately capture a weight value. If a weight measurement is required after each pick-and-place step, the measurement delays can accumulate into a significant and undesirable amount of time. In the example described above, with four measurement steps, the measurement delays add up to 7.2 seconds (4 * 1.8) per cycle. Considering that robots of this type can currently handle up to 10 boxes per pick-and-place cycle, the measurement delay could even reach 18 seconds. These delays represent a serious impediment to robot productivity.

[0036] The methods of this disclosure were developed to overcome the limitations of existing methods, including both the need for complex load-bearing plans and integration programming, and the delays associated with measuring the load-bearing weight at each step. These methods are discussed below.

[0037] The payload compensation methods of this disclosure incorporate several key concepts that increase robot productivity and reduce complexity. First, the disclosed methods eliminate the need to define a payload plan and perform individual programming by simply using either a gripper-full payload or a gripper-empty payload, with the gripper-full payload being adjustable during the package pick-up / placement cycles. Second, the disclosed methods include a user-configurable setting that specifies whether boxes of uniform weight or of varying weights are being moved during a pick-up / placement operation. Furthermore, the disclosed methods provide for automatic payload weighing by the load sensor mounted on the robot; however, the payload weight is measured only when needed, thus eliminating many unnecessary measurement delays.Thanks to automatic weighing on demand, neither an external weighing device such as a scale is required, nor do load capacity plans need to be created based on externally measured weights.

[0038] Fig. Figure 4 is a flowchart 400 of a method for automatically setting a payload-weight value for a robot that picks up and places a single box, according to embodiments of the present disclosure. At box 410, the robot picks up a single box, for example from a conveyor, a container, or a pallet. At decision diamond 420, it is determined whether the handled boxes have a uniform weight (all the same weight - as in pallet 200). Fig. 2) or not (at least two different weights - as with pallet 220 from Fig. 2) The designation of a uniform or non-uniform box weight is a user-configurable setting that can be selected on a screen of the user interface on the robot controller (or a corresponding remote control device, teaching device, etc.).

[0039] If all boxes have a uniform weight, decision diamond 430 determines whether a box just picked up is the first box of the picking / placing operation. For example, if the first box is taken from pallet 200, the determination at decision diamond 430 would be "Yes, this is the first box." Thereafter, the determination at decision diamond 430 for the rest of pallet 200 and every subsequent pallet of this composition is "No."

[0040] If the decision at decision diamond 430 is "Yes, that is the first box", then the robot measures the box weight at box 440 using the built-in load sensor (e.g., load sensor 150 of Fig. 1) At box 450, the "gripper full load plan" is set, using the known gripper empty load plan plus the box weight measured at box 440. The gripper full load plan is used by the robot for the current pick-up / placement cycle. At box 452, the robot places the box at a designated location, such as a container, a pallet, a conveyor, etc., depending on the palletizing / depalletizing requirements. After placing the single box, the load plan at box 460 is switched to the gripper empty load plan, which is predefined based on the weight of the gripper alone. The process then loops back to box 410, where the robot picks up another box.

[0041] For each subsequently picked-up crate, the process proceeds directly from decision diamond 430 to crate 450, where the gripper full load plan is selected using the same value as before, because the crate weight is known to be the same. Thus, the measurement of the crate weight at crate 440 is skipped, avoiding unnecessary delay caused by the measurement.

[0042] If the boxes have inconsistent weights, the process moves from decision diamond 420 to box 470, where the robot measures the box weight using its built-in load sensor. At box 480, the "gripper full load plan" is activated, using the known gripper empty load plan plus the box weight measured at box 470. The gripper full load plan is used by the robot for the current pick-up / placement cycle. At box 482, the robot places the box at a designated location. After placing the single box, the load plan is switched to the gripper empty load plan at box 490. The process then loops back to box 410, where the robot picks up another box. For each subsequently added box, as long as the box weight is reported as inconsistent, the process moves from decision diamond 420 to box 470, where the new box weight is measured.

[0043] Continue on Fig. Referring to section 4 and following the left side of the flowchart (uniform box weight), the disclosed method provides for the automatic measurement of the box weight the first time and then skips the weight measurement in all subsequent cycles, resulting in a significant time saving.

[0044] If the right side of flowchart 400 (non-uniform box weight) is followed, the user only needs to specify the gripper's empty payload capacity and begin production. In contrast, when using existing methods, payload plans must be defined for each possible box weight; these payload plans must be integrated with the control software through individual programming, and the correct payload plan must be selected for each individual box picked up by the robot.

[0045] It is evident from the foregoing discussion that the disclosed automatic load compensation method of the present disclosure offers advantages over existing methods, both for activities with a uniform box weight and for activities with a non-uniform box weight.

[0046] Fig. Figure 5 is a flowchart 500 of a method for automatically setting a payload-weight value for a robot that picks up and places multiple boxes, according to embodiments of the present disclosure. At box 510, the robot picks up a plurality of boxes (from a conveyor, from a container, or from a pallet, etc.). The number of boxes picked up at box 510 is known.

[0047] Decision diamond 520 determines whether the handled boxes have a uniform weight (all the same weight as in pallet 200 of Fig. 2) or not (at least two different weights - as with pallet 220 from Fig. 2) The designation of a uniform or non-uniform box weight is a user-configurable setting that can be selected on a screen of the user interface on the robot controller (or a corresponding remote control device, teaching device, etc.).

[0048] If all boxes have a uniform weight, the robot measures the weight of all boxes at box 530 using the built-in load sensor (e.g., load sensor 150 from [company name]). Fig. 1) For box 540, the weight of each individual box is calculated based on the known empty weight of the grabber, the measured weight of all boxes in box 530, and the known number of boxes. To do this, the empty grabber weight is subtracted from the full grabber weight, and the difference is divided by the number of boxes.

[0049] At box 542, the "gripper full load plan" is set, using the known gripper empty load plus the weight of the currently gripped boxes (which is initially equal to the weight measured at box 530). The gripper full load plan is used by the robot for the current pick-up / placement cycle until part of the load is released. At box 544, a known number of boxes are placed by the robot at a designated location, such as a container, a pallet, a conveyor, etc., depending on the palletizing / depalletizing requirements. After one or more boxes have been released, decision diamond 550 determines whether the last box has been released. If so, the load plan at box 560 is switched to the gripper empty load plan, and the process then loops back to box 510, where the robot picks up another group of boxes.

[0050] If the gripper is not empty, the process returns from decision diamond 550 to box 540 to recalculate the weight of the currently gripped boxes. This is done by determining how many boxes remain attached to the gripper (original number minus the number placed), multiplying this by the known weight per box, and adding the result to the gripper weight. At box 542, the gripper full load plan is adjusted to the weight of the currently gripped boxes plus the gripper weight, and this load value is used until more boxes are placed. After more boxes have been placed at box 544, decision diamond 550 again determines whether the gripper is empty, and the process continues in this manner.

[0051] The process on the left side of Fig. Option 5 allows for the placement of a load comprising several crates (e.g., 8-10 crates) in increments (e.g., two here, three there, etc.) without remeasuring the weight of the remaining crates and without establishing any load plans. All of this is handled automatically, as discussed above. As long as the crate weight is reported as a single unit, the measurement at crate 530 can be skipped after the first placement, since the total crate weight can be determined based on the known weight per crate and the number of crates picked up at crate 510.

[0052] If the boxes have inconsistent weights, the process moves from decision diamond 520 to box 570, where the robot measures the weight of the boxes using its integrated load sensor. At box 572, the gripper full load plan is set, using the known gripper empty load plus the box weight measured at box 570. If the weight measured at box 570 includes the gripper and the boxes, this measured weight is naturally used for the gripper full load plan. The robot then uses the gripper full load plan for the current pick-up / placement cycle.

[0053] At box 574, a known number of boxes are placed by the robot at a designated location. After one or more boxes have been placed, decision diamond 580 determines whether the last box has been placed. If so, the load plan at box 590 is switched to the gripper-empty load plan, and the process then loops back to box 510, where the robot picks up another group of boxes.

[0054] If the gripper is not empty, the process returns from decision diamond 580 to box 570 to measure the weight of the currently gripped boxes. At box 572, the gripper's full load capacity plan is adjusted to the weight of the currently gripped boxes plus the gripper's weight, and this load capacity value is used until more boxes are placed. After more boxes have been placed at box 574, decision diamond 580 again determines whether the gripper is empty, and the process continues in this manner.

[0055] If the right side of flowchart 500 (non-uniform box weight) is followed, the user only needs to specify the gripper's empty payload capacity and begin production. In contrast, when using existing methods, payload schedules must be defined for every possible combination of box weights (of which there could be hundreds); these payload schedules must be integrated with the control software through custom programming, and the correct payload schedule must be selected for each combination of boxes picked up by the robot.

[0056] From the discussion of Fig. 5 It is evident that the advantages of the disclosed automatic load compensation method apply to activities in which several boxes are picked up, both in the case of uniform box weights and in the case of non-uniform box weights.

[0057] The automatic payload compensation methods of this disclosure can be advantageously applied to many types of robot-assisted pick-and-place activities. These activities include palletizing and depalletizing (discussed in detail above), conveyor picking (boxes of generally unknown weight are taken from one conveyor and placed on another conveyor or pallet, or in another location), bin picking (objects of the same type in a container are picked and moved to another location), and piece-by-piece picking (objects of different types in a container are picked individually and moved to another location). Furthermore, the disclosed methods are applicable to both collaborative and non-collaborative industrial robots.

[0058] Throughout the preceding discussion, various computers and controllers are described and assumed. It is understood that the software applications and modules of these computers and controllers run on one or more electronic computing devices comprising a processor and a memory module. In particular, this includes one or more processors in the robot controller 140 discussed above. Specifically, the processors in the controller 140 are configured to execute the automatic payload compensation procedures described above.

[0059] Although a number of exemplary aspects and embodiments of the methods and systems for automatic load compensation have been discussed above, the person skilled in the art will recognize modifications, permutations, additions, and subcombinations thereof. It is therefore intended that the following appended claims and claims introduced therein be interpreted as encompassing all modifications, permutations, additions, and subcombinations that correspond to their true spirit and scope. 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] US 63 / 715,043

[0001]

Claims

[1] Method for setting a payload-weight value of an industrial robot, the method comprising: Providing a wide variety of objects that are readily available for grasping; Grasping a number of objects with a gripper mounted on the robot; Measuring the total weight of the number of objects using a load sensor mounted on the robot or gripper; Setting the load capacity weight value using the total weight of the number of objects and including a known gripper empty weight value; If all the grasped objects have the same weight, determine the weight of each object as the total weight divided by the number of objects, move the gripper to a target position, place a subset of the number of objects, and reduce the payload-weight value by an amount equal to the number of placed objects multiplied by the weight of each object; and If the gripped objects do not all have the same weight, move the gripper to a target position, place a subset of the number of objects, measure a new weight of a reduced number of objects using the load sensor, and adjust the load capacity weight value using the new weight. [2] Method according to claim 1, further comprising placing a next subset of the number of objects and resetting the load capacity weight value until the gripper is empty, whereupon the load capacity weight value is set to the gripper empty weight value. [3] Method according to claim 1, wherein, if the number of objects is one and all objects available for grasping have the same weight, grasping one object, measuring the weight of only one of the first objects, setting the load-weight value using the weight of the first of the objects including the known gripper empty weight value, setting down one object and repeating the grasping and setting down of further individual objects without measuring the weight of each of the further individual objects. [4] Method according to claim 1, wherein, if the number of objects is one and not all objects available for grasping have the same weight, grasping one object, measuring the weight of one object, setting the load-weight value using the weight of one object including the known gripper empty weight value, setting down one object and repeating the grasping and setting down of further individual objects including measuring the weight of each of the further individual objects. [5] Method according to claim 1, wherein the payload-weight value is used when calculating a trajectory for the movement of the objects by the robot, wherein the trajectory comprises a spatial path of the gripper as well as velocity and acceleration profiles along the spatial path. [6] Method according to claim 5, wherein calculating a trajectory comprises calculating robot joint loads and gripper-object forces based on the trajectory and the payload-weight value, and, if the robot joint loads or the gripper-object forces exceed corresponding predefined limits, recalculating the trajectory until the robot joint loads and the gripper-object forces do not exceed the limits. [7] Method according to claim 5, wherein the robot is a collaborative robot designed to operate with a human worker located near the robot, and wherein the payload-weight value is also used to determine a threshold of an external force on the robot which triggers the stopping of the robot's movement. [8] Method according to claim 1, wherein the robot performs a palletizing or depalletizing activity by grasping and moving the objects. [9] Method according to claim 1, wherein the gripper is a vacuum gripper comprising a plurality of suction elements which can be individually and selectively activated, wherein each of the objects is gripped by activating one or more of the suction elements and released by deactivating one or more of the suction elements. [10] Method according to claim 1, wherein a configuration parameter indicating whether the objects available for grasping all have the same weight is defined before grasping the number of objects. [11] Method for setting a payload-weight value of an industrial robot, the method comprising: Providing a large number of objects available for grasping, where a configuration parameter is defined to indicate whether the objects available for grasping all have the same weight; Grasping a number of objects with a gripper mounted on the robot, wherein the gripper is a vacuum gripper comprising a plurality of suction elements that can be activated individually and selectively, wherein each of the objects is grasped by activating one or more of the suction elements; Measuring the total weight of the number of objects using a load sensor mounted on the robot or gripper; Setting the load capacity weight value using the total weight of the number of objects and including a known gripper empty weight value; If all the grasped objects have the same weight, determine the weight of each object as the total weight divided by the number of objects, move the gripper to a target position, place a subset of the number of objects, and reduce the payload-weight value by an amount equal to the number of placed objects multiplied by the weight of each object; If the gripped objects do not all have the same weight, move the gripper to a target position, place a subset of the objects, measure the weight of this reduced number of objects using the load sensor, and adjust the payload-weight value using this new weight; and Deploying the next subset of objects and resetting the load capacity weight value until the gripper is empty, at which point the load capacity weight value is set to the gripper-empty weight value. wherein the load-weight value is used in calculating a trajectory that is used to move the gripper to the target position, wherein the trajectory includes a spatial path of the gripper as well as velocity and acceleration profiles along the spatial path. [12] Method according to claim 11, wherein, when the number of objects is one, grasping the one object, measuring the weight of the one object, setting the load-weight value using the weight of the one object including the known gripper empty weight value, setting down the one object and repeating the grasping and setting down of further individual objects, wherein the weight of each of the further individual objects is measured only if the objects available for grasping do not all have the same weight. [13] Method according to claim 11, wherein calculating a trajectory comprises calculating robot joint loads and gripper-object forces based on the trajectory and the payload-weight value, and, if the robot joint loads or the gripper-object forces exceed corresponding predefined limits, recalculating the trajectory until the robot joint loads and the gripper-object forces do not exceed the limits. [14] Method according to claim 13, wherein the robot is a collaborative robot designed to operate with a human worker located near the robot, and wherein the payload-weight value is also used to determine a threshold of an external force on the robot which triggers the stopping of the robot's movement. [15] Robot-assisted pick-and-place system with automatic payload compensation, the system comprising: an industrial robot equipped with a gripper, and a load sensor connected to the robot and / or the gripper; and a robot controller in conjunction with the robot, the gripper and the load sensor, wherein the controller is configured to perform steps that include: Grasping from a variety of objects available for grasping, a number of objects with the gripper; Measuring the total weight of the number of objects using the load sensor; Setting the load capacity weight value using the total weight of the number of objects and including a known gripper empty weight value; If all the grasped objects have the same weight, determine the weight of each object as the total weight divided by the number of objects, move the gripper to a target position, place a subset of the number of objects, and reduce the payload-weight value by an amount equal to the number of placed objects multiplied by the weight of each object; and If the gripped objects do not all have the same weight, move the gripper to a target position, place a subset of the number of objects, measure a new weight of a reduced number of objects using the load sensor, and adjust the load capacity weight value using the new weight. [16] System according to claim 15, wherein the control is further configured to place a next subset of the number of objects and to reset the load capacity weight value until the gripper is empty, whereupon the load capacity weight value is set to the gripper empty weight value. [17] System according to claim 15, wherein the control is further configured, when the number of objects is one and all objects available for gripping have the same weight, to grip one object, measure the weight of only one first object, set the load-weight value using the weight of the first object including the known gripper empty weight value, place the one object down and repeat the gripping and placing of further individual objects without measuring the weight of each of the further individual objects. [18] System according to claim 15, wherein the control is further configured, when the number of objects is one and not all objects available for gripping have the same weight, to grip one object, measure the weight of one object, set the load-weight value using the weight of one object including the known gripper empty weight value, place one object down and repeat the gripping and placing of further individual objects including measuring the weight of each of the further individual objects. [19] System according to claim 15, wherein the payload-weight value is used by the controller when calculating a trajectory for the movement of the objects by the robot, wherein the trajectory comprises a spatial path of the gripper as well as velocity and acceleration profiles along the spatial path. [20] System according to claim 19, wherein calculating a trajectory comprises calculating robot joint loads and gripper-object forces based on the trajectory and the payload-weight value, and, if the robot joint loads or the gripper-object forces exceed corresponding predefined limits, recalculating the trajectory until the robot joint loads and the gripper-object forces do not exceed the limits. [21] System according to claim 20, wherein the robot is a collaborative robot designed to operate with a human worker located near the robot, and wherein the payload-weight value is also used to determine a threshold of an external force on the robot which causes the controller to stop the robot's movement. [22] System according to claim 15, wherein the robot performs a palletizing or depalletizing activity by grasping and moving the objects. [23] System according to claim 15, wherein the gripper is a vacuum gripper comprising a plurality of suction elements which can be individually and selectively activated, wherein each of the objects is gripped by activating one or more of the suction elements and released by deactivating one or more of the suction elements. [24] System according to claim 15, wherein a configuration parameter indicating whether the objects available for grasping all have the same weight is defined before grasping the number of objects.

Citation Information

Patent Citations

  • 63/715,043