Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen

Komponenten und Zubehör

Digilent OpenScope MZ 1 Oszilloskop / Wellenform-Generator (optional, für Signalanalyse)
Arduino UNO 1 Für Herzfrequenz-Berechnung & Anzeige
Texas Instruments Quad Op-Amp (z. B. TL084) 1 Allzweck-Operationsverstärker
Texas Instruments High-Speed Comparator (z. B. TLV3501) 1 Schneller Komparator für Puls-Detektion
Präzisions-Potentiometer 10 kΩ (25-fach) 2 Für Verstärkung (R7) & virtuelle Masse (R8/R9)
Potentiometer 100 kΩ (einfach) 1 Für Komparator-Schwellwerte (R3/R4) – Mehrgang besser
Potentiometer 10 kΩ (einfach) 1
Kondensator 100 µF 1
Kondensator 100 nF 1
Widerstand 10 kΩ 2 Oder ein einzelner 20 kΩ für Spannungsteiler
Widerstand 4,75 kΩ 1
Widerstand 82 kΩ 1 Alternativ: 100 kΩ Potentiometer auf 82 kΩ einstellen

Apps und Online-Dienste

Über dieses Projekt

Einführung

Inspiriert durch ein YouTube-Video von CapitanoRed, der einen fotowiderstandsbasierten Herzfrequenz-Monitor für Oszilloskop-Darstellung baute. Ziel war es, das Projekt zu replizieren und einen Arduino hinzuzufügen, der die Herzfrequenz berechnet und anzeigt – so kann man gleichzeitig das Wellenform-Signal am Oszilloskop beobachten und die Herzfrequenz ablesen.

Bei jedem Herzschlag werden durch den Blutdruck momentane Schwankungen erzeugt, die wir als Puls spüren. An Stellen mit dünner Haut (Fingerspitze, Ohrläppchen) lassen sich diese Pulse als winzige Lichtintensitätsänderungen detektieren. Das Auge reicht nicht aus, aber Fotowiderstände (LDRs) sind empfindlich genug.

Ein Fotowiderstand ändert seinen Widerstand mit der einfallenden Lichtintensität. Die Widerstandsänderung ist bei subtilen Lichtänderungen sehr klein, wird aber durch Operationsverstärker verstärkt.

Funktionsprinzip

Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen
Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen

Signalweg:

  1. Spannungsteiler: Fotowiderstand + 20 kΩ → Spannung steigt mit Lichtintensität
  2. Amp1 (Filter): Entfernt Hochfrequenz-Rauschen
  3. Amp2 (Invertierender Verstärker): Maximiert Signalamplitude
  4. Amp3 (Virtuelle Masse): Zentriert Signal auf 2,5 V für maximalen Ausschlag (0–5 V)
Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen
Gefiltertes & verstärktes Signal nach Amp3

Komparator (Cmp): Wandelt analoges Signal in digitale Impulse um. Grundkonfiguration als Schwellenwert-Detektor funktioniert hier nicht zuverlässig wegen:

Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen

Lösung: Hysterese (asymmetrischer Komparator)

Nach Texas Instruments Application Note: Rückkopplung vom Ausgang ändert die Spannung am positiven Eingang → unterschiedliche Schwellwerte für Low→High (Vh) und High→Low (Vl). So triggert der Komparator einmal pro Herzschlag (auf der Anstiegsflanke) und schaltet erst nach der Dicrotic Notch wieder zurück.

Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen
Sauberer digitaler Impuls pro Herzschlag

Vorbereitung des Fotowiderstands

Empfehlung: Klare Schrumpfschlauch-Isolierung über dem Fotowiderstand. Mindestens die Anschlüsse vollständig isolieren, da Körper-Spannungen im gleichen Bereich liegen wie das Nutzsignal und Messwerte verfälschen würden.

Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen

Abstimmung des Herzfrequenz-Monitors

  1. Verstärkung (R7): Einfaches Potentiometer, ca. 375 Ω auf Filter-Seite einstellen. In WaveForms Live Pulse beobachten. Amplitude durch Verkleinern des Widerstands erhöhen, bei Clipping vergrößern.
  2. Komparator-Schwellwerte (R3, R4): Mehrgang-Potentiometer für präzise Einstellung. R5 (10–100 kΩ) genau messen. Beiliegendes Excel-Sheet berechnet R3/R4 aus R5, Vl, Vh.
  3. Virtuelle Masse (R8, R9): Ein Potentiometer mit Mittelanzapfung an positiven Op-Amp-Eingang. Auf 2,5 V einstellen (Multimeter/OpenScope).
Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen
Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen
Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen

Pulse in WaveForms Live anzeigen

Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen

Komparator-Schwellwerte einstellen

  1. Repräsentativen Wellenform anhalten (Stop)
  2. CURSORS → Type: Voltage, beide Cursor auf Osc 2
  3. Eine Linie nahe Pulse-Peak (Vh), andere unter Dicrotic Notch (Vl) platzieren
  4. Abgelesene Spannungen notieren (kleiner = Vl, größer = Vh)
  5. In Excel-Sheet eintragen → R3, R4 Werte berechnen lassen → Potentiometer einstellen
Präzisen Herzfrequenz-Monitor mit Fotowiderstand und Arduino bauen

Arduino-Code

Der Code implementiert einen Frequenzzähler mit Pulsbreiten-Filter (200–800 ms) und gleitendem Durchschnitt über 15 Sekunden zur Rauschunterdrückung.

#define INT0 3
float frequency, freqAvg, total = 15;
long timeCount, pulseStart;
int counter = 0, inputPin = 3;
boolean low = false;

void setup() {
  attachInterrupt(digitalPinToInterrupt(INT0), intrruption, CHANGE);
  Serial.begin(9600);
}

void loop() {
  timeCount = millis();
  while (millis() - timeCount < 5000) {
    frequency = counter;
  }
  if (frequency > 3) {
    total += frequency;
    total -= freqAvg;
    freqAvg = total / 3;
  }
  showHR();
  counter = 0;
}

void intrruption() {
  if (digitalRead(3) == 0) { fallDetect(); low = true; }
  else if (digitalRead(3) == 1) widthCheck();
}

void fallDetect() { pulseStart = millis(); }

void widthCheck() {
  long pulseEnd = millis();
  if ((pulseEnd - pulseStart > 200) && (pulseEnd - pulseStart < 800) && low) {
    counter++;
    low = false;
  }
}

void showHR() {
  Serial.print("Heart rate = ");
  Serial.println(freqAvg * 12); // 5s Messung → *12 = bpm
}

Zukünftige Verbesserungen

Code-Dateien

Schaltplan

Fritzing-Datei: hr_monitor_tnffXlVQQV.fzz

Herstellungsprozess

  1. Externer Defibrillator: Geschichte, Design und Fertigung
  2. Künstliches Herz: Technologie, Geschichte und Zukunftsperspektiven
  3. Künstliche Herzklappen: Typen, Geschichte und zukünftige Innovationen
  4. Moderne EKG-Geräte: Technologie, Fertigung und zukünftige Innovationen
  5. Blitzdetektion mit Raspberry Pi und AS3935: Praktischer Leitfaden
  6. Herzfrequenz mit Windows 10 IoT Core auf Raspberry Pi auslesen – Schritt-für-Schritt-Anleitung
  7. Fern-Herzfrequenz-Überwachung mit AWS IoT Alarmen
  8. Messung der magnetischen Signatur eines einzelnen Atomkerns
  9. Integrierte Herzfrequenz-Sensoren in Smart Clothing: Zuverlässiges Wearable-Monitoring
  10. Herz schützen: Wesentliche Lebensgewohnheiten für den Herzgesundheitsmonat Februar