Book

Sicherheitsgerichtete Echtzeitsysteme

Authors:

Chapters (16)

Mit dem Ziel, dem Leser ein ausgeprägtes Sicherheitsbewusstsein, die spezielle Denkweise der Sicherheitstechnik und das besondere Gefahrenpotential programmgesteuerter Systeme zu vermitteln sowie bei ihm eine ganzheitliche Sicht zur Strukturierung sicherheitsgerichteter Systeme zu entwickeln, die deren letztendliche sicherheitstechnische Abnahme nie aus den Augen verliert, werden die Begriffe Sicherheit, Zuverlässigkeit, unstetiges Systemverhalten und Echtzeitbetrieb eingeführt, Einfachheit als beim Entwurf sicherheitsgerichteter technischer Systeme grundsätzlich immer zu befolgende Leitlinie betont und abschließend Prinzipien und Methoden der Fehlererkennung sowie Diversitätskonzepte vorgestellt.
Maßnahmen zur Erzielung sicherer elektronischer festverdrahteter und programmgesteuerter Prozessautomatisierung werden vorgestellt. Zu ersteren gehören die Prinzipien des Fehlerausschlusses und der Ausfallsicherheitsgerichtetheit, Sicherheitskonzepte der Schaltungstechnik und ausfallsicherheitsgerichtete Vergleicher. Bei letzteren handelt es sich um zwei- und mehrkanalige sowie verteilte Strukturierung und Einsatz von Diversität in Hard- und Software zur Erkennung von Fehlern und Ausfällen.
Der gerätetechnische Aufbau von Systemen zur sicheren Prozessdatenverarbeitung wird behandelt. Dazu werden zunächst Maßnahmen zur Ertüchtigung einkanaliger speicherprogrammierbarer Steuerungen für Sicherheitsaufgaben betrachtet.Dann wird auf für zweikanalige Systeme geeignete Signaldarstellungen, zweikanalige Verarbeitung solcher Signale und die damit erreichte Erkennbarkeit von Fehlern eingegangen. Schließlich wird das Konzept des gleichzeitigen Einsatzes von Original- und Komplementärlogik zur Ausfallerkennung vorgestellt.
Einige Architekturen für den Aufbau zweikanaliger sicherheitsgerichteter Rechnersysteme werden vorgestellt. Die Konzepte von SIMIS und LOGISAFE werden skizziert, während das System LOGISIRE mit seinen Funktionen und Sicherheitsmaßnahmen im Detail beschrieben wird. Das in mehrfacherWeise diversitär ausgelegte Mikrorechnersystem DIMI wird in Varianten mit zwei und vier Rechnern und verschiedenen Vergleichertypen dargestellt. Ergebnisse seiner praktischen Erprobung werden unter besonderer Berücksichtigung der Fehlererkennung durch die vorgesehenen Diversitätsarten angegeben.
Der Prozess der Entwicklung sicherheitsgerichteter Software wird aus der Perspektive permanenter Qualitätssicherung und dazu geeigneter Maßnahmen behandelt. Die Begriffe Perfektion und Fehlertoleranz werden im Hinblick auf Software eingeführt und Methoden zu ihrer Erzielung genannt. Ein zum Entwurf von Echtzeitsystemen entwickeltes Werkzeug für Anforderungsspezifikation, Systementwurf und Projektverfolgung wird ebenso vorgestellt wie eine Vielzahl von Methoden zur diversitären Entwicklung und Auslegung von Software.
Prinzipien, Techniken und Phasen der Verifikation und Validierung von Software werden betrachtet. Die dazu in der Praxis häufig eingesetzten Verfahren Begutachtung, Revision, Inspektion und strukturiertes Nachvollziehen werden imAnschluss beschrieben. Auf die wichtigsten Aspekte von Software-Tests wird eingegangen. Als einzige vom TÜV anerkannte strenge, jedoch nicht formale Verifikationsmethode wird diversitäre Rückwärtsanalyse im Detail vorgestellt. Abschließend wird gezeigt, wie sich das zeitliche Verhalten auch verteilter Echtzeitsysteme mittels Ereignis- und Umgebungssimulation sowieMessung validieren lässt.
Sichere Prozessdatenverarbeitung mit zweikanaligen Systemen wird analytisch modelliert und anhand der Kenngrößen mittlere Zeiten bis zu einer sicherheitsbezogenen Ausfallart bzw. bis zur Ausgabe eines sicherheitsbezogenen Wertes sowie Wahrscheinlichkeit der Ausgabe eines sicherheitsbezogenenWertes quantitativ bewertet, wobei gegenüber anderen Abschätzungen auch die Software-Aspekte volle Berücksichtigung finden. Bei der Bewertung werden sowohl identische als auch hinsichtlich Hard- und Software diversitär ausgelegte Kanäle betrachtet.
Speicherprogrammierbare Steuerungen werden als einfach organisierte elektronische Prozessdatenverarbeitungsanlagen mit vorhersehbarem Ausführungszeitverhalten vorgestellt. Es wird gezeigt, dass sich für ihre Programmierung besonders Funktions- und sequentielle Ablaufpläne eignen, da sie wegen ihrer Klarheit und leichten Verständlichkeit leicht sicherheitstechnisch abzunehmen sind. Letzteres gilt umsomehr,wenn Funktionsplanprogrammierung auf einer Bibliothek verifizierter Funktionsblöcke aufsetzen kann, wie es sie für bestimmte Anwendungsgebiete wie Notabschaltsysteme bereits gibt.
Die Qualitätssicherung von Software wird noch einmal aufgegriffen. Dazu werden durch Verschärfung und Vereinfachung aus einer internationalen Norm abgeleitete Richtlinien zur Konstruktion sicherheitsgerichteter Software angegeben. Es werden Verfahren zur Prüfung von Dokumentationen und Methoden zur effektiven und effizienten sowohl manuellen als auch automatisierten Prüfung eigentlicher Programme betrachtet. Analytische Qualitätssicherung wird anhand der industriellen Prüfung prozessleittechnischer Software im Detail beschrieben.
Ein grundlegendes Problem der Software-Technik ist nachzuweisen, dass erstellte Programme tatsächlich den Anforderungen genügen. In der Praxis gelingt strenge und verlässliche Programmverifikation nur in den seltensten Fällen. Als bewährte formale Verfahren, mit denen sich die Korrektheit kleinerer Programmeinheiten mathematisch streng beweisen lässt, werden die symbolische Programmausführung sowie die Methode der Vor- und Nachbedingungen nach Hoare vorgestellt und dann beispielhaft auf typische Funktionsblöcke der Automatisierungstechnik angewendet.
Ein außergewöhnliches und durch Übersichtlichkeit sicherheitsförderndes Architekturkonzept wird vorgestellt, das im mechanischen Aufbau eines Prozessrechners die demAnwendungsprogramminnewohnende Struktur in natürlicherWeise abbildet und so die semantische Lücke zwischen hochsprachlicher Problemlösung und Implementierung schließt. Durch Zuordnung eines eigenen Prozessors zu jedem Funktionsblock ergibt sich eine dem Anwendungsfall betriebsmitteladäquate dedizierte und parallel arbeitende Rechenanlage ohne interne Konflikte und mit a priori automatisch bestimmbarem Zeitverhalten. Die Isomorphie von Funktionsplänen und Hardware- Aufbau überträgt die Verifikation eines Anwendungsprogramms unmittelbar auf den Entwurf der Ausführungsplattform.
Drei speziell für sicherheitsgerichtete Anwendungen konzipierte programmierbare elektronische Systeme werden vorgestellt. Das erste wird höchsten Sicherheitsansprüchen gerecht, indem seine Software die Form leicht verifizierbarer Ursache-/ Wirkungstabellen hat, die unmittelbar von derHardware ausgeführtwerden.Das zweite ist auf inhärente Unterstützung der Verifikation von Funktionsplänen mittels diversitärer Rückwärtsanalyse hin ausgelegt. Eine asymmetrische Mehrprozessorarchitektur vermeidet durch Betriebssysteme erzeugte Nichtdeterminismen mittels Migration der Funktionen des Betriebssystemkerns auf einen Koprozessor und fördert die Vorhersehbarkeit des Ausführungsverhaltens.Weiterhin wird Prozessperipherie für zeitgenau bestimmbaren Datenaustausch beschrieben.
Rechenprozessorientierte Echtzeitverarbeitung ohne Verwendung asynchroner Unterbrechungen wird als drittes, inhärent sicheres Paradigma des Echtzeitbetriebes vorgestellt, das die Vorteile synchroner und asynchroner Programmierung vereint. Zur Behebung fehlerhafter Zustände wird es kombiniertmit der Fähigkeit von Rechnerknoten zum Neuaufsetzen der Verarbeitung im laufenden Betrieb durch Kopieren des internen Zustands redundanter Knoten. Diese Zustandsdaten brauchen nur protokolliert zu werden, um im Testbetrieb nachträgliche Ablauf- und für den Normalbetrieb Postmortem- Analysen zu ermöglichen.
Ein sicherheitsgerichteter Feldbusmit besonderen Echtzeiteigenschaften,wie siemarktgängige Systeme bisher nicht aufweisen, wird vorgestellt. Durch kombinierten Einsatz diverser Maßnahmen zur Sicherung der Datenübertragung, zur Signalcodierung und -detektierung, zur Fehlererkennbarkeit und -korrigierbarkeit mittels Datencodierung sowie durch Verwendung von Doppelringbussen und Summenrahmentelegrammen lässt es sich weitestgehend vermeiden, Telegrammübertragungen im Fehlerfalle wiederholen zu müssen. Weiterhin wird gezeigt, wie die Knoten an Ringbussen zeitlich synchronisiert werden können.
Die Programmiersprache PEARL besitzt bei weitem die ausgeprägtesten Echtzeiteigenschaften. Zunächst wird gezeigt, dass Teile von PEARL wegen ihrer Klarheit, Eindeutigkeit und unmittelbaren Verständlichkeit bereits zu Spezifikationszwecken eingesetzt werden können. Da es keine universell einsetzbare textuelle Programmiersprache für sicherheitsgerichtete Echtzeitsysteme gibt und sich PEARL in industriellen Automatisierungsanwendungen hervorragend bewährt hat, wird nach Zusammenstellung notwendiger Funktionalitäten eine sicherheitsgerichtete Version von PEARL definiert.
Nach Betrachtung eines graphischenVerfahrens zur zeitlichen Ablaufplanung und Synchronisation von Rechenprozessen werden zwei Verfahren sicherer Prozessorzuteilung für leicht vorhersagbarenMehrprozessbetrieb vorgestellt. Das statische Verfahren aktiviert Rechenprozesse periodisch synchron zu einem Zeittakt. Synchronisierungs- und Verklemmungsprobleme lassen sich verhindern, zeitliches Ablaufverhalten vorhersagen und lastadaptiv steuern sowie Zuteilbarkeit zu jeder Zeit anhand eines einfachen Kriteriums überprüfen, indembei der optimalen Strategie dynamischer Rechenprozesszuteilung nach Fertigstellungsfristen auf Verdrängbarkeit verzichtet wird.
... Q.: Is it ethically acceptable to continue using standard hardware, commercial off the shelf (COTS) systems, etc. instead of striving after inherently safe hardware? See for instance [9,10] for aspects of safer hardware. ...
Conference Paper
Autonomously driving cars require adaptations to the legal system, but also ethical considerations. This contribution presents some aspects of the recently published report of the German Ethics Commission on Automated and Interconnected Driving. Beyond this general report some additional questions-as specific for the computer science community-are proposed. The purpose of these questions is to foster discussion especially among the computer science community and from a computer science point of view.
Technical Report
Full-text available
Im Rahmen der Literaturrecherche werden insgesamt neun Anwendungsszenarien (Use Cases) ausgewählt, um den aktuellen Stand der Technologieentwicklung im Kontext von Industrie 4.0 für ausgewählte Industriebereiche darzustellen. Dazu wer- den zunächst die Konzepte, Grundlagen und Zusammenhänge von Industrie 4.0, die technologischen Basiskomponenten sowie die erforderlichen Referenzarchitekturen vorgestellt. Die der aktuellen Literatur entnommenen Anwendungsszenarien werden danach in- haltlich zusammengefasst und in die beschriebenen Industrie 4.0-Konzepte einge- ordnet hinsichtlich der in ihnen adressierten Paradigmen und der angewandten Ba- siskomponenten. Dabei konzentriert sich die Studie insbesondere auf Anwendungs- szenarien aus den Bereichen der Fertigungs- und Produktionstechnik im Maschinen- und Anlagenbau. Darüber hinaus werden die Szenarien an den drei Dimensionen der Referenzarchitektur RAMI 4.0 als makroskopische Sicht gespiegelt sowie die vorge- stellten Aspekte hinsichtlich der Industrie 4.0-Komponente als mikroskopische Sicht herausgearbeitet. Abschließend werden die Anwendungsszenarien dahin gehend bewertet, ob in ihnen grundsätzlich sicherheitstechnische Aspekte der funktionalen Sicherheit (Safety), der industriellen Angriffssicherheit (Security) sowie deren Wechselwirkungen untereinan- der betrachtet bzw. berücksichtigt werden. Diese Bewertungen basieren auf den Darstellungen der jeweils zitierten Literaturquellen.
Chapter
In diesem Beitrag wird ein Konzept für den Aufbau fehlertoleranter verteilter Echtzeitsysteme vorgeschlagen, das ohne speziell dafür entwickelte Baugruppen auskommt. Das Grundprinzip besteht darin, als technische Basis allgemein einsetzbare Einplatinenrechner (single board computer, SBC) zu verwenden, die jeweils mit mehreren Anschlüssen für verschiedene Bussysteme ausgestattet sind. Es wird dargelegt, wie diese Eigenschaft zur Erzielung von Fehlertoleranz nutzbar gemacht werden kann. Außerdem werden einige Vorteile derart aufgebauter verteilter Systeme aufgezeigt.
Chapter
Moderne Prozessorarchitekturen, die auch in der sicherheitsgerichteten Echtzeitdatenverarbeitung eingesetzt werden, basieren auf Strukturen und Konzepten, die zum Teil aus den Anfängen der Informatik hervorgegangen sind. Dies führte dazu, dass moderne Prozessorarchitekturen nicht geeignet sind, um sicherheitsgerichtete Echtzeitfunktionen auszuführen. Dieser Beitrag geht zu Beginn auf die Probleme der bekannten Prozessortechnologien in Bezug auf sicherheitsgerichtete Echtzeitdatenverarbeitung ein. Anschließend werden für die Funktionalität unerlässliche Anforderungen aufgezeigt. Im Folgenden werden dann Konzepte erarbeitet, die losgelöst von altbekannten und potentiell ungeeigneten Technologien betrachtet werden. Es wird gezeigt, dass die entworfene Prozessorarchitektur alle internen Fehler- und Ausfallmöglichkeiten erkennen und den Großteil davon sogar tolerieren kann.
Conference Paper
Hard-wired control systems are increasingly replaced by program-controlled embedded systems. The programming languages currently employed for their implementation lack constructs and design patterns enforcing intelligible code fostering its verification by certification authorities. Recommendations for such constructs necessary to guarantee safety integrity are given in the international standard IEC 61508-3. One of the recommendations refers to object-oriented programming. Therefore, we analyse both basic and advanced properties of OOP like encapsulation, polymorphism, inheritance, prototyping, delegation etc. with respect to functional safety. In a resulting programming language based on PEARL90 we demonstrate coding with examples from hard real-time systems.
ResearchGate has not been able to resolve any references for this publication.