Bitrate beim CAN-Bus

Gast #1797429
Lesenswert?

Ich habe zum CAN-Bus eine Frage.
Wenn ich einen CAN-Bus mit einer Datenrate von R=1Mbit/s betreibe,
wie groß ist dann die Symbolfrequenz (Einheit=Symbol/s) und der Faktor k 
(1 Symbol besteht aus k bits -> Wertigkeit M=2^k) ?

Eigentlich müsste die Symbolfrequenz fs=1Mhz betragen und k=1 oder?
Gast #1797443
Lesenswert?

Mit dem Oszi kann ich ja ein Frame anschauen. Da sehe ich keine 
Sinuswellen oder dergleichen. Ich kann doch eigentlich diese Berechnung 
R=k*fs durchführen. Bei CAN-Bus müsste k eigentlich 1 sein. Dies steht 
für ein bit pro Sekunde. Ich kann eure ausführungen leider nicht 
nachvollziehen.
#1797444
Lesenswert?

Beim CAN Bus wird ja mit Bitstuffing gearbeitet, d.h. es wird nach 5 
gleichen Bits eines hinzugeführt. Wenn man eine zufällige Verteilung der 
Daten annimt, dann ergeben sich in 2/32 der Fälle auf 5 Bits 6 Symbole. 
Folglich gilt näherungsweise k=log2(1-2/32). Bei anderer Verteilung der 
Daten sieht das natürlich anders aus, die Frage lässt sich also ohne 
Kenntnis der zu übertragenden Daten überhaupt nicht abschliessend 
beantworten.
Gast #1797456
Lesenswert?

Beispiel:

Einzelnes Bit hat eine Zeitdauer von 8 μs.
Die Bitzeit des Busses beträgt 8 μs.

1 bit / 8 μs

= 0,125 Bit / 1 μs

=125000 Bit / 1 s

= 125 kBit /  1 s

Die Übertragungsrate des Busses beträgt also

125 kBit / s.

Also ist R = 125 kBit / s
#1797819
Lesenswert?

> 1 Symbol besteht aus k bits
> bekomme ich k = log2(1-1/32)= -0,045803... heraus.

also HALBE bits kenne ich ja (bei der RS232 Übertragung).

das es ja aber schon NEGATIVE (und dann auch noch analoge) bits gibt, 
muß wohl eine Weiterentwicklung sein, die an mir vorbeigegangen ist.

Aber ich gebe zu: Auch die Entwicklung negativer Schwingungen (z.B. -50 
Hz) habe ich irgendwie verpasst.

Naja, es gibt ja auch Antimaterie, also warum nicht auch sowas ;-)
Moderator (Firma: Titel) Persönliche Seite #1797829
Lesenswert?

> Eigentlich müsste die Symbolfrequenz fs=1Mhz betragen und k=1 oder?
Irgendwie ist mir das viel zu theoretisch...
Was mich als Anwender auf dieser Ebene ausschliesslich interessiert ist 
doch:
1. wie hoch ist die maximal auftretende Frequenz (Kabelauswahl)
und
2. wie hoch ist meine Netto-Datenrate

> Eigentlich müsste die Symbolfrequenz fs=1Mhz betragen und k=1 oder?
Wenn ich in Google die Begriffe bitrate symbolfrequenz eingebe, komme 
ich bei FSK raus. Wenn ich dann den Begriff can mit dazunehme, findet 
sich nichts mehr...
#1797840
Lesenswert?

Dass Tante Gugel nichts findet heisst nur, dass die Fragestellung so 
exotisch ist, dass es noch niemand so formuliert hat. Aber ganz daneben 
ist sie aus höherer Sicht nicht, denn beispielsweise bei Ethernet ist 
die Betrachungsweise über Symbolfrequenz und Symbole durchaus 
berechtigt.

Nur sollte man davon ausgehen, dass auch Lehrpersonal googeln kann. 
Insofern kann so jemand durchaus mal auf den Gedanken kommen, Fragen zu 
stellen, die sich nachweislich nicht bereits nach 2 Minuten Web in 
Wohlgefallen auflösen.

Zur Sache mit den negativen Bits... Wenn man jemanden auf den Arm nimmt, 
dann ist der Effekt besser, wenns derjenige auch merkt. Hat hier aber 
offenbar trotzdem nicht funktioniert, sorry ;-).
Moderator (Firma: Titel) Persönliche Seite #1797853
Lesenswert?

> Insofern kann so jemand durchaus mal auf den Gedanken kommen, Fragen zu
> stellen, die sich nicht nach 2 Minuten Web in Wohlgefallen auflösen.
Da würden mir aber auch schnell einige einfallen, deren Beantwortung die 
Welt weiter brächten und das Leben vereinfachen würden:
Warum funktionieren von 5 Prototypen immmer nur 3? Und wie kann ich die 
anderen 2 von vorn herein aussortieren?
Warum ist der Pin, an dem ich löten will, immer von anderen Bauteilen 
verbaut?
Warum ist am Ende des Geldes noch soviel Monat übrig?

Zum Thema:
Wenn ich bei der Berechnung der Symbolrate das Bitstuffing einberechnen 
muß, dann muß ich ja wohl auch den Header und den Identifier mit 
einbeziehen, eine CRC...
Dann muß mir erst mal einer genau definieren, was ein Symbol ist.
Gast #1797863
Lesenswert?

schau dir den framaufbau an:
Wikipedia:
Bits
1 Start
11/29 ID
1 Remote
1 ext
1 res
4 länge
64 Daten
15 prüf
1 CRC D
1 ack
7 EOF
3 inter
3 Idle

gibt bei short ID 49 bit overhead für 64 bit daten
gibt bei long ID 67 bit overhead für 64 bit daten
dazu kommen im extremfall pro 5 bit i stuffing die kombinationen die 
möglich sind kannst du dir selber ausrechnen (wenn remote=1 keine daten, 
wenn daten X folgt crc Y ob sich daraus eine ungünstige bitekombi 
ergibt)
ich setze hierfür Immer 131/5 oder 113/5 26,2 oder 65,5 stuffing bits.
ergibt im worst case 135,6 (157,2) bit gesamtlänge für 64 bit.
jetzt kommkst du bei 1 MHz mit 7,3746 (6,3613) kbit rechnen auf deine 
wortzahl musst du selber kommen.
denk aber bloß nicht daran einen CAN so auzulasten, de bleibt kein platz 
mehr für fehler messages oder wiederholen der Daten.

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