University Project

Hello!

My team and I (4 people total) have come up with this idea for our Senior Design Project (we are all Biomedical Engineering students and I have a background in electronics). Our idea is to create a device that uses electrodes to measure the ECG of a person and detect if he/she are having a heart attack. And if the person IS having a heart attack, the system will send a Bluetooth signal to their cell phone and call 911 while providing the GPS location of the person.

How feasible is this to complete within 8 months? I was assuming I would be using the Arduino BT but I have no idea where to even begin with this. All I know is that I will somehow need an A/D converter and for the micro-controller to be able to detect an abnormality in heart rate.
Any and all advice is greatly appreciated!

Thanks in advance!

Have a look at the Open ECG project:

http://www.open-ecg-project.org/tiki-index.php?page=Hardware

What you are proposing is fairly hard. You can certainly recreate the Open ECG hardware, but detecting a heart attack? That will take some fairly heavy-duty signal processing. And how will you test it? :wink:

--
The MegaRAM shield: add 128 kilobytes of external RAM to your Arduino Mega/Mega2560

I realize this is a hard task but I have taken a course a signals and systems and several electronics courses and am in contact with several knowledgeable professors. The point of our project is to create something new or improve something already on the market.
do you have any ideas on how I would go about doing this?

And how will you test it?

Paid volunteers? :wink:

Lefty

oh sorry! forgot to answer that part.
In our department we have several machines that simulate heart problems so testing should not be an issue.

Well, to start with, what's already on the market? Can you mimic that and find a way to make if different/better?
How about something a little different? Many folks have arythmia, maybe do a project to detect that instead. Live testers will be easier to find, heart attack testers much more difficult to get participants for.

CrossRoads:
Well, to start with, what's already on the market? Can you mimic that and find a way to make if different/better?
How about something a little different? Many folks have arythmia, maybe do a project to detect that instead. Live testers will be easier to find, heart attack testers much more difficult to get participants for.

that's possible, but how would i go about designing a device to do either of these? It will just be a different signal to detect but what should the circuit look like? what would i actually need to build and/or program?

Did you look at any of the links above?
This one looks to have a good schematic to start
http://www.open-ecg-project.org/tiki-index.php?page=Refik's+ECG
Take its output, run it thru the ATMega ADC, find the frequency of a normal pattern, then look at the arythmia pattern - something will be different, less of the dubb-dubb and more of a racing kind of thing.

thanks for all your help so far, i really appreciate it. But maybe I didnt explain myself clear enough. I have no idea how to do any of this. This is my first time dealing with complex circuitry like this. so please bare with me. thanks

I have no idea how to do any of this.

So how much are you paying the school you go to? If this has something to do with your paid studies, then hold the school accountable for training you. I would stick with something in your field of study so you can have your professor help you.

KE7GKP:
The electronics/circuit/hardware is not new ground. Others have already gone before and worked it out. It should be a relatively simple matter of seeing how others did it and emulating that. No particular glory in re-inventing that wheel. There appear to be iPhone apps to detect and display cardiac waveforms, and a project at University of Michigan using the clever "Hijack" platform. http://www.eecs.umich.edu/~prabal/projects/hijack/images/hijack-ekg.jpg

OTOH, whether Arduino is up to the task of recognizing normal vs. abnormal sinus rhythm. Can you identify the cardinal points of the waveform (assigned letters P-Q-R-S-T) Sinus rhythm - Wikipedia If you can get Arduino to do that, then can you write code that will allow "normal" variations (particularly rate) without triggering "false positive" alarms?

IMHO that question of whether Arduino is up to the task of analyzing the cardiac waveform is the key that will make or break the project. The rest of it (electrodes, signal conditioning, bluetooth interface, etc.) is pretty simple compared to that.

IF(#1) the Arduino can be programmed to "parse" an ECG waveform, and IF(#2) your team is clever enough to be worthy of the title "Biomedical Engineering students", and IF(#3) you have reasonable time and resources, then 8 months seems do-able to me.

I have never worked with Arduino's before so I would need help on that at least. as far as programming, I know how to program in Matlab. As for the signal processing of the ECG signals, that should not be a problem since I have done similar things using a simulator in our department. we know all about PQRST and the physiology aspect should not be a problem at all. In my group we have 1 person who is specialized in Bio-materials and 2 people specialized in Bio-mechanics, and myself who specializes in Bio-instrumentation.

I'm scratching my head and trying to find fault with Zoomkat's question. You are paying an institution for this kind of support, whilst the folks here are insanely helpful, knowledgeable and accomodating - surely a real, physical human-being in the electronics dept would be a better bet?

In addition - nobody seems to have covered the safety aspect of this. Whilst this kind of thing should be safe - you've stated that you aren't familiar with "complex circuitry". Be aware that it takes a suprisingly small amount of current across the heart to cause a lot of problems. You can probably multiply the risk by a big number should the victim volunteer have a pacemaker.

You have 8 months to do the project. There are 4 of you. This is not something that the professor should be helping you with. Come up with a high level plan, break it into pieces and assign the pieces to individual students. Each student should be working in their area of expertise. If you don't have an expert in an area, one of you will have to become that expert. Come up with a set of goals and a timeline of when you expect to meet those goals. Aim to complete the project 1 month early to give your team some time for unexpected consequences.
Get going and stop looking for help. This is like work, no one has all the answers. It is up to YOU to come with the answers.

Instead of an heart attack detector I would like to see a defibrilator (all hands free ? ZAP!) device that works autonomously. ONly connect and the device does the rest.

put the pads on the chest and zap the patient until heart beats normal (enough) again.

something like this (incomplete so not compiled or tested)

void setup()
{
  Serial.begin(115200);
  Instructions();
}

void loop()
{
  bool normal = readHeartBeat();
  while (!normal)
  {
    doZap();
    LogData();     // for legal reasons
    delay(1000); // to reload capacitor
  }
}

doZap()  // to be tuned, no biomedic
{
  digitalWrite(HEARTPIN, HIGH);
  delay(10);
  digitalWrite(HEARTPIN, LOW);
  delay(10);
  digitalWrite(HEARTPIN, HIGH);  // multizap? 
  delay(10);
  digitalWrite(HEARTPIN, LOW);
}  

....

I suspect the professor in charge of your project may let you bite off more than you can chew. Best to have a project advisor, and understand the details of the bounds and expectations of the project. I suggest you carefully study each component of your project and have a reasonable understanding of how you will complete it. The laws of physics and other givens generally ignore wishful thinking.

As other have said, the hard part is signal analysis. Googling ECG signal analysis got me a number of interesting links, especially this one: http://www.hindawi.com/journals/asp/2007/074580/abs/. Look at the references on the paper. Clearly a lot of research has already gone into this field and it looks like you'll need some significant math. The problem is whether you can get the arduino to do it. It may not be possible in real time, but assuming you sample the data, store it to an SD card and number crunch it afterwards, it might be viable. Assume a Mega - you will need the RAM I suspect. Spend some time now on the processing algorithm, if you can solve this by adapting existing work, the rest of your project is trivial, although it may not give a particularly timely warning to the patient. By trivial, note that I mean done with the Arduino before, not that it won't take a lot of work :wink:

Yea this is feasible. Posts are correct, the signal processing part is probably the least "documented", and will require some work on your part to understand in terms of literature, etc. The rest is hardware interface and the resources do exist. This is your senior project, so you need to put in the work.

However, complexity wise the Arduino can handle a compact ECG algorithm. The sampling rate for ECG is not that high (the frequencies are fairly low), so you can definitely handle that. You're probably looking at some type of simple time-domain detection (i.e. correlation based on a known feature, or multiple features associated with a heart attack), or time-frequency analysis, requiring FFTs (trickier due to fixed point on the Arudino) perhaps.. or you can look into multi-band filtering if the features are known. Good luck, and hopefully you learn a bunch of cool stuff!