Forum: Mikrocontroller und Digitale Elektronik RFM12-Tranceiver und Broadcast


von Karsten S. (scottyrebel)


Lesenswert?

Hallo
hat jemand schon mal ein RFM12- Funkmodul an einen ATMega betrieben?

Vielleicht sollte ich erklären was ich vorhabe bevor ich weiter Fragen 
stellen, die in keinem Zusammenhang stehen.

Also, ich habe 8 Meßstellen. Jede Meßstelle nimmt pro Sekunde 10 
Messungen auf. Die Sensoren sind Dehnungsmeßstreifen, die von einem 
ATMega und dessen AD-Wandler ausgemessen werden. Im Moment speichern die 
Prozessoren Ihre Werte in einem externen statischen RAM. Bis hierher 
funktioniert auch alles.
Nun dachte ich mir, ich nehme diese Funkmodule,um eine "Liveübertragung 
zu erhalten. Das sollte dann so aussehen, dass es einen Master gibt, der 
ein Broadcast auf die 8 Teilnehmer durchführt. Diese sollen dann ihre 
aktuellen Meßdaten liefern. Achtung, ich meine nicht alle die im 
Speicher stehen, sondern nur den aktuellen Wert.
Vielleicht noch etwas zur Umgebung: Freies Gelände(kein Raum), maximale 
Entfernung ca. 10m.

So, wie ich bereits oben schon erwähnt habe nehmen die Meßstation alle 
100ms einen Meßwert auf. Da es 8 Meßstationen gibt, muss der Master alle 
12,5ms eine Anfrage stellen um theoretisch alle Meßdaten kontinuierlich 
zu erhalten.
Hier dachte ich an ein simpeles Protokoll, der Master sendet 1Byte(jedes 
Bit steht für eine Meßstation). Die entsprechende Meßstation liefert 
darauf hin 3 Bytes zurück. Eines für die Nummer der Station und 2 Bytes 
Daten.
Ich frage mich jetzt,ob das so realisierbar ist, da ich nicht weiß mit 
was für einer Antwortzeit ich zu rechnen habe.

Wäre nett, wenn Ihr mit mir Eure Erfahrungen teilen würdet.
--
Gruß Karsten

von Markus L. (lucky79)


Lesenswert?

Karsten Sosna schrieb:
> Hallo
> hat jemand schon mal ein RFM12- Funkmodul an einen ATMega betrieben?
ein RFM12 noch nicht, hab mir erst welche bestellt, hab aber schon mit 
anderen AM-Funkmodulen (eher Funksender) etwas herumprobiert --> 
handling is nicht grad einfach, musst den sync selber machen, AM und 
ohne Intelligenz halt...

> Vielleicht noch etwas zur Umgebung: Freies Gelände(kein Raum), maximale
> Entfernung ca. 10m.
sollte kein Problem sein, Field testing Rang > 200m@1,2kbps

> So, wie ich bereits oben schon erwähnt habe nehmen die Meßstation alle
> 100ms einen Meßwert auf. Da es 8 Meßstationen gibt, muss der Master alle
> 12,5ms eine Anfrage stellen um theoretisch alle Meßdaten kontinuierlich
> zu erhalten.
also bei idealen Bedingungen würd das wohl so aussehen:
Datenrate = 115,2kbps, eine Übertragung umfasst mindestens 3 + 3 Bytes 
also 6, das sind dann mal grob 48 Bits, die übertragen werden wollen --> 
Dauer 417µs. Ich weiß aber nicht, ob man das so ohne Overhead vernünftig 
hinbekommt. Selbst bei 1,2kbps brauchen die 6 Bytes 4ms für die 
Übertragung, sollte also machbar sein.

> Hier dachte ich an ein simpeles Protokoll, der Master sendet 1Byte(jedes
nö, "Supports very short packets (down to 3 bytes)" also nix mit 1...

> Bit steht für eine Meßstation). Die entsprechende Meßstation liefert
> darauf hin 3 Bytes zurück. Eines für die Nummer der Station und 2 Bytes
> Daten.
> Ich frage mich jetzt,ob das so realisierbar ist, da ich nicht weiß mit
> was für einer Antwortzeit ich zu rechnen habe.
kannst nur ausprobieren wie sich so ein Netzwerk verhält.


>
> Wäre nett, wenn Ihr mit mir Eure Erfahrungen teilen würdet.
Da ich diese Module auch einsetzen will, um Sensordaten zu übertragen 
würd mich auch interessieren, ob schon jemand diese im Einsatz und 
Erfahrungen
damit hat.

> --
> Gruß Karsten

von Karsten S. (scottyrebel)


Lesenswert?

>> Vielleicht noch etwas zur Umgebung: Freies Gelände(kein Raum), maximale
>> Entfernung ca. 10m.
> sollte kein Problem sein, Field testing Rang > 200m@1,2kbps
Hallo Markus,
in Anbetracht der Tatsache, das es sich nicht umviele Daten(Bytes) 
handelt sollte ich die Übertragungsrate auch relativ gering einstellen 
können.

>> So, wie ich bereits oben schon erwähnt habe nehmen die Meßstation alle
>> 100ms einen Meßwert auf. Da es 8 Meßstationen gibt, muss der Master alle
>> 12,5ms eine Anfrage stellen um theoretisch alle Meßdaten kontinuierlich
>> zu erhalten.
>
> also bei idealen Bedingungen würd das wohl so aussehen:
> Datenrate = 115,2kbps, eine Übertragung umfasst mindestens 3 + 3 Bytes
> also 6, das sind dann mal grob 48 Bits, die übertragen werden wollen -->
> Dauer 417µs. Ich weiß aber nicht, ob man das so ohne Overhead vernünftig
> hinbekommt. Selbst bei 1,2kbps brauchen die 6 Bytes 4ms für die
Ok, eine CRC16-Prüfung einzubauen hatte ich ich vor Angst an der 
Reaktionszeit erstmal vernachläßigt,michwürde interessieren ob die 
überhaupt so schnell reagieren.

> Übertragung, sollte also machbar sein.

>> Hier dachte ich an ein simpeles Protokoll, der Master sendet 1Byte(jedes
> nö, "Supports very short packets (down to 3 bytes)" also nix mit 1...

Ok, das wusste ich nicht, dann kann ich auch gleich 2 Bytes für den 
CRC-Check anhängen.

>> Bit steht für eine Meßstation). Die entsprechende Meßstation liefert
>> darauf hin 3 Bytes zurück. Eines für die Nummer der Station und 2 Bytes
>> Daten.
>
>> Ich frage mich jetzt,ob das so realisierbar ist, da ich nicht weiß mit
>> was für einer Antwortzeit ich zu rechnen habe.
>
> kannst nur ausprobieren wie sich so ein Netzwerk verhält.

Werde ich, habe heute 4 Tranceiver bestellt, mal schauen.

>> Wäre nett, wenn Ihr mit mir Eure Erfahrungen teilen würdet.
> Da ich diese Module auch einsetzen will, um Sensordaten zu übertragen
> würd mich auch interessieren, ob schon jemand diese im Einsatz und
> Erfahrungen
> damit hat.

Werde ich Dir berichten, kann aber bestimmt noch eine Woche dauern. 
Schätz mal die Bestellung kommt mitte nächster Woche.Dann die 
Testapplication aufbauen und die Software schreiben, hmm ich sage mal 
Freitag oder Samstag.
--
Gruß Karsten

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.