Buoyancy Calculation in SOLIDWORKS
I have added this blog as it might prove useful to anyone who wants to work out how far beneath the water surface an assy will float. This came up in a training course with our customer Manuplas of Plymouth who make a variety of flotation aids.
Below is an illustration of a typical flotation aid. It is made of a foam internal structure encased in a rubber skin. It has a steel tube through the middle and will have a ballast weight beneath it as illustrated.
The physics says that when floating and at rest there will be an exact equilibrium of the forces acting upon the assy. In this case the weight of the assy pushing down is in balance with the buoyancy force pushing up.
Archimedes worked out that the buoyancy force is equal to the weight of the fluid displaced. This is ...
The mass of fluid displaced x gravitational acceleration or ....
p x V x g (where p = fluid density; V = displaced volume and g = 9.81 m/s2)
Balancing forces we get ...
M x g = p x V x g
Removing g on both sides of the equation we get ....
M = p x V and therefore V = M / p
M is a value we can get from the Mass Properties of the assy - see image below; p = density (1025kg/cu m of sea water); V is the unknown.
Therefore the buoyancy force is sufficient when the Volume, V = 238.8/1025 = 0.233 cu metres (assuming sea water).
If we can find a value of V that is equal to 0.233 cu metres, we can work out how deep into the fluid the assy would need to be to cause it to float i.e. the water mark.
A simple method for doing this is as follows ...
1. Create a Plane (let's call it the 'Water Surface' plane in the assy to represent the fluid surface. This should be at a distance from a plane on the top of the assy and in the correct orientation. Below the distance is set (initially) to 1m.
2. Using the 'Water Surface' create an Assembly Cut feature that cuts away all the parts of the assy in the upward direction. With the cut feature active, the model should represent the volume of the assy that lies beneath the water surface. In this example it looks like ....
3. The requirement is now to find a volume of the cut assy that satisfies the buoyancy equation. This can be done iteratively by moving the 'Water Surface' plane repeatedly until the volume equals the mass of the whole assy / the density of the fluid.
4. However, a far better method is to allow SoldiWorks to do all the hard work in a Design Study. For this you create a Design Study (Evaluate command manager) and then create a Variable of the 'Water Surface' offset dimension. The Variable should be set to a 'Range with step' between the likely min and max possible values with a small step size as shown below ...
5. For the Constraints create a sensor of the Volume of the assy - this is in the Mass Properties sensor type as shown below. Set the Constraint to 'Monitor Only'.
6. Now hit 'Run' (make sure Optimization is unticked) and you should see SOLIDWORKS cut the assy progressivley between the min and max dimensions. For the Float assy shown it does this in a few seconds!
7. The 'Results' table shows the Volume values for each design table scenario and you can read off the nearest value to the target value of 0.233 cu m. Below you can see that the required volume is between 1.785 and 1.79 m from the top of the assy.The 'Water Surface' plane is now where it would be if the assy was floating.
8. Alternatively you can create a graph of the Volume and read the scenraio that is closest as shown below ...
9. Users of Simulation Professional can take this further and use an Optimization study to get to the best solution in one go!
This might sound a little involved but once you have mastered the work flow it is a doddle!
Andy Fulcher
Technical Manager
Solid Solutions Management Ltd