Distributed Control & Automation Framework (DCAF)

cancel
Showing results for 
Search instead for 
Did you mean: 

Distributed Control and Automation Framework (DCAF) FAQ

The following are frequently asked questions from users of the Distributed Control and Automation (DCAF) framework. Please share any other questions below!


Why are some or all of my plug-ins missing from the configuration editor?

All nodes in the editor are loaded as plug-ins from disk. In order for a node to appear, the editor must know where to look for it. Make sure that the nodes you were expecting to see are included in the editor’s plug-in search path by going to Tools>>Edit Plugin Search Paths within the configuration editor. By default all community created plug-ins are installed in either <LabVIEW version>\vi.lib\NI\TBM Modules or <LabVIEW version>\vi.lib\NI\TBM Engines or <LabVIEW version>\vi.lib\NI\Tag Bus Data Framework depending on the type of plug-in that it is.


Why is a module that I've installed missing from the selection dropdown for the engine?
Assuming the module was discovered by the editor (see the previous question), a module may not be able to be added to a particular engine because it either isn’t supported by that target’s operating system or because the maximum number of modules of that type for that target may have been met. For example, the Scan Engine module only allows one instance to be added to a target. Once one instance of the Scan Engine is added, it will no longer appear in the dropdown.


How do I change the glyph for my module in the editor?
The CEF includes a glyph repository that gets automatically updated when a new editor node is discovered. To add your own glyph, simply create an override for the ‘Get Text’ method and specify the name of the .png glyph that you would like to use. Then store that glyph on disk in the same folder as the editor node class for your module.

 

What versions of LabVIEW does the framework support?
The framework will work in LabVIEW 2013 or greater. However some code plug-ins may be created in a newer version of LabVIEW or have their own unique dependencies.


What data types does the framework support?
All data types that are supported by the Tag Bus Library.


How does the framework interact with the FPGA?
There are two ways to exchange data with the FPGA using the framework. The easiest approach is to program the FPGA with User Defined Variables and then interact with those variables using the Scan Engine module. This approach works so long as all exchange with the FPGA can occur using UDVs with data types supported by the framework.
The second approach is to create a new module that interacts with the FPGA. For this approach, the framework can automatically open and run the bitfile if selected in the target's configuration. The Dynamic FPGA reference can then be used so that the module can interact with the FPGA using the full set of FPGA RIO Interface functions. The TBM Module interface contains a functional global variable called the "FPGA Manager" which allows you to look-up the bitfile currently deployed to a RIO device.


Why are some of the VIs installed by the framework locked?
The framework automatically locks the majority of its VIs upon installation, but a password is not required to unlock them. Locked VIs are meant to inform users when a VI they are modifying will be overwritten when the framework is updated. If you have a need to modify a locked VI, consider submitting an Issue on the appropriate DCAF page on GitHub or proposing a new feature in the DCAF community. You can also make the changes directly on GitHub and submit a pull request. Without that feedback, any changes to locked VIs will likely need to be re-implemented every time the framework is updated.

 

authored by
Christian L, CLA
Systems Engineering Manager - Automotive and Transportation
NI - Austin, TX


  
Message 1 of 1
(3,388 Views)