Analog high-pass filter using PSoC OpAmp

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
ge18c_1608226
Level 1
Level 1

Hi,

   

I'm trying to do some processing of the analog signal on the PSoC 5LP. The problem is that the signal has rather high 50 Hz mains hum superimposed, and it even exceeds the input range of PSoC opamps and other analog components. Also, since the relevant signal is small compared to the hum, digital filtering is not very useful. I would like to use some kind of an analog filter using PSoC opamps (eg. high pass with cutoff above 100Hz), but I'm not sure how to do the biasing, since PSoC opamps are single supply.

   

How should the biasing for the high pass analog filter be done?

0 Likes
1 Solution
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

gen,

   

attached an example of simple RC filter input, all you need is to adjust R3 and C4 to cut 50Hz

   

View solution in original post

0 Likes
4 Replies
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

gen,

   

attached an example of simple RC filter input, all you need is to adjust R3 and C4 to cut 50Hz

   

0 Likes
lock attach
Attachments are accessible only for community members.

Thank you for your answer odissey!

   

I've assembled the circuit like one in the attachment image. Opamps and PGAs are both configured for the high power, vrefs are all auto-enabled, the code only includes the initialization of the components.

   

10K resistor and 47nF should produce a cutoff frequency of ~320Hz, which is high enough for decent attenuation of the mains hum, and still is well below the signal frequency (tens of kHz range). I'm scoping between Pin2 and Pin4, and I get nothing. Do you possibly see where I am wrong?

   

(I've also tried adding about 1uF between Pin3 and GND, but it made no difference)

0 Likes
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

gen1808,

   

F_cutoff=1/RC=10k x 0.047u =2.1kHz. Note that PGA_Inv input impedance is low (~5k), and depends on gain setting, see datasheet.

   

Increase C1 to 1u, R1 to 100k, remove OpAmps 1 and 2, remove PGA_2, set PGA_1 gain to 1. Provide few kHz signal from signal gen (or WaveDAC). You should observe signal on input pin and output pin with a scope (between pin and ground) If none, then input pin is damaged, change to another pin/port. PSoC inputs can't tolerate more than ~5.5V, since AC noise was previously larger than that, pins may be damaged.

   

What range signal amplitude / frequency we are talking about?

0 Likes
ge18c_1608226
Level 1
Level 1

odissey1,

   

You are absolutely right, I just checked and two pins I was using were damaged. I moved the configuration to the other pins and now it works perfectly (signal is relatively small, <1V, but the hum happened to be about 6-7V, the signal frequency is between 10 kHz and 100 kHz).

   

Thank you very much!

0 Likes