LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Keysight E4990A: Typecasting ASCII Trace Data to an Array of Complex Numbers?

Hi All,

I’m looking for some help retrieving traces from a Keysight E4990A Impedance Analyser. We have a test program used to measure the resonance frequency of ceramic resonators. I’ve come across an unusual issue where the measured resonance frequency changes based on the width of the frequency sweep. For example, we have a part with a nominal resonance frequency of 7.5MHz. If I sweep from 5 to 10MHz it will measure 7.3MHz (in spec). If I sweep from 6 to 10MHz it will measure 7.1MHz (out of spec). I’ve confirmed on the instrument it is actually sweeping between the set frequencies, so it is not an error there.

 

They program that controls the Keysight device and analyses the measurements is something we’ve inherited and not had a hand in developing. I have added some functions to export the traces captured from the E4990A as numeric arrays before they are processed by the program and the frequency difference appears to be there directly from the analyser, and not caused by a bug in the processing of results further down the line.

 

There is, however, one processing step before I export the traces that I don’t fully understand. The trace data returned by the E4990A is not human readable (see attached text file, comments indicate it is ASCII data encoded in some way?). It is typecast to an array of complex numbers, and the real part is sent on for analysis. The program captures Resistance and Reactance traces in this way. I have tried importing the text file and putting it through the same typecasting step but the results I get don’t match the original program.

 

Would appreciate if anyone can shed light on how that typecasting function works here? I would like to compare the raw data from the E4990A for different frequency sweeps with no processing to be 100% sure my problem lives in the instrument and not the LabVIEW program, but this would not appear to be possible.

Download All
0 Kudos
Message 1 of 2
(703 Views)

I see that you are using a custom-made VI using the low-level NI-VISA API.

There is a readily made API and examples available in IDnet at Agilent Technologies / Keysight Technologies E4990A Impedance Analyzer. Simply download the file to <LabVIEW>\instr.lib. Open the .lvproj and explore the examples.

-------------------------------------------------------
Control Lead | Intelline Inc
0 Kudos
Message 2 of 2
(689 Views)