View Full Version : FSAE LapSim - Open Source - Link
FsaeSpec
10-07-2011, 11:53 AM
Website: http://www.fsaesim.com/simulation.html
Use/Modify: OpenSource
Greetings,
I've been doing Formula for quite some time now and I am finally on the verge of finishing up my last semester. As I entered my last semester, I wanted to give back to the community that provided me a substantial amount of knowledge and insight on engineering. I've learned much more than automotive engineering, I learned how to approach open-ended engineering problems objectively and efficiently. Formula SAE taught me teamwork, collaboration and hard work. When I started, everything was new to me and I didn't even know where to start. Thankfully, when I started there were a few experienced members on the team to guide me along. One of the major resources out there was this forum, which I used regularly.
It all started when I was tasked to help select a new engine for the upcoming year. At first we were all a little lost as to how to go about it, some people were saying we need more power, some were saying we need less weight, and some were saying we need a good power-to-weight. No one wanted to upset anyone and discuss generalities, so we decided to search the forums and see how other schools were going about it. This is where I stumbled into Big Bird's thread about, "Reasoning your way through the FSAE design process". This thread was very straight forward and gave a great objective overview of how engineering decisions should be made. At first I wrote a simple VBA program that performed only longitudinal acceleration. Later this program evolved into MatLab code that was developed over the span of 6 months(as time permitted). We used the program quite a bit to solve some comparisons and make some top level decisions.
I registered the website http://www.fsaesim.com with the intent to create open source lap simulation software for teams to use, compare data and make decisions. I know lots of people take pride in doing their own programming, which is great, but in my opinion more minds coming together can create a better product(I am sure that many programs are more sophisticated than this one). We started by first converting my program to Javascript from MatLab. Surprisingly, this wasn't as easy as I thought and I needed to develop quite a few mathematical functions including matrices. I used Sylvester's library for a few things but we included most of his code regardless(His libraries are great for 3D stuff). We've been developing the Javascript code quite a bit and have expanded greatly on what the MatLab code didn't do. Another surprise was that Javascript ran MUCH faster than MatLab.
You can currently grab the Javascript file directly off the page and change it to your liking and send it to me for re-upload. You can also email me and I can re-program parts of the code to make it more accurate or more efficient. I intend to give admin access(website admin control) to 3-5 people who are dedicated to keep the project going and see that it serves the community. I can add more input and output into the code, its just a matter of what you guys want to see.
Again, my goal in all of this is to help the community by providing open source software for anyone to use and learn from. I think it is very important that whoever uses it goes through the description page to at least familiarize themselves with what the program is actually doing and what kind of assumptions it makes. I am not making Forza 5 here so realize that this is specific to FSAE(all of the torque curves are for FSAE Vehicles).
I thank you all for reading this and I hope to continue giving back to the community that taught me so much. There have been a number of people that helped make this happen and it definitely wasn't a solo effort. Feel free to post questions here.
Cheers,
FsaeSpec
10-07-2011, 01:06 PM
Also I want to note that I know there are bugs and limitations in the program. I am trying to learn more with everyone else to make it better.
As more and more people collaborate, it will only get better and better.
Also I am in the process of adding a download link for the framework.js file, but at the moment you can just view source on the simulation page and right click->save. Sometimes when I patch the program it loads up obfuscated but I think I got that bug figured out.
Cheers.
exFSAE
10-07-2011, 01:19 PM
...Mexican tires?
FsaeSpec
10-07-2011, 01:23 PM
Originally posted by exFSAE:
...Mexican tires?
Fixed. I had that callout for random tires I was testing.
Only 4 tires so far, Goodyear 13", Michelin 13", Hoosier 13" small and Hoosier 13" Large
carbon_black
10-07-2011, 09:46 PM
Looking good - the simplicity and speed make it easily accessible to conceptualizing differences between major design concepts.
Originally posted by FsaeSpec:
You can currently grab the Javascript file directly off the page and change it to your liking and send it to me for re-upload. You can also email me and I can re-program parts of the code to make it more accurate or more efficient.
Have you considered putting this on something like github to facilitate collaboration? Also, is your uni cool with you open sourcing this?
exFSAE
10-08-2011, 05:14 AM
Also, as an aside... you will likely find a big speed improvement if you compile your MATLAB code.
FsaeSpec
10-08-2011, 10:51 AM
Originally posted by Pete Ringwood:
Looking good - the simplicity and speed make it easily accessible to conceptualizing differences between major design concepts.
Yep that was the goal, also its available to everyone, as it requires no additional software other than enabling Javascript through your browser(most have this enabled).
Originally posted by Pete Ringwood:
Have you considered putting this on something like github to facilitate collaboration? Also, is your uni cool with you open sourcing this?
Actually early on when we started with the lap sim we wanted to give access to everyone, but it is a little difficult in MatLab. Also, it wasn't near the level that we would feel comfortable for other people to use and get any kind of reasonable results.
Luniz
10-08-2011, 11:57 AM
Just out of curiosity, are the torque curves from the 2008 Hockenheim dyno? I could also provide you with our 2009-2011 curves, the outcome could be quite interesting ;-)
whiltebeitel
10-08-2011, 04:57 PM
Can you put units on all the variables? I assume they are all in inches and lbs, but does the % weight percent mean the rear weight percent? Does the weight include a driver? This is an awesome resource, and it's really nice to see someone put this up. I've been working on a MatLab sim here for a while.
FsaeSpec
10-08-2011, 06:08 PM
Originally posted by whiltebeitel:
Can you put units on all the variables? This is an awesome resource, and it's really nice to see someone put this up. I've been working on a MatLab sim here for a while.
Yep this was on my list. Give me a day to add this in because I'm out of town at the moment. For current reference the following units are used:
Weight: lbs
Wheelbase: inches
Wheel radius: inches(this includes tire)
track width: inches
center of gravity: inches
weight distribution %: This is the percent toward the front so .30 would mean that its a 30/70 car.
Shift RPM: RPM
Final Drive Ratio: Unitless
Most of the calculations are done in feet, so they are converted as necessary.
This is funny since I just finished my matlab at around the same time. My course is also the cali track (somewhat tighter tho), and my laptimes are almost identical to yours. Why are they so high? My sims show about 100-110 seconds around the track, while the actual times are at 60 something. Is the code working properly?
FsaeSpec
10-08-2011, 07:23 PM
Originally posted by ZAMR:
This is funny since I just finished my matlab at around the same time. My course is also the cali track (somewhat tighter tho), and my laptimes are almost identical to yours. Why are they so high? My sims show about 100-110 seconds around the track, while the actual times are at 60 something. Is the code working properly?
I think the code is fine in this regard, its the actual map. What I found when I started using Cal Poly's map(2007 West) is that it is longer than the actual event. To counteract this for the endurance event, I sized the number of laps you do in endurance based on the distance outlined in the rules.
The endurance event, as outlined in the rules is 13.66 miles long. The total distance of the 2007 track map was analyzed at 1.097 miles. To achieve the 13.66 mile long endurance track, it is estimated that there are 12.499 laps that the program must simulate. The total endurance time is recorded as:
Total Endurance Time=Lap Time*12.449
I'm getting within 5% of the endurance time recorded at FSAE West 2007 with this approach.
Next week I'll incorporate FSAE West 2011 which is under the track map link. Hopefully this will fix the Autocross Lap time in the process.
Do you mind sending me the course component breakdown when you get around to the 2011 map? I'd like to cross check my sim with yours. My email is on my profile. In the meantime I'll try to remap my course. I know this forum isn't for handouts...
Lorenzo Pessa
10-10-2011, 11:49 AM
I appreciate this kind of FSAE a lot!
cvargas
10-10-2011, 03:21 PM
This is freaking awesome!
FsaeSpec
10-10-2011, 04:56 PM
Originally posted by whiltebeitel:
Can you put units on all the variables? I assume they are all in inches and lbs, but does the % weight percent mean the rear weight percent? Does the weight include a driver? This is an awesome resource, and it's really nice to see someone put this up. I've been working on a MatLab sim here for a while.
I updated the site to show the units for the variables.
The weight includes the driver weight so if your driver is 180lbs and your car is 350lbs, what you put into the vehicle weight will be 530lbs.
I also uploaded the main javascript file to the download page as well as the track map. I'll upload the outdated version of the MatLab file if anyone cares to use it but I will note that it is considerably behind the Javascript. By that I mean that I fixed alot of bugs present in the MatLab file as well as added lots of other variables/features. I'll be uploading alot more to the download page in the next week as well.
Cheers
FsaeSpec
10-11-2011, 01:13 PM
Originally posted by ZAMR:
Do you mind sending me the course component breakdown when you get around to the 2011 map? I'd like to cross check my sim with yours. My email is on my profile. In the meantime I'll try to remap my course. I know this forum isn't for handouts...
I just finished coding and updating the site to reflect the 2011 West Map. Surprisingly I got better results than even I had anticipated. Check it out,
http://www.fsaesim.com/simulation.html
Now the autocross time is in the ballpark, recording about 75 seconds using typical FSAE vehicle parameters. The endurance time is about 1496 seconds. Looking at both of those times and the results from the competition, they both rank about 10th in their respective events, which makes sense.
The number of laps is now 20 so that I am consistent with the rules.
The download page has the track map in Solidworks, PDF, AutoCAD and an Excel spreadsheet covering each straight section and the number of corners/arc length that follow.
http://www.fsaesim.com/documentation.html
Cheers.
This is awesome, and I say thanks!
One thing I have a question on is the acceleration time. I input approximate data from out 2010 car and the acceleration time is no where close. Does this take into account being able to launch at X RPM or does it rev up from 0?
FsaeSpec
10-11-2011, 03:06 PM
Originally posted by Dash:
This is awesome, and I say thanks!
One thing I have a question on is the acceleration time. I input approximate data from out 2010 car and the acceleration time is no where close. Does this take into account being able to launch at X RPM or does it rev up from 0?
Yea this was next on the list to look over.
It doesnt launch at X RPM nor does it rev up from 0. Its done like this
For the first 0.5 seconds, the weight on the tire is figured, followed by the instantaneous coefficient of friction of the tire from the tire data. That corresponding calculation is used to find the acceleration of the car. Every 0.01 seconds, the weight transfer, weight on the tire, and instantaneous coefficient of friction are recalculated to a find the new longitudinal acceleration. The launch distance (distance traveled in 0.5 seconds and final velocity are recorded) is used in calculation.
After 0.5 seconds, while below 15 mph, the instantaneous torque is calculated based on current engine rpm and linear interpolation on the engine torque curve. This provides the torque that is used in the longitudinal acceleration of the vehicle. The downforce is then used to find added weight on the tires based on the vehicle speed. Tire rolling resistance is found using equations from Gillespie, and the total weight on the tires is the downforce plus the vehicle weight. Drag force is calculated using density of air, vehicle velocity, coefficient of drag, frontal area, the downforce, and the lift/drag coefficient.
Once the car reaches 15mph, longitudinal acceleration will operate just the same way it does for the rest of the program up to 246.06feet(distance of the Acceleration event).
I want to put in launching at X RPM but I first have to look at a few things in the Vehicle Dynamics book. If you have any tips on how you think this should be done, feel free to post here or email me.
Cheers.
FsaeSpec
01-22-2012, 03:56 PM
bump
peterPan
02-04-2012, 09:43 AM
Can you please explain, how you figure out the speed to which the vehicle breaks at the end of a straight?
I looked through your code, and I think you have something wrong there / or I dont get it.
This is the line:
corneringBrakeTo = corneringVelocity[1 + numberOfCorners[o - 1]];
For understanding:
- Does your circuit start with a straight or a corner?
- How do you handle vehicle velocity within a series of corners? For example you have a long straigth, a large radius corner, small radius corner, large radius corner.
Is the first large turn handled at maximum speed for that corner? Is the last turn handeled a the maximum speed for that radius or at the speed of the small radius corner?
FsaeSpec
02-04-2012, 10:26 AM
Originally posted by peterPan:
Can you please explain, how you figure out the speed to which the vehicle breaks at the end of a straight?
I looked through your code, and I think you have something wrong there / or I dont get it.
This is the line:
corneringBrakeTo = corneringVelocity[1 + numberOfCorners[o - 1]];
For understanding:
- Does your circuit start with a straight or a corner?
- How do you handle vehicle velocity within a series of corners? For example you have a long straigth, a large radius corner, small radius corner, large radius corner.
Is the first large turn handled at maximum speed for that corner? Is the last turn handeled a the maximum speed for that radius or at the speed of the small radius corner?
This part of the code works as intended.
The vehicle never accelerates through the corner or for each successive corner. Each corner is taken at the maximum velocity allowed based on the corner radius and the lateral acceleration allowed by the tires. The maximum lateral acceleration is calculated at the beginning of the code. Each corner is taken independently of every other corner and is always taken at maximum velocity based on radius/tire limits. I'd love to develop this further and allow for corner acceleration/deceleration for successive corners, if you have any good ideas on how to accomplish this, let me know.
The circuit starts with a straight. You have to keep in mind that in JavaScript the first number in the array is [0] followed by the second number which is [1].
The part of the code that you extracted and have a question about is in reference to set the end velocity for the straight section. If this is the first straight in the circuit(followed by a corner), then corneringBrakeTo= maximum velocity of the first corner. If this is the 2nd, 3rd, or 4th straight in the circuit, then the end velocity is related to the corner that follows this straight section.
I programmed it in such a way that that you only brake to the maximum velocity that you can achieve in the corner, not to 0 mph.
The very first straight in the circuit is the short section you see after the start line(follows a corner). It really doesn't matte where you start for program's sake, but if you were trying to follow the code line by line, this is where it starts.
Cheers
whiltebeitel
02-04-2012, 12:40 PM
To complicate things further, you could first calculate all your maximum velocities at each corner, then do the acceleration/braking as you currently do. If the code had a mismatch between corner speed and speed at the end of the straight, then it could iterate speed from the straight along the turn, treating it like another straight with a minimum lateral acceleration, iterating to a maximum allowable longitudinal acceleration until it reaches 0 longitudinal G's.
You could apply this to everything and get rid of the Turn/Straight splitting of the track, each step given a radius. It would be a very solid bit of coding to get it to reconcile the steps forwards and backwards with all the iteration, but you could get reasonable results with increasing and decreasing radius turns.
I'm still using a Straight/Turn program, and if you don't pay attention to the way the turns are set up relative to the model car's capabilities, you can get some silly results. Easy to catch with a velocity trace, though.
FsaeSpec
02-19-2012, 07:56 PM
Originally posted by whiltebeitel:
To complicate things further, you could first calculate all your maximum velocities at each corner, then do the acceleration/braking as you currently do. If the code had a mismatch between corner speed and speed at the end of the straight, then it could iterate speed from the straight along the turn, treating it like another straight with a minimum lateral acceleration, iterating to a maximum allowable longitudinal acceleration until it reaches 0 longitudinal G's.
You could apply this to everything and get rid of the Turn/Straight splitting of the track, each step given a radius. It would be a very solid bit of coding to get it to reconcile the steps forwards and backwards with all the iteration, but you could get reasonable results with increasing and decreasing radius turns.
I'm still using a Straight/Turn program, and if you don't pay attention to the way the turns are set up relative to the model car's capabilities, you can get some silly results. Easy to catch with a velocity trace, though.
I'm going to incorporate something like this in the next version. I am planning on learning ASP.net and so this program will be a good starting point for that.
Instead of doing all of the calculations client side, ASP.net will allow me to do them server side and improve performance, especially with tablets and smart phones.
Cheers
T. Neff
02-20-2012, 04:24 PM
Hey there Spec, I must have missed this thread when it was initially posted. I am very impressed that you are willing to share this type of simulation with other teams, makes me feel all warm and fuzzy inside, haha.
I was looking through the simulation inputs on the website (havent DL'd yet) and I have a few questions.
What is the assumed fuel type, and are you thinking of adding in a choice? Also, the aerodynamic load calculation, I see that it is applied to each tire equally. Would it be difficult to apply an aerodynamic balance that changes with longitudinal speed to the calculation? Even a linear speed to balance relationship would probably be useful.
Tyler
FsaeSpec
03-12-2012, 11:54 AM
Originally posted by T. Neff:
Hey there Spec, I must have missed this thread when it was initially posted. I am very impressed that you are willing to share this type of simulation with other teams, makes me feel all warm and fuzzy inside, haha.
I was looking through the simulation inputs on the website (havent DL'd yet) and I have a few questions.
What is the assumed fuel type, and are you thinking of adding in a choice? Also, the aerodynamic load calculation, I see that it is applied to each tire equally. Would it be difficult to apply an aerodynamic balance that changes with longitudinal speed to the calculation? Even a linear speed to balance relationship would probably be useful.
Tyler
The assumed fuel type doesn't necessarily matter(at the moment) because I manually input a BSFC of 0.41 lb/hp*h. Wikipedia shows the average value to be between 0.45 and 0.37, so I took the mean value. I definitely want to revisit this later and possibly add 91, 100 and E85. At the moment I am more focused on adding in suspension effects.
The aerodynamics I want to revisit as well and honestly it is VERY easy to implement a relationship between speed and aerodynamic drag and downforce. At the moment, I do not quite know what that relationship is. I played around with ANSYS Fluent a few months back but nothing conclusive came of it. I will revisit this in the near future as well.
Cheers Tyler! PS: If you like the site, give it a +1 at the bottom of the page.
EPMPaul
03-12-2012, 02:50 PM
The aerodynamics I want to revisit as well and honestly it is VERY easy to implement a relationship between speed and aerodynamic drag and downforce. At the moment, I do not quite know what that relationship is. I played around with ANSYS Fluent a few months back but nothing conclusive came of it. I will revisit this in the near future as well.
Why not just add a Cd Cl an estimated frontal area(about 1.35 m^2 for most cars) and an aero distribution. This modeling isn't great but it'll give you an idea. On top of that it's just a few coefficients and you can get estimates( Cl ~ -2.3 Cd ~ 1.5) from a few papers for actual simulation purposes(Monash or Hillclimb cars, just as long as your Reynolds number is in the right ballpark).
FsaeSpec
03-12-2012, 03:30 PM
Originally posted by EPMPaul:
<BLOCKQUOTE class="ip-ubbcode-quote"><div class="ip-ubbcode-quote-title">quote:</div><div class="ip-ubbcode-quote-content">
The aerodynamics I want to revisit as well and honestly it is VERY easy to implement a relationship between speed and aerodynamic drag and downforce. At the moment, I do not quite know what that relationship is. I played around with ANSYS Fluent a few months back but nothing conclusive came of it. I will revisit this in the near future as well.
Why not just add a Cd Cl an estimated frontal area(about 1.35 m^2 for most cars) and an aero distribution. This modeling isn't great but it'll give you an idea. On top of that it's just a few coefficients and you can get estimates( Cl ~ -2.3 Cd ~ 1.5) from a few papers for actual simulation purposes(Monash or Hillclimb cars, just as long as your Reynolds number is in the right ballpark). </div></BLOCKQUOTE>
I am doing something very similar to that at the moment.
The aerodynamics are calculated based on your input of the downforce at 40mph and the lift/drag coefficient.
Depending on the downforce you input, the program uses this value to come up with a quadratic function(constant*v^2) so you can get a relationship between the aerodynamic downforce and the vehicle velocity.
The lift/drag coefficient is tied to your overall drag force on the vehicle, which is
outputDrag = 0.5 * rho * (Math.pow(velocity, 2)) * coefficientOfDrag * frontalArea + downforce * liftCoefficient;
Math.pow(velocity,2) = v^2
rho is your air density
frontalArea = hard programmed at 9.24 ft^2(I measured the frontal area of our car, looks about half of what you gave).
Now where you actually benefit from downforce is
weightOnTire = (vehicleWeight * bLength) / (bLength + cLength - hcg * instantaneousLongitudinalAcceleration / g);
weightOnTire = weightOnTire + instantaneousDownforce / 2;
instantaneousCoefficientOfFriction = frictionCalculation(weightOnTire, tireChoice);
There are a few other locations where the downforce is incorporated but I'll let you look through the code first. I really would like to see the relationship between the velocity and downforce on a typical FSAE car with a standard aero package.
ed_pratt
03-20-2012, 05:21 AM
Have you looked at using tractive effort curves for the vehicle acceleration?
I've split my lapsim into a bunch of separate modules to allow easy modification for future years.
I'm just working through the engine one at the moment and it seems like a good idea (currently!) to use the available tractive effort rather than a velocity factor. This should mean you could also launch at a given rpm as the torque available through that gear at that specific time is pretty straightforward to calculate.
Does this sound sensible or am I getting WAY too deep for a first bash?
Ed
Scott Wordley
03-20-2012, 06:50 AM
Our tunnel testing shows a relatively constant v2 relationship between speed and aero forces, but it depends on how rigid your aero components are and also if they are sprung or unsprung(we are unsprung).
If your wings are light and flexible your aero forces will generally soften with speed (below the v2) curve.
Perhaps not such a bad thing?
If your aero is sprung, and your suspension has some ride travel (ie not super stuff) and you rely on a lot ground effect from front wings and diffusers I would imagine you can get a fair bit of non v2 variation with
speed.
One of the sprung aero teams could probably give u an estimate of speed versus shock positions/ downforce. But for the purposes of this sim I think a v2 relationship is a pretty solid starting assumption.
If you are going to have aero coefficient inputs CL.A and CD.A are more useful than the pure coefficients, as measuring frontal area us annoying and it changes a lot with wing settings. Best not to bother separating it out unless you want to publish papers.
You might also be interested to know that some teams are getting up to CL.As of around 5 or even more these days. Insane.
Another feature to add to the wish list is a drs setting and associated logic. You would need inputs for the drs aero numbers plus some way of determining when it is activated and also the lag between settings. Just a thought.
T. Neff
03-22-2012, 06:42 PM
Hey Spec,
sounds good! I also seem to have found an issue; every time i try to set a shift RPM over 10000, it resets everything. just an fyi.
Tyler
FsaeSpec
03-22-2012, 07:46 PM
Originally posted by T. Neff:
Hey Spec,
sounds good! I also seem to have found an issue; every time i try to set a shift RPM over 10000, it resets everything. just an fyi.
Tyler
Tyler,
Thanks for the heads up!
I'll post back here as soon as I fix that(today'ish). Its happening because the shift RPM is higher than the torque curve RPM maximum.
I'll add a limit so that if you type in a shift RPM higher than the maximum from the torque curve then the shift RPM will be the maximum.
Cheers,
EDIT: Fixed this part of the code with the above solution.
Added a few lines
if (shiftRpm > rpm[rpm.length - 1]) {
shiftRpm = rpm[rpm.length - 1];
}
rpm.length = JavaScript code to determine the length of the array. So if the rpm[] array has 127 elements then the last element in the rpm[] array would be rpm[126] because its a base zero code(meaning that rpm[0] is the first number in the array).
The rest of the code should be straight forward. Let me know if you guys any questions!
I updated the site just now, seems to be working fine!
FsaeSpec
03-23-2012, 12:07 AM
Also make sure to refresh the simulation page otherwise it wont use the updated code.
Cheers.
FsaeSpec
03-23-2012, 12:28 AM
Originally posted by ed_pratt:
Have you looked at using tractive effort curves for the vehicle acceleration?
I've split my lapsim into a bunch of separate modules to allow easy modification for future years.
I'm just working through the engine one at the moment and it seems like a good idea (currently!) to use the available tractive effort rather than a velocity factor. This should mean you could also launch at a given rpm as the torque available through that gear at that specific time is pretty straightforward to calculate.
Does this sound sensible or am I getting WAY too deep for a first bash?
Ed
Just as a heads-up to everyone. I read everyone's post in the thread and I try to analyze it before giving a reply. Some things are great ideas and I am in the process of implementing them so do not think I ignore anyone.
Now on to tractive effort:
Tractive effort is already implemented, just not in the sense that it is replacing the velocity factors.
As the vehicle accelerates(longitudinal) in the simulation, the instantaneous acceleration is based on the engine output and the maximum tractive force. The maximum tractive force is equal to the instantaneous coefficient of friction multiplied by the current weight on the rear tires. The current weight on the rear tires is based on the instantaneous longitudinal coefficient of friction just prior to this iteration.
The program looks to see if the current longitudinal acceleration produced by the engine exceeds the current maximum tractive force. If the engine output is higher than the maximum tractive force at that instant, then the longitudinal acceleration is based on the maximum tractive force.
There is also time counter in the program that keeps track of how long the vehicle was traction limited.
The way that launching is setup is in such a way that the vehicle launches and accelerates at the traction limits of the tire(no wheelspin). I can have a setting to launch at a certain RPM, but then if you exceed the traction limits, what is your acceleration?
ed_pratt
03-24-2012, 05:49 AM
ok, that makes sense.
what I've been doing is pretty much the same - I obviously hadn't understood the the code in your JS file!
What I've been wondering about for a while now though, is how do we decide the rate of change of rpm in these sims?
What I understand from your sim is that we assume the engine can just instantly produce some output?
is this output is found by the maximum accel possible as a result of the rpm incrementation loop?
Then how do we decide how quickly the engine can accelerate to a given rpm?
I'm getting myself really confused about how we can find the correct rate of change of engine speed.
Tilman
03-30-2012, 06:25 AM
Heyho,
nice one! I really appreciate sharing your code. Perhaps I am doing some suspension geometry kinematics simulation program for our team, and perhaps I will share it, too.
The first question that came into my mind was: Which license do you use? There is not even a notice who has written the code in the source file(s)! Better choose a license, otherwise anybody can "steal" that code ...
Silente
08-13-2012, 04:43 AM
Hi,
very interesting work and very useful tool for all Fsae teams around the world.
I have a question about your autocross or endurance part of the code: when looking for the maximum corner speed you donīt calculate any yaw moment equilibrium, right? you just sum the forces of the four tires and divide them to the mass of the car to get a maximum lateral accelerations (iterating untill a solution cannot be found anymore)?
Thanks and again congratulations for your intiative!
FsaeSpec
08-15-2012, 07:36 PM
Originally posted by Tilman:
The first question that came into my mind was: Which license do you use? There is not even a notice who has written the code in the source file(s)! Better choose a license, otherwise anybody can "steal" that code ...
I wrote the code solely, but I couldn't do it without the help of another team member that gave a lot of technical input on how we should model it. I'm not interested in licensing the code because of the way it is presented. There has been a good number of suggestions that I've implemented from various people on this forum and other FSAE teams.
You can steal my code, but you would have to implement it on a webpage due to the simple nature of javascript. Write your own page if you want, but then why not just use www.fsaesim.com? (http://www.fsaesim.com?)
You can also rewrite the code in VBA or MatLAB but that will take a lot of time and effort because each of those languages have a different way of assigning variables to arrays. In the end, I would not mind because in rewriting the code, you will learn a lot!
I've learned quite a bit through writing this and I would hope that someone could get benefit and learn in the process as well. FormulaSAE, to me, is an educational program and should have more open dialog and discussion for learning sake.
I can still respect teams that want to be secretive and keep the knowledge within their own team. Its a competition after all!
FsaeSpec
11-25-2012, 04:25 PM
Hey guys sorry I've been a little MIA with moving/work but I intend to reply back to all the PM's this week.
I'm going to start working on this as a side hobby for the next 6 months, hopefully in time for Michigan. I'll try and validate some of the results at Michigan.
Cheers and good luck with the build guys!
Powered by vBulletin® Version 4.1.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.