Ich war schon länger auf der Suche nach einem Temperatursensor den ich an einem Raspberry Pi anschließen kann. Der Raspberry Pi hat zwar selber einen eingebauten Temperatur Sensor für seine Recheneinheit aber keinen Sensor mit dem ich genau die Temperatur messen kann. Ich möchte gerne die Termperatur im Inneren meiner Roboter-Autos überwachen und brauche daher einen Sensor den ich leicht in meinen Robotern verbauen kann. So bin ich bei meiner Suche auf den MCP9808 Sensor gestoßen der sehr einfach über den I²C am Raspberry Pi angeschlossen werden kann.

Das folgende Bild zeigt den Sensor wie er von Adafruit geliefert wurde.

Der MCP9808 Temperatursensoren

Der MCP9808 Temperatursensoren

Anleitungen von Adafruit

Adafruit stellt für den Sensor auch passende Tutorials bereit die sehr ausführlich und verständlich beschreiben wie der Sensor von z. B. einem Raspberry Pi aus mit einer eigenen Python Bibliothek ausgelesen werden kann. So ist der Betrieb des Sensors ein Kinderspiel und langwierige Experimente und Probleme bis alles klappt trüben den Spaß am Basteln nicht.

Hier geht es zu den Anleitungen von Adafruit die es leider nur auf englisch gibt: Anleitung (EN)

Meine Anleitung ist mehr oder weniger eine Übersetzung der von Adafruit mit Bildern von mir. Sie beschreibt wie ich den Sensor angeschlossen und in betrieb genommen habe.

MCP9808 High Accuracy I2C Temperature Sensor Breakout Board
Preis: EUR 12,60
2 neu von EUR 12,600 gebraucht

Die Verkabelung des MCP9808 Temperatursensor

Die Verkabelung des Sensors mit dem Raspberry Pi ist sehr einfach. Da der Sensor mit 2,7 V bis 5,5 V arbeitet kann er direkt am Raspberry Pi angeschlossen werden. Wer mehrere I²C Geräte mit unterschiedlichen Spannungen am I²C Bus betreibt muss sich je nach Bedarf z. B. einen I²C fähigen Levelschifter zulegen.

Als erstes habe ich die Stiftleiste mit ihren acht Pins auf die kleine Platine gelötet. So ist es möglich den Temperatursensor mit vier Female-To-Female Jumper-Kabel direkt an den Raspberry Pi anzuschließen.

Der MCP9808 Temperatursensoren mit Stiftleiste

Der MCP9808 Temperatursensoren mit Stiftleiste

Die vier Female-To-Female Jumper-Kabel stellen die Stromversorgung mit +/- sowie die Kommunikation über den I²C Bus zwischen Raspberry Pi und dem MCP9808 Sensor sicher. Die kleine Tabelle soll helfen einen Überblick zu bekommen wo welches Kabel angeschlossen werden muss.

Beschreibung Raspberry Pi Pinbelegung MCP9808 Pinbelegung Beschreibung
+ 3,3 V Spannung  1  VDD + 3,3 V Spannung
GND Erdung  6  GND GND Erdung
I²C Bus Datenleitung (SDA)  3  SDA I²C Bus Takt
I²C Bus Takt (SCL)  5  SCL I²C Bus Datenleitung

Die Verkabelung mit den vier Kabeln sieht wie folgt aus. Wichtig ist, dass die Verkabelung von +5 V und GND auch wirklich richtig ist. Ansonsten kann es zu einer Beschädigung des Sensors und eventuell des Raspberry Pi kommen. Genau dieser Fehler ist mir selber passiert wie das Bild zeigt! Allerdings hatte ich Glück und Raspberry Pi und Sensor funktionieren immer noch.

Der MCP9808 Temperatursensoren verkabelt

Der MCP9808 Temperatursensoren verkabelt

Die Softwareinstallation für den MCP9808 Temperatursensor

Damit der MCP9808 Sensor angesprochen und die Temperatur ausgelesen werden kann müssen ein paar Programme installiert werden. Ich habe mich hier an die Anleitung von Adafruit gehalten. Diese findet ihr hier allerdings nur auf englisch Anleitung (EN).

Als erstes müsst Ihr unter der Konsole den folgenden Befehl ausführen. Dieser installiert den ersten Teil der Bibliotheken die benötigt werden. Dazu gehört z. B. Python, die Python Bibliothek für den I²C Bus (smbus) sowie git. Git wird benötigt um später die Bibliotheken und das Testprogramm für den MCP9808 Sensor auf eurem Raspberry Pi zu installieren.

  • sudo aptget install buildessential pythondev pythonpip pythonsmbus git

Wenn die Installation abgeschlossen ist prüft Ihr mit dem folgenden Befehl ob RPi.GPIO verfügbar ist. Diese Bibliothek wird benötigt um die GPIOs des Raspberry Pi ansprechen zu können.

  • sudo pip install RPi.GPIO

Wenn Ihr soweit gekommen seit dann müssen jetzt die Bibliotheken für den Temperatursensor herunter laden. Die benötigten Dateien werden von dem Git Repository herunter geladen mit dem folgenden Befehl. Diese sollen in das Homeverzeichnis des User Pi gespeichert werden. Also achtet bitte darauf das Ihr im /home/pi Verzeichnis seit wenn Ihr den folgenden Befehl ausführt.

  • git clone https://github.com/adafruit/Adafruit_Python_MCP9808.git

Wenn der Download abgeschlossen ist wechselt Ihr bitte in das Verzeichnis „/Adafruit_Python_MCP9808“ unter /home/pi/Adafruit_Python_MCP9808/. Als nächstes wird der Befehl zum installieren der MCP9808 Bibliothek ausgeführt.

  • sudo python setup.py install

Die Installation dauert ein paar Sekunden und es läuft einiges an Text über den Bildschirm. Nach der Installation kam bei mir die folgende Meldung „Finished processing dependencies for Adafruit-MCP9808==1.5.3“. Anschließend ist alles fertig installiert und jetzt könnt Ihr die Temperatur auslesen.

Buch - Roboter-Autos mit dem Raspberry Pi: Planen, bauen, programmieren

Ich habe auch ein Buch veröffentlicht, in dem ich den Bau von Roboter Autos mit dem Raspberry Pi Computer Schritt für Schritt beschreibe. Ich erkläre das notwendige Basiswissen beginnend bei der Roboter Elektronik, über das Design des Chassis bis hin zum Navigieren nach GPS. Python ist die für diese Bauanleitung gewählte Programmiersprache. So wird im Buch erklärt wie Ultraschallsensoren ausgelesen werden können oder ein Motortreiber angesteuert wird. Auch kommen der Raspberry Pi und das Betriebssystem Raspbin nicht zu kurz. Mit all diesem Wissen aus dem Buch ist es möglich selber Roboter auf Basis des Raspberry Pi zu bauen.

Roboter-Autos mit dem Raspberry Pi: Planen, bauen, programmieren
Preis: EUR 29,90
65 neu von EUR 29,904 gebraucht von EUR 25,90
Planen, bauen, programmieren. Programmierung und Elektronik spielerisch entdecken. Geeignet für Maker jeden Alters!
Broschiertes Buch
Der Raspberry Pi lernt fahren! Und Sie sind sein Fahrlehrer ...

Let the good times roll: Ohne Vorwissen einfach einsteigen
Alle relevanten Programmier-, Elektronik- und Hardwaregrundlagen
Ferngesteuerte und autonome Modelle bauen; mit vollständiger Teile-Liste
Raspberry Pi und Robotik faszinieren Sie? Dann bringt Sie dieses Buch sicher richtig in Fahrt! Ob Einsteiger oder fortgeschrittener RasPi-Bastler: Schritt für Schritt lernen Sie, wie Sie mit dem Raspberry Pi ein ferngesteuertes Roboter-Auto entwickeln. Oder soll das Auto gleich selber fahren können? Perfekt, denn im zweiten Teil des Buches bauen Sie genau das: ein autonomes Roboter-Auto . Und quasi im Vorbeifahren lernen Sie alle Grundlagen , die Sie für beide Projekte benötigen. Hardware, Elektronik, Bau Ihres bevorzugten Auto-Chassis und natürlich die Programmierung der nötigen Software in Scratch und Python . Die Formel Eins gewinnen Sie mit dem Roboter-Auto vielleicht nicht - viele spannende Erkenntnisse und Lernspaßaber sicher!

Aus dem Inhalt:

Die elektronischen Komponenten kennenlernen: Raspberry Pi, Kamera- und W-LAN-Modul, Motoren, Step-Down-Converter, Ultraschall-Sensor, GPS-Empfänger u. v. m.
Die benötigten Werkzeuge kennenlernen: Lötkolben, Dritte Hand und Co.
Grundlagen zum Elektromotor
So fügt sich alles zusammen: Chassis basteln, Fahrgestell montieren, Elektronik verbauen
Grundlagen der Elektrizitätslehre
Verkabelung der elektronischen Komponenten
Den Raspberry Pi in Betrieb nehmen
Wichtige Linux-Grundlagen
Einführung in die Programmierung mit Scratch und Python
Das google-Auto hat eine und Ihres auch: Die Kamera nutzen
Auto-Steuerung: via W-LAN fernsteuern oder vollständig autonom
Liste der benötigten Elektronik-Komponenten...

Auswertung der gemessenen Temperaturen

Ein kleines Testprogramm wird mit installiert wenn Ihr alle Befehle wie oben beschrieben ausgeführt habt. Dieses findet Ihr im Ordner /home/pi/Adafruit_Python_MCP9808/examples/. Es zeigt die Temperatur in Celsius und Fahrenheit an und aktualisiert die Anzeige jede Sekunde.

  • sudo python simpletest.py

Mit Strg+C könnt Ihr das Programm wieder beenden.

Die Ausgabe sieht bei mir in meinem Büro unter Putty wie folgt aus.

Der MCP9808 Temperatursensoren Ausgabe

Der MCP9808 Temperatursensoren Ausgabe

Zusammenfassung

Der Sensor ist ideal um Temperaturen zu messen und ist meiner Meinung nach sehr einfach an den Raspberry Pi über den I²C Bus angeschlossen. Die von Adafruit angebotene Anleitung erklärt alles bis ins Detail und die mitgelieferten Programme funktionieren einwandfrei. Ich habe etwa eine Stunde benötigt von anlöten der Stiftleiste bis zur Installation der benötigten Programme.

(Visited 20 times, 1 visits today)