I have a 5v infrared beam reflection circuit for capturing heart beat from fingertip. I am using LM324 low pass filter to filter out the noise and i have isolated the ir sensors by covering the sides with a black tape but the noise is not reducing. My output is a blinking LED and the LED is not supposed to light until a finger is placed on the ir pair but the LED lights up whenever i power the circuit. Below is my schematic

enter image description here

  • 1
    \$\begingroup\$ Please add your schematic into your question so it will still make sense when the link dies. You should also explain how you think it should work. \$\endgroup\$
    – Transistor
    Aug 22 '18 at 17:06
  • \$\begingroup\$ define noise: amplitude pulse width or frequency and shape \$\endgroup\$ Aug 22 '18 at 17:12
  • \$\begingroup\$ Do the LM324 power supply pins connect to +5V and ground? \$\endgroup\$
    – glen_geek
    Aug 22 '18 at 17:18
  • \$\begingroup\$ I just edited the question with better explanation. @TonyEErocketscientist \$\endgroup\$
    – ArJay
    Aug 22 '18 at 17:19
  • \$\begingroup\$ Yes. Pin 4 to +5v and pin 11 to ground. @glen_geek \$\endgroup\$
    – ArJay
    Aug 22 '18 at 17:20

The ultimate problem/mistake here which makes noise such as issue is the use of an always-on IR LED as the source.

If you want to build something like this which actually works, then you should modulate the LED at a frequency many times faster than a hearbeat, and use a demodulating detection circuit which measures only the desired signal.

The most robust form of this would be a synchronous detector or Lock-In Amplifier. Essentially what you do is have your MCU turn on the IR LED, measure the received level, then turn off the IR LED, measure the received level again, and subtract. Repeat this many times and filter (or at least average) the difference to produce your output, though be sure not to average so much that you filter out the desired heartbeat. Or you can do this in the circuitry rather than software domain.

Since there's no meaningful delay to want to measure here and there are unlikely to be in-band interference sources, it's also possible to use a band-pass filter to pass only a stable IR LED modulating frequency, amplify that, and then measure the amplitude - with care to circuit design this may give greater dynamic range.

Typically IR remote controls work this way (often with a frequency around 38 KHz), but the output is interpreted as simply on/off, while IR distance sensors may give an analog output which varies with the strength of the synchronous reflection.

Normally the goal of something like this is to actually measure the heartbeat frequency (or even measure blood properties). To detect the presence of a finger (vs some inanimate near reflection), you may have to first measure a heartbeat frequency and then determine if it is stable enough to be a biological source. Or you may more simply be able to build something that decides the modulation-frequency reflection is "strong enough" to probably indicate that a finger (or at least something) is close, and turn on the crude presence indicator LED.


You've got a gain of 2,500X. Your noise density comes from the 68Kohm resistor PLUS opamp internal noise (which will vary from brand to brand, even if the part number is the same) PLUS Power-supply noise PLUS magnetic and electric fields PLUS photonic noise.

Assume your bandwidth is 20 radians per second (set by 470K and 0.1uF), or 3Hz. Perhaps a bit low for best heart-beat amplification.

The noise density of 1Kohm is 4 nanoVoltsrms/square-root-of-one-hertz, thus 2Hz provides 1.414 * 4nV, 9Hz provides 3 * 4 = 12 nanovoltsRMS total over that bandwidth.

The noise density of 100Kohm is 40 nanoVoltsrms/rootHz.

There is a factor of pi/2 for noise integrated DC---infinity, even tho 3Hz is your "bandwidth".

Computation of total input-referred noise: 40nanoVolts * sqrt(3) * pi/2

= 40nVrms * 1.7 * 1.6 ~~~ 40 * 3 = 120 nanoVoltsrms, at input.

Scale this up by 2,500, to 300 microVolts output.

The low frequency noise of opamps, caused by silicon traps emptying and refilling, can easily boost the noise (and 3Hz is low frequency) by 100X if the corner frequency is 10,000Hz for a cheaply-made lotta-surface-contamination foundry. This noise has you at 30 milliVolts output.

But you also could have oscillation.

Show photos of the "noise".


You need to consider the different sources of noise in your circuit.

Most of them come in the form of Johnson-Nyquist noise, aka White Noise, across your resistors, its generally modeled as a voltage source in series with a resistor.

it's equal to $$ V_{Noise} = \sqrt{4K_{b}TRW} $$

T - temperature (Kelvin)
R - resistor (Ohms)
W - frequency (Hz)

Another major noise source is "Shot Noise" as is caused by nearly all semiconductors. Its due to the current fluctuations as they jump across a junction. If you think of a PN junction, aka diode, as the depletion layer between them get smaller and smaller electrons jump the depletion layer creating noise in its variance.

$$ V_{Flicker} = \sqrt{2qI_{DC}W} $$

q - charge of electron (Coulombs)
Idc - DC current (amps)
W - Frequency in Hz

Many (if not all?) OpAmp spec sheets have a line breaking down their noise source.

Another thought could be, do you need a different OpAmp configuration? You might benefit from having two IR sensors and using an Instrumentation Amplifier to look at the difference between them to generate your pulse rate.


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.