WO2009020600A1 - Force controlled robots - Google Patents

Force controlled robots Download PDF

Info

Publication number
WO2009020600A1
WO2009020600A1 PCT/US2008/009412 US2008009412W WO2009020600A1 WO 2009020600 A1 WO2009020600 A1 WO 2009020600A1 US 2008009412 W US2008009412 W US 2008009412W WO 2009020600 A1 WO2009020600 A1 WO 2009020600A1
Authority
WO
WIPO (PCT)
Prior art keywords
force
robot
force sensor
force control
control
Prior art date
Application number
PCT/US2008/009412
Other languages
French (fr)
Inventor
Jianjum Wang
Jianmin He
Mats Isaksson
Tomas Groth
Hui Zhang
Original Assignee
Abb Research Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Abb Research Ltd. filed Critical Abb Research Ltd.
Publication of WO2009020600A1 publication Critical patent/WO2009020600A1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39319Force control, force as reference, active compliance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40287Workpiece manipulator and tool manipulator cooperate

Definitions

  • This invention relates to force controlled robots and more particularly to the setup of such robots .
  • a force-controlled robot opens a new horizon of applications as a result of its controlled contact with the working environment.
  • a force-controlled robot has a force sensor and a force controller as compared to a position-controlled robot which does not have these elements.
  • the force sensor provides the measurement of the contact force between a mechanical unit and its interacting environment. The measured force is input into the force controller to change the motion of a mechanical unit in order to achieve a desired contact force.
  • a force control setup involves two mechanical units, namely the force sensor mounting unit where the force sensor is mounted, and the force-controlled unit on which the force control action is exerted.
  • mechanical unit as used herein has a rather broad meaning as it includes a multi-axis robot, single axis mechanism, conveyor, stationary object (world frame), and other mechanisms.
  • a force-controlled unit must be a drivable and controllable mechanism such as a multiple-axis robot and external axis, while the force sensor mounting unit can be anything.
  • Robot 11 has a faceplate 12, a force sensor 13 mounted on the wrist 11a of robot 11 and an end effector lib that, as is shown in Fig. 1, holds either the tool 14 that will perform work on a work object located elsewhere or the work object 14 that will be worked on by a tool located elsewhere.
  • tool as used herein means, without limitation, a conventional tool such as a grinding or deburring tool that is to perform work on the work object located elsewhere or a work object which is to be assembled with or used in the assembly of the work object located elsewhere.
  • the conventional setup further includes a controller 10 which contains the force controller and the software program which is used to control the motion of the robot in response to among other things an input from force sensor 13.
  • controller 10 is connected by cable 15 to the force sensor 13 and to the robot 11 by drive and measurement cable 16. Therefore as is shown in Fig. 1, the robot 11 is subject to force control action, that is, its motion will be altered in response to the measured force.
  • the software program can, as is described above, be resident in controller 10 or may be on a suitable media such as a CD-ROM or flash drive in a form that can be loaded into the controller 10 for execution.
  • the software program may be downloaded into the controller 10 by well known means from the same site where controller 10 is located or from another site that is remote from the site where controller 10 is located.
  • the software program may be installed or loaded into a computing device (not shown in Fig. 1) which is connected to controller 10 to send commands to the controller 10.
  • Fig. 1 While the conventional setup shown in Fig. 1 has its advantages such as compactness and relative closeness it lacks flexibility and suffers performance constraints. For each application at hand, a new setup should be pursued when the conventional one is inadequate in terms of cost and performance.
  • a system has : a robot having one object; a mechanical unit external to the robot having another object; a force sensor associated with either the robot or the mechanical unit; and a controller apparatus for providing force control in response to a signal from the force sensor when the one object comes into contact with the another object, the force control applied to the robot when the force sensor is associated with the mechanical unit and applied to the mechanical unit when the force sensor is associated with the robot.
  • a system includes: a robot carrying a first object; a mechanical unit carrying a second object, the mechanical unit being external to the robot and movable along a single axis; a force sensor positioned between either the robot and the first object or the mechanical unit and the second object; and a controller apparatus for providing force control in response to a signal from the force sensor when the first object contacts the second object, wherein the force control is applied to the robot if the force sensor is positioned between the mechanical unit and the second object and the force control is applied to the mechanical unit if the force sensor positioned between the robot and the first object.
  • a system includes: a first six axis robot carrying a first object; a second six axis robot carrying a second object; a force sensor associated with either the first robot or the second robot; and a controller apparatus for providing force control in response to a signal from the force sensor when the first object contacts the second object, wherein the force control is applied to the first robot if the force sensor is associated with the second robot and the force control is applied to the second robot if the force sensor is associated with the first robot.
  • Fig. 1 shows a prior art setup for a robot with force control .
  • Figs . 2 to 5 show alternative embodiments for the force control setup of the present invention.
  • Figure 6 shows a general control flow of a force controlled robot system describing how the motion of the force controlled unit is altered in order to maintain the desired contact force.
  • Fig. 7A shows the flow control for the prior art setup shown in Fig. 1.
  • Fig. 7B shows the gravity compensation in that setup and
  • Fig. 7C shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
  • Fig. 8A shows the flow control for the embodiment shown in Fig. 2.
  • Fig. 8B shows the gravity compensation in that setup and
  • Fig. 8C shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
  • Fig. 9A shows the flow control for the embodiment shown in Fig. 3.
  • Fig. 9B shows the gravity compensation in that setup and
  • Fig. 9C shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
  • Fig. 1OA shows the flow control for the embodiment shown in Fig. 4.
  • Fig. 1OB shows the gravity compensation in that setup and
  • Fig. 1OC shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
  • Fig. HA shows the flow control for the embodiment shown in Fig. 5.
  • Fig. HB shows the gravity compensation in that setup and
  • Fig. HC shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
  • each of Figs. 2-5 shows an embodiment for the force control setup of the present invention.
  • each of those embodiments includes a controller 10 which, as in the conventional setup in Fig. 1, contains the force controller and the software program which is used to control the motion of the robot in response to among other things an input from force sensor 13.
  • the software program can, as is described above, be resident in controller 10 or may be on a suitable media such as a CD-ROM or flash drive in a form that can be loaded into the controller 10 for execution.
  • the software program may be downloaded into the controller 10 by well known means from the same site where controller 10 is located or from another site that is remote from the site where controller 10 is located.
  • the software program may be installed or loaded into a computing device (not shown in Figs. 2-5) which is connected to controller 10 to send commands to the controller 10.
  • the software program may include the software needed for one or more of the embodiments shown in Figs. 2 to 5 and if it does will allow the user to, in a manner well known to those of ordinary skill in the art, select the software to be executed for the embodiment of the present invention to be implemented by the user.
  • the present invention may take the form of a computer program product on a tangible computer-usable or computer-readable medium having computer-usable program code embodied in the medium.
  • the tangible computer-usable or computer-readable medium may be any tangible medium such as by way of example but without limitation, a portable computer diskette, a flash drive, a hard disk, a random access memory (RAM) , a read-only memory (ROM) , an erasable programmable read-only memory (EPROM or Flash memory) , a portable compact disc read-only memory (CD- ROM) , an optical storage device, or a magnetic storage device.
  • Computer program code for carrying out operations of the present invention may be written in an object oriented programming language such as Java, Smalltalk, C++ or the like, or may also be written in conventional procedural programming languages, such as the "C" programming language.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computer through a local area network (LAN) or a wide area network (WAN) , or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider) .
  • LAN local area network
  • WAN wide area network
  • Internet Service Provider for example, AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
  • Fig. 2 there is shown one example of a new setup where both the force sensor 13 and object 17 are stationary because they are, for example, sitting on a table 19 and are not, as is shown in Fig. 1, mounted on the robot 11.
  • the controller 10 receives the signal from force sensor 13 through force sensor cable 15 and is connected to the robot 11 by drive and measurement cable 16.
  • the benefit of the setup of Fig. 2 as compared to the setup of Fig. 1 is simple and accurate gravity and inertial compensation, as the gravity components of the sensor payload are constant instead of varying with the robot configuration.
  • the object 17 may either be an object to be worked on by a tool 14 ⁇ held by the robot 11 or a tool that performs work on an object that is held by the robot 11.
  • the external axis 18 may for example be a conveyor or some other device which is capable of motion.
  • Figs. 3 and 4 represent three cases. Cases 1 and 2 are both shown in Fig. 3 where for case 1 the force controlled unit is the robot 11 and the force sensor 13 is mounted on the external axis 18; and for case 2 the force controlled unit is the external axis 18 and the force sensor 13 is also mounted on the external axis 18. In case 3, which is shown in Fig. 4, the force controlled unit is the external axis 18 and the force sensor 13 is mounted on the robot 11.
  • the controller 10 receives the signal from force sensor 13 through force sensor cable 15 and is connected to the robot 11 and external axis 18 by drive and measurement cable 16.
  • an external axis 18 is more responsive to the motion change command from the robot controller 10 due to the smaller inertia. This setup is very beneficial for using the robot in a grinding application where small and rapidly changing contact force is to be controlled.
  • robots such as robot A 11 and robot B 20 as shown in Fig. 5.
  • the force sensor 13 is mounted on robot A 11, but robot B 20 is subject to the force control action.
  • both robots 11 and 20 are connected to controller 10 by an associated drive and measurement cable 16 and the end effector lib of robot 11 either holds the tool or work object 14 while the end effector 20a of robot 20 either holds the work object 17 when the end effector lib of robot 11 holds the tool 14 or the tool 17 when the end effector lib of robot 11 holds the work object 14.
  • Figure 6 shows a general control flow of a force controlled system describing how the motion of the force controlled unit 200 is altered in order to maintain the desired contact force.
  • the force controller module 100 computes the change of motion reference command ⁇ rfrom the difference between the desired ( F dei ) and measured contact force ( F comacl ) .
  • the modified motion reference (f + Ar) is then sent to force controlled unit 200 and affects its motion v .
  • the computing algorithm in force controller module 100 can be varied.
  • the commonly used computing algorithms in module 100 include but are not limited to damping control, admittance control, hybrid position and force control.
  • the force sensor 13 As the motion of the force controlled unit 200 is changed, its interaction force with the contacting environment is changed accordingly.
  • the measurement of the interaction force is performed by the force sensor 13, which as shown in Figs. 2, 3 (case 1), 4 and 5, can be mounted on a mechanical unit 300 different from the force controlled unit 200.
  • This mounting of the force sensor 13 on a mechanical unit 300 which is different from unit 200 is possible because the interaction force is mutual according to Newton's third law.
  • a force signal processing module 400 is used to perform the necessary computations, which include for example, low-pass filtering, gravity and inertial compensation, as well as transformation from one point to the other.
  • Figure 6 can be applied to the various setups such as those shown in Figures 1-5.
  • the difference in choosing force controlled unit 200 and force sensor mounting unit 300 for the location of force sensor 13 affects the implementation of force controller module 100 and force signal processing module 400.
  • the tool 14 is mounted close to the force sensor 13 and the desired contact force is specified in the coordinate system of the work object.
  • the control flow is as is shown in Figure 7A. Because the force sensor 13 is mounted on the robot 11, the payload gravity force will change at different robot configurations. As a result, the gravity compensation in the force signal processing module 400 is complex. As shown in Figure 7B, load identification must be performed first so that the mass and the center of gravity of the payload are known for the gravity force calculation. The gravity force is calculated at the current robot configuration from the known payload mass and center of gravity. The calculated gravity force is deducted from the force center measurement to obtain the gravity compensation. The transformation of the measured force from the force sensor coordinate system 30 to the work object coordinate system 32 is shown in Figure 7C. In this figure, the transformation from the force sensor coordinate system 30 to the work object coordinate system 32 is divided into steps.
  • Each step is represented by a curved arrow 34a to 34d in the figure, and should be either known or be easily calculated or calibrated by one of ordinary skill in the art.
  • the position and orientation of the robot face plate coordinate system 36 relative to the robot base coordinate system 38 is well known as forward kinematics and is calculated as the function of the robot joint angles, while the position and orientation of the force sensor coordinate system 30 is commonly obtained through measurement using simple tools such as measuring tape or gauges.
  • the transformation of the force measurement F meas from the force sensor coordinate system 30 to the work object coordinate system 32 follows the curved arrows 34a to 34d in a counterclockwise direction.
  • F meas is first transformed, as is shown by the arrow 34a, to the robot faceplate coordinate system 36, then, as is shown by the curved arrow 34b, to the robot base coordinate system 38, and as is shown by the curved arrow 34c to the world coordinate system 40 before being transformed, as is shown by the curved arrow 34d, to the work object coordinate system 32.
  • control flow Figure 8A is very similar to the control flow shown in Fig. 7A for the conventional setup.
  • the gravity compensation procedure as is shown in Fig. 8B, is much easier for the setup of Fig. 2 as compared to the gravity compensation procedure shown in Fig. 7B for the setup of Fig. 1 because the force sensor 13 never changes its orientation.
  • the force sensor coordinate system 30 is first transformed into the face plate coordinate system 44a of robot A 11 and then into the base coordinate system 44b of that robot. Then the transformation is to the world coordinate system 40 and from there first to the base coordinate system 46a of robot B 20 and then to the faceplate coordinate system 46b of that robot before the final transformation to the work object coordinate system 32.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

Various arrangements for force control and robots are described. In one arrangement, the force sensor and the object are both stationary. In another arrangement which represents two cases, the object and the force sensor are both on an external axis and in one case the force controlled unit is the robot and in the case the force controlled unit is the external axis. In yet another arrangement in which the object is on the external axis, the external axis is the force controlled unit is the external axis and the force sensor is on the robot. In a further arrangement, there are two robots and the force is mounted on one and the other is subjected to force control. The object can be either the tool or the object to be worked on or the object to be assembled with or used in the assembly of another object.

Description

Force Controlled Robots
1. Field of the Invention
This invention relates to force controlled robots and more particularly to the setup of such robots .
2. Description of the Prior Art
A force-controlled robot opens a new horizon of applications as a result of its controlled contact with the working environment. A force-controlled robot has a force sensor and a force controller as compared to a position-controlled robot which does not have these elements. Function wise, the force sensor provides the measurement of the contact force between a mechanical unit and its interacting environment. The measured force is input into the force controller to change the motion of a mechanical unit in order to achieve a desired contact force.
As can be appreciated, a force control setup involves two mechanical units, namely the force sensor mounting unit where the force sensor is mounted, and the force-controlled unit on which the force control action is exerted. Note that the terminology "mechanical unit" as used herein has a rather broad meaning as it includes a multi-axis robot, single axis mechanism, conveyor, stationary object (world frame), and other mechanisms. As can further be appreciated, a force-controlled unit must be a drivable and controllable mechanism such as a multiple-axis robot and external axis, while the force sensor mounting unit can be anything.
Referring now to Fig. 1, there is shown a conventional setup for a force controlled robot 11. Robot 11 has a faceplate 12, a force sensor 13 mounted on the wrist 11a of robot 11 and an end effector lib that, as is shown in Fig. 1, holds either the tool 14 that will perform work on a work object located elsewhere or the work object 14 that will be worked on by a tool located elsewhere. The term "tool" as used herein means, without limitation, a conventional tool such as a grinding or deburring tool that is to perform work on the work object located elsewhere or a work object which is to be assembled with or used in the assembly of the work object located elsewhere.
The conventional setup further includes a controller 10 which contains the force controller and the software program which is used to control the motion of the robot in response to among other things an input from force sensor 13. To that end, controller 10 is connected by cable 15 to the force sensor 13 and to the robot 11 by drive and measurement cable 16. Therefore as is shown in Fig. 1, the robot 11 is subject to force control action, that is, its motion will be altered in response to the measured force. As is well known, the software program can, as is described above, be resident in controller 10 or may be on a suitable media such as a CD-ROM or flash drive in a form that can be loaded into the controller 10 for execution. Alternatively, the software program may be downloaded into the controller 10 by well known means from the same site where controller 10 is located or from another site that is remote from the site where controller 10 is located. As another alternative, the software program may be installed or loaded into a computing device (not shown in Fig. 1) which is connected to controller 10 to send commands to the controller 10.
While the conventional setup shown in Fig. 1 has its advantages such as compactness and relative closeness it lacks flexibility and suffers performance constraints. For each application at hand, a new setup should be pursued when the conventional one is inadequate in terms of cost and performance.
Summary of the Invention
According to one aspect of the present invention, a system has : a robot having one object; a mechanical unit external to the robot having another object; a force sensor associated with either the robot or the mechanical unit; and a controller apparatus for providing force control in response to a signal from the force sensor when the one object comes into contact with the another object, the force control applied to the robot when the force sensor is associated with the mechanical unit and applied to the mechanical unit when the force sensor is associated with the robot.
According to another aspect of the present invention, a system includes: a robot carrying a first object; a mechanical unit carrying a second object, the mechanical unit being external to the robot and movable along a single axis; a force sensor positioned between either the robot and the first object or the mechanical unit and the second object; and a controller apparatus for providing force control in response to a signal from the force sensor when the first object contacts the second object, wherein the force control is applied to the robot if the force sensor is positioned between the mechanical unit and the second object and the force control is applied to the mechanical unit if the force sensor positioned between the robot and the first object.
According to still another aspect of the present invention, a system includes: a first six axis robot carrying a first object; a second six axis robot carrying a second object; a force sensor associated with either the first robot or the second robot; and a controller apparatus for providing force control in response to a signal from the force sensor when the first object contacts the second object, wherein the force control is applied to the first robot if the force sensor is associated with the second robot and the force control is applied to the second robot if the force sensor is associated with the first robot.
Description of the Drawing
Fig. 1 shows a prior art setup for a robot with force control .
Figs . 2 to 5 show alternative embodiments for the force control setup of the present invention.
Figure 6 shows a general control flow of a force controlled robot system describing how the motion of the force controlled unit is altered in order to maintain the desired contact force.
Fig. 7A shows the flow control for the prior art setup shown in Fig. 1. Fig. 7B shows the gravity compensation in that setup and Fig. 7C shows the transform from the sensor coordinate system to the work object coordinate system in that setup. Fig. 8A shows the flow control for the embodiment shown in Fig. 2. Fig. 8B shows the gravity compensation in that setup and Fig. 8C shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
Fig. 9A shows the flow control for the embodiment shown in Fig. 3. Fig. 9B shows the gravity compensation in that setup and Fig. 9C shows the transform from the sensor coordinate system to the work object coordinate system in that setup. Fig. 1OA shows the flow control for the embodiment shown in Fig. 4. Fig. 1OB shows the gravity compensation in that setup and Fig. 1OC shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
Fig. HA shows the flow control for the embodiment shown in Fig. 5. Fig. HB shows the gravity compensation in that setup and Fig. HC shows the transform from the sensor coordinate system to the work object coordinate system in that setup.
Detailed Description
Each of Figs. 2-5 shows an embodiment for the force control setup of the present invention. As is shown in each of those figures, each of those embodiments includes a controller 10 which, as in the conventional setup in Fig. 1, contains the force controller and the software program which is used to control the motion of the robot in response to among other things an input from force sensor 13. As was described for the conventional setup of Fig. 1, the software program can, as is described above, be resident in controller 10 or may be on a suitable media such as a CD-ROM or flash drive in a form that can be loaded into the controller 10 for execution.
Alternatively, the software program may be downloaded into the controller 10 by well known means from the same site where controller 10 is located or from another site that is remote from the site where controller 10 is located. As another alternative, the software program may be installed or loaded into a computing device (not shown in Figs. 2-5) which is connected to controller 10 to send commands to the controller 10. Further the software program may include the software needed for one or more of the embodiments shown in Figs. 2 to 5 and if it does will allow the user to, in a manner well known to those of ordinary skill in the art, select the software to be executed for the embodiment of the present invention to be implemented by the user.
As can be appreciated by one of ordinary skill in the art, the present invention may take the form of a computer program product on a tangible computer-usable or computer-readable medium having computer-usable program code embodied in the medium. The tangible computer-usable or computer-readable medium may be any tangible medium such as by way of example but without limitation, a portable computer diskette, a flash drive, a hard disk, a random access memory (RAM) , a read-only memory (ROM) , an erasable programmable read-only memory (EPROM or Flash memory) , a portable compact disc read-only memory (CD- ROM) , an optical storage device, or a magnetic storage device.
Computer program code for carrying out operations of the present invention may be written in an object oriented programming language such as Java, Smalltalk, C++ or the like, or may also be written in conventional procedural programming languages, such as the "C" programming language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through a local area network (LAN) or a wide area network (WAN) , or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider) .
Referring now to Fig. 2, there is shown one example of a new setup where both the force sensor 13 and object 17 are stationary because they are, for example, sitting on a table 19 and are not, as is shown in Fig. 1, mounted on the robot 11. The controller 10 receives the signal from force sensor 13 through force sensor cable 15 and is connected to the robot 11 by drive and measurement cable 16. The benefit of the setup of Fig. 2 as compared to the setup of Fig. 1 is simple and accurate gravity and inertial compensation, as the gravity components of the sensor payload are constant instead of varying with the robot configuration. As can be appreciated, the object 17 may either be an object to be worked on by a tool 14 held by the robot 11 or a tool that performs work on an object that is held by the robot 11.
Referring now to Figs. 3 and 4, there are shown two embodiments of another setup where in both figures the object 17 is on an external axis 18. The external axis 18 may for example be a conveyor or some other device which is capable of motion.
The embodiments shown in Figs. 3 and 4 represent three cases. Cases 1 and 2 are both shown in Fig. 3 where for case 1 the force controlled unit is the robot 11 and the force sensor 13 is mounted on the external axis 18; and for case 2 the force controlled unit is the external axis 18 and the force sensor 13 is also mounted on the external axis 18. In case 3, which is shown in Fig. 4, the force controlled unit is the external axis 18 and the force sensor 13 is mounted on the robot 11.
In Figs. 3 and 4, the controller 10 receives the signal from force sensor 13 through force sensor cable 15 and is connected to the robot 11 and external axis 18 by drive and measurement cable 16.
Unlike a 6-axis robot, an external axis 18 is more responsive to the motion change command from the robot controller 10 due to the smaller inertia. This setup is very beneficial for using the robot in a grinding application where small and rapidly changing contact force is to be controlled.
In yet another setup, there are two robots such as robot A 11 and robot B 20 as shown in Fig. 5. In this setup, the force sensor 13 is mounted on robot A 11, but robot B 20 is subject to the force control action. As is shown in Fig. 5, both robots 11 and 20 are connected to controller 10 by an associated drive and measurement cable 16 and the end effector lib of robot 11 either holds the tool or work object 14 while the end effector 20a of robot 20 either holds the work object 17 when the end effector lib of robot 11 holds the tool 14 or the tool 17 when the end effector lib of robot 11 holds the work object 14.
Figure 6 shows a general control flow of a force controlled system describing how the motion of the force controlled unit 200 is altered in order to maintain the desired contact force. The force controller module 100 computes the change of motion reference command Δrfrom the difference between the desired ( Fdei ) and measured contact force ( Fcomacl ) . The modified motion reference (f + Ar) is then sent to force controlled unit 200 and affects its motion v . The computing algorithm in force controller module 100 can be varied. The commonly used computing algorithms in module 100 include but are not limited to damping control, admittance control, hybrid position and force control.
As the motion of the force controlled unit 200 is changed, its interaction force with the contacting environment is changed accordingly. The measurement of the interaction force is performed by the force sensor 13, which as shown in Figs. 2, 3 (case 1), 4 and 5, can be mounted on a mechanical unit 300 different from the force controlled unit 200. This mounting of the force sensor 13 on a mechanical unit 300 which is different from unit 200 is possible because the interaction force is mutual according to Newton's third law.
Most of the time the measurement Fmeas from the force sensor 13 is contaminated by the gravitational and inertial force of the object mounting on the force sensor 13. In addition, the action point of the measured force is often different from that of the desired force Fdes . To obtain the actual contact force Fcomaa at the same place as the desired contact force, a force signal processing module 400 is used to perform the necessary computations, which include for example, low-pass filtering, gravity and inertial compensation, as well as transformation from one point to the other.
Figure 6 can be applied to the various setups such as those shown in Figures 1-5. The difference in choosing force controlled unit 200 and force sensor mounting unit 300 for the location of force sensor 13 affects the implementation of force controller module 100 and force signal processing module 400.
To illustrate the difference, an exemplary implementation of Figure 6 is selected where a simple
J-. / damping controller of v = yβ is used in force controller module 100. In this implementation, the tool 14 is mounted close to the force sensor 13 and the desired contact force is specified in the coordinate system of the work object.
For the conventional setup as shown in Figure 1, the control flow is as is shown in Figure 7A. Because the force sensor 13 is mounted on the robot 11, the payload gravity force will change at different robot configurations. As a result, the gravity compensation in the force signal processing module 400 is complex. As shown in Figure 7B, load identification must be performed first so that the mass and the center of gravity of the payload are known for the gravity force calculation. The gravity force is calculated at the current robot configuration from the known payload mass and center of gravity. The calculated gravity force is deducted from the force center measurement to obtain the gravity compensation. The transformation of the measured force from the force sensor coordinate system 30 to the work object coordinate system 32 is shown in Figure 7C. In this figure, the transformation from the force sensor coordinate system 30 to the work object coordinate system 32 is divided into steps. Each step is represented by a curved arrow 34a to 34d in the figure, and should be either known or be easily calculated or calibrated by one of ordinary skill in the art. For example, the position and orientation of the robot face plate coordinate system 36 relative to the robot base coordinate system 38 is well known as forward kinematics and is calculated as the function of the robot joint angles, while the position and orientation of the force sensor coordinate system 30 is commonly obtained through measurement using simple tools such as measuring tape or gauges. The transformation of the force measurement Fmeas from the force sensor coordinate system 30 to the work object coordinate system 32 follows the curved arrows 34a to 34d in a counterclockwise direction. That is, Fmeas is first transformed, as is shown by the arrow 34a, to the robot faceplate coordinate system 36, then, as is shown by the curved arrow 34b, to the robot base coordinate system 38, and as is shown by the curved arrow 34c to the world coordinate system 40 before being transformed, as is shown by the curved arrow 34d, to the work object coordinate system 32.
For the setup shown in Figure 2 where force sensor 13 is mounted on a stationary object 17 and the robot 11 is subject to force control action, the control flow Figure 8A is very similar to the control flow shown in Fig. 7A for the conventional setup. The gravity compensation procedure, as is shown in Fig. 8B, is much easier for the setup of Fig. 2 as compared to the gravity compensation procedure shown in Fig. 7B for the setup of Fig. 1 because the force sensor 13 never changes its orientation.
All that is needed to obtain the actual contact force is to reset the sensor 13 before contact. This is equivalent as is shown in Fig. 8B to recording the initial value of the force sensor 13 before contact and then subtracting it during contact. The transformation of force is very simple because only two coordinate systems, force sensor coordinate system 30 and work object coordinate system 32, are involved, as shown in Figure 8C.
For the setup shown in Figure 3 , where the force sensor 13 is mounted on an external axis 18 and either the robot or the external axis is subject to force control action, the control flow is shown in Figure 9A. Depending on the type of external axis 18, the gravity compensation can either look like the compensation shown in Figure 7B in the case of a rotary axis, or is as simple as that shown in Figure 8B in case of a linear axis. The latter gravity compensation is shown in Fig. 9B. The transformation procedure (Figure 9C) is exactly the same as that shown in Figure 8C and described above.
For the setup shown in Figure 4 where the force sensor 13 is mounted on the robot 11 and the external axis 18 is subject to force control action, the control flow is shown in Figure 1OA. Unlike robot 11, the external axis 18 has only one drivable axis, and the change of motion can only be in that axis . The change in the reference command from the vector form Δv shown in Figs. 7A, 8A and 9A to scalar form Δv in Figure 1OA indicates the difference between those embodiments. Because force sensor 13 is mounted on the robot 11, the gravity compensation procedure, as is shown in Fig. 1OB, is the same as in the conventional setup shown in Fig. 1. Compared to Figure 7C, the transformation diagram shown in Figure 1OC has an extra coordinate system involved, which is the external axis base coordinate system 42.
For the setup shown in Figure 5 where the force sensor mounting unit and force controlled unit are both robots but different from each other, the control flow and the gravity compensation procedure as shown in Figs . HA and B, respectively are similar to those in the conventional setup. As is shown in Fig. HC, transformation of force measurement is a little more complex than all of the other setups since the kinematics of the two robots 11 and 20 are involved.
As is shown in Fig. HC by the curved arrows 34a to 34f, the force sensor coordinate system 30 is first transformed into the face plate coordinate system 44a of robot A 11 and then into the base coordinate system 44b of that robot. Then the transformation is to the world coordinate system 40 and from there first to the base coordinate system 46a of robot B 20 and then to the faceplate coordinate system 46b of that robot before the final transformation to the work object coordinate system 32.
It is to be understood that the description of the foregoing exemplary embodiment ( s ) is (are) intended to be only illustrative, rather than exhaustive, of the present invention. Those of ordinary skill will be able to make certain additions, deletions, and/or modifications to the embodiment ( s ) of the disclosed subject matter without departing from the spirit of the invention or its scope, as defined by the appended claims.

Claims

What is claimed is :
1. A system comprising: a robot carrying a first object; a mechanical unit external to said robot carrying a second object; a force sensor associated with either said robot or said mechanical unit; and a controller apparatus for providing force control in response to a signal from said force sensor when said first object contacts said second object, wherein said force control is applied to said robot if said force sensor is associated with said mechanical unit and said force control is applied to said mechanical unit if said force sensor is associated with said robot.
2. The system of claim 1 wherein said mechanical unit is movable when said force control is applied to said mechanical unit.
3. The system of claim 1 wherein said mechanical unit is non-movable when said force control is applied to said robot .
4. The system of claim 1 wherein said robot has an end effector and said force control provided by said controller apparatus controls the motion of said end effector when said force control is applied to said robot .
5. The system of claim 1 wherein said force sensor provides a signal representative of the force imparted when said first object comes into contact with said second object and said controller apparatus provides said force control in response to said signal.
6. The system of claim 5 wherein said controller apparatus compensates said imparted force representative signal for predetermined errors therein.
7. The system of claim 4 wherein said force sensor provides a signal representative of the force imparted when said first object comes into contact with said second object and said controller apparatus provides said force control to control the motion of said end effector in response to said signal.
8. A system comprising: a robot carrying a first object; a mechanical unit carrying a second object, said mechanical unit being external to said robot and movable along a single axis; a force sensor positioned between either said robot and said first object or said mechanical unit and said second object; and a controller apparatus for providing force control in response to a signal from said force sensor when said first object contacts said second object, wherein said force control is applied to said robot if said force sensor is positioned between said mechanical unit and said second object and said force control is applied to said mechanical unit if said force sensor positioned between said robot and said first object.
9. The system according to claim 8 wherein said first object is a tool and said second object is an object to be worked.
10. The system according to claim 8 wherein said first object is an object to be worked and said second object is a tool.
11. The system of claim 8 wherein said robot includes an end effector and said force control provided by said controller apparatus controls the motion of said end effector when said force control is applied to said robot .
12. The system of claim 8 wherein said force sensor provides a signal representative of the force imparted when said first object comes into contact with said second object and said controller apparatus provides said force control in response to said signal.
13. The system of claim 12 wherein said controller apparatus compensates said signal representative of the force imparted for predetermined errors therein.
14. The system of claim 13 wherein at least one of said predetermined errors includes errors due to gravitational effects.
15. The system of claim 11 wherein said force sensor provides a signal representative of the force imparted when said first object comes into contact with said second object and said controller apparatus provides said force control to control the motion of said end effector in response to said signal.
16. A system comprising: a first six axis robot carrying a first object; a second six axis robot carrying a second object; a force sensor associated with either said first robot or said second robot; and a controller apparatus for providing force control in response to a signal from said force sensor when said first object contacts said second object, wherein said force control is applied to said first robot if said force sensor is associated with said second robot and said force control is applied to said second robot if said force sensor is associated with said first robot.
17. The system according to claim 16 wherein said first object is a tool and said second object is an object to be worked.
18. The system according to claim 16 wherein said first object is an object to be worked and said second object is a tool.
19. The system of claim 16 wherein said force sensor provides a signal representative of the force imparted when said first object comes into contact with said second object and said controller apparatus provides said force control in response to said signal.
PCT/US2008/009412 2007-08-06 2008-08-05 Force controlled robots WO2009020600A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US95409507P 2007-08-06 2007-08-06
US60/954,095 2007-08-06

Publications (1)

Publication Number Publication Date
WO2009020600A1 true WO2009020600A1 (en) 2009-02-12

Family

ID=39884391

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2008/009412 WO2009020600A1 (en) 2007-08-06 2008-08-05 Force controlled robots

Country Status (1)

Country Link
WO (1) WO2009020600A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015067680A3 (en) * 2013-11-08 2015-10-01 Kuka Systems Gmbh Sensing device and sensing method
CN106625653A (en) * 2016-05-23 2017-05-10 北京卫星环境工程研究所 Force feedback-based industrial robot auxiliary assembling and flexible docking method
CN108262766A (en) * 2018-01-03 2018-07-10 中科新松有限公司 A kind of detection device for the robot that cooperates
WO2019168563A1 (en) * 2018-02-27 2019-09-06 Siemens Aktiengesellschaft Reinforcement learning for contact-rich tasks in automation systems

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08141951A (en) * 1994-11-17 1996-06-04 Kawasaki Heavy Ind Ltd Cooperative control method of robot and cooperative control device thereof
JPH09216185A (en) * 1996-02-13 1997-08-19 Nippon Telegr & Teleph Corp <Ntt> Robot controlling method and robot system
JPH106180A (en) * 1996-06-26 1998-01-13 Toshiba Corp Work machining device
US20060048364A1 (en) * 2004-09-08 2006-03-09 Hui Zhang Robotic machining with a flexible manipulator

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08141951A (en) * 1994-11-17 1996-06-04 Kawasaki Heavy Ind Ltd Cooperative control method of robot and cooperative control device thereof
JPH09216185A (en) * 1996-02-13 1997-08-19 Nippon Telegr & Teleph Corp <Ntt> Robot controlling method and robot system
JPH106180A (en) * 1996-06-26 1998-01-13 Toshiba Corp Work machining device
US20060048364A1 (en) * 2004-09-08 2006-03-09 Hui Zhang Robotic machining with a flexible manipulator

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015067680A3 (en) * 2013-11-08 2015-10-01 Kuka Systems Gmbh Sensing device and sensing method
US9962836B2 (en) 2013-11-08 2018-05-08 Kuka Systems Gmbh Detection device and detection method
CN106625653A (en) * 2016-05-23 2017-05-10 北京卫星环境工程研究所 Force feedback-based industrial robot auxiliary assembling and flexible docking method
CN108262766A (en) * 2018-01-03 2018-07-10 中科新松有限公司 A kind of detection device for the robot that cooperates
WO2019168563A1 (en) * 2018-02-27 2019-09-06 Siemens Aktiengesellschaft Reinforcement learning for contact-rich tasks in automation systems

Similar Documents

Publication Publication Date Title
US8761932B2 (en) Automation equipment control system
US4621332A (en) Method and apparatus for controlling a robot utilizing force, position, velocity, spring constant, mass coefficient, and viscosity coefficient
JP6223640B2 (en) Calibration apparatus and robot system using the same
US9616564B2 (en) Event-based redundancy angle configuration for articulated-arm robots
EP1728600B1 (en) Controlling the trajectory of an effector
US7508155B2 (en) Controller
US20200238526A1 (en) Calibration device, calibration method, and control device
EP2404712A1 (en) A dual arm robot and a method for controlling a dual arm robot
Caccavale et al. Integration for the next generation: embedding force control into industrial robots
US20220226995A1 (en) Control of a multipurpose robot arm
Patarinski et al. Robot force control: a review
JPH09319420A (en) Assembly robot
CN111376267A (en) Industrial robot system
WO2009020600A1 (en) Force controlled robots
An Trajectory and force control of a direct drive arm
Farsoni et al. Real-time identification of robot payload using a multirate quaternion-based kalman filter and recursive total least-squares
Grunwald et al. Touch: The direct type of human interaction with a redundant service robot
JPH07198370A (en) Position detection probe of force control robot
Arteaga et al. On the robustness of force estimation methods for robot manipulators: An experimental study
CN115674188B (en) Series mechanical arm accurate compliance open-loop tracking control system based on double-path filter
Iwasaki et al. Adaptive force control for unknown environment using sliding mode controller with variable hyperplane
Maddahi et al. Testing robotic manipulators: improvement and experience
Farías et al. Influence of parallel kinematic machine dimensional tolerances on the estimation of payload inertia
Mianowski et al. Application of the RNT Robot to Milling and Polishing
Stanczyk et al. Experimental comparison of interaction control methods for a redundant telemanipulator

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08795044

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08795044

Country of ref document: EP

Kind code of ref document: A1