LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

gpib error agilent

hi im using labview 7.1 im using a agilent 3458a multimeter im trying to get it working i can set it up e.g. ohm, dcv and so on but cant take a reading. im really stuck my code is attached. please could some one look at it and tell me what im doing wrong thanks

0 Kudos
Message 1 of 6
(2,897 Views)

Why don't you just use the driver: http://sine.ni.com/apps/utf8/niid_web_display.download_page?p_id_guid=36A7F6A5AF553389E0440003BA7CCD... ?

 

If you need to have it downconverted, post a request in the Downconvert Requests Thread.

 

As for your code:

  • Your sequence frame is completely unnecessary. Your error clusters provide sequencing. Remove the sequence frame and your code will run the same way.
  • Do not hard-code the instrument address on the block diagram. Worse: if you're going to hard-code it, don't create a separate constant for every single write/read function
  • Don't use the lower-level GPIB functions. New code should use VISA.
0 Kudos
Message 2 of 6
(2,890 Views)

them drivers are for labview 8 2009 and 2010 but im using labview 7.1. ok thanks i didnt know that. but why am i still getting an error when trying to read from the agilent. whats the differnece between visa and gpib commands

0 Kudos
Message 3 of 6
(2,879 Views)

Hi averagejoe,

 

As mentioned by smercurio_fc you can request on the Downconvert Requests Thread to have the driver in a version for LabVIEW 7.1

 

With regards to your next question: "What is the difference between GPIB & VISA Commands?"

VISA is generally regarded as much better than GPIB, due to a combination of reasons. Nearly all GPIB commands can be carried out using VISA commands; yet VISA is extensible to other hardware interfaces such ast USB, Serial, PCI etc devices.

 

Therefore using VISA commands provides much more flexibility and allows ease of changing your system in future e.g. to a different device.

 

What error is it that you are receiving? Could you please copy and paste the error code from this?

 

I've also noticed that you're coding has a broken arrow for the run - this is because in your penultimate frame, you have not specified the byte count input to your GPIB Read function.

 

Hope this helps,

 

Kind regards,

 

 

Tori
Student
Message 4 of 6
(2,865 Views)

ok thanks that makes a lot of sense. the error im getting is coming up on the agilent and not in the programme. if i put 256 in to the byte count to read in 2011 thats all fine but in 7.1 it times out. i opened up max and communicated via that,

 

I put

 

RESET;

OHM;

TARM SGL;

RMEM1;

 

everythings ok till i type rmem 1 it comes back with this

 

iberr = EABO

EABO indicates that an I/O operation has been canceled, usually due to a timeout condition after a GPIB read.  Before reading from the instrument, verify that the GPIB command you are sending is understood by your device and instructs it to place data in its output buffer.  For information on your device's command syntax, consult the instrument manufacturer's user documentation.

 

on the agilent the err is 107 memory emp.

 

i dont know if im missing anything but the if the code is exactly the same as 2011, it should work in 7.1 if it works in 2011

0 Kudos
Message 5 of 6
(2,861 Views)

Hi averagejoe,

 

Have you checked that all of the functions that you were using in 2011 exist in 7.1?

 

Sometimes LabVIEW isn't backwards compatible, though it is usually forward compatible.

 

Is it the same VI file that you are opening both with LV7.1 and 2011?

 

Regarding the error that you are receiving - have you checked the manufacturer's user documentation to check that you have typed in the command how it expects?

 

Kind regards,

Tori
Student
0 Kudos
Message 6 of 6
(2,841 Views)