JP3774550B2 - プリンタ/スキャナ装置 - Google Patents

プリンタ/スキャナ装置 Download PDF

Info

Publication number
JP3774550B2
JP3774550B2 JP25261197A JP25261197A JP3774550B2 JP 3774550 B2 JP3774550 B2 JP 3774550B2 JP 25261197 A JP25261197 A JP 25261197A JP 25261197 A JP25261197 A JP 25261197A JP 3774550 B2 JP3774550 B2 JP 3774550B2
Authority
JP
Japan
Prior art keywords
printer
scanner
white reference
reference value
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP25261197A
Other languages
English (en)
Other versions
JPH1188674A (ja
Inventor
伸恒 小林
鉱一 中原
政希 西山
勝 巻田
尚久 鈴木
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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP25261197A priority Critical patent/JP3774550B2/ja
Publication of JPH1188674A publication Critical patent/JPH1188674A/ja
Application granted granted Critical
Publication of JP3774550B2 publication Critical patent/JP3774550B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Ink Jet (AREA)
  • Facsimile Scanning Arrangements (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、記録媒体に記録を行なうプリンタ(シリアルプリンタ)のインクヘッドカートリッジを移動させるキャリッジ上にスキャナヘッドカートリッジを載せることによって前記プリンタを原稿の読取装置として機能させることが可能なプリンタ/スキャナ装置に関する。
【0002】
【従来の技術】
一般的なスキャナ装置においては、スキャン対象画像に光を照射し、この光が画像に反射してスキャナの光学系に入り、その光のレベルがアナログ/デジタル変換(以下、A/D変換と記述する)によってデジタル値に変換されたものが、スキャン画像処理として得られる仕組みになっている。スキャナの画質を決定する重要な要素としてコントラストが挙げられるが、これは画像中の最も暗い画素から最も明るい画素までの濃淡の範囲として定義される。スキャナはこのコントラスト範囲に基づき取り込まれた各々の画素について光学アナログデータをA/D変換する。
【0003】
コントラスト情報は、スキャナ装置の個体間の光学系特性及び電気回路特性のばらつきがあるため、スキャナ装置の個体によって異なる。そのため、スキャナ装置はスキャン動作を行なう前に必ずこのコントラスト情報を規定する手段を遂行し、その結果を記憶しておく必要がある。
【0004】
前記コントラスト情報は、具体的にはスキャナ装置が実際に読み取って得られる最も白いデータの値を規定するための基準データ(以下、白基準値と記述する)と、最も黒いデータの値を規定するための基準データ(以下、オフセット値と記述する)とで構成される。各々の画素をA/D変換する際、白基準値及びオフセット値をレファレンスとしてA/D変換を行う。
【0005】
スキャナ装置が画像や白基準値及びオフセット値を読み込む際、出力値は光源、光学センサ、A/D変換回路、アンプ等のハードウエアの環境、位置精度、個体差等に依存する。特定の画素を読み込む場合、その出力を一定にし、安定した高画質を実現するためには、この依存度による変動比率が低いことが求められる。これを実現するためには、精度の高い部品の採用、光源の高光量化、画素当たりの読み取り時間の増加、また、A/D変換処理のレファレンスとなる白基準値及びオフセット値の測定周期を原稿の読み取りごとに行なう等の手段がとられている。
【0006】
一方、最近ではワードプロセッサ等に用いられるシリアルプリンタにおいて、プリント手段であるインクカートリッジの代わりに同形状のスキャナユニットを搭載することで読取手段としても使用可能となるものが知られている。
【0007】
【発明が解決しようとする課題】
しかしながら、上述したスキャナユニットを製品化するためには、小型化及び低価格化が必要とされるが、これらの要求を実現するためには、以下のような問題点が生じる。
【0008】
(1)小型化及び低価格化のために、使用できる光学部品の大きさ及び性能が制限され、理想的な特性を得ることが困難となり、紙とヘッドとの間隔(紙間)の変動にスキャン画質が左右されやすい系ができてしまう。
【0009】
(2)白基準値の検出を行なうための専用紙(以下、白基準用紙と記述する)を用意して、該白基準用紙を適宜ユーザにセットさせてレファレンス値を検出することにより、白基準値検出のための構成を簡略化する構成を採用することがあるが、このときに正確な白基準値が得られないとスキャン画質が劣化する。
【0010】
また、より安価な紙の搬送系を実現するための簡素な構成の搬送拍車や、安価な搬送ゴムローラを採用する必要があり、ユーザが単一の白基準用紙を幾度にも亘って使用すると、搬送拍車の噛んだ跡が溝となって残ったり、搬送ゴムローラのゴム跡で汚れが残ってしまう。こうした汚れの位置で検出した白基準値は不正であり、これを用いて画像イメージのスキャンを行なうと画像が不良になるという問題点があった。
【0011】
(3)ヘッドへの白基準値の設定には長い時間を必要とすることから、スキャンのためにヘッドを移動させている最中には白基準値の設定を行なうことができず、ラスター先頭で白基準値を設定した後は該ラスター中で継続して該白基準値を使用せざるを得ないという条件があり、1ラスターをスキャンするためには、必ず1ラスター全域に対して通用する、より正確な白基準値の代表値をラスター先頭でスキャナヘッドの各ドット画素について設定しておかなければならない前提が存在する。
【0012】
(4)電気ノイズ等の影響を抑えるために行なわれる白基準値の統計化処理が既に提案されている。代表的な手段としては、1つの位置で数回の白基準値の検出を行なうものが挙げられるが、この手段は処理に長い時間を必要とすることから、ラスター全域の各位置において行なうことは事実上不可能である。
【0013】
即ち、白基準用紙を用いて白基準値を検出するときに紙間変動の影響を受けてしまうと、この値を用いて画像スキャンを行なったラスター全域の画質が著しく劣化するという問題点があった。
【0014】
本発明は上述した従来の技術の有するこのような問題点に鑑みてなされたものであり、その第1の目的とするところは、安価で小型なものでありながら、紙間の悪影響を小さくして白基準値を検出することが可能で、画質の向上を図ることができるプリンタ/スキャナ装置を提供しようとするものである。
【0015】
また、本発明の第2の目的とするところは、安価で小型なものでありながら、紙間の悪影響を回避して画像スキャンを行なうことが可能なプリンタ/スキャナ装置を提供しようとするものである。
【0016】
また、本発明の第3の目的とするところは、安価で小型なものでありながら、白基準用紙上に付着する汚れの悪影響を回避して画像スキャンを行なうことが可能なプリンタ/スキャナ装置を提供しようとするものである。
【0017】
更に、本発明の第4の目的とするところは、安価で小型なものでありながら、紙間の悪影響を回避して白基準値を検出することが可能で、画質の向上を図ることができ、また、処理速度の低下を招くことなく画質の向上を図ることが可能なプリンタ/スキャナ装置を提供しようとするものである
【0018】
【課題を解決するための手段】
上記第の目的を達成するために請求項1記載のプリンタ/スキャナ装置は、記録媒体に記録を行なうプリンタのインクヘッドカートリッジを移動させるキャリッジ上にスキャナヘッドカートリッジを載せることによって前記プリンタを原稿の読取装置として機能させることが可能なプリンタ/スキャナ装置において、A/D変換用のレファレンス値(白基準値)の検出手段として、画像スキャンと同一の手段によって1ラスター全域の各位置に対して白基準値を検出し、該検出された各白基準値の平均値を算出し、該算出された平均値に最も近い白基準値を検出した紙上の位置を求め、該求めた位置において白基準値の統計化検出処理を行なって白基準値の代表値を求め、画像スキャン時にはラスターの先頭で前記代表値を白基準値としてヘッドに設定することを特徴とする
【0022】
【発明の実施の形態】
以下、本発明の各実施の形態を図面に基づき説明する。
【0023】
(第1の実施の形態)
まず、本発明の第1の実施の形態について、図1〜図28に基づき説明する。図1は、本発明の第1の実施の形態に係るシリアル・プリンタ/スキャナ装置を内蔵した携帯型パーソナル・コンピュータ(以下、パソコンと記述する)の構成を示す外観斜視図である。本実施の形態に係るシリアル・プリンタ/スキャナ装置は、シリアル・インクジェット・プリンタの印字ヘッド・カートリッジを移動させるキャリッジ上に、前記印字ヘッド・カートリッジと同形状のスキャナヘッド・カートリッジを載せることによって、プリンタを現行の読取装置として機能させることが可能である。
【0024】
図1において、100はパソコン本体、101はパソコン本体100に開閉可能に設けられた蓋体である。パソコン本体100にはキーボード102とプリンタ103がそれぞれ設けられている。また、蓋体101には液晶表示装置等からなる表示装置104が設けられている。
【0025】
図2は、同パソコンの内部構成を示すブロック図である。同図において、200はパソコンのホスト部(HOST)で、このホスト部200において主制御を司っているのが中央演算処理装置(CPU)201であり、その基本的制御を指示するのが基本入出力システム・リード・オンリー・メモリ(BIOS ROM)である。書き込み可能な不揮発性メモリ装置であるフロッピーディスク(FDD)203やハードディスク(HDD)204からフロッピーディスク・コントローラ(FDC)205やハードディスク・コントローラ(HDC)206を経由してアプリケーションプログラムを読み出し、システム・メイン・ダイナミック・ランダム・アクセス・メモリ(MAIN DRAM)207に展開し、また、このMAIN DRAM207を利用してプログラムを実行する。このとき、画面の表示方法としては、ビデオ・グラフィック・アレイ・コントローラ(VGAC)208を使って液晶表示装置(LCD)209(図1では104)に、ビデオ・ランダム・アクセス・メモリ(VRAM)210に書き込まれているキャラクタ等の表示を行ない、キーボード211(図1では102)からのキー入力は、キーボード・コントローラ(KBC)212を経由して行なわれる。また、図2において数値演算プロセッサ(FPU)213は、CPU201に対して演算処理のサポートを行なうものである。リアルタイム・クロック(RTC)214は現時点で経過時間を示すもので、システム全体の電源が切られた状態においても、専用バッテリーにより動作は行なわれる。図示しないスタティック・ランダム・アクセス・メモリ(SRAM)には、システムの動作状態等のシステム情報が格納されている。このSRAMも、前記専用バッテリーにより電源未投入時にもその格納内容は保持されている。
【0026】
ダイレクト・メモリ・アクセス・コントローラ(DMAC)215はメモリ−メモリ間、メモリ−I/O(入出力部)間、I/O−I/O間において高速にデータ転送を行なうために、CPU201の介在無しでデータの転送を行なう。割り込みコントローラ(IRQC)216は、各I/Oからの割り込みを受け付け、優先順位に従って処理を行なう。図示しないタイマーは数チャンネルのフリーラニングタイマーを持ち、各種の時間管理を行なう。その他外部につながるシリアル・インターフェース(SIO)217、拡張ポート(PORT)やユーザに動作状態を伝える発光ダイオード(LED)がある。
【0027】
本パソコンには前述したように本実施の形態に係るプリンタ/スキャナ装置であるシリアル・プリンタ/シリアル・スキャナ・ユニット219が具備されている。プリンタ本体のキャリッジに脱着式の印字ヘッド及びスキャナヘッドのいずれかを装着することにより、印字機能もしくはスキャナ機能を実現する。
【0028】
シリアル・プリンタ/シリアル・スキャナ・ユニット219はホスト部200に対してパラレル・インターフェースでつながっている。ホスト部200とシリアル・プリンタ/シリアル・スキャナ・ユニット219のプリンタ/スキャナ・コントローラはI/Oポートのレジスタレベルでステータスデータ、印字/スキャンデータの送受を行なう。
【0029】
また、図2において、220は電力供給部(POWER SUPPLY)、221はACアダプター、222はバッテリー、223は電力管理用集積回路(POWER MANAGMENT IC)である。
【0030】
図3は、本実施の形態に係るシリアル・プリンタ/シリアル・スキャナ・ユニット219の内部構成を示すブロック図である。同図において、シリアル・プリンタ/シリアル・スキャナ・ユニット219は、プリンタ制御用のCPU(PRINTER/SCANNER CPU)301、プリンタ/スキャナ制御プログラムやプリンタ・エミュレーション、印字フォントを備えたROM(リード・オンリー・メモリ)302、印字のための展開データ、スキャナにより取り込まれた画像データ、図2のホスト部200からの受信データを蓄えておくRAM(ランダム・アクセス・メモリ)303、プリンタ/スキャナの印字/スキャナヘッド(PRINTER/SCANNER HEAD)304、モータを駆動するモータドライバ(MOTOR DRIVER)305、メモリのアクセス制御や図2のホスト部200とのデータのやり取りやモータドライバ305への制御信号送出を行なうコントローラ(PRINTER/SCANNER CONTROLLER)306、本システム全体の機体温度を管理するためのサーミスタ307により構成される。
【0031】
CPU301はROM302内の制御プログラムにより本体の機械的/電気的制御を行ないつつ、図2のホスト部200からシリアル・プリンタ/シリアル・スキャナ・ユニット219へ送られてくるエミュレーション・コマンドをコントローラ306内のI/Oデータレジスタから読み出し、コマンドに対応した制御をコントローラ306内のI/Oデータレジスタ、I/Oポートに書き込み/読み出しを行なう。
【0032】
図4は、プリンタ/スキャナ・コントローラ306の内部構成を示すブロック図であり、このプリンタ/スキャナ・コントローラ306の機能ブロックとしては、図2のホスト部200とのコマンドレベルでのデータのやり取りを行なうI/Oデータレジスタ(I/O DATA REGISTER)401、このI/Oデータレジスタ401から受信データをRAM303に直接書き込む受信バッファコントローラ(RECIEVE BUFFER CONTROLLER)402、印字時にはRAM303の記録データバッファに書き込んで行くプリンタ/スキャナ・バッファ・コントローラ(PRINTER/SCANNER BUFFER CONTROLLER)403、RAM303に対して3方向からのメモリアクセスを制御するメモリ・コントローラ(MEMORY CONTROLLER)404、プリンタ/スキャナ・シーケンスをコントロールするシーケンス・コントローラ(PRINTER/SCANNER BUFFER CONTROLLER)405、図2のホスト部200との通信を司るホスト・インターフェース(HOST I/F)406のブロックからなる。
【0033】
図5は、シリアル・プリンタ/シリアル・スキャナ・ユニット219のI/Oデータレジスタ401のマップを示す。図5の中で、モータコントロールポート501はレジスタの値を直接書き換えることにより、ポートを制御して各モータを駆動するものである。
【0034】
記録データ・バッファ・エリア502は印字、またはスキャン動作に必要なデータ領域を設定するものであり、開始アドレス5021と終了アドレス(スキャン時は開始アドレス)5022とを設定することにより、その範囲内で図4のプリンタ/スキャナ・バッファ・コントローラ403によりRAM303の開始アドレスから順番に終了アドレスに至るまで記録データの読み出し/書き込みを行なう。このとき、受信データ・アドレス・ポインタは現在データ受信済みになっているデータ・アドレスを示している。
【0035】
図6では、上記動作におけるRAM303上の記録データ・バッファと受信バッファのアドレス領域601,602をそれぞれ示している。
【0036】
図7は、スキャナヘッド・カートリッジの構成を示す外観斜視図であり、同図において、700はスキャナヘッド・カートリッジで、コネクタ701を有し、このコネクタ701には接点部702が設けられている。
【0037】
図8は、スキャナヘッド・カートリッジ及び印字ヘッド・カートリッジのプリンタ・ユニットへの着脱状態を示す斜視図である。同図において、801はキャリッジで、スキャナヘッド・カートリッジ700及びプリント用の印字ヘッド・カートリッジ802が択一的に着脱可能に装着される。印字ヘッド・カートリッジ802は、スキャナヘッド・カートリッジ700のコネクタ701と共通のコネクタ803を有し、このコネクタ803には接点部804が設けられている。
【0038】
キャリッジ801は、スキャナヘッド・カートリッジ700のコネクタ701の接点部702、または印字ヘッド・カートリッジ802のコネクタ803の接点部804を介して装置本体より読み取り制御信号を送受信する。また、805はヘッドガイドで、このヘッドガイド805によりキャリッジ801とスキャナヘッド・カートリッジ700、または印字ヘッド・カートリッジ802との連結が行なわれる。読取信号及び制御信号は、接点部702、または接点部804及びフレキシブルケーブル806を介して装置本体のプリンタ/スキャナへ送られる。
【0039】
図9は、図7のスキャナヘッド・カートリッジ700の内部構成を示すブロッ図であり、このスキャナヘッド・カートリッジ700の内部には、図9中の電気系部品を実装したフレキシブル基盤が略箱形状で光学系部品を包み込む構成で配置される。
【0040】
図9において、701はプリンタ本体により読取制御信号を送受信するコネクタ(CONNECTOR)、702はコネクタ701の接点部である。また、901は読取用原稿、902は原稿照明用のLED(発光ダイオード)よりなる光源で、コネクタ701を介して電源が供給されることにより発光する。903は受光レンズ及びミラー(MIRROR)で、光源902が照射した光の反射光をCCD(撮像素子)センサ904へ方向付けるものである。CCDセンサ904により検出された反射光のアナログ出力はアンプ(AMP)905により増幅される。906はスキャナ・コントローラ・ICで、本体とのデータ/コマンドの送受、本体からのコマンドに応じたスキャナ動作、光源902、CCDセンサ904等の制御信号出力、CCDセンサ904からの読み取りアナログデータを増幅したデータをA/D変換ブロック906a並びに本体への送出等の制御を行なう。907はワーク用SRAM(スタティック・ランダム・アクセス・メモリ)で、白基準値、オフセット値の2つのA/Dレファレンス値、スキャナの動作状態、読み取りデータの展開等を行なうものである。本体からのコマンドの送受は、スキャナ・コントローラ・IC906内のI/Oポートのレジスタレベルで行なわれる。
【0041】
図10に、このレジスタマップを示す。
【0042】
図11、図12は、光学系部品及び読み取り反射光の経路を示す図であり、図12におけるケース1201内において、光源(LED)1202に近接して図11における集光手段である円筒形状のロッド・レンズ1203が光源1202の並び方向と平行に設置されている。光源1202の照射中心は、ロッド・レンズ1203のレンズ作用面の中心を通過し、原稿面を斜めに照射する構成となっている。原稿からの反射光は、光軸中心が原稿と略直角方向に設けられた第1の結像系レンズである図11に示すフィールド・レンズ1204を通過した反射光は、読み取り幅方向と平行に設けられたミラー1205により、光軸の進行方向が90度折り曲げられて原稿と平行な光線とされる。1206はアバーチャで、フィールド・レンズ1204の結像面は、この位置とされる。アバーチャ1206の後方には図示しない第2の結像系レンズが設けられている。この第2の結像系レンズの結像位置は、CCDセンサ1207の位置である。
【0043】
図13は、図11、図12に示した読み取り反射光の経路について、本発明において注目される部分の詳細を示す図であり、図13(a)は、読み取り反射光の経路について横方向から見た図、図13(b)は、読み取り反射光の経路について上方向から見た図である。
【0044】
図13において、図9と同一部分については同一符号が付してある。図13において、1301は光の経路を示し、スキャン対象ライン1302は光源902からCCDセンサ904に達する反射光が読取原稿901上で反射する位置を示している。
【0045】
図13(b)において明きらかなように、一列に並べられた複数の光源902から発せられた光は、スキャン対象ライン1302にて反射し、受光レンズ及びミラー903(図13では要点の明確化のために簡略表現されている)で集光され、最終的に一列に並べられた複数のCCDセンサ904に達する。各々のCCDセンサ904は、読み取った画像の各々の画素に対応する。小型及び安価な構成においては、光源902の数を十分に多くすることができないため、列中で両端に位置するCCDセンサ904に達する反射光は、中央部に位置するCCDセンサ904に達する反射光に比べて少ない。
【0046】
図14は、理想的な光学系の構成と、小型及び安価な光学系の構成とを比較するための図である。
【0047】
理想的な光学系の構成においては、図14(a)に示すように高価なペンタプリズム1401が採用されており、読み取り原稿901に対して垂直に光は入射する。従って、1402,1403,1404のように読み取り原稿901の面の高さが変化しても、受光レンズ及びミラー903に達する反射光に変化はない。
【0048】
一方、小型及び安価な光学系の構成においては、ペンタプリズムが無いため、図14(b)に示すように光は反射角1405のような角度Θを持つに至る。小型化のため、読み取り原稿901の面を遠ざけて前記角度Θを小さくすることも困難である。結果として読取原稿901の面の高さが変化すると、受光レンズ及びミラー903に達する反射光は位置ずれを起こす。安価な受光レンズ及びミラー903は、図14において左右両端部分のゲインが低く、1402の読み取り原稿901の面基準位置で反射した場合のゲインを最高にして、読取原稿901の面が浮いても沈んでもゲインは低下することになる。
【0049】
次に、光源902の数が少数で、受光レンズ及びミラー903の長さが短く、CCDセンサ904の数が128、各々のCCDセンサ904の幅が1/360インチ、スキャン幅0.36インチであるスキャナヘッド・カートリッジ700について、図15を用いて説明する。
【0050】
図15は、スキャナヘッド・カートリッジ700を用いて読取原稿901の全域をスキャンした場合の動作例を示す図である。走査処理は、カラム方向にCCDセンサ904を128個並べたヘッドをライン方向に移動することにより行なわれるが、それだけではカラム方向のスキャン幅は0.6インチにしかならない。従って、読取原稿901の全域をスキャンするためには、1ラインの走査処理後、スキャン幅分だけ読取原稿901をフィードし、再び同様の走査処理を行なう必要がある。従って、本実施の形態に係るプリンタ/スキャナ装置においては、スキャナヘッドの軌跡1501のように、スキャナヘッド・カートリッジ700を移動させて、複数回の走査処理を行なう仕様になっている。
【0051】
図16に、蓄積時間とキャリッジ速度、ライン方向読み取り解像度の関係を示す。ここで、蓄積時間とは、1画素を読み込むために要する時間であり、キャリッジ速度とは、スキャナヘッド・カートリッジ700がライン方向に移動する速度である。このとき、ライン方向の読み取り解像度は、下記(1)式により表わされる。
【0052】
ライン方向の読み取り解像度=1/(蓄積時間×キャリッジ速度)…(1)
以下、本実施の形態においては、ライン方向の読み取り解像度が360dpiのときの蓄積時間が256マイクロ秒、180dpiのときの蓄積時間が512マイクロ秒である構成について説明する。
【0053】
図17は、ホスト部200とプリンタ/スキャナ装置219との間の情報のやり取りに使用される専用ステータスポートを示す図である。同図において、1701は第1のステータスポートで、8bitで構成されており、他のステータスポート及びプリンタ/スキャナ装置219の状態に関する情報をやり取りするのに用いる。1702は第2のステータスポートで、16bitで構成されており、コマンド及びデータをやり取りするのに用いる。1703は第3のステータスポートで、16bitで構成されており、印刷用のイメージデータをホスト部200からプリンタ/スキャナ装置219に送出するために用いる。
【0054】
図18は、第1のステータスポート1701を示す図で、各々のビットは、ホスト部200及びプリンタ/スキャナ装置219の双方から参照することができる。図18において、1801のビット0は、第2のステータスポート1702を介してホスト部200からプリンタ/スキャナ装置219にデータが送られているときは「1」、送られていないときは「0」になる。1802のビット1は、第2のステータスポート1702を介してプリンタ/スキャナ装置219からホスト部200にデータが送られているときは「1」、送られていないときは「0」になる。1803のビット2は、第3のステータスポート1703を介してホスト部200からプリンタ/スキャナ装置219にデータを送ることができるときは「0」、できないときは「1」になる。1804のビット3は、プリンタ/スキャナ装置209の電源が入っているときは「0」、入っていないときは「1」になる。1805のビット4は、プリンタ/スキャナ装置209が(動作(busy)状態にあるときは「1」、準備(ready)状態にあるときは「0」になる。1806のビット5は、第1〜第3のステータスポート1701〜1703が初期化中であるときは「1」、初期化済みであるときは「0」になる。
【0055】
図19は、第2のステータスポート1702を介してホスト部200からプリンタ/スキャナ装置219に送られるコマンドの一覧表である。ホスト部200は、これらのコマンドを第2のステータスポート1702に書き込んでから1801のビット0を立てる。プリンタ/スキャナ装置219は、1801のビット0が立っていることを検知次第、第2のステータスポート1702に書き込まれたコマンドに従って処理を行ない、1801のビット0を落とす。該処理が終了次第、第2のステータスポート1702に結果を書き込み、1802のビット1を立てる。ホスト部200は、1802のビット1が立っていることを検知次第、第2のステータスポート1702の内容を読み込み、該読み込みが終了したら、1802のビット1を落とす。
【0056】
以下、コマンドの詳細について説明する。
【0057】
1901の1000Hは、第1〜第3のステータスポート1701〜1703の初期化を行なうコマンドである。1902の4000Hは、印刷イメージの転送を行なうコマンドであり、該コマンドを書き込んだ後、第3のステータスポート1703にイメージデータ自体を書き込むことで、印刷を行なうことが可能である。1903の8000H〜8F78Hは、スキャナ読み取り用のコマンドであり、下位12ビットは画像スキャン動作後のフィード量を示す。このコマンド193を書き込むと、読み込んだイメージデータが順次第2のステータスポート1702を介してプリンタ/スキャナ装置219からホスト部200に送られてくる。このイメージデータ転送後、下位12ビットの値で示されるフィード量だけフィードした後、動作は終了する。ここで、フィード量の単位は1/360インチである。1904の9000H〜9F78Hは、フィードを指示するためのコマンドであり、下位12ビットの値でフィード量を指定する。フィード量の単位は1/360インチである。1905の9FF0Hは、排紙を指示するためのコマンドである。1906の9FF1Hは、給紙を指示するためのコマンドである。1907のA801Hは、現在プリンタ/スキャナ装置219に搭載されているヘッド・ユニットの情報を取得するためのコマンドであり、このコマンドを発効するとプリンタ/スキャナ装置219から図20に示す1バイトのヘッドユニット情報が第2のステータスポート1702を介してホスト部200に送られてくる。
【0058】
図20における2001のビット0は、現在プリンタ/スキャナ装置219に搭載されているヘッド・ユニットの種別を示しており、これが「0」であればスキャナヘッド・ユニット700が、「1」であれば印字ヘッド・ユニット802がそれぞれ搭載されていることを意味する。また、2002のビット1は、現在プリンタ/スキャナ装置219にヘッド・ユニットが搭載されているか否かを示しており、これが「0」であればヘッド・ユニットが搭載されていないことを、「1」であればヘッド・ユニットが搭載されていることを意味する。
【0059】
再び図19に戻って、1908のA805Hは、現在プリンタ/スキャナ装置219において設定されている読み取り解像度の設定値を取得するためのコマンドであり、このコマンド1908を発効するとプリンタ/スキャナ装置219から図21に示す1バイトの読み取り解像度情報がホスト部200に送られてくる。また、図21において2101のビット0が「1」のとき360dpi、2102のビット1が「1」のとき180dpiをそれぞれ意味する。これらのビットが2つ以上同時に「1」になることはない。
【0060】
再び図19に戻って、1909のAD00H〜AD3FHは、蓄積時間512マイクロ秒で検出した白基準値を取得するためのコマンドであり、下位8ビットがヘッドのドット画素0〜127に2画素単位で順次対応している。このコマンド1909を受け取ると、プリンタ/スキャナ装置219は該当するドットに設定された1画素当たり1バイトの白基準値を第2のステータスポート1702を介してホスト部200に送り返す。
【0061】
1910のAD40H〜AD7FHは、蓄積時間256マイクロ秒で検出した白基準値を取得するためのコマンドであり、下位8ビットがヘッドのドット画素0〜127に2画素単位で順次対応している。このコマンド1910を受け取ると、プリンタ/スキャナ装置219は該当するドットに設定された1画素当たり1バイトの白基準値を第2のステータスポート1702を介してホスト部200に送り返す。
【0062】
1911のAD80Hは、搭載されているヘッド・ユニットのID(識別子)を取得するためのコマンドである。このコマンドを受け取ると、プリンタ/スキャナ装置219は前記IDを第2のステータスポート1702を介してホスト部200に送り返す。1912のAD81Hは、プリンタ/スキャナ装置219の内部温度情報を取得するためのコマンドである。このコマンドを受け取ると、プリンタ/スキャナ装置219は1バイトの前記内部温度情報を第2のステータスポート1702を介してホスト部200に送り返す。
【0063】
1913のADF0Hは、蓄積時間512マイクロ秒でオフセット値の検出動作を行なうためのコマンドであり、このコマンドを受け取ると、プリンタ/スキャナ装置219は蓄積時間512マイクロ秒でオフセット値の検出動作を行なう。1914のADF1Hは、蓄積時間256マイクロ秒でオフセット値の検出動作を行なうためのコマンドであり、このコマンドを受け取ると、プリンタ/スキャナ装置219は蓄積時間512マイクロ秒でオフセット値の検出動作を行なう。
【0064】
1915のB805Hは、プリンタ/スキャナ装置219に新しい読み取り解像度を設定するためのコマンドであり、このコマンドを発効した後に、続けてプリンタ/スキャナ装置219に図21に示す1バイトの読み取り解像度情報を送ることで、新しい読み取り解像度のを設定を行なうことができる。
【0065】
1916のBD00H〜BD3FHは、蓄積時間512マイクロ秒時の白基準値をホスト部200からプリンタ/スキャナ装置219中のRAM303に送るためのコマンドであり、下位8ビットがヘッドのドット画素0〜127に2画素単位で順次対応している。このコマンドを発効した後に、続けてプリンタ/スキャナ装置219に1画素当たり1バイトの白基準値を送ることで、該当するドットの白基準値を設定することができる。RAM303中の白基準値は、実スキャン動作を行なう直前にスキャナ・ヘッドに書き込まれる。
【0066】
1917のBD40H〜BD7FHは、蓄積時間256マイクロ秒時の白基準値をホスト部200からプリンタ/スキャナ装置219中のRAM303に送るためのコマンドであり、下位8ビットがヘッドのドット画素0〜127に2画素単位で順次対応している。このコマンドを発効した後に、続けてプリンタ/スキャナ装置219に1画素当たり1バイトの白基準値を送ることで、該当するドットの白基準値を設定することができる。RAM303中の白基準値は、実スキャン動作を行なう直前にスキャナ・ヘッドに書き込まれる。
【0067】
1918のBDF0Hは、プリンタ/スキャナ装置219中のRAM303に設定された白基準値及びオフセット値をスキャナ・ヘッドに書き込むためのコマンドである。1919のCD00H〜CD3FHは、蓄積時間512マイクロ秒時のオフセット値をプリンタ/スキャナ装置219中のRAM303からホスト部200に送るためのコマンドであり、下位8ビットがヘッドのドット画素0〜127に2画素単位で順次対応している。このコマンドを発効するとプリンタ/スキャナ装置219から1画素当たり1バイトのオフセット値が送られてくる。
【0068】
1920のCD40H〜CD7FHは、蓄積時間256マイクロ秒時のオフセット値をプリンタ/スキャナ装置219中のRAM303からホスト部200に送るためのコマンドであり、下位8ビットがヘッドのドット画素0〜127に2画素単位で順次対応している。このコマンドを発効するとプリンタ/スキャナ装置219から1画素当たり1バイトのオフセット値が送られてくる。
【0069】
1921のD000Hは、ヘッド交換位置へのキャリッジ移動を行なうためのコマンドであり、このコマンドを受信するとプリンタ/スキャナ装置219はヘッド・ユニットの初期化を行なってからホームポジションにキャリッジを移動させる。1922のD100Hは、ヘッド交換位置からホームポジションへキャリッジを戻すためのコマンドであり、このコマンドを受信するとプリンタ/スキャナ装置219はヘッド・ユニットの初期化を行なってからホームポジションにキャリッジを移動させる。
【0070】
1923の3000H〜3B40Hは、キャリッジ位置の左オフセット指定を行うためのコマンドであり、下位12ビットで左端からのキャリッジのオフセット位置情報を指定する。オフセット量の単位は1/360インチである。
【0071】
図22は、本実施の形態に係るプリンタ/スキャナ装置219における基本的なスキャナの動作手順について図22を用いて説明する。図22は、本実施の形態に係るプリンタ/スキャナ装置219における基本的なスキャナの動作手順について、ホスト部200の送信するコマンドを用いて説明するためのフローチャートである。
【0072】
スキャナ動作が開始されると、まず、ステップS2201でコマンド1901を送信してステータスポートの初期化を行なう。次にステップS2202でビット1806を参照して前記ステータスポートの初期化が終了しているか否かを終了するまで判断する。そして、前記ステータスポートの初期化が終了すると、次のステップS2203でビット2001及びビット2002を参照して、スキャナ・ヘッドがキャリッジに装着されているか否かを判断する。そして、スキャナ・ヘッドがキャリッジに装着されていない場合には、ステップS2204へ進んでコマンド1918を送信してヘッド交換を開始する。このコマンド1918によりキャリッジはヘッド交換位置に移動するので、使用者は次のステップS2205でスキャナ・ヘッドをキャリッジに装着する。スキャナ・ヘッドのキャリッジへの装着が終了すると、次のステップS2206でコマンド1919によりヘッドの交換終了を行なった後、前記ステップS2203へ戻る。
【0073】
一方、前記ステップS2203においてスキャナ・ヘッドがキャリッジに装着されている場合は、ステップS2207へ進んで、読み取り解像度360dpiが選択されたか否かを判断する。そして、読み取り解像度360dpiが選択された場合はステップS2208へ、読み取り解像度180dpiが選択された場合はステップS2209へそれぞれ進んで、各々ビット2101及びビット2102を適正値に設定した後、ステップS2210へ進み、コマンド1914により読み取り解像度の設定を行なう。
【0074】
次にステップS2211で使用者は白基準用紙をセットした後、コマンド1906を送って給紙を行なう。次いでステップS2212へ進んで白基準値検出動作を行なう。この白基準値検出動作が終了すると、次のステップS2213でコマンド1905により白基準用紙の排紙を行なう。次にステップS2214で使用者は読み取り原稿をセットした後、コマンド1906を送信して給紙を行なう。次にステップS2215でコマンド1903によりスキャナ読み取りを行なった後、本処理動作を終了する。
【0075】
以下の説明では説明を簡素化するために、カラム方向16ドットのスキャナ・ヘッドで、ライン方向36ドットの画像を1スキャンで走査する場合を例にとり説明する。
【0076】
図23は、本発明で解決すべき問題点の原因となる紙間の変動を、ライン方向から見て説明するための図である。同図において、縦軸は紙間を、横軸はライン方向のドット番号をそれぞれ示している。ライン方向の紙間が、うねりながら各ドットに対応する位置によって食い違っていることが分かる。ここで注意すべき点は、本発明においては白基準用紙による白基準値の検出時と、画像スキャン時の紙間の変動が同様の傾向を持っている場合を想定していることである。
【0077】
即ち、本発明の目的とするところは、図14で説明した紙面基準位置1402がどこに該当するかを求めるものではなく、系の傾向として紙面が浮いてしまっている状態1403及び1404が認められる場合、該状態を系のデフォルトの状態として検出するものである。
【0078】
図24及び図25は、図23で示した紙間変動の条件下において白基準用紙を用い、画像スキャンと同一の手段によって1ラスター全域の各位置に対して白基準値を検出した場合の各値を示している。図24は、実値を示した表であり、カラム方向16ドットのスキャナ・ヘッドでライン方向36ドットの検出を行なった結果である。これをグラフ化したものが図25である。
【0079】
図13で説明した理由から、カラム方向の値は中央付近が盛り上がった「カマボコ型」を呈しているが、これは白基準値をスキャナの各ドットごとに独立して持つ公知の手段で解決しており、本発明の問題とするところではない。一方、ライン方向については、紙間の変動に影響されて不規則に値が変化していることが分かる。
【0080】
図26は、スキャンの対象となるイメージの具体例である。
【0081】
図27は、図23〜図25で説明してきた状態において、系の平均的傾向から逸脱した白基準値で図26のイメージをスキャンした場合の様子を示し、前記白基準値を検出した位置と著しく紙間が異なっていた位置において、カラム方向に筋が出てしまっている様子を示している。
【0082】
図28は、本実施の形態に係るプリンタ/スキャナ装置291の特徴である白基準値検出動作(図22におけるステップS2212)の詳細を示すフローチャートである。
【0083】
白基準値検出動作が開始すると、まず、ステップS2801でコマンド1913、またはコマンド1914でオフセット(黒基準)値検出動作を遂行する。次にステップS2802でコマンド1919、またはコマンド1920でプリンタ/スキャナ装置291のRAM303からオフセット(黒基準)値を得る。該オフセット値がスキャナ・ヘッドに設定された状態で、ステップS2803でコマンド1903により読み取りを行なう。次にステップS2804でコマンド1902により印刷イメージのデータを得る。次にステップS2805でラスタ方向画素No”i”、ライン方向画素No”j”に従って、印刷イメージのデータをホスト部200に転送し、配列data[i]、[j]に格納する。
【0084】
ステップS2806〜ステップS2814は、各々のラスタ方向画素、即ちスキャナ・ヘッドのCCDセンサ画素に対して、ラスタ上で検出された白基準値の代表値として配列white[i]に格納する処理について示している。
【0085】
即ち、ステップS2806ではiを1にセットし、ステップS2807ではjを1にセットし、ステップS2808では[sum]を[0]にセットし、ステップS2809ではsumをdata[i][j]+sumにセットする。また、ステップS2810ではjが36より小さいか否かを判断し、jが36より小さくない場合は、ステップS2811でwhite[i]をsum/16にセットする。ステップS2812ではiが16より小さいか否かを判断し、iが16より小さくない場合は本処理動作を終了する。
【0086】
一方、前記ステップS2810においてjが36より小さい場合は、ステップS2813でjをj+1にセットした後、前記ステップS2808へ戻る。また、前記ステップS2812においてiが16より小さい場合は、ステップS2814でiをi+1にセットした後、前記ステップS2807へ戻る。
【0087】
(第2の実施の形態)
次に、本発明の第2の実施の形態を図29〜図32に基づき説明する。なお、本実施の形態に係るプリンタ/スキャナ装置の基本的な構成は、上述した第1の実施の形態と同一であるから、必要に応じて第1の実施の形態における図面を流用して説明する。
【0088】
図29は、図23〜図25で述べてきた状態において、紙間変動の悪影響がラスター先頭でヘッドに設定された白基準値の代表値で対応不可能になった場合における図26のイメージをスキャンした様子を示す図であり、前記白基準値を検出した位置と著しく紙間が異なった位置において、カラム方向に白筋や黒筋が出ている様子を示している。
【0089】
図30は、本実施の形態に係るプリンタ/スキャナ装置の特徴となる白基準値検出動作(図22のステップS2212)の制御手順を示すフローチャートである。ここでは、第1カラム目の白基準値を代表値として採用した場合について説明している。
【0090】
白基準値検出動作が開始すると、まず、ステップS3001でコマンド1913、またはコマンド1914でオフセット(黒基準)値検出動作を遂行する。次にステップS3002でコマンド1919、またはコマンド1920でプリンタ/スキャナ装置291のRAM303からオフセット(黒基準)値を得る。該オフセット値がスキャナ・ヘッドに設定された状態で、ステップS3003でコマンド1903により読み取りを行なう。次にステップS3004でコマンド1902により印刷イメージのデータを得る。次にステップS3005でラスタ方向M画素No”i”、ライン方向画素No”j”に従って、印刷イメージのデータをホスト部200に転送し、配列data[i]、[j]に格納する。
【0091】
ステップS3006〜ステップS3012は、各々のラスタ方向画素、即ちスキャナ・ヘッドのCCDセンサ画素に対して、ライン方向の各位置の画素に対して紙間の変化率を、1ライン目の白基準値の代表値で各位置の白基準値を割ることで算出し、henka[i]、[j]に格納する手段について示している。
【0092】
即ち、ステップS3006ではiとjを1にセットし、ステップS3007では係数データベースhenka[i]、[j]をdata[i]、[j]/data[i]、[1]にセットする。ステップS3008ではiが16より小さいか否かを判断し、iが16より小さくない場合は、ステップS3009で[i]を1にセットする。ステップS3010ではjが36より小さいか否かを判断し、jが36より小さくない場合は本処理動作を終了する。
【0093】
一方、前記ステップS3008においてiが16より小さい場合は、ステップS3011でiをi+1にセットした後、前記ステップS3007へ戻る。また、前記ステップS3010においてjが36より小さい場合は、ステップS3012でjをj+1にセットした後、前記ステップS3007へ戻る。
【0094】
図31は、図29で説明した係数データベースhenka[i]、[j]の具体例を示す図である。
【0095】
図32は、本実施の形態に係るプリンタ/スキャナ装置の画像データ読み取り動作(図22のステップS2215)の制御手順を示すフローチャートである。
【0096】
画像読み取り動作が開始すると、まず、ステップS3201で該当する解像度のオフセット(黒基準)値データをコマンド1916、またはコマンド1917で転送する。次にステップS3202で該当する解像度の白基準値データdata[i]、[1]をコマンド1909、またはコマンド1910で転送する。次にステップS3203でコマンド1903により読み取りを行なう。次にステップS3204でコマンド1902により印刷イメージのデータを得、ラスタ方向画素No”i”、ライン方向画素No”j”に従って、印刷イメージデータを配列image[i]、[j]に格納する。ステップS3205〜ステップS3211は、画像データ配列image[i]、[j]の各々のデータを係数データベースhenka[i]、[j]の対応する各画素で割ることで、画像スキャンデータに紙間の影響を織り込む処理について示している。
【0097】
即ち、ステップS3205ではiとjを1にセットし、ステップS3206ではimage[i]、[j]をimage[i]、[j]/henka[i]、[j]にセットする。ステップS3207ではiが16より小さいか否かを判断し、iが16より小さくない場合は、ステップS3208で[i]を1にセットする。ステップS3209ではjが36より小さいか否かを判断し、jが36より小さくない場合は本処理動作を終了する。
【0098】
一方、前記ステップS3207においてiが16より小さい場合は、ステップS3210でiをi+1にセットした後、前記ステップS3206へ戻る。また、前記ステップS3209においてjが36より小さい場合は、ステップS3211でjをj+1にセットした後、前記ステップS3206へ戻る。
【0099】
(第3の実施の形態)
次に、本発明の第3の実施の形態を図33〜図39に基づき説明する。なお、本実施の形態に係るプリンタ/スキャナ装置の基本的な構成は、上述した第1の実施の形態と同一であるから、必要に応じて第1の実施の形態における図面を流用して説明する。
【0100】
図33は、本発明において解決すべき問題点の原因となる、白基準用紙の汚れをライン方向から見て解説するための図である。同図において、縦軸は白基準用紙の汚れ具合を示しており、上方が白色、下方が黒色をそれぞれ示す。即ち、下方に向かうに従い汚れていることになる。また、横軸はライン方向のドットの番号を示している。図33においては、第6ドットの付近及び第27ドットの付近に搬送拍車の跡がある場合を想定している。
【0101】
図34及び図35は、図33で示した白基準用紙を用い、画像スキャンと同一の手段によって1ラスター全域の各位置に対して白基準値を検出した場合の各値を示している。図34は、実値を示した表であり、カラム方向16ドットのスキャナ・ヘッドでライン方向36ドットの検出を行なった結果である。これをグラフ化したものが図35である。
【0102】
図13で説明した理由から、カラム方向の値は中央付近が盛り上がった「カマボコ型」を呈しているが、これは白基準値をスキャナの各ドットごとに独立して持つ公知の手段で解決しており、本発明の問題とするところではない。一方、ライン方向については、汚れに該当する位置は、カラム方向に向かって帯状に値が侵蝕されていることが分かる。
【0103】
図36は、図23〜図25で述べてきた状態を引き起こす原因となる白基準値の具体例を示す図であり、カラム方向にゴムローラ跡及び搬送拍車跡が付着している様子を示している。
【0104】
図37は、スキャンの対象となるイメージの具体例を示す図であり、図38は、図34及び図35で示した白基準値のうち、第6ドットの付近で獲得された白基準値をカラム先頭で設定してしまった場合を示している。不正に白っぽくなってしまっていることが分かる。
【0105】
図39は、本実施の形態に係るプリンタ/スキャナ装置の特徴となる白基準値検出動作(図22のステップS2212)の制御手順を示すフローチャートである。
【0106】
白基準値検出動作が開始すると、まず、ステップS3901でコマンド1913、またはコマンド1914でオフセット(黒基準)値検出動作を遂行する。次にステップS3902でコマンド1919、またはコマンド1920でプリンタ/スキャナ装置291のRAM303からオフセット(黒基準)値を得る。該オフセット値がスキャナ・ヘッドに設定された状態で、ステップS3903でコマンド1903により読み取りを行なう。次にステップS3904でコマンド1902により印刷イメージのデータを得る。次にステップS3905でラスタ方向画素No”i”、ライン方向画素No”j”に従って、印刷イメージのデータをホスト部200に転送し、配列data[i]、[j]に格納する。
【0107】
ステップS3906〜ステップS3914は、各々のラスタ方向画素、即ちスキャナ・ヘッドのCCDセンサ画素に対して、ラスタ上で検出された最も大きい白基準値を対応させる処理について示している。
【0108】
即ち、ステップS3906ではiを1にセットし、ステップS3907ではwhite[i]をdata[i][1]にセットする。ステップS3908ではdata[i][j]がdata[i][j+1]より大きいか否かを判断し、data[i][j]がdata[i][j+1]より大きくない場合は、ステップS3909でwhite[i]をdata[i][j+1]にセットする。ステップS3910ではjが[36−1]より小さいか否かを判断し、jが[36−1]より小さくない場合は、ステップS3911で[i]を[1]にセットした後、ステップS3912でiが16より小さいか否かを判断する。そして、iが16より小さくない場合は、本処理動作を終了する。
【0109】
一方、前記ステップS3908においてdata[i][j]がdata[i][j+1]より大きい場合は、前記ステップS3909をスキップして前記ステップS3910へ進む。また、前記ステップS3910においてjが[36−1]より小さい場合は、ステップS3913で[j]を[j+1]にセットした後、前記ステップS3908へ戻る。また、前記ステップS3912においてiが16より小さい場合は、ステップS3914で[j]を[i+1]にセットした後、前記ステップS3907へ戻る。
【0110】
このような処理により、汚れが付着した部分に相当する小さい値は淘汰され、良好な白基準値のみを摘出して使用することが可能となる。
【0111】
(第4の実施の形態)
次に、本発明の第4の実施の形態を図40及び図41に基づき説明する。なお、本実施の形態に係るプリンタ/スキャナ装置の基本的な構成は、上述した第1の実施の形態と同一であるから、必要に応じて第1の実施の形態における図面を流用して説明する。
【0112】
図40及び図41は、本実施の形態に係るプリンタ/スキャナ装置の特徴となる白基準値検出動作(図22のステップS2212)の制御手順を示すフローチャートである。
【0113】
白基準値検出動作が開始すると、まず、ステップS4001でコマンド1913、またはコマンド1914でオフセット(黒基準)値検出動作を遂行する。次にステップS4002でコマンド1919、またはコマンド1920でプリンタ/スキャナ装置291のRAM303からオフセット(黒基準)値を得る。該オフセット値がスキャナ・ヘッドに設定された状態で、ステップS4003でコマンド1903により読み取りを行なう。次にステップS4004でコマンド1902により印刷イメージのデータを得る。次にステップS4005でラスタ方向画素No”i”、ライン方向画素No”j”に従って、印刷イメージのデータをホスト部200に転送し、配列data[i]、[j]に格納する。
【0114】
ステップS4006〜ステップS4014は、各々のラスタ方向画素、即ちスキャナ・ヘッドのCCDセンサ画素に対して、ラスタ上で検出された白基準値の平均値を求める処理について示している。
【0115】
即ち、ステップS4006ではiを1にセットし、ステップS4007ではjを1にセットし、ステップS4008ではsumを0にセットし、ステップS4009ではsumをdata[i][j]+sumにセットする。また、ステップS4010ではjが36より小さいか否かを判断し、jが36より小さくない場合は、ステップS4011でaverage[i]をsum/16にセットする。ステップS4012ではiが16より小さいか否かを判断し、iが16より小さくない場合は後述する図41の処理へ進む。
【0116】
一方、前記ステップS4010においてjが36より小さい場合は、ステップS4013でjをj+1にセットした後、前記ステップS4008へ戻る。また、前記2においてiが16より小さい場合は、ステップS4014でiをi+1にセットした後、前記ステップS4007へ戻る。
【0117】
図41のステップS4101〜ステップS4111は、平均的白基準値に最も近い白基準値を検出した位置を求め、その位置において統計化処理を行ない、白基準値の代表値を求める処理について示している。
【0118】
即ち、まず、ステップS4101でiを1にセットした後、ステップS4102でjとposition[i]を1にセットする。次にステップS4103でsub1をaverage[i]−data[i][1]にセットした後、ステップS4104でjをj+1にセットする。次にステップS4105でsub2をaverage[i]−data[i][1]にセットした後、ステップS4106でsub1がsub2より小さいか否かを判断する。そして、sub1がsub2より小さくない場合は、ステップS4107でsub1、sub2、position[i]をjにセットする。次にステップS4108でjが36より小さいか否かを判断し、jが36より小さくない場合は、ステップS4109でposition[i]に移動させ、統計化処理により白基準値の代表値white[i]を求める。その後、ステップS4110でiが16より小さいか否かを判断し、iが16より小さくない場合は本処理動作を終了する。
【0119】
一方、前記ステップS4106においてsub1がsub2より小さい場合は、前記ステップS4107をスキップして前記ステップS4108へ進む。また、前記ステップS4108においてjが36より小さい場合は、前記ステップS4104へ戻る。また、ステップS4110においてiが16より小さい場合は、ステップS4111でiをi+1にセットした後、前記ステップS4103へ戻る。
【0120】
前記統計化処理については、本発明の特徴とするところではないが、代表的な手段としては、1つの位置で数回の白基準値の検出を行なう手段が挙げられる。この白基準値の統計化処理は、ノイズ等の影響を抑えるために行なうものであるが、処理時間を非常に多く要求されるという問題があり、本発明においては、予め系の平均的白基準値に最も近い白基準値を検出できる位置を特定した上で統計化処理を行なうことで、該統計化処理の実行回数をライン方向の特定の位置でのみ行なうだけでライン全体で最も適切な白基準値を得ることができ、処理の高速化と白基準値の適性化を両立させることができる。
【0121】
【発明の効果】
以上詳述したように本発明の請求項1に記載のプリンタ/スキャナ装置によれば、A/D変換用のレファレンス値(白基準値)の検出手段として、画像スキャンと同一の手段によって1ラスター全域の各位置に対して白基準値を検出し、該白基準値の平均値を算出し、該平均値に最も近い白基準値を検出した紙上の位置を求め、該位置において白基準値の統計化処理を行なって白基準値の代表値を求め、画像スキャン時にはラスターの先頭で前記代表値を白基準値としてヘッドに設定するようにしたから、安価で小型なものでありながら、紙間の影響を回避して白基準値を検出することが可能となり、画質の向上を図ることができ、しかも、紙間変動の検出手段として統計化処理ではなく、画像スキャンと同一の手段を使用することにより、前記画質の向上を処理速度の低下を招くことなく実現することが可能となるという効果を奏する
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を具備したパソコンの構成を示す外観斜視図である。
【図2】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を具備したパソコンの内部構成を示すブロック図である。
【図3】本発明の第1の実施の形態に係るプリンタ/スキャナ装置の内部構成を示すブロック図である。
【図4】本発明の第1の実施の形態に係るプリンタ/スキャナ装置におけるプリンタ/スキャナコントローラの内部構成を示すブロック図である。
【図5】本発明の第1の実施の形態に係るプリンタ/スキャナ装置におけるI/Oデータレジスタのマップ図である。
【図6】本発明の第1の実施の形態に係るプリンタ/スキャナ装置におけるRAM上の記録データバッファと受信バッファのアドレス領域図である。
【図7】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジの外観斜視図である。
【図8】本発明の第1の実施の形態に係るプリンタ/スキャナ装置の外観斜視図である。
【図9】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジの内部構成を示すブロック図である。
【図10】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジにおけるスキャナコントローラ内のI/Oポートレジスタのマップ図である。
【図11】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジにおける光学系部品及び読み取り反射光の経路を示す外観斜視図である。
【図12】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジにおける光学系部品及び読み取り反射光の経路を示す縦断側面図である。
【図13】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジにおける読み取り反射光の経路を示す詳細図である。
【図14】理想的な光学系の構成と本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジにおける光学系の構成との比較図である。
【図15】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を構成するスキャナヘッドカートリッジを用いて画像読み取りを実行した場合のヘッド動作を示す図である。
【図16】本発明の第1の実施の形態に係るプリンタ/スキャナ装置の蓄積時間とキャリッジ速度及びライン方向の読み取り解像度の関係を示す図である。
【図17】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を具備したパソコンのホスト部とプリンタ部の情報のやり取りに使用される専用ステータスポートを示す図である。
【図18】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を具備したパソコンのホスト部とプリンタ部の情報のやり取りに使用される専用ステータスポートを説明するための図である。
【図19】本発明の第1の実施の形態に係るプリンタ/スキャナ装置における制御コマンドの一覧表である。
【図20】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を具備したパソコンのホスト部とプリンタ部の情報のやり取りに使用される第2の専用ステータスポートを説明するための図である。
【図21】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を具備したパソコンのホスト部とプリンタ部の情報のやり取りに使用される第3の専用ステータスポートを説明するための図である。
【図22】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を具備したパソコンの基本的なスキャナの動作手順を示すフローチャートである。
【図23】本発明の第1の実施の形態に係るプリンタ/スキャナ装置における紙間の変動をライン方向から見た状態で示す図である。
【図24】本発明の第1の実施の形態に係るプリンタ/スキャナ装置における紙間の変動と白基準値の一例を示す表である。
【図25】本発明の第1の実施の形態に係るプリンタ/スキャナ装置における紙間の変動と白基準値の一例を示すグラフである。
【図26】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を説明するためのスキャン対象となるイメージの具体例を示す中間調の図である。
【図27】本発明の第1の実施の形態に係るプリンタ/スキャナ装置を説明するための不良なスキャン画像の具体例を示す中間調の図である。
【図28】本発明の第1の実施の形態に係るプリンタ/スキャナ装置の特徴である白基準値検出動作の制御手順を示すフローチャートである。
【図29】本発明の第2の実施の形態に係るプリンタ/スキャナ装置を説明するための不良なスキャン画像の具体例を示す中間調の図である。
【図30】本発明の第2の実施の形態に係るプリンタ/スキャナ装置の特徴である白基準値検出動作の制御手順を示すフローチャートである。
【図31】本発明の第2の実施の形態に係るプリンタ/スキャナ装置の特徴である紙間変動情報を格納した係数データベースの具体例を示す図である。
【図32】本発明の第2の実施の形態に係るプリンタ/スキャナ装置の特徴である画像データ読み取り処理動作の制御手順を示すフローチャートである。
【図33】本発明の第3の実施の形態に係るプリンタ/スキャナ装置を説明するための白基準用紙の汚れをライン方向から見た状態で示す図である。
【図34】本発明の第3の実施の形態に係るプリンタ/スキャナ装置を説明するための白基準用紙の汚れと白基準値の一例を示す表である。
【図35】本発明の第3の実施の形態に係るプリンタ/スキャナ装置を説明するための白基準用紙の汚れと白基準値の一例を示すグラフである。
【図36】本発明の第3の実施の形態に係るプリンタ/スキャナ装置を説明するための白基準用紙の具体例を示す中間調の図である。
【図37】本発明の第3の実施の形態に係るプリンタ/スキャナ装置を説明するためのスキャン対象となるイメージの具体例を示す中間調の図である。
【図38】本発明の第3の実施の形態に係るプリンタ/スキャナ装置を説明するための不良なスキャン画像の具体例を示す中間調の図である。
【図39】本発明の第3の実施の形態に係るプリンタ/スキャナ装置の特徴である白基準値検出動作の制御手順を示すフローチャートである。
【図40】本発明の第4の実施の形態に係るプリンタ/スキャナ装置の特徴である白基準値検出動作の制御手順を示すフローチャートである。
【図41】本発明の第4の実施の形態に係るプリンタ/スキャナ装置の特徴である白基準値検出動作の制御手順を示すフローチャートである。
【符号の説明】
100 パソコン本体
101 蓋体
102 キーボード
103 プリンタ
104 表示装置
200 ホスト部
201 CPU(中央演算処理装置)
202 BIOS ROM(基本入出力システム・リード・オンリー・メモリ)
203 FDD(フロッピーディスク)
204 HDD(ハードディスク)
205 FDC(フロッピーディスク・コントローラ)
206 HDC(ハードディスク・コントローラ)
207 MAIN DRAM(メイン・ダイナミック・ランダム・アクセス・メモリ)
208 VGAC(ビデオグラフィクスアレイ・コントローラ)
209 LCD(液晶表示装置)
210 VRAM(ビデオ・ランダム・アクセス・メモリ)
211 キーボード
212 KBC(キーボード・コントローラ)
213 FPU(浮動小数点演算ユニット)
214 RTC(リアルタイムクロック)
215 DMAC(ダイレクト・メモリ・アクセス・コントローラ)
216 IRQC(割り込み要求コントローラ)
217 SIO(直列入出力インターフェース)
218 PORT(ポート)
219 プリンタ/スキャナ装置
220 POWER SUPPLY(電力供給部)
221 ACアダプタ
222 バッテリー
223 POWER MANAGEMENT IC(電力管理集積回路)
301 CPU(中央演算処理装置)
302 ROM(リード・オンリー・メモリ)
303 RAM(ランダム・アクセス・メモリ)
304 プリンタ/スキャナ・ヘッド
305 MOTOR DRIVER(モータ・ドライバ)
306 PRINTER/SCANNER CONTROLLER(プリンタ/スキャナ・コントローラ)
307 サーミスタ
401 I/O DATA REGISTER(I/Oデータ・レジスタ)
402 RECIEVE BUFFER CONTROLLER(レシーブ・バッファ・コントローラ)
403 PRINTER/SCANNER BUFFER CONTROLLER(プリンタ/スキャナ・バッファ・コントローラ)
404 MEMORY CONTROLLER(メモリ・コントローラ)
405 PRINTER/SCANNER SEQUENCE CONTROLLER(プリンタ/スキャナ・シーケンス・コントローラ)
406 HOST I/F(ホスト・インターフェース)
700 スキャナ・ヘッド・カートリッジ
701 コネクタ
702 接点部
801 キャリッジ
802 印字ヘッド・カートリッジ
803 コネクタ
804 接点部
805 ヘッド・ガイド
806 フレキシブル・ケーブル
901 読み取り用原稿
902 原稿証明用光源
903 ミラー
904 CCDセンサ
905 アンプ(AMP)
906 スキャナ・コントローラIC(集積回路)
906a A/D変換器
907 SRAM(スタティック・ランダム・アクセス・メモリ)
1201 ケース
1202 LED(発光ダイオード:原稿証明用光源)
1203 ロッド・レンズ
1204 フィールド・レンズ
1205 ミラー
1206 アパーチャ
1207 CCDセンサ
1301 光の経路
1302 スキャン対象ライン
1401 ペンタ・プリズム
1402 紙面基準位置
1403 紙面が浮いてしまった場合の位置
1404 紙面が浮いてしまった場合の位置
1405 反射角
1501 スキャナ・ヘッドの軌跡
1701 第1のステータ・スポート
1702 第2のステータ・スポート
1703 第3のステータ・スポート

Claims (1)

  1. 記録媒体に記録を行なうプリンタのインクヘッドカートリッジを移動させるキャリッジ上にスキャナヘッドカートリッジを載せることによって前記プリンタを原稿の読取装置として機能させることが可能なプリンタ/スキャナ装置において、A/D変換用のレファレンス値(白基準値)の検出手段として、画像スキャンと同一の手段によって1ラスター全域の各位置に対して白基準値を検出し、該検出された各白基準値の平均値を算出し、該算出された平均値に最も近い白基準値を検出した紙上の位置を求め、該求めた位置において白基準値の統計化検出処理を行なって白基準値の代表値を求め、画像スキャン時にはラスターの先頭で前記代表値を白基準値としてヘッドに設定することを特徴とするプリンタ/スキャナ装置。
JP25261197A 1997-09-03 1997-09-03 プリンタ/スキャナ装置 Expired - Fee Related JP3774550B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25261197A JP3774550B2 (ja) 1997-09-03 1997-09-03 プリンタ/スキャナ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25261197A JP3774550B2 (ja) 1997-09-03 1997-09-03 プリンタ/スキャナ装置

Publications (2)

Publication Number Publication Date
JPH1188674A JPH1188674A (ja) 1999-03-30
JP3774550B2 true JP3774550B2 (ja) 2006-05-17

Family

ID=17239787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25261197A Expired - Fee Related JP3774550B2 (ja) 1997-09-03 1997-09-03 プリンタ/スキャナ装置

Country Status (1)

Country Link
JP (1) JP3774550B2 (ja)

Also Published As

Publication number Publication date
JPH1188674A (ja) 1999-03-30

Similar Documents

Publication Publication Date Title
EP0641114B1 (en) Low cost scanner for existing ink jet printer
US5767988A (en) Method and apparatus for converting an ink-jet printer into a scanner and copier
US8582185B2 (en) Image reader and correction process for read image
US4897735A (en) Image processing apparatus for multi-media copying machine
US6648226B2 (en) Image reading apparatus and method
US5987186A (en) Image processing apparatus and system having detachably mounted read cartridge
JP3774550B2 (ja) プリンタ/スキャナ装置
KR20050072606A (ko) 토너 소모량 산출 장치 및 그 방법
JP3535708B2 (ja) プリンタ/スキャナ装置
EP0744860B1 (en) Image reading apparatus and image recording apparatus
JPH11215327A (ja) 読取方法及び読取システム
JPH06311365A (ja) 画像入出力装置
JPS61199369A (ja) 簡易画像複写装置
JPH09163131A (ja) スキャナ装置
JPS59228462A (ja) 読取り記録兼用装置
JPH09305740A (ja) スキャナ装置およびスキャナ装置の制御装置およびスキャナ装置のスキャン方法およびスキャナ装置のスキャン制御方法および記憶媒体
JPS59223072A (ja) 記録制御方式
JPH09305739A (ja) スキャナ装置およびスキャナ装置の制御装置およびスキャナ装置のスキャン方法およびスキャナ装置のスキャン制御方法および記憶媒体
JPH0641419Y2 (ja) 手動走査型電子機器
JPH09163077A (ja) スキャナ装置
JPS62180656A (ja) 電子黒板装置
JPH09233271A (ja) スキャナヘッドカートリッジ及びスキャナヘッドカートリッジの光学調整法
JP2005311952A (ja) 画像読取装置
JPS59230361A (ja) 印字装置
JPH09214711A (ja) データ処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20021122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050621

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050816

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060220

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100224

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100224

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110224

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120224

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130224

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees