Hallo, ich mache mir z.Z. Gedanken über eine einfache Modelleisenbahnsteuerung über sogenannte "Handheld-Controller", die über IR mit der Zentralstation kommunizieren. Auch wenn ich in vielen Beiträgen lese, dass Datenkollisionen sehr selten sein sollen(alle Geräte senden gleichzeitig und der Empänger bekommt Müll) habe ich mir überlegt, wie man die Situation "entschärfen" kann. Ich gehe von einem festen Datenprotokoll aus, das von jedem Sender verschickt wird. Dabei hat jeder Sender eine Empfangsdiode, die von direkter Einstrahlung der Sendediode geschützt ist. Initial setze ich voraus, dass dann nicht schon alle Sender gleichzeitig betätigt werden. Also sendet der 1ste Sender und disabeld seine Empfängerdiode. Alle anderen Sender empfangen das Protokoll und gehen ihrerseits in den "Wartezustand", also sie senden nichts. Wenn das Protokoll durch ist, wartet dieser Sender (n x Protokolllänge) bevor er erneut sendet. Ein anderer Sender detektiert nun (zuerst) das keine Sendung vorliegt, und beginnt seinerseits das/sein Protokoll abzuschicken. Meint ihr, dass das eine vernünftige Strategie ist oder wonach muß ich suchen, um etwas erhellendes zu finden?? Mir ist klar, dass das nicht mit unendlich vielen Sendern funktionieren kann und mir ist noch nicht klar, wie man sicherstellen kann, dass kein Sender niemals mehr "dran" kommt. Danke für euer Mitdenken! Gruß Rainer
So löste damals Carrera dieses Problem: http://slotbaer.de/carrera-digital-124-132/13-d132-d124-infrarot-regler-protokoll.html
Rainer V. schrieb: > Mir ist klar, dass das nicht > mit unendlich vielen Sendern funktionieren kann und mir ist noch nicht > klar, wie man sicherstellen kann, dass kein Sender niemals mehr "dran" > kommt. Nach der verordneten Sendepause müssen die Sender einen erneuten Versuch mit einer zufälligen Zeitverzögerung starten.
Wolfgang schrieb: > Nach der verordneten Sendepause müssen die Sender einen erneuten Versuch > mit einer zufälligen Zeitverzögerung starten. Hi, das ist natürlich ein Konzept, an das ich überhaupt nicht gedacht habe! Liegt aber eigentlich auf der Hand, wenn man sich "effe" Busprotokolle ansieht!! Also der Empfänger "animiert" die Sender und hört sich an, was kommt...super. Und es funktioniert tatsächlich auch mit (fast) n Sendern :-) Danke und Gruß Rainer
Rainer V. schrieb: > Meint ihr, dass das eine vernünftige Strategie ist Uralt. Funktioniert tadellos z.B. bei CAN und Ethernet, wenn es auf Koaxkabel unterwegs ist (das zeigt dann auch, wie uralt das Konzept ist). > oder wonach muß ich suchen, um etwas erhellendes zu finden?? CSMA/CD
:
Bearbeitet durch Moderator
Rainer V. schrieb: > ich mache mir z.Z. Gedanken über eine einfache Modelleisenbahnsteuerung > über sogenannte "Handheld-Controller", die über IR mit der > Zentralstation kommunizieren. Auch wenn ich in vielen Beiträgen lese, > dass Datenkollisionen sehr selten sein sollen(alle Geräte senden > gleichzeitig und der Empänger bekommt Müll) habe ich mir überlegt, wie > man die Situation "entschärfen" kann. > Ich gehe von einem festen Datenprotokoll aus, das von jedem Sender > verschickt wird. Dabei hat jeder Sender eine Empfangsdiode, die von > direkter Einstrahlung der Sendediode geschützt ist. Initial setze ich > voraus, dass dann nicht schon alle Sender gleichzeitig betätigt werden. > Also sendet der 1ste Sender und disabeld seine Empfängerdiode. Wenn jeder Sender seine eigene Empfangsdiode blockiert, dann bräuchtest du für die Empfangsdiode eigentlich keinen Schutz vor Einstrahlung. Aber mir ist noch nicht klar, wie du gewährleisten willst, daß die Handheld-Controller die IR Sendung aller anderen Controller sehen können. Die Controller sind doch üblicherweise zur Zentralstation hin ausgerichtet. Dann hängt es doch sehr vom Zufall bzw. Reflektionen ab, ob ein Controller etwas von seinen Nachbarn mitbekommt. Hier könnte es helfen, wenn die Zentralstation das empfangene Signal ohne zeitliche Verzögerung direkt wieder aussendet. Lothar M. schrieb: > Rainer V. schrieb: >> Meint ihr, dass das eine vernünftige Strategie ist > Uralt. Funktioniert tadellos z.B. bei CAN und Ethernet, wenn es auf > Koaxkabel unterwegs ist (das zeigt dann auch, wie uralt das Konzept > ist). > >> oder wonach muß ich suchen, um etwas erhellendes zu finden?? > CSMA/CD Die Kollosionserkennung funktioniert aber nur, wenn der Sender erkennen kann, ob sein Signal gestört wird bzw. ob sein Signal ungestört beim Empfänger angekommen ist. D.h. der Sender müßte hier kontrollieren ob sein IR Signal durch andere Sender gestört wird. Eventuell IR Spiegelung durch die Zentralstation (siehe oben), oder eine Quittung mit Senderkennung durch die Zentralstation.
Barny schrieb: > Dann hängt es doch sehr vom Zufall bzw. Reflektionen ab, > ob ein Controller etwas von seinen Nachbarn mitbekommt Das muß man natürlich probieren. Aber da man heute den Fernseher ja quasi von der Küche aus einschalten kann, bin ich erst mal davon ausgegangen, dass es funktionieren könnte. Werde aber erst mal das Konzept "Empfänger fragt bei Sendern nach" im Auge behalten. Danke und Gruß Rainer
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.