-
Die Erfindung betrifft ein Verfahren
zur Erkennung von auftretenden ereignisorientierten Signalen in
einem Master/Slave-Bussystem – insbesondere
ein Verfahren zur schnellen Erkennung von Fehlermeldungen in einem
System vernetzter elektrischer Schaltgeräte – sowie eine Vorrichtung zur Durchführung des
Verfahrens. Zur Erkennung auftretender Fehler in vernetzten elektrischen
Schaltgeräten
sind verschiedene Feldbussysteme bekannt, die gemäß entsprechenden
Protokollen arbeiten. All diesen Bussystemen ist gemein, dass sie
aufgrund ihres Protokollaufbaus bestimmte Mindestreaktionszeiten erfordern,
die den Anforderungen an bestimmte Anwendungsbereiche nicht oder
nur unzureichend genügen.
-
Der Erfindung liegt die Aufgabe zugrunde, ein
Bussystem zur Erkennung von ereignisorientierten Signalen – insbesondere
zur Erkennung von Fehlermeldungen untereinander vernetzter elektrischer Schaltgeräte – zu schalten,
welches bei konstruktiv einfachem Aufbau schnellere Reaktionszeiten
als bislang bekannte Systeme gewährleistet.
-
Die vorliegende Aufgabe wird erfindungsgemäß durch
die Merkmale des unabhängigen
Anspruches gelöst,
während
den abhängigen
Ansprüchen vorteilhafte
Weiterbildungen der Erfindung zu entnehmen sind. Zur Durchführung des
erfindungsgemäßen Verfahrens
findet eine Vorrichtung mit mindestens einem Master und einer Mehrzahl
von Slaves Verwendung. Dabei sind Master und Slaves über eine
erste Signalleitung in Art einer daisy-chain in Serie hintereinander
geschaltet und über
eine zweite Signalleitung parallel miteinander verbunden. In einer bevorzugten
Ausführung
der Erfindung sind Master und Slaves durch intelligente elektrische
Schaltgeräte
realisiert, die miteinander in vorbeschriebener Weise vernetzt sind.
Dabei dient die erste Signalleitung, die als daisy-chain von Teilnehmer
zu Teilnehmer weitergereicht wird als Sendeleitung über die
vom Master(-Teilnehmer) in regelmäßigen Abständen eine Teilnehmerabfrage
durchgeführt
wird. Zur Durchführung
der Teilnehmerabfrage sendet der Master in regelmäßigen zeitlichen
Abständen
auf seine Sendeleitung – die
den ersten Teilabschnitt der ersten Signalleitung bildet – einen
Puls von jeweils vorzugsweise zeitlich konstanter Dauer. Dieser
nachfolgend „Prüfsignalimpuls" genannte Impuls
wird von dem in der daisy- chain
nächstfolgenden
(Slave-)Teilnehmer eingelesen und um eine weitere Pulsdauer (insbesondere
eine Pulsdauer gleicher Dauer wie die des Prüfsignalimpulses) verzögert an
den wiederum nachfolgenden Teilnehmer weitergeleitet. Zeitgleich mit
der verzögerten
Weiterleitung des Prüfsignalimpulses
durch den jeweils aktiven Teilnehmer an den Folge-Teilnehmer wird
der Prüfsignalimpuls
oder ein generierter Impuls mit stets gleichbleibender fester Dauer
an die als Rückmeldeleitung
fungierende zweite Sendeleitung gesendet. So wird vom jeweils aktiven
Slave im wesentlichen zeitgleich sein jeweiliger Sende- und Rückmeldeausgang
aktiv geschaltet. Die jeweils gesendeten Signale sind vorzugsweise als
aktiv-low Signale ausgeführt.
Auf diese Weise bleibt, da alle Teilnehmer parallel an der Rückmeldeleitung
angebunden sind, die zweite Signalleitung für die Dauer n*T1 (Anzahl der
angeschlossenen Slaves multipliziert mit der Dauer des Prüfignalimpulses
bzw. des generierten Impulses konstanter Dauer) aktiv geschaltet.
Vorzugsweise sind die gesendeten Signale derart ausgeführt, dass
sie sich zeitlich leicht überlappen
und so keine zeitlichen Lücken
innerhalb eines zusammengesetzten Signals (z.B. der aus den einzelnen
Prüfsignalimpulsen
der Slaves zusammengesetzte Gesamtimpuls auf der zweiten Signalleitung)
entstehen. Zu den Zeiten in denen jeweilige Slaves inaktiv sind
beobachten diese den Zustand der Rückmeldeleitung (bzw. „hören mit") und leiten hieraus
gegebenenfalls eigene Reaktionen ab. Gemäß der Erfindung erhält der Master
das resultierende Gesamtimpulssignal als Rückmeldung und bestimmt anhand
der Signaldauer ob alle Teilnehmer noch fehlerfrei arbeiten und/oder
ob einer der Slaves eine Bedingung erkannt und weitergeleitet hat,
die eine Reaktion des Masters erfordert. Folgende Fälle lassen
sich hier unterscheiden:
- – Im einfachsten Fall erfolgt
eine Teilnehmerabfrage bei der alle Slaves fehlerfrei arbeiten und
kein zu erkennendes Ereignis, insbesondere ein Fehler, aufgetreten
ist. Der Master sendet einen Prüfsignalimpuls
an den ersten in der Teilnehmerreihe angeordneten Slave. In vorliegenden
fehlerfreien Fallbeispiel antworten alle Teilnehmer nacheinander
ordnungsgemäß, indem
sie den jeweils ankommenden Prüfsignalimpuls
auf der Sendeleitung um eine definierte Dauer verzögert weiterleiten
und zeitgleich auf die Rückmeldeleitung
legen. Nach der zu erwartenden Zeitdauer des Gesamtimpulses kehrt
die Rückmeldeleitung
wieder auf den Pegel inaktiv zurück.
Voraussetzung für eine
Arbeitsweise gemäß der Erfindung
ist allerdings immer (d.h. bei allen zu unterscheidenden Fällen), dass
der Master Kenntnis von der Anzahl der tatsächlich angeschlossenen Teilnehmer
hat. Dies erfolgt beispielsweise durch die Einstellung über Bedienelemente
(z.B. Schalter am Gerät,
per Menüeinstellung
vor Ort oder per Fernsteuerung über
Leitwarte o.d.) oder durch einen eigenständigen Initialisierungslauf
des Masters in dem dieser die Länge
des Rückmeldeimpulses
misst.
- – Für den Fall,
dass ein Slave ein auftretendes zu erkennendes Ereignis in der Zeit
zwischen zwei vom Master initiierten Teilnehmerabfragen erkennt,
sendet der jeweilige Slave erfindungsgemäß eigenständig einen Signalimpuls. Vorzugsweise
ist dieser Signalimpuls (Tx = (n + 1)*T1) um eine Prüfsignalimpulsdauer
länger
ausgebildet als der längstmögliche im
fehlerfreien Normalbetrieb auftretende Gesamtimpuls (Tnorm = n*T1).
Dieser eigenständig
gesendete Signalimpuls wird dann wie im Normalbetrieb auch durch
die nachfolgenden Slaves „weitergeschoben". So entsteht ein
für den
Master auszuwertendes Gesamtimpulssignal mit definierter Überlänge anhand
der neben der Information, dass ein Signal vorliegt, welches eine
Reaktion des Masters erfordert auch eine Information beinhaltet
ist, die besagt welcher der Teilnehmer das Ereignis gemeldet hat.
- – Meldet
hingegen ein Teilnehmer während
der Dauer einer Teilnehmerabfrage ein Ereignis, sendet er auch in
diesem Fall eigenständig
einen Signalimpuls mit Überlänge. Dabei
wird die Überlänge in jedem
Einzelfall individuell in Abhängigkeit
davon festgelegt, an welcher Stelle der daisy-chain – d.h. von
welchem der Teilnehmer – das Ereignis
gemeldet wurde. Die Dauer des eigenständig gesendeten Signalimpulses
entspricht dabei der Gesamtdauer der bis zum Zeitpunkt der Ereignismeldung
vollständig
abgelaufenen Prüfsignalimpulse
(inklusive dem vom Master gesendeten Prüfsignalimpuls). Dieser eigenständig gesendete
Signalimpuls wird in vorstehend beschriebener Weise weitergeleitet
und wiederum entsprechend ausgewertet.
- – Eine
weitere Fehlermöglichkeit
tritt auf, wenn ein angeschlossener Slave defekt ist, also ein dauerhaft
inaktives oder aktives Signal ausgibt. Im letzteren Fall erhält der Master
durch das dauerhaft aktive Signal ein Gesamtimpulssignal mit unendlicher Überlänge. Hierdurch
kann zwar sicher auf einen Fehler also ein zu erkennendes Ereignis, welches
einer Reaktion des Masters bedarf geschlossen werden, eine Lokalisierung
des fehlerhaften Slaves ist in diesem Fall aber nicht ohne weiteres
möglich.
Im Fall eines defekten Slaves mit dauerhaft inaktivem Signal ist
die daisy-chain unterbrochen und damit das Rückmeldesignal bzw. der Gesamtsignalimpuls
kürzer
als erwartet. In diesem Fall kann sowohl das zu erkennende Ereignis erkannt
als auch aufgrund der Signallänge
des Gesamtsignalimpulses der defekte Slave lokalisiert werden.
-
Weitere Einzelheiten und Vorteile
der Erfindung ergeben sich aus dem folgenden, anhand von Figuren
erläuterten
Ausführungsbeispiel.
Es zeigen die nachfolgenden Figuren den schematischen Aufbau einer
Vorrichtung zur Durchführung
des erfindungsgemäßen Verfahrens
nebst zeitlicher Signalverläufe
für unterschiedliche
Fälle auftretender
zu erkennender Ereignisse:
-
1:
den schematischen Aufbau in einer möglichen Ausführung einer
Vorrichtung zur Durchführung
des erfindungsgemäßen Verfahrens;
-
2:
den Signalverlauf auf den Signalleitungen der Vorrichtung gemäß 1 bei einer fehlerfreien
und ereignisfreien Teilnehmerabfrage durch den Master;
-
3:
den Signalverlauf bei einer Ereignismeldung ausserhalb der Dauer
einer Teilnehmerabfrage;
-
4:
den Signalverlauf bei einer Ereignismeldung während der Dauer einer Teilnehmerabfrage;
-
5:
den Signalverlauf bei fehlerhaftem Slave mit dauerhaft inaktivem
Signal;
-
6:
den Signalverlauf bei fehlerhaftem Slave mit dauerhaft aktivem Signal.
-
1 zeigt
eine Vorrichtung zur Durchführung
des erfindungsgemäßen Verfahrens.
Die Vorrichtung umfasst mindestens einen Master 2 sowie eine
Mehrzahl von Slaves 4, wobei Master 2 und Slaves 4 über eine
erste aus einzelnen Leitungsabschnitten S1-Sn bestehende Signalleitung
S in Art einer daisy-chain in Serie hintereinander geschaltet sind
und über
eine zweite Signalleitung R0 parallel miteinander verbunden sind.
In einer bevorzugten Ausführung
der Erfindung sind Slaves 4 und ggf. auch der Master 2 durch
intelligente Schaltgeräte (d.h.
z.B. kommunikationsfähige
Schaltgeräte
die über
Mikrocontroller oder dergleichen verfügen und an Bussysteme ankoppelbar
sind) ausgebildet und die zu erkennenden ereignisorientierten Signale
sind insbesondere Fehlersignale, die einen Auslösebefehl an das, das Fehlersignal
meldende Schaltgerät
senden. Das Verfahren ist erfindungsgemäß so ausgestaltet, dass lediglich
geringe Datenmengen zu handhaben sind, so dass hierfür auch auf
Mikrocontroller geringerer Leistung zurückgegriffen werden kann. Bevorzugt
ist das erfindungsgemäße Verfahren
auf die Erkennung von Fehlersignalen bei miteinander vernetzten
elektrischen Schaltgeräten
beschränkt. Mit
Vorteil ist die Datenübertragung
auf die Fehlerüberwachung
im Rahmen der Teilnehmerabfragen beschränkt. Ein weiterer Datenaustausch,
etwa zur Ansteuerung der Schaltgeräte erfolgt nicht, so dass mit dem
erfindungsgemäßen Verfahren
kürzeste
Melde- und Auslösezeiten
(z.B. im Falle von Fehler-, Über- oder
Kurzschlussströmen)
erzielbar sind. Eine mögliche
Ansteuerung der Schaltgeräte
erfolgt vorzugsweise über
ein separates Bussystem wie beispielsweise das Feldbussystem ASI
(Aktuator-Sensor Interface).
-
Das erfindungsgemäße Verfahren dient zur Erkennung
von auftretenden ereignisorientierten Signalen–insbesondere zur Erkennung
von Fehlersignalen bzw. fehlerhaften Slaves oder fehlerhafter über die
Slaves angeschlossenen Geräten.
Das erfindungsgemäße Verfahren
umfasst folgende Verfahrensschritte:
-
In einem ersten Schritt liest der
Master 2 die Anzahl der angeschlossenen Slaves 4 ein.
Diese kann dem Master 2 durch voreingestellte Schaltereinstellungen
angezeigt oder durch elektronische Einstellmittel vor Ort oder über eine
vernetzte Leitwarte übermittelt
werden. Alternativ kann der Master 2 auch hierfür einen
Initialisierungslauf durchführen und
so beispielsweise über
die ermittelte Rückmeldung
(Dauer des aus den einzelnen Prüfsignalimpulsen
P der Slaves 4 zusammengesetzten Gesamtimpulses G) auf
die Anzahl der angeschlossenen Slaves 4 schließen. Anschließend sendet
der Master 2 in vorzugsweise regelmäßigen zeitlichen Abständen einen
Prüfsignalimpuls
P bestimmter Signaldauer T1 über
die erste Signalleitung S bzw. deren ersten Leitungsabschnitt S1
an den nachfolgenden Slave 4. Der nachfolgende Slave 4 liest
den Prüfsignalimpuls P
ein und sendet diesen Prüfsignalimpuls
P bzw. einen Prüfsignalimpuls
P fester d.h. stets gleichbleibender Dauer insbesondere der Impulsdauer
T1 an den nachfolgenden Slave 4 und gibt im wesentlichen zeitgleich
diesen Prüfsignalimpuls
P auf die zweite Signalleitung R0. Anschließend wird dieser Verfahrensschritt
wiederholt bis der letzte angeschlossene Slave 4 den Prüfsignalimpuls
P auf die zweite Signalleitung R0 übergibt. Schließlich liest
der Master 2 den auf der zweiten Signalleitung R0 aus den
einzelnen Prüfsignalimpulsen
P generierten Gesamtimpuls G ein und wertet ihn aus derart, dass
er in Abhängigkeit von
der Impulslänge
des Gesamtimpulses G entscheidet, ob ein zu erkennendes Ereignis
eingetreten ist oder nicht.
-
2 beschreibt
den zeitlichen Signalverlauf auf den einzelnen Leitungsabschnitten
S1-Sn der ersten Signalleitung S. Wie dargestellt initiiert der Master 2 durch
Aktivschalten seines mit der ersten Signalleitung S verbundenen
Ausganges für
eine feste Zeitdauer eine Teilnehmerabfrage. Hierfür sendet der
Master 2 für
die Signaldauer T1 einen Prüfsignalimpuls
P (S1 = 0). Vorzugsweise ist dieses Signal als aktiv-low Signal
ausgebildet. Um zeitliche Lücken
im später
aus den einzelnen Prüfsignalimpulsen
P zusammengesetzten Gesamtimpuls G zu vermeiden kann die Signaldauer
T1 mit Vor- und Nachlaufzeiten Tj beaufschlagt werden. Hierdurch
können
durch Flankenanstiege und -abfälle
verursachte Toleranzzeiten ausgeglichen werden. Im vorliegenden
Fallbeispiel (2) arbeitet
das zu überwachende
System fehlerfrei und es tritt auch kein zu erkennendes Ereignis
auf. Daher wird der vom Master 2 generierte Prüfsignalimpuls
P von Slave 4 zu Slave 4 mit der entsprechenden
Verzögerung
der Signaldauer T1 des Prüfsignalimpulses
weitergereicht bis das Ende der Teilnehmerkette erreicht ist. Bei
jedem Weiterreichen an einen Folgeslave gibt der aktive (weiterreichende)
Slave 4 zeitgleich vorzugsweise das gleiche Signal zusätzlich noch
an die zweite Signalleitung R0 (R0 = 0) weiter. Der in der Teilnehmerkette
letzte Slave 4 gibt schließlich nur noch das Signal auf
abschließend
auf die zweite Signalleitung. Auf diese Weise wird ein sich aus
den Einzelsignalen aller Slaves 4 zusammengesetztes Rückmeldesignal,
ein sogenannter Gesamtimpuls G, gebildet der vom Master 2 dann
gelesen und ausgewertet wird. Im dargestellten Beispiel beträgt die Dauer
(TG = n*T1) des Gesamtimpulses G bei einem System mit einem Master 2 und
acht angeschlossenen Slaves 4 somit das achtfache der Einzelsignaldauer
T1.
-
3 beschreibt
den Signalverlauf der ersten und der zweiten Signalleitung S; R0
bei einer außerhalb
der Teilnehmerabfrage auftretenden Ereignismeldung, z.B. eine Fehlermeldung
die eine anschließende
Alarmauslösung
zur Folge haben könnte.
Gemäß 3 wird außerhalb
der Teilnehmerabfrage (zwischen zwei Teilnehmerabfragen) durch den vierten
Slave 4 in der Reihe auf dem Leitungsabschnitt S5 der ersten
Signalleitung S ein ereignisorientiertes Signal (z.B. eine aufgrund
eines auftretenden Fehlers zu initiierende Alarmauslösung) gesendet.
Hierfür
sendet der vierte Slave 4 in der Reihe eigenständig ein
Signal, dessen Dauer um T1 länger
ist (Tx = (n + 1)*T1; mit n = Anzahl der angeschlossenen Slaves,
T1 = Dauer des Prüfsignalimpulses),
als die maximal mögliche
im Normalbetrieb-vorliegend
also 9*T1 (siehe Bild 2). Dieses wird an die nachfolgenden Slaves 4 fünf bis acht
weitergereicht, wobei jeder Slave 4 den Prüfsignalimpuls
P entsprechend verzögert, so
dass ein Gesamtimpuls G mit einer Dauer von 9*T1 (durch den vierten
Slave) + 4*T1 (durch die Slaves fünf, sechs, sieben, acht) =
13*T1 entsteht (TG = Tx + (n-x)*T1; mit n = Anzahl der angeschlossenen Slaves,
x = Zahl des ereignismeldenden Slave, T1 = Dauer des Prüfsignalimpulses).
Da alle Teilnehmer stets an der zweiten Signalleitung R0 „mithören", erkennt der jeweilige
ein Ereignis meldende Slave auch ob die bevorstehende Ereignismeldung
zwischen zwei Teilnehmerabfragen also außerhalb oder während der
Teilnehmerabfrage erfolgt. Der Master 2 erkennt durch das
erfindungsgemäße Verfahren
die Rückmeldeleitung
als aktiv (R0 = 0) zu einem Zeitpunkt, zu dem er es nicht erwartet
und löst
daraufhin seine Reaktion (z.B. Auslösebefehl) aus. Anhand der Impulsdauer
auf der Rückmeldeleitung – der Signaldauer
des Gesamtimpulses G – kann
der Master 2 den auslösenden
Slave 4 ermitteln. Vorliegend sind beispielsweise acht
Slaves 4 und ein Master im System angebunden, so dass im
Normalfall die Dauer des Gesamtimpulses G = 8*T1 betragen würde. Tatsächlich beträgt sie jedoch
G = 13*T1. Da keine Teilnehmerabfrage vorliegt liegt also ein Fehler
vor (9*T1) – tatsächlich hat
der Gesamtimpuls eine Dauer von 13*T1, so dass eine Dauer von 4*T1 übrig bleibt.
Hieraus ergibt sich, dass der vierte Slave 4 in der Reihe – der auslösende Teilnehmer
war.
-
In 4 ist
eine Alarmauslösung
bzw. ein zu erkennendes Signal während
einer Teilnehmerabfrage durch den Master 2 aufgetreten.
Der Master 2 initiiert die Teilnehmerabfrage und asynchron
hierzu löst
der fünfte
Teilnehmer (vierte Slave) einen Alarm aus. Da dies mitten in einem
Abfragezyklus erfolgt, sendet der auslösende Teilnehmer auf seine
beiden Signalleitungen (S; R0) einen Signalimpuls mit einer Dauer
(Tx = a*T1; mit a = Anzahl der im Zeitpunkt der Ereignismeldung
bereits vollständig
erfolgten Prüfsignalimpulse
(T1-Perioden); T1 = Dauer des Prüfsignalimpulses),
die der seit Start der Teilnehmerabfrage bereits vollständig abgelaufenen
Prüfsignalimpulsen
P entspricht – mindestens
jedoch die Dauer 2*T1 aufweist. Vorliegend sind zum Zeitpunkt der
Fehlermeldung durch den vierten Slave 4 erst zwei Prüfsignalimpulse
P vollständig
abgesetzt worden (inklusive dem vom Master 2 initiierten
Prüfsignalimpuls
P), so dass das erzeugte Signal eine Impulsdauer von 2*T1 hat. Dem
vierten Slave 4 folgen in der Kette noch vier weitere Slaves 4 mit
vier entsprechenden Verzögerungen.
Anhand der Dauer des gebildeten Gesamtimpulses G kann wiederum sowohl
auf das Vorliegen eines Ereignisses bzw. einer Fehlermeldung geschlossen
werden als auch der das Ereignis meldende Slave 4 ermittelt
werden. Das Vorliegen eines Ereignisses wird vom Master 2 erkannt,
da er einen vom Slave 4 gesendeten Impuls erkennt, der
größer als
erwartet ist. Den auslösenden
Slave 4 erkennt der Master 2 wiederum durch die
Auswertung der Dauer des Gesamtimpulses G. Im vorliegenden Fallbeispiel sind
bereits zwei T1-Perioden vollständig
abgelaufen, als durch den vierten Slave 4 auf Leitungsabschnitt
S5 ein Fehlersignal gesendet wird. Damit setzt sich der Gesamtimpuls
aus 2*T1 – 1*T1
für die vollständig abgelaufenen
und an die Rückmeldeleitung
R0 gesendeten T1-Perioden zuzüglich
4*T1 für die
verbleibenden Slaves 4 fünf, sechs, sieben, acht sowie
2*T1 + y*T1, wobei y*T1 einem Impuls der Dauer vom Ende des letzten
vollständigen
Prüfsignalimpulses
P bis zum Zeitpunkt des Auftretens der Fehlermeldung (Ereignis)
mit y < 1 entspricht.
Vorliegend hat der entstehende Gesamtimpuls somit eine Dauer von
7,... T1 (TG = ((a – 1)T1
+ Tx + y*T1 + (n – 1)*T1;
mit n = Anzahl der angeschlossenen Slaves, a = Anzahl der im Zeitpunkt
der Ereignismeldung bereits vollständig erfolgten Prüfsignalimpulse
(T1-Perioden); T1 = Dauer des Prüfsignalimpulses,
y = T1-Faktor < 1,
der sich ergibt aus der Dauer vom Zeitpunkt des letzten Prüfsignalimpulses
während
dessen Dauer kein Ereignissignal generiert wurde bis zum Auftreten
des Ereignisses).
-
Die 5 und 6 beschreiben die Fälle, in
denen von einem angeschlossenen Slave 4 dauerhaft ein inaktives
oder ein aktives Signal gesendet wird. Dies kann z.B. dann der Fall
sein, wenn ein angeschlossener Slave 4 defekt ist und deshalb
ein dauerhaft inaktives oder aktives Signal ausgibt. Im letzteren
Fall erhält
der Master 2 durch das dauerhaft aktive Signal (Sx = 0,
Tx = ∞; 6) ein Gesamtimpuls G mit
unendlicher Überlänge. Hierdurch
kann zwar sicher auf einen Fehler also ein zu erkennendes Ereignis,
welches einer Reaktion des Masters 2 bedarf geschlossen
werden, eine Lokalisierung des fehlerhaften Slaves 4 ist
in diesem Fall aber nicht ohne weiteres möglich.
-
Im Fall eines defekten Slaves 4 mit
dauerhaft inaktivem Signal (Sx = 1; 5)
ist die daisy-chain unterbrochen und damit das Rückmeldesignal bzw. der Gesamtsignalimpuls
G (mit TG = (x – 1)*T1)
kürzer
als erwartet. In diesem Fall kann sowohl des zu erkennende Ereignis
erkannt als auch aufgrund der Signallänge des Gesamtimpulses G der
defekte Slave 4 lokalisiert werden (Fehler erkannt, da
TG < n*T1; fehlendes
Signal durch den vierten Slave erkannt, da Dauer des Gesamtimpulses
TG = 3*T1).