Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Oxymètre de pouls portable pour usage d'urgence COVID-19

Composants et fournitures

Composant Quantité
Arduino Nano R3 (ou Nano Every, Micro) 1
Capteur MAX30100 (oxymétrie + pouls) 1
Écran OLED SSD1306 128×32 I2C 1
Plaque d'essai (prototype) / futur PCB 1
Clip doigt imprimé 3D (Peter Smith, Thingiverse) 1
Fil 4×0.25 mm² 1

Outils

À propos du projet

Oxymètre de pouls portable pour usage d urgence COVID-19

Pénurie d'oxymètres en période COVID. Projet open-source pour réplication rapide : hardware commun/peu cher, boîtier 3D, clip doigt existant, carte de liaison simple, code de base, instructions claires.

1. Hardware : liste courte, grand potentiel

Oxymètre de pouls portable pour usage d urgence COVID-19

2. Boîtier 3D imprimable

Oxymètre de pouls portable pour usage d urgence COVID-19

Protège électronique et connexions. Fichiers fournis.

3. Clip doigt 3D (open source)

Oxymètre de pouls portable pour usage d urgence COVID-19

Modèle « Pulse Oximeter Clip » pour MAX30100 par Peter_Smith sur Thingiverse. Impression rapide, partage facile.

4. Carte de liaison simple

Oxymètre de pouls portable pour usage d urgence COVID-19

Plaque prototype connectant Nano, capteur, OLED. Prochaine étape : PCB imprimé.

5. Code : monitoring temps réel

Configuration de base : fréquence cardiaque + SpO2 temps réel. Paramètres généraux, ajustables selon usage.

6. Instructions

Oxymètre de pouls portable pour usage d urgence COVID-19

Schémas, pas-à-pas, liens bibliothèques, repo Thingiverse. Rien d'autre requis.

AVERTISSEMENT MÉDICAL
Ce dispositif, ses capteurs et son code NE SONT PAS testés, calibrés ni certifiés pour usage médical. Usage préventif et surveillance d'urgence UNIQUEMENT quand aucun dispositif médical n'est disponible. Toute utilisation hors ce cadre ou modification est sous votre entière responsabilité.

Licence GPL v3+. Copyright © 2020 CEREBRUM™ srl. Télécharger un fichier = accepter la disclaimer et l'intention du projet (urgence COVID-19).

Code Arduino (CE_Pulse-Oxi_dev2.4.ino)

/* CEREBRUM-oximeter dev 2.4 v1.1 - 06/04/2020 - GPL v3
   Arduino NANO/NANO Every: 3.3V | I2C A4(SDA), A5(SCL)
   Arduino MICRO: 3.3V | I2C 2(SDA), 3(SCL)
   MAX30100 + OLED SSD1306 128x32 sur même bus I2C */

#include <Wire.h>
#include "MAX30100_PulseOximeter.h"
#include "MAX30100.h"
#include <U8g2lib.h>

#define REPORTING_PERIOD_MS 1000
#define PULSE_WIDTH MAX30100_SPC_PW_1600US_16BITS
#define IR_LED_CURRENT MAX30100_LED_CURR_40MA
#define LED_CURRENT MAX30100_LED_CURR_20_8MA
#define SAMPLING_RATE MAX30100_SAMPRATE_100HZ

U8G2_SSD1306_128X32_UNIVISION_F_HW_I2C u8g2(U8G2_R0);
PulseOximeter pox;
MAX30100 sensor;
uint32_t tsLastReport = 0, last_beat = 0;
bool initialized = false;
int HRclean, SpO2;

void onBeatDetected() { show_beat(); last_beat = millis(); }

void show_beat() {
  u8g2.setFont(u8g2_font_cursor_tr);
  u8g2.setCursor(118, 10);
  u8g2.print("_");
  u8g2.sendBuffer();
}

void initial_display() {
  if (!initialized) {
    u8g2.clearBuffer();
    u8g2.setFont(u8g2_font_crox2hb_tr);
    u8g2.setCursor(15, 12); u8g2.print("CEREBRUM.it");
    u8g2.setFont(u8g2_font_crox2h_tr);
    u8g2.setCursor(30, 29); u8g2.print("Initialisation...");
    u8g2.sendBuffer(); delay(4000);
    initialized = true;
    u8g2.clearBuffer();
    u8g2.setFont(u8g2_font_crox2hb_tr);
    if (!pox.begin()) {
      u8g2.setCursor(40, 12); u8g2.print("ECHEC");
      u8g2.setCursor(15, 29); u8g2.print("Verifiez Capteur!");
      u8g2.sendBuffer(); for(;;);
    } else {
      u8g2.setCursor(20, 12); u8g2.print("INITIALISE");
      u8g2.setCursor(0, 29); u8g2.print("Mettez le capteur...");
      u8g2.sendBuffer();
    }
    delay(2000);
  }
}

void setup() {
  u8g2.begin();
  initial_display();
  pox.begin();
  pox.setOnBeatDetectedCallback(onBeatDetected);
  pox.setIRLedCurrent(LED_CURRENT);
  sensor.setMode(MAX30100_MODE_SPO2_HR);
  sensor.setLedsPulseWidth(PULSE_WIDTH);
  sensor.setSamplingRate(SAMPLING_RATE);
}

void loop() {
  pox.update();
  HRclean = pox.getHeartRate();
  SpO2 = pox.getSpO2();
  if ((millis() - tsLastReport > REPORTING_PERIOD_MS) && 
      (HRclean > 30 && HRclean < 220 && SpO2 > 30 && SpO2 < 100)) {
    u8g2.clearBuffer();
    u8g2.setFont(u8g2_font_crox2h_tr);
    u8g2.setCursor(0, 12); u8g2.print("FC");
    u8g2.setCursor(75, 12); u8g2.print("bpm");
    u8g2.setCursor(0, 30); u8g2.print("SpO2");
    u8g2.setCursor(75, 30); u8g2.print("%");
    u8g2.setFont(u8g2_font_fub11_tf);
    u8g2.setCursor(45, 12); u8g2.print(HRclean);
    u8g2.setCursor(45, 30); u8g2.print(SpO2);
    u8g2.setFont(u8g2_font_cursor_tr);
    u8g2.setCursor(118, 10); u8g2.print("^");
    u8g2.sendBuffer();
    tsLastReport = millis();
  }
}

Pièces 3D personnalisées

Schémas

Processus de fabrication

  1. Impression 3D métallique : 5 applications de pointe transformant l'industrie
  2. Pourquoi les check-lists boostent l'efficacité usine : bénéfices prouvés et mise en œuvre pratique
  3. COVID-19 : stratégies clés pour un plan de réponse d'urgence efficace de la chaîne d'approvisionnement
  4. Health Band : Bracelet intelligent fiable d'assistance pour personnes âgées
  5. Guide d'expert pour sélectionner les caillebotis métalliques pour rayonnages à palettes fiables
  6. 5 cas d'usage puissants de l'impression 3D
  7. Solutions de moulage en sable premium pour applications industrielles
  8. Pompe à eau électrique pour usage domestique – Fiable, efficace, facile à installer
  9. Meilleures machines EDM CNC pour usinage de précision