RaceSimCentral Forums
 

Go Back   RaceSimCentral Forums > Racing Simulations > Image Space Incorporated > rFactor modding
Register FAQ Rules Members List Calendar Mark Forums Read

rFactor modding Home forum for teams working on rFactor mods

Donate to RSC!
Reply
 
Thread Tools Rating: Thread Rating: 5 votes, 4.20 average. Display Modes
Old 08-08-2007, 03:25   #1
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
FFB plugin based on realistic Mz curve

We have been discussing some aligning torque simulation issues at the end of this thread
http://forum.racesimcentral.com/showthread.php?t=287267 but since we started to deviate from the original thread intent, I have opened a new thread.

As a result of the discussion, here is a very quick attempt at rewriting the steering FFB effects from scratch based on more or less accurate Pacejka curve fit for Mz (self-aligning torque).

Parameters are set for default BMW F1

To install, unzip BOTH files into Plugins folder and take BMW F1 fro a spin
To uninstall, just delete LeoFFB.dll and LeoFFB.ini

I tried it on Caterham with the following settings:

25.0 Front Wheel lock angle, degrees (max deflection to one side from straight on)
0.635 Front wheel distance to centerline (half the front wheel track) in metres, from .pm file
1.125 Front axle distance to body reference point (about half the wheel base) in metres, from .pm file
10.5 Relative strength of FFB effects
6.0 Aligning moment curve shape / feeling of tyre losing grip. Lower numbers are duller, range 1.0 .. 10
0.99 Negative aligning moment parameter for high slip angles, range 0.0 ... 1.0
10.0 Slip angle where aligning moment reverses direction - typically between 8 and 15 degrees
0.01 Caster (dimetionless)
0.0 Camber ratio (not degrees!)
1.0 Road bumps feeling on the wheel
11500.0 maximum FFB force for stationary and low speed effects
10.0 stiffness of stationary wheels
1.5 wheel rubber hardness (1..5)
8.0 how quickly static forces drop off when rolling


Cheers!
Attached Files
File Type: zip LeoFFB-v2.zip (4.2 KB, 647 views)
LBodnar is offline   Reply With Quote
Old 08-08-2007, 08:05   #2
Niels_at_home
Registered
 
Niels_at_home's Avatar
 
 
 
Join Date: Aug 2001
Location: Netherlands
Age: 29
Hey Leo, good work, wish I could drop by for a cuppa and a look at your wheel..

"my" corvette has, imho, far better tyres and seems to handle more like a car, if you want the latest beta of it to test a 'realish' roadcar with 'realish' road tyres, I'd be happy to send you the car..
Niels_at_home is offline   Reply With Quote
Old 08-08-2007, 10:05   #3
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
Hi Niels,
Yes, please!
I can find some real Mz curve data for road cars but at quite a loss how would an F1 tyre behave at high slip angles with regard to steering torque. This would define the handling behaviour in a fast spin.
LBodnar is offline   Reply With Quote
Old 08-08-2007, 10:10   #4
TechAde
Registered
 
TechAde's Avatar
 
 
 
Join Date: Sep 2002
Location: South Wales
Age: 37
Hi Leo,

My initial impressions are that it feels good, especially with the BMW F1. I tried a few other cars and the effects felt exaggerated, but I guess this would just need some tweaking of the parameters? (All I changed was steering lock to 25 to match the other cars I drove)

One thing I noticed is that it doesn't seem to respond to suspension geometry changes (such as changing caster from +5 to -3), or if it does the effect is very slight. Would this be correct?

Edit: Btw my default lock on the BMW F1 07 seems to be 15 degrees rather than 14.5 - do we have different versions?
TechAde is offline   Reply With Quote
Old 08-08-2007, 10:21   #5
Niels_at_home
Registered
 
Niels_at_home's Avatar
 
 
 
Join Date: Aug 2001
Location: Netherlands
Age: 29
Would that mean the FF just follows the Mz 'curve'? Suspension geometry can have a big effect because you lift the car a bit when steering. The tyres indeed (assuming pacejka etc have it right, very very very likely) have this Mz alligning curve, but thats only half the FF of course, though I feel Leo is quite aware of this..
Niels_at_home is offline   Reply With Quote
Old 08-08-2007, 10:27   #6
TechAde
Registered
 
TechAde's Avatar
 
 
 
Join Date: Sep 2002
Location: South Wales
Age: 37
Thanks Niels, that would make sense
TechAde is offline   Reply With Quote
Old 08-08-2007, 10:39   #7
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
Quote:
Originally Posted by TechAde View Post
Hi Leo,

My initial impressions are that it feels good, especially with the BMW F1. I tried a few other cars and the effects felt exaggerated, but I guess this would just need some tweaking of the parameters? (All I changed was steering lock to 25 to match the other cars I drove)

One thing I noticed is that it doesn't seem to respond to suspension geometry changes (such as changing caster from +5 to -3), or if it does the effect is very slight. Would this be correct?

Edit: Btw my default lock on the BMW F1 07 seems to be 15 degrees rather than 14.5 - do we have different versions?
Hi there!
Yes, correct, the suspension geometry is not there, particularly the caster as it should be "inbuilt" in Mz curve via offsets and shape alteration. Also, the Mz is assumed to be translated into steering via linear relationship while it should also take into account the fact that a tyre centre is offset from the kingpin axis.

I have possibly got the F1 lock settings wrong as I have derived it from .hdv file where it says
SteerLockRange=(5.0, 0.5, 51)
SteerLockSetting=20
I must have assumed that the result is 5+0.5*(20-1). Possibly "-1" is not needed...
LBodnar is offline   Reply With Quote
Old 08-08-2007, 10:51   #8
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
Quote:
Originally Posted by Niels_at_home View Post
Would that mean the FF just follows the Mz 'curve'? Suspension geometry can have a big effect because you lift the car a bit when steering. The tyres indeed (assuming pacejka etc have it right, very very very likely) have this Mz alligning curve, but thats only half the FF of course, though I feel Leo is quite aware of this..
Of course
I am still struggling to understand how rFactor would calculate Mz as
1) it's not tabulated like slip curves
2) I see no reliable way to derive Mz from slip curves. Mz is an integral force and cannot be reconstructed from another integral variable (Fy or Fx)

So I wanted to see what happens if some sensible curve is used... If we go all the way along this path then the plugin might probably turn into an independent tyre simulator...

However, this only affects handling, i.e. steering feedback - it does not affect car motion physcis (apart from FFB feeding back into the control) so a mismatch between the behaviour and a feeling would be very annoying.

However, I have found that it gives a better feel during the slide and cornering. I use ALL the driving aid off (TC, ABS, steering help, etc)
LBodnar is offline   Reply With Quote
Old 08-08-2007, 11:26   #9
TechAde
Registered
 
TechAde's Avatar
 
 
 
Join Date: Sep 2002
Location: South Wales
Age: 37
Quote:
Originally Posted by LBodnar View Post
However, I have found that it gives a better feel during the slide and cornering. I use ALL the driving aid off (TC, ABS, steering help, etc)
Agreed, however I also get this better feel using RealFeel. The only real difference in feel (see what I did there?) during sliding between this and RealFeel (with good pneumatic trail values) is that with RealFeel Mz never drops below zero - however it will reach almost 0 if the entire contact patch is sliding. Whilst racing I think this difference has a negligible effect as you shouldn't really be reaching such high slip angles.

If there was a way you could have your plugin react to geometry changes as RealFeel does (not just caster, scrub radius also plays a huge part in braking feedback) then I think you'd be onto a winner. Possible?
TechAde is offline   Reply With Quote
Old 08-08-2007, 13:05   #10
Niels_at_home
Registered
 
Niels_at_home's Avatar
 
 
 
Join Date: Aug 2001
Location: Netherlands
Age: 29
If I understand it correctly, the Mz curve as you see on pacejka plots etc is purely that of the tyre. I expect it to depend heavily on the load on the tyre; so one would probably have to scale the Mz curve with load for starters.. Then the effect of suspension geometry on experienced steering torque will depend heavily on the load as well..

How many of these things does LeoFF do at the moment?
Niels_at_home is offline   Reply With Quote
Old 08-08-2007, 13:09   #11
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
If we knew how rFactor calculates what it does calculate then it won't be such a hard task to correct what it doesn't do right.

I am tempted to read back the .hdv and .pm files and account for jacking torque (as Niels suggested), castor and scub radius but it gets too complicated too quickly.

Again, when designing the model one should trust their input variables.
All the parameters can be modelled to a higher degree of accuracy and dependant on normal force, speed, temperature, etc.
However, I am interested to which degree the normal tyre forces are accurately modelled by rFactor. If they do not accurately reflect the transient effects in suspension then most of the efforts with tyre modelling will be wasted.

TechAde, can you suggest a RealFeel settings for BMW Sauber F1 + Essington GP Circuit combination to get the best result from RealFeel that I can use as a benchmark?
LBodnar is offline   Reply With Quote
Old 08-08-2007, 13:17   #12
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
Quote:
Originally Posted by Niels_at_home View Post
If I understand it correctly, the Mz curve as you see on pacejka plots etc is purely that of the tyre. I expect it to depend heavily on the load on the tyre; so one would probably have to scale the Mz curve with load for starters.. Then the effect of suspension geometry on experienced steering torque will depend heavily on the load as well..

How many of these things does LeoFF do at the moment?
Sure, Mz is linearly scaled with normal force.
AligningTorque = NormalLoad * Koef(SlipAngle)
There is some subtle higher order dependence on normal load but it can be ignored for now.

The actual aligning torque for each wheel is proprtional to normal load on this wheel and its own slip angle which is different for both wheels when you are spinning or turning. This is where overall wheelbase geometry that I have mentioned before comes into effect.
LBodnar is offline   Reply With Quote
Old 08-08-2007, 13:44   #13
TechAde
Registered
 
TechAde's Avatar
 
 
 
Join Date: Sep 2002
Location: South Wales
Age: 37
Quote:
Originally Posted by LBodnar View Post
TechAde, can you suggest a RealFeel settings for BMW Sauber F1 + Essington GP Circuit combination to get the best result from RealFeel that I can use as a benchmark?
Will do, might take a me a little while though sorry, rather busy at the mo.

How about using the Caterham Caterbusa or Powertec for comparison rather than the F1? The default RealFeel parameters should be spot on for those (1500N MaxForce), though I also run 0 smoothing and 11500 damper.

Edit: Or maybe the latest C6, though the large amount of caster my make direct comparison tricky
TechAde is offline   Reply With Quote
Old 08-08-2007, 14:29   #14
kangaloosh
Registered
 
kangaloosh's Avatar
 
Join Date: Feb 2007
Quote:
Originally Posted by LBodnar View Post
TechAde, can you suggest a RealFeel settings for BMW Sauber F1 + Essington GP Circuit combination to get the best result from RealFeel that I can use as a benchmark?

LBodnar - RealFeel won't work very well with that mod - the suspension is not how you would design it if you were designing suspension with RealFeel in mind. This highlights the biggest problem with RealFeel - you need a mod designed in a similar way to a r/l car, to generate the forces into the steering that you want to feel, you can't just rely on rFactor to simulate the forces it thinks you should feel.

Chris
kangaloosh is offline   Reply With Quote
Old 08-08-2007, 16:18   #15
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
Quote:
Originally Posted by kangaloosh View Post
LBodnar - RealFeel won't work very well with that mod - the suspension is not how you would design it if you were designing suspension with RealFeel in mind. This highlights the biggest problem with RealFeel - you need a mod designed in a similar way to a r/l car, to generate the forces into the steering that you want to feel, you can't just rely on rFactor to simulate the forces it thinks you should feel.

Chris
Is this purely due to the steering knuckle/spindle geometry? From BMWF106_susp.pm front suspension detail the wheel rotation axis and the kingpin rotation lie in the same plane. This basically means that tyre side force has almost zero effect on steering arm force because its angular momentum is close to zero due to zero arm. Free rolling front tyre will not generate any lateral force either (ignoring rolling resistance) so what is left is pure Mz that is of questionable quality anyway...
LBodnar is offline   Reply With Quote
Old 09-08-2007, 03:47   #16
Texas-Tornado
Registered
 
Texas-Tornado's Avatar
 
Join Date: Sep 2001
Location: Bern, Switzerland
Hello Grandmasters of FFB!

I just tested the LeoFFB. Once with uninstalling the RealFeel first and once with RealFeel and LeoFFB.

With RealFeel and LeoFFB all the Mods with combined FFB Values (GP79 with 75% RealFeel f. Ex.) are much better to drive.

When i set RealFeel to 0% i just got the LeoFFB (which sounds logical to me).

But when i drive with 100% Real Feel (V8Factor 100% RealFeel f. Ex.) i have the strange Feeling that it feels different from the Version without LeoFFB. It feels a bit better.

This is all from the Feeling point of view, no technical Knowledge here. So can you tell me if my theorie is true or false. How does rFactor handle both Plugins at the same time???

Thx for answering my question!

Cheers David
Texas-Tornado is offline   Reply With Quote
Old 09-08-2007, 10:17   #17
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
As far as I understand multiple plugins are loaded sequentially and just pass each other the value for FFB:
Pluging 1:
receive FFB from rFactor (A)
process/alter FFB if needed
submit new FFB value to rFactor (B)

Pluging 2:
receive FFB from rFactor (B)
process/alter FFB if needed
submit new FFB value to rFactor (C)

My plugin calculates the FFB from scratch, i.e. it does not use incoming value so if it is loaded last it will discard the previous values. It looks like RealFeel uses a weighted average of the calculated and incoming FFB values so if it is loaded second it should combine two together according to its % setting.

I don't know how one can tell or control the order...
LBodnar is offline   Reply With Quote
Old 09-08-2007, 10:45   #18
TechAde
Registered
 
TechAde's Avatar
 
 
 
Join Date: Sep 2002
Location: South Wales
Age: 37
Quote:
Originally Posted by LBodnar View Post
It looks like RealFeel uses a weighted average of the calculated and incoming FFB values so if it is loaded second it should combine two together according to its % setting.
Yup, RealFeel ignores the incoming value unless RealFeelMixerPercent is less than 100% (the default). The new SmoothingLevel parameter in v0.9 dictates how many previous values are used to calculate the weighted average, between 0 and 9.

I had an issue reported the other day where RealFeel would sporadically stop producing any force, it turned out that they had 2 versions of the dll in the plugins folder. Quite what happens in that situation I really don't know.
TechAde is offline   Reply With Quote
Old 09-08-2007, 11:06   #19
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
TechAde, may I ask you a question?..

I am trying to model aligning force dependence on braking slip and geometry. How one can deduce the braking slip from telemetry data? .mGripFract does not make much sense to me...

Following the definition I'd need a distance from wheel's centre to the contact patch to derive the slip but I can't figure out how to calculate it. The only available parameter is the wheel's .mRideHeight but I can't quite understand what it actually represents.

It seems that there is no reliable way to extract a braking (longitudinal) force for each wheel - neither directly nor by calculating the braking slip and referencing the slip curve...
LBodnar is offline   Reply With Quote
Old 09-08-2007, 12:16   #20
TechAde
Registered
 
TechAde's Avatar
 
 
 
Join Date: Sep 2002
Location: South Wales
Age: 37
Quote:
Originally Posted by LBodnar View Post
TechAde, may I ask you a question?..

I am trying to model aligning force dependence on braking slip and geometry. How one can deduce the braking slip from telemetry data? .mGripFract does not make much sense to me...

Following the definition I'd need a distance from wheel's centre to the contact patch to derive the slip but I can't figure out how to calculate it. The only available parameter is the wheel's .mRideHeight but I can't quite understand what it actually represents.

It seems that there is no reliable way to extract a braking (longitudinal) force for each wheel - neither directly nor by calculating the braking slip and referencing the slip curve...
Unfortunately I don't think the required info is available via the plugin interface.
TechAde is offline   Reply With Quote
Old 09-08-2007, 12:28   #21
Niels_at_home
Registered
 
Niels_at_home's Avatar
 
 
 
Join Date: Aug 2001
Location: Netherlands
Age: 29
Quote:
Originally Posted by LBodnar View Post
TechAde, may I ask you a question?..

I am trying to model aligning force dependence on braking slip and geometry. How one can deduce the braking slip from telemetry data? .mGripFract does not make much sense to me...
Perhaps you can do something like wheelspeed / car speed? Although it may not be perfect as turned wheels

Quote:
Following the definition I'd need a distance from wheel's centre to the contact patch to derive the slip but I can't figure out how to calculate it. The only available parameter is the wheel's .mRideHeight but I can't quite understand what it actually represents.
Is that the slip definition? I thought it was the difference in 'speed', i.e. the speed the tyre would be rolling at (circumference * revolutions/sec) and the speed it is actually going at?
Niels_at_home is offline   Reply With Quote
Old 09-08-2007, 18:00   #22
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
The side force vs. braking force graph is very difficult to model...

The definition includes the ratio of circumferential speed of freely rotating wheel in the same configuration and the actual braking wheel. Knowing the hub-to-road distance is an intermediate parameter that can help estimating free wheel RPM.

I have more or less accurate estimate now based on tyre stiffness including internal pressure and its radius and the correction for the RPM expansion. Will try it tonight and, maybe update the plugin.
LBodnar is offline   Reply With Quote
Old 12-08-2007, 18:25   #23
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
I have updated some simulation parameters and added low speed handling.
Cheers
LBodnar is offline   Reply With Quote
Old 12-08-2007, 19:44   #24
irousso
Registered
 
Join Date: Feb 2003
Age: 40
Leo - just tried your plugin and I really like it.
I have couple of questions though:
1. do I need the low speed plugin to work with this one?
2. when the car loose grip, the FFB drops - what parameter should I change in order to reduce the FFB drop?

Thanks!
Itay
irousso is offline   Reply With Quote
Old 12-08-2007, 20:54   #25
LBodnar
Registered
 
 
 
Join Date: Feb 2006
Location: UK
Quote:
Originally Posted by irousso View Post
1. do I need the low speed plugin to work with this one?
2. when the car loose grip, the FFB drops - what parameter should I change in order to reduce the FFB drop?
Hi!
1. No, I have put the low speed code in already
2. Depending on what you want to acieve

a) you can add a bit of caster (understeer):
0.01 Caster (dimetionless)

b) you can extend the aligning moment loss curve to a higher angles, e.g.
12.5 Slip angle where aligning moment reverses direction - typically between 8 and 15 degrees

c) you can change the shape of it, make it more "mushy", e.g.
4.0 Aligning moment curve shape / feeling of tyre losing grip. Lower numbers are duller, range 1.0 .. 10
LBodnar is offline   Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +1. The time now is 07:18.


Copyright ? 2001-2008 RaceSimCentral (RSC) unless otherwise stated. All rights reserved.