(57)【要約】【課題】  モータの駆動量に基づきモータの温度状態をより正確に推測する。【解決手段】  モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、を備えたことを特徴とするモータの過熱判定装置である。【選択図】    図１７
2006033945.tif 000002
【特許請求の範囲】
【請求項１】
モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、
前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
を備えたことを特徴とするモータの過熱判定装置。
【請求項２】
前記モータの駆動動作の合間の停止時間を計測するためのタイマーを備えたことを特徴とする請求項１に記載のモータの過熱判定装置。
【請求項３】
前記モータの駆動量に関する情報は、前記モータの駆動毎に前記情報取得部により取得されることを特徴とする請求項１または２に記載のモータの過熱判定装置。
【請求項４】
前記モータの駆動量に関する情報は、前記モータがその駆動量に基づき駆動される前に前記情報取得部により取得されることを特徴とする請求項１〜３のいずれか１項に記載のモータの過熱判定装置。
【請求項５】
前記演算部は、前記モータの駆動が停止してから所定時間経過する毎に、前記積算値から所定値を減算する演算を実行することを特徴とする請求項１〜４のいずれか１項に記載のモータの過熱判定装置。
【請求項６】
前記モータが前記判定部により過熱状態にあると判定されたときに、前記モータの駆動が制限されることを特徴とする請求項１〜５のいずれか１項に記載のモータ過熱判定装置。
【請求項７】
前記モータの駆動動作の合間の停止時間と、前記減算値とが対応付けられたテーブルを備えたことを特徴とする請求項１〜６のいずれか１項に記載のモータの過熱判定装置。
【請求項８】
前記情報取得部は、前記モータの駆動モードに関する情報を取得し、
前記減算値は、前記情報取得部が取得した前記駆動モードに関する情報および前記停止時間に関する情報に基づき取得されることを特徴とする請求項１〜７のいずれか１項に記載のモータの過熱判定装置。
【請求項９】
前記モータは、前記駆動モードに応じて、加速時の加速度、定速時の速度および減速時の加速度のうちの少なくともいずれか１つが異なることを特徴とする請求項８に記載のモータの過熱判定装置。
【請求項１０】
モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、
前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
前記モータの駆動動作の合間の停止時間を計測するためのタイマーとを備え、
前記モータの駆動量に関する情報は、前記モータの駆動毎に前記情報取得部により取得されるとともに、前記モータがその駆動量に基づき駆動される前に前記情報取得部により取得され、
前記演算部は、前記モータの駆動が終了してから所定時間経過する毎に、前記積算値から所定値を減算する演算を実行し、
前記モータが前記判定部により過熱状態にあると判定されたときに、前記モータの駆動が制限され、
前記モータの駆動動作の合間の停止時間と、前記減算値とが対応付けられたテーブルを備え、
前記情報取得部は、前記モータの駆動モードに関する情報を取得し、
前記減算値は、前記情報取得部が取得した前記駆動モードに関する情報および前記停止時間に関する情報に基づき取得され、
前記モータは、前記駆動モードに応じて、加速時の加速度、定速時の速度および減速時の加速度のうちの少なくともいずれか１つが異なることを特徴とするモータの過熱判定装置。
【請求項１１】
モータの駆動量に関する情報を取得するステップと、
前記モータの駆動動作の合間の停止時間に関する情報を取得するステップと、
取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出するステップと、
前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算するステップと、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定するステップと、
を有することを特徴とするモータの過熱判定方法。
【請求項１２】
モータの駆動量に関する情報を取得するステップと、
前記モータの駆動動作の合間の停止時間に関する情報を取得するステップと、
取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出するステップと、
前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算するステップと、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定するステップと、
を実行することを特徴とするモータの過熱判定プログラム。
【請求項１３】
モータの駆動動作の合間の停止時間に関する情報を取得する情報取得部と、
前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
前記モータの駆動を制御し、かつ前記判定部により前記モータが過熱状態にあると判定されたときに、前記モータの駆動を制限するコントローラと、
を備えたことを特徴とするモータ制御装置。
【請求項１４】
モータの駆動量を逐次積算して積算値を算出するステップと、
前記モータの駆動動作の合間の停止時間に関する情報を取得するステップと、
取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算するステップと、
減算された前記積算値が所定値に達したときに、前記モータが過熱状態にあると判定するステップと、
前記モータが過熱状態にあると判定されたときに、前記モータの駆動を制限するステップと、
を有することを特徴とするモータ制御方法。
【請求項１５】
媒体に対して印刷を施す印刷部と、
モータと、
前記モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、
前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
を備えたことを特徴とする印刷装置。
【請求項１６】
前記モータが、前記印刷部により印刷される媒体を搬送するためのモータ、または媒体に対して印刷を施す印刷部を前記媒体に対して相対的に移動させるためのモータであることを特徴とする請求項１５に記載の印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータが過熱状態にあるか否かを判定するモータの過熱判定装置、モータの過熱判定方法、モータの過熱判定プログラム、モータ制御装置、モータ制御方法及び印刷装置に関する。
【背景技術】
【０００２】
インクジェットプリンタをはじめとする印刷装置には、印刷する紙等の媒体を搬送するための搬送モータや、紙などの媒体に対して印刷を施すための印刷部を移動させるためのモータなど、各種モータが搭載されている。このようなモータにあっては、連続して駆動されると、発熱して温度が上昇し、高温状態になることがある。モータが高温状態になると、巻線の焼損等の不具合が生じる虞があることから、印刷装置には、モータが高温状態にならないようにするための監視装置が設けられている。
【０００３】
その監視装置の１つとして、モータの駆動量に基づきモータの温度状態を監視する装置がある（特許文献１参照）。この装置は、モータの駆動量を逐次積算して、その積算値が所定値に達したか否かをチェックすることによってモータが高温状態にあるかどうか調べる。つまり、モータの駆動量とモータの発熱との間の関連性に着目して、モータの駆動量からモータの温度を推測するのである。モータの駆動量の積算値が所定値に達したときには、モータが高温状態にあると判断して、モータの駆動を抑制してモータの発熱を制限する発熱制限制御に移行する。この制御に移行することによって、モータの温度がこれ以上上昇するのを防ぎつつ、モータの駆動を継続して実行するのである。なお、モータがしばらくの間、駆動されなかった場合には、モータの駆動量の積算値は徐々に減らされるように処理されたり、またモータが長時間にわたり駆動されなかった場合には、モータの駆動量の積算値はゼロにリセットしたりすることが提案されている。
【０００４】
このようにモータの駆動量に基づきモータの温度状態を監視することによって、温度センサ等の各種センサを不要にすることができ、これにより、部品点数を増やさず、あまりコストをかけずに実施することができる。
【特許文献１】特許２００２−１８６２８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、このようなモータの駆動量に基づきモータの温度状態を監視する装置には、次のような問題があった。すなわち、モータがしばらくの間駆動されなかった場合には、モータの駆動量が徐々に減算されたり、またモータが長時間にわたり駆動されなかった場合には、モータの駆動量の積算値がゼロにリセットされるなどして、モータの温度状態に応じて積算値が減算されていたものの、モータが非常に短い時間停止した場合、例えば、数十〜数百ミリ秒などの１秒前後の非常に短い間、モータがの駆動が停止された場合は、何ら措置がとられていなかった。このため、モータが高温状態になっていないにもかかわらず、モータが高温状態にあると判断して発熱制限制御が実効される場合があった。これにより、印刷に余計な時間がかかり、印刷速度が低下するなどの不具合が発生することがあった。
【０００６】
本発明は、このような事情に鑑みたものであって、その目的は、モータの温度状態をモータの駆動量に基づきより正確に推測することにある。
【課題を解決するための手段】
【０００７】
前記目的を達成するための主たる発明は、モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、を備えたことを特徴とするモータの過熱判定装置である。
【０００８】
本発明の他の特徴は、本明細書及び添付図面の記載により明らかにする。
【発明を実施するための最良の形態】
【０００９】
＝＝＝開示の概要＝＝＝
本明細書及び添付図面の記載により、少なくとも以下の事項が明らかとなる。
【００１０】
モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、
前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
を備えたことを特徴とするモータの過熱判定装置。
【００１１】
この装置にあっては、モータの駆動量に関する情報に基づきモータの駆動量を逐次積算して積算値を算出する演算に加え、モータの停止時間に関する情報に基づき取得された停止時間に応じた減算値を前記積算値から減算する演算を実行するから、モータの温度状態をより正確に推測することができる。
【００１２】
かかる過熱判定装置にあっては、前記モータの駆動動作の合間の停止時間を計測するためのタイマーを備えても良い。このようなタイマーを備えれば、モータの停止時間を簡単に測定することができる。
【００１３】
また、かかる過熱判定装置にあっては、前記モータの駆動量に関する情報は、前記モータの駆動毎に前記情報取得部により取得されても良い。このようにモータの駆動量に関する情報がモータの駆動毎に逐次取得されれば、モータの温度状態をより的確に推測することができる。
【００１４】
また、かかる過熱判定装置にあっては、前記モータの駆動量に関する情報は、前記モータがその駆動量に基づき駆動する前に前記情報取得部により取得されても良い。このようにモータの駆動量に関する情報は、前記モータがその駆動量に基づき駆動する前に取得されれば、モータの温度状態を駆動前に推測することができる。
【００１５】
また、かかる過熱判定装置にあっては、前記演算部は、前記モータの駆動が終了してから所定時間経過する毎に、前記積算値から所定値を減算する演算を実行しても良い。このような演算が実行されれば、モータの温度状態をより正確に推測することができる。
【００１６】
また、かかる過熱判定装置にあっては、前記モータが前記判定部により過熱状態にあると判定されたときに、前記モータの駆動が制限されても良い。このようにモータの駆動が制限されれば、モータの温度上昇を抑制しつつモータを駆動させることができる。
【００１７】
また、かかる過熱判定装置にあっては、前記モータの駆動動作の合間の停止時間と、前記停止時間に応じた前記減算値とが対応付けられたテーブルを備えても良い。このようなテーブルを備えれば、モータの停止時間に応じた減算値を簡単に取得することができる。
【００１８】
また、かかる過熱判定装置にあっては、前記情報取得部は、前記モータの駆動モードに関する情報を取得し、前記減算値は、前記情報取得部が取得した前記駆動モードに関する情報および前記停止時間に関する情報に基づき取得されても良い。このようにモータの駆動モードに関する情報を取得して、当該駆動モードに関する情報に基づき減算値を取得することで、駆動モードに応じた減算値を取得することができる。
【００１９】
また、かかる過熱判定装置にあっては、前記モータは、前記駆動モードに応じて、加速時の加速度、定速時の速度および減速時の加速度のうちの少なくともいずれか１つが異なっても良い。このようにモータが駆動モードに応じて異なる場合に、適切な減算値を取得することができる。
【００２０】
モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、
前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
前記モータの駆動動作の合間の停止時間を計測するためのタイマーとを備え、
前記モータの駆動量に関する情報は、前記モータの駆動毎に取得されるとともに、前記モータがその駆動量に基づき駆動される前に取得され、
前記演算部は、前記モータの駆動が終了してから所定時間経過する毎に、前記積算値から所定値を減算する演算を実行し、
前記モータが前記判定部により過熱状態にあると判定されたときに、前記モータの駆動が制限され、
前記モータの駆動動作の合間の停止時間と、前記停止時間に応じた前記減算値とが対応付けられたテーブルを備え、
前記情報取得部は、前記モータの駆動モードに関する情報を取得し、
前記減算値は、前記情報取得部が取得した前記駆動モードに関する情報および前記停止時間に関する情報に基づき取得され
前記モータは、前記駆動モードに応じて、加速時の加速度、定速時の速度および減速時の加速度のうちの少なくともいずれか１つが異なることを特徴とするモータの過熱判定装置。
【００２１】
モータの駆動量に関する情報を取得するステップと、
前記モータの駆動動作の合間の停止時間に関する情報を取得するステップと、
取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出するステップと、
前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算するステップと、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定するステップと、
を有することを特徴とするモータの過熱判定方法。
【００２２】
モータの駆動量に関する情報を取得するステップと、
前記モータの駆動動作の合間の停止時間に関する情報を取得するステップと、
取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出するステップと、
前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算するステップと、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定するステップと、
を実行することを特徴とするモータの過熱判定プログラム。
【００２３】
モータの駆動動作の合間の停止時間に関する情報を取得する情報取得部と、
前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
前記モータの駆動を制御し、かつ前記判定部により前記モータが過熱状態にあると判定されたときに、前記モータの駆動を制限するコントローラと、
を備えたことを特徴とするモータ制御装置。
【００２４】
モータの駆動量を逐次積算して積算値を算出するステップと、
前記モータの駆動動作の合間の停止時間に関する情報を取得するステップと、
取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算するステップと、
減算された前記積算値が所定値に達したときに、前記モータが過熱状態にあると判定するステップと、
前記モータの判定結果に応じて前記モータの駆動を制御するステップと、
を有することを特徴とするモータ制御方法。
【００２５】
モータと、
前記モータの駆動量に関する情報と、前記モータの駆動動作の合間の停止時間に関する情報とを取得する情報取得部と、
前記情報取得部が取得した前記駆動量に関する情報に基づき前記モータの駆動量を逐次積算して積算値を算出する演算と、前記情報取得部が取得した前記停止時間に関する情報に基づき取得された前記停止時間に応じた減算値を前記積算値から減算する演算とを実行する演算部と、
前記演算部によって減算された積算値が所定値に達したときに、前記モータが過熱状態にあると判定する判定部と、
を備えたことを特徴とする印刷装置。
【００２６】
かかる印刷装置にあっては、前記モータが、印刷する媒体を搬送するためのモータ、または媒体に対して印刷を施す印刷部を前記媒体に対して相対的に移動させるためのモータであっても良い。
【００２７】
＝＝＝印刷装置の概要＝＝＝
本発明に係るモータの過熱判定装置として、インクジェットプリンタ（印刷装置）に搭載された場合を例にとり説明する。まず、インクジェットプリンタ（印刷装置）の概要について説明する。
【００２８】
図１〜図４は、そのインクジェットプリンタ１を示したものである。図１は、そのインクジェットプリンタ１の外観を示す。図２は、そのインクジェットプリンタ１の内部構成を示す。図３は、そのインクジェットプリンタ１の搬送部を示す。図４は、そのインクジェットプリンタ１のシステム構成を示すブロック構成図である。
【００２９】
このインクジェットプリンタ１は、図１に示すように、背面から供給された印刷用紙等の媒体Ｓを前面から排出する構造を備えており、その前面部には操作パネル２および排紙部３が設けられ、その背面部には給紙部４が設けられている。操作パネル２には、各種操作ボタン５および表示ランプ６が設けられている。また、排紙部３には、不使用時に排紙口を塞ぐ排紙トレー７が設けられている。給紙部４には、カット紙（図示しない）を保持する給紙トレー８が設けられている。なお、インクジェットプリンタ１は、カット紙など単票状の印刷紙のみならず、ロール紙などの連続した媒体にも印刷できるような給紙構造を備えていても良い。
【００３０】
このインクジェットプリンタ１の内部には、図２に示すように、キャリッジ４１が設けられている。このキャリッジ４１は、所定の方向（図中、キャリッジ移動方向）に沿って相対的に移動可能に設けられたものである。キャリッジ４１の周辺には、キャリッジモータ４２と、プーリ４４と、タイミングベルト４５と、ガイドレール４６と、が設けられている。キャリッジモータ４２は、ＤＣモータなどにより構成され、キャリッジ４１を前記所定の方向に沿って相対的に移動させるための駆動源として機能する。また、タイミングベルト４５は、プーリ４４を介してキャリッジモータ４２に接続されるとともに、その一部がキャリッジ４１に接続され、キャリッジモータ４２の回転によってキャリッジ４１を前記所定の方向に沿って相対的に移動させる。ガイドレール４６は、キャリッジ４１を前記所定の方向に沿って案内する。
【００３１】
この他に、キャリッジ４１の周辺には、キャリッジ４１の位置を検出するリニア式エンコーダ５１と、媒体Ｓをキャリッジ４１の移動方向と交差する方向に沿って搬送するための搬送ローラ１７Ａと、この搬送ローラ１７Ａを回転させる搬送モータ１５とが設けられている。
【００３２】
一方、キャリッジ４１には、各種インクを収容したインクカートリッジ４８と、媒体Ｓに対して印刷を行うヘッド２１とが設けられている。インクカートリッジ４８は、例えば、イエロ（Ｙ）やマゼンダ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）などの各色のインクを収容しており、キャリッジ４１に設けられたカートリッジ装着部４９に着脱可能に装着されている。また、ヘッド２１は、本実施形態では、媒体Ｓに対してインクを吐出して印刷を施す。このためにヘッド２１には、インクを吐出するための多数のノズルが設けられている。このヘッド２１のインクの吐出機構については、後で詳しく説明する。
【００３３】
この他に、このインクジェットプリンタ１の内部には、ヘッド２１のノズルの目詰まりを解消するためのクリーニングユニット３０が設けられている。このクリーニングユニット３０は、ポンプ装置３１と、キャッピング装置３５とを有する。ポンプ装置３１は、ヘッド２１のノズルの目詰まりを解消するために、ノズルからインクを吸い出す装置であり、ポンプモータ（図示外）により作動する。一方、キャッピング装置３５は、ヘッド２１のノズルの目詰まりを防止するため、印刷を行わないとき（待機時など）に、ヘッド２１のノズルを封止する。
【００３４】
次にこのインクジェットプリンタ１の搬送部の構成について説明する。この搬送部は、図３に示すように、紙挿入口１１Ａ及びロール紙挿入口１１Ｂと、給紙モータ（不図示）と、給紙ローラ１３と、プラテン１４と、搬送モータ１５と、搬送ローラ１７Ａと排紙ローラ１７Ｂと、フリーローラ１８Ａとフリーローラ１８Ｂとを有する。これらのうち、搬送モータ１５や搬送ローラ１７Ａ、排紙ローラ１７Ｂなどは、本発明の搬送機構を構成している。
【００３５】
紙挿入口１１Ａは、媒体である媒体Ｓを挿入するところである。給紙モータ（図示外）は、紙挿入口１１Ａに挿入された媒体Ｓをインクジェットプリンタ１内に搬送するモータであり、パルスモータ等で構成される。給紙ローラ１３は、紙挿入口１１Ａに挿入された媒体Ｓを図中矢印Ａ方向（ロール紙の場合は矢印Ｂ方向）にインクジェットプリンタ１の内部に自動的に搬送するローラであり、給紙モータによって駆動される。給紙ローラ１３は、略Ｄ形の横断面形状を有している。給紙ローラ１３の円周部分の周囲長さは、搬送モータ１５までの搬送距離よりも長く設定されているので、この円周部分を用いて媒体Ｓを搬送モータ１５まで搬送することができる。
【００３６】
給紙ローラ１３により搬送された媒体Ｓは、紙検知センサ５３に当接する。この紙検知センサ５３は、給紙ローラ１３と、搬送ローラ１７Ａとの間に設置されたもので、給紙ローラ１３により給紙された媒体Ｓを検知するようになっている。
【００３７】
紙検知センサ５３により検知された媒体Ｓは、プラテン１４へと搬送される。プラテン１４は、印刷中の媒体Ｓを支持する支持手段である。搬送モータ１５は、媒体Ｓである例えば紙を搬送方向に送り出すモータであり、ＤＣモータで構成される。搬送ローラ１７Ａは、給紙ローラ１３によってインクジェットプリンタ１内に搬送された媒体Ｓを印刷可能な領域まで送り出すローラであり、搬送モータ１５によって駆動される。フリーローラ１８Ａは、搬送ローラ１７Ａと対向する位置に設けられ、媒体Ｓを搬送ローラ１７Ａとの間に挟むことによって媒体Ｓを搬送ローラ１７Ａに向かって押さえる。
【００３８】
排紙ローラ１７Ｂは、印刷が終了した媒体Ｓをインクジェットプリンタ１の外部に排出するローラである。排紙ローラ１７Ｂは、不図示の歯車により、搬送モータ１５によって駆動される。フリーローラ１８Ｂは、排紙ローラ１７Ｂと対向する位置に設けられ、媒体Ｓを排紙ローラ１７Ｂとの間に挟むことによって媒体Ｓを排紙ローラ１７Ｂに向かって押さえる。
【００３９】
＜システム構成＞
次にこのインクジェットプリンタ１のシステム構成について説明する。このインクジェットプリンタ１は、図４に示すように、バッファメモリ１２２と、イメージバッファ１２４と、コントローラ１２６と、メインメモリ１２７と、ＥＥＰＲＯＭ１２９とを備えている。バッファメモリ１２２は、コンピュータ装置１４０から送信された印刷データ等の各種データを受信して一時的に記憶する。また、イメージバッファ１２４は、受信した印刷データをバッファメモリ１２２より取得して格納する。また、メインメモリ１２７は、ＲＯＭやＲＡＭなどにより構成される。
【００４０】
一方、コントローラ１２６は、メインメモリ１２７から制御用プログラムを読み出して、当該制御用プログラムに従ってインクジェットプリンタ１全体の制御を行う。本実施形態のコントローラ１２６は、キャリッジモータ制御部１２８と、搬送制御部１３０と、ヘッド駆動部１３２と、ロータリ式エンコーダ１３４と、リニア式エンコーダ５１とを備えている。キャリッジモータ制御部１２８は、キャリッジモータ４２の回転方向や回転数、トルクなどを駆動制御する。また、ヘッド駆動部１３２は、ヘッド２１の駆動制御を行う。搬送制御部１３０は、搬送ローラ１７Ａを回転駆動する搬送モータ１５など、搬送系に配置された各種駆動モータを制御する。
【００４１】
コンピュータ装置１４０から送られてきた印刷データは、一旦、バッファメモリ１２２に蓄えられる。ここで蓄えられた印刷データは、その中から必要な情報がコントローラ１２６により読み出される。コントローラ１２６は、その読み出した情報に基づき、リニア式エンコーダ５１やロータリ式エンコーダ１３４からの出力を参照しながら、制御用プログラムに従って、キャリッジモータ制御部１２８や搬送制御部１３０、ヘッド駆動部１３２を各々制御する。
【００４２】
イメージバッファ１２４には、バッファメモリ１２２に受信された複数の色成分の印刷データが格納される。ヘッド駆動部１３２は、コントローラ１２６からの制御信号に従って、イメージバッファ１２４から各色成分の印刷データを取得し、この印刷データに基づきヘッド２１に設けられた各色のノズルを駆動制御する。
【００４３】
また、コントローラ１２６には、紙検知センサ５３から出力された、媒体Ｓを検知しているか否かを示す信号が入力される。これにより、コントローラ１２６は、紙検知センサ５３が媒体Ｓを検知しているか否かを知ることができる。
【００４４】
なお、本実施形態に係るインクジェットプリンタ１にあっては、これらの他に、タイマー１４４を備えている。このタイマー１４４は、コントローラ１２６からの命令により時間計測を開始し、同じくコントローラ１２６からの命令により時間計測を終了する。タイマー１４４は、計測した経過時間をコントローラ１２６に伝達する。
【００４５】
＜ヘッド＞
図５は、ヘッド２１の下面部に設けられたインクのノズルの配列を示した図である。ヘッド２１の下面部には、同図に示すように、イエロ（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）の各色ごとにそれぞれ複数のノズル♯１〜♯１８０からなるノズル群２１１Ｙ、２１１Ｍ、２１１Ｃ、２１１Ｋが設けられている。
【００４６】
各ノズル群２１１Ｙ、２１１Ｍ、２１１Ｃ、２１１Ｋの各ノズル♯１〜♯１８０は、媒体Ｓの搬送方向に沿って直線状に配列されている。各ノズル群２１１Ｙ、２１１Ｍ、２１１Ｃ、２１１Ｋは、ヘッド２１の移動方向（キャリッジ移動方向）に沿って相互に間隔をあけて平行に配置されている。各ノズル♯１〜♯１８０には、インク滴を吐出するための駆動素子としてピエゾ素子（図示外）が設けられている。
【００４７】
ピエゾ素子は、その両端に設けられた電極間に所定時間幅の電圧を印加すると、電圧の印加時間に応じて伸張し、インクの流路の側壁を変形させる。これによって、インクの流路の体積がピエゾ素子の伸縮に応じて収縮し、この収縮分に相当するインクが、インク滴となって各色の各ノズル♯１〜♯１８０から吐出される。
【００４８】
＝＝＝印刷動作＝＝＝
次に前述したインクジェットプリンタ１の印刷動作について説明する。ここでは、「双方向印刷」を例にして説明する。図６は、インクジェットプリンタ１の印刷動作の処理手順の一例を示したフローチャートである。以下で説明される各処理は、コントローラ１２６が、メインメモリ１２７又はＥＥＰＲＯＭ１２９に格納されたプログラムを読み出して、当該プログラムに従って制御することにより実行される。
【００４９】
コントローラ１２６は、コンピュータ装置１４０から印刷データを受信すると、その印刷データに基づき印刷を実行すべく、まず、給紙処理を行う（Ｓ１０２）。給紙処理は、印刷しようとする媒体Ｓをインクジェットプリンタ１内に供給し、印刷開始位置（頭出し位置とも言う）まで搬送する処理である。コントローラ１２６は、給紙ローラ１３を回転させて、印刷しようとする媒体Ｓを搬送ローラ１７Ａまで送る。コントローラ１２６は、搬送ローラ１７Ａを回転させて、給紙ローラ１３から送られてきた媒体Ｓを印刷開始位置に位置決めする。
【００５０】
次に、コントローラ１２６は、キャリッジ４１を媒体Ｓに対して相対的に移動させて媒体Ｓに対して印刷を施す印刷処理を実行する。ここでは、まず、キャリッジ４１をガイドレール４６に沿って一の方向に向かって移動させながら、ヘッド２１からインクを吐出する往路印刷を実行する（Ｓ１０４）。コントローラ１２６は、キャリッジモータ制御部１２８を介してキャリッジモータ４２を駆動してキャリッジ４１を移動させるとともに、印刷データに基づきヘッド２１を駆動してインクを吐出する。ヘッド２１から吐出されたインクは、媒体Ｓに到達してドットとして形成される。
【００５１】
このようにして印刷を行った後、次に、媒体Ｓを所定量だけ搬送する搬送処理を実行する（Ｓ１０６）。この搬送処理では、コントローラ１２６は、搬送制御部１３０を介して、搬送モータ１５を駆動して搬送ローラ１７Ａを回転させて、媒体Ｓをヘッド２１に対して相対的に搬送方向に所定量だけ搬送する。この搬送処理により、ヘッド２１は、先ほどの印刷した領域とは異なる領域に印刷をすることが可能になる。
【００５２】
このようにして搬送処理を行った後、排紙すべきか否か排紙判断を実行する（Ｓ１０８）。ここで、印刷中の媒体Ｓに印刷すべき他のデータがなければ、排紙処理を実行する（Ｓ１１６）。一方、印刷中の媒体Ｓに印刷すべき他のデータがあれば、排紙処理は行わずに、復路印刷を実行する（Ｓ１１０）。この復路印刷は、キャリッジ４１をガイドレール４６に沿って先ほどの往路印刷とは反対の方向に移動させて印刷を行う。ここでも、コントローラ１２６は、キャリッジモータ制御部１２８を介して、キャリッジモータ４２を先ほどとは逆に回転駆動させてキャリッジ４１を移動させるとともに、印刷データに基づきヘッド２１を駆動してインクを吐出し、印刷を施す。
【００５３】
復路印刷を実行した後、搬送処理を実行し（Ｓ１１２）、その後、排紙判断を行う（Ｓ１１４）。ここで、印刷中の媒体Ｓに印刷すべき他のデータがあれば、排紙処理は行わずに、ステップＳ１０４に戻って、再度往路印刷を実行する（Ｓ１０４）。一方、印刷中の媒体Ｓに印刷すべき他のデータがなければ、排紙処理を実行する（Ｓ１１６）。
【００５４】
排紙処理を行った後、次に、印刷終了か否かを判断する印刷終了判断を実行する（Ｓ１１８）。ここでは、次にコンピュータ装置１４０から印刷データに基づき、次に印刷すべき媒体Ｓがないかどうかチェックする。ここで、次に印刷すべき媒体Ｓがある場合には、ステップＳ１０２に戻り、再び給紙処理を実行して、印刷を開始する。一方、次に印刷すべき媒体Ｓがない場合には、印刷処理を終了する。
【００５５】
＝＝＝搬送モータの駆動制御＝＝＝
＜搬送制御部の機能＞
搬送モータ１５の駆動制御は、搬送制御部１３０により行われる。搬送制御部１３０は、コントローラ１２６からの搬送指令に基づいて、所定の駆動量にて搬送モータ１５を駆動させる。搬送モータ１５は、指令された駆動量に応じて搬送ローラ１７Ａと排紙ローラ１７Ｂとを回転させる。これにより、搬送ローラ１７Ａと排紙ローラ１７Ｂとが回転して、媒体Ｓは所定の搬送量分だけ搬送される。媒体Ｓの搬送量は、搬送ローラ１７Ａの回転量に応じて定まる。したがって、搬送ローラ１７Ａの回転量が検出できれば、媒体Ｓの搬送量も検出可能である。ここでは、搬送ローラ１７Ａの回転量を検出するために、ロータリ式エンコーダ１３４が設けられている。
【００５６】
＜ロータリ式エンコーダ＞
図７は、ロータリ式エンコーダ１３４の構成を説明した説明図である。ロータリ式エンコーダ１３４は、ロータリ式エンコーダ符号板４０２と検出部４０４とを備えている。  
このロータリ式エンコーダ符号板４０２は、同図に示すように、円盤状に形成されている。ロータリ式エンコーダ符号板４０２の外周縁部には、所定の間隔置きに小さなスリット４０６が多数形成されている。ロータリ式エンコーダ符号板４０２は、媒体Ｓを搬送する搬送ローラ１７Ａの軸端部に一体的に設けられた大歯車４０８に隣接して一体的に設けられている。大歯車４０８は、小歯車４１０を介して搬送モータ１５に接続されていて、搬送モータ１５の回転駆動によって、小歯車４１０を介して回転する。これにより、搬送ローラ１７Ａが搬送モータ１５の回転駆動によって回転し、ロータリ式エンコーダ符号板４０２も、大歯車４０８および搬送ローラ１７Ａと同期して回転する。一方、検出部４０４は、ロータリ式エンコーダ符号板４０２に隣接して設けられたもので、ロータリ式エンコーダ符号板４０２の回転量を検出する。
【００５７】
＜検出部の構成＞
図８は、ロータリ式エンコーダ１３４の検出部４０４の構成を詳しく示したものである。検出部４０４は、発光ダイオード４１２と、コリメータレンズ４１４と、検出処理部４１６とを備えている。検出処理部４１６は、複数（例えば４個）のフォトダイオード４１８と、信号処理回路４２０と、例えば２個のコンパレータ４２２Ａ、４２２Ｂとを有している。
【００５８】
発光ダイオード４１２の両端に抵抗を介して電圧Ｖｃｃが印加されると、発光ダイオード４１２から光が発せられる。この光はコリメータレンズ４１４により平行光に集光されてロータリ式エンコーダ符号板４０２を通過する。ロータリ式エンコーダ符号板４０２には、所定の間隔（例えば１／１８０インチ（１インチ＝２．５４ｃｍ））毎にスリット４０６が設けられている。
【００５９】
ロータリ式エンコーダ符号板４０２を通過した平行光は、図示しない固定スリットを通って各フォトダイオード４１８に入射し、電気信号に変換される。４個のフォトダイオード４１８から出力される電気信号は信号処理回路４２０において信号処理され、信号処理回路４２０から出力される信号はコンパレータ４２２Ａ、４２２Ｂにおいて比較され、比較結果がパルスとして出力される。コンパレータ４２２Ａ、４２２Ｂから出力されるパルスＥＮＣ−Ａ、ＥＮＣ−Ｂがロータリ式エンコーダ１３４の出力信号となる。
【００６０】
図９Ａ及び図９Ｂは、搬送モータ１５の正転時及び逆転時におけるロータリ式エンコーダ１３４の２つの出力信号の波形を示したタイミングチャートである。図９Ａは、搬送モータ１５が正転しているときの出力信号の波形のタイミングチャートである。図９Ｂは、搬送モータ１５が反転しているときの出力信号の波形のタイミングチャートである。
【００６１】
図９Ａ及び図９Ｂに示すように、搬送モータ１５の正転時及び逆転時のいずれの場合も、パルスＥＮＣ−ＡとパルスＥＮＣ−Ｂとは位相が９０度だけ異なっている。搬送モータ１５が正転しているとき、すなわち、媒体Ｓが図７に示すように搬送方向に搬送されているときには、パルスＥＮＣ−Ａは、パルスＥＮＣ−Ｂよりも９０度だけ位相が進む。一方、搬送モータ１５が反転しているとき、すなわち、媒体Ｓが搬送方向とは逆方向に搬送されているときには、パルスＥＮＣ−Ａは、パルスＥＮＣ−Ｂよりも９０度だけ位相が遅れる。各パルスの１周期Ｔは、搬送ローラ１７Ａがロータリ式エンコーダ符号板４０２のスリット４０６の間隔（例えば、１／１４４０インチ（１インチ＝２．５４ｃｍ））分だけ回転する時間に等しい。
【００６２】
そして、ロータリ式エンコーダ１３４の出力パルスＥＮＣ−Ａ、ＥＮＣ−Ｂの各々の立ち上がりエッジ、立ち上がりエッジがシステムコントローラ１２６により検出され、その検出されたエッジの個数が計数されれば、システムコントローラ１２６は、その計数値に基づいて搬送モータ１５の回転位置を演算することができる。この計数は、搬送モータ１５が正転しているときは、１個のエッジが検出されると「＋１」を加算し、逆転しているときは、１個のエッジが検出されると「−１」を加算する。パルスＥＮＣ−Ａ及びＥＮＣ−Ｂの各々の周期は、ロータリ式エンコーダ符号板４０２の、あるスリット４０６が検出部４０４を通過してから、次のスリット４０６が検出部４０４を通過するまでの時間に等しく、かつパルスＥＮＣ−ＡとパルスＥＮＣ−Ｂとは位相が９０度だけ異なっている。このため、上記計数のカウント値「１」はロータリ式エンコーダ符号板４０２のスリット４０６の間隔の１／４に対応する。これにより、上記計数値にスリット４０６の間隔の１／４を乗算すれば、その乗算値に基づいて、計数値が「０」に対応する回転位置からの搬送モータ１５の搬送量を求めることができる。このとき、ロータリ式エンコーダ１３４の解像度はロータリ式エンコーダ符号板４０２のスリット４０６の間隔の１／４となる。
【００６３】
＜搬送制御部の構成＞
図１０は、搬送制御部１３０の回路構成を示したブロック構成図である。この搬送制御部１３０は、同図に示すように、位置演算部４３１と、減算器４３２と、ゲイン４３３と、速度演算部４３４と、減算器４３５と、比例要素４３６Ａと、積分要素４３６Ｂと、微分要素４３６Ｃと、加算器４３７と、ＰＷＭ回路４３８と、加速制御部４３９Ａ、タイマ４３９Ｂとを有する。
【００６４】
位置演算部４３１は、ロータリ式エンコーダ１３４の出力パルスのエッジを検出し、その個数をカウントし、このカウント値に基づき搬送モータ１５の回転位置を演算する。位置演算部４３１は、２つのパルス信号の比較処理から搬送モータ１５の正転・逆転を認知し、１個のエッジが検出された時に正転・逆転に応じてインクリメント・デクリメントするように計数処理する。  
減算器４３２は、コントローラ１２６から送られてくる目標位置と、位置演算部４３１により検出された検出位置との位置偏差を演算する。ゲイン４３３は、減算器４３２から出力される位置偏差にゲインＫｐを乗算し、目標速度を出力する。ゲインＫｐは、位置偏差に応じて決定される。なお、このゲインＫｐの値と位置偏差との関係を示すテーブルは、メインメモリ１２７に格納されている。
【００６５】
速度演算部４３４は、ロータリ式エンコーダ１３４の出力パルスに基づいて、搬送モータ１５の回転速度を演算する。すなわち、速度演算部４３４は、ロータリ式エンコーダ１３４の出力パルスのパルス周期を計測し、このパルス周期に基づいて搬送モータ１５の回転速度を演算する。  
減算器４３５は、ゲイン４３３から出力される目標速度と、速度演算部４３４により検出された検出速度との速度偏差を演算する。
【００６６】
比例要素４３６Ａは、速度偏差に定数Ｇｐを乗算し、比例成分を出力する。積分要素４３６Ｂは、速度偏差に定数Ｇｉを乗算したものを積算し、積分成分を出力する。微分要素４３６Ｃは、現在の速度偏差と、１つ前の速度偏差との差に定数Ｇｄを乗算し、微分成分を出力する。比例要素４３６Ａ、積分要素４３６Ｂ及び微分要素４３６Ｃの演算は、ロータリ式エンコーダ１３４の出力パルスの１周期毎に行われる。
【００６７】
比例要素４３６Ａ、積分要素４３６Ｂ及び微分要素４３６Ｃから出力される信号値は、それぞれの演算結果に応じたデューティＤＸを示す。ここで、デューティＤＸは、例えばデューティパーセントが（１００×ＤＸ／２０００）％であることを示す。この場合、ＤＸ＝２０００であれば、デューティ１００％を示し、ＤＸ＝１０００であれば、デューティ５０％であることを示す。
【００６８】
加算器４３７は、比例要素４３６Ａの出力と、積分要素４３６Ｂの出力と、微分要素４３６Ｃの出力とを加算する。この加算結果は、デューティ信号として、ＰＷＭ回路４３８に送られる。ＰＷＭ回路４３８は、加算器４３７の加算結果に応じた指令信号を生成する。ドライバ４４０は、この指令信号に基づいて搬送モータ１５を駆動する。ドライバ４４０は、例えば複数個のトランジスタを備えており、ＰＷＭ回路４３８からの指令信号に基づいて、トランジスタをオン・オフさせることで、搬送モータ１５に電圧を印加する。
【００６９】
また、加速制御部４３９Ａ及びタイマ４３９Ｂは、搬送モータ１５の加速制御時に用いられる。タイマ４３９Ｂは、コントローラ１２６から送られてくるクロック信号に基づいて、所定時間毎にタイマ割込信号を発生する。加速制御部４３９Ａは、タイマ割込信号を受ける毎に所定のデューティＤＸＰを積算し、積算結果としてデューティ信号をＰＷＭ回路４３８に出力する。
【００７０】
搬送モータ１５を加速駆動するとき、ＰＷＭ回路４３８は、加速制御部４３９Ａから出力されるデューティ信号に基づいて、指令信号を搬送モータ１５に出力し、搬送モータ１５を制御する。搬送モータ１５を定速駆動するとき、及び、搬送モータ１５を減速するとき、ＰＷＭ回路４３８は、加算器４３７から出力されるデューティ信号に基づいて、指令信号を搬送モータ１５に出力し、搬送モータ１５をＰＩＤ制御する。
【００７１】
＜モータの駆動方法＞
図１１Ａは、ＰＷＭ回路４３８に入力されるデューティ信号の時間変化のグラフである。図１１Ｂは、搬送モータ１５の速度変化のグラフである。以下、これらの図を用いて、搬送モータ１５の駆動について説明する。
【００７２】
搬送モータ１５が停止している時に、搬送モータ１５を起動させる起動指令信号がコントローラ１２６から搬送制御部１３０へ送られると、信号値がＤＸ０である起動初期デューティ信号が加速制御部４３９ＡからＰＷＭ回路４３８へ送られる。この起動初期ディユーティ信号は、起動指令信号とともにコントローラ１２６から加速制御部４３９Ａへ送られてくる。そして、この起動初期ディユーティ信号は、ＰＷＭ回路４３８によって、信号値ＤＸ０に応じた指令信号に変換されて、搬送モータ１５の起動が開始される。
【００７３】
搬送制御部１３０が起動指令信号を受信した後、所定の時間ごとにタイマ４３９Ｂからタイマ割込信号が発生される。加速制御部４３９Ａは、タイマ割込信号を受信する毎に、起動初期デューティ信号の信号値ＤＸ０に所定のデューティＤＸＰを積算し、積算されたデューティを信号値とするデューティ信号をＰＷＭ回路４３８に送る。このデューティ信号は、ＰＷＭ回路４３８によって、その信号値に応じた指令信号に変換されて、搬送モータ１５の回転速度は上昇する。このため加速制御部４３９ＡからＰＷＭ回路４３８に送られるデューティ信号の値は、階段状に上がっていく。
【００７４】
加速制御部４３９Ａにおけるデューティの積算処理は、積算されたデューティが所定のデューティＤＸＳになるまで行われる。時刻ｔ１において積算されたデューティが所定値ＤＸＳとなると、加速制御部４３９Ａは積算処理を停止し、以後ＰＷＭ回路４３８に一定のデューティＤＸＳを信号値とするデューティ信号を送る。
【００７５】
そして、搬送モータ１５が所定の回転速度になると（時間ｔ２参照）、加速制御部４３９Ａは、ＰＷＭ回路４３８へ出力するデューティ信号を減少させて、搬送モータ１５に印加される電圧のデューティパーセントを減少させるよう制御する。このとき、搬送モータ１５の回転速度は更に上昇する。そして、時間ｔ３になると、ＰＷＭ回路４３８は加算器４３７の出力を選択し、ＰＩＤ制御が行われる。ＰＩＤ制御が開始される時点（ｔ３）において、積分要素４３６Ｂの積分値が適当な値に設定されており、積分要素４３６Ｂの出力値が所定の値になる。
【００７６】
ＰＩＤ制御が開始されると、搬送制御部１３０は、目標回転位置と、ロータリ式エンコーダ１３４の出力から得られる実際の回転位置との位置偏差にゲインＫｐを乗算して目標回転速度を算出する。そして、搬送制御部１３０は、この目標回転速度と、ロータリ式エンコーダ１３４の出力から得られる実際の回転速度との速度偏差に基づいて、比例要素４３６Ａ、積分要素４３６Ｂ及び微分要素４３６Ｃを用いて比例成分、積分成分及び微分成分の演算を行い、これらの演算結果の和に基づいて、搬送モータ１５の制御を行う。尚、上記比例、積分及び微分演算は、例えば、ロータリ式エンコーダ１３４の出力パルスＥＮＣ−Ａの立ち上がりエッジに同期して行われる。これにより、搬送モータ１５の回転速度は、時刻ｔ４において、所望の回転速度となるように制御される。  
搬送モータ１５が目標回転位置に近づくと（時刻ｔ５）、位置偏差が小さくなるから目標回転速度も小さくなる。このため速度偏差、即ち減算器４３５の出力が負になり、搬送モータ１５は減速し、時刻ｔ６に停止する。
【００７７】
＝＝＝モータの過熱判定＝＝＝
このような搬送モータ１５が連続して駆動された場合に、搬送モータ１５が発熱して温度が上昇し、高温状態になることがある。このように搬送モータ１５が高温状態になると、例えば、巻線が焼き切れるなどの不具合が生じることがある。そこで、本実施形態のインクジェットプリンタ１にあっては、このような不具合が生じるのを防ぐために、搬送モータ１５が高温状態になる前に、過熱状態にあるかどうかを判定する過熱判定装置を備えている。
【００７８】
＜過熱判定の概要＞
この過熱判定装置は、搬送モータ１５の駆動量を逐次積算して、その積算値が所定値に達したか否かをチェックすることで、搬送モータ１５が過熱状態にあるか否か判定する。この過熱判定装置により搬送モータ１５が過熱状態にあると判定されたときには、その搬送モータ１５に対して発熱制限制御を実行する。この発熱制限制御とは、搬送モータ１５に対して必要に応じて、搬送モータ１５が放熱するための冷却時間を持たせる制御のことである。具体的には、搬送モータ１５が１回駆動される毎に、余計に待機時間を持たせる。これにより、搬送モータ１５が次回駆動されるまでの間に、搬送モータ１５の温度を若干下げることができ、次回駆動されても温度が上昇し過ぎるのを防ぐことができる。このことから、このような発熱制限制御を実行することによって、搬送モータ１５の温度上昇を抑制しつつ、印刷処理を続行することができる。
【００７９】
本実施形態のインクジェットプリンタ１では、搬送モータ１５の駆動量に関する情報の取得と、搬送モータ１５の駆動量を逐次積算して積算値を求める演算と、その求められた積算値が所定値に達したか否かのチェックとをコントローラ１２６により行う。すなわち、本実施形態のコントローラ１２６は、本発明の情報取得部、演算部および判定部に相当する。
【００８０】
＜実際の過熱判定＞
図１２は、実際に搬送モータ１５が駆動されたときの制御状態の一例を簡単に説明したものである。インクジェットプリンタ１が印刷処理を開始すると、媒体Ｓを搬送するために搬送モータ１５が駆動される。搬送モータ１５が駆動されると、その駆動毎にその駆動量（ここでは、搬送モータ１５の駆動量をステップ数という単位で表わす。以下、「ＰＦstep」ともいう）が逐次積算される。コントローラ１２６は、搬送制御部１３０に向けて送信した搬送指令にて指令した搬送モータ１５の搬送量を逐次積算する。つまり、コントローラ１２６は、搬送制御部１３０に向けて搬送量として２００ステップ分の搬送指令を送信した場合には、２００ステップを加算する。さらに、コントローラ１２６が、搬送制御部１３０に向けて駆動量として３００ステップ分の搬送指令を送信した場合には、既存の積算値（現在は、「２００」）３００ステップ分を加算する。これにより、積算値は、「５００」となる。このようにしてコントローラ１２６は、搬送制御部１３０に指令した搬送モータ１５の駆動量を逐次積算する。なお、本実施形態では、コントローラ１２６により算出される積算値を「Ｐsum」という。
【００８１】
図１３は、コントローラ１２６による搬送モータ１５の駆動量ＰＦstep（駆動ステップ数）の積算の一例を示したものである。同図に示すように、搬送モータ１５が「２００ステップ」駆動した後、次に「１５０ステップ」駆動すると、積算値Ｐsumは「３５０」となる。さらに搬送モータ１５が「２５０ステップ」駆動すると、積算値Ｐsumは「６００」となる。次に搬送モータ１５が「１００ステップ」駆動すると、積算値Ｐsumは「７００」となる。そして、搬送モータ１５が「５０ステップ」駆動すると、積算値Ｐsumは「７５０」となる。このように搬送モータ１５が駆動する都度、その駆動量ＰＦstepが積算値Ｐsumに逐次積算される。
【００８２】
印刷処理が進むと、コントローラ１２６により算出される積算値Ｐsumが徐々に増加する。ここで、時刻ｔ１において、積算値Ｐsumが所定値（ここでは、「Ｐduty」という）に達すると、コントローラ１２６は、搬送モータ１５が過熱状態にあると判定して、搬送モータ１５に対して搬送制御部１３０を通じて発熱制限制御を開始する。この発熱制限制御は、前述したように、搬送モータ１５が１回駆動される毎に、必要に応じて余分に待機時間を持たせる制御のことである。これにより、搬送モータ１５の温度上昇を抑制しつつ、搬送モータ１５を継続して駆動する。
【００８３】
図１４は、搬送モータ１５が発熱制限制御された場合と、発熱制限制御されていない通常時の場合の搬送モータ１５の動作状況を説明したものである。図１４Ａは、発熱制限制御されていない通常時の場合を示し、図１４Ｂは、発熱制限制御された場合を示す。  
発熱制限制御されていない場合には、図１４Ａに示すように、搬送モータ１５は、印刷処理の際に、キャリッジモータ４２と交互に駆動される。つまり、搬送モータ１５が駆動されているときには、キャリッジモータ４２の駆動が停止され、また、搬送モータ１５の駆動が停止されているときには、キャリッジモータ４２が駆動される。キャリッジモータ４２の駆動が終了したときには、直ちに搬送モータ１５の駆動が開始される。
【００８４】
一方、発熱制限制御された場合には、図１４Ｂに示すように、搬送モータ１５は、キャリッジモータ４２の駆動が終了した場合であっても、直ちに搬送モータ１５の駆動が開始されない。つまり、搬送モータ１５は、キャリッジモータ４２の駆動期間が終了した後も、しばらくの間、駆動が見送られて、所定の待機時間が経過してから、駆動が再開される。これは、過熱状態に陥った搬送モータ１５に十分な冷却時間を与えるためで、搬送モータ１５が次回駆動時に、温度が上昇し過ぎないようにするための措置である。これにより、搬送モータ１５の温度上昇を抑制しつつ搬送モータ１５を駆動して、印刷処理を続行することができる。このようにして搬送モータ１５の温度上昇を抑制しながら、印刷処理を完遂する。
【００８５】
そして、図１２に示すように、時刻ｔ２にて印刷処理が終了した後、しばらくの間、ユーザーから印刷命令がなく、印刷待機状態が続いた場合には、コントローラ１２６は、搬送モータ１５の駆動量ＰＦstepの積算値Ｐsumを時間経過とともに徐々に減らす。ここでは、コントローラ１２６は、所定の時間Δｔｍが経過するごとに、積算値Ｐsumを所定値ΔＰｍずつ減算する演算処理を実行する。このようにしてコントローラ１２６は、ユーザーから新たな印刷命令があるまでの間、積算値Ｐsumを所定値ΔＰｍずつ徐々に減らす。
【００８６】
ここで、時刻ｔ３にて、ユーザーからインクジェットプリンタ１の電源をＯＦＦする命令があった場合には、コントローラ１２６は、電源をＯＦＦする際に、そのときの積算値Ｐsumをメインメモリ１２７等の適宜な記憶部に記憶する。そして、インクジェットプリンタ１の電源がＯＦＦになっている間、積算値Ｐsumを記憶して保持しておく。
【００８７】
そして、ユーザーにより時刻ｔ４にて、再びインクジェットプリンタ１の電源が入れられたときには、コントローラ１２６は、メインメモリ１２７等から記憶している積算値Ｐsumを読み込む。そして、再度、印刷処理が開始されたときには、前述した場合と同様に、搬送モータ１５の駆動量ＰＦstepを、読み出した積算値Ｐsumに逐次積算する。これにより、図１２に示すように、搬送モータ１５の駆動量ＰＦstepの積算値Ｐsumが再び徐々に増加し始める。そして、時刻ｔ５にて再び、積算値Ｐsumが所定値Ｐdutyに達すると、コントローラ１２６は、搬送モータ１５に対して搬送制御部１３０を通じて発熱制限制御を開始し、搬送モータ１５が１回駆動される毎に、必要に応じて余分に待機時間が設定される。これにより、搬送モータ１５の温度上昇を抑制しつつ、搬送モータ１５を継続して駆動する。
【００８８】
さらに、時刻ｔ６にて印刷処理が終了し、その後、しばらくの間、ユーザーから印刷命令がなく待機状態が続くと、コントローラ１２６は、積算値Ｐsumを時間経過とともに徐々に減らす。ここでも、前述した場合と同様に、所定の時間Δｔｍが経過するごとに、所定値ΔＰｍずつ積算値Ｐsumが減らされる。
【００８９】
そして、時刻ｔ７にて再びユーザーから印刷命令があり、印刷処理が開始されると、コントローラ１２６は、搬送モータ１５の駆動量ＰＦstepを積算値Ｐsumに逐次積算し、積算値Ｐsumが再度徐々に増加し始める。その後、時刻ｔ８にて再び積算値Ｐsumが所定値Ｐdutyに達すると、コントローラ１２６により、再び搬送モータ１５に対して発熱制限制御が実施される。
【００９０】
＜コントローラの処理＞
図１５は、コントローラ１２６の積算処理手順を説明するフローチャートである。コントローラ１２６は、まずはじめに、積算値Ｐsumに対して初期値をセットする（Ｓ２０２）。この初期値は、例えば、「ゼロ」であってもよく、また、メインメモリ１２７等に記憶された電源ＯＦＦの前の積算値Ｐsumであっても良い。次に、コントローラ１２６は、搬送制御部１３０に向けて搬送指令を送る際に搬送モータ１５の駆動量ＰＦstepに関する情報を取得したかどうかチェックする（Ｓ２０４）。ここで、駆動量ＰＦstepに関する情報を取得していない場合には、ステップＳ２０４へと戻り、再度、駆動量ＰＦstepに関する情報を取得したかどうかチェックする（Ｓ２０４）。このチェックは、駆動量ＰＦstepに関する情報を取得するまで行われる。
【００９１】
搬送モータ１５の駆動量ＰＦstepに関する情報を取得した場合には、コントローラ１２６は、次にステップＳ２０６へと進み、取得した駆動量ＰＦstepを積算値Ｐsumに加算する（Ｓ２０６）。この加算処理を終了した後、次に、コントローラ１２６は、演算により得られた新たな積算値Ｐsumが、過熱状態か否かの判定基準となる所定値Ｐdutyに到達したか否かをチェックする（Ｓ２０８）。ここで、新たな積算値Ｐsumが、所定値Ｐdutyに到達していた場合には、コントローラ１２６は、搬送モータ１５が過熱状態にあると判定して、搬送モータ１５に対して搬送制御部１３０を通じて発熱制限制御を開始する（Ｓ２１０）。その後、コントローラ１２６は、積算処理を終了する。
【００９２】
一方、新たな積算値Ｐsumが、所定値Ｐdutyに到達していなかった場合には、コントローラ１２６は、搬送モータ１５が未だ過熱状態にはないと判定して、ステップＳ２０４へと戻り、再度、駆動量ＰＦstepの取得を試みる（Ｓ２０４）。
【００９３】
＜所定値Ｐdutyの設定＞
搬送モータ１５が過熱状態にあるか否かの判断基準となる所定値Ｐdutyの設定方法について説明する。ここでは、実際に搬送モータ１５を駆動した場合を想定したシミュレーションを実行して、そのシミュレーションの結果に基づき所定値Ｐdutyを決定する。このシミュレーションにおいては、判定対象となる搬送モータ１５が実際に駆動された場合の発熱量を求める。ここでは、搬送モータ１５が最も過酷な条件（ワースト条件）にて駆動された場合について調べる。この場合の搬送モータ１５の発熱量から搬送モータ１５の上昇温度を算出して、搬送モータ１５を安全に使用できる限界の温度（以下、「制限温度」ともいう）に到達するまでの搬送モータ１５の総駆動量を調査する。
【００９４】
搬送モータ１５の発熱量は、搬送モータ１５への負荷の大きさや、搬送モータ１５に流れる実効電流、搬送モータ１５の巻線の温度特性などを考慮して算出する。また、最も過酷な条件としては、キャリッジモータ４２の駆動時間がきわめて短い場合、例えば、縦線を描画する場合等のキャリッジ移動方向への印刷幅が非常に短い場合などを想定して設定する。搬送モータ１５の総駆動量は、搬送モータ１５の温度が制限温度に達するまでにかかる搬送モータ１５の駆動時間を求め、その駆動時間から算出する。本実施形態では、ここで算出された搬送モータの総駆動量のことを所定値Ｐdutyと呼ぶ。
【００９５】
図１６は、所定値Ｐdutyの求め方の一例を説明するためのものである。実効電流４１０ｍＡ（２６０ｇｃｍ相当）で制限温度（１１０℃）に到達するまでの時間が、１０００ｓとする。Ａ４サイズの用紙１枚当たりの印刷に要する搬送モータ１５の駆動量が１５０００ステップで、その印刷時間が１０ｓ（印刷処理速度：６ｐｐｍ）であるとすると、搬送モータ１５が制限温度に到達するまでに印刷し得る用紙の枚数は、１０００ｓ／１０ｓで、およそ１００枚となる。このことから、所定値Ｐdutyは、１５０００×１００となり、１５０００００の値が得られる。
【００９６】
＝＝＝従来との相違点＝＝＝
従来は、搬送モータ１５がしばらくの間駆動されなかった場合には、積算値Ｐsumが徐々に減算されたり、また搬送モータ１５が長時間にわたり駆動されなかった場合には、積算値Ｐsumがゼロにリセットされるなどして、搬送モータ１５の温度状態に合うように積算値Ｐsumが減らされていたが、搬送モータ１５が非常に短い時間停止した場合、例えば、キャリッジモータ４２が駆動している間の非常に短い時間停止した場合などについては、積算値Ｐsumに対して何ら対応がとられていなかった。  
このため、搬送モータ１５が過熱状態に陥っていないにもかかわらず、積算値Ｐsumが所定値Ｐdutyに達してしまい、搬送モータ１５が過熱状態にあると判定してしまうことがあった。搬送モータ１５が過熱状態にあると判定されると、発熱制限制御が実行され、搬送モータ１５に冷却するために余計に待機時間が生じ、印刷時間が長くなり、印刷処理が遅れるといった不具合が発生する場合があった。
【００９７】
本実施形態にかかるインクジェットプリンタ１にあっては、このような不具合を解決するために、キャリッジモータ４２が駆動されている間に搬送モータ１５が停止した場合についても、その停止時間に応じて積算値Ｐsumを減らす処理を行える。つまり、搬送モータ１５が停止する都度、その停止時間に応じた値（本発明の減算値に相当。以下、本実施形態では、「Ｐsub」ともいう）を積算値Ｐsumから減算する。なお、このとき、搬送モータ１５の停止時間に応じた値「Ｐsub」を積算値Ｐsumから減算する処理はコントローラ１２６により行う。
【００９８】
＝＝＝処理の概要＝＝＝
図１７は、この処理の概要を説明したものである。コントローラ１２６は、搬送モータ１５が駆動される前に、その駆動量ＰＦstepの情報を取得して、その駆動量ＰＦstepを積算値Ｐsumに加算する。また、コントローラ１２６は、搬送モータ１５の駆動が停止されると、その停止時間を計測して、その停止時間に応じた減算値Ｐsubを積算値Ｐsumから減算する。コントローラ１２６は、このような減算処理を、搬送モータ１５の駆動が停止される都度、実行する。そして、コントローラ１２６は、搬送モータ１５の駆動停止期間が終了し、搬送モータ１５が再度駆動され始められた後、速やかに減算値Ｐsubを積算値Ｐsumから減算する。
【００９９】
なお、搬送モータ１５の停止時間の計測には、図４に示すタイマー１４４が用いられる。コントローラ１２６は、搬送モータ１５の駆動が停止すると、直ちにタイマー１４４を起動して時間計測を開始する。そして、キャリッジモータ４２の駆動が終了し、搬送モータ１５が再び駆動され始めると、コントローラ１２６は、タイマー１４４による時間計測を終了し、搬送モータ１５が停止している間の時間をタイマー１４４から取得する。そして、コントローラ１２６は、その取得した時間に応じた減算値Ｐsubを積算値Ｐsumから減算する。
【０１００】
＜コントローラの減算処理＞
図１８は、このときのコントローラ１２６の処理手順の一例を示したものである。コントローラ１２６は、まず、搬送モータ１５の駆動が停止したか否かをチェックする（Ｓ３０２）。ここで、搬送モータ１５の駆動が停止していない場合には、ステップＳ３０２へと戻り、再度、搬送モータ１５の駆動が停止したか否かをチェックする。このチェックは、搬送モータ１５の駆動が停止するまで行われる。
【０１０１】
搬送モータ１５の駆動が停止したことが確認された場合には、コントローラ１２６は、ステップＳ３０４へと進み、タイマー１４４を起動して直ちに時間計測を開始する（Ｓ３０４）。次に、コントローラ１２６は、搬送モータ１５の駆動が開始されたか否かをチェックする（Ｓ３０６）。ここで、搬送モータ１５の駆動が開始されていない場合には、ステップＳ３０６へと戻り、再度、搬送モータ１５の駆動が開始されたか否かをチェックする。このチェックは、搬送モータ１５の駆動が開始されるまで行われる。  
搬送モータ１５の駆動が開始されたことが確認された場合には、コントローラ１２６は、ステップＳ３０８へと進み、タイマー１４４の時間計測を停止させる（Ｓ３０８）。これにより、コントローラ１２６は、搬送モータ１５の駆動が停止していた時間を取得する（Ｓ３１０）。
【０１０２】
次に、コントローラ１２６は、搬送モータ１５の停止時間に基づき、当該停止時間に対応する減算値Ｐsubを取得する。ここで、コントローラ１２６は、減算値Ｐsubを搬送モータ１５の停止時間から演算により求めるようにしてもよく、また、搬送モータ１５の停止時間と減算値Ｐsubとが対応付けられたテーブルから減算値Ｐsubを取得するようにしてもよい。
【０１０３】
次に、コントローラ１２６は、取得した減算値Ｐsubを積算値Ｐsumから減算する演算処理を行う（Ｓ３１４）。これにより、搬送モータ１５の停止時間に応じて積算値Ｐsumを減らすことができる。このようにして減算値Ｐsubを減らした後、コントローラ１２６は、ステップＳ３１６へと進み、印刷処理が終了したか否かを調べる。ここで、印刷処理が終了していなかった場合には、コントローラ１２６は、再び、ステップＳ３０２へと戻り、再度、搬送モータ１５の駆動が停止したか否かをチェックする（Ｓ３０２）。一方、印刷処理が終了した場合には、コントローラ１２６は、搬送モータ１５の停止時間に応じた積算値Ｐsumの減算処理を終了する。
【０１０４】
＝＝＝減算値Ｐsub＝＝＝
積算値Ｐsumから減算する減算値Ｐsubについては、搬送モータ１５の停止時間に応じた値であれば、どのような値であっても構わない。しかしながら、本実施形態にあっては、なるべく適切な減算値Ｐsubを積算値Ｐsumから減算するために、搬送モータ１５の停止時間以外に、搬送モータ１５の駆動モードも考慮して、その駆動モードに応じた減算値Ｐsubを積算値Ｐsumから減算する。
【０１０５】
図１９は、コントローラ１２６が減算値Ｐsubを取得するために参照するテーブルの一例を示したものである。このテーブルは、搬送モータ１５の停止時間と、搬送モータ１５の駆動モードとに応じて設定された減算値Ｐsubを示すテーブルである。
【０１０６】
減算値Ｐsubは、搬送モータ１５の停止時間Ｔｍに応じて３つに区分されている。すなわち、搬送モータ１５の停止時間Ｔｍが、「１００（ｍｓ）未満」の場合と、「１００（ｍｓ）以上、１４０（ｍｓ）未満」の場合と、「１４０（ｍｓ）以上」の場合との３つである。各区分ごとに、設定される減算値Ｐsubが異なる。なお、「１００（ｍｓ）以上、１４０（ｍｓ）未満」の場合は、例えば、「はがき」サイズほどの用紙に印刷をする場合などがある。また、「１４０（ｍｓ）以上」の場合には、「Ａ４」サイズほどの用紙に印刷をする場合などがある。
【０１０７】
さらに、ここでは、搬送モータ１５の駆動モード毎に減算値Ｐsubが異なる。駆動モードについては、「ＰＳ０」〜「ＰＳ６」の７種類の駆動モードがある。各駆動モード「ＰＳ０」〜「ＰＳ６」は、搬送モータ１５が駆動されるときの駆動量ＰＦstepに応じて設定されている。ここでは、搬送モータ１５の駆動量ＰＦstepが「１〜２５（step）」の場合には、搬送モータ１５の駆動モードとして「ＰＳ６」が設定される。また、搬送モータ１５の駆動量ＰＦstepが「２５〜５０（step）」の場合には、搬送モータ１５の駆動モードとして「ＰＳ５」が設定される。また、搬送モータ１５の駆動量ＰＦstepが「５０〜１００（step）」の場合には、搬送モータ１５の駆動モードとして「ＰＳ４」が設定される。また、搬送モータ１５の駆動量ＰＦstepが「１００〜１５０（step）」の場合には、搬送モータ１５の駆動モードとして「ＰＳ３」が設定される。また、搬送モータ１５の駆動量ＰＦstepが「１５０〜２００（step）」の場合には、搬送モータ１５の駆動モードとして「ＰＳ２」が設定される。また、搬送モータ１５の駆動量ＰＦstepが「２００〜２５０（step）」の場合には、搬送モータ１５の駆動モードとして「ＰＳ１」が設定される。また、搬送モータ１５の駆動量ＰＦstepが「２５０（step）以上」の場合には、搬送モータ１５の駆動モードとして「ＰＳ０」が設定される。
【０１０８】
＜駆動モード＞
各駆動モード「ＰＳ０」〜「ＰＳ６」は、それぞれ搬送モータ１５を駆動するときの搬送モータ１５の制御用プロファイルが異なる。図２０は、各駆動モード「ＰＳ０」〜「ＰＳ６」別の制御用プロファイルの一例を示したものである。各駆動モード「ＰＳ０」〜「ＰＳ６」は、それぞれ搬送モータ１５を駆動するときの加速時の加速度、定速時の速度および減速時の加速度のうちの少なくともいずれか１つが異なっている。
【０１０９】
駆動モード「ＰＳ０」の場合には、駆動量ＰＦstepが「２５０（step）以上」と非常に大きいことから、同図図中の左上に示すように、搬送モータ１５を高速で駆動するために、加速時には、搬送モータ１５に対して大きな駆動電流を付与して、搬送モータ１５の速度が短時間で高速域に達するように制御する。また、減速時には、高速域から短時間で停止できるようにするために、逆方向の駆動電流を付与して、急速に減速できるように制御する。
【０１１０】
一方、駆動モード「ＰＳ１」の場合には、駆動量ＰＦstepが「２００〜２５０（step）」と、「ＰＳ０」の場合に比べて若干少なくなることから、駆動モード「ＰＳ０」ほど高速で駆動することはなく、また、搬送モータ１５の駆動電流も小さい。  
また、駆動モード「ＰＳ２」についても同様に、駆動量ＰＦstepが「１５０〜２００（step）」と少なくなることから、設定される駆動速度も遅くなり、駆動電流も小さくなる。  
さらに、他の駆動モード「ＰＳ３」〜「ＰＳ６」についても同様に、駆動量ＰＦstepが徐々に少なくなることから、設定される駆動速度も徐々に遅くなり、駆動電流も徐々に小さくなる。
【０１１１】
＜減算値Ｐsubが異なる理由＞
このように減算値Ｐsubを駆動モード毎に異なるのには、次の理由がある。図２１は、搬送モータ１５が制限温度に達するまでに印刷可能な用紙の枚数（以下、制限温度到達枚数という）を各駆動モードＰＳ０〜ＰＳ６別にそれぞれシミュレーションを実行して調べてまとめたグラフである。図２１Ａは、駆動モードＰＳ０、ＰＳ１、ＰＳ２、ＰＳ３についてまとめたものである。図２１Ｂは、駆動モードＰＳ３、ＰＳ４、ＰＳ５、ＰＳ６についてまとめたものである。なお、ここでは、制限温度到達枚数については、Ａ４サイズの用紙に印刷をした場合に換算して表している。また、制限温度到達枚数については、先に説明したように、搬送モータ１５を安全に使用できる限界の温度（制限温度）に到達するまでの搬送モータ１５の印刷時間から求めることができる。また、各駆動モードＰＳ０〜ＰＳ６の間で対比をし易くするために、駆動モータＰＳ３の場合の結果を図２１Ａおよび図２１Ｂの双方にそれぞれ記載してある。
【０１１２】
駆動モードＰＳ０、ＰＳ１、ＰＳ２、ＰＳ３においては、図２１Ａに示すように、搬送モータ１５の停止時間が長くなればなるほど、それぞれ制限温度到達枚数が増えている。一方、各駆動モードＰＳ０〜ＰＳ３の間については、駆動モードＰＳ０における制限温度到達枚数が最も多く、駆動モードＰＳ３における制限温度到達枚数が最も少ない。これは、駆動モードＰＳ０、ＰＳ１、ＰＳ２は、駆動モードＰＳ３に比べて駆動速度が速いため、制限温度に到達するまでに印刷し得る用紙の枚数が多くなっているものと考えられる。
【０１１３】
一方、駆動モードＰＳ３、ＰＳ４、ＰＳ５、ＰＳ６においては、図２１Ｂに示すように、駆動モードＰＳ０、ＰＳ１、ＰＳ２の場合と同様に、搬送モータ１５の停止時間が長くなればなるほど、それぞれ制限温度到達枚数が増えている。しかし、各駆動モードＰＳ３〜ＰＳ６の間については、駆動モードＰＳ６における制限温度到達枚数が最も多く、駆動モードＰＳ３における制限温度到達枚数が最も少なくなっている。これは、駆動モードＰＳ４、ＰＳ５、ＰＳ６は、１回の駆動量ＰＦstepが小さい分だけ、搬送モータ１５が停止する回数が増え、これにより、制限温度に到達するまでに印刷し得る用紙の枚数が多くなっているものと考えられる。
【０１１４】
また、駆動モードＰＳ０、ＰＳ１、ＰＳ２、ＰＳ３に比べて、駆動モードＰＳ４、ＰＳ５、ＰＳ６の方が、グラフの傾きが大きくなっているのは、１回の駆動量ＰＦstepが小さい分だけ、搬送モータ１５が停止する回数が増え、これにより、搬送モータ１５の停止時間が長くなればなるほど、制限温度到達枚数が増えたものと考えられる。
【０１１５】
このように各駆動モードＰＳ０〜ＰＳ６毎に、制限温度到達枚数が異なる。特に、他の駆動モードよりも駆動量ＰＦstepが多い場合に、必ずしも制限温度到達枚数が多くなるわけではなく、減算値Ｐsubを各駆動モードＰＳ０〜ＰＳ６毎に個別に設定する必要がある。
【０１１６】
＜減算値Ｐsubの求め方＞
次に、減算値Ｐsubの求め方について詳しく説明する。図２２は、各駆動モード毎に停止時間別に制限温度到達枚数を設定した場合の一例である。ここでは、より高い安全性を確保するために、各制限温度到達枚数が安全側、即ち実際のシミュレーション結果よりも少ない側に設定されている。なお、制限温度到達枚数の求め方については、ここでは先に説明した方法を利用している。
【０１１７】
まず、基準となる駆動条件を決める。ここでは、同図に示すように、駆動モードＰＳ３において、モータ停止時間Ｔｍが「Ｔｍ＜１００（ｍｓ）」の場合の制限温度到達枚数が、「１００枚」と最も少ないことから、この駆動条件を基準として各減算値Ｐsubを求める。
【０１１８】
ここで、駆動モードＰＳ０において、モータ停止時間Ｔｍが「Ｔｍ＜１００（ｍｓ）」の場合の減算値Ｐsubを求めるとする。制限温度到達枚数は「４８０（枚）」である。Ａ４一枚を印刷するときの搬送モータの駆動量ＰＦstepが５８０（ｍｍ）であり、この制限温度到達枚数を搬送モータ１５の総駆動ステップ数に換算すると次のようになる。  
４８０（枚）×５８０（ｍｍ）／２５．４（インチ換算）×７２０（ｄｐｉ）
＝７８９１６５３（step）…………（１）
なお、ここでは、駆動ステップ数として、解像度７２０（ｄｐｉ）で印刷する場合を想定して換算している。  
一方、基準となる駆動モードＰＳ３において、モータ停止時間Ｔｍが「Ｔｍ＜１００（ｍｓ）」の場合における搬送モータの総駆動ステップ数を求めると、次のようになる。  
１００（枚）×５８０（ｍｍ）／２５．４（インチ換算）×７２０（ｄｐｉ）
＝１６４４０９４（step）…………（２）
なお、（２）の値は、所定値Ｐdutyとなる。  
（１）の値と（２）の値との差分を求めると、６２４７５５９（step）となる。この差分から、駆動モードＰＳ０において、モータ停止時間Ｔｍが「Ｔｍ＜１００（ｍｓ）」の場合の増加率を求めると、６２４７５５９／７８９１６５３で、増加率０．７９が得られる。  
この増加率０．７９と、駆動モードＰＳ０における最小駆動量２５０（step）とを乗算する。その結果、０．７９×２５０＝１９７という値が得られる。これにより得られた値を、図１９のＰsubテーブルに示すように、駆動モードＰＳ０において、モータ停止時間Ｔｍが「Ｔｍ＜１００（ｍｓ）」の場合の減算値Ｐsubとして設定する。
【０１１９】
また、駆動モードＰＳ２において、モータ停止時間が「１４０≦Ｔｍ」の場合について検討する。制限温度到達枚数は「３７４（枚）」であることから、この場合の搬送モータの総駆動ステップ数は、次のようになる。  
３７４（枚）×５８０（ｍｍ）／２５．４（インチ換算）×７２０（ｄｐｉ）
＝６１４８９１３（step）…………（３）
（３）の値と、基準となる（２）の値との差分を求めると、４５０４８１９（step）となる。この差分から増加率を求めると、４５０４８１９／６１４８９１３で、増加率約０．７３が得られる。この増加率０．７３と、駆動モードＰＳ２における最小駆動量１５０（step）とを乗算すると、０．７３×１５０＝１０９となり、この値を、図１９のＰsubテーブルに示すように、駆動モードＰＳ２において、モータ停止時間Ｔｍが「１４０≦Ｔｍ」の場合の減算値Ｐsubとして設定する。  
このようにして図２２に示す制限温度到達枚数から、各駆動モードＰＳ０〜ＰＳ６の各モータ停止時間における減算値Ｐsubを求めて、図１９に示すようなＰsubテーブルを完成させる。
【０１２０】
＜減算値Ｐsubの取得手順＞
図２３は、コントローラ１２６による減算値Ｐsubの取得手順の一例を説明したフローチャートである。ここで、コントローラ１２６は、まず、減算値Ｐsubを取得するために、搬送モータ１５の停止時間を取得する（Ｓ４０２）。なお、搬送モータ１５の停止時間の取得方法は、先に説明した通りである。このようにして搬送モータ１５の停止時間を取得した後、次に、コントローラ１２６は、搬送モータ１５の駆動モードに関する情報を取得する（Ｓ４０４）。ここで、コントローラ１２６が取得する駆動モードに関する情報とは、搬送モータの停止時間が終了した後、搬送モータ１５が駆動され始めたときの駆動モードのことである。つまり、例えば、停止時間１００（ｍｓ）の後、搬送モータ１５が駆動モードＰＳ４にて駆動された場合には、その停止時間１００（ｍｓ）に対応して、駆動モードＰＳ４がコントローラ１２６により取得される。
【０１２１】
このようにして搬送モータ１５の駆動モードに関する情報を取得した後、次に、コントローラ１２６は、Ｐsubテーブル（図１９参照）を参照する（Ｓ４０６）。ここで、コントローラ１２６は、取得した停止時間と、取得した駆動モードとに基づき、これらに対応する減算値ＰsubをＰsubテーブルから取得する（Ｓ４０８）。その後、コントローラ１２６は、減算値Ｐsubを取得する処理を終了させる。  
このようにして処理を終了した後、コントローラ１２６は、先に図１８において説明したように、取得した減算値Ｐsubを積算値Ｐsumから減算する演算を行う。なお、コントローラ１２６は、搬送モータ１５の停止時間が終了し、搬送モータ１５の駆動が再開される都度、減算値Ｐsubの取得を行う。
【０１２２】
＜減算値Ｐsubの減算による効果＞
図２４は、従来の場合と本実施形態の場合とにおける積算値Ｐsumの増え方を示したものである。従来の場合には、積算値Ｐsumは、搬送モータ１５の駆動量ＰＦstepが逐次積算されるのみであるため、同図に示すように、印刷枚数が少ない段階で積算値Ｐsumが、過熱状態か否かの判定基準となる所定値Ｐdutyに達してしまう。このため、搬送モータ１５の温度がさほど上昇していない段階で、搬送モータ１５が過熱状態にあると判定されてしまい、搬送モータ１５に対して発熱制限制御が開始されてしまうことがあった。これにより、搬送モータ１５に余計に待機時間が生じて、印刷時間が長くなり、印刷処理が遅れるといった不具合が発生する場合があった。
【０１２３】
これに対して、本実施形態の場合には、搬送モータ１５の駆動毎に、積算値Ｐsumから減算値Ｐsubが逐次減算される。このため、本実施形態の場合には、同図に示すように、従来の場合に比べて、積算値Ｐsumが所定値Ｐdutyに到達する時期が遅れる。つまり、搬送モータ１５の温度が十分に上昇しない限り、積算値Ｐsumが所定値Ｐdutyに到達することはないのである。これによって、本実施形態の場合には、従来よりも余計にＮ枚分だけ、発熱制限制御の実行前に印刷をすることができる。
【０１２４】
＜まとめ＞
以上本実施形態に係るインクジェットプリンタ１にあっては、搬送モータ１５の駆動量ＰＦstepを逐次積算して積算値Ｐsumを求める演算に加え、搬送モータ１５の停止時間からその停止時間に応じた減算値Ｐsubを積算値Ｐsumから減算する演算を実行するため、搬送モータ１５の温度状態に合った積算値Ｐsumを得ることができる。これにより、搬送モータ１５が過熱状態にないにもかかわらず、搬送モータ１５が過熱状態にあると判定してしまって、搬送モータ１５に対し早期に発熱制限制御が実行されるのを防止することができる。また、小さなサイズのモータであっても、同じ発熱制限温度到達枚数を確保することが可能になり、コストダウンを図ることができる。
【０１２５】
さらに本実施形態では、積算値Ｐsumから減算される減算値Ｐsubが、搬送モータ１５の駆動モードも考慮して設定されるから、より適切な減算値Ｐsubを積算値Ｐsumから減算することができ、より搬送モータ１５の温度状態に合った積算値Ｐsumを得ることができる。
【０１２６】
また、本実施形態では、搬送モータ１５の駆動量ＰＦstepが、その駆動量ＰＦstepに基づき搬送モータ１５が駆動される前に、積算値Ｐsumに加算されるから、事前に搬送モータ１５の温度状態を予測することができ、搬送モータ１５に対して早い段階で発熱制限制御を実行することができる。これにより、より安全性を向上させることができる。
【０１２７】
また、本実施形態では、搬送モータ１５の停止時間および駆動モードと、減算値Ｐsubとを対応付けたＰsubテーブルを備えたことから、減算値Ｐsubを簡単に取得することができる。
【０１２８】
なお、本実施形態では、過熱状態を判定するモータとして、搬送モータ１５の場合を例にして説明したが、本実施形態のインクジェットプリンタ１の場合には、キャリッジモータ４２についても、過熱状態か否かの判定対象としても良い。この場合、各種演算や停止時間の取得などについてはコントローラ１２６により行うのが好ましい。また、もちろん、キャリッジモータ４２についても発熱制限制御を実行しても良い。
【０１２９】
＝＝＝その他の実施の形態＝＝＝
以上、一実施形態に基づき、本発明に係るモータの過熱判定装置として、印刷装置に搭載された場合を例にして説明したが、上記の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更または改良され得るとともに、本発明には、その等価物が含まれることは言うまでもない。特に、以下に述べる実施形態であっても、本発明に含まれる。
【０１３０】
また、本実施形態において、ハードウェアによって実現されていた構成の一部又は全部をソフトウェアによって置き換えてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアによって置き換えてもよい。  
また、印刷装置側にて行っていた処理の一部をコンピュータ装置１４０側にて行ってよく、また印刷装置とコンピュータ装置１４０の間に専用の処理装置を介設して、この処理装置にて処理の一部を行わせるようにしてもよい。
【０１３１】
＜印刷装置について＞
前述した実施の形態では、本発明に係るモータの過熱判定装置が搭載される印刷装置として、前述したようなインクジェットプリンタ１の場合を例にして説明したが、本発明に係るモータの過熱判定装置が搭載される印刷装置として、このような印刷装置に限らず、他の方式によりインクを吐出するインクジェットプリンタや、その他、インクを吐出しないタイプのプリンタ、例えば、ドットインパクト式プリンタや熱転写プリンタ、またレーザービーム式プリンタなど、印刷機能を備えた装置であれば、どのような装置であっても本発明の印刷装置に含まれる。
【０１３２】
＜モータについて＞
前述した実施の形態では、過熱判定を行うモータとして、前述した印刷装置に搭載されたモータを例にして説明したが、本発明において判定対象とするモータとしては、必ずしもこのようなモータに限定されない。つまり、印刷装置以外の他の装置に搭載されるあらゆるモータが、本発明における過熱判定の対象となり得る。
【０１３３】
＜過熱判定装置について＞
前述した実施の形態では、本発明に係るモータの過熱判定装置として、印刷装置等のモータを備えた装置に設けられる場合を例にして説明したが、本発明に係るモータの過熱判定装置にあっては、必ずしもこのような場合に限られない。すなわち、本発明に係るモータの過熱判定装置は、モータを備えた装置から独立した単独の形態の装置として存在しても良く、もちろんモータからも独立した単独の装置として存在しても良い。
【０１３４】
＜モータの駆動量について＞
前述した実施の形態では、モータの駆動量として、ステップ数（step数）で表す場合を例にして説明したが、本発明にあっては、必ずしもこのような場合に限られず、他の単位、例えば、ミリメートル（ｍｍ）やセンチメートル（ｃｍ）、マイクロメートル（μｍ）といった単位により表されても良い。
【０１３５】
＜モータの駆動動作の合間の停止時間について＞
前述した実施の形態では、モータの駆動動作の合間の停止時間として、他のモータ（ここでは、キャリッジモータ。）が駆動されている期間の場合を例にして説明したが、本発明にあっては、必ずしもこのような場合に限られない。すなわち、モータが駆動動作の合間に停止している期間であれば、他のモータの駆動の有無は関係ない。
【０１３６】
＜情報取得部について＞
前述した実施の形態では、本発明の情報取得部として、コントローラ１２６等が例示されていたが、本発明にあっては、必ずしもこのような場合に限らず、モータの駆動量に関する情報、または、モータの駆動動作の合間の停止時間に関する情報を取得するのであれば、どのような情報取得部であっても構わない。例えば、外部とのデータの通信を行う通信インターフェース等も、本発明の情報取得部に含まれる場合もある。
【０１３７】
＜演算部について＞
前述した実施の形態では、本発明の演算部として、コントローラ１２６が例示されていたが、本発明にあっては、必ずしもこのような場合に限らず、モータの駆動量の積算値を算出する演算や、積算値から減算値を減算する演算を実行し得る演算部であれば、どのようなものであっても、本発明の演算部に含まれる。
【０１３８】
＜停止時間に応じた減算値について＞
前述した実施の形態では、本発明の「停止時間に応じた減算値」（Ｐsub）として、モータ（搬送モータ１５）の停止時間が、「１００（ｍｓ）未満」の場合と、「１００（ｍｓ）以上、１４０（ｍｓ）未満」の場合と、「１４０（ｍｓ）以上」の場合との３つの場合に区分して設定していたが、本発明にあっては、必ずしもこのような区分する場合に限らず、例えば、モータの停止時間の変動に応じて増減する減算値などを取得するようにしても良い。
【０１３９】
＜所定値について＞
前述した実施の形態では、本発明の所定値として、モータ（搬送モータ１５）が最も過酷な条件（ワースト条件）にて駆動された場合のモータの駆動量を所定値Ｐdutyとして設定していたが、本発明にあっては、必ずしもこのような場合に限らず、例えば、最も過酷な条件にて駆動された場合の値よりも小さい値に設定してもよい。  
また、本発明の所定値は、前述した実施の形態のように、必ずしも固定に設定される必要はない。つまり、例えば、前述した印刷装置の場合、印刷条件や印刷方式などに応じて、所定値Ｐdutyが変動しても良い。この他、各種条件に応じて適宜、所定値（Ｐduty）が変動しても良い。
【０１４０】
＜タイマーについて＞
前述した実施の形態では、タイマー１４４がコントローラ１２６とは別途設けられた構成を例にして説明したが、本発明にあっては、このような場合に限らない。すなわち、例えば、コントローラ１２６にタイマーが内蔵されていても良い。この場合、コントローラ１２６に内蔵されたタイマーを利用して、モータの停止時間を計測するようにしても良い。
【０１４１】
＜駆動モードについて＞
前述した実施の形態では、本発明の駆動モードとして、モータ（搬送モータ１５）の駆動量に応じて、モータの加速時の加速度、定速時の速度および減速時の加速度のうちの少なくともどれか１つが異なる駆動モードについて説明していたが、本発明の駆動モードとしては、このような場合に限らない。すなわち、駆動方式等、様々な要素によって各々異なる駆動モードであっても良い。また、印刷条件や印刷状況などに応じて異なる駆動モードであっても良い。  
特に、駆動モードに応じて、モータを安全に使用できる温度、制限温度に到達するまでに印刷可能な用紙の枚数が異なる場合には、駆動モード毎に減算値Ｐsubを設定することが非常に有効に機能する。
【０１４２】
＜モータ制御装置について＞
前述した実施の形態では、モータの制御装置として、印刷装置に備えられたコントローラや搬送制御部等を例にして説明したが、本発明にあっては、必ずしもこのような場合に限らず、他の形態で構成されていても構わない。また、モータの制御方法としては、前述したような制御方法に限らない。
【０１４３】
＜媒体について＞
媒体Ｓについては、普通紙やマット紙、カット紙、光沢紙、ロール紙、用紙、写真用紙、ロールタイプ写真用紙等をはじめ、これらの他に、ＯＨＰフィルムや光沢フィルム等のフィルム材や布材、金属板材などであっても構わない。すなわち、インクの吐出対象となり得るものであれば、どのような媒体であっても構わない。
【図面の簡単な説明】
【０１４４】
【図１】本発明に係る印刷装置の一実施形態の斜視図。
【図２】印刷装置の内部構成を説明した斜視図。
【図３】印刷装置の搬送部を示す断面図。
【図４】印刷装置のシステム構成を示すブロック構成図。
【図５】印刷装置のヘッドの一例を示す平面図。
【図６】印刷処理の一例を説明するフローチャート。
【図７】ロータリ式エンコーダの一例を説明した説明図。
【図８】ロータリ式エンコーダの検出部の構成を示す構成図。
【図９】図９Ａは、正転時のリニア式エンコーダの出力波形を示したタイミングチャートであり、図９Ｂは、逆転時のリニア式エンコーダの出力波形を示したタイミングチャートである。
【図１０】搬送制御部のブロック構成図。
【図１１】図１１Ａは、ＰＷＭ回路に入力されるデューティ信号の時間変化のグラフであり、図１１Ｂは、モータの速度変化のグラフ。
【図１２】搬送モータの過熱判定に基づく制御例を説明する図。
【図１３】コントローラによる積算の一例を示した図。
【図１４】図１４Ａは、通常時の搬送モータの駆動状況を説明した図であり、図１４Ｂは、発熱制限時の搬送モータの駆動状況を説明した図である。
【図１５】積算処理および判定処理の処理手順の一例を説明するフローチャート。
【図１６】所定値Ｐdutyの設定方法の一例を説明するための説明図。
【図１７】本実施形態の主要な処理の概要を説明するための説明図。
【図１８】減算処理の処理手順の一例を説明するフローチャート。
【図１９】減算値Ｐsubを取得するためのテーブルの一例を示す図。
【図２０】駆動モード別の制御用プロファイルの一例を説明する図。
【図２１】図２１Ａは、駆動モードＰＳ０、ＰＳ１、ＰＳ２、ＰＳ３の場合の制限温度到達枚数を示し、図２１Ｂは、駆動モードＰＳ３、ＰＳ４、ＰＳ５、ＰＳ６の場合の制限温度到達枚数を示す。
【図２２】モータの駆動モード別及び停止時間別の制限温度到達枚数を示す表。
【図２３】減算値の取得手順の一例を説明するフローチャート。
【図２４】従来と本実施形態とにおける積算値の増え方の相違を説明する図。
【符号の説明】
【０１４５】
１  インクジェットプリンタ、２  操作パネル、３  排紙部、４  給紙部、
５  操作ボタン、６  表示ランプ、７  排紙トレー、８  給紙トレー、
１１Ａ  紙挿入口、１１Ｂ  ロール紙挿入口、１３  給紙ローラ、１４  プラテン、
１５  搬送モータ、１７Ａ  搬送ローラ、１７Ｂ  排紙ローラ、
１８Ａ  フリーローラ、１８Ｂ  フリーローラ、２１  ヘッド、
３０  クリーニングユニット、３１  ポンプ装置、３５  キャッピング装置、
４１  キャリッジ、４２  キャリッジモータ、４４  プーリ、４５  タイミングベルト、
４６  ガイドレール、４８  インクカートリッジ、４９  カートリッジ装着部、
５１  リニア式エンコーダ、５３  紙検知センサ、１２２  バッファメモリ、
１２４  イメージバッファ、１２６  コントローラ、１２７  メインメモリ、
１２８  キャリッジモータ制御部、１２９  ＥＥＰＲＯＭ、１３０  搬送制御部、
１３２  ヘッド駆動部、１３４  ロータリ式エンコーダ、１４０  コンピュータ装置、
１４４  タイマー、２１１Ｙ  ノズル群、２１１Ｍ  ノズル群、２１１Ｃ  ノズル群、
２１１Ｋ  ノズル群、４０２  ロータリ式エンコーダ符号板、４０４  検出部、
４０６  スリット、４０８  大歯車、４１０  小歯車、４１２  発光ダイオード、
４１４  コリメータレンズ、４１６  検出処理部、４１８  フォトダイオード、
４２０  信号処理回路、４２２Ａ  コンパレータ、４２２Ｂ  コンパレータ、
４３１  位置演算部、４３２  減算器、４３３  ゲイン、４３４  速度演算部、
４３５  減算器、４３６Ａ  比例要素、４３６Ｂ  積分要素、４３６Ｃ  微分要素、
４３７  加算器、４３８  ＰＷＭ回路、４３９Ａ  加速制御部、４３９Ｂ  タイマ、
４４０  ドライバ、Ｓ  媒体
【図１】
2006033945.tif 000003
【図２】
2006033945.tif 000004
【図３】
2006033945.tif 000005
【図４】
2006033945.tif 000006
【図５】
2006033945.tif 000007
【図６】
2006033945.tif 000008
【図７】
2006033945.tif 000009
【図８】
2006033945.tif 000010
【図９】
2006033945.tif 000011
【図１０】
2006033945.tif 000012
【図１１】
2006033945.tif 000013
【図１２】
2006033945.tif 000014
【図１３】
2006033945.tif 000015
【図１４】
2006033945.tif 000016
【図１５】
2006033945.tif 000017
【図１６】
2006033945.tif 000018
【図１７】
2006033945.tif 000019
【図１８】
2006033945.tif 000020
【図１９】
2006033945.tif 000021
【図２０】
2006033945.tif 000022
【図２１】
2006033945.tif 000023
【図２２】
2006033945.tif 000024
【図２３】
2006033945.tif 000025
【図２４】
2006033945.tif 000026