Kommunikation Zsmfsg. - FSMB
Transcrição
Kommunikation Zsmfsg. - FSMB
Communication: RTS haben bestimmte Voraussetzungen für die Kommunikation: -‐ Deterministische Latenzen -‐ Geringen Jitter -‐ Zugesicherte Bandbreite -‐ Kurze Latenzen, effiziente Protokolle -‐ Fehlertoleranz Kriterien zur Auswahl eines Protokolls: -‐ Maximale Bandbreite -‐ Maximale Größe (Länge der Verbindung, Anzahl der Knoten) -‐ Kosten, Verfügbarkeit OSI beschreibt sieben Schichten für Kommunikationsprotokolle, in RTS sind jedoch typischerweise nur drei Schichten implementiert (Application-‐Layer, Data-‐Link-‐ Layer, Physical-‐Layer) Das Physical-‐Layer beschreibt die physische Übertragung des Bit-‐Stroms. Zwei wichtige Encodings sind: NRZ (Non-‐Return-‐To-‐Zero) Je nach Bit liegt HIGH oder LOW an der Leitung an Nachteil: Keine indizierbare Änderung bei längeren Serien gleicher Bits. LÖSUNG: Sender und Empfänger müssen in sync sein ODER: BIT-‐STUFFING: nach einer definierten Länge gleicher Bits (Stuff-‐Width) wird ein Bit eingefügt welches dem vorhergehenden Bit entgegengesetzt ist. (bspw. CAN (stuff-‐width = 5)) Manchester 0: Übergang von LOW nach HIGH 1: Übergang von HIGH nach LOW Das Data-‐Link-‐Layer beschreibt Überprüfungs-‐Kontrollen wie Flow-‐Control, Media-‐ access-‐controll und die Fehlererkennung (Checksummen, Paritätsbits) -‐ Media-‐Access-‐Control (MCA) dient der Auswahl eines Knotens zur Kommunikation o Deterministische MCA Central-‐Control: Master-‐Slave communication Ein Master wählt periodisch einen Slave aus (bspw. SPI) Distributed-‐Control: • Token-‐Based Ein Token wird von Knoten zu Knoten gereicht und berechtigt diesen zu Kommunikation • Time-‐Based (bspw. TTA) Jeder Knoten erhält time-‐slices (Zeitabschnitte) welche ihn zur Kommunikation berechtigen (Time Division Multiple Access – TDMA) o Random MCA Carrier Sense Multiple Access / Collision Detection (CSMA/CD) Nicht kollisionfrei Kollisionen erkannt und durch ein Jam-‐Signal signalisiert Carrier Sense Multiple Access / Collision Avoidance (CSMA/CA) (bspw. CAN) Kollisionfrei Es wird eine Vermittlungsphase (arbitration-‐phase) zu beginn der Kommunikation genutzt um Knoten höherer Priorität Vorrang zu gewähren Das Application-‐Layer beschreibt anwendungsspezifische Services (FTP, SSH, VoIP...) Wichtige Netzwerktopologien sind Star, Bus und Ring. In RTS werden zumeist Bus-‐ Topologien verwendet, da diese geringen Verdrahtungsaufwand haben und Knoten leicht hinzugefügt oder getrennt werden können. SPI (Serial Peripheral Interface) -‐ Benutzt mindestens vier Leitungen (MOSI, MISO, SCLK, SS) -‐ Ist ein Master-‐Slave Bussystem -‐ Vollduplex (MOSI (Master Out Slave In), MISO (Master In Slave Out)) -‐ Typische Übertragungsfrequenzen 1 -‐ 100 MHz TTA (Time-‐Triggered Architecture) -‐ TTP/A: zeitgesteuertes Bussystem für low-‐cost Wandler und nicht-‐ sicherheitsrelevante Systeme o Master/Slave-‐ System o Kommunikation ist in Rounds und Slots aufgeteilt Jede Round hat eine definierte Sequenz von Slots (durch Round Descriptor List RODL) -‐ TTP/C: fehlertolerantes, zeitgesteuertes Protokoll für harte RTS (bspw. X-‐by-‐Wire) o Benutzt eine globale Zeitbasis um die Kommunikation zwischen den Knoten zu synchronisieren o Benutzt zwei Kanäle zur Redundanz und Fehlertoleranz o 25 MBit/s Bandbreite pro Kanal o Hohe Nettotransferrate (80 – 90% Effizienz) o Bus-‐Guardians zur Kontrolle der Kommunikation eines Knotens mit dem Bus, daher robust gegen „babbling idiots“ o Bus-‐ oder Stern-‐Topologie o Message Descriptor List (MEDL) beinhaltet Zeitpunkte an denen Daten gesendet und empfangen werden können und die Adresse des Senders/Empfängers CAN (Controller Area Network) -‐ Multi-‐Master brodcast Serial bus -‐ Bus-‐Topologie -‐ Nutzt CSMA/CA o Vermittlungsphase nutzt ID (Länge: 11 oder 29 Bit) zu Kollisionsvermeidung (CA) -‐ -‐ o Übertragene Bits sind dominant (0) oder rezessiv (1) o Der Knoten welcher als erstes ein rezessives Bit (1) in der ID hat ist niedrig priorisiert und stoppt die Übertragung (Dadurch ist Starvation möglich) Nachrichten-‐basiert (jede Nachricht hat eine UID) Bitraten abhängig von der Buslänge o 40 m 1 MBit/s o 100 m 500 kBit/s o 500 m 125 kBit/s Nutzt NRZ-‐L mit Bit-‐Stuffing (stuff-‐width=5) -‐ Realtime-‐Ethernet -‐ Entwickelt mit dem Ziel bestehende Hardware in RTS zu benutzen (günstige Hardware, hohe Verfügbarkeit, Benutzung eventuell bestehender Infrastrukturen) -‐ Ethernet (IEEE 802.3) benutzt CSMA/CD o Bei einer Kollision stoppt der Knoten, sendet das Jam-‐Signal, wartet und versucht erneut zu senden -‐ EtherCAT o Verwendbar für hard und soft RTS o Konform mit Ethernet-‐Standard o Nachrichten werden vom Master gesendet und von Slaves weitergeleitet o Jeder Slave extrahiert die relevanten Daten oder fügt neue Daten ein o Eingehende Nachrichten werden „on-‐the-‐fly“ bearbeitet (reduziert Latenz) -‐ Profinet o Verschiedene Protokolllevel mit verschiedenen Reaktionszeiten TCP/IP: ~100 ms Real-‐Time Protocol: < 10 ms Isochronous Rea-‐Time (IRT): < 1 ms • benutzt definierte Zeitslots zur Übertragung von Echtzeitdaten, ansonsten wird standard Ethernet genutzt -‐ Time-‐Triggered Ethernet o Verwendet eine globale Zeitbasis zur zeitgesteuerten Kommunikation o Drei Transfertypen werden unterstützt: Time-‐Triggered (TT): Werden zu definierten Zeiten gesendet Rate-‐Constrained (RC): Garantierte Bandbreite, verwenden nicht die globale Zeitbases Best-‐Effort (BE): verwenden die übrige Bandbreite Flexray -‐ 10 MBit/s Bandbreite -‐ Zeit-‐ und Eventgesteuerte Datenpakete -‐ Fehlertolerant (redundante Kanäle, bspw. für X-‐by-‐wire) -‐ Typische Topologie: Active Star (Bus oder hybride Topologien möglich) -‐ Ein oder Zwei Kanäle (je nach Fehlertoleranz-‐/Redundanzanforderung) -‐ Kommunikation ist aufgeteilt: -‐ o Statisch: Deterministisches CMA (TDMA) o Dynamisch: Nicht Deterministisches CMA (Flexible TDMA) Daten-‐Frame besteht aus drei Teilen: Header, Payload & Trailer o Variable Payload von 0 bis 254 Byte o CRC (Cyclic Redundancy Check) über Frame-‐ID und Payload-‐ Length (Payload-‐Length = Payload Data Bytes / 2) o Frame-‐ID (11 Bit) von 1 – 2047, 0 ist ungültig