2. Proposed Bilateral Telerobotic system
2.3 Model definitions and signal flow formulation
Before the discussion of the proposed control strategies, we first describe the models of the master and slave systems. Refer to Fig. 2.4, the dynamics of the single DOF master/slave system are modeled as a mass-damper system:
Mmx tm( ) B+ mx tm( )=u tm( )+ fh( )t
e )
(2.2)
Msx ts( )+ Bsx ts( )=u ts( )− f t( (2.3)
where x and u denote position and control input torque, respectively, M and B mass and viscous coefficients with subscript ‘m’ and ‘s’ denoting the master and slave, respectively, fh the force applied on the master by the human operator, and fe the force exerted on the slave by its environment.
Fig. 2.4 Dynamic models for the one-DOF master-slave system.
The major signal flows in the proposed bilateral telerobotic system are as shown in Fig. 2.5, wherexmd, vmd, and fhd are the position, velocity, and operating force, respectively, transmitted from the master to the slave, and fed is the feedback force, transmitted from the slave to the master. We formulate the delayed signals as
xmd( )t =x t T tm( − 1( )) (2.4)
vmd( )t =v t T tm( − 1( )) (2.5)
( ) ( 1( ))
hd h
f t = f t T t− (2.6)
( ) e( 2( ))
fed t = f t T t− (2.7)
where T1(t) and T2(t) are the transmission time delays from the master to slave and from the slave to master, respectively. Note that these delays vary along with time t, and also the direction as well as the computer network condition [16].
Because the working condition of the master is different from that of the slave, the delayed signals out of the communication block, described in Eqs.(2.4)-(2.7), may need to be scaled up or down. With the scaling factors, the relationship between the master and the slave on position and force are formulated as:
( ) ( )
s p md
x t =k x t (2.8)
( ) ( )
m f ed
f t =k f t (2.9)
where x denotes the slave position command, s f is the applied force on the m master, and kp and k the constant position and force scaling factor, respectively. f
Fig. 2.5 Signal flows in the proposed bilateral telerobotic system.
Chapter 3
Proposed Control Strategies
In Chapters 1 and 2, we have described the proposed Internet-based bilateral telerobotic system and the problems invoked by the time delay. In this chapter, we give detailed descriptions of the proposed bilateral control strategies. We then analyze the stability and transparency of the system and comment on the synchronicity issue.
Because the inherent varying time delay problem in the computer networks, some researchers propose the event-based control method to construct an event -synchronized teleoperation system instead of time to eliminate the asynchronous phenomenon in the communication links. Due to its popularity and effectiveness, we also develop an event-based teleoperation system for performance comparison.
Fig. 3.1 shows the block diagram of the proposed bilateral telerobotic control scheme, including the impedance controller for the master to reduce the reflected force imposed on the joystick and the sliding-mode-impedance controller for the slave to deal with command tracking and maintain force stability. In Fig. 3.1, x t , m( ) v tm( )
denote the master position, velocity, respectively, x t , the slave position, s( ) , the master site control input, , the slave site control input,
m( ) u t
s( )
u t f t , the operating h( )
force, and f t , the force exerted on the slave by its environment. e( )
Fig. 3.1 Block diagram of the proposed bilateral telerobotic control scheme.
3.1 Impedance controller
In the bilateral telerobotic system, the master must reflect to the human operator the contact force between the slave manipulator and the environment. With the impedance controller, the relation between the operating force, master position, and the contact force from the slave can be regulated to a desired impedance characteristic, and, the impact force reflected on the human operator can be scaled down to a safe range, preventing the master from damage by too large contact force. For this, the desired impedance characteristic is specified for the master as
Mx tm( )+Bx tm( )+Kx tm( )= f th( )−k ff ed( )t (3.1)
where M, B, and K denote the desired inertia, damping, and stiffness, respectively,
m( )
x t , ( )x tm , and x tm( ) the master position, velocity, acceleration, respectively, k , f the force, position scaling factor, respectively,
kp fed( )t the delayed force signal
from the slave, and f t the force applied on the master by the human operator. By h( ) combining the dynamics of the master system, described in Eq.(2.2), with its desired impedance characteristic, described in Eq.(3.1), the control input for the master
can be obtained as
Sliding-mode control is recognized as a robust control method in the presence of modeling uncertainties and external disturbances [34]. In our previous works, the sliding-mode controller was used for path tracking in unconstrained motion under varying time delay. And, the compliance controller was used for force stability in constrained motion. With two controllers, the system was complicated and control inputs might switch, thus susceptive to system instability.
Therefore, we propose using the sliding-mode-impedance controller. Impedance control is a well known position/force control method which specifies a relation between external force and the slave position. Together with the sliding-mode control, the sliding-mode-impedance controller utilizes the robust property of the sliding-mode control against uncertainties, such as external disturbance and varying
time delay. In this controller, the sliding surface includes a desired impedance characteristic of the slave, and the slave exhibits its desired impedance behavior when the controller satisfies the sliding condition. The control law design is described as follows.
A target impedance characteristic for the slave to perform a compliance task under varying time delay is specified as
m xssd′′( )t +b xssd′( )t +k xssd( )t = −f te( ) (3.3)
where m , s b and s k are the desired inertia, damping coefficient, and stiffness, s respectively, and
( ) ( ) ( )
sd s p md
x t =x t −k x t (3.4)
xsd′( )t =x ts( )−k xpmd( )t (3.5)
xsd′′( )t =x ts( )−k xpmd( )t (3.6)
As mentioned before, the purpose of this controller is to force the slave’s impedance behavior toward the target impedance. Thus, the impedance error,I t , is e( ) defined as
e( ) s sd ( ) s sd ( ) s sd( ) e( )
I t =m x ′′ t +b x ′ t +k x t + f t (3.7)
Next, we define the sliding function as
Therefore, it is clear that when the sliding condition is satisfied, then the trajectory of will approach and slide on the sliding surface (
( )
s t s t( )= ), which implies that 0
e( )
I t will approach to zero, thus, the slave will exhibit the desired impedance behavior. Then, by time shifting , we can derive the delayed master acceleration signal from Eq.(3.1) as in Fig. 3.1. Substituting Eq.(3.9) into Eq.(3.8), we can obtain
0 0 1
By differentiating Eq.(3.10) with respect to time t, we can obtain the first order differential equation of s t( ) as
From the dynamics of the slave system described in Eq.(2.3), we can obtain the slave uncertainties like the randomness of time delay, the sliding-mode-impedance control law for the slave can then be obtained as
s( ) reducing the chattering of the control input, and a saturation function defined as
3.3 Stability analysis
The basic concept of sliding-mode control is to force the system states toward a sliding surface in the presence of modeling uncertainties and external disturbance.
When the control input satisfies the approach and sliding condition of
s t s t( ) ( ) < −σ s t( ) (3.16)
where σ is the approaching rate and σ >0, the system states will approach the sliding surface ( ) in a finite time. It has been shown in [34] that if the Lyapunov function is selected as
( ) 0 s t =
1 2
L= sTs (3.17)
The sliding condition described in Eq.(3.16) will be satisfied when . Obviously, in Eq.(3.17), and , only when
Because the sliding function is first order differentiable with respect to time, we can obtain the derivative of Eq.(3.17) as
L =s t s t( ) ( ) (3.18)
By substituting Eq.(3.19) into Eq.(3.18), it leads to control law. Thus, is really a Lyapunov function and gradually converge to zero with the proposed control input. Therefore, will also approach to zero in a finite time.
L
( ) s t
Next, we multiply both sides of Eq.(3.19) with s t( ), which leads to
Then, by substituting Eq.(3.21) into Eq.(3.16), we can obtain
kg >Ms⋅ (3.22) σ We found that the nonlinear gain k in Eq.(3.22) consists of only constant values, g
not the function of varying time delays, T t1( )and T t2( ). It means that k can be g selected independently of the time delay and the scaling factors. Thus, with proper gain, , the trajectory is kept in the region around the sliding surface. In this case, the slave exhibits the target impedance characteristic since
kg
e s 0
I =m s≈ .
3.4 Transparency
In addition to stability, we also need to consider another important factor, transparency. Ideally, the teleoperation system would be completely transparent, so the ‘feel’ of remote environment at the slave can be faithfully preserved during task execution. In general, transparency can be quantified in terms of the match between the mechanical impedance of the environment encountered by the slave and that felt by the human operator.
In Fig. 3.2, the teleoperation system is modeled as a two-port network, where the operator-master interface is modeled as the master port and the slave-environment interface as the slave port. The relationship between efforts (f , h f ) and flows (e x , m
x ) can be described in terms of the so-called hybrid matrix obtained from the s
properly controlled master and slave behaviors described in Eqs. (3.1) and (3.3). Thus, the hybrid matrix for the teleoperation system and its parameters are formulated as
11 12
( )
From above, we can express the transmitted impedance “felt” by the operator as
11 22 12 21
By investigating Eq.(3.29), we found the conditions for satisfying completely transparency (Zt =Ze) to be
In practice, completely transparent teleoperation is not possible. There are many factors that influence transparency during teleoperation, such as varying time delay, system architectures, and the bilateral control strategies. Thus, we consider the degree of transparency to be achieved when system stability is guaranteed. By combining Eqs. (3.28) and (3.29), we can obtain the impedance transfer function as
( ) t
e
T s Z
= Z (3.31)
We can then analyze the degree of transparency by finding the magnitude and phase response of Eq.(3.31) in frequency domain.
Fig. 3.2 A two-port representation of a telerobotic system.
3.5 Synchronicity
The use of Internet to support the communication between the master and the slave is quite attractive due to its worldwide availability. However, the bandwidth limitation and the varying time delay inherent to communication networks can obstruct a system to meet the real-time requirement. Although Transmission Communication Protocol (TCP) can handle the loss of packets, it is still unsuitable for real-time application because of the inherent varying time delay in its transmission mechanism. For instance, if the messages are lost, TCP attempts to recover it by retransmission until it is correctly received and delays any received messages until they can be delivered by the same order they were sent. This kind of mechanism is not desired for real time application.
Some mathematical models of the delay characteristics in Internet have been developed so that the operator can control the remote robot system more accurately.
However, the packet exchange in the Internet is heavily affected by the packets’ routes and routing algorithms at each node they traverse. Therefore, it is extremely difficult to directly compensate for the randomness of time delay to achieve real-time teleoperation. Besides, some other communication protocols, like Real-time Transport Protocol (RTP), have been applied for real-time applications. However, these protocols still do not meet the true real-time requirements because they only support a best-effort service on a first-come, first-served basis. There is still a long way to go to develop a real-time interactive teleoperation system.
3.6 Event-based teleoperation system
Because the asynchronous between the master and slave is mainly due to the varying time delay in the communication links, some researchers suggest that if a non-time based action reference variable instead of time is used to drive the system, it would become immune to time delay. Generally, this action non-time reference is called event. The event-based controller design is first introduced in [29]. Several studies and applications followed [28,6-9]. In this section, we utilize the concept of the event-based control to develop an event-based teleoperation system for system performance comparison with the proposed scheme. In event-based control, time is no longer a synchronized reference. A non-time-based action reference, usually denoted by , is used to replace time as the action reference in the system. For a path-based approach described in [28], with a predefined given path , shown in Fig. 3.3, we can obtain the current value of action reference value by measuring the current output of the robot system. Let be a measurement of the robot position, and the point correspond to a point in the given path that has the minimum distance from to the given path, that is, the orthogonal projection of to the given path. The path-based action reference is then defined as the distance traveled from to along the given path . Based on , a desired input can be obtained from path-based motion plans [28]. However, when the event-based control is used for bilateral teleoperation system, there is no predefined path, since the path is generated in real-time by the operator based on the feedback received. Thus, some modification has to be made, as described below.
s
Fig. 3.3 A diagram of action reference for path-based control.
3.6.1 Event-based control for teleoperation system
We have developed an event-based teleoperation system, with its system architecture shown in Fig. 3.4, where F sh( ),Xm(s and ) denote operating force, position and velocity commands, respectively, denotes the measurement of contact force between the slave and environment at current event, s denotes the event in an event-based teleoperation system, which is chosen as the command number. Based on the desired position and velocity commands, the developed discrete sliding-mode controller is used to generate proper control input to move the slave of the event-based teleoperation system.
m( ) V s
e( ) F s
Fig. 3.4 System architecture of the event-based teleoperation system
For illustration, Fig. 3.5 shows the flowchart of the algorithm for this event-based teleoperation system. The position and velocity commands generated by the master are sent to the remote site via the internet, the next event’s commands will not be generated until the most up-to-date force is received at the local site. Thus, the system is always synchronized in event, but not synchronized in time, because the slave manipulator needs to wait for each event’s command arrive from the master to execute the task. It thus only eliminates the buffering effect that makes the signal flowing in the network invoked by time delay to achieve system synchronicity in event aspect. When the communication delay becomes lager, the slave may exhibit much unsmooth behavior and the measured contact force for the human operator be distorted severely.
Fig. 3.5 Flowchart of the algorithm for the event-based teleoperation system.
For this event-based system, we use the same single DOF master/slave dynamic model described in Eqs. (2.2) and (2.3). The dynamics of the master in event-domain is then described as
(3.32)
The position and velocity command can be obtained by sampling the value of the master position and velocity at the time a new event happens. Because the event-based teleoperation system is triggered by event instead of time, it acts like a
m m
M V sm( ) B+ V sm( )=F sh( )−F se( −1), s=0,1, 2,....
discrete time system, such that the continuous type of slave controller is not adequate to be used in the event-based teleoperation system. The design for control input is described as follows.
By letting state variables be x1=x ts( ), x2 = x ts( ), we can obtain the state equation of the slave as
1 1
Then, by digitalizing the continuous form of the state equation in Eq.(3.33), we can obtain its discrete form as
x(s+ = Α ⋅1) d x( )s +Bd⋅( ( )u ss −F se( )) (3.34)
=
∫
A ⋅Bd s
s
where , , denotes the event, and T sampling period (the round-trip delay in this system). Based on the tasks requirements that the slave should perform both path tracking and impact force reduction, a linear switching function is given as
where is a scaling factor for position and velocity commands. Refer to [11], if the reaching law is satisfied as
kp
the trajectory of the system states will move monotonically toward the switching
plane ( ) and zigzag around it in a finite time. Thus, by substituting Eq.(3.35) into Eq.(3.36), we can obtain Eq.(3.37):
d 0
By further substituting Eq.(3.34) into Eq.(3.37) for solving , we can obtain the control law of the event-based teleoperation system as
s( ) derivation, because they can be compensated for by selecting ε and properly. q
Chapter 4
Simulations
To verify the feasibility and effectiveness of the proposed scheme, we perform a series of simulations based on a 1-DOF bilateral telerobotic system. The dynamic models of the master and slave systems are described in Eqs. (2.2) and (2.3). The plant model uncertainty is neglected and assumed to be zero for concerning only the time delay effect on the bilateral telerobotic system. In the following simulations, the plant parameters are set to be Mm =0.5Kg and Bm =1.5 s /N m for the master, and and for the slave. For the impedance controller on the master, the desired impedance parameters described in Eq.(3.1) are set to be
, , and
Ms =5Kg Bs =1.5Ns m/
M=0.02Kg B=0.5Ns m/ K=0.04N m/ . For the sliding-mode-impedance controller on the slave, the desired impedance parameters described in Eq.(3.3) are set to be ms =0.05Kg, , and ks =80N/m
1
. The constant position and force scaling factors are set to be Kp = and Kf = , respectively. The boundary 1 layer thickness and nonlinear gain of the sliding-mode-impedance controller are set to
2.1 / bs = Ns m
be ε =0.1 and , respectively. In the simulations, the compliance task to execute is to manipulate the slave to contact with a wall. The impedance controller is installed on the master to reduce the force imposed on the master, and the sliding-mode-impedance controller is installed on the slave to track the movement of the master and maintain a stable contact force. We input into the master commands in the form of a sinusoidal function. The output responses are the positions and contact forces of the slave.
Kg = 02
4.1 Matlab simulation
The PC used for Matlab simulations is P4-2GHz and 256 DDRAM. The operating system and the version of Matlab simulator are Microsoft Windows XP and Matlab ver.6.5, respectively. As the first set of simulations, Fig. 4.1 shows the simulation results in performing the task of interacting with a wall under no time delay condition. Fig. 4.1(a) shows the positions of the master and slave, Fig. 4.1(b) the feedback force for the master and contact force for the slave, and Figs. 4.1(c)-(d) the magnitude of slave and master control inputs, respectively. Because the time delay was not included in the simulation, the positions of the slave followed that of the master closely, contact and reflection forces were very close, and the control inputs for the slave did not invoke chattering, as expected.
In the second set of simulations, we added into the system a constant time delay.
The same compliance task described above was executed. Fig. 4.2 shows the result under constant time delay. We set the forward and backward delay to a constant value of 300 msec and 250 msec, respectively. Fig. 4.2(a) shows that the positions of the slave did follow that of the master after a period of time. Fig. 4.2(b) shows the
waveform of contact forces and feedback forces were the same under constant time delay. The contact force was stable during the compliance task. Figs. 4.2(c)-(d) show the magnitudes of control inputs for the slave and master, respectively.
(a)
(b)
(c)
(d)
Fig. 4.1 Position and force responses of the proposed scheme without time delay: (a) position response (black: master, yellow: wall, red: slave), (b) force response (blue: contact force, red: reflection force), (c) control input for the slave, and (d) control input for the master.
(a)
(b)
(c)
(d)
Fig. 4.2 Position and force responses of the proposed scheme under constant time delay: (a) position response (black: master, yellow: wall, red: slave), (b) force response (blue: contact force, red: feedback force), (c) slave control input, and (d) master control input.
In the third set of simulations, we let the bilateral time delay vary with time. We assumed that the forward delay varied from 30 to 50 msec and backward delay from 40 to 60 msec. Fig. 4.3 shows the simulation results under this delay condition.
Fig. 4.3 (a)-(b) shows the forward and backward delay profiles generated by the Matlab simulator, respectively. Fig. 4.3(c) shows the master and slave position responses. The contact and feedback forces were shown in Fig. 4.3(d). We found that
Fig. 4.3 (a)-(b) shows the forward and backward delay profiles generated by the Matlab simulator, respectively. Fig. 4.3(c) shows the master and slave position responses. The contact and feedback forces were shown in Fig. 4.3(d). We found that