Arduino-Seriell-Raspberry; Daten kommen an PC per USB an, an RPI nicht?

Hallo,

ich bin gerade etwas ratlos... Folgendes Setup: Arduino UNO mit 433 Mhz Empfänger und DHT22-Sensor spuckt Sensordaten über Serial.println() aus

An diesen Arduino soll später ein Raspberry Pi hängen, per USB-Kabel, und den seriellen Output weiterverarbeiten. Grundsätzlich funktioniert das auch wie gewünscht - auch, wenn ich den Arduino per USB an einen PC anschließe, kommen im Serial Monitor die Daten an.

Jetzt das etwas "kuriose" Problem: Ich habe 2 433 Mhz-Sender in der Wohnung, die Temperaturdaten funken. Kommt in jedem Fall an - alles OK. Heute habe ich einen 3. Sender auf meinen Balkon verfrachtet und lasse an diesem mein Datenpaket 3x statt 1x schicken. Wenn nur eines geschickt wird, geht es meistens unter - schicke ich 3, kamen zumindest im Test am PC immer min. 1 an.

Das alles Live am PC per Putty auf COM-Port mitgemonitort - die Daten von diesem weiter entfernten, 3. Sensor kommen an.

Nun stecke ich meinen Arduino-Empfänger von PC an Raspberry um und rufe mir den Output der seriellen Konsole auf. Alle Wohnungsinternen Senderdaten kommen an; nur der 3. entfernte nicht. Bringe ich diesen ein paar Meter näher an den Empfänger kommt auch da wieder ein Datenpaket an.

In beiden Fällen ist es die gleiche Empfängerposition, ich stecke lediglich das USB-Kabel von PC an RPI und umgekehrt um.

Meine Vermutung bisher war, das der RPI weniger Strom liefert als der PC. Mit Umkehrschluss: Mehr Spannung am Empfänger, desto stärker der Empfang.

Ich habe hier also so einen StepUp-Wandler mit 5V-Output rumliegen; freudig angeklemmt und nur den 433 Mhz-Empfänger mit +5V versorgt - Output gemessen liegt bei 5,20V, Input bei 4,7V. Und hier wieder gleiches Spiel: Am PC kommen die Datenpakete an, am RPI nicht.

Was kann ich den nun machen? Ich möchte ungern einen aktiven USB-HUB am RPI betreiben.

Könnte ich... den Arduino UNO per USB mit Saft versorgen, 5V+GND vom Ardu an das StepUp-Modul klemmen, und den 5V-Output vom StepUp-Modul wieder zum Arduino zurückführen? Quasi, damit nicht nur der 433-Empfänger sondern der ganze Ardu mit höherer Volt betrieben wird?

Edit: Der Arduino UNO-Empfänger war über einen USB 2.0 Hub (aktiv) an meinen PC angeklemmt. Ich habe jetzt testweise den Ardu AN diesem aktiven HUB mit dem RPI verbunden - auch hier kommen keine Daten von meinem entfernten 3. Sender an.

Und jetzt versteh ich's garnicht mehr: Am Arduino UNO-Empfänger-Setup hat sich nichts geändert, auch habe ich jetzt die gleiche Spannungsversorgung; und trotzdem bekomme ich am RPi einen anderen Serial-Output als am PC. Kann sich das jemand erklären?!

Hallo.

Frohes neues Jahr allerseits.

Zum Thema Datenübertragung per Funk würde ich versuchen die Empfangssituation zu verbessern. Sind Antennen am Sende- bzw. Empfangsmodul dran? Bei mir brachte ein einfacher Draht (Breadboarddraht) schon signifikate Verbesserungen. Optimal wäre bei 433MHz eine 17,32cm lange "Antenne". Weiterhin stand bei meinen Modulen dabei, dass die Reichweite (nachvollziehbarerweise) spannungsabhängig ist. Da eine deutliche Erhöhung der Spannung am Empfänger natürlich eine Wandlung des Datensignales auf arduinotaugliche 5V bedingt, scheint mir die Spannungserhöhung am Sender vielleicht passender. Wobei ich natürlich deren Auswirkungen auf die daranhängenden Systeme nicht abschätzen kann. Da der DHT22 ja wohl nicht direkt am Sender hängt, sondern noch "etwas" dazwischen ist, kann es hier wiederum zu demselben Problem mit dem Spannungspegel kommen.

Schöne Grüße Gruaga

neovanmatix: In beiden Fällen ist es die gleiche Empfängerposition, ich stecke lediglich das USB-Kabel von PC an RPI und umgekehrt um. ... Was kann ich den nun machen?

http://de.wikipedia.org/wiki/Erdung

Hallo, am Sender + Empfänger ist natürlich eine Antenne angeklemmt. Ich wiederhole noch einmal, was ich nicht verstehe: Mein Arduino UNO-433-Empfänger, der per USB an einem aktiven USB-HUB angeschlossen ist, empfängt die Datenpakete meiner zwei Sender im Haus fehlerfrei - egal ob ich den seriellen Output per PC oder Raspberry abrufe.

Der Unterschied ist aber: Vom 3. Sender, der auf dem Balkon steht, empfange ich nur ein Datensignal, wenn ich den seriellen Output über den PC anzeige, nicht aber am Raspberry.

Da die Spannungsversorgung in beiden Fällen gleich ist, sollte ich doch auch die gleiche Empfangsqualität und damit den gleichen seriellen Output erzielen können?

jurs:

neovanmatix: In beiden Fällen ist es die gleiche Empfängerposition, ich stecke lediglich das USB-Kabel von PC an RPI und umgekehrt um. ... Was kann ich den nun machen?

http://de.wikipedia.org/wiki/Erdung

Damit komme ich leider nicht wirklich weiter. Der USB-Hub wird über sein Netzteil geerdet - da der Arduino daran angeschlossen ist, sollte doch die Erdung in beiden Fällen (USB-Hub an RPI oder PC angeschlossen) die gleiche sein?

Hallo.

Gegebenenfalls stellt aber der PC mit seinem möglicherweise bedeutenden Blechgehäuse (gibt's sowas noch) ein deutlich anderes "Gegengewicht" für die Antenne dar, als der Raspberry. Auch sind die Anschlüsse über die die Versorgung läuft anders. Beim PC ist zu vermuten, dass die Erdung über den Schutzleiter erfolgt, beim Raspberry vielleicht aber sogar eine galvanische Trennung zwischen den Netzkabeln und dem eigentlichen Stromanschluss vorliegt. Dann könnte ich mir vorstellen, dass sich die "Erdungsleitung" beim Raspberryeinsatz von diesem aus über die Netzwerkverkabelung (via Netzwerk-Switch) dann am PC ergibt. Dabei sind etliche Übergangswiderstände im Spiel, etc. Insgesamt dürfte es damit die zweite Häfte des Dipols, welche sich ja gespiegelt zur Antenne in der "Erdungsmasse" ausbildet, ziemlich schwer haben. Aber das ist jetzt nur Theorie, da der genaue physikalische Aufbau mit allen Teilsystemen ja nicht bekannt ist.

Schöne Grüße Gruaga

Okay, ich vermute mal, ich muss das dann einfach so hinnehmen? Oder kann ich künstlich ein das Masse-Gegengewicht beim Pi anheben, ohne 5kg Metallgehäuse drumrum zu bauen? :)

Hallole.

Eine möglichst große leitende Fläche unter dem Empfänger im 90° Winkel zur Antenne die mit dem GND-Anschluss des Arduino bzw. des Empfängerbausteins verbunden ist, sollte schon eine Veränderung bringen. Natürlich muss mann da aufpassen, das man keinen Kurzen baut, also auf einen hinreichenden Abstand achten und das Ganze beim ersten Probieren nicht umkippen lassen (mein Lieblingsweg meine Bauteile bzw. Netzteile durch Neukäufe zu ersetzen).

Grüße Gruaga

D.h. zum Beispiel eine Stück Vollkupfer-Platine in der größe meines Gehäuses, dass unter Batterie/Empfänger liegt und mit GND verbunden ist? Hm... das probiere ich mal aus! :)