This is one of my balancing Segway type robots. This one uses an Arduino mega, sabertooth 2X25 motor controller, wheelchair motors, 2 X12V lead acid batteries, and an L3G4200D gyro. No accelerometer because you just don’t need an accelerometer. I added an Xbee and used it to transmit balancing data (gyro output and motor input) which I recorded and included as a plot in this post. I also added a remote to control the robot since I originally intended to use it to carry my golf bag.
I designed the balancing digital filter using Mathematica software. Since the filter coefficients were calculated there was no need to include tuning pots or other tuning hardware. Tuning pots are for amateurs.
What looks like noise in the gyro signal is actually fast oscillations caused by the swaying weight of the rigid black pipe handle. The data shows balancing with nothing additional standing on the robot.