CAN Babbling Idiot Protection

OP #4862438
Lesenswert?
• ▲
▼
Hallo zusammen,

das CAN (in meinem Fall 2.0B)-Protokoll ist ja per se recht 
fehlertolerant, insbesondere gegen "Babbling Idiots", also Knoten, die 
außer Kontrolle geraten und Mist senden.

Mir bekannt sind z. B. folgende Mechanismen:
- Transceiver schalten automatisch die Treiber ab, wenn sie länger 
dominante Pegel schalten als es bei der niedrigsten sinnvollen Bitrate 
zwischen den Stuff Bits auftreten könnte

- Controller müssen TEC und REC implementieren, um auf massiv 
auftretende korrupte Frames zu reagieren

- Einige Controller überwachen auch hardwareseitig die Kurzschlüsse der 
CAN-Leitungen gegen andere Potentiale und melden das an den µC


Jetzt die Frage:
Wird bei CAN-Controllern wie MCP2515 oder dem im AT90CAN integrierten 
hardwareseitig verhindert, dass man den Bus mit gültigen ID 0-Frames 
blockiert?

Ich hätte tatsächlich einen Anwendungsfall, einen Bus zu Testzwecken zu 
jammen, damit andere Knoten in die Frame Timeouts laufen, was ich mir 
theoretisch mit ID 0 Länge 0-Nachrichten gut vorstellen könnte. Geht das 
z. B. mit einem AT90CAN?
#4863022
Lesenswert?
• ▲
▼
Thomas S. schrieb:
> gültigen ID 0-Frames blockiert?

Wie soll das bei GÜLTIGEN ID 0 Frames funktionieren? Da kommt einer, 
wird verarbeitet und dann kommt der nächste, wieder ID 0, usw. Klar, da 
kann man in SW diverse Maßnahmen ergreifen, z.B. Timeouts. Aber der 
Controller kann sich ja nur auf den Empfang von gültigen Nachrichten 
konzentrieren. Wenn der Frame als solches ungültig ist, wäre das eine 
Sache des Controllers - alles andere ist Sache der Software.
OP #4863264
Lesenswert?
• ▲
▼
Harald A. schrieb:
> Wie soll das bei GÜLTIGEN ID 0 Frames funktionieren?

Ja, das hab ich mich auch gefragt. Aber wenn man einen Versuch wegwerfen 
muss, dann ja nicht wegen offensichtlicher Dinge, sondern wegen Fußnote 
17 auf Seite 377 im Datenblatt.
Also wollte ich sicherheitshalber nachfragen, ob ich mit einer 
hardwareseitigen Flooding Protection rechnen muss.

Danke für die Antwort!

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.