The present invention relates to a method for estimating a wrench acting on a reference point of a robot, such as its tool center point, TCP.
In robotics, a wrench is a six-dimensional vector, of which three components describe a force acting on the reference point, and three more component define a torque which is applied to said same point.
If industrial robots are to operate in a force-controlled manner, they are typically equipped with a 6 degrees of freedom (DOF) force/torque (F/T) sensor that measures both contact forces in three translational directions and contact torques about all three axes. Based on this information, the contact forces and torques can actively be controlled in one or several directions, e.g. for assembly, grinding, or polishing. While 6 DOF F/T measurement provides high quality F/T information, the sensors that are required for the purpose are expensive.
As an alternative to measuring, contact forces and torques can also be estimated based on a dynamic model of the robot. Such estimation of forces and torques requires no force and torque sensors; the only input that is required are data that define angles of the various joints of the robot, and data on motor current or any other data from which motor torque can be calculated. Since these data are needed for controlling any movement of the robot, force-controlled or not, devices that provide them are generally present in a robot system and can be used for providing input to the dynamic model at no further cost.
The quality of the estimated forces and torques depends heavily on the precision with which the dynamic model of the robot allows to predict friction in the joints of the robot. This prediction can be difficult, since there are many parameters of the robot which have an influence on friction but which may not all be known, or which cannot be measured or predicted with the desired precision.
In an embodiment, the present invention provides a method for estimating a wrench acting on a reference point of a robot, comprising the steps of: a) measuring at least one component, but not all components, of the wrench; and b) estimating non-measured components of the wrench based on a dynamical model of the robot while taking into account the measured components.
The present invention will be described in even greater detail below based on the exemplary figures. The invention is not limited to the exemplary embodiments. Other features and advantages of various embodiments of the present invention will become apparent by reading the following detailed description with reference to the attached drawings which illustrate the following:
In an embodiment, the present invention provides a method for estimating a wrench which can achieve a high precision at low cost.
In an embodiment, the present invention provides a method comprising the steps of
The cost of implementing the method can be kept low not only because the overall number of sensors can be reduced in comparison with the 6 DOF F/T measurement approach, but also because the component(s) of the wrench that are chosen to be measured can be the one (s) which offer the best ratio of cost to efficiency.
For example, measuring a force may be preferable over measuring a torque since a precise torque measurement may require a certain distance between a force-sensitive element and an axis relative to which the torque is measured, while a force measurement does not, so that a force sensor can fit into a smaller space.
From the viewpoint of cost and efficiency, no additional sensor can improve the precision of the wrench estimation more than the first sensor does. Therefore, in a preferred embodiment, the number of measured components is 1.
Further, it is preferred that the measured component is parallel to a surface normal of a surface of the robot which extends through the reference point. In that way, a contact force between the robot and an outside object touching the surface can be measured precisely, and there is no risk of the measurement being distorted by the object slipping along the surface. Alternatively, it can be parallel to a direction in which the reference point advances when processing a workpiece, so that during processing, pressure exercised on the workpiece can be measured precisely.
There are various approaches by which the measured component(s) can be taken account of.
One of these is to estimate the non-measured components by a maximum-likelihood estimation, i.e. by finding those values of the non-measured components for which the likelihood of measuring the values of the measured components that actually were measured is highest.
Another is based on the principle of the Kalman filter. A Kalman filter can be set up having the coordinates and speeds of the robot in the various degrees of freedom as its state. The at least one measured component is input as a state measurement into said Kalman filter, so that it will be taken into account when a future state is predicted based on the measured state of the Kalman filter.
Still another approach comprises, as substeps of step b), steps of calculating a first estimate of the wrench based on the dynamical model alone, and of refining the first estimate using a maximum-aposteriori estimation.
Further features and advantages of the invention will become apparent from the following description of embodiments thereof, referring to the appended drawing.
The robot system of
Each such joint 6j comprises a motor to drive its rotation and a rotational encoder for feeding back the rotation angle of the joint 6j to controller 2.
The end effector 4 is a tool of any desired type, such as a gripper, a welding or soldering tool, a machining tool, a grinding tool etc., or, in the example of
As is well known, external forces and torques at a tool center point (TCP) 11 such as the tip of drilling head 8 induce joint load torques according to
τext=JT·f (1)
where J∈6×N
Replacing f by fm+fnm in eq. (1), we can write τext=JT (fn+fnm), and we define
τ′ext=τext−JT·fn=JT·fnm (3)
Since fnm has at least one component which is zero (corresponding to the measured component of fm), eq. (3) can be rewritten
τ′ext=JT·fnm=JTred·fnm,red (4)
where fnm,red ∈6−Nmeas is a vector that contains all non-zero elements of fnm (Nmeas being the number of measured wrench components) and JTred is a reduced version of the Jacobian transpose in which all columns corresponding to the measured components of wrench have been removed. Note that with NDoF being the number of manipulator degrees of freedom (DoF), JTred∈N
To this end, we assume that joint load estimates {circumflex over (t)}ext are available. They can e.g. be obtained from
{circumflex over (t)}ext=τmot−G(q)−τffw−{circumflex over (t)}fric (5)
where τmot are motor torques, G(q) are gravity induced torques, τffw represents dynamic feedforward and {circumflex over (t)}fric are friction torques obtained from a friction model. Furthermore, we assume
{circumflex over (t)}ext=τext+ej,ej˜N(0,Σj) (6)
i.e. the error in joint load torque estimates is normally distributed with zero mean. Assuming that motor torques and gravity compensation are known very accurately, the covariance matrix Σj can be obtained by determining the standard deviation in the friction model error for each joint (e.g. by gathering joint load torque estimates during a validation motion with no external load and a defined tool).
Considering (4) with the joint level uncertainty ej and an additional uncertainty efm˜N(0, Σfm) in the low-dimensional F/T measurements from built-in sensors such as 10, we obtain
{circumflex over (t)}ext−JfmfmT+ej−JTefm={circumflex over (τ)}′ext+ej−JTefm=JTredfnm,red (7)
With this prior information in joint space, the remaining components of wrench can be estimated by maximum likelihood estimation as
This expression can be simplified under certain conditions, e.g. if the uncertainty of the measured components is neglected, Σfm=0, equation (8) reduces to
{circumflex over (f)}nm,red=(Jred·Σj−1·JredT)−1·Jred·Σj−1{circumflex over (τ)}ext (9)
If no data on the covariance matrix Σ are available, it can be necessary to replace it by an identity matrix IN
{circumflex over (f)}nm,red=(Jred·JTred)−1·Jred{circumflex over (τ)}ext (10)
which corresponds to the standard pseudo-inverse of the Jacobian transpose.
Alternatively, qualitative information with respect to the quality of the friction model can be used. To do so, the diagonal elements corresponding to main joints can be set to larger values than the elements corresponding to wrist joints (only the ratio of the elements matters for estimation).
According to a second approach for combining measured and calculated wrench component, a first estimate of wrench is calculated without regard to measurements, using the expression
{tilde over (f)}=(J·Σj−1·JredT)−1·Jred·Σj−1{circumflex over (τ)}ext (11)
In a next step, a second estimate of wrench is calculated. In this step, all forces and torques that can directly be measured are replaced by the corresponding measurements. For non-measured directions, the original estimates are kept. This is formalized as
A covariance matrix in Cartesian space is constructed as, Σf=diag(σ2fx, σ2fy, σ2fz, σ2τx, σ2τy, σ2τz), its diagonal elements being defined as
wherein σ2sens,i, is the variance of the sensor 10 and fmax,i is the maximum expected magnitude of the force or torque in direction i.
A refined estimate of the wrench is then obtained based on the first estimate of eq. (11) by a maximum a-posteriori estimation:
{circumflex over (f)}=(J·Σj−1·JT+Σf−1)−1·(Jred·Σj−1{circumflex over (τ)}ext+Σf−1{tilde over (f)}′) (14)
According to a third approach, joint level load torque information τexe and the measurements gathered from a low-dimensional F/T sensor such as sensor 10 are combined into an augmented measurement vector y. This vector y has NDoF+Nmeas components, NDoF being the number of degrees of freedom of the robot, and Nmeas being the number of measured components of the wrench. Movement of the robot is modelled by
where p=M{dot over (q)} is the generalized momentum and
{circumflex over (τ)}=τmot−G(q)−τffw−{circumflex over (τ)}fric. The vector y is related to
by
where Csens is a vector specifying which components of wrench directly be measured. For example, if force in z-direction can be measured, the vector is Csens=[0 0 1 0 0 0].
A Kalman filter is implemented that has
as its state vector. As usual in the art, the Kalman filter predicts a future state vector xk+1 based on the current one xk using eq. 15. The prediction yields changes of both generalized momenta q and of wrench f. A discrepancies are calculated between the predicted and the measured values of the generalized momenta and of the at least one measured component fm,1 of the wrench. These discrepancies are used for updating the status vector, as is common in the art, but as the amount of data is higher than in case of conventional prediction of forces and torques based on a dynamic model of the robot alone, without having recourse to force or torque measurements, precision is improved.
According to a fourth approach, in analogy to τext=JTf+ei, ej=N(0, Σj) we define an augmented Jacobian so that
where es is the sensor measurement noise with covariance matrix Σs and the matrix csens describes the Cartesian directions (or linear combinations thereof) that are directly measured by a sensor such as 10. As in case of the first approach, a solution for eq. 17 is obtained by a maximum likelihood estimation, yielding
Eq. 18 provides estimates for all components of the wrench {dot over (f)}, including those that are directly measured using sensor 10 or the like, so that by comparing the estimated values to the measured ones, reliability of the underlying model can be judged.
While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description are to be considered illustrative or exemplary and not restrictive. It will be understood that changes and modifications may be made by those of ordinary skill within the scope of the following claims. In particular, the present invention covers further embodiments with any combination of features from different embodiments described above and below. Additionally, statements made herein characterizing the invention refer to an embodiment of the invention and not necessarily all embodiments.
The terms used in the claims should be construed to have the broadest reasonable interpretation consistent with the foregoing description. For example, the use of the article “a” or “the” in introducing an element should not be interpreted as being exclusive of a plurality of elements. Likewise, the recitation of “or” should be interpreted as being inclusive, such that the recitation of “A or B” is not exclusive of “A and B,” unless it is clear from the context or the foregoing description that only one of A and B is intended. Further, the recitation of “at least one of A, B and C” should be interpreted as one or more of a group of elements consisting of A, B and C, and should not be interpreted as requiring at least one of each of the listed elements A, B and C, regardless of whether A, B and C are related as categories or otherwise. Moreover, the recitation of “A, B and/or C” or “at least one of A, B or C” should be interpreted as including any singular entity from the listed elements, e.g., A, any subset from the listed elements, e.g., A and B, or the entire list of elements A, B and C.
This application is a continuation of International Patent Application No. PCT/EP2018/071631, filed on Aug. 9, 2018, the entire disclosure of which is hereby incorporated by reference herein.
Number | Name | Date | Kind |
---|---|---|---|
20110060460 | Oga | Mar 2011 | A1 |
20140379126 | Ueberle | Dec 2014 | A1 |
20170008171 | Iwatake | Jan 2017 | A1 |
Number | Date | Country |
---|---|---|
03117582 | May 1991 | JP |
WO-2016110320 | Jul 2016 | WO |
Entry |
---|
Wahrburg Arne et al.: “Cartesian contact force estimation for robotic manipulators using Kalman filters and the generalized Momentum” 2015 IEEE International Conference ON Automation Science and Engineering (CASE), Aug. 24, 2015, pp. 1230-1235, IEEE, Gothenburg, Sweden. |
Number | Date | Country | |
---|---|---|---|
20210162596 A1 | Jun 2021 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/EP2018/071631 | Aug 2018 | US |
Child | 17169575 | US |