NI LabVIEW 2018 with AppBuilder


NI LabVIEW 2018 with AppBuilder

LabVIEW (Laboratory Virtual Instrument Engineering Workbench) is a graphical programming language that uses icons instead of lines of text to create applications. In contrast to text-based programming languages that use instructions to determine the order of program execution, LabVIEW uses dataflow programming. In data flow programming, the flow of data through the nodes on the block diagram determines the execution order of the VIs and functions. VIs, or virtual instruments, are LabVIEW programs that imitate physical instruments.

In LabVIEW, you build a user interface by using a set of tools and objects. The user interface is known as the front panel. After you build the front panel, you add code using graphical representations of functions to control the front panel objects. You add this graphical code, also known as G code or block diagram code, to the block diagram. The block diagram somewhat resembles a flowchart. The block diagram, front panel, and graphical representations of code compose a VI.

– Customizing a Malleable VI for Different Data Types
The Comparison palette includes the new Assert Type subpalette. Use the Assert Type VIs and function to force a malleable VI (.vim) to accept only data types that meet certain requirements. Use the Type Specialization structure to customize sections of code in a malleable VI for specific data types.
– Running Operations Using the Command Line Interface for LabVIEW
LabVIEW 2018 allows you to run operations in LabVIEW by executing commands using the command line interface (CLI) for LabVIEW. For example, use the CLI for LabVIEW to automate the build process of LabVIEW applications. The CLI for LabVIEW supports the following operations:
. MassCompile-Mass compiles the files in the specified directory.
. ExecuteBuildSpec-Builds an application, a library, or a bitfile using the settings in the specified build specification(s) and returns the path of the output files.
. RunVI-Runs a VI with the predefined connector pane interface and returns the output or error information.
. CloseLabVIEW-Closes LabVIEW without any prompts.
. (VI Analyzer Toolkit) RunVIAnalyzer-Runs the specified VI analyzer task in the LabVIEW VI Analyzer Toolkit and saves the test report to the specified location.
. (Unit Test Framework Toolkit) RunUnitTests-Runs tests on the specified files in the LabVIEW Unit Test Framework Toolkit and saves the JUnit file to the specified location.
Note: To run this operation in LabVIEW, you must install the UTF Junit Report library using the JKI VI Package Manager (VIPM) software.
– Calling Python Code from LabVIEW
The Connectivity palette includes the new Python subpalette, which you can use to call Python code from LabVIEW code. The Python palette includes the following functions:
. Open Python Session-Opens a Python session with a specific version of Python.
. Python Node-Calls a Python function directly.
. Close Python Session-Closes a Python session.
Note: You must install Python 2.7 or 3.6 to use the LabVIEW Python functions. Although unsupported versions might work with the LabVIEW Python functions, NI recommends using supported versions of Python only. Visit and enter the Info Code python to learn more about installing Python.

– Creating Packages on Windows and Linux Real-Time Targets
You can create packages in LabVIEW and deploy them to clients through NI Package Manager or SystemLink. You can use packages with Package Manager and SystemLink to distribute all types of files, including source distributions, packed project libraries, shared libraries, .NET assemblies, and executables.
. (Windows 64-bit) Create NI packages (.nipkg) by right-clicking Build Specifications in the Project Explorer window and selecting New»Package. Your clients can use Package Manager or SystemLink to subscribe to a feed to find and install your packages.
. (NI Linux Real-Time) You can also create opkg packages (.ipk) on NI Linux Real-Time targets if you install the LabVIEW Real-Time Module. Your clients can install packages through SystemLink or from the command line on the NI Linux Real-Time target. Package Manager does not support .ipk files
– Backward Compatibility Support for LabVIEW-Built .NET Assemblies
With support for backward compatibility, .NET interop assemblies can load either in the LabVIEW version that they are built with or in the latest version of the LabVIEW Run-Time Engine installed on the machine. For example, you can load and run .NET interop assemblies, which are built with LabVIEW 2018, in versions of the LabVIEW Run-Time Engine later than 2018 without recompiling. To enable backward compatibility support for .NET assemblies, place a checkmark in the Allow future versions of LabVIEW to load this .NET assembly checkbox on the Advanced page of the .NET Interop Assembly Properties dialog box. LabVIEW enables this option by default for build specifications you create in LabVIEW 2018 and later. You can disable this option to bind a build specification to a specific version of LabVIEW. Disabling this option prevents any changes to the performance profiles and helps you avoid unexpected problems resulting from compiler upgrades. For real-time applications, this option does not appear in the dialog box but the functionality is enabled by default.

– Improvements to Creating Type Definitions
In LabVIEW 2018, you have more ways of creating a type definition, which links all the instances of a custom control or indicator to a saved custom control or indicator file. You can create a new type definition in one of the following ways:
. Select File»New and select Type Definition under Other Files.
. Right-click My Computer in the Project Explorer window and select New»Type Definition from the shortcut menu.
– Keyboard Shortcuts for Formatting Text
Use the following keyboard shortcuts to format the font style when editing text in the LabVIEW environment:
. -Bolds text.
. -Italicizes text.
. -Underlines text.

– Improvements to Error Handling on Parallel For Loops
LabVIEW 2018 introduces error registers to simplify error handling on a For Loop with parallel iterations enabled. Error registers take the place of shift registers for error clusters on a parallel For Loop. Error registers automatically merge errors from parallel iterations. LabVIEW preserves the best practice of flowing errors through a shift register by automatically converting shift registers to error registers when you configure parallel iterations on a For Loop. Error registers and shift registers differ in their run-time behavior. The left side terminal of the error register behaves like a non-indexing input tunnel and produces the same value on every iteration. The right side terminal of the error register merges the values of each iteration such that the error or warning value from the earliest iteration, by index, is the output value of the error register. If the For Loop iterates zero times, the value you wire into the left side tunnel carries forward to the output on the right side tunnel.
– Improvements to Removing and Rewiring Objects
When you remove and rewire a selection of block diagram objects, LabVIEW also removes any decorations, including free labels, that are in the selection rectangle. Remove and rewire objects by dragging a selection rectangle around block diagram objects, right-clicking the selection, and selecting Remove and Rewire. You can also use the Quick Drop keyboard shortcuts and keys after selecting objects to remove and rewire objects.

– NXG Style Controls and Indicators
The Controls palette includes the new NXG Style of front panel controls and indicators. Use the NXG style controls and indicators to create front panels with the same style as LabVIEW NXG. The appearance of these controls and indicators changes depending on the platform on which end users run the VI. Using these controls and indicators minimizes distortion of your front panels if you migrate the VIs to LabVIEW NXG.

– The Comparison palette includes the new Assert Type subpalette, which includes the following VIs and function:
. Assert Array Dimension Count
. Assert Array Dimension Sizes
. Assert Complex Numeric Type
. Assert Error Cluster Type
. Assert Fixed-Point Numeric Type
. Assert Floating-Point Numeric Type
. Assert Fractional Numeric Type
. Assert Integer Type
. Assert Real Floating-Point Numeric Type
. Assert Real Numeric or Waveform Type
. Assert Real Numeric Type
. Assert Same or Descendant Type
. Assert Scalar Numeric or Waveform Type
. Assert Scalar Numeric Type
. Assert Signed Integer Type
. Assert Structural Type Match
. Assert Unsigned Integer Type
. Type Specialization Structure
– The Connectivity palette includes the new Python subpalette, which includes the following functions:
. Open Python Session
. Python Node
. Close Python Session
– The Conversion palette includes the new Coerce To Type function. Use this function to convert the input data to a compatible data type while preserving the data value. Unlike the Type Cast function, this function does not reinterpret the input data. Use this function in the following cases:
. To eliminate a coercion dot
. To convert data without a type definition to a compatible type definition or vice versa
. To rename data on the wire, such as a user event refnum
– The Timing palette includes the new High Resolution Polling Wait VI.Use this VI to wait the specified number of seconds with higher resolution than you can obtain with the Wait (ms) function.

– The LeftShiftRegister class includes the new Is An Error Register property. Use this property to read whether a shift register is an error register. An error register is a special form of shift register that exists on a For Loop with parallel iterations enabled and when the data type of the shift register is an error cluster.
– The VI class includes the new Configure Panel As Top-Level Hidden method. Use this method to hide the front panel of a VI and optionally to hide the VI from the taskbar when the VI runs as a top-level VI. For example, use this method to hide the front panel of startup VIs of stand-alone applications that you build in LabVIEW.
– The DisableStructure class includes the new Disable Style property. Use this property to read whether the structure is a Diagram Disable structure, a Conditional Disable structure, or a Type Specialization structure.
– The Disable Style parameter of the Change Disable Style (class: DisableStructure) method includes the new Type Specialization Style option. Use this option to change a Diagram Disable structure or a Conditional Disable structure to a Type Specialization structure.

The following items are the IDs and titles of a subset of issues fixed in LabVIEW 2018. This is not an exhaustive list of issues fixed in the current version of LabVIEW.

457851 Bundling class data is slower than bundling cluster data.
536763 Pop-up menus can appear only limited number of times before LabVIEW crashes.
619819 Icon transparency of VIs is not maintained when building a packed project library.
629258 In some cases, reading from a corrupt TDMS file deletes the file from your machine.
630227 LabVIEW incorrectly allows dropping a shared variable into a cluster.
631802 Exporting typedef array of numerics to Excel may crash LabVIEW.
639000 LabVIEW crashes when updating the radix of a numeric control on an Actor Core VI that is running.
643107 Changing the line styles of multiple plots does not work as expecting in XY graphs.
645059 Uninitialized shift registers may cause incorrect type propagation.
648582 Cannot create Express VIs in certain localized versions of LabVIEW.
658587 Rescripting a message for an actor on a Linux RT target results in error 7.
664649 Accessing a DVR and deleting its reference in parallel can, in certain circumstances, cause LabVIEW to crash.
666823 VIs that use channel wires are broken when built into a packed project library.
670440 When dynamically registering events, LabVIEW may behave unexpectedly if an event is fired and unregistered before it is processed.
671753 The LabVIEW Application Builder has the potential to hang when building malleable VIs with subarray or substring inputs.
672120 Malleable VIs may not properly break after you rename a class method that the mallable VI calls when performing class substitution.
678973 Tools»Synchronize with Icon Library fails in the LabVIEW Icon Editor.
684125 In some cases, resizing a mixed signal graph causes LabVIEW to crash


  • Previous:NI LabVIEW 2017 with AppBuilder
  • Next:Autodesk VRED Design Professional 2018.5
  • Relate Soft

      No information
    Letters A B C D E F G H I J K L M N O P Q R S T U V W X Y Z TOP