Documentation

Enable

Add enable port to subsystem or model

  • Library:
  • Ports & Subsystems

Description

The Enable block allows an external signal to control execution of a subsystem or a model. To enable this functionality, add the block to a Subsystem block or at the root level of a model that is referenced in a Model block.

If you use an enable port at the root-level of a model:

  • For multi-rate models, set the solver to single-tasking.

  • For models with a fixed-step size, at least one block in the model must run at the specified fixed-step size rate.

Ports

Output

expand all

Enable signal attached externally to the outside of an Enable Subsystem block and passed to the inside of the subsystem. An enable signal port is added to an Enable block when you select the Show output port parameter.

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | expression

Parameters

expand all

When a Subsystem block or Model block is disabled, select what happens to block states for the blocks within the subsystem or model.

held

Hold block states at their previous values.

reset

Reset block states to their initial conditions (zero if not defined).

Programmatic Use

Block parameter: StatesWhenEnabling
Type: character vector
Value: 'held' | 'reset'
Default: 'held'

Select when to propagate a variable-size signal.

Only when enabling

Propagate a variable-size signal when reenabling a Subsystem block or Model block containing an Enable port block. When you select this option, sample time must be periodic.

During execution

Propagate variable-size signals at each time step.

Programmatic Use

Block parameter: PropagateVarSize
Type: character vector
Value: 'Only when enabling' | 'During execution'
Default: 'Only when enabling'

The output port passes the enable signal attached externally to the outside of an Enable Subsystem block or enabled Model block to the inside.

off

Remove the output port on the Enable port block.

on

Display an output port on the Enable port block. Selecting this option allows the subsystem or model to process the enable signal.

Programmatic Use

Block parameter: ShowOutputPort
Type: character vector
Value: 'off' | 'on'
Default: 'off'

Control zero-crossing detection for a model.

on

Detect zero crossings.

off

Do not detect zero crossings.

Programmatic Use

Block parameter: ZeroCross
Type: character vector
Value: 'on' | 'off'
Default: 'on'

Specify dimensions for the enable signal attached externally to a Model block and passed to the inside of the block.

1

Scalar signal.

[n]

Vector signal of width n.

[m n]

Matrix signal having m rows and n columns.

Programmatic Use

Block parameter: PortDimensions
Type: character vector
Value: '1' | '[n]' | '[m n]'
Default: '1'

Specify time interval between block method execution. See Specify Sample Time.

-1

Sample time inherited from the model.

Ts

Scalar where Ts is the time interval.

[Ts, To]

Vector where Ts is the time interval and To is the initial time offset.

Programmatic Use

Block parameter: SampleTime
Type: character vector
Value: '-1' | 'Ts'| '[Ts, To]'
Default: '-1'

Specify minimum value for the enable signal attached externally to a Model block and passed to the inside of the block.

Simulink® uses this value to perform:

[]

Unspecified minimum value.

real scalar

Real double scalar value.

Programmatic Use

Block parameter: OutMin
Type: character vector
Value: '[]' | '<real scalar>'
Default: '[]'

Specify maximum value for the enable signal attached externally to a Model block and passed to the inside of the block.

Simulink uses this value to perform:

[]

Unspecified maximum value.

real scalar

Real double scalar value.

Programmatic Use

Block parameter: OutMax
Type: character vector
Value: '[]' | '<real scalar>'
Default: '[]'

Specify data type for the enable signal attached externally to a Model block and passed to the inside of the block.

double

Double-precision floating point.

single

Single-precision floating point.

int8

Signed 8-bit integer.

uint8

Unsigned 8-bit integer.

int16

Signed 16-bit integer.

uint16

Unsigned 16-bit integer.

int32

Signed 32-bit integer.

uint32

Unsigned 32-bit integer.

boolean

Boolean with a value of true or false.

fixdt(1,16)

Signed 16-bit fixed point number with binary point undefined.

fixdt(1,16,0)

Signed 16-bit fixed point number with binary point set to zero.

fixdt(1,16,2^,0)

Signed 16-bit fixed point number with slope set to 2^0 and bias set to 0.

<data type expression>

Data type object, for example Simulink.NumericType. Do not specify a bus object as the expression.

Programmatic Use

b

Block parameter: OutDataTypeStr
Type: character vector
Value: 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'boolean' | '<fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>'
Default: 'double'

Select data type category and display drop-down lists to help you define the data type.

Build in

Display drop-down lists for data type and Data type override.

Fixed point

Display drop-down lists for Signedness, Scaling, and Data type override.

Expression

Display text box for entering an expression.

Dependency

To enable this parameter, select the Show data type assistant button.

Programmatic Use

No equivalent command-line parameter.

Specify value of missing workspace data when loading data from the workspace.

on

Linearly Interpolate output at time steps for which no corresponding workspace data exists.

off

Do not interpolate output at time steps. The current output equals the output at the most recent time step for which data exists.

Programmatic Use

Block parameter: Interpolate
Type: character vector
Value: 'on' | 'off'
Default: 'on'

Introduced before R2006a

Was this topic helpful?