Constraint to model interference fit?

New Mecway user here.

I am attempting to model a two-piece shaft collar which will clamp to a thin-walled torque tube.

The collar will have an interference on the diameter, relative to the shaft, when in the free state, to assure a positive preload at the interface. That way, as torque is applied to the shaft to generate angular accelerations, there will be (some) frictional force to ensure the collar does not slip on the shaft - even at high speeds (15,000 rpm is the max) when the collar will expand more than the thin-walled shaft due to inertial loads. The plan is to back up the interference with Loctite bearing and sleeve retainer compound, but I want the mechanical fit to suffice by itself.

I had hoped than I could simply assign a "bonded contact" constraint at the interface, which would force the two surfaces to coincide, but that doesn't appear to work, since I get displacement of zero at all mesh elements.

I did try applying pressure loads to each part individually and noting corresponding displacements (and vice versa) in an attempt to iterate to a common pressure value between the parts which corresponds to my high and low tolerance limits of the interference, but this is a bit painful.

Eventually, I'd like to "graduate" from my axisymmetric and revolved models to an actual mesh of the dumbed-down part geometries (via STEP file), but I'm just tinkering with very simplified models, for the moment.

I saw where Victor had noted in passing that frictionless displacements could assist in a situation like this (but without further discussion), and where another user had fussed with *SPRING constraints in the CCX cards. Victor noted that a spring-damper material could be applied to a line2 element, but I am concerned with stress variations through/within the thickness of my parts, so that doesn't seem workable for my case (unless I'm completely misunderstanding - it's happened before!).

Is there a trivial way of modeling the shaft/collar interference with reasonable fidelity, without hacking about with CCX cards (something I've not done before, but there is a first time for everything!)?

Thanks to anyone with previous experience on modeling a designed interference, or who has helpful conjectures regarding an approach.

Rusticus

Comments

  • edited August 2017
    Bonded contact should be work (be sure to use TIE option) or you can apply a temperature to the rod and thermal properties to work with the dilatation of the material. In this case you need to work with the CCX cards in the custom step feature.
  • Sergio -

    Thanks. I followed your suggestion (I didn't realize the TIE option appears in the "Bonded Contact" constraint once the CCX solver has been selected, but now I've got it).

    Do you have suggestions for an appropriate tolerance? I selected 0.0001" (my interference is on the order of 0.003 to 0.005" radially), but this generated a bunch of
    "*WARNING in gentiedmpc: no tie MPC ... master face too far away). I suspect that my tolerance isn't well chosen. I'll tinker with it a bit more.

    Thanks again for your help.

    Rusticus
  • True is that is a little bit confuse to me also. When I work writting the cards directly, I don't use this distance (solver takes a default value based on element size), but now I don't remeber if for using in Mecway must be slighty over the minimun distance that you have between the two surfaces to TIE.
  • You could combine the two solids in Salome to create a conformal mesh (coincident nodes at the interface) to avoid using anything and get a perfect gluing if you are not analysing the union itself.
  • Sergio -

    Hmmm, I don't feel quite ready to dive into the cards, just yet. No doubt that day will come.

    Again, many thanks to you. I'll play with the tolerance value and see if I can discover something which seems to solve without throwing (so many) warnings.

    To be clear, the solver did complete its run, but reported many (tens, at least, perhaps hundreds) of these warnings.

    It is curious that we are asked for this tolerance value in the Mecway interface, when you say that CCX makes up its own value on the fly when run from the cards. I'm sure there is a good reason, but I probably lack the imagination to think of what it is, since it is getting near to the end of my day...

    I am amazed at the analytical power which is available for so little money. When I was in university, running FEA required a UNIX workstation which cost as much as an engineer's salary. Mecway is almost free and can be run on commodity hardware.

    Rusticus
  • As a follow-up to my own post (bad form, I know!), Sergio has elsewhere suggested to me that I try using the TIE option in "bonded contact". This option only becomes available when the CCX solver has been selected in the Analysis settings. I hadn't realized that the constraint interface changed, depending on which solver was chosen.

    I haven't yet made it work, but I'm tinkering with it.

    Thanks, Sergio!

    Rusticus
  • Still replying to my own posts.

    As Sergio suggested, I did try various tolerances in the "bonded contact" constraint, over 9 or 10 orders of magnitude. What seemed to work "best" (meaning, no warnings were thrown, even in the "WarnNodeMissTiedContact.nam" file) was to use a tolerance about 1 or 2 orders of magnitude larger than my interference (e.g. 0.01" or 0.1" for my radial interference of 0.003" to 0.004"). Whether the interference is the correct basis for calculating the tolerance value, I am not sure. Incidentally, the shaft OD for this interference is nominally 5.430".

    Unfortunately, even though the nodes at the bonded surface on the two parts have the same radial offset from the axis of revolution (checked by selecting several nodes), no stresses are induced (all stresses are reported as zero). The zero stress values seemed to be true for all tolerance values, whether warnings were thrown or not.

    Displacement magnitudes of selected nodes are also reported as zero, even though they are no longer at the same coordinates as the original mesh - thus the bonded contact "worked", in the sense that the slave nodes were moved in the "Solution" to match the master nodes' radial location.

    Swapping master and slave faces in the bonded contact constraint yields "nonpositive jacobian determinate" errors.

    I even ran the CCX solver without the Y displacement = 0 constraint (applied belt-and-braces style to ensure the assembly can't drift axially), so that the only active load/constraint was the bonded contact.

    From some rough approximations, following formulas in Roark's, I would anticipate somewhere between 400 psi radially at the minimum and perhaps 2000 psi at the maximum interference, and about 10 times those values tangentially (again, very rough approximations due to simplifications of geometry, etc.).

    Perhaps I cannot use "Static 3D" analysis for this sort of problem?

    I will keep playing with this, and report back, whether I make positive progress or not.

    Rusticus
  • edited August 2017
    I don't think TIE is right for this because, as you found, it moves the nodes before solving so it doesn't impose any stress. The moving of the nodes isn't a feature for when you want to move things. It's there to make up for a shortcoming of the TIE technique which requires slave nodes to lie in the planes of the master faces. Bonded contact without TIE uses a different technique without this limitation so it doesn't need to move the nodes. In general, I'd recommend against using TIE unless you know specifically why you need it - eg nonlinear with large displacements, or you want a human-readable .inp file.

    I think thermal stress like Sergio suggested is probably the way to do it. Mesh the parts with zero interference and connect them in any way (bonded contact with or without TIE, compatible meshes, or regular contact if sliding is important), then use thermal loading to stress them.

    Using frictionless support with displacement is a connection to ground so it's appropriate if you aren't modelling one of the parts. Say you treat the shaft as rigid, you can put frictionless support on the inside of the collar and use the displacement to preload it.

    EDIT: If you don't specify a tolerance in the Mecway interface, it lets CCX choose it automatically.
  • Victor -

    Thanks for the guidance. Not being familiar with CalculiX, I wasn't too sure what would happen when using the TIE option.

    I will experiment with the thermal stress approach. I'll poke around in the Mecway manual, and maybe some CCX documentation, to see what needs to be done to implement this. That poking around may lead to further questions...

    I won't be able to use the frictionless support, since I need to understand the interaction between the two parts - deflection and stresses in each. I also need to (eventually) size an arbor for balancing and spin testing, so that the two piece collar is loaded similarly to how it will be loaded when mounted on the actual shaft.

    Also, thanks for clarifying that CCX will choose a tolerance if I don't specify a value. Have you considered flagging "required" fields so that they are visually distinct from optional fields? I am not a user interface person, so this may not be a wise choice, and I'm certainly not trying to make extra work for you.

    Thanks again very much for your assistance. Mecway has an enormous capability for the price - now I just need to figure out how to make good use of all of it. It feels rather like switching to telemark skis after growing up on alpine gear: lots of degrees of freedom, but how to make it all work together to do what I want?

    Rusticus
  • What is the correct workflow for simulating the pre-load by way of thermal stresses?

    The tutorial (section 2.4) seems to indicate the following:
    - run "Thermal Steady State" analysis, setting object temperature (and convection, which I don't care to model)
    - set analysis type to "Static 3D"; transfer temperatures from thermal solution (via new constraint). Run solver.

    A fair bit of geometry and material definition is interspersed, but this seems to be the gist of it.

    However, I seem to get similar results by simply running the "Static 3D" analysis, having set the object temperature in a constraint, applied a thermal stress by setting the ambient temperature in another constraint and applied the bonded contact between the mating surfaces of my two parts.

    The tutorial is the only clear example I have been able to track down of applying a thermal stress. Being far from expert in this, can someone point me another step-by-step example?

    TIA

    Rusticus
  • You're right that you don't need to do the thermal analysis first - that's for obtaining the temperature field in cases where you didn't know that in advance.

    While not a tutorial, the VibratingMembrane.liml sample file described in the manual uses thermal stress as a static preload like you're doing here.

    These are the key items needed for adding to a static analysis model:
    • Thermal expansion coefficient on the material. I prefer 1 K^-1.
    • Thermal stress "load" with reference temperature. I prefer 0 K.
    • Temperature on the nodes or elements that are going to be strained when they're in their modeled positions. With the previous suggested values, this temperature in K equals the negative linear thermal strain.

  • Victor -

    Thanks again for the pointers.

    I looked at the membrane example; it used a rather implausible temperature, though I think I understand why.

    I back out the required temperature to induce the dimensional change which corresponds to my high- or low-limit interference, based on the CTE of the material (which I had defined in the materials, already). Your method makes the math easier, but I am loath to use incorrect values when the I might want to rely on the correct material definition in the future - call it a creative paranoia, or whatever.

    When I solve with just the thermal constraints active, I get stresses which are similar to those predicted by the formulas from Roark's for the mechanical interference for similarly simplified geometry, so I am inclined to believe I am on the right path.

    Next up will be replicating these constraints in a model with higher fidelity geometry, which will entail hashing out my meshing woes.

    Thanks again for your patient assistance.

    Rusticus
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!