JP4560956B2 - ステッピングモータの制御装置 - Google Patents
ステッピングモータの制御装置 Download PDFInfo
- Publication number
- JP4560956B2 JP4560956B2 JP2000380381A JP2000380381A JP4560956B2 JP 4560956 B2 JP4560956 B2 JP 4560956B2 JP 2000380381 A JP2000380381 A JP 2000380381A JP 2000380381 A JP2000380381 A JP 2000380381A JP 4560956 B2 JP4560956 B2 JP 4560956B2
- Authority
- JP
- Japan
- Prior art keywords
- pulse
- stepping motor
- time
- phase
- control
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Control Of Throttle Valves Provided In The Intake System Or In The Exhaust System (AREA)
- Control Of Stepping Motors (AREA)
Description
【発明の属する技術分野】
本発明は、ステッピングモータをパルス制御するためのステッピングモータの制御装置に関するものである。
【0002】
【従来の技術】
従来より、一般的なステッピングモータのパルス制御方式としては、マイコン(マイクロコンピュータ)により実現されるデジタル制御と、ハードウエア回路により実現されるアナログ制御とがあり、そのうちデジタル制御は、アナログ制御のように専用回路を必要とすることがないため、コストを比較的低く抑えることができる。また、デジタル制御には割り込み周期制御やベース周期制御がある。
【0003】
割り込み周期制御は、マイコンの時間割り込み機能、又は角度割り込み機能を使用した制御であり、同制御では、一定の時間周期又は一定の角度周期で割り込み処理が起動される。そして、その割り込み処理にてステッピングモータに対する駆動パルスが操作される。実際には、出力ポートの論理レベルがHレベル又はLレベルにセットされる。これにより、所定時間周期の駆動パルスが出力され、ステッピングモータが駆動される。また、ベース周期制御は、マイコンのベースルーチンで周期処理される制御であり、同制御では、ベースルーチン内の所定ステップに到達すると、当該ステップにて前記同様、駆動パルスが操作され、ステッピングモータが駆動される。
【0004】
【発明が解決しようとする課題】
しかしながら、例えばエンジン制御用の電子制御装置(エンジンECU)では、点火、燃料噴射等の主要制御での割り込み処理(や割込み禁止処理)によって周期処理の起動待ちが発生することがある。その際、その処理待ちは駆動パルスの制御待ちに繋がるため、パルス誤差として現れる。また、パルスの高周波数制御時など、誤差がパルス幅の割合に近くなると、励磁時間不足等を招き、結果として動作不良が発生する。一方、ベース周期処理でステッピングモータのパルス制御を実施する場合、一般のベース演算処理と同様に前記パルス制御にかかる処理が割り込み処理の間で実行されるため、演算負荷の高いエンジン高回転域では処理が重なって処理待ちが発生する。この処理待ちの間は駆動パルスが操作できないため、処理待ちがそのままパルス誤差として発生する。
【0005】
本発明は、上記問題に着目してなされたものであって、その目的とするところは、駆動パルスの精度を確保し、ひいてはステッピングモータの制御性を向上させることができるステッピングモータの制御装置を提供することである。
【0006】
【課題を解決するための手段】
請求項1に記載の発明では、マイクロコンピュータに内蔵した複数のタイマが用いられ、該タイマにセットした時刻、すなわち次回の割り込み処理を行うエッジタイミングによりステッピングモータへの相毎の駆動パルスが操作される。この場合、マイクロコンピュータのタイマ機能を用いて各相の駆動パルスが操作されるため、ソフトウエア処理の割り込み等で駆動パルスをその都度操作していた従来技術とは異なり、処理待ちに起因する制御誤差(パルス誤差)等の問題が解消される。また特に、マイクロコンピュータは、各相の駆動パルスの所定のエッジにて割り込み処理を行い、その際の各割り込み処理により、各々該当する駆動パルスの次回の割り込み処理を行う各相のエッジタイミングを前記複数のタイマに各別にセットする。なお、前記各相の駆動パルスのいずれか一つの相に対する駆動パルスのパルス時間を算出し、この算出したパルス時間を全ての相の駆動パルスのパルス時間として設定するとともに、該設定したパルス時間に基づいて前記各相のそれぞれについての前記エッジタイミングを算出する。これにより、各相の駆動パルスが複数の割り込み処理に振り分けられて操作されることとなるため、割り込み周期制御やベース周期制御にて一元的に駆動パルスを操作していた従来技術とは異なり、駆動パルスが個々に独立して操作されるようになる。従って、本発明によれば、駆動パルスの精度を確保することができ、ひいてはステッピングモータの制御性を向上させることができるようになる。
【0008】
さらに、各駆動パルスのエッジにて行う割り込み処理に際し、全ての割り込み処理の度にパルス時間が設定されるのではなく、何れか一つの割り込みでパルス時間が設定され、それ以外の割り込みではタイマの時刻セットのみが行われる。従って、駆動パルスの立ち下げ及び立ち上げにかかるマイクロコンピュータの演算負荷を軽減することができる。
【0009】
またこの場合、請求項2に記載したように、ステッピングモータが正逆何れの方向に駆動されるかに応じて各駆動パルスのうちで先行する駆動パルスを判定し、該先行する駆動パルスの割り込み処理において前記パルス時間を算出するようにした。すなわち、ステッピングモータが正転する場合と同ステッピングモータが逆転する場合とでは、先行する駆動パルスが変わり、これにより、パルス時間の設定をどの割り込み処理で行うかが変更される。この場合、ステッピングモータが何れの方向に回転するにしても、先行する駆動パルスのエッジタイミングで適正にパルス時間が設定できる。
【0010】
また、請求項3に記載の発明では、ステッピングモータの駆動開始時において、初回サイクルにおける各相のパルス時間を一括して設定すると共に、全ての駆動パルスについての次回のエッジタイミングを前記複数のタイマに各別にセットする。この場合、ステッピングモータの初回動作時、並びにそれ以降の動作時において、これらの各タイマ機能を用いてステッピングモータが継続的に駆動できるようになる。
【0011】
請求項4に記載の発明では、前記複数のタイマは、前記駆動パルスの立ち下がり時刻及び立ち上がり時刻をそれぞれ同時にセットできるものであるとした。これは、いわゆるダブルアクション方式のタイマを用いた構成を言い、これにより、駆動パルスの立ち下がり時刻及び立ち上がり時刻をそれぞれ個別にセットする場合に比べ、割り込みの回数を半減することができる。
【0012】
また、請求項5に記載の発明では、ステッピングモータの駆動開始時において、それ以降必要となる制御サイクル数を設定し、その後の前記割り込み処理では、前記設定した制御サイクル数に達したかどうかで次回以降のステッピングモータ駆動の形態を判定する。この場合、ステッピングモータの駆動開始時にそれ以降のモータ駆動のスケジューリングを適切に行うことができ、以後の割り込み処理では、初期のスケジューリングに沿って駆動パルスが操作される。該割り込み処理では、例えば、ステッピングモータ駆動の中止、継続等がその都度判断される。
【0013】
この場合、請求項6に記載したように、ステッピングモータの動作速度を多段に切り替える構成として、速度切り替えのためのサイクル数を予め設定し、その後の前記割り込み処理では、その速度切り替えのためのサイクル数に到達した時点でパルス時間を変更してモータ動作速度を切り替えると良い。これにより、所望の速度切り替えが実現できる。
【0014】
特にステッピングモータを目標位置まで駆動させる際に、スローアップ・スローダウン制御を実施してステッピングモータの動作速度を多段に切り替える構成(請求項7)では、そのスローアップ・スローダウン制御が好適に実施できるようになる。
【0015】
【発明の実施の形態】
以下、この発明を具体化した一実施の形態を図面に従って説明する。本実施の形態では、車載エンジンの電子スロットル制御装置として本発明を具体化しており、スロットルアクチュエータに組み込まれるステッピングモータを好適に制御する手法を提示する。
【0016】
図1は、本制御装置の概要を示している。スロットルアクチュエータ10は、エンジン吸気管に配設されたスロットル弁(図示略)を所望の開度に調整するものである。その駆動源たるステッピングモータ11は2相ハイブリッド型構造をなし、モータコイル12,13を有する。同アクチュエータ10では、エンジン制御ユニット(以下、エンジンECUという)20から入力される駆動パルスにより、スロットル弁の閉じ側又は開き側にステッピングモータ11の駆動が制御される。
【0017】
エンジンECU20は、CPU、メモリ等から成る周知のマイコン21を備える。マイコン21には、図示しないセンサ群よりエンジン回転数、アクセル開度、スロットル開度、変速機のシフト位置等に関する情報が随時取り込まれ、該マイコン21は、これらの情報に基づいてステッピングモータ11の駆動を制御する。この場合、マイコン21は、ステッピングモータ11を制御するためのA相及びB相のパルスを生成し出力する。詳しくは、マイコン21は、2つのタイマ22,23を内蔵しており、これらタイマ22,23にセットした時刻に達した時、出力ポートP1,P2がHレベル又はLレベルに操作される。これにより、A相及びB相のパルスが立ち上げ、或いは立ち下げられる。特に本実施の形態におけるタイマ22,23はそれぞれ、各パルスの立ち上がり時刻と立ち下がり時刻とを同時にセット可能な、いわゆるダブルアクション機能を備えている。
【0018】
A相及びB相のパルスは、モータ駆動回路24に入力される。このモータ駆動回路24では、A相及びB相の各パルスについて正相と逆相の4出力(A,/A,B,/B)を生成し、これをステッピングモータ11に対して出力する。
【0019】
ここで、エンジンECU20(マイコン21)が図2に示す順序でステッピングモータ11への駆動パルスを操作することによりモータコイル12,13が順次励磁され、ステッピングモータ11の回転が制御される。すなわち、図2に示すように、スロットル弁の閉じ方向にステッピングモータ11を駆動する場合には、ステッピングモータ11に対する各相の出力(A,/A,B,/B)を丸数字1→2→3→4の順に変化させる。また逆に、スロットル弁の開き方向にステッピングモータ11を駆動する場合には、ステッピングモータ11に対する各相の出力(A,/A,B,/B)を丸数字4→3→2→1の順に変化させる。
【0020】
またこの場合、スロットル閉じ側の制御に関するパルス波形を図3(a)に示し、スロットル開き側の制御に関するパルス波形を図3(b)に示す。なお、図中の丸数字は、前記図2と同意である。図3(a)では、前記図2で説明した通り、A相及びB相のパルスが丸数字1→2→3→4の順に変化している。ここで、丸数字1〜4で示す4ステップ分を1サイクルとすると、その同一サイクル内の各ステップの時間(ステップ時間TP)が均一に制御される。また、図3(b)では、A相及びB相のパルスが丸数字4→3→2→1の順に変化している。この場合、図3(a)では、A相パルスが先行する形を取るのに対し、図3(b)では、B相パルスが先行する形を取るようになっている。
【0021】
次に、ステッピングモータ11による電子スロットル制御の概要について説明する。先ずはじめに、ステッピングモータ11の駆動制御にかかる基本動作を図4を用いて説明する。なお、図4は、スロットル閉じ側の制御に関する動作を示す。
【0022】
図4のt1のタイミングでは、A相パルスの立ち上がりに同期して「第1の割り込み」が発生し、次回サイクル(t2〜t3)でのパルス時間TPが算出されると共に、そのパルス時間TPを用いてA相パルスの立ち下がり時刻と立ち上がり時刻とがタイマ22にセットされる。すなわち、A相パルスの立ち下がり時刻ta1として、現在時刻(t1の時刻)に、前回サイクルでのパルス時間TP(i−1)と次回サイクルでのパルス時間TPとを加算した時刻(現在時刻+TP(i−1)+TP)がセットされる。また、A相パルスの立ち上がり時刻ta2として、前記立ち下がり時刻ta1に、次回サイクルでのパルス時間TPの2倍の時間を加算した時刻(ta1+TP×2)がセットされる。そして、タイマ22への時刻セット後、セットした時刻に達すると、A相パルスがLレベル又はHレベルに操作される。
【0023】
また、t2のタイミングでは、B相パルスの立ち上がりに同期して「第2の割り込み」が発生し、前記「第1の割り込み」で算出したパルス時間TPを用いてB相パルスの立ち下がり時刻と立ち上がり時刻とがタイマ23にセットされる。
すなわち、B相パルスの立ち下がり時刻tb1として、現在時刻(t2の時刻)に、次回サイクルでのパルス時間TPの2倍の時間を加算した時刻(現在時刻+TP×2)がセットされる。また、B相パルスの立ち上がり時刻tb2として、前記立ち下がり時刻tb1に、次回サイクルでのパルス時間TPの2倍の時間を加算した時刻(tb1+TP×2)がセットされる。そして、タイマ23への時刻セット後、セットした時刻に達すると、B相パルスがLレベル又はHレベルに操作される。
【0024】
因みに、スロットル開き側の制御時には、前記図3(b)で説明したように、図4とは逆にB相パルスが先行する。従って、B相パルスの立ち上がりに同期して、次回サイクルでのパルス時間TPが算出されるようになっている。
【0025】
また、上記図4の基本動作は、パルスエッジの割り込みにて次回サイクルのパルスセットを行う処理であり、未だ初回のパルスエッジをセットしていない場合には、マイコン21によるベースルーチンにおいて図5に示す初回動作が実施される。
【0026】
つまり、図5のt11のタイミングでは、初回サイクル(t11〜t12)でのパルス時間TPが算出されると共に、そのパルス時間TPを用いてA相パルスの立ち下がり時刻と立ち上がり時刻とがタイマ22にセットされる。また同時に、同じくパルス時間TPを用いてB相パルスの立ち下がり時刻と立ち上がり時刻とがタイマ23にセットされる。詳しくは、A相パルスの立ち下がり時刻ta11として、現在時刻(t11の時刻)にパルス時間TPを加算した時刻(現在時刻+TP)がセットされる。また、B相パルスの立ち下がり時刻tb11として、前記時刻ta11にパルス時間TPを加算した時刻(ta11+TP)がセットされる。A相パルスの立ち上がり時刻ta12として、前記時刻tb11にパルス時間TPを加算した時刻(tb11+TP)がセットされる。B相パルスの立ち上がり時刻tb12として、前記時刻ta12にパルス時間TPを加算した時刻(ta12+TP)がセットされる。
【0027】
本実施の形態の電子スロットル制御では、いわゆるスローアップ・スローダウン制御を実施することとしており、その概要を図6を用いて説明する。図6では、t21のタイミングで目標スロットル開度が変化し、それに伴いスロットル弁を図の「現在位置」から「目標位置」へと変化させる場合を想定している。この場合、ステッピングモータ11の駆動開始当初(制御の前半部分)においては動作速度を低速→中速→高速の順で上昇させるのに対し、目標位置への収束時(同制御の後半部分)においては動作速度を高速→中速→低速の順で下降させる。
【0028】
詳しくは、図6のt21のタイミングでは、目標位置に達するまでに必要なステッピングモータ11の制御サイクル数を決定すると共に、動作速度を低速、中速及び高速の各制御域で切り替えるためのポイントK1,K2,K3,K4を決定する。そして、
・K1までは、ステッピングモータ11を低速で駆動し(t21〜t22)、
・K2までは、ステッピングモータ11を中速で駆動し(t22〜t23)、
・K3までは、ステッピングモータ11を高速で駆動し(t23〜t24)、
・K4までは、ステッピングモータ11を中速で駆動し(t24〜t25)、
・最後にステッピングモータ11を低速で駆動する(t25〜t26)。
【0029】
次いで、マイコン21により実施されるスロットル制御について図7〜図9のフローチャートを参照しつつ説明する。先ずはじめに、ベースルーチンとして実施されるスロットル制御部分について、図7を用いて説明する。
【0030】
図7において、先ずステップ101では、目標スロットル開度を設定する。この目標スロットル開度は、周知の通りエンジン回転数、アクセル開度、変速機のシフト位置等をパラメータとして設定される。
【0031】
続くステップ102では、目標スロットル開度に対するフィードバック判定を行う。つまり、スロットル開度のセンサ検出値(実スロットル開度)と目標スロットル開度との偏差を算出すると共に、その偏差に基づいてステッピングモータ11の現在位置からの制御サイクル数を決定する。そして、この制御サイクル数をサイクルカウンタCaにセットする。またこのとき、ステッピングモータ11をスロットル閉じ側、又はスロットル開き側の何れに制御するかを判定する。そして、スロットル閉じ側への制御であれば、閉じ側制御フラグXCLに1をセットし、スロットル開き側への制御であれば、同フラグXCLを0にリセットしておく。
【0032】
その後、ステップ103では、目標スロットル開度が変化し、それによりステッピングモータ11の駆動を要するか否かを判別する。また続くステップ104では、今回のステッピングモータ駆動が目標値変化後の初回であるか否かを判別する。そして、ステップ103,104が共にYESであることを条件にステップ105に進む。
【0033】
ステップ105では、スローアップ・スローダウン制御のための制御パターンを設定する。すなわち、ステッピングモータ11の現在位置(現スロットル開度)からの制御サイクル数に応じて低速、中速及び高速の制御域を適宜設定すると共に、各制御域を切り替えるためのポイントK1〜K4(前記図6参照)を設定する。なおこの場合、制御サイクル数がセットされる前記サイクルカウンタCaは、ステッピングモータ11の駆動に伴い順次カウントダウンされるカウンタであり、K1〜K4は、K1>K2>K3>K4の関係で設定される。
【0034】
その後、ステップ106では、A相パルスの立ち下がり時刻及び立ち上がり時刻をタイマ22にセットすると共に、B相パルスの立ち下がり時刻及び立ち上がり時刻をタイマ23にセットする。このとき、低速域でステッピングモータ11の駆動が開始されるよう、低速駆動用のパルス時間が用いられて初回サイクルでの各時刻がセットされる。
【0035】
また、図8は、A相パルスの割り込み処理を示すフローチャート、図9は、B相パルスの割り込み処理を示すフローチャートである。図8の処理は、A相パルスの立ち上がりエッジ毎にマイコン21により起動され、図9の処理は、B相パルスの立ち上がりエッジ毎にマイコン21により起動される。
【0036】
さて、図8のステップ201では、前記図7のベースルーチン(ステップ102)で操作した閉じ側制御フラグXCLに基づき、今回ステッピングモータ11がスロットル閉じ側に駆動されるか否かを判別する。この場合、XCL=1、すなわちステッピングモータ11がスロットル閉じ側に制御されるのであれば、A相パルスがB相パルスよりも先行すると判断されるから、本図8の処理内にてパルス時間TPの設定を行う。すなわち、ステップ201がYESの場合には、ステップ202に進み、後述するパルス時間TPの設定処理を含む一連の処理を実施する。また、ステップ201がNOの場合には、本図8の処理ではパルス時間TPの設定を行う必要がないため、ステップ211に進み、A相パルスの立ち下がり時刻及び立ち上がり時刻をタイマ22にセットする処理だけを実施する。
【0037】
以下、ステップ202以降の処理を詳述する。ステップ202では、サイクルカウンタCaのカウントダウンを実施する。なおこの場合、カウントダウン後のCaの値は、今回のスローアップ・スローダウン制御における残りサイクル数を表す。その後、ステップ203以降の処理では、サイクルカウンタCaと前記図7のベースルーチン(ステップ105)で設定したK1〜K4とを逐次比較し、それにより、次回サイクルのパルス時間TPとして、低速パルス時間TPL、中速パルス時間TPM及び高速パルス時間TPHの何れかを設定する。
【0038】
つまり、
・ステップ203では、Ca≦K4であるか否かを判別し、
・ステップ204では、Ca>K1であるか否かを判別し、
・ステップ205では、Ca≦K3であるか否かを判別し、
・ステップ206では、Ca>K2であるか否かを判別する。
そして、ステップ203又はステップ204がYESの場合(Ca≦K4又はCa>K1の場合)ステップ207に進み、次回サイクルのパルス時間TPとして低速パルス時間TPLを設定する。また、ステップ205又はステップ206がYESの場合(Ca≦K3又はCa>K2の場合)ステップ208に進み、次回サイクルのパルス時間TPとして中速パルス時間TPMを設定する。更に、ステップ203〜206が何れもNOの場合ステップ209に進み、次回サイクルのパルス時間TPとして高速パルス時間TPHを設定する。
【0039】
最後に、ステップ210では、前記設定したパルス時間(TPL、TPM、TPHの何れか)を用い、A相パルスの立ち下がり時刻及び立ち上がり時刻を算出すると共に、その時刻をタイマ22にセットする。
【0040】
一方、図9は、基本的には前記図8と同じ処理であり、ステップ番号を200番台から300番台に変更している。ここでは概略のみを説明する。図9において、スロットル閉じ側の制御を行う場合(ステップ301がYESの場合)にはステップ311に進み、タイマ23への時刻セットのみを行う。すなわちステップ301がYESの場合には、前記図8のステップ202〜209でパルス時間TPが設定されており、本図9ではこのTP設定の処理を行わなくてよい。
【0041】
また、スロットル開き側の制御を行う場合(ステップ301がNOの場合)にはステップ302に進み、前記ステップ202〜209と同様に、ステップ302〜309で次回サイクルでのパルス時間TPを設定する。またその後、タイマ23への時刻セットを行う(ステップ310)。
【0042】
次いで、前記図7〜図9により操作されるA相パルス及びB相パルスの挙動を図10のタイムチャートを用いて説明する。なお図10は、スロットル閉じ側制御を示している。
【0043】
先ず最初に、アクセルペダルが踏み込み操作される等して目標スロットル開度が変化するt31のタイミングでは、前記図7のベースルーチンにより、初回サイクルのパルス時間が設定されると共に、A相及びB相パルスのそれぞれの立ち下がり時刻及び立ち上がり時刻(エッジタイミング)がタイマ22,23に同時にセットされる。
【0044】
その後、t32のタイミングでは、前記図8のA相割り込み処理が起動され、同処理にて次回サイクルのパルス時間が一括して設定されると共に、A相パルスの立ち下がり時刻及び立ち上がり時刻(エッジタイミング)がタイマ22にセットされる。更にその後、t33のタイミングでは、前記図9のB相割り込み処理が起動され、同処理にてB相パルスの立ち下がり時刻及び立ち上がり時刻(エッジタイミング)がタイマ23にセットされる。なおt33のタイミングでは、パルス時間の設定の処理は行われない。
【0045】
以上詳述した本実施の形態によれば、以下に示す効果が得られる。
(イ)マイコン21のタイマ機能を用い、タイマ22,23にセットした時刻によりステッピングモータ11への相毎の駆動パルスを操作するので、ソフトウエア処理の割り込み等で駆動パルスをその都度操作していた従来技術とは異なり、処理待ちに起因する制御誤差(パルス誤差)等の問題が解消される。また特に、駆動パルス毎の割り込み処理により各相の駆動パルスを振り分けて操作するので、割り込み周期制御やベース周期制御にて一元的に駆動パルスを操作していた従来技術とは異なり、駆動パルスが個々に独立して操作される。従って、駆動パルスの精度を確保することができ、ひいてはステッピングモータ11の制御性を向上させることができるようになる。
【0046】
(ロ)各駆動パルスのエッジ毎に発生する割り込み(前記図8,図9の割り込み処理)に際し、全ての割り込みで毎回パルス時間TPが設定されるのではなく、何れか一つの割り込みでパルス時間TPが設定され、それ以外の割り込みではタイマ22,23の時刻セットのみが行われる。従って、駆動パルスの立ち下げ及び立ち上げにかかるマイコン21の演算負荷を軽減することができる。
【0047】
(ハ)先行する駆動パルスの割り込み処理でパルス時間設定の処理を受け持たせるよう、ステッピングモータ11の駆動方向に応じて処理を切り替えた。この場合、ステッピングモータ11が何れの方向に回転するにしても、先行する駆動パルスのエッジタイミングで適正にパルス時間TPが設定できる。
【0048】
(ニ)ステッピングモータ11の駆動開始時はベースルーチンで初回サイクルのタイマ時刻セットを行い、その後、相毎の割り込み処理でタイマ時刻セットを行うようにした。これにより、ステッピングモータ11の初回動作時並びにそれ以降において、タイマ機能を用いてステッピングモータ11が継続的に駆動できるようになる。
【0049】
(ホ)ダブルアクション方式のタイマ22,23を用いたので、駆動パルスの立ち下がり時刻及び立ち上がり時刻をそれぞれ個別にセットする場合に比べ、割り込みの回数を半減することができる。
【0050】
(ヘ)ベースルーチンでモータ動作速度切り替えのためのサイクル数を予め設定し、その後の割り込み処理では、その動作速度切り替えのためのサイクル数に到達した時点でパルス時間TPを変更してモータ動作速度を切り替える。これにより、所望の速度切り替えが実現でき、スロットルアクチュエータ10のスローアップ・スローダウン制御を好適に実施することができる。従って、車載エンジンの電子スロットル制御が精度良く実施できるようになる。
【0051】
なお本発明は、上記以外に次の形態にて具体化できる。
上記実施の形態では、ダブルアクション方式のタイマ22,23を用い、A相パルス及びB相パルスを操作したが、これに代えて、タイマ22,23としてシングルアクション方式を採用する。このシングルアクション方式のタイマでは、立ち下がり又は立ち上がりの何れかの時刻のみがセットされる。図11は、シングルアクション方式のタイマ22,23を用いた場合のA相パルス及びB相パルスの挙動を示す。なおこれについても、スロットル閉じ側制御の事例を示す。
【0052】
図11において、初回動作時のt41のタイミングでは、ベースルーチンにより、初回サイクルのパルス時間が設定されると共に、A相パルス及びB相パルスのそれぞれの立ち下がり時刻がタイマ22,23に同時にセットされる。またそれ以降、A相パルスの立ち下がり及び立ち上がりの両エッジにてA相割り込み処理がそれぞれ起動される。また、B相パルスについても同様に、当該パルスの立ち下がり及び立ち上がりの両エッジにてB相割り込み処理がそれぞれ起動される。
【0053】
t42以降について詳しくは、t42,t43の各タイミングでは、次回のA相パルス及びB相パルスの立ち上がり時刻がタイマ22,23にそれぞれセットされる。なお初回直後であれば、これらセット時刻は初回サイクルでのパルス時間を用いた時刻である。また、t44,t45の各タイミングでは、次回のA相パルス及びB相パルスの立ち下がり時刻がタイマ22,23にそれぞれセットされる。但し、t44のタイミングでは、次回サイクルのパルス時間が一括して設定される。以降同等に、A相パルスの立ち上がりエッジの割り込みでのみ、パルス時間TPが設定され、それ以外の割り込みではタイマ22,23の時刻セットのみが行われる。
【0054】
上記実施の形態では、スロットルアクチュエータのスローアップ・スローダウン制御においてステッピングモータ11の動作速度を多段に切り替える構成としたが、この構成を変更する。例えば、A相パルス又はB相パルスの何れかの割り込み処理(先行するパルスの割り込み処理)において、ステッピングモータ11の動作速度を前半部分は増加方向に徐変させ、後半部分では減少方向に徐変させる。つまり、上記割り込み処理においてパルス時間を一定時間ずつ増加又は減少させる。この場合、ベースルーチンでは、制御サイクル数(全サイクル数)に基づいて、動作速度が増加から減少へ転じる際のポイント(例えば、全サイクル数の1/2)を予め指定しておくと良い。
【0055】
また、ステッピングモータ11の動作速度を変更しない構成としても良い。ステッピングモータ11の動作速度を変更せずとも、例えば、当該モータ11の駆動開始時においてそれ以降必要となる制御サイクル数だけを設定し、その後の割り込み処理では前記設定した制御サイクル数に達したかどうかでステッピングモータ駆動の中止、継続等をその都度判断する。
【0056】
本発明の具体例として、上記の通りスロットルアクチュエータに適用する他、排気バルブやISC弁等を駆動するためのアクチュエータに適用しても良い。また、車両用ステッピングモータ以外への具体化も可能である。
【0057】
ステッピングモータの励磁方式としては、上述した2相励磁方式の他、1相励磁方式、1−2相励磁方式などが適用できる。また、2相式ステッピングモータに代えて、3相式、4相式などのステッピングモータでも良い。
【図面の簡単な説明】
【図1】発明の実施の形態における電子スロットル制御装置の概要を示す構成図。
【図2】各相の励磁順序を示す図。
【図3】図2に対応するパルス波形を示す図。
【図4】ステッピングモータ制御の基本動作を示すタイムチャート。
【図5】ステッピングモータ制御の初回動作を示すタイムチャート。
【図6】スローアップ・スローダウン制御を説明するための図。
【図7】ベースルーチンを示すフローチャート。
【図8】A相割り込み処理を示すフローチャート。
【図9】B相割り込み処理を示すフローチャート。
【図10】各相のパルスの挙動を示すタイムチャート。
【図11】シングルアクション方式のタイマを用いた場合において、各相のパルスの挙動を示すタイムチャート。
【符号の説明】
11…ステッピングモータ、20…エンジンECU、21…マイコン、22,23…タイマ。
Claims (7)
- ステッピングモータを駆動させるための各相の駆動パルスを発生させ、それら駆動パルスの所定のエッジにて割り込み処理を行うとともに、内蔵する複数のタイマに次回の割り込み処理を行うエッジタイミングをそれぞれセットするマイクロコンピュータと、前記駆動パルスについて正相および逆相の出力を生成するとともに、これら正相および逆相の出力を前記ステッピングモータに対して出力するモータ駆動回路とを備えるステッピングモータの制御装置であって、
前記マイクロコンピュータは、前記各相の駆動パルスのいずれか一つの相に対する駆動パルスのエッジにて行う割り込み処理において、当該駆動パルスのパルス時間を算出してこの算出したパルス時間を全ての相の駆動パルスのパルス時間として設定するとともに、該設定したパルス時間に基づいて前記各相のそれぞれについての次回の割り込み処理を行うエッジタイミングを算出し、これら算出した各相のエッジタイミングを前記複数のタイマに各別にセットすることを特徴とするステッピングモータの制御装置。 - ステッピングモータが正逆何れの方向に駆動されるかに応じて各駆動パルスのうちで先行する駆動パルスを判定し、該先行する駆動パルスの割り込み処理において前記パルス時間を算出するようにした請求項1に記載のステッピングモータの制御装置。
- ステッピングモータの駆動開始時において、初回サイクルにおける前記各相の駆動パルスのパルス時間を一括して設定すると共に、全ての駆動パルスについての次回のエッジタイミングを前記複数のタイマに各別にセットする請求項1または2に記載のステッピングモータの制御装置。
- 前記複数のタイマは、前記駆動パルスの立ち下がり時刻及び立ち上がり時刻をそれぞれ同時にセットできるものである請求項1〜3の何れか一項に記載のステッピングモータの制御装置。
- ステッピングモータの駆動開始時において、それ以降必要となる制御サイクル数を設定し、その後の前記割り込み処理では、前記設定した制御サイクル数に達したかどうかで次回以降のステッピングモータ駆動の形態を判定する請求項1〜4の何れか一項に記載のステッピングモータの制御装置。
- 請求項5に記載のステッピングモータの制御装置において、ステッピングモータの動作速度を多段に切り替えるものであり、速度切り替えのためのサイクル数を制御開始当初に設定し、その後の前記割り込み処理では、その速度切り替えのためのサイクル数に到達した時点でパルス時間を変更してモータ動作速度を切り替えるステッピングモータの制御装置。
- 請求項6に記載のステッピングモータの制御装置において、ステッピングモータを目標位置まで駆動させる際、スローアップ・スローダウン制御を実施してステッピングモータの動作速度を多段に切り替えるステッピングモータの制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000380381A JP4560956B2 (ja) | 2000-12-14 | 2000-12-14 | ステッピングモータの制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000380381A JP4560956B2 (ja) | 2000-12-14 | 2000-12-14 | ステッピングモータの制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002186289A JP2002186289A (ja) | 2002-06-28 |
JP4560956B2 true JP4560956B2 (ja) | 2010-10-13 |
Family
ID=18848575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000380381A Expired - Fee Related JP4560956B2 (ja) | 2000-12-14 | 2000-12-14 | ステッピングモータの制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4560956B2 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01214299A (ja) * | 1988-02-22 | 1989-08-28 | Fujitsu Ltd | ステッピングモータの制御装置 |
JPH07222494A (ja) * | 1994-01-28 | 1995-08-18 | Ricoh Co Ltd | ステッピングモータ駆動装置 |
JPH11187696A (ja) * | 1997-12-24 | 1999-07-09 | Canon Inc | モータの制御方法及び装置 |
-
2000
- 2000-12-14 JP JP2000380381A patent/JP4560956B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01214299A (ja) * | 1988-02-22 | 1989-08-28 | Fujitsu Ltd | ステッピングモータの制御装置 |
JPH07222494A (ja) * | 1994-01-28 | 1995-08-18 | Ricoh Co Ltd | ステッピングモータ駆動装置 |
JPH11187696A (ja) * | 1997-12-24 | 1999-07-09 | Canon Inc | モータの制御方法及び装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2002186289A (ja) | 2002-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7640907B2 (en) | Apparatus and method for controlling internal combustion engine | |
JPS6217112B2 (ja) | ||
JP2009144649A (ja) | 燃料噴射制御装置 | |
US7151352B2 (en) | Motor controller | |
JP2010200432A (ja) | 可変動弁機構の制御装置 | |
JP4560956B2 (ja) | ステッピングモータの制御装置 | |
JPH01186438A (ja) | 自動変速機付車両の制御装置 | |
JP4888160B2 (ja) | 内燃機関の可変動弁装置 | |
JP2001159365A (ja) | エンジン制御装置 | |
JP2007043853A (ja) | モータ制御装置 | |
JP4852992B2 (ja) | 内燃機関の制御装置 | |
JP3020713B2 (ja) | ステッピングモータの駆動方法とその装置 | |
JP2007218109A (ja) | 内燃機関の状態量制御装置 | |
JPH09269803A (ja) | デューティ駆動制御装置 | |
JP4645339B2 (ja) | モータ制御装置 | |
JP2003065139A (ja) | エンジン制御装置 | |
JP7247900B2 (ja) | 電動可変動弁機構の制御装置 | |
JPH0295763A (ja) | 排気ガス再循環制御装置 | |
JP3918219B2 (ja) | 内燃機関用バルブタイミング制御装置 | |
JP2007051602A (ja) | 内燃機関の可変動弁装置 | |
JPS6349119Y2 (ja) | ||
JPH06225592A (ja) | ステップモータの制御装置 | |
JP2004044419A (ja) | 電磁駆動式バルブの制御装置 | |
JP4198828B2 (ja) | 内燃エンジンの制御装置 | |
JP2007162646A (ja) | モータ制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100119 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100317 |
|
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: 20100706 |
|
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: 20100719 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130806 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4560956 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130806 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |