DE69029874T2 - Nachrichtenanzeigesystem - Google Patents

Nachrichtenanzeigesystem

Info

Publication number
DE69029874T2
DE69029874T2 DE1990629874 DE69029874T DE69029874T2 DE 69029874 T2 DE69029874 T2 DE 69029874T2 DE 1990629874 DE1990629874 DE 1990629874 DE 69029874 T DE69029874 T DE 69029874T DE 69029874 T2 DE69029874 T2 DE 69029874T2
Authority
DE
Germany
Prior art keywords
module
display
shelf
node
nibble
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE1990629874
Other languages
English (en)
Other versions
DE69029874D1 (de
Inventor
Kent A Fritz
Robert F Garry
Larry A Lincoln
Donald E Pezzolo
James W Pfeiffer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PRICELINK Inc
Original Assignee
PRICELINK Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PRICELINK Inc filed Critical PRICELINK Inc
Publication of DE69029874D1 publication Critical patent/DE69029874D1/de
Application granted granted Critical
Publication of DE69029874T2 publication Critical patent/DE69029874T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • H04M11/02Telephonic communication systems specially adapted for combination with other electrical systems with bell or annunciator systems

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Signal Processing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Cash Registers Or Receiving Machines (AREA)
  • Display Racks (AREA)

Description

  • Diese Erfindung betrifft ein Anzeigemodul, das für die Anzeige von Handelspreisen in einem Geschäft geeignet ist.
  • In Geschäften werden üblicherweise Gegenstände auf Regalen über einem Schild plaziert, das den Preis des Gegenstandes zeigt, und eventuell auch einen Preis pro Einheitsgröße, etwa Gewicht oder Volumen. Um Preise zu ändern, muß ein Angestellter die Gänge des Geschäftes entlanggehen, die alten Preisschilder entfernen, und neue Preisschilder in den Preisschildschlitzen auf den Regalen anbringen. Dieses benötigt Zeit und ist teuer. Außerdem machen Angestellte Fehler, und Preise können nicht schnell geändert werden, um Angebote anzuzeigen, oder dem Wunsch des Managements, Preise an Waren zu ändern, um auflokale Marktbedingungen zu reagieren.
  • Es wurden verschiedene Versuche unternommen, mit diesem Problem umzugehen.
  • WO 83/00251 beschreibt ein computergesteuertes Informationsanzeigesystem, in welchem computerbasierende Information parallel an entfernte Anzeigeeinheiten gegeben wird. Wenn eine Anzeigeeinheit ihre eindeutige Adresse erfaßt, wird die empfangene Information verarbeitet, um eine Anzeige zu steuern.
  • US-A-4 766 295 beschreibt ein elektronisches Preisanzeigesystem, in welchem batteriebetriebene Anzeigeanhänger fernübertragene Infrarotsignale von deckenmontierten Sendeköpfen oder von einer tragbaren elektronischen Steuerung empfangen.
  • Die vorliegende Erfindung stellt ein Anzeigemodul zur Verfügung, das eine Anzeige zur Anzeige von Information umfaßt, optische Einrichtungen zum Erfassen eines Lichtpegels, und Einrichtungen zum Anzeigen von Information auf der Anzeige als Reaktion auf einen vorbestimmten, von den optischen Einrichtungen erfaßten Lichtpegel, gekennzeichnet durch Einrichtungen zum Erfassen einer vorbestimmten Bedingung, und Einrichtungen zur Veranlassung der Anzeige, auf einen Lichtpegel, der einen bestimmten Pegel übersteigt, nur zu reagieren, wenn die vorbestimmte Bedingung aufgetreten ist.
  • Ein Anzeigemodul gemäß der Erfindung kann in einem Informationsanzeigesystem enthalten sein, das eine Nachrichtenübertragungsfähigkeit aufweist, und Empfänger zum Empfangen der Nachrichteninformation, wobei jeder Empfänger mehrere Anzeigemodule antreibt, um die Information anzuzeigen. Die Übertragung kann mittels Breitbandfunk von einem Transceiver vorgenommen werden. Die Information schließt bevorzugt einen UPC-Code und dazugehörige Preisinformation ein, ist jedoch nicht darauf beschränkt. Jeder Transceiver bestätigt die Rundnachrichten, und liefert die Information an die Anzeige, die zu dem UPC in den Speicher gehört. Bevorzugt sind die Transceiver und Anzeigemodule batteriebetrieben und enthalten Stromsparfunktionen.
  • Die Erfindung wird im folgenden anhand von Beispielen unter Bezugnahme auf die begleitenden Zeichnungen weiter beschrieben, welche zeigen:
  • Fig. 1 zeigt ein System einschließlich eines Anzeigemoduls der Erfindung,
  • Fig. 2A und 2B zeigen eine Regalanordnung des Systems,
  • Fig. 3 zeigt das Regalblockdiagramm,
  • Fig. 4 zeigt einen Schaltplan des Anzeigemoduls,
  • Fig. 5A bis 5O sind Flußdiagramme, die den Betrieb des Anzeigemoduls zeigen,
  • Fig. 6A bis 6L zeigen das Busformat,
  • Fig. 7 zeigt den Eingabe/Ausgabe-Speicherplan des Anzeigemoduls,
  • Fig. 8 ist ein Zeitdiagramm für die Digitalplatine des Regalknotens,
  • Fig. 9A bis 9C sind Schaltpläne für den Regalknoten,
  • Fig. 10 ist der Eingabe/Ausgabeplan für die Regalknotensteuerung,
  • Fig. 11A zeigt die Deckenknotenfunktionen,
  • Fig. 11B ist ein Blockdiagramm des Deckenknoten- Transceivers,
  • Fig. 12A und 12B sind Zeitdiagramme für den Deckenknoten,
  • Fig. 13A bis 13G sind Schaltpläne des Deckenknotens,
  • Fig. 14 zeigt schematisch einen intelligenten Lesekopf zur Verwendung mit dem Anzeigemodul, und
  • Fig. 15A und 15B zeigen Zeitdiagramme für den intelligenten Lesekopf.
  • Das Pricelink-System (siehe Fig. 1) erfüllt die Aufgabe, genaue Preisinformation an dem Regal unter Verwendung von Computern, Mikrocontrollern und Breitband-HF- Kommunikationstechnik bei 915 MHz aufrecht zu halten.
  • UPC CODE
  • Der Hauptschlüssel für Daten in dem System ist der UPC Code. Die gesamte Information in den verschiedenen Teilen des Systems betreffend ein Produkt wird mittels des UPC Codes gehalten, und jede neue Information wird mittels des UPC Codes angenommen.
  • Anzeigemodul
  • Die für die Öffentlichkeit sichtbarste Komponente des Systems ist das Anzeigemodul 10. Das Anzeigemodul ist um einen Mikrocontroller herum konstruiert, der eine UPC-Code- Zuweisung akzeptiert, für diesen UPC-Code relevante Daten akzeptiert, und diese Information auf einer Flüssigkristallanzeige (LCD) 10G anzeigt.
  • Die Erstellung der UPC-Code-Zuweisung wird unter Verwendung eines Strichcodelesers 14 vorgenommen, der an einem speziell als in der Hand tragbares Datenendgerät programmierten, tragbaren Computer 16 angebracht ist. Das Produkt wird mit dem Lesekopf gelesen, um den UPC-Code aufzunehmen, oder der UPC-Code wird über Tasten eingegeben, und dann wird derselbe Lesekopf 14 in dem optischen "Port" 10F auf dem Anzeigemodul 10 plaziert. Sobald der UPC-Code an das Anzeigemodul 10 übertragen ist, fordert das Anzeigemodul eine Zuweisung von der Modulsteuerung an. Diese Zuweisung enthält genug Information, um dieses Anzeigemodul von allen anderen Anzeigemodulen einschließlich anderer Anzeigemodule mit demselben UPC-Code zu unterscheiden. Somit wird die Möglichkeit berücksichtigt, für dasselbe Produkt eine normale Regalstelle, eine spezielle Endkappenanzeige, und eine Anzeige im kalten Abschnitt zu haben.
  • Jedes Anzeigemodul empfängt zuerst vier Bilder mit jeweils 81 Bit, und empfängt dann regelmäßig Aktualisierungen dieser Bilder. Wenn die Auffrischung nicht rechtzeitig kommt (etwa 10 bis 20 Stunden), nimmt das Anzeigemodul an, daß es die Verbindung verloren hat, und daß seine Anzeige falsch sein kann. Für eine Reaktion auf die Möglichkeit, falsche Information anzuzeigen, ist, nichts anzuzeigen, oder anders zu reagieren, bis die Verbindung wieder hergestellt ist.
  • Die beiden Bilder enthalten die normale Anzeige für den Gegenstand. Jedes Bit in dem ersten Bild wird in ein Segment auf der LCD-Anzeige für eine Sekunde umgewandelt, dann wird jedes Bit in dem zweiten Bild in ein Seument auf der LCD- Anzeige für eine Sekunde umgewandelt. Dieser Vorgang wiederholt sich in solcher Weie, daß irgendwelche Unterschiede in den Bildern als blinkende Segmente in der Anzeige in Erscheinung treten.
  • Das dritte Bild enthält die Information, die angezeigt wird, wenn die optische "Taste" von dem Konsumenten gedrückt wird. Das Drücken der "Taste" hindert einfach das Licht des Raumes daran, in das Anzeigemodul einzudringen.
  • Das letzte Bild enthält Information für das Geschäftspersonal. Sie kann durch Plazieren des optischen Strichcodelesers 14 in dem optischen "Port" 10F eingesehen werden. Zur selben Zeit liest der Lesekopf den UPC-Code des Produkts, das das Anzeigemodul darstellt.
  • Regalschiene
  • Die Anzeigemodule werden auf eine extrudierte Schiene 30 geklemmt (siehe die Explosionsdarstellung in Fig. 2A), die so konstruiert ist, daß sie an der Vorderseite des eher standardmäßigen Regals 31 befestigt ist (siehe Fig. 2B für eine Darstellung des Zusammenbaus), das beispielsweise in Gemüseläden gefunden wird. Die Konstruktion der Schiene 30 sorgt für Schutz von dem Kasten und vor Kollisionen der Einkaufswagen, die während des normalen Einkaufens und bei Nachfüllvorgängen auftreten. Schienenverlängerungen 30A und 30B erstrecken sich über die Vorderseite des Anzeigemoduls 10 hinaus, um diesen Schutz zu bieten. Das Anzeigemodul 10 wird auf der Schiene 30 mittels federbelasteter Klemmen 10A und 10B verriegelt. Die Klemmen werden mittels Federdrähten 10C und 10D gegen die Schiene 30 gedrückt. Um das Anzeigemodul 10 von der Schiene zu entfernen, müssen vier Federdrähte 10C, 10D (zwei auf der abgewandten Seite sind nicht gezeigt) gleichzeitig zusammengedrückt werden. Um alle vier Federdrähte 10C, 10D zusammenzudrücken, und das Anzeigemodul zu entfernen, ist eih spezielles Entfernungswerkzeug vorgesehen. Diese Klemmen 10A, 10B und Federdrähte 10C, 10D begrenzen Vandalismus in der Form gelegentlichen Entfernens oder Bewegens des Anzeigemoduls (d.h., "Modul" 10). Ein extrudierter Unterlegring 32 aus Neopren paßt zwischen das Anzeigemodul 10 und die Schiene 30, wie gezeigt. Die Schiene 30 stellt ebenfalls die vier elektrischen Leitungen 32 zwischen allen Anzeigemodulen 10 auf einem Regal und dem Regalknoten 38 zur Verfügung (siehe Fig. 3).
  • In einem Ausführungsbeispiel sind viele Anzeigemodule, die mit einem Regalknoten verbunden sind, auf verschiedenen Regal ebenen angeordnet.
  • Regalknoten
  • Der Regalknoten 38 (siehe Fig. 3) enthält die Schnittstelle zwischen der Regalschiene der Anzeigemodule 10 und dem Decken-Transceiver 40 (siehe Fig. 1). Die Batterien 34 (siehe Fig. 3) für alle Anzeigemodule und den Regalknoten befinden sich im Regalknotengehäuse. Die Batterieverbindung zu den Anzeigemodulen wird unter Verwendung von zweien der elektrischen Schaltkreise 32 der Regalschiene vorgenommen. Der Regalknoten liefert ebenso den Takt für die Anzeigemodule über einen weiteren dieser elektrischen Schaltkreise. Die letzte Leitung wird für Datenaustausch verwendet. Bevorzugt ist der Regalknoten so konstruiert, daß der Kommunikationsabschnitt von dem Logikschaltungsabschnitt lösbar ist.
  • Der Regalknoten 38 und der Decken-Transceiver 40 (siehe Fig. 1) kommunizieren im Band 902 MHz bis 928 MHz unter Verwendung von Breitbandtechnik (spread spectrum). Im wesentlichen werden die zu sendenden Daten in eine viel längere Nachricht codiert, die mit viel höherer Bitrate übertragen wird. Wenn die meisten Bits korrekt übertragen werden, kann die Nachricht von einem Empfänger ohne Fehler rekonstruiert werden, der den Bitstrom zurück in die ursprünglichen Daten decodiert. Das gewählte Band ist relativ ruhig, weil dieses Band erst seit kurzem für kostengünstige Anwendungen genutzt wird. Das verwendete Erfassungsschema (FSK) ist relativ unempfindlich gegenüber Rauschen mit kleinerer Amplitude als das gewünschte Signal. Das ist analog zu AM-Funkstationen, die gleichzeitig hereinkommen, mit FM-Stationen, die bis zu dem Punkt sauber empfangen werden, an dem der Sender zu weit weg ist, und der Empfang endet. Das bedeutet, daß ein Geschäft in der Nachbarschaft wahrscheinlich nicht von den Verbindungen gestört wird. Außerdem hat das benachbarte Geschäft wahrscheinlich eine andere Codestruktur, so daß die Information nicht irrtümlich verwendet werden kann.
  • Das Kommunikationsprotokoll wurde so definiert, daß die Lebensdauer der Batterie am Regal maximal wird, während die Wahrscheinlichkeit, daß falsche Information angezeigt wird, minimiert wird. Das Ergebnis dieses Protokolls ist die Fähigkeit, das folgende zu tun:
  • Akzeptieren eines neuen Moduls oder neuen UPC-Codes für ein Modul in zwei Sekunden oder weniger.
  • Neues Laden von Preisen in 150 Module in nicht mehr als 10 Minuten. Weil die Regalknoten den meisten Teil der Zeit schlafen, um Batterieleistung zu sparen, kann es einige Sekunden oder, im schlechtesten Fall 5 Minuten, dauern, bis die Regalknoten aufwachen und nach Anweisungen betreffend eine bevorstehende Übertragung zu suchen. Sobald diese Kommunikation beginnt, können 150 Module in jeder folgenden 5-Minuten-Periode neu programmiert werden.
  • Aufgewacht, insgesamt 20000 Anzeigemodule Geschäft in einer halben Stunde. Diese Fähigkeit wird benötigt, wenn die Spannungsversorgung des Transmitters für mehr als vier Stunden ausfällt.
  • Es ist ein Modus vorgesehen, der auf Kosten der Regalknotenbatterielebensdauer eine schnelle Reaktion ermöglicht. Sobald die erste 5-Minuten-Umwandlung in diesem Modus aufgetreten ist, können Anderungen bei irgendeinem Modul nahezu sofort vorgenommen werden.
  • Decken-Transceiver
  • Diese Einheit 40 (siehe Fig. 1) ist bevorzugt in der Nähe des Zentrums des Geschäfts angebracht, oberhalb der Einkaufszone. Pro Geschäft ist bevorzugt einer vorgesehen. Er ist mit dem (nicht gezeigten) Modulschnittstellenkasten mittels eines Kabels verbunden. Alle Signale sind Niederspannungssignale, können jedoch in einem Kanal geführt werden. Der Decken- Transceiver 40 enthält das 915 MHz Kommunikationsgerät, um mit den Regalknoten zu kommunizieren.
  • Modulschnittstellenkasten
  • Dieser Kasten birgt die letzte elektrische und die logische Verbindung, um die Modulsteuerung mit den Datenmodulen zu verbinden.
  • Modulsteuerung (auch Datenmanager 42 genannt)
  • Dieser Computer (auch "Datenmanager" genannt) führt eine Anzahl von Echtzeitberechnungsfunktionen durch:
  • Konsolen-Anfragen und Eingaben annehmen,
  • Verbindungen zwischen der Modulsteuerung 42 und POS- Endgerät 44 verwalten, Kommunikations-Interrupts des POS-Endgeräts 44 bedienen,
  • Verbindungen zwischen der Modulsteuerung 42 und dem Host-Computer 46 verwalten, Kommunikations-Interrupts des Host-Computers 46 bedienen,
  • Kommunikationen des POS-Endgerätes 44 und des Host- Computers 46 in Aktionen umsetzen,
  • Aktualisieren von Gegenstandsdateiladekommunikations- Statistiken
  • Übersetzen der Gegenstandsdatei in Bilddateien, Verwalten von Bilddateiübertragungen an Anzeigemodul Service-Übertragungs-Interrupts
  • POS Steuerung und Host Computer Schnittstelle
  • Dieses varriert abhängig von dem gewählten, bestimmten POS- System und den gewählten Optionen
  • Datachecker
  • In einem Ausführungsbeispiel verwendet die vorliegende Erfindung ein PC-basierendes Schnittstellenprogramm, das kommerziell unter dem Namen "POSilink" von Datachecker vertrieben wird. Ein Schnittstellencomputer (ein PC, d.h. ein Personal Computer), der unter diesen und anderen Programmen läuft, überwacht sowohl seine Konsole als auch die serielle Verbindung zur Modulsteuerung 42.
  • Als regelmäßige Grundlage fordert die Modulsteuerung 42 eine Kopie von bestimmten Aufzeichnungen von der EXCP-Datei an, die alle Änderungen enthält, die die POS-Steuerung (d.h., die Geschäftssteuerung 50) bestätigt hat, seit sie das letztemal von dem Host-Computer 46 gelöscht wurde (Löschen tritt möglicherweise zweimal pro Woche auf). Die erneute Übertragung dieser Daten an die Modulsteuerung 42 erlaubt ihr, ihre Information zu korrigieren, um aktualisiert zu bleiben.
  • Weniger häufig, wahrscheinlich einmal pro Woche, möglicherweise direkt, nachdem der Host-Computer 46 seine Aktualisierungen vorgenommen hat, fordert die Modulsteuerung 42 eine vollständige Kopie bestimmter Felder der Gegenstandsdatei der POS-Steuerung 50 an. Diese wird mit der Pricelink-Gegenstandsdatei verglichen, um zu verifizieren, daß keine unbemerkten Anderungen aufgetreten sind, und korrigiert sie, bevor sie länger existieren. Sobald das System vollständig in Betrieb ist, wird erwartet, daß keine Differenzen bemerkt werden.
  • IBM 3270 Emulator
  • Es ist eine Anzahl von Karten/Software Kombinationen kommerziell erhältlich, um einem Personal Computer (PC) zu ermöglichen, auf Mainframe-Dateien zuzugreifen. Sobald der PC die Dateien hat, ist die Übertragung über eine Standardmodemverbindung an einen anderen PC in dem Geschäft kein Problem. Der PC in dem Geschäft ist die Modulsteuerung oder der Schnittstellencomputer. Er macht die indirekt von dem Host-Computer empfangene Information für die Modulsteuerung verfügbar, um betimmte Gebiete in der Pricelink-Gegenstandsdatei zu warten: Meßeinheiten, Einheit- Preis-Divisor, Angebotsdaten, Preis wenn Angebot, Coupondaten.
  • In einem Ausführungsbeispiel ist ebenflalls ein Gateway- Computer 54 vorgesehen, um die POS-Steuerung 50 und den Host- Computer 46 mit dem Datenverwaltungscomputer 42 zu verbinden.
  • Typische Systemkonfiguration: Eine Installation ist wie folgt konfiguriert:
  • 1 Modulsteuerung
  • 1 Modulschnittstellenkasten
  • 1 Decken-Transceiver
  • 3333 Regalknoten
  • 3333 Regalschienen
  • 20000 Anzeigemodule bei 6 pro Regalschiene
  • 1 Schnittstellencomputer
  • Posilink Software von Datachecker
  • pro 3270 IBM 3270 Emulator / PC
  • Anzeigemodul
  • Das PriceLink-System gemäß der Erfindung schließt eine zentrale Steuerung und eine große Anzahl von Anzeigen ein. Die Steuerung, genannt Datenmanager, sendet Anzeigeinformation über einen seriellen Bus an die einzelnen Anzeigemodule. Die Anzeigemodule bestätigen jede Nachricht und erlauben der Verwaltung, die Übertragungen zu verifizieren.
  • Das System ist insbesondere zur Verwendung in Gemüseläden oder ähnlichen Einzelhandelanwendungen geeignet, wobei jedes Anzeigemodul ein Preisschild auf dem Regal ersetzt. Womit es jedes Modul mit einem Produkt assoziiert, und die Module sind mit Schildern versehen, die das Produkt für den Konsumenten beschreiben.
  • Das System in einem Ausführungsbeispiel erfordert, daß jedes Produkt einen UPC hat (Universal Product Code). Das ist die Art von Strichcode, die heutzutage in Gemüseläden weit verbreitet verwendet wird. Der UPC des Produkts wird die "Adresse" des Moduls auf dem seriellen Bus. Weil einige Produkte an vielen Stellen im Geschäft ausgestellt sind, wird dem UPC eine Ziffer (1 bis 9), Frequenznummer genannt, angehängt, um die vollständige Adresse eines Moduls zu bilden. Dieses erlaubt dem Manager, Schreibvorgänge an jedes Modul für eingegebenes Produkt zu verifizieren.
  • Das oben beschriebene Anzeigemodul schließt einen optischen Port mit einem Lichtsensor und einem Lichtemitter ein. Dieser Port hat zwei Verwendungen: als Schnittstelle zu optischen "Leseköpfen" (Strichcodeleser), und als optische "Taste", die der Kunde benutzen kann, um eine abwechselnde Anzeige hervorzurufen.
  • Grundlegende Anzeigemodulfunktionen
  • Das Modul kann vier 80-Segmentanzeigen speichern (d.h. Bilder, wie oben beschrieben) (das 81-ste Segment ist nicht benutzt). Jeder Block von Anzeigedaten wird Quad genannt und hat vier Anzeigemoden:
  • Quad 0: Normale Anzeige
  • Quad 1: Blinkende Anzeige
  • Quad 2: Benutzerzugängliche Anzeige
  • Quad 3: Anzeige zur Geschäftsverwendung
  • Während des Normalbetriebs wechselt die Anzeige zwischen der Normalanzeige und der blinkenden Anzeige ab. Wenn ein Segment in der normalen Anzeige an ist, und aus in der blinkenden Anzeige, blinkt das Segment mit ungefähr 1/2 Hz. Das heißt, die Anzeige ändert sich ungefähr einmal pro Sekunde.
  • Der Kunde kann von dem Modul durch Blockieren des optischen Ports mit einem Finger benutzerzugängliche Inrormation abfragen, etwa Einheitspreisinformation oder Gesundheits- Diätinformation. Das Modul erfaßt die Änderung des Lichtpegels und schaltet in die benutzerzugängliche Anzeige um. Wenn der Finger weggenommen wird, verzögert das Modul für 2,8 Sekunden und stellt dann die normale Anzeige wieder her.
  • Die vierte Anzeige wird von Geschäftspersonal verwendet. Wenn ein Strichcodeleser erfaßt wird (durch die Gegenwart von hellem Licht an dem Port), wird die Bestellmodus-Anzeige aufgerufen. Diese Anzeige gibt Nachladeinformation für das Produkt.
  • Nach dem Wechsel in die Bestellmodusanzeige sendet das Modul seinen gegenwärtigen UPC an den Lesekopf durch Ein- und Ausschalten einer LED in dem optischen Port mit einem Muster, das das Abtasten eines Strichcodes simuliert.
  • Herkömmliche Strichcodeleser benutzen eine LED in der Spitze, um den Strichcode zu beleuchten. Das Pricelinksystem schließt in einem Ausführungsbeispiel einen speziellen Lese kopf ein (der an einem handhaltbaren Datenendgerät oder Computer befestigt ist), der diese LED verwenden kann, Information an die Anzeigemodule zu senden. Nach der Erfassung des Lesekopfes und Aussenden seines Strichcodes, versucht das Modul einen "Handshake" mit dem Lesekopf. Wenn dieser Handshake erfolgreich ist, akzeptiert das Modul einen neuen UPC von dem Lesekopf. Somit wird den Modulen ein UPC-Code gegeben.
  • Elektronik der Anzeigemodule
  • Die Steuerung in dem Anzeigemodul ist in diesem Ausführungsbeispiel ein 4 Bit Mikrocontroller Sanyo 5733, mit 2048 Byte Programm-ROM und 128 Nibbles RAM. Der 5733 schließt eine LCD-Schnittstelle ein, die eine 81-Segmentanzeige unterstützt. Die geplante Taktfrequenz ist 54,536 kHz
  • Das Anzeigemodul wird in ein Spezialregal eingesteckt, das vier Drähte enthält. Fig. 3 zeigt ein Blockdiagramm des Regals. Zwei der Drähte in dem Regalbus verteilen Strom an die Anzeigemodule, der dritte verteilt einen gemeinsamen Takt an die Anzeigemodule, und der vierte Draht wird für bidirektionale serielle Kommunikation verwendet.
  • Die Schaltung des Moduls besteht aus vier logischen Blöcken:
  • 1) Anzeige
  • 2) Serielle Bus-Schnittstelle
  • 3) Optische Port-Schnittstelle
  • 4) Erfassungschaltkreis für leere Batterie
  • Es wird auf Fig. 4 verwiesen für einen grundlegenden Schaltplan des Anzeigemoduls.
  • Anzeige
  • Der Sanyo 5733 Controller enthält alle Schaltkreise, die für die Anzeige erforderlich sind. Es gibt 27 Segmentleitungen und 3 Rückebenenleitungen. Jedes Segment arbeitet mit einem Tastverhältnis von 33 %. Dieses dreifache Multiplexen ermöglicht, daß bis zu 81 Segmente gesteuert werden. Das letzte Segment (die Kreuzung der Segmentleitung 27 und der gemeinsamen Leitung 3) wird in diesem Ausführungsbeispiel nicht benutzt. Das Modul verarbeitet die Anzeigeinformation nicht - es gibt keine codierten Felder. Jeder Quad enthält 80 Bits, jedes Bit steuert ein Segment.
  • Serielle Bus-Schnittstelle
  • Das Modul überwacht den Kommunikationsbus mit einem einfachen Eingangsport. Der Bus wird von dem Transceiver heruntergezogen, so daß er im Tristate-Zustand niedrig ist. Das Modul kann Information auf dem Bus mit einem Hochziehtransistor plazieren.
  • Optische Port-Schnittstelle
  • Es wird ein Phototransistor verwendet, um Licht an dem optischen Port (d.h., der Lesekopfschnittstelle) zu erfassen. Der Schaltkreis weist zwei Bereiche auf, die ihm ermöglichen, drei Lichtpegel zu erfassen. In dem empfindlichsten Bereich (Bereich 0) wird der optische Port als frei angesehen, wenn der Schaltkreis Licht erfaßt (es wird normales Umgebungslicht erfaßt). Wenn der Port dunkel ist, weiss das Modul, daß ein Kunde den Port mit einem Finger blockiert.
  • Im weniger empfindlichen Bereich (Bereich 1) muß es ein Lesekopf sein, falls Licht erfaßt wird (oder eine ungewöhnlich helle Lichtquelle außer einem Lesekopf, wie im folgenden beschrieben wird). Der Schaltkreis wird normalerweise im Bereich 0 belassen, weil er weniger Strom zieht. Die Impedanzpegel, die für diese Funktion erforderlich sind, müssen noch bestimmt werden.
  • Das Modul sendet einen Strichcode aus und kommuniziert mit einem "intelligenten Lesekopf" über eine LED. Ein intelligenter Lesekopf ist ein Lesekopf, der in der Lage ist, mit dem Modul einen Handshake durchzuführen, und ihm einen neuen UPC zu geben. Ein "dummer" Lesekopf (d.h., ein kommerziell erhältlicher Standard-Lesekopf) ist lediglich in der Lage, den UPC des Moduls zu lesen.
  • Erfassungsschaltkreis für leere Batterie
  • In einem Ausführungsbeispiel ist zur Erfassung einer leeren Batterie ein Schaltkreis geringer Funktionalität in den Modulen, und ein Schlatkreis höherer Funktionalität in dem Regalknoten-Transceiver. Der Transceiver erfaßt die leere Batterie und senkt den Versorgungspegel an die Module ab, was alle Moduldetektoren auslesen würde.
  • Alternativ befindet sich ein weiterer Draht in dem Regal. Dieser würde dem Transceiver ermöglichen, den Modulen direkt den Zustand der Batterie anzuzeigen, was einige Komponenten sowohl in den Modulen als auch in dem Transceiver spart.
  • Die Versorgungsleitung kann ebenfalls als die "HF Antenne" dienen. Die Module filtern dieses aus, und der Schaltkreis für leere Batterie weist HF-Reste ab. Ebenfalls ist ein Schaltkreis zum zeitweiligen Bereitstellen von Strom an jeder Anzeige vorgesehen, wenn eine Batterie aus dem dazugehörigen Regalknoten entfernt wird. Eine Verriegelung verhindert die Entfernung der Batterie, wenn die zeitweilige Stromversorgung nicht angeschlossen ist.
  • Allgemeiner Betrieb des Anzeigemoduls
  • Das Anzeigemodul empfängt Strom, wenn es in dem Regal installiert wird, insbesondere wenn es einem vorhandenen Regal hinzugefügt wird (wenn das gesamte Regal neu ist, könnten die Module zuerst eingesteckt werden, und dann die Batterien hinzugefügt werden, wenn dieses Erleichterungen bedeutet.)
  • Die folgende Erörterung betrifft den Betrieb des Anzeigemoduis, bevor es "in dem System" ist - wenn das Anzeigemodul zuerst eingeschaltet wird, und der Datenmanager nicht weiß, daß es existiert. Das Flußdiagramm in den Fig. 5A bis 5O beschreibt diesen Vorgang.
  • Eintritt in das System
  • Die Anzeige 10G des Anzeigemoduls (siehe Fig. 1) ist zuerst leer. Der Installierer "liest" das Produkt mit einem Lesekopf (oder das Strichcode-Symbol auf dem Klebeschild auf dem Modul), um den UPC in den intelligeten Lesekopf 14 zu laden, und steckt dann den Lesekopf 14 in den optischen Port 10F des Moduls (d.h., Anzeigemodul) und drüuckt die "programm"-Taste auf dem intelligenten Lesekopf-Endgerät 16. Der intelligente Lesekopf führt mit dem Modul einen Handshake durch und lädt dann das Modul mit dem UPC.
  • Das Modul ist nun in dem Modus "Anforderung anhängig", so daß es weiß, daß es eine Nachricht an den Datenmanager 42 senden muß. Das Bus-Protokoll bietet ein Fenster für solche eine Nachricht in jedem Zyklus, und das Modul findet dieses Fenster und plaziert die Anfrage darin. Die Anfragenachricht ist einfach der neue UPC, den der Lesekopf dem Modul gegeben hat.
  • Wenn der Bus nicht aktiv und niedrig ist, plaziert das Modul seine Anforderungsnachricht auf dem offenen Bus. Der Datenmanager ist für das Erfassen der Nachricht verantwortlich.
  • Sobald es das Modul schafft, die Anforderungsnachricht auf den Bus zu legen, tritt es in den Zustand "Zuweisung anhängig" ein - es weiß, daß der Datenmanager ihm eine Sequenzzuweisung schuldet. Wenn die Zuweisung nicht innerhalb 95 Sekunden auftritt, führt das Modul jedoch einen Selbst- Reset durch.
  • Wenn zwei Module ihre Anforderungen zufällig in demselben Fenster plazieren, weiß keines von ihnen, daß es ein Problem gibt. Jedoch wird die Nachricht zweifellos zerstückelt, und der Datenmanager ignoriert sie. (Die Nachricht schließt eine zweistellige Prüfsumme ein.) Beide Module setzen sich selbst innerhalb von 95 Sekunden zurück, falls der Installierer mit dem Lesekopf sie nicht vorher neu einliest.
  • Der Datenmanager muß die Anforderungsnachricht sehen und dann auf die Festplatte zugreifen, um herauszufinden, wie viele andere Module mit diesem selben UPC-Code im System sind. Das Maximum ist neun. Falls weniger als neun vorhanden sind, fügt der Datenmanager das neue Modul der Liste hinzu und weist eine "Sequenznummer" für das neue Modul zu. Der Datenmanager muß ebenfalls die 80 Bit Quad 0 Anzeigedaten für diesen UPC- Code wiedergewinnen
  • Der Datenmanager muß nun diese neue Sequenznummer dem Anzeigemodul zur Verfügung stellen. Dieses geschieht dadurch, daß eine Nachricht an den neuen UPC-Code mit einer Sequenznummer von Null gesendet wird. Das Anzeigemodul, das auf die Zuweisung wartet, sucht nach dieser Nachricht. In die Nachricht eingeschlossen ist ein Nibbel, das normalerweise eine "Quad"-Nummer hält, jedoch wird dieses Feld benutzt, während einer Sequenzzuweisung die neue Sequenznummer an das Anzeigemodul zu leiten. Während einer Sequenzzuzweisung ist das Quad implizit 0, was bedeutet, daß das Datenfeld die normale Preisanzeige enthält, Quad 0.
  • Das Anzeigemodul nimmt die Preisdaten auf und plaziert sie in der Anzeige, so daß der Installierer weiß, daß die Installation des Anzeigemoduls beendet ist. Ziel ist es, daß diese Rückkopplung innerhalb einer oder zweier Sekunden auftritt, nachdem der Lesekopf das Anzeigemodul programmiert.
  • Unmittelbar der Sequenzzuweisung folgend, hat das Anzeigemodul nur eine normale Preisanzeige. Um das Anzeigemodul vollständig funktional zu machen, muß der Datenmanager ihm die anderen drei Anzeigen senden.
  • Verletzbarkeit
  • Wenn der Installierer mit dem Lesekopf das Modul viele Male neu programmiert, gehen dem Datenmanager für diesen UPC-Code die Sequenznummern aus, und er denkt, daß es neun Module gibt. Wenn es Zeit wird, Information zu diesem Code zu senden, versucht er wiederholt, mit jedem dieser nicht existenten Module zu sprechen. Irgendwann schreibt er sie ab (vielleicht eine Woche später), jedoch wird bis dahin viel Zeit verschwendet. Außerdem können keine weiteren Module mit diesem UPC dem System hinzugefügt werden, bis die ungültigen Zuweisungen gelöscht sind.
  • Der Datenmanager sichert das System gegenüber diesem Mißbrauch dadurch, daß aufeinander folgende Zuweisungen zu einem gegebenen Code nicht zugelassen werden, wenn sie zu schnell kommen.
  • Einschalten des Anzeigemoduls
  • Das Anzeigemodul hat keine "Rücksetztaste" - das Rücksetzen bei Einschalten des Sanyo Controllers muß korrekt funktionieren, oder die Software fällt aus.
  • Die Software beginnt die Ausführung an Stelle 0. Zuerst setzt das Modul seinen UPC auf 999999-999999, was ein fehlerhafter Code ist, weil die letzte Ziffer eine Prüfziffer ist und 3 sein sollte. Dieses hindert ein nicht programmiertes Modul daran, auf irgendeine legitime Adresse auf dem Bus zu antworten. Jedoch wird ein dummer Lesekopflediglich einen Ton erzueugen, falls er versucht, ein nicht programmiertes Modul zu lesen, weil die Prüfziffer falsch ist.
  • Obwohl die Adresse "alles Neunen" über den Bus gesendet wird, akzeptiert das Anzeigemodul die Daten nicht, weil es realisiert, daß die Prüfziffer seines eigenen Codes falsch ist, und wird sich selbst zurücksetzen. Diese Prüfung wird nur vorgenommen, wenn das Modul sich darauf vorbereitet, Daten zu akzeptieren, nachdem seine Adresse auf dem Bus erkannt wird.
  • "Waisen"-Zähler
  • Ein Geschäft mag wünschen, daß alle Anzeigemodule in dem Geschäft mit neuer Anzeigeinformation alle acht Stunden oder ähnlich aktualisiert werden. Ein diesbezügliches Merkmal verlangt von den Modulen, daß sie ihre Anzeige ausschalten, wenn sie die Aktualisierung nicht erhalten. Dieses Merkmal wird von dem "Waisen"-Zähler unterstützt - ein 20 Bit Echtzeitzähler, der jedesmal inkrementiert wird, wenn das Modul aufwacht (93,9 ms Periode), oder an jeder Adresse auf dem Bus (86,7 ms Periode). Wenn der Zähler jemals einen Übertrag in Bit 19 überträgt, ist das Modul ein "Waise". Dieses resultiert in einem "Timeout" nach 12,6 bis 13,7 Stunden, abhängig davon, wie oft der Bus aktiv ist.
  • Der Waisen-Zähler wird jedesmal rückgesetzt, wenn das Modul seine Adresse auf dem Bus erfaßt (wenn alle Adreßprüfungen durchgehen).
  • Ein verwaistes Modul schaltet seine Anzeige ab, behält jedoch seinen UPC. Es nimmt den normalen Betrieb auf, sobald der Datenmanager ihm eine Nachricht sendet.
  • Ergebnis der Aktualisierung
  • Das Modul hält vier Flags, die die Gültigkeit der vier internen RAM-Puffer spezifizieren, die die vier Anzeigen enthalten. Wenn das Modul beispielsweise eine Sequenzzuweisung empfängt, hat es zuerst nur die normale Preisanzeige - es darf nicht abwechseln zwischen der normalen Anzeige (Quad 0) und der Blinkanzeige (Quad 1), weil der Blinkpuffer keine gültige Information enthält.
  • Wenn es in derselben Weise gewünscht ist, daß das Modul die Anfrage eines Kunden nach einer Einheitspreisanzeige (Quad 2) ignoriert, falls es keine anzuzeigende Einheitspreisanzeige gibt, und wenn ein Lesekopf präsentiert wird, und es keine gültige Bestellmodusinformation gibt, schaltet das System einfach alle Segmente in der Anzeige an.
  • Jede Aktualisierung beeinflußt diese "anzeige gültig" Bits wie folgt. Wenn die Anzeige sofort beeinflußt wird, wird dieses ebenfalls vermerkt.
  • Quad 0 aktualisiert, keine Fehler erfaßt:
  • Quad 0 wird in der Anzeige plaziert.
  • Quad 0 ist gültig. Quad 1 und 2 sind ungültig.
  • Quad 3 bleibt gültig, wenn es vor der Aktualisierung gültig war.
  • Quad 0 aktualisiert, Fehler erfaßt:
  • Anzeige wird abgeschaltet.
  • Quad 0, 1 und 2 sind ungültig.
  • Quad 3 bleibt gültig, wenn es vor der Aktualisierung gültig war.
  • Quad 1 Aktualisiert, Keine Fehler erfaßt:
  • Quad 1 ist gültig.
  • Keine anderen Quads sind betroffen.
  • Quad 1 Aktualisiert, Fehler erfaßt:
  • Falls Quad 0 gültig ist, und Quad 2 nicht in der Anzeige ist, Quad 0 in die Anzeige übertragen.
  • Quad 1 ist ungültig.
  • Keine anderen Quads betroffen.
  • Quad 2 Aktualisiert, Keine Fehler erfaßt:
  • Quad 2 ist gültig.
  • Keine anderen Quads betroffen.
  • Quad 2 Aktualisiert, Fehler erfaßt:
  • Quad 2 ist ungültig.
  • Keine anderen Quads betroffen.
  • Quad 3 Aktualisiert, Keine Fehler erfaßt:
  • Quad 3 ist gültig.
  • Keine anderen Quads betroffen.
  • Quad 3 Aktualisiert, Fehler erfaßt:
  • Quad 3 ist ungültig.
  • Keine anderen Quads betroffen.
  • Intelligenter Lesekopf gibt mir einen neuen UPC:
  • Display wird abgeschaltet.
  • Alle Quads ungültig.
  • Initialisierung bei Einschaltung:
  • Display wird abgeschaltet.
  • Alle Quads ungültig.
  • Einmal geschrieben, braucht die Bestellmodusanzeige nicht nochmal geschrieben zu werden. Nichts kurz von Reprogrammieren ihres UPC, oder Spannungsausfall, macht Quad 3 ungültig.
  • Wenn Quad 0 aktualisiert wird, müssen die Quads 1 und 2 neu geschrieben werden, bevor der vollständige Modulbetrieb wiederhergestellt wird.
  • Wenn es gewünscht ist, den Bus soweit wie möglich zu entlasten, werden Quad 1 oder 2 oder 3 aktualisiert. Das setzt den Waisen-Zähler zurück, so daß das Modul sich selbst nicht abschaltet, jedoch nur ein Drittel der Busaktivität erfordert.
  • Prozessordetails Optionsselektionen für den Sanyo Controller
  • Der Sanyo Controller (siehe Fig. 4) ist mit einer 4,5 oder 6 Volt Spannungsversorgung versehen, und der Prozessor wird mit einem externen Takt bei 65,536 kHz getaktet.
  • Keiner der internen Rückkopplungen zu Hochzieh- oder Herunterziehtransistoren wird verwendet. Die Software schaltet die Herunterziehtransistoren bei der Initialisierung ab und schaltet sie nicht wieder an.
  • Bei der Initialisierung verläßt die Software den Backup-Modus und geht in den Backup-Modus nicht zurück (der Backup-Modus benötigt mehr Leistung in dem Oszillatorschaltkreis).
  • Ein 65 kHz Quarz wird verwendet, um den in dem Oszillator verschwendeten Strom zu reduzieren. Der invertierende Puffer in dem Oszillatoreingang weist einen Rückkopplungstransistor darum herum auf, der die Schwingung unterstützt, wenn ein Quarz verwendet wird, zieht jedoch Strom von dem externen Takt. Dieser Widerstand ist größer für die 32 kHz Option als für die 65 kHz Option.
  • Der Controller verwendet den "62,5 ms" Abzweig für Start1. Dieses gibt bei 65 kHz einen 31 ms Zeitgeber.
  • In dem Segment PLA steuert jedes in die Anzeigelatches geschriebene Bit genau ein Segment.
  • Aufwachen gegenüber Schlafen
  • Wenn der Bus aktiv ist, verbringt der Sanyo Controller die meiste Zeit mit der Überwachung des Busses, um den Start einer Adresse zu lokalisieren. Wenn der Sanyo Controller eine Adresse findet, vergleicht er sie mit seiner eigenen, und falls sie verschieden sind, prüft der Sanyo Controller den optischen Port. Wenn in dem optischen Port kein Lesekopf oder Finger ist, geht er direkt zurück zur Überwachung des Busses.
  • Wenn der Bus im Leerlauf ist, verbringt der Sanyo Controller seine meiste Zeit angehalten. Der Sanyo Controller wacht alle 93,9 ms (das Dreifache der Start1-Intervalle) auf, um möglicherweise die Anzeige zu aktualisieren, und zu prüfen, ob eine Aktivität an dem optischen Port vorhanden ist. Falls dort nichts geschieht, prüft der Sanyo Controller wiederum den Bus. Wenn der Bus für die Zeitdauer von mehr als 10 Bit hoch ist, oder für die Zeit von mehr als 90 Bits niedrig, verfällt der Sanyo Controller zurück in den Schlafmodus. Das Ergebnis ist, daß Batterieleistung gespart wird, wenn der Bus im Leerlauf ist.
  • Nicht benutzte Ausgänge mit offenem Drain
  • Der Ausgangsport, der die Opto Range und Low Batt Ckt En Ausgänge ansteuert, ist ein P-Kanal-Ausgang mit offenem Drain.
  • Serielles Busformat
  • Das serielle Busformat und Protokoll sind wie folgt (siehe die Fig. 6A bis 6K). Die Vorspänne, die Verschachtelung von Adresse, Daten und Bestätigung, das Nibbelformat und die Bitrate, werden im Hinblick auf die Fähigkeiten des Sanyo 5733 Controllers ausgewählt. Damit der Bus ordnungsgemäß arbeiet, muß die Busbitrate exakt in Beziehung stehen zur Taktgeschwindigkeit des Sanyo Controllers. Die Zeitbasis des Busses und der Module müssen quarzgesteuert sein, um die erforderliche Übereinstimmung zu erhalten.
  • Die Informationsrichtung auf den Bus ist hauptsächlich von dem Datenmanager an die Anzeigemodule. In jedem grundlegenden Buszyklus gibt der Datenmanager 14 Adressennibbel und 20 Datennibbel aus (ausschließlich Vorspänne und Prüfsummen) und ein Anzeigemodul antwortet mit 3 Nibbeln von ACK (Bestätigung, von denen zwei Nibbel ein fester Vorspann sind). Seltener sendet ein Anzeigemodul eine 12 Nibbel Anforderung für eine Sequenzzuweisung an den Datenmanager.
  • Wie in Fig. 6A gezeigt, beträgt die Gesamtlänge des grundlegenden Buszyklus 71 Nibbel. Somit hat jeder Buszyklus 71 Nibbels x 5 Bit/Nibbel x 4 Sanyo Controller Zyklen/Bit = 1420 Sanyo Controller Zyklen. Ein Sanyo Controller Zyklus ist gleich 4 Zyklen/Bit x 1 s/65536 Zyklen = 61,0342 µs Die Bitzeit = 4 Sanyo Controller Zyklen = 4 x 61,0352 µs = 244,141 µs. Bei fünf Bit pro Nibbel ist die Nibbelzeit = 5 x 244,141 µs = 1,22072 ms bei 71 Nibbeln pro Buszyklus. Die grundlegende Buszykluszeit = 71 x 1,22070 ms = 86,6699 ms.
  • Fig. 6B zeigt die drei grundlegenden Buszyklen, Zyklus #1, Zyklus #2, Zyklus #3. Zyklus #1 erkennt die Adresse, Zyklus #2 nimmt Daten auf, und Zyklus #3 gibt die Bestätigung aus. Drei Buszyklen benötigen 3 x 86,6699 ms = 260,010 ms.
  • Alle Felder in dem Busformat sind Vielfache von Nibbeln. Das Nibbelformat (siehe fig. 6C) ist aus fünf Bitzeiten gebildet. Die ersten vier Bitzeiten in einem Nibbel tragen den Nibbelwert. Das fünfte Bit wird Space genannt, und der Datenmanager hält dieses Bit niedrig (d.h., einen Wert von 0), wenn das Nibbel nicht nur aus Nullen besteht. Wenn das Nibbel 0000 ist, ist sein Spacebit 1. Das am wenigsten signifikante Bit eines Nibbels kommt zeitlich zuerst.
  • Die Plazierung und Dauer des Spacebit wird von der Sanyo Controller Software benötigt, wenn der Bus in den RAM gelesen wird, um ihm Zeit zu geben, das Nibbel in einen Puffer zu tun, und sich für den Empfang des nächsten Nibbels vorzubereiten. Jedes Bit ist genau 4 Sanyo Controller Maschinenzyklen lang, ungefähr so schnell, wie der Sanyo Controller möglicherweise serielle Daten empfangen kann.
  • Die Regel betreffend den Wert des Spacebit dient dazu, dem Sanyo Controller zu ermöglichen, schnell zu erkennen, ob der Bus aktiv ist oder nicht,und zu ermöglichen, daß Header eindeutig gemacht werden, dadurch, daß ihnen erlaubt wird, die Spacebitregel zu verletzen. Speziell findet der Sanyo Controller HDR0 und HDR2 durch die Tatsache, daß es 10 Bitzeiten mit kontinuierlich "1" gibt (d.h., zwei F+ Nibbel). Normale Daten sollten höchstens fünf aufeinanderf6lgende "1" haben.
  • Es gibt zwei Felder in jedem Buszyklus, die für die Module zugewiesen sind, um ihnen zu erlauben, Informationen zum Datenmanager zu senden. Der Sanyo Controller ist nicht in der Lage, der Spacebitregel ökonomisch zu folgen, jedoch sind die Modulnachrichtennibbel auf BCD-Werte beschränkt, um ihn daran zu hindern, zu viele aufeinanderfolgende "1" auf dem Bus zu plazieren (und somit die anderen Module zu verwirren, und möglicherweise ein Modul zu veranlassen, eine Nachricht zu verpassen). Deshalb ist die Prüfsumme für das Anforderungsfeld eine BCD Prüfsumme.
  • Effekt von HF Transceivern auf Modul-erzeugte Felder
  • Das Modul synchronisiert (siehe Fig. 6D) auf eine steigende Flanke in HDR0 oder HDR2, wie von dem Regalknotenempfänger erfaßt. Diese Flanken werden tatsächlich zeitlich verschoben, relativ zu der Zeit, wenn der Datenmanager sie sendet, durch Verzögerungen, die sowohl im Senderschaltkreis als auch im Empfängerschaltkreis bewirkt werden. Außerdem ist diese Verschiebung nicht konstant, sondern variiert von Modul zu Modul abhängig von der AGC Funktion, der Modulplazierung innerhalb des Geschäfts (Signalstärke) usw..
  • Fig. 6E zeigt das Adreßfeldformat, einschließlich insgesamt 16 Nibbel. Die 8 Bit Hex-Prüfsumme wird erzeugt durch Aufaddieren der 14 Nibbel in dem Adreßfeld unter Verwendung von 8 Bit Addition, dann Komplementieren des Ergebnisses und Addieren von 1. Ein Beispiel ist in Fig. 6F gezeigt. Auf dem Bus von einem Anzeigemodul plazierte Information wird weiter durch die zusätzliche Verzögerung in dem Regalknotensender verschoben, und auch der Datenmanagerempfänger trägt zur Verzögerung bei. Die Kombination kann die Modulantwort um eine Bitzeit verschieben, wie von dem Datenmanager gesehen. Es ist wahrscheinlich, daß sich die Datenmanager-Software oder Hardware an diese Verschiebung anpassen muß, um die Modulnachricht korrekt wiederzugewinnen. Jeder Modulnachricht geht "75" Hex voraus, um ein bekanntes Anfangsmuster bereitzustellen, wie in dem Anforderungsfeldformat in Fig. 6G gezeigt ist. Das Anforderungsfeldformat ist ein offenes Fenster in dem Datenstrom, um Modulen zu erlauben, eine Sequenzzuweisung von dem Master anzufordern. Die Prüfsumme ist sämtlich BCD Ziffern. Alle zwölf UPC Stellen werden zusammenaddiert, in BCD Arithmetik, Mod 100 Dezimal. Dann wird dieser Wert von 100 Dezimal subtrahiert.
  • Wenn zwischen dem Ende eines von einem Anzeigemodul erzeugten Feldes und dem Start des nächsten, von dem Datenmanager erzeugten Feldes kein Flop zugelassen würde, würde die Anzeigemodulnachricht gleich mit dem Beginn des nächsten Feldes aufgrund der oben diskutierten Verzögerungen überlappen. Das Busformat schließt am Ende des ACK und der Anforderungsfelder ein volles Nibbel der Stille "Nullen" ein, um sich diesem Problem zu widmen.
  • Fig. 6G zeigt das Datenfeldformat. Fig. 6H zeigt die Segmentnummerntabellenabbildung zwischen den physikalischen
  • Pin-Verbindungen und logischen Segmentnummern 1 bis 50. Jedes Nibbel in dem Datenfeld spezifiziert den Zustand von vier Anzeigemodulsegmenten. Ein hoher Pegel schaltet das Segment ein. Das 81-ste Segment wird nicht benutzt, ebenso wie Segmentleitung 27, gemeinsame Leitung 3.
  • Das am wenigsten signifikante Bit des Nibbels steuert die unteren Segmentnummern, so daß das erste Nibbel wie in Fig. 61 gezeigt ist. Wie gezeigt, sind die Segmente 1 und 2 aus, die Segmente 3 und 4 sind an. Wie in Fig. 6J gezeigt, steuert das zweite Nibbel die Segmente 5 bis 8.
  • Die Prüfsumme ist dieselbe wie in dem Adreßfeld. Das heißt, die Nibbel werden mit 8 Bit Addition aufaddiert, und die Prüfsumme ist das 2er-Komplement der Summe.
  • Fig. 6K zeigt die tatsächliche Buskonfiguration, weil das am wenigsten signifikante Bit zeitlich zuerst innerhalb eines jeden Nibbels kommt.
  • Fig. 6L zeigt das Bestätigungsfeldformat, das aus insgesamt 5 Nibbels besteht. Das Statusnibbel "STS" ist 6, wenn die Anzeigemodulbattene in Ordnung ist, und 9, wenn die Batterie leer ist.
  • Details des optischen Ports
  • Wenn ein Lesekopf nicht in Verwendung ist, sollte der optische Port entweder dunkel sein (von dem Finger eines Kunden abgedeckt), oder von Umgebungslicht beleuchtet. Zwei Probleme sind denkbar: 1) Die Umgebung ist zu dunkel, und 2) die Umgebung ist zu hell.
  • Wenn die Lichter des Geschäfts ausgehen, kann die Umgebung auf den Punkt abfallen, daß die meisten Module zur Einheitspreisanzeige übergehen. Sie verbleiben in dieser Anzeige, bis die normale Beleuchtung wieder hergestellt ist. Dieses reduziert die Reaktionsfähigkeit der Module auf irgendwelche Nachrichten auf dem Bus, oder die Lesekopfaktivität an dem optischen Port, nicht.
  • Das entgegengesetzte Problem, eine ungewöhnlich intensive Umgebung, wurde als das "truck" Problem bekannt, weil es ein wahrscheinliches Szenario ist, daß ein Lastwagen direkt außerhalb parkt und eine Menge Sonnenlicht in das Geschäft hineinreflektiert. Das einfache Modul könnte dieses als Lesekopf sehen, und in der Befehlsmodusanzeige einrasten. Anders als bei wenig Licht, fordert der Lesekopf die gesamte Prozessorzeit, und das Modul würde mit der Überwachung des Busses aufhören.
  • Die Modulsoftware weist kontinuierlich hohe Lichtpegel durch Verwendung des "truck" Bits zurück. Dieses Bit wird von der Software gesetzt, wenn zuerst ein Lesekopf erfaßt und bedient wird. Das Bit wird nicht rückgesetzt, bis die Software den Lichtpegel wieder fallen sieht, und das Modul ignoriert hohe Lichtpegel, bis das "truck"-Bit rückgesetzt wird.
  • Ein zweiter Riegel schützt vor Lichtpegeln, die mit 60 Hz moduliert sind - das Modul weist einen Lesekopf zurück, falls er nicht für wenigstens 18 ms fortwährend hell ist (mit der Auflösung, mit der das Modul abtasten kann). Jedoch kann eine Modulation mit niedrigerer Frequenz von hellen Pegeln ein Modul einrasten lassen. Dieser Vorgang wäre gekennzeichnet durch viele Sekunden von Befehlsmodusanzeige, gefolgt von der Rückkehr zur normalen Preisanzeige, und dann, sobald das Modul Dunkelheit und dann Helligkeit sieht, Rückkehr der Befehlsmodusanzeige für wiederum 4 Sekunden.
  • Wenn ein Lesekopf verwendet wird, kann ein anderes Problem auftreten. Der herkömmliche (dumme) Lesekopf hält seine LED an, wenn der Lesekopf versucht, einen Strichcode zu lesen. Wenn der optische Port zu viel von diesem Licht zurück zum Lesekopf reflektiert, könnte der Lichtdetektor des Lesekopfes nur diesen hellen Pegel sehen, was dazu führt, daß er die Strichcodestruktur, die von der LED des Moduls ausgesendet wird, nicht mehr lesen kann. Der Lesekopf gemäß der Erfindung verhindert dieses Problem durch seine Konfiguration.
  • Die intelligente Lesekopfschnittstelle ist konstruiert, exzessive Reflektion an dem Portfenster zu tolerieren. Zwei grundlegende Merkmale unterstützen diese Fähigkeit: 1) Der Handshake, und folgender Datenaustausch erfordert keinen Detektor, um den Port abzutasten, wenn sein eigener Emitter an ist, und 2) die Strichcodeaussendung des Moduls kann von dem intelligenten Lesekopf neu ausgelöst werden, was es dem intelligenten Lesekopf ermöglicht, die vollständige Strichcodeaussendung zu sehen, wobei seine LED aus ist.
  • Der Lesekopf erhält die Aufmerksamkeit des Moduls durch Beleuchten des optischen Ports. Das Modul benötigt 20 bis ungefähr 120 ms, um auf den Lesekopf zu reagieren, und mit der Aussendung des Strichcodes zu beginnen. Der Strichcode benötigt bis zu seinem Abschluß 260 ms.
  • Der intelligente Lesekopf sieht die Reflektion seiner eigenen LED nicht und sieht den Strichcode des Moduls. In diesem Fall muß der intelligente Lesekopf die Neuübertragung des Strichcodes nicht anfordern. Wenn jedoch der Lesekopf nichts anderes als Helligkeit sieht, muß er seine LED für vielleicht 150 ms anhalten, um sicherzustellen, daß der Lesekopf sie sieht. Wenn der Lesekopf schließlich seine LED ausschaltet und die LED des Moduls sehen kann, hat das Modul mit der Übertragung des Strichcodes bereits begonnen.
  • Der Lesekopf wartet einfach, bis der Strichcode zuende ist und der Handshake beginnt. Der Lesekopf führt den Beginn des Handshakes korrekt aus und fällt dann absichtlich in einem späteren Teil des Handshake aus. Dieses bewirkt, daß das Modul zum Beginn der Strichcodeaussendung zurückkehrt, und dieses nächste Mal ist der Lesekopf in der Lage, ihn zu lesen.
  • Anzeigemodul Software
  • Der Sanyo 5733 Controller hat 2 kbyte Programm-ROM, die in acht Seiten von 256 Byte organisiert sind. Ein Speicherplan des Sanyo 5733 Controllers wird im folgenden beschrieben.
  • Der RAM hat 128 Stellen, 1 Nibbel breit.
  • Der RAM ist in Seiten organisiert (weil in RAM mit DP gezeigt wird, und DP in DPH (3 Bit, RAM Seite) und DPL (4 bit, Offset in Seite) unterteilt ist. Es gibt 8 Seiten, 16 Nibbel pro Seite. RAM Seite 0 : (zugewiesene Adresse - Lanzeitspeicherung wird nur durch Nullprogrammierung mit intelligentem Lesekopf geändert) RAM Seite 1: Zeitweilige Speicherung von: a) Von Regalbusstrom gezogene Adresse b) Anforderungsbild (komplementierter UPC + chk) c) Prüfsummenlaufsumme (letzte beiden Nibbel) RAM Seite 2: Anzeigebild; Quad 0 (erste 16 Nibbel) RAM Seite 3: Anzeigebild; Quad 0 (letzte 4 Nibbels) Quad 1 (erste 12 Nibbel) RAM Seite 4: Anzeigebild; Quad 1 (letzte 8 Nibbel) Quad 2 (erste 8 Nibbel) RAM Seite 5: Displayimage; Quad 2 (letzte 12 Nibbel) Quad 3 (erste 4 Nibbel) Hex Adresse RAM Seite 6: Displayimage; Quad 3 (letzte 16 Nibbel)
  • Ende der Anzeigenspeicherung. Die Anzeigen sind jeweils 20 Nibbel lang., Es gibt 4 Anzeigen für eine Gesamtspeicherung von 80 Nibbeln. Dieses stellt 62,5% des verfügbaren RAM dar. RAM Seite 7: Zeitweilige Speicherung, Flags, Zähler
  • Erläuterung der Bit Interpretation: Eingangsbit:
  • Comm Kanal ist Hoch (1) falls Kanal in überlegenem Zustand ist. Der überlegene Zustand ist ein hoher Pegel in der festverdrahteten Version, oder Träger AN bei HrF Implementierung des Busses.
  • Dunkel ist Hoch (1) um anzuzeigen, daß der Lichtpegel unterhalb der gewählten Empfindlichkeitsschwelle ist.
  • Hoch, um eine niedrige Batteriespannung anzuzeigen.
  • Ausgangsbits:
  • Low batt ckt En wird hoch eingeschrieben, um den Batterie Leer Erfassungsschaltkreis einzuschalten (wird abgeschaltet, wenn nicht benutzt, um Batteriestrom zu sparen).
  • (Der low batt Schaltkreis wird getestet, direkt bevor ein ACK an den Master gesendet wird, somit ist er fast die gesamte Zeit aus.)
  • Opto Range stellt die Lichtempfindlichkeit ein:
  • Range 0 ist der empfindlichste - wird verwendet, um den Unterschied zwischen normaler Umgebung und vollständiger Dunkelheit zu umfassen (wenn der Kunde die Öffnung mit einem Finger abdeckt, um die Einheitspreisanzeige hervorzurufen).
  • Range 1 ist am wenigsten empfindlich - wird verwendet, um den Unterschied zwischen der normalen Umgebung und großer Helligkeit zu erfassen (wenn der Lesekopf in den optischen Port eingesetzt ist, und die LED des Lesekopfs angeschaltet ist)
  • (Opto Range sollte immer "0" sein, wenn der optische Port nicht bedient wird. Wenn Range "1" ist, kann Strom in dem Erfassungsschaltkreis fließen, was die Batterie erschöpft.)
  • Senden einer "1"* wird verwendet, um Information von einem Anzeigemodul an den Regalknotenprozessor oder Datenmanager zu senden. Wenn Niedrig (0), wird der Regalknotenbus auf "1" gelegt. Dieses Bit ist immer auf hoch gesetzt, außer wenn Daten gesendet werden. Daten werden vor der Sendung komplementiert, so daß sie richtig herum auf dem Bus auftreten.
  • Lichtausgabe:
  • SLGT schaltet die Modul-LED ein.
  • RLGT schaltet die Modul-LED aus.
  • (LED sollte immer aus sein, außer während Kommunikation mit dem Lesekopf - benötigt viel Strom.)
  • ALARM Ausgang: Nicht benutzt
  • Zeitgabe der Pricelink Anzeigemodul Betriebsanforderung
  • Das bevorzugte Ausführungsbeispiel läßt irgendeinen gegebenen Regalbus im Leerlauf - niedrig fast die gesamte Zeit; die einzige Zeit, während welcher der Regalbus aktiv ist, ist während einer Dauer von ungefähr 1 Sekunde alle acht Stunden. Das bedeutet, daß wenn ein Anzeigemodul mit einem Lesekopf gelesen wird, der Bus fast sicher im Leerlauf-niedrig sein wird.
  • Wenn von dem Modul ein intelligenter Lesekopf erfaßt wird und der Bus im Leerlauf-niedrig war, als das Modul ihn zuletzt geprüft hat, plaziert das Modul einen 1,3 ms Impuls auf dem Bus. Der Impuls wird ausgegeben, wenn die LED des Lesekopfes nicht erfaßt wird, nachdem das Modul die Aussendung seines Strichcodes beendet hat. Dieses ist direkt, bevor der Handshake mit dem Lesekopf versucht wird.
  • Dann versucht das Anzeigemodul eine Handshake Prozedur mit dem Lesekopf, und wenn der Handshake erfolgreich ist, taktet das Anzeigemodul seinen neuen UPC aus dem Lesekopf. Dann prüft das Modul den empfangenen Code, um zu sehen, ob die Zwei-BCD-Stellen-Prüfsumme korrekt ist, und falls korrekt, bereitet sich das Anzeigemodul vor, eine Anforderung auf dem Bus zu plazieren.
  • Das Anzeigemodul prüft zuerst den Bus nochmal, um zu sehen, daß er noch im Leerlauf ist (dies benötigt 100 ms). Insgesamt vergehen ungefähr 575 ms nach dem ersten Impuls, bevor die Anforderungsnachricht übertragen wird. Die Anforderung selbst benötigt ungefähr 39 ms (80 Regalbusbitzeiten).
  • Lesekopf-Anzeigemodul Schnittstelle
  • Die Anzeigemodule in dem System bleiben leer, bis der Manager ihnen ihre erste Anzeigeinformation sendet. Dieser Vorgang kann jedoch nicht stattfinden, bis eine Zugehörigkeit zwischen dem Anzeigemodul und einem bestimmten Produkt im Geschäft gebildet ist.
  • Diese Zugehörigkeit wird gebildet, wenn dem Anzeigemodul von einem intelligenten Lesekopf ein UPC Code zugewiesen wird. Der intelligente Lesekopf ist ein handhaltbarer optischer Lesekopf vom Strichcodelesertyp gemäß der Erfindung, mit der Fähigkeit, seine Lichtquelle zu modulieren. Diese Fähigkeit macht eine bidirektionale Kommunikation zwischen einem Anzeigemodul und einem intelligenten Lesekopf möglich.
  • Im folgenden wird die Zeitgabe des UPC Zuweisungsprozesses beschrieben.
  • Das Anzeigemodul enthält einen optischen Sender und einen optischen Empfänger (einen Siliziumphototransistor). Die Spitze des intelligenten Lesekopfes wird in ein Loch in der Vorderseite des Moduls eingesetzt, so daß die optischen Komponenten des Lesekopfes mit denen des Moduls eng gekoppelt sind.
  • Das Anzeigemodul erfaßt die Gegenwart eines Lesekopfes durch Bemerken eines ungewöhnlich hohen Lichtpegels. Dieses kann 94 ms dauern, weil das Anzeigemodul den Zustand des optischen Ports nur einmal alle 94 ms abtastet. Wenn ein Lesekopf erfaßt wird, bewegt das Anzeigemodul zuerst das Quad 3 Bild in die Anzeige (oder schaltet alle Segmente ein, falls keine gültige Quad 3 Information verfügbar ist). Dieser Vorgang kann einige Millisekunden dauern.
  • Als nächstes sendet das Anzeigemodul seinen gegenwärtigen UPC Code unter Verwendung seiner LED im Strichcodeformat. Wenn dem Modul ein Strichcode nicht zugewiesen worden ist, ist der ausgesendete Code sechs Neunen hintereinander 999999-999999. Es wird vermerkt, daß dieses ein fehlerhafter Code ist, weil die Prüfstelle 3 sein sollte, jedoch ist sie 9.
  • Das Strichcodeformat erlaubt herkömmlichen Strichcodelesern, dem Code eines Anzeigemoduls zu lesen. Ein herkömmlicher Strichcodeleser wird dummer Lesekopf genannt, weil er dem Anzeigemodul einen neuen UPC-Code nicht zuweisen kann.
  • Der Strichcode wird mit einer Zeitgabe von ungefähr 2 ms pro "Modul" (kleinstes Element im Code) ausgegeben; es gibt 110 Module in einem Code, einschließlich Ränder, so daß die Strichcodeaussendung ungefähr 220 ms benötigt.
  • Nach dem Abschalten seiner LED nach Abschluß des Strichcode wartet das Anzeigemodul ungefähr 9 ms und testet dann dem Zustand des Lesekopfes. Wenn die LED des Lesekopfes noch an ist, schlußfolgert das Anzeigemodul, daß der Lesekopf dumm ist, und das Anzeigemodul geht für ungefähr 4 Sekunden in einen Schlafzustand über, wacht dann auf und plaziert Quad zurück in die Anzeige (oder leer, falls keine Quad Information verfügbar ist).
  • Wenn die Lesekopf-LED 9 Millisekunden nach dem Ende des Strichcode aus ist, versucht das Anzeigemodul mit dem Lesekopf einen Handshake. Vor Beginn des Handshakes plaziert das Modul einen 1,3 ms Impuls auf dem Regalbus, um den Regalknotenprozessor aufzuwecken.
  • Der Handshake, und die folgende UPC-Zuweisung sind so definiert, daß kein Empfänger untersucht wird, während sein eigener Emitter an ist; das Modul testet dem Zustand des Lesekopfes nicht, während die Modul-LED an ist, und der Lesekopf sucht nicht nach einem von dem Modul erzeugten Impuls, wenn die LED des Lesekopfes nicht aus ist. Dieses vermeidet Probleme aufgrund möglicher Wechselwirkungen zwischen Emittern und Detektoren (wie etwa Reflektionen).
  • Der Zustand des optischen Ports ist während dieses Handshakes sehr stark überabgetastet, was die Fehlererfassungseigenschaften des Protokolls verbessert.
  • Die Zeitgabe von sowohl dem Handshake als auch dem UPC- Transfer wird von dem Anzeigemodul Bit für Bit bestimmt. Das Anzeigemodul gibt einen Impuls von ungefähr 1 Millisekunde aus, und der intelligente Lesekopf sieht das Ende des Impulses, verzögert um eine Millisekunde, und schaltet dann entweder seine LED an oder läßt sie aus. Nach 3 Millisekunde schaltet der Lesekopf seine LED aus, falls die LED an war. Dieses schließt die Übertragung von einem Datenbit von dem Lesekopf zum Anzeigemodul ab. Das Anzeigemodul wartet eine Millisekunden und gibt dann einen weiteren Zeitgabeimpuls aus. Dieses resultiert in einer Übertragungsrate von ungefähr sechs Millisekunden pro Bit.
  • Die Richtung des Datenflusses ist von dem Lesekopf zum Anzeigemodul; das Anzeigemodul sendet einzig zu der Zeit Daten an den Lesekopf, wenn der Strichcode ausgesendet wird, wie oben beschrieben wurde.
  • Der Handshake besteht aus einem sechs Bit Code: 110101. Das Paar von Einsen wird zuerst ausgegeben - der Zeitablauf ist von links nach rechts. (Hier bedeutet eine 1, daß die Lesekopf-LED an ist.)
  • Wenn der Handshake erfolgreich abgeschlossen ist, fährt das Anzeigemodul fort, Zeitgabeimpulse auszugeben, und der Lesekopf reagiert durch Einspeisen des neuen UPC-Codes an das Anzeigemodul. Der Code wird als BCD Nibbels gesendet: es werden 12 Nibbels für dem Code gesendet, und eine 2 Nibbel Prüfsumme wird am Ende hinzugefügt. Dieses ergibt insgesamt 56 Bits.
  • Regalknotenbetrieb
  • Im folgenden wird das Breitbandübertragungsschema für das Pricelinksystem beschrieben, das anstrebt, in dem Regalknoten Batterieleistung zu sparen. Die HF (Funkfrequenz) ist bevorzugt in der Lage, Daten zuverlässig mit viel höheren Raten als die Anzeigemodule zu übertragen, wodurch sich Raum ergibt für zusätzlichen Vorspanninformation, die zur Konservierung der Batterielebensdauer in den Regalknoten benötigt wird.
  • Das grundlegende Konzept des Schemas ist es, zu ermöglichen, daß die Anzeigemodule in dem HALT Modus solange wie möglich sind, den Regalknotenprozessor die meiste Zeit auf niedriger Geschwindigkeit laufen zu lassen, und den Empfänger/Sender in dem Regalknoten die meiste Zeit aus zu lassen, und zu erlauben, daß eine Adreßanforderung und das Echo von Daten mit Bestätigung und eingeschlössener Information, daß die Batterie leer ist, gesendet wird.
  • Alle fünf Minuten sendet der Datenmanager einen Befehl aus, der dem Regalknoten sagt, was während der nächsten fünf Minuten geschieht. Der Regalknoten ist für das Einschalten seines Empfängers direkt vor dieser Übertragung verantwortlich, und abhängig von der empfangenen Information, geht bis zur nächsten Nachricht zurück in den Schlafzustand, oder bereitet sich auf dem Empfang von Information vor, die an die Anzeigemodule geleitet wird. Wenn ein Regalknoten zwischen Übertragungen aufwacht, empfängt er Information darüber, wann die nächste Übertragung auftritt.
  • Jeder Buszyklus ist in sechs Fenster unterteilt. Das folgende ist die Reihenfolge der Fenster für jeden Zyklus auf dem Bus:
  • Fenster 1 - Sync/Info
  • Fenster 2 - Übertragungsdaten
  • Fenster 3 - Anforderung
  • Fenster 4 - Übertragungsdaten wiederholgen
  • Fenster 5 - (leer)
  • Fenster 6 - Echo
  • Das Sync/Info ist ein Fenster für den Datenmanager, in welches der Datenmanager die gesamte Vorspanninformation im Zusammenhang mit der Konservierung der Batterielebensdauer in den Regalknoten tut. Dieses schließt Information darüber ein, wann die Knoten ihre Empfänger ein- und ausschalten, Synchinformation usw. Wenn keine Information an die Module ausgesendet wird, ist dieses das einzige Fenster, das irgendeine Übertragung von dem Deckenknoten hat, die Datenfenster bleiben leer.
  • Die Übertragungsdaten sind ein Paket, das die Bits enthält, die mittels des Regalknotens an die Anzeigemodule weitergeleitet werden müssen. Weil 24 Informationsbits in diesem Paket an die Module gesendet werden, muß die Buszykluszeit 24 Bitzeiten der Module sein, was 5,86 ms ist.
  • Das Anforderungsfenster ist ein Raum für einen Regalknoten, der gegenwärtig nicht aktiv ist, um eine Anzeigemodul- Sequenzzuweisungsanforderung einzufügen. Weil eine Anforderung 80 Bits lang ist und jede Übertragung 24 Bit enthält, benötigt sie vier Übertragunge.n Eine fünfte Übertragung ist ein Paket, das die Regalknotenadresse enthält.
  • Die Wiederholung von Übertragungsdaten ist eine Wiederholung der Übertragungsdaten. Der Regalknoten liest sie, wenn die erste Übertragung fehlt oder den Prüfsummentest nicht besteht.
  • Das Echo ist ein Fenster, das der Regalknoten zur Übertragung der Bits verwendet, die auf dem Anzeigemodulbus waren, als die vorangehenden Übertragungsdaten aufgegeben wurden, so daß irgendeine Nachricht, die ein Modul auf dem Modulbus einfügt, übertragen wird. Dieses beläßt die gesamte Entschlüsselung von Bestätigungen und einige Anforderungen auf der anderen Seite der HF. Um zuzulassen, daß verschiedene Arten von Übertragungen auftreten, ist das erste Nibbel eines jeden Pakets ein Vorspann. Das letzte Nibbel in dem Paket wird als Prüfsumme benutzt, was eine Fehlerprüfung ermöglicht. Dieses erlaubt, daß 24 Informationsbits in jedem Breitbandpaket von 32 Bits enthalten sind. Fig. 8 zeigt ein Zeitdiagramm für den Regal knoten.
  • Einige der Pakete erfordern eine Adresse, während andere von allen anderen Regalknoten abehört werden. Der Regalknoten geht mit jedem Pakettyp und denen um, die Adressen haben.
  • Die Adresse ist vier Nibbels lang und besteht aus 2 Nibbeln für die Gruppenadresse und zwei Nibbeln für die Knotennadresse. Um zu garantieren, daß in fünf Minuten eine gesamte Gruppe übertragen wird, ist die Anzahl von Knoten pro Gruppe auf 128 beschränkt. In einem normalen Geschäft mit 20000 Anzeigen, 6 Anzeigen pro Regal, kann man mit lediglich 26 Gruppen rechnen. Diese Spezifikationen sind beispielhaft und nicht beschränkend.
  • Die Unterteilung der Adresse in Gruppe und Knoten ermöglicht, daß ein Paket zu einer Gruppe adressiert wird. Wenn die Knotenadresse Null ist, werden alle Knoten in der Gruppe adressiert. Wenn die Knoten- und Gruppenadressen Null sind, werden alle Regale adressiert.
  • Im allgemeinen arbeitet der Regalknoten in drei Zuständen: Schlafen, Bereitschaft und Aktiv. Das folgende ist ein allgemeiner Umriß der Zustände.
  • Im Schlafzustand läuft der Prozessor mit niedriger Geschwindigkeit, wobei der Empfänger und der Sender abgeschaltet sind. Wenn ein interner Zeitgeber abläuft, beschleunigt der Prozessor, schaltet den Empfänger ein und empfängt Information darüber, was in dem nächsten Zeitblock geschieht. Normalerweise wacht er alle fünf Minuten auf, jedoch kann dieses von dem Datenmanager entschieden werden. Wenn der Knoten (d.h., Regalknoten) einschaltet, empfängt er entweder Synchronisationsinformation oder aktuelle Information darüber, was als nächstes geschieht. Wenn der Knoten in die Übertragungen eingeschlossen ist, die in den nächsten fünf Minuten auftreten, berechnet er die Zeit seiner Übertragung und wechselt dann in den Bereitschaftszustand. Es gibt einen anderen Weg, den Schlafzustand zu verlassen. Wenn der Modulbus mit einer Modulanforderung aktiv wird, sendet der Prozessor die Anforderung in dem Anforderungsfenster aus und schaltet dann in den Bereitschaftszustand.
  • Im Bereitschaftszustand läuft der Prozessor mit voller Geschwindigkeit bei eingeschaltetern Empfänger. Er liest fortwährend das Sync/Info Fenster für einen adressierten Befehl, um entweder in den Schlaf- oder in den aktiven Zustand einzutreten.
  • Wenn ein Knoten aus der Bereitschaft den aktiven Zustand erreicht, liest der Knoten lediglich das Übertragungsdatenfenster und leitet diese Bits an die Anzeigemodule weiter. In das Echofenster tut der Knoten die Daten, die auf dem Modulbus zuletzt übertragen wurden, die die Bestätigungen und möglicherweise eine hineingemischte Anforderung enthalten. Der Knoten verläßt dem aktiven Zustand, wenn ein Befehl in dem Übertragungsdatenfenster ausgegeben wird, der dem Knoten sagt, zurück in Bereitschaft zu gehen, oder zu schlafen. Es ist wichtig, daß nur ein Knoten zu jeder Zeit in diesem Zustand ist.
  • Zu irgendeiner Zeit, in der das Sync/Info Fenster für irgendeine andere Nachricht nicht verwendet wird, ist dort Synchronisationsinformation. Diese Information wird an alle gesendet, um den Regalknoten mitzuteilen, wann sie auf explizite Information hören müssen. Die meiste Zeit wachen alle Knoten in einem Geschäft alle fünf Minuten zur gleichen Zeit auf und hören auf explizite Information darüber, was während den nächsten fünf Minuten geschieht. Wenn ein Knoten die Synchronisation mit den Ausstrahlungen an alle verliert, ist er schnell in der Lage, zu resynchronisieren. Das folgende ist das Format der Nachricht:
  • Nibbel 0 - Vorspann 0000 (0) Nibbel 1 - Am wenigsten signifikante Zeit
  • Nibbel 2 - Zeit
  • Nibbel 3 - Zeit
  • Nibbel 4 - signifikanteste Zeit
  • Nibbel 5 - -
  • Nibbel 6 - -
  • Nibbel 7 - Prüfsumme
  • Die vier Zeitnibbel sind die Anzahl von 1/16tel einer Sekunde, für welche der Regalknoten schlafen soll.
  • Der Aktivierungsbefehl wird in dem Sync/Info Fenster übertragen und wird verwendet, einen Regalknoten, der sich in dem Bereitschaftszustand befindet, zu veranlassen, in den aktiven Zustand zu wechseln. Der Befehl ist wie folgt formatiert:
  • Nibbel 0 - Vorspann 0001 (1)
  • Nibbel 1 - Gruppe #
  • Nibbel 2 - Gruppe #
  • Nibbel 3 - Knoten #
  • Nibbel 4 - Knoten #
  • Nibbel 5 - -
  • Nibbel 6 - -
  • Nibbel 7 - Prüfsumme
  • Es ist die Verantwortlichkeit des Datenmanagers, sicherzustellen, daß sich der aktive Knoten nicht länger im aktiven Zustand befindet, wenn dieser Befehl ausgegeben wird.
  • Wenn der Datenmanager weiß, daß die Übertragung an ein individuelles Regal im Bereitschaftszustand beendet ist, wird ein Befehl gesendet, den Empfänger sofort abzuschalten, und in einen Modus geringer Leistungsaufnahme zu verfallen. Das folgende ist das Format des Pakets:
  • Nibbel 0 - Vorspann 0010 (2)
  • Nibbel 1 - Gruppe #
  • Nibbel 2 - Gruppe #
  • Nibbel 3 - Knoten #
  • Nibbel 4 - Knoten #
  • Nibbel 5 - -
  • Nibbel 6 - -
  • Nibbel 7 - Prüfsumme
  • Wenn ein Regalknoten diesen Befehl empfängt, liest er das nächste Synchronisationspaket, um seinen Zeitgeber zu setzen, und in dem Schlafzustand zu fallen. Schlafbefehle könnten ebenfalls an Gruppen oder jedes Regal gerichtet werden.
  • Das Knotenzuweisungspaket wird als Reaktion auf eine im folgenden definierte Knotenzuweisungsanforderung in dem Sync/Info Fenster plaziert. Das folgende ist das Paketformat:
  • Nibbel 0 - Vorspann 0011 (3)
  • Nibbel 1 - Gruppe #
  • Nibbel 2 - Gruppe #
  • Nibbel 3 - Knoten #
  • Nibbel 4 - Knoten #
  • Nibbel 5 - erste Markierungsstelle
  • Nibbel 6 - zweite Markierungsstelle
  • Nibbel 7 - Prüfsumme
  • Dieser Befehl hat auch den Effekt, daß der Knoten in den aktiven Zustand versetzt wird. Der Datenmanager sollte mit der Eingabe des neuen Regalknotens in die Datenbank warten, bis klar ist, daß der Knoten seine Adresse empfangen hat.
  • Wenn ein Regalknoten einen Gruppenaufwach-Befehl empfängt, der zu seiner eigenen Gruppe paßt, berechnet er eine Zeit, in dem Bereitschaftsmodus einzutreten, basierend auf der Zeit, die in dem Paket enthalten ist, und seiner Knotennummer. Das folgende ist das Format des Pakets:
  • Nibbel 0 - Vorspann 0100 (4)
  • Nibbel 1 - Gruppe #
  • Nibbel 2 - Gruppe #
  • Nibbel 3 - Knoten #
  • Nibbel 4 - Knoten #
  • Nibbel 5 - Empfangszeit
  • Nibbel 6 - Empfangszeit
  • Nibbel 7 - Prüfsumme
  • Die Nibbel 5 und 6 werden verwendet, anzuzeigen, wie lange jedes Regal an sein sollte, in 1/16-teln einer Sekunde, so daß jeder einzelne Regalknoten die Zeit seiner Ausstrahlung an alle durch Multiplizieren dieser Nummer mit seiner Knotenadresse berechnen kann. Im allgemeinen sollte für eine Gruppe die Zeit 2,25 Sekunden sein, um für neue Versuche genügend Zeit zu lassen. Die Knoten # ist Null.
  • Wenn der individuelle Aufwachbefehl gegeben wird, lauschen die Regalknoten, bis sie entweder ihre Adressen leeren, oder die Liste erledigt ist. In den nächsten fünf Minuten wird nur an die Module in der Liste übertragen. Das folgende ist das Format des Pakets:
  • Nibbel 0 - Vorspann 0101 (5)
  • Nibbel 1 - Gruppe #
  • Nibbel 2 - Gruppe #
  • Nibbel 3 - Knoten #
  • Nibbel 4 - Knoten #
  • Nibbel 5 - Empfangszeit
  • Nibbel 6 - Empfangszeit
  • Nibbel 7 - Prüfsumme
  • Der individuelle Regalknoten hört auf jedes Paket, wobei die Zeit zu seinem internen Zeitgeber addiert wird, bis er seine Adresse hört. Wenn die Liste vollständig ist, benutzt jeder Regalknoten, der in der Liste enthalten war, die berechnete Summe, um zu planen, wann er aufwacht. Dieses fügt dem System Flexibilität hinzu, belastet jedoch den Datenmanager mit Planungsarbeit. Es ist wichtig, daß dieses Verfahren nicht zu oft verwendet wird, weil jeder Regalknoten der gesamten Liste zuhören muß.
  • Der Notaufwachbefehl wird verwendet, wenn ein Stromausfall aufgetreten ist, und das gesamte Geschäft schnell aktualisiert werden muß, oder für Show-Zwecke. Das folgende ist das Format des Pakets:
  • Nibbel 0 - Vorspann 0110 (6)
  • Nibbel 1 - Gruppe #
  • Nibbel 2 - Gruppe #
  • Nibbel 3 - Knoten #
  • Nibbel 4 - Knoten #
  • Nibbel 5 - -
  • Nibbel 6 - -
  • Nibbel 7 - Prüfsumme
  • Die mittleren sechs Nibbel sind eigentlich unbenutzt. Dieser Befehl versetzt alle adressierten Knoten in dem aktiven Zustand, was bewirkt, daß die Batterielebensdauer kürzer wird. Normalerweise wäre die Adresse Null, um das gesamte Geschäft aufzuwachen. Dieses Verfahren sollte unter normalen Umständen nicht verwendet werden.
  • Daten, die an die Anzeigemodule gesendet werden, sind in dem Übertragungsdatenfenster in dem folgenden Format:
  • Nibbel 0 - Vorspann 1000 (8)
  • Nibbel 1 - Bits
  • Nibbel 2 - Bits
  • Nibbel 3 - Bits
  • Nibbel 4 - Bits
  • Nibbel 5 - Bits
  • Nibbel 6 - Bits
  • Nibbel 7 - Prüfsumme
  • Die Bits sind die Bits, die an die Anzeigemodule ausgesendet werden. Sie sind in 5 Bit Nibbel formatiert und dann in das Paket komprimiert, so daß jedes Paket 4,8 Modulnibbel enthält.
  • Wiederholung von Übertragungsdaten ist eine Wiederholung der Übertragungsdaten, die einen verschiedenen Vorsprung haben und in dem Wiederholungsübertragungsdatenfenster plaziert sind. Sie sind im folgenden Format:
  • Nibbel 0 - Vorspann 1001 (9)
  • Nibbel 1 - Bits
  • Nibbel 2 - Bits
  • Nibbel 3 - Bits
  • Nibbel 4 - Bits
  • Nibbel 5 - Bits
  • Nibbel 6 - Bits
  • Nibbel 7 - Prüfsumme
  • Das Paketübertragungsende wird in den Übertragungsdaten- und Wiederholungsfenstern plaziert und teilt dem Regalknoten mit, den aktiven Zustand zu verlassen. Es ist in dem folgenden Format:
  • Nibbel 0 - Vorspann 1010 (A)
  • Nibbel 1 - (Ziel)
  • Nibbel 2 - -
  • Nibbel 3 - -
  • Nibbel 4 - -
  • Nibbel 5 - -
  • Nibbel 6 - -
  • Nibbel 7 - Prüfsumme
  • Wenn ein aktiver Regalknoten dieses Paket anstelle der Übertragungsdaten empfängt, geht er in den Bereitschaftszustand. Das zweite Nibbel könnte verwendet werden, ein Ziel anzugeben, entweder Bereitschaft oder Schlafzustände
  • Das Echodatenpaket wird in dem Echofenster plaziert. Wenn ein Regalknoten 24 Bit empfängt, taktet er sie an die Module aus und liest ebenfalls dieselben 24 Bit zurück. Die gelesenen Bit werden in diesem Paket ausgesendet. Das folgende ist das Paketformat:
  • Nibbel 0 - Vorspann 1011 (B) oder 1100 (C) wenn Batterie leer ist
  • Nibbel 1 - Bits
  • Nibbel 2 - Bits
  • Nibbel 3 - Bits
  • Nibbel 4 - Bits
  • Nibbel 5 - Bits
  • Nibbel 6 - Bits
  • Nibbel 7 - Prüfsumme
  • Der Vorspann enthält dem Batteriezustand.
  • Wenn der Regalknoten im Schlaf- oder Bereitschaftszustand ist, und ein Anzeigemodul eine Anforderung aussendet, werden die Bits in dem Anforderungsfenster in diesem Format weitergeleitet:
  • Nibbel 0 - Vorspänn 1101 (D)
  • Nibbel 1 - (Ziel)
  • Nibbel 2 - Bits
  • Nibbel 3 - Bits
  • Nibbel 4 - Bits
  • Nibbel 5 - Bits
  • Nibbel 6 - Bits
  • Nibbel 7 - Prüfsumme
  • Die Aussendung der gesamten Anforderung benötigt vier Pakete. Außerdem wird ein Knoten ID Paket am Ende der vier Modul anforderungen ausgesendet.
  • Das Knoten-ID-Paket ist das fünfte Paket einer Modulanforderung. Es identifiziert die Quelle der Anforderung, so daß der Datenmanager damit ordnungsgemäß umgehen kann. Das folgende ist das Format:
  • Nibbel 0 - Vorspann 1110 (E)
  • Nibbel 1 - Gruppe #
  • Nibbel 2 - Gruppe #
  • Nibbel 3 - Knoten #
  • Nibbel 4 - Knoten #
  • Nibbel 5 - erste Markierungsstelle
  • Nibbel 6 - zweite Markierungsstelle
  • Nibbel 7 - Prüfsumme
  • Wenn ein Knoten keine Adresse hat, wenn eine Anforderung ausgesendet wird, ist die Adresse Null und die Markierungsstellen sind Zufallsstellen von irgendwoher, die verwendet werden, die Knotenzuweisung zu identifizieren, wenn sie kommt.
  • Bei der Umwandlung von dem Breitbandpaketen (Spread Spectrum Paketen) an den Modulbus ist einiger Überhang involviert. Weil der Modulbus an einem Regalknoten die meiste Zeit im Leerlauf ist, ist es erforderlich, irgendeine Übertragung an ein Regal mit 93,9 ms Busrauschen zu beginnen, um zu garantieren, daß alle Module auf einem Regalfach sind. Dieses gleicht 16 24-Bit-Paketen, die ausgesendet werden müssen, um alle Module aufzuwecken. Wenn an das Regal n Modulbuszyklen von Information zu senden sind, bei 35 Bits/Zyklus und 24
  • Bits/Paket, müssen (n * 355) / 24 Pakete gesendet werden. Zusätzlich ist ein weiteres Extrapaket erforderlich, um alle Echodaten zurückzubekommen, eines für zusätzliche Zeit, um zu entscheiden, ob die letzte Bestätigung empfangen wurde, und eines, um den Regalknoten abzuschalten. Somit:
  • Anzahl von Paketen = 19 + (n * 355) / 24
  • Wenn im allgemeinen x verschiedene Bilder an ein bestimmtes Regal zu senden sind, ist n = x + 2. Dieses ist nicht der Fall, wenn die Daten nicht vollständig verschachtelt werden können, und es erforderlich ist, Dummydaten auf dem Bus zu plazieren, um ihn zu stopfen.
  • Wenn beispielsweise ein Bild an einen Regalknoten gesendet werden muß, ist die Anzahl von Buszyklen n=3, so daß 64 Breitbandpakete vorhanden sein müssen. Weil ein Paket alle 5,86 ms gesendet wird, ist die Gesamtzeit für dieses bestimmte Regal gleich 0,375 Sekunden. Wenn in gleicher Weise, ein Bild an jedes von 12 Modulen an ein Regal gesendet wird, ist n=14, und die Anzahl von Paketen ist 227, was 1,33 Sekunden benötigt.
  • Wenn der Datenmanager für lange Zeit inaktiv ist, und alle Anzeigemodule ihre Anzeigen abschalten, wäre es, wenn der Datenmanager auf die Leitung zurückkehrt, ausreichend, ein Bild an jedes Modul in dem Geschäft zu senden, um sie zu reaktivieren.
  • Wenn jedes Regal mit individuellen Aufweckungen geplant wäre, und unter der Annahme, daß ein Regal durchschnittlich sechs Module hat, wären für jedes Regal 0,81 Sekunden erforderlich. Sieht man Extraraum für Neuversuche vor und gibt eine Sekunde pro Regal, und unter der Annahme von durchschnittlich 3333 Regalen pro Geschäft (20000 Module, 6 Module/Regal), kann das gesamte Geschäft innerhalb von einer Stunde zur Normalität zurückkehren. Wenn die durchschnittliche Anzahl von Modulen pro Regal höher ist, nimmt diese Zeit ab.
  • Für eine Preisänderung würden individuelle Aufweckungen benutzt. In einem Fünfminutenfenster ist es wünschenswert, so viele Module wie möglich zu aktualisieren. Wenn an jedes Modul, das eine Preisänderung erfordert, drei Bilder gesendet werden müssen und jedes Modul sich auf einem separaten Regal befindet, wären 14 Modulbuszyklen pro Modul erforderlich, was 227 Pakete ist, 1,33 Sekunden. Wenn pro Regal ungefähr 1,5 Sekunden zugelassen werden, kann erwartet werden, daß 198 Module in einer Fünfminutenperioden aktualisiert werden können. Die Funktionsleistung würde wesentlich steigen, wenn mehr als ein Modul auf jedem Regal wäre.
  • Es mag wünschenswert sein, gelegentlich alle wichtigen Bilder in einem Modul aufzufrischen. Das bevorzugte Verfahren dafür ist, eine bestimmte Gruppe aufzuwecken. Bis zu 2,25 Sekunden könnten für jedes Regal in der Gruppe zugeteilt werden, genug Zeit, um sechs Module aufzufrischen. Wenn in den ersten fünf Minuten nicht genug Zeit war, könnte dieselbe Gruppe nochmals gerufen werden. So ist es möglich, gelegentlich diese Funktion auszuführen, ohne daß Batterielebensdauer geopfert wird.
  • Die Fig. 9A, 9B, 9C und 9D zeigen schematisch die Regalknotenschaltung. Fig. 10 zeigt einen I/O Plan für die Regalknotensteuerung. Der Regalknotencontroller ist bevorzugt ein COP 424 Mikrocontroller. Der Port L wird als vier Bit Ausgang und vier Bit Eingang benutzt. Die Ports L0 bis L3 sind Ausgänge für eine Parallel- nach Seriell-Umwandlung durch HC195. Die Daten werden dann auf den Regalbus gesteuert. Die Ports L4 bis L7 sind Eingänge, von einem weiteren HC195, der den Bus während der Mitte einer jeden Bitzeit abtastet und ein Nibbel von Busaktivität akkumuliert, die der Prozessor dann einem Deckenknoten berichtet. Der Prozessor setzt den Port L jedesmal, wenn er die Ports L4 bis L7 liest, in einen Zustand hoher Impedanz (tristate). Die serielle (microwire) Schnittstelle wird für Kommunikation mit den Sender- und Empfängerchips benutzt.
  • Betrieb des Deckenknotens
  • Eine der Funktionen des Deckenknotens (siehe fig. 11A) ist es, als Puffer zwischen dem Datenmanager und den Breitband HF Kommunikationen zu wirken. Seine Funktionen schließen ein: Unterbrechung des Datenmanagers, wenn Information benötigt wird, Formatieren der Adreß- und Dateninformation in einem Format ähnlich dem Anzeigemodulbusformat, Segmentieren dieses Formates in 24 Bit Pakete zur Ausstrahlung an alle, Empfangen des Echos von den Regalknoten und Extrahieren der Bestätigungen, Weiterleiten von Synchronisationsinformation an die Regalknoten, und Empfangen von Anforderungen von den Regal knoten.
  • Es sind zwei 8-Bit-Parallelports mit Handshake-Leitungen vorgesehen, einer für jede Richtung, die die Kommunikationsverbindung zum Datenmanager bereitstellen. Kommunikation zwischen dem Deckenknoten und dem Datenmanager wird von dem Deckenknoten veranlaßt, der den Datenmanager mit einem Byte unterbricht, das definiert, was geschehen soll. Es gibt lediglich sechs solcher Befehle. Dann findet ein wohldefinierter Datenaustausch statt.
  • Der Deckenknoten arbeitet in fünf Moden. Allein (Standalone), Steuerung, Knotenaufwecken, Knotenübertragung, und Knotenabschaltung. Das folgende ist eine Beschreibung des Betriebs in jedem dieser Moden.
  • Im Allein-Modus gibt der Deckenknoten Synchronisationsinformation in alle Info/Sync-Fenster und nichts in die Datenfenster. Wenn eine Anforderung empfangen wird, wird der Datenmanager unterbrochen und in den Steuermodus eingetreten. Am Ende einer jeden Fünfminutenperiode wird der Datenmanager ebenfalls unterbrochen, und der Datenmanager gibt einen Befehl aus, um entweder in dem Allein-Modus zu bleiben, oder in den Steuermodus überzugehen. Zeitdiagramme für den Deckenknoten sind in dem Fig. 12A, 12B gezeigt.
  • Im Steuermodus wird der Datenmanager für jedes Sync/Info- Fenster unterbrochen. Der Datenmanager kann direkt einen Befehl in das Fenster tun, oder zurück in den Allein-Modus verfallen. Einige der Befehle, etwa Knotenaktivierung oder Knotenzuweisung, veranlassen den Deckenknoten, in den Knotenaufwachmodus überzugehen.
  • Im Knotenaufwachmodus werden Aktivierungsbefehle an einen bestimmten Regalknoten mit Rauschen in den Daten gesendet, bis ein Echo empfangen wird, dann werden 15 weitere Pakete mit Rauschdaten gesendet, wonach in den Knotenübertragungsmodus eingetreten wird. Wenn der Regalknoten nach einigen Versuchen nicht aufwacht, wird in dem Steuermodus eingetreten.
  • Im Knotenübertragungsmodus wird der Datenmanager ungefähr alle 86 ms für eine neue Adresse und Daten unterbrochen, und kurz danach nochmals, um die Bestätigung von dem n-3 Daten zu geben. Ein Direktbefehl veranlaßt, daß in den Knotenabschaltmodus eingetreten wird.
  • Der Knotenabschaltmodus ist der einfachste Modus. Er veranlaßt einfach den gegenwärtigen Regalknoten, einzuschlafen, und gibt dann die Steuerung zurück an dem Steuermodus.
  • Das folgende ist eine Beschreibung des Protokolls für dem Informationsaustausch zwischen dem Deckenknoten und dem Datenmanager. Im allgemeinen gibt der Deckenknoten dem Datenmanager ein oder mehrere Bytes, und dann antwortet der Datenmanager mit Null oder mit mehreren Bytes. 00 5 Minuten Aufwachen - Dieser Befehl wird von dem gegeben, wenn ein 5-Minutenintervall beginnt, und alle Regalknoten lauschen. Der Datenmanager kann wie folgt reagieren: 01 (niedrige Zahl) (hohe Zahl) Steuerung - In diesem Modus interbricht der Deckenknoten den Datenmanager alle 5,86 ms und gibt die Zahl an, die die Anzahl von Paketen bis zur Zeit Null ist. Der Deckenknoten erwartet eine der folgenden Reaktionen:
  • Fig. 11B zeigt ein Blockdiagramm des Deckenknoten- Transceivers.
  • Die Fig. 13A bis 13G zeigen schematisch den Schaltkreis des Deckenknotens.
  • Intelligenter Lesekopf
  • Der intelligente Lesekopf arbeitet wie oben beschrieben, zusammen mit bevorzugt einem speziell programmierten, in der Hand haltbaren Datenendgerät (dem Datenleser). Der intelligente Lesekopf ist schematisch in Fig. 14 gezeigt. Dazugehörige Zeitdiagramme finden sich in den Fig. 15A und 15B.
  • Modul Steuerungssoftware
  • Im folgenden wird mittels Subroutinen die Modulsteuerungsoftware beschrieben, die sich in dem Datenmanagercomputer befindet.
  • PL.PRJ
  • Enthält notwendige Zusätze für das herkmmliche Borland Graphics Programm. EGAVGA.xxx muß verfügbar sein, damit die Software läuft.
  • PL.C
  • Dieses ist die Hauptschleife für das Programm und enthält
  • Initialisierung
  • Schleife:
  • CONSOLE
  • REFRESH
  • ASSIGN
  • PRINTER
  • GATEWAY
  • Schleifenende
  • Initialisierung
  • Dieses besteht aus
  • Erzeugung bestimmter Dateien, falsl sie nicht existieren (Item.Dat, UI.Ndx,)
  • Aufruf von Start_Ceiling(), um die Hintergrund-Hardware- Interrupts zu initialisieren.
  • GATEWAY.C
  • Dieses ermöglicht der Modulsteuerung, Information von dem Gateway Computer zu erhalten.
  • Es läuft in einer Schleife und sucht nach
  • einem Zeitablauf der GatewayException (5 Minuten) oder Modul hat dem Transport einer Struktur beendet
  • Übertragung an die Modulsteuerung veranlassen, um Excp run in posilink zu starten.
  • Nach Antwort suchen,
  • Antwort akzeptieren,
  • Antwort in Datenbanken einsetzen
  • ModuleChanges.LsT
  • Item.Dat
  • für die neu entdeckten Gegenstände, UI.Ndx
  • oder
  • spezifische Tageszeit für GatewayItem
  • Übertragung an die Modulsteuerung veranlassen, um Item run in posilink zu starten
  • Nach Antwort suchen,
  • Antwort in Datenbanken einfügen
  • ModuleChanges.Lst
  • Item.Dat
  • für neu entdeckte Gegenstände, UI.Ndx
  • Der Zugriff auf die Aktualisierung der Aufzeichnung ist nur verfügbar, wenn die Datenbank nicht schon geöffnet ist, d.h., die Konsole im Hauptmenü ist.
  • PLPRINTER
  • Diese enthält die Routine, irgendeine Datei mit dem Namen "PR.Buf" zu nehmen und zeichenweise an dem Drucker zu senden.
  • Sie startet nicht, bis das Flag Printerbufferempty nicht "Y" ist.
  • Sobald die Arbeit erledigt ist, wird das Flag Printerbufferempty auf "Y" gesetzt.
  • Der Zustand dieses Systems ist auf dem Condition Screen sichtbar.
  • LSMODULE: MODULE REFRESH
  • Diese Funktion wartet darauf, daß die Hardware eine weitere Struktur anfordert. Wenn sie mehr als 10 Minuten wartet, Neuinitialisierung des Systems (Start_Ceiling()). Der Test ist Ready_For_Data() 1 ist bereit, 0 ist Bereitschaft.
  • Ein weiterer Test ist ein Aufruf von Ceiling_OK(), 1 ist OK, 0 ruft eine weitere Start_Ceiling() auf und verzweigt zurück zum Warten auf Ready_For_Data().
  • Diese öffnet die Group.Ndx und Image.Dat Dateien. Eine Struktur wird im RAM zur Verwendung von den Hardware Interrupt Routinen erzeugt, um die Auffrischungsnachricht an die Regalknoten und Anzeigemodule zu senden. Ein Aufruf von Queue_Data(...) beginnt den Vorgang.
  • Dann wartet das System auf Data_Ready(). Diese wird von Unqueue_Data() gefolgt, die Pointer auf die Struktur zurückgibt, die die Antwort von dem Regalknoten enthält. Fehlschlagsinformation wird aufgeschrieben mittels eines Aufrufs von Note_Problem (PLProblem)
  • PLMODULE: MODULE ASSIGN
  • Diese Funktion ruft regelmäßige Request_Ready() bis 1 auf, was anzeigt, daß ein Modul eine Zuweisung angefordert hat.
  • Unqueue_Request() gibt UPC und den Regalknoten zurück, bereit zur Übersetzung.
  • Assign-SeqNum(ItemNum, Gruppe, Knoten) wird aufgerufen. Wenn der Regalknoten selbst neu ist, (Gruppe & Knoten sind beide 0), wird ihm die nächste Adresse zugewiesen. In beiden Fällen wird eine neue Aufzeichnung in der Image.Dat Datei beiseitegelegt, um das Bild zu halten.
  • Das neu aufgezeichnete Bild wird dann unter Verwendung von Item.Dat Information ausgefüllt.
  • Insert_Assignment() wird mit einer Struktur zur Programmierung des Moduls aufgerufen.
  • Warten auf Assignment_Ready(). Wenn fertig (1), gibt Unqueue Assignment() die Daten zurück, oder NULL für einen erneuten Versuch.
  • Dann
  • Dieses öffnet Item.Dat und UI.Ndx.
  • Dieses öffnet die Dateien Group.Ndx und Image.Dat. Im RAM wird eine Struktur zur Verwendung von den Hardware Unterbrechungsroutinen erzeugt, um die Zuweisungsnachricht an die Regalknoten und die Anzeigemodule zu senden. Fehlschlagsinformation wird mittels eines Aufrufs von Note_Problem (Plproblem) aufgeschrieben.
  • PLCONSOLE
  • Dieses ist der Hauptpunkt der Schnittstelle zum Menschen.
  • Das Hauptmenü erlaubt die folgenden Auswahlen:
  • Condition Screen
  • Item File Menü.
  • Dieses enthält viele der Routinen, um mit der Datei Item.Dat und ihrem Index UI.Ndx umzugehen. Die Daten in der Datei werden chronologisch hinzugefügt, werden jedoch mittels des UPC Codes indexiert gehalten. Die meisten Routinen greifen auf die Item Datei unter Verwendung eines binären Chop auf dem Index zu.
  • Spezielle Funktionen auf dem Item Screen:
  • Gegenstand anschauen
  • Dieses ermöglicht die Eingabe eines UPC Codes und die Anzeige der Item.Dat Dateimformation über das Produkt auf dem Schirm. Zusätzliche UPC Codes können eingegeben werden, um folgende Anzeigen zu erhalten.
  • Edit Item
  • Dieses erlaubt die Eingabe eines UPC Codes und die Editierung der Item.Dat Dateimformation über das Produkt Zeile für Zeile. Jede abgeschlossene Editierung sendet die Steuerung zurück zum Menü.
  • Add Item
  • Dieses erlaubt die Eingabe eines UPC Codes und dann die Eingabe der Daten dafür, falls er nicht existiert.
  • Delete Item
  • Dieses erlaubt die Eingabe eines UPC Codes, einen Blick auf die Daten in Item.Dat, und die Option, die Aufzeichnung aus der Datei UI.Ndx zu löschen. Dieses wird durch Setzen der Aufzeichnungsnummer in UI.Ndx auf 0xffff vorgenommen.
  • Back to Menu
  • Base Item File Menu
  • Dieses erlaubt die Eingabe eines UPC Codes und die Herstellung eines Bezugs zu einem anderen UPC Code für dasselbe Produkt. Im Fall eines Schildes "Cents Off" zeigt das Modul dem regulären Preis an.
  • Es erlaubt ebenfalls, diese Beziehungen zu editieren und aufzulisten.
  • Stock File Menu
  • Dieses erlaubt die Eingabe eines UPC Codes, und die Herstellung eines Bezugs zu einer Lagernummer für dasselbe Produkt.
  • Report Menu
  • Dieses erlaubt die Auswahl eines zu erzeugenden Berichtes.
  • Optionen von dem Berichtschirm schließen ein:
  • Item List
  • Dieses berichtet alle Produkte in der UPC Reihenfolge. Transmission Sequence List
  • Dieses berichtet alle Module in der Reihenfolge der Auffrischungsübertragung, d.h., nach Gruppe, Regalknoten, dann jedes Modul in der Reihenfolge, in der sie zugewiesen wurden.
  • Weil die Regalknoten in einer vernünftig konsistenten Reihenfolge installiert werden, mit Ausnahme derjenigen, die ausfallen und ersetzt werden müssen, folgt die Reihenfolge einer Struktur, in der eine Person durch das Geschäft gehen kann.
  • Low Battery List
  • Dieses berichtet alle Anzeigemodule (in der Reihenfolge der Auffrischungsübertragung), die ein Batterie-Leer-Signal gegeben haben. Das erste Anzeigemodul auf dem Regalknoten ist der Schlüssel, jedoch werden auch alle anderen Anzeigemodule auf dem Regalknoten aufgelistet, um es leicht zu machen, den Regalknoten zu finden.
  • Siehe PLProblem, wo sich die Funktion LwoBattery_List befindet, Siehe PLRefresh, die Note_Problem (PLProblem) aufruft, immer wenn ein Flag Batterie Leer gefunden wird.
  • Retry Needed Liste
  • Dieser Bericht ist derselbe wie die Batterie-Leer-Liste, außer daß er Anzeigemodule mit Kommunikationsproblemen in einem Ausmaß von gelegentlich verfehlten Übertragungen bis zu vollständig vorloren gegangener Kommunikation berichtet.
  • Failed to Answer Liste
  • Dieser Bericht ist derselbe wie die Retry Needed Liste, außer daß er nur Anzeigemodule berichtet, die wenigstens einmal ausgefallen sind.
  • Shelf Changes Liste
  • Irgendeine Regaländerung: neues Anzeigemodul, ausgefallenes Anzeigemodul
  • Item Changes Liste
  • Dieser Bericht enthält eine Aufzeichnung aller letzten Änderungen an irgendeiner Aufzeichnung in der Item Datei.
  • Back to Menu
  • HouseKeeping Menu
  • Diese Funktionsgruppe erlaubt eine Konfiguration und ein Aufräumen des Systems zu verschiedenen Zeiten unter Steuerung des Bedieners.
  • Show Mode
  • Dieser Modus erlaubt, daß alle Regalknoten bereitstehen, eine Eingabe anzunehmen. Er konsumiert sehr viel Batterieleistung, so daß er in der Praxis nicht benutzt wird. (On_Show())
  • Dieser Modus kann mit einem Aufruf von Off_Show abgeschaltet werden.
  • Exception Scanning Time
  • Dieses ist die Dauer zwischen der Aktivierung des Gateways, die über Posilink zugänglichen Excp Aufzeichnungen mit dem Item.Dat Aufzeichnungen zu vergleichen.
  • Die Anzahl wird auf das nächste Vielfache von Auffrischungszyklen gerundet. Die Anzahl wird dekrementiert, wenn Ready_Data eine 1 zurückgegeben hat, oder wenn ein 5,5- Minunten-Zeitgeber (Auffrischung #2) abgelaufen ist, was anzeigt, daß voll. Er kann nur gestartet werden, nachdem gerade ein Queue_Data eine neue Aufgabe an die Hardware gesendet hat, oder nach einem Zeitablauf.
  • Sie benutzt Zeitgeber Nr. 4.
  • Item Scanning Time
  • Dieses erlaubt, die Anzahl von Tagen und die Tageszeit für dem Beginn des Gateway Item Prozesses zu editieren.
  • Tstamp = 1989-04-12 23:45, wir nehmen 23:45 für eine Übereinstimmung heraus
  • Lost Module Clearing
  • Dieses erlaubt die Option, einfach alle verlorenen Anzeigemodule zu löschen, d.h. ein Anzeigemodul, das bei acht Durchläufen nicht kommuniziert hat.
  • Eine weitere Option ist, alle Anzeigemodule anzuzeigen, aktive und ausgefallene, für einen UPC Code, und nach einer Löschung oder Fortsetzung bei jedem zu fragen, das mehr als achtmal nicht kommuniziert hat. Die Anzeigemodule werden in der Gruppenreihenfolge präsentiert, wobei andere Anzeigemodule auf demselben Regal auch sichtbar sind.
  • Low Battery Restart
  • Dieses setzt die Batterie leer Zähler auf 0, unter der Annahme, daß bei den meisten Problemen neue Batterien gegeben worden sind.
  • Comm Problem Restart
  • Dieses löscht die Lost Comm und Comm Problem Zähler, tyisch nach einem Bericht. Das Ergebnis ist, einen erneuten Versuch zuzulassen, nachdem Probleme beseitigt sind.
  • Quit
  • Diese Anweisung wird nicht immer ohne Passwort verfügbar sein, und erfordert in Kürze eine Bestätigung. Sie schaltet das gesamte System ab.
  • PLSTRUCT
  • Dieses enthält alle Definitionen der globalen Variablen und Notizen über lokale Variablen und Notizen über zu verwendende Dateien.
  • PLSCREEN & PLMOUSE
  • Diese Datei enthält alle Routinen zum Verwalten des Bildschirms im Graphikmodus, Akzeptieren von Zeichen und Mouse-Eingaben.
  • Gateway Computer
  • Der Geschäft Gateway Computer 54 (siehe Fig. 1) ist die Schnittstelle zwischen allen Teilen des Systems: Der Regionalcomputer 46 (d.h., Host Computer) (ein Mainframe), die POS Steuerung 50 und die Pricelink Display Modul- Steuerung 42.
  • Andere Fähigkeiten umfassen die Verwaltung der gesamten Kommunikation vom Regionalcomputer an die POS Steuerung. Sie verwaltet ebenfalls die Kommunikation für andere Computer im Geschäft, wie etwa in der Apotheke.
  • Die Gateway Funktion ist aufgrund des Fehlens von Information über den Datachecker POS Kommunikations Standard vorgesehen. Die verfügbare Software übernimmt die vollständige Steuerung des Systems, die auf ein Echtzeitprotokoll aktualisiert werden muß, bevor sie in die PriceLink Modul Steuerungs- Software integriert werden kann.
  • In einem alternativen Ausführungsbeispiel sind die Funktionen des Gateway Computers 54 in die PriceLink Modulsteuerung 42 integriert.
  • Die vier Funktionen des Gateway Computers sind die folgenden:
  • Während der Exception226 Aktivität und während der ItemVerify Aktivität wird die POS-Steuerung befragt. In jedem Fall wird die Anforerung an die POS-Steuerung gesendet, dann wird die Antwort empfangen, übersetzt, dann erneut an die Modulsteuerung übertragen.
  • Während der UnitPrice Aktivität wird der Host Computer befragt. An ihn werden Anforderungen übertragen und Antworten zurückerhalten
  • Die Kommunikation findet über ein Bell 201 kompatibles Modem statt, etwa die Modems 46B, 46C.
  • Die Zeitgabe der Exception226 Aktivität und der ItemVerify Aktivität wird in der Modulsteuerung bestimmt. Wenn ein Zyklus gewünscht ist, wird eine Nachricht an den Gateway Computer gesendet, der Gateway Computer sammelt die gewünschte Information, und dann werden später die Ergebnisse zurück an die Modulsteuerung übertragen.
  • Die Zeitgabe für die Unitprice Aktivität wird in der Modulsteuerung bestimmt. Wenn ein Zyklus gewünscht ist, wird eine Nachricht an den Gateway Computer gesendet, der Gateway Computer zeigt seine "modem switching" Bedürfnisse und wartet auf die Tastatureingabe, um anzuzeigen, daß die Leitung umgeschaltet worden ist, wiedergewinnt dann die gewünschten Daten, und dann werden die Ergebnisse zurück an die Modulsteuerung übertragen.
  • Die Aktivitäten des Gateway Computers können sowohl überwacht werden, als auch über die Tastatur und Anzeige an dem Computer gesteuert werden. Irgendwelche der Funktionen, die auf Befehl von der Modulsteuerung hin gestartet werden können, können von der Konsole gestartet werden.
  • Preisänderungen, die in dem Geschäft mittels des Datenverwaltungscomputers oder von dem Host Computer vorgenommen werden, resultieren darin, daß eine Aufzeichnung dem Exception Log hinzugefügt wird, wobei die "226" Identifizierung angefügt wird. Mit einem programmierbaren Versatz, von der grundlegenden Fünfminutenzeitgabe der Aktivitäten der Modulsteuerung, und mit einem wählbaren Vielfachen dieser grundlegenden Zeitgabezyklen fordert die Modulsteuerung eine Aktualisierung der "226" Aufzeichnungen des Exception Log an.
  • Bis jetzt werden alle "226" Aufzeichnungen in den Exception Log jedesmal übertragen. Es wird angenommen, daß dieses eine kleine Zahl ist, und daß die redundante Übertragung der Daten kein Zeitproblem erzeugt. Falls es ein Problem wird, wird ein Verfahren zum Erkennen, welche Aufzeichnungen bereits gesendet worden sind, ins Auge gefaßt, und es werden nur neue Änderungen gesendet.
  • Die Möglichkeit von Änderungen, die die Exception 226 Funktion umgehen, ist relativ niedrig, kann jedoch insbesondere beim Aufstarten nicht ignoriert werden. Es können neue Gegenstände auftreten, und alte Gegenstände können gelöscht worden sein. Aus diesem Grund wird von dem Gateway Computer bei der Aufforderung der Modulsteuerung eine vollständige Übertragung aller Aufzeichnungen in der Gegenstandsdatei der POS Steuerung angefordert. Diese Daten werden von irrelevanten Feldern befreit und dann zurück an die Modulsteuerung übertragen, zur Verwendung bei der Aktualisierung ihrer Gegenstandsaufzeichnungen.
  • Die Modulsteuerung kann programmiert sein, anzufordern, daß diese Funktion zu einer wählbaren Tageszeit durchgeführt wird (d.h., 6:00 AM) im Abstand von irgendeiner Anzahl von Tagen (d.h., 1 oder 7).
  • CONSOLE
  • Die Konsolenfunktionen umfassen das folgende:
  • Der Hauptbereitschaftsschirm zeigt irgendeine stattfindende Aktivität an, entweder auf oberstem Niveau (EXCP226 schreitet voran) oder auf einem detaillierteren Niveau einschließlich vollständiger Aufzeichnungsinformation. Der volle Anzeigemodus kann ein- oder ausgeschaltet werden durch Drücken von "D". Dieser Bildschirm lädt den Bediener ein, die Leertaste zu drücken, um ein Menü aufzurufen: Den Console Activity Schirm.
  • Das Console Activity Menü erlaubt dem Bediener, aus den Aktivitäten auszuwählen, die gegenwärtig erlaubt sind, und QUIT, was nicht empfohlen wird.
  • Auswählen von "E" resultiert im Aufruf von POSiLink. Die Steuerung des Computers wird dann an die POSiLink Software und dem Bediener an der Konsole übergeben, bis diese Aktivität beendet ist. Die automatischen Funktionen treten nicht auf, bis dieser Modus beendet ist. Durch Nachlässigkeit könnte das System unfähig bleiben, seine regelmäßigen Aufgaben durchzuführen.
  • Auswählen von "X" resultiert in der Simulation einer Anforderung von der Modulsteuerung nach einer Eception 226 Aktivität. Die empfangenen Daten und die für die Übertragung an die Modulsteuerung formatierte Nachricht geht anstelle an die Modulsteuerung in Dateien. Der Bediener muß die Dateinamen-Suffixe wählen, die Prefixe sind automatisch. Dann wird die Information, wie sie empfangen wird, an den Bildschirm gesendet, oder nicht, abhängig von der "D" Umschaltung.
  • Wahrscheinlich wählt der Bediener für den Suffix eine Nummer.
  • Das Ergebnis ist
  • EXCP226I.xxx für die Eingabe von dem POS
  • EXCP226D.xxx für die Ausgabe an das Modul.
  • Auswählen von "I" resultiert in der Simulation einer Anforderung von der Modulsteuerung für eine Gegenstandsverifizierungsaktivität. Die empfangenen Daten und die für die Übertragung an die Modulsteuerung formatierte
  • Nachricht geht in Dateien, anstatt an die Modulsteuerung. Der Bediener muß die Dateinamen-Suffixe wählen, die Prefixe sind automatisch. Die Information wird, wie sie empfangen wird, an dem Bildschirm gesendet oder nicht, abhängig von der "D" Umschaltung.
  • Wahrscheinlich wird der Bediener eine Nummer für den Suffix wählen.
  • Das Ergebnis ist
  • ITEMVERI.xxx für die Eingabe von der POS
  • ITEVVERO.xxx für die Ausgabe an das Modul.
  • Wählen von "U" resultiert in der Simulation einer Anforderung von der Modulsteuerung zu einer Einheitspreisverifizierungsaktivität. Die empfangenen Daten und die für die Übertragung an die Modulsteuerung formatierte Nachricht geht in Dateien, anstatt an die Modulsteuerung. Der Bediener muß die Dateinamen-Suffixe wählen, die Prefixe sind automatisch. Die Information wird, wie sie empfangen, wird an dem Bildschirm gesendet, oder nicht, abhängig von der Umschaltung "D".
  • Der Bediener wählt wahrscheinlich eine Nummer für den Suffix.
  • Das Ergebnis ist "UNITVERI.xxx für die Eingabe von dem Mainframe "UNITVERO.xxx für die Ausgabe an das Modul.
  • Wenn von der Konsole keine Aktivität imminent ist, sollte der Benutzer die Leertaste oder "S" drücken, um zurückzukehren zum Bereitschaftsmenü.
  • Es wird abgeraten, "Alt-Q" zu wählen, weil es während des Normalbetriebs nicht die richtige Wahl ist. Es ist jedoch während der Fehlersuche nützlich, um zu DOS zu kommen, um einige der oben erzeugten Dateien einzusehen.
  • Das Datachecker Software Paket Posilink wird in der folgenden Weise von DOS aufgerufen:
  • POSILINK EXCP226.KST
  • Dieses bewirkt das Laden und Ausführen von POSiLink, gefolgt von der Verwendung von "Tastenanschlägen" von der Datei
  • "EXCP226.KST"
  • Die Datei "EXCP226.KST" enthält das folgende:
  • SET FILE ON
  • SET PRINT OFF
  • SET SCREEN OFF
  • BATCH FROM EXCP226.CMD TO EXCP226.OUT
  • SET SCREEN ON
  • EXIT
  • Die Datei "EXCP226.CMD" enthält das folgende:
  • /C Manager change of item price
  • /READ EXCP ( 1=226
  • Dieses veranlaßt die Posilink Software, irgendwelche Aufzeichnungen in dem Exception.Log ( EXCP ) mit Feld 1 = 226 Manager Preis Änderung ) einzusehen, und sie in eine Datei mit dem Namen EXCP226.OUT zu bringen.
  • Das Datachecker Sqftware Paket Posilink wird von DOS in der folgenden Weise aufgerufen:
  • POSILINK ITEMVER.KST
  • Dieses veranlaßt das Laden und Ausführen von Posilink, gefolgt von der Verwendung von "Tastenanschlägen" von der Datei "ITEMVER.KST".
  • Die Datei ITEMVER.KST" enthält das folgende:
  • SET FILE ON
  • SET PRINT OFF
  • SET SCREEN OFF
  • BATCH FRON ITEMVER.CMD TO ITEMVER.OUT
  • SET SCREEN ON
  • EXIT
  • Die Datei "ITEMVER.CMD" enthält das folgende:
  • /C Dump full image of item file
  • /READ ITEM
  • Dieses veranlaßt die POSiLink Software, alle Aufzeichnungen in der Gegenstandsdatei ( ITEM ) einzuseshen und sie in eine Datei mit dem Namen ITEMVER.OUT zu bringen.
  • Die Befehle, um die Einheitspreisaktivität durchzuführen, werden zusammen mit den Programmierern für dem Mainframe bestimmt.
  • EXCEPTION 226 sind die Daten in der Datei "EXCP226.OUT", wie sie von der Posilink Applikation empfangen wird.
  • PRICE CHANGE sind die Daten in dem Format, das am Ende einer Exception 226 Aktivität an die Modulsteuerung gesendet wird.
  • POS ITEM RECORD sind die Daten in der Datei "ITEMVER.OUT", wie sie von der Posilink Applikation empfangen werden.
  • ITEM VERIFY RECORD sind die Daten in dem Format, das an die Modulsteuerung am Ende einer Gegenstandsverifizierungsaktivität gesendet wird.
  • UNITS RECORD sind die Daten in der Datei "UNITS.OUT", wie sie von dem Regional Computer nach der Einheitspreisaktivität empfangen werden.
  • ( Wählen Sie ein Format, das eine Teilmenge des folgenden darstellt, was Sie zur Hand haben, in welchem Format auch immer, das Sie auf der Bitebene beschreiben können, möglicherweise ASCII mit fester Feldlänge oder EBCDIC. )
  • struct unithost
  • UNITS VERIFY REDORD sind die Daten in dem Format, das am Ende einer Einheitspreisaktivität an die Modulsteuerung gesendet wird.
  • MODULE CONTROLLER ITEM RECORD ist das Format der Daten in der Gegenstandsdatei, die in der Modulsteuerung gespeichert wird.
  • Diese Offenbarung enthält urheberrechtsfähiges Material. Während der Inhaber des Urheberrechts keine Einwände gegen die Facsimile-Reproduktion von irgendwelchem Material in den Aufzeichnungen des Patentamts hat, reserviert der Inhaber des Urheberrechts alle anderen Urheberrechte.

Claims (4)

1. Anzeigemodul, umfasend eine Anzeige (10G) zum Anzeigen von Informationen, ein optisches Mittel zum Erfassen der Lichtstärke und ein Mittel zum Anzeigen von Informationen auf der Anzeige in Reaktion auf eine vorbestimmte Lichtstärke, die von dem optischen Mittel erfaßt wird, gekennzeichnet durch ein Mittel zum Erfassen einer vorbestimmten Bedingung sowie ein Mittel, das bewirkt, daß das Mittel zur Anzeige nur dann auf die Überschreitung einer bestimmten Lichtstärke anspricht, wenn die vorbestimmte Bedingung eingetreten ist.
2. Anzeigemodul nach Anspruch 1, bei dem die vorbestimmte Bedingung eine vorbestimmte Folge von Lichtstärken ist, die von dem optischen Mittel erfaßt werden.
3. Anzeigemodul nach Anspruch 1 oder 2, das an einen Empfänger zum Empfangen von Informationen von einem Sendemittel angeschlossen wird, die von dem Anzeigemodul angezeigt werden sollen.
4. Anzeigemodul nach einem der vorhergehenden Ansprüche im Einbau in einer Ausnehmung in einer Regalschiene für die Montage auf einem Regal, wobei die Regalschiene eine Mehrzahl elektrisch an das Anzeigemodul angeschlossener Stromkabel aufweist, und wobei eine Mehrzahl von Federn zwischen dem Anzeigemodul und der Regalschiene vorgesehen ist.
DE1990629874 1989-05-05 1990-05-03 Nachrichtenanzeigesystem Expired - Fee Related DE69029874T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US34835589A 1989-05-05 1989-05-05

Publications (2)

Publication Number Publication Date
DE69029874D1 DE69029874D1 (de) 1997-03-20
DE69029874T2 true DE69029874T2 (de) 1997-08-28

Family

ID=23367653

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1990629874 Expired - Fee Related DE69029874T2 (de) 1989-05-05 1990-05-03 Nachrichtenanzeigesystem

Country Status (5)

Country Link
EP (1) EP0396414B1 (de)
JP (1) JPH03282581A (de)
AU (1) AU629927B2 (de)
CA (1) CA2015851C (de)
DE (1) DE69029874T2 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE29817429U1 (de) 1998-09-29 1998-12-03 Kienle, Bernhard, 86923 Finning Vorrichtung zur Erfassung von Kaufaufträgen für Produkte
DE102007051416A1 (de) * 2007-09-06 2009-03-12 Hrastnik Gmbh & Co. Kg Halteschiene für LCD-Preisschilder

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9025017D0 (en) * 1990-11-16 1991-01-02 Clares Equip Ltd Labelling system
EP0497533A3 (de) * 1991-01-28 1995-04-05 NCR International, Inc. Elektronisches Preisanzeigesystem
DK52091D0 (da) * 1991-03-22 1991-03-22 Esel Krabbe Systems As Informationssystem
US5461561A (en) * 1991-09-10 1995-10-24 Electronic Retailing Systems International Inc. System for recognizing display devices
US5473832A (en) * 1992-10-23 1995-12-12 Electronic Retailing Information Systems Int'l Inc. Non-slidable display label
SE470541B (sv) * 1992-11-13 1994-07-25 Pricer Norden Ab Förfarande för omkoppling av funktionsmod i en displayenhet och displayenhet för utförande av förfarandet
SE500607C2 (sv) * 1992-11-13 1994-07-25 Pricer Norden Ab System för överföring av information från en kontrollenhet med en sändare till minst en displayenhet
US5632010A (en) * 1992-12-22 1997-05-20 Electronic Retailing Systems, Inc. Technique for communicating with electronic labels in an electronic price display system
US5553412A (en) * 1993-03-25 1996-09-10 Electronic Retailing Systems International, Inc. Information display rail system
US5348485A (en) * 1993-04-12 1994-09-20 Electronic Retailing Systems Int'l Inc. Electronic price display system with vertical rail
US5841365A (en) * 1993-09-22 1998-11-24 Seattle Silicon Corporation Method and apparatus for communicating with a product label
FR2716553B1 (fr) * 1994-02-21 1996-05-10 Thierry Piot Etiquetage informatisé d'un produit dans une surface de vente au public.
IT1271744B (it) * 1994-03-15 1997-06-09 Marco Faita Dispositivo elettronico per la visualizzazione a distanza di informazioni
DE4439074C2 (de) * 1994-11-02 1998-09-17 Pricer Ab Anlage zur elektronischen Preisanzeige
US5729696A (en) * 1995-06-13 1998-03-17 Ncr Corporation Transaction data recovery system and method
US5663963A (en) * 1995-07-17 1997-09-02 Ncr Corporation Method for detecting and reporting failures in EPL systems
US5758064A (en) * 1996-03-26 1998-05-26 Ncr Corporation Method of diagnosing communication problems of electronic price labels
GB9621650D0 (en) * 1996-10-17 1996-12-11 Telepanel Sysems Inc Remotely controlled electronic display modules
US5794215A (en) * 1996-11-13 1998-08-11 Ncr Corporation Method of optimizing electronic price label systems
US6009538A (en) * 1997-04-22 1999-12-28 Ncr Corporation System and method of reporting a status of another system through an electronic price label system
DE19730051A1 (de) * 1997-07-14 1999-02-04 Meonic Sys Eng Gmbh Vorrichtung und Verfahren zum Anzeigen von Preisen und Artikelbezeichnungen an Warenträgern
ES2138929B1 (es) * 1998-03-03 2000-09-01 Guzman Javier Merida Procedimiento de marcaje de precios en etiquetas de articulos de venta y etiqueta correspondiente.
US6764002B1 (en) 1998-09-01 2004-07-20 Ncr Corporation System and method of displaying random weight item information by electronic price labels
DE10102196A1 (de) * 2001-01-18 2002-07-25 Printoplast Ag Affoltern Preisanzeigesystem
FR2843037B1 (fr) 2002-08-01 2006-01-27 Salomon Sa Ensemble de retenue d'une chaussure sur une planche de glisse
SE0400556D0 (sv) * 2004-03-05 2004-03-05 Pricer Ab Electronic shelf labelling system, electronic label, handheld device and method in an electronic labelling system
US7382228B2 (en) 2005-11-22 2008-06-03 Ncr Corporation Methods and apparatus for identifying electronic shelf labels with which communication has been lost
CN103593766A (zh) * 2012-08-17 2014-02-19 纽海信息技术(上海)有限公司 价格提醒装置及方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4002886A (en) * 1975-06-20 1977-01-11 Ronald Murl Sundelin Electronic price display unit
US4434510A (en) * 1978-03-10 1984-02-28 Lemelson Jerome H Communication system and method
US4500880A (en) * 1981-07-06 1985-02-19 Motorola, Inc. Real time, computer-driven retail pricing display system
EP0108751A1 (de) * 1982-05-21 1984-05-23 PITRODA, Satyan Gangaram System mit entferntem rechnerdateneingabegerät, damit verbundene vorrichtung und verfahren zu dessen anwendung
JPS60101788U (ja) * 1983-12-16 1985-07-11 北川工業株式会社 電子表示板用固定具
DE3424162A1 (de) * 1984-06-30 1986-01-23 Heinz Georg Hünibach Thun Baus Produktinformations- und display-system
SE8405140L (sv) * 1984-10-15 1985-10-07 Makoson Ab Anordning for hyllkantmerkning
US4821291A (en) * 1986-09-22 1989-04-11 Stevens John K Improvements in or relating to signal communication systems
US4766295A (en) * 1987-03-02 1988-08-23 H.E. Butt Grocery Company Electronic pricing display system
CH674275A5 (de) * 1987-07-15 1990-05-15 Zellweger Telecomm Ag

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE29817429U1 (de) 1998-09-29 1998-12-03 Kienle, Bernhard, 86923 Finning Vorrichtung zur Erfassung von Kaufaufträgen für Produkte
DE102007051416A1 (de) * 2007-09-06 2009-03-12 Hrastnik Gmbh & Co. Kg Halteschiene für LCD-Preisschilder

Also Published As

Publication number Publication date
EP0396414A2 (de) 1990-11-07
AU5398490A (en) 1990-11-29
DE69029874D1 (de) 1997-03-20
JPH03282581A (ja) 1991-12-12
EP0396414A3 (de) 1992-05-13
CA2015851C (en) 2001-07-03
AU629927B2 (en) 1992-10-15
CA2015851A1 (en) 1990-11-05
EP0396414B1 (de) 1997-02-05

Similar Documents

Publication Publication Date Title
DE69029874T2 (de) Nachrichtenanzeigesystem
US5198644A (en) System for display of prices and related method
DE3889246T4 (de) Übertragungssystem für einen Kochrechner.
DE3855599T2 (de) System, das die Auswechselbarkeit der peripheren Einheiten ermöglicht
DE602005005545T2 (de) Drahtloses System mit elektronischen Preisetiketten
DE60032405T2 (de) Anordnung zur Patientenüberwachung mit bidirektionaler Kommunikation
DE69332940T2 (de) System mit einer Prozessorschnittstelle für ein Tablettcomputer
DE2517831C3 (de) Datenkommunikationssystem
DE69814438T2 (de) Elektronisches etikett mit hf-modem zur überwachung der leistung eines fahrzeugs, mit filterung
CH680398A5 (en) Portable bar cod data input-transmission appts.
DE4019519A1 (de) Verbesserte vorrichtung und protokoll fuer ein lokales netzwerk
DE3586678T2 (de) Flexibel anwendbares serielles interface-system fuer eine verbindung zwischen einer und mehreren einheiten.
DE4230011A1 (de) Geraet und verfahren zum identifizieren einer person oder eines gegenstandes an einem bestimmten ort
DE20016230U1 (de) Drahtlose Glühbirnen-Fernsteuervorrichtung
DE69834620T2 (de) Kommunikationsvorrichtung und -verfahren für ein elektronisches Preisschildsystem
DE68912592T2 (de) Anordnung für ein markierungssystem.
CH673164A5 (en) Operating data recording system with portable induct terminals - deposited in stationary data evaluation device to allow transfer of entered data
DE3851841T2 (de) Mikrorechnergesteuerte anzeigerückbeleuchtung.
EP0122218A2 (de) Steueranordnung für ein Umlaufregal
DE69632432T2 (de) Elektronisches Preisschild-System
EP0128123A1 (de) Handgerät zur Aufnahme, Speicherung und Übermittlung von Daten und Anwendung dieses Handgerätes als Wächteruhr
DE2551204B2 (de) Schaltungsanordnung zur Herstellung von Datenverbindungen in Datenvermittlungsanlagen
DE3736903A1 (de) Anordnung zur uebertragung von daten
DE69111579T2 (de) Anwesenheitsnachweissystem in einem Regal einer tragbaren Einheit mit Fähigkeit zum Senden oder Empfangen eines eine Ausweiszahl enthaltenden Signals.
DE3587056T2 (de) Vorrichtung mit modularer bauweise.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee
8370 Indication related to discontinuation of the patent is to be deleted
8339 Ceased/non-payment of the annual fee