Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

SimMechanics: translational body spring damper system with friction

Status
Not open for further replies.

jorm1

Automotive
Jul 20, 2011
7
NL
To test the Joint Stiction Actuator block in SimMechanics, I made a small model containing 2 bodies, a prismatic joint and a spring/damper. The actuation is a body actuator which yields a force step input after 2 seconds.

The goal is to put friction into the shock absorbers in a full vehicle multibody model.

To get this small test model running it took me quite some time. At this moment it sometimes runs without problems, sometimes it runs very slow, other times it freezes (simulation is running but no progress can be seen, also the simulation time stops), and sometimes it gives an error after some seconds of running. To check, just change the constants at top right corner, the spring constant, the step value (force actuation) or the damping coefficients.

Is there anyone who has experience with this Joint Stiction Actuator, or with modeling friction? Also if there are some faults in the model, please let me know.

A printscreen of the model can be seen here:

The model can be found here:
Or here:
 
Replies continue below

Recommended for you

Glad to see you are using SimMechanics for multibody dynamics.

For a spring mass system the friction can be input as a force proportional to the velocity of a joint.

For eg. the DE of
m*xdd+c*xd+k*x=F+applied-mu*xd

So you can sense the velocity of a joint and multiply it by mu, and then feed it as a force onto the rigid body.

Your model likely fails to run when it is near or at a singularity. This is very common. Just keep your stiffness and other parameters in the stable region.
Seems that the block you are using is made for friction modeling. It should work fine.

[peace]
Fe
 
The block is indeed meant for modeling friction. I know it is possible to add kinetic friction in a more simple way by using equations. The goal is however to include stiction as well. So the model should be able to handle bot kinetic friction and static friction (stiction).

I also used that help page to get some information on how to use that block, but there are still some thing not functioning totally correct.

Based on answers I got on another forum, I made the following changes to the model:
* This is a numerically stiff system, so use a stiff solver (ode15s or ode23t)
* Leave the max step size to auto, and maybe change the AbsTol to 1e-4
* I think you need to subtract the external actuation signal from the computed force to work out the static friction force
* When computing the normal force, you need to include the z axis ( sqrt(u(1)*u(1) + u(2)*u(2) + u(3)*u(3)) )

However I still get an error, even when using the solvers above. Anyone some more tips/corrections?
 

Ok, I made some changes and now it does seem to work. But I still have a few question about the reasons:

- Shouldn't I also include the external actuation force (which actuates the body) to calculate the static friction. This one will also affect the Computed Force in the joint, no?

- Why is it necessary to include the force in z-direction to calculate the total normal force? Only the forces in x- and y-direction are perpendicular to the movement direction. And isn't it mostly the perpendicular force multiplied with the friction coefficient to determine the friction force?

Maybe someone can help with these questions?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top