Using LabVIEW VIs as Models (Model Interface Toolkit)

LabVIEW 2017 Model Interface Toolkit Help

Edition Date: May 2017

Part Number: 374160C-01

»View Product Info
Download Help (Windows Only)

You can convert other LabVIEW VIs into compiled .lvmodel or .lvmodelso files that the Model Interface API can run. This might be useful if you want to distribute the .lvmodel or .lvmodelso to other users to work with in the Model Interface Toolkit or NI VeriStand systems. You can convert LabVIEW VIs, or convert simulation subsystems you create using the LabVIEW Control Design and Simulation Module. The following sections describe how the Model Interface API supports these models.

Note  You must install additional software to enable LabVIEW models for targets running a Linux Real-Time OS (.lvmodelso files). For more information about how to use LabVIEW models with Linux, visit the NI website.

Verifying That LabVIEW Model Support is installed

Before you can compile models in LabVIEW, you must install the LabVIEW Model Support feature, available on the NI VeriStand DVD you receive with your purchase. More information.

Verifying Support for Your Hardware Target

Before you convert a LabVIEW VI into a compiled .lvmodel or .lvmodelso, answer the following questions to determine whether your target supports these models:

  1. Do you want to run the model on a Windows computer or an RT target?
    • (Windows)—Windows targets support .lvmodel files. You can skip the remaining questions.
    • (RT)—Support depends on the real-time operating system (RTOS) the target runs. Continue to the next question.
  2. What RTOS does my RT target run?

    Refer to the KnowledgeBase at for a list of RT targets and the RTOS that each runs, and then continue to the next question.
  3. Given the RTOS my target runs, are.lvmodel or .lvmodelso files supported?
    • (Phar Lap ETS).lvmodel files are supported as long as the source VI does not contain code with certain Windows function calls that are not supported by the RTOS.
    • (NI Linux Real-Time).lvmodelso files are supported as long as the source VI does not contain code with certain Windows function calls that are not supported by the RTOS.
    • (VxWorks)—Neither .lvmodel or .lvmodelso files are supported.

Preparing VIs to be Converted to Models

In the source VI to be compiled, you must assign front panel controls and indicators in VIs to the connector pane so the Model Interface API can identify them as inports, outports, and parameters when it loads the compiled .lvmodel or .lvmodelso. Build the VI connector pane according to how you want each control or indicator to work NI VeriStand, as the following table describes.

Desired component in test application VI connector pane assignment Is default value maintained?
Inport Required input No
Outport Any output No
Parameter Optional or Recommended input Yes

Supported Data Types

Ensure that front panel controls or indicators assigned to the VI connector pane have only the following data types:

  • Numerics
  • Booleans
  • 1D arrays of numerics
  • 1D arrays of Booleans
  • Clusters containing the previous data types

If you use an unsupported data type, LabVIEW returns an error when you try to convert the VI to a compiled .lvmodel or .lvmodelso. Note controls and indicators not assigned to the connector pane can have other data types because these objects are not part of the compiled model.

Related Links

Assigning Terminals to Controls and Indicators

Setting Required, Recommended, and Optional Inputs and Outputs

Configuring Global and Local Parameters

A compiled .lvmodel or .lvmodelso can contain two types of parameters, global parameters and block parameters:

  • Local, or block, parameters apply only to the specific model to which they belong. If you want a front panel control in the source VI to become a local parameter, place that control in a cluster shell before you compile the VI into a .lvmodel or .lvmodelso. You can identify local parameters as those whose paths are in the form of Model Name/Cluster Name/Parameter Name.
  • A global parameter applies to any model in the system that contains a parameter with the same name. To ensure a front panel control in the source VI becomes a global parameter in NI VeriStand, do not place that control in a cluster. You can identify global parameters as those whose paths are in the form of Model Name/Parameter Name.
Tip  To determine whether a parameter is global or block based on its path, use the Get Paths VI to return the paths of model parameters in a model.

A .lvmodel or .lvmodelso can contain both local and global parameters.

Considerations for VIs with Array Terminals

If a VI contains an array control or indicator you want to include in the .lvmodel or .lvmodelso, enter a value in the nth element of the array, where n is the desired number of elements. Then, right-click the array control and select Data Operations»Make Current Value Default. Otherwise, the array becomes a single scalar value when the Model Interface API loads the model.

Related Links

Generating Compiled Models from VIs

Compiling Models Overview Purchase the Control Design and Simulation Module


Not Helpful