
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04

Некоторое время назад я нашел в интернет-магазинах модуль датчика ЧСС MAX30100. Этот модуль может собирать данные о кислороде крови и частоте сердечных сокращений пользователей, что также просто и удобно в использовании.
По данным я обнаружил, что в файлах библиотеки Arduino есть библиотеки MAX30100. То есть, если я использую связь между Arduino и MAX30100, я могу напрямую вызывать файлы библиотеки Arduino без необходимости перезаписывать файлы драйверов. Это хорошо, поэтому я купил модуль MAX30100. Я решил использовать Arduino, чтобы проверить частоту сердечных сокращений и функцию сбора кислорода в крови MAX30100.
Шаг 1: функция

Ссылка для покупки модуля MAX30100:
item.taobao.com/item.htm?spm=a230r.1.14.69.c0c56556o8wH44&id=559690766124&ns=1&abbucket=2#detail
Примечание: этот модуль по умолчанию только с коммуникацией MCU с уровнем 3,3 В, поскольку по умолчанию используется вывод IIC, сопротивление которого повышается с 4,7 кОм до 1,8 В, поэтому по умолчанию нет связи с Arduino, если вы хотите общаться с Arduino и вам потребуется два подтягивающих резистора на выводе IIC 4,7 кОм, подключенных к выводу VIN, это содержание будет представлено в конце главы.
Функциональные назначения
Перед тем, как начать этот проект, я подумал о некоторых простых функциях: были собраны данные о частоте пульса и кислороде крови.
Данные о частоте пульса и кислороде крови отображаются на ЖК-экране.
Это единственные две функции, но если мы хотим ее реализовать, нам нужно сделать больше.
мышление:
Какой главный MCU используется?
Что за ЖК-дисплей?
Как мы упоминали ранее, мы используем Arduino для MCU, но это проект ЖК-дисплея Arduino, поэтому нам нужно выбрать соответствующий модуль ЖК-дисплея. Я планирую использовать ЖК-дисплей с последовательным портом. У меня есть дисплей STONE STVI070WT, но если Arduino необходимо с ним взаимодействовать, для преобразования уровня необходим MAX3232. Тогда основные электронные материалы определяются следующим образом:
1. Плата для разработки Arduino Mini Pro.
2. Модуль датчика ЧСС и кислорода в крови MAX30100
3. STONE STVI070WT ЖК-дисплей с последовательным портом.
4. Модуль MAX3232
Шаг 2: Введение в оборудование
MAX30100
MAX30100 - это интегрированный датчик пульсоксиметрии и пульсометра. Он сочетает в себе два светодиода, фотодетектор, оптимизированную оптику и малошумящую аналоговую обработку сигналов для обнаружения сигналов пульсовой оксиметрии и частоты сердечных сокращений. MAX30100 работает от источников питания 1,8 В и 3,3 В и может быть отключен с помощью программного обеспечения с незначительным током в режиме ожидания, что позволяет источнику питания всегда оставаться подключенным. Приложения
● Носимые устройства
● Устройства для фитнес-помощников.
● Устройства медицинского мониторинга
Преимущества и особенности
1 、 Полное решение для пульсоксиметра и датчика сердечного ритма упрощает конструкцию
Встроенные светодиоды, фотодатчик и высокопроизводительный аналоговый передний конец
Крошечные 5,6 мм x 2,8 мм x 1,2 мм 14-пиновый оптически усовершенствованная система в корпусе
2. Работа со сверхнизким энергопотреблением увеличивает срок службы батареи носимых устройств
Программируемая частота дискретизации и ток светодиода для экономии энергии
Сверхнизкий ток отключения (0,7 мкА, тип.)
3 、 Расширенные функции улучшают производительность измерений
Высокое SNR обеспечивает устойчивую устойчивость к артефактам движения
Встроенное подавление окружающего света
Возможность высокой частоты дискретизации
Возможность быстрого вывода данных
Шаг 3: Принцип обнаружения



Просто прижмите палец к датчику, чтобы оценить сатурацию кислорода (SpO2) и пульс (эквивалент сердцебиения).
Пульсоксиметр (оксиметр) - это мини-спектрометр, который ИСПОЛЬЗУЕТ принципы различных спектров поглощения эритроцитов для анализа насыщения крови кислородом. Этот метод быстрого измерения в реальном времени также широко используется во многих клинических справочниках. Я не буду слишком подробно рассказывать о MAX30100, потому что эти материалы доступны в Интернете. Заинтересованные друзья могут найти информацию об этом модуле измерения пульса в Интернете и лучше понять принцип его обнаружения.
КАМЕНЬ STVI070WT-01
Введение в средство отображения
В этом проекте я буду использовать STONE STVI070WT для отображения данных о частоте сердечных сокращений и кислороде крови. Микросхема драйвера встроена в экран дисплея, и есть программное обеспечение для использования пользователями. Пользователям нужно только добавить кнопки, текстовые поля и другую логику через созданные изображения пользовательского интерфейса, а затем сгенерировать файлы конфигурации и загрузить их на экран дисплея для запуска. Дисплей STVI070WT связывается с MCU через сигнал uart-rs232, что означает, что нам нужно добавить микросхему MAX3232 для преобразования сигнала RS232 в сигнал TTL, чтобы мы могли общаться с MCU Arduino.
Если вы не знаете, как использовать MAX3232, обратитесь к следующим рисункам:
Если вы считаете, что преобразование уровня слишком проблематично, вы можете выбрать другие типы дисплеев STONE, некоторые из которых могут напрямую выводить сигнал uart-ttl. Официальный сайт имеет подробную информацию и введение: https://www.stoneitech.com/ Если вам нужны видео-уроки и уроки, вы также можете найти их на официальном сайте.
Шаг 4: Этапы разработки



Три этапа разработки экрана дисплея STONE:
Разработайте логику дисплея и логику кнопок с помощью программного обеспечения STONE TOOL и загрузите файл дизайна в модуль дисплея.
MCU связывается с модулем ЖК-дисплея STONE через последовательный порт.
С данными, полученными на шаге 2, MCU выполняет другие действия.
Установка программного обеспечения STONE TOOL
Загрузите последнюю версию программного обеспечения STONE TOOL (в настоящее время TOOL2019) с веб-сайта и установите ее. После установки программного обеспечения откроется следующий интерфейс:
Нажмите кнопку «Файл» в верхнем левом углу, чтобы создать новый проект, о котором мы поговорим позже.
ArduinoArduino - это платформа электронного прототипа с открытым исходным кодом, которая проста в использовании и проста в использовании. Он включает в себя аппаратную часть (различные платы для разработки, соответствующие спецификации Arduino) и программную часть (Arduino IDE и соответствующие комплекты для разработки). Аппаратная часть (или плата разработки) состоит из микроконтроллера (MCU), флэш-памяти (Flash) и набора универсальных интерфейсов ввода / вывода (GPIO), которые можно рассматривать как материнскую плату микрокомпьютера. Программная часть в основном состоит из Arduino IDE на ПК, соответствующего пакета поддержки на уровне платы (BSP) и богатой сторонней библиотеки функций. С помощью Arduino IDE вы можете легко загрузить BSP, связанный с вашей платой разработки, и необходимые библиотеки. писать свои программы. Arduino - это платформа с открытым исходным кодом. На данный момент существует множество моделей и множество производных контроллеров, включая Arduino Uno, Arduino Nano, ArduinoYun и т. Д. Кроме того, Arduino IDE теперь не только поддерживает платы разработки серии Arduino, но также добавляет поддержку популярных плат разработки, таких как как Intel Galileo и NodeMCU, представив BSP. Arduino воспринимает окружающую среду с помощью различных датчиков, управляющих освещением, двигателями и другими устройствами для обратной связи и воздействия на окружающую среду. Микроконтроллер на плате может быть запрограммирован с помощью языка программирования Arduino, скомпилирован в двоичные файлы и записан в микроконтроллер. для Arduino реализован с помощью языка программирования Arduino (на основе проводки) и среды разработки Arduino (на основе обработки). Проекты на основе Arduino могут содержать только Arduino, а также Arduino и другое программное обеспечение, работающее на ПК, и они взаимодействуют с каждым из них. прочее (например, Flash, Processing, MaxMSP).
Среда разработки Arduino - это среда разработки Arduino, которую можно загрузить из Интернета. Войдите на официальный сайт Arduino и загрузите программное обеспечение https://www.arduino.cc/en/Main/Software?setlang=cn После установки Arduino IDE при открытии программного обеспечения появится следующий интерфейс:
IDE Arduino по умолчанию создает две функции: функцию настройки и функцию цикла. В Интернете есть множество представлений об Arduino. Если вы чего-то не понимаете, вы можете найти это в Интернете.
Шаг 5: процесс реализации проекта ЖК-дисплея Arduino



аппаратное соединение
Чтобы следующий шаг в написании кода прошел гладко, мы должны сначала определить надежность соединения оборудования. В этом проекте использовалось всего четыре единицы оборудования:
1. Плата для разработки Arduino Mini Pro.
2. ЖК-экран STONE STVI070WT tft-lcd
3. Датчик ЧСС и кислорода в крови MAX30100
4. MAX3232 (rs232-> TTL) Плата разработки Arduino Mini Pro и экран tft-lcd дисплея STVI070WT подключаются через UART, что требует преобразования уровня через MAX3232, а затем плата разработки Arduino Mini Pro и модуль MAX30100 подключаются через интерфейс IIC. Поразмыслив, можно нарисовать такую схему разводки:
Убедитесь, что в подключении оборудования нет ошибок, и переходите к следующему шагу.
Дизайн пользовательского интерфейса LCD-TFT Прежде всего, нам нужно разработать изображение дисплея пользовательского интерфейса, которое может быть создано с помощью PhotoShop или других инструментов для создания изображений. После разработки изображения отображения пользовательского интерфейса сохраните изображение в формате JPG. Откройте программу STONE TOOL2019 и создайте новый проект:
Удалите изображение, которое было загружено по умолчанию в новом проекте, и добавьте созданное нами изображение пользовательского интерфейса. Добавьте компонент отображения текста, создайте отображаемую цифру и десятичную точку, получите место хранения компонента отображения текста в средстве отображения. Эффект следующий:
адрес компонента текстового отображения: Connection sta: 0x0008
Частота пульса: 0x0001
Кислород крови: 0x0005
Основное содержимое пользовательского интерфейса:
Статус подключения
Отображение пульса
Кислород крови показал
Шаг 6: Создайте файл конфигурации




После завершения проектирования пользовательского интерфейса можно сгенерировать файл конфигурации и загрузить его на дисплей STVI070WT.
Сначала выполните шаг 1, затем вставьте флешку в компьютер, и отобразится символ диска. Затем нажмите «Загрузить на u-диск», чтобы загрузить файл конфигурации на USB-накопитель, а затем вставьте USB-накопитель в STVI070WT, чтобы завершить обновление.
MAX30100MAX30100 обменивается данными через IIC. Его принцип работы заключается в том, что значение АЦП частоты сердечных сокращений может быть получено с помощью инфракрасного излучения. Регистр MAX30100 можно разделить на пять категорий: регистр состояния, FIFO, регистр управления, регистр температуры и регистр идентификатора. Регистр температуры. считывает значение температуры микросхемы, чтобы исправить отклонение, вызванное температурой. Регистр идентификатора может считывать идентификационный номер микросхемы.
MAX30100 подключен к плате разработки Arduino Mini Pro через интерфейс связи IIC. Поскольку в Arduino IDE есть готовые файлы библиотеки MAX30100, мы можем считывать данные о частоте сердечных сокращений и кислороде крови, не изучая регистры MAX30100. Для тех, кто заинтересован в изучении регистра MAX30100, см. Техническое описание MAX30100.
Модифицируйте подтягивающий резистор MAX30100 IIC.
Следует отметить, что подтягивающее сопротивление 4,7 кОм вывода IIC модуля MAX30100 подключено к напряжению 1,8 В, что теоретически не является проблемой. Тем не менее, логический уровень связи вывода Arduino IIC составляет 5 В, поэтому он не может взаимодействовать с Arduino без изменения оборудования модуля MAX30100. Прямая связь возможна, если MCU - это STM32 или другой MCU с логическим уровнем 3,3 В. Следовательно, следующее необходимо внести изменения:
Удалите три резистора 4,7 кОм, отмеченные на рисунке, с помощью электрического паяльника. Затем приварите два резистора 4,7 кОм на выводах SDA и SCL к VIN, чтобы мы могли общаться с Arduino. Arduino Откройте Arduino IDE и найдите следующее кнопки:
Выполните поиск по запросу «MAX30100», чтобы найти две библиотеки для MAX30100, затем нажмите «Загрузить и установить».
После установки вы можете найти демонстрацию MAX30100 в папке библиотеки LIB Arduino:
Дважды щелкните файл, чтобы открыть его.
Эта демонстрация может быть протестирована напрямую. Если аппаратное соединение в порядке, вы можете загрузить компиляцию кода в плату разработки Arduibo и просмотреть данные MAX30100 в инструменте последовательной отладки.
Шаг 7: Эффект можно увидеть на следующем рисунке:


Чтобы узнать больше о проекте, нажмите здесь.
Свяжитесь с нами, если вам нужен полный код:
Я отвечу вам в течение 12 часов.
Рекомендуемые:
Смарт-часы с фитнес-трекером «сделай сам» с оксиметром и датчиком пульса - Модульные электронные модули от TinyCircuits - Самая маленькая аркада: 6 шагов

Смарт-часы с фитнес-трекером «сделай сам» с оксиметром и датчиком пульса | Модульные электронные модули от TinyCircuits | Самая маленькая аркада: Привет, ребята, как дела! Акарш от CETech. Сегодня у нас есть некоторые из сенсорных модулей, которые очень полезны в нашей повседневной жизни, но в крошечной версии самих себя. Датчики, которые у нас есть сегодня, очень малы по размеру по сравнению с тра
GPSDO YT, опорная частота осциллятора 10 МГц. Бюджетный. Точно: 3 шага

GPSDO YT, опорная частота осциллятора 10 МГц. Бюджетный. Точный.: *********************************************** ******************************* STOP STOP STOP STOP STOP STOP STOP STOP STOP Это устаревший проект. Вместо этого проверьте мой новая версия ЖК-дисплея 2x16 доступна здесь: https: //www.instructables.com/id
Измерение частоты пульса на кончике пальца: фотоплетизмографический подход к определению частоты пульса: 7 шагов

Измерение частоты пульса на кончике пальца: фотоплетизмографический подход к определению частоты пульса: фотоплетизмограф (ФПГ) - это простой и недорогой оптический метод, который часто используется для обнаружения изменений объема крови в микрососудистом ложе ткани. В основном он используется неинвазивно для измерения на поверхности кожи, обычно
Тактовая частота Arduino DCF77: 13 шагов (с изображениями)

Импульсные часы Arduino DCF77: Введение В этом руководстве показано, как создать цифровые импульсные часы и добавить их к старым 12-дюймовым часам. (300 мм) корпус часов или циферблат & безель. Я использовал старые английские часы с циферблатом на 12 дюймов. циферблат, но можно использовать любые часы с достаточно большим корпусом
Точная частота 1 Гц от сети переменного тока: 9 шагов

Точная частота 1 Гц от сети переменного тока: Частота сети, в зависимости от страны, составляет 50 Гц или 60 Гц. Эта частота имеет небольшие колебания в краткосрочной перспективе, но ежедневно компенсируется электростанцией, что приводит к довольно точному источнику частоты для многих приложений синхронизации