Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
A ROBOT ARM SYSTEM AND A METHOD FOR HANDLING AN OBJECT BY A ROBOT ARM SYSTEM DURING LEAD THROUGH PROGRAMMING
Document Type and Number:
WIPO Patent Application WO/2018/091103
Kind Code:
A1
Abstract:
A robot arm system (1) is disclosed comprising a first robot arm (3) and a second robot arm (5), and a robot controller (10), configured to allow an operator to perform lead through programming of the first robot arm. The robot controller(10)is configured to determine a weight of an object (8) to be handled by the robot arm system (1) and comparing the weight of the object with a maximum allowed handling weight for the first robot arm (3) during lead through programming. If the weight of the object exceeds the maximum allowed handling weight for the first robot arm, the robot controller is configured to provide a possibility to instruct the robot arm system (1) to simultaneously use both the first robot arm (3) and the second robot arm (5) to handle the object (8). A corresponding method is also disclosed.

Inventors:
HENRIKSSON ADAM (SE)
ARANDA MUNOZ ALVARO (SE)
VARTIAINEN ELINA (SE)
BLOM JONATAN (SE)
Application Number:
PCT/EP2016/078103
Publication Date:
May 24, 2018
Filing Date:
November 18, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ABB SCHWEIZ AG (CH)
International Classes:
B25J9/16; G05B19/423
Foreign References:
US20150104284A12015-04-16
DE102010029745A12011-12-08
JPS6334609A1988-02-15
US5336982A1994-08-09
US20050036879A12005-02-17
US20120253507A12012-10-04
Attorney, Agent or Firm:
SAVELA, Reino (SE)
Download PDF:
Claims:
Patent Claims

1 . A robot arm system (1 ) comprising

a first robot arm (3) and a second robot arm (5),

- a robot controller (10), configured to allow an operator to perform lead through

programming of the first robot arm,

wherein the robot controller (10) is configured to determine a weight of an object (8) to be handled by the robot arm system (1 ) and to compare the weight of the object with a maximum allowed handling weight for the first robot arm (3) during the lead through programming, and if the weight of the object exceeds the maximum allowed handling weight for the first robot arm, to provide a possibility to simultaneously use both the first robot arm (3) and the second robot arm (5) to handle the object (8).

2. The robot arm system according to claim 1 , wherein the robot controller (10) comprises an operator interface (12) configured to inform the operator during the lead through

programming if the weight of the object (8) exceeds the maximum allowed handling weight for the first robot arm (3).

3. The robot arm system according to claim 2, wherein the operator interface (12) is configured to present a choice to the operator during the lead through programming, said choice involving to choose to use or not to use both the first robot arm (3) and the second robot arm (5) to handle the object (8), and the robot controller being configured to act upon the choice of the operator. 4. The robot arm system according to any one of the preceding claims, wherein the robot controller (10) is configured to instruct the operator to place both the first robot arm (3) and the second robot arm (5) in a grip position for gripping the object, in order to use both robot arms to handle the object. 5. The robot arm system according to claim 4, wherein the robot controller (10) is configured to allow the operator to use lead through on either one of the first robot arm (3) and the second robot arm (5) in order to move both robot arms after gripping the object (8), and to thereby handle the object. 6. The robot arm system according to any one of the preceding claims, wherein the robot controller (10) is configured to add a maximum allowed handling weight for the second robot arm (5) to the maximum allowed handling weight for the first robot arm (3), and to thereby obtain an added maximum allowed handling weight for the robot arm system (1 ), and to compare the weight of the object (8) with the added maximum allowed handling weight, and to only provide the possibility to simultaneously use both the first robot arm (3) and the second robot arm (5) to handle the object (8) if the weight of the object does not exceed the added maximum allowed handling weight.

7. The robot arm system according to any one of the preceding claims, wherein the first robot arm (3) and the second robot arm (5) belong to a dual arm robot.

8. The robot arm system according to any one of claims 1 -6, wherein the first robot arm (3) belongs to a first robot and the second robot arm (5) belongs to a second robot.

9. A method for handling an object by a robot arm system (1 ) comprising a first robot arm (3) and a second robot arm (5), the method being performed during lead through programming of at least one of the robot arms, and the method comprising

- determining a weight of the object (8) intended to be handled, (100),

- comparing the weight of the object with a maximum allowed handling weight for the first robot arm (3), (200),

- and if the weight of the object (8) exceeds the maximum allowed handling weight for the first robot arm (3), providing a possibility to simultaneously use both the first robot arm (3) and the second robot arm (5) to handle the object, (300).

10. The method according to claim 9, comprising informing the operator if the weight of the object (8) exceeds the maximum allowed handling weight for the first robot arm (3).

1 1 . The method according to claim 9, comprising presenting a choice to the operator, said choice involving to choose to use or not to use both the first robot arm (3) and the second robot arm (5) to handle the object (8).

12. The method according to any one of claims 9-1 1 , comprising instructing an operator to place both the first robot arm (3) and the second robot arm (5) in a grip position for gripping the object (8). 13. The method according to claim 12, comprising using lead through on either robot arm (3; 5) to move both robot arms, and to thereby handle the object (8).

14. The method according to any one of claims 9-13, comprising adding a maximum allowed handling weight for the second robot arm (5) to the maximum allowed handling weight for the first robot arm (3) and thereby obtaining an added maximum allowed handling weight for the robot arm system (1 ), and comparing the weight of the object (8) with the added maximum allowed handling weight, and only providing the possibility to simultaneously use both the first robot arm (3) and the second robot arm (5) to handle the object (8) if the weight of the object does not exceed the added maximum allowed handling weight.

Description:
A ROBOT ARM SYSTEM AND A METHOD FOR HANDLING AN OBJECT BY A ROBOT ARM SYSTEM DURING LEAD THROUGH PROGRAMMING

Technical field of the invention

The present invention relates to a robot arm system comprising a first robot arm and a second robot arm, and further comprising a robot controller. The present invention also relates to a method for handling an object by a robot arm system comprising a first robot arm and a second robot arm, which method is performed during lead through programming. The present invention further relates to a robot arm control system for performing the method.

Background

Lead through programming, also called jogging, is a known method of programming an industrial robot. The robot controller of the industrial robot is set in a lead through mode that allows a human operator to move the arm of the robot, so called lead through, to different positions while at the same time creating a computer program comprising the movements, and thus programming a path for movement of the robot arm. When the operator has moved the robot arm to a certain position, there may be a task to be performed at that position, and the operator will also have the possibility to program an instruction for the task to be performed at the chosen position of the arm. Since lead through programming involves that a human operator is in physical contact with the robot, the robot itself must be set in a mode that makes it safe for cooperation and collaboration with a human operator.

Lead through programming may for example be used for programming a robot arm system comprising two robot arms in an assembly operation. In an example of an assembly operation, one robot arm picks up a first component and the other robot arm picks up a second component, and the two robot arms then cooperate to assemble the two components into an assembly. The assembly is then moved to a storage bin. In such a robot arm system it may occur that each one of the original objects has a weight that does not exceed the payload of one robot arm and can therefore each be handled by one robot arm, but the assembled object has a weight that exceeds the payload of one robot arm. Thus the assembled object cannot be handled by a single robot arm, and the human operator cannot continue the programming. The payload of a robot arm is the maximum weight that the robot arm is allowed to handle. If a tool is attached to the robot arm, then the weight of the tool must also be taken into consideration, as a weight to be handled. In order to be able to use lead through programming, the human operator must therefore check in advance that the object to be handled, an individual object or an assembled object, does not exceed the payload of the robot arm.

Generally, lead through programming involving a robot arm system comprising two robot arms often involves robot arms with a fairly limited payload. This is in particular the case if the two robot arms belong to one and the same robot, namely a dual arm robot. Dual arm robots are often fairly small and can only handle limited payloads, e.g. 500 g per arm. If the weight of the object to be handled is higher, the robot will not perform any handling the object.

It is generally known to use two robot arms that cooperate to simultaneously handle an object. From US 5336982 it is known to use two robot arms to handle an object between them and in this publication is described how the cooperation of the two robot arms is controlled during the handling of the object. Another type of application is disclosed in US 2005036879 describing a gantry robot having two robot arms suspended from a rail arrangement. The robot arms are provided with gripping tools that both can grip an object to be handled. In US

20120253507 is disclosed a robot arm system comprising a plurality of arms, each of which is provided with a gripper such as a vacuum gripper. If the control system determines that a parcel is too large or too heavy to be moved by a single gripper, then the system uses a plurality of the robotic arms to work cooperatively to lift the parcel. The robot arms can be carried by individual gantries or a single gantry can be sized to carry all of the robotic arms.

However, none of the above mentioned documents are related to lead through programming.

Summary of the invention

One object of the invention is to provide an improved and simplified method for handling an object by a robot arm system during lead through programming, and in which the robot arm system comprises a first robot arm and a second robot arm.

A further object is to provide a robot arm system in which the method can be implemented.

These objects are achieved by the robot arm system according to appended claim 1 and by the method according to appended claim 9.

The invention is based on the realization that by providing a possibility for handling an object with both arms of the robot, and introducing this possibility during lead through programming, the robot can be able to handle heavier objects.

According to a first aspect of the invention, there is provided a robot arm system comprising a first robot arm and a second robot arm, and a robot controller configured to allow an operator to perform lead through programming of the first robot arm, wherein the robot controller is configured to determine a weight of an object to be handled by the robot arm system and to compare the weight of the object with a maximum allowed handling weight for the first robot arm during lead through programming, and if the weight of the object exceeds the maximum allowed handling weight for the first robot arm, to provide a possibility to

simultaneously use both the first robot arm and the second robot arm to handle the object. The maximum allowed handling weight would usually be set in relation to the payload, such that the maximum allowed handling weight would be set to be the payload of the robot arm with deduction of the weight of the tool.

By providing this possibility to use both robot arms, the lead through programming can continue if the possibility is accepted, and it is not interrupted. Thus the programming is simplified and no time is wasted on trying to solve the problem of the object being too heavy to handle by one robot arm by itself.

The weight of the object to be handled may be determined for example by a device that weighs the object, e.g. a weight sensor, or the weight may be known in advance and stored in the robot controller.

According to one embodiment of the robot arm system, the robot controller may comprise an operator interface configured to inform the robot arm system operator during lead through programming if the weight of the object exceeds the maximum allowed handling weight for the first robot arm. This provides the advantage that the operator will know if the object is too heavy and the operator may then act upon that information. The operator interface may be incorporated into the physical robot controller or it may be a separate operator unit, e.g. a tablet computer, or a web-based interface. The operator interface may comprise components such as an input unit, an output unit, a display unit.

According to another embodiment of the robot arm system, the operator interface may be configured to present a choice to the operator during lead through programming, said choice involving to choose to use or not to use both the first robot arm and the second robot arm to handle the object, and the robot controller being configured to act upon the choice of the operator. Through this the operator can decide if both robot arms should be used or not, while possibly also taking other facts than the object's weight into consideration.

According to yet another embodiment of the robot arm system, the robot controller may be configured to instruct the operator to place both the first robot arm and the second robot arm in a grip position for gripping the object, in order to use both robot arms to handle the object. This will then make it possible to use both robot arms to handle the object.

According to a further embodiment of the robot arm system, the robot controller may be configured to allow the operator to use lead through on either one of the first robot arm and the second robot arm in order to move both robot arms after gripping the object and thereby handle the object. This will be a simplified and quick way to perform the continued lead through programming. The result is a type of master-slave arrangement of the two robot arms.

As an alternative to making the operator decide about using both robot arms to handle the object, there may already be included an automatic function in the robot controller that will instruct the operator to place also the second robot arm in a grip position for gripping the object. This can be done without even informing the operator about the excessive weight of the object. According to another embodiment of the robot arm system, the robot controller may be configured to add a maximum allowed handling weight for the second robot arm to the maximum allowed handling weight for the first robot arm and to thereby obtain an added maximum allowed handling weight for the robot arm system, and to compare the weight of the object with the added maximum allowed handling weight, and to only provide the possibility to simultaneously use both the first robot arm and the second robot arm to handle the object if the weight of the object does not exceed the added maximum allowed handling weight for the robot arms. This check that the object to be handled does not have a weight that will make it impossible to be handled even by both of the robot arms may be called for in some cases, though not always being necessary.

According to another embodiment of the robot arm system, the first robot arm and the second robot arm may belong to a dual arm robot. As mentioned, dual arm robots often have rather limited payload, and therefore the arm system according to the disclosure is particularly advantageous in connection with dual arm robots. It will be particularly advantageous to implement in connection with lead through programming of so called collaborative robots, which are robots that are designed to operate collaboratively with humans.

According to another alternative embodiment of the robot arm system, the first robot arm may belong to a first robot and the second robot arm then belongs to a second robot.

According to a second aspect of the invention, there is provided a method for handling an object by a robot arm system comprising a first robot arm and a second robot arm, the method being performed during lead through programming of at least one of the robot arms, and the method comprising determining a weight of the object intended to be handled, comparing the weight of the object with a maximum allowed handling weight for the first robot arm, and if the weight of the object exceeds the maximum allowed handling weight for the first robot arm, providing a possibility to simultaneously use both the first robot arm and the second robot arm to handle the object.

The advantages correspond to the advantages that have already been described above in relation to the robot arm system.

The method steps may be performed by a robot controller. The robot controller is configured to allow an operator to perform lead through programming.

The weight of the object to be handled may be determined for example by weighing the object, e.g. by some weight sensor means, or the weight may be known in advance and stored in a robot controller.

According to another embodiment, the method may comprise informing the operator if the weight of the object exceeds the maximum allowed handling weight for the first robot arm. According to a further embodiment, the method may comprise presenting a choice to the operator, said choice involving to choose to use or not to use both the first robot arm and the second robot arm to handle the object.

According to yet another embodiment, the method may comprise instructing the operator to place both the first robot arm and the second robot arm in a grip position for gripping the object.

The method may also comprise using lead through on either robot arm to move both robot arms and thereby handle the object.

According to an additional embodiment, the method may comprise adding a maximum allowed handling weight for the second robot arm to the maximum allowed handling weight for the first robot arm and thereby obtaining an added maximum allowed handling weight for the robot arm system, and comparing the weight of the object with the added maximum allowed handling weight, and only providing the possibility to simultaneously use both the first robot arm and the second robot arm to handle the object if the weight of the object does not exceed the added maximum allowed handling weight. All of the above described method steps offer advantages that correspond to the advantages that have already been described above in connection with the robot arm system.

All of the above method steps may be performed in a robot controller, and with an operator performing the lead through of the concerned robot arm.

Further features and advantages of the invention will also become apparent from the following detailed description of embodiments.

Brief description of the drawings

The invention will now be described in more detail, with reference being made to the enclosed schematic drawings illustrating different aspects and embodiments of the invention, given as examples only, and in which:

Fig. 1 shows a schematic illustration of an embodiment of a robot arm system, Fig. 2 shows a schematic diagram of an embodiment of a robot controller,

Fig. 3 shows a diagram of an embodiment of a method for handling an object by a robot arm system, and

Fig. 4 shows a schematic diagram of an embodiment of a robot arm control system. Elements that are the same or represent corresponding or equivalent elements have been given the same reference numbers in the different figures.

Detailed description

In Fig. 1 is schematically illustrated an embodiment of a robot arm system 1 comprising a first robot arm 3 and a second robot arm 5, and further comprising a robot controller 10 configured to allow an operator to perform lead through programming of the first robot arm. The robot controller is configured to determine a weight of an object 8 to be handled by the robot arm system 1 , and compare the weight of the object with a maximum allowed handling weight for the first robot arm 3 during lead through programming. If the weight of the object 8 exceeds the maximum allowed handling weight for the first robot arm 3, the robot controller is configured to provide a possibility to simultaneously use both the first robot arm 3 and the second robot arm 5 to handle the object 8.

Each one of the robot arms 3, 5 has an allocated payload that limits the weight that the arm is allowed to handle, for example by lifting the object and moving the object by moving the robot arm. At the end of each robot arm 3, 5 is provided a tool in the form of a gripping device 4, 6 of some type, by means of which the object can be gripped by the respective robot arm.

Generally, the weight of the tool would be included in the payload. Therefore, the maximum allowed handling weight would usually be set in relation to the payload, such that maximum allowed handling weight would be set to be the payload with deduction of the weight of the tool.

Both of the first robot arm 3 and the second robot arm 5 may be part of one and the same robot, e.g. a dual arm robot. Alternatively, the first robot arm may be part of a first robot and the second robot arm may be part of another, a second robot.

Generally, the robot controller 10 is configured to control the movements of the robot arm system 1 comprising the first robot arm 3 and the second robot arm 5. This is generally done by controlling servo motors by means of which the different parts of the robot arm are moved. In the illustrated example, the robot arms are multi-joint robot arms.

The robot controller 10 is configured to support manual programming of the robot arm system 1 by performing lead through programming of at least one of the robot arms by an operator. The robot controller can therefore be set in a lead through programming mode.

In Fig. 2 is illustrated a schematic diagram of an embodiment of a robot controller 10.

The robot controller 10 comprises a robot arm control module 20 of which an embodiment is illustrated in Fig. 4. The robot arm control module 20 comprises a data processing device 22, a program memory 24 comprising a computer program product 21 , a data memory 26, all of which work to provide the functions of the robot controller. The robot arm control module further includes a robot arm interface 28 for communication with the respective robot arm.

The robot controller is configured to determine the weight of the object 8 that the robot arms system 1 is about to handle. The weight can be determined in different ways, e.g. by weighing the object by some type of weighing device connected to the robot controller.

According to another alternative, the weight of the object can already be known in advance and be stored in the data memory. The robot controller 10 is configured to make a comparison between the weight of the object 8 to be handled and the maximum allowed handling weight for the first robot arm 3, in order to establish if the weight of the object exceeds the maximum allowed handling weight for the first robot arm or not. This is performed by the data processing device 22. The maximum allowed handling weights of the respective arms are preferably stored in advance in data memory 26. Alternatively, the payloads of the respective arms may be stored in advance in data memory 26, and in that case a calculation should be made of the respective maximum allowed handling weight taking the weight of the tool into consideration. In addition, the robot controller 10 shall provide the possibility to instruct the robot arm system 1 to simultaneously use both the first robot arm 3 and the second robot arm 5 to handle the object 8. To this end, the robot arm control module 20 comprises a robot arm interface 28.

According to one embodiment, the robot controller 10 may comprise an operator interface 12. The operator interface may be configured to inform the operator during lead through programming if the weight of the object exceeds the maximum allowed handling weight for the first robot arm. The operator interface 12 may also be configured to present a choice to the operator during lead through programming, which choice involves to choose to use or not to use both the first robot arm 3 and the second robot arm 5 to handle the object 8, if the weight of the object exceeds the maximum allowed handling weight for the first robot arm. The robot controller is configured to act upon the choice of the operator, by sending the relevant instructions to the concerned robot arm/arms.

If the operator chooses to use both robot arms to handle the object, then the robot controller 10 is configured to instruct the operator to place both the first robot arm 3 and the second robot arm 5 in a grip position for gripping the object 8, in order to use both robot arms to handle the object. This can be done via the operator interface 12.

When set in the lead through programming mode, the robot controller may further be configured for the operator to use lead through on either one of the two robot arms 3, 5, in order to move both robot arms after gripping the object and thereby handle the object. Thus is obtained a type of master-slave control between the two robot arms. Thus the operator does not have to move each robot arm by itself.

It is also conceivable that the operator is instructed to place both the first robot arm 3 and the second robot arm 5 in a grip position for gripping the object 8, in order to use both robot hands to handle the object, without being offered the choice of using both arms or not. In such a case, information about the weight of the object exceeding the maximum allowed handling weight may or may not be presented to the operator.

The robot controller may also be configured to add a maximum allowed handling weight for the second robot arm 5 to the maximum allowed handling weight for the first robot arm 3 and thereby obtaining an added maximum allowed handling weight for the robot arm system 1 . The weight of the object 8 is then compared to the added maximum allowed handling weight. The robot controller is then set up to only provide the possibility to instruct the robot arm system 1 to simultaneously use both the first robot arm 3 and the second robot arm 5 to handle the object if the weight of the object does not exceed the added maximum allowed handling weight for the robot arms 3, 5.

In Fig. 3 is schematically illustrated the basic steps of a method for handling an object 8 by a robot arm system 1 comprising a first robot arm 3 and a second robot arm 5, which method is performed during lead through programming of at least one of the robot arms. The method comprises:

- determining a weight of the object 8 intended to be handled, 100,

- comparing the weight of the object 8 with a maximum allowed handling weight for the first robot arm 3, 200,

- and if the weight of the object 8 exceeds the maximum allowed handling weight for the first robot arm 3, providing a possibility to instruct the robot arm system 1 to simultaneously use both the first robot arm 3 and the second robot arm 5 to handle the object 8, 300.

If the weight of the object does not exceed the maximum allowed handling weight, the first robot arm may go on to handle the object on its own.

In a next step, the method may comprise informing an operator if the weight of the object

8 exceeds the maximum allowed handling weight for the first robot arm 5.

In a further step the method may comprise presenting a choice to the operator, said choice involving to choose to use or not to use both the first robot arm 3 and the second robot arm 5 to handle the object 8.

According to one embodiment of the method, another step may comprise instructing an operator to place both the first robot arm 3 and the second robot arm 5 in a grip position for gripping the object 8. According to another embodiment of the method , it may comprise using lead through on either one of the robot arms 3, 5 in order to move both robot arms 3, 5 and thereby handle the object 8.

Finally, the method of any one of the embodiments described above may comprise an optional step adding a maximum allowed handling weight for the second robot arm 5 to the maximum allowed handling weight for the first robot arm 3 and thereby obtaining an added maximum allowed handling weight for the robot arm system 1 , and comparing the weight of the object 8 with the added maximum allowed handling weight, and only providing the possibility to instruct the robot arm system 1 to simultaneously use both the first robot arm 3 and the second robot arm 5 to handle the object 8 if the weight of the object does not exceed the added maximum allowed handling weight.

The method may comprise performing the method on a robot arm system comprising a first robot arm and a second robot arm belonging to a dual arm robot. As an alternative, the method may comprise performing the method on a robot arm system comprising a first robot arm belonging to a first robot and a second robot arm belonging to a second robot. The method steps may be performed by a robot controller. The robot controller is configured to allow an operator to perform lead through programming.

In Fig. 4 is illustrated a schematic diagram of a robot arm control module 20 adapted to control a robot arm system 1 comprising a first robot arm 3 and a second robot arm 5. The robot arm control module 20 comprises a data processing device 22, and a non-volatile program memory 24 having a computer program product 21 stored thereon. The computer program product comprises computer code which, when executed by the data processing device 22, causes the robot arm system 1 to perform the steps of the method described above. The program memory 24 is communicatively coupled to the data processing device 22. The robot arm control module further comprises a data memory 26, preferably a non-volatile data memory.

An example where the method may be used is given here. During lead through programming, a two arm robot is used to assemble two components, each weighing 300 g, and each robot arm of the robot having a payload of 500 g. The maximum allowed handling weight would then be set to the payload, usually with the deduction of the weight of a tool attached to the robot arm. However, the robot cannot manage to transport the resulting assembly (weighing 600 g) to the target bin, and gives an error indication to the operator. The operator interface then suggests to the operator that the robot should use both robot arms for the placing of the resulting object in the target bin. The robot has already calculated that one arm is handling 300 g and the other arm is handling 300 g, and therefore the robot is already contemplating the possibility that the weight of the resulting assembly is going to exceed the 500 g. The operator then selects to use both robot arms. In the next step the operator will continue to use lead- through to grip the resulting assembly by both robot arms and to teach the robot the location of the target bin.

The invention shall not be considered limited to the illustrated embodiments, but can be modified and altered in many ways, as realised by a person skilled in the art, without departing from the scope defined in the appended claims. Thus, the invention is not limited to two robot arms, but may also be applied to, for example, a set up with more than two robot arms.