LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Differing values between VI and hardware

Hey,

     I am attempting to get voltages out of a Keithley 7710 plugged into a 2700 DMM. I am running Labview 2013 on Windows 7. There seems to be a communication error between the subVI and the VI that calls on the VI. When I run the subVI (Read LVDT 2700.vi) the values in the reading box are in the range that I expect and change when I change the hardware like it is supposed to change. When I put the subVI in a new program with a flat sequence structure, the reading matches exactly what I would expect and what the subVI by itself gives. However, when I put the subVI into my main VI (Test Main 003.vi), the reading does not match what I expect and does not change when I change the hardware. I am reading both the temperature and the LVDT voltage readings from the 7710. The current and voltage readings are coming from two other Keithley 2700s. I am getting the data from a GPIB-USB-HS. I believe I have installed all the necessary software seeing as I get values from the subVI by itself and when I put it in other programs. Any explanation would be very helpful. I have attached the necessary VIs. I know the program uses many other VIs. Let me know if the others are necessary. Thanks.

0 Kudos
Message 1 of 4
(2,174 Views)

Well,  You've pretty much missed some fairly basic points attempting to re-invent a Producer Consumer (Events) design pattern (look at File>>New...>>Frameworks>> Design Patterns.)

 

The main problem is the Timeout case.  Timeout events are queueing up every 100mSec that no othe event is generated.  Each event needs to be processed in the order it was generated.  Likely you have a growing backlog of timeout events to handle and your UI becomes unresponsive.

 

 


"Should be" isn't "Is" -Jay
0 Kudos
Message 2 of 4
(2,167 Views)

It is giving me a signal. The timeout is not the issue. The program gives me readings as quickly as I ask for them and has no hiccups. The problem I was finding is that the values for the LVDT that show up are in the range of 10s of microvolts and I am expecting values in the 10s of millivolts. Also, the reading does not change when I change the hardware but it does for the temperature, the voltage reading and the current reading. If it was a timeout issue, these values would be backlogged as well. 

0 Kudos
Message 3 of 4
(2,156 Views)

I have figured out that the problem is when I configure the LVDT and the Temp subVIs. When I asked the program to configure the LVDT first, it called on GPIB addr 7 and configured it to what I asked in the configure LVDT vi. Then when I configure the Temp, I called on GPIB addr 7 and configured it differently. The program then gives the reading to channel 2 for both temp and LVDT instead of channel 1 for LVDT and channel 2 for temp.

0 Kudos
Message 4 of 4
(2,153 Views)