(57)【特許請求の範囲】
【請求項１】
１つ又は複数のモータを駆動するモータ駆動装置へ前記モータを制御するための制御データを伝送するモータ制御装置において、
前記制御データの基となる要素データを前記モータの駆動の１周期分ごとに生成する制御手段と、
前記制御手段によって要素データが生成されるごとに格納する記憶手段と、
前記記憶手段に格納された要素データに基づいて前記制御データを生成するハードウェア回路とを有し、
前記ハードウェア回路は、
１周期分の前記要素データが前記制御手段によって生成され前記記憶手段に格納されるごとに、前記制御データの生成タイミングを生成するタイミング生成手段と、
前記生成タイミングに同期して前記要素データに基づいて制御データを生成し前記モータ駆動装置へ伝送する制御データ生成伝送手段と、
前記１周期分の制御データの生成終了時に次周期の前記要素データの前記記憶手段への格納許可を前記制御手段に出力する要素データ格納許可手段とを備える
ことを特徴とするモータ制御装置。
【請求項２】
前記タイミング生成手段は、前記モータの駆動開始が前記制御手段から指示された場合に、前記生成タイミングの生成を開始することを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記要素データには前記生成タイミングを規定するタイマ設定値が含まれ、
前記タイミング生成手段は、前記タイマ設定値に基づいてタイマ動作するタイマ回路と、前記タイマ回路がタイムアップするごとに前記制御データ生成伝送手段に前記要素データを出力するデータ出力手段とを備え、
前記制御データ生成伝送手段は、前記データ出力手段から要素データが入力されるごとに、この要素データに基づいて前記制御データを生成し前記モータ駆動装置へ伝送する
ことを特徴とする請求項１または２に記載のモータ制御装置。
【請求項４】
前記ハードウェア回路は、
前記記憶手段に要素データが格納されるごとに当該要素データが書き込まれる第１バッファメモリと、
前記第１バッファメモリに格納された要素データが転送されて書き込まれ、前記タイミング生成手段によって前記タイミング生成のために参照される第２バッファメモリと、を備え、
前記要素データ格納許可手段は、
前記第１バッファメモリの要素データが前記第２バッファメモリに転送されるごとに次周期の前記要素データの前記記憶手段への格納許可を前記制御手段に出力する
ことを特徴とする請求項１乃至３のいずれかに記載のモータ制御装置。
【請求項５】
前記ハードウェア回路は、
前記要素データに基づく制御データの生成が終了する場合に、当該終了を前記制御手段に通知する終了通知手段を
更に具備することを特徴とする請求項１乃至４のいずれかに記載のモータ制御装置。
【請求項６】
前記モータはステップモータであり、前記制御データの基となるデータは、前記ステップモータに印加する電圧の相パターンを規定するデータと、前記相パターンの切り替えタイミングを規定するデータとを含み、前記相パターンの切り替えタイミングを規定するデータに基づいて前記タイミング生成手段が前記生成タイミングを生成することを特徴とする請求項１乃至５のいずれかに記載のモータ制御装置。
【請求項７】
１つ又は複数のモータと、請求項１乃至６のいずれかに記載のモータ制御装置とを備えたことを特徴とする電子機器。
【請求項８】
記録用紙に印字する記録ヘッドと、前記記録用紙を搬送するための搬送モータと、前記モータを駆動するモータ駆動装置と、前記モータ駆動装置へ前記搬送モータを制御するための制御データを伝送するモータ制御装置とを備えたプリンタ装置において、
前記モータ制御装置は、
前記制御データの基となる要素データを前記搬送モータの駆動の１周期分ごとに生成する制御手段と、
前記制御手段によって要素データが生成されるごとに格納する記憶手段と、
前記記憶手段に格納された要素データに基づいて前記制御データを生成するハードウェア回路とを有し、
前記ハードウェア回路は、
１周期分の前記要素データが前記制御手段によって生成され前記記憶手段に格納されるごとに、前記制御データの生成タイミングを生成するタイミング生成手段と、
前記生成タイミングに同期して前記要素データに基づいて制御データを生成し前記モータ駆動装置へ伝送する制御データ生成伝送手段と、
前記１周期分の制御データの生成終了時に次周期の前記要素データの前記記憶手段への格納許可を前記制御手段に出力する要素データ格納許可手段とを備える
ことを特徴とするプリンタ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ駆動装置へ制御データを伝送するモータ制御装置、電子機器およびプリンタ装置に関する。
【背景技術】
【０００２】
従来、例えばプリンタ装置などにおけるモータ制御は、ＣＰＵからモータのドライブ素子に対して制御データを伝送することにより行われる。例えばステップモータを制御する場合、制御データには、モータへの印加電圧の相パターンを示す相パターンデータや電流値を示す電流値データなどが含まれており、ＣＰＵは、内蔵タイマを用いて相パターンの切り替えタイミングをカウントし、この相パターンの切り替えタイミングに合わせて相パターンデータを切り替えて制御データを生成していた（例えば、特許文献１参照）。
【特許文献１】特開２００３−３３３８８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記のようにＣＰＵが相パターンの設定タイミングをカウントする構成であるため、例えばＣＰＵに対して多数の割り込み処理が発生する等してＣＰＵの処理に大きな負荷がかかった場合には、相パターンの切り替えタイミング、すなわち、制御データの生成タイミングにずれが生じるなどして、モータ駆動が不安定になる、といった問題がある。特に、この問題は低性能なＣＰＵを用いた場合に顕著となり、また、高性能なＣＰＵを用いることとすると、装置のコストが高くなるといった問題がある。
本発明は、上述した事情に鑑みてなされたものであり、モータを駆動するモータ駆動装置へ伝送すべき制御データの生成をＣＰＵなどの制御手段に負荷をかけることなく行うことが可能なモータ制御装置、電子機器およびプリンタ装置を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するために、本発明は、１つ又は複数のモータを駆動するモータ駆動装置へ前記モータを制御するための制御データを伝送するモータ制御装置において、前記制御データの基となる要素データを前記モータの駆動の１周期分ごとに生成する制御手段と、前記制御手段によって要素データが生成されるごとに格納する記憶手段と、前記記憶手段に格納された要素データに基づいて前記制御データを生成するハードウェア回路とを有し、前記ハードウェア回路は、１周期分の前記要素データが前記制御手段によって生成され前記記憶手段に格納されるごとに、前記制御データの生成タイミングを生成するタイミング生成手段と、前記生成タイミングに同期して前記要素データに基づいて制御データを生成し前記モータ駆動装置へ伝送する制御データ生成伝送手段と、前記１周期分の制御データの生成終了時に次周期の前記要素データの前記記憶手段への格納許可を前記制御手段に出力する要素データ格納許可手段とを備えることを特徴とする。
【０００５】
本発明によれば、モータを駆動するモータ駆動装置へ伝送すべき制御データの生成タイミングをハードウェア回路が生成するため、ＣＰＵなどの制御手段に負荷をかけることなく行うことが可能となり、また、制御手段の処理状態や性能などに依存せずに、制御データの生成タイミングを正確に制御することが可能となる。
【０００６】
ここで、上記発明において、前記タイミング生成手段は、前記モータの駆動開始が前記制御手段から指示された場合に、前記生成タイミングの生成を開始する構成が好ましい。
この好ましい構成によれば、モータの駆動開始指示をトリガーとして、ハードウェア回路によって、生成タイミングの生成および当該生成タイミングに同期した制御データの生成・伝送が行われるため、駆動開始を指示した後は制御手段が他の処理に処理能力を割くことができる。
【０００７】
また、上記発明において、前記要素データには前記生成タイミングを規定するタイマ設定値が含まれ、前記タイミング生成手段は、前記タイマ設定値に基づいてタイマ動作するタイマ回路と、前記タイマ回路がタイムアップするごとに前記制御データ生成伝送手段に前記要素データを出力するデータ出力手段とを備え、前記制御データ生成伝送手段は、前記データ出力手段から要素データが入力されるごとに、この要素データに基づいて前記制御データを生成し前記モータ駆動装置へ伝送することとしても良い。
【０００８】
また、上記発明において、前記ハードウェア回路は、前記記憶手段に要素データが格納されるごとに当該要素データが書き込まれる第１バッファメモリと、前記第１バッファメモリに格納された要素データが転送されて書き込まれ、前記タイミング生成手段によって前記タイミング生成のために参照される第２バッファメモリと、を備え、前記要素データ格納許可手段は、前記第１バッファメモリの要素データが前記第２バッファメモリに転送されるごとに次周期の前記要素データの前記記憶手段への格納許可を前記制御手段に出力する構成が好ましい。
この好ましい構成によれば、第２バッファメモリには現在の要素データが書き込まれると共に、第１バッファメモリには次の要素データを書き込み可能になるため、制御手段は、ハードウェア回路によって現在の要素データに基づく制御データの生成・伝送が行われている間に次の要素データを生成すれば良く、制御手段の性能が低い場合であっても、制御手段による要素データの生成が間に合わなくなるといった事態を防止することができる。
【０００９】
また、上記発明において、前記ハードウェア回路は、前記要素データに基づく制御データの生成が終了する場合に、当該終了を前記制御手段に通知する終了通知手段を更に具備する構成が望ましい。
この望ましい構成によれば、要素データに基づく制御データの生成終了が制御手段に通知されるため、この通知に基づいて制御手段は次の動作制御を速やか、かつ、確実に実行することができる。
【００１０】
また、上記発明において、前記モータはステップモータであり、前記制御データの基となるデータは、前記ステップモータに印加する電圧の相パターンを規定するデータと、前記相パターンの切り替えタイミングを規定するデータとを含み、前記相パターンの切り替えタイミングを規定するデータに基づいて前記タイミング生成手段が前記生成タイミングを生成する構成であっても良い。
【００１１】
また、本発明は、上記モータ制御装置を１つ又は複数のモータを有する電子機器に適用することが可能である。
さらに、本発明は、記録用紙に印字する記録ヘッドと、前記記録用紙を搬送するための搬送モータと、前記モータを駆動するモータ駆動装置と、前記モータ駆動装置へ前記搬送モータを制御するための制御データを伝送するモータ制御装置とを備えたプリンタ装置において、前記モータ制御装置は、前記制御データの基となる要素データを前記搬送モータの駆動の１周期分ごとに生成する制御手段と、前記制御手段によって要素データが生成されるごとに格納する記憶手段と、前記記憶手段に格納された要素データに基づいて前記制御データを生成するハードウェア回路とを有し、前記ハードウェア回路は、１周期分の前記要素データが前記制御手段によって生成され前記記憶手段に格納されるごとに、前記制御データの生成タイミングを生成するタイミング生成手段と、前記生成タイミングに同期して前記要素データに基づいて制御データを生成し前記モータ駆動装置へ伝送する制御データ生成伝送手段と、前記１周期分の制御データの生成終了時に次周期の前記要素データの前記記憶手段への格納許可を前記制御手段に出力する要素データ格納許可手段とを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、モータを駆動するモータ駆動装置へ伝送すべき制御データの生成タイミングをハードウェア回路が生成するため、ＣＰＵなどの制御手段に負荷をかけることなく行うことが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明の実施の形態について説明する。
図１は本発明の実施の形態に係るモータ制御システム１を示す回路構成図である。この図に示すように、モータ制御システム１は、１または複数のステップモータ１２（図示例では２つ）を駆動制御するものであり、ステップモータ１２を制御するための制御データを生成して出力するモータ制御装置１０と、制御データに基づいてステップモータ１２を駆動するモータドライブ素子１１とを有している。
【００１４】
ここで、ステップモータ１２の制御について説明すると、図２に示すように、ステップモータ１２は、例えば、
【数１】
0004715397.tif 000002
の４つの相（ステータ）を有しており、これらの相が順次励磁されて回転駆動される。各相の励磁シーケンス（励磁手順）としては、例えば各相を１つずつ励磁する１相励磁方式や、２相ずつ励磁する２相励磁方式、１相励磁と２相励磁とを交互に繰り返す１−２相励磁方式などがあり、図３には、２相励磁方式における各相への印加電圧波形を示す。この図に示すように、２相励磁方式にあっては、Ｈｉｇｈレベルの電圧が印加される２つの相が所定時間間隔（以下、「ステップ」と言う）ごとに順次切り替えられ、各ステップにおいては、ステップモータ１２の各相にＮｏ．１〜Ｎｏ．４の４つのパターンのいずれかのパターンで電圧が印加される。この電圧印加のパターン（以下、「相パターン」と言う）はステップが切り替わるごとにＮｏ．１〜Ｎｏ．４まで循環的に切り替えられ、結果として、同一の相パターンが出現する周期が４ステップとなる。そして、相パターンの切り替えごとに、ステップモータ１２が有する図示せぬロータが所定回転量［ｄｅｇ］だけ回転し、これにより、ステップモータ１２が所定の方向に回転駆動される。このとき、相パターンの切り替え間隔、すなわち、ステップ長が短いほどステップモータ１２が高速回転し、また、各相に流す電流（相電流）が大きいほど回転トルクが大きくなる。なお、図３には２相励磁方式を示したが、１−２相励磁方式にあっては相パターンの数が８つとなり、８ステップで１周期となる。
【００１５】
上述した相パターンや相パターンの切替タイミング、相電流を含む制御データは上記モータ制御装置１０により生成されモータドライブ素子１１に出力される。より具体的には、前掲図１に示すように、モータドライブ素子１１は、同期クロックライン１３と、第１および第２選択線１４Ａおよび１４Ｂと、シリアル伝送路１５とを介してモータ制御装置１０に接続されており、上記相パターンの切替タイミングごとに、相パターンに基づく制御データがシリアル伝送路１５を介してモータドライブ素子１１にシリアル伝送される。
【００１６】
ここで、本実施の形態では、モータドライブ素子１１が２つのステップモータ１２Ａおよび１２Ｂを駆動するように構成されており、シリアル伝送路１５で伝送される制御データがステップモータ１２Ａ、１２Ｂの何れの制御データであるかが、２本の第１および第２選択線１４Ａ、１４Ｂにより指定されるようになっている。すなわち、モータドライブ素子１１は、第１選択線１４Ａがアクティブレベルであればシリアル伝送路１５で伝送されてくる制御データに基づき一方のステップモータ１２Ａを駆動し、また、第２選択線１４Ｂがアクティブレベルであればシリアル伝送路１５で伝送されてくる制御データに基づきステップモータ１２Ｂを駆動する。
【００１７】
モータ制御装置１０の構成について詳述すると、モータ制御装置１０は、前掲図１に示すように、制御手段としてのＣＰＵ２０と、メモリ２１と、ハードウェア回路とし構成されたＡＳＩＣ２２とを有し、ＡＳＩＣ２２がＣＰＵ２０のアドレスバス２３およびデータバス２４に接続されると共に、ＣＰＵ２０に対する割り込み要求ライン２５に接続されて構成されている。
【００１８】
メモリ２１はＣＰＵ２０によって実行される制御プログラムや各種データを記憶するものであり、さらにこのメモリ２１にはデータテーブル２１Ａが設けられ、このデータテーブル２１Ａには、上述した制御データの基となる要素データが格納される。この要素データには、相パターンテーブルデータ４０と、タイマテーブルデータ４１とが含まれている。相パターンテーブル４０は、図４に示すように、各相ごとに印加電圧が「Ｈｉｇｈ」の場合を値「１」、「Ｌｏｗ」の場合を値「０」として１周期分の相パターンを示すテーブルデータであり、また、タイマテーブルデータ４１は、図５に示すように、各相パターンの切替タイミングを規定するタイマ設定値を１周期の相パターン分だけ示すテーブルデータである。また、相パターンテーブルデータ４０には、相電流値を示すデータや、モータドライブ素子１１の各種設定を行なうための図示せぬ設定データ等が相パターンと共に含まれている。かかる要素データは、ステップモータ１２の運転パターン等（例えば、モータ回転速度や加減速度、トルク等）にしたがってＣＰＵ２０により作成されて、データテーブル２１Ａに格納される。
【００１９】
ＡＳＩＣ２２は、ステップモータ１２の駆動の間、データテーブル２１Ａに格納された要素データに基づいて、相パターンの切替タイミングごとに制御データを生成しモータドライブ素子１１に出力するものである。より具体的には、ＡＳＩＣ２２は、アドレスバス２３を介してＣＰＵ２０からステップモータ１２の駆動開始指示を示すスタートトリガパルスが入力可能に構成されており、このスタートトリガパルスが入力された場合に、要素データをデータテーブル２１Ａから読み出し、この要素データに基づいて、相パターンの切替タイミングごとに制御データを生成し、モータドライブ素子１１に出力する。このとき、ＣＰＵ２０は、ＡＳＩＣ２２が１周期分の制御データの生成処理を実行している間に、ＣＰＵ２０が次の周期の要素データを作成してメモリ２１のデータテーブル２１Ａに格納するようになっており、ＡＳＩＣ２２が１周期分の制御データの生成処理を終了した場合には、当該ＡＳＩＣ２２に次の要素データがメモリ２１から読み込まれるようになっている。
【００２０】
次いで、かかるＡＳＩＣ２２の構成について前掲図１および図６を参照して説明する。
図６はＡＳＩＣ２２の回路構成を示す図である。前掲図１および図６に示すように、ＡＳＩＣ２２は、バッファメモリ３０と、タイミング生成回路３１と、データ合成回路３２とを有している。
バッファメモリ３０は、図１に示すように、タイマテーブルバッファ３０Ａと相テーブルバッファ３０Ｂとを有し、それぞれがアドレスバス２３およびデータバス２４を介してメモリ２１に接続されており、ＣＰＵ２０がメモリ２１のデータテーブル２１Ａに要素データを格納すると、その要素データのうち、タイマテーブルデータ４１がタイマテーブルバッファ３０Ａに格納され、また、相パターンテーブルデータ４０が相テーブルバッファ３０Ｂに格納されるようになっている。
【００２１】
また、図６に示すように、タイマテーブルバッファ３０Ａは、タイマテーブルデータ４１を格納するタイマテーブルバッファメモリ３５Ａと、タイミング生成回路３１からのロード命令にしたがってタイマテーブルバッファメモリ３５Ａからタイマテーブルデータ４１を読み出して、当該タイミング生成回路３１に出力するタイマテーブル転送回路３６Ａを有して構成され、また、相テーブルバッファ３０Ｂは、タイマテーブルバッファ３０Ａと同様に、相テーブルバッファメモリ３５Ｂと相テーブル転送回路３６Ｂとを有して構成されている。
【００２２】
タイミング生成回路３１は、相パターンの切替タイミングと同期して相パターンテーブル４０から１つの相パターンデータを取り出してデータ合成回路３２に出力するものであり、また、データ合成回路３２は、相パターンデータが入力されるごとに、すなわち、相パターンの切替タイミングごとに、当該相パターンデータに基づいて制御データを生成してモータドライブ素子１１に出力するものである。ここで、データ合成回路３２は、制御データをモータドライブ素子１１に出力する際には、所定クロック信号に基づいて１ビットずつシフトしてシリアル伝送路１５に出力すると共に、この所定クロック信号を同期クロック信号として転送クロックライン１３に出力するものである。これにより、モータドライブ素子１１が所定クロック信号に同期してシリアル伝送された制御データを順次取得し、その制御データに基づいてステップモータ１２を駆動することになる。なお、データ合成回路３２には、相パターンデータがステップモータ１２Ａおよび１２Ｂのいずれのものであるかを示す信号も入力されており、この信号に基づいて、制御データを出力する際に選択線１４Ａおよび１４Ｂのいずれかをアクティブレベルとする。
【００２３】
ここで、本実施の形態では、相パターンデータをデータ合成回路３２に出力するタイミング、すなわち、相パターンの切替タイミングのカウントをタイミング生成回路３１が行う構成としており、以下、かかるタイミング生成回路３１の構成について前掲図６を参照して詳述する。
【００２４】
図６において、タイマ回路５０は、相パターンの切替タイミングを計時するものであり、タイムアップ時間を示すタイマ設定が可能に構成され、タイマ設定値が設定された場合にタイマ動作を開始し、タイムアップ時にタイムアップパルスを相番号カウンタ５１に出力する。
相番号カウンタ５１は、現在の相パターンテーブルデータ４０における相パターンの位置をカウントするカウンタ回路であり、タイムアップパルスが入力されるごとにカウンタ値を「１」ずつインクリメントすると共に、カウンタ値を変更するごとに、データ出力命令を後述するタイマテーブルセレクタ回路５３および相テーブルセレクタ回路５４に出力する。
【００２５】
また、タイミング生成回路３１は、図示せぬ制御回路を有し、この制御回路が現在の相パターンテーブルデータ４０の相パターン数（すなわち、１周期の相パターン数）を相番号カウンタ５１にセットされるように構成されている。そして、相番号カウンタ５１は、１周期分の相パターンをカウントした場合（例えば２相励磁方式にあってはカウント値が「４」、１−２相励磁方式にあってはカウント値が「８」になった場合）、リロード命令をリロード命令生成回路５２に出力すると共に、割り込みパルス生成命令を割り込みパルス生成回路５８に出力し、その後、タイマ回路５０からのタイムアップパルスの入力に伴って、カウント値を「１」に戻すようになっている。
【００２６】
リロード命令生成回路５２は、リロード命令が入力されるごとに上述したバッファメモリ３０のタイマテーブル転送回路３６Ａおよび相テーブル転送回路３６Ｂに対してロード命令を出力するものであり、このロード命令が入力されることで、タイマテーブル転送回路３６Ａおよび相テーブル転送回路３６Ｂがタイマテーブルバッファメモリ３５Ａおよび相テーブルバッファメモリ３０Ｂからタイマテーブルデータ４１および相パターンテーブルデータ４０を読み出してタイミング生成回路３１に出力することになる。
【００２７】
タイマテーブルレジスタ５５および相テーブルレジスタ５６は、バッファメモリ３０から出力されたテーブルデータを格納するものであり、タイマテーブルデータ４１がタイマテーブルレジスタ５５に、相パターンテーブルデータ４０が相テーブルレジスタ５６にそれぞれ格納される。
タイマテーブルセレクタ回路５３は、相番号カウンタ回路５１からデータ出力命令が入力されるごとに、相番号カウンタ回路５１の現在のカウンタ値に対応するタイマ設定値をタイマテーブルレジスタ５５に格納されたタイマテーブルデータ４１から読み出してタイマ回路５０に出力するものであり、これにより、タイマ回路５０にタイマ設定値が設定されて、当該タイマ回路５０がタイマ動作を開始する。
【００２８】
また、相テーブルセレクタ回路５４は、相番号カウンタ回路５１からデータ出力命令が入力されるごとに、相番号カウンタ回路５１の現在のカウンタ値に対応する相パターンデータを相テーブルレジスタ５６に格納された相パターンテーブルデータ４０から読み出して相出力レジスタ５７に出力して保持させるものである。この相出力レジスタ５７はデータ合成回路３２にパラレル信号線を介して接続されており、相出力レジスタ５７が相パターンデータを保持することで、データ合成回路３２に対して相パターンデータがパラレル転送される。この結果、上記のように、データ合成回路３２によって相パターンデータに基づく制御データが生成されて、モータドライブ素子１１にシリアル伝送されることとなる。
【００２９】
上記割り込みパルス生成回路５８は、相番号カウンタ回路５１から割り込みパルス生成命令が入力されるごとに、割り込み要求ライン２５を介してＣＰＵ２０に対して割り込みパルスを出力して、１周期分の相パターンの切り替えが終了したことを通知するものである。
なお、タイミング生成回路３１が有する図示せぬ制御回路は、バッファメモリ３０から相パターンテーブルデータ４０およびタイマテーブルデータ４１がタイマテーブルレジスタ５５および相テーブルレジスタ５６に転送された場合に、ＣＰＵ２０に対して、次周期の要素データの作成・設定許可を示す設定許可フラグをデータバス２４を介して読み出せる構成となっている。ＣＰＵ２０は、設定許可フラグがHighと認識できた場合、引き続きステップモータ１２を駆動するときには、ステップモータ１２の運転モード等にしたがって次周期の要素データを作成しメモリ２１に格納し、これにより、バッファメモリ３０に次周期の要素データが格納されることとなる。すなわち、タイミング生成回路３１のタイマテーブル５５および相テーブルレジスタ５６には現在の周期分の要素データが格納されたときには、バッファメモリ３０には次周期分の要素データが格納されることになり、これらタイマテーブル５５および相テーブルレジスタ５６と、バッファメモリ３０とにより、要素データ格納のための、いわゆるダブルバッファが構成されている。
【００３０】
次いで、上記のように構成されたモータ制御装置１０の動作について説明する。
図７は、モータ制御装置１０の動作を示すタイミングチャートである。なお、この図においては各信号の非アクティブレベルをＨｉｇｈレベル、アクティブレベルをＬｏｗレベルとして示している。
図７に示すように、ＣＰＵ２０からはスタートトリガ信号がアドレスバス２３に出力されており、タイミングＴ１において、ＣＰＵ２０がスタートトリガパルスを出力することでタイミング生成回路３１に対してステップモータ１２の駆動開始が指示される。
【００３１】
タイミング生成回路３１は、駆動開始が指示されると、要素データをバッファメモリ３０から取り込むための初期化処理を開始する。すなわち、この初期化処理にあっては、タイミング生成回路３１が有する図示せぬ制御装置により、タイマ回路５０に初期タイマ設定値が設定されてタイマ動作を開始すると共に、相番号カウンタ回路５１のカウンタ値が例えば「０」にリセットされる。このようにして相番号カウンタ回路５１がリセットされると、当該相番号カウンタ回路５１はリロード命令をリロード命令生成回路５２に出力し、これにより、バッファメモリ３０からタイマテーブルレジスタ５５および相テーブルレジスタ５６のそれぞれに、タイマテーブルデータ４１および相パターンテーブルデータ４０が転送される。
【００３２】
そして、タイミングＴ２において、タイマ回路５０が初期タイマ設定値のタイマ動作を終了すると、タイムアップパルスを相番号カウンタ５１に出力する。この結果、タイミングＴ２にあっては、相番号カウンタ回路５１がカウンタ値を「１」だけインクリメントしてカウンタ値を「１」とすると共に、相番号カウント回路５１からタイマテーブルセレクタ回路５３および相テーブルセレクタ回路５４のそれぞれにデータ出力信号が出力されて、１番目の相パターンデータの切り替えタイミングを示すタイマ設定値がタイマ回路５０に設定されて当該タイマ回路５０がタイマ動作を開始し、また、１番目の相パターンデータが相出力レジスタ５７を介してデータ合成回路３２に出力される。これにより、１番目の相パターンデータに基づく制御データがデータ合成回路３２からモータドライブ素子１１に出力されて、ステップモータ１２の駆動制御が開始される。
なお、この初期化期間の間に、タイミング生成回路３１が有する図示せぬ制御装置は次周期の要素データの設定許可パルスを出力し、ＣＰＵ２０に対して次周期の要素データの設定許可を通知し、これにより、次周期の要素データがメモリ２１のデータテーブル２１Ａに格納され、そしてバッファメモリ３０にも格納される。
【００３３】
次いで、タイミングＴ３において、２番目の相パターンに切り替える切替タイミングに至ると、タイマ回路５０からタイムアップパルスが相番号カウンタ回路５１に出力されて、相番号カウンタ回路５１がカウンタ値を「１」だけインクリメントする。これにより、２番目の相パターンデータがデータ合成回路３２に出力されて、当該相パターンデータに基づく制御データがモータドライブ素子１１に出力されると共に、２番目の相パターンに対応するタイマ設定値がタイマ回路５０に設定されて次の相パターン切替タイミングまでのタイマ動作を開始する。
以後同様にして、相パターンの切替タイミングごとにタイマ回路５０がタイムアップパルスを相番号カウンタ回路５１に出力することで、当該切替タイミングごとに相パターンデータがデータ合成回路３２に出力されて制御データがモータドライブ素子１１に出力されることになる。
【００３４】
そして、タイミングＴ４において、相カウンタ回路５１のカウント値が１周期のカウントを終了した場合には、カウント値を「１」に戻すと共に、リロード命令をリロード命令生成回路５２に出力する。これにより、次周期分のタイマテーブルデータ４１および相パターンテーブルデータ４０がタイマテーブルレジスタ５５および相テーブルレジスタ５６のそれぞれに読み出され、そして、相パターンの切替タイミングに同期して相パターンデータがデータ合成回路３２に出力されて、次周期のモータ駆動が継続される。
【００３５】
また、このタイミングＴ４においては、相番号カウンタ回路５１が割り込みパルス生成命令を割り込みパルス生成回路５８を出力し、これにより、当該パルス生成回路５８から１周期分の相パターン切り替が終了したことを示す割り込みパルスがＣＰＵ２０に出力され、また、タイミング生成回路３１が有する図示せぬ制御装置は次周期の要素データの設定許可フラグが設定される。
そしてＣＰＵ２０は、設定許可フラグがHighと認識できたとき、継続してステップモータ１２を駆動する場合には、次周期の要素データを生成してメモリ２１のデータテーブル２１Ａに格納する。このとき、ＣＰＵ２０が、ステップモータ１２の運転モードに応じた要素データを生成することで、ステップモータ１２の駆動を動的に変更することが可能となる。具体的には、ＣＰＵ２０は、運転モードに応じて励磁方式を１相励磁方式、２相励磁方式および１−２相励磁方式の間で切り替えたり、また、ステップモータ１２の回転速度に応じて相パターンの切替タイミングすなわちタイマ設定値を変更したり、また或いは、ステップモータ１２の回転トルクに応じて電流値を例えば１００ｍＡ、２００ｍＡ、３００ｍＡ、４００ｍＡの間で切り替えるなどする。
【００３６】
一方、ＣＰＵ２０はステップモータ１２の駆動を停止する場合には、設定許可フラグがHighと認識できたときにアドレスバス２３を介してＡＳＩＣ２２に対してステップモータ１２の停止設定を出力し、これにより、ＡＳＩＣ２２による制御データの生成および出力が停止される（タイミングＴ５）。
【００３７】
このように、本実施の形態によれば、ＡＳＩＣ２２にタイミング生成回路３１およびデータ合成回路３２を設け、タイミング生成回路３１がＣＰＵ２０ステップモータ１２の相パターンの切替タイミングに同期して相パターンデータをデータ合成回路３２に出力して制御データを生成・伝送させるため、ＣＰＵ２０に負荷をかけることなく、相パターンの切替タイミングの生成が可能となる。また、ＣＰＵ２０の処理状態や性能などに依存せずに、相パターンの切替タイミングが可能であるため、モータの駆動タイミングの制御を正確に行うことができ、モータを安定駆動させることが可能となると共に、ＣＰＵ２０が実行する制御プログラムの簡素化を図ることができる。
【００３８】
さらに、本実施の形態によれば、ＡＳＩＣ２２のデータ合成回路３２がモータドライブ素子１１への制御データの生成・伝送を行うため、ステップモータ１２の駆動に際し、ＣＰＵ２０は要素データの生成だけで良く、当該ＣＰＵ２０の負荷をさらに低減することができる。したがって、ＣＰＵ２０として処理能力や反応速度が低いＣＰＵが用いられている場合であっても、ステップモータ１２の駆動タイミングを正確に、かつ、安定して制御することが可能となる。
【００３９】
また、本実施の形態によれば、ＡＳＩＣ２２が、次回の要素データを格納するバッファメモリ３０と、今回の要素データを格納するタイマテーブルレジスタ５５および相テーブルレジスタ５６を有する構成であるため、ＣＰＵ２０は、次の要素データの生成を今回の要素データに基づく制御データの生成が行われている間に行うことができるため、比較的低速或いは低性能なＣＰＵを用いた場合であっても、要素データの生成が間に合わなくなるといった事態を防止することができる。
【００４０】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施の形態では、ステップモータ１２を制御する場合について説明したが、本発明はこれに限らず、ＤＣモータを制御する場合にも適用が可能である。すなわち、ＤＣモータがドライブ素子によって駆動され、このドライブ素子に所定フォーマットの制御データをシリアル伝送することによりＤＣモータの制御が行なわれる場合にも、本発明を適用することで、ＣＰＵに負荷をかけることなく、制御データの合成およびシリアル転送を行なうことが可能となる。
【００４１】
また例えば、上述した実施の形態では、モータドライブ素子１１が１つまたは２つのモータを駆動する場合について説明したが、本発明は、モータドライブ素子１１が３つ以上のモータを駆動できる場合にも適用が可能である。
さらに、上述した実施の形態では、データ合成回路３２が相パターンデータに基づいて制御データを生成しモータドライブ素子１１にシリアル伝送する構成を例示したが、これに限らず、モータドライブ素子１１に入力可能な信号がパラレル信号である場合には、データ合成回路３２が制御データをパラレル伝送する構成としても良い。
【００４２】
また本発明は、１つ又は複数のモータと、このモータを駆動するモータ駆動装置とを有する電子機器であれば、任意の電子機器に応用することが可能である。
例えば、記録ヘッドが搭載されたキャリッジを駆動するキャリッジ駆動モータおよび記録用紙を搬送する用紙搬送モータと、これらのキャリッジ駆動モータおよび用紙搬送モータを駆動するモータ駆動装置を備えたプリンタ装置（例えばインクジェットプリンタやラインヘッドプリンタ）にも本発明を適用することが可能である。このようなプリンタ装置にあっては、高速印字を可能にしつつ印字品質を維持するために、記録ヘッドによる印字タイミングと記録用紙の紙送りタイミング、すなわち、キャリッジ駆動モータおよび用紙搬送モータの駆動タイミングを高い精度で制御する必要がある。そこで、本発明をプリンタ装置に適用することで、ＣＰＵに依存せずに、キャリッジ駆動モータおよび用紙搬送モータの駆動タイミングを精度良く制御することが可能となる。また、プリンタ装置の印字制御用のＣＰＵとして処理能力や反応速度が低いＣＰＵが用いられている場合、或いは、印字制御用の制御プログラムとしてＣＰＵに対する負荷が大きい制御プログラムが用いられている場合であっても、キャリッジ駆動モータおよび用紙搬送モータの駆動タイミングを精度良く制御することが可能である。
【００４３】
また、キャリッジを有するプリンタ装置の他にも、固定配置された記録ヘッドと、記録用紙を搬送する用紙搬送モータと、この用紙搬送モータを駆動するモータ駆動装置を備えた例えばサーマルヘッドプリンタなどのプリンタ装置にも本発明を適用することが可能である。また、この種のサーマルヘッドプリンタにおいては、排出された記録用紙を切断するための切断刃と、この切断刃を駆動するための切断刃駆動モータとを有するオートカッタ機構を備えたものがあり、この切断刃駆動モータおよび用紙搬送モータを上記モータ駆動装置が駆動するように構成されたサーマルプリンタにも本発明を適用可能であることは勿論である。
なお、上記プリンタ装置の他にも、例えばコピー機やファクシミリ、スキャナ、モータ駆動によるオートフォーカス機構を備えたカメラ、トレイの自動ローディング機構を有する光学ドライブ装置、産業用ロボットアームなどの電子機器にも本発明を適用することが可能である。
【図面の簡単な説明】
【００４４】
【図１】本発明に係るモータ制御システムの構成を示す図である。
【図２】ステップモータの相構成の一例を示す図である。
【図３】ステップモータの各相に加える電圧波形の一例を示す図である。
【図４】相パターンテーブルデータの一例を示す図である。
【図５】タイマテーブルデータの一例を示す図である。
【図６】ＡＳＩＣの構成を示す図である。
【図７】モータ制御装置の動作を示すタイミングチャートである。
【符号の説明】
【００４５】
１…モータ制御システム、１０…モータ制御装置、１１…モータドライブ素子（モータ駆動装置）、１２、１２Ａ、１２Ｂ…ステップモータ（モータ）、２０…ＣＰＵ（制御手段）、２１…メモリ（記憶手段）、２２…ＡＳＩＣ（ハードウェア回路）、３０…バッファメモリ（第１バッファメモリ）、３１…タイミング生成回路、３２…データ合成回路（制御データ生成伝送手段）、５０…タイマ回路、５５…タイマテーブルレジスタ（第２バッファメモリ）、５６…相テーブルレジスタ（第２バッファメモリ）。
【図１】
0004715397.tif 000003
【図２】
0004715397.tif 000004
【図３】
0004715397.tif 000005
【図４】
0004715397.tif 000006
【図５】
0004715397.tif 000007
【図６】
0004715397.tif 000008
【図７】
0004715397.tif 000009