Microcontroller Based Pulse Oximeter For Undergraduate Capstone Design
Microcontroller Based Pulse Oximeter For Undergraduate Capstone Design
net/publication/251925490
CITATIONS READS
0 3,037
3 authors, including:
Some of the authors of this publication are also working on these related projects:
Comparing the Effectiveness of Reflectance and Transmittance PPGs on Different Locations for Use in a Helmet Mounted Sensor View project
All content following this page was uploaded by Ying Sun on 08 August 2014.
I. INTRODUCTION
The core concept behind pulse oximetry is the variation of
the absorption of photons traveling through a blood specimen Fig. 1. Block Diagram of the pulse oximeter system and transistor network
schematic.
at different wave lengths [1]. This variation is related to the
presence of hemoglobin in the blood specimen. The extinction is limited time in a college career, such a design project could
coefficient for each state of hemoglobin—oxyhemoglobin teach a number of practical abilities, and give undergraduates
(HbO2), deoxyhemoglobin (Hb), carb-oxyhemoglobin an experience of facing real-life engineering obstacles [2].
(HbCO), and methemoglobin (HbMet)—varies uniquely with
respect to photon wavelength. II. METHODS
A sensor containing two LEDs (infrared and red) and a
photodiode is placed on a thin part of the patient’s anatomy, A. Hardware
such as a finger. The two LEDs are paired and placed on the This section of the design consists of a transistor network,
opposite side of the photodiode such that as they alternately pulse oximeter probe, and photoplethysmogram (PPG)
transmit light through the anatomy, the photodiode acts as a amplifier circuit. The PIC microcontroller drives the transistor
light detector, generating an analog electrical signal for each network and subsequently the LEDs with a 1 KHz square
wave length proportional to the amount of photons which have wave alternating between zero and five volts. The transistor
not been absorbed or scattered. The pulsatile component of network is designed to simplify the process of toggling
each signal is used to generate similar arterial pressure between the infrared and red LEDs of the probe, which as
waveforms which, because of the difference in hemoglobin shown in figure 1, are reverse biased and thus require a bipolar
extinction coefficients discussed, can be compared to deduce signal to change. Given that the microcontroller is limited to
the proportion of oxyhemoglobin in the patient’s blood and positive voltage, the transistor network utilizes two output
thus give an accurate estimate of their oxygen saturation. ports of the PIC to generate the necessary bipolar signal. That
Recognizing the vital facts of this information, the objective is, a positive or negative difference in voltage across the LED
of the project is to design and construct a fully operating pulse terminals is determined by the port chosen for output by the
oximeter through the use of the PIC18F452 microcontroller PIC. This scheme offers a work-around for high frequency
(Microchip, Chandler, AZ) and to determine whether such a time multiplexing used in commercial pulse oximeters such
project is adequate as a senior capstone design. that the infrared and red signals may be processed
Undergraduate courses in engineering rely heavily on the individually.
fundamentals of electronics, signal processing, and Once at the probe, the 1 KHz signal is amplitude-modulated
programming, with little hands-on application. Because there by the pulsating blood in the patient’s finger and received by
where u[n] represents the nth data point of the digitized signal.
Positive x[n] identifies a rising edge of the signal; negative
x[n] identifies a falling edge of the signal; and x[n] = 0
identifies a peak or valley in the signal. Whether x[n] = 0
corresponds to a peak or a valley is determined by simply
comparing x[n+1] and x[n-1]. That is, if x[n-1] > x[n+1], x[n]
identifies a peak in the signal. If x[n-1] < x[n+1], x[n]
identifies a valley in the signal. These conditions are checked
within the interrupt using basic control statements wherein
each peak and valley is counted. Due to the dicrotic notch in
some arterial waveforms—corresponding to the closing of the
aortic valve and a momentary increase in aortic pressure—a
Fig. 2. Arterial pressure waveform and peak-valley detection results.
delay is added to the detection algorithm causing the program
to disregard a set number of data points after detecting a peak. REFERENCES
After eight peaks have been detected a flag is set, changing the
1 KHz square wave output port and thus switching LEDs. A [1] Webster JG. Medical Instrumentation: Application and Design, fourth
edition. John Wiley and Sons, New York, New York, 2009.
small delay is also triggered by this flag to ensure the system
has settled before peak and valley detection resumes. [2] Opuszynski M, Belani H, Andrews R, Potvin J, Sun Y. Experiential
The patient’s pulse is calculated in beats per minute (bpm). Learning in an Undergraduate Biomeasurement Course: Embedded
Instrumentation. Northeast Bioengineering Conference 2009.
A flag is set after four peaks have been counted in each signal,
initiating pulse calculation in the main function of the [3] CC8E C Compiler, http://www.bknd.com/cc8e/introduction.shtml.
January 30, 2010.
program. This calculation is based on the sampling rate and a
loop counter which is incremented for every sample. The [4] Chabot E. Serial LCD Interface: ELE 492 – Embedded System Design.
result is then passed through a function converting it to Course handout, University of Rhode Island. July 20, 2006.