Author Topic: RPM Analysis of Various Motors  (Read 1400 times)

Offline Mr. AS

  • TheGloriousCarbideArstotzkanIronsideChaosProtocol
  • *
  • Posts: 7558
  • Rep: 19
    • robotarenagtm
  • Awards BOTM Winner
    • View Profile
    • Awards
RPM Analysis of Various Motors
« on: June 08, 2017, 11:15:31 PM »
Or: "To Chain Or Not To Chain?"

We all know that both chained motors and bursted motors improve speed quite a bit, but by just how much? In this post, I'll be comparing RPMs of a few chained setups.
To answer this, I threw about 290kg of weight onto 4 different chained setups:

Bot of the month of all months coming through
(note: I would have used the standard 9-mace weapon arrangement that most actual stock bots used, but the problem there is that RA2 only runs at 30FPS I record at 30 FPS (whoops). If a single rotation is made in less than a frame, than measuring it's RPM is effectively impossible. Increased weight should weigh down each setup equally, anyway.)

From top, clockwise:
A standard set of chained motors, 2 chained HPZ (shortened as "HPZ+HPZ")
A weaker motor to compare how motor speed affects overall RPM, HPZ chained to Redbird (shortened as "Redbird+HPZ")
A base statistic to compare to, Standard HPZ chained to nothing (shortened as "HPZ")
A random chaining idea that popped into my head while doing this, HPZ chained to servo (shortened as "Servo+HPZ")

To calculate the RPM, I recorded about 30 seconds of spinning 2 sets of motors up:


I then took the raw footage and counted how many frames were required for the red extender (recolored white for aesthetic purposes) to make 1 and 3 rotations. The framecounts were taken after 25 seconds of spinning so that they were measured at their maximum speed.
The average RPM was found by taking the number of frames in a 30FPS minute (1800) and dividing it by the frames needed for 3 rotations, dividing it again by 3 so that the single-rotations-per-minute is displayed rather than the triple-rotations-per-minute.
Weight cost and how much RPM you get for each KG spent on each setup are also listed in the table, as I feel it's useful information in determining if chaining is really worth it or not.

Here's a table with all the info in it:


Observations of Note:
-Chaining seems to enhance overall RPM exponentially, rather than incrementally.
-Chaining is more than worth the weight required to do so, at roughly 5-6 RPM for every KG spent compared to the HPZ's 1.8. This means a standard HPZ+HPZ is 320% as efficient than a single HPZ.
-As demonstrated by comparing Redbird+HPZ to HPZ+HPZ, using faster motors seems to increase overall speed, but not spinup time.
-Trying to chain HPZ to servos to be fancy and cool isn't very effective at all. The increased RPM is likely just from the fact that attaching spin motors to any kind of axle will increase their speed.
-For 290kg of weight, it took the Redbird+HPZ and HPZ+HPZ 10-13 seconds to spin up, the Servo+HPZ took 7-8 seconds, and the regular ztek was almost instant. These would decrease with less weapon radius and weight, however.

TL;DR: Chained motors are a lot better than you thought, even if RO7 makes them situational.

Up next: axle mount/snapper/servo boosting. Feel free to suggest other things to cover ITT as well.
« Last Edit: June 08, 2017, 11:59:44 PM by Mr. AS »
How you make Alarm Clock Pizza is:
Step 1: You buy an alarm clock from the store, and then you have to break it and put it in the sauce.
Step 2: Fold the sauce in 5 slices and put it in the dough.
Step 3: Paint the eggs with a pitcher of a clock showing what time you want to wake up and eat pizza for breakfast.
Step 4: Put the eggs in the dough.
Step 5: Make it flat into a round shape and draw the time you want on it.
Step 6: Put some old steel to prevent other peple from stealing it.
Step 7: Make it flat and cut into 60 slices 1 for each minute in 1 our.
Step 8: Put in the oven set the timer to 30048813.2884 seconds and put the temperature on 'Volcano' setting.
Step 9: If you think it is take to long, then get yor alarm clock and set it to now so that it will ring and you can take it out.
Step 10: Take it out uv the uvin wen it is redy and go to bed. In the morning eat pizza and also eat yor hands bi mistake.

Offline Thyrus

  • *
  • Posts: 6218
  • Rep: 19
  • Back to purple '17
    • http://www.youtube.com/Th
  • Awards BOTM Winner
    • View Profile
    • Awards
Re: RPM Analysis of Various Motors
« Reply #1 on: June 09, 2017, 02:40:08 AM »
Good thing to know. Will you do this for DSL 2.2 as well? Are we even "allowed" to chain motors in DSL IRL?

Offline Reier

  • Rieir
  • *
  • Posts: 8579
  • Rep: 8
  • I GOT 3RD IN RAW1
    • https://www.youtube.com/c
  • Awards old BOTM Winner
    • View Profile
    • Awards
Re: RPM Analysis of Various Motors
« Reply #2 on: June 09, 2017, 11:04:37 AM »
Nice information. I'd be interested in seeing how torque plays into this (do all chains eventually have similar max speeds etc) but I'm not sure how that could be tested.
ALERT- Another WS coming up...
voted best bot builder two times and counting babayy. the best ra2 builder who has never won an actual tournament match
ReiAI pack for Ironforge
My drawings, and my webcomics
Why online PVP will save RA2
The problem with competitive IRL in RA2
I'm fine with hugging reier

Offline Fracture

  • Super Mega Hyper Giga
  • Ultra Heavyweight
  • Posts: 1506
  • Rep: 11
  • how about i shove my big dog up your hanky panky
  • Awards GTMCS2 Divison Winner BOTM Winner
    • View Profile
    • Awards
Re: RPM Analysis of Various Motors
« Reply #3 on: June 09, 2017, 06:00:13 PM »
Use this:

This is something that's been on my to-do list ever since apanx made his melty brain AI, and I've finally got around to finishing it.  It's an AI that measures the RPM of its spinning weapons, and won't move until they're spinning at a certain speed.


Get it here: https://gametechmods.com/uploads/files/SpinupOmni2.zip


Directions for using it are at the top of the .py file.  One thing you should know that I might as well repost here: RA2 can't measure times less than 1/30 second, even if you set the tick interval lower.  So the RPM calculator is fairly limited.  It can't measure anything faster than 1500 RPM, and it gets less accurate the faster a bot's weapons are spinning.  It still works pretty well for most bots, though--it turns out that spinners in RA2 are generally pretty slow, even in DSL.


One cool feature is if you put 'DisplayRPM':1 in the Bindings, you get an in-game display that shows the current RPM of the bot's spinner, the maximum RPM, and the average RPM over the whole match.  If you've ever wanted to know how fast Diarrhea Of A Madman's weapon spins, now you can find out.


Corollary: the 1/30 second limit also means that apanx's FBS.py uses an unnecessarily low tick interval.  It should be able to be increased from 0.001 to 0.0333 with no loss in performance, thus decreasing lag.