Since I work mostly with riveted joints with dozens, hundreds if not thousands of rivets, usually setting up so many connections is very tedious. To improve this aspect and bring new functionalities to the software, I would like to suggest faster ways to connect many parts.
RBE connecting many geometric features: in this tool, the selected geometries would be connected together using a RBE. One can select adjacent edges that will be glued or welded together or cylindrical faces that would be connected using a fastener. This can be done with current implementation in PrePoMax, but is not fast since each step must be done manually.
Inputs: Geometric elements to be connected. Processing: RBE location is arbitrary since no load or BC would be applied to them. It can be calculated as the center of mass of the nodes belonging to the selected elements, for example. Outputs: RBE connected to the selected geometries.
In the example, when using this command and selecting the cylindrical faces from both holes, the RBE would be created automatically:
Mesh independent fastener: Usually, the mesh does not have holes in which the fasteners will be mounted in. Instead, it is modelled as a continuous material and the user specifies connection between the layers. The user inputs the location of fasteners (such as XYZ or reference points, etc) and indicates which layers will be included in the connection. The program automatically calculates normals between the surfaces in which springs/beams will be created and connected to the nearby elements using RBE or distributed coupling. The “radius of influence” determines how many elements will be included in the spider, and is also a user input. This approach is used by Hypermesh and Abaqus, but I never tried in the latter. I think it’s very complicated to implement, but it is also very powerful.
Inputs: Fastener location using reference points or XYZ coordinates, layers to be connected, radius of influence and fastener data such as diameter and material. Processing: Calculation of normals, creation of beams/springs, connection to nearby elements using RBE. Outputs: Something like this:
Direct connection: this method would be similar to the last one, but the connection would be made point-to-point without using spiders to distribute the loads and is not necessarily mesh independent. Using a RBE, spring or beam, two nodes would be connected directly. Currently, this can be done using RBE, but ideally beams or springs node-to-node would be better to model the fastener stiffness. Additionally, it would be nice for this feature to be used anywhere in the geometry even if there are no “pickable” vertices. Since PrePoMax is geometry-based instead of mesh-based for modeling, I would suggest to make nodes of the mesh to lie exactly where the user wants the connection to be established, maybe GMSH has something useful in this regard.
Inputs: Fastener location using reference points or XYZ coordinates and fastener data. Processing: Creation of RBE/Beam/Springs (additionally, force the mesh to have a node exactly where the fastener will be included if it doesn’t lay in an existing vertex). Outputs: Something like this (please ignore the text), just a element between two nodes.
I hope this give some ideas about this subject and hopefully sometime in the future we’ll have this available! Thanks for the continuous development of this software.
simplified model of bolt by spring element still challenging there’s normal/axial, shear and bending moment need to transmit between part connected. Problem in affected zone or areas of each force action is different, axial located at bolt head or nut meet outer face of plate, shear in bearing at middle high plate, and bending is in between. Problem become more complex since the boundary is nonlinear, axial/normal direction is tension only, shear and bending by bearing is compression only. Also, nonlinear material of plasticity in bolt part due to all possible force. It seems spring element in CalculiX can not represent all of them, specifically in shear transfer. Beam and solid element is capable, another advantages in prestressed definition and internal force reported. So it would be something like part library by selecting outer circle edge, maybe these approaches similar as previously discussed at another threads.
Maybe the new tool could create the washer partition on the plates, and then create the rigid spider, the beam element representing the bolt, and apply the desired preload.
but, modify geometry in partition seems complex task probably, and still needed to provide in CAD models initially by user. Modeling bolt by spring have different level of accuracy, intermediate is representing by axial/normal stiffness (non-linear spring) and shear stiffness (linear spring) may good enough even rotational spring for bending is ignored. These approach is commonly used by another FE codes and possible in CalculiX also, some precalculated values need to be done for stiffness input. It’s based on bolt dimension (diameter, length) and material.
For all ideas I proposed, these phenomena are neglected. For a detailed joint analysis, usually dedicated models are needed and it’s uncommon to see these in industrial applications, usually bearing, tear out and fastener margin of safety are enough to proceed with the proposed joint. The book " Analysis And Design Of Aircraft Structures" by Bruhn has very well detailed models for each type of failure. If the joint is bolted, then of course the pre-stress due to torque must also be considered, but I’m not so familiar with that.
right, simplified model with zero or one dimensional element have different level of accuracy, rigid one is a low and basic level, spring and beam at intermediate and higher.
as i know, detailed bolt joint model and analysis referring to 3D solid model including threads, nut and washer interaction. Nonlinear spring, beam and gap element still classify as simplified ones even advanced. Abaqus lack of feature, but Catia, PTC Creo, Ansys (plugin) and Idea Statica have this.
probably it can be very much useful when PrePoMax in the future versions can generate all these type of simplified bolt modeling i.e spring, beam and detailed one using solid element part library.
Interesting, @synt , I have few experience with these for fastener modelling. I’m sure it would open new possibilities.
Yes, but not only these. The bearing allowable for aeronautical structures usually is dependent on the edge distance (1.5D or 2D as stated by Bruhn) and the shear component of the fastener is used for this calculation. Here is an example for a lug, but the same idea applies for any type of fastener connection:
For tear out, there are many types: the section can tear as illustrated by the lug below influenced by the shear component of the joint. Other type of tear is usually called pullout and is illustrated by the first two failures of the second picture below, in which the plate fails under the tensile load of the joint:
The other two failures represent the fastener strenght itself, and are not influenced by the plated being connected. Although the fastener can fail under pure shear or pure tensile, usually a combination of both takes place and a interaction formula must be used. If you’re “inside” the curve, the fasteners is safe. Otherwise, it will fail:
Each failure mode has its own characteristics and probably a lot to discuss about. But in any case, the input for margin of safety calculation is the shear force (sqrt(x²+y²)) and the tensile force (z) of each fastener.
Wow, Nice explanation. Thank you very much.
I’m also asking to figure how many of those loads could be extracted from the model without the need of including the beam , spiders, or spring itself. ¿?¿
That would simplify the automation a lot.
I tried to extract it directly from the RBE, but I got null results for all force components. I guess it makes sense because my RBEs are connected to both cylindrical faces, and the net force should be zero. Maybe some shenanigans with more than one RBE could work?
I’m sure you are more experience than me with rivets.
What about two oposite kinematic couplings sharing the same ref node?. That allows for a certain rotation of each side and one can extract reaction forces directly from the kinematic nodes involved in the coupling.
I have try with a four inline single shear riveted connection and load distribution looks promising. Note there are no springs, spiders or beams involved which would be easier for Matej in case this approach can be useful. S4 elements.
I have download that amazing paper and will try to do some of the examples shown there to compare. I made a mistake while importing and my dimensions do not make any sense in terms of real world stresses but I was interested in posibbility of the aproach and % of load distribution just to start. https://www.researchgate.net/publication/345015566_Optimal_modelling_of_rivet_joints_using_finite_element_method
I showld have done it from the beggining but found that paper later.
maybe i’m missing, it seems nonlinear spring is possible for shear by general MPC., turn of nut for prestressing also. Draw two node spring/beam feature can help a lot for this task. Simplified model have large variance of approach by many publications, some specific such as RBE3 and CBeam in Nastran approach can not be applied to CalculiX. Hopefully drawing two nodes 1D element is in priority.
Hi Anys, I’m not so sure if I understood it properly. Something like the left hole in this section view? Two different rigid body constraints using the same reference node?
In this case, I still cannot extract the forces directly from the RBE, but the workaround I did was to use the nodes from the cylindrical hole to extract the forces.
That’s a really good paper about riveted connections! I’ll look if I can reproduce the results as well.
I’m using two opposite kinematic coupling at the washer area (not cylinder) sharing the same central ref node.
Kinematic doesn’t have rotational degrees of freedom so I thought there would be less chance to give convergence problems.
Washer area to avoid overstiffening the connection area.
Sharing a unique central node so each side can still rotate around the ref independently.
Yes, it allows extracting the RF as a summation of the nodes directly as you did.
i do simple test, convergences of fully rigid model shown can not be faster than 1D model approach. Number of iteration is larger and become longer in computational times, ratio about 2:1 respectively for the same mesh and problem setup.