The Blog Post category contains blog posts associated with ITM’s testing services, LabVIEW programming, Test & Measurement Hardware, Boiler Monitoring Systems, and iTestSystem applications.
When measuring vibration and strain levels in LabVIEW, you work with a lot of waveform data. Usually this waveform data needs to be resampled or quickly analyzed so it can be stored in databases and displayed as meaningful trends. I put together the snippet below, so I could have easy access to the resampling and moving average waveform algorithms we commonly use.
Figure 1: Example LabVIEW Front panel with Splitter Bars
In some of my earlier LabVIEW channel blogs I showed how to use a subpanel to build scalable module user interfaces. This blog describes another front panel layout tool for creating professional scalable user interfaces – the splitter bar. Splitter bars allow the user to resize the adjacent panes while an application runs. NI explains the functionality of configure of splitter bars here.
The labVIEW example described below shows how splitters can be moved programmatically to create clean professional user interfaces. This VI contains five (5) controls/indicators and two (2) splitter bars on the front panel. A listbox is used to select which channels are displayed in the graph, while a table displays each channel’s statistics. Each splitter bar’s position is controlled by a radio button containing two buttons (left and right for the vertical splitter and up and down for the horizontal splitter). When a splitter control button is initially pressed, its respective splitter bar snaps to the edge of the window and hiding the listbox or table. When pressed again, the respective splitter moves back to its original position revealing the listbox or table.
Figure 2: Programmatically move splitter bars.
Try the LabVIEW snippet above to see the splitter functionality. When you drop this snippet into a new VI, you will have to add vertical and horizontal splitters to the VI. See figure 1 for a reference for where to place the splitters. Right click on the splitter to get a reference to each splitter, left pane and bottom pane to run the VI. Wire these references into the appropriate bundle function. Set the graph to scale with panel. Do not set the listbox and table to scale with pane.
Quickly Identify Significant Events in Large Data Sets with Statistical Analysis
Use statistical analysis for TestView Plus and Automated Analytics to extract statistics like minimum, maximum, and mean from each sensor. The results of the selectable analysis is embedded within the data file as searchable meta data.
Automated Analytics users can quickly identify data files within large data sets that contain sensor events of interest. When paired with Trigger Analysis and the Notification Service, these data files can be automatically selected and sent via email in remote monitoring applications.
About iTestSystem
iTestSystem is an engineering measurement software platform that enables test engineers to organize, acquire, view, and analyze data from machinery, processes, vehicles and other complex systems. iTestSystem was specifically designed for use with NI cDAQ or FieldDAQ hardware for data collection and data logging.
Come see us in the TappiCon 2021 Exhibit Hall at the Acosense Booth 769!
ITM’s Ryan Welker and Zach Strong will be there representing both Acosense AB and ITM to showcase and answer questions about Acosense’s Acospector Acoustic Chemometer, a Clamp-on instrument measuring complex fluids in the process industry, and ITM’s boiler monitoring solutions.
When: October 3-6th
Where: TappiCon 2021
Cobb Galleria Centre 2 Galleria Pkwy SE Atlanta, GA 30339
Our LabVIEW programmers are often asked to build user interfaces to interact with configuration settings, data sets, file metadata, and databases. Some examples of these interactive interfaces include, sorting data by parameters, plotting the top ten vibration peaks from a data set, or searching through data files for strain channels that exceed standard limits.
In LabVIEW, these types of data sets can be represented on the block diagram as an arrays of clusters. A cluster is a LabVIEW data type that groups data elements of mixed types. A cluster is similar to a record or a struct in text-based programming languages. An array is a group data elements of the same type. An array consists of elements and dimensions.
The VI shown in Figures 1 & 2 contains a table that is sorted when you double click on a column header. The VI snippet in Figure 2 contains the VI with subvis removed.
Figure 2: Sortable Table VI Snippet
The VI snippet in Figure 3 contains some example array cluster sorting examples. By Default A cluster is sorted by the first element and if there is a match the second element is used and so on. To control the sort priority, unbundle the elements you want to sort by then bundle them back above the original cluster. This new cluster can then be sent to the Sort 1D array VI.
Figure 3: Sort Cluster Array Examples VI Snippet.
For more information about interacting with large data sets in LabVIEW, or our LabVIEW programming services contact Chase Petzinger @ (844) 837-8797 x704.
Figure 1 – Radio Button control of VI insertion into subpanel.
One control combination that our LabVIEW development team uses to build modular adaptive user interfaces is the radio button, subpanel pairing. Using the radio button to switch between vis displayed in a subpanel essentially allows you to make a tab control that scales with the front panel during resizing events.
I built the vi shown in Figures 1 & 2 (linked here) to demonstrate how to insert dynamically called vi’s front panels into a subpanel. In this example each radio button inserts a different 3D graph example vi into the subpanel by its reference.
Since the vis used in the subpanel are called dynamically, some extra steps may be required to build the exe. The link below shows how to build an exe that uses dynamically called vis using the application builder. I have also included some path tips that are useful when building LabVIEW executables (exe).
Figure 2 – Inserting a VI into a subpanel block diagram.Steps for Inserting a VI into a Subpanel
Assign VI Name to a Button or Tree Item.
Insert File Name into the Relative Path containing VIs to show in the Sub Panel. See Notes
Open a reference to the VI.
If the VI is in the Idle state then run the VI.
Insert VI into the Subpanel via a reference.
Notes
“..” will cause the Build Path VI to strip path once.
\ One extra \ is required per folder because the format into string function interprets backslashes as escape characters.
You can also use a tree control instead of a radio button to control which vi is inserted into the control panel. An example of this method is illustrated in a previous blog titled “Building a Modern User Interface in LabVIEW“. The vi shown in that blog uses a similar technique for building and selecting the which vi will be inserted into the subpanel.
Figure 3 – Insert VI into subpanel snippet.
Figure 3 above is a vi snippet of the Insert VI invoke node for a Subpanel. If you already have a subpanel, right click on the subpanel, create a reference and wire it to the subpanel invoke node.
Simplify Acceleration Conversions with iTestSystem’s Integration Analysis Tool
Like many features in iTestSystem, the Integration Analysis tool was created because customers requested it. After all, who doesn’t like features that make the math easier?
In this blog, a new series by ITM, we’ll share some details about Integration Analysis, one of the features within TestView Plus, the project based data viewing function within iTestSystem.
For engineers who are gathering vibration data, it makes perfect sense to have a simple way to convert acceleration into units of velocity or units of displacement since those are the most common specs.
Enter the Integration Analysis function. Simply open TestView Plus, drop down the “Analysis” tab and select “Integration.” Once there, adjust the settings to either “Single Integration” for velocity or “Double Integration” for displacement. In a couple of additional clicks, you can also specify your desired units and adjust the high cutoff frequency to filter low frequency data.
The next time you are gathering data using accelerometers, let iTestSystem simplify all those conversions with Integration Analysis.
About iTestSystem
iTestSystem is an engineering measurement software platform that enables test engineers to organize, acquire, view, and analyze data from machinery, processes, vehicles and other complex systems. iTestSystem was specifically designed for use with National Instruments (NI) cDAQ or FieldDAQ hardware for data collection and data logging.
Here is a trick for creating a simple dialog in LabVIEW. Follow these simple steps to quickly create your next dialog in less than a minute.
Create a New VI .
Drop the VI Snippet (Figure 1) above on the block diagram.
Update the Window Appearance setting in VI properties to dialog (see Figure 2 below).
Optional: Update with a Custom Window title.
Save and run the VI.
Figure 2 – VI Properties/Windows Appearance
In the dialog template snippet I also used another useful snippet – the error case structure. This simple VI snippet will help you save time with your next project.
What’s next?
Common snippets for folder creation and cluster sorting.