TEAM 5: HeartSavers
Spring 2007
MEMBERS
- Chris Hoffman
- Ryan Kellogg
- Mike Zizza
PROJECT CONCEPT
The goal of this project is to build a wearable ECG monitor that fits comfortably into daily living.
The system integrates electrodes and an embedded microcontroller into a shirt and sends cardiac signal data over bluetooth to
a smartphone or PDA where it is processed in real-time to detect cardiac events and issue warnings to the user.
MOTIVATION
Existing ECG monitoring solutions are not suitable for sustained wear during daily activities due to uncomfortable electrodes and cumbersome wires,
short battery life, bulky design, and the requirement that data must be taken to a doctor's office for processing.
Our wearable ECG device will enable cardiac patients of all types to easily monitor their heart for irregularities
or warning signs, store and send cardiac data to their physician, and detect problems early for better health.
COMPETITIVE ANALYSIS
TECHNICAL SPECIFICATIONS
Hardware:
Software:
- Mac App for displaying ECG waveform and heartrate
Protocols:
- Serial over Bluetooth
- I2c (inter-integrated circuit)
- Data Transfer over Serial ( comunication between gumstix and robostix )
REQUIREMENTS
Functional:
- Measure ECG and store relative data
- Process ECG data and determine location of QRS complex.
- Display graphically ECG signal and processing results
Non-functional:
- Low latency < few seconds
- Measure data -> detect problem -> prompt
- Low Power Consumption
- Batteries last for approximately 6-8 hours
- Portability
- Worn comfortably and not interfere with activity
ARCHITECTURE
USE CASES (INTERACTION DIAGRAMS)
- Bootstrap
- Tear-down
- Patient at rest
- Patient active
- Patient in danger
- Query
- Reliability
SYSTEM STATES & TRANSITIONS
RISKS AND MITIGATION STRATEGIES
- Measuring and Quantizing Signal
- Simulating Danger Condtions
- Bluetooth Signal Interference
- Data Management once acquired
ERROR HANDLING
- Loss of Comunication:
- Attempt to reconnect
- power down after timeout
IMPLEMENTATION DETAILS
Eye Candy
Software Architecture
TEST CASES
- Coming Online ( Bootstrap Use Case )
- Why: To testing power up sequence to ensure proper connections between components are made
- How: Repetedly power cycling components at varying rates
- Type: Fault-free
- Shutting Down Gracefully (teardown use case)
- Why: To make sure that objects can shut down cleanly and user knows about it.
- How: Repetedly power cycling components at varying rates.
- Type: Fault-free
- Transmitting Data( between sensors, embedded hardware, and phone)
- Why: To test the communication path of data for end to end latency (signal read from sensor -> wave displayed on phone)
- How: Using timestamps to measure the latency.
- Type: Fault-free
- Processing Data
- Why: To test the Accuracy and performance of the ECG algorithms
- How: Using timestamps to measure the latency varying heartrate and testing detection.
- Type: Failure-injected
- Request From Memory
- Why: To test the memory retrieval functionality
- How: Using timestamps to measure the latency from request time to the display of the query
- Type: Fault- free
- Failure Contition
- Why: To test the robustness of system to gracefully recover or shutdown if there is a failure.
- How: Inject Failure in one area of system and observe what happens.
- Type: Failure - injected
EXPERIMENTAL EVALUATION
- Hypotheses
- QRS Detection has dependency on number of datapoints processed not heartrate
- QRS Feature detection does have a heartrate dependency
- Metrics
- Time to analize data
- Accuracy - tuning threshold parameters to detect QRS complex
- Experimental Documentation
- Graphs and Results
LESSONS LEARNED
- Verify that your hardware ships with all the components you need. (PowerSupply)
- How to transfer files over serial to Gumstix
- Cross compiling on Gumstix and Robostix
- Make sure Drivers Work for the involved opering system
- Easy way to fry the board -> Disconnect gumstix and Robostix while powered on.
- Mineaturized boards don't have access to standardized connectors (JTAG)
- Analog is hard to get right
- Timing function on Gumstix is hard to get right.
- I2C on Robositix is quirky and breaks under certain conditions
- Make sure you always try to laugh and have fun.
FUN STUFF
Testing at the Robotics Club
Thanks to the kindness of the other groups in the lab ... I did not recieve many complaints about my exposed smelly feet.
In Lab
Testing shirtless!
Our moment of Joy!!! when this was on the Scope.
Circuit on Ryan's Shirt Transmitting and being displayed on Laptop
REFERENCES
- Project Proposal and Requirements,
Team Project Presentation, January 31, 2007
- Design & Architecture,
Team Project Presentation, February 14, 2007
- Mid-semester Project Status,
Team Project Presentation, Date February 28, 2007
- Test Plan & Experimental Validation
Team Project Presentation, March 28, 2007
- What's Done, What's Left
Team Project Presentation, April 11, 2007
- Final Project Presentation,
Team Project Presentation, Date TBD
- Project Poster,
May 4, 2007
Back to the top of this page
18-549 course home page