Automation und Prozessrechentechnik Sommersemester 2011 Datenverbindungen, Bussysteme 1 Prozessrechner Selbstüberwachung zu und von anderen Rechnern Prozess-rechner speziell Prozessrechner auch im Büro D A D A binäre I/O (Kontakte, Relais usw.) analoge I/O (Messwerte, Stellgrößen) 2
Beispiel für eine verteilte Automation 3 dezentrale Rechner in einem Schaltschrank 4
Motive und technische Voraussetzungen Kosten: A) zentraler Rechner, jeder Sensor über Kabel mit dem zentralen Rechner verbunden B) viele kleine Rechner, die lokal die Messwerte einsammeln und vorverarbeiten, dann über einen Datenbus an eine Zentrale leiten Heute ist B) billiger. Außerdem ist B) modularer, also flexibler an die Anforderungen und den Umfang einer Anlage anzupassen. Zuverlässigkeit, Verfügbarkeit: A) Bei Ausfall des zentralen Rechners ist eine große Anzahl von Automatisierungsfunktionen nicht verfügbar. Handbetrieb möglich?? B) Ein Ausfall beeinträchtigt nur einen Teil aller Funktionen. Handbetrieb eher möglich. 5 Beispiel für eine verteilte Automation mehrere Bildschirme Basissystem mit eigenem Bus Bussystem redundant Basissystem mit mehreren Bedientableaus Automatisierungsfunktionen aufgeteilt 6
Bussystem: Prinzip mehrere parallele Leitungen (meist zwei + ggf. Ausgleichs/Erdleitung), an die alle Teilnehmer parallel angeschlossen sind und nach definierten Regeln untereinander (binäre) Daten austauschen. Prinzip: Nur einer darf senden, alle dürfen hören. 7 Bussystem: Prinzip Das Regelwerk für ein Bussystem wird Protokoll genannt. Es enthält Regeln z. B. zu: Leitungsart, Spannungen und Ströme, was ist 0 und was ist 1. Wie wird eine Reihe von Bits übertragen, was passiert bei Übertragungsstörungen? Wie wird die Bedeutung der Daten definiert?... Wie wird geregelt, wann wer senden darf? Was passiert, wenn ein Teilnehmer ein- oder ausgeschaltet wird?... Es ist also sehr viel festzulegen, das muss geordnet werden. 8
Idee der Schichten 1 A schreibt einen Brief an B Sprache, Terminologie,... Zeichensatz (Lateinisch, Sütterlin, Brailleschrift) gibt ihn zur Post erhält ihn von der Post Müssen sich A und B darum kümmern, oder auch nur wissen, wie die Post den Briefumschlag befördert? (Bahn, Lkw,...)? Nur die zugesicherte Leistung ist wichtig: Kommt am nächsten Tag an, wenn... Muss (oder darf) die Post wissen, was sich in dem Briefumschlag befindet? Nur die spezifizierten Beförderungsbedingungen müssen eingehalten sein! 9 Idee der Schichten 2 A schreibt einen Brief an B Sprache, Terminologie,... Zeichensatz (Lateinisch, Sütterlin, Brailleschrift) stellt Dienst zu Verfügung Die Post kann ihre Beförderungsarten ändern, ohne dass das der Nutzer des Dienstes merkt, sofern der Dienst erbracht wird. Sendendes Postamt Empfangendes Postamt diverse Verabredungen zu Terminen, Lademöglichkeiten Bundesbahn, Fluggesellschaften... 10
Schichten-Modell Die verschiedenen Regeln innerhalb eines Protokolls werden in Schichten eingeteilt Sender Empfänger Methode 1, um ein Byte zu übertragen Wie wird Block von Bits übertragen? Methode 1, um ein Byte zu übertragen Methode 1, um ein Bit zu übertragen Methode 2, um ein Bit zu übertragen Wie wird physikalisch ein Bit übertragen? Diese Methode 1 kann durch Methode 2 ersetzt werden, ohne dass die übergeordneten Schichten davon beeinflusst sind! Methode 1, um ein Bit zu übertragen Methode 2, um ein Bit zu übertragen 11 ISO-OSI-Referenzmodell 1 Das Referenzmodell ist eine Art Gliederung für die Spezifikation von Datenübertragungs-Protokollen, 7 Schichten sind definiert. Interface 3/4 Schicht 3 Interface 2/3 Schicht 2 Interface 1/2 Schicht 1 Schicht 3 Protokoll Schicht 2 Protokoll Schicht 1 Protokoll Schicht 3 Schicht 2 Schicht 1 physikalisches Medium Es sind nicht immer Aufgaben auf allen Ebenen zu erfüllen, deshalb sind bei vielen Protokollen einzelne Schichten nicht vorhanden. 12
ISO-OSI-Referenzmodell 2 7: Application Layer, Verarbeitungsschicht (Anwendungsschicht, Anwenderebene): File- Transfer, E-mail, Virtual Terminal (Remote login), Directory usw. 6: Presentation Layer, Darstellungsschicht (Datendarstellungsschicht, Datenbereitstellungsebene): Standardisierte Datenstrukturen (u. a. Kodierung, Kompression) 5: Session Layer, Kommunikationsschicht (Kommunikationssteuerungsschicht, Steuerung logischer Verbindungen, Sitzungsebene): Hilft Zusammenbrüche der Sitzung und ähnliche Probleme zu beheben 4: Transport Layer Transportschicht (Ende-zu-Ende-Kontrolle, Transport-Kontrolle): Stellt höheren Schichten zuverlässige Ende-zu-Ende-Verbindungen (zwischen Sender und Empfänger) zur Verfügung 3: Network Layer, Vermittlungsschicht (Paketebene, Netzwerkebene): Routing der Datenpakete 2: Data Link Layer, Sicherungsschicht (Verbindungssicherungsschicht, Verbindungsebene, Prozedurebene): Aufteilung des Bitstromes in Einheiten (Pakete) und Austausch dieser Einheiten unter Anwendung eines Protokolls 1: Physical Layer, Bitübertragungsschicht (physikalische Ebene): Übertragung des Bitstromes über einen Kommunikationskanal. Standardisierung der Netzwerk-Leitungen und -Anschlüsse sowie ihrer physikalischen Eigenschaften. 13 Internet-Protokollstack als Beispiel 14
Einige Feldbussysteme FILBUS BITBUS WorldFIP PROFIBUS-DP CAN typ. Geschwindigk. 375 Kbit/s 375 Kbit/s 1 Mbit/s 500 Kbit/s bis 1 Mbit/s max. Anzahl Knoten mit Verstärker 250 250 256 127 ohne Verstärker 32 32 64 32 30 max. Entfernung mit Verstärker 13,2 km 13,2 km >10 km ohne Verstärker 1,2 km 1,2 km 2 km 100 m 12 Mb/s 40m 1Mb/s 1,2 km 94 Kb/s 1km 20 Kb/s Zugriffsverteilung Master/Slave Master/Slave Bus Arbiter Token passing CSMA Kabeltyp Twisted pair Twisted pair Twisted pair Twisted pair Twisted pair Header Datengröße 1 bis 256 Byte 1 bis 13 oder 52 Byte 1 bis 128 Byte 250 Byte 8 Byte Vorteile Ereignisgesteuerte I/0 Software in Modulen Sehr verbreitet Knoten programmierbar Verteilte Datenbasis, sehr deterministisch Sehr verbreitet, leistungsfähiges Signalisierungs- Verfahren kostengünstig, für Kurzmitteilungen geeignet Hauptanwendungen Fernabfrage I/0 Datenerfassung intelligente I/0 Module Prozesssteuerung Prozess- und Maschinensteuerung in Echtzeit Datenaustausch zwischen SPS, Fabriken Sensoren und Stellglieder, Kfz-Bereich 15 Zur Signalausbreitung Busabschluss! 1 Bit 20 m v 0,7 c 200m/ s Beispiel: 10 MBit/s, also 1 Bit ist 20 m lang. Es befinden sich somit immer mehrere Bits hintereinander auf dem Weg vom Sender zum Empfänger. Max. Länge ist deshalb oft abhängig von Datenrate. 16
Zum Busabschluss 1 Wegen Induktivität und Kapazität des Kabels bedeuten Strom und Spannung Energie 1 2 W L i 2 1 2 W C u 2 Die räumliche Bewegung eines Bits ist somit die Bewegung von Energie (= Leistung). An einem offenen Kabelende ist i = 0, also P = 0. Das Energie-Paket wird reflektiert. (Bei einem Kurzschluss ist u = 0). 17 Zum Busabschluss 2 Durch die Reflektion ist die Spannung am Empfänger die Überlagerung des Original-Signals und des reflektierten Signals. Also: Signal unbrauchbar! von S gesendet Abhilfe: Die Leitung muss mit einem Widerstand abgeschlossen werden, der genau zu der Leitung passt und die ankommende Energie absorbiert: von E gelesen Wellenwiderstand (Der Wellenwiderstand hat nichts mit dem ohmschen Widerstand der Leitung zu tun!) P=u i Z ' L C Z = 50... 120 ' P=u i 18
Asynchrone serielle Datenübertragung (UART) Basis für viele Feldbussysteme (z. B. auch Profibus), aber auch Punkt-zu-Punkt-Verbindungen (z. B. COM-Port am PC) verschiedene Bit-Definitionen gebräuchlich, z. B.: Standard RS232 (nur für Punkt-zu-Punkt-Verbindungen) Empfänger Sender U U Sender Empfänger 0 : + 3 V < U < + 15 V 1 : - 15 V < U < - 3 V Sender Empfänger Standard RS485 (für Bussysteme) elektrisch symmetrisch Tristate Bitdefinition durch U, I 19 Asynchrone serielle Datenübertragung (UART) 1 Asynchron: Es gibt kein gemeinsames Taktsignal. Übertragung byteorientiert a) Start mit einer 0-1 -Flanke b) Datenbits (Start LSB) c) Prüfbit (Parity) ggf. d) Abschluss mit 0 e) frühester Beginn des nächsten Startbits 20
Asynchrone serielle Datenübertragung (UART) 2 Zwischen Sender und Empfänger muss vereinbart sein: Datenrate bit/s (entspricht Baudrate) LSB zuerst Anzahl Datenbits (meist 8) Prüfbit: Gerade oder ungerade Parität (Gesamte Anzahl der 1 ) Anzahl Stoppbits (meist 1) Der Empfänger startet mit der erkannten 0-1 -Flanke einen Taktgeber mit der vereinbarten Bitrate. Bei erstmaligem Einschalten eines Gerätes oder nach Störungen könnte eine 0-1 -Flanke innerhalb der Daten fälschlicherweise als Start erkannt werden. Meisten passen dann aber Parity und Endebit nicht. 21 Profibus 1 Profibus: Feldbus, 1989 von einem Firmenkonsortium definiert, genormt in DIN 19245, IEC 61158 und IEC 61784. Zweidrahtleitung (+ Ausgleichsleitung), RS485 Teilnehmer 1 Teilnehmer 2 Teilnehmer n Grundsatz: Es darf zu jeder Zeit nur ein Teilnehmer senden, alle dürfen hören. aktiver Teilnehmer: passive Teilnehmer: senden ungefragt senden nur gefragt Einfachster Fall: Es gibt einen Master am Bus, der der aktive Teilnehmer ist (Master/Slave-Verfahren). 22
Profibus 2 Zweidrahtleitung (+ Ausgleichsleitung), RS485 Teilnehmer 1 Teilnehmer 2 Teilnehmer n Jeder Teilnehmer hat eine feste Adresse in seinem Speicher. Der Master sendet an einen Slave (z. B. einen Sensor), von dem er Daten abfragen möchte, eine Anforderung. Der Slave antwortet darauf mit den gewünschten Daten. 23 Profibus: Beispiel für ein Telegramm SYN: SD3: DA: SA: FC: DATA_UNIT: FCS: ED: mindestens 33 Bit Ruhe Startbyte 3, (3 = Formatnr. des nachfolgenden Teils) Zieladresse (Destination) Absenderadresse (Source) Kontrollbyte Datenfeld, feste Länge 8 Byte (L = 11 Byte) Prüfbyte (entsprechend Parity) Endebyte 24
Profibus: Zum Zeitverhalten Jeder Teilnehmer sieht sich die Adresse DA an. Nur der angesprochene Teilnehmer antwortet. Zeitverhalten: Anfrage des Masters Slave bereitet Antwort auf Slave sendet Antwort oder Abbruch wegen Zeitüberschreitung bei n-teilnehmern wird dies n-fach wiederholt. Somit ist die maximale Verzögerung z. B. für eine Alarmmeldung eines Slaves gegeben. 25 einige Zuteilungsverfahren Master/Slave: Ein fester Master koordiniert alles. Bei Ausfall des Masters ist keine Kommunikation mehr möglich. Sehr übersichtliches und robustes Verfahren. Token passing: Es wird eine Spielmarke zwischen den Teilnehmern herumgereicht. Der Inhaber der Spielmarke ist der aktuelle Master. Es kann eine maximal zulässige Zeit festgelegt werden, für die ein Teilnehmer den Token halten darf. Bei Ausfall des aktuellen Masters: Generierung eines neuen Token. Collision detection: (z. B. Ethernet) Jeder darf senden, wenn er sieht, dass es keine Aktivität auf dem Bus gibt. Jeder liest seine gesendete Nachricht mit und erkennt, wenn bei gleichzeitigem Senden eine Verfälschung eingetreten ist. Dann Wiederholung nach einer Zeit, die. z. B. durch einen Zufallsgenerator bestimmt ist. Collision avoidance: (z. B. CAN) Im Unterschied zu Collision detection gibt es ein dominantes Zeichen, z. B. 0. Ein paralleler Sendeversuch wird nur von demjenigen erkannt, der zuerst eine 1 senden möchte, dieser verzichtet dann. Das (dominante) Telegramm bleibt unverfälscht. Zeitmultiplexverfahren: (z. B. TTP) Jeder Teilnehmer hat einen bestimmtes Zeitfenster; Uhren werden dazu genau synchonisiert. 26
Lichtwellenleiter: Arten übliche Werte: Kern: 50 m Durchmesser Mantel: 125 m Durchmesser übliche Werte: Kern: 9 m Durchm. Wellenlänge: 660, 850, 1300, 1550 nm (Infrarot) 27 Lichtwellenleiter: Bandbreite Problem bei Multimodefasern: Die einzelnen Wege sind unterschiedlich lang. Folge: Kurze Impulse fließen ineinander. Frequenz Länge ist Kenngröße gesendet nach etwas Länge nach großer Länge 20 MHz km 1 GHz km >10 GHz km 28
Lichtwellenleiter: Bussystem Zur Übertragung von Daten wird je Richtung eine Faser eingesetzt. Eine physikalische Busstruktur gibt es nicht. Logisch wird ein Bus so realisiert, dass jeder Teilnehmer die empfangenen Signale mit seinem Sender weiterleitet. 29