Rotating wheel with rigid body dynamics
In the rigid body world there is a rigid body constraint 'motor', this is assigned between two rigid bodies. 

What you need is:


The original wheel - active rigid body
An object to push on (a simple cube) - passive rigid body - constrained to the original wheel (hidden inside for example)
An empty - rigid body motor constraint: angular motor - also constrained to the original wheel


Now the wheel is motorised and will drive itself across the ground plane.

Hope this helps!