Main Content

Kinematic Steering

Kinematic steering for Ackerman, rack-and-pinion, and parallel steering mechanisms

  • Library:
  • Vehicle Dynamics Blockset / Steering

  • Kinematic Steering block

Description

The Kinematic Steering block implements a steering model to determine the left and right wheel angles for Ackerman, rack-and-pinion, and parallel steering mechanisms. The block uses the vehicle coordinate system.

To specify the steering type, use the Type parameter.

SettingBlock Implementation

Ackerman

Ideal Ackerman steering, adjusted by percentage Ackerman. 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 Location parameter to specify front or rear steering.

SettingImplementation
Front

Front steering

Figure of front steering turning right

Rear

Rear steering

Figure of rear steering turning right

Steering Types

Ackerman

For ideal Ackerman steering, the wheel angles have a common turning circle.

Figure of Ackerman steering turning right around turning circle

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

cot(δL)cot(δR)=TWWBδAck=δinγδL=tan1(WBtan(δAck)WB+0.5TWtan(δAck))δR=tan1(WBtan(δAck)WB0.5TWtan(δAck))

After the block calculates the ideal wheel angles, it uses the Ackerman percentage to adjust the outside wheel angle.

δo=δipAck(δiδAck)

The outside wheel angle depends on the turn direction.

  • Right turn

    • Outside angle, δo, is left wheel angle, δL

    • Inside angle, δi, is right wheel angle, δR

  • Left turn

    • Outside angle, δo, is right wheel angle, δR

    • Inside angle, δi, is left wheel angle, δL

The illustration and equations use these variables.

δin

Steering angle

δL

Left wheel angle

δR

Right wheel angle

δoOutside wheel angle
δi

Inside wheel angle

pAckAckerman percentage
TW

Track width

WB

Wheel base

γ

Steering ratio

Rack-and-Pinion

For ideal rack-and-pinion steering, the gears convert the steering rotation into linear motion.

Figure of rack, rod, and arm in rack and pinion steering mechanism

Figure of rod in rack and pinion steering mechanism

To calculate the steering angles, the block uses these equations.

l1=TWlrack2ΔPl22=l12+D2ΔP=rδinβ=π2tan1[Dl1]cos1[larm2+l22lrod22larml2]

The illustration and equations use these variables.

δin

Steering wheel angle

δL

Left wheel angle

δR

Right wheel angle

TW

Track width

r

Pinion radius

ΔP

Linear change in rack position

D

Distance between front axis and rack

lrack

Rack casing length

larm

Steering arm length

lrod

Tie rod length

Parallel

For parallel steering, the wheel angles are equal.

Figure parallel steering where wheel angles are equal

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

δR=δL=δinγ

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

Steering angle, δin, in rad.

Use the Steering range, StrgRng parameter to specify a steering angle range. By default, the value is set to 1.25*pi, which limits the steering angle to a range of -1.25*pi to 1.25*pi.

Ackerman percentage, δin, in percent.

Dependencies

To create this input port:

  • Set Type to Ackerman.

  • On the Ackerman Steering pane, select Input percent Ackerman.

Output

expand all

Bus signal contains this block calculation.

SignalDescriptionVariableUnit

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.

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 Location parameter to specify front or rear steering.

SettingImplementation
Front

Front steering

Figure of front steering turning right

Rear

Rear steering

Figure of rear steering turning right

Factor, NrmFctr, that the block uses to adjust the steering ratio, γ or pinion radius, r. The block can only normalize if you have Parametrized by set to Constant.

To adjust the steering ratio or pinion radius, click Normalize.

Steering TypeNormalization

Ackerman

Parallel

Block updates the Steering ratio, StrgRatio parameter to the normalized value, γnrm, specified by this equation.

γnrm=1NrmFctr

Rack and pinion

Block updates the Pinion radius, PnnRadius parameter to using the normalization factor, NrmFctr.

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.

Deadband steering angle before pinion engages the gear, in rad.

Steering wheel angle input range, in rad. The block limits the steering wheel input 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.

Steering angle breakpoints, in rad.

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 front axis and rack, D, in m.

Dependencies

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

Pinion radius, r, in m.

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.

Ackerman Steering

Select to create PctAckIn input port.

Dependencies

To enable this parameter, set Type to Ackerman.

Constant value of percent Ackerman, in percent.

Dependencies

To enable this parameter:

  • Set Type to Ackerman

  • Set Parametrized by to Constant

  • Clear Input Percent Ackerman

Table of percent Ackerman values as a function of the steering angle, δin, in percent.

Dependencies

To enable this parameter:

  • Set Type to Ackerman

  • Set Parametrized by to Constant

  • Clear Input Percent Ackerman

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.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced in R2018a