National Instruments’ (NI) latest incarnation of LabVIEW actually forks in two: One branch is NXG (Fig. 1), and the other is LabVIEW 2017, which builds on LabVIEW 2016 and provides upward compatibility (see “What’s the Difference Between LabVIEW 2017 and LabVIEW NXG"). This represents probably the biggest change in LabVIEW since it was first released in 1986. Both of the new packages were introduced at NI Week 2017 (see “NIWeek: The Best Electronic Conference” on electronicdesign.com).
LabVIEW NXG 1.0 and LabVIEW 2017 share a common architecture and compiler—the G compiler. They have different front ends and common underpinnings, but neither is a superset of the other. Each comes as part of the latest incarnation of LabVIEW, so developers are able to use one or both as desired. LabVIEW 2017 provides upward compatibility with LabVIEW 2016 projects. Most projects can be migrated to LabVIEW NXG, although LabVIEW NXG lacks some features found in its siblings.
1. LabVIEW NXG is the new face of LabVIEW. However, it will coexist with LabVIEW 2017 and its subsequent revisions until the two paths merge back into a single incarnation of LabVIEW.
LabVIEW NXG is designed to improve the initial user experience, as well as offer improved features for experienced users. It has a similar, yet still different, look-and-feel than LabVIEW 2017.
Making LabVIEW Easier to Use
One key attribute of LabVIEW NXG is that it simplifies the out-of-box, initial project delay between firing up the software and being able to play with the hardware. Note that this is different than actually writing software; a developer typically needs to know whether the system is talking to the hardware in the usual test-and-measurement environment.
LabVIEW NXG takes advantage of the fact that the hardware on devices like NI’s CompactDAQ and its installed modules can be enumerated automatically (Fig. 2). LabVIEW NXG then makes sure the drivers for these hardware modules are installed, downloading them if necessary. It then configures virtual instruments (VIs) for the hardware; therefore, the programmer can immediately tweak the hardware to make sure it’s working as well as do some initial configuration.
2. LabVIEW NXG is able to enumerate hardware devices when used with hardware like NI’s CompactDAQ. These devices can be tweaked immediately without creating an application.
The VIs aren’t incorporated immediately into the default design, but they can be pasted. They retain the configuration that the user may have set while examining the hardware via the VIs.
Normally, a user would have to make sure all of this work was performed manually, and devices could not be configured until the program with the matching VIs was created. It also assumes that this was done correctly.
With this new approach, users are able to quickly check the hardware without having to write any code. Initial creation of a system is also easier because the configured VIs can be pasted into the project.
3. Integrated exploration and analysis tools allow LabVIEW NXG users to quickly examine information accessible to the hardware without writing application code.
On top of that, this approach allows a developer to take advantage of integrated exploration and analysis tools (Fig. 3). Because LabVIEW NXG is able to be used as a smart front end without having to write code, developers can quickly become familiar with the hardware.
LabVIEW NXG has also been streamlined to simplify the customization of test-and-measurement systems. The new drag-and-drop UI creation editor is focused on reducing the development time for common tasks.
First-time users will appreciate the new help content and interactive learning support (Fig. 4). The system now comes with interactive lessons and associated example programs.
4. New users will appreciate the new help content and interactive learning support.
LabVIEW NXG wasn’t created just for new users or to streamline the initial work with hardware or project creation. Those are useful aspects, of course, but the real reason for the split from LabVIEW 2017 was to provide a superior development environment that wasn’t limited to incremental improvements of the current LabVIEW development environment.
The new graphical editor, unique to LabVIEW NXG, simplifies graphical programming by adding features like zoom. It uses a more modern set of built-in UI components with an extensible framework that can be applied to build better UIs. It’s possible to import third-party controls and customize built-in objects using installable skins.
5. The new data viewer (top) and filter configuration (bottom) allow all developers to quickly examine data using a familiar test tool approach.
The ability to use the integrated exploration and analysis tools (Fig. 5) is a welcome addition to experienced developers as well. The data viewer allows presentation of multiple data streams in a variety of ways, and a user can apply multiple filters without having to build an application from scratch.