• Tidak ada hasil yang ditemukan

Nonlinear Control of Robotic Systems

Chapter III: Preliminaries

3.2 Nonlinear Control of Robotic Systems

While we could construct a control input๐‘ขwith a CLF to guarantee the system with zero disturbance, ๐‘‘ = 0, is stable, with an unknown disturbance, stability can not be guaranteed. However, we could guarantee stability to a set. For disturbances in nonlinear systems, ISS [251], [252] can guarantee convergence to a set around the origin, with the bound in terms of โˆฅ๐‘‘โˆฅโˆž, where โˆฅ๐‘‘โˆฅโˆž = sup๐‘กโ‰ฅ0{|๐‘‘(๐‘ก) |}. Here we consider the conditions for exponential ISS. For the classical definition see [251]. The system (3.20) isexponential input-to-state stable (e-ISS) if there exists ๐›ฝ โˆˆ K Lโˆž,๐œ„ โˆˆ Kโˆž, and constant๐‘ > 0 such that

โˆฅ๐‘ฅ(๐‘ก , ๐‘ฅ0, ๐‘‘) โˆฅ โ‰ค ๐›ฝ( โˆฅ๐‘ฅ0โˆฅ, ๐‘ก)๐‘’โˆ’๐‘๐‘ก+๐œ„( โˆฅ๐‘‘โˆฅโˆž), โˆ€๐‘ฅ0, ๐‘‘ , โˆ€๐‘ก โ‰ฅ 0.

We can quantity e-ISS via Lyapunov functions. A continuously differentiable func- tion๐‘‰ :R๐‘› โ†’ Rโ‰ฅ0is ane-ISS Lyapunov functionwith constants๐‘1, ๐‘2, ๐‘3 > 0 and ๐œ„ โˆˆ Kโˆžsuch thatโˆ€๐‘ฅ โˆˆR๐‘›, ๐‘‘ โˆˆR๐‘›๐‘‘,

๐‘1โˆฅ๐‘ฅโˆฅ2 โ‰ค๐‘‰(๐‘ฅ) โ‰ค ๐‘2โˆฅ๐‘ฅโˆฅ2

โˆฅ๐‘ฅโˆฅ โ‰ฅ ๐œ„( โˆฅ๐‘‘โˆฅโˆž) โ‡’ ยค๐‘‰(๐‘ฅ , ๐‘‘) โ‰ค โˆ’๐‘3๐‘‰(๐‘ฅ).

(3.21)

The background theory presented in this section will be used as a basis for the theoretical contributions of this thesis, developed in Chapters 4, 5, and 6. All of the novel theoretical constructions in this thesis are first developed in the context of general nonlinear control systems, and they are followed with applications to general robotic systems. We will now present the general constructions used for

constraints. The Jacobian matrix of the holonomic constraints๐ฝ(๐‘ž) = ๐œ• โ„Ž๐œ• ๐‘ž โˆˆ R๐‘›โ„Žร—๐‘›๐‘ž enforces the holonomic constraints by:

๐ฝยค(๐‘ž,๐‘žยค) ยค๐‘ž+๐ฝ(๐‘ž) ยฅ๐‘ž=0. (3.23) Solving (3.22) and (3.23) simultaneously yields theconstrained dynamics.

To relate this to the continuous dynamics of the hybrid control system of (3.2), we write the following ODE,

ยค ๐‘ฅ = ๐‘‘

๐‘‘ ๐‘ก

"

๐‘ž

ยค ๐‘ž

#

=

"

ยค ๐‘ž

๐ทโˆ’1(๐‘ž) (โˆ’๐ป(๐‘ž,๐‘žยค) +๐ฝ๐‘‡(๐‘ž)๐œ†)

#

| {z }

๐‘“(๐‘ฅ)

+

"

0 ๐ทโˆ’1(๐‘ž)๐ต

#

| {z }

๐‘”(๐‘ฅ)

๐‘ข .

The discrete dynamicsฮ”๐‘‹ of (3.2) are determined by assuming a perfectly plastic impact. See [253], [254] for details.

Bipedal Robot Gait Generation

Multi-Domain Hybrid System. To have bipedal walking emulate human heel- toe roll, multiple contact points need to be accounted for. As the contact points change, the different holonomic constraints change the continuous dynamics, re- quiring multiple domains in a hybrid system. To model this multi-domain hybrid system, we use a directed graph ฮ“ = (๐‘‰ , ๐ธ) with vertices ๐‘ฃ โˆˆ ๐‘‰ that connect edges {๐‘’ = {๐‘ฃ โ†’ ๐‘ฃ+}}|๐‘ฃโˆˆ๐‘‰ = ๐ธ, where ๐‘ฃ+ is the subsequent vertex of ๐‘ฃ in the directed graph. For each vertex ๐‘ฃ, there is a domain D๐‘ฃ (3.3) and control input ๐‘ข๐‘ฃ. OnD๐‘ฃ, there is a control system (๐‘“๐‘ฃ, ๐‘”๐‘ฃ), that define the continuous dynamics

ยค

๐‘ฅ = ๐‘“๐‘ฃ(๐‘ฅ) +๐‘”๐‘ฃ(๐‘ฅ)๐‘ข๐‘ฃfor each๐‘ฅ โˆˆ D๐‘ฃand๐‘ข๐‘ฃ โˆˆ U. The transition point between one domainD๐‘ฃ and the next D๐‘ฃ+ in the directed cycle is defined by the guard ๐‘†๐‘’. The guard triggers the reset map,ฮ”๐‘’ : ๐‘†๐‘’ โŠ‚ D๐‘ฃ โ†’ D๐‘ฃ+, giving the postimpact states of the system: ๐‘ฅ+ = ฮ”๐‘’(๐‘ฅ), where๐‘ฅ โˆˆ D๐‘ฃ and๐‘ฅ+ โˆˆ D๐‘ฃ+.

With the sets of each of these objects,D ={D๐‘ฃ}|๐‘ฃโˆˆ๐‘‰,U ={๐‘ข๐‘ฃ}|๐‘ฃโˆˆ๐‘‰,๐‘† ={๐‘†๐‘’}|๐‘’โˆˆ๐ธ, ฮ” = {ฮ”๐‘’}|๐‘’โˆˆ๐ธ, and๐น ๐บ ={(๐‘“๐‘ฃ, ๐‘”๐‘ฃ)}๐‘ฃโˆˆ๐‘‰, we define thismulti-domain hybrid control systemas a tuple [255], [256]:

โ„‹๐’žmd= (ฮ“, D, U, ๐‘†, ฮ”, ๐น ๐บ). (3.24) Gait Generation. To prescribe outputs to this multi-domain hybrid control system, typically relative degree 1 and 2 outputs are used for walking robots and respectively

defined as,

๐‘ฆ1,๐‘ฃ(๐‘ž,๐‘žยค)= ๐‘ฆ๐‘Ž

1,๐‘ฃ(๐‘ž,๐‘žยค) โˆ’๐‘ฆ๐‘‘

1,๐‘ฃ, (3.25)

๐‘ฆ2,๐‘ฃ(๐‘ž)= ๐‘ฆ๐‘Ž

2,๐‘ฃ(๐‘ž) โˆ’๐‘ฆ๐‘‘

2,๐‘ฃ(๐œ๐‘ฃ, ๐›ผ๐‘ฃ). (3.26) While the phase variable ๐œ๐‘ฃ can be time- or state-based, for more robust control, a state-based phase variable๐œ(๐‘ž) is used [154] and is typically defined as follows,

๐œ(๐‘ž)๐‘ฃ = ๐‘๐‘ฃ(๐‘ž) โˆ’๐‘0,๐‘ฃ ๐‘๐‘“ ,๐‘ฃ โˆ’ ๐‘0,๐‘ฃ

. (3.27)

Here ๐‘๐‘ฃ(๐‘ž)is a state-dependent function that is monotonic in D๐‘ฃ and๐‘0,๐‘ฃ and๐‘๐‘“ ,๐‘ฃ are the initial and final values of this function in this domain. For walking, previous work found the forward progression of the stance hip to be monotonic during a human gait cycle [150]. This qualifies it to be used as ๐‘๐‘ฃ(๐‘ž)for the phase variable.

As described previously in Subsection 3.1, a control input ๐‘ข is designed to drive these outputs to 0. We previously discussed how this results in the system evolving on the zero dynamics surface 3.17. However, when a relative degree 1 output ๐‘ฆ1,๐‘ฃ is used, the zero dynamics cannot necessarily remain invariant through impacts. In fact, enforcing impact invariance on the velocity-modulating output is too restrictive due to the jump of velocities by the impact map. Hence, we only enforce an impact invariance condition on the relative degree 2 outputs, resulting in partial zero dynamics:

๐‘ƒ ๐‘๐›ผ

๐‘ฃ ={(๐‘ž,๐‘žยค) โˆˆ D๐‘ฃ : ๐‘ฆ2,๐‘ฃ(๐‘ž, ๐›ผ๐‘ฃ) =0,๐‘ฆยค2,๐‘ฃ(๐‘ž, ๐›ผ๐‘ฃ) =0}.

For a domain where a relative degree 1 output is used, the optimization problem (3.19) uses this partial zero dynamics surface ๐‘ƒ ๐‘๐›ผ instead of ๐‘๐›ผ, as shown in the following domain-specific optimization problem:

{๐›ผโˆ—

๐‘ฃ,C๐‘ฃโˆ—} =argmin

๐›ผ๐‘ฃ,C๐‘ฃ

J๐‘ฃ

s.t. ฮ”๐‘’(๐‘†๐‘’โˆฉ๐‘ƒ ๐‘๐›ผ

๐‘ฃ) โІ ๐‘ƒ ๐‘๐›ผ

๐‘ฃ+

(๐œ‚0, ๐‘ง0) =๐œ‘โ„‹

๐‘‡ (๐œ‚0, ๐‘ง0), Cmin โ‰ผ C๐‘ฃ โ‰ผ Cmax cmin โ‰ผ c๐‘ฃ(C๐‘ฃ) โ‰ผ cmax,

(3.28)

where ๐œ‘โ„‹

๐‘‡ is the hybrid periodic flow for the whole multi-domain hybrid system (3.24), and c๐‘ฃ(C๐‘ฃ) enforce real-world constraints of the robot such as torque and

joint limits and contact conditions. To solve this optimization problem, we use a direct collocation based optimization algorithm, FROST [198].

The solution to the optimization provides the๐›ผparameters that define Bรฉzier poly- nomials,

B(๐œ๐‘ฃ) =

m

โˆ‘๏ธ

๐‘–=0

๐›ผ๐‘ฃ ,๐‘– m!

(mโˆ’๐‘–)!๐‘–!๐œ๐‘–

๐‘ฃ(1โˆ’๐œ๐‘ฃ)mโˆ’๐‘–, (3.29) where m is the degree of the Bรฉzier polynomial with coefficients๐›ผ๐‘ฃ ={๐›ผ๐‘ฃ ,๐‘–}|๐‘–=1,...,m. ID-CLF-QP

A RES-CLF, as described in Subsection 3.1, could be used to construct a control input๐‘ขto track these generated trajectories.

We can use the linearized output dynamics (3.9) to construct a CLF for the robotic system. First, using๐น and๐บ from (3.9), we solve the CARE equation,

๐น๐‘‡๐‘ƒ+๐‘ƒ ๐น+๐‘ƒ๐บ ๐บ๐‘‡๐‘ƒ+๐‘„=0,

for ๐‘ƒ = ๐‘ƒ๐‘‡ > 0, with the user selected weighting matrix๐‘„ = ๐‘„๐‘‡ > 0. From the method of [199], we construct a CLF by the following,

๐‘‰(๐œ‚) =๐œ‚๐‘‡๐‘ƒ๐œ‚.

For this robotic system with relative degree 1 and 2 outputs, we define ๐œ‚ = (๐‘ฆ๐‘‡

1, ๐‘ฆ๐‘‡

2,๐‘ฆยค๐‘‡

2)๐‘‡ and transform the CLF into a RES-CLF using the method in [199]

with 0 < ๐œ€ <1:

๐‘‰๐œ€(๐œ‚) =๐œ‚๐‘‡

๏ฃฎ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฐ

๐ผ 0 0

0 1๐œ€๐ผ 0

0 0 ๐ผ

๏ฃน

๏ฃบ

๏ฃบ

๏ฃบ

๏ฃบ

๏ฃบ

๏ฃป ๐‘ƒ

๏ฃฎ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฐ

๐ผ 0 0

0 1๐œ€๐ผ 0

0 0 ๐ผ

๏ฃน

๏ฃบ

๏ฃบ

๏ฃบ

๏ฃบ

๏ฃบ

๏ฃป

๐œ‚=:๐œ‚๐‘‡๐‘ƒ๐œ€๐œ‚.

To obtain the convergence constraint, we take the derivative, ๐‘‰ยค๐œ€(๐œ‚) = ๐ฟ๐น๐‘‰๐œ€(๐œ‚) +๐ฟ๐บ๐‘‰๐œ€(๐œ‚)๐œ‡ โ‰ค โˆ’ ๐œ†min(๐‘„)

๐œ†max(๐‘ƒ๐œ€)๐‘‰๐œ€(๐œ‚), with Lie derivatives along the linearized output dynamics as,

๐ฟ๐น๐‘‰๐œ€(๐œ‚) =๐œ‚๐‘‡(๐น๐‘‡๐‘ƒ๐œ€+๐‘ƒ๐œ€๐น)๐œ‚, ๐ฟ๐บ๐‘‰๐œ€(๐œ‚) =2๐œ‚๐‘‡๐‘ƒ๐œ€๐บ ,

and๐œ‡, as given by (3.6), is

๐œ‡= ๐ฟโˆ—

๐‘“๐‘ฆ(๐‘ฅ) + ๐ด(๐‘ฅ)๐‘ข .

However, to implement a CLF on hardware, the feedback linearizing terms ๐ฟโˆ—

๐‘“๐‘ฆ(๐‘ฅ) and๐ด(๐‘ฅ)in (3.2) pose a challenge in that they require inversion of the inertia matrix ๐ท(๐‘ž) which is computationally expensive and can have numerical instability. To avoid this, [37] developed an inverse dynamics CLF quadratic program (ID-CLF- QP) that includes the CLF stability condition (3.2), the dynamics (3.22), and the holonomic constraints (3.23) as constraints in the QP. This way the QP can determine the control input๐‘ข, accelerations๐‘žยฅ, and constraint wrenches๐œ†simultaneously in a way that satisfies the stability constraint with respect to the dynamics and holonomic constraints.

To form this controller, we recall ๐œ‡= ( ยค๐‘ฆ๐‘‡,๐‘ฆยฅ๐‘‡)๐‘‡ and rewrite the outputs in terms of the robotic systemโ€™s configuration coordinates๐‘žand velocities๐‘žยค,

"

ยค ๐‘ฆ1

ยฅ ๐‘ฆ2

#

=

๏ฃฎ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฏ

๏ฃฐ

๐œ• ๐‘ฆ1

๐œ• ๐‘ž

๐œ•

๐œ• ๐‘ž

๐œ• ๐‘ฆ2

๐œ• ๐‘ž ๐‘žยค

๏ฃน

๏ฃบ

๏ฃบ

๏ฃบ

๏ฃบ

| {z }๏ฃป

๐ฝยค๐‘ฆ(๐‘ž,๐‘žยค)

ยค ๐‘ž+

"๐œ• ๐‘ฆ1

๐œ•๐‘žยค

๐œ• ๐‘ฆ

๐œ• ๐‘ž

#

|{z}

๐ฝ๐‘ฆ(๐‘ž)

ยฅ ๐‘ž .

We will include these terms in the QP cost with the holonomic constraints, enforcing these as soft constraints, using,

๐ฝqp(๐‘ž) =

"

๐ฝ๐‘ฆ(๐‘ž) ๐ฝ(๐‘ž)

#

, ๐ฝยคqp(๐‘ž,๐‘žยค)=

"

๐ฝยค๐‘ฆ(๐‘ž,๐‘žยค) ๐ฝยค(๐‘ž,๐‘žยค)

# . With these terms we formulate our ID-CLF-QP:

ฮฅโ˜…=argmin

ฮฅโˆˆR๐‘›qp

๐ฝยคqp(๐‘ž,๐‘žยค) ยค๐‘ž+๐ฝqp(๐‘ž) ยฅ๐‘žโˆ’๐œˆpd

2

+๐œŽ๐‘Š(ฮฅ) +๐œŒ ๐œ s.t. ๐ท(๐‘ž) ยฅ๐‘ž+๐ป(๐‘ž,๐‘žยค) =๐ต๐‘ข+๐ฝ๐‘‡(๐‘ž)๐œ†

๐ฟ๐น๐‘‰(๐‘ฅ) +๐ฟ๐บ๐‘‰(๐‘ฅ) ( ยค๐ฝ๐‘ฆ(๐‘ž,๐‘žยค) ยค๐‘ž+๐ฝ๐‘ฆ(๐‘ž) ยฅ๐‘ž) โ‰ค โˆ’๐‘ ๐œ€

๐‘‰(๐‘ฅ) +๐œ

โˆ’๐‘ขmax โ‰ค ๐‘ข โ‰ค ๐‘ขmax,

(3.30)

with decision variables ฮฅ = ( ยฅ๐‘ž๐‘‡, ๐‘ข๐‘‡, ๐œ†๐‘‡)๐‘‡. Here ๐œˆpd = (๐œ‡๐‘‡

pd,0๐‘‡)๐‘‡, ๐‘Š(ฮฅ) is a regularization term designed to make the system well-posed, ๐œŽ and ๐œŒ are user- selected weights,๐œis a relaxation term to allow the torque bounds(โˆ’๐‘ขmax, ๐‘ขmax)to be met.

Figure 3.1: Human-Prosthesis Model and Platform. (Left) Human-prosthesis model with generalized coordinates. (Right) AMPRO3 powered prosthesis platform with components and coordinates labeled.

3.3 Human-Prosthesis Model and Powered Prosthesis Platform