I have a vibration motor contained in an object. The motor looks similar to this:

Typical vibration motor

When the motor is running, I want to simulate the movement of the container object that results from the vibration of the motor. I'm able to model the parts/assemblies in SolidWorks. How can I model or simulate the movement of the motor and the container object?

  • $\begingroup$ physics game engine? $\endgroup$ Commented Mar 16, 2015 at 16:56
  • 1
    $\begingroup$ Please read this Help Center article and note that we do not allow questions asking for product suggestions or recommendations. It seems to me that your question could be expressed in a way that fits our scope. If you disagree with the way I have edited your question, please let me know, and we can consider other options. $\endgroup$
    – Air
    Commented Mar 16, 2015 at 17:52

2 Answers 2


@Narada is correct, but I their answer is a bit short on detail, so I will expand on it.

Calculating Force

First, you can calculate the force that the motor exerts on the containing object from the acceleration of the mass at the end of the motor shaft. As the mass rotates, it accelerates toward the motor shaft at a rate $\omega^2 y$, where $\omega$ is the angular velocity and $y$ is the distance from the motor shaft to the centroid of the mass. If we assume that the mass is a perfect semi-circular prism, then $y = \frac{4R}{3\pi}$, where $R$ is the radius of the mass.

Once the acceleration is known, the force can be computed by Newton's Second Law, $F = ma = m\omega^2 y = \frac{4mR\omega^2}{3\pi}$.

The direction of said force is always directed toward the motor axis, so as it spins it alternates between purely horizontal force and purely vertical force (or two different horizontal directions if the motor is mounted standing up). We can decompose the force into vertical and horizontal forces by using sines and cosines, and realizing that the angle of the mass is equal to $\omega t$, where $t$ is the elapsed time.

$$F_{x} = \frac{4mR\omega^2}{3\pi} \cos{(\omega t)}$$ $$F_{y} = \frac{4mR\omega^2}{3\pi} \sin{(\omega t)}$$

Here $F_x$ is the horizontal force and $F_y$ is the vertical force.

Simulating Vibration

If you have the Solidworks simulation software, you can apply the $F_x$ and $F_y$ loads at the point of the vibration motor and Solidworks should give you the vibration behavior of the structure.

Alternately, if you just want to know how far the vibration motor will move your object and the vibration motor is mounted close to the center of the object, you can just use Newton's laws of motion and treat your whole object as some mass with an applied force.

Noting that the angular velocity must be the same for the vibration motor and the object (assuming a rigid body with no other vibration motors) one can see that $m_{motor}y_{motor} = m_{obj}y_{obj}$. Since all but $y_{obj}$ are known, you can easily get an estimate of how far the object will move. The object will alternately move to $\pm y_{obj}$ in both directions.


The vibrator is a rotating object with an eccentric center of mass. It can be lumped at a given offset. The force is calculated using F = mrw^2.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.