This is an excerpt from Layton Hale’s lecture notes “Design and Analysis of Constraint Systems” from the November 2010 ASPE Conference.

 

Many engineers make a simple mistake when determining the equivalent stiffness of a spring that is rotated with respect to a coordinate system.  Typically they find k_x=k \cos{\theta} and k_y=k \sin{\theta}, which are both incorrect.  2dof-spring

 

When we displace the spring in the x direction \delta_x the compression of the spring along it’s axis is quite a bit less as you can see in the figure below.  From the figures it is quite easy to see:

\delta_x = \delta / \cos{\theta}

\delta_y = \delta / \sin{\theta}

2dof-spring2It follows that the spring stiffness along the x-direction is:

\begin{matrix}k_{xx}&= &\frac{F_x}{\delta{x}}\\k_{xx}& = &\frac{F\cos{\theta}}{\delta/\cos{\theta}}\\k_{xx}& = &\frac{F}{\delta}\cos^2{\theta}\end{matrix}

We can then easily solve for the equivalent stiffness matrix as:

\mathbf{K} = k\cdot \begin{bmatrix}  \cos^2{\theta} & \cos{\theta}\cdot\sin{\theta}\\  \cos{\theta}\cdot\sin{\theta} & \sin^2{\theta}  \end{bmatrix}

And now we can compute the forces along the rotated coordinate system as:

\begin{bmatrix}f_x\\ f_y\end{bmatrix} = \begin{bmatrix}k_{xx} & k_{xy}\\ k_{yx} & k_{yy}\\\end{bmatrix}\cdot\begin{bmatrix}\delta_x\\ \delta_y\end{bmatrix}

This is a continuation post on simple implementations of tuned-mass-dampers. For the curious please see my previous posts about TMDs here …

Say we have the 6-DOF model with frequency response as shown below.  The FRF’s show the response of a leadscrew actuator to an acceleration disturbance at it’s base (continue reading about the leadscrew actuator here…).  poi_tf_x_dir_out_Base_in

We can use a TMD to dampen the first few modes. As a first pass damper design, let’s set the mass ratio \alpha=\frac{m_{damper}}{m_{sys}} to be 10%.  We then have m_{damper}=0.2 kg.  Also, the first interesting system mode occurs around \omega_n=300hz, a general rule of thumb for determining the damper’s resonance is \frac{\omega_{damper}}{\omega_{sys}}=\frac{1}{1-\alpha}.  We then set \omega_d = 278hz.  It is trivial to determine the damper stiffness k_{damper}=m_{damper}{\omega_d}^2.  We can start with a damping value of c=\frac{1}{2}m_{damper}\omega_d.

So we create a 6-DOF tuned-mass-damper by appending six 1-DOF TMD’s, and if so desired, each 1-DOF TMD can target different modes as they are independent of eachother.

tmd_{6d} = \left[\begin{matrix}tmd_{1dx}\\tmd_{1dy}\\tmd_{1dz}\\tmd_{1drx}\\tmd_{1dry}\\tmd_{1drz}\end{matrix}\right]

The 6-DOF TMD is then feedback to the dynamic system and the resultant FRF’s are shown below.  The dashed lines are the undamped and solid lines are the damped FRF’s.  Notice the original resonance is quite suppressed, this will dramatically reduce the POI motion from base disturbances.

 

poi_tf_x_dir_out_Base_in_tmd

 

For further reading on tuned mass dampers can by Lei Zuo and Samir Nayfeh be found here.

I proposed using an improper transfer function to model a simple tuned-mass damper (read more here) with the transfer function:

\frac{y}{u} = \frac{mcs^{3}+mks^{2}}{ms^{2}+cs+k}

To convert this to state-space representation we need to use the more generalized descriptor state-space notation which introduces the “E” term:

E\dot{x}(t)=Ax(t)+Bu(t)

y(t)=Cx(t)+Du(t)

where E,A \in \mathbb{R}^{n\times n}B \in \mathbb{R}^{n\times m}C \in \mathbb{R}^{p\times n} and D \in \mathbb{R}^{p\times m}.

We derive C as:

y = C \times \left[\begin{matrix}x_1\\x_2\\x_3\\x_4\end{matrix}\right]

y = \left[\begin{matrix}mc,mk,0,0\end{matrix}\right]\times \left[\begin{matrix}x_1\\x_2\\x_3\\x_4\end{matrix}\right]

We then have the following states:

\left[\begin{matrix}x_1\\x_2\\x_3\\x_4\end{matrix}\right]=\left[\begin{matrix}us^3/d\\us^2/d\\us/d\\u/d\end{matrix}\right]

\left[\begin{matrix}\dot{x}_1\\\dot{x}_2\\\dot{x}_3\\\dot{x}_4\end{matrix}\right]=\left[\begin{matrix}us^4/d\\us^3/d\\us^2/d\\us/d\end{matrix}\right]

where  d = ms^2+cs+k

we can see that

\begin{matrix}u&=&d\times x_4&\\u&=&ms^2x_4+csx_4+kx_4&\\u&=&m\dot{x}_3+cx_3+kx_4&\\\end{matrix}

On to fill out the rest of the matrices as:

\begin{matrix}E&\dot{X}&=&A&X&+&B&u\\ \left[\begin{matrix}0&1&0&0\\0&0&1&0\\0&0&m&0\\0&0&0&1\end{matrix}\right]&\left[\begin{matrix}\dot{x}_1\\\dot{x}_2\\\dot{x}_3\\\dot{x}_4\end{matrix}\right]&=&\left[\begin{matrix} 1&0&0&0\\0&1&0&0\\0&0&-c&-k\\0&0&0&1 \end{matrix}\right]&\left[\begin{matrix}x_1\\x_2\\x_3\\x_4\end{matrix}\right]&+&\left[\begin{matrix}0\\0\\1\\0\end{matrix}\right]&u\end{matrix}

\begin{matrix}Y&=&C&X&+&D&u&\\Y&=&\begin{matrix}\left[mc,mk,0,0\right]\end{matrix}&\left[\begin{matrix}x_1\\x_2\\x_3\\x_4\end{matrix}\right]&&\end{matrix}

where D=0.

rel_mot_abs_mot_diagramJust a quick reminder about converting relative motion to absolute motion.  Say we already have the transfer function for input acceleration to relative motion:

sys_{rel} = \frac{\delta}{\ddot{x}_1} = \frac{x_2-x_1}{\ddot{x}_1}

The absolute motion of the second mass can be found as

\frac{x_{2}}{\ddot{x}_{1}} = \frac{\delta}{\ddot{x}_{1}} + \frac{1}{s^{2}}

The derivation is as follows:

sys_{rel} = \frac{\delta}{\ddot{x}_{1}}= \frac{x_{2}-x_{1}}{\ddot{x}_{1}}=\frac{x_2}{\ddot{x}_1}-\frac{x_1}{\ddot{x}_1}

\frac{x_2}{\ddot{x}_1} = \frac{\delta}{\ddot{x}_{1}}+\frac{x_1}{\ddot{x}_1}=\frac{\delta}{\ddot{x}_{1}}+\frac{1}{s^2}

A client wanted to investigate adding a tuned mass damper (TMD) to their system to improve its performance. We developed a large FEA model to estimate the dynamics of the system and didn’t want to add the damper within the FEA model because it was quite large and long solve times prevented quick iteration. We came up with this simple method to estimate the impact a TMD would have on system performance.

A 1-DOF tuned mass damper is easily derived from the diagram below
tmd

\frac{F}{x_{1}} = \frac{mcs^{3}+mks^{2}}{ms^{2}+cs+k}

From the FEA model, we generated a state-space dynamic model that has a node at the location where we’d like to add the TMD.  The input at that node is force (N, N.m) and the output at that node is displacement (m, rads).  To incorporate the TMD into the dynamics all we need to do is apply the feedback loop as shown below:

TMD-feedback

 

To expand the TMD out to 6-DOF, we simply create six 1-DOF TMD’s and connect them to their respective inputs and outputs.

Now that the TMD dynamics are generated in post processing we can easily iterate on different designs (different masses, spring rates and damping values) to optimize the design.  Frequency and transient responses are very quickly calculated as compared to solving FEA models.

 

For further reading on tuned mass dampers can by Lei Zuo and Samir Nayfeh be found here.