Main Content

Steering System

Steering system for Ackermann and rack-and-pinion steering mechanisms

Since R2022b

  • Steering System block

Libraries:
Vehicle Dynamics Blockset / Steering

Description

The Steering System block implements dynamic steering to calculate the wheel steer angles for rack-and-pinion mechanisms with friction[4], compliance, and Ackermann steering features. The block uses the steering wheel input angle or torque input, vehicle speed, caster angle, and right and left wheel feedbacks to calculate the wheel steer angles. The block uses the vehicle coordinate system.

If you select the Power assist parameter, 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. If you select the Ackerman steering parameter, you can specify a lookup table of percentage Ackermann values to calculate the Ackermann steering effects, or a constant Ackermann percentage, where 100 percent means perfect Ackermann steering.

If you select the Power assist, Ackerman steering, or Kingpin moment[5] parameters in the Input signals section, you can specify additional inputs for the external power assist torques, percent Ackermann values, or kingpin moments.

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

SettingImplementation
Front

Front axle steering

Figure of front steering turning right

Rear

Rear axle steering

Figure of rear steering turning right

Steering Type

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.

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

Figure of rod in rack and pinion steering mechanism

To calculate the steered wheel 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

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

Steering Effects

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

Kingpin Moment and Tie Rod Force

If you do not select the Kingpin moment parameter in the Input signals section to specify right and left kingpin moment inputs, the block implements the total kingpin moment using these equations:

Mkp=Mkpfx+Mkpfy+Mkpfz+Mkpmx+Mkpmy+MkpmzwhereMkpfx=0Mkpfy=Fy(nTcos(ν))cos(δ)nT=Hl+(rsltan(ν))Mkpfz=(Fzsin(λ)rssin(δ))+(Fzsin(ν)rscos(δ))rs=Kpoffset(rsltan(λ))Mkpmx=0Mkpmy=0Mkpmz=Mzcos((λ2+ν2)0.5)

The illustration and equations use these variables.

Mkp

Total kingpin moment

Mkpfx

Moment due to tractive force

Mkpfy

Moment due to cornering force

Mkpfz

Moment due to vertical force

Mkpmx

Tire overturning moment

Mkpmy

Tire rolling resistance moment

Mkpmz

Tire aligning moment

Fy

Fy tire input

nT

Caster trail

ν

Dynamic caster angle input

δ

Dynamic steering angle

ƛ

Kingpin inclination angle

Fz

Fz tire input

rs

Scrub radius

Mz

Mz tire input

Kpoffset

Kingpin offset

Hl

Hub lead

rsl

Static loaded radius

The block implements the tie rod force using these equations:

Ftie=MkpLsacos(λ)cos(δ)whereLsa=(rskrcos(λ)cos(ν)π)

The illustration and equations use these variables.

Ftie

Tie rod force

Mkp

Kingpin moment

Lsa

Swing arm length for rack and pinon steering

ƛ

Kingpin inclination angle

δ

Dynamic steering angle

rs

Overall steer ratio

kr

Rack gain

ν

Dynamic caster angle input

Examples

Ports

Input

expand all

Vehicle speed, v, in m/s, specified as a scalar. This is the magnitude of the vehicle CG longitudinal velocity vector.

Dependencies

To enable this parameter, select the Power assist Block Option.

Wheel caster angle, τL, in radians, specified as a 1-by-2 vector. The first element is the angle for the left wheel and the second is the angle for the right wheel.

Dependencies

To enable this port, clear Input signals > Kingpin moment.

Wheel steer angle feedback, in radians, specified as a 1-by-2 vector. The first element is the angle feedback from the left wheel and the second element is the angle feedback from the right wheel:

  • AngLft

  • AngRght

You can specify the wheel steer angle feedback using steering angle responses from a vehicle plant model or the wheel angle outputs from this block.

Dependencies

To enable this port, clear Input signals > Kingpin moment.

Steering wheel angle input from driver, in radians, specified as a scalar.

Dependencies

To enable this port, select Steering inputs > Angle.

Steering wheel torque input from driver, in N*m, specified as a scalar.

Dependencies

To enable this port, select Steering inputs > Torque.

The torque value of power assist on the steering shaft, in N*m, specified as a scalar. The value is supplied externally into this port.

Dependencies

To enable this port, select Input signals > Power assist.

The Ackermann value in percent, specified as a scalar. The value is supplied externally into this port.

Dependencies

To enable this port, select Input signals > Ackerman steering.

Tire forces and moments feedback from both right and left tires, specified as a 1-by-12 vector that contains the following values, in the order specified in this table:

DescriptionUnit
x-directional Force, LeftN
x-directional Force, RightN
y-directional Force, LeftN
y-directional Force, RightN
z-directional Force, LeftN
z-directional Force, RightN
x-directional Moment, LeftN*m
x-directional Moment, RightN*m
y-directional Moment, LeftN*m
y-directional Moment, RightN*m
z-directional Moment, LeftN*m
z-directional Moment, RightN*m

Dependencies

To enable this port, clear Input signals > Kingpin moment.

Left kingpin moment, in N*m, specified as a scalar.

Dependencies

To enable this port, select Input signals > Kingpin moment.

Right kingpin moment, in N*m, specified as a scalar.

Dependencies

To enable this port, select Input signals > Kingpin moment.

Output

expand all

Vehicle dynamics information, returned as a bus signal that contains these signals:

SignalDescriptionUnit

StrWhlAngFdk

Steering wheel angle

rad

AstTrq

Torque applied by power assist

N·m

AstPwr

Power applied by power assist

W

LftTieRodForce

Axial force in left tie rod

N

RghtTieRodForce

Axial force in right tie rod

N

LftKpM

Left kingpin moment

N·m

RghtKpM

Right kingpin moment

N·m

LftWhlAng

Left wheel steer angle

rad

RghtWhlAng

Right wheel steer angle

rad

LftWhlSpd

Left wheel steer angle velocity

rad/s

RghtWhlSpd

Right wheel steer angle velocity

rad/s

TrqIn

Torque applied by driver on steering wheel

N·m

Left wheel steer angle, δL, in radians, returned as a scalar.

Right wheel steer angle, δR, in radians, returned as a scalar.

Parameters

expand all

Block Options

Set the steering type for the steering system.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrgType
Values: Rack and pinion (default)
Data Types: character vector

Select whether to model the intermediate shaft type using single or double Cardan joints.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: IntmdShaftType
Values: Single Cardan joint (default) | Double Cardan joints
Data Types: character vector

Select this parameter to model power assist within the steering system.

Dependencies

To enable this parameter, in the Input signals section, clear Power assist.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: PwrAst
Values: on (default) | off
Data Types: character vector

Select this parameter to set the Ackermann steering percentage within the Steering System block.

Dependencies

To enable this parameter, in the Input signals section, clear Ackerman steering.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: AckStr
Values: on (default) | off
Data Types: character vector

Input Signals

Select this parameter to enable the PwrAstTrq port.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: PwrAstOverride
Values: off (default) | on
Data Types: character vector

Select this parameter to enable the PctAck port.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: AckStrOverride
Values: off (default) | on
Data Types: character vector

Select this parameter to enable the LftKpM and RghtKpM ports.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: KingpinOverride
Values: off (default) | on
Data Types: character vector

Select either the front or rear axle as the location of the Steering System.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Loc
Values: Front (default) | Rear
Data Types: character vector

Select either the AngIn or TrqIn port as the driver input.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrIn
Values: Angle (default) | Torque
Data Types: character vector

General

Track width, TW, in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: TrckWdth
Values: 1 (default) | scalar
Data Types: double

Steering wheel angle from straight-ahead to either left or right lock, in rad, specified as a scalar. This parameter causes both steered wheels to remain within their designed steering range.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrRng
Values: 1.25*pi (default) | scalar
Data Types: double

Steering wheel deadband angle, in radians, from left-engagement to right-engagement.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: DbWdth
Values: 0 (default) | scalar
Data Types: double

Steering wheel moment of inertia, in kg*m2, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrWhlInert
Values: 0.1 (default) | scalar
Data Types: double

Steering shaft moment of inertia, in kg*m2, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrCollnert
Values: 0.01 (default) | scalar
Data Types: double

Kingpin offset, in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: KngpnOfst
Values: 0.075 (default) | scalar
Data Types: character vector

Kingpin inclination angle, in rad, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Lambda
Values: 0.2094 (default) | scalar
Data Types: double

Hub lead, in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: HbLead
Values: 4.00E-05 (default) | scalar
Data Types: double

Static loaded tire radius, in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StcLdRadius
Values: 0.4 (default) | scalar
Data Types: double

Overall steering ratio, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: OvrlStrRatio
Values: 17.42 (default) | scalar
Data Types: double

Steering wheel angle breakpoints, in rad, specified as a 1-by-11 vector. These breakpoints are used to parameterize either Ackermann value or rack gain.

Dependencies

To enable this parameter, set one of these parameters to Lookup table:

  • Rack and pinion > Rack gain parameterized by

  • Ackerman steering > Percent Ackerman parameterized by

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrgAngBpts
Values: [-6.2832 -5.0265 -3.7699 -2.5133 -1.2566 0 1.2566 2.5133 3.7699 5.0265 6.2832] (default) | 1-by-11 vector
Data Types: double

Caster angle, in rad, specified as a scalar.

Dependencies

To enable this parameter, select Input signals > Kingpin moment.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: CstrAng
Values: 0 (default) | scalar
Data Types: double

Rack and Pinion

Whether to parameterize the rack gain as a constant value or by using a lookup table.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrgRatioType
Values: Constant (default) | Lookup table
Data Types: character vector

Rack gain, in m/rev, specified as a scalar.

Dependencies

To enable this parameter, set Rack gain parameterized by to Constant.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: RckGn
Values: 0.062 (default) | scalar
Data Types: double

Rack gain table, in m/rev, specified as a 1-by-11 vector.

Dependencies

To enable this parameter, set Rack gain parameterized by to Lookup table.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: RckGnTbl
Values: ones(1,11)*0.0057*2*pi (default) | 1-by-11 vector
Data Types: double

Steering arm length, in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: StrgArmLngth
Values: 0.1 (default) | scalar
Data Types: double

Rack length (distance between inner tie rod ends), in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: RckCsLngth
Values: 0.5 (default) | scalar
Data Types: double

Tie rod length, lrod, in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: TieRodLngth
Values: 0.248 (default) | scalar
Data Types: double

Longitudinal distance between the steered axle and rack centerline, D, in m, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Dst
Values: 0.2 (default) | scalar
Data Types: double

Efficiency of the rack and pinion mechanism, ɛ, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Epsilon
Values: 0.9 (default) | scalar
Data Types: double

Pinion inertia, in kg*m2, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: PnInert
Values: 0.1 (default) | scalar
Data Types: double

Single Cardan Joint

Spatial angle for the single Cardan joint, in rad, specified as a scalar.

Dependencies

To enable this parameter, set Intermediate shaft type to Single Cardan joint.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: SptlAng
Values: 2.6178 (default) | scalar
Data Types: double

Double Cardan Joints

Spatial angle for the upper Cardan joint, in rad, specified as a scalar.

Dependencies

To enable this parameter, set Intermediate shaft type to Double Cardan joints.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Alpha_b
Values: 2.6178 (default) | scalar
Data Types: double

Spatial angle for the lower Cardan joint, in rad, specified as a scalar.

Dependencies

To enable this parameter, set Intermediate shaft type to Double Cardan joints.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Alpha_c
Values: 2.7051 (default) | scalar
Data Types: double

Edge view angle between the planes of the two joints, in rad, specified as a scalar.

Dependencies

To enable this parameter, set Intermediate shaft type to Double Cardan joints.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Sigma_bc
Values: 0.2618 (default) | scalar
Data Types: double

Rotation phase angle between the two joints, in rad, specified as a scalar.

Dependencies

To enable this parameter, set Intermediate shaft type to Double Cardan joints.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Gamma
Values: 0.2618 (default) | scalar
Data Types: double

Power Assist

Steering wheel torque breakpoints, in N·m, specified as a 1-by-M vector.

Dependencies

To enable this parameter, select the Power assist Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: TrqBpts
Values: [-100 0 100] (default) | 1-by-M vector
Data Types: double

Vehicle speed breakpoints, in m/s, specified as a 1-by-N vector.

Dependencies

To enable this parameter, select the Power assist Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: VehSpdBpts
Values: [0 20] (default) | 1-by-N vector
Data Types: double

Torque assist table, ƒtrq, in N·m, specified as an M-by-N matrix.

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

τast=ftrq(v,τin).

The block applies the steering wheel input torque and torque assist to the pinion.

Dependencies

To enable this parameter, select the Power assist Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: TrqTbl
Values: [0 -100;0 0;0 100] (default) | M-by-N matrix
Data Types: double

Torque assist limit, in N·m, specified as a scalar.

Dependencies

To enable this parameter, select the Power assist Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: TrqLmt
Values: 100 (default) | scalar
Data Types: double

Assist power limit, in watts, specified as a scalar.

Dependencies

To enable this parameter, select the Power assist Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: PwrLmt
Values: 1000 (default) | scalar
Data Types: double

Torque assist efficiency, specified as a scalar.

Dependencies

To enable this parameter, select the Power assist Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: Eta
Values: 1 (default) | scalar
Data Types: double

Cutoff frequency, in rad/s, specified as a scalar.

Dependencies

To enable this parameter, select the Power assist Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: omega_c
Values: 200 (default) | scalar
Data Types: double

Ackerman Steering

Whether to parameterize the Ackermann values as a constant value or by a lookup table.

Dependencies

To enable this parameter, select the Ackerman steering Block Option.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: AckParamType
Values: Constant (default) | Lookup table
Data Types: character vector

Percent Ackermann, specified as a scalar.

Dependencies

To enable this parameter, select the Ackerman steering Block Option and set Percent Ackerman parameterized by to Constant.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: PctAck
Values: 100 (default) | scalar
Data Types: double

Percent Ackermann table, specified as a 1-by-11 vector.

Dependencies

To enable this parameter, select the Ackerman steering Block Option and set Percent Ackerman parameterized by to Lookup table.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: PctAckTbl
Values: ones(1,11)*100 (default) | 1-by-11 vector
Data Types: double

Friction and Compliance

Sealing stiffness, in N*m/rad, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: SlgStf
Values: 1.5e4 (default) | scalar
Data Types: double

Upper boundary friction, in N, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: UpprFric
Values: 1 (default) | scalar
Data Types: double

Pressure change due to friction boundary increase, in N/bar, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: PrsFric
Values: 1e-5 (default) | scalar
Data Types: double

Maxwell element stiffness, in N*m/rad, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: MaxStf
Values: 10000 (default) | scalar
Data Types: double

Maxwell element upper boundary friction, in N, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: MaxUpprFric
Values: 0.2 (default) | scalar
Data Types: double

Maxwell linear damping coefficient, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: MaxDamp
Values: 1 (default) | scalar
Data Types: double

Torsional stiffness of steering shaft, in N*m/rad, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: TorStf
Values: 30 (default) | scalar
Data Types: double

Torsional viscous damping in steering shaft, in N*m*s/rad, specified as a scalar.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: TorDamp
Values: 1 (default) | scalar
Data Types: double

Steering Torque Controller

Integral anti-windup gain, specified as a scalar.

Dependencies

To enable this parameter, select Steering inputs > Angle.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: A
Values: 0 (default) | scalar
Data Types: double

Derivative gain, specified as a scalar.

Dependencies

To enable this parameter, select Steering inputs > Angle.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: D
Values: 0.1 (default) | scalar
Data Types: double

Integral gain, specified as a scalar.

Dependencies

To enable this parameter, select Steering inputs > Angle.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: I
Values: 5 (default) | scalar
Data Types: double

Steering torque output saturation lower limit, specified as a scalar, in Nm.

Dependencies

To enable this parameter, select Steering inputs > Angle.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: OutSatLowLmt
Values: -500 (default) | scalar
Data Types: double

Steering torque output saturation upper limit, specified as a scalar, in Nm.

Dependencies

To enable this parameter, select Steering inputs > Angle.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: OutSatUpLmt
Values: 500 (default) | scalar
Data Types: double

Proportional gain, specified as a scalar.

Dependencies

To enable this parameter, select Steering inputs > Angle.

Programmatic Use

To set the block parameter value programmatically, use the set_param function.

To get the block parameter value programmatically, use the get_param function.

Parameter: P
Values: 150 (default) | scalar
Data Types: double

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.

[4] Pfeffer, P. E., M. Harrer, and D. N. Johnston. “Interaction of Vehicle and Steering System Regarding On-Centre Handling.” Vehicle System Dynamics 46, no. 5 (May 2008): 413–28. https://doi.org/10.1080/00423110701416519.

[5] Reimpell, Jörnsen, Helmut Stoll, and Jürgen W. Betzler. The Automotive Chassis: Engineering Principles Chassis and Vehicle Overall, Wheel Suspensions and Types of Drive, Axle Kinematics and Elastokinematics, Steering, Springing, Tyres, Construction and Calculations Advice. 2nd ed. Oxford: Butterworth Heinemann, 2001.

Extended Capabilities

expand all

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

Version History

Introduced in R2022b

expand all