Re: Patch for wheel spin velocity traction

Bernhard Wymann <[email protected]> Mon, 22 Jun 2015 18:48:36 +0200
Newsgroups gmane.games.torcs.general
Organization wytec
Message-ID <[email protected]>
Hi David

Thank you, I will have a look into this for a later version (1.4.0), I 
plan as well to study the acual SAE papers and fetching a recent edition 
of Pacejka's book.

Kind regards

Bernhard


On 06/16/2015 01:16 AM, David Savinkoff wrote:
> Hi,
>
> This patch is the same as the previous, and has further fixes.
> Apply this patch to clean sources (not with my previous patches).
> This patch is an injection of natural physics, and an improvement.
>
> ***
> In hunk 1:
>
> stmp is removed because this line of code in hunk 3
> is not needed anymore:
>   stmp = MIN(s, 1.5f);
>
> ***
> In hunk 2:
>
> wrl calculation is corrected. wrl is the speed of the
> spinning wheel (in the direction the wheel is pointed).
> However, the wheel is sliding sideways due to the
> slip angle. Thus, the 'vector component' of wrl must
> derived from the slip angle.
>
> else if () code is factored out.
>
> Correct percent slip calculation for ALL conditions:
>   sx = (vt - wrl) / (0.000001f + MAX(fabs(vt) , fabs(wrl)) );
>   if (fabs(sx) > 1.0) sx /= fabs(sx);
>
> The reason for this correction is because it is not
> physically possible to have more than 100 percent slip
> (The old code is correct 'only' under braking conditions).
>
> ***
> In hunk 3:
>
> if ((v < 2.0f) || (zforce == 0.0f))
> replaces
> if (v < 2.0f)
> because skid marks are otherwise present in the air with this patch.
>
>
> car->carElt->_skid[index] =  s;
> because s is correct, and never exceeds 1.0f (100% slip).
>
> removed:
>   stmp = MIN(s, 1.5f);
>
> Magic formula uses 's' instead of 'stmp'
>
>
>
> Sincerely,
> David Savinkoff
>
> ----- David Savinkoff wrote:
>> Hi,
>>
>> I found the shocking truth that I independently derived
>> a formula for tire friction. The formula is:
>>
>> sx = (vt - wrl) / (MAX(fabs(vt) , fabs(wrl)) )
>>
>> Please read page 2 of this authoritive paper:
>> http://bsesrv214.bse.vt.edu/Hop/Papers/Tire-Road%20Friction%20Coefficient.pdf
>>
>> TORCS and Speed Dreams need fixin'
>>
>> Sincerely,
>> David Savinkoff
>>
>>
>> ----- David Savinkoff wrote:
>>> ----- Bernhard Wymann wrote:
>>>> Hi David
>>>>
>>>> It makes in my opinion no sense in respect to the tire model, the slip
>>>> definition looks consistent as is for me
>>>
>>> I cannot make an argument here because I am not absolutely certain how
>>> the tire model interacts with 'sx = (vt - wrl) / fabs(vt)'
>>>
>>>>
>>>> (in your analysis there is a little glitch, vt is not the car velocity,
>>>> it is the wheel specific velocity, all wheels have usually at least
>>>> slightly different velocities).
>>>>
>>>
>>> I may have not have expressed myself properly when I said 'car velocity'
>>> I envisioned a single wheel in contact with the road where 'vt' is the
>>> velocity in the direction the wheel is pointed... and where 'wrl' is the
>>> wheel spin velocity (can only be in the direction the wheel is pointed).
>>>
>>>>
>>>> The proposed change would cause a discontinuity which would usually
>>>> lower the grip.
>>>>
>>>
>>> 'sx = (vt - wrl) / ( 0.000001f + MAX(fabs(vt) , fabs(wrl)) )' has an
>>> inflection point where the wheel is actuated to slip by
>>> deceleration, or slip by acceleration.
>>> The discontinuity is caused by the 'act' of braking or accelerating.
>>>
>>> I believe 'sx' may need three different functions to include:
>>> 1) braking
>>> 2) accelerating
>>> 3) wheels rotating backwards to the direction of travel.
>>> The formula for 'sx' is my best so far, and it seems to work ok.
>>>
>>> I visualize vt and wrl as two parallel lines showing their respective
>>> lengths. Where vt - wrl is the length part that differs. eg.
>>> _________________________
>>> _____________________________________
>>>
>>> The formula for 'sx' suggests that one wants to determine a 'normalized'
>>> slip value given vt, wrl, and vt-wrl. Note that the slip happens in
>>> several different situations.
>>>
>>>> I think a better solution for drifting is to adjust the parameters of
>>>> the tire model
>>>
>>> I just tried different tire pressures (other than the default 40 psi).
>>> I will comment on this list when I come across interesting things.
>>>
>>> ***
>>> Please actually try my latest patch traction2.diff on different cars
>>> and tracks. Drive aggressively (off-track also) or ride with Olethros 6.
>>> ***
>>>
>>>> , differential and suspension. If you don't mind to edit
>>>> the XML you can adjust as well the engine braking coefficient (instead
>>>> of adapting your accelerator control in your mind;-) ).
>>>>
>>>> Other opinions?
>>>>
>>>
>>> Others on the list... Your opinions please.
>>>
>>> Sincerely,
>>> David Savinkoff
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
>>> Develop your own process in accordance with the BPMN 2 standard
>>> Learn Process modeling best practices with Bonita BPM through live exercises
>>> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
>>> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
>>> _______________________________________________
>>> Torcs-users mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/torcs-users
>>
>
>
>
> ------------------------------------------------------------------------------
>
>
>
> _______________________________________________
> Torcs-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/torcs-users
>


------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical & virtual servers, alerts via email & sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o