Hartslag meten met de Arduino

FunduinoLaatst bijgewerkt op

Den eigenen Herzschlag als Kurve sichtbar machen

Der Puls-Sensor gehört zu den Bauteilen, bei denen das Ergebnis sofort beeindruckt: Zwei Minuten nach dem Hochladen siehst du deinen eigenen Herzschlag als Kurve auf dem Bildschirm.

Dabei ist der Sensor technisch ganz einfach – er liefert nur eine Spannung an einen analogen Eingang, genau wie ein Temperatursensor. In dieser Anleitung stellst du diese Spannung im Seriellen Plotter dar und lässt zusätzlich eine LED im Takt deines Herzens blinken.

Runder Puls-Sensor mit drei Anschlusskabeln an einem Finger
Der Puls-Sensor an der Fingerkuppe
Serieller Plotter mit regelmäßig wiederkehrenden Ausschlägen
Der Spannungsverlauf im Seriellen Plotter – die Spitzen sind die einzelnen Herzschläge
1 / 2

Material

Für dieses Projekt brauchst du:

  • 1× Mikrocontroller mit passendem USB-Kabel
  • 1× Herzfrequenzsensor (Puls-Sensor)

Mehr ist nicht nötig – als Anzeige dient die LED, die auf dem Mikrocontroller bereits an Pin 13 sitzt.

Wie der Puls-Sensor arbeitet

Der Puls-Sensor leuchtet mit einer sehr hellen grünen LED in die Haut und misst mit einem Lichtsensor, wie viel davon zurückkommt. Mit jedem Herzschlag füllen sich die Adern kurz stärker mit Blut, wodurch sich das zurückgeworfene Licht verändert.

Nach außen verhält sich der Sensor so einfach wie ein Temperatursensor: Er gibt eine Spannung an einen analogen Eingang, und bei jedem Herzschlag ist dieser Wert kurz höher. Im Seriellen Plotter der Arduino-Software wird daraus eine Kurve, in der die einzelnen Herzschläge deutlich zu sehen sind.

Der Puls-Sensor ist ein Bastelbauteil und kein Medizinprodukt. Seine Werte eignen sich zum Experimentieren und Lernen, nicht für gesundheitliche Einschätzungen.

Serieller Plotter mit regelmäßig wiederkehrenden Ausschlägen
Der Spannungsverlauf im Seriellen Plotter – die Spitzen sind die einzelnen Herzschläge

Aufbau

An der Rückseite des Sensors sind drei Kabel angelötet, auf der Platine mit +, − und S beschriftet:

  • + → 5V am Arduino
  • − → GND am Arduino
  • S → analoger Eingang A0

Befestige den Sensor danach an einer Stelle, an der die LED bis zu einer pulsierenden Ader durchleuchten kann – gut geeignet sind die Kuppe des Ringfingers oder das Ohrläppchen.

Runder Puls-Sensor mit drei Anschlusskabeln an einem Finger
Der Puls-Sensor an der Fingerkuppe

Den Herzschlag sichtbar machen

Lade den Sketch hoch und öffne danach in der Arduino-Software unter Werkzeuge den Seriellen Plotter – nicht den Seriellen Monitor.

Der Plotter sammelt zuerst ein paar Messwerte und stellt sich dann selbst so ein, dass die Kurve gut zu sehen ist. Das kann bis zu zehn Sekunden dauern. Erscheint kein klares Bild, probiere eine andere Körperstelle aus und halte den Sensor ruhig.

Serieller Plotter mit regelmäßig wiederkehrenden Ausschlägen
Der Spannungsverlauf im Seriellen Plotter – die Spitzen sind die einzelnen Herzschläge
Sketch: Pulssignal ausgeben und LED im Takt schalten
int SensorPin = A0;    // Signalleitung am analogen Eingang A0
int LED = 13;          // Die eingebaute LED an Pin 13 wird verwendet
int Sensorwert;        // Variable fuer den Sensorwert
int Grenzwert = 520;   // Grenzwert, ab dem die LED leuchten soll

void setup()
{
  pinMode(LED, OUTPUT); // Pin 13 ist ein Ausgang
  Serial.begin(9600);   // Serielle Verbindung starten
}

void loop()
{
  // Sensorwert auslesen und unter der Variablen "Sensorwert" abspeichern
  Sensorwert = analogRead(SensorPin);

  // Sensorwert ueber die serielle Schnittstelle an den PC senden
  Serial.println(Sensorwert);

  // Wenn der Sensorwert ueber dem Grenzwert liegt ...
  if (Sensorwert > Grenzwert)
  {
    digitalWrite(LED, HIGH); // ... dann soll die LED leuchten
  }
  else                       // Ansonsten ...
  {
    digitalWrite(LED, LOW);  // ... ist die LED aus
  }

  delay(10); // Kurze Pause, damit die Messwerte besser zu erkennen sind
}

Den Grenzwert für die LED einstellen

Auch wenn die Kurve schon gut aussieht, blinkt die LED an Pin 13 vielleicht noch nicht im richtigen Rhythmus. Dann stimmt der Grenzwert im Sketch nicht zu deinen Messwerten.

Lies im Plotter ab, in welchem Bereich deine Werte liegen. In unserem Beispiel schwanken sie zwischen 500 und 530, die eigentlichen Herzschläge liegen zwischen 515 und 525. Ein Grenzwert von 520 trifft genau diese Spitzen – die LED leuchtet dann im Takt des Herzschlags.

Diese Zahlen hängen stark von der Körperstelle und von der Person ab. Setze den Grenzwert deshalb so, dass er knapp unter deinen eigenen Spitzenwerten liegt.

Liegt der Grenzwert zu niedrig, leuchtet die LED durchgehend; liegt er zu hoch, bleibt sie dunkel. Beides sind Anzeichen dafür, dass die Zahl nachjustiert werden muss – nicht dafür, dass die Schaltung falsch ist.

Serieller Plotter mit regelmäßig wiederkehrenden Ausschlägen
Der Spannungsverlauf im Seriellen Plotter – die Spitzen sind die einzelnen Herzschläge

Weiterführende Informationen

Der nächste Schritt wäre, aus dem Signal eine Zahl zu machen: Dafür misst du die Zeit zwischen zwei Herzschlägen und rechnest sie in Schläge pro Minute um.

Fertige Bibliotheken und ausführliche Hintergrundinformationen zu diesem Sensor findest du beim Hersteller:

pulsesensor.com

Handleiding beoordelen

Opmerkingen

Stel een vraag of deel je ervaring

Neem contact met ons op als iets niet werkt. Vermeld daarbij je board en de foutmelding.

We controleren elke reactie voordat deze wordt gepubliceerd. Je e-mailadres blijft bij ons.