Hi, first time poster here, this seemingly simple problem has been driving me crazy for awhile. All I'm trying to do is make a basic labview program to set a voltage to a power supply and then have the multimeter read that voltage. I was actually trying to make a while loop that would keep setting the PS to a random voltage and keep reading it over and over again, but I have since tried to simplify the program as much as possible in the hopes that I could figure out the problem at the most basic level. Attached is a picture of what it looks like when run with Highlight Execution on. What am I doing wrong here? It's like no matter what I do I can't get away from this error on the Read VI. I'm using an Agilent E3648A Dual Output DC Power Supply and an Agilent 34401A Multimeter. They're connected together with a GPIB cable, and then those are then connected to my computer with a GPIB-USB-HS+ GPIB to USB Controller & Analyzer. Let me know if there is any other information I need to provide. I feel like this should be a simple solution but I just can't figure out what I'm doing wrong here.
Solved! Go to Solution.
It looks like you never set up the trigger. Without a trigger, the measurement won't start and your read will timeout.
Set the trigger to Immedate and the read will cause a trigger.
Thank you so much for your reply. I tried what you suggested (maybe I didn't do it right?) by adding the Agilent 34401 "Configure Trigger" VI and setting the Trigger Source to "Immediate", but I'm still getting the error. Am I missing anything else? Attached is a picture of the changed code and results.
Also, I don't know if this will help or not, but: I tried looking into deeper into the two Fetch Measurement VI's within the Read VI with Highlight Execution on, and for some reason it seems like it goes through the first time just fine but then it loops back around and goes through them again and on the 2nd time it throws the error. Took another screenshot of the program's operation in the middle of the run, so you can see that the first run was OK with the errors but then the second time it started throwing the error out. I circled where it errored at the VISA Read, as well as the previous result before it was overwritten that shows that it passed the first time through. Hope this helps.
It is much too difficult (and ultimately frustrating) to look a pictures of part of the LabVIEW code. If you are working on a single stand-alone VI (with maybe one sub-VI and/or TypeDef), please attach it (or them). If you are working with a LabVIEW Project, right-click the Project folder, choose Send To:, Compressed file, and attach the .ZIP file. Please.
Sorry, I'm new here and still figuring out the typical protocol. I attached the VI I made, it's very simple and only 22 KB so hopefully that's not an issue. Is this good enough to meet your needs, or do you need anything else from me?
So... any new ideas? It's been 2 weeks, and I've done my best to give everything requested so far in a timely manner.
Is this typical for most problems on the official NI LabVIEW forums? As a first time user and professional, I'm disappointed and feel like my problem has been completely forgotten.
Well, I've never worked with GPIB, have no experience with Agilent devices and their proprietary software, the VI you attached looks like this:
and I can find no reference to the Fetch Measurement VIs you showed in your third Post. You are correct that I missed your reply -- I expected that other Forum members with more experience with GPIB and Agilent devices would have responded. My apologies.
Yes, we would usually respond quickly to these kinds of posts but please remember we are just users too. There are a few NI guys on the forums which you can see with the blue names. Don't hesitate to bump your post (reasonably) to remind us that you still need help. 😉
I have all your exact equipment and set it up only to immediately have all the problems you're facing. These old Agilent LabVIEW drivers are out of date and problematic. I did get the code to run without error by separating the DMM from the PS. It looks like the E3640 is throwing a warning that causes the 34401 to get stuck in that fetch loop. If I run things separately it works but I'm still getting weird behavior since the PS is always in an error mode. Probably because we're driving a high impedance DMM and there's no load to provide electrical feedback.
This is a good time to learn to use probes. Completely separate your code (even use a flat sequence) to be sure it's all running independently. Then start putting it all back in sequence and check your error lines for warnings.
Expect this to have weird VISA problems as these drivers were probably around before you were born. I had to turn off ALL my hardware, unplug my USB-GPIB-HS+ and close LabVIEW a few times just to clear hanging errors. There ARE better ways once you learn more advanced tricks but keep it simple for now.
I will try to check in next Monday and help you further since I have the same equipment here. Don't despair! You are right this should be easy but a lot has changed in various firmwares and drivers and these old instruments have gotten lost in the push to new tools and interfaces. Once you get the hang of them, they're very reliable though.