Static Analysis of a Pillow Box Bearing

Follow

tutorial-pillow-process.png

Section 1 - What will you learn in this tutorial?

You will learn:

  • The Basic Simulation Workflow in Onscale Designer
  • How to import a 3D CAD model in step format
  • How to assign loads and boundary conditions
  • How to perform a static analysis
  • How to get displacement and stress results
  • How to modify the analyst script file to add additional type of calculated results
What is a pillow box? A pillow block usually refers to a housing with an included anti-friction bearing. A pillow block refers to any mounted bearing wherein the mounted shaft is in a parallel plane to the mounting surface, and perpendicular to the center line of the mounting holes, as contrasted with various types of flange blocks or flange units. A pillow block may contain a bearing with one of several types of rolling elements, including ball, cylindrical roller, spherical roller, tapered roller, or metallic or synthetic bushing. The type of rolling element defines the type of pillow block.

Section 2- Problem Definition

pillow_box_main_image.png

Characteristics of the model:

Model:

Pillow Box of Dimensions 200 mm x 200 mm x 250 mm

Mesh Size:

4 mm

Simulation Iterations (Conjugate Gradient Method):

1000 iterations

Output Results:

-Time History of X Displacement at [100,10,9.9]

-Data Snapshot of X Displacement 

-Data Snapshot of Stress XX

- Von Mises Stress (Calculated Property) 

Material Data:

Name Mild Steel, Generic
Code Name steel
Density 7,900 kg.m-3
Bulk Velocity 5,900 ms-1
Shear Velocity 3,200 ms-1

Section 3 - Why This Simulation?

In real life, pillow boxes can be of huge size and undergo extremely high mechanical stresses. We want to make sure that the design of this pillow box will resist the current applied loading.

In this simulation we will apply a 40,000 N force to the flange around the hole of the pillow box while fixing the holes and applying a symmetry load to the XZ Plane.

Section 4 - Step by Step Tutorial in Video

Here's the tutorial recorded in video:

The procedure is detailed in text after that: 

Section 5 - The Simulation Process:

Let's go through the step by step tutorial and see how to simulate this Simple Beam in OnScale!

Step 1 - Create a New Project

  1. Click on New Project
  2. Click on mm for the distance unit
  3. Enter the name "pillow box"
  4. Choose the project save location
  5. Click on OK

pillow1.png

 Note: You can click on the image to make it bigger if you can't read well the text inside it. 

Step 2 - Import the CAD model

Download: Pillow Box CAD Model

  1. Click Import
  2. Click ... and open the bracket.step model file
  3. Enter the file scale factor 0.001
  4. Click Import

import.png

Important: The Scale Factor is important to scale all your model to the right dimensions. When you choose "mm" as the unit, it only sets up the OnScale environment to use this unit. The real dimensions of your model depend on the software that was used to create it. In this case for example, if you set the scale factor to 1, your model dimensions will be 1000 times too large!

Step 3 - Add the "Steel" Material from the Material Database

  1. Click on Project Materials
  2. Unfold the Menu Metal
  3. Select "Mild Steel, generic" with the code name "steel"
  4. Click on the right arrow
  5. Click on Done

pillow4.png

Step 4 - Assign the Material to your Model

  1. Right click on your model
  2. Select Assign Material > steel

pillow5.png

Note: You can also assign materials by clicking on the geometry in the Model Tree and then assigning the material into the geometry property window, it leads to the same result. Use whatever is best for you.

Step 5 - Review the Mesh

  1. Unfold the Mesh Menu in the Model Tree and select Configuration
  2. Review the mesh properties used
  3. Click on the Model Graphics tab
  4. Click Show Approx. Meshing
  5. The grid will appear on your model giving you an indication of the current grid size
  6. Follow the same procedure to hide the grid

pillow6.png

Important: The size of the grid is absolutely critical to get accurate results. It is generally advised to do a "Mesh Convergence" analysis to select the most appropriate mesh size for your model. A mesh that is too coarse will give you bad results and a mesh that is too thin will take too long to calculate. Mesh Convergence analysis is done by changing the mesh size from coarse to small and observing the results at some specific location that interests you. You can then spot when the results start to converge to a stable "accurate" value.

Step 6 - Create the 40,000 Force Load

Create the load

  1. Unfold the Boundary Conditions Menu
  2. Click on the "+" at the right of the Loads menu item
  3. Select the surface of the model indicated in the image
  4. Click Create Load

load1.png

Create the static forcing function

  1. Unfold the Forcing Functions menu
  2. Click on the "+" at the right of the Static menu item
  3. Enter a 40,000 (N) in the amplitude property field

pillow8.png

Important: Load unit has to be entered in Newtons here. Make sure that your unit is correct!

Modify the load properties

  1. Click on load_1
  2. Select Force as the load type in the property window
  3. Select staticfunc_1 in the forcing functions
  4. Select Scale
  5. Enter -1 in the X direction to define the direction of the Force

pillow9.png

Note: Static loads can be defined as Forces or Pressures. The main difference is that a Pressure is a Force divided by the surface it is applied to and pressures are generally normal to that surface while Forces may have more general orientation.

Step 7 - Create the Fixed BCs of the Holes

Create the boundary conditions (Fixed loads)

  1. Add a new load by clicking on the "+" button
  2. Enter 180 as the surface angle in the load definition window
  3. Select the internal surface of the first hole
  4. Click on Create Load
  5. Select the internal surface of the second hole
  6. Click on Create Load again

fixedbc.png

Note: Loads are also a type of boundary condition, and "Fixed" loads are in fact areas of the model where displacement is set up as "0".

Modify the properties

  1. Select load_2
  2. Choose Fixed as the load type
  3. Select load_3
  4. Choose Fixed as the load type

pillow11.png

Step 8 - Create the Symmetry BC on the YZ Plane

  1. Unfold the Domain Boundaries menu
  2. Click on Y minimum
  3. Select Symmetry as the boundary type

pillow12.png

Step 9 - Set the Analysis to Static

  1. Click on Analysis
  2. Select Analysis Type > Static

pillow13.png

Why do I have iterations for a Static Analysis? Solving a static problem is equivalent to performing a simple matrix inversion, but here in OnScale we’re using a conjugate gradient method, which solves it iteratively. You can search for ‘stat’ in the software documentation for more details.

Step 10 - Assign the output_1

Note: In OnScale, you have to define beforehand which results you want to see out of this model. This is done mainly to decrease the amount of memory required to calculate results that you don't even need and also to decrease the amount of data to be downloaded every time from the cloud, so choose wisely what you want to get from your model!

Add a time history output for x displacement at (10,50,150) position

  1. Click on Outputs
  2. Click on the "+" sign
  3. Choose Time History as the output type
  4. Choose Displacement as the array type
  5. Enter 10,50,150 in the location for X,Y,Z respectively

pillow14.png

Note: The Time History type of results gives you a way to monitor the results at a specific point of your model. It is useful to make sure that the solution converged and that the results are getting close to what you expect. Setting up such monitoring points also vastly simplifies the post-processing work you will have to do after you get the results! (No need to extract manually those results from the 3D model after each model solve; it is done automatically and can be automated with some simple script so no manual intervention is needed.)

Add a X displacement snapshot output

  1. Click on the "+" button at the right of Outputs
  2. Add a Data Snapshot
  3. Choose Displacement as the array type
  4. Select the X array component

pillow15.png

Important: Snapshot results are the way in OnScale to obtain the full model data at every node or element. If you define some views and a number of frames in the "Runtime Graphics" Menu, you will get snapshots at each time such a frame is taken. Be careful because the more frames you define, the bigger the snapshot data file becomes. For Static Analysis, you are only interested in the final iteration result, so you don't need to define several "Frames". This could be useful for dynamic analysis though.

Add a XX Stress snapshot output

  1. Click on the "+" button at the right of outputs
  2. Add a Data Snapshot
  3. Choose Stress as the array type
  4. Select the XX array component

pillow16.png

Note: We will see in a later part of the tutorial how to obtain more complex stress criteria such as "Von Mises".

Step 11 - Run on the Cloud and Download the Results

Run the model on the cloud

  1. Click Run on Cloud
  2. Click the Estimate button
  3. Choose 8 CPUs
  4. Click on run

pillow17.png

How does the "Estimator" work? The Estimator, like its name indicates, calculates one step of your model and provides an estimation of the Model Solve Time. This estimation is done with complex algorithms and a lot of simulation experience and provides a result as close to a real model run as possible.
What are Core-Hours? A core-hour is a measurement of computational time by a processor core. In OnScale, if you run one CPU for one hour, that's one core-hour. If you run 1000 CPUs for 1 hour, then that's 1000 core-hours. More details here.

Download the results

  1. Click on storage
  2. Click on the green refresh button
  3. Select the job you ran
  4. Click on the download button
  5. Select download all

pillow18.png

Switch to Post processor

pillow19.png

Note: The Post Processor of OnScale is where you can review and process the results calculated during the simulation.

Step 12 - Review the results

Visualize the X displacement Time History results

  1. Select the File Explorer tab
  2. Make sure you are in the right folder
  3. Double-click on the pillow_box.flxhst file
  4. Double-click on the X displacement result xdsp

pillow20.png

Note: The results that can be opened are the ones displayed with a small OnScale Icon in gray. These are generally classed into 3 types: flxdato, flxhist and snapshots.

We observe that X displacement converges towards a certain value after around 500 steps

pillow21.png

Visualize the X displacement results

  1. Double click on snapshot.flxdato
  2. Double click on X

pillow22.png

pillow23.png

Important: Models in OnScale are calculated using a "grid" Hexa Mesh. This is why the results looks like something you would see in "Minecraft". You get an accuracy equivalent to other software using Tetra element, and most of the time even better because OnScale uses Hexa elements which are more accurate. If you want nevertheless a better definition, you can get it by refining the grid size. 3D Tetra elements are for the moment only available in the Analyst Mode.

Visualize the displacement deformed shape

  1. Click on the Model Graphics tab
  2. Click on Deformed Grid Plot

pillow24.png

Step 13 - Add the Von Mises Stress in the Analyst mode

Note: Currently Von Mises need to be defined in Analyst, but this functionality will be available in Designer soon. You can consider it now as a small exercise to understand how to calculate results using script.

Open the folder in which your analysis files are located and double click on “pillow_box.flxinp”

If you didn't follow the previous steps, you can download directly this file here:

Download: pillow_box.flxinp model file

pillow25.png

Locate where calculated properties are defined and add the sj2p array

calc
	disp 		 /* calculate displacements
	strs xx 		 /* calculate stresses in the field
	sj2p
	end

Locate where the data snapshot output is defined and add the 2 lines of codes to calculate Vmises from the sj2p stress invariant

data
	file out 'snapshot.flxdato'
	math vmises = sqrt ( 3. ) * { sj2p }
	out vmises
	out xdsp 
	out sgxx 
	end

Note: The math command is useful to do some math operations over the results calculated by OnScale. Calculated arrays like sj2p here have to be defined into the calc command and then put inside accolades to be used after the data math command.

Run again your model on the cloud and download the results

  1. Click on Run on Cloud
  2. Click on Estimate
  3. Choose 8 CPUs
  4. Click on Run

pillow31.png

 Download the results

  1. Click on Storage
  2. Click on the green arrow refresh button
  3. Select the job you run
  4. Click on the download button
  5. Select Download All

pillow32.png

Switch to Post processor and open the vmises results

  1. Select the File Explorer tab
  2. Double click on the snapshot.flxdato file
  3. Double click on the vmises result

pillow34.png

Note: Make sure that the results that you open are the latest results issued from your last cloud computation by checking the folder name and comparing it with the job that you run on the cloud.

pillow35.png

Important: Stress results in OnScale are extracted at the element center and without any kind of nodal averaging. If you compare those results with another software, make sure that you are looking at the same kind of stress. You can't compare chicken eggs with ostrich eggs ;-)

Section 6 - Try for yourself 

Now that we have introduced you to the tutorial, try have a play around with some of the settings, add some other outputs, or use this model as a starting point of your own.

If you have a problem that you do not know how to solve with the current tutorial, please leave a comment or send us a message and ask!

0 out of 0 found this helpful

0 comments

Article is closed for comments.