Using LabVIEW VIs as Models
- Updated2025-10-15
- 3 minute(s) read
Before you can compile models in LabVIEW, you must install the LabVIEW Model Support feature, available on the 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:
-
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.
- What RTOS does my RT target run?Refer to the KnowledgeBase at ni.com for a list of RT targets and the RTOS that each runs, and then continue to the next question.
- Given the RTOS my target runs,
are.lvmodel or .lvmodelso files
supported?
- (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.
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 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 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.
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.