Upload
brendan-ramsey
View
217
Download
0
Tags:
Embed Size (px)
Citation preview
TEAM 5
CHRIS HOFFMAN
RYAN KELLOGG
MIKE ZIZZA
APRIL 11, 2007
HeartSavers: The Final Stretch
http://www.ece.cmu.edu/~ece549/spring07/team5/http://www.ece.cmu.edu/~ece549/spring07/team5/
Status Update
Project Concept: Wearable heart monitor: Electrodes in shirt, capture/process signal, send
data wirelessly to smart phone Status update: Implementation
Have working hardware FIFO Buffer implemented, tested on Robostix for storing ADC values
Eases real-time pressure for polling Robostix Enables variable length processing time on Gumstix
Gumstix can interact with Robostix FIFO Progress on ECG circuit: Can see a heart beat, but it’s super noisy
Status update: Testing and Experimentation Performance comparison of different QRS complex detection algorithms Whether QRS algorithm throughput changes with heart rate Length of time to do ADC conversion How long takes to transfer full buffer on Robostix to Gumstix
Experiment Plan #1
Compare QRS detection algorithms Overall performance (speed, accuracy) Does performance depend on frequency of QRS complexes (heart
rate)?
Metrics: Run Time (sec) Accuracy (%)
Why they matter: Helps us decide which is best for our project
How we measure Script (in C) to run each algorithm 100 times and record
performance values in a file Compute statistics in MATLAB
Initial Data #1
1 2 3 4 5 6 7 8 9 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Data Set #
Exe
cutio
n tim
e (s
ec)
WQRS vs. SQRS (Execution time)
SQRS
WQRS
This graph compares execution time for
competing QRS detection algorithms – WQRS is faster for all data sets
tried.
This graph compares execution time for
competing QRS detection algorithms – WQRS is faster for all data sets
tried.
0 2 4 6 8 100.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Does algorithm performance change with heart rate?
Data Set #
Exe
cutio
n tim
e (n
orm
aliz
ed s
ec.)
Rel
ativ
e fr
eque
ncy
of Q
RS
Com
plex
es
QRS Complex frequency
SQRS Execution time (Normalized)WQRS Execution time (Normalized)
QRS detection algorithm performance depends only on number of sample points
and not on heart rate.
QRS detection algorithm performance depends only on number of sample points
and not on heart rate.
Experiment #2
Determine sampling parameters on Robostix (ADC conversion time, transfer rate to Gumstix)
Metrics Time (sec) Data rate (KB/s)
Why they’re important Want to know how many ADC samples we can do
Can we sample fast enough? How much processing time is left on Robostix?
How we will measure Toggle IO pins and view ADC conversion time on scope Take full FIFO (~ 3K), send across I2C, get timestamp on
Gumstix at finish
Initial Data #2
Set polling frequency to 244 HzCan only send 16 points (ADCs) in one packet15 transfers just to get a second’s worth of data488 bytes to transfer for one second (244
samples/sec * 2 bytes per sample)
Results Time for one ADC conversion: 115 us Transfer rate to Gumstix: 5.7 KB/s Time to send one packet 0.1 sec
Looking Forward
What have learned so far? Don’t underestimate the weirdness of analog Quirky timing function on Gumstix Quirky I2C on Robostix
Next steps: Make ECG algorithms run in streaming fashion
Run algorithm as daemon, communicate through sockets or pipes
Make the circuit work as expected Make GUI on phone to display ECG information Don’t give up on non-stick electrodes
Questions?