Forums

Full Version: Suspension geometry
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
So I've looked at our suspension geometry code, trying to fix some issues, and ended up rewriting it. It is working pretty well now. But there is an issue about the way suspension is defined in the car files.

We have caster, toe and camber values at car rest position (loaded suspension). At the same time we define wheel and suspension at extended position (unloaded suspension). The issue is that with macpherson and double-wishbone suspensions the camber changes with travel. So the camber values would have to be corrected for the extended position, which would be rather hard to do.

A simpler approach is to define suspension and wheel position at rest too (loaded). But should the suspension travel value also be relative to the rest position? Or should we define something like a sag parameter that would tell how much the spring is compressed at rest?

I am currently leaning towards the sag parameter. Although it has the problem that it depends on spring stiffness. Soft springs would require a preload (not enough sag). For very stiff springs the sag would have to be adjusted at loading time (too much sag).
(08-09-2018, 08:25 AM)NaN Wrote: [ -> ]So I've looked at our suspension geometry code, trying to fix some issues, and ended up rewriting it. It is working pretty well now. But there is an issue about the way suspension is defined in the car files.

We have caster, toe and camber values at car rest position (loaded suspension). At the same time we define wheel and suspension at extended position (unloaded suspension). The issue is that with macpherson and double-wishbone suspensions the camber changes with travel. So the camber values would have to be corrected for the extended pogrgrsition, which would be rather hard to do.

A simpler approach is to define suspension and wheel position at rest too (loaded). But should the suspension travel value also be relative to the rest position? Or should we define something like a sag parameter that would tell how much the spring is compressed at rest?

I am currently leaning towards the sag parameter. Although it has the problem that it depends on spring stiffness. Soft springs would require a preload (not enough sag). For very stiff springs the sag would have to be adjusted at loading time (too much sag).

great question...
but.. should be possible, knowing the load on the suspension, which will be the stall position, to calculate back the 'camber zero' at stall position?
Quote:So I've looked at our suspensionĀ geometry hw code, trying to fix some issues, and ended up rewriting it. It is working pretty well now. But there is an issue about the way suspension is defined in the car files.

We have caster, toe and camber values at car rest position (loaded suspension). At the same time we define wheel and suspension at extended position (unloaded suspension). The issue is that with macpherson and double-wishbone suspensions the camber changes with travel. So the camber values would have to be corrected for the extended position, which would be rather hard to do.

A simpler approach is to define suspension and wheel position at rest too (loaded). But should the suspension travel value also be relative to the rest position? Or should we define something like a sag parameter that would tell how much the spring is compressed at rest?

I am currently leaning towards the sag parameter. Although it has the problem that it depends on spring stiffness. Soft springs would require a preload (not enough sag). For very stiff springs the sag would have to be adjusted at loading time (too much sag).


What is the easiest way to define suspension? And what do I start with? I thought theĀ the suspension travel value should not be relative to the rest position. I may be wrong though.
So I've found some time to work on the suspension again, started hacking on the blender importer to make my life a bit easier.

[Image: cJFhoQZ.jpg]

The wheels are imported as cylinders. The thin orange lines are the hinges.

I'd like to see the simple hinges replaced with macpherson, double wishbone geometry matching the real cars.
Here is the LE double-wishbone suspension for example (wire frame mode with car body hidden).

[Image: dZNh9a8.jpg]
Just a heads up.

I've pushed the rest position changes to master. The extended wheel position is calculated from rest position and spring stiffness. I've been thinking about adding an explicit drop parameter to control the extended travel value, support spring preload.

On the data side I've updated the cars to use rest position and travel, changed the suspension geometry on a dozen or so cars to use macpherson and double wishbone to mach their real world variants.

The blender script was updated and includes a car "importer" to help with suspension setup. github.com/VDrift/blender-scripts/tree/master/blender26

There are still a number of cars running with the simple hinge geometry. I'll be updating them whenever I'll find time and motivation. Wink