Hi everyone... today I wanted to share some data in hopes that someone can help explain why our robot has the right side slower than the left. Here is a quick graph:
And here is the actual numbers it represents:
http://www.termstech.com/articles/TestDirections.txt
What this test does is simply goes full throttle forward, and then full throttle backwards. The green 'v' is voltage left and right (both left and right sides are interleaved within the pixels). The 'Y' grey is displacement in meters. The "p" magenta is the desired speed (p for predicted). The cyan 'e' encoder is the actual velocity recorded. Both 'p' and 'e' are linear velocity measured in meters per second. That leaves the yellow 'eo' which is the PID influence. Each line of text (or two pixel columns) represent 10ms iterations.
At first I thought the speed differences were due to CoF, but looking closer at the right side it does something contrary to that theory. Like CoF it will reduce the overall top speed... clearly when voltage reaches 1.0 the left side always has a faster speed. I wanted to make sure that there was not significant motor bias of one direction to another (e.g. motor brushing placement). So here's the part where it gets interesting... when it decelerates and I try to slow down both sides... the right side all of a sudden goes faster than the left. If it were CoF... this would not be the case in fact just the opposite as high CoF would act like a mild brake and make it decelerate faster. So that leaves two possible answers I can think of:
1. The mass on the right side is much heavier
2. There is not as much current going on the right side given the same amount of voltage.
Also note how the PID tries to increase the voltage but still the right side is going faster... the speeds want to have a 300ms lag from its natural momentum.
I believe it's a lack of current as I have observed it getting worse when the battery gets lower voltage readings (e.g. 11.2)... on several robots.
Does this sound right? Anyone have an explanation why the current distribution becomes unbalanced?