(57)【特許請求の範囲】
【請求項１】
原稿を読取るスキャナユニットを移動させる駆動源であるＤＣモータの電流値の閾値として予め設定された第１閾値を超えないように、前記ＤＣモータへの電流の供給を制御する電流制御手段と、
前記スキャナユニットの移動速度が目標速度に達しているかどうかを判定する速度判定手段と、
前記速度判定手段により前記スキャナユニットの移動速度が目標速度に達していると判定されなかった場合、前記移動の終点位置まで前記スキャナユニットを移動中に、前記第１閾値より高い第２閾値を設定する設定手段とを備え、
前記電流制御手段は、前記設定手段により前記第２閾値が設定された場合、前記終点位置まで前記スキャナユニットを移動中に、前記ＤＣモータに前記第２閾値を超えないように前記第１閾値よりも高い電流を供給するよう制御することを特徴とする画像読取装置。
【請求項２】
前記スキャナユニットを移動させる制御を行う移動制御手段をさらに備えることを特徴とする請求項１に記載の画像読取装置。
【請求項３】
前記移動制御手段は、前記スキャナユニットを前記終点位置まで移動させた後、前記スキャナユニットを前記終点位置までの移動とは反対の方向に前記スキャナユニットのホームポジションまで移動させるよう制御することを特徴とする請求項２に記載の画像読取装置。
【請求項４】
前記スキャナユニットの移動速度に基づいて前記スキャナユニットが前記終点位置に到達したかどうかを判定する到達判定手段をさらに備え、
前記移動制御手段は、前記到達判定手段により到達したと判定されるまで前記スキャナユニットを移動させるよう制御することを特徴とする請求項２又は３に記載の画像読取装置。
【請求項５】
前記移動制御手段は、前記ＤＣモータの電流値が前記第１閾値又は前記第２閾値に達するまで前記スキャナユニットを移動させるよう制御することを特徴とする請求項２乃至４のいずれか１項に記載の画像読取装置。
【請求項６】
前記速度判定手段は、前記スキャナユニットの平均移動速度が前記目標速度に達しているかどうかを判定することを特徴とする請求項１乃至５のいずれか１項に記載の画像読取装置。
【請求項７】
前記スキャナユニットの移動に応じて前記スキャナユニットの位置を示す信号を出力するエンコーダから出力された信号に基づき、速度情報を取得する取得手段をさらに備え、
前記速度判定手段は、前記取得手段により取得した速度情報に基づいて、判定を行うことを特徴とする請求項１乃至６のいずれか１項に記載の画像読取装置。
【請求項８】
前記スキャナユニットは、原稿の画像を読取る読取センサを含むことを特徴とする請求項１乃至７のいずれか１項に記載の画像読取装置。
【請求項９】
原稿を読取るスキャナユニットを移動させる駆動源であるＤＣモータの電流値の閾値として予め設定された第１閾値を超えないように、前記ＤＣモータへの電流の供給を制御し、
前記スキャナユニットの移動速度が目標速度に達しているかどうかを判定し、
前記スキャナユニットの移動速度が目標速度に達していると判定されなかった場合、前記移動の終点位置まで前記スキャナユニットを移動中に、前記第１閾値より高い第２閾値を設定し、
前記第２閾値が設定された場合、前記終点位置まで前記スキャナユニットを移動中に、前記ＤＣモータに前記第２閾値を超えないように前記第１閾値よりも高い電流を供給するよう制御することを特徴とする画像読取装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像読取装置及び制御方法に関し、特に、駆動源としてＤＣモータを採用し、原稿の読取走査を行うスキャナユニットを駆動する画像読取装置及び画像読取装置の制御方法に関する。
【背景技術】
【０００２】
従来の画像読取装置（イメージスキャナ）は、読取センサを含むスキャナユニットの初期位置（ホームポジション）を基準に、そのスキャナユニットを移動させながら原稿を走査して、その原稿の画像を読取る。そのような装置において、スキャナユニットの初期位置を決定する手段としては、位置を検出する為のセンサ（ホームポジションセンサ）を用いるのが一般的である。ここで、スキャユニットの移動方向を主走査方向といい、主走査方向に直角の方向を副走査方向という。副走査方向には、複数の画像読取素子（例えば、ＣＣＤ）が配列されている。
【０００３】
ホームポジションセンサを用い、スキャナユニットの初期位置を決定する制御方法として、従来より、例えば、特許文献１に開示されたような、副走査方向に設けられた複数個のホームポジションセンサを用いるものがある。これによると、画像を分割して読み取る場合に、複数個のホームポジションセンサにより記憶された位置にスキャナユニットが達した場合、スキャナユニットの通過したホームポジションの内で、もっとも近くのホームポジションへ戻ることが出来る。
【０００４】
また、従来の画像読取装置には、スキャナユニットの駆動源にＤＣモータを採用しているものがある。
【０００５】
そのスキャナユニットを移動させる時の速度変化を検出し、その後の制御を変化させる技術としは、特許文献２に開示されたような画像入出力装置において、スキャナユニットの駆動モータの速度が異常な場合に、モータを即座に停止させるものがある。これによると、過去のモータの速度変化の履歴より、現在の速度範囲を推定し、現在のモータの速度が推定範囲を超えたとき、モータの制御が異常であると判断し強制的に停止させる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平８−２２０８７号公報
【特許文献２】特開平１０−４２５８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記従来例の画像読取装置において、スキャナユニットの位置を検出する為のセンサを備えていない構成の場合、そのセンサを用いてスキャナユニットの初期位置を決定することができない。
【０００８】
このような画像読取装置では、スキャナユニットを装置筐体の内部の壁面に突き当てることで、スキャナユニットの位置を初期化する。そして、その初期化の後、予め定められた一定の距離を移動することで初期位置（ホームポジション）を決定する。例えば、スキャナユニット位置の初期化動作は装置のパワーオン時に実施される。
【０００９】
さて、上記のようなスキャナユニット位置の初期化動作は、駆動源であるＤＣモータへの出力電流値にリミットをかけて低速制御で行う為、所要時間が長い。この所要時間を短縮する為には、出力電流リミット値を高くし、スキャナユニットを高速に駆動する必要がある。
【００１０】
しかしながら、複数の装置に対して同じ出力電流リミット値をかけていても、装置装置の個体の機構ばらつきによっては、スキャナユニットの突き当て動作を行う際にＤＣモータにかかる駆動トルクが高くなるという問題がある。このトルクが高くなると、実際に突き当てが発生した後も依然としてスキャナユニットを駆動するＤＣモータが回転を続けてしまう。その結果、ＤＣモータの回転軸上に取り付けられたエンコーダも回転する為、スキャナユニットが突き当たっていることを検出できないという問題が生じてしまう。これは正確にスキャナユニットの初期位置を決定できないことにつながる。
【００１１】
本発明は上記従来例に鑑みてなされたもので、スキャナユニット位置の初期化動作を高速に行うことができる画像読取装置と画像読取装置の制御方法とを提供することを目的としている。
【課題を解決するための手段】
【００１２】
上記目的を達成するために本発明の画像読取装置は次のような構成からなる。
【００１３】
即ち、原稿を読取るスキャナユニットを移動させる駆動源であるＤＣモータの電流値の閾値として予め設定された第１閾値を超えないように、前記ＤＣモータへの電流の供給を制御する電流制御手段と、前記スキャナユニットの移動速度が目標速度に達しているかどうかを判定する速度判定手段と、前記速度判定手段により前記スキャナユニットの移動速度が目標速度に達していると判定されなかった場合、前記移動の終点位置まで前記スキャナユニットを移動中に、前記第１閾値より高い第２閾値を設定する設定手段とを備え、前記電流制御手段は、前記設定手段により前記第２閾値が設定された場合、前記終点位置まで前記スキャナユニットを移動中に、前記ＤＣモータに前記第２閾値を超えないように前記第１閾値よりも高い電流を供給するよう制御することを特徴とする。
【００１４】
また他の発明によれば、原稿を読取るスキャナユニットを移動させる駆動源であるＤＣモータの電流値の閾値として予め設定された第１閾値を超えないように、前記ＤＣモータへの電流の供給を制御し、前記スキャナユニットの移動速度が目標速度に達しているかどうかを判定し、前記スキャナユニットの移動速度が目標速度に達していると判定されなかった場合、前記移動の終点位置まで前記スキャナユニットを移動中に、前記第１閾値より高い第２閾値を設定し、前記第２閾値が設定された場合、前記終点位置まで前記スキャナユニットを移動中に、前記ＤＣモータに前記第２閾値を超えないように前記第１閾値よりも高い電流を供給するよう制御することを特徴とする画像読取装置の制御方法を備える。
【発明の効果】
【００１５】
従って本発明によれば、突き当て動作中に得られたスキャナユニットの移動速度に基づいて、ＤＣモータへの出力電流のリミット値を、例えば、高くするなどの再設定をするので、スキャナユニットの位置の初期化動作を高速に行なうことができる。
【図面の簡単な説明】
【００１６】
【図１】画像読取装置の機構を示したものである。
【図２】画像読取装置の機構を原稿台の上から見たものである。
【図３】画像読取装置の構成を示すブロック図である。
【図４】スキャナユニットの突き当て動作の流れについて示した図である。
【図５】スキャナユニットの駆動開始時に設定した目標速度に沿って、スキャナユニットの駆動が確認された場合の、速度の変化と印加電流の変化を示した図である。
【図６】スキャナユニットの駆動速度が目標速度に達しなかった場合に、出力電流リミット値を再設定することで、変化した速度と印加電流の関係を示した図である。
【図７】一般的な速度のフィードバック制御を行う手段に関して説明したフローチャートである。
【図８】出力電流にリミットを付けた処理を可能ならしめる為の演算を追加した、速度のフィードバック制御を行う手段に関して説明したフローチャートである。
【図９】実施例における手段の特徴となるフローチャートである。
【符号の説明】
【００１７】
１０１  筐体、１０２  原稿台、１０３  スキャナユニット、１０４  原稿、２０１  ガラス面、２０２  突き当て位置、２０３  突き当て移動方向、２０４  ホームポジション、３０１  ＣＰＵ、３０２  モータドライバ、３０３  ＤＣモータ、３０４  ロータリーエンコーダフィルム、３０５  エンコーダセンサ、３０６  光源、３０７  ミラー、３０８  読取センサ（ＣＣＤ）、３０９  ＡＦＥ、３１０  ＲＡＭ、３１１  ＲＯＭ
【発明を実施するための形態】
【００１８】
以下添付図面を参照して本発明の好適な実施例について、さらに具体的かつ詳細に説明する。ただし、この実施例に記載されている構成要素の相対配置等は、特定の記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１９】
まず、本発明の代表的な実施例である画像読取装置の基本構成を説明する。
【００２０】
図１は本発明の代表的な実施例である画像読取装置の外観斜視図である。
【００２１】
図１に示すように、画像読取装置１００は、制御回路などを実装した筐体１０１と原稿台１０２とスキャナユニット１０３と原稿カバー１０５とで構成される。
【００２２】
図２は図１に示した画像読取装置１００の上面図である。
【００２３】
図２は原稿カバー１０５を開き、原稿台１０２のガラス面２０１を通して、筐体１０１の内部を眺める様子を示したものである。
【００２４】
画像を読取時にはユーザが原稿カバー１０５を開き、原稿台１０２のガラス面２０１に原稿１０４を置き、その後、スキャナユニット１０３で走査することで画像の読み取りを行う。
【００２５】
図２に示すように、スキャナユニット１０３のホームポジション２０４が原稿台１０２の左側にあり、その反対側にスキャナユニット１０３の突き当て位置２０２がある。スキャナユニット１０３の位置の初期化動作では、スキャナユニット１０３を矢印２０３の方向に突き当て位置２０２まで移動させる。矢印２０３の方向とその逆方向が主走査方向となる。
【００２６】
なお、図１〜図２に示した画像読取装置１００はホストコンピュータ（不図示）と接続され、ホストコンピュータからの指示により画像読取を行ない、その読取データをホストコンピュータに出力する。また、図１〜図２では、画像読取装置１００はフラットベッド型の単体装置として描かれているが、多機能プリンタ装置（ＭＦＰ）のスキャナ部として組み込まれる構成のものでも良い。
【００２７】
図３は画像読取装置の制御構成を示すブロック図である。
【００２８】
さて、ホストコンピュータからの原稿読取開始命令をＣＰＵ３０１が受信すると画像の読取動作が開始される。読み取り動作を開始すると、スキャナユニット１０３を構成する光源３０６が点灯し、駆動源となるＤＣモータ３０３が回転し、スキャナユニット１０３を移動させながら原稿を照射する。
【００２９】
原稿からの反射光はミラー３０７を介して読取センサ（ＣＣＤ）３０８に入力される。読取センサ（ＣＣＤ）３０８は、照射された原稿の反射光または透過光をＡＦＥ３０９により光電変換する。その結果、得られたアナログ電気信号（画像信号）はＣＰＵ３０１に送られ、Ａ／Ｄ変換された後、ＲＯＭ３１１に予め定められた画像処理が施される。このようにして得られた画像データがＲＡＭ３１０に格納される。
【００３０】
スキャナユニット１０３の移動は、ＣＰＵ３０１がＲＯＭ３１１に記憶されている制御プログラムを実行してフィードバック制御を行い、モータドライバ３０２を介してＤＣモータ３０３を駆動させることにより行われる。ＤＣモータ３０３には、エンコーダセンサ３０５が取り付けられ、ロータリーエンコーダフィルム３０４を読み取ることで速度情報を得る。
【００３１】
この速度情報に基づいて、ＣＰＵ３０１はスキャナユニット１０３の駆動の為のフィードバック制御を実行する。
【００３２】
図４は、スキャナユニット１０３の初期位置（ホームポジション）の決定動作を模式的に説明した画像読取装置を側断面面である。、
図４では、スキャナユニット１０３の初期位置（ホームポジション）決定のためのにスキャナユニットの突き当て動作の流れを示している。
【００３３】
この決定動作は、次の２ステップで行われる。
【００３４】
まず、ステップ（Ｓｔｅｐ）１として、スキャナユニット１０３を突き当て位置２０２に向かって移動させる。スキャナユニット１０３が一定移動すると、突き当て位置２０２に達する。突き当て位置２０２には筐体１００の内部壁があり、スキャナユニット１０３がこの内部壁に接触する。スキャナユニットを壁に接触させる動作を「突き当てる／突き当て動作」と表現する。
【００３５】
スキャナユニット１０３が突き当て位置２０２に突き当たったかどうかは、エンコーダセンサ３０５から取得される速度情報により判断される。スキャナユニット１０３が突き当て位置２０２に突き当たっている場合、スキャナユニット１０３はそれ以上移動することがない。従って、エンコーダセンサ３０５から取得される速度情報は“０”（インチ／秒）となる。
【００３６】
これを判断条件としてスキャナユニット１０３が目標位置に到達したと判断されると、スキャナユニット１０３の駆動を一旦停止し、突き当て動作を完了させ、次のステップ（Ｓｔｅｐ）２へ進む。
【００３７】
ステップ２では、ステップ１において、スキャナユニット１０３の突き当て動作が完了したと判断された後、予め定められた速度によりスキャナユニット１０３をステップ１におけるとは反対方向へ移動させる。突き当て位置２０２より予め定められた距離を移動した場所をスキャナユニット１０３のホームポジションとする。
【００３８】
以上説明したステップ１〜ステップ２の動作によって、スキャナユニット１０３の初期位置（ホームポジション）が決定される。
【００３９】
次に、以上の構成の画像読取装置におけるスキャナユニットの突き当て動作について説明する。
【００４０】
図５はスキャナユニットの駆動開始時に設定した目標速度ＳｐｄＴａｒｇｅｔ（インチ／秒）に沿ってスキャナユニットが移動した場合の速度変化と供給電流の変化を示した図である。図５において横軸は時間を示し、縦軸は各々、速度と電流値を示している。
【００４１】
図５によれば、目標速度ｓｐｄＴａｒｇｅｔと出力電流リミット値ｍｔｒＬｉｍｉｔ［Ａ］を設定し、スキャナユニットの突き当て動作を開始する。スキャナユニットの移動開始後、時刻ｔ＝Ｔｉｍｅ＿Ｘ（秒）までの間は移動速度計測時間とし、それまで時間に計測された移動速度の平均値をｓｐｄＡｖｇ（インチ／秒）、供給電流の平均値をｍｔｒＡｖｇ［Ａ］とする。
【００４２】
その後、エンコーダセンサ３０５の出力から得られた速度が“０”（インチ／秒）であると判断され、スキャナユニット１０３が停止したことを検知したら、突き当てが発生したものと判定する。
【００４３】
速度変化５０２と供給電流値の変化５０５が計測される場合は、スキャナユニットの移動開始時に設定された目標速度ｓｐｄＴａｒｇｅｔと、時刻ｔ＝Ｔｉｍｅ＿Ｘまでの間に計測された移動速度の平均値ｓｐｄＡｖｇ５０１が同一の値であることを示している。また、平均供給電流ｍｔｒＡｖｇ５０４の値は、出力電流リミット値ｍｔｒＬｉｍｉｔ５０３に達しなかったことを示している。
【００４４】
図５に示す例の場合、スキャナユニット１０３が目標速度ｓｐｄＴａｒｇｅｔに沿って移動しているので、駆動開始時に設定された出力電流リミット値ｍｔｒＬｉｍｉｔは、その個体にとって適切な値であると言える。また、その固体に対して、これ以上目標速度ｓｐｄＴａｒｇｅｔを高く設定した場合、ＤＣモータの駆動トルクが高くなりすぎてしまう為、目標速度ｓｐｄＴａｒｇｅｔも適切な値である。
【００４５】
図６は、スキャナユニット１０３の移動開始後、時刻ｔ＝Ｔｉｍｅ＿Ｘ（秒）までの間に計測された移動速度の平均値ｓｐｄＡｖｇ［Ａ］が、目標速度ｓｐｄＴａｒｇｅｔ（インチ／秒）に達しなかった場合の、速度変化と供給電流の変化を示した図である。
【００４６】
図６においても、横軸は時間を示し、縦軸は各々、速度と電流値を示している。
【００４７】
図６に示す供給電流の変化６０５が測定される場合は、時刻ｔ＝Ｔｉｍｅ＿Ｘまでの間に、目標速度ｓｐｄＴａｒｇｅｔ６０１よりも低い平均速度ｓｐｄＡｖｇ６０２で、スキャナユニット１０３が移動していることを示している。
【００４８】
ｓｐｄＴａｒｇｅｔ＞ｓｐｄＡｖｇである場合、供給電流は出力電流リミット値ｍｔｒＬｉｍｉｔまでかけられて駆動していることになり、平均印加電流値ｍｔｒＡｖｇ６０４とｍｔｒＬｉｍｉｔが同一の値となる。
【００４９】
図６に示した例の場合、その固体は、スキャナユニットの移動速度を目標速度ｓｐｄＴａｒｇｅｔ６０１まで引き上げることができるため、出力電流リミット値ｍｔｒＬｉｍｉｔ６０４にはマージンがあることが望ましい。
【００５０】
出力電流リミット値にマージンがある場合、移動開始時に設定した出力電流リミット値ｍｔｒＬｉｍｉｔに、目標速度ｓｐｄＴａｒｇｅｔと平均移動速度ｓｐｄＡｖｇから算出される係数“ｓｐｄＴａｒｇｅｔ／ＳｐｄＡｖｇ”を乗算する。更に、予め検討した出力電流リミット値のマージンをアップする為の換算係数Ｐａｒａｍ＿Ｕｐを加味した値をその乗算結果に乗算したものを、新しい出力電流リミット値ｍｔｒＬｉｍｉｔとして再設定する。そして、この再設定されたリミット値に基づいてスキャナユニットを駆動する。
【００５１】
これにより、新しい出力電流リミット値にて制御されるスキャナユニットの移動速度は目標速度ｓｐｄＴａｒｇｅｔ６０１に達する。図６には、その出力電流リミット値の再設定を行うことにより変化した移動速度６０６と、再設定した出力電流リミット値６０７とが示されている。また、出力電流リミット値の再設定により変化した供給電流６０８も図示されている。
【００５２】
以上のようにして、画像読取装置の個体にあわせて、スキャナユニットの駆動開始時に設定した出力電流リミット値を、目標速度と、移動開始後、時刻ｔ＝Ｔｉｍｅ＿Ｘまでの間に計測された平均移動速度との関係から再設定することを可能にする。これにより、スキャナユニットを高速に駆動し、突き当て動作に要する時間を短縮することができる。そして、このような構成により、画像読取装置の機構的なばらつきによらず各個体に対してスキャナユニットの初期位置を高速に決定することが可能になる。
【００５３】
図７は速度のフィードバックサーボ制御を説明したフローチャートである。この制御はスキャナユニットの駆動源であるＤＣモータの駆動に適用される。
【００５４】
図７において、ステップＳ７０１〜ステップＳ７０３はソフトウェア的には画像読取制御タスクの階層に属する処理であり、ステップＳ７０４〜ステップＳ７１３はタイマハンドラの階層に属する処理である。
【００５５】
ステップＳ７０１で画像読取制御に伴うＤＣモータの駆動処理が開始されると、ステップＳ７０２で変数ｉｎｔＳｕｍを初期化する。ｉｎｔＳｕｍはフィードバック制御において積分計算により算出される積分補償量を意味する変数である。
【００５６】
ステップＳ７０３でフィードバック制御を行うためのタイマハンドラ（この画像読取装置では１ミリ秒周期）を起動すると、タスク階層での処理は終了となる。
【００５７】
以下、タイマ処理を示すステップＳ７０４により１ミリ秒ごとにステップＳ７０５以下の処理が起動されることになる。
【００５８】
ステップＳ７０５では対象物（ここでは、スキャナユニット）が目標位置に到達したか否かの判定を行う。ここで、その目標位置に到達したと判断されれば、処理はステップＳ７０６に進んでタイマを停止させ、ステップＳ７０７でＤＣモータへの電流供給を切断し、さらにステップＳ７１３に進んで駆動処理終了となる。
【００５９】
これに対して、目標位置に到達していないと判断されれば、処理はステップＳ７０８に進んで速度情報を取得する。具体的には、エンコーダセンサ３０５から現在の速度情報を得て変数ｓｐｄＮｏｗに代入する。次に処理はステップＳ７０９に進み、理想速度プロファイル生成ルーチンより処理時点における理想の速度情報ｓｐｄＣｍｄを取得する。
【００６０】
理想速度プロファイルはその速度指令プロファイルの積分により容易に求めることができるので、公知の手段と言ってよく、ここでは詳細の説明は省略する。
【００６１】
次のステップＳ７１０とステップＳ７１１の計算は、一般的にＰＩＤ制御と呼ばれるフィードバック制御を速度制御に適用した公知の構成の一例を示したものである。
【００６２】
ステップＳ７１０では、速度サーボにおける積分演算を行うための処理を行う。即ち、速度指令値ｓｐｄＣｍｄから現在の速度情報ｓｐｄＮｏｗの差をとって速度の遅れ量を算出する。これに速度の積分ゲイン係数であるｉｎｔＴｂｌを乗算したものを、１ミリ秒周期のタイマが前回割り込んだときに求めた積分補償量ｉｎｔＳｕｍに加算して、積分項の演算結果として新たなｉｎｔＳｕｍを得る。
【００６３】
ステップＳ７１１では、速度サーボにおける比例演算を行った上で電流出力値を決定するための処理を行う。即ち、速度指令値ｓｐｄＣｍｄから現在の速度情報ｓｐｄＮｏｗの差をとって速度の遅れ量を算出し、これに速度の積分ゲイン係数であるｉｎｔＴｂｌを乗算する。このようにして得られた比例項の演算結果に、積分項の演算結果であるｉｎｔＳｕｍを加えたものが、電流出力値ｍｔｒ＿ｐｗｍとなる。
【００６４】
次に、処理はステップＳ７１２に進み、演算結果として求められたｍｔｒ＿ｐｗｍの大きさに対応した電流をＤＣモータに対して供給する。
【００６５】
この後、処理はステップＳ７０４に戻り、１ミリ秒が経過するまでは別タスクの処理を行う。
【００６６】
図８は、図７で説明した速度のフィードバックサーボ制御に出力電流リミット値つきの処理を可能にするための演算を追加した処理を示すフローチャートである。
【００６７】
なお、図８において、図７で説明したのと同様の処理には同じステップ参照番号を付し、その説明は省略し、ここでは、図８に特徴的なステップＳ８１０〜Ｓ８１６の処理についてのみ説明する。
【００６８】
ステップＳ８１０では、ｉｎｔＳｕｍを一時的にバックアップ用の変数領域であるｉｎｔＯｌｄにコピーする。ｉｎｔＳｕｍに関しては後続の処理で上書きされてしまうが、後続の処理の結果いかんでは再度使用する可能性があるため、旧積分補償量としてｉｎｔＯｌｄにバックアップしておく。ステップＳ８１１〜ステップＳ８１２の計算処理は、一般的にＰＩＤ制御と呼ばれるフィードバック制御を、位置制御に適用した公知の構成の一例を示したものであり、ステップＳ７１０〜Ｓ７１１と同様の処理を行なう。
【００６９】
ステップＳ８１３は、図７に示した処理と図８に示す処理の違いが最もよく現れた処理である。即ち、電流出力値ｍｔｒ＿ｐｗｍと予め定められた閾値ｍｔｒＬｉｍｉｔとを比較する。ここで、ｍｔｒ＿ｐｗｍ≦ｍｔｒＬｉｍｉｔであれば、処理はステップＳ８１６に進み、演算結果として求められたｍｔｒ＿ｐｗｍの大きさに対応した電流をＤＣモータに対して供給する。これに対して、ｍｔｒ＿ｐｗｍ＞ｍｔｒＬｉｍｉｔであれば、処理はステップＳ８１４に進み、電流出力値ｍｔｒ＿ｐｗｍとして閾値のｍｔｒＬｉｍｉｔを設定する。
【００７０】
しかしながら、このままでは、一般にリセットワインドアップと呼ばれている問題が発生してしまう。リセットワインドアップとは、演算結果の出力が、制御対象の系において出力に対して課せられたリミットを超えたとき生じる問題である。出力がリミットを超えている時には、積分補償量の増加に比例して出力も増加するというフィードバック制御の基本機能が失われており、この際に積分処理を継続してしまうと積分補償量が巻き上げ（ワインドアップ）られてしまう。この結果、偏差が減少し積分補償量が減算され始めても、巻き上げた分の積分補償量が減算処理によって相殺されるまでは、積分補償量の減少に比例して出力も減少するという、本来のフィードバック制御の機能が回復しない。即ち、巻き戻しの期間だけ本来のフィードバック制御の機能の回復が遅れ、制御結果のオーバシュートが大きくなる等の弊害が出てしまう。 
これを解消するためには出力がリミットに達した時点でそれを超える方向の積分演算を停止する方法が広く知られている。この実施例では、これを適用し、ステップＳ８１５の処理において、積分補償量ｉｎｔＳｕｍをバックアップ変数であるｉｎｔＯｌｄに戻すことで積分演算を停止する。この後処理はステップＳ８１６に進み、演算結果として求められたｍｔｒ＿ｐｗｍの大きさに対応した電流をＤＣモータに対して供給する。
【００７１】
この後、処理はステップＳ７０４に戻り、１ミリ秒が経過するまでは別タスクの処理を行う。
【００７２】
図９はスキャナユニットの突き当て動作制御を示すフローチャートである。
【００７３】
ステップＳ９０１で突き当て動作の開始命令が発行されると、ステップＳ９０２で予め定められた目標速度ｓｐｄＴａｒｇｅｔ（インチ／秒）と出力電流リミット値ｍｔｒＬｉｍｉｔ［Ａ］ＣＰＵ３０１の内部レジスタに設定する。
【００７４】
ステップＳ９０３では、図４に示したスキャナユニットの突き当て動作のためにスキャナユニットの移動を開始する。このためのＤＣモータの駆動制御は、ステップＳ９０２で設定した目標速度ｓｐｄＴａｒｇｅｔと出力電流リミット値ｍｔｒＬｉｍｉｔとを、図８のフローチャートで説明した出力電流リミット値つきのフィードバック制御のパラメータとして使用して実行する。
【００７５】
以降の処理ステップは、図５〜図６に示した移動速度の変化と供給電流の変化に従って実行される。
【００７６】
まず、ステップＳ９０４では、スキャナユニットの移動開始からｔ＝Ｔｉｍｅ＿Ｘ（秒）の時間が経過したかどうかを監視しながら、エンコーダセンサの出力から取得した速度情報を短い時間間隔で記憶する。
【００７７】
Ｔｉｍｅ＿Ｘの時間が経過後、処理はステップＳ９０５に進み、これまでにエンコーダセンサから取得した速度情報に基づいて、スキャナユニットが移動しているかどうかを調べる。ここで、スキャナユニットが移動していないと判断された場合、処理はステップＳ９１０に進み、突き当て動作を終了する。
【００７８】
これに対して、スキャナユニットが移動していると判断された場合は、処理はステップＳ９０６に進み、Ｔｉｍｅ＿Ｘの時間の平均移動速度ｓｐｄＡｖｇ（インチ／秒）を算出する。次にステップＳ９０７では、算出された平均速度ｓｐｄＡｖｇとステップＳ９０２で設定された目標速度ｓｐｄＴａｒｇｅｔを比較する。
【００７９】
ここで、ｓｐｄＡｖｇ≒ｓｐｄＴａｒｇｅｔである、即ち、両者がほぼ同一と判断された場合、処理はステップＳ９０９に進み、突き当て動作の開始命令の発行時に設定した出力電流リミット値ｍｔｒＬｉｍｉｔで、突き当て動作が完了するまで制御を継続する。これに対して、ｓｐｄＡｖｇ≠ｓｐｄＴａｒｇｅｔであると判断された場合、処理はステップＳ９０８に進み、突き当て動作の開始命令の発行時に設定した出力電流リミット値ｍｔｒＬｉｍｉｔを再設定する。再設定する出力電流リミット値ｍｔｒＬｉｍｉｔの算出方法は図６を参照して説明したとおりである。その後、処理はステップＳ９０９に進み、再設定された出力電流リミット値ｍｔｒＬｉｍｉｔで、突き当て動作が完了するまで制御を継続する。
【００８０】
ステップＳ９０９において、突き当てが検知されたらステップＳ９１０に進み、突き当て動作を終了する。
【００８１】
従って以上説明した実施例に従えば、突き当て動作の開始後、所定の時間でスキャナユニットの平均移動速度を求め、これを所定の目標速度を比較し、その比較結果に従って、ＤＣモータへの出力電力のリミット値を再設定するよう制御する。これにより、スキャナユニットの移動速度が目標速度に達していないなら、より大きな電流がＤＣモータに供給され、より高速にスキャナユニットを突き当て位置まで移動させることが可能になる。
【００８２】
また、スキャナユニットの移動速度が目標速度に達しているなら、ＤＣモータへの出力電力のリミット値を最初の設定値に保持する。最初の設定値は、画像読取装置個体の機構のばらつきを考慮した最もトルクが高くなりすぎる個体に合わせて設定しておく。これによりＤＣモータに余計な負荷をかけトルクを大きくすることがなくなる。このことは正確な突き当て検出に貢献する。
【００８３】
このようにして、画像読取装置各々の実際のスキャナユニットに移動速度に基づいて最適な速度制御を行って、より高速にまた正確にスキャナユニットの初期化動作を行なうことが可能になる。
【００８４】
なお、以上説明した実施例では、出力電流リミット値を再設定をスキャナユニットの平均移動速度と目標速度との比較に基づいて行なう例について説明したが本発明はこれによって限定されるものではない。例えば、所定時間内のスキャナユニットの移動最高速度や移動最低速度に基づいて、最適な出力電流リミット値を再設定しても良い。
【図１】
0005596946.tif 000002
【図２】
0005596946.tif 000003
【図３】
0005596946.tif 000004
【図４】
0005596946.tif 000005
【図５】
0005596946.tif 000006
【図６】
0005596946.tif 000007
【図７】
0005596946.tif 000008
【図８】
0005596946.tif 000009
【図９】
0005596946.tif 000010