my goal is to achieve a HIGH SPEED RESPONSE AC COUPLING, as I want to totally get rid of the DC component even though its changing rapidly

I have a signal coming from a sensor ( a proximity probe), the output of the proximity probe has 2 components:

  1. DC out-put that determines the position or the GAP
  2. AC component on the top of that DC voltage to determine the vibration

the thing is, this DC value is going to change rapidly, when the DC changes let's say from 1v to 2v, and if the AC coupling circuit has a high response then the ac part of the signal will be just oscillating around 0 volt as the coupling circuit will take care of the DC part. but this is not the case, when the DC offset increases (for example), the output will go up for a while before it gets back to oscillate around zero volt. I don't want this GOING UP or DOWN thing.

here is the Ac coupling circuit I used, its so simple its just a filter that filters out the low frequencies

enter image description here

I built this circuit in the real life and its working fine as it removes the dc part

here is the original signal with a DC offset enter image description here

and here is the output when the DC is removed :

enter image description here

(the solid line is almost zero volt, its a little bit off because of some calibration issues)

so to sum it up, the problem is when I change the DC value(or it changes by itself as its a sensor signal), the AC moves up or down( depends on weather I am increasing or decreasing the offset ) I want my circuit to highly response so the AC will always be oscillating around zero volt regardless of what is going on on the DC

the frequency of my signal is going to be 50 Hz, if this is needed somehow

Edit: as suggested in the answers: increasing the cutoff frequency and using sallen key filter will improve the performance
cascading 2 passive filters also improved the performance even more than using sallen key filter

here are the circuits

enter image description here

  • 1
    \$\begingroup\$ DC changing rapidly is not DC. Nonetheless, you may just get away with an active 2-nd order high-pass filter on opamp. \$\endgroup\$ – ilkhd May 21 '15 at 9:39
  • \$\begingroup\$ this is my application @ilkhd, the DC value represents the gap and this gap is changing. \$\endgroup\$ – Sabir Moglad May 21 '15 at 9:42
  • \$\begingroup\$ Can you model the DC component movement? \$\endgroup\$ – Andy aka May 21 '15 at 10:19
  • \$\begingroup\$ @ilkhd 2nd order is going to improve sharpen the cut off, what does the ACTIVE part going to add or improve? thanks \$\endgroup\$ – Sabir Moglad May 21 '15 at 11:08
  • \$\begingroup\$ @Andyaka its hard to visualize it \$\endgroup\$ – Sabir Moglad May 21 '15 at 11:10

A simple high pass filter may not be enough to take care of the movements of DC in your signal. For instance, with 10uF and 100kohms the 3dB cut-off point is 0.16 Hz. Above this frequency you will get a reasonably flat response to AC signals and below this frequency AC signals will be attenuated: -

enter image description here

At 0.016Hz (one tenth of the cut-off frequency) any ac signals will be attenuated by 20dB and this just may not be enough for your application.

If your lowest wanted frequency is 50Hz then I reckon you could lower the 100k to 10k and make your cut-off frequency 1.6Hz - this is ten times better than before and will hardly affect any 50Hz signals. In fact making the resistor value = 1k is probably going to be OK for the 50Hz signal - cut-off will be 16 Hz and now the movements of the DC will be 40dB attenuated compared to what they were.

At 50Hz the attenuation will be about 0.5dB. At 10Hz the attenuation will be about 5dB and at 1Hz the attenuation will be about -24dB. Compare this with your original filter that would have had very little attenuation at 1Hz and have a 3dB attenuation at 0.16 Hz.

Making a 2nd order filter can improve things even more dramatically and cascading two sallen key 2nd order op-amp filters give massive improvement again.

It's all down to understanding the bandwidth of the signal you want to to ignore.

| improve this answer | |
  • \$\begingroup\$ thanks I totally understand what is going on now! this is the answer I wanted ! @Andyaka the reason why I used a high value resistor is because I read somewhere for a high pass active filter circuit: "However in this case it is necessary to ensure that the non-inverting has a DC path to earth for the very small input current that is needed. This can be achieved by inserting a high value resistor, R3 in the diagram, to ground. The value of this may typically be 100k " so changing the resistor to lower values as you said, won't affect ? \$\endgroup\$ – Sabir Moglad May 21 '15 at 11:43
  • 1
    \$\begingroup\$ The non-inverting input doesn't care about the value of resistance to ground. However the driving source that inputs a signal to the filter may not like resistors below 100 ohm but almost certainly 1000 ohms won't prove to be a problem. \$\endgroup\$ – Andy aka May 21 '15 at 12:00
  • \$\begingroup\$ how about using smaller capacitor values ? theoretically as I understand, its supposed to but may be I am missing any point? I used 0.47 uF and it gave a better performance \$\endgroup\$ – Sabir Moglad May 22 '15 at 1:51
  • \$\begingroup\$ I tried a second order sallen key active filter and another circuit that in which I cascaded two PASSIVE filters but ironically the passive filters produced a better result than sallen key filter, I can't find and explanation for that ! @Andyaka \$\endgroup\$ – Sabir Moglad May 22 '15 at 3:45
  • \$\begingroup\$ The devil is in the detail. I'd need circuits to make comparisons but intuitively maybe the Sallen key was set at too low a cut off freq. \$\endgroup\$ – Andy aka May 22 '15 at 7:50

You need to make the cutoff of your high pass filter higher. The question then being whether or not you can make it high enough to eliminate the changes in the "DC" without also destroying your AC signal.

You will need a sharp filter with a cutoff between 50Hz, and the highest frequency you expect to see on your "DC" signal. A simple RC highpass probably won't be sufficient.

I assume you are still working on this system. The same solution discussed there would be useful here. Use a relatively weak high pass on the analog side, then do a very sharp highpass digitally in Matlab. As also mentioned in the other question, a non-causal filter will help eliminate the slow walk to the correct DC value - here it will help remove the slow walk to true DC removal.

| improve this answer | |
  • \$\begingroup\$ man you are awesome! thanks so the key point is again improving the perfoemance digitally \$\endgroup\$ – Sabir Moglad May 21 '15 at 11:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.