Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Spectrum Analyzer

Hi Basyarie,

I looked at your screenshot for E4403B and tested the same input with the instrument that I have here (E4404B) and the code seems to run fine without any problems.  Did you do any modifications to the sub VIs?  Also what version firmware is the instrument running? (You can check this by running the Revision Query VI.  It will tell you what firmware you are running in the "Instrument Firmware Revision" indicator.)  I would recommend upgrading to the latest firmware.

Another question i have is, what USB to GPIB converter are you using? Is it an NI product or a different companies product?  It is always best to go ahead and run the latest driver cd to update the system software components such as VISA and drivers.

Let me know if these don't help, then we can try and figure out which exact command is causing the error.

As for the Anritsu MS2663B driver, I don't have the instrument with me and the driver wasn't developed here so I'm not familiar with it.  However the error code you are getting translates to

"VISA:  (Hex 0xBFFF0038) Bus error occurred during transfer."  So there might be a problem with the GPIB interface you have.

 

Let me know what you find out.

 

Regards,
Berk
Instrument Drivers / IVI
Message 11 of 41
(5,303 Views)
Dear Mr. Berk,

As for your latest advice to upgrade the firmware of analyzer, already been performed.
Firstly, I downloaded the firmware file for analyzer E440x  family (A.07.06) then I safely installed the firmware except for Power Suite Utility, because drive C free space of analyzer wasn't enough to be installed it. So, I leave it later to be installed. I made allignment (like calibration) as described in procedure manual of such product. I checked the system had a new firmware, so I felt it was well without any problem.

One it finished, I tried to execute again last screen shot which I showed you, but unfortunately, the error message is same as the previous test. I already checked that I didn't make a modification to the sub VIs. I run the Revision Query VI, and it seems no problem (see fig).
So, I tried to upgrade my GPIB-USB-HS adapter driver by installing the latest version I know (NI-488.2 2.5 and NI-VISA 4.1).
I downloaded 265 MB self extracted file (ni488225.exe) and safely update my driver (both of my LabVIEW8.2 and ni488225 is registered to NI).
I used the GPIB-USB-HS adapter from NI product (see fig).
Once I surely installed everything, I run Trace VI again, but still had same error (Error Query VI, Configure Sweep Coupling VI, and Acquire Trace VI).
I checked and ran a Configure Sweep Coupling VI, an error output was generated.


For Anritsu MS2663B, I leave it to be tested later when I succeed my Agilent product.
So, what should I do now?
I need help.
Thank you very much.

Regards,
basyarie
Chiba, Japan

0 Kudos
Message 12 of 41
(5,266 Views)
the attachments that I would like to upload.
0 Kudos
Message 13 of 41
(5,265 Views)

Hello Basyarie,

I looked at the agilent website and your firmware seems to be pretty old.  The current revision that the ESA series analyzers have is A14.04.  You can find the files here.

Also they have the revision history (which you can find here) for their firmware updates and it seems that they have been adding or updating some commands since the A07 firmware revision. Our driver has been developed with the latest command set of the instrument so it is vital that you upgrade the firmware. Since it is an "undefined header" or in otherwords unrecognized command error you are getting, i hope the firmware upgrade would solve the issue. Let me know what you find out.
Regards,
Berk
Instrument Drivers / IVI
Message 14 of 41
(5,220 Views)
Dear Mr. Berk,

I knew that firmware A.14.04 is the latest version, but I didn't installed it since I need to upgrade my analyzer (because no option B72 -enhanced memory-). Then I installed firmware A.07.06 since it didn't need option B72, unfortunately I couldn't execute all VIs examples well in particular for Configure VI files.

If I instal A.14.04 I need to upgrade my current analyzer memory into 32 MB DRAM SIMM. To perform this, it takes more time from purchasing till installing with some procedures into analyzer system.

Hence, I would like to ask you, is there any option test that I can do with LabVIEW 8.2 to communicate and save data (e.g. into MS Excel file) using my current analyzer? Let me know.

I've been modifying some sub VIs files, some of them are working well, others are not OK, in particular Configure sub VIs files. They are some error message which generated during execution.

Could you help me?

Thanks a lot,
regards,
basyarie
0 Kudos
Message 15 of 41
(5,187 Views)
Hello again Basyarie,
 
I didn't realize that you didn't have the memory module installed, sorry for the previous confusion.  I have a better understanding now.  I took another look at the revision history of the firmware and it seems that they have made a lot of improvements (specifically for the sweeping) in A 8.2 and A 9.0 firmware upgrades.  To work around the commands that you are having trouble with, what you need to do is figure out exactly which commands are causing the errors and either resolve the condition that causes them to be rejected (due to a bug in the instrument) or take them out completely (because they might be missing in your particular firmware version).
 
I will use the VI we were previously using, "Configure Sweep Coupling.vi" to demonstrate what I believe is the best way to figure it out. So here it goes:
 
1) Set a breakpoint (right click on the block and select "Set Breakpoint") on VISA Write block in the Configure Sweep Coupling VI block diagram. Here is the screenshot.

2) Create a probe (right click on the wire and select Probe) at the string line going into the VISA Write "write buffer" terminal.  It will create a small new window which will give you the realtime value of the wire while the VI is running. Here is the screenshot.

3) Configure the VI on the front panel (put in the visa resource, the values you want, etc.)

4) Run the VI.  It will stop at the VISA Write and blink on the block.  Also notice that your probe window is now filled with the commands that were going to be sent to the instrument. Here is the screenshot.

5) Copy the commands to notepad.  Arrange it so that you have one command per line. (Each command is terminated by a ";", therefore you can simply press enter after every semi-colon) Here is the screenshot.

6) Launch Measurement & Automation Explorer (MAX), find your instrument (most probably under the Devices Interfaces -> GPIB tab) and select it. Here is the screenshot.

7) Click on "Communicate with Instrument", it will open a new window to send commands to the instrument. Here is the screenshot.

😎 Open the "Error Query" VI from the instrument driver (under Utilities palette).  Configure the VISA resource.

9) Send a command through the communicator by pasting it into the "Send String" field and then pressing "Write"

10) Run "Error Query" to see if that command causes an error. (Specifically the one that you have seen before)

11) Repeat for every command that you pasted on notepad and take a note of the ones that are causing the error.

12) Remove the parts that use or modify the erronous commands so that the VI's will run without a problem.

After doing this, the VI's will work since you took out all error causing commands but you will have to configure the features that are taken out manually if the instrument supports them in your firmware version.

After getting everything to work, you can use the "Read Trace" VI to acquire a trace onto your computer.  Then you can use the LabVIEW "File I/O" palette to write the data to a spreadsheet or however you want to store it.

Let me know if you have any questions.

Message Edited by BerkO on 02-27-2008 09:38 AM

Message Edited by BerkO on 02-27-2008 09:41 AM

Message Edited by BerkO on 02-27-2008 09:43 AM
Regards,
Berk
Instrument Drivers / IVI
Download All
Message 16 of 41
(5,165 Views)
Other screenshots...
Regards,
Berk
Instrument Drivers / IVI
Download All
Message 17 of 41
(5,164 Views)
Dear Mr.Berk,

Long time I didn't ask you again, I am sorry.
Last time, I was facing a confucing configuration to acquire the spectrum data onto the computer, but now I am gradually able to understand how the program is running by follow your instruction and advices.
So far, I've already done what you suggested in the previous reply i.e to figure out the problem, we need to explore the block diagram pallete in more details.
Okay, I tried to do it and the result (first I ran the program "ESA PSA Series Acquire Trace.vi") :
- after figure out "Configure Sweep Coupling.vi" I found some error. and already revised and finally the error was not coming again.
- but I have error on VI "Configure Acquisition.vi" and then tried to find where the error was generated. With the same method as you adiviced me previously (by launching MAX through communicator), I didn't find error. In this case, I am confucing now.

However, although there are some error as above mentioned, I tried another VI namely "Read Trace.vi" (as you replied before) in the Data folder.
As a result I got the data from the spectrum analyzer onto the computer (see the attachment).
But, I don't know how to save the data into the spreadsheet like MSexcel etc, please teach me how to build it by File I/O facilities.
I tried but failed. In array data I want to make like a column spread data which contents:

| frequency [GHz] | value dB |
|         2.00            |  -10.89    |
|             :              |       :        |
|             :              |       :        |
|         3.00            |  -20.87    |

Second, actually I want to grasp the real value of "Y" axis output from analyzer.
How can I know it? I've already find it, but it didn't match the value on analyzer.
For example, I read on analyzer at frequency 2.5 GHz the value of signal is -10.56 dB (in Logaritmic div), but on the block diagram is written -12.251. (see attachment) Why is it different? same case for Trace Array no. 1 which is twice value than no.0. How come? I really didn't understand.

Those are my problem here want to share and need a solution.
I am to be grateful if you give some advices again.
Thank you very much.

regards,
basyarie
chiba, japan
 


0 Kudos
Message 18 of 41
(4,856 Views)
Hello Basyarie,
        I am happy to hear that you are getting data.  It looks like the signal values are different because you are comparing the value at 2.5 GHz to the one at 0 GHz (element 0 in the array).  I recommend that you look through the array and find the element that corresponds to the value at 2.5 GHz.  It should match the data on your graph.

       For writing data to an excel file, I recommend that you start out by using the Write To Spreadsheet File VI.  Once you are familiar with the use of that VI, then move on to adding the column labels that you would like.  You can also control Excel through ActiveX and there are examples in LabVIEW that show how to do that.

Cheers,

NathanT
0 Kudos
Message 20 of 41
(4,810 Views)