Force-Force Bilateral Haptic Control Using Adaptive ...

2 downloads 0 Views 297KB Size Report
Authors are with the Schulich School of Engineering, University of. Calgary, Alberta ... law, filters, human operator, and environment are all passive. However ...
Force-Force Bilateral Haptic Control Using Adaptive Backstepping with Tuning Functions D. Richert, C.J.B. Macnab, and J.K. Pieper Abstract— This paper presents a design for bilateral haptic control of a surgical robot. The control architecture consists of a force-force two-channel configuration. Neural networks model both slave and environment dynamics. An adaptive Lyapunov backstepping method utilizing tuning functions provides robustness to unmodeled tissue properties and smooths the applied control force. Simulation results for a one-degree-of-freedom system with time delay verify the proposed method improves the overall performance of the system, especially during puncture and collision.

I. I NTRODUCTION This paper examines telerobotics as it applies to minimally invasive surgery. In particular, we look at the bilateral control architecture of such a system. Bilateral control allows the human to operate a master device which sends commanded position and force (or velocity and force) to a remote slave. The slave interacts directly with the environment. The controller should be able to accurately reflect position and force data from the master to the slave and vice-verse, thus achieving system transparency [1]. Bilateral control usually falls into one of two categories: four-channel or two-channel architectures [2]. A four-channel architecture transmits both position/velocity and force information from the master to the slave while the slave also sends position/velocity and force information to the master. A typical twochannel architecture sends force to the master which sends commanded position/velocity back to the slave. When the task and remote environment are highly defined, fourchannel architecture outperforms other control architecture [3], [4]. However, as the task and environment deviate from their predicted behaviour the performance, and more importantly robustness, degrades [5]. Two-channel architectures transmit either position/velocity or force from the master to the slave, and either position/velocity or force from the slave to the master. Each of the four possible arrangements is theoretically equivalent and provides perfect tracking when the master-slave behaves perfectly. However, in the presence of inertia, time delays, and other undesired system dynamics each arrangement has it’s own distinct advantages and disadvantages based on the overall application of the telepresence system [6]. We examine the force-force arrangement for a two-channel control architecture (Figure 1). In the absence of a force measurement (i.e.. motion in free space) the system becomes a Authors are with the Schulich School of Engineering, University of Calgary, Alberta, Canada. Corresponding author: Chris Macnab [email protected]

velocity-velocity arrangement. The controller undergoes this change in architecture naturally without using a switching criteria and/or new controller. A major design motive for force tracking rather than position tracking comes from the presence of time delay in the master-slave interface. Consider a scenario where the slave hits a stiff environment (i.e. a wall). Under position tracking, the controller tends to drive the slave into the wall harder because the human commands a position beyond the wall until the human can feel the time-delayed force feedback. On the other hand, under force control the controller will tend to pull back on the slave when it hits a wall because the force command is less than the measured force (since the commanded force was sent by the surgeon before the wall was contacted). Typically, such a control architecture has poor position tracking characteristics [7]. However, given visual feedback we assume a trained and experienced human can perform the necessary impedance transformation. The proposed automatic control must be implemented on the slave, providing an inner-loop control without time delays. The control then tracks commands from the master, which may contain significant time delays due to communication rates and filtering. Passivity has historically dominated the stability discussion of bilateral controllers [8], [9], [10], [11], [12]. Stability can be analyzed based on the input-output signals alone, without knowledge of the system dynamics. Such an approach becomes useful when interacting with unknown and variable environments, typically by showing that control law, filters, human operator, and environment are all passive. However, controller design choices are restricted by the difficulties in proving stability by passivity. The approach in this paper utilizes an adaptive-Lyapunov approach, with neural networks modeling unknown tissue properties. Using a backstepping technique smooths out the applied force by treating the derivative of force as the control signal. Stability can then be analyzed including effects from controller and environment (although still excluding the human-in-the-loop). The proposed robust stable weight update laws utilize tuning functions rather than over-parameterization in the adaptive backstepping. Tuning functions achieve fast and robust adaptation to unmodeled dynamics in the backstepping procedure [13]. In this way, one avoids the need for performance convergence through repetitive training [14]. Simulation results verify that the tuning functions method improves the performance of the overall system. The test scenario introduces significant time delay into the master/slave communication and presents two challenging situations: when contact with the environment is

x Pos./Force

Haptic device

Force command

Delay

Proposed Controller

Robot

M

Surgeon Pos./Force Fig. 1.

K(x)

Fc

Haptic device

Delay

Measured force

Fig. 2. One DOF model: Controller moves the robot mass using force Fc while measuring force Fm due to environment stiffness K(x) and damping Dm (x, x). ˙ The robot has internal friction Dr (x, x). ˙

suddenly lost (e.g. puncturing through tissue) and when the tool comes into contact with a stiff environment (e.g. hitting a solid surface). II. BACKGROUND A. Simplified Model for Control Design Let us consider a one-degree-of-freedom translational robotic manipulator pushing a tool through tissue. Nonlinear stiffness K(x) with linear damping coefficient Dm models the combined environment/tissue and force sensor (Figure 2). In reality, the force sensor resides in a gripper which holds a tool, so that this simplified model ignores any tool dynamics. The dynamic model for control design purposes is (1)

where x(t) is position, M is the mass of the robot, Dr x˙ is the damping/friction of the robot, and Fc (t) is an applied actuator force. Real tissue will display viscoelastic (timevarying) stiffness properties as well as nonlinear friction [15]. Although these tissue properties are not added to the simple model tested in this paper, realization of this fact reinforces the need for fast adaptation in the neural-network control law. A force sensor in the robot end-effector measures forces on the tool Fm = Dm x˙ + K(x)x.

(2)

Force sensor outputs are typically filtered because of noise, which is an additional source of time-delay to the human operator as well as adding unaccounted for dynamics into the system. Our proposed closed-loop control takes the force measurement directly, since the backstepping technique will provide a built-in smoothness to the control signal. B. Direct Force Application Without applying an automatic closed-loop control, application of direct force Fh provided by the human through the master haptic device the applied force is Fc (t) = Ks Fh (t − T ),

Dm

Dr

Model of proposed inner-loop force-feedback system.

Mx ¨ = −Dr x˙ − Dm x˙ − K(x)x + Fc ,

Fm

(3)

where T is the amount of time lag in the human-in-the-loop control scheme, and Ks is a scaling gain that the operator uses to magnify forces in (typical) surgical applications.

III. P ROPOSED C ONTROL S CHEME The proposed control scheme will aim at reducing an auxiliary error that includes not only force error but also velocity. This allows the human to control velocity when there is no measured force and serves to automatically slow the mechanism down after a puncture or collision. A backstepping procedure will result in a design for the derivative of force as a control signal, smoothing the applied force. Radial basis function networks will supply approximations of derivatives in the design, adapting in real time. A. Auxiliary error For the purposes of designing a closed-loop control, the term Fd (t) = Ks Fh (t − T ) is now interpreted as a desired (or commanded) force resulting in force error ǫ = Fm − Fd ,

(4)

Now Fc (t) will be produced by the control law, in order to track the last commanded force from the haptic device. In order to reduce overshoot when puncturing through material and when colliding with solid objects we utilize an auxiliary error s = Λǫ + x, ˙ (5) where Λ is a positive and tunable constant set by the surgeon to achieve a desired response. A large Λ will emphasize force tracking whereas a small Λ will slow the robot. Note that if a control can achieve s ≡ 0 then x˙ = −Λǫ.

(6)

When in contact with material x˙ = −Λ(Fm − Fd ), = −ΛK(x)x − ΛDm x˙ + ΛFd , Λ −ΛK(x) x+ Fd , = 1 + ΛDm 1 + ΛDm

(7) (8) (9)

which constitutes an open-loop stable (nonlinear) system with state x and input Fd . In the free moving case where there is no contact with material and Fm = 0 equation (6) becomes x˙ = −ΛFd , (10) and velocity is then directly proportional to commanded input.

The derivative of the control signal is

B. Radial Basis Function Networks Radial basis function networks incorporating Gaussian functions provide smooth estimates of unknown nonlinear functions. The proposed method will not require accurate estimation, but rather performance will follow from direct adaptation based on output error. The output from the Gaussian network is ˆ oˆ = φ(q)w, (11) where q is a vector of n inputs, φ(q) is an m-element ˆ row vector of n-dimensional Gaussian functions, and w is a column vector of m weights. Given enough evenlydistributed basis functions the Gaussian network can uniformly approximate nonlinear function f (q) ∈ D ⊂ Rn such that f (q) = o + d(q) = φ(q)w + d(q),

(12)

where approximation error d(q) < dmax in region D, with dmax a positive constant. The weight errors are denoted ˜ = w − w. ˆ This weight error represents an important w notation used throughout this paper. Often, the ideal (or actual) value of a signal is not available to us so an estimate is used instead. We denote the estimated signal with a hat and the resulting error between this and the actual signal with a tilde: ˜ = (·) − (·). ˆ (·) (13) This notation is particularly important when proving stability in the Appendix. C. Adaptive Backstepping Control Design This section outlines the control signal, neural networks, and weight update laws implemented in the actual simulation. Most of the terms are not physically intuitive at a glance and a study of the stability proof in the Appendix is required to understand the subtleties of the control law. Indeed, most of what follows was designed using a control Lyapunov function. Nevertheless, one could implement this control law on a system based on the results of this section. We will see that a neural network is needed to approximate terms

F˙ c = α ˆ˙ − sˆ p − G2 z,

(17)

and this value is integrated before being sent to the slave actuators, Z t Fc (t) = F˙c (τ )dτ, (18) 0

G2 being a positive definite control gain. Terms in the above control law are z = Fc − α, (19) where α is the virtual control (desired force) designed in the first stage of backstepping (see Appendix) ˆ ǫ + ΛF˙d − G1 s), α = Fm + pˆ−1 (−φǫ w

(20)

and thus z represents the virtual control error. It is the term −G2 z which determines the filtering properties of the backstepping technique. The result is that the Gaussian neural ˆ α ensures that a discontinuous network approximation φα w Fm will not cause a discontinuous control force. A large G2 ensures fast convergence of Fc to α and provides little filtering on the control signal whereas a small G2 will smooth the control signal more. The time derivative of the virtual control is ˆ ǫ + ΛF˙ d − G1 s) ˆ α − pˆ˙ pˆ−2 (−φǫ w α ˆ˙ =φα w    ∂φǫ ∂φǫ ˙ ˆ˙ ǫ − ˆǫ Fd w + + pˆ−1 − φǫ w ∂ x˙ ∂F   d ∂φǫ ˆ ǫ + G1 sˆ˙ , + ΛF¨d − w ∂s

(21)

where G1 is also a positive definite control gain. G1 determines (to some extent) the rate at which s → 0. Finally, ˆ ǫ + pˆ(−Fm + Fc ). sˆ˙ = −ΛF˙ d + φǫ w Weight (or parameter) update laws are as follows:     T ∂φǫ −1 ˙w ˆ ǫ = βǫ φǫ ˆǫ , ˆ ǫ + G1 pˆ z + τǫ − νǫ w w ∂s

(22)

(23)

where βǫ is a positive definite learning rate and τǫ is the ˙ + K x) Λ(Kx ˙ − M −1 (ΛDm + 1)Dr x˙ = φǫ (x, Fd , s)wǫ + dǫ . tuning function τǫ = φTǫ s. (24) (14) Note that the terms on the left hand side depend explicit on x and x, ˙ but providing the neural network with x, Fd and s instead will still give the neural network unique state information since s() = s(x, x, ˙ Fd ). Using s, and not x, ˙ as an input will allow a tuning function design. We also require an additional adaptive parameter M −1 (ΛDm + 1) = p + dp .

(15)

Again, the quantities that these adaptive terms model are not physically intuitive and their design comes from the stability proof in the Appendix. A final neural network models F˙ m (x, x, ˙ Fc ) = φα (x, x, ˙ Fc )wα + dα .

(16)

Positive constant νǫ is the coefficient for the leakage term and ensures the boundedness of the weights. Modeling performance of the neural network suffers at the expense of larger νǫ , though computing limitations require the existence of this term. The term containing the partial derivative improves the modeling performance of the neural network by providing additional information about the system dynamics. In fact, this term is not necessary from a stability perspective (e.g. in an over-parameterized backstepping design) yet simulation results verify that its addition improves performance. The parameter pˆ is updated according to     −1 ˙pˆ = βp Proj (−Fm +Fc ) ∂φǫ w ˆ ǫ +G1 pˆ z+τp , (25) ∂s

−3

10

x 10

−3

x 10

Velocity (m/s

8

Force (N)

Proposed Method Backstepping Direct Force

3

6 4 2

2 1 0 −1 0

0 0

0.002

0.004

0.006

0.008

0.01

0.012

0.014

5

10

15

20

25

Time (s)

0.016

Position (m)

−3

x 10

Fig. 3. Stiffness Profile; the tool tries to moves from left to right with constant velocity before stopping at the surface.

Velocity (m/s)

3 2 1 0 −1

where

0

τp = s, and the projection operator is   if pˆ > ||p||max and · > 0 0 Proj[·] = 0 if pˆ < ||p||min and · < 0   · otherwise,

(26)

0.006

0.008 Position (m)

0.01

0.012

0.014

0.016

(27)

(28)

It is important to note that these update laws are performed online, while the surgeon is performing surgery. Thus, the effectiveness of the neural networks in the controller comes from their speed of adaptation rather than their accurate modeling of the system. There will also be improved performance as a task is repeated, however given that the surgical environment changes with time, we do not emphasize this aspect of the controller in simulation. IV. S IMULATION PARAMETERS The stiffness profile (moving left to right in Figure 3) provides a challenging task for a surgical robot. There is a loss of contact with tissue at 7.5mm, and a collision with a solid surface at 15mm. The proposed control scheme is compared to both the direct force method (3) and the backstepping method without tuning functions [16]. In the evaluation scenario, the human operator tries to achieve a constant velocity of 1mm/s first in a medium, then in air, before finally commanding a stop (providing a constant force) when hitting a solid surface. Granted, a human is likely to react to a puncture and pull back on the controller rather than try and maintain a constant speed. Nevertheless, since the scenario is consistent among trials we argue that it is a fair test. The damping/friction for the environment was Dm = 0.5x˙ in the medium, but zero otherwise. A filtered Proportional-Integral control of velocity models the human while moving, with transfer function 2+s 25 Fh (s) = · . velocity error(s) s s + 25

0.004

Fig. 4. Comparing Velocity Tracking: the proposed method tracks velocity while reducing the overshoot at a puncture and oscillations at collision.

used to ensure that pˆ is invertible. Of course it is hard, if not impossible, to know exact values for ||p||max and ||p||min so in implementation these values are estimated as desired maximum and minimum values that we want to appear in our control law. A final update law is ˆ α ). ˆ˙ α = βα (−φTα z − να w w

0.002

(29)

After contacting the solid surface the human commands a constant force Fh (t) = 0.005N. (30) Time delays totaling 0.2 seconds in the outer closed-loop cause the human to overshoot when puncturing through from the medium into air, and cause a large force applied to the robot when hitting the solid surface. The solid surface is modeled as a very high stiffness (K = 150) and the collision is purely elastic, which is a scenario not only easy to model, but suited to a worst-case scenario for testing stability properties. The model of the slave robot consists of mass M = 0.5 Kg and damping Dr = 0.1x. ˙ The master device dynamics are not modeled in the simulation (other than the fact that some master device dynamics could be contained within the PI model of the human operator). That is, we assume that the measured force is reflected perfectly through the master device to the human and that force commands are measured at the master device end effector perfectly. The integrity of the simulation is not compromised with this assumption because we are only concerned with testing how the controller affects the slave movements. In fact, the proposed controller could also be implemented on the master device side of the system without loss of generality. The control gains utilized in the simulations are Λ = 1, G1 = 2, G2 = 4. The neural network utilized 63 normalized Gaussian functions, with centers evenly spaced on a lattice in the working environment, with parameters βp = βǫ = βα = 0.1,νǫ = να = 0.1. When there is no inner-loop control the haptic device uses Ks = 1. Without loss of generality, when inner-loop backstepping control is applied the force magnification is chosen to be Ks = 3. This magnification is relative in any case and would be under the control of the human operator to achieve a desired feel. V. R ESULTS The proposed tuning-function method is compared to overparameterized backstepping and to direct force application

−3

−3

8

15

Applied Force (N)

Measured Force (N)

x 10

10

5

x 10

6 4 2 0 −2

0

0

5

10

15

20

25

0

5

10

Time (s) x 10

8 Proposed Method Backstepping Direct Force

15

10

5

Applied Force (N)

Measured Force (N)

15

20

25

Time (s) −3

−3

x 10

Proposed Method Backstepping Direct Force

6 4 2 0 −2

0

0

0.002

0.004

0.006

0.008 Position (m)

0.01

0.012

0.014

0.016

Fig. 5. Measured Forces: the proposed method has comparable collision force to the backstepping method without tuning functions. Oscillations of the tool tip immediately after collision are quickly dampened in the proposed method.

(force applied by the human is (3) with no inner loop). The proposed method achieves velocity tracking comparable to direct force application (Figure 4). With all three approaches the velocity overshoots initially, but the proposed method can reach the desired velocity faster, about 1.5 seconds. The proposed method has 50% less velocity overshoot at the puncture compared to the direct force method and about 25% less overshoot compared to backstepping without tuning functions. After the elastic collision with the surface, a settling time 90% faster than the direct force method is achieved and 70% faster than backstepping without tuning functions. The proposed method hits the surface with 60% less force than the direct force application (Figure 5) but hits the surface with comparable force to the backstepping technique without tuning functions. This is important from a practical point of view, because force sensors are expensive and reducing impact forces could have substantial economic benefit for surgical devices. Our proposed method does filter out high frequency oscillations when the tool hits the surface compared with the other two methods. The proposed method exhibits a control signal which is just as smooth as the other applications (Figure 6). This is important because a poorly-designed closed-loop control has the potential to create non-smooth signals which could excite unmodeled dynamics (higher frequencies), both in the robot and the contact surface. Exciting unmodeled dynamics must be avoided in surgical applications. VI. C ONCLUSIONS An adaptive backstepping approach with tuning functions provides an inner-loop for a force-force bilateral control. Utilizing a neural network allows the method to adapt to unmodeled environments. The design achieves tracking of a desired force, yet can still slow the mechanism down automatically when puncturing or colliding with a solid surface. This is an important quality when the human operator experience significant time delay. In a 1 DOF simulation

0

0.002

0.004

0.006

0.008 Position (m)

0.01

0.012

0.014

0.016

Fig. 6. Control Forces: the proposed method demonstrates similar smoothness in applied force.

with both puncture and collision as well as significant time delay, the proposed method outperforms both direct-force application (no automatic control) and an over-parameterized adaptive backstepping design. A PPENDIX A positive-definite Lyapunov candidate function for the first step of backstepping is V1 =

1 T 1 1 2 ˜ǫ w ˜ ǫ. p˜ + s + w 2 2βp 2βǫ

(31)

The time derivative is 1 ˙ 1 T˙ ˜ w ˆ ǫ. V˙ 1 = ss˙ − p˜pˆ − w βp βǫ ǫ

(32)

Expanding s˙ gives s˙ = Λǫ˙ + x ¨, = Λ(F˙m − F˙ d ) + M −1 (−Dr x˙ − Fm + Fc ),

(33)

(34) −1 ˙ ˙ = Λ(Kx + K x˙ − Fd ) + (ΛDm + M )(−Dr x˙ − Fm + Fc ). (35)

Subbing in the neural network model (14) and adaptive parameter (15) gives s˙ = −ΛF˙ d + φǫ wǫ + dǫ + (p + dp )(−Fm + Fc ),

(36)

and the Lyapunov time derivative becomes h i V˙ 1 = s −ΛF˙ d + φǫ wǫ + dǫ + (p + dp )(−Fm + Fc ) −

˜T w ˆ˙ ǫ p˜pˆ˙ w − ǫ . βp βǫ

(37)

Introducing the virtual control α and the virtual control error z, h i ˆ ǫ + δ1 + pˆ(−Fm + z + α) V˙ 1 = s −ΛF˙ d + φǫ w ! „ « ˆ˙ ǫ pˆ˙ w T T ˜ ǫ φǫ s − , + p˜ s(−Fm + Fc ) − +w β β

(38)

where uncertainties are contained in δ1 = dǫ + dp (−Fm + Fc ).

(39)

Using the designed virtual control (20), tuning function definitions and weight error results in V˙ 1 =sˆ pz − G1 s2 + sδ1 „ « pˆ˙ ˜ Tǫ + p˜ τp − +w βp

z]T and w =

˜ − νkwk ˜ 2, V˙ 2 ≤ −Gkek2 + δmax kek + νkwkkwk ˆ˙ kǫ w τǫ − βǫ

!

.

(40)

An over-parameterized design would use these functions as the weight/parameter updates immediately. When using tuning functions, choice of weight update occurs at the next step. The second backstepping stage requires a final Lyapunov function V2 = V1 +

constant.Then defining G = min(G1 , G2 ), e = [s [p wTǫ wα T ]T results in

1 T 1 2 ˜ w ˜ α. z + w 2 βα α

(41)

Taking the time derivative gives „ « pˆ˙ 2 ˙ V2 =sˆ pz − G1 s + sδ1 + p˜ τp − βp ! ˙ ˆǫ w 1 T˙ ˜ Tǫ τǫ − ˜ w ˆ α. +w w + z(F˙c − α) ˙ − βǫ βα α

(43)

Determining α ˜˙ is largely an algebraic process and is omitted from the stability proof. The reader may easily verify the proof by understanding that α ˜˙ contains the error between unknown terms in α˙ and the estimates of these respective terms in α ˆ˙ (the expression (22) is also required). Since many of the terms in α˙ are known there are a lot of terms that drop out of α ˜˙ . The final result is that V˙ 2 = − G1 s2 − G2 z 2 + sδ1 + zδ2 « « „ „ pˆ˙ ∂φǫ ˆ ǫ + G1 pˆ−1 z + τp ) − w + p˜ (−Fm + Fc )(φTǫ ∂s βp ! „ « ˙ ˆǫ ∂φǫ w ˜ Tǫ φTǫ ˆ ǫ + G1 pˆ−1 z + τǫ − +w w ∂s βǫ ! ˆ˙ α w T ˜ α −φα wα z − +w , (44) βα where uncertainties have been included in « „ ∂φǫ ˆ ǫ + G1 pˆ−1 ((−Fm + Fc )dp + dǫ ). δ2 = dα + w ∂s

(45)

A final substitution of the weight (or parameter) update laws results in the complete Lyapunov function V˙ 2 = − G1 s2 − G2 z 2 + sδ1 + zδ2 ˜ Tǫ w ˆ ǫ + να w ˜ Tα w ˆ α. + νǫ w

˜ plane. implying V˙ 2 < 0 outside a compact set on the (kek, kwk) This result guarantees uniformly ultimately bounded (UUB) signals. If one cannot establish bounds on the forces, utilizing nonlinear damping terms in the (virtual) control terms results in bounded signals [14]. A practical way to obtain bounds on the forces is to saturate them in the system. In an over-parameterized design these issues are very important because the weights are prone to drifting to large magnitudes because the sign of the weight update is directly related to the sign of the output error. The tuning-function method, however, achieves a large degree of inherent robustness because the sign of the weight update is no longer directly related to the sign of the output error, naturally limiting weight drift in practical application.

R EFERENCES (42)

Substituting in the designed F˙c , « „ pˆ˙ 2 ˙ V2 = − G1 s + sδ1 + p˜ τp − βp ! ˙ ˆǫ w 1 T˙ ˜ Tǫ τǫ − ˜ w ˆ α. +w w − zα ˜˙ − βǫ βα α

(47)

(46)

If one can establish limits on the forces the uncertainties become bounded by kδk ≤ δmax , where δ = [δ1 δ2 ]T and δmax is a positive

[1] K. Eom, I. Suh, and B.-J. Yi, “A design method of haptic interface controller considering transparency and robust stability,” in Proc. IEEE/RSJ Int’l Conf. Intell. Robots and Systems, pp. 961–966, 2000. [2] S. Hirche, M. Ferre, J. Barrio, C. Melchiorri, and M. Buss, “Bilateral control architectures for telerobotics,” Springer Tracts in Advanced Robotics, vol. 31, pp. 165–176, 2007. [3] D. Lawrence, “Stability and transparency in bilateral teleoperation,” IEEE Trans. Robots. Autom., vol. 9, pp. 624–637, 1993. [4] Y. Yokohohji and T. Yoshikawa, “Bilateral control of master-slave manipulators for ideal kinesthetic coupling-formulation and experiment,” IEEE Trans. Robots. Autom., vol. 10, pp. 605–619, 1994. [5] K. Hashtrudi-Zaad and S. Salcudean, “Transparency in time delay systems and the effect of local force feedback for transparent teleoperation,” IEEE Trans. Robots. Autom., vol. 18, pp. 108–114, 2002. [6] M. Ferre, J. Barrio, C. Melchiorri, J. Bogado, P. Castedo, and J. Ibarra, “Experimental results on bilateral control using and industrial telemanipulator,” Springer Tracts in Advanced Robotics, vol. 31, pp. 177– 190, 2007. [7] G. Niemeyer and J. Slotine, “Stable adaptive teleoperation,” IEEE Journal of Oceanic Engineering, vol. 16, pp. 152–162, 1991. [8] J. Ryu, D. Kwon, and B. Hannaford, “Stable teleoperation with time-domain passivity control,” IEEE Trans. Robots. Autom., vol. 20, pp. 365–373, 2004. [9] J. R. B. Hannaford, “Time-domain passivity control of haptic interfaces,” IEEE Trans. Robots. Autom., vol. 18, pp. 1–10, 2002. [10] B. E. Miller, J. Colgate, and R. A. Freeman, “Guaranteed stability of haptic systems with nonlinear virtual environments,” IEEE Trans. Robots. Autom., vol. 16, pp. 712–719, 2000. [11] K. Brady and T. Tarn, “Internet-based remote teleoperation,” in IEEE International Conference on Robotics and Automation, (Leuven, Belgium), pp. 65–70, 1998. [12] P. Arcara and C. Melchiorri, “Control schemes for teleoperation with time delay: a comparative study,” Robot. Autom. Sys., vol. 38, pp. 49– 64, 2002. [13] M. Krstic, I. Kanellakopoulos, and P. Kokotovic, Nonlinear Adaptive Control Design. New York: Wiley, 1995. [14] C. Macnab, G. D’Eleuterio, and M. Meng, “CMAC adaptive control of flexible-joint robots using backstepping with tuning functions,” in IEEE International Conference on Robotics and Automation, (New Orleans), pp. 2679–2686, 2004. [15] Y. Fung, Biomechanics: Mechanical Properties of Living Tissues. New York: Springer-Verlag, 1993. [16] D. Richert and C. Macnab, “Direct adaptive force feedback for haptic control with time delay,” in IEEE International Conference Science and Technology for Humanity, (Toronto), 2009.