gametechmods

Robot Arena => Discussion => Topic started by: Mr. AS on June 08, 2017, 11:15:31 PM

Title: RPM Analysis of Various Motors
Post by: Mr. AS 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:
(http://i.imgur.com/wzXurET.png)
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:
https://www.youtube.com/watch?v=lAWBK5glV2c

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:
(http://i.imgur.com/nmHMG4I.png)

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.
Title: Re: RPM Analysis of Various Motors
Post by: Thyrus 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?
Title: Re: RPM Analysis of Various Motors
Post by: Reier 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.
Title: Re: RPM Analysis of Various Motors
Post by: Fracture 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 (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.