Dynamic Signal Acquisition

cancel
Showing results for 
Search instead for 
Did you mean: 

How to use Different Software Filters for different channels using DAQ Assistant

HI, i am using NI-4472 DSA card and will get input from all 8 channels. I am trying to build an application using LABVIEW 8 platform and i have to get different inputs at different channels. I want to use different software filters for different input channles. I am acquiring the signals using the DAQ Assistant but the problem is that i get a common output from the DAQ Assistant for all channels. If i try to use 2 differnt DAQ Assitants then it gives error. Please help me on this issue. I am using the Express Filter VI for Filtering purpose. I have set the Filtering Type as Smoothing Filter and then in filter specifications i have choosen Exponential Filter but i want to set different Time Constant values for differnt inputs. Please tell me how can i do that? I am stuck on this issue and just cant proceed forward for the last 2 days. I will be very thankful to you all who will help me. For ease of understanding my problem i am attaching the Filter Vi's snapshot that i am using and the filter specifications snapshot that i am trying to use. I need to use 2 different values of time constants for different inputs. Please help me on this.
Download All
0 Kudos
Message 1 of 4
(7,242 Views)
Hi shami81,

If I understand your question correctly, you are looking for a way to split the output signal of the DAQ Assistant VI.  You can use the Split Signal VI to do exactly that.  Since you are using 8 input channels, resize the Split Signal VI to include eight outputs (you may only notice one output terminal...if this is the case, read on for details of what to do). 



One thing to note is that there has been a known issue with the Split Signal VI.  If you try to wire more than one output of the Split Signal VI, you may notice that you can only wire one of the output terminals to another VI.  The workaround is to wire starting from the Filter VI input TO the Split Signal VI outputs.  Do this for all eight Filter VIs that you are using.  


Message Edited by Hani R on 12-12-2007 04:56 PM


Best Regards

Hani R.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 4
(7,221 Views)

Thank you Hani for your time and advice i figured out the solution myself after posting the question i by chance looked one of the examples in LabView and found out this solution. Now my next question is that i want to work with timers. My idea is tht when i press the start button in my application it should run for 1 minute only, and for the first 50 sec no acquisition is being done but for the last 10 sec we start acquisition and as 10 sec completes we finish the acquisition. I want to control all this using software in labview dont want to use any external hardware triggers. Can you please suggest me any solution about this. I have thought of using the Elapsed time VI but could not figure out how it really works and there was no example included in labview. Please help me on it. Waiting for your response as always.

Thanks once again for your help.

Kind regards.

Ehtisham

0 Kudos
Message 3 of 4
(7,213 Views)
Hi Ehtisham,

You can use a Flat Sequence Structure in your program to control the software timing of execution.  Right click the Flat Sequence Structure after you place it on the block diagram and select Add Frame After.  In the first frame you can place a Wait(ms) VI and wire in the value you would like to wait (50000ms in your case).  You can place the DAQ assistant in the second frame.  You can configure the Timing Mode of the DAQ Assistant to be N Samples.  You can effectively control the length of acquisition by controlling the Sampling Rate and Number of Samples.  For example, if you sample 10000 points at 1kHz, your DAQ device will acquire for 10s (10000points / 1kHz ). 

You will not need to use the Elapsed Time VI in the solution above.  I will explain how to use it however, in case you use it for a different solution.  When you place the Elapsed Time VI on the block diagram you will notice the configuration window will open up.  From this window you can specify how many seconds you want the VI to count.  When you execute this VI and it counts up to the number of seconds that you specified, it will output a true Boolean (which you can access from the Time has Elapsed output).  I hope this helps. 




Best Regards

Hani R.
Applications Engineer
National Instruments
0 Kudos
Message 4 of 4
(7,202 Views)