INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Funknetz mit vielen Sendern und einem Empfänger
20.12.2018, 08:47 (Dieser Beitrag wurde zuletzt bearbeitet: 20.12.2018 08:53 von Hi72.)
Beitrag #17
RE: Funknetz mit vielen Sendern und einem Empfänger
Hallo Markus, hallo Tommi,

vielen Dank für eure Hinweise - ich glaube auch, dass die Lösung in einer Kommunikation zwischen allen Partnern liegt.

Bei dem Aufbau (max. 32 Clients, max. 4 Tasten) würde ein Byte als Übertragungsdatenmenge reichen:
Bit 0: 0 = noch keine Taste gedrückt 1 = Taste gedrückt
Bit 1,2: Nr. der gedrückten Taste: 00 = "A" 01 ="B" 10="C" 11="D"
Bit 3,4,5,6,7: Nr. des Clients: 0000=Nr. 0, 0001= Nr.1 ,...., 1111=Nr. 31

Der Ablauf könnte so aussehen:

1. Tastendruck am Computer für neue Frage
--> Master sendet Startsignal an alle Clients.
Clients empfangen Startsignal, löschen alle bisherigen Eingaben und warten in einer Schleife auf einen Tastendruck.

Anschließend warten sie in einer Schleife auf einen Signaleingang vom Funkmodul.

Master sendet der Reihe nach Startsignale an alle Clients
0000000
0001000
0010000
...
1111000
Zwischen den Sendungen legt er immer eine Pause ein und wartet kurz, ob er eine Antwort empfängt.

Die Clients empfangen diese Signale und analysieren die linken 4 Bits.
Wenn der Client vor ihm angesprochen wird, geht der Client in Sendebereitschaft und wartet, bis er keine Funkdaten mehr empfängt. Dann sendet der Client sein Datenbyte.

Der Master und alle anderen Clients empfangen das Datenbyte
--> Der Master kann es auswerten: Client-Nr. + Tasten-Nr. + Taste gedrückt?
Clients von denen er bereits einen Tastendruck erhalten hat, fragt er in dieser Runde nicht mehr ab.
Sobald er von allen Clients Tastendrücke registriert hat, meldet er an der Rechner, dass die Auswertung abgeschlossen ist.

Die anderen Clients empfangen das Datenbit ebenfalls und können es wie oben auswerten und evtl. in Sendebereitschaft gehen.

Die Hauptsendelast liegt hier beim Master, bei dem die Stromversorgung kein Problem ist.
Die Clients lauschen hauptsächlich und senden nur ganz selten.

Glaubt ihr, dass hier noch Prüfsummen nötig sind?

Viele Grüße

Rainer

P.S. Das Bit 0 brauche ich eigentlich nicht - dann könnte man mehr Tasten codieren...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2018, 11:39
Beitrag #18
RE: Funknetz mit vielen Sendern und einem Empfänger
Hallo Rainer,
Man sagt, es führen viele Wege nach Rom.
Wenn du dir das in einen Ablaufdiagramm einzeichnest, siehst du ob es so passt.
Aber das sieht doch eigendlich schon recht gut aus.

Zur Quersumme oder auch Prüfsumme:
Wie sicher soll es denn sein wenn der Master einen falschen Wert bekommt?
Also wie fatal kann es sich auswirken?
Die Sicherheit der Richtigkeit einer korrekt empfangenen Nachricht ist damit nicht ausgeschlossen, aber um ein vielfaches höher.
Eine Quersumme würde ich immer just in fly berechnen.
Das heißt: Deine Sendedaten z.B. zusammenzählen. Manche zählen auch zusammen und setzen noch eine bestimmte Zahl drauf, oder Inventieren das Ergebnis.
Dann gibt es die Möglichkeit wie schon erwähnt:
Der Sender sendet die Summe nicht mit, sondern der Empfänger rechnet die selber aus, und sendet die zurrück.
Dann sendet der Sender die korrektheit mit einer Bestätigung ( ACK ).
Oder:
Der Sender sendet die Summe mit, und der Empfänger rechnet die Summe aus und macht einen Vergleich.
Bei unterschiedlicher Summe, meldet der einen Fehler, und gibt eine erneute Anfrage zum neusenden.

Guuß, Markus

Immer in Stress
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2018, 12:48
Beitrag #19
RE: Funknetz mit vielen Sendern und einem Empfänger
Hallo Markus,

danke für die Erklärung - es müsste dann aber doch auch reichen, wenn der Master am Ende, wenn er alle Ergebnisse hat, der Reihe nach den Clients seine berechneten Prüfsummen schickt. Wenn die Summe passt, schickt der Client ein OK zurück, wenn nicht, noch einmal seine Botschaft.

Damit wäre der Funkverkehr während der eigentlichen Übertragung der Daten geringer und am Ende würde noch einmal eine Kontrollrunde laufen, dass die Ergebnisse korrekt sind.

Viele Grüße

Rainer
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Mehrere HX711 mit einem Arduino Uno be14b029 8 2.784 16.03.2019 18:22
Letzter Beitrag: charlie883
  mBlock und Arduino IDE gleichzeitig auf einem PC? mgbig 4 288 14.01.2019 08:39
Letzter Beitrag: mgbig
  Variablen zu einem CHAR verbinden und einbinden Frank_aus_WOB 3 339 02.01.2019 09:07
Letzter Beitrag: Tommy56
  PWM Rampe + Impulszähler in einem Programm heini320 10 854 29.11.2018 18:31
Letzter Beitrag: heini320
Smile Punktestand von einem Arduino in eine Access Datenbank schreiben ThePhil 8 1.333 16.07.2018 22:24
Letzter Beitrag: Tommy56
  Neur Forumnutzer mit vielen Fragen sauerg 5 853 10.04.2018 20:03
Letzter Beitrag: Fips
  Zwei identische I2C sensoren an einem Bus Karli 19 2.433 02.04.2018 22:13
Letzter Beitrag: Harry
  byte´s zu einem String zusammenfassen ? Franz54 18 2.695 31.01.2018 10:10
Letzter Beitrag: MicroBahner
  Mehrere Ausgänge mit einem Befehl auf High oder Low setzen dahans 1 1.982 10.01.2018 12:48
Letzter Beitrag: Tommy56
  RC Anwendung mit 3 Empfängereingangen und einem MPU6050 Thorsten_S 19 2.901 10.12.2017 19:59
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste