1 / 66

Der CAN-Bus

Der CAN-Bus. mit Anwendungsbeispiel PowerCube. von Sandra Theidel Claus Lohrberg Sven Henkel. Inhalt. Einführung Prinzip der Nachrichtenübertragung Arbitration Kodierung Fehlerhandhabung allgemein Fehlerbehandlung Bit-Timing Technische Realisierung des CAN-Busses PowerCube.

emily
Download Presentation

Der CAN-Bus

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Der CAN-Bus mit Anwendungsbeispiel PowerCube von Sandra TheidelClaus LohrbergSven Henkel

  2. Inhalt • Einführung • Prinzip der Nachrichtenübertragung • Arbitration • Kodierung • Fehlerhandhabung allgemein • Fehlerbehandlung • Bit-Timing • Technische Realisierung des CAN-Busses • PowerCube

  3. 1. Einführung • Controller Area Network • entwickelt von Bosch Mitte der 80er Jahre • kostengünstiger serieller Bus

  4. 1.1 Anwendungen • Medizinische Systeme • Nautische Instrumente • Kontrollsysteme für Fahrstühle • Textilproduzierende Maschinen • Fertigungskontrolle • Landwirtschaftliche Maschinen

  5. 1.2 Vorteile des CAN-Busses • kleine Controller • kostengünstig • robust • leicht zu konfigurieren und zu erweitern • automatische Fehlererkennung

  6. 2. Prinzip der Nachrichtenübertragung • eindeutiger Nachrichten-Identifier • Keine direkte Adressierung • Multi-Casting

  7. 2.1 Multi-Casting • Versand an alle Knoten • Jeder Knoten prüft Relevanz der Nachricht

  8. 2.2 Frame-Typen • Data Frame • Remote Frame • Error Frame • Overload Frame • Interframe Spacing

  9. 2.2.1 Data Frame • überträgt Daten vom Sender zum Empfänger

  10. 2.2.2 Remote Frame • Anforderung an einen Knoten zum Senden eines Data Frame mit demselben Identifier

  11. 2.2.3 Error Frame • wird von einem Knoten bei Feststellung eines Fehlers gesendet

  12. 2.2.4 Overload Frame • Verzögerung zwischen zwei Data oder Remote Frames

  13. 2.2.5 Interframe Spacing • Trennung zweier Frames

  14. 3. Arbitration • Priorität wird durch Identifier bestimmt

  15. 4. Kodierung • Non-Return-To-Zero-Kodierung (NRZ) (nicht jedes Bit besitzt eine Flanke!) • Durch NRZ-Kodierung u.U. keine Flanken zur Synchronisation Stuffing

  16. 4.1 Stuffing • Nach 5 aufeinanderfolgenden gleichwertigen Bits wird ein anderswertiges eingefügt

  17. 5. Fehlerhandhabung allgemein falsche Ergebnisse entstehen durch: • Programmierfehler • zufällige Einflüsse und Störungen • z.B. elektromagnetische Felder

  18. Mechanismen • Wiederholung: • Bei Störungen: • Abbruch der Übertragung • Erneuter Versuch nach Wartezeit • Plausibilitätstest

  19. Plausiblilitätstest • Alle Ergebnisse werden auf Zulässigkeit geprüft • Wichtig: Ergebnisse müssen nicht richtig sein! => Ergebnisse könnten richtig sein • z.B. bei Rechtschreibprüfung: Baum/Raum

  20. Maskierungswahrscheinlichkeit • fehlerhafte Ergebnisse werden auf falsche, aber zulässige Variationen der Ausgabe abgebildet • Ziel: geringe Maskierungswahrscheinlichkeit • Vorraussetzung:wenig zulässige Worte gegenüber allen Ergebnissen

  21. Lösung • Erzeugung Fehlererkennender Codes: • Anhängen weiterer Bitstellen an das Codewort (Datenvektor) • Beispiel:

  22. Verbesserung • Informationsvektor der Länge r • wird auf Datenvektor der Länge w + r abgebildet • Abbildung geschieht pseudozufällig • Maskierungswahrscheinlichkeit beträgt 2-r

  23. Prüfkennzeichen • Zufällige Abbildung ist störend: • Erschwert Lesen und • Weitere Verarbeitung der Daten • Aufspaltung in Informationsvektor und Prüfkennzeichen

  24. Prüfkennzeichen • Informationsvektor ist unverschlüsselt kodiert • Methoden: • Einführung von einem Bit als Prüfkennzeichen • Zu jedem Informationsvektor wird zufällig ein Datenvektor/Prüfkennzeichen erzeugt: • Diese Tabelle liegt dem Sender und Empfänger vor

  25. Plausiblilitätstest • Veränderung eines oder beider Vektoren bedeutet: • Vektoren passen nicht mehr zusammen • Erneute Erzeugung des Prüfkennzeichens und Vergleich

  26. Polynomendivision • Zur Erzeugung von pseudozufälligen Vektoren

  27. 6. Fehlerbehandlung beim CAN-Bus • Fehlerarten • Fehlerhandhabung • Fehlersignalisierung

  28. 6.1 Fehlerarten • Bit-Fehler • Stuffing-Fehler • CRC-Fehler • Form-Fehler • ACK-Fehler

  29. 6.1.1 Bit-Fehler • Wert auf dem Bus stimmt nicht mit gesendetem überein • Ausnahmen • Arbitration Field • Ack-Slot

  30. 6.1.2 Stuffing-Fehler • Beim Empfang von 6 aufeinanderfolgenden gleichwertigen Bits (verstößt gegen Stuffing-Regel) 000000 Fehler

  31. 6.1.3 Weitere Fehlerarten • CRC-Fehler:Empfangene Prüfsumme (CRC) stimmt nicht mit berechneter überein • Form-Fehler:Fest vorgeschriebene Bits entsprechen nicht den erwarteten Werten • ACK-Fehler:Empfang einer Nachricht wurde nicht durch Setzen des ACK-Bits bestätigt

  32. 6.2 Fehlerhandhabung • Jeder Knoten befindet sich in einem von 3 Zuständen: • Error active • Error passive • Bus off • Zustand wechselt bei Fehlerhäufung

  33. 6.2.1 Fehlerzustände

  34. 6.3 Fehlersignalisierung • Je nach Knoten-Status wird Error-Active-Flag bzw. Error-Passive-Flag gesendet • Im Bus-Off-Status keine Fehlersignalisierung

  35. 7. Bit-Timing • Synchronisation der Controller durch 2 Verfahren: • Harte Synchronisation • Resynchronisation

  36. 7.1 Harte Synchronisation • Erfolgt am Anfang des Frames • Synchronisation auf die erste Signal-Flanke

  37. 7.2 Resynchronisation • Während des Empfangs eines Frames • Synchronisation durch Abgleich des internen Taktes auf die Flankenwechsel • Durch Stuffing Synchronisation mindestens alle 5 Bits

  38. 8. Technische Realisierung des CAN-Busses • Zahlreiche Medien als Bus verfügbar (1 oder 2 Kabelstränge, Funk, Glasfaser…) • Am häufigsten verwendet: ISO 11989-2 Standard

  39. CAN-Bus nach ISO 11898-2

  40. CAN-Bus nach ISO 11898-2 • Einsatz von Twisted-Pair-Kabeln zur Reduktion von elektromagnetischen Störungen • Endwiderstände zur Vermeidung von Signalreflektionen • Ermöglicht Buslänge von 40m bei 1 Mbit/s bis zu 1km bei 50 Kbit/s • Pegelbestimmung durch Spannungsmessung zwischen CAN_L und CAN_H • Rezessiv: UCAN_H – UCAN_L < 0.5V • Dominant: UCAN_H – UCAN_L > 0.9V

  41. Pegelbestimmung bei ISO 11898-2

  42. Fehlertoleranz bei ISO 11898-2 • Einsatz von „intelligenten“ Controllern ermöglicht im Störungsfall Wechsel auf einadrigen Bus (bei geringerer Übertragungsfrequenz) • Dadurch wird der Bus tolerant gegen Störungen wie Kabelbruch einer Ader oder Kurzschluss

  43. 9. PowerCube • Idee • Elektrisches Interface • Lokale Intelligenz • Komponenten • Beispiel

  44. 9.1 Idee • Baukastensystem • Dadurch hohe Flexibilität • Zu lösende Probleme • Mechanisches Interface • Elektrisches Interface • Lokale Intelligenz

  45. 9.2 Elektrisches Interface • Zentrale Stromversorgung • Anschluss über ein Kabel (Strom und Daten) • Mögliche Bus-Systeme: CAN-Bus, Profibus, RS485 und RS232

  46. 9.3 Lokale Intelligenz • 16-Bit-Mikrocontroller (C167) in jedem aktiven Element • Ermöglicht Steuerung auf zwei Arten • Direkte Steuerung (Drehung, Bewegung...) • Komplexe Befehle (Gehe auf Position x...) • Ermöglicht eine Statusabfrage • Watchdog-Logik • PID-Regler

  47. 9.3.1 PID-Regler • Proportional-Integral-Differential-Regler • Vergleicht den Ist- (x) und Soll-Wert (w) • Regelt über die Stellgröße (y) • z ist Störgröße die auf die Regelstrecke wirkt

  48. 9.3.2 Störantwort eines Reglers

  49. 9.3.3 Regler in PowerCube-Modulen • Regel- und Steuerkreise mit den Aufgaben: • Motorreglung • Überwachung prüft: • Endlage • Überstrom • Unterstrom • Temperatur des Motors • Temperatur der Endstufe • ... • Kommunikationsinterface • Rampengenerator

  50. 9.4 Komponenten • 8 aktive Elemente • Verschiedene passive Elemente (Verbindungs- und Adapterstücke)

More Related