Подключение AD8232 к Arduino

25-02-2020, 17:10 3 комментариев
Тема нашей сегодняшней статьи – подключение датчика сердечного ритма AD8232 к Ардуино. Про целесообразность и практичность подобного устройства много говорить не будем. В мире, где каждый третий пациент умирает от сердечно-сосудистых заболеваний стало нормой постоянно отслеживать работу сердца и остальных связанных с ним систем. Теперь это можно сделать без обращения к специалистам и врачам – просто в домашних условиях. Что конкретно для этого нужно предпринять?

Для начала приобрести непосредственно сам датчик (который, помните, не является сам по себе медицинским инструментарием!) AD8232   - это небольшая плата с микрочипом, который используется для измерения импульсов электрической активности сердца (ее можно обозначить как ЭКГ или электрокардиограмма) и мышц.

Основные характеристики модуля таковы:
  • потребление тока: 170 мкА;
  • напряжение: 2 - 3,5 В (однополярное);
  • интегрированный фильтр ВЧ помех;
  • 2-полюсный фильтр высоких частот, 3-полюсный фильтр низких частот;
  • детектор контакта электродов;
  • выходной сигнал: аналоговый;
  • диапазон температур: от -40°C до + 85°C;
  • габариты: 36мм*28мм*7мм.
Для снятия ЭКГ электроды крепятся на грудь, верхние ∕ нижние конечности, для ЭМГ (электромиограммы) - на определенные скелетные мышцы (для отображения их сокращения и диагностики с целью протезирования).

Рассмотрим теперь принципиальную схему подключения AD8232 к Arduino:

В ней использован сам датчик с микросхемой, плата расширения (микроконтроллер) Ардуино Uno, шлейф для подключения электродов и непосредственно контактные пластины.

Распиновка выводов выглядит таким образом:
Приступим к программированию модуля. Для этой цели нам понадобится скачать и добавить в среду разработки Ардуино IDE специализированную библиотеку AD8232 Heart Rate Monitor (можно «взять» тут: https://github.com/sparkfun/AD8232_Heart_Rate_Monitor) Добавляем вручную в папку с программой C:\Program Files (x86)\Arduino\libraries\

Для приема данных с датчика и передачи их на монитор прописываем скетч:
void setup()
{
  Serial.begin(9600);
  // L0+ и L0-, подключенные на 10 и 11 пины, являются выходами детектора контактов электродов
  pinMode(10, INPUT); // Настройка выхода L0-
  pinMode(11, INPUT); // Настройка выхода L0+
}
void loop()
{
  // При отсутствии контакта на одном из 3 электродов
  // в мониторе порта будет отображаться "!" на месте
  // отображения значения этого электрода
  if((digitalRead(10) == 1)||(digitalRead(11) == 1))
  {
    Serial.println('!');
  }
  else{
    // отправка аналоговых значений с датчиков
      Serial.println(analogRead(A0));
  }
  // Небольшая задержка для получения значений с электродов
  delay(1);
}
С целью просмотра информации в формате графика (диаграммы) стоит зайти в Ардуино IDE, раздел "Плоттер по последовательному соединению".

Такой самодельный кардиограф не заменит, конечно, квалифицированных врачей (с ним правильный диагноз не поставить), но в качестве "домашней" альтернативы и для обучения навыкам проектирования и простого мониторинга сердцебиения (спортсменам в особенности) - очень даже подойдет! Хороших вам проектов!
Поделись в социальных сетях:
О авторе
Калугин Антон

Программист микроконтроллеров с 8-ми летним стажем, работал в таких компаниях как IBM, ASUS, Microsoft.

В комментариях с радостью отвечу на ваши вопросы.

Все статьи автора
Похожие новости

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

Сегодня у нас на рассмотрении подключение MQ-135 к Arduino и все, что с ним связано. Данная тема и в особенности модуль сенсора выбраны не случайно, ведь в...

Наша задача на сегодня - разобрать подключение MH-Z19 к Ардуино, а также базовые характеристики и практичность применения PIR датчика углекислого газа. В...

Модуль энкодер KY-040 является электромеханическим устройством, а точнее - датчиком угла поворота и вращения оси различных девайсов. Непосредственно сам прибор...

Преобразователь на базе микросхемы Max6675 – отличное решение для внедрения в любой современный проект. Данное устройство широко применяется для измерения как...

3 комментария
  1. Василий
    10 сентября 2021 12:00 Василий

    Подскажите, вот я скачал с Github по ссылке в статье архив, распаковал его - там папка AD8232_Heart_Rate_Monitor-master.
    Эту папку надо в C:\Program Files (x86)\Arduino\libraries\ поместить или как-то ещё?

    replyОтветить
  2. volodiy59
    15 ноября 2022 13:28 volodiy59

    Василий,
    Всё гораздо проще:
    Скетч-Подключить библиотеку-Добавить ZIP библиотеку и указать место где лежит ZIP архив библиотеки. Всё.

    replyОтветить
  3. Алексей
    22 марта 2024 13:32 Алексей

    Правильно я понимаю, что частота дискретизации определяется задержкой delay(1) в конце цикла?

    replyОтветить
Оставить комментарий