Author Topic: HP Agilent 82357B USB-GPIB Interface  (Read 2248 times)

0 Members and 1 Guest are viewing this topic.

Offline gkmaiaTopic starter

  • Frequent Contributor
  • **
  • Posts: 532
  • Country: nz
  • Electronics Hobbyist
HP Agilent 82357B USB-GPIB Interface
« on: October 23, 2019, 10:19:48 pm »
I am interested to buy one of these interfaces to plug on my 54622D. I do have the GPIB interface.

Does anyone know if I can retrieve data to my computer using another software other than the Agilent ones... I do have the Intulink on the Rs323 port but it is way too rudimentary.

Will it be able to output to a https://www.saleae.com/downloads/ or a https://sigrok.org/wiki/Downloads for example?

What protocol the 54622d put out throught the GPIB port?
 

Offline egonotto

  • Frequent Contributor
  • **
  • Posts: 983
Re: HP Agilent 82357B USB-GPIB Interface
« Reply #1 on: October 23, 2019, 11:29:44 pm »
Hello,

it exists a Programmer’s Guide for your scope.

I think you can write a program for your scope.

You need a lib to connect. I use VISA. Look at NI-VISA™
Programmer Reference Manual.

You need some time for familiarization but I think you can have success.

Best regards
egonotto


 

Offline Tony_G

  • Frequent Contributor
  • **
  • Posts: 959
  • Country: us
  • Checkout my old test gear channel (link in sig)
    • TGSoapbox
Re: HP Agilent 82357B USB-GPIB Interface
« Reply #2 on: October 24, 2019, 08:06:12 pm »
I have one of these (rarely use it now as I have a NI GPIB-ENET/1000 which does away with the USB connection in favor of the LAN). I'm fairly certain that these are all clones of the actual device or at a minimum the 3rd shift run.

That said, mine worked flawlessly for accessing my gear. To get it to work you will need, as egonotto noted, a VISA library. You will also need to use the driver and the only way to get that is to install the Keysight VISA implementation (to use NI-VISA you'll need to install the Keysight one in secondary mode and even then the whole system is flaky). You can get all the bits for this from the Keysight website here: https://www.keysight.com/en/pd-1985909/io-libraries-suite

What this will give you is the ability to use an application that calls the VISA API to communicate with a piece of test gear. You can also write your own software using something like Visual Studio 2019 Community Edition (free) and those APIs.

This just gets you to the point where you can start issuing commands to the device and extracting data. Those commands are covered in the Programmer's Guide (located here https://literature.cdn.keysight.com/litweb/pdf/54622-97038.pdf?id=1000002818-1:epsg:man). It really is quite easy to do using the API - For example here is a C# code fragment from a utility I wrote for the 3325B:

Code: [Select]
            // Setup variables
            string SigGenAddress = @"GPIB0::10::INSTR";
            string THDMeterAddress = @"GPIB0::1::INSTR";
            ResourceManager ResMgr = new ResourceManager();
            FormattedIO488 THDMeter = new FormattedIO488();
            FormattedIO488 SigGen = new FormattedIO488();
            AmplitudeCalibration AmpCal = AmplitudeCalibration.Off;
            bool ACUnset = true;
            int NumMeasurements = 0;

            // Create the datafile
            StreamWriter ReportFile = new StreamWriter(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\3325BHarmonicDistortion.csv");

            // Setup the VISA connection for the Keithley 2015
            THDMeter.IO = (IMessage)ResMgr.Open(THDMeterAddress, AccessMode.NO_LOCK, 2000, null);
            THDMeter.IO.TerminationCharacterEnabled = true;
            THDMeter.IO.Timeout = 20000;

            // Setup the VISA connection for the HP 3325B
            SigGen.IO = (IMessage)ResMgr.Open(SigGenAddress, AccessMode.NO_LOCK, 2000, null);
            SigGen.IO.TerminationCharacterEnabled = true;
            SigGen.IO.Timeout = 20000;

            // Initial HP 3325B settings and get the IDN to confirm its connected
            SigGen.IO.Clear();
            SigGen.WriteString("*RST;", true);
            SigGen.WriteString("FU1;", true);
            SigGen.WriteString("FR100HZ;", true);
            SigGen.WriteString("AM999MV", true);
            SigGen.WriteString("*IDN?;", true);
            System.Threading.Thread.Sleep(1000);
            string temp = SigGen.ReadString();
            Console.WriteLine("3325B ID is: {0}", temp);

            // Initial Keithley Settings and get IDN to confirm its connected
            THDMeter.IO.Clear();
            THDMeter.WriteString("*RST;", true);
            THDMeter.WriteString("*IDN?;", true);
            System.Threading.Thread.Sleep(1000);
            temp = THDMeter.ReadString();
            Console.WriteLine("2015THD Meter ID is: {0}", temp);

To get the data into another app you will need to work out what the preferred way to do that is - For example you could save the waveform as a set of data points into a CSV file and then read that in, or you could have the device specifically grab a single measurement and then pipe that over to the other app.

Hope this helps,

TonyG
 
The following users thanked this post: egonotto


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf