Optical Heart Rate Monitor

In this application note, we create a heart rate monitor by using one IR LED and phototransistor pair and observing the waveform at the phototransistor output. This is intended for illustrating a typical light sensor application and not intended for actual medical use. The accompanying video also shows the typical low level signals involved in this type of circuit and how the dynamic range from a 24 bit ADC EMANT300 USB DAQ allows such signals to be observed without further signal conditioning.
Optical Heart Rate Monitor - schematic

When a finger is placed on the phototransistor, the voltage read rises above 0.3V. If a good contact is made, a sinusoidal type signal is observed. As the signal rides on a fluctuating DC signal, a simple differential signal is created. From maths, we know that when a max or min is reached, its differential value is zero. After this an autocorrelation function is applied and the peaks extracted to obtain the heart rate. When the signal is noisy, a wrong BPM will be calculated. Any count that is obviously wrong is ignored. This is all taken care of by the HRM class. The HRM class is written in C#. You can improve on it using the Visual C# 2005 Express. The figure below shows the filtered waveform seen at the phototransistor. The waveform is filtered by software using averaging.

Leave Comment

characters left:

New Circuits