-
Technisches Gebiet
-
Die
vorliegende Erfindung bezieht sich auf eine Netzsteuervorrichtung
und ein Netzsteuerverfahren, und im Spezielleren auf ein Netzsteuersystem
für Hausgeräte.
-
Stand der Technik
-
Gegenwärtig ist
die Heimautomation zur automatischen Steuerung von zu Hause oder
an einer abgesetzten Stelle befindlichen Hausgeräten weitgehend kommerzialisiert.
Im Anfangsstadium der Heimautomation wurden die jeweiligen Geräte separat
unter Verwendung von Telefonen oder Infrarotstrahlen ohne gegenseitige
Verbindung zwischen den Geräten
gesteuert. Gegenwärtig
wird mittels einer Kommunikationseinrichtung ein Netz zwischen den
Geräten
aufgebaut, und es wird ein Steuergerät zum Steuern des Netzes vorgesehen,
um die Geräte
im Verbund zu bedienen.
-
Mikrocomputer,
mit denen die Geräte
ausgestattet sind, besitzen eine eingebaute serielle Kommunikationsfunktion
und können
mit anderen Mikrocomputern oder Geräten kommunizieren. Dieser Mikrocomputer besitzt
unterschiedlich bemessene Betriebsmittel, die bei den Kommunikationsabläufen verwendet
werden können,
wie etwa einen Speicher, welcher den Charakteristika des Geräts entspricht.
Im Falle vom Multimediaprodukten wie etwa Personalcomputern (PCs),
Fernsehempfängern
(TV-Geräten),
Audiogeräten,
usw., werden hochleistungsfähige
Hardware-Spezifikationen übernommen,
um diverse Grundfunktionen ablaufen zu lassen, und es ist der Kommunikationsstandard
zum Verarbeiten einer großen
Datenmenge mit hoher Geschwindigkeit erforderlich.
-
Hingegen
sind im Falle von Kühlschränken, Waschmaschinen,
Mikrowellenherden, Lampen, Rauch-/Gasmeldern, Schreibtischlampen,
Boilern usw. deren Funktionen im Vergleich zu den vorstehend erwähnten PCs
oder Multimediaprodukten sehr einfach, und somit wird im Allgemeinen
ein für
geringe Leistung ausgelegter Mikrocomputer von 8 Bit oder weniger
verwendet. Im Falle der Hausgeräte,
die den für
geringe Leistung ausgelegten Mikrocomputer übernehmen, ist die Grundlage
bil dende Fernsteuerung oder Überwachung
des Betriebszustands der Hauptgegenstand der Kommunikationsabläufe, und
somit ist der Kommunikationsstandard erforderlich, der sich klein
bemessener Mikrocomputer-Betriebsmittel bedient.
-
Im
Falle der Kommunikationsprotokolle, die momentan verwendet werden,
oder der Vorgehensweise zu Kommunikationszwecken zwischen den Geräten, werden
separate Kommunikationsmodule, wie etwa Modems, zusätzlich in
die jeweiligen Geräte
eingebaut, um den Hochleistungskommunikationsstandard, der auf PCs
oder Multimediageräte
angewandt wird, so zu verwenden wie er ist, oder der Hochleistungskommunikationsstandard
wird teilweise modifiziert.
-
Die
herkömmlichen
Hausgeräte übernehmen
den bei PCs oder Multimediageräten
verwendeten Hochleistungskommunikationsstandard und haben somit
aufgrund der Übernahme
des unnötigen
Kommunikationsstandards, der höher
ist, als es ihre eigentlichen Funktionen bräuchten, Ineffizienz- und Kostensteigerungsprobleme,
weil ein separater Hardware-Kommunikationsbaustein, wie etwa ein
Modem, zusätzlich
in jedes Gerät
eingebaut werden muss.
-
Die
US-A 5 255 185 offenbart
eine Videoanzeige für
ein Bowling Center. Sie umfasst ein Datenübertragungsprotokoll, das einen
synchronen Datenübertragungssteuerungsstandard
(SDLC-Standard) nutzt. Information wird zwischen einer Hauptstation
und Unterstationen übertragen,
die den SDLC-Standard als vorgegebenes Protokoll verwenden.
-
Offenbarung der Erfindung
-
Eine
Aufgabe der vorliegenden Erfindung ist es deshalb, die Probleme
zu lösen,
die mit dem Stand der Technik zu tun haben, und ein Netzsteuersystem
für Hausgeräte bereitzustellen,
das die Merkmale niedrige Kosten und hohe Effizienz im Hinblick
auf die gegenwärtig
verwendeten Geräte
erfüllt,
die einen für
geringe Leistung ausgelegten Mikrocomputer übernehmen.
-
Die
vorliegende Erfindung ist im beigefügten unabhängigen Anspruch 1 definiert.
-
Um
die vorstehend erwähnte
Aufgabe zu erfüllen,
stellt die vorliegende Erfindung ein Netzsteuersystem für mit einem
für geringe
Leistung ausgelegten Mikrocomputer mit einer seriellen Kommunikationsfunktion ausgestattete
Hausgeräte
bereit, das eine Kommunikationsstruktur von der Art Master/Slave
im Hinblick auf die jeweiligen Geräte bildet; einen Kommunikationsstandard
bestimmt, der sich entsprechend der Kommunikationsstruktur aus einer
Anwendungsschicht, einer Datenübermittlungsschicht
und einer physikalischen Schicht zusammensetzt; ein Netz aufbaut,
indem die Geräte über die
serielle Kommunikationsfunktion verbunden werden; und es den Geräten ermöglicht,
miteinander in der Einheit eines fest umrissenen Pakets entsprechend
der Kommunikationsstruktur und dem Kommunikationsstandard zu kommunizieren,
wenn ein vorbestimmtes Kommunikationsereignis stattfindet.
-
Einige
bevorzugte Merkmale sind in den abhängigen Ansprüchen aufgeführt.
-
Kurze Beschreibung der Zeichnungen
-
Die
vorstehende Aufgabe, weitere Merkmale und Vorteile der vorliegenden
Erfindung werden durch die Beschreibung ihrer bevorzugten Ausführungsformen
mit Bezug auf die beigefügten
Zeichnungen deutlicher:
-
1 ist
eine Ansicht, die ein Netz von Hausgeräten darstellt.
-
2 ist
eine Ansicht, die eine Kommunikationsstruktur zwischen Geräten der
Art Master/Slave nach einer Ausführungsform
der vorliegenden Erfindung darstellt.
-
3 ist
eine Ansicht, die einen detaillierten Aufbau einer Kommunikationsstruktur
der Art Master/Slave nach einer Ausführungsform der vorliegenden
Erfindung darstellt.
-
4 ist
eine Ansicht, die eine Kommunikationsstruktur der Art Halbduplexbetrieb
nach einer Ausführungsform
der vorliegenden Erfindung darstellt.
-
5 ist
eine Ansicht, die einen Kommunikationszyklus der Art eine Anfrage/eine
Antwort darstellt.
-
6 ist
eine Ansicht, die einen Kommunikationszyklus darstellt, wenn ein
Paketfehler entsteht.
-
7 ist
eine Ansicht, die einen Kommunikationszyklus der Art eine Anfrage/viele
Antworten darstellt.
-
8 ist
eine Ansicht, die einen eine Anfrage-Kommunikationszyklus darstellt.
-
9 ist
eine Ansicht, die eine Aufteilungsart für Kommunikationsschichten darstellt.
-
10 ist
eine Ansicht, die eine Paketkommunikationsstruktur zwischen Schichten
darstellt.
-
11 ist
eine Ansicht, welche die gesamte Paketstruktur darstellt.
-
12 ist
eine Ansicht, die ein Anfrage-/Mitteilungspaket darstellt.
-
13 ist
eine Ansicht, welche die Struktur eines Antwortpakets darstellt.
-
14 ist
eine Ansicht, die eine Adressenstruktur darstellt.
-
15 ist
eine Ansicht, die ein Netzcode-Aufteilungsverfahren darstellt.
-
16 ist
eine Ansicht, die eine Gruppenadresse darstellt, die einer Art eines
Produkts entspricht.
-
17 ist
eine Ansicht, die eine Gruppenadresse darstellt, die einem Einbauplatz
entspricht.
-
18 ist
eine Ansicht, die eine Gruppenadresse darstellt, die einem Einbauort
und einer Produktart entspricht.
-
19 ist
eine Ansicht, die eine Anfangsblockstruktur einer Ereignisdatei
darstellt.
-
20 ist
eine Ansicht, die eine Grundstruktur einer Ereignisdatei darstellt.
-
21 ist
eine Ansicht, die den Aufbau eines Antwortpakets darstellt, wenn
ein Fehler entsteht.
-
Beste Art und Weise zur Umsetzung der
Erfindung
-
Nun
wird das Netzsteuersystem für
Hausgeräte
nach bevorzugten Ausführungsformen
der vorliegenden Erfindung im Einzelnen mit Bezug auf die beigefügten Zeichnungen
beschrieben.
-
Zunächst kann
das Netz nach der vorliegenden Erfindung, wie in 1 gezeigt,
Multimediageräte
wie einen Fernsehempfänger
(TV), Audiogeräte,
usw., die über
einen an ein externes Internet angeschlossenen Netzübergang
an ein Audio-/Video-Netz (A/V-Netz) angeschlossen sind; PC-nachgeordnete
Geräte
wie einen Drucker, einen Scanner, eine PC-Kamera, usw., die an ein
Personalcomputer-Netz (PC-Netz)
angeschlossen sind; und nachgeordnete Geräte wie einen Kühlschrank,
eine Klimaanlage, eine Waschmaschine, einen Staubsauger, einen Mikrowellenherd,
einen Luftbefeuchter, eine Lampe, eine Schreibtischlampe, einen Rauch-/Gasmelder,
usw. umfassen, die über
einen Netzverwalter an ein Wohnraumnetz angeschlossen sind.
-
Das
Netzsteuersystem für
Hausgeräte
nach Ausführungsformen
der vorliegenden Erfindung wird nun erklärt.
-
Die
Erfindung übernimmt
ein Master/Slave-System.
-
Das
heißt,
alle Kommunikationszyklen beginnen ausgehend von einem Master und
enden mit einer Master-Vorrichtung. Jedes Gerät kann ein Master sein, sollte
dazu aber über
eine Funktion zur Steuerung des Datenstroms in Übertragungsleitungen, der Information
in Geräten,
die an ein Netz angeschlossen sind, und eines Steuercodes verfügen. Nach
der vorliegenden Erfindung, die auf das Netz zwischen Hausgeräten mit relativ
gering ausgelegten Leistungsanforderungen angewendet wird, führt nur
ein Gerät,
das über
eine Benutzeroberflächenfunktion
verfügt,
wie etwa ein PC, sämtliche
Funktionen des Masters aus, und die anderen Vorrichtungen dienen
nur als Master mit eingeschränkten
Funktionen, wie etwa zur Kommunikation mit einem vorbestimmten Slave
oder zur Kommunikation unter Verwendung eines einfachen Steuercodes.
-
Auch
bilden die Ausführungsformen
der vorliegenden Erfindung eine Vorrichtung, in der Master und Slave
logisch nebeneinander bestehen, so dass eine direkte Kommunikation
zwischen Vorrichtungen, d. h. eine Kommunikation zwischen gleichberechtigten
Netzelementen (Peer-to-Peer) möglich
ist, während
gleichzeitig das grundlegende Master/Slave-Kommunikationssystem
aufrechterhalten bleibt. Und zwar wird, wie in 2 gezeigt,
eine Vorrichtung (nachstehend als P2P-Vorrichtung bezeichnet) gebildet,
bei der es sich um eine physikalische Vorrichtung handelt, die aber
logisch in einen unabhängigen
Master und Slave unterteilt ist.
-
Alle
Produkte, die an das Netz angeschlossen sind, sind im Grunde P2P-Vorrichtungen,
können
aber, wie in 3 gezeigt, je nach den Hardware-Leistungsmerkmalen,
als Master, Slave, zweckgebundener Sender und zweckgebundener Empfänger definiert
werden.
-
Speziell
im Fall des Masters arbeitet dieser, um einen neuen Kommunikationszyklus
anlaufen zu lassen, so, dass die Kommunikation mit dem entsprechenden
Slave beginnt und endet, wenn ein Kommunikationsbeginnereignis durch
den letzten Benutzer oder aufgrund der internen Zustandsveränderung
der Vorrichtung stattgefunden hat.
-
Im
Falle des Slaves befindet sich dieser immer in einem Empfangsbereitschaftszustand
und kann für sich
selbst die Kommunikation mit anderen Vorrichtungen nicht anfordern.
-
Die
P2P-Vorrichtung ist eine Vorrichtung, in der Master und Slave logisch
nebeneinander bestehen, und die als Master dient, um den Kommunikationszyklus
einzuleiten, wenn ein Kommunikationsbeginnereignis durch den letzten
Benutzer oder aufgrund der internen Zustandsveränderung der Vorrichtung stattgefunden hat.
Nach Beendigung der entsprechenden Kommunikation dient die P2P-Vorrichtung
als Slave, der sich im Empfangsbereitschaftszustand zu befinden
hat.
-
Der
zweckgebundene Sender ist eine Vorrichtung nur zum Senden entsprechend
seiner Hardware-Leistungsmerkmale, und kann ein Fernsteuerungsgerät sein.
-
Der
zweckgebundene Empfänger
ist eine Vorrichtung nur zum Empfangen entsprechend seiner Hardware-Leistungsmerkmale,
und kann ein Produkt sein, das mit einem IR-Empfänger ausgestattet ist und durch eine
Trockenbatterie betrieben wird.
-
Wie
in 4 gezeigt ist, führt das Netzsteuersystem für Hausgeräte nach
den Ausführungsformen
der vorliegenden Erfindung eine Halbduplex-Signalübertragung
unter Nutzung eines Busses durch.
-
Speziell
empfängt
die Vorrichtung im Übertragungsfall
keine Daten, die von anderen Vorrichtungen übertragen werden, und schickt
im Empfangsfall keine Daten an andere Vorrichtungen. Dies ist zum
Minimieren der Speichernutzung für
die Kommunikation gedacht, und gleichzeitig, um dem Netz, das mit
einem Bus aufgebaut ist, unter Verwendung der seriellen Kommunikationsfunktion
wie etwa dem Netz für
Hausgeräte nach
der vorliegenden Erfindung gerecht zu werden.
-
Entsprechend
kann im Falle des Masters oder Slaves der Speicher für den gesamten
Sende- und Empfangsbetrieb gemeinsam genutzt werden, und im Falle
der P2P-Vorrichtung kann der Speicher für den Sende- und Empfangsbetrieb
auch gemeinsam genutzt werden, weil Master und Slave nicht gleichzeitig
in Betrieb sind. Somit ist es nicht notwendig, den ganzen Sende-/Empfangsprozess
zu unterbrechen, und dies bewirkt, dass der Freiheitsgrad zum Programmieren
der Funktion des Produkts erhöht
wird.
-
Als
Nächstes
führt das
Netzsteuersystem für
Hausgeräte
nach Ausführungsformen
der vorliegenden Erfindung eine Kommunikation von der Art Ein-Zyklus
durch. Die Ein-Zyklus-Art lässt
sich einstufen in die Art eine Anfrage/eine Antwort, die Art eine
Anfrage/viele Antworten, und die Art eine Anfrage.
-
Dabei überträgt entsprechend
der Kommunikation von der Art eine Anfrage/eine Antwort, wie in 5 gezeigt,
ein Master ein Paket zu einem Slave, und im Ansprechen darauf überträgt der Slave
ein Paket zum Master, um die Kommunikation zu beenden. Nach der
Kommunikation von der Art eine Anfrage/viele Antworten überträgt ein Master,
wie in 7 gezeigt, ein Paket an mehrere Slaves, und im
Ansprechen darauf übertragen
die jeweiligen Slaves ein Paket an den Master. Der Master wartet
ständig
auf die Antwort, und wenn eine vorbestimmte längste Wartezeit verstrichen
ist, beendet der Master die Kommunikation. Dabei überträgt ein Master
entsprechend der Kommunikation von der Art eine Anfrage, wie in 8 gezeigt,
eine Anfrage im Hinblick auf einen Slave oder mehrere Slaves, und
beendet dann die Kommunikation, ohne auf die Antwort zu warten.
Wenn dabei Daten übertragen
werden, die sich aus mehreren Paketen zusammensetzen, unterteilt
der Master die Daten in Pakete mit der Größe, die zum entsprechenden
Slave passt, und überträgt die Daten
zum Slave in der Einheit eines Pakets. 6 zeigt
die Kommunikationsart, wobei, wenn ein Antwortfehler im Slave entsteht,
der Master die Anfrage erneut überträgt und die
entsprechende Antwort empfängt,
um die Kommunikation zu beenden.
-
Als
Nächstes
verfügt
das Netzsteuersystem für
Hausgeräte
nach der vorliegenden Erfindung über
ein Protokoll, das sich aus einer physikalischen Schicht, einer
Datenübermittlungsschicht
und einer Anwendungsschicht zusammensetzt.
-
Im
Falle eines TCP/IP-Protokolls, das gegenwärtig als Internet-Protokoll
verwendet wird, sind dessen Kommunikationsschichten in eine Anwendungsschicht,
eine Transportschicht, eine Vermittlungsschicht, eine Datenübermittlungsschicht
und eine physikalische Schicht unterteilt. Im Falle des Protokolls
für andere
Hausgeräte
oder Fertigungsstättenautomation
ist dieses grundsätzlich
mit einer Anwendungs schicht, einer Datenübermittlungsschicht, einer
physikalischen Schicht ausgestattet, und ist zusätzlich mit einer Transportschicht oder
Vermittlungsschicht ausgestattet. Da jedoch die Ausführungsformen
der vorliegenden Erfindung dazu gedacht sind, den vorstehend beschriebenen
Kommunikationsarten im Hinblick auf Hausgeräte gerecht zu werden, die für geringe
Leistungsanforderungen ausgelegt sind, setzt sich ihre Kommunikationsschicht
nur aus der physikalischen Schicht, der Datenübermittlungsschicht und der
Anwendungsschicht zusammen. Auch sind nach den Ausführungsformen
der vorliegenden Erfindung die physikalische Schicht und die Datenübermittlungsschicht
weitestgehend vereinfacht, und viele Teile zum Betreiben des Produkts
sind der Anwendungsschicht zugeteilt, um die Belastung des Mikrocomputers
auf ein Mindestmaß zu
senken, und zwar so, dass er an den Master/Slave- und Halbduplex-Betrieb
angepasst ist.
-
Wie
in 9 gezeigt ist, umfasst die Kommunikationsschicht
im Falle des Slaves eine Anwendungsschicht, die sich aus den Bereichen
Anwendungs-Software, Nachrichtenerstellung, Nachrichtenausführung, Nachrichtenzusammenfassung
und Nachrichtenredundanzprüfung
zusammensetzt; die Datenübermittlungsschicht
setzt sich aus den Bereichen Paketstrukturierung, Paketübertragung,
CSMA/CD, Paketprüfung,
Adressenprüfung
und Paketdatenempfang zusammen; und eine physikalische Schicht,
die aus einem UART besteht. Dabei kann die physikalische Schicht
einen Adapter umfassen, der gewählt
wird, wenn eine stromnetzgebundene Kommunikation verwendet wird.
-
Im
Falle des Masters umfasst die Kommunikationsschicht eine Anwendungsschicht,
die sich aus den Bereichen Anwendungssoftware, Nachrichtenaufteilung
und Nachrichtenzusammenfassung zusammensetzt; eine Datenübermittlungsschicht,
die sich aus den Bereichen Paketstrukturierung, Paketübertragungsbestätigung,
CSMA/CD, Paketprüfung,
Adressenprüfung
und Paketdatenempfang zusammensetzt; und eine physikalische Schicht,
die aus einem UART besteht. Die physikalische Schicht des Masters
kann auch einen Adapter umfassen, der gewählt wird, wenn eine stromnetzgebundene
Kommunikation verwendet wird.
-
Dabei
dient die physikalische Schicht dazu, Bitsignale in Übertragungsleitungen
zu empfangen oder das von der Datenübermittlungsschicht her empfangene
Paket im Bitsignal zu transportieren, um es über die Übertragungsleitungen zu übertragen.
-
Die
Datenübermittlungsschicht
erstellt das Paket unter Verwendung von Daten, die von der Anwendungsschicht
her eingehen, um das Paket an die physikalische Schicht zu schicken,
oder verarbeitet das von der physikalischen Schicht her eingegangene
Paket, um es an die Anwendungsschicht zu schicken. Die Rolle der
Datenübermittlungsschicht
des Masters unterscheidet sich ein wenig von derjenigen des Slave.
Die Datenübermittlungsschicht
des Masters umfasst den Prozess des Sicherstellens der Paketübertragungen
an die physikalische Schicht. Bei den als Slave dienenden Produkten
haben die physikalische Schicht und die Datenübermittlungsschicht denselben
Aufbau.
-
Die
Anwendungsschicht umfasst Nachrichtensätze und dient dazu, die Nachricht
zu analysieren und zu verarbeiten. Bei den als Slave dienenden Produkten
umfasst die Nachricht ein Laststeuerungs- oder Speichersteuerungsverfahren,
und der Master dient dazu, die Slaves zu verwalten, indem Ergebnisse
der Nachrichtenverarbeitung der Slaves verwendet werden, oder das
ganze Netz zu steuern. Dementsprechend umfasst die Anwendungsschicht
für jedes
Produkt verschiedene Inhalte. Die Anwendungsschicht des Masters dient
auch als Übertragungsschicht,
welche die Daten in Pakete aufteilt, wenn die zu übertragenden
Daten umfangreicher sind als ein Paket, das die aufgeteilten Pakete übertragen
soll, oder fasst die aufgeteilten Pakte zusammen und verarbeitet
sie, wenn diese eingehen.
-
Der
Grund, warum die Übertragungsschicht
nicht getrennt, sondern in der Anwendungsschicht enthalten ist,
liegt darin, dass die Aufteilung und Zusammenfassung der Pakete
nur im Hinblick auf eine fest umrissene Nachricht und nicht auf
alle Daten erfolgt.
-
Die
Paketübertragungsstruktur
zwischen den Kommunikationsschichten ist in 10 gezeigt.
Die Schnittstelle zwischen der Anwendungsschicht und der Datenübermittlungsschicht
ist in der Einheit einer Nachricht ausgeführt, während die Schnitt stelle zwischen
der Datenübermittlungsschicht
und der physikalischen Schicht in der Einheit eines vollen Pakets
ausgeführt
ist. Zwischen der Datenübermittlungsschicht
und der physikalischen Schicht brauchen die Pakete nicht separat
erstellt zu werden, sondern die Übertragung
erfolgt in der Einheit des vollen Pakets, so dass die Pakete so
wie sie sind verwendet werden können.
Da jedoch die Länge
eines Anfangsblocks, der zur Datenübermittlungsschicht und physikalischen
Schicht hinzukommt, in der Anwendungsschicht nicht bekannt sein
kann, ist es schwierig, die Daten in der Einheit eines vollen Pakets
zu koppeln, und statt dessen werden die Daten von der Anwendungsschicht
in der Einheit einer Nachricht zur Datenübermittlungsschicht übertragen.
Das Paket sollte die gesamte zu übertragende
Information enthalten und einen Aufbau haben, welcher einer späteren Erweiterung
der Kommunikationsfunktion gerecht werden kann.
-
Das
wie in 11 gezeigte Paket umfasst grundsätzlich einen
Anfangsblockbereich, der aus einem Paketanfangsblockfeld und einem
Feld zum späteren
Einfügen
der Paketfunktion besteht; einen Hauptbereich, der aus einem Nachrichtenanfangsblockfeld,
einem Feld zum späteren
Einfügen
der Paketfunktion und einem Nachrichtenfeld besteht; und einen Endblockbereich.
-
Auch
besteht, wie in 12 gezeigt ist, das im Master
verwendete Anforderungs-/Mitteilungspaket aus mindestens 17 Bytes
und höchstens
255 Bytes und umfasst einen aus 8 Bits bestehenden Haus-Code (HC),
um ein Haus/eine Wohnung zu klassifizieren, in dem bzw. in der das
Netz aufgebaut ist; eine aus 16 Bits bestehende Empfängeradresse
(RA), um den Empfänger
anzugeben, eine aus 16 Bits bestehende Absenderadresse (SA), um
den Absender anzugeben, eine aus 8 Bits bestehende Paketlänge, um
die Länge
des Paktes anzugeben, eine aus 3 Bits bestehende Zugriffspriorität, um eine Übertragungspriorität anzugeben,
eine aus 5 Bits bestehende Paketanfangsblocklänge (PHL), um die Länge des
Paketanfangsblocks anzugeben, eine aus 8 Bits bestehende Protokollversion
(PV), um die Version des Protokolls anzugeben, eine aus 4 Bits bestehende
Paketart, um die Art des Pakets anzugeben, einen aus 2 Bits bestehenden Übertragungswiederholungszähler (RC),
um die Übertragungswiederholungsanzahl
anzugeben, eine aus 2 Bits bestehende Paketnummer (PN), um die Übertragung
eines neuen Pakets anzugeben, ei ne aus 8 Bits bestehende Nachrichtenlänge (ML),
eine aus 8 Bits bestehende Nachrichtenanfangsblocklänge (MHL),
eine aus 8 Bits bestehende Portnummer (PO), einen aus 8 Bits bestehenden
Befehlscode (CC), ein Argument (ARG) mit einer variablen Anzahl
von Bits, eine aus 16 Bits bestehende zyklische Redundanzprüfung, und
ein aus 8 Bits bestehendes Textende (ETX), um das Ende des Pakets
anzugeben.
-
Auch
ist, wie in 13 gezeigt, das Antwortpaket,
das im Slave verwendet wird, identisch zum Anfrage-/Mitteilungspaket,
mit der Ausnahme, dass sein Hauptbereich einen Block ACK/NAK aus
8 Bits umfasst.
-
Dabei
ist der Hauscode (HC) ein Code, um das Haus/die Wohnung logisch
einzustufen, in dem bzw. in der das Netz aufgebaut ist. Insbesondere
im Fall, dass die Übertragungsleitungen
zwischen den jeweiligen Häusern,
wie etwa Stromleitungen, nicht klassifiziert sind, werden Hexagonalwerte
im Bereich von 0x03~0xFE zum Klassifizieren der jeweiligen Häuser/Wohnungen
verwendet.
-
Die
Empfängeradresse
(RA), die sich vor der Absenderadresse (SA) befindet, ist zur frühen Beurteilung
bestimmt, ob der Empfänger
das Paket kontinuierlich empfängt
oder es beim Eingang nicht zur Kenntnis nimmt. Die oberen beiden
Bits sind zur Angabe der Art des Netzes, und die darauffolgenden
6 Bits sind zum Klassifizieren der Produkte, die eine unabhängige Funktion
haben, wie etwa eine Waschmaschine, ein Kühlschrank, usw. Die unteren
8 Bits werden zugeteilt, um das Produkt dann zu klassifizieren,
wenn es mehrere Produkte derselben Art gibt.
-
Die
Paketlänge
(PL) besteht aus 1 Byte, um eine Nummer zu speichern, welche die
Paketlänge
angibt, die in der Einheit eines Bytes aus dem Hauscode zum EXT
des Pakets berechnet wird. Nach Eingang des Paketlängendatenwerts
(PL-Datenwerts) empfängt
der Empfänger
nur die Daten, die dem Paketlängendatenwert entsprechen,
und lässt
die anschließenden
Prozesse ablaufen. Dementsprechend wird der Paketlängenwert (PL-Wert)
dazu verwendet, die Größe eines
Empfangspufferspeichers vorab auszuweisen und einen Fehler der empfangenen
Paketdaten zu erfas sen. Und zwar wird das letzte Byte des Pakets
ausgelesen, und wenn es sich dabei nicht um EXT handelt, wird dies
als Paketfehler beurteilt.
-
Die
Zugriffspriorität
(AP) ist ein Feld zur Angabe einer Übertragungspriorität, die der
Nachricht, wie etwa einer dringenden Nachricht, einem Paket, das
aufgrund fehlgeschlagener Übertragung
erneut übertragen werden
muss, oder einer Nachricht, die weniger wichtig ist als eine allgemeinen
Mitteilungsnachricht eingeräumt
wird, so dass die physikalische Schicht die CSMA/CD-Funktion entsprechend
der eingeräumten
Priorität erfüllen kann.
Dieses Feld ist dann von Bedeutung, wenn der Adapter, der die CSMA/CD-Funktion
erfüllt,
die Nachricht entsprechend der Übertragungspriorität übertragen
kann, und wird andernfalls ignoriert. Die den jeweiligen Übertragungen
entsprechenden Zugriffsprioritätswerte
sind wie folgt:
- 0: im Falle einer Übertragungswiederholung
aufgrund vom Kollision oder in einem Notfallzustand
- 1: im Falle der Massenübertragung
von Daten durch die Nachrichtenaufteilung
- 2: im Falle einer normalen Übertragung
- 3: im Falle, dass der Netzverbindungszustand aufgelistet wird
(auch im Falle der Kollision bleibt die Priorität mit 3 aufrechterhalten).
-
Die
Paketanfangsblocklänge
(PHL) ist ein Feld zur Erweiterung des Paketanfangsblocks. Wenn
ein Erweiterungsfeld zum vorliegenden Paketanfangsblock hinzugefügt wird,
wird die Paketanfangsblocklänge
entsprechend verändert.
Im Falle keiner Veränderung
beträgt
er 9 Bytes und kann auf maximal 32 Bytes erweitert werden.
-
Die
Protokollversion (PV) ist ein 1 Byte-Feld, das die Version des übernommenen
Protokolls angibt. Version und Unterversion nehmen in der Reihenfolge
ihrer Aktualisierung die Werte 0~15 an.
-
Die
Paketart (PT) setzt sich aus 4 Bits zusammen, die bestimmt werden,
wenn das Paket übertragen und
in ein Anfragepaket, Antwortpaket und Mitteilungspaket unterteilt
wird. Das Antwortpaket wird weiter in eine erfolgreiche Antwort
und eine fehlgeschlagene Antwort unterteilt. Der Master bestimmt
das Anfragepaket und der Slave bestimmt das Antwortpaket. Wenn die
Vorrichtung nur als Slave wirkt, verarbeitet sie nur das Anfragepaket.
Der Grund, warum das Antwortpaket in zwei Antwortarten unterteilt
ist, ist der, dass das Paket nicht an die Anwendungsschicht übertragen
wird, sondern sofort erneut übertragen
wird, wenn das Paketartfeld (PT-Feld) im Paketanfangsblock die fehlgeschlagene
Antwort angibt, auch wenn der Inhalt der Nachricht in der Datenübermittlungsschicht
nicht bekannt ist. Ein Mitteilungspaket stellt das Paket dar, das
keine Antwort anfordert. Ein Paket in Array-Form wird verwendet,
um sämtliche
Daten ohne irgendeine Antwort an das jeweilige Paket zu unterteilen
und zu verschicken, wenn die Massendatendatei mit einer hohen Übertragungsgeschwindigkeit übertragen
wird, und seine Hexagonalwerte sind wie folgt:
0: | Anfragepaket |
1~3: | reserviert |
4: | erfolgreiches
Antwortpaket |
5: | fehlgeschlagenes
Antwortpaket |
6~7: | reserviert |
8: | Rundsendemitteilungspaket |
9: | Array-Paket |
10: | Endpaket
von Array-Daten |
11~15: | reserviert |
-
Der übertragungswiederholungszähler (RC)
ist ein 2 Bit-Feld, um einen Doppelprozess für dieselbe Nachricht zu verhindern,
wenn ein Übertragungsfehler
entsteht. Wenn ein CRC-Fehler im eingegangenen Antwortpaket enthalten
ist, das eingegangene Paket den CRC-Fehler enthält oder die Empfangs-Byte-Zeit
vorüber
ist, kann der Master das Paket höchstens
dreimal wieder übertragen,
während
der Slave nur einmal übertragen
kann.
-
Die
Paketnummer (PN) ist auch ein 2 Bit-Feld, um den Doppelprozess für dieselbe
Nachricht zu verhindern, wenn ein Übertragungsfehler entsteht.
Der Master erhöht
die Paketnummer jedes Mal um 1, wenn ein neues Paket übertragen
wird, und im Falle, dass dasselbe Paket erneut übertragen wird, behält der Master
die vorherige Paketnummer bei. Entsprechend speichert der Slave
die Paketnummer und die Übertragungsadresse
der vorherigen Nachricht, und wenn dieselbe Nachricht erneut eingeht,
ignoriert er das Nachrichtenduplikat. Wenn sich die eingegangene
Nachricht von der vorherigen Nachricht unterscheidet, verarbeitet
der Slave die Nachricht. Der Slave kopiert die Paketnummer der eingegangenen
Nachricht und erstellt das Antwortpaket, wenn er auf die eingegangene
Nachricht antwortet.
-
Die
Nachrichtenlänge
(ML) ist eine Information, um die Länge des Nachrichtenfelds auszuweisen,
da die Länge
des Nachrichtenfelds variabel ist. Dementsprechend weist die Anwendungsschicht
die Länge
des Nachrichtenfelds anhand der Nachrichtenlänge aus.
-
Die
Nachrichtenanfangsblocklänge
(MHL) ist ein Feld, um das Nachrichtenfeld später zu erweitern, und kann
zusätzlich
einen Nachrichtenanfangsblock enthalten, im Falle, dass das Nachrichtenfeld
codiert, das Anwendungsprotokoll verändert wird, usw.
-
Die
Portnummer (PO) ist ein Feld, um den Nachrichtensatz zu erweitern,
und der Nachrichtensatz kann für
jeden Port klassifiziert werden. Für die Versionsaktualisierung
des Nachrichtensatzes oder die Kompatibilität mit anderen Anwendungsprotokollen
kann der Nachrichtensatz in jeden Port eingestellt werden.
-
Die
Nachricht umfasst einen Befehlscode für die an den Slave gerichtete
Anforderung des Masters nach Funktionserfüllung, Eingangsfaktoren, die
zur Durchführung
des Befehls erforderlich sind, und Faktoren, die an den Master übertragen
werden, nachdem der Slave den Befehl ausgeführt hat. Auch sollte die Nachricht so
aufgebaut und definiert sein, dass die Programmierung im 8 Bit-Mikrocomputer
erleichtert ist. Speziell sollte die Nachricht, auch wenn sie korrigiert
ist, so modulprogrammiert sein, dass sich die Korrektur der Nachricht ohne
Weiteres reflektieren lässt.
Dazu haben sämtliche
Nachrichten jeweils unabhängige
Funktionen. Dies bedeutet, dass sämtliche Nachrichten keinerlei
entsprechende niederrangige Nachrichten und keine kausale Verknüpfungen
zwischen den jeweiligen Programmroutinen in der Software-Implementierung
enthalten. Wenn die Nachrichten voneinander unabhängige Funktionen
haben, können
die Funktionen zur Steuerung und Überwachung des Produkts über die
Kombination von Nachrichten erweitert werden. Wenn der Slave den
Befehl normal ausgeführt
hat, sind die an den Master übertragenen
Faktoren (ACK + Rückargumente),
und sind andernfalls (NAK + Fehlercode). Maximal 256 Befehle können in
jeder Vorrichtung enthalten sein. Das Vorhandensein/Nichtvorhandensein
und die Byte-Anzahl von eingegebenen Argumenten und Rückargumenten
werden entsprechend dem Befehlscode bestimmt.
-
Dabei
sind die Datentypen der Argumente wie folgt:
Boolesch: 1 Byte
char,
char ohne Vorzeichen: 1 Byte
int, int ohne Vorzeichen, short
int, short int ohne Vorzeichen: 2 Bytes
long, long ohne Vorzeichen:
4 Bytes
string: Senden/Empfangen, wobei NULL enthalten ist.
-
Um
auch den Befehlscode zu klassifizieren, wird das folgende Konzept
eingesetzt:
Obwohl alle Produkte unabhängig 256 Befehlscodes im Bereich
von 0x00~0xFF verwenden, werden gemeinsame Codes als Befehle verwendet,
die in sämtlichen
Produkten gemeinsam verwendet werden. Die Korrektur der Terme wird
durch die Aufnahme der Funktion des Produkts in den generalisierten
Aufbau erleichtert. Alle Befehlscodes werden in essentielle Befehlscodes
und optionale Befehlscodes eingestuft. Die essentiellen Befehlscodes
sind die Befehle für
die Grundinformation der Vorrichtung, und sind Befehle, die für die Kommunikation
erforderlich sind. Sie sind in temporäre Befehle (als I angegeben)
und Programmbefehle (als P angegeben) eingestuft. Der temporäre Befehl
kann sofort ausgeführt
werden, wenn ihn der Slave empfängt,
und der Programmbefehl macht eine Sequenz zum Durchführen des
Befehls notwendig. Befehlscodes in einem Algorithmusbereich sind
nicht durch die für
alle Produkte standardisierten Codes bezeichnet. Da die Produkte
derselben Art je nach ihren Modellnummern oder Herstellern miteinander
unter Verwendung verschiedener Algorithmen kommunizieren können, können sie
die verschiedenen Funktionen unter Nutzung desselben Befehlscodes
erfüllen.
Dementsprechend sollten alle Befehlscodes dieses Bereichs die Eigennummern
der Produktmodelle zugeteilt haben und diese sollten als Faktoren
mit eingebunden sein. Auch unterscheidet sich die Nachrichtenstruktur,
wenn der Master die Nachricht mit dem Protokoll zur Verarbeitung
der Nachricht in der Anwendungsschicht überträgt, von derjenigen, wenn der
Slave dem Master antwortet. Wenn die Nachricht vom Master aus übertragen
wird, setzt sie sich aus einem Befehlscode und Eingangsfaktoren
zum Durchführen
des Befehlscodes, d. h. Argumenten (ARG), zusammen. Die Anzahl und
der Datentyp der Faktoren verändern
sich je nach dem Befehlscode. Die Struktur der Nachricht, die vom
Slave, der ein Paket vom Master erhalten hat, übertragen wird, wird in ein
Paket mit einem Fehler und eine anderes ohne Fehler aufgeteilt,
wenn der Paketfehler oder der Befehlscode, der vom Master her eingegangen
ist, ausgeführt
wird. Wenn das vom Master her eingegangene Paket keinen Fehler aufweist
und der Befehlscode normal ausgeführt wird, setzt sich die Nachrichtenstruktur
aus einem Befehlscode, ACK, und Faktoren (ARG) zusammen, die sich
aus der befehlscodierten Ausführung
ergaben. Die Anzahl von sich ergebenden Faktoren und der Datentyp
unterscheiden sich entsprechend dem Befehlscode. Wenn ein Fehler
in dem Paket entsteht, das vom Master her eingeht, setzt sich die
Nachricht aus einem Befehlscode, NAK, und einem Paketfehlercode
zusammen. Falls das Paket normal ist, aber während der Ausführung des
Befehlscodes ein Fehler entsteht, setzt sich die Nachricht aus einem Befehlscode,
NAK, und einem Fehlercode zusammen.
-
Der
CRC ist ein Wert zum Erfassen eines Fehlers des empfangenen Pakets,
oder um den Empfänger den
Paketfehler während
der Übertragung
erfassen zu lassen. Der CRC setzt sich aus 16 Bits zusammen, und sein
Wert wird hergestellt oder ein Fehler wird erfasst, indem die Daten
ab ETX bis zu dem Byte genau vor dem CRC-Feld verwendet werden.
-
ETX(0x03)
ist eine Kommunikationsschreibweise, die das Ende des Pakets bedeutet
und ein Verfahren zum Erfassen des Paketfehlers bereitstellt, ohne
das CRC- zusammen mit dem Paketlängenfeld
während des
Empfangs zu verwenden. Und zwar können die Byte-Daten, solange
die Paketlänge
eingeht, als Paketfehler beurteilt werden, wenn es sich beim letzten
Byte nicht um EXT handelt. Dabei kann die Paketfehlerprüfung unter
Verwendung des CRC entfallen.
-
Die
Adresse der vorstehend beschriebenen Paketstruktur wird nun im Detail
erläutert.
-
Jeder
Master oder Slave im Netz wird als eine Adresse erkannt. Das jeweilige
System hat eine aus 2 Bytes bestehende Adresse zugeteilt und kann
das Paket über
die zugeteilte Adresse zur entsprechenden Gegenpartei übertragen.
Wie in 14 gezeigt ist, ist die Adresse
in eine physikalische Adresse, die sich aus einem Netzcode von 3
Bits und einem Produktcode von 5 Bits zusammensetzt und unveränderbar
feststeht, wenn das Produkt ausgeliefert wird, und eine logische
Adresse von 8 Bits unterteilt, die zum Klassifizieren der Produkte
von derselben Art oder als Gruppenadresse verwendet wird, und während der Übertragung
usw. veränderbar
ist.
-
Das
zu Hause befindliche Netz kann kurzgefasst in eine PC-Gruppe, eine
A/V-Gruppe und eine
Wohnraumgruppe, d. h. eine Hausgerätegruppe eingestuft werden,
und es wird ein 3 Bit-Netzcode für
diese Einstufung verwendet. Selbst wenn im Kommunikationsprotokoll
das Hausgerätenetz
sich von anderen zu Hause befindlichen Teilnetzen unterscheidet,
ist das Netzklassifizierungsfeld zur Kommunikation mit den PC-Gruppen- oder
A/V-Gruppenprodukten notwendig. Ein Beispiel für die Netzcodeklassifizierung
ist in 15 gezeigt.
-
Dem
Netzcode entsprechend werden 5 Bits für einen Produktcode zugeteilt,
d. h. den Produktnamen (z. B. Waschmaschine, Kühlschrank, Sanitärprodukt,
Lampe, Sicherheitsprodukt, usw.) und 8 Bits werden für die Klassifizierung
der Produkte derselben Art zugeteilt. Dies soll der Bedingung in
einem Gästehaus,
einem Hotel, usw. Rechnung tragen.
-
Das
8 Bit-Feld zum Klassifizieren der Produkte derselben Art wird auch
als Gruppenadresse verwendet, die entsprechend dem Einbau- oder
Aufstellort des Produkts eingestuft wird. Ein Benutzer gibt den
Einbau- oder Aufstellort des Produkts ein, wenn der Netzmanager
das Produkt im Netz registriert.
-
Dabei
wird die Produktgruppe auf zweierlei Weisen bestimmt. Entsprechend
der ersten Gruppenadresse können
alle Objekte, die dem unteren Feld entsprechen, dadurch bestimmt
werden, dass in die Werte von jeweiligen Feldern jeweils '1' eingetragen wird. Dabei bedeutet die
Gruppe die Produkte, die zur selben Art oder zum selben Netz gehören. Lautet
der Netzcodewert beispielsweise '111', gibt er sämtliche
zu Hause befindliche Netze an, und wenn der Produktcodewert '1111' lautet, gibt er
alle Produkte des entsprechenden Netzes an. Wie in 16 gezeigt
ist, wird die Produktgruppe einer fest umrissenen Art entsprechend
der Gruppenadresse ausgewählt,
und wenn der Gruppenadressenwert '11111111' lautet, gibt er alle Produkte des entsprechenden
Netzes und Produktcodes an. Entsprechend der zweiten Gruppenadresse
wird, wie in 17 gezeigt, die Produktgruppe
eines genau angegebenen Orts ausgewählt. Dabei wird der Produktcode
zu '11111', um alle Produkte
zu bestimmen, und der logische Adressenwert wird entsprechend dem
Einbau- oder Aufstellort bestimmt. Wenn der Netzcode '111' und der Produktcode '11111 lautet, gibt
das logische Adressenfeld den Ortscode an. Auch kann, wie in 18 gezeigt,
eine fest umrissene Produktgruppe, die sich an einem fest umrissenen
Ort befindet, ausgewählt
werden, indem die Gruppenadresse bestimmt wird.
-
Als
Nächstes
wird ein Plug-and-Plag-Prozess erklärt, wobei die Geräte über das
Netz verbunden sind, den Geräten
anfängliche
Hauscodes und Adressen zugeteilt sind, und das Kommunikationsumfeld
bestimmt wird.
-
Damit
die über
das Netz verbundenen Geräte
miteinander kommunizieren können,
wird festgelegt, dass sämtliche
Geräte
dieselbe Kommunikationsgeschwindigkeit haben sollen, und ihre eindeutigen
Adressen werden im physikalischen Netz zugeteilt. Dabei sollte der
Master mit einer Datenbank der Namen und Adressen aller Geräte ausgestattet
sein. Auch sollten für
den Fall, dass die Übertragungsleitungen zwischen
den jeweiligen Häusern/Wohnungen
nicht wie die Stromleitungen klassifiziert sind, die jeweiligen
Häuser/Wohnungen
klassifiziert werden. Dazu bestimmt der Netzverwalter, der für den Plug-and-Plag-Prozess
verantwortlich ist, Hauscodes, um die jeweiligen Häuser/Wohnungen
zu klassifizieren, wenn eine Erstversorgung mit Strom stattfindet.
Nachdem die Hauscodes bestimmt wurden, erhält der Netzverwalter die Eingabe
der Information über
das Gerät
vom Benutzer, wenn das Gerät
zum ersten Mal im Netz zugeschaltet ist, und führt einen Nachweis- und Adressierprozess
durch, um dem jeweiligen Gerät
eine Adresse zuzuweisen. Nach dem Abschluss dieses Prozesses erfolgt
ein Voranfrageprozess zum Ändern
von Produktinformation wie etwa der Modellnummer oder der Steuergeräteversion
des kommunikationsgegenständlichen
Geräts,
der Größe eines
Pufferspeichers für
die Paketerstellung oder der Übertragungsgeschwindigkeit.
Dieser Voranfrageprozess ist nicht immer notwendig, wird aber je
nach Bedarf durchgeführt.
Die Produktinformation ist nötig,
um den Namen des angeschlossenen Produkts auszuweisen, und die Anfrage
nach der Pufferspeichergröße erfolgt,
wenn die Größe des Pakets
bestimmt wird, damit der Master Massendaten an den Slave schicken
kann. Der Master fordert die Geschwindigkeitsänderung zum Slave an, wenn
die Massendaten übertragen/empfangen
werden oder die Übertragung/der
Empfang der Daten beendet ist. Nach dem Abschluss des Voranfrageprozesses,
läuft eine allgemeine Übertragungsbetriebsart
ab. Im Hinblick auf die Position des Benutzers sollte der Plug-and-Plag-Prozess
ohne eine zusätzliche
Einbau- oder Eingabearbeit des Benutzers unmittelbar dann erfolgen,
wenn Strom in das Gerät
eingespeist wird. Nachdem das Gerät im Netz zugeschaltet ist,
wird jedoch die Information über
das Gerät
unter der Maßgabe,
dass die Stromleitungen als Netzmedien verwendet werden, in den
Netzverwalter eingegeben. Im Falle der Stromleitungen werden die Übertragungsleitungen
zwischen Nachbarn nicht klassifiziert. Somit kann, wenn der Netzverwalter
auch im Nachbarhaus installiert ist, in einem Zustand, in dem das
Gerät im
Netz zugeschaltet ist, der Netzverwalter im Nachbarhaus dem Gerät die Adresse
zuteilen. Um dieses Problem zu lösen,
fordert der Netzverwalter zuerst eine Registrierung der Adresse
für das
Gerät so
an, dass das Gerät
die Geräteinformation
für den
Netzverwalter eingibt.
-
Entsprechend
dem vorstehend beschriebenen Hauscodebestimmungsprozess überträgt der Netzverwalter
im anfänglichen
Stromeinspeisestadium eine Hauscodebestätigungsnachricht an alle Geräte, um die
eigenen Hauscodes zur Unterscheidung der jeweiligen Häuser zu
bestimmen. Dabei ist der Faktor der Wert, der sich als bestimmter
Hauscode im Bereich von 0x00–0xFF
ergibt. Falls keine Antwort eingeht, bestimmt der Netzverwalter
den entsprechenden Hauscode als seinen eigenen Hauscode, da der
Hauscode ein in dem physikalischen Netz, an das der Netzverwalter
angeschlossen ist, nur einmal vergebener Wert ist. Falls die Antwort
eingeht, bedeutet dies, dass der entsprechende Hauscode nicht der
nur einmal vergebene Wert ist, und der Netzverwalter erzeugt wieder
einen bestimmten Hauscode, um den vorstehenden Prozess zu wiederholen. Da
die vorstehend beschriebenen Hauscodes im Hinblick auf die jeweiligen
Produkte gleichzeitig bestimmt werden, wenn der Netzverwalter über die
Adressen der jeweiligen Produkte entscheidet, wird derselbe Hauscode
den Produkten im selben Haus zugeteilt, wodurch die jeweiligen Häuser klassifiziert
werden können.
-
Allerdings
wird die adressenbezogene Information einschließlich des Hauscodes in einem
nichtflüchtigen
Speicher des jeweiligen Produkts gespeichert und kann somit zu einem
Problem werden, wenn der Benutzer nach der Adressenzuteilung für die jeweiligen
Produkte den Wohnort wechselt. Speziell wenn irgendein anderes Haus
oder irgendeine andere Wohnung denselben Hauscode verwendet wie
das Haus oder die Wohnung, aus dem oder der gerade ausgezogen wird,
können
die jeweiligen Häuser
oder Wohnungen aufgrund der Hauscodekollision nicht klassifiziert
werden. Dementsprechend sollte im Falle eines Auszugs die Hauscodekollision
bei einer anfängliche
Hauscodebestimmung wiederholt bestätigt werden, indem der Netzverwalter nur
in einem Zustand mit Strom versorgt wird, in dem die Stromversorgung
zu allen Produkten abgeschaltet ist. Falls keine Kollision auftritt,
können
sie, so wie sie sind, ohne Hauscodeveränderung verwendet werden, wohingegen,
wenn die Kollision auftritt, die Hauscodes aller Produkte rückgesetzt
und dann neu bestimmt werden sollten. Um dabei die Hausprodukte
zu unterscheiden, deren Hauscodes sich in Kollision befinden, wird eine
Benutzer-ID als Faktor verwendet. Die Benutzer-ID wird über den
Netzverwalter eingegeben, wenn das Gerät dem Netz das erste Mal zugeschaltet
wird.
-
Als
Nächstes
gibt der Benutzer im Nachweis- und Adressierungsprozess in den Netzverwalter,
der das Netz verwalten kann, den Produktnamen, die Nummer von Produkten,
den Einbau-/Aufstellort und die Benutzer-ID des Geräts ein,
das mit Strom versorgt werden soll, wenn das Gerät dem Netz zum ersten Mal zugeschaltet
wird. Dann fordert der Netzverwalter die Registrierung des dem Netz
zum ersten Mal zugeschalteten Geräts an und teilt die Adresse
zu, wenn eine Registrierungsnachricht einer temporären Adresse
vom Gerät her
eingeht. Auch wenn es mehrere Produkte derselben Art gibt, bestimmt
der Netzverwalter dabei neue Adressen für die jeweiligen Produkte,
um jegliche Adressenkollision zu vermeiden. Der Grund, warum die
Produktnummer eingegeben wird, ist, dass wenn mehrere Produkte derselben
Art gleichzeitig dem Netz zugeschaltet sind, der Netzverwalter erkennen
muss, ob die Registrierungsnachrichten von allen angeschlossenen Produkten
her eingegangen sind. Auch liegt der Grund dafür, dass der Einbau-/Aufstellort
eingegeben wird, darin, dass der Benutzer das Produkt über die
Standortinformation des Produkts, die auf dem Bildschirm des Netzverwalters
einscheint, mühelos
ausmachen kann. Die Benutzer-ID ist dazu vorgesehen, das Produkt
während
des wie vorstehend beschriebenen Hauscode-Resets zu bestätigen. Die
Adresse des Netzverwalters ist ungeachtet des Ein-/Ausschaltzustands
des Stroms auf 0x00 festgesetzt. Jedoch haben andere Vorrichtungen,
bei denen es sich um Master oder Slaves handeln kann, repräsentative
Produktadressen während
ihrer Auslieferung zugeteilt bekommen, als der Strom ausgeschaltet
war. Der Netzverwalter bestimmt einen Bereich zusätzlicher
Adressen, der durch die Produkte unter Verwendung eines 'Teilnahmeanfrage' genannten Befehls ausgewählt werden
kann, und fordert die Geräte
auf (d. h. die als repräsentative
Produktadressen bestimmt sind), deren Adressen nicht durch die Eingabe
des Benutzers bestimmt sind, mit den temporären Adressen registriert zu
werden. Im Falle einer Klimaanlage wird 0x20 als die Nummer des
Empfängers
ausgewählt,
und die zusätzliche
Adresse hat den Faktor im Bereich 0x21~0x2E. Der Befehl 'Teilnahmeanfrage' kann nur das Produkt
erkennen, dessen Adresse nicht festliegt. Die aufgerufenen Produkte
bestimmen ihre Adressen (d. h. temporären Adressen), indem sie die
zusätzlichen
Adressen durch Ablaufenlassen eines Zufallszahlengenerators optional
auswählen
und ihre Adressenwerte dem Netzverwalter mitteilen. Falls 0x25 aus
0x21~0x2E ausgewählt
wird, wird dies an den Netzverwalter übertragen. Die temporäre Adresse
fungiert als Adresse des entsprechenden Produkts, bis sie der Netzverwalter
oder Master unter Verwendung eines Befehls 'Adressenänderung' ändert
oder die Stromversorgung zum Produkt abgeschaltet wird. Der Netzverwalter
setzt die Adressenduplikate der Produkte jeweils unter Verwendung
des Befehls 'Adressenänderung' auf die repräsentativen
Adressen zurück
und bestimmt die Adressen der Produkte, deren temporäre Adressen
nicht dupliziert sind, in der Reihenfolge der zusätzlichen
Adressen, um die entsprechenden Produkte wieder aufzurufen. Dabei
bestimmt der Netzverwalter die Hauscodes der jeweiligen Produkte
und die Benutzer-ID, indem sowohl ein eigener Hauscode als auch
die vom Benutzer eingegebene Benutzer-ID übertragen wird. Wenn die nicht
duplizierten Adressen 0x2A, 0x25 und 0x23 lauten und die zusätzlichen
Adressen im Bereich von 0x21~0x2E liegen, werden die Produkte mit
den temporären
Adressen 0x23, 0x25 und 0x2A als 0x21, 0x25 bzw. 0x23 bestimmt.
Fall irgendein temporäres
Adressenduplikat besteht, wird der vorstehende Prozess wiederholt.
Der vorstehend beschriebene Nachweis- und Adressierungsprozess wird
im Hinblick auf alle Arten von Produkten (d. h. 0x01~0x0F) 14 Mal
wiederholt.
-
Wie
vorstehend beschrieben, wurden nach Abschluss des Nachweis- und
Adressierungsprozesses die Namen, Adressen und Einbau-/Aufstellorte
der Geräte
in der Datenbank des Netzverwalters gespeichert. Die an den Netzverwalter
angeschlossenen Geräte
beginnen zum ersten Mal als Master oder Slaves zu arbeiten, wenn
ihre Adressen durch den Netzverwalter vollständig bestimmt wurden. Dabei
lesen die als Master fungierenden Geräte die Namen und Adressen der
Geräte
aus der Datenbank des Netzverwalters aus, um sie in ihrem eigenen
Speicher abzuspeichern, und beginnen, mit den Slaves zu kommunizieren.
Vor der Adressenzuteilung können
alle Geräte
nur als Slaves handeln. Die Geräte,
die mit ihren zugeteilten Adressen versehen sind, verschicken periodisch
eine Rundsendenachricht, um über
ihre Existenz zu informieren, weil die Master, welche die jeweiligen
Geräte
steuern können,
wissen sollten, ob die Geräte
dem Netz zugeschaltet sind. Wenn die zugeschalteten und nicht zugeschalteten
Geräte
nicht unterschieden werden, wird es schwierig, herauszufinden, ob
eine nicht mögliche
Kommunikation durch die Abschaltung oder ein Problem des Geräts verursacht ist.
Auch werden die nicht zuge schalteten Geräte zur Information für den Benutzer
in einem inaktiven Zustand am Bildschirm des Netzverwalters angezeigt.
Alle mit den Adressen versehenen Geräte verschicken periodisch direktübertragene
Rundsendenachrichten, um ihre Existenz mitzuteilen, und dabei ist
es notwendig, die Periode einzustellen. Wenn die Anzahl von Geräten gering
ist, ist dies nicht von Belang, ist jedoch die Anzahl von Geräten hoch,
bewirkt eine zu kurze Periode, dass zu viele Direktnachrichten übertragen
werden, wodurch die Leistung des Netzes herabgesetzt wird. Die Anfangsperiode
wird als lang bestimmt und dann anteilig zur Anzahl von Geräten eingestellt.
Das heißt,
wenn die Anzahl von Geräten
gering ist, wird die Periode als kurz bestimmt, wohingegen, wenn
die Anzahl von Geräten
hoch ist, die Periode als lang bestimmt wird, und dies bewirkt,
dass die Leistung des Netzes aufrechterhalten bleibt. Dabei bestimmt
der Netzverwalter die Periode, und das jeweilige Gerät verschickt
seine eigene Periode als Faktor der Direktnachricht in einer Rundsendung. Der
Netzverwalter empfängt
die Direktnachricht vom jeweiligen Gerät, und wenn sich die Direktnachricht
von der durch den Netzverwalter bestimmten Periode unterscheidet,
bestimmt dieser die Periode des entsprechenden Geräts als seine
eigene Periode.
-
Als
Nächstes
wird das Ereignis erläutert,
das die Kommunikationszustände
des Geräts
bewirkt.
-
Das
Ereignis bedeutet den Fall, bei dem eine gewisse Zustandsveränderung
im Gerät
hervorgerufen wird, und kann entsprechend den Entstehungsursprüngen in
die folgenden 5 Arten eingestuft werden. Da gibt es ein Benutzerereignis,
das eintritt, wenn der Benutzer dem Gerät über eine Taste einen direkten
Befehl erteilt, ein periodisches Ereignis, das in vorbestimmten
Abständen
automatisch eintritt (zum Beispiel eine direktübertragene Mitteilungsnachricht,
die vom Netzverwalter eine vorbestimmte Zeitdauer lang übertragen
wird), ein Statusereignis, das aufgrund einer selbstbewirkten Zustandsveränderung
des Geräts
während
der Überwachung
des Systemzustands eintritt (zum Beispiel Temperatur-, Feuchtigkeits-
Waschgangänderung,
usw.), ein Fehlerereignis, das eintritt, wenn ein Fehler in Bezug
auf den Betrieb des Systems auftritt, und ein externes Ereignis,
das bei einer von außerhalb
des Systems wie etwa von einem Web-Server usw. kommenden Aufforderung eintritt
(zum Beispiel eine Kommunikationsanfrage von einer abgesetzten Stelle
her, wenn der Netzverwalter als Haus-Server dient).
-
Ein
Gerät,
das mit einer Benutzeroberfläche
ausgestattet ist, wie etwa einer Tastatur, einer Maus und einem
Bildschirm, kann durch alle 5 Ereignisse eine Peer-to-Peer-Kommunikation
durchführen.
Jedoch sollte für
die Vorrichtung, der es an einer Benutzeroberfläche zur Durchführung der
Peer-to-Peer-Kommunikation mangelt, die Bedingung zum Durchführen der
Kommunikation bereits im Vorfeld bestimmt werden, oder die Peer-to-Peer-Kommunikation
ist nur durch die Ereignisse möglich,
die durch interne Faktoren des Geräts herbeigeführt werden.
-
Wenn
nach der vorliegenden Erfindung ein Ereignis stattfindet, führt das
entsprechende Gerät
die Kommunikation durch, indem es allen Geräten unter Verwendung eines
Mitteilungspakets seine eigene Zustandsveränderung mitteilt. Der Grund,
warum das Ereignis eine wichtige Bedeutung hat, ist der, dass im
Falle, dass der Benutzer den Zustand des Geräts überwacht, es viel effektiver
ist, wenn das Gerät
seine Zustandsveränderung
für sich
selbst mitteilt, als wenn der Benutzer den Zustandswert des Geräts jedes
Mal dann abfragt, wenn er den Zustand des Geräts wissen möchte. Da auch ein Problem des
Geräts
oder ein auftretender Fehler gleich bei seinem Auftreten unverzüglich mitgeteilt
werden sollte, ist der Prozess des sofortigen Mitteilens der Zustandsveränderung
beim Eintreten des Ereignisses notwendig.
-
Das
Ereignis, das durch das jeweilige Gerät umgesetzt wird, wird durch
einen Ereigniscode von 1 Byte dargestellt und ist in ein gemeinsames
Ereignis, das sich in allen Geräten
auswirkt, und ein privates Ereignis unterteilt, das sich für jedes
Produkt auswirkt. Als Codeklassifizierung wird eine Bereichsklassifizierung
und keine Feldklassifizierung verwendet, da die Anzahl von Codes,
die später
hinzugefügt
werden können,
für jeden
Term eine andere ist.
-
Das
gemeinsame Ereignis kann weiter in einen Ereignisbereich, der sich
auf die Betätigung
durch den Benutzer bezieht, und ein Fehlerbereichsereignis unterteilt
werden, der allen Geräten
gemeinsam ist. Das Ereignis, das sich auf die Betätigung durch
den Benutzer bezieht, kann eine Tasten- oder Wähleingabe, ein Türöffnungs-/Türschließvorgang,
ein Lasteingang, usw., sein und hat einen Ereigniscodewert von 0x11~0x2F.
Das gemeinsame Ereignis kann ein Türöffnungsvorgang während des
Betriebs, usw., sein und hat einen Ereigniscodewert von 0x30~0x4F.
Das private Ereignis kann in ein Fehlerereignis für jedes
Produkt und ein Statusereignis für
jedes Produkt eingestuft werden. Das Fehlerereignis für jedes
Produkt stellt einen Eigenfehlerzustand oder Problemzustand jedes
Produkts dar und hat einen Ereigniscodewert von 0x70~0xAF. Das Betriebsstatusereignis
ist ein Ereignis, das immer dann eintritt, wenn sich der Status
des Produkts während
des Betriebs des Produkts verändert,
und hat einen Ereigniscodewert von 0xB0~0xFF.
-
Der
Ereigniscode kann in einen essentiellen Ereigniscode, der im Wesentlichen
von allen Geräten
umgesetzt wird (zum Beispiel einen Problemereigniscode) und einen
optionalen Ereigniscode eingestuft werden, der von den Geräten optional
umgesetzt wird. Der essentielle Ereigniscode bewirkt, dass die Zustandsveränderung
als Mitteilungspaket rundgesendet wird, wenn das Ereignis eintritt,
so dass ein anderes Gerät
die Zustandsveränderung überwachen
kann. Dabei ist der verwendete Befehlscode der Mitteilungsbefehl
und hat einen Ereigniscode von 1 Byte und einen Ereigniscodezustandswert
von 4 Bytes als Faktoren. Wenn ein Ereignis in einem Gerät eintritt,
kann es durch einfaches Rundsenden des Mitteilungspakets mitgeteilt
werden, befiehlt aber den Betrieb eines anderen Geräts. Wenn
zum Beispiel der Waschgang einer Waschmaschine zu Ende ist, erfolgt
der Befehl zum Einschalten einer Lampe auf einer Veranda, oder dass
eine Klimaanlage eine Textnachricht anzeigt. Dazu sollte jedes Gerät Information über eine
Adresse, einen Betriebsbefehlscode und Faktoren des kommunikationsgegenständlichen
Geräts,
jedes Mal, wenn der Ereigniscode vorliegt, abspeichern. Da sich
eine solche Information jedoch je nach den Vorlieben der Benutzer
unterscheidet, sollte die Kommunikationsbedingung im jeweiligen
Gerät beim
Eintritt des Ereignisses durch den Netzverwalter bestimmt werden.
Dabei sollte im Falle, dass nicht nur der Befehl zum Betrieb eines
anderen Geräts,
sondern auch zum Rundsenden des Ereignisses erteilt wird, der Benutzer
die Optionen bestimmen. Noch etwas, was bei der Bestimmung der Ereigniskommunikationsbedingung
berücksichtigt
werden sollte, ist ein Zeitintervall zur Bekanntmachung des Ereignisses.
Wenn sich der Temperaturzu stand oder Sensorzustand, bei dem die Ereigniskommunikation
bestimmt wird, schnell verändert,
kann die Leistung des Netzes aufgrund zu vieler Ereigniskommunikationspakete
schlechter werden, und somit ist ein Mindestereigniseintrittsintervall
notwendig. Dementsprechend sollte der Benutzer bei der Bestimmung
der Kommunikationsbedingung für
das eingetretene Ereignis durch den Netzverwalter den Ereigniscode,
das kommunikationsgegenständliche
Gerät,
einen Ereigniseintrittsmindestintervall, eine Mitteilungsnachricht,
usw. bestimmen.
-
Die
Ereigniskommunikationsbedingung wird im nichtflüchtigen Speicher des jeweiligen
Geräts
als eine Ereignisdatei abgespeichert werden, die sich aus einem
in 19 gezeigten Anfangsblock und einem in 20 gezeigten
Hauptteil zusammensetzt. Der Benutzer kann die Ereigniskommunikationsbedingung
durch den Netzverwalter neu bestimmen. Im Falle einer anfänglichen
Bestimmung bestimmt der Benutzer die Ereigniskommunikationsbedingung über einen
Pufferspeichergrößenauslesebefehl
nach einer Bestätigung,
ob die Größe des nichtflüchtigen
Speichers ausreicht. Da auch die Größe des nichtflüchtigen
Speichers begrenzt ist, sollte die Information über eine unnötige Ereigniskommunikationsbedingung
gelöscht
werden. Zu diesem Zweck gibt es eine Nachricht, und der Benutzer
kann unter Verwendung dieser Nachricht (d. h. einen Ereigniscodelöschbefehlscode)
die unnötige
Ereigniskommunikationsbedingung löschen.
-
Um
den Ereigniscode ablaufen zu lassen, werden die auszuführende Gesamtereignisanzahl (total_event_no)
und die Ereigniscodes aus dem Anfangsblock der im nichtflüchtigen
Speicher gespeicherten Ereignisdatei ausgelesen. Wenn der Zustand
der definierten Variablen während
des Betriebs verändert
wird, speichert ein Systemhauptprogramm diese Information im entsprechenden
Speicher. Eine Ereigniscodeausführungsprogrammroutine
entscheidet, ob ausgeführt
werden soll, indem der Systemzustandswert mit dem aus der Ereignisdatei
ausgelesenen Ereigniscode verglichen wird. Um zu verhindern, dass
die Betriebsmittel des Mikrocomputers aufgrund der kontinuierlichen
Ausführung
des Ereigniscodes ständig
in Anspruch genommen werden, wenn die verschiedenen Zustände des
Systems gleichzeitig verändert
werden, führt
die Ereigniscodeausführungsprogrammroutine
immer nur einen Ereigniscode auf einmal aus.
-
Als
Nächstes
wird ein Verfahren zum Kontrollieren verschiedener Arten von Fehlern
erläutert.
-
Der Übertragungsfehler
wird eingestuft in einen Datenbitfehler aufgrund eines Rauschens
der Übertragungsleitungen,
einen Fehler, der durch die verschiedenen Übertragungsfrequenzen verursacht
wird, einen Datenbitfehler aufgrund von Datenkollision, einen Fehler,
der durch die Sendesignaldämpfung
verursacht wird, wenn Impedanzen zwischen den Leitungen und Geräten nicht
abgeglichen sind, und einen Fehler, der durch Übertragen/Empfangen von Daten
verursacht wird, die vom Empfangsgerät nicht verarbeitet werden
können, obwohl
kein Datenbitfehler besteht. Das Rauschen der Übertragungsleitungen erzeugt
einen Rahmenfehler der physikalischen Schicht auf der Empfängerseite,
d. h. einen UART-Rahmenfehler, oder trägt zur Veränderung des Datenwerts bei.
Wenn sich die Übertragungsfrequenzen
der Sende-/Empfangsgeräte
unterscheiden, entsteht der UART-Rahmenfehler meistens auf der Empfangsseite.
Wenn verschiedene Geräte
gleichzeitig senden, entsteht der UART-Rahmenfehler meistens auf
der Empfangsseite. Wenn die Impedanzen zwischen den Leitungen und
Geräten
nicht abgeglichen sind, geht auf der Empfängerseite kein Signal ein.
-
Wenn
der Master das Anfragepaket an den Slave schickt, empfängt der
Slave das Paket und erfasst die definierten Fehler. Wenn der Slave
den Fehler aus den empfangenen Datenbits erfasst, schickt er ein
Antwortpaket an den Master, das den Codewert des erfassten senderseitigen
Fehlers enthält,
wie in 21 gezeigt ist, und der Master
lässt entsprechend
dem Fehlercode die übertragungswiederholungs-
oder Fehlerverarbeitungsfunktion ablaufen.
-
Dabei
besteht der Fehlercode aus 1 Byte und wird in einen gemeinsamen
Fehlercode, der dem Bereich 0x00~0x9F zugeteilt ist, der von allen
Geräten
gemeinsam verwendet wird, und einen Störungscode unterteilt, der dem
Bereich 0xA0~0xFF zugeteilt ist, der von den Geräten unabhängig verwendet wird. Der gemeinsame
Fehlercode gibt Werte des Übertragungsfehlers
an, und der Störungscode
gibt Werte zum Diagnostizieren des Problems der Eigenfunktionen
des Geräts,
wie etwa des Sensors an, die von der Übertragungsfunktion getrennt
sind. Jedes Gerät
verfügt über 96 Codes,
die in Paketfehler, Empfängerfehler,
ungültiger
Befehl, unzulässige
Argumente, unzulässiger
Zugriff und Störungscodes
eingestuft sind. Deren Einzelheiten sind wie folgt.
-
Zuerst
wird der Paketfehler in einen CRC-Fehler des Eingangspakets, 1 Byte-Empfangszeitüberschreitung,
und eine Antwortwartezeitüberschreitung
unterteilt.
-
Der
CRC-Fehler des Eingangspakets entsteht, wenn der CRC-Wert, der im
Empfangspaket sowohl des Masters als auch Slaves enthalten ist,
sich vom berechneten CRC-Wert unterscheidet. Wenn der CRC-Fehler
im Antwortpaket entsteht, das beim Slave eingeht, schickt der Slave
das Antwortpaket einschließlich
des CRC-Fehlerwerts
an den Master. Wenn der Master das Antwortpaket erhalten hat, wird
die erneute Übertragung
des Pakets höchstens
dreimal wiederholt.
-
Der
Fehler 1 Byte-Empfangszeitüberschreitung
entsteht, wenn der Zeitintervall zwischen den empfangenen Bytes
wegen Rauschens oder anderer Gründe
in den Übertragungsleitungen
von 2BTU (d. h. Mindestzeit 3 msec: 9600 bps-Basis) abweicht. Dabei
sollte jedoch auch das Paketlängenfeld
auf der Empfängerseite eingehen.
Wenn der Byte-Zeitintervall vor dem Eingang des Paketlängenfelds
größer wird
als ein vorbestimmter Wert, werden die Empfangsdaten ignoriert.
Wenn der Fehler 1 Byte-Empfangszeitüberschreitung entsteht, stoppt
der Empfänger
den Empfang, füllt
den restlichen Bereich des Paketempfangszwischenspeichers mit 0 auf,
und überträgt das Paket
an die obere Schicht. Im Ergebnis liegt der Fehler im Empfänger vor.
Wenn ein Fehler im Slave aufgrund des Rauschens der Leitungen. entsteht,
wenn der Master das Anfragepaket an den Slave schickt, wird das
Antwortpaket einschließlich
des CRC-Fehlers an den Master übertragen.
Wenn der Master das Antwortpaket normal erhalten hat, wird das Paket
höchstens
dreimal erneut übertragen.
Wenn der Fehler 1 Byte-Empfangszeitüberschreitung beim Master entsteht,
auch wenn der Slave das Anfragepaket normal empfangen hat und ein
normales Antwortpaket übertragen
hat, verschickt der Master das Paket höchstens dreimal erneut. Obwohl
der Fehler Byte-Empfangszeitüberschreitung
sowohl beim Master als auch Slave entstehen kann, ist der Fehlercode
nur zwischen den jewei ligen Kommunikationsschichten notwendig, und
die Information über
den Fehler 1 Byte-Empfangszeitüberschreitung
wird nicht an den Sender weitergegeben. Und zwar ist der Fehler
Byte-Empfangszeitüberschreitung
ein Wert für
den geräteinternen
Prozess und wird zwischen dem Master und Slave nicht übertragen.
Die Zeitgrenze der Empfangszeitüberschreitung
bezieht sich auf die Belegtzustandsprüfung. Da nach der vorliegenden
Erfindung die Übertragung/der
Empfang in der Einheit eines Pakets erfolgt, sollte der Zeitintervall
der Byte-Übertragung
verkürzt
werden, um die Busbelegung während
der durch ein anderes Gerät
durchgeführten
Belegtzustandsprüfung
mitzuteilen. Wenn die Zeitgrenze der Empfangszeitüberschreitung
weitgefasst ist, kann eine Zeitverzögerung während der Übertragung eines Pakets auftreten.
Dabei kann ein anderes Gerät,
das eine Übertragung
versucht, den vorliegenden Zustand während der Belegtzustandsprüfung als
Ruhezustand beurteilen und die Übertragung
sofort beginnen, wodurch eine Datenkollision hervorgerufen wird.
-
Der
Antwortwartezeitüberschreitungsfehler
entsteht, wenn keine Daten eingehen, nachdem der Master das Anfragepaket übertragen
hat. Das heißt,
er entsteht, wenn kein kommunikationsgegenständlicher Slave vorhanden ist.
Die physikalische Schicht des Masters wartet höchstens 2 Sekunden, und wenn
keine Daten eingehen, stellt sie ein Paket her und schickt es an
die Datenübermittlungsschicht,
das einen Antwortwartezeitüberschreitungscode
enthält.
Die Datenübermittlungsschicht
schickt eine Nachricht an die Anwendungsschicht, und somit erkennt
diese, dass das entsprechende Gerät nicht existiert.
-
Als
Nächstes
wird der Empfängerfehler
unterteilt in Speichermangel, Übertragungszurückweisung, Fernsteuerungsablehnung,
Protokollversionsfehlabgleich und Nachrichtenportfehlabgleich.
-
Der
Speichermangelfehler entsteht, wenn der Slave über keinen übrigen Speicher verfügt, um die empfangenen
Daten abzuspeichern, wenn der Master einen Befehlscode an den Slave,
wie etwa einen Speicher-, LCD-, EEPROM-Schreibbefehl, usw. schickt.
-
Der Übertragungszurückweisungsfehler
entsteht, wenn der Slave bevorzugt eine andere Funktion als die Übertragung
durchführen
möchte,
auch wenn er das Anfragepaket normal vom Master erhalten hat. Der Master,
der den Übertragungszurückweisungsfehler
empfangen hat, kann nach mindestens 5 Sekunden (d. h. der Höchstwartezeit
des Masters) eine erneuten Versuch starten.
-
Der
Fernsteuerungsablehnungsfehler entsteht, wenn der Slave eine Steuerbefehlsnachricht
in einem Zustand empfängt,
bei dem keine Fernsteuerung des Slaves möglich ist.
-
Als
Nächstes
wird ein ungültiger
Befehl in einen Befehlscode, der nicht umgesetzt werden kann, und in
Faktorwerte unterteilt, die nicht umgesetzt werden können.
-
Der
Befehlscodefehler, der nicht umgesetzt werden kann, entsteht dann,
wenn der Slave das Anfragepaket normal empfangen hat, dieses aber
einen Befehlscode enthält,
den der Slave nicht umsetzen kann.
-
Der
Faktorwertfehler, der nicht umgesetzt werden kann, entsteht dann,
wenn der Befehlscode, der umgesetzt werden kann, eingeht und die
Faktoren in einem definierten Bereich definiert werden, der Wert
aber vom Gerät
nicht umgesetzt werden kann. Wenn sich zum Beispiel im Falle eines
Einschalt-/Ausschaltbefehls für
einen Mikrowellenherd der Eingabewert auf eine Abzugshaube bezieht,
der Mikrowellenherd aber gar keine Abzugshaube besitzt, entsteht
der Faktorwertfehler, der nicht umgesetzt werden kann.
-
Als
Nächstes
werden die unzulässigen
Argumente in einen Faktoranzahlfehler, der sich von der definierten
Anzahl unterscheidet, und einen Bereichsüberschreitungsfehler unterteilt.
-
Der
Faktoranzahlfehler, der sich von der definierten Anzahl unterscheidet,
entsteht dann, wenn der Slave das Anfragepaket vom Master normal
erhalten hat, die Anzahl der Eingangsfaktoren zum Umsetzen des Befehlscodes
sich aber von der im Nachrichtensatz definierten Anzahl unterscheidet.
Dabei ist die Anzahl der Fakto ren die Anzahl der Bytes. Wenn der
Eingangsfaktor eine Variable ist, die als "int ohne Vorzeichen" definiert ist, wird die Anzahl der
Eingangsfaktoren zu 2, da jeder Faktor aus 2 Bytes besteht.
-
Der
Bereichsüberschreitungsfehler
entsteht dann, wenn der Slave das Paket vom Master normal empfangen
hat, aber der Eingangsfaktorwert zum Umsetzen des Befehlscodes von
einem im Nachrichtensatz definierten Bereich abweicht.
-
Als
Nächstes
entsteht der Fehler unzulässiger
Zugriff, der durch die Erfassung einer untersagten Handlung verursacht
wird, dann, wenn der Slave das Paket vom Master normal empfangen
hat, aber der Eingangsfaktorwert zur Umsetzung des Befehlscodes
einen verbotenen Speicherbereich oder eine Last angibt, deren Steuerung
untersagt ist.
-
Als
Nächstes
wird der Störungscode
erläutert.
-
Außer der
Kommunikation besitzen sämtliche
Geräte
ihre Eigenfunktionen, und irgendwelche Störungen derartiger Funktionen
können
von fern diagnostiziert werden. Wenn die Funktion des Geräts gestört ist, wird
der Störungscode
in das Antwortpaket mit aufgenommen, das an den Master geschickt
werden soll. Wenn beispielsweise festgestellt wird, dass ein Temperatursensor
gestört
ist, wenn der Slave das Antwortpaket mit dem Befehlscode zum Auslesen
des Werts des Temperatursensors empfängt, nimmt der Slave den Störungscodewert
des Temperatursensors zusammen mit 'NAK' in
das Antwortpaket mit auf, um dieses einschließlich des Störungscodes
an den Master zu schicken. Alle Geräte bestimmen den Wert des Störungscodes
unter Nutzung des gemeinsamen Bereichs.
-
Falls
die das Paket bildenden Datenbits gestört sind, d. h. ein Empfängeradressen-,
Absenderadressen-, Sende-/Empfangsadressen- oder Paketlängenfehler
vorliegt, verarbeiten die Ausführungsformen
der vorliegenden Erfindung diese als CRC-Fehler. Die ausführliche Erklärung dafür ist wie
folgt.
-
Zuerst
wird der Empfängeradressenfehler
erläutert.
-
Wenn
ein Fehler bei den Bits des Empfängeradressenfelds
entsteht, empfängt
ein nicht aufgerufenes Gerät
das Paket. Dabei erfasst das Gerät
den CRC-Fehler aufgrund des Fehlers bei den Bits des Empfängeradressenfelds.
-
Wenn
erstens ein Fehlerpaket von einem Master A zu einem Slave A übertragen
wird und ein anderer Slave B das Fehlerpaket erhält, überträgt der Slave B ein Antwortpaket
einschließlich
des CRC-Fehlerwerts an den Master A. Der Master A, der das Antwortpaket
vom Slave B erhalten hat, ignoriert die Absenderadresse und geht
davon aus, dass der ursprünglich
aufgerufene Slave A geantwortet hat, obwohl ein anderes Gerät geantwortet
hat, bei dem es sich nicht um den Slave A handelt. Speziell erachtet
der Master ein Paket, das eingegangen ist, nachdem der Master ein
Paket übertragen
hatte, als das Antwortpaket von dem Gerät, das aufgerufen worden war.
Der Master A, der das Antwortpaket erhalten hat, schickt das Paket
höchstens
dreimal erneut an den Slave A. Wenn zweitens ein anderer Slave B
das Antwortpaket, das an den Master A geschickt wurde, und zwar
vom Slave A, der das Anfragepaket vom Master A erhalten hat, aufgrund
des Fehlers des Empfängeradressenfeld
erhält, überträgt der Slave
B das Antwortpaket einschließlich
des CRC-Fehlers an den Slave A. Falls dabei kein Paketfehler besteht,
kann der Slave A das Antwortpaket aus dem Paketartfeld erkennen
und ignoriert somit das erhaltene Paket. Der Master A wartet höchstens
10 Sekunden lang kontinuierlich auf das Antwortpaket vom Slave A.
Nach dem Verstreichen von 10 Sekunden wird die Kommunikation, die
mit dem vom Master A zum Slave A übertragenen Anfragepaket begann,
beendet, ohne dass durch den Slave irgendein Befehlscode umgesetzt
wird.
-
Als
Nächstes
wird der Absenderadressenfehler erläutert.
-
Wenn
ein Fehler bei den Bits des Absenderadressenfelds entsteht, erhält das Gerät, das durch
den Absender aufgerufen wird, das Paket und erfasst den CRC-Fehler aufgrund des
Fehlers bei den Bits des Absenderadressenfelds. Erstens, falls ein
Fehler im Absenderadressenfeld entsteht, wenn der Master A das Anfragepaket
an den Slave A überträgt, überträgt der Slave
A, der das Paket erhalten hat, das Antwortpaket an das Gerät (d. h.
den Master oder Slave) mit dem Adressenwert im Absenderadressenfeld.
Wenn dieses Antwortpaket ohne Fehler übertragen wird und ein anderer
Slave B das Antwortpaket erhält,
kann der Slave B das Antwortpaket aus dem Paketartfeldwert erkennen
und ignoriert somit das erhaltene Paket. Wenn ein anderer Master
B dieses Antwortpaket erhält,
ignoriert er das erhaltene Paket entsprechend der Regel 1-Paket-Übertragung/1-Paket-Empfang,
da er das Anfragepaket nicht übertragen
hat. Der Master A wartet höchstens
10 Sekunden lang auf das Antwortpaket vom Slave A. Nach dem Verstreichen
von 10 Sekunden setzt der Slave keinerlei Befehlscode um, und die
Kommunikation ist beendet. Bei zweitens handelt es sich um den Fall,
dass der Master A das Anfragepaket normal an den Slave A übertragen
hat und ein Fehler im Absenderadressenfeld des vom Slave A zum Master
A übertragenen
Antwortpakets entstanden ist. Falls in diesem Fall das Antwortpaket
ohne Fehler übertragen
wurde und ein andere Slave Was Antwortpaket erhalten hat, kann der
Slave B das Antwortpaket aus dem Paketartfeldwert erkennen und ignoriert
das erhaltene Paket. Falls ein anderer Master B dieses Antwortpaket
erhalten hat, ignoriert er das erhaltene Paket entsprechend der
Regel 1-Paket-Übertragung/1-Paket-Empfang,
da er das Anfragepaket nicht übertragen
hat. Der Master A wartet höchstens
10 Sekunden lang auf das Antwortpaket vom Slave A. Nach dem Verstreichen
von 10 Sekunden setzt der Slave keinerlei Befehlscode um, und die
Kommunikation ist beendet.
-
Als
Nächstes
wird der Sende-/Empfangsadressenfehler erläutert.
-
Falls
ein Fehler bei den Bits des Empfängeradressenfelds
und des Absenderadressenfelds entsteht, erhält ein anderes Gerät, das durch
den Absender nicht aufgerufen wurde, das Paket, erfasst aber den CRC-Fehler.
In diesem Fall erfolgt die Kommunikation zwischen den Geräten in derselben
Abfolge wie der Empfängeradressenfehler
und der Absenderadressenfehler und wird dann beendet.
-
Zuletzt
wird der Paketlängenfehler
erläutert.
-
Der
Empfänger
baut einen Empfangspaketpufferspeicher auf, indem er die Anzahl
der Bytes verwendet, die dem Wert des Paketlängenfelds entsprechen. Zuerst
war tet der Empfänger,
im Falle dass der Paketlängenfeldwert
größer ist
als der eigentliche Wert, kontinuierlich auf die Daten, obwohl er
das eigentliche Paket erhalten hat. Falls kein weiteres Byte mehr
eingeht und die Empfangsgrenzzeit zwischen Bytes verstrichen ist, liegt
der Zeitüberschreitungsfehler
vor, und der Empfänger
füllt den übrigen Teil
des Empfangspaketpufferspeichers mit bestimmten Daten auf, was dazu
führt,
dass der CRC-Fehler entsteht. Entsprechend überträgt der Master das Paket höchstens
dreimal erneut. Zweitens erfasst der Empfänger den CRC-Fehler auch dann, wenn
das Paketlängenfeld
kleiner ist als der eigentliche Wert.
-
Industrielle Anwendbarkeit
-
Wie
aus der vorstehenden Beschreibung deutlich wird, hat das Netzsteuersystem
nach den Ausführungsformen
der vorliegenden Erfindung die folgenden Wirkungen.
-
Erstens
wird nach den Ausführungsformen
der vorliegenden Erfindung das Netz dadurch aufgebaut, dass ein
Kommunikationssystem von der Art Master/Slave, Einzyklus- und Halbduplexbetrieb
und die serielle Verbindung eines für geringe Leistung ausgelegten,
in Hausgeräten
verwendeten Mikrocomputers mit einem vereinfachten und standardisierten
Protokoll verwendet wird, und somit ein preisgünstiges und optimiertes Netz
für die
Hausgeräte
implementiert werden kann.
-
Da
zweitens nach den Ausführungsformen
der vorliegenden Erfindung die Betriebszustandsveränderung
eines Geräts
unter den Hausgeräten,
die dem Netz zugeschaltet sind, dem Benutzer über ein anderes Gerät mitgeteilt
werden kann, und die Kommunikationsbedingung und das kommunikationsgegenständliche Gerät durch
den Benutzer ausgewählt
werden kann, kann die Benutzerfreundlichkeit maximiert werden.
-
Da
drittens nach den Ausführungsformen
der vorliegenden Erfindung die Stromleitungen als Übertragungsmittel
verwendet werden können,
wird ein Netzanschluss dadurch möglich,
dass einfach nur der Stromstecker des Hausgeräts ohne irgendwelche weitere
Betätigungsmaßnahme in
die Steckdose eingesteckt wird.