Das Protokoll im Bus

Gast #4658496
Lesenswert?

Moinsen zusammen ich baue gerade an einem Hausbus Dir Hardware besteht 
aus Rs485 und Mega8 Bausteinen.
Das Problem liegt in bei mir im Protokoll. Ich habe zb etliche 
identische Relayskarten mit jeweils 2 Relays. Jedes Gerät im Bus hat 
eine Adresse.
Das klappt soweit super. Wenn ich aber 20 Relays Gleichzeitig schalten 
möchte müsste ich also 20 Befehle über den Bus senden. Jeder wird mit 
zum Absender bestätigt. macht 40 Befehle. Auch wenn es nur Millisekunden 
sind finde ich diese Lösung nicht so toll.

Ich würde lieber ähnlich wie beim Dmx einen zustand senden und die 
Empfänger wissen auf welcher Adresse sie Lauschen sollen. nur wie kann 
ich dann die Bestätigung zum Absender realisieren. Das nicht ein Gerät 
durch Übertragungsfehler den Befehl nicht mitbekommt.

Permanentes senden aller Daten fällt aus weil es ein Multimaster system 
ist. Jeder Lichtschalter jeder Sensor kann Senden. Daher benötige ich 
auch eine Bestätigung das das Paket wirklich angekommen ist.

Gibt es dazu ideen?
Gast #4658540
Lesenswert?

Das geht nicht. Entweder jedes Geräte wird einzeln angesprochen und 
bestätig den Empfang oder gibt eine Sammeladresse ohne Bestätigung.

und warum sollte es bei Relais Millisekunden wichtig sein?

Selbst das Multimaster und Rs485 passen nicht wirklich zusammen, damit 
kann man Bus nicht sehr stark auslasten.
#4661687
Lesenswert?

So wird das bei CAN gemacht 
https://de.wikipedia.org/wiki/Controller_Area_Network#Arbitrierung.2C_Priorit.C3.A4t

Beide senden also los bis ein Sender merkt seine Bits werden 
überschrieben dann macht er erstmal eine Pause und probiert es nach der 
Nachricht des anderen Senders nocheinmal. Jeder Sender senden also nicht 
nur Daten sondern auch einen Identifier der die Priorität enthält. Ein 
Alarm ist z.B. wichtiger als ein Lichtschaltbefehl und wird deshalb beim 
gleichzeitigen lossenden als erstes durchkommen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren