

We might just dip the entire bot in a Locktite bath before bagging.  Kevin Ray [more] 



Thread Tools  Rate Thread  Display Modes 
#1




paper: AMB Design Spreadsheet v2
Last edited by AriMB : 07262018 at 04:11 PM. 
#2




Re: paper: AMB Design Spreadsheet
This version includes some cool new stuff, including an sprint distance drivetrain gear ratio optimizer and reverse projectile motion calculator. Check it out!

#3




Re: paper: AMB Design Spreadsheet
I live and die by these spreadsheets, so I find the trajectory very interesting. I played around with linear velocity (speed of the wheel at the edge) but my ratios are about 8:1 for a 775 for a 2017ish shooter by just using free speed and wheel radius. What is a ratio that some teams used or am I way off? Thanks for the amazing spreadsheet.

#4




Re: paper: AMB Design Spreadsheet
Quote:
Digression over  I generally recommend that you just overspec the speed and make up for the lower torque by adding more motors (if your weight budget allows)  every shooter Ive designed or worked on has magically had less range than you wanted at the beginning. 
#5




Re: paper: AMB Design Spreadsheet
I was asked to explain a bit about how the two new worksheets work, so I will do that here.
Sprint Distance Calculator First of all, if you do not know what sprint distance is and why it's important to calculate it, you should read this whitepaper by ex Killer Bees' student Andrew Palardy. It explains the importance of factoring in acceleration time and voltage sag into your drivetrain calculation, and how the Killer Bees in 2012 sped up their robot by "slowing it down." The sprint distance formula that I used was almost exactly copied from the C code of Ether's Drivetrain Acceleration Model. That code was converted to VBA code, which was used to create a custom Excel function TimeToDist(). This is the reason the new version requires you to enable macros. I made a few simplifications by changing some inputs in Ether's model into constants, to lower the number of manual inputs needed. These are the constants:
The Forward formula simply implements this function, using the input cells as inputs to the function. The Reverse formula is more complicated, as one of the human inputs (gear ratio) is not known, and we want to find the value that minimizes the solution (time to go that distance). Solving the function arithmetically for the gear ratio is nigh impossible, so I used the GoldenSection Search method to find the answer numerically. Since this method requires a search interval and I didn't want to limit the formula to a certain maximum gear ratio, the optimization has two steps. First it steadily increases the gear ratio, evaluating the time for each ratio until it passed the minimum point (i.e. the time begins to grow). It then runs the GoldenSection Search algorithm for a number of iterations using the newly found bounds to find a more accurate estimation of the extremum point. That point, where the time is at a minimum, is the optimal gear ratio for that set of inputs. Unfortunately, since the actual implementation of the TimeToDist() function is done in VBA, the Excel sheet does not have access to the simulation data, so it cannot draw graphs of different values vs time as some other programs can do. That is one thing I will be working to add to the next release. Projectile Trajectory Calculator This calculator was meant to help find a starting point for prototyping, using very basic physics to get an estimate of the initial velocity and angle needed for the projectile to land at a certain point in space with a certain angle of the final velocity. The formula was derived algebraically from five basic physics formulas: (1) d = v*cos(θ) * t (2) h = d*tan(θ)  (g*d^2) / (2*(v*cos(θ))^2) (3) vfx = v*cos(θ) (4) vfy = v*sin(θ)  g*t (5) tan(α) = vfy / vfx where θ = initial angle, α = final angle, d = x displacement, h = y displacement, v = initial velocity, g = gravity, t = time to finish, vfy = y component of final velocity, and vfx = x component of final velocity Some algebra and trig boil those down to two final formulas: (6) v = sec(θ) * sqrt(g*d / (tan(θ)  tan(α))) (7) 2*h/d = tan(θ) + tan(α) Spoiler for Derivation:
The Reverse formula should be useful for designing shooters to fit the game strategy that you choose (i.e. where are you shooting from and what's the optimal angle for the object to hit at). The Forward formula can then help show what will happen as those values vary (e.g. where does the object land if you move forward/backward from the goal). Again, this formula does not account for air resistance, spin, or a host of other factors, so you must prototype and iterate the shooter to make sure it will work. 
#6




Re: paper: AMB Design Spreadsheet
Quote:

#7




Re: paper: AMB Design Spreadsheet
Quote:

#8




Re: paper: AMB Design Spreadsheet
I just uploaded version 2.1. Here's what's new:
Supports forward sprint distance calculation for shifting drivetrains. The formula assumes the drivetrain shifts instantly, and at the perfect time. I'm pretty sure the formula is working correctly, but sometimes I am a bit doubtful; I'd appreciate if people want to play around with it to test it out. Now you can get a position, velocity, and acceleration graph for the sprint distance calculation. This allows you to better visualize how the drivetrain accelerates as it travels. Metric boxes now only change the outputs, and leave the inputs in imperial units. This on request of my students, who natively use metric, and said most of the inputs start off in imperial units, so it's easier for them for the calculator to only convert the outputs to metric. Projectile calculator graph now has axis labels. A few other random bug fixes Let me know if you have any questions, comments, or suggestions 
#9




Re: paper: AMB Design Spreadsheet
Version 2.2 has been uploaded, including:
• Fixed the formula for sprint distance calculations* • Small GUI updates • A few other miscellaneous things *I thought that I had copied the code from Ether's Drivetrain Acceleration Model correctly and verified it, but apparently I made some mistakes. This time, I literally copypasted the code and switched syntax from C to VBA. This time, it seems to work better 
Thread Tools  
Display Modes  Rate This Thread 

