Main Content

Transmission

R2026b

Abstract transmission for system-level driveline modeling

Since R2022a

Libraries:
Simscape / Driveline / Gears

Description

The Transmission block represents an abstract transmission for system-level driveline models. The block accepts the gear ratio command as a physical signal to port G, where 0 represents neutral, -1 represents reverse, and the values in the Forward gear ratios parameter represent the forward gears. The length of this vector corresponds to the number of forward gears. The block rounds the input values to integers. The transmission is non-sequential, which allows you to transition between any two gear ratios without having to stop at the intermediate ratios. For the block to behave like a sequential transmission, you must specify each gear ratio in the sequence.

The Transmission block is a composite of two blocks. The block uses a subcomponent implementation of the Variable Ratio Transmission block to simulate the transmission gear ratio dynamics, and the block simulates abstracted clutch dynamics using the Logic-Controlled Clutch block. To learn more, see About Composite Components.

Thermal Model

You can model the effects of heat flow and temperature change by enabling the optional thermal port. To enable the port, set Thermal port to Model.

Ports

Input

expand all

Physical input signal associated with the gear selection. An input of where 0 represents neutral, -1 represents reverse, and the values in the Forward gear ratios parameter represent the forward gears. The block saturates the signal from -1 to the length of the Forward gear ratios parameter.

Programmatic Use

Port: G

Conserving

expand all

Mechanical rotational conserving port associated with the base interface.

Programmatic Use

Port: B

Mechanical rotational conserving port associated with the follower interface.

Programmatic Use

Port: F

Thermal conserving port associated with heat flow.

Dependencies

To enable this port, set Thermal port to Model.

Programmatic Use

Port: H

Parameters

expand all

Gears

Ordered vector of transmission gear ratios. The block uses the position of each element in the vector to assign that element to a given input signal. You can parameterize an arbitrary number of gear ratios.

Programmatic Use

Parameter: gear_ratios

Gear ratio of the reverse gear.

Dependencies

To enable this parameter, set Friction model to Gear-dependent efficiency.

Programmatic Use

Parameter: reverse_ratio

Friction model for the block:

  • No meshing losses - Suitable for HIL simulation — Gear meshing is ideal.

  • Constant efficiency — The block reduces torque transfer between all of the gear wheel pairs according to the Efficiency parameter.

  • Gear-dependent efficiency — The block defines torque transfer between the gear wheel pairs according to the Efficiency vector parameter.

Programmatic Use

Parameter: friction_model
Values: "sdl.enum.transmissionFriction.constant" | "sdl.enum.transmissionFriction.gear" | "sdl.enum.transmissionFriction.none"

Efficiency that the block applies to all gear ratios.

Dependencies

To enable this parameter, set Friction model to Constant efficiency.

Programmatic Use

Parameter: efficiency

Gear-dependent efficiency where each element corresponds to a gear ratio in the Forward gear ratios parameter.

Dependencies

To enable this parameter, set Friction model to Gear-dependent efficiency.

Programmatic Use

Parameter: efficiency_tlu

Efficiency that the block applies to the reverse gear.

Programmatic Use

Parameter: reverse_efficiency

Absolute power at which the block applies the full efficiency to the follower.

Dependencies

To enable this parameter, set Friction model to Constant efficiency or Gear-dependent efficiency.

Programmatic Use

Parameter: pwr_thr

Reciprocal of the transmission angular compliance measured at the base.

Programmatic Use

Parameter: kp

Reciprocal of the transmission angular compliance damping measured at the base.

Programmatic Use

Parameter: kv

Torque applied at the base shaft at the start of simulation.

Programmatic Use

Parameter: initial_torque

Vector of viscous damping coefficients applied at the base and follower shafts, respectively.

Programmatic Use

Parameter: mu_visc

Clutch

Minimum torque threshold to maintain relative motion between the clutch plates.

Programmatic Use

Parameter: t_friction

Minimum torque threshold to cause relative motion between the clutch plates.

Programmatic Use

Parameter: t_locked

Whether the block completes gear shifts instantaneously or transitions into neutral for a finite amount of time between gears.

Programmatic Use

Parameter: shift_model
Values: "sdl.enum.transmissionShiftModel.instant" | "sdl.enum.transmissionShiftModel.finite"

Time to complete a gear shift. The transmission remains in neutral during this time.

Dependencies

To enable this parameter, set Shift model to Finite shift time

Programmatic Use

Parameter: shift_time

Clutch minimum angular velocity.

Programmatic Use

Parameter: w_tol

Option to start the simulation with the clutch unlocked or locked.

Programmatic Use

Parameter: initial_state_locked
Values: "sdl.enum.initial_lock.unlocked" | "sdl.enum.initial_lock.locked"

Thermal Port

Whether to expose the thermal port and associated parameters.

Programmatic Use

Parameter: thermal_port
Values: "simscape.enum.thermaleffects.omit" | "simscape.enum.thermaleffects.model"

Thermal energy required to change the component temperature by a single temperature unit. The greater the thermal mass, the more resistant the component is to temperature change.

Dependencies

To enable this parameter, set Thermal port to Model.

Programmatic Use

Parameter: thermal_mass

Initial transmission temperature when modeling heat flow and temperature change.

Dependencies

To enable this parameter, set Thermal port to Model.

Programmatic Use

Parameter: initial_temperature

Extended Capabilities

expand all

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

Version History

Introduced in R2022a