Herzschlagsensor KY-039: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(21 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 40: Zeile 40:
| 7 || Ein Piepton muss anzeigen, wandelt den Herzschlag in ein akustisches Signal um. || 1
| 7 || Ein Piepton muss anzeigen, wandelt den Herzschlag in ein akustisches Signal um. || 1
|-
|-
| 8 || Das Sensorsystem muss die Herzschläge pro Minute auf dem [[LCD_Modul_16x02_I2C|LCD-Display]] anzeigen. || 2
| 8 || Das Sensorsystem muss die Herzschläge pro Minute auf dem [[LCD_Modul_16x02_I2C|LC-Display]] anzeigen. || 2
|}
|}
|}
|}
Zeile 72: Zeile 72:
* Herzschlagsensor KY-039
* Herzschlagsensor KY-039


Für die Aufnahme der Pulsdaten wird der Herzschlagsensor KY-039 genutzt.  Dieser verfügt über einen Fototransistor, sowie über eine Infrarot-LED. Durch die LED wird Licht durch den Finger, beziehungsweise das Ohr geleitet. Mittels des Fototransistors kann bestimmt werden, wie viel Licht zurückgeworfen wird. Über das zurückgeworfene Licht kann bestimmt werden, wie hoch der Puls ist. [2]  
Für die Aufnahme der Pulsdaten wird der Herzschlagsensor KY-039 genutzt.  Dieser verfügt über einen Fototransistor, sowie über eine Infrarot-LED. Durch die LED wird Licht durch den Finger, beziehungsweise das Ohr geleitet. Mittels des Fototransistors kann bestimmt werden, wie viel Licht zurückgeworfen wird. Über das zurückgeworfene Licht kann bestimmt werden, wie hoch der Puls ist. Eine Kalibrierung ist für diesen Senor nicht erforderlich.[2]  




Zeile 103: Zeile 103:
| 1 || Versorgungsspannung VCC  || 5 V
| 1 || Versorgungsspannung VCC  || 5 V
|-
|-
| 2 || Output || A0
| 2 || Output || A1
|-
|-
| 4 || Masse (GND)  || 0 V
| 4 || Masse (GND)  || 0 V
Zeile 110: Zeile 110:
== Versuchsaufbau und Durchführung ==
== Versuchsaufbau und Durchführung ==
=== Versuchsaufbau ===
=== Versuchsaufbau ===
[[Datei:Schaltplan Sharp.jpg|thumb|rigth|450px|Abb. 2: Schaltplan]]
[[Datei:Versuchsaufbau KY-039 mit Arduino.jpeg|mini|200px|Abb. 2 Versuchsaufbau KY-039 mit Arduino]]
[[Datei:Anschlussplan Sharp.png|thumb|rigth|450px|Abb. 3: Anschlussplan]]
[[Datei:Anschlussplan KY-039 an Arduino.jpg|200px|mini|Abb. 3: Anschlussplan]]
[[Datei:Foto Sharp.png|thumb|rigth|450px|Abb. 4: Foto des Versuchsaufbaus]]
Der Versuchsaufbau wird durch die Abbildung (Abb. 2), sowie den Anschlussplan (Abb. 3)  
Der Versuchsaufbau wird durch einen Schaltplan (Abb. 2), Anschlussplan (Abb. 3) und Foto des Aufbaus (Abb. 4) dokumentiert.
dokumentiert.


=== Versuchsdurchführung ===
=== Versuchsdurchführung ===
[[Datei:Simulink Sharp.png|thumb|rigth|450px|Abb. 5: Simulink-Modell]]
 
Das Modell zur Datenverarbeitung wurde gemäß Abb. 5 in Simulink aufgebaut. Die Messdaten wurden aufgezeichnet. Ein Video der Versuchsdurchführung findet sich hier.
[[Datei:Simulink Modell KY-039 Sensor.jpeg|mini]]
Das Modell zur Datenverarbeitung wurde gemäß Abb. 4 in Simulink aufgebaut. Die Datenverarbeitung wurde so gestaltet, dass nicht nur einzelne Werte, sondern vor allem die Peaks gemessen werden.
Bei den Peaks, welche durch den Fototransistor erfasst werden, handelt es sich um die entsprechenden Unregelmäßigkeiten im Blutstrom. Aus diesen lassen sich die Herzschläge ableiten.
Dies geschieht über eine sogenannte "Peak-Detektion". Dafür wurden die aufgenommenen Werte zwischengespeichert und am Ende über eine entsprechende Mathlab-Funktion herausgefiltert.
 
 
Die Messdaten wurden aufgezeichnet. Ein Video der Versuchsdurchführung findet sich hier.


'''Modelleinstellungen:''' Arduino Uno, Solver: Fixed-step, discrete, Abtastrate: 0,001 s
'''Modelleinstellungen:''' Arduino Uno, Solver: Fixed-step, discrete, Abtastrate: 0,001 s


=== Versuchsbeobachtung ===
=== Versuchsbeobachtung ===
[[Datei:Sharp Ergebnis 1.png|thumb|rigth|450px|Abb. 6: Darstellung des Rohsignals des IR-Entfernungssensors (rote Kurve)]]
Nach der Durchführung mehrerer Versuchsdurchläufe wurde deutlich, dass der Fototransistor sehr sensibel regiert. Je nach Stellung des Fingers wurden veränderte Werte unter ansonsten gleichen Versuchsbedingungen gemessen. <br>
[[Datei:Sharp Ergebnis 2.png |thumb|rigth|450px|Abb. 7: Darstellung von dynamischen Messwerten des IR-Entfernungssensors]]
Um die Messung so genau wie möglich zu halten, sollte die Stellung des Fingers für den Messvorgang sich stehts in Ruhelage befinden.
Das Signal des Sensors weist alle 40&thinsp;ms systematische Ausreisser auf (vgl. Abb. 6, rote Kurve).


== Auswertung==
== Auswertung==
Die Messhypothese wurde verworfen. Der Sensor weist systematische Messwertausreisser auf.
Bei absoluter Ruhelage der Finger ist die Messung für den geringen Materialpreis eine gute und einfache Technik zu anderen Messmethoden.
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Testbericht gegen die Anforderungen&thinsp;</strong>
|-
| Der Test der Anforderungen wurden nicht explizit und nachvollziehbar dokumentiert. Anhand des Wiki-Artikels konnte nachfolgender Erfüllungsgrad abgelesen werden.
{| class="wikitable"
|-
! Req. !! Beschreibung !! bestanden/nicht bestanden
|-
| 1 || Die Herzfrequenz muss mittels Pulsesensor SE050, Arduino und Simulink gemessen werden.|| <span style="color:green">☑</span>
|-
| 2 || Der Messbereich muss bestimmt werden. || <span style="color:red">☒</span>
|-
| 3 || Die Messunsicherheit (1σ) muss für den Messbereich ermittelt und als Vertrauensbereich angezeigt werden. || <span style="color:red">☒</span>
|-
| 4 || Der Sensor muss kalibriert werden. || <span style="color:red">☒</span>
|-
| 5 || Für den Messbereich muss die Pulsfrequenz referenziert werden. || <span style="color:red">☒</span>
|-
| 6 || Die Messwerte müssen über der Zeit gefiltert werden.  || <span style="color:red">☒</span>
|-
| 7 || Ein Piepton muss anzeigen, wandelt den Herzschlag in ein akustisches Signal um. || <span style="color:red">☒</span>
|-
| 8 || Das Sensorsystem muss die Herzschläge pro Minute auf dem [[LCD_Modul_16x02_I2C|LC-Display]] anzeigen. || <span style="color:red">☒</span>
|}
|}


Die Ausreisser lassen sich mit einem Signalfilter eliminieren. Hierzu eignet sich ein Rangordnungsfilter (z.&thinsp;B. Median-Filter). Das Filter wird hierzu auf eine Fensterbreite von 30 Werten
eingestellt. Das zufriedenstellende Filterergebnis für statische Werte zeigt Abb. 6 als blaue Kurve. Es konnte mit dynamische Werten verifiziert werden (vgl. Abb. 7). Das Datenblatt ([2, S. 6]) belegt die Messungen und bezeichnet die Messausreisser als "instabile Ausgabe" für maximal 5&thinsp;ms alle 40&thinsp;ms. Mit 50 Werten erhöht sich die Filterwirkung, es entsteht jedoch ein Delay von 10&thinsp;ms. Mit 10 Werten ist die Filterwirkung zu gering.
== Zusammenfassung und Ausblick ==
== Zusammenfassung und Ausblick ==
* Zusammenfassung der Kapitel 1-4
* Zusammenfassung der Kapitel 1-4
Die Messung mittels des Fotosensors ist eine günstige und verlässliche Messmethode, zumindest soweit die Messgegebenheiten gleich sind.
* Diskussion der Ergebnisse
* Diskussion der Ergebnisse
Verglichen mit den Ergebnissen anderer Messmethoden zur Pulsmessung, haben sich keine signifikanten Unterschiede gezeigt.
* Ausblick
* Ausblick
Um die Qualität der Messmethode, beziehungsweise des Sensors besser einordnen zu können, wäre ein Vergleich mit ähnlichen Sensoren von Vorteil.
* Selbstreflexion/Lessons learned
* Selbstreflexion/Lessons learned
Die praktische Arbeit mit dem Sensor, in Verbindung mit dem Arduino hat mir persönlich viel gebracht. Ich konnte viel erlerntes Wissen aus dem Bereichen der Signalverarbeitung einmal praktisch anwenden.


== Ergebnisvideo ==
== Ergebnisvideo ==
Zeile 164: Zeile 197:


== Literatur ==
== Literatur ==
Zitieren Sie nach [[Zitieren_nach_DIN1505|DIN ISO 690:2013-10]].
[1] https://docs.arduino.cc/hardware/uno-rev3/, 27. Juli 2024 <br>
[2] https://www.linkerkit.de/index.php?title=KY-039_Herzschlag_Sensor_Modul#Codebeispiel_Arduino, 22. Juli 2024 <br>
[3] https://de.mathworks.com/products/simulink.html, 22. Juli 2024 <br>


== Anhang ==
== Anhang ==

Aktuelle Version vom 10. August 2024, 10:35 Uhr

Abb. 1: Herzschlagsensor KY-039
Autor: Rick Bürger
Studiengang: Business and Systems Engineering
Modul: BSE-M-2-1.03, Hausarbeit in Angewandte Informatik gehalten von Prof. Dr.-Ing. Schneider
Semester: Sommersemester 2024
Abgabetermin: 28.07.2024

Einführung

Aufgabenstellung

Messen Sie die die Herzfrequenz am Ohrläppchen oder Finger in Herzschlag pro Minute (BPM).

  • Thema/Fragestellung: Messung der Entfernung mit dem Sensor Sharp GP2-0430K
  • Hypothese: Die Entfernung lässt sich im Bereich von 4 cm bis 50 cm fehlerfrei messen.
  • Einordnung in den Lehrplan

Projektbeschreibung

Tabelle 2: Materialliste
# Anzahl Material
1 1 PC mit MATLAB/Simulink R2023b
2 1 Sensor KY-039
3 1 Arduino Uno R3
4 1 Streckbrett
5 3 Jumper Kabel, männlich/männlich, 20 cm

Beschreibung Funktionsweise der verwendeten Hard- und Software

  • Arduino Uno R3

Der Arduino Uno R3 ist ein sogenanntes Microcontroller-Board der Firma Arduino. Mit diesem lassen sich einfache Mikrokontroller realisieren. Das Modell Uno R3 verfügt über 14 digitale und 6 analoge Ein-/Ausgänge, von denen 6 als sogenannte PWM- Ausgänge verwendet werden können. Hardwareseitig verfügt der Arduino Uno R3 über einen 16 MHz Keramikresonator. Der Arduino kann über ein Power-Buchse, oder über den USB-Anschluss mit Strom versorgt werden, über den USB-Anschluss kann auch eine Verbindung mit einem PC hergestellt werden. Für einen besseren Lesefluss wird das Mikrocontroller-Board die verkürzte Schreibweise „Arduino“, anstatt „Arduino Uno R3“ genutzt. [1]


  • Herzschlagsensor KY-039

Für die Aufnahme der Pulsdaten wird der Herzschlagsensor KY-039 genutzt. Dieser verfügt über einen Fototransistor, sowie über eine Infrarot-LED. Durch die LED wird Licht durch den Finger, beziehungsweise das Ohr geleitet. Mittels des Fototransistors kann bestimmt werden, wie viel Licht zurückgeworfen wird. Über das zurückgeworfene Licht kann bestimmt werden, wie hoch der Puls ist. Eine Kalibrierung ist für diesen Senor nicht erforderlich.[2]


  • Simulink R2023b

Softwareseitig wird der Microcontroller mit Simulink 2023b entwickelt. Simulink ist eine Blockdiagrammumgebung, welche als Sub Modul zur Software Mathlab verwendet werden kann. Die in Simulink erstellten Blockdiagramme können direkt für die Ausführung des Mikrocontrollers genutzt werden, somit sind tiefere Kenntnisse im Bereich der Programmierung nicht zwingend notwendig. Um Simulink in Verbindung mit der Arduino zu nutzen muss zum Standardprogramm Simulink zusätzlich das Support Package für Arduino installiert werden.[3]

Technische Daten

Messbereich nicht angegeben
PWM-Modulation analog
Versorgungsspannung 5V
Gewicht 2 g
Material Kunststoff
Abmessungen 32 x 24 x 12 mm

Pinbelegung

Pin Belegung Signal
1 Versorgungsspannung VCC 5 V
2 Output A1
4 Masse (GND) 0 V

Versuchsaufbau und Durchführung

Versuchsaufbau

Abb. 2 Versuchsaufbau KY-039 mit Arduino
Abb. 3: Anschlussplan

Der Versuchsaufbau wird durch die Abbildung (Abb. 2), sowie den Anschlussplan (Abb. 3) dokumentiert.

Versuchsdurchführung

Das Modell zur Datenverarbeitung wurde gemäß Abb. 4 in Simulink aufgebaut. Die Datenverarbeitung wurde so gestaltet, dass nicht nur einzelne Werte, sondern vor allem die Peaks gemessen werden. Bei den Peaks, welche durch den Fototransistor erfasst werden, handelt es sich um die entsprechenden Unregelmäßigkeiten im Blutstrom. Aus diesen lassen sich die Herzschläge ableiten. Dies geschieht über eine sogenannte "Peak-Detektion". Dafür wurden die aufgenommenen Werte zwischengespeichert und am Ende über eine entsprechende Mathlab-Funktion herausgefiltert.


Die Messdaten wurden aufgezeichnet. Ein Video der Versuchsdurchführung findet sich hier.

Modelleinstellungen: Arduino Uno, Solver: Fixed-step, discrete, Abtastrate: 0,001 s

Versuchsbeobachtung

Nach der Durchführung mehrerer Versuchsdurchläufe wurde deutlich, dass der Fototransistor sehr sensibel regiert. Je nach Stellung des Fingers wurden veränderte Werte unter ansonsten gleichen Versuchsbedingungen gemessen.
Um die Messung so genau wie möglich zu halten, sollte die Stellung des Fingers für den Messvorgang sich stehts in Ruhelage befinden.

Auswertung

Bei absoluter Ruhelage der Finger ist die Messung für den geringen Materialpreis eine gute und einfache Technik zu anderen Messmethoden.

Zusammenfassung und Ausblick

  • Zusammenfassung der Kapitel 1-4

Die Messung mittels des Fotosensors ist eine günstige und verlässliche Messmethode, zumindest soweit die Messgegebenheiten gleich sind.

  • Diskussion der Ergebnisse

Verglichen mit den Ergebnissen anderer Messmethoden zur Pulsmessung, haben sich keine signifikanten Unterschiede gezeigt.

  • Ausblick

Um die Qualität der Messmethode, beziehungsweise des Sensors besser einordnen zu können, wäre ein Vergleich mit ähnlichen Sensoren von Vorteil.

  • Selbstreflexion/Lessons learned

Die praktische Arbeit mit dem Sensor, in Verbindung mit dem Arduino hat mir persönlich viel gebracht. Ich konnte viel erlerntes Wissen aus dem Bereichen der Signalverarbeitung einmal praktisch anwenden.

Ergebnisvideo

Binden Sie hier Ihr Ergebnisvideo ein.

Anleitung: Videos im Wiki einbinden

Lernzielkrontrolle

Beantworten Sie in Ihrem Artikel die Lernzielkontrollfragen.

Literatur

[1] https://docs.arduino.cc/hardware/uno-rev3/, 27. Juli 2024
[2] https://www.linkerkit.de/index.php?title=KY-039_Herzschlag_Sensor_Modul#Codebeispiel_Arduino, 22. Juli 2024
[3] https://de.mathworks.com/products/simulink.html, 22. Juli 2024

Anhang

  • Datenblätter
  • Simulink-Modell
  • Originaldateien (PAP, Schaltplan,... )

→ zurück zum Hauptartikel: BSE Angewandte Informatik SoSe24 | Hausarbeit SoSe24