Teil 1: Welche Sensoren gibt es in Smartphones?
Teil 1: Welche Sensoren gibt es in Smartphones?
Mit einem Smartphone kann man auch telefonieren. Diese Aussage beschreibt gut den Funktionsumfang heutiger mobiler Devices. Sie verfügen über sehr viele Sensoren, um Parameter aus der Umwelt aufzunehmen. Einen Überblick über die wichtigsten Antennen für die Wahrnehmung der Außenwelt liefert dieser Artikel. In den folgenden Teilen der Serie geht es dann um die Technik und die Programmierung.
Aktuelle Smartphones sind mit Sensoren regelrecht „vollgestopft“. Dazu gehören u. a. Umgebungslicht-, Näherungs-, Beschleunigungs- und Rotationssensor (Gyroskop), elektromagnetischer Sensor, digitaler Kompass (Magnetometer), Fingerabdruckscanner sowie Sensoren für die Standortbestimmung (GPS). Dazu kommen noch mehrere Kameras, mit denen Bilder und Videos inzwischen in beeindruckender Qualität aufgenommen werden können (Abb. 1).
Abb. 1: Smartphones sind heute durch eine Vielzahl von Sensoren multisensibel
Dass man mit einem Smartphone auch noch telefonieren kann, geht bei dieser Vielfalt fast unter. Smartphones eignen sich für vielfältige Messaufgaben aus den unterschiedlichsten Bereichen im privaten und beruflichen Umfeld. Die Messdaten können umfassend in Apps verarbeitet werden. Gleichgültig, ob für Android oder iOS entwickelt wird, und ob es sich um eine native oder eine hybride App handelt, muss man die grundsätzliche Funktionsweise, Anwendung und auch Einschränkungen der Sensoren kennen, um sie in der eigenen App einzusetzen. Einen solchen Überblick wollen wir mit dieser Artikelserie geben. Sehen wir uns die einzelnen Sensoren genauer an.
Richtig, auch die Kameras in einem Smartphone zählen zu den Sensoren. Die Qualität dieser Kameras zählt mit zu den entscheidenden Faktoren bei der Auswahl eines neues Smartphones. Inzwischen ist die Qualität der damit möglichen Aufnahmen auch deutlich gestiegen, Handykameras müssen in vielen Fällen den Vergleich mit der Bildqualität einer einfachen Kompaktkamera nicht mehr scheuen. Einen entscheidenden Einfluss auf die Bildqualität hat dabei die Größe der Sensorfläche der Kamera. Daneben spielt das Verhältnis von Auflösung und Sensorgröße eine wichtige Rolle. Eine Auflösung von 20 Millionen Megapixel bedeutet, dass der Sensor über die gleiche Anzahl von Lichtzellen verfügt, um das Bild aufzunehmen. Das führt im Ergebnis dazu, dass die gespeicherten Bilder die gleiche Anzahl von Bildpunkten aufweisen.
Dabei können größere Pixel (Sensorfläche) mehr Licht aufnehmen und beeinflussen positiv die Bildqualität. Auch der Aufbau der Bildsensoren hat Einfluss auf die Bildqualität. Man unterscheidet die Front Side Illumination (FSI), also die Verdrahtung auf der Vorderseite zwischen dem einfallenden Licht und der Sensorfläche, und die Back Side Illumination (BSI), die Verdrahtung auf der Rückseite der Sensoren. Bei BSI werden Schatten auf der Sensorfläche vermieden und es wird eine höhere Lichtempfindlichkeit erreicht. Das Objektiv bestimmt maßgeblich die optischen Eigenschaften der Kamera [3].
Moderne Smartphones verfügen i .d. R. über mehrere Kameras. Sie besitzen eine Front- und eine Rückkamera, wobei die Rückkamera, üblicherweise mit wesentlich höherer Auflösung, vom Betrachter weggerichtet ist, während die Frontkamera der Videotelefonie bzw. der Aufnahme von Selbstporträts (Selfies) dient. Mit Hilfe von Dualkameras werden zwei Sensoren und Objektive nebeneinander angeordnet. Ein Ziel ist es, die Bildqualität dadurch zu verbessern, dass die Bildinformationen beider Kameras zu einer Aufnahme verrechnet werden. Auch können beide Objektive unterschiedliche Brennweiten aufweisen (Weitwinkel vs. Zoom). Mit zwei Kameras kann man darüber hinaus durch die Software einem Bild besondere Effekte hinzufügen, z. B. Schärfe- und Unschärfewirkungen.
Das Mikrofon dient in erster Linie dazu, dass man Telefonate führen kann. Andere Anwendungen, die die Tonsignale des Mikrofons auswerten, sind denkbar. Zum Beispiel als Sprachrekorder, zur Sprachsteuerung von Apps (künstliche Intelligenz), zur Messung von Umgebungsgeräuschen, als einfaches Babyfon oder zur Raumüberwachung. Neben dem eingebauten Mikrofon kann auch ein externes Mikrofon, i. d. R. in Verbindung mit einem Kopfhörer, angeschlossen werden.
Fingerabdrücke werden schon sehr lange zur Identifikation von Personen genutzt. Grund dafür ist die Einzigartigkeit eines Fingerabdrucks. Im Smartphone war der Fingerabdrucksensor vor einigen Jahren noch etwas Besonderes. Heutzutage ist er in zahlreichen Geräten vorhanden und fast schon selbstverständlich geworden. Fingerabdrucksensoren dienen zur schnellen und bequemen Entsperrung der Geräte durch den Nutzer. Im Vergleich zu anderen Systemen, zum Beispiel Pin-, Passwort- oder Mustereingabe ist das Verfahren viel einfacher und deutlich sicherer. Man unterscheidet halb- und vollautomatische Fingerabdrucksensoren. Bei den halbautomatischen Sensoren muss der Finger über ein Sensorfeld gezogen werden, um die ganze Fingerkuppe aufzunehmen.
Was wir heute von Smartphones kennen, sind vollautomatische Sensoren, bei denen die Fingerkuppe einfach aufgelegt werden kann. Zum Scan des Fingerabdrucks gibt es zwei gängige Methoden: optische und kapazitive. Bei Smartphones sind optische Fingerabdrucksensoren am weitesten verbreitet. Zur Identifizierung wird ein Finger auf die Glasplatte gelegt, die als Prisma dient. Die Papillarleisten (Erhebungen) des Fingerabdrucks kommen in Kontakt mit dem Glas. Die Täler (Rillen) dazwischen sind mit Luft gefüllt und berühren auf diese Weise die Glasplatte nicht. Eine Lichtquelle beleuchtet den Finger dann so, dass das Prisma die Lichtstrahlen auf einen Bildsensor reflektiert. Dort, wo die Strahlen auf die Erhebungen treffen, wird die Reflexion gestört. Der Bildsensor erzeugt ein zweidimensionales Foto des Abdrucks.
Beim Entsperren des Smartphones wird in Sekundenschnelle verglichen, ob das aufgelegte Muster mit den gespeicherten Daten übereinstimmt. Bei hochwertigen Sensoren wird zusätzlich zu den optischen Sensoren Ultraschall oder Infrarot verwendet. Somit wird es möglich, zu erkennen, ob der Besitzer des Fingerabdrucks bei der Identifizierung lebt. Eigenschaften wie Puls, Blutzirkulation und Wärmebild werden zusätzlich untersucht.
Die kapazitiven Sensoren basieren auf elektrischer Ladung. In diesem Fall befindet sich auf dem Fingerabdruckscanner eine leitende Siliziumschicht und darunter ein Netz aus winzigen Kondensatoren. Diese sitzen auf einem Sensorchip. Wird der Finger auf die Siliziumschicht gelegt, verändert sich die elektrische Ladung. Das geschieht nur an den Stellen, an denen die Fingerrillen aufliegen. Dort, wo keine Rillen sind, bleibt die Ladung gleich. Mit Hilfe eines Operationsverstärkers mit integriertem Schaltkreis und eines Analog-zu-Digital-Konverters wird das Ganze in ein digitales Bild des Fingerabdrucks umgewandelt.
Der Fingerabdrucksensor wird also zur Identifikation eingesetzt. Dabei kann man nicht von einer vollständigen Fehlerfreiheit ausgehen, wie bei anderen biometrischen Verfahren auch. Die größten Fehler bei der Anwendung von biometrischen Verfahren sind die Falschakzeptanz und die Falschrückweisung. Die Falschakzeptanzrate (False Acceptance Rate, FAR) ist die Wahrscheinlichkeit, mit der eine nicht berechtigte Person aufgrund ähnlicher biometrischer Charakteristika akzeptiert wird. Die Falschrückweisungsrate (False Rejection Rate, FRR) ist die Wahrscheinlichkeit, mit der einer berechtigten Person der Zugang verweigert wird, weil die Übereinstimmungserfordernisse biometrischer Charakteristika zu rigide gehandhabt werden. Das Ziel besteht darin, beide Parameter (FAR, FRR) in eine akzeptable Relation zum Sicherheitslevel zu bringen [1].
In unserem Video-Tutorial PWAs mit HTML, Angular und React gibt JavaScript-Experte Karsten Sitterberg eine grundlegende Einführung in die Entwicklung von Progressive Web Applications. Zur Sprache kommen Tools für effektive PWAs mit HTML, Angular und React, Methoden zur Verkürzung der Ladezeiten mit Service Worker, der Einsatz von Web-Push und vieles mehr! Das Tutorial unterstützt dich dabei, schrittweise selbst zum PWA-Professional zu werden.
Dass Ihr Smartphone weiß, wo Sie sich gerade aufhalten, liegt u. a. an seinem eingebauten GPS-Empfänger. Die Satellitennavigation ist heutzutage eine der nützlichsten und wichtigsten Fähigkeiten eines Smartphones. GPS steht für Global Positioning System und wurde ursprünglich von der US Army im Jahr 1973 entwickelt. Die offizielle Bezeichnung ist NAVSTAR GPS (Navigational Satellite Timing and Ranging – Global Positioning System). Es handelt sich um ein globales Positionsbestimmungssystem, das ursprünglich im militärischen Bereich verwendet wurde (Kasten: „Das GPS-System“).
Unsere Erde wird von einer Vielzahl von GPS-Satelliten umkreist, die dauerhaft ihre Position und aktuelle Zeit zur Erde senden. Mit Hilfe der von den GPS-Satelliten gesendeten Positionen und der Zeit können GPS-Empfänger ihre eigene Position und Geschwindigkeit berechnen. Theoretisch sind dafür die Signale von drei Satelliten ausreichend. In der Praxis ist es jedoch so, dass die GPS-Empfänger selbst keine ausreichend genaue Uhr haben, um die Laufzeit zu messen. Deshalb ist das Signal eines vierten Satelliten notwendig.
GPS ist das bekannteste Navigationssystem. Es gibt jedoch auch Alternativen, die vielleicht weniger bekannt sind:
GLONASS
LORAN-C
EutelTRACS
COMPASS-M
GALILEO
GALILEO wird vermutlich in Zukunft das satellitengestützte Navigationssystem der Europäer sein.
Smartphones benutzen für das Feststellen des Aufenthaltsorts nicht nur die GPS-Daten. Sie berechnen die Position auch anhand der Daten des Mobilfunknetzes bzw. der verfügbaren WLAN Access Points, in deren Empfangsbereich sie sich befinden. Diese Berechnungsalternativen sind deutlich einfacher, schneller und energiesparender. Nachteilig sind dabei allerdings Abstriche bei der Genauigkeit. Über die Software (API des Betriebssystems) kann man die Anforderungen an die Genauigkeit vorgeben und die Systemsoftware entscheidet eigenständig, welches Verfahren zur Ortung herangezogen wird. Auf diesen Punkt und die genauere Anwendung der Ortungsproblematik im Zusammenhang mit der softwaretechnischen Umsetzung werden wir im zweiten Teil der Serie noch umfassender eingehen.
Zwei weitere Aspekte der Ortung, ggf. auch GPS-basiert, sind noch anzusprechen:
Datenschutz: Ortungsdaten gelten als persönliche Daten und sind damit nach der Datenschutz-Grundverordnung besonders schutzbedürftig. Daher steht der „unkontrollierte Abfluss“ dieser Daten an die Server einer App immer wieder in der Kritik. Oft wird die missbräuchliche Verwendung der Ortungsdaten beklagt. Die Werbeindustrie hat an solchen Daten begreiflicherweise ein besonderes Interesse. Als Entwickler haben Sie in diesem Zusammenhang eine besondere Verantwortung. Die Systeme Android und iOS erfordern vor dem Zugriff auf das Ortungs-API des Systems stets eine explizite Zustimmung des Nutzers. Diese Berechtigung kann der Nutzer jederzeit wieder entziehen, d. h., bei jeder Nutzung des Dienstes muss man die Einwilligung des Nutzers erneut prüfen.
Hintergrundprozess: Ortungsfunktionen werden in einer App oft als Hintergrundprozess ausgeführt. Beispielsweise wird bei einer Tracking-App in zyklischen Abständen die Position ermittelt und über das Netzwerk (Mobilfunk) an einen Server (Background) in die Cloud übertragen. Aufgrund dieser Tatsache muss man sich bei der Programmierung von Ortungsfunktionen i. d. R. auch mit dem Thema Nutzung/Programmierung von Hintergrundprozessen beschäftigen.
Für eine bessere Ortung sollte der GPS-Sensor mit einem Gyroskopsensor kombiniert werden. Ansonsten ist die GPS-Ortung ungenau.
Das Gyroskop bzw. Kreiselinstrument wurde bereits vor 200 Jahren entwickelt. Bei einem Gyroskop rotiert ein symmetrischer Kreisel in einem beweglichen Lager. Das heißt, dass das Lager sich bewegen kann, während die Kreiselbewegung gleich bleibt. Im Gegensatz zu den ersten Entwürfen eines Gyroskops ist der entsprechende Sensor heute nur wenige Millimeter klein. Im Smartphone wird er genutzt, um dessen Ausrichtung zu erkennen. Mit Hilfe der Corioliskraft und des Stimmgabelprinzips weiß das Smartphone, wo die vier Ecken des Geräts im Verhältnis zueinander im Raum liegen. Es ist somit ein Sensor, mit dem sich die genaue Ausrichtung (Lage) bestimmen lässt. Viele Handys verfügen bereits über einen eingebauten Rotationssensor. Anhand von Software kann man überprüfen, ob das Gerät einen Kreiselkompass hat. Der Gyroskopsensor im Smartphone hat auch bei der Anwendung von Navigations-Apps eine nützliche Funktion, denn er ermöglicht eine noch präzisere Lagebestimmung. Das Gyroskop ist somit eine Erweiterung des GPS-Systems. Daher werden in der Regel die Sensoren GPS und Gyroskop gemeinsam verbaut.
Das Magnetometer ist ein digitaler Kompass, der wie ein analoger Kompass arbeitet und genutzt werden kann. Das Magnetometer nutzt das Magnetfeld der Erde, um die Nordrichtung zu ermitteln. Im Smartphone ist eine Minivariante eines sogenannten Fluxgate-Magnetometers eingebaut. Dieses besteht aus dünnen Plättchen mit Metalllegierung, an denen eine Spannung angelegt ist. Je nach Position des Smartphones im Verhältnis zum elektromagnetischen Feld der Erde, variiert der Leitungsweg der Elektroden. Dieser wird elektrisch ermittelt und vom Betriebssystem ausgelesen. Oft wird der digitale Kompass aber nicht allein zur Ermittlung der Himmelsrichtung eingesetzt. Für mehr Präzision werden zusätzlich die Daten des Barometers zur Höhenmessung und des Beschleunigungssensors zur Ermittlung der räumlichen Position genutzt.
Ein Barometer im Smartphone – wozu denn das? Dieser Sensor macht das Handy zur mobilen Wetterstation und verschafft dem GPS-Modul einen Startvorteil. Eine zehn Mikrometer dünne Siliziummembran, in die Dehnungsstreifen eingelassen sind, misst den Luftdruck. Die Größe des Sensors beträgt gerade einmal zwei Millimeter in der Breite und zweieinhalb Millimeter in der Länge. Das Barometer wird auch als Unterstützung für den Beschleunigungssensor verbaut und kann somit auch für die Genauigkeit des GPS-Systems hilfreich sein. Durch Kombination der Messwerte aus den genannten Sensoren kann man eine sehr genaue Standort- und Lagepositionierung vornehmen.
Der Umgebungslichtsensor hat das Ziel, das Umgebungslicht zu messen und diesen Messwert an das System zu übergeben. Der Sensor besteht aus einer Fotodiode mit einem Farbfilter. Gemessen wird die Farbtemperatur von Lichtquellen. Anhand der Messergebnisse werden die Bildschirmhelligkeit, der Kontrast und die Farbsättigung angepasst.
Der Näherungssensor dient dazu, zu überprüfen, ob sich dem Smartphonedisplay etwas nähert. Zum Einsatz kommt ein Infrarotstrahl, der eine Reichweite von bis zu sechs Zentimetern hat. Der Sensor befindet sich i. d. R. oberhalb des Displays neben der Kamera oder Hörmuschel. Er ist nur einen halben Millimeter dünn und misst zwei mal zwei Millimeter in Länge und Breite. Der Näherungssensor wird dazu verwendet, dass Display während eines aktiven Telefongesprächs abzuschalten. Wird das Smartphone zum Ohr geführt, registriert der Sensor die Reflexion der Infrarotstrahlen durch die Wange und die Software schaltet das Display ab. Dadurch wird vermieden, dass der Nutzer während des Telefonats versehentlich eine Aktion durch unabsichtliche Berührung des Touchscreens auslöst. Der Touchscreen wird wieder aktiviert, wenn das Smartphone vom Ohr entfernt wird. Der ständig aktive Infrarotstrahl erkennt auch Wisch- und Bewegungsgesten der Hände.
Der Beschleunigungssensor misst die Beschleunigung des Geräts. Im Smartphone hat er die Aufgabe, die derzeitige Lage des Geräts und ihre Veränderungen zu erkennen. Beim Drehen des Smartphones verändert sich die Richtung, aus der die Schwerkraft auf das Gerät wirkt. Gemessen wird diese Veränderung durch ein sogenanntes Akzelerometer, das lediglich drei mal drei Millimeter groß ist. Als Feder fungiert ein wenige Mikrometer schmaler Stab aus Silizium. Der Beschleunigungssensor erkennt die Bewegung auf drei Achsen: der X-Achse (links/rechts), der Y-Achse (oben/unten) und der Z-Achse (vorn/hinten). Wenn sich das Gerät bewegt, verändert sich die Position gegenüber einer festen Elektrode. Die Software errechnet dann die Stärke der Beschleunigung aus der sich verändernden elektrischen Kapazität. Auf diese Weise kann ermittelt werden, wann eine Änderung der Bewegung eintritt. Eine typische Anwendung ist das Drehen des Smartphones und die danach erfolgende Ausrichtung des Bildschirms.
Um den Puls zu messen, werden LEDs benutzt. Die Farbveränderung wird durch eine Fotodiode gemessen, wenn das Blut langsamer oder schneller durch die Adern fließt. Die Information wird an das System weitergeleitet und aus diesem Wert die Pulsfrequenz berechnet.
Obwohl moderne Smartphones schon eine Vielzahl von Sensoren enthalten, können die Messmöglichkeiten über externe Sensoren erweitert werden. Einige Beispiele:
Gasmesser zur Erkennung von Kohlenmonoxid, Alkohol und anderen giftigen Gasen
Temperatursensor oder berührungsloser Infrarottemperatursensor
Sensor zur Messung des Drucks
Sensor zur Messung der Helligkeit und Farbintensität
Sensor zur Messung von radioaktiver Strahlung
ein Näherungsschalter, mit dem sich Leitungen oder Balken in der Wand finden lassen
Sensoren für die Messung von elektrischen Größen, zum Beispiel der Spannung; damit kann das Smartphone als einfacher Ersatz für ein Voltmeter verwendet werden
Spezialsensoren für die Messung medizinischer Parameter
Solche Sensoren kann man als externe Geräte erwerben und mit dem Smartphone koppeln. Kabellos funktioniert die Datenübertragung i. d. R. per Bluetooth. Auch die Kopplung des Smartphones mit einer Smartwatch stellt eine Erweiterung der Sensoren dar.
Sensoren verarbeiten üblicherweise aktuelle Eingabedaten von außen. Während der Entwicklung und des Tests einer App verwendet man sehr oft Emulatoren (Android) und Simulatoren (iOS). Apps, die aktiv Daten von Sensoren auswerten, müssen möglichst mit Echtzeitdaten getriggert werden. Diese kann man nur auf echten physischen Geräten messen. Einige Messwerte lassen sich jedoch simulieren.
Im Android-Emulator kann man zum Beispiel die gewünschte Zielposition manuell über die Angabe der Koordinaten festlegen und damit wechselnde Positionen für die App simulieren, die auf dem Emulator ausgeführt wird. Ebenso kann man über Tools eine Strecke (Standorte, Verbindungen) manuell simulieren, als Datei speichern und der App zur Laufzeit zur Verfügung stellen. Auch für einige andere Sensoren kann man Daten via Simulation in einem bestimmten Umfang für Entwicklung und Test künstlich generieren. Betrachten wir dazu beispielhaft den Android-Emulator. Starten Sie den Emulator (Installation über das Android SDK) und rufen Sie das erweiterte Menü (über die drei Punkte …) auf. Im Abschnitt Virtual Sensors können Sie zum Beispiel die Lage des Smartphones simulieren (Abb. 2).
Abb. 2: Virtuelle Sensoren im Android-Emulator; hier: Simulation der Ausrichtung
Ebenso können Sie Einstellungen für weitere Umgebungswerte (u. a. Helligkeit, Magnetfeld, Luftdruck, Temperatur) manuell vornehmen (Abb. 3).
Abb. 3: Auch Licht, Temperatur usw. können im Android-Emulator simuliert werden
Auch eine begrenzte Simulation der verbauten Kameras eines Smartphones bzw. Tablets ist möglich. Sie können dazu statische Bilder in den Emulator laden. Ihrer App im Emulator werden dann diese Bilder anstatt echter Aufnahme der betreffenden Kamera zur Verfügung gestellt (Abb. 4).
Abb. 4: Die Simulation der Kameras erfolgt über statische Bilder
Insgesamt sind die Möglichkeiten der Sensorsimulation unter Android recht umfassend, können jedoch den Test auf einem echten physischen Gerät nicht ersetzen. Für Apps von iOS kommt ein Simulator unter macOS zum Einsatz. Auch hier kann man einige Werte für Sensoren manuell einstellen.
Smartphones enthalten immer mehr Sensoren und sind damit in der Lage, eine Vielzahl von Daten aus der Umwelt oder in Interaktion mit dem Nutzer zu messen. Mit Hilfe von Software kann man auf die Daten der Sensoren zugreifen. Die Systemsoftware stellt dabei Programmierschnittstellen zur Verfügung, die eine einfache Nutzung der Sensoren erlauben, ohne dass man sich mit den technischen Hintergründen im Detail beschäftigen muss. Ein solides Grundverständnis auch für die Grenzen der Messtechnik in einem Smartphone, zum Beispiel in Hinblick auf Genauigkeit, sind jedoch vor der Nutzung in der eigenen App eine wichtige Voraussetzung.
In der kommenden Ausgabe beschäftigen wir uns eingehender mit den Anwendungsmöglichkeiten, zum Beispiel der Personalisierung von Services mit Hilfe von Geolocation. Auch ein Blick auf die Programmierpraxis mit diesem Sensor wird nicht fehlen.
In unserer Artikelserie Multisensibel gehen wir den verschiedenen Sensoren in modernen Smartphones auf den Grund. Wir geben einen Überblick über die wichtigsten Antennen für die Wahrnehmung der Außenwelt und beschäftigen uns dann mit der Technik und der Programmierung.
Teil 1: Sensoren in modernen Smartphones im Überblick
Teil 2: Geolocation - Ortung mit WLAN, Mobilfunknetz und GPS
Teil 3: Weitere Sensoren unter der Lupe
[1] http://2014.kes.info/archiv/heft/abonnent/0103/14.htm
[2] http://kartenkunde-leichtgemacht.de/handbuch.php?page=Koordinatensysteme
[3] https://www.areamobile.de/Android-Smartphones-Thema-274904/Specials/Hinte