Arduino и ЭКГ: кардиограф своими руками

# Кардиограф на Arduino

Болезни сердца являются одними из самых опасных заболеваний, которые нельзя игнорировать. Исследования Всемирной организации здравоохранения (ВОЗ) также показывают, что большинство людей умирало из-за сердечных заболеваний. Поэтому эти болезни нельзя воспринимать легкомысленно. Следовательно, большинство медицинского оборудования и системы мониторинга предназначены для отслеживания болезней, связанных с сердцем.

https://alashed-media.s3.eu-north-1.amazonaws.com/wiki/digitrode/860-arduino-i-ekg-kardiograf-svoimi-rukami/images/arduino-i-ekg-kardiograf-1.jpg

Как мы знаем, анализируя сигналы ЭКГ (электрокардиограмма) на начальном этапе, развитие этих болезней можно предотвратить. Но современные кардиографы стоят недешево и не каждому по карману. Впрочем, можно самостоятельно сделать свой кардиограф с помощью Arduino.

Датчик ЭКГ

Датчик ЭКГ с электродами прикрепляется непосредственно к телу, чтобы обнаруживать сердечный ритм. Электроды датчика ЭКГ преобразуют удары сердца в электрический сигнал. Датчики ЭКГ очень легкие, тонкие и точно измеряют непрерывный сердечный ритм и дают данные о нем. Электроды датчика ЭКГ имеют 3 контакта и соединены кабелем длиной примерно 70-80 сантиметров. Это делает датчик легким для подключения к контроллеру и легко помещается карман. Кроме того, подключаемый кабель представляет собой аудио-штекер, который делает этот кабель легко удаляемым или вставленным в плату усилителя. Датчик предназначен для измерения пульса на руке и пульса на ноге.

Модуль ЭКГ с микросхемой AD8232

Модуль с микросхемой AD8232 обеспечивает доступ к девяти выводам AD8232. Контакты SDN, LO+, LO-, OUTPUT, 3.3V, GND обеспечивают необходимые линии для работы с микросхемой с помощью Arduino или другой платы разработки. На этой плате также предусмотрены линии RA (правая рука), LA (левая рука) и RL (правая нога) для крепления и использования ваших собственных датчиков.

Кроме того, есть светодиодный индикатор, который будет отображать ритма пульса. Рабочее напряжение модуля составляет 3.3 В. Для подключения биомедицинской сенсорной площадки можно использовать 3,5-миллиметровый разъем или задействовать 3-контактный разъем.

https://alashed-media.s3.eu-north-1.amazonaws.com/wiki/digitrode/860-arduino-i-ekg-kardiograf-svoimi-rukami/images/arduino-i-ekg-kardiograf-2.jpg

Схема подключения Arduino к модулю AD8232 показана ниже.

https://alashed-media.s3.eu-north-1.amazonaws.com/wiki/digitrode/860-arduino-i-ekg-kardiograf-svoimi-rukami/images/arduino-i-ekg-kardiograf-3.jpg

Код программы

Программная часть системы мониторинга сердечного ритма состоит из двух частей, это – скетч Arduino для приема данных с датчика и код на языке Processing для отображения полученных данных на экране монитора компьютера. Скетч для Arduino представлен ниже.

void setup() {
  pinMode(10,INPUT);
  pinMode(11,INPUT);

}

void loop() {
  Serial.begin(9600);
  if((digitalRead(10)==1)||(digitalRead(11)==1)){
      Serial.println("Gagal");
  }
  else{
      Serial.println(analogRead(A1));
  }
  delay(100);
  Serial.end();
  delay(100);
}

Далее представлен код на Processing.

import processing.serial.*;

Serial myPort;
int xPos = 1;
float height_old = 0;
float height_new = 0;
float inByte = 0;


void setup () {

  size(1000, 400);

  println(Serial.list());

  myPort = new Serial(this, Serial.list()[2], 9600);

  myPort.bufferUntil('\n');

  background(0xff);
}


void draw () {

}


void serialEvent (Serial myPort) {

  String inString = myPort.readStringUntil('\n');

  if (inString != null) {

    inString = trim(inString);

    if (inString.equals("!")) {
      stroke(0, 0, 0xff);
      inByte = 512;
    }

    else {
      stroke(0xff, 0, 0);
      inByte = float(inString);
     }

     inByte = map(inByte, 0, 1023, 0, height);
     height_new = height - inByte;
     line(xPos - 1, height_old, xPos, height_new);
     height_old = height_new;

      if (xPos >= width) {
        xPos = 0;
        background(0xff);
      }
      else {
        xPos++;
      }

  }
}

Если все сделано правильно, то можно будет увидеть примерно такое изображение.

https://alashed-media.s3.eu-north-1.amazonaws.com/wiki/digitrode/860-arduino-i-ekg-kardiograf-svoimi-rukami/images/arduino-i-ekg-kardiograf-4.jpg

Такой самодельный кардиограф можно успешно применять в домашних условиях, а также при занятиях спортом.