• Welcome to PiBoSo Official Forum. Please login or sign up.
 

Virtual Bike Controls

Started by teeds, September 26, 2014, 03:11:16 PM

Previous topic - Next topic

teeds

September 26, 2014, 03:11:16 PM Last Edit: September 26, 2014, 03:43:14 PM by teeds
Quote from: HornetMaX on September 22, 2014, 07:21:11 PM
Quote from: teeds on September 22, 2014, 03:40:40 PM
The same was confusing me while considering the required axis needed for a sit on controller build. I then just resigned myself to that only lean is going to work with this game. I had thought that to be more realistic I'd need 3 directional axis -

1/. Steering
2/. Bike Lean
3/. Rider Lean

But then noticed the game does not have these, so gave up on it. Then I see this direct steer option, which gave me hope, but it does not work as I had expected at all, as with direct steer on you get to steer but now no lean?

So I though OK I ride road bikes, MX bikes and pushbikes, so how do I ride them.....  ??? I Soon found it's not so easy to articulate verbally, for me anyway, can anyone else? Do we need 3 axis as above to get nearer to the real thing?
On a real bike you don't have an independent bike lean input: the bike leans due to the torque you apply to the handlebar and due to your body movements.
That's why if you use direct steer you have no lean input (and rightly so).

Making a sit-on controller that tries to mimic a real motorbike is tough. Very tough. Most of the people I've seen trying this have given the dream up or have ended up with something much farther from their initial objective (maybe still enjoyable, but that's not the same thing).

From a purely theoretical standpoint you'd need:

  • the trivial stuff: throttle, clutch and brakes axis.
  • 2 input axes for rider lean left/right and fwd/back (rider lean, not bike lean).
  • 1 axis associated to a torque sensor: it won't move due to your input (something like a load cell, except it  is torsional and not "linear"). That would provide GPB the torque you apply to the handlebar. You'd have to use direct steer torque (not direct steer angle).
  • 1 output axis for the steering: GPB will dictate the position of the handlebars. The actuator should be (in principle) perfect: instantaneous and with unlimited torque (in practice, very fast ompared to the typical max frequency of handlebar movements and stronger than your arms).
  • 1 output axis for the bike lean: GPB will dictate the bike lean (making your frame lean).

Notice how the steering works: you do not dictate the handlebar angle directly. You apply a torque, then GPB "decides" how the handlebar will move due to the combination of your input and the other torques acting on the front head (coming from road-tire interaction, centrifugal forces and gyro torques).

Even with that (which is very very tricky to build), it won't be perfect as you'd miss the interaction between your body and the chassis (which are kind of simulated by 2 input axis for rider lean).
Potentially you could put the same sort of torque sensor on the controller frame lean axis, but then GPB should provide an additional input.

It's a very very high call for a mere passionate.

MaX.

I've been reading this and other info on this and doing some observations while riding my own real bikes. All said above is correct for racing at speed but if we just for a moment forget all the FFB/torque and frame movement and only focus on the controls used to actually corner a bike I think we're missing an input which is lean (while using direct steer) in GPB. My only argument for this is that a rider can corner on a real bike without their hands on the handlebars. Based on this it seems to me that 3 inputs are involved - rider/bike lean, steering and rider position.

Applying force to the inside handle bar (counter steering) seems to be more a racing option where turns might need to be made as fast as possible, but is not actually necessary to corner a bike.

I appreciate that these controls might not be possible or practical to include but If you imagine mounting an FFB steering wheel (steering) on a simple lean pivot (rider/bike lean) and using the likes of the upcoming Oculus Rift for rider position (3rd input) then you could get a very sim like experience without actual frame lean or anything as complicated or expensive being involved. I do appreciate that there will be no correlation between steering input and leaning as per the real thing regarding counter steering but I don't see why the game can't take over this action when speeds increase and then only provide FFB for effect.
If the 3rd input is never going to happen so be it, a frame with lean and rider position will still do well along with throttle, front brake, clutch and also rear sets with brake and gear change. I guess I want make sure this will not happen before I start planning my build but it does seem that all the controls I mention are there but just not simultaneously.

I'd appreciate any input anyone has on this.

Teeds

HornetMaX

Quote from: teeds on September 26, 2014, 03:11:16 PM
I've been reading this and other info on this and doing some observations while riding my own real bikes. All said above is correct for racing at speed but if we just for a moment forget all the FFB/torque and frame movement and only focus on the controls used to actually corner a bike I think we're missing an input which is lean (while using direct steer) in GPB. My only argument for this is that a rider can corner on a real bike without their hands on the handlebars. Based on this it seems to me that 3 inputs are involved - rider/bike lean, steering and rider position.
You can steer a bike without using the handlbars, of course. Why that happens is however like counter-steering: you throw your hips left, the bike leans a bit left, the steering (which is free, as your hands are not on it) turns left and this finally leans the bike right for the right turn. Also, I think you can use it at relatively low speed, after a given point I'm not sure you'd effectively able to steer like this.

Quote from: teeds on September 26, 2014, 03:11:16 PM
Applying force to the inside handle bar (counter steering) seems to be more a racing option where turns might need to be made as fast as possible, but is not actually necessary to corner a bike.
This is false. Even on road bikes, steering at speed above 50Kmh (or something close to this) happens thanks to counter-steering.
It's not an option, it's the way you do it (even if many are not aware of it).

Quote from: teeds on September 26, 2014, 03:11:16 PM
I appreciate that these controls might not be possible or practical to include but If you imagine mounting an FFB steering wheel (steering) on a simple lean pivot (rider/bike lean) and using the likes of the upcoming Oculus Rift for rider position (3rd input) then you could get a very sim like experience without actual frame lean or anything as complicated or expensive being involved. I do appreciate that there will be no correlation between steering input and leaning as per the real thing regarding counter steering but I don't see why the game can't take over this action when speeds increase and then only provide FFB for effect.
Just my opinion: the rider lean you're speaking about is something that is useful mostly at low speed. But at low speed, you'd need a lot of finesse in what the rider does with his body in order to simulate things properly. Also, the virtual rider is not very good at low speed, so you'd need to use DST. In GPB you're rarely in these low speed conditions.
Notice also that lean pivot for the bike/rider lean (assuming it is possible to have such an input) would have to have force feedback too.

MaX.

matty0l215

Quote from: HornetMaX on September 26, 2014, 06:38:14 PM
Quote from: teeds on September 26, 2014, 03:11:16 PM
Applying force to the inside handle bar (counter steering) seems to be more a racing option where turns might need to be made as fast as possible, but is not actually necessary to corner a bike.
This is false. Even on road bikes, steering at speed above 50Kmh (or something close to this) happens thanks to counter-steering.
It's not an option, it's the way you do it (even if many are not aware of it).

from stationary even
http://www.youtube.com/v/20XsaHpRQC8
For faster responses, please visit the discord server- HERE

teeds

Sweet vid, he is using both counter steering and much opposite lock, opposite lock looks most impressive, speedway style!

HornetMax you are correct. I see this topic has been argued by many for a while now ;D But I have seen no mention of 90 degree centrifugal displacement http://super.nova.org/RC/CauseEffect/ "When force is applied to a spinning rotor like a bike wheel or helicopter flybar and rotor, the change direction occurs 90° at a right-angle to the input." Do you know of it's effect while riding?

https://www.youtube.com/watch?v=HuRlxpC9l-g - Can't see how this is called counter steering but 90 degree centrifugal displacement might explain it.

Seems to me without the 3rd lean input it's like riding while being bolted in a frame with your torso upright on the bike, do you think that would allow someone to ride normally? Also if I pull away from stop and want go left, I steer left and lean left, which, as you say, is why the GPB model feels a bit odd at low speeds. I'm also considering MXB with this controller, which will involve more slower speeds and scrubbing etc, I wonder if the inputs will be the same?



HornetMaX

Quote from: teeds on September 27, 2014, 06:25:13 PM
HornetMax you are correct. I see this topic has been argued by many for a while now ;D But I have seen no mention of 90 degree centrifugal displacement http://super.nova.org/RC/CauseEffect/ "When force is applied to a spinning rotor like a bike wheel or helicopter flybar and rotor, the change direction occurs 90° at a right-angle to the input." Do you know of it's effect while riding?
It's called gyroscopic effect (http://en.wikipedia.org/wiki/Gyroscope). It has an important impact on the bike dynamics of course: for example, it's the reason why its easier to go straight above a certain speed (and harder at low speed).

Quote from: teeds on September 27, 2014, 06:25:13 PM
https://www.youtube.com/watch?v=HuRlxpC9l-g - Can't see how this is called counter steering but 90 degree centrifugal displacement might explain it.
It happens as I've described above:
Quoteyou throw your hips left, the bike leans a bit left, the steering (which is free, as your hands are not on it) turns left and this finally leans the bike right for the right turn.
Not sure gyroscopic effects play a big role, as speed is pretty low in the video. What is sure is that the bike leans because the steering "falls", triggering the leaning in the opposite direction, like in counter-steering. If the steering was locked (as in K.Code's video), the pal in the video would not be able to "body steer".

The debate is old: m yopinion is that K.Code's point was right, just expressed in an ambiguous manner. The pal calling Keith's stuff bullshit is both missing Keith's point (which is partly Keith's fault) and also providing a low speed example. I'd like to see him lap around a track at decent speed with his "body steering" technique ...

Quote from: teeds on September 27, 2014, 06:25:13 PM
Seems to me without the 3rd lean input it's like riding while being bolted in a frame with your torso upright on the bike, do you think that would allow someone to ride normally?
Don't know if it would be normal or not, but you definitely can ride like this. Notice however that even without the 3rd input GPB could somehow "factor in" what the riders body typically does: so it could be there, just not manually controlled by you. When the rider lean right (GPB does this) the bike should lean a bit left (assuming no virtual rider at all, i.e. using DST torque).

Quote from: teeds on September 27, 2014, 06:25:13 PM
I'm also considering MXB with this controller, which will involve more slower speeds and scrubbing etc, I wonder if the inputs will be the same?
A few extra days and we'll know :)

MaX.

matty0l215

September 27, 2014, 07:25:08 PM #5 Last Edit: September 27, 2014, 07:31:59 PM by matty0l215
Quote from: teeds on September 27, 2014, 06:25:13 PM
HornetMax you are correct. I see this topic has been argued by many for a while now ;D But I have seen no mention of 90 degree centrifugal displacement http://super.nova.org/RC/CauseEffect/ "When force is applied to a spinning rotor like a bike wheel or helicopter flybar and rotor, the change direction occurs 90° at a right-angle to the input." Do you know of it's effect while riding?

https://www.youtube.com/watch?v=HuRlxpC9l-g - Can't see how this is called counter steering but 90 degree centrifugal displacement might explain it.



No input steering uses counter steering, just the rider is not introducing it.

I've been on an advance motorcycle handling course and the 90 degree thing is how counter steering works. Its easier to show rather than explain. Our tutor got the front wheel from a push bike (nothing special just something like a wheel with a free axle), He span it and got us to hold the axle, then told us to Lean the wheel left and tell him what happen, the wheel fought the movement, it wanted to stay upright. But when he told us to PUSH the left side of the axle the wheel naturally wanted to lean to the left.  This is due to centripetal (not centrifugal) force pulling the top of the wheel to the left but by the time it takes effect, the wheel is 90 degrees to the rotation of the wheel, making the wheel naturally and stably lean to the left.

http://www.youtube.com/v/PgUOOwnZcDU?hl
Explain a little differently but the physics are the same.

EDIT- If you don't believe me, try it yourself. You only need the front wheel of a push bike and spin it fairly quickly. (I am not responsible for any injury's sustained :P)
For faster responses, please visit the discord server- HERE

HornetMaX

Quote from: matty0l215 on September 27, 2014, 07:25:08 PM
I've been on an advance motorcycle handling course and the 90 degree thing is how counter steering works. Its easier to show rather than explain. Our tutor got the front wheel from a push bike (nothing special just something like a wheel with a free axle), He span it and got us to hold the axle, then told us to Lean the wheel left and tell him what happen, the wheel fought the movement, it wanted to stay upright. But when he told us to PUSH the left side of the axle the wheel naturally wanted to lean to the left.  This is due to centripetal (not centrifugal) force pulling the top of the
Hmm ... I disagree on that. Counter steering does not work thanks to the gyroscopic effect (the 90 deg thing).
It works as explained in the video you posted (at 2:04): you steer right, the bike starts turning right, the centripetal force will make the bike lean left and you'll be able to turn left.
This is somehow helped by the gyro effect (as you explained with your test with the wheel + axle), but it is not the main reason: mainly the bike leans right due to the centripetal force.

MaX.

matty0l215

Quote from: HornetMaX on September 27, 2014, 08:09:54 PM
Quote from: matty0l215 on September 27, 2014, 07:25:08 PM
I've been on an advance motorcycle handling course and the 90 degree thing is how counter steering works. Its easier to show rather than explain. Our tutor got the front wheel from a push bike (nothing special just something like a wheel with a free axle), He span it and got us to hold the axle, then told us to Lean the wheel left and tell him what happen, the wheel fought the movement, it wanted to stay upright. But when he told us to PUSH the left side of the axle the wheel naturally wanted to lean to the left.  This is due to centripetal (not centrifugal) force pulling the top of the
Hmm ... I disagree on that. Counter steering does not work thanks to the gyroscopic effect (the 90 deg thing).
It works as explained in the video you posted (at 2:04): you steer right, the bike starts turning right, the centripetal force will make the bike lean left and you'll be able to turn left.
This is somehow helped by the gyro effect (as you explained with your test with the wheel + axle), but it is not the main reason: mainly the bike leans right due to the centripetal force.

MaX.

Alright :) As long as people understand that a bike has to have input to make the bike change direction. You can't just hang off the bike and get round a hairpin, you've got to do with wheels/handlebars and that counter steering is a vital role in motorcycle handling  :)
For faster responses, please visit the discord server- HERE

Warlock

The best way to see countersteering thing is riding your own bike with only one hand. Left elbow on the tank (relaxing riding) and pay atention to what your right arm is doing to steer.

HornetMaX

The way I realised counter-steering (I mean in practice, as in theory I was already aware) is this (as suggested by my instructor): take a large parking, run your bike at at least 50Kmh, then push the handlebar left (you can give it a decent push, no need to be over-gentle) and see what happens. As easy as that.

MaX.

Hawk

If I'm correct, you can actually see, in GPB, the virtual rider applying torque steering during low-sides in an attempt to upright the bike.

Hawk.

sandman^kfmf

April 21, 2016, 10:52:40 AM #11 Last Edit: April 21, 2016, 10:55:15 AM by sandman^kfmf
I want to share my observation ant practice when playing GPBIKES with analog gamepad and driving motorcycle IRL.
This time I want to talk about our virtual driver partner ingame and his actions (some times very strange actions :D) when we are turning bike ingame as usualy - with no direct steering. You just bend your analog stick to one, or another side and your virtual driver makes this barely seeing handlebars movement LITTLE LEFT AND WHEN RIGHT or LITTLE RIGHT AND WHEN LEFT. This is nice - countersteering example like from physics book. :) We all know, what countersteering according to wiki is used by single-track vehicle operators, such as cyclists and motorcyclists, to initiate a turn toward a given direction. IRL of course.
But where is one BUT in our game.
If I drive a bike on highway in upright position (IRL of course) at higher speed and i want to travel from right part of lane to a left part, I don't use countersteering. I just push left handlebar FROM me (or pull right one TO me) and my bike smoothly travels to a road part, where I want to go - to left part of my lane. In short - I just turn wheel to right, but bike smoothly travels to left.
But in GPBIKES this is not working. Virtual driver always makes his jerky movement (LR or RL) when he tries to initiate countersteering in every situation when I want to change my direction. When bike is more or less upright, this sometimes only ends with bigger or smaller front wheel wobbling or very sexy wheel jerking. :D But, a problem occurs when a bike is in a corner at his full lean angle. Particularly then track is changing from more or less flat, to a uphill. For example. My bike is at his full lean angle to left side (I'm approaching a left corner) and after this left turn, where is another - right turn (let say - this is an "S" shape turns). So, at my full left side lean, when I approaching a right turn, I try to lean a bike to a right side with analog stick moving from full left, to right, but ingame virtual driver makes his countersteering movement (first a little bit left and when to the right) and my left lean turn ends with a nice lowside because at full lean angle to left, this "a little bit more left" is critical. :(
So a question is, what to do with situation's like this? :)

HornetMaX

Quote from: sandman^kfmf on April 21, 2016, 10:52:40 AM
If I drive a bike on highway in upright position (IRL of course) at higher speed and i want to travel from right part of lane to a left part, I don't use countersteering.
Yes, you do. You've described it yourself in your next sentence:

Quote from: sandman^kfmf on April 21, 2016, 10:52:40 AM
I just push left handlebar FROM me (or pull right one TO me) and my bike smoothly travels to a road part, where I want to go - to left part of my lane. In short - I just turn wheel to right, but bike smoothly travels to left.
You want to travel from right to left = you want the bike to turn left.
To do so, you push the the left handlebar away from you = you steer right.

That's counter-steering, by definition.

The jerkiness comes from the fact in real life you can have much more finesse than what you have with the pad.
You should play around with what GPB offers in terms of input sensitivity/linearity settings: probably you just want to have the stick of your pad to be less sensitive around its neutral point.

sandman^kfmf

April 21, 2016, 01:25:10 PM #13 Last Edit: April 21, 2016, 01:47:47 PM by sandman^kfmf
Yes, from some point of view, You are right about countersteering. Steering to left makes a bike travel to right.
But countersteering as one component is a little bit more complex when just pulling wheel to left, to drive to right and vice versa. Pulling handlebars is just first part of a job. :) It's like to say what E=mc^2 is incomplete because:
https://www.youtube.com/watch?v=NnMIhxWRGNw
:)
But back to the point.
Here is a definition from wiki about countersteering:
When countersteering to turn left, the following is performed:
1. A torque on the handlebars to the right is applied.
2. The front wheel will then rotate about the steering axis to the right and the tire will generate forces in the contact patch to the right.
3. The machine as a whole steers to the right
4. Because the forces in the contact patch are at ground level, this pulls the wheels "out from under" the bike to the right and causes it to lean to the left.
5. The rider, or in most cases the inherent stability of the bike, provides the steering torque necessary to rotate the front wheel back to the left and in the direction of the desired turn.
6. The bike begins a turn to the left.

And You are talking just about first two sentences. But where is 4 more. :) So, the problem is, what virtual driver is using all this points in every situation where is need to make a steering to one, or another side. Driver is leaned at maximum angle to LEFT, and he tries to make countersteering with RIGHTtoLEFT move once more and ends with lowside because where is no room for first two-three steps. When IRL, a lot of times, we are using only fifth one. If we have a bike leaned to maximum angle and want to stand bike back, we just pull left handlebar (or push right one) - turn to LEFT. Where is no need to make this RIGHTtoLEFT move, because where is no room for another LEFT, just RIGHT to standup from leaning. :)
I hope You understand what I'm talking about. :D

HornetMaX

How steering works for a bike is understood by many here, don't worry.

Quote from: sandman^kfmf on April 21, 2016, 01:25:10 PM
So, the problem is, what virtual driver is using all this points in every situation where is need to make a steering to one, or another side. Driver is leaned at maximum angle to LEFT, and he tries to make countersteering with LEFTtoRIGHT move once more and ends with lowside. When IRL, a lot of times, we are using only first two steps from six. If we have a bike leaned to maximum angle and want to stand bike back, we just pull left handlebar (or push right one). Where is no need to make this LEFTtoRIGHT move, because where is no room for another LEFT, just RIGHT to standup from leaning. :)
I hope You understand what I'm talking about. :D
Not 100% sure, but if you're referring to the fact that when you lowside you notice the virtual rider turning the bars in, then this has already been discussed: there's no proof (that I've seen, at least) that the virtual rider is not turning in *after* the lowside has already happened, so it's not clear that the lowside has been caused by some sort of virtual rider flaw/bug.

Especially using a joypad it is all too easy to be leaning fully left and, willing to pick up the bike to lean right, move the stick a bit too quickly to the right, asking too much to the virtual rider and generating the lowside (if your front was already on borderline grip conditions).