Skip to main content
gamedev.net
🔒 Locked

Rolling Motion

Started by yaroslavd Feb 19, 2005 at 2:11 PM 6 replies 1.6k views
Original Post
yaroslavd
yaroslavd
Hi, guys. I'm having problems understanding rolling motion. Specifically, I am trying to simulate physically accurate pool ball movement. I'll tell you what I understand so far and what I don't. Hopefully, some of you can clear up my misconceptions and explain the answers to my questions: If the ball is hit hard enough, it slides at first. Because of kinetic friction, w gets bigger in the direction of motion, v gets smaller. When v = w x r, rolling motion now starts. From what I read, this type of motion is identical to sliding except with a much smaller coefficient of rolling friction. However, this doesn't make sense to me. I mean once v = w x r, the ball's gonna be rolling, but if v keeps decreasing and w keeps increasing, this condition is gonna break the next frame. And if w always increases, how is the ball gonna stop? Basically, I'm very confused about the transition from sliding motion to rolling motion, the conditions for each motion, and the movement of the ball during each type of motion. I'm very sorry, as this is a lot to explain, but if someone can even "common sensically" explain to me what's going on, I'd really appreciate it because I've read many tutorials and can't understand how this works.
Fil
Fil
Quote:
Original post by yaroslavd
I mean once v = w x r, the ball's gonna be rolling, but if v keeps decreasing and w keeps increasing, this condition is gonna break the next frame. And if w always increases, how is the ball gonna stop?

v decreases because of friction (air, floor,...). w increases (initially) because of the friction with the floor. When w reaches the value v/r then v and w must change according to the law v = w x r. If w increases, v must increase otherwise r is a bit strange radius ;)

Your reasoning (first part) is ok IMO. You can find more information searching for "Kinetic Energy of Rolling Object".

Hope this helps.
Fil (il genio)
yaroslavd
yaroslavd
Let's even pretend that v = w x r is always true. How does the ball stop? Rolling friction will increase w, which will in turn increase v. So the ball would actually accelerate instead of slow down. What aren't I getting?
Fil
Fil
I try to explain (I'm not a physic guru [grin]).
At first the ball slides. w=0 v=initial speed.
At some time t, ball start rolling, so w increase (because friction force gives a moment on the ball that make it to roll). At some point in time, the ball is no more sliding. It is only rolling.

w cannot increase forever otherwise you have an acceleration. Instead you have a deceleration due to friction (that is always there). So what happen? v and w decrease because of the moment of friction force, so the speed get down as is normally expected.

Note that without friction your ball can't roll and will move forever (if no other forces change its movement).

I hope you see what I mean. :)
Fil (il genio)
yaroslavd
yaroslavd
Right. But why does friction, which at first accelerated w, now decelerate it?

BTW, w doesn't have to be 0 initially (for example, back-spin).
Fil
Fil
Quote:
Original post by yaroslavd
Right. But why does friction, which at first accelerated w, now decelerate it?

Because the kinetic energy decrease in presence of friction forces. You have also alpha (angular acceleration) due to the moment of friction force. It makes the ball roll and it makes slow down its speed. (It is easier to understand if one play with physic formulaes or starting a little (numerical, if you like) simulation taking into account friction force, ball intertia moment, mass, moment of friction force, w and v and alpha (angular acceleration), I think you need also energy (hope I forget nothing [grin])).

Quote:
Original post by yaroslavd
BTW, w doesn't have to be 0 initially (for example, back-spin).

w can be also negative or positive, what change is the point in time when w start to decrease (if it is positive, it will be 0 only when the ball stops).
Fil (il genio)
yaroslavd
yaroslavd
But friction is in the direction of w, so it makes it increase. Or, I guess it makes alpha increase, which in turn makes w increase (w = w' + alpha*dt). So how does friction cause w to decrease after it starts rolling?
Fil
Fil
You forget energy. :)
The Total Energy is not const because of the presence of friction forces.
So the variation of Total Energy is equal the work of friction forces (DeltaE=W).
E=K+U
if h=0 then U=mgh=0, so
DeltaE=K(t)-K(start)
K=1/2 I w^2 + 1/2 m v^2
At time t=0 you have w(t)=0 (the ball doesn't roll), v(t)=v0 (initial speed)>0).
At a certain point in time, t, you'll have your w(t) and v(t).
The ball has moved of a distance d in this period of time, so you can compute the work of friction forces (F * d = [mu]*m*g*d)
You can now compute DeltaE and knowing that v=w/r you can compute v and w.
You'll se with an easy (numerical) simulation how w, v, enery, etc. vary.

Hope this helps.

[Edited by - Fil on February 23, 2005 7:59:59 AM]
Fil (il genio)

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.