IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ミネベア株式会社の特許一覧

特開2023-178872モータ駆動制御装置、モータユニット、およびモータ駆動制御方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023178872
(43)【公開日】2023-12-18
(54)【発明の名称】モータ駆動制御装置、モータユニット、およびモータ駆動制御方法
(51)【国際特許分類】
   H02P 6/08 20160101AFI20231211BHJP
【FI】
H02P6/08
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022091830
(22)【出願日】2022-06-06
(71)【出願人】
【識別番号】000114215
【氏名又は名称】ミネベアミツミ株式会社
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】杉田 和彦
【テーマコード(参考)】
5H560
【Fターム(参考)】
5H560BB04
5H560RR06
5H560SS01
5H560TT12
5H560TT15
5H560XA12
(57)【要約】
【課題】外部からの駆動指令が急激に変化しても、モータの安定した回転動作を維持する。
【解決手段】モータ駆動制御装置20は、モータ10の駆動を制御するための駆動制御信号Sdに基づいて、モータ10を駆動するモータ駆動部300と、PWM信号Sc1に基づいて駆動制御信号Sdを生成して出力する制御部200と、PWM信号Sc1を制御部200に出力するPWM出力回路100と、を備え、制御部200は、PWM信号Sc1に含まれる動作指令を目標速度指令値S2に変換する指令値変換処理部210と、指令値変換処理部210から取得した目標速度指令値S2が変化した場合に、取得した目標速度指令値S2の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値S3に基づいて駆動制御信号Sdを生成する追従駆動制御信号生成部220とを有する。
【選択図】図2
【特許請求の範囲】
【請求項1】
モータの駆動を制御するための駆動制御信号に基づいて、前記モータのコイルに電圧を印加して前記モータを駆動するモータ駆動部と、
前記モータの動作指令信号に基づいて前記駆動制御信号を生成して前記モータ駆動部に出力する制御部と、
外部から駆動指令信号を入力して、前記動作指令信号を前記制御部に出力する動作指令信号出力回路と、を備え、
前記制御部は、
前記動作指令信号に含まれる動作指令を目標指令値に変換する指令値変換処理部と、
前記指令値変換処理部から前記目標指令値を取得し、取得した前記目標指令値が変化した場合に、取得した前記目標指令値の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値に基づいて前記駆動制御信号を生成する追従駆動制御信号生成部とを有する、
モータ駆動制御装置。
【請求項2】
請求項1に記載のモータ駆動制御装置において、
前記追従駆動制御信号生成部は、
前回の追従指令値である現在速度指令値と新しく取得した目標指令値である目標速度指令値とに差異がある場合に取得した前記目標速度指令値が変化したと判断して、前記現在速度指令値が前記目標速度指令値に到達するまで所定の追従処理間隔毎に予め設定した値だけ前記現在速度指令値を前記目標速度指令値に近づけた値を新たな追従指令値とする追従処理を実行する速度指令追従処理部と、
前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有する、
モータ駆動制御装置。
【請求項3】
請求項1に記載のモータ駆動制御装置において、
前記追従駆動制御信号生成部は、
前回の追従指令値である現在速度指令値と新しく取得した目標指令値である目標速度指令値とに差異がある場合に取得した前記目標速度指令値が変化したと判断して、前記現在速度指令値が前記目標速度指令値に到達するまで所定の追従処理間隔毎に前記差異に応じて決定される値だけ前記現在速度指令値を前記目標速度指令値に近づけた値を新たな追従指令値とする追従処理を実行する速度指令追従処理部と、
前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有する、
モータ駆動制御装置。
【請求項4】
請求項3に記載のモータ駆動制御装置において、
前記速度指令追従処理部は、前記差異が小さくなるに従って、前記所定の追従処理間隔を小さい値に設定するとともに、前記現在速度指令値を前記目標速度指令値に近づける値を大きい値に設定する、
モータ駆動制御装置。
【請求項5】
請求項1に記載のモータ駆動制御装置において、
前記追従駆動制御信号生成部は、
前回の追従指令値である現在位置指令値と新しく取得した目標指令値である目標位置指令値とに差異がある場合に取得した前記目標位置指令値が変化したと判断して、前記現在位置指令値が前記目標位置指令値に到達するまで所定の追従処理間隔毎に予め設定した値だけ前記現在位置指令値を前記目標位置指令値に近づけた値を新たな追従指令値とする追従処理を実行する位置指令追従処理部と、
前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有する、
モータ駆動制御装置。
【請求項6】
請求項1に記載のモータ駆動制御装置において、
前記追従駆動制御信号生成部は、
前回の追従指令値である現在位置指令値と新しく取得した目標指令値である目標位置指令値とに差異がある場合に取得した前記目標位置指令値が変化したと判断して、前記現在位置指令値が前記目標位置指令値に到達するまで所定の追従処理間隔毎に前記差異に応じて決定される値だけ前記現在位置指令値を前記目標位置指令値に近づけた値を新たな追従指令値とする追従処理を実行する位置指令追従処理部と、
前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有する、
モータ駆動制御装置。
【請求項7】
請求項1乃至6の何れか一項に記載のモータ駆動制御装置と、
前記モータと、を備える
モータユニット。
【請求項8】
モータの駆動を制御するための駆動制御信号に基づいて、前記モータのコイルに電圧を印加して前記モータを駆動するモータ駆動部と、前記モータの動作指令信号に基づいて前記駆動制御信号を生成して前記モータ駆動部に出力する制御部と、外部から駆動指令信号を入力して、前記動作指令信号を前記制御部に出力する動作指令信号出力回路とを備えるモータ駆動制御装置によるモータ駆動制御方法であって、
前記制御部が、
前記動作指令信号に含まれる動作指令を目標指令値に変換する指令値変換処理ステップと、
前記指令値変換処理ステップで変換した前記目標指令値が変化した場合に、取得した前記目標指令値の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値に基づいて前記駆動制御信号を生成する追従駆動制御信号生成ステップとを含む、
モータ駆動制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モータ駆動制御装置、モータユニット、およびモータ駆動制御方法に関する。
【背景技術】
【0002】
従来、モータの目標回転数に対応するデューティ比を有するPWM(Pulse Width Modulation)信号を外部から取り込むモータ駆動制御装置が知られている(例えば、特許文献1)。特許文献1のモータの駆動IC(Integrated Circuit)には、PWM信号をフィルタ回路で平滑化して取り込む構成が示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2016-226263号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1のように、外部から目標速度指令としてのPWM信号を取り込む際に、何らかの要因でノイズなどの障害が発生すると、その障害の影響によりPWM信号のデューティ比が比較的大きく変化してしまうことがある。その結果、目標速度指令値が不安定となり、目標速度指令値が正しい値とならず、モータの回転数が目標回転数とはならなくなるという問題が生じる。
また、外部から取り込む駆動指令が目標速度指令ではなく、目標位置指令である場合にも外部からの目標位置指令値が急激に変化すると、目標速度指令値が不安定になるのと同様に目標位置指令値が不安定となる問題がある。例えば、回転トルクが高い場合、回転始動時の負荷が高いのですぐにモータが回らず、モータ駆動出力が大きくなってから回り出すため、容易に目標位置指令値を超えてしまい、逆回転させる必要が生じることがある。
【0005】
そこで、本願発明者は、外部からの駆動指令が急激に変化しても、モータの安定した回転動作を維持することができる新たなモータ駆動制御技術が必要であると考えた。
【0006】
本発明は、上述した課題を解消するためのものであり、外部からの駆動指令が急激に変化しても、モータの安定した回転動作を維持することが可能なモータ駆動制御装置、モータユニット、およびモータ駆動制御方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の代表的な実施の形態に係るモータ駆動制御装置は、モータの駆動を制御するための駆動制御信号に基づいて、前記モータのコイルに電圧を印加して前記モータを駆動するモータ駆動部と、前記モータの動作指令信号に基づいて前記駆動制御信号を生成して前記モータ駆動部に出力する制御部と、外部から駆動指令信号を入力して、前記動作指令信号を前記制御部に出力する動作指令信号出力回路と、を備え、前記制御部は、前記動作指令信号に含まれる動作指令を目標指令値に変換する指令値変換処理部と、前記指令値変換処理部から前記目標指令値を取得し、取得した前記目標指令値が変化した場合に、取得した前記目標指令値の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値に基づいて前記駆動制御信号を生成する追従駆動制御信号生成部とを有する。
【発明の効果】
【0008】
本発明の一態様によれば、外部からの駆動指令が急激に変化しても、モータの安定した回転動作を維持することが可能なモータ駆動制御装置、モータユニット、およびモータ駆動制御方法を提供することが可能となる。
【図面の簡単な説明】
【0009】
図1】第1の実施の形態に係るモータ駆動制御装置20を備えたモータユニット1の構成の具体例を示す図である。
図2】第1の実施の形態に係るモータ駆動制御装置20の制御部200の内部構成を示すブロック図である。
図3A】目標速度指令値S2が変更された場合における追従指令値S3の変化の一例を示す図である。
図3B】目標速度指令値S2が変更された場合における追従指令値S3の変化の他の例を示す図である。
図4】第1の実施の形態に係る速度指令追従処理部221による追従処理のフローチャートである。
図5】制御部200内の各構成部間の信号波形の一例を説明するための図である。
図6A】速度指令値の変更時における、第1の実施の形態の追従処理による指令値を、従来の移動平均処理による指令値と比較して示す図である。
図6B図6Aの指令値の変化を視覚的に示した図である。
図7A】ノイズ重畳時における、第1の実施の形態の追従処理による指令値を、従来の移動平均処理による指令値と比較して示す図である。
図7B図7Aの指令値の変化を視覚的に示した図である。
図8】第2の実施の形態に係るモータ駆動制御装置20Aを備えたモータユニット1Aの構成の具体例を示す図である。
図9】第2の実施の形態に係るモータ駆動制御装置20Aの制御部200Aの内部構成を示すブロック図である。
図10】第2の実施の形態に係る追従処理のフローチャートである。
図11A】従来のモータ駆動制御装置において目標位置指令値が変更された場合における回転位置の変化(現在位置)の一例を示す図である。
図11B】第2の実施形態のモータ駆動制御装置20Aにおいて目標位置指令値S2aが変更された場合における追従指令値S3aの変化と回転位置の変化(現在位置)の一例を示す図である。
【発明を実施するための形態】
【0010】
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。なお、以下の説明では、一例として、発明の構成要素に対応する図面上の参照符号を、括弧を付して記載している。
【0011】
〔1〕本発明の代表的な実施の形態に係るモータ駆動制御装置(20,20A)は、モータ(10)の駆動を制御するための駆動制御信号(Sd)に基づいて、前記モータのコイルに電圧を印加して前記モータを駆動するモータ駆動部(300)と、前記モータの動作指令信号(Sc1,Sc2)に基づいて前記駆動制御信号(Sd)を生成して前記モータ駆動部に出力する制御部(200,200A)と、外部から駆動指令信号(PWM,STMP)を入力して、前記動作指令信号を前記制御部に出力する動作指令信号出力回路(100,100A)と、を備え、前記制御部は、前記動作指令信号に含まれる動作指令を目標指令値(S2,S2a)に変換する指令値変換処理部(210,210A)と、前記指令値変換処理部から前記目標指令値を取得し、取得した前記目標指令値が変化した場合に、取得した前記目標指令値の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値(S3,S3a)に基づいて前記駆動制御信号を生成する追従駆動制御信号生成部(220,220A)とを有する。
【0012】
〔2〕上記〔1〕に記載のモータ駆動制御装置において、前記追従駆動制御信号生成部は、前回の追従指令値である現在速度指令値と新しく取得した目標指令値である目標速度指令値とに差異がある場合に取得した前記目標速度指令値が変化したと判断して、前記現在速度指令値が前記目標速度指令値に到達するまで所定の追従処理間隔毎に予め設定した値だけ前記現在速度指令値を前記目標速度指令値に近づけた値を新たな追従指令値とする追従処理を実行する速度指令追従処理部と、前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有することとしてもよい。
【0013】
〔3〕上記〔1〕に記載のモータ駆動制御装置において、前記追従駆動制御信号生成部は、前回の追従指令値である現在速度指令値と新しく取得した目標指令値である目標速度指令値とに差異がある場合に取得した前記目標速度指令値が変化したと判断して、前記現在速度指令値が前記目標速度指令値に到達するまで所定の追従処理間隔毎に前記差異に応じて決定される値だけ前記現在速度指令値を前記目標速度指令値に近づけた値を新たな追従指令値とする追従処理を実行する速度指令追従処理部と、前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有することとしてもよい。
【0014】
〔4〕上記〔3〕に記載のモータ駆動制御装置において、前記速度指令追従処理部は、前記差異が小さくなるに従って、前記所定の追従処理間隔を小さい値に設定するとともに、前記現在速度指令値を前記目標速度指令値に近づける値を大きい値に設定することとしてもよい。
【0015】
〔5〕上記〔1〕に記載のモータ駆動制御装置において、前記追従駆動制御信号生成部は、前回の追従指令値である現在位置指令値と新しく取得した目標指令値である目標位置指令値とに差異がある場合に取得した前記目標位置指令値が変化したと判断して、前記現在位置指令値が前記目標位置指令値に到達するまで所定の追従処理間隔毎に予め設定した値だけ前記現在位置指令値を前記目標位置指令値に近づけた値を新たな追従指令値とする追従処理を実行する位置指令追従処理部と、前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有することとしてもよい。
【0016】
〔6〕上記〔1〕に記載のモータ駆動制御装置において、前記追従駆動制御信号生成部は、前回の追従指令値である現在位置指令値と新しく取得した目標指令値である目標位置指令値とに差異がある場合に取得した前記目標位置指令値が変化したと判断して、前記現在位置指令値が前記目標位置指令値に到達するまで所定の追従処理間隔毎に前記差異に応じて決定される値だけ前記現在位置指令値を前記目標位置指令値に近づけた値を新たな追従指令値とする追従処理を実行する位置指令追従処理部と、前記新たな追従指令値に基づいて前記駆動制御信号を生成する駆動制御信号生成部とを有することとしてもよい。
【0017】
〔7〕本発明の代表的な実施の形態に係るモータユニットは、上記〔1〕から〔6〕のいずれか1つに記載のモータ駆動制御装置と、前記モータと、を備える。
【0018】
〔8〕本発明の代表的な実施の形態に係るモータ駆動制御方法は、モータの駆動を制御するための駆動制御信号に基づいて、前記モータのコイルに電圧を印加して前記モータを駆動するモータ駆動部と、前記モータの動作指令信号に基づいて前記駆動制御信号を生成して前記モータ駆動部に出力する制御部と、外部から駆動指令信号を入力して、前記動作指令信号を前記制御部に出力する動作指令信号出力回路とを備えるモータ駆動制御装置によるモータ駆動制御方法であって、前記制御部が、前記動作指令信号に含まれる動作指令を目標指令値に変換する指令値変換処理ステップと、前記指令値変換処理ステップで変換した前記目標指令値が変化した場合に、取得した前記目標指令値の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値に基づいて前記駆動制御信号を生成する追従駆動制御信号生成ステップとを含む。
【0019】
2.実施の形態の具体例
以下、本発明の実施の形態の具体例について図を参照して説明する。なお、以下の説明において、各実施の形態において共通する構成要素には同一の参照符号を付し、繰り返しの説明を省略する。
【0020】
≪第1の実施の形態≫
図1は、第1の実施の形態に係るモータ駆動制御装置20を備えたモータユニット1の構成の具体例を示す図である。
【0021】
図1に示されるモータユニット1は、モータ10と、モータ駆動制御装置20とを備えている。
【0022】
モータ10は、少なくとも1つのコイルを有するモータである。例えば、モータ10は、3相(U相、V相、およびW相)のコイル(巻線)Lu,Lv,Lwを有するブラシレスDCモータである。
【0023】
モータ駆動制御装置20は、モータ10の駆動を制御する装置である。モータ駆動制御装置20は、例えば、上位装置2からPWM信号(駆動指令信号の一例)PWMに含まれる回転速度指令(駆動指令)に基づいてモータ10の駆動を行う。
【0024】
具体的には、モータ駆動制御装置20は、PWM出力回路(動作指令信号出力回路の一例)100と、制御部200と、モータ駆動部300とを備えている。モータ駆動制御装置20は、外部の直流電源(不図示)から直流電圧の供給を受ける。直流電圧は、例えば、保護回路等を介してモータ駆動制御装置20内の電源ライン(不図示)に供給され、電源ラインを介してPWM出力回路100と、制御部200と、モータ駆動部300とにそれぞれ入力される。
【0025】
モータ駆動部300は、後述する制御部200から出力された駆動制御信号Sdに基づいて、モータ10を駆動する回路である。駆動制御信号Sdは、モータ10の駆動を制御するための信号である。例えば、駆動制御信号Sdは、モータ10を駆動するためのPWM信号である。
【0026】
モータ駆動部300は、駆動制御信号Sdに基づいて電源電圧とグラウンド電位との間でモータ10のコイルの接続先を切り替えることにより、コイル電流の向きを切り替えてモータ10を回転させる。
【0027】
制御部200は、モータ駆動制御装置20の動作を統括的に制御するための回路である。第1の実施の形態において、制御部200は、例えば、図1に示すように、インプットキャプチャ機能を有するタイマ、ROM、RAM、クロック生成回路、プロセッサ(CPU等)、入出力I/F回路がバスや専用線を介して互いに接続された構成を有するプログラム処理装置である。例えば、制御部200は、マイクロコントローラ(MCU:Micro Controller Unit)である。制御部200は、その他にも、フラッシュメモリ等の各種記憶装置と、カウンタとしてのタイマ、A/D変換回路、D/A変換回路、その他の周辺回路なども含んでいてもよい。
【0028】
なお、制御部200とモータ駆動部300とは、一つの半導体集積回路(IC:Integrated Circuit)としてパッケージ化された構成であってもよいし、個別の集積回路として夫々パッケージ化されて回路基板に実装され、回路基板上で互いに電気的に接続された構成であってもよい。
【0029】
PWM出力回路100は、外部(例えば、上位装置2)からPWM信号(駆動指令信号の一例)PWMを入力して、モータ10の動作(本実施の形態では回転速度)に関する目標値を指示する動作指令を含むPWM信号(動作指令信号の一例)Sc1を生成して、制御部200に出力する回路である。
【0030】
制御部200は、駆動制御信号Sdを生成してモータ駆動部300に与えることにより、モータ10の通電制御を行う基本機能を有している。具体的に、制御部200は、入力されたPWM信号Sc1に基づいて、モータ10がPWM信号Sc1に含まれる動作指令で指定された動作状態となるように駆動制御信号Sdを生成してモータ駆動部300に与える。
【0031】
また、制御部200は、上記基本機能に加えて、PWM信号Sc1に含まれる動作指令で指定された目標指令値(本実施の形態では目標速度指令値)が変化した場合に、目標指令値の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値に応じた駆動制御信号Sdを生成する機能(以下、「追従処理機能」とも称する。)を有する。
【0032】
図2は、第1の実施の形態に係るモータ駆動制御装置20の制御部200の内部構成を示すブロック図である。
図2に示すように、制御部200は、上述した各機能を実現するための機能部として、例えば、デューティ比較部211と速度指令変換部212とを有する指令値変換処理部210と、速度指令追従処理部221と駆動制御信号生成部222とを有する追従駆動制御信号生成部220と、記憶部230とを有している。
【0033】
制御部200の上述した各機能部は、例えば、制御部200としてのMCUのプログラム処理によって実現される。具体的には、制御部200としてのMCUを構成するプロセッサが、メモリに格納されたプログラムにしたがって各種の演算を行ってMCUを構成する各種周辺回路を制御することにより、上述した各機能部が実現される。
【0034】
指令値変換処理部210は、PWM出力回路100から入力されたPWM信号Sc1を受信する。PWM信号Sc1は、モータ10の動作に関する目標値を指示する信号であって、例えば、モータ10の目標回転速度を指示する信号を含んでいる。
【0035】
指令値変換処理部210は、PWM信号Sc1によって指定された目標回転速度を解析し、そのデューティ比に対応する回転速度の情報を目標速度指令値S2として出力する。具体例として、入力されたPWM信号Sc1が目標回転速度に対応するデューティ比を有するPWM信号である場合、指令値変換処理部210において、デューティ比較部211は、内部クロック信号CLKのタイミングでPWM信号Sc1として入力されたPWM信号をキャプチャして、PWM信号のデューティ比を示すデューティ比信号S1として速度指令変換部212に出力する。速度指令変換部212は、デューティ比信号S1を受け取ると、PWM信号Sc1のデューティ比に対応する回転速度の情報を目標速度指令値S2として出力する。
【0036】
追従駆動制御信号生成部220は、指令値変換処理部210から取得した目標速度指令値S2が変化した場合に、取得した目標速度指令値S2の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値S3に基づいて駆動制御信号Sdを生成する。具体的には、速度指令追従処理部221が、追従処理により追従指令値S3を算出し、駆動制御信号生成部222がモータ10の回転速度が追従指令値S3で特定される回転速度に一致するようにモータ10の操作量を算出し、算出した操作量に基づいて駆動制御信号Sdを生成する。なお、追従駆動制御信号生成部220の機能のうち追従処理の詳細については、後述する。
【0037】
記憶部230は、追従処理において参照される加減算単位値や加減算間隔を記憶している。加減算単位値は、目標速度指令値S2の変化量の所定割合として加算または減算される速度の大きさであり、モータ10やモータ駆動部300の仕様によって設定される。加減算間隔は、目標速度指令値S2の変化量の所定割合を変化させる(加算または減算する)時間間隔(以下、「追従処理間隔」ともいう。)であり、モータ10やモータ駆動部300の仕様によって設定される。
【0038】
速度指令追従処理部221は、指令値変換処理部210から取得した目標速度指令値S2が変化した場合に、記憶部230に記憶されている加減算単位値や加減算間隔を必要に応じて参照して追従処理を実行して追従指令値S3を算出し、駆動制御信号生成部222に出力する。速度指令追従処理部221は、指令値変換処理部210から取得した目標速度指令値S2が変化しない場合には、以前と同じ速度指令値を追従指令値S3として駆動制御信号生成部222に出力する。
【0039】
駆動制御信号生成部222は、速度指令追従処理部221から受け取った追従指令値S3で指定される回転速度および追従処理間隔に基づいてモータ10の操作量を算出し、算出した操作量に基づいて決定されるPWM周期とオン期間を有するPWM信号を駆動制御信号Sdとして生成し、モータ駆動部300に出力する。
【0040】
モータ駆動部300は、制御部200の駆動制御信号生成部222から出力された駆動制御信号Sdに基づいて、モータ10を駆動する回路である。駆動制御信号Sdは、追従指令値S3である回転速度に対応したPWM周期とオン期間を有するPWM信号である。モータ駆動部300は、駆動制御信号SdのPWM信号に基づいて電源電圧とグラウンド電位との間でモータ10のコイルの接続先を切り替えることにより、コイル電流の向きを切り替えてモータ10を追従指令値S3である回転速度で回転させることができる。
【0041】
ここで、速度指令追従処理部221が、追従処理により追従指令値S3を算出する手法について、さらに説明する。
【0042】
図3Aは、目標速度指令値S2が変更された場合における追従指令値S3の変化の一例を示す図である。
図3Bは、目標速度指令値S2が変更された場合における追従指令値S3の変化の他の例を示す図である。
【0043】
速度指令追従処理部221は、指令値変換処理部210(速度指令変換部212)から取得した目標速度指令値S2が変化した場合に、追従処理を実行する。追従処理は、目標速度指令値S2が変化しても目標速度指令値S2の変化量を一度に変化させずに、取得した目標速度指令値S2の変化量の所定割合で所定回数にわたって変化するようにした値である追従指令値S3を新たな追従指令値S3として駆動制御信号生成部222に出力する処理である。
【0044】
速度指令追従処理部221は、具体的には、前回の追従指令値S3である現在速度指令値と新しく取得した指令値である目標速度指令値S2とに差異がある場合に取得した目標速度指令値S2が変化したと判断して、追従処理を実行する。
【0045】
速度指令追従処理部221は、追従処理として、具体的には、目標速度指令値S2に対して図3Aまたは図3Bに示すように変化する追従指令値S3を算出し、駆動制御信号生成部222に出力する。
【0046】
図3Aに示す追従処理では、速度指令追従処理部221は、前回の追従指令値S3である現在速度指令値が目標速度指令値S2に到達するまで、所定の追従処理間隔毎に予め設定した値だけ現在速度指令値を目標速度指令値S2に近づけた値を新たな追従指令値S3としている。
【0047】
図3Bに示す追従処理では、速度指令追従処理部221は、前回の追従指令値S3である現在速度指令値が目標速度指令値S2に到達するまで、所定の追従処理間隔毎に現在速度指令値と目標速度指令値S2との差異に応じて決定される値だけ現在速度指令値を目標速度指令値S2に近づけた値を新たな追従指令値S3としている。
【0048】
図3Aおよび図3Bにおいては、縦軸が速度指令値における回転速度を示し、横軸が速度指令値を追従処理する時間の経過を示している。図3Aに示す例では、所定の追従処理間隔は一定の時間であり、予め設定した値は、具体例として、1000rpmとしている。この場合、追従指令値S3は、直線的に変化していることが判る。
【0049】
図3Bに示す例では、目標速度指令値S2に近づくに従って(現在速度指令値と目標速度指令値S2との差異が小さくなるに従って)、所定の追従処理間隔は小さくなる値となり、現在速度指令値と目標速度指令値S2との差異に応じて決定される値(前記現在速度指令値を前記目標速度指令値S2に近づける値)は、大きくなる値としている。この場合、追従指令値S3は、曲線的に変化していることが判る。
【0050】
このように、第1の実施形態における追従処理では、図3Aに示すように、速度指令値における回転速度と追従処理間隔との片方を変化させてもよいし、図3Bに示すように、速度指令値における回転速度と追従処理間隔との両方を変化させてもよい。回転速度と追従処理間隔との両方を変化させることによって、追従処理における回転速度の変化の度合いを調整できる。
【0051】
次に、上述したモータ駆動制御装置20の速度指令追従処理部221による追従処理の流れについて説明する。
【0052】
図4は、第1の実施の形態に係る速度指令追従処理部221による追従処理のフローチャートである。
【0053】
まず、速度指令追従処理部221が、目標速度指令値S2を取得する(ステップS101)と、取得した目標速度指令値S2と現在の速度指令値である前回の追従指令値S3とを比較して、取得した目標速度指令値S2が現在の速度指令値(前回の追従指令値S3)よりも大きいか否かを判定する(ステップS102)。
【0054】
ステップS102において、速度指令追従処理部221は、取得した目標速度指令値S2が現在の速度指令値(前回の追従指令値S3)よりも大きくないと判定した場合(ステップS102:NO)は、さらに、取得した目標速度指令値S2が現在の速度指令値(前回の追従指令値S3)よりも小さいか否かを判定する(ステップS103)。
【0055】
ステップS103において、速度指令追従処理部221は、取得した目標速度指令値S2が現在の速度指令値(前回の追従指令値S3)よりも小さくないと判定した場合(ステップS103:NO)は、取得した目標速度指令値S2が現在の速度指令値(前回の追従指令値S3)と等しいので、処理を終了する。
【0056】
一方で、ステップS102において、速度指令追従処理部221は、取得した目標速度指令値S2が現在の速度指令値よりも大きいと判定した場合(ステップS102:YES)は、記憶部230に記憶された加減算単位値や加減算間隔を参照して加算単位値と加算間隔とを設定する(ステップS104)。
【0057】
速度指令追従処理部221は、ステップS104において設定した加算単位値と加算間隔に基づいて回転速度および追従処理間隔を算出する(ステップS105)。具体的には、現在の追従指令値S3によって指定されている回転速度および追従処理間隔に対して加算単位値だけ回転速度を大きくするとともに加算間隔だけ追従処理間隔を大きくする。
【0058】
速度指令追従処理部221は、ステップS105において算出された回転速度および追従処理間隔を指定するように追従指令値S3を変更する(ステップS106)。
一方で、ステップS103において、速度指令追従処理部221は、取得した目標速度指令値S2が現在の速度指令値よりも小さいと判定した場合(ステップS103:YES)は、記憶部230に記憶された加減算単位値や加減算間隔を参照して減算単位値と減算間隔とを設定する(ステップS107)。
【0059】
速度指令追従処理部221は、ステップS107において設定した減算単位値と減算間隔に基づいて回転速度および追従処理間隔を算出する(ステップS108)。具体的には、現在の追従指令値S3によって指定されている回転速度および追従処理間隔に対して減算単位値だけ回転速度を小さくするとともに減算間隔だけ追従処理間隔を小さくする。
【0060】
速度指令追従処理部221は、ステップS108において算出された回転速度および追従処理間隔を指定するように追従指令値S3を変更する(ステップS106)。
【0061】
速度指令追従処理部221は、ステップS106の処理が終了すると、再びステップS101の処理に戻る。
【0062】
以上の追従処理によって変更された追従指令値S3に基づいて駆動制御信号生成部222が駆動制御信号Sdを生成することによって、モータ10の回転速度が目標回転速度に至るまで徐々に変更される。
【0063】
図5は、制御部200内の各構成部間の信号波形の一例を説明するための図である。
【0064】
図5には、制御部200がPWM信号Sc1として受け取っている目標速度指令値S2が、一定デューティの場合と、デューティが変化した場合と、ノイズが重畳した場合とが示されている。
【0065】
PWM信号Sc1が一定デューティの場合は、デューティ比較部211は、図5の左側のグラフに示すように、例えば、一定のデューティ比40%を示すデューティ比信号S1を速度指令変換部212に出力し、速度指令変換部212は、一定のデューティ比40%に対応する一定の目標速度指令値S2は、例えば、16000rpmとして速度指令追従処理部221に出力する。この場合、速度指令追従処理部221は、目標速度指令値S2である16000rpmと同じ一定の追従指令値S3として16000rpmを出力し続けることとなる。
【0066】
PWM信号Sc1のデューティが変化した場合は、デューティ比較部211は、図5の中央のグラフに示すように、デューティ比が、例えば、40%から80%に変化したことを示すデューティ比信号S1を速度指令変換部212に出力する。速度指令変換部212は、デューティ比が40%から80%に変化したタイミングでデューティ比に対応する目標速度指令値S2として、例えば、32000rpmを速度指令追従処理部221に出力する。この場合、速度指令追従処理部221は、現在速度指令値16000rpmに対する目標速度指令値S2の変化量16000rpmを所定割合で所定回数にわたって変化するように設定した回転速度(16000+α)rpm(αは次第に16000まで増加する値)を追従指令値S3として出力することとなる。
【0067】
PWM信号Sc1にノイズが重畳した場合は、デューティ比較部211は、図5の右側のグラフに示すように、デューティ比が、例えば、40%から0%に変化したことを示すデューティ比信号S1を速度指令変換部212に出力する。速度指令変換部212は、デューティ比が40%から0%に変化したタイミングでデューティ比に対応する目標速度指令値S2として0rpmを速度指令追従処理部221に出力する。この場合、速度指令追従処理部221は、現在速度指令値16000rpmに対する目標速度指令値S2の変化量16000rpmを所定割合で所定回数にわたって変化するように設定した回転速度(16000+α)rpm(αは次第に0まで減少する値)を追従指令値S3として出力することとなる。しかしながら、この変化はノイズによるものなので一時的に変化した後に元の値に復帰する。回転速度は一時的に変化するものの急激には変化しないため、モータ10の回転が不安定になることがない。すなわち、第1の実施形態の追従処理によればモータ10の安定した回転動作を維持することができる。
【0068】
第1の実施形態の追従処理によるモータ10の安定した回転動作の維持について、従来の移動平均処理と比較してさらに説明する。
【0069】
図6Aは、速度指令値変更時における、従来の移動平均処理による指令値と第1の実施の形態の追従処理による指令値とを比較して示す図である。
図6Bは、図6Aの指令値の変化を視覚的にグラフで示した図である。
【0070】
図7Aは、ノイズ重畳時における、従来の移動平均処理による指令値と第1の実施の形態の追従処理による指令値とを比較して示す図である。
図7Bは、図7Aの指令値の変化を視覚的にグラフで示した図である。
【0071】
図6Aから図7Bでは、速度指令追従処理部221は、図3Aと同様に、前回の追従指令値S3である現在速度指令値が目標速度指令値S2に到達するまで一定の追従処理間隔毎に予め設定した値だけ現在速度指令値を目標速度指令値S2に近づけた値を新たな追従指令値S3とする追従処理を実行している。この例では、追従処理において予め設定した値(分解能)は500rpmであり、移動平均は4ステップ分の移動平均処理をした値を用いている。
【0072】
(1)速度指令値変更時
図6Aにおいて、停止状態(目標速度指令値S2が0rpm)から目標速度指令値S2が10000rpmに変化した時について考える。目標速度指令値S2が変化してから1ステップ目は、追従処理によって得られる追従指令値S3は500rpmとなるが、移動平均処理によって得られる移動平均値は、現在の指令回転速度Va0と3ステップ前までの指令回転速度(3ステップ前の指令回転速度Va―3,2ステップ前の指令回転速度Va-2,1ステップ前の指令回転速度Va-1)の平均値であることから、2500rpmとなる。同様に、2ステップ目では、追従指令値S3は1000rpmとなるが、移動平均値は5000rpmとなる。この結果、移動平均処理の場合、4ステップ目で移動平均値が10000rpmとなるが、追従処理の場合、追従指令値S3は20ステップ目で10000rpmとなる。
【0073】
図6Bに示すように、移動平均値は4ステップで目標速度指令値S2に到達し、追従指令値S3も、20ステップで目標速度指令値S2に到達する。
また、21ステップ目に目標速度指令値S2が5000rpmに変化したとき、移動平均処理の場合、24ステップ目で移動平均値が5000rpmとなるのに対し、追従処理の場合、追従指令値S3は30ステップ目で5000rpmとなる。
すなわち、移動平均処理と追従処理のいずれの処理でも、目標速度指令値S2に到達することができることが判る。上記のように、本実施の形態に係る追従処理は、従来の移動平均処理よりも目標速度指令値S2に到達するまでに遅延が生じるが、その遅延は無視できる程度の時間である。
【0074】
(2)ノイズ重畳時
図7Aに示すように、目標速度指令値S2が10000rpmのときにノイズが重畳されて一時的に(N4ステップからN9ステップまで)目標速度指令値S2が0rpmに変化した時について考える。目標速度指令値S2が変化してから1ステップ目(N4ステップ)は、追従処理によって得られる追従指令値S3は9500rpmとなるが、移動平均処理によって得られる移動平均値は7500rpmとなる。同様に、2ステップ目(N5ステップ)では、追従指令値S3は9000rpmとなるが、移動平均値は5000rpmとなる。この結果、移動平均処理の場合、4ステップ目(N7ステップ)で移動平均値が0rpmとなるが、追従処理の場合は、ノイズの影響を受ける最後のステップである6ステップ目(N9ステップ)でも追従指令値S3は7000rpmであり、0rpmとはならない。
【0075】
図7Bに示すように、移動平均処理の場合は目標速度指令値S2が変化したステップ(N4ステップ)を含めて4ステップ(N7ステップ)でノイズの影響を完全にうけて移動平均値が0rpmに到達してしまい、影響がなくなると、再度、4ステップで元に戻るため、モータ10の回転動作が安定しないことが判る。一方で、追従処理の場合は、ノイズの影響をわずかに受けるだけでノイズによる追従指令値S3の変化が大きくならないため、モータ10の安定した回転動作の維持ができることが判る。
【0076】
以上説明した第1の実施の形態のモータ駆動制御装置20によれば、外部からの駆動指令が急激に変化しても、モータ10の安定した回転動作を維持することが可能となる。
【0077】
≪第2の実施の形態≫
次に、第2の実施の形態に係るモータ駆動制御装置20Aについて説明する。
【0078】
図8は、第2の実施の形態に係るモータ駆動制御装置20Aを備えたモータユニット1Aの構成の具体例を示す図である。
図8に示すように、モータ駆動制御装置20Aは、パルス出力回路(動作指令信号出力回路の一例)100Aと、制御部200Aと、モータ駆動部300とを備えている。
また、図9は、第2の実施の形態に係るモータ駆動制御装置20Aの制御部200Aの内部構成を示すブロック図である。
【0079】
第1の実施の形態のモータ駆動制御装置20では、モータ10の駆動に関する目標速度を指示する駆動指令信号としてPWM信号PWMが上位装置2から入力される態様であるが、第2の実施の形態のモータ駆動制御装置20Aでは、モータ10の駆動に関する目標値を目標回転位置として指示する駆動指令を含む駆動指令信号としてパルス信号(駆動指令信号の一例)STMPおよび回転方向を示す信号(以下、「回転方向信号CW/CCW」ともいう。)が上位装置2Aから入力される。第1の実施の形態のモータ駆動制御装置20では、PWM出力回路100にて上位装置2からのPWM信号PWMをもとにPWM信号(動作指令信号の一例)Sc1を生成し、指令値変換処理部210で目標速度指令値S2に変換していた。これに対し、第2の実施の形態のモータ駆動制御装置20Aでは、パルス信号STMPを入力してパルス信号(動作指令信号の一例)Sc2を生成して出力するパルス出力回路(動作指令信号出力回路の一例)100Aと、入力されたパルス信号Sc2および回転方向信号CW/CCWとを目標位置指令値S2aに変換する指令値変換処理部210Aの構成を有する点で異なる。その他は、第1の実施の形態のモータ駆動制御装置20と同じ構成であるので、その説明は省略する。
【0080】
制御部200Aは、モータ駆動制御装置20Aの動作を統括的に制御するための回路である。第2の実施の形態において、制御部200Aは、例えば、図8に示すように、インプットキャプチャ機能を有するタイマ、ROM、RAM、クロック生成回路、プロセッサ(CPU等)、入出力I/F回路がバスや専用線を介して互いに接続された構成を有するプログラム処理装置である。例えば、制御部200Aは、マイクロコントローラ(MCU:Micro Controller Unit)である。制御部200Aは、その他にも、フラッシュメモリ等の各種記憶装置と、カウンタとしてのタイマ、A/D変換回路、D/A変換回路、その他の周辺回路なども含んでいてもよい。
【0081】
なお、制御部200Aとモータ駆動部300とは、一つの半導体集積回路(IC:Integrated Circuit)としてパッケージ化された構成であってもよいし、個別の集積回路として夫々パッケージ化されて回路基板に実装され、回路基板上で互いに電気的に接続された構成であってもよい。
【0082】
パルス出力回路100Aは、外部(例えば、上位装置2A)から入力されたパルス信号STMPをもとにパルス信号Sc2を生成して、制御部200Aに入力する回路である。パルス出力回路100Aは、例えばダンピング抵抗とプルダウン抵抗とによって構成することができる。
制御部200Aは、駆動制御信号Sdを生成してモータ駆動部300に与えることにより、モータ10の通電制御を行う基本機能を有している。具体的に、制御部200Aは、入力された動作指令信号であるパルス信号Sc2および回転方向信号CW/CCWに基づいて、モータ10がパルス信号Sc2に含まれる動作指令(本実施の形態では回転位置指令)で指定された動作状態となるように駆動制御信号Sdを生成してモータ駆動部300に与える。第2の実施の形態では、パルス信号Sc2によってモータ10のステップの数を指定し、回転方向信号CW/CCWによってモータ10の回転方向を指定することによってモータ10の目標回転位置を指定している。
【0083】
また、制御部200Aは、上記基本機能に加えて、パルス信号Sc2に含まれる動作指令で指定された目標指令値が変化した場合に、目標指令値の変化量の所定割合で所定回数にわたって変化するように追従処理した指令値に応じた駆動制御信号Sdを生成する追従処理機能を有する。
【0084】
図9に示すように、制御部200Aは、上述した各機能を実現するための機能部として、例えば、割り込み回路部211Aと方向判定部212Aとカウンタ213Aとを有する指令値変換処理部210Aと、位置指令追従処理部221Aと駆動制御信号生成部222Aとを有する追従駆動制御信号生成部220Aと、記憶部230Aとを有している。
【0085】
制御部200Aの上述した各機能部は、例えば、制御部200AとしてのMCUのプログラム処理によって実現される。具体的には、制御部200AとしてのMCUを構成するプロセッサが、メモリに格納されたプログラムにしたがって各種の演算を行ってMCUを構成する各種周辺回路を制御することにより、上述した各機能部が実現される。
【0086】
指令値変換処理部210Aは、例えば、パルス出力回路100Aを入力されたパルス信号Sc2と回転方向信号CW/CCWとを受信する。パルス信号Sc2および回転方向信号CW/CCWは、動作指令信号として機能する信号であって、モータ10の動作に関する目標値を指示する信号である。パルス信号Sc2および回転方向信号CW/CCWは、例えば、モータ10の目標回転位置を指示する信号を含んでいる。
【0087】
指令値変換処理部210Aは、動作指令信号(パルス信号Sc2および回転方向信号CW/CCW)によって指定されたステップ数と回転方向を解析し、そのステップ数と回転方向に対応する回転位置の情報を目標位置指令値S2aとして出力する。具体的には、例えば、指令値変換処理部210Aにおいて、割り込み回路部211Aは、パルス信号Sc2から解析した目標位置に到達するまでのステップ数S1aをカウンタ213Aに出力し、方向判定部212Aは回転方向信号CW/CCWから正回転CWか逆回転CCWかの情報である回転方向指示信号S1bをカウンタ213Aに出力する。指令値変換処理部210Aにおいて、カウンタ213Aは、回転方向が正回転CWの場合はステップ数S1aをカウント値に加算し、回転方向が逆回転CCWの場合はステップ数S1aをカウント値に減算する。カウンタ213Aは算出したカウント値を目標位置指令値S2aとして出力する。
【0088】
追従駆動制御信号生成部220Aは、指令値変換処理部210Aから取得した目標位置指令値S2aが変化した場合に、取得した目標位置指令値S2aの変化量の所定割合で所定回数にわたって変化するように追従処理した指令値である追従指令値S3aに基づいて駆動制御信号Sdを生成する。具体的には、位置指令追従処理部221Aが、追従処理により追従指令値S3aを算出し、駆動制御信号生成部222Aがモータ10の回転位置が追従指令値S3aで特定される回転位置に一致するようにモータ10の操作量を算出し、算出した操作量に基づいて駆動制御信号Sdを生成する。なお、追従駆動制御信号生成部220Aの機能のうち追従処理の詳細については、後述する。
【0089】
記憶部230Aは、追従処理において参照される加減算単位値や加減算間隔を記憶している。加減算単位値は、目標位置指令値S2aの変化量の所定割合として加算または減算される位置を示すステップ数の大きさであり、モータ10やモータ駆動部300の仕様によって設定される。加減算間隔は、目標位置指令値S2aの変化量の所定割合を変化させる(加算または減算する)時間間隔(以下、「追従処理間隔」ともいう。)であり、モータ10やモータ駆動部300の仕様によって設定される。
【0090】
位置指令追従処理部221Aは、指令値変換処理部210Aから取得した目標位置指令値S2aが変化した場合に、記憶部230Aに記憶されている加減算単位値や加減算間隔を必要に応じて参照して追従処理を実行して追従指令値S3aを算出し、駆動制御信号生成部222Aに出力する。位置指令追従処理部221Aは、指令値変換処理部210Aから取得した目標位置指令値S2aが変化しない場合には、以前と同じ位置指令値を追従指令値S3aとして駆動制御信号生成部222Aに出力する。
【0091】
駆動制御信号生成部222Aは、位置指令追従処理部221Aから受け取った追従指令値S3aで指定される回転位置および追従処理間隔に基づいてモータ10の操作量を算出し、算出した操作量に基づいて決定されるPWM周期とオン期間を有するPWM信号を駆動制御信号Sdとして生成し、モータ駆動部300に出力する。
【0092】
次に、上述したモータ駆動制御装置20Aの位置指令追従処理部221Aによる追従処理の流れについて説明する。
【0093】
図10は、第2の実施の形態に係る位置指令追従処理部221Aによる追従処理のフローチャートである。
まず、位置指令追従処理部221Aが、目標位置指令値S2aを取得する(ステップS201)と、取得した目標位置指令値S2aと現在の位置指令値である前回の追従指令値S3aとを比較して、取得した目標位置指令値S2aが現在の位置指令値(前回の追従指令値S3a)よりも大きいか否かを判定する(ステップS202)。
【0094】
ステップS202において、位置指令追従処理部221Aは、取得した目標位置指令値S2aが現在の位置指令値(前回の追従指令値S3a)よりも大きくないと判定した場合(ステップS202:NO)は、さらに、取得した目標位置指令値S2aが現在の位置指令値(前回の追従指令値S3a)よりも小さいか否かを判定する(ステップS203)。
【0095】
ステップS203において、位置指令追従処理部221Aは、取得した目標位置指令値S2aが現在の位置指令値(前回の追従指令値S3a)よりも小さくないと判定した場合(ステップS203:NO)は、取得した目標位置指令値S2aが現在の位置指令値(前回の追従指令値S3a)と等しいので、処理を終了する。
【0096】
一方で、ステップS202において、位置指令追従処理部221Aは、取得した目標位置指令値S2aが現在の位置指令値よりも大きいと判定した場合(ステップS202:YES)は、記憶部230Aに記憶された加減算単位値や加減算間隔を参照して加算単位値と加算間隔とを設定する(ステップS204)。
【0097】
位置指令追従処理部221Aは、ステップS204において設定した加算単位値と加算間隔に基づいて回転位置および追従処理間隔を算出する(ステップS205)。具体的には、現在の追従指令値S3aによって指定されている回転位置および追従処理間隔に対して加算単位値だけ回転位置を大きくするとともに加算間隔だけ追従処理間隔を大きくする。
【0098】
位置指令追従処理部221Aは、ステップS205において算出された回転位置および追従処理間隔を指定するように追従指令値S3aを変更する(ステップS206)。
一方で、ステップS203において、位置指令追従処理部221Aは、取得した目標位置指令値S2aが現在の位置指令値よりも小さいと判定した場合(ステップS203:YES)は、記憶部230Aに記憶された加減算単位値や加減算間隔を参照して減算単位値と減算間隔とを設定する(ステップS207)。
【0099】
位置指令追従処理部221Aは、ステップS207において設定した減算単位値と減算間隔に基づいて回転位置および追従処理間隔を算出する(ステップS208)。具体的には、現在の追従指令値S3aによって指定されている回転位置および追従処理間隔に対して減算単位値だけ回転位置を戻すとともに減算間隔だけ追従処理間隔を小さくする。
【0100】
位置指令追従処理部221Aは、ステップS208において算出された回転位置および追従処理間隔を指定するように追従指令値S3aを変更する(ステップS206)。
【0101】
位置指令追従処理部221Aは、ステップS206の処理が終了すると、再びステップS201に戻る。
【0102】
以上の追従処理によって変更された追従指令値S3aに基づいて駆動制御信号生成部222Aが駆動制御信号Sdを生成することによって、モータ10の回転位置が目標回転位置に至るまで徐々に変更される。
【0103】
ここで、位置指令追従処理部221Aが、追従処理により追従指令値S3aを算出する手法について、追従処理をしない従来のモータ駆動制御装置と比較して、さらに説明する。
【0104】
図11Aは、従来のモータ駆動制御装置において目標位置指令値が変更された場合における回転位置の変化(現在位置)の一例を示す図である。
【0105】
従来のモータ駆動制御装置では、駆動制御信号生成部は、目標回転位置指令値に基づいて駆動制御信号を生成し、モータ駆動部がモータを駆動している。しかしながら、例えば、プリンタやコピー機でパスポートなどの厚い紙を印刷した場合には、負荷が大きいためすぐにモータは回転しない。このため、モータ駆動部のモータ駆動出力が大きくなってから回り出す。モータ駆動出力が大きい状態で回転するので、その結果、図11Aに示すように、目標位置指令値を超えて回転してしまうので、逆回転して目標位置指令値で指定された位置に復帰する必要があることが判る。
【0106】
図11Bは、第2の実施形態のモータ駆動制御装置20Aにおいて目標位置指令値S2aが変更された場合における追従指令値S3aの変化と回転位置の変化(現在位置)の一例を示す図である。
【0107】
位置指令追従処理部221Aは、指令値変換処理部210Aから取得した目標位置指令値S2aが変化した場合に、追従処理を実行する。追従処理は、目標位置指令値S2aが変化しても目標位置指令値S2aの変化量を一度に変化させずに、取得した目標位置指令値S2aの変化量の所定割合で所定回数にわたって変化するようにした値である追従指令値S3aを新たな追従指令値S3aとして駆動制御信号生成部222Aに出力する処理である。
【0108】
位置指令追従処理部221Aは、具体的には、前回の追従指令値S3aである現在位置指令値と新しく取得した指令値である目標位置指令値S2aとに差異がある場合に取得した目標位置指令値S2aが変化したと判断して、追従処理を実行する。
【0109】
位置指令追従処理部221Aは、追従処理として、具体的には、目標位置指令値S2aの変化量を一度に変化させずに、取得した目標位置指令値S2aの変化量の所定割合で所定回数にわたって変化するようにした値である追従指令値S3aを、新たな追従指令値S3aとして駆動制御信号生成部222Aに出力する。
【0110】
図11Bに示す追従処理では、位置指令追従処理部221Aは、前回の追従指令値S3aである現在位置指令値が目標位置指令値S2aに到達するまで所定の追従処理間隔毎に予め設定した値だけ現在位置指令値を目標位置指令値S2aに近づけた値を新たな追従指令値S3aとしている。この追従指令値S3aは、図11Bに示すように目標位置指令値S2aの変化よりも緩やかにモータ10の回転位置を変化させるので、目標位置指令値S2a付近で停止することができることが判る。
【0111】
また、他の追従処理として、位置指令追従処理部221Aは、前回の追従指令値S3aである現在位置指令値が目標位置指令値S2aに到達するまで所定の追従処理間隔毎に現在位置指令値と目標位置指令値S2aとの差異に応じて決定される値だけ現在位置指令値を目標位置指令値S2aに近づけた値を新たな追従指令値S3aとしてもよい。
【0112】
さらに、他の追従処理として、位置指令追従処理部221Aは、目標位置指令値S2aに近づくに従って(現在位置指令値と目標位置指令値S2aとの差異が小さくなるに従って)、所定の追従処理間隔は小さくなる値となり、現在位置指令値と目標位置指令値S2aとの差異に応じて決定される値(現在位置指令値を目標位置指令値S2aに近づける値)は、大きくなる値となるようにしてもよい。この場合、追従指令値S3aは、曲線的に変化することになる。
【0113】
このように、第2の実施形態における追従処理でも、目標位置指令値S2aにおける回転速度と追従処理間隔との片方を変化させてもよいし、目標位置指令値S2aにおける回転位置と追従処理間隔との両方を変化させてもよい。回転位置と追従処理間隔との両方を変化させることによって、追従処理における回転位置の変化の度合いを調整できる。
【0114】
以上で説明した第2の実施の形態のモータ駆動制御装置20Aによれば、外部からの駆動指令が急激に変化しても、モータ10の安定した回転動作を維持することが可能となる。
【0115】
≪実施の形態の拡張≫
以上、本発明者によってなされた発明を実施の形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【0116】
例えば、上記の実施の形態では、モータ10として、3相(U相、V相、およびW相)のコイル(巻線)Lu,Lv,Lwを有するブラシレスDCモータである場合を例に挙げて説明したが、モータの相数やモータの種類はこれらに限定されない。
【0117】
また、上位装置から入力される信号が、第1の実施の形態ではPWM信号である場合、第2の実施の形態ではパルス信号である場合がそれぞれ例に挙げられているが、これに限定されない。上位装置から入力される信号は、例えば、レベル変化信号などであってもよい。レベル変化信号の場合は、PWM出力回路やパルス出力回路の代わりに、AD変換器を有するレベル変化信号出力回路を用いることができる。
【0118】
なお、以上説明したモータ駆動制御装置20は、フィードバック制御機能を有していないが、例えば、モータ10の回転位置を検出して位置検出信号として出力する位置検出器を設けることによって、モータ駆動制御装置20にフィードバック制御機能を持たせることもできる。この場合、駆動制御信号生成部222は、位置検出信号に基づいてモータ10の実回転速度を算出し、算出した実回転速度が追従指令値S3で指定された回転速度に一致するように、例えば、PID(Proportional-Integral-Differential)などの制御演算処理を行って、モータ10の操作量(PWM周期およびオン期間)を算出してもよい。この場合、位置検出器としては、例えば、ホール素子、ホールIC、エンコーダ、レゾルバなどを用いることができる。
【0119】
また、上述のフローチャートは一例であって、これらに限定されるものではなく、例えば、各ステップ間に他の処理が挿入されていてもよいし、処理が並列化されていてもよい。
【符号の説明】
【0120】
1,1A…モータユニット、2,2A…上位装置、10…モータ、20,20A…モータ駆動制御装置、100…PWM出力回路(動作指令信号出力回路の一例)、100A…パルス出力回路(動作指令信号出力回路の一例)、200,200A…制御部、210,210A…指令値変換処理部、211…デューティ比較部、212…速度指令変換部、211A…割り込み回路部、212A…方向判定部、213A…カウンタ、220,220A…追従駆動制御信号生成部、221…速度指令追従処理部、221A…位置指令追従処理部、222,222A…駆動制御信号生成部、230…記憶部、300…モータ駆動部、S1…デューティ比信号、S1a…ステップ数、S1b…回転方向指示信号、S2…目標速度指令値、S2a…目標位置指令値、S3,S3a…追従指令値、PWM…PWM信号(駆動指令信号の一例)、STMP…パルス信号(駆動指令信号の一例)、Sc1…PWM信号(動作指令信号の一例)、Sc2…パルス信号(動作指令信号の一例)、Sd…駆動制御信号、CW/CCW…回転方向信号
図1
図2
図3A
図3B
図4
図5
図6A
図6B
図7A
図7B
図8
図9
図10
図11A
図11B