Introduction
As part of my coursework at University, I was tasked with designing a digital stethoscope by only using LM324 Op Amps which would then be implemented on a breadboard. Our goal was to amplify a heart signal so that the heart beat can be heard via headphones. To do this, we needed to amplify an assumed average heart signal voltage of 1mV - 5mV to 2V to 3V in order to drive the headphones.
Circuit Design
I first began by calculating the minimum and maximum amplification needed by considering the extreme cases. The range of amplification was calculated to be between 400 and 3000. I then decided to use 2 non inverting amplifiers to amplify as the Op Amp is limited to a max gain of 200. By first setting the first amplifier gain to 100 (fixed) and second amplifier to between 0 and 30 , we are able to sweep through the range of amplifications needed. Note that the amplification stacks and is cumulative. Having modelled the amplification on Altium, I was surprised at the inaccuracies between simulation and real life. Altium assumed that the Op amp was ideal which meant that initially I thought of using a one step amplification but in reality me and my lab partner figured out that the amplification per op amp was limited to 200. The resistance ratios were calculated with a very simple formula of Amplification = 1 + (R_f/R_in). To get a variable amplification on the second op amp, a variable resistor was used.


After amplifying the input signal to the correct range, we implemented a low pass filter to only allow low frequency signals through to clean the signal. We chose the low not high pass filter to first reduce high frequency noise and also because low we assumed any low frequency noise would be negligible compared to heart and lung sounds. To find the needed resistors and capacitors for the low pass filter circuit we use the formula shown below.

After filtering the sound we used a Schmitt Trigger to power a LED. The Schmitt Trigger turns the analogue signal of the heart into a digital signal allowing it to switch a LED on or off. The circuit will now look like below.

Now to finish the circuit, headphones were attached to the output of the second amplifier with a headphone adaptor. The input was attached to a microphone circuit as shown below.

With this now completed, we began testing the circuit with heart sounds from YouTube.

The scope reading showed that the output was amplified to 4V from a 28mV input. This meant that the gain was 142.8. Although this is outside our intended range (400 – 3000), the input signal from the heart sound was much higher than expected which meant that the amplifier needed to amplify less to reach a signal to drive the headphones. This showed that our circuit works for an even wider range of input voltages than intended. There was also a loud thumping noise at each heartbeat in the headphones which further suggested that the circuit was working as intended, as the amplification could drive the headphones with an appropriate voltage. The LED on in the circuit also flashed at every heart sound which proved that our circuit worked as shown above. Overall, the stethoscope was a success and worked even outside of intended values.
Design Improvements
We could improve our circuit by changing our potentiometer from a 44kΩ to a 29KΩ potentiometer. This would mean that our variable gain in the second amplification circuit would be more accurate and it would prevent over amplification, which could potentially damage the headphones.
We could also include a high pass filter, which would filter out low frequency noise. This may improve the system, however we found that the low frequency noise was negligible, meaning that the filter may not be very effective compared to the other design improvements.
We improve the design by manufacturing a PCB of the circuit instead of using a breadboard. Doing this would reduce the form factor of our stethoscope and the components would be more secure compared to the components on the breadboard. Having a PCB would also allow us to manufacture the product more easily and at a larger scale.
We could also include a rate counter, which would count the patient’s heartbeat. This would mean that we would be able to calculate the heart rate of the patient over a certain period of time.