DE69332897T2 - Schnittstelle für ein Prozesssteurungssystem mit dreifach redundanten entfernten Feldeinheiten - Google Patents

Schnittstelle für ein Prozesssteurungssystem mit dreifach redundanten entfernten Feldeinheiten Download PDF

Info

Publication number
DE69332897T2
DE69332897T2 DE69332897T DE69332897T DE69332897T2 DE 69332897 T2 DE69332897 T2 DE 69332897T2 DE 69332897 T DE69332897 T DE 69332897T DE 69332897 T DE69332897 T DE 69332897T DE 69332897 T2 DE69332897 T2 DE 69332897T2
Authority
DE
Germany
Prior art keywords
circuit
signal
output
control unit
test
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69332897T
Other languages
English (en)
Other versions
DE69332897D1 (de
Inventor
Robert S. Glaser
Robert S. Warren Hoy
Paul G. Fernandez
Timothy J. Grai
Dean W. Gaudreau
Robert J. Hozeska
Donald J. Grinwis
Gregory J. Freeland Gavit
Joseph Jr. Lake Jackson Sheehan
Lowell V. Midland Thomas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dow Global Technologies LLC
Original Assignee
Dow Chemical Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dow Chemical Co filed Critical Dow Chemical Co
Application granted granted Critical
Publication of DE69332897D1 publication Critical patent/DE69332897D1/de
Publication of DE69332897T2 publication Critical patent/DE69332897T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • G05B19/0425Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14123Majority voting, dynamic redundant, persistency and integrity
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24184Redundant I-O, software comparison of both channels
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24187Redundant processors run identical programs
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24189Redundant processors monitor same point, common parameters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24192Configurable redundancy
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25428Field device

Description

  • Die vorliegende Erfindung betrifft eine Feldcomputereinheit, die einen Satz von wenigstens drei redundanten digitalen Ausgangsschaltungen aufweist, die jeweils durch einen entsprechenden redundanten Computer gesteuert/geregelt werden, wobei jede der digitalen Ausgangsschaltungen eine Mehrzahl von Ausgangskanälen besitzt und jeder der Ausgangskanäle einen Netzschalter besitzt, der durch einen der redundanten Computer gesteuert/geregelt wird, und einen Satz von Abbruchschaltern besitzt, die jeweils durch einen benachbarten redundanten Computer gesteuert/geregelt werden. Insbesondere betrifft die Erfindung ein Verfahren zum nicht-intrusiven Testen einer digitalen Ausgangsschaltung in einer solchen Feldcomputereinheit.
  • Eines der schwierigsten und am schwersten zu fassenden Ziele, das bei der Konstruktion jedes automatischen Prozeß-Steuer/Regel-Systems zu erreichen ist, ist die Bereitstellung eines genauen, schnellen und trotzdem hoch zuverlässigen Steuer/Regel-Systems, das fähig ist, möglichst den starken Anforderungen der Steuerung/Regelung eines physikalischen Prozesses jeweils ununterbrochen über Jahre Stand zu halten. Dies ist besonders wahr für die Prozeß-Steuerungs/Regelungs-Anwendungen in einer chemischen Anlage, bei der die Kosten des Herabfahrens eines komplexen Prozesses auf großer Skala für Reparaturen eines Computersystems enorm sein können, aufgrund der Zeit, des Aufwands und des Ausschusses, den man sich beim Versuch, einen derartigen Prozeß wieder auf Spur zu bringen, zuzieht, und wo eine Fehlfunktion des Systems, möglicherweise aufgrund von in Ausgangsschaltungen auftretenden Fehlern, Anlass zu großen Problemen oder sogar zu Gefahren geben kann.
  • Um eine maximale ökonomische Effizienz und eine optimale Produktqualität zu erreichen, stiegen die Anforderungen für eine umfassendere Produkt-Steuerungs/Regelungs-Automation sowohl hinsichtlich Qualität und Ausgereiftheit fortlaufend an. Während das Fahren eines chemischen Prozesses zunehmend auf computerunterstützter Steuerung/Regelung beruht, ist es klar, daß eine Anzahl von Computern zusammenarbeiten müssen, um all die gewünschten Steuerungs/Regelungs-Aufgaben zu erfüllen. Dies erhöht natürlich die Komplexität eines Steuer/Regel-Systems, für das eine maximale Fehlertoleranz gewünscht ist.
  • Um die Zuverlässigkeit eines Prozeß-Steuer/Regel-Computersystems zu vergrößern, wurden viele Versuche gemacht, um einen Ersatzcomputer für einen oder mehrere der zum aktiven Steuern/Regeln des Prozesses verwendeten Computern vorzusehen. Eine schnelle Übergabe der Steuerung/Regelung von einem aktiven Computer zu einem Ersatzcomputer ist allerdings schwierig zu erreichen, wenn es das Ziel ist, einen nahtlosen oder transparenten Transfer zu den Vorrichtungen vorzusehen, die den Lauf des physikalischen Prozesses berühren. Ferner können die Bedingungen, unter denen ein Transfer der Steuerung/Regelung durchgeführt werden sollte, komplex sein und Prozessorzeit verbrauchen, die während normalem Betrieb benötigt wird.
  • Ein Ansatz für dieses Problem liegt darin, eine dreifache Redundanz mit drei aktiv arbeitenden Computern vorzusehen. Während das Vorsehen von drei Computerprozessoren sicherlich die Gesamtkosten des Steuer/Regel-Systems vergrößert, so erlaubt es doch die Verwendung eines "Mehrheitsentscheids" für das Treffen von Entscheidungen. Der Nutzen der Mehrheitsentscheidung erhöht nicht nur die Fähigkeit des Computersystems, einem Fehler in einem der Computer zu widerstehen, sondern hilft auch zu gewährleisten, daß die getroffenen Entscheidungen richtig sind. Mit anderen Worten erhöht die Übereinstimmung von zwei aus drei Computern hinsichtlich einer bestimmten Entscheidung die Wahrscheinlichkeit, daß die Entscheidung letztendlich korrekt ist.
  • Trotzdem, selbst wenn gefunden wird, daß dreifach redundante Steuerung/Regelung wünschenswert ist, muß zuerst eine Unzahl von Konstruktionsproblemen angegangen werden, um ein tatsächlich wirksames, dreifach redundantes Steuer/Regel-System zu erreichen, einschließlich der Handhabung von internen Fehlern innerhalb verschiedener Bereiche des dreifach redundanten Steuer/Regel-Systems. Wenn es auch eine Anzahl von Versuchen gegeben hat, die Beziehungen zwischen einem Satz von drei oder mehr Computern angemessen zu verwalten, so ist noch beträchtlicher Raum für Fortschritt in diesem Fachgebiet, insbesondere wenn es sich auf Anwendungen der Steuerung/Regelung chemischer Prozesse auf großer Skala bezieht. Ein Aspekt in diesem Zusammenhang ist die Steuerung/Regelung und Überwachung von Ausgangsschaltungen, insbesondere digitalen Ausgangsschaltungen des Systems und die Art und Weise, wie Fehler in diesen Steuer/Regel-Schaltungen erfasst werden können.
  • Die US 4,667,284 offenbart eine Computereinheit, die drei redundante Computer aufweist. Die drei redundanten Computer empfangen jeweils Eingangssignale von dreifach vorgesehenen Detektoren über Eingabesignalschaltabschnitte. Auf der Grundlage der von den Eingabesignalschaltabschnitten empfangenen Eingabesignale gibt jeder redundante Computer ein Steuer/Regel-Signal aus, und synthetische- Entscheidung-Abschnitte wählen einen redundanten Computer, der in Abhängigkeit von Signalen von den redundanten Computern als der normalste angesehen wird. Um diese Auswahl eines redundanten Computers zu bewerkstelligen, sind Ausgabesignalschaltabschnitte vorgesehen. Gemäß einem Auswahlkommandosignal von den synthetische- Entscheidung-Abschnitten wird nur das Steuer/Regel-Signal vom gewählten redundanten Computer über die Schaltabschnitte zu der Ausrüstung ausgegeben, d. h. zu einer Prozeß-Steuer/Regel-Vorrichtung, die zu steuern/regeln ist; die Schaltabschnitte blockieren die Signale der anderen beiden redundanten Computer. Deshalb wird nur das Ausgabesignal von einem redundanten Computer, d. h. des ausgewählten redundanten Computers, zur Prozeß-Steuer/Regel-Vorrichtung übertragen. Ausgangsschaltungen, die das jeweilige Steuer/Regel-Signal erzeugen, und die Steuerung/Regelung und Überwachung dieser Ausgangsschaltungen werden in diesem Dokument des Stands der Technik nicht im Detail betrachtet.
  • Es ist eine Aufgabe der Erfindung, ein Verfahren zum nicht-intrusiven Testen einer oben bezeichneten digitalen Ausgangsschaltung anzugeben, das es erlaubt, die digitale Ausgangsschaltung aktiv zu testen. Insbesondere hat die Erfindung zum Ziel, ein derartiges Verfahren anzugeben, das nicht-intrusiv für einen Prozeß ist, der mittels der Feldcomputereinheit ununterbrochen gesteuert/geregelt wird.
  • Diese Aufgabe wird durch das Verfahren gelöst, das in Anspruch 1 definiert ist. Bevorzugte Ausführungsformen, die zu weiteren Vorteilen führen, sind in den Unteransprüchen definiert und insbesondere ist gemäß Unteranspruch 8 das Verfahren auch dafür ausgelegt, ein passives, nicht-intrusives Testen des Satzes von entsprechenden digitalen Ausgangsschaltungen in der Feldcomputereinheit durchzuführen.
  • Die Feldcomputereinheit, auf die sich das Verfahren gemäß der Erfindung bezieht, kann Teil eines Prozeß-Steuer/Regel-Systems sein, das eine Mehrzahl von autarken, entfernt angeordneten dreifach redundanten Feldcomputereinheiten umfaßt, und das Verfahren kann bezüglich jeder der Feldcopmputereinheiten durchgeführt werden. Die Feldcomputereinheiten können mit Entscheidungen fällenden redundanten Prozeß-Steuer/Regel-Computern verbunden sein.
  • Die drei redundanten Computer der jeweiligen Feldeinheit können zum Wandeln von rohen analogen und digitalen Eingabesignalen in geschlichtete Eingabewertsignale zu vorbestimmten Zeitpunkten verwendet werden. Mitteilungen, die diese geschlichteten Eingabewertsignale enthalten, werden von jeder der Feldcomputereinheiten über ein Kommunikationsnetz zu den redundanten Prozeßsteuercomputern übertragen. Sobald die angemessenen Prozeß-Steuer/Regel-Entscheidungen getroffen sind, empfangen die Feldcomputereinheiten von den redundanten Prozeß-Steuer/Regel-Computern über das Kommunikationsnetz Ausgabewertsignale. Die Feldcomputereinheiten enthalten einen Satz von einzelnen Abbruchschaltungen (Abbruchmitteln) für jedes Ausgabesignal, das zu einer Vorrichtung, die den Lauf eines zu steuernden/regelnden physikalischen Prozesses betrifft, zu übertragen ist. Bezüglich der digitalen Ausgangsschaltungen wird auf die oben genannten Abbruchsschalter verwiesen, die durch einen jeweiligen redundanten Nachbarcomputer gesteuert/geregelt werden. Diese Abbruchschaltungen setzen effektiv die Ausgabewertsignale durch, die durch jeden der drei redundanten Computer in der jeweiligen Feldcomputereinheit unabhängig geschlichtet sind.
  • Zusätzliche Eigenschaften und Vorteile der vorliegenden Erfindung, auch hinsichtlich der Verwendung des Verfahrens gemäß der Erfindung innerhalb des Kontexts eines Gesamt-Prozeß-Steuer/Regel-Systems (Prozeß-Steuer/Regel-Schnittstellensystem) wird aus einem Lesen der folgenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen vollständiger ersichtlich, die zeigen:
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine schematische Ansicht eines Prozeß-Steuer/Regel-Schnittstellensystems, umfassend zwei Computereinheiten (Feldcomputereinheiten), auf die das Verfahren gemäß der Erfindung angewendet werden kann.
  • 2 ist eine schematische Wiedergabe eines Teils des in 1 gezeigten faseroptischen Kommunikationsnetzes, die insbesondere die mehrfunktionalen Ausbruchschaltungen des Netzes veranschaulicht.
  • 3 ist ein Blockdiagramm des Prozeß-Steuer/Regel-Schnittstellensystems, das in 1 gezeigt ist.
  • 4 ist ein Blockdiagramm, das den Datenkommunikationsfluß im Prozeß-Steuer/Regel-Schnittstellensystem der 1 veranschaulicht.
  • 5 ist eine perspektivische Ansicht des Prozessorchassis für die in 1 gezeigte, dreifach redundante Feldcomputereinheit.
  • 6A–6U umfassen ein schematisches Diagramm für einen der in 5 gezeigten dreifach redundanten Feldcomputer.
  • 7A–7C umfassen ein schematisches Diagramm für eine intelligente serielle Eingabeschaltung.
  • 7D–7M umfassen eine Reihe von Flußdiagrammen, die dem Betrieb der intelligenten seriellen Eingabeschaltung der 7A–7C zugeordnet sind.
  • 8A–8E umfassen ein schematisches Diagramm für eine Mehrmodus-Pulseingabeschaltung.
  • 8F–8Q umfassen eine Reihe von Flußdiagrammen, die dem Betrieb der Mehrmodus-Pulseingabeschaltung der 8A–8E zugeordnet sind.
  • 9A–9D umfassen ein schematisches Diagramm für eine Widerstandsmeßschaltung.
  • 10A ist ein Blockdiagramm eines Teils der dreifach redundanten Feldcomputer, das insbesondere die Abbruchschaltungen für die digitalen Ausgabesignale veranschaulicht. 10B ist ein ähnliches Blockdiagramm, das insbesondere die Abbruchschaltungen für die analogen Ausgabesignale veranschaulicht.
  • 11A–11C umfassen ein schematisches Diagramm für eine digitale Ausgabeschaltung, die für ein nicht störendes Testen geeignet ist.
  • 12A–12F umfassen ein schematisches Diagramm für eine intelligente analoge Ausgabeschaltung.
  • 13A–13D umfassen ein schematisches Diagramm für eine Netzsteuerschaltung.
  • 14A–14E umfassen ein schematisches Diagramm einer in 4 gezeigten Ausbruchschaltung für serielle Kommunikation.
  • 15A umfaßt ein schematisches Diagramm einer faseroptischen Empfängerschaltung, die in dem in 1 gezeigten Netz verwendet wird. 15B umfaßt ein schematisches Diagramm einer in dem in 1 gezeigten Netz verwendeten faseroptischen Übertragerschaltung.
  • 16A–16G umfassen ein schematisches Diagramm einer Energieversorgungsschaltung für die dreifach redundante Feldcomputereinheit.
  • 17A–17I umfassen einen Satz von Flußdiagrammen, die die Schlichtungsverfahren für digitale Eingabe- und Ausgabewerte veranschaulichen.
  • 18A–18T umfassen einen Satz von Flußdiagrammen, die die Schlichtungsverfahren für analoge Eingabe- und Ausgabewerte veranschaulichen.
  • 19A–19M umfaßt einen Satz von Flußdiagrammen, die das Verfahren des nicht störenden Testens der in 10A gezeigten, digitalen Ausgabeschaltungen veranschaulichen.
  • 20A–20V umfassen einen Satz von Flußdiagrammen, die das Verfahren des Setzens der analogen Abbruchschalter und des Durchführens eines nicht störenden Testens der in 10B gezeigten analogen Ausgabeschaltungen durch eine Feld-Eingabe/Ausgabe-Computer-Steuer/Regel-Einheit veranschaulichen.
  • 21A–21S umfassen einen Satz von Flußdiagrammen für die Software, die die Funktionen jedes der intelligenten analogen Ausgabeschaltungen steuert, die in 10B gezeigt sind.
  • 22A–22R umfassen einen Satz von Flußdiagrammen, die die in 21B gezeigte Ausgabesteuerroutine veranschaulichen.
  • 23A–23I umfassen einen Satz von Flußdiagrammen, die das durch die analogen Ausgabeschaltungen durchgeführte, nicht störende Testverfahren veranschaulichen.
  • 24A–24G, 25A–25Z, 26A–26Z und 27A–27M umfassen einen Satz von Flußdiagrammen, die das Verfahren des Herabladens von Software veranschaulichen.
  • Die 10A, 11A–11C und 19A–19M und die entsprechenden Erläuterungen in der Beschreibung betreffen direkt bevorzugte Ausführungsformen der Erfindung im Kontext des hierin offenbarten Gesamtsystems.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN.
  • Es wird auf 1 Bezug genommen, in der ein Prozeß-Steuer/Regel-Schnittstellensystem 10 mit einem Netz von verteilten, dreifach redundanten Eingabe/Ausgabe-Feldcomputereinheiten 12 gezeigt ist. Diesbezüglich sollte gewürdigt werden, daß 1 für Veranschaulichungszwecke nur zwei Feldcomputereinheiten 12 umfaßt, und daß das Schnittstellensystem 10 die Fähigkeit hat, mit einer beträchtlichen Anzahl von Feldcomputereinheiten umzugehen. Beispielsweise ist bei einer Ausführungsform das Schnittstellensystem 10 geeignet, maximal 64 Feldcomputereinheiten 12 zu verwenden.
  • Die Feldcomputereinheiten 12 dienen als die Hauptschnittstelle zwischen der Feldinstrumentation und einem zentralisierten Prozeß-Steuer/Regel-Computersystem. In der hier diskutierten Ausführungsform umfaßt das zentralisierte Prozeß-Steuer/Regel-Computersystem im allgemeinen ein Paar von redundanten Prozeß-Steuer/Regel-Computern, auf die allgemein durch das Bezugszeichen 14 Bezug genommen wird. Während die Redundanz der simultan arbeitenden Prozeß-Steuer/Regel-Computer gewisse Fehlertoleranzvorteile gegenüber einem einzelnen, Entscheidungen treffenden Prozeß-Steuer/Regel-Computer hat, sollte verstanden werden, daß die Prinzipien der vorliegenden Erfindung nicht auf eine bestimmte Prozeß-Steuer/Regel-Computer-Konstruktion oder Konfiguration beschränkt sind. Somit mag es beispielsweise unter angemessenen Umständen wünschenswert sein, nur einen oder sogar drei Prozeß-Steuer/Regel-Computer anstelle der in 1 gezeigten beiden Prozeß-Steuer/Regel-Computer 14 einzusetzen.
  • Bei der bevorzugten Ausführungsform arbeiten die redundanten Prozeß-Steuer/Regel-Computer 14 bevorzugt simultan auf allen von den Feldcomputereinheiten 12 übertragenen Signalen. Mit anderen Worten sind alle Prozeß-Steuer/Regel-Computer 14 jeweils fähig, unabhängige Entscheidungen auf Grundlage der durch diese redundanten Computer von den Feldcomputereinheit 12 empfangenen Daten zu treffen. Die durch die Prozeß-Steuer/Regel-Computer 14 getroffenen Entscheidungen bestimmen die Ausgabesignalwerte, die durch die angemessenen Feldcomputereinheiten 12 schließlich zu speziellen Ausgabevorrichtungen (zum Beispiel Ventile, Pumpenmotoren, Reaktorheizeinrichtungen) gerichtet werden. Während die Ausgabesignalwerte bevorzugt wenigstens in einem gewissen Ausmaß zwischen den beiden Prozeß-Steuercomputern 14 vor der Übertragung dieser Signale zu den richtigen Feldcomputereinheiten 12 abgestimmt werden, sollte verstanden werden, daß zwei unabhängige Sätze von Ausgabesignalwerten zu den Feldcomputereinheiten übertragen werden könnten. Diesbezüglich können die von einer Feldcomputereinheit 12 empfangenen Eingabewerte an den Prozeß-Steuer/Regel-Computern 14 einer Schlichtung unterworfen werden, die es unnötig machen sollte, Ausgabewerte abzustimmen oder zu schlichten. Dies liegt daran, daß dann beide Prozeß-Steuer/Regel-Computer auf Grundlage des gleichen Satzes von geschlichteten Eingabewerten arbeiten würden.
  • Als ein Beispiel einer bevorzugten Form einer möglichen Wertabstimmung könnten entsprechende Ausgabewerttabellen in jedem der Prozeß-Steuer/Regel-Computer 14 während einer vorgesetzten Zeitperiode verglichen werden, und es könnte einer der Werte für jedes Ausgabewertsignal gewählt werden, das zu den Feldcomputereinheiten 12 zu übertragen ist. Diese Wahl von Ausgabe-Steuer/Regel-Werten könnte auf Grundlage eines geeigneten Kriteriums für den gesteuerten/geeegelten Prozeß getroffen werden, wie etwa die Verwendung des durch den linken Prozeß-Steuer/Regel-Computer 14a bestimmten Wert, wenn der durch den rechten Prozeß-Steuer/Regel-Computer 14b bestimmte Wert innerhalb einer vorbestimmten Prozentgrenze (beispielsweise 2,5%) liegt. Andernfalls könnten die verschiedenen Ausgabe-Steuer/Regel-Werte des linken und des rechten Prozeß-Steuer/Regel-Computers 14 beide jeweils zu den richtigen Feldcomputereinheiten 12 gesendet werden, wenn gefunden wird, daß diese Werte außerhalb der vorbestimmten Prozentgrenze liegen. Alternativ könnte die Wahl von verschiedenen Ausgabe-Steuer/Regel-Werten vom linken und rechten Prozeß-Steuer/Regel-Computer auf Grundlage einer durch Software implementierten Präferenz getroffen werden. So kann es beispielsweise unter gewissen Prozeßbedingungen als angemessener angesehen werden, entweder den hohen oder den niedrigen Wert für die Übertragung zu der Feldcomputereinheit 12 zu wählen, ungeachtet dessen, ob der Wert durch den linken oder rechten Prozeß-Steuer/Regel-Computer bestimmt wurde.
  • Jeder der Prozeß-Steuer/Regel-Computer 14 enthält bevorzugt eine Netzsteuereinheit 16, eine Austestkonsole 18 für die Netzsteuereinheit und ein Tablett 20, auf dem die Faserhalterungsplatinen 22 gehalten sind, mit denen verschiedene faseroptische Leitungen 24 verbunden sind. Wie in Verbindung mit den 13A bis 13D vollständiger diskutiert werden wird, pflegt die Netzsteuereinheit 16 Kommunikationsverkehr sowohl zu den Prozeß-Steuer/Regel-Computern 14 als auch von diesen über die faseroptischen Leitungen 24 zu richten. Die Austestkonsole 18 umfaßt sowohl eine Anzeige als auch einen Satz von numerischenTasten/Funktionstasten, um ein Fenster zu speziellen Funktionen der Netzsteuereinheit 16 vorzusehen.
  • Wie vollständiger in Verbindung mit den 15A bis 15B diskutiert werden wird, enthält jede der Faserhalterungsplatinen 22 die zum Wandeln elektrischer Signale in optische Signale benötigte Übertragungsschaltung, wie auch die zum Wandeln optischer Signale in elektrische Signale benötigte Empfängerschaltung. Hinsichtlich den faseroptischen Leitern selbst können diese herkömmlichen Lichtleiter sowohl aus Glas als auch aus Kunststoff hergestellt sein. Es sollte allerdings gewürdigt werden, daß die Verwendung von Glasfasern es ermöglicht, beträchtlich größere Übertragungsdistanzen zu erreichen. Während es bevorzugt ist, daß faseroptische Leitungen verwendet werden, um Mitteilungen zwischen den Feldcomputereinheiten 12 und den Prozeß-Steuer/Regel-Computern 14 zu verwenden aufgrund ihres Durchsatzes mit hoher Geschwindigkeit und ihrer beträchtlichen Sicherheit, so sollte verstanden werden, daß bei passenden Anwendungen andere geeignete Kommunikationsmedien verwendet werden könnten.
  • Wie in 1 veranschaulicht, umfaßt das faseroptische Netz, das jeden der Prozeß-Steuer/Regel-Computer 14 mit jeder der Feldcomputereinheiten 12 verbindet, einen Satz von Ausbruchschaltungen 26 für jeden der redundanten Prozeß-Steuer/Regel-Computer. Wie vollständiger in Verbindung mit den 14A bis 14E diskutiert werden wird, sind die Ausbruchschaltungen jeweils dafür ausgelegt, eine gemultiplexte serielle Kommunikation zwischen einer Mehrzahl von Feldcomputereinheiten 12 und einem der redundanten Prozeß-Steuer/Regel-Computer 14 zu vereinfachen.
  • So ist beispielsweise die Ausbruchschaltung 26a dafür konfiguriert, eine gemultiplexte serielle Kommunikation zwischen dem linken Prozeß-Steuer/Regel-Computer 14a und bis zu 10 Feldcomputereinheiten 12 vorzusehen. Die Ausbruchschaltung 26a ihrerseits ist über faseroptische Leitungen 28 mit der Ausbruchschaltung 26b verbunden, die dazu konfiguriert ist, gemultiplexte serielle Kommunikation zwischen dem linken Prozeß-Steuer/Regel-Computer 14a und mehreren Gruppen von Feldcomputereinheiten 12 vorzusehen. Diesbezüglich vertritt die Ausbruchschaltung 26a eine Gruppe von Feldcomputereinheiten 12 bei der Ausbruchschaltung 26b.
  • Es sollte vermerkt werden, daß die Ausbruchschaltung 26b mit dem linken Prozeß-Steuer/Regel-Computer 14a über einen Hauptanschluß 30 und einen Wiederholanschluß 32 verbunden ist. Genauer: Die faseroptischen Leitungen 34 stellen eine Verbindung zwischen dem Hauptanschluß 30 der Ausbruchschaltung 26b und dem linken Prozeß-Steuer/Regel-Computer 14a bereit, während die faseroptischen Leitungen 36 eine Verbindung zwischen dem Wiederholanschluß 32 der Ausbruchschaltung und dem linken Prozeß-Steuer/Regel-Computer bereitstellen. Die faseroptischen Leitungen 34 bis 36 bilden hierdurch einen Ring um den linken Prozeß-Steuer/Regel-Computer 14a und die Ausbruchschaltung 26b. Wie in näheren Einzelheiten unten diskutiert werden wird, sind die Ausbruchschaltungen dazu ausgelegt, dahingehend multifunktional zu sein, daß sie nicht nur die Fähigkeit des Multiplexens von Kommunikation haben, sondern daß sie ferner am Hauptanschluß 30 empfangene Mitteilungen heraus zum Wiederholanschluß 32 übermitteln. Diese Fähigkeit, Mitteilungen zu wiederholen, ermöglicht ferner, daß das Netz sich über große Entfernungen erstreckt, wie in Verbindung mit 4 beschrieben werden wird.
  • Zusätzlich weist die Netzsteuereinheit 16 auch die Fähigkeit auf zu dirigieren, daß von dem Prozeß-Steuer/Regel-Computer 14a Mitteilungen zum Wiederholanschluß 32 der Ausbruchschaltung 26b übertragen werden. Dieses wichtige Merkmal ermöglicht, daß in dem Fall, daß Kommunikation durch die faseroptischen Leitungen 34 nicht weitergehen kann, die Kommunikation ohne signifikante Unterbrechung fortfährt. Mit anderen Worten kann die Signalkommunikationsrichtung im Ring zwischen dem Prozeß-Steuer/Regel-Computer 14b und der Ausbruchschaltung 26b im Fall eines Kommunikationsfehlers umgekehrt werden.
  • Zusätzlich sollte durch 1 gewürdigt werden, daß durch die Ausbruchschaltungen 26c bis 26d und ihren zugeordneten faseroptischen Leitungen ein im wesentlichen identisches Kommunikationsnetz zwischen dem rechten Prozeß-Steuer/Regel-Computer 14b und jeder der Feldcomputereinheiten 12 bereitgestellt ist. Es sollte somit gewürdigt werden, daß die Fähigkeit der Änderung der Signalflußrichtung auf dem Hauptniveau (oder ersten Niveau) der Signalverteilung für jeden der Netzkommunikationsringe vorgesehen ist, die mit dem linken und dem rechten Prozeß-Steuer/Regel-Computer über ihre jeweilige Netzsteuereinheit 16 verbunden sind.
  • Die Integrität jeder dieser Netzkommunikationsringe wird getestet, bevor Signale zu den Feldcomputereinheiten 12 übertragen werden. Es kann in der Tat möglich sein, daß die Integrität des gesamten Netzes als ein vorbereitendes Teil des Signalkommunikationsprozesses periodisch getestet wird. So wird beispielsweise bei einem Gesamtprozeß- und Kommunikationszyklus von 1 Sekunde die Integrität wenigstens der Hauptnetzkommunikationsringe bevorzugt jede Sekunde getestet, da diese Integritätsüberprüfung helfen wird, verschwendete oder unvollständige Kommunikationsversuche zu vermeiden.
  • Es wird insbesondere auf 1 Bezug genommen. Es wird von der Netzsteuereinheit 16 ein Synchronisationspuls (zum Beispiel eine 1 Byte-Mitteilung) zu und um den durch die faseroptischen Leitungen 34, die Ausbruchschaltung 26b und die faseroptischen Leitungen 36 gebildeten Ring übertragen. Der Zweck dieses Synchronisationspulses liegt darin, dem linken Prozeß-Steuer/Regel-Computer zu ermöglichen, daß dieser bestimmt, ob Signale in dieser Richtung gegen den Uhrzeigersinn erfolgreich übertragen werden können oder nicht. Diesbezüglich wird ein Empfang des Synchronisationspulses vom Wiederholanschluß 32 der Ausbruchschaltung 26b über die faseroptischen Leitungen 36 innerhalb einer vorbestimmten Zeitdauer (zum Beispiel eine Auszeit vom 300 μs) anzeigen, daß keine Unterbrechungen im Kommunikationspfad oder Schaltungsfehler vorliegen, die die ordnungsgemäße Übertragung von Signalen auf diesem Netzabschnitt stören würden. Es wird dann von der Netzsteuereinheit 16 ein ähnlicher Synchronisationspuls in der entgegengesetzten Richtung übertragen, nämlich um den durch die faseroptischen Leitungen 36, die Ausbruchschaltung 26b und die faseroptischen Leitungen 34 gebildeten Ring, um zu bestimmen, ob Signale in dieser Richtung im Uhrzeigersinn erfolgreich übertragen werden können oder nicht.
  • Wie vollständiger aus 2 gewürdigt werden wird, wird man sehen, daß eine Mehrzahl von Ausbruchschaltungen 26 in Reihe verbunden sein können, um das Hauptniveau der Signalverteilung des Netzes vorzusehen. Diesbezüglich wird das erfolgreiche Umlaufen des ersten Synchronisationspulses um den gezeigten Ring nachweisen, daß jede der Ausbruchschaltungen 26e bis 26k fähig war, diesen Impuls zu empfangen und zu wiederholen. Genauer: Bevorzugt antwortet jede der Ausbruchschaltungen 26 auf den Synchronisationspuls, indem sie ein Signal sendet, das die Ausbruchschaltung gegenüber der Netzsteuereinheit 16 identifiziert. Wenn allerdings zum Beispiel die Ausbruchschaltung 26k diesen Synchronisationspuls nicht zur Netzsteuereinheit 16 zurück wiederholte, dann wird die nachfolgende Übertragung eines Synchronisationspulses in der entgegengesetzten Richtung nicht nur bei der Feststellung helfen, wo die Signalunterbrechung auftrat, sondern sie wird dem Prozeß-Steuer/Regel-Computer 14 und seiner Netzsteuereinheit 16 die Bestimmung des erforderlichen Pfades ermöglichen, um Signale zu jeder Ausbruchschaltung 26 des ersten Niveaus der Signalverteilung zu senden oder von diesen Ausbruchschaltungen 26 zu empfangen. Als ein Ergebnis des Integritätstestprozesses wird die Netzsteuereinheit 16 die Pfadinformation, die zum Senden von Signalen zu oder zum Empfangen von Signalen von jeder der Feldcomputereinheiten 12 nötig ist, in einem Direktzugriffspeicher ("RAM") speichern. Mit anderen Worten können Signale zu einigen der Feldcomputereinheiten 12 über die faseroptischen Leitungen 34 übertragen werden, während Signale zu anderen Feldcomputereinheiten 12 in derselben Gesamt-Timing-Zyklus- (beispielsweise 1 Sekunde) -Periode über die faseroptischen Leitungen 36 übertragen werden könnten.
  • 2 dient auch zum Aufzeigen, daß die Ausbruchschaltungen 26 dazu dienen können, als Signalzwischenverstärker zu wirken, wie etwa die Ausbruchschaltungen 26e–26f und 26h–26j. Wenn die Feldcomputereinheiten 12 in beträchtlichen Entfernungen von dem Prozeß-Steuer/Regel-Computer entfernt angeordnet sind (beispielsweise 1,6 km), kann/können dann eine oder mehrere der Ausbruchschaltungen 26 somit dazu verwendet werden, die notwendige Signal-Neuübertragung zu liefern, die einen richtigen Signalempfang an diesen entfernt liegenden Feldcomputereinheiten ermöglicht.
  • Es wird wieder auf 1 Bezug genommen, in der jede der Feldcomputereinheiten 12 dahingehend gezeigt ist, daß sie ein Prozessorchassis 38, ein Gleichstrom-("DC")-Chassis 40 und ein erweitertes Gleichstrom-Chassis 42 umfaßt. Das Prozessorchassis 38 enthält drei redundante Computerschaltungen, auf die auch als Feld-Eingabe/Ausgabe-Steuereinheiten Bezug genommen werden kann, sowie ihre zugeordneten Analogeingabe ("AI")-, Analogausgabe ("AO")- und Digitalausgabe ("DO")-Verarbeitungsschaltungen. Die digitalen Eingabe- ("DI")-Schaltungen können auf den Feld-Eingabe/Ausgabe-Steuereinheit-Schaltungsplatinen enthalten sein. Wie in 1 veranschaulicht, stellt das Prozessorchassis eine Austestkonsole 44 für jede der redundanten Computerschaltungen in der Feldcomputereinheit 12 bereit, um einem Techniker zu ermöglichen, daß dieser wahlweise interne Operationen dieser Schaltungen sieht. Das Gleichstrom-Chassis 40 stellt generell drei Funktionen bereit. Die Hauptfunktion des Gleichstrom-Chassis 40 liegt darin, einen Verbindungspunkt für Gleichstrom-("DC")-Feldinstrumentarium vorzusehen. Ferner stellt das Gleichstrom-Chassis 40 einen Montageort für die Faserhalterungsplatinen bereit, die zum Abschließen der faseroptischen Leitungen 46 und 48 des Kommunikationsnetzes verwendet werden. Das Gleichstrom-Chassis stellt auch einen Montageort für eine Platine mit passiven Elementen bereit, die dazu verwendet wird, einen Schutz für Schaltungselemente der Feldcomputereinheit 12 gegenüber Hochenergiestößen zu liefern, auf die man im Feld treffen kann (beispielsweise Blitzschlag). Die Platine für passive Elemente enthält eine Schaltung aus passiven Elementen für jedes analoge und digitale Eingabesignal. Diese Schaltungen mit passiven Elementen enthalten Widerstände mit positivem Temperaturkoeffizienten (PTC) und Zener-Dioden in einer herkömmlichen Schaltungsschutzkonfiguration. Das erweiterte Gleichstrom-Chassis 42 liefert eine Montagestelle für zusätzliche DI- und AI-Schaltungen und Schaltungen mit passiven Elementen für den Fall, daß nicht alle der DIs und AIs vom Gleichstrom-Chassis 40 aufgenommen werden können.
  • 1 zeigt ferner, daß jede der redundanten Computerschaltungen im Prozessorchassis 38 bevorzugt mit einer gesonderten Energieversorgung 50 verbunden ist. Die Schaltung für diese Energieversorgungen 50 wird in Verbindung mit den 16A bis 16G diskutiert werden. Jede dieser Energieversorgungen 50 ist bevorzugt mit ihrer eigenen Reservebatterie 52 versehen. Die Batterien 52 vereinfachen einen ununterbrochenen Betrieb der Feldcomputereinheit 12 in dem Fall, daß die normalerweise für die Energieversorgungen bereitgestellte Wechselstromquelle zeitweilig nicht zur Verfügung steht. Es sollte somit gewürdigt werden, daß ein Fehler in irgendeiner der Energieversorgungen 50 oder selbst eine Unterbrechung der Wechselstromenergieversorgung zu der Feldcomputereinheit 12 den zugrunde liegenden physikalischen Prozeß, der durch die Feldcomputereinheit gesteuert/geregelt wird, nicht beeinträchtigen wird. Es sollte gewürdigt werden, daß alternativ eine herkömmliche, ununterbrechbare Energieversorgung als eine Option verwendet werden könnte, um einen möglichen Ausfall der elektrischen Energie zu vermeiden.
  • Es wird auf 3 Bezug genommen, die ein Blockdiagramm des verteilten Schnittstellensystems 10 zeigt. 3 dient diesbezüglich dazu, die bidirektionale Natur des Signalkommunikationsflusses durch die Verwendung der Pfeile 54, die in entgegengesetzte Richtungen weisen, aufzuzeigen. Zusätzlich veranschaulicht 3, daß jede der Ausbruchschaltungen 26 bevorzugt mit einer Austestkonsole 56 versehen ist. Jede der hier diskutierten Austestkonsolen, nämlich die Austestkonsolen 18, 44 und 56, sind einfach dafür vorgesehen, einem Feldtechniker während der Wartung oder Reparatur der verschiedenen Schaltungen zu helfen, an denen diese Austestkonsolen angebracht sind. Ferner veranschaulicht 3 allgemeine Vorrichtungen für die DIs, DOs, AIs und AOs, die mit der Feldcomputereinheit 12 verbunden sind. Man wird allerdings aus der Diskussion unten würdigen, daß jede der Feldcomputereinheiten 12 fähig ist, eine beträchtliche Anzahl derartiger Feldinstrumentariumseingaben und -ausgaben abzuwickeln.
  • Es wird auf 4 Bezug genommen, die ein Blockdiagramm des Flusses von Daten/Kommando/Programm-Signalkommunikation für das Schnittstellensystem 10 zeigt. Diesbezüglich werden drei Kreise 58 bis 62 dazu verwendet, exemplarische Signaleingaben zu der Feldcomputereinheit 12 zu veranschaulichen. Somit kann ein exemplarisches AI-Signal 58 eine 4 bis 20 ma Stromsignaleingabe umfassen, während ein exemplarisches DI-Signal 60 ein Signal umfassen kann, welches den Schließzustand oder Nichtschließzustand eines Schalters anzeigt. Wenn diese Signale durch die Feldcomputereinheit 12 empfangen werden, wird auf sie als "Rohdaten" (Block 64) Bezug genommen, und es sollte verstanden werden, daß alle der Rohdatensignale von jeder der redundanten Computerschaltungen in der Feldcomputereinheit 12 gelesen werden. Während jede der redundanten Computerschaltungen in der Feldcomputereinheit 12 mit ihrem eigenen Satz von entsprechenden Eingabesensoren versehen sein könnte, so ist es bevorzugt, daß alle redundanten Computerschaltungen die gleichen Eingabesignale empfangen. In dem Fall, daß es wünschenswert ist, zwei oder mehr Sensoren vorzusehen, um einen bestimmten Prozeßzustand zu erfassen, so ist es immer noch bevorzugt, daß jede der redundante Computerschaltungen die Eingangssignale von jedem dieser entsprechenden Sensoren empfängt. In einem solchen Fall würden die redundanten Computerschaltungen jedes dieser entsprechenden Signale als gesondertes Eingabesignal verarbeitet. Mit anderen Worten würde dann, wenn drei Flußmeßgeräte verwendet werden, um die Flußrate eines Fluids an der gleichen Stelle in einem Fluidstrom zu erfassen, jede der drei redundanten Computerschaltungen jedes dieser drei Eingabesignale verarbeiten und diese drei Eingabesignale miteinander über Nachbar-zu-Nachbar-Kommunikation teilen. Auf diese Art und Weise kann die vollständige Leistung dieser redundanten Computerschaltungen dazu verwendet werden, es möglich zu machen, daß die beste Möglichkeit besteht, daß schließlich richtige Entscheidungen getroffen werden. Es sollte auch vermerkt werden, daß der Block 64 anzeigt, daß die Rohdatensignale DOT- und AOT-Werte umfassen. Diese Werte sind Rückkopplungs- oder Nachführ-/Verfolgungssignale, die dazu verwendet werden, daß es den entsprechenden Schaltungen und der entsprechenden Software in der Feldcomputereinheit 12 möglich ist zu bestimmen, ob die zum Feldinstrumentarium gesendeten Ausgabewerte Sollwerten entsprechen, die von den Prozeß-Steuer/Regel-Computern 14a– 14b empfangen wurden. Diese Rückkopplungs- oder Nachführ/Verfolgungssignale werden auch zu den Prozeß-Steuer/Regel-Computern 14a–14b übertragen für eine mögliche Verwendung als Zusicherung, daß die Ausgabe im gewünschten Zustand ist.
  • Nachdem die Rohdatensignale empfangen wurden, wird jede der redundanten Computerschaltungen unabhängig bestimmen, ob der Datenwert gültig ist oder nicht (Block 66). Diese anfängliche Gültigkeitsüberprüfung hilft zu verhindern, daß fehlerhafte Eingabedaten übertragen werden, was etwa dann auftreten könnte, wenn eine Eingabeplatine nicht richtig eingesteckt wurde oder außer Betrieb war. Jede der redundanten Computerschaltungen wird ferner die Daten, die sie vom Feld gelesen hat, austauschen. In dem Fall von analogen Eingabesignalen vergleicht jede der redundanten Computerschaltungen den Unterschied zwischen ihrem Eingabedatensignal und den Eingabedatensignalen von ihren Nachbarn, und zwar kanalweise in Bezug auf eine vorbestimmte Toleranzgrenze, um zu bestimmen, ob das Signal innerhalb eines relativ breiten Bereichs oder eines relativ engen Bereichs von akzeptablen Pegeln liegt.
  • Die gültigkeitsüberprüften Signale für jede Eingabe werden durch die redundanten Computerschaltungen (Block 68) unabhängig einer Schlichtung unterworfen, wie in Verbindung mit den Flußdiagrammen der 17A bis 17E und 18A bis 18N vollständiger diskutiert werden wird. Sobald die gültigkeitsüberprüften Datensignale softwaremäßig geschlichtet wurden, haben die redundanten Computerschaltungen effektiv den speziellen Eingabewert gewählt, der über die faseroptischen Leitungen 46–48 (Block 70) zu den Prozeß-Steuer/Regel-Computern 14a–14b zu übertragen ist. Diesbezüglich sollte verstanden werden, daß in der Feldcomputereinheit 12 drei redundante Computerschaltungen enthalten sind, während bei dieser Ausführungsform nur zwei Sätze von faseroptischen Leitungen 46–48 zum Übertragen von Signalen verwendet werden. Dementsprechend sollte gewürdigt werden, daß die geschlichteten Datensignale nebeneinander von zweien der drei redundanten Computerschaltungen über die Ausbruchschaltungen 26 (Blöcke 72–74) und die Netzsteuereinheit 16 (Block 76) zu den Prozeß-Steuer/Regel-Computer 14a–14b übertragen werden.
  • Sobald die Prozeß-Steuer/Regel-Computer 14a–14b ihre Prozeß-Steuer/Regel-Entscheidungen treffen, werden dann die (unabhängigen oder abgestimmten) Ausgabewertsignale nebeneinander sowohl über den linken als auch den rechten Netzring zu den angemessenen Feldcomputereinheiten 12 übertragen. Gemäß der vorliegenden Erfindung ist es nicht notwendig, daß die Ausgabewertsignale durch den linken und den rechten Netzzweig gleichzeitig zu der angemessenen Feldcomputereinheit 12 übertragen werden. Es sollte speziell an diesem Punkt vermerkt werden, daß die Netzsteuereinheiten 16 für den linken und den rechten Prozeß-Steuer/Regel-Computer 14a–14b gemäß ihrem jeweiligen eigenen Takt arbeiten, obwohl das Timing dieser Takte bevorzugt softwaremäßig einmal pro Sekunde mit einem Taktsignal in ihrem jeweiligen Prozeß-Steuer/Regel-Computer abgestimmt wird. In ähnlicher Weise stimmt einer der Prozeß-Steuer/Regel-Computer (beispielsweise der Computer 14b) bevorzugt sein Taktsignal auf das Taktsignal des anderen Prozeß-Steuer/Regel-Computers (beispielsweise der Computer 14a) ab. In ähnlicher Weise stellen sich bevorzugt die Takte jeder redundanten Computerschaltungen in der Feldcomputereinheit 12 mit jedem Prozeß-Steuer/Regel-Zyklus auf einen ihrer Takte ein (beispielsweise die linke Computerschaltung). Dementsprechend sollte gewürdigt werden, daß die Takte in den Prozeßsteuercomputern 14a–14b, den Netzsteuereinheiten 16 und den Feldcomputereinheiten jeweils eine periodische Einstellung durchmachen können, um aufrechtzuerhalten, daß die Taktsignale innerhalb einer gewünschten Toleranz (beispielsweise 4 Millisekunden) liegen.
  • Auf jeden Fall werden die Ausgabewertsignale, wenn sie an einer Feldcomputereinheit 12 empfangen werden, zu jeder der redundanten Computerschaltungen übermittelt, und es wird auf sie in Block 78 als ungeschlichtete Daten Bezug genommen. Dann unterwirft jede der redundanten Computerschaltungen diese Ausgabewertsignale unabhängig einer softwaremäßigen Schlichtung (Block, 80). Schließlich sendet jede der redundanten Computerschaltungen jedes der geschlichteten Ausgabewertsignale zu den DO-Feldvorrichtungen 84 und den AO-Feldvorrichtungen 86 (Block 82), und zwar durch einen Satz von Abbruchschaltungen, die unten in Verbindung mit den 10A und 10B diskutiert werden. An dieser Stelle sollte allerdings vermerkt werden, daß die Abbruchschaltungen die durch jede der redundanten Computerschaltungen über Software-Schlichtung getroffenen Entscheidungen durchsetzen.
  • Es wird auf 5 Bezug genommen, die eine perspektivische Ansicht des Prozessorchassis 40 zeigt. Das Prozessorchassis 40 umfaßt allgemein ein Metallgehäuse 88 und eine Mutterplatine 90. Auf die Mutterplatine 90 kann als Rückwandplatine Bezug genommen werden, da sie gegen die Rückwand des Gehäuses 88 vertikal abgestützt ist. Die Rückwandplatine 90 enthält die notwendigen Verbinder und Leiter zum Verbinden der verschiedenen Schaltungsplatinen, die an der Rückwandplatine angebracht sind. Diesbezüglich zeigt 5, daß für jeden der drei in der Feldcomputereinheit 12 enthaltenen drei redundanten Computerschaltungen 92–96 eine einzelne Schaltungsplatine vorgesehen ist. Es sollte gewürdigt werden, daß auf diese Art und Weise jede dieser einzelnen Computerschaltungsplatinen 92–96 schnell entfernt und ersetzt werden kann, ohne den Betrieb der verbleibenden Computerschaltungsplatinen zu beeinträchtigen. Tatsächlich kann eine dieser Computerschaltungsplatinen 92–96 einfach aus dem Prozessorchassis 40 für eine Reparatur oder zum Auswechseln herausgezogen werden. Es ist allerdings bevorzugt, daß die elektrische Energie für diese Computerschaltungsplatine zeitweilig unterbrochen wird, während sie entfernt oder im Prozessorchassis 40 neu installiert wird. Nichtsdestotrotz brauchen keine anderen Befehls- oder Software-Änderungen während des Ersetzens durchgeführt werden, obwohl der physikalische Prozeß fortwährend durch die Ausgabesignale der gewarteten Feldcomputereinheit gesteuert/geregelt wird.
  • 5 veranschaulicht ferner, daß einzelne AI-, DO- und AO-Schaltungsplatinen ebenfalls an der Rückwandplatine 90 angebracht sind. Jede dieser Eingabe- und Ausgabeschaltungsplatinen ist fähig, eine Mehrzahl von verschiedenen Signaleingaben oder Signalausgaben, je nachdem, abzuwickeln. Es sollte auch vermerkt werden, daß ferner eine Hochgeschwindigkeits-Analogeingabe-Schaltungsplatine an einer von Chassisstellen innerhalb der Feldcomputereinheit 12 zum Messen elektrischer Parameter in einem Energiesystem mit wechselnder Wellenform enthalten sein könnte. Eine Beschreibung dieses Hochgeschwindigkeits-Energieanalysators kann in der gemeinsam übertragenen Patentanmeldung mit der Seriennummer 502 050 von Glazer et al. gefunden werden, die "High Speed Power Analyzer" übertitelt ist, am 30. März 1990 eingereicht wurde und nun das US-Patent Nr. 5,151,866 ist. Dieses US-Patent wird hierdurch durch Bezugnahme in die Offenbarung eingeschlossen.
  • Mit Bezugnahme auf die 6A bis 6U wird nun ein schematisches Diagramm für eine der redundanten Computerschaltungen diskutiert. Aus Vereinfachungsgründen wird auf diese redundante Computerschaltung oder Feld-Eingabe/Ausgabe-Steuereinheit generell als Steuereinheit 100 Bezug genommen. Es sollte ferner verstanden werden, daß bei dieser Ausführungsform die Steuereinheit 100 für jede der redundanten Computerschaltungen 92–96 repliziert wird. Es sollte allerdings gewürdigt werden, daß andere geeignete redundante Computerschaltungen bei der angemessenen Anwendung verwendet werden können, und daß eine oder mehrere dieser Schaltungen durch eine aktualisierte Schaltung ersetzt werden könnte, ohne notwendigerweise das Ersetzen aller der redundanten Computerschaltungen zu erfordern.
  • 6A zeigt, daß die Steuereinheit 100 einen Mikroprozessor-Schaltungschip U40 enthält. Während nach einer Ausführungsform der Mikroprozessor U40 einen durch Intel hergestellten 80C31BH-1 Mikroprozessorchip umfaßt, so sollte verstanden werden, daß andere geeignete Chips für diesen oder beliebige der anderen hierin identifizierten Chips verwendet werden können, so wie es die Anwendung oder der technische Fortschritt rechtfertigen mag. Der Mikrocomputerkern für die Steuereinheit 100 enthält ferner einen 128 K x 8 EPROM-Speicher (58255 P-551) U41, einen batteriegesicherten 128 K x 8 RAM-Speicher (58255 P-551) U42 und ein Speicheradressen-Latch (74HC573). Der Mikrocomputerkern für die Steuereinheit 100 enthält ferner eine Speichersteuereinheit (EP1810) U44, die in 6B gezeigt ist. Bei dieser Ausführungsform könnte das Programm für die Steuereinheit entweder in der EPROM-Schaltung oder in der batteriegesicherten RAM-Schaltung gespeichert sein. Die Verwendung eines batteriegesicherten RAMs ist in wenigstens einer Hinsicht besonders vorteilhaft. Das batteriegesicherte RAM U42 hilft nämlich, daß ein aktualisiertes Programm in einem beliebigen zur Verfügung stehenden Kommunikationszeitschlitz durch das faseroptische Netz von den Prozeß-Steuer/Regel-Computern 14a–14b herabgeladen werden kann, ohne die Speichervorrichtung für eine Änderung der darin gespeicherten Information elektrisch konfigurieren zu müssen.
  • Es sollte als wichtig vermerkt werden, daß der Prozeß des Herabladens eines aktualisierten Programms zu einer oder mehreren der Feldcomputereinheiten 12 die fortgehende Führung des gesteuerten/geregelten physikalischen Prozesses nicht stört. Genauer: Zu einem Zeitpunkt wird nur das Programm für eine der Steuereinheiten 100 aktualisiert, so daß die anderen beiden verbleibenden Steuereinheiten unter ihren bestehenden Programmen fortfahren können, Feldeingaben und – ausgaben zu verarbeiten. Bei einer Form der vorliegenden Erfindung weist das RAM U42 eine Speicherkapazität von 128 K Bytes auf, obwohl die Speicheranforderungen des tatsächlichen Programms 64 K nicht überschreiten. Dies hat den Zweck zu ermöglichen, sowohl Daten- als auch Programmspeicher auf dem gleichen Chip zu speichern. Die Verdoppelung der Speicherkapazität ermöglicht es, daß ein aktualisiertes Programm geladen und verifiziert wird, während die Steuereinheit keine Prozeß-Steuerung/Regelung durchführt, ohne den momentanen Inhalt des Programmspeichers zu stören. Nachdem diese Gültigkeitsüberprüfung beendet ist, wird das aktualisierte Programm zu den unteren 64 K Speicherstellen des RAM U42 verschoben, um beim nächsten Programmzyklus verwendet zu werden.
  • Nachdem das aktualisierte Programm ordnungsgemäß in das RAM U42 für eine der Steuereinheiten 100 in einer Feldcomputereinheit 12 geladen wurde, wird es nachfolgend der Reihe nach in das RAM U42 für jede der anderen Steuereinheiten 100 geladen. Wie unten diskutiert werden wird, enthält jede der Steuereinheiten 100 serielle Nachbar-zu-Nachbar-Kommunikationsverbindungen, die es unter anderem ermöglichen, daß ein zu einer der Steuereinheiten gesendetes aktualisiertes Programm in den RAM-Speicher U42 einer anderen Steuereinheit in der Feldcomputereinheit 12 kopiert wird. Derartige Nachbar-zu-Nachbar-Verbindungen ermöglichen es auch, daß eine der Steuereinheiten vollständig den Programmspeicher in einer anderen Steuereinheit neu abspeichert, sollte eine derartige Aktion erforderlich sein. Jede der Feldcomputereinheiten 12 im verteilten Schnittstellensystem 10 kann somit mit aktualisierten Anwendungsprogrammen versehen werden, ohne daß irgendwelche manuellen Schritte an den Feldcomputereinheiten unternommen werden müßten oder eine Unterbrechung des physikalischen Prozesses selbst erforderlich wäre. Tatsächlich ist es auch möglich, daß bei dem faseroptischen Netz eine Rundspruch-Herabladeoperation verwendet wird, bei der einige oder alle der Feldcomputereinheiten 12 nebeneinander ein aktualisiertes Programm durch eine allgemein adressierte Netzmitteilung empfangen. Mit anderen Worten könnten die Prozeß-Steuer/Regel-Computer 14a–14b ein aktualisiertes Programm zu so vielen Feldcomputereinheiten 12 wie im verteilten Schnittstellensystem 10 angemessen übertragen, indem die Adressen zu jeder der entsprechenden Ausbruchschaltungen 26 in der Sendemitteilung gesetzt werden, um die Mitteilung zu den gewählten Feldcomputereinheiten zu richten.
  • Der RAM-Speicher U42 und der ROM-(und Ureingabe-)Speicher U41 teilen sich einen gemultiplexten Adreß/Datenbus "P0" (Stifte P0-1..P0-71, wie auch einen gemeinsamen Adreßbus "P2" (Stifte P2-0..P2-7). Diesbezüglich sollte gewürdigt werden, daß das Speicheradressen-Latch U43 aus dem gemultiplexten Adreß/Datenbus einen Adreßbus "AD" (Stifte AD-0..AD-7) für die Verwendung durch verschiedene Komponenten in der Steuereinheit 100 erzeugt. Mit anderen Worten wird das Speicheradreß-Latch U43 eine Adresse oder Teiladresse an Stiften P0-1 .. P0-7 für die nachfolgende Verwendung durch Komponenten, wie etwa dem EPROM-Speicher U41, einfangen. Beispielsweise sind die Stifte AD-0 .. AD-3 und AD-7 zur Speichersteuereinheit U44 gerichtet, bei der es sich um eine programmierbare Logikanordnung handelt. Die Speichersteuereinheit wird in Abhängigkeit von dem digitalen Zustand dieser Adreßstifte und anderer erforderlicher Eingangsstifte (wie etwa "/WR") ein Ausgabesignal entsprechend der internen Software-Konfiguration für den Chip erzeugen. Als ein Beispiel einer derartigen Ausgabe wird die Speichersteuereinheit ein "/RAM"-Signal erzeugen, das zum "/CE"-Anschluß des RAM-Speichers U42 gerichtet wird. Dieses spezielle Signal von der Speichersteuereinheit U44 gibt den RAM-Speicherchip U42 frei, in Kombination mit anderen zugeordneten Signalen, wie etwa das durch die Speichersteuereinheit erzeugte "/RAM-WR"-Signal, Daten zu lesen oder zu schreiben.
  • 6A zeigt einen manuell betätigten Rücksetzschalter "SW4", der zweckdienlich auf der Vorderplatte der Feldcomputereinheit 12 angeordnet sein kann, um einem Techniker zu ermöglichen, den Mikroprozessor U40 der Steuereinheit 100 zurückzusetzen. In Übereinstimmung mit der vorliegenden Erfindung ist allerdings ferner eine nachbargesteuerte Rücksetzschaltung 102 vorgesehen, die es beliebigen zwei Steuereinheiten in der Feldcomputereinheit 12 ermöglicht, die verbleibende Steuereinheit ohne Eingriff einer Bedienperson zurückzusetzen. Die Rücksetzschaltung 102 weist zwei Eingangssignale auf, nämlich "N1RST" und "N2RST". Jedes dieser Signale repräsentiert eine Rücksetzanforderung zur Steuereinheit von einer der anderen Nachbar-Steuereinheiten. Das N1RST-Signal ist zum Optokoppler (MOC8021) U36 gerichtet, während das N2RST-Signal zum Optokoppler U35 gerichtet ist. Der Ausgang des Optokopplers U36 ist mit dem anderen Eingang zum Optokoppler U35 verbunden, so daß die Rücksetzschaltung 102 die Kombination aus sowohl dem N1RST-Signal als auch dem N2RST-Signal erfordert, um ein Hochpegelausgabe-"RESET"-Signal (Rücksetzsignal) zur Übertragung zum RST-Anschluß des Mikrocomputers U40 durch einen Komparator (LM339) U24 und einen Mikromanager (DS1236-5) U28 zu erzeugen. Der Komparator wird dazu verwendet, ein niederpegeliges "EXTRNRST"-Signal zu erzeugen, wenn der Mikroprozessor U40 zurückzusetzen ist. Die Mikromanagerschaltung U28 wird auf das niederpegelige EXTRNRST-Signal antworten, indem sie das hochpegelige RESET-Signal erzeugt.
  • Wenn somit beispielsweise zwei der Steuereinheiten in der Feldcomputereinheit innerhalb einer vorbestimmten Zeitperiode keine Kommunikation von der verbleibenden Steuereinheit empfangen, kann jede der anderen Steuereinheiten unabhängig zu einer Entscheidung kommen, daß die nicht antwortende oder auf andere Weise fehlerhafte Steuereinheit temporär zurückgesetzt oder permanent ausgeschaltet werden sollte. Nichtsdestoweniger erfordert die Rücksetzschaltung 102 das Einverständnis von beiden der anderen benachbarten Steuereinheiten, um die verbleibende Steuereinheit temporär zurückzusetzen oder auszuschalten, indem eine Rücksetzbedingung verursacht wird (um diese Steuereinheit im Rücksetzzustand zu halten, wenn sie permanent ausgeschaltet werden soll). Ein permanenter Rücksetzzustand auf dem Mikroprozessorniveau wird den Betrieb der Steuereinheit sperren, bis wenigstens eine ihrer benachbarten Steuereinheiten den digitalen Zustand ihres Rücksetzanforderungssignals ändert. Gemäß einem Betriebsverfahren wird die nicht antwortende Steuereinheit zeitweilig zurückgesetzt, bevor eine Entscheidung getroffen wird, die Steuereinheit permanent zurückzusetzen. Die anfängliche Entscheidung, die nicht antwortende Steuereinheit temporär zurückzusetzen, wird bevorzugt dann getroffen, wenn über zwei aufeinanderfolgende Prozeß-Steuer/Regel-Zyklen (beispielsweise 2 Sekunden) keine gültigen Eingabe- und Ausgabe-Kommunikationsmitteilungen empfangen wurden. Dementsprechend sollte gewürdigt werden, daß dieses Verfahren eine Fehlertoleranz für die Kommunikation zwischen benachbarten Steuereinheiten von wenigstens einem Prozeß-Steuer/Regel-Zyklus ermöglicht. Falls die nicht antwortende Steuereinheit keine Kommunikation mit ihren Nachbarn innerhalb einer vorbestimmten Zeitdauer nach dem temporären Zurücksetzen (beispielsweise 20 Sekunden) anfängt, werden ihre benachbarten Steuereinheiten dann unabhängig ein dauerhaftes Rücksetzen der nicht antwortenden Steuereinheit anfordern. Sobald die nicht antwortende Steuereinheit ersetzt oder repariert wurde, kann der permanente Rücksetzzustand durch eine Änderung eines Software-Werts an der angemessenen Datentabellenstelle einer benachbarten Steuereinheit beendet werden, um die zuvor nicht antwortende Steuereinheit zu reaktivieren. Zusätzlich hält jede der Steuereinheiten 100 bevorzugt eine Zählung der Anzahl, wie oft sie einen Rücksetzzustand einer benachbarten Steuereinheit angefordert haben, so daß eine Aufzeichnung für eine Gesundheits- und Wohlergehensanalyse zur Verfügung gestellt werden kann, wenn erforderlich.
  • Es sollte vermerkt werden, daß jede der Steuereinheiten bevorzugt dreimal in einem Prozeß-Steuer/Regel-Zyklus (beispielsweise 1 Sekunde) mit ihren benachbarten Steuereinheiten kommuniziert. Genauer, jede der Steuereinheiten wird die folgenden Signale zu benachbarten Steuereinheiten übertragen: Die vom Feld empfangenen Eingabesignale, die von einem der Prozeß-Steuer/Regel-Computer empfangenen Ausgabesignale sowie verschiedene Diagnosesignale, die unten vollständiger diskutiert werden. Bei einer Form der vorliegenden Erfindung können diese Übertragungen während vorbestimmter Zeitfenster (beispielsweise jeweils 8 ms) stattfinden.
  • Die Mikromanagerschaltung U28 überwacht ferner den Spannungspegel der VCC-Energieleitung von normalerweise +5 V. Diese Überwachungsfunktion ermöglicht, daß ein temporärer Rücksetzzustand in dem Fall auferlegt wird, daß die VCC-Energieleitung momentan unter einen vorbestimmten Pegel (beispielsweise +3 V) fällt. Ferner ist die Mikromanagerschaltung U28 dazu geeignet, die elektrische Energieversorgung für den RAM-Speicher U42 zu der Lithium-Reservebatterie B1 zu schalten, in dem Fall, daß die VCC-Energieleitung auf null abfällt. Die Mikromanagerschaltung U28 steuert das PROT-CERAM-Signal. Dieses Signal folgt üblicherweise dem CERAM-Signal, ist aber während batteriegesicherten Zuständen hochgelatcht. Es ist wichtig, daß diese Prozedur diese Speicherschaltungen dahingehend sperrt, daß neue Daten in ihre jeweiligen Speicherstellen geschrieben werden. Diese Prozedur wird verwendet, um eine mögliche Verfälschung der im RAM-Speicher enthaltenen Daten aufgrund einer Unterbrechung der elektrischen Energie zu verhindern.
  • Es sollte auch aufgezeigt werden, daß die Optokoppler U35–U36 die Steuereinheit 100 von beiden ihren Nachbarn isoliert. Bei dieser speziellen Ausführungsform werden Optokoppler am Empfangsende verwendet, um alle Kommunikationswege zwischen den redundanten Steuereinheiten 100 zu isolieren, um zu verhindern, daß ein elektrischer Fehler in einer der Steuereinheiten den Betrieb ihrer benachbarten Steuereinheiten beeinträchtigt.
  • Nachbar-zu-Nachbar-Signalübertragungen vom Mikroprozessor U40 der 6A sind durch die seriellen Kommunikationstreiber (74H138) U38 der 6H vereinfacht. Wie in 6H veranschaulicht, ist das "TXDATA"-Signal vom seriellen Ausgabeanschluß des Mikroprozessors U40 mit dem "/G2B"-Eingabeanschluß des seriellen Kommunikationstreibers U38 gekoppelt. Dementsprechend sollte gewürdigt werden, daß der serielle Kommunikationstreiber U38 dazu verwendet wird, das TXDATA-Signal vom Mikroprozessor U40 zu einem oder mehreren einer Mehrzahl von verschiedenen Kommunikationspfaden zu richten. Diese Kommunikationspfade schließen die "NF1TXD"- und "NF2TXD"-Signale ein, die jeweils ein serielles Kommunikationssignal zu einer verschiedenen benachbarten Steuereinheit 100 repräsentieren. Es sind vier zusätzliche serielle Kommunikationsausgabesignalströme vorgesehen, nämlich "TXDATAA0", "TXDATA1", "TXDATA6" und "TXDATA11". Das TXDATAA0-Signal ist zu den analogen Ausgabeschaltungen in der Feldcomputereinheit 12 gerichtet, um analoge Ausgabewerte zu übertragen und das unten zu beschreibende nicht störende Testen zu leiten. Diesbezüglich sollte gewürdigt werden, daß die analogen Ausgabewertsignale, die von den Prozeß-Steuer/Regel-Computern 14a–14b zu der Feldcomputereinheit 12 übertragen werden, nachfolgend durch den Mikroprozessor U40 der Steuereinheit 100 verarbeitet (beispielsweise Software-Schlichtung) und durch den seriellen Kommunikationstreiber U38 zu der angemessenen analogen Ausgabeschaltungsplatine der Feldcomputereinheit gerichtet werden. Des weiteren sollte vermerkt werden, daß die geschlichteten analogen Ausgabewertsignale nicht zu einer der benachbarten Steuereinheiten übertragen werden, da hierfür gemäß der vorliegenden Ausführungsform keine Notwendigkeit besteht. Es sollte somit an dieser Stelle gewürdigt werden, daß keine der anderen Steuereinheiten von zu ihren jeweiligen analogen Ausgabeschaltungen übertragenen, speziellen analogen Ausgabewertsignale Kenntnis hat. Die anderen drei seriellen Kommunikationssignale (TXDATA1 , TXDATA6 und TXDATA11) werden zu speziellen analogen Eingabeschaltungen gerichtet, um Wert- und Konfigurationsdaten anzufordern.
  • Die letzten beiden verbleibenden Ausgabesignale des seriellen Kommunikationstreibers U38 der 6H sind die "MAIN_XMIT"- und "RPT XMIT"-Signale. Das MAIN_XMIT-Signal ist zu einer Senderschaltung, wie etwa die in 15B gezeigte, gerichtet für die Kommunikation mit einem der Prozeß-Steuer/Regel-Computer 14a–14b über das faseroptische Netz. Diesbezüglich ist das MAIN_XMIT-Signal zum angemessenen Anschluß der mit der Feldcomputereinheit 12 verbundenen Ausbruchschaltung 26 gerichtet. Das RPT_XMIT-Signal liefert einfach zusätzliche Kommunikationskapazität, falls dies gewünscht ist. Hinsichtlich der Steuereinheit 100, die im mittleren Schlitz der Feldcomputereinheit 12 zwischen der linken und der rechten Steuereinheit angebracht ist, besteht bei dieser speziellen Ausführungsform keine für die MAIN_XMIT- und RPT XMIT-Signale vorgesehene Verbindung. Allerdings sollte gewürdigt werden, daß das faseroptische Netz modifiziert sein könnte, um einen Satz von faseroptischen Leitungen für jede in der Steuereinheit 12 enthaltene Steuereinheit 100 vorzusehen, insbesondere dann, wenn drei redundante Prozeß-Steuer/Regel-Computer 14 vorgesehen sind.
  • 6C veranschaulicht eine Signalverteilungsschaltung 104, die mit dem gemultiplexten Daten/Adressen-Bus P0 des Mikroprozessors U40 gekoppelt ist. Die vom Mikroprozessor U40 zur Verteilungsschaltung 104 gerichteten Signale werden durch ein Paar von oktalen Latch-Schaltungen (74HC573) U37 und U32 des D-Typs gepuffert. Die Latch-Schaltung U32 wird dazu verwendet, Signale zur Austestkonsole 44 für die Steuereinheit 100 zu übertragen, während die Latch-Schaltung U37 einen Verteilungsbus "RP" (Stifte RP-0..RP-7) für den Gebrauch durch mehrere andere Schaltungschips erzeugt. Jede der mit dem RP-Bus in 6C verbundenen Schaltungschips umfassen eine 8-Bit-adressierbare Latch-Schaltung (75HC259).
  • Die Latch-Schaltung U30 und ein Abschnitt der Latch-Schaltung U39 werden dazu verwendet, einen individuellen "Satz" von digitalen Ausgabesignalen (Stifte SD0-1..SD0-10) zu speziellen digitalen Ausgabeschaltungen zu übertragen, die durch die Rückwandplatine 90 mit der Steuereinheit 100 verbunden sind. Dementsprechend sollte gewürdigt werden, daß die digitalen Ausgabewertesignale, die von den Prozeß- Steuer/Regel-Computern 14a–14b zur Feldcomputereinheit 12 übertragen werden, nachfolgend durch den Mikroprozessor U40 der Steuereinheit 100 verarbeitet (beispielsweise Software-Schlichtung) und durch die Latch-Schaltungen U30 und U39 zu den angemessenen digitalen Ausgabeschaltungsplatinen der Feldcomputereinheit gerichtet werden.
  • Die Latch-Schaltungen U22, U26, U34 und U39 werden dazu verwendet, Analogausgabe-Abbruchsignale "AAO" und Digitalausgabe-Abbruchsignale "AD0" zu den analogen Ausgabeschaltungen bzw. digitalen Ausgabeschaltungen benachbarter Steuereinheiten zu übertragen. Beispielsweise erzeugt die Latch-Schaltung U22 Digitalausgabe-Abbruchsignale ADO2-3..ADO2-10, während die Latch-Schaltung U26 Digitalausgabe-Abbruchsignale ADO1-2..ADO1-9 erzeugt. Diese Notation bedeutet, daß alle der Digitalausgabe-Abbruchsignale von der Latch-Schaltung U22 zu den digitalen Ausgabeschaltungen für den als "Nachbar 2" in Bezug auf diese bestimmte Steuereinheitsschaltung bezeichnete Steuereinheit 100 gerichtet sind. In gleicher Weise sind alle Digitalausgabe-Abbruchsignale von der Latch-Schaltung U26 zu den digitalen Ausgabeschaltungen für die als "Nachbar 1" bezeichnete Steuereinheit gerichtet. Des weiteren beziehen sich die speziellen – Signale mit entsprechenden letzten Ziffern, wie etwa AD01-9 und AD02-9 auf den gleichen digitalen Ausgabekanal. Es sollte somit gewürdigt werden, daß den digitalen Ausgabeschaltungen für die benachbarten Steuereinheiten innerhalb der Feldcomputereinheit 12 eine Reihe von entsprechenden Digitalausgabe-Abbruchsignalen gesendet werden.
  • Bezüglich der Analogausgabe-Abbruchsignale sollte verstanden werden, daß diese Signale nicht analoger Natur sind. Vielmehr nehmen die Analogausgabe-Abbruchsignale, wie im Fall der Digitalausgabe-Abbruchsignale, entweder einen digitalen Hoch-(High)-Zustand (logische "1") oder einen digitalen Tief-(Low)-Zustand (logische "0") ein. Weiter wird eine entsprechende Notation sowohl für die Digitalausgabe-Abbruchsignale als auch für die Analogausgabe-Abbruchsignale verwendet. Es sollte dementsprechend gewürdigt werden, daß zu den analogen Ausgabeschaltungen für jede der benachbarten Steuereinheiten innerhalb der Feldcomputereinheit 12 eine Reihe von einzelnen Analogausgabe-Abbruchsignalen gesendet wird. Wie aus der Diskussion der Analogausgabe- und Digitalausgabe-Schaltungen unten (beispielsweise 10A–10B) klarer werden wird, werden diese "Abbruch"-Ausgabesignale dazu verwendet, durch jede der Steuereinheiten 100 getroffene Software-Schlichtungsentscheidungen durchzusetzen. Diese Schlichtungsentscheidungen sind durch die "gesetzten" digitalen Ausgabesignale und die analogen Ausgabesignale repräsentiert, die oben schon diskutiert wurden.
  • Die Signalverteilungsschaltung 104 der 6C enthält ferner eine Latch-Schaltung U33, die für verschiedene Funktionen der Steuereinheit 100 verwendet wird. Beispielsweise sind mehrere Temperatursteuersignale gezeigt, wie etwa "FANON" (Gebläse an), "COOLON" (Kühlung an) und "HEATON" (Erwärmung an), um das Innere der Feldcomputereinheit in einem akzeptablen Temperaturbereich zu halten. Wie die Signalnamen implizieren, kann die Feldcomputereinheit 12 mit einem oder mehreren Gebläsen, einer Heizeinrichtung und/oder einer Luftkühlvorrichtung versehen sein, und zwar für den Fall, daß die Feldcomputereinheit in einem Umfeld angeordnet ist, in dem derartige Maßnahmen wünschenswert sein würden. Das "BAT"-Signal wird dazu verwendet, eine Ladeeinrichtung für die Batterien 52 auszuschalten, um einen Ladetest zu starten, der in Verbindung mit der Energieversorgungsschaltung 50 zu beschreiben ist. Das "BATTOFF"-Signal (Batterie-aus-Signal) wird dazu verwendet, eine +5 Volt-Energieversorgungsleitung zur Feldcomputereinheit stillzulegen, wenn die Batterien 52 von Energie leer sind. In ähnlicher Weise wird das "/CONSERVE"-Signal (Erhalten-Signal) dazu verwendet, eine +26 Volt-Energieleitung zur Feldcomputereinheit auszuschalten, um die Batterieenergie zu bewahren. Das "XGFLT"-Signal wird dazu verwendet, die Schaltungsanordnung zu steuern, die Überprüfungen hinsichtlich eines Unterschieds zwischen dem Massepotential der Feldcomputereinheit und der wahren Masse vornimmt.
  • Das "DEADSET"-Signal ist zu einer wieder-triggerbaren monostabile Multivibratorschaltung (74LS122) U21 gerichtet, die als Totmann-Timer und Abbruch-Öffnungsschaltung verwendet wird. Diesbezüglich bestimmen die Kapazität C49 und der Widerstand R102 eine Basispulszeit, und das DEADSET-Signal (Tot-Setzen-Signal) wird dazu verwendet, zu verhindern, daß das "/ABRES"- und "DEAD"-(tot)-Ausgabesignale in ihre Aus-Zustände schalten. Wie in 6C veranschaulicht, ist das /ABRES-Signal zum /CLR-Anschluß der Latch-Schaltungen U22, U26, U30, U34 und U39 gerichtet. Dementsprechend dient das /ABRES-Signal dazu, alle diese identifizierten Latch-Schaltungen simultan zurückzusetzen, wenn das DEADSET-Strobe-Signal nicht vom Mikroprozessor U40 empfangen wird, um einen Timer in der Multivibratorschaltung U21 neu zu triggern. Das DEADSET-Signal wird einmal pro Prozeß-Steuer/Regel-Zyklus übertragen, wenn der Mikroprozessor U40 ordnungsgemäß funktioniert. Das DEAD-Signal (Tot-Signal) wird zu den analogen Ausgabeschaltungen gerichtet, um diese daran zu hindern, Energie zum Feld zu senden.
  • 6B veranschaulicht ferner, daß die PLD-Schaltung U44 demultiplexte Ausgabesignal (OUT0..OUT7) erzeugt, die zum Freigabeanschluß für mehrere der oben diskutierten Schaltungschips gerichtet sind. Beispielsweise wird das OUT5-Signal zur Latch-Schaltung U22 übertragen, um diese Latch-Schaltung freizugeben, das HIGH/LOW-Datensignal (Hochpegel/Niederpegel-Datensignal) auf der Leitung RP-0 zu fangen und es zum durch die Leitungen RP-1..RP-3 adressierten Ausgabeanschlusses zu richten. Ferner werden die OUT6- und OUT7-Signale zu einer Digital-zu-Analog-Wandlerschaltung U1 gerichtet, die in Verbindung mit 6K diskutiert werden wird.
  • Die PLD-Schaltung U44 erzeugt ferner demultiplexte Ausgabesignale (IN0– IN6), die zu den verschiedenen "Lese"-Schaltungen gerichtet sind, die in den 6F und 6G gezeigt sind. So ist beispielsweise das IN3-Signal von der PLD-Schaltung U44 zu den Freigabeanschlüssen (/1G und /2G) der Tristate-Pufferschaltung (74HC244) U16 der in 6F gezeigten "Lese"-Fernadreßschaltung 106 gerichtet. Diesbezüglich bestimmen die Schalter SW1 und SW2 (230034G) die Feldadresse der Steuereinheit 100, die durch den Mikroprozessor U40 vom Bus P0 gelesen werden kann, wenn es wünschenswert ist, eine Mitteilung von einem der Prozeß-Steuer/Regel-Computer 14a–14b zu empfangen oder eine Mitteilung zu einem derselben zu bilden. 6F enthält ferner eine Lesefunktionsschaltung 107 ähnlich zu der Lese-Fernadreßschaltung 106. Die Lesefunktionsschaltung 107 enthält einen Schalter SW3, der gesetzt wird, um den Mikroprozessor U40 über die Energieversorgungskonfiguration für die Steuereinheit und/oder andere Hardware-spezifische Einstellungen zu informieren. Weiter enthält die Lesefunktionsschaltung 107 einen Satz von KEY0..KEY3-Signalen (Taste 0..Taste 3-Signalen), die den auf der Austestkonsole 44 gedrückten Tasten entspricht. Diese Tasten umfassen eine Funktionstaste, eine Taste zum Lesen eines Speicherelements und eine Taste zum Einbringen eines Werts in eine Speicherstelle.
  • 6D zeigt eine andere Leseschaltung 108. Diese Leseschaltung enthält einen Satz von Jumpern "J7-J10", die dazu verwendet werden können, dem Mikroprozessor U40 die Kenntnis zu ermöglichen, welche Hardware-Version oder Ausgabe für die Steuereinheit 100 verwendet wird. Weiter wird ein Schalter "SW6" eingesetzt, um Platz für zukünftige Erweiterungen vorzusehen. Die durch die Jumper J7-J10 und durch den Schalter SW6 gelieferten Signale werden durch die Tristate-Pufferschaltung (74HC244) U61 gefangen und zum P0-Bus des Mikroprozessors U40 übertragen.
  • 6E zeigt eine Anzeigeschaltung 109, die eine oktale Flip-Flop-Schaltung U62 und eine LED-Bank (LEDBAR10) "LED1" umfaßt. Die Anzeigeschaltung wird auf der Steuereinhalt-Schaltungsplatine verwendet, um einem Techniker zu ermöglichen, daß dieser während einer Wartung verschiedene Gesundheits- und Wohlergehensanzeigen für die Steuereinheit leicht sieht.
  • Man wendet sich nun 6G zu, die einen Satz von drei Leseschaltungen 110–114 zeigt. Diese Leseschaltungen werden dazu verwendet, den Mikroprozessor U40 dahingehend zu informieren, wie die von einer Mehrzahl von Analogsignal-Eingabeschaltungen, wie etwa die in 7A bis 7C und 8A bis 8F Gezeigten, gelesenen Daten zu interpretieren sind. Beispielsweise informieren die "TYPEAC"- und "TYPEDC"-Signale den Mikroprozessor U40 darüber, ob die Eingabesignale vom linken Erweiterungschassis 42 Wechselstromsignale "A.C." oder Gleichstromsignale "D.C." repräsentieren. Ferner liefern Signale, wie etwa "FAM1-5A" bzw. "FAM1-5B", die zu den Pufferschaltungen U23–U27 übertragen werden, digitale Angaben von allgemeinen Linearisierungsroutinen, die durch den Mikroprozessor U40 verwendet werden sollten. Beispielsweise geben diese Signale an, ob ein bestimmtes, durch den Mikroprozessor U40 empfangenes Signal von einer intelligenten Eingabeschaltungsplatine oder einer Standard-Eingabeschaltungsplatine übertragen wurde. Die "AITYPE1-A"- und "AITYPE3-B"-Signale geben spezielle Linearisierungsroutinen an, die durch den Mikroprozessor U40 eingesetzt werden sollten (beispielsweise Thermoelemente des Typs J gegenüber Thermoelementen des Typs S).
  • Die Pufferschaltung U31 empfängt Signale, wie etwa "AISENSE1-5", die den Mikroprozessor U40 darüber informieren, welche Eingabe- und Ausgabe-Schaltungsplatinen in der Feldcomputereinheit 12 installiert sind. Der Schalter SW4 wird dazu verwendet, Signale, wie etwa "USE-DOAC1", zu konfigurieren, die den Mikroprozessor U40 darüber informieren, ob die Steuereinheit 100 als eine linke, eine mittlere oder eine rechte Steuereinheit eingesetzt wird.
  • 61 zeigt eine 16-Kanal-Multiplexer-Schaltung (506A) U9, die dazu konfiguriert ist, eine Mehrzahl von digitalen Eingabesignalen zu der Hauptmultiplexerschaltung (506) U11 zu richten, die in 6J gezeigt ist. Genauer: Die digitalen Eingabesignale sind mit "MDI-1..MD1-10" bezeichnet. Diese Signale werden von den Herabziehschaltungen, die in 6T und 6U gezeigt sind, abgeleitet. Es werden Adreßleitungen "HDEV0..HDEV3" dazu verwendet, eines dieser digitalen Eingabesignale für die Ausgabe zur Hauptmultiplexerschaltung U11 zu wählen. Der Ausgabeanschluß des Multiplexers U9 ist mit einem Operationsverstärker (3140A) verbunden, der als Spannungsfolger konfiguriert ist, um das "DI-LOCAL"-Signal (DI-Lokal-Signal) für die Übertragung zum Hauptmultiplexer U11 zu erzeugen.
  • Der Hauptmultiplexer U11 der 6J wird dazu verwendet, individuell eines aus einer Mehrzahl von verschiedenen Eingabesignalen zur Übertragung zum Mikroprozessor U40 durch eine Sukzessiv-Approximationsschaltung 116 in einem Sukzessivmuster zu wählen. Diese Eingabesignale umfassen die Analogpegel- oder seriellen Analogeingabesignale (beispielsweise "MAI6-10L"), analogen Ausgabestatus- und Nachführsignale (beispielsweise "AOT"), seriellen Kommunikationssignale von den benachbarten Steuereinheiten (beispielsweise "NP2RXD"), und seriellen Kommunikationssignale vom faseroptischen Netz (beispielsweise "MAIN_RCV"). Weiter empfängt die Hauptmultiplexerschaltung U11 ein "DI_DISTANT"-Signal (DI-ENTFERNT-Signal), das eine Mehrzahl von gemultiplexten Analogspannungspegelsignalen von digitalen Eingabeschaltungen im linken Erweiterungschassis 42 repräsentiert, sowie ein "DO_DISTANT"-Signal (DO ENTFERNT-Signal), das eine Mehrzahl von gemultiplexten Analogspannungspegelsignalen von analogen Eingabeschaltungen im linken Chassis repräsentiert. Das "DACCAL"-Signal ist ein Signal, das dazu verwendet werden könnte, eine externe Kalibrierung der DAC-Schaltung U1 vorzusehen. Das "BOARD FUNC"-Signal (Platinenfunktionssignal) repräsentiert eine Mehrzahl von gemultiplexten Signalen von der Multiplexerschaltung U10 der 6K. Das "DO_LOCAL"-Signal ("DO LOKAL"-Signal) repräsentiert eine Mehrzahl von gemultiplexten Informationssignalen von einer oder mehreren digitalen Ausgabeschaltungsplatinen, wie etwa Nachführwerte und Rückgabewerte vom nicht störenden Testen.
  • Die Sukzessiv-Approximationsschaltung 116 empfängt durch den Widerstand R41 die gemultiplexte Ausgabe vom Hauptmultiplexer U11. Die Sukzessiv-Approximationsschaltung 116 ermöglicht dem Mikroprozessor U40 die Bestimmung des Spannungspegels einer Signalausgabe vom Multiplexer U11. Diesbezüglich liefert die Ausgabe vom Hauptmultiplexer U11 eine Eingabe zu einem Komparator (LM339) U3. Die andere Eingabe zum Komparator U3 wird durch eine Digital-zu-Analog-Wandler-"DAC"-Schaltung (DAC708KH) U1 bereitgestellt, die in 6K als eine Fortsetzung der Sukzessiv-Approximationsschaltung 116 gezeigt ist. Genauer: Die Sukzessiv-Approximationsschaltung ermöglicht dem Mikroprozessor U40, eine Mehrzahl von sowohl digitalen als auch analogen Eingabesignalen durch eine einzige Eingabeleitung "RXDATA" zu empfangen. Dies wird erreicht durch Umschalten der Ausgabe des Komparators U3 in Antwort auf eine Änderung eines "VOUT"-Signalpegels von der DAC-Schaltung U1. Der Mikroprozessor U40 überträgt über den RP-Bus eine Reihe von verschiedenen Digitalspannungspegeln zur DAC-Schaltung U1 bis zu dem Zeitpunkt, daß der Komparator U3 seinen Ausgangszustand ändert. Diesbezüglich führt der Mikroprozessor U40 bevorzugt eine binäre Suche durch, indem er mit einem digitalen Spannungspegel in der Mitte des akzeptablen Bereiches startet, bestimmt, ob dieser Wert hoch oder niedrig ist und dann von diesem Punkt schrittweise aufwärts oder abwärts fortfährt. Der Mikroprozessor U40 bestimmt dann die Spannungspegelausgabe vom Hauptmultiplexer U11 durch seine Kenntnis des letzten, zur DAC-Schaltung U1 übertragenen digitalen Spannungspegels. Dementsprechend sollte gewürdigt werden, daß die Kombination dieser Sukzessiv-Approximationsprozedur und die Verwendung von Multiplexern beträchtlich die Anzahl von Eingabestiften reduziert, die andernfalls erforderlich wären, um alle durch die Feldcomputereinheit 12 gesammelten digitalen und analogen Eingabesignale zu lesen.
  • 6K zeigt ferner, daß die DAC-Schaltung U1 durch eine oktale D-Flip-Flop-Schaltung (74HC374) U17 adressiert wird, die aus dem RP-Bus die Adreßleitungen "DAC0..DAC2" erzeugt. Weiter erzeugt diese Flip-Flop-Schaltung ferner Adreßleitungen "LDEV0..LDEV3", die zu pegelverschiebenden Pufferschaltungen (NC14504B) U18 und U19 gerichtet sind. Die LDEV-Adreßleitungen werden von einem 0/5 Volt-Signal zu einem 0/15 Volt-Signal verschoben, wie es durch die für die Multiplexerschaltungen U9, U10 und U11 gewünschte Konfiguration erforderlich ist. In ähnlicher Weise werden die Adreßleitungen P1-4..P1-7 durch die Pufferschaltung (MC14504B) U13 verschoben, um Adreßleitungen HP1-4..HP1-7 für den Multiplexer U11 zu erzeugen. Diesbezüglich sollte vermerkt werden, daß das Masse-GND-Potential dieser Multiplexerschaltungen auf 10 Volt anstelle von 0 Volt gesetzt ist. Dies liegt daran, daß der gewählte spezielle Multiplexerchip (506) den Potentialunterschied zwischen V+ und GND (Masse) auf 22 Volt begrenzt. Ist allerdings das GND-Potential auf 10 Volt gesetzt, kann das V+ Potential auf 25,2 Volt und das V– Potential auf –5 Volt gesetzt werden, wodurch ermöglicht wird, daß die Multiplexerschaltungen auf Basis einer +/– 15 Volt Versorgung arbeitet. Bei einer derartigen Konfiguration ist es erforderlich, den Pegel der LDEV-Adressensignale zu verschieben, um zu ermöglichen, daß der Multiplexerchip ordnungsgemäß arbeitet.
  • Wie in 6K angedeutet, empfängt die Multiplexerschaltung U10 mehrere verschiedene Eingabesignale zum Auswählen und Übertragen zum Hauptmultiplexer U11 mittels des "BOARD_FUNC"-Signals. Diese Eingabesignale umfassen den momentanen Status von Referenzspannungspegeln (beispielsweise "+10VREF") und verschiedene Temperaturpegel (beispielsweise "BDTEMP").
  • 6L veranschaulicht eine einfache Temperatursensorschaltung 118, die dazu verwendet wird, eine Angabe der Temperatur am oder nahe der Steuereinheitsschaltungsplatine zu liefern. Diese Temperatur wird durch die Wandlerschaltung erfaßt, die durch (AD502) Q13 und einen Widerstand R52 gebildet ist, und wird durch die Kapazität C13 gefiltert.
  • 6M veranschaulicht zwei Temperatur-Steuerung/Regelung-Ausgabeschaltungen 120–122. Die Ausgabeschaltung 120 reagiert auf ein "HEATON"-Signal ("WÄRMEAN"-Signal) von der Latch-Schaltung U33 der 6C, während die Ausgabeschaltung 122 auf ein "COOLON"-Signal ("KÜHLEAN"-Signal) von dieser Latch-Schaltung reagiert. Es werden Optokoppler U14–U15 dazu verwendet, die Steuereinheit durch die Übertragung von optischen Signalen "PHEAT" und "PCOOL" von den externen Heiz- und Kühlvorrichtungen galvanisch zu isolieren. Diese Optokoppler werden durch Stromquellen (T1317C) Q17–Q18 und das Auftreten entweder des HEATON- oder COOLON-Signals getrieben.
  • 6N veranschaulicht eine Filterschaltung 124 für die identifizierten Feuchtigkeits- und Temperatursignale. Beispielsweise ist das angegebene externe "EXTEMP 1"-Temperatursignal an der Ausgabe mit "MEXTEMP" bezeichnet, welches dann zur Multiplexerschaltung U10 der 6K übertragen wird. Dieses externe Temperatursignal kann als ein redundantes Temperatursignal einer kalten Referenzkontaktstelle verwendet werden. Das Feuchtigkeitssignal "HUMIDITY_1" (FEUCHTIGKEIT_1) kann von einem Sensor innerhalb des Gehäuses 88 der Feldcomputereinheit abgeleitet werden. Es kann eines oder können mehrere dieser Temperatursignale durch den Mikroprozessor U40 verwendet werden, um zu bestimmen, ob das PHEAT- oder PCOOL-Signal erzeugt werden sollte. In einer Ausführungsform ist es bevorzugt, daß die Innenumgebung der Feldcomputereinheit 12 in einem Temperaturbereich zwischen 10 und 50°C gehalten wird.
  • 60 ist eine sehr einfache Impedanzschaltung 126, die zusammen mit der seriellen Kommunikationstreiberschaltung U38 der 6H arbeitet, um mit benachbarten Steuereinheiten zu kommunizieren. Genauer: Die Schaltung 126 empfängt die "NF1 TXD"- und "NF2TXD"-Signale, die jeweils ein serielles Kommunikationssignal von einer der benachbarten Steuereinheiten repräsentieren. Diese Impedanz schützt die Treiberschaltung U38 vor einer Beschädigung in dem Fall, daß ein Kurzschluß an einer Signalleitung außerhalb der Steuereinheit 100 auftritt. Es sollte auch vermerkt werden, daß 6S eine serielle Kommunikationsempfängerschaltung 128 vorsieht zum Aufnehmen von Kommunikation von benachbarten Steuereinheiten. Diese Nachbarsignale werden zwecks optischer Isolation durch die Optokopplerschaltung U12 hindurchgegeben. Diese Signale werden dann als die Signale "NP2RXD" und "NP1RXD" zur Hauptmultiplexerschaltung U11 übertragen.
  • Wie vorher erwähnt, können die Nachbarkommunikationspfade dazu verwendet werden, Eingabe- und Ausgabewertesignale als auch aktualisierte oder revidierte Programmdaten zu übertragen. Es sollte dementsprechend gewürdigt werden, daß die Kombination von serielle- Kommunikation-Sende- und Empfängerschaltungen zwischen den drei Steuereinheiten 100 in der Feldcomputereinheit 12 der Feldcomputereinheit die Fähigkeit verleiht, sowohl eingehende als auch ausgehende Daten durch den gegenseitigen Austausch derartiger Daten einer Schlichtung durch die Steuereinheiten zu unterwerfen. Wenn somit die linke Steuereinheitsplatine 92 Ausgabewertsignale für die Feldinstrumentation über die faseroptischen Leitungen 48 empfängt, werden diese Signale durch die linke Steuereinheitsplatine auch zur mittleren Steuereinheitsplatine 94 und zur rechten Steuereinheitsplatine 96 übertragen. In gleicher Weise werden, wenn die rechte Steuereinheitsplatine 96 Ausgabewertsignale für das Feldinstrumentarium über die faseroptischen Leitungen 46 empfängt, diese Signale durch die rechte Steuereinheitsplatine auch zur mittleren Steuereinheitsplatine 94 und zur linken Steuereinheitsplatine 92 übertragen. Auf diese Art und Weise wird jede der drei Steuereinheitsplatinen 92 bis 96 mit drei Sätzen von Ausgabewertsignalen versorgt, die für eine unabhängige Schlichtung in Software verwendet werden können. Bei einer Form der vorliegenden Erfindung empfängt die mittlere Steuereinheit 94 Ausgabewertsignale sowohl von der linken Steuereinheitsplatine 92 als auch von der rechten Steuereinheitsplatine 96. Eine weitere Diskussion der Schlichtungsprozedur für Ausgabewerte wird in Verbindung mit den 17F bis 171 und 180 bis 18T geliefert werden.
  • 6P veranschaulicht eine Massefehlerschaltung 130, die dazu verwendet wird, durch das Signal "GNDFLT" und den Multiplexer U9 den Mikroprozessor U40 darüber zu informieren, daß ein Massefehlerzustand eingetreten ist. Diesbezüglich wird das "XGFLT"-Signal von der Latch-Schaltung U33 der 6C abgeleitet, während das "GND_FAULT"-Signal (Masse_Fehler_Signal) durch die Rückwandplatine 90 vom Feld abgeleitet wird. Ein Massefehlerzustand tritt dann auf, wenn ein sehr niedriger Potentialunterschied zwischen der Chassismasse und dem FLTGND-Anschluß besteht. Der Mikroprozessor U40 kann auf diesen Zustand reagieren, indem er ein Fehlerbit setzt, das dem Prozeß-Steuer/Regel-Computer 14 zur Verfügung steht.
  • Die 6Q und 6R sind einfach deswegen gezeigt, um zwei repräsentative Energiekonditionierschaltungen zu veranschaulichen, die an der Steuereinheit 100 enthalten sind. Das "MM15"-Ausgabesignal, das in 6R gezeigt ist, wird dazu verwendet, eine Überwachung der –15 Volt-Energieleitung zu ermöglichen. Ähnliche Energiekonditionierschaltungen sind ebenfalls in anderen Schaltungsplatinen in der Feldcomputereinheit 12 enthalten. Wie aus den obigen Diskussionen gewürdigt werden sollte, erfordert die Steuereinheit 100 mehrere verschiedene Spannungspegel, um die einen Teil der Steuereinheit bildenden Schaltungschips anzusteuern, und diese Energiekonditionierchips sind dazu eingerichtet, die gewünschten Spannungspegel zu erzeugen.
  • 6T und 6U veranschaulichen Digitaleingabe-Herabzieh-Schaltungen 132 bzw. 134. In dieser Hinsicht umfaßt jede dieser Schaltungen eine Stromquellenschaltung (TL317), wie etwa Q12, die dazu eingestellt ist, 2,5 mA durch eine Stromschleife zu treiben, die jeweils den angegebenen digitalen Eingabesignalleitungen (beispielsweise DI-1..DI-5) zugeordnet sind. Diese digitalen Eingabeleitungen können beispielsweise dafür verwendet werden, daß Öffnen oder Schließen eines Satzes von Schaltkontakten zu erfassen. Wenn einer dieser Schalter offen ist, wird die Stromquelle ohne Erfolg versuchen, 2,5 mA in eine im wesentlichen unendliche Last zu drücken, so daß der von der Erfassungsleitung (beispielsweise MDI-1) gemessene Spannungspegel 20 Volt überschreiten wird. Wenn einer dieser Schalter schließt, wird die zugeordnete digitale Eingabeleitung durch einen Niederimpedanzpfad auf Masse gezogen werden, und ihre verbundene Erfassungsleitung (beispielsweise MDI-1) wird einen Signalpegel in der Größenordnung zwischen 2,5 bis 7,5 Volt zum Multiplexer U9 übertragen. Dieser Spannungspegel wird davon abhängen, wieviele Steuereinheitsplatinen mit der bestimmten Signaleingabe zur Feldcomputereinheit 12 verbunden sind. In dieser Hinsicht sollte vermerkt werden, daß dann, wenn der erfaßte Spannungspegel unterhalb von 1,5 Volt liegt, der Mikroprozessor U40 annehmen wird, daß ein Feldkurzschlußzustand eingetreten ist, da der Widerstand in der Erfassungsschaltung unterhalb desjenigen liegt, der andernfalls, falls die digitale Eingabeschaltung ordnungsgemäß arbeiten würde, zur Verfügung stände.
  • Es wird nun auf 7A–7C Bezug genommen, in denen ein schematisches Diagramm für eine intelligente serielle Eingabeschaltung 200 zur Verarbeitung von analoger Signalinformation gezeigt ist. Die Eingabeschaltung 200 ist fähig, auf 5 gesonderten seriellen Eingabekanälen empfangene Signale asynchron zu verarbeiten. Jeder dieser Kanäle ist dazu eingerichtet, einen digitalen Signalstrom zu empfangen, der für die analoge Eingabesignalinformation repräsentativ ist. Die Feldcomputereinheit 12 kann drei derartiger "analoger" Eingabeschaltungen für jede der drei redundanten Computerschaltungen 92–96 verwenden. Diesbezüglich wird die Eingabeschaltung 200 in einem der Kartenschlitze angebracht werden, die im Prozessorchassis 40 der 5 (beispielsweise AI1-5 und AI6-10) gezeigt sind. Wenn es auch in 5 nicht gezeigt ist, ist ferner ein Schlitz für eine analoge Eingabeschaltung "AI11-20" vorgesehen. Es sollte somit gewürdigt werden, daß die Feldcomputereinheit 12 fähig ist, bis zu 20 verschiedenen analogen Eingabesignalen abzuwickeln.
  • Die Eingabeschaltung 200 ist dafür ausgelegt, in Verbindung mit einer geeigneten Übertragungsvorrichtung zu arbeiten, die den angemessenen digitalen Strom erzeugen wird. Bevorzugt wird ein Honeywell-Übertrager, wie etwa ein intelligenter Druckübertrager, ein intelligenter Temperaturübertrager oder ein intelligenter MAGNEW-Flußübertrager (Serien 100, 200 oder 300), verwendet, um die analogen Signale zu lesen und hieraus einen digitalen Strom oder eine digitale Mitteilung zu erzeugen. Diese Honeywell-Übertrager erzeugen näherungsweise dreimal pro Sekunde eine dreiteilige digitale Mitteilung. Genauer: die digitale Mitteilung enthält den Übertragerstatus, den erfaßten Hauptanalogwert und Konfiguration/Status-Daten. Die digitale Mitteilung kann ferner einen sekundären variablen Wert, wie etwa eine Kopftemperatur, enthalten.
  • Auf die Eingabeschaltung 200 wird als "intelligente" Schaltung insofern Bezug genommen, als sie fähig ist, beträchtlich mehr zu tun, als nur die Rohdaten, die sie von den Sendern empfängt, zur Steuereinheit 100 weiterzusenden. In dieser Hinsicht dekodiert die Eingabeschaltung 200 den seriellen Datenstrom von den Übertragern/Sendern und wandelt diese Ströme in ein Format um, das mit der Steuereinheit 100 kompatibel ist (das schließlich zu dem Prozeß-Steuer/Regel-Computer 14 als 16-Bit-Integer-Prozent vom Gesamtwert mit Vorzeichen übertragen werden wird). Die Eingabeschaltung 200 sorgt ferner für verschiedene Fehlerbit, die die Steuereinheit dazu verwenden kann, die Daten zu interpretieren oder andernfalls Informationsfehlermitteilungen zu übertragen. Beispielsweise umfassen diese Fehlerbits ein "No Xmitter"-Bit ("kein Sender"-Bit), ein "Parity Error"-Bit ("Parityfehler"-Bit) und ein "Comm Error"-Bit ("Kommunikationsfehler"-Bit). Das No Xmitter-Bit wird gesetzt, wenn der Sender innerhalb einer vorbestimmten Zeitperiode (beispielsweise 382 ms) keinen seriellen Datenstrom zur Eingabeschaltung 200 gesendet hat. Das Parity Error-Bit wird gesetzt, wenn: (a) Ein Eingabesignal weniger als 48,9 ms nach der Beendigung der vorangehenden Mitteilung erfaßt wird, (b) das momentane, aus der seriellen Übertragung zusammengesetzte Byte den Parity-Test nicht besteht oder (c) die Binärwerte der Start/Stopp-Bits falsch sind. Die Eingabeschaltung 200 formuliert ferner eine Mitteilung zur Steuereinheit 100, die es der Steuereinheit ermöglicht, eine "Checksum"-Verifikation ("Prüfsumme"-Verifikation) der Mitteilung durchzuführen, die sie von der Eingabeschaltung empfängt. Die Austestkonsole 44 für die Steuereinheit 100 kann ferner dazu verwendet werden, die Statusbytes, die die oben identifizierten Fehlerbits enthalten, an der Feldcomputereinheit 12 zu untersuchen. Beispielsweise kann der Techniker die Austestkonsole dazu verwenden, die Speicheradressen für das in Frage stehenden bestimmte Statusbyte einzugeben, und der Inhalt dieses Byte wird auf der Anzeigevorrichtung der Austestkonsole für eine visuelle Untersuchung dargeboten.
  • 7A zeigt eine Empfängerschaltung 202 für die Eingabeschaltung 200. Wenn auch nur eine Empfängerschaltung 202 gezeigt ist, sollte gewürdigt werden, daß die Eingabeschaltung 200 für jeden Übertrager/Sender eine individuelle Empfängerschaltung enthalten sollte. Der Anschlußstift "C3" wird als Eingangspunkt der Schaltung verwendet, um den digitalen Signalstrom von einem Übertrager/Sender zur Empfängerschaltung 202 zu fördern. Die Empfängerschaltung 202 verwendet dann einen Komparator (LM339) AUS, um für die weitere Verarbeitung eine angemessene digitale Signalpegeleingabe "HON 1" (beispielsweise +5 V Hochpegel, 0 V Niederpegel) zu erzeugen. Der Komparator AU5 ist bevorzugt in einen Invertiermodus zum Triggern bei 0,9 V mit einem Hystereseband von 0,42 V gesetzt, so daß eine logische "0" erfaßt wird, wenn die in die Schaltung eingegebene Spannung 1,25 V überschreitet und eine logische "1" erfaßt wird, wenn die in die Platine eingegebene Spannung unter 0,83 V liegt.
  • Das HON 1-Signal wird zum "P1"-Anschluß eines 16 Mhz-Mikroprozessors (80C31)AU2 gerichtet, der in 7B gezeigt ist. Ein 8Kx8-EPROM (27 HC64)-Chip AU1 wird dazu verwendet, das durch den Mikroprozessor AU2 verwendete Programm zu speichern. Der EPROM-Chip AU1 ist direkt mit dem "P2"-Anschluß des Mikroprozessors AU2 verbunden und ist indirekt durch das Speicheradressenlatch (HC573) AU3 mit dem "P0"-Anschluß des Mikroprozessors verbunden. Die gemultiplexte Datenausgabe vom Mikroprozessor AU2 wird durch das "TXDATA"-Signal zur Steuereinheit 100 übertragen. Das TXDATA-Signal entspricht einem der mit dem Hauptmultiplexer U11 der Steuereinheit 100 verbundenen "MAI"-Präfixsignale. Der Mikroprozessor AU2 empfängt ferner durch die vom Anschlußstift "C12" stammende "RXDATA"-Signalleitung Signale von der Steuereinheit 100.
  • 7C zeigt eine Konfigurationsschaltung 204 für die Eingabeschaltung 200. Die Konfigurationsschaltung 204 enthält einen Schalter "ASW1", der vier Ausgabeleitungen aufweist (TYPE 1..TYPE 4). Mit jeder dieser Leitungen ist durch einen Widerstandsbankchip "ARP1" ein Hochziehwiderstand verbunden. Ferner ist mit jeder der Ausgabeleitungen vom Schalter ASW1 ein Inverter von einer Hexa-Inverterschaltung (HC04) AU4 verbunden, um einen isolierten Satz von Konfigurationsleitungen für den Mikroprozessor AU2 vorzusehen. Die Schaltposition für jede dieser Leitungen wird dazu verwendet, den Mikroprozessor AU2 (durch den "P3"-Bus) über den Typ von Sender/Übertragervorrichtung zu informieren, die mit jeder der Empfängerschaltungen verbunden ist. Hierzu wird ein geeigneter Vierbit-Code verwendet. Die Schalterausgabeleitungen sind ferner zur Steuereinheit 100 gerichtet. Diese Ausgabeleitungen entsprechen den "AITYPE"-Präfixsignalen, die in 6G gezeigt sind.
  • Es wird auf die 7D–7M Bezug genommen, die eine Reihe von dem Betrieb der intelligenten seriellen Eingabeschaltung 200 zugeordneten Flußdiagrammen zeigen. Diesbezüglich liefert 7D ein Gesamt-Flußdiagramm 206 mit dem Titel "AISER MAIN" ("AISER HAUPT"). Das Flußdiagramm 206 enthält einen Initialisierungsblock 208, der mit dem Freigeben eines oder mehrerer Interrupts endet. Die Programmflußsteuerung wird dann zu einer Raute 210 weitergegeben, die bestimmt, ob durch die Steuereinheit 100, auf die hier als "F10" Bezug genommen wird, eine Datenanforderung gesendet wurde oder nicht. Falls Daten angefordert wurden, wird dann die UPLOAD-Routine (HOCHLADEN-Routine) aufgerufen (Block 2121. Die UPLOAD-Routine ist in 7F gezeigt. Falls keine Hochlade-Anforderung vorliegt, bestimmt der Mikroprozessor dann, ob alle durch das Flußdiagramm der 7E gelesenen Daten analysiert wurden (Raute 2141. Falls die in Antwort auf eine Reihe von Daten-Interrupts empfangenen Daten nicht analysiert wurden, wird dann die "ANALYSE"-Routine (ANALYSIER-Routine) der 7G aufgerufen (Block 2161.
  • 7F zeigt, daß die "UPLOAD"-Routine 212 die Übertragung von 7 Austest-Bytes zur Steuereinheit 100 umfaßt (Block 218). Diese Bytes werden bevorzugt in dem internen RAM-Speicher des Mikroprozessors AU2 gespeichert, und es kann auf sie durch die Austestkonsole 44 für die Steuereinheit zugegriffen werden.
  • 7G zeigt, daß die ANALYZE-Routine für jedes der empfangenen analogen Eingabesignale die in 7H gezeigte "SERVICE"-Routine 220 (BEDIEN-Routine 220) aufruft. Die ANALYZE-Routine führt auf dem digitalen Signalstrom von einem Übertrager/Sender eine Vielfalt an Gültigkeitsüberprüfungen durch. Zum Beispiel enthält das Flußdiagramm 220 eine Raute 222, die bestimmt, ob der Kanal frei ist (CHNCLR), sowie eine Raute 224, die bestimmt, ob der Kanal sich im Prozeß des Zusammenfügens eines Informationsbytes aus dem seriellen Datenstrom befindet. Falls ein Byte zusammengefügt wird, bestimmt dann die Raute 225, ob die verarbeitete Information vom richtigen Interrupt stammt. Es wird dann eine Bitzählung verwendet, um zu bestimmen, ob gültige Start-, Paritäts- und Stoppbits empfangen wurden. Falls die Antwort für eine dieser Fragen negativ ist, wird dann das BADPARITY-Bit (FALSCHE-PARITÄT-Bit) gesetzt (Block 226). Unter der Annahme, daß die Daten diese Überprüfungen passieren, werden dann die Inhalte des Bit-Puffers "BITBUFF" in den Speicherpuffer "MBUFF" (Block 228) für die nachfolgende Übertragung zum Hochladepuffer "UPBUFF" (Block 229) kopiert. Die Inhalte des Hochladepuffers werden dann in Antwort auf eine Hochladeanforderung zur Steuereinheit 100 übertragen.
  • Die 7I–7M zeigen Flußdiagramme für Programme, die der Interpretation von Signalen zugeordnet sind, die durch die Steuereinheit 100 von der Eingangsschaltung 200 empfangen werden. Diesbezüglich enthält das "AI31"-Flußdiagramm einen Vorbereitblock 230, der eine "Smart AI_Interface"-Routine (intelligente AI_Schnittstelle-Routine) aufruft. Die "Smart AI_Interface"-Routine sieht eine Zeitüberschreitungszeit von 5 ms vor, innerhalb der eine Hochladeantwort empfangen und auf Kommunikationsfehler überprüft werden muß. Falls ein Kommunikationsfehler erfaßt wurde, wird die Statusüberprüfroutine "STCHK" aufgerufen. Die STCHK-Routine setzt eines oder mehrere spezielle Fehlerbits in Abhängigkeit vom erfaßten Fehler zum Beispiel ein Falsche-Parität-Bit oder ein Falsche-Prüfsumme-Bit. Falls keine Kommunikationsfehler erfaßt wurden, wird dann ein Sprung zur "OKAIS"-Routine der 7J–7L durchgeführt (Block 232).
  • Wie durch Block 234 der 7J angegeben, bestimmt die OKAIS-Routine, ob in der von der Eingabeschaltung 200 gesendeten Mitteilung ein primärer Variablenwert enthalten war. Falls bestimmt ist, daß der primäre Wert in Ordnung ist, wird ein Merker gesetzt, der bewirkt, daß ein Ausfall-Zuletzt-Wert beim nächsten Fehler zum Prozeßsteuercomputer 14 gesendet wird (Block 236 der 7K). Dann wird die "IETOPS"-Routine der 7M aufgerufen (Block 238), um den primären Wert zu einem Festkommawert zu wandeln und ihn als Prozent des maximalen Skalenwerts einer akzeptablen Eingabe zu speichern. In dem Fall, daß ein falscher Primärwert empfangen wurde, wird die Raute 240 bestimmen, ob ein Versagen-Zuletzt-Zustand für diesen Prozeßsteuerzyklus gesetzt wurde. Falls ein solcher gesetzt wurde, wird der letzte bekannte taugliche primäre Wert zum Prozeßsteuercomputer 14 gesendet, und es wird ein Merker gesetzt, damit im nächsten Prozeß-Steuer/Regel-Zyklus kein Ausfall-Zuletzt eintritt. Wenn allerdings kein Ausfall-Zuletzt-Zustand angefordert wurde, wird der primäre Wert mit einer Zahl entsprechend 100% des maximal akzeptablen Werts geladen (Block 242).
  • Die Blöcke 244 bis 246 und die Raute 248 zeigen an, daß dann, wenn ein sekundärer Wert vorliegt (zum Beispiel Temperatur), dieser zu einem Prozentwert der vollen Skala umgewandelt werden wird. Die Raute 250 zeigt dann, daß dieser Teil der OKAIS-Prozedur für alle fünf analogen Eingaben implementiert wird, die erfaßt werden. Die Raute 252 zeigt an, daß die Steuereinheit 100 dann die primären Variablen für die Kanäle 11 bis 15, die durch den Block 258 gespeichert wurden, in die richtigen IRAM-Stellen laden wird. Der Block 254, die Raute 256 und der Block 258 in Kombination speichern zeitweilig die primären Variablen für die Kanäle 11 bis 15 und führen die Routine zum Sammeln der Daten für die Kanäle 16 bis 20 erneut aus. Dies ermöglicht es, daß ein Aufrufen der Routine 10 Datenkanäle verarbeitet. Die Beendigung der OKAIS-Routine ist eine Anzeige, daß nun die analogen Eingabesignale für die nachfolgende Softwareschlichtung durch die Feldcomputereinheit-Steuereinheiten zur Verfügung stehen.
  • Es wird auf die 8A–8E Bezug genommen, in denen ein schematisches Diagramm für eine Mehrfachmodus-Pulseingabeschaltung 300 gemäß der vorliegenden Erfindung gezeigt ist. Auf die Eingabeschaltung 300 wird hiernach auch als die Pulszugplatine-"PTB"-Schaltung Bezug genommen. Die PTB-Schaltung 300 ist eine 5-Kanal-Analogeingabe-"Tochter"-Schaltungsplatine, die dazu verwendet wird, Frequenz (1 Hz bis 65 KHz) mit einem hohen Genauigkeitsgrad (beispielsweise 0,075% der Messung) zu messen und/oder Pulse (1 bis 32767 Pulse pro Sekunde) zu zählen. Da die PTB-Schaltung 300 drei verschiedene Betriebsmodi aufweist, weist die Steuereinheit 100 zwei verschiedene Verfahren der Verarbeitung von Daten (d. h. Puls oder Frequenz) und drei Verfahren der Ausgabe dieser analogen Daten (d. h. nur Pulse, nur Frequenz oder beides) auf, obwohl die Steuereinheit dieselben Daten zum Berechnen sowohl von Frequenzen als auch zum Zählen von Pulsen verwendet. Im Frequenzmodus liegt der in der AI-Tabelle der Steuereinheit 100 gespeicherte Frequenzwert in einem Pseudo-Fließkomma-Format vor, wie unten weiter diskutiert werden wird. Diese Form wird bevorzugt, um zu gewährleisten, daß die Fließkomma-Umwandlung keinen Fehler im zum Prozeß-Steuer/Regel-Computer 14 zu übertragenden Endwert größer als 0,025% einführt. Im Pulszählmodus wird in den AI-Tabelle eine echte Integer-Zahl gespeichert. Die Anzahl von seit dem letzten gemeldeten Wert empfangenen Pulsen wird dem Prozeß-Steuer/Regel-Computer 14 als eine in der AI-Tabelle gespeicherte Integer-Zahl gemeldet. Im Fall, daß die durch die PTB-Schaltung 300 empfangenen Werte über ihren jeweiligen Bereichen liegen, meldet die Steuereinheit 100 bevorzugt einen Vollbereichswert.
  • Da die Feldcomputereinheit 12 bevorzugt jede Sekunde alle ihre Eingabedaten den Fest-Steuer/Regel-Computern 14a–14b meldet, sollte gewürdigt werden, daß gemessene Frequenzwerte kleiner als 1 Hz ein spezielles Problem bedeuten, da die Feldcomputereinheit nicht fähig sein wird, die Messung einmal pro Sekunde zu aktualisieren. Dementsprechend ist die PTB 300 dazu eingerichtet, eine Frequenz von 1 Hz in den Zeitintervallen zu melden, in denen ein Puls erfaßt wurde. Falls kein Puls innerhalb der gemeldeten Sekunden erfaßt wurde, wird ein Nullwert zum Prozeß-Steuer/Regel-Computer 14 übertragen. In dem Fall, daß ein Pulszug nach einer Periode mit Eingabe 0 beginnt und die PTB-Schaltung 300 im Frequenzmodus ist, wird die erste Sekunde nicht zum Melden eines Frequenzwerts verwendet. Vielmehr wird diese erste Sekunde dazu verwendet, die Gesamtanzahl von in dieser Sekunde empfangenen Pulsen zu melden. Die Daten werden nur in der nächsten Sekunde einen echten Frequenzwert darstellen. Diese Prozedur wird dazu verwendet, um eine Summierung aller Pulse über ein bekanntes Zeitintervall zu ermöglichen. Falls in einer Sekunde keine Impulse empfangen werden, wird die PTB-Schaltung 300 unfähig sein, das Zeitintervall zu messen.
  • 8A zeigt eine Empfängerschaltung 302 für die PTB-Schaltung 300. Diesbezüglich sollte verstanden werden, daß für jede der Eingangspulssignalkanäle, die mit der PTB-Schaltung 300 verbunden sind, eine Empfängerschaltung 302 vorgesehen sein sollte. Die Empfängerschaltung 302 umfaßt einen Anschluß "BC3", der dazu verwendet wird, die Schaltung mit einem pulsemittierenden Wandler, wie etwa eine Hall-Effekt-Vorrichtung, durch den auf der Passive-Element-Platine vorgesehenen Schutz zu koppeln. Die Empfängerschaltung 302 umfaßt ferner eine mit "AI–1C" bezeichnete Signalleitung, die durch einen PTC-Widerstand, wie etwa der in 8D gezeigte Widerstand "VR3", einen Pfad zur Masse liefert. Die Empfängerschaltung enthält ferner einen Tiefpaßfilter, der einen Widerstand "RLP" und eine Kapazität "CLP" umfaßt. Dieser Tiefpaßfilter entfernt effektiv jegliches Hochfrequenzrauschen, das andernfalls in der Feldverdrahtung induziert sein könnte. Es sollte auch vermerkt werden, daß der Widerstand RLP und die Kapazität CLP von einem Funktionsmodulchip "BU13" stammen, der mehrere der anderen passiven Komponenten in der Empfängerschaltung 302 enthält. Die Kapazität CLP ist parallel mit einer Diode (1N5819) "CR4" verbunden, die die ins Negative gehende Abschnitte des Pulsignals auf GND (Masse) klemmt, um zu verhindern, daß der Komparator (LM339) "BU12" gesättigt wird.
  • Der Komparator BU12 empfängt die gefilterte Pulssignaleingabe sowie ein von einer 10 V-Quelle abgeleitetes Referenzspannungspotential. Das Referenzspannungspotential ist durch ein Spannungsteilernetz gesetzt umfassend den Schwellenwiderstand "RTH", einen 10 K-Widerstand "R14" und den Hysterese-Widerstand "RH". Wenn das Pulssignal oberhalb des Referenzspannungspotentials liegt, wird die Ausgabe des Komparators BU12 auf GND gezogen. Die Niederpegelausgabe vom Komparator BU12 bringt den Widerstand R14 im Effekt in Parallelschaltung mit dem Widerstand RH. Dieser Effekt senkt den Schwellenwiderstand und ermöglicht der Komparatorausgabe, länger auf Niederpegel zu bleiben. Dies eliminiert beträchtlich eine ungewünschte Oszillation, die durch Niederpegelrauschen auf dem Eingangspulssignal verursacht sein könnte.
  • Die Werte für die passiven Komponenten RTH, RH, RLT und CLP sind bevorzugt in Übereinstimmung mit den folgenden Näherungsgleichungen für Großsignalanwendungen bestimmt: RTH = (100.000/Vth) – 10.000 wobei Vth = (0,30) × Amax
    wobei Amax die maximale Amplitude des Signals ist;
    RH = ((1/Vh) – 1/5) × 50.000 wobei Vh = 2 × (Scheitel-zu-Scheitel-Rauschpegel);
    RLP × CLP = T wobei T = (1/Fmax) × (Eingabetastgrad)/3,14
    wobei T = (1/Fmax) × (1 – Tastgrad)/3,14,
    in Abhängigkeit davon, welches kleiner ist, und
    Fmax = die maximale Frequenz des Signals.
  • Diesbezüglich sollte vermerkt werden, daß Vth die Schwellenspannung ist, bei der der Komparator BU12 entscheiden wird, daß eine Eingabe eine Spannung groß genug aufweist, daß sie als Hochpegeleingabe betrachtet werden kann. Der Wert des Hysterese-Widerstands RH sollte gewählt werden, um zu ermöglichen, daß das richtige Ausmaß an Hysterese in den Empfänger oder die Erfassungsschaltung 302 eingebracht werden kann. In diesem Kontext: Hysterese ist der Unterschied zwischen dem Schwellenpunkt und dem Punkt, an dem der Komparator BU12 bestimmt, daß das Signal genügend abgefallen ist, um als Niederpegelsignal betrachtet zu werden. Das Vorsehen von Hysterese in der Empfängerschaltung 302 ist dazu nützlich zu verhindern, daß Niederamplitudenrauschen mittlerer Frequenz die Ausgabe des Komparators BU12 beeinflußt. Der Wert von "T" ist die Periode der schnellsten Komponenten Fmax. Diese Berechnung ist nützlich, da die meisten Signale nicht für gleiche Zeitperioden an und aus sind (beispielsweise 50% Tastgrad). Um also einen Puls mit 20% Tastgrad durchzulassen, muß der Tiefpaßfilter geeignet sein, eine Frequenz von 1/(2 × 0,2) oder 2,5 × größer als die wahre Fmax zu führen. Umgekehrt muß, wenn der Tastgrad größer als 50% ist, der Tiefpaßfilter fähig sein, mit dem Nullanteil des Signals umzugehen, der bei einer höheren Frequenz liegt als bei einem 50%-Tastgrad-Fmax erwartet wird. Somit sollte beispielsweise ein Pulssignal mit einem Tastgrad von 25% einen Filter haben, der für 1/(2 × (1 – 0,751) oder 2 mal Fmax ausgelegt ist. Diesbezüglich ist bevorzugt, daß der Wert für CLP derart gewählt ist, daß ermöglicht ist, daß der Wert von RLP im Bereich zwischen 1 Ohm und 10 K Ohm bleibt. Wenn die Frequenz des Eingabesignals relativ niedrig ist (beispielsweise 50 Hz), können die folgenden Werte durch das Funktionsmodul BU13: geliefert werden: RTH = 10 k, RH = 100 K, RLP = 2,7 k und CLP = 100 pf.
  • In Großsignalanwendungen ist der in die Näherungen durch RH induzierte Fehler klein, und dadurch entspricht die Berechnung von Vth der eines Standardspannungsteilers. Für Signale mit kleinen Pulsen kann der Fehler aber beträchtlich sein. Deshalb sollten für Hysterese-Pegel größer als 1% von Vth die folgenden Gleichungen verwendet werden:
    Figure 00540001
    wobei Vhc die Hochpegelausgabe vom Komparator BU12 ist (beispielsweise 5 Volt).
  • Um diese Formel zu verwenden, muß der Wert von RH bekannt sein. Diesbezüglich kann der Wert von RH gemäß der folgenden Formen approximiert werden:
    Figure 00540002
  • Sobald das Pulssignal durch den Komparator BU12 hindurchgeht, ist es ein invertiertes 0/5 V-Signal mit einer relativ langsamen Anstiegszeit aufgrund der Kapazität (0,001 μ) "C8". Um Signalübergänge zu beschleunigen und das Signal in eine präzisere digitale Form zu formen, wird ein Invertergatter mit Hysterese (74LS14) "BU6" verwendet. Das Invertergatter BU6 verbessert die Anstiegszeit des Signals und invertiert das Ausgangspulssignal "PCB1" zur ursprünglichen Orientierung des durch die Schaltung empfangenen Pulszugs.
  • Wie in 8B angedeutet, sind die Pulssignalausgaben von jeder der Empfängerschaltungen 302 (PTB1..PTB5) mit einem programmierbaren Logikbauelement (Altera 1810) "BU7" gekoppelt. Das programmierbare Logikbauelement BU7 ist eingerichtet, fünf interne Zähler (einen für jeden Eingabepulskanal) bereitzustellen und die zugeordnete interne Adressierung ist dazu eingerichtet, daß ermöglicht ist, daß es als speicherkonformes "Eingabe/Ausgabe-(I/O)-Gerät" adressiert wird. Diesbezüglich sieht die interne Konfiguration des programmierbaren Logikbauelements BU7 wie fünf einzelne 8-Bit-Zähler aus, wobei deren Ausgabesteuerleitungen durch eine durch die Adreßleitungen gesteuerte Logik gesetzt werden. Die notwendige Multiplexfunktion für die Ausgaben des programmierbaren Logikbauelements wird unter Verwendung von bauelementinternen Tri-State-Puffern erreicht. Die internen Zähler ermöglichen, daß Pulse mit einer Frequenz größer als die Hälfte der Abtastrate (d. h. die Nyquest-Grenze) gemessen werden.
  • 8B zeigt ferner, daß die PTB-Schaltung 300 einen Mikroprozessor (80 C31) "BU2", ein Speicheradressenlatch (HC573) "BU3" und ein 8 Kx 8 EPROM-Chip "BU1" umfaßt. Die Brücke "J1" ist für EPROMs bis zu 256 K zwischen den Stiften 1 bis 2 gesetzt, und für EPROMs, die 256 K oder größer betragen, ist die Brücke J1 zwischen den Stiften 2–3 gesetzt. Der 16 MHz-Kristalloszillator "BY1", der zum Erzeugen des Mikroprozessortaktsignals verwendet wird, ist bevorzugt auf +/– 0,005% genau, um den Meßfehler der PTB-Schaltung zu minimieren. Wenn der Mikroprozessor BU2 auf einen Zähler im programmierbaren Logikbauelement BU7 zugreift, liest er den Zählerwert und bestimmt die Anzahl von Pulsen, die vergangen sind, indem er die vorangehende Zählung von der momentanen Zählung abzieht. Diese Prozedur ermöglicht, daß bis zu 255 Pulse zwischen Abtastperioden auftreten können. Es sollte auch vermerkt werden, daß die PTB-Schaltung 300 eine lichtemittierende Diode "LED1" als Hilfe zum Fehlerbeheben im Feld enthält, die an sein wird, wenn die Schaltung richtig funktioniert. Ein blinkendes grünes Licht wird anzeigen, daß die Steuereinheit 100 versucht, die PTB-Schaltung 300 zurückzusetzen. Die Austestkonsole 44 kann dazu verwendet werden, den Inhalt eines Fehlerbytes für die PTB-Schaltung 300 anzusehen. Beispielsweise werden einzelne Bits dieses Fehlerbytes anzeigen, ob ein Kommunikationsfehler zwischen der Steuereinheit 100 und der PTB-Schaltung 300 aufgetreten ist, oder ob auf an einem bestimmten Eingangspulssignal ein Lesefehler aufgetreten ist.
  • Hinsichtlich der Kommunikation mit der Steuereinheit 100 wird die mit dem Mikroprozessor BU2 verbundene "RXDATA"-Signalleitung dazu verwendet, Signale von der Steuereinheit 100 zu empfangen, wie etwa eine Anforderung, Daten zur Steuereinheit zu senden. Umgekehrt wird die "TXDATA"-Signalleitung dazu verwendet, verarbeiteten Pulsdaten zur Steuereinheit 100 zu übertragen.
  • 8C zeigt eine Stromtreiberschaltung 404, die für jene Pulswandler verwendet wird, die ihre elektrische Energie von der PTB-Schaltung 300 empfangen müssen. Die Stromtreiberschaltung ist dazu ausgelegt, eine 25 mA Stromquelle für die Feldvorrichtung bei näherungsweise 17 V bereitzustellen. Eine ähnliche Stromtreiberschaltung kann ferner in anderen Eingabeschaltungsplatinen, wie etwa die oben diskutierte Eingabeschaltung 200, verwendet werden. Wie in 8C gezeigt, kann jeder der Pulswandler seine elektrische Energie durch einen separaten Stromtreiber, wie etwa der Stromtreiber (LM317) "BU15" empfangen.
  • 8E zeigt eine Umschaltschaltung 306, die dazu verwendet wird, den Betriebsmodus der PTB-Schaltung 300 zu setzen. Diesbezüglich setzt der Schalter "BSW1" die Funktion aller fünf Kanäle auf der PTB-Schaltung 300. Beispielsweise kann eine Wahl von "0" für den Frequenzmodus verwendet werden, während eine Wahl von "3" für den Pulszählmodus verwendet werden kann. Zusätzlich kann eine Wahl von "4" dazu verwendet werden zu ermöglichen, daß sowohl der Frequenz- als auch der Pulszählmodus verwendet werden. Diesbezüglich wird die Steuereinheit 100 einen Satz von sowohl Frequenz- und Pulszähldaten für jeden der auf der PTB-Schaltung 300 enthaltenen Kanäle zum Prozeß-Steuer/Regel-Computer 14 übertragen. Die Ausgabeleitungen des Schalters BSW1 sind mit dem "P1"-Anschluß des in 8B gezeigten Mikroprozessors BU2 gekoppelt. Es sollte somit gewürdigt werden, daß die Umschaltschaltung ermöglicht, daß die PTB-Schaltung 300 im Feld konfiguriert wird, während ferner ein Weg für die Steuereinheit 100 vorgesehen ist, daß diese weiß, wie die Daten schließlich verarbeitet werden sollten.
  • Es wird auf die 8F bis 8Q Bezug genommen, die eine Reihe von Flußdiagrammen zeigen, die der Funktion der PTB-Schaltung 300 zugeordnet sind. Die 8F–8J beziehen sich auf auf der PTB-Schaltung 300 selbst residente Software, während die 8K–8Q sich auf auf der Steuereinheit 100 residente Software beziehen. Genauer: Die durch die 8F–8J repräsentierte Software ist für das Abtasten der Pulssignaleingaben 1–5, das Ermitteln der Gesamtsumme von empfangenen Pulsen, das Messen der abgelaufenen Zeit und das Kommunizieren dieser Daten zurück zur Steuereinheit 100 verantwortlich. Im Gegensatz dazu ist die durch die 8K–8Q repräsentierte Software dafür verantwortlich, die von der PTB-Schaltung 300 gelieferten Daten aufzunehmen, sie zu einem Frequenzwert und einer Gesamtpulszählung umzuwandeln, und dann auf Anforderung diese Werte zum Prozeß-Steuer/Regel-Computer 14 zu senden.
  • 8F zeigt ein Gesamtflußdiagramm 308 für die PTB-Schaltung 300. Das Flußdiagramm 300 enthält eine Systeminitialisierungsroutine (Block 310), die in 8G veranschaulicht ist. Nachdem die Initialisierung beendet ist, führt das Programm für den Mikroprozessor BU2 der PTB-Schaltung 300 eine Überprüfung durch, um zu sehen, ob durch die Steuereinheit 100 eine Datenkommunikation angefordert wurde. Falls die Antwort nein ist, führt das Programm eine Überprüfung durch, um zu sehen, ob Daten zur Verarbeitung vorliegen. Falls Pulsdaten empfangen wurden, wird die Programmsteuerung zur Verarbeite-Daten-Routine (Block 312) gerichtet, die in 8H gezeigt ist. Nachdem alle der Daten verarbeitet wurden, kehrt die Programmsteuerung zurück zur Überprüfung auf eine Kommunikationsanforderung. Falls die Steuereinheit 100 Daten angefordert hat, wird dann die Sende-Daten-Routine aufgerufen (Block 3141. Die Sende-Daten-Routine ist in 81 gezeigt.
  • 8F zeigt ferner eine Interrupt- oder Abtast-Routine (Block 3161, die in 8J gezeigt ist. Die Interrupt-Routine ist nicht dahingehend gezeigt, daß sie mit irgendeinem anderen Programmsteuerblock verbunden ist, da sie taktgesteuert ist, um die Genauigkeit der Abtastrate zu gewährleisten. Genauer: Die Interruptroutine wird durch das "T1"-Taktsignal des Mikroprozessors BU2 (siehe Block 318 von 8G) gesteuert. Dieser Interrupt weist bevorzugt eine höhere Priorität als alle anderen programmierten Funktionen der PTB-Schaltung 300 auf, um zu gewährleisten, daß das Abtasten in präzisen Zeitintervallen erfolgt. Bei einer Ausführungsform weist die Abtastrate ein Intervall von 1/1999 Sekunden auf. Diese spezielle Abtastrate wird als vorteilhaft betrachtet aufgrund der Fähigkeit, diese Rate gleichmäßig in die maximale Anzahl von Instruktionen/Sekunde (1333333) des Mikroprozessors BU2 zu teilen sowie aufgrund dessen, daß sie ermöglicht, einen maximalen Fehler von 0,05% aufrechtzuerhalten. Wie unten weiter diskutiert wird, ist diese Abtastrate bevorzugt hinsichtlich der zum Ausführen verschiedener Instruktionen erforderlichen Zeitlänge kompensiert.
  • Die Funktion der in 8J gezeigten Interrupt-Routine 316 liegt darin, die Zähler im programmierbaren Logikbauelement BU7 abzutasten und die Daten in einem Puffer für eine spätere Analyse zu speichern. Dies wird bewerkstelligt, indem jeder der fünf internen Zähler vier aufeinanderfolgende Male gelesen wird (d. h.: lies den Zähler für Kanal 1 viermal, dann lies den Zähler für Kanal 2 viermal usw.) und dann die Daten in einem temporären Puffer des Mikroprozessors BU2 gespeichert werden. Diese Prozedur ist durch die Blöcke 320 bis 322 in 8J veranschaulicht. Die Interrupt-Routine 316 sortiert dann die Auslesungen, um die ersten beiden aufeinanderfolgenden Auslesungen zu finden, die für jeden Kanal gleich waren, um die Gültigkeit der gelesenen Daten zu prüfen (beispielsweise Rauten 324–328). Die Routine beginnt dann, einen durch die Verarbeite-Daten-Routine 312 zu verwendenden Datenpuffer aufzufüllen (beispielsweise Blöcke 330–332), welche Routine in der übrigbleibenden Zeit zwischen Interrupts läuft.
  • Die Verantwortlichkeit der in 8H gezeigten Verarbeite-Daten-Routine 312 liegt darin, auf die Daten im Puffer zu schauen, zu entscheiden, ob ein Puls angekommen ist und dann auf diese Entscheidung zu handeln. Um dies zu erreichen, werden im Mikroprozessor BU2 fünf Register (Blöcke 338– 339) für jeden Kanal der PTB-Schaltung 300 gehalten. Auf diese Register wird Bezug genommen als: Gesamtzahl an Pulsen, Gesamtzahl an Interrupts, Zahl der Interrupts, Interrupts seit dem letzten Puls und vorausgehende Zählerablesung. Das Pulsgesamtzahlregister enthält die Anzahl von Pulsen, die seit der letzten Übertragung zur Steuereinheit 100 (während des Intervalls von 1 Sekunde) gezählt wurde. Dies ist der tatsächlich zum Prozeß-Steuer/Regel-Computer 14 übertragene Wert, wenn die PTB-Schaltung 300 im Pulszählmodus ist. Das Interruptgesamtzahlregister enthält die Anzahl von Interrupts, die zwischen dem ersten und dem letzten Puls im Pulsgesamtzahlregister verstrichen sind. Mit anderen Worten stellt das Interruptgesamtzahlregister einen internen Timer bereit, der durch den letzten empfangenen Puls (führende Flanke) vor der vorangehenden Übertragung zur Steuereinheit 100 gestartet und durch den letzten vor dieser Übertragung zur Steuereinheit empfangenen Puls angehalten wird. Das "Anzahl von Interrupts seit dem letzten Puls"-Register wird für Pulszüge verwendet, die langsamer als 2 KHz sind (d. h. für Pulszüge unter der Abtastrate). Dieses Register speichert die Zahl an Interrupts, die seit dem letzten Puls, der erfaßt wurde, aufgetreten sind und ermöglicht, daß das Interruptgesamtzahlregister genau die Anzahl von Interrupts widerspiegelt, die verstrichen sind, während der Mikroprozessor BU2 das Pulsgesamtzahlregister gelesen hat. Das "vorausgehende Zählerauslesung"-Register speichert die letzte vom programmierbaren Logikbaustein BU7 unternommene Zählerauslesung und wird dazu verwendet zu bestimmen, wieviele Pulse zwischen den Abtastungen empfangen wurden.
  • Bevor fortgefahren wird, die Verarbeite-Daten-Routine 312 zu diskutieren, sollte vermerkt werden, daß die Interrupt-Routine 316 einen Block 336 zum Steuern des durch den Takt T1 angesteuerten Timers enthält. Da der Instruktionssatz für den Mikroprozessor BU2 Instruktionen enthält, deren Ausführung einen oder zwei Buszyklen braucht, stellt sich ein Problem beim Schreiben von Software, die nach einem exakten Zeitintervall unterbrochen werden muß. Dies liegt daran, daß dieser bestimmte Mikroprozessor einen Interrupt nicht bedienen wird, bis er die momentane Instruktion beendet hat. Die bevorzugte Lösung für dieses Problem liegt darin, daß "Hochzähl"-Zählerregister T1 des Mikroprozessors BU2 mit dem Wert "FFFF" minus der Anzahl von Buszyklen, die verstreichen sollen, bevor ein Interrupt auftritt, zu laden. Der Zähler T1 wird dann hochzählen, bis er "0000" trifft und der Interrupt würde dann auftreten. Somit würde beispielsweise bei einer Ein-Bus-Zyklus-Instruktion die Interrupt-Routine mit einem T1-Wert von 6 beginnen (um die Zeit zu berücksichtigen, die zur Verarbeitung des Interrupt-Aufrufs benötigt wird), während ein Interrupt am Anfang einer Zwei-Bus-Zyklus-Instruktion mit einem einen Wert von 7 aufweisenden Zähler T1 in die Interrupt-Routine eintreten würde. Indem der Wert von T1 zu der angemessenen Konstante hinzuaddiert und dieser Wert in das T1-Zählerregister geladen wird, ist es möglich zu ermöglichen, daß die mittlere Zeit zwischen Interrupts konstant ist. Diese Konstante ist bestimmt durch die Anzahl von zwischen Interrupts benötigten Buszyklen und die Anzahl von Buszyklen zwischen dem Wert des Timers und dem Laden des Timers bestimmt. Wenn beispielsweise ein Interrupt alle 1/1999 Sekunden (oder alle 667 Buszyklen) gewünscht ist, und 5 Buszyklen zwischen den Lese- und Ladeoperationen erforderlich sind, würde der in das T1-Register geladene Wert betragen: FD69 = FFFF – 666 dec + 5 dec.
  • Wie in 8H veranschaulicht, arbeitet die Verarbeite-Daten-Routine 312, indem zuerst alle "Anzahl von Interrupts seit dem letzten Puls"-Register inkrementiert werden (Block 3381. Als nächstes wird die momentane Zählung "CC" vom durch die Interrupt-Routine 316 erzeugten Puffer mit dem "vorangehende Zählerlesung"-Wert "PC" verglichen, um zu bestimmten, ob ein Puls empfangen wurde (Raute 340). Falls kein Puls empfangen wurde, schreitet die Routine fort, um die Daten vom nächsten Kanal zu verarbeiten (Block 342). Falls ein Puls empfangen wurde, würde dann die Anzahl der Pulse zum entsprechenden "Gesamtzahl der Pulse"-Register hinzuaddiert (Blöcke 344–348 ). Die "Anzahl von Interrupts seit dem letzten Puls" würde ferner zum Interrupt-Gesamtzahlregister (Block 350) hinzugefügt, die "Gesamtzahl an Interrupts seit dem letzten Puls" würde auf null gesetzt werden (Block 352) und die Verarbeitung würde zum nächsten Kanal voranschreiten (Block 354).
  • 81 zeigt die Sende-Daten-Routine 314, die in Antwort auf eine Datenanforderung von der Steuereinheit 100 aufgerufen wird. Diesbezüglich sendet die PTB-Schaltung 300 zuerst den Inhalt von 7 Bytes an Austestdaten zur Steuereinheit 100 (Block 356). Dann werden das Fehlerbyte und Konstanten, wie etwa die Abtastrate, gesendet (Block 358). Nachfolgend wird die Gesamtzahl an Pulsen, die in der letzten Sekunde gelesen wurden, und die Anzahl an Interrupts, die verstrichen sind, während die Pulsgesamtzahl gelesen wurde, für jeden der Eingabekanäle der Reihe nach gesendet (Block 360). Schließlich wird eine Exklusiv-ODER-Summe aller übertragenen Bytes "XSUM" ausgenommen das XSUM-Byte gesendet (Block 362).
  • 8K zeigt ein Gesamtflußdiagramm 364 für die Software, die in der Steuereinheit 100 zum Verarbeiten der von der PTB-Schaltung 300 empfangenen Daten verwendet wird. Das Flußdiagramm 364 beginnt mit einer Erlange-Daten-Routine (Block 3661, die in 8L gezeigt ist. Falls die Steuereinheit 100 keine Daten von der PTB-Schaltung 300 erhalten kann, wird die Steuereinheit die PTB-Schaltung für 3 Sekunden in einen Rücksetzmodus setzen (Block 368), die Fehlerzählung um 1 erhöhen (Block 370) und die Daten der vorangehenden Sekunde zum Prozeß-Steuer/Regel-Computer 14 mit einem Merker zum Anzeigen, daß diese Gruppe von Analogeingaben schlechte Daten enthält, senden (Block 372).
  • Unter der Annahme, daß die Daten ohne Fehler empfangen wurden (Raute 3741, wird das Programm dann die Rohdaten zur Pulsgesamtzahl (Block 376) als auch in eine Pseudofließkommaform (Block 378) umwandeln. Für den Gesamtpulszählmodus nimmt das Programm die Anzahl von empfangenen Pulsen und stellt diesen Wert in die analoge Eingabetabelle ("AI XRAM") ein (Block 3761. Diese Umwandlungsroutine ist in 8M gezeigt. Für den Frequenzmodus (Block 378) werden mathematische Manipulationen durchgeführt, um die Pulsgesamtzahl- und Interruptgesamtzahldaten in einen Pseudofließkommawert umzuwandeln. Dies ist ein zweiteiliger Prozeß, der anfängt, indem ein 24 Bit-Zwischenergebnis gebildet wird, und der dann beendet wird, indem dieses Ergebnis zu einer zum Kodieren von Frequenz verwendeten 16-Bit-Pseudofließkommaform umgewandelt wird. Die Pseudofließkommazahl ist ein 16-Bit-Wert, umfassend einen Potenz-von-4-Exponenten und eine Bruchzahlmantisse. Der Exponent repräsentiert die kleinste Potenz von 4, die in die Ursprungsfrequenz (unter Beibehaltung eines Bruches) weniger 1 geteilt werden kann. Dies verhindert die Repräsentation von Zahlen kleiner als 1, da Bruchteile von 1 nicht zugelassen sind. Diese Prozedur ermöglicht allerdings, daß Zahlen bis hinauf zu65535 dargestellt werden können. Beispielsweise ist für eine gegebene Frequenz von 7692 Hz die kleinste Potenz von 4, die in diesen Frequenzwert geteilt werden kann und noch einen Bruch behält, 47 = 16384. Da der Exponent der Potenz von 4 in einem "minus 1"-Format gespeichert wird, beträgt der in den oberen drei Bit gespeicherte Exponent der Fließkommazahl 6. Der Mantissenwert ist die Frequenz als Bruchteil des im Exponenten gespeicherten Potenz-von-4-Werts. Es ist eine 13-Bit-Integerzahl, die ein Bruchteil von 8191 ist (1FFFh, wobei "h" für hexadezimal steht). Mit anderen Worten wird ein Dividieren des Werts in der Mantisse durch 8191 und Multiplizieren des Ergebnisses mit 4 hoch dem Exponenten plus 1 die ursprüngliche Frequenz ergeben. Für das oben gezeigte Beispiel würde die Bruchteilmantisse somit betragen:
    Figure 00630001
  • Die Bruchteilmantisse würde in den 13 zur Verfügung stehenden Bits als 3845 dezimal oder OF05h gespeichert werden. Deshalb würde der für eine Frequenz von 7692 Hz schließlich erzeugte Pseudogleitkommawert betragen:
    1100111100000101 = CF05
  • Eine Übersicht dieses Pseudofließkomma-Umwandlungsprozesses ist in 8N gezeigt. Diesbezüglich liefert 80 ein detailliertes Flußdiagramm des Blocks 380 zum Wandeln der "Anzahl von Pulsen"-Daten in eine 24 Bit-Mantisse. In gleicher Weise liefert 8P ein detailliertes Flußdiagramm des Blockes 382 zum Wandeln der 24 Bit-Mantisse in die 16 Bit-Pseudofließkommaform. Schließlich zeigt 8Q ein Flußdiagramm des Blockes 384 zum Durchführen einer Anpassung, wenn der Frequenzwert kleiner als 1 Hz ist.
  • Bezüglich 80 sollte das folgende vermerkt werden. Falls keine Pulse vorliegen (Block 3861, dann wird der 24-Bit-Frequenzmantissenwert als null gespeichert (Block 388). Falls die Anzahl von Pulsen (d. h. Pulsgesamtzahl) kleiner als 255 ist, dann wird der Exponentenwert "EXP" auf null gesetzt, und die Konstante "K" wird auf 800h gesetzt (Block 390). Die Variable "RPS" steht für Auslesungen pro Sekunde, und dies ist die Anzahl von Interrupts, die jede Sekunde auftreten (d. h. 1999 dec). Die Konstanten 800h und 08h sind notwendig, um die 24-Bit-Antwort zur richtigen Position zu verschieben, so daß keine Auflösung verloren geht, wenn die Umwandlung in den 16-Bit-Pseudofließkommawert durchgeführt wird. Diese Konstanten werden den Wert von 1 aus der 12. Bitposition, wohin sie im 16-Bit-Pseudofließkommawert gehört, verschieben. Die Verwendung dieser Konstanten weist den zusätzlichen Vorteil auf, daß eine größere Präzision ermöglicht wird, da mehr Bits berechnet werden, bevor sie die Grenzen der Dividierroutine überschreiten.
  • Wie im Flußdiagramm 382 der 8P gezeigt, wird die Umwandlung in den Pseudo-Fließkommawert bewerkstelligt, indem das 14. und höhere Bits des 24-Bit-Ergebnisses abgefragt werden. Wenn irgendeines von ihnen nicht null ist, wird das Ergebnis um zwei Plätze nach rechts verschoben (d. h. durch 4 dividiert), und der Exponent wird um 1 erhöht (Block 3921. Dieser Schiebeprozeß wird fortgeführt, bis die Bits 14, 15 und 16 gleich 0 sind. Sobald das Ergebnis auf 13 Bit vermindert ist (Block 364), wird das letzte abgeschobene Bit in die 13 Bit zurück gerundet. Wenn das Bit 1 beträgt, wird eine 1 zu der 13-Bit-Mantisse zuaddiert (Block 396). Dies vermindert den Fehler der Pseudo-Fließkommazahl auf 0,025%. Schließlich wird der Exponent in die oberen drei Bits (16, 15, 14) des 16-Bit-Frequenzwerts geODERt (Block 398). Falls das Endergebnis größer als 65535 ist, wird die Ausgabe auf den positiven vollen Wert 65535 gezwungen. Falls das Endergebnis kleiner als 1 ist, wird die Aufgabe auf die Repräsentation von 1 gezwungen, wie durch das Flußdiagramm 384 der 8Q angedeutet ist. Der Prozeß-Steuer/Regel-Computer 14 kann dann die Pulse über viele Sekunden mitteln, um einen wahren Frequenzwert zu erhalten.
  • Es wird auf die 9A bis 9D Bezug genommen, in denen ein schematisches Diagramm für eine multifunktionelle Brückenschaltung 400 gemäß der vorliegenden Erfindung gezeigt ist. Die Brückenschaltung 400 kann dazu verwendet werden, fünf individuelle Temperatur- oder Gewichtswerte zu messen. Genauer: Die Brückenschaltung 400 ist dazu ausgelegt, Standard-Platinwiderstand-Temperaturvorrichtungen "RTDs" oder Rauhbetriebs RTDs zu akzeptieren, wenn die Schaltung unter Verwendung des Schalters "CSW1" der 9D in die Temperaturmeßkonfiguration versetzt ist. Wenn die Brückenschaltung 400 in die Gewichtsmeßkonfiguration versetzt ist, wird die Schaltung ferner die Leitungsabschlüsse einer Gewichtszelle akzeptieren (beispielsweise AD-Erregung und B-C-mv-Eingabe mit positivem B). Wie in 9D gezeigt, ermöglicht das Schaltersetzen der Brückenschaltung 400 ferner, die Steuereinheit 100 darüber zu informieren, ob die Temperatur in einem Celsius- oder Fahrenheit-Format aufgezeichnet werden sollte.
  • 9C zeigt eine Spannungsquellenschaltung 402 zum Bereitstehen elektrischer Energie für Temperatur/Gewichts-Wandler. 9B zeigt die Filterung für mehrfache Eingabesignalleitungen, mit der die Brückenschaltung für jeden dieser Wandler versehen ist. Wie in 9A gezeigt, sind diese Eingabesignal zu Multiplexern (506A) "CU1–CU2" gerichtet. Das Ausgabesignal von dem Multiplexer CU2 ist mit einem Operationsverstärker (3140A) "CU5" gekoppelt, der in einer Spannungsfolgerkonfiguration gezeigt ist. Das Ausgabesignal "MAI-L" vom Operationsverstärker CU5 wird zum Hauptmultiplexer U11 der Steuereinheit 100 übertragen.
  • Das Ausgabesignal vom Multiplexer CU2 stellt auch eine Eingabe an die Differenzverstärkerschaltung (AD521) "CU3" bereit. Die andere Eingabe zur Differenzverstärkerschaltung CU3 wird vom Multiplexer CU1 empfangen. Die Ausgabe vom Differenzverstärker CU3 wird über den Operationsverstärker (3140A) CU4 verstärkt und zum Hauptmultiplexer U11 der Steuereinheit 100 als Signal "MAI-H" gerichtet. 8A zeigt ferner einen Präzisionswiderstandsaufbau (S2CH) "CU6", der einen Satz von für Kalibrierungs- und Verstärkungszwecke verwendeten Widerständen umfaßt.
  • Es wird auf 10A Bezug genommen, die ein vereinfachtes Blockdiagramm eines Abschnitts des dreifach redundanten Feldcomputers zeigt, um insbesondere die Abbruchschaltungen für die digitalen Ausgabesignale zu veranschaulichen. Diesbezüglich ist an jeder der digitalen Ausgabeschaltungen 500–504 ein Satz Abbruchschaltungen angeordnet. Es sollte aus 10A gewürdigt werden, daß jede der Steuereinheiten 92 bis 96 mit ihrer eigenen digitalen Ausgabeschaltung versehen ist. Dementsprechend sollte verstanden werden, daß eine Feldcomputereinheit einen Satz von drei redundanten digitalen Ausgabeschaltungen 500–504 enthält, wann immer digitale Ausgabesignale zum Feld zu senden sind. Weil jede dieser redundanten digitalen Ausgabeschaltungen bevorzugt eine Mehrzahl von Ausgabesignalkanälen (beispielsweise 1 bis 10 einzelne Ausgabesignalkanäle) aufweist, ist für Veranschaulichungszwecke nur ein derartiger Kanal in 10A gezeigt.
  • Jede der Steuereinheiten 92 bis 96 überträgt ein "SET DODC"-Signal zu ihrer jeweiligen digitalen Ausgabeschaltung 500–504 für jedes zum Feld zu sendende digitale Ausgabesignal. Jedes dieser SET DODC-Signale repräsentiert das Ergebnis eines Schlichtungsprozesses, der individuell durch jede der Steuereinheiten 92–96 durchgeführt wird. Wie oben angegeben, werden die durch die Feldcomputereinheit 12 von den Prozeß-Steuer/Regel-Computern 14a–14b empfangenen digitalen Ausgabewertsignale unter den redundanten Steuereinheiten 92–96 miteinander geteilt. Unter der Annahme, daß die Übertragung eines bestimmten digitalen Ausgabesignalwerts (d. h. ein Hochpegel- oder Niederpegelwert) erfolgreich beendet wurde und alle der Steuereinheiten 92–96 korrekt dieser Wert verarbeitet haben, werden die "SET DODC-L"-, "SET DODC-M"- und "SET DODC-R"-Signale identisch sein. Die Suffixe "L", "M" und "R" werden hier einfach zum Anzeigen verwendet, daß das Signal von der linken, mittleren oder rechten Steuereinheit stammt. Es können allerdings Gelegenheiten auftreten, bei denen diese "SET DODC"-Signale nicht gleich sind. Ferner können Gelegenheiten auftreten, wenn es wünschenswert ist, daß das digitale Ausgabesignal von einer bestimmten digitalen Ausgabeschaltung daran gehindert wird, zum Feld übertragen zu werden.
  • Wie durch 10A angedeutet ist, sind die Ausgabeleiter von jeder der digitalen Ausgabeschaltungen 500–504 an einem gemeinsamen Knoten 506 zusammengebunden, der mit einer digital gesteuerten/geregelten Vorrichtung 508 (beispielsweise ein Solenoid) verbunden ist. Dies bedeutet, daß dann, wenn das Ausgabesignal von einer der digitalen Ausgabeschaltungen 500–504 auf Hochpegel liegt, diese Vorrichtung 508 ein Hochpegel-Eingabesignal empfangen könnte, selbst obwohl die anderen beiden digitalen Ausgabeschaltungen Niederpegel-Ausgabesignale erzeugen. Ein Auftreten einer derartigen Situation wird allerdings durch den kombinierten Gebrauch der redundanten Abbruchschaltungen 510–514 verhindert.
  • Wie in 10A gezeigt, enthält jede der Abbruchschaltungen 510–514 einen Satz von drei elektronisch gesteuerten Schaltern 516–520 (beispielsweise MOSFET-Bauelemente). Der Schalter 516 wird durch das "SET DODC"-Signal ("SETZE DODC"-Signal) gesteuert. Allerdings kann, selbst wenn der Schalter 516 geschlossen sein mag, ein Hochpegel-Ausgangssignal (beispielsweise 26 Volt) nicht zur Vorrichtung 508 übertragen werden, sofern nicht mindestens einer der Schalter 518–520 ebenfalls geschlossen ist. Die Schalter 518–520 werden durch "ABORT"-Signale ("ABBRUCH"-Signale) gesteuert, die durch die anderen beiden benachbarten Steuereinheiten erzeugt werden. Beispielsweise wird im Falle der Abbruchschaltung 510 der Schalter 518 durch das "ABORT R-L"-Signal von der Steuereinheit 96 und der Schalter 520 durch das "ABORT M-L"-Signal von der Steuereinheit 94 gesteuert. Wie in 6C veranschaulicht, werden diese ABORT-Signale individuell durch den Mikroprozessor U40 jeder Steuereinheit bestimmt.
  • Es sollte somit gewürdigt werden, daß es der Zustimmung oder Übereinstimmung entweder der Steuereinheit 94 (durch ein ABORT M-L-Signal mit hohem Pegel) oder der Steuereinheit 96 (durch ein ABORT R-L-Signal mit hohem Pegel) bedarf, damit die Steuereinheit 92 ein SET DODC-L-Signal mit hohem Pegel in das Feld sendet. Auf diese Art und Weise werden Software-Schlichtungsentscheidungen durch die Steuereinheiten 92-96 vermittels der Abbruchschaltungen 510–514 in den digitalen Ausgabeschaltungen 500–504 durchgesetzt. Wenn die Steuereinheiten 94– 96 bestimmen, daß ein bestimmtes digitales Ausgabesignal von der Steuereinheit 92 daran gehindert werden sollte, ins Feld übertragen zu werden, wird jede der Steuereinheiten 94–96 ein ABORT-Signal mit niedrigem Pegel für das spezielle digitale Ausgabesignal erzeugen, welches die Abbruchschaltung 518–520 öffnen wird.
  • Jede der digitalen Ausgabeschaltung 500–504 enthält eine "TEST"-Leitung, wie etwa die TEST-Leitung 522 für die digitale Ausgabeschaltung 500. Eine Diode, wie etwa die Diode 524, ist ebenfalls enthalten, um die digitale Ausgabeschaltung (und damit die TEST-Leitung) von der durch die Vorrichtung 508 gesehenen gemeinsamen Spannung zu isolieren. Ferner ist eine TRACK-Rückkoppelleitung (VERFOLGUNG-Rückkoppelleitung) 526 vorgesehen, um zu ermöglichen, daß jede der Steuereinheiten 92–96 den tatsächlich als Eingabe zur Vorrichtung 508 dargebotenen digitalen Zustand sieht. Wie genauer in Verbindung mit 11A–11C beschrieben werden wird, sind die digitalen Ausgabeschaltungen 500–504 dazu ausgelegt, ein nicht störendes Testen zu vereinfachen. Das Verfahren des nicht störenden Testens der digitalen Ausgabeschaltungen 500–504 wird in Verbindung mit den 19A–19M diskutiert werden.
  • Es wird auf 10B Bezug genommen, in der ein Blockdiagramm für die redundanten analogen Ausgabeschaltungen 600–604 gezeigt ist. Diesbezüglich ist ein detaillierteres Blockdiagramm für die analoge Ausgabeschaltung 600 dargeboten, während ein einzelner Block zum Veranschaulichen der identischen analogen Ausgabeschaltungen 602–604 für benachbarte Steuereinheiten verwendet wird. Aufgrund des dargebotenen Detaillierungsgrads im Blockdiagramm für die analoge Ausgabeschaltung 600 kann die Diskussion des schematischen Diagramms für diese Schaltung, wie in den 12A–12G gezeigt, etwas abgekürzt werden. Auf jeden Fall zeigt 10B, daß die analoge Ausgabeschaltung 600 für jeden in der analogen Ausgabeschaltung enthaltenen analogen Ausgabesignalkanal (beispielsweise fünf unabhängige Kanäle) eine Abbruchschaltung 606 hält. Die Abbruchschaltung 606 ist insofern ähnlich zu der oben diskutierten Abbruchschaltung 510, als daß die Abbruchschalter DN1–DN2 hinsichtlich der Anordnung im allgemeinen den Schaltern 520–518 entsprechen. Allerdings wird anstelle des Schalters 516 ein Verstärker verwendet, da ein analoges Signal anstelle eines digitalen Signals zum Feld zu übertragen ist. Zusätzlich werden optische Isolatoren als Abbruchschalter anstelle von MOSFETs verwendet. Dementsprechend sollte gewürdigt werden, daß jede der redundanten analogen Aufgabeschaltungen 600–604 aus dem gleichen Grund mit einer Abbruchschaltung versehen ist, aus dem eine Abbruchschaltung in den digitalen Ausgabeschaltungen 500–504 vorgesehen ist.
  • Die analoge Ausgabeschaltung 600 empfängt Instruktionen von ihrer Steuereinheit, die in 10B generisch als Steuereinheit 100 angedeutet ist. Diesbezüglich empfängt die analoge Ausgabeschaltung 600 von ihrer Steuereinheit für jeden Kanal einen gewünschten Ausgabewert, und es bleibt der analogen Ausgabeschaltung durch die Steuereinheit die Bestimmung überlassen, wie dieser Ausgabewert zu erreichen ist. Aus diesem Grund und aufgrund der Fähigkeit der analogen Ausgabeschaltung, für sich alleine ein nicht störendes Testen durchzuführen, wird die analoge Ausgabeschaltung als eine "intelligente" Schaltung betrachtet, die die Steuereinheit freimacht, in der Zwischenzeit andere benötigte Funktionen durchzuführen. Um diese Ziele zu erreichen, ist die analoge Ausgabeschaltung 600 mit einem Mikroprozessor und der notwendigen Unterstützungsschaltungsanordnung versehen, um mit relativer Unabhängigkeit von der Steuereinheit 100, wie durch das Blockdiagramm 610 angedeutet, zu arbeiten.
  • Das Vermögen intelligenter Unabhängigkeit ist ferner wichtig von dem Standpunkt der Bestimmung, wie eine gemeinsame Feldvorrichtung von drei gleichzeitig arbeitenden analogen Ausgabeschaltungen gemäß einem gemeinsamen Ausgabewert getrieben werden sollte. Dies ist ein besonders schwieriges Problem dann, wenn, wie hier, eine schnelle Antwort auf sich ändernde Bedingungen gewünscht ist. Diesbezüglich wird jede der analogen Ausgabeschaltungen 600–604 durch ihre jeweilige Steuereinheit 92–96 angewiesen, einen gewünschten Ausgabewert auf jedem Kanal zu erreichen. Dementsprechend wird jede der analogen Ausgabeschaltungen 600–604 den Wunsch haben, unabhängig die Feldvorrichtung in Antwort auf einen Zielausgabewert zu treiben, der ihr durch ihre eigene Steuereinheit einmal pro Prozeß-Steuer/Regel-Zyklus (beispielsweise 1 Sekunde) gegeben wird. Somit könnte eine unstabile Ausgabe resultieren, da es für Fehlertoleranzzwecke ferner auch gewünscht ist, daß die analogen Ausgabeschaltungen während des Prozeß-Steuer/Regel-Zyklus mit relativer Unabhängigkeit voneinander arbeiten. Allerdings werden intelligente, jedoch unabhängige Verfahren der Steuerung/Regelung der Ausgabe für jede der analogen Ausgabeschaltungen durch die Mikrocomputer-Steuerschaltung 610 bereitgestellt. In Übereinstimmung mit diesen Verfahren wird nicht nur ein Teilen des Ausgangspegels optimal erreicht, sondern jede der Ausgabeschaltungen ist fähig, mit hoher Geschwindigkeit auf sich ändernde Bedingungen zu reagieren.
  • Der Mikroprozessor für die analoge Ausgabeschaltung überträgt für jeden der aktiv arbeitenden Ausgabekanäle digital gemultiplexte Ausgabesignal-Spannungswerte zu einer Digital-zu-Analog-Wandlerschaltung 612. Die analogen Ausgabewerte von der Digital-zu-Analog-Wandlerschaltung 612 werden dann sequentiell durch eine Verstärkerschaltung 614 verarbeitet und zu einer Multiplexer-Schaltung 616 weitergegeben. Die Multiplexer-Schaltung 616 richtet dann die verstärkten analogen Ausgabesignal zu den angemessenen Abbruchschaltungen, wie etwa die Abbruchschaltung 606 für das "AO-1"-Signal.
  • Wie im Falle der Abbruchschaltung 510–514 für die digitalen Ausgabeschaltungen 500–504 enthält jede der Abbruchschaltungen für die analogen Ausgabeschaltungen eine Vorkehrung zum Erzeugen eines Rückkopplungssignals. Bezüglich der Abbruchschaltung 606 ist diese Rückkopplungsvorkehrung dahingehend gezeigt, daß sie einen Widerstand 618 und ein Paar von Signalleitungen 620–622 umfaßt. Die Signalleitung 620 liefert ein Hochpegel-Rückkopplungssignal "MEH-1" auf der stromaufwärtigen Seite des Widerstands 618, und die Signalleitung 622 liefert ein niederpegeliges Rückkopplungssignal "MEL-1" auf der stromabwärtigen Seite des Widerstands 618. Zusätzlich sind ein Verfolgungswiderstand 624 und ein Paar von Signalleitungen 626–628 durch die Feldcomputereinheit 12 bereitgestellt, um zu ermöglichen, daß jede der analogen Ausgabeschaltungen 600–604 den tatsächlichen analogen Ausgabesignalwert sieht, der an einer analog gesteuerten/geregelten Ausgabevorrichtung 630 empfangen wird. Die Signalleitung 626 liefert ein Hochpegel-Verfolgungssignal "AOT-H-1" auf der stromaufwärtigen Seite des Verfolgungswiderstands 624, und die Signalleitung 628 liefert ein niederpegeliges Verfolgungssignal "AOT-L-1" auf der stromabwärtigen Seite des Widerstands 624. Die Abbruchschaltung 606 ist ferner dahingehend gezeigt, daß sie eine Signalleitung 632 enthält, die ein dem Verstärker 608 unmittelbar folgendes Rückkoppelsignal "OAT-1" liefert. Auf diese Art und Weise kann die Betriebsfähigkeit der analogen Ausgabeschaltung 600 in Übereinstimmung mit dem unten zu beschreibenden nicht störenden Testverfahren bis zu diesem Punkt getestet werden, wobei beide Abbruchschalter DN1–DN2 in einem offenen Zustand sind.
  • Wie in 10B veranschaulicht, enthält die analoge Ausgabeschaltung 600 ein Paar von Multiplexer-Schaltungen 634–636, die einen Differenzverstärker 638 versorgen. Die Multiplexer-Schaltungen 634–636 arbeiten unter den Adreßinstruktionen vom Mikroprozessor der analogen Ausgabeschaltung, um aufeinanderfolgend entsprechende Hoch/Niederpegel-Signale als eine Eingabe zum Differenzverstärker 638 zu paaren, um ein Signal zu erzeugen, das den Spannungsabfall über die Rückkoppel- und Verfolgungswiderstände (Track-Widerstände) anzeigt, der direkt proportional zur zum Feld gesendeten Ausgabe ist. Somit würde beispielsweise das MEH-1-Signal zu gleicher Zeit an der Ausgabe des Multiplexers 634 vorliegen, wie das MEL-1-Signal an der Ausgabe des Multiplexers 636 vorliegt. Nach einem Verstärkungsschritt wird dann ein abschließender Multiplexer 640 verwendet, um diese Differenzspannungssignale, die "OAT-1..OAT-5"-Signale oder die sich auf Masse beziehenden Multiplexerausgaben zu einer Analog-zu-Digital-Wandlerschaltung 642 zu übertragen. Die Analog-zu-Digital-Wandlerschaltung 642 ist ihrerseits zwecks Analyse mit dem Mikroprozessorblock 610 verbunden.
  • Die analoge Ausgabeschaltung 600 ist bevorzugt eine 5-Kanal-(0-22 ma)-Schaltungsvorrichtung, die geeignet ist, ihre Ausgaben auf derartige Art und Weise zu testen, daß das Testen für das Feld nicht störend ist. Die analoge Ausgabeschaltung 600 ist ferner dazu ausgelegt, eine Hochgeschwindigkeitsvorrichtung zu sein, so daß dann, wenn eine der drei redundanten analogen Ausgabeschaltungen 600–604 versagt, die anderen analogen Ausgabeschaltungen die zusätzliche Last innerhalb einer relativ kurzen Zeitperiode (beispielsweise 80 ms) aufnehmen werden. Die Funktion der analogen Ausgabeschaltung 600 kann am besten dahingehend beschrieben werden, daß sie eine Proportional-Integral-"PI"-Regelschleife vorsieht, wenn die Schaltung auf einen von der Steuereinheit 100 empfangenen Ausgabewert (zum Beispiel ein Sollwert) reagiert. Dieser Ausgabewert ist bevorzugt ein Bruchteil oder Prozent des maximalen Ausgabevermögens (22 ma). Wie oben erwähnt, wird die tatsächliche Feldausgabe durch jede der redundanten analogen Ausgabeschaltungen 600–604 über den Verfolgungswiderstand 624 gemessen, der auf der passiven Elementplatine der Feldcomputereinheit 12 angeordnet ist. Um jegliches Rauschen, das auf dem Verfolgungssignal auftreten könnte, auszufiltern, wird ein Viertel der Differenz zwischen dem letzten Verfolgungswert (Track-Wert) und dieser Messung zu dem letzten Verfolgungswert (Track-Wert) hinzuaddiert. Falls der Unterschied größer als 8% ist, wird der alte Verfolgungswert vollständig ersetzt, um die Geschwindigkeit der Systemantwort auf große Fehler zu beschleunigen.
  • Die Software-Steuer/Regel-Schleife der analogen Ausgabeschaltung 600 schließt einen Vergleich zwischen der Spannung über dem Verfolgungswiderstand 624 und dem gewünschten Ausgabewert ein. Ein Bruchteil des Fehlers zwischen der gewünschten Ausgabe und den gemessenen Verfolgungswerten (bis zu einem Viertel) wird dann zu dem gewünschten Digital-zu-Analog-Ausgabewert zuaddiert (d. h. zu dem Integralwert), der im Speicher des Mikroprozessors für die analoge Ausgabeschaltung 600 gespeichert ist. Dieser vergrößerte Wert wird dann zur Digital-zu-Analog-Wandlerschaltung 612 und – durch den Multiplexer 616 verarbeitet – zur bezeichneten Abbruchschaltung übertragen (beispielsweise Abbruchschaltung 606). Die analoge Ausgabeschaltung 600 bestimmt dann ihren Beitrag zu der zur Feldvorrichtung 630 gelieferten Gesamtausgabe, indem der Spannungsabfall über den "ME"-Rückkoppelwiderstand 618 gemessen wird. Dies wird getan, um zu gewährleisten, daß die analoge Ausgabeschaltung während dem unten beschriebenen, nicht störenden Testverfahren 100% der Ausgabe zur Feldvorrichtung 630 beiträgt. Die analoge Ausgabeschaltung 600 vergleicht auch das OAT-Signal mit der Ausgabe der Digital-zu-Analog-Wandlerschaltung 616 (über ihr in 10B gezeigtes "DAC-OUT"-Signal), um zu bestimmen, ob der Operationsverstärker 608 richtig arbeitet oder nicht. Wenn beispielsweise zuviel Leistung zur Feldvorrichtung 630 übertragen wird und die Ausgabe dieses Kanals 0 sein sollte, die OAT-Messung aber sagt, daß die Ausgabe nicht 0 ist, sperrt die analoge Ausgabeschaltung 600 diesen Kanal und signalisiert ein "OAT<>DAC"-Signal zur Steuereinheit 100.
  • Die analoge Ausgabeschaltung 600 sorgt ferner für die automatisierte Verwendung von Abbruchschaltern (beispielsweise die Abbruchschalter DN1-DN2) in dem Fall eines Fehlers, der zuviel Leistung zum Feld sendet. Ein Hauptpfad zum Öffnen eines Abbruchschalters ein Ausgabe-null-Gewährleistungsmechanismus, der die Abbruchschalter für einen Kanal in einen offenen Zustand zwingt, wenn der Kanal angewiesen ist, eine Ausgabe null zu haben. Der sekundäre Pfad zum Öffnen der Abbruchschalter wird von einer Anforderung eines oder mehrerer der analogen Ausgabeschaltungen 600–604 abgeleitet. Beispielsweise wird in dem Fall, daß ein bestimmter Ausgabekanal für eine analoge Ausgabeschaltung gemäß der eigenen Analyse der analogen Ausgabeschaltung 2% zu hoch ist, diese analoge Ausgabeschaltung dann ihre Steuereinheit ersuchen, daß der anstoßerregende Ausgabekanal abgebrochen wird, indem alle Abbruchschalter DN1–DN2 geöffnet werden. Da allerdings diese Abbruchschalter auf die benachbarten Steuereinheiten reagieren, ist ein Austausch von Abbruchanforderungsinformation auf der Steuereinheitenebene erforderlich. In Übereinstimmung mit einer Form der vorliegenden Erfindung findet der Austausch von Abbruchanforderungen zwischen den Steuereinheiten 92–96 während des nächsten Ausgabekommunikationszyklus statt (beispielsweise im nächsten Prozeß-Steuer/Regel-Zyklus). Wenn beliebige zwei Steuereinheiten 92–96 übereinstimmen, daß ein bestimmter Kanal für eine der analogen Ausgabeschaltungen 600–604 gesperrt werden sollte, werden diese Steuereinheiten dann die notwendigen Signale erzeugen, um beide der Abbruchschalter DN1–DN2 der anstoßerregenden analogen Ausgabeschaltung zu öffnen. Falls eine analoge Ausgabeschaltung einen Abbruch auf einem bestimmten Ausgabekanal verlangt und keine der benachbarten Steuereinheiten einen Abbruch auf demselben Kanal angefordert hat, ist eine Abbruch-Nichtübereinstimmung aufgetreten. Diese Nichtübereinstimmungen werden bevorzugt dadurch gehandhabt, daß die Anzahl von aufeinanderfolgenden Nichtübereinstimmungen auf einem bestimmten Kanal gezählt werden und ein Fehler den Prozeß-Steuer/Regel-Computern 14a–14b signalisiert wird, wenn die Zählung einen vorbestimmten Wert (beispielsweise 32 Dezimal, 20 Hexadezimal) überschreitet. Wenn keine Abbruch-Nichtübereinstimmung auf einem bestimmten Kanal vorliegt, wird der Zähler für diesen Kanal auf 0 gesetzt. Es sollte gewürdigt werden, daß der sekundäre Pfad zum Öffnen der Abbruchschalter die durch jede der Steuereinheiten 100 getroffenen Schlichtungsentscheidungen durchsetzt. Dementsprechend ist es für keine der drei analogen Ausgabeschaltungen 600–605 nötig, die geschlichteten Ausgabewerte zu wissen, die durch die benachbarten Steuereinheiten zu den anderen analogen Ausgabeschaltungen gesendet wurden.
  • Ferner, wenn eine analoge Ausgabeschaltung bestimmt ist, tot zu sein, werden die benachbarten Steuereinheiten die Abbruchschalter für alle der Kanäle auf der toten analogen Ausgabeschaltung öffnen, um diese Schaltung vom Feld zu isolieren. Diesbezüglich wird eine analoge Ausgabeschaltung als tot betrachtet, wenn die intelligente analoge Ausgabeplatine nicht kommuniziert, wenn ein Speichertest der Schaltung einen Fehler ergeben hat, wenn ein Test der Digital-zu-Analog-Wandlerschaltung 612 einen Fehler ergeben hat oder wenn ein Test der Analog-zu-Digital-Wandlerschaltung 642 einen Fehler ergeben hat. Die für die "tote" analoge Ausgabeschaltung verantwortliche Steuereinheit 100 wird aufgrund eines Verlustes ihrer eigenen analogen Ausgabeschaltung die Abbruchschalter der benachbarten analogen Ausgabeschaltungen nicht öffnen. Diese Steuereinheit wird vielmehr die Steuereinheit-zu-Steuereinheit-Kommunikationen untersuchen, um zu bestimmen, ob das Öffnen dieser anderen Abbruchschalter gerechtfertigt ist. Dies wird ein 3-2-1-Fehlerszenario anstelle einer 3-2-0-Fehler-Prozedur ermöglichen. Dementsprechend werden in dem Fall, daß nur eine arbeitende analoge Ausgabeschaltung bleibt, keine Abbruchschalter auf den arbeitenden Kanälen für diese analoge Ausgabeschaltung geöffnet, sofern nicht eine Ausgabe von 0 angewiesen ist.
  • In dem Fall eines Steuereinheit-zu-Steuereinheit-Kommunikationsfehlers werden die Abbruchschalter für die der Steuereinheit 100 entsprechende analoge Ausgabeschaltung, die nicht kommunizierte, nicht geöffnet werden. Diese Prozedur ermöglicht, daß der unten beschriebene Ausfall-SICHER/ZULETZT-Mechanismus richtig arbeitet. Die beiden verbleibenden Steuereinheiten, die fähig sind zu kommunizieren, werden dann als doppelt redundante Feldcomputereinheit wirken, bei der nur eine Abbruchanforderung erforderlich ist, eine Abbruchschaltung zu öffnen. Falls beide benachbarten Steuereinheiten es versäumen zu kommunizieren, wird eine Abbruchanforderung nicht bedient werden, und die Ausfall-SICHER/ZULETZT-Selektierungen in der Softwareschlichtung werden die Ausgaben von der Feldcomputereinheit für alle der analogen Ausgaben steuern.
  • Sobald ein Paar von Abbruchschaltern aufgrund einer übermäßig hohen Ausgabe geöffnet wurde, ist es bevorzugt, daß diese Schalter nur dann geschlossen werden, nachdem ein Auswechseln der analogen Ausgabeschaltung erfaßt wurde oder die Steuereinheit 100 für diese analoge Ausgabeschaltung neu gestartet wurde. Die Ausnahme zu dieser Prozedur tritt in dem Fall auf, in dem eine dreifache Abbruchanforderung für einen bestimmten Ausgabekanal vorliegt. Bei einem solchen Vorkommnis werden alle Abbruchschalter für diesen Kanal wieder geschlossen, um einen totalen Leistungs/Energieverlust zum Feld zu verhindern.
  • Aus der obigen Diskussion sollte gewürdigt werden, daß ein einem oder mehreren Ausgabekanälen zugeordneter Fehler zwei Prozeßsteuerzyklen brauchen kann, um die angemessenen Abbruchschalter DN1-DN2 zu öffnen. Somit wird, beispielsweise ein Gesamtprozeßzyklus von einer Sekunde vorgesehen ist, dann eine 1-Sekunden-Periode dazu verwendet, eine Abbruchanforderung von den analogen Ausgabeschaltungen zu den Steuereinheiten zu kommunizieren, und es wird dann eine andere 1-Sekunden-Periode dazu verwendet, um die Steuereinheit-zu-Steuereinheit-Kommunikation zu ermöglichen. Nichtsdestotrotz wird ein Abbruch auf eine Ausgabe von 0 zum Feld in dem gleichen Zyklus stattfinden, in dem die Steuereinheiten 92–96 einen 0-Ausgabewert von den Prozeß-Steuer/Regel-Computern 14a–14b empfangen.
  • Es wird auf die 11A–11C Bezug genommen, in denen ein schematisches Diagramm für die digitalen Ausgabeschaltungen 500–504 gezeigt ist. 11A stellt ein schematisches Diagramm der Abbruchschaltung 510 bereit, die in 10A schematisch veranschaulicht wurde. Wiederum sollte vermerkt werden, daß eine derartige Abbruchschaltung für jeden digitalen Ausgabekanal der Feldcomputereinheit 12 vorgesehen ist. Mit anderen Worten würde in einer Feldcomputereinheit mit zehn digitalen Ausgabekanälen ein Satz von zehn Abbruchschaltungen für jede der drei Steuereinheiten 92–96 vorgesehen sein, wodurch eine Gesamtzahl von 30 Abbruchschaltungen vorgesehen wären.
  • 11A zeigt, daß die Schalter 516–520 jeweils einen MOSFET-(IRFD120)-Transistor umfassen. Jeder dieser Transistoren empfängt sein Gate-Signal von einem Optoisolator, wie etwa der Opto-Isolator (PS2603) DU1 für den Transistor 516. Das "SET DODC-1"-Eingabesignal für den Opto-Isolator DU1 entspricht im allgemeinen dem "SET DODC-L"-Signal der 10A. In gleicher Weise entspricht das "ABORT1-1"-Eingabesignal dem "ABORT R-L" der 10A, und das "ABORT2-1"-Eingabesignal entspricht dem "ABORT M-L"-Signal der 10A. Der parallele Anschluß der Transistoren 518–520 in 10A ist in 11A durch die Tatsache demonstriert, daß die Drain- und Source-Anschlüsse dieser beiden Transistoren zusammengebunden sind. Der Source-Anschluß des Transistors 516 ist ferner mit den Drain-Anschlüssen der Transistoren 518– 520 verbunden, und der Drain-Anschluß des Transistors 516 ist durch eine Sicherung "DF1" mit der +26 Volt-Energieversorgung "DPS1" (in 11C gezeigt) verbunden. Mit anderen Worten ist der Transistor 516 in Reihe mit beiden Transistoren 518 und 520 verbunden. Ein Herabziehwiderstand (100K) RP7 und eine Diode (1N459A) 524 sind mit den Source-Anschlüssen der Transistoren 518–520 verbunden, um auf der stromabwärtigen Seite der Diode 524 die mit "DODC-1 " bezeichnete Ausgabeleitung vorzusehen. Es sollte somit gewürdigt werden, daß dann, wenn der Transistor 516 durch ein SET DODC-1-Signal mit hohem Pegel angeschaltet wird und wenigstens einer der Transistoren 518–520 durch ihre jeweiligen Gate-Signale angeschaltet sind, die leitfähigen Zustände dieser Transistoren ermöglichen werden, daß Strom von der +26 Volt-Energieversorgung zur DODC-1-Ausgabeleitung fließt. Da das Leiten dieser Transistoren 516 erforderlich ist, um elektrische Leistung zur Feldvorrichtung 518 zu übertragen, kann auf diesen Transistor als Leistungsschalter Bezug genommen werden. Im Gegensatz dazu kann auf die Transistoren 518–520 als Abbruchschalter Bezug genommen werden, da diese Transistoren in Kombination wirksam sind, die Übertragung von elektrischer Energie zur Feldvorrichtung zu hemmen oder zu verhindern, wenn der Leistungsschalter geschlossen ist (d. h. wenn der Transistor 516 in einem leitfähigen oder An-Zustand ist).
  • Wie oben angedeutet, sind die digitalen Ausgabeschaltungen 500–504 dafür ausgelegt zu ermöglichen, daß ein nicht störendes Testen durchgeführt wird. Diesbezüglich sollte vermerkt werden, daß die Abbruchschaltung 510 einen Widerstand (10K) RP1 enthält, der parallel über die Drain- und Source-Anschlüsse des Transistors 516 angeschlossen ist, sowie einen Widerstand (10K) RP3, der parallel über die Drain- und Source-Anschlüsse des Transistors 520 angeschlossen ist. Ferner zeigt 11A, daß die TEST-1-Leitung 522 mit dem Knoten oder Anschluß verbunden ist, der zwischen den Source-Anschlüssen der Transistoren 518–520, dem Herabziehwiderstand RP7 und der Anode der Diode 524 vorgesehen ist. Dementsprechend sollte gewürdigt werden, daß die Widerstände RP1, RP3 und RP7 ein Spannungsteilernetzwerk vorsehen, das es ermöglichen wird, daß die Transistoren 516–520 wahlweise betätigt und die Änderung in der Spannung über die TEST-1-Leitung erfaßt wird. Wenn beispielsweise der Transistor 516 angeschaltet wird, wird die Spannung auf der TEST-1-Leitung ansteigen, da der Widerstand RP1 durch diesen Transistor effektiv kurzgeschlossen wird. In gleicher Weise wird die Spannung auf der in TEST-1-Leitung ansteigen, wenn einer der Transistoren 518–520 angeschaltet wird, da der Widerstand RP3 durch den leitenden Transistor effektiv kurzgeschlossen wird. Nichtsdestotrotz wird kein wesentlicher Stromfluß durch die DODC-1-Leitung ermöglicht, solange nicht der Transistor 516 und einer der Transistoren 518–520 in einen leitfähigen Zustand geschaltet werden.
  • 11B zeigt eine Rückkoppelschaltung 526 für die digitale Ausgabeschaltung 500. Die Rückkoppelschaltung 526 enthält ein Paar von Multiplexerschaltungen DU33 und DU35, die über die Adreßleitungen HDEV-0..HDEV-3 und die Freigabeleitung HP3-5 durch die Steuereinheit 100 adressiert werden. Die TEST-Leitungen für jeden der digitalen Ausgabekanäle sind als Eingangssignale zum Multiplexer DU33 angeschlossen, während die DODC-Signale für jeden dieser Kanäle als Eingabesignale am Multiplexer DU35 angeschlossen sind. Die Ausgabeleitungen 528–530 von den Multiplexern DU33 bzw. DU35 sind zusammengekoppelt, und die gemultiplexten Rückkoppelsignale auf diesen Ausgabeleitungen werden dann durch ein Paar von Operationsverstärkern (3140A) DU32 und DU31 verarbeitet, die in Reihe angeschlossen sind. Dementsprechend sollte gewürdigt werden, daß jede der digitalen Ausgabeschaltungen 500–504 einen seriell gemultiplexten Strom von Rückkoppelsignalen zu ihren jeweiligen Steuereinheiten 92–96 liefern.
  • Es wird auf die 12A–12F Bezug genommen, in denen ein schematisches Diagramm für die analogen Ausgabeschaltungen 600–604 gezeigt ist. 12A stellt ein schematisches Diagramm der als Block 610 in 10B gezeigten Mikrocomputerschaltung bereit. Die Mikrocomputerschaltung 610 enthält einen 16 MHz-Mikroprozessor (80C31) EU3, eine Speicheradressen-Latch-Schaltung (HC573) EU2, ein 8Kx8 CMOS EPROM (57C64) EU1 und ein programmierbares Logikbauelement (EP910) EU4. Der Mikroprozessor EU3 empfängt auf der seriellen RXDATA-Leitung von der Steuereinheit 100 für jeden der analogen Ausgabekanäle den Ausgabewert, und der Mikroprozessor überträgt auf der seriellen TXDATA-Leitung Statusdaten zur Steuereinheit. Das EPROM EU1 wird dazu verwendet, das Betriebsprogramm für die analoge Ausgabeschaltung 600 zu speichern. Der programmierbare Logikbaustein (PLD) EU4 wird dazu verwendet, verschiedene Signale zu erzeugen, die die Funktionen von speziellen Teilen der analogen Ausgabeschaltung 600 steuern. Beispielsweise werden die "DACWR"- und "DACA"-Signale von der PLD EU4 zur Digital-zu-Analog-Wandlerschaltung 612 der 12B übertragen, um zu bewirken, daß der D/A-Wandler digital codierte Analogwerte auf dem Datenbus (DATA < 70 >) des Mikroprozessors EU3 fängt und diesen codierten Wert zu einem entsprechenden Analogpegel wandelt.
  • Die Mikroprozessorschaltung 610 enthält ferner grüne und rote LEDs, um eine visuelle Anzeige des Gesundheitsstatus der analogen Ausgabeschaltung 600 (auf die manchmal als die SAO-Platine für "intelligente analoge Ausgabe" Bezug genommen wird) vorzusehen. Falls die Platine richtig arbeitet, wird die rote LED AUS sein, und die grüne LED wird AN sein. Der Mikroprozessor der Steuereinheit wird allerdings unter gewissen Bedingungen, wie etwa dann, wenn die Kommunikation zwischen der analogen Ausgabeschaltung 600 und ihrer Steuereinheit 100 fehlgeschlagen ist, verursachen, daß die grüne LED blinkt. In gleicher Weise kann verursacht werden, daß die rote LED blinkt, wenn die Mikroprozessorschaltung 610 nicht richtig funktioniert, oder sie versucht, mit ihrer Steuereinheit 100 zu kommunizieren. Die rote LED wird unter gewissen möglichen Bedingungen, wie etwa dann, wenn ein nicht störender Test mißlungen ist, ein Kanal auf der SAO-Platine abgebrochen wurde oder ein Verfolgungsproblem erfaßt wurde, AN-geschaltet werden. Umgekehrt wird die grüne LED AUS-geschaltet werden, wenn eine Hardware-Komponente der SAO-Platine versagt hat oder ein Fehler der Steuereinheit 100 aufgetreten ist. Es sollte dementsprechend gewürdigt werden, daß diese Status-LEDs bevorzugt für mehrere Verwendungen eingesetzt werden, so daß aus nur zwei LEDs während einer Feldinspektion eine Vielzahl an verschiedenen Problemen visuell unterschieden werden kann.
  • 12B zeigt die Digital-zu-Analog-Wandlerschaltung 612, Verstärkerschaltung 614 und Multiplexerschaltung 616, die in Verbindung mit 10B diskutiert wurden. Diesbezüglich sollte vermerkt werden, daß der D/A-Wandler 612 (AD7248) eine Auflösung von 12 Bit aufweist, aber nicht für absolute Genauigkeit ausgelegt sein muß. In Übereinstimmung mit den Steuer/Regel-Verfahren der vorliegenden Erfindung ist die Genauigkeit des D/A-Wandlers 612 vielmehr nicht so wichtig wie die Fähigkeit, kleine Änderungen durchzuführen.
  • Die Verstärkerschaltung 614 umfaßt einen Operationsverstärker EU34 (3140A). Dieser einstufige Verstärker stellt einen "2,21"-Multiplizierer bereit, der die maximale 10 Volt-Ausgabe auf ein Maximum von 22,1 Volt verstärkt. Diesbezüglich ist es bevorzugt, daß im Rückkoppelschenkel zwischen dem Ausgang und dem invertierenden Eingang des Operationsverstärkers ein 1,21 kOhm Widerstand verwendet wird. Diese Vorkehrung verhindert eine differentielle Eingabe größer als 10 Volt, indem die Menge an Strom, die durch den nicht invertierenden Eingang gezogen werden kann, begrenzt wird, und verhindert somit, daß das Gerät in einen positiven Rückkoppelmodus gesetzt wird, der mehrere Sekunden erfordern könnte, bis sich das Gerät hiervon erholt. Diese Vorkehrung ermöglicht ferner der Verstärkerschaltung, in Verbindung mit dem 1,21 kOhm Widerstand ihre Eingabe um 2,21 zu verstärken.
  • 12C veranschaulicht die Abbruchschaltung 606, die in Verbindung mit 10B diskutiert wurde. Diesbezüglich spricht der Operationsverstärker (3140A) EU15 oder 608 auf das "SET-AO1"-Signal vom Multiplexer 616 an. Die Abbruchschaltung enthält allerdings Vorkehrungen, um zu verhindern, daß elektrische Leistung zum Feld übertragen wird, wenn die Mikrocomputerschaltung 610 oder die Steuereinheit 100 versagen, richtig zu arbeiten. Genauer: der Operationsverstärker EU15 kann durch das Leiten des Transistors EQ3 über ein Niederpegelsignal auf dem angemessenen Stift des "P1"-Busses des Mikroprozessors EU3 gesperrt werden. Mit anderen Worten, die analoge Ausgabeschaltung 600 kann ihre eigene analoge Ausgabe auf null ziehen. Ferner wird auch das Vorhandensein eines niederpegeligen "DEADMAN"-Signals ("TOTMANN"-Signals) von der Totmann-Timer-Schaltung 649 der 12D verursachen, daß die analoge Ausgabe vom Operationsverstärker EU15 auf null gezogen wird. Der Timer (LS122) EU9 der Totmann-Timer-Schaltung 649 spricht auf periodische "DEADSET"-Signalpulse von der Steuereinheit 100 an, um das DEADMAN-Signal in einem Hochpegelzustand zu halten. Somit wird, falls innerhalb einer vorbestimmten Zeitperiode (beispielsweise 64 ms) kein DEADSET-Puls empfangen wird, die analoge Ausgabeschaltung 600 dann automatisch alle ihre analogen Ausgabeleitungen auf null herabziehen.
  • Wie in dem Fall der digitalen Abbruchschaltungen 510 enthält die analoge Abbruchschaltung 606 Opto-Isolatoren (EU32–EU33), um die analoge Ausgabeschaltung 600 von ihren benachbarten analogen Ausgabeschaltungen 602–604 elektrisch zu isolieren. Diese Opto-Isolatoren (ILD31) sind allerdings auch fähig, Strom durchzulassen, um die Feld-Steuer/Regel-Vorrichtung, mit der die analoge Ausgabeschaltung verbunden ist, zu treiben. Dementsprechend ist die Ausgabeleitung 646 vom Operationsverstärker EU15 mit dem Kollektoranschluß des Transistors in jedem der Opto-Isolatoren EU32–EU33 verbunden. Des weiteren sollte vermerkt werden, daß die Abbruchschaltung 606 eine Diode 648 enthält, die den ME-Widerstand 618 vom Verfolgungswiderstand 624 trennt.
  • 12E zeigt, daß die Multiplexer-Schaltung 634 der 10B tatsächlich Multiplexer EU24 und EU26 umfaßt. In gleicher Weise ist die Multiplexer-Schaltung 636 der 10B dahingehend gezeigt, daß sie Multiplexer EU23 und EU25 umfaßt. Dementsprechend umfaßt die Differenzverstärkerschaltung 638 ebenfalls einen Satz von fünf Operationsverstärkern (OPA2107) EU11, (OPA2107) EU21 und (OPA602) EU12. Die Operationsverstärker EU11 liefern die gemultiplexten "OUT-L"- und "OUT-H"-Signale ("AUSGABE-L"- und "AUSGABE-H"-Signale) von den ME- und Verfolgungswiderständen, die eine Messung dieser Signale bezüglich Masse ermöglichen. Als die erste Stufe des durch die Operationsverstärker EU21 und EU12 gebildeten Differenzverstärker 638 puffern die Operationsverstärker EU21 die Ausgabe des Multiplexers. Das durch den Differenzverstärker 638 erzeugte "A/D_IN"-Signal repräsentiert eine verstärkte Spannungsdifferenz zwischen den Aufgaben der Multiplexer (beispielsweise um 4,545 verstärkt).
  • Die Differenzverstärkerschaltung 638 liefert eine Verstärkung von 4,545, um die maximale Verfolgungsdifferenz von 2,2 Volt zu 10 Volt zu wandeln. Diese Verstärkung ermöglicht, daß der gesamte Bereich des analogen Wandlers 642 verwendet wird. Zusätzlich sollte vermerkt werden, daß die Operationsverstärker negative und positive Schienen von –5 Volt bzw. +26 Volt aufweisen. Diesbezüglich arbeiten die Operationsverstärker innerhalb von 5 Volt der negativen Schiene und 3,0 Volt der positiven Schiene. Die Operationsverstärker sollten ferner eine Slew-Rate größer als 1 Volt/ms haben sowie einen so niedrig wie möglichen Spannungs-Offset. Auf diese Art und Weise weist die Differenzverstärkerschaltung 638 die Fähigkeit auf, relativ schnell zu arbeiten, gut nahe zu den Versorgungsschienen zu arbeiten und über einen weiten Bereich Gleichtaktspannungen zu sperren.
  • 12F vervollständigt die analoge Ausgabeschaltung 600 durch Empfangen der OUT-L-, OUT-H und A/D_IN-Signale und ferner durch Multiplexen dieser Signale mit den OAT-1..OAT-5-Signalen. Die analoge Ausgabe des Multiplexers 640 wird durch den Operationsverstärker (OPA602) EU5 verarbeitet und dann durch den A/D-Wandler (ADS574) 642 in einen digitalen Signalstrom gewandelt. Der A/D-Wandler 642 ist seinerseits mit dem DATA < 7 0 > Bus (DATEN < 7 0 > -Bus) des Mikroprozessors EU3 der analogen Ausgabeschaltung 600 verbunden.
  • Es wird auf die 13A–13D Bezug genommen, in denen ein schematisches Diagramm für die Netzsteuereinheit 16 gezeigt ist. Wie oben angedeutet, dient die Netzsteuereinheit 16 als Kommunikationsdirektor für das gesamte faseroptische Netz und weist bevorzugt die Fähigkeit auf, mit einer Rate von wenigstens 500K Baud zu kommunizieren. Die Netzsteuereinheit 16 ist mit ihrer eigenen Mikrocomputerschaltung 800 ausgerüstet, wie in 13A dargestellt ist. Die Mikrocomputerschaltung 800 enthält einen Mikroprozessor (80C31 BH-1) FU10, einen 32K-Programmspeicher FU11, einen 32K-Datenspeicherchip FU6, ein PLD-Speichersteuereinheitschip FU5 und Latch-Chips FU2-FU3. Diesbezüglich ist die Mikrocomputerschaltung 800 in der Konstruktion ähnlich zu derjenigen, die in 6A für die Steuereinheit 100 gezeigt ist, und es können in beiden Schaltungskonstruktionen die gleichen oder ähnliche Komponenten verwendet werden. Ferner ist eine 16 MHz-Oszillatorschaltung 802 mit dem Mikroprozessor FU10 verbunden gezeigt, die dazu dient aufzuzeigen, daß die Netzsteuereinheit 16 unter ihrem eigenen Takt arbeitet, wenn auch der Mikroprozessor FU10 ein "MODSYNCIN"-Synchronisationssignal vom Prozeß-Steuer/Regel-Computer 14 empfängt.
  • Die Netzsteuereinheit 16 ist mit ihrem Prozeß-Steuer/Regel-Computer 14 über einen 16 Bit-weiten "B"-Bus verbunden, der in 13B gezeigt ist. Die Netzsteuereinheit 16 empfängt ferner einen Satz von codierten Steuersignalen ("MOD-D0..MOD-D3", "MOD-CP" und "MOD-ST") vom Prozeß-Steuer/Regel-Computer 14, die die Kommunikation zwischen diesen beiden Computersystemen vereinfachen. Diesbezüglich sind diese codierten Steuersignale mit einer Dekodierschaltung (22VC) FU13 verbunden, die diese Steuersignale entziffert und diese Steuersignale zu den in den 13A–13B gezeigten Schaltungen richtet. Beispielsweise wird somit das "/MODSETDATA"-Signal zu einem Paar von Tristate-Flipflop-Schaltungen (74HT574) FU14–FU15 gesendet, um auf dem "B"-Bus dargebotene Daten zu fangen. In ähnlicher Weise wird das "/MODREADATA"-Signal zu einem Paar von Latch-Schaltungen FU16–FU17 gesendet, um diese Latch-Schaltungen zu befähigen, vom "P0"-Bus des Mikroprozessors FU10 gefangene Daten zum "B"-Bus des Prozeß-Steuer/Regel-Computers weiterzugeben. Die Flipflop-Schaltungen FU14–FU17 empfangen ferner Freigabe/Taktsignale von einer 3-zu-8-Dekodierschaltung (74HC138) FU14, die mit dem "AD"-Bus des Mikroprozessors FU10 verbunden ist.
  • 13B zeigt ferner, daß eine Flipflop-Schaltung FU18 eine weitere Eingabeschnittstelle zwischen dem "B"-Bus vom Prozeß-Steuer/Regel-Computer 14 und dem "P0"-Bus des Mikroprozessors FU10 der Netzsteuereinheit 16 bereitstellt. Diesbezüglich überträgt der Prozeß-Steuer/Regel-Computer ein SETCODE-Signal zur Netzsteuereinheit 16, das dazu verwendet wird, der Netzsteuereinheit 16 anzuzeigen, welche Datenelemente durch den Prozeß-Steuer/Regel-Computer 14 in die Flipflop-Schaltungen FU14–FU15 geladen wurden. Des weiteren sendet der Prozeß-Steuer/Regel-Computer 14 einen vorbestimmten Codewert (beispielsweise 10 hex) zur Flipflop-Schaltung FU18, der dazu verwendet wird, den Start eines neuen Prozeß-Steuer/Regel-Zyklus (beispielsweise eine neue Sekunde) anzuzeigen. Während der erwarteten Zeit, während der dieser Code übertragen werden sollte, fragt die Netzsteuereinheit 16 wiederholt die Flipflop-Schaltung FU18 in einer engen Schlaufe ab, um den Start eines neuen Prozeß-Steuer/Regel-Zyklus zu erfassen. Wenn der Code fürs Setzen eines neuen Prozeß-Steuer/Regel-Zyklus erfaßt ist, wird der Mikroprozessor FU 10 dann sein eigenes entsprechendes Taktsignal lesen und speichern. Der Mikroprozessor FU10 wird dann das angemessene Register, das die Taktdaten speichert, um ein Ausmaß ändern, das es ermöglichen wird, daß das Taktsignal der Netzsteuereinheit 16 auf dasjenige des Prozeß-Steuer/Regel-Computers 14 eingestellt ist. Schließlich zeigt 13B eine Decodierschaltung (74HC541) FU1, die über Signalleitungen "KEY0..KEY3" ("TASTE 0..TASTE 3") mit der Tastatur der Austestkonsole 18 für die Netzsteuereinheit 16 verbunden ist. Die Kommunikation mit der Austestkonsole 18 ist durch die RPDBUG-Signale vorgesehen, die in 13A gezeigt sind. Es sollte somit gewürdigt werden, daß die in 13B dargestellten Schaltungen einen Weg bieten, effektiv einen gemultiplexten Gebrauch des "P0"-Busses des Mikroprozessors FU10 zu machen für Zwecke der bidirektionalen Kommunikation mit dem Prozeß-Steuer/Regel-Computer 14 und der bidirektionalen Kommunikation mit der Austestkonsole 18.
  • 13C zeigt eine Empfängerschaltung 804 für die Netzsteuereinheit 16. Die Empfängerschaltung 804 umfaßt im allgemeinen eine Multiplexerschaltung FU8, eine Digital-zu-Analog-Wandlerschaltung FU12 und eine Komparatorschaltung FU7. Die Multiplexerschaltung FU8 ist mit einem "RXD"-Bus verbunden, welcher essentiell ein Satz von einzelnen Signalleitungen ist, die sich von einem Randverbinder an der Netzsteuereinheit-Schaltungsplatine erstrecken. Diese Signalleitungen enthalten die "MAIN RXD"- und die "REPEAT RXD"-Signalleitungen ("HAUPT_RXD"- und "WIEDERHOL_RXD"-Signalleitungen), die die Fähigkeit der Netzsteuereinheit veranschaulichen, in entgegengesetzte Richtungen zu kommunizieren. Diesbezüglich ist die MAIN_RXD-Leitung schließlich mit beiden der zwei in 1 gezeigten faseroptischen Kabel 34 verbunden, und zwar durch eine unten zu beschreibende Schnittstellenschaltung. In ähnlicher Weise ist die REPEAT RXD-Leitung schließlich mit beiden der zwei faseroptischen Kabel 36 verbunden. Auf diese Art und Weise werden beide Kabel in jedem Netzwerkring dazu verwendet, eine Kommunikationsverbindung zu bilden. Ferner empfängt der Multiplexer FU8 auch die mit "NEIGH1 RXD"- und "NEIGH2 RXD" bezeichneten Signalleitungen. Eine dieser "NEIGHbor"-("NACHBAR")-Leitungen könnte dazu verwendet werden, optische Hochgeschwindigkeitskommunikation zwischen den Prozeß-Steuer/Regel-Computern 14a–14b zu empfangen. Die andere dieser "NACHBAR"-Leitungen steht ebenfalls zur Verfügung, um eine derartige Kommunikation zu vereinfachen, wenn der Prozeß-Steuer/Regel-Computer 14 drei redundante Prozeß-Steuer/Regel-Computer umfaßt.
  • Alternativ könnten diese "NACHBAR"-Signalleitungen dazu verwendet werden, zusätzliche redundante Kommunikationsverbindungen zwischen den Prozeß-Steuer/Regel-Computern bereitzustellen.
  • Wie in dem Fall von vielen der Eingabesignale für die Steuereinheit 100, arbeiten die Digital-zu-Analog-Wandlerschaltung FU12 und die Komparatorschaltung FU7 in Kombination, um ein "RXDATA"-Signal zu erzeugen, das mit dem Mikroprozessor FU10 verbunden wird. Diese Anordnung ermöglicht, daß eine Mehrzahl von sowohl analogen als auch digitalen Signalen durch die gleiche Schaltungsanordnung verarbeitet wird, die schließlich eine einzelne Eingabeleitung zum Mikroprozessor FU10 erzeugt.
  • 13D zeigt eine Senderschaltung 806 für die Netzsteuereinheit 16. Genauer: die Senderschaltung 806 ist dahingehend gezeigt, daß sie eine Decodier/Demultiplex-Schaltung (74HC138) FU9 umfaßt. Die Decodierschaltung FU9 ist mit dem Adressenbus "P1" des Mikroprozessors FU10 verbunden, und die Decodierschaltung empfängt ferner das "TXDATA"-Signal vom Mikroprozessor, um Signale zum faseroptischen Netz zu übertragen. Die Decodierschaltung FU9 erzeugt Signale, die komplementär zu den in Verbindung mit 13C diskutierten "RXD"-Signalen sind. Genauer: das "MAIN_TXD"-Signal ist schließlich mit einem der faseroptischen Kabel 34 verbunden, und das "REPEAT_RXD"-Signal ist schließlich mit einem der faseroptischen Kabel 36 verbunden. In ähnlicher Weise könnte eines der "NEIGH1 TXD"/"NEIGH2 TXD"-Signale dazu verwendet werden, eine Übertragungsverbindung zwischen den Prozeß-Steuer/Regel-Computers 14a–14b vorzusehen.
  • Es wird auf die 14A-14E Bezug genommen, in denen ein schematisches Diagramm der seriellen Ausbruch-Kommunikationsschaltung 26 gezeigt ist. Diesbezüglich weist die Ausbruchschaltung 26 mehrere Schaltungsähnlichkeiten zur Netzsteuereinheit 16 auf. Genauer: die Mikrocomputerschaltung 808 der Ausbruchschaltung 26 (in 14A gezeigt) ist ähnlich zur Mikrocomputerschaltung 800 der Netzsteuereinheit 16. Die Mikrocomputerschaltung 808 enthält einen Mikroprozessor (80C31BH-1) GU10, einen 32K-Programmspeicher GU13, einen 32K-Datenspeicherchip GU11, einen PLD-Speichersteuereinheitschip GU14 und Latch-Chips GU3 und GU8. Des weiteren ist die Senderschaltung 810 der Ausbruchschaltung 26 (14B) ähnlich zu der Senderschaltung 806 der Netzsteuereinheit 16, und die Empfängerschaltung 812 der Ausbruchschaltung (14E) ist ähnlich zur Senderschaltung 804 der Netzsteuereinheit.
  • 14B zeigt eine Energieversorgungsschaltung 814, die dazu dient zu veranschaulichen, daß die Ausbruchschaltung 26 ihre elektrische Energie von dem Prozeßsteuercomputer 14 (als "MOD" bezeichnet) oder von einer externen Stelle empfangen kann. 14C zeigt die Verbinder "S1..S15" für jede der auf der Ausbruchschaltung 26 zur Verfügung stehenden Kommunikationssignalleitungen. Diese Verbinder sind ihrerseits mit den faseroptischen Empfänger/Sender-Schaltungen verbunden, wie etwa jene, die in den 15A–15B resp. gezeigt sind. Somit sind beispielsweise die MAIN RXD- und MAIN-TXD-Signale durch den Verbinder S1 gekoppelt, und sind die REPEAT RXED und REPEAT TXD-Signale durch den Verbinder S3 gekoppelt. Des weiteren ist, wie der Name "Ausbruch" impliziert, ein Satz von Verbindern S6–S15 vorgesehen, um durch die Ausbruchschaltung 26 empfangene Signale zu spezifischen Kommunikationskanälen zu richten, die einzelne Feldcomputereinheiten 12 zugeordnet sind.
  • Es sollte dementsprechend gewürdigt werden, daß die Ausbruchschaltung 26 die Fähigkeit hat, die Kommunikationssignale für bis hoch zu zehn einzelne Feldcomputereinheiten 12 zu multiplexen oder zu demultiplexen. Des weiteren sollte auch gewürdigt werden, daß die Ausbruchschaltung 26 dazu konfiguriert werden kann, eine "Zwischenverstärker"-Funktion bereitzustellen, wie dies etwa für die Ausbruchschaltung 26e in 2 gezeigt ist. Diesbezüglich können die auf der MAIN_RXD-Leitung empfangenen Signale durch den Mikrocomputer GU10 verarbeitet und auf der REPEAT TXD-Leitung wieder zur nächsten Ausbruchschaltung gesendet werden, wie etwa die Ausbruchschaltung 26f der 2. Auf diese Art und Weise kann die Ausbruchschaltung 26e als Signal-Weitersender verwendet werden.
  • 14E zeigt eine Konfigurationsschaltung 816, die zum Steuern der Signalrichtungsfunktion der Ausbruchschaltung 26 verwendet wird. Genauer: es ist ein Paar von Schaltern "GSW1-GSW2" vorgesehen, um das Multiplexen/Demultiplexen von Signalen zwischen Haupt/Wiederholanschlüssen 30–32 der Ausbruchschaltung 26 und den Kommunikationskanälen "CH1..CH10" zu vereinfachen. In einer Ausführungsform wird der Schalter GSW1 dazu verwendet, einen Startkanal zu bestimmen und wird der Schalter GSW2 dazu verwendet, einen Stoppkanal zu bestimmen. Die Kombination dieser beiden Bereichsschalter wird somit den Mikroprozessor GU10 befähigen zu wissen, welcher Satz von benachbarten Kanälen aktiv mit der Feldcomputereinheit 12 verbunden ist. Im Gegensatz dazu informiert das Setzen des Schalters GSW3 den Mikroprozessor GU10 darüber, ob die Ausbruchschaltung auf dem primären Niveau der Signalverteilung (d. h. die Ausbruchschaltungen 26b und 26d der 1) angeschlossen ist, oder ob die Ausbruchschaltung auf dem sekundären Niveau der Signalverteilung (beispielsweise die Ausbruchschaltungen 26a und 26c der 1) angeschlossen ist. Das Setzen des Schalters GSW3 informiert den Mikroprozessor GU10 ferner darüber, ob die Ausbruchschaltung als Zwischenverstärker verwendet wird. Des weiteren zeigt 14E ferner einen Verbinder "GS5", der dazu verwendet wird, die Austestkonsole 56 für die Ausbruchschaltung 26 über den "RPDBUG"-Bus mit dem Mikroprozessor GU10 zu koppeln.
  • Es wird auf die 15A–15B Bezug genommen, in denen ein schematisches Diagramm von zwei faseroptischen Schnittstellenschaltungen gezeigt ist. Genauer: 15A zeigt eine Empfängerschaltung 900, und 15B zeigt eine Senderschaltung 902. Die Empfängerschaltung 900 enthält eine optisch-zu-elektrisch-Wandlerschaltung "HU2", die eine Hochgeschwindigkeits-Komparatorschaltung (LT1016) "HU4" speist. Der Hochgeschwindigkeits-Komparator "HU4" erzeugt ein "RX OUT"-Signal, das eine elektrische variable Komponente aufweist, die der optisch variablen Komponente des optischen Eingangssignals entspricht. Wenn optische Kunststofffasern verwendet werden, um Kommunikationssignale zu leiten, ist es bevorzugt, daß ein HP-2522-Wandler für den Wandler HU2 verwendet wird. Wenn allerdings optische Glasfasern verwendet werden, so ist es bevorzugt, daß für den Wandler HU2 ein NP-2402-Wandler verwendet wird.
  • Die Senderschaltung 902 aus 15B enthält ein NAND-Gatter (75451) HU3, das eine elektrisch-zu-optische Signalwandlerschaltung HU1 speist. Wenn optische Kunststofffasern verwendet werden, um Kommunikationssignale zu leiten, ist es bevorzugt, daß für den Wandler HU1 ein HP-1522-Wandler verwendet wird. Wenn allerdings optische Glasfasern verwendet werden, so ist es bevorzugt, daß für den Wandler HU1 ein HP-1404-Wandler verwendet wird.
  • Es wird auf die 16A–16G Bezug genommen, in denen ein schematisches Diagramm der Energieversorgungsschaltung 50 gezeigt ist. Die Energieversorgungsschaltung 50 ist eine 500 Watt-Energieversorgung, die geeignet ist, bis zu fünf Feldcomputereinheits-Standorte mit Energie zu versorgen. Diesbezüglich ist es bevorzugt, daß eine Energieversorgungsschaltung dazu verwendet wird, nur entsprechende Steuereinheiten 92-96 in jeder Feldcomputereinheit 12 mit Energie zu versorgen. Mit anderen Worten kann eine der Energieversorgungsschaltungen 50 dazu verwendet werden, die elektrische Energie für die linke Steuereinheit 92 in den Feldcomputereinheiten 1–5 bereitzustellen. Die Energieversorgungsschaltung 50 kann ferner dazu verwendet werden, auch eine oder mehrere der Ausbruchschaltungen 26 mit Energie zu versorgen. Ferner kann die Energieversorgungsschaltung 50 auch dazu verwendet werden, die Batterien 52 zu laden, von denen sie in dem Fall einer Unterbrechung ihrer Wechselstrom-Eingangsleistung schließlich Energie ableiten kann. Die Batterien 52 sind bevorzugt ein Satz von zwei abgedichteten 12 Volt-Batterien, die in Reihe angeschlossen sind.
  • Die Energieversorgungsschaltung ist ferner bevorzugt in ihrem eigenen Gehäuse enthalten, wie in 1 gezeigt ist. Es kann auch ein Gehäuse vorgesehen sein, um eine Feldcomputereinheit 12, einen Satz von Energieversorgungsschaltungen 50 und einen Satz von Batterien 52 aufzunehmen. Das Gehäuse für die Energieversorgungsschaltung 50 ist bevorzugt mit einem Satz von LEDs ausgerüstet, die den Status von verschiedenen funktionellen Aspekten der Energieversorgungsschaltung 50 anzeigen. Beispielsweise kann eine LED dazu verwendet werden anzuzeigen, daß die Energieversorgungsschaltung 50 elektrische Wechselstromleistung empfängt, während eine andere LED dazu verwendet werden kann anzuzeigen, daß die Batterie 52 ausreichend Energie zur Verfügung hat. Wie unten diskutiert werden wird, weist die Energieversorgungsschaltung 50 die Fähigkeit zum Testen der Batterie 52 auf, indem ein Lasttest durchgeführt wird.
  • 16A zeigt eine Gebläsesteuerschaltung 904, die auf das "FANON"-Signal ("Gebläse An"-Signal) von der Steuereinheit 100 anspricht. Das FANON-Signal wird den Transistor der Optoisolatorschaltung IU8 dazu veranlassen zu leiten und hierdurch elektrische Energie zu einem Gebläse in dem Gehäuse für die Energieversorgungsschaltung 50 zu übertragen. Energie zum Gebläse kann auch von dem Signal geliefert werden, das durch ein Paar von temperaturerfassenden Bauelementen (AD592) erzeugt wird, die mit den Stiften 1–4 des Verbinders "S3" verbunden sind. Falls die im Energieversorgungsgehäuse erfaßte Temperatur ausreichend hoch ist, werden die temperaturerfassenden Bauelemente (nicht gezeigt) das Gebläse (ebenfalls nicht gezeigt) anschalten. Das POWER-TEMP-Signal (Energie-Temp-Signal) wird zur Steuereinheit 100 zurückübertragen, um die Steuereinheit 100 zu befähigen, die Temperatur der Energieversorgung zu überwachen und – falls notwendig – das Gebläse anzuschalten.
  • 16B zeigt eine Energiewandlerschaltung 906, die elektrische Leistung mit 120 Volt Wechselstrom oder 240 Volt Wechselstrom empfangen kann. 16B zeigt ferner eine Optoisolatorschaltung (H11G2) IU1, die dazu verwendet wird, die Wechselstromleistung zu erfassen, die für die Energieversorgungsschaltung 50 zur Verfügung steht. Obwohl es in diesem schematischen Diagramm nicht gezeigt ist, wird bevorzugt ein geeigneter Wechselstromwandler (beispielsweise eine Vicor VI-FKE6-CMX-Schaltung) verwendet, um modulierte Gleichstrom-Leistung auf den mit "+HV" und "– HV" bezeichneten Leitungen zu erzeugen. Es ist ein Satz von drei 200 Watt-Energieversorgungsschaltungen (VI-200) "PS3–PS5" parallel angeschlossen, um diese Eingabeleistung mit hoher Spannung in eine regulierte 28 Volt Gleichstromausgabe zu wandeln. Die Spannungsteilerschaltung "R3–R5" wird dazu verwendet, die Ausgabespannung auf präzise +28 Volt einzustellen. Dieser Spannungspegel ist dazu notwendig, die Batterien 52 zu laden. Die Batterien 52 werden durch eine Bank von Widerständen mit positivem Temperaturkoeffizienten (PTC) "VR2..VR7" geladen, die dazu verwendet werden, den Stromfluß zu den Batterien zu begrenzen. Während die Batterien 52 mehr Strom ziehen, erwärmen sich die PTCs und begrenzen den Stromfluß zu den Batterien.
  • Die Ladespannung wird auf Leiterleitung 908 zu einem Relais "K2" auf 16C übertragen, das dazu verwendet wird, die Batterien 52 mit der Ladeschaltung der 16B zu verbinden. Diesbezüglich ist der positive Anschluß eines oder mehrerer Sätze von Batterien 52 mit der Leiterleitung 910 auf der stromabwärtigen Seite des Relais K2 verbunden. Das Relais K2 wird durch das "LOAD_TEST-B"-Signal (Last_Test-B-Signal) gesteuert, das von der Steuereinheit 100 abgeleitet ist. Das LOAD_TEST-B-Signal wird dazu verwendet, daß die Verbindung der Batterien 52 mit der Ladeschaltung unterbrochen wird, um den Ladezustand der Batterien zu testen. Wie unten gesehen wird, wird dieser Test unter Lastbedingungen durchgeführt, die die Menge an gezogenem Strom widerspiegeln, die auftreten könnte, falls die Batterien aufgefordert sind, die primäre Energiequelle für eine oder mehrere Feldcomputereinheiten 12 bereitzustellen.
  • Um diesen "Last"-Test durchzuführen, werden die Batterien 52 abwechselnd zwischen einer einen geringen Strom ziehenden Last (beispielsweise 125 Ohm) und einer einen hohen Strom ziehenden Last (beispielsweise 0,75 Ohm) umgeschaltet. Die Niederstromlast ist durch (5 Watt-) Widerstände R28–R29 bereitgestellt, während die Hochstromlast über die Stifte 3–6 des Verbinders "S4" bereitgestellt ist. Die Hochstromlast kann eine beliebige Widerstandsvorrichtung sein, die geeignet ist, den maximal zulässigen Strom von den Batterien 52 zu ziehen, wie etwa ein Paar von parallel geschalteten Dale-HLZ-195-1,5 Ohm-Leistungswiderständen. Ein Schalter "K1" wird dazu verwendet, die Batterien während der Testprozedur in Antwort auf ein "LOAD TEST-A"-Signal abwechselnd mit der Hochstrom/Niederstrom-Last zu verbinden, welches "LOAD TEST-A"-Signal (Last Test-A-Signal) indirekt von der Steuereinheit 100 empfangen wird. Das LOAD_TEST-Signal setzt eine (555) Timer-Schaltung IU9 zurück, die dazu konfiguriert ist, für näherungsweise 180 Sekunden ein Hochpegelsignal zu erzeugen. Mit der für die Optoisolator-Schaltungen IU7 und IU10 gezeigten Polarität können das LOAD TEST-A- und LOAD TEST-B-Signal tatsächlich dasselbe Signal von der Steuereinheit 100 sein. Mit anderen Worten werden die Batterien 52 dann, wenn das LOAD TEST-B-Signal auf Hochpegel ist, geladen und die Timer-Schaltung IU9 wird in einem Rücksetzzustand gehalten. Wenn allerdings das LOAD_TEST-B-Signal auf Niederpegel gebracht wird, wird der Schalter K2 unter Strom gesetzt und verbindet den positiven Anschluß der Batterie 52 mit dem Schalter K1. Die Timer-Schaltung IU9 wird dann das Zählen anfangen und bewirken, daß die Batterien 52 für näherungsweise 60 Sekunden zur Hochstromlast geschaltet werden. Dann können die Batterien 52 zur Niederstromlast geschaltet werden.
  • Während des Lasttests wird die Batteriespannung "BATTERY V" ("BATTERIE V") über die Isolationsschaltung (AD202) IU3 durch die Steuereinheit 100 gemessen. Diesbezüglich ist die Entladespannung einer Batterie sowohl eine Funktion der Last als auch der gespeicherten Energiemenge. Dementsprechend wird die Steuereinheit 100 fähig sein, näherungsweise die gespeicherte Energiemenge aus dem BATTERY V-Signal und dem bekannten Widerstandswert der Hochstromlast zu bestimmen. Mit anderen Worten wird die Steuereinheit 100 einen Lasttest durchführen, bei dem die Energieversorgungsschaltung 50 der Steuereinheit einen Hochstromlastbatteriewert während einer Zeitspanne von näherungsweise 60 Sekunden liefert. Die Niederstromlast kann auch dazu verwendet werden, die Batterie 52 vollständig zu entladen, falls dies erforderlich ist. Die Isolationsschaltung IU3, wie auch die Isolationsschaltung 1U4, werden dazu verwendet, daß die Energieversorgungsschaltung 50 zwei gesonderte GND-Potentiale (Masse-Potentiale) aufweist. Auf das GND-Potential, das von GND der Batterie isoliert ist, wird hier als ISOGND Bezug genommen.
  • Die Energieversorgungsschaltung 50 erzeugt ferner mehrere andere Signale, die sich auf den Zustand der Schaltung oder den Zustand der Batterien 52 beziehen. 16C zeigt beispielsweise, daß die Energieversorgungsschaltung 50 eine Komparatorschaltung (LM339) IU6 enthält, die ein "BATT LOW"-Signal ("Batterie Niedrig"-Signal) erzeugt. Wie der Name impliziert, zeigt das BATT LOW-Signal an, ob die Batteriespannung zu niedrig (beispielsweie <10 Volt) ist. In ähnlicher Weise wird ein "BATTERY >26 V"-Signal ("BATTERIE >26 V"-Signal) über eine der Komparatorschaltungen IU6 dazu verwendet anzuzeigen, daß die Batteriespannung zu hoch ist (beispielsweise über 26,1 Volt). Das "CHARGER V"-Signal ("LADER V"-Signal) wird dazu verwendet, die Steuereinheit 100 mit einer Anzeige darüber zu versorgen, daß Spannung zum Laden der Batterien 52 angelegt ist. Unter der Annahme, daß diese Ladespannung größer als 25 Volt ist, wird eine der Komparatorschaltungen 1U6 ein Hochpegel "CHARGER OK"-Signal ("LADER OK"-Signal) erzeugen. Da der Kipppunkt dieses Komparators durch den Regler (AD587) IU5 und die Widerstände R20 und R23 auf 4,17 Volt gesetzt ist, wird das CHARGER V-Signal über die Widerstände R32–R31 heruntergeteilt.
  • Wenden wir uns 16D zu, in der eine Steuer-Schnittstellenschaltung 912 für eine Gruppe von fünf Energieversorgungsschaltungen 50 gezeigt ist. Die Steuer-Schnittstellenschaltung 912 enthält ein Paar von Decodierschaltungen (22VC) JU1–JU2 zum Interpretieren von Kommandosignalen von der Steuereinheit 100, wie etwa die reproduzierten "FANON"- und "ICONSERVE"-Signale. Wie aus der Diskussion unten gesehen wird, wird das ICONSERVE-Signal (IBEWAHRE-Signal) dazu verwendet, die 26 Volt-Energieversorgung zu den Feldcomputereinheiten auszuschalten. Das "BATOFF"-Signal (Batterie-Aus-Signal) wird dazu verwendet, die 5 Volt-Energieversorgung zu den Feldcomputereinheiten auszuschalten. Diesbezüglich sollte gewürdigt werden, daß die Steuereinheit 100 zuerst die Energieversorgungsschaltung 50 anweisen kann, die Batterieenergie zu bewahren, indem die 26 Volt-Energiequelle ausgeschaltet wird, und nachfolgend, nachdem eine geeignete Zeitdauer abgelaufen ist (wie durch die Steuereinheit 100 bestimmt) die 5 Volt-Energiequelle auszuschalten. Das "BAT TEST"-Signal ("BATTERIE TEST"-Signal) wird dazu verwendet, ein "LOAD_TEST_ON"-Signal ("LAST_TEST_AN"-Signal) zu erzeugen, das den LOAD_TEST-A/LOAD_TEST-B-Signalen entspricht.
  • Die 16E–16F zeigen einen Satz von Anschlußschaltungen 914–916, die in jeder der Feldcomputereinheiten 12 wiederholt sind, die durch die Energieversorgungsschaltung 50 mit Energie versorgt werden. Die Anschlußschaltung 914 zeigt einfach die verschiedenen Kommandosignale, die zu jeder der Feldcomputereinheiten 12 übertragen werden. In ähnlicher Weise zeigt die Anschlußschaltungen 916 die Übertragung von der 26 Volt- Energiequelle und einer "VCC"-Energiequelle zu jeder der Feldcomputereinheiten 12 über Sicherungen "CB1–CB2".
  • 16G zeigt eine Ausgabeleistungsschaltung 918 für die Energieversorgungsschaltung 50. Die Ausgabeleistungsschaltung 918 enthält eine mit "VSOURCE" ("VQUELLE") bezeichnete Stromleitung, die der +28 Volt-Energiequellenausgabe von den Wandlern PS3–PS5 der 16B entspricht. Die VOURCE-Leitung speist drei 150 Watt-Wandlerschaltungen (VI-200) "KPS2–KPS4" und eine 100 Watt-Wandlerschaltung (VI-200) "KPS1". Die Wandlerschaltungen KPS2–KPS4 erzeugen gemeinsam eine +26 Volt-Energiequelle über die Leitungen 920– 922, während die Wandlerschaltung KPS1 eine +5 Volt-Energiequelle über die Leitungen 922–924 erzeugt. Es sollte vermerkt werden, daß Brücken (Jumper) KJ3–KJ4 vorgesehen sind, um die Ausgabe der +5 Volt-Energiequelle mit der Erfassungsschaltung der Energiequelle zu verbinden.
  • Es wird ein Satz von Optokopplern (MOC8021) "KU1–KU4" verwendet, um die An/Aus-Funktion der Wandlerschaltungen KPS1–KPS4 in Antwort auf die "SHUTDOWN" ("AUSSCHALTEN") und "5V OFF" (5 Volt AUS)-Kommandosignale zu steuern. Genauer: ein hochpegeliges SHUTDOWN-Signal (das aus dem ICONSERVE-Signal abgeleitet wurde), wird verursachen, daß die Optoisolatorschaltung KU1 nicht-leitend wird und hierdurch den Transistor KQ1 anschalten. Dies wird bewirken, daß die Gate-Signaleingabe zu den Wandlern KPS2–KPS4 auf niedrigen Pegel gesteuert wird, und hierdurch diese Wandler ausschalten. Dies wird in Folge die +26 Volt-Energiequelle von der Feldcomputereinheit trennen. Eine ähnliche Steuerprozedur wird auch dazu verwendet, durch den Optoisolator KU4 und den Transistor KQ2 die +5 Volt-Energiequelle auszuschalten. Ferner sprechen die Optoisolatoren KU2–KU3 auf die +28 Volt-Leitung 926 an, um gleichzeitig die Wandler KPS1–KPS4 anzuschalten, wenn die Wandlerschaltungen PS3–PS5 der 16B Energie von der Wechselstromleitung empfangen.
  • Es wird allgemein auf die 17A–17I und die 18A–18T Bezug genommen, in denen ein Satz von Flußdiagrammen gezeigt ist, um die gemäß der vorliegenden Erfindung an der Feldcomputereinheit 12 durchgeführten Schlichtungsverfahren zu veranschaulichen. Die 17A–17E beziehen sich auf die Schlichtung von digitalen Eingaben, und die 17F–11I beziehen sich auf die Schlichtung von digitalen Ausgaben. In ähnlicher Weise beziehen sich die 18A–18N auf die Schlichtung von analogen Eingaben und die 18O–18T auf die Schlichtung von analogen Ausgaben.
  • Um die Software-Schlichtungsverfahren der Feldcomputereinheit 12 in Perspektive zu rücken, können die folgenden Beobachtungen gemacht werden. Diese Verfahren repräsentieren die Prozeduren dafür, wie Eingabe- und Ausgabewerte gewählt werden in Antwort sowohl auf Übereinstimmungen und Nichtübereinstimmungen zwischen den Werten, die jeder der in der Feldcomputereinheit 12 enthaltenen drei Steuereinheiten 92– 96 geliefert werden. Diesbezüglich ist es wichtig zu verstehen, daß diese Schlichtungsverfahren durch jede der Steuereinheiten 92–96 durchgeführt werden. Es sollte auch verstanden werden, daß jedes dieser Schlichtungsverfahren innerhalb jedes Prozeß-Steuer/Regel-Zyklus (beispielsweise 1 Sekunde) durchgeführt wird.
  • Im allgemeinen müssen die in diesen Schlichtungsverfahren verwendeten Wertdaten in einem anfänglichen Schritt zuerst gültigkeitsüberprüft werden. Wenn dann die Wertdaten (d. h. ein AO-, AI-, DI- oder DO-Wert) von wenigstens zwei Steuereinheiten übereinstimmen, wird dann der linkste Wert gewählt. Mit anderen Worten wird der an der linken Steuereinheit 92 bestimmte AI- oder DI-Werte zum Prozeß-Steuer/Regel-Computer 14 übertragen werden, wenn die linke Steuereinheit 92 und die rechte Steuereinheit 94 übereinstimmen. In gleicher Weise wird der an der mittleren Steuereinheit 94 bestimmte AO- oder DO-Wert zum Feld übertragen werden, wenn die mittlere Steuereinheit 94 und die rechte Steuereinheit 96 übereinstimmen. Da allerdings jede der Steuereinheiten 92– 96 diesen Schlichtungsprozeß durchführt, sollte gewürdigt werden, daß es möglich ist, daß die Steuereinheiten sowohl für Eingabe- als auch Ausgabewerte auf einer Kanal-für-Kanal-Basis geschlichtete Werte aus verschiedenen Übereinstimmungskombinationen übertragen können. Eine derartige Situation könnte beispielsweise als Ergebnis eines Kommunikationsfehlers zu oder von einer der Steuereinheiten 92–96 auftreten, so daß die Datenwerte für diese Steuereinheit nicht mit den anderen beiden Steuereinheiten gemeinsam benutzt werden können.
  • In dem Fall, daß drei gültige Datenwerte existieren, aber die drei Steuereinheiten 92–96 alle nicht übereinstimmen, wird in Übereinstimmung mit der vorliegenden Erfindung für diesen Wert ein Software-wählbarer Vorgabezustand verwendet. In dem Fall von Eingabewerten kann eine Wahl getroffen werden zwischen einem Wähl-Hoch- oder Wähl-Niedrig-Wert, der zum Prozeß-Steuer/Regel-Computer 14 zu senden ist. In dem Fall von Ausgabewerten kann eine Wahl zwischen einem Ausfall-Sicher- und einem Ausfall-Zuletzt-Wert getroffen werden, der zum Feld zu senden ist. Diese Software-wählbaren Vorgabezustände können schnell geändert werden, um in Antwort auf sich ändernde Bedingungen im Feld die effektivsten Prozeß-Steuer/Regel-Entscheidungen vorzusehen, die möglich sind. Bei einer Ausführungsform können diese Vorgabewert-Zustände/Bedingungen geändert werden und werden für jeden durch die Feldcomputereinheit verarbeiteten Eingabe- und Ausgabekanal mit jeder Prozeßzyklus-Signalkommunikation zu den Feldcomputereinheiten 12 übertragen.
  • Wenn auch diese Vorgabewertzustände in jeder der Steuereinheiten 92–96 gespeichert werden, so daß eine Kommunikationsunterbrechung nicht verhindern wird, daß die aktuellsten Vorgabewertzustände angewendet werden, ist trotzdem eine Prozedur vorgesehen zum Gewährleisten, daß die angemessensten Vorgabewertzustände angewendet werden. Beispielsweise kann, wenn ein Prozeß anfänglich gestartet wird, der angemessenste Ausgabe-Vorgabewertzustand ein Versagen-Zuletzt-Wert sein (beispielsweise eine Null-Ausgabel. Hingegen kann, nachdem der Prozeß für eine gewisse Zeitperiode ordnungsgemäß gelaufen ist, der angemessenste Ausgabe-Vorgabewertzustand der Versagen-Zuletzt-Zustand sein. Diesbezüglich wendet der Versagen-Zuletzt-Zustand den letzten geschlichteten Datenwert für den in Frage stehenden Kanal in dem Fall eines Kommunikationsverlusts von dem Prozeß-Steuer/Regel-Computer 14 an. Wenn der Versagen-Zuletzt-Zustand in Antwort auf eine vollständige Nichtübereinstimmung zwischen gültigen Daten für eine analoge Ausgabe aufgerufen ist, wird der Wert gewählt, der numerisch am nächsten zum letzten geschlichteten Datenwert ist. In dem Fall, daß für einen Eingabe- oder einen Ausgabewert keine gültigen Daten zur Verfügung stehen, sollte der letzte geschlichtete Datenwert verwendet werden.
  • Bezugnehmend auf die 17A–17E werden nun die Flußdiagramme für die Schlichtung von digitalen Eingabedaten beschrieben. Bevor zur Diskussion dieser Flußdiagramme vorangeschritten wird, sollte vermerkt werden, daß jede der drei Steuereinheiten 92–96 unabhängig diesen Schlichtungsprozeß durchführt. Die mittlere Steuereinheit 94 wird allerdings ihre Schlichtungsergebnisse nicht zum Prozeß-Steuer/Regel-Computer 14 senden, sofern nicht eine zusätzliche faseroptische Kommunikationsverbindung für diese Steuereinheit vorgesehen ist. Eine derartige faseroptische Kommunikationsverbindung sollte beispielsweise in dem Fall verwendet werden, daß drei Prozeß-Steuer/Regel-Computer 14 vorgesehen sind.
  • 17A zeigt ein Gesamtflußdiagramm 1000 für die Schlichtung von digitalen Eingabedaten. Block 1002 zeigt an, daß die Datenwerte für die ersten zehn digitalen Eingabekanäle in den Speicher geladen werden. Diese Datenwerte werden vom Multiplexer U9 der in 61 gezeigten Steuereinheit 100 erhalten. Dann werden verschiedene Konstanten, Zeiger und Zähler initialisiert, um den Schlichtungsprozeß vorzubereiten (Block 1004). Unter der Annahme, daß die digitalen Eingabeschaltungen auf der Steuereinheit-Schaltungsplatine enthalten sind oder daß der Mikroprozessor U40 erfaßt, daß eine chassismontierte digitale Eingabeschaltung eingesteckt ist, wird dann ein "Good Bit" (Gut-Bit) gesetzt, um anzuzeigen, daß gültige Daten zur Verfügung stehen (Block 1006).
  • Die Rauten 1008, 1010 testen dann, ob gültige Nachbar-zu-Nachbar-Kommunikationsmitteilungen an der Steuereinheit empfangen wurden (beispielsweise unter Verwendung einer Prüfsummenberechnung). Mit anderen Worten wird die Steuereinheit 92 eine Unterprüfung durchführen, um zu sehen, ob gültige, datenweitergebende Mitteilungen von den Steuereinheiten 94–96 empfangen wurden, während die Steuereinheit 94 eine Überprüfung durchführen wird, ob gültige, datenweitergebende Mitteilungen von den Steuereinheiten 92 und 96 empfangen wurde. Als nächstes wird die Steuereinheit die gültigen digitalen Eingabewerte für den ersten Kanal "erlangen" (Block 1011). Dann werden die gültigen digitalen Eingabewerte für diesen Kanal für Zwecke der Schlichtungssoftware von "N1"- (beispielsweise Steuereinheit 941, "N2"- (beispielsweise Steuereinheit 96) und "ME"- "ICH" (beispielsweise Steuereinheit 92)-Werten zu "linken", "mittleren" und "rechten" Werten umgewandelt.
  • An diesem Punkt zeigt das Flußdiagramm 1000 eine Reihe von drei Kästen 1014–1018 in unterbrochenen Linien, die jeweils ein gesondertes Flußdiagramm repräsentieren. Genauer: der "Sende-Low (Tiefzustand)-Bestimmung"-Block 1014 ist in 17B gezeigt, der "Bestimme, welche Eingabe zu senden ist"-Block 1016 ist in den 17C–17D gezeigt, und der "Setze/Lösche DIC-Bit"-Block 1018 ist in 17E gezeigt. Nachdem die in diesen Flußdiagrammen gezeigten Prozeßschritte beendet sind, werden die geschlichteten digitalen Eingabewerte für den ersten Kanal in einem Mitteilungspuffer für die Übertragung zum Prozeß-Steuer/Regel-Computer 14 gespeichert (Block 1020). Das Programm geht dann wiederholt die Schleife zurück, um den "nächsten digitalen Eingabekanal zu bekommen und zu schlichten, bis alle digitalen Eingabewerte geschlichtet wurden (Block 1022). Wiederum sollte vermerkt werden, daß dieser Prozeß durch jede der Steuereinheiten 92–96 durchgeführt wird, vor allem dann, wenn drei Prozeß-Steuer/Regel-Computer 14 vorgesehen sind. In der in 1 veranschaulichten Ausführungsform übertragen allerdings nur die linke und die rechte Steuereinheit 92 und 96 ihr Schlichtungsergebnis zu ihrem jeweiligen Prozeß-Steuer/Regel-Computer 14a bzw. 14b.
  • Das Flußdiagramm 1014 der 17B ist darauf gerichtet zu bestimmen, ob ein Low (Tiefzustand)-Vorgabewert zum Prozeß-Steuer/Regel-Computer 14 gesendet werden sollte. Diesbezüglich führt das Flußdiagramm 1014 eine Überprüfung durch um zu sehen, ob ein gültiges "Send Low"-Bit (Sende-Tiefzustand-Bit) für wenigstens eine der linken, mittleren und rechten Steuereinheit 92–96 zur Verfügung steht (beispielsweise Rauten 1024–10281. Dann führt das Programm eine Überprüfung durch um zu sehen, ob eine Übereinstimmung zwischen den gültigen "Send Low"-Bits von zwei Steuereinheiten gegeben ist (beispielsweise Rauten 1030–1032). Falls eine Übereinstimmung gegeben ist, wird das linkste "Send Low"-Bit verwendet (beispielsweise Block 1034). Falls allerdings dann, wenn nur zwei gültige "Send Low"-Bits vorliegen, eine Nichtübereinstimmung zwischen den gültigen "Send Low"-Bits besteht, wird dann der Zustand des letzten gültigen "Send Low"-Bit verwendet (beispielsweise Blöcke 1036– 1038).
  • Das Flußdiagramm 1016 der 17C–17D repräsentiert die Hauptschlichtungsroutine für jeden der digitalen Eingabekanäle. Wenn der Prozeß auch damit beginnt, die Gültigkeit der linken digitalen Eingabe zu überprüfen (Block 1040), so sollte gewürdigt werden, daß die augenscheinliche Neigung hin zu den Werten der linken Steuereinheit 92 nicht notwendig ist, obwohl diese Wahl die Gleichmäßigkeit des Gesamtsystems und der Software fördert. Unter der Annahme, daß der linke digitale Eingabewert gültig ist, wird der mittlere digitale Eingabewert auf Gültigkeit überprüft (Block 1042). Dann, unter der Annahme, daß beide Werte gut sind und übereinstimmen (Block 1044), wird der linke digitale Eingabewert für die Übertragung zum Prozeß-Steuer/Regel-Computer 14 gewählt (Block 10461. Mit anderen Worten, wenn sowohl die linke als auch die mittlere Steuereinheit 92–94 einen High (Hochzustand)-Digitalwert liefern, wird derjenige im Speicher gespeicherte Digitalwert, der den linken Wert repräsentiert, zu der Wertdatentabelle gesendet, die schließlich zum Prozeß-Steuer/Regel-Computer 14 übertragen werden wird. Trotzdem endet der Prozeß nicht an diesem Punkt, da eine Links-Rechts-Übereinstimmungsbestimmung durchgeführt wird (Block 1048), falls ein gültiger digitaler Eingabewert von der rechten Steuereinheit 96 zur Verfügung steht. In dem Fall, daß eine Nichtübereinstimmung besteht (beispielsweise links = High (Hochzustand), rechts = Low (Tiefzustand)), wird dann das Links-Rechts-Vergleich-Bit "DICLR" "gesetzt" werden, d. h. das DICLR-Bit wird mit einem High/Eins-Wert versehen (Block 1050). Diese speziellen Vergleichsbits können gezählt und/oder mit jedem Prozeß-Steuer/Regel-Zyklus zum Prozeß-Steuer/Regel-Computer 14 gesendet werden, so daß eine Angabe über fortwährende Nichtübereinstimmungen zur Verfügung steht. Diesbezüglich können die akkumulierten Vergleichsbits dazu verwendet werden zu entscheiden, daß ein Wartungsruf zum Feld ergehen sollte, oder daß eine bestimmte digitale Eingabeschaltungsplatine oder eine bestimmte Steuereinheit 100 unter angemessenen Umständen ausgeschaltet werden sollte.
  • Der verbleibende Teil des Flußdiagramms 116 folgt im allgemeinen der oben diskutierten Analyse. Es sollte allerdings vermerkt werden, daß Block 1052 anzeigt, daß ein Schlichtung-Gescheitert-Bit gesetzt wird, wenn eine Links-Mitte-Nichtübereinstimmung vorliegt und der rechte digitale Eingabewert nicht gültig ist. An diesem Punkt zeigt die Raute 1054, daß das Programm eine Überprüfung durchführt, um zu sehen, ob der Prozeß-Steuer/Regel-Computer 14 die Aufforderung erlassen hat, daß ein Low-Wert als der Vorgabewert gesendet wird. Falls die Antwort Nein ist, dann wird der linke Wert gewählt, falls er High (Hochzustand) ist (Block 1056), und der mittlere Wert wird gewählt, wenn der linke Wert Low (Tiefzustand) ist (Block 10581. Dies ist deshalb so, weil der mittlere Wert High sein muß, da eine Nichtübereinstimmung mit dem linken "Low"-Wert vorlag. Falls der Sende-Low-Vorgabewert gefordert wurde, wird dann der linke Wert überprüft um zu sehen, ob er High ist (Block 10601. Wie die Blöcke 1058 und 1062 implizieren, wird schließlich der Low-Wert zum Prozeß-Steuer/Regel-Computer 14 gesendet.
  • Das Flußdiagramm 1018 der 17E ist darauf gerichtet, den Zustand eines allgemeinen Digitaleingabe-Vergleichsbit "DIC" zu bestimmen. Wenn eine Nichtübereinstimmung zwischen zwei beliebigen gültigen digitalen Eingabewerten aus dem Zustand von speziellen Vergleichsbits erfaßt wurde, wird dann das DIC-Bit gesetzt (Block 1064). Andernfalls wird das DIC-Bit gelöscht (Block 1066).
  • Mit Bezugnahme auf die 17F bis 17I wird nun das Schlichtungsverfahren. für die digitalen Ausgabewerte beschrieben. Diesbezüglich wird gesehen werden, daß die Flußdiagramme der 17F bis 17I im allgemeinen der oben diskutierten Analyse für die Schlichtung von digitalen Eingabewerten folgen. Somit entspricht beispielsweise das Flußdiagramm 1068 der 17F dem Flußdiagramm 1000 der 17A, und das Flußdiagramm 1070 der 17G entspricht dem Flußdiagramm 1014 der 17B. Allerdings wird im Falle des Flußdiagramms 1070 eine Bestimmung durchgeführt, ob vom Prozeß-Steuer/Regel-Computer 14 eine "Versagen-Zuletzt"-Forderung zur Feldcomputereinheit 12 gesendet wurde.
  • Das Flußdiagramm 1072 der 17H stellt die Hauptschlichtungsroutine für jeden der digitalen Ausgabekanäle bereit. Da die Wahl der digitalen Ausgaben im allgemeinen der in Verbindung mit der Wahl von digitalen Eingaben beschriebenen Analyse folgt, brauchen nur einige wenige Kommentare gemacht werden. Genauer: Block 1074 zeigt an, daß ein spezielles "Nomatch" (keine Übereinstimmung)-Bit (d. h. das Vergleichsbit) und ein "Negotiation Failure" (Verhandlung gescheitert)-Bit (d. h. das "DOAF"-Bit) beide gesetzt werden, wenn die einzigen zwei gültigen digitalen Ausgabewerte nicht gleich sind. Ferner zeigt Block 1076 an, daß das "DOAF"-Bit in dem Fall gesetzt wird, daß keiner vom linken, mittleren und rechten digitalen Ausgabewert gültig ist.
  • Block 1076 zeigt ferner an, daß das Prozeß-Steuer/Regel-System einen auf ein Kommunikationsversagen ansprechenden Mechanismus bereitstellt. Genauer: ein programmierbarer "Zeitüberwachungszähler" wird von einem Anfangswert erniedrigt, der andernfalls verhindern würde, daß eine Änderung im Ausgabezustand durchgeführt wird, bis die Kommunikation wiederhergestellt wurde. Diesbezüglich kann ein gewünschter Zeitüberwachungs/Zeitablaufwert vom Prozeß-Steuer/Regel-Computer 14 übertragen werden, der dann durch die Steuereinheit 92–96 für die Verwendung als ein Versagen-Sicher-Zeitüberwachungszähler für alle digitalen und analogen Ausgaben geschlichtet werden würde. Beispielsweise kann dieser Zeitüberwachungswert die Anzahl von Sekunden repräsentieren, bevor von einem Versagen-Zuletzt-Status zu einem Versagen-Sicher-Status übergegangen wird. Die Raute 1078 wird dazu verwendet zu testen, ob eine Zeitüberschreitung aufgetreten ist (beispielsweise ein Zählerwert von null). Falls der Zeitablauf noch nicht aufgetreten ist, testet die Raute 1080 dann, ob ein Versagen-Zuletzt-Vorgabewert gefordert wurde. Falls der Versagen-Zuletzt-Vorgabewert gefordert wurde, zeigt Block 1082 dann an, daß der letzte geschlichtete digitale Ausgabewert zum Feld gesendet wird (beispielsweise die digitale Ausgabeschaltung 500). Falls der Versagen-Zuletzt-Vorgabewert nicht gefordert wurde, wird dann ein Versagen-Sicher-Wert (beispielsweise ein Low-, Null- oder stromloser Zustand) zum Feld gesendet (Block 1084). Falls ein Zeitüberschreitungszustand aufgetreten ist, zeigen dann die Raute 1078 und der Block 1084 an, daß ein Versagen- Sicher-Wert zum Feld gesendet wird.
  • Das Flußdiagramm 1086 der 17I entspricht im allgemeinen dem Flußdiagramm 1018 der 17E. Block 1088 zeigt allerdings an, daß ein allgemeines Digitalausgabe-Vergleichsbit "DOC" gesetzt wird, wenn zwischen zwei beliebigen Steuereinheitswerten für den bestimmten bearbeiteten digitalen Ausgabekanal eine Nichtübereinstimmung gefunden wurde. Schließlich zeigt Block 1090 der 17F an, daß der gewählte digitale Ausgabewert in einer Speichertabellenstelle für nachfolgende Übertragung zum angemessenen digitalen Ausgabeschaltungskanal gespeichert wird.
  • Bezugnehmend auf die 18A bis 18N werden nun die Flußdiagramme für die Schlichtung von analogen Eingabedaten beschrieben. Diesbezüglich zeigen die 18A–18B in Kombination ein Gesamtflußdiagramm 1100 für die Schlichtung von analogen Eingabedaten. Als eine Ausgangsprozedur zeigt Block 1102, daß das Programm die Familientypcodes jeder der drei analogen Ausgabeschaltungen 600–604 überprüft. Die durch den Block 1102 repräsentierten detaillierten Prozeßschritte sind in den Figuren 18C– 18D gezeigt: Genauer: die Programmroutine startet, indem sie eine Prüfung durchführt zum Sehen, ob von jeder der zwei Sätze von analogen Eingabeschaltungen gültige Familientypcodes empfangen wurden (beispielsweise Rauten 1104–1108). Dann bestimmt das Programm, ob die Familientypcodes für die Steuereinheit, die die Schlichtung durchführt, und die Familientypcodes der anderen beiden Steuereinheiten übereinstimmen oder nicht (beispielsweise Rauten 1110–1112). Falls eine Übereinstimmung gefunden wird, wird dann ein spezielles "OK"-Bit in jedem Fall gesetzt (beispielsweise Blöcke 1114–1116). Wenn allerdings eine bestimmte Übereinstimmung nicht gefunden wurde, beispielsweise für den "ME"- (ICH) und den "Neighbor 1"- (Nachbar 1)-Code, kann dann ein "Nomatch"- (keine Übereinstimmung)-Bit gesetzt werden (Block 1118 in 18D).
  • Nachdem die Steuereinheit, die das Schlichtungsverfahren durchführt, weiß, wie die analogen Eingabedaten zu prozessieren sind, springt der Programmfluß zurück zu Block 1122 der 18A, um die Datenwerte von den drei analogen Eingabeschaltungen für den ersten Kanal zu erhalten. Die Raute 1124 zeigt, daß das Programm dann mehrere Tests in Bezug auf die analoge Nachbar 1-Eingabeschaltung durchführt. Genauer: die die Schlichtung durchführende Steuereinheit führt eine Überprüfung durch, um zu sehen, ob die Nachbar 1-Schaltungsplatine eingesetzt ist und ob eine vollständige Kommunikationsmitteilung von der Steuereinheit für die analoge Nachbar 1-Eingabeschaltung empfangen wurde. Diesbezüglich sollte vermerkt werden, daß dies erreicht werden kann, indem nachgeschaut wird, um zu sehen, ob das "OK"-Bit für die Familientypcodes der ME- und N1-Platine gesetzt wurde.
  • Als nächstes wird der Unterschied zwischen dem durch die die Schlichtung durchführende Steuereinheit empfangenen Analogwert und dem von der analogen Nachbar 1-Eingabeschaltung (durch eine Nachbar-zu-Nachbar-Kommunikationsmitteilung) empfangenen Analogwert bestimmt (Block 1126). Dieser Unterschied zwischen den Analogwerten wird dann mit einem Enge-Toleranz-Schwellenwert verglichen (Block 1130). Der Enge-Toleranz-Wert hängt von dem speziellen Typ von verwendeter Analogeingabe-Erfassungshardware ab. Beispielsweise kann für einen Sensor, der einen 4– 20 mA Stromschleifeneingabewert liefert, der Enge-Toleranz-Wert auf 0,6 % gesetzt werden. Mit anderen Worten: wenn der "ME"-Wert 10,0 mA betrug und der Nachbar 1-Wert zwischen 9,88 und 10,12 mA lag, würden diese Werte dahingehend bestimmt werden, daß sie innerhalb der engen Toleranz übereinstimmen. Beträchtlich engere Enge-Toleranz-Werte können für andere analoge Eingabewerte verwendet werden, die ziemlich stabil sind, wie etwa jene, die von Thermoelementen abgeleitet sind.
  • Der Block 1132 zeigt, daß das Nachbar 1-Enge-Toleranz-Bit in dem Fall gesetzt wird, daß eine Enge-Toleranz-Übereinstimmung vorliegt. Wenn allerdings der Nachbar 1-Wert außerhalb des Enge-Toleranz-Bereiches lag, wird dann ein Test durchgeführt, um zu bestimmen, ob dieser Wert wenigstens innerhalb eines Weite-Toleranz-Werts liegt (Block 1134). Der Weite-Toleranz-Wert ist ein geeigneter Wert, der weniger streng ist, wie etwa ein Wert, der das Doppelte des Enge-Toleranz-Werts beträgt. Wie unten gesehen wird, wird der Enge-Toleranz-Wert-Test dazu verwendet, anfänglich einen Eingabekanal für die Schlichtung zu qualifizieren, worauf hierin als "Inbetriebsein" Bezug genommen wird. Im Gegensatz dazu wird der Weite-Toleranz-Test dazu verwendet, einem zuvor qualifizierten Eingabekanal zu erlauben, im Betrieb zu bleiben. Unter der Annahme, daß der "ME"-Wert und der Nachbar 1-Wert ausreichend in Übereinstimmung sind, wird dann das Weite-Toleranz-Bit gesetzt (Block 1136). Ungeachtet des Ergebnisses dieser Entscheidung wird das Programm dann fortschreiten, den Nachbar 2-Wert auf die gleiche Art und Weise zu testen, wie der Nachbar 1-Wert getestet wurde (beispielsweise Rauten 1138–1142), wobei angenommen wurde, daß die analoge Nachbar 2-Eingabe-Schaltungsplatine eingesetzt war. Unter der Annahme, daß beide Schaltungsplatinen, die analoge Nachbar 1-Eingabeschaltungsplatine und die analoge Nachbar 2-Eingabeschaltungsplatine, eingesetzt waren und die notwendigen Nachbar- zu-Nachbar-Kommunikationsmitteilungen empfangen wurden, werden dann die analogen Eingabewerte von diesen beiden Schaltungen dem Enge-Toleranz-Wert-Test und dem Weite-Toleranz-Wert-Test unterworfen (beispielsweise Rauten 1144–1148). Es werden dann die ME-, Nachbar 1- und Nachbar 2-Werte für die Zwecke der Software-Schlichtung zu linken, mittleren und rechten Werten umgewandelt (Block 1150).
  • Als nächstes ist ein Satz von "In Betrieb"-Testroutinen für jeden des linken, mittleren und rechten analogen Eingabewert vorgesehen, wie durch die Blöcke 1152–1156 gezeigt ist. Jede dieser Routinen wird dazu verwendet zu bestimmen, ob diese Werte in Betrieb bleiben sollten. Die Bedeutung der "In Betrieb"-Bestimmung ist jene, daß ein Wert zuerst als "In Betrieb" beurteilt werden muß, bevor er in der Hauptschlichtungsroutine verwendet werden kann. 18E stellt ein Flußdiagramm für den Block 1152, 18F ein Flußdiagramm für den Block 1154 und 18G ein Flußdiagramm für den Block 1156 bereit. Aufgrund der Ähnlichkeit zwischen diesen drei Flußdiagrammen wird nur das Flußdiagramm 1152 für den linken analogen Eingabewert diskutiert.
  • Wie aus dem Flußdiagramm 1152 der 18E gesehen werden wird, beginnt das Programm mit einer Annahme, daß das "In Betrieb"-Bit für den linken Eingabewert schon gesetzt ist. Wenn allerdings der Familientypcode für den linken Eingabewert falsch ist (Raute 1158), wird dann das In-Betrieb-Bit gelöscht (Block 1160). Unter der Annahme, daß der Familientypcode korrekt ist, wird das Programm dann eine Überprüfung durchführen, um zu sehen, ob das In-Betrieb-Bit für den linken Eingabewert momentan gesetzt ist (Raute 1162). Unter der Annahme, daß das In-Betrieb-Bit gesetzt ist, wird dann das In-Betrieb-Bit für den mittleren Eingabewert überprüft (Raute 1164). Unter der Annahme, daß das In-Betrieb-Bit für den mittleren Eingabewert gesetzt ist, wird dann das Programm eine Überprüfung durchführen, um zu sehen, ob das L-M-Weite-Toleranz-Bit gesetzt wurde (Raute 1166). Falls der Weite-Toleranz-Test zufriedenstellend war, wird dann das linke In-Betrieb-Bit gesetzt bleiben. Andernfalls wird der rechte Eingabewert auf die gleiche Art und Weise getestet, wie durch die Rauten 1168–1170 angezeigt ist. Falls das L-R-Weite-Toleranz-Bit nicht gesetzt wurde, wird dann das M-R-Weite-Toleranz-Bit untersucht (Raute 1172). Falls die Reihe von Tests, die durch die Rauten 1166–1172 repräsentiert sind, alle fehlgehen, wird dann das linke In-Betrieb-Bit gelöscht (Block 1160).
  • Nachdem die "In-Betrieb"-Bestimmung für jeden des linken, mittleren und rechten Werts getestet wurde, schreitet dann das Flußdiagramm 1100 der 18B zum Block 1014 fort. Diesbezüglich sollte vermerkt werden, daß der Block 1014 auf das gleiche Flußdiagramm verweist, wie das in 17B für die digitale Eingaben gezeigte. Dementsprechend sollte gewürdigt werden, daß der Prozeß der Bestimmung, ob der Prozeß-Steuer/Regel-Computer 14 einen Low-Eingabewert (Tiefpegeleingabewert) in dem Fall eines Vorgabezustand gefordert hat, für digitale Eingaben und analogen Eingaben beides das gleiche ist.
  • Der Schlichtungsprozeß für die analoge Eingabe schreitet dann zur Hauptselektionsroutine fort, die durch Block 1174 in 18B angedeutet ist. Das durch den Block 1174 repräsentierte Flußdiagramm ist zusammen in den 18H bis 18J gezeigt. Das Programm wird zuerst eine Überprüfung durchführen, um zu sehen, ob irgendein Wert vom linken, mittleren oder rechten Wert in Betrieb ist (beispielsweise Rauten 1176–1180 in 18N und Rauten 1182–1184 in 18I). Falls für den bearbeiteten analogen Eingabekanal keiner dieser Werte in Betrieb ist, wird dann die die Schlichtung durchführende Steuereinheit ihren eigenen Wert wählen (Block 1186) und das Schlichtung-Gescheitert-Bit wird gesetzt (Block 1188). Wenn allerdings für den linken und den mittleren Wert beide gefunden wurde (aus ihren jeweiligen In-Betrieb-Bit-Einstellungen), daß diese in Betrieb sind, dann würden diese beiden Werte dem Weite-Toleranz-Wert-Test unterzogen (Raute 1190). Unter der Annahme, daß der linke und der mittlere Wert in ausreichender Übereinstimmung waren, würde dann der linke Wert gewählt werden (Block 1192).
  • Es ist wichtig, daß der Block 1192 ferner anzeigt, daß ein als "Differenz" bezeichneter Wert zum gewählten linken Wert zuaddiert oder davon abgezogen wird. Die Summation des gewählten Werts mit dem Differenzwert wird dazu verwendet, im Falle eines Versagens einen Prozeß-Bums zu vermeiden, wie unten erklärt wird. Falls während des letzten Prozeßzyklus der linke analoge Eingabewert gewählt wurde, wird der Differenzwert dann null sein, und der linke Wert vom momentanen Prozeßzyklus wird ohne Modifikation zum Prozeß-Steuer/Regel-Computer 14 gesendet werden. Wenn allerdings gefunden wurde, daß der linke Wert während des momentanen Prozeßzyklus außer Betrieb ist und der mittlere Wert für die Übertragung zum Prozeß/Steuer-Regel-Computer 14 gewählt wurde (beispielsweise Block 1194 in 18I), liefert der Differenzwert einen "Versatz", der zum mittleren Wert hinzuaddiert oder davon abgezogen werden kann, bevor der resultierende Wert zum Prozeß-Steuer/Regel-Computer 14 übertragen wird.
  • Unter der Annahme, daß beispielsweise der linke, im Betrieb befindliche Wert für den letzten Prozeß-Steuer/Regel-Zyklus 10,00 mA betrug und der mittlere in Betrieb befindliche Wert 10,05 im gleichen Prozeßzyklus betrug, würde dann ein noch gültiger Wert von 10,00 mA zum Prozeß-Steuer/Regel-Computer 14 übertragen werden. Wenn allerdings der linke Wert im nächsten Prozeß-Steuer/Regel-Zyklus nicht zur Verfügung stand und für diesen Zyklus der mittlere, in Betrieb befindliche Wert gewählt wurde, würde dann der Differenzwert von 0,05 vom letzten Prozeß-Steuer/Regel-Zyklus durch die die Schlichtung durchführende Steuereinheit vom momentanen, in Betrieb befindlichen mittleren Wert abgezogen werden. Mit anderen Worten: wenn der momentane, in Betrieb befindliche mittlere Wert 10,12 betrug, würde dann 0,05 von diesem Wert abgezogen werden und für diesen Kanal würde der analoge Eingabewert als 10,07 mA zum Prozeß-Steuer/Regel-Computer 14 übertragen werden. Da alle Steuereinheiten 92– 96 den in den 18H–18J gezeigten Schlichtungsprozeß durchführen, sollte verstanden werden, daß diese Steuereinheiten die speziellen Differenzwerte wissen werden, die zum momentanen, im Betrieb befindlichen, gewählten mittleren Wert vor der Übertragung dieses analogen Eingabewerts zum Prozeß-Steuer/Regel-Computer 14 zuaddiert oder abgezogen werden sollten. Es sollte gewürdigt werden, daß der Differenzwert alternativ zum Prozeß-Steuer/Regel-Computer 14 übertragen werden könnte, um zu ermöglichen, daß der Prozeß-Steuer/Regel-Computer die analogen Eingabewerte interpretiert.
  • Obwohl der linke Wert gewählt wurde, endet der Schlichtungsprozeß nicht an diesem Punkt. Wie durch die Raute 1196 veranschaulicht, schreitet das Programm zur Bestimmung fort, ob der rechte Wert momentan in Betrieb ist. Unter der Annahme, daß der rechte Wert in Betrieb ist, wird dann eine Überprüfung gemäß dem Weite-Toleranz-Test sowohl für die Links-Rechts- und die Rechts-Mitte-Wertkombinationen durchgeführt (Rauten 1198, 1200). Falls einer dieser Teste scheitert, könnte dann das angemessene Vergleichsbit gesetzt werden, wie etwa das spezielle R-M-Vergleichsbit (Block 12021. Auf diese Art und Weise könnte der Prozeß-Steuer/Regel-Computer 14 schließlich über Nichtübereinstimmungen zwischen in Betrieb befindlichen analogen Eingabewerten in Kenntnis gesetzt werden. Die Anzahl dieser Nichtübereinstimmungen kann gezählt werden, um zu ermöglichen, daß im Fall einer fortwährenden Nichtübereinstimmung eine geeignete Reaktion erfolgt, wie etwa ein Alarmieren einer Bedienperson, oder in angemessenen Umständen sogar ein Ausschalten einer betroffenen Steuereinheit 100.
  • In dem Fall, daß einer der drei analogen Eingabewerte nicht in Betrieb ist, wie etwa der mittlere Wert, wird das Programm dann zu einem Vergleich zwischen den verbleibenden, in Betrieb befindlichen Werten fortschreiten (beispielsweise 1204). Falls diese beiden, in Betrieb befindlichen Werte in einer Weite-Toleranz-Nichtübereinstimmung sind, wird dann das Schlichtung-Gescheitert-Bit gesetzt werden (Block 1206). Des weiteren zeigt Block 1206, daß auch das spezielle, betroffene Vergleichsbit gesetzt werden könnte. Falls diese Nichtübereinstimmung ein neues Scheitern repräsentiert (Block 1208), wird dann der geschlichtete analoge Eingabewert für den letzten Prozeß-Steuer/Regel-Zyklus zum Prozeß-Steuer/Regel-Computer 14 gesendet werden (Block 1210). Wenn allerdings dieses Scheitern schon im unmittelbar vorangehenden Prozeß-Steuer/Regel-Zyklus vorlag, wird das Programm dann eine Überprüfung durchführen, um zu sehen, ob der Prozeß-Steuer/Regel-Computer 14 einen Low (Niederpegel)-Vorgabe-Wert angefordert hat (Raute 1212). In beiden Fällen wird das Programm einen Test durchführen, um zu sehen, welcher der beiden in Betrieb befindlichen Werte größer als der andere ist (Rauten 1214– 1216). Falls der Low-Wert angefordert wurde, zeigen die Blöcke 12181220 an, daß dann der kleinere Wert der beiden in Betrieb befindlichen Werte gesendet werden wird. In ähnlicher Weise zeigen die Blöcke 1220– 1222 an, daß der größere der beiden in Betrieb befindlichen Werte gesendet werden wird, wenn für diese analoge Eingabe das Wähl-Low-Bit nicht gesetzt wurde. Auf jeden Fall sollte aus den Blöcken 1218–1222 gewürdigt werden, daß der Differenzwert auch während des Schlichtungsprozesses als Einflußgröße einbezogen werden kann oder daß er zusammen mit dem gewählten analogen Eingabewert zum Prozeß-Steuer/Regel-Computer 14 gesendet werden könnte. Da die verbleibenden Abschnitte der 18I–18J eine ähnliche Entscheidungsbaumanalyse wie diejenige durchführen, die oben für die Situationen beschrieben wurde, in denen der linke und/oder mittlere Wert nicht in Betrieb ist, ist keine weitere Diskussion dieser Flußdiagramme erforderlich.
  • Es wird wieder auf 18B Bezug genommen. Ein Block 1224 zeigt an, daß ein Satz von Differenzwerten für die Verwendung während des nächsten Prozeß-Steuer/Regel-Zyklus berechnet wird. Genauer: es wird der Unterschied zwischen dem tatsächlich gewählten Wert und jedem Wert vom linken, mittleren und rechten Wert berechnet und gespeichert. In dem Fall, daß der linke Wert gewählt war, würde der Differenzwert dann null sein. Allerdings würde bei dem oben ausgeführten Beispiel der Differenzwert für die Links-Mitte-Kombination 0,05 mA betragen. Ein ähnlicher Differenzwert wird ferner für die Links-Rechts- und die Mitte-Rechts-Kombination berechnet, wobei angenommen ist, daß diese Werte zur Zeit ebenfalls in Betrieb sind.
  • Als nächstes ist ein Satz von "In Betrieb"-Testroutinen für jeden Wert des linken, mittleren und rechten analogen Eingabewerts vorgesehen, wie durch die Blöcke 1226–1230 angezeigt ist. Jede dieser Routinen wird dazu verwendet zu bestimmen, ob diese Werte für den nächsten Prozeß-Steuer/Regel-Zyklus in Betrieb gesetzt werden sollten. 18K stellt ein Flußdiagramm für den Block 1226, 18L stellt ein Flußdiagramm für den Block 1226 und 18M stellt ein Flußdiagramm für den Block 1230 bereit. Aufgrund der Ähnlichkeit zwischen diesen drei Flußdiagrammen wird nur das Flußdiagramm 1226 für den linken analogen Eingabewert diskutiert.
  • Raute 1232 zeigt an, daß der linke Wert einfach in Betrieb bleibt, falls er schon in Betrieb ist. In dem Fall, daß gefunden wurde, daß der linke Wert außer Betrieb ist, zeigen dann allerdings die Rauten 1234–1238 an, daß der mittlere und der rechte Wert jeweils auf ihre In-Betrieb-Verfügbarkeit überprüft werden. Falls der mittlere und der rechte Wert beide in Betrieb sind, wird jeder dieser Werte mit dem linken Wert verglichen, um zu bestimmen, ob eine Enge-Toleranz-Übereinstimmung vorliegt (Rauten 1240– 1242). Falls beide Enge-Toleranz-Tests erfolgreich sind, wird dann das In-Betrieb-Bit für den linken Wert für die Verwendung im nächsten Prozeß-Steuer/Regel-Zyklus gesetzt (Block 1244). Wenn allerdings der Links-Mitte-Enge-Toleranz-Test scheitert und der Links-Rechts-Enge-Toleranz-Test erfolgreich ist (Raute 1246), wird dann der Unterschied zwischen dem linken Wert und der zum Prozeß-Steuer/Regel-Computer gesendeten Eingabe berechnet (Block 1248). Dann wird die Raute 1250 testen, ob der linke gesendete Wert kleiner als die Enge-Toleranz-Schwelle ist. Falls der linke gesendete Wert kleiner als die Enge-Toleranz-Schwelle war, wird dann das linke In-Betrieb-Bit gesetzt. Andernfalls wird der linke Wert außer Betrieb bleiben.
  • In dem Fall, daß gefunden wurde, daß der linke und der rechte Wert in Betrieb sind und daß der mittlere Wert außer Betrieb ist, braucht der Links-Rechts-Enge-Toleranz-Test nur bestanden zu werden, damit das linke In-Betrieb-Bit gesetzt wird (Raute 1252). In dem Fall, daß keiner des linken, mittleren oder rechten Werts in Betrieb ist, wird das Programm dann eine Überprüfung durchführen, um zu sehen, ob einer des mittleren und des rechten Werts wenigstens "gut" war (Rauten 1254–1256). Diesbezüglich ist ein guter Wert einer, bei dem die analoge Eingabeplatine eingesteckt war und eine vollständige Nachbar-zu-Nachbar-Mitteilung empfangen wurde. Wenn die Links-Mitte- oder die Links-Rechts-Kombination den Enge-Toleranz-Test besteht (Rauten 1258–1260), wird dann das linke In-Betrieb-Bit gesetzt (beispielsweise Block 1262).
  • Nachdem diese Prozedur für jeden des linken, mittleren und rechten Analogeingabewerts beendet ist, wird dann das Flußdiagramm des Blocks 1264 ausgeführt, wie in 18N gezeigt ist. Diesbezüglich wird das allgemeine Analogeingabe-Vergleichsbit "AIC" gesetzt, wenn eines der spezifischen Analogeingaben-Vergleichsbits gesetzt wurde (Block 1266). Falls beispielsweise der Vergleich zwischen dem linken und dem mittleren Wert den Weite-Toleranz-Test nicht bestand (Raute 12681, würde somit dann das AIC-Bit gesetzt werden.
  • Schließlich wird der geschlichtete analoge Eingabewert, wie durch Block 1270 in 18B angedeutet, in einer Datentabelle gespeichert, die zum Prozeß-Steuer/Regel-Computer 14 übertragen werden wird. Das Programm wird dann dazu fortschreiten, den nächsten analogen Eingabekanal in einer Schleife, die durch Ellipse 1272 angedeutet ist, zu schlichten. Die AI-Schleife wird wiederholt, bis alle analogen Eingabekanäle für den ersten Satz von redundanten analogen Eingabeschaltungsplatinen geschlichtet sind. Dann wird der gesamte Schlichtungsprozeß wiederholt, bis alle analogen Eingabekanäle geschlichtet wurden (beispielsweise 4 Sätze von 5 analogen Eingabekanälen, die gleichzeitig geschlichtet werden).
  • Es wird nun unter Bezugnahme auf die 18O–18T der Prozeß der Schlichtung analoger Ausgaben beschrieben. 18O zeigt ein Gesamtflußdiagramm 1274 für den analogen Ausgabeprozeß. Da das Flußdiagramm 1274 der durch das Flußdiagramm 1068 der 17E für digitale Ausgaben verwendeten Analyse folgt, braucht das Flußdiagramm 1274 nur kurz diskutiert werden. Beispielsweise sollte vermerkt werden, daß der "Bestimme-Versagen-Sicher/Versagen-Zuletzt"-Block 1070 der gleiche sowohl für digitale und analoge Ausgaben ist. Der substantielle Unterschied zwischen dem analogen und dem digitalen Gesamtflußdiagramm ist letzten Endes im "Bestimme, welche Ausgabe verwendet werden soll"-Block 1276 und dem "Setze/Lösche AOC-Bit"-Block 1278 enthalten. Die 18P–18S veranschaulichen das Flußdiagramm für Block 1276, während 18T das Flußdiagramm für Block 1278 veranschaulicht.
  • Es wird zuerst auf die 18P–18S Bezug genommen. Das Flußdiagramm 1276 ist dahingehend gezeigt, daß es allgemein der oben diskutierten Analyse zum Wählen von digitalen Ausgaben (Flußdiagramm 1072 der 17G) folgt. Anstelle des Vergleichs von digitalen Ausgabewerten werden allerdings gültige Paare von analogen Ausgaben in bezug auf einen Ausgabetoleranzwert verglichen. Genauer: es wird der Unterschied zwischen zwei analogen Ausgabewerten berechnet (beispielsweise Block 12801, und es wird dann eine Bestimmung gemacht, ob dieser Unterschied den Ausgabetoleranzwert übersteigt (beispielsweise Block 1282). Der Ausgabetoleranzwert ist bevorzugt so gewählt, daß er 0,1 der Gesamtskala beträgt.
  • Wenn der Ausgabetoleranztest bestanden ist, wird dann der linkste Wert gewählt (beispielsweise Block 1284). Wenn allerdings der Ausgabetoleranztest nicht bestanden wird, wird dann das spezielle Nichtübereinstimmungsbit gesetzt und wird das allgemeine Verhandlung-Erfolglos-Bit "AOAF" gesetzt (Block 1286). Das Programm wird dann zur Bestimmung fortschreiten, ob durch den Prozeß-Steuer/Regel-Computer 14 eine Versagen-Zuletzt-Anforderung ergangen ist (Raute 1288). Falls keine Versagen-Zuletzt-Anforderung ergangen ist, wird dann der niedrigste der beiden gültigen analogen Ausgabewerte zum Feld gesendet werden (Raute 1290). Der niedrigste der beiden gültigen analogen Ausgabewerte sorgt für eine Versagen-Sicher-Auswahl für den analogen Ausgabekanal.
  • In dem Fall, daß ein Versagen-Zuletzt-Wert durch den Prozeß-Steuer/Regel-Computer 14 angefordert war, wird das Programm dann fortschreiten, um herauszufinden, welcher der beiden gültigen analogen Ausgabewerte zum letzten geschlichteten Wert am nächsten war. Beispielsweise gibt Block 1292 an, daß die Differenz zwischen dem rechten analogen Ausgabewert und dem letzten geschlichteten Ausgabewert berechnet wird. In gleicher Weise gibt Block 1294 an, daß der Unterschied zwischen dem linken analogen Ausgabewert und dem letzten geschlichteten Ausgabewert berechnet wird. Raute 1296 wird dann diese beiden Wertdifferenzen vergleichen, und es wird dann die kleinste Differenz verwendet werden, um je nachdem – den linken oder rechten Wert auszuwählen.
  • Schließlich wird das Flußdiagramm 1278 der 18T dazu verwendet, das allgemeine Analogausgabe-Vergleichsbit "AOC" zu setzen oder zu löschen. Diesbezüglich zeigen die Rauten 1298–1302 und der Block 1304 an, daß das AOC-Bit gesetzt werden wird, wenn gefunden wurde, daß ein spezielles Vergleichsbit gesetzt ist. Andernfalls wird das AOC-Bit gelöscht werden, falls keine Nichtübereinstimmungen gefunden wurden (Block 13061.
  • Es sollte auch vermerkt werden, daß die Analogausgabe-Verfolgung-"AOT"-Werte und die Digitalausgabe-Verfolgung-"DOT"-Werte in ähnlicher Art und Weise zu derjenigen geschlichtet werden können, die in Verbindung mit der hierin beschriebenen Schlichtung von analogen Ausgabewerten und digitalen Ausgabewerten beschrieben wurde. Tatsächlich kann auch selbst das durch die Steuereinheit 92 und 96 empfangene Taktsignal in ähnlicher Art und Weise geschlichtet werden. Diesbezüglich folgt die Taktsignalschlichtung bevorzugt der in 17C ausgeführten Analyse, um zu bestimmen, welches Taktsignal gewählt werden sollte.
  • Es wird auf die 19A–19M Bezug genommen, in denen ein Satz von Flußdiagrammen gezeigt ist, um das Verfahren des nicht störenden Testens der digitalen Ausgabeschaltungen 500–504 gemäß einer Ausführungsform der vorliegenden Erfindung zu veranschaulichen. Dieses Testverfahren enthält sowohl passive als auch aktive Testprozeduren. Die 19A– 19C liefern in Kombination ein Gesamtflußdiagramm 1400 für den nicht störenden Testprozeß. Wie durch die Blöcke 1402–1406 und die Rauten 1408–1416 angedeutet ist, wird eine Reihe von Gesundheitsüberprüfungen durchgeführt, bevor irgendein Testen der digitalen Ausgabeschaltungen erlaubt wird. Diesbezüglich dürfen keine Fehler vom unmittelbar vorangehenden Testzyklus für die zu testende digitale Ausgabeschaltung gefunden werden, und die den Test durchführende Steuereinheit 100 muß fähig sein, mit ihren benachbarten Steuereinheiten zu kommunizieren. In dem Fall, daß keine der durch die Rauten 1408–1416 repräsentierten Bedingungen erfüllt ist, zeigt die Fortführung des Flußdiagramms 1400 in 19B an, daß dann die angemessenen Fehlercodes gesetzt werden.
  • Unter der Annahme, daß erlaubt wird, die digitale Ausgabeschaltung zu testen, zeigt dann die Raute 1418 an, daß die digitalen Ausgabeschaltungen für die benachbarten Steuereinheiten auf Fehler überprüft werden. Falls Fehler gefunden werden, wird die passive Testprozedur des Block 1420 dann umgangen. Die 19D–19E liefern in Kombination das Flußdiagramm für die passive Testprozedur. Während die passive Testprozedur an der digitalen Ausgabeschaltung von nur einer der Steuereinheiten 92–96 zu einem Zeitpunkt durchgeführt werden könnte, sollte gewürdigt werden, daß alle Steuereinheiten 92–96 die passive Testprozedur gleichzeitig durchführen könnten. Dies liegt daran, daß eine aktive Zusammenarbeit zwischen benachbarten Steuereinheiten während der passiven Testprozedur nicht erforderlich ist.
  • Wie durch den Block 1422, die Polygone 1424–1426 und die Raute 1428 angezeigt ist, wird der passive Test mit Kanal 1 anfangen und, falls keine Fehler aufgefunden werden, sich dann schleifenmäßig durch alle zehn Kanäle bewegen. Die Raute 1430 zeigt an, daß das Programm erfassen wird, ob der Kanal, der getestet wird, Zustände geändert hat oder nicht. Falls der Kanal Zustände geändert hat, wird das Programm dann zum Testen des nächsten Kanals voranschreiten. Während des anfänglichen Durchgangs durch die Schleife wird allerdings die Antwort nein sein, und es werden die Test- und Verfolgungsspannungen gelesen (Blöcke 1432–1434).
  • Die Raute 1436 zeigt an, daß die Steuereinheit 100 bestimmen wird, ob der getestete Kanal vom geschlichteten Kommandowert An oder Aus ist. Falls der Kanal angewiesen ist, An zu sein, wird die Steuereinheit eine Überprüfung durchführen, um zu sehen, daß die Testspannung (beispielsweise TEST-1) größer als ein vorbestimmter Schwellenwert (beispielsweise 19 Volt) war. Falls die Testspannung größer als dieser Pegel war, wird dieser Abschnitt des Tests dann erfolgreich durchlaufen sein, und das Programm wird sich durch das OK-Polygon 1440 schleifenmäßig zurückbewegen, um den nächsten Kanal zu testen. Falls die Testspannung zu niedrig war, werden dann die angemessenen Fehlercodes gesetzt, da eine Anzahl von verschiedenen Fehlern hätte auftreten können (beispielsweise eine ausgelöste Sicherung oder ein offener Einstellschalter). Nachdem ein Fehler erfaßt ist, wird bei dieser Ausführungsform der passive Test beendet. Es sollte allerdings gewürdigt werden, daß in der angemessenen Anwendung die anderen Kanäle dem passiven Testen unterworfen werden könnten.
  • Falls der Kanal angewiesen ist, in einem Aus-Zustand zu sein, wird dann die Steuereinheit 100 durch die Raute 1446 eine Überprüfung durchführen, um zu sehen, ob die Testspannung größer als ein vorbestimmter niedriger (Low) Testpegel (beispielsweise 350 mV) ist. Falls die Testspannung unter diesem Pegel liegt, wird dann für die Sicherung in der sich unter Untersuchung befindlichen Abbruchschaltung (beispielsweise die Sicherung DF1 der 11A) ein Offene-Sicherung-Zustand erfaßt, und es wird der angemessene Fehlercode gesetzt. Unter der Annahme, daß die Testspannung den vorbestimmten niedrigen (Low) Testpegel überschreitet, wird dann die Steuereinheit durch die Raute 1484 eine Überprüfung durchführen, um zu sehen, ob die Verfolgungsspannung unterhalb eines niedrigen (Low) Verfolgungspegels (beispielsweise 4,4 Volt) ist. Falls die Verfolgungsspannung oberhalb dieses niedrigen Pegels ist, wird die Steuereinheit dann durch die Raute 1450 eine Überprüfung durchführen, um zu sehen, ob die Verfolgungsspannung kleiner als eine vorbestimmte hohe Verfolgungsspannung (beispielsweise 14,4 Volt) ist. Es liegt dann ein Fehler vor, wenn die Verfolgungsspannung oberhalb dieses hohen Pegels (High-Pegels) liegt. Die exakte Fehlerquelle kann allerdings nicht bestimmt werden, so daß der Test mit einem anderen Kanal fortgeführt wird. Diesbezüglich ist es nötig, die unten zu beschreibende aktive Testprozedur zu verwenden, um zu helfen, die Fehlerquelle zu identifizieren.
  • In dem Fall, daß die Verfolgungsspannung unterhalb des niedrigen Spannungspegels liegt, werden dann weitere Überprüfungen durchgeführt, um zu bestimmten, ob – nichtdestotrotz – noch ein Fehler vorliegt, der erfaßt werden könnte. Mit anderen Worten: die Verfolgungsspannung sollte unterhalb des vorbestimmten niedrigen (Low) Pegels sein, wenn der Kanal aus ist. Es könnte aber noch ein verstecktes Problem vorliegen, das entdeckt werden könnte. Diesbezüglich wird die Testspannung dahingehend untersucht, um zu sehen, ob ein sich auf die Diode 524 der Abbruchschaltung beziehender Fehler vorliegt (Raute 1452). Falls die Testspannung größer als eine vorbestimmte hohe (High) Testspannung (beispielsweise 15,8 Volt) ist, wird dann ein Offene-Diode-Zustand durch die Steuereinheit erfaßt, und es werden die angemessenen Fehlercodes gesetzt (Block 1454). Diesbezüglich sollte vermerkt werden, daß diese Fehlercodes durch die Steuereinheit 100 dazu verwendet werden könnten, einen Abbruch des Kanals durch ihre benachbarten Steuereinheiten anzufordern. Ferner kann die den Test durchführende Steuereinheit auch das Vorliegen eines Fehlers in ihrer digitalen Ausgabeschaltung in der nächsten zum Prozeß-Steuer/Regel-Computer gesendeten Mitteilung dem Prozeß-Steuer/Regel-Computer 14 signalisieren. Der Prozeß-Steuer/Regel-Computer 14 könnte ferner anfordern, daß die Feldcomputereinheit 12 spezielle Fehlercodes oder Statusbits überträgt für eine Analyse durch einen Gesundheits- und Wohlergehensprozeß. Diesbezüglich sollte vermerkt werden, daß der Prozeß-Steuer/Regel-Computer 14 mit einem anderen Computer verbunden sein könnte, der die Gesundheits- und Wohlergehensanalyse durchführen würde.
  • Falls gefunden wurde, daß die Testspannung kleiner als ihr vorbestimmter hoher Spannungspegel ist, wird die Steuereinheit 100 dann testen, ob ein Spannungsabfall über die Diode 524 vorliegt, indem sie die Test- und Verfolgungsspannungen vergleicht (Raute 1456). Falls kein Spannungsabfall gefunden wurde, wird die Steuereinheit 100 dann das Vorliegen eines Kurzgeschlossene-Diode-Zustands bestimmen und den angemessenen Fehlercode setzen (Block 1458). Falls ein Spannungsabfall gefunden wurde, wird die Steuereinheit 100 dann durch die Raute 1459 eine Überprüfung durchführen, um zu sehen, ob die Verfolgungsspannung unterhalb eines vorbestimmten minimalen Pegels liegt (beispielsweise 240 mV). Falls die Verfolgungsspannung unterhalb dieses minimalen Pegels liegt, wird die Steuereinheit 100 dann bestimmen, daß der passive Test für diesen Kanal erfolgreich war. Falls die Verfolgungsspannung oberhalb des minimalen Pegels liegt, wird die Steuereinheit 100 dann bestimmen, daß ein Fehler im Feld aufgetreten ist, und es wird der angemessene Fehlercode gesendet (Block 1460). Es sollte verstanden werden, daß jeder Schwellenwert des hohen (High), niedrigen (low) und minimalen (Minimum) Schwellenwerts durch den +26 Volt-Energieversorgungspegel und die für die Widerstände RP1, RP3 und RP7 in der in 11A gezeigten Abbruchschaltung 510 gesetzten Widerstandswerte bestimmt ist.
  • Aus der obigen Diskussion sollte gewürdigt werden, daß die Steuereinheit 100 geeignet ist, jeden der Kanäle ihrer digitalen Ausgabeplatine passiv zu testen, dies dahingehend, daß keiner der digitalen Ausgabekanäle als Teil der Testprozedur absichtlich An oder Aus gesetzt werden muß.
  • Diesbezüglich zeigt Block 1462 der 19A auf, daß die Steuereinheit 100 eine gewisse Zeitperiode reservieren muß, in der das Funktionieren ihrer digitalen Ausgabeschaltung durch die Test- und Verfolgungssignale passiv erfaßt und analysiert wird. Ferner sollte gewürdigt werden, daß der passive Test ferner die Fähigkeit aufweist, den Typ des Fehlers, der angetroffen werden mag, zu bestimmen, einschließlich eines der Ausgabe-Steuer/Regel-Vorrichtung im Feld zugeordneten Fehlers.
  • Es wird speziell auf 19B Bezug genommen. Die Steuereinheit 100 wird warten, bis die Zeit für die passive Testprozedur abgelaufen ist (beispielsweise 10 ms), bevor sie zur aktiven Testprozedur voranschreitet (Block 1464). Es wird dann eine Entscheidung getroffen, welche der Steuereinheiten 92–96 die aktive Testprozedur durchführen wird. In einer Ausführungsform ist es bevorzugt, daß während jeden Prozeß-Steuer/Regel-Zyklus eine andere Steuereinheit 92–96 ein aktives Testen durchmacht. Dies wird dadurch bewerkstelligt, daß der "Sekunde "-Taktwert des Prozeß-Steuer/Regel-Computers 14 durch die Anzahl von in der Feldcomputereinheit 12 enthaltenen Steuereinheit (d. h. 3) geteilt wird, wie in Block 1466 gezeigt ist. Der Rest wird dazu verwendet zu bestimmen, welche Steuereinheit das aktive Testen durchmachen wird. Beispielsweise beträgt bei einer Auslesung von 12 Sekunden der Restwert null. Deshalb wird, wie durch Raute 1468 angezeigt ist, die linke Steuereinheit 92 die aktive Testprozedur (Polygon 1470) während dieses Prozeß-Steuer/Regel-Zyklus durchführen. Ferner zeigt das Ergebnis der Raute 1468 an, daß die anderen beiden Steuereinheiten 94–96 in einen Mithörmodus eintreten werden (Polygone 1472–1473).
  • Die 19F–19G liefern in Kombination ein Gesamtflußdiagramm 1470 für die aktive Testprozedur. Diesbezüglich wird der erste Kanal der linken Steuereinheit 92 dazu verwendet, die Funktion der aktiven Testprozedur zu veranschaulichen. Unter der Annahme, daß die Digitalausgabe-Schaltungsplatine 500 für die Steuereinheit 92 an Ort und Stelle ist und daß an keiner der digitalen Ausgabeschaltungen 500–504 ein Fehler gefunden wurde (Rauten 1474–1482), zeigt Block 1482 dann an, daß einer der digitalen Ausgabekanäle für die aktive Testprozedur ausgewählt werden wird. Bei dieser speziellen Ausführungsform wird nur einer der digitalen Ausgabekanäle während eines einzelnen Prozeß-Steuer/Regel-Zyklus getestet. Dementsprechend sollte gewürdigt werden, daß es 30 Sekunden braucht, um alle zehn digitalen Ausgabekanäle in den digitalen Ausgabeschaltungen 500–504 aktiv zu testen, wenn der Prozeß-Steuer/Regel-Zyklus auf eine Periode von einer Sekunde gesetzt ist. In dem Fall, daß der Zustand des Kanals, der zum Testen an der Reihe ist, sich nicht geändert hat (Raute 1484) und daß während des passiven Testens dieses Kanals kein Feldfehler gefunden wurde (Raute 1486) wird dann eine Bestimmung durchgeführt, ob dieser Kanal An oder Aus ist (Raute 1488). Wenn der Kanal Aus ist, wird dann der aktive Aus-Test durchgeführt (Polygon 1490). Umgekehrt wird der aktive An-Test durchgeführt (Polygon 1492), falls der Kanal An ist.
  • Das Flußdiagramm 1490 für den aktiven Aus-Test ist in 19H gezeigt. Wie durch das Flußdiagramm 1490 gezeigt ist, umfaßt der aktive Aus-Test eine Reihe aus drei gesonderten Tests (Blöcke 1494–1498), die unter der Annahme, daß keine Fehler gefunden werden, alle beendet werden. Im ersten Test (Block 1494) wird das SET-DODC-1-Signal durch die Steuereinheit 92 hochgesetzt (auf High gesetzt), um den Transistor 516 der 11A anzuschalten. Wenn es auch im Block 1494 nicht speziell angegeben ist, werden die Transistoren 518–520 beide aus sein, da die Abbruchschalter programmiert sind, sich automatisch zu öffnen, wenn der Kanal Aus ist. Dementsprechend wird das Leiten des Transistors 516 nicht verursachen, daß die Abbruchschaltung 510 die Feldvorrichtung 508 treibt. Da der Widerstand über den leitenden Transistor 516 kurzgeschlossen ist, sollte die TEST-1-Spannung um eine durch das Widerstandsteilernetz in der Abbruchschaltung 510 bestimmte Größe ansteigen. Wie durch Block 1494 angezeigt ist, wird die Steuereinheit 92 dementsprechend eine Überprüfung durchführen, um zu sehen, daß ein ausreichender Spannungsanstieg (Delta- Test) erreicht wurde und daß die TEST-1-Spannung unterhalb ihres maximal zulässigen Werts bleibt. Falls dieser Test nicht erfolgreich war, wird dann ein Aktiv-Test-Fehler-Bit gesetzt. Ungeachtet des Ergebnisses wird das SET-DODC-1-Signal zurück zu seinem Aus-Zustand geschaltet. Die Raute 1500 zeigt an, daß die Steuereinheit 100 eine Überprüfung durchführen wird, um zu sehen, ob das Aktiv-Fehler-Bit gesetzt wurde, und der Programmfluß geht, falls dies der Fall war, weiter zur aktiven Fehlerprozedur 1502 der 19F.
  • Unter der Annahme, daß keine Fehler aufgetroffen wurden, wird dann der zweite aktive Aus-Test durchgeführt (Block 1496). Unter diesem Test wird die Steuereinheit 100 anfordern, daß ihre Nachbar-1-Steuereinheit (beispielsweise Steuereinheit 94) das ABORT-1-1-Signal (Abbruch-1-1-Signal) hochsetzt lauf High gesetzt), um den Transistor 518 anzuschalten. Da allerdings das SET-DODC-1-Signal auf niedrigem Pegel (Low) bleiben wird, wird die Abbruchschaltung 510 nicht fähig sein, die Feldvorrichtung 508 zu treiben. Nichtsdestotrotz sollte die TEST-1-Signalspannung ansteigen, da der Widerstand RP3 effektiv durch den leitenden Transistor 518 kurzgeschlossen wird. Die Steuereinheit 100 wird eine Überprüfung durchführen, um zu sehen, ob der angemessene Anstieg des Spannungspegels erreicht wurde, und sie wird das Aktiver-Test-Fehler-Bit setzen, falls dieser Anstieg nicht erreicht wurde. Die Steuereinheit 92 wird dann von ihrer benachbarten Steuereinheit verlangen, das ABORT-1-1-Signal zurück in einen Low-Zustand zu schalten. Die Raute 1504 zeigt an, daß die Steuereinheit 92 dann eine Überprüfung durchführen wird, um über das Kommunikation-Fehler-Bit zu sehen, ob diese Mitteilung empfangen wurde.
  • Unter der Annahme, daß keine Fehler angetroffen wurden, wird dann der dritte Aktive-Aus-Test durchgeführt (1498). Dieser Test ist ein Spiegelbild des zweiten Aktive-Aus-Tests, mit der Ausnahme, daß das ABORT-2-1-Signal (Abbruch-2-1-Signal) durch die verbleibende benachbarte Steuereinheit (beispielsweise Steuereinheit 96) hin- und hergeschaltet wird.
  • Falls keine Fehler aufgetroffen wurden, wird dann die Programmsteuerung zum Flußdiagramm der 19G zurückspringen, um den nächsten digitalen Ausgabekanal im nächsten Prozeß-Steuer/Regel-Zyklus zu testen (Polygon 1506).
  • Wenden wir uns den 19I–19J zu, in denen das Flußdiagramm für den Aktive-An-Test 1492 gezeigt ist. Der Aktive-An-Test umfaßt eine Reihe aus fünf Test-Prozeduren (Blöcke 1508–15161. Im Testblock 1508 wird das SET-DODC-1-Signal auf Niederpegel (Low) gesetzt, während das ABORT-1-1 und das ABORT-2-1-Signal hoch (High) bleiben. Dementsprechend führt die Steuereinheit 92 eine Überprüfung durch, um zu sehen, daß der TEST-1-Spannungspegel um einen Delta-Spannungswert abfällt. Das SET_DODC-1-Signal wird dann zu seinem High-Zustand zurückgeschaltet. Im Testblock 1510 wird das ABORT-1-1-Signal (durch eine Anforderung an die Nachbar-1-Steuereinheit) auf Niederpegel (Low) geschaltet, während sowohl das ABORT-2-1- als auch das SET DODC-1-Signal hochpegelig (High) sind. Dementsprechend führt die Steuereinheit 92 eine Überprüfung durch, um zu sehen, daß das TEST-1-Signal keinen Spannungsabfall erfahren hat. Falls ein Spannungsabfall gefunden wird, ist ein Fehler in Bezug auf den Transistor 520, den Optoisolator DU3 oder das ABORT-2-1-Signal aufgetreten, da ein richtig leitender Transistor 520 verursachen würde, daß das TEST-1-Signal seinen Spannungspegel aufrecht erhält. Der dritte Aktive-An-Test (Block 1512) wiederholt den zweiten Aktive-An-Test mit der Ausnahme, daß das ABORT-2-1-Signal auf Niederpegel (Low) umgeschaltet wird.
  • Im vierten Aktive-An-Test (Block 1514) fordert die Steuereinheit 92 ihre beiden benachbarten Steuereinheiten (94–96) auf, das ABORT-1-1- und das ABORT-2-1-Signal auf niedrigen Pegel (Low) zu setzen. Die Steuereinheit 92 wird dann eine Überprüfung durchführen, um zu sehen, daß die TEST-1-Signalspannung um den vorbestimmten Delta-Spannungswert abfällt. Während dieser Zeit werden die beiden anderen Steuereinheiten 94–96 fortfahren, die Feldvorrichtung anzusteuern. Schließlich wird die Steuereinheit 92 im fünften Aktive-An-Test ihre benachbarten Steuereinheiten 94–96 auffordern, ihre SET DODC-1-Signale für den getesteten Kanal auf Niederpegel (Low) zu schalten. Es sollte verstanden werden, daß dann, wenn dies passiert, die Abbruchschaltung 510 die Feldvorrichtung 508 alleine ansteuern wird. Dementsprechend wird die Steuereinheit 92 eine Überprüfung durchführen, um zu sehen, daß der TEST-1-Spannungspegel nicht abfällt, um sicher zu sein, daß die Abbruchschaltung 510 fähig ist, nötigenfalls die Feldvorrichtung 510 für sich alleine anzusteuern. Ferner wird auch das Vorhandensein eines Spannungsabfalls über die Diode 524 überprüft, um sicher zu sein, daß die Diode richtig funktioniert. Unter der Annahme, daß keine Fehler gefunden wurden, wird dann die Programmsteuerung zur Kein-Fehler-Prozedur 1506 weitergegeben, die den nächsten zu testenden Kanal etablieren wird (Block 1518).
  • Es sollte verstanden werden, daß die benachbarten Steuereinheiten 94–96 während den Aktive-Aus-Tests und den Aktive-An-Tests mit der Steuereinheit 92 kooperieren müssen, indem sie auf Anforderungen handeln und ihre ABORT-1-1-, ABORT-2-1- und SET DODC-1-Signale ändern. Diese Kooperation wird durch die in den 19K–19M gezeigte Zuhörmodusprozedur 1472 erreicht. Da diese Nachbar-zu-Nachbar-Kommunikationen außerhalb der Eingabe- und Ausgabe-Daten-Austäusche liegen, die zu speziellen Zeiten einmal pro Prozeß-Steuer/Regel-Zyklus durchgeführt werden, muß die in den 6J–6K gezeigte Sukzessiv-Approximation-Digital-zu-Analog-Wandlerschaltung an jeder der Steuereinheiten 94–96 dafür eingerichtet sein, Signalaustauschanforderungen von der Steuereinheit 92 zu empfangen (Block 1520). Es wird dann durch jede der Steuereinheiten 94–96 ein interner Timer etabliert, innerhalb dessen Signalaustauschanforderungen oder Kommandos empfangen werden müssen (Block 1522). Falls die angemessenen Kommandos nicht in dieser Zeit empfangen werden (Raute 1524), wird dann die Get-Out-Prozedur 1526 (Ausstiegsprozedur 1526) der
  • 19B durchgeführt.
  • Die Rauten 1528–1530 zeigen an, daß die Steuereinheit 92 den Steuereinheiten 94–96 signalisieren kann, den aktiven Testprozeß zu beenden. Falls das empfangene Kommando nicht ein Beende-Test-Kommando war, werden die benachbarten Steuereinheiten 94–96 eine Überprüfung durchführen, um zu sehen, ob während des passiven Testens irgendwelche Fehler auf ihren jeweiligen digitalen Ausgabeschaltungen 502– 504 auftraten (Block 1532). Falls ein Fehler angetroffen wurde, wird die ihren eigenen Fehler erfassende benachbarte Steuereinheit dann zur Steuereinheit 92 zurücksignalisieren, daß sie das angeforderte Kommando nicht ausführen kann (1534), und sie wird die Zeitspanne setzen, nach der sie eine weitere Mitteilung von der Steuereinheit 92 erwartet (Block 1536). Da das Vorliegen eines beliebigen Platinenfehlers das aktive Testen beenden wird, wird die Steuereinheit 92 bevorzugt mit dem Beende-Test-Kommando antworten. In einem derartigen Fall wird der den Fehlertyp repräsentierende Fehlercode gespeichert, wie auch eine Identifizierung dahingehend, auf welchem Kanal der Fehler während des passiven Testens erfaßt wurde (Block 15341.
  • Unter der Annahme, daß keine Fehler gefunden wurden, werden die benachbarten Steuereinheiten 94–96 dann bestimmen, ob die Steuereinheiten 92 eine spezielle Änderungen im ABORT-Signal (Rauten 1540–1542) oder eine Änderung im SET-Signal (Setze-Signal, Raute 1544) angefordert hat. Beispielsweise werden im Fall des "Abort on"-Kommandos (Abbruch-An-Kommando) die benachbarten Steuereinheiten 94–96 dann den von der Kommandomitteilung betroffenen Kanal herleiten (Block 1546) und eine Überprüfung durchführen, um zu sehen, ob ein Feldfehler vorliegt (Raute 1548). Unter der Annahme, daß kein Fehler für die Feldvorrichtung 508 des getesteten Kanals erfaßt wurde, wird dann jede der Steuereinheiten 94–96 eine Überprüfung durchführen, um zu sehen, ob der Kanal An ist (Raute 1550). Falls der Kanal An ist, wird der Abbruchtransistor (beispielsweise Transistor 518) schon an sein. Dementsprechend wird die zu diesem Zeitpunkt ein Abort-An-Kommando empfangende Steuereinheit bestimmen, daß eine fehlerhafte Mitteilung empfangen wurde (Polygon 1552) und zu der Steuereinheit 92 eine Antwortmitteilung senden, daß dieses Kommando nicht ausgeführt werden kann (Block 1536). Unter der Annahme, daß der Kanal An war, werden die Steuereinheiten 94–96 dann allerdings bestimmen, für welchen Abbruchschalter das Kommando ergangen ist, in einen Aus-Zustand umgeschaltet zu werden (Block 1544). Dann wird die Rücksetzen-Warten-Routine 1556 der 19M durchgeführt.
  • Die Rücksetz-Warten-Routine 1556 der 19M beginnt damit, daß die benachbarten Steuereinheiten 94-96 eine Antwortmitteilung zur Steuereinheit 92 zurücksenden, die das empfangene Kommando zurückechot (Block 1558). Diese Echoprozedur ermöglicht, daß die Steuereinheit 92 weiß, daß ihre Mitteilung richtig empfangen wurde. Die Steuereinheiten 94–96 werden dann den durch die Steuereinheit 92 angewiesenen speziellen Schalter An-schalten oder Aus-schalten (Block 1560) und einen Timer setzen, um ein automatisches Zurückschalten dieses Schalters in seinen vorangehenden Zustand zu ermöglichen (Block 1562). Falls von der Steuereinheit 92 keine Schalte-Zurück-Mitteilung empfangen wird, bevor dieser Timer null (oder den vorbestimmten Zeitablaufwert) erreicht, wird die betroffene benachbarte Steuereinheit dann automatisch den Schalter in seinen vorangehenden Zustand zurückschalten (Block 1564). Andernfalls werden die Steuereinheiten 94–96 ihre jeweiligen Schalter zurücksetzen (Block 1566) und der Steuereinheit 92 mit einer Echomitteilung antworten (Block 1568). Schließlich wird die Steuereinheit 92, wie in 19G gezeigt ist, eine Mitteilung zu ihren benachbarten Steuereinheiten senden, um die aktive Testprozedur zu beenden (Blöcke 1570–1572).
  • Wie oben angedeutet ist, macht es jede der analogen Ausgabeschaltungen 600–604 möglich, daß hinsichtlich ihrer Abbruch- und Ansteuerfähigkeiten Tests durchgeführt werden. Diese Tests werden als nicht störend betrachtet, da sie die dem Feld zugeführten analogen Ausgabewerte nicht stören. Das nicht störende Testen wird an allen fünf Kanälen einer analogen Ausgabeschaltung 600–604 zu einem Zeitpunkt durchgeführt, und ein derartiges Testen findet bevorzugt nur dann statt, wenn alle Steuereinheiten 92–96 und ihre jeweiligen analogen Ausgabeschaltungen vollständig funktionieren. Während eine analoge Ausgabeschaltung dieses nicht störende Testen durchmacht, wird wenigstens eine der beiden anderen benachbarten analogen Ausgabeschaltungen den elektrischen Strom erzeugen, der zum Aufrechterhalten der gewünschten Ausgabeleistung zum Feld nötig ist.
  • Die 20A–20V liefern einen Satz von Flußdiagrammen für die Software auf den Steuereinheiten 92-96, die Abbruchbestimmungen durchführt und das nicht störende Testen der analogen Ausgabeschaltungen 600–604 leitet. Diesbezüglich zeigt 20A ein Gesamt- oder Hauptflußdiagramm 1600 für diese Steuereinheits-Software. Für die Einfachheit der Beschreibung werden durch diese Software repräsentierte Operationen unter Verwendung der Steuereinheit 92 als das Beispiel diskutiert. Es sollte allerdings gewürdigt werden, daß diese Operationen durch jede der Steuereinheiten 92–96 gleichzeitig durchgeführt werden. Block 1602 zeigt an, daß die notwendigen Daten für die Abbruchentscheidungen und das nicht störende Testen aus dem externen RAM-Speicher (U42 der 6A) zum internen RAM des Mikroprozessors (U40 der 6A) der Steuereinheit kopiert werden. Die Steuereinheit 92 wird dann sequentiell einen Satz von Routinen durchführen, wie dies durch die Blöcke 1604–1612 mit unterbrochenen Linien angezeigt ist. Die Berechne-Benötigte-Abbrüche-Routine 1604 ist in den 20B–20L gezeigt. Die "Wähle und Etabliere den nicht störenden ("NI")-Test"-Routine 1606 ist in den 20M–20P gezeigt. Die "Kommuniziere mit der intelligenten Analogausgabe- ("SAO")-Platine"-Routine 1608 ist in den
  • 20Q–20S gezeigt. Die Handhabe-Fehler-Routine 1610 ist in den 20C–20U gezeigt. Die Sende Abbruchpositionen zur Hardware"-Routine 1612 ist in 20V gezeigt. Nachdem alle diese Routinen beendet sind, sind dann alle durch das Prozeßinformation-("PI")-System benötigten notwendigen Statusbytes erzeugt (Block 1614). Schließlich werden die IRAM-Daten zurück zum XRAM kopiert (Block 1616).
  • Es wird auf die 20B–20L Bezug genommen, in denen ein Satz von Flußdiagrammen für die "Berechne benötigte Abbrüche"-Routine 1604 gezeigt ist. Diesbezüglich liefert 20B ein Gesamtflußdiagramm für diese Routine. Block 1618 zeigt, daß die von den N1- und N2-Ausgabekommunikationen übertragenen Daten zuerst untersucht werden, um zu sehen, ob irgendwelche Hardware-Abbruch-Nichtübereinstimmungen vorliegen. Eine Hardware-Abbruch-Nichtübereinstimmung tritt auf, wenn die ME-Steuereinheit 92 (Ich-Steuereinheit) einen bestimmten Kanal abgebrochen hat und keine der benachbarten Steuereinheiten N1–N2 das gleiche getan hat. Falls dieser Zustand vorliegt, wird der nicht übereinstimmende Abbruchschalter geschlossen. In jedem Fall wird jede Abbruchanforderung von einer benachbarten Steuereinheit honoriert, indem der Abbruchschalter für den durch die Anforderungsdaten identifizierten Kanal des SAO geöffnet wird (Block 1620). Die Steuereinheit 92 wird dann die Abbruchanforderungen abfertigen und beginnen, ihre eigenen unabhängigen Abbruchentscheidungen für den nächsten Prozeß-Steuer/Regel-Zyklus zu verarbeiten (Block 1622).
  • Die Rauten 1624–1626 werden dazu verwendet zu bestimmen, ob eine der benachbarten SAO-Platinen ersetzt wurde, und die Blöcke 1628–1630 zeigen an, daß – wenn dies der Fall ist – die Abbruchschalter für ein ersetztes SAO geschlossen werden,, um zu ermöglichen, daß das ersetzte SAO arbeitet. Als nächstes wird die Steuereinheit 92 eine Überprüfung durchführen, um zu sehen, ob ihre SAO-Platine während des letzten Prozeß-Steuer/Regel-Zyklus eine Kommunikation gesendet hat (Raute 1632). Falls keine Kommunikation gesendet wurde oder über ein Problem berichtet wurde, wird dann ein Merker gesetzt, um anzuzeigen, daß diese SAO-Platine als "tot" betrachtet wird (Block 1634). Für die beiden benachbarten SAO-Platinen wird dann durch . die von den Steuereinheiten 94–96 gelieferten Mitteilungen eine ähnliche Prozedur durchgeführt (Rauten 1636– 1638). In dem Fall, daß beide der benachbarten Steuereinheiten 94–96 nicht mit der Steuereinheit 96 kommuniziert haben, werden dann an diesem Punkt durch die Steuereinheit 92 keine Abbruchschalter geöffnet (Raute 1640). Dies dient dazu, daß ermöglicht wird, daß die durch den Versagen-Sicher/Zuletzt-Mechanismus bestimmten Ausgaben das Feld erreichen, obwohl keine der Steuereinheiten 92–96 fähig ist, miteinander zu kommunizieren.
  • Unter der Annahme, daß die Steuereinheit 92 fähig ist, wenigstens mit einem ihrer Nachbarn zu kommunizieren, wird dann die "Öffne benötigte Abbrüche"-Routine 1642 durchgeführt. Die "Öffne benötigte Abbrüche"-Routine 1642 ist in den 20C–20J gezeigt. Die Steuereinheit 92 wird dann die "Handhabe Abbruch-Nichtübereinstimmungen"-Routine 1644 der 20K durchführen. Schließlich wird die Steuereinheit 92 die "Aufräumen nach den Abbrüchen"-Routine 1646 der 20L durchführen.
  • Bezugnehmend auf die 20C–20J wird nun die "Öffne benötigte Abbrüche"-Routine 1642 diskutiert. Die Raute 1648 zeigt an, daß eine anfängliche Überprüfung durchgeführt wird, ob für die SAO-Platine der Steuereinheit 92 signalisiert wurde, daß diese tot ist. Falls diese SAO-Platine als lebend oder betriebsfähig betrachtet wird, springt dann die Programmsteuerung zu einem Punkt "A" auf 20E. Allerdings wird die Steuereinheit 92 selbst dann, wenn diese SAO-Platine als tot betrachtet wird, noch Vorbereitungen durchführen, um Abbruchentscheidungen für alle fünf analogen Ausgabekanäle zu verarbeiten und zum ersten dieser Kanäle zeigen (Block 1650). Die Rauten 1652–1656 zeigen an, daß eine Überprüfung durchgeführt wird, um zu sehen, ob für eine der benachbarten SAO-Platinen signalisiert wurde, daß sie tot ist.
  • Unter der Annahme, daß beide der benachbarten SAO-Platinen betriebsfähig sind, werden dann die Rauten 1658–1660 dazu verwendet, das Vorhandensein eines "DOCH ME = 0"-Merkers von jeder der benachbarten SAO-Platinen zu erfassen, wie durch die Steuereinheit 94–96 weitergegeben. Der "OOCH"-Term dieses Statussignals steht für "Out Of Control High" ("außer Kontrolle hoch"). Wie oben angedeutet wird, wenn eine der SAO-Platinen erfaßt, daß mehr Energie ins Feld geht als dies der Fall sein sollte (beispielsweise mehr als 2% des maximal zulässigen Werts), jede ein derartiges Auftreten erfassende SAO-Platine versuchen, sich selbst auf null herunterzufahren. Falls sie fähig ist, sich selbst so herunterzufahren, daß sie zur zum Feld übertragenen Energie/Leistung nicht beiträgt (d. h. ME = 0 (Ich = 0)) und der OOCH-Zustand noch existiert, wird sie dann den "außer Kontrolle hoch ME = 0"-Merker für die Kommunikation zu den benachbarten Steuereinheiten durch eine Mitteilung von ihrer eigenen Steuereinheit setzen. Wenn somit beispielsweise das "N1 OOCH ME = 0"-Signal durch die Steuereinheit 92 empfangen wird und der "N2 OOCH ME = 0"-Merker nicht gesetzt ist, zeigt dann Block 1662 an, daß die Steuereinheit 92 den Abbruchschalter für den ersten Kanal auf der als N2 bezeichneten Steuereinheit (beispielsweise Steuereinheit 961 öffnen wird. Diese Aktion wird unternommen, da es an diesem Punkt klar ist, daß die SAO-Platine für die als N1 bezeichnete Steuereinheit (beispielsweise Steuereinheit 94) nicht die Quelle des Problems ist. Wenn allerdings sowohl das "N1 OOCH ME = 0"- und das "N2 OOCH ME = 0"-Signal durch die Steuereinheit 92 empfangen wurde, wird dann ein Merker gesetzt, um dem Prozeß-Steuer/Regel-Computer anzuzeigen, daß für diesen analogen Ausgabekanal unkontrollierte Energie zum Feld übertragen wird (Block 16641.
  • In dem Fall, daß die Antwort auf Raute 1652 JA ist und die Antwort auf Raute 1654 NEIN ist, wird die Steuereinheit 92 dann nach dem "N2 OOCH ME = 0"-Merker sehen (Raute 16661. Falls diese Signal vorliegt, wird die Steuereinheit 92 den "unkontrollierte Energie ins Feld"-Merker setzen (Block 16681. Ferner wird die Steuereinheit 92 als Zusatzmaßnahme den Abbruchschalter für diesen Kanal der SAO-Platine für die als N1 bezeichnete Steuereinheit wieder öffnen. Dies deshalb, weil es (obwohl der Abbruchschalter hätte geöffnet werden sollen) trotzdem möglich sein könnte, daß die N1-SAO-Platine fehlerhaft zuviel Energie ins Feld senden könnte, obwohl die N1 Steuereinheit nicht mit der Steuereinheit 92 kommunizieren konnte und das N2-SAO anscheinend fähig ist, die Last zu treiben. Die Raute 1670 und der Block 1672 zeigen an, daß dieser Prozedur in dem Fall gefolgt wird, daß der N1-SAO richtig funktioniert und die N2-SAO-Platine als tot betrachtet wird (oder ihre Steuereinheit während dieses Prozeß-Steuer/Regel-Zyklus nicht mit der Steuereinheit 92 kommunizierte). In dem Fall, daß die Rauten 1652 und die 1654 beide mit JA beantwortet werden, wird der "dreifacher Abbruch"-Merker dieses Kanals gelöscht (Block 16741. Dieser Merker wird dazu verwendet zu ermöglichen, daß alle Abbruchschalter geschlossen werden, um einen Gesamtverlust der Energie zum Feld zu verhindern.
  • 20D zeigt, daß dieser Prozeß fortgeführt und wiederholt wird, bis alle fünf analogen Kanäle verarbeitet wurden. Ferner demonstrieren 20E– J in Kombination, daß dieser Prozeß in einer ähnlichen Art und Weise durchgeführt wird, wenn die SAO-Platine für die Steuereinheit 92 funktionsfähig ist, wobei die benachbarten SAO-Platinen funktionsfähig sein können oder nicht. Als Beispiel zeigt die Raute 1676 somit an, daß die Steuereinheit 92 das Vorhandensein ihres eigenen "OOCH ME = 0"-Merkers abtesten wird, wenn ihre Nachbarn nicht kommuniziert haben oder ihre SAO-Platine als tot betrachtet werden. Bei diesem Beispiel zeigt Block 1678 an, daß die richtige Menge an Energie/Leistung ins Feld übertragen wird, da die SAO-Platine für die Steuereinheit 92 sich nicht selbst auf einen nicht beitragenden Pegel (beispielsweise Ausgabe null) herabgefahren hat. Im Gegensatz dazu wird, wenn dieser SAO sich selbst außer Beitrag gefahren hat, dann der "unkontrollierte Energie ins Feld"-Merker gesetzt und werden durch die Steuereinheit 92 die N1- und N2-Abbruchschalter für diesen Kanal geöffnet, um zu gewährleisten, daß sie keine Energie ausgeben (Block 1680).
  • Ferner sollte vermerkt werden, daß eine JA-Antwort auf Raute 1682 in 20F anzeigt, daß die benachbarten Steuereinheit 94–96 unabhängig die notwendigen Abbruchentscheidungen (beispielsweise: öffne die Abbruchschalter für die SAO-Platine der Steuereinheit 92) handhaben, falls eine derartige Aktion durch den oben beschriebenen Prozeß autorisiert ist. Ferner zeigt eine NEIN-Antwort auf Raute 1684 von 20J, daß der "sichere Nichtübereinstimmung"-Merker gesetzt wird (Block 1686). Dies ist eine Situation, wenn alle SAO-Platinen funktionieren, Kommunikation sowohl von der N1- und der N2-Steuereinheit empfangen wurde, die SAO-Platine für die Steuereinheit 92 den "OOCH ME = 0"-Merker gesetzt hat und die anderen beiden SAO-Platinen ihre jeweiligen "OOCH ME = 0"-Merker nicht gesetzt haben. In dieser Situation wird der "sichere Nichtübereinstimmung"-Merker gesetzt, da die drei SAO-Platinen funktionieren, so daß es möglich ist, eine Mehrheitsentscheidung zu verwenden, um zu bestimmen, ob ein Abbruch geöffnet werden sollte. Der "sichere Nichtübereinstimmung"-Merker wird verwendet, um der "Abbruch-Nichtübereinstimmung"-Routine der 20K anzuzeigen, daß ein Problem aufgetreten ist. Wenn allerdings die Antwort auf Raute 1684 JA ist, wird die Steuereinheit 92 dann den N1-Abbruchschalter für diesen Kanal öffnen (Block 1688). Dies deshalb, da zwei SAO-Platinen (ME und N2) unabhängig bemerkt haben, daß die Ausgabe zum Feld zu hoch war und unabhängig ihre Ausgabe auf einen nicht beitragenden Pegel herabgezogen haben, die SAO-Platine für die N1-Steuereinheit aber nicht.
  • Es wird 20K Bezug genommen, in der ein Flußdiagramm für die "Handhabe Abbruch-Nichtübereinstimmungen"-Routine 1644 der 20B gezeigt ist. Diese Routine untersucht einen Zähler, der für jeden analogen Ausgabekanal etabliert ist, um die Anzahl von "sicheren Nichtübereinstimmungen" zwischen dem "OOCH ME = 0"-Merker der SAO-Platine dieser Steuereinheit und den anderen beiden funktionierenden SAO-Platinen aufzuzeigen. Wenn dieser Zählwert für einen der fünf analogen Ausgabekanäle zu hoch wird (beispielsweise 32 Dezimal), wird dann ein Abbruch-Nichtübereinstimmung-Fehler-Merker gesetzt (Block 1690). Dieser Fehlermerker wird verursachen, daß die Steuereinheit 92 ihre eigene SAO-Platine ausschaltet, da die Nichtübereinstimmung mit den benachbarten Platinen anzeigt, daß diese Platine nicht fähig sein würde, die Ausgabe zu treiben, wenn sie dies müßte (d. h. die Ausgabe würde zu niedrig sein). Die Raute 1692 und die Blöcke 1694–1696 zeigen an, daß nur fortwährende Nichtübereinstimmungen akkumuliert werden, um unangebrachte transiente Zustände zu eliminieren.
  • Es wird auf 20L Bezug genommen, in der ein Flußdiagramm für die "Aufräumen nach Abbrüchen"-Routine 1646 der 20B gezeigt ist. Diese Routine wird dazu verwendet, auf eine Situation zu reagieren, in der die Steuereinheit 92 darüber informiert wird, daß beide ihre benachbarten Steuereinheiten 94–96 die Abbruchschalter an einem der Kanäle für die SAO-Platine der Steuereinheit 92 geöffnet haben. Falls die Steuereinheit 92 ebenfalls die Abbruchschalter an diesem Kanal geöffnet hat, werden beide Abbruchschalter für diesen Kanal durch die Steuereinheit 92 geschlossen, so daß wenigstens eine der benachbarten SAO-Platinen fähig sein wird, Energie zum Feld zu übertragen (Block 1698). Falls die Steuereinheit 92 die Abbrüche auf dem Kanal nicht geöffnet hat, würde der SAO-Platine gesagt werden, sich auszuschalten/stillzulegen, da einer ihrer Kanäle abgebrochen wurde und die Platine für eine Reparatur entfernt werden müßte.
  • Es wird auf die 20M–20P Bezug genommen, in denen eine bevorzugte Form des nicht störenden Testverfahrens gezeigt ist. Diesbezüglich repräsentieren diese Flußdiagramme die "Wähle und Etabliere den N1-Test"-Routine 1606 der 20A. Die Raute 1700 zeigt, daß dieses Testen nur dann initiiert wird, wenn die den Test durchführende Steuereinheit fähig ist, mit beiden ihren Nachbarn zu kommunizieren und wenigstens eine der Steuereinheiten fähig war, innerhalb des letzten Prozeß-Steuer/Regel-Zyklus mit dem Prozeß-Steuer/Regel-Computer 14 zu kommunizieren. In gleicher Weise zeigt die Raute 1702 an, daß dann, wenn irgendwelche Fehler angetroffen wurden, die nicht störende Test-Prozedur umgangen wird, bis diese Fehler korrigiert sind.
  • Wie durch die Raute 1704 angezeigt ist, ist das nicht störende Testen derart zeitlich festgelegt, daß es gemäß einem Taktsignal vom Prozeß-Steuer/Regel-Computer 14 zu exakten Vielfachen von 5 Minuten anfängt. Diesbezüglich wird jede der Feldcomputereinheiten 12 jede Sekunde einen Synchronisationspuls sowohl vom linken als auch vom rechten Prozeß-Steuer/Regel-Computer 14a–14b empfangen. Die Steuereinheiten 92-96 stellen dann ihre Takte dementsprechend ein. Das nicht störende Testen verwendet dann diesen Takt, um einem speziell zeitlich festgelegten Schema zu folgen. Da es näherungsweise 1,5 Minuten braucht, damit eine der analogen Ausgabeschaltungen die Testroutine beendet, läßt das 5 Minuten-Intervall ausreichend Zeit, um das nicht störende Testen für alle analogen Ausgabeschaltungen 600–604 zu beenden. Diesbezüglich identifiziert die Tabelle unten die bevorzugten zeitlich festgelegten Operationen für das nicht störende Testen. Die "angezeigte Zeit", die auf der Tabelle aufgelistet ist, ist die Zeit, die auf der Austestkonsole 18 der Prozeß-Steuer/Regel-Computer 14a–14b visuell dargeboten wird. Jede der in dieser Tabelle identifizierten Testnummern entspricht einer speziellen, in den 20J–20M identifizierten Testprozedur.
  • Figure 01360001
  • Während jeder dieser 7 Tests unten diskutiert werden wird, können diese Tests wie folgt identifiziert werden. Auf Test # 1 kann als der "Rampdown"-Test (Herabfahr-Test) Bezug genommen werden, da die den Test durchführende Steuereinheit (bei diesem Beispiel die Steuereinheit 92) langsam ihren Beitrag zum analogen Ausgabestrom auf 0% des angewiesenen Ausgabewerts reduzieren wird. Die SAO-Platinen für die N1- und die N2-Steuereinheit werden reagieren, indem sie ihren Ausgabestrom vergrößern, um nach jeder Reduktion die richtige Ausgabe beizubehalten. Die SAO-Platine für die N1-Steuereinheit ist bevorzugt angewiesen, den Hauptteil der Ausgabe beizutragen. Diese Operation braucht im allgemeinen mehrere Sekunden. Falls während dieses Schrittes ein Fehler berichtet wird, wird die wahrscheinliche Ursache des Fehlers auf einem Kurzschließen der Blockierdiode 648 (in 12C gezeigt) beruhen.
  • Auf Test # 2 kann als der "Erzeuge Testspannung"-Test Bezug genommen werden, da die SAO-Platine für die Steuereinheit 92 instruiert werden wird, eine Spannung auszugeben, die nicht groß genug ist, um den zum Feld übertragenen Strom zu beeinflussen. Mit anderen Worten: Die Testspannung sollte niedriger als die Schwelle der Blockierdiode 648 (beispielsweise 400 mV) gesetzt werden. Falls während dieses Schritts ein Fehler berichtet wird, wird die voraussichtliche Ursache des Fehlers auf der Unfähigkeit des Operationsverstärkers 608 beruhen, den gewünschten Testspannungspegel auszugeben.
  • Auf Test # 3 kann als der "ME Abgebrochen"- Test ("ICH Abgebrochen"-Test) Bezug genommen werden, da der DN 1- und der DN2-Abbruchschalter angewiesen werden, offen zu sein. Die SAO-Platine für die Steuereinheit 92 wird ihre Ausgabe auf der Hochpegelseite des ME-Widerstands 618 bezüglich Masse messen, um zu bestimmen, ob die Ausgabe tatsächlich 0 Volt beträgt. Diesbezüglich sollte vermerkt werden, daß es bei allen diesen Tests bevorzugt ist, daß jeder der fünf Kanäle gleichzeitig getestet wird. Dementsprechend werden unter Test # 3 alle analogen Ausgabekanäle auf der SAO-Platine für die Steuereinheit 92 abgebrochen.
  • Auf Test # 4 kann als der "N2 Abbruchschalter"-Test, da der DN2-Abbruchschalter geschlossen werden wird, während der DN 1-Abbruchschalter geöffnet ist. Die SAO-Platine für die Steuereinheit 92 wird dann ihre Ausgabe auf der Hochpegelseite des ME-Widerstands 618 bezüglich Masse messen, um zu bestimmen, ob die Abbruchtestspannung (beispielsweise 400 mV) am Ausgang für jeden ihrer Kanäle vorhanden ist.
  • Der Test # 5 ist ein Test der Totmann-Schaltungsanordnung. Er beginnt, indem Test # 3 wiederholt wird, um zu gewährleisten, daß die Abbrüche DN1 und DN2 geöffnet wurden. Dann wird die Totmann-Schaltungsanordnung aktiviert, wird eine Spannung ausgegeben, um die Aktivierung der Totmann-Schaltungsanordnung zu erfassen, und es wird dann eine Bestimmung gemacht, ob die Totmann-Schaltungsanordnung aktiviert wurde. Test # 6 ist eine Wiederholung von Test # 4 mit der Ausnahme, daß der DN2-Abbruchschalter offen ist, während der DN 1-Abbruchschalter geschlossen wird.
  • Auf Test # 7 kann als der "ME 100% Last"-Test ("ICH 100% Last"-Test) Bezug genommen werden, da die SAO-Platine für die Steuereinheit 92 schließlich angewiesen wird, 100% des angewiesenen Ausgabewerts an das Feld zu treiben. Dementsprechend werden die DN1- und DN2-Abbruchschalter geschlossen sein und werden die SAO-Platinen für die N1- und die N2-Steuereinheit langsam auf 0% herunterfahren. Die SAO-Platine für die Steuereinheit 92 wird dann die Ausgabe für jeden Kanal über die ME-Widerstände 624 messen, um zu gewährleisten, daß die SAO-Platine die Fähigkeit hat, den benötigten Ausgabewert ohne jegliche Hilfe von einem ihrer Nachbarn zu treiben.
  • Wenden wir uns wieder 20M zu. Der Block 1706 zeigt an, daß die Testzeit jedesmal, daß diese Prozedur wiederholt wird, um eine Sekunde vergrößert wird. Diese Zeitzählung oder dieser Wert wird dann durch eine Reihe von Rauten 1708–1724 ausgewertet angesichts der Tatsache, daß die sieben Tests für jede der drei Steuereinheiten 92–96 dem in der obigen Tabelle ausgeführten Zeitdiagramm folgen. Ferner sollte vermerkt werden, daß in den Flußdiagrammen der 20M–20P eine Zweiziffer-Nomenklatur verwendet wird, um die nicht störenden ("NI") Tests zu identifizieren. Die erste Ziffer bezieht sich auf die Identität der den NI-Test durchführenden Steuereinheit, während sich die zweite Ziffer auf die spezielle Testnummer bezieht. Diesbezüglich ist die erste Ziffer entweder "0", "1", "2" oder "x". Die "0"-Ziffer bezieht sich auf die ME-Steuereinheit; dies ist bei diesem Beispiel die Steuereinheit 92. Die "1"- und die "2"-Ziffer beziehen sich auf die N1- bzw. die N2-Steuereinheit. Die "x"-Ziffer ist essentielle ein Stellvertreterzeichen, das sich auf jede der Steuereinheiten 92-96 beziehen könnte. Ferner kann die "x"-Bezeichnung auch als ein Stellvertreterzeichen für die Testnummernziffer verwendet werden.
  • Wenn die Testzeit zwischen 0 und 35 Sekunden beträgt, wird die Steuereinheit somit die Auswahl des ersten Tests (d. h. Tests #1) erlauben, wie durch die "x1"-Nomenklatur angedeutet ist (Block 1726). Der die NI-Testprozedur durchführende Steuereinheit wird dann als nächstes eine Überprüfung durchführen, um zu sehen, ob es sich um die linke oder die mittlere Steuereinheit handelt (Rauten 1728–1730). Bei diesem Beispiel wird die Antwort auf die Raute 1728 JA sein, und das Programm wird zu Block 1732 der 20P gehen. Der Block 1732 ermöglicht, daß die SAO-Platine für die Steuereinheit 92 eine "Ox"-Testnummer wählt, welche an diesem Punkt in der Prozedur "x" zuvor als Test # 1 identifiziert war. Da diese NI-Testprozedur ebenfalls unabhängig, aber gleichzeitig in den anderen Steuereinheiten 94–96 durchgeführt wird, wird das Programm für jede dieser Steuereinheiten zu Punkten "C" bzw. "D" der 20P springen. Diesbezüglich sollte gewürdigt werden, daß die Punkte "C" und "D" Eintrittspunkte für andere Teile des N1-Testprogramms liefern. Somit werden beispielsweise die Rauten 1734–1738 dazu verwendet, den Programmfluß in Abhängigkeit davon, welcher Test momentan ausgewählt ist, zu verschiedenen Prozeduren zu richten. Im Falle der Tests # 3–# 5 muß die rechte Steuereinheit 96 die Abbruchschalter für ihren Nachbar N2 (d. h. die Steuereinheit 92) öffnen, unter der Voraussetzung, daß die Kanäle der Steuereinheit 92 fähig waren, wie nach Test # 1 erforderlich herunterzufahren (Block 1740). In dem Fall des Tests # 6 wird die rechte Steuereinheit die Abbruchschalter für jeden der Kanäle auf der SAO-Platine für die Steuereinheit 92 schließen (Block 1742).
  • Schließlich zeigt Block 1744 an, daß die NI-Testnummer der letzten Sekunde und die Testnummer dieser Sekunde gespeichert werden. Während des nächsten Prozeß-Steuer/Regel-Zyklus, der bei diesem Beispiel eine Periode von einer Sekunde ist, wird dann die NI-Testprozedur der 20M–20P wiederholt. Auf diese Art und Weise wird jede der Steuereinheiten 92–96 die auf den SAO-Platinen durchgeführten NI-Tests leiten. Ferner sollte gewürdigt werden, daß diese Steuereinheiten auch miteinander kooperieren, indem Abbruchschalter hin- und hergeschaltet werden und herabgefahren/heraufgefahren wird, wie durch die spezielle durchgeführte Testnummer erforderlich ist. Diese Kooperation wird durch das oben ausgeführte Zeitdiagramm geliefert, da jede der Steuereinheiten unabhängig das gleiche Testprozedurprogramm durchführt. Mit anderen Worten ist es nicht notwendig, daß eine Steuereinheit eine andere Steuereinheit auffordert oder anweist, die notwendige Aktion durchzuführen. Jede der Steuereinheiten 92–96 wird vielmehr auf die gleiche Zeit schauen und die angemessene Aktion unternehmen, sofern nicht eine der in den Rauten 1700–1702 ausgeführten Problemzuständen erfaßt wird.
  • Es wird auf die 20Q–20S Bezug genommen, in denen das Flußdiagramm für die "Kommuniziere mit der SAO-Platine"-Routine 1608 der 20A gezeigt ist. Diese Routine wird dazu verwendet, die bidirektionale Kommunikation zwischen einer Steuereinheit und ihrer SAO-Platine zu vereinfachen. Diesbezüglich wird auf einen ersten Datenaustausch zwischen der Steuereinheit und ihrer SAO-Platine als "primäre" Kommunikation Bezug genommen (beispielsweise NI-Testanweisungen und Ausgabewerte). Umgekehrt wird auf jeden folgenden Datenaustausch zwischen der SAO-Platine und ihrer Steuereinheit als eine "sekundäre" Kommunikation Bezug genommen (beispielsweise Verfolgungswerte). Dementsprechend zeigt 20Q zwei Eintrittspunkte, einen für die primäre Kommunikation (Oval 1746) und einen für die sekundäre Kommunikation (Oval 1748).
  • 20Q zeigt mehrere Kommunikationsetablierblöcke, die aufeinanderfolgend durchgeführt werden. Diesbezüglich sollte vermerkt werden, daß der Etablierblock 1750 eine anfängliche Aufwachmitteilung zu der SAO-Platine liefert, auf welche die SAO-Platine innerhalb einer speziellen Zeitüberschreitungsperiode antworten muß. Falls die SAO-Platine richtig antwortet, werden dann Daten mit der SAO-Platine ausgetauscht (Block 17521. Falls die Gültigkeitsüberprüfung negativ ist (beispielsweise eine unkorrekte Prüfsumme), werden dann die angemessenen Schlechte-Kommunikation-Merker gesetzt (Block 1754–1756). Ferner werden alle Analogausgabe-Verfolgungs-("AOT")-Werte auf null gesetzt, um zu verhindern, daß alte Daten in den Datentabellen bleiben, und um hierdurch zu verhindern, daß ein Techniker die alten Daten fehlinterpretiert.
  • 20R zeigt, daß die angemessenen Statusinformationen und Werte in Abhängigkeit davon gespeichert werden, ob die Mitteilung eine primäre oder sekundäre Kommunikation war (Blöcke 1758–1760). Ferner wird die Raute 1762 dazu verwendet, eine Überprüfung auf jegliche Fehler beim nicht störenden Testen durchzuführen. Die Steuereinheit, wie etwa die Steuereinheit 92, wird reagieren, indem sie einen Merker setzt, der zu ihren benachbarten Steuereinheiten übertragen wird, um die NI-Testprozedur entweder zu stoppen oder fortzuführen (Blöcke 1764–1766). Ungeachtet dieses Ergebnisses wird für die SAO-Platine der Steuereinheit 92 ein Merker gesetzt, um anzuzeigen, daß jeglicher Testfehler ein falscher Alarm ist (Block 1768). Wie unten gesehen werden wird, kann dieser Merker während eines späteren Teils dieser Prozedur gelöscht werden.
  • Die Steuereinheit 92 wird dann anfangen, die NI-Test-Fehlerzähler für jeden der fünf analogen Ausgabekanäle zu untersuchen (Block 1770). Falls der in der letzten Sekunde durchgeführte NI-Test nicht Test # 1 oder Test # 7 war, wird der NI-Test-Zähler dann erhöht oder erniedrigt in Abhängigkeit davon, ob durch die SAO-Platine ein Testfehler berichtet wurde (Blöcke 1772–1774). Falls ein Testfehler berichtet wurde und der Testfehlerzähler eine vorbestimmte Grenze (beispielsweise 30 Hex) überschreitet, wird dann ein Merker zu den benachbarten Steuereinheiten gesendet, um das Testen anzuhalten, und der "falscher Alarm"-Merker wird gelöscht (Blöcke 1776– 1778). Diesbezüglich sollte gewürdigt werden, daß die NI-Testprozedur ermöglichen wird, daß ein transienter Fehler berichtet wird, bevor eine Entscheidung zum Anhalten der NI-Testprozedur fällt.
  • 20S zeigt, daß die Steuereinheit 92 wiederum eine Überprüfung auf ein Versagen eines NI-Tests durchführen wird (Raute 1780). Dies wird getan, da der "Testfehler"-Merker gelöscht wird, falls ein NI-Testfehler auftrat, der Testfehlerzähler aber nicht die vorbestimmte Grenze überschritt. Falls ein derartiger Fehler erfaßt wird, wird der Falscher-Alarm-Merker dann gelöscht, und die SAO-Platine für die Steuereinheit 92 wird instruiert, sich auszuschalten (Block 17821. Diese Prozedur wird dann für jeden der analogen Ausgabekanäle wiederholt (Block 1784 und Raute 17861. Ein NI-Testreport wird auch erzeugt, wenn ein neuer Fehler erfaßt wird (Block 1788).
  • Es wird auf die 20T–20U Bezug genommen, die das Flußdiagramm für die "Handhabe-Fehler"-Routine 1610 der 20A zeigen. Diese Routine fängt mit einer Überprüfung an, um zu sehen, ob während des letzten Prozeß-Steuer/Regel-Zyklus eine SAO-Platine ersetzt wurde, und sie schreitet dann fort, um auch andere Gesundheitsanzeichen zu überprüfen (Rauten 1790–1798). Falls der Statusreport einen Fehler anzeigt oder die Steuereinheit keine Kommunikation von ihrer SAO-Platine empfangen konnte, wird die SAO-Platine dann als tot markiert und die Steuereinheit wird von ihren benachbarten Steuereinheiten verlangen, die Abbruchschalter für diese SAO-Platine zu öffnen (Block 1800 von 20U). Wenn allerdings die SAO-Platine dahingehend markiert war, daß sie für den letzten Prozeß-Steuer/Regel-Zyklus lebend war, wird die Fehlerhandhabungsroutine dann auf die Daten von jedem der analogen Eingabekanäle schauen (Block 18101.
  • Die Raute 1812 untersucht den Wert eines "Wiederherstellungs"-Zählers, der dazu verwendet wird, dem System Zeit zur Resynchronisation zu geben, wenn die Steuereinheit 92 nicht mit ihren beiden benachbarten Steuereinheiten kommunizieren kann (siehe Raute 1814 und Block 1816 von 20U). Wenn der Wiederherstellungszählwert nicht null ist, wird dann das "OOCH ME = 0"-Statusbyte gelöscht, um zu verhindern, daß ein Abbruch geöffnet wird, während das System synchronisiert wird (Block 1818). Falls ein Testfehler auf einem der analogen Ausgabekanäle erfaßt wird, wird das NI-Testen angehalten (Block 1820). Falls ein "OAT <> DAC"-Fehler signalisiert wurde, wird dann eine Abbruchanforderungen zu den benachbarten Steuereinheiten 94–96 für den speziellen Kanal unter Untersuchung übertragen (Block 1822). Dies deshalb, weil der "OAT <> DAC"-Fehler bedeutet, daß der Operationsverstärker 608 der SAO-Platine auf diesem Kanal nicht richtig funktioniert.
  • 20U zeigt ferner, daß ein "Wiederholversuch"-Zähler verwendet wird, um eine Situation zu handhaben, bei der die Kommunikation von der Steuereinheit zu ihrer SAO-Platine nicht perfekt ist (Raute 1824). Falls der Wiederholversuch-Zähler größer als ein vorbestimmter Wert ist (beispielsweise 5), wird die Steuereinheit dann ein Hardware-Rücksetzen der SAO-Platine verursachen, in einem Versuch, das Problem zu korrigieren (Block 1826). Mit anderen Worten wird der Schlechte-Kommunikation-Merker von Block 1754 der 20Q dazu verwendet, der Steuereinheit zu ermöglichen, daß sie das Auftreten eines Kommunikationsproblems mit ihrer SAO-Platine verfolgt, und die Steuereinheit wird nach einer ausreichenden Anzahl von Versuchen den Mikroprozessor EU3 der SAO-Platine zurückzusetzen, in einem Versuch, gültige Kommunikation wiederherzustellen.
  • Es wird auf 20V Bezug genommen, in der das Flußdiagramm für die "Sende Abbruchpositionen zur Hardware"-Routine 1612 der 20A gezeigt ist. Diese Routine untersucht die Abbruchentscheidungsinformation für jeden der analogen Ausgabekanäle und reagiert, indem sie jeden der Abbruchschalter für ihre benachbarten Steuereinheiten öffnet oder schließt (Blöcke 1828–1830). Es sollte ferner vermerkt werden, daß die Steuereinheit auf den geschlichteten analogen Ausgabewert, der zum Feld zu senden ist, schauen wird (Raute 1832). Falls der Ausgabewert für irgend einen der analogen Ausgabekanäle null ist, wird die Steuereinheit 92 dann einen Merken zu ihren benachbarten Steuereinheiten senden, um die Abbruchschalter auf ihrer SAO-Platine für diese Kanäle zu öffnen (1834).
  • Es wird auf 21A–21S Bezug genommen, in denen ein Satz von Flußdiagrammen für die auf den SAO-Platinen residente Software gezeigt ist. Zusätzliche Flußdiagramme für die SAO-Platinen-Software wird ferner in Verbindung mit den 22A–22S und 23A–23I diskutiert. Die 21A–21B liefern ein Gesamt- oder Hauptflußdiagramm 1900 für die SAO-Platinen-Software. Wie aus der obigen Diskussion gewürdigt werden sollte, ist diese Software in der Programmspeicherschaltung EU1 jeder der SAO-Schaltungsplatinen 600–604 enthalten.
  • Das Flußdiagramm 1900 beginnt mit einem Ruf zu einer Hochfahrroutine 1902, die in den 21C–21D gezeigt ist. Bevorzugt wird der Mikroprozessor EU3 der SAO-Platine das Software-Versionsniveau aus dem Speicher lesen (Block 1904) und fortfahren, die Hardware-Komponenten für die SAO-Platine zu testen (Block 1906). Diese Hardware-Testroutine ist in den 21E–21K gezeigt. Der SAO-Mikroprozessor wird dann eine Überprüfung durchführen, um zu sehen, ob ein Totmann-Zustand vorliegt (Raute 1908). Ein Totmann-Zustand könnte vorliegen, falls die Steuereinheit 100 herunterfährt, der Mikroprozessor auf der SAO-Platine herunterfährt oder wenn die SAO-Platine sich selbst für diagnostische Testzwecke in einen Totmann-Zustand versetzt. Falls ein Totmann-Zustand vorliegt, werden dann alle analogen Ausgabekanäle auf null gesetzt (Block 1910), und das Programm wird zum Warmstartpunkt in der Hochfahrroutine 1902 der 21C springen, sofern die SAO-Platine nicht momentan ihr Vermögen testet, den Operationsverstärker 608 zu sperren. Wenn es auch in 21A der Einfachheit wegen nicht gezeigt ist, kann an diesem Punkt eine Überprüfung durchgeführt werden, um zu bestimmen, ob die SAO-Platine momentan ihr Totmann-Vermögen testet. Dieser Totmann-Test wird unten in Verbindung mit den 23E–23G beschrieben. Falls die SAO-Platine das Totmann-Vermögen testet, wird der Totmann-Test dann wiederholt durchgeführt (zum Beispiel 30 mal), bevor sie zu einer angemessenen Stelle im Flußdiagramm 1900, wie etwa der Block 1904, zurückkehrt.
  • 21A zeigt ferner, daß die SAO-Platine neu gestartet werden kann, falls von einem internen Zeitglied des SAO-Mikroprozessors zuviele Interrupts empfangen werden (Raute 1912). Diese zeitlich bestimmten Interrupts stellen einen Weg bereit, um dem SAO-Mikroprozessor die Bestimmung zu ermöglichen, ob innerhalb einer angemessenen Zeitperiode eine Kommunikation von der Steuereinheit für diese SAO-Platine empfangen worden ist.
  • Unter der Annahme, daß die SAO-Platine "lebend" ist, wird der SAO-Mikroprozessor das "DEADSET"-Signal signalisieren (Block 1914) und die Kommunikationsroutine rufen (Block 1916). Die Kommunikationsroutine ist in 21M gezeigt. Nach dieser Kommunikationsroutine wird dann eine Testroutine gerufen (Block 1918). Die Testroutine 1918 ist in 21L gezeigt. Es wird dann eine Routine durchgeführt, um Rückführungsdaten vom Feld aufzunehmen (Block 1920). Diese Lies-Daten-Routine ist in den 21N–21Q gezeigt. Als nächstes wird eine Handhabe-Fehler-Zustände-Routine 1922 der 21R durchgeführt. Das Programm wird dann zu einer "Berechne die Ausgabe"-Routine 1924 fortschreiten, die zusammen in den 22A–22S gezeigt ist. Hiernach wird die nicht störende Testroutine 1926 durchgeführt. Die NI-Test-Routine ist zusammen in den 23A–23I gezeigt.
  • Nachdem alle diese Schritte durchgeführt sind, wird der SAO-Mikroprozessor dann zum nächsten zu bedienenden Kanal zeigen (Block 1928) und die Prozedur wiederholen, bis alle fünf analogen Ausgabekanäle erledigt sind (Raute 1930). Der SAO-Mikroprozessor wird dann seine Aufzeichnung von "fünf Kanalzyklen" seit der letzten Kommunikation von seiner Steuereinheit, wie etwa die Steuereinheit 92, aktualisieren (Block 1932) und dann bestimmen, ob es der angemessene Zeitpunkt ist, die Feldschleifen zu überprüfen (Block 1934). Die Routine zum Überprüfen der Feldschleifen (beispielsweise Messen der Feldschleifenwiderstandswerte) ist in 21S gezeigt (Block 1936). In jedem Fall wird das Hauptprogramm für die SAO-Platine schließlich zum Anfang zurückspringen, damit das Programm fortwährend wiederholt wird. Es sollte somit gewürdigt werden, daß in jedem Prozeß-Steuer/Regel-Zyklus (beispielsweise 1 Sekunde) die Feldschleifen gemessen und die Hardware getestet wird.
  • Es wird auf die 21C–21D Bezug genommen, in denen das Flußdiagramm für die Hochfahrroutine 1902 gezeigt ist. Die rote LED wird angeschaltet, um anzuzeigen, daß die SAO-Platinen-Hardware nicht fertig ist, Energie ins Feld zu senden, da eine Reihe von Tests durchgeführt werden wird (Block 1938). Diesbezüglich bezieht sich der erste Test auf den Datenspeicher für die SAO-Platine (Block 1940). Dieser Test ist ähnlich zu dem unten beschriebenen Speichertest für den Datenspeicher der Steuereinheit. Dann wird aufgrund der Tatsache, daß die SAO-Platine in einen Kaltstart eintritt, ein Zähler, der die Anzahl von durch die SAO-Platine ausgeführten Prozeßzyklen verfolgt, auf "01" gesetzt, um zu ermöglichen, daß die Hardware-Testroutine richtig funktioniert (Block 1942).
  • Dann wird, wie in den 21C–21D gezeigt ist, eine Hardware-Testroutine an vier verschiedenen Punkten während der Hochfahrroutine durchgeführt (Blöcke 1944–1950). Diese Hardware-Testroutine ist gemeinsam in den 21E–21K gezeigt. Diesbezüglich sollte vermerkt werden, daß das wiederholte Testen der Hardware-Komponenten für die SAO-Platine nicht notwendig ist. Diese Testroutine wird vielmehr während freien Zeiten als eine Extramaßnahme durchgeführt, um das Niveau des Vertrauens in das endgültige Funktionieren der SAO-Platine zu vergrößern. Somit wird beispielsweise die Hardware-Testroutine zwischen Zeiten durchgeführt, an denen die Steuereinheit versucht, mit der SAO-Platine zu kommunizieren (Raute 1952–1954). Wie oben angedeutet, wird die Steuereinheit zweimal mit der SAO-Platine kommunizieren (Blöcke 19561958), um Timing-Information, Ausgabewerte zu senden und zu gewährleisten, daß die Steuereinheit/SAO-Kommunikationsverbindung richtig funktioniert. Schließlich wird die rote LED ausgeschaltet (Block 1960) und wird der Totmannzeitgeber zurückgesetzt (1962).
  • Wenden wir uns den 21E–21G zu, in denen ein Gesamtflußdiagramm 1906 für die Hardware-Testroutine gezeigt ist. Unter der Annahme, daß dies der erste Zyklus für die SAO-Platine ist, wird der SAO-Mikroprozessor dann über die Multiplexer EU23–EU26, die in 12F gezeigt sind, die "0 Volt"-Eingabe zum Differentialverstärker 638 lesen (Block 1968). Dann wird eine Überprüfung durchgeführt, um zu bestimmen, ob die gelesene Spannung innerhalb der Spezifikationen liegt oder nicht (Raute 1970). Falls diese Spannung außerhalb des richtigen Spezifikationspegels liegt, wird dann eine Routine durchgeführt, um ein Analog-zu-Digital-Problem zu signalisieren (Block 1972). Die "Signalisiere ADC-Problem"-Routine ist in 21H gezeigt. Der SAO-Mikroprozessor wird dann das auf 12B als eine Eingabe zum Multiplexer EU24 gezeigte "1/8-Referenz"-Signal lesen (Block 1974). Dieser Spannungssignalpegel (beispielsweise 0,275 Volt) wird zur Verwendung während der Berechne-Steigung-Routine der 21J–21K gespeichert (Block 19761. Dann wird eine Überprüfung durchgeführt, um zu bestimmen, ob dieses Spannungssignal innerhalb der Spezifikationen liegt oder nicht (Raute 1978). Diesbezüglich wird der durch den Differentialverstärker 638 für das "1/8-Referenz"-Signal erzeugte Wert gegen einen vorbestimmten Bereich (beispielsweise 1,25 Volt +/– 0,078 Volt) getestet. Eine ähnliche Prozedur ist auch für das "1/2-Referenz"-Signal (beispielsweise 1,10 Volt) implementiert.
  • Dann wird der SAO-Mikroprozessor, wie in 21F gezeigt ist, den Digital-zu-Analog-Wandler ("DAC") G12 veranlassen, eine Reihe von verschiedenen Spannungspegeln auszugeben (Blöcke 1980–1986), und er wird dann die tatsächliche Ausgabe vom DAC durch den Analog-zu-Digital-Wandler ("ADC") 642 überprüfen (Rauten 1988–1994). Falls bestimmt wird, daß irgendeiner dieser Spannungspegel außerhalb der Spezifikationen liegt, wird dann die "Signalisiere DAC-Problem"-Routine 1996 durchgeführt. Wie in den 21N und 21I gezeigt, erhöhen oder erniedrigen beide Routinen, die "Signalisiere ADC-Problem"-Routine 1972 und die "Signalisiere DAC-Problem"-Routine 1996, einen Problemzähler nach Notwendigkeit (Blöcke 1998–2000). Ferner kann eine oder können beide dieser Signalisierroutinen veranlassen, daß die rote LED AN-schaltet, falls die Problemzählung eine vorbestimmte Grenze überschreitet (Raute 2002 und Block 2004). Dann wird, wie in 21G gezeigt ist, dieser Problemzähler ausgewertet (Rauten 2006–2010), und der Problemzähler wird erniedrigt, wenn während dieses Durchgangs durch die Hardware-Testroutine kein Problem erfaßt wurde (Block 2012). Sobald dieser Problemzähler größer als Dezimal 2 ist, wird die rote LED AN-geschaltet, und die SAO-Platine schaltet aus. Eine ähnliche Prozedur könnte auch implementiert sein, um, wie für den DAC-Test durchgeführt, den Operationsverstärker 608 zu testen. Somit könnte beispielsweise der DAC 612 instruiert werden, eine vorbestimmte Spannung (beispielsweise 2,2 Volt) auszugeben, und es könnten dann die OUT-H- und OUT-L-Signale gelesen werden, um zu sehen, ob diese Signale innerhalb der Spezifikationen lagen.
  • Es wird auf die 21J–21K Bezug genommen, die ein selbsterklärendes Flußdiagramm für die Berechne-Steigung-Routine 1976 zeigen. Wie aus dem Flußdiagramm gesehen werden wird, ermittelt diese Routine die Steigung einer zwischen dem 1/2- und 1/8 Referenzsignalpegel erzeugten künstlichen Linie und ist wirksam, die gespeicherten Steigungs- und Achsabschnittswerte einzeln einzustellen (bei jedem Durchgang durch die Routine), bis Gleichheit mit den gemessenen Werten besteht. Die durch diese Routine erzeugten Werte werden dazu verwendet, die Feldmessungen hinsichtlich durch die analoge Schaltungsanordnung eingeführten Versatz- und Verstärkungsfehlern zu korrigieren.
  • Es wird auf 21L Bezug genommen, in der ein Flußdiagramm der Testroutine 1918 in 21A gezeigt ist. Diese Routine erfaßt, ob die SAO-Platine in eine Testvorrichtung anstelle der Feldcomputereinheit 12 selbst eingesteckt ist (Raute 2014). Falls die SAO-Platine in die Testvorrichtung eingesteckt ist, wird dann ein Satz vordefinierter Ausgabewerte dazu verwendet; die Funktion der SAO-Platine zu testen (Block 2016).
  • Es wird auf 21M Bezug genommen, in der ein Flußdiagramm der Kommunikationsroutine 1916 der 21A gezeigt ist. Obwohl dieses Flußdiagramm ebenfalls selbsterklärend ist, sollte vermerkt werden, daß die Überwachungs-Interrupts, auf die in Raute 1912 von 21A Bezug genommen wird, ausgeschaltet werden (Block 218) und während dieser Routine nachfolgend zurückgesetzt werden (2020).
  • Es wird auf 21N Bezug genommen, in der ein Flußdiagramm der Lese-Daten-Routine 1920 von 21A gezeigt ist. Der ADC-Wandler-Steuerblock 2012 dieser Routine ist als eigenes Flußdiagramm in 21O gezeigt. Diesbezüglich sollte gewürdigt werden, daß der SAO-Mikroprozessor für die Differentialeingabe-Multiplexer EU25–EU26 und die Wandlereingabe-Multiplexer EU23–EU24 eine spezielle Eingabesignalwahl anweisen muß. Die Lese-Daten-Routine wird dann zur Linearisierroutine 2024 der 21P fortschreiten. Wie in 21B gezeigt, wird der von der Berechne-Steigung-Routine bestimmte Steigungswert ausgewertet (Raute 2026). Falls der Steigungswert größer als eins ist, wird dann dieser Steigungswert mit dem angewiesenen Ausgabewert verglichen (Raute 2028). Falls der Ausgabewert größer als das Doppelte der Steigung ist, wird dann die Linearisierroutine beendet, da eine Linearisierung der Daten einen Überlauf in der Mathematik verursachen wird. Andernfalls wird eine Berechnung durchgeführt, wie in Block 2030 gezeigt. Der Zweck dieser Berechnung ist, die gemessenen Spannungen hinsichtlich Versatz- und Verstärkungsfehlern zu korrigieren, die durch die analoge Schaltungsanordnung eingeführt sind.
  • Sobald die Linearisierroutine 2024 beendet ist, wird die Lese-Daten-Routine 1920 zur "Filter den Verfolgungswert"-Routine 2023 der 21Q fortschreiten. Diese Routine fängt an, indem sie den neu gemessenen Verfolgungswert und den Verfolgungswert, der aus der auf diesem Kanal in den letzten fünf Kanalzyklen durchgeführten Berechnung gespeichert ist, vergleicht (Block 2034 und Raute 2036). Falls der Absolutwert der Differenz zwischen dem neuen und dem alten Verfolgungswert eine erste vorbestimmte Größe überschreitet, wird der alte Verfolgungswert vollständig durch den neuen Verfolgungswert ersetzt, um die Reaktion der SAO-Platine bei ihrer Bemühung, den angewiesenen Ausgabewert zu erreichen, zu beschleunigen (Block 2038). Falls der Absolutwert dieser Differenz im Verfolgungswert kleiner als die erste vorbestimmte Größe ist, wird dann eine Überprüfung durchgeführt, um zu sehen, ob diese Differenz kleiner als eine kleinere, vorbestimmte zweite Größe ist (Raute 2040). Das Ergebnis dieser Entscheidung bestimmt, ob der Instabile-Verfolgung-Merker gesetzt wird. Auf jeden Fall wird der Differenzwert durch vier geteilt (Block 20421, und ein Teil dieses geteilten Differenzwerts wird zu dem alten Verfolgungswert zuaddiert oder von diesem abgezogen, in Abhängigkeit davon, ob der Differenzwert positiv oder negativ war (Raute 2044 und Blöcke 2046, 2048). Diese proportionale Änderung im gespeicherten Verfolgungswert filtert das meiste des auf dem Verfolgungssignal gefundenen Rauschens heraus.
  • Die Lies-Daten-Routine 21N wird dann die Multiplexer EU25–EU26 auf die ME-Widerstand-Hochpegel (High)/Niederpegel (Low)-Werte weisen lassen und diese Werte lesen und speichern (Block 2050). Eine ähnliche Operation wird dann über den Multiplexer 640 für die OAT-Werte durchgeführt (Block 20521.
  • Es wird auf 21R Bezug genommen, in der ein Flußdiagramm für die "Handhabe-Fehlerzustände"-Routine 1922 der 21B gezeigt ist. Dieses selbsterklärende Flußdiagramm demonstriert, wie der "Rote LED"-Merker gesetzt wird und dazu verwendet wird, daß der DAC herunterfährt (Block 2054). Diesbezüglich wird die "Fahr DAC Herunter"-Routine 2054 in Verbindung mit 22I diskutiert werden. In gleicher Weise wird die "Sende den DAC zum Feld"-Routine 2056 in Verbindung mit 22O diskutiert werden.
  • Es wird 21S Bezug genommen, in der ein Flußdiagramm für die "Überprüfe die Feldschleifen"-Routine 1936 der 21B gezeigt ist. Wie aus diesem Flußdiagramm gesehen werden wird, wird der SAO-Mikroprozessor für jeden der analogen Ausgabekanäle das tatsächliche Ausgabesignal messen und die identifizierten Überprüfungen in Bezug auf die Größe dieses Signals durchführen (Rauten 2058–2062). Falls das zum Feld gesendete Signal außerhalb einer dieser Testgrenzen liegt, wird dann der angemessene Merker gesetzt oder für eine weitere Verarbeitung bewahrt (Blöcke 2064–2068). Diese Tests nehmen an, daß die Feldlast durch einen Widerstand in Reihe mit einer Induktivität modelliert ist und daß die getriebene Last zwischen 50 und 470 Ohm (+/–30 Ohm) liegt. Beispielsweise vergleichen die Rauten 2060 und 2062 somit die Messung von der Niederpegelseite des Verfolgungswiderstandes bezüglich Masse mit den maximal und minimal akzeptablen Spannungen für diesen Ausgabewert. Allerdings sollte vermerkt werden, daß die Schleifenwiderstandüberprüfung nicht durchgeführt wird, falls der Ausgabewert (Block 2058) für diesen Kanal unterhalb von 2 mA liegt, da die gegenwärtige Hardware verhindert, daß das Signal zuverlässig gelesen wird, wenn der Ausgabewert unterhalb dieser Größe liegt.
  • Es sollte auch vermerkt werden, daß bevorzugt ein 100 Ohm-PTC-Widerstand in Reihe zwischen der Niederpegelseite des Verfolgungswiderstands 624 und der Feldschleife angeschlossen ist. Die maximal und minimal akzeptablen Messungen bei voller Skala (beispielsweise 22 mA) können somit aus den folgenden Formeln berechnet werden: Vmax = (Rmax + Pptc) * (22 mA), wobei Rmax = 470 Ohm Vmin = (Rmim + Rptc) * (22 mA), wobei Rmim = 50 Ohm.
  • Es sollte gewürdigt werden, daß unter Verwendung dieser Formeln die maximalen und minimalen Spannungspegel, die durch die Rauten 2060– 2062 verwendet werden, für jeden gewünschten Ausgabewert (in mA) berechnet werden können. Der durch die Feldschleifenroutine 1936 verwendete Test ist also speziell auf den durch die Steuereinheit für die SAO-Platine angewiesenen Ausgabewert zugeschnitten.
  • Es wird auf 22A Bezug genommen, in der ein Gesamtflußdiagramm für die "Berechne die Ausgabe"-Routine 1924 von 21B gezeigt ist. Diese Ausgabe-Steuer/Regel-Routine liefert eine intelligente PI-Regelungsschleife, wie aus der Beschreibung unten gesehen werden wird. Die Ausgabe-Steuer/Regel-Routine enthält eine Initialisierroutine 2100, die in 22B gezeigt ist. Diesbezüglich zeigt 22B, daß eine anfängliche Auswertung des angewiesenen Ausgabewerts durchgeführt wird (Raute 2102). Falls der Ausgabewert nahezu 100% des maximal zulässigen Werts beträgt, wird die Ausgabe für den verarbeiteten Kanal auf einen Pegel gerade unterhalb dieses Maximalwerts gezwungen (Block 2104). Dies wird derart durchgeführt, daß ein Ausgabewert oberhalb des 99,75% -Pegels gesehen werden kann und daß nicht mehr als 22 mA an Strom zum Feld übertragen wird.
  • Die Ausgabe-Steuer/Regel-Routine enthält auch eine Berechnungsroutine 2106, die detaillierter in 22C gezeigt ist. Es wird ein Ausgabefehler berechnet (Block 2108), der die Differenz zwischen dem Ausgabewert und dem gemessenen Verfolgungswert ist, und es wird dann bestimmt, ob die analoge Ausgabe zunehmen oder abnehmen muß (Raute 2110), und es werden die angemessenen Statusanzeigen gesetzt.
  • Es wird wieder auf 22A Bezug genommen. Es wird dann eine Auswertung durchgeführt, ob der Rest der Ausgabe-Steuer/Regel-Routine übersprungen werden sollte (Raute 2112). Diesbezüglich kann die Ausgabe-Steuer/Regel-Routine übersprungen werden, wenn durch die Handhabe-Fehler-Zustände-Routine ein Problem auf der Platine erfaßt wurde. Unter der Annahme, daß die Ausgabe-Steuer/Regel-Routine durchgeführt werden soll, wird dann eine Überprüfung durchgeführt, um zu sehen, ob die rote LED AN ist (Raute 2114). Falls die rote LED AN ist, wird dann eine Bestimmung durchgeführt, ob der berechnete Ausgabefehler zu groß ist (Raute 21161. Wenn der Fehler zu groß ist (beispielsweise 3,5%), wird dann ein Merker gesetzt, um anzuzeigen, daß diese SAO-Platine das Feld kontrolliert (Block 2118), und es wird die "Außer Kontrolle"-Routine 2120 durchgeführt. Andernfalls wird die entgegengesetzte Anzeige signalisiert, die SAO-Platine wird ihre Ausgabe auf null zurücknehmen (Block 2122), und es wird die "In Kontrolle"-Routine 2124 durchgeführt.
  • Wie aus der bisher beschriebenen Prozedur gewürdigt werden sollte, werden die drei SAO-Platinen 600–604 effektiv miteinander im Wettbewerb stehen, die Last zu treiben. Wenn allerdings eine der SAO-Platinen erfaßt, daß eine der anderen SAO-Platinen die Ausgabe steuert/regelt/kontrolliert, wird sie anfangen, sich auf einen nicht beitragenden Pegel zurückzunehmen. Auf diese Art und Weise ist nur eine der drei SAO-Platinen 600–604 zu einem Zeitpunkt in Funktion, die Last zu treiben, sofern nicht eine der anderen SAO-Platinen bestimmt, daß ihr Beitrag notwendig ist, um den angewiesenen Ausgabewert zu erreichen.
  • Falls die rote LED AUS ist, wird dann eine Rückrechnungsroutine 2126 durchgeführt. Diese Rückrechnungsroutine ist in den 22D–22E gezeigt. Wie aus den 22D–22E gesehen werden wird, wird die Rückrechnungsroutine dazu verwendet, eine "Back.Calc"-Konstante (Rückrechnungskonstante) zu setzen und diese Konstante vom Ausgabefehler abzuziehen oder zu diesem hinzuzuaddieren (Block 2128). Die Back.Calc-Konstante wird in der PI-Regelungsschleife dazu verwendet, jegliche Differenzen bei den Verfolgungsmessungen (aufgrund von irgend welchen Hardware-Unterschieden zwischen den SAO-Platinen) zu berücksichtigen und hierdurch den sanftesten Austausch des Ausgabebeitrags zu ermöglichen. Die Back.Calc-Konstante ist die Differenz zwischen dem Ausgabewert und dem Verfolgungswert (Block 2130). Diesbezüglich sollte gewürdigt werden, daß die Back.Calc-Berechnung von Faktoren abhängen wird, wie etwa welcher NI-Test durchgeführt wird (beispielsweise Rauten 2132–2134), da dies die Zyklen sind, an denen die SAO-Platinen Verantwortlichkeiten austauschen müssen. Mit anderen Worten muß die treibende Platine ihre Ausgabe auf null absenken, und eine andere Platine muß die Ausgabe treiben.
  • Nachdem die Rückrechnungsroutine 2126 durchgeführt ist, wird eine "Ausgabe in Kontrolle?"-Routine 2136 durch den SAO-Mikroprozessor ausgeführt. Die "Ausgabe in Kontrolle"-Routine 2136 liegt in der Form einer Frage vor, da sie entweder zur "In Kontrolle"-Routine 2124 oder zur "Außer Kontrolle"-Routine 2120 aussteigen wird, in Abhängigkeit von den während ihrer Ausführung ausgewerteten Zuständen. Die "Ausgabe in Kontrolle"-Routine 2126 ist zusammen in den 22F–22H gezeigt. Diesbezüglich zeigt 22F, daß eine Reihe von Auswertungen durchgeführt werden wird, um zu bestimmen, ob ein NI-Test durchgeführt wird (Raute 21401, und – falls dies der Fall ist – dann zu identifizieren, welcher Test momentan durchgeführt wird (Rauten 2140–21,481. Die Antworten auf diese Fragen und die Antworten auf ihre abhängigen Fragen (d. h. Rauten 2152–2164) werden bestimmen, in welchem Modus die SAO-Platine ist. Genauer: 22F identifiziert drei Betriebsmodi, nämlich "Straffe Kontrolle", "Überwachen" und "Sich Fernhalten". Die Verwendung der Betriebsmodi wird aus einer Durchsicht der 22F–22H und der Beschreibung unten klar werden.
  • Es sollte verstanden werden, daß, wenn der NI-Test "00" ist, tatsächlich kein NI-Test durchgeführt wird. Wie durch Rauten 2152–2154 angezeigt, wird der "Straffe Kontrolle"-Modus angenommen, wenn der Beitrag der SAO-Platine zur Feldausgabe einen anderen Wert als 0% des angewiesenen Ausgabewerts beträgt. Raute 2126 der 22G zeigt, daß im "Straffe Kontrolle"-Modus eine Auswertung durchgeführt wird, um zu bestimmen, ob der Ausgabefehler (die Ausgabewert – Verfolgung Differenz) innerhalb eines engen Abweichungsbereiches (beispielsweise 0,05% von 22 mA) liegt. Falls die Ausgabe außerhalb dieses engen Abweichungsbereiches liegt, wird dann die "Außer Kontrolle"-Routine 2120 durchgeführt, wie in 22H gezeigt. Andernfalls wird die "In Kontrolle"-Routine 2124 durchgeführt.
  • Falls die SAO-Platine nichts zur Ausgabe beitrug (Raute 2154), wird dann der "Sich Fernhalten"-Modus eingenommen. Im "Sich Fernhalten"-Modus wird eine Überprüfung durchgeführt, um zu sehen, ob der Ausgabefehler außerhalb eines weiten Abweichungsbereiches, wie etwa 1,6% liegt (Raute 2168). Falls der Ausgabefehler innerhalb des weiten Abweichungsbereiches liegt, wird dann die "In Kontrolle"-Routine 2124 durchgeführt. Andernfalls wird die "Außer Kontrolle"-Routine 2120 durchgeführt.
  • Falls der NI-Test der Test # 1 ist (Raute 2142), wird dann eine Bestimmung durchgeführt, um zu sehen, ob die SAO-Platine mehr als 50% des angewiesenen Ausgabewerts treibt (Raute 2156). Falls die Antwort JA ist, wird dann die "Straffe Kontrolle"-Auswertung der Raute 2166 durchgeführt. Andernfalls wird die SAO-Platine den Überwachungsmodus annehmen. Im Überwachungsmodus wird zuerst eine Bestimmung durchgeführt, um zu sehen, ob die SAO-Platine etwas von der Ausgabe treibt (Raute 2170). Falls die Antwort JA ist, wird dann eine Überprüfung durchgeführt, um zu sehen, ob der Ausgabefehler innerhalb einer Überwachungsabweichung, wie etwa 0,10%, liegt (Raute 2172). Falls die Antwort auf diese Frage NEIN ist, wird dann die "Außer Kontrolle"-Routine 2120 durchgeführt. Wenn allerdings die Antwort auf diese Frage JA ist, wird dann eine Bestimmung durchgeführt, ob der Ausgabewert größer als der gemessene Verfolgungswert war (Raute 2174). Die Bestimmung der Raute 2174 wird auch durchgeführt, wenn der NI-Test "01-07" ist und die Ausgabe innerhalb der weiten Abweichung liegt (Rauten 2176–2178).
  • Falls der Ausgabewert größer als der Verfolgungswert war (Raute 2174) wird dann die "In Kontrolle"-Routine 2124 durchgeführt. Andernfalls wird eine Reihe von Fragen gestellt (Rauten 2180–2190), bevor in die "In Kontrolle"-Routine 2124 eingetreten wird. Wenn somit zum Beispiel der NI-Test der Test # 07 ist und die Ausgabe nicht mehr als 93,75% der maximal möglichen Ausgabe erreicht hat, wird dann die "Fahre DAC Herunter"-Routine 2192 durchgeführt. Diese Aktion verhindert, daß mehr als 22 mA zum Feld gesendet werden, da bemerkt werden sollte, daß Block 2174 festgestellt hat, daß die Verfolgung schon größer als der Ausgabewert ist.
  • Die "Fahre DAC Herunter"-Routine 2192 ist im Flußdiagramm der 22I gezeigt. Diesbezüglich zeigt das Flußdiagramm an, daß die Ausgabe in relativ kleinen oder großen Schritten heruntergefahren wird, in Abhängigkeit davon, ob die SAO-Platine mehr als 25% des Ausgabewerts treibt (Raute 2194). Beispielsweise kann, wenn die kleine Verringerungskonstante verwendet wird (Block 2196), die Ausgabe in der Größenordnung von 0,1 % pro Aufruf dieser Routine herabgefahren werden. Wenn die Steuereinheiten 92–96 auch auf Grundlage eines speziellen Prozeß-Steuerung/Regelung-Timing-Zyklus arbeiten, ist dies für die SAO-Schaltungsplatinen 600–604 nicht strikt der Fall, da die SAO-Mikroprozessoren ihre Programme (wie in 21A–21B gezeigt) wiederholt so schnell wie möglich durchführen. Mit anderen Worten kann jede SAO-Platine alle ihre Programme in der Größenordnung von 50 bis 100 mal pro Prozeß-Steuer/Regel-Zyklus (beispielsweise 1 Sekunde) der Steuereinheiten 92–96 durchführen.
  • 22H zeigt ferner, daß eine "Power Ramp Down"-Routine 2198 (Leistung/Kraft/Energie-Herabfahr-Routine 2198) verwendet werden kann, falls die Reihe von Fragen bis zu dem Punkt entschieden ist, daß es bestimmt ist, daß der Ausgabefehler größer als die Überwachungsabweichung ist (Raute 2190). Die "Power Ramp Down DAC"-Routine 2198 ist im kurzen Flußdiagramm der 22J gezeigt. Diesbezüglich wird gewürdigt werden, daß aufgrund der Tatsache, daß erfaßt wurde, daß die Ausgabe jenseits der akzeptablen Überwachungsabweichungsgrenze liegt, eine sehr schnelle Verminderungsrate verwendet werden wird.
  • 22F zeigt ferner, daß der "Straffe Kontrolle"-Modus angenommen werden wird, wann immer bestimmt wird, daß die ME SAO-Platine 100% des gewünschten Ausgabewerts treibt (Rauten 2158, 2162–2164). Andernfalls, falls die Antwort auf eine der Rauten 2158, 2162, 2164 NEIN ist, wird dann der Überwachungsmodus angenommen. Falls bestimmt wird, daß die ME SAO-Platine nichts von der Ausgabe treibt (Rauten 2150 und 2160), wird dann der "Sich Fernhalten"-Modus angenommen.
  • Es wird auf 22K Bezug genommen, in der ein Flußdiagramm für die "In Kontrolle"-Routine 2124 gezeigt ist. Diese Routine fängt damit an, daß der "Nahezu Außer Kontrolle Hoch ME"-Merker (Block 2200) gelöscht wird. Das Löschen dieses Merkers wird dazu verwendet kundzutun, daß ein DOCH ME = 0-Zustand das nächste Mal, daß der "Außer Kontrolle"-Zähler einen vorgesetzten Grenzwert erreicht, nicht signalisiert werden wird. Es wird dann eine Auswertung durchgeführt, ob der Ausgabewert größer als 99,7 % des maximal zulässigen Ausgabewerts ist (Raute 2202). Falls der Ausgabewert im wesentlichen kleiner als dieser maximale Wert ist, wird der Programmfluß dann nach unten zum Ende dieser Routine springen, wo ein "Außer Kontrolle"-Zähler erniedrigt werden wird (Block 2204). Wenn allerdings der Ausgabewert an seinem Maximalwert ist, werden dann drei zusätzliche Auswertungen durchgeführt (Rauten 2206–2210). Falls der NI-Test einer der Testnummern Test # 01 bis Test # 06 ist, wird dann der "Außer Kontrolle"-Zähler erniedrigt. Wenn allerdings der NI-Test einer jener ist, die in Raute 2206 aufgelistet sind, wird dann die "Fahre DAC Herab"-Routine 2192 durchgeführt. In ähnlicher Weise wird, wenn der NI-Test Test # 07 ist und die SAO-Platine mehr als 93,7% des maximalen Ausgabewerts ausgibt (Raute 2208–22101, dann der "Fahre DAC Herab"-Routine 2192 durchgeführt.
  • In dem Fall, daß die "Fahre DAC Herab"-Routine 2192 an diesem Punkt implementiert ist, wird dann sofort die "Sende die Ausgabe zum Feld"-Routine 2212 durchgeführt. Die "Sende die Ausgabe zum Feld"-Routine 2212 wird in Verbindung mit 22N diskutiert. Die "Sende die Ausgabe zum Feld"-Routine 2212 ist auch auf 22A gezeigt als die nächste Routine, die auf jeden Fall durchzuführen ist, wenn die "In Kontrolle"-Routine 2124 beendet ist. Wenn bestimmt wird, daß die Ausgabe dieser SAO-Platine vermindert werden sollte, ist es nichtsdestotrotz bevorzugt, daß es zugelassen sein sollte, mit dem Herunterfahren bei der ersten Gelegenheit anzufangen.
  • Es wird auf die 22L–22M Bezug genommen, in denen ein Flußdiagramm für die "Außer Kontrolle"-Routine 2120 gezeigt ist. Diese Routine wird dazu verwendet, den DAC-Ausgabewert in Antwort auf eine Anzahl von Faktoren, wie etwa die Größe des erfaßten Fehlers, zu ändern. An erster Stelle zeigt Block 2214 an, daß diese Routine verursachen wird, daß nachfolgende Routinen übersprungen werden. Dies deshalb, da das NI-Testen nicht durchgeführt werden soll, falls die Ausgabe nicht korrekt ist. Dann wird ein Bruder-Wartezähler ausgewertet (Rauten 2216–2218). Der Bruder-Wartezähler wird dazu verwendet, die Reaktion auf einen Ausgabefehler zu verzögern und zu ermöglichen, daß eine der benachbarten SAO-Platinen statt dessen reagiert. Dann wird der "Außer Kontrolle"-Zähler erhöht (Block 2220). Als nächstes wird die Größe des Ausgabefehlers ausgewertet, um die Rate zu bestimmen, mit der der DAC-Ausgabewert geändert werden sollte (Rauten 2222–2224).
  • Wie in 22L gezeigt, wird das Programm in Abhängigkeit davon, ob der Ausgabefehler negativ war, abzweigen (Raute 2226). Wenn diese Differenz negativ war, wird dann der DAC-Wert dementsprechend vermindert ( 22M, Block 2228). Andernfalls wird der DAC-Wert auf den angemessenen Wert erhöht (Block 2230). Der DAC-Wert wird somit beispielsweise in Block 2232 auf einen 10 Volt-Ausgabebetrag gesetzt, um einen aussichtslosen Versuch zu verhindern, 20 Volt zum Feld zu senden, wenn die Vorrichtung nicht zulassen wird, daß der Verfolgungswert den Ausgabewert bei maximaler Ausgabespannung erreicht. Diese Aktion vermindert den Bums, wenn eine abgelöste Feldleitung angebracht wird.
  • Es wird auf 22N Bezug genommen, in der ein kurzes Flußdiagramm der "Sende die Ausgabe zum Feld"-Routine 2212 gezeigt ist. Nach einem Vorbereitungsschritt (Block 2234) ruft diese Routine einfach die DAC-Steuerroutine 2236, um den 2-Byte-Wert in die Digital-zu-Analog-Wandler-Schaltung zu schreiben. Die DAC-Steuerroutine ist im selbsterklärenden Flußdiagramm der Figur 220 gezeigt.
  • Es wird wieder auf 22A Bezug genommen, in der gezeigt ist, daß die nächste auszuführende Routine die "Prüfe auf einen Test # 07-Fehler"-Routine 2238 ist. Diese Routine ist im Flußdiagramm der 22P gezeigt. Wie in 22P gezeigt, wird eine Reihe von Auswertungen durchgeführt, um zu bestimmen, ob der NI-Test-Versagen-Zähler vergrößert werden sollte (Block 2240) und schließlich ein NI-Test-Versagen zu signalisieren (Block 2242), falls zu viele Tests gescheitert sind (Raute 2244). Diesbezüglich wird man sich erinnern, daß während des Tests # 07 die ME SAO-Platine die Gesamtausgabe für jeden ihrer Kanäle für sich selbst treiben muß. Wenn somit die SAO-Platine nicht die gesamte Ausgabe für sich selbst treibt, ihre Ausgabespannung am Maximum ist und Strom zum Feld geht, wird dann der NI-Test-Versagen-Zähler eine Zeitperiode zum Erreichen des verlangten Ziels vorsehen. Wenn allerdings das Ziel des Treibens der Ausgabe für sich selbst nicht innerhalb einer vernünftigen Zeitperiode erreicht werden kann (beispielsweise hat der NI-Test-Versagen-Zähler 30 überschritten), wird dann ein Fehlerzustand signalisiert.
  • 22A zeigt, daß die letzte durchzuführende Routine die "Handhabe Ausgabeprobleme"-Routine 2246 ist. Die "Handhabe Ausgabeprobleme"-Routine 2246 ist in den 22Q-22R gezeigt. Wie aus diesen Figuren gesehen werden wird, wird diese Routine dazu verwendet, eine Anzahl von verschiedenen Merkern in Abhängigkeit von den spezifizierten Zuständen zu setzen oder zu löschen. Wenn somit beispielsweise der "Außer Kontrolle"-Zählwert für den ausgewerteten Kanal eine vorbestimmte Größe nicht überschritten hat (beispielsweise 53), werden dann drei verschiedene Merker gelöscht (Rauten 2248). Wenn der "Außer Kontrolle"-Zählwert eine vorbestimmte Größe überschreitet, wird dann eine Auswertung durchgeführt, ob die Verfolgungsmessung niedriger als der Ausgabewert war (Raute 2252). Falls die Antwort JA ist, werden dann der "Nahezu Außer Kontrolle Hoch"-, der "Außer Kontrolle Hoch"- und der "Außer Kontrolle Hoch ME = 0"-Merker gelöscht (Block 2254). Ferner wird der "Außer Kontrolle Niedrig"-Merker gesetzt, wenn die Ausgabe zum Feld niedriger ist als sie sein sollte.
  • Im Gegensatz dazu wird, wenn der Fehler auf der hohen Seite liegt(Block 2250 erzeugt ein NEIN), der "Außer Kontrolle Hoch"-Merker dann gesetzt und wird der "Außer Kontrolle Niedrig"-Merker gelöscht (Block 2258). Dann wird das Operationsverstärker-Verfolgungssignal OAT ausgewertet, um zu sehen, ob es nahe null liegt (Raute 2260). Falls es nicht nahe null ist, wird dann das OAT-Signal neu gemessen, da der DAC zuvor angewiesen wurde, seine Ausgabe zu reduzieren (Block 2226). Falls diese zusätzliche Messung nicht die gewünschte Reaktion zeigt, wird dann der "OAT <> DAC"-Merker gesetzt (Block 2264).
  • 22R zeigt, daß der "Nahezu Außer Kontrolle Hoch ME = 0"-Merker zuerst gesetzt wird (Block 2266) und daß der "Außer Kontrolle"-Zählwert auf null gesetzt wird (Block 2265), falls die Differenz zwischen dem Ausgabewert und der Verfolgungsmessung größer als ein Abbruchabweichungswert, wie etwa 2%, ist (Rauten 2268–22701. Dann wird während des nächsten Durchgangs durch diese Routine, bei dem die Fehlerzählung eine vorbestimmte Größe überschritten hat, der "Außer Kontrolle Hoch ME = 0"-Merker gesetzt (Block 2272), falls der "Nahezu Außer Kontrolle Hoch ME = 0"-Merker nicht gelöscht wurde (Block 22741. Das Erzwingen dieser Verzögerung beim Setzen des DOCH ME = 0-Bits verhindert, daß falsche Fehler berichtet werden.
  • Es wird nun auf die 23A–23I Bezug genommen, in denen ein Satz von Flußdiagrammen für die NI-Testroutine 1926 der 21B gezeigt ist. Die Raute 2300 zeigt, daß diese NI-Testroutine übersprungen werden kann, etwa wenn ein Fehler durch die "Handhabe Fehlerzustände"-Routine erfaßt worden ist. Die Raute 2302 zeigt, daß die NI-Testroutine nicht während jenen 1-Sekunden-Perioden durchgeführt wird, wenn die Test # 00 Insignien verwendet werden. Ferner zeigen die Rauten 2304–2306 an, daß die NI-Testroutine nicht durchgeführt wird, wenn auf dem zu testenden Kanal ein Fehler angetroffen wird oder wenn die Steuereinheit für diese SAO-Platine einen Ausgabewert anweist, der kleiner als ein minimaler Wert (beispielsweise 4 mA) ist. Obwohl das NI-Testen durchgeführt werden könnte, wenn der angewiesene Ausgabewert nahe null ist, so ist es bevorzugt, daß das NI-Testen zurückgestellt wird, da die Abbruchschalter für jeden Null-Ausgabe-Kanal geöffnet werden und es nicht möglich ist, einen vollständigen Test (beispielsweise Test # 7) durchzuführen.
  • In dem Fall, daß diese SAO-Platine oder eine der anderen SAO-Platinen getestet wird (Raute 23081, wird diese SAO-Platine dann nachschauen um zu sehen, welcher Test durchgeführt wird. Diesbezüglich sollte gewürdigt werden, daß diese SAO-Platine (beispielsweise die SAO-Schaltungsplatine 600) für die Tests # 12–16 oder # 21–26 keine Aktionen unternehmen muß, da jegliche notwendige Aktion durch ihre Steuereinheit (beispielsweise Steuereinheit 92) unternommen werden wird. In dem Fall, daß Test # 11 durchgeführt wird (Raute 2310), wird dann die NI-Testroutine verursachen, daß diese SAO-Platine die notwendige Ausgabe übernimmt, die durch ihre als N1 bezeichnete benachbarte SAO-Platine (beispielsweise SAO-Platine 602) abgeworfen wird. Allerdings sollte an diesem Punkt vermerkt werden, daß die NI-Testroutine 1926 nicht speziell auf Test # 21 testet. Dies liegt an der Tatsache, daß die durch die NI-SAO-Platine durchgeführte NI-Testroutine die N2 SAO-Platine als ihren Nachbar N1 bestimmt hat. Mit anderen Worten baut die NI-Testroutine 1926 eine Präferenz dafür ein, welche SAO-Platine anfangen sollte, die durch eine andere SAO-Platine abgeworfene Ausgabe zu übernehmen. Genauer: in diesem Fall wird eine Präferenz für die SAO-Platine ausgeübt, die den Test # 7 zuletzt beendet hat, da dieser spezielle Test die Fähigkeit der SAO-Platine auswertet, die gesamte Ausgabe zu übernehmen.
  • In dem Fall, daß der durchgeführte NI-Test nicht Test # 11 ist, wird der Bruder-Wartezähler dann gelöscht, um zu ermöglichen, daß sofort gehandelt wird, falls dies notwendig ist (Block 23121. Es wird dann bestimmt, ob der durchgeführte NI-Test der Test # 17 oder Test # 27 ist (Raute 2314 von 23B). Falls die Antwort NEIN ist, wird dann die NI-Testroutine 1926 für diesen Aufruf beendet. Wenn allerdings einer dieser beiden NI-Tests durchgeführt wird, wird der Bruder-Wartezähler mit einem Wert geladen, der der im Test befindlichen SAO-Platine Zeit geben wird, ihre Ausgabe hochzufahren (Block 23161. Es wird dann eine Bestimmung gemacht, ob diese SAO-Platine einen Teil der Ausgabe treibt (Raute 2318), als das Ergebnis wird die angemessene Herunterfahrrate gewählt (Blöcke 2192 und 21981, und es wird der Ausgabewert zum Feld gesendet (Block 2212). Falls die DAC-Ausgabe nicht null ist, wird dann ein Merker gesetzt um anzuzeigen, daß diese SAO-Platine das Herunterfahren nicht beendet hat (Block 2320).
  • Falls diese SAO-Platine momentan getestet wird (Raute 23081, wird dann ein Merker gesetzt um anzuzeigen, daß alle unteren NI-Routinen in diesem SAO-Zyklus übersprungen werden sollten (Block 2322). Dann, wenn Test # 07 durchgeführt wird (Raute 2324) oder wenn Test # 11 durchgeführt wird, wird eine Bestimmung gemacht, ob diese SAO-Platine Leistung/Energie treibt (Raute 2326), indem die Spannung über den ME-Widerstand untersucht wird, und es wird der angemessene Merker gesetzt (Block 2328). Dann wird der Beitrag zum Feld ausgewertet (Rauten 2330–2336), indem der Spannungsabfall über den ME-Widerstand untersucht wird. Falls diese SAO-Platine 100% der Ausgabe treibt, die DAC-Ausgabe an ihrem Maximum ist und die Verfolgungsausgabe beim richtigen Wert liegt, wird der NI-Test dann erfolgreich beendet sein (Raute 2338). Andernfalls müssen weitere Bestimmungen gemacht werden und muß während dieses Durchgangs durch die NI-Testroutine 1926 die angemessene Aktion unternommen werden. Wenn beispielsweise diese SAO-Platine mehr als 25 % des Ausgabewerts (Raute 2334), aber weniger als 100% des Ausgabewerts (Raute 2336) treibt, wird dann 0,05% zu dem dem DAC zugeführten Wert hinzuaddiert (Block 2340). Die NI-Testroutine 1926 wird dann an diesem Punkt aussteigen, bis sie" erneut aufgerufen wird, um den Beitrag auszuwerten, den diese SAO-Platine zur Ausgabe macht. Falls die DAC-Ausgabe auf ihrem Maximum ist und diese Platine nicht 100% der Ausgabe treibt, wird der Test-Versagen-Zähler erhöht.
  • Falls die Antwort auf Raute 2324 auf 23A NEIN betrug, wird die NI-Testroutine 1926 zum Punkt "A" auf 23C springen zum Anfangen einer Überprüfung, um zu sehen, welche der anderen NI-Tests durchgeführt werden (Rauten 2342–2344 auf 23C, Rauten 2346–2348 auf 23D, Raute 2350 auf 23E und Raute 2352 auf 23H). Wie aus einer Durchsicht der 23C–23I gewürdigt werden wird, folgt die NI-Testroutine für jeden der N1-Tests einem speziellen Regime. Im Falle des Tests # 01 wird die SAO-Platine somit beispielsweise versuchen, sich selbst herunterzufahren, bis eine Ausgabe von null erreicht ist (Rauten 2354– 2356). Wenn eine Ausgabe von null erreicht ist, wird die NI-Testroutine 1926 zum Punkt "D" auf 23I springen. Falls das Herunterfahren nicht erfolgreich ist, wird der Steuereinheit signalisiert, diesen Kanal nicht zu testen, und nachfolgende Tests im Zyklus werden die Probleme auf den benachbarten Platinen lokalisieren.
  • Wie in 23I angegeben, wird eine Überprüfung durchgeführt, um zu sehen, ob die auf der Niederpegelseite des ME-Widerstands bezüglich Masse gemessene Spannung zu hoch für eine DAC-Ausgabe von null ist (Raute 23281. Falls die Spannung zu hoch ist (beispielsweise 0,037), ist die Diode kurzgeschlossen, und der NI-Test-Versagen-Zähler wird erhöht (Block 2360). Dann wird der NI-Test-Versagen-Zähler selbst überprüft, um zu sehen, ob die momentane Zählung ihre vorbestimmte Grenze, wie etwa 40 Fehler, überschritten hat (Raute 2362). Dieser Versagenszählwert ist relativ hoch gesetzt im Vergleich zu der durch die Steuereinheiten aufrechterhaltenen Fehlerzählung (es ist beispielsweise nur ein Fehler auf der Steuereinheitsebene zugelassen), und zwar angesichts der Tatsache, daß die SAO-Platinen ihre Programme viele Male relativ zu dem durch die Steuereinheit 92–96 verwendeten Prozeß-Steuer/Regel-Zyklus-Timing wiederholt durchführen. Falls die Zählungsgrenze überschritten wurde, wird dann ein Merker gesetzt, um anzuzeigen, daß ein NI-Test-Versagen aufgetreten ist (Block 2364). Wie allerdings durch die Raute 2366 und die zusätzlichen Eintrittspunkte "B" und "E" angezeigt, wird der NI-Test-Versagen-Merker nur gesetzt, wenn diese SAO-Platine den NI-Test durchgeführte, im Gegensatz zu einer ihrer benachbarten SAO-Platinen.
  • 23D zeigt, daß im Falle des Tests # 02 die DAC-Ausgabe ausgewertet wird, um zu bestimmen, ob die SAO-Platine fähig war, diesen Kanal herunterzufahren (Raute 2368). Unter der Annahme, daß dieser Kanal fähig war, auf null herunterzufahren, wird der SAO-Mikroprozessor dann die Kanalausgabe auf die Abbruch-Testspannung setzen (Block 2370), Zeit dafür gewähren, daß die Ausgabe einschwingt (Block 2372) und das Operationsverstärker-Verfolgungs-("OAT")-Spannungssignal messen (Block 2374). Es wird dann eine Bestimmung gemacht, ob der OAT-Spannungspegel für diesen Kanal im erwarteten oder akzeptablen Band liegt, wie etwa 150–700 mV (Raute 2376). Falls die Antwort JA ist, wird der Test # 02 für diesen bestimmten Kanal erfolgreich beendet. Wenn allerdings die Antwort NEIN ist, wird die NI-Testroutine 1926 dann zum Punkt "E" auf 23I springen, wo der NI-Test-Versagen-Zähler erhöht wird. Es sollte gewürdigt werden, daß auf jeden Fall jeder der analogen Ausgabekanäle der Reihe nach bedient werden wird, jedesmal, daß die NI-Testroutine 1926 vom Haupt-SAO-Programm 1900 aufgerufen wird.
  • 23E zeigt, daß im Falle des Tests # 03 die NI-Testroutine 1926 schließlich die Spannung auf der Hochpegelseite des ME-Widerstands bezüglich Masse messen wird (Block 2378), unter der Voraussetzung, daß dieser Kanal fähig war, auf null herabzufahren (Raute 2380), und sie wird bestimmen, ob er einen ausreichend niedrigen Pegel aufweist (beispielsweise 150 mV) (Raute 2382). Falls die Spannung nicht ausreichend niedrigpegelig ist, hat sich einer oder haben sich beide der Abbruchschalter nicht geöffnet. Diesbezüglich sollte vermerkt werden, daß das Öffnen der DN1 und DN2 Abbruchschalter jeweils unabhängig durch die N1- und N2-Steuereinheit gemäß dem oben diskutierten Zeitdiagramm durchgeführt werden wird.
  • Die 23E–23G zeigen, daß im Falle des Tests # 5 tatsächlich zwei Tests durchgeführt werden. Als erstes wird wiederum die Funktion der Abbruchschalter DN1 und DN2 durch die ME-Widerstandsmessung getestet, während das ATV-Signal erzeugt wird (Block 2384). Unter der Annahme, daß dieser Test erfolgreich war, wird dann die Fähigkeit getestet, den Operationsverstärker zu sperren. Dieser Test wird bewerkstelligt, indem zuerst eine Überprüfung durchgeführt wird, um zu sehen, ob der Totmann der SAO-Platine "offen" ist (Raute 2386). Diese Überprüfung wird durchgeführt, indem der Mikroprozessor 610 veranlaßt wird, das "NICHT TOT-Signal" vom Totmann-Zeitglied 649 der 12D zu lesen. Falls die Antwort JA ist, sollte dann der Operationsverstärker 608 gesperrt sein. Falls die Antwort NEIN ist, werden dann alle Operationsverstärker 608 auf dem den Test durchführenden SAO gesperrt (Block 2388). Der DAC wird dann angewiesen, die Totmann-Testspannung, wie etwa 3 Volt, auszugeben (Block 2390). Das NICHT TOT-Signal wird wieder überprüft (Raute 2392), und es wird dann das OAT-Signal für den getesteten Kanal gelesen, falls der Totmann nicht offen ist (Block 2394). In diesem Fall werden dann alle SAO-Platinen-Operationsverstärker 608 wieder freigegeben (Block 2396), und es wird dann die OAT-Spannung überprüft, um zu sehen, ob sie hoch genug ist (Raute 2398). Unter der Annahme, daß der OAT hoch genug war (beispielsweise der Totmann-Testspannungspegell, oder falls der Totmann nicht schon geöffnet war, werden dann die Operationsverstärker gesperrt (Block 2400). Als nächstes wird die OAT-Spannung gemessen (Block 2402). Hiernach wird der DAC auf den ATV-Pegel zurückgesetzt (Block 2404), und die Operationsverstärker werden wieder freigegeben (Block 2406). Nach diesem Schritt wird dann die Spannung von der Totmann-Spannungseingabe ausgewertet, um zu sehen, ob es möglich war, den Operationsverstärker zu sperren (Raute 2408).
  • 23H zeigt, daß im Falle der Tests # 04 und # 06 (Raute 2352) eine Spannungsmessung auf der Hochpegelseite des ME-Widerstands durchgeführt wird (Block 2410). Es sollte wiederum gewürdigt werden, daß die notwendigen Schritte zum Öffnen und Schließen der Abbruchschalter DN1 und DN2 durch die benachbarten Steuereinheiten in Übereinstimmung mit dem oben ausgeführten Zeitdiagramm gehandhabt werden.
  • Aus der obigen Beschreibung der bevorzugten Ausführungsform sollte gewürdigt werden, daß die Feldcomputereinheiten 12 in Übereinstimmung mit einem vorbestimmten Prozeß-Steuer/Regel-Zyklus arbeiten. Mit anderen Worten werden alle Signalkommunikations- und Eingabe/Ausgabe-Verarbeitungsfunktionen der Feldcomputereinheiten innerhalb eines einzigen Prozeß-Steuer/Regel-Zyklus, wie etwa ein 1-Sekunden-Intervall, durchgeführt. Wenn auch die Taktsignale für jede der Netzsteuereinheiten 16 und der Feldcomputereinheit-Steuereinheiten 92–96 während dieses Prozeß-Steuer/Regel-Zyklus eingestellt werden, um die Taktsignale innerhalb einer gegebenen Toleranz zu halten, ist im allgemeinen eine einstellbare Zeitlinie vorgesehen, um die Zusammenarbeit zwischen diesen Schnittstellensystemkomponenten zu vereinfachen. Beispielsweise kann zu Beginn eines neuen Prozeß-Steuer/Regel-Zyklus die Synchronisationsmitteilung durch die Netzsteuereinheiten 16 zu jeder der Feldcomputereinheiten 12 gesendet werden. Die Feldcomputereinheiten 12 werden ihrerseits innerhalb einer gegebenen Zeitperiode (beispielsweise 1,5 ms) nach dieser 2-Byte-Mitteilung schauen. Nachdem die Netzsteuereinheiten 16 die notwendigen Kommunikationspfade bestimmen, werden sie die angemessenen digitalen und analogen Ausgabewerte zu jeder der Feldcomputereinheiten senden. Die Steuereinheiten 92–96 werden dann diese Information austauschen, um die oben beschriebenen Verfahren der unabhängigen Schlichtung durchzuführen. In dem Fall, daß die Kommunikation von den Netzsteuereinheiten 16 durch eine Feldcomputereinheit nicht empfangen wird oder durch eine der Steuereinheiten 92–96 keine Kommunikation von ihren benachbarten Steuereinheiten empfangen wird, werden diese Komponenten trotzdem fortfahren, nach einer geeigneten Zeitperiode ihre Aufgabe durchzuführen. Somit können beispielsweise die zuvor zugeführten Versagen-Zuletzt- und Versagen-Sicher-Instruktionen gemäß den oben diskutierten Ausgabeschlichtungsverfahren implementiert sein.
  • Ferner sollte die Handlungszeitlinie ermöglichen, daß das nicht störende Testen der digitalen und analogen Ausgaben periodisch durchgeführt wird, wie oben ausgeführt. Diese Zeitlinie kann dazu auch ausgelegt sein, ein weiteres Testen von Systemkomponenten zu ermöglichen. Beispielsweise kann es vorteilhaft sein, den RAM-Speicher U42 in jeder der Steuereinheiten 92–96 innerhalb eines zur Verfügung stehenden Zeitschlitzes zu testen. Dieser Test kann bewerkstelligt werden, indem zuerst ein spezieller Wert (beispielsweise 55 hex) in jede Speicherstelle eines unbenutzten Abschnitts des RAM-Speichers geschrieben wird und dann jede Stelle gelesen wird, um die Integrität dieses Speicherabschnitts zu verifizieren. Dann kann ein Abschnitt der Eingabe- oder Ausgabedatentabelle zu diesem verifizierten Abschnitt des RAM-Speichers verschoben werden, und es könnte der Speicherabschnitt, aus dem diese Daten genommen waren, auf die gleiche Art und Weise verifiziert werden. Es ist allerdings bevorzugt, daß ein anderer Wert in diesen benutzten Speicherabschnitt geschrieben wird (beispielsweise AA hex). Diese Daten könnten dann ersetzt werden, wenn bestimmt wurde, daß keine Speicherfehler vorlagen. Auf diese Art und Weise kann der gesamte RAM-Speicher U42 periodisch getestet werden. Falls ein Speicherfehler gefunden wurde, könnte dann dieser Speicherabschnitt erneut getestet werden und/oder könnte ein allgemeines "Problem"-Statusbit gesetzt werden, um den Prozeß-Steuer/Regel-Computer 14 über das Vorhandensein eines Fehlers zu informieren. Wie bei den anderen oben diskutierten Fehlern kann der Prozeß-Steuer/Regel-Computer den Status eines speziellen Fehlerbits anfordern, welches einen Fehler im RAM-Speicher U42 identifizieren würde.
  • Es wird allgemein auf die 24A–27M Bezug genommen, in denen ein Satz von Flußdiagrammen gezeigt ist, um die Verfahren des Herabladens von aktualisierter Software zu veranschaulichen. Diesbezüglich liefern die Verfahren vorteilhafterweise die Fähigkeit, aktualisierte Software durch das Prozeß-Steuer/Regel-Schnittstellensystem 10 herabzuladen, ohne den gesteuerten/geregelten physikalischen Prozeß zu unterbrechen. Genauer: Die Verfahren ermöglichen, daß aktualisierte oder neue Software wahlweise von einer der Netzsteuereinheiten 16 zu jeder der Ausbruchschaltungen 26 im Schnittstellensystem 10 und zu jeder der Feldcomputereinheiten 12 im Schnittstellensystem übertragen wird.
  • Somit kann die in jeder der Hauptkomponenten des verteilten Prozeß-Steuer/Regel-Schnittstellensystems 10 enthaltene Software individuell aktualisiert oder in Gruppen kollektiv aktualisiert werden. Mit anderen Worten: es kann nützlich sein, die Software für jede der Feldcomputereinheiten 12 zu einem Zeitpunkt und die Software für jede der Ausbruchschaltungen 26 zu einem anderen Zeitpunkt zu aktualisieren. Umgekehrt kann es angemessen sein, die Software überall im Schnittstellensystem zu aktualisieren, beginnend mit den Ausbruchschaltungen 26 und endend mit den Feldcomputereinheiten 12.
  • Es ist wichtig, daß jede dieser Aktualisieroperationen durchgeführt werden kann, während die Prozeß-Steuer/Regel-Operationen fortgesetzt werden. Zum Beispiel kann, während einer der Prozeß-Steuer/Regel-Computer 14a– 14b für die Prozeß-Steuerung/Regelung verwendet wird, der andere Prozeß-Steuer/Regel-Computer umschalten, um eine oder mehrere Herabladeoperationen durchzuführen. Ein anderer Vorteil des oben beschriebenen Verfahrens und Systems ist die Fähigkeit, aktualisierte Software in eine Mehrzahl von Ausbruchschaltungen 26 oder Feldcomputereinheiten 12 während der gleichen Herabladeoperation herabzuladen. Wenn beispielsweise eine erfolgreiche Herabladeprozedur für jede der Feldcomputereinheiten verifiziert wurde, können dann somit die redundanten Steuereinheiten 92–96 in jeder der Feldcomputereinheiten 12, die die neue Software empfingen, unter Verwendung dieser Software im gleichen Prozeß-Steuer/Regel-Zyklus hochfahren.
  • Bei einer Ausführungsform ist es bevorzugt, daß eine erfolgreiche Herabladeoperation für alle Schnittstellensystemkomponenten, zu denen die neue Software adressiert war, verifiziert wird, bevor es einer dieser Systemkomponenten erlaubt wird, auf Grundlage der neuen Software hochzufahren. Mit anderen Worten: Wenn die linken Steuereinheiten 92 in allen Feldcomputereinheiten 12 einen vollständig korrekten Empfang der neuen Software verifiziert haben, wird es ihnen dann erlaubt, auf Grundlage der neuen Software hochzufahren. Andernfalls werden sie alle angewiesen, unter Verwendung der alten Software, die zuvor in diesen Steuereinheiten 92 enthalten war, zurück hochzustarten. An diesem Punkt kann die Herabladeprozedur erneut versucht werden, oder es könnte die Hardware für die Steuereinheiten) überprüft werden, die die Korrektheit der neuen Software nicht verifizieren konnten.
  • Wenn die aktualisierte Software für alle linken Steuereinheiten 92 verifiziert wurde, können dann diese Steuereinheiten angewiesen werden, eine Kopie dieser Software zu den mittleren Steuereinheiten 94 in jeder der Feldcomputereinheiten 12 zu übertragen. Diesbezüglich sollte gewürdigt werden, daß die seriellen Kommunikationsverbindungen zwischen den Steuereinheiten 92–96 in den Feldcomputereinheiten 12 es möglich machen, daß eine der Steuereinheiten 92–96 eine Kopie von aktualisierter Software zu einer oder beiden der anderen Steuereinheiten überträgt. Es sollte gewürdigt werden, daß alternativ die rechte Steuereinheit 96, wenn die linke und die mittlere Steuereinheit 92–94 mit aktualisierter Software arbeiten, dann eine Kopie dieser aktualisierten Software von ihrem Prozeß-Steuer/Regel-Computer (beispielsweise Prozeß-Steuer/Regel-Computer 14b) empfangen könnte. Mit anderen Worten könnte der Prozeß-Steuer/Regel-Computer 14a zu seinen Prozeß-Steuer/Regel-Operationen zurückkehren, und der Prozeß-Steuer/Regel-Computer 14b könnte zu einer Herabladeoperation umschalten.
  • Natürlich könnten beide Prozeß-Steuer/Regel-Computer 14a–14b vom Standpunkt einem Prozeß-Steuerung/Regelung stillgelegt werden, so daß die linke Steuereinheit 92 und die rechte Steuereinheit 96 beide in jeder der Feldcomputereinheiten die identische aktualisierte Software empfangen könnten. Dies allerdings könnte eine Unterbrechung im gesteuerten/geregelten physikalischen Prozeß erfordern. Es sollte gewürdigt werden, daß die einzige Herabladefunktion, die so implementiert werden könnte, daß beide Prozeß-Steuer/Regel-Computer 14a–14b Prozeß-Steuer/Regel-Operationen ausführen, die Übertragung von aktualisierter Software entweder von der linken Steuereinheit 92 oder der rechten Steuereinheit 96 zur mittleren Steuereinheit 94 ist, da die Prozeß-Steuer/Regel-Computer 14a–14b in diese Prozedur nicht involviert sein müssen.
  • Es wird speziell auf 24A Bezug genommen, in der ein abgekürztes Flußdiagramm des Feldcomputereinheit-Hauptprogramms "Femmai" 2420 gezeigt ist. Das Flußdiagramm 2420 gibt an, daß jede der Feldcomputereinheiten 12 im allgemeinen die oben diskutierten Prozeß-Steuer/Regel-Aktivitäten durchführen wird (Block 2422), sofern nicht ein "DOWNLDF"-Bit (HerabladenF-Bit) in Antwort auf ein Herabladekommando gesetzt worden ist (Raute 2424). Das Setzen des DOWNLDF-Bits wird tatsächlich in der Serieller-Anschluß-Interrupt-Routine 2426 bewerkstelligt, die in 24B gezeigt ist. Bei dieser speziellen Anwendung wird das Feld-Herabladekommando einfach als Kommando "113" identifiziert (Raute 2428). Vor dem Löschen des DOWNLDF-Bits (Block 2430) wird der Wert dieses Bits in einer Nachbar-Kommunikation-Mitteilung plaziert, um die benachbarten Steuereinheiten zu informieren, daß diese Steuereinheit neue Software empfängt. Diese Aktion wird verhindern, daß die benachbarten Steuereinheiten versuchen, die aktualisierte Software empfangende Steuereinheit zurückzusetzen. Es sollte auch vermerkt werden, daß die Feldkommunikationsroutine "Fcomm" von 24C dazu verwendet wird, Herabladekommandos vom Prozeß-Steuer/Regel-Computer 14 zu empfangen.
  • Unter der Annahme, daß der Prozeß-Steuer/Regel-Computer 14 das Herabladekommando ausgegeben hat, wird die Feldcomputereinheit 12 dann zur "FIO DOWN LD"-Routine springen, die in den 24E–24G gezeigt ist (Block 2432). Auf die FIO_DOWN_LD"-Routine 2432 wird hierin manchmal als die "FIO Download"-Routine (FIO Herablade-Routine) Bezug genommen. Wie aus diesem Flußdiagramm ersichtlich sein wird, stellt die FIO DOWN LD-Routine eine Hauptroutine für eine Reihe von Unterprogrammen bereit, die in den 26G–26P und 27I–27M gezeigt sind. Diese Unterprogramme ermöglichen es der Feldcomputereinheit, die herabgeladene Software zu empfangen und zu verifizieren, unter der Annahme, daß diese Software für die Feldcomputereinheit bestimmt ist. Bevor diese Flußdiagramme weiter diskutiert werden, wird allerdings zuerst die Übertragung von Herabladekommandos untersucht.
  • Es wird auf 25A Bezug genommen, in der ein abgekürztes Flußdiagramm des Netmain-Programms oder der Netmain-Routine 2500 gezeigt ist. Diesbezüglich repräsentiert das Netmain-Programm 2500 ein Hauptprogramm für die Netzsteuereinheit 16. Dieses Netmain-Programm folgt einer normalen Prozeß-Steuer/Regel-Zeitlinie, wie durch den "Do Process Control"-Block (Mache die Prozeß-Steuerung/Regelung-Block) 2502 angezeigt ist. An einem frühen Punkt in der Hauptschleife des Netmain-Programms wird nichtsdestotrotz bestimmt, ob eine Herabladeoperation angefordert wurde (Raute 2504). Diese Anforderung wird bestimmt, indem auf das Vorhandensein eines "DOWNLD"-Bit (Herabladebit) geprüft wird, das im in 25B gezeigten Flußdiagramm gesetzt wird. Falls das DOWNLD-Bit gesetzt ist, wird dann das Netmain-Programm zur GET_CODE-Routine (Erlange den Code-Routine) 2506 springen, die allgemein in den 25C–25E gezeigt ist. Andernfalls werden normale Prozeß-Steuer/Regel-Funktionen, wie etwa das Übertragen von von den Feldcomputereinheiten 12 empfangenen Daten zum Prozeß-Steuer/Regel-Computer 14 durchgeführt, unter der Annahme, daß der Prozeß-Steuer/Regel-Computer nicht sein Prozeß-Steuer/Regel-Regime abgelegt hat.
  • Hiernach wird die NCOMM-Routine 2508 durchgeführt. Diese Routine ist durch das Flußdiagramm der 25P gezeigt. Wie durch dieses Flußdiagramm angezeigt, bezieht sich die NCOMM-Routine auf das Laden von aktualisierter Software in die mittlere Steuereinheit 94 der Feldcomputereinheiten 12. Genauer: die NCOMM-Routine wird eine Überprüfung durchführen, um zu sehen, ob ein Kommando eingegeben wurde, die mittleren Steuereinheiten 94 mit aktualisierter Software zu laden (Raute 2510). Wie aus der Beschreibung unten der CBTDEC-Routine der 25B gewürdigt werden wird, kann die Anforderung für ein Mitte-Herabladen durch eine Bedienperson über die Austestkonsole 18 eingegeben werden. Falls eine Anforderung eines Mitte-Herabladens ergangen ist, wird dann ein spezielles Kommando durch die Netzsteuereinheit gesendet (Block 2512), und zwar durch eine Sende-Kommando-Routine 2514, die in 25Q gezeigt ist, zu allen Feldcomputereinheiten 12. Während es bevorzugt ist, daß alle der mittleren Steuereinheit 94 zusammen aktualisiert werden, sollte gewürdigt werden, daß in der angemessenen Anwendung eine Wahl von einigen, aber nicht aller mittleren Steuereinheiten 94 erlaubt sein kann.
  • Das Mitte-Herabladen-Kommando wird durch die BCOMM-Routine 2516 der 24D empfangen, und diese Routine, die in jeder der mit einem der Prozeß-Steuer/Regel-Computer 14a–14b verbundenen Ausbruchschaltungen 26 enthalten ist, wird auf dieses Kommando reagieren. Die BCOMM-Routine 2516 wird das Mitte-Herabladen-Kommando zu allen ihren Ausgabeanschlüssen durchgeben, damit schließlich durch die FCOMM-Routine 2518 in jeder der Feldcomputereinheiten 12 hierauf reagiert wird. Die FCOMM-Routine ist in 24C gezeigt. Die FCOMM-Routine 2518 schreibt das Mitte-Herabladen-Kommando in das XRAM, wo es durch die SIDE LOAD-Routine (Seite Laden-Routine) 2520 der 26Q–26R gelesen wird. Die SIDE_LOAD-Routine 2520 in der linken Steuereinheit 92 oder der rechten Steuereinheit 96 bestimmt die Anschlußadresse der mittleren Steuereinheit 94, sendet das Mitte-Herabladen-Kommando zur mittleren Steuereinheit und hört auf eine Antwort. Das NEIGHBOR-Unterprogramm (Nachbar-Unterprogramm) 2522 der 26S in der mittleren Steuereinheit 94 empfängt dieses Kommando, setzt ihren seriellen Anschluß, um von der benachbarten Steuereinheit, die das Kommando sendete, zu empfangen und springt dann aus ihrer Prozeß-Steuer/Regel-Zeitlinie zur FIO DOWN LD-Routine 2524 der 24E–24G, um die neue Software zu empfangen.
  • In der Zwischenzeit wird die NCOMM-Routine 2508 die CHECK MID-Routine (Überprüfe_Mitte-Routine) 2526 der 26R–26S (Block 2528 in 26P) freigeben und eine Warteperiode für die auszuführende CHECK MID-Routine initialisieren (Block 2530). Die CHECK MID-Routine 2526 ist auch als ein Block in der Netmain-Schleife der 26A gezeigt. Die CHECK MID-Routine 2526 wird dazu verwendet, zu verifizieren, daß eine Kopie der aktualisierten Software entweder von der linken Steuereinheit 92 oder der rechten Steuereinheit 96 erfolgreich zur mittleren Steuereinheit 94 übertragen wurde. Diesbezüglich wird die mittlere Steuereinheit 94 Prüfsummenberechnungen und Vergleiche durchführen und, nach erfolgreichem Abschluß, der sendenden Steuereinheit mit ihren Prüfsummen antworten. Diese Prüfsummen können "Exklusiv-Oder"-, "rotierte Exklusiv- Oder" und "Codesummen"-Prüfsummen umfassen. Diese Prüfsummen werden mit den Prüfsummen verglichen, die in dem zur mittleren Steuereinheit 94 gesendeten Software-Code eingebettet sind. Die sendende Steuereinheit wird die Prüfsumme von der mittleren Steuereinheit 94 vergleichen, und es wird dann, wenn sie mit ihren eigenen Prüfsummen übereinstimmt, ein Bit in einem Byte gesetzt, das während der normalen Eingabekommunikation zur Netzsteuereinheit 16 übertragen werden wird.
  • Wenn alle Gute-Prüfsumme-Mitteilungen durch die Netzsteuereinheit 16 empfangen wurden, wird dann eine ähnliche Bestätigungsmitteilung auf der Austestkonsole 18 der Netzsteuereinheit 16 angezeigt. Die Anzeige der Gute-Prüfsumme-Mitteilung auf der Austestkonsole 18 wird es der Bedienperson ermöglichen zu wissen, daß die mittlere Steuereinheit 94 mit der neuen Software hochgefahren werden kann. Diesbezüglich kann dann die Bedienperson die Knöpfe auf der Austestkonsole 18 drücken, die verursachen werden, daß über die NCOMM-Routine 2508 der 26P ein "Transplant"-Kommando (Transplantationskommando) zu jeder der Feldcomputereinheiten 12 gesendet wird. Wenn allerdings ein Prüfsummenfehler erfaßt wurde, wird dann ein "Cold Feet"-Kommando ("Kalte Füße"-Kommando) über die NCOMM-Routine 2508 automatisch zu allen Feldcomputereinheiten gesendet. Das "Cold Feet"-Kommando wird verursachen, daß die mittleren Steuereinheiten 94 unter Verwendung der alten oder früheren Software hochfahren (d. h. zurückgesetzt werden). Eine geeignete Mitteilung in diesem Sinne wird auch auf der Austestkonsole 18 angezeigt werden.
  • Der relevante Abschnitt der "gemeinsamer Knopfdekodierer"-CBTDEC-Routine 2528 ist in 25B gezeigt. Auf die CBTDEC-routine 2528 wird dahingehend Bezug genommen, daß sie gemeinsam ist insoweit, als daß sie bevorzugt in jeder der Schnittstellensystemkomponenten enthalten ist, die eine Austestkonsole enthalten (d. h. die Netzsteuereinheiten 16, die Ausbruchschaltungen 26 und die Feldcomputereinheiten 12). Deshalb enthält die CBTDEC-Routine 2528 eine Bestimmung für jede der aufgelisteten Funktionen eine Bestimmung dahingehend, ob diese Komponente eine Netzsteuereinheit 16 ist (beispielsweise Raute 2530). Jede der in der CBTDEC-Routine identifizierten Funktionen bezieht sich auf eine spezielle Herabladeoperation. Somit wird beispielsweise die Funktion 1E dazu verwendet, das Herabladen von aktualisierter Software in die mittleren Steuereinheiten 94 zu initiieren. Wie durch Raute 2532 angezeigt, wird das Schnittstellensystem 10 die Übertragung des Mitte-Herabladen-Kommandos nur zulassen, nachdem wenigstens eine Steuereinheit der linken oder rechten Steuereinheit erfolgreich aktualisierte Software empfangen hat. Wenn die Bedienperson die angemessenen Knöpfe der Austestkonsole gedrückt hat, wird dann das MID_LOAD-Bit gesetzt (Block 2534). Es können dann eine oder mehrere Mitteilungen auf der Austestkonsole angezeigt werden, wie etwa "Laden mittlere Feld-Eingabe/Ausgabe" (Anzeige Block 2536).
  • Funktion 1D wird dazu verwendet, automatisch zu bewirken, daß das "Cold Feet"-Kommando zu allen den Komponenten gesendet wird, zu denen neue Software adressiert war. Diesbezüglich wird der herabgeladene Software-Code ignoriert werden, und die Komponenten werden auf dem alten Software-Code hochfahren.
  • In ähnlicher Weise wird die Funktion 1C dazu verwendet, der Bedienperson zu ermöglichen, das Senden des Transplant-Kommandos zu allen Geräten, zu denen neuer Software-Code adressiert war, zu verursachen. Das Transplant-Kommando kann auch über die NCOMM-Routine 2508 gesendet werden, um die mittlere Steuereinheit 94 auf dem neuen Software-Code zu starten, wenn die Netzsteuereinheit 16 ihre Prozeß-Steuer/Regel-Zeitlinie ausführt. Wenn dieses Kommando empfangen wird, wird dann die REPROG-Routine 2538 der 26D ausgeführt. Die REPROG-Routine 2538 wird veranlassen, daß die neu herabgeladene Software vom Datenspeicher (beispielsweise XRAM) in den Programmspeicher kopiert wird. Es sollte vermerkt werden, daß die CBTDEC-Routine 2528 nicht zulassen wird, daß das Transplant-Kommando dann gesendet wird, wenn die Prüfsummenverifikationen das Vorhandensein eines Fehlers angezeigt haben (Raute 25401.
  • Funktion 1B wird dazu verwendet, neue Software von einem der Prozeß-Steuer/Regel-Computer 14a–14b zu der XRAM-Schaltung zu bewegen, die in seiner Netzsteuereinheit 16 enthalten ist. Die Wahl von Funktion 1B wird verursachen, daß der Kommando-Code "113" von der Netzsteuereinheit 16 übertragen wird. Diesbezüglich zeigt Raute 2542 an, daß diese Funktion nicht durchgeführt werden wird, wenn dieser Prozeß-Steuer/Regel-Computer momentan für die Prozeß-Steuerung/Regelung verwendet wird. Die stromabwärtigen Geräte oder Schnittstellensystemkomponenten, die den neuen Software-Code empfangen, sind durch die "Start- und Stopp"-Schalter auf den Ausbruchschaltungen 26 bestimmt. Da die Ausbruchschaltungen 26 nicht wissen, mit welchem Typ von Gerät oder Geräten sie stromabwärts verbunden sind, ist es bevorzugt, daß alle diese Geräte neuen, für die Ausbruchschaltungen bestimmten Code empfangen, wenn diese Option gewählt ist. Diesbezüglich ist es die bevorzugte Prozedur für den neuen "Organisations"-Software-Code, eine eingebettete Programmidentifikation aufzuweisen, die stromabwärts verwendet werden kann, um zu bestimmen, ob das empfangende Gerät den neuen Software-Code verwenden sollte. Wenn die Netzsteuereinheit 16 aus einem Ruf zum Prozeß-Steuer/Regel-Computer auch anfänglich wissen wird, welche Geräte stromabwärts mit ihr verbunden sind, sollte gewürdigt werden, daß die Netzsteuereinheit 16 das faseroptische Netz vor der Herabladeoperation abfragen könnte, um zu bestimmen, welche Geräte momentan mit ihm verbunden sind.
  • Eine Verifikation des herabgeladenen Ausbruchsschaltungs-Software-Codes und Feldcomputereinheits-Software-Codes wird an der Netzsteuereinheit 16 bewerkstelligt, indem die bekannten Feldcomputereinheiten 12 am faseroptischen Netz abgefragt werden. Diesbezüglich sollte vermerkt werden, daß jede der Ausbruchschaltungen bevorzugt empfangene neue Ausbruchsschaltungs-Software verifizieren wird, bevor sie diese Software zu irgendwelchen Geräten überträgt, mit denen sie verbunden ist. Wenn somit beispielsweise die Ausbruchschaltung 26F der 2 erfaßt, daß sie keine vollständige oder keine korrekte Übertragung empfangen hat, wird sie diese Software nicht zur Ausbruchschaltung 26g senden. In einer Ausführungsform werden die Ausbruchsschaltungen nicht versuchen, die Richtigkeit der neuen Feldcomputereinheits-Software zu verifizieren, da die Ausbruchschaltungen 26 nicht mit genügend freiem Speicher ausgestattet sind, um diese Software zu überprüfen. Genauer: neue Feldcomputereinheits-Software wird in zwei Paketen (beispielsweise jeweils 32 K) übertragen, während neue Ausbruchsschaltungs-Software nur eine einzige Übertragung (beispielsweise 32 K) erfordert. Allerdings sollte verstanden werden, daß die Speicherkapazität der Ausbruchschaltungen 26 in der angemessenen Anwendung vergrößert werden könnte.
  • Wenn die Netzsteuereinheit 16 von allen bekannten Feldcomputereinheiten 12 die Prüfsummen empfängt, die mit den Prüfsummen für das übertragene Programm übereinstimmen, wird sie der Bedienperson über eine Aufforderungsmitteilung auf der Austestkonsole 18 zur Entscheidung geben, ob mit dem neuen Software-Code oder mit dem alten Software-Code gestartet wird. Wenn die Netzsteuereinheit 16 allerdings eine schlechte Prüfsumme empfängt oder eine Zeitüberschreitung eintritt, während eine Prüfsummenmitteilung von einer der bekannten Feldcomputereinheiten 12 angefordert wird, wird dann allen diesen Geräten der "Cold Feet"-Kommando-Code gesendet, um automatisch ein Hochfahren mit der alten Software zu veranlassen. Tatsächlich ist es bevorzugt, daß selbst dann, wenn alle der bekannten Feldcomputereinheiten 12 gute Prüfsummenmitteilungen senden, das Schnittstellensystem automatisch ein Hochfahren auf der alten Software verursacht, wenn die Bedienperson auf die angezeigte Wahl nicht innerhalb einer vorbestimmten Zeitüberschreitungsperiode antwortet. Auf jeden Fall wird dann, wenn das Zeitüberschreitungszeitglied während des Verifikationsprozesses ausläuft, die Herabladeoperation automatisch mit einer auf der Austestkonsole 18 angezeigten Zeitüberschreitungsmitteilung zu einem Ende kommen.
  • Wenn das DOWNLD-Bit über Funktion 1B der CBTDEC-Routine 2528 gesetzt wurde (Block 2544), wird dieses Bit durch die Netmain-Routine 2500 von 25A erfaßt werden. Dies wird seinerseits verursachen, daß die Netzsteuereinheit 16 zur GET CODE-Routine 2506 der 25C–25E springen wird. Die GET_CODE-Routine 2506 erfaßt, welche Geräte für die Software-Aktualisierung gewählt wurden und reagiert dementsprechend. Wie durch die Raute 2546 angezeigt wird, kann die mittlere Steuereinheit 94 in den Feldcomputereinheiten 12 über die GET_CODE-Routine 2506 durch Herabladen geladen werden. Diese Prozedur ist allerdings nur implementiert, wenn beide Prozeß-Steuer/Regel-Computer 14a–14b bezüglich ihren Prozeß-Steuer/Regel-Operationen "herabgefahren" sind. In diesem Fall ruft die "GET CODE"-Routine die JUMPOUT-Routine 2548, die in 25N gezeigt ist. Die JUMPOUT-Routine (Herausspring-Routine) 2548 wird verursachen, daß aus dem Hauptanschluß der Netzsteuereinheit 16 ein Burst von einer Sekunde von Herabladekommandos "Back to Back" (Rücken an Rücken) gesendet wird. Diese aufeinanderfolgenden Herabladekommandos werden verursachen, daß die Ausbruchschaltungen 26 und/oder eine Seite der Feldcomputereinheiten 12 aus ihrer Prozeß-Steuer/Regel-Zeitlinie herausspringen und in einer engen Empfangsschleife sitzen (wobei ein Zeitüberschreitungszeitglied läuft) und stromaufwärts nach weiteren Instruktionen schauen. Von diesem Punkt wird der Herablade- und Verifikationsprozeß automatisch durchgeführt werden.
  • Unter der Annahme, daß die mittlere Steuereinheit 94 an diesem Punkt nicht in den Herabladeprozeß involviert ist, wird die Netzsteuereinheit dann neue Software vom Prozeß-Steuer/Regel-Computer 14 empfangen. Diese Software wird bevorzugt in den folgenden vier Blöcken oder Paketen gesendet: (1) Netzsteuereinheits-Software (beispielsweise 32 K), (2) Ausbruchschaltungs-Software (beispielsweise 32 K) und (3) Feldcomputereinheits-Software (beispielsweise zwei Durchgänge von jeweils 32 K1. Diesbezüglich bezieht sich der Lies-"Welche/welcher"-Block 2550 auf die Nummern (1 ), (2) oder (3) für diese Software-Transfers. Da die Feldcomputereinheits-Software zwei Übertragungen oder Durchgänge erfordert, zeigt die Raute 2552 an, daß die Netzsteuereinheit 16 eine Überprüfung durchführen wird, ob sie den zweiten Durchgang des Software-Transfers mit der Nummer (3) empfängt oder nicht. Falls eine andere Nummer erfaßt wird, wird die Transfer-Anforderung dann als eine schlechte Wahl interpretiert werden (Raute 2554), und die Netzsteuereinheit 16 wird zur Netmain-Routine zurückkehren (Block 2556).
  • Unter der Annahme, daß die Software-Transferanforderung akzeptabel ist, wird die Netzsteuereinheit dann bestimmen, ob die transferierte Software Netzsteuersoftware ist (Raute 2558). Falls die Software keine Netzsteuereinheits-Software ist, wird dann die FIO-Tabelle überprüft, um zu sehen, ob sie leer "MT" ist (Raute 2560 auf 25D). Dies bezüglich sollte vermerkt werden, daß der Begriff FIO für Feld-Eingabe/Ausgabe steht und daß dieser Begriff einfach eine andere Art darstellt, auf die Feldcomputereinheiten Bezug zu nehmen. Unter der Annahme, daß die FIO-Tabelle nicht leer ist oder die Software Netzsoftware ist, wird die Netzsteuereinheit 16 dann das nächste 32 K-Software-Paket anfordern (Block 2562). Die Netzsteuereinheit 16 wird dann nach dem nächsten Kommando-Code vom Prozeß-Steuer/Regel-Computer 14 schauen (Block 2564). Der Kommando-Code wird in zwei Bytes empfangen, wie in 25G angezeigt ist.
  • Unter der Annahme, daß dies nicht der zweite Durchgang für FIO-Software ist (Raute 2566), werden die Prüfsummen dann im XRAM gespeichert (Block 2568). An diesem Punkt wird die Netzsteuereinheit 16 eine Überprüfung durchführen, ob diese Software FIO-Software ist (Raute 2570), und wird die Korrektheit der Übertragung verifizieren, falls die Software keine FIO-Software ist (Block 2572). Diesbezüglich zeigt Figur 250 das Flußdiagramm der Verifizierroutine 2552. Falls die Prüfsummen nicht mit den in die Software eingebetteten Prüfsummen übereinstimmten (Raute 2574), wird dann eine "Schlechte Prüfsumme"-Mitteilung auf der Austestkonsole 18 angezeigt, und die Netzsteuereinheit 16 wird zum existierenden "alten" Programm zurückkehren (Block 2576).
  • Falls die Prüfsummen mit den in der transferierten Software eingebetteten übereinstimmen, wird die Netzsteuereinheit 16 dann eine Überprüfung durchführen, ob dieses Paket Netzsteuereinheits-Software ist (Raute 2578). Falls die Software keine Netzsteuereinheits-Software ist, wird die Netzsteuereinheit 16 dann die Jumpout-Routine 2548 der 25N rufen und dann stromabwärtige Geräte in eine Empfangsschleife setzen (Block 25801. Die Netzsteuereinheit 16 wird dann den nächsten Software-Transfer anfordern (Block 2582). Die Netzsteuereinheit 16 wird dann eine Überprüfung durchführen, ob die empfangene Software FIO-Software ist (Raute 2584). Falls die Software FIO-Software ist, wird dann eine Überprüfung durchgeführt, um zu sehen, ob dies der erste oder zweite Durchgang ist (Raute 2586). Falls es der erste Durchgang ist, wird dann die Netzsteuereinheit 16 die "Welche/welcher"-Nummer auf (4) stoßen, um den zweiten Durchgang vorzubereiten (Block 2588). Wenn dies der zweite Durchgang war, wird die Netzsteuereinheit dann die "Verifizier Nerabgeladenes Programm"-Routine 2590 aufrufen, die in den 25K– 25N gezeigt ist. Unter der Annahme, daß die "Verifizier Herabgeladenes Programm"-Routine 2590 nicht mit einer Zurückkehr zum Altes-Programm-Block endete, wird dann eine Mitteilung auf der Austestkonsole 18 angezeigt (Raute 2592), die der Bedienperson die Wahl läßt, das neue Programm zu implementieren (Block 2594) oder zum alten Programm zurückzukehren (Block 2596).
  • 25I zeigt die "Neues Programm"-Routine 2594, während 25J die "Altes Programm"-Routine 2596 zeigt. Diesbezüglich sollte vermerkt werden, daß die "Neues Programm"-Routine 2594 die Reprog-Routine 2538 ruft, die in den 26D–26F gezeigt ist. Wie in 25E gezeigt, wird die "Neues Programm"-Routine 2594 in Antwort auf die Wahl der Funktion 1C auf 25B ausgeführt werden. Diesbezüglich wird die Wahl der Funktion 1C die Übertragung des Kommando-Codes "114" von der Netzsteuereinheit 16 verursachen. 25E zeigt ferner, daß die "Altes Programm"-Routine 2596 in Antwort auf die Wahl der Funktion 1D auf 25B ausgeführt werden wird. Die Auswahl der Funktion 1D wird die Übertragung des Kommando-Codes "115" von der Netzsteuereinheit 16 verursachen.
  • Es sollte vermerkt werden, daß die "Verifiziere Herabgeladenes Programm"-Routine 2590 die "Get One"-Routine ("Erlange Eines"-Routine) 2598 ruft, die in 25F gezeigt ist. Die "Get One"-Routine 2598 ist einfach eine Art, relativ lange Verzögerungen vorzusehen, wie etwa für eine Zeitüberschreitung von einer Sekunde. Wie in 25F gezeigt, steuert die "Get One"-Routine das Erniedrigen von mehreren Zählern (beispielsweise Block 2600).
  • Wenden wir uns nun dem Herabladeprozeß an den Ausbruchschaltungen 26 zu. Die BCOMM-Routine 2516 der 24D wird die Ausbruch-Herablade-Routine 2602 der 25T–25U rufen. Wie in den 25T–25U gezeigt, wird die Ausbruch-Herablade-Routine 2602 verschiedene Unterprogramme rufen, wie etwa die Jumpout-Routine (Spring-Heraus-Routine) 2604 der 25Z, die Rcv_Init-Routine 2606 der 27D und die "Get One"-Routine 2608 der 25Y. Die Ausbruch-Herablade-Routine 2602 spricht auch auf verschiedene, durch die Netzsteuereinheit 16 vom Prozeß-Steuer/Regel-Computer 14 empfangene Kommandos an. Beispielsweise wird die Ausbruch-Herablade-Routine 2602 in Antwort auf das Kommando "118" die "Überprüfe_Summen"-Unterroutine 2610 der 25V-25W rufen. Der Kommando-Code "118" ist eine Anforderung von dem sendenden Gerät, die verursachen wird, daß das empfangende Gerät die mit der übertragenen Software empfangenen Prüfsummen zurücksendet. Dies wird es dem sendenden Gerät ermöglichen, diese Prüfsummen mit den eingebetteten Prüfsummen in seinem Programmspeicher zu vergleichen. In ähnlicher Weise wird die Ausbruch-Herablade-Routine 2602 in Antwort auf das Kommando "122" die Empfange-Unterroutine 2612 der 26A–26B rufen. Die Empfange-Routine 2612 wird ihrerseits die Herablade-Routine 2614 der 25X rufen. Die Ausbruch-Herablade-Routine 2604 wird ferner die Tellall-Unterroutine ("Sage Es Allen"-Unterroutine) 2616 der 26C rufen, die den Kommando-Code zu stromabwärtigen Geräten weitergeben wird.
  • Wenn bestimmt ist, daß die Software Ausbruchsschaltungs-Software ist (Raute 2618), wird dann die Ausbruch-Herablade-Routine 2602 die Verifizierroutine VXRAM 2572 der 25O rufen. Falls die Prüfsummen korrekt sind (Raute 2620), wird dann die Reprog-Routine 2538 der 26D ausgeführt. Andernfalls wird eine Schlechte-Prüfsumme-Mitteilung angezeigt (Block 2622), und die Ausbruchschaltungen werden schließlich durch eine Zeitüberschreitungsimplementierung zur existierenden Software zurückkehren. 25U zeigt ferner, daß die Ausbruch-Herablade-Routine 2602 ferner auf das Kommando "115" ansprechen wird, das dazu verwendet wird, ein Hochfahren mit dem existierenden Software-Code zu verursachen (Block 2624). Diesbezüglich wird die Tellall-Unterroutine ("Sag Es Allen"-Unterroutine) 2616 gerufen werden, um dieses Kommando stromabwärts weiterzugeben, und es wird dann ein Sprung zurück zum Hauptprogramm für die Ausbruchschaltungen 26 gemacht (Block 2626).
  • Es wird wieder auf die 24E–24G Bezug genommen. Es wird gewürdigt werden, daß die FIO-Herablade-Routine 2524 eine Anzahl von Ähnlichkeiten zur Ausbruch-Herablade-Routine 2602 der 25T–25U hat. Somit wird beispielsweise die FIO-Herablade-Routine 2524 die Empfange-Routine 2524 der 26G in Antwort auf das Kommando "122" aufrufen. Ferner wird der Empfang des Kommandos "114" verursachen, daß die Feldcomputereinheiten 12 bestimmen, ob der herabgeladene Code FIO-Software ist (Raute 2628). Falls die empfangene Software keine FIO-Software ist, wird dann die "Altes Programm"- Unterroutine 2630 der 27I gerufen. Andernfalls wird die Verifizierroutine 2572 der 25O gerufen.
  • Es sollte ferner vermerkt werden, daß die FIO-Herablade-Routine 2524 in Antwort auf das Kommando "123" das Nachbar-Unterprogramm 2632 aufrufen wird. Das Nachbar-Unterprogramm 2632 ist in den 26J– 26K gezeigt. Das Nachbar-Unterprogramm 2632 wird dazu verwendet, neue Software von einer Steuereinheit 100 zu den beiden benachbarten Steuereinheiten in der gleichen Feldcomputereinheit 12 zu transferieren. Diesbezüglich verursacht das Nachbar-Unterprogramm 2632, daß der serielle Anschluß auf die Nachbar 1-Steuereinheit gerichtet wird und daß ein Burst von Kommando-Code-"113"-Signalen gesendet wird, um die benachbarte Steuereinheit aus ihrer Prozeß-Steuer/Regel-Zeitlinie zu bringen (Block 2636). Der serielle Anschluß wird dann auf die Nachbar 2-Steuereinheit gerichtet (Block 2638), und es werden die Kommando-Code"113"-Signale zu dieser Steuereinheit gesendet (Block 2640). Ferner wird ein Freigabe-Daten-Mode-Kommando-Code "122" zu diesen Steuereinheiten gesendet. Nach Empfang des Kommando-Codes "122" werden die benachbarten Steuereinheiten zur Empfange-Unterroutine 2524 abzweigen und dann mit der Verifizierroutine 2572 den Prüfsummentest durchführen.
  • 24G zeigt ferner, daß die FIO-Herablade-Routine 2524 auf den Kommando-Code "124" überprüfen wird (Raute 2642). Dieser Kommando-Code ist eine Anforderung für die benachbarte Steuereinheit, die neue Software empfangen hat, die Prüfsummen zurück zur sendenden Steuereinheit zu senden. Diesbezüglich sollte vermerkt werden, daß die sendende Steuereinheit für eine ausreichende Zeitperiode auf die benachbarte Steuereinheit warten wird, die Software zu empfangen und zu verifizieren, bevor der Kommando-Code "124" gesendet wird. Falls die Prüfsummen mit den eingebetteten Prüfsummen im Programm der sendenden Steuereinheit übereinstimmen, wird der Prozeß dann für die andere benachbarte Steuereinheit wiederholt. Wenn die Prüfsummen nicht übereinstimmen, wird dann der Herabladeprozeß beendet, indem die sendende Steuereinheit zum Start ihres Hauptprogramms zurückspringt.
  • Es wird auf 26V Bezug genommen, in der ein Flußdiagramm für die "My Side Receive"-Routine ("Meine Seite Empfangen"-Routine) 2644 gezeigt ist. Aufgrund der Tatsache; daß die Programme für die Feldcomputereinheiten 12 im RAM gespeichert sind, wird die "My Side Receive"-Routine ("Meine Seite Empfangen"-Routine) 2644 dazu verwendet, die Organisations-Software in eine Steuereinheit 100 zu laden, die gerade in einer Feldcomputereinheit installiert wurde. Die "My Side Receive"-Routine 2644 startet mit einem Suchen nach einer Programmquelle. Diesbezüglich wird die neue Steuereinheit auf ihre Nachbar 1-Steuereinheit zeigen (Block 2646) und dann das Nachbar-Unterprogramm 2648 der 26W rufen. Die Nachbar-Unterroutine 2648 wird ein Kommando-Code-"120"-Signal zu ihrer benachbarten Steuereinheiten senden (Block 2650), und sie wird dann nach einer Kommando-Code-"121"-Signalantwort hören (Block 2652). Falls die neue Steuereinheit nicht die erwartete Antwort innerhalb der gesetzten Zeitüberschreitungsperiode empfängt, wird sie dann den Prozeß mit der Nachbar 2-Steuereinheit wiederholen (Block 2654). Wiederum wird, wenn die erwartete Antwort nicht empfangen wird, die neue Steuereinheit dann zum seriellen Hauptanschluß weisen (Block 2656), um ihre Programm-Software vom Schnittstellennetz zu empfangen. Falls die neue Steuereinheit einen Kommando-Code "113" erfaßt, während sie auf ihren Hauptanschluß weist, wird sie dann zur FIO-Herablade-Routine 2524 springen, um ihre Software zu empfangen, wie oben erklärt.
  • Falls die neue Steuereinheit den erwarteten Kommando-Code "121" empfängt, wird dann die Kommando-Unterroutine 2658 der 26X– 26Y gerufen, um die Organisations-Software zu empfangen. Falls die benachbarte Steuereinheit im Modul Side Load (Seite-Laden) der 26Q–26R den Kommando-Code "120" empfängt, wird sie sich erinnern, von welcher Anschlußadresse diese Anforderung kam, mit dem Kommando-Code "121" antworten und diesen Kommando-Code in das "DOWN"-Byte (Herab-Byte) im XRAM schreiben. Beim nächsten Aufruf der Side_Load-Routine wird der sendende Nachbar den Kommando-Code "122" zur neuen Steuereinheit senden, um diese Steuereinheit in einen Datenempfangsmodus zu versetzen, und er wird einen Programmspeicherblock aus seinem eigenen Programmspeicher "PRAM" senden. Bei diesem Programmtransferverfahren wird die neue Software direkt in den Programmspeicher der empfangenen Steuereinheit geschrieben, und es wird keine Verifikation versucht, bis das Programm anfängt zu laufen. Falls der Transfer nicht erfolgreich ist, wird dann die gesamte "Meine Seite Empfangen"-Routine wieder wiederholt.

Claims (15)

  1. Verfahren zum nicht-intrusiven Testen einer digitalen Ausgangsschaltung (500) in einer Feldcomputereinheit (121, die einen Satz von wenigstens drei redundanten digitalen Ausgangsschaltungen (500, 502, 504) aufweist, die jeweils durch einen entsprechend redundanten Computer (92, 94, 96) gesteuert/geregelt werden, wobei jede der digitalen Ausgangsschaltungen eine Mehrzahl von Ausgangskanälen besitzt und jeder der Ausgangskanäle einen Netzschalter (516) besitzt, der durch einen der redundanten Computer gesteuert /geregelt wird, und einen Satz von Abbruchschaltern (518, 520) besitzt, die jeweils durch einen benachbarten redundanten Computer gesteuert/geregelt werden, wobei das Verfahren zum aktiven nicht-intrusiven Testen der digitalen Ausgangsschaltung die Schritte umfasst: a) Auswählen eines ersten Ausgangskanals, der aktiv an einer der digitalen Ausgangsschaltungen getestet werden soll; b) Bestimmen, ob der gewählte Ausgangskanal sich in einem Ein-Zustand befindet, bei dem der Netzschalter geschlossen ist und wenigstens einer der Abbruchschalter geschlossen ist, oder sich in einem Aus-Zustand befindet, bei dem wenigstens der Netzschalter geöffnet ist; c) Durchführen einer Serie von Aktiv-Aus-Tests, wenn der gewählte Ausgangskanal sich in einem Aus-Zustand befindet; d) Durchführen einer Serie von Aktiv-Ein-Tests, wenn der gewählte Ausgangskanal sich in einem Ein-Zustand befindet; e) Auswählen des nächsten Ausgangskanals, der aktiv an einer der digitalen Ausgangsschaltungen getestet werden soll, und Wiederholen der Schritte b) bis d) für den nächsten Ausgangskanal, der aktiv getestet werden soll; und f) Periodisches Wiederholen der Schritte b) bis e), bis alle der Ausgangskanäle für alle der digitalen Ausgangsschaltungen aktiv getestet sind.
  2. Verfahren nach Anspruch 1, wobei die Serie von Aktiv-Aus-Tests die Schritte enthält, jeden der Abbruchschalter für den gewählten Ausgangskanal der aufeinanderfolgend aktiv getesteten digitalen Ausgangsschaltung individuell zu schließen und dann zu öffnen und zu bestimmen, ob ein Testsignalpegel sich in Antwort auf das Schließen jedes der Abbruchschalter um eine vorbestimmte Größe ändert.
  3. Verfahren nach Anspruch 2, wobei die Abbruchschalter in Antwort auf einen Befehl geschlossen werden, der durch den redundanten Computer übertragen wird, der das Aktiv-Aus-Testen an jedem seiner benachbarten redundanten Computer durchführt, und wobei darauffolgend die Abbruchschalter durch jeden der benachbarten redundanten Computer nach einer vorbestimmten Zeitperiode geöffnet werden.
  4. Verfahren nach Anspruch 2 oder 3, wobei die Serie von Aktiv-Aus-Tests den Schritt enthält, den Netzschalter zu schließen und dann zu öffnen, während alle der Abbruchschalter geöffnet sind.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei die Serie von Aktiv-Ein-Tests den Schritt umfasst: a) Öffnen des Netzschalters, während alle der Abbruchschalter geschlossen sind, Bestimmen, ob der Testsignalpegel sich um eine erste vorbestimmte Größe ändert, und Schließen des Netzschalters; b) Öffnen und dann Schließen jedes der Abbruchschalter im Wechsel und Bestimmen, ob der Testsignalpegel sich verändert hat; c) Öffnen aller der Abbruchschalter, Bestimmen, ob der Testsignalpegel sich um eine zweite vorbestimmte Größe verändert hat; und d) Öffnen des Netzschalters und aller der Abbruchschalter, Bestimmen, ob der Testsignalpegel sich um eine dritte vorbestimmte Größe verändert hat, Schließen des Netzschalters und Schließen aller der Abbruchschalter.
  6. Verfahren nach Anspruch 5, wobei die Abbruchschalter in Antwort auf einen Befehl geschlossen werden, der durch den redundanten Computer übertragen wird, der das Aktiv-Testen an jedem seiner benachbarten redundanten Computer durchführt, und wobei darauffolgend die Abbruchschalter durch jeden der benachbarten redundanten Computer nach einer vorbestimmten Zeitperiode geöffnet werden.
  7. Verfahren nach Anspruch 6, wobei jeder der benachbarten Computer bestimmt, ob die von dem redundanten Computer, der das Aktiv-Ein-Testen durchführt, empfangenen Befehle ausgeführt werden können, und wobei jeder der benachbarten Computer an den redundanten Computer, der das Aktiv-Ein-Testen durchführt, jeden empfangenen Befehl wieder zurückgibt, der ausgeführt werden kann.
  8. Verfahren nach einem der Ansprüche 1 bis 7, wobei das Verfahren dafür ausgelegt ist, ein passives nicht-intrusives Testen des Satzes von entsprechenden digitalen Ausgangsschaltungen (500, 502, 504) in der Feldcomputereinheit durchzuführen, die wenigstens drei redundante Computer (92, 94, 96) aufweist, wobei jede der digitalen Ausgangsschaltungen eine Mehrzahl von Ausgangskanälen besitzt, wobei entsprechende Ausgangskanäle der digitalen Ausgangschaltungen mit einem gemeinsamen Anschluss (506) verbunden sind, wobei das Verfahren die Schritte umfasst: Bereitstellen einer vorbestimmten Zeitperiode, in der ein passiver Test einer Mehrzahl der Ausgangskanäle durchgeführt werden soll; Durchführen eines passiven Testens (1400) einer Mehrzahl der Ausgangskanäle während der vorbestimmten Zeitperiode ungeachtet dessen, ob die Ausgangskanäle Ein oder Aus sind; Auswählen wenigstens eines der Ausgangskanäle für eine der digitalen Ausgangsschaltungen zum aktiven Testen, nachdem die vorbestimmte Zeitperiode abgelaufen ist; und Durchführen einer Serie von aktiven Tests, wobei die aktiven Tests eine Mehrzahl von Aktiv-Aus-Tests umfassen, wenn der gewählte Ausgangskanal sich in einem Aus-Zustand befindet, und eine Mehrzahl von Aktiv-Ein-Tests umfassen, wenn der gewählte Ausgangskanal sich in einem Ein-Zustand befindet, wobei das passive Testen für jeden der Mehrzahl von Ausgangskanälen die Schritte enthält, die Größe eines ersten Signals (TEST L, TEST M, TEST R), das der jeweiligen digitalen Ausgangsschaltung zugeordnet ist, mit einem ersten vorbestimmten hohen Testpegel (19V) zu vergleichen, wenn der Kanal Ein ist, und die Größe eines zweiten Signals (TRACK), das dem gemeinsamen Anschluss (506) zugeordnet ist, mit einem vorbestimmten niedrigen Spurpegel (4,4V) zu vergleichen, wenn der Kanal Aus ist, wobei das erste und das zweite Signal unterschiedliche Signale sind und jeder der Vergleichsschritte eine Bestimmung einer unterschiedlichen Fehlerbedingung vorsieht.
  9. Verfahren nach Anspruch 8, wobei das erste und das zweite Signal eine Anzeige des Spannungspegels an entgegengesetzten Seiten der jeweiligen Diode (524) vorsehen, durch die ein hohes Ausgangssignal von der digitalen Ausgangsschaltung zu dem gemeinsamen Anschluss (506) übertragen wird.
  10. Verfahren nach Anspruch 8 oder 9, das den Schritt enthält, die Größe des ersten Signals mit einem zweiten vorbestimmten hohen Testpegel (15,8V) zu vergleichen, wenn der passiv getestete Ausgangskanal Aus ist.
  11. Verfahren nach Anspruch 10, das den Schritt enthält, die Größe des zweiten Signals mit einem vorbestimmten minimalen Spurpegel (0,240V) zu vergleichen, wenn der passiv getestete Ausgangskanal Aus ist und die Größe des zweiten Signals unter dem vorbestimmten niedrigen Spursignal (4,4V) liegt.
  12. Verfahren nach einem der Ansprüche 8 bis 11, das den Schritt enthält, das erste und das zweite Signal zu vergleichen, um das Vorhandensein eines Spannungsabfalls über die Diode (524) hinweg zu bestimmen, wenn der getestete Ausgangskanal Aus ist.
  13. Verfahren nach einem der Ansprüche 8 bis 12, wobei die Ausgangskanäle während der vorbestimmten Zeitperiode aufeinanderfolgend getestet werden.
  14. Verfahren nach Anspruch 13, wobei die Ausgangskanäle für jede der entsprechenden digitalen Ausgangsschaltungen während unterschiedlicher vorbestimmter Zeitperioden getestet werden.
  15. Verfahren nach einem der Ansprüche 8 bis 14, das den Schritt enthält, das passive Testen für einen Ausgangskanal temporär zu stoppen, wenn bestimmt wird, dass der getestete Ausgangskanal digitale Zustände verändert hat.
DE69332897T 1992-03-31 1993-03-15 Schnittstelle für ein Prozesssteurungssystem mit dreifach redundanten entfernten Feldeinheiten Expired - Fee Related DE69332897T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/864,931 US5428769A (en) 1992-03-31 1992-03-31 Process control interface system having triply redundant remote field units
US864931 1992-03-31

Publications (2)

Publication Number Publication Date
DE69332897D1 DE69332897D1 (de) 2003-05-22
DE69332897T2 true DE69332897T2 (de) 2004-02-26

Family

ID=25344354

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69322626T Expired - Fee Related DE69322626T2 (de) 1992-03-31 1993-03-15 Schnittstelle für ein prozesssteuerungssystem mit dreifach redundanten entfernten feldeinheiten
DE69332897T Expired - Fee Related DE69332897T2 (de) 1992-03-31 1993-03-15 Schnittstelle für ein Prozesssteurungssystem mit dreifach redundanten entfernten Feldeinheiten

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69322626T Expired - Fee Related DE69322626T2 (de) 1992-03-31 1993-03-15 Schnittstelle für ein prozesssteuerungssystem mit dreifach redundanten entfernten feldeinheiten

Country Status (12)

Country Link
US (4) US5428769A (de)
EP (4) EP0631673B1 (de)
JP (1) JPH07507889A (de)
KR (2) KR100322462B1 (de)
AU (1) AU3918393A (de)
CA (1) CA2131156A1 (de)
DE (2) DE69322626T2 (de)
ES (2) ES2191884T3 (de)
HK (2) HK1011427A1 (de)
MX (1) MX9301799A (de)
SG (1) SG55081A1 (de)
WO (1) WO1993020488A2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008038131B4 (de) * 2008-08-18 2013-12-05 EAE Ewert Automation Electronic GmbH Redundantes Steuerungssystem und Verfahren zur sicherheitsgerichteten Ansteuerung von Aktoren

Families Citing this family (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07507892A (ja) * 1992-06-12 1995-08-31 ザ、ダウ、ケミカル、カンパニー プロセス制御コンピュータ用透過型インターフェース
AU5343794A (en) * 1992-11-06 1994-06-08 University Of Newcastle-Upon-Tyne Efficient schemes for constructing reliable computing nodes in distributed systems
US5666129A (en) * 1994-07-06 1997-09-09 Level One Communications, Inc. Electrical display elements for displaying multiple different conditions
EP0742499B1 (de) * 1995-05-11 2001-09-05 Siemens Aktiengesellschaft Sicheres Verarbeiten von sicherheitsgerichteten Prozesssignalen
EP0825506B1 (de) 1996-08-20 2013-03-06 Invensys Systems, Inc. Verfahren und Gerät zur Fernprozesssteuerung
US6381506B1 (en) 1996-11-27 2002-04-30 Victor Grappone Fail-safe microprocessor-based control and monitoring of electrical devices
US6070250A (en) * 1996-12-13 2000-05-30 Westinghouse Process Control, Inc. Workstation-based distributed process control system
SE9702176L (sv) 1997-06-06 1998-12-07 Ericsson Telefon Ab L M En maskinvarukonstruktion för majoritetsval, samt test och underhåll av majoritetsval
US6216051B1 (en) * 1998-05-04 2001-04-10 Nec Electronics, Inc. Manufacturing backup system
US6748451B2 (en) 1998-05-26 2004-06-08 Dow Global Technologies Inc. Distributed computing environment using real-time scheduling logic and time deterministic architecture
US6368366B1 (en) 1999-07-07 2002-04-09 The Lubrizol Corporation Process and apparatus for making aqueous hydrocarbon fuel compositions, and aqueous hydrocarbon fuel composition
US6383237B1 (en) 1999-07-07 2002-05-07 Deborah A. Langer Process and apparatus for making aqueous hydrocarbon fuel compositions, and aqueous hydrocarbon fuel compositions
US6368367B1 (en) 1999-07-07 2002-04-09 The Lubrizol Corporation Process and apparatus for making aqueous hydrocarbon fuel compositions, and aqueous hydrocarbon fuel composition
US6647301B1 (en) 1999-04-22 2003-11-11 Dow Global Technologies Inc. Process control system with integrated safety control system
AU5025600A (en) 1999-05-17 2000-12-05 Foxboro Company, The Process control configuration system with parameterized objects
US7089530B1 (en) 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6522934B1 (en) * 1999-07-02 2003-02-18 Fisher-Rosemount Systems, Inc. Dynamic unit selection in a process control system
US6913630B2 (en) 1999-07-07 2005-07-05 The Lubrizol Corporation Amino alkylphenol emulsifiers for an aqueous hydrocarbon fuel
US6827749B2 (en) 1999-07-07 2004-12-07 The Lubrizol Corporation Continuous process for making an aqueous hydrocarbon fuel emulsions
US6530964B2 (en) 1999-07-07 2003-03-11 The Lubrizol Corporation Continuous process for making an aqueous hydrocarbon fuel
US20040111956A1 (en) * 1999-07-07 2004-06-17 Westfall David L. Continuous process for making an aqueous hydrocarbon fuel emulsion
US6419714B2 (en) 1999-07-07 2002-07-16 The Lubrizol Corporation Emulsifier for an acqueous hydrocarbon fuel
US6652607B2 (en) 1999-07-07 2003-11-25 The Lubrizol Corporation Concentrated emulsion for making an aqueous hydrocarbon fuel
US6850973B1 (en) * 1999-09-29 2005-02-01 Fisher-Rosemount Systems, Inc. Downloadable code in a distributed process control system
US6473660B1 (en) * 1999-12-03 2002-10-29 The Foxboro Company Process control system and method with automatic fault avoidance
US6550018B1 (en) 2000-02-18 2003-04-15 The University Of Akron Hybrid multiple redundant computer system
US6732300B1 (en) 2000-02-18 2004-05-04 Lev Freydel Hybrid triple redundant computer system
US6931641B1 (en) * 2000-04-04 2005-08-16 International Business Machines Corporation Controller for multiple instruction thread processors
US7292897B2 (en) * 2000-04-28 2007-11-06 Hitachi, Ltd. Multiplexing control system and multiplexing method therefor
DE10063350C1 (de) * 2000-12-19 2002-07-18 Siemens Ag Verfahren zur Überwachung einer Datenverarbeitung und -übertragung
US20020141402A1 (en) * 2001-03-08 2002-10-03 Chang Li-Tien Telecommunication auto-looper
US6704887B2 (en) * 2001-03-08 2004-03-09 The United States Of America As Represented By The Secretary Of The Air Force Method and apparatus for improved security in distributed-environment voting
US7552191B1 (en) * 2001-06-12 2009-06-23 F5 Networks, Inc. Method and apparatus to facilitate automatic sharing in a client server environment
JP2003177938A (ja) * 2001-12-07 2003-06-27 Fujitsu Ltd 電子装置及びそのデバッグ認証方法
US6850807B2 (en) * 2001-09-10 2005-02-01 Kabushiki Kaisha Toshiba Triple redundant control device and method
US7093168B2 (en) * 2002-01-22 2006-08-15 Honeywell International, Inc. Signal validation and arbitration system and method
EP1468337A1 (de) * 2002-01-22 2004-10-20 Honeywell International Inc. Verfahren und system zur signalbestätigung und arbitrierung
NO20021247D0 (no) * 2002-03-13 2002-03-13 Ericsson Telefon Ab L M Fremgangsmåte og system for oppgradering av programvare
GB0216740D0 (en) * 2002-07-18 2002-08-28 Ricardo Consulting Eng Self-testing watch dog system
DE10240584A1 (de) 2002-08-28 2004-03-11 Pilz Gmbh & Co. Sicherheitssteuerung zum fehlersicheren Steuern von sicherheitskritischen Prozessen sowie Verfahren zum Aufspielen eines neuen Betriebsprogrammes auf eine solche
US7516043B2 (en) * 2003-07-31 2009-04-07 Fisher Controls International Llc Triggered field device data collection in a process control system
US7085865B2 (en) * 2003-08-21 2006-08-01 International Business Machines Corporation I/O throughput by pre-termination arbitration
US6844840B1 (en) * 2003-10-14 2005-01-18 Cirrus Logic, Inc. Successive-approximation-register (SAR) analog-to-digital converter (ADC) and method utilizing N three-way elements
US7526568B1 (en) * 2004-02-20 2009-04-28 Broadcast Pix, Inc. Integrated live video production system
US7761923B2 (en) 2004-03-01 2010-07-20 Invensys Systems, Inc. Process control methods and apparatus for intrusion detection, protection and network hardening
US7202624B2 (en) * 2004-04-30 2007-04-10 Minebea Co., Ltd. Self calibrating fan
DE102004035442B4 (de) * 2004-07-22 2006-06-01 Phoenix Contact Gmbh & Co. Kg Verfahren und Vorrichtung zum sicheren Schalten eines Automatisierungsbussystems
JP4529079B2 (ja) * 2004-09-02 2010-08-25 横河電機株式会社 制御システム
JP2006114149A (ja) * 2004-10-15 2006-04-27 Fujitsu Ltd 半導体試験システム
RU2007119317A (ru) * 2004-10-25 2008-12-10 Роберт Бош ГмбХ (DE) Способ и устройство для переключения в вычислительной системе, включающей в себя по меньшей мере два исполнительных блока
US20080270746A1 (en) * 2004-10-25 2008-10-30 Bernd Mueller Method and Device for Performing Switchover Operations and for Comparing Signals in a Computer System Having at Least Two Processing Units
US8938557B2 (en) * 2004-12-23 2015-01-20 Abb Technology Ag Method for configuring field devices
JP4743508B2 (ja) * 2005-11-29 2011-08-10 横河電機株式会社 プラント制御システム
WO2007123753A2 (en) * 2006-03-30 2007-11-01 Invensys Systems, Inc. Digital data processing apparatus and methods for improving plant performance
JP4645519B2 (ja) * 2006-04-27 2011-03-09 株式会社デンソー 演算処理装置,制御装置およびプログラム
US7546486B2 (en) * 2006-08-28 2009-06-09 Bycast Inc. Scalable distributed object management in a distributed fixed content storage system
US7680034B2 (en) * 2006-11-03 2010-03-16 General Electric Company Redundant control systems and methods
US7898937B2 (en) * 2006-12-06 2011-03-01 Cisco Technology, Inc. Voting to establish a new network master device after a network failover
US7710075B1 (en) * 2007-01-31 2010-05-04 Network Appliance, Inc. Apparatus and implementation of a battery in a non volatile memory subsystem
US20090006902A1 (en) * 2007-06-29 2009-01-01 International Business Machines Corporation Methods, systems, and computer program products for reporting fru failures in storage device enclosures
US20090037996A1 (en) * 2007-07-30 2009-02-05 Shiakallis Peter P Multi-Domain Secure Computer System
US20090076628A1 (en) * 2007-09-18 2009-03-19 David Mark Smith Methods and apparatus to upgrade and provide control redundancy in process plants
US9395771B1 (en) * 2007-10-26 2016-07-19 Pce, Inc. Plenum pressure control system
DE102007054923A1 (de) * 2007-11-15 2009-05-20 Endress + Hauser Process Solutions Ag Verfahren zum Betreiben eines Feldgerätes
DE102007062974B4 (de) * 2007-12-21 2010-04-08 Phoenix Contact Gmbh & Co. Kg Signalverarbeitungsvorrichtung
US7991535B2 (en) * 2008-02-08 2011-08-02 Gittere Robert J Portable, palm-sized data acquisition system for use in internal combustion engines and industry
US7899850B2 (en) 2008-02-22 2011-03-01 Bycast, Inc. Relational objects for the optimized management of fixed-content storage systems
RU2495476C2 (ru) 2008-06-20 2013-10-10 Инвенсис Системз, Инк. Системы и способы для иммерсивного взаимодействия с действительными и/или имитируемыми техническими средствами для управления технологическим процессом, контроля состояния окружающей среды и производственного контроля
US8072098B2 (en) * 2008-09-29 2011-12-06 Honeywell International Inc. Remotely configurable analog/digital input circuit and related apparatus and method
US8214165B2 (en) * 2008-12-30 2012-07-03 International Business Machines Corporation Apparatus, system, and method for precise early detection of AC power loss
US8898267B2 (en) * 2009-01-19 2014-11-25 Netapp, Inc. Modifying information lifecycle management rules in a distributed system
EP2233991A1 (de) * 2009-03-25 2010-09-29 Siemens Aktiengesellschaft Sicherheitsgerichtetes Automatisierungssystem mit automatischer Adresswiederherstellung
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
AT509310B1 (de) * 2009-12-16 2015-10-15 Bachmann Gmbh Verfahren zum betrieb einer speicherprogrammierbaren steuerung (sps) mit dezentraler, autonomer ablaufsteuerung
DE102010029370A1 (de) * 2010-05-27 2011-12-01 Siemens Aktiengesellschaft U-Boot-Propulsionsantriebssystem
EP2576316A2 (de) * 2010-05-31 2013-04-10 Central Signal, LLC Zugerkennung
JP2013540326A (ja) * 2010-10-11 2013-10-31 ゼネラル・エレクトリック・カンパニイ 冗長センサ信号でシフトを検出するためのシステム、方法、及び装置
US8930752B2 (en) 2011-02-15 2015-01-06 International Business Machines Corporation Scheduler for multiprocessor system switch with selective pairing
US8635492B2 (en) * 2011-02-15 2014-01-21 International Business Machines Corporation State recovery and lockstep execution restart in a system with multiprocessor pairing
US8671311B2 (en) 2011-02-15 2014-03-11 International Business Machines Corporation Multiprocessor switch with selective pairing
WO2012130241A1 (en) 2011-03-30 2012-10-04 Vestas Wind Systems A/S Wind power plant with highly reliable real-time power control
WO2012163636A1 (de) * 2011-05-27 2012-12-06 Siemens Aktiengesellschaft Verfahren zum test von redundanten analogausgängen und zugehörige einrichtung
US10140049B2 (en) 2012-02-24 2018-11-27 Missing Link Electronics, Inc. Partitioning systems operating in multiple domains
US9355120B1 (en) 2012-03-02 2016-05-31 Netapp, Inc. Systems and methods for managing files in a content storage system
JP2014056374A (ja) * 2012-09-12 2014-03-27 Renesas Electronics Corp 情報処理装置
DE102013100159A1 (de) * 2012-11-28 2014-05-28 Endress + Hauser Gmbh + Co. Kg Feldgerät zur Bestimmung oder Überwachung einer Prozessgröße in der Automatisierungstechnik
US10803990B1 (en) 2012-12-22 2020-10-13 Bertec Corporation Measurement and testing system that includes a data processing device configured to synchronize a first plurality of data values with a second plurality of data values by determining which first timestamps correspond to which second timestamps and to interpolate values missing from the second values
US10331324B1 (en) 2012-12-22 2019-06-25 Bertec Corporation Measurement and testing system
US9829311B1 (en) * 2012-12-22 2017-11-28 Bertec Corporation Force measurement system
US11705244B1 (en) 2012-12-22 2023-07-18 Bertec Corporation Force and/or motion measurement system that includes at least one camera and at least one data processing device configured to execute computer executable instructions for determining a position and/or movement
US9740178B2 (en) * 2013-03-14 2017-08-22 GM Global Technology Operations LLC Primary controller designation in fault tolerant systems
DE102014113371A1 (de) 2014-09-17 2016-03-17 Knorr-Bremse Systeme für Schienenfahrzeuge GmbH Verfahren zur Überwachung und Diagnose von Komponenten eines Schienenfahrzeugs, mit erweiterbarer Auswertungssoftware
US9838142B2 (en) 2014-10-15 2017-12-05 Christopher B. TYRRELL Electrical conductor to optical input conversion system
JP2016092445A (ja) * 2014-10-29 2016-05-23 株式会社リコー シリアル通信システム
CN104460661B (zh) * 2014-12-05 2017-12-12 国家电网公司 可进行远程停电复位和远程监控的远程调试系统
DE102015213744A1 (de) * 2015-07-21 2017-01-26 Ellenberger & Poensgen Gmbh Stromverteiler
US10825263B2 (en) 2016-06-16 2020-11-03 Honeywell International Inc. Advanced discrete control device diagnostic on digital output modules
KR101988361B1 (ko) * 2017-06-15 2019-06-12 버슘머트리얼즈 유에스, 엘엘씨 가스 공급 시스템
US10579558B1 (en) * 2019-03-06 2020-03-03 Honeywell International Inc. Flexible redundant input/output (I/O) schemes for I/O channels
CN111123130A (zh) * 2019-12-25 2020-05-08 北京空间飞行器总体设计部 一种卫星锂离子蓄电池电压遥测健康性在轨自主诊断的方法
CA3201234A1 (en) 2020-12-07 2022-06-16 Philippe Arthur Jean Ghislain CHEVALIER A cyber-physical system for an autonomous or semi-autonomous vehicle
CN113296388A (zh) * 2021-05-27 2021-08-24 四川腾盾科技有限公司 一种三余度无人机舵机输出指令表决方法、系统、计算机程序及存储介质
CN114033558B (zh) * 2021-11-09 2023-01-31 唐山中芯智控科技有限公司 一种低成本高速高精度的燃气轮机专用模拟量输出模块

Family Cites Families (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US33521A (en) * 1861-10-22 Improved apparatus for heating air for blast-furnaces
US3377623A (en) * 1965-09-29 1968-04-09 Foxboro Co Process backup system
DE1549397B2 (de) * 1967-06-16 1972-09-14 Chemische Werke Hüls AG, 4370 Mari Verfahren zur automatischen steuerung chemischer anlagen
US3665173A (en) * 1968-09-03 1972-05-23 Ibm Triple modular redundancy/sparing
US3593307A (en) * 1968-09-20 1971-07-13 Adaptronics Inc Redundant, self-checking, self-organizing control system
GB1253309A (en) * 1969-11-21 1971-11-10 Marconi Co Ltd Improvements in or relating to data processing arrangements
GB1308497A (en) * 1970-09-25 1973-02-21 Marconi Co Ltd Data processing arrangements
US4049957A (en) * 1971-06-23 1977-09-20 Hitachi, Ltd. Dual computer system
US3783250A (en) * 1972-02-25 1974-01-01 Nasa Adaptive voting computer system
US3845356A (en) * 1972-04-06 1974-10-29 Foxboro Co Process control system for hazardous areas
US3895223A (en) * 1973-01-03 1975-07-15 Westinghouse Electric Corp Circuit arrangement for enhancing the reliability of common bus outputs of plural redundant systems
DE2303828A1 (de) * 1973-01-26 1974-08-01 Standard Elektrik Lorenz Ag Steuerverfahren mit drei parallel betriebenen rechnern
CH556576A (de) * 1973-03-28 1974-11-29 Hasler Ag Einrichtung zur synchronisierung dreier rechner.
US3898621A (en) * 1973-04-06 1975-08-05 Gte Automatic Electric Lab Inc Data processor system diagnostic arrangement
CA1026850A (en) * 1973-09-24 1978-02-21 Smiths Industries Limited Dual, simultaneously operating control system with fault detection
US4015246A (en) * 1975-04-14 1977-03-29 The Charles Stark Draper Laboratory, Inc. Synchronous fault tolerant multi-processor system
JPS5831602B2 (ja) * 1976-02-04 1983-07-07 株式会社日立製作所 二重系制御装置
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4099234A (en) * 1976-11-15 1978-07-04 Honeywell Information Systems Inc. Input/output processing system utilizing locked processors
DE2701924B2 (de) * 1977-01-19 1981-03-19 Standard Elektrik Lorenz Ag, 7000 Stuttgart Steuereinrichtung für spurgebundene Fahrzeuge
US4105900A (en) * 1977-02-16 1978-08-08 The Boeing Company Signal selection apparatus for redundant signal sources
US4358823A (en) * 1977-03-25 1982-11-09 Trw, Inc. Double redundant processor
US4101958A (en) * 1977-09-01 1978-07-18 Rockwell International Corporation Apparatus and method for effecting redundant control data transfer in a digital flight control system
US4133027A (en) * 1977-09-13 1979-01-02 Honeywell Inc. Process control system with backup process controller
US4159444A (en) * 1978-03-21 1979-06-26 Sperry Rand Corporation Fail operational dual electromechanical servo actuator for aircraft with model monitoring
GB2019622B (en) * 1978-04-14 1982-04-07 Lucas Industries Ltd Digital computing apparatus
GB2022893B (en) * 1978-06-10 1983-01-12 Westinghouse Brake & Signal Fault detection
FR2430633A1 (fr) * 1978-07-07 1980-02-01 Sfena Systeme de commande auto-surveille, d'un processus
US4270168A (en) * 1978-08-31 1981-05-26 United Technologies Corporation Selective disablement in fail-operational, fail-safe multi-computer control system
JPS55146552A (en) * 1979-05-02 1980-11-14 Hitachi Ltd N 1 backkup method of dispersion type hierarchy system
US4271505A (en) * 1979-07-02 1981-06-02 The Foxboro Company Process communication link
US4276648A (en) * 1979-09-04 1981-06-30 The Boeing Company Midvalue signal selection and fault detection apparatus and method
DE2939487A1 (de) * 1979-09-28 1981-04-16 Siemens AG, 1000 Berlin und 8000 München Rechnerarchitektur auf der basis einer multi-mikrocomputerstruktur als fehlertolerantes system
US4277832A (en) * 1979-10-01 1981-07-07 General Electric Company Fluid flow control system
US4656475A (en) * 1979-10-30 1987-04-07 General Electric Company Method and apparatus for controlling distributed electrical loads
US4347563A (en) * 1980-06-16 1982-08-31 Forney Engineering Company Industrial control system
US4304001A (en) * 1980-01-24 1981-12-01 Forney Engineering Company Industrial control system with interconnected remotely located computer control units
US4352103A (en) * 1980-01-24 1982-09-28 Forney Engineering Company Industrial control system
US4321666A (en) * 1980-02-05 1982-03-23 The Bendix Corporation Fault handler for a multiple computer system
US4412281A (en) 1980-07-11 1983-10-25 Raytheon Company Distributed signal processing system
EP0268041B1 (de) * 1980-09-02 1992-06-17 Deutsche Airbus GmbH Servo-Einheit zur Betätigung von zu einem Flugsteuerungs-System gehörenden Steuerflächen oder dgl.
US4530045A (en) * 1980-09-23 1985-07-16 Petroff Alan M Measurement and control system
US4375683A (en) * 1980-11-12 1983-03-01 August Systems Fault tolerant computational system and voter circuit
US4371754A (en) * 1980-11-19 1983-02-01 Rockwell International Corporation Automatic fault recovery system for a multiple processor telecommunications switching control
US4424559A (en) * 1981-02-27 1984-01-03 New Brunswick Scientific Co., Inc. Modular instrumentation for monitoring and control of biochemical processes
JPS57164636A (en) 1981-04-03 1982-10-09 Hitachi Ltd Control method for transmission system
US4443861A (en) * 1981-04-13 1984-04-17 Forney Engineering Company Combined mode supervisory program-panel controller method and apparatus for a process control system
JPS58500820A (ja) * 1981-05-27 1983-05-19 マステク、コ−パレイシヤン 集積回路作動方法および集積回路作動電力制御回路
US4532630A (en) * 1981-05-28 1985-07-30 Marconi Avionics Limited Similar-redundant signal systems
IN160140B (de) * 1981-10-10 1987-06-27 Westinghouse Brake & Signal
DE3208573C2 (de) * 1982-03-10 1985-06-27 Standard Elektrik Lorenz Ag, 7000 Stuttgart 2 aus 3-Auswahleinrichtung für ein 3-Rechnersystem
US4472806A (en) * 1982-05-03 1984-09-18 The Boeing Company Signal selection and fault detection apparatus
JPS58171537U (ja) * 1982-05-07 1983-11-16 ブラザー工業株式会社 電子機器
US4517639A (en) * 1982-05-13 1985-05-14 The Boeing Company Fault scoring and selection circuit and method for redundant system
WO1984000071A1 (en) * 1982-06-16 1984-01-05 Boeing Co Autopilot flight director system
JPS5985153A (ja) * 1982-11-08 1984-05-17 Hitachi Ltd 冗長化制御装置
IT1169167B (it) * 1983-02-15 1987-05-27 Gd Spa Sistema di controllo funzionale per trasduttori di uscita di un'unita' centrale di controllo e comando per macchine e/o dispositivi utilizzabili in linee di produzione e/o confezionamento di prodotti
DE3310585C2 (de) 1983-03-23 1985-08-01 Texas Instruments Deutschland Gmbh, 8050 Freising Speicherschutzschaltung
US4872106A (en) * 1983-04-06 1989-10-03 New Forney Corp. Industrial process control system with back-up data processors to take over from failed primary data processors
JPS59212902A (ja) * 1983-05-18 1984-12-01 Hitachi Ltd 多重化制御装置
JPS59224228A (ja) * 1983-06-02 1984-12-17 Fanuc Ltd 数値制御装置
US4562575A (en) * 1983-07-07 1985-12-31 Motorola, Inc. Method and apparatus for the selection of redundant system modules
US4634110A (en) * 1983-07-28 1987-01-06 Harris Corporation Fault detection and redundancy management system
US4610013A (en) * 1983-11-08 1986-09-02 Avco Corporation Remote multiplexer terminal with redundant central processor units
US4600870A (en) 1983-11-17 1986-07-15 United Technologies Corporation Dual controller position control system
JPH0754442B2 (ja) * 1983-11-24 1995-06-07 大倉電気株式会社 プロセス制御システム
JPS60122407A (ja) * 1983-12-06 1985-06-29 Fanuc Ltd プログラマブル・コントロ−ラ
US4617475A (en) * 1984-03-30 1986-10-14 Trilogy Computer Development Partners, Ltd. Wired logic voting circuit
US4823256A (en) * 1984-06-22 1989-04-18 American Telephone And Telegraph Company, At&T Bell Laboratories Reconfigurable dual processor system
US4695952A (en) * 1984-07-30 1987-09-22 United Technologies Corporation Dual redundant bus interface circuit architecture
US4748594A (en) * 1984-11-12 1988-05-31 Nec Corporation Integrated circuit device having a memory and majority logic
US4622667A (en) * 1984-11-27 1986-11-11 Sperry Corporation Digital fail operational automatic flight control system utilizing redundant dissimilar data processing
US4663704A (en) * 1984-12-03 1987-05-05 Westinghouse Electric Corp. Universal process control device and method for developing a process control loop program
US4635184A (en) * 1984-12-17 1987-01-06 Combustion Engineering, Inc. Distributed control with mutual spare switch over capability
US4672530A (en) * 1984-12-17 1987-06-09 Combustion Engineering, Inc. Distributed control with universal program
US4777626A (en) * 1984-12-22 1988-10-11 Tokyo Electric Co., Ltd. Memory device having backup power supply
US4639885A (en) * 1984-12-24 1987-01-27 United Technologies Corporation EMI suppression for electronic engine control frequency signal inputs
US4665522A (en) * 1985-01-28 1987-05-12 The Charles Stark Draper Laboratory, Inc. Multi-channel redundant processing systems
FR2577087B1 (fr) * 1985-02-07 1987-03-06 Thomson Csf Mat Tel Dispositif de distribution d'horloge tripliquee, chaque signal d'horloge comportant un signal de synchronisation
US4726026A (en) * 1985-02-08 1988-02-16 Triconex Corporation Fault-tolerant voted output system
US4982430A (en) * 1985-04-24 1991-01-01 General Instrument Corporation Bootstrap channel security arrangement for communication network
US4752869A (en) * 1985-05-09 1988-06-21 Westinghouse Electric Corp. Auxiliary reactor protection system
DE3522220C2 (de) 1985-06-21 1997-02-06 Licentia Gmbh Schaltungsanordnung zur sicheren Ansteuerung von Stellelementen eines Prozesses
US4683105A (en) * 1985-10-31 1987-07-28 Westinghouse Electric Corp. Testable, fault-tolerant power interface circuit for normally de-energized loads
FR2591777B1 (fr) * 1985-12-13 1991-03-15 Cimsa Sintra Reseau informatise de grande securite de fonctionnement et procede de commande utilisant un tel reseau
JPH0778750B2 (ja) * 1985-12-24 1995-08-23 日本電気株式会社 高信頼性コンピュータ方式
US4799140A (en) * 1986-03-06 1989-01-17 Orbital Sciences Corporation Ii Majority vote sequencer
US4967347A (en) * 1986-04-03 1990-10-30 Bh-F (Triplex) Inc. Multiple-redundant fault detection system and related method for its use
EP0239662B1 (de) * 1986-04-03 1993-03-17 Otis Elevator Company Zweirichtungsringverbindungssystem für Aufzugsgruppensteuerung
US4713832A (en) * 1986-04-11 1987-12-15 Ampex Corporation Programmable divider up/down counter with anti-aliasing feature and asynchronous read/write
GB8615057D0 (en) * 1986-06-20 1986-07-23 Approved Prod Technology Ltd Adaptive control systems
US4843537A (en) * 1986-07-04 1989-06-27 Hitachi, Ltd. Control system
US4730313A (en) * 1986-08-18 1988-03-08 Racal Data Communications Inc. Access circuit diagnostics for integrated services digital network
US4797884A (en) * 1986-09-29 1989-01-10 Texas Instruments Incorporated Redundant device control unit
US4774709A (en) * 1986-10-02 1988-09-27 United Technologies Corporation Symmetrization for redundant channels
US4914657A (en) * 1987-04-15 1990-04-03 Allied-Signal Inc. Operations controller for a fault tolerant multiple node processing system
SE457391B (sv) * 1987-04-16 1988-12-19 Ericsson Telefon Ab L M Programminnesstyrt realtidssystem omfattande tre i huvudsak identiska processorer
DE3714960A1 (de) * 1987-04-30 1988-11-10 Licentia Gmbh Anordnung zur sicheren erfassung von prozesszustaenden innerhalb frei miteinander kuppelbarer einheiten und verfahren zur durchfuehrung
DE3723727A1 (de) * 1987-07-17 1989-01-26 Siemens Ag Stromversorgungseinrichtung
US4858101A (en) * 1987-08-26 1989-08-15 Allen-Bradley Company, Inc. Programmable controller with parallel processors
US4868826A (en) * 1987-08-31 1989-09-19 Triplex Fault-tolerant output circuits
JPH0731537B2 (ja) * 1987-09-11 1995-04-10 株式会社日立製作所 多重化制御装置
US4916612A (en) * 1987-11-02 1990-04-10 The Boeing Company Dual channel signal selection and fault detection system
US4847830A (en) * 1987-12-02 1989-07-11 Network Equipment Technologies, Inc. Method and apparatus for automatic loading of a data set in a node of a communication network
US4965745A (en) * 1987-12-18 1990-10-23 General Electric Company YIQ based color cell texture
US4868851A (en) * 1988-01-26 1989-09-19 Harris Corporation Signal processing apparatus and method
JPH01245335A (ja) * 1988-03-28 1989-09-29 Hitachi Ltd プログラマブルコントローラの多重化システム
US4872213A (en) * 1988-03-31 1989-10-03 Barber-Colman Company Versatile interface means for computer-based control systems
US4841232A (en) * 1988-04-29 1989-06-20 International Business Machines Corporation Method and apparatus for testing three state drivers
JP2533612B2 (ja) * 1988-05-16 1996-09-11 富士通株式会社 メモリのデ―タ保護方式
US4926364A (en) * 1988-07-25 1990-05-15 Westinghouse Electric Corp. Method and apparatus for determining weighted average of process variable
EP0358785B1 (de) * 1988-09-12 1993-11-24 Siemens Aktiengesellschaft Einrichtung zum Betrieb eines redundanten Mehrrechnersystems für die Steuerung eines elektronischen Stellwerkes in der Eisenbahnsignaltechnik
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
US4975931A (en) * 1988-12-19 1990-12-04 Hughes Aircraft Company High speed programmable divider
US4958270A (en) * 1989-01-23 1990-09-18 Honeywell Inc. Method for control data base updating of a redundant processor in a process control system
US4959768A (en) * 1989-01-23 1990-09-25 Honeywell Inc. Apparatus for tracking predetermined data for updating a secondary data base
US4995040A (en) * 1989-02-03 1991-02-19 Rockwell International Corporation Apparatus for management, comparison, and correction of redundant digital data
US4955020A (en) * 1989-06-29 1990-09-04 Infotron Systems Corporation Bus architecture for digital communications
US5008805A (en) * 1989-08-03 1991-04-16 International Business Machines Corporation Real time, fail safe process control system and method
JPH0823793B2 (ja) * 1989-12-13 1996-03-06 富士通株式会社 メモリカード
JP2850544B2 (ja) * 1990-01-30 1999-01-27 日本電気株式会社 集積回路装置
SE466172B (sv) * 1990-05-15 1992-01-07 Asea Brown Boveri Anordning foer bildande av en mot en anordningen tillfoerd storhet svarande stroem
US5170362A (en) * 1991-01-15 1992-12-08 Atlantic Richfield Company Redundant system for interactively evaluating the capabilities of multiple test subjects to perform a task utilizing a computerized test system
US5271023A (en) * 1991-06-03 1993-12-14 Motorola, Inc. Uninterruptable fault tolerant data processor
JPH05128080A (ja) 1991-10-14 1993-05-25 Mitsubishi Electric Corp 情報処理装置
US5442620A (en) 1992-03-26 1995-08-15 At&T Corp. Apparatus and method for preventing communications circuit misconnections in a bidirectional line-switched ring transmission system
US5313386A (en) * 1992-06-11 1994-05-17 Allen-Bradley Company, Inc. Programmable controller with backup capability
US5425266A (en) * 1994-01-25 1995-06-20 Envirotest Systems Corp. Apparatus and method for non-intrusive testing of motor vehicle evaporative fuel systems
US5408871A (en) * 1994-01-27 1995-04-25 General Motors Corporation Idle air control system diagnostic

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008038131B4 (de) * 2008-08-18 2013-12-05 EAE Ewert Automation Electronic GmbH Redundantes Steuerungssystem und Verfahren zur sicherheitsgerichteten Ansteuerung von Aktoren

Also Published As

Publication number Publication date
WO1993020488A3 (en) 1994-03-31
EP0631673A1 (de) 1995-01-04
HK1011427A1 (en) 1999-07-09
KR100322462B1 (ko) 2002-11-30
WO1993020488A2 (en) 1993-10-14
ES2128424T3 (es) 1999-05-16
EP0869415A3 (de) 1999-12-15
EP1193576A2 (de) 2002-04-03
CA2131156A1 (en) 1993-10-14
US5970226A (en) 1999-10-19
JPH07507889A (ja) 1995-08-31
DE69332897D1 (de) 2003-05-22
DE69322626T2 (de) 1999-07-08
EP1300735A2 (de) 2003-04-09
AU3918393A (en) 1993-11-08
SG55081A1 (en) 1998-12-21
ES2191884T3 (es) 2003-09-16
US5862315A (en) 1999-01-19
EP0631673B1 (de) 1998-12-16
DE69322626D1 (de) 1999-01-28
MX9301799A (es) 1994-01-31
HK1048670A1 (zh) 2003-04-11
KR100322461B1 (ko) 2002-02-07
US6061809A (en) 2000-05-09
US5428769A (en) 1995-06-27
EP0869415A2 (de) 1998-10-07
EP0869415B1 (de) 2003-04-16

Similar Documents

Publication Publication Date Title
DE69332897T2 (de) Schnittstelle für ein Prozesssteurungssystem mit dreifach redundanten entfernten Feldeinheiten
DE60207106T2 (de) Eigensicheres feldgerätwartungs-werkzeug
EP1523826B1 (de) Busstation mit integrierter busmonitorfunktion
EP1695055B1 (de) Messeinrichtung, insbesondere temperaturmessumformer
EP2307934B1 (de) Universelle schnittstelle für einen wireless adapter
DE112008003195T5 (de) Elektrischer Schaltkreis mit einem physikalischen Übertragungsschicht-Diagnosesystem
DE102017115663A1 (de) Verfahren zum Betreiben einer Messstelle und Messstelle
DE19917102C2 (de) Projektierungs- und Diagnoseeinrichtung für eine elektrische Anlage
WO2008138888A1 (de) Vorrichtung zur signalüberwachung für einen zeitweiligen einsatz in einem feldgerät der prozessautomatisierungstechnik
DE102007053048A1 (de) System und Verfahren zur Minimierung von Ausfallzeiten medizintechnischer Geräte
DE202020103789U1 (de) Automatisiertes Mess-, Reinigungs- und Kalibrierungssystem für eine pH- oder Redox-Messstelle
EP2478422A1 (de) Bereitstellung anlagenbezogener betriebsdaten unter verwendung eines diagnose-datenservers als weiteren feldbusmaster
EP3470939B1 (de) Verfahren und system zum überwachen der sicherheitsintegrität einer durch ein sicherheitssystem bereitgestellten sicherheitsfunktion
EP1748334A1 (de) Verfahren und Anordnung zur Überwachung eines Übertragungsmediums
EP3709108B1 (de) Konfiguration eines zweipoligen eingangs
EP1079291B1 (de) Messwertanzeigeeinheit
WO2005083539A1 (de) Prozessleitsystem und verfahren zum betreiben eines solchen systems
DE102005057000B4 (de) Feldbusgerät zum Einsatz in Feldbussystemen, insbesondere in Prozessleitsystemen
EP1892885B1 (de) Busstation mit integrierter Busmonitorfunktion
DE102004056246B4 (de) Anzeigeeinrichtung für ein Elektronikgerät
EP2518969A1 (de) Verfahren zum Betreiben einer Automatisierungseinrichtung
JPS61243540A (ja) 分散型制御システムの機能検査方式
JPH04315318A (ja) アナログ信号入力装置

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee
8327 Change in the person/name/address of the patent owner

Owner name: DOW GLOBAL TECHNOLOGIES, INC., MIDLAND, MICH., US