Home Lehre Forschung Publikationen

 CAN Academy  /   Summer School 2015

Aktuelles

30.07.15
Termine und Räume
Die CAN Academy findet vom 7.9. bis 9.9 statt. Eine Ankündigung gibt es auch im AoR.
.
30.07.15
Anmeldung
Hier geht es zur Umfrage. Wer an der CAN Academy teilnehmen möchte, sollte sich dort bitte eintragen
.

CAN Academy

In Zusammenarbeit mit der itk Engineering AG wird im Rahmen der Summer School zum zweiten Mal die CAN Academy angeboten. Die Teilnahme ist freiwillig. Das Angebot richtet sich in erster Linie an Studierende der Informatik (Bachelor oder Master), die Spaß/Interesse an der Programmierung von Microcontrollern haben.

... ?! CAN?

Controller Area Network (CAN) ist ein sehr populärer Feldbus. CAN findet Verwendung in der Automobilelektronik (kaum ein moderner PKW oder LKW kommt ohne CAN aus), in der Automatisierungstechnik (CANOpen in Produktionsanlagen, aber auch Gabelstaplern), in der Luft- und Raumfahrt (CANaerospace bei der NASA) und in der Medizintechnik (z.B. Ultraschall- und Röntgengeräte). Aufgrund der weiten Verbreitung sind Kenntnisse über CAN für Ingenieure sehr nützlich, gleichzeitig eignet sich CAN aber auch gut als Beispiel zur Erläuterung von Grundlagen der Vernetzung, welche auch für Nachrichtentechniker und Informatiker nützlich sind. Die CAN-Academy vermittelt praxisnah Grundkonzepte von CAN, welche in jeder der oben genannten Branchen direkt anwendbar sind.

Inhalt (vorläufig)

Die CAN Academy findet in einem Block an drei aufeinander folgenden Tagen statt. Theorie wechselt mehrmals am Tag mit praktischen Laborübungen. Die Veranstaltung ist als Workshop konzipiert, nicht als Frontalveranstaltung.
  • 1. Tag: Grundlagen und OSI Layer 1
    • Überblick über Netzwerke und Busse mit Schwerpunkt Feldbusse
    • Einführung in das OSI/ISO Referenzmodell
    • Vorstellung und Inbetriebnahme der Laborumgebung
    • Organisation der Laborgruppen
    • Theorie und Praxis differentieller Übertragung
    • Laborübung: Pegel und Störungen bei CAN
    • Aufbau von CAN-Frames (Data, RTR, und Error), Arbitrierung und Bit-Stuffing
    • Laborübung zu CAN-Frames
  • 2. Tag: Sicherheit & Bandbreite
    • Überblick zu funktionaler Sicherheit
    • Sicherheitsfeatures im CAN-Protokoll: Was ist ein CRC?
    • Typische zusätzliche Sicherheitsfeatures in Anwendungen mit CAN
    • Laborübung: Implementierung einer sicheren Ende-zu-Ende CAN-Übertragung
    • Brutto- und Netto-Bandbreite bei CAN
    • Das Konzept der Buslast
    • Laborübung: CAN-Übertragung mit hoher Bandbreite
  • 3. Tag: Latenzen & Timinganalyse
    • Latenzen: warum Bandbreite nicht alles ist
    • Interaktion von Latenzen mit funktionaler Sicherheit
    • Analyse des zeitlichen Verhaltens von CAN basierten Systemen
    • Laborübung: Optimierung einer Anwendung auf niedrige Latenz
    • Bandbreite und Latenz: die Grenzen des Buslastkonzepts
    • Routing: Nutzen und Grenzen von Bausaufteilung mit CAN-Gateways
    • Laborübung: Implementierung eines CAN-Gateways

"Hands on experience": Bei den Laborübungen werden ARM-Microcontrollerboards vom Typ STM32F4DISCOVERY in C programmiert. Als Echtzeitbetriebssystem wird dabei FreeRTOS auf den Controllerboards eingesetzt.

Zeitplan (vorläufig)

TagZeitRaumInhalt
Mo, 7.9.9:00-12:15C405Seminar/Vortrag
15:00-17:00C305Praxis/Labor
Di, 8.9.9:00-12:15C405Seminar/Vortrag
15:00-17:00C305Praxis/Labor
Mi, 9.9.9:00-12:15C405Seminar/Vortrag
15:00-17:00C305Praxis/Labor

Material

Dokumente

0Anleitung zu den Übungen
1Benutzte Pins des STM32Discovery Board
2CAN-Spezifikation V2.0 (BOSCH)
3Microchip Application Note AN228A: CAN Physical Layer Discussion
4Microchip Application Note AN713: Controller Area Network (CAN) Basics
5Microchip Datenblatt: CAN Transceiver MCP2551
6STM32F4DIS-BB Quick Start Manual
7STM32F4DIS-BB User Manual
8STM32F4DISCOVERY User Manual
9STM32F4xx Microcontroller Reference Manual
10Checkoway et al: Comprehensive Experimental Analyses of Automotive Attack Surfaces
11Koscher et al: Experimental Security Analysis of a Modern Automobile
12Microcontrol: Einführung in CANopen

Downloads

0CAN Tracer Schnüffel(CAN-Schnueffel.tgz)
1Tag 1 Versuch 1: Pegel_und_Störungen(Tag_1_01_Pegel_und_Stoerungen.tgz)
2Tag 1 Versuch 2: Bitstuffing und Datenkodierung(Tag_1_02_Bitstuffing_und_Datenkodierung.tgz)
3Tag 2 Versuch 1:Buslast Sendeseite Template(Tag_2_01_Buslast.tgz)
4Tag 2 Versuch 2:Buslast Empfängerseite Template(Tag_2_02_Buslast_rec.tgz)
5Tag 2 Versuch 3:Funktionale Sicherheit Grundstand(Tag_2_03_Funktionale_Sicherheit_Teil1.tgz
6Tag 2 Versuch 3:Funktionale Sicherheit mit Alive Counter(Tag_2_03_Funktionale_Sicherheit_Teil2.tgz)
7Tag 2 Versuch 3:Funktionale Sicherheit mit Alive Counter und Application CRC(Tag_2_03_Funktionale_Sicherheittemp.tgz)
8Tag 3 Versuch 1: Bus Latenzen(Tag_3_01_Latenzen.tgz)
9Tag 3 Versuch 2: Gateway zyklisch(Tag_3_02_Gateway_zyklisch.tgz)
10Tag 3 Versuch 3:Gateway sofort(Tag_3_03_Gateway_sofort.tgz)
11Tag 3 Versuch 4:Gateway mit Interrupt(Tag_3_04_Gateway_ISR.tgz)