Nach weiteren Studien in der gängigen Fachlitteratur habe folgende Frage. Die Nachrichtenobjekte werden mit einem Identifier versehen, welcher auch die Priorität der Nachricht festlegt. Es gibt max 1024 Idetifier aber keine Adressen. Wenn Nachrichten kollodieren, gewinnt die mit dem niedrigeren Identifier. Was passiert, wenn zwei Nachrichten mit dem gleichen Identifier kollodieren, z.b. 5 Teilnehmer wollen den Stromausfall des Systems melden?
Was willst Du mit der Botschaft "Stromausfall" anfangen, wenn Du nicht weißt von wem die Botschaft ist? Die Lösung ist an der Stelle, daß halt jedes Gerät seine eigene Stromausfallmeldung mit unterschiedlicher ID hat. Und dann gibts auch keine Probleme bei Kollisionen.
Das ist natürlich eine Lösung aber ich habe nur 1024 unterschiedliche Identifier aber viel mehr Geräte (2000 - 4000 oder auch mehr) Also hatte ich mir gedacht die Info, wer sich da meldet, in der Nachricht selbst unterzubringen. Somit können alle Teilnehmer auch die gleiche Software erhalten und die individuelle Adresse wird einfach als Variable eingegeben. Allgemeine Informationen, die jeder Teilnehmer brauchen kann werden in einer Box zur Verfügung gestellt und bei Bedarf abgefragt und diejenigen, die einen aktiven Eingriff von aussen erfordern, werden an einen Obermacker verschickt, der dann weiß was er damit anzufangen hat. Fällt jetzt aber auf einem ganzen Strang der Strom aus, und nicht nur auf einem Modul ...
Mit CAN2.0B kannst Du doch 500.000.000 Identifier benutzen. Aber mal im Ernst, ich kenne keinen CAN-Treiber-IC, der 4000 Geräte abkann. Es ist überhaupt nicht sinnvoll soviele Geräte an einen Strang zu legen (1 kaputtes Gerät -> Totalausfall) Gleiche Identifier kann der CAN nicht ab, da in den Daten keine Arbitrierung erfolgt. Es versuchen also beide Sender ständig den gleichen Identifier zu senden, bis ihr Errorcounter überläuft und sie sich abschalten. Eine Ausnahme wäre, wenn auch die Daten gleich sind. Peter
@Peter Das mit den 4000 Treibern an einem Stang habe ich inzwischen auch rausgefunden und mich bereits tierisch darüber geärgert, weil es leider nicht in allen Datenblättern drin steht, wievile Teilnehmer nun im Eizelnen dran hängen können, ist aber technisch doch eigentlich kein großes Problem, weil dann einfach nach jeweils 32 Teilnehmern eine "Relaisstation" kommt. Wenn ich mich auf diese Teilnehmerzahl begebe muss ich mir sowieso Gedanken machen, und da kommt Deine galvanische Trennung dann ins Spiel. Das mit den 500.000.000 Identifiern würde ja dann wohl reichen. Wenn Du sagst dass es keinen Sinn macht, so viele Teilnehmer auf einen Bus zu legen, (und ich stimmer Dir zu) hast Du dann aber auch eine alternative Idee? Immerhin muss jeder mit jedem die Daten austauschen können, weil jeder Teilaufgaben eines ausgefallenen Teilnehmers übernehmen soll.
Naja, man teilt in mehrere Stränge auf und verbindet die mit einer Art Hub untereinander, z.B. der LPC2294 hat 4 CANs. Peter
Wenn jeder mit jedem reden können soll, dann klingt das für mich eher nach Ethernet. Das hat Dank Router und Switches auch keine Probleme mit 4000 Teilnehmern.
Mich würde interessieren welche Anwendung die 4000 CanTeilnehmer realisieren? Ist das nur ein riesiger Versuch oder steckt dahinter eine technische Notwendigkeit? ----, (QuadDash).
@---- Die technische Notwenigkeit ist mehrfach gegeben. Die Teilnehmer teilen sich eine Stromversorgung, von der sie je nach Bedarf ganz wenig oder ganz viel nehmen. Das ist kein Problem, weil genug Zeit zur Verfügung steht. Durch dieses Konzept will man Kabel sparen. Dann brauchen alle die aktuelle Zeit und Datumsinformationen. Wenn einer oder 2 die zur Verfügung stellen, brauchen die Anderen keine eigenen Funkuhrempfänger. Dann soll es eine zentrale Ansteuerug geben, so dass einer alle (bis dahin) eigenständig arbeitenden Einheiten aufweckt und zur Zusammenarbeit zwingt oder wieder in den Individualismus entläßt. All solch Zeugs halt. Darum soll jeder mit jedem können. @Peter LPC 2294 werd ich mir mal anschauen, sobal ich die EINE Can Schnittstelle an meinem can128 dazu gebracht habe überhaupt etwas zu tun.
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.