07-18-2016 05:10 PM - edited 07-18-2016 05:23 PM
Hello,
I'm currently using a Lecroy WaveJet 314 oscilloscope to collect waveform data from two channels on LabVIEW. Right now, I'm simply using the available VI's for the Lecroy Wavejet Series in order to create a LabVIEW VI that will initiate the waveform acquisition, fetch the waveform, and display the waveforms on a plot. The VI seems to work fine at first, but eventually it errors out an Error 85: "Error 85 occurred at Scan From String (arg 1) in LeCroy WaveJet Series.lvlib:Fetch Waveform.vi" I know this means that the scan string in the "Fetch Waveform" VI doesn't recognize the information of the input string, but I can't figure out why it does this after a certain number of iterations and whether it is a timing issue or not.
I have attached a code that samples this, as well as the code Read Waveform VI and the Fetch Waveform VI that are most relevant to my code. The error seems to arise from the first Scan From String function just after the Read VI within the Fetch Waveform VI. By the way, these are all part of the Lecroy Wavejet series library. I would be very grateful to anyone who could help me figure out exactly why the waveform acquisition eventually errors out.
Edit: I made the VI much easier to understand with the Read Waveform (Multiple) VI. I've updated the attached files!
07-19-2016 10:04 AM
Hi RideTheLightning,
Have you by any chance seen this older forum post? I know people have run into this issue in the past and the information in the following forum post usually gets everything working.
http://forums.ni.com/t5/LabVIEW/Error-85-Lecroy-Scope/td-p/1035258
If that does not allow you to resolve the error, then I would suggest using the LabVIEW debugging tools to see what the string being input to the Scan From String function actually is. You can use probes and break points to see what the value is each iteration.
http://www.ni.com/tutorial/14130/en/
07-19-2016 11:05 AM
Hi GatorBait, thank you so much for the response! I was starting to think my post was going to get lost amid the flood of threads made every day lol.
I did look at that post, however the connection I'm using for the oscilloscope to computer is a USB interface connection, not an LXI. I made sure that the VISA Resource is properly connected as well, I initialize the scope in the beginning and close it at the end (I even tried opening and closing it inside the While Loop, but it doesn't fix the problem).
From the Fetch Waveform VI, I found out that after reading the oscilloscope data for a while, the string is displaced by one line. My guess is that the Scan From String function is trying to read that first line but isn't actually reading anything, and thus outputs the error. The error then propagates into the rest of the iterations. Now, I don't know whether that's a timing issue, USB communication issue, or something else, but even when running low-level VI's to simplify my code, it still gives me the error 85 eventually.
07-20-2016 12:21 PM
Hi RideTheLightning,
From that it sounds like the device might be sending a blank string or termination character when the LabVIEW Driver does not expect one. You can check this by getting an NI I/O Trace which will show you all the VISA commands and responses received or sent as your program runs. If it seems like the VISA read is reading that command from the device, then I would consider talking to Lecroy to see if that is behavior they have seen before.
http://digital.ni.com/public.nsf/allkb/282C5D41E2BA04F2862574BA007803B9
You could also create a copy of the driver VIs and modify them such that they will handle the case where a blank line is read. Assuming you aren't missing ay data, it should be a decent work around.