Hallo, möchte mehrere schnelle uC innerhalb eines Gerätes vernetzen und suche dazu ein passendes Protokoll. Die Rahmenbedingungen sind: - Multi-Master fähig - 10MBit Durchsatz - Hoher Anteil an Streamingdaten (Messwerte), gemischt mit Messages - SW-Update über uC-Netzwerk möglich - störsicher Eine Analyse bestehender Protokolle / Schnittstellen sieht wie folgt aus: SPI: nicht Multi-Master fähig. Ethernet: zu teuer und zu umständlich. CAN: Geschwindigkeit ok, Kollisionserkennung ok, aber ungeeignet für Streamdaten, da CAN ein Message-orientiertes Protokoll ist und maximal 8 Bytes Daten pro Paket übertragen kann. SNAP über RS-485-Bus: Kommt meinen Vorstellungen schon recht nah, hat aber keine Kollisionserkennung. Als Hardwareschnittstelle werde ich wohl CAN oder RS-485 nutzen, nur habe ich bislang kein passendes Protokoll gefunden. Hat dazu jemand Hinweise oder sowas schonmal selber gemacht? Danke für alle Tipps. Gruss Arvid
Hi, warum ist das SPI Protokoll nicht Multimaster fähig? Ich würde sagen, das Ganze läßt sicht so modifizieren, dass es funktioniert. Siehe : http://www.infineon.com/cgi/ecrm.dll/ecrm/scripts/public_download.jsp?oid=10064&parent_oid=13747 Gruß Jörn
Du brauchst 10MBit? Meines Wissens kann CAN aber nur 1MBit.
Hei! In dem Siemens-Datenblatt ist eh alles beschrieben was du brauchst. Den C-Code kann man fast 1:1 übernehmen. Um auf die 10Mbit zu kommen programmierst du dir dafür einfach einen eigenen µC. Die Leitungen sollten halt nicht zu lang sein. Aber so wird das Ganze sicher klappen. Tschüss
10MBit ist ja wirklich recht heftig, mit nem AVR nicht zu schaffen. Bestenfalls mit nem C8051F120 bei 100MHz, aber viel kann der dann auch nicht nebenbei machen. Und das CAN keinen Stream übertragen kann, ist mir neu. Wir machen alle Softwareupdates über CAN, der Stream wird dann eben paketweise übertragen (max 11 Byte je Paket). Peter
Warum nicht beide (CAN & RS485) gleichzeitig, sind nur 4 Adern. Über RS485 werden nur die streaming Daten uebertragen, die Arbitrierung des RS485 wird über CAN gesteuert, und die restlichen Messages werden ueber CAN verschickt.
Hallo, danke für die Hinweise. @Peter: > 10MBit ist ja wirklich recht heftig, mit nem AVR nicht zu schaffen. ...sorry, ich meinte auch 1MBit. > Und das CAN keinen Stream übertragen kann, ist mir neu. > Wir machen alle Softwareupdates über CAN, der Stream wird dann eben > paketweise übertragen (max 11 Byte je Paket). ...das Problem sind nicht die Softwareupdates, da hat man ja genügend Zeit und es hustet auch keiner dazwischen. Da würde CAN schon prima funktionieren. Das Problem sind grosse Datenmengen im laufenden Betrieb. Mir liegen Erfahrungsberichte namhafter Firmen vor, die versucht haben, Streamdaten geräteintern über CAN zu übertragen und damit erhebliche Probleme bekommen haben (Paketverluste, weiteres Protokoll auf CAN aufsetzen). @hans: ...hm, ist auch noch eine Möglichkeit, hört sich aber eher umständlich an, werd mal drüber nachdenken. Gruss Arvid
Hallo Arvid, was ist aus Deiner Vernetzung geworden? Habe damit beruflich auch zu tun, allerdings nicht in DEN Geschwindigkeiten - mir reichen die 1 MBit von CAN. Kannst Dich ja mal melden (auch privat wenn Du mich noch kennst... ;-)==> Baltrum) Gruß, Helmut
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.