Forum: HF, Funk und Felder RFM12 Mehrere Sender, Collision Avoidance und andere Störer


von Lisa (Gast)


Lesenswert?

Hallo zusammen

Ich möchte gerne in einem neuen Projekt ein paar Temperatursensoren im 
Haus und Garten verteilen. Diese sollen dann an eine zentrale Stelle 
senden, welche das alles dann ins Internet zu einem Server von mir 
sendet.

Verwenden möchte ich gerne das RFM12 Modul von Pollin, mit welchem ich 
noch keine Erfahrung habe.
Eine Hauptfrage welche ich mir stelle ist, wie ich es hinbekomme, 
mehrere Sender zu betreiben, ohne sich diese stören.
Überlegt habe ich mir das bis jetzt so:

Bei WLAN ist das Verfahren ja CDMA with CA, also Collision Avoidance:
Immer bevor ein Datenpaket gesendet wird, wird eine gewisse Zeit 
gewartet und gehorcht. Falls wärend der Zeitspanne nichts empfangen 
wurde von anderen Sendern, dann wird gesendet.

Ich möchte das nun beim RFM12 ähnlich machen.
Klar ist also, dass ich die RFM12 Module brauche, um auch empfangen zu 
können (und so zu horchen).
Was mir aber noch Kopfzerbrechen bereitet ist folgendes:

Das ISM Band ist bei 433 Mhz recht voll und viel benutzt.
Wenn ich also da mit meinem Sender bin und warte, dass niemand was 
sendet, kann es doch sein das ich immer ein bisschen ein Rauschen 
anderer Sender reinkriege und sich der Sender dann entscheidet, nie zu 
senden.
Wie wird das in der Praxis gelöst?

Ich sollte dazu anmerken, dass mein Wissen bzgl. Funk nur theoretischer 
Natur ist, ich habe selber in der Praxis noch nie mit Funkmodulen 
gearbeitet.

liebe Grüsse und gutes neues Jahr
Lisa

von foo (Gast)


Lesenswert?

Lisa schrieb:
> und sich der Sender dann entscheidet, nie zu
> senden.
> Wie wird das in der Praxis gelöst?

Z.B. indem er einfach lossendet und darauf hofft, dass er wegen der 
kürzeren Entfernung den fremden Sender überschreit.
Das ist nämlich eine Eigenschaft der FM: Das stärker einfallende Signal 
verdrängt das schwächere, wobei, -anders als bei AM-, kaum Störungen 
entstehen.
Wenn du einen Rückkanal zur Verfügung hast, kannst du dir auch den 
korrekten Empfang des Datenblocks bestätigen lassen, und die Sendung 
ggfs. wiederholen.
Senderkennungen und fortlaufende Blocknummern helfen dabei.

Prinzipiell musst du aber mit Störungen rechnen, und wenn eine 
fehlerfreie Übermittlung wichtig ist, musst du Redundanz einbauen.
Eine Parity-Prüfung oder eine andere Prüfsumme zur Fehlererkennung ist 
das Mindeste, und zur Fehlerkorrektur wurden eine Menge verschiedene 
Verfahren erdacht, deren Eignung sich aber auch nach der Art der 
erwarteten Fehler richtet.
Als einfachste Maßnahme könntest du z.B. statt nur eines Datenblocks 
stets die letzten zehn übertragen.
Der Empfänger kann bereits korrekt empfangene Daten dann einfach 
wegwerfen, und neue Blöcke an passender Stelle in die Nachricht 
einfügen.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Lisa schrieb:
> Das ISM Band ist bei 433 Mhz recht voll und viel benutzt.

So isses. Da ist alles unterwegs vom Autoschlüssel bis zum Funkamateur. 
Warum nimmst du nicht 868 MHz?

von Charly B. (charly)


Lesenswert?

868 Mhz verwenden und die 'aussenstellen' anpingen,
d.h. der Temp.Sensor sendet nur wenn er aufgefordert
wird, wenndu nicht viel Daten uebertaegst waehle eine
kleine Baudrate, brint mehr Sicherheit/Stabilitaet
viel erfolg

vlG
Charly

von RFM12B (Gast)


Lesenswert?

Deine Umgebung kannst du Scannen mit einem SDR (DVBT_Stick für wenig 
Geld).

http://sdr.osmocom.org/trac/wiki/rtl-sdr

Die RFM12B haben Start/Stoppfrequenz von 430,24 - 439,7575 MHz.

Zur Info
http://jeelabs.net/projects/hardware/wiki/JeeNode

von Andreas (Gast)


Lesenswert?

Hallo Lisa,

der Verweis auf JeeLabs ist schon mal ein guter Punkt. Ich verwende auch 
JeeNodes und JeeMicros. Je nachdem wie groß dein Abstand zwischen Sender 
und Empfänger ist wäre der neuere RFM69 besser. Hat mehr Sendeleistung 
und ist empfindlicher, sprich hat mehr Reichweite. Der RFM69CW ist 
pinkompaibel zum RFM12B. Ich betreibe 5 Sender mit Batterien. Sie wachen 
alle 2 Minuten auf, machen eine Messung und senden falls sich was 
geändert hat. Ich sende bei den Daten einen Zähler mit, so kann ich 
sehen wie häufig Sendungen nicht ankommen. Aber wenn auch mal eine 
Sendung nicht ankommt so macht das auch nichts, da sich Temperaturen nur 
sehr langsam ändern. Ich verwende DHT22 als Sensor. Er misst Temperatur 
und Luftfeuchtigkeit.

Hier findest du auch interessante Boards :

lowpowerlab.com

anarduino.com

Andreas

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

RFM12B schrieb:
> Die RFM12B haben Start/Stoppfrequenz von 430,24 - 439,7575 MHz.

Davon darfst du bei uns (DL) nur den Frequenzbereich 433,05 - 434,79 MHz 
nutzen, sonst bist du Schwarzfunker. Siehe Frequenznutzungsplan Eintrag 
223003.
Da ab 435,0 MHz der Bereich für AFu Satelliten beginnt, muss man da auch 
mit Entdeckung rechnen. 868 Mhz ist wirklich besser, vor allem bei 
geringem Duty Cycle.

von Matthias K. (kannichauch)


Lesenswert?

Hallo Lisa.
Ich habe mir aufgrund Deines Artikels das Datenblatt angeschaut, also 
kurz in 2 vom Download.
Wenn Du das auch machst, wirst Du feststellen, das sich die Bandbreite 
und eine Frequenzabweichung programmieren lassen.
Dann gibt es das Modul für verschiedene Frequenzen.
Was willst Du mehr?
Zum hf-technischem wurde schon einiges gesagt, aber zusätzlich:
Für die wenigen Parameter reicht sicher die kleinste Bandbreite.
Fuer eine Plausiblitaetspruefung ala Quersumme brauchts auch nicht viel.
Dann vielleicht noch 2 oder 3 mal senden zum auswaehlen.
Diese hohen Frequenzen erlauben auch eine yagi-Richtantenne auf 
Leiterplatte oder aus Draht, natürlich fuer Sender und Empfaenger.
Weniger auffallen wuerde z.B. ein Dipol mit Reflektor, oder eine lambda 
5/8, was auch ginge.
OK?

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Man könnte auch ein einfaches Protokoll entwickeln, wonach die Sensoren 
nur nach Aufforderung von einem Master senden, also nur, wenn sie 
"gefragt" werden. Die zu übertragenden Daten werden mit Absenderkennung 
und Prüfsumme versehen.

Bekommt der Master nicht innerhalb einer vorgegebenen Zeit eine 
verständliche Antwort vom richtigen Sender oder stimmt die Prüfsumme 
nicht, wird die Sendung erneut abgerufen ...

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
Noch kein Account? Hier anmelden.