# Solid Axle Suspension - Coil Spring

Solid axle suspension with coil spring

Libraries:
Vehicle Dynamics Blockset / Suspension

## Description

The Solid Axle Suspension - Coil Spring block implements a solid axle suspension with a coil spring for multiple axles with multiple wheels per axle.

The block models the suspension compliance, damping, and geometric effects as functions of the wheel positions and velocities, with axle-specific compliance and damping parameters. Using the wheel position and velocity, the block calculates the vertical wheel position and suspension forces on the vehicle and wheel. The block uses the Z-down coordinate system (defined in SAE J670) and a solid axle coordinate system. The solid axle coordinate system is aligned with the Z-down vehicle coordinate system, with the x-axis in the direction of forward vehicle motion.

This table describes the settings you can specify for each suspension element.

Suspension ElementSetting

Axle

• Multiple wheels

• Suspension parameters

Wheel

• Steering angles

The block contains energy-storing spring elements and energy-dissipating damper elements. The block also stores energy via the axle roll angular acceleration and axle center of mass vertical and lateral acceleration.

This table summarizes the block parameter settings for a vehicle with:

• Two axles

• Two wheels per axle

• Steering angle input for both wheels on the front axle

ParameterSetting
Number of axles, NumAxl

`2`

Number of wheels by axle, NumWhlsByAxl

`[2 2]`

Steered axle enable by axle, StrgEnByAxl

`[1 0]`

The block uses the wheel number, t, to index the input and output signals. This table summarizes the wheel, axle, and corresponding wheel number for a vehicle with:

• Two axles

• Two wheels per axle

WheelAxleWheel Number
Front leftFront`1`
Front rightFront`2`
Rear leftRear`1`
Rear rightRear`2`

### Suspension Compliance and Damping

The block uses a linear spring and damper to model the vertical dynamic effects of the suspension system on the vehicle and wheel. Specifically, the block:

Uses

To Calculate

• Longitudinal and lateral displacement and velocity of the vehicle.

• Longitudinal and lateral displacement and velocity of the wheel.

• Vertical wheel forces applied to the vehicle.

• Suspension forces applied to the axle center.

• Vertical displacements and velocities of the vehicle and wheel.

• Longitudinal, lateral and vertical suspension forces and moments applied to the vehicle.

• Longitudinal, lateral and vertical suspension forces and moments applied to the wheel.

To calculate the dynamics of the axle, the block implements these equations. The block neglects the effects of:

• Lateral and longitudinal translational velocity.

• Angular velocity about the vertical and lateral axes.

`$\begin{array}{l}\left[\begin{array}{c}{\stackrel{¨}{x}}_{a}\\ {\stackrel{¨}{y}}_{a}\\ {\stackrel{¨}{z}}_{a}\end{array}\right]=\frac{1}{{M}_{a}}\left[\begin{array}{c}{F}_{xa}\\ {F}_{ya}\\ {F}_{za}\end{array}\right]+\left[\begin{array}{c}{\stackrel{˙}{x}}_{a}\\ {\stackrel{˙}{y}}_{a}\\ {\stackrel{˙}{z}}_{a}\end{array}\right]×\left[\begin{array}{c}p\\ q\\ r\end{array}\right]=\frac{1}{{M}_{a}}\left[\begin{array}{c}0\\ 0\\ {F}_{za}\end{array}\right]+\left[\begin{array}{c}0\\ 0\\ {\stackrel{˙}{z}}_{a}\end{array}\right]×\left[\begin{array}{c}p\\ 0\\ 0\end{array}\right]+\left[\begin{array}{c}0\\ 0\\ g\end{array}\right]=\left[\begin{array}{c}0\\ p{\stackrel{˙}{z}}_{a}\\ \frac{{F}_{za}}{{M}_{a}}+g\end{array}\right]\\ \\ \left[\begin{array}{c}\stackrel{˙}{p}\\ \stackrel{˙}{q}\\ \stackrel{˙}{r}\end{array}\right]=\left[\left[\begin{array}{c}{M}_{x}\\ {M}_{y}\\ {M}_{z}\end{array}\right]-\left[\begin{array}{c}p\\ q\\ r\end{array}\right]×\left[\begin{array}{ccc}{I}_{xx}& 0& 0\\ 0& {I}_{yy}& 0\\ 0& 0& {I}_{zz}\end{array}\right]\left[\begin{array}{c}p\\ q\\ r\end{array}\right]\right]{\left[\begin{array}{ccc}{I}_{xx}& 0& 0\\ 0& {I}_{yy}& 0\\ 0& 0& {I}_{zz}\end{array}\right]}^{-1}\\ =\left[\left[\begin{array}{c}{M}_{x}\\ 0\\ 0\end{array}\right]-\left[\begin{array}{c}p\\ q\\ 0\end{array}\right]×\left[\begin{array}{ccc}{I}_{xx}& 0& 0\\ 0& {I}_{yy}& 0\\ 0& 0& {I}_{zz}\end{array}\right]\left[\begin{array}{c}p\\ 0\\ 0\end{array}\right]\right]{\left[\begin{array}{ccc}{I}_{xx}& 0& 0\\ 0& {I}_{yy}& 0\\ 0& 0& {I}_{zz}\end{array}\right]}^{-1}=\left[\begin{array}{c}\frac{{M}_{x}}{{I}_{xx}}\\ 0\\ 0\end{array}\right]\end{array}$`

The net vertical force on the axle center of mass is the sum of the wheel and suspension forces acting on the axle.

`${F}_{za}=\sum _{t=1}^{Nta}\left({F}_{w{z}_{a,t}}+{F}_{z{0}_{a}}+{k}_{{z}_{a}}\left({z}_{{v}_{a,t}}-{z}_{{s}_{a,t}}+{m}_{hstee{r}_{a}}|{\delta }_{stee{r}_{a,t}}|\right)+{c}_{{z}_{a}}\left({\stackrel{˙}{z}}_{{v}_{a,t}}-{\stackrel{˙}{z}}_{{s}_{a,t}}\right)\right)$`

The net moment about the roll axis of the solid axle suspension accounts for the hardpoint coordinates of the suspension and wheels.

`${M}_{x}=\sum _{t=1}^{Nta}\left({F}_{w{z}_{a,t}}{y}_{{w}_{t}}+\left({F}_{z{0}_{a}}+{k}_{{z}_{a}}\left({z}_{{v}_{a,t}}-{z}_{{s}_{a,t}}+{m}_{hstee{r}_{a}}|{\delta }_{stee{r}_{a,t}}|\right)+{c}_{{z}_{a}}\left({\stackrel{˙}{z}}_{{v}_{a,t}}-{\stackrel{˙}{z}}_{{s}_{a,t}}\right)\right){y}_{{s}_{t}}+{M}_{w{x}_{a,t}}\frac{{I}_{xx}}{{I}_{xx}+{M}_{a}{y}_{{w}_{t}}}\right)$`

Block parameters provide the track and suspension hardpoints coordinates.

The block uses Euler angles to transform the track and suspension displacements, velocities, and accelerations to the vehicle coordinate system.

To calculate the suspension forces applied to the vehicle, the block implements this equation.

`${F}_{v{z}_{a,t}=-}\left({F}_{z{0}_{a}}+{k}_{{z}_{a}}\left({z}_{{v}_{a,t}}-{z}_{{s}_{a,t}}+{m}_{hstee{r}_{a}}|{\delta }_{stee{r}_{a,t}}|\right)+{c}_{{z}_{a}}\left({\stackrel{˙}{z}}_{{v}_{a,t}}-{\stackrel{˙}{z}}_{{s}_{a,t}}\right)+{F}_{zhsto{p}_{a,t}}\right)$`

The suspension forces and moments applied to the vehicle are equal to the suspension forces and moments applied to the wheel.

`$\begin{array}{l}{F}_{v{x}_{a,t}}={F}_{w{x}_{a,t}}\\ {F}_{v{y}_{a,t}}={F}_{w{y}_{a,t}}\\ {F}_{v{z}_{a,t}}=-{F}_{w{z}_{a,t}}\\ \\ {M}_{v{x}_{a,t}}={M}_{w{x}_{a,t}}+{F}_{w{y}_{a,t}}\left(R{e}_{w{y}_{a,t}}+{H}_{a,t}\right)\\ {M}_{v{y}_{a,t}}={M}_{w{y}_{a,t}}+{F}_{w{x}_{a,t}}\left(R{e}_{w{x}_{a,t}}+{H}_{a,t}\right)\\ {M}_{v{z}_{a,t}}={M}_{w{z}_{a,t}}\end{array}$`

To calculate the vertical force applied to the suspension at the wheel location, the block implements a stiff spring-damper, shown here.

The block uses this equation.

`${F}_{w{z}_{a,t}}=-Fw{a}_{z0}-kw{a}_{z}\left({z}_{{w}_{a,t}}-{z}_{{s}_{a,t}}\right)-cw{a}_{z}\left({\stackrel{˙}{z}}_{{w}_{a,t}}-{\stackrel{˙}{z}}_{{s}_{a,t}}\right)$`

The equations use these variables.

 Fwza,t, Mwza,t Suspension force and moment applied to the wheel on axle `a`, wheel `t` along wheel-fixed z-axis Fwxa,t, Mwxa,t Suspension force and moment applied to the wheel on axle `a`, wheel `t` along wheel-fixed x-axis Fwya,t, Mwya,t Suspension force and moment applied to the wheel on axle `a`, wheel `t` along wheel-fixed y-axis Fvza,t, Mvza,t Suspension force and moment applied to the vehicle on axle `a`, wheel `t` along wheel-fixed z-axis Fvxa,t, Mvxa,t Suspension force and moment applied to the vehicle on axle `a`, wheel `t` along wheel-fixed x-axis Fvya,t, Mvya,t Suspension force and moment applied to the vehicle on axle `a`, wheel `t` along wheel-fixed y-axis Fz0a Vertical suspension spring preload force applied to the wheels on axle `a` kza Vertical spring constant applied to wheels on axle `a` kwaz Wheel and axle interface compliance constant mhsteera Steering angle to vertical force slope applied at wheel carrier for wheels on axle `a` δsteera,t Steering angle input for axle `a`, wheel `t` cza Vertical damping constant applied to wheels on axle `a` cwaz Wheel and axle interface damping constant Rewa,t Effective wheel radius for axle `a`, wheel `t` Fzhstopa,t Vertical hardstop force at axle `a`, wheel `t`, along the inertial-fixed z-axis Fzaswya,t Vertical anti-sway force at axle `a`, wheel `t`, along the inertial-fixed z-axis Fwaz0 Wheel and axle interface compliance constant zva,t, żva,t Vehicle displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed z-axis zwa,t, żwa,t Wheel displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed z-axis xva,t, ẋva,t Vehicle displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed z-axis xwa,t, ẋwa,t Wheel displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed z-axis yva,t, ẏva,t Vehicle displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed y-axis ywa,t, ẏwa,t Wheel displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed y-axis Ha,t Suspension height at axle `a`, wheel `t` Rewa,t Effective wheel radius at axle `a`, wheel `t`

### Hardstop Forces

The hardstop feedback force, Fzhstopa,t, that the block applies depends on whether the suspension is compressing or extending. The block applies the force:

• In compression, when the suspension is compressed more than the maximum distance specified by the Suspension maximum height, Hmax parameter

• In extension, when the suspension extension is greater than maximum extension specified by the Suspension maximum height, Hmax parameter

To calculate the force, the block uses a stiffness based on a hyperbolic tangent and exponential scaling.

### Camber, Caster, and Toe Angles

To calculate the camber, caster, and toe angles, block uses linear functions of the suspension height and steering angle.

The equations use these variables.

 ξa,t Camber angle of wheel on axle `a`, wheel `t` ηa,t Caster angle of wheel on axle `a`, wheel `t` ζa,t Toe angle of wheel on axle `a`, wheel `t` ξ0a, η0a, ζ0a Nominal suspension axle a camber, caster, and toe angles, respectively, at zero steering angle mhcambera, mhcastera, mhtoea Camber, caster, and toe angles, respectively, versus suspension height slope for axle `a` mcambersteera, mcastersteera, mtoesteera Camber, caster, and toe angles, respectively, versus steering angle slope for axle `a` mhsteera Steering angle versus vertical force slope for axle `a` δsteera,t Steering angle input for axle `a`, wheel `t` zva,t Vehicle displacement at axle `a`, wheel `t`, along the inertial-fixed z-axis zwa,t Wheel displacement at axle `a`, wheel `t`, along the inertial-fixed z-axis

### Steering Angles

Optionally, use the Steered axle enable by axle, StrgEnByAxl parameter to input steering angles for the wheels. To calculate the steering angles for the wheels, the block offsets the input steering angles with a linear function of the suspension height.

`${\delta }_{whlstee{r}_{a,t}}={\delta }_{stee{r}_{a,t}}+{m}_{hto{e}_{a}}\left({z}_{{w}_{a,t}}-{z}_{{v}_{a,t}}-{m}_{hstee{r}_{a}}|{\delta }_{stee{r}_{a,t}}|\right)+{m}_{toestee{r}_{a}}|{\delta }_{stee{r}_{a,t}}|$`

The equation uses these variables.

 mtoesteera Axle `a` toe angle versus steering angle slope mhsteera Axle `a` steering angle versus vertical force slope mhtoea Axle `a` toe angle versus suspension height slope δwhlsteera,t Wheel steering angle for axle `a`, wheel `t` δsteera,t Steering angle input for axle `a`, wheel `t` zva,t Vehicle displacement at axle `a`, wheel `t`, along the inertial-fixed z-axis zwa,t Wheel displacement at axle `a`, wheel `t`, along the inertial-fixed z-axis

### Power and Energy

The block calculates these suspension characteristics for each axle, `a`, wheel, `t`.

CalculationEquation

Dissipated power, Psuspa,t

`${P}_{sus{p}_{a,t}}={F}_{wzlooku{p}_{a}}\left({\stackrel{˙}{z}}_{{v}_{a,t}}-{\stackrel{˙}{z}}_{{w}_{a,t}},{\stackrel{˙}{z}}_{{v}_{a,t}}-{\stackrel{˙}{z}}_{{w}_{a,t}},{\delta }_{stee{r}_{a,t}}\right)$`

Absorbed energy, Esuspa,t

`${E}_{sus{p}_{a,t}}={F}_{wzlooku{p}_{a}}\left({\stackrel{˙}{z}}_{{v}_{a,t}}-{\stackrel{˙}{z}}_{{w}_{a,t}},{\stackrel{˙}{z}}_{{v}_{a,t}}-{\stackrel{˙}{z}}_{{w}_{a,t}},{\delta }_{stee{r}_{a,t}}\right)$`

Suspension height, Ha,t

`${H}_{a,t}=-\left({z}_{{v}_{a,t}}-{z}_{{w}_{a,t}}+\frac{{F}_{z{0}_{a}}}{{k}_{{z}_{a}}}+{m}_{hstee{r}_{a}}|{\delta }_{stee{r}_{a,t}}|\right)$`

Distance from wheel carrier center to tire/road interface

`${z}_{wt{r}_{a,t}}=R{e}_{{w}_{a,t}}+{H}_{a,t}$`

The equations use these variables.

 mhsteera Steering angle to vertical force slope applied at wheel carrier for wheels on axle `a` δsteera,t Steering angle input for axle `a`, wheel `t` Rewa,t Axle `a`, wheel `t` effective wheel radius from wheel carrier center to tire/road interface Fz0a Vertical suspension spring preload force applied to the wheels on axle `a` zwtra,t Distance from wheel carrier center to tire/road interface, along the inertial-fixed z-axis zva,t, żva,t Vehicle displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed z-axis zwa,t, żwa,t Wheel displacement and velocity at axle `a`, wheel `t`, along the inertial-fixed z-axis

## Ports

### Input

expand all

Wheel displacement, zw, along wheel-fixed z-axis, in m. Array dimensions are `1` by the total number of wheels on the vehicle.

For example, for a two-axle vehicle with two wheels per axle, the `WhlPz`:

• Signal array dimensions are `[1x4]`.

`$\mathrm{WhlPz}={z}_{w}=\left[\begin{array}{cccc}{z}_{{w}_{1,1}}& {z}_{{w}_{1,2}}& {z}_{{w}_{2,1}}& {z}_{{w}_{2,2}}\end{array}\right]$`
WheelArray ElementAxleWheel Number
Front left`WhlPz(1,1)``1``1`
Front right`WhlPz(1,2)``1``2`
Rear left`WhlPz(1,3)``2``1`
Rear right`WhlPz(1,4)``2``2`

Effective wheel radius, Rew, in m. Array dimensions are `1` by the total number of wheels on the vehicle.

For example, for a two-axle vehicle with two wheels per axle, the `WhlRe`:

• Signal array dimensions are `[1x4]`.

`$\mathrm{Whl}\mathrm{Re}=R{e}_{w}=\left[\begin{array}{cccc}R{e}_{{w}_{1,1}}& R{e}_{{w}_{1,2}}& R{e}_{{w}_{2,1}}& R{e}_{{w}_{2,2}}\end{array}\right]$`
WheelArray ElementAxleWheel Number
Front left`WhlRe(1,1)``1``1`
Front right`WhlRe(1,2)``1``2`
Rear left`WhlRe(1,3)``2``1`
Rear right`WhlRe(1,4)``2``2`

Wheel velocity, żw, along wheel-fixed z-axis, in m. Array dimensions are `1` by the total number of wheels on the vehicle.

For example, for a two-axle vehicle with two wheels per axle, the `WhlVz`:

• Signal array dimensions are `[1x4]`.

`$\mathrm{WhlVz}={\stackrel{˙}{z}}_{w}=\left[\begin{array}{cccc}{\stackrel{˙}{z}}_{{w}_{1,1}}& {\stackrel{˙}{z}}_{{w}_{1,2}}& {\stackrel{˙}{z}}_{{w}_{2,1}}& {\stackrel{˙}{z}}_{{w}_{2,2}}\end{array}\right]$`
WheelArray ElementAxleWheel Number
Front left`WhlVz(1,1)``1``1`
Front right`WhlVz(1,2)``1``2`
Rear left`WhlVz(1,3)``2``1`
Rear right`WhlVz(1,4)``2``2`

Longitudinal wheel force applied to vehicle, Fwx, along the inertial-fixed x-axis. Array dimensions are `1` by the total number of wheels on the vehicle.

For example, for a two-axle vehicle with two wheels per axle, the `WhlFx`:

• Signal array dimensions are `[1x4]`.

`$\mathrm{WhlFx}={F}_{wx}=\left[\begin{array}{cccc}{F}_{w{x}_{1,1}}& {F}_{w{x}_{1,2}}& {F}_{w{x}_{2,1}}& {F}_{w{x}_{2,2}}\end{array}\right]$`
WheelArray ElementAxleWheel Number
Front left`WhlFx(1,1)``1``1`
Front right`WhlFx(1,2)``1``2`
Rear left`WhlFx(1,3)``2``1`
Rear right`WhlFx(1,4)``2``2`

Lateral wheel force applied to vehicle, Fwy, along the inertial-fixed y-axis. Array dimensions are `1` by the total number of wheels on the vehicle.

For example, for a two-axle vehicle with two wheels per axle, the `WhlFy`:

• Signal array dimensions are `[1x4]`.

`$\mathrm{WhlFy}={F}_{wy}=\left[\begin{array}{cccc}{F}_{w{y}_{1,1}}& {F}_{w{y}_{1,2}}& {F}_{w{y}_{2,1}}& {F}_{w{y}_{2,2}}\end{array}\right]$`

WheelArray ElementAxleWheel Number
Front left`WhlFy(1,1)``1``1`
Front right`WhlFy(1,2)``1``2`
Rear left`WhlFy(1.3)``2``1`
Rear right`WhlFy(1,4)``2``2`

Longitudinal, lateral, and vertical suspension moments at axle `a`, wheel `t`, applied to the wheel at the axle wheel carrier reference coordinate, in N·m. Input array dimensions are `3` by the number of wheels on the vehicle.

• `WhlM(1,...)` — Suspension moment applied to the wheel about the inertial-fixed x-axis (longitudinal)

• `WhlM(2,...)` — Suspension moment applied to the wheel about the inertial-fixed y-axis (lateral)

• `WhlM(3,...)` — Suspension moment applied to the wheel about the inertial-fixed z-axis (vertical)

For example, for a two-axle vehicle with two wheels per axle, the `WhlM`:

• Signal dimensions are `[3x4]`.

• Signal contains suspension moments applied to four wheels according to their axle and wheel locations.

`$\mathrm{WhlM}={M}_{w}=\left[\begin{array}{cccc}{M}_{w{x}_{1,1}}& {M}_{w{x}_{1,2}}& {M}_{w{x}_{2,1}}& {M}_{w{x}_{2,2}}\\ {M}_{w{y}_{1,1}}& {M}_{w{y}_{1,2}}& {M}_{w{y}_{2,1}}& {M}_{w{y}_{2,2}}\\ {M}_{w{z}_{1,1}}& {M}_{w{z}_{1,2}}& {M}_{w{z}_{2,1}}& {M}_{w{z}_{2,2}}\end{array}\right]$`

WheelArray ElementAxleWheel NumberMoment Axis
Front left`WhlM(1,1)``1``1`Inertial-fixed x-axis (longitudinal)
Front right`WhlM(1,2)``1``2`
Rear left`WhlM(1,3)``2``1`
Rear right`WhlM(1,4)``2``2`
Front left`WhlM(2,1)``1``1`Inertial-fixed y-axis (lateral)
Front right`WhlM(2,2)``1``2`
Rear left`WhlM(2,3)``2``1`
Rear right`WhlM(2,4)``2``2`
Front left`WhlM(3,1)``1``1`Inertial-fixed z-axis (vertical)
Front right`WhlM(3,2)``1``2`
Rear left`WhlM(3,3)``2``1`
Rear right`WhlM(3,4)``2``2`

Vehicle displacement from axle `a`, wheel `t` along inertial-fixed coordinate system, in m. Input array dimensions are `3` by the number of wheels on the vehicle.

• `VehP(1,...)` — Vehicle displacement from wheel, xv, along the inertial-fixed x-axis

• `VehP(2,...)` — Vehicle displacement from wheel, yv, along the inertial-fixed y-axis

• `VehP(3,...)` — Vehicle displacement from wheel, zv, along the inertial-fixed z-axis

For example, for a two-axle vehicle with two wheels per axle, the `VehP`:

• Signal dimensions are `[3x4]`.

• Signal contains four displacements according to their axle and wheel locations.

`$\mathrm{VehP}=\left[\begin{array}{c}{x}_{v}\\ {y}_{v}\\ {z}_{v}\end{array}\right]=\left[\begin{array}{cccc}{x}_{v}{}_{{}_{1,1}}& {x}_{v}{}_{{}_{1,2}}& {x}_{v}{}_{{}_{2,1}}& {x}_{v}{}_{{}_{2,2}}\\ {y}_{v}{}_{{}_{1,1}}& {y}_{v}{}_{{}_{1,2}}& {y}_{v}{}_{{}_{2,1}}& {y}_{v}{}_{{}_{2,2}}\\ {z}_{v}{}_{{}_{1,1}}& {z}_{v}{}_{{}_{1,2}}& {z}_{v}{}_{{}_{2,1}}& {z}_{v}{}_{{}_{2,2}}\end{array}\right]$`

WheelArray ElementAxleWheel NumberAxis
Front left`VehP(1,1)``1``1`Inertial-fixed x-axis
Front right`VehP(1,2)``1``2`
Rear left`VehP(1,3)``2``1`
Rear right`VehP(1,4)``2``2`
Front left`VehP(2,1)``1``1`Inertial-fixed y-axis
Front right`VehP(2,2)``1``2`
Rear left`VehP(2,3)``2``1`
Rear right`VehP(2,4)``2``2`
Front left`VehP(3,1)``1``1`inertial-fixed z-axis
Front right`VehP(3,2)``1``2`
Rear left`VehP(3,3)``2``1`
Rear right`VehP(3,4)``2``2`

Vehicle velocity at axle `a`, wheel `t` along inertial-fixed coordinate system, in m. Input array dimensions are `3` by the number of wheels on the vehicle.

• `VehV(1,...)` — Vehicle velocity at wheel, xv, along the inertial-fixed x-axis

• `VehV(2,...)` — Vehicle velocity at wheel, yv, along the inertial-fixed y-axis

• `VehV(3,...)` — Vehicle velocity at wheel, zv, along the inertial-fixed z-axis

For example, for a two-axle vehicle with two wheels per axle, the `VehV`:

• Signal dimensions are `[3x4]`.

• Signal contains `4` velocities according to their axle and wheel locations.

`$\mathrm{VehV}=\left[\begin{array}{c}{\stackrel{˙}{x}}_{v}\\ {\stackrel{˙}{y}}_{v}\\ {\stackrel{˙}{z}}_{v}\end{array}\right]=\left[\begin{array}{cccc}{\stackrel{˙}{x}}_{{v}_{1,1}}& {\stackrel{˙}{x}}_{{v}_{1,2}}& {\stackrel{˙}{x}}_{{v}_{2,1}}& {\stackrel{˙}{x}}_{{v}_{2,2}}\\ {\stackrel{˙}{y}}_{{v}_{1,1}}& {\stackrel{˙}{y}}_{{v}_{1,2}}& {\stackrel{˙}{y}}_{{v}_{2,1}}& {\stackrel{˙}{y}}_{{v}_{2,2}}\\ {\stackrel{˙}{z}}_{{v}_{1,1}}& {\stackrel{˙}{z}}_{{v}_{1,2}}& {\stackrel{˙}{z}}_{{v}_{2,1}}& {\stackrel{˙}{z}}_{{v}_{2,2}}\end{array}\right]$`

WheelArray ElementAxleWheel NumberAxis
Front left`VehV(1,1)``1``1`Inertial-fixed x-axis
Front right`VehV(1,2)``1``2`
Rear left`VehV(1,3)``2``1`
Rear right`VehV(1,4)``2``2`
Front left`VehV(2,1)``1``1`Inertial-fixed y-axis
Front right`VehV(2,2)``1``2`
Rear left`VehV(2,3)``2``1`
Rear right`VehV(2,4)``2``2`
Front left`VehV(3,1)``1``1`Inertial-fixed z-axis
Front right`VehV(3,2)``1``2`
Rear left`VehV(3,3)``2``1`
Rear right`VehV(3,4)``2``2`

Optional steering angle for each wheel, δ. Input array dimensions are `1` by the number of steered wheels.

For example, for a two-axle vehicle with two wheels per axle, you can input steering angles for both wheels on the first axle.

• To enable the StrgAng port, set Steered axle enable by axle, StrgEnByAxl to `[1 0]`. The input signal array dimensions are `[1x2]`.

• The `StrgAng` signal contains two steering angles according to their axle and wheel locations.

`$\mathrm{StrgAng}={\delta }_{steer}=\left[\begin{array}{cc}{\delta }_{stee{r}_{1,1}}& {\delta }_{stee{r}_{1,2}}\end{array}\right]$`
WheelArray ElementAxleWheel Number
Front left`StrgAng(1,1)``1``1`
Front right`StrgAng(1,2)``1``2`

#### Dependencies

To enable the port StrgAng, set an element of the Steered axle enable by axle, StrgEnByAxl vector to `1`.

### Output

expand all

Bus signal containing block values. The signals are arrays that depend on the wheel location.

For example, these are the indices for a two-axle, two-wheel vehicle. The total number of wheels is four.

• 1D array signal (1-by-4)

Array ElementAxleWheel Number
`(1,1)``1``1`
`(1,2)``1``2`
`(1,3)``2``1`
`(1,4)``2``2`

• 3D array signal (3-by-4)

Array ElementAxleWheel Number
`(1,1)``1``1`
`(1,2)``1``2`
`(1,3)``2``1`
`(1,4)``2``2`
`(2,1)``1``1`
`(2,2)``1``2`
`(2,3)``2``1`
`(2,4)``2``2`
`(3,1)``1``1`
`(3,2)``1``2`
`(3,3)``2``1`
`(3,4)``2``2`

SignalDescriptionArray SignalVariableUnits
`Camber`

Wheel angles according to the axle.

1D

`$\mathrm{WhlAng}\left[1,...\right]=\xi =\left[{\xi }_{a,t}\right]$`

`Caster`
`$\mathrm{WhlAng}\left[2,...\right]=\eta =\left[{\eta }_{a,t}\right]$`
`Toe`
`$\mathrm{WhlAng}\left[3,...\right]=\zeta =\left[{\zeta }_{a,t}\right]$`
`Height`

Suspension height

1D

H

m

`Power`

Suspension power dissipation

1D

Psusp

W

`Energy`

Suspension absorbed energy

1D

Esusp

J

`VehF`

Suspension forces applied to the vehicle

3D

For a two-axle, two wheels per axle vehicle:

`$\mathrm{VehF}={F}_{v}=\left[\begin{array}{cccc}{F}_{v}{}_{{x}_{1,1}}& {F}_{v}{}_{{x}_{1,2}}& {F}_{v}{}_{{x}_{2,1}}& {F}_{v}{}_{{x}_{2,2}}\\ {F}_{v}{}_{{y}_{1,1}}& {F}_{v}{}_{{y}_{1,2}}& {F}_{v}{}_{{y}_{2,1}}& {F}_{v}{}_{{y}_{2,2}}\\ {F}_{v}{}_{{z}_{1,1}}& {F}_{v}{}_{{z}_{1,2}}& {F}_{v}{}_{{z}_{2,1}}& {F}_{v}{}_{{z}_{2,2}}\end{array}\right]$`

N

`VehM`

Suspension moments applied to vehicle

3D

For a two-axle, two wheels per axle vehicle:

`$\mathrm{VehM}={M}_{v}=\left[\begin{array}{cccc}{M}_{v{x}_{1,1}}& {M}_{v{x}_{1,2}}& {M}_{v{x}_{2,1}}& {M}_{v{x}_{2,2}}\\ {M}_{v{y}_{1,1}}& {M}_{v{y}_{1,2}}& {M}_{v{y}_{2,1}}& {M}_{v{y}_{2,2}}\\ {M}_{v{z}_{1,1}}& {M}_{v{z}_{1,2}}& {M}_{v{z}_{2,1}}& {M}_{v{z}_{2,2}}\end{array}\right]$`

N·m

`WhlF`

Suspension force applied to wheel

3D

For a two-axle, two wheels per axle vehicle:

`$\mathrm{WhlF}={F}_{w}=\left[\begin{array}{cccc}{F}_{w}{}_{{x}_{1,1}}& {F}_{w}{}_{{x}_{1,2}}& {F}_{w}{}_{{x}_{2,1}}& {F}_{w}{}_{{x}_{2,2}}\\ {F}_{w}{}_{{y}_{1,1}}& {F}_{w}{}_{{y}_{1,2}}& {F}_{w}{}_{{y}_{2,1}}& {F}_{w}{}_{{y}_{2,2}}\\ {F}_{w}{}_{{z}_{1,1}}& {F}_{w}{}_{{z}_{1,2}}& {F}_{w}{}_{{z}_{2,1}}& {F}_{w}{}_{{z}_{2,2}}\end{array}\right]$`

N

`WhlP`

Wheel displacement

3D

For a two-axle, two wheels per axle vehicle:

`$\mathrm{WhlP}=\left[\begin{array}{c}{x}_{w}\\ {y}_{w}\\ {z}_{w}\end{array}\right]=\left[\begin{array}{cccc}{x}_{w}{}_{{}_{1,1}}& {x}_{w}{}_{{}_{1,2}}& {x}_{w}{}_{{}_{2,1}}& {x}_{{w}_{2,2}}\\ {y}_{w}{}_{{}_{1,1}}& {y}_{w}{}_{{}_{1,2}}& {y}_{w}{}_{{}_{2,1}}& {y}_{w}{}_{{y}_{2,2}}\\ {z}_{wtr}{}_{{}_{1,1}}& {z}_{wtr}{}_{{}_{1,2}}& {z}_{wtr}{}_{{}_{2,1}}& {z}_{wt{r}_{2,2}}\end{array}\right]$`

m

`WhlV`

Wheel velocity

3D

For a two-axle, two wheels per axle vehicle:

`$\mathrm{WhlV}=\left[\begin{array}{c}{\stackrel{˙}{x}}_{w}\\ {\stackrel{˙}{y}}_{w}\\ {\stackrel{˙}{z}}_{w}\end{array}\right]=\left[\begin{array}{cccc}{\stackrel{˙}{x}}_{{w}_{1,1}}& {\stackrel{˙}{x}}_{{w}_{1,2}}& {\stackrel{˙}{x}}_{{w}_{2,1}}& {\stackrel{˙}{x}}_{{w}_{2,2}}\\ {\stackrel{˙}{y}}_{{w}_{{}_{1,1}}}& {\stackrel{˙}{y}}_{{w}_{1,2}}& {\stackrel{˙}{y}}_{{w}_{2,1}}& {\stackrel{˙}{y}}_{{w}_{2,2}}\\ {\stackrel{˙}{z}}_{{w}_{{}_{1,1}}}& {\stackrel{˙}{z}}_{{w}_{1,2}}& {\stackrel{˙}{z}}_{{w}_{2,1}}& {\stackrel{˙}{z}}_{{w}_{2,2}}\end{array}\right]$`

m/s

`WhlAng`

Wheel camber, caster, toe angles

3D

For a two-axle, two wheels per axle vehicle:

`$\mathrm{WhlAng}=\left[\begin{array}{c}\xi \\ \eta \\ \zeta \end{array}\right]=\left[\begin{array}{cccc}{\xi }_{1,1}& {\xi }_{1,2}& {\xi }_{2,1}& {\xi }_{2,2}\\ {\eta }_{1,1}& {\eta }_{1,2}& {\eta }_{2,1}& {\eta }_{2,2}\\ {\zeta }_{1,1}& {\zeta }_{1,2}& {\zeta }_{2,1}& {\zeta }_{2,2}\end{array}\right]$`

Longitudinal, lateral, and vertical suspension force at axle `a`, wheel `t`, applied to the vehicle at the suspension connection point, in N. Array dimensions are `3` by the number of wheels on the vehicle.

• `VehF(1,...)` — Suspension force applied to vehicle along the inertial-fixed x-axis (longitudinal)

• `VehF(2,...)` — Suspension force applied to vehicle along the inertial-fixed y-axis (lateral)

• `VehF(3,...)` — Suspension force applied to vehicle along the inertial-fixed z-axis (vertical)

For example, for a two-axle vehicle with two wheels per axle, the `VehF`:

• Signal dimensions are `[3x4]`.

• Signal contains suspension forces applied to the vehicle according to the axle and wheel locations.

`$\mathrm{VehF}={F}_{v}=\left[\begin{array}{cccc}{F}_{v}{}_{{x}_{1,1}}& {F}_{v}{}_{{x}_{1,2}}& {F}_{v}{}_{{x}_{2,1}}& {F}_{v}{}_{{x}_{2,2}}\\ {F}_{v}{}_{{y}_{1,1}}& {F}_{v}{}_{{y}_{1,2}}& {F}_{v}{}_{{y}_{2,1}}& {F}_{v}{}_{{y}_{2,2}}\\ {F}_{v}{}_{{z}_{1,1}}& {F}_{v}{}_{{z}_{1,2}}& {F}_{v}{}_{{z}_{2,1}}& {F}_{v}{}_{{z}_{2,2}}\end{array}\right]$`

WheelArray ElementAxleWheel NumberForce Axis
Front left`VehF(1,1)``1``1`Inertial-fixed x-axis (longitudinal)
Front right`VehF(1,2)``1``2`
Rear left`VehF(1,3)``2``1`
Rear right`VehF(1,4)``2``2`
Front left`VehF(2,1)``1``1`Inertial-fixed y-axis (lateral)
Front right`VehF(2,2)``1``2`
Rear left`VehF(2,3)``2``1`
Rear right`VehF(2,4)``2``2`
Front left`VehF(3,1)``1``1`Inertial-fixed z-axis (vertical)
Front right`VehF(3,2)``1``2`
Rear left`VehF(3,3)``2``1`
Rear right`VehF(3,4)``2``2`

Longitudinal, lateral, and vertical suspension moment at axle `a`, wheel `t`, applied to the vehicle at the suspension connection point, in N·m. Array dimensions are `3` by the number of wheels on the vehicle.

• `VehM(1,...)` — Suspension moment applied to the vehicle about the inertial-fixed x-axis (longitudinal)

• `VehM(2,...)` — Suspension moment applied to the vehicle about the inertial-fixed y-axis (lateral)

• `VehM(3,...)` — Suspension moment applied to the vehicle about the inertial-fixed z-axis (vertical)

For example, for a two-axle vehicle with two wheels per axle, the `VehM`:

• Signal dimensions are `[3x4]`.

• Signal contains suspension moments applied to vehicle according to the axle and wheel locations.

`$\mathrm{VehM}={M}_{v}=\left[\begin{array}{cccc}{M}_{v{x}_{1,1}}& {M}_{v{x}_{1,2}}& {M}_{v{x}_{2,1}}& {M}_{v{x}_{2,2}}\\ {M}_{v{y}_{1,1}}& {M}_{v{y}_{1,2}}& {M}_{v{y}_{2,1}}& {M}_{v{y}_{2,2}}\\ {M}_{v{z}_{1,1}}& {M}_{v{z}_{1,2}}& {M}_{v{z}_{2,1}}& {M}_{v{z}_{2,2}}\end{array}\right]$`

Array ElementAxleWheel NumberMoment Axis
`VehM(1,1)``1``1`Inertial-fixed x-axis (longitudinal)
`VehM(1,2)``1``2`
`VehM(1,3)``2``1`
`VehM(1,4)``2``2`
`VehM(2,1)``1``1`Inertial-fixed y-axis (lateral)
`VehM(2,2)``1``2`
`VehM(2,3)``2``1`
`VehM(2,4)``2``2`
`VehM(3,1)``1``1`Inertial-fixed z-axis (vertical)
`VehM(3,2)``1``2`
`VehM(3,3)``2``1`
`VehM(3,4)``2``2`

Longitudinal, lateral, and vertical suspension forces at axle `a`, wheel `t`, applied to the wheel at the axle wheel carrier reference coordinate, in N. Array dimensions are `3` by the number of wheels on the vehicle.

• `WhlF(1,...)` — Suspension force on wheel along the inertial-fixed x-axis (longitudinal)

• `WhlF(2,...)` — Suspension force on wheel along the inertial-fixed y-axis (lateral)

• `WhlF(3,...)` — Suspension force on wheel along the inertial-fixed z-axis (vertical)

For example, for a two-axle vehicle with two wheels per axle, the `WhlF`:

• Signal dimensions are `[3x4]`.

• Signal contains wheel forces applied to the vehicle according to the axle and wheel locations.

`$\mathrm{WhlF}={F}_{w}=\left[\begin{array}{cccc}{F}_{w}{}_{{x}_{1,1}}& {F}_{w}{}_{{x}_{1,2}}& {F}_{w}{}_{{x}_{2,1}}& {F}_{w}{}_{{x}_{2,2}}\\ {F}_{w}{}_{{y}_{1,1}}& {F}_{w}{}_{{y}_{1,2}}& {F}_{w}{}_{{y}_{2,1}}& {F}_{w}{}_{{y}_{2,2}}\\ {F}_{w}{}_{{z}_{1,1}}& {F}_{w}{}_{{z}_{1,2}}& {F}_{w}{}_{{z}_{2,1}}& {F}_{w}{}_{{z}_{2,2}}\end{array}\right]$`

WheelArray ElementAxleWheel NumberForce Axis
Front left`WhlF(1,1)``1``1`Inertial-fixed x-axis (longitudinal)
Front right`WhlF(1,2)``1``2`
Rear left`WhlF(1,3)``2``1`
Rear right`WhlF(1,4)``2``2`
Front left`WhlF(2,1)``1``1`Inertial-fixed y-axis (lateral)
Front right`WhlF(2,2)``1``2`
Rear left`WhlF(2,3)``2``1`
Rear right`WhlF(2,4)``2``2`
Front left`WhlF(3,1)``1``1`Inertial-fixed z-axis (vertical)
Front right`WhlF(3,2)``1``2`
Rear left`WhlF(3,3)``2``1`
Rear right`WhlF(3,4)``2``2`

Longitudinal, lateral, and vertical wheel velocity at axle `a`, wheel `t`, in m/s. Array dimensions are `3` by the number of wheels on the vehicle.

• `WhlV(1,...)` — Wheel velocity along the inertial-fixed x-axis (longitudinal)

• `WhlV(2,...)` — Wheel velocity along the inertial-fixed y-axis (lateral)

• `WhlV(3,...)` — Wheel velocity along the inertial-fixed z-axis (vertical)

For example, for a two-axle vehicle with two wheels per axle, the `WhlV`:

• Signal dimensions are `[3x4]`.

• Signal contains wheel forces applied to the vehicle according to the axle and wheel locations.

`$\mathrm{WhlV}=\left[\begin{array}{c}{\stackrel{˙}{x}}_{w}\\ {\stackrel{˙}{y}}_{w}\\ {\stackrel{˙}{z}}_{w}\end{array}\right]=\left[\begin{array}{cccc}{\stackrel{˙}{x}}_{{w}_{1,1}}& {\stackrel{˙}{x}}_{{w}_{1,2}}& {\stackrel{˙}{x}}_{{w}_{2,1}}& {\stackrel{˙}{x}}_{{w}_{2,2}}\\ {\stackrel{˙}{y}}_{{w}_{{}_{1,1}}}& {\stackrel{˙}{y}}_{{w}_{1,2}}& {\stackrel{˙}{y}}_{{w}_{2,1}}& {\stackrel{˙}{y}}_{{w}_{2,2}}\\ {\stackrel{˙}{z}}_{{w}_{{}_{1,1}}}& {\stackrel{˙}{z}}_{{w}_{1,2}}& {\stackrel{˙}{z}}_{{w}_{2,1}}& {\stackrel{˙}{z}}_{{w}_{2,2}}\end{array}\right]$`

WheelArray ElementAxleWheel NumberForce Axis
Front left`WhlV(1,1)``1``1`Inertial-fixed x-axis (longitudinal)
Front right`WhlV(1,2)``1``2`
Rear left`WhlV(1,3)``2``1`
Rear right`WhlV(1,4)``2``2`
Front left`WhlV(2,1)``1``1`Inertial-fixed y-axis (lateral)
Front right`WhlV(2,2)``1``2`
Rear left`WhlV(2,3)``2``1`
Rear right`WhlV(2,4)``2``2`
Front left`WhlV(3,1)``1``1`Inertial-fixed z-axis (vertical)
Front right`WhlV(3,2)``1``2`
Rear left`WhlV(3,3)``2``1`
Rear right`WhlV(3,4)``2``2`

Camber, caster, and toe angles at axle `a`, wheel `t`, in rad. Array dimensions are `3` by the number of wheels on the vehicle.

• `WhlAng(1,...)` — Camber angle

• `WhlAng(2,...)` — Caster angle

• `WhlAng(3,...)` — Toe angle

For example, for a two-axle vehicle with two wheels per axle, the `WhlAng`:

• Signal dimensions are `[3x4]`.

• Signal contains angles according to the axle and wheel locations.

`$\mathrm{WhlAng}=\left[\begin{array}{c}\xi \\ \eta \\ \zeta \end{array}\right]=\left[\begin{array}{cccc}{\xi }_{1,1}& {\xi }_{1,2}& {\xi }_{2,1}& {\xi }_{2,2}\\ {\eta }_{1,1}& {\eta }_{1,2}& {\eta }_{2,1}& {\eta }_{2,2}\\ {\zeta }_{1,1}& {\zeta }_{1,2}& {\zeta }_{2,1}& {\zeta }_{2,2}\end{array}\right]$`

WheelArray ElementAxleWheel NumberAngle
Front left`WhlAng(1,1)``1``1`

Camber

Front right`WhlAng(1,2)``1``2`
Rear left`WhlAng(1,3)``2``1`
Rear right`WhlAng(1,4)``2``2`
Front left`WhlAng(2,1)``1``1`

Caster

Front right`WhlAng(2,2)``1``2`
Rear left`WhlAng(2,3)``2``1`
Rear right`WhlAng(2,4)``2``2`
Front left`WhlAng(3,1)``1``1`

Toe

Front right`WhlF(3,2)``1``2`
Rear left`WhlF(3,3)``2``1`
Rear right`WhlF(3,4)``2``2`

## Parameters

expand all

### Axles

Number of axles, Na, dimensionless.

Number of wheels per axle, Nta, dimensionless. Vector is `1` by the number of vehicle axles, Na. For example, `[1,2]` represents one wheel on axle one and two wheels on axle two.

Boolean vector that enables axle steering, Ensteer, dimensionless. Vector is `1` by the number of vehicle axles, Na. For example:

• `[1 0]`—For a two-axle vehicle, enables axle one steering and disables axle two steering

• `[1 1]`—For a two-axle vehicle, enables axle one and axle two steering

#### Dependencies

Setting an element of the Steered axle enable by axle, StrgEnByAxl vector to 1:

• Creates input port `StrgAng`.

• Creates these parameters

• Toe angle vs steering angle slope, ToeStrgSlp

• Caster angle vs steering angle slope, CasterStrgSlp

• Camber angle vs steering angle slope, CamberStrgSlp

• Suspension height vs steering angle slope, StrgHgtSlp

For example, for a two-axle vehicle with two wheels per axle, you can input steering angles for both wheels on the first axle.

• To enable the StrgAng port, set Steered axle enable by axle, StrgEnByAxl to `[1 0]`. The input signal array dimensions are `[1x2]`.

• The `StrgAng` signal contains two steering angles according to their axle and wheel locations.

`$\mathrm{StrgAng}={\delta }_{steer}=\left[\begin{array}{cc}{\delta }_{stee{r}_{1,1}}& {\delta }_{stee{r}_{1,2}}\end{array}\right]$`
WheelArray ElementAxleWheel Number
Front left`StrgAng(1,1)``1``1`
Front right`StrgAng(1,2)``1``2`

Axle and wheels lumped principal moments of inertia about longitudinal axis, AxleIxx a, in kg*m^2.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Axle and wheels lumped mass, a, in kg.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Track hardpoint coordinates, Tct, along the solid axle x, y, and z-axes, in m.

For example, for a two-axle vehicle with two wheels per axle, the `TrackCoords` array:

• Dimensions are `[3x4]`.

• Contains four track hardpoint coordinates according to their axle and wheel locations.

`$T{c}_{t}=\left[\begin{array}{cccc}{x}_{{w}_{1,1}}& {x}_{{w}_{1,2}}& {x}_{{w}_{2,1}}& {x}_{{w}_{2,2}}\\ {y}_{{w}_{1,1}}& {y}_{{w}_{1,2}}& {y}_{{w}_{2,1}}& {y}_{{w}_{2,2}}\\ {z}_{{w}_{1,1}}& {z}_{{w}_{1,2}}& {z}_{{w}_{2,1}}& {z}_{{w}_{2,2}}\end{array}\right]$`

Array ElementAxleWheel NumberAxis
`TrackCoords(1,1)``1``1`Solid axle x-axis
`TrackCoords(1,2)``1``2`
`TrackCoords(1,3)``2``1`
`TrackCoords(1,4)``2``2`
`TrackCoords(2,1)``1``1`Solid axle y-axis
`TrackCoords(2,2)``1``2`
`TrackCoords(2,3)``2``1`
`TrackCoords(2,4)``2``2`
`TrackCoords(3,1)``1``1`Solid axle z-axis
`TrackCoords(3,2)``1``2`
`TrackCoords(3,3)``2``1`
`TrackCoords(3,4)``2``2`

Suspension hardpoint coordinates, Sct, along the solid axle x-, y-, and z-axes, in m.

For example, for a two-axle vehicle with two wheels per axle, the `SuspCoords` array:

• Dimensions are `[3x4]`.

• Contains four track hardpoint coordinates according to their axle and track locations.

`$S{c}_{t}=\left[\begin{array}{cccc}{x}_{{s}_{1,1}}& {x}_{{s}_{1,2}}& {x}_{{s}_{2,1}}& {x}_{{s}_{2,2}}\\ {y}_{{s}_{1,1}}& {y}_{{s}_{1,2}}& {y}_{{s}_{2,1}}& {y}_{{s}_{2,2}}\\ {z}_{{s}_{1,1}}& {z}_{{s}_{1,2}}& {z}_{{s}_{2,1}}& {z}_{{s}_{2,2}}\end{array}\right]$`

Array ElementAxleTrackAxis
`SuspCoords(1,1)``1``1`Solid axle x-axis
`SuspCoords(1,2)``1``2`
`SuspCoords(1,3)``2``1`
`SuspCoords(1,4)``2``2`
`SuspCoords(2,1)``1``1`Solid axle y-axis
`SuspCoords(2,2)``1``2`
`SuspCoords(2,3)``2``1`
`SuspCoords(2,4)``2``2`
`SuspCoords(3,1)``1``1`Solid axle z-axis
`SuspCoords(3,2)``1``2`
`SuspCoords(3,3)``2``1`
`SuspCoords(3,4)``2``2`

Wheel and axle interface compliance constant, kwaz, in N/m.

Wheel and axle interface compliance preload, Fwaz0, in N.

Wheel and axle interface damping constant, cwaz, in m.

### Suspension

Compliance and Damping - Passive

Linear vertical spring constant for independent suspension wheels on axle a, kza, in N/m.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Vertical preload spring force applied to the wheels on the axle at wheel carrier reference coordinates, Fz0a, in N. Positive preload forces:

• Cause the vehicle to lift.

• Point along the negative inertial-fixed z-axis.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Linear vertical damping constant for independent suspension wheels on axle a, cza, in Ns/m.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

#### Dependencies

To create this parameter, clear .

Maximum suspension extension or minimum suspension compression height, Hmax, for axle `a` before the suspension reaches a hardstop, in m.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Geometry

Nominal suspension toe angle at zero steering angle, ζ0a, in rad.

Roll steer angle versus suspension height, mhtoea, in rad/m.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Toe angle versus steering angle slope, mtoesteera, dimensionless.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

#### Dependencies

To enable the port StrgAng, set an element of the Steered axle enable by axle, StrgEnByAxl vector to `1`.

Nominal suspension caster angle at zero steering angle, η0a, in rad.

Caster angle versus suspension height, mhcastera, in rad/m.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Caster angle versus steering angle slope, mcastersteera, dimensionless.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

#### Dependencies

To enable the port StrgAng, set an element of the Steered axle enable by axle, StrgEnByAxl vector to `1`.

Nominal suspension camber angle at zero steering angle, ξ0a, in rad.

Camber angle versus suspension height, mhcambera, in rad/m.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

Camber angle versus steering angle slope, mcambersteera, dimensionless.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

#### Dependencies

To enable the port StrgAng, set an element of the Steered axle enable by axle, StrgEnByAxl vector to `1`.

Steering angle to vertical force slope applied at suspension wheel carrier reference point, mhsteera, in m/rad.

Vector is `1` by the number of vehicle axles, Na. If you provide a scalar value, the block uses that value for all axles.

#### Dependencies

To enable the port StrgAng, set an element of the Steered axle enable by axle, StrgEnByAxl vector to `1`.

## References

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

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

[3] Technical Committee. Road vehicles — Vehicle dynamics and road-holding ability — Vocabulary. ISO 8855:2011. Geneva, Switzerland: International Organization for Standardization, 2011.

## Version History

Introduced in R2018a

expand all