PDA

View Full Version : Generating MMM Graphs



monoposto
05-07-2012, 05:20 PM
Hi, long time lurker first time poster. http://fsae.com/groupee_common/emoticons/icon_biggrin.gif

First off I have calculated my Yaw moment (N) and my lateral acceleration (Ay). Using these two values I can generate my 'construction lines' which are essentially the dashed lines in the graphs on page 318 in RCVD. I'm running into an issue on creating my front and rear tire lines however and am beginning to think it is beyond the scope of excel, so am open to using matlab. Although I may need more help using matlab....

So, any help? Any constructive input is very appreciated!
Btw I feel this is more of a programming issue rather than a vehicle dynamics issue.

Pennyman
05-07-2012, 07:11 PM
Well first of all, congrats on getting as far as you did in Excel. I tried what you're going through and I stopped when I realized how large the spreadsheet would end up being.

I'm assuming you're using a bicycle model (although there are ways of incorporating weight transfer into this as well).

My best guess would be to independently calculate N and Ay based on the slip angle of the front and back. You would end up with like...100 different data points if you went 0-10 for the front and back independently.

The problem arises in that the diagram in RCVD is a crosshatch pattern, and Excel will only give you the intersection points of those cross hatches.

Crispy
05-07-2012, 07:30 PM
I'm not sure I completely understand your questions, but the bullet points on pages 305 and 306 go over how to use the two construction lines to identify other parts of the diagram. For example, bullet 3 says if you add the limit points of the two construction lines together you well get the maximum force/moment capability of the vehicle.

You can also go the route Pennyman mentioned by making a full grid of points vehicle slip and steer points. This is a good way to go when you want to start complexing things up with weight transfer and whatnot.

monoposto
05-08-2012, 11:51 AM
Originally posted by Pennyman:
Well first of all, congrats on getting as far as you did in Excel. I tried what you're going through and I stopped when I realized how large the spreadsheet would end up being.

I'm assuming you're using a bicycle model (although there are ways of incorporating weight transfer into this as well).

My best guess would be to independently calculate N and Ay based on the slip angle of the front and back. You would end up with like...100 different data points if you went 0-10 for the front and back independently.

The problem arises in that the diagram in RCVD is a crosshatch pattern, and Excel will only give you the intersection points of those cross hatches.

Yes, exactly. My problem isn't with running the numbers themselves but actually getting the tire limits...

Were you able to get the front and rear lines to work? Will you elaborate a bit more please?

@ Crispy - After reading through on pg 305 I understand what you are getting at.

I am going to try the methods you guys mentioned and see where i get. Ill post back later with results/new questions/problems.

By the way, I really appreciate the help! Wish you could ask a book questions....

woodsy96
05-08-2012, 06:04 PM
I did the same thing - I stopped in Excel as it didn't really allow the functionality of MATLAB

I can't remember exactly, but I think it went something like this:

%Vehicle Parameters
wheelbase
weight distribution
mass
track widths etc
corner radius
etc

beta %body slip angle% = [-5 -4 -3 -2 -1 0 1 2 3 4 5]
delta %front wheels steered angle% = [-5 -4 -3 -2 -1 0 1 2 3 4 5] (or soemthing like that)


%For each beta, do a delta sweep and plot on a graph%
for beta
for delta
work out slip angle on front tyres
work out slip angle on rear tyres
start loopfinsihed = 0
Drive Milliken simplified tyre model
work out A_y
apply A_y to calculate new lateral load transfer
recalculate A_y
if difference in A_y < 2% or something to indicate convergence
loopfinished = 1
end
end

add to array array [N A_y]
end

plot array
hold on (to keep the graph)

%change beta for next sweep
end

%For each delta, do a beta sweep and plot on a graph%
for delta
for beta work out slip angle on front tyres
work out slip angle on rear tyres
start loopfinsihed = 0
Drive Milliken simplified tyre model
work out A_y
apply A_y to calculate new lateral load transfer
recalculate A_y
if difference in A_y < 2% or something to indicate convergence
loopfinished = 1
end
end

add to array array [N A_y]
end

plot array
hold on (to keep the graph)

%change delta for next sweep
end

or somthing like that. I basically made the first section work, then copy/pasted and reversed the beta/delta.

I remember the code was about ~1000 lines in the end, and took a while to get to work properly.

It took a while to run becaue it worked out each line indivually, then plotted each line individually over the graph.

Good luck with it.

Eidt: forums lost tabbed formatting, sorry. Hope it is still clear what I was doing

monoposto
05-09-2012, 02:17 PM
Originally posted by woodsy96:
I did the same thing - I stopped in Excel as it didn't really allow the functionality of MATLAB

I can't remember exactly, but I think it went something like this:

%Vehicle Parameters
wheelbase
weight distribution
mass
track widths etc
corner radius
etc

beta %body slip angle% = [-5 -4 -3 -2 -1 0 1 2 3 4 5]
delta %front wheels steered angle% = [-5 -4 -3 -2 -1 0 1 2 3 4 5] (or soemthing like that)


%For each beta, do a delta sweep and plot on a graph%
for beta
for delta
work out slip angle on front tyres
work out slip angle on rear tyres
start loopfinsihed = 0
Drive Milliken simplified tyre model
work out A_y
apply A_y to calculate new lateral load transfer
recalculate A_y
if difference in A_y < 2% or something to indicate convergence
loopfinished = 1
end
end

add to array array [N A_y]
end

plot array
hold on (to keep the graph)

%change beta for next sweep
end

%For each delta, do a beta sweep and plot on a graph%
for delta
for beta work out slip angle on front tyres
work out slip angle on rear tyres
start loopfinsihed = 0
Drive Milliken simplified tyre model
work out A_y
apply A_y to calculate new lateral load transfer
recalculate A_y
if difference in A_y < 2% or something to indicate convergence
loopfinished = 1
end
end

add to array array [N A_y]
end

plot array
hold on (to keep the graph)

%change delta for next sweep
end

or somthing like that. I basically made the first section work, then copy/pasted and reversed the beta/delta.

I remember the code was about ~1000 lines in the end, and took a while to get to work properly.

It took a while to run becaue it worked out each line indivually, then plotted each line individually over the graph.

Good luck with it.

Eidt: forums lost tabbed formatting, sorry. Hope it is still clear what I was doing

That actually helps quite a bit. I assume this also gave you the front and rear construction lines?

I do have one question for you before I attempt this, but when calculating the slip angles for front and rear tires you are using the relationship "?f=?+?-(((a*r))/Vx" Correct? So, from this it says that ? is equivalent by definition to ?, yet in the graphs they have ? as 0, 10, 15, 20 etc... How do they get this???

coastertrav
05-09-2012, 06:45 PM
I really have nothing hat I can add to this, but bravo, for this is probably one of the best first posts I've seen in years.

monoposto
05-10-2012, 02:40 PM
Well here it is....
The spread sheet.
http://img845.imageshack.us/img845/1143/captureyav.jpg

The graph.
http://img502.imageshack.us/img502/4865/capture1ke.jpg

Not exactly sure what I am doing wrong. I followed RCVD from page 304 to 306 on how they generated figure 8.6 and for some reason can't get it to work. I should add this is my second attempt at generating the MMM graphs using my own values and I've kept it simple by ignoring load transfer and keeping my cornering stiffness both constant. Any help would be greatly appreciated....

Flight909
05-10-2012, 05:04 PM
I find two things that are wrong:

1. It appears that your slip angles aren't zero at zero beta and delta

2. You are not using metric units http://fsae.com/groupee_common/emoticons/icon_wink.gif

woodsy96
05-10-2012, 08:06 PM
Flight909,

I shall correct your first statment (to what I think you intended to say) to "the intersection of the zero beta line and the zero delta line is not at the origin". To which you have then stated "if beta and delta is zero then a_f and a_r are zero" (which is a very bad assumption) and "if the slip angle is zero, the lateral force is zero" (which also isn't a correct assumption.

I suspect he is not using metric units because A) he is from America, Libya or Myanmar, and/or B) he is trying to copy an example from a book written in imperial units (Milliken and Milliken.) (most likely)

So, why is
"if beta and delta are zero, then a_f and a_r are zero" incorrect?

and also, why is

"if the slip angle is zero, the lateral force is zero" incorrect?

woodsy96
05-10-2012, 08:21 PM
If I post the plot below and say it is of a full sweep for Beta = -5:5 and delta = -5:5 (so includes beta = 0 and delta = 0), does that clear it up?

(title removed to hide the answer)

http://i308.photobucket.com/albums/kk323/woodsy96/yawmoment.jpg

Flight909
05-14-2012, 01:37 PM
My answer is: That plot is not -5:5 sweeps...

Am I right?

Pennyman
05-14-2012, 05:40 PM
Monoposto, try this:

Try making a quick and dirty tire force curve to generate your grip values, then based on alpha and beta, calculate the yaw moments (unbalanced moments) and lateral accelerations (balanced forces) for each situation.

Unbalanced moments (N) = (a*force@alpha=x1)-(b*force@beta=x2)
calculate for every x1 and x2 combination.

Balanced forces (Ay) = (force@alpha=x1)+(force@beta=x2)
calculate for every x1 and x2 combination.

http://oi45.tinypic.com/vqtl3n.jpg

Oh also, in reading your response to the original suggestions, it looks like one of the problems is that your calculator has cornering stiffness values but no peak value, which might be why you can't find the grip peak.

woodsy96
05-14-2012, 09:54 PM
@ Pennyman: You can make a crosshatch pattern in excel with the data points you have, by creating a series for each line.

http://i308.photobucket.com/albums/kk323/woodsy96/excelexample.jpg

@ Flight, that is a plot of -5:5 in both directions (although note the different colours are overlayed MMM plots comparing different vehicle paramaters. Made my decision making quite easy!)

Here is an example of the same program run with a significantly different ^%!!$#%!#$%!$% (and probably more what you'd expect from a MMM diagram)

http://i308.photobucket.com/albums/kk323/woodsy96/yawmoment2.jpg

What is different parameter between the two plots?

monoposto
05-17-2012, 01:39 PM
Wow, i've been gone a few days and this is what i return to!!! too cool, props to you guys!

Pennyman - After some trial and error I think we're on the same page with respect to the graphs. But I have been using (cornering stiffness)*slipangle to generate my lateral force. I know this is a quick simplification of the tire curve but in all honesty generating the lateral force vs. SA I do not fully understand.

Woodsy - good stuff, see above http://fsae.com/groupee_common/emoticons/icon_wink.gif

About the tire modelling stuff. Is there anything in milliken about their model or where to get it?

woodsy96
05-17-2012, 06:20 PM
Buy into the tyre testing consortium (FSAE TTC). You get the Milliken tyre models for the tyres and the Pacjeka coefficients from Stackpole Engineering (from memory - apologies if this is incorrect), as well as the raw data.

Crispy
05-17-2012, 08:14 PM
Originally posted by woodsy96:
What is different parameter between the two plots?

First guess would be different yaw velocities.

Edward M. Kasprzak
05-18-2012, 06:02 AM
Originally posted by woodsy96:
Buy into the tyre testing consortium (FSAE TTC). You get the Milliken tyre models for the tyres and the Pacjeka coefficients from Stackpole Engineering (from memory - apologies if this is incorrect), as well as the raw data.

As far as Milliken tire models go, a simplified version of our Nondimensional Tire Model is provided for the Round 1-3 data on the TTC forum. We may produce models for Rounds 4 and 5, depending on how much "volunteer time" we have available.

Flight909
05-18-2012, 09:46 AM
Originally posted by woodsy96:
Buy into the tyre testing consortium (FSAE TTC). You get the Milliken tyre models for the tyres and the Pacjeka coefficients from Stackpole Engineering (from memory - apologies if this is incorrect), as well as the raw data.

We are using OptimumT and it have the add-in which can make a connection to Excel and Matlab, so we can use TTC Round 4 and 5 data in our simulations.

woodsy96
05-21-2012, 07:24 PM
Close - the difference is corner radius.

Following the method in RCVD you can sub out yaw velocity and car velocity and blah blah blah to make it explecit in steered angle and body slip and corner radius.

However, for a car with significant aero you would need to make plots for different corner radii and car velocities.

Edward: I stand corrected. I remember waiting (and hoping) for Millken's ND tyre model after round 4, I didn't realise it (they) wasn't released yet.

Flight909: Sound wicked. I really didn't want to try and build a model myself - I had a load of more important things to do.

monoposto
05-24-2012, 10:39 PM
Well it's been a while, but I've managed to produce my own tire curve from some TTC data!! I'm using pacjeka coef.'s for a Hoosier 20x7 13 in wheel @ 12psi


http://img21.imageshack.us/img21/2945/tirecurve.jpg

I'm quite proud as I wasnt very sure on what sort of direction to take and if I was even doing it correct to begin with. I had a couple errors in the beginning. One of which was very big, as I had cosine instead of sine after my peak value (Dy) term!! http://fsae.com/groupee_common/emoticons/icon_mad.gif

A couple things bother me though. First the curve doesn't pass through the origin, and doesn't exactly hit zero at zero slip angle. This seems wrong because if the wheels aren't producing a slip angle how is there a lateral force?

Second the curve doesn't necessarily have a peak to it and then level off. How come? I feel as though I may have missed something??

Third, I noticed with increase normal load (Fz) the curve becomes linear and all of my lateral forces eventually go off into the 3rd and fourth quadrants of the graph....

In any case, I'm slowly plugging away at this....

Kevin Hayward
05-25-2012, 12:35 AM
This might help on some issues:

The lateral force at zero slip can be due to either camber angle or tyre conicity. The levelling off and the normal load issues can be complicated by the test method and the Pacejka model. In real world situations you see grip in these regions affected by temperature. If all testing is done at a set temperature then you can lose these effects.

You do need to compare the Pacejka curves to the raw data and see how it compares in all regions, and be very wary of extrapolating outside the tested data. Within certain load ranges it is not unexpected to not see only small reductions of fricition with increasing load. You may have a case of not very load dependant tyres. Again look at the raw data to see whether it fits well. This has big implications on how you tune your vehicle.

The Pacejka equations are a way to fit curves to empirical data, and not the only way. There are some really good approaches to tyre modelling that aim to include temperature effects into the model more accurately. They are well worth looking at to find out more about expected tyre behaviour. While on the issue it is worth considering the effect of the rubber sliding velocity. At a higher speed at the same slip angle the rubber will have a higher sliding velocity. If you look at rubber friction tests you see that its friction is dependent on sliding velocity. All this leads to the idea that your curve may only be accurate at one road speed, and one temperature.

You can then take this understanding forward and see how it would alter the MMM Graphs.

Kev

Crispy
05-25-2012, 12:40 AM
I can't say specifically if you have or have not made any mistakes, but it is completely normal for the models (and real tires) to not pass through zero force for zero slip angle. Things like camber thrust, conicity, ply steer (RCVD Chapter 2) can all cause lateral forces without a slip angle. Similarly, sometimes the curves don't peak. Often this is because the tire did not peak in the tested range. This same behavior will show up in the fit as well.

I'm not clear on your third issue. Are you scaling your axes when you increase the vertical load? Usually the curve maintains a similar characteristic "S" shape even when you change vertical loads. Peaks may move and relative slopes may change, but overall they tend to maintain a pretty consistent character within the tested range. Perhaps you are using the wrong units or getting well outside the tested range?

Seems like you are making progress, keep it up.

Also, you should check our the TTC forum if you haven't already. Lots of good stuff there.

DougMilliken
05-25-2012, 07:38 AM
Originally posted by monoposto:
Well it's been a while, but I've managed to produce my own tire curve from some TTC data!!
Always nice to see someone willing to put in the effort to "roll their own"! As noted by others, it's important to expand your model at tested conditions (load, slip angle, etc) and overplot with the original data.

Wearing my TTC hat, I'll just remind everyone that the data license restricts publishing the data on the open internet (such as overplots with test data). One of the big reasons for creating the private TTC forum was to provide a place to post within the terms of the license.

monoposto
05-26-2012, 03:30 PM
Originally posted by Crispy:
I can't say specifically if you have or have not made any mistakes, but it is completely normal for the models (and real tires) to not pass through zero force for zero slip angle. Things like camber thrust, conicity, ply steer (RCVD Chapter 2) can all cause lateral forces without a slip angle. Similarly, sometimes the curves don't peak. Often this is because the tire did not peak in the tested range. This same behavior will show up in the fit as well.

I'm not clear on your third issue. Are you scaling your axes when you increase the vertical load? Usually the curve maintains a similar characteristic "S" shape even when you change vertical loads. Peaks may move and relative slopes may change, but overall they tend to maintain a pretty consistent character within the tested range. Perhaps you are using the wrong units or getting well outside the tested range?

Seems like you are making progress, keep it up.

Also, you should check our the TTC forum if you haven't already. Lots of good stuff there.

I actually took a day off and had a think about all of this. I decided that I should have calculated it to higher slip angles also. Once I did the curve leveled off. (yay!)

Everything you and Kevin have said are making sense though. Conicity and ply steer, are some of the secondary details that one doesn't always remember when going over the math, so I guess it is time to read-up again!

@Doug

It's always nice to get feedback from some of the leaders in the vehicle dynamics field! I had forgotten about the license agreement with the TTC, thank you for reminding me.

JT A.
02-24-2013, 06:39 PM
I hate to dig up this year old thread, but I have a question about the MMM's I've created.

I wrote it such that speed is held constant as an input, and Ay, yaw rate, corner radius are outputs (and are all related by Ay = Vx^2/R and Vx = yaw rate*corner radius)

I just wanted to check if this makes sense- at higher speeds, I have to run it through a bigger range of sideslip angles and steering angles (beta's and delta's) to get it to completely "fill in" the graph. For example, at 20mph I just sweep beta and delta from -5 to 5 degrees, and this is enough to saturate the tires and find the peak Ay. However at 60 mph I have to sweep beta and delta from -7 to 7 degrees.

This seems confusing to me because when driving at higher speeds it takes less steering input to reach a given Ay, compared to lower speeds. Is something wrong with my plots, or is something wrong with my understanding?

Crispy
02-24-2013, 08:24 PM
I think you have it mostly right. The ranges will be different.

This can be attributed to yaw rate. For the same steady state lateral acceleration, yaw rate will be higher at low speeds, and lower at high speeds. Sign conventions get messy so we need to be careful when coding this up, but yaw rate basically adds slip angle to the rear and takes it away from the front. The consequences of this are that at low speeds, less body slip angle is needed to saturate the rear tires, but more steering is needed. Relating this to common experience, at low speeds the vehicle might actually be pointing outside of the circle it is driving on (below the tangent speed) and a lot of steering is needed. At high speeds, yaw rate will be small, and the tire slip angles will be mostly dependent on vehicle slip angle and steer angle.

Hopefully this helps.