Tools and Tips for Upgrading Your LabVIEW Application
Upgrading your existing NI LabVIEW application can be a challenge.
With the addition of new OSs, drivers, LabVIEW modules and toolkits, and third-party components, NI recognizes that moving your critical applications to the latest version can be a difficult and risky process. NI has consistently focused on long-term compatibility and continuity. For example, LabVIEW is now on an annual release schedule to help ensure a smoother path from one release to the next. The goal is to make your upgrade process as smooth and easy as possible – whether you are upgrading from the previous version or from four versions back. With the LabVIEW 8.6 release, NI has developed a host of new technical content, tools, and services to help you through the upgrade process.
Your Upgrade Resources
Figure 1. This diagram illustrates a systematic approach to conquering the upgrade.
Understanding which versions of LabVIEW modules, toolkits, and NI drivers are compatible with the latest LabVIEW release is a crucial step prior to beginning an upgrade. The new LabVIEW 8.6 platform DVDs simplify this process by providing a single installation for all compatible LabVIEW modules, toolkits, and drivers. Each product on the DVDs is mass compiled for LabVIEW 8.6, and you can install the toolkits without affecting previous installations, thereby simplifying the process of maintaining multiple versions of LabVIEW on the same computer. You no longer have to copy toolkit files to the new LabVIEW directory, manually edit the Windows registry, or mass compile LabVIEW toolkit code.
An underused upgrade resource is the LabVIEW Upgrade Notes, updated with each version of LabVIEW and included with every LabVIEW upgrade purchase or Standard Service Program (SSP) shipment. The Upgrade Notes contain information on changes that might impact an upgrade, including new features, deprecated VIs, and behavioral changes made to LabVIEW going back many releases. For example, the LabVIEW 8.6 Upgrade Notes explain that the Create Semaphore VI no longer exists and recommend the new Obtain Semaphore Reference VI, with an overview of the functional differences between the two.
In addition, NI maintains a list of known issues in LabVIEW that would most likely impact your application. Some are bugs that exist in the new version of LabVIEW that did not exist in a previous version. This list, which is created using the known issues that are discovered during internal testing of LabVIEW, is updated after the product releases with bugs that are reported through NI support or the NI discussion forums. The document is titled, “LabVIEW X.X Known Issues” where X.X is the version. You can find the list by searching ni.com or by using the info code listed in the LabVIEW Release Notes. Each known issue in the document includes a workaround (if one is known to NI) that you can use to avoid or reduce the impact of the problem. The list is also updated to reflect the known issues fixed in maintenance releases. For example, the LabVIEW 8.5 Known Issues document reflects issues that were corrected in LabVIEW 8.5.1 (this information is noted in the workaround section of the Known Issue). A new service included with LabVIEW 8.6 is the upgrade analyzer now available on NI Labs (ni.com/labs). This suite of upgrade tests is designed to test your existing code for known issues within the product. Although not every known issue can be detected through an automated inspection of your code, this suite tests for many known issues and offers additional information and workarounds. NI will update this test suite periodically as known issues are reported.
All software products have unexpected behavior introduced with new versions, otherwise known as “maintenance issues” or “bugs.” LabVIEW is no exception. However, LabVIEW is a flexible programming language so most bugs have simple workarounds. This issue is further mitigated by the annual maintenance releases, which are typically available six months after a major release. In the event that a critical bug is discovered without an easy workaround, NI technical support engineers can create a patch, or fix, for a specific customer. You can find information on the bugs that have been fixed in the LabVIEW 8.6 Readme file. Changes in LabVIEW as a result of a bug fix could inadvertently change the behavior of your LabVIEW program after you upgrade, so review the list of fixed issues to determine if your application is affected. However, in practice, bug fixes rarely adversely affect a LabVIEW program.
Approaching the Upgrade with a Process
Figure 2. The new LabVIEW 8.6 platform DVDs provide a single installation for all LabVIEW modules, toolkits, and drivers, thereby simplifying the upgrade process.
Now that you are aware of the many tools available to assist in your upgrade, successfully completing the upgrade is still ahead. Figure 1 offers a sample process that you can follow. Every upgrade case is unique and requires some decision making on the critical components of your application, trade-offs that you are willing to make, and an understanding of the end goal of your code. NI knows that you face real challenges with an upgrade and is taking steps to simplify the process and make pertinent information easier to find.
Jeffrey Phillips is a LabVIEW product manager.He holds a bachelor’s degree in mechanical engineering from The University of Tennessee.
View more upgrade information on your LabVIEW application.
Community Spotlight with Conan O’Brien
Popular late night television show host Conan O’Brien interviewed NI LabVIEW developer Brian Turner about the NASA 2008 Space Elevator Competition. Turner’s team, the Kansas City Space Pirates, is using LabVIEW and NI CompactRIO to compete for the $2 million grand prize.
Check out the “Powered by LabVIEW” hard hat Turner wore on air.
This article first appeared in the Q3 2008 issue of Instrumentation Newsletter.
Reader Comments | Submit a comment »
Legal
This material is protected under the copyright laws of the U.S. and other countries and any uses not in conformity with the copyright laws are prohibited, including but not limited to reproduction, DOWNLOADING, duplication, adaptation and transmission or broadcast by any media, devices or processes.
