Раньше отслеживание вашей основной жизненной статистики включало поездку в кабинет врача, где вас подвергали дорогостоящему оборудованию, которое вы даже не могли надеяться понять. Но теперь, с появлением модульной и комплектной электроники, вы можете собрать некоторые из этих устройств прямо на своем столе, используя микроконтроллер, такой как Arduino или Raspberry Pi Pico. С возвращением зимы и ростом респираторных заболеваний было бы полезно иметь легкодоступный пульсоксиметр. Конечно, вы не сможете получить точность медицинского уровня с помощью домашнего пульсоксиметра, но когда совершенство когда-либо мешало хорошему проекту? (У нас их довольно много, если вам интересно.)

Связанный
Вот 15 гениальных проектов, которые можно построить с помощью Arduino
От самодельных 3D-принтеров до FPV-дронов — с микроконтроллером Arduino можно многое сделать.
Что вам понадобится

Малиновый Пи Пико
Raspberry Pi Pico — это плата микроконтроллера стоимостью 4 доллара с собственным чипом RP2040 на базе ARM от Raspberry. Он программируется на C и MicroPython и имеет такие параметры ввода-вывода, как I2C, SPI и PIO.
Собираем пульсоксиметр вместе
Использование макета для создания пульсоксиметра
Начните с размещения Raspberry Pi Pico на макете, располагая центральный канал так, чтобы порт micro USB был ближе к краю. Вам нужен порт на периферии, потому что вам понадобится легкий доступ к нему для подачи питания. Размещение его в середине края максимизирует количество отверстий, с которыми вы можете работать.
Затем разместите OLED-дисплей и модуль пульсоксиметра. На самом деле не имеет значения, где вы их разместите, но некоторые места лучше, чем другие. OLED лучше всего размещается в самом нижнем ряду верхней половины платы, поэтому он получает поддержку и по-прежнему оставляет четыре ряда отверстий, поэтому соединительные провода не сжимаются. Модуль пульсоксиметра лучше располагать в нижней части платы, поскольку там легче обеспечить хороший контакт с пальцем.
Теперь, когда все ваши компоненты на месте, пришло время их подключить. Это можно делать в любом порядке, но я предпочитаю начинать с мощности.
- Проложите переходной провод от контакта 3,3 В Pico к одной из положительных шин питания на краю макетной платы.
- Подключите контакты питания на ваших компонентах к шине питания.
- Проложите переходной провод от одного из контактов заземления вашего Pico к отрицательной шине питания.
- Подключите контакты заземления ваших компонентов к отрицательной шине питания.
Когда дело доходит до управления данными от этих датчиков, мы собираемся использовать протокол I²C, который позволит нескольким устройствам обмениваться данными через одни и те же контакты GPIO, упрощая наши потребности в проводке. Чтобы использовать функциональность I²C, вам нужны два контакта: контакт данных (SDA) для входящей и исходящей информации и тактовый контакт (SCL) для координации времени разговора с каждым устройством. Давайте настроим это.
- Начните с подключения контактов SDA и SCL на вашем OLED к контактам 8 и 9 на Pico.
- Подключите контакты SDA и SCL на MAX30102 к соответствующему ряду над OLED.
Вы могли бы подключить каждое устройство к своей собственной паре контактов I²C, но такой способ упростит вам жизнь, если вы когда-нибудь решите превратить это из проекта в устройство.
В зависимости от качества и возраста вашего макета вам, возможно, придется повозиться с соединениями (я знаю, что делал).
Сборка программного обеспечения для вашего пульсоксиметра
Самый простой способ запустить программное обеспечение на Raspberry Pi Pico — загрузить Thonny, Python IDE с открытым исходным кодом. Thonny позволит вам без особых хлопот добавлять и удалять файлы с вашего Pico. После установки вы можете добавить необходимые файлы Python.
Установка MicroPython на Raspberry Pi Pico
- Удерживая кнопку BOOTSEL, используйте кабель micro USB — USB-A, чтобы подключить Pico к компьютеру. Это заставит ваш Pico отображаться как USB-устройство и позволит вам взаимодействовать с ним через Thonny.
- Откройте Тонни и посмотрите в правый нижний угол окна. Он показывает, какую версию Python вы используете в данный момент. Нажмите на текст в этом углу и выберите Установить МикроПитон.
- Во всплывающем окне выберите пункт Raspberry Pi • Пико / Пико H вариант из вариант раскрывающийся список, затем нажмите Установить. Это установит прошивку MicroPython на ваш Pico через подключенный USB-кабель.
- После завершения установки нажмите Закрывать.
- Дважды проверьте версию Python в правом нижнем углу. Должно быть установлено значение МикроПитон (Малина Пи Пико). Если это не так, измените его.
MicroPython — это прошивка, которая будет запускать программы Python, установленные на Pico. Теперь, когда он у нас есть, давайте добавим к нему немного кода.
Установка программного обеспечения пульсоксиметра на Raspberry Pi Pico
- Сначала вам необходимо добавить библиотеки Python, используемые для взаимодействия с компонентами дисплея и датчика. В меню в верхней части окна Тонни нажмите Инструментызатем выберите Управление пакетами из раскрывающегося списка.
- Для работы кода пульсоксиметра необходимы две библиотеки: micropython-max30102 и micropython-ssd1306. Входить микропитон-max30102 в строку поиска и нажмите Входить или нажмите Поиск по PyPI.
- Верхний результат должен быть micropython-max30102. Нажмите на этот результат, затем нажмите Установить.
Если вы не установили версию Python MicroPython, установка завершится неудачно. Если это произойдет, дважды проверьте свою версию в правом нижнем углу и при необходимости измените ее.
- Повторите этот процесс, чтобы установить микропитон-ssd1306 библиотека.
- Загрузите файлpulse-oximeter.py с GitHub.
- Откройте файл с Тонни, выбрав Файл из меню, затем нажмите Открыть, затем выберите открыть из Этот компьютер.
- Выберите файл, который вы скачали, затем нажмите Открыть.
Если все детали собраны, вы можете запустить пульсоксиметр, нажав кнопку зеленая кнопка воспроизведениявыбрав Запустить текущий скрипт из Бегать меню или нажав F5. Наконец, если вы хотите, чтобы этот проект запускался без использования Thonny, сохраните этот сценарий как «main.py» на своем Pico.
- Выбирать Файл затем нажмите Сохранить как.
- На вопрос, куда сохранить, выберите Малиновый Пи Пико.
Если ваш скрипт все еще работает, вам придется остановить его, прежде чем вы сможете сохранить файл в Pico.
- Назовите свой файл «main.py» и выберите ХОРОШО.
Теперь, когда вы включаете Pico, он запускает сценарий пульсоксиметра.
Сделайте пульсоксиметр своим собственным
Теперь, когда у вас есть работающий пульсоксиметр, вы можете покопаться в коде Python и сделать его самостоятельно. Одно из простых решений — изменить контакты, которые вы используете на Pico. Единственное ограничение заключается в том, что сигнал SDA должен поступать на вывод SDA, а сигнал SCL должен поступать на вывод SCL.
Возможно, вы также захотите поработать с формулой SpO² (в коде вы можете увидеть, что я попробовал несколько формул). Измерение насыщения крови кислородом — это, по сути, жуткое искусство, и «правильную» калибровку невозможно выполнить самостоятельно в мастерской. Тем не менее, не позволяйте приличиям остановить вас, покопайтесь в коде и повеселитесь! И в конце концов вы получите ценную личную информацию о здоровье одним прикосновением пальца.

Связанный
Я сделал инфракрасную камеру слежения с помощью Raspberry Pi, чтобы видеть, что какает у меня на заднем дворе.
Используйте возможности технологий, чтобы шпионить за природой