DE69930697T2 - Initialisierung eines Computerdruckers - Google Patents

Initialisierung eines Computerdruckers Download PDF

Info

Publication number
DE69930697T2
DE69930697T2 DE69930697T DE69930697T DE69930697T2 DE 69930697 T2 DE69930697 T2 DE 69930697T2 DE 69930697 T DE69930697 T DE 69930697T DE 69930697 T DE69930697 T DE 69930697T DE 69930697 T2 DE69930697 T2 DE 69930697T2
Authority
DE
Germany
Prior art keywords
initialization process
time
reset
delay time
reset request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69930697T
Other languages
English (en)
Other versions
DE69930697D1 (de
Inventor
Mitsuaki Suwa-shi Teradaira
Atsushi Suwa-shi Nishioka
Yuji Suwa-shi Kawase
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Application granted granted Critical
Publication of DE69930697D1 publication Critical patent/DE69930697D1/de
Publication of DE69930697T2 publication Critical patent/DE69930697T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0082Architecture adapted for a particular function
    • G06K2215/0085Error recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Ink Jet (AREA)

Description

  • Die vorliegende Erfindung betrifft eine Druckvorrichtung, ein Verfahren zu ihrer Initialisierung und ein computerlesbares Speichermedium, das ein Programm zur Steuerung der Vorrichtung trägt, so dass diese das Verfahren ausführt. Insbesondere betrifft die Erfindung einen Initialisierungssteuerprozess, der ausgeführt wird, wenn die Vorrichtung eingeschaltet worden ist, und einen Initialisierungssteuerprozess, der als Antwort auf eine Reset- (Rücksetzen) Anforderung ausgeführt wird, die von einem Host-Gerät empfangen wird, an das die Vorrichtung angeschlossen werden soll.
  • Druckvorrichtungen (nachfolgend einfach als "Drucker" bezeichnet), die einen vorgegebenen Initialisierungsprozess beim Einschalten, wenn sie eingeschaltet werden, ausführen, d. h. als Antwort auf einen so genannten Einschalt-Reset, und auch wenn sie eine Reset-Anforderung von einem Host-Rechner oder dem Host-Gerät des Kassen-(point-of-sale; POS)-Endgeräts, bei dem der Drucker verwendet wird, empfangen, sind bekannt.
  • Systeme, bei denen die Spannungsversorgungen des Druckers und des Host-Geräts so gekoppelt sind, dass Drucker und Host-Gerät im Wesentlichen gleichzeitig eingeschaltet werden, sind ebenfalls weit verbreitet im Einsatz, z. B. bei POS-Systemen. In einem solchen Fall sendet beim Einschalten des Druckers und Host-Geräts das BIOS- (Basic Input Output System-Basis-Ein-/Ausgabesystem) des Host-Geräts typischerweise zunächst eine Reset-Anforderung an den Drucker, dann sendet das auf dem Host-Gerät laufende Betriebssystem (Operating System – OS) eine andere Reset-Anforderung an den Drucker, und schließlich sendet das unter dem OS laufende Anwendungsprogramm noch eine andere Reset-Anforderung an den Drucker. Wenn ein herkömmlicher Drucker, der einen vorgegebenen Initialisierungsprozess beim Einschalten ausführt, in diesem Systemtyp verwendet wird, bewirkt das Einschalten des Host-Geräts und des Druckers, dass letzterer mehrere Reset-Anforderungen vom Host-Gerät empfängt, bevor er seinen Initialisierungsprozess beim Einschalten abschließen kann.
  • Wenn der Drucker eine Reset-Anforderung empfängt, wird die den allgemeinen Druckerbetrieb steuernde CPU (Zentraleinheit) rückgesetzt. Dies bewirkt, dass der CPU-Betrieb angehalten wird und alle E/A-Anschlüsse auf einen Zustand hoher Impedanz getrieben werden, wodurch jeder noch laufende Initialisierungsprozess beim Einschalten unterbrochen wird.
  • Die Druckerinitialisierung enthält typischerweise folgende Aufgaben:
    • – Initialisierung der Steuerschaltungen wie die CPU, die den Druckerbetrieb steuert, und eines RAM, der als Kommunikationspuffer für die Kommunikation mit dem Host-Gerät dient;
    • – Erregung der Phase des Schrittmotors, um die Betriebsphase z. b. des Schrittmotors anzupassen, um den Druckkopf in Richtung der Druckzeile anzutreiben;
    • – einen Reinigungsprozess zum Reinigen der Druckelemente des Druckkopfes, um eine hohe Druckqualität sicherzustellen; und
    • – Verfahren des Druckkopfes, um ihn in einer Referenzposition in Richtung der Druckzeile zu positionieren.
  • Einige dieser Initialisierungsprozesse erfordern mehr Zeit als andere. So erfordert beispielsweise die Erregung der Phase des Schrittmotors relativ wenig Zeit, während die Positionierung des Druckkopfes und die Reinigung des Druckkopfes relativ viel Zeit beanspruchen.
  • Die Unterbrechung eines solchen Initialisierungsprozesses ist mit verschiedenen Problemen behaftet. Der zum Reinigen des Tintenstrahldruckkopfes eines Tintenstrahldruckers erforderliche Reinigungsprozess enthält einen Absaugschritt, bei dem eine Vakuumpumpe zum Absaugen der Tinte vom Druckkopf verwendet wird. Bei diesem Prozess wird viel Tinte verbraucht. Außerdem dauert es eine gewissen Zeit, bis das Absaugen tatsächlich beginnt, nachdem die Vakuumpumpe zu arbeiten begonnen hat, und eine Unterbrechung des Reinigungsprozesses bedeutet deshalb Zeitverschwendung. Ferner bedeutet eine Unterbrechung dieses Reinigungsprozesses, nachdem das Absaugen der Tinte begonnen hat, dass die Menge der bereits abgesaugten Tinte nicht bekannt ist. Der Absaugschritt kann deshalb nicht wieder aufgenommen werden, sondern muss von Anfang an wiederholt werden. Damit wird logischerweise sogar noch mehr Tinte als bei einer nicht unterbrochenen Ausführung des Absaugschrittes verbraucht.
  • Wenn Reset-Anforderungen wiederholt ausgegeben werden, wird der Initialisierungsprozess als Antwort auf jede Reset-Anforderung ausgeführt. Dies verursacht die folgenden Probleme.
  • Ein Schrittmotor muss angesteuert werden, um den Druckkopf in einer Referenzposition zu positionieren. Die unnötige Wiederholung dieses Positionierungsprozesses beschleunigt den Verschleiß der an dieser Positionierung beteiligten mechanischen Teile der gesamten Antriebskette. Normalerweise ist es unmöglich, zu bestimmen, wo der Druckkopf positioniert ist, wenn diese Operation beginnt. Es ist deshalb erforderlich, den Druckkopf in eine bekannte Position gegen einen Anschlag zu Verfahren, und ein wiederholtes Verfahren des Druckkopfes gegen diesen Anschlag kann den Druckkopf beschädigen.
  • Im Fall von Tintenstrahldruckern wird bei einem wiederholten Ausführen des oben beschriebenen Reinigungsprozesses unnötig viel Tine verbraucht, so dass ein früherer Austausch der Tintenpatrone erforderlich wird.
  • Eine wiederholte Ausführung der Initialisierungsprozesse ist in 1 dargestellt. 1(a) betrifft den Fall, in dem die Spannungsversorgungen von Drucker und Host-Gerät nicht gekoppelt sind, und zeigt die Abfolge der ausgeführten Prozesse, wenn der Drucker eingeschaltet wird, während das Host-Gerät bereits arbeitet. Der erste Schritt dieses Initialisierungsprozesses nachdem der Drucker eingeschaltet worden ist, ist die Erregung der Phase 101 des Schrittmotors, gefolgt von der Positionierung 102 des Druckkopfes und der Reinigung 103 des Druckkopfes. Der Drucker geht dann in den Normalbetrieb über 104 und wartet auf einen Druckbefehl sowie Daten vom Host-Gerät.
  • 1(b) zeigt eine Abfolge von Prozessen, die typischerweise ausgeführt werden, wenn ein herkömmlicher Drucker so mit einem Host-Gerät verbunden ist, dass die Spannungsversorgung des Druckers und des Host-Geräts im Wesentlichen gleichzeitig eingeschaltet wird wie oben beschrieben. In 1(b) wird ein Reset-Signal vom Host-Gerät an den Drucker an der ansteigenden Flanke nach einem Abfall des Potentials 105 am Reset-Signalausgang ausgegeben. Als Ergebnis zeigen auf niedrigem Pegel liegende Impulse 106, 107 und 108 Reset-Signale des Potentials 105 an, die vom Drucker empfangen werden.
  • Nachdem der Drucker die Erregung der Phase 101 des Schrittmotors beendet hat und während die Positionierung 102 des Druckkopfes noch im Gange ist, empfängt er das Reset-Signal 106 vom Host-Gerät-BIOS. Die Positionierung 102 des Druckkopfes wird deshalb unterbrochen, und die Erregung der Phase 101 des Schrittmotors sowie die Positionierung 102 des Druckkopfes werden von Anfang an wiederholt. Dieses Mal werden die Erregung der Phase 101 des Schrittmotors und die Positionierung 102 des Druckkopfes abgeschlossen, und das Reset-Signal 107 wird dann vom OS des Host-Geräts empfangen, während die Reinigung 103 des Druckkopfes im Gange ist. Deshalb wird die Reinigung 103 des Druckkopfes unterbrochen, und die Erregung der Phase 101 des Schrittmotors, die Positionierung 102 des Druckkopfes und die Reinigung 103 des Druckkopfes werden von Anfang an wiederholt. Dieses Mal wird das Reset-Signal 108 empfangen, während die Reinigung 103 des Druckkopfes im Gange ist. Die Reinigung 103 des Druckkopfes wird deshalb erneut unterbrochen, und die Erregung der Phase 101 des Schrittmotors, die Positionierung 102 des Druckkopfes und die Reinigung 103 des Druckkopfes werden erneut von Anfang an wiederholt.
  • In Anbetracht der oben beschriebenen Probleme ist es eine Aufgabe der vorliegenden Erfindung, eine Druckvorrichtung und ein Verfahren zu ihrer Initialisierung bereitzustellen, die in der Lage sind, einen unnötigen Verbrauch von Verbrauchsmaterialien in der Druckvorrichtung und einen Verlust an mechanischer Dauerhaftigkeit aufgrund eines Initialisierungsprozesses beim Einschalten zu vermeiden, der durch ein vom Host-Gerät unmittelbar nach Einschalten des Host-Geräts an den Drucker geliefertes Reset-Signal unterbrochen wird.
  • Diese Aufgabe wird durch eine Druckvorrichtung bzw. einen Drucker gemäß Anspruch 1, ein Verfahren gemäß Anspruch 13 und ein Speichermedium gemäß Anspruch 24 gelöst. Bevorzugte Ausführungsformen der Erfindung sind Gegenstand der Unteransprüche.
  • Gemäß der Erfindung können bestimmte Initialisierungsprozesse verzögert werden, bis eine vorgegebene Verzögerungszeit T1 nach dem Einschalten des Druckers abgelaufen ist. Ein Druckkopf-Initialisierungsprozess und andere Druckmechanismen-Initialisierungsprozesse werden erst ausgeführt, wenn diese Verzögerungszeit abgelaufen ist, selbst wenn der Drucker eine Reset-Anforderung vom Host-Gerät empfängt. Deshalb können die Betriebskosten gesenkt werden, indem z. B. verhindert wird, dass ein Tinte verbrauchender Reinigungsprozess mehrere Male nacheinander ausgeführt und indem unnötiger Verschleiß mechanischer Teile des Druckmechanismus vermieden wird.
  • Außerdem können unnötiger Verschleiß mechanischer Teile des Druckmechanismus vermieden und die Betriebskosten gesenkt werden, da es nicht erforderlich ist, Schrittmotoren, Getriebe und andere Teile der Antriebskette, die zum Verfahren und Positionieren des Druckkopfes dienen, mehrere Male anzusteuern.
  • Die zum Initialisieren des Druckers erforderliche Zeit kann verkürzt werden, indem Initialisierungsprozesse, die selbst bei wiederholter Ausführung keinen Tintenverbrauch und Verschleiß mechanischer Teile mit sich bringen, im Voraus ausgeführt werden. Die zum Initialisieren des Druckers erforderliche Zeit kann z. B. verkürzt werden, indem ein Prozess zum Einstellen der Phase eines Schrittmotors, der keinen Verbrauch von Verbrauchsmaterialien oder Verschleiß mechanischer Teile mit sich bringt, im Voraus ausgeführt wird.
  • Die Verzögerungszeit kann vom Drucker statisch gespeichert und gemäß der Betriebsumgebung dynamisch geändert werden. Die Verzögerungszeit kann auch vom Host-Gerät, an das der Drucker angeschlossen ist, eingestellt werden. Gemäß einer bestimmten Ausführungsform kann der Drucker eine geeignete Verzögerungszeit automatisch durch den tatsächlichen Betrieb des Druckers zusammen mit dem Host-Gerät lernen.
  • Andere Aufgaben und Vorteile sowie ein tiefer gehendes Verständnis der Erfindung erschließen sich aus der nachfolgenden Beschreibung bevorzugter Ausführungsformen in Zusammenhang mit den beiliegenden Zeichnungen; es zeigen:
  • 1 eine Abfolge eines typischen Initialisierungsprozesses eines herkömmlichen Druckers, bei dem die Initialisierung mit dem Einschalten des Druckers beginnt;
  • 2 schematisch den Grundaufbau eines Druckers, der die vorliegende Erfindung verwirklicht;
  • 3 ein Funktionsblockdiagramm eines Druckers gemäß einer ersten bevorzugten Ausführungsform der vorliegenden Erfindung;
  • 4 ein Flussdiagramm eines Initialisierungssteuerprozesses bei einem Drucker gemäß der ersten Ausführungsform;
  • 5 ein Zeitdiagramm der Initialisierungsprozesse, die bei einem Drucker gemäß der vorliegenden Erfindung ausgeführt werden, wenn der Betrieb nach dem Einschalten des Druckers beginnt;
  • 6 ein Funktionsblockdiagramm eines Druckers gemäß einer zweiten bevorzugten Ausführungsform der vorliegenden Erfindung;
  • 7 ein Flussdiagramm eines Initialisierungssteuerprozesses bei einem Drucker gemäß der zweiten Ausführungsform; und
  • 8 ein Flussdiagramm eines Initialisierungssteuerprozesses bei einem Drucker gemäß einer dritten bevorzugten Ausführungsform der vorliegenden Erfindung.
  • GRUNDAUFBAU EINES DRUCKERS GEMÄSS DER ERFINDUNG
  • 2 zeigt den Grundaufbau eines typischen Beispiels eines Druckers, auf den die vorliegende Erfindung angewendet werden kann. Wie aus 2 ersichtlich ist, ist der allgemein mit 1 gekennzeichnete Drucker mit einem Host-Gerät 220 verbunden. Der Drucker 1 weist einen Druckmechanismus 204 auf, der von einer CPU 203 gesteuert wird. Die CPU 203 ist mit einem ROM 205, einem RAM 206, einem EEPROM 208, einer Echtzeituhr (real-time clock; RTC) 207, einer Reset-Schaltung 213 und einer Schnittstelle 202 verbunden.
  • Befehle und Druckdaten, die vom Host-Gerät 220 an den Drucker 1 gesendet werden, werden über die Schnittstelle 202 empfangen. Die CPU 203 interpretiert die über die Schnittstelle 202 empfangenen Steuerbefehle, um den Druckmechanismus 204 zum Drucken von Text und/oder Grafik auf das Papier oder ein anderes Druckmedium anzusteuern.
  • Das Host-Gerät 220 kann außer den Steuerbefehlen auch eine Reset-Anforderung über die Schnittstelle 202 an den Drucker 1 senden. Obwohl bei diesem Beispiel und in der folgenden Beschreibung davon ausgegangen wird, dass eine Reset-Anforderung als ein externes Reset-Signal gesendet wird, könnte sie ebenso gut als Reset-Anforderungsbefehl gesendet werden. Im Allgemeinen bestimmt der Drucker, dass eine Reset-Bedingung vorliegt, auf Basis verschiedener Einstellungen, die gemäß verschiedener vom Host-Gerät gesendeter Befehle erfolgt sind. Es ist jedoch zu beachten, dass dann, wenn die CPU 203 nicht normal arbeitet, eine solche Reset-Anforderung eventuell nicht in der normalen Weise ausgeführt wird. Deshalb wird vorzugsweise ein Reset-Anforderungsbefehl oder ein externes Reset-Signal von einer Schaltung interpretiert, die unabhängig von der CPU ist und ein Reset-Signal erzeugt, das an einen Reset-Anschluss der CPU gelegt wird.
  • Beim dargestellten Beispiel wird ein externes Reset-Signal 214 nicht nur in die CPU 203 eingegeben und von dieser detektiert, sondern auch in die Reset-Schaltung 213. Die Reset-Schaltung 213 dient typischerweise als Spannungsversorgungs-Überwachungs-IC und setzt die CPU 203 zurück, indem ein Reset-Impuls 215 mit vorgegebener Breite an den Reset-Anschluss der CPU 203 weitergegeben wird, wenn sich die Versorgungsspannung auf einem normalen Pegel stabilisiert hat, nachdem die Spannungsversorgung des Druckers eingeschaltet worden ist. Bei diesem Beispiel wird ein Reset-Impuls auch als Antwort auf das externe Reset-Signal 214 ausgegeben. Dies hat den Zweck, einen instabilen Betrieb der CPU 203 zu verhindern, indem ein Reset-Impuls 215 mit einer vorgegebenen Breite selbst dann angelegt wird, wenn die Impulsbreite eines externen Reset-Signals extrem kurz ist. Dies kann z. B. durch eine verdrahtete OR-Verbindung eines externen Reset-Signals negativer Logik von der Schnittstellenschaltung zum Spannungsüberwachungsanschluss der Reset-Schaltung 213 erreicht werden.
  • Es ist auch möglich, ein externes Reset-Signal, das direkt in die CPU 203 eingegeben wird, als ein Reset-Warnsignal zu verwenden, indem das externe Reset-Signal 214 um eine vorgegebene Verzögerungszeit Td verzögert und dann der Reset-Impuls 215 erzeugt wird, wie ausführlicher in der EP-A-0 911 172 beschrieben ist. Damit steht der CPU 203 eine vorgegebene Zeit zwischen dem Detektieren des externen Reset-Signals 214 und dem Rücksetzen der CPU 203 durch den Reset-Impuls 215 zur Verfügung. Die CPU 203 hat also ausreichend viel Zeit, um erforderliche Prozesse abzuwickeln, wie das Setzen eines externen Reset-Flags, bevor die CPU 203 rückgesetzt wird. Es ist zu beachten, dass diese Verzögerungszeit Td auf einfache Weise realisiert werden kann, wie z. B. durch eine Verzögerungsleitung, eine Zeitgeberschaltung oder einen Zähler. Außerdem kann diese Verzögerungszeit Td äußerst wirksam verwendet werden, indem das externe Reset-Signal 214 in Echtzeit detektiert wird; bei bevorzugten Ausführungsformen der Erfindung wird deshalb das externe Reset-Signal 214 an einen nicht deaktivierbaren Unterbrechungsanschluss (non-maskable interrupt – NMI) der CPU 203 gelegt.
  • Die von der CPU 203 ausgeführten Steuerprozesse sind durch ein im ROM 205 gespeichertes Steuerprogramm definiert. Wenn der Drucker 1 eingeschaltet wird, führt die CPU 203 als Antwort auf den Reset-Impuls 215 von der Reset-Schaltung 213 ein im ROM 205 gespeichertes Programm aus, beginnend bei einer vorgegebenen Adresse. Die CPU 203 liest typischerweise das Programm vom ROM 205 in den RAM 206 ein und führt das Programm vom RAM 206 aus. Durch das Laden des Programms in den RAM 206 kann es modifiziert werden, um den/die vorgegebenen Reset-Prozess(e) dynamisch zu ändern.
  • Die CPU 203 erzeugt Bilder des zu druckenden Textes und/oder der zu druckenden Grafik im RAM 206 und steuert den Druckmechanismus 204 auf Basis dieser Bilder an. Die CPU 203 verwendet im ROM 205 gespeicherte Schriftartdaten, um ein Bild des zu druckenden Textes auf Basis von Schriftzeichen-Codes zu erzeugen, die als Druckdaten vom Host-Gerät 220 empfangen werden.
  • Die Echtzeituhr 207 zählt die Zeit z. B. in Sekunden. Die CPU 203 ist mit der Echtzeituhr 207 über einen E/A-Anschluss oder einen Bus verbunden, so dass sie die aktuelle Zeit wie erforderlich abfragen kann. Es ist zu beachten, dass auch Echtzeituhr-ICs mit einer internen Zeitgeberfunktion entwickelt worden sind. Durch die Verwendung solcher Geräte kann die CPU 203 den Zeitgeber so einstellen, dass eine CPU-Unterbrechung zu einem vorgegebenen Zeitpunkt erzeugt wird.
  • Ein nicht flüchtiger Speicher wie der EEPROM 208 oder ein Flash-ROM können mit Informationen von der CPU 203 überschrieben werden, wenn Spannung an den Drucker 1 geliefert wird, und die Informationen statisch speichern, selbst wenn die Spannung ausgeschaltet wird. Es sei darauf hingewiesen, dass eine derartige Funktionalität auch erzielt werden kann, indem z. B. die statischen RAM-(SRAM) Geräte zusätzlich mit einer Batteriepufferschaltung versehen werden.
  • Der Druckmechanismus 204 hat einen Druckkopf 209, einen Schreibwagenmotor 210 zum Verfahren des Druckkopfes 209 parallel zur Richtung der Druckzeile und einen Papiervorschubmotor 212 für den Transport von Papier oder einem anderen Druckmedium. Hochpräzise Positionierung und eine verbesserte Druckqualität lassen sich durch die Verwendung von Schrittmotoren als Schreibwagen- und Papiervorschubmotoren erzielen. Für den Durchschnittsfachmann liegt es auf der Hand, dass wahlweise verschiedene andere Gleichstrommotore mit Codiererkombinationen verwendet werden können. Falls der Drucker 1 ein Tintenstrahldrucker ist und der Druckkopf 209 somit ein Tintenstrahlkopf, ist eine Tintenabsaugpumpe 211 erforderlich. In diesem Fall dient die Pumpe zum Reinigen des Druckkopfes, d. h. zum Absaugen von Tinte mit relativ hoher Viskosität, die über eine gewisse Zeit im Druckkopf 209 verblieben ist.
  • Bei dem bisher beschriebenen Beispiel ist das Steuerprogramm im ROM 205 gespeichert. Wenn es statt dessen in einem überschreibbaren nicht flüchtigen Speichergerät wie dem EEPROM 208 gespeichert ist, kann das Steuerprogramm z. B. vom Host-Gerät 220 aktualisiert werden. Es ist auch möglich, dass das Host-Gerät 220 das Druckersteuerprogramm in seinem eigenen internen Datenspeicher speichert, oder dass das Steuerprogramm auf einer CD-ROM, einer Festplatte, einer Diskette oder einem anderen externen Speicher 221, auf den das Host-Gerät 220 zugreifen kann, gespeichert wird. Ferner kann das Steuerprogramm auf einem Netzwerk-Server oder sogar im Netzwerk selbst gespeichert werden, so dass das Host-Gerät das Steuerprogramm über das Internet oder ein anderes Computer-Netzwerk herunterladen und im Drucker laden kann.
  • ERSTE AUSFÜHRUNGSFORM
  • 3 ist ein Funktionsblockdiagramm eines Druckers gemäß einem ersten Ausführungsbeispiel der vorliegenden Erfindung. Der spezifische Aufbau des Druckers ist für die Erfindung nicht kritisch, so lang die erforderlichen Funktionen verwirklicht werden können. Zum besseren Verständnis geht die nachstehende Beschreibung dieser Ausführungsform und der folgenden Ausführungsformen jeweils von einem Drucker aus, der durch die in 2 dargestellte Hardware-Struktur implementiert ist.
  • Nunmehr sei auf 3 verwiesen, wonach eine Steuerung 2 zur Initialisierung beim Einschalten eine so genannte Initialisierung beim Einschalten des Druckers 1 steuert, d. h. eine Initialisierung wird als Antwort auf das Einschalten des Druckers ausgeführt. Ein erster Zeitgeber 6 beginnt die Zählung zum Zeitpunkt des Einschaltens, d. h. wenn der Drucker 1 den Betrieb beginnt, unmittelbar nachdem er eingeschaltet worden ist (vgl. Schritt S407 in 4, die später erläutert wird), und informiert die Steuerung 2 sowie eine Reset-Initialisierungs-Steuerung 3, wenn eine vorgegebene Verzögerungszeit T1 abgelaufen ist.
  • Wenn der Drucker 1 eingeschaltet wird, startet die Steuerung 2 einen ersten Initialisierungsprozess 4. Dieser erste Initialisierungsprozess 4 weist Prozesse auf, die innerhalb einer extrem kurzen Zeitspanne ablaufen können und deren Unterbrechung keinerlei Probleme verursacht, wie die Initialisierung der Steuerschaltung und die Erregung der Phase der Schrittmotoren, die als Schreibwagenmotor 210 und Papiervorschubmotor 212 dienen. Wenn dieser erste Initialisierungsprozess 4 endet, wartet die Steuerung 2 auf eine Meldung vom ersten Zeitgeber 6, dass die Verzögerungszeit T1 abgelaufen ist. Bei Erhalt dieser Meldung beginnt die Steuerung 2 einen zweiten Initialisierungsprozess 5.
  • Dieser zweite Initialisierungsprozess 5 enthält Operationen, die eine relativ lange Zeitspanne beanspruchen und die bei Unterbrechung eine Problemursache sein können. Bei diesem Ausführungsbeispiel enthalten diese Operationen z. B. die Reinigung des Druckkopfes 209 und die Positionierung des Druckkopfes 209 durch den Schreibwagenmotor 210 wie oben beschrieben.
  • Wenn dieser zweite Initialisierungsprozess 5 endet, geht der Drucker 1 in den Bereitschaftszustand für den normalen Druckprozess. Wenn der Drucker 1 einen Druckbefehl und Druckdaten vom angeschlossenen Host-Gerät empfängt, führt er einen normalen Druckprozess gemäß den empfangenen Druckdaten aus.
  • Wenn der Drucker 1 eine Reset-Anforderung vom Host-Gerät oder einem anderen externen Steuergerät empfängt, initialisiert die Steuerung 3 den Drucker 1 als Antwort auf die Reset-Anforderung. Die Steuerung 3 kann auf Basis des Ausgangs vom ersten Zeitgeber 6 bestimmen, ob die Verzögerungszeit T1 seit dem Einschalten des Druckers abgelaufen ist.
  • Wenn diese Verzögerungszeit T1 nicht abgelaufen ist, wenn eine Reset-Anforderung vom Host-Gerät empfangen wird, führt die Steuerung 3 einen dritten Initialisierungsprozess 7 aus. Dieser dritte Initialisierungsprozess 7 enthält vorzugsweise Aufgaben, die innerhalb einer kurzen Zeitpanne abgeschlossen werden können, ähnlich wie der erste Initialisierungsprozess 4, und enthält ferner vorzugsweise nur Aufgaben, die sofern sie unterbrochen werden, nicht in unerwünschten Folgen resultieren. Es ist zu beachten, dass dieser dritte Initialisierungsprozess 7 der gleiche sein kann wie der erste Initialisierungsprozess 4. Als Antwort auf eine Reset-Anforderung kann also ein Initialisierungsprozess ausgeführt werden, der gleich ist wie der oder ein Teil des Initialisierungsprozesses, der beim Einschalten des Druckers ausgeführt wird, und die Zuverlässigkeit des Druckers kann so verbessert werden.
  • Wenn die vom ersten Zeitgeber 6 gezählte Verzögerungszeit T1 abgelaufen ist, wenn eine Reset-Anforderung empfangen wird, führt die Steuerung 3 einen vierten Initialisierungsprozess 8 aus. Dieser vierte Initialisierungsprozess 8 wird alternativ zum dritten Initialisierungsprozess 7 ausgeführt und enthält zusätzlich zu den Aufgaben des dritten Initialisierungsprozesses 7 relativ zeitaufwändige Aufgaben wie die Positionierung des Druckkopfes und die Reinigung des Tintenstrahlkopfes, d. h. Aufgaben entsprechend denjenigen im zweiten Initialisierungsprozess 5. Es sei darauf hingewiesen, dass dieser vierte Initialisierungsprozess 8 eine Kombination des ersten und zweiten Initialisierungsprozesses sein kann.
  • Somit führt die Steuerung 3 als Antwort auf Reset-Anforderungen vom Host-Gerät, die innerhalb der Verzögerungszeit T1 nach Beginn des Druckerbetriebs vorliegen, nur den dritten Initialisierungsprozess aus. Ein vollständiger Initialisierungsprozess wie der vierte Initialisierungsprozess kann dann als Antwort auf Reset-Anforderungen ausgeführt werden, die nach dieser Verzögerungszeit empfangen werden, wie Reset-Anforderungen, die in Zusammenhang mit einer Druckanforderung ausgegeben werden. Probleme, die aufgrund einer Unterbrechung eines Initialisierungsprozesses durch häufige Reset-Anforderungen, die unmittelbar nach dem Einschalten des Host-Geräts ausgegeben werden, können so vermieden werden.
  • Wie erwähnt ist der dritte Initialisierungsprozess vorzugsweise im Wesentlichen gleich dem ersten Initialisierungsprozess. Der erste Initialisierungsprozess wird beim Einschalten des Druckers ausgeführt und der dritte Initialisierungsprozess auf Basis einer Reset-Anforderung vom Host-Gerät kann somit von denselben Schaltungen oder derselben Software ausführt werden. Dies ließe sich auf recht einfache Weise z. B. durch Verbinden des Reset-Anschlusses der CPU erreichen, um das logische OR des Einschalt-Reset-Signals und das vom Host-Gerät empfangene Reset-Signal zu erhalten.
  • Wenn der dritte Initialisierungsprozess im vierten Initialisierungsprozess enthalten ist, kann die Verarbeitung der Reset-Anforderungen vom Host-Gerät mit derselben Schaltung oder Software gestartet werden, ungeachtet, ob die Verzögerungszeit T1 abgelaufen ist oder nicht (siehe die später erläuterte 4: Schritt S403 würde vor Schritt S402 und nicht nach ihm ausgeführt werden; anschließend an Schritt S402 würde entweder Schritt S404 oder Schritt S409 ausgeführt werden). Aus diesem Grund kann ein extrem einfaches Schaltungs- oder Softwaredesign verwendet werden. Ein Reset-Signal vom Host-Gerät kann z. B. in den CPU-Interrupt- (Unterbrechungs-) Anschluss eingegeben und der Wert eines Zeitgebers während des Interrupt-Prozesses ausgewertet werden, um zu bestimmen, welcher Prozess ablaufen soll.
  • Wenn die Verzögerungszeit T1 auf Basis der für alle vom Host-Gerät beim Hochfahren des Host-Geräts ausgegebenen Reset-Anforderungen erforderlichen Zeit eingestellt wird, können die Probleme aufgrund einer Unterbrechung des Initialisierungsprozesses, der beim Einschalten des Druckers ausgeführt wird, vermieden werden.
  • Der Wert der Verzögerungszeit T1 wird im nicht flüchtigen Speicher 9 gespeichert und kann wie gewünscht von einer Datenänderungs- oder Aktualisierungsschaltung 10 geändert werden. Die Daten, die der Drucker 1 gemäß dieser ersten Ausführungsform von einem Host-Gerät empfängt, werden von einem Befehlsdetektor 11 interpretiert. Wenn der Befehlsdetektor 11 einen Befehl erkennt, mit dem die Änderung des im nicht flüchtigen Speicher 9 gespeicherten Wertes von T1 angeordert wird, kann er die Datenänderungsschaltung 10 anweisen, den gespeicherten Wert auf Basis des empfangenen Befehls mit zugehörigen Parametern zu ändern.
  • Ein Vergleich des Funktionsdiagramms von 3 mit dem Aufbaudiagramm von 2 zeigt, dass die Steuerung 2 der ersten Ausführungsform die Reset-Schaltung 213, die CPU 203 und einen Speicher (ROM 205 und RAM 206) und die Steuerung 3 die Schnittstelle 202, die Reset-Schaltung 213, die CPU 203 und einen Speicher aufweist. Der erste Zeitgeber 6 weist die Echtzeituhr 207, die CPU 203 und einen Speicher auf. Der nicht flüchtige Speicher 9 weist den EEPROM 208, die Datenänderungsschaltung 10 weist die CPU 203 und einen Speicher und der Befehlsdetektor 11 weist die CPU 203 und einen Speicher auf.
  • Als Nächstes wird ein Initialisierungssteuerprozess des Druckers 1 gemäß dieser ersten Ausführungsform anhand des Flussdiagramms von 4 beschrieben, der beim Einschalten des Druckers ausgeführt wird.
  • Wie oben erwähnt gibt die Reset-Schaltung 213 einen Reset-Impuls 215 aus, wenn sich die Versorgungsspannung nach dem Einschalten des Druckers 1 stabilisiert hat. Der Reset-Impuls 215 wird auf einem aktiven Pegel gehalten, bis die Versorgungsspannung einen bestimmten Pegel erreicht. Wenn die Versorgungsspannung den Pegel erreicht und eine vorgegebene Zeit abgelaufen ist, genauer gesagt, wenn eine Zeit vergangen ist, die für die CPU 203 ausreicht, eine Reset-Operation einer internen Schaltung auszuführen, wird der Reset-Impuls 215 inaktiv und die CPU 203 beginnt mit dem Ablauf des in 4 dargestellten Prozesses ab Schritt S401.
  • In Schritt S401 detektiert die CPU 203 die Ursache für die Reset-Operation, d. h. ob die Reset-Operation der CPU als Antwort auf ein externes Reset-Signal oder weil der Drucker eingeschaltet wurde erfolgte. Dies kann durch Bewertung des Status eines externen Reset-Flags bestimmt werden, das gesetzt wird, wenn die CPU 203 ein externes Reset-Signal 214 erkennt. Es ist zu beachten, dass dieses externe Reset-Flag erneut gesetzt werden muss, wenn die Spannungsversorgung unterbrochen wird. Deshalb wird vorzugsweise das externe Reset-Flag im Speicher gespeichert, für den sichergestellt ist, dass der Standardstatus beim Einschalten der Reset-Status des externen Flags ist, oder das externe Reset-Flag wird im EEPROM gespeichert und der Adressbereich, in dem es gespeichert ist, wird sofort gelöscht, wenn die Spannungsversorgung endet, so dass das externe Flag den Reset-Status annimmt. Bei dieser ersten Ausführungsform wird das externe Reset-Flag gesetzt und zusammen mit einer Reset-Startzeit im EEPROM 208 in einem NMI-Prozess gespeichert, der durch das externe Reset-Signal 214 aufgerufen wird. Die Reset-Startzeit ist der Zeitpunkt, zu dem ein externes Reset-Signal detektiert wird.
  • Die CPU 203 prüft dieses externe Reset-Flag in Schritt S401 und bestimmt, dass ein externer Reset stattfand, wenn das Flag gesetzt ist, bzw. ein Einschalt-Reset, wenn das Flag nicht gesetzt ist. Die CPU 203 vergleicht dann die von der Echtzeituhr 207 erhaltene aktuelle Zeit mit der gespeicherten Reset-Startzeit und bestimmt ungeachtet des Status des externen Reset-Flags, dass eine Einschalt-Reset-Anforderung vorlag, wenn die Differenz zwischen diesen beiden Zeiten nicht der Verzögerungszeit Td entspricht. Dies verhindert Bestimmungsfehler, die z. B. auftreten könnten, wenn ein Einschalt-Reset unmittelbar nach dem Anlegen des externen Reset-Signals 214 vorliegt.
  • Wenn die CPU 203 bestimmt, dass ein Einschalt-Reset vorlag, startet sie den ersten Zeitgeber 6 in Schritt S407. Der Zeitpunkt, in dem der Zeitgeber 6 gestartet wird, wird als Einschaltzeit bezeichnet. Nach Schritt S407 führt die CPU den ersten Initialisierungsprozess 4 in Schritt S408 aus.
  • Auf Basis des ersten Zeitgebers 6 wird in Schritt S409 bestimmt, ob die Verzögerungszeit T1 abgelaufen ist, d. h., ob die abgelaufene Zeit Te seit der Einschaltzeit gleich ist oder länger als T1, und falls nicht, wartet die CPU 203, bis sie abgelaufen ist. Wenn T1 abgelaufen ist, wird der zweite Initialisierungsprozess 5 ausgeführt.
  • In Schritt S411 wird dann bestimmt, ob der erste und zweite Initialisierungsprozess normal beendet worden sind. Ist dies nicht der Fall, wird eine Fehlerbehandlungsroutine (S412) ausgeführt.
  • Andernfalls geht der Drucker in den Normalbetrieb über.
  • Es ist zu beachten, dass der erste Zeitgeber bei dieser ersten Ausführungsform die Echtzeituhr 207 aufweist. Das bedeutet, dass beim Starten des Zeitgebers in Schritt S407 die aktuelle Zeit aus der Echtzeituhr 207 ausgelesen und gespeichert wird. in Schritt S409 wird dann die Differenz zwischen der gespeicherten Zeit und der erneut von der Echtzeituhr 207 erhaltenen aktuellen Zeit berechnet, und diese Differenz wird mit T1 verglichen. Die vorliegende Erfindung ist jedoch nicht auf diesen Typ Zeitgeber beschränkt, und es können verschiedene andere Mittel zu diesem Zweck verwendet werden. So kann beispielsweise in Schritt 407 eine Echtzeituhr mit einer Zeitgeberfunktion verwendet und auf eine vorgegebene Zeit (aktuelle Zeit plus T1) eingestellt werden. Wenn dann diese voreingestellte Zeit vom Zeitgeber detektiert wird und die Uhr einen Interrupt erzeugt, wird ein Flag gesetzt, um anzugeben, dass T1 abgelaufen ist. In Schritt S409 wird dann einfach der Status dieses Flags geprüft. Als weitere Alternative kann der erste Zeitgeber einen Zähler oder Zeitgeber aufweisen, der durch das Rücksetzen der CPU 203 nicht beeinflusst wird.
  • Nunmehr sei erneut auf 4 verwiesen, wonach dann, wenn in Schritt S401 ein externer Reset erkannt wird, die CPU 203 das externe Reset-Flag rücksetzt und erkennt, ob T1 seit der Einschaltzeit abgelaufen ist (S402). Wenn T1 nicht abgelaufen ist, wird der dritte Initialisierungsprozess ausgeführt (S403), und die Prozedur geht zu Schritt S409 weiter. Wenn T1 abgelaufen ist, wird der vierte Initialisierungsprozess ausgeführt (S404). Die CPU 203 erkennt dann, ob der Initialisierungsprozess normal beendet worden ist (S405). Ist dies nicht der Fall, wird eine Fehlerbehandlungsroutine ausgeführt (S406). Andernfalls geht der Drucker zum Normabetrieb über und wartet auf einen Druckbefehl und Daten vom Host-Gerät 220.
  • Es ist zu beachten, dass die Fehlerbehandlungsroutinen (S406, S412) typischerweise LEDs oder andere Anzeigemittel am Drucker ansteuern und/oder ein Fehlersignal über die Schnittstelle 202 zum Host-Gerät 220 schicken, um den Bediener darauf aufmerksam zu machen, dass ein Fehler aufgetreten ist.
  • Eine beispielhafte Initialisierungsabfolge, die ausgeführt wird, wenn ein Drucker gemäß dieser Ausführungsform eingeschaltet wird, ist in 5 dargestellt und wird nachstehend beschrieben.
  • Wie durch einen Vergleich mit der in 1(b) dargestellten Abfolge offensichtlich ist, wird der erste Initialisierungsprozess (Schritt S408) jedes Mal ausgeführt, wenn ein externes Reset-Signal 214 empfangen wird (bei den Reset-Impulsen 106, 107 und 108), aber der zweite Initialisierungsprozess 5 (Schritt S410) wird nicht ausgeführt. Dieser zweite Initialisierungsprozess 5 wird nur ausgeführt, wenn die Verzögerungszeit T1 nach der Einschaltzeit abgelaufen ist (Schritt S410). Abgesehen davon, dass eine wiederholte Ausführung des zweiten Initialisierungsprozesses mit dem damit einhergehenden unnötigen Verschleiß der mechanischen Teile und dem hohen Tintenverbrauch vermieden wird, ermöglicht dieses Verfahren, dass die Initialisierung des Druckers als Antwort auf die Erfordernisse der Betriebsumgebung des Host-Geräts, an das der Drucker angeschlossen ist, so rasch wie möglich abgeschlossen wird.
  • Wenn der Drucker 1 ein Reset-Signal vom Host-Gerät 220 empfängt, nachdem er in einen normalen Druckprozess übergegangen ist, kann der vierte Initialisierungsprozess 8 unverzüglich ausgeführt werden, wie dies im Fall eines herkömmlichen Druckers üblich ist.
  • ZWEITE AUSFÜHRUNGSFORM
  • 6 ist ein Blockdiagramm eines Druckers gemäß einem zweiten Ausführungsbeispiel der vorliegenden Erfindung. Es sei darauf hingewiesen, dass gleiche Teile in den 6 und 3 durch identische Bezugszeichen gekennzeichnet sind und nicht erneut beschrieben werden.
  • Diese zweite Ausführungsform verbessert die erste Ausführungsform bezüglich des Mittels zur Änderung der Verzögerungszeit T1, die vom ersten Zeitgeber 6 zu messen ist. Der Drucker 1 gemäß dieser zweiten Ausführungsform weist ferner einen zweiten Zeitgeber 12 zum Zählen der seit der Einschaltzeit vergangenen Zeit Te auf. Wie später ausführlicher erläutert werden wird, dient dieser zweite Zeitgeber 12 zur Bestimmung eines neues Wertes für die Verzögerungszeit T1. Der Wert von T1, der im nicht flüchtigen Speicher 9 gespeichert ist, wird dann mittels der Datenänderungsschaltung 10 auf diesen neuen Wert aktualisiert. Der zweite Zeitgeber 12 dieser zweiten Ausführungsform kann mit der Echtzeituhr 207, der CPU 203 und einem Speicher implementiert werden, falls die zweite Ausführungsform mit der in 2 dargestellten Hardware-Struktur verwirklicht ist.
  • Der Initialisierungssteuerprozess des Druckers 1 gemäß der zweiten Ausführungsform wird nachstehend unter Bezugnahme auf das Flussdiagramm von 7 beschrieben. Es sei darauf hingewiesen, dass ein wesentlicher Teil des Initialisierungsverfahrens der zweiten Ausführungsform identisch mit der in 4 dargestellten ersten Ausführungsform ist. Gleiche Schritte sind deshalb mit identischen Bezugszeichen versehen und auf ihre weitere Beschreibung kann deshalb im Folgenden verzichtet werden. Die Schritte nach den Schritten S408 und S402 in 7, die nicht dargestellt sind, sind die gleichen wie in 5.
  • Wenn die Spannungsversorgung des Druckers eingeschaltet wird, erzeugt die Reset-Schaltung 213 einen Reset-Impuls 215, der den Start des in 7 dargestellten Steuerprozesses bewirkt. Wie in 4 ist der erste Schritt S401 bei diesem Prozess die Bestimmung, ob der Reset durch Einschalten des Druckers oder durch ein externes Reset-Signal veranlasst wurde. Wenn in Schritt S401 bestimmt wird, dass die Ursache das Einschalten des Druckers ist, werden sowohl der erste Zeitgeber 6 als auch der zweite Zeitgeber 12 gestartet (S601). Dann wird der erste Initialisierungsprozess ausgeführt (S408) wie oben bei der ersten Ausführungsform beschrieben.
  • Wenn dagegen in Schritt S401 als Ursache für den Reset ein externes Reset-Signal bestimmt wird, geht der Prozess zu Schritt S602 weiter, in dem detektiert wird, ob die vom zweiten Zeitgeber 12 gezählte Zeit Te eine vorgegebene Referenzzeit T2 erreicht hat. Wenn Te T2 nicht erreicht hat, wird der Wert der Verzögerungszeit T1, die vom ersten Zeitgeber 6 gezählt wird, in Schritt S603 aktualisiert. Genauer gesagt wird die Zeit Te, die der zweite Zeitgeber 12 gezählt hat, als neuer Wert der Verzögerungszeit T1 eingestellt. Es sollte jedoch unbedingt beachtet werden, dass dieser neue Wert als Antwort auf ein anschließend vorliegendes Reset-Signal erneut geändert werden kann. Dieser aktualisierte Wert der Verzögerungszeit T1 wird deshalb nicht sofort als Einstellung für den ersten Zeitgeber verwendet, der aktuell zählt, sondern statt dessen erstmals beim nächsten Start des ersten Zeitgebers, d. h. beim nächsten Einschalt-Reset.
  • In Schritt S402 wird dann detektiert, ob die Verzögerungszeit T1 seit der Einschaltzeit abgelaufen ist.
  • Wenn in Schritt S602 die Referenzzeit T2 abgelaufen ist, überspringt der Prozess die Aktualisierung der Verzögerungszeit T1 (Schritt S603) und geht zu Schritt S402 weiter.
  • Bei dieser Ausführungsform wird die Verzögerungszeit T1, die als Einstellung für den ersten Zeitgeber 6 dient, gemäß dem letzten der externen Resets eingestellt, die nach der Einschaltzeit und vor dem Ablauf der Referenzzeit T2 erzeugt werden. Genauer gesagt ist T1 als Zeitintervall von der Einschaltzeit bis zur Reset-Startzeit dieses letzten externen Reset plus einer vorgegebenen Zeittoleranz definiert, die bei dieser beispielhaften Ausführungsform vier Sekunden beträgt. Es ist deshalb möglich, die kürzestmögliche Verzögerungszeit T1 gemäß der vorgegebenen zeitlichen Abfolge aufeinanderfolgender externer Reset-Signale dynamisch zu berechnen, die als Folge des Einschaltens des Host-Geräts, an das der Drucker 1 angeschlossen ist, angelegt werden. Dies macht es außerdem möglich, den zweiten Initialisierungsprozess zum frühestmögliche Zeitpunkt zu starten und somit auch, den zweiten Initialisierungsprozess früher zu beenden. Die vorgegebene Zeittoleranz gleicht geringfügige Schwankungen der Eigenschaften des Host-Geräts aus, so dass eine stabile Initialisierung erzielt werden kann.
  • Es liegt auf der Hand, dass die Referenzzeit T2 länger sein sollte als die kombinierte Gesamtzeit aus der Dauer aufeinanderfolgender Reset-Signale und den Intervallen dazwischen, die ausgegeben werden, wenn das Host-Gerät eingeschaltet wird. Wenn jedoch diese Gesamtzeit besonders lang und T2 sogar noch länger eingestellt sind, werden der Start des zweiten Initialisierungsprozesses und die Beendigung der Einschalt-Resetoperation verzögert. Um dies zu vermeiden, wird die Zeitspanne bei diesem Ausführungsbeispiel auf eine Zeit eingestellt, die normalerweise den Beginn des wesentlichen Initialisierungsprozesses, nämlich des zweiten Initialisierungsprozesses, innerhalb einer Minute zulässt.
  • Wenn bei dieser Ausführungsform die Referenzzeit T2 gleich dem maximal verfügbaren Wert für die Verzögerungszeit T1 eingestellt wird, kann die Verzögerungszeit innerhalb des Bereichs unter diesem Maximalwert eingestellt werden. Es ist deshalb möglich, eine unendliche Verzögerung des Starts des zweiten Initialisierungsprozesses zu vermeiden, und die Druckeranfahrzeit kann geregelt werden.
  • Es sei außerdem darauf hingewiesen, dass der zweite Zeitgeber 12 identisch dem ersten Zeitgeber 6 sein kann, so dass im Folgenden auf eine nähere Beschreibung desselben verzichtet wird.
  • DRITTE AUSFÜHRUNGSFORM
  • Die oben beschriebene erste und zweite Ausführungsform der vorliegenden Erfindung lösen das Problem wiederholter Drucker-Resets, wenn das Host-Gerät eingeschaltet wird. Die Lösung verwendet einen erste Zeitgeber 6, der die Durchführung des Initialisierungsprozesses auf der Basis bestimmt, ob die Verzögerungszeit T1 seit der Einschaltzeit abgelaufen ist oder nicht. Bei diesen Ausführungsformen kann jedoch der zweite Initialisierungsprozess erst dann beginnen, wenn T1 abgelaufen ist, und die Hochfahrzeit des Druckers, d. h. die Verzögerung bis der Drucker für den Start eines normalen Druckprozesses bereit ist, wird entsprechend länger.
  • Es gibt deshalb Fälle, in denen es wünschenswert ist, den Initialisierungssteuerprozess der ersten oder zweiten Ausführungsform nicht anzuwenden, die beide den zweiten Initialisierungsprozess verzögern. Zu diesen Fällen zählen solche, bei denen die Prozesse entsprechend denen des oben beschriebenen zweiten Initialisierungsprozesses nicht erforderlich sind, etwa dann, wenn eine Reinigung des Druckkopfes beim Einschalten des Druckers nicht erforderlich ist, oder wenn der Drucker eingeschaltet wird, wenn das Host-Gerät bereits läuft.
  • Ein Drucker gemäß dieser dritten Ausführungsform der vorliegenden Erfindung initialisiert deshalb den Drucker selektiv gemäß einem ersten Modus, bei dem ein Initialisierungssteuerprozess gemäß der ersten oder zweiten Ausführungsform der Erfindung angewendet wird, oder gemäß einem zweiten Modus, bei dem ein herkömmlicher Initialisierungssteuerprozess angewendet wird.
  • Funktions- und Blockschaltdiagramme für einen Drucker gemäß dieser dritten Ausführungsform der Erfindung sind identisch mit den der ersten bzw. zweiten Ausführungsform. Der Initialisierungssteuerprozess ist jedoch verschieden und wird nachstehend unter Bezugnahme auf das Flussdiagramm von 8 beschrieben.
  • Wenn der Drucker eingeschaltet wird, sendet die Reset-Schaltung 213 einen Reset-Impuls 215 an die CPU 203, um eine Einschalt-Resetoperation zu bewirken. Dieser Reset-Impuls veranlasst die CPU 203, den in 8 dargestellten Prozess zu beginnen und die Bestimmung in Schritt S801, welcher Reset-Modus anzuwenden ist. Genauer gesagt bestimmt die CPU 203, ob ein Reset-Prozess gemäß dem ersten Modus oder ein Reset-Prozess gemäß dem zweiten Modus ausgeführt wird. Diese Bestimmung kann mittels eines DIP-Schalters oder eines anderen Hardware-Einstellmittels (in den Figuren nicht dargestellt) erfolgen, der bzw. das am Drucker 1 angeordnet ist. Alternativ kann eine Einstellung, die als ein Steuerbefehl vom Host-Gerät empfangen wird, im EEPROM 208 gespeichert und diese Einstellung abgerufen werden, um die Bestimmung zu machen. Mit anderen Worten, es ist voreingestellt, welcher Modus gewählt werden soll.
  • Wenn in Schritt S801 der erste Modus gewählt wird, geht die Steuerung zu Schritt S401 eines der oben in Zusammenhang mit der ersten und zweiten Ausführungsform beschriebenen Prozesse weiter. Der entsprechende Prozess wird dann ausgeführt. Wenn in Schritt S801 der zweite Modus gewählt wird, wird die Ursache der Reset-Operation in Schritt S802 detektiert. Dieser Prozess ist der gleiche wie der von Schritt S401.
  • Wenn ein Einschalt-Reset erkannt wird, werden der erste und zweite Initialisierungsprozess in den Schritten S803 und S804 ausgeführt. Diese Prozesse werden normalerweise nacheinander ausgeführt und können deshalb normal enden, bevor die Verzögerungszeit T1 abgelaufen ist. In Schritt S805 wird dann detektiert, ob die Initialisierungsprozesse normal abgeschlossen worden sind. Ist dies nicht der Fall, wird eine Fehlerbehandlungsroutine (S806) ausgeführt. Wenn die Initialisierung normal endet, ist der Drucker zum Drucken bereit und erwartet einen Druckbefehl und Druckdaten vom Host-Gerät.
  • Wenn in Schritt S802 ein externer Reset detektiert wird, wird der vierte Initialisierungsprozess ausgeführt (S808). Diesem Initialisierungsprozess kann sich dann eine Fehlerbehandlungsroutine (S810) oder ein normaler Druckprozess anschließen wie oben beschrieben.
  • Wenn bei dieser Ausführungsform der Drucker eingeschaltet wird, wird z. B. bestimmt, ob eine Reinigung des Druckkopfes erforderlich ist. Falls ja, wird der erste Modus gewählt; falls nein, kann der zweite Modus gewählt werden. Es ist zu beachten, dass dann wenn der zweite Initialisierungsprozess gewählt wird, wenn Reinigen nicht erforderlich ist, der Reinigungsprozess nicht im zweiten Initialisierungsprozess enthalten ist. Als Ergebnis kann der zweite Initialisierungsprozess unterbrochen werden, ohne dass dies in unnötigem Tintenverbrauch resultiert. Der zweite Modus kann deshalb in diesem Fall zur Ausführung sämtlicher Initialisierungsprozesse gewählt werden, ohne dass der Ablauf der Verzögerungszeit T1 abgewartet werden muss, wodurch die Hochfahrzeit des Druckers verkürzt wird.
  • Es sollte ferner beachtet werden, dass die vorliegende Erfindung den größten Nutzen bringt, wenn eine Unterbrechung des Druckkopf-Reinigungsprozesses vermieden werden kann. Der erste und zweite Initialisierungsprozess schließen sich daher gegenseitig aus, und die Reinigung des Druckkopfes ist vorzugsweise im zweiten Initialisierungsprozess enthalten, d. h. die Reinigung des Druckkopfes ist vorzugsweise nicht im ersten Initialisierungsprozess enthalten.
  • Die obigen Ausführungsformen eines Druckers gemäß der vorliegenden Erfindung sind anhand eines Tintenstrahldruckers als Beispiel beschrieben worden. Die Erfindung ist jedoch nicht auf Tintenstrahldrucker beschränkt, und eine Vielzahl anderer Druckmechanismen kann alternativ verwendet werden, einschließlich Raster-, Anschlag-, Thermo- und elektrofotografischer Druckmechanismen. Die vorliegende Erfindung kann mit diesen und anderen Druckertypen angewendet werden, indem im zweiten Initialisierungsprozess jegliche Initialisierungsaufgaben abgewickelt werden, die einen gewissen Zeitaufwand erfordern und wünschenswerterweise nicht wiederholt ausgeführt werden.
  • Es sei darauf hingewiesen, dass die Verzögerungszeit Td, die Verzögerungszeit T1, die Referenzzeit T2 etc., die zur Bestimmung des ausgeführten Initialisierungsprozesses dienen, jeweils ein fester Wert sein kann, der im ROM 205 gespeichert wird, oder eine Mehrzahl Werte kann gespeichert und entsprechend vorgegebener DIP-Schaltereinstellungen und/oder Steuerbefehlen gewählt werden.

Claims (24)

  1. Druckvorrichtung, die zur Verbindung mit einem Host-Gerät (220) ausgeführt ist, aufweisend: einen Druckkopf; eine erste Steuerung (2) zum Initialisieren der Druckvorrichtung, wenn die Druckvorrichtung eingeschaltet wird; und ein erstes Zeitgebermittel (6) zum Detektieren, ob eine vorgegebene Verzögerungszeit (T1) seit Beginn des Betriebs der Druckvorrichtung abgelaufen ist oder nicht; bei der die erste Steuerung (2) auf den ersten Zeitgeber (6) anspricht, um einen ersten Initialisierungsprozess (4) vor dem Ablauf der Verzögerungszeit (T1) auszuführen, und einen zweiten Initialisierungsprozess (5), der sich vom ersten Initialisierungsprozess (4) unterscheidet, nach dem Ablauf der ersten Verzögerungszeit auszuführen.
  2. Vorrichtung nach Anspruch 1, ferner aufweisend eine zweite Steuerung (3) zum Initialisieren der Druckvorrichtung als Antwort auf eine Reset-Anforderung vom Host-Gerät (220); bei der die zweite Steuerung (3) auf das erste Zeitgebermittel (6) anspricht, um einen dritten Initialisierungsprozess (7) als Antwort auf eine Reset-Anforderung auszuführen, die vor dem Ablauf der Verzögerungszeit empfangen wird, und einen vierten Initialisierungsprozess (8), der nicht der gleiche ist wie der dritte Initialisierungsprozess (7), als Antwort auf eine Reset-Anforderung, die nach dem Ablauf der Verzögerungszeit empfangen wird.
  3. Vorrichtung nach Anspruch 2, bei der der dritte Initialisierungsprozess (7) im Wesentlichen gleich ist dem ersten Initialisierungsprozess (4).
  4. Vorrichtung nach Anspruch 2, bei der der dritte Initialisierungsprozess (7) im vierten Initialisierungsprozess (8) enthalten ist.
  5. Vorrichtung nach Anspruch 1, ferner aufweisend ein nicht flüchtiges Speichermittel (9) zum Speichern eines die Verzögerungszeit (T1) repräsentierenden Wertes; und ein Datenaktualisierungsmittel (10) zum Aktualisieren des gespeicherten Wertes.
  6. Vorrichtung nach Anspruch 5, ferner einen Befehlsdetektor (11) zum Detektieren eines vorgegebenen Befehls in Daten, die vom Host-Gerät (220) empfangen werden, aufweisend; bei der das Datenaktualisierungsmittel (10) auf den Befehlsdetektor (11) anspricht, um den gespeicherten Wert gemäß dem vorgegebenen Befehl zu aktualisieren.
  7. Vorrichtung nach Anspruch 5, ferner aufweisend ein Reset-Detektormittel zum Detektieren der letzten Hochfahr-Resetanforderung, bei der es sich um die letzte Reset-Anforderung aus einer Mehrzahl Reset-Anforderungen handelt, die vom Hochfahrprozess des Host-Geräts erzeugt werden; und ein zweites Zeitgebermittel (12) zum Messen der Zeit (Te), die vom Beginn des Betriebs der Druckvorrichtung bis zur letzten Hochfahr-Resetanforderung, die vom Reset-Detektormittel detektiert worden ist, vergangen ist; bei der das Datenaktualisierungsmittel (10) den gespeicherten Wert auf Basis der vom zweiten Zeitgebermittel (12) gemessenen abgelaufenen Zeit (Te) aktualisiert.
  8. Vorrichtung nach Anspruch 7, bei der das Reset-Detektormittel so ausgeführt ist, dass es die letzte Reset-Anforderung als die letzte Hochfahr-Reset-Anforderung erkennt, die empfangen wird, bevor die vom zweiten Zeitgebermittel (12) gemessene Zeit eine vorgegebene Referenzzeit (T2) erreicht, die länger ist als die Verzögerungszeit (T1).
  9. Vorrichtung nach Anspruch 5, ferner aufweisend ein zweites Zeitgebermittel (12) zum Messen der abgelaufenen Zeit (Te), seit die Druckvorrichtung den Betrieb startete; und ein Vergleichsmittel zum Vergleichen der abgelaufenen Zeit (Te) mit einer vorgegebenen Referenzzeit (T2); bei der das Datenaktualisierungsmittel (10) auf das zweite Zeitgebermittel (12), das Vergleichsmittel und jede Reset-Anforderung, die vom Host-Gerät (220) empfangen wird, anspricht, während das Vergleichsmittel angibt, dass die abgelaufene Zeit (Te) kürzer ist als die Referenzzeit (T2), um den gespeicherten Wert auf einen neuen zu aktualisieren, der die abgelaufene Zeit (Te) in dem Moment repräsentiert, in dem die jeweilige Reset-Anforderung empfangen wird.
  10. Vorrichtung nach Anspruch 7, bei der das Datenaktualisierungsmittel (10) so ausgeführt ist, dass es den gespeicherten Wert auf einen neuen Wert entsprechend der abgelaufenen Zeit (Te) plus einer vorgegebenen Zeit aktualisiert.
  11. Vorrichtung nach einem der vorigen Ansprüche, ferner einen Modusselektor zum Wählen entweder eines ersten Modus oder eines zweiten Modus aufweisend; bei der die erste Steuerung (2) auf den Modusselektor anspricht, um den ersten Initialisierungsprozess (4) vor dem Ablauf der Verzögerungszeit (T1) und den zweiten Initialisierungsprozess (5) nach Ablauf der Verzögerungszeit auszuführen, wenn der erste Modus gewählt ist, während sowohl der erste als auch der zweite Initialisierungsprozess (5) vor dem Ablauf der Verzögerungszeit (T1) ausgeführt werden, wenn der zweite Modus gewählt ist.
  12. Druckvorrichtung nach einem der vorigen Ansprüche, bei der sich der erste Initialisierungsprozess (4) und der zweite Initialisierungsprozess (5) gegenseitig ausschließen und ein Druckkopf-Reinigungsprozess im zweiten Initialisierungsprozess (5) enthalten ist.
  13. Verfahren zum Initialisieren einer Druckvorrichtung nach einem der vorigen Ansprüche, aufweisend: (a) Initialisieren der Druckvorrichtung, wenn diese eingeschaltet wird; und (b) Detektieren, ob eine vorgegebene Verzögerungszeit (T1) seit dem Start des Betriebs der Druckvorrichtung abgelaufen ist oder nicht; bei dem Schritt (a) aufweist (c) Ausführen eines ersten Initialisierungsprozesses (4), bevor der Ablauf der Verzögerungszeit (T1) in Schritt (b) detektiert wird, und (d) Ausführen eines zweiten Initialisierungsprozesses (5), der sich vom ersten Initialisierungsprozess (4) unterscheidet, nachdem der Ablauf der Verzögerungszeit (T1) in Schritt (b) detektiert wird.
  14. Verfahren nach Anspruch 13, ferner aufweisend: (e) Initialisieren der Druckvorrichtung als Antwort auf eine Reset-Anforderung vom Host-Gerät (220) durch (f) Ausführen eines dritten Initialisierungsprozesses (7) als Antwort auf eine Reset-Anforderung, die vor dem Ablauf der Verzögerungszeit (T1) empfangen wird, und (g) Ausführen eines vierten Initialisierungsprozesses (8), der nicht der gleiche ist wie der dritte Initialisierungsprozess (7), als Antwort auf eine Reset-Anforderung, die nach dem Ablauf der Verzögerungszeit (T1) empfangen wird.
  15. Verfahren nach Anspruch 14, bei dem der dritte Initialisierungsprozess (7) im Wesentlichen gleich ist dem ersten Initialisierungsprozess (4).
  16. Verfahren nach Anspruch 14, bei dem der dritte Initialisierungsprozess (7) im vierten Initialisierungsprozess (8) enthalten ist.
  17. Verfahren nach Anspruch 13, ferner aufweisend: (h) statisches Speichern eines Wertes, der die Verzögerungszeit (T1) repräsentiert; und (i) Aktualisieren des in Schritt (h) gespeicherten Wertes.
  18. Verfahren nach Anspruch 17, ferner aufweisend: (j) Detektieren eines vorgegebenen Befehls in Daten, die vom Host-Gerät (220) empfangen werden; bei dem in Schritt (i) der gespeicherte Wert gemäß dem in Schritt (j) detektierten vorgegebenen Befehl aktualisiert wird.
  19. Verfahren nach Anspruch 17, ferner aufweisend: (k) Detektieren der letzten Hochfahr-Resetanforderung, die die letzte Reset-Anforderung in einer Mehrzahl Reset-Anforderungen ist, die vom Hochfahrprozess des Host-Geräts erzeugt werden; und (l) Messen der Zeit (Te), die vom Start des Betriebs der Druckvorrichtung bis zur letzten Hochfahr-Resetanforderung, wie sie in Schritt (k) detektiert wird, abgelaufen ist; bei dem in Schritt (i) der gespeicherte Wert auf Basis der in Schritt (l) gemessenen abgelaufenen Zeit (Te) aktualisiert wird.
  20. Verfahren nach Anspruch 19, bei dem Schritt (k) aufweist: (m) Detektieren derjenigen letzten Reset-Anforderung als die letzte Hochfahr-Reset-Anforderung, die empfangen wird, bevor die in Schritt (l) gemessene Zeit eine vorgegebene Referenzzeit (T2) erreicht, die länger ist als die Verzögerungszeit (T1).
  21. Verfahren nach Anspruch 19, bei dem Schritt (i) aufweist: (n) Aktualisieren des gespeicherten Wertes auf einen neuen Wert entsprechend der abgelaufenen Zeit (Te) plus einer vorgegebenen Zeit.
  22. Verfahren nach Anspruch 13, ferner aufweisend: (o) Wählen eines ersten Modus, bei dem die Schritte (c) und (d) nur dann ausgeführt werden, wenn der erste Modus gewählt ist.
  23. Verfahren nach einem der Ansprüche 13 bis 22, bei dem sich der erste Initialisierungsprozess (4) und der zweite Initialisierungsprozess (5) gegenseitig ausschließen und ein Druckkopf-Reinigungsprozess im zweiten Initialisierungsprozess (5) enthalten ist.
  24. Computerlesbares Datenspeichermedium, das einen Programmcode trägt, der bei Ausführung in einer Druckvorrichtung nach einem der Ansprüche 1 bis 12 das Verfahren gemäß einem der Ansprüche 13 bis 23 ausführt.
DE69930697T 1998-07-29 1999-07-28 Initialisierung eines Computerdruckers Expired - Lifetime DE69930697T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP21459398 1998-07-29
JP21459398 1998-07-29

Publications (2)

Publication Number Publication Date
DE69930697D1 DE69930697D1 (de) 2006-05-18
DE69930697T2 true DE69930697T2 (de) 2006-10-05

Family

ID=16658296

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69930697T Expired - Lifetime DE69930697T2 (de) 1998-07-29 1999-07-28 Initialisierung eines Computerdruckers

Country Status (3)

Country Link
US (1) US6693717B1 (de)
EP (1) EP0981104B1 (de)
DE (1) DE69930697T2 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030061436A1 (en) * 2001-09-25 2003-03-27 Intel Corporation Transportation of main memory and intermediate memory contents
JP3658353B2 (ja) * 2001-10-01 2005-06-08 キヤノン株式会社 記録装置、および記録装置の制御方法
JP4304574B2 (ja) * 2002-10-23 2009-07-29 ブラザー工業株式会社 画像形成装置
JP2005074894A (ja) * 2003-09-02 2005-03-24 Oki Data Corp 画像形成装置
JP5538924B2 (ja) * 2009-03-19 2014-07-02 キヤノン株式会社 プリント装置およびシート処理装置の制御方法
JP5561465B2 (ja) * 2009-11-05 2014-07-30 富士ゼロックス株式会社 画像形成装置、画像形成システム、処理プログラム
JP5622641B2 (ja) * 2011-03-30 2014-11-12 シチズンホールディングス株式会社 サーバ装置および情報処理方法
JP2014032583A (ja) * 2012-08-06 2014-02-20 Canon Inc 画像処理装置、画像処理装置の制御方法、及びプログラム
US10509657B2 (en) * 2018-04-27 2019-12-17 Ncr Corporation Forced device reinitialization without mandatory restart
US10432816B1 (en) * 2018-08-17 2019-10-01 Hewlett-Packard Development Company, L.P. Finishing line controllers to optimize the initialization of a printing device
CN111221480B (zh) * 2020-01-10 2023-06-27 珠海趣印科技有限公司 一种打印数据处理方法及系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60130758A (ja) * 1983-12-20 1985-07-12 Toshiba Corp 像形成装置
JP3088769B2 (ja) * 1991-04-18 2000-09-18 株式会社リコー 画像形成装置
JPH0781073A (ja) 1993-09-20 1995-03-28 Fujitsu Ltd インクジェットカラープリンタヘッドのクリーニング制御方式
KR960010183B1 (ko) * 1993-10-23 1996-07-26 김광호 에너지절감 화상기록장치 및 그 제어방법
JPH08142450A (ja) 1994-11-17 1996-06-04 Tec Corp インクジェットプリンタ
JP3601102B2 (ja) * 1995-03-15 2004-12-15 ブラザー工業株式会社 インクジェット式印刷記録装置と印字システム
JPH1093813A (ja) * 1996-09-12 1998-04-10 Canon Inc 記録装置
JP3695020B2 (ja) 1996-11-21 2005-09-14 セイコーエプソン株式会社 インクジェット記録装置
US6364442B1 (en) 1997-10-16 2002-04-02 Seiko Epson Corporation Printing apparatus, and a control method for resetting the printing apparatus
WO1999022941A1 (fr) 1997-11-05 1999-05-14 Seiko Epson Corporation Imprimante et son procede de commande
JPH11296046A (ja) * 1998-04-14 1999-10-29 Canon Inc 印刷制御装置および印刷制御装置の印刷処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体

Also Published As

Publication number Publication date
EP0981104B1 (de) 2006-04-05
EP0981104A2 (de) 2000-02-23
EP0981104A3 (de) 2001-04-25
DE69930697D1 (de) 2006-05-18
US6693717B1 (en) 2004-02-17

Similar Documents

Publication Publication Date Title
DE69930697T2 (de) Initialisierung eines Computerdruckers
DE69725778T2 (de) Druckerkommunikationssystem und -verfahren
DE69434717T2 (de) Datenverarbeitungsgerät das als Host arbeitet und Verfahren um das Datenverarbeitungsgerät zu steuern
DE69930207T2 (de) Drucken mit mehreren Druckern
DE102011121637B4 (de) Druckvorrichtung und deren steuerverfahren
DE69937424T2 (de) Steuerungsverfahren zur Datensicherung aus einem flüchtigen in einen nichtflüchtigen Speicher in einem Drucker
EP1523412B1 (de) Verfahren und vorrichtung zur fehlerbehandlung in einem drucker oder kopierer
DE60202187T2 (de) Druckanordnung
DE3723276A1 (de) Steuergeraet fuer printer
DE3928433C2 (de) Bilderzeugungssystem
DE69133428T2 (de) Informationsverarbeitungsgerät mit umschaltbarem Programm
DE69733589T2 (de) Verfahren zum Liefern von Betriebsablaufdaten für Druckgerät
DE69636264T2 (de) Verfahren zum Erzeugen eines Poststückes
DE69831314T2 (de) Drucker und steuerverfahren dafür
DE19945511A1 (de) Schrittmotorsteuereinheit und Bilderzeugungsgerät
DE69927755T2 (de) Druckvorrichtung, sein Rücksetzverfahren und Speichermedium
DE60027633T2 (de) Datenkommunikations-Gerät
DE3836890C2 (de)
DE10146335B4 (de) System zum Bestimmen des Austauschs einer Komponente in einem Drucker
DE4422619A1 (de) Drucksystem
DE3937726A1 (de) Bilderzeugungssystem
DE60023045T2 (de) Verkürzung der ersten Ausdruckzeit in einem Laserdrucker
DE10224745A1 (de) Tonerrückstandserfassungssysteme und Verfahren zum Bestimmen des Volumens von Tonerrückstand in einer Druckerkassette
DE60300345T2 (de) Druckgerät mit selbstanpassender Steuerung des Wartungsschlittens und Verfahren dafür
DE60034972T2 (de) Tintenstrahldrucker

Legal Events

Date Code Title Description
8364 No opposition during term of opposition