JP2008072805A - モータ制御装置、及び、モータ制御方法 - Google Patents

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

Info

Publication number
JP2008072805A
JP2008072805A JP2006247827A JP2006247827A JP2008072805A JP 2008072805 A JP2008072805 A JP 2008072805A JP 2006247827 A JP2006247827 A JP 2006247827A JP 2006247827 A JP2006247827 A JP 2006247827A JP 2008072805 A JP2008072805 A JP 2008072805A
Authority
JP
Japan
Prior art keywords
motor
period
heat generation
signal
unit
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.)
Pending
Application number
JP2006247827A
Other languages
English (en)
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 JP2006247827A priority Critical patent/JP2008072805A/ja
Publication of JP2008072805A publication Critical patent/JP2008072805A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Control Of Direct Current Motors (AREA)

Abstract

【課題】モータの発熱状態を管理するに際し、発熱についての情報の取得精度向上を図りつつ、処理の過度な負担を防止する。
【解決手段】モータ制御装置は、駆動制御部と発熱状態取得部とを有する。駆動制御部は、制御の実行タイミングを定めるための信号レベル変化が第1周期で生じる第1タイミング信号に基づき、モータの駆動制御を前記第1周期毎に行う。発熱状態取得部は、発熱状態の取得タイミングを定めるための信号レベル変化が第1周期よりも長い第2周期で生じる第2タイミング信号に基づき、モータの駆動中に、このモータの発熱状態を第2周期毎に取得する。
【選択図】図6

Description

本発明は、モータ制御装置、及び、モータ制御方法に関する。
モータは駆動源として様々な装置に用いられている。例えば、インクジェットプリンタ等の印刷装置では、ヘッドが取り付けられたキャリッジを移動させるための駆動源として、及び、画像が印刷される用紙を搬送させるための駆動源として用いられている。この種のモータにおいて、本来の性能を発揮させるためには発熱状態の管理が重要となる。
発熱状態を管理する方法として、モータの駆動時に供給される総電流量を用いるものがある(例えば、特許文献1を参照。)。この方法では、インクを吐出するためのヘッドを往復移動させるためのモータを対象とし、ヘッドの移動方向が切り替わる際の停止時間を、モータへ供給される総電流量に基づいて制御している。簡単に説明すると、ヘッドを往路方向や復路方向へ移動させる際に、往路方向や復路方向への1回の移動(つまり、1パスの移動)に要する総電流量を求める。そして、求められた総電流量に基づいてモータの停止時間を定めている。
特開2001−78476号公報
前述した方法では、ヘッドが1パスの移動をする一連の動作を単位として総電流量を求めている。このため、発熱に関する情報の取得精度を向上させることが難しいという問題があった。
本発明はこのような事情に鑑みてなされたものであり、その目的はモータの発熱状態を管理するに際し、発熱に関する情報の取得精度を向上させることにある。
前記目的を達成するための主たる発明は、
(A)制御の実行タイミングを定めるための信号レベル変化が第1周期で生じる第1タイミング信号に基づき、モータの駆動制御を前記第1周期毎に行う駆動制御部と、
(B)発熱状態の取得タイミングを定めるための信号レベル変化が前記第1周期よりも長い第2周期で生じる第2タイミング信号に基づき、前記モータの駆動中に、前記モータの発熱状態を前記第2周期毎に取得する発熱状態取得部と、
(C)を有するモータ制御装置である。
本発明の他の特徴は、本明細書、及び添付図面の記載により、明らかにする。
本明細書の記載、及び添付図面の記載により、少なくとも次のことが明らかにされる。
すなわち、(A)制御の実行タイミングを定めるための信号レベル変化が第1周期で生じる第1タイミング信号に基づき、モータの駆動制御を前記第1周期毎に行う駆動制御部と、(B)発熱状態の取得タイミングを定めるための信号レベル変化が前記第1周期よりも長い第2周期で生じる第2タイミング信号に基づき、前記モータの駆動中に、前記モータの発熱状態を前記第2周期毎に取得する発熱状態取得部と、(C)を有するモータ制御装置を実現できる。
かかるモータ制御装置であって、前記モータは、DCモータであり、前記駆動制御部は、前記モータの駆動量に応じた電流量の制御信号を前記第1周期毎に出力し、前記発熱状態取得部は、前記電流量に基づいて前記モータの発熱状態を前記第2周期毎に取得する構成が好ましい。
かかるモータ制御装置であって、前記駆動制御部は、前記モータの駆動制御を、前記モータの駆動モードに応じて定められる前記第1周期毎に行い、前記発熱状態取得部は、前記モータの発熱状態を、前記駆動モードに関わらず一定値に定められる前記第2周期毎に取得する構成が好ましい。
かかるモータ制御装置であって、前記駆動モードは、前記モータの駆動に伴って移動する移動体の移動速度に応じて定められ、前記第1タイミング信号は、前記移動体が単位量だけ移動する毎に前記信号レベル変化を生じさせる構成が好ましい。
かかるモータ制御装置であって、前記移動体は、媒体に向けてインクを吐出するヘッドである構成が好ましい。
かかるモータ制御装置であって、前記移動体は、ヘッドから吐出されたインクによって画像が印刷される媒体である構成が好ましい。
かかるモータ制御装置であって、前記発熱状態取得部は、取得した発熱状態を前記第2周期毎に累積し、放熱状態の取得タイミングを定めるための信号レベル変化が前記第2周期よりも長い第3周期で生じる第3タイミング信号に基づき、前記放熱状態を加味して、前記発熱状態を前記第3周期毎に更新する構成が好ましい。
かかるモータ制御装置であって、前記発熱状態取得部が取得した前記モータの発熱度合いに応じて、前記モータの休止を制御する休止制御部を有する構成が好ましい。
また、次のモータ制御方法が実現できることも明らかにされる。すなわち、(A)制御の実行タイミングを定めるための信号レベル変化が第1周期で生じる第1タイミング信号に基づき、モータの駆動制御を前記第1周期毎に行うこと、(B)発熱状態の取得タイミングを定めるための信号レベル変化が前記第1周期よりも長い第2周期で生じる第2タイミング信号に基づき、前記モータの駆動中に、前記モータの発熱状態を前記第2周期毎に取得すること、(C)を行うモータ制御方法が実現できることも明らかにされる。
===第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インチ毎に検出できる。
用紙搬送機構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インチ毎に検出することができる。
ヘッドドライバ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は、モータ制御装置において、モータの発熱状態を取得する発熱状態取得部に相当し、かつ、モータの発熱度合いに応じて、モータの休止を制御する休止制御部に相当する。ウェイト制御部79は、バッファ領域79a、発熱量計算部79b、放熱量計算部79c、発熱量記憶領域79d、及び、駆動停止時間取得部79eから構成されている。バッファ領域79aは、PWM回路63aからの出力を一時的に記憶する部分である。このバッファ領域79aは、メモリ62の一部(例えば、揮発性領域)によって構成される。そして、バッファ領域79aの記憶内容は、PWM回路63aからの出力、つまり指令信号の電流値が更新される毎に更新される。言い換えれば、第1周期毎に更新される。
発熱量計算部79bは、バッファ領域79aに記憶された指令信号の電流値に基づき、モータの発熱量を計算する。この発熱量計算部79bは、発熱計算用割込信号によって規定されるタイミング、詳しくはエッジのタイミングで発熱量の計算を行う。発熱計算用割込信号は、モータの発熱状態の取得タイミングを定めるための第2タイミング信号に相当し、モータの駆動期間に亘って生成される。従って、この発熱計算用割込信号では、発熱状態の取得タイミングを定めるエッジが発熱状態の取得タイミングを定めるための信号レベル変化に相当する。また、対になるエッジ同士の時間間隔が第2周期に相当する。この発熱計算用割込信号におけるエッジ同士の間隔は、エンコーダ信号ENC_Cにおけるエッジ同士の時間間隔よりも長く定められている。このプリンタ10では、キャリッジ31の移動速度が異なる複数の制御モード(モータの駆動モードに相当する。)が選択できるが、発熱計算用割込信号のエッジ間隔は、最も移動速度の遅い制御モードでのエッジ同士の時間間隔よりも長くなるように定められている。図8の例では、制御モードとして、実線で示す標準速度の制御モードと、一点鎖線で示す高速の制御モードと、点線で示す低速の制御モードとが選択できる。ここで、エンコーダ信号ENC_Cの周期は、制御モードに応じて変化する(図8では標準速度の制御モードにおけるエンコーダ信号ENC_Cを示す。)。すなわち、速度の遅い制御モードであるほど、1周期が長くなる。そして、発熱計算用割込信号のエッジ間隔は、低速の制御モードにおけるエッジ同士の時間間隔よりも長くなるように定められる。本実施形態において、高速の制御モードにおけるエンコーダ信号ENC_Cの1周期は定速期間において180μs前後であり、低速の制御モードにおけるエンコーダ信号ENC_Cの1周期は定速期間において360μs前後である。これに対し、発熱計算用割込信号の1周期(エッジ間隔)は1msに固定されている。そして、発熱量計算部79bは、バッファ領域79aに記憶された指令信号の電流値に基づき、発熱計算用割込信号における周期(第2周期に相当する。)毎に、キャリッジモータ44の発熱量を計算する。計算された発熱量は、発熱量記憶領域79dに記憶される。
放熱量計算部79cは、発熱量記憶領域79dに記憶された発熱量とタイマー信号に基づく経過時間情報に基づき、キャリッジモータ44の放熱量を計算する。この放熱量計算部79cは、メモリ62に記憶された放熱係数に基づき、前回更新時からの放熱量を求める。なお、放熱係数は、exp(−t/T)の関係式に基づき、実験等によって予め求めておき、メモリ62に記憶させておく。この関係式において、tは時間であり、Tは温度である。また、タイマー信号では、放熱量の計算タイミングを示すエッジが60s間隔で生じる。このタイマー信号は、放熱状態の取得タイミングを定めるための第3タイミング信号に相当する。そして、タイマー信号におけるエッジ同士の間隔(第3周期に相当する。)は、発熱計算用割込信号におけるエッジ同士の間隔(第2周期)よりも十分に長く定められている。これは放熱の特性による。すなわち、放熱量は、キャリッジモータ44の温度と環境温度との差に応じて定まるが、放熱の度合いは駆動に伴う加熱の度合いよりも緩やかである。このため、更新間隔を60sに設定しても必要な精度が得られる。そして、このタイマー信号は、キャリッジ31の移動状態に関わらず出力される。言い換えれば、キャリッジモータ44の駆動状態に関わらず出力される。このため、タイマー信号は、コントローラ部20のCPU61がソフトウェアを実行することによって生成される。
駆動停止時間取得部79eは、キャリッジモータ44の駆動停止時間、言い換えれば休止時間を取得する。このプリンタ10において、駆動停止時間は、発熱量を閾値とするテーブル情報の形態でメモリ62に記憶されている。例えば、3種類の閾値に対応させて3種類の駆動停止時間が定められる。駆動停止時間取得部79eは、発熱量記憶領域79dに記憶された発熱量を各閾値と比較して、対応する駆動停止時間を取得する。このとき、発熱量が多い程、長い駆動停止時間を取得する。取得した駆動停止時間は、キャリッジモータドライバ33へ入力される。キャリッジモータドライバ33では、入力された駆動停止時間に基づいて、キャリッジモータ44の停止を制御する。すなわち、キャリッジ31の停止時間(ウェイト時間)を制御する。これにより、キャリッジ31の移動方向が、往路方向と復路方向の一方から他方へと切り替わる際における停止時間がキャリッジモータ44の発熱状態に応じて定められる。その結果、キャリッジモータ44の過度な発熱が防止される。
===プリンタ10の動作===
次に、このプリンタ10における動作について説明する。この動作は、コントローラ部20のメモリ23やDCユニット25のメモリ62に記憶されたコンピュータプログラムに基づいてなされる。このため、これらのプログラムは、対応する動作を実現するためのコードを有している。このプリンタ10では、キャリッジモータ44や搬送モータ48の制御に特徴を有する。そして、キャリッジモータ44の制御と搬送モータ48の制御とは、対象は異なるが同じ内容である。このため、本明細書では、キャリッジモータ44の制御について説明をし、搬送モータ48の制御については説明を省略する。
図6のフローチャートに示すように、コントローラ部20のCPU21からキャリッジモータ44に対する電源ONの要求があると(S10)、DCユニット25はメモリ62に記憶される変数を初期化する(S20)。そして、発熱量記憶領域79dに記憶されている発熱量を初期値として読み出す(S30)。また、CPU21は、タイマー信号におけるエッジの生成タイミングを定めるため、放熱時間のカウントを開始する(S40)。
その後、CPU21からDCユニット25に対し、キャリッジモータ44の駆動要求を示す信号が出力される(S50)。この駆動要求に基づき、DCユニット25はウェイト処理を行う(S60)。図7に示すように、ウェイト処理では、駆動要求が受信される(S61)。この駆動要求の受信に基づき、駆動停止時間取得部79eが発熱量を取得する(S62)。発熱量を取得したならば、駆動停止時間取得部79eはウェイト時間を取得する(S63)。すなわち、駆動停止時間取得部79eは、取得した発熱量を閾値と比較することで、対応する駆動停止時間を取得する。駆動停止時間を取得したならば、ウェイト制御を行う(S64)。このウェイト制御は、取得された駆動停止時間に基づき、駆動停止時間取得部79eがキャリッジモータドライバ33を制御することで行われる。例えば、キャリッジモータ44の発熱量が閾値未満の場合には、駆動停止時間を「なし」と定めて制御を行う。また、発熱量が閾値以上の場合、その発熱量が大きいほど駆動停止時間を長く定めて停止制御を行う。このプリンタ10では、閾値を段階的に定め、キャリッジモータ44の発熱量が何れの閾値以上になったかによって、駆動停止時間を決定している。
ウェイト処理が終了すると駆動処理が行われる(S70)。この駆動処理では、キャリッジモータ44の駆動制御が行われる。例えば、図8の左側部分である加速期間では、位置カウンタ71aのカウント値に基づき、目標速度テーブル74の対応する領域から目標速度が読み出される。そして、読み出された目標速度と、エンコーダ信号ENC_Cに基づく演算速度によってPID制御がなされ、キャリッジモータ44へ印加される電流量が決定される。図8の中央部分である定速期間では、目標位置と演算位置とから求められた目標速度と、エンコーダ信号ENC_Cに基づく演算速度とによってPID制御がなされ、キャリッジモータ44へ印加される電流量が決定される。図8の右側部分である減速期間では、加速期間と同様に、位置カウンタ71aのカウント値に基づき、目標速度テーブル74の対応する領域から目標速度が読み出される。そして、読み出された目標速度と、エンコーダ信号ENC_Cに基づく演算速度とによってPID制御がなされ、キャリッジモータ44へ印加される電流量が決定される。前述したように、ここでの駆動処理は、リニアエンコーダ34からのエンコーダ信号ENC_C(第1タイミング信号)で定められるタイミングで行われる。図9に示すように、このタイミングは、発熱計算用割込信号で定められるタイミングよりも短い周期で生じる。このため、キャリッジモータ44の制御を適正な間隔で行うことができる。
また、この駆動処理では、発熱計算用割込信号のエッジ毎のタイミング、例えば1ms間隔で生じる立ち上がりエッジ毎のタイミングで、発熱量計算部79bによって発熱量が計算される(S80)。そして、計算された発熱量は、発熱量記憶領域79dに記憶された発熱量に加算される(S90)。つまり、発熱状態を示す量が累積される。ここで、キャリッジモータ44の発熱量は消費電力に比例する。このことから、この発熱量は、電流の2乗と時間の積に比例するといえる。従って、キャリッジモータ44の発熱量は、指令信号の電流値と、発熱計算用割込信号におけるエッジ同士の間隔とから求めることができる。加えて、このプリンタ10では、発熱計算用割込信号におけるエッジ同士の間隔が一定である。このため、時間のパラメータを定数に含めることができる。その結果、指令信号の電流値を取得することで、あるエッジから次のエッジまでの期間における発熱量を取得できる。図9の例では、タイミングt1やタイミングt2における指令信号の電流値を取得することにより、符号Twで示す1msの期間毎の発熱量(斜線範囲の発熱量)が計算できる。ここで、期間Twが1msに定められているため、時間のパラメータを定数に含める際に、その扱いが容易になる。これにより演算処理の簡素化が図れる。発熱量の計算(S80)、及び、計算された発熱量の加算(S90)は、キャリッジ31の移動が停止するまで、言い換えれば、駆動処理の終了まで行われる(S100)。
駆動要求からの一連の処理(S50〜S100)の終了は、いわゆる1パスの印刷の終了を意味する。このプリンタ10では、ある画像を印刷する際に、1パスの印刷が複数回行われる。このため、最終パスの印刷が終了するまでは、駆動要求からの一連の処理(S50〜S100)が繰り返し行われる。そして、放熱期間が規定値に達すると、例えばカウント開始から60s経過すると、コントローラ部20のCPU21からDCユニット25に対し、放熱チェック要求を示す信号が出力される(S110)。この信号に基づき、放熱量計算部79cは、放熱チェック処理を行い(S120)、キャリッジモータ44の放熱量を計算する。例えば、カウント開始時点での発熱量と経過時間に基づいて放熱量を計算する。そして、計算した放熱量を、発熱量記憶領域79dに記憶されていた発熱量から減算し、新たな放熱量として記憶する(S130)。すなわち、放熱量を加味して発熱量を更新する。なお、この放熱量のチェック処理は、キャリッジ31の移動とは無関係に生成されるタイマー信号で定まるタイミングで行われる。このため、タイマー信号による放熱チェックのタイミングが、キャリッジモータ44の駆動中に生じる場合がある。この場合、キャリッジ31の移動が停止した後に、つまり一連の処理が終了した後に、放熱量を加味した発熱量の更新が行われる。このため、キャリッジ31の移動速度が途中で変化することを防止でき、画質の劣化を防止できる。
===まとめ===
以上の説明から判るように、このプリンタ10では、DCユニット25は、駆動制御部として機能する場合に、エンコーダ信号ENC_C(第1タイミング信号)に基づき、キャリッジモータ44の駆動制御を、エンコーダ信号ENC_Cのエッジ(制御タイミングを定めるための信号レベル変化)のタイミングで、キャリッジモータ44の駆動制御を行う。また、DCユニット25は、発熱状態取得部として機能する場合に、発熱計算用割込信号(第2タイミング信号)に基づき、キャリッジモータ44の駆動中(キャリッジ31の移動中)に、キャリッジモータ44の発熱量(発熱状態)を、発熱計算用割込信号のエッジ(発熱状態の取得タイミングを定めるための信号レベル変化)のタイミングで取得する。
ここで、発熱計算用割込信号は、モータ制御用のエンコーダ信号ENC_Cとは独立して生成されている。そして、発熱計算用割込信号のエッジ同士の間隔(第2周期)は、モータ制御用のエンコーダ信号ENC_Cのエッジ同士の間隔(第1周期)よりも長い。このため、発熱量の計算間隔は、キャリッジモータ44の制御間隔よりも長くなる。これは、制御対象の特性による。すなわち、キャリッジモータ44の駆動制御は、キャリッジ31の移動速度に影響を及ぼすものであり、細かに制御することで移動中のキャリッジ31の位置精度が向上し、ひいては画質の向上が図れる。これに対し、発熱量の計算は、キャリッジモータ44の温度が制御間隔程度の短い時間では大きく変化し難いことから、キャリッジモータ44の制御間隔よりも粗くても必要な精度が得られる。
以上より、このプリンタ10では、キャリッジモータ44に対する駆動制御の実行間隔とキャリッジモータ44の発熱状態の取得間隔とが最適化できる。また、発熱量は、モータの駆動中に取得されるため、従来よりも測定精度を高めることができる。さらに、制御負担が過度に大きくなってしまうことも防止できる。
また、このプリンタ10において、キャリッジモータ44は、DCモータによって構成されている。そして、DCユニット25は、駆動制御部として機能する場合に、キャリッジモータ44の駆動量に応じた電流量の指令信号(制御信号)を出力する。また、発熱状態取得部として機能する場合に、指令信号の電流値と、発熱計算用割込信号のエッジ同士の間隔(第2周期)とによって、キャリッジモータ44の発熱量をエッジのタイミング毎に計算する。さらに、互いに前後するエッジ同士は一定の時間間隔で生成される。このような構成により、制御の簡素化が図れる。すなわち、キャリッジモータ44の発熱量を、電流値、時間(第2周期)、及び、定数の乗算で求めることができる。さらに、相前後するエッジが一定の時間間隔で生成されるので、エッジ同士の時間を定数に含めることができる。
また、このプリンタ10において、キャリッジモータ44の駆動モードは、キャリッジ31の移動速度が異なる複数のモードから選択できる。この例では、低速モード、標準モード、高速モードの3種類から選択できる。そして、エンコーダ信号ENC_Cは、選択された駆動モードに応じて、その周期が変化する。これに対し、発熱計算用割込信号の周期は、選択された駆動モードにかかわらず一定である。このため、キャリッジモータ44の駆動制御に関しては、駆動モードが異なっても同じ定数を用いて行うことができる。従って、キャリッジモータ44の駆動制御については選択された駆動モードに応じて最適化でき、キャリッジモータ44の発熱量の取得については時間の因子を固定できるため処理を簡素化できる。
また、DCユニット25は、放熱状態取得部として機能する場合に、タイマー信号で規定されるタイミング毎にキャリッジモータ44の放熱量を取得する。タイマー信号で規定される周期(第3周期)は、他の信号で規定される周期(第1周期,第2周期)よりも十分に長い。これは放熱が緩やかに進行することに起因する。このように、適した周期で放熱状態を加味できるので、DCユニット25における処理負担の増加を抑えることができる。
また、DCユニット25は、キャリッジモータ44の休止を制御する休止制御部としても機能する。このとき、DCユニット25は、発熱量記憶領域79dに記憶された発熱量の情報に基づき、キャリッジモータ44の発熱度合いを認識する。そして、この発熱度合いに対応した休止時間(駆動停止時間)を選択して、その休止時間を示す信号をキャリッジモータドライバ33へ出力する。キャリッジモータドライバ33は、DCユニット25からの信号に基づき休止時間の経過後にキャリッジモータ44を駆動する。このように構成することで、駆動停止期間中の放熱により、キャリッジモータ44の発熱状態を適正範囲にできる。その結果、キャリッジモータ44に正規の性能を発揮させることができる。
===その他の実施形態===
前述の実施形態は、主としてプリンタ10に組み込まれたモータ制御装置について記載されているが、その中には、モータ制御方法や制御用プログラムの開示も含まれている。また、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることはいうまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
<制御対象となるモータ等について>
前述の実施形態において、プリンタ10は、キャリッジモータ44と搬送モータ48を有していたが、他の種類のモータも制御対象とすることができる。そして、これらのモータは、DCモータによって構成されていたが、他の種類のモータによって構成してもよい。また、発熱量を取得するための信号として、前述の実施形態では、PWM回路63から出力された指令信号を用いていた。しかしながら、モータの発熱量を認識できる信号であれば、指令信号に限定されるものではない。例えば、PWM回路63に入力されるデューティ信号であってもよい。
<モータ制御装置が組み込まれる対象装置について>
前述の実施形態では、モータ制御装置が組み込まれる対象装置として、プリンタ10を例に挙げて説明した。しかしながら、対象装置はプリンタ10に限定されるものではない。モータを有する他の装置も対象装置となり得る。
プリンタの構成を説明するブロック図である。 図2Aは、リニアエンコーダの構成を説明するための図である。図2Bは、リニアエンコーダからのエンコーダ信号を説明するための図である。 図3Aは、ロータリエンコーダの構成を説明するための図である。図3Bは、ロータリエンコーダからのエンコーダ信号を説明するための図である。 DCユニットの構成を説明するブロック図である。 DCユニットの機能を説明するブロック図である。 プリンタの動作を説明するためのフローチャートである。 ウェイト処理を説明するためのフローチャートである。 1パス期間中における指令信号の電流値、キャリッジの移動速度、エンコーダ信号、及び、発熱計算用割込信号を説明する図である。 発熱量計算等の模式的に説明する図である。
符号の説明
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 位置演算部,72 第1減算器,73 目標速度演算部,
74 目標速度テーブル,75 速度演算部,76 第2減算器,
77P 比例要素,77I 積分要素,77D 微分要素,78 加算器,
79 ウェイト制御部,79a バッファ領域,79b 発熱量計算部,
79c 放熱量計算部,79d 発熱量記憶領域,79e 駆動停止時間取得部,
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 (9)

  1. (A)制御の実行タイミングを定めるための信号レベル変化が第1周期で生じる第1タイミング信号に基づき、モータの駆動制御を前記第1周期毎に行う駆動制御部と、
    (B)発熱状態の取得タイミングを定めるための信号レベル変化が前記第1周期よりも長い第2周期で生じる第2タイミング信号に基づき、前記モータの駆動中に、前記モータの発熱状態を前記第2周期毎に取得する発熱状態取得部と、
    (C)を有するモータ制御装置。
  2. 請求項1に記載のモータ制御装置であって、
    前記モータは、
    DCモータであり、
    前記駆動制御部は、
    前記モータの駆動量に応じた電流量の制御信号を前記第1周期毎に出力し、
    前記発熱状態取得部は、
    前記電流量に基づいて前記モータの発熱状態を前記第2周期毎に取得する、モータ制御装置。
  3. 請求項1又は請求項2に記載のモータ制御装置であって、
    前記駆動制御部は、
    前記モータの駆動制御を、前記モータの駆動モードに応じて定められる前記第1周期毎に行い、
    前記発熱状態取得部は、
    前記モータの発熱状態を、前記駆動モードに関わらず一定値に定められる前記第2周期毎に取得する、モータ制御装置。
  4. 請求項3に記載のモータ制御装置であって、
    前記駆動モードは、
    前記モータの駆動に伴って移動する移動体の移動速度に応じて定められ、
    前記第1タイミング信号は、
    前記移動体が単位量だけ移動する毎に前記信号レベル変化を生じさせる、モータ制御装置。
  5. 請求項4に記載のモータ制御装置であって、
    前記移動体は、
    媒体に向けてインクを吐出するヘッドである、モータ制御装置。
  6. 請求項4に記載のモータ制御装置であって、
    前記移動体は、
    ヘッドから吐出されたインクによって画像が印刷される媒体である、モータ制御装置。
  7. 請求項1から請求項6の何れかに記載のモータ制御装置であって、
    前記発熱状態取得部は、
    取得した発熱状態を前記第2周期毎に累積し、
    放熱状態の取得タイミングを定めるための信号レベル変化が前記第2周期よりも長い第3周期で生じる第3タイミング信号に基づき、前記放熱状態を加味して、前記発熱状態を前記第3周期毎に更新する、モータ制御装置。
  8. 請求項1から請求項7の何れかに記載のモータ制御装置であって、
    前記発熱状態取得部が取得した前記モータの発熱度合いに応じて、前記モータの休止を制御する休止制御部を有する、モータ制御装置。
  9. (A)制御の実行タイミングを定めるための信号レベル変化が第1周期で生じる第1タイミング信号に基づき、モータの駆動制御を前記第1周期毎に行うこと、
    (B)発熱状態の取得タイミングを定めるための信号レベル変化が前記第1周期よりも長い第2周期で生じる第2タイミング信号に基づき、前記モータの駆動中に、前記モータの発熱状態を前記第2周期毎に取得すること、
    (C)を行うモータ制御方法。
JP2006247827A 2006-09-13 2006-09-13 モータ制御装置、及び、モータ制御方法 Pending JP2008072805A (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
JP2008072805A true JP2008072805A (ja) 2008-03-27

Family

ID=39293903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006247827A Pending JP2008072805A (ja) 2006-09-13 2006-09-13 モータ制御装置、及び、モータ制御方法

Country Status (1)

Country Link
JP (1) JP2008072805A (ja)

Similar Documents

Publication Publication Date Title
EP1258368B1 (en) Printing apparatus and printing control method
JP2001103778A (ja) プリンタ用モータの制御装置および制御方法ならびに制御プログラムを記録した記録媒体
US7135831B2 (en) Method and device for controlling motor
EP1201446B1 (en) Recording apparatus
JP3832174B2 (ja) モータ制御装置及び制御方法
JP3780804B2 (ja) モータ制御装置及び制御方法
JPH0664275A (ja) プリンタのキャリッジモータ制御装置
JP3570617B2 (ja) Dcモータ制御装置及び制御方法
JP2008072805A (ja) モータ制御装置、及び、モータ制御方法
JP5061547B2 (ja) モータ制御装置、モータ制御方法、及び、印刷装置
JP4552543B2 (ja) モータの過熱判定装置、モータの過熱判定方法、モータの過熱判定プログラム、モータ制御装置、モータ制御方法及び印刷装置
JP2006021473A (ja) キャリッジ駆動制御装置及び方法
US6181098B1 (en) DC motor control circuit
JP2006150619A (ja) 印刷装置、コンピュータプログラム、印刷システム、及び、印刷方法
JP2017132180A (ja) 印刷装置および位置制御方法
JP3284553B2 (ja) シリアル・プリンタ
US20220314666A1 (en) Control system
JP2002186285A (ja) モータ制御装置及びモータ制御方法
JP4552544B2 (ja) モータの過熱判定装置、モータの過熱判定方法、モータの過熱判定プログラム、モータ制御装置、モータ制御方法及び印刷装置
JP2009055672A (ja) モータ制御装置
JP2005176518A (ja) 記録装置、モータ制御装置及び方法
JP2001186785A (ja) モータの制御装置およびその制御方法ならびにモータの制御プログラムを記録した記録媒体
JP5071073B2 (ja) モータ制御装置、プリンタおよび駆動制御方法
JP2010259138A (ja) モーター制御装置、流体噴射装置およびモーター制御方法
JP4432055B2 (ja) プリンタ用モータの制御装置および制御方法