Raspberry Pi Funksensoren und Empfänger selber bauen – Teil 5 Inbetriebnahme

Anleitung zum Selbstbau Übersicht

Inbetriebnahme und Test der Funk Sensoren und des Empfängers

Wir haben nun die 433 MHz Empfänger und Sender zusammengebaut, jetzt geht es ans Testen der Geräte. Falls ihr wie in Teil 3 beschrieben den UART noch nicht aktiviert habt müsst ihr das nun unbedingt nachholen. Ebenfalls solltet ihr jetzt euren Empfänger bereits mit dem RasPi verkabelt haben. Sobald Spannung anliegt sollte die Status LED durch ein kurzes Blinken signalisieren das der Chip sein Programm geladen hat.

verkabelung-empfaenger

Zunächst verwenden wir zum Empfangen der Daten und zum Testen am Raspberry Pi ein Tool das uns die Daten vom UART liest und an der Konsole ausgibt. Hierzu ist es empfehlenswert am Sender die Wartezeit zwischen den Übertragungen anzupassen, das erledigt die Zeile #define SENDDELAY im Sketch (Der Chip muss natürlich neu beschrieben werden). Zum Testen habe ich ein Wert von 5000 genommen  was 5 Sekunden entspricht.

Das Tool Minicom installieren wir über folgenden Befehl.

Um sicherzustellen das die Übertragungsrate am UART mit der in unserem Sketch eingestellten übereinstimmt setzen wir noch folgenden Befehl ab.

Jetzt können wir Minicom Starten (Beendet geht übrigends mit STRG + A, X)

Minicom zeigt uns nun alle Daten an die vom Empfänger an den Raspberry Pi übertragen werden.  Wenn sowohl Sender als auch Empfänger funktionieren und kommunizieren erhalten wir folgende Ausgabe:

minicom

Meine Erste Übertragung war ein Fehler (das kommt beim Einschalten ab und an vor), die zweite hat dann geklappt und wir sehen (ich habe einen DHT22):

  • 19 – Das ist die Node ID
  • v=4578 – Die Spannung der Batterien 4,57v
  • t=2410 – Die aktuelle Temperatur (24,10 Grad)
  • h=5410 – Die Luftfeuchte (54,10%)

Fehlersuche

Bei meinem Projekt hatte ich einen RFM12B gebraten und vergessen ein Kabel richtig anzulöten (Wackler). Den Problemen bin ich so auf die Schliche gekommen:

Schritt 1: Mit dem Multimeter prüfen ob der ATmel AtTiny und der RFM12B mit Spannung versorgt werden (passende VCC / VDD und GND Pins sind ja in den Plänen ersichtlich).
Schritt 2: Die Verkabelung und die durchgetrennten Leiterbahnen durschauen und evtl. auf unerwünschte Übergänge zwischen den Leiterbahnen achten (Zwischenräume der Streifenplattin mit scharfem Messer frei ritzen)
Schritt 3: Die ICs noch mal beschreiben (evtl. habt ihr den Bootloader vergessen oder die Chips vertauscht?)

Fehlersuche am Sender

Wichtig ist hier das ihr die Status LED wie beschrieben angelötet habt um herauszufinden ob der Tiny seinen Dienst tut, wenn wir uns das Programm ansehen (/wp-content/uploads/2014/11/Send_DHT22.ino) bemerkt ihr vielleicht in der Funktion Setup() die Zeile activityLed(1,1000) welche bewirkt das die LED zu Zeitpunkt des Initialisieren des Programms einmal kurz aufleuchtet. Die LED Blinkt Ebenfalls in der Funktion loop() beim Start der Methode (also alle X Sekunden abhängig von eurem eingestellten Delay) und nachdem etwas gesendet wurde.

Wenn also eure Status LED nicht leuchtet ist sie entweder falschrum eingebaut (der PIN der abgeflachten Seite an PIN14 des Tiny) oder eure Schaltung bzw. der Tiny hat einen hau. Wenn Sie immer regelmäßig im Loop blinkt und nichts gesendet wird ist evtl. euer Sensor nicht richtig angeschlossen oder defekt.

Fehlersuche am Empfänger

Auch hier hilft uns die Status LED bei der Fehlersuche, es ist ebenfalls in der Setup Methode ein LED Blinken von 1 Sekunde definiert und in der Empfangsfunktion mit dem unterschied das die LED nur blinkt wenn auch etwas Empfangen wurde, das muss so sein da der Loop innerhalb der Methode ohne Wartezeit abläuft sodass die LED quasi dauerhaft angeschalten wäre. Auch hier ist das fehlende Blinken direkt nach dem Verbinden ein Indikator für eine Fehlerhafte Schaltung oder einen Fehler am Tiny.

Zusätzlich können wir beim Empfänger nur die Ausgabe auf den UART testen, hierzu fügen wir in die Setup Methode eine Ausgabe auf den UART ein welches uns direkt beim Start etwas ausgibt. So können wir Testen ob die Kommunikation über UART grundsätzlich funktioniert:

1. Sketch mit ArduinoIDE anpassen und auf den Tiny brennen (siehe Bild)
2. Minicom auf dem RasPi starten
3. Empfänger verkabeln
4. Dann sollten wir direkt „SETUP“ in Minicom sehen

setup

Ist das nicht der Fall haben wir ein Problem mit den Kabeln für RX/TX oder einen Konfigurationsfehler am Raspberry Pi (UART nicht wie angegeben aktiviert).