Submitting all four homework assignments will qualify you for a Certificate of Completion.
Homework 2 - Deadline: Date, 27th of May, 11:59 pm
Since our drone consists of different components from different materials, they have to be connected somehow. In this case we are manly using screws to connect these parts. One of the most loaded connection is the one between the drone arm and the two base plates.
The decisive factor for the stability of this connection is the preload between the base plates and the arm which can be controlled by the tightening of the nut. The simplification we made in the first level of this homework can therefore have a big impact on the deformation of the arm.
Our aim is to set up the deformation of the drone arm when applying the lift force on it. We just fixed two sides of the arm, in this level we will use the full assembly of the drone arm including the screw connection to consider the preload of the screws and the connection between arm and base plates. Due to the preload, the arm base will be deformed. In this exercise change the preload by making the appropriate changes to the pre-stressing.
Use f value of 5e-5, 1e-4, 1.5e-4, 2e-4, in the pre-stressing formula, keeping the lift force same. Run 4 simulations with these values. These points will be clarified along the tutorial.
Additionally you can also change the lift force, arm truss thickness etc. These additional design parameters will give you a hint about the actual design process. You are encouraged to play with these parameters on you own.
For this project you will be given a link to the Onshape CAD project. Onshape is an online CAD modeling platform, which allows full CAD modeling from the web browser. Onshape models can directly be imported to SimScale. Please make sure you have an Onshape account (you can create a free account HERE).
If you have the Onshape account you can make the changes to the model and then import it to the SimScale.
To get the Onshape model click on this link. Make a copy of the project by clicking the Make a Copy button.
(NOTE: You must be logged in to copy the project in Onshape)
- Once the project is copied to your Onshape workspace you can start modifying the model.
- To change thickness of the arm, move to the Arm tab.
In the left column you will find the CAD tree. Scroll down in the CAD tree to find the ArmThickness operation, double click it and define the thickness parameter (between 0 to 0.0008m).
Note that this is the relative thickness, the idea here is to see the effect of the truss thickness on the maximum stress in the arm.
- Once you are satisfied with your arm design, open your SimScale project and click on the Import button. The Onshape connector app will appear in a pop-up window. Import the Drone_Arm_Assembly into SimScale.
- In the Mesh Creator tab, click on the geometry Drone_Arm_Assembly
- Then, click on New Mesh button in the options panel.
- Select Tet-dominant and define following parameters:
- Maximum mesh edge length [m]: 0.001
- Minimal mesh edge length [m]: 0.0006
- Element order: First order
- Mesh grading: 3 - Moderate
- Allow quadrangular surface element: true
- Number of computing cores: 4
- Click on Save to save the setting.
Now we have defined a range for the base mesh size which is fine for regions where we are not expecting high stress. Here you should keep in mind that, in general, the mesh size is related to the local accuracy of the simulation. It is therefore necessary to refine the mesh in those areas where high stress is expected and the curved surfaces with very small curvatures (fillets) where the stress concentration will appear.
We will now apply local refinements on two areas where we expect high stresses and high deformations.
- Click on the New button under Mesh Refinement.
- Specify the following parameters
- Maximum mesh edge length: 0.0002
- Minimal mesh edge length: 0.0002
- Mesh grading: 4 - Fine
Now we have to assign the faces where we want apply this mesh refinement. We will apply this refinement to the common faces of bolts and base plates.
- Change the selection mode to faces (1) select the faces in the 3D model window on the left side by clicking on them with the left mouse button, to select the required faces hide the unnecessary parts and select the faces (2) ; to add them to the list, just click on the Add selection from Viewer button in the middle column (3) and Save your settings (4).
- Now our mesh is ready for computation. Click on the Operation_1 in the project tree and click the Start button.
- Once the mesh computation is finished, you will see Finished status in lower left corner and in the viewer you will see the meshed geometry.
After the mesh is completed we will set up the simulation. Click on the Simulation Designer tab.
Click on New button to create a new simulation and give it a suitable name (optional).
Select Static analysis - advanced as Analysis Types, set Nonlinear analysis to True and then click on Save.
Going forward, this tree will guide us through all necessary steps. Please note that some of the items are optional.
- Next you have to specify which mesh you want to use for your simulation. Click on Domain item in the project tree and select Drone_Arm_Assembly mesh from the menu and then Save.
- Select surfaces in Rendering mode to hide the mesh in the geometry.
Since we are simulation an assembly of five parts it is necessary to define ** Contacts** which are describing the kinematic behaviour of the parts.
- Click on the Contacts item in the project tree which will open a new middle column menu where you can add new contacts by clicking on the New button.
Now we have to create two contacts which are connecting the contact surface of the arm with the base plate. To select them graphically it is necessary to hide some of the parts.
- Type: Bonded Contact
- Master entity: faceGroupOnGeoFaces_121
- Slave entity: faceGroupOnGeoFaces_91
- Type: Bonded Contact
- Master entitiy: faceGroupOnGeoFaces_146
- Slave entity: faceGroupOnGeoFaces_95
Next we will define the Physical Contacts. In contrast to Contacts, they are covering the physical interaction between parts. We will use them to specify the contact between the head of bolt respectively the nut and the base plate. This will help us to define a pre-stressing effect of bolts.
- Click on the Physical Contacts item in the project tree. This will open a new middle column menu where we first will adapt Global Settings. Here change the following:
Friction to ‘Coulomb’
Newton iteration criterion to ‘0.001’
Next create a new contact by clicking the New button.
This will add a new contact to the project tree. We then have to do the following changes:
Change Type to ‘Friction penalty contact’.
Change Penalty coefficient to ‘1e13’
Change Coulomb coefficient [-] to ‘0.3’
Change Add fictitious clearance to ‘Yes’
Click function button under Slave clearance [m]
Give the following formula: 0.0002t(t<=1)+0.0002*(t>1)
This formula represents the pre-stressing of bolts by moving master and slave surface to 2e-4 meters with respect to each other for the first timestep i.e. until t=1. Next when t>1, this will be kept constant so that we don’t loose prestressing effect in our loading timestep. To change the pre-stressing, change f in the formula ft(t<=1)+f*(t>1)
Specify the parameters according to the image and assign the respective faces to master and slave.
Select Solid Materials
Now we define and assign material properties to the different parts.
- Click on the Material item in the project tree. This will open a middle column menu where you can edit and create materials and assign them to volumes. Click on the New
Now you can define your new material based on your own material properties or access our *Material Library which includes ready-to-use material models for several materials.
- Click on the Import from material library
Click on ABS - Acrylonitrile Butadiene Styrene and press Save.
And assign it to all parts except the screws.
- Save the settings.
Next we will create and assign the steel material model to the screw connection.
- Add an additional material to your project tree by going back to Materials and then clicking on
Click on the Import from material library.
- Please select steel from the list on the left side and save your selection by clicking on Save.
Now assign the material to the two screws.
- Save the settings.
Next we can start to define the boundary conditions.
There are two kinds of boundary conditions for static structural simulations.
- Constraint conditions are used to limit the degrees of freedom of the model.
- Load conditions are applying an external load to the model
- First we will add three constraint boundary conditions which are needed.
This boundary condition is required because we are using a quarter model of the drone.
Create a new constraint boundary condition by clicking the New button after going to Constraints in the project tree.
- Change the following parameters
- Name: Symmetry
- Type: Symmetry Plane
- Please assign all surfaces of the drone base plates which are bounding with the two imaginery symmetry planes and therefore behaving like a symmetry plane.
In this constraint boundary conditions we have to define is a fixation in Y direction. This is only necessary for Y direction since the model is already fixed in X and Z direction by the symmetry plane boundary condition.
Create a new constraint boundary conditions following the step mentioned above.
Change the following parameters:
- Name: Fixed
- Type: Fixed value
- x displacement: unconstrained
- y displacement: prescribed with a value of 0
- z displacement: unconstrained
In contrast with the other three boundary conditions, we will map this one only to a single node of the model. For graphical selection you have to change the selection mode to nodes.
- Name: ElasticSupport
- Type: Elastic Support
- Spring stiffness: Isotropic
- Stiffness definition: total with the value 50N/m.
Assign the bottom faces of the screw for this boundary conditions.
We are now on the home straight. We will apply the lift created by the propeller on the arm. We therefore apply load boundary condition.
Create a new Load boundary condition by clicking on New button after to going to the Load entry in the project tree.
- Change the following parameters:
- Name: Forces
- Type: Force
- Click function button under fy [N].
- Give the following formula: 3*(t-1)*(t>1)
This formula will apply the lift load of 3 N only when t>1. (t-1) is used since we want to apply a full load of 3 N at the end (2 seconds).
Note to change the load change the force in the formula as force*(t-1)*(t>1).
- Finally assign this boundary condition to the top surface of the motor mount.
Numerics, which is the next item in the project tree, can be skipped since the default settings are fine.
Click on the Simulation Control item in the project tree to specify how fast and accurate you want the simulation to be computed.
- Change following values/settings:
- Timestep definition: Auto
- Simulation interval: 2
- Initial time step lengths: ** 0.25**
- Number of computing cores: 4 (that will accelerate the computing process)
Please note that static linear simulations are not solved iteratively. The simulation time here is a kind of ‘pseudo-time’ which is for example used to modify the lift force based on the function we defined. The calculation will stop automatically when an aimed residual is reached.
- Click on the Result Control item in the project tree which will open a new middle column menu.
- Click on the New button near *Edge calculation
- Now define the Result Control item as follows:
- Name: Arm
- Type: average
- Field selection: displacement
- Component selection: y displacement
- Map it to the leading edge of the arm by first changing the render mode to surface with wireframe and choose edges for Filter for entity types (1).
- Change the selection mode to Edges (2) and select the leading edge (3) and click Add selection from viewer (4).
- Click Save to save all settings (5).
- To start the simulation, click on the Simulation Runs item in the tree and click on the New button.
- You can now start the simulation run by selecting it from the project tree and then click on the Start button.
- Once your simulation is finished, you will see a Finished status in the lower left corner.
- Click on Post-processing tab.
First of all we will take a look at the Result Control item we added.
- Expand the Edge calculation item in the project tree and click an the lowest element.
This will plot the change of average displacement for the arm versus the time. First the deflection is downwards due to pre-stressing and then upwards due to the lift force.
- Next we will take a look at the 3D result. Click on the Solution fields in the project tree. Now you can perform the solution field post-processing.
- To visualize the deflection of the arm, add a filter Wrap By Vector by clicking Add Filters.
- Change the plotted field to von Mises stress by clicking appropriate button. Also hide the Run 1 by clicking the corresponding eye sign.
To better visualize the results, rescale the colorbar by clicking the Scale button and then inputting the appropriate valve.
Finally run the simulation results by clicking the play button under Time/Frame.