New Gearboxes are installed time to make the balancing happen. - with video!
Video
here are the first results:
First Test default:
double Kp = 40; // First adjustmentdouble Kd = 1.1; // Second adjustmentdouble Ki = 0; // Third adjustment
double Kp = 50; // First adjustmentdouble Kd = 1.0; // Second adjustmentdouble Ki = 0; // Third adjustment
I am getting some oscillation now, the Kd starts to tune this down. Clearly from the video the robot has a tendency to lean in one direction. I adjust the frame by putting hot glue between the sections, just squeezing it in and letting it harden. I also suspect that the battery (weight inside) may be shifting forward. Using some cork, have wedged it in to prevent momentive shifting.
Third Set Test default:
double Kp = 55; // First adjustmentdouble Kd = 1.0; // Second adjustmentdouble Ki = 0; // Third adjustment
This was the most aggressive on the Proportional control constant that I used in the First Session. Certainly a little more 'attack' on the balance change. Starting to get some stable oscillations.
Forth Set Test default:
double Kp = 55; // First adjustmentdouble Kd = 1.0; // Second adjustmentdouble Ki = 10; // Third adjustment
With this change, I added the Ki - Integral constant in to the PID. The result of Integral is to help smooth out the oscillations. There is a negative effect of controller 'Wind-up' as the integral values do not dissipate quickly. However I do not think I experienced this in this session.
Overall the new settings in this set were not as desirable as the previous settings. Stability, subjectively, was reduced. Also, it seemed that I had a 'short' or disconnect in the power - OR - the PID was overwhelmed and stopped for about 1/2 second. Tilt! just fell over, and then everything started back up.
Weight Adjustment
Finally, I added a moderately heavy weight to the top of the robot. I used a Transformer that I had salvaged out of speaker. The additional weight seemed to slow the 'jitter' of the oscillations. However, the motors were unable to overcome the falling weight when it was tilted.
It seems that the robot has a tilt that needs to be identified and removed. This is also leading to instability. perhaps it is associated with the 'level-ness' of the sensor.
And - after repeated testing the blue wheel started to fall off. This was a temporary solution to start with. It seems the repeated jerking started to effect the friction connection that was holding it in place.
Tilt! A Balancing Robot - 3D Printed, Recycled Motors |
Next Steps
1) identify the source of the lean/tilt
2) attach some weight to the top
3) investigate using the 12V battery and 5V power source
4) investigate easy remote control solutions