1. Principles and practices¶
This week, I started brainstorming my project idea. Because of my interest in both medicine and engineering, I choose a CPR training vest. This vest would use force sensors to collect data on compression rate and possibly compression depth.
Research¶
I was inspired by a presentation by Jenni Buckley who explained how to make the physical components of the vest using springs and metal plates. I hope to focus more on digitalizing the compression data.
After listening to Jenni’s presentation, I researched the amount of force applied during CPR. According to the CPR Certified Blog, around 60 lbs of force is applied if the compressions are 2 inches deep.
Sketch¶
I began by drawing a sketch on graph paper based on this design.

Here is my napkin and digital sketch.
Materials¶
In order to keep my project around $100-$200, I researched the foundational technologies needed for my project.
-
Force Sensitive Resistor ($11.25)
-
Load Sensor ($10.95)
In regards to the CPR dummy that will encase my device, I hope to borrow one of my school’s! After this course, I may look into developing my own dummy.
Origionally, I was considering testing on humans, but after discussion with my Fab Academy instructor (Mr. Taylor) and guru (Dr. Fagan), I found the ethical implications of human trials would be too complicated for my preliminary prototypes.
Our discussion also lead me to take interest into the innerworkings of a CPR dummy. I found that you can buy a compression assembly replacement! I will most likely begin assembling on this.
Code¶
This is sample code for a force sensitive resistor. I found the code while reading a the hookup guide. It relates force (g) and resistance (ohms).
Force Sensitive Resistor Hookup Guide
/******************************************************************************
Force_Sensitive_Resistor_Example.ino
Example sketch for SparkFun's force sensitive resistors
(https://www.sparkfun.com/products/9375)
Jim Lindblom @ SparkFun Electronics
April 28, 2016
Create a voltage divider circuit combining an FSR with a 3.3k resistor.
- The resistor should connect from A0 to GND.
- The FSR should connect from A0 to 3.3V
As the resistance of the FSR decreases (meaning an increase in pressure), the
voltage at A0 should increase.
Development environment specifics:
Arduino 1.6.7
******************************************************************************/
const int FSR_PIN = A0; // Pin connected to FSR/resistor divider
// Measure the voltage at 5V and resistance of your 3.3k resistor, and enter
// their value's below:
const float VCC = 4.98; // Measured voltage of Ardunio 5V line
const float R_DIV = 3230.0; // Measured resistance of 3.3k resistor
void setup()
{
Serial.begin(9600);
pinMode(FSR_PIN, INPUT);
}
void loop()
{
int fsrADC = analogRead(FSR_PIN);
// If the FSR has no pressure, the resistance will be
// near infinite. So the voltage should be near 0.
if (fsrADC != 0) // If the analog reading is non-zero
{
// Use ADC reading to calculate voltage:
float fsrV = fsrADC * VCC / 1023.0;
// Use voltage and static resistor value to
// calculate FSR resistance:
float fsrR = R_DIV * (VCC / fsrV - 1.0);
Serial.println("Resistance: " + String(fsrR) + " ohms");
// Guesstimate force based on slopes in figure 3 of
// FSR datasheet:
float force;
float fsrG = 1.0 / fsrR; // Calculate conductance
// Break parabolic curve down into two linear slopes:
if (fsrR <= 600)
force = (fsrG - 0.00075) / 0.00000032639;
else
force = fsrG / 0.000000642857;
Serial.println("Force: " + String(force) + " g");
Serial.println();
delay(500);
}
else
{
// No pressure detected
}
}
Downloads¶
In preparation for the course, I also downloaded the following programs:
- Arduino
- AutoDesk Eagle
- AutoDesk Fusion360
- Inkscape
- GitHub Desktop
- Brackets (Because of Gitlab, I beleive my use of this application will be minimal)
Markdown¶
I also started learning how to write in Markdown. Here is a key that I made using this cheatsheet.
