(第1実施例)
図1は本発明の第1実施例にかかるモータ駆動装置100を示す。モータ駆動装置100は、例えばステッピングモータや直流モータの駆動に用いられ、その用途は例えばプリンタ、ファックス、またはカメラなどの電子機器の駆動部として使用される。図1はステッピングモータに適用するものを示す。モータ駆動装置100は、集積回路100A及びステッピングモータ200を有する。
集積回路100Aには、例えば入力端子TI1,TI2, TI3、出力端子TO11,TO12,TO13,TO21,TO22, TO23、及び接地端子GNDが用意される。これらの外部端子の一部にステッピングモータ200が結合される。入力端子TI1には後述するオート減衰部141,142を制御するモード選択信号SWが入力される。オート減衰部141,142については後述する。入力端子TI2には制御信号INが入力される。入力端子TI3には基準電圧が入力される。これらの外部端子に入力される各種信号についても後述する。出力端子TO11,TO12にはステッピングモータ200の1つの相のモータコイルL1に接続される。出力端子TO11とTO12との間にはコイル電流IOUT1が流れる。出力端子TO13と接地端子GNDとの間には抵抗R1が接続される。抵抗R1はステッピングモータ200の1つの相に流れる電流を検知し、検知した電流を電圧に変換する。出力端子TO21,TO22にはステッピングモータ200の別の相のモータコイルL2が接続される。出力端子TO21とTO22との間にはコイル電流IOUT2が流れる。出力端子TO23と接地端子GNDとの間には抵抗R2が接続される。抵抗R2によってステッピングモータ200の別の相に流れる電流を検知し、検知した電流を電圧に変換する。抵抗R1とR2はほぼ同じ抵抗値に選ばれており、それらの大きさは例えば、0.1Ω〜0.3Ωである。抵抗R1,R2はモータコイルL1,L2に流れるコイル電流IOUT1,IOUT2を検出する電流検出部の役割を担う。なお、図示した外部端子のほかに他の外部端子を用意することも可能である。例えば、2相を1相として使用するために一方の相の動作を停止させるための外部端子を用意することもできる。また、2相ではなく、3相、5相のステッピングモータ等に対応するための外部端子を増設してもよい。
図1にはステッピングモータ200は説明の便宜上2相のものを示している。ステッピングモータ200は、2相それぞれに対応するモータコイルL1,L2、及び回転子210を備える。
モータコイルL1,L2にはそれぞれコイル電流IOUT1及びIOUT2が流れる。コイル電流IOUT1及びIOUT2の電流値の比率を細かく変えていくことによって、ステッピングモータの回転子210を回転させる。
モータ駆動装置100の一部を構成する集積回路100Aは、入力バッファ110、基準CLK部111、デジタル信号をアナログ信号に変換するD/Aコンバータ(DAC)120、比較器131,132、オート減衰部141,142、論理制御部151,152、プリドライバ部161,162、Hブリッジ回路171,172を含む。なお、集積回路100Aには、図示はしないが、例えば発振部、PWM(パルス幅変調)制御部、過電流保護、過熱シャットダウン、低電圧誤動作防止等などの回路機能が内蔵されていることも少なくない。
入力バッファ110はいわゆるボルテージフォロワ回路であり、基本的には入力される参照電圧VREFをそのまま出力する。参照電圧VREFはコイル電流IOUT1及びIOUT2の基準値を決める。
基準CLK部111は、基準クロック信号CLKをオート減衰部141及び142にそれぞれ出力する。基準クロック信号CLKの周波数は本発明では例えば1MHz前後に選ばれている。基準クロック信号CLKは、本発明でのスロー減衰及びファースト減衰の減衰時間を決める基準となる。なお、基準クロック信号CLKを生成する基準CLK部111をオート減衰部141,142に内蔵しても構わない。
DAC120は集積回路100Aの基準電圧VA1及びVA2を生成する。すなわち、制御信号INによって、基準電圧値VA1及びVA2の大きさが決まる。制御信号INは例えば4ビット信号であり、例えば制御信号101,102,103,104として示される(図示しない)。制御信号101及び102は参照電圧VA1の大きさを決め、制御信号103及び104は参照電圧VA2の大きさを決める。制御信号101及び102の論理レベルの組み合わせ(1,1)、(0,1)、(1,0)、(0,0)が、例えばそれぞれ0%、33%、67%、100%の4つの値にそれぞれ対応させる。
比較器131、オート減衰部141、論理制御部151、プリドライバ部161、及びHブリッジ回路171により、モータコイルL1にコイル電流IOUT1を供給する回路が構成されている。これらの回路群はチャンネルCH1と称される。また、比較器132、オート減衰部142、論理制御部152、プリドライバ162、Hブリッジ回路172により、モータコイルL2にコイル電流IOUT2を供給する回路が構成されている。これらの回路群はチャンネルCH2と称される。なお、チャンネルCH1,CH2に対応するそれぞれの回路の構成及び機能はほぼ同じであるので、チャンネルCH1及び、チャンネルCH2について並行して説明する。
コイル電流IOUT1(IOUT2)は、抵抗R1(R2)によって出力電圧RNF1(RNF2)に変換され、変換された出力電圧RNF1(RNF2)は、基準電圧VA1(VA2)と比較器131(132)で比較され、比較結果が出力信号CL1(CL2)として比較器131(132)から出力される。出力信号CL1(CL2)は、出力電圧RNF1(RNF2)が基準電圧VA1(VA2)に到達していない場合、すなわちコイル電流IOUT1(IOUT2)が基準電流値IREFに到達していない場合は、例えばハイレベルHに、出力電圧RNF1(RNF2)が基準電圧VA1(VA2)に到達している場合、すなわちコイル電流IOUT1(IOUT2)が基準電流値IREFに到達している場合は、例えばローレベルLにそれぞれ設定される。出力信号CL1(CL2)はオート減衰部141(142)及び論理制御部151(152)に入力される。なお、抵抗R1(R2)の抵抗値は極めて小さいものではあるが集積回路100Aに内蔵しても構わない。
オート減衰部141(142)には、モード選択信号SW、比較器131(132)の出力信号CL1(CL2)、基準CLK部111からのクロック信号CLKがそれぞれ入力され、減衰モードを制御する制御信号OUT_DECAY1(OUT_DECAY3)、及び減衰時間を制御する制御信号OUT_DECAY2(OUT_DECAY4)をそれぞれ出力する。オート減衰部141(142)はコイル電流IOUT1(IOUT2)と基準電流値IREFとの比較結果に基づき、モータコイルL1,L2に流れる電流の減衰モード方式が変更可能な回路構成になっている。また、オート減衰部141(142)の内部には、検知開始信号OUT_MINON1、モード変更信号SELECT1を有する。具体的な動作は後述する図4〜図11で説明する。
論理制御部151(152)は、比較器131(132)の出力信号CL1、オート減衰部141(142)の制御信号OUT_DECAY1(OUT_DECAY3)及び制御信号OUT_DECAY2(OUT_DECAY4)、コイル電流IOUT1(IOUT2)の極性を示す位相信号(図示していない)、及び保護回路の出力信号(図示していない)を受け取り、モータ駆動信号を生成する。前記位相信号はステッピングモータ200の回転方法を決める信号である。比較器131(132)の出力信号CL1(CL2)に従って、モータコイルL1(L2)に流す電流を給電モードから減衰モードに変更する。オート減衰部141(142)の制御信号OUT_DECAY1(OUT_DECAY3)及び制御信号OUT_DECAY2(OUT_DECAY4)は、減衰モードとその処理時間を決める信号である。また、論理制御部151(152)は図示しない保護回路から例えば「異常」という信号を受け取った際、ステッピングモータ200の動作を停止させる役割も併せ有している。
プリドライバ部161(162)は論理制御部151(152)から送られてくる駆動信号を増幅する。プリドライバ部161(162)から出力される信号はHブリッジ回路171(172)に与えられる。
Hブリッジ回路171(172)は、図12示のものと基本的に同じである。但し、図12示のボディダイオードD11〜D14は、図面の煩雑さを解消するためHブリッジ回路171(172)に図示していない。Hブリッジ回路171(172)は、トランジスタQ11(Q21),Q12(Q22),トランジスタQ13(Q23)及びQ14(Q24)を含む。トランジスタQ11(Q21)とトランジスタQ13(Q23)とは電源Vppと抵抗R1(R2)の一方が接続される端子T13(T23)との間に直列に接続される。同様にトランジスタQ12(Q22)とトランジスタQ14(Q24)とは電源Vppと抵抗R1(R2)の一方が接続される端子T13(T23)との間に直列に接続される。PMOS型のトランジスタQ11(Q21)とNMOS型のトランジスタQ13(Q23)とが共通に接続されるノードは出力端子TO11(TO21)に接続される。PMOS型のトランジスタQ12(Q22)とNMOS型のトランジスタQ14(Q24)とが共通に接続されるノードは端子TO12(TO22)に接続される。モータコイルL1(L2)の2つの端子は、出力端子TO11(TO21)及びTO12(TO22)にそれぞれ接続される。
また、本発明の実施例では、Hブリッジ回路171(172)はPMOS型のトランジスタ及びNMOS型のトランジスタで形成したが、全てNMOS型のトランジスタを用いるようにしてもよい。PMOS型のトランジスタを用いずに全てNMOS型のトランジスタを用いてHブリッジ回路を構成した場合には、トランジスタを駆動するための昇圧回路が別途必要となる。しかし、NMOS型のトランジスタのほうがP型MOS型のトランジスタよりも回路面積が小さくできるので、昇圧回路を含めたとしてもNMOS型のトランジスタを全てに用いるほうが回路全体の面積を小さくできるという利点を有する。そのため、Hブリッジ回路に用いるトランジスタの型式は、回路に流れる電流や回路面積などのファクタを考慮して選択される。なお、Hブリッジ回路171,172はMOS型トランジスタではなくバイポーラ型トランジスタを用いて構成しても構わない。
(オート減衰部)
図2は本発明にかかるオート減衰部141を示すブロック図である。オート減衰部141と142の構成及び機能はほぼ同じであるので、オート減衰部142の説明を割愛する。オート減衰部141には、比較器の出力信号CL1、モード選択信号SW、及び基準クロック信号CLK、がそれぞれ入力され、減衰モードを決める制御信号OUT_DECAY1、強制給電を決める制御信号OUT_DECAY2がそれぞれ出力される。制御信号OUT_DECAY1及び制御信号OUT_DECAY2によって、1サイクルの減衰時間、及び1サイクルのスロー減衰モードとファースト減衰モードの組み合わせ比率を変更する。
オート減衰部141は、モード選択部41、CLK分周部42、及びCLKパルスカウンタ43を備える。以下、オート減衰部141の回路構成について簡単に述べる。
モード選択部41には、比較器131からの出力信号CL1が入力され、さらに集積回路100Aに設けた入力端子TI1を介してモード選択信号SWが入力され、さらにCLKパルスカウンタ43から検知開始信号OUT_MINON1が入力される。なお、出力信号CL1は、図示しないラッチ回路を介してモード選択部41、CLK分周部42にそれぞれ印加される。モード選択部41からは出力信号SO1,SO2がそれぞれ出力され、出力信号SO1,SO2はそれぞれCLK分周部42、及びCLKパルスカウンタ43に入力される。
CLK分周部42には、比較器131の出力信号CL1、モード選択部41の出力信号SO1、及び基準クロック信号CLKが入力される。CLK分周部42からの分周出力信号DCLKはCLKパルスカウンタ43に入力にされる。
CLKパルスカウンタ43には、比較器131の出力信号CL1、CLK分周部42の出力である分周出力信号DCLK、基準クロック信号CLK、モード選択部41の出力信号である出力信号SO2がそれぞれ入力される。CLKパルスカウンタ43からは、制御信号OUT_DECAY1、制御信号OUT_DECAY2、及び検知開始信号OUT_MINON1が出力される。
以上の説明はオート減衰部141を比較的簡単に述べたが次に詳細に述べる。図3は、図3(a),(b),(c)で構成される。図3(a)は図1、図2に示したオート減衰部141に用いるモード選択信号のビット構成を示す。図3(b)は、スロー減衰とファースト減衰の組み合わせ比率をスロー減衰ベースで示した図である。図3(c)は、スロー減衰とファースト減衰の処理時間を分周数(分周比)及び基準クロック信号CLKを単位として示した図である。
図3(a)は、モード選択信号SWのビット構成を示す。モード選択信号SWは例えば8ビットからなり、例えば下位4ビットは第1モード方式に、上位4ビットは第2モード方式にそれぞれあてがわれる。第1モード方式にあてがわれる4ビットのうちの2ビットは、1サイクルの減衰モードでのスロー減衰とファースト減衰の組み合わせ比率を設定し、残りの2ビットでそれらのモードの処理時間が設定される。ここで1サイクルとはスロー減衰とファースト減衰とを合わせた期間(時間)全体を指す。第2モード方式についても同様である。すなわち、4ビットのうちの2ビットはスロー減衰とファースト減衰の組み合わせ比率を設定し、残りの2ビットでそれらのモードの処理時間が設定される。
図3(b)は、スロー減衰とファースト減衰の組み合わせ比率をスロー減衰ベースで示した一例である。両者減衰の組み合わせ比率は図3(a)に示したように第1モード方式ではアドレスSW00とSW01で設定され、第2モード方式ではアドレスSW04とSW05でそれぞれ設定されている。アドレスSW00の論理値が“0”でアドレスSW01の論理値“0”であるときの比率は100%に設定される。すなわち、スロー減衰のみで処理される。アドレスSW00の論理値が“1”、アドレスSW01の論理値“0”であるときの比率は67%に設定される。すなわち、1サイクル全体に占める割合はスロー減衰が比率67%であり、残りの33%がファースト減衰となる。従って、スロー減衰はファースト減衰の2倍の減衰時間に設定され、スロー減衰主導型の減衰が施される。アドレスSW00の論理値が“0”、アドレスSW01の論理値“1”に設定されたときの比率はスロー減衰の比率が33%に設定され、ファースト減衰の比率が67%となり、ファースト減衰がスロー減衰の2倍の減衰時間に設定され、ファースト減衰主導型の減衰処理が施される。アドレスSW00の論理値が“1”、アドレスSW01の論理値が“1”に設定されたときの比率はスロー減衰の比率が0%に設定され、ファースト減衰の比率が100%となり、ファースト減衰のみの減衰処理が施される。
上記は第1モード方式について説明したが第2モード方式については、アドレスSW00をアドレスSW04に、アドレスSW01をアドレスSW05にそれぞれ置き換えることで同様のことがいえる。なお、上記の減衰比率と段階数は設計事項であり、例えば、比率が10%,37%,63%,90%の4段階であっても構わない。もちろん段階数は4段階ではなく例えば8段階であっても構わない。
図3(c)は、スロー減衰とファースト減衰の処理時間を分周数(分周比)及び基準クロック信号CLKを1単位として示した図である。
アドレスSW00とSW01では、第1モード方式のスロー減衰とファースト減衰の組み合わせ比率を設定する。アドレスSW02とSW03では、電流減衰時間が決められる。アドレスSW04〜SW07によって第2モード方式が特定され、アドレスSW04とSW05は、スロー減衰とファースト減衰の組み合わせ比率を設定する。アドレスSW06とSW07によって電流減衰時間が決められる.
減衰モードを決める2ビットの信号、例えば、論理値の組み合わせ(1,1)、(0,1)、(1,0)、(0,0)に対して、例えばスロー減衰全体に占めるスロー減衰またはファースト減衰が占める比率としてそれぞれ0%、33%、67%、100%の4段階が決められる。同様に減衰時間(減衰比率)を決める2ビットの信号、例えば、論理値の組み合わせ(1,1)、(0,1)、(1,0)、(0,0)に対して、CLK分周部42の分周比が例えば8分周、4分周、2分周、1分周の4段階が決められる。もちろん分周比を例えば32分周、16分周、8分周、4分周の4段階としても構わない。こうした分周比の設定は固定されるものではなく、基準クロック信号CLKの周波数や電流減衰時間に応じて適宜設定される。
オート減衰部141が、初期状態において、第1モード方式で処理するようにモード選択信号SWが設定された場合には、モード選択部41の出力信号SO1は、アドレスSW00とSW01で設定された減衰処理条件を、出力信号SO2はアドレスSW02とSW03で設定された減衰処理条件をそれぞれ出力する。一方、オート減衰部141が初期状態において、第2モード方式で処理するようにモード選択信号SWが設定された場合には、モード選択部41の出力信号SO1はアドレスSW04とSW05で設定された減衰処理条件を、出力信号SO2は、アドレスSW06とSW07で設定された減衰処理条件をそれぞれ出力する。第1モード方式で処理するか、第2モード方式で処理するかの選択は、比較器131の出力信号CL1及びCLKパルスカウンタ43の検知開始信号OUT_MINON1によって決めている。
比較器131の出力信号CL1は、コイル電流IOUT1が基準電流値IREFより大きい時は例えばハイレベルHになり、コイル電流IOUT1が基準電流値IREFより小さい時は例えばローレベルLになる。
検知開始信号OUT_MINON1は強制給電期間が終わる時発生する信号である。検知開始信号OUT_MINON1が強制給電期間終了時ローレベルLからハイレベルHに変化し、また一定時間経過後ハイレベルHからローレベルLに戻る。検知開始信号OUT_MINON1の立ち上がりエッジが、比較器131の出力信号CL1の電位を検知するタイミングとなる。
モード選択部41は、強制給電終了時、すなわち、検知開始信号OUT_MINON1がローレベルLからハイレベルHに遷移する立ち上がりエッジを検知する。信号CL1の電位がローレベルLの場合、すなわちコイル電流IOUT1が基準電流値IREFに達していない場合、モード選択部41はアドレス信号SW00〜SW03に基づき第1モード方式に選択される。一方、出力信号CL1がハイレベルHの場合、すなわちコイル電流IOUT1が基準電流値IREFを超えている場合には、アドレスSW04〜SW07に設定された処理条件に基づき第2モード方式を選択する。
CLK分周部42は、モータコイルL1に流すコイル電流IOUT1の減衰時間を決める。CLK分周部42は、基準クロック信号CLKを比較器131の出力信号CL1及びモード選択部41の出力信号SO1の両者に基づき分周する。すなわち、強制給電が終わる時、コイル電流IOUT1が基準電流値IREF以下の場合、検知開始信号OUT_MINON1の立ち上がりエッジが出力信号CL1の立ち下がりエッジより先に発生し、出力信号SO1が先に出力され、出力信号CL1の立ち下がりエッジに従ってCLK分周部42が基準クロック信号CLKを分周し、分周された分周出力信号DCLKを出力する。また、強制給電が終わる時、コイル電流IOUT1が基準電流値IREF1以上の場合、信号CL1の立ち下がりエッジが検知開始信号OUT_MINON1の立ち上がりエッジより先に発生し、出力信号CL1が先にローレベルLになり、出力信号SO1の出力に従ってCLK分周部42の分周動作が開始し、分周出力信号DCLKを出力する。前記の仕組みにより、クロック信号CLKの開始時刻と減衰開始時刻を同期することが出来る。
CLKパルスカウンタ43は、各減衰を実行する信号を出力する。CLKパルスカウンタ43には、CLK分周部42の分周出力信号DCLK及びモード選択部41の出力信号SO2が入力される。第1モード方式の場合は、アドレスSW00及びSW01で設定される減衰条件が、第2モード方式の場合にはアドレスSW04及びSW05で設定される減衰条件がモード選択信号SWの中から選択される。
CLKパルスカウンタ43には、CLK分周部42の分周出力信号DCLKが入力され、例えば分周出力信号DCLKの3周期分の時間が経過した後に制御信号OUT_DECAY1及び制御信号OUT_DECAY2を出力する。例えば、CLKパルスカウンタ43に入力する出力信号SO2の論理値が(0,1)の場合、制御信号OUT_DECAY1が分周出力信号DCLKの3周期分の期間で出力する。具体的に説明すると、例えばその出力が1クロック分の時間がローレベルLで出力し、他の2クロック分の時間がハイレベルHで出力する。当然のことだが、ハイレベルHとローレベルLの順番を交換しても、あるいはクロック回数を調整しても構わない。3周期分の出力期間が終わる後、制御信号OUT_DECAY1がハイレベルHに初期化する。そのまま出力を維持しても構わないが、もし誤動作が起こる場合、ハイレベルHに初期化することにより、コイル電流IOUT1が迅速に下がり、モータを停止することが出来るため、誤動作によるモータへの破壊を防ぐ効果が得られる。
また、制御信号OUT_DECAY2は制御信号OUT_DECAY1から設定の周期分の出力が終わる時、ローレベルLからハイレベルHに変化する信号であり、制御信号OUT_DECAY2がハイレベルHの時、モータコイルL1が強制給電になる。検知開始信号OUT_MINON1は強制給電の終了を知らせる信号である。具体的な説明は下記図4に合わせて説明する。
図4は本発明の第1実施例にかかるモータ駆動装置のタイミングチャートである。期間Y1で示した時刻T0〜T6では、第1モード方式の減衰処理が施される。第1モード方式は、例えばスロー減衰を主導とする電流減衰方式であり、モータコイルL1に流れるコイル電流IOUT1aが基準電流値IREFよりも小さい場合に用いられる。期間Y2で示した時刻T6〜T12では、第2モード方式の減衰処理が施される。第2モード方式は、例えばファースト減衰を主導とする電流減衰方式であり、モータコイルL1に流れるコイル電流IOUT1aが基準電流値IREFを超えた場合に用いられる。期間Y3で示した時刻T12〜T18では、第1モード方式を用いる。期間Y3で第1モード方式を用いるのは、時刻T12〜T15での給電モードでコイル電流IOUT1aが基準電流値IREFを超えていないからである。仮に、時刻T12〜T15での給電モードでコイル電流IOUT1aが基準電流値IREFを超えた場合には第2モード方式が用いられることになる。なお図4において、本書でいう「1サイクル」は、給電モードから次の給電モードまでの例えば時刻T3〜T6、時刻T8〜T12が相当する。これらの期間ではいずれもがミックス減衰モードが実行される。
基準電流値IREFはコイル電流IOUT1aが本来、制御されるべき電流値を示す。基準電流値IREFの大きさは、集積回路100Aの入力端子Ti3に入力される基準電圧VREFに基づき、電圧ボルテージ110、DAC120を介して、比較器131の非反転入力端子(+)に設定される。
モータコイルL1,L2に流れるコイル電流IOUT1,IOUT2それぞれが出力端子TO13及びTO23で検知され、それらの外部端子に取り出された電圧がそれぞれ比較器131,132の反転入力端子(−)に入力される。比較器131,132で、基準電流値IREFとモータコイルL1,L2に流れるコイル電流IOUT1,IOUT2が比較され、コイル電流IOUT1,IOUT2は、基準電流値IREFの大きさになるように負帰還が形成されている。
コイル電流IOUT1aは、時刻T0〜T3、T6〜T8、及びT12〜T15においては給電モードに入っており、コイル電流IOUT1が上昇する期間である。給電モード中の時刻T0〜T1、時刻T6〜T8、及び時刻T12〜T13が強制給電期間である。時刻T3〜T5、T8〜T10及び時刻T15〜T17はスロー減衰が施されるが、それぞれの減衰時間はほぼ同じ長さである。時刻T5〜T6、時刻T10〜T12、及び時刻T17〜T18はファースト減衰が施される。時刻T5〜T6及び時刻T17〜T18の減衰時間t20はスロー減衰の1つの減衰時間、例えば時刻T3〜T5の時間t40の半分である。また、時刻T10〜T12の減衰時間t80はスロー減衰の1つの減衰時間、例えば時刻T3〜T5の時間t40の2倍である。減衰時間t80及びt20は、ファースト減衰時での互いに別のサイクルでの減衰時間を表すが、減衰時間t80は減衰時間t20に比べると延長されていることが分かる。このように、本発明は今回サイクルと前回サイクルでの減衰時間を異ならせることができ、特に前回のサイクルでの減衰時間を延長できることが1つの特徴である。また、時刻T0〜T7、及び時刻T10〜T18では、コイル電流IOUT1aの電流値が基準電流値IREF1以下であり、時刻T7〜T10では、コイル電流IOUT1aの電流値が基準電流値IREF以上である。
出力信号CL1aは、抵抗R1に生じる電圧と基準電圧VA1とを比較した結果が比較器131から取り出された信号である。出力信号CL1aは、給電の場合はコイル電流IOUT1aの電流値が基準電流値IREF以下のときハイレベルHであり、コイル電流IOUT1aの電流値が基準電流値IREF1以上のとき、ローレベルLとなる。なお、スロー減衰の場合は、図12(a)から明らかなように抵抗R1に電流i10aは流れていなく、また、ファースト減衰の場合は図12(b)から明らかになるように、抵抗R1には電流i10bは流れるが、電流i10bは接地端子GNDから電源Vppに向かって流れるので、出力信号CL1aの出力はローレベルLに維持される。この結果、時刻T0〜T3、時刻T4〜T7、時刻T10〜T15、及び時刻T16〜T18はハイレベルHであり、時刻T3〜T4、時刻T7〜T10、時刻T15〜T16はローレベルLとなる。
好ましくは、比較器131の出力信号CL1が減衰開始(例えば時刻T8)後から、強制給電の終了(例えば時刻T13)まで、すなわち制御信号OUT_DECAY1の立ち上がりエッジまで無効にしてもよい。それは、前述のようにHブリッジ回路を構成するトランジスタQ11〜Q14がオン、オフする時にスパイクノイズを防ぐためである。そのために、例えば、出力信号CL1はラッチ回路(図示せず)を介してCLK分周部42及びCLKパルスカウンタ43に入力しても良い。
制御信号OUT_DECAY1aはオート減衰部141の出力信号の1つである。制御信号OUT_DECAY1aは、ファースト減衰とスロー減衰とを区別するために用意される。制御信号OUT_DECAY1aは、ファースト減衰の時には例えばハイレベルHを、スロー減衰の時には例えばローレベルLに置かれる。なお、給電の期間はハイレベルHまたはローレベルLのいずれかに設定しなければならないが、前記のとおり、ハイレベルHに初期化することにより、コイル電流IOUT1が迅速に下がり、モータを停止することが出来るため、誤動作によるモータへの破壊を防ぐ効果があるためである。従って、制御信号OUT_DECAY1aの出力は時刻T0〜T3、時刻T4〜T6、時刻T12〜15、及び時刻T16〜T18がハイレベルHであり、時刻T3〜T5、及び時刻T15〜T17がローレベルLとなる。
制御信号OUT_DECAY2aはオート減衰部141の出力信号の一つである。制御信号OUT_DECAY2aは、スロー減衰の開始(時刻T3,T8)から分周出力信号DCLK1aの例えば3周期分の時間経過後、ローレベルLからハイレベルHになり、モータコイルL1,L2に対して強制的に電流を供給する(強制給電)。信号OUT_DECAY2aがハイレベルHになる期間が強制給電の時間となる。時刻T0〜T1、時刻T6〜T8、及び時刻T12〜T13はハイレベルHであり、時刻T1〜T6、時刻T8〜T12、及び時刻T13〜T18はローレベルLである。また、制御信号OUT_DECAY2aがローレベルLからハイレベルHに変化する時の立ち上がりエッジが給電モードの開始タイミングとなる。
検知開始信号OUT_MINON1aはオート減衰部141の内部信号の1つであり、減衰モード検知信号である。本書では、検知開始信号OUT_MINON1は上記強制給電時間が終わる時、一定時間内にローレベルLからハイレベルHになり、検知開始信号OUT_MINON1aがローレベルLからハイレベルHに変化する時の立ち上がりエッジで、比較器131の出力信号CL1aを検知し、減衰モードを決める。従って、内部信号OUT_MINON1aは時刻T0〜T1、時刻T2〜T8、時刻T9〜T13、及び時刻T14〜T18でローレベルLであり、時刻T1〜T2、時刻T8〜T9、及び時刻T13〜T14でハイレベルHである。なお、検知の時刻が強制給電終わる後の一定時間、あるいは減衰終了後でも構わない。
モード変更信号SELECT1aはオート減衰部141には図示していない内部信号の1つであり、減衰モードを表す信号である。検知開始信号OUT_MINON1aの立ち上がりエッジが発生する時刻で、コイル電流IOUT1aが基準電流値IREF1以下の場合、すなわち逆起電力がまだ発生していない時、モード変更信号SELECT1aがローレベルLであり、検知時コイル電流IOUT1aが基準電流値IREF1以上の場合、すなわち逆起電力の発生が検出された時、モード変更信号SELECT1aハイレベルHとなる。従って、モード変更信号SELECT1aは時刻T0〜T8、及び時刻T13〜T18でローレベルLであり、時刻T8〜T13でハイレベルHである。
分周出力信号DCLK1aはCLK分周部42から出力され、1サイクルの減衰時間を決める信号である。分周出力信号CLK1aは、基準クロック信号CLKを分周して生成される信号であり、分周数(分周比)はモード選択信号SWで設定される。分周出力信号DCLK1aは、逆起電力が検知出来ない時刻T3〜T6、時刻T15〜T18の期間は、モード選択信号SWのアドレスSW02とSW03の論理値を(0,0)に設定すると、分周出力信号DCLK1aは、図3(c)から読み取れるように基準クロック信号CLKと同じ周期である1分周(1CLK)の信号を出力する。すなわち、時刻T3〜T6、及び時刻T15〜T18では、分周出力信号DCLK1aは基準クロック信号CLKと同じ周期となる。また、時刻T8〜T12では、時刻T8で逆起電力、すなわちコイル電流IOUT1aが基準電流値IREFを超えるため第2モード方式において、モード選択信号SWのアドレスSW04とSW05の論理値を(1,0)に設定して、分周出力信号DCLK1aは基準クロック信号CLKの2分周の信号を出力する。従って、時刻T8〜T12では、分周出力信号DCLK1aの周期は基準クロック信号CLKの周期の2倍となる。
前述の通り、1サイクルの減衰時間は分周出力信号DCLK1aの3周期分に設定されているため、例えば期間Y2での分周出力信号DCLK1aの周期が期間Y1中の周期の2倍であるので、期間Y2の減衰時間が期間Y1の減衰時間の2倍になる。また、分周出力信号DCLK1aの3周期を正しくカウンタするため、CLK分周部42は強制給電時も分周出力信号DCLK1aを出力する。強制給電の終了時、すなわち検知開始信号OUT_MINON1aの立ち上がりエッジが発生する時、CLK分周部42の出力が停止する。
基準クロック信号CLKはCLK分周部42に入力され、本発明にかかるスロー減衰、ファースト減衰、及びこれらの組み合わせの減衰比率を決める基準信号となる。本実施例の基準クロック信号CLKの周波数は例えば1MHz(周期が1μS)であるが、その周波数は例えば200KHz〜10MHzの範囲で設定される。
図5は、図1〜図4に示した第1実施例にかかるモータ駆動装置の動作を説明するフローチャートである。ステップ401〜ステップ409は、モータを制御する1つのフローを表すものである。以下、図5について図1〜図4を参照して説明する。
ステップ401は、モータコイルL1に電流を強制的に給電する強制給電を含む給電モードである。本発明での強制給電モードは、既述の特許文献1に開示された技術思想とほぼ同じである。すなわち、本発明の強制給電は、コイル電流IOUT1と基準電流値REFの大小に関係なく強制的にモータコイルL1に電流を供給するものである。強制給電が行われるタイミングは、基準クロック信号CLKによって設定され、特にスロー減衰またはファースト減衰が終了し、次の給電モードに移行する時に基準クロック信号CLKの例えば1周期の間、施される。本発明での強制給電は、図4に示した給電モードである時刻T0〜T3の一部期間である時刻T0〜T1、時刻T6〜T8の一部期間である時刻T6〜T7で施される。なお、強制給電を実行するために一時的に比較器131,132の回路機能を停止させることになる。なお、比較器131,132の回路動作は停止させずに比較器131,132の出力信号CL1,CL2の次段への伝達を無効にしても構わない。
ステップ402は、モータコイルL1に流れるコイル電流IOUTと基準電流値IREFとを比較し、その比較結果に基づきモータコイルL1に流す電流の減衰モードを選択する。ここで電流の減衰モードを選択するに当たっては、まずは第1モード方式か第2モード方式のいずれかを選択し、かつ、それらの中でスロー減衰かファースト減衰かを設定することになる。強制給電が終わるタイミングすなわち、図4に示した時刻T1、あるいは時刻T8で、コイル電流IOUT1と基準電流値IREFを比較し、その比較結果を比較器131から出力信号CL1として出力する。時刻T1では、コイル電流IOUT1が基準電流値IREFより小さく、すなわち、IOUT1<IREFであるから、第1モード方式であるステップ403に移行する。ちなみにこの時に出力信号CL1はハイレベルHに設定される。一方、時刻T8では、コイル電流IOUT1が基準電流値IREFより大きく、すなわち、IOUT1>IREFであるから、第2モード方式であるステップ407に移行する。ちなみにこの時に出力信号CL1はハイレベルLに設定される。いずれにしてもステップ402での検知結果が、IOUT1>IREFである場合にはモータコイルL1に流れる電流を確実に減少させる必要があるので、ファースト減衰を採用するか、あるいは1サイクルの減衰時間を延長する。もし、IOUT1>IREFの状態が検知されたにも関わらず、スロー減衰で電流を減衰させる方式を採用するならば、コイル電流IOUTを減衰させることが困難となり、本来の減衰処理が実現できなくなるという不具合が生じうる。
ステップ403ではコイル電流IOUT1が基準電流値IREFに達していない(IOUT1<IREF)との検知結果に基づき第1モード方式が設定される。ここで第1モード方式はスロー減衰を主導とした電流減衰方式である。ここで、「スロー減衰が主導」とは、1サイクルすなわちスロー減衰とファースト減衰両者の全体の減衰期間でスロー減衰が占める比率が大きいことを指す。例えばスロー減衰とファースト減衰との比率が2対1に設定される。第1モード方式は比較器131の出力信号CL1aに基づき決定される。
ステップ404は、モータコイルL1への給電を継続する。モータコイルL1には本来供給すべき電流の大きさまで到達していないので強制給電ではない通常の電流供給がモータコイルL1に対して施される。ここでの給電は第1モード方式に設定された条件に沿って施される。
ステップ405は、再びモータコイルL1に流れるコイル電流IOUT1と基準電流値IREFとを比較する。両者の比較結果は、比較器131から出力信号CL1として出力される。出力信号CL1は前に述べたが、IOUT1<IREFである時はハイレベルHを、IOUT1>IREFである時にはローレベルLを出力する。出力信号CL1がハイレベルHである時、すなわち、コイル電流IOUT1が基準電流値IREFに到達していない時(N)には1つ前の給電モードであるステップ404に戻り、給電が引き続き継続される。ステップ405で、IOUT1>IREFであると判定された時(Y)にはステップ406に移行する。
ステップ406は、モード選択信号SWに設定された第1モード方式、すなわちアドレスSW00〜SW03に設定された処理条件に基づき減衰処理を実行する。ステップ406では図2に示したモード選択部41にアドレスSW00〜SW03で設定されたモード選択信号SWが入力されると、それらに応じた出力信号S01,S02をCLK分周部42及びCLKパルスカウンタ43に出力する。例えば、アドレスSW00,SW01,SW02及びSW03の論理値がそれぞれ、1,0,0,及び0に設定されると、第1モード方式でのスロー減衰とファースト減衰の比率は図3(b)から読み取れるように、2:1(スロー減衰67%、ファースト減衰33%)となる。また、分周出力信号DCLK1aは図3(c)から読み取れるように1分周すなわち基準クロック信号CLKと同じ周期に設定される。
図4において、時刻T3〜T5の期間は、スロー減衰であり、時刻T5〜T6の期間がファースト減衰となる。時刻T3〜T5の期間は分周出力信号DCLK1aの2周期分になり、時刻T5〜T6が分周出力信号DCLK1aの1周期分にあたる。従って、スロー減衰はファースト減衰の2倍の時間に亘り施される。
ステップ407ではコイル電流IOUT1が基準電流値IREFに達している(IOUT1>IREF)との検知結果に基づき第2モード方式が設定される。ここで第2モード方式はスロー減衰を主体とした電流減衰方式である。第2モード方式は比較器131の出力信号CL1aに基づき決定される。ステップ401での強制給電により、ステップ402でコイル電流IOUTが基準電流値IREFを超えている(IOUT1>IREF)と判定された場合には、「確実」に電流減衰処理を施す必要があるので、ファースト減衰を主体とした第2モード方式が選択される。ここで「確実」とは、1サイクルの減衰でコイルL1に流れる電流IOUT1がある程度以上降下することであり、例えば、強制給電後でもコイル電流IOUT1が基準電流値IREF以下で維持する程度である。
ステップ408は、第2モード方式すなわちアドレスSW04〜SW07に設定された減衰処理を実行する。ステップ408においては、図2に示したモード選択部41にはアドレスSW04〜SW07に設定されたモード選択信号SWが入力され、それらの情報をもった出力信号S01,S02をそれぞれCLK分周部42及びCLKパルスカウンタ43に出力する。例えばアドレスSW04,SW05,SW06及びSW07の論理値がそれぞれ、0,1,1及び0に設定されると、第2モード方式でのスロー減衰とファースト減衰の比率は図3(b)から読み取れるように、1:2(スロー減衰33%、ファースト減衰67%)となる。また、分周出力信号DCLK1aは図3(c)から読み取れるように2分周すなわち基準クロック信号CLKの2倍の時間に設定される。
ここで第2モード方式のスロー減衰とファースト減衰の比率及び処理時間を確認するために図4に戻る。図4において、時刻T8〜T10の期間がスロー減衰であり、時刻T10〜T12の期間がファースト減衰となる。時刻T8〜T10の期間は基準クロック信号CLKの周期の2倍(2分周)であり、ファースト減衰がスロー減衰の2倍であることが分かる。
ステップ409は、設定した減衰(減衰)時間に到達し、減衰処理を停止するステップである。本実施例では、図2に示したCLKパルスカウンタ43に、分周出力信号DCLK1aの例えば3カウント分を出力するように設定されている。従って、1サイクル当たりの減衰処理の時間は時刻T3〜T6、あるいは時刻T8〜T12になる。
1サイクルの電流減衰処理が終わると、またステップ401に戻り、強制給電に入る。図5に示した処理が繰り返されることによって、逆起電力が発生しても、モータコイルL1,L2に流れる電流は基準電流値IREF以下に制御される。
図5に示した第1実施例では、ステップ401の最初の強制給電によってモータコイルL1,L2に流れる電流が基準電流値IREFに到達しているか否かをステップ402で判定し、到達している場合には第2モード方式すなわちファースト減衰を主導とするか、あるいは1サイクルの減衰時間を延長する電流減衰方式に移行する。これは強制給電モードにおいてコイル電流IOUT1が比較的早く基準電流値IREFに達した場合には、スロー減衰よりも確実な電流減衰処理を施さないとコイル電流がさらに上昇する可能性が生じるからである。従って、第1実施例においては、スロー減衰とファースト減衰それぞれに異なる処理時間が設定された第1モード方式と第2モード方式を使い分けて電流減衰処理(減衰処理)を施すことを特徴としている。
(第2実施例)
図6は本発明にかかる第2実施例にかかるモータ駆動装置のタイミングチャートである。第2実施例は図1、図2に示した回路構成と図3に示したモード選択信号SWのアドレスSW00〜SW03を用いてデフォルト値を決める。こうしたことは第1実施例と同じであるが、第2実施例での第2モード方式はモード選択信号SWのアドレスSW04〜SW07を読み取るだけではなく、自動的に変更する点が第1実施例とは異なる。第2本実施例は、例えばモード選択信号SWのアドレスSW00〜SW02及びSW03の論理デフォルト値をそれぞれ0,0,0及び0にする。すなわち、図3(a)に示したモード選択信号SWは、第1モード方式及び第2モード方式の2つの方式を制御するものとしている。しかし、第2実施例は少なくとも1つの方式を採用するものであり、モード選択信号SWはアドレスSW00〜SW03の4ビットで構成される。当然のことだが、他の設定でも構わない。また、例えばモード選択部41内にメモリを用いて、デフォルト値を記憶させるようにしても構わない。期間Y11(時刻T20〜T25)は例えば第1モード方式で、期間Y12(時刻T25〜T30)及び期間Y13(時刻T30〜T34)は例えば第2モード方式でそれぞれ処理される。スロー減衰だけでスピンドルモータ200を駆動するには、スロー減衰が占める比率が100%、ファースト減衰が占める比率が0%であることにほかならない。なお、逆起電力があると検知される場合であってもファースト減衰は用いずに、1サイクルでのスロー減衰の減衰時間を自動的に延長し、逆起電力がないと判断した場合は、当初設定した減衰時間で実行する。
図6でコイル電流IOUT1bは、モータコイルL1に流れる電流である。コイル電流IOUT1bは、時刻T20〜T23、T25〜T27、T30〜T32、及び時刻T34〜T37がモータコイルL1に電流を供給する給電モードで生成され、この時コイル電流IOUT1bが上昇する。給電モードの中で、時刻T20〜T21、時刻T25〜T27、及び時刻T34〜T35が強制給電期間である。時刻T23〜T25、T27〜T30、時刻T32〜T34及び時刻T37〜T39がスロー減衰の期間である。時刻T27〜T30の時間t200は、前回のサイクルでの電流減衰処理期間である時刻T23〜T25、あるいは時刻T38〜T40の時間t100の約2倍に延長され、さらに時刻T32〜T34の時間t400は前回のサイクルの電流減衰期間である時刻T27〜T30の時間t200の約2倍にそれぞれ延長される。このように第2実施例においても、第1実施例と同様に前回のサイクルでの電流減衰時間を今回のサイクルではさらに延長できることが1つの特徴である。なお本書でいう「1サイクル」は、前に述べたように給電モードから次の給電モードまでの期間であるので、図6においては、いずれもスロー減衰が実行される例えば時刻T27〜T30、T32〜T35が相当する。
出力信号CL1bは、比較器131から出力される出力信号である。出力信号CL1bは、図4と同じくコイル電流IOUT1aが給電の場合はコイル電流IOUT1aの電流値が基準電流値IREF以下のときハイレベルHであり、コイル電流IOUT1aの電流値が基準電流値IREF1以上のとき、出力信号CL1がローレベルLとなる。減衰の場合は、出力信号CL1の出力がローレベルLに維持される。また、図6は信号出力CL1のハイレベルH、あるいはローレベルLを模式的に示す図であるため、コイル電流IOUT1の電流値が基準電流値IREF以下から以上に変更するとき、出力信号CL1が一定時間ローレベルLを維持するように表している。時刻T20〜T23、時刻T24〜T26、時刻T27〜T31、時刻T32〜T37、及び時刻T38〜T39はハイレベルHであり、時刻T23〜T24、時刻T26〜T27、及び時刻T37〜T38はローレベルLである。
制御信号OUT_DECAY1bは、オート減衰部141から出力されるが、全期間である時刻T20〜T39において、ローレベルLに設定されている。なお、電流減衰モードが100%のスロー減衰で処理する場合には次段の回路に入力する必要性はなくなるので、制御信号OUT_DECAY1bは用いなくとも良い。
制御信号OUT_DECAY2bは、オート減衰部141から出力される。コイル電流IOUT1bに対するスロー減衰の終了後であって、たとえば分周出力信号DCLK1bの3周期分の時間経過後に制御信号OUT_DECAY2bがハイレベルHとなる期間、モータコイルL1に対して強制給電が施される。従って、時刻T20〜T21、時刻T25〜T27、時刻T30〜T32、及び時刻T34〜35で制御信号OUT_DECAY2bがハイレベルHとなり、時刻T21〜T25、時刻T27〜T30、時刻T32〜34、及び時刻T35〜T39で制御信号OUT_DECAY2bがローレベルLになる。
検知開始信号OUT_MINON1bは、CLKパルスカウンタ43からモード選択部41及びCLK分周部42に入力される。検知開始信号OUT_MINON1bは、強制給電が終わった後、ローレベルLからハイレベルHに遷移する。検知開始信号OUT_MINON1bがローレベルLからハイレベルHに遷移する時の立ち上がりエッジで、比較器131の出力信号CL1bを検知し、減衰モードを決める。検知開始信号OUT_MINON1bは時刻T20〜T21、時刻T22〜T27、時刻T28〜T32、時刻T33〜T35、及び時刻T36〜T39でローレベルLであり、時刻T21〜T22、時刻T27〜T28、時刻T32〜33、及び時刻T35〜T36でハイレベルHである。
モード変更信号SELECT1bは、減衰モードを表す信号である。第2実施例は、第1実施例と同じように、検知時コイル電流IOUT1bが基準電流値IREF1以下の場合、すなわち逆起電力がまだ発生していない時、モード変更信号SELECT1bがローレベルLであり、第1モード方式で減衰する。検知時コイル電流IOUT1が基準電流値IREF1以上の場合、すなわち逆起電力の発生が検出された時、モード変更信号SELECT1bハイレベルHであり、第2モード方式で減衰する。従って、モード変更信号SELECT1bは時刻T20〜T27、時刻T35〜T39でローレベルLであり、時刻T27〜T35でハイレベルHである。
分周出力信号DCLK1bは、基準クロック信号CLKを分周して生成される。デフォルト値の分周数(分周比)はモード選択信号SWで設定され、第2モード方式の分周出力信号DCLK1bは前回の分周出力信号DCLK1b値に基づいて変化するものである。時刻T23〜T25、及び時刻T38〜T40は第1モード方式であり、分周信号DCLK1bの周期はデフォルト値の基準クロック信号CLKと同じである。時 刻T27〜T30、及び時刻T32〜T35は第2モード方式であり、時刻T27〜T30での分周出力信号CLK1bの周期は前回サイクルの減衰期間(時刻T23〜T25)のDCLK1bの2倍、すなわち信号基準CLKの2倍であり、時刻T32〜T34での分周出力信号CLK1bの周期は前回サイクルの減衰期間(時刻T27〜T30)のDCLK1bの2倍、すなわち信号基準CLKの4倍である。また、第1実施例と同じく、分周出力信号DCLK1bは強制給電の終了時で停止する。
すなわち、第2実施例では、逆起電力が検出出来ない時は減衰効率の良い第1モード方式で減衰し、逆起電力が検出される時は、前回サイクルの減衰期間の時間(分周数)に基づいて減衰期間の時間(分周数)を延長(増加)する第2モード方式で減衰することである。説明上は第1モード方式と、第1モード方式の1サイクルの減衰時間の2倍及び4倍の第2モード方式、合計3種類の減衰時間で説明したが、3以上の他の倍率あるいは3以上の種類数でも構わない。
図7は図6に示した第2実施例にかかるモータ駆動装置の動作を説明するフローチャートである。前に述べたように第2実施例では、例えば第1モード方式及び第2モード方式のいずれもがスロー減衰が適用されるが、逆起電力を検出した場合、1サイクルでの減衰時間を延長し、逆起電力を検出しない場合には、減衰時間を元(デフォルト値)に戻すというものであるが、加えて、1サイクルでの減衰時間を延長した後に、逆起電力の抑制が十分でない場合には、次の1サイクルで減衰時間をさらに延長させるのが第2実施例の特徴である。
図7において、ステップ601はステップ401(図5)と同じく、モータ給電開始初期、モータコイルL1に強制給電を行う。この時、モータコイルL1に流れる電流IOUT1aが上昇する。強制給電期間は、時刻T20〜T21、時刻T25〜T27、時刻T30〜32、及び時刻T34〜T35が該当する。
ステップ602はステップ402(図5)と同じく、強制給電が終わる時、減衰方式を決めるステップである。時刻T21、T35では、コイル電流IOUT1bが基準電流値IREFより小さい(IOUT1b<IREF)(ステップ602にてN)ため、ステップ605に進められる。時刻T27、T32では、コイル電流IOUT1bが基準電流値IREFを超える(IOUT1b>IREF)(ステップ602にてY)ため、ステップ603に進められる。
ステップ603は、コイル電流IOUT1bが基準電流値IREFを超えているため(IOUT1b>IREF)、第2モード方式が設定される。コイル電流IOUT1bと基準電流値IREFが、IOUT1b>IREFとなる状態は、図6の時刻T27,T32であり、この時、出力信号CL1bはローレベルLであり、モード変更信号SELECT1bはハイレベルHになる。
ステップ604は、第2モード方式において分周出力信号DCLK1bの周期を前回減衰サイクルの周期の2倍の大きさに設定する。また、デフォルト値は1倍すなわち分周数(分周比)が1倍に設定されている。具体的に説明すると、図2のモード選択部41を第2モード方式で減衰する場合に前回減衰サイクルの分周数が2倍になるように出力信号SO1がCLK分周部42に送信する。これによって、CLK分周部42の分周数が2倍に設定される。図6を参照すると、例えば、時刻T27から、分周出力信号DCLK1bの周期が時刻T23〜25の2倍になる。時刻T32では逆起電力の影響がまだあると判断して、分周信号DCLK1bの周期が時刻T27〜T30の2倍になる。
ステップ605〜ステップ607は図5のステップ403〜ステップ405と同じである。すなわち、強制給電でコイル電流IOUT1bが基準電流値IREFに達していない場合に、ステップ601で第1モード方式を選択し、ステップ606ではスロー減衰で給電を継続し、ステップ607で再度、コイル電流IOUT1bと基準電流値IREFとを比較する。ステップ607でコイル電流IOUT1bが基準電流値IREFに達していない場合には再度ステップ606の給電を継続し、達している(ステップ607にてY)場合には次のステップ608に移行する。
ステップ608は第1モード方式で当初設定したデフォルト値にCLK分周部42の分周比を戻す処理である。第2実施例での第1モード方式では分周比は1、すなわち基準クロック信号CLKの周期と同じ値に戻すというものである。具体的には図6から明らかなように時刻T27〜T30までは分周比は2であり、時刻T32〜T38までは分周比4になったが、時刻T38からは、分周信号CLK1bの周期は基準クロック信号CLKと同じ周期に戻されていることが分かる。
ステップ609,610はステップ604またはステップ608で設定された減衰処理を設定した時間まで実行することを示す。ステップ610で所定の減衰処理が終わると再度ステップ601に戻る。
第2実施例では、ファースト減衰の比率を増加することなく、すなわち電流リップルを小さく維持し、かつ、第2モード方式は1サイクルの減衰時間を自動的に増加させる、すなわち第2モード方式は複数の電流減衰パターンを用意することで確実にコイル電流を降下でき、逆起電力の影響を確実に抑える効果が奏される。
(第3実施例)
図8は本発明の第3実施例にかかるモータ駆動装置の動作を説明するタイミングチャートである。第3実施例は第1,第2実施例と同様に図1,図2の回路構成と図3に示したモード選択信号SWのアドレスSW00〜SW03に基づきデフォルト値を決める。第3実施例は、第2実施例と同じく、第2モード方式はモード選択信号SWのアドレスSW04〜SW07を読み取るのではなく、自動的に変更する点が第1実施例とは異なる。第3実施例は、例えばモード選択信号SW00〜SW02及びSW03の論理値をそれぞれ0,0,0及び0に設定する。当然のことだが、他の設定でも構わない。また、例えばモード選択部41内にメモリを用いて、デフォルト値を記憶させても構わない。期間Y21(時刻T50〜T55)、期間Y24(時刻T65〜T70)は、第1モード方式で、期間Y22(時刻T55〜T60)、期間Y23(時刻T60〜T65)は、第2モード方式でそれぞれ処理される。第3実施例では、第2モード方式は、スロー減衰とファースト減衰の組み合わせ、もしくはファースト減衰のみを用いる。
図8において、コイル電流IOUT1cは時刻T50〜T53、時刻T55〜T57、時刻T60〜T62、及び時刻T65〜T68での給電により上昇し、時刻T53〜T55、時刻T57〜T59、時刻T62〜T64、及び時刻T68〜T70ではスロー減衰により比較的遅く降下し、時刻T59〜T60、及び時刻T64〜T65ではスロー減衰よりは比較的速いファースト減衰により速く降下する。
比較器131の出力信号CL1cは、時刻T50〜53、時刻T54〜T56、時刻T57〜T61、時刻T62〜T68、及び時刻T69〜T70はハイレベルHであり、時刻T53〜T54、時刻T56〜T57、時刻T61〜T62、及び時刻T68〜T69はローレベルLである。
制御信号OUT_DECAY1cは、給電及びファースト減衰時はハイレベルHであり、スロー減衰時はローレベルLである。従って、制御信号OUT_DECAY1cは時刻T50〜T53、時刻T55〜T57、時刻T59〜T62、時刻T64〜T68でハイレベルHであり、時刻T53〜T55、時刻T57〜T59、時刻T62〜T64、及び時刻T68〜T70でローレベルLである。また、時刻T64〜T65の期間ではファースト減衰が施されるが、その処理時間は同じファースト減衰が施された時刻T59〜T60の時間の2倍である。すなわち、1サイクルの減衰処理において、時刻T57〜T60では、スロー減衰が占める時間は67%であり、ファースト減衰が占める時間が33%である。時刻T61〜T65では、スロー減衰が占める時間は33%であり、ファースト減衰が占める時間が67%である。すなわち、時刻T62〜T65での1サイクルのファースト減衰の占める比率が時刻T57〜T60での1サイクルのファースト減衰の占める比率より33%増えていることが分かる。
制御信号OUT_DECAY2cは、オート減衰部141から出力される。コイル電流IOUT1cに対する電流減衰開始後、分周出力信号DCLK2cの例えば3周期分の時間経過後に、制御信号OUT_DECAY1cはハイレベルHになる。従って、時刻T50〜T51、時刻T55〜T57、時刻T60〜T62、及び時刻T65〜66で制御信号OUT_DECAY2cがハイレベルHとなり、時刻T51〜T55、時刻T57〜T60、時刻T62〜65、及び時刻T66〜T70で制御信号OUT_DECAY2cがローレベルLになる。
制御信号OUT_MINON1cは、CLKパルスカウンタ43からモード選択部41及びCLK分周部42に入力されるが、強制給電時間が終わった後、ローレベルLからハイレベルHに遷移する。信号OUT_MINON1cがローレベルLからハイレベルHに遷移する時の立ち上がりエッジで、比較器131の出力信号CL1bを検知し、減衰モードを決める。内部信号OUT_MINON1cは時刻T50〜T51、時刻T52〜T57、時刻T58〜T62、時刻T63〜T66、及び時刻T67〜T70でローレベルLであり、時刻T51〜T52、時刻T67〜T58、時刻T62〜63、及び時刻T66〜T67でハイレベルHである。
モード変更信号SELECT1cは、時刻T50〜T57、時刻T66〜T70はローレベルLであり、時刻T57〜T68はハイレベルHである。
分周出力信号DCLK1cは時刻T53〜T55、時刻T57〜T60、時刻T62〜65、及び時刻T68〜T70で発生する。第1及び第2実施例と同じく、DCLK1cは強制給電の終了時で停止する。第3実施例の分周出力信号DCLK1cの周期は断続的に発生するが、発生する期間においての周期は基準クロック信号CLKの周期に一致している。
すなわち、第3実施例では、逆起電力が検出出来ない時は減衰効率の良い第1モード方式で減衰し、逆起電力が検出される時は、前回サイクルの減衰期間のスロー減衰及びファースト減衰の組み合わせ比率に基づいてファースト減衰の組み合わせ比率を増加する第2モード方式で減衰することである。説明上は第1モード方式と、第1モード方式の1サイクルのファースト減衰比率を、33%及び66%増加する第2モード方式、合計3種類の減衰比率で説明したが、他の比率あるいは3以上の種類数でも構わない。
図9は図8に示した第3実施例にかかるモータ駆動装置の動作を説明するフローチャートである。
ステップ801はステップ601(図5)と同じく、モータ給電開始初期、モータコイルL1に強制給電を行う。この時、モータコイルL1に流れる電流IOUT1aが上昇する。強制給電期間は、時刻T50〜T51、時刻T55〜T57、時刻T60〜T62、及び時刻T65〜T66が該当する。
ステップ802はステップ602(図5)と同じく、強制給電が終わったタイミングで、減衰方式を決めるステップである。時刻T53、T68では、コイル電流IOUT1cが基準電流値IREFより小さいため(ステップ802にてN)、ステップ805に進められる。時刻T57、T62では、コイル電流IOUT1cが基準電流値IREFを超えるため(ステップ802にてY)、ステップ803に進められる。
ステップ803は、コイル電流IOUT1cが基準電流値IREFを超えているため(IOUT1c>IREF)、第2モード方式が設定される。第2モード方式はファースト減衰を主導とした減衰である。コイル電流IOUT1cと基準電流値IREFが、IOUT1c>IREFとなる状態は、図8の時刻T57,T62であり、この時、出力信号CL1cはローレベルLであり、モード変更信号SELECT1cはハイレベルHになる。
ステップ804は第2モード方式で減衰する場合、ファースト減衰の比率を約33%増加することを示している。具体的に説明すると、図2のモード選択部41が第2モード方式である出力信号SO2をCLKパルスカウンタユニット43に出力する。この時、CLKパルスカウンタユニット43は1サイクル当たり、分周出力信号DCLK1cの1サイクル(3周期分)の減衰時間内にファースト減衰を1周期分増加する。すなわち、時刻T57後、ファースト減衰の比率が0%から約33%に増加し、時刻T62以降は、ファースト減衰の比率が約33%から約67%に増加する。
ステップ805〜ステップ807は図5のステップ403〜ステップ405及びステップ605〜ステップ607と同じである。すなわち、強制給電でコイル電流IOUT1cが基準電流値IREFに達していない場合に、ステップ805で第1モード方式を選択し、ステップ806ではスロー減衰で給電を継続し、ステップ807で再度、コイル電流IOUT1cと基準電流値IREFとを比較する。ステップ807でコイル電流IOUT1cが基準電流値IREFに達していない場合には再度ステップ806の給電を継続し、達している場合には次のステップ808に移行する。
ステップ808,809はステップ804またはステップ805〜807で設定された減衰処理を設定した時間まで実行することを示す。ステップ809で所定の減衰処理が終わると再度ステップ801に戻る。
第3実施例では、1サイクル当たりの減衰時間を維持しつつ、逆起電力によるコイル電流上昇を抑制することができる。特に長時間に亘りコイル電流が大きい状態が続くと大きなステッピングモータ200の振動が大きくなるので、第3実施例はこうしたモータの減衰処理に好適となる。
(第4実施例)
図10は本発明の第4実施例にかかるモータの駆動装置を説明するタイミングチャートである。第4実施例は図1、図2の回路構成及び図3に示したモード選択信号SWを用いて施される。第4実施例は第1モード方式及び第2モード方式のいずれもがスロー減衰で処理される。すなわち、期間Y31(時刻T80〜T85)、期間Y32(時刻T85〜T91)、期間Y33(T91〜T96)のすべての期間でスロー減衰を施す。
第4実施例を実行するに当たっては、基準電流値を2つ用意する。このために、図1に示した比較器131,132それぞれに第1比較手段及び第2比較手段をもたせる。こうした2つの手段は図1には示していない。比較器131の第1比較手段には第1基準電流値IREF1を電圧に変換した電圧が、第2比較手段には第2基準電流値IREF2を電圧に変換した電圧が与えられる。こうした電圧は図1に示した,出力電圧RNF1,RNF2が相当するが、出力電圧RNF1及び出力電圧RNF2に相当する電圧がそれぞれ2つ用意されている。
比較器131の第2比較手段に与えられる基準電流値IREF2のレベルは第1比較手段に与えられる基準電流値IREF1のそれよりも高い。
コイル電流IOUT1dは、時刻T80〜T83、時刻T85〜T87、及び時刻T91〜T94で給電により上昇し、時刻T83〜T85、時刻T87〜T91、及び時刻T94〜T96で減衰処理により降下する。第4実施例ではスロー減衰だけを使用しているが、ファースト減衰とスロー減衰を組み合わせて使用しても構わない。また、コイル電流IOUT1dの電流値は、時刻T80〜T85、及び時刻T90〜T96で第1基準電流値IREF1以下であり、時刻T85〜T86付近、及び時刻T89〜T90では第1基準電流値IREF1以上であるが、第2基準電流値IREF2以下であり、時刻T86〜T89では第2基準電流値IREF2以上である。
第1出力信号CL1dは、比較器131の第1比較手段から出力される。第1出力信号CL1dは、給電の場合コイル電流IOUT1dが第1基準電流値IREF1に達していない時はハイレベルHであり、第1基準電流値IREF1を超えている時はローレベルLである。減衰の場合は、出力信号CL1dの出力がローレベルLに維持される。従って、第1出力信号CL1dは、時刻T80〜T83、時刻T84〜86、時刻T87〜T94、及び時刻T95〜96でハイレベルHになり、時刻T83〜T84、時刻T86〜T87、及び時刻T94〜95でローレベルLになる。
第2出力信号CL10dは、比較器131の第2手段から出力される。第2出力信号CL10dは、給電の場合コイル電流IOUT1dが第2基準電流値IREF2に達していない時はハイレベルHであり、第2基準電流値IREF2を超えている時はローレベルLである。減衰の場合は、出力信号CL1の出力がローレベルLに維持される。従って、第2出力信号CL10dは、時刻T80〜T86、及び時刻T87〜T96でハイレベルHになり、時刻T86〜T87でローレベルLになる。
制御信号OUT_DECAY1d、制御信号OUT_DECAY2d、検知開始信号OUT_MINON1d、モード変更信号SELECT1dは、図6に示した制御信号OUT_DECAY1b,OUT_DECAY2b、検知開始信号OUT_MINON1b及びモード変更信号SELECT1bとそれぞれ同じであるので説明は割愛する。
モード変更信号SELECT1dがローレベルLの場合、第1モード方式が用いられる。モード変更信号SELECT1dがハイレベルHの場合、モード変更信号SELECT10dの電位によって減衰方式を決める。モード変更信号SELECT10dがローレベルLの場合は、第2モード方式で減衰し、モード変更信号SELECT10dがハイレベルHの場合は、第3モード方式で減衰処理が施される。
モード変更信号SELECT10dはモード変更信号SELECT1dのように、検知開始信号OUT_MINON1dがローレベルLからハイレベルHに変化する時の立ち上がりで、信号CL1dを検知する。信号CL1dがハイレベルHであれば、モード変更信号SELECT10dがローレベルLになり、出力信号CL1dがローレベルLであれば、モード変更信号SELECT10dがハイレベルHになる。従って、モード変更信号SELECT10dは時刻T80〜T87及び時刻T92〜T96でローレベルLになり、時刻T87〜T92でハイレベルHになる。
分周出力信号DCLK1dは、時刻T82〜T85、時刻T87〜T91、及び時刻T94〜T96でクロックを発生する。時刻T82〜T85、及び時刻T94〜T96での周期はデフォルト値であり、基準クロック信号CLKの周期と一致している。デフォルト値は前述の実施例2、あるいは実施例3と同じく、モード選択信号SWで設定しても良いし、内部メモリで設定しても良い。時刻T87〜T91での周期は基準クロック信号CLKの周期の4倍である。すなわち、モード変更信号SELECT1d及びSELECT10dがH、Hの場合、逆起電力の影響が大と認識され、第2モード方式の前回1サイクルの減衰時間を2倍の代わりに、直接前回1サイクルの減衰時間の4倍になる。それで、時刻T87〜T91に当たる時間は時刻T82〜T85に当たる時間の4倍である。また前述の通り、強制給電終了時分周出力信号DCLK1dを停止する。
図11は図10に示した第4実施例にかかるモータ駆動装置の動作を説明するフローチャートである。第4実施例は、ステップ1001〜ステップ1013で処理される。ステップ1001〜ステップ1006は、図7示の第2実施例の一部の処理を用いている。すなわち、図11示のステップ1001,1002,1003,1004,1005、及び1006は、図7示のステップ601,602,605,606,607、及び608にそれぞれ相当する。したがって、ここではステップ1001〜1006の説明は割愛し、ステップ1007〜1013について説明する。
ステップ1007は、コイル電流IOUT1dが第1基準電流値IREF1より高い時に(ステップ1002にてY)、コイル電流IOUT1を第2基準電流値IREF2と比較する。コイル電流IOUT1dが第2基準電流値(IREF2)よりも低い時は(ステップ1007にてN)、ステップ1008に進められるが、高い時には(ステップ1007にてY)、ステップ1010に進められる。
ステップ1008は、コイル電流IOUT1dが第1基準電流値IREF1と第2基準電流値IREF2の間にある場合、第2モード方式で処理する。図示していないが、その時、モード変更信号SELECT1dがハイレベルHになり、モード変更信号SELECT10dがローレベルLになる。
ステップ1009は、第2モード方式で処理する場合、図2示のCLK分周部42で基準クロック信号CLKを2分周する信号を分周出力信号として出力する。したがって、ステップ1008〜ステップ1009は第2実施例のフローチャートを示した図7、ステップ604と同じ条件に設定される。
ステップ1010は、コイル電流IOUT1dが第2基準電流値IREF2より高い時、第3モード方式で処理する。この時、図10に示しているように、モード変更信号SELECT1d及びモード変更信号SELECT10dがそれぞれハイレベルHになる。
ステップ1011は、第3モード方式で処理する場合、図2示のCLK分周部42で基準クロック信号CLKを4分周する分周出力信号を出力する。図10の時刻T87〜T91に対応する。
第4実施例の第2減衰方式は分周出力信号の変化だけを示しているが、第3実施例のように減衰モード、すなわちスロー減衰かファースト減衰かを変更するようにしても良い。また、実施例4のようにクロック信号CLKと減衰モード両方を変化しても構わない。例えばコイル電流IOUT1dの電流値が基準電流値IREF1とIREF2の間にある場合、第2モード方式はファースト減衰を約33%増加する。コイル電流IOUT1dの電流値が第2基準電流値IREF2より高い場合は、第3モード方式ではファースト減衰を約33%増加、及び分周出力信号の周期を2倍にする。当然のことだが、比較基準となる基準電流値を2つだけではなく3つ、4つにしても構わない。
第4実施例は前記の第1〜第3実施例に比べて、基準電流値を複数設けている。すなわち、逆起電力の影響を検知することだけではなく、逆起電力によるコイル電流の上昇程度も検知し、複数の減衰方式を設定することが出来る。従って、逆起電力の影響が大きいか小さいかに関わらず、電力損失が小さく、かつ短時間内にコイル電流の電流値を基準電流値以下に維持することが可能になる。
なお、第4実施例は第1モード方式及び第2モード方式の2つの方式を用いるものとして説明したが、第2実施形態及び第3実施形態と同様に1つのモード方式で実行することもできるこの場合にはモード選択信号SWは4ビットのアドレスを用意することで足りる。
(第5実施例)
本発明の第5実施例は、図面を用意していない。第5実施例は第1実施例と第2実施例の組み合わせで施される。たとえば、第1モード方式でモード選択信号SWのアドレス(SW00,SW01)の論理値を(0,0)に設定すると、スロー減衰の比率が100%となるが、この場合には図7に示したフローチャートに基づき減衰処理を施す。また、アドレス(SW00,SW01)の論理値を、(0,0)以外に設定した場合には、図5に示したフローチャートに沿って減衰処理を施すようにしても良い。
第5実施例では、使用者が電流波形の歪みが抑えるために、ファースト減衰及びスロー減衰を使用する場合と、電流リップル及び電力損失を抑えるために、スロー減衰だけを使用する場合の両者に対応し、逆起電力の発生を抑制することが出来るというメリットを有する。
(第6実施例)
第6実施例についても第5実施例と同様に図面を用意していない。第6実施例は第2実施例と第3実施例の組み合わせで構成される。すなわち、第1モード方式はスロー減衰を用い、逆起電力が検知される場合には、第2モード方式に移行し、減衰処理1サイクル当たりの減衰時間を大きくするか、またはファースト減衰の比率を高める電流減衰処理を施す。
第6実施例では、例えば、強制給電が終わった時に、逆起電力が検知されたとする。こうした場合にはそこで例えばCLK分周部42の分周比を上げて例えばCLK分周部42の分周比を2倍に設定する。その条件で1サイクルの間、減衰処理を施してみる。その後、逆起電力が起きるか起きないかを検知する。逆起電力が起きていない場合はスロー減衰を選ぶ。逆起電力がまだ影響している場合には、例えば、分周比はそのままの2倍を維持し、ファースト減衰を約33%増加させる。もしそれでも逆起電力の影響が残っているならばファースト減衰をさらに約33%増加させる。強制給電後の検知で、逆起電力の影響がないと判断された場合には、スロー減衰、すなわち基準クロック信号CLKと同じ周期で減衰処理を施す。いずれにしても第6実施例では第2実施例と第3実施例の組み合わせによる減衰方式であり、減衰モードの選択や処理時間は設計事項である。
(その他実施例)
本発明のおもな実施例は上述のとおりであるが、これらのほかの各実施形態も考えられる。例えば、第1実施形態、第2実施形態、第3実施形態、第4実施形態及び第5実施形態を、少なくとも2つの全部の構成要件、または一部を組み合わせた実施形態であっても構わない。当業者にはモータの種類やまたはモータの使用条件、使用環境に応じて適宜選択することは比較的容易なことである。
本発明にかかるモータ駆動装置はステッピングモータに限らずに他のモータにも応用することが可能である。すなわち、Hブリッジが用いられる、例えば三相モータの駆動に用いることができる。