Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
A DUAL ARM ROBOT AND A METHOD FOR CONTROLLING A DUAL ARM ROBOT
Document Type and Number:
WIPO Patent Application WO/2012/004017
Kind Code:
A1
Abstract:
The present invention relates to a dual arm robot comprising a body (1), a first arm (2) attached to the body in a first attachment point (3), a second arm (5) attached to the body in a second attachment point (6), and a controller (10) adapted to control the motions of the arms based on desired positions of the arms. The controller comprises a position correction module (12) for correcting the position of the second arm due to the position and movements of the first arm, and the position correction module is adapted to determine an elastic deformation in the second attachment point based on the force acting on the first attachment point and an elastic model of the body,to determine the change of the position of the second arm based on the determined elastic deformation in the second attachment point, and to correct the position of the second arm based on the determined change of the position of the second arm.

Inventors:
LUNDBERG IVAN (SE)
OLSSON TOMAS (SE)
KLINTESKOG NIKLAS (SE)
Application Number:
PCT/EP2011/055628
Publication Date:
January 12, 2012
Filing Date:
April 11, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ABB RESEARCH LTD (CH)
LUNDBERG IVAN (SE)
OLSSON TOMAS (SE)
KLINTESKOG NIKLAS (SE)
International Classes:
B25J9/16
Domestic Patent References:
WO1999028097A11999-06-10
Foreign References:
JP2006035346A2006-02-09
JP2007118177A2007-05-17
Other References:
WIMBOCK T ET AL: "Experimental study on dynamic reactionless motions with DLR's humanoid robot Justin", INTELLIGENT ROBOTS AND SYSTEMS, 2009. IROS 2009. IEEE/RSJ INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 10 October 2009 (2009-10-10), pages 5481 - 5486, XP031580886, ISBN: 978-1-4244-3803-7
MAVROIDIS C, DUBOWSKY S AND RAJU V: "End-point control of long reach manipulator systems", PROC. NINTH WORLD CONGRESS OF IFTOMM, 1995, Milano, Italy, pages 1740 - 1744, XP002606333, Retrieved from the Internet [retrieved on 20101021]
GOUO A ET AL: "Dual-arm long-reach manipulators: noncontact motion control strategies", INTELLIGENT ROBOTS AND SYSTEMS, 1998. PROCEEDINGS., 1998 IEEE/RSJ INTE RNATIONALCONFERENCE ON,, vol. 1, 13 October 1998 (1998-10-13), pages 449 - 454, XP010311274, ISBN: 978-0-7803-4465-5
JUN UEDA ET AL: "Global RAC-measure for redundancy solution of human-like manipulator mounted on flexible body", INTELLIGENT ROBOTS AND SYSTEMS, 2004. (IROS 2004). PROCEEDINGS. 2004 I EEE/RSJ INTERNATIONAL CONFERENCE ON SENDAI, JAPAN 28 SEPT.-2 OCT., 2004, PISCATAWAY, NJ, USA,IEEE, PISCATAWAY, NJ, USA LNKD- DOI:10.1109/IROS.2004.1390028, vol. 4, 28 September 2004 (2004-09-28), pages 3930 - 3935, XP010766302, ISBN: 978-0-7803-8463-7
A. GOUO, D.N. NENCHEV, K. YOSHIDA, M. UCHIYAMA, THE IEEE INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN 2008) DCC, DAEJEON, KOREA JULY 13-16, 2008, 13 July 2008 (2008-07-13)
WIMBOCK T, EXPERIMENTAL STUDY ON DYNAMIC REACTIONLESS MOTIONS WITH DLR'S HUMANOID ROBOT JUSTIN, 10 October 2009 (2009-10-10), pages 5481 - 5486
Attorney, Agent or Firm:
BJERKÉNS PATENTBYRÅ KB (Box 128, Västerås, SE)
Download PDF:
Claims:
CLAIMS

1 . A method for controlling a dual arm robot including a body (1 ), a first arm (2) attached to th e body i n a fi rst attach ment point (3), and a second arm (5) attached to the body in a second attachment point (6), the method comprising :

- determining the force in the first attachment point (3),

- determining the elastic deformation in the second attachment point based on the determined force and an elastic model of the body,

- determining the change of the position of the second arm due to the elastic deformation in the second attachment point, and

- correcting the position of the second arm based on the determined change of the position of the second arm.

2. The meth od accord i ng to cl ai m 1 , wh erei n it fu rther comprises:

- determining the force in the second attachment point (6),

- determi n i ng th e elasti c deformation i n the fi rst attach ment point (3) based on the determi ned force and said elastic model of the body,

- determining the change of the position of the first arm (2) due to the elastic deformation in the first attachment point, and

- correcting the position of the first arm based on the determined change of the position of the first arm .

3. The method according to claim 1 or 2, wherein it further comprises:

- determining the force in the attachment point (3,6) of the arm based on the cu rrent position of the arm , the mass of the arm and a dynamic model of the arm.

4. The method according to any of the previous claims, wherein said elastic model of the body includes a plurality of springs po- sitioned at a distance of each other.

5. The method according to any of the previous claims, wherein said corrected position of the arm is the tool centre point of the arm. 6. A computer program product directly loadable into the internal memory of a computer, comprising software for performi ng the steps of any of the claims 1 -5.

7. A computer-readable medi um, having a program recorded thereon , where the program is to make a computer perform the steps of any of the claims 1 -5, when said program is run on the computer.

8. A dual arm robot comprising :

- a body (1 ),

- a first arm (2) attached to the body in a first attachment poi nt (3),

- a second arm (5) attached to the body in a second attachment point (6), and

- a controller (10) adapted to control the motions of the arms based on desired positions of the arms, characterized in that the controller comprises a position correction module (12) for correcting the position of the second arm due to the position and/or movements of the first arm, and the position correction module is adapted :

- to determi ne an elastic deformation in the second attachment point based on the force acting on the first attachment point and an elastic model of the body,

- to determi ne the ch an ge of the position of th e secon d a rm based on the determined elastic deformation i n the second attachment point, and

- to correct the position of the second arm based on the determined change of the position of the second arm. 9. The dual arm robot according to claim 8, wherein the position correction module (1 2) is adapted : - to determining the force in the attachment point of the arm based on the current position of the arm, the mass of the arm and a dynamic model of the arm. 10. The dual arm robot according to claim 8 or 9, wherein the position correction module (12) is adapted:

- to determine the force in the second attachment point,

- to determine the elastic deformation in the first attachment point based on the determined force and said elastic model of the body,

- to determine the change of the position of the first arm due to the elastic deformation in the second attachment point, and

- to correct the position of the first arm based on the determined change of the position of the first arm.

Description:
A DUAL ARM ROBOT AN D A M ETHOD FOR CONTROLLIN G A DUAL ARM ROBOT

FI ELD OF TH E I NVENTI ON The present invention relates to a d ual arm robot comprisi ng a body, a first arm attached to the body in a first attachment point, a seco n d a rm attach ed to th e body in a second attachment point, and a controller adapted to control the motions of the arms based on desired positions of the arms.

The present invention also relates to a method for controlling a dual arm robot.

PRIOR ART

There exist many different types of dual arm robots. Dual arm robots are used for assembly tasks, for example, for mounti ng electronic devices, such as mobile phones. JP2006-35346 discloses a dual arm robot having two arms for performi ng cooperative operation. The two arms are attached to a common body and are moved i ndependently of each other. The patent application descri bes an assembly method i n which one arm of the dual arm robot is holding one part, and the other arm of the robot performs installation preparation of the other part.

JP20071 181 77 discloses a dual arm robot havi ng a static base part and a body to which two identical six degrees of freedom serial arms are attached . The body is able to rotate relative the static base part to which it is attached . The robot is intended for assembly tasks, which require cooperative operation of the two arms.

The requirements on accuracy in assembly tasks are very high. A typical requirement on the assembly requirement for consumer electronics, such as mobile phones, is 0, 1 mm.

All applications of mechanical and/or mechatronic nature have deflections and deformations inflicted by, for example, gravity, external loads, dynamic forces etc. Deflections and deformations may i nterfere and restrict the usage and efficiency of these systems. The control of a dual arm robot is quite challenging due to the presence of dynamic coupling between the two arms, which may cause disturbing vi brations in the arms and body of the robot. This problem is a dynamic problem, and is discussed in "Dual-Arm Long-Reach Manipulators: Noncontact Motion Control Strategies" written by A. Gouo, D. N . Nenchev, K. Yoshida, and M . Uchiyama, The I EEE I nternational Conference on I ndustrial Informatics (I N DI N 2008) DCC, Daejeon, Korea July 13-16, 2008. A control method is proposed for dual-arm long-reach manipulators, which reduces the vi brations in the body of the robot. Accordi ng to the proposed control strategy, only motions such that no vi brations in the base occur are allowed to be used . If one arm is performi ng a motion , the other arm must perform a motion that counteracts the deformation of the body of the robot. For example, the distance between the end-tip positions of the two arms holding an object is kept constant i n order ensure pure translational movements of the object, and accordingly to avoid motions which may causes vi brations. Th i s control strategy avoids deformation of the body of the robot. A disadvantage with this method is that it put restrictions the motions of the robot. This method is difficult to use if both arms are programmed to follow different paths. I n such case there is no freedom for one of the arms to perform motions that counteracts the movements of the other arm. Wimbock T et Al "Experimental study on dynamic reaction less motions with DLR's humanoid robot Justin", 1 0 October 2009, pages 5481 -5486, ISBN 978- 1 -4244-3803-7, discloses a dual arm robot and discuses sol utions to the problem of vi brations induced in the body of the robot due to motions of the arms. This document also deals with the dynamic problem.

Another problem with a dual arm robot is that it can be very difficult to program the robot. To make the programmi ng easier, it is desirable to program one arm at a time. However, in that case the influence of the position of the other arm is not considered . For example, if the robot is programmed by means of teachi ng , the position of one arm can be programmed with high accuracy, but when the robot is in operation the position and orientation of the programmed position can be changed due to dynamic and static coupling effects between the two arms.

OBJECTS AN D SUM MARY OF THE I NVENTI ON The object of the present invention is to provide a d ual arm robot having an improved accuracy.

Accordi ng to one aspect of the i nvention, this object is achieved by the method for controlling a dual arm robot as defi ned in claim 1 .

The method comprises;

- determi n ing the force i n a first attach ment point between the first arm and the body,

- determi ni ng the elastic deformati on i n a secon d attachment point between the second arm and the body, based on the determined force and an elastic model of the body,

- determin ing the change of the position of the second arm d ue to the elastic deformation i n the second attach ment point, and - correcti ng the position of the second arm based on the determined change of the position of the second arm .

The present invention suggests using position compensation for one arm based on elastic deformation of the base arising from the second arm for improving the accuracy for a dual arm robot. The present invention allows deformations of the robot body due to, for example, gravity forces acting on the arms, but compensates for the deformation so that the arm positions are not af- fected by the deformation of the body. An advantage with the present invention is that it puts no restrictions on the motions of the robot. A further advantage is that the programming of a dual arm robot is facilitated . Tests have verified that the method according to the invention provides a surprisingly increased accuracy of the dual arm robot. If the body of the dual armed robot is not stiff enough, loads from one arm may cause deflections on a mounting flange of the other arm due to the coupling between the two arms. The influ- ence between the arms may lead to bad repeatability and accordin g ly to a red u ced accu racy. Accord i n g to th e i nvention , changes of the position of one of the arms due to the position of the other arm are determi ned , and the position of the arm is corrected based on the determi ned changes. The invention pro- vides an active compensation of deflections of the body to make the position, for example the position of the TCP (Tool Centre Point), behave as the body was totally rigid . A further advantage of the invention is that stiffness issues that otherwise would have to be addressed by structural means can be accepted . Th us , the invention makes it possi ble to red uce the structural complexity of the robot, which leads to reduced costs as well as more design freedom and lower weight.

Another advantage with the present i nvention is that prog ram- mi ng of a d ua l a rmed robot i s faci l itated , si nce the invention makes it possi ble to program one arm at a time, without needing to consider the influence of the position and/or movements of the other arm.

The compensation of one arm is based on a determination of the force in the attachment point between the first arm and the body. The force can either be measured or calculated based on the position of the arm. The force in the attachment point depends on the position of the arm, i.e. a static force, as well as the movement of the arm, i.e. a dynamic force. Thus, the me- thod according to the invention can provides a static as well as a dynamic compensation of the arms.

According to an embodiment of the invention, the correction of the position is repeatably performed during operation of the ro- bot in order to ensure an improved accuracy during operation of the robot. However, it is also possible to use the invention during off-line programming assuming that loads are known. Thus, the method can be used for on-line as well as off-line compensation.

The method may further comprise determining the force in the second attachment point, determining the elastic deformation in the first attachment point based on the determined force and said elastic model of the body, determining the change of the position of the first arm due to the elastic deformation in the first attachment point, and correcting the position of the first arm based on the determined change of the position of the first arm. Accordingly, deflections of both arms are compensated. According to an embodiment of the invention, the method further comprises determining the force in the attachment point of the arm based on the current position of the arm, the mass of the arm and a dynamic model of the arm. In this embodiment the force in the attachment point is calculated based on the position of the arm. Accordingly, no additional measuring equipment, such as force sensors and stain gauges, is needed. According to an embodiment of the invention, the elastic model of the body includes a plurality of springs positioned at a distance of each other. This type of elastic model makes it easy to calculate the elastic deformation in the attachment point between the arm and the body using the determined force in the attachment point.

The corrected position of the arm can by any operating point of the arm. However, it is advantageous to correct the tool centre point (TCP) of the arm. The robot program includes the position of the TCP. The positions of the TCP defined the programmed path. Since the position of the tool centre point is a part of the programmed path it is easy to correct the tool centre point.

It is easy to realize that the method according to the invention, as defined in the appended set of method claims, is suitable for execution by a computer program having instructions corresponding to the steps in the inventive method when run on a processor unit.

According to a further aspect of the invention, the object is achieved by a computer program product directly loadable into the internal memory of a computer or a processor, comprising software code portions for performing the steps of the method according to the appended set of method claims, when the program is run on a computer. The computer program is provided either on a computer-readable medium or through a network, such as the Internet.

According to another aspect of the invention, the object is achieved by a computer readable medium having a program recorded thereon, when the program is to make a computer perform the steps of the method according to the appended set of method claims, and the program is run on the computer. According to another aspect of the invention this object is achieved by a dual arm robot as defined in claim 9.

The dual arm robot comprising:

- a body,

- a first arm attached to the body in a first attachment point,

- a second arm attached to the body in a second attachment point, and

- a controller adapted to control the motions of the arms based on desired positions of the arms,

- a controller comprising a position correction module for correcting the position of the second arm due to the position and/or movements of the first arm, and the position correction module is adapted to repeatably determine an elastic deformation in the second attachment point based on the force acting on the first attachment point and an elastic model of the body, determine the change of the position of the second arm based on the determined elastic deformation in the second attachment point, and correct the position of the second arm based on the deter- mined change of the position of the second arm.

Further developments of the device are characterized by the features of the additional claims. BRIEF DESCRIPTION OF THE DRAWINGS

The invention will now be explained more closely by the description of different embodiments of the invention and with reference to the appended figures.

Fig. 1 shows an example of a dual arm robot.

Fig. 2 shows an example of a simplified spring model set up for the body 1 of the robot shown in figure 1. shows a flow chart illustration of a method for controlling a dual arm robot accord ing to an em bodi ment of the invention . Fig . 4 shows a diagram presentation of test results for deflection of TCP on a dual arm robot using the invention and not using the invention .

DETAI LED DESCRI PTION OF PREFERRED EMBODI M ENTS OF THE I NVENTION

Figure 1 shows an example of a dual arm robot. The robot comprises a body 1 and a first arm 2 rotatably attached to the body in a first attachment poi nt 3, and a second arm 5 rotatably at- tached to the body in a second attachment point 6. I n practice, the attachment poi nt is a line of points or an area. However, to facilitate the computation of the force the attachment area is regarded as a point. The robot shown in figure 1 has a body that is also the base of the robot and is designed to bear on a ground , such as a floor or a table. The invention is also applicable for robots having a body rotatable relative a base part. Each of the arms of the robot is movable relative the body about a rotational axis. The arms 2,5 incl udes a pl urality of arm parts, which are movable relative each other about a plurality of rotational axes. The movements of the rotational axes are driven by motors mounted on each axis. Each of the arms are provided with a tool flange 7,8 designed to attach a tool , for example a gripper 9, in which an operati ng point, called TCP (tool centre point) i s defined .

The robot also i ncl udes a robot control ler 1 0 i ntegrated i n the body of the robot. The movements of the robot are controlled by the robot controller. The robot controller includes program storag e for stori ng a robot prog ram com prising a series of robot program instructions written in a robot language, and a processor adapted to execute the stored robot program instructions. The speeds and accelerations of the axes of the robot are controlled by the robot controller that generates control signals to the motors. The motors are equipped with ang le-measuring devices to provide position feedback signals. The feedback signals from the ang le-measuring devices are transferred to the robot controller 10.

The controller 10 comprises a position correction module 1 2 for correcting the positions of one of both of arms due to the posi- tions and/or movements of the other arm . The position correction mod u le is adapted to repeatably determi ne an elastic deformation in the second attachment point based on the force acti n g on the fi rst attach ment poi nt a nd a n el asti c model of the body, to determine the change of the position of the second arm based on the determi ned elastic deformation i n the second attachment point, and to correct the position of the second arm based on the determined change of the position of the second arm. Figure 3 shows a flow chart illustration of a method for controlling a dual arm robot accordi ng to an embodiment of the present invention. I n a first step 20 an elastic model of the body of the robot is determi ned . I n a preferred embodiment a simplified spring model is set up for the robot body. Figure 2 shows an ex- ample of a simplified spring model set up for the body 1 of the robot shown in figure 1 . The spring model includes a pl urality of rotational springs 14 arranged at a distance from each other. It is decided where on the body the most important bendings are situated and they are represented by springs. The springs have spring constants. The val ues of the spring constants can be determined based on measurements on the body or by FEM (Fi nite Element Model ) calculations. Alternatively, a simplified FEM model can be used. This step is carried out beforehand . The attachment poi nts 36 are theoretical points used for the calcula- tions of the deflection . Thus, other poi nts than the physical attachment poi nt can be used for the calculation. However, the attachment poi nts used for the calculations must be located close to the physical attachment poi nts.

In a second step 22, the force i n the first attachment point 3 be- tween the first arm 2 and the body 1 is determined . This can be done using a force sensor or by calculations. I n a preferred embodiment, the force is calculated based on the position of the arm and a dynamic model of the arm including the mass of the parts of the arm. The position of the arm is known by the robot controller. The determined force is a static force on the attachment poi nt due to gravity acting on the first arm as well as a dynamic force due to movements of the first arm. For example, if the attachment point is an area the average force on the area is determi ned .

In a third step 24, the elastic deformation of the body i n the second attachment poi nt 6 is estimated based on the determined force in the first attachment poi nt 3 and the elastic model of the body. The elastic deformation of the attachment point of one of the arms, is the distance the attachment point is moved in the x,y,z directions (the translational deformation) and how much the detachment poi nt is reorientated (the orientation deformation) compared to when there is no force acting on the attachment poi nt of the other arm. I n a preferred embodiment, the translational deformations Δχ, Ay, Δζ in three orthogonal direction are calculated and used for correcting the position of the arm. The orientation deformations of the body i n the attachment points are small compare to the translational deformations and therefore it is not always necessary to compensate for them . However, if very high accuracy is needed , the orientation deformations of the body can be calculated as well and compensated for.

In a forth step 26, the change of the position Ad of the second arm 5 due to the elastic deformation in the second attach ment point is determined based on the determined elastic deforma- tion. It is the change of the position of a point at or close to the end of the arm that is determined, for example a point on the tool flange 8 or the tool centre point TCP of a tool attached to the arm. The change of the position Ad and orientation of the second arm can be calculated by means of a kinematic model of the arm using the calculated translational and orientation deformation of the attachment point as an input to the kinematic model. In a fifth step 28, the position, for example the TCP, of the second arm 5 is corrected based on the determined change Adi of the position of the second arm. For example, if the TCP of the second arm is programmed to be moved to a position A, the new position of the TCP is determined as A new - + Ad-i. The TCP of the second arm is moved to the position A new> instead of to the programmed position A.

If the positions and movements of the arms relative each other as well as loads are known beforehand, the correction of the po- sition of the arm can be done during programming of the robot. Alternatively, the correction can be made during operation of the robot. In this case the steps 22-28 are repeated during operation of the robot. In some applications, the demand on accuracy is high for one of the hands and lower for the other hand. For instance, the robot holds a workpiece in one hand and performs operations, such as mounting of electronic components, on the work piece with the other hand. In such applications it is enough to only correct the position of the hand that does the mounting. However, in most applications the demand on accuracy is high for both hands.

If it is a desire to achieve high accuracy of both hands, the steps 22 - 28 are repeated for the other hand as well. In that case the method further includes determining the force in the second attachment point 6 between the second arm 5 and the body 1 , determi ni ng the elastic deformation in the fi rst attachment point 3 based on the determi ned force i n the second attachment point 6 and the elastic model of the body, determining the change of the position Ad 2 of the first arm 2 due to the elas- tic deformation in the first attachment point 3, and correcting the position of the first arm based on the determined change of the position of the first arm. For example, if the first arm is programmed to be moved to a position B, the new position of the first arm is determined as B new - B + Ad 2 .

The invention can be used to compensate for the position of the other arm, or to compensate for the position of as well as the movements of the other arm . If the compensation is to be done for the position of as well as for the movements of the other arm, the steps of blocks 22 - 28 are repeated with a high frequency during operation of the robot. If the compensation is to be done for the position only, the steps of blocks 22 - 28 can be repeated with a much lower frequency. It will be understood that each of the blocks 22 - 28 of the flow chart can be implemented by computer program instructions. The program instructions of the method according to the invention can be executed on a processor in the robot controller 10, or on a processor i n an external computer. For example, if the robot is prog rammed off-l i ne by usi ng an off-line programming tool , the program instructions of the method according to the inventi on ca n be executed on a processor on th e off-line programming tool . Figure 4 shows a diagram presentation of test results for deflection of TCP of one of the arms on a dual arm robot. Duri ng the test one of the arms was standing still in a first position, while the other arm was moved to seven different poi nts. This was first done without any compensation and was then repeated us- in g th e correction method according to the invention. The dashed line in the figure shows the deflection error (in mm) of the arm without any correction of the position of the arm, and the continuous line shows the deflection error when usi ng the method for correction according to the invention . As can be seen from the figure, the maximum error due to deflection error is re- duced from 0.4mm to 0.07mm , which is 80% reduction of the error.

The present invention is not limited to the embodiments disclosed but may be varied and modified withi n the scope of the following claims. For example, the method may also include deflection compensation for the table or the floor to which the robot is attached . The method accordi ng to the invention can also be used for dynamic damping by adding the compensation according to the i nvention i n each step i n the dynamic i nterpola- tion of the robot.