sdynpy.fem.sdynpy_shaker.Shaker4DoF

class Shaker4DoF(m_armature, m_body, m_forcegauge, k_suspension, k_stinger, c_suspension, c_stinger, resistance, inductance, force_factor)[source]

Bases: object

A class defining a four degree-of-freedom model of a shaker

__init__(m_armature, m_body, m_forcegauge, k_suspension, k_stinger, c_suspension, c_stinger, resistance, inductance, force_factor)[source]

Creates a four degree of freedom electromechanical model of a shaker

Parameters
  • m_armature (float) – Mass of the armature

  • m_body (float) – Mass of the body and trunion of the shaker

  • m_forcegauge (float) – Mass of the force gauge at the tip of the stinger

  • k_suspension (float) – Stiffness of the spring between the body and armature

  • k_stinger (float) – Stiffness of the stinger between the armature and force gauge

  • c_suspension (float) – Damping of the spring between the body and armature

  • c_stinger (float) – Damping of the stinger between the armature and force gauge

  • resistance (float) – Coil resistance of the electronics portion of the shaker

  • inductance (float) – Coil inductance of the electronics portion of the shaker

  • force_factor (float) – Force factor BL of the magnet and coil

Methods

MCK()

Returns mass, damping, and stiffness matrices for the shakers.

__init__(m_armature, m_body, m_forcegauge, ...)

Creates a four degree of freedom electromechanical model of a shaker

modal_shop_100lbf()

Returns a shaker model for a Modal Shop Model 2100E11 100lbf modal shaker.

plot_electrical_impedance([frequencies, ...])

Plots the electrical impedance voltage/current for the shaker model and compares to test data if supplied

state_space()

Returns the state space formulation of the shaker model of the form

transfer_function(frequencies)

Computes the shaker transfer function matrix

MCK()[source]

Returns mass, damping, and stiffness matrices for the shakers.

Returns

  • M (np.ndarray) – The mass matrix of the shaker

  • C (np.ndarray) – The damping matrix of the shaker

  • K (np.ndarray) – The stiffness matrix of the shaker

Notes

The dof order of the responses are: Displacement of Armature, Displacement of Body, Displacement of Force Gauge, Shaker Current.

The dof order of the inputs are: Force into Armature Force into Body Force into Force Gauge Shaker Voltage.

The force imparted by the shaker can be computed as the stinger stiffness times the difference in displacement of the armature and force gauge plus the stinger damping times the difference in the velocity of the armature and force gauge.

classmethod modal_shop_100lbf()[source]

Returns a shaker model for a Modal Shop Model 2100E11 100lbf modal shaker.

Returns

shaker_model – A 4 degree of freedom model of the Modal Shop 2100E11 100lbf modal shaker.

Return type

Shaker4DoF

Notes

The shaker uses the following parameters
  • m_armature = 0.44 kg

  • m_body = 15 kg

  • m_forcegauge = 1e-2 kg

  • k_suspension = 1.1e5 N/m

  • k_stinger = 9.63e6 N/m

  • c_suspension = 9.6 Ns/m

  • c_stinger = 0.42 Ns/m

  • resistance = 4 Ohm

  • inductance = 6e-4 Henry

  • force_factor = 36 (-)

plot_electrical_impedance(frequencies=array([1, 2, 3, ..., 3998, 3999, 4000]), test_data=None)[source]

Plots the electrical impedance voltage/current for the shaker model and compares to test data if supplied

Parameters
  • frequencies (np.array, optional) – Frequency lines. The default is np.arange(4000).

  • test_data (np.ndarray, optional) – Test data defined at frequencies. The default is None.

state_space()[source]

Returns the state space formulation of the shaker model of the form

x_dot = A@x + B@u y = C@x + D@u

Returns

  • A (np.ndarray) – State (system) Matrix.

  • B (np.ndarray) – Input Matrix

  • C (np.ndarray) – Output Matrix

  • D (np.ndarray) – Feedthrough (feedforward) Matrix

Notes

The dof order of the state matrix is
  1. armature displacement

  2. body displacement

  3. forcegauge displacement,

  4. armature velocity

  5. body velocity

  6. forcegauge velocity

  7. current.

The dof order of the input matrix is
  1. external force on armature

  2. external force on body

  3. external force on forcegauge

  4. shaker voltage

The dof order for the output matries is
  1. Displacement of armature

  2. Velocity of armature

  3. Acceleration of armature

  4. External force on armature

  5. Displacement of body

  6. Velocity of body

  7. Acceleration of body

  8. External force on body

  9. Displacement of forcegauge

  10. Velocity of forcegauge

  11. Acceleration of forcegauge

  12. External force on forcegauge

  13. Shaker voltage

  14. Shaker current

  15. Current change per time

  16. Force on coil due to electronics

  17. Force in stinger

transfer_function(frequencies)[source]

Computes the shaker transfer function matrix

Returns

H – A transfer function matrix.

Return type

np.ndarray