Verfahren zur seriellen Vergabe von Adressen und zur Überprüfung der Adressver abe in einem Bussvstem
Die Erfindung betrifft ein Verfahren zur seriellen Vergabe von Adressen und zur Überprüfung der Adressvergabe in einem Bussystem, wobei das Bussystem einen Bus aufweist, an den eine Steuereinheit und mehrere zu adressierenden Teilnehmer angeschlossen sind.
Derartige serielle Bussysteme finden in einer Vielzahl von Vorrichtungen Anwendung. Ein Anwendungsbeispiel bezieht sich auf Kraftfahrzeuge und dort auf einzelne Komponenten, wie beispielsweise die Klimaanlage. Die verschiedenen Stellmotore für Misch- und Luftverteilklappen sowie für die Heiz- und Kühl- aggregate und die diversen Sensoren einer derartigen Klimaanlage sind über einen Bus miteinander verschaltet. Um die einzelnen Aktuatoren einer derartigen Klimaanlage ansprechen zu können, wird diesen Aktuatoren (allgemein Teilnehmer des Bussystems) jeweils eine Adresse zugeordnet. Diese Adresse kann fest einprogrammiert sein oder aber von der zentralen Steuereinheit des Bussystems vergeben werden, was beispielsweise beim Starten des Fahrzeuges erfolgen kann.
Serielle Adressvergabeverfahren sind beispielsweise in DE-C-40 38 992, DE-C- 44 04 962, DE-A-44 28 502, DE-A-196 47 668, DE-A-197 56 564, EP-A-0 843 260, EP-A-0 854 609, EP-A-0 855 817 und WO 97/45983 beschrieben.
Des weiteren ist in DE-A-101 47 512 ebenfalls ein serielles Adressvergabeverfahren beschrieben. Ferner sind Adressvergabeverfahren in den vorangemeldeten, jedoch noch nicht veröffentlichten Patentanmeldungen DE 102 56 631 und PCT/EP03/03302 beschrieben.
BESTATIGUNGSKOPIE
Sämtlichen dieser bekannten bzw. bereits vorgeschlagenen seriellen Adressvergabeverfahren ist gemeinsam, dass einer der Anzahl an Teilnehmern gleichende Anzahl an einzelnen Adressvergabezyklen durchgeführt werden, in denen jeweils einer der Teilnehmer adressiert wird. Dabei erfolgt bei korrek- tem Ablauf des Adressvergabeverfahrens die Adressierung insofern seriell, als die Teilnehmer beginnend mit dem elektrisch am weitesten von der Steuereinheit entfernt an dem Bus angeschlossenen Teilnehmer oder mit dem am nächsten zur Steuereinheit an den Bus angeschlossenen Teilnehmer begonnen wird und die Teilnehmer davon ausgehend in der Reihenfolge, in der sie elek- trisch an den Bus angeschlossen sind, adressiert werden.
Problematisch ist bei dieser Art der (automatischen) Adressvergabe der Umstand, dass Fehler auftreten können. Diese Fehler haben ihre Ursache in zeitweise fehlerhaften Pegeln in den Teilnehmern bzw. auf dem Bus und in Kon- taktierungs- und Verbindungsproblemen in der Busleitung. Bei den bekannten Verfahren ist es lediglich möglich, den Umstand zu erkennen, dass ein Fehler aufgetreten ist. Der Fehler kann allerdings nicht lokalisiert werden.
Eine Aufgabe der Erfindung ist es daher, ein Verfahren zur seriellen Vergabe von Adressen zu schaffen, bei dem die Möglichkeiten einer Fehlerortung gegeben sind.
Zur Lösung dieser Aufgabe wird mit der Erfindung ein Verfahren zur seriellen
Vergabe von Adressen und zur Überprüfung der Adressvergabe in einem Bus- system, das einen Bus aufweist, an den eine Steuereinheit und mehrere zu adressierende Teilnehmer angeschlossen sind, vorgeschlagen, wobei bei dem
Verfahren, die Steuereinheit innerhalb jeweils eines Adressvergabezyklus einem zu adressierenden Teilnehmer eine Adresse zuordnet, wobei die Steuerein- heit zu Beginn eines jeden Adressvergabezyklus ein Startsignal ausgibt, jeder noch zu adressierende Teilnehmer bis zu seiner Adressierung die Anzahl an empfangenen Startsignalen erfasst und innerhalb desjenigen Adressvergabezyklus, in dem ihm von der Steuereinheit eine Adresse zu-
geordnet wird, einen der Anzahl an bis dahin empfangenen Startsignalen entsprechenden Zahlenwert speichert, und die Steuereinheit nach Adressierung des letzten noch nicht adressierten Teilnehmers oder nach Ablauf einer der Anzahl von Teilnehmern gleichenden Anzahl von Adressvergabezyklen die gespeicherten Zählerwerte der adressierten Teilnehmer abfragt und anhand dieser Abfrage die Adressvergabe auf ihre Plausibilität hin überprüft.
Sinngemäß besteht die Erfindung darin, dass jeder zu adressierende Teilneh- mer die Anzahl der Adressvergabezyklen wählt, die bis zu seiner Adressierung durchgeführt worden sind. Der in einem Adressvergabezyklus identifizierte Teilnehmer speichert dann seinen Zählerwert nebst der ihm zugeordneten Adresse ab. Die Steuereinheit kann dann beispielsweise nach Abschluss des letzten Adressvergabezyklus durch Abfrage der Zählerstände jedes adressier- ten Teilnehmers die Adressvergabe auf ihre Plausibilität hin untersuchen. Weist beispielsweise keiner der Teilnehmer einen einem zuvor durchgeführten Adressvergabezyklus entsprechenden Zählerwert auf oder zwei Teilnehmer ein und den gleichen Zählerwert auf, so kann daraus geschlossen werden, dass bei der Adressvergabe ein Fehler unterlaufen ist. Ebenso liegt beispielsweise ein Fehler vor, wenn einer der Teilnehmer noch seinen Anfangszählerwert aufweist. Hingegen ist die Adressvergabe dann plausibel, wenn sämtliche Teilnehmer gespeicherte (Adressvergabezyklus-)Zählerwerte aufweist, die sämtlichen durchgeführten Adressvergabezyklen entsprechen. Sind also beispielsweise an einem Bus 16 Teilnehmer angeschlossen und existiert jeder Zähler- wert zwischen 1 und 16 als gespeicherter Wert jeweils einmal für sämtliche Teilnehmer, so ist die Adressvergabe planmäßig erfolgt.
Im Falle eines bei der Plausibilitätsüberprüfung erkannten Fehlers kann die Adressvergabe für sämtliche adressierten Teilnehmer oder lediglich für jeweils denjenigen Teilnehmer durchgeführt werden, bei dem ein Fehler erkannt worden ist. Gerade die zuletzt genannte Möglichkeit wird durch das erfindungsgemäße Verfahren geschaffen, wobei durch wiederholtes Auftreten desselben Fehlers der Schluss gefolgert werden kann, worauf (beispielsweise Busunter-
brechung oder Kontaktprobleme) der Fehler bei der Adressvergabe zurückzuführen ist.
Bei der bisherigen Beschreibung der erfindungsgemäßen Überprüfung der Adressvergabe auf Plausibilität ist der Fall angesprochen worden, dass die Adressvergabe zunächst für sämtliche Teilnehmer erfolgt und die Überprüfung dann vorgenommen wird. Alternativ dazu ist es nach der Erfindung aber auch möglich, dass die Steuereinheit während eines Adressvergabezyklus überprüft, ob der Zählerwert des in diesem Adressvergabezyklus zu adressierenden Teil- nehmers der Anzahl bisher durchgeführter Adressvergabezyklen entspricht und ein Fehlersignal ausgibt, wenn dies nicht der Fall ist. Weist also der im ersten Adressvergabezyklus adressierte Teilnehmer einen gespeicherten Zählerwert von 1 auf (was durch die Steuereinheit nach Vergabe der Adresse abgefragt werden kann), so ist der erste Adressvergabezyklus korrekt verlaufen. Ist da- gegen der Zählerwert des im zweiten Adressvergabezyklus adressierten Teilnehmers ebenfalls 1, so liegt ein Fehler vor, und zwar insoweit, als der im zweiten Adressvergabezyklus identifizierte Teilnehmer den ersten Adressvergabezyklus nicht mitgezählt hat, was wiederum auf eine kurzzeitige Busunterbrechung o.dgl. zurückzuführen ist. Hier kann dann konkret die Fehlersuche einsetzen.
Die Erfindung wird nachfolgend unter Bezugnahme auf die Zeichnung, in der ei Bussystem mit vier Teilnehmern dargestellt ist, näher erläutert.
Wie in der Zeichnung dargestellt, weist das Bussystem 10 eine Steuereinheit 12 auf, von der aus sich eine Busleitung 14 erstreckt. Längs der Busleitung sind vier Teilnehmer 16,18,20,22 angeschlossen. Jeder Busteilnehmer weist einen Zähler auf, der die Anzahl an durchgeführten Adressvergabezyklen bis zu dem Zeitpunkt zählt, zu dem der betreffende Teilnehmer identifiziert und adressiert wird.
Zu Beginn der Adressvergabe sendet die Steuereinheit 12 beispielsweise ein Signal zum Setzen der Zählerwerte sämtlicher Teilnehmer auf einen Anfangs-
zählerwert aus. Dieses Setzen der Zählerwerte kann aber beispielsweise auch durch das jedem Teilnehmer zugeleitete Signal des Einschaltens des Gesamtsystems erfolgen.
Während des ersten Adressvergabezyklus wird nun einer der Busteilnehmer identifiziert und adressiert. Für dieses Ausführungsbeispiel sei angenommen, dass im ersten Adressvergabezyklus der elektrisch am weitesten von der Steuereinheit 12 entfernt angeordnete Busteilnehmer 16 adressiert wird. In diesem Zusammenhang sei auf die eingangs genannten Schriften verwiesen, aus denen sich ergibt, dass durch die serielle Adressvergabe pro Zyklus exakt ein Teilnehmer identifizierbar ist. Dadurch, dass dieser Teilnehmer nach seiner Adressierung nicht mehr an der weiteren Adressvergabe teilnimmt, wird im nächsten Adressvergabezyklus wieder exakt ein (anderer) Teilnehmer identifiziert und adressiert. Dieses Prozedere beginnt entweder mit dem elektrisch am weitesten von der Steuereinheit 12 entfernt oder am nächsten zur Steuereinheit 12 angeordneten Teilnehmer.
Auf das hier zu beschreibende Ausführungsbeispiel bezogen, weist der gespeicherte Zählerwert des Teilnehmers 16 nun einen Wert auf, der dem Um- stand entspricht, dass der erste Adressvergabezyklus durchgeführt worden ist. Im einfachsten Fall wird hier als Zählerwert eine 1 abgespeichert. Man könnte sich aber auch andere Inkremente wie beispielsweise 2 oder 10 vorstellen. Dem Busteilnehmer 16 wird dann eine Adresse zugeordnet (beispielsweise Adresse 10).
Während des zweiten Adressvergabezyklus wird nun wiederum der elektrisch am weitesten von der Steuereinheit 12 angeordnete noch nicht adressierte Teilnehmer 18 identifiziert. Der Zählerwert dieses Teilnehmers 18 beträgt 2 und es sei angenommen, dass ihm die Adresse 16 zugeordnet wird.
Im dritten Adressvergabezyklus wird dem Teilnehmer 20 beispielsweise die Adresse 17 zugeordnet, wobei sein Zählerwert 3 ist. Schließlich wird im vierten
Adressvergabezyklus dem Teilnehmer 22 beispielsweise die Adresse 18 zugeordnet; sein Zählerwert beträgt 4.
Die in der zuvor genannten Abfolge durchgeführte Adressvergabe ist ord- nungsgemäß. Dies kann durch Abfrage der Zählerstände der über ihre Adressen ansprechbaren Teilnehmer 16-22 verifiziert werden, indem die Teilnehmer jeden Zählerstand zwischen 1 und 4 gespeichert haben. Ein weiteres Kriterium für eine ordnungsgemäß erfolgte Adressvergabe kann sein, dass für aufsteigende gespeicherte Zählerwerte aufsteigende Adressen vergeben werden. Alternativ dazu könnte man auch für aufsteigende gespeicherte Zählerwerte abfallende Adressen vergeben.
Nachfolgend soll nun ein Beispiel angegeben werden, bei dem während der Adressvergabe ein Fehler erfolgt ist. Hier sei z.B. angenommen, dass während des ersten Adressvergabezyklus die Busleitung zwischen den Teilnehmer 16 und 18 unterbrochen ist. Als am weitesten von der Steuereinheit 12 elektrisch an die Busleitung 14 angeschlossener Teilnehmer wird dann im ersten Adressvergabezyklus der Teilnehmer 18 identifiziert. Sein gespeicherter Zählerstand beträgt 1 und ihm wird die Adresse 10 zugeordnet. Während des zweiten Adressvergabezyklus sei angenommen, dass die kurzzeitige Busleitungsunterbrechung zwischen den Teilnehmern 16 und 18 wieder aufgehoben ist. Im zweiten Adressvergabezyklus wird also als am weitesten von der Steuereinheit 12 elektrisch angeordneter noch nicht adressierter Teilnehmer der Teilnehmer 16 identifiziert. Sein Zählerwert beträgt ebenfalls 1, da dieser Teilnehmer 16 während der ersten Adressvergabe das Startsignal für den Beginn des ersten Adressvergabezyklus wegen der Busleitungsunterbrechung nicht hat empfangen können. Dem Teilnehmer 16 wird nun die Adresse 16 zugeordnet.
Während der nächsten zwei Adressvergabezyklen werden dann, wie oben be- schrieben, die Teilnehmer 20 und 22 adressiert. Deren gespeicherte Zählerwerte betragen 3 bzw. 4; ihnen werden die Adressen 17 bzw. 18 zugeordnet.
Bei der nun erfolgenden Überprüfung der Adressvergabe auf Plausibilität wird erkannt, dass die Busteilnehmer 16 und 18 jeweils einen gespeicherten Zählerwert von 1 aufweisen. Dies wird als Fehler erkannt. Überdies fehlt ein Teilnehmer mit dem gespeicherten Zählerwert 2. Auch dies kann als Fehlerin- diz dienen.
Die zuvor beschriebene erst nach Abschluss sämtlicher Adressvergabezyklen durchgeführte Überprüfung kann auch in jedem Adressvergabezyklus erfolgen. Bei dem zuvor beschriebenen zweiten (fehlerhaften) Beispiel würde also be- reits nach Abschluss des zweiten Adressvergabezyklus feststehen, dass ein Fehler aufgetaucht ist, da nach Abschluss des zweiten Adressvergabezyklus zu erwarten ist, dass der Zählerstand des adressierten Busteilnehmers 16 2 beträgt. Da dies nicht der Fall ist, muss also ein Fehler vorliegen.
Eine weitere Fehlermöglichkeit könnte darin bestehen, dass ein Teilnehmer oder eine Gruppe von Teilnehmern dauerhaft keine elektrische Verbindung zum Bus bzw. zur Steuereinheit aufweist. Für das in der Zeichnung dargestellte Bussystem sei beispielsweise angenommen, dass die Verbindung des Busteilnehmers 16 zur Busleitung 14 defekt ist. Die Steuereinheit 12 führt vier Adressvergabezyklen durch, wobei die drei elektrisch mit der Busleitung 14 verbundenen Teilnehmer 18-22 bereits nach Abschluss des dritten Adressv'er-' gabezyklus adressiert sind. Im vierten Adressvergabezyklus würde sich also kein Teilnehmer mehr adressieren lassen. Dies kann als Fehler erkannt werden.