Entwicklung von echten Wireless-Fitness-Hearables – Teil 1: Herzfrequenz- und SpO2-Messung
Zur Verfügung gestellt von Nordamerikanische Fachredakteure von DigiKey
2019-12-31
Anmerkung des Herausgebers: Ungeachtet ihres enormen Potenzials sind Fitness-Hearables für Entwickler mit erheblichen Herausforderungen in drei Hauptbereichen verknüpft: Biomessung, Audioverarbeitung und drahtloses Laden. Diese Serie aus drei Artikeln befasst sich nacheinander mit jeder dieser Herausforderungen. Sie soll Entwicklern vor Augen führen, wie sich unter Verwendung von extrem energieeffizienten Komponenten effiziente Fitness-Hearables aufbauen lassen. Im hier vorliegenden Teil 1 geht es um die Biomessung.
Intelligente drahtlose Audio-Ohrhörer – auch als „True Wireless Hearables“ bezeichnet – haben sich inzwischen als beliebte Geräte zur Audiowiedergabe bewährt, vor allem im Fitnessbereich, wo Kabel störend für Bewegungen oder Trainingsgeräte sein könnten. Werden derartige Geräte um die Messung von Herzfrequenz (bzw. Puls) und Sauerstoffsättigung erweitert, entstehen „Fitness-Hearables“, die sowohl der Audiowiedergabe dienen als auch Gesundheitsdaten liefern.
Zusätzliche Biomessfunktionen haben zwar großes Potenzial, doch die Größen- und Leistungsvorgaben für derartige Anwendungen stellen ihre Entwickler vor echte Herausforderungen.
In diesem Artikel soll es um die Messung von Gesundheitsdaten gehen, bevor gezeigt wird, wie sich ein neuartiger Biosensor von Maxim Integrated in einem batteriebetriebenen im Ohr tragbaren Gerät einsetzen lässt, der Messdaten zu Herzfrequenz und Sauerstoffsättigung liefert.
Messung von Gesundheitsdaten
Die Herzfrequenz, auch einfach als Puls bezeichnet, ist längst nicht mehr nur ein Vitalparameter im medizinischen Bereich. Inzwischen messen nicht nur Leistungssportler, sondern auch fitnessbegeisterte Laien ständig ihre Herzfrequenz. Schwankungen der Herzfrequenz spiegeln die jeweiligen physiologischen Gesundheits- und Trainingssituationen wider. Die nicht invasive Messung dieser Schwankungen lässt sich einfach und zuverlässig mit einem Verfahren namens Photoplethysmographie (PPG) bewerkstelligen. Bei der PPG werden Veränderungen der Durchlässigkeit oder Reflexion von Licht mit einer speziellen Frequenz, in der Regel etwa 520 Nanometer (nm) (grün), gemessen. Diese werden durch Veränderungen des Blutvolumens im Gewebe verursacht, wenn das Herz Blut durch dieses Gewebe pumpt.
Diese relativ unkomplizierte Technologie liefert nicht nur Basisdaten zur Herzfrequenz, sondern kann sogar klinisch bedenkliche Zustände erkennen, etwa ventrikuläre Extrasystolen (Premature Ventricular Contraction, PVC), und das einfacher als durch Blutdruckmessung oder ein Elektrokardiogramm (EKG) (Abbildung 1).
Abbildung 1: Mithilfe recht einfacher optischer Verfahren lassen sich mit PPG ungewöhnliche kardiologische Ereignisse wie ventrikuläre Extrasystolen (PVC) erkennen, ohne dass dazu eine Messung des Blutdrucks (BP) oder ein Elektrokardiogramm (EKG) nötig ist. (Bildquelle: Wikimedia Commons/CC BY-SA 3.0)
Obwohl die Herzfrequenzüberwachung per PPG bereits wichtige Informationen liefert, wünschen sich viele Anwender detailliertere Einblicke in ihren körperlichen Zustand und die Effektivität ihres Trainings. Solche detaillierteren Daten liefert die Pulsoximetrie. Sie misst das Verhältnis zwischen sauerstoffreichem Hämoglobin (HbO2) und sauerstoffarmem Hämoglobin (Hb). Hämoglobin ist das Proteinmolekül in den roten Blutkörperchen, das Sauerstoff zu den Organen und Geweben des Körpers transportiert. Ausgehend von diesem Verhältnis liefert ein Pulsoximeter eine Messung der peripheren kapillaren Sauerstoffsättigung (SpO2). Diese bietet eine zuverlässige nicht invasive Schätzung zu Messungen der klinischen arteriellen Sauerstoffsättigung (SaO2), die durch Analyse der Blutgase ermittelt wird.
Um diese Schätzung bereitstellen zu können, misst ein Pulsoximeter den Unterschied zwischen der Absorption von Licht durch einen Hautbereich bei zwei verschiedenen Frequenzen, in der Regel bei etwa 660 nm (rot) und 880 nm (infrarot). Diese beiden Frequenzen entsprechen den Peaks in den Absorptionsspektren von Hämoglobin in seinen sauerstoffarmen bzw. sauerstoffreichen Stadien, was eine schnelle Schätzung der Sauerstoffanreicherung des Blutes ermöglicht (Abbildung 2).
Abbildung 2: Nicht invasive optische Pulsoximetrie-Verfahren nutzen das Verhältnis zwischen sauerstoffreichem Hämoglobin (HbO2, rote Kurve) und sauerstoffarmem Hämoglobin (Hb, blaue Kurve), in der Regel gemessen bei etwa 880 nm bzw. 660 nm, zur Bestimmung der kapillaren Sauerstoffsättigung (SpO2). (Bildquelle: Wikimedia Commons/CC BY-SA 3.0)
PPG und Pulsoximetrie beruhen eigentlich auf recht einfachen Konzepten. In der Praxis ist die Umsetzung dieser Verfahren jedoch mit enormen Herausforderungen verbunden, was insbesondere bei Wearables der Fall ist. Sowohl PPG als auch Pulsoximetrie basieren auf einer Fotodiode zur genauen Messung des Lichts, das von grünen, roten oder infraroten (IR) LEDs stammt und durch einen Hautbereich reflektiert wird. Diese LEDs sind in Fitnessbänder oder Smartwatches integriert (oder ihre Daten werden zum Beispiel durch einen Clip am Ohrläppchen übertragen).
Externe Lichtquellen oder Unterbrechungen im optischen Übertragungsweg zwischen LED-Quelle, Haut und Fotodiode können die Genauigkeit der Biomessungen in diesen Systemen stark beeinträchtigen. Zum Beispiel können schon normale Schwankungen bei der Umgebungsbeleuchtung zu Artefakten in der Messung führen. Zu regelrechten Messfehlern kann es bei extremen Wechseln in der Umgebungsbeleuchtung kommen, etwa wenn sich der Anwender durch einen Bereich mit abwechselnd hellem Sonnenlicht und dunklen Schatten bewegt (der so genannte „Lattenzaun-Effekt“ bei optisch basierten Messungen). Schließlich können plötzliche Armbewegungen während eines intensiven Trainings oder sogar einige routinemäßige körperliche Bewegungen zu Erschütterungen des Fitnessbands oder der Smartwatch führen, die zu ähnlichen Artefakten oder zum völligen Signalverlust führen können.
In-Ohr-Sensorsysteme
Im Gegensatz zu am Handgelenk getragenen Geräten zur Gesundheitsüberwachung können In-Ohr-Biosensoren dazu beitragen, einige dieser Fehlerquellen zu verringern, und liefern dabei selbst in solchen Situationen genaue Messergebnisse, wenn Handgelenkbewegungen die Messungen mit Fitnessbändern und Smartwatches beeinträchtigen1. Zwar sind inzwischen verschiedene Komponenten zur Biomessung verfügbar, doch Entwicklern standen angesichts der strengen Leistungs- und Größenvorgaben bei In-Ohr-Fitness-Wearables bisher nur wenige Optionen zur Implementierung zur Verfügung.
Diese Wearables müssen klein und leicht sein, um ihre Position im Ohr zu behalten. Allein schon diese grundlegenden Anforderungen machen den Einsatz von Batterien mit großer Kapazität für die Versorgung herkömmlicher Designlösungen zur Biomessung unmöglich. Daher müssen Designs für In-Ohr-Fitness-Wearables üblicherweise mit einer schwächeren Energiequelle auskommen, als sie für Produkte genutzt werden kann, die am Handgelenk getragen werden.
Gleichzeitig muss jedoch ausreichend Energie verfügbar sein, um die zahlreichen Funktionsanforderungen von Anwendungen wie der Fitness-Hearables zu erfüllen, die Gegenstand dieser Artikelserie sind. Zur Durchführung der optischen Messungen, um die es im vorliegenden Artikel in erster Linie geht, benötigt ein praktikables Design ausreichend Energie: zum Betrieb der grünen, infraroten und roten LEDs und zum Betrieb der Fotodiode und des zugehörigen analogen Front Ends (AFE). Diese unterschiedlichen optischen und elektronischen Komponenten müssen wiederum in einem kompakten Gehäuse untergebracht werden, das einerseits den strengen Größenanforderungen gerecht wird und andererseits die Integrität des optischen Signalweges gewährleistet.
Diese vielfältigen Anforderungen erfüllt ein Low-Power-Biosensor von Maxim Integrated.
Spezialisierter Biosensor
Der MAXM86161 von Maxim Integrated wurde speziell für In-Ohr-Geräte zur Gesundheitsüberwachung entwickelt. Er bietet ein komplettes Subsystem zur optischen Datenerfassung, das kontinuierliche Messungen von Herzfrequenz und SpO2-Rate durchführen kann, und das bei minimalem Stromverbrauch. Mit seinen Abmessungen von nur 2,9 Millimeter (mm) x 4,3 mm x 1,4 mm enthält die 14-Pin-Komponente ein Subsystem zur optischen Übertragung mit drei LEDs, ein Fotodioden-Empfängersubsystem mit Signalverarbeitung, einen 128-Wort-FIFO-Puffer (First-In First-Out) sowie eine serielle I2C-Schnittstelle (Inter-Integrated Circuit) (Abbildung 3).
Abbildung 3: Der MAXM86161 von Maxim Integrated enthält optische Übertragungs- und Empfangssubsysteme, einen 128-Wort-FIFO-Puffer, einen Controller und eine serielle I2C-Schnittstelle – und damit eine vollständige Biomessungslösung. (Bildquelle: Maxim Integrated)
Neben den integrierten grünen, IR- und roten LEDs umfasst das optische Übertragungssubsystem des MAXM86161 dedizierte 8-Bit-LED-DACs (Digital-Analog-Wandler), die es Entwicklern ermöglichen, den Ansteuerungsstrom jeder LED per Programmierung auf 31, 62, 94 oder 124 Milliampere (mA) einzustellen. Die Versorgung erfolgt über eine einzige VLED-Versorgungsspannungsquelle im Bereich von 3,0 Volt bis 5,5 Volt. Außerdem können Entwickler die Pulsbreite der LED-Ansteuerung per Programmierung festlegen. Dabei stehen vier verschiedene Zeiträume von etwa 15 Mikrosekunden (μs) bis 117 μs zur Verfügung. Wie weiter unten erläutert wird, bietet diese Funktion einen Schlüsselmechanismus, um die spezifischen Leistungsanforderungen des Anwendungsgebiets zu erfüllen.
In dem Empfängersubsystem übernimmt ein 19-Bit Sigma-Delta-ADC (Analog-Digital-Wandler) die Digitalisierung des Ausgangs der integrierten Fotodiode mit Raten zwischen 8 Abtastungen pro Sekunde (Samples per Second, S/s) und 4096 S/s. Ein digitaler Filter sorgt wiederum für die Rauschunterdrückung: je nach Wahl des Entwicklers durch Frequenzmultiplexierung (FDM) oder Koeffizientendezimationsverfahren (CDM).
Für Anwendungen, die Einzelmessungen mit unterschiedlichen Auflösungsgraden benötigen, kann der ADC dynamisch umkonfiguriert werden, um bei einem von vier vollständigen Dynamikbereichen betrieben zu werden. Durch Verminderung des Dynamikbereichs können Entwickler bei Bedarf die Auflösung erhöhen. Ein weiteres Merkmal ist die Bereitstellung eines Offset-Wertes, der die Messung von sehr niedrigen Dunkelstrompegeln ermöglicht, ohne das Signal zu beschneiden.
Automatische Korrektur
Während der Umwandlung der Einzelmessungen kann die ALC-Schaltung (Ambient Light Correction, Umgebungslichtkorrektur) des MAXM86161 genutzt werden, um automatisch Fotodiodenströme auszufiltern, die durch äußere Beleuchtungsquellen verursacht werden. Entwickler können die Komponente auch so programmieren, dass sie regelmäßig die Stärke des Umgebungslichtes misst, was Anwendungen die Nutzung eigener ALC-Algorithmen zur dynamischen Korrektur der abgetasteten Daten oder die programmierte Modifizierung des LED-Ansteuerungsstroms ermöglicht, um die LED-Lichtausgabepegel für die sich ändernde Umgebungsbeleuchtung zu optimieren.
Neben seinem integrierten ALC enthält der MAXM86161 einen getrennten Mechanismus zur Unterdrückung des oben erwähnten Lattenzaun-Effekts, bei dem eine Abfolge von schnellen Wechseln zwischen hellem und dunklem Umgebungslicht zu Messfehlern führen kann. Wenn diese „Anti-Lattenzaun-Funktion“ des MAXM86161 aktiviert ist, erkennt sie automatisch Einzelmessungen, die beim Auftreten des Lattenzaun-Effekts erfasst wurden, und ersetzt diese Einzelmessungen durch Schätzwerte. Um diese Funktion zu erzielen, vergleicht der MAXM86161 den Ausgang vom Tiefpassfilter mit einem geschätzten Bereich und ersetzt den Wert, wenn dieser außerhalb des Bereichs liegt (Abbildung 4).
Abbildung 4: bei der Anti-Lattenzaun-Funktion des MAXM86161 von Maxim Integrated werden die Einzelmessungen (rote Linie) überwacht und automatisch Einzelmessungen wie etwa die im Diagramm gezeigte Transiente (schwarze Linie) ersetzt, die außerhalb eines programmierbaren Bereichs (blaue Linien) liegen. (Bildquelle: Maxim Integrated)
Autonomes Abtasten
Beim Abtasten koordiniert der integrierte Controller des MAXM86161 die Übertragungs- und Empfängersubsysteme, um eine Sequenz von LED-Ausgangsimpulsen und die entsprechende Eingangsmessung der Fotodiode (PD) zu synchronisieren. Das Programm für diese Sequenz wird vom Entwickler mithilfe von Einstellungen festgelegt, die in sechs „Slots“ (LEDCn) geladen werden, die in einem Satz aus drei LED-Sequenzsteuerregistern enthalten sind (Tabelle 1). Jeder LEDCn-Slot spezifiziert dabei eine konkrete Abtastoperation, was die Beleuchtung durch eine spezifizierte grüne, IR- oder rote LED gefolgt von der zugehörigen PD-Abtastung umfasst.
|
Tabelle 1: Beim MAXM86161 von Maxim Integrated werden die LED-Ausgangs-Sequenzimpulse in einen Satz aus drei LED-Sequenzsteuerregistern geladen. (Quelle der Tabelle: Maxim Integrated)
Der MAXM86161 erkennt verschiedene vordefinierte Werte, die unterschiedlichen LED-Betriebsmodi entsprechen. Um zum Beispiel die Abtastung von LED1 (grün), LED2 (IR) oder LED3 (rot) zu spezifizieren, legt der Entwickler das LEDCn[3:0]-Feld des gewünschten Slots auf einen Binärwert von 0001, 0010 bzw. 0011 fest. In gleicher Weise legt der Entwickler das gewünschte Feld auf einen Binärwert von 1001 fest, um Umgebungslicht abzutasten. Somit nimmt der Programmierer zur Programmierung einer Sequenz zur Abtastung von LED1, LED2, LED3 und Umgebungslicht die folgenden Einstellungen vor:
LEDC1[3:0] = 0001
LEDC2[3:0] = 0010
LEDC3[3:0] = 0011
LEDC4[3:0] = 1001
LEDC5[3:0] = 0000
Die Festlegung des letzten Slots auf binäres „0000“ kennzeichnet das Ende der Sequenz.
Außerdem muss der Entwickler mehrere zusätzliche Konfigurationsparameter festlegen, zum Beispiel Abtastrate, Impulsbreite, Ansteuerungsstrom und andere. In der Praxis würde die Festlegung dieser verschiedenen Konfigurationsparameter sowie der LED-Sequenzregister 0x21 und 0x22 (siehe erneut Tabelle) vor der Festlegung des Registers 0x20 erfolgen, da mit dem Schreiben in das Register 0x20 die Messsequenz des MAXM86161 gestartet wird. Wie weiter unten in diesem Artikel noch erläutert wird, könnte eine Software-Routine zunächst diese anderen Register einstellen, bevor letztlich in das Register 0x20 geschrieben wird, um die programmierte Sequenz zu starten.
Nach der Initialisierung der Sequenz übernimmt der Controller die automatische Koordinierung der LED-Ausgangsimpulse und der PD-Eingangsabtastung, und die programmierte Sequenz wird mit der gewünschten Abtastrate wiederholt (Abbildung 5).
Abbildung 5: Der Controller des MAXM86161 von Maxim Integrated führt automatisch Sequenzen von Abtastoperationen aus, was jeweils die Koordinierung eines LED-Ausgabeimpulses und der zugehörigen Fotodioden-Abtastmessung einschließt. (Bildquelle: Maxim Integrated)
Diese programmierbare Sequenzsteuerung ermöglicht Anwendungen den problemlosen Wechsel von Messmodi bei laufendem Betrieb. Wenn die Anwendung beispielsweise nicht die höchsten Aktualisierungsraten für die SpO2-Messungen benötigt, kann sie eine einfache Änderung in den Sequenzsteuerregistern vornehmen, um lediglich die Herzfrequenzdaten mithilfe der grünen LED (LED1) häufig aktualisieren zu lassen. Dann könnte die Anwendung regelmäßig die Sequenz zurücksetzen, um die IR-LED (LED2) und die rote LED (LED3) kurzzeitig SpO2-Messungen vornehmen zu lassen, bevor wieder zu „Nur Herzfrequenz aktualisieren“ zurückgeschaltet wird.
Leistungsoptimierung
Neben diesem Ansatz zur Senkung der Leistungsaufnahme auf Anwendungsebene stehen den Entwicklern auch die inhärenten Low-Power-Funktionen des MAXM86161 zur Verfügung. In einer typischen Anwendung mit einer Abtastrate von 25 S/s verbraucht der MAXM86161 im Normalbetrieb weniger als 10 Mikroampere (μA). Neben seinem normalen Low-Power-Betrieb bietet der MAXM86161 jedoch auch noch eine Reihe von Mechanismen zur Leistungsoptimierung auf System- wie auch auf Komponentenebene.
Zur Optimierung auf Systemebene kann die Komponente in Zeiten, in denen sich das restliche System einschließlich des Prozessors in einem Low-Power-Schlafmodus befindet, unabhängig Biomessungen vornehmen. Zu diesem Zweck kann die Sequenzsteuerung des MAXM86161 weiterhin Abtastdaten im nächsten verfügbaren Slot des internen FIFO-Puffers ablegen. Erreicht der Puffer einen vom Entwickler festgelegten Kapazitätsschwellenwert, kann der MAXM86161 einen Interrupt an den Host-Prozessor aussenden. Als Reaktion auf diesen Interrupt kann der Host für einen kurzen Zeitraum aufwachen, der gerade ausreicht, um den FIFO-Puffer über die unterstützte I2C-Schnittstelle zu leeren, oder er kann wach bleiben, um weitere Verarbeitungsschritte durchzuführen.
Ob im Betrieb mit diesem autonomen Ansatz oder bei direkterer Steuerung des Hosts: Der MAXM86161 lässt sich auch zur Nutzung weiterer Optimierungsmechanismen auf Komponentenebene programmieren.
Mit einem solchen Mechanismus können Entwickler den Stromverbrauch auf das Minimum reduzieren, das zur Einhaltung der Anwendungsanforderungen in Bezug auf die Messgenauigkeit nötig ist. Hierzu können Entwickler die oben erwähnte programmierbare LED-Ausgangsimpulsbreite anpassen, um das Niveau an Signalintegrität zu liefern, das für veränderliche Messbedingungen erforderlich ist. Wird ein erhöhtes Signal-Rausch-Verhältnis (SNR) benötigt, können Entwickler die Impulsbreite im erforderlichen Maß erhöhen (Abbildung 6).
Abbildung 6: Entwickler können die LED-Ausgangsimpulsbreite auf vier verschiedene Zeiträume festlegen, um den Strom auf das Minimum zu reduzieren, das zur Erzielung des SNR nötig ist, das die Anwendung erfordert. (Bildquelle: Maxim Integrated)
Mit weiteren Mechanismen können Entwickler die Leistung in Zeiträumen verringern, in denen keine Abtastung benötigt wird oder nur geringere Aktualisierungsraten benötigt werden.
Wenn über längere Zeiträume keine Biomessungen benötigt werden, kann der MAXM86161 in einen Abschaltmodus versetzt werden, in dem er lediglich 1,6 μA aufnimmt. Tatsächlich können Programmierer per Programmierung sogar den internen Low-Dropout-Regler (LDO-Regler, Regler mit geringem Spannungseinbruch) der Komponente deaktivieren, wodurch die Stromaufnahme im Abschaltmodus auf nur etwa 0,05 μA sinkt. Dazu muss jedoch erwähnt werden, dass der Neustart eines LDO mit ganz eigenen Problemen verbunden ist, etwa verzögerte Startzeit oder erhöhter Einschaltstrom. Beide Probleme könnten für bestimmte batteriebetriebene Designs problematisch werden.
Der MAXM86161 bietet auch einen Mechanismus zum automatischen Wechseln in den 1,6-μA-Abschaltmodus zwischen den Abtastungen, wenn die Abtastraten 256 S/s oder weniger betragen. Damit lassen sich ohne Einbußen bei der Anwendungsfunktionalität erhebliche Stromeinsparungen erzielen.
Dieser automatische Stromsparmechanismus auf Komponentenebene nutzt die Näherungserkennung des MAXM86161: Er spart Strom, wenn das In-Ohr-Wearable keinen Hautkontakt mehr hat. Statt dann Strom zu verschwenden, wenn der Nutzer die Wearables herausnimmt, können Entwickler zum Beispiel einige wenige MAXM86161-Register so einstellen, dass die Komponente in eine Konfiguration mit geringerer Leistung wechselt, die mit dem Modus zur Näherungserkennung verknüpft ist.
Im Näherungsmodus überwacht die Komponente den PD-Ausgang auf Signale, die anzeigen, dass sich ein reflektierendes Objekt (wie etwa Haut) angenähert hat. Um die Leistungsaufnahme in diesem Modus zu senken, verringert der MAXM86161 den Ansteuerungsstrom für die LED, die als Lichtquelle zur Beleuchtung genutzt wird, und senkt die Abtastrate auf nur 8 S/s ab, was dazu führt, dass die Komponente zwischen den Abtastungen in ihren Abschaltmodus übergeht. Übersteigt der PD-Ausgang einen vom Programmierer festgelegten Schwellenwert, kann der MAXM86161 automatisch zurück in den voll aktiven Modus wechseln, er kann die Abtastung ohne Mitwirkung des Host-Prozessors durchführen oder einen Interrupt ausgeben, um den Prozessor aufzuwecken.
Entwicklungsunterstützung
Trotz der in den MAXM86161 integrierten Vielfalt an Funktionen benötigt er nur ein einfaches Set an Hardwareschnittstellen. Tatsächlich müssen Entwickler lediglich ein paar zusätzliche externe Komponenten anschließen, um einen Mikroprozessor oder ein Mikrocontroller-basiertes Design um die Biomessfunktionen des MAXM86161 zu ergänzen (Abbildung 7).
Abbildung F7: Da er bereits alle Funktionen in sich vereint, die für optische Biomessungen erforderlich sind, benötigt der MAXM86161 von Maxim Integrated nur wenige zusätzliche Hardwarekomponenten, um das Design der Hardwareschnittstelle zu vervollständigen. (Bildquelle: Maxim Integrated)
Mit dem Evaluierungsboard MAXM86161EVSYS können Entwickler schnell Prototyp-Lösungen mit dem MAXM86161 in einem vorhandenen Design erstellen oder das zugehörige MAXM86161EVSYS-Referenzdesign als Ausgangspunkt für eigene Hardwareimplementierungen nutzen.
Der wohl anspruchsvollste Aspekt bei der Entwicklungsarbeit mit dem MAXM86161 ist die Ermittlung der optimalen Konfiguration für eine konkrete Anwendung. Wie in diesem Artikel bereits mehrfach erwähnt, bietet die Biomessungskomponente MAXM86161 eine äußerst umfangreiche Palette an konfigurierbaren Einstellungen und Leistungscharakteristiken.
Um die Suche der Entwickler nach einer geeigneten Konfiguration der Komponente zu beschleunigen, bietet Maxim Integrated eine Anwendung mit MAXM86161-Evaluierungssoftware an. Mit dieser Anwendung können Entwickler anhand einer grafischen Benutzeroberfläche (GUI) die Auswirkungen der verschiedenen Komponenteneinstellungen erkunden. Diese für die Nutzung des Evaluierungsboards MAXM86161EVSYS von Maxim Integrated vorgesehene Anwendung ermöglicht es Entwicklern, ganz einfach die Betriebsparameter der Komponente zu ändern und sich ein Bild von den Ergebnissen hinsichtlich Abtastleistung und Leistungsaufnahme des MAXM86161 zu machen (Abbildung 8).
Abbildung 8: In Verbindung mit dem Evaluierungsboard MAXM86161EVSYS von Maxim Integrated können Entwickler mit der vom Hersteller ebenfalls angebotenen Entwicklungssoftware für den MAXM86161 verschiedene Konfigurationen der Komponente erkunden, indem sie über eine Reihe von Menüs die Einstellungen des Bausteins ändern. (Bildquelle: Maxim Integrated)
Ganz gleich, ob Entwickler diese Entwicklungsplattform nutzen, um die optimalen MAXM86161-Konfigurationseinstellungen zu ermitteln, oder sich diese unabhängig davon erarbeiten: Sie werden feststellen, dass die Programmierung des MAXM86161 zum großen Teil im Schreiben von Routinen besteht, um diese Einstellungen bei der Initialisierung oder zur Laufzeit in den MAXM86161 zu laden.
Als Beispiel sei hier ein einfacher MAXM86161-Treiber angeführt, den der Autor von Maxim Integrated erhalten hat. Dieser Treiber veranschaulicht die grundlegenden Designmuster, die zum Betrieb dieser Komponente erforderlich sind. Der Treiber soll in Kürze von Maxim Integrated erhältlich sein.
Das in C programmierte Treibermodul enthält eine Reihe von Abtastroutinen, welche die verschiedenen Registeraktualisierungen veranschaulichen, die zur Ausführung verschiedener MAXM86161-Funktionen wie SpO2-Messung benötigt werden (Listing 1).
Kopieren
/* Write LED and SPO2 settings */
if (data->agc_is_enable)
err |= max86161_prox_led_init(data);
else
err |= max86161_hrm_led_init(data);
err |= max86161_write_reg(data, MAX86161_INTERRUPT_ENABLE, DATA_RDY_MASK);
err |= max86161_write_reg(data, MAX86161_LED_RANGE_1,
( MAX86161_LED_RGE << LED_RGE2_OFFSET )
| ( MAX86161_LED_RGE << LED_RGE3_OFFSET ));
err |= max86161_write_reg(data, MAX86161_PPG_CONFIGURATION_1,
( MAX86161_PPG_TINT << PPG_TINT_OFFSET )
| ( MAX86161_ADC_RGE << PPG_ADC_RGE_OFFSET ));
err |= max86161_write_reg(data, MAX86161_PPG_CONFIGURATION_3,
( MAX86161_LED_SETLNG << LED_SETLNG_OFFSET ));
err |= max86161_write_reg(data, MAX86161_PD_BIAS,
( PD_BIAS_125_CS << PD_BIAS_OFFSET ));
err |= max86161_write_reg(data, MAX86161_FIFO_CONFIG_2,
FLUSH_FIFO_MASK | FIFO_STAT_CLR_MASK);
err |= max86161_write_reg(data, MAX86161_LED_SEQ_REG_1,
( LED_RED << LEDC2_OFFSET )
| ( LED_IR << LEDC1_OFFSET ));
if (!atomic_read(&data->irq_enable)) {
enable_irq(data->irq);
atomic_set(&data->irq_enable, 1);
}
Listing 1: Dieses Snippet aus der MAXM86161-Treibersoftware zeigt den grundlegenden Ansatz zur Steuerung der Komponente: das Schreiben von Konfigurationsdaten in verschiedene Komponentenregister. (Codequelle: Maxim Integrated)
Wie bereits oben erwähnt, folgt die Ausführung der SpO2-Messung einem Muster, das für die MAXM86161-Operationen typisch ist. Es umfasst im Wesentlichen das Schreiben von Einstellungen in Komponentenregister, um Parameter wie LED-Strom, Abtastrate, Digitalfilterauswahl, ADC-Dynamikbereich und viele andere festzulegen.
Nach der Aktualisierung der entsprechenden MAXM86161-Register für diese Einstellungen wird die Messsequenz definiert und durch Festlegung der Felder LEDC2 und LEDC3 in Register 0x20 (MAX86161_LED_SEQ_REG_1) auf binäres 0010 (LED_IR) bzw. binäres 0011 (LED_RED) sofort initialisiert, wie das in Listing 1 dargestellt ist.
Fazit
In-Ohr-Fitness-Wearables können zwar mit kontinuierlicher Genauigkeit von Biomessungen aufwarten, sind jedoch auch an strengen Designvorgaben hinsichtlich geringer Größe und extrem geringer Leistungsaufnahme gebunden. Wie gezeigt wurde, bietet der von Maxim Integrated speziell für Biomessungen entwickelte Baustein MAXM86161 ein komplettes optisches Datenerfassungssystem zur Überwachung von Herzfrequenz und SpO2, während er gleichzeitig die Größen- und Leistungsanforderungen für In-Ohr-Wearables erfüllt.
Literatur
- Bunn, J., Wells, E., Manor, J., & Webster, M. (2019). Evaluation of Earbud and Wristwatch Heart Rate Monitors during Aerobic and Resistance Training. International Journal of Exercise Science, 12(4), 374–384.

Haftungsausschluss: Die Meinungen, Überzeugungen und Standpunkte der verschiedenen Autoren und/oder Forumsteilnehmer dieser Website spiegeln nicht notwendigerweise die Meinungen, Überzeugungen und Standpunkte der DigiKey oder offiziellen Politik der DigiKey wider.