TigerJython4Kids
HomeTurtlegrafikRobotikDatenbanken
analog

9. ANALOGE SENSOREN

 

 

DU LERNST HIER...

 

einige wichtige Sensoren kennen, welche die physikalische Messgrösse in eine Spannung umwandeln, die du dann mit einem ADC digitalisierst. Dabei kannst du irgendeinen der ADCs verwenden, die im Kapitel ADC behandelt wurden.

 

 

MUSTERBEISPIELE

 

Lichtsensoren (Lichtabhängige Widerstände, LDR)

Ein LDR hat die Eigenschaft, dass seine Leitfähigkeit mit zunehmender Lichtintensität grösser, bzw. sein Widerstand kleiner wird. Mit einer Potentiometerschaltung wandelst du die Widerstandsänderung in eine Spannungsänderung um und schreibst die digitalisierte Spannung auf dem LED-Display aus, wobei zuerst die höherwertigen 2 Dezimalziffern und dann die 2 niederwertigen (mit einer Vornull) angezeigt werden.

Da bei höherer Intensität der Widerstand des LDR kleiner wird, steigt die Spannung am ADC an. Der Zusammenhang zwischen der Lichtintensität und der Spannung ist allerdings nichtlinear.

Schaltung:

 

Programm:

from time import sleep
from ads1x15 import ADS1015
from oxocard import *

def show():
    display(v // 100)
    sleep(1)
    display("%02d" %(v % 100))
    sleep(3)
    display("::")
    sleep(1)


adc = ADS1015()
while True:
    v = adc.read(0)
    show()
► In Zwischenablage kopieren


Thermistoren

Thermistoren sind Widerstände, deren Wert stark temperaturabhängig ist. Der Zusammenhang zwischen der Temperatur T und dem Widerstand R ist nichtlinear. Die meisten Thermistoren haben einen negativen Temperaturkoeffizienten (NTC) und zeigen eine Abnahme des Widerstandes mit zunehmender Temperatur. Es gibt auch Thermistoren mit einem positiven Temperaturkoeffizienten (PTC).

   
 
Typische Charakteristik eines NTC  und PTC


Die Widerstandsänderungen werden wiederum in einer Potentiometerschaltung in eine Spannungsänderung umgewandelt. Die Spannung wird mit einem ADC digitalisiert. Als Test verwendest du dasselbe Programm wie beim Lichtsensor.
 

 

Linearisierte analoge Temperatursensoren

Die LM35 und TMP35/36/37 Familien sind Temperatursensoren mit einem eingebauten Chip. Gegenüber einem NTC besteht ihr grosser Vorteil besteht darin, dass sie eine Ausgangsspannung abgeben, die proportional zur gemessenen Temperatur ist. Der Proportionalitätsfaktor ist 10-20 mV/Grad.

In diesem Beispiel verwendest du den bekannten Sensortyp LM35. Es handelt sich um ein 3-pin Bauelement, das du direkt in den Sockel des ADC einstecken kannst. Beachte aber unbedingt die richtige Anschlussbelegung.

Als Test verwendest du wiederum dasselbe Programm wie oben. Durch Multiplikation des Messwerts mit einer geeigneten Skalierungskonstante könntest die Temperatur in Grad Celsius anzeigen.

 

 

Messung der Erdfeuchte

Um die Feuchtigkeit von Pflanzenerde zu bestimmen, verwendest du die Eigenschaft, dass Wasser ein Stromleiter ist. Feuchte Erde leitet daher den Strom besser als trockene Erde und eine bestimmte Messstrecke zwischen zwei Polen hat bei nasser Erde einen kleineren Widerstand. Du kannst die zwei Pole selbst basteln, in die Erde stecken und eine Potentiometerschaltung aufbauen. Einfacher ist es aber, einen käuflichen Erdfeuchte-Sensor zu verwenden, beispielsweise von Seed (mit Grove-Stecker) oder denjenigen, der auch beim micro:bit eingesetzt wird.

 
Feuchtesensor micro:bit
Feuchtesensor Seed
 

Diese Sensoren schliesst du mit 3 Leitungen (VCC, GND, Signal) am ADC-Eingang an. Die Grösse der Spannung ist ein Mass für die Erdfeuchtigkeit. Du schreibst sie mit einem Faktor skaliert auf dem Display periodisch aus.  

Programm:

from time import sleep
from ads1x15 import ADS1015
from oxocard import *

adc = ADS1015()
while True:
    v = adc.read(0)
    display(v // 20)
    sleep(0.1)
► In Zwischenablage kopieren

 

 

MERKE DIR...

 

Viele Sensoren wandeln die physikalische Messgrösse in eine Spannung um, die zur Erfassung mit einem Mikrocontroller mit einem ADC digitalisiert wird. Der Zusammenhang zwischen der Messgrösse und dem digitalen Wert ist allerdings oft nichtlinear und muss geeignet umgerechnet werden.

 

 

ZUM SELBST LÖSEN

 

 

1.

Erstelle mit einem Thermistor eine Alarmanlage, sodass bei zu hoher (oder zu tiefer) Temperatur ein optischer oder akustischer Alarm ausgelöst wird.

2.

Erstelle mit einem Erdfeuchtesensor eine Alarmanlage, sodass bei zu trockener Erde ein optischer oder akustischer Alarm ausgelöst wird

3.

Baue mit einem Lichtsensor eine Lichtschranke, sodass bei der Unterbrechung des Lichtstrahls ein Alarm ausgelöst wird.

4.

Führe mit einem Thermistor auf der Oxocard eine Umrechnung durch, damit in einem kleinen Temperaturbereich (z.B. zwischen 20 und 30 °C) direkt die Temperatur angezeigt wird.