🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Limited-Slip Differential and friends

Started by
22 comments, last by Vu Chi Thien 5 years, 7 months ago

Thank you very much for taking your time in this ancient topic :). Strange that even though many driving sims have come out but it's really hard to find any "programmer friendly" paper on modelling and implementations.

1 hour ago, Edy said:

In my specific model the locking torque is a torque amount that is transferred from a wheel to another (same value, as it's taken from a wheel to be applied to the other wheel) and tries to keep both wheels rotating at the same rate.

So I'm guessing this is sort of similar to input torque bias of Torsen diffs? Where input torque from the engine is biased with a ratio calculated from the locking torque, before reaching the wheels? Sort of: ratio = wheelSpeed/speedDifference? Not just spliting 50-50 like an open diff and then apply locking torque to each wheel, wheelDriveTorque = torqueEngine * 0.5f - locking?

1 hour ago, Edy said:

When the clutch pack provides torque enough for keeping both wheels rotating at the same rate then the LSD differential is completely locked

So I'm imagining this is similar to the clutch at the engine somehow. The lockingTorque going to each wheel would be min(maxClutchTorque, lockingTorque). The lockingTorque used to keep both wheels rotating at the same rate is less than or equal what the maximum the diff can provide. If this lockingTorque is exceeded then no more locking, also means that the wheel torque from both sides overcome the lockingTorque to spin at their own rate.

Advertisement
On 11/4/2018 at 6:59 PM, Vu Chi Thien said:

Not just spliting 50-50 like an open diff and then apply locking torque to each wheel, wheelDriveTorque = torqueEngine * 0.5f - locking?

Well, that's exactly how it works in my model. But as said, the final implementation depends on each specific model design.

19 hours ago, Edy said:

Well, that's exactly how it works in my model. But as said, the final implementation depends on each specific model design.

Thanks for the big help.

My model is different as I said from above (I brought in the model in the Wikipedia page directly) so it's up to myself on further modeling now :)

.

however though, in the case of rotation difference based diff (vicious),  the locking torque can be calculated from the difference in rotation speed. But how about torque based diff (clutch, spool/locked), how should correct amount of output torques for two sides to have equal speed be calculated since the input is torque not rotation speed? What I meant is (and also my question) :

- since locking means two sides must almost always rotate at same speed, then how can I make sure that every frame, the speed will always be equal, given that reaction torque and inertia of 2 sides are known? 

I know that I can do it the "cheating" way where if in the current frame speed of 2 sides are different, then calculate an amount of torque to bring them back together with the average speed in the next frame, but that would defeat the purpose of locking, making it rather a viscous, and introduce jitters. This has been my main problem when trying to implement the model.

I think this question relates to programming and integration techniques that I haven't yet know the name to look up for. Any input on this would be a big help.

again, thank you very much.

This topic is closed to new replies.

Advertisement