Advertisement

Traction Circle vs Seperate Forces

Started by May 02, 2016 06:48 PM
36 comments, last by bmarci 8 years, 8 months ago

Well it's difficult to find any published info on the topic, probably because the best knowledge is kept as a professional secret. So in the end if you want something better the formula for calculating tire response forces will need to be altered. For games we can fake it however we like as long as the result is "realistic enough".

Since the definitions of slip contain denominators that can tend towards zero, near-zero means these equations are near-singularity, and numerically will not be very stable. In general dividing by very small floating point numbers is bad. Even if you have an if-statement checking for zero.

As a result near-zero speeds will probably not behave well in many simulations using slip velocities in a particular way. There's a popular SAE paper that describes taking the derivative of the slip equations to get rid of the singularity along with some artificial damping (i.e. non-physical tuning coefficient)... But this solution is completely non-realistic and can be a pain to implement and tune. Since it's not a realistic solution, maybe a simpler non-realistic solution exists:

So, following Brian Beckman's advice in his "Physics for Racing" book he proposes a solution that may be simpler and easier to implement:


( 1 )
s = longitudinal_slip / |max_longitudinal|
a = lateral_slip / |max_lateral|
rho = sqrt( s*s + a*a )

( 2 )
define
Phi0( s ) = Pacejka0( longitudinal_slip )
and
Phi1( a ) = Pacejka1( lateral_slip )

( 3 )
Force_x = s / rho * Phi0( rho )
Force_y = a / rho * Phi1( rho )

The above pseudo code in step ( 1 ) is calculating a normalized representation of slip for longitudinal/lateral. To do this a function that returns the input which generates the max force on the curve needs to be constructed. I wrote this myself with a variant of the bisection method. Then the max's can be used to scale the slip ratios between -1 and 1. Since the scale is uniform each ratio can be conceptually concatenated into a 2D vector with 2 components. The magnitude of this vector can be fed to Phi functions. Phi returns the force equivalent, or nearly equal, to the Pacejka curve. Normalized slip is fed to Phi functions, whereas regular slip values used to be fed to Pacejka curves (shown in step 2).

Step 3 denormalizes the vector by scaling the forces inversely with rho.

So to summarize: normalize slip ratio scalar values between -1 and 1, place them in a vector, feed this vector to a vector function Phi, denormalize the vector and use the resulting forces. Since step 3 uses rho, and rho cannot be negative, no singularity exists. If either slip (lat or long) is undefined using a 0 in the s or a numerator makes sense, especially when thinking about what this physically represents.

Beckman more or less leaves it up to the reader to determine what Phi is. Phi can just be the Pacejka magic function with properly scaled coefficients, or it can be a different approximation (like the thermo-dynamics equation Beckman proposes).

Resource: clicky.

So, I am getting the rest of the steps, but not the first one. I don't understand - how to get the maximum force for normalization...

Advertisement

Check out page 16 through 19.

OK! I am just totally confused at this topic right now. I don't understand anything any more... :(

Well just use the slip stuff you have now and if you run into problems then you can try to solve them when the time comes.

I've already got lots of problems. What I currently use doesn't work 100% well. It has many issues, at least I think so... :(

Advertisement

So, following Brian Beckman's advice in his "Physics for Racing" book he proposes a solution that may be simpler and easier to implement:

( 1 )
s = longitudinal_slip / |max_longitudinal|
a = lateral_slip / |max_lateral|
rho = sqrt( s*s + a*a )
[...]

[...]

I think there's a confusion here. That method is the Brian Beckman's proposal for combining longitudinal and lateral slip, but it's not related to solving the numeric instabilities or the singularities of the slip calculation. In fact, "logitudinal_slip" and "lateral_slip" above are still slip ratio and slip angle respectively.

[...], or it can be a different approximation (like the thermo-dynamics equation Beckman proposes).

This doesn't have any sense. There's no such thermo-dynamics equation.

The Pacejka method is a curve-fitting method, where the coefficients are chosen so the resulting curve matches the experimental results. In that chapter Beckman proposes a Pacejka-like curve that requires three parameters only, and compares the results with the full Pacejka 11-parameters curve. The proposed curve doesn't have any physical meaning by itself.

I think there's a confusion here. That method is the Brian Beckman's proposal for combining longitudinal and lateral slip, but it's not related to solving the numeric instabilities or the singularities of the slip calculation. In fact, "logitudinal_slip" and "lateral_slip" above are still slip ratio and slip angle respectively.


Yeah, and since the rho term can't be negative then there cannot be an oscillation of signs about zero, correct? Earlier you said Beckman's vector formulation is a perfect example, well combining long/lat slip ratios *is* forming a vector equation. Or am I missing something still?

uBeNATu.png

This doesn't have any sense. There's no such thermo-dynamics equation.

The Pacejka method is a curve-fitting method, where the coefficients are chosen so the resulting curve matches the experimental results. In that chapter Beckman proposes a Pacejka-like curve that requires three parameters only, and compares the results with the full Pacejka 11-parameters curve. The proposed curve doesn't have any physical meaning by itself.


Why isn't it sensical? Take the 3-coefficient equation, match the curve to your Pacejka curve, and you've got a good approximation that doesn't involve trig functions. That makes sense to me. Note: if you watch his video he does call it a thermo-dynamics equation. Or am I yet again missing something?

zI9FQXk.png


I am still confused.

I just wanna know - what is so far the best found method to calculate slip and friction force. This would help me.

I am still confused.

I just wanna know - what is so far the best found method to calculate slip and friction force. This would help me.

I think we all want to know this (and none of us know) :)

This topic is closed to new replies.

Advertisement