Automation und Prozessrechentechnik Sommersemester 20 Prozess I/O Prozessrechner Selbstüberwachung zu und von anderen Rechnern Prozessrechner speziell Prozessrechner auch im Büro D A D A binäre I/O (Kontakte, Relais usw.) analoge I/O (Messwerte, Stellgrößen) 2
Interpretation der Daten Das könnte z. B. sein: Anleitung für einen besonderen (Segler) Knoten, Plan für einen Weg in einem Park,... Symbol für einen Laut wie in Guten Tag, also ein Buchstabe uten Tag! Fazit: Die Interpretation der Form hängt vom Kontext, einer Fragestellung, ergänzenden Informationen, Vereinbarungen usw. ab! 3 Interpretation der Daten 2 (am Beispiel eines Byte) D7...D0 Interpretation MSB D7 D6 D5 D4 D3 D2 D D0 LSB 8 logische Zustände positive ganze Zahlen 0...255 positive ganze Zahlen 0...99 = TRUE (z. B.) 7 6 0 z D7 2 D6 2...D0 2 (Binärzahl) 3 0 3 0 7 4 3 0 z D 2... D 2 0 D 2... D 2 (BCDZahl) ganze Zahlen 28... 27 0 = $7F = 27 0000 000 = $0 = = $FF = 000 0000 = $80 = 28 (2er Komplement) 4
Hexadezimalzahlen Die Darstellung von Binärzahlen (0000000...) ist unübersichtlich und lang. Deshalb werden mehrere Bits zusammengefasst. Heute hat sich das hexadezimale System durchgesetzt. Meist wird das $ als Kennung benutzt. Hex. Dez MSB LSB $0 0 0 0 0 h D3 8D2 4D2D0 h 8420 4 $E $6 $E $6E $... $9 $A $B $C $D $E $F... 9 0 2 3 4 5 5 Interpretation der Daten 3 (am Beispiel eines Byte) D7...D0 Interpretation MSB LSB D7 D6 D5 D4 D3 D2 D D0 Alphanumerische Zeichen Mikroprozessor Befehle z. B. ASCIITabelle: $4 = A, $42 = B usw. je nach MikroprozessorTyp Gleitkommazahlen Meist 4.. 8 Byte, besondere Vorschrift, z. B. IEEE Man kann es einem Bitmuster nicht ansehen, was gemeint ist. Das jeweilige Programm muss wissen, welche Bedeutung ein in einem Speicher abgelegtes Bitmuster hat. 6
Selbstüberwachung Selbstüberwachung zu und von anderen Rechnern Prozessrechner D A D A binäre I/O (Kontakte, Relais usw.) analoge I/O (Messwerte, Stellgrößen) 7 Rechner, prinzipieller Aufbau Takt, Resetlogik watchdog P (Mikroprozessor) Bussystem ROM Programme feste Daten RAM Arb.speicher Zwischenerg. I/O Prozess I/O Monitore usw. Kontrollbus: Typ 4..0 Signalleitungen Adressbus: Typ. 6..32 Bit breit Datenbus: Typ...4 Byte breit 8
Selbstüberwachung In vielen Fällen reicht ein einfacher Watchdog aus. Dieser ist wie ein (Byte) Speicher an den Adress und Datenbus angeschlossen. Er enthält einen Zeitgeber (unabhängig vom Systemtakt!) der jedes mal auf null gestellt wird, wenn in die Speicherzelle ein bestimmtes Bitmuster geschrieben wird. Wenn der Zeitgeber einen bestimmten Wert überschreitet, wird daraus geschlossen, dass der Mikroprozessor nicht mehr geordnet arbeitet. Je nach Anwendung erfolgt dann nur ein Alarm oder auch eine Abschaltung aller Ausgangssignale zum Prozess. 9 Interface zum Prozess Selbstüberwachung zu und von anderen Rechnern Prozessrechner D A D A binäre I/O (Kontakte, Relais usw.) analoge I/O (Messwerte, Stellgrößen) 0
Binäre (digitale) Eingabe Prinzip einer Eingabe für einen Schalter UB Ankopplung an Bus wie Speicher 5 Adressen, also 2 5 =32 Byte = 256 Kontakte (z. B.) 256 Kontakte Bit:... 0 oft durch Optokoppler galvanisch getrennt: A0 D0 A4 CE Byte D7 Binäre (digitale) Ausgabe Prinzip einer Ausgabe für eine Lampe UB Ankopplung an Bus wie Speicher 5 Adressen, also 2 5 =32 Byte = 256 Ausgaben (z. B.) 256 Kontakte Bit:... oft galvanisch getrennt: 0 A0 A4 256Bit Pufferspeicher D0 Byte R/W CE D7 2
DigitalAnalogWandler Prinzip 2R 4R 2 n R R Z n Z0 U a (Tatsächlich wird das Netzwerk anders gestaltet) R z n z z U 0 a.. R URef R n n ges 2 R 2 R 2 R z x = : Schalter geschlossen z x = 0: Schalter geöffnet n Ua zn2.. z2z0 U n Ref 2 Ziel erreicht: Eine Zahl aus n Bit (z 0.. z n ) wird in eine Spannung etwa (0... ) gewandelt. 3 DigitalAnalogWandler Beispiel n = 8, = 0 V D A 2R 4R 2 n R R Z n Z0 U a n Ua zn2.. z2z0 U n Ref 2 z n...z 0 dezimal Ua 0000 0000 0 0 V 0000 000 0V * /256 = 0,039 V... 2 n 2 n2 U a /2 n *URef 0 254 0V *254/256= 255 0V *255/256= 9,929 V 9,9609 V 0 0 2 2 n2 2 n z 4
ADWandler: Parallelwandler (Flash...) U E *3/8 /8 R*3/2 R R U E > 5/8 U E > 3/8 ODER Binäre Daten U E > /8 2 0 UND z R/2 4 R Komp. 2 0 0 0 0 0 0 0 z 3 2 0 U E 0 2/8 4/8 6/8 5 ADWandler: Parallelwandler (Flash...) 2 Vorteil: Sehr schnell (ns) Nachteil: Je Stufe ist ein Komparator erforderlich In der (Anlagen) Automatisierung ungewöhnlich. 6
ADC: Wägeverfahren (sukzessive Approximation) U E D Schaltwerklogik Takt DA n Z U E /4 /8 /6 Üblicher Wandler für viele Automatisierungsaufgaben 2 4 Bit Auflösung üblich Wandelzeit 4..0 s 0: U E = /6* /2 Wandelzeit D 0 t 7 Sample & Hold Eine Änderung des zu wandelnden Signals während der Wandelzeit kann zu Konfusion führen: U E 0 0 t U U S E U E U S s offen während Wandlung t 8
SigmaDelta Wandler x y Komp. d Takt Bitstrom Digitaler Filter n "0" =>0,0 "" =>,0,0 0,0 Takt y x rel. Anteil ist proportional dem Messwert x d t Demo 9 SigmaDelta Wandler 2 x y rel. Anteil ist proportional dem Messwert x Komp. d "0" =>0,0 "" =>,0 Takt Bitstrom Digitaler Filter n Beispiel AD7722, 6 Bit Wandler neueste älteste 6 2,5 0 s 6 2,5 0 s 32 6 2,5 0 s 64 Mittelwert 384 bit Mittelwert (alle 32 Takte) 2 Worte 5 Worte Mittelwert ausgeben = 95,3 khz 20
SigmaDelta Wandler 3 x y Komp. d Takt Bitstrom Digitaler Filter n "0" = >0,0 "" = >,0 Ursprünglich für Audiotechnik entwickelt, weil u. a.: Der kritische analoge Teil (Integrierer) wird unabhängig von x immer im gleichen Bereich betrieben, es gibt also keine Probleme mit Nichtlinearitäten. Die erforderliche Filterung von x (analog!) kann entfallen und ist ersetzt durch den digitalen Filter. (AbtastTheorem von Shannon, s. u.) Inzwischen auch in der Automatisierungstechnik eingesetzt. 2 SigmaDelta in einem IC zur Batterieüberwachung Verbraucher MUX: Multiplexer = Messstellenumschalter Strom I U B R Shunt U~I U~U B... 22
Schutzbeschaltungen Alle Eingänge eines Prozessrechners müssen so geschützt sein, dass eine Schädigung durch Fehler in den Sensoren oder durch fehlerhafte Installation möglichst vermieden oder auf einen kleinen Bereich begrenzt wird: Schutz vor zu hohen Spannungen Schutz vor falscher Polung Die Funktion darf durch Störspannungen (bis zu einer angemessenen Größe) nicht beeinträchtigt sein: transiente Spannungen (z. B. Schaltspannungen), höherfrequente Signale (Funkgeräte, Handy usw.) Je nach Anwendung sind auch Sicherheitsbeschaltungen erforderlich, damit bei einem Fehler im Prozessrechner eine Gefährdung ausgeschlossen ist. Beispiel: Messung des Füllstandes in einem Kraftstofftank: Auch bei einem Fehler im Prozessrechner darf es nicht zu Funken oder Überhitzung am Sensor im Kraftstofftank kommen. 23