Mini Project Report Sarang
Mini Project Report Sarang
Project Report
Submitted By –
Under guidance of
This is to certify that following T.Y. Btech (ENTC) students from KIT’S COLLEGE OF
ENGINEERING, KOLHAPUR have completed MINI PROJECT successfully in partial
fulfilment for the award of degree of Btech(ENTC). They worked on Smart vehicle indicators
project during sem five, 2022-23 under supervision of MR.Eknath Patil.
We are highly grateful to Prof. A.R. Nigvekar HOD (ENTC) from KIT’S COLLEGE
OF ENGINEERING, KOLHAPUR, for providing this opportunity to carry the project
at ENTC Dep. We would like expresses our gratitude to other faculty member of ENTC
Dep for proving academic input, guidance and encouragement throughout this period.
We would like express a deep sense of gratitude.
Chapter 1: Certificate
Chapter 2: Acknowledgement
Chapter 3: Introduction
Chapter 4 :- Literature survey
Chapter 5: Components
Chapter 6: Circuit Diagram,
Chapter 7: Working of Model
Chapter 8: Advantages
Chapter 9: Conclusion
Chapter 10: Reference
Chapter 11: Annexure
INTRODUCTION
In recent years, the intersection of healthcare and technology has led to remarkable innovations, empowering
individuals to monitor their health in real-time. One such innovation is the digital oximeter, a device crucial
for measuring blood oxygen saturation levels and pulse rate accurately. With the accessibility of Arduino
microcontrollers and various sensors, creating your own digital oximeter has become not only feasible but
also an exciting project for enthusiasts and professionals alike.
This guide serves as a comprehensive walkthrough for building a digital oximeter using Arduino. Whether
you're a hobbyist exploring the realms of DIY electronics or a healthcare professional seeking a cost-
effective solution, this project offers a practical and educational experience. By leveraging Arduino's
simplicity and versatility along with readily available components, you can construct a functional oximeter
capable of providing vital health insights.
Throughout this guide, we'll delve into the fundamental principles of pulse oximetry, explore the
components required for the project, and provide step-by-step instructions for assembling the device.
Additionally, we'll discuss the programming aspect, enabling you to understand how to interface sensors
with Arduino to obtain accurate readings. Furthermore, we'll highlight potential challenges and
troubleshooting techniques, ensuring a smooth and rewarding project experience.
By embarking on this journey, you'll not only gain hands-on experience in electronics and programming but
also contribute to democratizing healthcare technology. Whether you're motivated by curiosity, necessity, or
a desire to make a positive impact, building a digital oximeter with Arduino is an endeavor worth pursuing.
So, let's roll up our sleeves, gather our components, and embark on this exciting adventure of building a
digital oximeter that can potentially enhance healthcare accessibility and empower individuals to monitor
their well-being with greater convenience and precision.
Literarture Review
SMART criteria were originally proposed as a management tool for project and program managers to set
goals and objectives (Doran 1981 and others), but these days the SMART criteria have been well accepted in the
field of monitoring and evaluation and have become an engrained, common best practice approach in developing
indicators.
https://eca.state.gov/files/bureau/a_good_start_with_smart.pdf
https://extension.colostate.edu/docs/staffres/program/Identify-SMART-Indicators.pdf
COMPONENTS
• Arduino UNO
Microcontroller: The Arduino Uno is built around the ATmega328P microcontroller from
Microchip (formerly Atmel). This microcontroller operates at 16 MHz and has 32 KB of Flash
memory for storing the program, 2 KB of SRAM, and 1 KB of EEPROM.
Digital I/O Pins: It features 14 digital input/output pins (of which 6 can be used as PWM
outputs) that allow you to connect sensors, actuators, LEDs, and other components. These pins
can be controlled using digitalWrite(), digitalRead(), and pinMode() functions in the Arduino
IDE.
Analog Input Pins: The Arduino Uno has 6 analog input pins, marked as A0 through A5,
which can be used to read analog voltage levels from sensors or potentiometers. These pins have
a resolution of 10 bits, providing 1024 possible values (0 to 1023).
Power Pins: The board includes pins for power supply and ground connections. It can be
powered via USB connection, an external DC power jack (7-12V DC), or by using the Vin pin.
USB Interface: The Arduino Uno features a USB Type-B connector, allowing it to be
connected to a computer for programming and serial communication. It utilizes the
ATmega16U2 or ATmega8U2 microcontroller for USB-to-serial conversion.
Reset Button: There's a reset button on the board that allows you to restart the microcontroller,
restarting your code execution from the beginning.
Clock Source: The Arduino Uno uses a ceramic resonator as its clock source, providing stable
timing for the microcontroller.
Operating Voltage: The operating voltage of the Arduino Uno is 5 volts. However, it can
accept input voltages from 7 to 12 volts via the DC power jack or Vin pin.
Programming: You can program the Arduino Uno using the Arduino Integrated Development
Environment (IDE), which is based on C and C++ programming languages. The board is
compatible with Windows, macOS, and Linux operating systems.
Dimensions: The Arduino Uno board measures approximately 68.6 mm (length) x 53.4 mm
(width).
The MAX30100 is a compact and versatile pulse oximeter and heart-rate sensor module
commonly used in wearable fitness trackers, health monitoring devices, and medical equipment.
It employs photoplethysmography (PPG) to measure heart rate and blood oxygen saturation
(SpO2) levels non-invasively by emitting both red and infrared light into the skin and analyzing
the reflected light.
• LCD display
Choose a display module to visualize the measured data. Options include LCD displays (e.g.,
16x2 character LCD), OLED displays, or TFT LCD screens, depending on your preference for
size and readability.
The working of a digital oximeter model using Arduino typically involves several steps:
Light Emission: The oximeter emits both red and infrared light into the tissue (usually a fingertip). LEDs
are commonly used to generate these light sources. The red light is absorbed by oxyhemoglobin and
deoxyhemoglobin in the blood, while the infrared light is mainly absorbed by tissue and bone.
Light Detection: Photodetectors, often photodiodes, detect the amount of light that passes through the tissue
after absorption by the blood. These photodetectors are placed opposite the LEDs on the oximeter probe.
Signal Processing: The detected light intensity is converted into electrical signals by the photodetectors.
These signals are then processed to extract the pulsatile component caused by arterial blood flow. This
involves filtering out noise, motion artifacts, and ambient light interference.
Calculation of Blood Oxygen Saturation (SpO2): The ratio of red to infrared light absorption is calculated
to determine the oxygen saturation of hemoglobin in the blood. The Beer-Lambert law or similar algorithms
are often used for this calculation.
Heart Rate Measurement: The pulsatile component of the signal is analyzed to determine the heart rate.
Peaks in the waveform correspond to the pulse, and the time between peaks is used to calculate the heart
rate.
Display and Visualization: The calculated SpO2 and heart rate values are displayed on a screen, such as an
LCD display or OLED display, connected to the Arduino. This provides real-time feedback to the user.
User Interaction: The oximeter may include user interaction elements such as buttons or a touchscreen for
controlling the device, adjusting settings, and initiating measurements.
Data Logging and Transmission (Optional): Optionally, the oximeter may include features for logging
data to an external storage device or transmitting data wirelessly to a computer or mobile
Power Supply: The oximeter is powered either by a USB connection or by batteries, depending on the
design and intended use case.
Calibration and Quality Control (Optional): Periodic calibration and quality control checks may be
performed to ensure the accuracy and reliability of the oximeter's measurements.
Program :-
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include "MAX30100_PulseOximeter.h"
byte smile[] = {
B00000,
B00000,
B01010,
B00000,
B10001,
B01110,
B00000,
B00000
};
byte mod[] = {
B00000,
B00000,
B01010,
B00000,
B11111,
B00000,
B00000,
B00000
};
byte sad[] = {
B00000,
B00000,
B01010,
B00000,
B01110,
B10001,
B00000,
B00000
};
PulseOximeter pox;
uint32_t tsLastReport = 0;
void onBeatDetected()
{
Serial.println("Beat!!!");
void setup()
{
Serial.begin(115200);
lcd.init();
lcd.backlight();
lcd.createChar(1 , smile);
lcd.createChar(2 , mod);
lcd.createChar(3 , sad);
lcd.setCursor(0, 0);
lcd.print(" Pluse");
lcd.setCursor(0, 1);
lcd.print(" Oximeter");
delay(2000);
if (!pox.begin()) {
Serial.println("FAILED");
for (;;);
} else {
Serial.println("SUCCESS");
}
pox.setIRLedCurrent(MAX30100_LED_CURR_7_6MA);
pox.setOnBeatDetectedCallback(onBeatDetected);
}
void loop()
{
pox.update();
if (millis() - tsLastReport > REPORTING_PERIOD_MS) {
lcd.clear();
lcd.setCursor(0 , 0);
lcd.print("BPM : ");
lcd.print(pox.getHeartRate());
lcd.setCursor(0 , 1);
lcd.print("Sp02: ");
lcd.print(pox.getSpO2());
lcd.print("%");
tsLastReport = millis();
Affordability
Arduino microcontroller boards and components are relatively inexpensive compared to specialized medical
devices. Building a digital oximeter with Arduino can significantly reduce the cost of acquiring a similar
commercial product, making it more accessible to individuals and healthcare facilities with budget
constraints.
Customizability
Arduino-based digital oximeters offer a high level of customization to suit specific requirements and
preferences. Users can select the sensors, display modules, and other components according to their needs,
allowing for flexibility in design and functionality.
Accessibility:
Arduino platforms are known for their user-friendly development environment and extensive documentation,
making them accessible to beginners and experienced developers alike. Building a digital oximeter with
Arduino enables enthusiasts, students, and researchers to delve into healthcare technology without requiring
specialized knowledge or equipment.
Educational Value
Constructing a digital oximeter using Arduino provides a valuable learning experience in electronics,
programming, and healthcare technology. It offers an opportunity to gain hands-on experience in sensor
interfacing, signal processing, data visualization, and system integration, enhancing skills and knowledge in
STEM (Science, Technology, Engineering, and Mathematics) fields.
Open-Source Community
Arduino is built on open-source principles, fostering a vibrant community of developers, makers, and
enthusiasts. By leveraging the Arduino ecosystem, users can access a wealth of resources, libraries, tutorials,
and projects shared by the community, accelerating the development process and facilitating collaboration.
Rapid Prototyping:
Arduino facilitates rapid prototyping of digital oximeters, allowing developers to quickly iterate and refine
their designs. With its plug-and-play capabilities and reusable components, Arduino accelerates the
development cycle, enabling users to test ideas, gather feedback, and make improvements efficiently.
Empowerment
Building a digital oximeter with Arduino empowers individuals and communities to take control of their
health monitoring needs. By providing access to affordable and customizable technology, Arduino-based
solutions promote self-care, health awareness, and proactive management of medical condition
Application :-
anxiety, and relaxation techniques. Real-time feedback on SpO2 levels and heart rate variability (HRV) can
help users practice deep breathing exercises, meditation, or mindfulness techniques for stress reduction and
overall well-being
.
Industrial Safety
In industrial settings, where workers may be exposed to hazardous environments or confined spaces,
Arduino-based digital oximeters can be used for occupational health monitoring. These devices help ensure
workers' safety by detecting early signs of hypoxia (low oxygen levels) or physiological stress, allowing for
timely intervention and prevention of accidents or injuries.
Future scope :-
The future scope of digital oximeters built using Arduino is promising, with opportunities for innovation,
advancement, and widespread adoption in various domains. Here are some potential areas of future
development:
Enhanced Accuracy and Performance: Future iterations of Arduino-based digital oximeters may
incorporate advanced signal processing algorithms, improved sensor technologies, and enhanced calibration
methods to achieve higher accuracy and reliability in measurements. This includes reducing motion artifacts,
ambient light interference, and sensor drift for more precise health monitoring.
Miniaturization and Wearable Integration: There's a growing trend towards miniaturization and
wearable integration of health monitoring devices, including digital oximeters. Future advancements may
focus on designing smaller, lightweight, and more discreet oximeter modules that can be seamlessly
integrated into wearable devices, smart clothing, or accessories for continuous health monitoring and real-
time feedback.
Wireless Connectivity and IoT Integration: Integrating Arduino-based digital oximeters with
wireless communication protocols such as Bluetooth Low Energy (BLE) or Wi-Fi enables remote data
transmission, cloud connectivity, and integration with IoT platforms. This opens up possibilities for remote
patient monitoring, telemedicine applications, and population health analytics, where healthcare data can be
collected, analyzed, and shared in real-time for personalized interventions and public health initiatives.
Smart Health Features and AI Integration: Future digital oximeters may incorporate smart health
features, such as predictive analytics, health trend tracking, and personalized recommendations based on
machine learning algorithms and artificial intelligence (AI). By analyzing longitudinal data and user
behavior patterns, these devices can provide proactive health management solutions and early warning alerts
for potential health risks.
Biometric Sensing and Multi-Parameter Monitoring: Advancements in sensor technology and signal
processing enable digital oximeters to expand beyond SpO2 and heart rate monitoring to include additional
biometric parameters such as respiratory rate, blood pressure, and hydration status.
Point-of-Care Diagnostics and Clinical Applications: Arduino-based digital oximeters have the
potential to evolve into point-of-care diagnostic tools for screening, diagnosis, and management of various
medical conditions, including respiratory diseases, cardiovascular disorders, and sleep disorders. Future
developments may involve obtaining regulatory approvals, conducting clinical trials, and integrating with
electronic health record (EHR) systems for seamless healthcare integration.
Healthcare Accessibility and Global Health Impact: Digital oximeters built using Arduino contribute
to improving healthcare accessibility and reducing health disparities by providing affordable, portable, and
user-friendly monitoring solutions. Future efforts may focus on addressing healthcare challenges in low-
resource settings, rural communities, and underserved populations, empowering individuals to take control
of their health and well-being.
Conclusion :-
1. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4504215/
https://extension.colostate.edu/docs/staffres/program/Identify-SMART-Indicators.pdf
. Annexure
Annexure :
ATMEGA328P Datasheet
ARDIUNO UNO Datasheet