Modelling backlash in joints SIMSCAPE (Multibody)

7 views (last 30 days)
I have imported a CAD model of a 4 bar linkage into Simscape Multibody which moves perfectly but I am unable to figure out how to make it take into account backlash.
I've attached an image showing a mock up of the sort of thing I'm looking at.
  1. Main problem: How do you take into account backlash in the joint? I set the pin to be 46mm and the hole to be 50mm meaning there is a 4mm gap (at max) which needs to be overcome when you put a force on the system but that's just being ignored and moving it as if it was touching.
I've tried lots of things such as:
Modelling the pin joint in CREO to act in the centre, but through two slot constraints be freehanging in the centre so in CREO you can drag it all around the cylinder but when you import that to Simscape multibody it does not like the joint constraints and fixes it rigidly.
I've tried just applying the pin constraint on the pin like you can see in the image but again it's ignoring the backlash
Any ideas are appreciated thank you.

Answers (2)

Steve Miller
Steve Miller on 20 Oct 2021
For a square hole, you can just enable joint limits.
For a round (or other shaped) hole, you place a planar joint at connection between the two parts and put a custom force law on the x- and y- degrees of freedom.
  1. From the joint block, output the x- and y- positions and velocities
  2. Calculate the radial distance of the F frame from the B Frame (sqrt(x^2+y^2)) and the radial velocity.
  3. If the distance is larger than your backlash, apply a force pushing back towards the center.
  4. Calculate a spring-damper force (for example, stiffness * radial distance, damping * radial velocity)
  5. Multiply that times a unit vector to get the x- and y- components
  6. Apply those forces back at the joint.
--Steve

Alexandr Kovalenko
Alexandr Kovalenko on 23 Oct 2023
Hi, Adam.
Since I encountered a similar problem, I would like to know if you were able to resolve it. How?
I want to try it with something like adding a dummy link half the length of the gap. Do you think this is the right way?

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!