This invention relates to the field of robotics, and in particular to a method for replicating the dynamic behavior of a target robotic manipulator operating in an unknown environment by using a different robotic manipulator.
There is growing interest in employing robotic manipulators to perform assembly tasks. In particular, space robots have become a viable means to perform extravehicular robotic tasks. For instance, the Special Purpose Dextrous Manipulator (SPDM) will be used to handle various orbital replacement units (ORU) for the maintenance operations of the International Space Station.
The complexity of a robotic operation associated with a task demands verification facility on the ground to ensure that the task can be performed on orbit as intended. This requirement has motivated the development of the SPDM task verification facility at Canadian Space Agency. The verification operation on the ground is challenging as space robots are designed to work only in micro-gravity environment. In reality, thanks to weightlessness on orbit, the SPDM can handle payloads as massive as 600 kg. On the ground, however, it cannot even support itself against gravity. Although this problem could be fixed by using a system of weights and pulleys to counterbalance gravity, the weights change the robot inertia and its dynamical, behavior. Moreover, it is difficult to replicate the dynamical effects induced by the flexibility of the space robot or space structure on which the manipulator is stowed.
Simulation is another tool that can be used to validate the functionality of a space manipulator. Although the dynamics and kinematics models of space manipulators are more complex than those of terrestrial manipulators due to dynamic coupling between the manipulator and its spacecraft, the space-robot dynamics can be captured by the concept of a Virtual-Manipulator, which has a fixed base in inertial space at a point called Virtual Ground. Today, with the advent of powerful computers, faithful and real-time simulators are available that can capture dynamics of almost any type of manipulator with many degrees of freedom. However, simulation of a robot interacting with environment with a high fidelity requires accurate modeling of both the manipulator and the contact interface between the manipulator and its environment. Faithful models of space-robots are available; it is the calculation of the contact force which poses many technical difficulties associated with contact dynamics.
In the literature, many models for the contact force, consisting of normal and friction forces, have been reported. The Hertz contact theory is used to estimate local forces. However, to predict where the contact points are, calls to an optimization routine, thus demanding substantial computational effort. In particular, the complexity of contact-dynamics modelling tends to increase exponentially when the two objects have multi-point contacts. Moreover, since the SPDM is tele-operated by a human operator, the validation process requires inclusion of a real-time simulation environment since the simulation should allow human operators to drive the simulation in real-time.
The greatest challenge in the control of robots interacting with an unknown environment is to establish a desired impedance characteristic while maintaining stability of the contact between the robot and the environment. Typically, the parameters of the impedance controller, i.e., desired mass, damping and stiffness matrices, are tuned by trial-and-error to achieve stability and a satisfactory performance. This is not effective because the performance is not optimal and control parameters are valid only for a particular environment; they often need to be changed as the environment changes.
Impedance control is suitable for robotic tasks such as assembly or insertion operations to avoid jamming among parts. The impedance captures the dynamical relation between position and force of a robot's end-effector. The underlying idea of impedance control is to assign a prescribed dynamic behavior for a robot manipulator while its end-effector is interacting with the environment. It is known that any assigned impedance may not lead to contact stability even if the desired impedance per se is stable. In practice, the parameters of the impedance controller, i.e., desired mass, damping and stiffness matrices, are tuned by trial-and-error to achieve stability and a satisfactory performance. Typically, the control parameters are valid for a particular environment and they often need to be changed as the environment changes.
The impedance control of a robot to shape the robot force-response was proposed by Hogan, “Impedance Control: An approachdto manipulation”, Journal of Dynamics, Measurement, and Control, vol. 107, pp. 8-16, 1985, the contents of which are herein incorporated by reference. In his approach the force is virtually controlled by controlling position by using programmable stiffness and damping matrices in the impedance model. Analysis and general methodology for implementation of attaining the desired impedance have been the focus of many other research works. All control approaches are based on the premise that a perfect model of the manipulator and ideal source of joint torque, i.e., no actuator dynamics, are available and that the robot is rigid. Therefore, the control system can trivially assign infinite stiffness to the manipulator and then the desired impedance of the target robot can be achieved by cascading the transfer function of desired impedance model.
In practice, the robot prototype has a finite bandwidth and stiffness that impose a serious limitation on the impedance that can be attained in a stable manner. In other words, the conventional impedance control methodology does not guarantee.that a passive mechanical admittance will result from the design and hence contact instability may occur for a class of environment impedance. Also, the conventional impedance approach doesn't allow a generic desired-impedance; only the second order system of mass-spring-damper is allowed.
The invention employs an emulation technique which can replicate dynamical behavior of a robot interacting with a complex environment without actually simulating the environment. The system consists of three main functional elements: a real-time simulator capturing the dynamics of the space robot, the mock-up of the payload and its work site, and a rigid robot which handles the payload. Interconnecting the simulator and the emulating robot, the entire system works in a hardware-in-loop simulation configuration.
Accordingly one aspect of the invention provides a system for replicating the behavior of a target robotic manipulator with respect to a payload and worksite, comprising a real-time simulator capturing the dynamics of the target robot manipulator; a mock-up of said payload and worksite; and an emulating robotic manipulator for interacting with said payload and worksite; said emulating robotic manipulator being controlled by said real-time simulator in a control loop to replicate the dynamical behavior of said target robotic manipulator in its environment by matching the impedance of the emulating robotic manipulator with that of the target robotic manipulator.
In accordance with the principles of the invention the impedances of a space robot and a ground-based robot are matched as much as possible in order to replicating contact force response which would be encountered on orbit.
An important aspect of the invention is a mu-based controller for impedance control of manipulators which achieves the followings. (i) minimizes the weighted distance between the realized and the specified force transfer functions, (ii) minimizes noise sensitivity, and (iii) maintain closed-loop stability in spite of a broad variation of environment parameters (stiffness and damping). This approach allows the desired impedance in a generic form, i.e., the desired impedance to be represented by any stable transfer function. This is important for robot emulation where the desired impedance is typically more complex than the standard second order system.
In one embodiment of the invention the control methodology is implemented by the following steps:
Novel aspects of this approach are believed to include a stiff motion controller which maintains the endpoint pose of the emulating robot and that of the simulated robot; a method for expressing the unknown environment parameters in the form of a parametric uncertainty-model which is bounded and hence it is suitable for a robust control synthesis; and experimental identification procedure for the measurement of the robot impedance; and a mu-synthesis based force feedback which achieves the desired impedance and ensures contact stability for all environment impedances specified.
In accordance with the principles of the invention, the impedance of the emulator manipulator is matched with the impedance of the target manipulator. The control system can change the impendence of a manipulator to match that of a prescribed manipulator (e.g., a space robot) as much as possible while maintaining stability of the manipulator in contact with a class of unknown environments. Since the force/moment interaction of a manipulator with an environment can be captured by the impedance, the matching impedance of the two manipulators is tantamount to matching their force responses with respect to the same environment.
The invention proposes two different methods to deal with the emulation problem: The first is based on a non-linear approach and can match the non-linear dynamic responses. However, the control requires an emulating robot which is rigid, its dynamics model is exactly known, and its joints' actuators are ideal, i.e., actuator with no dynamics. The second deals with matching of linear impedance. This method assumes that the impedance of the robot can be captured by a linear model, i.e., by a transfer function, and subsequently the control design is conveniently cast in the frequency domain. This linear impedance-matching is more practical than the former one because: (i) It doesn't require ideal emulating robot, i.e., the structural flexibility and the actuator dynamics are allowed, (ii) no parametric model of the robots is needed; the impedance of the emulating robot can be measured directly using spectral analysis.
Experiment on the SPDM Task Verification Facility at CSA has proved that without such a scheme contact stability cannot be achieved. Notably, a similar facility in DLR (the German space agency and NASDA) has failed to produce a stable contact.
The mu-synthesis based controller in accordance with the principles of the invention optimally compromises the performance and stability requirements for a selected class of environments. Specifically, the controller minimizes the weighted distance between the realized and the specified impedances (or force transfer functions); minimizes the sensitivity to force/moment sensor noise; and maintains the closed-loop stability in spite of a broad variation of environment parameters (stiffness and damping).
The invention will now be described in more detail, by way of example only, with reference to the accompanying drawings, in which:
The purpose of the control system is to make the constrained-motion dynamical behavior of the emulating robot as close as possible to that actually encountered by the space robot. The advantage of this methodology is that there is no need for modeling a complex environment. Moreover, because of using the real hardware, a visual cue of the payload and the work-site is available which otherwise, must be simulated.
To achieve a high fidelity force response from the emulating robot requires that its impedance matches that of the space robot. The emulating robot is rigid-body while the space robots are typically flexible. A complete knowledge of the dynamic model of the robot is needed to implement the desired impedance.
In accordance with the principles of the invention, a synthesis-based controller for shaping force response of a robot according to a desired response even with the presence of variation of the environment parameters (stiffness and damping) is used. The performance is defined in terms of distance between the actual and desired force responses and also sensitivity to the force sensor noise, while the variation of the environment impedance enters as a perturbation. The controller achieves robust performance and contact stability.
Nolinear Control of Emulating Robot
Let's consider an emulating robot and a target robot, referred to by subscripts r and s, with n and m degrees-of-freedom (DOF), respectively, operating in an n-dimensional task space. The generalized coordinates of the robots are represented by vectors qrεRn and qsεRm, respectively. Note that the emulating robot is rigid but the space robot is typically a flexible one with many degrees-of-freedom. Hence, we can say
dim(qs)=m≧dim(qr)=n.
Let vector prT=[xrT,φrT] denote the pose of the end-effector of the emulating robot, where xr and φr describe, respectively, the position and a minimal representation of the orientation of the end-effector expressed in the base frame attached to the work-site; see
Assume that
2. they experience the same contact force/moment fεRn.
Moreover, we assume that MrεRn×n and MsεRm×m are the inertia matrices of the two manipulators; hrεRn and hrεRm contain Coriolis, centrifugal, friction, gravity (for the emulating robot), and stiffness (for the space robot); τrεRn and τsεRn are the joint torque vectors; and that Jr=∂pr/∂qrεRn×n and Js=∂ps/∂qsεRn×m are the analytical Jacobian matrices. Then, the equations of motion of the robots can be described by
Mr{umlaut over (q)}r+hr(qr,{dot over (q)}r)=τr+JrTfa, (1)
Ms{umlaut over (q)}s+hs(qs,{dot over (q)}s)=Bτs+JsTfa, (2)
where
and faεRn is the vector of generalized constraint force expressed in the base frame. Note that fa performs work on {dot over (p)}, and it is related to the contact force f by
fa=Λ(φ)f, (3)
where Λ(φ)=diag{I,Λ1(φ)} is a transformation matrix that depends on a particular set of parameters used to represent end-effector orientation; φs=φr=φ.
Now, assume that a real-time simulator captures the dynamics of the space robot. Also, assume that the endpoint pose of the simulated robot be constrained by that of the emulating robot, i.e., the following rheonomic (time-varying) constraint
Φ(qs,qr(t))=pr(qr(t))−ps(qs)≡0 (4)
holds. Enforcing the constraint ensures that the end-effector of the simulated robot is constrained by the pose of the environment barriers, which physically constrain the emulating robot. The Lagrange equations of the simulated robot can be formally expressed by a set of Differential Algebraic Equations (DAE) as
Ms{umlaut over (q)}s+Φq
Φ(qs,t)=0 (6)
where Φqs=∂Φ/∂qs=−JsεRm×n denotes the Jacobian of the constraint with respect to qs, and λεRn represents the Lagrange multiplier which-can be solved from equation (5) together with the second time derivative of the constraint equation (6). That is,
λ=(JsMs−1JsT)−1(c+JsMs−1(hs−Bτs)), (7)
where c={umlaut over (p)}r(t)−{dot over (j)}s{dot over (q)}s; note that the constraint force λ can be measured only if a measurement of pose acceleration {umlaut over (p)}r is available, say via an accelerometer.
A comparison of equations (5) and (2) reveals that the Lagrange multiplier λ acts as a constraint force/moment on the simulated robot. Therefore, our goal is to equate the constraint force and the Lagrange multiplier, i.e., fa=λ. This can be achieved by using the computed torque method in the task space. Substituting the joint acceleration from (1) into the second time derivative of the pose, {umlaut over (p)}r=Jr{umlaut over (q)}r+{dot over (J)}r{dot over (q)}r, yields
{umlaut over (p)}r=JrMr−1(τr+JrTfa−hr)+{dot over (J)}r{dot over (q)}r. (8)
This equation can then be substituted into (7) to obtain the joint torque solution, assuming fa=λ. That is
where M:=[JM−1JT]−1 is the Cartesian inertia matrix whose inverse can be interpreted as mechanical impedance. The torque control (9) can be grouped into force and motion feedback terms.
The force feedback gain tends to decrease when the inertia ratio approaches one. In the limit, i.e., when Ms=Mr, the force feedback is disabled, and hence the robot emulation can be realized without using force feedback.
In free space, where fa=0, the controller matches the end-point poses of two robots at acceleration level and that inevitably leads to drift. We can improve the control law by incorporating a feedback loop to minimize the drift error, i.e.,
where ãs:=JsMs−1(Bτs−hs)+{dot over (J)}s{dot over (q)}s+JsMs−1JsTfa is the estimated pose acceleration of the target robot calculated from the unconstrained dynamics model, and Gν>0 and Gp>0 are drift compensation gains. In the following, we show that the constraint force asymptotically tracks the Lagrange multiplier. Denoting
ëp:={umlaut over (p)}r−ãs,
then the dynamics of the errors under the control law (10) is
ëp+Gν{dot over (e)}p+Gpep=0. (11)
This dynamics is asymptotically stable if the gain parameters are adequately chosen, i.e., ep,{dot over (e)}p,ëp→0 as t→∞. Furthermore, let
ef:=fa−λ, (12)
represent the force error. Then, one can show from (7) that the force error is related to the acceleration error by
ef=Msëp. (13)
Since the mass matrix is bounded, i.e. ∃κ>0 such that Ms(qs)≦κI, then
∥ef∥≦κ∥ëp∥
and hence ef→0 as t→∞. Therefore, the error between the constraint force and the Lagrange multiplier is asymptotically stable under the control law (10). The above mathematical development can be summarized in the following proposition.
Assume the followings: (i) the endpoint pose of the simulated robot is constrained with that of the emulating robot performing a contact task, (ii) the torque control law (10) is applied on the emulating robot. Then, (i) the emulating robot produces the end-effector motion of the space robot, (ii) the constraint force asymptotically approaches the Lagrange multiplier: fa→λ.
In this case, the simulated robot behaves as if it interacts virtually with the same environment as the emulating robot does. In other words, the combined system of the simulator and the emulating robot is dynamically equivalent to the original target robot.
Calculating States of the Flexible Robot
To implement control law (10) the values of qr, qs, and their time derivatives are required. Vectors qr and {dot over (q)}r can be measured, but qs and its time derivative should be obtained by calculation. Consider the rheonomic constraint Φ(qr(t),qs)=0 whose differentiation with respect to time leads to
Js{dot over (q)}s=Jr{dot over (q)}r(t)={dot over (p)}r(t) (14)
In the case that both robots have the same number of degrees of freedom, i.e., m=n, one can obtain {dot over (q)}s uniquely from the above equation. Subsequently, qs can be found algebraically through solving inverse kinematics Φ(qr(t),qs)=0, that is qs=Ω(qr(t)). Although, more often an explicit function may not exist, one can solve the set of nonlinear constraint equations numerically, e.g., by using the Newton-Raphson method, as elaborated in Appendix A. Alternatively, an estimation of qs, can be solved by resorting to a closed-loop inverse kinematic (CLIK) scheme based on either the Jacobian transpose or the Jacobian pseudoinverse.
Since the emulating robot is structurally rigid while the simulated robot is usually flexible, we can say n<m. Therefore, there are less equations than unknowns in (14). The theory of linear systems equations establishes that the general solution can be expressed by
{dot over (q)}s={dot over (q)}sp+Pξ, (15)
where
{dot over (q)}sp:=Js+{dot over (p)}r(t)=Js+Jr{dot over (q)}r(t). (16)
is the particular solution and Pξ represents the general solution of the homogenous velocity. In the above Js+=JsT(JsJsT)−1 is the pseudoinverse of Js, P is a projection matrix whose columns annihilate the constraints, i.e., JsP=0, and ξεRn−m is the independent coordinate, which represents the self-motion of the robot.
Similarly, the general solution of acceleration can be found from the second derivative of the constraint equations as
{umlaut over (q)}s=P{dot over (ξ)}+Js+c (17)
with c defined previously below (7). Now, substituting the acceleration from (17) into (5) and premultiplying by PT and knowing that that PT annihilates the constraint force, i.e., pTJsT=0 we arrive at
N{dot over (ξ)}=PThs+ν, (18)
where N=PTMsP and ν=PTMsJs+c. Equation (18) expresses the acceleration of the independent coordinates in closed-form that constitutes the dynamics of the independent coordinates.
Now, one can make use of the dynamics equation to obtain the velocity of independent coordinate ξ by numerical integration; that, in turn, can be substituted in (15) to yield the velocity {dot over (q)}s. Subsequently, qs can be obtained as a result of numerical integration. However, since integration inevitably leads to drift, we need to correct the generalized coordinate, e.g., by using. the Newton-Raphson method, in order to satisfy the constraint precisely. Alternatively, an estimate of the generalized coordinates of the target robot can be solved-by resorting to a closed-loop inverse kinematics (CLIK) scheme, where the inverse kinematics problem is solved by reformulating it in terms of the convergence of an equivalent feedback control systems.
To summarize, the robot emulation can proceed in the following steps:
Flexible-Joint Case Study
In the case of a robot withflexible-joint, the generalized coordinates of the simulated flexible-joint robot are given by qsT=[qs1T qs2T], where vectors qs1 and qs2 represent the joint angles and motor angles, respectively. Since only the joint angles contribute to the robot end-effector motion, we have Φ(qs1,qr)=0, which implies that the Jacobian of flexible-joint manipulators should be of this form
Js=[Js1 0] (19)
Assuming submatrix Js1 is invertible means that the joint variables can be derived uniquely from the mapping below
{dot over (q)}s1=Js1−1Jr{dot over (q)}r. (20)
The independent coordinates, which are comprised of the motor rotor angles, should be obtained through simulation. The structure of Jacobian (19) specifies the projection matrix as
Moreover, the dynamics model of flexiblejoint manipulators can be written as
Finally, substituting the parameters from (21) and (22) into (18) yields N=Ms2 and ν=Ms21Js1−1c. Hence, the acceleration model of the independent coordinates is given by
{umlaut over (q)}s2={dot over (ξ)}=Ms2−1(hs2+τs+Ms12Js1−1c), (23)
which can be numerically integrated to obtain {dot over (q)}s2.
Simulation Without Applying the Constraints
The robot emulation problem can be reformulated without imposing the kinematic constraint. Indeed, one can show that the control law can maintain the asymptotic stability of the constraint condition if the dynamics model of the emulating robot is accurately known. Assume that the constraint is no longer applied to the simulated robot. In other words, the dynamics of the target robot is described by (2), which is an Ordinary Differential Equation (ODE). Then, we can obtain the complete states of the target robot from integration of the acceleration
{umlaut over (q)}s=Ms−1(Bτs−hs+JsTfa).
It can be readily shown that the dynamics of the constraint error under the control law (10) is described by
{umlaut over (Φ)}+Gν{dot over (Φ)}+GpΦ=0. (24)
Therefore, by selecting adequate gains, the constraint error is exponentially stable, Φ,{dot over (Φ)}→0 as t→∞.
Topological Difference Between the Two Robot-Emulation Schemes
Both emulation schemes establish identical force/motion dynamics between the end-effector of the emulating-robot and that of the target robot. The difference between the two schemes, however, lies in how the simulator is synchronized with the actual emulating robot. In the first scheme,
Stability and Performance Analysis
Since there is small displacement during the contact phase, the velocities and centripetal and Coriolis forces go to zero and also the mass inertia matrices and the Jacobian matrices can be assumed constant. Hence we will proceed with the frequency domain analysis.
Effect of Disturbance
In practice, the fidelity of the robot-emulation is adversely affected by disturbance and sensor noise. Assume vector d capture the disturbance caused by error in the contact force/moment measurement, sensor noise, and lumped uncertainty in the robot parameters such as uncompensated gravitational forces and joint frictions. Then, the robot dynamics in presence of the disturbance can be written as
Mr{umlaut over (q)}r+hr=τr+JrT(fa+d). (25)
In the following, the effect of the additive disturbance on the two schemes shall be investigated. In the case of the robot-emulation without application of the constraint, the dynamics of the constraint error (24) is no longer homogeneous. The transmissivity from the disturbance to the constraint error can be obtained in the Laplace domain by
Φ=s2Z(s)−1Mr−1d, (26)
where
can be interpreted as the admittance of the motion controller. It is apparent from (26) that decreasing the inertia of the emulating-robot makes the constraint error more sensitive to the disturbance and the sensor noise.
In the contrast, the robot emulation scheme with the application of the constraint naturally fulfills the constraint condition even in presence of the external disturbance. However, the simulated and the emulating robots may no longer experience identical constraint force. One can obtain the transmissivity from the disturbance to the force error in the Laplace domain by
ef=−Z(s)Qd, (27)
where Q=MsMr−1 is the inertia ratio of the two robots. Adequate choice of gains implies that ∥Z∥a=1. Hence, we can say ∥ef∥≦
The magnitude of the sensitivity of the force error to the disturbance depends on the inertia ratio; the higher the ratio ∥Q∥, the more sensitivity. Roughly speaking, choosing a massive emulating robot is preferable because that minimizes the disturbance sensitivity of the emulating system to sensor noise and disturbance.
Actuator Dynamics and Contact Stability
Practical implementation of the control law requires ideal actuators. In free space, the actuator dynamics can be neglected, because the fast dynamics of the actuators is well masked by relatively slow dynamics of the manipulator. In contact phase, however, where the velocity tends to be zero, the manipulator losses its links dynamics. In this case, the simulator and actuators form a closed-loop configuration which may lead to instability.
In the contact phase, the emulating-robot develops constraint force/moment as result of its joint torques, i.e. fa=−Jr−Tτr. The joint torques, in turn, are a function of the contact force according to the torque-control law (10). This input-output connection forms an algebraic loop which cannot be realized in a physical system unless the actuator dynamics is taken into account. In fact, the emulating-robot cannot produce joint torque instantaneously due to finite bandwidth of its actuators and time delay. Let transfer function H(s) represent the actuator dynamics, i.e., τr=H(s)τrc, where τrc is joint torque command. Then, the contact force developed by the emulating-robot is
fa=−H(s)Jr−Tτrc (28)
Assuming negligible velocity and acceleration at the contact, i.e. {dot over (q)}r≈0. Then, substituting the torque-control law (10) into (28) yields
where L(s)=Q−1L′(s) is the loop-gain transfer function and L′(s)=H(s)/(Z(s)−Z(s)H(s)); recall that Z(s) and Q have been already defined in the previous section. It is clear from (29) that the actuator dynamics is responsible to form a force feedback loop which only exist if the actuator has finite bandwidth, otherwise the force terms from both sides of equation (29) are cancelled out.
According to the Nyquist stability criterion for a multi-variable system, the closed-loop system is stable if and only if the Nyquist plot of det(I+L(s)) does not encircle the origin. This is equivalent to say that there must exist a gain εε(01] such that
det (I+εL(s))≠0 ∀s>0 (30)
Since det(I+εL)=Πiλi(I+εL), λi(I+εQ−1L′)=1+εL′(Q−1), and λi(Q−1)=1/λi(Q), the stability condition (30) is equivalent to the following
εL′(s)/λi(Q)+1≠0 ∀s>0,∀i, ∀εε(0, 1] (31)
Let the actuator dynamics (or time delay) be captured by a first-order system
where ωa is the actuator's bandwidth, i.e.,
Then, the characteristic equation of (31) is given by
Since the inertia matrices are always positive definite, one expects that matrix Q is positive definite too. Assume that λi(Q)>0, Gp>0, and Gν>0. Then, according to the Routh-Hurwitz stability criterion, one can show that the above equation has no roots in the right-half plane if and only if λi(Q)>0 and
where ωp=2Gp/Gν is the bandwidth of the controller. The above development can be summarized in the following proposition
Assume matrices Mr and Ms represent the Cartesian inertia of the emulating and the target robots, respectively. Also assume that the control law (10) with bandwidth ωp be applied to the emulating-robot whose actuators have bandwidth ωa. Then, the emulating-robot can establish a stable contact if matrix Q=MsMr−1 remains positive-definite and its maximum eigenvalue is bounded by 2ωa/ωp.
The stability condition (32) imposes a lower bound limit on the ratio of Cartesian inertia matrix of the emulating robot to that of the simulated robot.
Since |λmax(Q)|≦
Force Transmissivity
The Lagrange multiplier is no longer consistent with λ≡fa in presence of actuator dynamics. Assuming stable contact, one can show from (29) that the constraint force fa is related to the Lagrange multiplier λ by
fa=T(s)λ
where
is the transmissivity transfer function.
In presence of actuator dynamics, the force response of the emulating-robot depends on the inertia ratio of the two robots.
A high fidelity emulation requires that |T(s)| be flat over a wide bandwidth and then roll-off at high frequency. The graph of |T(jω)| for a scaler case is shown in
Design Considerations
The fidelity and the stability of the emulation scheme has been analyzed. In this regard, the inertia ratio of the two robots, Q=MsMr−1, turned out to be an important factor. Specifically, the analysis has yielded the following results:
So far the control approach proposed for emulating robot has been based on the premise that a perfect model of the manipulator and ideal source of joint torque, i.e. no actuator dynamics, are available. Therefore, the control system can trivially assign infinite stiffness to the manipulator thereby achieving dynamic decoupling of the simulator and the emulating robot systems which are in a closed-loop configuration. However, in practice, the motion control system of the emulating robot can only achieve finite bandwidth and stiffness and this scheme is susceptible to instability.
In accordance with the principles of the invention, there is described a μ synthesis based controller for shaping force response of a robot according to a desired response even with the presence of variation of the environment parameters (stiffness and damping). The performance is defined in terms of distance between the actual and desired force responses and also sensitivity to the force sensor noise, while the variation of the environment impedance enters as a perturbation. The H∞ controller achieves robust performance and contact stability.
A Linear Model of Robots Interacting with Environment
Manipulators are generally non-linear devices, but the system dynamics can be well captured by linear system about a certain position of the end-effector provided slow operation. In the sequel, the analysis and design of robot emulation are cast in the framework of multivariable control in frequency-domain. The input-output behavior or the system consisting of the space robot and its controller can be described by (see Appendix C for a detailed derivation)
where νs is the velocity of the robot end-effector, r is the hand controller velocity command, and fs is contact force. Transfer functions Tνs and Ys represent velocity transmissivity and admittance of the space robot system—admittance is the inverse of impedance, i.e. Ys=Zs−1. The mechanical impedance relating the force and the velocity at the point of contact describes the environment dynamics as
fs=Zννs. (35)
is the so-called closed-loop impedance of the robot, that amounts to equivalent of serial impedances of the robot and the environment.
Let's define exogenous signal
Uncertainty Model of Environment
In essence, the contact dynamics emulation should be able to perform without incorporating a model of environment. However, the the environment impedance enters into the system as a perturbation. Hence, in order to achieve an optimal performance, one need to characterize the impedance by an uncertainty model. The environment impedance can be adequately modelled by
where k and c denote the stiffness and damping coefficients. Now assume Z as a class of all impedances whose stiffness and damping coefficients are ki=
Zν=
where Δz belongs to the following uncertainty set
It is evident from above that the uncertainty is bounded over all frequencies, i.e. ΔzεH∞, which is an important requirement for robust control synthesis. Also, it is always possible to find a weighting function WzεH∞ such that the uncertainty is normalized less than one, i.e.
Δz=Wz{tilde over (Δ)}z and ≦1.
For practical relevance, it is more convenient to express the uncertainty in terms of damping ratio ζ=c/k, where ζ=
Let's assume the parameter variations be
103≦k≦2×106,
0.05≦ζ≦0.2, (39)
that is
tightly bounds all of the variations in the uncertainty Δz.
Robust Stability Analysis
The sensitivity function S(L) and complementary sensitivity function
Δz=Wz{tilde over (Δ)}z and ∥{tilde over (Δ)}z∥∞≦1.
For practical relevance, it is more convenient to express the uncertainty in terms of damping ratio ζ=c/k, where ζ=
Let's assume the parameter variations be
103≦k≦2×106,
0.05≦ζ≦0.2, (39)
that is
tightly bounds all of the variations in the uncertainty Δz.
Robust Stability Analysis
The sensitivity function S(L) and complementary sensitivity function S(T) of closed-loop associated with open-loop function L are defined as S(L)=[I+L]−1 and T(L)=I−S(L), respectively.
The robot with admittance Y(s) is robust stable (RS) with all environment ZνεZ if
With the application of small gain theorem, we can say
RS
Emulating Robot System
A linear model representation of dynamics of the emulating robot system is given in
In the above Tνe=TνrTνs and Ye=Yr+TνrF can be treated as equivalent velocity transmissivity and admittance of the entire emulating robot system. Similarly, the closed-loop impedance of the emulating system can be defined as
Now the control paradigm is: Given identical environment stiffness in both systems in FIGS. (7) and (8), find stabilizing feedback F such that the two systems are equivalent.
That is the contact forces fr and fs in response to velocity command r are close as much as possible. A trivial solution to this problem exists when
Tνr≡1 and Yr≡0F=Ys.
In that case the emulating robot is totaly transparent so that as if the simulation robot directly interacts with the environment. Note that this result is consistent with the ideal control system described in the previous section. However, in practice, this ideal specification can not be met as real robots have finite bandwidth and stiffness. Indeed, in the course of many experiments it becomes apparent that choosing F(s)=Yr(s) often leads to instability of the entire system. In the following, we cast the problem of finding an adequate force feedback F(s) in a H∞ control synthesis.
Assume that the environment impedance belongs to a class of transfer functions, i.e. ZνεZ. Then, the control requirements can be specified as follows:
Good tracking performance in free space doesn't guarantee νr tracks νs while the robot performs contact task. In the following we show that the second and the third requirements in the above are almost equivalent.
Tf
is the sensitivity function of the closed-loop force feedback.
Control Design in the Frequency Domain
Given the emulating robot characterized by and admittance find the force feedback loop closed around the robot motion controller such that robot contact force response be to that of the target robot as closely as possible for a class of environment impedances. Besides the robot remains stable in the contact and the sensitivity of the output force with respect to the force plate noise is limited at will for all class of impedances.
The control design methodology in accordance with the principles of the invention is based on uncertainty representation and the performance specifications that are mentioned earlier. Let's z1 and z2 specify the exogenous output signals as
z1:=fr−fs and z2:=νs,
and w be the exogenous input signal. Then, the aforementioned control requirements can be met by shaping the closed-loop sensitivity functions Tw,z
The resulting controller will obviously ensure robust performance of the closed loop system against model uncertainty represented by {tilde over (Δ)}z. Note that in the above Tw,z
Robust Stable Solution
A robust stable solution can be found that optimizes the performance for the nominal plant, while ensuring stability for all uncertainties ΔzεΔz. This problem can be formulated as a μ-synthesis problem based on the uncertain model structure
{circumflex over (z)}T:=[{circumflex over (z)}1T {circumflex over (z)}2T], pT:=[p1T p2T], qT:=[q1T q2T].
Let the transfer function from [pTwTuT]T→[qT{circumflex over (z)}Ty]T be denoted by P partitioned as
In the above, Qr=
The robustness and performance issues can be completely addressed by adding a fictitious uncertainty Δp through which feedback from output {circumflex over (z)} to input w is established. Then, robust performance is achieved if the lower LFT
M=F1(P,F)=P11+P12F(I−P22F)−1P21
is robust stable with respect to the structured perturbation Δ=diag{Δp,{tilde over (Δ)}z}. That is the structured singular value (SSV) has to be less than one, that is
μΔ(M)=[infΔ∥Δ∥|det(I−MΔ)=0]−1<1.
Quantity μ(M) is the size of smallest perturbation Δ that can destabilize the closed-loop system. Therefore, the objective of the μ-synthesis is to find a controller F(s) minimizing μ(M). μ(M) can be approximated by finding scale matrix D from the following
This problem, in general, is a hard to solve due to non-convexity of resulting feasibility problems. However, it can be solved numerically by the D-F iteration. Assuming that {tilde over (Δ)}z=diag{δi}, we have
Δ:={diag{δ1, . . . , δn, Δp}:δ1, . . . , δnεC,ΔpεCn×2n}.
Define D to be the set of matrices D which commutate with Δ, i.e., satisfy DΔ=ΔD. That is
D:={diag(D1,d2In×n):D1εCn×n,d2εC}.
Weighting Functions
The exogenous signal w is passed through filter Tνs (see equation (37)). Moreover, to normalized the force error requires that it is filtered by
|W1|=a1|Tνs
where a1 is scaling coefficient.
Robust Performance Solution
Robust performance means that the performance objective is satisfied for all possible plants in the uncertainty set, even the worst case plant. Again the system can be presented in a LFT form with uncertain model structure corresponding diag{{tilde over (Δ)}z,{tilde over (Δ)}z,Δp}. The model structure depends on the structure of the environment-impedance matrix.
Example 1: Let's assume the matrix of environment impedance be diagonal, i.e., {tilde over (Δ)}z=diag{δi}. Then uncertainty is
Δ1:={diag{δ1I2×2, . . . , δnI2×2,Δp}:δ1, . . . , δnεC,ΔpεCn×n},
which specifies the scaling matrix D as
D:={diag(D1, . . . , Dn,In×n):D1, . . . , DnεCn×2n}.
For the SISO case D={diag(D1, d2I),D1εC2×2,d2εC}. The μ-synthesis problem with the above structure can be solved by using the Matlab μ-Synthesis Toolbox.
Example 2: Let's assume that the environment impedance has no particular structure. Then, the uncertainty should have the following structure
The Matlab μ-Synthesis μ-synthesis cannot handle the above problem. However, the minimization problem (44) can be transformed into the following LMI (Linear Matrix Inequality) problem
M*XM−Xβ<0,
where X=D*D>0, which can be solved by Matlab LMI Toolbox.
Experimental Validation
Consider a simple 1-dof (degree of freedom) robot case study to demonstrate the performance of the robot-emulation schemes with and without application of the constraints. It follows by implementation of the robot emulation on a 3-dof robot to demonstrate aspects of multi-axes case. In both cases, the objective is to change the dynamics of the actual robots, which are structurally rigid, in such a way that their dynamic responses resemble those of flexible-joint robots. In other words, the actual robot behave, either in contact phase or non-contact phase, as if there exist soft springs in their joints. Moreover, in order to create the zero-gravity condition in the laboratory environment, the gravitational forces are compensated by the controller.
where matrix R(qr)εR3×3 represents orientation of manipulator endpoint with respect to the vertical line and g=[00−9.81]T is the gravity vector. Hence, the acceleration signals can be retrieved from (45) if the orientation matrix is given. For the single-axis case, we have:
{umlaut over (p)}r=aout−9.81 cos(qr).
The dynamics of a 1-dof flexible joint arm can be expressed by
where ms1=0.05 kgm2 and ms2=0.1 kgm2 are the link inertia and the drive inertia, l=0.3 m is the arm length, k=3.0 Nm/rad represents joint stifffiess, ζ=0.1 Nm.s/rad is damping at joint, and τs(t) is real-time control input of the simulated robot—in this particular illustration, the control law is comprised of the resolved-rate controller accompanied with a force-moment accommodation (FMA) loop.
The dynamics of the rigid joint robot is simply described by
mr{umlaut over (q)}r+cr{dot over (q)}r+w cos(qr)=τr+fl
where cr=0.022 Nm.s/rad represents joint viscous friction, and mr=0.05 kgm2 is the collective arm inertia, and w=0.5 Nm is the maximum gravity torque. Since Js1=Jr=l, we have qs1≡qr. Hence the control law for the rigid robot which makes it behaves as a flexible joint robot can be expressed by
τr=cr{dot over (q)}r+w cos(qr)−fl+mrms1−1[{umlaut over (q)}s1+Gν({dot over (q)}r−{dot over (q)}s1)+Gp(qr−qs1)],
where
{dot over (ξ)}=ms2−1[−k(ξ−qr)−ζ({dot over (ξ)}−{dot over (q)}r)+τs(t)],
and
{umlaut over (q)}s1=ms1−1[−k(ξ−qr)+ζ({dot over (ξ)}−{dot over (q)}r)],
In the next experiment, the rigid environment case for performing the robot-emulation without applying the constraints to the simulator is considered. Trajectories of the hand controller command, the tip position, the contact force, and the constraint error are illustrated in
Three-Dof testbed
The first experiment involves testing performance of the robot emulating system in free space using an impulse response test. To this end, an excitation force is applied by a hammer to the robot end-effector;
The performance of constrained motion of the robot is demonstrated qualitatively in
Impedance-Matching
A hydraulic manipulator is used for emulation of the SPDM space robot. Although the control methodology is applicable to a multivariable case, we consider a decentralized controller assuming negligible cross-coupling among different channels of the robot impedance. In the sequel, all transfer functions are associated with the translational z-axis. The contact force/moment developed between the manipulator and environment is measured by a force plate installed on the ground.
In this test, the environment consists of a square plate which is mounted on the force plate by four poles. The stiffness of this environment is measured to be
The design synthesis relies on the identification of the admittance of the emulating robot. The first step in identification process involves obtaining a sequence of input-output data. To this end, the robot grabs a peg and push the plate while a chirp disturbance signal is injected to the input. Matlab Identification toolbo were used to calculate the coefficients of a fixed rational transfer function to fit the data. Several parametric model were examined, and it turned out a 4th order system is sufficient to match the I/O behavior adequately.
and Wz(s) was previously derived in (40).
A μ controller was designed by taking into account the robust performance specifications for all possible variation of environment parameters, i.e. stiffness and damping, corresponding to (39). The solution was found by using Matlab Robust Control Toolbox based on the D-F iteration method. The μ upper bound obtained is less than 0.18, which shows the controller design effectively achieves the robust performance specified, in spite of the uncertain environment impedance.
The graph of |Yrc1| is depicted in
It is also possible to develop a linear model for the SPDM space robot as follows. The linearized model of a flexible-joint robot assuming slow operation in the neighborhood of some set point q0 and {dot over (q)}0,{umlaut over (q)}0=0 can be expressed by
Ms{umlaut over (q)}s+Cs{dot over (q)}s+Ksqs=Dτs+JsTfs (47)
where qsT=[q1sT q2sT], and q1s and q2s are the motor angles and joint angles, and
In th e above, M(q0) and Js(q0) are assumed constant matrices, and Ks is the stiffness matrix. A Force/Moment Accommodation (FMA) servo loop is closed around a resolved-rate motion controller. The joint rate servo includes a PI controller, i.e.
τs=Kp({dot over (q)}*−{dot over (q)}1s)+Ki∫({dot over (q)}*−{dot over (q)}1s)dt, (48)
and
{dot over (q)}*=Js2+(r−{dot over (x)}f), (49)
where Js2+ generalized inverse of the Jacobian, and {dot over (x)}f is the filtered version of contract force
{umlaut over (x)}f=−σ−1{dot over (x)}f+σ−1Kffs, (50)
Kf and σ are the FMA gain and time constant.
Let's assume u and y be the system input and output as
Also, assume xT=[x1, . . . , x5] be the state vector, where x1=qs, x2={dot over (q)}s, x3=xf, x4={dot over (x)}f, and {dot over (x)}5=r. Then, substituting the control law (48) and (49) in (47) yields state-space representation of the the system dynamics, i.e.
{dot over (x)}=Ax+Bu
y=Cx
where
Finally, the multivariable transfer function of the system is obtained from the state-space model as
[Tνs−Ys]=C(sI−A)−1B.
The invention permits the emulation of a target robot, say a space robot, operating in a complex environment by using. an actual robot. Although the actual emulating-robot is not dynamically equivalent to the target robot, the former is controlled such that the dynamical similarity is achieved. The emulation scheme aims to replicate the dynamical behavior of the target robot interacting with environment interaction without dealing with a complex calculation of the contact dynamics. Based on the uncertain model structure and the performance specifications, a robust performance is achieved using μ controller.