Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

(non scripting) Turning circle and rolling resistance vs slip

Discussion in 'Physics' started by NDSno1, Dec 24, 2017.

  1. NDSno1

    NDSno1

    Joined:
    Dec 20, 2014
    Posts:
    223
    Hi fellow devs,

    As I'm researching into vehicle physics, there are something regarding real life physics that I still need help:
    1 - When the car is turning in, it is much easier to turn in (ie smaller turning circle) if the driver let off the gas and coast in, compare to powering on the gas while turning in. Going down in lower gear also helps. What causes this phenomenon? I'm guessing it's engine braking and something with the differential but I don't know in detail.
    2- Second is about rolling resistance. From sources that I've found through wikipedia and youtube and khanacademy, the formula is F = CrrN. This is the friction force that holds the wheel on the ground. If the torque from the drivetrain to the wheel is higher than this, the the wheel will start slipping. The formula for this torque is T = (V/omega)*Rr where V is the linear speed of the vehicle and omega is the rotational speed, and Rr is the rolling resistance. Is the rolling resistance constant? If the torque T is less than the rolling resistance, the wheel does not slip, is it guaranteed that all the torque at the drivetrain that drives the wheel is transfered to the contact patch to push the vehicle forward? I have this question while reading about the Pacejka curve on @Edy awesome article about Pacejka and facts about it and still trying to understand the relationship between the slip and the amount of force on the y-axis. Is the force on the graph of Pacejka formula the torque from the drivetrain the drives the wheel?
     
  2. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,421
    1-
    Simplifying the story, the tire can apply a limited amount of force overall (traction). This force must be split among longitudinal and lateral forces. If the tire is heavily sliding as for the throttle then the force is massively deflected longitudinally, so there will be very few force available for compensating the lateral movement. The same happens when braking too strongly.

    For example, that is the principle behind drifting. Drifting is not pressing the throttle to the metal, as many people think. If you do that, you'll likely spin out of control. The key for drift properly is controlling the throttle carefully for reducing the tire's lateral force in a precise amount to perform a controlled lateral slide.

    When the car is turning the effect on the gas depends on the car being FWD or RWD. In any case you need most of the force of the tire to be applied laterally. In FWD cars pressing the gas reduces the lateral force of the front wheels, and the car will tend to go more straight (understeer). In RWD cars, pressing the gas reduces the lateral force in the rear wheels. This might help entering the corner better, but it's easier to loose the control (oversteer).

    Note that the same effect happens if too much engine brake is applied. When letting the gas off the engine produces a brake effect in the wheels. This braking effect also reduces the lateral force available. This is especially noticeable when shifting down gears while braking for entering a curve. Right after shifting down the engine has to raise its RPMs so rapidly than the own's engine inertia can cause a huge braking effect in the wheels. The result here is comparable to braking too strongly and locking the wheels: the result is the lateral force being drastically reduced. This is why many drivers use the "heel-toe" technique: applying a sudden burst of gas to the engine while shifting down for helping the engine to reach the high RPMs of the new gear.

    In the end, you should ensure that the wheels are not receiving drive torque nor brake torque at the point of the curve where you most need the lateral tire force. A simplified summary of taking a curve could be this:

    - First, you brake heavily in a straight line when approaching the curve. This allows the full tire force to be applied longitudinally.
    - Then you gently press throttle while taking the curve just for keeping the speed constant by cancelling the engine brake, allowing the full tire force to be used laterally.
    - When leaving the curve to the point where not so much lateral force is required, you start pressing throttle more for gently deflecting the tire force in the longitudinal direction.

    This article explains it very well:
    http://formula1-dictionary.net/traction_circle.html

    2a-
    I think there are mixed concepts in your description. There are different models and formulas for the rolling friction. Rolling friction happens in all wheels, no matter they're connected to the engine or not. It's the result of the rubber being bent and stretched while rolling over the ground, and this force opposes the longitudinal rolling movement of the wheel.

    The simplest rolling friction model I use in VPP is simply F = cN, where c is a coefficient (typicall betweeb 0.03 and 0.05) and N is the vertical force applied on the tire. Then the force is applied horizontally in the opposite direction of the longitudinal movement. I also implement a more complex model which also includes tire presure, which is described here:

    http://www.engineeringtoolbox.com/rolling-friction-resistance-d_1303.html

    2b-
    The result of the Pacejka curves is a tire force in either longitudinal or lateral direction, depending on the formula used. The lateral and longitudinal results must be combined into a single tire force in a given direction. This force is the traction force as described in the article linked above. The peak points in the Pacejka curves match the outer limit in the traction circle.

    The Beckman's book "The Physics of Racing" describes the relationship among the traction circle and the Pacejka curves with great detail in the chapter 25:

    http://www.phors.locost7.info/phors25.htm
     
    NDSno1 likes this.
  3. NDSno1

    NDSno1

    Joined:
    Dec 20, 2014
    Posts:
    223
    @Edy
    Thanks so much for you in-depth answer. I would like to ask more about rolling resistance.
    - Excluding variable factors like tire pressure, tire temperature, etc, is rolling resistance stays constant/ is a constant?based on the formula above it seems that F=cN, c is constant and only N changes if something happens at the suspension that is acting on the wheel that changes that force pushing the wheel down.
    - Is rolling resistance relate to slip ratio? Say increase/decrease with the change in slip ratio
    - Is rolling resistance a linear force? Once I have this force how do I factor that in the total resistance angular momentum at the wheel side of the clutch that resists the momentum of the engine? From here a little bit on classic mechanical physic, once I know the torque generated at the engine and the resistance momentum of the clutch, how can I calculate the engine velocity in each time step or engine angular acceleration? The 2 formula that I know is Torque = Inertia * Acceleration and Momentum = Inertia * velocity, but I don't know how to apply those into "time step" context (derivatives). I guess I have to look more into calculus.
    - And now the Pacejka curves. The y axis of the curve is force at the contact point(s) of the tire. What is the direction of this force? Is this force the torque from the drivetrain that drives the wheel, factor in tire grip and the result is the actual force from the drivetrain that finally made it to the tire contact point?

    Thank you very much again, and sorry for the wall of text.
     
  4. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,421
    Using that model (F=cN) yes, the rolling resistance stays constant if N doesn't change. Other models increment the force with the velocity.

    The rolling resistance models I know don't change with the slip ratio.

    Good question. It's a linear force in the models. However I think that, from the point of view of the drivetrain, the rolling resistance is indistinguishable from a slightly braked wheel.

    Depends on your model. You may turn the rolling resistance into torque (T = F * r) and include it in your integration, or consider the rolling resistance a slight application of the brakes.

    Momentum is the status and Torque is the derivative. You may simply integrate the momentum with Euler as

    M1 = M0 + T * dt​

    where:

    M0 is the current Momentum
    M1 is the new calculated Momentum (will be M0 in the next step)
    T is the torque applied
    dt is the delta time​

    As the inertia is known, you can calculate the new angular velocity as velocity = M1 / Inertia.

    The opposite direction of the movement of the tire surface with respect to the ground. For example, the longitudinal curve applies the force in a the direction opposite to the longitudinal slip.

    Torque from the drivetrain makes the wheel rotate over the ground causing slip, this slip feeds the curves, which yield a tire force.
     
    NDSno1 likes this.
  5. NDSno1

    NDSno1

    Joined:
    Dec 20, 2014
    Posts:
    223
    @Edy
    Thank so much. Unity forum should have something more than just the like button :)

    So based on your formula, this is what I come up with:
    Wheel side:
    First, get wheel resistance Torque Tresis by multiplying rolling resistance with radius of respective wheel:
    T_resis = wheelHit.Force * coefficient * wheel.radius
    Get wheel inertia from mass and radius of each wheel, then total inertia of all wheels, I_wheel_total
    Then total resistance will be the total Tresis of all wheel T_resis_total
    From total resistance force, find total resistance momentum M_resis_Total by multiplying T_resis_total with deltaTime:
    M_resis_total += T_resis_total * Time.fixedDeltaTime


    Engine side:
    M_engine will be engine drive torque (factored in engineFriction) times deltaTime:
    M_engine += T_engine * Time.fixedDeltaTime

    Putting together:
    The engine drives the crank (its own inertia I_engine), but is resisted by the momentum from the wheel side of the clutch, so the actual momentum M_net at the engine will be the momentum of engine minus the resistance momentum.
    M_net = M_engine - M_resis_total
    Now find the engine velocity wEngine from actual momentum and engine Inertia
    wEngine = Mnet / I_engine.

    However, there are some question I would like to ask about the model I'm having:
    - the net torque at the engine drives the crank ie the engine itself, factored in the resistance. However, what will be the torque that is going to the wheels?
    - should the net torque with resistance factored in of the engine drive the inertia of the engine itself only, or the total inertia of the engine and the wheel side?
    - the above formula is when the clutch is locked, how do I factor in the slip in-between the 2? Or is the above model actually is when the clutch is slipping and I need to implement the locked formula?

    Now a little bit of the Pacejka curve. Is the tire force proportioned to the torque at the drivetrain? Because in my head what I'm thinking is the torque drives the wheel, the tire slip and the torque delivered to the contact point(s) depends on the amount of slip.

    By the way, I just take a closer look at PhysX 3.4 source code and there is actually a model for a Limited Slip Differential. Have you take a look at the model and what do you think about nVidia's implementation?