JP2008072806A - モータ制御装置、モータ制御方法、及び、印刷装置 - Google Patents

モータ制御装置、モータ制御方法、及び、印刷装置 Download PDF

Info

Publication number
JP2008072806A
JP2008072806A JP2006247828A JP2006247828A JP2008072806A JP 2008072806 A JP2008072806 A JP 2008072806A JP 2006247828 A JP2006247828 A JP 2006247828A JP 2006247828 A JP2006247828 A JP 2006247828A JP 2008072806 A JP2008072806 A JP 2008072806A
Authority
JP
Japan
Prior art keywords
motor
counter
control
target speed
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006247828A
Other languages
English (en)
Other versions
JP5061547B2 (ja
Inventor
Yoshitomo Mizoguchi
喜智 溝口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2006247828A priority Critical patent/JP5061547B2/ja
Publication of JP2008072806A publication Critical patent/JP2008072806A/ja
Application granted granted Critical
Publication of JP5061547B2 publication Critical patent/JP5061547B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Spaces And Line Spaces In Printers (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

【課題】移動体の加速等のパターンに適した制御を行う。
【解決手段】モータ制御装置は、カウンタと、メモリと、駆動制御部とを有する。カウンタは、モータの駆動に伴って移動する移動体の移動量をカウントする。メモリは、モータの駆動に関する制御情報を記憶する。このメモリには、カウンタの複数のカウント値に対応した第1制御情報を記憶する第1領域、及び、カウンタのカウント値のそれぞれに対応した第2制御情報を記憶する第2領域が設けられる。駆動制御部は、第1領域と第2領域の何れかを選択し、選択された領域から、カウンタのカウント値に応じた制御情報を読み出し、前記モータの駆動制御を行う。
【選択図】図9

Description

本発明は、モータ制御装置、モータ制御方法、及び、印刷装置に関する。
モータは駆動源として様々な装置に用いられている。例えば、インクジェットプリンタ等の印刷装置では、ヘッドが取り付けられたキャリッジを移動させるための駆動源として、及び、画像が印刷される用紙を搬送させるための駆動源として用いられている。この印刷装置において、キャリッジの加速時及び減速時と一定速度の移動時(定速移動時)とで、異なる制御情報(加速領域電流値データ,固定周期電流値)を用いたものが提案されている(例えば、特許文献1を参照。)。
特開2003−63085号公報
近年の装置では、多様な動作パターンでの制御が行われる。例えば、極めて短い時間で移動体を加速させたり減速させたりするパターンや、移動体を比較的緩やかに加速等させるパターンがある。また、加速期間や減速期間の途中までは移動体を急加速等させ、その後緩やかに加速等させるパターンもある。ここで、移動体における加速度合いや減速度合いを短時間で急に変化させる場合には、モータの駆動制御を細かな間隔で行うことが好ましい。一方、移動体の加速度合いや減速度合いが一定の場合、モータの駆動制御は、加速等の度合いを急に変化させる場合に比べて粗い間隔で行えばよい。
前掲の装置では、加速等の期間において一定周期毎に制御情報を与えているため、加速等の度合いに適した駆動制御が行い難いという問題があった。仮に、制御情報が与えられる間隔を、加速等の度合いを急に変化させる場合を基準に設定したとする。この場合、移動体の加速度合いが一定であるときに、不必要に制御が細かくなってしまう。そして、制御情報の量が過度に多くなってしまい、必要とされるメモリの容量が過度に多くなってしまうという問題が生じる。
本発明はこのような事情に鑑みてなされたものであり、その目的は、移動体の加速等のパターンに適した制御を行うことにある。
前記目的を達成するための主たる発明は、(A)モータの駆動に伴って移動する移動体の移動量をカウントするカウンタと、(B)前記モータの駆動に関する制御情報を記憶したメモリであって、前記カウンタの複数のカウント値に対応した第1制御情報を記憶する第1領域、及び、前記カウンタのカウント値のそれぞれに対応した第2制御情報を記憶する第2領域を有するメモリと、(C)前記第1領域と前記第2領域の何れかを選択し、選択された領域から、前記カウンタのカウント値に応じた制御情報を読み出し、前記モータの駆動制御を行う駆動制御部と、(D)を有するモータ制御装置である。
本発明の他の特徴は、本明細書、及び添付図面の記載により、明らかにする。
本明細書の記載、及び添付図面の記載により、少なくとも次のことが明らかにされる。
すなわち、(A)モータの駆動に伴って移動する移動体の移動量をカウントするカウンタと、(B)前記モータの駆動に関する制御情報を記憶したメモリであって、前記カウンタの複数のカウント値に対応した第1制御情報を記憶する第1領域、及び、前記カウンタのカウント値のそれぞれに対応した第2制御情報を記憶する第2領域を有するメモリと、(C)前記第1領域と前記第2領域の何れかを選択し、選択された領域から、前記カウンタのカウント値に応じた制御情報を読み出し、前記モータの駆動制御を行う駆動制御部と、(D)を有するモータ制御装置を実現できることが明らかにされる。
かかるモータ制御装置であって、タイミングを定めるための電圧変化を有し、かつ、前記移動体が所定量移動する毎に前記電圧変化が生じるタイミング信号を生成する、タイミング信号生成部を有し、前記カウンタは、前記タイミング信号における前記電圧変化の回数を、前記移動体の移動量としてカウントする構成が好ましい。
かかるモータ制御装置であって、前記駆動制御部は、前記カウント値を除算して得られた値を用いて、前記第1領域から前記第1制御情報を読み出し、前記カウント値を用いて、前記第2領域から前記第2制御情報を読み出す構成が好ましい。
かかるモータ制御装置であって、前記駆動制御部は、前記第1領域と前記第2領域とを前記移動体の加速状態に応じて選択する構成が好ましい。
かかるモータ制御装置であって、前記メモリは、前記第1領域と前記第2領域の少なくとも一方を有する制御パターン情報を、前記移動体の移動速度に応じて定められる複数の制御モードのそれぞれに対応させて記憶する構成が好ましい。
かかるモータ制御装置であって、前記メモリは、前記第1制御情報として、前記カウンタの複数のカウント値に対応した前記移動体の目標速度を記憶し、前記第2制御情報として、前記カウンタのカウント値のそれぞれに対応した前記移動体の目標速度を記憶する構成が好ましい。
また、次のモータ制御方法を実現できることが明らかにされる。すなわち、(A)モータの駆動に伴って移動する移動体の移動量をカウントすること、(B)前記モータの駆動に関する制御情報を記憶したメモリに設けられる第1領域と第2領域であって、前記カウンタの複数のカウント値に対応した第1制御情報を記憶する第1領域と前記カウンタのカウント値のそれぞれに対応した第2制御情報を記憶する第2領域について、何れかの領域を選択すること、(C)選択された領域から、前記カウンタのカウント値に応じた制御情報を読み出し、前記モータの駆動制御を行うこと、(D)を行うモータ制御方法を実現できることが明らかにされる。
また、次の印刷装置を実現できることも明らかにされる。すなわち、(A)インクを吐出させるヘッドであって、第1モータによって所定の移動方向に移動されるヘッドについて、その移動量をカウントするカウンタと、(B)前記第1モータの駆動に関する制御情報を記憶したメモリであって、前記カウンタの複数のカウント値に対応した前記移動体の目標速度を、第1制御情報として記憶する第1領域、及び、前記第1カウンタのカウント値のそれぞれに対応した前記移動体の目標速度を、第2制御情報として記憶する第2領域を有するメモリと、(C)前記媒体の搬送終了時に前記ヘッドが前記インクの吐出開始位置へ達するように、前記媒体を搬送するための第2モータを駆動中に前記第1モータの駆動を開始させる駆動制御部であって、前記媒体の搬送終了タイミング、インク吐出開始位置までの前記ヘッドの移動量に対応する前記第1カウンタのカウント値、及び、前記第1領域及び前記第2領域に記憶された前記ヘッド用の目標速度に基づき、前記第1モータに対する駆動制御の開始タイミングを求め、求められた開始タイミングにて、前記第1モータに対する駆動制御を開始する、駆動制御部と、(D)を有する印刷装置を実現できることも明らかにされる。
===第1実施形態===
モータ、及び、モータ制御装置は、種々の装置に用いられる。本明細書では、これらのモータ、及び、モータ制御装置を有するインクジェットプリンタ(以下、単にプリンタともいう。)を例に挙げて説明する。このプリンタは、ヘッドから吐出されたインクによって媒体に画像を印刷する印刷装置に相当する。図1に示すように、プリンタ10は、コントローラ部20とエンジン部30とを有する。
<コントローラ部20について>
コントローラ部20は、プリンタ10における制御を担当する部分であり、CPU21、ASIC22、メモリ23、タイマーIC24、及び、DCユニット25を有する。CPU21は、プリンタ10の全体の制御を行うための演算処理装置である。このCPU21は、バスBUを介して、ASIC22、メモリ23、及び、インタフェース26と通信可能に接続されている。なお、インタフェース26は、ホストコンピュータHCと通信可能に接続されている。この他に、CPU21は、DCユニット25、キャリッジモータドライバ33(CRモータドライバ)、搬送モータドライバ36(PFモータドライバ)と電気的に接続されている。ASIC22は、ホストコンピュータHCからの印刷データに基づいてドット毎の制御データをシリアル伝送したり、ヘッドHDに用いられる駆動波形等を生成したりする。また、ASIC22は、ヘッドドライバ38と通信可能に接続されている。メモリ23は、CPU21やASIC22用のプログラムや変数を記憶する領域として用いられたり、作業用の領域として用いられたりする。このメモリ23は、RAM、EEPROM、ROM等の記憶素子によって構成される。これらの記憶素子によって、作業用の領域等に用いられる揮発性領域、プログラム等を記憶する領域等に用いられる不揮発性領域、及び、変数や定数等を記憶する領域等に用いられる書き換え可能な不揮発性領域が構成される。タイマーIC24は、時間を認識するためのクロック(以下、計時用クロックともいう。)を生成する。そして、計時用クロックはCPU21に供給される。従って、CPU21は、計時用クロックのエッジ(タイミングを示す電圧変化)を、メモリ23に設けられる計時カウンタ領域(図示せず)でカウントすることで、あるタイミングからの経過時間を認識できる。そして、CPU21は、計時用クロックに基づくタイマー信号を出力する。このタイマー信号は、放熱状態の取得タイミングを定める際に用いられる。DCユニット25は、キャリッジモータドライバ33や搬送モータドライバ36を制御するための指令信号(制御用信号)を出力する。なお、DCユニット25については後で詳しく説明する。
<エンジン部30について>
エンジン部30は、印刷のための動作を担当する部分である。そして、エンジン部30は、キャリッジ31と、キャリッジ移動機構32と、キャリッジモータドライバ33と、リニアエンコーダ34と、用紙搬送機構35と、搬送モータドライバ36と、ロータリエンコーダ37と、ヘッドドライバ38とを有する。
キャリッジ31は、インクカートリッジ(図示せず)やヘッドHDが取り付けられる部材である。このキャリッジ31は、キャリッジ移動機構32によって、キャリッジ移動方向(用紙Sの幅方向)に移動される。なお、ヘッドHDは、キャリッジ31に取り付けられているため、キャリッジ31の移動に伴って移動する。従って、キャリッジ31やヘッドHDは移動体に相当する。また、キャリッジ移動機構32はヘッド移動機構に相当し、かつ、移動体を移動させるための移動機構に相当する。本実施形態において、キャリッジ移動機構32は、タイミングベルト41と、駆動プーリー42と、アイドラプーリー43と、キャリッジモータ44を有する。タイミングベルト41は、キャリッジ31に接続されるとともに、駆動プーリー42とアイドラプーリー43との間に架け渡されている。キャリッジモータ44は、キャリッジ31を移動させるための駆動源であり、その回転軸が駆動プーリー42に接続されている。このキャリッジモータ44は、DCモータによって構成されている。このDCモータでは、印加電流に応じてキャリッジモータ44の回転速度を制御することができる。従って、キャリッジモータドライバ33は、DCユニット25からの指令信号の電流量に応じてキャリッジモータ44を駆動させる。
リニアエンコーダ34は、キャリッジ31(ヘッドHD)が所定距離移動する毎に電圧レベルが変化するエンコーダ信号ENC_Cを出力する。図2Aに示すように、リニアエンコーダ34は、所定間隔で透光部が形成された符号板45と、キャリッジ31とともに移動し、エンコーダ信号ENC_Cを出力するセンサユニット46とを有する。符号板45は、プリンタ10のフレーム側に、キャリッジ移動方向に沿って取り付けられている。そして、また、センサユニット46から出力されるエンコーダ信号ENC_Cは、例えば図2Bに示すように、互いに位相の異なる2種類の信号である。そして、各エンコーダ信号ENC_CA,ENC_CBは、符号板45が有する透光部の検出に対応して電圧をHレベルとLレベルの一方から他方へと交互に変化させる。本実施形態において、センサユニット46は、キャリッジ31が1/180インチの距離を移動する毎に、1周期の信号レベル変化(電圧変化)を生じさせる。そして、第2エンコーダ信号ENC_CBは、第1エンコーダ信号ENC_CAに対して1/4周期だけ位相がずれている。このため、第1エンコーダ信号ENC_CAと第2エンコーダ信号ENC_CBの各エッジに基づき、キャリッジ31の移動を1/720インチ毎に検出できる。後で説明するように、このプリンタ10では、エンコーダ信号ENC_Cのエッジのタイミング(電圧変化のタイミング)で、キャリッジモータ44に対する駆動制御が行われる。このため、エンコーダ信号ENC_Cは、制御タイミングを定めるための電圧変化を有するタイミング信号に相当する。また、リニアエンコーダ34は、タイミング信号生成部に相当し、移動体としてのキャリッジ31が所定距離移動する毎に、出力するエンコーダ信号ENC_Cの電圧変化を生じさせる。
用紙搬送機構35は、媒体としての用紙Sを搬送する機構であり、媒体搬送機構に相当する。なお、用紙Sは移動体にも相当するため、用紙搬送機構35も、移動体を移動させるための移動機構に相当する。図1では、その主要部である搬送ローラ47と搬送モータ48を示している。搬送ローラ47は、回転によって用紙Sを搬送方向へ送り出す部材である。この搬送方向は、キャリッジ31の移動方向と直交する方向である。搬送モータ48は、搬送ローラ47を回転させるための駆動源であり、DCモータによって構成される。従って、印加された電流量に応じて搬送モータ48の回転速度を制御できる。そして、搬送モータドライバ36は、DCユニット25からの指令信号の電流量に応じて搬送モータ48を駆動する。
ロータリエンコーダ37は、搬送ローラ47が所定角度回転する毎に電圧レベルが変化するエンコーダ信号ENC_Pを出力する。言い換えれば、用紙Sが所定距離搬送される毎に電圧レベルが変化するエンコーダ信号ENC_Pを出力する。図3Aに一部分を示すように、ロータリエンコーダ37は、所定間隔で透光部が形成された符号板49と、エンコーダ信号ENC_Pを出力するセンサユニット50とを有する。符号板49は、円盤状をしており、透光部が所定間隔で形成されている。そして、搬送ローラ47の回転とともに回転する。この例では、搬送ローラ47の回転軸に符号板49が取り付けられている。センサユニット50は、リニアエンコーダ34が有するものと同様の構成であり、符号板49の透光部と他の部分とを検出する毎に、エンコーダ信号ENC_Pのレベルを変化させる。例えば図3Bに示すように、位相が1/4周期分だけ異なる2種類のエンコーダ信号ENC_PA,ENC_PBを出力する。これにより、用紙Sの搬送量を1/1440インチ毎に検出することができる。なお、このプリンタ10では、エンコーダ信号ENC_Pのエッジのタイミングで、搬送モータ48に対する駆動制御が行われる。このため、エンコーダ信号ENC_Pもまた、制御タイミングを定めるための電圧変化を有するタイミング信号に相当する。そして、ロータリエンコーダ37は、タイミング信号生成部に相当し、移動体としての用紙Sが所定距離移動する毎に、出力するエンコーダ信号ENC_Pの電圧変化を生じさせる。
ヘッドドライバ38は、ヘッドHDの駆動制御を担当する部分である。例えば、ASIC22からシリアル伝送されたドット毎の制御データをパラレル変換したり、この制御データに基づいてインクの吐出制御を行ったりする。
===DCユニット25===
<全体の構成について>
次にDCユニット25について説明する。このDCユニット25は、キャリッジモータ44や搬送モータ48の駆動制御を行うものであり、モータ制御装置における駆動制御部に相当する。このため、DCユニット25は、コントローラ部20が有するCPU21からの各種信号に基づき、キャリッジモータドライバ33や搬送モータドライバ36を制御するための指令信号(制御用信号)を出力する。図4に示すように、DCユニット25は、CPU61、メモリ62、及び、PWM回路63を有する。そして、これらの各部によって、図5に示す機能が実現される。便宜上、図5に示す各機能ブロックを、DCユニット25の構成として説明する。このDCユニット25は、キャリッジモータ44の制御を担当するキャリッジモータ制御ユニット64と、搬送モータ48の制御を担当する搬送モータ制御ユニット65とを有する。
キャリッジモータ制御ユニット64は、位置演算部71、第1減算器72、目標速度演算部73、目標速度テーブル74、速度演算部75、第2減算器76、比例要素77P、積分要素77I、微分要素77D、加算器78、PWM回路63a、及び、ウェイト制御部79によって構成される。同様に、搬送モータ制御ユニット65は、位置演算部81、第1減算器82、目標速度演算部83、目標速度テーブル84、速度演算部85、第2減算器86、比例要素87P、積分要素87I、微分要素87D、加算器88、PWM回路63b、及び、ウェイト制御部89によって構成される。なお、搬送モータ制御ユニット65が有する各部81〜89は、キャリッジモータ制御ユニット64が有する各部71〜79と同様に構成されている。このため、キャリッジモータ制御ユニット64について構成を説明し、搬送モータ制御ユニット65については構成の説明を省略する。
位置演算部71は、リニアエンコーダ34からのエンコーダ信号ENC_Cにおける各々の立ち上がりエッジ、立ち下がりエッジを検出する。そして、検出されたエッジをカウントし、このカウント値に基づいてキャリッジ31の位置を求める。エッジのカウントは、位置演算部71が有する位置カウンタ71aによってなされる。キャリッジモータ44の正転時において、位置カウンタ71aは、1個のエッジが検出されるとカウント値を「+1」する。また、キャリッジモータ44の逆転時において、位置カウンタ71aは、1個のエッジが検出されるとカウント値を「−1」する。第1減算器72は、コントローラ部20のCPU21から送られてくる目標位置と、位置演算部71によって求められたキャリッジ31の演算位置との位置偏差を演算する。目標速度演算部73は、キャリッジ31の目標速度を演算する。この目標速度演算部73は、キャリッジ31が定速で移動している際における目標速度を演算する。すなわち、目標速度演算部73は、第1減算器72からの位置偏差にゲインKpを乗算することで目標速度を求める。なお、このゲインKpの大きさは位置偏差に応じて決定される。そして、ゲインKpは、DCユニット25が有するメモリ62に記憶される。目標速度テーブル74は、キャリッジ31の加速時や減速時において参照される目標速度を、位置カウンタ71aのカウント値に対応させた状態で記憶する。この目標速度テーブル74は、例えばメモリ62が有する一部の領域(不揮発性の領域)を用いて構成される。
速度演算部75は、リニアエンコーダ34からのエンコーダ信号ENC_Cに基づき、キャリッジ31の移動速度を演算する。例えば、あるエッジが検出されてから他のエッジが検出されるまでの時間をタイマカウンタ等によって計測し、キャリッジ31の移動距離を計測時間で除算することで移動速度を求める。なお、キャリッジ31の移動距離は、位置カウンタ71aのカウント値等によって認識される。第2減算器76は、キャリッジ31の加速時や減速時においては、目標速度テーブル74から読み出された目標速度と、速度演算部75によって演算されたキャリッジ31の移動速度との偏差(速度偏差ともいう。)を求める。また、キャリッジ31の定速移動時においては、目標速度演算部73によって演算された目標速度と、速度演算部75によって演算されたキャリッジ31の移動速度との偏差を求める。比例要素77Pは、速度偏差に定数(Gp)を乗算し、乗算結果を出力する。積分要素77Iは、速度偏差に定数(Gi)を乗じ、乗算結果を積算する。微分要素77Dは、現在の速度偏差と1つ前の速度偏差との差に定数(Gd)を乗算し、乗算結果を出力する。そして、比例要素77P、積分要素77I及び微分要素77Dの演算は、リニアエンコーダ34からのエンコーダ信号ENC_Cのエッジで定められるタイミングで行われる。すなわち、エンコーダ信号ENC_Cは、モータの駆動制御の実行タイミングを定めるための第1タイミング信号に相当する。そして、エンコーダ信号ENC_Cにおけるエッジは、制御の実行タイミングを定めるための電圧変化に相当し、エッジ同士の間隔は、制御の実行間隔を定める第1周期に相当する。
比例要素77Pからの出力、積分要素77Iからの出力、及び、微分要素77Dからの出力は、それぞれ加算器78にて加算される。そして、加算結果はPWM回路63aへ入力される。すなわち、加算結果は、デューティ値を示す信号としてPWM回路63aへ入力される。PWM回路63aは、加算結果(デューティ値)に応じた指令信号を生成して出力する。生成された指令信号は、キャリッジモータドライバ33に入力される。キャリッジモータドライバ33は、指令信号の電流量に応じてキャリッジモータ44を駆動する。その結果、キャリッジ31の現在の速度と、目標速度との偏差に応じた制御量でキャリッジモータ44が駆動される。
ウェイト制御部79は、キャリッジモータ44の発熱状態を取得し、取得された発熱状態に基づいてキャリッジモータ44の休止に関する制御(駆動停止制御)をする。このウェイト制御部79により、キャリッジモータ44が過度に発熱していた場合に、必要な休止時間(ウェイト時間)が与えられる。例えば、キャリッジ31が往路方向から復路方向へ移動方向を切り替える場合、或いは、その逆へ移動方向を切り替える場合に、必要な休止時間が与えられる。これにより、キャリッジモータ44の発熱状態を適正範囲に維持できる。
<目標速度テーブル74について>
次に、目標速度テーブル74について説明する。この目標速度テーブル74は、前述したように、キャリッジ31の加速時や減速時において参照される目標速度を、位置カウンタ71aのカウント値に対応させた状態で記憶している。そして、目標速度の情報は、モータの駆動に関する制御情報の一種に相当する。また、目標速度テーブル74は、メモリ62が有する一部の領域によって構成されている。このため、DCユニット25が有するメモリ62は、モータの駆動に関する制御情報を記憶したメモリに相当する。図6に示すように、目標速度テーブル74は、複数の制御パターン情報から構成されている。この制御パターン情報は、キャリッジ31の目標速度を所定のタイミング毎に記憶したものである。これらの制御パターン情報は、キャリッジ31の移動速度に基づいて定められた複数の駆動モードに対応して用意されている。例えば、最も速い移動速度の高速モードに対応する第1制御パターン情報74A、2番目に速い移動速度の速度モードに対応する第2制御パターン情報74B、…、最も遅い移動速度の低速モードに対応する第n制御パターン情報74Nというように、n種類の制御パターン情報が用意されている。
制御パターン情報のそれぞれは、エッジ間テーブルと、1周期テーブルとを有している。ここで、エッジ間テーブルとは、エンコーダ信号ENC_Cが有するエッジ毎に、対応する目標速度を記憶したテーブルである。例えば、図7に示す例において、第1エンコーダ信号ENC_CAについては、タイミングt1,t3,t5,t7,…のように奇数番目のタイミングでエッジが生じる。また、第2エンコーダ信号ENC_CBについては、タイミングt2,t4,t6,t8,…のように偶数番目のタイミングでエッジが生じる。エッジ間テーブルでは、これらの各エッジに対応して定められた目標速度が記憶される。例えば、タイミングt1については、このタイミングt1での目標速度v1が、カウント値(エッジの数)C1に対応する領域に記憶される。また、タイミングt2については、目標速度v2がカウント数C2に対応する領域に記憶される。他のタイミングについても同様に目標速度が記憶される。例えば、タイミングt3については、目標速度v3がカウント数C3に対応する領域に記憶される。また、タイミングt11については、目標速度v11がカウント数C11に対応する領域に記憶される。このようなエッジ間テーブルは、メモリが有する第2領域に相当し、移動体の移動量を示すカウント値のそれぞれに対応した第2制御情報(目標速度v1等)を記憶する。
一方、1周期テーブルとは、エンコーダ信号ENC_Cが有する複数のエッジに対応させて目標速度を記憶したテーブルである。図8の例では、第1エンコーダ信号ENC_CAの1周期に属する複数のエッジ毎に目標速度が記憶される。そして、タイミングt1からタイミングt4のそれぞれに対応する4つのエッジが同じ周期に属する。また、タイミングt5からタイミングt7のそれぞれに対応する4つのエッジが同じ周期に属する。1周期テーブルでは、これらの同じ周期に属する複数のエッジ対して共通に定められた目標速度が記憶される。例えば、複数のタイミングt1〜t4については、これらのタイミングt1〜t4(つまり、これらのタイミングを示すカウント値)における共通の目標速度v21が、対応する領域に記憶される。また、複数のタイミングt5〜t8については、これらのタイミングt5〜t8における共通の目標速度v22が、対応する領域に記憶される。そして、他のタイミングについても同様に目標速度が記憶される。このような1周期テーブルは、メモリが有する第1領域に相当し、移動体の移動量を示す複数のカウント値に対応した第1制御情報(目標速度v21等)を記憶する。
エッジ間テーブルと1周期テーブルとを比較すると、エッジ間テーブルはエンコーダ信号における1/4周期毎に目標速度が記憶されているのに対し、1周期テーブルはエンコーダ信号における1周期毎に目標速度が記憶されている。このため、エッジ間テーブルに基づく制御では、1周期テーブルに基づく制御に比べて目標周期をきめ細かに設定することができる。従って、このエッジ間テーブルを、キャリッジ31を急に加速させたり、急に減速させたりする際に用いることで、適切な目標速度を与えることができる。その結果、キャリッジ31の急な加速や減速を円滑に行うことができる。一方、1周期テーブルに基づく制御では、複数のタイミング(複数のカウント値)に対応して共通の目標速度が記憶されている。このため、目標速度の記憶に必要な容量を抑えることができる。
第1制御パターン情報74A、第2制御パターン情報74B、及び、第n制御パターン情報74Nを比較すると、何れの制御パターン情報も、2つのエッジ間テーブルの間に1つの1周期テーブルが配置されている。例えば、第1制御パターン情報74Aは、前側エッジ間テーブル74aと後側エッジ間テーブル74cの間に、1周期テーブル74bが配置されている。また、第2制御パターン情報74Bは、前側エッジ間テーブル74dと後側エッジ間テーブル74fの間に、1周期テーブル74eが配置されている。同様に、第n制御パターン情報74Nは、前側エッジ間テーブル74gと後側エッジ間テーブル74iの間に、1周期テーブル74hが配置されている。
いずれの制御パターンにおいても、前側エッジ間テーブル74a,74d,74gは、キャリッジ31の加速度合いや減速度合いを次第に高める場合の制御を担当する。後側エッジ間テーブル74c,74f,74iは、キャリッジ31の加速度合いや減速度合いを次第に抑える場合の制御を担当する。また、は、キャリッジ31の加速度合いや減速度合いが安定している場合の制御を担当する。そして、各制御パターン74A,74B,…74Nは、各制御パターンにおける前側エッジ間テーブル及び後側エッジ間テーブルと、1周期テーブルとの比率が異なっている。
簡単に説明すると、第1制御パターン情報74Aは、前側エッジ間テーブル74a及び後側エッジ間テーブル74cの比率が最も多い。言い換えれば、1周期テーブル74bの比率が最も少ない。このような第1制御パターン情報74Aは、前側エッジ間テーブル74a及び後側エッジ間テーブル74cの比率が最も多いため、キャリッジ31における加速度合いや減速度合いの変化が大きい場合の制御に適している。例えば、キャリッジ31を最も高い移動速度で移動させる高速モードにおいて、キャリッジ31を最高速度までできるだけ短時間で加速させ、かつ、キャリッジ31を最高速度からできるだけ短時間で停止させる場合の制御に適している。
一方、第n制御パターン情報74Nは、前側エッジ間テーブル74g及び後側エッジ間テーブル74iの比率が最も少ない。言い換えれば、1周期テーブル74hの比率が最も多い。このような第n制御パターン情報74Nは、前側エッジ間テーブル74a及び後側エッジ間テーブル74cの比率が最も少ないため、キャリッジ31における加速度合いや減速度合いの変化が小さい場合の制御に適している。言い換えれば、加速度合いや減速度合いを一定にしてキャリッジ31を移動させる場合の制御に適している。例えば、キャリッジ31を最も低い移動速度で移動させる低速モードにおいて、キャリッジ31を加速させたり、停止させたりする場合の制御に適している。
このように、キャリッジ31について、急な加速や減速が必要な期間においてエッジ間テーブルに基づく制御を行い、加速や減速の度合いが一定あるいは緩やかな期間において1周期テーブルに基づく制御を行うことで、必要な周期で制御が行えるとともに、必要なメモリの量を抑制することができる。
===モータの駆動制御===
次に、モータの駆動制御について説明する。この駆動制御は、コントローラ部20のメモリ23やDCユニット25のメモリ62に記憶されたコンピュータプログラムに基づいて、DCユニット25のCPU61等によってなされる。このため、これらのプログラムは、対応する制御を実現するためのコードを有している。例示したプリンタ10は、制御対象のモータとしてキャリッジモータ44と搬送モータ48とを有している。そして、キャリッジモータ44の駆動制御と搬送モータ48の駆動制御とは、対象は異なるが同じ内容である。このため、本明細書では、キャリッジモータ44の駆動制御について説明をし、搬送モータ48の駆動制御については説明を省略する。
また、モータの駆動制御に関しては、目標速度テーブル74に記憶された目標速度を読み出して駆動制御を行う加速時や減速時の制御に特徴を有する。このため、特徴的な制御である加速時について説明をする。さらに、使用する制御パターン情報は、第1制御パターン情報74Aとする。図6に示すように、この第1制御パターン情報74Aは、前側エッジ間テーブル74aが12テーブル(12カウント分)、1周期テーブル74bが3テーブル(12カウント分)、後側エッジ間テーブル74cが12テーブル(12カウント分)用意されている。
キャリッジモータの駆動処理(メイン処理)は、リニアエンコーダ34からのエンコーダ信号ENC_Cで規定されるタイミングで行われる。すなわち、エッジで定められるタイミングで行われる。図9Aのフローチャートに示すように、メイン処理では、まず目標速度読出処理が行われる(S1)。この目標速度読出処理は、目標速度テーブル74から、位置カウンタ71aのカウント値に対応する目標速度を読み出す処理である。なお、このプリンタ10では、読み出した目標速度と現在速度との偏差も算出している。
図9Bに示すように、この目標速度読出処理では、まず位置カウンタ71aのカウント値が取得される(S11)。すなわち、CPU61(位置演算部71)は、位置カウンタ71aを参照し、その時点におけるカウント値を取得する。前述したように、位置カウンタ71aは、エンコーダ信号ENC_Cのエッジを検出する毎にカウント値を変化させる。このため、位置カウンタ71aのカウント値は、キャリッジ31(ヘッドHD)の現在位置を示す情報となる。カウント値を取得したならば、CPU61は、起動位置(移動開始点)と現在位置の差分を算出する(S12)。すなわち、起動位置からの移動距離を算出する。このプリンタ10では、カウント値を位置の情報として用いるため、その時点でのカウント値から起動位置におけるカウント値を減算した値が算出される。
差分を算出したならば、CPU61は、参照すべき目標速度テーブルを選択する(S13)。この処理では、カウント値の差分に基づき、前側エッジ間テーブル74a、1周期テーブル74b、後側エッジ間テーブル74cの何れかが選択される。この選択は、各テーブルに付属情報として設定された切替位置の情報に基づいて行われる。図6及び図10に示すように、この例では、前側エッジ間テーブル74aがカウント値[0]から[11]に対応し、1周期テーブル74bがカウント値[12]から[23]に対応し、後側エッジ間テーブル74cがカウント値[24]から[35]に対応している。このため、切替位置の情報としては、1周期テーブル74bの先頭カウント値[12]、及び、後側エッジ間テーブル74cの先頭カウント値[24]が設定されている。CPU61は、カウント値の差分と切替位置の情報に基づいて、参照すべき目標速度テーブルを選択する。すなわち、差分が値[0]から値[11]の範囲内であった場合には前側エッジ間テーブル74aが選択され、差分が値[12]から値[23]の範囲内であった場合には1周期テーブル74bが選択される。また、差分が値[24]から値[35]の範囲内であった場合には後側エッジ間テーブル74cが選択される。そして、CPU61は、選択した目標速度テーブルの格納タイプを参照する(S14)。ここで、格納タイプとは、目標速度がエンコーダ信号ENC_Cのエッジ毎に記憶(格納)されているのか、1周期毎に記憶されているのかの種別である。この格納タイプを示す情報は、切替位置の情報と同様に、各テーブル74a,74b,74cに付属情報として設定されている。
格納タイプを参照したならば、CPU61は、格納タイプに基づく判断をする(S15)。そして、格納タイプが「エッジ毎」であった場合にはステップS16に移行し、格納タイプが「周期毎」であった場合にはステップS19に移行する。格納タイプが「エッジ毎」であった場合、CPU61は、位置カウンタ71aのカウント値でテーブルを参照する旨の設定をする(S16)。そして、CPU61は、エッジ毎の目標周期を設定する(S17)。つまり、隣接するエッジ同士の間隔を目標周期に設定する。これらの設定をしたならば、CPU61は、目標速度テーブル74から対応する目標速度を取得する(S18)。図10の例で説明すると、カウント値が値[0]であった場合、このカウント値[0]に対応する前側エッジ間テーブル74aが参照され、目標速度Ta0が取得される。また、カウント値が値[10]であった場合、対応する前側エッジ間テーブル74aから目標速度Ta10が取得される。同様に、カウント値が値[24]であった場合、対応する後側エッジ間テーブル74cから目標速度Ta12が取得される。
一方、格納タイプが「周期毎」であった場合、CPU61は、位置カウンタ71aのカウント値を1/4した値でテーブルを参照する旨の設定をする(S19)。そして、CPU61は、周期毎の目標周期を設定する(S20)。つまり、第1エンコーダ信号ENC_CAの1周期の間隔を目標周期に設定する。これらの設定をしたならば、CPU61は、目標速度テーブル74から対応する目標速度を取得する(S21)。例えば、カウント値が値[14]であった場合、CPU61は、値[14]から値[12]を減算して、1周期テーブル74bに対応するカウント範囲(値[12]から値[23])における何番目のカウント値であるかを求める。この場合、減算して得られた値が値[2]であるため、カウント範囲における2番目のカウント値となる。そして、この値を1周期に含まれるエッジの数で除算する。この例では1周期に4つのエッジが含まれているので値[4]で除算する。その結果、値[0](=2/4)が得られる。CPU61は、この値[0]に対応する1周期テーブルを参照し、目標速度Tb0を取得する。また、カウント値が値[18]であった場合、CPU61は、値[18]から値[12]を減算し、カウント範囲における6番目のカウント値であることを示す値[6]を取得する。そして、この値[6]を値[4]で除算し、値[1]を得る。得られた値[1]に基づいて、対応する1周期テーブルを参照し、目標速度Tb1を取得する。
以上の手順で、エッジ毎の目標速度(S18)、或いは、周期毎の目標速度(S21)を取得したならば、CPU61(第2減算器76)は、目標速度と現在速度の偏差を求める(S22)。この偏差は、以降の処理で用いられる。目標速度と現在速度の偏差を求めたならば、CPU61は、一連の目標速度読出処理を終了する。
目標速度読出処理(S1)が終了したならば、PID計算処理が行われる(S2)。このPID計算処理では、CPU61(比例要素77P,積分要素77I,微分要素77D,加算器78)は、速度偏差に定数(Gp)、定数(Gi)、定数(Gd)を乗算等し、演算結果を加算する。この加算結果は、デューティ値を示す信号としてPWM回路63aへ入力される。
次に、PWM出力処理(S3)が行われる。このPWM出力処理において、PWM回路63aは、加算結果(デューティ値)に応じた指令信号を生成して出力する。生成された指令信号は、キャリッジモータドライバ33に入力される。キャリッジモータドライバ33は、指令信号の電流量に応じてキャリッジモータ44を駆動する。その結果、キャリッジ31の現在の速度と、目標速度との偏差に応じた制御量でキャリッジモータ44が駆動される。
そして、以上説明した一連の処理がエンコーダ信号ENC_Cで規定されるタイミングで行われることにより、例えば、図11に示すように、加速期間における前側部分、及び、後側部分では、エンコーダ信号ENC_Cのエッジ毎に定められる目標速度に基づいて、キャリッジモータ44の制御が行われる。また、加速期間における中間部分では、エンコーダ信号ENC_Cの周期毎に定められる目標速度に基づいて、キャリッジモータ44の制御が行われる。これにより、その部分に適した周期でキャリッジモータ44の駆動制御を行うことができる。また、目標速度を記憶するための領域を必要な容量に定めることができる。
===まとめ===
以上説明したように、このプリンタ10では、メモリ62の不揮発性領域に設けられる目標速度テーブル74に、1周期テーブル(第1領域)と前側エッジ間テーブル及び後側エッジ間テーブル(第2領域)とを設けている。そして、1周期テーブルには、位置カウンタ71aの複数のカウント値に対応した目標速度(第1制御情報)を記憶させ、前側エッジ間テーブル及び後側エッジ間テーブルには、位置カウンタ71aのカウント値のそれぞれに対応した目標速度(第2制御情報)を記憶させている。そして、DCユニット25(駆動制御部)は、前側エッジ間テーブル、1周期テーブル、及び、後側エッジ間テーブルの何れかを選択し、選択された領域から、位置カウンタ71aのカウント値に応じた目標速度を読み出し、キャリッジモータ44の駆動制御を行う。
この構成により、キャリッジ31やヘッドHD(移動体)における加速度合いや減速度合いを短時間で急に変化させる場合には、前側エッジ間テーブルや後側エッジ間テーブルから目標速度を読み出してキャリッジモータ44の制御を行うことで、駆動制御を細かな間隔(エンコーダ信号ENC_Cのエッジ毎の間隔)で行うことができる。一方、キャリッジ31やヘッドHDにおける加速度合いや減速度合いが一定あるいは緩やかな変化の場合には、1周期テーブルから目標速度を読み出してキャリッジモータ44の制御を行うことで、駆動制御を適度な間隔(エンコーダ信号ENC_Cの1周期毎の間隔)で行うことができる。その結果、メモリ62の容量が過度に多くなってしまう不具合を防止でき、また制御の適正化が図れる。
また、このプリンタ10は、キャリッジ31が所定量移動する毎に、その電圧レベルをHレベルとLレベルの一方から他方へと変化させるエンコーダ信号ENC_Cを生成するリニアエンコーダ34を有している。また、用紙Sが所定量搬送される毎にその電圧レベルをHレベルとLレベルの一方から他方へと変化させるエンコーダ信号ENC_Pを生成するロータリエンコーダ37も有している。そして、各位置カウンタ71a,81aは、これらのエンコーダ信号ENC_C,ENC_Pのエッジの数(電圧変化の回数)を、キャリッジ31の移動量や用紙Sの搬送量としてカウントしている。この構成により、キャリッジ31の移動量や用紙Sの搬送量を容易に認識することができる。
また、DCユニット25(駆動制御部)では、位置カウンタ71aのカウント値を除算して得られた値を用いて、位置カウンタ71aの複数のカウント値に対応した目標速度(第1制御情報)を読み出している。また、位置カウンタ71aのカウント値を用いて、カウント値のそれぞれに対応した目標速度(第2制御情報)を読み出している。この構成により、共通のカウント値を用いて、種類の異なる目標速度(第1制御情報と第2制御情報)を読み出すことができる。
そして、DCユニット25(駆動制御部)は、キャリッジ31の加速状態(加速の変化度合い)に応じて、前側エッジ間テーブル、1周期テーブル、及び、後側エッジ間テーブルの何れかを選択している。この構成により、キャリッジ31の加速状態に適した制御ができる。
また、メモリ62に設けられる目標速度テーブル74は、各制御パターン情報(第1制御パターン情報74A,第2制御パターン情報74B,…,第n制御パターン情報74N)を、キャリッジ31の移動速度や用紙Sの搬送速度に応じて定められる複数の制御モードのそれぞれに対応させて記憶している。この構成により、キャリッジ31等の移動速度に適したパターンで制御が行える。なお、制御パターン情報に関し、前側エッジ間テーブルや後側エッジ間テーブルのように、位置カウンタ71aのカウント値毎に目標速度を与える形式のテーブルだけで構成しても良く、1周期テーブルのように、位置カウンタ71aの複数のカウント値に対応させて目標速度を与える形式のテーブルだけで構成してもよい。
===第2実施形態===
前述した第1実施形態において、目標速度テーブル74には、駆動制御のタイミング毎に与えられる目標速度が、キャリッジの移動距離(エンコーダ信号ENC_C,ENC_Pのエッジのカウント数)と関係付けられた状態で記憶されていた。これらの目標速度と移動距離の情報を用いることで、或る制御タイミングから次の制御タイミングまでの経過時間を事前に知ることができる。ひいては、用紙Sにおける1単位の搬送開始から終了までの経過時間(便宜上、用紙Sの搬送時間ともいう。)を事前に知ることができる。
また、インクの吐出開始位置までのキャリッジ31(ヘッドHD)の移動距離は、ヘッドHDに入力されるドット形成データに基づいて取得できる。ここで、ドット形成データとは、吐出されるインクの量を単位領域(ドットが形成され得る場所として仮想的に定められた空間)毎に示すものである。そうすると、キャリッジ31の移動開始からヘッドHDがインクの吐出を開始するまでの経過時間(便宜上、吐出開始までの時間ともいう。)も事前に知ることができる。
このように、用紙Sの搬送時間と吐出開始までの時間とを事前に知ることができるため、用紙Sの搬送終了時点から吐出開始までの時間だけ遡ったタイミングで、キャリッジ31の移動を開始させると、用紙Sの搬送終了時点とインクの吐出開始時点とを揃えることができる。これにより、或る期間において、用紙Sの搬送動作とキャリッジ31の移動動作とが重畳的になされることとなり、印刷動作を高速化できる。以下、このように構成した第2実施形態について説明する。なお、第2実施形態において、ハードウェアの構成は前述した第1実施形態と同じである。このため、説明は省略する。
また、この実施形態において、キャリッジモータ44は、ヘッドHDをヘッド移動方向(所定の移動方向)に移動させるための第1モータに相当する。位置演算部71が有する位置カウンタ71aは、ヘッドHDの移動量をカウントする第1カウンタに相当する。同様に、搬送モータ48は、用紙Sをヘッド移動方向とは交差する搬送方向へ搬送させるための第2モータに相当する。位置演算部81が有する位置カウンタ81aは、用紙Sの搬送量(移動量)をカウントする第2カウンタに相当する。
加えて、メモリ62に設けられる目標速度テーブル74は、位置カウンタ71aのカウント値に対応するキャリッジモータ44の目標速度を記憶したメモリである。同様に、メモリ62に設けられる目標速度テーブル84は、位置カウンタ81aのカウント値に対応する搬送モータ48の目標速度を記憶したメモリである。この目標テーブル74には、前側エッジ間テーブル74a…、1周期テーブル74b…、及び、後側エッジ間テーブル74c…が設けられる。また、目標速度テーブル84についても同様に、前側エッジ間テーブル、1周期テーブル、及び、後側エッジ間テーブルが設けられる。
これらのテーブルの中で、1周期テーブルは、位置カウンタ71a(第1カウンタ)及び位置カウンタ81a(第2カウンタ)の複数のカウント値に対応したヘッドHDや用紙S(移動体)の目標速度を、第1制御情報として記憶する第1領域に相当する。また、前側エッジ間テーブルと後側エッジ間テーブルは、位置カウンタ71a及び位置カウンタ81aのカウント値のそれぞれに対応したヘッドHDや用紙Sの目標速度を、第2制御情報として記憶する第2領域に相当する。
そして、駆動制御部としてのDCユニット25(CPU61,メモリ62)は、用紙Sの搬送終了時における位置カウンタ81aのカウント値、及び、目標速度テーブル84に記憶された用紙S用の目標速度に基づき、搬送モータ48に対する駆動制御の終了タイミングを求め、求められた終了タイミング、インク吐出開始位置までのヘッドHDの移動量に対応する位置カウンタ71aのカウント値、及び、目標テーブル74に記憶されたヘッドHD用の目標速度に基づき、キャリッジモータ44に対する駆動制御の開始タイミングを求め、求められた開始タイミングにて、キャリッジモータ44に対する駆動制御を開始する。
<処理の具体例について>
以上の処理を図12に基づいて具体的に説明する。まず、DCユニット25(駆動制御部)では、用紙Sに対する1単位の搬送時間WP、すなわち、あるパスから次のパスへ移行する際における用紙Sの搬送に要する時間を求める。この搬送時間WPは、例えば、定数としてメモリ62に記憶されているものが用いられる。すなわち、搬送期間WPは主に搬送量に基づいて定まり、他の要因による変動の影響は少ないからである。そして、この搬送時間WPが得られると、DCユニット25は、搬送モータ48の駆動開始タイミングt1に対応する駆動終了タイミングt2(用紙Sの搬送終了タイミング)を認識することができる。
次に、DCユニット25は、インクの吐出を開始するヘッドHDの位置P1(キャリッジ移動方向の位置)を取得する。この取得は、例えば、コントローラ部20のCPU21からの情報に基づいて行われる。この情報としては、例えば、ドット形成データに基づくドットの形成位置の情報が用いられる。そして、キャリッジ31(ヘッドHD)の停止位置は、位置カウンタ71aのカウント値より認識できるので、インク吐出開始位置P1を取得することにより、キャリッジ31の停止位置からインクの吐出開始位置P1までの移動距離Xが認識できる。
キャリッジ31の移動距離Xを認識したならば、DCユニット25は、この移動距離Xを移動するために必要な移動時間WC1を取得する。この移動時間WC1は、目標速度テーブル74に記憶された目標速度と、エンコーダ信号ENC_Pのエッジ同士で規定されるキャリッジの単位移動量に基づいて求めることができる。便宜上、吐出開始位置P1に対応する位置カウンタ71aのカウント値は値[30]であるとする。なお、カウント値は吐出開始位置P1と互いに関連しているので、DCユニット25は、吐出開始位置P1の情報からカウント値を取得できる。
DCユニット25は、カウント値[30]に基づいて目標速度テーブル74を参照し、対象となる範囲のテーブルを特定する。例えば、第1制御パターン情報74Aを用いる場合、図10に示すように、対象となるテーブルとして、前側エッジ間テーブル74aと、1周期テーブル74bと、後側エッジ間テーブル74bの7番目のテーブルまでとが特定される。そして、特定された個々のテーブルについて、目標速度毎に所要時間が計算される。
例えば、前側エッジ間テーブル74aの1番目のテーブルには、目標速度Ta0が記憶されている。この目標速度Ta0は、キャリッジ31を1/180インチの1/4(つまり、1/720インチ)だけ移動させる際の、キャリッジ31の移動速度と考えることができる。このため、この移動距離(1/720インチ)を目標速度Ta0で除算することで、目標速度Ta0に対応する所要時間が計算できる。そして、前側エッジ間テーブル74aや後側エッジ間テーブル74cに属する他のテーブルについても同様の計算により、各目標速度Ta1〜Ta18に対応する所要時間が計算できる。
また、1周期テーブル74bの1番目のテーブルには、目標速度Tb0が記憶されている。この目標速度Tb0は、キャリッジ31を1/180インチだけ移動させる際の、キャリッジ31の移動速度と考えることができる。このため、この移動距離(1/180インチ)を目標速度Tb0で除算することで、目標速度Tb0に対応する所要時間が計算できる。なお、1周期テーブル74bに属する他のテーブルについても同様の計算により、各目標速度Tb1,Tb2に対応する所要時間が計算できる。
各目標速度Ta0〜Ta18,Tb0〜Tb2に対応する所要時間が得られたならば、DCユニット25は、全ての所要時間を加算する。これにより、図12に示す移動時間WC1が得られる。
移動時間WC1が得られたならば、DCユニット25は、タイミングt2から移動時間WC1だけ遡ったタイミングt3を特定し、このタイミングt3をキャリッジ31の駆動開始タイミングに定める。
そして、DCユニット25は、搬送モータ48の駆動をタイミングt1で開始した後、タイミングt3の到来を監視する。そして、タイミングt3が到来したことを条件に、搬送モータ48の駆動中にキャリッジモータ44の駆動を開始する。これにより、用紙Sの搬送終了タイミングとヘッドHDからのインクの吐出タイミングが、ともにタイミングt2で揃う。その結果、印刷の高速化が図れる。そして、このプリンタ10では、目標速度テーブル74に記憶された目標速度を用いてキャリッジモータ44の駆動開始タイミングt3を定めているので、移動時間WC1を精度良く定めることができる。その結果、用紙Sの搬送終了タイミングとヘッドHDからのインクの吐出タイミングとを、より精度良く定めることができる。
なお、以上の説明では搬送時間WPを定数としてメモリ62に記憶させていたが、この搬送時間WPを演算で用いて求めてもよい。この場合、加速期間WP1及び減速期間WP3では、目標速度テーブル84に記憶されている目標速度、及び、エンコーダ信号ENC_Pで規定される単位搬送量(対応するエッジ同士によって定まる搬送量)に基づいて必要な時間が求められる。また、定速期間WP2では、目標搬送量、目標搬送量を与える回数、及び、ゲインKpに基づいて必要な時間が求められる。
===その他の実施形態===
前述の実施形態は、主としてプリンタ10に組み込まれたモータ制御装置について記載されているが、その中には、モータ制御方法や制御用プログラムの開示も含まれている。また、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることはいうまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
<制御対象となるモータ等について>
前述の各実施形態において、プリンタ10は、キャリッジモータ44と搬送モータ48を有していたが、他の種類のモータも制御対象とすることができる。そして、これらのモータは、DCモータによって構成されていたが、他の種類のモータによって構成してもよい。また、発熱量を取得するための信号として、前述の実施形態では、PWM回路63から出力された指令信号を用いていた。しかしながら、モータの発熱量を認識できる信号であれば、指令信号に限定されるものではない。例えば、PWM回路63に入力されるデューティ信号であってもよい。
<モータ制御装置が組み込まれる対象装置について>
前述の各実施形態では、モータ制御装置が組み込まれる対象装置として、プリンタ10を例に挙げて説明した。しかしながら、対象装置はプリンタ10に限定されるものではない。モータを有する他の装置も対象装置となり得る。
<制御情報について>
第1実施形態では、テーブルに記憶される制御情報として目標速度が例示されていた。制御情報としては、目標速度に限定されるものではない。他の種類の情報であってもよい。
プリンタの構成を説明するブロック図である。 図2Aは、リニアエンコーダの構成を説明するための図である。図2Bは、リニアエンコーダからのエンコーダ信号を説明するための図である。 図3Aは、ロータリエンコーダの構成を説明するための図である。図3Bは、ロータリエンコーダからのエンコーダ信号を説明するための図である。 DCユニットの構成を説明するブロック図である。 DCユニットの機能を説明するブロック図である。 目標速度テーブルを説明する概念図である。 エンコーダ信号のエッジ毎の電流値(目標速度)を説明する概念図である。 エンコーダ信号の周期毎の電流値(目標速度)を説明する概念図である。 図9Aは、キャリッジモータの駆動処理(メイン処理)を説明するフローチャートである。図9Bは、キャリッジモータの駆動処理における、目標速度読出処理を説明するフローチャートである。 目標速度テーブルからの目標速度の読み出しを説明する概念図である。 1パス期間中における指令信号の電流値、キャリッジの移動速度、及び、エンコーダ信号を説明する図である。 第2実施形態を説明する図である。
符号の説明
10 プリンタ,20 コントローラ部,21 CPU,22 ASIC,
23 メモリ,24 タイマーIC,25 DCユニット,26 インタフェース,
30 エンジン部,31 キャリッジ,32 キャリッジ移動機構,
33 キャリッジモータドライバ,34 リニアエンコーダ,
35 用紙搬送機構,36 搬送モータドライバ,37 ロータリエンコーダ,
38 ヘッドドライバ,41 タイミングベルト,42 駆動プーリー,
43 アイドラプーリー,44 キャリッジモータ,45 符号板,
46 センサユニット,47 搬送ローラ,48 搬送モータ,
49 符号板,50 センサユニット,61 CPU,62 メモリ,
63 PWM回路,63a キャリッジモータ制御ユニット側のPWM回路,
63b 搬送モータ制御ユニット側のPWM回路,
64 キャリッジモータ制御ユニット,65 搬送モータ制御ユニット,
71 位置演算部,71a 位置カウンタ,72 第1減算器,
73 目標速度演算部,74 目標速度テーブル,74A 第1制御パターン情報,
74B 第2制御パターン情報,74N 第n制御パターン情報,
74a,74d,74g 前側エッジ間テーブル,
74c,74f,74i 後側エッジ間テーブル,
74b,74e,74h 1周期テーブル,
75 速度演算部,76 第2減算器,
77P 比例要素,77I 積分要素,77D 微分要素,78 加算器,
79 ウェイト制御部,81 位置演算部,82 第1減算器,
83 目標速度演算部,84 目標速度テーブル,85 速度演算部,
86 第2減算器,87P 比例要素,87I 積分要素,87D 微分要素,
88 加算器,89 ウェイト制御部,BU バス,HC ホストコンピュータ,
HD ヘッド,ENC_CA 第1エンコーダ信号,
ENC_CB 第2エンコーダ信号,ENC_PA 第1エンコーダ信号,
ENC_PB 第2エンコーダ信号,Kp ゲイン

Claims (8)

  1. (A)モータの駆動に伴って移動する移動体の移動量をカウントするカウンタと、
    (B)前記モータの駆動に関する制御情報を記憶したメモリであって、
    前記カウンタの複数のカウント値に対応した第1制御情報を記憶する第1領域、及び、前記カウンタのカウント値のそれぞれに対応した第2制御情報を記憶する第2領域を有するメモリと、
    (C)前記第1領域と前記第2領域の何れかを選択し、選択された領域から、前記カウンタのカウント値に応じた制御情報を読み出し、前記モータの駆動制御を行う駆動制御部と、
    (D)を有するモータ制御装置。
  2. 請求項1に記載のモータ制御装置であって、
    タイミングを定めるための電圧変化を有し、かつ、前記移動体が所定量移動する毎に前記電圧変化が生じるタイミング信号を生成する、タイミング信号生成部を有し、
    前記カウンタは、
    前記タイミング信号における前記電圧変化の回数を、前記移動体の移動量としてカウントする、モータ制御装置。
  3. 請求項2に記載のモータ制御装置であって、
    前記駆動制御部は、
    前記カウント値を除算して得られた値を用いて、前記第1領域から前記第1制御情報を読み出し、
    前記カウント値を用いて、前記第2領域から前記第2制御情報を読み出す、モータ制御装置。
  4. 請求項1から請求項3の何れかに記載のモータ制御装置であって、
    前記駆動制御部は、
    前記第1領域と前記第2領域とを前記移動体の加速度合いに応じて選択する、モータ制御装置。
  5. 請求項4に記載のモータ制御装置であって、
    前記メモリは、
    前記第1領域と前記第2領域の少なくとも一方を有する制御パターン情報を、前記移動体の移動速度に応じて定められる複数の制御モードのそれぞれに対応させて記憶する、モータ制御装置。
  6. 請求項1から請求項5の何れかに記載のモータ制御装置であって、
    前記メモリは、
    前記第1制御情報として、前記カウンタの複数のカウント値に対応した前記移動体の目標速度を記憶し、
    前記第2制御情報として、前記カウンタのカウント値のそれぞれに対応した前記移動体の目標速度を記憶する、モータ制御装置。
  7. (A)モータの駆動に伴って移動する移動体の移動量をカウントすること、
    (B)前記モータの駆動に関する制御情報を記憶したメモリに設けられる第1領域と第2領域であって、前記カウンタの複数のカウント値に対応した第1制御情報を記憶する第1領域と前記カウンタのカウント値のそれぞれに対応した第2制御情報を記憶する第2領域について、何れかの領域を選択すること、
    (C)選択された領域から、前記カウンタのカウント値に応じた制御情報を読み出し、前記モータの駆動制御を行うこと、
    (D)を行うモータ制御方法。
  8. (A)インクを吐出させるヘッドであって、第1モータによって所定の移動方向に移動されるヘッドについて、その移動量をカウントするカウンタと、
    (B)前記第1モータの駆動に関する制御情報を記憶したメモリであって、
    前記カウンタの複数のカウント値に対応した前記移動体の目標速度を、第1制御情報として記憶する第1領域、及び、前記第1カウンタのカウント値のそれぞれに対応した前記移動体の目標速度を、第2制御情報として記憶する第2領域を有するメモリと、
    (C)前記媒体の搬送終了時に前記ヘッドが前記インクの吐出開始位置へ達するように、前記媒体を搬送するための第2モータを駆動中に前記第1モータの駆動を開始させる駆動制御部であって、
    前記媒体の搬送終了タイミング、インク吐出開始位置までの前記ヘッドの移動量に対応する前記第1カウンタのカウント値、及び、前記第1領域及び前記第2領域に記憶された前記ヘッド用の目標速度に基づき、前記第1モータに対する駆動制御の開始タイミングを求め、
    求められた開始タイミングにて、前記第1モータに対する駆動制御を開始する、駆動制御部と、
    (D)を有する印刷装置。
JP2006247828A 2006-09-13 2006-09-13 モータ制御装置、モータ制御方法、及び、印刷装置 Expired - Fee Related JP5061547B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006247828A JP5061547B2 (ja) 2006-09-13 2006-09-13 モータ制御装置、モータ制御方法、及び、印刷装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006247828A JP5061547B2 (ja) 2006-09-13 2006-09-13 モータ制御装置、モータ制御方法、及び、印刷装置

Publications (2)

Publication Number Publication Date
JP2008072806A true JP2008072806A (ja) 2008-03-27
JP5061547B2 JP5061547B2 (ja) 2012-10-31

Family

ID=39293904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006247828A Expired - Fee Related JP5061547B2 (ja) 2006-09-13 2006-09-13 モータ制御装置、モータ制御方法、及び、印刷装置

Country Status (1)

Country Link
JP (1) JP5061547B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010099659A (ja) * 2008-10-21 2010-05-06 Lobtex Co Ltd リベット材取付作業管理システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06237588A (ja) * 1993-02-05 1994-08-23 Konica Corp 画像形成装置の光学走査系駆動用モータの速度制御回路
JP2003063085A (ja) * 2001-08-29 2003-03-05 Seiko Epson Corp 印刷制御装置及び印刷方法
JP2004090267A (ja) * 2002-08-29 2004-03-25 Canon Inc 記録装置及び記録装置の制御方法
JP2005094820A (ja) * 2003-09-12 2005-04-07 Ricoh Co Ltd モータ駆動制御及び画像形成装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06237588A (ja) * 1993-02-05 1994-08-23 Konica Corp 画像形成装置の光学走査系駆動用モータの速度制御回路
JP2003063085A (ja) * 2001-08-29 2003-03-05 Seiko Epson Corp 印刷制御装置及び印刷方法
JP2004090267A (ja) * 2002-08-29 2004-03-25 Canon Inc 記録装置及び記録装置の制御方法
JP2005094820A (ja) * 2003-09-12 2005-04-07 Ricoh Co Ltd モータ駆動制御及び画像形成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010099659A (ja) * 2008-10-21 2010-05-06 Lobtex Co Ltd リベット材取付作業管理システム

Also Published As

Publication number Publication date
JP5061547B2 (ja) 2012-10-31

Similar Documents

Publication Publication Date Title
US7712857B2 (en) Printing apparatus, printing method, program, storage medium, and computer system
US20050078134A1 (en) Printing apparatus, printing method, storage medium, and computer system
US7135831B2 (en) Method and device for controlling motor
JP4457456B2 (ja) 印刷装置
JP2001103778A (ja) プリンタ用モータの制御装置および制御方法ならびに制御プログラムを記録した記録媒体
US7121749B2 (en) Device and method for carriage drive control
WO2004005031A1 (ja) インクジェット印刷装置、該装置のインクジェット印刷方法、インクジェット印刷プログラム、および該プログラムを記録した記録媒体
JP5061547B2 (ja) モータ制御装置、モータ制御方法、及び、印刷装置
JP2010029013A (ja) モータ制御装置、モータ制御方法および印刷装置
JP3570617B2 (ja) Dcモータ制御装置及び制御方法
JP2003266652A (ja) 印刷装置、印刷方法、プログラム及びコンピュータシステム
JP4552543B2 (ja) モータの過熱判定装置、モータの過熱判定方法、モータの過熱判定プログラム、モータ制御装置、モータ制御方法及び印刷装置
JP4325151B2 (ja) 印刷装置およびコンピュータシステム
JP3777936B2 (ja) モータ制御方法及び制御装置
JP4662821B2 (ja) モータ駆動制御装置及び画像形成装置、プログラム
JP5845693B2 (ja) 搬送装置及び画像形成装置
JP3818496B2 (ja) プリンタ制御装置及びプリンタ制御方法
JP2008072805A (ja) モータ制御装置、及び、モータ制御方法
JP2005176518A (ja) 記録装置、モータ制御装置及び方法
JP2006150619A (ja) 印刷装置、コンピュータプログラム、印刷システム、及び、印刷方法
JP2006272762A (ja) 印刷装置、印刷方法、及びプログラム
JP5071073B2 (ja) モータ制御装置、プリンタおよび駆動制御方法
JP3945362B2 (ja) Dcモータを備えた印刷装置
JP2017136828A (ja) 移動制御装置、液滴吐出装置、移動制御方法、及び、プログラム
JP2017132180A (ja) 印刷装置および位置制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090724

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111102

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120710

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120723

R150 Certificate of patent or registration of utility model

Ref document number: 5061547

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees