A compound pendulum under the action of uniform gravity is simulated using Multibody Dynamics and the Finite Element Method (MbDFEM). The objective is to determine the stresses induced in the material, resulting from the motion dynamics (force and torque) generated at the hinge joint.
The video on the left shows the final results of the pendulum MbDFEM simulation.
The video on the left shows the final results of the pin MbDFEM simulation, which are detailed below.
The assembly is composed of two FreeCAD parts:
The image on the left shows the pendulum and pin dimensions. The image below shows the isometric view of the pin and pendulum CAD geometries, along with the global coordinate system.
A material is assigned to both parts. Average steel is used in this example. From the CAD geometry and the assigned material, the physical properties of both parts are computed.
The tables on the left show the properties of the pin and the pendulum.
The table below contains the average properties of steel. The density is used to compute the mass and mass amtrix of inertia shown on the left. The Poisson's ratio and the Young's modulus are used by the FEM solver.
The pin is grounded (all 6 degrees of freedom are fixed to the global inertial coordinate system). Earth gravity (9.807 m/s^2) is pointing in global negative Y direction. The pin and pendulum each have one joint marker attached.
A hinge joint is defined between the two markers. This joint ensures that:
The image on the left shows the two markers and the joint connector. The image below shows the pendulum initial assembly. The direction of gravity is depicted by the white arrow in both images.
The pre-processor generates an input file for the MbD solver (MBDyn). This file is in *.mbd format. The MbD solver is launched. The results of the MbD simulation are stored as properties of the FreeCAD parts and joints, and saved in the *.FCStd. file. For each part, the following data are stored:
The video on the left shows the pendulum motion.
The video on the left depicts an animated free-body diagram of the pendulum. It includes:
Force vectors are depicted by red lines. Torque by blue lines. The pin is hidden, for better visualzation.
Here, the FEM simulation is applied to the pendulum. FreeCAD meshes the pendulum using Gmsh. For ease of visualization, a coarse mesh composed of tetrahedron elements is used. The joint force FEM load is automatically distributed among adequate FEM nodes belonging to the joint hole cylindrical surface. These FEM loads follow a sine profile.
The d'Alembert principle ensures the pendulum FEM model is in static equilibrium throughout all the time steps. For this, the total acceleration vector at the center of mass of each tetrahedron mesh element is computed, and the negative of this acceleration is applied to the center of mass of each volume element in the FEM mesh. To prevent rigid-body motion, the pre-processor authomatically selects three suitable nodes and applies fixed boundary conditions using the "3-2-1" approach.
The video on the left shows:
Load vectors are depicted by red lines. Acceleration vectors in orange. The pin is hidden for better visualization.
The pre-processor generates a set of input files for the FEM solver, one for each time step of the MbD simulation. Each input file contains
the FEM loads from joint force and torque distributed among the adequate nodes, the d'Alembert and gravity acceleration vectors applied at the center
of mass of each volume element, the material properties (density, Poisson's ratio and Young's modulus), and the 321 constraints.
These files are in *.inp format.
The FEM solver is launched, performing a set of static simulations.
The results of each FEM simulation are stored as properties of the FreeCAD mesh object, and are saved within the *.FCStd file. These results include:
The MotionView post-processor allows the user to:
The video on the left shows the results of the MbDFEM simulation. The contour plots represent von-Mises stresses. The joint force FEM load vectors are show for clarity. Note that in this case joint torque is zero, and there are no FEM loads derived from it.
One way to validate the simulation is to compare the reaction forces that take place at the nodes used for 321-constraint; with the joint force FEM loads applied to the FEM nodes. If the computation of the d'Alembert accelerations is correct, then the pendulum must remain in static equilibrium through all the time steps. Then, the 321-constraint nodes must see no reaction force. In reality, due to error introduced during numeric approximations, the reaction forces at the 321-constraint nodes are a negligible fraction of the joint loads.
The plot below shows the joint forces expressed in global frame, while the plots on the left show the 321 forces output by the FEM solver. It is verifed that the 321-constraint forces are negligible compared to the applied joint loads.
A second way to verify the simulation is to inspect the stress around the nodes used for 321-constraint. If the 321-constraint forces were a significant fraction of the applied loads, then the FEM solver would return a significant stress at the 321-constraint nodes. However, the stress at 321-constraint nodes is negligible compared to the stress produced by the joint load, as can be seen in the contour plots.
The picture in the left shows the frame (time-step) of maximum stress which corresponds with the pendulum vertical position. The node of maximum stress is also shown.