(57)【要約】【課題】使用される記録媒体や環境が変化した場合においても高速かつ高精度な位置制御を行う。【解決手段】モータを動力源として使用して機構を駆動する機器におけるモータの制御において、各駆動を行う際に、目標位置及び予め設定されたパラメータに従って該駆動の理想的なプロファイルを作成し、プロファイルに従って前記モータの駆動を制御し、各駆動の終了の際に、パラメータの値を評価し、評価の結果に応じて、パラメータの値を変更するようにし、駆動命令の待機時間が所定時間を越えたと判定された場合（Ｓ１１１０４）、パラメータの値をデフォルト値に戻す（Ｓ１１０１２）。【選択図】　図１１
2004088926.tif 000002
【特許請求の範囲】
【請求項１】
モータを動力源として使用して機構を駆動する機器におけるモータの制御方法であって、
各駆動を行う際に、目標位置及び予め設定されたパラメータに従って該駆動の理想的なプロファイルを作成するプロファイル作成工程と、
前記プロファイルに従って前記モータの駆動を制御する追値制御工程と、
各駆動の終了の際に、前記パラメータの値を評価する評価工程と、
前記評価の結果に応じて、前記パラメータの値を変更する変更工程と、
所定のタイミングで、前記パラメータの値をデフォルト値に戻すリセット工程と、を備えることを特徴としたモータの制御方法。
【請求項２】
前記リセット工程において、前記パラメータの値をデフォルト値に戻すと共に、所定の初期化処理を実行することを特徴とする請求項１に記載のモータの制御方法。
【請求項３】
前記所定のタイミングが、前記機構の駆動を行わない時間が所定時間となったタイミングであることを特徴とする請求項１に記載のモータの制御方法。
【請求項４】
センサにより前記機器に関する情報を検出する検出工程と、検出された情報が所定の範囲内にあるか否かを判定する判定工程とを更に備え、前記所定のタイミングが、前記判定工程において、前記情報が前記所定の範囲内にないと判定されたタイミングであることを特徴とする請求項１に記載のモータの制御方法。
【請求項５】
前記機構によって搬送される負荷の種類を検出する負荷検出工程と、前回の駆動時と前記負荷の種類が変化したか否かを判定する判定工程とを更に備え、
前記所定のタイミングが、前記判定工程において、前記負荷の種類が変化したと判定されたタイミングであることを特徴とする請求項１に記載のモータの制御方法。
【請求項６】
前記変更工程において、前記パラメータの値を改善係数に基づいて変更し、
前記改善係数を起動後の駆動回数に従って設定する係数設定工程を更に備えることを特徴とする請求項１から５のいずれか１項に記載のモータの制御方法。
【請求項７】
前記追値制御工程において、前記パラメータに対応する実際の駆動における値を記憶する記憶工程を更に備え、
前記評価工程は、前記記憶工程で記憶された値と前記パラメータの値と所定値とを比較し、前記変更工程は、前記比較の結果に応じて前記パラメータを変更することを特徴とする請求項１に記載のモータの制御方法。
【請求項８】
前記プロファイル作成工程は、時間と位置との関係を示す理想位置プロファイルと、時間と速度との関係を示す理想速度プロファイルとを作成し、
前記追値制御工程で、前記駆動を加速領域、定速領域、減速領域、及び位置決め領域の４つの領域に分けて制御し、前記加速領域、定速領域、及び減速領域においては前記理想位置プロファイルに従って前記モータの制御を駆動し、前記位置決め領域においては前記理想速度プロファイルに従って前記モータを駆動することを特徴とする請求項７に記載のモータの制御方法。
【請求項９】
前記所定の初期化処理が、前記機構によって負荷の搬送が開始されるパラメータの値を求めるための予備駆動工程を含むことを特徴とする請求項２に記載のモータの制御方法。
【請求項１０】
前記予備駆動工程において、時間と速度との関係を示す理想速度プロファイルに従って前記機構を駆動することを特徴とする請求項９に記載のモータの制御装置。
【請求項１１】
前記予備駆動工程において、時間と位置との関係を示す理想位置プロファイルに従って前記機構を駆動することを特徴とする請求項９に記載のモータの制御装置。
【請求項１２】
前記モータがＤＣモータであることを特徴とする請求項１から１１のいずれか１項に記載のモータの制御方法。
【請求項１３】
請求項１から１２のいずれか１項に記載のモータの制御方法をコンピュータによって実現するコンピュータプログラム。
【請求項１４】
請求項１から１２のいずれか１項に記載のモータの制御方法をコンピュータによって実現するプログラムのコードを格納したことを特徴とする記憶媒体。
【請求項１５】
モータを動力源として使用して機構を駆動する機器におけるモータの制御装置であって、
各駆動を行う際に、目標位置及び予め設定されたパラメータに従って該駆動の理想的なプロファイルを作成するプロファイル作成手段と、
前記プロファイルに従って前記モータの駆動を制御する追値制御手段と、
各駆動の終了の際に、前記パラメータの値を評価する評価手段と、
前記評価の結果に応じて、前記パラメータの値を変更する変更手段と、
所定のタイミングで、前記パラメータの値をデフォルト値に戻すリセット手段と、を備えることを特徴としたモータの制御装置。
【請求項１６】
前記リセット手段が、前記パラメータの値をデフォルト値に戻すと共に、所定の初期化処理を実行することを特徴とする請求項１５に記載のモータの制御装置。
【請求項１７】
前記所定のタイミングが、前記機構の駆動を行わない時間が所定時間となったタイミングであることを特徴とする請求項１５に記載のモータの制御装置。
【請求項１８】
前記機器に関する情報を検出するセンサと、検出された情報が所定の範囲内にあるか否かを判定する判定手段とを更に備え、
前記所定のタイミングが、前記判定手段によって、前記情報が前記所定の範囲内にないと判定されたタイミングであることを特徴とする請求項１５に記載のモータの制御装置。
【請求項１９】
前記機構によって搬送される負荷の種類を検出する負荷検出手段と、前回の駆動時と前記負荷の種類が変化したか否かを判定する判定手段とを更に備え、
前記所定のタイミングが、前記判定手段によって、前記負荷の種類が変化したと判定されたタイミングであることを特徴とする請求項１５に記載のモータの制御装置。
【請求項２０】
前記モータがＤＣモータであることを特徴とする請求項１５から１９のいずれか１項に記載のモータの制御装置。
【請求項２１】
請求項１５から２０のいずれか１項に記載のモータの制御装置を備えたことを特徴とする電子機器。
【請求項２２】
請求項１５から２０のいずれか１項に記載のモータの制御装置を記録媒体の搬送に使用することを特徴とする記録装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はモータの制御方法及び制御装置に関し、特に、モータを動力源として使用して機構を駆動する際の制御に関する。
【０００２】
【従来の技術】
現在、様々な装置の動力源としてモータが使用されており、特にＤＣモータは、構造が簡単でメンテナンスが不要、回転ムラや振動が少ない、高速化や高精度な制御が可能であるなどの理由で、ＯＡ機器や家庭用電化製品などに数多く使用されている。
【０００３】
近年、プリンタにおいては、一般民生用プリンタは家庭で使用される割合が高いため、画像品位の向上と共に、稼動音の低下が望まれている。稼働時に発生される騒音（ノイズ）としては、記録時に発生するものと機構部分の駆動時に発生するものとがあるが、記録時の騒音発生源の少ないインクジェット記録装置においては、機構部分の駆動時に発生する騒音を低下することとなる。
【０００４】
インクジェット記録装置の主な機構部分としては、記録ヘッドの走査機構と記録媒体の搬送機構とがあるが、記録ヘッドの走査機構の駆動手段として、ＤＣモータとリニアエンコーダを使用して低騒音化を実現している。今日では、これに加え、記録媒体の搬送機構の駆動手段としてもＤＣモータとロータリーエンコーダが採用される場合が増えている。
【０００５】
低騒音化の観点からは、ＤＣモータを採用することにより効果が期待できるが、記録媒体搬送の高精度化の観点からは、機械的精度に加え、より高度な位置制御が必要となる。
【０００６】
ＤＣモータの位置制御方法としては、基本的には目標となる位置にローラの回転（角度）が到達した時にモータの電源をＯＦＦにして惰性で停止させる方法が一般的である。
【０００７】
ＤＣモータを使用した機構において停止位置の精度を確保するためには、停止前速度の低速化と停止前外乱トルクの排除、すなわち停止直前の低速運転の安定化が必要不可欠であり、充分に遅い一定速度となった状態でモータの電源をＯＦＦすることにより、停止までの制定時間及び停止位置の精度を安定させることができる。
【０００８】
このようなＤＣモータを使用した構成においては、高精度な制御を行うためにはトルク変動を極力減らすことが必要となる。
【０００９】
大きな周期のトルク変動に関しては、一般的に知られているＰＩＤ制御に代表されるフィードバック制御によって外乱トルクを排除できるため制御可能であるが、コギングに代表される小さな周期のトルク変動に対しては、制御対象であるモータ自身に起因するものであることと、高速駆動時には上記のフィードバック制御によって解決できる周波数を超えてしまうことがあることから、制御することが困難である。
【００１０】
このＤＣモータのコギングによるトルク変動に関して、図１及び図２を参照して以下に説明する。
【００１１】
図１は、ＤＣモータを定速で駆動した場合の速度変動を簡略に示したグラフである。横軸は時間を、縦軸は速度を示している。１００１はここで基準速度として想定する速度（Ｖ＿ｘ）で駆動したときの速度プロファイルを示しており、１００２は基準速度の２倍（２＊Ｖ＿ｘ）で駆動したときの速度プロファイル、１００３は基準速度の８倍（８＊Ｖ＿ｘ）で駆動したときの速度プロファイルをそれぞれ示している。
【００１２】
ここで、該ＤＣモータが動作原理に起因する必然的な特性として持っているモータ自身のコギングによりトルク変動が生じ、周期的な速度変動が発生する。この周期的な速度変動は、モータ自身の特性に起因するものであるので、常に一定の回転角度に対応した移動距離ごとに発生し、従って速度が速くなればなるほど、より高い周波数で発生する。
【００１３】
図中●で示されている１００４は、コギングによるトルク変動の影響で、モータ自身が高速で回転してしまう位相角に対応するポイントを示している。また、図中■で示されている１００５は、コギングによるトルク変動の影響で、モータ自身が低速で回転してしまう位相角に対応するポイントを示している。
【００１４】
このように、基準速度Ｖ＿ｘの２倍の速度２＊Ｖ＿ｘで駆動すれば速度変動は２倍の周波数で発生し、８倍の速度８＊Ｖ＿ｘで駆動すれば速度変動は８倍の周波数で発生する。
【００１５】
次に、コギングによるトルク変動が、実際の駆動において及ぼす影響について説明する。
【００１６】
図２は、ＤＣモータにおいて用いられる理想位置プロファイル追値制御、理想速度プロファイル追値制御を例にして、コギングによるトルク変動の及ぼす影響を説明するための図である。
【００１７】
図２において、横軸は時間を示しており、縦軸２００１は速度を、縦軸２００２は位置を示している。
【００１８】
２００３は理想位置プロファイルを示しており、２００４は理想位置に到達させるための理想速度プロファイルを示している。この理想速度プロファイル２００４は４つの制御領域からなり、加速制御領域２０１１、定速制御領域２０１２、減速制御領域２０１３、位置決め制御領域２０１４により構成されている。
【００１９】
２００４の理想速度プロファイルにおいて、Ｖ＿ＳＴＡＲＴは初速度であり、Ｖ＿ＦＬＡＴは定速制御領域２０１２の速度を示している。また、Ｖ＿ＡＰＰＲＯＡＣＨは位置決め制御領域の速度を示しており、Ｖ＿ＰＲＯＭＩＳＥは位置決め精度を達成するために絶対に守られなければならない停止直前の最大速度を示している。ｖ＿ｓｔｏｐは、現実の駆動を想定した場合における外乱によってあらゆる値に変化する現実の値としての停止直前速度である。
【００２０】
Ｖ＿ＡＰＰＲＯＡＣＨは、実際の駆動における速度変動を考慮して、いかなる速度変動が発生してもｖ＿ｓｔｏｐがＶ＿ＰＲＯＭＩＳＥを超えることがないように充分に低い値に設定されることが要求される。
【００２１】
ここで示した例においては、後述するように、２０１１、２０１２、２０１３では位置サーボを、２０１４では速度サーボを採用している。図示した２００３の曲線は、位置サーボ時には理想位置プロファイルを示し、速度サーボ時には理想速度プロファイルによって動作した場合の到達想定位置プロファイルを示している。図示した２００４の曲線は、速度サーボ時には理想速度プロファイルを示し、位置サーボ時には理想位置プロファイルに追従して動作するために求められる要求速度プロファイルを示している。
【００２２】
２００５は、理想速度プロファイル２００４との比較を容易とするため、コギングによる高い周波数での変動を平均化した場合の、物理的なモータの現実駆動速度プロファイルを示している。理想位置プロファイル２００３を入力としてフィードバック制御をかけていくと、理想速度プロファイル２００４に対して若干の遅れが出ているが、位置決め制御領域２０１４に進むに従って理想速度に近くなり、最終的な停止直前の速度としては位置決め精度を達成できる速度Ｖ＿ＡＰＰＲＯＡＣＨに収束している。なお、減速制御領域２０１３から位置決め制御領域２０１４への移行は、物理的な駆動速度状態に関わらず、位置がＳ＿ＡＰＰＲＯＡＣＨに達した瞬間に行われるものとする。
【００２３】
２００５のプロファイルは、超音波モータのようにコギングによるトルク変動がないモータを駆動した場合には、現実に達成することが可能であるが、ここではコギングによるトルク変動があるＤＣモータを駆動することを想定しているため、実際の現実速度プロファイルの形状は、２００５に対して更にコギングによるトルク変動の影響が加わり、２００６あるいは２００７に示した形状となる。
【００２４】
２００６のプロファイルは、移動開始時点でのＤＣモータの位相が、２００７のプロファイルと反対である場合を示しており、実際にはこの２つのパターンだけでなく、ＤＣモータの移動開始時の位相により、トルク変動により速度が速くなるポイント１００４及び速度が遅くなるポイント１００５の位置が時間的にずれた様々なパターンが生じ得る。
【００２５】
図中のＳ＿ＡＰＰＲＯＡＣＨは、上述のように減速制御領域２０１３から位置決め制御領域２０１４に移行する位置を示しており、Ｓ＿ＳＴＯＰは停止位置を示している。Ｔ＿ＡＤＤは加速制御領域２０１１に費やされる所要時間であり、Ｔ＿ＤＥＣは減速制御領域２０１３に費やされる所要時間である。Ｔ＿ＦＬＡＴは定速制御領域２０１２に費やされる時間であり、移動開始位置を０としたときの停止位置Ｓ＿ＳＴＯＰ、すなわち総移動距離に対する理想位置プロファイル２００３を設定した時点で決定される固定値である。
【００２６】
Ｔ＿ＡＰＰＲＯＡＣＨは位置決め制御領域２０１４に費やされる時間であり、制御対象が実際に動いたときに、位置決め制御領域２０１４に移行する位置Ｓ＿ＡＰＰＲＯＡＣＨから停止位置Ｓ＿ＳＴＯＰまでの距離Ｓ＿ＡＰＲ＿ＳＴＯＰを移動するのに要する時間である。この図に示した２００５では、位置決め領域を駆動制御対象が理想速度で動いた場合をモデルとして示しているが、現実の制御においては、理想通りの物理的動作は一般的に大変困難である。
【００２７】
高速かつ高精度の位置決めを行うためには、理想位置プロファイル２００３のカーブをその系に適合するようにチューニングする必要がある。具体的には、定速制御領域２０１２の速度は、位置決め所要時間を短縮するために系の性能の許す限り速く、位置決め制御領域２０１４の速度は、位置決め精度の向上を実現するために系の性能の許す限り遅く、さらに加速制御領域２０１１、減速制御領域２０１３、及び位置決め制御領域２０１４の距離は、位置決め所要時間を短縮するために系の性能の許す限り短くなるように、理想位置プロファイル２００３を設定することが望ましい。
【００２８】
しかしながら、このようなチューニングの詳細な手法については本発明の主題ではないので、ここではすでに理想位置プロファイル２００３が最適に調整されているものとして説明する。
【００２９】
上述のように、２００６及び２００７は、図１に関して説明したようなコギングによるトルク変動を有するＤＣモータを用いて同様の制御を施した場合の、物理的なモータの速度プロファイルを示している。大局的には、理想的なモータにおける現実速度プロファイル２００５と同様の曲線となるが、コギングによるトルク変動の影響による速度変動があるため、位置決め制御領域２０１４に移行した瞬間の速度を目標となる速度Ｖ＿ＡＰＰＲＯＡＣＨと比較すると、２００６では速く、２００７では遅くなってしまっている。
【００３０】
この影響により、２００６で示したプロファイルでは、停止位置Ｓ＿ＳＴＯＰに到達した瞬間の速度がＶ＿ＰＲＯＭＩＳＥを超えてしまっている。この速度では、装置に要求される停止条件を満たすことはできないので、停止位置の精度が保証されず、停止位置をオーバーランする可能性がある。
【００３１】
一方、２００７で示したプロファイルでは、位置決め制御領域２０１４における速度の平均が低くなるため、実際に停止位置Ｓ＿ＳＴＯＰに到達するまでの時間が、Ｔ＿ＡＰＰＲＯＡＣＨよりも長くなってしまい、所要時間が長くなるという問題が生じる。
【００３２】
２００６のプロファイルにおける停止位置の問題を解決するためには、位置決め制御領域に移行する際の速度をデフォルトの値Ｖ＿ＡＰＰＲＯＡＣＨよりも下げることで容易に対処できる。しかしながら、このようにすると、移動開始時のモータの位相により２００７に示すプロファイルとなったときに、所要時間が長くなるという問題を更に悪化させてしまう。
【００３３】
また逆に、２００７における所要時間の問題を解決するためには、位置決め制御領域に移行する際の速度をデフォルトの値Ｖ＿ＡＰＰＲＯＡＣＨよりも上げることで容易に対処できる。しかしながら、このようにすると、移動開始時のモータの位相により２００６に示すプロファイルとなったときに、停止位置の精度が保証されないという問題を更に悪化させてしまう。
【００３４】
更に、ＤＣモータのコギングには周期が存在するが、この周期は定量的に正確に検知することが難しい。図では近似的にサインカーブで示しているが、実際のトルク変動は個体毎にばらつきがあり、サインカーブで表せない様々な特性となる。このため、同じ種類・型番であってもトルク変動の特性は同一とはならず、あらゆるモータに対して汎用的、普遍的に完全に適用できる曲線（プロファイル）は存在しない。
【００３５】
また、エンコーダから読み込む論理的位置情報と、コギングによるトルクリップルの周期を３６０度とみなした場合の位相角とを関連付けて制御することも考えられるが、この場合、装置がパワーオフされる度に論理的位置情報が初期化されてしまうため、装置がパワーオンした後に行う移動の際の停止位置での速度が、２００６に示すように最終的に目標となる速度を超過するのか、２００７に示すように最終的に目標となる速度未満となるのかを、予め予測して制御することが困難である。
【００３６】
以上のように、使用するＤＣモータのコギング特性に応じて位置決め制御領域の目標速度（Ｖ＿ＡＰＰＲＯＡＣＨ）を設定し、高精度かつ高速な位置制御を達成することは事実上非常に困難である。
【００３７】
かかる問題を解決すべく、各駆動を行う際に、目標位置及び予め設定された初期パラメータに従って該駆動の理想的なプロファイルを作成し、このプロファイルに従ってモータの駆動を制御し、各駆動の終了の際に、初期パラメータの値を評価し、評価の結果に応じて、初期パラメータの値を変更するという発明が、特願２００１−１４８３４１号に提案されている。
【００３８】
【発明が解決しようとする課題】
近年は、材質やサイズの異なる多種多様な記録媒体に記録することが望まれており、記録装置において搬送機構及びそのモータは、制御対象物である記録媒体の種類に応じて適切に制御する必要がある。
【００３９】
このような問題に対処すべく、特願２００１−１４８３４４号には、予備駆動を行っている間に、機構の移動を監視して、該機構を始動させるのに必要なモータへの指令値を求め、この指令値を駆動パラメータの初期値として用いることにより、制御対象物及び機構部分の摩擦力の個体差や使用環境の差異にかかわらず、高速かつ高精度な位置制御を可能とする発明が提案されている。
【００４０】
しかしながら、上記特願２００１−１４８３４４号に記載された発明では、予備駆動が行われるのは、電源が投入された後の１回だけであり、一旦起動された後は、同じパラメータが引き続いて使用される。これは、特願２００１−１４８３４１号に記載された発明でも同様であり、一旦起動された後には、使用される記録媒体の種類が代わった場合にも、パラメータの値は引き継がれてしまう。
【００４１】
更に、温度等の環境が変化した場合にも、機構部分の静止摩擦力等が変化するため、パラメータが引き継がれてしまうと、高速かつ高精度な位置制御を行うことができなくなる。
【００４２】
本発明は以上のような状況に鑑みてなされたものであり、起動した後にも所定のタイミングでパラメータの設定を変更し、使用される記録媒体や環境が変化した場合においても高速かつ高精度な位置制御を可能とする、モータの制御方法及び制御装置を提供することを目的とする。
【００４３】
【課題を解決するための手段】
上記目的を達成するために本発明のモータの制御方法は、モータを動力源として使用して機構を駆動する機器におけるモータの制御方法であって、
各駆動を行う際に、目標位置及び予め設定されたパラメータに従って該駆動の理想的なプロファイルを作成するプロファイル作成工程と、
前記プロファイルに従って前記モータの駆動を制御する追値制御工程と、
各駆動の終了の際に、前記パラメータの値を評価する評価工程と、
前記評価の結果に応じて、前記パラメータの値を変更する変更工程と、
所定のタイミングで、前記パラメータの値をデフォルト値に戻すリセット工程と、を備える。
【００４４】
また、上記目的を達成する本発明のモータの制御装置は、モータを動力源として使用して機構を駆動する機器におけるモータの制御装置であって、
各駆動を行う際に、目標位置及び予め設定されたパラメータに従って該駆動の理想的なプロファイルを作成するプロファイル作成手段と、
前記プロファイルに従って前記モータの駆動を制御する追値制御手段と、
各駆動の終了の際に、前記パラメータの値を評価する評価手段と、
前記評価の結果に応じて、前記パラメータの値を変更する変更手段と、
所定のタイミングで、前記パラメータの値をデフォルト値に戻すリセット手段と、を備える。
【００４５】
すなわち、本発明では、モータを動力源として使用して機構を駆動する機器におけるモータの制御において、各駆動を行う際に、目標位置及び予め設定されたパラメータに従って該駆動の理想的なプロファイルを作成し、プロファイルに従って前記モータの駆動を制御し、各駆動の終了の際に、パラメータの値を評価し、評価の結果に応じて、パラメータの値を変更するようにし、所定のタイミングで、パラメータの値をデフォルト値に戻す。
【００４６】
このようにすると、例えば、機構の駆動が所定時間以上行われていないタイミング、機器に関する情報が所定の範囲内にないと判定されたタイミング、前回の駆動時と機構によって搬送される負荷の種類が変化したと判定されたタイミング等のタイミングで、パラメータの値をデフォルト値に戻し、駆動条件や対象が異なった場合に、パラメータの値が引き継がれることによって生じる不具合を防止することができる。
【００４７】
従って、起動した後にも所定のタイミングでパラメータの設定を変更し、使用される記録媒体や環境が変化した場合においても高速かつ高精度な位置制御が可能となる。
【００４８】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を参照して詳細に説明する。ここで説明する実施形態は、着脱可能なインクタンクを備えた記録ヘッドを搭載したシリアル式インクジェットプリンタにおいて、記録媒体搬送用のラインフィードモータの制御に、本発明のモータの制御方法を適用したものである。
【００４９】
＜第１の実施形態＞
図３は本発明の第１の実施形態に係るシリアル式インクジェットプリンタの全体図である。同図において、１０１はインクタンクを有する記録ヘッド、１０２は記録ヘッド１０１を搭載するキャリッジである。キャリッジ１０２の軸受け部には主走査方向に摺動可能な状態でガイドシャフト１０３が挿入され、そのシャフトの両端はシャーシ１１４に固定されている。このキャリッジ１０２に係合したキャリッジ駆動伝達手段であるベルト１０４を解して、キャリッジ駆動手段である駆動モータ１０５の駆動が伝達され、キャリッジ１０２が主走査方向に移動可能である。
【００５０】
記録待機中において記録用紙１１５は、給紙ベース１０６にスタックされており、記録開始時には給紙ローラ（不図示）により記録用紙が給紙される。給紙された記録用紙を搬送するため、ＤＣモータである用紙搬送用モータ（１０７）の駆動力により伝達手段であるギア列（モータギア１０８、搬送ローラギア１０９）を介して搬送ローラを回転させ、ピンチローラばね（不図示）により搬送ローラ１１０に押圧され従動回転するピンチローラ１１１とこの搬送ローラ１１０とにより記録用紙１１５は適切な送り量だけ搬送される。ここで、搬送量は搬送ローラ１０９に圧入されたコードホイール（ロータリーエンコーダフィルム１１６）のスリットをエンコーダセンサ１１７で検知、カウントすることで管理され、高精度送りを可能としている。
【００５１】
図４は、図３に示したプリンタの制御構成を説明するブロック図である。
【００５２】
図において、４０１はプリンタ装置のプリンタ制御用のＣＰＵで、ＲＯＭ４０２に記憶されたプリンタ制御プログラムやプリンタエミュレーション、記録フォントを利用して記録処理を制御する。
【００５３】
４０３はＲＡＭで、記録のための展開データ、ホストからの受信データを蓄える。４０４はプリンタヘッド、４０５はモータを駆動するモータドライバ、４０６はプリンタコントローラで、ＲＡＭ４０３のアクセス制御やホスト装置とのデータのやりとりやモータドライバへの制御信号送出を行う。４０７はサーミスタ等で構成される温度センサで、プリンタ装置の温度を検知する。
【００５４】
ＣＰＵ４０１はＲＯＭ４０２内の制御プログラムにより本体のメカ的／電気的制御を行いつつ、ホスト装置からプリンタ装置へ送られてくるエミュレーションコマンド等の情報をプリンタコントローラ４０６内のＩ／Ｏデータレジスタから読み出し、コマンドに対応した制御をプリンタコントローラ４０６内のＩ／Ｏレジスタ、Ｉ／Ｏポートに書き込み、読み出しを行う。
【００５５】
図５は、図４に示したプリンタコントローラ４０６の詳細構成を説明するブロック図であり、図４と同一のものには同一の符号を付してある。
【００５６】
図において、５０１はＩ／Ｏレジスタで、ホストとのコマンドレベルでのデータのやり取りを行う。５０２は受信バッファコントローラで、レジスタから受信データをＲＡＭ４０３に直接書き込む。
【００５７】
５０３は記録バッファコントローラで、記録時にはＲＡＭの記録データバッファから記録データを読み出し、プリンタヘッド４０４に対してデータの送出を行う。５０４はメモリコントローラで、ＲＡＭ４０３に対して３方向のメモリアクセスを制御する。５０５はプリントシーケンスコントローラで、プリントシーケンスをコントロールする。２３１はホストインターフェースで、ホストとの通信を司る。
【００５８】
図６は、一般的なＤＣモータの位置サーボによる制御手順（６０００）を示すブロック図である。本実施形態において位置サーボは、加速制御領域、定速制御領域、減速制御領域において使用される。このようなＤＣモータの制御は、ＰＩＤ（ｐｒｏｐｏｒｔｉｏｎａｌ　ｉｎｔｅｇｒａｌ　ａｎｄ　ｄｉｆｆｅｒｅｎｔｉａｌ）コントロールあるいは古典制御と呼ばれており、以下にその手順を説明する。
【００５９】
まず、制御対象に与えたい目標位置を、理想位置プロファイル６００１という形で与える。本実施形態においては、これは該当する時刻においてラインフィードモータによって搬送された紙が到達しているべき絶対位置に該当する。時刻の進行とともに、この位置情報は変化していく。この理想位置プロファイルに対する追値制御を行うことで、本実施形態の駆動制御が行われる。
【００６０】
装置にはエンコーダセンサ６００５が具備されており、これによりモータの物理的な回転を検知する。エンコーダ位置情報変換手段６００９は、エンコーダセンサ６００５が検知したスリット数を累積加算して絶対位置情報を得る手段であり、エンコーダ速度情報変換手段６００６はエンコーダセンサ６００５の信号と、プリンタに内蔵された時計（タイマ）から、現在のラインフィードモータの駆動速度を算出する手段である。
【００６１】
理想位置プロファイル６００１から、位置情報変換手段６００９により得られた実際の物理的位置を減算した数値を、目標位置に対して足りない位置誤差として、６００２以降の位置サーボのフィードバック処理に受け渡す。６００２は位置サーボのメジャーループであり、一般的には比例項Ｐに関する計算を行う手段が知られている。
【００６２】
６００２における演算の結果としては、速度指令値が出力される。この速度指令値が、６００３以降の速度サーボのフィードバック処理に受け渡される。速度サーボのマイナーループは、比例項Ｐ、積分項Ｉ、微分項Ｄに対する演算を行うＰＩＤ演算により行う手段が一般的である。
【００６３】
本実施形態においては、速度指令値の非線形な変化が発生した場合の追従性を改善し、なおかつ追値制御時の微分演算の弊害を防ぐために、一般に微分先行形と呼ばれる手法を示しており、エンコーダ速度情報変換手段６００６で得られたエンコーダ速度情報は、６００２で得られた速度指令値との差を取る前に、微分演算手段６００７を通される。この手法自体は本発明の主題となるものではなく、制御対象の系の特性によっては、６００３において微分演算を行えば充分なものもある。
【００６４】
速度サーボのマイナーループにおいては、速度指令値からエンコーダ速度情報を減算した数値を、目標速度に対して足りない速度誤差として、ＰＩ演算回路６００３に受け渡し、その時点でＤＣモータに与えるべきエネルギーを、ＰＩ演算と呼ばれる手法で算出する。それを受けたモータドライバ回路は、例えばモータ印加電圧は一定として、印加電圧のパルス幅を変化させる手段（以下「ＰＷＭ（Ｐｕｌｅｓ　Ｗｉｄｔｈ　Ｍｏｄｕｌａｔｉｏｎ）制御」と呼ぶ）を用い、印加電圧のＤｕｔｙを変化させて、電流値を調節し、ＤＣモータ６００４に与えるエネルギーを調節し、速度制御を行う。
【００６５】
電流値を印加されて回転するＤＣモータは、６００８の外乱による影響を受けながら物理的な回転を行い、その出力がエンコーダセンサ６００５により検知される。
【００６６】
図７は一般的なＤＣモータの速度サーボによる制御手順（７０００）を説明するブロック図である。図６と同様な構成要素には同じ符号を伏して説明を省略する。本実施形態において速度サーボは、位置決め制御領域において使用される。このようなＤＣモータの制御は、ＰＩＤコントロールあるいは古典制御と呼ばれており、以下にその手順を説明する。
【００６７】
まず、制御対象に与えたい目標速度を、理想速度プロファイル７００１という形で与える。本実施形態においては、これは該当する時刻においてラインフィードモータにより紙を搬送すべき理想速度であり、該当する時刻における速度指令値ということになる。時刻の進行とともに、この速度情報は変化していく。この理想速度プロファイルに対して追値制御を行うことで、本実施形態の駆動制御が行われる。
【００６８】
速度サーボにおいては、比例項Ｐ、積分項Ｉ、微分項Ｄに対する演算を行うＰＩＤ演算により行う手段が一般的である。本実施形態においては、速度指令値の非線形な変化が発生した場合の追従性を改善し、なおかつ追値制御時の微分演算の弊害を防ぐために、一般に微分先行形と呼ばれる手法を示しており、６００６で得られたエンコーダ速度情報は、理想速度プロファイル７００１で得られた速度指令値との差を取る前に、微分演算手段７００３を通される。この手法自体は本発明の主題となるものではなく、制御対象の系の特性によっては、７００２において該微分演算を行えば充分なものもある。
【００６９】
速度サーボにおいては、速度指令値からエンコーダ速度情報を減算した数値を、目標速度に対して足りない速度誤差として、ＰＩ演算回路７００２に受け渡し、その時点でＤＣモータに与えるべきエネルギーを、ＰＩ演算と呼ばれる手法で算出する。それを受けたモータドライバ回路は、例えばＰＷＭ制御を用い、印加電圧のＤｕｔｙを変化させて、電流値を調節し、ＤＣモータ６００４に与えるエネルギーを調節し、速度制御を行う。
【００７０】
電流値を印加されて回転するＤＣモータ６００４は、６００８の外乱による影響を受けながら物理的な回転を行い、その出力がエンコーダセンサ６００５により検知される。
【００７１】
図８、９、１０は、図２において説明した、コギングによるトルク変動の及ぼす影響と制御について、各ケースについて更に詳細に説明するための図である。
【００７２】
図８は、停止直前の速度ｖ＿ｓｔｏｐが、平均的かつ理想的な値Ｖ＿ＡＰＰＲＯＡＣＨで終了する場合を示し、図９は、ｖ＿ｓｔｏｐ＞Ｖ＿ＡＰＰＲＯＡＣＨ、すなわち速度超過で終了する場合を示し、図１０は、ｔ＿ａｐｐｒｏａｃｈ＞Ｔ＿ＡＰＰＲＯＡＣＨ、すなわち時間超過で終了する場合を示している。
【００７３】
８００１は理想位置プロファイルであり、位置サーボを行う２０１１、２０１２、２０１３の各領域に対して設定されるが、Ｓ＿ＡＰＰＲＯＡＣＨまでしか計算されない。これは、Ｓ＿ＡＰＰＲＯＡＣＨを通り過ぎると速度サーボに切り替わるため、Ｓ＿ＡＰＰＲＯＡＣＨ以降ではこの理想位置プロファイルが不必要であるからである。８００１における減速所要時間Ｔ＿ＤＥＣは実際の駆動と関わりなく一定であり、これに該当する制御領域を理想減速制御領域９００１として示すものとする。
【００７４】
８００３、９００３、１０００３は、各図における外乱等の影響を考慮した現実位置プロファイルである。ここでは、説明対象の明確化を図るため、コギングによる高い周波数での変動を平均化した場合の、物理的なモータの現実位置プロファイルを示している。
【００７５】
位置サーボにおいては、時間的な遅れが必ず発生するため、理想位置プロファイル８００１に対して８００３、９００３、１０００３の現実位置プロファイルはいずれも遅れを持っている。従って、理想位置プロファイル８００１が終了しても、現実位置はＳ＿ＡＰＰＲＯＡＣＨには到達しないことが一般的であり、本実施形態においては、９００１が終了してから現実の駆動がＳ＿ＡＰＰＲＯＡＣＨに到達するまでの間には、仮想の理想位置プロファイル８００６によって位置サーボへの指令位置値として代用するものとする。この仮想の理想位置プロファイル８００６は、理想位置プロファイル８００１の最終的な傾きを用いて、理想位置プロファイルの終点から伸ばした直線とする。
【００７６】
８００５、９００５、１０００５は、２００５と同様、説明対象の明確化を図るため、コギングによる高い周波数での変動を平均化した、簡略化された概念における場合の、物理的なモータの現実速度プロファイルを示しており、ここでは各図における外乱等の影響を考慮したプロファイルを各々示している。
【００７７】
その他の図２と同様な部分は、図２と同じ符号で示している。ただし、図２においては定数値であった位置決め制御領域２０１４に費やされる時間の理想値Ｔ＿ＡＰＰＲＯＡＣＨに対して、図８、９、１０においては現実の駆動を想定した場合に外乱によってあらゆる値に変化する現実の値として、位置決め制御領域２０１４に費やされる時間として現実変数値ｔ＿ａｐｐｒｏａｃｈを追加している。
【００７８】
なお、本実施形態における説明では、定数値を英大文字、変数値を英小文字で示している。同一スペリングの値について英大文字、英小文字の表記がある場合、英大文字で示された値は理想定数値であり、英小文字で示された値は同じ内容の値について変化しうる変数値を示している。
【００７９】
Ｓ＿ＤＥＣは定速制御領域２０１２が終了して減速制御領域２０１３が開始される位置を示しており、あくまでも理想位置プロファイル８００１によって決定される値であるため、現実の駆動における外乱の影響とは無関連である。
【００８０】
上記のように、図８は停止直前速度ｖ＿ｓｔｏｐが、平均的かつ理想的な値Ｖ＿ＡＰＰＲＯＡＣＨで終了する場合であり、ｖ＿ｓｔｏｐ＜Ｖ＿ＰＲＯＭＩＳＥ、かつ、ｔ＿ａｐｐｒｏａｃｈ＝Ｔ＿ＡＰＰＲＯＡＣＨ、であるため、停止直前速度、駆動所要時間の双方が要件を満たしている。
【００８１】
また、図９は、ｖ＿ｓｔｏｐ＞Ｖ＿ＡＰＰＲＯＡＣＨ、すなわち速度超過で終了するため、停止直前速度の要件を満たすことができない。実際にこのような駆動が発生する主たる原因は、主に減速領域におけるコギングによるトルク変動の影響により、Ｓ＿ＡＰＰＲＯＡＣＨに到達した瞬間の速度が過剰であるためであるが、Ｓ＿ＳＴＯＰの位置がちょうどモータのトルク変動により速度が速くなるポイント１００４に対応する位相角である場合にも、同様の結果をもたらしうる。
【００８２】
一方、図１０は、ｔ＿ａｐｐｒｏａｃｈ＞Ｔ＿ＡＰＰＲＯＡＣＨ、すなわち時間超過で終了するため、駆動所要時間の要件を満たすことができない。実際にこのような駆動が発生する主たる原因は、主に減速領域におけるコギングによるトルク変動の影響により、Ｓ＿ＡＰＰＲＯＡＣＨに到達するかなり以前から速度が落ちてしまうためであるが、Ｓ＿ＳＴＯＰの位置がちょうどモータの速度が遅くなるポイント１００５に対応するの位相角である場合にも、同様の結果をもたらしうる。
【００８３】
図１１は、本実施形態における駆動制御処理を説明するフローチャートであり、図１２は、図１１の各処理に関わる信号の状態を速度プロファイルと共に同じ時間軸上に示したタイミングチャートである。
【００８４】
ステップＳ１１０１１でパワーオンがなされると、ステップＳ１１０１２に進み、デフォルトの値としてｖ＿ａｐｐｒｏａｃｈにはＶ＿ＡＰＰＲＯＡＣＨを、ｓ＿ａｐｒ＿ＳＴＯＰにはＳ＿ＡＰＲ＿ＳＴＯＰが設定される。
【００８５】
ステップＳ１１１０１では、駆動命令が発行されない状態で経過した時間をカウントするためのタイマカウンタｗａｉｔｔｉｍｅ＿ｃｏｕｎｔｅｒに０を代入して初期化する。
【００８６】
ステップＳ１１０１３では、プリンタシステムにおいて駆動命令が発行されたか否かを判定し、駆動命令が来ていなければ待機処理を行うべくステップ１１１０２に進み、駆動命令が来ていれば駆動制御を開始すべくステップＳ１１００１に進む。
【００８７】
ステップＳ１１１０２では、タイマカウンタｗａｉｔｔｉｍｅ＿ｃｏｕｎｔｅｒをカウントアップし、ステップＳ１１１０３で５ｍｓｅｃの時間待機する。そしてステップＳ１１１０４で、タイマカウンタｗａｉｔｔｉｍｅ＿ｃｏｕｎｔｅｒの値が、閾値ＷＡＩＴＴＩＭＥ＿ＬＩＭＩＴに達しているか否かの判定を行う。この閾値ＷＡＩＴＴＩＭＥ＿ＬＩＭＩＴの値は、環境温度やモーター蓄熱状態などが変化している可能性のある時間に相当する値である。
【００８８】
ｗａｉｔｔｉｍｅ＿ｃｏｕｎｔｅｒの値がＷＡＩＴＴＩＭＥ＿ＬＩＭＩＴ未満であれば、ステップＳ１１０１３に戻り、再度駆動命令がくるのを待つ。一方、ｗａｉｔｔｉｍｅ＿ｃｏｕｎｔｅｒの値がＷＡＩＴＴＩＭＥ＿ＬＩＭＩＴ以上であれば、ステップＳ１１０１２に戻り、ｖ＿ａｐｐｒｏａｃｈ及びｓ＿ａｐｒ＿ＳＴＯＰをデフォルトの値に戻す。
【００８９】
ステップＳ１１００１で駆動制御処理が開始されると、ステップＳ１１００２で駆動制御準備手段が行われる。ここで行われる処理については後述するが、その概略は、一般的にモータ制御タスクに記述される処理であり、駆動目的に適したテーブルの選択、駆動量に合致したＴ＿ＦＬＡＴの設定、本発明の主題である評価手段の結果を次回の駆動で使用する理想速度プロファイルに反映させる処理、各種ワーク領域の設定を行い、最後にタイマ割り込み処理を司るタイマに起動をかけて終了する。
【００９０】
ステップＳ１１００２でタイマが起動されると、ステップＳ１１００３で示された実駆動処理に移行する。この処理は、一般的にタイマ割り込み処理内に記述される処理であり、たとえば１ｍｓｅｃ毎に１回の割り込みを行い、エンコーダの値を読み出し、ＰＩＤ演算等により出力すべき電流の値を算出し、モータに対して算出した値を出力するものである。
【００９１】
ステップＳ１１００３の処理と並行して、システムにおいては停止位置Ｓ＿ＳＴＯＰに到達したかどうかの監視が行われており、到達が検知されると駆動目標位置への到達検知処理ステップＳ１１００４が起動されて割り込みが発生し、ステップＳ１１００５の駆動制御終了処理へと処理は移行する。
【００９２】
ステップＳ１１００５においては、モータに対する出力をいち早くディセーブルにしてからタイマを停止し、本発明の主題である評価処理を実行して処理を終了する。
【００９３】
以上の各処理を行うことで、１つの駆動処理はステップＳ１１００６の駆動制御終了へと至ることになる。
【００９４】
図１３は、ステップＳ１１００２の駆動制御準備処理での動作を詳細に示すフローチャートである。
【００９５】
駆動制御準備処理においては、駆動目的及び駆動量に適したテーブルの選択を行い、該テーブルのｖ＿ａｐｐｒｏａｃｈ、Ｖ＿ＦＬＡＴ、Ｔ＿ＤＥＣ、ｓ＿ａｐｒ＿ＳＴＯＰ、Ｖ＿ＳＴＡＲＴ、Ｔ＿ＡＤＤ、Ｔ＿ＦＬＡＴを取得する。シリアルプリンタ装置においては、処理速度の高速化、静音化、給紙モータとの同期制御等のために、ラインフィードモータに関して複数種類のテーブルを持つことが一般的であり、ここで使用するテーブルの選択を行うものとする。ここでは、更にＴ＿ＤＥＣを変数領域ｔ＿ｄｅｃに、Ｓ＿ＤＥＣを変数領域ｓ＿ｄｅｃに格納する場合について説明する。
【００９６】
ステップＳ１３００１では、該テーブルに適したフィードバック制御のゲイン設定等を行う。ここでの処理は従来より行われている処理と同様であり、本実施形態の主題とするところではないため説明を省略する。
【００９７】
ステップＳ１３０００は理想位置プロファイル生成処理であり、理想位置プロファイル８００１を生成するための処理であり、その詳細を以下に説明する。
【００９８】
ステップＳ１３００２では加速駆動プロファイルを生成する。ここで行われる処理は従来より行われている処理と同様であり、例えば、加速駆動プロファイルとしては、時間を入力とし速度を出力とする１次関数または３次関数を用い、該出力を加算していくことで位置プロファイルを得る方法が一般的である。
【００９９】
ステップＳ１３００３では定速駆動プロファイルを生成する。ここで行われる処理も従来より行われている処理と同様であり、例えば、定速駆動プロファイルとしては、Ｖ＿ＦＬＡＴにより駆動した場合の位置の変化を計算する方法が一般的である。
【０１００】
ステップＳ１３００４では減速駆動プロファイルを生成する。これは本実施形態の特徴的な処理であり、以下で詳細について説明する。
【０１０１】
ステップＳ１３００５において、時刻値Ｔｘを初期化し、時刻Ｔｘに到達すべき理想位置Ｓ（Ｔｘ）の初期値として、減速開始位置であるｓ＿ｄｅｃを設定する。
【０１０２】
ステップＳ１３００６では、速度の３次減速曲線により時刻Ｔｘにおける理想速度Ｖ（Ｔｘ）を算出する。本実施形態において速度の３次減速曲線は、以下の式により求めることができる。すなわち、
Ｖ（Ｔｘ）＝（Ｖ＿ＦＬＡＴ−ｖ＿ａｐｐｒｏａｃｈ）　（２Ｔｘ−３ｔ＿ｄｅｃ）Ｔｘ２／ｔ＿ｄｅｃ３＋Ｖ＿ＦＬＡＴ
である。
【０１０３】
この式からわかるように、ｖ＿ａｐｐｒｏａｃｈの変化に追従して、フレキシブルに曲線を変化させうる構造となっているところに特徴がある。もちろん本発明で使用する減速曲線はこの３次減速曲線に限定されるものではなく、系の適性に応じて、１次減速曲線やその他の関数で示される曲線であってもよく、ｖ＿ａｐｐｒｏａｃｈの変化を反映させうる曲線であれば、いかなる減速曲線においても本発明の意図する効果を享受することができる。
【０１０４】
ステップＳ１３００７では、Ｓ（Ｔｘ）に対してＶ（Ｔｘ）を加算しうることで、Ｔｘ＋１において到達すべき理想位置Ｓ（Ｔｘ＋１）を算出する。
【０１０５】
ステップＳ１３００８では、Ｔｘをインクリメントする。そしてステップＳ１３００９で、カウンタＴｘの値が理想減速制御領域９００１の終了を意味する値ｔ＿ｄｅｃになるまで、ステップＳ１３００６〜Ｓ１３００８の処理が繰り返されて各ＴｘにおけるＶ（Ｔｘ）、Ｓ（Ｔｘ）の計算が続けられる。
【０１０６】
以上の処理が終了すると、ステップＳ１３０１０に進み、プロファイル計算で加算した時刻カウンタＴｘを実際の制御に備えて再度初期化したり、タイマを起動するための各種設定等を行う。ここでの処理は従来行われているものと同様であるので説明を省略する。
【０１０７】
そしてステップＳ１３０１１によりタイマの起動を行うと、ステップＳ１３０１２で本駆動制御準備処理は終了する。
【０１０８】
図１４は、ステップＳ１１００３の実駆動処理で行われる動作を示したフローチャートであり、タイマ割り込みが発生する毎に遂行される処理について示したものである。
【０１０９】
タイマ割り込みが発生してステップＳ１１００３が起動されると、ステップＳ１４００１に進み、エンコーダ位置情報変換手段６００９によって現在位置を得てＳ（Ｔｘ）への代入が行われる。
【０１１０】
次にステップＳ１４００２において、位置決め制御領域２０１４に到達しているか否かを判定し、まだ到達していなければステップＳ１４０１１に、到達していればステップＳ１４００５に進む。
【０１１１】
ステップＳ１４０１１では、理想減速制御領域９００１内にいるか否かを判定し、まだ該領域内にいる場合にはステップＳ１４００３に、逸脱してしまっている場合にはステップＳ１４０１２に進む。
【０１１２】
ステップＳ１４００３では、理想位置プロファイル生成処理１３０００で生成した位置プロファイルから、現時刻Ｔｘに該当する位置情報を理想位置プロファイルとして採用し、ステップＳ１４００４に進む。
【０１１３】
一方、ステップＳ１４０１２では、すでに理想位置プロファイル生成処理ステップＳ１３０００で生成される領域を逸脱しているため、該理想位置プロファイルの最終的な傾きを用いて、該理想位置プロファイルの終点から伸ばした直線を生成し、仮想の理想位置プロファイルとして採用し、ステップＳ１４００４に進む。
【０１１４】
ステップＳ１４００４では、以上により得た位置指令値を用い、図６に示した位置サーボ制御６０００を実行させ、ステップＳ１４００７に進む。
【０１１５】
ステップＳ１４００５では、理想速度プロファイルとして、ｖ＿ａｐｐｒｏａｃｈを採用し、該値を速度指令値として、ステップＳ１４００６で図７に示した速度サーボ制御７０００を実行させ、ステップＳ１４００７に進む。
【０１１６】
ステップＳ１４００７では、演算結果の電流値をモータに出力し、ステップＳ１４００８で割り込み内の処理を終了する。
【０１１７】
図１５は、ステップＳ１１００５の駆動制御終了処理で行われる動作を説明するフローチャートである。
【０１１８】
ステップＳ１５００１で出力電流をディセーブルにしタイマを停止すると、ステップＳ１５００２の評価処理に進む。この評価処理は本実施形態において特徴的な処理であり、以下で詳細について説明する。
【０１１９】
まずステップＳ１５０２１で、理想値であるＴ＿ＡＰＰＲＯＡＣＨと、現実に要したｔ＿ａｐｐｒｏａｃｈとの差をとり、ｄｉｆ＿ａｐｐｒｏａｃｈに代入し、ステップＳ１５００３に進む。
【０１２０】
ｓｔｕｄｙＰｒｍは、ｔ＿ａｐｐｒｏａｃｈが理想値から逸脱している度合いを、次の駆動におけるｖ＿ａｐｐｒｏａｃｈに反映させるための改善係数である。
【０１２１】
ステップＳ１５００３において、ｄｉｆ＿ａｐｐｒｏａｃｈとＳＴＵＤＹ＿Ｔ＿ＨＩＳＰＥＥＤＬＩＭＩＴを比較する。そして、ｄｉｆ＿ａｐｐｒｏａｃｈが小さすぎる場合には、ステップＳ１５０１１に進んで、ｓｔｕｄｙＰｒｍとしてｓｔｕｄｙ＿ｐｒｍ＿ｅｍｅｒｇｅｎｃｙを採用する。一方、小さすぎない場合にはステップＳ１５００４に進んで、ｓｔｕｄｙ＿ｐｒｍ＿ｎｏｒｍａｌを採用する。ここで、ｓｔｕｄｙ＿ｐｒｍ＿ｅｍｅｒｇｅｎｃｙ＞ｓｔｕｄｙ＿ｐｒｍ＿ｎｏｒｍａｌである。
【０１２２】
該処理は、ｔ＿ａｐｐｒｏａｃｈがあまりにも短すぎて、減速しきらないままにＳ＿ＳＴＯＰに到達してしまい、ｖ＿ｓｔｏｐが高速になってしまう場合を想定している。かかる場合にはステップＳ１５０１１でｓｔｕｄｙ＿ｐｒｍ＿ｅｍｅｒｇｅｎｃｙを採用することで、後述するステップＳ１５００７での計算により、最終的に評価処理Ｓ１５００２で出力されるｖ＿ａｐｐｒｏａｃｈはより低くなる。すなわち、ｓｔｕｄｙ＿ｐｒｍ＿ｎｏｒｍａｌにより計算したｖ＿ａｐｐｒｏａｃｈを用いた場合よりも、次の駆動におけるｔ＿ａｐｐｒｏａｃｈはより急激に長くなることが期待でき、ｖ＿ｓｔｏｐが高速になってしまい停止位置の精度が保証されないという問題を改善できる。
【０１２３】
なお、ｓｔｕｄｙ＿ｐｒｍ＿ｅｍｅｒｇｅｎｃｙをいかなる場合にもｓｔｕｄｙＰｒｍとして採用すると、ｔ＿ａｐｐｒｏａｃｈが長い場合に、より急激なｔ＿ａｐｐｒｏａｃｈの短縮を招いて、次の駆動におけるｖ＿ｓｔｏｐが高速になってしまうという弊害が生じるが、ステップＳ１５００３による判定においてそのような状態となった場合の分岐先をステップＳ１５００４にしているため、そのような場合にはｓｔｕｄｙ＿ｐｒｍ＿ｎｏｒｍａｌが採用される。
【０１２４】
ステップＳ１５００５及びＳ１５００６では、ｄｉｆ＿ａｐｐｒｏａｃｈの絶対値とＳＴＵＤＹ＿Ｔ＿ＩＮＰＵＴＬＩＭＩＴを比較し、ｄｉｆ＿ａｐｐｒｏａｃｈの絶対値が大きい場合には、ステップＳ１５０１２又はＳ１５０１３において、その値を最大リミット値である±ＳＴＵＤＹ＿Ｔ＿ＩＮＰＵＴＬＩＭＩＴに変更する。該処理は、突発的で極大な外乱の影響を押さえるための処理である。
【０１２５】
このように、ステップＳ１５００３、Ｓ１５０１１、Ｓ１５００４、Ｓ１５００５、Ｓ１５００６、Ｓ１５０１２、Ｓ１５０１３は、本実施形態におけるｖ＿ａｐｐｒｏａｃｈの計算において、非常に有効な作用を実現している。
【０１２６】
これらの処理の目的は、図９に関して説明したように、ｖ＿ｓｔｏｐ＞Ｖ＿ＡＰＰＲＯＡＣＨ、すなわち速度超過で終了して停止直前速度の要件を満たすことができない場合と、図１０に関して説明したように、ｔ＿ａｐｐｒｏａｃｈ＞Ｔ＿ＡＰＰＲＯＡＣＨ、すなわち時間超過で終了して駆動所要時間の要件を満たすことができない場合の双方を改善することにある。
【０１２７】
ここで、ラインフィードモータの位置決め制御においては、停止位置精度の保証はいかなる状況でも達成されなければならないが、駆動所要時間は平均的に達成されていれば許され、許容される範囲内であれば達成されない場合が生じても問題とはならない。
【０１２８】
従って、停止直前速度ｖ＿ｓｔｏｐがＶ＿ＡＰＰＲＯＡＣＨを超過している場合には早急な改善が必要とされるが、駆動所要時間については、その改善によりｖ＿ｓｔｏｐの悪化を招いてしまう可能性がある場合には、たとえ改善効果が鈍くなったとしても慎重に進める必要がある。ステップＳ１５００３、Ｓ１５０１１、Ｓ１５００４、Ｓ１５００５、Ｓ１５００６、Ｓ１５０１２、Ｓ１５０１３での処理は、この点を考慮している。
【０１２９】
ステップＳ１５００７は、本実施形態において最も重要な処理であり、評価処理の核をなすものである。
【０１３０】
すなわち、理想のＴ＿ＡＰＰＲＯＡＣＨから、終了した駆動で実際に検出されたｔ＿ａｐｐｒｏａｃｈを引いた差ｄｉｆ＿ａｐｐｒｏａｃｈに、適切な係数ｓｔｕｄｙＰｒｍをかけ、それを現在のｖ＿ａｐｐｒｏａｃｈから引くことで、次の駆動で使用されるｖ＿ａｐｐｒｏａｃｈを算出する。
【０１３１】
以上の処理が終了すると、ステップＳ１５００８で処理を終了する。
【０１３２】
ここで、ステップＳ１５００７での処理による作用について、図１６、１７、１８、１９を用いて以下で具体的に説明する。
【０１３３】
図１６は、図９のｖ＿ｓｔｏｐが超過状態となる場合の駆動を示すグラフに、コギングによるトルク変動を明示した現実速度プロファイルの曲線１６００６を追加したグラフであり、図１７は、ステップＳ１５００７の処理が行われた後の駆動状態を示したグラフである。
【０１３４】
上述のように、このような駆動が発生する主たる原因は、実際にこのような駆動が発生する主たる原因は、主に減速領域におけるコギングによるトルク変動の影響により、Ｓ＿ＡＰＰＲＯＡＣＨに到達した瞬間の速度が過剰であるためであるが、Ｓ＿ＳＴＯＰの位置がちょうどモータのトルク変動により速度が速くなるポイント１００５に対応する位相角である場合にも、同様の結果をもたらしうる。図１６は、この２つの要因を、わかりやすくするため同時に示したものである。
【０１３５】
ここで、ステップＳ１５００７の処理は、ｔ＿ａｐｐｒｏａｃｈが短すぎることを改善するため、図１７に示したように、次の駆動のｖ＿ａｐｐｒｏａｃｈを減少させることで位置決め制御領域２０１４の平均速度を落としてｔ＿ａｐｐｒｏａｃｈの増加とｖ＿ｓｔｏｐの低速化をはかる方向に作用する。
【０１３６】
図１８は、図１０のｔ＿ａｐｐｒｏａｃｈが超過状態となる場合の駆動を示すグラフに、コギングによるトルク変動を明示した現実速度プロファイルの曲線１８００６を追加して示したグラフであり、図１９は、ステップＳ１５００７の処理が行われた後の駆動状態を示したグラフである。
【０１３７】
上述のように、実際にこのような駆動が発生する主たる原因は、主に減速領域におけるコギングによるトルク変動の影響により、Ｓ＿ＡＰＰＲＯＡＣＨに到達するかなり以前から速度が落ちてしまうためであるが、Ｓ＿ＳＴＯＰの位置がちょうどモータの速度が遅くなるポイント１００に対応する位相角である場合にも、同様の結果をもたらしうる。図１８は、この２つの要因を、わかりやすくするために同時に示したものである。
【０１３８】
ここで、ステップＳ１５００７の処理は、ｔ＿ａｐｐｒｏａｃｈが長すぎることを改善するため、図１９に示したように、次の駆動のｖ＿ａｐｐｒｏａｃｈを増加させることで位置決め制御領域２０１４の平均速度を上げてｔ＿ａｐｐｒｏａｃｈの減少とｖ＿ｓｔｏｐの高速化をはかる方向に作用する。
【０１３９】
図２０は、改善係数ｓｔｕｄｙＰｒｍに代入される変数ｓｔｕｄｙ＿ｐｒｍ＿ｅｍｅｒｇｅｎｃｙ及びｓｔｕｄｙ＿ｐｒｍ＿ｎｏｒｍａｌの設定処理を示すフローチャートであり、この図を参照して本発明の特徴的な制御の詳細について説明する。
【０１４０】
まずステップＳ２０００１で、本発案の適用対象であるシリアルプリンタ装置の電源が投入されるとステップＳ２０００２に進む。ｌｆ＿ｃｏｕｎｔｅｒは、装置起動後ラインフィードモータが駆動された回数を記憶するためのカウンタであり、電源投入直後にはステップＳ２００２で０にリセットされる。
【０１４１】
ステップＳ２０００３で、ｌｆ＿ｃｏｕｎｔｅｒと、起動後何回ラインフィードモータを駆動したら改善係数の値を変更するかの判定の基準値であるＳＴＵＤＹ＿ＳＴＡＲＴＣＡＳＥとを比較する。ＳＴＵＤＹ＿ＳＴＡＲＴＣＡＳＥに、たとえば整数３を採用すると、電源投入後３回の駆動まではステップＳ２０００５に進み、それ以降の駆動ではステップＳ２０００４に進むことになる。
【０１４２】
ステップＳ２０００５は、電源投入後の駆動回数が少なく、制御が理想状態から離れていると想定される場合に行われる処理であり、改善係数として大きめの値が設定される。本実施形態では基本となる改善係数ＳＴＵＤＹ＿ＰＲＭ＿ＢＡＳＥの４倍の数値をｓｔｕｄｙ＿ｐｒｍ＿ｅｍｅｒｇｅｎｃｙに、２倍の数値をｓｔｕｄｙ＿ｐｒｍ＿ｎｏｒｍａｌに設定する。
【０１４３】
一方、ステップＳ２０００４は、電源投入後に充分な回数だけ駆動された場合に行われる処理であり、改善係数として小さめの値が設定される。本実施形態では基本となる改善係数ＳＴＵＤＹ＿ＰＲＭ＿ＢＡＳＥの２倍の数値をｓｔｕｄｙ＿ｐｒｍ＿ｅｍｅｒｇｅｎｃｙに、１倍の数値をｓｔｕｄｙ＿ｐｒｍ＿ｎｏｒｍａｌに設定する。
【０１４４】
ステップＳ２０００６では、モータの駆動を開始する。ここでの駆動は、ステップＳ２０００４またはステップＳ２０００５で設定された改善係数を使用して行われる。
【０１４５】
ステップＳ２０００７で駆動が終了すると、ステップＳ２０００８でｌｆ＿ｃｏｕｎｔｅｒの値がインクリメントされる。
【０１４６】
以上説明したように本実施形態では、駆動命令を待機している間の経過時間が、環境温度やモーター蓄熱状態などが変化している可能性のある時間以上となった場合に、パラメータｖ＿ａｐｐｒｏａｃｈ及びｓ＿ａｐｒ＿ＳＴＯＰをデフォルトの値に戻す。
【０１４７】
このようにすると、装置の状態がパラメータを設定した時点と異なっている可能性が高い状況において、パラメータを適切なタイミングで一旦デフォルト値に戻して再度設定することができ、現時点により適した駆動制御を行うことができる。
【０１４８】
なお、上記の説明では、駆動が行われない待機時間が予め設定した時間以上となったときに装置の情報が変化した可能性が高いと判断しているが、センサなどを用いて実際に温度等の装置の使用状況（環境）に関する情報を測定し、その値が予め設定した範囲を越えた場合にパラメータをデフォルト値に戻すようにしてもよい。
【０１４９】
＜第２の実施形態＞
次に、本発明に係る第２の実施形態について説明する。なお、以下の説明においては上記第１の実施形態と同様な部分については説明を省略し、第２の実施形態の特徴的な部分を中心に説明する。
【０１５０】
本実施形態は、搬送負荷の異なる記録媒体を使用する際に、パラメータの設定を変更するように、第１の実施形態における図１１に示した処理のみに変更を加えたものであるため、該当部分の処理と作用・効果を中心に説明を行う。
【０１５１】
図２１は、本実施形態における搬送部の機械的構成を示す概略図であり、（ａ）は記録媒体として普通紙を搬送している場合、（ｂ）は記録媒体としてＣＤ−Ｒを使用する場合に使用されるＣＤ−Ｒトレイを搬送している場合をそれぞれ示している。
【０１５２】
搬送対象となる記録媒体としての普通紙２０００３又はＣＤ−Ｒトレイ２１００３は、搬送ローラ１１０とピンチローラ１１１によって、両面を支持されている。モータギア１０８の回転力は搬送ローラギア１０９を介して搬送ローラ１１０へ伝達される。ピンチローラ１１１は、ピンチローラばね２０００１により搬送ローラ１１０に適切な圧力で押し付けられており、普通紙２０００３又はＣＤ−Ｒトレイ２１００３が搬送ローラ１１０から浮き上がることを防いでいる。これらの構成により、搬送ローラ１１０からの搬送力は普通紙２０００３、ＣＤ−Ｒトレイ２１００３に対して少ないエネルギー損失で伝達され、これら記録媒体は搬送ローラ１１０とピンチローラ１１１が回転することによって搬送される。
【０１５３】
ＣＤ−Ｒトレイ２１００３は普通紙２０００３よりも厚いため、（ｂ）に示すピンチローラ１１１と搬送ローラ１１０との間隔は、（ａ）と比べて離間した状態となる。このとき、ピンチローラばね２０００１は激しく縮んでいる。
【０１５４】
理想的な搬送機構としては記録媒体の種類にかかわらず搬送負荷が等しくなることが望ましい。しかしながら現実的には、例えば図示したピンチローラばね２０００１の圧力の違い等により、記録媒体の種類により搬送負荷が変わってしまうことが多い。本実施形態はこのような場合においても理想的なモータ制御が行えるようにするものである。
【０１５５】
以下、本実施形態における駆動制御処理を、図２２のフローチャートを参照して説明する。なお、図２２において図１１と同じ処理は同じ参照符号で示している。
【０１５６】
ステップＳ１１０１１でパワーオンがなされると、ステップＳ２２００１に進み、搬送しようとしている記録媒体の種類を表す変数ｐｒｔｍｅｄｉａ＿ｎｏｗを、未定であることを意味する定数ＰＲＴＭＥＤＩＡ＿ＵＮＫＯＷＮで初期化する。
【０１５７】
ステップＳ２２００２では、駆動命令が発行されたか否かを判定し、駆動命令が来るまで待機し、駆動命令が来たらステップＳ２２００３に進む。ステップＳ２２００３では、これから搬送しようとしている記録媒体の種類を識別し、普通紙であればステップＳ２２００４に進み、厚紙であればステップＳ２２００５に進み、ＣＤ−ＲトレイであればステップＳ２２００６に進む。記録媒体の種類の識別は、たとえばホストコンピュータから送信されるコマンドを解析することなどによって容易に行うことができる。
【０１５８】
ステップＳ２２００４では、直前の駆動を行ったときの記録媒体の種類を表す情報が格納されている変数ｐｒｔｍｅｄｉａ＿ｎｏｗを参照し、該変数の値がこれから搬送しようとしている普通紙と同じであるか否かを判定する。変数の値が普通紙と同じであればステップＳ１１００１に進んで駆動制御を開始し、一方、普通紙でないならばステップＳ２２００７に進む。
【０１５９】
ステップＳ２２００７では、変数ｐｒｔｍｅｄｉａ＿ｎｏｗに、普通紙を意味する定数ＰＲＴＭＥＤＩＡ＿ＮＯＲＭＡＬを代入する。そして、ステップＳ２２０１０へ進んで、ｖ＿ａｐｐｒｏａｃｈにはＶ＿ＡＰＰＲＯＡＣＨを、ｓ＿ａｐｒ＿ＳＴＯＰにはＳ＿ＡＰＲ＿ＳＴＯＰを設定してデフォルト値に戻す。この後、ステップＳ１１００１に進んで駆動制御を開始する。
【０１６０】
ステップＳ２２００５では、直前の駆動を行ったときの記録媒体の種類を表す情報が格納されている変数ｐｒｔｍｅｄｉａ＿ｎｏｗを参照し、該変数の値がこれから搬送しようとしている厚紙と同じであるか否かを判定する。変数の値が厚紙と同じであればステップＳ１１００１に進んで駆動制御を開始し、一方、厚紙でないならばステップＳ２２００８に進む。
【０１６１】
ステップＳ２２００８では、変数ｐｒｔｍｅｄｉａ＿ｎｏｗに、厚紙を意味する定数ＰＲＴＭＥＤＩＡ＿ＳＰＥＣＩＡＬを代入する。そして、ステップＳ２２０１０へ進んで、ｖ＿ａｐｐｒｏａｃｈにはＶ＿ＡＰＰＲＯＡＣＨを、ｓ＿ａｐｒ＿ＳＴＯＰにはＳ＿ＡＰＲ＿ＳＴＯＰを設定してデフォルト値に戻す。この後、ステップＳ１１００１に進んで駆動制御を開始する。
【０１６２】
ステップＳ２２００６では、直前の駆動を行ったときの記録媒体の種類を表す情報が格納されている変数ｐｒｔｍｅｄｉａ＿ｎｏｗを参照し、該変数の値がこれから搬送しようとしているＣＤ−Ｒと同じであるか否かを判定する。変数の値がＣＤ−Ｒと同じあればステップＳ１１００１に進んで駆動制御を開始し、一方、ＣＤ−ＲでないならばステップＳ２２００８に進む。
【０１６３】
ステップＳ２２００８では、変数ｐｒｔｍｅｄｉａ＿ｎｏｗに、ＣＤ−Ｒを意味する定数ＰＲＴＭＥＤＩＡ＿ＣＤＲを代入する。そして、ステップＳ２２０１０へ進んで、ｖ＿ａｐｐｒｏａｃｈにはＶ＿ＡＰＰＲＯＡＣＨを、ｓ＿ａｐｒ＿ＳＴＯＰにはＳ＿ＡＰＲ＿ＳＴＯＰを設定してデフォルト値に戻す。この後、ステップＳ１１００１に進んで駆動制御を開始する。
【０１６４】
ステップＳ１１００１からＳ１１００６までの処理は、第１の実施形態における処理と同様であり、詳細な説明は省略する。ステップＳ１１００６の駆動制御終了処理が終わると、ステップＳ２２００２に戻って処理を続行する。
【０１６５】
以上説明したように本実施形態によれば、図２１に示したように、搬送負荷の異なる記録媒体を使用する場合においても、記録媒体の種類が変化するごとにパラメータｖ＿ａｐｐｒｏａｃｈ及びｓ＿ａｐｒ＿ＳＴＯＰがデフォルトの値に戻されるため、異なる記録媒体に対して最適化されたパラメータを使用することがなく、一方、同じ記録媒体を使用する際には該記録媒体に対して最適化されたパラメータを使用するようにして、使用される記録媒体に適した搬送制御を行うことができる。
【０１６６】
＜第３の実施形態＞
次に、本発明に係る第３の実施形態について説明する。なお、以下の説明においては上記第１及び第２の実施形態と同様な部分については説明を省略し、第３の実施形態の特徴的な部分を中心に説明する。
【０１６７】
本実施形態は、第１の実施形態において積分補償量の初期値を０とした場合に起こる弊害を防止するものであり、第１の実施形態と異なる処理とその作用・効果について説明を行う。
【０１６８】
図２３は、本実施形態におけるモータの制御において外乱の及ぼす影響と実際の制御との関係を図８と同様に示した図である。図中、横軸は時間を示しており、２００１の縦軸は速度を、２００２の縦軸は位置を示している。
【０１６９】
図２３では停止直前速度ｖ＿ｓｔｏｐが、平均的かつ理想的な値Ｖ＿ＡＰＰＲＯＡＣＨで終了する場合を示している。
【０１７０】
２３００１は理想位置プロファイルを示しており、２００４は理想速度プロファイルを示している。該理想位置プロファイル２３００１は、加速制御領域２０１１、定速制御領域２０１２、減速制御領域２０１３、位置決め制御領域２０１４の４つの制御領域により構成されている。
【０１７１】
２００４の理想速度プロファイル２００４において、Ｖ＿ＳＴＡＲＴは初速度であり、Ｖ＿ＦＬＡＴは定速制御領域２０１２の速度を示している。Ｖ＿ＡＰＰＲＯＡＣＨは位置決め制御領域の速度を示しており、Ｖ＿ＰＲＯＭＩＳＥは位置決め精度性能を達成するために絶対に守られなければならない停止直前速度の最速値を示している。ｖ＿ｓｔｏｐは、現実の駆動を想定した場合に外乱によってあらゆる値に変化する現実の値としての停止直前速度である。実際の駆動における速度変動を考慮して、Ｖ＿ＡＰＰＲＯＡＣＨはいかなる速度変動が発生してもｖ＿ｓｔｏｐがＶ＿ＰＲＯＭＩＳＥを超えることがないよう充分に低く設定された速度であることが要求される。
【０１７２】
本実施形態においては、加速制御領域２０１１、定速制御領域２０１２、及び減速制御領域２０１３では位置サーボを採用し、位置決め制御領域２０１４では速度サーボを採用している。理想位置プロファイル２３００１の曲線は、位置サーボにおける理想位置のプロファイルを示している。理想速度プロファイル２００４の曲線は、速度サーボ時には理想速度のプロファイルを示し、位置サーボ時には理想位置プロファイル２３００１に追従して動作するために求められる要求速度プロファイルを示している。
【０１７３】
理想位置プロファイル２３００１は、位置サーボを行う２０１１、２０１２、２０１３の各領域に対して設定されるが、Ｓ＿ＡＰＰＲＯＡＣＨまでしか計算されない。これは、Ｓ＿ＡＰＰＲＯＡＣＨを通り過ぎると速度サーボに切り替わるため、Ｓ＿ＡＰＰＲＯＡＣＨ以降では理想位置プロファイルが不必要であるからである。理想位置プロファイル２３００１における減速所要時間Ｔ＿ＤＥＣは、現実の駆動と関わりなく一定であり、これに該当する制御領域を理想減速制御領域２４００１として示すものとする。
【０１７４】
２３００３は、各状態における外乱等の影響を受けた現実位置プロファイルである。位置サーボにおいては、遅れが必ず発生するため、理想位置プロファイル２３００１に対して現実位置プロファイル２３００３はいずれも遅れを持っている。従って、理想位置プロファイル２３００１が終了しても、現実位置はＳ＿ＡＰＰＲＯＡＣＨには到達しないことが一般的であり、本実施形態においては、理想位置プロファイル２３００１が終了してから現実の駆動がＳ＿ＡＰＰＲＯＡＣＨに到達するまでの間には、仮想の理想位置プロファイル２３００６によって位置サーボへの指令位置を代用するものとする。仮想の理想位置プロファイル２３００６は、理想位置プロファイル２３００１の最終的な傾きを用いて、理想位置プロファイルの終点から伸ばした直線とする。
【０１７５】
２３００５は、物理的なモータの現実速度プロファイルを表している。理想位置プロファイル２３００１を入力としてフィードバック制御をかけていき、理想速度プロファイル２００４に対して若干の遅れを出しつつも、位置決め制御領域２０１４が進むに従って理想速度に近づき、最終的な停止直前速度としては位置決め精度性能を達成できる速度Ｖ＿ＡＰＰＲＯＡＣＨに収束するよう制御される。なお、減速制御領域２０１３から位置決め制御領域２０１４への移行は、物理的な駆動速度状態に関わらず、Ｓ＿ＡＰＰＲＯＡＣＨに達した瞬間に行われるものとする。
【０１７６】
Ｓ＿ＤＥＣは定速制御領域２０１２が終了して減速制御領域２０１３が開始される位置を示しており、あくまでも理想位置プロファイル２３００１によって決定づけられる値であるため、現実の駆動における外乱の影響とは無関連である。
【０１７７】
図中のＳ＿ＡＰＰＲＯＡＣＨは減速制御領域２０１３が終了して位置決め制御領域２０１４が開始される位置を示しており、Ｓ＿ＳＴＯＰは停止位置を示している。Ｔ＿ＡＤＤは加速制御領域２０１１に費やされる所要時間であり、Ｔ＿ＤＥＣは減速制御領域２０１３に費やされる所要時間である。Ｔ＿ＦＬＡＴは定速制御領域２０１２に費やされる時間であり、駆動開始位置を０としたときの停止位置Ｓ＿ＳＴＯＰ、すなわち総駆動距離を満足する理想位置プロファイル２３００１を設定した時点で決定する固定値である。
【０１７８】
Ｔ＿ＡＰＰＲＯＡＣＨは位置決め制御領域２０１４に費やされる時間であり、駆動制御対象が実際に動いたときに、位置決め制御領域２０１４に突入する位置Ｓ＿ＡＰＰＲＯＡＣＨから停止位置Ｓ＿ＳＴＯＰまでの距離Ｓ＿ＡＰＲ＿ＳＴＯＰを移動するのに要する時間である。図２３では、位置決め制御領域２０１４において駆動制御対象がほぼ理想速度通りに動いた場合を示しているが、現実の制御において理想通りの物理的動作は一般的に大変困難である。
【０１７９】
高速かつ高精度の位置決めを行うために、理想位置プロファイル２３００１のカーブをその系に適合するようにチューニングする必要がある。具体的には、定速制御領域２０１２の速度は、位置決め所要時間を短縮するために系の性能の許す限り速く、位置決め制御領域２０１４の速度は、位置決め精度の向上を実現するために系の性能の許す限り遅く、さらに加速制御領域２０１１、減速制御領域２０１３、及び位置決め制御領域２０１４の距離は、位置決め所要時間を短縮するために系の性能の許す限り短くなるように、理想位置プロファイル２３００１を設定することが望ましい。
【０１８０】
しかしながら、このようなチューニングの詳細な手法については本発明の主題ではないので、ここではすでに理想位置プロファイル２３００１が最適に調整されているものとして説明する。
【０１８１】
ｔ＿ａｐｐｒｏａｃｈは、現実の駆動を想定した場合に外乱によってあらゆる値に変化する現実の値として、位置決め制御領域２０１４に費やされる時間を表す変数である。
【０１８２】
なお、本実施形態においても上記実施形態と同様に、定数値を英大文字、変数値を英小文字で示している。同一スペリングの値について英大文字、英小文字の表記がある場合、英大文字で示された値は理想定数値であり、英小文字で示された値は同じ内容の値について変化しうる変数値を示している。
【０１８３】
図２４は、積分補償量の初期値を０とした場合に起こる制御の弊害を、最悪の例を用いて簡略に示したものである。
【０１８４】
図２４における現実速度プロファイル２３００５は、静止摩擦力に打ち勝って動きうる積分補償量に達するまでに、時間ｔ＿ｐｒｏｂｌｅｍを要している。ここでようやく動き出すが、今度はｔ＿ｐｒｏｂｌｅｍまでの時点で過剰に大きくなってしまった位置の偏差を小さくするために、位置サーボのフィードバックが大きくかかり、現実速度プロファイル２３００５は、理想速度プロファイル２００４を大きく超えてしまう。
【０１８５】
やがて位置の偏差が少なくなるにつれて速度は落ちてくるが、対象となる系に対して最適調整されたプロファイルから完全に逸脱しているため、停止位置に近づいても速度が充分に落ちきらない。結果的に、本来は時間Ｔ＿ＤＥＣを要して、Ｖ＿ＡＰＰＲＯＡＣＨに近い速度で到達すべき位置Ｓ＿ＳＴＯＰに、時間Ｔ＿ＤＥＣが経過する前に速すぎる速度ｖ＿ｂａｄで突入してしまうこととなる。この結果オーバーランが発生してｓ＿ｓｔｏｐを行き過ぎてしまい、要求される精度が満たせなくなってしまう。
【０１８６】
図２５は、本実施形態における駆動制御処理を説明するフローチャートであり、図２６は、図２５の各処理に関わる信号の状態を速度プロファイルと共に同じ時間軸上に示したタイミングチャートである。
【０１８７】
ステップＳ２５０１１でパワーオンがなされると、ステップＳ３００００でこれから搬送しようとしている記録媒体の種類を表す情報を格納する変数ｐｒｔｍｅｄｉａ＿ｎｏｗを、未定であることを意味する定数ＰＲＴＭＥＤＩＡ＿ＵＮＫＯＷＮで初期化する。
【０１８８】
次に、ステップＳ２５０５４で、本実施形態の特徴であるところの積分補償量初期値を検出する処理が起動される。
【０１８９】
まず、ステップＳ２５０５１において、積分補償量の初期値を表す変数ｉｎｉｔ＿ｉｎｔｅｇｒａｌ＿ｓｐｄを０で初期化する。本実施形態においてこの値を０で初期化するのは、ステップＳ２５０５１だけである点が重要である。また、ステップＳ２５０５１においては、更に後続のシーケンスで使用されるＬＦモータの送りテーブルを選択している。本実施形態装置においては、ここで選択されるテーブルは低速駆動テーブルであり、一定速度ｖ＿ｔｅｓｔでの速度サーボによる駆動を選択するものとする。
【０１９０】
なお、速度ｖ＿ｔｅｓｔの設定値は、検出せんとする初期積分補償量の値に直接かかわるものであり、系に適切なチューニングの上で定められることが望ましいが、たとえば図２３におけるＶ＿ＡＰＰＲＯＡＣＨを使用することが考えられる。
【０１９１】
ステップＳ２５０５１の処理が終了すると、該当するテーブルによる駆動の処理が、ステップＳ２５０５２で行われる。ステップＳ２５０５２内の各処理は、図２６においても説明されている。
【０１９２】
具体的には、ステップＳ２５００１で駆動制御処理が開始されると、ステップＳ２５００２で駆動制御準備処理が行われる。ここで、積分補償量の初期値ｉｎｉｔ＿ｉｎｔｅｇｒａｌ＿ｓｐｄを、実際にフィードバック制御で使用するワーク領域ｉｎｔｅｇｒａｌ＿ｓｐｄに代入する。ステップＳ２５００２は、一般的にモータ制御タスクに記述される処理であり、ｉｎｔｅｇｒａｌ＿ｓｐｄの設定の他に、駆動目的に適したテーブルの選択、駆動量に合致したＴ＿ＦＬＡＴの設定、本発明の主題である評価手段の結果を次回の駆動で使用する理想速度プロファイルに反映させる反映処理、及び各種ワーク領域の設定を行い、最後にタイマ割り込み処理を司るタイマに起動をかけて終了する。
【０１９３】
ステップＳ２５００２でタイマが起動されると、ステップＳ２５００３で示された実駆動処理に移行する。この処理は、一般的にタイマ割り込み処理内に記述される処理であり、たとえば１ｍｓｅｃ毎に１回の割り込みを行い、エンコーダの値を読み出し、ＰＩＤ演算等により出力すべき電流の値を算出し、モータに対して算出した値を出力するものである。
【０１９４】
ステップＳ２５００３の処理と並行して、システムにおいては停止位置Ｓ＿ＳＴＯＰに到達したかどうかの監視が行われており、到達が検知されると駆動目標位置への到達検知処理ステップＳ２５００４が起動されて割り込みが発生し、ステップＳ２５００５の駆動制御終了処理へ移行する。
【０１９５】
ステップＳ２５００５においては、モータに対する出力をいち早くディセーブルにしてからタイマを停止し、ステップＳ２５００６で処理を終了する。
【０１９６】
ステップＳ２５００６の駆動制御終了処理を終了すると、ステップＳ２５０５３に進み、最適積分補償量初期値の解析を行う。
【０１９７】
以上のようにしてステップＳ２５０５４の積分補償量初期値検出手段を終了すると、ステップＳ３０００１に進み、駆動命令の待機状態となる。プリンタシステムで、給紙、印刷、排紙等の動作が発生する度に、紙送りの駆動命令が発行され、これを受信してステップＳ３０００２に処理は進む。
【０１９８】
ステップＳ３０００２では、すでに搬送ローラ上に記録媒体があるか否かを判定し、ある場合にはステップＳ３０００３に進み、ない場合にはステップＳ３００１２に進んで駆動制御を開始する。
【０１９９】
本実施形態装置においては、記録媒体の種類に適した最適な積分補償量初期値を得ることを意図しており、記録媒体が搬送ローラ上にある状態でステップＳ２５０５４の積分補償量初期値検出処理を実行することで、該記録媒体に適したより厳密な搬送処理を実現するものである。従って、給紙処理実行前で、まだ搬送ローラ上に記録媒体がない状態では、ステップＳ３０００３以降の処理を行っても効果がないことから、それらの処理をスキップしてステップＳ３００１２に進むべく、ステップＳ３０００２の処理で分岐するようにしている。
【０２００】
なお、給紙の場合紙送り中に記録媒体が搬送ローラ上に引き込まれるため搬送負荷は変化してしまうが、この場合に要求される搬送制御の精度は記録実行中における精度よりも低くてよいため、いきなりステップＳ３００１２に進んでも装置としては特に問題はない。
【０２０１】
ステップＳ３０００３では、これから搬送しようとしている記録媒体の種類を識別し、普通紙であればステップＳ３０００４に進み、厚紙であればステップＳ３０００５に進み、ＣＤ−ＲトレイであればステップＳ３０００６に進む。記録媒体の種類の識別は、たとえばホストコンピュータから送信されるコマンドを解析することなどによって容易に行うことができる。
【０２０２】
普通紙であると判定された場合、ステップＳ３０００４では、直前の駆動を行ったときの搬送記録媒体を表す情報が格納されている変数ｐｒｔｍｅｄｉａ＿ｎｏｗを参照し、該変数の値がこれから搬送しようとしている普通紙と同じであれば、ステップＳ３００１２に進んで駆動制御を開始し、普通紙でないならばステップＳ３０００７に進む。
【０２０３】
ステップＳ３０００７では、変数ｐｒｔｍｅｄｉａ＿ｎｏｗに、普通紙を意味する定数ＰＲＴＭＥＤＩＡ＿ＮＯＲＭＡＬを代入し、ステップＳ３００１０へ進んでステップＳ２５０５４の積分補償量初期値検出処理と同様の処理を再度行う。
【０２０４】
ここで、記録媒体を保持した状態でステップＳ３００１０の処理を行ってしまったため、記録媒体が搬送されているため、搬送した距離だけ戻すためにステップＳ３００１１で搬送ローラを逆転させる戻し処理を行う。このあとステップＳ３００１２に進んで駆動制御を開始する。
【０２０５】
厚紙と判定された場合、ステップＳ３０００５で、直前の駆動を行ったときの記録媒体を表す情報が格納されている変数ｐｒｔｍｅｄｉａ＿ｎｏｗを参照し、該変数の値がこれから搬送しようとしている厚紙と同じであればステップＳ３００１２に進んで駆動制御を開始し、厚紙でないならばステップＳ３０００８に進む。
【０２０６】
ステップＳ３０００８では、変数ｐｒｔｍｅｄｉａ＿ｎｏｗに、厚紙を表す定数ＰＲＴＭＥＤＩＡ＿ＳＰＥＣＩＡＬを代入し、ステップＳ３００１０へ進んでステップＳ２５０５４の積分補償量初期値検出処理と同様の処理を再度行う。
【０２０７】
また、ＣＤ−Ｒトレイと判定された場合、ステップＳ３０００６で、直前の駆動を行ったときの記録媒体を表す情報が格納されている変数ｐｒｔｍｅｄｉａ＿ｎｏｗを参照し、該変数の値がこれから搬送しようとしているＣＤ−Ｒと同じであればステップＳ３００１２に進んで駆動制御を開始し、ＣＤ−ＲでないならばステップＳ３０００９に進む。
【０２０８】
ステップＳ３０００９では、変数ｐｒｔｍｅｄｉａ＿ｎｏｗに、ＣＤ−Ｒを表す定数ＰＲＴＭＥＤＩＡ＿ＣＤＲを代入し、ステップＳ３００１０へ進んでステップＳ２５０５４の積分補償量初期値検出処理と同様の処理を再度行う。
【０２０９】
ステップＳ３００１２では、用途に見合った該当する駆動テーブルを選択し、ステップＳ３００１３で駆動処理を行い、駆動処理が終了するとステップＳ３０００１に戻り、駆動命令の待機状態となる。
【０２１０】
図２７は、ステップＳ２５００３の実駆動処理で行われる処理について、特に本発明の特徴となる速度のＰＩ演算部分の詳細に着目して示したフローチャートである。ステップＳ２５００３で行われる処理全体に関しては、位置サーボ時には位置のＰ演算、また速度サーボのループにおけるＤ演算等、他にもさまざまな処理が行われるが、これらの処理は本発明の特徴となるものではなく、また公知の技術であることから説明を省略する。
【０２１１】
ステップＳ２５００３で実駆動処理が起動されると、まずステップＳ２５１０１でエンコーダ速度情報変換手段６００６により現在速度を得てｖ（ｔｘ）に代入する。ここでは説明の簡略化のため、図４における６００７の微分演算、図５における７００３の微分演算に関しては無視して説明を進める。なお、ｔｘは、該当する時刻を示している。
【０２１２】
次にステップＳ２５１０２で、理想速度プロファイルの実値ｖ＿ｉｄｅａｌ（ｔｘ）と、ｖ（ｔｘ）の差をとってｖ＿ｄｉｆｆｅｒｅｎｃｅに代入する。ｖ＿ｉｄｅａｌ（ｔｘ）は、速度サーボ時には、純粋に速度理想プロファイルの値そのものとなるが、図４で説明した位置サーボ時には６００２のＰ演算の結果を使用することになる。
【０２１３】
本実施形態において、ステップＳ２５０５４の処理の実行時には、ｖ＿ｉｄｅａｌ（ｔｘ）にはｖ＿ｔｅｓｔを適用するものとする。この場合、ｖ＿ｉｄｅａｌ（ｔｘ）は時刻の変化には依存しない一定値である。
【０２１４】
ステップＳ２５１０３で、積分ゲインとして予め設定した定数値ＩＮＴＥＧＲＡＬ＿ＰＡＲＡＭによって、ｔｘにおける積分補償量ｉｎｔｅｇｒａｌ＿ｓｐｄを算出する。これが一般的に積分演算と呼ばれるものである。
【０２１５】
ステップＳ２５１０４で、比例ゲインとして予め設定した定数値ＰＲＯＰＯＲＴＩＯＮ＿ＰＡＲＡＭによって、最終的な出力電流値ｏｕｒｐｕｔ＿ｐｗｍを算出する。これが一般的に比例演算と呼ばれるものである。
【０２１６】
ステップＳ２５１０５で、演算結果を駆動対象に対して出力し、ステップＳ２５１０６で、該当時刻ｔｘにおける積分補償量ｉｎｔｅｇｒａｌ＿ｓｐｄを、配列ｍｅｍ＿ｉｎｔｅｇｒａｌ＿ｓｐｄ［ｔｘ］に格納する。配列ｍｅｍ＿ｉｎｔｅｇｒａｌ＿ｓｐｄ［ｔｘ］は、ステップＳ２５０５３において使用される情報を格納しておくための領域である。
【０２１７】
そして、ステップＳ２５１０７で、時刻を示すカウンタｔｘをインクリメントして、ステップＳ２８００８で処理を終了する。
【０２１８】
図２８は、ステップＳ２５０５４の積分補償量初期値検出処理が起動された場合における駆動の様子を速度プロファイルと共に示すタイミングチャートである。
【０２１９】
速度指令値はｖ＿ｔｅｓｔで固定されており、一方積分補償量ｉｎｔｅｇｒａｌ＿ｓｐｄは０から開始されるため、現実速度プロファイル２００５は、時刻０からやや遅れて経ち上がる。その後、一定の時間における速度は、ｖ＿ｔｅｓｔに対して上下に振幅するが、やがてｖ＿ｔｅｓｔに収束する。
【０２２０】
本実施形態においては、該条件においてｖ＿ｔｅｓｔに対する現実速度プロファイルの上下の振幅が、許容可能なレベルに収束することが予想される時間をＴ＿ＳＡＭＰＬＩＮＧ＿ＳＴＡＲＴとし、この時刻から後の積分補償量を、ステップＳ２５０５３の最適積分補償量初期値解析処理において使用する。なお、Ｔ＿ＳＡＭＰＬＩＮＧ＿ＥＮＤは、ステップＳ２５０５３の最適積分補償量初期値解析処理において使用するデータの最後尾を示す時刻である。
【０２２１】
後述するようにステップＳ２５０５３の最適積分補償量初期値解析処理では、Ｔ＿ＳＡＭＰＬＩＮＧ＿ＳＴＡＲＴからＴ＿ＳＡＭＰＬＩＮＧ＿ＥＮＤまでの時間に記録された積分補償量の平均をとるため、この区間において速度が多少上下していても、本実施形態の効果を妨げるものではない。速度０からｖ＿ｔｅｓｔに到達するまでの立ち上りに要する時間領域を、Ｔ＿ＳＡＭＰＬＩＮＧ＿ＳＴＡＲＴによってカットできれば、本実施形態の効果は充分期待できるものである。
【０２２２】
図２９は、ステップＳ２５０５３の最適積分補償量初期値解析処理の詳細を示すフローチートである。
【０２２３】
まずステップＳ２５２０１で、データのアクセスに用いるカウンタｔｘを初期化し、合計値を算出するためのワーク領域ｓｕｍ＿ｉｎｔｅｇｒａｌ＿ｓｐｄを初期化する。
【０２２４】
ステップＳ２５２０２、Ｓ２５２０３、Ｓ２５２０４により、Ｔ＿ＳＡＭＰＬＩＮＧ＿ＳＴＡＲＴからＴ＿ＳＡＭＰＬＩＮＧ＿ＥＮＤまでの時間に記録された積分補償量の合計を取得する。そしてステップＳ２５２０５で、該積分補償量の平均値を算出し、ｉｎｉｔ＿ｉｎｔｅｇｒａｌ＿ｓｐｄに代入して処理を終了する。
【０２２５】
以上述べてきた処理により、積分補償量の初期値は、ｖ＿ｔｅｓｔによる一定速度の駆動を行ったときの定速駆動中の積分補償量の初期値となる。ｖ＿ｔｅｓｔで一定速度の駆動を行いうる積分補償量であるということは、静止摩擦に打ち勝って動くだけの出力電流値に対応する値であるということを意味している。
【０２２６】
従って、本実施形態による駆動制御を図２４に示した駆動と比較すると、時刻０において既に出力電流値が静止摩擦に打ち勝って動き出すに足る値となっているため、静止時間ｔ＿ｐｒｏｂｌｅｍを短縮することができ、より高速で正確な制御を期待することができる。また、ｖ＿ｔｅｓｔをＶ＿ＡＰＰＲＯＡＣＨに設定しておくことにより、この状態で検出された積分補償量の初期値が、Ｖ＿ＦＬＡＴに対して速度のオーバーシュートを誘発する危険性は非常に低くなる。
【０２２７】
更に、積分補償量の検出を、ステップＳ３０００３〜Ｓ３００１０に示した処理により記録媒体ごとに個別に行うことで、使用する記録媒体の特性の違いによる悪影響を回避でき、最適な駆動制御を実現することができる。
【０２２８】
［他の実施形態］
上記で説明した第１から第３の実施形態はそれぞれ単独で実施してもよいし、２つ以上を組合せて実施してもよい。
【０２２９】
以上の実施形態は、シリアル式インクジェットプリンタの記録紙搬送用（ラインフィード；ＬＦ）モータの制御に本発明を適用したものであるが、本発明は、インクジェットプリンタに限らず、モータを使用する様々な機器に適用可能である。
【０２３０】
また、上記の実施形態はいずれもＤＣモータの制御に本発明を適用したものであるが、ＤＣモータ以外でも上記の追値制御等のフィードバック制御が可能なモータであれば、本発明を適用できる。
【０２３１】
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０２３２】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２３３】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０２３４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２３５】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２３６】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した（図１１、１３〜１５、２０、２２、２５、２７、２９に示す）フローチャートに対応するプログラムコードが格納されることになる。
【０２３７】
【発明の効果】
以上説明したように本発明によれば、例えば、機構の駆動が所定時間以上行われていないタイミング、機器に関する情報が所定の範囲内にないと判定されたタイミング、前回の駆動時と機構によって搬送される負荷の種類が変化したと判定されたタイミング等のタイミングで、パラメータの値をデフォルト値に戻し、駆動条件や対象が異なった場合に、パラメータの値が引き継がれることによって生じる不具合を防止することができる。
【０２３８】
従って、起動した後にも所定のタイミングでパラメータの設定を変更し、使用される記録媒体や環境が変化した場合においても高速かつ高精度な位置制御が可能となる。
【図面の簡単な説明】
【図１】ＤＣモータを定速で駆動した場合の速度変動を簡略に示したグラフである。
【図２】ＤＣモータにおいて用いられる理想位置プロファイル追値制御、理想速度プロファイル追値制御を例にして、コギングによるトルク変動の及ぼす影響を説明するための図である。
【図３】本発明の実施形態に係るシリアル式インクジェットプリンタの全体図である。
【図４】図３のプリンタの制御構成を説明するブロック図である。
【図５】図４に示したプリンタコントローラの詳細構成を説明するブロック図である。
【図６】一般的なＤＣモータの位置サーボによる制御手順を示すブロック図である。
【図７】一般的なＤＣモータの速度サーボによる制御手順を示すブロック図である。
【図８】コギングによるトルク変動の及ぼす影響と制御について詳細に説明するための図である。
【図９】コギングによるトルク変動の及ぼす影響と制御について詳細に説明するための図である。
【図１０】コギングによるトルク変動の及ぼす影響と制御について詳細に説明するための図である。
【図１１】第１の実施形態における駆動制御処理を説明するフローチャートでである。
【図１２】図１１の各処理に関わる信号の状態を速度プロファイルと共に同じ時間軸上に示したタイミングチャートである。
【図１３】図１１の駆動制御準備処理で行われる動作を示すフローチャートである。
【図１４】図１１の実駆動処理で行われる動作を示すフローチャートである。
【図１５】図１１の駆動制御終了処理で行われる動作を示すフローチャートである。
【図１６】図９に、コギングによるトルク変動を明示した現実速度プロファイルの曲線を追加したグラフである。
【図１７】図１５のステップＳ１５００７の処理が行われた後の駆動状態を示したグラフである。
【図１８】図１０に、コギングによるトルク変動を明示した現実速度プロファイルの曲線を追加したグラフである。
【図１９】図１５のステップＳ１５００７の処理が行われた後の駆動状態を示したグラフである。
【図２０】改善係数に代入される変数の設定処理を示すフローチャートである。
【図２１】搬送部の機械的構成を概略的に示す図である。
【図２２】第２の実施形態における駆動制御処理を説明するフローチャートでである。
【図２３】第２の実施形態におけるモータの制御において外乱の及ぼす影響と実際の制御との関係を図８と同様に示した図である。
【図２４】積分補償量の初期値を０とした場合に起こる制御の弊害を、最悪の例を用いて簡略に示した図である。
【図２５】第３の実施形態における駆動制御処理を説明するフローチャートである。
【図２６】図２５の各処理に関わる信号の状態を速度プロファイルと共に同じ時間軸上に示したタイミングチャートである。
【図２７】実駆動処理で行われる処理について、速度のＰＩ演算部分の詳細に着目して示したフローチャートである。
【図２８】積分補償量初期値検出処理が起動された場合における駆動の様子を速度プロファイルと共に示すタイミングチャートである。
【図２９】最適積分補償量初期値解析処理の詳細を示すフローチートである。
【符号の説明】
１０１　インクタンクを有する記録ヘッド
１０２　記録ヘッド１０１を搭載するキャリッジ
１０３　ガイドシャフト
１０４　ベルト
１０５　駆動モータ
１０６　給紙ベース
１０７　用紙搬送用モータ
１０８　モータギア
１０９　搬送ローラギア
１１０　搬送ローラ
１１１　ピンチローラ
１１４　シャーシ
１１５　記録用紙
１１６　ロータリーエンコーダフィルム
１１７　エンコーダセンサ
２３１　ホストインターフェース
４０１　プリンタ装置のプリンタ制御用のＣＰＵ
４０２　ＲＯＭ
４０３　ＲＡＭ
４０４　プリンタヘッド
４０５　モータを駆動するモータドライバ
４０６　プリンタコントローラ
４０７　サーミスタ等で構成される温度センサ
５０１　Ｉ／Ｏレジスタ
５０２　受信バッファコントローラ
５０３　記録バッファコントローラ
５０４　メモリコントローラ
５０５　プリントシーケンスコントローラ
１００１　Ｖ＿ｘで駆動したときの速度変動
１００２　２＊Ｖ＿ｘで駆動したときの速度変動
１００３　８＊Ｖ＿ｘで駆動したときの速度変動
１００４　モータ自身が高速で回転してしまう位相角に対応するポイント
１００５　モータ自身が低速で回転してしまう位相角に対応するポイント
２００３　理想位置プロファイル
２００４　理想速度プロファイル
２０１１　加速制御領域
２０１２　定速制御領域
２０１３　減速制御領域
２０１４　位置決め制御領域
２００３　理想位置プロファイル
２００４　理想速度プロファイル
２００５　物理的なモータの現実駆動速度プロファイル
２００６　実際の現実速度プロファイル
２００７　実際の現実速度プロファイル
６００１　理想位置プロファイル
６００５　エンコーダセンサ
６００９　エンコーダ位置情報変換手段
６００６　エンコーダ速度情報変換手段
６００２　位置サーボのメジャーループ
６００３　ＰＩ演算
６００７　微分演算
６００４　ＤＣモータに与えるエネルギー
６００８　外乱
７００１　理想速度プロファイル
７００２　ＰＩ演算
７００３　微分演算
８００１　理想位置プロファイル
８００３　現実位置プロファイル
８００５　物理的なモータの現実駆動速度プロファイル
８００６　仮想の理想位置プロファイル
９００１　仮想減速制御領域
９００３　現実位置プロファイル
９００５　物理的なモータの現実駆動速度プロファイル
１０００３　現実位置プロファイル
１０００５　物理的なモータの現実駆動速度プロファイル
２０００１　ピンチローラばね
２０００３　普通紙
２１００３　ＣＤ−Ｒトレイ
【図１】
2004088926.tif 000003
【図２】
2004088926.tif 000004
【図３】
2004088926.tif 000005
【図４】
2004088926.tif 000006
【図５】
2004088926.tif 000007
【図６】
2004088926.tif 000008
【図７】
2004088926.tif 000009
【図８】
2004088926.tif 000010
【図９】
2004088926.tif 000011
【図１０】
2004088926.tif 000012
【図１１】
2004088926.tif 000013
【図１２】
2004088926.tif 000014
【図１３】
2004088926.tif 000015
【図１４】
2004088926.tif 000016
【図１５】
2004088926.tif 000017
【図１６】
2004088926.tif 000018
【図１７】
2004088926.tif 000019
【図１８】
2004088926.tif 000020
【図１９】
2004088926.tif 000021
【図２０】
2004088926.tif 000022
【図２１】
2004088926.tif 000023
【図２２】
2004088926.tif 000024
【図２３】
2004088926.tif 000025
【図２４】
2004088926.tif 000026
【図２５】
2004088926.tif 000027
【図２６】
2004088926.tif 000028
【図２７】
2004088926.tif 000029
【図２８】
2004088926.tif 000030
【図２９】
2004088926.tif 000031