Lux Sensor: Unterschied zwischen den Versionen
(Gesamte Messkette hinzugefügt) |
|||
Zeile 26: | Zeile 26: | ||
== | == Messkette== | ||
[[Datei:Messkette.png|1000px|thumb|left|Messkette]] | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
<br/> | |||
Die Messkette setzt sich aus drei Bauteilen zusammen, der Luxsensor Platine, den Analog-Digital Umsetzer (ADS 1115) und dem Microcontroller (Arduino). In den drei Bauteilen befinden sich weitere elektrische Komponenten die essenziell sind, um die Daten zu verarbeiten. Im folgenden wird unterschieden zwischen dem Primärsensor, Signalvorverarbeitung, Analog-Digital Umsetzer, Bussystem, Digitale Signalverarbeitung und Bewertung der Sensordaten. <br/> | |||
=== Primärsensor === | |||
Der Primärsensor ist eine [https://de.wikipedia.org/wiki/Photodiode Photodiode]. Trifft Licht in Form eines Photons auf die Diode, werden Elektronen aus dem Material der Diode rausgelöst und es entsteht ein kleiner aber messbarer Strom. | |||
===Signalvorverarbeitung=== | |||
Die Signalvorverarbeitung übernimmt ein Verstärker, im Datenblatt Amp genannt. Der Verstärker hat drei Eingänge und einen Ausgang. Ein Eingang ist die Kathode der Photodiode, die zwei weiteren Eingänge sind GB1 und GB2. Mit GB1 und GB2 lässt sich die Verstärkung einstellen. In dem Fall der hier gezeigten Sensorplatine ist GB2 immer auf 3,3 V und GB1 immer auf 0 V, so dass die Verstärkung nicht nachträglich verändert werden kann. Ist GB 2 auf 3,3 V und GB1 auf 0 V, ist der Medium Gain aktiviert [siehe Datenblatt Seite 7], mit dem Medium Gain lassen sich Lux Werte bis ca. 100000 lux aufnehmen. Nach dem Verstärker ist an den Knotenpunkt ein Widerstand RL angeschlossen, der an die Masse angeschlossen ist, so dass am Knotenpunkt eine Spannung <math> V_{OUT} </math> gemessen werden kann. | |||
===Analog-Digital-Umsetzer=== | |||
Als Analog Digital Umsetzer wurde ein ADS1115 von [https://de.wikipedia.org/wiki/Texas_Instruments Texas Instruments], eingebettet auf eine Leiterplatte von [https://www.adafruit.com/product/1085 Adafruit], verwendet. Dieser IC enthält neben dem ADC noch weitere Bauteile, die hier essenziel sind. Zum einen ist das ein Multiplexer, denn der ADS1115 kann vier analoge Signale verarbeiten. Danach folgt ein Programmierbarer Verstärker, der es ermöglicht, kleine Messgrößen zu verstärken. Jetzt folgt der eigentliche ADC, der die analogen Signale in digitale Signale wandelt. Zum Schluss werden die Signale an den Datenbus weitergeleitet, dazu mehr im Abschnitt Bussystem. | |||
Der Analog Digitalumsetzer im ADS1115 ist ein a ΔΣ ADC (Delta Sigma Modulation). Ein ΔΣ ADC, arbeitet nach dem Prinzip der Überabtastung. Die Eingangssignale werden mit einer hohen Frequenz abgetastet, um ein Aliasing zu vermeide. Danach werden die Signale gefiltert. Das Filter ist ein Digitalfilter, das den Rauschanteil unterdrückt. | |||
Da die Sensorplatine vier analoge Signale liefert, ist es sinnvoll diesen Analog-Digital-Umsetzer einzusetzen, da er über eine vier Kanal Multiplexer verfügt. Ein Multiplexer schaltet, wie bei einem Schalter die Signale nacheinander weiter, so dass es möglich ist über eine Leitung, Signale von mehreren Quellen nacheinander weiter zu leiten. Des Weiteren wurde diese ADU eingesetzt, da sie die Daten über einen I²C Bus an den Microcontroller weiterleitet und somit ein geringer Verdrahtungsaufwand nötig ist. | |||
===Bussystem=== | |||
Das Bussystem, über das die Daten an den Microcontroller geliefert werden, ist der I^2C (Inter- Integrated Circuit) Bus. Der Busanschluss ist in den IC des Analog Digital Umsetzers eingebettet. Das bedeutet, dass die Digitalen Signale, die aus dem ADU kommen, direkt über die Busleitung versendet werden. Der I²C, ist ein synchroner serieller Bus, das bedeutet, dass die Daten nacheinander über eine Leitung übertragen werden. Der Bus arbeitet nach dem Master Slave Prinzip und besteht aus einer Datenleitung SDA (Signal Data), einer Taktleitung SCL (Signal Clock), sowie einer Spannungsversorgung VDD und GND (Ground). | |||
===Digitale Signalverarbeitung=== | |||
Das Ausgangssignal des Sensors, das digital verarbeitet wurde ist eine Spannung, die mit der Beleuchtungsstärke korrespondiert. Im Datenblatt des Sensors sind Formeln hinterlegt, die es erlauben aus der gemessenen Spannung eine Beleuchtungsstärke zu berechnen. Im Folgenden wird auf die Berechnung der Beleuchtungsstärke eingegangen, die im Microcontroller so umgesetzt wird. <br/> <br/> | |||
<math>V_{OMAX}=\dfrac{4.9\mu A}{100lux} \cdot E_{VMAX} \cdot R_L </math> <br/> <br/> | |||
Zuerst wir der Widerstand in Abhängigkeit der Verstärkung berechnet. VDD ist die Spannung, mit der der Sensor versorgt wird, bedingt durch die Sensorplatine sind das hier 3,3V. EVMAX ist der maximale Beleuchtungsstärkewert, der abhängig von dem Verstärkungsfaktor erreicht werden kann, in unserem Fall sind das rund 1000000 lux. Die 100 lux geteilt durch 4,9 µA stehen für den angenäherten Ausgangsstrombei 100 lux, dieser Wert ist wieder abhängig von der zuvor eingestellten Verstärkung, in unserem Fall ist das Medium Gain, der wie schon erwähnt bei dieser Platine nicht verändert werden kann. <br/> <br/> | |||
<math>E_V=\dfrac{100 lux \cdot V_{OUT}}{4.9\mu A \cdot R_{L}} </math> <br/> <br/> | |||
Mit Hilfe der zweiten Formel wir dann die aktuelle Beleuchtungsstärke in Lux gemessen. Dazu werden die 100 lux durch 4,9 µA geteilt. Diese Werte kommen als angenäherter Strom bei 100 lux zustande. Dazu multipliziert wird die gemessene Spannung geteilt durch den mit Formel 1 berechneten Widerstand. Der ermittelte Wert Ev stellt die aktuelle Beleuchtungsstärke in Lux dar. | |||
===Bewertung der Sensordaten=== | |||
Bedingt durch die Bestückung der kleinen Lichtsensoren, kann es vorkommen, dass diese beim Reflowprozess von ihrem Lötpad schwimmen und dadurch keine geeigneten Messwerte aufgenommen werden können. Dieser Fehler ist leicht zu erkennen, da die gelieferten Werte immer kleiner als Null sind und somit ausgeschlossen werden können. Schwieriger wird es im weiteren Signalverarbeitungsschritt Fehler zu erkennen. Zum einen entstehen schon Fehler beim Messen der Daten und dem Verarbeiten der Daten im Verstärker. Die nächsten Fehler, die entstehen können sind beim Verarbeiten der Daten von einem analogen in ein digitales Signal. Die Wandlung der Daten ist immer fehlerbehaftet, die schon bei der Verstärkung des Signals anfangen und bei der Umwandlung fortgesetzt werden. Der nächste Fehler kann durch das Versenden der Daten über den I2C Bus entstehen, dieser Bus ist sehr störanfällig dadurch bedingt kann durch Elektromagnetische Verträglichkeitsprobleme z.B. durch Motoren, der Bus gestört werden und keine oder fehlerhafte Daten übertragen werden. | |||
<br/><br/> | |||
Da auf de Platine vier Luxsensoren sitzen ist es möglich die Fehler des Signals geringer zu halten, dazu wendet man den Median auf die vier Signale an. Das bedeutet, dass die Werte der Größe nach geordnet werden. Die beiden mittleren Werte, werden dann addiert und durch zwei dividiert, dadurch ist gewährleistet, dass Werte, die aus dem Rahmenfallen nicht berücksichtigt werden. Des Weiteren bietet sich an jeden der vier Sensoren mit einer Referenzlichtquelle zu kalibrieren. Dazu bietet es sich an eine Referenzlichtquelle der Physikalisch-Technischen Bundesanstalt (PTB) zu beziehen, die Lichtquelle wird dann mit einem geeichten optischen Spektrometer in einem vorher definierten Abstand gemessen und die Luxwerte aufgenommen. Dann wird an die Position des Spektrometers die Platine befestigt, so dass diese den gleichen Abstand zu der Referenzlichtquelle hat wie vorher das Spektrometer. Nachdem mit allen vier Sensoren der Platine die Daten aufgenommen wurden, erhalten diese einen Kalibrierfaktor, der es ermöglicht, dass die Sensoren alle die gleichen Daten messen, dies bedeutet trotzdem nicht, dass sie immer das Gleiche messen werden. | |||
==Hardwareaufbau== | ==Hardwareaufbau== |
Version vom 26. Dezember 2018, 15:11 Uhr
→ zurück zur Übersicht: WS 18/19: Sensortechnik (MTR)
Autor: Luca Di Lillo:
Betreuer: Prof. Schneider
Aufgabe
- Bestückung von Sensorplatinen in einem Nutzen
- Löten der Sensorplatinen in einem Reflowofen
- Nutzentrennung, um die einzelnen Sensoren zu erhalten
- Inbetriebnahme eines Sensors
Einleitung
Technische Übersicht
Datenblatt des Sensors: Ambient Light Sensor
Datenblatt des Analog-Digital Umsetzers: Texas Instruments ADS 1115
Prinziperklärung
Messkette
Die Messkette setzt sich aus drei Bauteilen zusammen, der Luxsensor Platine, den Analog-Digital Umsetzer (ADS 1115) und dem Microcontroller (Arduino). In den drei Bauteilen befinden sich weitere elektrische Komponenten die essenziell sind, um die Daten zu verarbeiten. Im folgenden wird unterschieden zwischen dem Primärsensor, Signalvorverarbeitung, Analog-Digital Umsetzer, Bussystem, Digitale Signalverarbeitung und Bewertung der Sensordaten.
Primärsensor
Der Primärsensor ist eine Photodiode. Trifft Licht in Form eines Photons auf die Diode, werden Elektronen aus dem Material der Diode rausgelöst und es entsteht ein kleiner aber messbarer Strom.
Signalvorverarbeitung
Die Signalvorverarbeitung übernimmt ein Verstärker, im Datenblatt Amp genannt. Der Verstärker hat drei Eingänge und einen Ausgang. Ein Eingang ist die Kathode der Photodiode, die zwei weiteren Eingänge sind GB1 und GB2. Mit GB1 und GB2 lässt sich die Verstärkung einstellen. In dem Fall der hier gezeigten Sensorplatine ist GB2 immer auf 3,3 V und GB1 immer auf 0 V, so dass die Verstärkung nicht nachträglich verändert werden kann. Ist GB 2 auf 3,3 V und GB1 auf 0 V, ist der Medium Gain aktiviert [siehe Datenblatt Seite 7], mit dem Medium Gain lassen sich Lux Werte bis ca. 100000 lux aufnehmen. Nach dem Verstärker ist an den Knotenpunkt ein Widerstand RL angeschlossen, der an die Masse angeschlossen ist, so dass am Knotenpunkt eine Spannung gemessen werden kann.
Analog-Digital-Umsetzer
Als Analog Digital Umsetzer wurde ein ADS1115 von Texas Instruments, eingebettet auf eine Leiterplatte von Adafruit, verwendet. Dieser IC enthält neben dem ADC noch weitere Bauteile, die hier essenziel sind. Zum einen ist das ein Multiplexer, denn der ADS1115 kann vier analoge Signale verarbeiten. Danach folgt ein Programmierbarer Verstärker, der es ermöglicht, kleine Messgrößen zu verstärken. Jetzt folgt der eigentliche ADC, der die analogen Signale in digitale Signale wandelt. Zum Schluss werden die Signale an den Datenbus weitergeleitet, dazu mehr im Abschnitt Bussystem. Der Analog Digitalumsetzer im ADS1115 ist ein a ΔΣ ADC (Delta Sigma Modulation). Ein ΔΣ ADC, arbeitet nach dem Prinzip der Überabtastung. Die Eingangssignale werden mit einer hohen Frequenz abgetastet, um ein Aliasing zu vermeide. Danach werden die Signale gefiltert. Das Filter ist ein Digitalfilter, das den Rauschanteil unterdrückt. Da die Sensorplatine vier analoge Signale liefert, ist es sinnvoll diesen Analog-Digital-Umsetzer einzusetzen, da er über eine vier Kanal Multiplexer verfügt. Ein Multiplexer schaltet, wie bei einem Schalter die Signale nacheinander weiter, so dass es möglich ist über eine Leitung, Signale von mehreren Quellen nacheinander weiter zu leiten. Des Weiteren wurde diese ADU eingesetzt, da sie die Daten über einen I²C Bus an den Microcontroller weiterleitet und somit ein geringer Verdrahtungsaufwand nötig ist.
Bussystem
Das Bussystem, über das die Daten an den Microcontroller geliefert werden, ist der I^2C (Inter- Integrated Circuit) Bus. Der Busanschluss ist in den IC des Analog Digital Umsetzers eingebettet. Das bedeutet, dass die Digitalen Signale, die aus dem ADU kommen, direkt über die Busleitung versendet werden. Der I²C, ist ein synchroner serieller Bus, das bedeutet, dass die Daten nacheinander über eine Leitung übertragen werden. Der Bus arbeitet nach dem Master Slave Prinzip und besteht aus einer Datenleitung SDA (Signal Data), einer Taktleitung SCL (Signal Clock), sowie einer Spannungsversorgung VDD und GND (Ground).
Digitale Signalverarbeitung
Das Ausgangssignal des Sensors, das digital verarbeitet wurde ist eine Spannung, die mit der Beleuchtungsstärke korrespondiert. Im Datenblatt des Sensors sind Formeln hinterlegt, die es erlauben aus der gemessenen Spannung eine Beleuchtungsstärke zu berechnen. Im Folgenden wird auf die Berechnung der Beleuchtungsstärke eingegangen, die im Microcontroller so umgesetzt wird.
Zuerst wir der Widerstand in Abhängigkeit der Verstärkung berechnet. VDD ist die Spannung, mit der der Sensor versorgt wird, bedingt durch die Sensorplatine sind das hier 3,3V. EVMAX ist der maximale Beleuchtungsstärkewert, der abhängig von dem Verstärkungsfaktor erreicht werden kann, in unserem Fall sind das rund 1000000 lux. Die 100 lux geteilt durch 4,9 µA stehen für den angenäherten Ausgangsstrombei 100 lux, dieser Wert ist wieder abhängig von der zuvor eingestellten Verstärkung, in unserem Fall ist das Medium Gain, der wie schon erwähnt bei dieser Platine nicht verändert werden kann.
Mit Hilfe der zweiten Formel wir dann die aktuelle Beleuchtungsstärke in Lux gemessen. Dazu werden die 100 lux durch 4,9 µA geteilt. Diese Werte kommen als angenäherter Strom bei 100 lux zustande. Dazu multipliziert wird die gemessene Spannung geteilt durch den mit Formel 1 berechneten Widerstand. Der ermittelte Wert Ev stellt die aktuelle Beleuchtungsstärke in Lux dar.
Bewertung der Sensordaten
Bedingt durch die Bestückung der kleinen Lichtsensoren, kann es vorkommen, dass diese beim Reflowprozess von ihrem Lötpad schwimmen und dadurch keine geeigneten Messwerte aufgenommen werden können. Dieser Fehler ist leicht zu erkennen, da die gelieferten Werte immer kleiner als Null sind und somit ausgeschlossen werden können. Schwieriger wird es im weiteren Signalverarbeitungsschritt Fehler zu erkennen. Zum einen entstehen schon Fehler beim Messen der Daten und dem Verarbeiten der Daten im Verstärker. Die nächsten Fehler, die entstehen können sind beim Verarbeiten der Daten von einem analogen in ein digitales Signal. Die Wandlung der Daten ist immer fehlerbehaftet, die schon bei der Verstärkung des Signals anfangen und bei der Umwandlung fortgesetzt werden. Der nächste Fehler kann durch das Versenden der Daten über den I2C Bus entstehen, dieser Bus ist sehr störanfällig dadurch bedingt kann durch Elektromagnetische Verträglichkeitsprobleme z.B. durch Motoren, der Bus gestört werden und keine oder fehlerhafte Daten übertragen werden.
Da auf de Platine vier Luxsensoren sitzen ist es möglich die Fehler des Signals geringer zu halten, dazu wendet man den Median auf die vier Signale an. Das bedeutet, dass die Werte der Größe nach geordnet werden. Die beiden mittleren Werte, werden dann addiert und durch zwei dividiert, dadurch ist gewährleistet, dass Werte, die aus dem Rahmenfallen nicht berücksichtigt werden. Des Weiteren bietet sich an jeden der vier Sensoren mit einer Referenzlichtquelle zu kalibrieren. Dazu bietet es sich an eine Referenzlichtquelle der Physikalisch-Technischen Bundesanstalt (PTB) zu beziehen, die Lichtquelle wird dann mit einem geeichten optischen Spektrometer in einem vorher definierten Abstand gemessen und die Luxwerte aufgenommen. Dann wird an die Position des Spektrometers die Platine befestigt, so dass diese den gleichen Abstand zu der Referenzlichtquelle hat wie vorher das Spektrometer. Nachdem mit allen vier Sensoren der Platine die Daten aufgenommen wurden, erhalten diese einen Kalibrierfaktor, der es ermöglicht, dass die Sensoren alle die gleichen Daten messen, dies bedeutet trotzdem nicht, dass sie immer das Gleiche messen werden.
Hardwareaufbau
Lernerfolg
Gesamtfazit
YouTube Video
Schwierigkeitsgrad
Literatur
Quellenverzeichnis
--- → zurück zur Übersicht: WS 18/19: Sensortechnik (MTR)