09-18-2019 09:03 AM
Hello, i need help to extract some data from a *.prnf file: i've got a singular prnf file containing 2 waveforms representing a current and a voltage, i need to extract this data (and possibly also the time) in order to then do some operations.
First i wanna extract this data in an array and then reconstruct the extracted signal, so i have them as a clear output that i can work with in labview User VI.
Any suggestions on how to approach this will be highly appreciated. Thanks
Solved! Go to Solution.
09-18-2019 09:33 AM
Well, who or what wrote that file in the first place? Do you have documentation of the file structure?
09-18-2019 10:20 AM
The files are of an electric arc measurement: the signals of the measurement pass through two digitizers (HBM6600), which are connected to a HBM Genesis Tower 986A0151 (via optical fiber) and then everything is linked to a computer by ethernet cable and analyzed through a software called Perception (and from here the file is saved ad a *.prnf).
Sadly i cannot attach the file here but if you wish i could send you by email a test i made with a generator signal with two waveforms (triangular and rectangular).
Thanks for help.
09-18-2019 10:52 AM
Then study the perception manual to see if they have an appendix explaining the file structure. WIthout that, we are driving blind.
Is the file binary or human readable? What do you see if you open it in notepad, for example?
09-19-2019 03:01 AM
When i open it in a notepad it gives me something as you can see in the screenshots.
The HBM Perception Native Recording File, or PNRF, stores multiple channels of data generated by a variety of data acquisition systems in binary form. The file format was designed to efficiently store multi-channel data records.
Here's what i found in the manual:
In general data (or waveforms) of multiple sources is stored within a single file.
All HBM Genesis HighSpeed equipment/software uses the concept of a
recorder. A recorder can have one or more channels that acquire data. All
channels within a single recorder have the same timebase settings: sample
rate, recording length and trigger parameters. As an extension to this concept,
groups are used to combine various channels into a logical configuration. This
does not alter the arrangement of the channels within the recorders.
Therefore, within a PNRF recording file, information and properties is stored
as part of groups, recorders and channels. Within this document we will only
describe the use of recorders and channels.
A recording can be a single continuous acquisition, a collection of acquisition
sections (sweeps) or a combination of both.
An important concept within the PNRF file is the concept of a segment: a
portion of the data that spans a time interval in which the timebase (x-axis
information) as well as the amplifier (y-axis information) remain stable, i.e. there
are no changes. A segment is a self-contained piece of recorded waveform
data.
Within a recording there can be 0 (zero), 1 or more segments, Zero being no
data. To retrieve data from a recording, you need to specify the start and end
time of the data that you want to retrieve.
09-19-2019 05:57 AM
That's clearly a binary file. Without the exact format description of this file structure it's basically not possible to read this file in a reliable way. It may be possible to guess some things by analyzing lots of these files where you know exactly what is in there but that is tedious at best and often not accurate enough in the end as there is always the chance that the software in question creates a different data structure depending on the operation mode or similar.
09-19-2019 06:17 AM - edited 09-19-2019 06:19 AM
A quick Google Search shows that there is a DIAdem plugin for .pnrf files available here: http://www.ni.com/example/31522/en/
It also looks like they have a Toolkit available (which may help with converting the file into an easier format to handle): https://www.hbm.com/en/7557/hardware-and-software-interfacing-with-genesis-high-speed/#c335018
It looks like it provides an ActiveX/COM interface which you could interface to with LabVIEW.
04-08-2022 09:11 AM
Back in 2011, I wrote a LabVIEW program to handle our HBM Genesis-Nicolet data streams. I used LabVIEW's data plugin module: usiHBM_PNRF.msi. At the time, NI's module was buggy, but I worked with NI and we got it working great. This link might help:
https://www.ni.com/en-us/support/documentation/supplemental/10/using-dataplugins-with-labview.html
Unfortunately, NI has really gone downhill with their website. I can't locate the data plugin page that had everything you would need.
I realize this is a late reply but hopeful it will help someone.