# Dynamic Steering

(Removed) Dynamic steering for Ackerman, rack-and-pinion, and parallel steering mechanisms

Libraries:
Vehicle Dynamics Blockset / Steering

## Description

The Dynamic Steering block implements dynamic steering to calculate the wheel angles for Ackerman, rack-and-pinion, and parallel steering mechanisms. The block uses the steering wheel input torque, right wheel torque, and left wheel torque to calculate the wheel angles. The block uses the vehicle coordinate system.

If you select Power assist, you can specify a torque assist lookup table that is a function of the vehicle speed and steering wheel input torque. The block uses the steering wheel input torque and torque assist to calculate the steering dynamics.

To specify the steering type, use the Type parameter.

SettingBlock Implementation

`Ackerman`

Ideal Ackerman steering. Wheel angles have a common turning circle center.

`Rack and pinion`

Ideal rack-and-pinion steering. Gears convert the steering rotation into linear motion.

`Parallel`

Parallel steering. Wheel angles are equal.

To specify the type of data for the steering mechanism, use the Parametrized by parameter.

SettingBlock Implementation

`Constant`

Steering mechanism uses constant parameter data.

`Lookup table`

Steering mechanism implements tables for parameter data.

Use the parameter to specify whether the front or rear axle is steered.

SettingImplementation

Front axle steering

Rear axle steering

### Dynamics

To calculate the steering dynamics, the Dynamic Steering block models the steering wheel, shaft, steering mechanism, hysteresis, and, optionally, power assist.

CalculationEquations

Steering column and steering shaft dynamics

`${J}_{1}{\stackrel{¨}{\theta }}_{1}={\tau }_{in}-{b}_{2}{\stackrel{˙}{\theta }}_{1}-{\tau }_{hys}$`

`${J}_{2}{\stackrel{¨}{\theta }}_{2}={\tau }_{eq}-{b}_{3}{\stackrel{˙}{\theta }}_{2}+{\tau }_{hys}-{\tau }_{fric}$`

Hysteresis spring damper

Optional power assist

`$\begin{array}{l}{\tau }_{ast}={f}_{trq}\left(v,{\tau }_{in}\right)\\ \\ {J}_{1}{\stackrel{¨}{\theta }}_{1}={\tau }_{in}+{\tau }_{ast}-{b}_{2}{\stackrel{˙}{\theta }}_{1}-{\tau }_{hys}\\ {J}_{2}{\stackrel{¨}{\theta }}_{2}={\tau }_{eq}+{\tau }_{ast}-{b}_{3}{\stackrel{˙}{\theta }}_{2}+{\tau }_{hys}-{\tau }_{fric}\end{array}$`

The illustration and equations use these variables.

 J1 Steering wheel inertia J2 Steering mechanism inertia ${\theta }_{1},{\stackrel{˙}{\theta }}_{1},{\stackrel{¨}{\theta }}_{1}$ Steering wheel angle, angular velocity, and angular acceleration, respectively ${\theta }_{2},{\stackrel{˙}{\theta }}_{2},{\stackrel{¨}{\theta }}_{2}$ Shaft angle, angular velocity, and angular acceleration, respectively b1, k1 Hysteresis spring and viscous damping coefficients, respectively b2 Steering wheel viscous damping coefficient b3 Steering mechanism damping coefficient τhys Hysteresis spring damping torque τfric Steering mechanism friction torque τeq Wheel equivalent torque τast Torque assist βu , βl Upper and lower hysteresis modifiers, respectively v Vehicle speed ƒtrq Torque assist lookup table

### Steering Types

Ackermann Steering

For 100% (ideal) Ackermann steering, all wheels follow circular arcs with the same center point.

To calculate the steered wheel angles, the Steering System block uses these equations:

`$\begin{array}{l}\mathrm{cot}\left({\delta }_{L}\right)-\mathrm{cot}\left({\delta }_{R}\right)=\frac{TW}{WB}\\ \\ {\delta }_{Ack}=\frac{{\delta }_{in}}{\gamma }\\ \\ {\delta }_{L}={\mathrm{tan}}^{-1}\left(\frac{WB\mathrm{tan}\left({\delta }_{Ack}\right)}{WB+0.5TW\mathrm{tan}\left({\delta }_{Ack}\right)}\right)\\ {\delta }_{R}={\mathrm{tan}}^{-1}\left(\frac{WB\mathrm{tan}\left({\delta }_{Ack}\right)}{WB-0.5TW\mathrm{tan}\left({\delta }_{Ack}\right)}\right)\end{array}$`

This table defines variables used in the equations:

 δin Pinion angle (steering shaft angle into pinion) δL Left wheel steer angle δR Right wheel steer angle δAck Ackermann steer angle TW Track width WB Wheel base γ Steering ratio: Ratio of pinion angle to Ackermann angle

Rack-and-Pinion

For rack-and-pinion steering, pinion rotation causes linear motion of the rack, which steers the wheels through the tie rods and steering arms.

To calculate the steered wheel angles, the block uses these equations.

`$\begin{array}{l}{l}_{1}=\frac{TW-{l}_{rack}}{2}-\Delta P\\ \\ {l}_{2}{}^{2}={l}_{1}{}^{2}+{D}^{2}\\ \\ \Delta P=r{\delta }_{in}\\ \\ \beta =\frac{\pi }{2}-{\mathrm{tan}}^{-1}\left[\frac{D}{{l}_{1}}\right]-{\mathrm{cos}}^{-1}\left[\frac{{l}_{arm}{}^{2}+{l}_{2}{}^{2}-{l}_{rod}{}^{2}}{2{l}_{arm}{l}_{2}}\right]\end{array}$`

The illustration and equations use these variables.

 δin Pinion angle (steering shaft angle into pinion) δL Left wheel steer angle δR Right wheel steer angle TW Track width r Pinion radius ΔP Linear change in rack position from "straight ahead" position D Longitudinal distance between rack and steered axle lrack Rack length (distance between inner tie-rod ends) larm Steering arm length lrod Tie rod length

Parallel

For parallel steering, the wheel angles are equal.

To calculate the steering angles, the block uses this equation.

`${\delta }_{R}={\delta }_{L}=\frac{{\delta }_{in}}{\gamma }$`

The illustration and equations use these variables.

 δin Steering wheel angle δL Left wheel angle δR Right wheel angle γ Steering ratio

## Ports

### Input

expand all

Torque, τin, in N·m.

Left wheel torque, τL, in N·m.

Right wheel torque, τR, in N·m.

Vehicle speed, v, in m/s.

#### Dependencies

To create a `VehSpd` port, select Power assist.

### Output

expand all

Bus signal contains these block calculations.

SignalDescriptionUnit

`StrgWhlAng`

Steering wheel angle

`StrgWhlSpd`

Steering wheel angular velocity

`ShftAng`

Shaft angle

`ShftSpd`

Shaft angular velocity

`AngLft`

Left wheel angle

`SpdLft`

Left wheel angular velocity

`AngRght`

Right wheel angle

`SpdRght`

Right wheel angular velocity

`TrqAst`

Torque assist

N·m

`PwrAst`

Power assist

W

`PwrLoss`

Power loss

W

`InstStrgRatio`

Instantaneous steering ratio

NA

Left wheel angle, δL, in rad.

Right wheel angle, δR, in rad.

## Parameters

expand all

To specify the steering type, use the Type parameter.

SettingBlock Implementation

`Ackerman`

Ideal Ackerman steering. Wheel angles have a common turning circle center.

`Rack and pinion`

Ideal rack-and-pinion steering. Gears convert the steering rotation into linear motion.

`Parallel`

Parallel steering. Wheel angles are equal.

#### Dependencies

This table summarizes the Type and Parametrized by parameter dependencies.

TypeParameterized ByCreates Parameters

`Ackerman`

`Constant`

Track width, TrckWdth

Wheel base, WhlBase

Steering range, StrgRng

Steering ratio, StrgRatio

`Lookup table`

Track width, TrckWdth

Wheel base, WhlBase

Steering range, StrgRng

Steering angle breakpoints, StrgAngBpts

Steering ratio table, StrgRatioTbl

`Rack and pinion`

`Constant`

Track width, TrckWdth

Steering range, StrgRng

Steering arm length, StrgArmLngth

Rack casing length, RckCsLngth

Tie rod length, TieRodLngth

Distance between front axis and rack, D

`Lookup table`

Track width, TrckWdth

Steering range, StrgRng

Steering angle breakpoints, StrgAngBpts

Steering arm length, StrgArmLngth

Rack casing length, RckCsLngth

Tie rod length, TieRodLngth

Distance between front axis and rack, D

`Parallel``Constant`

Steering range, StrgRng

Steering ratio, StrgRatio

`Lookup table`

Steering range, StrgRng

Steering angle breakpoints, StrgAngBpts

Steering ratio table, StrgRatioTbl

To specify the type of data for the steering mechanism, use the Parametrized by parameter.

SettingBlock Implementation

`Constant`

Steering mechanism uses constant parameter data.

`Lookup table`

Steering mechanism implements tables for parameter data.

#### Dependencies

This table summarizes the Type and Parametrized by parameter dependencies.

TypeParameterized ByCreates Parameters

`Ackerman`

`Constant`

Track width, TrckWdth

Wheel base, WhlBase

Steering range, StrgRng

Steering ratio, StrgRatio

`Lookup table`

Track width, TrckWdth

Wheel base, WhlBase

Steering range, StrgRng

Steering angle breakpoints, StrgAngBpts

Steering ratio table, StrgRatioTbl

`Rack and pinion`

`Constant`

Track width, TrckWdth

Steering range, StrgRng

Steering arm length, StrgArmLngth

Rack casing length, RckCsLngth

Tie rod length, TieRodLngth

Distance between front axis and rack, D

`Lookup table`

Track width, TrckWdth

Steering range, StrgRng

Steering angle breakpoints, StrgAngBpts

Steering arm length, StrgArmLngth

Rack casing length, RckCsLngth

Tie rod length, TieRodLngth

Distance between front axis and rack, D

`Parallel``Constant`

Steering range, StrgRng

Steering ratio, StrgRatio

`Lookup table`

Steering range, StrgRng

Steering angle breakpoints, StrgAngBpts

Steering ratio table, StrgRatioTbl

If you select Power assist, you can specify a torque assist lookup table, ƒtrq, that is a function of the vehicle speed, v, and steering wheel input torque, τin.

`${\tau }_{ast}={f}_{trq}\left(v,{\tau }_{in}\right)$`

The block uses the steering wheel input torque and torque assist to calculate the steering dynamics.

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

Use the parameter to specify whether the front or rear axle is steered.

SettingImplementation

Front axle steering

Rear axle steering

General

Track width, TW, in m.

#### Dependencies

To create this parameter, set Type to `Ackerman` or ```Rack and pinion```.

Wheel base, WB, in m.

#### Dependencies

To create this parameter, set Type to `Ackerman`.

Steering range, in rad. The block limits the wheel angles to remain within the steering range.

Steering ratio, γ, dimensionless.

#### Dependencies

To create this parameter:

• Set Type to `Ackerman` or `Parallel`.

• Set Parametrized by to `Constant`.

#### Dependencies

To create this parameter, set Parametrized by to `Lookup table`.

Steering ratio table, γ, dimensionless.

#### Dependencies

To create this parameter:

• Set Type to `Ackerman` or `Parallel`.

• Set Parametrized by to ```Lookup table```.

Rack-and-Pinion

Steering arm length, larm, in m.

#### Dependencies

To create this parameter, set Type to ```Rack and pinion```.

Rack casing length, lrack, in m.

#### Dependencies

To create this parameter, set Type to ```Rack and pinion```.

Tie rod length, lrod, in m.

#### Dependencies

To create this parameter, set Type to ```Rack and pinion```.

Distance between axis and rack, D, in m.

#### Dependencies

To create this parameter, set Type to ```Rack and pinion```.

#### Dependencies

To create this parameter:

• Set Type to ```Rack and pinion```.

• Set Parametrized by to `Constant`.

Pinion radius table, r, in m.

#### Dependencies

To create this parameter:

• Set Type to ```Rack and pinion```.

• Set Parametrized by to ```Lookup table```.

Dynamics

Steering wheel inertia, J1, in kg*m^2.

Steering mechanism inertia, J2, in kg*m^2.

Upper hysteresis modifier, βu, dimensionless.

Lower hysteresis modifier, βl, dimensionless.

Steering wheel damping, b2, in N·m·s/rad.

Steering mechanism damping, b3, in N·m·s/rad.

Initial steering angle, θ0, in rad.

Initial steering angular velocity, ωo, in rad/s.

Friction torque, τfric, in N·m.

Power Assist

Steering wheel torque breakpoints, in N·m.

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

Vehicle speed breakpoints, in m/s.

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

Assisting torque table, ƒtrq, in N·m.

The torque assist lookup table is a function of the vehicle speed, v, and steering wheel input torque, τin.

`${\tau }_{ast}={f}_{trq}\left(v,{\tau }_{in}\right)$`

The block uses the steering wheel input torque and torque assist to calculate the steering dynamics.

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

Assisting torque limit, in N·m.

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

Assisting power limit, in N·m/s.

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

Assisting torque efficiency, dimensionless.

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

#### Dependencies

Selecting Power assist creates the `VehSpd` input port and these parameters.

Power AssistParameters

`on`

Steering wheel torque breakpoints, TrqBpts

Vehicle speed breakpoints, VehSpdBpts

Assisting torque table, TrqTbl

Assisting torque limit, TrqLmt

Assisting power limit, PwrLmt

Assisting torque efficiency, Eta

Cutoff frequency, omega_c

## References

[1] Crolla, David, David Foster, et al. Encyclopedia of Automotive Engineering. Volume 4, Part 5 (Chassis Systems) and Part 6 (Electrical and Electronic Systems). Chichester, West Sussex, United Kingdom: John Wiley & Sons Ltd, 2015.

[2] Gillespie, Thomas. Fundamentals of Vehicle Dynamics. Warrendale, PA: Society of Automotive Engineers, 1992.

[3] Vehicle Dynamics Standards Committee. Vehicle Dynamics Terminology. SAE J670. Warrendale, PA: Society of Automotive Engineers, 2008.

## Version History

Introduced in R2018a

expand all

### R2024a: Removed

The Dynamic Steering is removed. Use the Steering System block instead.