You are on page 1of 19

Project: CPR Force Pad with Assistant Application

Member: Mind, Earn


Capstone class’s teacher: Ms.Laurin
What's been done?
- Materials prepared
- Design complete
- Program the LED output

What’ll be doing next?

Item to be done Date planned to finish

Program the force sensor + finishing 15.4.20


the programming part

Design and make the cover 2.5.20

Make the application 25.5.20

Assemble the model 15.5.20

Work log:

Date Location Name Item done

30.11.19 Dorm Earn List the materials


- The materials needed are
microbit, LED circuit,
resistors for the LED, wires,
force resistive sensors.

30.11.19 Earn+Mind Design the product


- First, we designed briefly by
hand and arranged where
each component is located
and then we used a ruler to
write the length of the whole
model.

10.12.19 Home Earn Buy the materials


- I researched the prices of
the materials and some
alternatives (if needed in
case of better choice) and I
bought all the materials
from online sources.
5.1.20 Mind Design the app and list out the
basic functions

20.2.20 Earn Program LED output


- Since I used the microbit as
the hardware for my
programming, I wrote the
code on the Microbit
website. Because I had not
used Microbit before and
school was closed, I did
some research and study
how to program each
component of the force pad.
- For the LED, I coded by
using the extensions part. It
was called NeoPixel which
is an LED circuit arranged in
a circle. In the Microbit
website, there are blocks for
neopixel but I need to know
which block needs to be
used, so I did some
research on it.

12.4.20 Earn Program the force sensor +


finishing the programming part
- For the force sensor part, it
used the input code which
was received as analog
data. I wrote the code
based on the information
that I found on the Internet.

12.4.20 Mind Redesign the app


- Making changes and adjust
the design of the app
- Starting layout the app by
making design page and
prepare the
materials(pictures, data)

1.5.20 Earn Design and make the model cover


- For the cover, I decided to
design a square cover in
the Rhinoceros program
and print it using a 3D
printer.
1.5.20 Mind Program the app + study and
research
- Studying how the mit app
inventor work and start
coding with the first and
second screen
- facing problem with the
layout of the menu so I
need to make some
changes

3.5.20 Mind Program the app + study and


research
- Focusing on making contact
and calling functions

5.5.20 Mind Program the app + study and


research
- Research on how real time
maps work
- Changes some of the code
that is error
- Plan is changed since the
app couldn’t provide
locations out of the US

5.5.20 Earn Complete the model


- After the cover is done, I
then assemble everything
together. I taped the long
wires and set the circuit
before covering it with the
one that I made and then
covered it all with a
transparent plastic.

10.5.20 Mind Program the app + study and


research
- Changing the format of
providing information from
photo to video
- Finding 110bpm
monotreme(couldn’t be
upload due to the file size)

16.5.20 Mind Adjust and finalize the work


- Adjust and making changes
for the app to be more
simple to use
24.5.20 Mind Completing+checking
-Adding information to the
slides and adding some
work reflections

Earn+Mind Check details + Prepare


presentation
- After all is finished, we then
check for problems or make
it more neat.
Code for the force pad:
Javascript

let strip: neopixel.Strip = null


let force = 0
input.onButtonPressed(Button.B, function () {
while (input.buttonIsPressed(Button.A) == false) {
strip.clear()
strip.show()
}
})
basic.forever(function () {
strip = neopixel.create(DigitalPin.P2, 24, NeoPixelMode.RGB)
strip.show()
if (input.buttonIsPressed(Button.A)) {
while (true) {
pins.analogWritePin(AnalogPin.P1, 1023)
force = pins.analogReadPin(AnalogPin.P1)
serial.writeLine("" + force)
if (force > 900) {
strip.showColor(neopixel.colors(NeoPixelColors.Green))
strip.show()
} else if (force > 450 && force < 900) {
strip.showColor(neopixel.colors(NeoPixelColors.Red))
strip.show()
} else {
strip.clear()
strip.show()
}
}
}
})
Earn’s Work Reflection

According to CPR health.org, CPR or Cardiopulmonary Resuscitation is an emergency


lifesaving procedure performed when the heart stops beating. Immediate CPR can double or
triple the chances of survival after cardiac arrest. Many people have died from cardiac arrest
and most of them occur outside of the hospital. Bystander CPR improves survival but if the
bystander has little knowledge about CPR, how could they effectively help? Because of this
issue, we then came up with an idea of a CPR force pad with an assistant application.

This CPR force pad is meant to be practical and easy to use. When it is used, it will
help the user evaluate the amount of force needed in doing effective CPR. The assistant
application can tell the user the method of using the force pad or even how to do effective
CPR, as well as calling an ambulance or finding a nearby hospital. Our force pad prototype
works with a force resistive sensor being an input of force that the user pressed and the
sensor would send a signal to the hardware which is the Microbit, then the Microbit would send
a signal to the output which is the LED circle circuit. If the force pressed is in the effective limit,
the green light would be shown, but if it is not in the limit, a red light would be shown.

In this group work, my part was the CPR force pad. By doing this, I had learned several
things like Microbit programming, circuit, force sensor, etc. There are many problems that I
faced throughout this project. One of them was the issue that Bluetooth cannot work with the
LED circuit. At first, our idea was to use Bluetooth to connect the app with the force pad so it
could show the amount of force used at that moment. However, since the Bluetooth module
and LED could not work together, we decided to cut the Bluetooth off since the Bluetooth
module might not be real-time with the force pad, then it might not be effective to use it.
Another problem that I faced was the issue of programming. Because I had not program
Microbit before, it was quite hard to figure out how to compose the circuit and because school
is closed, I had no one to ask for advice. My solution is to search on the Internet. Although at
first, I tried according to some websites, the circuit still does not work but after I researched
several sources, I tried several times until the circuit eventually worked.

Since our CPR force pad and assistant application is a prototype, I think it could be
further developed into a better product that can be used in real life and would effectively help
people who have some knowledge on CPR but not so sure. Some suggestions would be to
use more accurate materials such as the force sensor that is more precise and to evaluate the
force pressed according to each person because our prototype uses an average compression
force, the prototype then can’t be used in some people that are not in average terms. Another
suggestion is to make the CPR force pad more practical that can be found anywhere or found
with the AED box so people could use it effectively.
Mind’s Work Reflection
As a build and design project, our group came up with a decision to increase the
effectiveness of our design. Ee decided to create an assistant application that could help learn
the CPR force pad. Because the model is still a prototype that requires more research and
experiment to develop and become a practical tool, the assistant application would be a
suggestion method to maximize how the tool works.

At the beginning we designed that the application could be connected via bluetooth to
identify and record the amount of force applied by the practitioner through the app for further
research however, we later discovered that the neopixel can’t be used alternatively together
with bluetooth. As a result, I came up with an assistant app that helps the user to understand
how the CPR Pad works and including other necessary functions.

The assistant app consists of 4 different functions; how to use the CPR pad, contacting
emergency, finding the nearest hospital, and contacting us for giving feedback. Before we
start, I've already designed, however when I used the MIT app inventor, the plan has changed
to adapt to the functions of the code. Throughout the process I’ve learned that the app inventor
actually has a similar layout like scratch which I’ve encountered during grade 10. There are
two main monitors which are the design page and the blocks. I tried to come up with how I
want the app to be like in a powerpoint then I studied the layout and the code up on the
internet. There are actually more functions that can elevate the app performance but there are
limitations for the online version. Consequently, I chose to make the app to be more suitable
as a prototype for emergency cases by providing basic knowledge about CPR and emergency
contacts for the user in physical needs.

From the project I’ve learned many aspects of design and building. The first thing I’ve
noticed is that technologies are made to solve or improve our well being, this is how we evolve
from our history. Similarly, our project was made to help others to learn and improve with
Cardiopulmonary resuscitation which is a necessary first aid procedure that interferes with the
possibilities to save someone. I’ve gained many essential knowledge for coding and making
apps from this prototype, it also improves my critical thinking skills like the school eslos:
“strategic learner”. A major problem I’ve encountered is that the MIT app inventor itself has a
limitation of uploading resources that is not over 10Mb, this is the reason why I couldn’t upload
the video and the audio on the app. The app inverter itself also have many limitations such as:

● Limited UIs. I can't create apps with multiple screens and handling orientation
changes has some glitches.
● Limited Access to the device. There are not yet components for all the data and
functionality of the phone.
● Limited Access to Web. If you want to get data from the web, you'll need to program
or have a programmer create an App-Inventor-Compliant API that wraps an existing
API.
● No polymorphic components. Function blocks are tied to specific components, so
there is no way to call functions on a generic component.
● Limited access to the Android Market. The apps (.apk files) generated by App while
the qr code can be generated for 2 hours only.
CPR Information

CPR – or Cardiopulmonary Resuscitation – is an emergency lifesaving


procedure performed when the heart stops beating. Immediate CPR can double or
triple chances of survival after cardiac arrest.

In 2010 alone, 475,000 Americans died from a cardiac arrest. Globally, cardiac
arrest claims more lives than colorectal cancer, breast cancer, prostate cancer,
influenza, pneumonia, auto accidents, HIV, firearms, and house fires combined.

More than 350,000 cardiac arrests occur outside of the hospital each year. In
2015, any-mention of sudden cardiac arrest mortality in the US was 366,807. CPR,
especially if administered immediately after cardiac arrest, can double or triple a
person’s chance of survival. About 90 percent of people who experience an
out-of-hospital cardiac arrest die.

Bystander CPR improves survival. According to 2014 data, nearly 45 percent of


out-of-hospital cardiac arrest victims survived when bystander CPR was administered.
The majority of Out of Hospital Cardiac Arrests (OHCA) occurs at public settings (18.8
percent), mostly homes/residences (69.5%) and nursing homes (11.7%).

Help is needed immediately. Unfortunately, only about 46% of people who


experience an OHCA get the immediate help that they need before professional help
arrives. The 2017 Heart Disease and Stroke Statistics state that among the 356,000
OHCA that occurred, 45.7% (or 46%) received bystander CPR.

High-quality CPR is the primary component in influencing survival from cardiac


arrest. To save more lives, healthcare providers must be competent in delivering
high-quality CPR, and patient care teams must be coordinated and competent working
together effectively.

High-quality CPR performance metrics include:

● Chest compression fraction >80%


● Compression rate of 100-120/min
● Compression depth of at least 50 mm (2 inches) in adults and at least 1/3 the
AP/Anteroposterior (from front-to-back) dimension of the chest in infants and
children
● No excessive ventilation

According to a study from the Institute for Experimental Medical Research, in


most out-of-hospital cardiac arrest victims adequate chest compression depth can be
achieved by applying 490 N force to the sternum. This means that average sized and
fit rescuers should be capable of performing effective CPR in adult patients.
CPR Steps
Step 1: Shake and shout
If you come across someone who is unconscious, always check for danger and
look for risks before you start helping.
Check for a response – gently shake the person’s shoulders and ask loudly 'are you
alright?'
Shout for help – if someone is nearby, ask them to stay as you might need them. If
you are alone, shout loudly to attract attention, but don't leave the person.

Step 2: Check for normal breathing

Step 3: Call 1669

Step 4: Give 30 chest compressions


● Kneel next to the person.
● Place the heel of one hand in the centre of their chest. Place your other hand
on top of the first. Interlock your fingers.
● With straight arms, use the heel of your hand to push the breastbone down
firmly and smoothly, so that the chest is pressed down between 5–6 cm, and
release.
● Do this at a rate of 100 to 120 chest compressions per minute – that’s around 2
per second

Step 5 (Optional): Give two rescue breaths


● Open the airway again by tilting the head back and lifting the chin. Pinch the
soft part of the person’s nose closed.
● Take a normal breath, make a seal around their mouth and breathe out steadily.
● The person’s chest should rise and fall. Keeping the person’s head back and
the chin lifted, take your mouth away, take another normal breath, and give a
second rescue breath. The two breaths should take no longer than five
seconds.

Step 6: Repeat until an ambulance arrives


● Repeat 30 compressions and two rescue breaths.
Keep going until professional help arrives and takes over, or the person starts to
show signs of regaining consciousness, such as coughing, opening their eyes,
speaking, or breathing normally. If you’re feeling tired, and there’s someone nearby to
help, instruct them to continue.
Microbit
The neopixel module lets you use Neopixel (WS2812) individually addressable
RGB LED strips with the Microbit. Note to use the neopixel module, you need to import
it separately with:
import neopixel
The following module which has 8 LEDs on it
Connection is straightforward 0 V on the module to 0 V on the Microbit, Vcc or 5
V on the module can go to 3.3 V on the Microbit and then connect the DIN on the
module to Pin 0 of your Microbit.

Basic usage

Force Resistive Sensor

A force-sensing resistor is a material whose resistance changes when a force


or pressure is applied.
Force-sensing resistors consist of a conductive polymer, which changes
resistance in a predictable manner following application of force to its surface.They are
normally supplied as a polymer sheet or ink that can be applied by screen printing.
The sensing film consists of both electrically conducting and non-conducting particles
suspended in matrix. The particles are sub-micrometre sizes, and are formulated to
reduce the temperature dependence, improve mechanical properties and increase
surface durability. Applying a force to the surface of the sensing film causes particles
to touch the conducting electrodes, changing the resistance of the film.
As with all resistive based sensors, force-sensing resistors require a relatively
simple interface and can operate satisfactorily in moderately hostile environments.
Compared to other force sensors, the advantages of FSRs are their size (thickness
typically less than 0.5 mm), low cost and good shock resistance. A disadvantage is
their low precision: measurement results may differ 10% and more

Schematic
A simple layout to build here basically you are creating a voltage divider with
10k resistor in order to limit the current that goes through the force sensor because if
the current exceeds the limit of current that the force sensor’s need, the circuit may
break. Squeezing the force sensor alters the resistance so the voltage in at pin 0 will
vary depending on the force

Code
The analog input is echoed via the serial monitor

from microbit import


while True:
a = pin0.read_analog()
print(a)
sleep(1000)
ASSISTANT APP

This is menu page


The video which tell how to use the CPR pad
This page would record all the emergency numbers and directly dial the number
chosen.
The function is to relocate the user location and
update the nearest hospital to the user.

Example email for sending feedback to us.


Additional information including CPR steps and 110
bpm menotrome sound for the rate of compression.
Code
Screen1

Screen2

Screen3
Screen4

Screen5

Screen6

Screen7
Sources:
● https://cpr.heart.org/en/resources/cpr-facts-and-stats
● https://cpr.heart.org/en/resuscitation-science/high-quality-cpr
● http://www.riversfirstaid.com.au/wp-content/uploads/2015/05/Depth-compressio
n-study.pdf
● https://www.bhf.org.uk/how-you-can-help/how-to-save-a-life/how-to-do-cpr

You might also like