LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

designing efficient Notch Filter

Dear all,

I am trying to desing a Nothc Filter (Fs=1333, lcf = 40 Hz, hcf = 60 Hz). I used Bandstop filter and applied to my signal. My data is not continuous. the data comes after around 300 ms.

so, i see a ripple at the starting of the filtered signal as it takes alot of time to get settled.

 i am working on Medical applicatio where even the starting bit of data is quiet informative.

 

Could you please guide of how can i desing an effective Notch Filter so that the filter gets settled from the Start itself ?

 I have digital design tookit, have no idea of using it as i am no expert in Signal processing. so pls suggest if i could use any VIs from DDT.

 

Thanks,

Ritesh

0 Kudos
Message 1 of 10
(4,711 Views)

After searching thorug the forum i got something related to my problem.

http://forums.ni.com/ni/board/message?board.id=170&message.id=58068&requireLogin=False

 

but, i coudn't understand the solution described here in the post.

 

Could anyone pls take a look and explain me the soultion with more clarity.

 

Thanks,

Ritesh

0 Kudos
Message 2 of 10
(4,696 Views)

Hi ritesh024

Then using the standard digital filters in Labview the term continuous means that your data is continued from the last data input. If this is true, you can use the "init/cont" Boolean as described in help.



Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
0 Kudos
Message 3 of 10
(4,690 Views)

Hi,

My data is not continuous. i am working on Biomedical application. The data comes from the patient.

In the Filter, ive set that option to "Init"

 

Ritesh

0 Kudos
Message 4 of 10
(4,684 Views)
Does this mean you read some data from the patient and then wait a random interval before you read a new data set? Why not feed the filter with a continuous data stream. If you do not need a update, you do not pas the filter output further. This way your filter will have a continuous data stream and no settling problem


Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
0 Kudos
Message 5 of 10
(4,681 Views)

Does this mean you read some data from the patient and then wait a random interval before you read a new data set?

Yes, my hardware gives me data from the patient every 300ms.

 


 Why not feed the filter with a continuous data stream. If you do not need a update, you do not pas the filter output further. This way your filter will have a continuous data stream and no settling problem

What actually is continuous data stream? is it some random array that i keep inputting into the filter.

the data i get from the H/W is not continuous. so every time the new data comes, the Filter will have to be in the "Init" phase.   

even if i feed the Filter with the Cont. data stream, when the actual data from the H/W will come, it will not be continuous to the previously fed data, so it'll again give the ringing at the start of the data.

 

Ritesh 

 

0 Kudos
Message 6 of 10
(4,670 Views)

ritesh024 wrote:
What actually is continuous data stream?

Let us say I measure ECG. I have a daq unit connected to the ECG apparatus and sample the output from it (ECG waveform) continuously. In my application I read from the daq device buffer every 300ms and feed the data to a filter before processing. This is a continuous data stream.  

If I understand you correct your data is not this type. For a long time ago I made a function almost completely removing the problem with filter settling.

Message Edited by t06afre on 02-18-2009 03:55 PM


Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
0 Kudos
Message 7 of 10
(4,661 Views)

In general it is difficult to eliminate the settling transient of a filter. And, the narrower the filter bandpass, the longer the transient.  From the parameters of the filter it sounds as though you are trying to eliminate power line frequency interference.  Is this your primary problem?

 

The best way to eliminate or reduce power line frequency interference is to keep it out of the data stream in the first place.  Do you use good differential instrumentation amplifiers as part of the ECG acquisition system?

 

If your signal conditioner cannot eliminate all the interference, try extracting the interference and subtracting it from the data.  If you look at each 300 ms segment of data, it will have about 15 cycles at 50 Hz.  Determine the frequency, phase, and amplitude of the power line frequency component.  Then synthesize a sinusoidal signal with those parameters and subtract it from the original dataset.  This should leave you with 300 ms of ECG with very little power line frequency interference and no filter transient.  These calculations can probably be done fast enough to complete them before the next datset is ready.

 

Lynn 

0 Kudos
Message 8 of 10
(4,656 Views)

 From the parameters of the filter it sounds as though you are trying to eliminate power line frequency interference.  Is this your primary problem?

Yes, thats my primary problem.

 

I'll implement the solution you suggested and get back to you.

 

Thanks,

Ritesh

0 Kudos
Message 9 of 10
(4,634 Views)

how to applicated the DFD notch filter with ecg?

and ho to remove the 60 Hz Noise Amplitude and white noise amplitude?

tanx

0 Kudos
Message 10 of 10
(4,423 Views)