LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

initial transient

Hi

 

Is there a way to avoid the initial transient we get from digital filters? I am using build a filter from transfer function vi and dfd filtering vi to filter some acquired signals from daqmx. I am getting a transient initialy that i dont need.

0 Kudos
Message 1 of 15
(3,621 Views)
Is ignoring not an option?
0 Kudos
Message 2 of 15
(3,593 Views)

I am driving a motor from that signal. Therefore i need to get rid of it. Ignoring is not an option.

0 Kudos
Message 3 of 15
(3,580 Views)

Hello Suni,

 

Thanks for your post!

 

I see that you are needing to delete some things from a signal that you are getting from DAQmx. I would say the best way to do this is to use the Delete From Array.vi. The only thing about using this VI is you will need to know how many samples to delete. There is also a function called First Call?.vi that allows you to only do the action once when you run the VI. Take a look at the attached screen shot where I am able to delete 10 samples from the first 1000 samples that I bring in using a case structure with the First Call?.vi. My false case simply wires the information to the waveform chart. So I would suggest doing something like this after your filtering and you can adjust how many are deleted based on your application. Let us know if this helps you!

 

Cheers!

 

Corby_B

http://www.ni.com/support 

Message 4 of 15
(3,565 Views)
Thanks for the reply. yes it worked. But I am aquiring data continously form the DAQmx. I used waveform type data in my application to do data processing. Main reason for this is i want to display data in realtime. Is there a way to  do this in waveform data. still your method is good too. i am using daq assistant express vi to aquire data in a while loop. when i do that does the daq assistant start the task every loop iteration?. What are the drawbacks of using daq assistant express vi?
0 Kudos
Message 5 of 15
(3,543 Views)

Hello,

 

Thanks for your post back!

 

The DADS assistant is a great tool to gather data but may not be the best if you have a lot of data. In this case timing becomes a big issue. Yes the DADS assistant does all the configuration inside the programming loop so this will take longer for your loops to execute. The low level Vic's are proffered when you get into very complicated programs and reading lots of data. In your case you will be pragmatically removing samples. Take a look at this link that talks about using the low level Vic's to handle most of you DADS needs. There is also an express VI that can convert your waveform data to dynamic data. Go to Express >> Signal Manipulation on your functions palliate. 

 

Cheers!

 

Corby_B

http://www.ni.com/support 

Message 6 of 15
(3,513 Views)

Thanks for the reply. In order to make the system respond faster i changed my data acquisition to 100s/s and 10 samples per channel. Now i delete enough samples to get rid of the transient of the filter. Any idea how to compensate for that . Thanks

0 Kudos
Message 7 of 15
(3,503 Views)
sorry i meant now i can't delete enough samples of the array to get rid of the transient of the filter completly during the first call because i only have 10 samples per channel.
0 Kudos
Message 8 of 15
(3,495 Views)

Hi suni,

 

If you are still using the DAQ Assistant, you can just modify the condition for the case structure. Depending on how many samples you need to delete, you can change the number of times the first case is called. I have attached an example below.

 

 

 

If you are using the lower level DAQmx functions, you can just read more samples the first time you call the DAQmx Read VI. There is a input for the number of samples to read that is read and you can make this value higher the first time the loop is performed. 

 

Regards,

Kent

Applications Engineer

Message Edited by tnek on 08-28-2008 02:15 PM
Message 9 of 15
(3,474 Views)

I have to output this filtered signal. i am using daqmx assitant express vi for outputting (writing to cahannel) that also. it also sampls at 100s/s and 10 sampls. whenever it doesn't have samples to read it produce errors. that is why i  cant delete sampls completly during first call. if i dont leave at least one sample for daq assistant write program doesn't work.

 

0 Kudos
Message 10 of 15
(3,465 Views)