(57)【要約】【課題】  データバスに対する負荷を少なくすることができる画像形成装置、画像読取装置、及びそれらの制御方法、並びにプログラムを提供する。【解決手段】  読み取り部１１２と画像処理部１１１とを有する画像形成装置１００であって、取得された画像形成装置１００の機種ＩＤをクロック制御テーブル６００がサポートしている場合、クロック制御テーブル６００に従って読み取り部１１２のＣＣＤ制御クロック及びモータ制御クロックのクロック周波数を決定し、サポートしていない場合、クロック制御テーブル６００のデフォルト設定に読み取り部１１２のＣＣＤ制御クロック及びモータ制御クロックのクロック周波数を決定する。クロック制御テーブル６００のデフォルト設定は、クロック制御テーブル６００のＣＤ制御クロック及びモータ制御クロックのクロック周波数の最小値である。【選択図】  図７
2018033087.tif 000002
【特許請求の範囲】
【請求項１】
原稿の画像を読み取る読み取りジョブを実行する読み取り手段と、前記読み取り手段で読み取られた画像の画像処理を行う画像処理手段とを有する画像形成装置であって、
前記画像形成装置の識別情報を取得する取得手段と、
予め登録された複数の識別情報毎に、前記読み取り手段のハードウェアを制御するためのクロック周波数が設定される第１のテーブルに、前記取得された識別情報がある場合、前記第１のテーブルに従い、前記クロック周波数を決定し、前記取得された識別情報が前記第１のテーブルにない場合、前記第１のテーブルのデフォルト設定に前記クロック周波数を決定する決定手段とを備え、
前記第１のテーブルのデフォルト設定は、前記第１のテーブルのクロック周波数の最小値であることを特徴とする画像形成装置。
【請求項２】
前記第１のテーブルを保持する保持手段を備えることを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記識別情報は、機種ＩＤであることを特徴とする請求項１又は２記載の画像形成装置。
【請求項４】
前記読み取りジョブにおける読み取り条件を取得する他の取得手段と、
識別情報及び読み取り条件の予め登録された複数の組み合わせ毎に前記読み取り手段の目標とする読み取り速度が設定される第２のテーブルに、前記取得手段、及び前記他の取得手段により取得された識別情報及び読み取り条件の組み合わせがある場合、前記第２のテーブルに従い、前記目標とする読み取り速度を決定する決定手段と、
前記決定手段により決定された目標とする読取速度に応じて、前記読み取り手段に対する画像読み取り指示の発行間隔を制御する制御手段とをさらに備えることを特徴とする請求項１乃至３のいずれか１項に記載の画像形成装置。
【請求項５】
前記第２のテーブルにおける目標とする読み取り速度は、前記第１のテーブルにおける同一の識別情報に対して設定されたクロック周波数に応じて決定される読み取り速度以下に設定されることを特徴とする請求項４記載の画像形成装置。
【請求項６】
前記決定手段は、前記第２のテーブルに前記取得された組み合せがない場合、前記第２のテーブルのデフォルト設定に前記目標とする読み取り速度を決定することを特徴とする請求項４又は５記載の画像形成装置。
【請求項７】
前記第２のテーブルのデフォルト設定は、前記第２のテーブルの目標とする読み取り速度の最小値であることを特徴とする請求項６記載の画像形成装置。
【請求項８】
前記第２のテーブルを保持する保持手段を備えることを特徴とする請求項４乃至７のいずれか１項に記載の画像形成装置。
【請求項９】
前記識別情報は、機種ＩＤであることを特徴とする請求項４乃至８のいずれか１項に記載の画像形成装置。
【請求項１０】
前記読み取り条件は、前記読み取りジョブを実行する際の前記読み取り手段による読み取り解像度、及び前記読み取り手段が前記原稿の画像をカラー画像として読み取るか、モノクロ画像として読み取るかの設定であることを特徴とする請求項４乃至８のいずれか１項に記載の画像形成装置。
【請求項１１】
原稿の画像を読み取る画像読取装置であって、
画像処理を行う画像形成装置に前記読み取られた画像を送信する送信手段と、
前記画像形成装置の識別情報を取得する取得手段と、
予め登録された複数の識別情報毎に、前記画像読取装置のハードウェアを制御するためのクロック周波数が設定される第１のテーブルに、前記取得された識別情報がある場合、前記第１のテーブルに従い、前記クロック周波数を決定し、前記取得された識別情報が前記第１のテーブルにない場合、前記第１のテーブルのデフォルト設定に前記クロック周波数を決定する決定手段とを備え、
前記第１のテーブルのデフォルト設定は、前記第１のテーブルのクロック周波数の最小値であることを特徴とする画像読取装置。
【請求項１２】
原稿の画像を読み取る画像読取装置と前記読み取られた画像の画像処理を行う画像形成装置の制御方法であって、
前記画像形成装置の識別情報を取得する取得ステップと、
予め登録された複数の識別情報毎に、前記画像読取装置のハードウェアを制御するためのクロック周波数が設定される第１のテーブルに、前記取得された識別情報がある場合、前記第１のテーブルに従い、前記クロック周波数を決定し、前記取得された識別情報が前記第１のテーブルにない場合、前記第１のテーブルのデフォルト設定に前記クロック周波数を決定する決定ステップとを有し、
前記第１のテーブルのデフォルト設定は、前記第１のテーブルのクロック周波数の最小値であることを特徴とする制御方法。
【請求項１３】
請求項１１記載の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、画像読取装置、及びそれらの制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来より、画像形成装置の制御を行う制御部は、制御用ソフトウェアを、画像処理を行うハードウェアの能力に合わせて動作させる。例えば、メモリ資源や画像処理能力などに従い、スキャン、印刷等の機能を効率よく動作させるために、印刷速度に合わせてスキャン速度を制御用ソフトウェアで調整するような技術が知られている（特許文献１参照）。
【０００３】
また、画像形成装置は利用方法の多様化が進み、画像送信、印刷、スキャン等の機能及び速度を、ユーザの好み、使用環境に応じて可変としたモデルとして生産、販売されるようになった。中でもスキャン機能は、ペーパーレス化の進行とともに、紙媒体文書の電子化に広く利用されており、読み取り解像度やスキャン速度等に対するユーザの要望が多岐にわたる。そのような要望に対処するため、読み取り解像度やスキャン速度の異なる、複数種別のスキャナと接続可能な画像形成装置が増えている。また、画像形成装置と接続するスキャナ側において、複数の画像形成装置毎にその画像処理能力に応じた読み取り解像度とスキャン速度の設定（モード）を予め準備しておくという技術も一般的に知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６ー５４４１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１におけるスキャン速度の調整は、画像読み取り用ＣＣＤを制御する制御クロックや原稿搬送用のステッピングモータのＰＷＭ制御クロックの周波数は維持し、読み取り実行指示の間隔だけを変更することで行われる。このため、これらの制御クロックの速度が画像形成装置の画像処理能力や印刷速度に比べて高速である場合、画像形成装置内の画像処理部と接続するデータバスに流れる瞬間的なデータ量は高速なまま流れることになる。この結果、データバスにかける負担が大きくなってしまうという課題があった。
【０００６】
一方、これらの制御クロックは、スキャナ側で準備される各モードに応じた異なる周波数に調整される。しかしながら、ＰＬＬ（ＰｈａｓｅＬｏｃｋＬｏｏｐ）によってこれらの制御クロックは生成されるため、無段階にこれらの制御クロックの周波数を調整することはできない。すなわち、スキャナ側で実現できるモード、具体的には、読み取り解像度及びスキャン速度の組み合わせには制限がある。
【０００７】
したがって、スキャナ側で予め準備しているモードに、そのスキャナが接続する画像形成装置に対応したものがない場合、データバスに対する負荷を少なくし、かつ、最適なスキャン速度で画像読み取りを実施することは困難あるという課題もある。
【０００８】
本発明の目的は、データバスに対する負荷を少なくすることができる画像形成装置、画像読取装置、及びそれらの制御方法、並びにプログラムを提供することである。
【課題を解決するための手段】
【０００９】
本発明の画像形成装置は、原稿の画像を読み取る読み取りジョブを実行する読み取り手段と、前記読み取り手段で読み取られた画像の画像処理を行う画像処理手段とを有する画像形成装置であって、前記画像形成装置の識別情報を取得する取得手段と、予め登録された複数の識別情報毎に、前記読み取り手段のハードウェアを制御するためのクロック周波数が設定される第１のテーブルに、前記取得された識別情報がある場合、前記第１のテーブルに従い、前記クロック周波数を決定し、前記取得された識別情報が前記第１のテーブルにない場合、前記第１のテーブルのデフォルト設定に前記クロック周波数を決定する決定手段とを備え、前記第１のテーブルのデフォルト設定は、前記第１のテーブルのクロック周波数の最小値であることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、データバスに対する負荷を少なくすることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明における画像形成装置の制御部のハードウェア構成を示すブロック図である。
【図２】図１における読み取り部のスキャナ部のハードウェア構成を示す図である。
【図３】読み取り部のＤＦ部の内部構造を示す側断面図である。
【図４】読み取り部からの画像読出しの制御の概念図である。
【図５】読み取り部を制御するための制御部のブロック図である。
【図６】第１の実施形態に係る読み取り部の各種クロックを制御するためのクロック制御テーブルである。
【図７】第１の実施形態に係るクロック制御処理の手順を示すフローチャートである。
【図８】第１の実施形態に係る読み取り開始指示発行処理の手順を示すフローチャートである。
【図９】第２の実施形態に係る読み取り開始指示発行処理の手順を示すフローチャートである。
【図１０】第２の実施形態に係る遅延時間算出処理の手順を示すフローチャートである。
【図１１】第２の実施形態に係る読み取り部のスキャン速度を制御するためのクロック制御テーブルである。
【図１２】第２の実施形態に係るスキャン速度制御のための遅延時間を表すタイミングチャートである。
【発明を実施するための形態】
【００１２】
（第１の実施形態）
以下、本発明の第１の実施形態について、図面を用いて説明する。
【００１３】
図１は、本発明の第１の実施形態に係る画像形成装置の制御部のハードウェア構成を示すブロック図である。
【００１４】
図１において、画像形成装置１００は、その内部に画像形成装置１００全体を制御する制御部１１５、制御部１１５と接続する、操作部１１４，読み取り部１１２（画像読取装置）、及びプリンタ部１１３を備える。
【００１５】
制御部１１５は、その各構成部がデータバスとして機能する、システムバス１０１及び画像バス１１０に接続される。ここで、画像バス１１０は、ＰＣＩバスやＩＥＥＥ１３９４、ＰＣＩＥｘなどの汎用バスで構成され、システムバス１０１と共に画像データを高速で転送する。
【００１６】
以下、まずシステムバス１０１上に配置される各構成部について説明する。
【００１７】
ＲＯＭ１０２は、システムのブートプログラムが格納されている。また後述の読み取り部制御アプリケーションやジョブ制御アプリケーションはＲＯＭ１０２または、蓄積メモリ１０５に記憶されており、ＣＰＵ１０３で実行される。
【００１８】
ＲＡＭ１０４は、ＣＰＵ１０３がソフトウェアを実行するためのシステムワークメモリエリアであり、画像データを処理する際に一時記憶するための画像メモリでもある。
【００１９】
蓄積メモリ１０５は、内部ストレージとして使用され、読み取り部１１２で読み取ったデータや、画像データ、システムソフトウェアなどが記憶される。この蓄積メモリ１０５は、ＨＤＤ（ハードディスク）や、ＳＳＤ（ＳｏｌｉｄＳｔａｔｅＤｒｉｖｅ）から構成される。
【００２０】
ＬＡＮ（ローカルエリアネットワーク）Ｉ／Ｆ部１０６は、外部のＬＡＮと接続するためのＩ／Ｆ部でありＬＡＮに接続された各機器との情報の入出力を行う。
【００２１】
ＩＯ制御Ｂ部１０８は、ＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）である操作部１１４とのインターフェース部で、操作部１１４が搭載する表示装置に表示する画像データを操作部１１４に対して出力する。操作部１１４はキーパッド装置も搭載しており、このキーパッド装置を用いてユーザが情報を入力した場合、その情報をＩＯ制御Ｂ部１０８はＣＰＵ１０３に伝える。また、ＩＯ制御Ｂ部１０８は、操作部１１４をＣＰＵ１０３が制御するためのＩ／Ｆ部である。本実施形態において、操作部１１４は、ＬＣＤタッチパネル等から構成され、ＩＯ制御Ｂ部１０８から出力される、ＶＧＡ信号を解釈して表示する。
【００２２】
次に、画像バス１１０上に配置される各構成部について説明する。
【００２３】
ＩＯ制御Ａ部１０９は、画像バス１１０と接続し、画像バス１１０からの画像データをシステムバス１０１のデータ構造を変換するバスブリッジである。
【００２４】
画像処理部１１１（画像処理手段）は、画像入出力デバイスである読み取り部１１２やプリンタ部１１３と接続し、画像データの同期系／非同期系の変換を行う。この画像処理部１１１は、入力及び出力画像データに対し解像度変換、圧縮伸張、２値多値変換などの画像処理を行う。
【００２５】
読み取り部１１２は、図２で詳述するスキャナ部１１２ａと、図３で詳述するＤＦ（ＤｏｃｕｍｅｎｔＦｅｅｄｅｒ）部１１２ｂから構成される。
【００２６】
図２は、スキャナ部１１２ａのハードウェア構成を示す図である。
【００２７】
図２において、枠体２０１にはセンサユニット２０２を副走査方向へ（矢印Ａの方向）移動する基準となる基準軸２０３が設けられている。そして、フラットベット（ＦＢ）読み取り用ステッピングモータ２０５（以下、ステッピングモータ）からの駆動力は、ギア群２０６を介してベルト２０４に伝えられる。そして、ベルト２０４によりセンサユニット２０２を基準軸２０３に沿って動作させる。
【００２８】
なお、枠体２０１には原稿を置くための原稿台ガラス２０７とＤＦスキャン用のＤＦ読み取り窓２０８が備えられる。ＤＦ読み取り窓２０８は原稿台ガラス２０７同様、光源であるＬＥＤの光を透過する素材が使用されている。
【００２９】
センサユニット２０２は、原稿台ガラス２０７とＤＦ読み取り窓２０８の領域内を自由に移動することができる。具体的には、ステッピングモータ２０５への駆動用入力ＰＷＭパルス数を制御することによって、所定量を移動させることが可能である。
【００３０】
制御部１１５からスキャン命令を受けた読み取り部１１２はステッピングモータ２０５を駆動し、ギア群２０６を介してベルト２０４を駆動する。これによりセンサユニット２０２が基準軸２０３に沿って副走査作方向へ移動して、原稿台ガラス２０７上に置かれた原稿を読み取る。スキャナ部１１２ａでの副走査間引き処理は、ステッピングモータ２０５へ入力する駆動パルスの周波数を倍として実現する。
【００３１】
図３は、ＤＦ部１１２ｂの内部構造を示す側断面図である。
【００３２】
図３において、ＤＦ部１１２ｂには読み取り原稿を積載するための原稿トレイ３００があり、原稿トレイ３００上に原稿有無を検知するためのドキュメントセンサ３０２と２つの原稿ガイド３０１、原稿サイズ検知センサ３１２が設けられている。
【００３３】
原稿ガイド３０１は原稿縦方向（原稿の搬送方向と垂直）に２つ並んで設けられ、原稿トレイ３００上に積載された原稿はピックアップローラ３０４、搬送ローラ３０６、及び排紙ローラ３０３の３つのローラにより搬送される。
【００３４】
ピックアップローラ３０４は原稿トレイ３００に積載された原稿をＤＦ部１１２ｂ内部の原稿搬送路内へ搬送するためのローラである。
【００３５】
搬送ローラ３０６はピックアップローラ３０４によりＤＦ部１１２ｂ内部の原稿搬送路に搬送されてきた原稿をＤＦ読み取り窓２０８の上部に搬送し、排紙ローラ３０３は搬送ローラ３０６により搬送されてきた原稿を排紙トレイ３１０まで搬送する。
【００３６】
また、ピックアップローラ３０４により搬送された原稿は、原稿通過検知センサ３０５により検出される。この検出された時間をもとに、１枚目の原稿の通過が終了したか否かが判定される。
【００３７】
また、図示は省略したが、搬送ローラ３０６、ピックアップローラ３０４、排紙ローラ３０３は全てステッピングモータにより駆動される。ＤＦ部１１２ｂでの副走査間引き処理は、搬送ローラ３０６、ピックアップローラ３０４、及び排紙ローラ３０３へ入力する駆動パルスの周波数を倍とすることで実現される。
【００３８】
ＤＦ部１１２ｂにより搬送された原稿は、ＤＦ読み取り窓２０８を通してその下にあるセンサユニット２０２に備えられたＣＩＳ３０８により読み取られる。このセンサユニット２０２は前述のとおり、副走査方向に自由に移動可能であり、搬送ローラ３０６から排紙ローラ３０３に向かって搬送されてくる原稿の搬送方向と同一方向にも移動可能である。
【００３９】
なお、ＤＦ読み取り窓２０８には副走査方向にある程度の長さがあり、その長さの範囲内では、任意の位置にＣＩＳ３０８を移動して、その移動位置で原稿読み取りを行うことができる。
【００４０】
ＣＩＳ３０８は、ＣＣＤからなる光電変換素子、その各素子の画像を蓄積するためのＦＩＦＯ、及びＦＩＦＯ、ＣＣＤを制御するための制御信号生成部を有する。ＣＩＳ３０８が有するＣＣＤは一般的に、複数の光電変換素子を一列に並べた形で実現される。ＣＩＳ３０８からの画像読み出しは、図４において後述する、各素子から画像を読みだす読み出しクロック４０１（ＣＣＤ制御クロック）と、読み出した画像を制御部１１５へ転送するかどうかを制御する転送イネーブルクロック４０２により制御する。
【００４１】
図４は、読み取り部１１２からの画像読出しの制御の概念図である。
【００４２】
図４（ａ）は、ＣＩＳ３０８からの画像読出しを制御するクロックタイミングチャートであり、図４（ｂ）は、読み取り部１１２に対する制御部１１５の読み取り制御のシーケンス図である。
【００４３】
ＣＩＳ３０８を構成する各光電変換素子のデータ読み出しは読み出しクロック４０１により制御される。読み出しクロック４０１の立ち上がり時に各光電変換素子のデータがＣＩＳ３０８上から読み出される。読みだしたデータに対して、転送イネーブルクロック４０２が入力され、転送イネーブルクロック４０２の立ち上がりに同期して、各画素のデータがＣＩＳ３０８のＦＩＦＯに取りこまれる。このＦＩＦＯに取り込まれたデータは適宜、制御部１１５に転送される。
【００４４】
ここでは、簡単のために、転送イネーブルクロック４０２を読出しクロック４０１に同期させてピクセル数を間引かずすべて入力する場合（すなわち、読み取り部１１２における最大読み取り解像度で画像読出しを行う場合）についてのみ説明する。しかしながら、これに限るものではなく、入力するピクセル数を間引くことにより、より低い読み取り解像度での画像読出しを行うこともできる。このように読み取り部１１２においてより低い読み取り解像度が設定された場合、以下説明する場合より短い時間でＦＩＦＯからのＣＣＤの１ライン分の画像の読み出しが可能となり、スキャン速度（読取速度）が向上する。
【００４５】
水平同期信号４０４は、ＣＩＳ３０８を構成するＣＣＤ１ライン分の画像の取り込み開始を制御するクロック信号（モータ制御クロック）である。この水平同期信号４０４に同期して、読み取り部１１２上の各ローラ、すなわちピックアップローラ３０４、搬送ローラ３０６、及び排紙ローラ３０３を駆動するＰＷＭ信号が生成される。つまり、水平同期信号４０４の周期が短くなれば、各ローラの回転速度は相対的に高速になり、原稿搬送が早くなり、原稿１枚あたりのスキャン速度が向上する。
【００４６】
しかしながら、ＣＣＤの１ラインの画像変換素子の数Ｘが同じであれば、水平同期信号４０４の周期が短いほど、短い時間でＣＣＤの１ラインからの読み出しを行わなければならない。このため、読み出しクロック４０１、転送イネーブルクロック４０２も周期を短くする必要が生じる。さらに、読み出しクロック４０１の周期が短くなると、読み取り部１１２から、画像バス１１０を経由して、ＲＡＭ１０４、もしくは画像処理部１１１に転送される単位時間あたりのデータ量が増える。このような場合、ＲＡＭ１１４で保持可能なデータ量を超えてしまい、読み取り部１１２が異常終了してしまうケースもある。また、単位時間あたりに転送されるデータ量が増えると、画像処理部１１１もしくは、画像バス１１０に係る負荷が大きくなる。これにより、例えば、プリンタ部１１３における印刷ジョブを動作させるための画像処理（プリント処理）やデータ転送に遅延が生じるケースもある。
【００４７】
そこで本実施形態では、デフォルト設定として水平同期信号４０４及び読み出しクロック４０１の各周期を長く設定する。これにより、上述の読み取り部１１２の異常終了が生じたり、プリント処理やデータ転送の遅延が生じたりするのを防止する。このデフォルト設定については後述する図６のクロック制御テーブル６００（第１のテーブル）に関する説明において詳述する。
【００４８】
読み取り部１１２は、制御部１１５のＣＰＵ１０３上で実行される読み取り部制御アプリケーションにより制御されるものとして、以下図５を用いて説明を行う。但し、かかる実施形態に限定されるわけではなく、例えば、読み取り部制御アプリケーションを、制御部１１５以外のＣＰＵ、例えば読み取り部１１２のＣＰＵにより、実行する形式であってもよい。
【００４９】
読み取り制御部５００は、読み取り部制御アプリケーションによって読み取り部１１２を制御するためのハードウェアが集結したブロックであり、読み取り部１１２を構成するブロックである。読み取り制御部５００は、ＣＬＫ制御部５０１、ＣＣＤ制御部５０５、ＲＡＭ５０４、モータコントローラ部５０６により構成される。
【００５０】
クロックバス５０３，５０２はＣＬＫ制御部５０１からのクロックを各ブロックに分配する。
【００５１】
ＣＬＫ制御部５０１は、クロック生成のための、水晶振動子と、水晶振動子が生成したクロックを逓倍、分周するＰＬＬ素子により構成される。
【００５２】
読み取り制御部５００を制御する読み取り部制御アプリケーションは、スキャンを行う際の指示に基づき、ＣＬＫ制御部５０１より、制御クロックを、モータコントローラ部５０６、ＣＣＤ制御部５０５、ＲＡＭ５０４に出力する。ＣＬＫ制御部５０１から入力されたクロックに従い、各ブロックでは、さらに逓倍、分周を行い、ＣＣＤ素子や各種ローラを回転させるモータの制御クロックを生成する。スキャンを行う際の指示には、カラー／モノクロ区別、解像度などの情報（ジョブ設定）が含まれ、読み取り部制御アプリケーションは、そのジョブ設定の内容に応じて、ＣＬＫ制御部５０１のＰＬＬの設定を変更する。ＰＬＬの設定変更により、各種クロックの周波数が変わり、これに応じて読み取り部１１２におけるスキャン速度が変更する。
【００５３】
図６のクロック制御テーブル６００に読み取り部１１２が接続可能な画像形成装置毎にその画像処理能力に応じた各種クロックの周波数が予め登録されている。読み取り部１１２における各種クロックの周波数はこのクロック制御テーブル６００を参照して決定される。クロック制御テーブル６００は、予め、読み取り部制御アプリケーションが処理できるデータ形式として、ＲＯＭ１０２または、蓄積メモリ１０５に記憶される、同アプリケーション内に含まれている。本実施形態では、クロック制御テーブル６００が読み取り部制御アプリケーションに含まれているものとして説明するが、必ずしもテーブルのような情報として読み取り部制御アプリケーションが持たずともよい。例えば、読み取り制御アプリケーションが、スキャン速度の指示情報を他のアプリケーションから取得し、特定のロジックにより、動的に決定する方式であってもよいし、ＲＯＭ１０２上の特定領域に蓄積されているデータを参照するものとしてもよい。また、蓄積メモリ１０５や不図示の外部のサーバ上に、データファイルとして蓄積されているものを参照して決定する方式であってもよい。
【００５４】
また、本実施形態ではクロック制御テーブル６００に含まれる各種クロック制御周波数は、機種ＩＤ毎（識別情報毎）、読み取り解像度毎に決定される方式とした。しかしながら、これは説明の簡略化のためであり、機種ＩＤや読み取り解像度以外の情報を考慮したテーブルであってもよい。例えば、カラー読み取り、モノクロ読み取りの指定を考慮し、その指定に応じてクロック制御を最適化できるように、クロック制御テーブル６００の構成情報を変更してもよい。
【００５５】
また、各読み取り設定を考慮したロジックにより、クロック周波数を動的に計算する方式であってもよい。
【００５６】
尚、本実施形態のクロック制御テーブル６００では、読み取り部１１２のスキャン速度も予め決められている。しかしながら、実際は、クロック制御テーブル６００で予め決められている各種クロックの周波数に応じて一義的に読み取り部１１２のスキャン速度は決定される。
【００５７】
クロック制御テーブル６００の情報は、読み取った画像を制御部１１５上に取り込み、画像処理部１１１へと転送するためのクロック速度としても使われる。したがって、本実施形態では、制御部１１５のＣＰＵ１０３上で実行され、制御部１１５全体を制御するジョブ制御アプリケーションもクロック制御テーブル６００の情報を保持する。尚、本願発明はかかる実施形態に限定されるわけではなく、例えば、ジョブ制御アプリケーションと、読み取り部制御アプリケーションが、同一のクロック制御テーブル６００を参照できる形式であってもよい。
【００５８】
前述の通り、水平同期信号４０４の周期を短くし、読み取り部１１２からの画像読み取りを高速にした場合、制御部１１５のシステムバス１０１や画像バス１１０上を流れる画像データの量が増加する。この結果、読み取り部１１２と接続する画像バス１１０のバス帯域がオーバーし、読み取り部１１２が異常終了したり、プリント処理やデータ転送に遅延が生じたりする恐れがある。そのため、クロック制御テーブル６００では、読み取り部１１２が接続可能な複数の画像形成装置の機種ＩＤ毎に、その画像形成装置における印刷速度、画像処理速度、及びバス帯域に応じた各種制御クロックの周波数が設定される。また、機種ＩＤが「Ａ」のテーブルは、デフォルト設定のテーブルであり、読み取り指示の実行要求までに機種ＩＤが外部より通知されない場合は、機種ＩＤとして「Ａ」が指定されたものとして動作する。図６に示すように、デフォルト設定である機種ＩＤが「Ａ」のモータ制御クロック及びＣＣＤ制御クロックの周波数は、クロック制御テーブル６００で設定されているモータ制御クロック及びＣＣＤ制御クロックの周波数の最小値である。これにより、画像形成装置１００が図６のテーブルでサポートされていない機種ＩＤであっても、上述の読み取り部１１２の異常終了が生じたり、プリント処理やデータ転送の遅延が生じたりするのを防止することができる。
【００５９】
また、スキャン速度は、１分間あたりの読み取り可能な原稿枚数を示すＩＰＭ（Ｉｍａｇｅ／Ｍｉｎｕｔｅ）という単位で表現される。
【００６０】
図４（ｂ）は、読み取り動作のシーケンス図である。このシーケンスは、読み取り部１１２を制御する読み取り部制御アプリケーションと、制御部１１５を制御するジョブ制御アプリケーションによって実行される。両アプリケーションは、ＲＯＭ１０２、蓄積メモリ１０５などの不揮発領域に格納されており、画像形成装置１００の電源が入ったのち、ＲＡＭ１０４上に読みだされて、ＣＰＵ１０３にて実行される。ジョブ制御アプリケーションから読み取り部制御アプリケーションが読み取り開始通知Ｎ４０５を受けたとき、読み取り部制御アプリケーションは、各種制御クロックを出力し、原稿読み取りを行う。各種制御クロックを高速化した場合、図４（ｂ）に示す画像転送時間、ｔｖが短くなり、スキャン速度が向上する。Ｎページ目の原稿読み取り終了通知４０７から、Ｎ＋１ページ目の原稿読み取り開始指示を受け取るまでの時間、ｔｐは、読み取り部１１２が接続する制御部１１５内部の画像処理部１１１及び画像バス１１０の処理能力に依存して決まる。したがって、読み取り部１１２が接続する制御部１１５の構成によって、ｔｐは変動する。高速な処理が可能な制御部１１５が読み取り部１１２と接続されている場合は、ｔｐが短くなり、スキャン速度は向上する。読み取り部制御アプリケーションは、ｔｖの時間をクロック制御テーブル６００のスキャン速度の数値になるように、制御部１１５内の各種クロックの制御を行う。
【００６１】
実際に読み取り処理を行う際の動作について、図７、図８のフローチャートを用いて詳述する。図７のクロック制御処理は読み取り部制御アプリケーションによって実行され、図８の読み取り開始指示発行処理はジョブ制御アプリケーションによって実行される。
【００６２】
操作部１１４上から、ユーザにより、読み取りジョブの実行指示がなされると、ジョブ制御アプリケーションは、図８のフローチャートに従って動作する。
【００６３】
まず、ステップＳ８０１で、機種ＩＤ情報を取得する。本実施形態では、この機種ＩＤ情報は、ＲＯＭ１０２上に蓄積されている情報として提供される。しかしながら、本発明はかかる形態に限定されず、例えば、接続されているプリンタ部１１３の初期化を行う際に、プリンタ部１１３のコンフィグレーション情報の一部として記憶されていてもよい。また例えば、プリンタ部１１３のコンフィグレーション情報に含まれる他のＩＤ情報から、読み取り部アプリケーションが識別可能な機種ＩＤ情報にジョブ制御アプリケーションが変換した結果として取得してもよい。
【００６４】
機種ＩＤを取得後、ステップＳ８０２にて、読み取り部制御アプリケーションに対して、機種ＩＤ情報を通知する。本実施形態では、機種ＩＤの通知のタイミングを読み取りジョブの実行指示後にしているが、かかるタイミングに限定されない。例えば、プリンタ部１１３のコンフィグレーション情報のやりとりと同じように、画像形成装置１００の電源投入時の初期化処理の一部として予め、通知する形式であってもよい。また、読み取り部制御アプリケーションが、直接ＲＯＭ１０２にアクセスし、機種ＩＤを取得する形式であってもよい。
【００６５】
一方、操作部１１４上から、ユーザにより、読み取りジョブの実行指示がなされると、読み取り部制御アプリケーションは、読み取り時のクロック周波数を決定するため、図７のフローチャートに従った処理を実行する。
【００６６】
まず、ステップＳ７０１にて、読み取り部制御アプリケーションの機種ＩＤ情報を機種Ａに設定する。これは、以下後述するステップＳ７０２で機種ＩＤがジョブ制御アプリケーションから通知されない時のデフォルト動作を規定するための処理である。ＲＡＭ１０４上に読み取り部制御アプリケーションの機種ＩＤ情報を記憶しておくためのメモリフィールドを確保し、そのメモリ上に機種ＩＤ「Ａ」の情報を記憶する。その後、ステップＳ７０２にて、機種ＩＤがジョブ制御アプリケーションから通知されているかどうかを判別する。
【００６７】
ジョブ制御アプリケーションによって、ステップＳ８０２にて機種ＩＤが読み取り部制御アプリケーションに通知されていた場合は、通知された機種ＩＤをＲＡＭ１０４上に確保されている上記メモリフィールドに上書きする（ステップＳ７０３）。通知が無い場合はステップＳ７０１にて記憶された機種ＩＤ「Ａ」の情報を保持する。
【００６８】
次いで、ステップＳ７０４にて、ＲＡＭ１０４上に確保されている上記メモリフィールドに記憶されている機種ＩＤが読み取り部制御アプリケーションでサポートしている機種ＩＤであるか否かを判定する。具体的には、クロック制御テーブル６００の機種ＩＤの行に、ＲＡＭ１０４上に確保されている上記メモリフィールドに記憶されている機種ＩＤと一致する機種ＩＤがあるかどうかを判定する。この判定の結果、一致している機種ＩＤが無ければ（ステップＳ７０４でＮＯ）、クロック制御テーブル６００にある、デフォルトである、機種ＩＤ「Ａ」の各種クロック周波数を取得する（ステップＳ７０６）。一方、一致している機種ＩＤがあれば（ステップＳ７０４でＹＥＳ）、その一致している機種ＩＤに応じた各種クロック周波数をクロック制御テーブル６００から取得する（ステップＳ７０５）。その後、ステップＳ７０５又はステップＳ７０６で読み出した各種クロック周波数を、読み取り部１１２で動作させる各種クロック周波数に決定し、ステップＳ７０５又はステップＳ７０６で読み出した設定値をＣＬＫ制御部５０１に送信する。これにより、ＣＬＫ制御部５０１にＰＬＬの設定を変更させ、読み取り部１１２の各種クロック周波数やスキャン速度を変更し（ステップＳ７０７）、本処理を終了する。
【００６９】
一方、ジョブ制御アプリケーションは、ステップＳ８０２で機種ＩＤを読み取り部制御アプリケーションに通知した後、読み取り開始指示を読み取り部１１２に対して通知する（ステップＳ８０３）。その後、読み取り部制御アプリケーションによる読み取り処理が終了するのを待つ（ステップＳ８０４）。ステップＳ８０３では、読み取り条件を読み取り開始指示と合わせて読み取り部１１２に対して通知する。読み取り条件は、例えば、カラー、モノクロ読み取り、読み取り解像度などの情報であり、これらは、操作部１１４上からユーザ操作によって、ジョブ制御アプリケーションに指示がなされ、指示された内容を読み取り部制御アプリケーションに通知する。ジョブ制御アプリケーションは、読み取り部１１２から画像データを画像バス１１０を経由して受け取るために、画像バス１１０及び、画像処理部１１１に対して、画像バスの制御クロックに関する設定を行う。画像バス制御クロックの詳細については説明を割愛するが、読み出しクロック４０１に同期して、読み取り部１１２から１画素ずつ画像データが転送されてくるため、読み出しクロックに同期して画像データを取り込む設定を行う。また、画像バス制御クロックは処理の都合上、読み出しクロックより高速である。尚、読み取り部１１２からの画像データを取り込む方法はかかる実施形態に限定されるわけでない。例えば、読み取り部１１２と画像バス１１０の間にバッファを設けて、そのバッファに画像データを一旦蓄積し、画像バス制御クロック１回で、読み取り部１１２から転送されてくるデータをまとめて取り込むようにしてもよい。
【００７０】
読み取り部１１２は、ジョブ制御アプリケーションによって、上記ステップＳ８０３の読み取り開始指示が送られてきたときに、読み取り処理を開始する。読み取り処理は、ＣＣＤ制御部５０５、モータコントローラ５０６、ＲＡＭ５０４に、ステップＳ７０７でＰＬＬの設定を変更したＣＬＫ制御部５０１からクロックを供給することにより行われる。ＣＣＤによって読み取られた画像データは、ＲＡＭ５０４に一旦蓄積された後、制御部１１５に転送される。制御部１１５に転送された画像データは、画像処理部１１１にて画像処理、及び、画像データの圧縮などを施された後、蓄積メモリ１０５上に格納される。蓄積メモリ１０５上に画像データ格納があったときに、ジョブ制御アプリケーションはステップＳ８０４の読み取り処理が終了したと判断し、ステップＳ８０５に遷移する。
【００７１】
ステップＳ８０５では、次の原稿があるかどうかを判別し、次原稿があれば、ステップＳ８０３からの処理を再度実行する。ステップＳ８０５にて、次原稿が無いと判断された場合は、ステップＳ８０６にて、読み取り処理の終了を行う。この際、操作部１１４上に、読み取りが終了した旨のメッセージ画面を表示し、ユーザに読み取り終了を通知する。また、読み取り終了した画像データに対して、印刷や、送信などの、出力処理が実施されるジョブである場合は、後段の出力処理を開始する、などの制御を行う。
【００７２】
本実施形態により、機種ＩＤなどの識別情報に応じて、ＣＣＤ制御クロック、モータ制御クロックを変更し、読み取り部１１２と接続する制御部１１５の処理能力に応じた、最適なスキャン速度での画像読み取りが可能となる。
【００７３】
尚、本実施形態のクロック制御テーブル６００では、機種ＩＤ毎に一つの読み取り解像度が設定されていたが、機種ＩＤ毎に複数の読み取り解像度が設定されていてもよい。但し、この場合、クロック制御テーブル６００では、機種ＩＤと読み取り解像度の組み合わせに応じて、ＣＣＤ制御クロック、モータ制御クロック、及びスキャン速度が設定される。また、ユーザは読み取りジョブの実行指示において読み取り解像度を指定する必要がある。
【００７４】
また、本実施形態では、読み取り部制御アプリケーションは制御部１１５のＣＰＵ１０３上で実行される構成となっていたが、読み取り部１１２の不図示のＣＰＵ上で実行される構成であってもよい。
【００７５】
（第２の実施形態）
前述の通り、第１の実施形態では読み取り制御部５００は、クロック制御テーブル６００に応じてクロック制御を行い、これによりスキャン速度を変化させる。この制御では、クロック制御を行うためのＰＬＬの逓倍率、分周率は無段階変速ではなく、１／２、１／３、２倍、３倍などの固定の値から、選択、もしくは複数を組み合わせて外部に出力するクロック周波数を決定する。したがって、クロック制御テーブル６００に表現されていない、例えば９０ＩＰＭというスキャン速度を実現したいケースがあっても、これを実現することはできない。
【００７６】
本実施形態では、このようなケースにおいて、読み取り制御部５００でのクロック制御によりスキャン速度を変化させるのとは別に、別の方式によってスキャン速度を変化させる。これにより、クロック制御テーブル６００に表現されるスキャン速度以外の速度で画像を読み取ることを可能している。
【００７７】
以下に説明する第２の実施形態は、図１等に示す基本的な構成については第１の実施形態の形態と同じであるため、同様の構成については同一の符号を付し、重複した説明は省略する。
【００７８】
第２の実施形態では、読み取り部制御アプリケーションの制御は、第１の実施形態と同様、ユーザによる読み取りジョブの実行指示がなされた後、ジョブ制御アプリケーションから通知される機種ＩＤに応じた設定値をＣＬＫ制御部５０１に送信する。これにより、読み取り部１１２の各種クロック周波数を切り替えて、スキャン速度を変更するという制御を用いる。一方、ジョブ制御アプリケーションによって実行される、読み取り開始指示発行処理は、図８のフローチャートから、図９、図１０のフローチャートのように変更される。
【００７９】
図９，図１０では、例として、ユーザにより、カラー、解像度６００ｄｐｉでの読み取り条件が設定され、画像形成装置１００の機種ＩＤが「Ａ」であった場合の動作について説明を行う。
【００８０】
図９において、まず、ユーザによる読み取りジョブの実行指示があると、操作部１１４上からユーザ操作によって指示された読み取り条件、及びＲＯＭ１０２から画像形成装置１００の機種ＩＤを取得する（ステップＳ９０１）。
【００８１】
次に、ステップＳ９０２において、ステップＳ８０２と同様に、読み取り部制御アプリケーションにステップＳ９０１で取得した機種ＩＤを通知する。
【００８２】
その後、ステップＳ９０１で取得した読み取り条件及び機種ＩＤと、スキャン速度調整テーブル１１００（第２のテーブル）とに基づき、目標ＩＰＭ値を決定する（ステップＳ９０３）。このスキャン速度調整テーブル１１００は、予め、ジョブ制御アプリケーションが処理できるデータ形式として、ＲＯＭ１０２または、蓄積メモリ１０５に記憶される、同アプリケーション内に含まれている。但し、図６のクロック制御テーブル６００と同様、スキャン速度調整テーブル１１００も必ずしもテーブルのような情報としてジョブ制御アプリケーションが持たずともよい。図１１に示すように、スキャン速度調整テーブル１１００は、機種ＩＤ、カラー／モノクロ区分、及び読み取り解像度からなる予め登録された３つのパラメータの組み合わせ毎に、目標ＩＰＭが設定されている。ステップＳ９０１で取得した読み取り条件は、カラー、６００ｄｐｉであり、かつ、機種ＩＤは「Ａ」であるため、目標ＩＰＭとしては、７０ＩＰＭが指定される。尚、ステップＳ９０１で取得した３つのパラメータの組み合わせがスキャン速度調整テーブル１１００でサポートされていない場合、目標ＩＰＭとしてスキャン速度調整テーブル１１００におけるデフォルト値（７０ＩＰＭ）が指定される。ここで、このデフォルト値は、スキャン速度調整テーブル１１００に存在する目標ＩＰＭの最小値である。これにより、ステップＳ９０１で取得した３つのパラメータの組み合わせがスキャン速度調整テーブル１１００でサポートされていない場合であっても、後述する遅延時間Ｔｄを算出することができる。ここで、本実施形態ではスキャン速度調整テーブル１１００の構成要素を３つのパラメータ（カラー画像かモノクロ画像かの区分、読み取り解像度、機種ＩＤ）と、この３つのパラメータの組み合わせ毎に設定される目標ＩＰＭとした。しかしながら、目標ＩＰＭを設定するパラメータの組み合わせは本実施形態の組み合わせに限定されるものでない。例えばシートサイズを含めた４つのパラメータの組み合わせ毎に目標ＩＰＭを設定するようにしてもよい。
【００８３】
スキャン速度調整テーブル１１００における各機種ＩＤの目標ＩＰＭの数値は、クロック制御テーブル６００における各機種ＩＤのＣＣＤクロック及びモータ制御クロックの周波数より一義的に決定されるスキャン速度以下に予め設定されている。目標ＩＰＭの数値は、各機種ＩＤのスキャン速度の能力の限界値を越えない範囲であれば、他の条件により変更してもよい。例えば、読み取った画像の後処理工程（プリント、送信など）でかかる、画像処理部１１１や画像バス１１０への負荷に応じて、目標ＩＰＭの数値を変更するような形式であってもよい。
【００８４】
ステップＳ９０３において目標ＩＰＭの数値を決定したのち、ステップＳ９０４にて、読み取りジョブの実行に際して、先頭ページであるかどうかの判定を行う。この判定の結果、先頭ページであった場合は（ステップＳ９０４でＹＥＳ）、ステップＳ９０６にて、読み取り開始指示の遅延時間Ｔｄを０として算出する。先頭ページであるかどうかの判断は、ユーザによる読み取りジョブの実行指示が１回ある毎に、１枚目の原稿を先頭ページであると判断する。
【００８５】
一方、先頭ページでなければ（ステップＳ９０４でＮＯ）、ステップＳ９０５にて、読み取り開始指示の遅延時間Ｔｄを算出する処理を行う。ステップＳ９０５のＴｄ算出処理の詳細は、図１０において後述する。
【００８６】
ステップＳ９０５又はステップＳ９０６において算出された遅延時間Ｔｄを制御部１１５内の不図示のタイマにセットし（ステップＳ９０７），その後、ステップＳ９０８にてタイマがタイムアップするまで次のステップＳ９０９の処理を行わずに待つ。ステップＳ９０４で先頭ページであると判定された場合、もしくはステップＳ９０５で遅延時間Ｔｄが０と算出された場合は、ステップＳ９０８においてタイマは起動後、即タイムアップするため、遅延時間無しで次のステップＳ９０９の処理を開始する。
【００８７】
ステップＳ９０８にてタイマがタイムアップした後、ステップＳ９０９で、読み取り開始指示を読み取り部制御アプリケーションに発行する。読み取り開始指示として発行する情報については、ステップＳ８０３と同じであるため、説明を省略する。その後、読み取り開始指示を発行した時刻をｔ１として、記憶し、ステップＳ９０９での処理は終了し、ステップＳ９１０に進む。ステップＳ９１０，Ｓ９１１は、ステップＳ８０４，Ｓ８０５の処理と同じであるため、説明を省略する。
【００８８】
先頭ページに対して遅延ゼロで読み取り開始指示が発行され、発行された時刻はｔ２として記憶された状態で（ステップＳ９０４でＹＥＳ，ステップＳ９０６〜Ｓ９０９）、次ページがあれば（ステップＳ９１１でＹＥＳ）、再度ステップＳ９０４に戻る。原稿２枚目以降は、先頭ページではないため、ステップＳ９０５の遅延時間Ｔｄ算出処理（図１０）が実行される。
【００８９】
図１０は、第２の実施形態に係る遅延時間算出処理の手順を示すフローチャートである。
【００９０】
図１０において、まず、ステップＳ１００１にて、目標ＩＰＭの数値をもとに、理想的な読み取り開始指示の発行間隔Ｔｉを計算する。具体的には、目標ＩＰＭとして「７０ＩＰＭ」という値をステップＳ９０３にて取得済みであるため、一分間あたりに７０枚の原稿を読む間隔で読み取り指示を発行すればよいことになる。そこで、６０／７０  ＝  ８５７ｍｓｅｃ間隔の発行が理想的であるとステップＳ１００１にて算出される。
【００９１】
ステップＳ１００２、ステップＳ１００３、ステップＳ１００４では、１ページ前の原稿の読み取り開始指示を発行した時間（ｔ１）、現在時刻（ｔ２）、回路遅延時間（ｔ３）を取得する。本実施形態では、ｔ３の時間は、画像処理部１１１の処理能力から算出されるものとして、予め、設定された値が用いられる。しかしながら、本実施形態のようにｔ３の時間を予め設定された値に固定しなくてもよい。例えば、画像処理部１１１の処理内容、ＣＰＵ速度などから、ｔ３の時間を動的に決定してもよい。また、印刷処理、送信処理などの動作状況に応じて、ｔ３の時間を上下させてもよい。さらには、印刷処理、送信処理の動作状況によって、上下させるものは必ずしもｔ３の時間でなくてもよい。負荷が軽い状況であれば、Ｔｉを短くすることによりスキャン速度を早くしてもよい。
【００９２】
ｔ１、ｔ２、ｔ３、Ｔｉの情報がそろった後、ステップＳ１００５にて、遅延時間Ｔｄの計算を行う。Ｔｄ＝Ｔｉ−（ｔ２−ｔ１）−ｔ３の時間で計算される。この時間概念をタイミングチャートにしたものが図１２である。ここでは、Ｎページ目のスキャンが開始したタイミングから、どのようなタイミングでＮ＋１ページ目のスキャンが開始するかについて説明する。
【００９３】
本実施形態では、第１の実施形態と同様、読み取り制御アプリケーションは、クロック制御テーブル６００に基づき、機種ＩＤ「Ａ」のスキャン速度の８０ＩＰＭとなるよう読み取り部１１２における読み取り制御部５００の動作を制御する。よって、本来読み取りにかかる時間Ｔｒは、７５０ｍｓｅｃとなる。また、本実施形態の読み取り部１１２は、読み取り終了後、即、次ページの読み出し開始処理が行えるため、ｔ２の時間は、ｔ１の７５０ｍｓｅｃ後、となる。理想的な読み取り開始指示の発行間隔ＴｉとしてステップＳ１００１にて計算された、８５７ｍｓｅｃに対して、ｔ２がｔ１の７５０ｍｓｅｃであるため、その差、１０７ｍｓｅｃが本来、遅延させるために必要な処理時間である。しかしながら、画像処理部１１１のＡＳＩＣで行われる画像処理の処理遅延やアプリケーション動作のオーバーヘッド等を考慮して設定された回路遅延時間、ｔ３の時間も加味して遅延時間Ｔｄの計算を行う。そのため、純粋な遅延時間から、ｔ３分の時間を引いた値、すなわち、Ｔｄ＝Ｔｉ−（ｔ２−ｔ１）−ｔ３となる。上記の計算により、ステップＳ１００５にて、遅延時間Ｔｄの計算を行う。
【００９４】
ステップＳ１００５にてＴｄの計算を行った結果、Ｔｄがゼロより大きい値であれば（ステップＳ１００６でＹＥＳ）、そのまま図１０の処理を終了する。一方、Ｔｄがゼロ以下であれば（ステップＳ１００６でＮＯ）、スキャン速度が目標においついていないため、遅延時間Ｔｄをゼロとして（ステップＳ１００７）、図１０の処理を終了する。
【００９５】
この動作を各原稿に対して行うことで、読み取り部１１２のスキャン速度を、画像処理部１１１、画像バス１１０の能力に応じて、動的に変更して、最適なスキャン速度を画像処理部、画像バスの負荷を調整して読み取り部１１２を動作させることができる。
【００９６】
尚、本実施形態では、読み取り部制御アプリケーション及びジョブ制御アプリケーションは制御部１１５のＣＰＵ１０３上で実行される構成となっていたが、読み取り部１１２の不図示のＣＰＵ上で実行される構成であってもよい。
【００９７】
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。また、上述の実施形態の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線／無線通信を用いてプログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのプログラムを実行する場合も本発明に含む。従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。プログラムを供給するための記録媒体としては、例えば、ハードディスク、磁気テープ等の磁気記録媒体、光／光磁気記憶媒体、不揮発性の半導体メモリでもよい。また、プログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムを記憶し、接続のあったクライアントコンピュータがコンピュータプログラムをダウンロードしてプログラムするような方法も考えられる。
【符号の説明】
【００９８】
１００  画像形成装置
１０２  ＲＯＭ
１０１  システムバス
１１０  画像バス
１１５  制御部
１１１  画像処理部
１１２  読み取り部
１１３  プリンタ部
５００  読み取り制御部
５０１  ＣＬＫ制御部
６００  クロック制御テーブル
１１００  スキャン速度調整テーブル
【図１】
2018033087.tif 000003
【図２】
2018033087.tif 000004
【図３】
2018033087.tif 000005
【図４】
2018033087.tif 000006
【図５】
2018033087.tif 000007
【図６】
2018033087.tif 000008
【図７】
2018033087.tif 000009
【図８】
2018033087.tif 000010
【図９】
2018033087.tif 000011
【図１０】
2018033087.tif 000012
【図１１】
2018033087.tif 000013
【図１２】
2018033087.tif 000014