• Welcome to PiBoSo Official Forum. Please login or sign up.
 
January 25, 2021, 07:31:04 PM

News:

World Racing Series beta14 available! :)


Fixing tankslappers and possibly powerslides (taming the virtual rider)

Started by Vini, November 22, 2017, 05:50:45 PM

Previous topic - Next topic

Manu

The wobbles seem to be related in part by the aw.

Every time the front wheel tries to get off the ground the aw acts by cutting the throttle and when the wheel returns to the ground the throttle is opened again creating a resonance that gas open / cut producing a wobble.

EM low with less power makes it harder to lift the front wheel so the aw almost does not act and the resonance is not created.

That is why the less powerful bikes don't have wobbles.

With AW at 0 it is unlikely to find wobbles. The question is that most people prefer that the AW does the work. Currently the ECU in Gp Bikes is very rudimentary and sometimes problematic. I hope that Piboso has a solution.
It's Easier to Fool People Than It Is to Convince Them That They Have Been Fooled.

Vini

That's definitely not the case, Manu.
The frequency of those wobbles is far too high to be caused by the AW (which has a pretty low sampling rate).
If you have good throttle control and don't use AW, you can keep the bike consistently much closer to maximum acceleration. That way you are much more prone to tankslappers. With AW you cannot keep the front hovering above/on the ground for long because it abruptly cuts a lot of power.
Both in my and in Ryanoh4's vid, AW and TC is set to 0. But the Direct Lean value of 100% may be a contributing factor, which is not surprising since it means more aggressive virtual rider (steering forces).

HornetMaX

Not saying you're wrong and Manu right, but :

Quote from: vini97 on December 05, 2017, 02:25:33 PM
The frequency of those wobbles is far too high to be caused by the AW (which has a pretty low sampling rate).
How do you know that ? And low compared to what ?

Vini

Give the MotoGP bikes full throttle with AW and listen to the engine. The frequency of "throttle change" is much lower than the frequency at which the handlebar oscillates during tankslappers.

But regardless, that discussion belongs here. AW/TC being deactivated in both videos means that it's irrelevant to this discussion right here.

HornetMaX

Quote from: vini97 on December 05, 2017, 03:10:48 PM
Give the MotoGP bikes full throttle with AW and listen to the engine. The frequency of "throttle change" is much lower than the frequency at which the handlebar oscillates during tankslappers.

But regardless, that discussion belongs here. AW/TC being deactivated in both videos means that it's irrelevant to this discussion right here.
Hmm, I will have a look. As far as I can remember the two freqs were not so different.
It's a pity we can't see this in the telemetry (we can easily see the tankslapper freq but not the throttle cutting due to the AW, we only have the rider's throttle pos).

Manu

in the debug mode you can see the right green bar corresponding to the throttle.
It's Easier to Fool People Than It Is to Convince Them That They Have Been Fooled.

HornetMaX

Quote from: HornetMaX on December 05, 2017, 04:40:11 PM
Quote from: vini97 on December 05, 2017, 03:10:48 PM
Give the MotoGP bikes full throttle with AW and listen to the engine. The frequency of "throttle change" is much lower than the frequency at which the handlebar oscillates during tankslappers.

But regardless, that discussion belongs here. AW/TC being deactivated in both videos means that it's irrelevant to this discussion right here.
Hmm, I will have a look. As far as I can remember the two freqs were not so different.
It's a pity we can't see this in the telemetry (we can easily see the tankslapper freq but not the throttle cutting due to the AW, we only have the rider's throttle pos).

Hmmm did a (too) quick try. Manu's Honda motogp on victoria, TC at zero, AW at 3 (direct lean 100%), default setup.

1. I seem to have no tankslappers (but may need to try more / push more).
2. When AW kicks in, the ON-OFF freq is surely faster than the freq of a tankslapper so at least in principle, the AW could make things worse (mind, it's not a proof it does).

Any track/bike combo that makes tankslappers very obvious for you?

Vini

I want to dig this thread up because while tankslappers have been greatly improved (albeit partially due to better bike data tuning), there is still something fundamentally off about the virtual rider in my eyes.
More specifcally, the constant presence of a steering force that keeps the front centered even when it makes zero sense (coming out of corners with no weight on the front).
I still believe that this is the reason you have to use unrealistic throttle inputs to maintain a stable powerslide and it may also be related to the bad low speed stability.
The reason I think this is because smooth rear wheel steering is certainly possible and I use it in every corner to some degree in order to tighten up the exit but if you want to maintain a powerslide with a significantly greater steering angle, you have to agressively upset the bike with the throttle because the virtual rider is working against the slide, trying to get the front wheel in-line again.

Quote from: Vini on November 22, 2017, 05:50:45 PMIn reality, riders loosen up on the handlebar under acceleration, so that the front wheel is allowed to stay slightly misaligned until it catches traction again by itself.
https://www.youtube.com/watch?v=lX_1cK5Q9tQ&t=28
This "controlled misalignment" under acceleration is not possible in GPB at the moment because the virtual rider is obssessed with getting back to the "correct" steering angle.

So my question to PiBoSo is if it is possible to implement a little subroutine that goes something like this:
if fork travel < X & steering angle > Y, set VR steering forces to 0
The parameters X and Y (Y being the critical one) would be defined in the bike CFG.

I think this relatively simple subroutine would be a worth a try in a future release.

Vini


Vini


Vini


Myst1cPrun3


infected247

[edit] I should had read Vini's post more carefully as he's talking about the powerslide. I could only see the "fixing tankslappers" part in the thread title and threw me off. sorry [/edit]


Quote from: Vini on April 19, 2019, 12:08:00 PMI think this relatively simple subroutine would be a worth a try in a future release.
Just my 2 cents. I think this is an oversimplified approach that is bound to cause more problems in the long run, and perhaps this is why it hasn't received any attention by Piboso.

My approach would be to first let the virtual rider know when a vibrational mode of the bike is excited in the first place and then have him take extra action until it decays sufficiently. (like letting go of the handlebars completely lol)

If we want to get technical, I would use the steering angle values in a short time interval to detect if there is a prominent sinus component in the range of 5-10Hz where wobble frequently occurs. This can be achieved with a fourier series of the sequence of steering angle values, and reading the magnitude of the coefficient in the respective frequency bin. This would indicate directly how strong the vibration is.
I suppose the physics engine runs at least at 60Hz, so this should be doable.

Vini

This subroutine would act as a last resort when all other virtual rider control loops have failed.
Of course, those control loops also need to be finetuned further to avoid tankslappers developing in the first place but that doesn't seem to be a straightforward task.
My main concern here is actually powerslide and wheelie behaviour because what the virtual rider is doing in these situatios is so obviously wrong. Corner exits are one of the only places where there is an obvious visual mismatch between GPB and reality (front wheel always staying in-line).

Alternatively, if this subroutine cannot easily/smoothly be integrated into the current virtual rider code, you could introduce a "temporary virtual rider deactivation button" as a debug option to at least allow modders to analyze handling issues better.