JP2023119319A - モータ制御装置 - Google Patents

モータ制御装置 Download PDF

Info

Publication number
JP2023119319A
JP2023119319A JP2022022150A JP2022022150A JP2023119319A JP 2023119319 A JP2023119319 A JP 2023119319A JP 2022022150 A JP2022022150 A JP 2022022150A JP 2022022150 A JP2022022150 A JP 2022022150A JP 2023119319 A JP2023119319 A JP 2023119319A
Authority
JP
Japan
Prior art keywords
mode
control
angle
pwm
motor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022022150A
Other languages
English (en)
Inventor
亮 鈴木
Akira Suzuki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2022022150A priority Critical patent/JP2023119319A/ja
Priority to US18/153,442 priority patent/US20230261603A1/en
Publication of JP2023119319A publication Critical patent/JP2023119319A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M7/00Conversion of ac power input into dc power output; Conversion of dc power input into ac power output
    • H02M7/42Conversion of dc power input into ac power output without possibility of reversal
    • H02M7/44Conversion of dc power input into ac power output without possibility of reversal by static converters
    • H02M7/48Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode
    • H02M7/53Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal
    • H02M7/537Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters
    • H02M7/539Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters with automatic control of output wave form or frequency
    • H02M7/5395Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters with automatic control of output wave form or frequency by pulse-width modulation
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M7/00Conversion of ac power input into dc power output; Conversion of dc power input into ac power output
    • H02M7/42Conversion of dc power input into ac power output without possibility of reversal
    • H02M7/44Conversion of dc power input into ac power output without possibility of reversal by static converters
    • H02M7/48Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode
    • H02M7/53Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal
    • H02M7/537Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P27/00Arrangements or methods for the control of AC motors characterised by the kind of supply voltage
    • H02P27/04Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage
    • H02P27/06Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using dc to ac converters or inverters
    • H02P27/08Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using dc to ac converters or inverters with pulse width modulation
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P27/00Arrangements or methods for the control of AC motors characterised by the kind of supply voltage
    • H02P27/04Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage
    • H02P27/06Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using dc to ac converters or inverters
    • H02P27/08Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using dc to ac converters or inverters with pulse width modulation
    • H02P27/085Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using dc to ac converters or inverters with pulse width modulation wherein the PWM mode is adapted on the running conditions of the motor, e.g. the switching frequency
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/08Arrangements for controlling the speed or torque of a single motor

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Inverter Devices (AREA)
  • Control Of Ac Motors In General (AREA)

Abstract

【課題】インバータの制御方式をPWM制御と角度同期制御との何れかに切り替えてモータを駆動するモータ制御装置において、角度タイマを備えたマイクロコンピュータを利用することなく、低コストで実現できるようにする。【解決手段】モータ制御装置は、タイマ回路60と、制御モード設定部44と、PWM制御部46と、角度算出部48と、角度同期制御部52とを備える。PWM制御部は、制御モード設定部にて設定された制御モードに応じて、角度同期制御部の動作モードを切り替え、角度同期制御部の動作モードがPWMモードであるときにPWM制御を実行する。角度同期制御部は、動作モードが角度同期モードであるときに、角度同期制御を実行する。【選択図】図2

Description

本開示は、インバータを操作してモータを駆動するモータ制御装置に関する。
特許文献1には、モータを指令トルクで駆動するための出力電圧ベクトルの変調率に応じて、インバータの制御方式をPWM制御と角度同期制御との何れかに切り替えるように構成された制御装置が開示されている。なお、PWMは、パルス幅変調:Pulse Width Modulationの略である。
この制御装置には、インバータを構成する複数のスイッチング素子の駆動信号を各制御方式に従い生成するための2つの変調部が設けられている。そして、インバータには、各変調部にて生成された駆動信号の一方が、セレクタを介して選択的に入力される。
特開2017-93029号公報
上記制御装置において、2つの変調部から、各制御方式に応じてインバータの複数のスイッチング素子をオン・オフさせる駆動信号を出力させるには、各変調部に、駆動信号の立ち上がり及び立ち下がりタイミングを検出するためのタイマ回路を設ける必要がある。具体的には、PWM制御用の変調部には、計時用のカウンタを備えたタイマ回路を設けて、所望タイミングで駆動信号を出力できるようにする必要がある。また、角度同期制御用の変調部には、モータの回転角度をカウントするカウンタを備えた角度タイマを設けて、モータの所望の回転角度で駆動信号を出力できるようにする必要がある。
上記制御装置は、通常、各種演算処理を実行可能なマイクロコンピュータにて構成されるが、汎用のマイクロコンピュータには、角度タイマは備えられていない。このため、上記制御装置を実現するには、角度タイマを備えた専用のマイクロコンピュータが必要になる。しかし、モータの制御装置を、角度タイマを備えた専用のマイクロコンピュータにて構成すると、装置構成が複雑になり、コストアップを招くという問題が生じる。
本開示の1つの局面は、インバータの制御方式をPWM制御と角度同期制御との何れかに切り替えてモータを駆動するモータ制御装置において、角度タイマを備えたマイクロコンピュータを利用することなく、低コストで実現できるようにすることを目的とする。
本開示の1つの態様によるモータ制御装置は、直流電源の正極及び負極とモータの複数の端子とを接続する複数のスイッチング素子を備えたインバータを操作して、モータを駆動するモータ制御装置である。そして、モータ制御装置は、タイマ回路(60)と、制御モード設定部(44)と、PWM制御部(46)と、角度算出部(48)と、角度同期制御部(52)と、を備える。
タイマ回路は、インバータにおいてモータの複数の端子にそれぞれ接続される正極側及び負極側の一対のスイッチング素子毎に、各スイッチング素子のオン・オフタイミングが記憶される複数のコンペアレジスタ(CM0,CM1)を備える。
また、タイマ回路は、計時用のカウンタを備える。そして、タイマ回路は、各コンペアレジスタの値とカウンタの値が一致すると、各スイッチング素子のオン・オフタイミングを表す信号を出力するよう構成される。
制御モード設定部は、外部から入力される指令トルクに基づき、モータの制御モードをPWMモードと角度同期モードとの何れかに設定するよう構成される。なお、PWMモードは、一定時間毎に所定タイミングでインバータの各スイッチング素子をオン・オフさせる制御モードである。また、角度同期モードは、モータの回転角度に応じて各スイッチング素子をオン・オフさせる制御モードである。
PWM制御部は、制御モード設定部にて設定された制御モードがPWMモードであるとき、モータを指令トルクで駆動するために各コンペアレジスタに設定すべきオン・オフタイミングを算出してタイマ回路に出力するPWM制御を、一定時間毎に実行する。
角度算出部は、モータの所定の回転角度毎に、モータを指令トルクで駆動するための各スイッチング素子のオン・オフタイミングを、モータの回転角度として算出する。
角度同期制御部は、角度算出部にて算出された回転角度で各スイッチング素子がオン・オフされるように各コンペアレジスタにオン・オフタイミングを書き込むことにより、角度同期制御を実行する。
従って、タイマ回路からは、PWM制御部にて算出されたオン・オフタイミング、若しくは、角度算出部にて算出されたオン・オフタイミング、に応じて、インバータの複数のスイッチング素子をオン・オフさせるための信号が出力されることになる。
ところで、PWM制御部及び角度同期制御部からタイマ回路のコンペアレジスタに対し、PWM制御若しくは角度同期制御のためのオン・オフタイミングを直接書き込むようにすると、制御モードの切り替え時に各制御が相互に干渉することがある。
例えば、制御モードの切り替え時に、切り替え後の制御のためにタイマ回路のコンペアレジスタに設定したオン・オフタイミングが、切り替え前の制御用のオン・オフタイミングに上書きされてしまうことがある。この場合、モータの制御が不安定になって、モータに過電流が流れ、モータに大きなトルク変動が発生する、という問題が生じる。
そこで、本開示のモータ制御装置においては、制御モードの切り替え時に各制御が相互に干渉することのないよう、タイマ回路、角度同期制御部、及びPWM制御部が、下記のように構成される。
すなわち、タイマ回路は、PWM制御部から各コンペアレジスタに向けて出力された複数のオン・オフタイミングが記憶される複数のデータレジスタ(SR0,SR1)を備える。そして、タイマ回路は、一定時間毎に、複数のデータレジスタに記憶されたオン・オフタイミングを各コンペアレジスタに書き込む。
次に、角度同期制御部は、自身の動作モードである第1動作モードがPWMモードであるときに、第1切り替え指令を受けると、次にモータが所定の回転角度位置に到達したときに、第1動作モードを角度同期モードに切り替えて、角度同期制御を開始する。
これは、角度同期制御では、モータの回転角度に応じて各スイッチング素子のオン・オフタイミングを制御するので、角度同期制御を精度よく実行するには、モータの所定の回転角度位置で角度同期制御を開始する必要があるためである。
また、角度同期制御部は、自身の動作モードである第1動作モードが角度同期モードであるときに、第2切り替え指令を受けると、第1動作モードをPWMモードに切り替えて、角度同期制御を停止する(S210)。
一方、PWM制御部は、制御モード設定部から取得した制御モードが角度同期モードであるときには、角度同期制御部に第1切り替え指令を出力して、角度同期制御部の第1動作モードがPWMモードから角度同期モードに切り替えられるまでPWM制御を継続する(S400,S500,S600-S604)。
また、PWM制御部は、制御モード設定部から取得した制御モードがPWMモードで、角度同期制御部の第1動作モードが角度同期モードであるときには、一定時間後に次のPWM制御を開始する直前に、角度同期制御部に第2切り替え指令を出力して、角度同期制御部の第1動作モードをPWMモードに切り替える(S700)。
つまり、PWM制御部は、制御モード設定部にて設定された制御モードに応じて、角度同期制御部に第1切り替え指令及び第2切り替え指令を出力することで、角度同期制御部による角度同期制御の開始及び停止を制御する。このため、PWM制御部は、角度同期制御部による角度同期制御の実行期間と重複することのないよう、PWM制御を実行できるようになる。
従って、本開示のモータ制御装置によれば、PWM制御部による制御の下に、制御モードの切り替え時に角度同期制御とPWM制御とが干渉することのないよう、各制御の実行期間を調停できることになる。
また、更に、角度同期制御部は、PWM制御部から出力された第1切り替え指令に従い第1動作モードを角度同期モードに設定すると、タイマ回路のデータレジスタに、カウンタの値と一致することのない規定値を書き込み、その後、角度同期制御を開始する(S220)。
これは、角度同期制御部の第1動作モードが角度同期モードに切り替えられて、角度同期制御部が角度同期制御を開始した際、タイマ回路のデータレジスタに、PWM制御部にて設定されたオン・オフタイミングが残っていることがあるためである。
つまり、この場合、一定時間毎の書き替えタイミングで、コンペアレジスタの値がデータレジスタの値に書き換えられてしまい、インバータ内のスイッチング素子が、その書き換えられたオン・オフタイミングでオン・オフされることがある。
そこで、角度同期制御部が第1切り替え指令に従い第1動作モードを角度同期モードに設定した際には、データレジスタに上記規定値を書き込むことで、インバータ内のスイッチング素子がPWM制御のオン・オフタイミングでオン・オフされるのを抑制する。
このように、本開示のモータ制御装置によれば、PWM制御部による角度同期制御部の動作モードの切り替え、及び、角度同期制御部によるデータレジスタへの規定値の書き込みにより、角度同期制御とPWM制御とが干渉するのを抑制することができる。従って、角度同期制御とPWM制御との干渉により、モータ制御が不安定になって、モータに過電流が流れたり、モータに大きなトルク変動が発生したりするのを抑制できる。
実施形態のモータ制御システム全体の構成を表す全体構成図である。 図1に示すモータ制御装置の構成を表すブロック図である。 制御モード設定部によるPWM制御と角度同期制御との切り替えを説明する説明図である。 デッドタイムモジュールの動作を説明するタイムチャートである。 制御モード設定部により設定される制御モードと制御方式の切り替わりタイミングとの関係を表すタイムチャートである。 制御モードが角度同期モードに変化したときのレジスタ設定動作を表すタイムチャートである。 図6に示すレジスタ設定動作の詳細を表すタイムチャートである。 15°タスクで実行される制御処理を表すフローチャートである。 サブコアで実行される制御処理を表すフローチャートである。 山谷タスクで実行される制御処理を表すフローチャートである。 図10のS400にて実行される制御モード調停処理を表すフローチャートである。 図10のS500及びS800にて実行される動作モード取得処理を表すフローチャートである。 図10のS600にて実行されるPWM用Duty設定処理を表すフローチャートである。 図10のS700にて実行されるDMAタイマ設定処理を表すフローチャートである。 図10のS900にて実行されるSR再設定処理を表すフローチャートである。
以下、図面を参照しながら、本開示の実施形態を説明する。
[実施形態]
[構成]
本実施形態のモータ制御システムは、車載主機としてモータ10を備えた車両(例えば、電気自動車やハイブリッド車)に搭載されて、モータ10を制御する制御システムである。
図1に示すように、モータ制御システムは、直流電源2、モータ10、インバータ20、及び、制御装置30を備える。なお、制御装置30は、本開示のモータ制御装置に相当する。
モータ10は、3相の交流モータジェネレータであり、車両の走行駆動源である。このため、モータ10は、車両の駆動輪を駆動するためのトルクを発生するモータの機能と、車両の運動エネルギにより駆動されて発電する発電機の機能とを備える。
直流電源2は、バッテリ4、バッテリ4から供給される直流電圧を昇圧するコンバータ6、及び、蓄電用のコンデンサ8、を備える。コンデンサ8は、コンバータ6を介してバッテリ4から入力される直流電力や、モータ10からの発電電力にて充電され、モータ10の駆動時に放電される。
インバータ20は、直流電源2とモータ10との間に接続された3相の電力変換装置である。インバータ20は、直流電源2から供給される直流電力を交流電力に変換して、交流電力をモータ10に供給する。また、インバータ20は、モータ10にて発電された交流電力を直流電力に変換して、直流電力を直流電源2へ供給する。
インバータ20は、スイッチング素子Q1~Q6と、ダイオードD1~D6とを備える。スイッチング素子Q1~Q6は、電圧制御型の半導体スイッチング素子、具体的には、Insulated Gate Bipolar Transistor(IGBT)にて構成されている。なお、スイッチング素子Q1~Q6は、Metal Oxide Semiconductor(MOS)トランジスタや、バイポーラトランジスタなどで構成されてもよい。
スイッチング素子Q1~Q3は、それぞれ、モータ10のU相、V相、W相の各端子と、直流電源2の正極端子との間に接続されている。また、スイッチング素子Q4~Q6は、それぞれ、モータ10のU相、V相、W相の各端子と、直流電源2の負極端子との間に接続されている。
従って、スイッチング素子Q1~Q3は、モータ10の各相の上アームスイッチとして機能し、スイッチング素子Q4~Q6は、モータ10の各相の下アームスイッチとして機能する。
また、ダイオードD1~D6は、それぞれ、各スイッチング素子Q1~Q6に並列接続されている。ダイオードD1~D6は、スイッチング素子Q1~Q6のオン時に流れる電流とは逆方向に電流を流すフリーホイールダイオードとして機能する。
このため、スイッチング素子Q1,Q4とダイオードD1,D4は、モータ10のU相の端子に双方向に電流を流す通電回路22として機能する。また、スイッチング素子Q2,Q5とダイオードD2,D5は、モータ10のV相の端子に双方向に電流を流す通電回路24として機能する。また、スイッチング素子Q3,Q6とダイオードD3,D6は、モータ10のW相の端子に双方向に電流を流す通電回路26として機能する。
次に、本実施形態のモータ制御システムには、状態検出用のセンサとして、回転センサ12、電流センサ14、及び、電圧センサ16が備えられている。
回転センサ12は、モータ10の図示しないロータの近傍に設けられており、ロータの回転角θeを検出し、検出した回転角θeを制御装置30へ出力する。なお、回転角θeは電気角である。回転センサ12としては、レゾルバ、エンコーダなどのセンサを採用できる。
電流センサ14は、モータ10の各相の巻線に流れる電流を検出し、検出した電流値Iu,Iv,Iwを制御装置30へ出力する。なお、電流センサ14は、モータ10の2相の巻線に流れる電流値を検出するだけでもよい。この場合、キルヒホッフの法則を用いて残りの1相の電流値が算出される。
電圧センサ16は、直流電源2からインバータ20への入力電圧を電源電圧Vinとして検出し、制御装置30へ出力する。
制御装置30は、CPU40、メモリ32、及び、GTM50を含むマイクロコンピュータを主体として構成されており、モータ10の出力トルクを指令トルクにフィードバック制御すべく、インバータ20を操作する。なお、GTMは、ジェネリックタイマモジュール(Generic Timer Module)である。
詳しくは、制御装置30は、インバータ20を構成する各スイッチング素子Q1~Q6をオン・オフすべく、上記各センサによる検出値に基づいて、各スイッチング素子Q1~Q6の駆動信号P1~P6を生成し、インバータ20に出力する。
ここで、モータ10の各相の上アーム側の駆動信号P1、P2、P3と、対応する下アーム側の駆動信号P4、P5、P6は、互いに相補的なパルス信号となっている。このため、U相のスイッチング素子Q1とQ4、V相のスイッチング素子Q2とQ5、W相のスイッチング素子Q3とQ6は、交互にオン状態とされる。
なお、指令トルクは、制御装置30よりも上位の車両制御用の制御装置から出力される。この上位の制御装置は、例えば、アクセルセンサからのアクセル信号、ブレーキスイッチからのブレーキ信号、シフトスイッチからのシフト信号などに基づき、車両の運転状態に応じた目標トルクを求め、この目標トルクを指令トルクとして出力する。
[制御装置及びGTMの機能]
図2に示すように、制御装置30において、CPU40は、トルク制御部42、制御モード設定部44、山谷タスク46、及び、15°タスク48、としての機能を有する。なお、これらの機能は、CPU40がメモリ32に記憶されたプログラムを実行することにより実現される。
トルク制御部42は、指令トルクと、モータ10の回転角θeと、モータ10の各相の電流Iu、Iv、Iwとに基づいて、インバータ20の出力電圧ベクトルの位相指令値φと、振幅指令値Vnを算出する。
つまり、トルク制御部42は、モータ10の回転角θeと電流Iu、Iv、Iwとに基づいてモータ10の実トルクを推定し、その推定した実トルクを指令トルクに制御するための操作量として、振幅指令値Vn及び位相指令値φを算出する。なお、振幅指令値Vnは、dq座標系における出力電圧ベクトルのd軸成分であるd軸電圧Vdの2乗値とq軸成分であるq軸電圧Vqの2乗値との和の平方根として定義される。
制御モード設定部44は、出力電圧ベクトルの変調率、換言すれば電圧利用率、に応じて、制御モードとして、PWM制御を行うPWMモードと、角度同期制御を行う角度同期モードとの何れか一方を設定する。
そして、CPU40は、モータ10の制御モードがPWMモードであるとき、一定時間毎に実行される山谷タスク46にて、モータ10の相毎に、モータ10を指令トルクで駆動するための各スイッチング素子Q1~Q6のオン・オフタイミングを算出する。
つまり、山谷タスク46においては、まず、トルク制御部42にて算出された振幅指令値Vn及び位相指令値φに基づいて、正弦波状のU,V,W相指令電圧VU,VV,VWを算出する。そして、その算出したU,V,W相指令電圧VU,VV,VWを、電圧センサ16にて検出された電源電圧Vinで規格化することにより、U,V,W相指令時比率DTu,DTv、DTwを算出する。
また次に、山谷タスク46は、図4に示すように、上記各相の指令時比率DTu,DTv、DTwと、PWM制御のキャリア信号である三角波と、を比較することにより、各相のスイッチング素子Q1~Q6のオン・オフタイミングを算出する。
そして、山谷タスク46は、その算出した各相のオン・オフタイミングを、パルス出力指令としてGTM50に出力することにより、GTM50から、モータ10をPWM制御にて駆動するための駆動信号P1~P6を出力させる。
なお、図4は、U相の指令時比率DTuと三角波とを比較して、U相のスイッチング素子Q1,Q4のオン・オフタイミングを算出している状態を表す。そして、三角波は、図4に示すように、増加速度と低下速度とが互いに等しい二等辺三角形形状であり、山谷タスク46は、この三角波の上下のピークタイミング毎に実行される。なお、図4に示すDUTYは、各相のスイッチング素子Q1~Q6のオン・オフタイミングを表す。
次に、CPU40は、モータ10の制御モードが角度同期モードであるとき、モータ10の所定の回転角度毎、本実施形態では電気角15度毎、に実行される15°タスク48にて、モータ10を指令トルクで駆動するためのパルスパターンを求める。なお、このパルスパターンも、山谷タスク46で算出される各スイッチング素子Q1~Q6のオン・オフタイミングと同様、モータ10の相毎に算出される。
つまり、15°タスク48は、まず、回転センサ12にて検出されるモータの回転角θeから回転角速度、換言すれば電気角速度、を求め、その回転角速度に基づき、モータ1回転当りに出力するパルス数を求める。そして、そのパルス数と、トルク制御部42にて算出された振幅指令値Vnとに基づいて、角度同期制御のためのパルスパターンを、予め設定された複数のパルスパターンの中から選択する。
15°タスク48は、その選択したパルスパターンに従い、各スイッチング素子Q1~Q6をオン・オフさせるためのパルス出力角度をGTM50に出力することで、CPU40を構成しているCPUコアとは異なるサブコア52に、角度同期制御を実行させる。
なお、上述した山谷タスク46及び15°タスク48における演算動作については、特許文献1に記載されているので、ここではより詳細な説明は省略する。本実施形態において、山谷タスク46は、本開示のPWM制御部に相当し、15°タスク48は、本開示の角度算出部に相当する。
ここで、モータ10の制御をPWM制御と角度同期制御との何れかに切り替えるのは、図3に示すように、インバータ20からの出力電圧の振幅指令値と電源電圧との比率である変調率に応じて、制御方式を切り替えるためである。
つまり、本実施形態では、モータ10の回転領域が、変調率が所定値MRth(例えば、95%)以下となる回転領域Aと、変調率が所定値MRthを越える回転領域Bとに区分される。
そして、回転領域Aでは、制御方式としてPWM制御が選択され、回転領域Bでは、制御方式として、角度同期制御が選択される。なお、これは、変調率が所定値MRthを越える回転領域Bにおいては、電圧利用率が高くなり、PWM制御でモータ10を駆動することが困難であるためである。
次に、GTM50には、サブコア52、角度検出部54、ARU-connected Timer Output Module(以下、ATOM)60、及び、Dead TIme Module(以下、DTM)70、が備えられている。
ここで、ATOM60は、インバータ20に設けられた通電回路22,24,26内のスイッチング素子、つまり、Q1とQ4、Q2とQ5、Q3とQ6を、それぞれ相補的にオン・オフさせるパルス信号Pu,Pv,Pwを出力する。なお、ATOM60は、本開示のタイマ回路に相当する。
ATOM60には、各相のパルス信号Pu,Pv,Pwを生成するために、U相用、V相用、W相用のタイマ回路62、64、66が備えられている。また、ATOM60には、計時用のタイマカウンタ68が備えられている。
U相用、V相用、W相用のタイマ回路62、64、66には、それぞれ、各相のスイッチング素子Q1とQ4、Q2とQ5、Q3とQ6のオン・オフタイミングが書き込まれるコンペアレジスタCM0,CM1が備えられている。
そして、各タイマ回路62,64,66は、コンペアレジスタCM0とタイマカウンタ68の値が一致するとパルス信号Pu,Pv,Pwを立ち上げ、コンペアレジスタCM1とタイマカウンタ68の値が一致すると、パルス信号Pu,Pv,Pwを立ち下げる。
従って、山谷タスク46がPWM制御を実施しているときには、山谷タスク46にて算出されたU,V,W相のオン・オフタイミングが、対応するタイマ回路62、64、66のコンペアレジスタCM0、CM1に書き込まれる。
そして、各タイマ回路62,64,66からは、図4に示すように、コンペアレジスタCM0,CM1に書き込まれたオン・オフタイミングに応じて、パルス信号Pu,Pv,Pwが出力される。なお、図4は、U相用のタイマ回路62から出力されるパルス信号Puを表している。
次に、DTM70は、各タイマ回路62,64,66から出力されるパルス信号Pu,Pv,Pwに基づき、各相のスイッチング素子Q1とQ4、Q2とQ5、Q3とQ6を、それぞれ、相補的にオン・オフさせる駆動信号P1~P6を生成する。
また、DTM70は、スイッチング素子Q1とQ4、Q2とQ5、Q3とQ6が、それぞれ、同時にオン状態となることのないよう、各スイッチング素子Q1~Q6に出力される駆動信号P1~P6の立上がりを所定のデッドタイムだけ遅延させる。
つまり、DTM70は、図4に示すように、タイマ回路62,64,66から入力されたパルス信号Pu,Pv,Pwの立上がりを所定のデッドタイムだけ遅延させて、上アームスイッチであるスイッチング素子Q1~Q3の駆動信号P1~P3を生成する。
また、下アームスイッチであるスイッチング素子Q4~Q6の駆動信号P4~P6については、タイマ回路62,64,66から入力されたパルス信号Pu,Pv,Pwを反転させ、その立上がりを所定のデッドタイムだけ遅延させることにより生成する。
この結果、各相用のスイッチング素子Q1とQ4、Q2とQ5、Q3とQ6が、同時にオン状態になるのを抑制できる。
次に、サブコア52及び角度検出部54は、15°タスク48から出力された各相のパルス出力角度で、各タイマ回路62,64,66からパルス信号Pu,Pv,Pwを出力させるために設けられている。
つまり、ATOM60は、計時用のタイマカウンタ68を使ってオン・オフタイミングを検出することで、パルス信号Pu,Pv,Pwを発生するものであり、モータ10の回転角度に応じてパルス信号Pu,Pv,Pwを生成することができない。
そこで、本実施形態では、角度検出部54が回転センサ12からの検出信号に基づきモータ10の回転角度を監視する。そして、サブコア52が、角度検出部54にて監視されているモータ10の回転角度が各相のパルス出力角度と一定すると、対応するタイマ回路62,64,66からパルス信号Pu,Pv,Pwを発生させる。
具体的には、サブコア52は、モータ10の回転角度が各相のパルス出力角度と一致すると、各相のコンペアレジスタCM0又はCM1に所定値を設定することで、対応するタイマ回路62,64,66から即座にパルス信号Pu,Pv,Pwを出力させる。
また、サブコア52は、角度同期制御を適正に実施できるように、モータ10の回転角度が、電気角0°、60°、120°、180°、240°、300°であるときに、角度同期制御を開始する。なお、サブコア52は、15°タスク48にて算出されたパルスパターンに従い角度同期制御を実行するものであることから、本開示の角度同期制御部に相当する。
一方、山谷タスク46は、ATOM60の各相のタイマ回路62、64、66に設けられたシャドウレジスタSR0,SR1に、PWM制御のためのオン・オフタイミングを書き込むことで、PWM制御を実施するように構成されている。なお、シャドウレジスタSR0,SR1は、本開示のデータレジスタに相当する。
ATOM60において、山谷タスク46にて各相のシャドウレジスタSR0,SR1に書き込まれたオン・オフタイミングは、山谷タスク46の実行周期と同じ一定時間毎にコンペアレジスタCM0,CM1に書き込まれる。
このため、制御モードがPWMモードであるとき、ATOM60からは、山谷タスク46がシャドウレジスタSR0,SR1に書き込んだオン・オフタイミングでパルス信号Pu,Pv,Pwが出力される。
ところで、コンペアレジスタCM0,CM1は、シャドウレジスタSR0,SR1にオン・オフタイミングが書き込まれてから所定の時間が経過してから、更新される。このため、制御モードの切り替え時には、ATOM60から出力されるパルス信号Pu,Pv,Pwが、制御モードの切り替え前の他の制御用のものとなって、PWM制御と角度同期制御とが相互干渉することがある。
このようにPWM制御と角度同期制御との相互干渉が生じると、モータ10の制御が不安定になって、モータ10に過電流が流れ、モータ10に大きなトルク変動が発生する、という問題が生じる。そこで、本実施形態では、PWM制御と角度同期制御とが相互干渉することのないように、山谷タスク46及びサブコア52が動作する。
すなわち、図5に示すように、制御モード設定部44にて設定される制御モードがPWMモードから角度同期モードに変化すると、山谷タスク46は、時点t1で角度同期要求が入力されたと判断して、サブコア52に角度同期モードへの切り替え指令を出力する。なお、この角度同期モードへの切り替え指令は、本開示の第1切り替え指令に相当する。
すると、サブコア52は、モータ10の回転角度が角度同期制御の開始が許可された回転角度、例えば60°になった時点t2で、自身の動作モードをPWMモードから角度同期モードに切り替え、角度同期制御を開始する。なお、サブコア52の動作モードは、本開示の第1動作モードに相当する。
一方、例えば、時点t3にて、制御モード設定部44にて設定される制御モードが角度同期モードからPWMモードに変化すると、15°タスク48では時点t3にてPWM要求が入力されたと判断する。また、山谷タスク46では、時点t4にてPWM要求が入力されたと判断する。
そして、山谷タスク46は、一定時間後の次の開始タイミングである時点t5で、PWM制御を開始できるように、その開始タイミングの直前、例えば1μs前に、サブコア52が角度同期制御を停止するように、角度同期制御の停止指令をサブコア52に出力する。なお、この停止指令は、本開示の第2切り替え指令に相当する。
すると、サブコア52は、自身の動作モードをPWMモードに切り替え、角度同期制御を停止する。このため、サブコア52は、PWM制御の次の開始タイミングである時点t5よりも所定時間δt前に角度同期制御を停止し、山谷タスク46は、時点t5でPWM制御を開始できるようになる。
よって、本実施形態によれば、山谷タスク46によるPWM制御と、サブコア52による角度同期制御とが、同時に実行されるのを抑制し、これら各制御を適正に実行させることができる。
また、山谷タスク46は、第2切り替え指令としての停止指令をサブコア52に出力するのに、ATOM60に設けられたDMAタイマ69を利用する。DMAは、ダイレクトメモリアクセス:Direct Memory Accessの略である。
つまり、DMAタイマ69は、上記各タイマ回路62~66と同様、コンペアレジスタCM0,CM1を備える。そして、山谷タスク46はDMAタイマ69のコンペアレジスタCM0に、DMAトリガの出力開始タイミングとして、例えば、時点「t5-1μs」を設定する。また、山谷タスク46は、DMAタイマ69のコンペアレジスタCM1に、DMAトリガの出力停止タイミングとして、時点t5を設定する。
この結果、DMAタイマ69からは、PWM制御の次の開始タイミングの直前に、メモリ32のDMAコントローラ(以下、DMAC)34にDMAトリガが出力される。すると、DMAC34は、DMAトリガを受けて、メモリ32の所定領域に記憶された停止指令をサブコア52にDMA転送させる。
従って、CPU40は、15°タスク48に停止指令の出力タイミングを監視させることなく、サブコア52に所望のタイミングで停止指令を入力することができ、処理負荷を軽減できる。
また、サブコア52に停止指令を出力してから、山谷タスク46によるPWM制御が開始されるまでの制御停止期間は、DMAタイマ69のコンペアレジスタCM0,CM1への設定タイミングにより任意に設定できる。このため、制御停止期間は、制御装置30の設計時に、制御の停止によって過電流や大きなトルク変動が発生することのないよう、適宜調整することができる。
また、図6に示すように、山谷タスク46は、時点t01で制御モード設定部44から角度同期要求を受けて、サブコア52に切り替え指令を出力したときには、その後、サブコア52の動作モードが角度同期モードに切り替えられるまで、PWM制御を継続する。つまり、ATOM60の各相のタイマ回路62,64,66のシャドウレジスタSR0,SR1へのオン・タイミングの書き込みを継続する。
この結果、制御モード設定部44にて設定される制御モードがPWMモードから角度同期モードに変化した際に、サブコア52で角度同期制御が開始されるまで、モータ10の制御が停止されるのを抑制できる。
一方、サブコア52は、山谷タスク46からの切り替え指令により、自身の動作モードがPWMモードから角度同期モードに切り替わると(時点t02)、各相のタイマ回路62,64,66のシャドウレジスタSR0,SR1に規定値を書き込む。
この規定値は、タイマカウンタ68の値と一致することのない値、換言すればコンペアしない値であり、例えば,最大値「FFFFFFF」が用いられる。そして、サブコア52は、自身の動作モードが角度同期モードに切り替わって、各相のシャドウレジスタSR0,SR1に規定値を書き込むと、角度同期制御による各相のコンペアレジスタCM0,CM1への出力を開始する。
このため、サブコア52が、15°タスク48にて算出されたパルス出力角度に応じたパルス信号をATOM60から出力させるまでの間に、コンペアレジスタCM0,CM1にPWM制御用のオン・オフタイミングが書き込まれるのを抑制できる。
つまり、サブコア52が角度同期制御を開始する際、シャドウレジスタSR0、SR1にPWM制御用のオン・オフタイミングが残っていると、サブコア52がATOM60からパルス信号を出力させる前に、ATOM60からパルス信号が出力されることがある。
そこで、サブコア52は、角度同期制御を開始する前に、各相のシャドウレジスタSR0、SR1に規定値を書き込むことで、ATOM60から、角度同期制御用ではないパルス信号が出力されるのを抑制するのである。従って、本実施形態によれば、このサブコア52の動作によっても、制御モードの切り替え時に、PWM制御と角度同期制御との相互干渉が生じるのを抑制できる。
なお、角度同期制御の開始時に、サブコア52が各相のシャドウレジスタSR0、SR1に規定値を書き込むことにより、角度同期制御の開始が遅延されるが、その遅延時間は極めて短いことから、モータ制御が不安定になることはない。
上記のように、各レジスタSR0,SR1,CM0,CM1への書き込みを行う場合、シャドウレジスタSR0とSR1の書き込み順、または、コンペアレジスタCM0とCM1の書き込み順は、角度同期制御開始時のパルスのエッジ方向に応じて変更してもよい。
また、角度同期制御開始の遅延を許容できれば、サブコア52は、コンペアレジスタCM0とCM1に対し、更に冗長に規定値(FFFFFF)を書き込みしてから、立ち上がりエッジもしくは立ち下がりエッジの指令を出力するようにしてもよい。
また、60°毎の所定の回転角度位置にて、サブコア52の動作モードがPWMモードから角度同期モードに切り替わって、サブコア52が、各相のシャドウレジスタSR0、SR1に規定値を書き込むようにしても、規定値が書き換えられることがある。
つまり、図7に示すように、サブコア52の動作モードが角度同期モードに切り替わった時点t02で、山谷タスク46は、時点t01で開始したPWM制御により、各相のシャドウレジスタSR0、SR1への書き込み途中であることがある。
この場合、サブコア52が、角度同期制御の開始時に、各相のシャドウレジスタSR0、SR1に規定値を書き込んでも、一部のシャドウレジスタSR0、SR1に、山谷タスク46によるPWM制御用のオン・オフタイミングが書き込まれる。
そこで、山谷タスク46は、PWM制御により各相のシャドウレジスタSR0、SR1にPWM制御用のオン・オフタイミングを書き込んだ後(時点t12)、サブコア52の動作モードがPWMモードから角度同期モードに変化しているか否かを確認する。そして、サブコア52の動作モードがPWMモードから角度同期モードに変化している場合には、各相のシャドウレジスタSR0、SR1に規定値を書き込む、SR再設定処理を行う。
このため、本実施形態によれば、この山谷タスク46によるSR再設定処理によって、制御モードの切り替え時に、PWM制御と角度同期制御との相互干渉が生じるのを、より良好に抑制できる。
[制御処理]
次に、CPU40において、上述した山谷タスク46及び15°タスク48としての機能を実現するために実行される制御処理、及び、サブコア52において実行される制御処理について説明する。
図8に示すように、15°タスク48としての機能は、まず、S110にて角度同期制御前処理を実行し、S120にて、制御モード調停処理を実行し、S130にて、角度同期制御用のパルス出力角度算出処理を実行する、といった手順で実現される。
S110の角度同期制御前処理では、上述したように、モータの回転角速度に基づき、モータ1回転当りに出力するパルス数を求め、そのパルス数と、トルク制御部42にて算出された振幅指令値Vnとに基づいて、パルスパターンを選択する。
S120の制御モード調停処理では、制御モード設定部44にて角度同期モードが設定されてから、サブコア52が角度同期制御を停止するまで、自身の動作モードを角度同期モードに設定し、それ以外の期間は、自身の動作モードをPWMモードに設定する。
S130のパルス出力角度算出処理では、自身の動作モードが角度同期モードであるとき、角度同期制御前処理にて選択された各相のパルスパターンに従い、次のパルス出力角度を特定して、サブコア52に出力する。なお、S110及びS130の処理は、モータ10の相毎に実施される。
次に、サブコア52は、図9に示すように、S210の制御モード確認処理と、S220の角度同期制御用パルス出力タイミング指令処理とを、繰り返し実行する。
S210の制御モード確認処理では、山谷タスク46からの動作モードの切り替え指令若しくは停止指令の入力を確認する。
そして、サブコア52自身の動作モードがPWMモードであるときに、山谷タスク46から動作モードの切り替え指令を受けると、60°毎の次の回転角度位置にて、自身の動作モードを角度同期モードに切り替える。
また、サブコア52自身の動作モードが角度同期モードであるときに、山谷タスク46から停止指令を受けると、直ぐに、自身の動作モードをPWMモードに切り替える。
次に、S220の角度同期制御用パルス出力タイミング指令処理では、自身の動作モードが角度同期モードであるとき、角度検出部54から現在のモータ10の回転角度を取得する。
そして、その取得した回転角度と15°タスク48から入力されたパルス出力角度とが一致すると、一致したパルス出力角度に対応する相のコンペアレジスタCM0又はCM1に値1のカウント値を設定することで、パルス信号を出力させ、S210に移行する。
具体的には、対応する相のパルス信号を立ち上げる場合には、コンペアレジスタCM0に値1を設定し、コンペアレジスタCM1にコンペアしない値(例えば、FFFFFFF)を設定する。また、対応する相のパルス信号を立ち下げる場合には、コンペアレジスタCM1に値1を設定し、コンペアレジスタCM0にコンペアしない値を設定する。この結果、値1が設定されたコンペアレジスタCM0又はCM1から、パルス信号の立ち上げ或いは立ち下げを表す信号が出力され、ATOM60から各相のパルス信号Pu,Pv,Pwが出力されるようになる。
また、S220にて、角度検出部54から取得した回転角度と15°タスク48から入力されたパルス出力角度とが一致しない場合には、ATOM60からのパルス信号Pu,Pv,Pwの出力を変化させることなく、S210に移行する。
次に、CPU40において、山谷タスク46としての機能は、PWM制御のキャリア信号である三角波の上下のピークタイミング毎、つまり一定時間毎に、図10に示す手順で制御処理を実行することにより、実現される。
図10に示すように、山谷タスク46の制御処理では、まずS300にて、PWM制御による各相のスイッチング素子Q1~Q6のオン・オフタイミングを算出する、Duty値算出処理を実行する。
すなわち、山谷タスク46は、S300のDuty値算出処理において、まず、Duty振幅指令値Vn及び位相指令値φに基づいて、U,V,W相指令電圧VU,VV,VWを算出する。そして、その算出したU,V,W相指令電圧VU,VV,VWを電源電圧Vinで規格化することにより、U,V,W相指令時比率DTu,DTv、DTwを算出する。
また、Duty算出処理では、その算出した各相の指令時比率DTu,DTv、DTwと三角波とを比較することで、各相のスイッチング素子のオン・オフタイミングを、Duty値としてを算出する。
次に、S400では、図11に示す手順で、制御モード調停処理を実行する。この制御モード調停処理は、制御モード設定部44にて設定された制御モードに基づき、サブコア52の動作モードを角度同期モードに切り替えか否かを判断する。
すなわち、制御モード調停処理では、まずS410にて、制御モード設定部44からのPWM制御及び角度同期制御の制御要求を取得する。そして、続くS420では、S410にて取得した制御要求に基づき、PWM要求がオフ状態、角度同期要求がオン状態であるか否か、つまり、制御モード設定部44からの制御要求が角度同期制御の制御要求であり、PWM制御の制御要求ではないこと、を確認する。
S420にて、PWM要求がオフ状態で、角度同期要求がオン状態であると判断されると、S430に移行して、制御モード設定部44から要求された制御モードは角度同期モードであると設定して、S440に移行する。
S440では、制御モードが角度同期モードであるので、サブコア52に切り替え指令を出力することで、サブコア52の動作モードを角度同期モードに設定し、制御モード調停処理を終了する。
なお、S440での切り替え指令の出力により、サブコア52の動作モードは、60°毎の次の回転角度位置にて、PWMモードから角度同期モードに切り替えられる。
一方、S420にて、PWM要求がオフ状態で、角度同期要求がオン状態ではないと判断されると、S450に移行して、PWM要求がオン状態で、角度同期要求がオフ状態であるか否かを判断する。
そして、PWM要求がオン状態で、角度同期要求がオフ状態である場合には、S460に移行して、制御モード設定部44から要求された制御モードは、PWMモードであると設定し、制御モード調停処理を終了する。
また、S450にて、PWM要求と角度同期要求とが共にオン状態又はオフ状態であると判断されると、制御モード設定部44からの制御要求は異常であるので、制御モードを設定することなく、制御モード調停処理を終了する。
次に、山谷タスク46において、S400の制御モード調停処理が終了すると、S500に移行し、図12に示す手順で、動作モード取得処理を実行する。
なお、動作モード取得処理は、山谷タスク46の一定時間毎の動作開始時だけでなく、動作終了時にもS800にて実行される。このため、以下の説明では、S500の処理を開始時動作モード取得処理、S800の処理を終了時動作モード取得処理、ともいう。
図12に示すように、動作モード取得処理では、まずS510にて、制御モード調停処理のS430又はS460にて設定した制御モードを読み込み、サブコア52から、サブコア52自身の動作モードを読み込む。
なお、S510にてサブコア52から取得したサブコア52自身の動作モードは、本開示の第1動作モードに相当し、以下の処理で設定される山谷タスク46自身の動作モードは、本開示の第2動作モードに相当する。
次に、S520では、S510にて取得した制御モードと、サブコア52の動作モードとの少なくとも一方が、PWMモードであるか否かを判断する。
そして、S520にて、S510で取得した制御モードとサブコア52の動作モードの少なくとも一方がPWMモードであると判断されると、S530に移行して、山谷タスク46自身の動作モードをPWMモードに設定し、動作モード取得処理を終了する。
また、S520にて、S510で取得した制御モードとサブコア52の動作モードの両方が角度同期モードであると判断されると、S540に移行して、山谷タスク46自身の動作モードを角度同期モードに設定し、動作モード取得処理を終了する。
このように、山谷タスク46において、S500にて開始時動作モード取得処理が実行されると、続くS600,S602,S604にて、順次、U相、V相、W相のPWM用Duty設定処理が実行される。
U相のPWM用Duty設定処理においては、図13に示すように、まずS610にて、S500の開始時動作モード取得処理にて設定された山谷タスク46自身の動作モード、つまり開始時動作モードが、PWMモードであるか否かを判断する。
そして、S610にて開始時動作モードがPWMモードであれば、S620に移行し、PWM制御を実行すべく、U相のタイマ回路62のシャドウレジスタSR0,SR1に、S300にて算出したU相のオン・オフタイミングを書き込み、S630に移行する。
一方、S610にて開始時動作モードはPWMモードではないと判断されると、S620の処理を実行することなく、S630に移行する。
そして、S630では、S300にて算出したU相のオン・オフタイミングを、再設定用のオン・オフタイミングとして、メモリ32の所定の記憶領域に記憶し、PWM用Duty設定処理を終了する。
なお、S602で実行されるV相のPWM用Duty設定処理、及び、S604で実行されるW相のPWM用Duty設定処理は、図13に示したU相のPWM用Duty設定処理と同様の手順で実行されるので、説明は省略する。
次に、山谷タスク46において、S600~S604のPWM用Duty設定処理が実行されると、S700に移行し、DMAタイマ設定処理が実行される。
図14に示すように、DMAタイマ設定処理においては、まず710にて、S500にて設定された、山谷タスク46自身の開始時制御モードを読み込む。そして、続くS720では、S710にて読み込んだ開始時動作モードがPWMモードであり、且つ、サブコア52の動作モードが角度同期モードであるか否かを判断する。
開始時動作モードがPWMモードで、サブコア52の動作モードが角度同期モードである場合には、サブコア52による角度同期制御を停止させて、山谷タスク46によるPWM制御を開始する必要がある。
このため、S720にて、開始時動作モードがPWMモードであり、且つ、サブコア52の動作モードが角度同期モードであると判断されると、S730に移行する。S730では、次に山谷タスク46が制御処理を開始する直前に停止指令が出力されるよう、DMAタイマ69をセットする。
この結果、次に山谷タスク46が制御処理を開始する直前に、DMAタイマ69からDMAトリガが出力され、DMAC34が、メモリ32の所定領域に記憶された停止指令をサブコア52にDMA転送させる。従って、サブコア52は、第2切り替え指令としての停止指令を受けて、角度同期制御の実行を停止することになり、山谷タスク46は、次に制御処理を実行することにより、PWM制御を実施できるようになる。
このように、山谷タスク46において、S700にてDMAタイマ設定処理が実行されると、S800に移行して、終了時動作モード取得処理を実行する。この終了時動作モード取得処理は、S500の開始時動作モード取得処理と同様に、図12に示す手順で実行される。
S800で終了時動作モード取得処理が実行されると、山谷タスク46は、最後に、S900のSR再設定処理を実行し、制御処理を実行する。
SR再設定処理は、終了時動作モード取得処理にて設定された終了時動作モードが、開始時動作モードから変化している場合に、次回、変化後の動作モードに対応して、PWM制御又は角度同期制御を適正に実施できるようにする処理である。
図15に示すように、SR再設定処理においては、まずS910にて、開始時動作モードが角度同期モードであり、且つ、終了時動作モードがPWMモードであるか否かを判断する。そして、S910にて、開始時動作モードが角度同期モードで、終了時動作モードがPWMモードである、と判断されると、S920に移行する。
S920では、各相のPWM用Duty設定処理の実行時に、図13に例示したS630の処理にてメモリ32に記憶した、PWM制御用のオン・オフタイミングを読み込み、各相のシャドウレジスタSR0,SR1に書き込む。
そして、続くS930では、図14のS730の処理と同様の手順で、次に山谷タスク46が動作を開始する直前に停止指令が出力されるよう、DMAタイマ69をセットし、SR再設定処理を終了する。
この結果、山谷タスク46の動作中に動作モードが角度同期モードからPWMモードに変更されたときには、次に山谷タスク46を開始する直前にサブコア52の動作モードをPWMモードに切り替えることができる。
また、山谷タスク46が次に制御処理を開始するときには、S920の処理により、各相のシャドウレジスタSR0,SR1に、PWM制御用のオン・オフタイミングが事前に書き込まれているので、PWM制御を適正に開始することができる。
次に、S910にて、開始時動作モードが角度同期モードではない、或いは、終了時動作モードがPWMモードではない、と判断されると、S940に移行する。S940では、開始時動作モードがPWMモードで、サブコア動作モードが角度同期モードであり、且つ、終了時動作モードが角度同期モードであるか否かを判断する。
S940にて、開始時動作モードがPWMモード、サブコア動作モードが角度同期モード、終了時動作モードが角度同期モードであると判断されると、S950に移行し、S940にてこのように判断されなければ、SR再設定処理を終了する。
S950では、各相のシャドウレジスタSR0,SR1に、上述した規定値を書き込む。そして、続くS960では、DMAタイマ69をクリアすることで、DMAC34の動作によって停止指令が出力されるのを禁止し、SR再設定処理を終了する。
従って、開始時動作モードがPWMモードであるとき、サブコア52の動作モードが角度同期モードで、山谷タスク46の動作モードが角度同期モードに変化した場合には、サブコア52による角度同期制御を速やかに開始させることができる。
また、このようにサブコア52が角度同期制御を開始させる際には、S950にて、各相のシャドウレジスタSR0,SR1に規定値を書き込むことから、各相のコンペアレジスタCM0,CM1がPWM制御用に書き換えられるのを抑制できる。従って、サブコア52による角度同期制御を適正に実施させることができる。
[効果]
以上説明したように、本実施形態の制御装置30においては、山谷タスク46がサブコア52の動作モードを切り替え、サブコア52は、動作モードの切り替えにより角度同期制御を開始する際に、各相のシャドウレジスタSR0,SR1に規定値を書き込む。このため、本実施形態の制御装置30によれば、角度同期制御とPWM制御とが相互に干渉するのを抑制することができる。
また、山谷タスク46は、制御終了時の動作モードが制御開始時の動作モードから変化しているときには、SR再設定処理にて、各相のシャドウレジスタSR0,SR1にPWM制御用のオン・オフタイミング若しくは規定値を再設定する。
このため、山谷タスク46若しくはサブコア52は、山谷タスク46の制御終了時の動作モードに応じて、PWM制御若しくは角度同期制御を速やかに開始することができ、しかも、その制御開始時に各制御が相互に干渉するのを抑制できる。
よって、本実施形態の制御装置30によれば、一般的なマイクロコンピュータに設けられている一つのタイマ回路を使って、角度同期制御とPWM制御を選択的に実行できるだけでなく、これらの制御の干渉により、モータ制御が不安定になるのを抑制できる。
また、特に、本実施形態の制御装置30は、車載主機であるモータ10を制御するものであることから、モータに流れる過電流やトルク変動を抑えて、安全な車両走行を実現することができ、しかも、制御装置30のコストダウンを図ることができる。
[他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
例えば、上記実施形態では、制御方式は、図3に示すように4段階に切り替えられるものとして説明したが、この制御方式の切り替えは一例であり、本開示の技術は、制御方式をPWM制御と角度同期制御との何れかに切り替える制御装置であれば適用できる。
また、上記実施形態では、制御装置30における各機能は、CPU40若しくはサブコア52にて実行される制御処理、換言すれば、プログラムの実行により実現されるものとして説明した。しかし、制御装置30における機能の一部は、ハードウェア論理回路によって実現されてもよい。
上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。
また、本開示は、モータ制御装置の他、制御システム、モータ制御装置としてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、モータ制御方法など、種々の形態で実現することもできる。
10…モータ、20…インバータ、30…制御装置、32…メモリ、34…DMAC、40…CPU、44…制御モード設定部、46…山谷タスク、48…15°タスク、52…サブコア、60…ATOM、62~66…タイマ回路、68…タイマカウンタ、69…DMAタイマ、CM0,CM1…コンペアレジスタ、SR0,SR1…シャドウレジスタ。

Claims (4)

  1. 直流電源の正極及び負極とモータの複数の端子とを接続する複数のスイッチング素子を備えたインバータを操作して、前記モータを駆動するモータ制御装置であって、
    前記インバータにおいて前記モータの前記複数の端子にそれぞれ接続される正極側及び負極側の一対のスイッチング素子毎に、前記各スイッチング素子のオン・オフタイミングが記憶される複数のコンペアレジスタ(CM0,CM1)を備えると共に、計時用のカウンタを備え、前記各コンペアレジスタの値と前記カウンタの値が一致すると、前記各スイッチング素子のオン・オフタイミングを表す信号を出力するよう構成されたタイマ回路(60)と、
    外部から入力される指令トルクに基づき、前記モータの制御モードを、一定時間毎に所定タイミングで前記各スイッチング素子をオン・オフさせるPWMモードと、前記モータの回転角度に応じて前記各スイッチング素子をオン・オフさせる角度同期モードとの何れかに設定するように構成された制御モード設定部(44)と、
    前記制御モード設定部にて設定された前記制御モードが前記PWMモードであるとき、前記モータを前記指令トルクで駆動するために前記各コンペアレジスタに設定すべきオン・オフタイミングを算出して前記タイマ回路に出力するPWM制御を、前記一定時間毎に実行するよう構成されたPWM制御部(46)と、
    前記モータの所定の回転角度毎に、前記モータを前記指令トルクで駆動するための前記各スイッチング素子のオン・オフタイミングを、前記モータの回転角度として算出するよう構成された角度算出部(48)と、
    前記角度算出部にて算出された前記回転角度で前記各スイッチング素子がオン・オフされるように前記各コンペアレジスタに前記オン・オフタイミングを書き込む角度同期制御、を実行するよう構成された角度同期制御部(52)と、
    を備え、
    前記タイマ回路は、前記PWM制御部から前記各コンペアレジスタに向けて出力された複数のオン・オフタイミングが記憶される複数のデータレジスタ(SR0,SR1)を備え、前記一定時間毎に、前記複数のデータレジスタに記憶された前記オン・オフタイミングを前記各コンペアレジスタに書き込むように構成され、
    前記角度同期制御部は、自身の動作モードである第1動作モードが前記PWMモードであるとき、第1切り替え指令を受けると、次に前記モータが所定の回転角度位置に到達したときに、前記第1動作モードを前記角度同期モードに切り替えて、前記角度同期制御を開始し、前記第1動作モードが前記角度同期モードであるとき、第2切り替え指令を受けると、前記第1動作モードを前記PWMモードに切り替えて、前記角度同期制御を停止する(S210)、ように構成され、
    前記PWM制御部は、
    前記制御モード設定部から取得した前記制御モードが前記角度同期モードであるときには、前記角度同期制御部に前記第1切り替え指令を出力して、前記角度同期制御部の前記第1動作モードが前記PWMモードから前記角度同期モードに切り替えられるまで前記PWM制御を継続し(S400,S500,S600-S604)、
    前記制御モード設定部から取得した前記制御モードが前記PWMモードで、前記角度同期制御部の前記第1動作モードが前記角度同期モードであるときには、前記一定時間後に次の前記PWM制御を開始する直前に、前記角度同期制御部に前記第2切り替え指令を出力して、前記角度同期制御部の前記第1動作モードを前記PWMモードに切り替える(S700)、
    ように構成され、
    前記角度同期制御部は、前記PWM制御部から出力された前記第1切り替え指令に従い前記第1動作モードを前記角度同期モードに設定すると、前記タイマ回路の前記データレジスタに、前記カウンタの値と一致することのない規定値を書き込み、その後、前記角度同期制御を開始する(S220)ように構成されている、モータ制御装置。
  2. 請求項1に記載のモータ制御装置であって、
    前記PWM制御部は、
    前記一定時間毎の動作開始時と動作終了時に、それぞれ、前記制御モード設定部から前記制御モードを取得して前記角度同期制御部の前記第1動作モードと比較し、前記制御モードと前記第1動作モードが共に前記角度同期モードであるときには、自身の動作モードである第2動作モードを前記角度同期モードに設定し、前記制御モードと前記第1動作モードの少なくとも一方が前記PWMモードであるときには、前記第2動作モードを前記PWMモードに設定し(S500)、
    前記PWM制御で前記タイマ回路の前記各データレジスタに書き込んだオン・オフタイミングを再設定用データとして記憶し(S600-S604)、
    前記動作開始時に設定された前記第2動作モードが前記角度同期モードで、前記動作終了時に設定された前記第2動作モードが前記PWMモードであるときには、前記再設定用データを、前記各データレジスタに書き込み、前記一定時間後に動作を開始する直前に、前記角度同期制御部に前記第2切り替え指令を出力し(S700)、
    前記動作開始時に設定された前記第2動作モードが前記PWMモードで、前記角度同期制御部の前記第1動作モードが前記角度同期モードであり、前記動作終了時に設定された前記第2動作モードが前記角度同期モードであるときには、前記タイマ回路の前記データレジスタに、前記規定値を書き込む(S900)、
    ように構成されている、モータ制御装置。
  3. 請求項1又は請求項2に記載のモータ制御装置であって、
    前記PWM制御部は、前記角度同期制御部に前記第2切り替え指令を出力するタイミングを、前記タイマ回路(69)に設定し、該設定したタイミングで前記タイマ回路から前記角度同期制御部に前記第2切り替え指令を出力させる、ように構成されている、モータ制御装置。
  4. 請求項1~請求項3の何れか1項に記載のモータ制御装置であって、
    前記モータ制御装置は、前記タイマ回路を含むマイクロコンピュータにて構成されており、前記角度同期制御部は、前記PWM制御部として機能するCPUコアとは異なるコアにて構成されている、モータ制御装置。
JP2022022150A 2022-02-16 2022-02-16 モータ制御装置 Pending JP2023119319A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022022150A JP2023119319A (ja) 2022-02-16 2022-02-16 モータ制御装置
US18/153,442 US20230261603A1 (en) 2022-02-16 2023-01-12 Motor control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022022150A JP2023119319A (ja) 2022-02-16 2022-02-16 モータ制御装置

Publications (1)

Publication Number Publication Date
JP2023119319A true JP2023119319A (ja) 2023-08-28

Family

ID=87558153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022022150A Pending JP2023119319A (ja) 2022-02-16 2022-02-16 モータ制御装置

Country Status (2)

Country Link
US (1) US20230261603A1 (ja)
JP (1) JP2023119319A (ja)

Also Published As

Publication number Publication date
US20230261603A1 (en) 2023-08-17

Similar Documents

Publication Publication Date Title
US8278865B2 (en) Control device
US8232753B2 (en) Control device for electric motor drive apparatus
US8269439B2 (en) Drive controller and drive control method for electric motor
US8054031B2 (en) Converter device, rotating electrical machine control device, and drive device
EP2733844B1 (en) Vehicle and method for controlling vehicle
US8373380B2 (en) Device and method for controlling alternating-current motor
JP4406552B2 (ja) 電動機の制御装置
JP6217554B2 (ja) インバータ装置
EP2937984B1 (en) Inverter device
JP5263067B2 (ja) インバータの故障検出装置
JP2011125154A (ja) 回転電機の減磁判定システム
WO2020059814A1 (ja) モータ制御装置、モータシステム及びインバータ制御方法
JP5577714B2 (ja) 交流モータの制御装置
JP2023119319A (ja) モータ制御装置
JP2012244740A (ja) 駆動装置
JP7415579B2 (ja) 車両の駆動制御システム
WO2020059815A1 (ja) モータ制御装置、モータシステム及びインバータ制御方法
JP2000278987A (ja) インバータ装置
JP2012090429A (ja) モータ駆動装置
JP2010124662A (ja) モータ駆動システム
JP7391271B2 (ja) 回転電機の制御装置
JP2012223026A (ja) 駆動装置
JP2014068417A (ja) インバータ制御装置
JP2007159349A (ja) 電動機の制御装置
JP6680152B2 (ja) 回転電機の制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240610