Main Content

Lamp

Display color that reflects signal value on lamp with customizable appearance

  • Library:
  • Simulink / Dashboard / Customizable Blocks

  • Lamp block

Description

The Lamp block displays a color that reflects the value of the connected signal. To configure the Lamp block to provide the information you need during simulation, specify one or more states, which pair a signal value with a color for the Lamp block to display. When you use the Lamp block in the Customizable Blocks library, you can modify the appearance of the block so it looks like a real indicator lamp in your system. Use the Lamp block with other dashboard blocks to build an interactive dashboard of controls and indicators for your model.

Customize Lamp Blocks

When you add a Lamp block to your model, the block is preconfigured with a default design. You can use the block with the default design or customize the appearance of the block. When you design a custom Lamp block, you can:

  • Select a shape for the region that changes color to reflect the value of the connected signal.

  • Select an icon from a built-in set of shapes, wireless icons, and automotive indicator lamps or upload your own custom icon.

  • Specify how to combine the shape and the icon.

    • Simple — Overlay the icon on top of the shape.

    • Intersect — Retain the intersection of the shape and icon as the area that changes color to reflect the signal value.

    • Subtract — Subtract the icon from the shape, producing a cut out in the shape of the icon in the area that changes color to reflect the signal value.

    Three Lamp blocks, each configured for one of the three ways you can combine the shape and icon: simple, intersect, or subtract.

    Note

    The intersect and subtract combination styles use transparency in the icon asset to produce the area that changes color. When you design a Lamp block that uses a custom icon, consider using an SVG or PNG file for the icon if you want your design to use the intersect or subtract options. Both formats support transparency, and SVG files also scale well in response to zoom operations.

  • Upload a background image or specify a background color to provide a background for the shape and icon.

  • Upload a foreground image that overlays the rest of the lamp design.

To customize the appearance of the block, use design mode. You can enter design mode in one of three ways after selecting the block:

  • On the Lamp tab, under Design, click Edit.

  • In the Property Inspector, on the Design tab, click Edit Design.

  • Pause on the ellipsis that appears above the block and click the Edit Custom Block button.

Design mode gives you access to block parameters and settings that allow you to customize the appearance of the block. You can use the toolbar above the block to change the icon and how the icon combines with the shape. To select a shape, background image or color, and foreground image, use the Design tab in the Property Inspector.

Lamp block in design mode with the toolbar and the Design tab in the Property Inspector.

When you finish designing the lamp, click Exit in the upper-right of the canvas to exit design mode.

Connect Dashboard Blocks

Dashboard blocks do not use ports to connect to model elements. To connect dashboard blocks to signals in your model, use connect mode. Connect mode facilitates the process of connecting dashboard blocks in your model, especially when you want to connect multiple blocks at once. To connect a single dashboard block, you can also use the Connection table in the block dialog box.

Tip

You can modify dashboard block connections during normal and accelerator mode simulations.

To enter connect mode, select a dashboard block to connect. Then, on the block tab, click Connect. In connect mode, when you select one or more signals or blocks, a list of signals that are available for connection appears. Select a signal from the list to connect to the selected dashboard block. To connect another dashboard block, pause on the block you want to connect and click the Connect button above it. Then, select one or more signals and blocks in the model and choose a signal to connect.

When you finish connecting the dashboard blocks in your model, on the block tab, click Done Connecting.

Tip

You can hide the message shown on unconnected blocks using the set_param function with the ShowInitialText block parameter. The message also disappears when you connect the block.

Limitations

  • Except for the Dashboard Scope block and the Display block, dashboard blocks can only connect to real scalar signals.

  • The toolstrip does not support blocks that are inside a panel.

  • You cannot use the Connection table in the block dialog to connect a dashboard block to a block that is commented out. When you connect a dashboard block to a commented block using connect mode, the dashboard block does not display the connected value until the you uncomment the block.

  • Dashboard blocks cannot connect to model elements inside referenced models.

  • When you simulate a model hierarchy, dashboard blocks inside referenced models do not update.

  • Dashboard blocks do not support rapid accelerator simulation.

  • You cannot connect a dashboard block to data or activity in Stateflow® during simulation.

  • Some signals do not have data available during simulation due to block reduction or optimization for accelerator mode simulations. To view such a signal using a dashboard block, mark the signal for logging.

Parameters

expand all

Use the connection table to select the signal to connect to the block. To connect the block to a signal:

  1. Make a selection in the model that includes one or more signals.

  2. In the table, select the signal you want to connect.

  3. Click Apply.

Tip

You can connect dashboard blocks to signals in the model during simulation.

Programmatic Use

Block Parameter: Binding
Type: Simulink.HMI.SignalSpecification
Default: []

States match a display color to the value of the connected signal. Each state consists of a State and a Color.

  • State — Connected signal value that causes the Lamp block to display the specified color.

  • Color — Lamp color when the connected signal value matches the corresponding State value. You can select from a palette of standard colors or specify a custom color with RGB values.

The [undefined] state specifies the color of the Lamp block when the connected signal value does not match any of the values specified in the States table. Click the + button to add another state.

Programmatic Use

To programmatically specify the State and Color parameter values for a Lamp block, use an array of structures that contain these fields:

  • Value — Scalar double signal value that causes the Lamp block to display the specified color indication.

  • Color1-by-3 [r g b] vector with values between 0 and 1 that specifies the color for the Lamp block to display.

lampState1.Value = 1;
lampState1.Color = [0 0 1];
lampState2.Value = 2;
lampState2.Color = [1 0 0];
lampStates = [lampState1 lampState2];
Block Parameter: StateColors
Type: structure array
Default: structure

The ColorDefault parameter specifies the color for the Lamp block when the value of the connected signal does not match any of the specified state values. Specify the ColorDefault parameter as a 1-by-3 [r g b] vector with values between 0 and 1.

Block Parameter: ColorDefault
Type: [r g b] vector
Default: [0.7529 0.7529 0.7529]

Position of the block label. When the block is connected to an element in the model, the label is the name of the connected element.

Programmatic Use

Block Parameter: LabelPosition
Type: character vector
Values: 'Top' | 'Bottom' | 'Hide'
Default: 'Top'

Whether to maintain the block aspect ratio when resizing the block and when you specify a new background image.

Block Characteristics

Data Types

Boolean | double | enumerated | fixed point | half | integer | single

Direct Feedthrough

no

Multidimensional Signals

no

Variable-Size Signals

no

Zero-Crossing Detection

no

Extended Capabilities

Introduced in R2021b