Hi everybody!

Once again, a very long time after my last post here, but, as I mentioned last time, with this article I would like to discuss something I find very interesting and that could be useful for all the people involved with vehicle modeling and, in particular, with tire modeling.

As discussed in my previous article, one of the first steps whenever working on a vehicle model is to check/validate/build a tire model that ensures a reasonable and realistic performance envelope for your virtual car. If this is in my humble opinion absolutely necessary for every kind of vehicle dynamics simulation (because of the very strong influence that tires have on car performance and behavior), it is even a more important step for a driving simulation, where the tire model is not only directly and strongly influencing model’s performance, balance and behavior but also driver feeling and, as a consequence, how useful the complete simulation process is: if the driver “feels” the car is behaving closely to the real one, he will (hopefully) drive the model in a similar way to how he would drive the real vehicle, producing as a consequence more realistic and useful results.

As we have already seen, unfortunately tire data are sometimes unavailable and, in any case, need to be carefully checked and validated to avoid building up a car model with a totally unrealistic performance envelope, compared to the real counterpart.

But what to do if you don’t have accurate tire data or if you need to double check what you have?

I have already described the procedure I use to initially validate the tire data I have (together with a reasonable and accurate amount of vehicle data), in order to come to the first “virtual track test” with a vehicle that behaves already closely to the real one, both in terms of overall performance and balance.

Anyway, I also developed a small excel tool to build up a tire model (or at least a model able to output the tire cornering force) starting only from Logged data and from the (best) assumption we could make for all the most important vehicle features, such as:

- Aeromap, or at least a good estimation of downforce
- CG position in x, y and z direction
- Track(s) width
- Total Lateral Load Transfer distribution

Beside all these data, what we will also need is **track logged data from a good lap**, ideally performed with new tires, from a driver that is able to go (reasonably) close to car and tires limit and on a track with at least a (very) slow corner and a (very) fast corner (in order to evaluate both a high and a low downforce condition or, in other words, to analyze both a case with high vertical forces acting on the tires and a case with low ones).

The only drawback of this procedure regards car with low or no downforce; in this case it could lead to a more approximated model, due to the lower vertical load variation at high and low speeds. Anyway, we are still talking about a process to come up to the first figures of a decent tire model and not to a precise and super detailed set of tire data.

The idea about this study came into my mind reading an article from Danny Nowlan, the developer of ChassisSim, a professional laptime simulation software used by many motorsport teams. Anyway, there are some points in his article that I don’t agree with, so I tried to develop a simple tool on my own to come up to something that could close the gaps where I felt his approach was not in line with my needs/idea.

With this, I don’t want in any way to say that Danny Nowlan is wrong, that his article is not valid or that ChassisSim tire model doesn’t work. He is certainly a more experienced and more prepared Engineer than me and he has a huge experience about simulation and modeling; I would probably need a couple of lives to come to something close to his skills and knoledge on my own. And, as I said, in any case i decided to build this simple tool after reading his article.Moreover, his articles present sometimes very interesting topics and useful hints, above all about vehicle modeling in cases where not too many data are available, although sometimes they look a bit too much as an advertise for his own software.But, since there are not so many people talking about vehicle dynamics, simulation and vehicle modeling, I think we can live with it.Nonetheless, I like to take everything critically and try to prove myself either something work or not. And I have to say I sometimes very humbly disagree with some of the things he writes.

The basic concept behind this study (and Danny Nowlan’s article) is the assumption that Tire Load Sensitivity (here thought as the relationship between tire coefficient of friction at tire limit and vertical load) can be represented as a linear function of vertical Load or, alternatively, that tire forces (at tire performance limit) can be described as a parabolic function of vertical Load.

This is (as usual, I am not inventing anything new here) the assumption behind the world reference for tire modeling, namely Pacejka Magic Formula and, in my small experience, this is an approximation that works reasonably well also with real tire data, at least when they are properly measured (up to the Slip Angle/Slip Ratio value where the tire produces its maximum force for a certain vertical load).

The idea at the base of such a tire model is that, starting from a certain tire slip curve (Tire Force vs Slip Angle) that could eventually also change in shape for different vertical loads, we can try to identify how the maximum grip level evolves with vertical load through an equation with the following form:

µ_{(x or y) }= a + F_{z} b

or, alternatively:

F_{(x or y) }= (a + F_{z} b) F_{z}

As I said, we are here obviously referring to the peak tire force at each load, so the point identified by the following picture:

All what we are going to see from now on will refers to the cornering forces only (F_{y}). Anyway, the results will help to have an idea at least about the friction ellipse dimensions at various loads. To be honest, it is often pretty wrong to assume that these ellipse have the same radii in x and y direction, for a certain load. Sometimes, load sensitivity itself is very different in x and y direction. But working with cornering forces is, in general, much easier and led to smaller errors.

Now, since for the time being I am using all of this work mainly to model something reasonably close to reality in a driving simulation environment, (in my case rFactor), it is probably worth to take a look at how rFactor depicts tire load sensitivity and to how, in general, rFactor tire model works (although I already said something about it in my previous posts).

The structure of rFactor tire model allows to depict both the vertical “spring” behavior of your tires (rims have also their own stiffness and damping) and lateral forces in a pretty flexible way. Tire’s vertical spring rate depends linearly on Tire pressure; a centrifugal expansion is also represented, with the latter depending on speed squared.This allows to model tire radius variation with speed and load in a reasonably precise way, above all the maximal speed and loads, granting normally a pretty good matching between real speed/rpm and simulated ones.

Cornering and braking forces modeling rely instead mainly on a twofold scheme: on one side, you have Tire load sensitivity, which mainly defines how the maximal tire forces depend on load (rFactor allows to model in a very flexible way, with the chance to also define non linear dependency between µ and Load); on the other side, you have the slip curves (Force vs Slip Angle and Force vs Slip Ratio), which could change their shape with load (to reproduce, for example, how the Slip Angle value at curve peaks evolves when Vertical Load changes).Camber effects are normally added on top in a very elegant way, I have to say, allowing to depict how camber increase lateral grip and decrease longitudinal one, still also allowing somehow to reproduce how these effects are bigger at low slip angles and smaller at forces peak, actually modifying slip curves in a very similar way to what happens in reality, based on data.

Beside all of these, there are some “correction coefficients” that moves normally between something bigger than 0 and 1, to define the effect on final tire performances of other parameters like tire temperatures, tire pressure, eventually speed etc.

Although rFactor allows a non linear load sensitivity curve to be used (as we have seen here above), I normally use the provided coefficients to create a linear curve for both Longitudinal and Lateral tire friction coefficient, mainly because this is what you normally get out of a Pacejka data set. And this is, as I said, one of the basics we assume for this study.

What we are going to do here is pick from the on track data **two corners** (as described, we want to ideally study a very fast and a very slow corner), logging the speed values and the lateral acceleration values in a point where, at least locally, longitudinal acceleration is as close as possible to 0 and lateral acceleration itself stays (relatively) constant (ideally with the driver applying less or no throttle). These conditions are very difficult to happen, above all simultaneously, but still to have them would make the results more realistic.

Assuming we have the above mentioned information about our car, namely:

- Aeromap, or at least a good estimation of downforce for the vehicle configuration in use
- CG position in x, y and z direction
- Track(s) width
- Total Lateral Load Transfer distribution

we should be able to estimate vertical loads pretty precisely:

*Tire Final Vertical Load = Static Load + Downforce +/- Weight Transfer*

It would be of course ideal to have a car equipped with Strain Gauges to measure the vertical loads acting on the sprung mass at each corner: if this is the case, we don’t need to rely on (approximated) calculation to estimate vertical loads acting on the tires, thus eliminating some sources of mistakes (like the effects of steering geometry, bumps, road camber and inclination, air density, etc).

Anyway, also in cases where you are not able to measure vertical loads on track (so in most cases, in my experience), you can still accept the approximation of using the data you have or you have measured, eventually also through on track tests.Good calibrated suspension position sensors, a long straight, some testing time and some constant speed and coastdown tests could help to get at least an idea about your downforce and your drag and to put down an approximated aeromap of your car (once you know suspension motion ratios and spring rates). It’s not easy, above all if the team manager is somehow reluctant in doing such tests, but it is possible.These situations have been covered very well in Danny Nowlan’s articles and, although sometimes the way he presents how to measure these data make the whole procedure looking a bit too easy (in reality, measuring and analyzing data in a proper way is not something that could be done too lightly), all the hints that he gives are, in my humble opinion, absolutely right and very useful.As I said, collecting these infos is not that straightforward, it requires to carefully pick up the values to be used and, possibly, to repeat the same measurement several times, averaging then the results; but it is still sometimes the only way.

We have come now somehow to know the vertical loads acting on our four tires in a certain cornering situations (vehicle speed **V**, lateral acceleration **Ay**). We will assume here that our chosen conditions are limit handling situations and, to simplify, that all the tires are at their limit at the same time: this is of course not true and can be, in all honesty, a pretty significant approximation. Anyway, at the end of the process, we can double check our data and refine our tire model both from a slip curve shape and a load sensitivity perspective (also using the approach I presented in my previous post, but eventually with a simplified tire model; key will be to compare the simulated steering angle with the real one).

Summing all up, we are actually assuming:

- Steady State cornering condition (pure lateral, no longitudinal tire forces acting, net Yaw Moment equal to 0)
- Both axles tires at the limit at the same time
- Camber effects are ignored
- Steering geometry effects are ignored (in case you are calculating your vertical loads)
- Same tires right and left (but different ones front to rear)
- Tires Self-Aligning torque is ignored

Beside them, we will have already picked up two cornering situations, each one described here by an **Ay** and a **V** value. Using V we will be able to estimate the downforce acting on each axle and, assuming it is equally shared between the two wheels, we can then use this info to calculate each wheel’s final load.

Once we have the four vertical loads, we can use them to calculate the Fy (cornering Force) that each wheel produces basing on the mentioned assumptions:

**Front Axle**:

1^{st} Corner Data (*):

F_{y-front*} = F_{y1* }+ F_{y2*} = µ_{1*}F_{z1* }+ µ_{2*}F_{z2*} = (a_{f} + F_{z1*}b_{f})F_{z1*} + (a_{f} + F_{z2*}b_{f})F_{z2*} = m_{f}Ay_{*}

2^{nd} Corner Data (#):

F_{y-front#} = F_{y1# }+ F_{y2#} = µ_{1#}F_{z1# }+ µ_{2#}F_{z2#} = (a_{f} + F_{z1#}b_{f})F_{z1#} + (a_{f} + F_{z2#}b_{f})F_{z2#} = m_{f}Ay_{#}

**Rear Axle**:

1^{st} Corner Data (*):

F_{y-rear*} = F_{y3* }+ F_{y4*} = µ_{3*}F_{z3* }+ µ_{4*}F_{z4*} = (a_{r} + F_{z3*}b_{r})F_{z3*} + (a_{r} + F_{z4*}b_{r})F_{z4*} = m_{r}Ay_{*}

2^{nd} Corner Data (#):

F_{y-rear#} = F_{y3# }+ F_{y4#} = µ_{3#}F_{z3# }+ µ_{4#}F_{z4#} = (a_{r} + F_{z3#}b_{r})F_{z3#} + (a_{r} + F_{z4#}b_{r})F_{z4#} = m_{r}Ay_{#}

Where:

F_{y-front} = Front axle cornering Force

F_{y-rear} = Rear axle cornering Force

F_{y1,2} = Cornering Force produced by front Tires

F_{y3,4} = Cornering Force produced by rear Tires

F_{z1,4} = Vertical Forces acting on each of the 4 Tires

µ_{1,4} = Lateral Friction coefficient of each of the 4 Tires

m_{f} = Total vehicle Mass * front weight distribution

m_{r} = Total vehicle Mass * rear weight distribution

a = tire friction coefficient at 0 N vertical load

b = tire load sensitivity in y direction

We have thus a set of two equations in two unknowns for each axle, with the unknowns being **a** and **b**. Solving for them, you can derive a µ curve and a F_{y} one, both depending on Fz; they will look more or less like the two plots shown here (we always have Load on the x axis and µ on the y axis for the first graph, while in the second one we have Fy on the y axis):

Easy, isn’t it?

As I said, this process is of course approximated, starting from the data measurement or the load calculation, up to the several approximations that we are forced to do.

Anyway it offers a relatively easy way to build up the base structure of a tire model (at least something usable in a driving simulation environment, like rFactor; but, as far as I understood from Danny Nowlan’s article, ChassisSim allows to use a somehow similar modeling approach).One of the approximations considered (and connected here to the modeling itself) is the assumption that all the tires are at the limit at the same time, which is obviously not true. If we can maybe assume that tire saturation is similar left to right (but this is of course still not always 100% precise), it is normally the case that one axle tires approach their limit before the other axle’s ones. In most of the conditions I have seen, normally front tires are sooner much closer to their limit than rear ones, for obvious stability reasons.This means that, with this approach, we are most probably underestimating rear tire cornering potential, so it would make sense to further investigate the problem with a cornering simulation and compare the simulated steering angle with the real ones, trying to obtain something similar. Most probably, you will have to “pump up” rear tires grip a bit.

Just a few words about why this approach is conceptually slightly different from Danny’s one. In his article, where he refers to a GT car for his investigation, he picks up only a cornering condition to extract his data, again taking out the speed and the Ay that the car is carrying in a certain turn.He then suggest to increase this values a bit and to consider a final load on the tires that is around 20% higher of the maximum tire load that you would get carrying the calculations using the vehicle data we mentioned (including the weight transfer occurring at the chosen Ay).Using a formally (but not conceptually) different equation for µ and Fy, he come up to the final load sensitivity and initial friction coefficient using just a cornering point but loads that look a bit arbitrary to me. Moreover, changing the mention loads, your µ and Fy curves changes their shape pretty significantly. And, as a prove, he clearly shows that the first four or five simulations produce wrong cornering speeds, asking for a pretty significant refinement of the coefficients.

With the approach I described (which is still very similar to Danny Nowlan’s one) we formally use more realistic loads straight from the beginning: this means that, if the vehicle parameter that we have are good enough, we should come immediately with a tire model which behaves more closely to the real thing, despite the limitations (see the assumption that all the tires are at the limit at the same time) that we mentioned.

Another excellent read. Greatly appreciate these insights.

By:

Chris Partridgeon December 3, 2014at 10:17 am