I have a sneaking suspicion that someone (NI or elsewhere) has already created a suite of LabVIEW VIs to serve as a driver for the Nicolet NRF Reader ActiveX API, but it wasn't immediately apparent where to find it. As a one-time user of an old Nicolet 4094 scope, I figured I'd try an example myself.
After I downloaded
the installer from the NI site and installed it, I noticed two things that helped me figure out how to proceed:
1. Now when I put down an "Automation Open" node on my LabVIEW diagram and choose Select ActiveX Class >> Browse, I see two new Nicolet type libraries. I figured the Recording Definition 1.0 was the one to pursue.
2. The installer placed a sample NRF file at <National Instruments>\Shared\USI\Examples\Nicolet that seemed like just what I needed to determine if things were working or not
I started my standard ActiveX technique of blundering around with various properties and methods and their results, and then I thought better of it and searched for and found an excellent SDK reference for the library from Nicolet here:
http://www.nicolet.nl/Pdffiles/NRFReader.pdf
With that, I was able to slap together an example that opened an NRF file and displayed an arbitrary channel of data. A few caveats:
- I didn't bother to close any ActiveX references, which is a bad idea for a real app
- The SDK makes it clear that getting properly scaled and stitched-together data for an arbitrary NRF file channel (in time as well as magnitude) is tricky, and I didn't worry about whether mine was scaled and stitched properly or not.
- I didn't quite understand why it was necessary to ask for a certain number of data points, nor did I understand why the method to get channel data returned a 2D array.
With those grains of salt, it looks like this example would be a good jumping-off point for you. One thing I would suggest is considering whether it might not be easier to make DIAdem do the work for you. I'm not very familiar with it, but I know you can communicate easily with DIAdem from LabVIEW. Perhaps you could ask it to read these files for you and return the data to LabVIEW; it would be one additional level of overhead beyond the ActiveX layer itself, but if things already work well from DIAdem, it would save the effort of building a driver in LabVIEW.
My two cents. The attached example is for LabVIEW 7.1 and assumes that the Nicolet plugin is installed.
Take care,
John