question about DC motor behavior

I am a bit puzzled by something I've observed with a DC motor I am using and was hoping someone could offer insight.
I am working with a Maxon A-max 26 DC motor which is
equipped with a 100-count per revolution encoder. I got it used on eBay, so it's one-of-a-kind (at least for me). In measuring motor velocity, I've noticed that there is a point once per cycle where the motor appears to speed up slightly from about about 1/3rd percent of its average. This measurement is very much repeatable (I've tested it over hundreds of revolutions) and always happens at the same position. This happens when running the motor at a steady rate, of about 3370 RPM, after coming fully up to speed. The motor is running unloaded, except for the power loss through its gearhead. I am trying to get parts for a flywheel so that I can put some momentum on the thing to see what difference it makes.
Clearly, the variation isn't that serious, but it does annoy me that I don't understand its cause. I can think of two possible explanations. Some kind of mechanical or electromechanical issue (cogging?) or a slight inaccuracy in the encoder. Does anybody have any ideas as to what might be happening or what I can do to isolate the problem?
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
gwlucas wrote:

<snip>
I'm not familiar with this motor, but from your description it sounds like it's an all-in-one design and that the motor contains the servo circuitry for speed control. If that's the case, the first place I'd look is the control circuitry on the motor. It may be very simplistic, for whatever application the motor was originally intended for.
But...what does "1/3rd percent of its average" mean? Do you mean 33% variance, or 0.3% variance. If the latter, how are you confirming this? An error rate of 0.3% doesn't sound like a lot to me...
-- Gordon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Gordon,
Some more detail...
The motor is a brush-commuted DC motor with a double-ended shaft. The encoder is attached to one end, a gearhead to the other: There are no control electronics. The motor is rated for 7.2 V, 4 Watts max. I've been running it with 6V from a good quality bench-top power supply. The gearhead is a 2 stage spur gear arrangement with a 6:1 reduction ration. Again, the encoder reads directly from the motor shaft (not from the reduced gearhead output). To get some sense of the motor, you can look at one of its upscale relatives at Acroname http://www.acroname.com/robotics/parts/R179-6V-ENC-MOTOR.html This particular one is Maxon package 132015 and I bought it used. The encoder is a two-channel, quadrature encoder with 100 counts per revolution.
To evaluate the speed, I take lots of samples (at 100 counts per rev, they pile up pretty fast), performing measurements with each encoder click. Then I average together the 1st, 101st, 201st, 301st... 9001st, etc, the 2nd, 202nd, 302nd, etc., etc. Thus persistent features show up, less persistent features go away. Since the encoder doesn't have an "indexing" channel, I don't know its position when the measurements start, but visual inspection of the results from several test runs appear to be consistent, except for a difference in phase.
Anway, looking at the data (which I didn't have with me when I posted earlier) there is a persistent set of about 15 percent of the measurements where the speed is larger than the rest (normally about 4050 RPM, increases to 4055 RPM.). There is also a spike where for 1 interval I measure about 4060 RPM. Again all the numbers are the results of averaging about 90 measurements per each "encoder bin" so they are persistent. As far as where the 0.3 percent came... that's the result of doing arithmetic in my head. I was thinking of the (4060-4050)/4050 = about 0.0025. The main reason that I find this small number interesting is that it persistently happens in the same place. Something's going on and I wish I knew what it was.
My equipment is pretty minimal (I'm not a hardware guy and what I do have is kind of embarrassing), but I've looked at the data a couple of different ways and think that my speed estimates are basically correct and that I do, indeed, have the data to support the kind of precision I'm tossing around. I haven't done much analysis yet, and haven't tested with slow speeds or loaded motors.
Gordon McComb wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
> Gordon McComb wrote: > > >>I'm not familiar with this motor, but from your description it sounds >>like it's an all-in-one design and that the motor contains the servo >>circuitry for speed control. If that's the case, the first place I'd >>look is the control circuitry on the motor. It may be very simplistic, >>for whatever application the motor was originally intended for. >> >>But...what does "1/3rd percent of its average" mean? Do you mean 33% >>variance, or 0.3% variance. If the latter, how are you confirming this? >>An error rate of 0.3% doesn't sound like a lot to me... >> >>-- Gordon > > > gwlucas wrote:

Hi, Have you tried testing the motor under a mechanical load?
Is this variation causing a problem? If it is causing a problem, I would suggest putting a flywheel on the motor shaft to smooth out the torque ripples.
I am not sure, but my first guess on the cause would be that as the brushes cross the boundaries of the commutator, there are periods where the brush spans two commutator bars, powering up two sets of windings in parallel. Worn brushes will increase this period, as they contact a larger angular part of the commutator.
Good Luck, Bob
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Bob and Gordon,
Thank you both for your excellent advice. After looking at the data again, I'm pretty sure that I am looking at mechanical issues not a glitch in the sensor. I've now got a matching motor that I can test with for comparison and and friend has promised me a load of a flywheel that matches the 6mm output shaft so that I can see how the motors run under load.
Gary
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
As this is an open system, and unloaded, and if you're sure of the other variables you mentioned, then the variance is more than likely mechanical, probably due to some wear of the internal gears, or even the normal tolerance of the gearhead and bearing surfaces. A (very) slightly out-of-round gear within the gearhead could very possibly produce what you're seeing, for example. As the encoder is attached to the motor shaft that is attached to the gearhead, any wear or misalignment, even minor, in the gearhead will directly affect the rotation speed of the encoder wheel.
An unloaded output speed with 0.3% accuracy is pretty good. Actually quite good.
-- Gordon
gwlucas wrote:

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.