mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Funkempfänger mit schneller Reaktionszeit


Autor: Christian M. (charlie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich bin neu hier und möchte zunächst erst einmal ein großes Lob 
aussprechen, dieses Forum hat mir schon in vielen Fragen gute Antworten 
geliefert.

Zu meinem Problem: Ich habe eine sehr zeitkritische Anwendung:
Ein Sender sendet regelmäßig (alle paar Millisekunden) per Funk ein 
Synchronisationssignal an alle drei, oder vier Empfänger. Es müssen 
dabei keinerlei Daten übertragen werden, stattdessen sollen bei diesem 
Signal alle Signalpins der Empfänger den Pegel wechseln. (ob high->low 
oder low->high ist egal)
Diese werden dann an den Mikrocontroller geleitet und dort weiter 
verarbeitet. Aber das spielt hier keine primäre Rolle.

Zwischen den Empfängern darf es nur Abweichungen von maximal bis zu 5µs 
geben, also die Empfänger müssen fast zeitgleich schalten, und das 
immer. Auch im bezug auf das Sendesignal. (Dort natürlich mit 
reproduzierbarer Verzögerung, also abhängig von Entfernung usw.)

Die Entfernung der Empfänger zum Sender beträgt maximal einen Meter, 
Frequenz und Modulation stelle ich mal frei.

Über Kabel wäre das relativ einfach zu realisieren, auch über IR wäre 
das sicherlich machbar, nur über Funk?
Hat einer von euch möglicherweise schon Erfahrung mit solch 
zeitkritischen Anwendungen, oder kann mir vllt. jemand geeignete 
Empfänger nennen oder möglicherweise eine Firma, die so etwas Anbietet?

So wie ich gelesen habe ist selbstbau ja nicht zulässig und in 
Datenblätter wird so eine Information nicht geführt.

Danke im Vorraus.

Gruß

Autor: Harald A. (embedded)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau doch mal bei www.telecontrolli.com, die haben eine Menge 
verschiedenster Module. Du kannst dort auch sicher eine solche Anfrage 
starten. Ich denke, dir werden dir gerne antworten.

Vertrieb von Telecontrolli z.B. über www.rfsolutions.co.uk oder 
www.hyline.de

Autor: Christian M. (charlie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnelle Antwort. Werde mich an die Firma richten.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sowas lässt sich beispielsweise mit dem CC2420 von TI machen. Der kann 
IEEE 802.15.4 und hat einen Start Frame Delimiter Ausgang. Der wechselt 
bei Sender und Empfänger nahezu gleichzeitig den Pegel, wenn ein Paket 
gesendet/empfangen wird. Damit lassen sich viele Empfänger gut 
synchronisieren. Kann man ja über Brodcast machen, dann sprechen alle 
gleichzeitig an. Ich nutze das, um ein Sensornetzwerk zu 
synchronisieren.

Autor: Christian M. (charlie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, der CC2420 ist ja schon sehr mächtig... Ich werde ihn in meine 
Liste mit den möglichen Lösungen aufnehmen und dann nächste Woche 
genauer anschauen.

Wie genau bekommst du die Synchrosisierung damit hin? Ich hatte als 
ersten Versuch einen XBee von digi und hatte da leider Unterschiede von 
bis zu 200µs. Deswegen wollte ich das ganze eher etwas Hardwarenäher 
entwickeln.
Du hast doch sicher Versucht, zwei Module als Empfänger über Broadcast 
anzusprechen und hast dabei mit dem Oszi an den I/O-Signalpins gemessen, 
ob eine Verzögerung untereinander auftritt? Das wäre die große Frage, 
wie groß diese Verzögerung maximal ist.

gruß

EDIT: oder die Unterschiede an den Start-Frame-Delimiter Ausgängen

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, ich synchronisiere jeden Empfänger einzeln, und zwar lasse ich auf 
dem Master und den Slaves einen Timer mit einem 32kHz TCXO laufen. Der 
SFD hängt an einem Capture Interrupt. Die Synchronisierung besteht aus 2 
Paketen, das erste ermittelt per Capture den Zählerstand von Sender und 
Empfänger, das 2. übermittelt diesen an den Slave, woraufhin der Slave 
seinen Timer korrigiert. Somit hab ich die Timer synchron laufen. Der 
SFD kommt auf max. 6µs Abweichung zwischen Sender und Empfänger. Durch 
den 32kHz Takt an den Timern kann ich nur auf 30µs synchronisieren, 
reicht aber in meiner Anwendung aus.

Wenn´s noch genauer sein soll: NanoNET, mit bissl Protokoll schaffen die 
angeblich etwa 200ns Gleichlauf zwischen den Einheiten.

Autor: Christian M. (charlie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, das ist ein netter Ansatz, werde ich auch mal in Betracht ziehen. 
Allerdings sind die 30µs für meine Anwendung noch zu viel, wie im ersten 
Beitrag beschrieben benötige ich eine maximale Abweichung von 
allerhöchstens 5µs zwischen allen Empfänger..
Um so weniger, desto besser, da ich mit dem System die Laufzeit einer 
Ultraschallwelle von einem Punkt zu den jeweiligen umliegenden Sensoren 
und deren Controller bestimmen will. Und dabei zählt jede µSekunde.

Ich weiß nicht, ob das so präzise über Funk überhaupt möglich ist, das 
werde ich nur durch Testen von verschiedener Hardware und Ideen 
herausfinden können. Schön wärs natürlich ;)

Gruß

Autor: Jörg S. (joerg-s)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die EnOcean Funktechnik war glaub ich noch schneller als IEEE 802.15.4

www.enocean.de

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du willst doch nicht etwa unserem Institut Konkurrenz machen? Sowas aber 
auch...tztz.

Autor: Jadeclaw Dinosaur (jadeclaw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Können sich die Empfänger sehen?
Wenn ja, könnte ein Blitzgerät die Lösung sein. Der Impuls ist kräftig 
und sehr steilflankig. Und die Gleichheit ist auch gegeben, Stichwort 
Lichtgeschwindigkeit. Da ist 300m = 1µs. Statt Blitzröhre wären auch 
IR-Leds eine Idee, die können mit MHz blinken. Einige IR-Kopfhörer 
arbeiten mit Trägerfrequenzen im 2.5MHz-Bereich.

Gruß
Jadeclaw

Autor: Christian M. (charlie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@supachris: nein, das würd ich doch nie tun wollen ;)

@jadeclaw: die Empfänger haben zwar Sichtkontakt, aber mein großes Ziel 
ist es, genau so eine Abhängigkeit zu vermeiden. Mit IR hatte ich das 
auch schon getestet und es wäre auch realisierbar, aber wie gesagt, das 
ganze soll auch ohne Sichtkontakt und ohne bestimmte Ausrichtung 
untereinander funktionieren können.

gruß

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na guuuut. :) Wir wollen das demnächst mit NanoNET probieren, mal sehen, 
ob die < 1µs schaffen. Dann kann man wirklich orten.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.