-
ALLGEMEINER
STAND DER TECHNIK
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf einen Drucker, ein Druckersystem,
ein Drucksteuerverfahren und ein Speichermedium, auf dem ein Druckersteuerprogramm
gespeichert wird, um einen Drucker zu steuern; und insbesondere
auf einen Drucker, der empfangene Druckdaten verarbeitet, um Bilddaten
zu erzeugen und um die Bilddaten aktuell auf ein Aufzeichnungsmedium
zu drucken, wie auf ein Blatt Papier; auf ein Druckersystem, das
ein vorbestimmtes Übertragungsmedium
verwendet, um den oben beschriebenen Drucker mit einem Host zu verbinden,
der Druckdaten gemäß Befehlen
erzeugt, die ein Anwender abgibt; auf ein Verfahren zur Druckersteuerung
für den
oben beschriebenen Drucker; auf ein Speichermedium, das ein Druckersteuerprogramm
zum Steuern des oben beschriebenen Druckers speichert; und auf eine
Sendeeinrichtung, die ein Steuerprogramm des oben beschriebenen
Druckers sendet.
-
Zum Stand
der Technik
-
Ein
herkömmliches
Druckersystem, das aufgebaut ist aus einem Host und dem zuvor beschriebenen
Drucker, ist nicht nur gefragt, es dem Drucker zu ermöglichen,
Druckdaten zu drucken, die der Host erzeugt, sondern auch um Informationen
zu erhalten, die den Drucker vom Host betreffen und um die Druckerumgebung
einzustellen. Gegenwärtig
werden viele Druckersysteme hergestellt, die diesen Anforderungen
entsprechen.
-
23 ist
ein Funktionsblockdiagramm, das die Anordnung eines herkömmlichen
Druckersystems darstellt, das Informationen bezüglich eines Druckers aus einem
Host gewinnt und die Druckerumgebung einstellt. Beim herkömmlichen
Druckersystem sind ein Host 2300 und ein Drucker 2350 miteinander über ein
spezielles Übertragungsmedium 2380 verbunden.
-
Der
Host 2300 enthält
eine Anwendungseinheit 2301, einen Druckertreiber 2302,
einen Ausgangspuffer 2303, einen I/F-Treiber (Schnittstellentreiber) 2304 und
eine Diensteinheit 2305.
-
Die
Anwendereinheit 2301 stellt eine Graphikanwenderschnittstelle
für den
Anwender bereit und erzeugt Bilddaten, die der Absicht des Anwender
angepaßt
sind. Der Druckertreiber 2302 übersetzt Bilddaten, die die
Anwendereinheit 2301 erzeugt, in Seitenbeschreibungssprachdaten
(werden nachstehend als "PDL"-Daten bezeichnet),
die der Drucker 2350 drucken kann.
-
Der
Ausgangspuffer 2303 wird verwendet zum zeitweiligen Speichern
der PDL-Daten, die der Druckertreiber 2302 erzeugt. Der
I/F-Treiber 2304 sendet die PDL-Daten an den Drucker 2350,
die im Ausgangspuffer 2303 gespeichert werden, und tauscht
verschiedene Arten von Informationen mit dem Drucker 2350 aus,
um Informationen für
den Drucker 2350 zu gewinnen oder um die Druckerumgebung
einzustellen. Die Diensteinheit 2305 nimmt Informationen
bezüglich
des Druckers 2350 herein und sendet diese der Graphikanwenderschnittstelle oder ändert einen
Druckauftrag oder eine Einstellung des Druckers 2350 gemäß einem
vom Anwender abgegebenen Befehl.
-
Der
Drucker 2350 verfügt über einen
I/F-Treiber 2351, einen Eingangspuffer 2352, ein
JCL-Analysesystem (Arbeitssteuersprachenanalysesystem) 2353,
einen PDL-Übersetzer 2354,
einen Zeichnungspuffer 2355, eine Zeichnungseinheit 2356,
eine Druckermaschine 2357 und über eine Datenbank 2358.
-
Der
I/F-Treiber 2351 empfängt
PDL-Daten aus dem Host 2300 und tauscht Informationen mit dem
Host aus, um eine Information bezüglich des Druckers 2350 zu
erhalten oder um die Umgebung einzustellen. Der Eingangspuffer 2352 wird
zum zeitweiligen Speichern von Daten verwendet, die vom I/F-Treiber 2351 empfangen
werden, und dient als Pufferspeicher zum Verzögern der Verarbeitung, die in
der nachfolgenden Stufe erfolgt.
-
Das
JCL-Analysesystem 2353 analysiert die empfangenen Daten,
und zur Zuordnung der Verarbeitung wird eine vorbestimmte JCL verwendet,
um zu bestimmen, ob eine Informationsanforderung oder eine Umgebungseinstellanforderung
für den
Drucker 2350 empfangen worden ist, oder ob PDL-Daten empfangen
wurden. Der PDL-Übersetzer 2354 übersetzt
die PDL-Daten, die vom JCL-Analysesystem 2353 zugeordnet
sind, und setzt die PDL-Daten um in einen adäquaten Zeichnungsgegenstand.
Die Datenbank 2358 wird verwendet entweder zum Speichern von
Einstellinhalten, wenn die Einstellung der Umgebung des Druckers 2350 unter
Verwendung der JCL angefordert wurde, oder wird verwendet zum Bereitstellen
von Informationen für
das JCL-Analysesystem 2353, wenn die Informationsanforderung
im JCL besteht. Bei der folgenden Stufe sendet die Datenbank 2358 darüber hinaus
eine Information an den PDL-Übersetzer 2354.
-
Bis
das aktuelle Drucker initialisiert ist, wird der Zeichnungspuffer 2355 für das zeitweilige
Speichern des Zeichnungsgegenstands verwendet, der vom PDL-Übersetzer 2354 erzeugt
wird. Als Teil des Zeichnungsprozesses ändert die Zeichnungseinheit 2356 den
Zeichnungsgegenstand zeitweilig, der im Zeichnungspuffer 2355 gespeichert
ist, in ein Punktrasterbild und sendet dieses an die Druckermaschine 2358.
Nach Empfang des Punktrasterbildes druckt die Druckermaschine 2358 diese
auf ein Aufzeichnungsmedium, wie auf Papier, unter Verwendung einer
allgemein bekannten Drucktechnik.
-
Nachstehend
erläutert
ist die Auftragssteuersprache (JCL). Zuerst beschrieben wird das
Mittel zum Senden eines Druckauftrags unter Verwendung von JCL. 24 ist
eine Auflistung für
einen Druckauftrag, der die Struktur für die JCL zeigt. Dieselbe Textstruktur
wird für
das Beispiel in 25 verwendet, welches eine JCL-Auflistung
ist, die über
Daten, die der Druckertreiber 2302 erzeugt, und über PDL-Daten
verfügt.
In den 24 und 25 zeigt <ESC> die Codeumschaltung
an.
-
In 24 enthält Zeile
(1) eine UEL-Eingabe (Universalausgangsspracheneingabe), die aufzeigt, daß das JCL-Analysesystem 2353 einen
Analyseprozess beginnt. Zeile (2) zeigt auf, daß der Prozeß zum PDL-Übersetzer 2354 verschoben
wird, genannt "LIPS", für die Übersetzung
der PDL-Daten und die Qualität
des Zeichnungsprozesses. Zeile (3) zeigt eine Vielzahl von Zeilen
von PDL-Daten auf, die in LIPS-Form beschrieben sind. Zeile (4)
zeigt auf, daß der
PDL-Übersetzer 2354 angehalten
wird und das Steuerprogramm zum JCL-Analysesystem 2353 verschoben
wird. Bei der obigen JCL-Auflistung schaltet der Drucker 2350 passend
eine Vielzahl von Druckaufträgen
um, um das Drucken auszuführen.
-
Nachstehend
ist eine Erläuterung
für die
Mittel unter Verwendung von JCL für das Erzielen von Informationen
bezüglich
einer Druckereinrichtung oder einem Druckauftrag oder zum Einstellen
der Umgebung gegeben. In 25 gezeigt
ist eine Liste von Befehlen und Informationen, die ausgetauscht werden,
um die Information zu gewinnen oder die Umgebung unter Verwendung
der JCL einzustellen. <ESC> zeigt die Codeumschaltung
auf, und <FF> zeigt das Formzuführzeichen
auf.
-
In
Zeile (1) in 25 wird wie in Zeile (4) in 24 aufgezeigt,
daß die
Verarbeitung des PDL-Übersetzers 2354 gehalten
und die Programmsteuerung zur JCL-Analysesystem 2353 verschoben wird,
um einen Analyseprozeß zu
initialisieren. Zeile (2) ist ein Befehl, den die Diensteinheit 2305 vom Host 2300 erzeugt,
um aus dem Drucker 2350 die Anfangskopierzählung (COPIES)
für die
Seiten hereinzuholen, die vom Drucker 2350 zu drucken sind. Die
Zeichenkette COPIES wird nur als Beispiel verwendet, und andere
Informationen bezüglich
des Druckers 2350 lassen sich unter Verwendung einer geeigneten
Zeichenkette erzielen. Zeile (3) ist die vom Drucker 2350 zum
Host 2300 gelieferte Antwort als Reaktion auf die Anforderung
in Zeile (2). In diesem Falle wird "1" als
Anfangswert für
die Zählung der
Seiten gesendet, die der Drucker 2350 drucken soll. Eine
letzte Sendung vom Drucker 2350 an den Host 23500 signalisiert
in Zeile (4) das Ende der Antwort auf die Anforderung in Zeile (2).
Zeile (5) ist ein Befehl, den die Diensteinheit 2305 vom
Host 2300 erzeugt und aufzeigt, daß der Anfangszählwert für die vom
Drucker 2350 zu druckenden Seiten auf "3" zurückgesetzt
ist. Mit den obigen JCL-Feststellungen kann der Host 2300 eine
Information gewinnen und die Umgebung des Druckers 2350 einstellen.
-
Das
zuvor beschriebene Druckersystem ist jahrelang entwickelt worden,
und Anforderungen zur Gewinnung von Informationen und zur Einstellung der
Umgebung werden aktuell komplizierter. Insbesondere ist die erste
erforderte Funktion eine Anforderung zum Annullieren eines beliebigen
Druckauftrags, der dem Drucker 2350 eingegeben wird. Und dann
ist die zweite erforderte Funktion diejenige, daß die Druckdaten für den zu
annullierenden Druckauftrag ungültig
gemacht werden, selbst bevor sie analysiert worden sind, das heißt, daß Druckdaten
für den
Druckauftrag, der zu annullieren ist, ungültig erklärt werden, selbst während sie
noch im Eingangspuffer gespeichert sind. Und auch die dritte Funktion erfordert,
daß das
Hereinholen der Information bezüglich
des Druckers oder des Druckauftrags, das Einstellen der Umgebung
und das Bestimmen des Druckauftrags, der zu annullieren ist, in
Echtzeit ausgeführt
wird. Ein herkömmliches
Druckersystem kann jedoch diese drei Funktionen nicht realisieren.
-
Ein
Grund dafür,
daß das
herkömmliche
Druckersystem die erste Funktion nicht realisieren kann, ist nachstehend
beschrieben. Wie aus der Struktur des Druckers 2350 offensichtlich
hervorgeht, müssen Druckdaten,
einschließlich
PDL-Daten, übersetzt werden,
bevor das JCL-Analysesystem 2353 den Druckauftrag erkennt.
Die Druckdaten werden zeitweilig im Eingangspuffer 2352 gespeichert,
bevor das JCL-Analysesystem 2353 diese erkennt. Sofern jene
Druckdaten im Eingangspuffer 2352 gespeichert sind, werden
sie aktuell nicht als Aufbauteil eines Druckauftrags identifiziert,
so daß das
Druckersystem die vollständige
Information einer beliebigen Druckauftragseingabe zum Drucker 2350 oder
die Umgebungseinstellung nicht erzielen kann, und zum Bestimmen
eines Druckauftrags, der zu annullieren ist.
-
Nachstehend
beschrieben ist ein Grund, warum das herkömmliche Druckersystem die zweite Funktion
nicht realisieren kann. Abhängig
von der Druckdatenmenge, die für
einen Druckauftrag vorgesehen ist, können die Verarbeitungszustände für unterschiedliche
Teile der Druckdaten für
den Druckauftrag variieren, wobei ein Teil der Daten noch im Eingangspuffer 2352 gespeichert
ist, während
ein anderer Teil vom PDL-Übersetzer 2353 analysiert
wird. In einem herkömmlichen
Druckersystem werden die Druckdaten, die noch nicht vom JCL-Analysesystem 2353 oder
dem PDL-Übersetzer 2354 analysiert
worden sind, das heißt,
der Abschnitt der Druckdaten, die noch im Eingangspuffer gespeichert
sind, nicht als ein Teil der Druckdaten für den Druckauftrag identifiziert.
-
Nachstehend
beschrieben ist nun ein Grund, warum das herkömmliche Funktion nicht realisieren kann.
Bilddaten, die die Diensteinheit 2301 vom Host 2300 erzeugt,
werden in PDL-Daten vom Druckertreiber 2302 umgesetzt,
und die PDL-Daten werden über den
Ausgangspuffer 2303 und den I/F-Treiber 2304 an
den Drucker 2350 gesendet. Selbst wenn die Information
bezüglich
des Druckers 2350 oder des Druckauftrags anzufordern sind,
oder wenn die Umgebung während
des Sendens der Druckdaten einzustellen ist, wird eine Exklusiv-ODER-Steuerung vom
I/F-Treiber 2304 ausgeführt,
und eine Anforderung von der Diensteinheit 2305 kann nicht
erledigt werden, bis das Senden der Druckdaten abgeschlossen ist.
Hinsichtlich des Anforderns von Informationen bezüglich des
Druckers 2350 oder des Druckauftrags oder des Annullierens
des Druckauftrags tritt folglich eine Verschlechterung bei der Echtzeitverarbeitung
auf.
-
Aus
dem Dokument EP-A-0653700 ist es bekannt, einen Drucker zu steuern,
der Druckdaten als Dateien speichert, die unter Verwendung eines
Auftragslistenmenus verwaltet werden, so daß ein Druckauftrag gemäß einer
gespeicherten Datei durch Auswahl des Dateinamens aus dem Menu annulliert werden
kann.
-
Das
Dokument WO-A-9639656 offenbart das Senden von Druckdaten an einen
Drucker unter Verwendung einer Anzahl unterschiedlicher Protokolle.
-
Aspekte
der vorliegenden Erfindung sind in den unabhängigen Patentansprüchen angegeben.
-
Zur
Lösung
der oben aufgeführten
Nachteile ist es eine Aufgabe der vorliegenden Erfindung, alle Druckaufträge zu identifizieren,
die einem Drucker eingegeben werden, und einen beliebigen Druckauftrag
zu bestimmen, der zu annullieren ist; Druckdaten für einen
Druckauftrag als ungültig
zu erklären,
der zu annullieren ist, selbst bevor die Druckdaten analysiert sind,
beispielsweise selbst wenn die Druckdaten im Eingangspuffer gespeichert
sind; und es ist eine Aufgabe, einen Druckauftrag im Echtzeitbetrieb
zu annullieren.
-
Nach
einem Ausführungsbeispiel
ist ein Drucker ausgestattet mit:
einem Verwaltungsmittel,
das Druckauftragsidentifikationsinformationen verarbeitet, die allein
dem extern eingegebenen Druckauftrag zugewiesen sind, in dem Druckdaten
enthalten sind; und
einem Mittel zum Ungültigerklären von Druckdaten unter denen
des Druckauftrags, die der Druckauftragsidentifikationsinformation
entsprechen, die benannt ist, um einen Abschnitt der Druckdaten
ungültig zu
erklären,
die noch nicht analysiert worden sind.
-
Des
weiteren erklärt
das Mittel zum Erklären der
Ungültigkeit
von Druckdaten diejenigen als ungültig, die der Druckauftragsidentifikationsinformation
entsprechen, die benannt ist und an einer Vielzahl von Stellen gespeichert
ist, beginnen mit Druckdaten, die näher an der Eingangsstufe für den Drucker
liegen.
-
Ein
Drucker nach einem Ausführungsbeispiel
ist des weiteren ausgestattet mit:
einem Eingangspuffer, der
zum Speichern der Druckdaten verwendet wird, bevor die Druckdaten
analysiert worden sind, und das Mittel zum Ungültigerklären der Druckdaten erklärt die Druckdaten
für ungültig, die
im Eingangspuffer für
den Druckauftrag gespeichert sind, der der Druckauftragsidentifikationsinformation
entspricht, die benannt worden ist.
-
Darüber hinaus
ist der Eingangspuffer gebildet aus Pufferblöcken für das Speichern der Druckauftragsidentifikationsinformation
und der Druckdaten.
-
Darüber hinaus
ist der Puffer unter Verwendung einer Pufferblockwarteschlange aus
Pufferblöcken
aufgebaut, in denen die Druckauftragsidentifikationsinformation
und die Druckdaten gespeichert sind, und einer unbenutzten Pufferblockwarteschlange
unbenutzter Pufferblöcke.
Das Mittel zum Ungültigerklären von
Druckdaten liest aus der benutzten Pufferblockwarteschlange einen
Pufferblock aus, in dem Druckauftragsidentifikationsinformationen
gespeichert sind, die zu der Druckauftragsidentifikationsinformation
paßt,
die bestimmt ist, und verkettet den Pufferblock, der für die unbenutzte
Pufferblockwarteschlange ausgelesen ist.
-
Weiterhin
ist ein Drucker nach einem Ausführungsbeispiel
ausgestattet mit:
einem Druckdatenanalysemittel zum Analysieren
von Druckdaten. Und wenn das Druckdatenanalysemittel die Druckdaten
für den
Druckauftrag analysiert, die der Druckauftragsidentifikationsinformation
entsprechen, die ausgewählt
ist, hält
das Mittel zum Ungültigerklären von
Druckdaten die Analyse an.
-
Nach
einem Ausführungsbeispiel
ist ein Drucker weiterhin ausgestattet mit einem Druckauftragsfeststellmittel
zum Benennen der Druckauftragsidentifikationsinformation zum Druckauftrag,
ohne die Druckdaten für
den Druckauftrag zu analysieren.
-
Darüber hinaus
analysiert nach einem Ausführungsbeispiel
das Druckauftragsfeststellmittel auf der Grundlage von Steuerdaten
ein Auftragspaket, das durch Addieren gewonnen wird, für den Druckauftrag,
der Drucksteuerdaten, die Steuerdaten für die Druckdaten oder die Drucksteuerdaten
enthält, und
stellt die Druckdaten oder die Drucksteuerdaten für den Druckauftrag
fest.
-
Nach
einem Ausführungsbeispiel
besteht das Auftragspaket aus der Identifikationsinformation, die
verwendet wird zum Identifizieren der Drucksteuerdaten, und aus
den Drucksteuerdaten, oder besteht aus Druckdaten und einer Identifikationsinformation,
die für
das Identifizieren der Druckdaten verwendet wird.
-
Gemäß einem
Ausführungsbeispiel
ist ein Drucker weiterhin ausgestattet mit:
einem Druckauftragssteuermittel
gemäß einem Drucksteuerbefehl,
den Druckauftrag zu steuern, nachdem eine Drucksteueranforderung
empfangen worden ist, die spezifiziert ist durch die Druckauftragsidentifikationsinformation,
die die Drucksteueranforderung festlegt.
-
Nach
einem Ausführungsbeispiel
ist der Steuerbefehl die Anforderung oder die Einstellung der Drucksteuerdaten,
die vom Druckauftragssteuermittel verwaltet werden, oder das Annullieren
des Druckauftrags.
-
Wenn
nach einem Ausführungsbeispiel
der Drucksteuerbefehl darüber
hinaus die Anforderung von Drucksteuerdaten ist, gibt das Druckauftragssteuermittel
extern eine Drucksteuerantwort ab, die die Drucksteuerdaten beinhaltet.
-
Nach
einem Ausführungsbeispiel
enthält
der Drucker weiterhin einen Auftragskanal für die Ein-/Ausgabe des Aufragspakets
und einen Steuerkanal für
die Ein-/Ausgabe der Drucksteueranforderung oder der Drucksteuerantwort.
-
Nach
einem Ausführungsbeispiel
enthält
ein Drucker weiterhin ein Logikkanalsteuermittel zum Erzeugen eines
Pakets für
den Auftragskanal zur Ein-/Ausgabe des Auftragspakets und des Steuerkanals
für die
Ein-/Ausgabe von der Drucksteueranforderung der Druckersteuerungsantwort,
und auch zum Verwenden des Pakets zur Multiplexübertragung unter Verwendung
eines einzigen Übertragungsmediums.
-
Nach
einem Ausführungsbeispiel
enthält
ein Drucker weiterhin ein Druckauftragsannullierbestimmungsmittel
zum Bestimmen, welcher Druckauftrag zu annullieren ist.
-
Nach
einem Ausführungsbeispiel
bestimmt das Druckauftragsannulliermittel weiterhin, daß von Druckaufträgen, die
im Drucker gehalten sind, ein Druckauftrag zu annullieren ist, für den sich
Druckdaten nahe einer Ausgangsstufe befinden.
-
Nach
einem Ausführungsbeispiel
ist der Drucker weiterhin ausgestattet mit einem Annullierbefehlfeststellmittel
zum Erfassen von außen
empfangenen Befehls zum Annullieren des Druckauftrags.
-
Nach
einem Ausführungsbeispiel
ist der Drucker weiterhin ausgestattet mit:
einem Druckauftragsanzeigemittel
zum Darstellen aller Druckaufträge,
die der Drucker hält;
und mit
einem Druckauftragsauswahlmittel zum Auswählen eines
zu annullierenden Druckauftrags unter Druckaufträgen, die das Druckauftragsanzeigemittel
darstellt.
-
Dieselben
Merkmale sind für
ein Drucksystem, ein Drucksteuerverfahren, ein Speichermedium, auf
dem ein Drucksteuerprogramm zum Steuern eines Druckers gespeichert
ist, und in einer Sendeeinrichtung zum Senden eines Drucksteuerprogramms zum
Steuern des Druckers enthalten.
-
KURZE BESCHREIBUNG
DER ZEICHNUNG
-
1 ist
ein funktionales Blockdiagramm, das die Anordnung eines Druckersystems
nach einem ersten Ausführungsbeispiel
der vorliegenden Erfindung darstellt;
-
2 ist
ein erläuterndes
Diagramm, das ein Bezugsmodell für
die Verbindung eines Hosts mit einem Drucker im Druckersystem nach
dem ersten Ausführungsbeispiel
der vorliegenden Erfindung zeigt;
-
3 ist
ein erläuterndes
Diagramm, das die Strukturen eines Auftragspakets und eines Steuerpakets
nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung zeigt;
-
4 ist
ein Ablaufdiagramm, das die Verarbeitung von einem Arbeitsauftragspaketgenerator
im Host nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung zeigt;
-
5 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Arbeitsauftragspaketgenerator im
Host nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
6 ist
ein erläuterndes
Diagramm, das die Struktur eines Pakets IEEE 1284.4 nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung zeigt;
-
7 ist
ein erläuterndes
Diagramm, das ein Auftragspaket zeigt, das über eine Paketform IEEE 1284.4
verfügt,
die nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung zu senden ist;
-
8 ist
ein erläuterndes
Diagramm, das ein Steuerpaket zeigt, das eine Paketform IEEE 1284.4 hat,
die nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung zu senden ist;
-
9 ist
ein Diagramm zur Erläuterung
eines Bereitstellungsinformationsanforderungsbefehlspakets mit der
Form IEEE 1284.4 nach dem ersten Ausführungsbeispiel der vorliegenden
Erfindung;
-
10 ist
ein Diagramm zur Erläuterung
eines Antwortpakets für
ein Bereitstellungsinformationsanforderungsbefehlspaket mit der
Form IEEE 1284.4 nach dem ersten Ausführungsbeispiel der vorliegenden
Erfindung;
-
11 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die eine Logikkanalsteuerung
nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
12 ist
ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung
zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
13 ist
ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung
zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
14 ist
ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung
zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
15 ist
ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung
zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
16 ist
ein detailliertes Ablaufdiagramm, das die Empfangssteuerverarbeitung
zeigt, die die Logikkanalsteuerung nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
17 ist
ein Ablaufdiagramm, das die Druckauftragsannullierungsverarbeitung
zeigt, die eine Informationsverwaltung nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
18 ist
ein Ablaufdiagramm, das die Druckauftragsannullierungsverarbeitung
zeigt, die ein Auftragsvorprozessor nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
19 ist
ein Ablaufdiagramm, das die Druckauftragsannullierungsverarbeitung
zeigt, die eine Zeichnungseinheit nach dem ersten Ausführungsbeispiel
der vorliegenden Erfindung ausführt;
-
20 ist
ein spezielles Diagramm, das die Struktur eines Bedienfeldes nach
dem ersten Ausführungsbeispiel
der vorliegenden Erfindung zeigt;
-
21 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Informationsverwalter
ausführt,
wenn nach dem ersten Ausführungsbeispiel der
vorliegenden Erfindung ein Annullierknopf betätigt ist;
-
22 ist
ein spezielles Blockdiagramm, das die Anordnung eines Druckersystems
nach einem zweiten Ausführungsbeispiel
der vorliegenden Erfindung zeigt;
-
23 ist
ein spezielles Blockdiagramm, das die Anordnung eines herkömmlichen
Druckersystems zeigt;
-
24 ist
ein Diagramm zur Erläuterung
eines Verfahrens zur Druckdatenübertragung
einer Auftragssteuersprache;
-
25 ist
ein Diagramm zur Erläuterung
der Anforderung und Einstellung von Informationen eines Druckers
unter Verwendung einer Auftragssteuersprache;
-
26 ist
ein erläuterndes
Diagramm, das das Laden eines Speichermediums in ein System oder
in ein Gerät
zeigt;
-
27 ist
ein Diagramm zur Erläuterung
einer Speicherkarte, bei der ein Steuerprogramm in einem ROM 1702 gespeichert
und bereit zur Ausführung
ist;
-
28 ist
eine Querschnittsansicht der Innenstruktur eines Laserstrahlsdruckers;
-
29 ist
ein Diagramm, das den Umriß eines
Tintenstrahlaufzeichnungsgerätes
IJRA zeigt;
-
30 ist
ein Diagramm, das die Steueranordnung zum Ausführen einer Aufzeichnung darstellt;
-
31 ist
ein Diagramm zur Erläuterung
der Struktur eines Eingangspuffers;
-
32 ist
ein Diagramm zur Erläuterung
der Struktur eines Pufferblockes;
-
33 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Auftragsvorprozessor
zum Speichern von PDL-Daten für
einen Druckauftrag im Eingangspuffer ausführt;
-
34 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die ein PDL-Übersetzer
zum Übersetzen
von PDL-Daten zeigt, die im Eingangspuffer gespeichert sind, und
zum Erzeugen eines Zeichnungsgegenstands;
-
35 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die ein Informationsprozessor
zum Ungültigerklären von
PDL-Daten im Eingangspuffer zeigt; und
-
36 ist
ein Blockdiagramm, das die Steueranordnung für einen Laserstrahldrucker
zeigt.
-
DETAILLIERTE
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
-
Nachstehend
beschrieben sind die bevorzugten Ausführungsbeispiele nach der vorliegenden Erfindung.
-
Erstes Ausführungsbeispiel
-
1 ist
ein Funktionalblockdiagramm, das die Anordnung eines Druckersystems
nach einem ersten Ausführungsbeispiel
der vorliegenden Erfindung veranschaulicht. Im Druckersystem nach
dem ersten Ausführungsbeispiel
der vorliegenden Erfindung sind ein Host 100 und ein Drucker 150 miteinander über ein
vorbestimmtes Übertragungsmedium 180 verbunden.
Für das
erste Ausführungsbeispiel der
vorliegenden Erfindung wird eine Ortschnittstelle, die spezifiziert
ist durch IEEE (Institute of Electrical und Electronics Engineers)
1284, als Übertragungsmedium 180 verwendet.
-
Im
Druckersystem vom ersten Ausführungsbeispiel
der vorliegenden Erfindung ist der Host 100 ausgestattet
mit einer Anwendungseinheit 101, einer Druckertreiber 102,
einem Ausgangspuffer 103, einem I/F-Treiber 104,
einer Nutzeinheit 105, einer Logikkanalsteuerung 106 und
einem Auftragspaketgenerator 107.
-
Zur
genauen Erläuterung
der Funktionen der individuellen Abschnitte sieht die Anwendungseinheit 101 eine
Graphiknutzerschnittstelle für
einen Nutzer vor und erzeugt Bilddaten, die zur Absicht des Nutzers
passen. Der Druckertreiber 102 setzt die Bilddaten, die
die Anwendungseinheit 101 erzeugt hat, um in Seitenbeschreibungssprachendaten
(PDL-Daten), die ein Drucker 150 drucken kann. Der Ausgangspuffer 103 wird
verwendet zum zeitweiligen Speichern von PDL-Daten, die der Druckertreiber 102 erzeugt. Der
Auftragspaketgenerator 107 erzeugt ein Auftragspaket unter
Verwendung von im Ausgangspuffer 103 gespeicherten PDL-Daten.
-
Die
Nutzeinheit 105 erzielt aus dem Drucker 150 einen
Druckauftrag oder eine Information bezüglich des Druckers 150 und
sendet diese an die Graphikanwenderschnittstelle, oder setzt den
Druckauftrag oder die Information bezüglich des Druckers 150 gemäß einem
Befehl vom Anwender ein.
-
Die
Logikkanalsteuerung 106 ändert zwei Logikkanäle in ein
physisches Paket mit der Form IEEE 1284.4, das heißt, einen
Auftragskanal, der verwendet wird für ein Auftragspaket, das der
Auftragspaketgenerator 107 sendet, und einen Steuerkanal, der
für das
Steuerpaket verwendet wird, das die Nutzeinheit 105 sendet,
und sendet den physischen Kanal an den I/F-Treiber 104.
Die Logikkanalsteuerung 106 empfängt das Logikkanalpaket IEEE
1284.4 aus dem Drucker 150 über den I/F-Treiber 104,
teilt es ein in zwei Logikkanäle
und sendet ein Paket aus dem Drucker 150 an die Nutzeinheit 105.
Der I/F-Treiber 104 tauscht ein Logikkanalpaket aus mit
dem Drucker 150 über
das Übertragungsmedium 180.
-
Der
Drucker 150, der das Druckersystem gemäß dem ersten Ausführungsbeispiel
der vorliegenden Erfindung bildet, ist ausgestattet mit: einer Logikkanalsteuerung 151,
einer Datenbank 152, einem Auftragsvorprozessor 153,
einem Eingangspuffer 154, einem PDL-Übersetzer 155, einem
Zeichnungspuffer 156, einer Zeichnungseinheit 157,
einer Druckmaschine 158, einem I/F-Treiber 159, einem Informationsverwalter 160 und
mit einem Bedienfeld 161.
-
Zur
Erläuterung
der Arbeitsweisen der individuellen Abschnitte in Einzelheiten tauscht
der I/F-Treiber 159 ein Logikkanalpaket mit dem Host 100 aus über das Übertragungsmedium 180.
Die Logikkanalsteuerung 151 empfängt ein Logikkanalpaket IEEE
1284.4 aus dem Host 100 über den I/F-Treiber 159,
teilt es ein in zwei Logikkanäle,
einen Auftragskanal und einen Steuerkanal und sendet diese an die
nächste
Stufe. Darüber
hinaus ändert
die Logiksteuerung 151 ein Antwortpaket aus dem Informationsverwalter 160 in
ein Paket IEEE 1284.4 und sendet die Logikkanalpaketdaten an den
I/F-Treiber 159. Eingangspuffer 154 dient als
Pufferglied zum zeitweiligen Speichern der PDL-Daten und zum Verzögern der Verarbeitung in der
nachfolgenden Stufe.
-
Die
Datenbank 152 verwaltet verschiedene Arten von Informationen,
wie Informationen bezüglich
des Druckers 150 oder der Eigenschaften eines Druckauftrags.
Die Eigenschaften vom Druckauftrag sind der Name vom Druckauftrag,
dessen Eigentümer,
die Größe und die
Anzahl von Kopien.
-
Information,
die den Verarbeitungszustand eines jeden Druckauftrags aufzeigt,
wird darüber
hinaus ebenfalls gespeichert. Wenn beispielsweise das Übersetzen
von PDL-Daten für
einen speziellen Druckauftrag vom PDL-Übersetzer 155 begonnen wurde,
wird der Zustand, bei dem die PDL-Daten vom PDL-Auftrag vom PDL-Übersetzer 155 analysiert
werden, als der Zustand des anhaltenden Druckauftrags gespeichert.
Eine Steuerung, die die individuellen Abschnitte synchronisiert,
um so in korrekter Weise eine Vielzahl von Druckaufträgen unter Verwendung
des Druckers 150 auszuführen,
aktualisiert die Zustände
Zustände
der individuellen Druckaufträge.
Die Auswahl, die zum Druckauftrag gesendet wurde an die nachfolgende
Stufe oder den Druckauftrag aus der vorherigen Stufe empfangen hat, schreibt
den Zustand des anhaltenden Druckauftrags neu.
-
Der
Auftragsvorprozessor 153 empfängt ein Auftragspaket und wendet
den Betriebscode an, der im Kopf des Auftragspakets gespeichert
ist, um PDL-Daten zum Eingangspuffer 154 zu senden oder die
Eigenschaften des Druckauftrags in der Datenbank 152 zu
speichern. Der Informationsverwalter 160 speichert einen
Druckauftrag oder eine Einrichtungsinformation in die Datenbank 152 gemäß dem Betriebscode
und den Daten, die im empfangenen Steuerpaket gespeichert sind,
oder erzeugt ein Antwortpaket gemäß einer Informationsanforderung
aus der Nutzeinheit 105 vom Host 100, oder setzt
einen Druckauftrag gemäß einem
Annullierbefehl für
den Druckauftrag ab, den die Nutzeinheit 105 eingegeben
hat oder der über
das Bedienfeld 161 eingegeben worden ist.
-
Das
Annullieren vom Druckauftrag bedeutet denselben Prozeß, der ausgeführt wird,
wie für
das Zurückziehen
des Druckauftrags oder das Löschen eines
Druckauftrags, und auch die Ungültigkeitserklärung der
Druckdaten für
einen Druckauftrag, wie PDL-Daten, und ein Zeichnungsgegenstand
beim Drucker 150.
-
Das
Ungültigerklären von
Druckdaten bedeutet, daß die
Druckdaten zu löschen
sind, wenn sie im Eingangspuffer oder im Zeichnungspuffer gespeichert
sind, oder daß ein
Ungültigkeitskennzeichen
für die
Druckdaten gesetzt werden muß für die Kennzeichenverwaltung,
oder daß,
wenn die Druckdaten vom Prozessor gehalten sind, die Verarbeitung
für die
Druckdaten angehalten wird oder die Druckdaten aufgegeben werden.
-
Der
PDL-Übersetzer 155 übersetzt
PDL-Daten und setzt die PDL-Daten um in einen Zeichnungsgegenstand,
der für
die Zeichnung adäquat
ist. Der Zeichnungsgegenstand wird zeitweilig im Zeichnungspuffer 156 gespeichert,
bis das aktuelle Drucken initialisiert ist. Die Zeichnungseinheit 157 setzt den Zeichnungsgegenstand
um, der zeitweilig im Zeichnungspuffer 156 gespeichert
ist, in ein Punktrasterbild durch die aktuelle Zeichnung. Die Druckmaschine 157 empfängt die
Punktrasterdaten aus der Zeichnungseinheit 157 und druckt
sie auf ein Blatt Papier unter Verwendung einer allgemein bekannten
Drucktechnik.
-
Unter
Verwendung des Bedienfeldes 161 wird die Feldmanipulation
des herkömmlichen
Druckers aktiviert, und das Annullieren des Druckauftrags kann bestimmt
werden.
-
2 ist
ein erläuterndes
Diagramm, das ein Bezugsmodell für
die Verbindung vom Host 100 mit dem Drucker 150 nach
dem ersten Ausführungsbeispiel
zeigt. Gemäß dem Protokoll,
das der IEEE 1284 entspricht, tauschen der Host 100 und
der Drucker 150 Daten auf einer Datenverkettungsschicht
aus, die eine physische Schicht unterhalb einer solchen gemäß OSI (Netzwerkprotokollnormen
gemäß ISO (International
Standards Organization) für
die Zwischenverbindung eines offenen Systems). In 1 ist
dieser Prozeß eine
Belastung für
den I/F-Treiber 140 vom Host 100 und den I/F-Treiber 159 vom
Drucker 150.
-
Eine
Netzwerkebene einer Transportebene, die obere Ebenen gemäß IEEE 1284
sind, werden gesteuert unter Verwendung des Logikkanalprotokolls,
das festgelegt ist in IEEE 1284.4. IEEE 1284.4 legt eine Kanalmultiplexfunktion
und eine Begleitsteuerfunktion fest. In 2 ist dieser
Prozeß unter Verwaltung
der Logikkanalsteuerung 106 und dem Host 100 sowie
der Logikkanalsteuerung 151 vom Drucker 150. Die
Kanäle,
die dem Multiplexverfahren unterzogen sind gemäß IEEE 1284.4 werden in einen Auftragskanal
und in einen Steuerkanal sortiert, und verschiedene Dienste stehen
bereit zur Anwenderebene gemäß dem Auftragsprotokoll
des Steuerprotokolls.
-
Die
Struktur des Auftragsprotokolls ist nachstehend erläutert. Das
Auftragsprotokoll ist ein solches, das aus einem Auftragspaket gebildet
ist, das erzeugt wird durch den Auftragspaketgenerator 107 vom
Host 100, und das so spezifiziert ist, daß der Auftragsvorprozessor 153 vom
Drucker 150 leicht den Beginn und das Ende des Druckauftrags
identifizieren und die Eigenschaften des Druckauftrags einstellen
kann.
-
3 ist
ein erläuterndes
Diagramm, das die Struktur eines Auftragspakets zeigt. Die Vertikalachse
stellt ein Byte dar, und die Horizontalachse stellt die Bits in
jedem Byte dar. In 3 ist ein Betriebscode der Bytes
0 bis 1 eine ID von zwei Bytes, die die Funktion des Pakets aufzeigen.
Das Auftragspaket kann folgende Werte annehmen.
0x0201: Auftragsstartoperation
0x0202:
Auftragseigenschaftseinstelloperation
0x0204: PDL-Daten Sendeoperation
0x0205:
Auftragsendoperation
-
Die
Blocknummern und Bytes 2 und 3 werden verwendet zum Anfordern der
Inhalte einer Antwortanforderung von der Sendeseite eines Auftragspakets
zu einer Antwort aus der Empfangsseite. Wenn beispielsweise ein
Auftragspaket mit Blocknummern = 1, 2, 3, die sequentiell gesendet
werden, und ein Fehlerpaket mit Blocknummer = 2 zurückgegeben
wird, kann die Sendeseite sicherstellen, daß ein Fehler im zweiten Auftragspaket
aufgetreten ist, das gesendet wurde.
-
Die
Parameterlänge
der Bytes 4 und 5 ist ein Bereich, der die Bytelänge des Datenabschnitts aufzeigt,
und kann 0 bis 64 kBytes aufzeigen. Bytes 6 und 7 sind Bereiche,
die verwendet werden zum Aufzeigen verschiedener Kennzeichen für das Auftragspaket,
das folgende Inhalte darstellt.
-
Fehlerkennzeichen:
Wenn es den Wert von "1" hat, zeigt das Kennzeichen
das Auftreten eines Fehlers im Drucker 150 auf. Dieses
Kennzeichen wird dem Antwortpaket hinzugefügt, das der Drucker 150 an
den Host 100 sendet.
-
Meldekennzeichen:
Wenn es einen Wert von "1" hat, meldet das
Kennzeichen dem Host 1, daß es keine Antwort auf das
Anforderungspaket vom Host 100 gibt, und es sich um einen
Fall handelt, der vom Drucker 150 zu melden ist.
-
Fortsetzungskennzeichen:
Wenn es den Wert von "1" hat, zeigt das Kennzeichen
an, daß weil alle
Daten nicht im Datenabschnitt enthalten sind, die restlichen Daten
mit dem nachfolgenden Paket zu senden sind. Derselbe Betriebscode
wie im vorigen Paket muß für das nächste Auftragspaket
eingesetzt werden.
-
Antwortanforderung:
Ein Wert von "1" wird gesetzt, wenn
der Host 100 ein Antwortpaket vom Drucker 150 anfordert.
Wenn es den Wert "0" hat, gibt es keine
Antwort, wenn das Paket korrekt verarbeitet wird. Wenn ein Fehler
im Drucker 150 auftritt, wird ein Antwortpaket, das ein
auf "1" gesetztes Fehlerkennzeichen
hat, permanent gesendet, obwohl die Antwortanforderung gleich 0/1
ist.
-
Eine
Anwender-ID bei Bytes 8 und 9 und ein Kennwort bei Bytes 10 und
11 sind Bereiche, die verwendet werden zur Autorisierung eines Pakets,
das gesendet wurde, um die Manipulation zu beschränken, die
sich ergibt, wenn das Paket für
Sicherheitsgründe
verwendet wird. Diese Bereiche berühren dieses Ausführungsbeispiel
nicht.
-
Daten,
die dem Betriebscode entsprechen, werden in Byte 12 und den folgenden
gespeichert. Daten sind nicht im Byte präsent, wenn der Betriebscode
einer Arbeitsstartoperation oder einer Auftragsstopoperation dient.
-
Für die Auftragseigenschaftseinstelloperation
werden eine gewünschte
Eigenschafts-ID und Auftragseigenschaftswerte im Datenabschnitt
gespeichert. Die Auftragseigenschafts-ID ist ein Identifikationsmittel,
das versehen ist gemäß der Eigenschaft
oder der Umgebung für
einen Auftrag, und eine ID, die der Eigenschaft eines Auftrags entspricht,
der festgelegt ist durch ISO-10175 (DPA), wird dem Identifiziermittel
im voraus zugewiesen. Die typischen Auftragseigenschafts-ID sind
folgende.
-
Auftragseigenschafts-ID
-
- 0x0101: Auftragsname
- 0x0103: Auftragseignername
- 0x016a: Auftragsumfang
-
Abhängig von
der Funktion des Druckers 150 können darüber hinaus die anderen Auftragseigenschaften,
wie die Anzahl von Kopien, Monochrom/Farbe und eine entsprechende
ID dem Identifizierer zugewiesen werden.
-
Für die PDL-Datensendeoperation
werden PDL-Daten in den Datenabschnitt eingegeben. Das Maximum an
Daten, das mit der obigen Parameterlänge bestimmt werden kann, das
heißt,
Daten von 64 kBytes, können
in einem Auftragspaket gespeichert werden, und längere Daten als diese werden eingeteilt
in eine Vielzahl von Auftragspaketen zum Senden. In diesem Falle
wird das Fortsetzungskennzeichen auf "1" gesetzt.
-
Der
Auftragspaketgenerator 107 vom Host 100 ist als
nächstes
erläutert. 4 und 5 sind Ablaufdiagramme,
die die Verarbeitung zeigen, die der Auftragspaketgenerator 107 ausführt. Wenn
das Drucken durch die Anwendereinheit 101 ausgewählt ist,
wird der Druckertreiber 102 aktiviert, um PDL-Daten zu erzeugen
und zum Ausgangspuffer 103 zu senden. Dann beginnt der
Auftragspaketgenerator 107 die Verarbeitung.
-
In
Schritt S401 wird ein Auftragspaket, bei dem der Auftragsstartbetriebscode
(0x0201) in einen Bereich zum Speichern des Betriebscodes in 3 gespeichert
und ausgegeben an die Logikkanalsteuerung 106. Danach werden
alle Operationen zum Einstellen der Eigenschaften des anhaltenden
Druckauftrags ausgeführt,
bis das Auftragspaket, in dem der Auftragsendoperationscode gespeichert
ist, ausgegeben ist.
-
In
Schritt S204 wird der Name eines Auftrags eingesetzt. Der Auftragseigenschaftseinstellbetriebscode
(0x0202) wird im Bereich eines Auftragspakets gespeichert, das Verwendung
findet zum Speichern des Betriebscodes in 3, und die
Auftragseigenschafts-ID (= 0x0101), die den Namen des Druckauftrags
aufzeigt, und ein Name, der als Auftragseigenschaftswert dient (beispielsweise "Dokument 1" in diesem Falle)
werden im Datenabschnitt gespeichert. Dieses Auftragspaket wird
ausgegeben an die Logikkanalsteuerung 106.
-
In
Schritt S403 wird der Eigner des Druckauftrags eingesetzt. Der Auftragseigenschaftseinstellbetriebscode
(0x0202) wird im Bereich eines Auftragspakets gespeichert, der Verwendung
findet zum Speichern des Betriebscodes in 3, und die
Auftragseigenschafts-ID (= 0x0103), die den Auftragseigner aufzeigt,
und der Name des Eigners, der als Auftragseigenschaftswert dient
(in diesem Falle "Taro") werden im Datenabschnitt
gespeichert. Dieses Auftragspaket wird an die Lokalkanalsteuerung 106 ausgegeben.
-
In
Schritt S404 wird der Umfang des Druckauftrags eingesetzt. Der Auftragseigenschaftseinstellbetriebscode
(0x0202) wird im Bereich eines Auftragspakets gespeichert, das ausgegeben
wird zum Speichern des Betriebscodes in 3, und die
Auftragseigenschafts-ID (= 0x016a), die den Auftragsumfang aufzeigt,
und den Datenumfang vom Auftrag, der als Auftragseigenschaftswert
dient (in diesem Falle "100000"), werden im Datenabschnitt
gespeichert. Dieses Auftragspaket wird ausgegeben an die Lokalkanalsteuerung 106.
-
In
Schritt S405 wird der Umfang der PDL-Daten, der zu senden ist, in
die variable "Größe" substituiert. In
Schritt S406 wird der Umfang der variablen "Größe" überprüft zum Bestimmen, ob sie größer als 64
kBytes ist. Da die Parameterlänge
des Paketkopfes mit 16 Bits ausgedrückt wird, ist die Größe des Datenabschnitts
vom Auftragspaket beschränkt
auf maximal 64 kBytes, und Daten, die einen größeren Umfang haben, werden
eingeteilt in eine Vielzahl von Auftragspaketen zum Senden.
-
Wenn
der Umfang der PDL-Daten größer als 64
kBytes ist, wird in Schritt S407 das Fortsetzungskennzeichen im
Paketkopf in 3 auf "1" gesetzt.
In Schritt S408 werden 64 kBytes von PDL-Daten aus dem Ausgangspuffer 103 ausgelesen.
Der PDL-Datensendebetriebscode
(0x0204) wird im Bereich eines Auftragspakets gespeichert, das verwendet
wird zum Speichern des Betriebscodes in 3, und die ausgelesenen
PDL-Daten werden im Datenabschnitt gespeichert. Das sich ergebende
Auftragspaket wird abgegeben an die Logilkanalsteuerung 106.
In Schritt S409 werden die 64 kBytes von Daten, die gesendet sind,
von der variablen "Größe" abgezogen, und die
Programmsteuerung kehrt zur Verzweigung in Schritt S406 zurück.
-
Wenn
die Größe der restlichen
PDL-Daten in Schritt S406 gleich oder kleiner als 65 kBytes ist, muß nur ein
Auftragspaket gesendet werden, um das Senden der PDL-Daten zu vollenden,
die mit dem Druckauftrag verbunden sind. In diesem Falle wird in Schritt
S410 das Fortsetzungskennzeichen im Paketkopf in 3 auf "0" gesetzt, um den Abschluß des Sendens
der PDL-Daten für
den Druckauftrag aufzuzeigen.
-
In
Schritt S411 werden die restlichen PDL-Daten aus dem Ausgangspuffer 103 ausgelesen.
Der PDL-Datensendebetriebscode (0x0204) wird im Bereich eines Auftragspakets
gespeichert, das Verwendung findet zum Speichern des Betriebscodes
in 3, und die restlichen PDL-Daten, die ausgelesen
werden, werden im Datenabschnitt gespeichert. Das sich ergebende
Auftragspaket wird dann an die Logikkanalsteuerung 106 abgegeben.
-
In
Schritt S412 wird der Auftragsendbetriebscode (0x0205) im Bereich
des Auftragspakets gespeichert, das verwendet wird zum Speichern
des Betriebscodes in 3, und dieses Auftragspaket wird
ausgegeben an die Logikkanalsteuerung 106. Danach ist die
Verarbeitung beendet.
-
Nachstehend
erläutert
ist eine Erläuterung des
Auftragsvorprozessors 153 vom Drucker 150. Wenn
der Auftragsvorprozessor 153 aus dem Auftragspaketgenerator 107 das
Auftragspaket empfängt,
in dem der Auftragsstartoperationscode (0x0201) gespeichert ist,
erkennt der Auftragsvorprozessor 153 den Beginn des Druckauftrags
und eine Gegenstands-ID für
den Druckauftrag und registriert ihn in der Datenbank 152.
-
Im
Ergebnis wird der Druckauftrag, den der Drucker 150 empfangen
hat, identifiziert, ohne daß die
PDL-Daten des Druckauftrags analysiert sind. Da darüber hinaus
der Druckauftrag verwaltet wird durch Ausgabe der Gegenstands-ID,
können
alle Druckaufträge,
die beim Drucker 150 eingehen, identifiziert werden. Ein
Druckauftrag, bei dem die Eigenschaften gewonnen oder eingestellt
werden, kann weiterhin ein Druckauftrag, der zu annullieren ist,
unter Verwendung der Gegenstands-ID bestimmt werden.
-
Bis
ein Auftragspaket empfangen ist, in dem der Auftragsendbetriebscode
(0x0205) gespeichert ist, werden die Eigenschaften des laufenden
Druckauftrags in der Datenbank 152 gespeichert, oder die PDL-Daten
des Druckauftrags werden zum Eingangspuffer 154 gemäß dem Betriebcode
eines empfangenen Auftragspakets gesendet.
-
Die
Struktur vom Eingangspuffer 154 ist nachstehend unter Bezug
auf die 31 und 32 beschrieben.
Wie in 31 gezeigt, besteht der Eingangspuffer 154 aus
einer verwendeten Warteschlange UQ und einer freien Warteschlange
FQ, die später
zu beschreiben sind. Jede Warteschlange wird verwaltet durch Verbinden
einer Vielzahl von Pufferblöcken
in 32. Wie zuvor beschrieben, hat der Eingangspuffer 154 eine
Pufferblockform und ist aus einer Vielzahl von Pufferblöcken gebildet,
die jeweils über
Köpfe verfügen.
-
Wie
in 32 gezeigt, besteht der Pufferblock vom Kopf (12
Bytes) und einem Körper
(2048 Bytes). Der Kopf enthält
drei Bereiche, jeder mit vier Bytes, in denen die Kopfposition der
effektiven Daten gespeichert sind, die Anzahl von Bytes effektiver
Daten und eine Gegenstands-ID.
-
Die
Kopfposition der effektiven Daten ist die Kopfposition des effektiven
Datenabschnitts, gespeichert im Körper des Pufferblocks. Wenn
die Kopfposition der effektiven Daten beispielsweise 0 ist, bedeutet
dies, daß die
effektiven Daten an der Kopfposition vom Körper beginnen. Wenn die Kopfposition 2047 ist,
bedeutet dies, daß nur
das erste Byte vom Körper
effektive Daten hat. Die Datenposition der effektiven Daten wird
um eins inkrementiert, immer wenn der PDL-Übersetzer 155 ein
Byte der PDL-Daten aus dem Körper
des Pufferblocks gelesen hat.
-
Die
Anzahl von Bytes effektiver Daten ist der Umfang der Daten, die
im Körper
des Pufferblocks gespeichert sind. Eine Bytegröße von 2048 Bytes wird aufbereitet
als Körper
im Pufferblock, aber der Körper
muß nicht
vollständig
mit Daten ausgefüllt sein.
Wenn es beispielsweise 100 Bytes an PDL-Daten gibt, werden diese
im Körper
eines spezifischen Pufferblocks gespeichert, und die Anzahl von
Bytes der effektiven Daten, gespeichert im Pufferblock, wird auf
100 gesetzt. Wenn es 2100 Bytes an PDL-Daten gibt, können 2048
PDL-Datenbytes im Körper
des ersten Pufferblocks gespeichert werden, und die restlichen 52
Bytes können
im Körper
des zweiten Pufferblocks gespeichert werden.
-
Die
Anzahl von Bytes effektiver Daten wird um eins inkrementiert, immer
wenn der PDL-Übersetzer 155 ein
Byte an Daten ausgelesen hat.
-
Während einer
oder mehrere Pufferblöcke verwendet
werden können,
werden normalerweise bis mehrere 10 Pufferblöcke verwendet, weil die Empfangsgeschwindigkeit
niedrig ist, wenn es zu wenig Pufferblöcke gibt. In diesem Ausführungsbeispiel werden
10 Pufferblöcke
verwendet. Das heißt,
der Eingangspuffer 154 besteht aus 10 Pufferblöcken und
hat insgesamt eine Kapazität
von 20480 Bytes.
-
Diese
Pufferblöcke
werden verwaltet von einer FIFO-Warteschlange.
In diesem Ausführungsbeispiel
gibt es zwei Arten von FIFO-Warteschlangen: Eine verwendete Warteschlange
UQ und eine freie Warteschlange FQ.
-
Die
Pufferblöcke,
die der Host 100 sendet und in denen PDL-Daten gespeichert
sind, die noch nicht vom PDL-Übersetzer 156 bearbeitet
sind, werden untereinander in einer verwendeten Warteschlange UQ
in der Reihenfolge verkettet, in der die PDL-Daten empfangen werden. Leere Pufferblöcke, in
denen PDL-Daten nicht gespeichert sind im Körper, werden ebenfalls in einer
freien Warteschlange FQ verkettet.
-
Wird
der Drucker 150 aktiviert, dann werden alle zehn Pufferblöcke gemeinsam
in der freien Warteschlange FQ verkettet, und es gibt keine Pufferblöcke in der
verwendeten Warteschlange UQ. Wenn ein Druckauftrag vom Host 100 gesendet
wird, erfolgt das Auslesen eines Pufferblockes aus der freien Warteschlange
FQ. Die PDL-Daten für
den Druckauftrag werden im Körper
des Pufferblocks gespeichert, der dann als Kette der verwendeten
Warteschlange UQ hinzugefügt
wird. Dieser Prozeß wird
solange wiederholt, bis Druckaufträge fortgesetzt vom Host gesendet
werden.
-
Der
Ausgangspuffer 154 wird verwaltet unter Verwendung von
Pufferblöcken,
und nur die PDL-Daten für
einen Druckauftrag können
in einem Pufferblock gespeichert werden. Der Kopf steht bereit für einen
individuellen Pufferblock, und wenn das Speichern der PDL-Daten
für einen
Druckauftrag in einem Pufferblock erfolgt, wird die Auftrags-ID
vom Druckauftrag im Kopf des Pufferblocks gespeichert.
-
Nachstehend
beschrieben ist eine spezielle Erläuterung der Verarbeitung aus
der Zeit des Auftragsvorprozessors 153, der einen Druckauftrag empfängt, bis
die Speicherung der PDL-Daten für den
Druckauftrag im Eingangspuffer 154 erfolgt. 33 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Auftragsvorprozessor 153 von
der Zeit an ausführt,
da er einen Druckauftrag empfängt,
bis die PDL-Daten für
den Druckauftrag im Eingangspuffer 154 gespeichert sind.
-
Wenn
der Auftragsvorprozessor einen Druckauftrag empfängt, wird zunächst in
Schritt S3301 ein Pufferblock aus der freien Warteschlange FQ ausgelesen.
In Schritt S3302 werden so viele PDL-Daten wie möglich für den Druckauftrag im Körper des
Pufferblocks gespeichert.
-
In
Schritt S3303 erfolgt eine Überprüfung zur Bestimmung,
ob alle PDL-Daten für
den Druckauftrag im Eingangspuffer 154 gespeichert sind.
Sind alle PDL-Daten gespeichert, werden in Schritt S3304 die Anzahl
von letzten Bytes der PDL-Daten, die gespeichert worden sind, und
die Gegenstands-ID des Druckauftrags in den Kopf des Pufferblocks
eingegeben. In Schritt S3305 wird der Pufferblock in der verwendeten
Warteschlange UQ verkettet. Danach ist die Verarbeitung beendet.
-
Sind
in Schritt S3303 alle PDL-Daten des Druckauftrags nicht im Eingangspuffer 154 gespeichert,
erfolgt in Schritt S3306 eine Überprüfung zur Bestimmung,
ob der Körper
des Pufferblocks voll ist. Ist der Pufferblock nicht voll, kehrt
die Programmsteuerung zu Schritt S3302 zurück, und die restlichen PDL-Daten
für den
Druckauftrag werden im Körper des
Pufferblocks gespeichert.
-
Ist
der Pufferblock aber voll, wird in Schritt S3308, wie in Schritt
S3304, die Anzahl von Bytes von PDL-Daten, die im Körper des
Pufferblocks gespeichert sind, und die Gegenstands-ID des Druckauftrags
in den Kopf des Pufferblocks eingegeben. In Schritt S3308 wird der
Pufferblock in die verwendete Warteschlange UQ verkettet. Die Programmsteuerung
kehrt zurück
zu Schritt S3301, und die restlichen PDL-Daten für den Druckauftrag werden in
einem neuen Pufferblock gespeichert.
-
Jedesmal,
wenn der Auftragsvorprozessor 153 PDL-Daten für einen
Druckauftrag auf diese Weise empfängt, werden die PDL-Daten im Eingangspuffer 154 gespeichert.
-
Erkennt
der PDL-Übersetzer 155,
daß es Pufferblöcke nicht
in der verwendeten Warteschlange UQ gibt, erfolgt das Auslesen der
Pufferblöcke aus
der Warteschlange, und zwar einer nach dem anderen, die dort gespeicherten
PDL-Daten werden übersetzt
und in Bilddaten umgesetzt.
-
Nachdem
der PDL-Übersetzer 155 alle PDL-Daten
umgesetzt hat, die im Pufferblock gespeichert sind, in Bilddaten,
und der Körper
des Pufferblocks leer ist, dann wird der Pufferblock mit der freien
Warteschlange FQ verbunden.
-
Solange
es restliche Pufferblöcke
in der verwendeten Warteschlange UQ gibt, wiederholt der PDL-Übersetzer 155 die
obige Verarbeitung.
-
Eine
spezielle Erläuterung
wird nun für
die Verarbeitung gegeben, die der PDL-Übersetzer 155 ausführt. 34 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die der PDL-Übersetzer 155 ausführt, wenn
die PDL-Daten übersetzt
werden, die in einem Eingangspuffer 154 gespeichert sind,
und ein Zeichnungsgegenstand wird erzeugt.
-
In
Schritt S3401 erfolgt eine Überprüfung zum
Bestimmen, ob es Pufferblöcke
gibt, die zunächst
in der verwendeten Warteschlange UQ vorhanden sind. Wenn es keine
Pufferblöcke
in der verwendeten Warteschlange UQ gibt, ist die Verarbeitung abgeschlossen.
-
Wenn
es Pufferblöcke
in der verwendeten Warteschlange UQ gibt, werden in Schritt S3403
im Körper
des Pufferblocks gespeicherte PDL-Daten, der am Kopf der verwendeten
Warteschlange UQ positioniert ist, übersetzt und umgesetzt in einen
Zeichnungsgegenstand. Dann wird der gewonnene Bildgegenstand zum
Zeichnungspuffer 156 übertragen.
-
In
Schritt S3404 wird dieser Pufferblock aus der verwendeten Warteschlange
UQ gelöscht,
und in Schritt S3405 wird der Pufferblock mit der freien Warteschlange
FQ verbunden.
-
Die
Logikkanalsteuerung 106 vom Host 100 ist nachstehend
beschrieben. Die Logikkanalsteuerung 106 verarbeitet die
oben beschriebene OSI-Netzwerkschicht und die Transportschicht.
Die Logikkanalsteuerung 106 benennt ein Auftragspaket, das
der Auftragspaketgenerator 107 ausgegeben hat, und ein
Steuerpaket, das die Nutzeinheit 105 ausgegeben hat, an
einen Auftragskanal beziehungsweise an einen Steuerkanal, um ein
Logikkanalpaket zu bilden, und sendet das Logikkanalpaket an den
I/F-Treiber 104 der nachfolgenden Stufe. Die Logikkanalsteuerung 106 empfängt darüber hinaus das
Logikkanalpaket aus dem Drucker 150 über den I/F-Treiber 104 und
teilt ihn ein in zwei Logikkanäle und
sendet ein Antwortpaket vom Drucker 150 an die Nutzeinheit 105.
-
Das
Logikkanalpaket ist nachstehend erläutert. Das Logikkanalpaket
enthält
Daten, die aus Strom von Paketen bestehen, festgelegt gemäß IEEE 1284.4.
Das Logikkanalpaket wird als Einzelsatz von Daten über das Übertragungsmedium (Schnittstelle) 180 gesandt,
und lokal analysiert zum Aufbereiten einer Vielzahl von Kanälen durch
die Logikkanalsteuerung 106 des Hosts 100 und
der Logikkanalsteuerung 151 vom Drucker 150. Dann
wird ein Auftragspaket oder Steuerpaket zur nachfolgenden Stufe
gesandt.
-
Die
Paketstruktur gemäß IEEE 1284.4
ist nachstehend erläutert. 6 ist
ein konzeptionelles Diagramm zur Erläuterung der Paketstruktur gemäß IEEE 1284.4.
Das Paket gemäß IEEE 1284.4
hat einen Kopf von sechs Bytes: die ersten zwei Bytes werden verwendet
für eine
Sockel-ID, die nächsten
beiden Bytes für
die Datenlänge,
ein Byte für
einen Bereitstellungsinformationsbereich, ein Byte für einen
Steuerbereich und die letzten 64 kBytes (einschließlich Kopflänge) für den größten Datenabschnitt.
Der Bereitstellungsinformationsbereich ist ein erforderliches Konzept
für die
Ablaufsteuerung, die später
zu beschreiben ist. Die Sockel-ID vom Auftragskanal ist festgelegt
mit 0x10, sowohl für
die Sendeseite als auch für
die Empfangsseite, und die Sockel-ID des Steuerkanals ist festgelegt
mit 0x20, sowohl für
die Sendeseite als auch für
die Empfangsseite.
-
Nachstehend
erläutert
ist das Logikkanalpaket, wenn ein Auftragspaket von 256 Bytes vom
Auftragspaketgenerator 107 gesendet wird. 7 ist
ein konzeptionelles Diagramm zur Erläuterung der Struktur eines
Logikkanalpakets, in dem das oben beschriebene Auftragspaket geändert wird.
Die Primärsockel-ID
= 0x10 und die Sekundärsockel-ID
= 0x10 werden bestimmt, um in ein Logikkanalpaket eines Auftragspakets
geändert
zu werden, das der Auftragspaketgenerator 107 vom Host 100 des
Auftragsvorprozessors 153 im Drucker 150 sendet.
-
Der
Umfang vom Logikkanalpaket einschließlich Kopf wird als Datenlänge bestimmt.
Da in 7 der Datenumfang 256 Bytes beträgt und der Kopfumfang
6 Bytes, ist die Gesamtdatenlänge
262 Bytes. Obwohl nicht speziell erforderlich, wird 0x00 in der Bereitstellungsinformation
und in Steuerbereichen gespeichert. 8 ist ein
Konzeptdiagramm des Änderns
vom Steuerpaket mit einer Datenlänge von
16 Bytes in ein Logikkanalpaket.
-
Das
Konzept vom Bereitstellungsinformationsbereich ist nachstehend erläutert. Der
Bereitstellungsinformationsbereich wird verwendet zur Ablaufsteuerung.
Wenn Daten aus einer speziellen Einrichtung empfangen werden und
zeitweilig in Ressourcen zwischengespeichert werden müssen in
Bereitstellungsinformationsbereichen (allgemein ein Puffer, der
Schreib-/Lesespeichermittel beinhaltet, die als Eingangspuffer bezeichnet
werden, während
das Vorhandensein des Druckers in dieser Erfindung angenommen wird),
muß der
Umfang an zu empfangenden Daten so gesteuert werden, daß er die
Kapazität
des Eingangspuffers nicht überschreitet,
denn anderenfalls kann das Speichern der empfangenen Daten fehlschlagen,
und die Verarbeitung wird nicht korrekt ausgeführt. Um ein derartiges Problem
zu vermeiden, wird ein Ablaufsteuerprozeß zum Einstellen des Haltens
und Wiederaufnehmens einer Datensendung ausgeführt.
-
Die
Bereitstellungsinformation wird ausgegeben von der Paketempfangsseite
zur Sendeseite für jeden
Kanal und zeigt auf, wie viele Empfangspakete der Empfangsseite
zu empfangen sind. Die Paketempfangsseite garantiert, daß die Pakete
empfangen und als Bereitstellungsinformationen ausgegeben werden
können.
Wenn es keine Bereitstellungsinformation gibt, bedeutet dies, daß die Empfangsseite Daten über den
passenden Kanal nicht empfangen kann. Ein Bereitstellungsinformationsanforderungsbefehlspaket
und ein Antwortpaket werden zum Bereitstellungsinformationsaustausch
verwendet. Wenn der Host 100 alle Bereitstellungsinformationen für den Auftragskanal
verwendet hat und kann ein Logikkanalpaket nicht senden, dann sendet
der Host 100 ein Bereitstellungsinformationsanforderungsbefehlspaket
an den Drucker 150.
-
9 ist
ein konzeptionelles Diagramm zur Erläuterung eines Bereitstellungsinformationsanforderungsbefehlspakets.
Das Bereitstellungsinformationsanforderungsbefehlspaket besteht
aus 13 Bytes, und 0x00 ist für
die Primärsockel-ID
und die Sekundärsockel-ID
zugewiesen, und 0x04 wird für
einen Befehl eingesetzt. Da die Sockel-ID = 0x00 ist und ein spezieller
Kanal nur für
Befehle verwendet wird, kann dies nicht für den Austausch von Echtzeitdaten
verwendet werden. Die Sockel-ID zur Anforderung der Bereitstellungsinformation
ist mit Bytes 8 und 9 in 9 benannt, während die Anzahl erforderlicher Bereitstellungsinformationen
mit den Bytes 10 und 11 angegeben ist. Wenn der Drucker 150 das Bereitstellungsinformationsanforderungsbefehlspaket
empfängt,
erzeugt er ein Antwortpaket gemäß dem Zustand
vom Eingangspuffer 154 und sendet das Antwortpaket an den
Host 100.
-
10 ist
ein konzeptionelles Diagramm zur Erläuterung eines Antwortpakets.
Das Antwortpaket besteht aus 12 Bytes, und 0x00 wird für die Primärsockel-ID
und die Sekundärsockel-ID
eingesetzt, während
0x84 für
den Befehl eingesetzt wird. Wenn in 10 die
Bereitstellungsinformation ausgegeben wird, erfolgt Einsetzen von
0x00 als Ergebnis (Byte 8), und der Bereitstellungsinformationsumfang
kann ausgegeben werden, wie in den Bytes 11 und 12 eingestellt.
-
Die
von der Logikkanalsteuerung ausgeführte Verarbeitung ist nachstehend
beschrieben. Da die Logikkanalsteuerung 106 vom Host 100 und
die Logikkanalsteuerung 151 vom Drucker 150 dieselbe
Integralstruktur aufweisen, wird die nachstehende Beschreibung für beide
Logikkanalsteuerungen 106 und 151 gemeinsam gegeben.
-
11 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die die Logikkanalsteuerung
ausführt.
In Schritt S1101 wird die Empfangssteuerverarbeitung ausgeführt, und
in Schritt S1102 wird die Sendesteuerverarbeitung ausgeführt. Die
Verarbeitung für
die Logikkanalsteuerung besteht aus einer Endlosschleife, die die
Schritte S1101 und S1102 umfaßt.
-
12 bis 14 sind
detaillierte Ablaufdiagramme, die den Empfangsprozeß zeigen
(Schritte S1101 in 11), ausgeführt von der Logikkanalsteuerung.
In Schritt S1201 wird der I/F- Treiber überprüft, und
in Schritt S1202 erfolgt eine Überprüfung zum
Bestimmen, ob Daten präsent
sind. Sind Daten präsent,
werden in Schritt S1203 Daten für
ein Logikkanalpaket untersucht. Für die Primärsockel-ID 0x00 verzweigt sich
die Programmsteuerung zu Schritt S1205, für die Primärsockel-ID 0x10 verzweigt sich die
Programmsteuerung zu Schritt S1212, und für die andere Primärsockel-ID
verzweigt sich die Programmsteuerung zu Schritt S1214.
-
Wenn
der Primärsockel
0x00 ist, und sich die Programmsteuerung zu Schritt S1205 verzweigt, wird
angenommen, daß ein
Befehlskanal festgelegt ist durch IEEE 1284.4. Wenn die Befehls-ID
für den Befehlskanal
gleich 0x04 ist, wird angenommen, daß das Paket ein Bereitstellungsinformationsanforderungsbefehlspaket
ist, und die Programmsteuerung schreitet fort zu Schritt S2106.
-
In
Schritt S1206 wird ein Kanal, für
den eine Bereitstellungsinformation angefordert ist, spezifiziert durch Überprüfen der
Primärsockel-ID
und der Sekundärsockel-ID,
die in Bytes 8 und 9 im Bereitstellungsinformationsanforderungsbefehlspaket
eingegeben worden sind, und die Anzahl freier Bereitstellungsinformationen
wird errechnet aus der Kapazität
eines freien Eingangspuffers für
den passenden Kanal. Da für
den Befehlskanal (ID = 0x00) der Umfang einer Bereitstellungsinformation
mit 64 Bytes angenommen wird, und zwar gemäß IEEE 1284.4, können vier
Bereitstellungsinformationen bereitgestellt werden, wenn es 256
freie Bytes im Befehlskanal gibt.
-
In
Schritt S1207 wird die Anzahl von Bereitstellungsinformationen,
die angefordert sind im Bereitstellungsinformationsanforderungsbefehlspaket,
verglichen mit der Anzahl freier Bereitstellungsinformationen, die
in Schritt S1206 erzielt werden. Wenn die Anzahl freier Bereitstellungsinformationen in
Schritt S1208 größer ist,
wird ein Antwortpaket erzeugt und an den I/F-Treiber 104 oder 159 abgegeben,
in den dieselbe Zahl eingegeben wird, wie die Anzahl angeforderter
Bereitstellungsinformationen.
-
Wenn
in Schritt S1207 die Anzahl freier Bereitstellungsinformationen
geringer als die Anzahl ist, die angefordert wurde, wird in Schritt
S1209 ein Antwortpaket, in dem die Anzahl aller freier Bereitstellungsinformationen
eingegeben ist, erzeugt und an den I/F-Treiber 104 oder 159 abgegeben.
Wenn keine freie Bereitstellungsinformation verfügbar ist, wird die Anzahl an
Bereitstellungsinformationen auf "0" gesetzt.
-
Wenn
in Schritt S1216 die Befehls-ID vom Befehlskanal gleich 0x84 ist,
wird angenommen, daß das
Paket ein Antwortpaket für
den Bereitstellungsinformationsanforderungsbefehl ist. Die Bereitstellungsinformation
für einen
Kanal, der in diesem Falle in Schritt S1217 zur Sockel-ID gehört, die
mit Bytes 9 und 10 vom Antwortpaket gemäß 10 aufgezeigt ist,
wird um eine äquivalente
Zahl inkrementiert, die der auf die unter Bytes 11 und 12 aufgezeigten
Größe äquivalent
ist.
-
Wenn
die Primärsockel-ID
gleich 0x10 ist und sich das Programm zu Schritt S1212 verzweigt, wird
in diesem Ausführungsbeispiel
angenommen, daß das
Paket für
einen Auftragskanal ist. Der Kopf des Logikkanalpakets wird gelöscht, und
die hinzugenommenen Daten in das Paket werden zum Auftragskanal
gesandt. Die Daten sind jene im oben beschriebenen Auftragspaket.
Da zu dieser Zeit für
die Logikkanalsteuerung 151 vom Drucker 150 der
Auftragskanal verbunden ist mit dem Auftragsvorprozessor 153, übersetzt
hiernach der Auftragsvorprozessor 153 das Auftragspaket.
Andererseits erfordert die Logikkanalsteuerung 106 des
Hosts 100 nicht das Ausführen des Prozesses zum Empfang
des Auftragskanals.
-
Wenn
die Primärsockel-ID
weder 0x00 noch 0x10 ist, verzweigt sich die Programmsteuerung zu Schritt
S1214, es wird angenommen, daß das
Paket für
den Steuerkanal (Primärsockel-ID
= 0x20) ist. Der Kopf des Logikkanalpakets wird gelöscht, und
die dem Paket hinzugefügten
Daten werden zum Steuerkanal gesendet. Die Daten sind jene im zuvor
beschriebenen Steuerpaket. Da zu dieser Zeit für die Logikkanalsteuerung 151 des
Druckers 150 der Steuerkanal mit dem Informationsverwalter 160 verbunden
ist, wird hiernach das Steuerpaket vom Informationsverwalter 160 übersetzt.
Da andererseits für die
Logikkanalsteuerung 106 vom Host 100 der Steuerkanal
mit der Nutzeinheit 105 zugeschaltet ist, wird hiernach
das Steuerpaket von der Nutzeinheit 105 übersetzt.
-
15 und 16 sind
detaillierte Ablaufdiagramme, die den Sendesteuerprozeß (Schritt S1102
in 11) zeigen, ausgeführt von der Logikkanalsteuerung.
In Schritt S1501 wird zunächst
ein Auftragskanal überprüft. Für die Logikkanalsteuerung 106 vom
Host 100 wird der Auftragskanal mit dem Auftragspaketgenerator 107 verbunden,
während
für die
Logikkanalsteuerung 151 vom Drucker 150 kein Auftragskanal
angeschlossen wird.
-
In
Schritt S1502 erfolgt eine Überprüfung zum
Bestimmen, ob Daten für
den Auftragskanal präsent
sind. Sind Daten für
den Auftragskanal präsent, erfolgt
in Schritt S1503 eine Überprüfung zum
Bestimmen, ob es eine verfügbare
Bereitstellungsinformation zum Senden eines Auftrags an den Drucker 150 gibt.
Ist eine Bereitstellungsinformation verfügbar, wird in Schritt S1504
der Kopf vom Paket gemäß IEEE 1284.4
den Daten hinzugefügt,
um ein Paket zu bilden, das danach an den I/F-Treiber 104 in
der nachfolgenden Stufe gesendet wird. Die Anzahl verfügbarer Bereitstellungsinformationen
für die
Auftragspakete, verwendet für
das Senden, wird reduziert. Wenn keine Bereitstellungsinformation
verfügbar
ist, folgt in Schritt S1505 ein Bereitstellungsinformationsanforderungsbefehlspaket,
das zum Befehlskanal gesendet wird, um eine Bereitstellungsinformation
zu erhalten. Zu dieser Zeit wird die Anzahl verfügbarer Bereitstellungsinformationen
für Befehlspakete
dekrementiert.
-
In
Schritt S1506 wird der Steuerkanal überprüft. Für die Logikkanalsteuerung 106 vom
Host 100 wird der Steuerkanal mit der Nutzeinheit 105 verbunden,
während
die Logikkanalsteuerung 151 vom Drucker 150 des
Auftragskanals eine Verbindung zum Informationsverwalter 160 bekommt.
-
In
Schritt S1507 erfolgt eine Überprüfung zum
Bestimmen, ob Daten für
einen Steuerkanal präsent
sind. Sind Daten präsent,
erfolgt in Schritt S1508 eine Überprüfung zum
Bestimmen, ob es eine verfügbaren
Bereitstellungsinformation für
den Steuerkanal zum Auftrag für
den Drucker 150 gibt. Ist eine Bereitstellungsinformation
verfügbar,
wird in Schritt S1509 der Kopf für
das Paket gemäß IEEE 1284.4
den Daten hinzugefügt,
um ein Paket zu bilden, das danach an den I/F-Treiber 104 in
der nachfolgenden Stufe gesendet wird, und die Anzahl der verfügbaren Bereitstellungsinformationen
für den
Steuerkanal wird reduziert. Ist keine Bereitstellungsinformation
verfügbar,
wird in Schritt S1510 ein Bereitstellungsinformationsanforderungspaket
an den Befehlskanal gesendet, um eine Bereitstellungsinformation
zu erhalten. Gleichzeitig wird die Anzahl von den für das Befehlspaket
verfügbaren
Bereitstellungsinformationen dekrementiert.
-
Da
die beiden Logikkanäle,
der Auftragskanal und der Steuerkanal für das Übertragungsmedium vorgesehen
sind, wie zuvor beschrieben, selbst wenn ein Druckauftrag, der PDL-Daten
aufzeigt, die vom Host 100 zum Drucker 150 gesendet
werden, kann das Hereinnehmen oder die Einstellung von Information
für den
Druckauftrag des Druckers 150 oder das Annullieren eines
Druckauftrags angefordert werden von der Nutzeinheit 105 des
Hosts 100.
-
Nachstehend
beschrieben ist die Nutzeinheit 105 vom Host 100.
Die Nutzeinheit 105 wird verwendet zur Anzeige der Liste
und der Eigenschaften von Druckaufträgen für einen Anwender, und um dem
Anwender zu ermöglichen,
das Informationseinstellen für
einen Druckauftrag und das Annullieren eines Druckauftrags zu ermöglichen.
Die Nutzeinheit 105 verwendet den Steuerkanal zum Austausch
mit dem Drucker 150 eines Steuerpakets, um einen Druckauftrag
zu erzielen oder einzustellen, und Einrichtungsinformation bezüglich des
Druckers 150, oder um das Annullieren eines Druckauftrags
anzuweisen.
-
Das
Steuerpaket sowie das Auftragspaket hat die in 3 gezeigte
Datenstruktur. Die in Byte 0 bis Byte 11 eingegebene Information
vom Paketkopf ist ebenfalls dieselbe wie jene für das Auftragspaket, mit Ausnahme
des Betriebscodes, der sich vom Auftragspaket unterscheidet, wie
folgt.
0x010b: Befehl zum Annullieren eines Druckauftrags
0x010d:
Annehmen einer Liste von Druckaufträgen
0x0105: Eigenschaften
einstellen
0x0106: Eigenschaften annehmen
0x0110: Befehl
zum Anhalten des Druckers
0x0111: Befehl zum Wiederherstellen
des Druckers
0x011a: Befehl zum Rücksetzen des Druckers
-
Anders
als bei Auftragspaketen werden Steuerpakete für ihre individuellen einzigartigen
Zwecke verwendet.
-
Um
Druckaufträge
zu verstehen, die im Drucker 150 gespeichert sind, sendet
die Nutzeinheit 105 vom Host 100 an den Steuerkanal
ein Steuerpaket, in dem der Betriebscode (0x010d) gespeichert ist zum
Annehmen von Druckaufträgen.
Die Klassen-ID (0x0102), die die Druckauftragsklasse aufzeigt, wird in
den Datenabschnitt eingegeben. Das Steuerpaket wird geändert in
ein Logikkanalpaket IEEE 1284.4 von der Logikkanalsteuerung 106,
und das gewonnene Paket wird über
den I/F-Treiber 104 zum Drucker 150 gesendet.
-
Der
I/F-Treiber 159 vom Drucker 150 empfängt das
Logikkanalpaket, den Kopf des Logikkanalpakets, der gelöscht wird
von der Logikkanalsteuerung 151, und das gewonnene Steuerpaket
wird an den Informationsverwalter 160 gesendet.
-
Der
Informationsverwalter 160 überprüft den Betriebscode, der im
empfangenen Steuerpaket eingegeben ist, und bestimmt, daß das Annehmen
der Druckauftragsliste angefordert ist. Die Listeninformation für die Druckaufträge, gespeichert
in der Datenbank 152, werden gewonnen, und ein Antwortpaket wird
gesendet.
-
Das
Antwortpaket und auch das Auftragspaket haben die in 3 gezeigte
Struktur. Derselbe Betriebscode wie der für das empfangene Steuerpaket,
das heißt
der Betriebscode für
das Hereinnehmen der Druckauftragsliste, wird im Betriebscodebereich
des Antwortpakets gespeichert. Die Anzahl von Druckaufträgen, die
der Drucker 150 identifiziert, und die Liste der Gegenstands-ID
für die
Druckaufträge, sind
im Datenabschnitt gespeichert.
-
Wenn
mit jedem Druckauftrag Informationen für den Auftragsnamen, für den Eigner
und für
den Umfang des Ergebnisses der Auftragseigenschaftseinstelloperation
enthalten ist, kann die Nutzeinheit 105 detaillierte Information
bezüglich
des Druckauftrags erhalten. Wenn die Nutzeinheit 105 die
Liste von Druckaufträgen
enthält,
sendet sie ein Steuerpaket an den Drucker 150, in dem der
Betriebscode (= 0x0106) gespeichert ist, um detaillierte Eigenschaften
anzufordern. Die Gegenstands-ID vom Druckauftrag, für den die
detaillierten Eigenschaften gewünscht
sind, und die Eigenschafts-ID, die zu erzielen ist, sind im Datenabschnitt
des Steuerpakets gespeichert. Wenn beispielsweise der Name vom Druckauftrag
gewonnen ist und gleich "1" ist, wird dieser
als Gegenstands-ID und 0x0101 als Eigenschafts-ID eingegeben. Gemäß dem Betriebscode für das empfangene
Steuerpaket bestimmt der Informationsverwalter 160, daß das Hereinnehmen
von Eigenschaften angefordert ist. Der Informationsverwalter 160 fordert
dann diese aus der Datenbank 152 an, den Wert der Eigenschafts-ID,
der für
den Druckauftrag bestimmt, und sendet ein Antwortpaket.
-
Um
einen beliebigen Druckauftrag im Drucker 150 zu annullieren,
sendet die Nutzeinheit 105 an den Drucker 150 ein
Steuerpaket, in dem der Betriebscode (= 0x010b) gespeichert ist,
um das Annullieren eines Druckauftrags anzuweisen. Gemäß dem Operationscode
für das
empfangene Steuerpaket bestimmt der Informationsverwalter 160,
daß das
Annullieren eines Druckauftrags angefordert ist. Wenn Druckdaten
für den
Druckauftrag, für
den das Annullieren angefordert ist, entweder im Auftragsvorprozessor 143,
im Eingangspuffer 154, im PDL- Übersetzer 150,
im Zeichnungspuffer 156 oder in der Zeichnungseinheit 157 gespeichert
ist, annulliert der Informationsverwalter 160 den zur Sache
gehörigen Druckauftrag.
Ist der Druckauftrag annulliert, sendet der Informationsverwalter 160 ein
Antwortpaket, das aufzeigt, daß der
Druckauftrag normal annulliert ist. Angemerkt sei, daß die Gegenstands-ID
vom Druckauftrag, der zu annullieren ist, im Datenabschnitt des Steuerpakets
gespeichert ist.
-
17 ist
ein Ablaufdiagramm, das die Auftragsannullierverarbeitung zeigt,
die der Informationsverwalter 160 ausführt. Wenn der Informationsverwalter 160 ein
Steuerpaket empfängt,
in dem der Betriebscode (= 0x010b) gespeichert ist zum Anweisen
des Annullierens eines Druckauftrags, sendet in Schritt S1701 der
Informationsverwalter 160 ein Druckauftragannulliersignal
an den Auftragsvorprozessor 153 sowie die Gegenstands-ID
des zu annullierenden Druckauftrags. Dann wartet der Informationsverwalter 160,
bis der Vorprozessor 153 die im Ablaufdiagramm von 18 gezeigte
Verarbeitung abgeschlossen hat. Nach Empfang einer Endemeldung aus
dem Auftragsvorprozessor 143 beginnt der Informationsverwalter 160 den
Prozeß mit
Schritt S1702.
-
In
Schritt S1702 wird die Gegenstands-ID, gespeichert im Kopf des Pufferblockes
im Eingangspuffer 154, überprüft. Wenn
die Gegenstands-ID zur Gegenstands-ID vom zu annullierenden Druckauftrag
paßt,
werden die PDL-Daten, gespeichert im Pufferblock, für diese
Gegenstands-ID ungültig
gemacht.
-
Nachstehend
speziell erläutert
ist die Verarbeitung, die der Informationsverwalter 160 ausführt, um
die PDL-Daten für
einen zu annullierenden Druckauftrag ungültig zu machen. 35 ist
ein Ablaufdiagramm, das die Verarbeitung zeigt, die der Informationsverwalter 160 ausführt, um
die PDL-Daten für
einen zu annullierenden Druckauftrag ungültig zu machen, die im Eingangspuffer 154 gespeichert
sind.
-
In
Schritt S3501 wird zunächst
eine Überprüfung durchgeführt zum
Bestimmen, ob es Pufferblöcke
gibt, die mit einer verwendeten Warteschlange UQ verbunden sind.
Sind keine Pufferblöcke
verbunden, ist die Verarbeitung danach beendet.
-
Gibt
es aber Pufferblöcke,
die mit der verwendeten Warteschlange UQ verbunden sind, dann wird
in Schritt S3502 einer der Pufferblöcke (anderer als ein Pufferblock,
der zuvor in diesem Schritt verwendet wurde) überprüft. In Schritt S3503 erfolgt
eine Überprüfung zum
Bestimmen, ob die Gegenstands-ID, gespeichert im Kopf des Pufferblockes, zur
Gegenstands-ID des zu annullierenden Druckauftrags paßt.
-
Passen
die beiden Gegenstands-ID nicht zueinander, geht die Programmsteuerung
weiter zu Schritt S3504.
-
Wenn
die beiden Gegenstands-ID zueinander passen, wird in Schritt S3305
der Pufferblock aus der verwendeten Warteschlange UQ gelöscht. In Schritt
S5306 wird dann der Pufferblock gelöscht, der mit der freien Warteschlange
FQ verbunden ist. Die Programmsteuerung schreitet dann fort zu Schritt S3504.
-
In
Schritt S3504 erfolgt eine Überprüfung zum
Bestimmen, ob alle verbundenen Pufferblöcke, die in der benutzten Warteschlange
UQ verbunden sind, überprüft worden
sind. Sind alle Pufferblöcke überprüft worden,
dann ist die Verarbeitung danach beendet. Sind nicht alle Pufferblöcke überprüft worden,
dann werden in Schritt S3502 die restlichen Pufferblöcke überprüft, und
die Verarbeitung wird wiederholt.
-
Die
Köpfe aller
Pufferblöcke,
die mit der verwendeten Warteschlange UQ verbunden sind, werden
in der zuvor beschriebenen Weise überprüft. Ein Pufferblock, dessen
Gegenstands-ID vom zu annullierenden Druckauftrag im Kopf gespeichert
ist, wird aus der verwendeten Warteschlange UQ gelöscht und
wird mit der freien Warteschlange FQ verbunden. Für einen
zu annullierenden Druckauftrag werden die PDL-Daten, die im Eingangspuffer 154 gespeichert
sind, ungültig
gemacht.
-
Da
im Ergebnis ein Druckauftrag, für
den PDL-Daten in einem Pufferblock des Eingangspuffers 154 gespeichert
sind, leicht identifiziert werden können unter Verwendung der Gegenstands-ID,
können
die PDL-Daten für
einen Druckauftrag, der zu annullieren ist, im Eingangspuffer 154 ungültig gemacht werden.
-
In
Schritt S1703 in 17 wird der Druckauftrag, der
in der Datenbank 152 verwaltet wird, überprüft zum Bestimmen, ob die PDL-Daten
für den Druckauftrag
vom PDL-Übersetzer 155 übersetzt werden.
Wenn die PDL-Daten übersetzt
werden, erfolgt in Schritt S1704 das Zurücksetzen vom PDL-Übersetzer 155,
und die PDL-Daten werden aufgegeben. In Schritt S1705 werden das
Druckauftragsannulliersignal und die Gegenstands-ID des Druckauftrags
zur Zeichnungseinheit 157 gesendet. Die Verarbeitung ist
danach abgeschlossen.
-
Wie
zuvor beschrieben, können
die PDL-Daten für
einen Druckauftrag gelöscht
werden, und Druckdaten, wie ein Zeichnungsgegenstand, werden ungültig gemacht,
beginnend mit jenen nahe der Eingangsstufe. Selbst wenn die Druckdaten
für einen Druckauftrag
in mehreren Orten vorhanden sind, können alle diese Daten ungültig gemacht
werden, mit Ausnahme der Daten, die zum Drucken für die Druckmaschine 158 verwendet
werden.
-
Nachstehend
erläutert
ist der Auftragsvorprozessor 153 in Schritt S1701 in 17. 18 ist ein
Ablaufdiagramm, das die Druckauftragsannullierverarbeitung zeigt,
die der Auftragsvorprozessor 153 ausführt.
-
Wie
zuvor beschrieben, beginnt das Senden eines Auftrags durch den Auftragspaketgenerator 107 mit
dem Senden eines Auftragspakets, in dem der Auftragsstartbetriebscode
(0x0201) gespeichert ist, und endet mit dem Senden eines Auftragspakets, in
dem der Auftragsendebetriebscode (0x0205) gespeichert ist. Wenn
der Auftragsvorprozessor 153 ein Auftragspaket empfängt, bei
dem der Auftragsstartbetriebscode (0x0201) gespeichert ist, registriert
der Auftragsvorprozessor 153 in der Datenbank 152 die Auftrags-ID,
die einzig für
den Druckauftrag zugeordnet ist. Da die letzte Gegenstands-ID vom
Druckauftrag gespeichert ist, kann folglich ein Druckauftrag, zu
dem ein aktuell empfangenes Auftragspaket gehört, identifiziert werden.
-
Wenn
ein Druckauftragssignal und die Gegenstands-ID eines Druckauftrags
vom Informationsverwalter 160 empfangen sind, und wenn
in Schritt S1801 ein Auftragspaket, das zu allerletzt empfangen
wurde, für
einen Druckauftrag ist, der zur empfangenen Gegenstands-ID paßt, wird
das Auftragspaket in Schritt S1802 aufgegeben. Die Programmsteuerung
kehrt dann zu Schritt S1801 zurück.
Wenn in Schritt S51801 ein zuletzt empfangenes Auftragspaket nicht
für den
zur Sache gehörenden
Druckauftrag gehört,
dann wird die Verarbeitung beendet. Zum Beenden der Verarbeitung
wird ein Endemeldesignal zum Informationsverwalter 160 gesendet.
-
Nachstehend
erläutert
ist der Betrieb, den die Zeichnungseinheit 157 in Schritt
S1705 gemäß 17 ausführt. 19 ist
ein Ablaufdiagramm, das die Druckauftragsannullierverarbeitung zeigt,
die die Zeichnungseinheit 157 ausführt.
-
Sind
ein Druckauftragsannulliersignal und die Gegenstands-ID eines Druckauftrags
vom Informationsverwalter 160 empfangen, erfolgt in Schritt S1901
eine Überprüfung zum
Bestimmen, ob ein Zeichnungsgegenstand für den Druckauftrag, der zur empfangenen
Gegenstands-ID paßt,
aktuell gezeichnet wird. Wenn der Zeichnungsgegenstand für den Druckauftrag
gezeichnet wird, erfolgt in Schritt S1901 das Anhalten des Zeichnens,
und der Zeichnungsgegenstand wird aufgegeben. Die Programmsteuerung kehrt
dann zu Schritt S1901 zurück.
Wird der Aufzeichnungsgegenstand für den zur Sache gehörenden Druckauftrag
nicht gezeichnet, dann ist die Verarbeitung abgeschlossen. Für diese
Verarbeitung können
nicht nur die Daten für
den sachdienlichen Druckauftrag in der Zeichnungseinheit, sondern
auch der Zeichnungsgegenstand für
den Druckauftrag, gespeichert im Zeichnungspuffer 156,
aufgegeben werden.
-
Gleichermaßen können das
Einstellen der Eigenschaften, der Befehl zum Anhalten des Druckers 150,
der Befehl zur Wiederherstellung des Druckers 150 und der
Befehl zum Zurücksetzen
des Druckers 150 durch Senden des Steuerpakets von der Nutzeinheit 105 zum
Host 100 zum Informationsverwalter 160 vom Drucker 150 erfolgen.
-
Nachstehend
beschrieben ist das Bedienfeld 161 vom Drucker 150. 20 ist
ein spezifisches Diagramm, das die Struktur des Bedienfeldes 161 zeigt.
Ein Flüssigkristallbildschirm 2001 wird
verwendet zur Darstellung des Zustands vom Drucker 150 und
von Meldungen. Ein Cursorknopf 2002 dient der Auswahl und
dem Einrichten von Einstellpunkten für den Drucker 150.
Eine Online-Taste 2003 wird
benutzt zum Ändern
des Online/Offline-Status vom Drucker 150. Ein Annullierknopf 2004 wird
verwendet zur Auswahl des Annullierens eines Druckauftrags, und ist
der Annullierknopf 2004 betätigt, wird der Informationsverwalter 160 vom
Drucker 150 darüber
informiert.
-
Nachstehend
erläutert
ist die Druckauftragsannullierverarbeitung, die erfolgt, wenn der
Annullierknopf 2004 betätigt
ist. 21 ist ein Ablaufdiagramm zur Erläuterung
der Druckauftragsannullierverarbeitung, die der Informationsverwalter 160 nach Betätigen des
Annullierknopfes 2004 ausführt. In Schritt S2101 erfolgt
eine Überprüfung zum
Bestimmen, ob ein Druckauftrag aktuell von der Zeichnungseinheit 157 ausgeführt wird.
wird ein Druckauftrag ausgeführt,
gewinnt man in Schritt S2102 die Gegenstands-ID des Druckauftrags,
und in Schritt S2103 wird der Druckauftrag annulliert. Die Verarbeitung
ist dann beendet. Wird kein Druckauftrag verarbeitet, erfolgt in
Schritt S2104 eine Überprüfung zum Bestimmen,
ob ein Druckauftrag aktuell vom PDL-Übersetzer 155 ausgeführt wird.
Wenn ein Druckauftrag vom PDL-Übersetzer 155 ausgeführt wird,
erhält
man in Schritt S2105 die Gegenstands-ID vom Druckauftrag, und in
Schritt S1206 wird der Druckauftrag annulliert. Danach ist die Verarbeitung beendet.
-
In
Schritt S1203 und S1206 erfolgt das Initialisieren des Prozesses
gemäß dem Ablaufdiagramm in 18 auf
der Grundlage der Gegenstands-ID des zu annullierenden Druckauftrags.
Die An-/ Abwesenheit eines Druckauftrags, der von der Zeichnungseinheit
oder dem PDL-Übersetzer 155 verarbeitet
wird, kann bestimmt werden durch Überprüfen der Zustände aller
Druckaufträge
vom Drucker 150, die in der Datenbank 152 gespeichert
sind.
-
Da
nur ein Druckauftrag annulliert wird, der sich nahe der Ausgangsstufe
befindet, kann folglich nur ein zu annullierender Druckauftrag durch
Bestätigen
verarbeitet werden, daß Material
gedruckt worden ist; oder wenn Druckdaten für eine ausgedehnte Zeitdauer
des Druckens verarbeitet aber noch nicht begonnen sind, kann der
erste Druckauftrag, der das Anhalten des Druckens verursacht, für eine ausgedehnte
Zeitdauer annulliert werden.
-
Im
Falle, daß eine
Vielzahl von Druckaufträgen
im Eingangspuffer 154 präsent sind und im Druckerpuffer 156,
muß ein
zu annullierender Druckauftrag gemäß den Spezifikationen für den Drucker 150 bestimmt
werden. Da in diesem Ausführungsbeispiel keiner
der Druckaufträge
zu annullieren ist, wird nicht in Betracht gezogen, ob ein Druckauftrag
im Eingangspuffer 154 und im Zeichnungspuffer 156 vorhanden
ist, wenn die Auswahl eines zu annullierenden Druckauftrags erfolgt.
-
Gemäß dem ersten
Ausführungsbeispiel
der vorliegenden Erfindung, wie es zuvor beschrieben ist, enthält das Druckersystem
den Host 100 und den Drucker 150, die miteinander über das Übertragungsmedium 180 verbunden
sind. Der Host 100 ist ausgestattet mit: dem Auftragspaketgenerator 107 zum
Hinzufügen
eines Kopfes, den Druckdaten für eine
Druckauftrag, der erzeugt wurde, um ein Paket zu bilden; der Nutzeinheit 105 zum
Erzielen des Verarbeitungszustandes eines Druckauftrags oder Einstellen
der Eigenschaft eines Druckauftrags für den Drucker 150;
und mit der Logikkanalsteuerung 106 zum Erzeugen eines
Pakets für
einen Auftragskanal, der zum Senden eines Druckauftrags verwendet wird,
und für
einen Steuerkanal, der zum Senden einer Steueranforderung aus der
Nutzeinheit 105 verwendet wird, und zum Multiplexen des
Paketes für ein
Einzelübertragungsmedium.
Der Drucker 150 ist ausgestattet mit: dem Auftragsvorprozessor 153 zum Feststellen
von Beginn und Ende eines Druckauftrags auf der Grundlage von Informationen,
die im Kopf des Auftragspakets beschrieben sind, empfangen vom Host 100,
und zum Registrieren des Druckauftrags in der Datenbank 152;
der Logikkanalsteuerung 151 zum Anwenden eines Pakets für die Multiplexverarbeitung
eines Auftragskanals und eines Steuerkanals für ein Einzelübertragungsmedium; dem
Informationsverwalter 160 zum Einstellen von Informationen
für einen
Druckauftrag oder zum Annullieren eines Druckauftrags gemäß einer
Anforderung in einem empfangenen Steuerpaket; und mit dem Bedienfeld 161,
das zur Anzeige des Zustands vom Drucker 150 verwendet
wird und für
Meldungen zur Eingabe eines Befehls für das Annullieren eines Druckauftrags.
Folglich lassen sich folgende Wirkungen erzielen.
-
Der
Auftragspaketgenerator 107 vom Host 100 bildet
mit der obigen Anordnung für
jeden Druckauftrag ein Paket, das aus PDL-Daten besteht und den Eigenschaften,
und der Auftragsvorprozessor 153 des Druckers 150 stellt
den Beginn und das Ende des Druckauftrags fest. Eine Gegenstands-ID kann
für dem
Druckauftrag zugeordnet werden, ohne daß die PDL-Daten für den Druckauftrag
analysiert werden.
-
Da
darüber
hinaus der Auftragsvorprozessor 153 eine Gegenstands-ID
im Eingangspuffer 154 mit PDL-Daten speichert, und da die
Zustände
der individuellen Druckaufträge
in der Datenbank 152 verwaltet werden, können PDL-Daten
für einen
Druckauftrag, der zu annullieren ist, ungültig gemacht werden, selbst
wenn sie vom PDL-Übersetzer 155 noch
nicht analysiert worden sind.
-
Da
die Druckdaten bezüglich
eines Druckauftrags, der zu annullieren ist, beginnend mit den Daten
nahe der Eingangsstufe ungültig
gemacht werden, können
alle Druckdaten für
den Druckauftrag ungültig
gemacht werden, mit Ausnahme jener Druckdaten, die zum Drucken von
der Druckmaschine 158 verwendet werden.
-
Der
Auftragskanal und der Steuerkanal werden dem Multiplexverfahren
unterzogen, relativ zum Übertragungsmedium 180 von
der Logikkanalsteuerung 106 des Hosts 100 und
der Logikkanalsteuerung 151 vom Drucker 150. Selbst
während
des Austauschs eines Druckauftrags im Auftragskanal kann die Nutzeinheit 105 vom
Host 100 die Information für den Druckauftrag und den
Drucker 150 erzielen oder einstellen und kann somit den
Druckauftrag in Echtzeit ausführen.
-
Das
Annullieren eines Druckauftrags kann nicht nur angewiesen werden
von der Nutzeinheit 105, sondern kann auch unter Verwendung
des Bedienfeldes 161 vom Drucker 150 angewiesen
werden, so daß ein
Anwender das Drucken anhalten kann, während er das Material bestätigt, das
gedruckt ist.
-
Da
darüber
hinaus der zu annullierende Druckauftrag als Druckauftrag bestimmt
ist, der nahe der Ausgangsstufe liegt, wird nur ein Druckauftrag ausgeführt, der
annulliert werden kann, während
das gedruckte Material bestätigt
wird, oder wenn das Drucken der Druckdaten für eine lange Zeit fortgesetzt wird
und das Drucken noch nicht begonnen hat, kann nur der erste Druckauftrag,
der den Druckprozeß zum
Halten veranlaßt,
annulliert werden.
-
Zweites Ausführungsbeispiel
-
Im
zweiten Ausführungsbeispiel
der vorliegenden Erfindung ist ein Logikkanal gemäß IEEE 1284.4
in der oberen Schicht durch eine Lokalverbindung gemäß IEEE 1284
installiert. In einem zweiten Ausführungsbeispiel der vorliegenden
Erfindung wird eine Erläuterung
für ein
System angegeben, das das Ethernet (Lokalbereichsnetz mit einem
Bus, der die Verbindungsstruktur nutzt, die von Xerox Corp., DEC Corp.
und Intel Corp. entwickelt wurde).
-
22 ist
ein spezielles Blockdiagramm, das die Anordnung einer Druckersystems
nach dem zweiten Ausführungssystem
der vorliegenden Erfindung veranschaulicht. Im Druckersystem nach
dem zweiten Ausführungsbeispiel
sind ein Host 2200 und ein Drucker 2250 miteinander über das
Ethernet 2280 verbunden.
-
Nach
dem zweiten Ausführungsbeispiel
der vorliegenden Erfindung ist der Host 2200 vom Druckersystem
ausgestattet mit: einer Anwendungseinheit 2201, einem Druckertreiber 2202,
einem Ausgangspuffer 2203, einem I/F-Treiber 2204,
einer Nutzeinheit 2205, einer Logikkanalsteuerung 2206 und mit
einem Auftragspaketgenerator 2207.
-
Der
Drucker 2250 des Druckersystems enthält eine Datenbank 2252,
einen Auftragsvorprozessor 2253, einen Eingangspuffer 2254,
einen PDL-Übersetzer 2255,
einen Zeichnungspuffer 2256, eine Zeichnungseinheit 2257,
eine Druckmaschine 2258, einen Auftragskanal-I/F-Treiber 2259,
einen Informationsverwalter 2260, ein Bedienfeld 2261 und einen
Steuerkanal I/F-Treiber 2262. Ein Ethernetadapter 2290 ist
an den Drucker 2250 angeschlossen.
-
Der
Unterschied vom ersten Ausführungsbeispiel
besteht darin, daß eine
Logikkanalsteuerung für
den Drucker 2250 nicht vorgesehen ist; daß der I/F-Treiber
eingeteilt ist in einen Auftragskanal-I/F-Treiber 2259 und
den Steuerkanal-I/F-Treiber 2262, und diese I/F-Treiber 2259 und 2262 sind
mit dem Ethernetadapter 2290 verbunden, und daß das Ethernet 2280 als
Verbindungsmittel verwendet wird. Da die anderen Anordnungen jenen
des ersten Ausführungsbeispiels
gleichen, wird hier keine weitere Beschreibung angegeben.
-
Im
zweiten Ausführungsbeispiel
sind der Auftragskanal-I/F-Treiber 2259 und
der Steuerkanal-I/F-Treiber 2262 miteinander zum Ethernetadapter 2290 verbunden,
welcher ein Paket für
den Auftragskanal und den Steuerkanal erzeugt. Wenn ein TCP/IP-Protokoll (Sendesteuerprotokoll/Internetprotokoll:
das Standardprotokoll vom Computernetz) verwendet wird, und wenn
beispielsweise TCP 515 (dieses Port wird als lpd verwendet) für den Auftragskanal
und UDP (User Datagram Protocol: Übertragungsprotokoll für eine Transportschicht,
die keine Zuverlässigkeit
bietet) 9100 für
den Steuerkanal verwendet wird, kann ein Konflikt zwischen den beiden Kanälen vermieden
werden.
-
Das
Druckersystem nach dem zweiten Ausführungsbeispiel, wie es zuvor
beschrieben wurde, enthält
den Host 2200 und den Drucker 2250, die miteinander über das Übertragungsmedium
(Ethernet) 220 verbunden sind. Der Host 2200 ist
ausgestattet mit: dem Auftragspaketgenerator 2207 zum Hinzufügen eines
Kopfes den Druckdaten für
jeden Druckauftrag, der erzeugt wird, um ein Paket zu bilden; der Nutzeinheit 2205 zum
Erzielen des Verarbeitungszustands eines Druckauftrags oder zum
Einstellen der Eigenschaft eines Druckauftrags für den Drucker 2250;
und der Logikkanalsteuerung 2206 zum Erzeugen eines Pakets
für einen
Auftragskanal, der verwendet wird zum Senden eines Druckauftrags
und für
einen Druckkanal, der verwendet wird zum Austauschen einer Steueranforderung
aus der Nutzeinheit 2205 und zum Multiplexen des Paketes
für ein Einzelübertragungsmedium.
Der Drucker 2250 ist ausgestattet mit: dem Auftragsvorprozessor 2253 zum
Erfassen von Anfang und Ende eines Druckauftrags auf der Grundlage
von Informationen, die im Kopf eines Auftragspakets beschrieben
sind, empfangen aus dem Host 2200, und zum Registrieren
eines Druckauftrags in der Datenbank 2252; dem Informationsverwalter 2260 zum
Einstellen von Information zum Druckauftrag oder zum Annullieren
eines Druckauftrags gemäß einer
Anforderung, die in einem empfangenen Steuerpaket enthalten ist;
und mit dem Bedienfeld 2261, das für die Darstellung des Zustands
vom Drucker 2250 und für
Meldungen verwendet wird, und zur Eingabe eines Befehls für das Annullieren
eines Druckauftrags. Darüber
hinaus ist der Ethernetadapter 2290 vorgesehen zwischen
dem Drucker 2250 und dem Übertragungsmedium (Ethernet) 2280 zum Ändern eines
Auftragskanals und eines Steuerkanals in einen Logikkanal. Folglich
lassen sich die folgenden Wirkungen erzielen.
-
Mit
der obigen Anordnung erzeugt der Auftragspaketgenerator 2207 vom
Host 2200 für
jeden Druckauftrag ein Paket, bestehend aus PDL-Daten und den Eigenschaften,
und der Auftragsvorprozessor 2253 vom Drucker 2250 erfaßt Anfang
und Ende des Druckauftrags. Die Gegenstands-ID kann dem Druckauftrag
folglich zugeordnet werden, ohne daß PDL-Daten des Druckauftrags
analysiert werden müssen.
-
Da
darüber
hinaus der Auftragsvorprozessor 2253 eine Auftrags-ID vom
Eingangspuffer 2254 mit den PDL-Daten speichert, und da
die Zustände
der individuellen Druckaufträge
in der Datenbank 2252 verwaltet werden, können die
PDL-Daten für
einen Druckauftrag, der zu annullieren ist, ungültig gemacht werden, selbst
wenn sie noch nicht vom PDL-Übersetzer 2255 analysiert
worden sind.
-
Da
die Druckdaten bezüglich
eines zu annullierenden Druckauftrags ungültig gemacht werden, beginnend
mit den Daten nahe der Eingangsstufe, können des weiteren die Druckdaten
für den
Druckauftrag ungültig
gemacht werden, mit Ausnahme jener Druckdaten, die zum Drucken von
der Druckmaschine 2258 verwendet werden.
-
Der
Auftragskanal und der Steuerkanal werden weiterhin bezüglich des Übertragungsmediums 2280 von
der Logikkanalsteuerung 106 des Hosts 2200 und
der Logikkanalsteuerung 2251 vom Drucker 2250 dem
Multiplexverfahren unterzogen. Selbst während des Austauschs eines
Druckauftrags entlang dem Auftragskanal kann die Nutzeinheit 2205 vom
Host 2200 folglich Informationen erzielen oder kann Informationen
für den
Druckauftrag des Druckers 2250 einstellen, und somit kann
der Druckauftrag in Echtzeit annulliert werden.
-
Nicht
nur das Annullieren eines Druckauftrags wird von der Nutzeinheit 2205 angewiesen, sondern
die Anweisung kann darüber
hinaus auch über
das Bedienfeld 2261 des Druckers 2250 erfolgen,
so daß der
Anwender den Drucker anhalten und das Drucken eines Druckauftrags
verhindern kann, der nicht erforderlich ist.
-
Da
der zu annullierende Druckauftrag bestimmt ist als ein Druckauftrag,
der nahe an der Ausgangsstufe liegt, kann darüber hinaus nur ein Druckauftrag,
der gedruckt wird, annulliert werden, während das gedruckte Material
bestätigt
wird, oder wenn die Verarbeitung der Druckdaten für lange
Zeit fortgesetzt wird und der Drucker nicht gestartet wurde, kann
nur der erste Druckauftrag annulliert werden, der den anzuhaltenden
Druckvorgang veranlaßt.
-
Da
das Ethernet 2280 weiterhin als Übertragungsmedium verwendet
wird, kann das Druckersystem mit den obigen Wirkungen auf dem Netzwerk
arbeiten.
-
Nach
dem ersten und zweiten Ausführungsbeispiel
der vorliegenden Erfindung kann ein Laserstrahldrucker als solcher
verwendet werden. 28 ist eine Querschnittsansicht
der Innenstruktur vom Laserstrahldrucker (wird nachstehend einfach
als "LBP" bezeichnet). Der
LBP kann eingegebene Zeichenmusterdaten auf ein Blatt Aufzeichnungspapier drucken.
-
In 28 verwendet
eine LBP-Einheit 2840 ein empfangenes Zeichenmuster, um
ein Bild auf einem Blatt Aufzeichnungspapier zu bilden, das das Aufzeichnungsmedium
ist. Ein Bedienfeld 2800 enthält Bedienschalter und eine
LED-Anzeigeeinrichtung, und eine Druckersteuereinheit 2801 übernimmt die
Gesamtsteuerung des LBP 2840 und analysiert die Zeichenmusterinformation.
Die Druckersteuereinheit 2801 setzt hauptsächlich Zeichenmusterinformation
in ein Videosignal um und gibt das Signal an den Lasertreiber 2802 ab.
-
Der
Lasertreiber 2802, der eine Schaltung zum Ansteuern eines
Halbleiterlasers 2303 ist, schaltet einen Laserstrahl 2804 ein
oder aus, der von einer Halbleiterschicht 2803 gemäß einem
empfangenen Videosignal emittiert wird. Der Laserstrahl 2804 wird von
einem vielflächigen
Drehspiegel 2805 nach links und rechts abgelenkt und tastet
eine elektrostatische Trommel 2806 ab. Ein elektrostatisches
latentes Bild eines Zeichenmusters wird auf der elektrostatischen Trommel 2806 gebildet.
Dieses latente Bild wird von einer Entwicklungseinheit 2807 entwickelt,
die sich an der Peripherie der elektrostatischen Trommel 2806 befindet,
und das entwickelte Bild wird auf ein Aufzeichnungsblatt übertragen.
Ein geschnittenes Blatt wird als Aufzeichnungsblatt verwendet. Die
geschnittenen Blätter
lagern in einer Vielzahl von Blattkassetten 2808, die sich
im LBP 2840 befinden und die einer Vielzahl von Blattarten
entsprechen, und werden von einer Papierzuführwalze 2809 und Auslieferwalzen 2810 und 2811 in
den LBP 2840 eingeführt
und zur elektrostatischen Trommel 2806 geliefert.
-
Die
Steueranordnung eines Laserstrahldruckers ist nachstehend beschrieben. 36 ist
ein Blockdiagramm, das die Anordnung vom Laserstrahldrucker zeigt.
In 36 ist ein Laserstrahldrucker 3601 ausgestattet
mit einer Druckersteuerung (wird nachstehend als Steuerung bezeichnet) 3603,
einer Maschine 3604, einem Feld 3605 und einer
Platte 3606.
-
Die
Steuerung 3603 verfügt über eine
CPU 3607, einen PROM 3608, einen optionalen Speicher 3609,
einen RAM 3610, eine Haupt-I/F 3611, eine Maschinen-I/F 3612,
eine Feld-I/F 3613, eine Platten-I/F 3614 und über einen
NVRAM 3615.
-
Die
CPU 3607 steuert die individuellen Abschnitte auf der Grundlage
von Steuerprogrammen, die in den Ablaufdiagrammen der 4, 5, 11 bis 19, 21, 33 bis 35 gezeigt
sind, sowie verschiedener anderer Steuerprogramme. Die Haupt-I/F 3611 ist
eine Schnittstelle zum Austausch eines Druckauftrags mit dem Host 3602.
Die Maschinen-I/F 3612 ist eine Schnittstelle zum Kommunizieren
mit der Maschine 3604, die aktuell das Drucken ausführt.
-
Die
Feld-I/F 3613 ist eine Schnittstelle, die zum Austausch
mit dem Feld 3605 für
einen Befehl der Umgebung verwendet wird, der vom Anwender über das
Feld 3605 eingegeben wird, und für den Zustand des Laserstrahldruckers 3601,
der für
einen Anwender auf dem Feld 3605 dargestellt wird. Die Platten-I/F 3614 ist
eine Schnittstelle zur Kommunikation mit der Platte 3606.
-
Der
optionale Speicher 3609 ist ein solcher wie eine Karte,
ein optionaler ROM oder ein Flash-Speicher, der geladen oder entladen
werden kann, um Schriftarten zu speichern. Der RAM 3610 enthält einen
Bildpuffer 3610a zum Speichern von Bilddaten und einen
Eingangspuffer 3610b zum zeitweiligen Speichern von PDL-Daten, die der Host 3602 empfängt. Der
RAM 3610 wird ebenfalls als Arbeitsbereich für die CPU 3607 verwendet.
Der NVRAM 3615 wird verwendet zum Speichern von Einstellwerten
für verschiedene Punkte
bezüglich
der Einrichtung oder bezüglich
eines Druckauftrags.
-
Auf
dem Feld 3605 vorgesehen ist eine Flüssigkristallanzeigeeinrichtung
zum Darstellen von Informationen, wie dem Zustand des Laserstrahldruckers 3601 unter
Verwendung einer Zeichenkette, verschiedene Bedienknöpfe, die
ein Anwender verwendet, um dem Laserstrahldrucker 3601 verschiedene
Betribsarten anzuweisen, und eine LED, um einem Anwender zu melden,
daß es
Zeit ist, Papier nachzufüllen,
oder um den Online-/Offline-Zustand zu signalisieren.
-
Die
Maschine 3604 druckt aktuell einen Zeichnungsgegenstand
auf ein Aufzeichnungsmedium. Die Platte 3606 ist ein externe
Speichereinrichtung zum Speichern verschiedener Daten, eine Festplatte,
eine magnetooptische Platte oder eine Diskette. Der Laserstrahldrucker 3601 bezieht
seinen Strom aus einer Stromversorgungsquelle (nicht dargestellt).
-
Die
Komponenten in der funktionalen Anordnung des Druckersystems in 1,
das heißt,
die Logikkanalsteuerung 151, der Auftragsvorprozessor 153,
der PDL-Übersetzer 155,
die Zeichnungseinheit 157 und der Informationsverwalter 160,
lassen sich realisieren durch Ausführungen der CPU 3607 vom Laserstrahldrucker 3601 in 36 von
einem Steuerprogramm, das der PROM 3608 speichert. Der
Eingangspuffer 154 und der Zeichnungspuffer 156 in 1 werden
im RAM 3610 vom Laserstrahldrucker 3601 in 36 aufbereitet.
Dies läßt sich
beim zweiten Ausführungsbeispiel
anwenden.
-
Ein
Laserstrahldrucker wird zum Drucken für das erste und das zweite
Ausführungsbeispiel
der vorliegenden Erfindung verwendet. Die Druckerart ist nicht auf
einen Laserdrucker beschränkt,
und ein Tintenstrahldrucker kann ebenfalls verwendet werden. 29 ist
ein Diagramm, das die äußere Erscheinung
des Tintenstrahlaufzeichnungsgerätes
IJRA zeigt, die eine Vielzahl von Papierarten zuführen kann
(nicht dargestellt) entsprechend dem Bedarf für einen jeweiligen Druckauftrag.
-
Ein
Schlitten HC in 29, der einen nicht dargestellten
Stift besitzt, wird in einer Richtung bewegt, die durch Pfeile a
und b aufgezeigt sind, während
der Stift in Eingriff ist mit einer Spiralrille 5004 einer
Führungsschraube 5005,
die die Vorwärts-
und Rückwärtsdrehung
des Antriebsmotors 5013 vermittelt und von den Antriebskraftübertragungszahnrädern 5011 und 5009 gedreht
wird. Eine Tintenstrahlkartusche IJC befindet sich auf dem Schlitten
HC. Eine Papierhalteplatte 5002 drückt Papier gegen eine Auflagescheibe 5000 in
der Richtung, in die sich der Schlitten HC bewegt. Optokoppler 5007 und 5008 sind
Ausgangspositionsfeststellmittel zum Identifizieren der Anwesenheit
eines Schlittenhebels 5006 in diesem Bereich und zum Ändern der
Richtung, in der sich der Antriebsmotor 5013 dreht. Ein
Glied 5016 stützt
ein Kappenglied 5022 zum Versiegeln der Vorderfläche eines
Aufzeichnungskopfes; und Saugmittel 5015 ziehen die Kappe
an, um den Aufzeichnungskopf über
einen Kappenöffnung 5023 wiederherzustellen.
Ein Glied 5019 bewegt eine Reinigungsplatte 5017 nach
vorne und nach hinten, und die Reinigungsplatte 5017 und
das Glied 5019 werden auf einer Stützplatte 5018 gehalten.
Anstelle dieser Reinigungsklinge 5017 kann eine allgemein
bekannte Reinigungsklinge für
dieses Ausführungsbeispiel
verwendet werden. Ein Hebel 5021 wird verwendet zum Beginn
des Anziehens für
die Wiederherstellung. Der Hebel 5021 wird entsprechend
der Bewegung eines Kammes 5020 versetzt, der mit dem Schlitten
HC in Eingriff ist, und die Antriebskraft aus dem Antriebsmotor 5013 wird
durch ein allgemein bekanntes Übertragungsmittel
gesteuert, wie durch Umschalten, das eine Kupplung ausführt. Wenn
der Schlitten HC den Ausgangspositionsbereich erreicht hat, kann
ein gewünschter
Prozeß,
entweder das Verkappen, Reinigen oder die Saugwiederherstellung,
bei einer entsprechenden Position durch Betätigen der Führungsschraube 5005 ausgeführt werden.
Soll eine gewünschte
Operation entsprechend einer allgemein bekannten Zeitvorgabe ausgeführt werden,
kann die obige Anordnung für
jedes Ausführungsbeispiel
verwendet werden.
-
Nachstehend
beschrieben ist die Anordnung des Tintenstrahldruckers anhand eines
Blockdiagramms in 30. In einer Steuerschaltung
in 30 empfängt
eine Schnittstelle 1700 ein Aufzeichnungssignal. Eine MPU 1701 führt die
Steuerprogramme, die in den Ablaufdiagrammen der 4, 5, 11 bis 19, 21, 33 bis 35 gezeigt
sind, und verschiedene andere Programme aus, die in einem Programm-ROM 1702 gespeichert sind.
Ein DRAM 1703 wird verwendet zum Speichern verschiedener
Arten von Daten (Aufzeichnungssignale und Aufzeichnungsdaten, die
an einen Aufzeichnungskopf zu liefern sind). Ein Gatearray 1704 liefert Aufzeichnungsdaten
an einen Aufzeichnungskopf 1708 und überträgt auch Daten zwischen der
Schnittstelle 1700, der MPU 1701 und dem RAM 1703.
Ein Kopfschlittenmotor 1710 treibt den Aufzeichnungskopf 1708 an,
während
Motortreiber 1706 und 1707 einen Papierschlittenmotor 1709 sowie
den Kopfschlittenmotor 1710 antreiben.
-
Nach
Empfang eines Aufzeichnungssignals in der Schnittstelle 1700 mit
dieser Anordnung wird das Aufzeichnungssignal umgesetzt in Druckdaten zwischen
der Gatearray 1704 und der MPU 1701. Die Motortreiber 1706 und 1707 werden
angesteuert, und folglich wird der Aufzeichnungskopf gemäß den Druckdaten
angesteuert, die dem Kopftreiber 1705 gesendet werden.
Somit wird das Drucken ausgeführt.
-
Die
Komponenten der vorliegenden Erfindung können auch zusammengebaut werden
unter Verwendung der zuvor beschriebenen Anordnung für einen
Tintenstrahldrucker. Es ist offensichtlich, daß die vorliegende Erfindung
nicht auf die Verwendung eines Laserstrahldruckers beschränkt ist,
sondern sich auch bei einem Tintenstrahldrucker anwenden läßt.
-
Die
vorliegende Erfindung kann auch bei einem System verwendet werden,
das aus einer Vielzahl von Einrichtungen besteht (das heißt, einem Host,
einer Schnittstelleneinrichtung, einer Leseeinrichtung und einem
Drucker), oder bei einem Gerät (das
heißt,
einem Kopierer, einem Drucker oder einem Fax-Gerät), das eine Einzeleinrichtung
enthält.
-
Ein
Aspekt der vorliegenden Erfindung wird auch folgendermaßen erzielt:
ein Speichermedium, auf dem ein Softwareprogrammcode gespeichert
ist, um die Funktionen der vorherigen Ausführungsbeispiele zu realisieren,
wird an ein System oder ein Gerät
geliefert, wie es in 26 gezeigt ist, und der Computer
(oder eine CPU oder eine MPU) im System oder Gerät liest den Programmcode aus
dem Speichermedium. In diesem Falle realisiert der aus dem Speichermedium
gelesene Programmcode die Funktionen der oben beschriebenen Ausführungsbeispiele,
und das Speichermedium, auf dem ein derartiger Programmcode gespeichert
ist, bildet einen Aspekt der vorliegenden Erfindung.
-
Ein
Aspekt der vorliegenden Erfindung wird folgendermaßen erzielt:
ein Speichermedium, auf dem ein Softwareprogrammcode zum Realisieren der
Funktionen in den vorherigen Ausführungsbeispiel gespeichert
ist, wird an ein System oder an ein Gerät über ein Netzwerk oder eine öffentliche
Fernsprechleitung über
eine Sendeeinrichtung geliefert, das heißt, über einen Web-Server oder einen http-Server,
und der Computer (oder eine CPU oder eine MPU) im System oder im
Gerät liest
den Programmcode aus dem Speichermedium. In diesem Falle bewerkstelligt
der von der Übertragungseinrichtung
gesendete Programmcode die Funktionen der zuvor beschriebenen Ausführungsbeispiele,
und die Sendeeinrichtung, die einen derartigen Programmcode sendet,
bildet die vorliegende Erfindung.
-
In 27 gezeigt
ist eine Speicherkarte für das
Steuerprogramm der vorliegenden Erfindung, wenn dieses im ROM 1702 in 30 oder
im PROM 3608 in 36 gespeichert
ist und zur Ausführung bereit
ist.
-
Zum
Ausführen
des Steuerprogramms und der zugehörigen Daten in den Ausführungsbeispielen werden
diese aus dem Speichermedium gelesen und direkt im ROM gespeichert.
Das Steuerprogramm und die zugehörigen
Daten können
jedoch aus einem externen Speichermedium gelesen werden, wie beispielsweise
aus einer Diskette, und werden zeitweilig in einer Festplatte gespeichert
(installiert), die ein nichtflüchtiges
Speichermedium darstellt, das für
ein System oder ein Gerät
bereitsteht und aus der Festplatte auf den RAM geladen werden kann,
um das Programm für
das Aufbereiten und das Senden der Daten auszuführen.
-
Ein
Speichermedium zum Liefern eines derartigen Programmcodes kann beispielsweise
eine Diskette, eine Festplatte, eine optische Platte, eine magnetooptische
Platte, CD-ROM, CD-R, ein Magnetband, eine nichtflüchtige Speicherkarte
oder ein ROM sein.
-
Ausführungsbeispiele
der vorliegenden Erfindung enthalten darüber hinaus nicht nur einen
Fall, bei dem die Funktionen im vorherigen Ausführungsbeispiel ausgeführt werden
können,
wenn ein Programmcode gelesen und vom Computer ausgeführt wird,
sondern auch den Fall, bei dem gemäß einem Befehl im Programmcode
ein Betriebssystem auf dem Computer läuft und einen Teil oder die
gesamte aktuelle Verarbeitung ausführt, die erforderlich ist, um
die Funktionen zu erfüllen,
die in den obigen Ausführungsbeispielen
enthalten sind.
-
Die
Ausführungsbeispiele
enthalten weiterhin einen Fall, bei dem ein Programmcode, gelesen aus
einem Speichermedium, in einen Speicher geschrieben wird, der auf
eine Funktionserweiterungskarte montiert ist, die in einen Computer
gesteckt wird, oder eine Funktionserweiterungseinheit, die mit einem
Computer verbunden ist, und in Übereinstimmung
mit den Programmcodebefehlen realisiert eine auf die Funktionserweiterungskarte
montierte CPU oder die Funktionserweiterungseinheit einen Teil oder
die gesamte aktuelle Verarbeitung, um die Funktionen zu erfüllen, die
in den oben beschriebenen Ausführungsbeispielen
enthalten sind.
-
Wie
zuvor beschrieben, lassen sich folgende Wirkungen erzielen. von
den Druckaufträgen
eines Druckers kann das Annullieren eines gewünschten Druckauftrags angewiesen
werden. Selbst wenn ein Teil der Druckdaten für den zu annullierenden Druckauftrag
noch nicht analysiert worden ist, kann der Druckauftrag annulliert
werden.
-
Mit
Ausnahme der Druckdaten, die bereits zum Drucken verwendet worden
sind, können
alle Druckdaten für
den ausgewählten
Druckauftrag ungültig
gemacht werden.
-
Von
den Druckdaten des Druckauftrags, der zu annullieren ist, können speziell
jene Daten ungültig
gemacht werden, die im Eingangspuffer gespeichert sind.
-
Ob
Druckdaten, die im Eingangspuffer gespeichert sind, jene für einen
auszuwählenden Druckauftrag
sind, läßt sich
leicht bestimmen.
-
Druckdaten
im Eingangspuffer lassen sich leicht ungültig machen.
-
Selbst
während
des Analysierens der Druckdaten für die Auswahl eines Druckauftrags
können die
Druckdaten ungültig
gemacht werden.
-
Ein
Druckauftrag, der an den Drucker gesendet wird, läßt sich
identifizieren, ohne daß die
Druckdaten analysiert werden müssen.
-
Ob
die Inhalte eines empfangenen Auftragspakets Drucksteuerdaten oder
Druckdaten sind, läßt sich
bestimmen durch Untersuchen lediglich der Identifikationsinformation.
-
Ein
ausgewählter
Druckauftrag läßt sich
außerhalb
vom Drucker steuern.
-
Das
Hereinnehmen oder die Einstellung von Drucksteuerdaten für einen
ausgewählten
Druckauftrag oder das Annullieren eines ausgewählten Druckauftrags kann angefordert
werden.
-
Drucksteuerdaten
für einen
Druckauftrag können
nach außen
gemeldet werden.
-
Eine
Steueranforderung kann eingegeben werden, selbst während der
Eingabe eines Auftragspakets, und das Hereinnehmen oder Einstellen
der Drucksteuerdaten oder das Annullieren eines Druckauftrags läßt sich
in Echtzeit ausführen.
-
Ein
vorbestimmter Druckauftrag im Drucker kann gemäß einer spezifizierten Bedingung
ohne Annullieren des angewiesenen Druckauftrags annulliert werden.
-
Ein
aktueller oder nachfolgender Druckauftrag, der zu drucken ist, kann
spezifiziert und annulliert werden.
-
Der
Drucker kann direkt von außen
einen Befehl zum Annullieren eines Druckauftrags empfangen.
-
Der
Drucker kann direkt von außen
einen Befehl zum Annullieren eines speziellen Druckauftrags empfangen.
-
Dieselben
Wirkungen können
für das
Druckersystem, das Drucksteuerverfahren, das Aufzeichnungsmedium,
auf dem ein Steuerprogramm zum Steuern des Druckers gespeichert
ist, und für die
Sendeeinrichtung zum Senden eines Steuerprogramms zum Steuern des
Druckers bereitgestellt werden.