Motor Speed vs. Motor Power

Speed/Power is very linear.

Polled at a Motor Power Output (%) every 5% increase, over a motor rotation of 720 degrees each. Motor Rotation Speed vs Motor Power Output (%) for NBC/NXC Firmware 1.28. As you can see, it's a pretty linear.

 

I was interested in how fast the motors would spin (in the air for the first tests, to not let gravity/load/friction/etc affect the results) depending on what I set pwr in the NXC function OnFwd(outputs, pwr).

I wrote a program (download here) which logged the time it took to spin the motor at 720 degrees (in one experiment), and with a starting pwr value of 5, increasing by 5, until it reached 100. It was tested on the NBC/NXC Firmware 1.28.

It seemed to be linear, and I did a little “analysis” (if you can call it that), and came up with the graph on the right, which represents the ratio between Speed and Power. This ratio is about 7:1.

Next, I tried it with the robot on the ground. The results were pretty much the same (linear), as you can see in the image to the bottom left. Of course, it slowed down a bit, as can be expected.

I still haven’t figured out how this is useful, but if you can suggest reasons for why I haven’t wasted my time (which I actually like doing, believe it or not), please tell me in the comments. Now I’m adding meaningless text just to fill this line, so my blog post looks good. 🙂

 

If you want a copy of the program and data, you can download it here. [LINK]

 

 

 

 

~ by muntoo on February 9, 2011.

10 Responses to “Motor Speed vs. Motor Power”

  1. […] Muntoo in Datalog, Lego-X | Tags: LEGO Mindstorms NXT NXC Motors Datalog  Reposting from My Blog.  Polled at a Motor Power Output (%) every 5% increase, over a motor rotation of 720 […]

  2. I would have liked to see how much power the motor has, i.e. how much can do before stalling on different powerlevels.

    • I can get it to barely move at 5% (in the air), any lower doesn’t work. On the ground, it’s 20%. If you look at the ground results chart, you can see I start at 20, as any lower would not let the motors move (for a robot with a NXT and 2 motors, and the average amount of assorted Technic pieces; not sure what the weight was). …You’re talking about g, Earth Gravity, right?

  3. wow, this is really nice! I was always told it wasn’t linear progression, so I just assumed it was something more drastic…. And it sucks telling your motor to turn at a “speed” without knowing what units its measured in….

  4. Muntoo,

    Could it be that the function/setup applies regulated power? I mean that there is some kind of PID controller in the background that keeps the speed in line with the power level.
    I know robotC for example operates this way by default. If I switch off regulated power I do not see any motor movement at all at very low (<15%) power levels.

    • You’ll have to ask John Hansen (I was using the NBC/NXC EF 1.28), if you want an intelligent answer. 🙂
      I was using RotateMotor() *, so you should ask him about that. IIRC, it does try to speed up (as long as it’s not at maximum already) if you apply load, so possibly there could be regulation. I’m not sure, though, and I might have been using a different function(s) at the time. You should try it yourself (I don’t have the NXT for a while…)

      *I really must edit the CSS for this theme and make the font size bigger.

  5. It can be used for when the motor slows down because of friction and can’t complete a rotation in the specified time to up the power until it can. I’ve made a program that does that in NXT-G.

  6. […] Perhitungan Model Motor Induksimenghitung kecepatan sinkron pada motor induksiMotor Speed vs. Motor Power a#ribbon { position: absolute; top: 0px; right: 0px; display: block; width: 129px; height: 129px; […]

Leave a reply to muntoo Cancel reply