Arduino
Arduino
M.S
In
Software Engineering
By
L. ALICE AUXILIA
(13MSE0406)
November, 2016
DECLARATION BY THE CANDIDATE
I hereby declare that the project report entitled ARDUINO BASED BLOOD
GLUCOMETER FOR HIGH PRECISION submitted by me to VIT University,
Vellore in partial fulfillment of the requirement for the award of the degree of MS
(Software Engineering) is a record of bonafide project work carried out by me
under the guidance of Prof. M. Asha Jerlin. I further declare that the work reported
in this project has not been submitted and will not be submitted, either in part or in
full, for the award of any other degree or diploma in this institute or any other
institute or university.
L. Alice Auxilia
Date:09.11.16
TABLE OF CONTENTS
EXECUTIVE SUMMARY
It is a worldwide problem that we face at any time, and that is checking our heartbeat rate, our
body temperature and our glucose level. People become lazy nowadays to take care of their own
health. In this project we proposed a system to check the above mentioned health checkups which
is user friendly and less time consuming.
It is an advanced system of checking their own health checkups in an easy manner with less
consumption of cost. This system is environment friendly with proper functions and
functionalities. In existing system, the patient must be in hospital for continuous monitoring of his
health. In this system the patient health can be monitored even though he is not in hospital and he
can do his work normally.
Drawbacks in existing system are:
Doctor Presence must be there.
Consumes more time and more power.
Difficult to monitor.
Advantages in the proposed system are:
Even though doctor is absent health can be monitored.
Extremely designed for low power.
Easy monitoring system.
LIST OF TABLES
LIST OF ACRONYMS
1.1 Background
This paper illustrates the design and implementation of an e-health monitoring networked system.
The architecture for this system is based on smart devices and wireless sensor networks for real
time analysis of various parameters of patients. This system is aimed at developing a set of
modules which can facilitate the diagnosis for the doctors through Tele-monitoring of patients. It
also facilitates continuous investigation of the patient for emergencies looked over by attendees
and caregivers. A set of medical and environmental sensors are used to monitor the health as well
as the surrounding of the patient. This sensor data is then relayed to the server using a smart
device or a base station in close proximity. The doctors and caregivers monitor the patient in real
time through the data received through the server
1.2Problem Statement
The existing glucometer which is used for the diabetes patients to check the value of the sugar
level in blood gives the incorrect values when it is compared with the laboratory value. People
suffer a lot as well as they are less conscious about their sugar level which leads to more problems
in the patients body and health due to belief of the incorrect values. Our project is to make an
Arduino based blood glucometer which detects the patients high precision value of the glucose
level. With this the precise value is directly generated to the patients doctor through a message to
their mobile (either family doctor or the doctor to whom the patient checks regularly). Along with
this we are going to check heart beat and the body temperature of the patient and it will be sent as
a message to the doctor.
1.3 Importance
The roles and responsibilities of this system is giving exact value of the heartbeat, body
temperature and the glucose level whether it is high or low. It is very useful to the patient as well
as the doctor for the future use. Arduino UNO is a growing hardware which is used in many other
projects. Arduino based blood glucometer which detects the patients high precision value of the
glucose level, body temperature and heartbeat. With this, the precise value is directly generated to
the patients doctor through a message to their mobile (either family doctor or the doctor to whom
the patient checks regularly). This product is useful for detecting the sugar level in the blood and
it helps the patient to know about their health condition. The benefits of this product are improved
customer experience, focused marketing efforts. The objectives of this project are understand
customer needs better, maintain long term customer relationships. The goals of this product are
improved customer satisfaction, improve the efficiency of business, enhance the sales and support
teams.
1.4 Organization of Report
This project highly deals with the heavy advantages in any type of organizations, hospitals and
other sectors. This project deals with providing precision values using the Arduino. And consumes
the less time for detecting the values of glucose, heartbeat and body temperature. The origin of
this product is the approach of focusing on customer satisfaction and loyalty rather than focusing
self-satisfaction and profit. The product perspectives are expansion of profitable, long lasting
customer relationships, delivery of a consistent, relevant, high quality customer experience.
Delivery of the right products and services tailored to meet customers needs. Increase customer
equity. Having this product in any sector can relate customer satisfaction.
CHAPTER 2
OVERVIEW AND PLANNING
2.1Proposed System Overview
To solve the problems identified in the existing system, we provide the Arduino based
glucometer for high precision value to detect glucose level, body temperature and heartbeat.
Another advantage is, we can use it wherever we are. In addition, an automated performance
evaluation would provide more accurate and reliable results avoiding human error. In this work,
we propose a system that detects the value of the glucose. Our system detects the value through
given input. This project consists of the details of operating environment of our project. The faults
that has been over came while implementing the project. The design convention (circuit diagram)
of the modules used in system architecture. The UML diagrams of the implementation of the
project for the better understanding. Images of the user interface designs. Here we use different
sensors to detect the values of glucose level, body temperature and heartbeat.
TEMPERATURE SENSOR: The temperature sensor functional module consists of two
parts: the function module box and the probe head. The LM34 temperature sensor is
mounted on the probe head. Be careful to make sure that the sensor is properly mounted
on the probe head. By replacing the LM34 with another precision integrated-circuit
temperature sensor LM35, we can easily get an output voltage proportional to the
centigrade temperature. The LM35 sensor has a linear +10.0 mV/C scale factor and a
temperature range from -55C to +150C.In fact LM34 and LM35 are among the same
series of temperature sensors so that they can be easily exchanged in different
applications. The wiring for LM 35 is the same as that of LM34. Please refer to the
datasheets of LM34 and LM35 for more detailed packaging and features information.
PULSE OXIMETER SENSOR: In its most common (trans missive) application mode, a
sensor device is placed on a thin part of the patient's body, usually a fingertip or earlobe,
or in the case of an infant, across a foot. The device passes two wavelengths of light
through the body part to a photo detector. It measures the changing absorbance at each of
the wavelengths, allowing it to determine the absorbances due to the pulsing arterial
blood alone, excluding venous blood, skin, bone, muscle, fat, and (in most cases) nail
polish. This method does not require a thin section of the person's body and is therefore
well suited to a universal application such as the feet, forehead, and chest, but it also has
some limitations. Pulse oximeters are non-invasive devices used to measure a patient's
blood-oxygen saturation level and pulse rate. Nonin Medicals pulse oximeters and
sensors provide proven accuracy in the widest range of patients, settings and conditions.
MOISTURE SENSOR: The Moisture sensor is used to measure the water content
(moisture) of soil. When the soil is having water shortage, the module output is at high
level, else the output is at low level. This sensor reminds the user to water their plants and
also monitors the moisture content of soil. It has been widely used in agriculture, land
irrigation and botanical gardening.
2.2 Challenges
Automatically provide values to the patients doctor through message.
Advanced technology.
Fast and readily available values with high resolution.
It saves their time and efforts.
The system is convenient and secure for the users.
Environmental control systems.
Augmentative communication devices.
Emergency response systems.
2.3 Assumptions
Table 2.3.1 Assumptions for the project
ARDUINO
Arduino/Genuino Uno is a microcontroller board based on the ATmega328P. It has 14
digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16
MHz quartz crystal, a USB connection, a power jack, an ICSP header and a reset button. It
contains everything needed to support the microcontroller; simply connect it to a computer
with a USB cable or power it with a AC-to- DC adapter or battery to get started. You can
tinker with your UNO without worrying too much about doing something wrong, worst
case scenario you can replace the chip for a few dollars and start over again. "
Uno" means one in Italian and was chosen to mark the release of Arduino Software
(IDE) 1.0. The Uno board and version 1.0 of Arduino Software (IDE) were the reference
versions of Arduino, now evolved to newer releases. The Uno board is the first in a series
of USB Arduino boards, and the reference model for the Arduino platform; for an
extensive list of current, past or outdated boards see the Arduino index of boards.
On the Software on the Arduino Forum
On Projects on the Arduino Forum
On the Product itself through our Customer Support
GSM
Global system for mobile communication (GSM) is a globally accepted standard for
digital cellular communication. GSM is the name of a standardization group established in
1982 to create a common European mobile telephone standard that would formulate
specifications for a pan-European mobile cellular radio system operating at 900 MHz. A
GSM modem is a wireless modem that works with a GSM wireless network. A wireless
modem behaves like a dial-up modem. The main difference between them is that a dial-up
modem sends and receives data through a fixed telephone line while a wireless modem
sends and receives data through radio waves. The working of GSM modem is based on
commands, the commands always start with AT (which means ATtention) and finish with
a <CR> character. For example, the dialing command is ATD< number>;
ATD3314629080; here the dialing command ends with semicolon.
TEMPERATURE SENSOR
Pulse oximeters are non-invasive devices used to measure a patient's blood- oxygen
saturation level and pulse rate. Nonin Medicals pulse oximeters and sensors provide
proven accuracy in the widest range of patients, settings and conditions. Its reading of
SpO2 (peripheral oxygen saturation) is not always identical to the reading of SaO2
(arterial oxygen saturation) from arterial blood gas analysis, but the two are correlated
enough within an acceptable deviation such that the safe, convenient, noninvasive,
inexpensive pulse oximeters method is valuable for measuring oxygen saturation in
clinical use.
MOISTURE SENSOR
The Moisture sensor is used to measure the water content (moisture) of soil. When the soil
is having water shortage, the module output is at high level, else the output is at low level.
This sensor reminds the user to water their plants and also monitors the moisture content
of soil. It has been widely used in agriculture, land irrigation and botanical gardening.
2.6Software Requirements
OS Name: Microsoft Windows 7 Professional.
Processor: AMD E-300 APU with Radeon(tm) HD Graphics, 1300 Mhz, 2 Core(s), 2
Logical Processor(s).
Installed Physical Memory (RAM): 3.00 GB.
System Type: x64-based PC.
Embedded C
Arduino ide
2.7 Project Schedule (Gantt chart)
The project schedule plan involves the tasks performed to complete the overall project. This
involves the functions and the representation tasks to complete the project within the time
schedule, the start date of the tasks performed and the number of days to complete each and every
segment and this is showed in the figure 2.7.1
Figure 2.7.1 Gantt Chart for Arduino based blood glucometer for high precision value
CHAPTER 3
LITERATURE SURVEY AND REVIEW
[2] Y. Lia , J. Fua , R. Chena, M. Huanga , B. Gaoa , K. Huoa , L. Wangb , P. K. Chuc , Sensors
and Actuators B 192 (2014) 474 479.
In this study, the hardware and software features of Microcontroller 8051 based system designed
and developed to determine the approximate concentration of glucose level in the blood is
described. The system is quite successful for the measurement of blood glucose with an accuracy
of less than 3%. We used glucose test strip bio sensor designed for the Arkray Glucocard Vital
Blood Glucose meter made by Arkray healthcare pvt.ltd. The necessary software is developed in
C, using Vision IDE-Kiel. When a drop of blood is placed on the test strip it interacts with the
enzymes on the strip that causes a reaction and an electric current is generated. The current is
sensed by LF356 Op-Amp and convert to voltage.
[4] X-Z. Fu, Y. Liang, S-P.i Chen, J-D. Lin, D-W. Liao, Catalysis Communications, Volume 10,
Issue 14, 25 August 2009, Pages 1893-1897
In this work a C-MnO 2 hybrid support was coated with platinum nanoparticles followed by a
annealing at 600 C, in order to promote the methanol oxidation reaction. However, its
performance still falls short of the most commonly used commercial PtRu/C catalyst, due to
the presence of some Pt agglomerates. The aspiration that this hybrid support can be optimized
and then go on to replace the current PtRu based catalysts can be realized by understanding the
real function of this kind of hybrid support and by reducing the presence of Pt agglomerates.
All results suggested that the Pt/C-Mn xO1+x can act as promising catalysts for fuel cells.
[5] R.G. Jamkar and R.H. Chile Microcontroller based Temperature Indicator and Controller,
Journal of Instrument. Society of India 34(3) pp.180-186, Sept-2004.
The objective of this work is to design & implement a low cost GSM enabled simulated
biomedical parameters monitoring system using Atmels 89C51 microcontroller. The system is
designed and developed successfully in the laboratory. The system has been designed using so
many technologies such as sensors, data acquisition, biomedical instrumentation & GSM and we
had to choose the suitable technology for the design. The developed system is simple, low cost
and potable. The final goal of the work was to reduce the hospitalization and assistance cost and
to increase patients and families quality of life. It is believed that, the other populations of patients
such as elderly people may greatly be benefited by the creation of similar devices. The only
disadvantage could be non-availability of GSM network. However, rarely the GSM connectivity
may not be available. In such situation, the system cannot send information but the store-forward
architectural feature of GSM enables the delivery of the SMS little late.
CHAPTER 4
SYSTEM DESIGN
The open-source Arduino Software (IDE) makes it easy to write code and upload it to the board.
It runs on Windows, Mac OS X, and Linux. The environment is written in Java and based on
Processing and other open-source software. This software can be used with any Arduino board.
The Arduino Integrated Development Environment - or Arduino Software (IDE) - contains a text
editor for writing code, a message area, a text console, a toolbar with buttons for common
functions and a series of menus. It connects to the Arduino and Genuino hardware to upload
programs and communicate with them.
Library:
Libraries provide extra functionality for use in sketches, e.g. working with hardware or
manipulating data. To use a library in a sketch, select it from the Sketch > Import Library menu.
This will insert one or more #include statements at the top of the sketch and compile the library
with your sketch. Because libraries are uploaded to the board with your sketch, they increase the
amount of space it takes up. If a sketch no longer needs a library, simply delete its #include
statements from the top of your code.
Serial Monitor:
Displays serial data being sent from the Arduino or Genuino board (USB or serial board). To send
data to the board, enter text and click on the "send" button or press enter. Choose the baud rate
from the drop-down that matches the rate passed to Serial.begin in your sketch. Note that on
Windows, Mac or Linux, the Arduino or Genuino board will reset (rerun your sketch execution to
the beginning) when you connect with the serial monitor.
LEVEL 0:
Predict values
Prediction of
glucose level, body Doctor
Arduino temperature and Sends
heartbeat value messgage
LEVEL 1:
Glucose level
Raw Gives input sensor converts into values Serial Monitor
data
Sends message
doctor
LEVEL 2:
Finger is placed as input
values
Raw Temperature sensor Serial Monitor
data
Sends message
doctor
LEVEL 3:
LEVEL 4:
Arduino Glucose
sensor
Detects heartbeat rate
receives the value
Order Id
Message details
GSM
Moisture
Receives the message
sensor
Pulse
oximeter
sensor
doctor
Use Diagram:
Use case diagram for Arduino Based Blood Glucometer for High Precision Value
glucose sensor
patient
arduino UNO
moisture sensor
doctor
DC power supply
GSM
Figure 4.2.1 use case diagram for Arduino Based Blood Glucometer for High Precision Value
Class diagram:
patient doctor
+name: string +name: string
+age: int +age: int
+id: int +emp id: int
#address: string +address: string
n:n
+give_sample_blood() +receive_message()
+check_the_blood_sugar_level() +analyze_the_patients_condition()
+change_strips() +give_treatment()
n:n
glucose sensor
tranducer INA219 arduino uno
+name: string 1:1 1:1 +name: string
+name: string
+accept_blood() +pin: int
+extract_glucose_oxidise() +converts_rawsignals_to_analogsignals()
+combine_glucose_and_glucose_oxidise() +converts_analog_digitalsignals()
+produce_gluconic_acid() +display_the_output_in_LCD()
1:n
GSM
+name: string LCD
1. give blood()
2. receive blood()
Figure 4.2.2 Class diagram for Arduino Based Blood Glucometer for High Precision Value
3. accept blood()
Sequence diagram:
6. produce gluconic acid()
Sequence diagram for overall system
7. detect the pulse value
Activity diagram:
transmits radio signal between 2 devices check the blood sugar level
combine glucose and glucose oxidise give treatment
1.give blood sample2.extract glucose oxidase 3.produce gluconic acid 4.convert raw data to analog signal
converting
7.display the output in LCD
4.3.3 C Language
C is a general-purpose, imperative computer programming language, supporting structured
programming, lexical variable scope and recursion, while a static type system prevents many
unintended operations. By design, C provides constructs that map efficiently to typical machine
instructions, and therefore it has found lasting use in applications that had formerly been coded in
assembly language, including operating systems, as well as various application software for
computers ranging from supercomputers to embedded systems.
Tradeoffs:
Highly expensive.
Non availability of GSM network
Does not have wireless features.
Chemical and physical characterization.
It is a manual technique.
// these variables are volatile because they are used during the interrupt service routine!
volatile int BPM; // used to hold the pulse rate
volatile int Signal; // holds the incoming raw data
volatile int IBI = 600; // holds the time between beats, must be seeded!
volatile boolean Pulse = false; // true when pulse wave is high, false when it's low
volatile boolean QS = false; // becomes true when Arduoino finds a beat.
void setup(){
pinMode(blinkPin,OUTPUT); // pin that will blink to your heartbeat!
pinMode(fadePin,OUTPUT); // pin that will fade to your heartbeat!
Serial.begin(115200); // we agree to talk fast!
interruptSetup(); // sets up to read Pulse Sensor signal every 2mS
// UN-COMMENT THE NEXT LINE IF YOU ARE POWERING The Pulse Sensor AT LOW
VOLTAGE,
// AND APPLY THAT VOLTAGE TO THE A-REF PIN
//analogReference(EXTERNAL);
}
void loop(){
sendDataToProcessing('S', Signal); // send Processing the raw Pulse Sensor data
if (QS == true){ // Quantified Self flag is true when arduino finds a heartbeat
fadeRate = 255; // Set 'fadeRate' Variable to 255 to fade LED with pulse
sendDataToProcessing('B',BPM); // send heart rate with a 'B' prefix
sendDataToProcessing('Q',IBI); // send time between beats with a 'Q' prefix
QS = false; // reset the Quantified Self flag for next time
}
ledFadeToBeat();
void ledFadeToBeat(){
fadeRate -= 15; // set LED fade value
fadeRate = constrain(fadeRate,0,255); // keep LED fade value from going into negative
numbers!
analogWrite(fadePin,fadeRate); // fade LED
}
Serial port;
void setup() {
size(700, 600); // Stage size
frameRate(100);
font = loadFont("Arial-BoldMT-24.vlw");
textFont(font);
textAlign(CENTER);
rectMode(CENTER);
ellipseMode(CENTER);
// Scrollbar constructor inputs: x,y,width,height,minVal,maxVal
scaleBar = new Scrollbar (400, 575, 180, 12, 0.5, 1.0); // set parameters for the scale bar
RawY = new int[PulseWindowWidth]; // initialize raw pulse waveform array
ScaledY = new int[PulseWindowWidth]; // initialize scaled pulse waveform array
rate = new int [BPMWindowWidth]; // initialize BPM waveform array
zoom = 0.75; // initialize scale of heartbeat window
void draw() {
background(0);
noStroke();
// DRAW OUT THE PULSE WINDOW AND BPM WINDOW RECTANGLES
fill(eggshell); // color for the window background
rect(255,height/2,PulseWindowWidth,PulseWindowHeight);
rect(600,385,BPMWindowWidth,BPMWindowHeight);
//
} //end of draw loop
6.3 Discussion
The current project is used to detect the following for various purposes:
Glucose level sensor detects the level of glucose in the various solutions.
Pulse oximeter sensor detects the rate of the heartbeat and gives the output in the form of
both values and cardiac graph.
Temperature sensor detects whether the human body is in normal state or with the high
temperature state.
6.4 RESULTS
The results that are associated with this project analysis the various results like some the results
may work correctly and some components may not work exactly with the specifications. Due to
the high expenses of the blood sensor we cannot use it for the current result analysis. We cannot
use the blood as a sample to detect the level of the blood in the glucose level sensor.
CHAPTER 7
CONCLUSION AND FUTURE WORK
7.1 Conclusion
In this project, we proposed the Arduino based glucometer for high precision value to detect the
values and levels of glucose, body temperature and the rate of heartbeat. The system estimates the
exact values of the glucose level, body temperature and heartbeat. The result of our preliminary
experiment shows continuous observation improved the performance for estimation of the values.
To conclude, Project works like a component which can access all the functions and
functionalities. It overcomes the many limitations incorporated in the real time. And the result is
sent as a message efficiently, Easy implementation environment, generate report flexibly, there is
no duplication entry of data. The run time for the detection of values is also very less which is
very efficient to use.
CHAPTER 8
REFERENCES
REFERENCES
[1]. Q. Yang, P. Atanasov, E. Wilkins, Sensors and Actuators B 46 (1998) 249256.
[2]. R.G. Jamkar and R.H. Chile Microcontroller based Temperature Indicator and Controller,
Journal of Instrument. Society of India 34(3) pp.180-186, Sept-2004.
[3]. A.Rajendran and P. Neelamegam Design of AT89C52 Microcontroller based system for the
measurement of Temperature and control, Journal of Instrument. Society of India 35(I) pp. 99-
105, March-2005.
[4]. J.H. Yuan, K. Wang, X.H. Xia, Advanced Functional Materials 15 (2005)803809.
[5]. X-Z. Fu, Y. Liang, S-P.i Chen, J-D. Lin, D-W. Liao, Catalysis Communications, Volume 10,
Issue 14, 25August 2009, Pages 1893-1897.
[6]. F.Y. Xie, Z. Huang, C. Chen, Q.J. Xie, Y. Huang, C. Qin, Y. Liu, Z.H.Su, S.Z. Yao,
Electrochemistry Communications 18 (2012)108111.
[8]. Q. Yuan, D. Duan, Y. Ma, G. Wei, Z. Zhang, X. Hao, S. Liu, Journal of Power Sources,
Volume 245, 1 January 2014, Pages 886-891.
[9]. Y. Lia , J. Fua , R. Chena, M. Huanga , B. Gaoa , K. Huoa , L. Wangb , P. K. Chuc , Sensors
and Actuators B 192 (2014) 474 479.
[10]. Ahmed S. Abd El-Hamid , Amani E. Fetohi , R.S. Amin , R.M. Abdel Hameed , Design of
digital blood glucose meter based on Arduino UNO (August 8 , 2015).