Keywords

1 Introduction

Over the course of more than two decades of ongoing research into the structural topology and shape optimization of compliant mechanisms, several optimization problem formulations have already emerged—but none of these are universally accepted (Deepak et al. 2008). The first contribution was presented in the beginning of the 1990s by Ananthasuresh et al. (1994). Based on the common view that a compliant mechanism must be flexible enough to provide a certain motion and at the same time stiff enough to sustain external loads, they used a weighted sum of mutual potential energy (MPE) and strain energy (SE) as the objective function to minimize, where the MPE is a measure for the structure’s flexibility and the SE is a commonly used measure of the structure’s stiffness (Shield and Prager 1970). Since then, numerous researchers (Frecker et al. 1999; Kota et al. 2001; Chen et al. 2001) have followed with modified and extended MPE/SE formulation. A different approach was presented by Sigmund (1997). The objective of his approach was to maximize the so-called mechanical advantage (MA), the ratio between input and output force, subject to constraints on the input displacement and volume. Later, this formulation was reduced to maximize the output displacement actuated by a force at the mechanism’s input (Bendsøe and Sigmund 2003). In the following years, various other objectives, for instance the energy efficiency formulation presented by Hetrick and Kota (1999) and the artificial I/O spring formulation presented by Rahamatalla and Swan (2005), have been introduced. However, a study performed by Deepak et al. (2008) showed that this formulation produces essentially similar designs. Furthermore, something that nearly all of the formulations presented so far have in common is that they apply additional springs at the output in order to support the optimization. It was observed that the stiffness values chosen for these springs have strong influence on the optimization result—it requires some experience to choose the right stiffness value in order to realize the desired kinematical behavior. Without these additional springs, the structural optimization could result in non-connected designs between input and output (Deepak et al. 2008; Sigmund 1997). Another drawback of the aforementioned formulations is the occurrence of point flexures—concentrated regions with extremely low stiffness compared to the remaining regions. With the desire to avoid the occurrence of point flexures, Chen and Wang (2007) proposed the characteristic stiffness formulation which requires no additional springs. This formulation can be applied to single-input, single output mechanisms. With a conventional sub-structuring approach they reduced the global stiffness matrix to the input and output degrees of freedom. They presented different possible objective functions based on the diagonal terms of the reduced stiffness matrix and the geometric advantage (the desired ratio between input and output displacement). An alternative approach (Hasse and Campanile 2009) presented by the author also relies on a reduced stiffness matrix and offers the same advantages as Wang’s approach. Thereby, the objective function integrates modal quantities obtained from a specially synthesized eigenvalue problem in order to optimize the kinematical behavior. This paper presents a reformulation of this objective function based on the same idea in order to make the method more accessible. Therefore, we start with a discussion of the design problem of compliant mechanisms. Having understood what needs to be realized in terms of stiffness distribution makes it possible to derive a formal optimization problem under linear assumptions. This formulation is then implemented in a complete optimization procedure and tested on several design problems related to the well-known force inverter.

2 Design Problem

Before discussing the design of compliant mechanisms, we consider their conventional counterparts: classical mechanisms. They gain their mobility from relative movement of stiff members against each other. Seen as an elastic structure, a classical mechanism principally has an infinite number of structural degrees of freedom (structural DoFs). For practical reasons, the structure is mostly discretized to a finite number \( p \) of DoFs, and the general displacement field will be described by the vector

$$ {\mathbf{u}} \in {\mathbb{R}}^{p} . $$
(1)

Due to the presence of conventional hinges, it is possible to model all members as rigid bodies by preserving the mechanism’s capability to deform and perform its function. This allows for a simpler motion analysis with a reduced number \( m \) of kinematic DoFs.

If the motion is linearized about a given configuration, \( m \) expresses the number of linearly independent deformation modes

$$ {\varvec{\upchi}}_{i} \in {\mathbb{R}}^{p} ,\quad i = 1, \ldots ,m $$
(2)

that can be generated when starting from this configuration. Hence, there will be a \( m \)-dimensional subspace \( {\mathbb{K}} \subseteq {\mathbb{R}}^{p} \), which defines the possible motion of the mechanism

$$ {\mathbb{K}} = \left\{ {\sum\limits_{i = 1}^{m} {\alpha_{i} {\varvec{\upchi}}_{i} |\alpha_{i} \in {\mathbb{R}}} } \right\}. $$
(3)

In the following, this subspace will be denoted as the kinematics of the mechanism. \( {\mathbf{u}} \in {\mathbb{K}} \) holds for all the displacements that the mechanisms can produce—of course only under the assumption of rigid members.

The kinematics is normally the basis, i.e. the primary input parameter, of the synthesis of the mechanism, because it sets the ratio of displacement between the inputs and outputs of the mechanism and therefore determines the transformation of motion and/or force.

In principle, a compliant mechanism must fulfill the same task as its conventional counterpart: transforming motion and/or force from an input to an output. Thus, the kinematics should be the driving input parameter when designing compliant mechanisms as well. Nevertheless, there is a substantial difference in the functional principle: the motion is produced by elastic deformation. Therefore, the assumption of rigid members is not admissible—so the mechanism’s displacements u due to an external load are principally not constrained to be \( {\mathbf{u}} \in {\mathbb{K}} \). It is therefore useful to divide the displacements into desired \( {\mathbf{u}}_{d} \) and undesired \( {\mathbf{u}}_{ud} \) displacements, whereas \( {\mathbf{u}}_{d} \in {\mathbb{K}} \). The complement

$$ \overline{{\mathbb{K}}} = {\mathbb{R}}^{p} \backslash {\mathbb{K}} $$
(4)

is denoted as the subspace of the undesired deformations, so it holds:

$$ {\mathbf{u}}_{ud} \in \overline{{\mathbb{K}}} . $$
(5)

Under linear considerations, this subspace \( \overline{{\mathbb{K}}} \) is spanned by \( p - m \) linear independent undesired deformation modes \( \overline{{\varvec{\upchi}}}_{i} \in {\mathbb{R}}^{p} \) (analogously to Eq. (3)). The desired deformation modes are furthermore denoted with \( {\varvec{\upchi}}_{i} \in {\mathbb{R}}^{p} \), as with the classical mechanisms.

The components of u in \( {\mathbb{K}} \) and \( \overline{{\mathbb{K}}} \) as a result of external loads f at the mechanism’s inputs and outputs are determined by the stiffness of the mechanisms—which in turn is determined by the mechanisms topology, shape and material. The force-displacement-relationship of a general structure is normally described by a \( p \times p \) stiffness matrix k so that holds

$$ {\mathbf{ku}} = {\mathbf{f}}. $$
(6)

Now, we assume that the desired and undesired deformation modes are collected in a basis

$$ {\rm X} = \left[ {\begin{array}{*{20}c} {{\varvec{\upchi}}_{1} } & \ldots & {{\varvec{\upchi}}_{m} } & {\overline{{\varvec{\upchi}}}_{m + 1} } & \ldots & {\overline{{\varvec{\upchi}}}_{p} } \\ \end{array} } \right] $$
(7)

and are defined in an orthogonal fashion, so that holds

$$ \frac{1}{2}{\rm X}^{T} {\mathbf{k}}{\rm X} = \frac{1}{2}\left[ {\begin{array}{*{20}c} {k_{1} } & 0 & {} & \cdots & {} & 0 \\ 0 & \ddots & {} & {} & {} & {} \\ {} & {} & {k_{m} } & \ddots & {} & \vdots \\ \vdots & {} & \ddots & {\bar{k}_{m + 1} } & {} & {} \\ {} & {} & {} & {} & \ddots & 0 \\ 0 & {} & \cdots & {} & 0 & {\bar{k}_{p} } \\ \end{array} } \right]. $$
(8)

The terms

$$ k_{i} \in {\mathbb{R}},\quad i = 1, \ldots ,m $$
(9)

related to the desired deformation modes are denoted as primary stiffness and the terms

$$ \bar{k}_{i} \in {\mathbb{R}},\quad i = m + 1, \ldots ,\text{p} $$
(10)

related to the undesired deformation modes are denoted as secondary stiffness. Under normalization condition

$$ \begin{aligned} &{\varvec{\upchi}}_{i}^{T} {\varvec{\upchi}}_{i} = 1,\quad {\kern 1pt} \quad {\forall }i = 1 \ldots m \hfill \\& \overline{{\varvec{\upchi}}}_{i}^{T} \overline{{\varvec{\upchi}}}_{i} = 1,\quad{\kern 1pt} \quad {\forall }i = m + 1 \ldots p \hfill \\ \end{aligned} $$
(11)

Equation (8) gives insight into the physical meaning of the primary and secondary stiffness. If the structure is deformed according to a given deformation mode, it is

$$ {\mathbf{u}}_{a} = \alpha {\varvec{\upchi}} $$
(12)

where the scaling factor \( \alpha \) has the dimension of a length. The corresponding deformation energy is

$$ SE = \alpha^{2} \frac{1}{2}{\varvec{\upchi}}^{T} \overline{{\mathbf{k}}} {\varvec{\upchi}} $$
(13)

and therefore

$$ \frac{1}{2}{\varvec{\upchi}}^{T} \overline{{\mathbf{k}}} {\varvec{\upchi}} = \frac{SE}{{\alpha^{2} }} $$
(14)

i.e. the left side of Eq. (8) corresponds to the deformation energy divided by the square of the scaling factor. Its numerical value is equal to the energy stored in the system when the scaling factor is set to a unit length (1 m for SI units). Its dimension, however, equates to the energy per square length (Joule per square meter). A primary or secondary stiffness value is twice this energy per square length unit. For this reason, deformation modes with high stiffness values are stiffer, which means that more energy must be spent in order to reach the amplitude level defined by the condition \( \alpha = 1\,{\text{m}} \). Due to the low required energy, deformation with low stiffness values will dominate the static response of the system i.e. the system will preferentially deform according to a displacement distribution given by a linear combination of these deformation modes.

If a mechanism is required only to deform with \( {\mathbf{u}} \in {\mathbb{K}} \) then an infinite secondary stiffness needs to be realized—this is impossible with real structures. However, it is typically for classical mechanisms that the stiffness of the members, and thus the secondary stiffness, is chosen so high that possible undesired deformation are negligible. Even if it is difficult to achieve, compliant mechanisms may have a similar behavior: the displacements are limited to the kinematics independent of the external loads. Then they are called “compliant mechanisms with selective compliance” (Hasse and Campanile 2009).

It can be stated that the higher the secondary stiffness compared to the primary stiffness is the more the compliant mechanism tends towards selective compliance behavior. In the following section the described design problem is translated into a formal optimization problem.

3 Optimization Formulation

Normally, the kinematics is not defined for all structural DoFs. In practice, the kinematics only refers to certain input and output DoFs (together from hereon named as master DoFs). It is therefore appropriate only to refer with the desired and undesired deformation mode to this reduced set of master DoFs. Therefore, we divide the \( p \) DoFs into \( q \) master DoFs and \( p - q \) slave DoFs. The master DoFs are collected in the set \( a \) and the slave DoFs in \( c \). Under the assumption that no external forces \( {\mathbf{f}} \in {\mathbb{R}}^{p} \) act on the slave DoFs, the linear system equations

$$ \left[ {\begin{array}{*{20}c} {{\mathbf{k}}_{aa} } & {{\mathbf{k}}_{ac} } \\ {{\mathbf{k}}_{ca} } & {{\mathbf{k}}_{cc} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {{\mathbf{u}}_{a} } \\ {{\mathbf{u}}_{c} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {{\mathbf{f}}_{a} } \\ 0 \\ \end{array} } \right] $$
(15)

can be reduced to

$$ ({\mathbf{k}}_{aa} - {\mathbf{k}}_{ca} {\mathbf{k}}_{cc}^{ - 1} {\mathbf{k}}_{ac} ){\mathbf{u}}_{a} = {\hat{\mathbf{k}}\mathbf{u}}_{a} = {\mathbf{f}}_{a} $$
(16)

where \( {\hat{\mathbf{k}}} \) is a \( q \times q \) matrix. Within this paper, we constrain our consideration to single-input single-output mechanisms with one kinematic DoF, i.e. \( {\hat{\mathbf{k}}} \) is a \( 2 \times 2 \) matrix and the input to the optimization formulation is the normalized desired deformation mode

$$ {\varvec{\upchi}}^{T} {\varvec{\upchi}} = 1,\quad {\varvec{\upchi}} \in {\mathbb{R}}^{2} . $$
(17)

A normalized undesired deformation mode

$$ \overline{{\varvec{\upchi}}}^{T} \overline{{\varvec{\upchi}}} = 1,\quad \overline{{\varvec{\upchi}}} \in {\mathbb{R}}^{2} $$
(18)

exists for every \( {\hat{\mathbf{k}}} \) and it holds

$$ {\varvec{\upchi}}^{T} {\hat{\mathbf{k}}}\overline{{\varvec{\upchi}}} = 0. $$
(19)

The design problem derived in the last section could be directly translated in the following optimization

$$ \begin{aligned} & \hbox{max} \quad \bar{k} = \overline{{\varvec{\upchi}}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})\overline{{\varvec{\upchi}}} \\ & s.t.\quad k - k_{desired} = \frac{1}{2}{\varvec{\upchi}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}}){\varvec{\upchi}} - k_{desired} \le 0 \\ \end{aligned} $$
(20)

where the vector \( {\mathbf{x}} = (x_{1} , \ldots ,x_{n} )^{T} \) contains the design variables and \( k_{desired} \) is the upper bound on the primary stiffness. Problematic with this direct formulation is that the undesired deformation mode \( \overline{{\varvec{\upchi}}} \) changes with the design variables throughout the optimization. The undesired deformation mode has to be determined by a suitable procedure, such as the Gram-Schmidt-orthogonalization, within every iteration of the optimization procedure. A corresponding approach was already presented by the author in (Hasse and Campanile 2009). However, within this publication we want to present a more compact formulation. Therefore, we rewrite condition (19)

$$ {\varvec{\upchi}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})\overline{{\varvec{\upchi}}} = \beta {\varvec{\upchi}}^{T} {\varvec{\updelta}}. $$
(21)

\( {\varvec{\updelta}} \) can be defined prior to the optimization by using the normalization condition

$$ {\varvec{\updelta}}^{T} {\varvec{\updelta}} = 1,\quad {\varvec{\updelta}} \in {\mathbb{R}}^{2} , $$
(22)

since \( {\varvec{\updelta}} \) is independent of the design variables. Only the scaling factor \( \beta \) relates to the design variables. Thus, we can write the objective function in problem (20) as

$$ f({\mathbf{x}}) = \overline{{\varvec{\upchi}}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})\overline{{\varvec{\upchi}}} = \beta^{2} {\varvec{\updelta}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\varvec{\updelta}}. $$
(23)

Through the normalization condition (18)

$$ 1 = \overline{{\varvec{\upchi}}}^{T} \overline{{\varvec{\upchi}}} = \beta^{2} {\varvec{\updelta}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\varvec{\updelta}}. $$
(24)

the scaling factor \( \beta \) can be determined

$$ \beta^{2} = \frac{1}{{{\varvec{\updelta}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\varvec{\updelta}}}}. $$
(25)

Therefore, the objective function writes as follows

$$ f({\mathbf{x}}) = \frac{{{\varvec{\updelta}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\varvec{\updelta}}}}{{{\varvec{\updelta}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\varvec{\updelta}}}}. $$
(26)

The optimization problem (20) is extended, additionally to the new objective function, with a further constraint limiting the distributable amount of material within the design domain and lower and upper bounds on the design variables

$$ \begin{aligned} \hbox{max} \quad f({\mathbf{x}}) & = \frac{{{\varvec{\updelta}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\varvec{\updelta}}}}{{{\varvec{\updelta}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\hat{\mathbf{k}}}({\mathbf{x}})^{ - 1} {\varvec{\updelta}}}} \\ s.t.\quad g({\mathbf{x}}) & = \frac{1}{2}{\varvec{\upchi}}^{T} {\hat{\mathbf{k}}}({\mathbf{x}}){\varvec{\upchi}} - k_{desired} \le 0 \\ h({\mathbf{x}}) & = \sum {\mathbf{x}} - v = 0 \\ {\mathbf{x}}_{\hbox{min} } & \le {\mathbf{x}} \le {\mathbf{x}}_{\hbox{max} } \\ \end{aligned} $$
(27)

where \( \nu \) is the limit to the amount of distributable material. Obviously, the only term in the optimization problem, which is now dependent on the design variables, is the stiffness matrix \( {\mathbf{k}} \).

4 Implementation

The derived optimization formulation (27) is integrated in a complete optimization procedure. We have chosen a ground structure approach (Bendsøe and Sigmund 2003) as parametrization. Thereby, the design variables \( x_{i} \) scale the stiffness of the i-th ground-element:

$$ {\mathbf{k}}({\mathbf{x}}) = \sum\limits_{i = 1}^{n} {x_{i} {\mathbf{k}}_{i} } . $$
(28)

In our case, the ground elements are modelled by Bernoulli-Euler beam elements. The ground structure approach is exemplified in Fig. 2. The parametrization, the structural model and the derived optimization formulation need to be completed by a proper optimization algorithm in order to obtain a complete optimization procedure. Within this work, however, we have applied an interior-point method standardly implemented in MATLAB. This algorithm converged best.

5 Problem Statement of Design Examples

The validation example is a force inverter. The corresponding mechanism’s input and the output are defined as master DoFs. The difference between the derived (27) and other formulations is that the derived formulation does not require explicit distinction between input and output. Because only two master DoFs are considered and the mechanism should only have one kinematic DoF, the kinematics is described by one desired deformation mode \( {\varvec{\upchi}} \in {\mathbb{R}}^{2} \).

The design domain, the support and the master DoFs are shown in Fig. 1. The design domain is described by the following geometric parameters

$$ l = 100\;{\text{mm}},\;h = 50\;{\text{mm}},{\kern 1pt} \;d = 10\;{\text{mm}} $$
(29)

where l is the reference, h is the height and d is the mechanism’s width.

Fig. 1
figure 1

Design domain with corresponding support and master DoFs

Concerning the parametrization, the design domain is meshed with ground elements as depicted in Fig. 2.

Fig. 2
figure 2

Parameterized design domain

Every beam of the reference ground-structure is characterized by the following material and geometric parameters

$$ E = 1500\;{\text{MPa}},\;I = 6.66\;{\text{mm}}^{4} ,\;A = 20\;{\text{mm}}^{2} $$
(30)

where E is the Young’s modulus, I the moment of inertia and A is the cross-sectional area.

The lower and the upper bounds for the design variables are defined as

$$ 10^{ - 5} \le x_{i} < 1,\quad i = 1 \ldots n. $$
(31)

As a starting point for the optimization, all design variables are set to the limit to the amount of distributable material \( \nu \).

6 Results and Discussion

The optimization procedure was applied to force-inverter design tasks with different kinematics. The input parameters \( \nu \) and k desired to the optimization formulation (27) are

$$ \nu = 0.06,\,k_{desired} = 8.5\frac{\text{N}}{\text{mm}} $$
(32)

The results for different desired deformation modes are shown in Fig. 3. The beams are drawn with different line thicknesses. Each thickness is proportional to the corresponding design variable. Beams for which the design variable is smaller than \( 5 \times 10^{ - 3} \) are omitted from the plot. The optimization procedure converged for every choice of kinematics. A clear mechanical structure has emerged for all cases. The values of the objective function are similar for all designs. The results show a dependency on the choice of the kinematics. The constraint function is almost zero for nearly all of the obtained results. Thus, the desired primary stiffness is realized.

Fig. 3
figure 3

Force inverter optimized for different desired deformation modes

The optimization can result in different local minima when starting from different positions within the search space. Therefore, the obtained results do not necessarily describe the global optimum. The possibility of finding a solution with higher objective function values is left open.

The following studies will examine whether or not selective compliance behavior is obtained for the different designs by applying different loads. The structure optimized for \( {\chi = }\left[ {\begin{array}{*{20}c} 1 & { - 1} \\ \end{array} } \right]^{T} \) (see Fig. 3) is chosen as representative. The other mechanisms behave similarly; therefore their representation has been left out. Load-case 1 is an applied force f in  = 300 N at master DoF I. The displacements u in at master DoF I and u out at master DoF II are calculated as the response. The deformed state is shown at the top of Fig. 4a. It can be observed, that the input and output displacements are not an exact scaling of the desired deformation mode, but they tend towards the desired kinematics.

Fig. 4
figure 4

Force inverter \( {\varvec{\upchi}} = \left[ {\begin{array}{*{20}c} 1 & { - 1} \\ \end{array} } \right]^{T} \) under different load-cases

Load-case 2 is an applied force f in  = 120 N at master DoF I plus an additional load f out  = −240 N at master DoF II (see Fig. 4b). The ratio between input and output displacement has now changed compared to Load-case 1. This indicates that the second eigenvalue is too small and both eigenvectors are therefore stimulated by the external loads.

Examinations have shown that by increasing the parameters \( \nu \) and x max, there is a stronger implementation of the desired kinematics in the structure. Then the output and input displacement is more or less a scaling of the desired deformation mode. Furthermore, the mechanism showed a higher independency of the applied external forces—the ratio of the input and output displacements do not significantly change with changing external loads.

7 Conclusion and Future Work

This paper presented a reformulation of the authors former optimization formulation for the design of compliant mechanisms with selective compliance. It is written in a compact manner and offers the advantages that no optimization supporting spring elements are needed. Furthermore the kinematics is directly considered.

Future examinations should consider stress constraints according to the applied material and large deformations. Furthermore, the design of mechanism with kinematic DoFs higher than one should be considered.