Verbessern Sie die Reichweite der 433-MHz-HF-Verbindung


7

Ich habe ein System bestehend aus einem drahtlosen Sensor, der Temperaturmesswerte an eine Hauptbasis überträgt.

Das drahtlose Sensorsystem besteht aus:

  1. 12F683 Bild zur Temperaturmessung (Manchester codiert)
  2. RF Solutions AM-RT4-433 Sender zur Datenübertragung
  3. Derzeit auf einem kleinen Brotbrett (Protoboard) mit einem 1/4 Wellenlängendraht als Antenne

Die Manchester-Codierung lautet: 0 = 10 und 1 = 01 für eine Gesamtzeit von 416 Mikrosekunden (jedes Tief und Hoch beträgt 208 Mikrosekunden).

Die Empfängerbasis besteht aus (alles wieder auf Brotbrett)

  1. RF Solutions HRR30 Empfänger mit einem 1/4 Wellenlängenkabel für die Antenne
  2. mbed-Mikrocontroller, der die Daten vom Empfänger decodiert und nach einem kurzen Synchronisationsmuster sucht und dann das Datenpaket empfängt (das Synchronisationsmuster beträgt 15 1s, gefolgt von einer 0, und dann beginnen die Daten).

Dies alles funktioniert gut, wenn Sie von einer Seite meines Schreibtisches zur anderen senden (1-2 m), aber sobald ich den Sender in einen anderen Raum bewege, wird er sehr unzuverlässig. Das ferne System führt derzeit eine Sensorablesung durch, schaltet dann den Sender ein, um die Daten zu senden, und schaltet den Sender nach der Übertragung aus. Ich kann eine Übertragung in größeren Entfernungen erhalten, indem ich die Häufigkeit der Übertragung des Datenpakets von 1 auf 5 erhöhe mit einer kurzen Verzögerung zwischen ihnen.

Diese Art von Arbeiten ist aber immer noch nicht sehr zuverlässig. Beide Karten werden mit 5V betrieben.

Vorschläge, wo nach Problemen gesucht werden kann, wären großartig. Ich gehe davon aus, dass die Verwendung von Steckbrett- und Peitschenantennen nicht besonders gut ist, aber ich hätte erwartet, dass die Reichweite mehr als 2 Meter beträgt - vielleicht irre ich mich?

Ich weiß, dass andere Frequenzen als 433 MHz mir möglicherweise besser dienen, und ich habe die RFM12B-Transceiver verwendet, möchte mich aber vorerst an diese Komponenten halten.

Antworten:


4

Die Module, die Sie verwenden, sind nur 0 dBm (1 mW), was ziemlich wenig Strom ist. Die RFM12s, an die Sie gewöhnt sind, haben normalerweise eine Größe von 8 dBm (6 mW) und ein fertiges, robustes Protokoll. Sie sind ebenfalls oberflächenmontiert, daher gehe ich davon aus, dass Sie sie auf einer Leiterplatte montieren.

Meine ersten Gedanken wären, HF-Probleme von Protokollproblemen zu isolieren. Richten Sie einen Sender ein, der 101010101010 mit der für die Übertragung der Daten in Ihrer Anwendung erforderlichen Geschwindigkeit ausführt. Sie scheinen eine Frequenz von ungefähr 2400 Hz zu haben, was für lange Entfernungen gut ist, ohne so langsam zu sein, dass eine AGC im Empfänger verwirrt wird. Verwenden Sie entweder ein Oszilloskop am Empfänger oder richten Sie etwas ein, um dieses Präambelmuster zu erkennen, und sehen Sie, wie weit Sie mit Ihrem aktuellen Setup gehen können. Dies sollte es ermöglichen, herauszufinden, ob es sich um ein RF-Problem oder ein Protokoll handelt.

Ich kenne den HRR30-Empfänger nicht, aber die meisten Basis-AM-Empfänger haben eine nicht einstellbare AGC. Dies bedeutet, dass es schwierig sein kann, genau herauszufinden, wie lange eine Präambel benötigt wird, um die Verstärkung korrekt zu beeinflussen, und es kann auch schwierig sein, herauszufinden, welche Datenraten unterstützt werden. Wenn die Präambel zu kurz ist, wird der Empfänger immer noch aktiviert und reagiert auf Rauschen. Eine zu langsame Datenrate und die Verstärkung sind überall. Ihr Setup klingt gut, ist aber möglicherweise eine Untersuchung wert.

Das Einsteigen von Brot in diese Sender und Empfänger ist mit Problemen behaftet. Ich glaube nicht, dass Sie auf mehr als einen Viertelwellendipol zurückgreifen müssen. Wenn Sie das Modul auf eine einfache Leiterplatte bringen, werden Sie wahrscheinlich eine große Verbesserung feststellen.

Eine weitere große Annahme, aber bei solchen Projekten lohnt es sich oft nicht, eine Fehlerkorrektur durchzuführen. Senden Sie einfach mehrmals und gehen Sie davon aus, dass Sie einige Pakete verpassen werden. Wenn dies nicht akzeptabel ist, ist ein Send / Ack-System besser als eine Fehlerkorrektur.


Ich habe Ihren Rat befolgt und bin mir jetzt ziemlich sicher, dass es ein Problem mit meinem Protokoll und dem Code ist, der bestimmt, ob ein gültiges Paket empfangen wurde. Wenn ich wieder die Basisversion von EUSART verwende (dh nicht mit Manchester codiert), werden mehrere Meter von einer Seite des Hauses zur anderen übertragen. Zurück zum Zeichenbrett, denke ich (oder benutze einfach die RFM12Bs)
SimonBarker

Ausgezeichnet - danke, dass Sie darauf zurückgekommen sind. Die RFM12Bs haben viel zu bieten, um Ihnen das Leben zu erleichtern, aber sie kosten mehr ...
Cybergibbons

2

Ich habe fast das gleiche Projekt gemacht, aber AVR eins und erreichte eine Reichweite von ungefähr 30 Metern im Freien und ungefähr 15 Metern im Innenbereich (Betongebäude) bei 5 Volt. Weitere Informationen finden Sie zu: TX-Seite:

  1. Listenpunkt
  2. 2xLM335 Temperatursensoren an ADC0 und ADC1 angeschlossen
  3. El cheapo 433MHz eBay-Sender
  4. Verwenden von nativem UART
  5. Vor der Übertragung wird jedes Byte in 2 Manchester-codierten Bytes codiert.
  6. Paketübertragung: - Präambelbytes (0xF0) - Zieladresse - Quelladresse - Anzahl der Bytes - Datenbut - Prüfsumme

RX-Seite:

  1. Listenpunkt
  2. 16x02 LCD
  3. El cheapo 433MHz eBay-Empfänger
  4. Verwenden von nativem UART
  5. Jedes empfangene Byte wird in ein Halbbyte dekodiert.
  6. Zähler der gültigen Pakete.

Sie können den Quellcode hier in meinem Microsoft SkyDrive-Konto überprüfen .


1

Sie benötigen ein angetriebenes Element mit einer Höhe von etwa 6 Zoll und 4 Radialen gleicher Länge, um einen guten Wirkungsgrad bei 433 MHz zu erzielen. Ich würde auch überlegen, was sich in der Wand befindet oder wie viele Wände Sie durchlassen möchten.

Eine andere Möglichkeit besteht darin, Ihre Präambel zu verlängern. Vielleicht möchten Sie ein besseres Protokoll suchen, um ein oder zwei umgedrehte Bits zu überwinden.


Könnten Sie ein bisschen auf erweitern , was Sie mit „angetriebenem Elemente 6“ hoch und 4 Radialen“bitte - danke - ich eine längere Präambel bedenken worden war, werde ich das zu übernehmen!
SimonBarker

Vertikale Antennen sind eine Variation eines Dipols. Das angetriebene Element einer vertikalen Antenne ist der Teil der Antenne, der mit dem Ausgang des Senders verbunden ist. Die 4 Radialen sind die andere Hälfte der Antenne und bieten einen Rückweg für den HF-Strom. Hier ist ein Bild: google.com/… .
MarkSchoonover

@SimonBarker: Eine 1/4 Wellenlängenantenne benötigt eine leitende Masseebene, um richtig zu funktionieren. Dies kann durch vier Radiale angenähert werden. Wie beschrieben, funktioniert Ihre Antenne nicht sehr gut.
W5VO
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.