01-28-2016 10:44 AM - edited 01-28-2016 10:55 AM
I am attaching snapshot and aactual vi which I am using to observe and save current value reading from keithly 2611B. I want to modify it and need some help. I want to collect 10 data points in 10msec and refresh it . Then next 50 ms no data need to be collected and again 10data in 10 ms. If possible save also. Will it be possible to do so? Please guide me.
Thanks
01-28-2016 10:50 AM - edited 01-28-2016 10:51 AM
I don't have this Keithley VI. How is it giving you a Voltage vs Time value as a DBL numeric..? Is this only one datapoint at a time? If this is the case, you can only pull data as fast as you are able to loop. A 1ms period on your loop is going to be hard to achieve. Is there a way to configure your device to sample at a faster rate and give you multiple datapoints at a time?
Cheers
--------, Unofficial Forum Rules and Guidelines ,--------
'--- >The shortest distance between two nodes is a straight wire> ---'
01-28-2016 11:07 AM - edited 01-28-2016 11:07 AM
James Voltage data is not saved. Only Current data is saved
01-28-2016 11:13 AM - edited 01-28-2016 11:14 AM
Okay, so take my original question and replace "Voltage" with "Current" and answer me that.
Are you reading a current/time value, so the numeric is a value of units amps/second? And are you able to configure the device to give you multiple samples at a time instead of that one string?
Cheers
--------, Unofficial Forum Rules and Guidelines ,--------
'--- >The shortest distance between two nodes is a straight wire> ---'
01-28-2016 11:19 AM
You are NEVER going to be able to poll that Keithley fast enough to get data back every 10ms or 50ms. If the Keithley isn't acquiring the data for you, you'll never get data back at a 1kHz rate. The only way you could possible get this to work is to setup the Keithley to sample at 1 kHz, and grab the data from it as fast as you can. But, I'm guessing this will be a problem, too.
01-28-2016 11:58 AM
I have a program which can read data at faster speed but I am unable to modify, wrirtten by someone else earlier . If anyone can help, I will be highly greatful. I am attaching the vi, I want to generate -10v for 8ms and +2V for 2 ms and 0 v for 30 to 50 ms. I am more interested to see the current profile during -10V and 3 v pulsenand save the data. No need to save data for 0v for 30 msec. Can someone help me out please?
01-28-2016 12:02 PM - edited 01-28-2016 12:03 PM
James I am geting 1 daa point every sec. I can get 1 data point every 20 ms without any error . Below that buffer full message comes.
01-28-2016 01:25 PM
560092 a écrit :
James I am geting 1 daa point every sec. I can get 1 data point every 20 ms without any error . Below that buffer full message comes.
The first thing to do here is to get rid of the Wait Until Next ms Multiple.vi. We don't have the Read.vi for the Keithley 2600 so we don't know if input are unwired and using default value (and in this case what are these default values).
It doesn't make sense to update the graph every 10 ms, it takes processing power for nothing as the human eye can't even track the changes at this rate. Update rate in the range of 125-200ms is sufficient.
As already said in a previous post you will never be able to query the Keithley every 10 ms. What you need to do is to configure your program to read block of data (instead of a single value), that way you will be able to increase the data transfer rate.
Get more familiar with the equipment (the Reference manual is your friend!), it seems to have 2 buffers, see how they are configured and if you can do double buffering.
Don't update the graph and save the data to file in the loop that read from the Keithley, it will slow the loop. You will have to implement a queue to transfer the data from the read loop to the loop that will process it.
Ben64