Commentum

Der Einfall, die Lüge, die Erdichtung

Sensortypen, weitere Bauelemente

Hier eine kurze Übersicht der bei den Raspberry Pi und Arduino-Installationen verwendeten Module und Bauelemente. Vereinzelt sind der Einbau und die Schaltungen in den Beschreibungen zu den verschiedenen Raspberries und Arduinos zu finden. Bei einigen Modulen habe ich dereb Verwendung bei den einzelnen Raspberries/Arduinos in Text entsprechend "gelinked", Enfach anklicken.

DS18B20

DS18B20
DS18B20
DS18B20, wasserdicht
DS18B20, wasserdicht
  •  Einfache und schnelle Lösung für die unterschiedlichsten Notwendigkeiten einer Temperaturerfassung in trockener Umgebung, zum Beispiel in Gerätegehäusen, Wohnräumen, Gewächshäusern und vielen anderen Umgebungen. Die wasserdichte Lösung bietet sich zum Beispiel in Aquarien, Teichen oder aber auch zur Ermittlung der Bodentemperatur an.


DHT22

DHT22
DHT22
  • Temperatur und Luftfeuchtigkeitssensor
  • Gut geeignet zur Ermittlung von Raumtemperatur unf Luftfeuchtigkeit zum Beispiel in Wohn- und Arbeitsräumen, aber abgeschirmt gegen Regen zum Beipiel auch zur Ergänzung einer Wetterstation.


SDS011

sds11
sds11


  • Feinstaubsensor
  • Der SDS011-Sensor ermittelt die Feinstaub-Partikelkonzentration in der Luft
    mit Hilfe des Streulichtverfahrens.
    Durch den USB-UART Adapter lässt sich
    der Sensor zusätzlich direkt an einem
    Raspberry/Arduino auslesen.
  • Ist aber relativ teuer. Sollte vornehmlich in häufig genutzten Wohn-/Arbeitsräumen genutzt werden.

MQ135

mq135
mq135_1
mq135_2
converter33_5


  • Gassensor
  • Messbereich: 10 - 1000 ppm
  • Messbare Substanzen: Benzol (C6H6), Ammoniak (NH3), Sulfid, Rauch, andere Luftverunreinigungen
  • Einsatzbereiche: Erkennen von Gaslecks, für Gasalarm, Robotik, Mikrocontrollerprojekte
  • Geeignet zur Ermittlung von Werten zum Beispiel in einem Heizungskeller, aber auch in vielen anderen Umgebungen wie Wohn- und Schlafräumen.
  • Um die Bestandteile der Luft zu erfassen sind Sensoren nötig. Diese sind z.B. in Rauchmeldern verbaut. Allerdings sind Anleitungen zur Nutzung dieser Gas-Sensoren am Raspberry Pi selten, weshalb es in diesem Tutorial um die generelle Nutzung solcher MQ Module am Raspberry Pi geht. Damit können z.B. Rauchmelder oder Luftqualitätstester gebaut werden.
    Wie man jegliche MQ Sensoren konfiguriert und ausließt wird am Beispiel des Raspberry Pi Gas Sensor MQ2 in diesem Tutorial gezeigt. Alle anderen Sensoren (MQ3, MQ-135, usw.) können mit ein paar zusätzlichen Schritten ebenso angepasst werden.
    Zubehör
    Jegliche MQ-X Sensoren geben analoge Signale zurück, welche wir nicht ohne weiteres am Raspberry Pi auslesen könnten. Eine Möglichkeit wäre einen Arduino zu verwenden, allerdings können wir auch einen Analog-Digital Wandler benutzen, welcher über den I2C Bus ausgelesen werden kann. Ein recht ausführliches Tutorial zur Verwendung des ADCs findest du hier. Daneben benötigen wir auch noch einen Pegelwandler
    Analog-Digital Wandler (8 Ports)*
    5V zu 3.3V Pegel Wandler*
    Breadboard*
    Jumper Kabel*
    Anschluss zwischen MQ-2 und Raspberry Pi
    In diesem Beispiel wird von einer 5V SPannung ausgegangen. Dies ist für die GPIOs zu viel, weshalb wir einen Logik Level Konverter (TTL) nutzen, der die Spannung herunterbricht. Falls du einen anderen Sensor als den MQ-2 verwendest und dieser eine andere Spannung hat, muss der Aufbau natürlich angepasst werden.
    Nachdem der MCP3008 richtig angeschlossen ist, nutzen wir den Port 0 und verbinden ihn an RX0 des TTLs. Auf der gegenüberliegenden Seite befindet sich RX1, welches an den Analog Pin (A0) des MQ2 Sensors kommt. Außerdem wird an den TTL 3.3V vom Raspberry Pi (LV) und 5V (HV) angeschlossen. Ebenso kommen 5V an den VCC Pin des Gas Sensors und GND vom Raspberry Pi kommt an GND auf der LV und HV Seite des TTLs, sowie an GND vom MQ2.
    Schematisch sieht das ganze dann folgendermaßen aus:

KY053

KY-053-3
KY-053-3


  • Analog-Digitalwandler
  • Dieses Modul besitzt vier 16-Bit-genaue ADC-Kanäle, welches Du am Raspberry Pi nutzen kannst, um diesen um 4 analoge Eingänge erweitern zu können. Der Wandler wird per I2C an den Raspberry Pi angeschlossen, übernimmt die analoge Messung und gibt den Wert digital an den Raspberry Pi weiter.
  • Kommt in einigen Fällen als Alternative für einen Vorbereitung
    Bevor die Werte nun ausgelesen werden können, müssen die Packetquellen aktualisiert werden und eine Bibliothek für SPI installiert werden und natürlich der SPI Bus aktiviert werden, da dieser standardmäßig in Raspbian deaktiviert ist.
    Fangen wir damit an die Pakete zu aktualisieren und die Python Developer-Tools zu installieren:
    MCP3008 zum Einsatz.

KY051

COM-KY051VT
COM-KY051VT


  • Spannungswandler
  • Voltage Translator. Dieses Modul wandelt digitale Signale von einer Spannung in eine andere herunter oder herauf.

BME688

BME688


  • Gas, Temperatur, Druck, Luftfeuchtigkeit -Sensor
  • Der Bosch Sensortec BME688 ist der erste Gassensor mit künstlicher Intelligenz (AI) und integrierten hochlinearen und hochpräzisen Druck-, Feuchtigkeits- und Temperatursensoren. Er befindet sich in einem robusten und dennoch kompakten 3,0 x 3,0 x 0,9 mm3-Gehäuse und wurde speziell für mobile und verbundene Anwendungen entwickelt, bei denen Größe und niedriger Energieverbrauch eine wichtige Anforderung sind.
  • Messbare Gase Kohlenstoffdioxid, Wasserstoff, VOC, VSC
  • Flüchtige organische Verbindungen (VOC)
  • VOCs haben einen Siedepunktbereich von 50-100 bis 240-260 Grad Celsius. Obwohl dieser Begriff oft allen flüchtigen Verbindungen zugeschrieben wird, werden nur diejenigen, die bei diesen Temperaturen verdampfen, als VOCs betrachtet. Die folgenden Chemikalien sind Beispiele für flüchtige organische Standardverbindungen:
  • Formaldehyd
  • D-Limonen
  • Toluol
  • Aceton
  • Ethanol (Ethylalkohol)
  • 2-Propanol (Isopropylalkohol)
  • Hexanal
  • Flüchtige Sulfidverbindungen (VSC)
  • Flüchtige Schwefelverbindungen (VSCs) sind ein Hauptbestandteil von Geruchsemissionen, die die lokale Bevölkerung in Bezug auf Abwasser, Abfallwirtschaft und landwirtschaftliche Praktiken belästigen können.


CCS811

CCS811
CCS811_Raspberry_2


  • Gassensor
  • Der CCS811 ist ein Gassensor, der zur Überwachung der Luftqualität dient und eine große Anzahl an flüchtiger, organischer Verbindungen (VOC) messen kann.
  • Die Daten des Sensors können in einen Gesamtwert flüchtiger, organischer Verbindungen (TVOC) oder in einen Kohlenstoffdioxid-Äquivalent-Stand (eCO2) konvertiert werden kann.

BME280

bme280
bme280
BME280_Raspberry


  • Temperatur-/ Luftfeuchte-/ Luftdrucksensor

PCA9685

Schrittmotor


  • Schrittmotorsteuerung
  • Wird zur Steuerung von Pan-Tilt Kameras (Raspberry Pi) eingesetzt. In einem fertigen Modul verbaut.
  • Die Pan-Tilt Motoren waren in ehemaligen Kameramodulen (mit Gehäuse) verbaut, deren Steuerung via Weboberfläche nicht mehr unterstützt wurde. Die Kameras hatten eine geringe Auflösung und wurden durch Raspi-Pi Cameras ersetzt.

MCP3800

mcp3800
mcp3800schaltung


  •  Analog-Digital Converter 

Viele der ursprünglich für den Arduino entwickelten Sensoren bieten keine digitale Schnittstelle und sind nur analog auslesbar. Das Problem dabei besteht, dass der Raspberry Pi mit seinen GPIOs keine analogen Signale auslesen kann, weshalb man einen Analog-Digital Converter (ADC) wie den MCP3008 benötigt. Damit können bis zu 8 analoge Eingänge über den SPI Bus am Raspberry Pi ausgelesen werden.

RaspberryPi

MCP3008

Pin 1 (3.3V )

Pin 16 (VDD)

 Pin 1 (3.3V)

 Pin 15 (VREF)

 Pin 6 (GND)

Pin 14 (AGND)

 Pin 23 (SCLK)

 Pin 13 (CLK)

Pin 21 (MISO)

 Pin 12 (DOUT)

 Pin 19 (MOSI)

 Pin 11 (DIN)

Pin 24 (CE0)

 Pin 10 (CS/SHDN)

 Pin 6 (GND)

Pin 9 (DGND)

Raspberry-Pi-MCP3008-ADC-Anschluss-Steckplatine
mcp3008_LDR

Hier die Breadboard-Ansicht mit dem Anschluß eines LDR, zum Beispiel für einen Dämmerungsschalter.

Aber auch andere Sensoren lassen sich anschließen (zum Beispiel einen Temperatursensor DS18B20) oder einen Gassensor:

mcp3008-LDR-DS18B20
Raspberry-Pi-Gas-Sensor-MQ2-Steckplatine


Vorbereitung


Bevor die Werte nun ausgelesen werden können, müssen die Packetquellen aktualisiert werden und eine Bibliothek für SPI installiert werden und natürlich der SPI Bus aktiviert werden, da dieser standardmäßig in Raspbian deaktiviert ist.
Fangen wir damit an die Pakete zu aktualisieren und die Python Developer-Tools zu installieren:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python-dev


Anschließend können wir die SpiDev Bibliothek herunterladen, entpacken und installieren:


wget https://github.com/doceme/py-spidev/archive/master.zip
unzip master.zip
cd py-spidev-master
sudo python setup.py install


Zu guter Letzt muss der SPI Bus noch aktiviert werden, falls noch nicht geschehen. In Raspbian Jessie (und anderen darauf basierenden Betriebssystemen) kann mittels sudo raspi-config die Konfiguration des Raspberry Pi’s verändert werden. Unter dem Punkt „Advanced Options“ findet sich die Option „SPI“. Dort aktivierst du SPI und startest anschließend das System neu (falls keine entsprechende Abfrage kommt: sudo reboot).

Python Klasse für den Raspberry Pi ADC MCP3008


Die folgende Klasse ermöglicht er dir einfach auf den MCP3008 ADC zuzugreifen. Entweder kannst du die Datei dazu hier downloaden oder mittels sudo nano MCP3008.py erstellen und folgenden Code einfügen:

from spidev import SpiDev
class MCP3008:
def __init__(self, bus = 0, device = 0):
self.bus, self.device = bus, device
self.spi = SpiDev()
self.open()
self.spi.max_speed_hz = 1000000 # 1MHz
def open(self):
self.spi.open(self.bus, self.device)
self.spi.max_speed_hz = 1000000 # 1MHz
def read(self, channel = 0):
cmd1 = 4 | 2 | (( channel & 4) >> 2)
cmd2 = (channel & 3) << 6
adc = self.spi.xfer2([cmd1, cmd2, 0])
data = ((adc[1] & 15) << 8) + adc[2]
return data
def close(self):
self.spi.close()

Du kannst diese Datei nun in alle deine Projekt Ordner einfügen und einfach einbinden:

from MCP3008 import MCP3008

Anschließend muss die Klasse einmal initialisiert werden und die 8 analogen Channels können ausgelesen werden:

adc = MCP3008()
value = adc.read( channel = 0 ) # Den auszulesenden Channel kannst du natürlich anpassen
print("Anliegende Spannung: %.2f" % (value / 1023.0 * 3.3) )

Nun sollten alle Module füt Arduino etc, gelesen werden können. Beipiele hierfür kannst du in verschiedenen Installationen auf dieser Seite finden. Sie sind bei den entsprechnenden Bechreibungen im jeweiligen Text "verlinked".

WPSE343

wpse343
wpse343
vma343_back
vma343_back
vma343_front
vma343_front


  • Gewittersensor
  •  erkennt Blitze sowohl aus der Wolke zur Erde als auch innerhalb von Gewitterwolken
  • liefert eine Bewertung der Entfernung zum Gewitter im Bereich zwischen 1 und 40 km in 14 Schritten
  • enthält einen Algorithmus, der von Menschen gemachte Störungen unterdrückt
  • SPI- oder I2C-Schnittstelle
  • das Breakout-Board ist vollständig kalibriert
  • Technische Daten
  • Spannungsbereich: 2.4 V - 5.5 V
  • max. Strom: 100 mA
  • lLänge 33 mm
  • Breite: 25.5 mm
  • Höhe: 11.55 mm
  • Gewicht: 3.35 g


Anschluß

Ansicht stammt aus der Beschreibung eines A3925-Chips (baugleich).

A3925_Blitzsensor


Der AS3935 von ams ist ein programmierbarer Blitzsensor-IC, der in der näheren Umgebung vorhandene und sich nähernde potenziell gefährliche Blitzaktivitäten erkennt. Dieser Sensor ortet Aktivitäten zwischen Wolken sowie Blitzschläge von der Wolke zur Erde und ermöglicht so in vielen Fällen eine Risikobewertung von heranziehenden Gewittern.
Der AS3935 erkennt sich nähernde Blitzaktivitäten aus bis zu 40 km Entfernung. Zudem ist der AS3935 in der Lage, Störsignale von nicht natürlichen Quellen wie Leuchtstoffröhren, Motoren, Mikrowellenöfen und Schaltern zu erkennen und zu unterdrücken.
Die Entfernung eines Gewitters kann wissenschaftlich fundiert anhand der gemessenen Signale statistisch berechnet werden. Mit diesen Informationen kann der Anwender dann entsprechende Alarmstufen für die jeweilige Anwendung festlegen. So kann für den Bereich persönliche Sicherheit die höchste Alarmstufe ausgegeben werden, während bei der Festlegung der Alarmstufe für den Geräteschutz zum Beispiel die Aspekte Zuverlässigkeit, Signalstärke und Batterielebensdauer gleichermaßen zum Tragen kommen.
Dank des flexiblen IC ist eine Konfigurierbarkeit gegeben, die einen Einsatz des Sensors sowohl im Innen- als auch im Außenbereich ermöglicht – hierbei muss lediglich die Verstärkungsregelung in einem Register geändert werden.

SR501

Bewegungsmelder

PIR-Melder
pir501


Kommt im Hummelkasten, Igelkasten, der Wetterstatiom und bei einigen Experimenten zum Einsatz. Sowohl am  Raspberry als auch beim Arduino. Wird für einen Reiherschreck, aber auch zur Auslösung von Fotoaufnahmen mit FSWEBCAM zur Naturbeobachtung eingesetzt.

 Aus den Aufnahmen werden kleine Zeitraffervideos erzeugt.

BH1750

Digitaler Lichtsensor

bh1750
bh1750
BH1750-Module-Setup
BH1750-Module-Setup


Technische Daten

  • Datenbereich: 0 - 65535
  • Betriebsspannung: 3 - 5 V
  • Anschlüsse über 5-Pin Stiftleiste (RM 2,54mm) zugänglich
  • Ø Befestigungslöcher: 2,8 mm
  • Abmessungen: 18,5 x 13,5 x 2,3 mm
Zurück




E-Mail
Infos