Tektronix Technical Forums are maintained by community involvement. Feel free to post questions or respond to questions by other members. Should you require a time-sensitive answer, please contact your local Tektronix support center here.
Models 2601A, 2602A, 2611A, 2612A, 2635A, 2636A
Models 2601B, 2602B, 2604B, 2611B, 2612B, 2614B, 2634B, 2635B, 2636B
Our lab just purchased the 2611A and I am consistently running into the LabVIEW error -1073807339 any time I use the VISA READ function, whether that be with my own code or that provided in the supporting CDs. Interestingly, no errors are detected during any VISA WRITE operations. Below are the basic system specs I am working with along with other troubleshooting tasks I've tried.
OS: Windows XP Professional, 5.01.2600, Service Pack 3
Device: Keithley 2611A
Test setup: 10kOhm DUT locally connected to device, 20V range, 10V source, 10 mA limit (the manual’s example case).
Successful Test: 1) using the physical device’s front panel, 2) using command line codes in the Keithley Test Script Builder (serial connection)
LabVIEW's Measurement and Automation Explorer also indicates a proper serial connection.
The manufacturer’s LabVIEW vi(s) used to attempt communication were (from Keithley 2600 Series.lvlib):
Serial Port Configure.vi
I could easily concede the presence of some syntax error in my personal code, but since I cannot get these manufacturer supplied codes to work either I do not have examples to learn from. Can anyone offer a suggestion in where I might be going wrong? Thank you in advance for any time/support you may offer.
Doesn't sound like you are talking to your instrument successfully using NI-VISA.
I would do the following to check basic communications:
1. Open the NI VISA Interactive Tool and verify you can communicate with your serial device using ASRL1::INSTR (if com1).
Just select this entry and double click on ASRL1::INSTR. Then, in the ASRL1 session dialog, select the viWrite tab and press execute. If successful, then select the viRead tab and press execute. If successful should return *IDN? intrument info such as model number and serial number and firmware revision and such.
If this fails, open the NI Max (Measurement and Automation Explorer) and expand the "Devices and Interfaces" tree and then expand the "Serial and Parallel" tree and click on the COM1 entry.
2. Adjust settings to match your instrument (perhaps the baud rate is 9600 and your instrument is 115200) and then save changes. Then, validate your settings.
3. If still having problems try a different cable, also be sure instrument is not in GPIB mode.
Once working...go back to LabVIEW and try a simple visa write and visa read test with your instrument.
Here are the results following your advice:
1) NI VISA Interactive Control: (fail) I can open up the session and execute the viWrite command (sending *IDN?\n). The viRead execution fails and returns the following error: BFFF0015 (return status).
2) NI MAX: (success) I checked both the instrument, computer and NI MAX settings for the port and all match. I then successfully validated the settings in MAX which gave the confirmation: "Successfully opened a VISA session to "ASRL1::INSTR" All parameters on this page are valid." I then opened a VISA test panel from inside MAX and mimicked your instructions for the NI VISA Interactive Control. This time both the viWrite and viRead execution worked, resulting in the buffer message "Keithley Instruments Inc., Model 2611A, 1339183, 2.1.6\n".
3) NI LabVIEW: (fail) I then tried a simple VISA read/write operation from a vi and received the same -1073807339 timeout error. I went back and did the steps 1-3 listed here again which resulted in the exact same outcomes.
So I know I can communicate to the instrument serially; both the results from step 2 here and my previous success with the TSB confirm that. And I know that NI MAX can communicate using VISA serially. Yet both the simple vi and the Interactive Tool fail.
Would you happen to have another suggestion?
Here are a few suggestions:
1. Turn on NI-Spy to see what is going on. When you run your LabVIEW test that fails is the instrument really going into the REM state and talking?
2. Trying using 9600 baud (make sure to change both software and instrument settings)
3. Another thought, while troubleshooting your serial connection problem, try talking to your instrument using ethernet. NI-VISA doesn't care what pathway you use and this is actually a faster path to use. The VISA resource will then be of the form TCPIP::10.80.64.48::INSTR as an example.
I have two suspected causes:
Cause 1) I was testing my connection using four different means of communicating across the serial port (Keithly TSB, NI VISA Interactive Control, NI MAX, and LabVIEW) and I did not consistently close the previous VISA session or clear the device I/O buffer before I jumped from say LabVIEW to the VISA Interactive Control. I wrote a simple vi just to close the VISA session on COM1 before changing programs. That allowed me to using the Interactive Control without error.
Cause 2) Simple syntax error in the commands I wrote to the device. I was not setting the termination character during initialization and I was not using a termination character during writing.
Before changing anything I did confirm that the device was displaying the REM indicator on the physical front panel during my previous failures. Also, I change the baud back to 9600 in the device, software, and on the computer. I did use NI-Spy as well which proved useful in finding the errors. I did not attempt the Ethernet connection because of other limitations in our experimental setup but I may move that way in the future.
Thank you very much for your help Stuart M.
Who is online
Users browsing this forum: No registered users and 2 guests