Sign Up

Omni-Bus by TSA - Toolkit for LabVIEW Download

This is a Tag to Variable API

D Discussion Watch * 0 ↓86
 logo
Version2.0.1.6
ReleasedJul 01, 2024
Publisher TSA
License GPL-3.0
LabVIEW VersionLabVIEW>=21.0
Operating System Windows, Mac, and Linux
Dependencies jdp_science_jsontext   jdp_science_lib_common_utilities   tsa_lib_abstract_data_classes  
Used By tsa_lib_shared_variable_bus   tsa_lib_behaviour_tree  
Project links Homepage   Discussion

Description

The Omni-Bus Maps Tags to Most LabVIEW datatypes.

The difference between this and other Tagbus API's, the "Bus" API that plugs in to the Omni-Bus class factory to make Tag to Value mappings from multiple different buses.
The buses extend the TSI Abstract Data Classes and so the data can be accessed as the abstract class or as the specific variable. There is API to access both methods

Buses included are:
- 'Local Bus', this is a DVR based local variable. But future buses include shared variables, cRIO scan engine IO,
- 'Aggregator Bus' this adds descrete classes to the API, such as constant classes.
- 'Remap Bus' this is a wrapper bus is used to rename the exisiting tags
- 'Fault Injection Bus', This is a wrapper bus that wraps the other bus value objects with the Fault Injection objects.

Examples are available

Release Notes

2.0.1.6 (Jul 01, 2024)

V2.0.1.6
The previous changes broke Remap bus. This is now fixed

Added Example 9 that highlights the usage of the "Multi" value access objects that makes it easier to access multiple values of the same type.

v2.0.0.5
Added the "Fault Injection Bus.lvclass" decorator class. When added after other "Bus Access" Classes it can their value objects with the Fault Injection Value objects that add additional Fault Insertion Functionality.

An Example 8 is added to demo the Fault Injection features.

Other changes are:
- LabVIEW polymorphic VI's don't work with dynamic dispatch methods so a wrapper "Static Get" VI's was needed. With changes I have made to how I implemented Fault Injection, the requirement for dynamic dispatch the omni-bus methods was not required so I was able to remove the redundant wrapper VI's. The downside is the polymorphic Get VI now point to different Get VI's and they will need to each reselected.

tims was a contributor to this release


Download Package

Versions
All Contributors

  Post an Idea   Post a Resource

Recent Posts