01-19-2010 05:45 PM
Hi, I have a DAQ PCI-6115 card and BCN-2110 connector that I want to continuously measure the analog voltage. Now I can continuously measure the laser light intensity by photodiodes through channel 1, and get the reference through channel 0. Then I can get the harmonic signals by the MultiChannel LockIn - DAQmx.vi. However, I also want to simultaneously detect another analog signal in voltage throuth channel 2. The problem is: the voltage range of channel 2 is about 0.3 mV to 6 mV which is far lower than the other 2 channel (0-10V), how could I set different limitation per channel to continuously and simultaneously acquire all data?
I found Dennis Knutson provided the solution a year ago, that is shown below:
In the solution, one would have arrays of channels, ranges, configurations, but I don't know how to apply it to my case. Is there any suggestion or other solution?
Thanks a lot!
Solved! Go to Solution.
01-20-2010 07:28 AM
01-20-2010 08:23 AM
Dear Charles0820, thanks for your suggestion, I will take your advice.
But I should detailed my problem first. The vi is attached, and some part of it is shown below:
However, it seems to be wrong cuz the message shows the specified resource is reserved. Please gime me any suggestion, and I do appreciate your help!
01-20-2010 09:27 AM
Why didn't you try to search for the error code or error message. You would have gotten numerous posts on this basic mistake.
The answer is simple - you simply cannot run separate tasks on the same hardware resource. Use a single DAQmx Read and you will get both channels.
And when you rewrite the program, remove the stop and clear tasks from inside the loop.
01-21-2010 06:03 AM
I revised the vi as following:
But only the last task is output from the for loop, so I can merely acquire the voltage from physical channel 2. I tried to enable the indexing of the output task, so both task can be output, but it failed to input more than one task into the DAQmx timing.vi. Could you please give me more suggestion? What I need is to continuously acquire the voltage from channel 0 and 1 to decompose the signal, and also acquire the voltage from channel 2. The problem is the voltage from channel 0 and 1 is much larger than that from channel 2, so if I set the voltage range of both task in the same scale, I can't resolve all signals.
Thanks a lot!
01-21-2010 08:58 AM - edited 01-21-2010 08:59 AM
You've got the task output autoindexed and that is not correct. Try the code below.
01-21-2010 02:48 PM
It works!! Thank you very much, Dennis. You truely do me a big favor and help me to understand DAQmx further. May I ask one more question? Why can't I use the syntax "Dev1/ai0:1"? I thought I can use this syntax cuz the voltage range of channel 0 and 1 is the same.
01-21-2010 02:55 PM
Sorry, the reason should be the auto indexing.
Thank you again!