Hallo, ich habe mir vor Kurzem ein Set von diesen typischen 433 MHz Sendern/Empfängern gekauft: http://r.ebay.com/HlBYy3 Zuvor habe ich mir eine Testschaltung aufgebaut, in der ein AtMega8 regelmäßig ein "Hello World" an einen Raspberry Pi sendet, der das ganze dann auf der Konsole ausgiebt. Soweit so gut. Die "Drahtverbindung" habe ich nun durch die Funkstrecke ersetzt. Leider kommt nun nur noch ein Zeichensalat aus Buchstaben und mir nicht bekannten Zeichen heraus. Dieser kommt auch, wenn ich den Sender abschalte. Meines Wissens sind hier allerdings keine 433 MHz Sender in der Nähe. Nun meine Frage an euch: Woran könnte das liegen? Ich habe das Sender- Empfänger-Päärchen inzwischen ausgetauscht und es zeigt sich das selbe Chaos. Außerdem habe ich inzwischen Antennen (17,3 cm Kabel) angelötet, ohne Effekt. Kann es sein, dass ich noch etwas einstellen muss und die Teile nicht out-of-box funktionieren? Beste Grüße und vielen Dank, Stefan
Ich vermute mal du sendest UART? Dann musst du das Signal invertieren, denn vor deiner Aussendung wird kommt da Dauerhigh was der Sender aber nicht sendet (ist auch gut so). Versuche doch erstmal, einzelne Bits korrekt zu übertragen, bevor du gleich mit Strings anfängst.
Stefan K. schrieb: > Hallo, > > ich habe mir vor Kurzem ein Set von diesen typischen 433 MHz > Sendern/Empfängern gekauft: http://r.ebay.com/HlBYy3 > > Zuvor habe ich mir eine Testschaltung aufgebaut, in der ein AtMega8 > regelmäßig ein "Hello World" an einen Raspberry Pi sendet, der das ganze > dann auf der Konsole ausgiebt. Soweit so gut. Die "Drahtverbindung" habe > ich nun durch die Funkstrecke ersetzt. Leider kommt nun nur noch ein > Zeichensalat aus Buchstaben und mir nicht bekannten Zeichen heraus. > Dieser kommt auch, wenn ich den Sender abschalte. Meines Wissens sind > hier allerdings keine 433 MHz Sender in der Nähe. Das sind nicht notwendigerweise Nachbarssender, sondern wohl das empfangene Rauschen. Wenn trotz geringem Abstand kein brauchbaren Daten raus kommen dann könnte es auch daran liegen das die Funkstrecke die Signalpolarität umdreht oder du mit zu langsamer oder zu schneller Baudrate arbeitest. Ausserdem ist keine galvanische Kopplung vorhanden und deswegen wird sich der Bezug des Ausgangssignals des Empfängers auf einen Mittelwert einregeln. Dadurch kann keine saubere Erkennung mehr erfolgen. Zusätzlich ist zu bedenken dass sich der Empfänger erst an das Sendesignal-gewöhnen- muss, also die ersten Zeichen wohl verhunzt. Wenn es ein serielles Telegramm ist und keine saubere Einphasung zustande kommt dann sind alle Folgezeichen nicht mehr detektierbar, versuchs mal mit einer Sendepause zwischen den Zeichen die länger ist als ein Zeichen. Kurt
Ja ich nutze ihn für den UART. Meine Verwunderung geht auch dahin, dass (auch laut Oszi) permanent Signale vom Ausgang des Empfängers kommen, selbst wenn ich nichts sende. Kurt Bindl schrieb: > Wenn trotz geringem Abstand kein brauchbaren Daten raus kommen dann > könnte es auch daran liegen das die Funkstrecke die Signalpolarität > umdreht oder du mit zu langsamer oder zu schneller Baudrate arbeitest. Meine Baudrate beträgt 9600. Kurt Bindl schrieb: > Ausserdem ist keine galvanische Kopplung vorhanden und deswegen wird > sich der Bezug des Ausgangssignals des Empfängers auf einen Mittelwert > einregeln. Dadurch kann keine saubere Erkennung mehr erfolgen. Was meinst du damit? An welcher Stellung soll ich etwas koppeln? Ich versorge den Empfänger aktuell über den Raspberry Pi, den Sender über ein Netzteil. Sender und Empfänger habe ich auf getrennten Steckboards aufgebaut. Kurt Bindl schrieb: > Wenn es ein serielles Telegramm ist und keine saubere Einphasung > zustande kommt dann sind alle Folgezeichen nicht mehr detektierbar, > versuchs mal mit einer Sendepause zwischen den Zeichen die länger ist > als ein Zeichen. Mal sehen, ob ich das hinbekomme.
:
Bearbeitet durch User
Stefan K. schrieb: > > Kurt Bindl schrieb: >> Ausserdem ist keine galvanische Kopplung vorhanden und deswegen wird >> sich der Bezug des Ausgangssignals des Empfängers auf einen Mittelwert >> einregeln. Dadurch kann keine saubere Erkennung mehr erfolgen. > Was meinst du damit? An welcher Stellung soll ich etwas koppeln? Ich > versorge den Empfänger aktuell über den Raspberry Pi, den Sender über > ein Netzteil. Sender und Empfänger habe ich auf getrennten Steckboards > aufgebaut. Aber du hast die beiden Masseleitungen verbunden, genau das ist beim Funk eben nicht der Fall. Die Übertragung per Kabel benutzt eine gemeinsame Masseleitung, dadurch sind die gesendeten Signale eindeutig vom Empfänger erkennbar. Die Funkstrecke bietet diesen Vorteil nicht, da gibt's keine Masseleitung, sondern nur Differenzpegel. Und da ists halt so dass die sich ergebende "Masse" sich aus dem Verhältnis von 1sn und 0llen bildet. Um das zu vermeiden wurden Übertragungstechniken entwickelt die das verhindern, dabei werden im Mittel genau so viele Einsen wie Nullen übertragen und das ganze mittelt sich somit beim Empfänger aus und ergibt dann einen verwertbaren Nullbezug. Stichwort: Biphase Kurt
Klingt interessant - gibt es zufällig eine elegante Methode das auszulesen? Ich arbeite mit J4Pi und das gibt mir die Zeichen dann wieder direkt raus. Mir scheint, als müsste die Dekodierung vorher stattfinden. Thomas schrieb: > Gewerbeanmeldung nicht vergessen! :D Ich habe hier mal ein Bild vom Oszi angehängt - mir kommt das Signal aus dem Empfänger schon ziemlich verwaschen vor.. was sagt ihr?
:
Bearbeitet durch User
hallo erstmal, hier ist mal ein link in dem beschrieben wird, wie das teil mit nem arduino angebunden und angesteuert wird: http://electronics-diy.com/arduino-rf-link-using-433mhz-transmitter-receiver-modules.php
Die Verkabelung habeich schon so gemacht, wie im Beispiel. Allerdings ist interessant, wie er mit der BAUD-Rate weit runter geht. Die 9600 hatte ich schon in anderen Beispielen gesehen, sollte also eigentlich funktionieren. Kann icn sonst noch etwas falsch gemacht haben? In allen Beispielen, die ich so sehe, wirkt das, als würden die RS232 Leitungen einfach durch die Funkstrecke "ersetzt", also ohne weitere Softwareanpassung wie oben durch Biphase beschrieben. Muss ich evtl an dem Poti auf der Empfänger-Platine noch etwas einstellen?
:
Bearbeitet durch User
Also: 1. Der Empfänger ist primitver Pendelempfänger. Da ist bei ~1200 Baud Schluss mit sauberer Übertragung (alles drüber sieht aus wie sonstwas) 2. Wenn du nix sendest, dann empfängt der Sender Rauschen aus der Umgebung (wie ein Radio wenn kein Sender eingstellt ist) und gibt das auch an den Pi weiter 3. Sende mal primitive Dinger wie 0xAA oder 0x55 die haben genausoviele 1en wie 0en. Wenn man 8N1 macht, dann gleichen sich auch Start und Stop bit aus. Zwischen den Telegrammen machst du eine kleine (etwa so lang wie ein Byte zu senden dauern würde) Pause
Stefan K. schrieb: > In allen > Beispielen, die ich so sehe, wirkt das, als würden die RS232 Leitungen > einfach durch die Funkstrecke "ersetzt", also ohne weitere > Softwareanpassung wie oben durch Biphase beschrieben. > Das ist die Theorie, und da werden wohl Geräte vorausgesetzt die z.B. das mit Biphase machen, oder AFSK oder sonstwas ähnliches verwenden. > Muss ich evtl an dem Poti auf der Empfänger-Platine noch etwas > einstellen? Das ist ein Risiko, denn wenn du das nicht selber messen/beurteilen kannst wird wohl eine Verschlimmbesserung daraus. Versuch mal das was Max angemerkt hat, das könnte weiterhelfen und einen Lösungsweg aufzeigen. Kurt
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.