• 沒有找到結果。

A Novel Washout Filter Design for a Six Degree-of-Freedom Motion Simulator

The motion cue performed by a motion simulator is restrained by the workspace of the simulator structure. A typical reasoning is then to build a large motion simulator unless it is for entertainment, which involves in small simulators. This study proposes a novel approach to designing the washout filter of the motion control of a six degree-of-freedom motion simulator for entertainment purposes. Using information obtained from the inverse kinematics of the simulator, the workspace boundary, detected in real-time, is fed into the washout filter as a reference for the motion planning. The main focus of this approach is to make the motion cue feasible for use in a simulator with a restricted workspace, while ensuring the robustness of the driving system. In this paper, different indices are established to specify the performance of the motion cue. A classical linear washout filter was implemented and compared with the proposed washout filter using the performance indices to demonstrate the benefits of the latter.

3.1 Inverse Kinematics

The motion cue control may be also called the cockpit position control, because the position of the cockpit, including both translation and rotation, must be transformed into the coordinates of the six sliders’ ball joints (S to J) using inverse kinematics. The inverse

kinematics of the motion simulator SP-120 (Fig. 3.4) is presented as follows.

As shown in Fig. 3.5, the coordinate of Sipi =Si [pxi pyi pzi]T is determined by

25

2 2

hich all parameters are fixed in the Si coordinate system, where ]

3.2 Preview of Classical Linear Washout Filter (CLWF)

The most widely used CLWF drive rules today are derived from the design of Schmidt and Conrad [13]. Figure 3.1 shows a block diagram of the typical implementation [14].

Modern implementations tend to drive the simulation with angular rates rather than angular accelerations, since this method has generally been found to produce a more realistic cue. As ) is transformed to the inertial reference frame (S to I) and converted into acceleration ( ), obtained by summing gravity ( ) and applied forces before the high-pass filter operation is performed. This approach uses a more convenient frame of reference for generating the commands of the simulator’s driving system.

Similarly, high-pass onset filtering is applied to the scaled Euler’s angular velocity ( ). The low-frequency specific acceleration components are low-pass filtered, and operated upon by a shown in Fig. 3.1, specific acceleration (aAA

aVR gI

ωs

26

"tilt coordinate" block

rates do not exceed the pilot's indifference threshold, which is se

ique is com out

filter, presented in Fig. 3.2.

Washout Filter (YWF)

The limited workspace of the simulator constrains the Euler angles, including roll, pitch lar velocity of the cockpit must be adju

of

, much like that in Schmidt and Conrad's residue-tilt design; the tilt coordinate cross-feed is rate-limited to ensure that the commanded

t to 3 deg/s [23]. As stated above, the CLWF techn bined with the following auxiliary washout filters, yielding a novel wash

3.3 Adjustable Scaling Filter (ASF) and Yawing

and yaw. Therefore, this paper proposes that the angu

sted by a dynamic tuning process called adjustable scaling filtering which involves a nonlinear filter, rather than by purely static scaling down, which would also reduce the active intensity even if the angular rates are originally lower. Applying this nonlinear filter can guarantee that the signals of angular velocities, fed to the simulator are more realistic than those associated with traditional static scaling down, unless the limited workspace is sufficiently large that the magnitude the static scaling factor is approximately unity.

Restated, the degree of scaling down is traded off with the limited size of the workspace, but can be greatly reduced after the ASF is used. The algorithm is as follows.

1 , , 1

,k+ = HPik+

i φ

φ , if ||(φHP,k+1)||2≤φcritical

, 1 , 1 / || , 1 2||

i k i k critical HP k

φ ++ ⋅φ φ + , if ||(φHP,k+1)||2critical (3.4)

27

and,

VR k i k i k

i,, 1 φ, )/t

ω = + − (3.5)

where φi,k and φHP ,,ik both represent the present Euler angles, the latter of which is received from the high-pass filter at time kt ; VR φcritical is the magnitude of a given critical Euler angle; • 2 represents the 2-norm of • ; t is the sampling period of VR; both VR ωi,k and

k i HP ,,

ω are present Euler angular velocities, the latter of which is received from the output of

x, y or z).

if

the high-pass filter at time kt . The subscript i indicates the i-axis (i = VR

Applying the above algorithm greatly improves the rotational performance of the motion simulator, not only to prevent the cockpit from moving outside the limited workspace during pure rotation but also to obtain more realistic angular velocities or attitudes of the platform during real-time VR motion.

Importantly, the platform’s attitude in terms of roll and pitch involves an actual tilt coordination that enables the pilot to feel the component of gravity; thus, the roll or pitch cannot be arbitrarily changed during the restoration unless the attitude is obtained by low-pass filtering of the acceleration along the y- or x-axis, as in residue tilt. Contrarily, the yaw angle is not important: the only concern is the yawing velocity. Therefore, a yawing washout algorithm is proposed as follows.

, 1 , HP,z,k

z k+z critical and ω >ωindiff) or signHP,z,k)= −signz,k)

, ,

, ,k HPzk

z ω

ω =

⇒ (3.6)

28

, 1 , or HP,z,k

if (φzk+ ≥φz critical ω <ωindiff) and signHP,z,k)=signz,k), and ttres,yaw

indiff k

z k

z sign φ ω

ω =− ⋅

, ( , ) (3.7) where φz,critical is the given critical yaw about the simulator; ωindiff is the indifference threshold for angular speed; t and t aw e present restoring time and the total periodic

restoring time, respectively, and

indiff k

z yaw s

y

res, are th

tre, =| φ , |/ω , (3.8)

where,

⎪⎩

⎪⎨

⎧ •• == •• ><

0 ) ( if -1, )

(( ) 1 ,if( ) 0 signsign

=

=

•) 0,if( ) 0 (

sign

Applying the above yawing washout algorithm, the zero-crossing phenomenon does not occur during the yawing washout period, facilitating the other actions including roll, pitch and translation.

3.4 Dead Zone Washout Filter (DZWF)

During the restoration period, the limitations on linear acceleration and angular velocity [24, 25] almost prohibit the restoration of the cockpit to its home position except by extending the restoration period, or when the original motion in VR are at sufficiently low frequencies.

Clearly, extending the restoration time may cause some significant motion to be lost, so this strategy is not favored. Translation with lower frequencies may give enough time to carry the cockpit back stealthily after proper high-pass filtering is performed, but generally, such a

29

motion implies unexcited motion and poorly represents most normal actions. Consequently, a proposed strategy, called de

During the dead time

o zero. Every component of the restoring acceleration must be lower than the indifference threshold (0.17~0.28 [25], here set to 0.017g). Even if the restoring acceleration slightly exceeds the indifference threshold, an adaptive restoring acceleration must be modified as follows, to prevent the workspace boundary from being touched.

ad zone washout filtering, is adept at utilizing time. Dead time is defined as the period during which the linear acceleration is lower than the pilot’s sensible threshold [23]-[25]. Restated, the acceleration enters the dead area during this dead time;

otherwise, it is in the scaled area.

, the cockpit is translated to its home position rather than being R3

from the present position to the nominal workspace boun

where Smax,i is the maximum distance

dary in the direction of the present velocity v ; subscript i indicates the i-axis (i = x, y 0, i

or z).

The next urgent task is to determine the maximum restoration period. Figure 3.6(a) indicates a situation in which the present velocity has the same direction as the present displacement, with reference to the home position. Figure 3.6(b) presents a situation in which the present velocity is in the opposite direction from the displacement. These two cases are

30

both treated by the basic law of kinematics, yielding,

on along the i-axis is opposite neither that of the present velocity nor the present position. Then, the active acceleration along the i-axis ca

, if and ( ) ( ) ( , )

r, and is the present linear velocity along the i-axis.

e d is the distance from the present position to the home position along the i-axis; i

i

Phome , and Pcur ,i are the home position and the present position along the i-axis, respectively; t1 is the per deceleration a is the total restoration period. The velocity is importantly guaranteed to be zero at the restoring timet2.

During the restoration period, the restoring action will continue unless the direction of accelerati

where aHP ,i represents the linear acceleration along the i-axis, received from the output of high-pass filte vcur i,

Like the yawing washout, the DZWF procedure involves no zero-crossing and improves the rotational performance. Restated, it greatly reduces the cross coupling of rotation and translation.

31

3.5 Structure of the Adaptive Washout Filter (AWF)

This DZWF algorithm cannot always guarantee that the cockpi leave the actual workspace because not all of the workspace bo

adding an adaptive washout filter is proposed to compensate for the insufficiency of the prior proposed filte

J), the w t func m

at , as described in section 3.1.

ckpit from exiting its limited workspace. Figure 3.7 depicts a trajectory along the i-axis propo

washout motion, initially making the pilot feel an instantaneous linear acceleration and later carrying the cockpit to its starting position stealthily in the period

t of simulator does not undaries are very explicit.

Therefore,

rs and thus accommodate the more severe restrictions, such as the smaller workspace and the limited driving current. The AWF involves the transformation (S to

ashou tion (Fig. 3.3(a)) and the self-tuning process (Fig. 3.3(b)).

3.5.1 Transfor ation (S to J)

The transformation (S to J) is presented using inverse kinem ics

3.5.2 Washout Function

The purpose of the washout function (Fig. 3.3(a)) is to prevent the co

sed to plan the

f

d t t

t ≤ ≤ . The planned

trajectory is as follows.

The continuous trajectory P(t)∈R3 of the translation of the cockpit consists of two cubic polynomial segments.

P(t) =P1(t)+P2(t) for 0≤ttf (3.14)

32

where the vectors P1(t) and P2(t) are in R ; 3 )

1(t

P = 0 for td ≤ and t )

2(t

P = 0 for t < td

The P(t) at tf is the desired target position and that at t is the transition position. At least d

eight constraints on P(t) are evident. The initial and final values of the function are constrained.

P(0) = 0, P(t ) = 0. f

Continuity at the transition position yields,

function yields continuous velocities, implying that the initial and transitional velocities’

P1(td-) = P2(td+).

The

vectors (R ) are both continuous and the final velocity’s vector is zero in the procedure of 3 washout motion planning, and can be expressed as,

v(0) =v , v(0 t ) = 0, vf 1(td-) = v2(td+).

A further constraint is that the transition acceleration must be continuous:

a1(td-) = a2(td+) ∈R3.

The following equation implies that the initial acceleration must fulfill the demands of VR –

to en aneo

whe is the linea ration re

sure that the pilot feels an instant us linear acceleration.

3 1(0)= arefR a

re aref r accele ceived from the output of the DZWF. These eight

33

constraints can be used to determine two co ecutns ive cubic polynomial segments, since two such segm xactly oefficient vectors.

P1(t) b2t b3t (3.15) c

ents have e eight c

= b0+b1t+ 2+ 3

P2(t) = +c1t+c2t2+c (3.16) 3t3 where the eight vectors,

0

0, , , , , , , 1 2 3 0 1 2 and 3

b b b b c c c c are all in R . The vectors of 3 velocities and accelerations along the path are derived as follows.

2t+ b (3.17) 3 3t (3.18)

3 1( )t = &1( )t =

v P b1+2b 2

2( )t = &2( )t =

v P c1+2c2t+3c3t2

1(t = &&1( )t =

a ) P 2b2+6b (3.19) t

2( )t = &&2( )t = bin

et

a P 2c2+6 tc (3.20) 3

Com ing Eqs. (3.15) to (3.20) with the eight constraints yields eight-by-three constrained equations in eight-by-three unknowns. L tdtf , where 0<κ <1. Now,

(3.21) (3.22) (3.23)

(3.25)

= (2 (1+

b =0 0

b1=v 0 b2= aref /2

b = (23 arefκt +2f v0κ+aref t +4f v ) / (6 0 κt ) (3.24) 2f c = -0 κ2 t (f aref t +4f v ) / (60 (1−κ)2)

2

c1 v0 κ )+ ) / (2 ) (3.26)

= (

arefκtf (1−κ)2

c2 aref κ2t -4f v -20 arefκt ) / (2f tf (1−κ)2) (3.27)

34

c = (-3 arefκt (3-2f κ)-2v (3-0 κ2)) / (6(1−κ)2 t2f ) (3.28) From Eq. (3.20), the maximum linear deceleration is a2(td), and,

a

whe t i represent

of along the i-axis. Equa

ration. The magnitude of must be constrained be

from becoming aware of this restor The maximum displacem second segment of the polyno

The m im washou nction

P Pi 2,P

which u d to d m

3.5.3 S

Th turation th driv g nt also co

threshold d

i t

a2, ( ) (3.29)

re the subscrip s the three mutually orthogonal axes (x-, y-, and z-axis), and

2,i( )d

a t is the component tion (3.28) implies that κ can be

treated as a ratio to constrain deceleration during the resto )

2(td

a

deceleration low an indifference threshold athreshold to prevent the pilot ation [25].

ent is at a stationary value when the velocity is zero. For the mial,

v2(t) = c1+2c2t+3c3t2 = 0 which yields,

PMAX = t (2f v0 ,i(1+κ2)+aref ,iκt ) / (2f v0 ,i(3-κ2)+aref ,iκt (3-2f κ)) > t (3.30) d t2,

ax um displacement along the i-axis is obtained by substituting

PMAX

t2, into the i-axis t fu P ti( ), such that,

i

AX , = ( )

t MAX (3.31)

M

will be se eter ine whether the washout planning is executed.

elf-Tuning Process (Fig. 3.3(b))

e sa of e in curre nstrains the performance of the simulator,

35

and ma o motor t

m. Additionally, motion may sometimes still violate the works

proposed to guarantee that the syst

2. C

to the preceding questions is positive, let the linear acceleration and the angular velocity be multiplied by two appropriately predetermined

ctions,

y cause the angular speed of the serv o exceed its critical value and, causing a problem related to the robustness of the driving syste

pace after filtering, because the indifference threshold of deceleration always limits the washout efficiency. Thus, a final check on the self-tuning process is em of motion simulator is robust. The following steps determine the rules.

1. Calculate whether the commanded velocity fed to the driving system exceed the critical value.

alculate whether the cockpit will be outside the limited workspace.

3. If at least one of the answers

) ( a

pa λ and pωω)

scaling fun , respectively. Then, redo steps 1 and 2 until the

answer e b n the er op ed mor s

otal c mands of real-time programming.

The following two simp

(3.32)

he cockpit’s present linear acceleration and angular velo

s ar oth egative or it ative lo is perform e than n time , where n is the number limit in this chapter preset by considering whether the t alculation time will meet the de

le equations represent the above strategies.

) ( a

n a refp λ

= a

a and ω= ωrefpωnω)

where aR3 and ωR3 represent t

city, respectively; a and ref ω (Fig. 3.2) are the linear acceleration received from the ref

36

output of DZWF and the angular velocity that combines the output of ASF with the tilt coordination, respectively. The functions paa) and pωω) are the adaptive scaling functions of linear acceleration and angular velocity, respectively. The adaptive scaling factors

λa and λω are properly predicted before the first simulation test and are later tuned offline by inducing an empirical rule to obtain a heuristically selected pair of adaptive scaling factors, as described in the next section.

P120 is specified by a 3.6 Performance Index

In this paper, the VR motion fed to the specific motion simulator-S performance index (PI) combined with two cost functions, Ea,k and Eω,k.

determined by the self-tuning process online. By considering the dimensions of Eqs. (3.33) and (3.34), the adaptive scaling functions paa) and pωω) n be properly defined,

⎪⎨

paa)=λa2, 0≤λa ≤1

(3.37) ca

= , 0 1

)

( ω ω ω

ω λ λ λ

p

where

⎪⎩

λa and λω erations ex

are both set to constant values during one test, provided that the total number of it ceeds zero, such that nk ≥1. Otherwise, λaω =1, provided that the answers in both steps 1 and 2 in the first loop of the self-tuning process are negative, such

The magnitudes of the two weighting parameters and represent the relative significances of linear acceleration and angular velocity, respectiv ly, determined by the pilot’s response. The proper values are set to (0.5, 0.5), af n with ten pilots. A smaller PI implies more realistic motion. To yield a smaller PI, fects of using many different pairs of adaptive scaling factors are observed and an em rule induced o

to obtain a heuristically selected pair ( , ), which is in future tests ted in the self-tuning process and used instead of the old adaptive scaling factors.

Equations (3.33) ~ (3.37) state that the PI is function of that 0nk = .

Wa Wω

e ter consultatio

the ef

pirical ff-line

to be substitu

*a

λ λ*ω

λa, λω and , where is also coupled with the adaptive scaling factors and varies irregularly with the samp number k; that is, the PI is not an explicit function of

nk n k

ling

λa and λω, so obtaining an optimal pair of adaptive scaling factors by directly minimizing the PI is difficult. Furthermore, the PI is determined instantaneously after online testing, which in turn is performed after the

38

adaptive scaling factors are determined off-line. Thus, these two factors must be correctly predetermined. The values of these two cost functions after many test runs using different adaptive scaling factors, indicate that a tradeoff exists between λa and λω to reduce the

magnitude of PI. One of the rules of thumb is that the extreme values of Eq. (3.35) may be at the boundaries of λa and λω. Accordingly, the corresponding set of adaptive scaling factors may be,

(3.38) where the set (0, 0) is irrational. This result implies that the heuristica lected set of adaptive scaling factors always tends to one direction (toward (1, 0) or (0, 1)), determined by comparing the magnitudes of and

For example, if exceeds in the pr then the degree of self-tuning of the angular velocities may be too small to perform more difficult specific actions. Therefore, in the following test, the adaptive scaling factors are adjusted using above heuristically selected results ((1, 0)) to reduce the magnitude of . If is reduced normally but still exceeds after the second test, then the probably optimal set of adaptive scaling factors is (1, 0); otherwise, performing the third test by substituting the set (0, 1) into the self-tuning process, and then comparing the magnitudes of PI obtained in these two tests, enables the other set of adaptive scaling factors to be heuristically selected.

Restated, the set of adaptive scaling factors must be sought at least twice, implying that one of )

1 , 0 ( or ) 0 , 1 ( ) ,

a* λw* =

lly se

) (Ea

RMS RMS(Eω). )

(Eω

RMS RMS(Ea) eceding test,

the

) (Eω

RMS RMS(Eω) )

(Ea RMS

39

the magnitudes of PI in the second and third tests is heuristically selected.

3.7 Experimental Results and Comparison

A specific VR motion of an automotive system and its dynamics are considered to apply the proposed washout filter to the motion simulator SP-120. Moreover, real-time software was developed to demonstrate the advantages of the proposed control strategy and this technique is compared with the classical one. The following figures represent Euler’s angular velocities

ωx and ωy as pure rotational velocities. That is, the residue-tilting effect was omitted during the processing of data.

Figures 3.8 and 3.10 show the data concerning linear accelerations along the x-axis and

Euler ties (ωx) e segmen

ler’s angular velocities (

’s angular veloci for the thre ts. These data were obtained from the scaled VR dynamic output (a ,s ωs) and the simulator’s two outputs using the control

strategies of CLWF and the proposed washout filter. Figures 3.9 and 3.11 present the segmental errors of linear accelerations along the x-axis and Eu ωx), respectively. The two sets of errors between the scaled VR dynamic output and the simulator’s outputs obtained using the control strategies of CLWF and the proposed washout filter. As shown in these figures, the maximum acceleration along the x-axis is around 0.3g and most of the scaled linear accelerations (a ) and scaled angular velocities (s ω ) can be s simulated by applying the novel washout filtering to the simulator, which works in a relatively

are both

40

small workspace, as stated in Table 3.1 [22]. In contrast, the CLWF technique performs very oorly with such a simulator. Sometimes, the acceleration may drop back to zero because the Linear accelerations or angular velocity may have been

SP- oti

, and PI, using various static scaling facto

abl e effici

tiv p

current of the driving system is saturated.

maintained in a particular direction for so long that the current of the driving system may exceed the critical value. The proposed strategy maximally suppresses cases in which the linear acceleration drops back to zero.

As shown in Figs. 3.8 to 3.11, the proposed washout filter outperforms the CLWF in the 120 m on simulator. Table 3.2 compares the CLWF with the proposed washout filter in terms of the magnitudes of RMS(Ea) RMS(Eω)

rs (s ,a sω) successively, to scale the linear accelerations and the angular velocities of the

dynamic output of VR. In T e 3.2, the performance obtained when CLWF is applied to the simulator SP-120 shows that th ency associated with the simulated scaled data (a ,s ωs)

is better when the static scaling factor is smaller. This finding implies that the CLWF technique may be suited to a simulator with a large workspace but not one that operates in a

is better when the static scaling factor is smaller. This finding implies that the CLWF technique may be suited to a simulator with a large workspace but not one that operates in a