I'm clearly missing something obvious, but this used to work, and all I did was change from a BMC v2 to an eZee -- which I thought were roughly the same..
So I'm trying to empirically measure RPM/V. My program steps through 5 power levels (think of them as 25%, 50%, 75%, 100%), runs the wheel, measures the speed and voltage, then calculates the RPM/V. I try to be reasonably careful: I get the wheel up to speed before measuring, and I average measurements over 100 datapoints. (Note that I do have a rim/wheel on the hubmotor, but it's off the ground so no load.)
It works fine for my crystalyte:
motor#, desired power level (0-1000), achieved power level, volts * 10, average RPM, PWM volts * 10, RPM/volts
2 250 250 645 148 161 9
2 500 500 645 302 322 9
2 750 750 644 449 483 9
2 1000 1000 643 606 643 9
showing 9 RPM/V for every power level, just as it should. (Controller doesn't handle floats, hence some of the weird math.)
But when I do this for my Ezee
1 250 250 645 301 161 18
1 500 500 640 643 320 20
1 750 750 632 1095 474 23
1 1000 1000 623 1516 623 24
The most obvious problem is the RPMs are too high. But I'm using 80 pole pairs, just as I did with the BMC. The second problem is the drifting upwards, and too high, RPM/V.
So do I have pole pairs wrong? And can anyone spot the boneheaded measurement error I'm incurring?
Thanks,
s.
So I'm trying to empirically measure RPM/V. My program steps through 5 power levels (think of them as 25%, 50%, 75%, 100%), runs the wheel, measures the speed and voltage, then calculates the RPM/V. I try to be reasonably careful: I get the wheel up to speed before measuring, and I average measurements over 100 datapoints. (Note that I do have a rim/wheel on the hubmotor, but it's off the ground so no load.)
It works fine for my crystalyte:
motor#, desired power level (0-1000), achieved power level, volts * 10, average RPM, PWM volts * 10, RPM/volts
2 250 250 645 148 161 9
2 500 500 645 302 322 9
2 750 750 644 449 483 9
2 1000 1000 643 606 643 9
showing 9 RPM/V for every power level, just as it should. (Controller doesn't handle floats, hence some of the weird math.)
But when I do this for my Ezee
1 250 250 645 301 161 18
1 500 500 640 643 320 20
1 750 750 632 1095 474 23
1 1000 1000 623 1516 623 24
The most obvious problem is the RPMs are too high. But I'm using 80 pole pairs, just as I did with the BMC. The second problem is the drifting upwards, and too high, RPM/V.
So do I have pole pairs wrong? And can anyone spot the boneheaded measurement error I'm incurring?
Thanks,
s.