From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
To download NI software, including the products shown below, visit ni.com/downloads.
This example demonstrates the following TestStand concepts:
In many test applications, it can be useful to implement a status monitor application which runs in parallel to the test. This application can be used to display information about the current test, or send data to the test sequence throughout synchronization objects. This approach is best suited to monitoring applications that are specific to a single test. If the functionality of the status monitor applies more generally to all tests, consider instead implementing the functionality in a TestStand User Interface, and using TestStand UI Messages to communicate data.
This example demonstrates how to access TestStand queue and notification objects directly from a LabVIEW VI. This approach is more effective than directly accessing the sequenceContext from the monitoring application, because it prevents dependencies between the monitoring application and the sequence. Since each creates a separate reference to the synchronization object, neither application is dependent on properties existing in the other application. TestStand notifiers can be created, accessed, and controlled in LabVIEW using the Synchronization Server API.
This example provides wrapper VIs for the this API that you can use in other applications.
These VIs show how you can utilize the TestStand Synchronization Server API in LabVIEW to access a TestStand synchronization object. The code of the Create.vi is shown below. Once the Synchronization manager reference is obtained, you muse type cast it to the ISyncManager class using the Variant to Data node.
Once obtained, use invoke nodes with the reference to access or modify the data in the synchronization object.
The application uses the following synchronization objects:
The Status Monitor VI is launched from a new thread at the beginning of the sequence execution so that it executes in parallel with the sequence.
TestStand Status Monitor Using Synchronization (LabVIEW) - TS2019.zip
TestStand 2019 or Compatible
LabVIEW 2020 or Compatible
TestStand Status Monitor Using Synchronization (LabVIEW) - TS2012 - NI Verified.zip
TestStand 2016 or Compatible
LabVIEW 2016 or Compatible
Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.