JP2009136035A - Motor controller - Google Patents

Motor controller Download PDF

Info

Publication number
JP2009136035A
JP2009136035A JP2007307645A JP2007307645A JP2009136035A JP 2009136035 A JP2009136035 A JP 2009136035A JP 2007307645 A JP2007307645 A JP 2007307645A JP 2007307645 A JP2007307645 A JP 2007307645A JP 2009136035 A JP2009136035 A JP 2009136035A
Authority
JP
Japan
Prior art keywords
axis
motor
value
current
calculation
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.)
Granted
Application number
JP2007307645A
Other languages
Japanese (ja)
Other versions
JP5141955B2 (en
Inventor
Yuji Karizume
裕二 狩集
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.)
JTEKT Corp
Original Assignee
JTEKT 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 JTEKT Corp filed Critical JTEKT Corp
Priority to JP2007307645A priority Critical patent/JP5141955B2/en
Publication of JP2009136035A publication Critical patent/JP2009136035A/en
Application granted granted Critical
Publication of JP5141955B2 publication Critical patent/JP5141955B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Steering Control In Accordance With Driving Conditions (AREA)
  • Power Steering Mechanism (AREA)
  • Control Of Ac Motors In General (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a motor controller capable of efficiently improving the responsiveness and followability of a motor by performing non-interference control in which a delay in calculation time is compensated. <P>SOLUTION: The motor controller is provided with: PI calculation sections 51a, 52a for calculating PI calculation values V<SB>do</SB>, V<SB>qo</SB>; non-interference control amount calculation sections 51b, 52b for calculating non-interference control amounts D<SB>d</SB>, D<SB>q</SB>for non-interference control of the motor; first adding sections 51c, 52c for adding the PI calculation values V<SB>do</SB>, V<SB>qo</SB>to the non-interference control amounts D<SB>d</SB>, D<SB>q</SB>; correction value calculating sections 51e, 52e for calculating correction values ΔD<SB>d</SB>, ΔD<SB>q</SB>; and second adding sections for adding the correction values ΔD<SB>d</SB>, ΔD<SB>q</SB>to results of addition in the first adding sections 51c, 52c and outputting voltage command values V<SB>d</SB><SP>*</SP>, V<SB>q</SB><SP>*</SP>. The correction value calculating sections 51e, 52e obtain the difference in non-interference control amount between the present control cycle and the previous control cycle as correction values ΔD<SB>d</SB>, ΔD<SB>q</SB>. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

この発明は、モータ(とくにブラシレスモータ)を駆動するためのモータ制御装置に関する。ブラシレスモータは、たとえば、電動パワーステアリング装置における操舵補助力の発生源として利用される。   The present invention relates to a motor control device for driving a motor (particularly a brushless motor). The brushless motor is used, for example, as a source for generating a steering assist force in an electric power steering apparatus.

ブラシレスモータのためのモータ制御装置は、モータの電機子巻線を流れる電流を検出する電流検出部と、モータのロータ回転位置を検出する回転位置検出部と、d軸目標電流およびq軸目標電流を演算するdq軸目標電流演算部と、検出された電機子巻線電流およびロータ回転位置に基づいてd軸電流およびq軸電流を求めるdq軸電流演算部と、d軸電圧指令値演算部と、q軸電圧指令値演算部とを備えている。d軸電圧指令値演算部は、d軸目標電流とd軸電流との間のd軸偏差を低減するように、d軸偏差のPI演算に基づいてd軸電圧指令値を求める。q軸電圧指令値演算部は、q軸目標電流とq軸電流との間のq軸偏差を低減するように、q軸偏差のPI演算に基づいてq軸電圧指令値を求める。こうして求められたd軸電圧指令値およびq軸電圧指令値、ならびに検出されたロータ回転位置に基づいて、モータ制御装置は、電機子巻線に電圧を印加する。これにより、ロータの回転力が発生する。   A motor control device for a brushless motor includes a current detection unit that detects a current flowing through an armature winding of the motor, a rotation position detection unit that detects a rotor rotation position of the motor, a d-axis target current, and a q-axis target current A dq-axis target current calculation unit, a dq-axis current calculation unit that calculates a d-axis current and a q-axis current based on the detected armature winding current and rotor rotational position, a d-axis voltage command value calculation unit, And a q-axis voltage command value calculation unit. The d-axis voltage command value calculation unit obtains a d-axis voltage command value based on the PI calculation of the d-axis deviation so as to reduce the d-axis deviation between the d-axis target current and the d-axis current. The q-axis voltage command value calculation unit obtains the q-axis voltage command value based on the PI calculation of the q-axis deviation so as to reduce the q-axis deviation between the q-axis target current and the q-axis current. Based on the d-axis voltage command value and the q-axis voltage command value obtained in this way and the detected rotor rotational position, the motor control device applies a voltage to the armature winding. Thereby, the rotational force of the rotor is generated.

一方、PI演算値に対して非干渉化制御量を加算する非干渉化制御が知られている(特許文献1参照)。非干渉化制御とは、ロータの回転に伴ってモータ内部で生じる速度起電力を補償するように電圧指令値を定める制御である。非干渉化制御を行うことによって、速度起電力による応答性や追従性の低下を効果的に抑制できると期待されている。
特開2001−187578号公報
On the other hand, non-interference control is known in which a non-interference control amount is added to a PI calculation value (see Patent Document 1). The non-interacting control is control for determining a voltage command value so as to compensate for speed electromotive force generated inside the motor as the rotor rotates. By performing the non-interacting control, it is expected that a decrease in response and tracking performance due to speed electromotive force can be effectively suppressed.
JP 2001-187578 A

モータ内部で生じる速度起電力は、回転角速度および電流に依存する。したがって、これを補償するための非干渉化制御量も同様に回転角速度および電流に依存する。より具体的には、d軸非干渉化制御量は回転角速度およびq軸電流に依存し、q軸非干渉化制御量は回転角速度およびd軸電流に依存する。
ところが、モータの各相の電機子巻線の電流が検出されてから、これがd軸電流およびq軸電流に変換され、さらにd軸電圧指令値およびq軸電圧指令値が出力するまでには、座標変換やPI演算などのための演算時間が必要である。また、ロータ回転角が検出されてから、それに基づいて回転角速度を演算する時間も必要である。この間にもロータは回転するので、それに伴ってd軸およびq軸が回転することになる。その結果、d軸電圧指令値およびq軸電圧指令値が出力されるときには、d軸およびq軸の方向が、モータ電流等の検出時のd軸およびq軸の方向からずれてしまっている。したがって、モータ電流等検出時のd軸およびq軸の方向に対応する非干渉化制御量を用いても、必ずしも、適切な電圧指令値を出力することができない。とくに、回転角速度が大きいときに、この問題が顕在化する。そのため、非干渉化制御が必ずしも期待どおりの効果を生じないうえ、モータ電流が変動的になり、振動や異音が生じるおそれがある。
The speed electromotive force generated inside the motor depends on the rotational angular speed and the current. Therefore, the non-interacting control amount for compensating for this also depends on the rotational angular velocity and the current. More specifically, the d-axis decoupling control amount depends on the rotation angular velocity and the q-axis current, and the q-axis decoupling control amount depends on the rotation angular velocity and the d-axis current.
However, after the current of the armature winding of each phase of the motor is detected, this is converted into the d-axis current and the q-axis current, and further, the d-axis voltage command value and the q-axis voltage command value are output. Calculation time for coordinate conversion and PI calculation is required. Further, after the rotor rotation angle is detected, a time for calculating the rotation angular velocity based on the rotor rotation angle is also required. Since the rotor also rotates during this time, the d-axis and q-axis rotate accordingly. As a result, when the d-axis voltage command value and the q-axis voltage command value are output, the directions of the d-axis and the q-axis are shifted from the directions of the d-axis and the q-axis when the motor current or the like is detected. Therefore, even if the non-interacting control amount corresponding to the d-axis and q-axis directions when detecting the motor current or the like is used, it is not always possible to output an appropriate voltage command value. In particular, this problem becomes apparent when the rotational angular velocity is large. For this reason, the non-interacting control does not necessarily produce an effect as expected, and the motor current may fluctuate, which may cause vibration and noise.

そこで、この発明の目的は、演算時間の遅れを補償した非干渉化制御を行うことによって、モータの応答性および追従性を効果的に向上することができるモータ制御装置を提供することである。   SUMMARY OF THE INVENTION An object of the present invention is to provide a motor control device that can effectively improve the response and follow-up of a motor by performing non-interference control that compensates for a delay in calculation time.

上記の目的を達成するための請求項1記載の発明は、モータ(1)を駆動するための基本駆動値を演算する基本駆動値演算手段(51a,52a)と、前記モータの非干渉化制御のための非干渉化制御量を演算する非干渉化制御量演算手段(51b,52b)と、この非干渉化制御量演算手段によって演算される非干渉化制御量を補正するための補正値を演算する補正値演算手段(51e,52e)と、前記非干渉化制御量演算手段によって演算される前記非干渉化制御量、および前記補正値演算手段によって演算される前記補正値によって、前記基本駆動値演算手段により演算される前記基本駆動値を修正してモータ駆動値を得る修正手段(51c,51d,52c,52d)と、この修正手段での修正によって得られるモータ駆動値に基づいて前記モータを駆動する駆動手段(20,21,13)とを含む、モータ制御装置である。なお、括弧内の英数字は、後述の実施形態における対応構成要素等を表す。以下、この項において同じ。   In order to achieve the above object, the invention as set forth in claim 1 includes basic drive value calculation means (51a, 52a) for calculating a basic drive value for driving the motor (1), and non-interference control of the motor. Non-interacting control amount computing means (51b, 52b) for computing a non-interacting control amount for the control, and a correction value for correcting the non-interacting control amount computed by the non-interacting control amount computing means Based on the correction value calculation means (51e, 52e) to be calculated, the decoupling control amount calculated by the non-interacting control amount calculation means, and the correction value calculated by the correction value calculation means, the basic drive Correction means (51c, 51d, 52c, 52d) for correcting the basic drive value calculated by the value calculation means to obtain a motor drive value, and a motor drive value obtained by the correction by the correction means. There are and a driving means (20,21,13) for driving the motor, a motor control device. In addition, the alphanumeric characters in parentheses represent corresponding components in the embodiments described later. The same applies hereinafter.

この構成によれば、非干渉化制御量および補正値によって基本駆動値を修正してモータ駆動値が求められるようになっている。前記補正値を適切に定めることによって、演算時間分の遅れに起因する非干渉化制御量の誤差を補償することができる。これにより、応答性および追従性に優れたモータ制御が可能になり、非干渉化制御本来の効果を充分に享受することができる。   According to this configuration, the motor drive value is obtained by correcting the basic drive value with the non-interacting control amount and the correction value. By appropriately determining the correction value, it is possible to compensate for an error of the non-interacting control amount caused by a delay for the calculation time. As a result, motor control with excellent responsiveness and follow-up capability is possible, and the original effects of non-interference control can be fully enjoyed.

請求項2記載の発明は、前記モータ制御装置が、所定の演算周期毎に前記モータ駆動値を更新して出力するものであり、前記補正値演算手段が、今回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量から前回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量を差し引いた値を前記補正値として演算するものである、請求項1記載のモータ制御装置である。   According to a second aspect of the present invention, the motor control device updates and outputs the motor drive value every predetermined calculation cycle, and the correction value calculation means performs the non-interference in the current calculation cycle. A value obtained by subtracting the non-interacting control amount calculated by the non-interacting control amount calculating unit in the previous calculation cycle from the non-interacting control amount calculated by the control amount calculating unit is calculated as the correction value. The motor control device according to claim 1.

この構成によれば、今回の演算周期における非干渉化制御量と前回の演算周期における非干渉化制御量との差が前記補正値とされる。この場合、補正値は、前回の演算周期における非干渉化制御量の誤差に相当する。この誤差は、前演算周期から今演算周期までの間と、今演算周期から次演算周期までの間とで大きく相違しないと考えられる。そこで、この発明では、今回と前回との非干渉化制御量の差を補正値とし、今回の非干渉化制御量の誤差を補償するために用いている。これにより、モータ駆動値が更新されるまでの遅れ時間における非干渉化制御量の時間変化を予測した適切なモータ駆動値が得られる。つまり、モータ駆動値が更新される時点において妥当となる非干渉化制御を行うことができる。その結果、演算時間による遅れを効果的に補償することができるので、非干渉化制御本来の効果を達成できる。   According to this configuration, the difference between the non-interacting control amount in the current calculation cycle and the non-interacting control amount in the previous calculation cycle is set as the correction value. In this case, the correction value corresponds to an error of the non-interacting control amount in the previous calculation cycle. It is considered that this error does not greatly differ between the previous calculation cycle and the current calculation cycle and between the current calculation cycle and the next calculation cycle. Therefore, in the present invention, the difference between the current and previous non-interacting control amounts is used as a correction value and used to compensate for the error of the current non-interacting control amount. As a result, an appropriate motor drive value that predicts a temporal change in the decoupling control amount in the delay time until the motor drive value is updated is obtained. That is, it is possible to perform non-interference control that is valid at the time when the motor drive value is updated. As a result, the delay due to the calculation time can be effectively compensated, so that the original effect of the non-interacting control can be achieved.

請求項3記載の発明は、前記モータに流れるモータ電流を検出するモータ電流検出手段(11,17)をさらに含み、前記補正値演算手段は、前記モータ駆動値から、前記モータを含む電気回路の電気抵抗と前記モータ電流検出手段によって検出されたモータ電流との積を差し引いた値を前記補正値として演算するものである、請求項1記載のモータ制御装置。
である。
The invention according to claim 3 further includes motor current detection means (11, 17) for detecting a motor current flowing through the motor, wherein the correction value calculation means is an electric circuit including the motor from the motor driving value. 2. The motor control device according to claim 1, wherein a value obtained by subtracting a product of an electric resistance and a motor current detected by the motor current detecting means is calculated as the correction value.
It is.

モータ駆動値(たとえば、電圧指令値)が出力されると、その結果としてのモータ電流が検出される。モータを含む電気回路の電気抵抗に当該モータ電流を乗じると、モータに実際に印加されたモータ電圧が求まる。このモータ電圧とモータ駆動値との差が、制御上の誤差となる。そこで、この発明では、モータ駆動値とモータ電圧(電気抵抗および検出電流の積)との差を、非干渉化制御量の誤差を補償するための補正値とするようにしている。これにより、効果的な非干渉化制御が可能になる。   When a motor drive value (for example, a voltage command value) is output, the resulting motor current is detected. When the electric resistance of the electric circuit including the motor is multiplied by the motor current, the motor voltage actually applied to the motor is obtained. The difference between the motor voltage and the motor drive value becomes a control error. Therefore, in the present invention, the difference between the motor drive value and the motor voltage (the product of the electric resistance and the detected current) is set as a correction value for compensating for the error of the non-interacting control amount. This enables effective decoupling control.

より具体的には、前記モータ制御装置が、所定の演算周期毎に前記モータ駆動値を更新して出力するものである場合に、前記モータ電流検出手段が、前記演算周期毎に前記モータに流れるモータ電流を検出するものであり、前記補正値演算手段が、前回の演算周期におけるモータ駆動値から、前記モータを含む電気回路の電気抵抗と今回の演算周期に前記モータ電流検出手段によって検出されたモータ電流との積を差し引いた値を前記補正値として演算するものであることが好ましい。   More specifically, when the motor control device updates and outputs the motor drive value every predetermined calculation cycle, the motor current detection means flows to the motor every calculation cycle. The motor current is detected, and the correction value calculation means is detected by the motor current detection means in the current calculation cycle and the electric resistance of the electric circuit including the motor from the motor drive value in the previous calculation cycle. A value obtained by subtracting the product of the motor current is preferably calculated as the correction value.

前回の演算周期においてモータ駆動値(たとえば、電圧指令値)が出力されると、その結果としてのモータ電流が今回の演算周期で検出される。モータを含む電気回路の電気抵抗に当該モータ電流を乗じると、今回の演算周期でモータに印加されているモータ電圧が求まる。このモータ電圧と前回の演算周期に出力されたモータ駆動値との差が、制御上の誤差となる。この誤差は、演算周期分の遅れに起因して非干渉化制御量がその適値からずれたことに主として起因する誤差である。この誤差は、前演算周期から今演算周期までの間と、今演算周期から次演算周期までの間とで大きく相違しないと考えられる。そこで、前回のモータ駆動値と今回のモータ電圧(電気抵抗および検出電流の積)との差を、非干渉化制御量の誤差を補償するための補正値とする。これにより、モータ駆動値が更新されるまでの遅れ時間における非干渉化制御量の時間変化を予測した適切なモータ駆動値が得られる。つまり、モータ駆動値が更新される時点において妥当となる非干渉化制御を行うことができる。その結果、演算時間による遅れを効果的に補償することができるので、非干渉化制御本来の効果を達成できる。   When a motor drive value (for example, voltage command value) is output in the previous calculation cycle, the resulting motor current is detected in the current calculation cycle. When the electric resistance of the electric circuit including the motor is multiplied by the motor current, the motor voltage applied to the motor is obtained in the current calculation cycle. The difference between the motor voltage and the motor drive value output in the previous calculation cycle is a control error. This error is mainly caused by the decoupling control amount deviating from its appropriate value due to a delay of the calculation period. It is considered that this error does not greatly differ between the previous calculation cycle and the current calculation cycle and between the current calculation cycle and the next calculation cycle. Therefore, the difference between the previous motor drive value and the current motor voltage (product of electrical resistance and detected current) is used as a correction value for compensating for the error of the non-interacting control amount. As a result, an appropriate motor drive value that predicts a temporal change in the decoupling control amount in the delay time until the motor drive value is updated is obtained. That is, the non-interacting control that is valid at the time when the motor drive value is updated can be performed. As a result, the delay due to the calculation time can be effectively compensated, so that the original effect of the non-interacting control can be achieved.

前回の演算周期に出力されたモータ駆動値に代えて、今回の演算周期におけるモータ駆動値を用いてもよい。
請求項4記載の発明は、前記モータ制御装置が、所定の演算周期毎に前記モータ駆動値を更新して出力するものであり、前記演算周期毎に、前記モータに流れるモータ電流を検出するモータ電流検出手段(11,17)をさらに含み、前記補正値演算手段が、前記モータ駆動値から、前記モータを含む電気回路の電気抵抗と前記モータ電流検出手段によって検出されたモータ電流との積を差し引き、さらに、今回の演算周期と前回の演算周期との間におけるモータ電流変化量にモータ巻線のインダクタンスを乗じた値を差し引いた値を前記補正値として演算するものである、請求項1記載のモータ制御装置である。
Instead of the motor drive value output in the previous calculation cycle, the motor drive value in the current calculation cycle may be used.
According to a fourth aspect of the present invention, the motor control device updates and outputs the motor drive value at every predetermined calculation cycle, and detects a motor current flowing through the motor at each calculation cycle. Current correction means (11, 17), and the correction value calculation means calculates the product of the electric resistance of the electric circuit including the motor and the motor current detected by the motor current detection means from the motor drive value. The value obtained by subtracting and further subtracting the value obtained by multiplying the motor current change amount between the current calculation cycle and the previous calculation cycle by the inductance of the motor winding is calculated as the correction value. This is a motor control device.

この構成では、モータ電圧を求める際に、電気抵抗および検出電流の積だけでなく、今回および前回のモータ電流変化量とインダクタンスとの積も加味されている。この積は、電流微分項に対応する。この電流微分項を加味することで、モータ電圧が一層正確に求まるので、それに応じて、演算時間の遅れに起因する非干渉化制御量の誤差をより効果的に補償することができる。   In this configuration, when determining the motor voltage, not only the product of the electric resistance and the detected current but also the product of the current and previous motor current variation and the inductance are taken into account. This product corresponds to the current derivative term. By adding this current differential term, the motor voltage can be determined more accurately, and accordingly, the error of the non-interacting control amount due to the delay in the calculation time can be compensated more effectively.

前記補正値演算手段は、前回または今回の演算周期におけるモータ駆動値から、前記電気抵抗と今回の演算周期に前記モータ電流検出手段によって検出されたモータ電流との積を差し引き、さらに、今回および前回の演算周期の間におけるモータ電流変化量にモータ巻線のインダクタンスを乗じた値を差し引いた値を前記補正値として演算するものであることが好ましい。   The correction value calculation means subtracts the product of the electrical resistance and the motor current detected by the motor current detection means in the current calculation cycle from the motor drive value in the previous or current calculation cycle, and further It is preferable that a value obtained by subtracting a value obtained by multiplying the motor current change amount during the calculation period by the inductance of the motor winding is calculated as the correction value.

前記基本駆動値演算手段は、d軸基本駆動電圧およびq軸基本駆動電圧を演算するものであってもよい。この場合に、前記非干渉化制御量演算手段は、d軸非干渉化制御量およびq軸非干渉化制御量を演算するものであり、それに応じて、前記補正値演算手段は、d軸補正値およびq軸補正値を演算するものであることが好ましい。   The basic drive value calculation means may calculate a d-axis basic drive voltage and a q-axis basic drive voltage. In this case, the non-interacting control amount calculating means calculates a d-axis non-interacting control amount and a q-axis non-interacting control amount, and the correction value calculating means accordingly corresponds to the d-axis correction amount. The value and the q-axis correction value are preferably calculated.

以下では、この発明の実施の形態を、添付図面を参照して詳細に説明する。
図1は、この発明の一実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の電気的構成を説明するためのブロック図である。この電動パワーステアリング装置は、車両のステアリングホイールに加えられる操舵トルクを検出するトルクセンサ7と、車両の速度を検出する車速センサ8と、車両の舵取り機構3に操舵補助力を与えるモータ1と、このモータ1を駆動制御するモータ制御装置10とを備えている。モータ制御装置10は、トルクセンサ7が検出する操舵トルクおよび車速センサ8が検出する車速に応じてモータ1を駆動することによって、操舵状況に応じた適切な操舵補助を実現する。モータ1は、たとえば、三相ブラシレスDCモータである。
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 is a block diagram for explaining an electrical configuration of an electric power steering apparatus to which a motor control apparatus according to an embodiment of the present invention is applied. This electric power steering apparatus includes a torque sensor 7 that detects a steering torque applied to a steering wheel of a vehicle, a vehicle speed sensor 8 that detects the speed of the vehicle, a motor 1 that applies a steering assist force to the steering mechanism 3 of the vehicle, And a motor control device 10 for driving and controlling the motor 1. The motor control device 10 drives the motor 1 in accordance with the steering torque detected by the torque sensor 7 and the vehicle speed detected by the vehicle speed sensor 8, thereby realizing appropriate steering assistance according to the steering situation. The motor 1 is, for example, a three-phase brushless DC motor.

モータ制御装置10は、電流検出部11、信号処理部としてのマイクロコンピュータ12、および駆動回路13を有する。このモータ制御装置10に、モータ1内のロータの回転位置を検出するレゾルバ2(回転位置センサ)とともに、前述のトルクセンサ7および車速センサ8が接続されるようになっている。
電流検出部11はモータ1の電機子巻線を流れる電流を検出する。より具体的には、電流検出部11は、3相(U相、V相およびW相)の電機子巻線における相電流をそれぞれ検出する電流検出器11u,11v,11wと、電流検出器11u,11v,11wによる電流検出信号をA/D(アナログ/ディジタル)変換するA/D変換器11u′,11v′,11w′とを有する。
The motor control device 10 includes a current detection unit 11, a microcomputer 12 as a signal processing unit, and a drive circuit 13. The above-described torque sensor 7 and vehicle speed sensor 8 are connected to the motor control device 10 together with the resolver 2 (rotational position sensor) that detects the rotational position of the rotor in the motor 1.
The current detection unit 11 detects a current flowing through the armature winding of the motor 1. More specifically, the current detector 11 includes current detectors 11u, 11v, and 11w that detect phase currents in three-phase (U-phase, V-phase, and W-phase) armature windings, and a current detector 11u. , 11v, 11w have A / D converters 11u ′, 11v ′, 11w ′ for A / D (analog / digital) conversion of current detection signals.

マイクロコンピュータ12は、プログラム処理(ソフトウェア処理)によって実現される複数の機能処理部を備えており、所定の演算周期毎に繰り返し処理を実行するようになっている。これらの複数の機能処理部には、基本目標電流演算部15、dq軸目標電流演算部16、dq軸電流演算部17、d軸偏差演算部18d、q軸偏差演算部18q、dq軸電圧指令値演算部19、電圧指令値座標変換部20、PWM(パルス幅変調)制御部21、および回転角速度演算部22が含まれている。   The microcomputer 12 includes a plurality of function processing units realized by program processing (software processing), and repeatedly executes processing at a predetermined calculation cycle. The plurality of function processing units include a basic target current calculation unit 15, a dq axis target current calculation unit 16, a dq axis current calculation unit 17, a d axis deviation calculation unit 18d, a q axis deviation calculation unit 18q, and a dq axis voltage command. A value calculation unit 19, a voltage command value coordinate conversion unit 20, a PWM (pulse width modulation) control unit 21, and a rotation angular velocity calculation unit 22 are included.

駆動回路13は、インバータ回路で構成され、PWM制御部21によって制御されることにより、車載バッテリ等の電源からの電力をモータ1のU相、V相およびW相電機子巻線に供給する。この駆動回路13とモータ1の各相の電機子巻線との間において流れる相電流が電流検出器11u,11v,11wにより検出されるようになっている。
基本目標電流演算部15は、トルクセンサ7により検知される操舵トルクと、車速センサ8により検出される車速とに基づいて、モータ1の基本目標電流I*を演算する。基本目標電流I*は、たとえば、操舵トルクの大きさが大きいほど大きく、車速が小さい程大きくなるように定められる。
The drive circuit 13 is composed of an inverter circuit and is controlled by the PWM control unit 21 to supply power from a power source such as an in-vehicle battery to the U-phase, V-phase, and W-phase armature windings of the motor 1. A phase current flowing between the drive circuit 13 and the armature winding of each phase of the motor 1 is detected by current detectors 11u, 11v, and 11w.
The basic target current calculation unit 15 calculates the basic target current I * of the motor 1 based on the steering torque detected by the torque sensor 7 and the vehicle speed detected by the vehicle speed sensor 8. For example, the basic target current I * is determined so as to increase as the steering torque increases and increase as the vehicle speed decreases.

基本目標電流演算部15により演算された基本目標電流I*はdq軸目標電流演算部16に入力される。dq軸目標電流演算部16は、d軸方向の磁界を生成するためのd軸目標電流Id *と、q軸方向の磁界を生成するためのq軸目標電流Iq *とを演算する。d軸とは、モータ1のロータの有する界磁の磁束方向に沿う軸であり、q軸とは、d軸およびロータ回転軸に直交する軸である。dq軸目標電流演算部16における演算は公知の演算式を用いて行うことができる。 The basic target current I * calculated by the basic target current calculation unit 15 is input to the dq-axis target current calculation unit 16. The dq axis target current calculation unit 16 calculates a d axis target current I d * for generating a magnetic field in the d axis direction and a q axis target current I q * for generating a magnetic field in the q axis direction. The d-axis is an axis along the magnetic flux direction of the field of the rotor of the motor 1, and the q-axis is an axis orthogonal to the d-axis and the rotor rotation axis. The calculation in the dq-axis target current calculation unit 16 can be performed using a known calculation formula.

電流検出部11から出力される相電流Iu,Iv,Iwはdq軸電流演算部17に入力される。dq軸電流演算部17は、レゾルバ2により検出されたロータ回転位置に基づいて、相電流Iu,Iv,Iwを座標変換することにより、d軸電流Idおよびq軸電流Iqを演算する。dq軸電流演算部17における演算は公知の演算式を用いて行うことができる。 The phase currents Iu, Iv, Iw output from the current detection unit 11 are input to the dq axis current calculation unit 17. The dq-axis current calculation unit 17 calculates the d-axis current I d and the q-axis current I q by performing coordinate conversion on the phase currents Iu, Iv, and Iw based on the rotor rotational position detected by the resolver 2. The calculation in the dq axis current calculation unit 17 can be performed using a known calculation formula.

d軸偏差演算部18dは、d軸目標電流Id *とd軸電流Idとの間のd軸偏差δIdを求める。同様に、q軸偏差演算部18qは、q軸目標電流Iq *とq軸電流Iqとの間のq軸偏差δIqを求める。
dq軸電圧指令値演算部19は、d軸偏差δIdに対応するd軸電圧指令値Vd *とq軸偏差δIqに対応するq軸電圧指令値Vq *とを求める。
The d-axis deviation calculating unit 18d obtains a d-axis deviation δI d between the d-axis target current I d * and the d-axis current I d . Similarly, the q-axis deviation calculating unit 18q obtains a q-axis deviation δI q between the q-axis target current I q * and the q-axis current I q .
The dq-axis voltage command value calculation unit 19 obtains a d-axis voltage command value V d * corresponding to the d-axis deviation δI d and a q-axis voltage command value V q * corresponding to the q-axis deviation δI q .

電圧指令値座標変換部20は、レゾルバ2により検出されたロータ回転位置に基づいて、d軸電圧指令値Vd *およびq軸電圧指令値Vq *の座標変換を行い、U相電機子巻線、V相電機子巻線、W相電機子巻線にそれぞれ印加すべき印加電圧指令値Vu*,Vv*,Vw*を演算する。電圧指令値座標変換部20における演算は公知の演算式を用いて行えばよい。 The voltage command value coordinate conversion unit 20 performs coordinate conversion of the d-axis voltage command value V d * and the q-axis voltage command value V q * based on the rotor rotational position detected by the resolver 2, and performs U-phase armature winding. Applied voltage command values Vu * , Vv * , Vw * to be applied to the wire, the V-phase armature winding, and the W-phase armature winding are calculated. The calculation in the voltage command value coordinate conversion unit 20 may be performed using a known calculation formula.

PWM制御部21は、印加電圧指令値Vu*,Vv*,Vw*に対応するデューティ比を有するパルス信号である各相のPWM制御信号を生成する。これにより、d軸電圧指令値Vd *およびq軸電圧指令値Vq *に対応する電圧が駆動回路13から各相の電機子巻線に印加され、ロータの回転力が発生する。
回転角速度演算部22は、レゾルバ2により検出されたロータ回転位置の時間変化(微分)を演算することによって、回転角速度ω(rad/sec)を求める。この回転角速度ωは、dq軸電圧指令値演算部19に入力されるようになっている。
The PWM control unit 21 generates a PWM control signal for each phase, which is a pulse signal having a duty ratio corresponding to the applied voltage command values Vu * , Vv * , and Vw * . As a result, voltages corresponding to the d-axis voltage command value V d * and the q-axis voltage command value V q * are applied from the drive circuit 13 to the armature windings of the respective phases, and the rotational force of the rotor is generated.
The rotation angular velocity calculation unit 22 calculates a rotation angular velocity ω (rad / sec) by calculating a temporal change (differentiation) of the rotor rotation position detected by the resolver 2. The rotational angular velocity ω is input to the dq axis voltage command value calculation unit 19.

図2は、dq軸電圧指令値演算部19の詳しい構成を説明するためのブロック図である。
dq軸電圧指令値演算部19は、d軸電圧指令値演算部51およびq軸電圧指令値演算部52を有する。d軸電圧指令値演算部51は、d軸偏差δIdを低減するように、d軸偏差のPI演算(以下「d軸PI演算」という。)等に基づいてd軸電圧指令値Vd *を求める。q軸電圧指令値演算部52は、q軸偏差δIqを低減するように、q軸偏差のPI演算(以下「q軸PI演算」という。)等に基づいてq軸電圧指令値Vq *を求める。
FIG. 2 is a block diagram for explaining a detailed configuration of the dq-axis voltage command value calculation unit 19.
The dq-axis voltage command value calculation unit 19 includes a d-axis voltage command value calculation unit 51 and a q-axis voltage command value calculation unit 52. d-axis voltage command value computing part 51, so as to reduce the d-axis deviation .delta.I d, PI calculation of the d-axis deviation (hereinafter, "d-axis PI calculation" hereinafter.) d-axis voltage command value based on such V d * Ask for. q-axis voltage command value calculating unit 52, so as to reduce the q-axis deviation .delta.I q, PI calculation of the q-axis deviation (hereinafter "q-axis PI calculation" hereinafter.) q-axis voltage command value based on such V q * Ask for.

d軸電圧指令値演算部51は、d軸PI演算部51a、d軸非干渉化制御量演算部51b、d軸第1加算部51c、d軸第2加算部51d、およびd軸補正値演算部51eを有する。
d軸PI演算部51aは、d軸偏差のPI演算によりd軸PI演算値Vdoを演算し、このd軸PI演算値Vdoをd軸第1加算部51cに出力する。
The d-axis voltage command value calculation unit 51 includes a d-axis PI calculation unit 51a, a d-axis decoupling control amount calculation unit 51b, a d-axis first addition unit 51c, a d-axis second addition unit 51d, and a d-axis correction value calculation. It has a part 51e.
The d-axis PI calculation unit 51a calculates the d-axis PI calculation value V do by the PI calculation of the d-axis deviation, and outputs this d-axis PI calculation value V do to the d-axis first addition unit 51c.

d軸非干渉化制御量演算部51bは、回転角速度演算部22により求められる回転角速度ωと、dq軸電流演算部17により求められるq軸電流Iqとに基づき、d軸非干渉化制御量Dd(=−ωLqq)を求める。Lqはモータ1の電機子巻線のq軸自己インダクタンスであり、予め測定済みの定数である。
d軸第1加算部51cは、d軸PI演算値Vdoにd軸非干渉化制御量Ddを加算する。
The d-axis non-interacting control amount calculation unit 51b is based on the rotational angular velocity ω obtained by the rotational angular velocity computing unit 22 and the q-axis current I q obtained by the dq-axis current computing unit 17, and the d-axis non-interacting control amount. D d (= −ωL q I q ) is obtained. L q is the q-axis self-inductance of the armature winding of the motor 1 and is a constant measured in advance.
d-axis first adder 51c adds the d-axis non-interacting control amount D d to the d-axis PI calculation value V do.

d軸第2加算部51dは、d軸第1加算部51cの加算結果(=Vdo+Dd)に対して、d軸補正値演算部51eが演算するd軸補正値ΔDdを加算して、d軸電圧指令値Vd *(=Vdo+Dd+ΔDd)を出力する。
d軸補正値演算部51eは、d軸非干渉化制御量Ddを補正するためのd軸補正値ΔDdを求めるものである。この実施形態では、d軸補正値演算部51eは、今演算周期におけるd軸非干渉化制御量Dd(n)(n=1,2,3,…)と前演算周期におけるd軸非干渉化制御量Dd(n-1)との差をd軸補正値ΔDd(=Dd(n)−Dd(n-1))として求める偏差演算部51fを有している。なお、図中、Z-1は信号の前回値を表す。
The d-axis second addition unit 51d adds the d-axis correction value ΔD d calculated by the d-axis correction value calculation unit 51e to the addition result (= V do + D d ) of the d-axis first addition unit 51c. , D-axis voltage command value V d * (= V do + D d + ΔD d ) is output.
The d-axis correction value calculation unit 51e calculates a d-axis correction value ΔD d for correcting the d-axis decoupling control amount D d . In this embodiment, the d-axis correction value calculation unit 51e performs the d-axis decoupling control amount D d (n) (n = 1, 2, 3,...) In the current calculation cycle and the d-axis non-interference in the previous calculation cycle. A deviation calculating unit 51f that obtains a difference from the control amount D d (n−1) as a d-axis correction value ΔD d (= D d (n) −D d (n−1)). In the figure, Z -1 represents the previous value of the signal.

q軸電圧指令値演算部52は、q軸PI演算部52a、q軸非干渉化制御量演算部52b、q軸第1加算部52c、q軸第2加算部52d、およびq軸補正値演算部52eを有する。
q軸PI演算部52aは、q軸偏差のPI演算によりq軸PI演算値Vqoを演算し、このq軸PI演算値Vqoをq軸第1加算部52cに出力する。
The q-axis voltage command value calculation unit 52 includes a q-axis PI calculation unit 52a, a q-axis decoupling control amount calculation unit 52b, a q-axis first addition unit 52c, a q-axis second addition unit 52d, and a q-axis correction value calculation. It has a part 52e.
The q-axis PI calculation unit 52a calculates the q-axis PI calculation value V qo by the PI calculation of the q-axis deviation, and outputs the q-axis PI calculation value V qo to the q-axis first addition unit 52c.

q軸非干渉化制御量演算部52bは、回転角速度演算部22により求められる回転角速度ωと、dq軸電流演算部17により求められるd軸電流Idとに基づき、q軸非干渉化制御量Dq(=ωLdd+ωΦ)を求める。Ldはモータ1の電機子巻線のd軸自己インダクタンスであり、Φはロータの界磁の電機子巻線鎖交磁束数の最大値の(3/2)1/2倍である。d軸自己インダクタンスLdは予め測定済みの定数である。 The q-axis non-interacting control amount calculation unit 52b is configured to determine the q-axis non-interacting control amount based on the rotational angular velocity ω obtained by the rotational angular velocity computing unit 22 and the d-axis current I d obtained by the dq-axis current computing unit 17. D q (= ωL d I d + ωΦ) is obtained. L d is the d-axis self-inductance of the armature winding of the motor 1, and Φ is (3/2) 1/2 times the maximum value of the number of armature winding linkage magnetic fluxes in the rotor field. The d-axis self-inductance L d is a constant that has been measured in advance.

q軸第1加算部52cは、q軸PI演算値Vqoにq軸非干渉化制御量Dqを加算する。
q軸第2加算部52dは、q軸第1加算部52cの加算結果(=Vqo+Dq)に対して、q軸補正値演算部52eが演算するq軸補正値ΔDqを加算して、q軸電圧指令値Vq *(=Vqo+Dq+ΔDq)を出力する。
q軸補正値演算部52eは、q軸非干渉化制御量Dqを補正するためのq軸補正値ΔDqを求めるものである。この実施形態では、q軸補正値演算部52eは、今演算周期におけるq軸非干渉化制御量Dq(n)と前演算周期におけるq軸非干渉化制御量Dq(n-1)との差をq軸補正値ΔDq(=Dq(n)−Dq(n-1))として求める偏差演算部52fを有している。図中、Z-1は信号の前回値を表す。
The q-axis first addition unit 52c adds the q-axis decoupling control amount D q to the q-axis PI calculation value V qo .
The q-axis second addition unit 52d adds the q-axis correction value ΔD q calculated by the q-axis correction value calculation unit 52e to the addition result (= V qo + D q ) of the q-axis first addition unit 52c. , Q-axis voltage command value V q * (= V qo + D q + ΔD q ) is output.
The q-axis correction value calculation unit 52e calculates a q-axis correction value ΔD q for correcting the q-axis decoupling control amount D q . In this embodiment, the q-axis correction value calculation unit 52e includes the q-axis decoupling control amount D q (n) in the current calculation cycle, and the q-axis decoupling control amount D q (n−1) in the previous calculation cycle. Is provided as a deviation calculation unit 52f that obtains the difference between them as a q-axis correction value ΔD q (= D q (n) −D q (n−1)). In the figure, Z -1 represents the previous value of the signal.

図3は、d軸電流およびq軸電流の検出と、dq座標軸の回転との関係を示す図である。モータ1の内部で生じる速度起電力は、d軸については、−ωLqqと表され、q軸については、ωLdd+ωΦと表される。したがって、これらを補償するd軸非干渉化制御量Ddは−ωLqqと表され、q軸非干渉化制御量DqはωLdd+ωΦと表される。
一方、電流検出部11によって電流が検出されてから、この検出された電流に対応する駆動値であるd軸電圧指令値Vd *およびq軸電圧指令値Vq *が出力されるまでには、回転角速度ωの演算、座標変換、PI演算その他の演算のための時間が必要である。より具体的には、マイクロコンピュータ12は、所定の演算周期(たとえば、0.001秒)毎にd軸電圧指令値Vd *およびq軸電圧指令値Vq *を更新して出力する。したがって、電流検出部11によって電流が検出されてから、d軸電圧指令値Vd *およびq軸電圧指令値Vq *が当該検出された電流に対応する値に更新されるまでには、遅れ時間が生じる。この遅れ時間の間にもロータが回転しているので、それに応じてd軸およびq軸が回転することになる。
FIG. 3 is a diagram illustrating the relationship between the detection of the d-axis current and the q-axis current and the rotation of the dq coordinate axis. The speed electromotive force generated inside the motor 1 is expressed as −ωL q I q for the d axis and is expressed as ωL d I d + ωΦ for the q axis. Therefore, the d-axis decoupling control amount D d that compensates for these is expressed as −ωL q I q, and the q-axis non-interacting control amount D q is expressed as ωL d I d + ωΦ.
On the other hand, after the current is detected by the current detection unit 11, the d-axis voltage command value V d * and the q-axis voltage command value V q *, which are drive values corresponding to the detected current, are output. , Time for calculation of rotational angular velocity ω, coordinate conversion, PI calculation and other calculations are required. More specifically, the microcomputer 12 updates and outputs the d-axis voltage command value V d * and the q-axis voltage command value V q * every predetermined calculation cycle (for example, 0.001 second). Therefore, there is a delay from when the current is detected by the current detection unit 11 until the d-axis voltage command value V d * and the q-axis voltage command value V q * are updated to values corresponding to the detected current. Time arises. Since the rotor is rotating during this delay time, the d-axis and the q-axis are rotated accordingly.

図3に示すように、d軸71およびq軸72が前記遅れ時間の間に角度変化量θだけ回転してd軸71′およびq軸72′に回転移動する場合を想定する。この場合、回転前のd軸71およびq軸72に対応して求められたd軸電流Idおよびq軸電流Iqに基づいて非干渉化制御量Dd,Dqが演算される。しかし、この演算された非干渉化制御量Dd,Dqが適用されるのは、dq座標軸がd軸71′およびq軸72′の位置まで回転した時点である。したがって、非干渉化制御量Dd,Dqは適値からずれており、これをそのまま適用すれば、電圧指令値Vd *,Vq *もまた適値からずれていることになる。 As shown in FIG. 3, it is assumed that the d-axis 71 and the q-axis 72 rotate by the angle change amount θ during the delay time and rotate to the d-axis 71 ′ and the q-axis 72 ′. In this case, the non-interacting control amounts D d and D q are calculated based on the d-axis current I d and the q-axis current I q obtained corresponding to the d-axis 71 and the q-axis 72 before rotation. However, the calculated deinteracting control amounts D d and D q are applied when the dq coordinate axis is rotated to the positions of the d axis 71 ′ and the q axis 72 ′. Therefore, the non-interacting control amounts D d and D q are deviated from appropriate values. If this is applied as it is, the voltage command values V d * and V q * are also deviated from the appropriate values.

そこで、この実施形態では、d軸PI演算値Vdoにd軸非干渉化制御量Ddを加算し、この加算結果をd軸補正値ΔDdで補正してd軸電圧指令値Vd *を得ている。同様に、q軸PI演算値Vqoにq軸非干渉化制御量Dqを加算し、この加算結果をq軸補正値ΔDqで補正することにより、q軸電圧指令値Vq *を得ている。
図4は、電流値取得および電圧指令値更新の各タイミングを例示する図解図である。演算周期の初期の所定のタイミングでA/D変換器11u′、11v′,11w′から検出電流値が取得され、かつ、レゾルバ2からロータ回転位置(モータ角)が取得される。そして、演算周期の後半の所定のタイミングで電圧指令値Vd *,Vq *が更新される。この電圧指令値Vd *,Vq *は、次の演算周期で更新されるまでは変化しない。
Therefore, in this embodiment, the d-axis decoupling control amount D d is added to the d-axis PI calculation value V do , and the addition result is corrected with the d-axis correction value ΔD d to obtain the d-axis voltage command value V d *. Have gained. Similarly, the q-axis voltage command value V q * is obtained by adding the q-axis decoupling control amount D q to the q-axis PI calculation value V qo and correcting the addition result with the q-axis correction value ΔD q. ing.
FIG. 4 is an illustrative view illustrating each timing of current value acquisition and voltage command value update. The detected current value is acquired from the A / D converters 11u ′, 11v ′, 11w ′ and the rotor rotational position (motor angle) is acquired from the resolver 2 at a predetermined timing at the initial stage of the calculation cycle. The voltage command values V d * and V q * are updated at a predetermined timing in the latter half of the calculation cycle. The voltage command values V d * and V q * do not change until they are updated in the next calculation cycle.

この図4から理解されるように、電流およびロータ回転位置の検出から電圧指令値Vd *,Vq *の更新タイミングまでには、演算周期のほぼ1周期分の遅れが生じる。したがって、1演算周期分だけ先の非干渉化制御量Dd,Dqを予測し、この予測された非干渉化制御量Dd,Dqに基づいてPI演算値Vdo,Vqoを補正することができれば、電圧指令値Vd *,Vq *はその更新タイミングにおいて適値を有することができる。 As understood from FIG. 4, there is a delay of almost one cycle of the calculation cycle from the detection of the current and the rotor rotational position to the update timing of the voltage command values V d * and V q * . Accordingly, the non-interacting control amounts D d and D q ahead by one operation cycle are predicted, and the PI operation values V do and V qo are corrected based on the predicted non- interacting control amounts D d and D q. If possible, the voltage command values V d * and V q * can have appropriate values at the update timing.

この実施形態では、前演算周期(n−1)と今演算周期(n)の非干渉化制御量の誤差がほぼ等しい(大きく相違しない)と仮定する。すなわち、次式(1)(2)が成立すると仮定する。
d(n+1)−Dd(n)≒Dd(n)−Dd(n-1)=ΔDd(n) …(1)
q(n+1)−Dq(n)≒Dq(n)−Dq(n-1)=ΔDq(n) …(2)
この予測された非干渉化制御量の誤差ΔDd(n),ΔDq(n)によって、非干渉化制御量Dd(n),Dq(n)PI演算値Vdo,Vqoを補正すれば、電圧指令値Vd *,Vq *はその更新タイミングにおいて適値を有することができる。すなわち、次式(3)(4)のとおりであり、これは、図2の構成における第2加算部51d,52dの出力にほかならない。
In this embodiment, it is assumed that the error of the non-interacting control amount in the previous calculation cycle (n−1) and the current calculation cycle (n) is substantially equal (not greatly different). That is, it is assumed that the following expressions (1) and (2) are satisfied.
D d (n + 1) −D d (n) ≈D d (n) −D d (n−1) = ΔD d (n) (1)
D q (n + 1) −D q (n) ≈D q (n) −D q (n−1) = ΔD q (n) (2)
The deinteracting control amounts D d (n) and D q (n) PI calculated values V do and V qo are corrected by the predicted deinteracting control amount errors ΔD d (n) and ΔD q (n). Thus, the voltage command values V d * and V q * can have appropriate values at the update timing. That is, the following expressions (3) and (4) are obtained, which is nothing but the outputs of the second adders 51d and 52d in the configuration of FIG.

d *=Vdo+Dd(n)+ΔDd …(3)
q *=Vqo+Dq(n)+ΔDq …(4)
図5は、モータ制御装置10によるモータ1の制御手順を説明するためのフローチャートである。まず、マイクロコンピュータ12は、トルクセンサ7、車速センサ8、電流検出器11u,11v,11wおよびレゾルバ2による検出値を読み込む(ステップS1)。基本目標電流演算部15は、検出された操舵トルクおよび車速に基づき、目標電流I*を演算する(ステップS2)。dq軸目標電流演算部16は、その目標電流I*に対応するd軸目標電流Id *とq軸目標電流Iq *とを演算する(ステップS3)。dq軸電流演算部17は、検出された相電流Iu,Iv,Iwに対応するd軸電流Idおよびq軸電流Iqを演算する(ステップS4)。d軸目標電流Id *とd軸電流Idとから、d軸偏差演算部18dにおいて、d軸偏差δIdが演算され、q軸目標電流Iq *とq軸電流Iqから、q軸偏差演算部18qにおいて、q軸偏差δIqが演算される(ステップS5)。また、回転角速度演算部22は、レゾルバ2によって検出されるロータ回転位置に基づいて、回転角速度ωを演算する(ステップS6)。
V d * = V do + D d (n) + ΔD d (3)
V q * = V qo + D q (n) + ΔD q (4)
FIG. 5 is a flowchart for explaining a control procedure of the motor 1 by the motor control device 10. First, the microcomputer 12 reads detection values obtained by the torque sensor 7, the vehicle speed sensor 8, the current detectors 11u, 11v, 11w, and the resolver 2 (step S1). The basic target current calculation unit 15 calculates the target current I * based on the detected steering torque and vehicle speed (step S2). dq axis target current calculation unit 16 calculates and its target current d-axis target current corresponding to I * I d * and q axis target current I q * (step S3). The dq axis current calculation unit 17 calculates the d axis current I d and the q axis current I q corresponding to the detected phase currents Iu, Iv, Iw (step S4). From the d-axis target current I d * and the d-axis current I d , the d-axis deviation calculating unit 18d calculates the d-axis deviation δI d , and from the q-axis target current I q * and the q-axis current I q , the q-axis in deviation calculation unit 18q, q-axis deviation .delta.I q is computed (step S5). Further, the rotational angular velocity calculation unit 22 calculates the rotational angular velocity ω based on the rotor rotational position detected by the resolver 2 (step S6).

次に、dq軸電圧指令値演算部19において、d軸電圧指令値Vd *とq軸電圧指令値Vq *とが演算される(ステップS7)。そして、電圧指令値座標変換部20において、d軸電圧指令値Vd *およびq軸電圧指令値Vq *に対応するU相電機子巻線、V相電機子巻線、W相電機子巻線への印加電圧指令値Vu*,Vv*,Vw*が演算される(ステップS8)。これらの印加電圧指令値Vu*,Vv*,Vw*に対応するPWM制御信号がPWM制御部21から駆動回路13に与えられる。これより、モータ1が駆動される(ステップS9)。そして、制御を終了するか否かを例えばイグニッションスイッチのオン・オフにより判断し(ステップS10)、終了しない場合はステップS1に戻る。 Next, the dq-axis voltage command value calculation unit 19 calculates the d-axis voltage command value V d * and the q-axis voltage command value V q * (step S7). Then, in the voltage command value coordinate conversion unit 20, a U-phase armature winding, a V-phase armature winding, and a W-phase armature winding corresponding to the d-axis voltage command value V d * and the q-axis voltage command value V q * . Applied voltage command values Vu * , Vv * , Vw * to the line are calculated (step S8). PWM control signals corresponding to these applied voltage command values Vu * , Vv * , Vw * are given from the PWM control unit 21 to the drive circuit 13. Thereby, the motor 1 is driven (step S9). Then, whether or not to end the control is determined by, for example, turning on or off the ignition switch (step S10). If not, the process returns to step S1.

図6は、d軸電圧指令値Vd *およびq軸電圧指令値Vq *の演算手順を示すフローチャートである。まず、d軸PI演算およびq軸PI演算によりd軸PI演算値Vdoおよびq軸PI演算値Vqoがそれぞれ求められる(ステップS101)。一方、d軸非干渉化制御量演算部51bにおいて今演算周期(n)のd軸非干渉化制御量Dd(n)が求められ、q軸非干渉化制御量演算部52bにおいて今演算周期(n)のq軸非干渉化制御量Dq(n)が求められる(ステップS102)。また、d軸補正値演算部51eにおいて、今演算周期(n)にけるd軸非干渉化制御量Dd(n)と前演算周期(n−1)におけるd軸非干渉化制御量Dd(n-1)との差であるd軸補正値ΔDdが求められる(ステップS103)。同様に、q軸補正値演算部52eにおいて、今演算周期(n)におけるq軸非干渉化制御量Dq(n)と前演算周期(n−1)におけるq軸非干渉化制御量Dq(n-1)との差であるq軸補正値ΔDqが求められる(ステップS103)。そして、d軸PI演算値Vdoにd軸非干渉化制御量Dd(n)が加算され、その加算結果にd軸補正値ΔDdを加算してd軸電圧指令値Vd *が求められる(ステップS104)。同様に、q軸PI演算値Vqoにq軸非干渉化制御量Dq(n)が加算され、その加算結果にq軸補正値ΔDqを加算してq軸電圧指令値Vq *が求められる(ステップS104)。こうして求められたd軸電圧指令値Vd *およびq軸電圧指令値Vq *が出力される。また、今演算周期(n)における非干渉化制御量Dd(n),Dq(n)は、次の演算周期(n+1)における補正値ΔDd,ΔDqの演算(ステップS103)のために、マイクロコンピュータ12に備えられたメモリ(図示せず)に記憶される(ステップS105)。 FIG. 6 is a flowchart showing a calculation procedure of the d-axis voltage command value V d * and the q-axis voltage command value V q * . First, the d-axis PI calculation value V do and the q-axis PI calculation value V qo are respectively obtained by the d-axis PI calculation and the q-axis PI calculation (step S101). On the other hand, the d-axis decoupling control amount calculation unit 51b obtains the d-axis non-interacting control amount D d (n) for the current calculation cycle (n), and the q-axis non-interacting control amount calculation unit 52b calculates the current calculation cycle The q-axis decoupling control amount D q (n) of (n) is obtained (step S102). Further, the d-axis correction value calculation unit 51e, the d-axis non-interference control amount in kicking the calculation cycle (n) d-axis non-interference control amount D d (n) and the previous calculation cycle (n-1) D d A d-axis correction value ΔD d which is a difference from (n−1) is obtained (step S103). Similarly, in the q-axis correction value calculation section 52e, calculation cycle (n) in the q-axis non-interacting control amount D q (n) and the previous calculation cycle (n-1) in the q-axis non-interacting control amount D q A q-axis correction value ΔD q which is a difference from (n−1) is obtained (step S103). Then, the d-axis decoupling control amount D d (n) is added to the d-axis PI calculation value V do , and the d-axis correction value ΔD d is added to the addition result to obtain the d-axis voltage command value V d *. (Step S104). Similarly, q-axis decoupling control amount D q (n) is added to q-axis PI calculation value V qo , and q-axis correction value ΔD q is added to the addition result to obtain q-axis voltage command value V q *. It is obtained (step S104). The d-axis voltage command value V d * and the q-axis voltage command value V q * thus obtained are output. Further, the non-interacting control amounts D d (n) and D q (n) in the current calculation cycle (n) are for calculating the correction values ΔD d and ΔD q in the next calculation cycle (n + 1) (step S103). Is stored in a memory (not shown) provided in the microcomputer 12 (step S105).

以上のように、この実施形態によれば、モータ電流等の検出時点から電圧指令値更新時点までの遅れ時間における非干渉化制御量Dd,Dqの変化が予測され、この予測に対応する補正値ΔDd,ΔDqで補正した電圧指令値Vd *,Vq *が出力される。したがって、これらの電圧指令値Vd *,Vq *は、それらが更新される時点において適切な非干渉化制御量を反映した値となる。その結果、非干渉化制御によって応答性および追従性を向上することができる。しかも、適切な電圧指令値Vd *,Vq *が設定される結果、モータ電流が変動的になることを抑制できるので、制御の安定性を確保することができる。これにより、振動や異音を抑制しつつ動特性を向上できるので、電動パワーステアリング装置における操舵フィーリングを向上することができる。 As described above, according to this embodiment, a change in the non-interacting control amounts D d and D q in the delay time from the detection time of the motor current or the like to the update time of the voltage command value is predicted, and this prediction corresponds to this prediction. Voltage command values V d * and V q * corrected with the correction values ΔD d and ΔD q are output. Therefore, these voltage command values V d * and V q * are values that reflect an appropriate non-interacting control amount when they are updated. As a result, responsiveness and followability can be improved by non-interacting control. In addition, as a result of setting appropriate voltage command values V d * and V q * , the motor current can be suppressed from fluctuating, so that control stability can be ensured. Thereby, since a dynamic characteristic can be improved, suppressing a vibration and abnormal noise, the steering feeling in an electric power steering device can be improved.

図7は、この発明の第2の実施形態に係るモータ制御装置の構成を説明するためのブロック図であり、前述の図2に示した構成に代えて用いることができるdq軸電圧指令値演算部19の構成が示されている。この図7において、前述の図2に示された各部と同等の機能部分には同一の参照符号を付して示す。
この実施形態では、d軸補正値演算部51eは、前演算周期(n−1)におけるd軸電圧指令値Vd *(n-1)と、今演算周期において検出されたd軸電流Id(n)と、モータ1および駆動回路13を含む電気回路の電気抵抗Rとを用いて、d軸補正値Cdを演算する。より具体的には、d軸補正値演算部51eは、d軸電流Id(n)および電気抵抗Rの積を求める乗算部51gと、この乗算部51gの出力と前演算周期におけるd軸電圧指令値Vd *(n-1)との差をd軸補正値Cd(=Vd *(n-1)−R・Id(n))として求める偏差演算部51hとを有している。この偏差演算部51hが求めたd軸補正値Cdが、d軸減算部51d′に与えられるようになっている。図中、Z-1は信号の前回値を表す。
FIG. 7 is a block diagram for explaining the configuration of the motor control apparatus according to the second embodiment of the present invention. The dq-axis voltage command value calculation that can be used in place of the configuration shown in FIG. The structure of the part 19 is shown. In FIG. 7, the same functional parts as those shown in FIG. 2 are given the same reference numerals.
In this embodiment, the d-axis correction value calculation unit 51e includes the d-axis voltage command value V d * (n−1) in the previous calculation cycle (n−1) and the d-axis current I d detected in the current calculation cycle. The d-axis correction value C d is calculated using (n) and the electric resistance R of the electric circuit including the motor 1 and the drive circuit 13. More specifically, the d-axis correction value calculation unit 51e includes a multiplication unit 51g that calculates the product of the d-axis current I d (n) and the electric resistance R, the output of the multiplication unit 51g, and the d-axis voltage in the previous calculation cycle. A deviation calculating unit 51h that obtains a difference from the command value V d * (n−1) as a d-axis correction value C d (= V d * (n−1) −R · I d (n)). Yes. The d-axis correction value C d obtained by the deviation calculation unit 51h is given to the d-axis subtraction unit 51d ′. In the figure, Z -1 represents the previous value of the signal.

同様に、q軸補正値演算部52eは、前演算周期(n−1)におけるq軸電圧指令値Vq *(n-1)と、今演算周期において検出されたq軸電流Iq(n)と、モータ1および駆動回路13を含む電気回路の電気抵抗Rとを用いて、q軸補正値Cqを演算する。より具体的には、q軸補正値演算部52eは、q軸電流Iq(n)および電気抵抗Rの積を求める乗算部52gと、この乗算部52gの出力と前演算周期におけるq軸電圧指令値Vq *(n-1)との差をq軸補正値Cq(=Vq *(n-1)−R・Iq(n))として求める偏差演算部52hとを有している。この偏差演算部52hが求めたq軸補正値Cqが、q軸第減算部52d′に与えられるようになっている。図中、Z-1は信号の前回値を表す。 Similarly, the q-axis correction value calculation unit 52e calculates the q-axis voltage command value V q * (n−1) in the previous calculation cycle (n−1) and the q-axis current I q (n) detected in the current calculation cycle. ) And the electric resistance R of the electric circuit including the motor 1 and the drive circuit 13, the q-axis correction value C q is calculated. More specifically, the q-axis correction value calculation unit 52e includes a multiplication unit 52g that calculates the product of the q-axis current I q (n) and the electric resistance R, the output of the multiplication unit 52g, and the q-axis voltage in the previous calculation cycle. A deviation calculating unit 52h for obtaining a difference from the command value V q * (n−1) as a q-axis correction value C q (= V q * (n−1) −R · I q (n)). Yes. The q-axis correction value C q obtained by the deviation calculation unit 52h is given to the q-axis first subtraction unit 52d ′. In the figure, Z -1 represents the previous value of the signal.

乗算部51g,52gの演算結果RId(n),RIq(n)は、前演算周期(n−1)に電圧指令値Vd *(n-1),Vq *(n-1)が生成されて電圧指令値更新タイミングで出力された結果として、今演算周期(n)において前記電気回路の両端に生じた電圧である。したがって、d軸補正値Cdおよびq軸補正値Cqは、モータ電流等の検出タイミングと電圧指令値更新タイミングとのずれに起因して生じた電圧誤差に対応する。この電圧誤差は、時間軸上で隣り合う演算周期間で大きく相違しないと考えられる。 The calculation results RI d (n) and RI q (n) of the multipliers 51g and 52g are the voltage command values V d * (n−1) and V q * (n−1) in the previous calculation cycle (n−1). Is generated at the voltage command value update timing and is generated at both ends of the electric circuit in the current calculation cycle (n). Therefore, the d-axis correction value C d and the q-axis correction value C q correspond to a voltage error caused by a difference between the detection timing of the motor current or the like and the voltage command value update timing. It is considered that this voltage error does not greatly differ between calculation periods adjacent on the time axis.

そこで、この実施形態では、PI演算値Vdo,Vqoを非干渉化制御量Dd(n),Dq(n)で補正し、さらに、d軸補正値Cdおよびq軸補正値Cqで補正して、d軸電圧指令値Vd *(=Vdo+Dd−Cd)およびq軸電圧指令値Vq *(=Vqo+Dq−Cq)が求められるようになっている。したがって、これらの電圧指令値Vd *,Vq *は、それらが更新される時点において適切な値となる。その結果、モータ電流が変動的になることを抑制でき、振動や異音を抑制しつつ動特性を向上できる。 Therefore, in this embodiment, the PI calculation values V do and V qo are corrected by the non- interacting control amounts D d (n) and D q (n), and the d-axis correction value C d and the q-axis correction value C are further corrected. Corrected by q , the d-axis voltage command value V d * (= V do + D d −C d ) and the q-axis voltage command value V q * (= V qo + D q −C q ) are obtained. Yes. Therefore, these voltage command values V d * and V q * are appropriate values when they are updated. As a result, the motor current can be prevented from fluctuating, and the dynamic characteristics can be improved while suppressing vibration and abnormal noise.

図8は、この発明の第3の実施形態に係るモータ制御装置の構成を説明するためのブロック図であり、前述の図2または図7に示した構成に代えて用いることができるdq軸電圧指令値演算部19の構成が示されている。この図8において、前述の図7に示された各部と同等の機能部分には同一の参照符号を付して示す。
この実施形態では、d軸補正値演算部51eは、前演算周期(n−1)におけるd軸電圧指令値Vd *(n-1)と、今演算周期において検出されたd軸電流Id(n)と、前演算周期において検出されたd軸電流Id(n-1)と、モータ1および駆動回路13を含む電気回路の電気抵抗Rと、モータ1のd軸インダクタンスLdとを用いて、d軸補正値Cdを演算する。より具体的には、d軸補正値演算部51eは、d軸電流Id(n)および電気抵抗Rの積を求める乗算部51gと、今演算周期と前演算周期とのd軸電流変化ΔId(=Id(n)−Id(n-1))を求めるd軸電流変化演算部51iと、このd軸電流変化演算部51iが求めたd軸電流変化ΔIdにd軸インダクタンスLdを乗じる乗算部51jと、乗算部51g,51jの各出力を前演算周期におけるd軸電圧指令値Vd *(n-1)から差し引いてd軸補正値Cd(=Vd *(n-1)−R・Id(n)−Ld・ΔId)として求める偏差演算部51hとを有している。この偏差演算部51hが求めたd軸補正値Cdが、d軸減算部51d′に与えられるようになっている。図中、Z-1は信号の前回値を表す。
FIG. 8 is a block diagram for explaining the configuration of the motor control apparatus according to the third embodiment of the present invention. The dq-axis voltage that can be used in place of the configuration shown in FIG. 2 or FIG. The configuration of the command value calculation unit 19 is shown. In FIG. 8, functional parts equivalent to those shown in FIG. 7 are given the same reference numerals.
In this embodiment, the d-axis correction value calculation unit 51e includes the d-axis voltage command value V d * (n−1) in the previous calculation cycle (n−1) and the d-axis current I d detected in the current calculation cycle. (n), the d-axis current I d (n−1) detected in the previous calculation cycle, the electric resistance R of the electric circuit including the motor 1 and the drive circuit 13, and the d-axis inductance L d of the motor 1. Using this, the d-axis correction value C d is calculated. More specifically, the d-axis correction value calculation unit 51e includes a multiplication unit 51g that calculates the product of the d-axis current I d (n) and the electrical resistance R, and a d-axis current change ΔI between the current calculation cycle and the previous calculation cycle. d (= I d (n) −I d (n−1)) d-axis current change calculation unit 51i, and d-axis current change ΔI d obtained by this d-axis current change calculation unit 51i to d-axis inductance L The multiplication unit 51j that multiplies d and the outputs of the multiplication units 51g and 51j are subtracted from the d-axis voltage command value V d * (n-1) in the previous calculation cycle to obtain the d-axis correction value C d (= V d * (n −1) −R · I d (n) −L d · ΔI d ). The d-axis correction value C d obtained by the deviation calculation unit 51h is given to the d-axis subtraction unit 51d ′. In the figure, Z -1 represents the previous value of the signal.

同様に、q軸補正値演算部52eは、前演算周期(n−1)におけるq軸電圧指令値Vq *(n-1)と、今演算周期において検出されたq軸電流Iq(n)と、前演算周期において検出されたq軸電流Iq(n-1)と、モータ1および駆動回路13を含む電気回路の電気抵抗Rと、モータ1のq軸インダクタンスLqとを用いて、q軸補正値Cqを演算する。より具体的には、q軸補正値演算部52eは、q軸電流Iq(n)および電気抵抗Rの積を求める乗算部52gと、今演算周期と前演算周期とのq軸電流変化ΔIq(=Iq(n)−Iq(n-1))を求めるq軸電流変化演算部52iと、このq軸電流変化演算部52iが求めたq軸電流変化ΔIqにq軸インダクタンスLqを乗じる乗算部52jと、乗算部52g,52jの各出力を前演算周期におけるq軸電圧指令値Vq *(n-1)から差し引いてq軸補正値Cq(=Vq *(n-1)−R・Iq(n)−Lq・ΔIq)として求める偏差演算部52hとを有している。この偏差演算部52hが求めたq軸補正値Cqが、q軸減算部52dに与えられるようになっている。図中、Z-1は信号の前回値を表す。 Similarly, the q-axis correction value calculation unit 52e calculates the q-axis voltage command value V q * (n−1) in the previous calculation cycle (n−1) and the q-axis current I q (n) detected in the current calculation cycle. ), The q-axis current I q (n−1) detected in the previous calculation cycle, the electric resistance R of the electric circuit including the motor 1 and the drive circuit 13, and the q-axis inductance L q of the motor 1. Q-axis correction value C q is calculated. More specifically, the q-axis correction value calculation unit 52e includes a multiplication unit 52g that calculates the product of the q-axis current I q (n) and the electric resistance R, and a q-axis current change ΔI between the current calculation cycle and the previous calculation cycle. q (= I q (n) −I q (n−1)) to obtain q-axis current change calculation unit 52i, and q-axis current change ΔI q obtained by q-axis current change calculation unit 52i to q-axis inductance L The q -axis correction value C q (= V q * (n) is obtained by subtracting the outputs of the multiplication unit 52j that multiplies q and the outputs of the multiplication units 52g and 52j from the q-axis voltage command value V q * (n-1) in the previous calculation cycle. −1) −R · I q (n) −L q · ΔI q ). The q-axis correction value C q obtained by the deviation calculation unit 52h is given to the q-axis subtraction unit 52d. In the figure, Z -1 represents the previous value of the signal.

乗算部51g,51jの各出力の和(R・Id(n)+Ld・ΔId)は、前演算周期(n−1)にd軸電圧指令値Vd *(n-1)が生成されて電圧指令値更新タイミングで出力された結果として、今演算周期(n)において前記電気回路の両端に生じた電圧である。第2項は、電流微分項であり、前述の第2の実施形態では省かれていた項である。同様に、乗算部52g,52jの各出力の和(R・Iq(n)+Lq・ΔIq)は、前演算周期(n−1)にq電圧指令値Vq *(n-1)が生成されて電圧指令値更新タイミングで出力された結果として、今演算周期(n)において前記電気回路の両端に生じた電圧である。やはり、第2項は、電流微分項であり、前述の第2の実施形態では省かれていた項である。 The sum (R · I d (n) + L d · ΔI d ) of the outputs of the multipliers 51g and 51j generates the d-axis voltage command value V d * (n-1) in the previous calculation cycle (n-1). As a result of being output at the voltage command value update timing, it is a voltage generated at both ends of the electric circuit in the current calculation cycle (n). The second term is a current differential term, which is a term omitted in the second embodiment described above. Similarly, the sum (R · I q (n) + L q · ΔI q ) of the outputs of the multipliers 52g and 52j is the q voltage command value V q * (n-1) in the previous calculation period (n-1). Is generated at the voltage command value update timing and is generated at both ends of the electric circuit in the current calculation cycle (n). Again, the second term is a current differential term and is a term omitted in the second embodiment.

したがって、前述の第2の実施形態の場合と同じく、d軸補正値Cdおよびq軸補正値Cqは、モータ電流等の検出タイミングと電圧指令値更新タイミングとのずれに起因して生じた電圧誤差に対応する。よって、第2の実施形態の場合と同様に、電圧指令値Vd *,Vq *は、それらが更新される時点において適切な値となるので、モータ電流が変動的になることを抑制でき、振動や異音を抑制しつつ動特性を向上できる。さらに、この実施形態では、電流微分項まで考慮しているので、より一層適切なモータ制御が可能になる。 Therefore, as in the case of the second embodiment described above, the d-axis correction value C d and the q-axis correction value C q are caused by a difference between the detection timing of the motor current and the voltage command value update timing. Corresponds to voltage error. Therefore, as in the case of the second embodiment, the voltage command values V d * and V q * are appropriate values at the time when they are updated, so that the motor current can be prevented from fluctuating. The dynamic characteristics can be improved while suppressing vibration and abnormal noise. Furthermore, in this embodiment, since the current differential term is taken into consideration, more appropriate motor control can be performed.

以上、この発明の3つの実施形態について説明したが、この発明はさらに他の形態で実施することも可能である。たとえば、前述の実施形態では、q軸非干渉化制御量演算部52bで求められるq軸非干渉化制御量DqをωLdd+ωΦとしているが、これに代えて、ωLddをq軸非干渉化制御量Dqとして用いてもよい。
また、前述の第1の実施形態では、PI演算値を非干渉化制御量で補正し、さらに、その補正後の値をd軸/q軸補正値で補正しているが、非干渉化制御量をd軸/q軸補正値で補正し、この補正された後の非干渉化制御量でPI演算値を補正する構成としてもよい。
Although three embodiments of the present invention have been described above, the present invention can be implemented in other forms. For example, in the above-described embodiment, the q-axis non-interacting control amount D q obtained by the q-axis non-interacting control amount calculating unit 52b is set to ωL d I d + ωΦ, but instead of this, ωL d I d is set to The q-axis non-interacting control amount D q may be used.
In the first embodiment described above, the PI calculation value is corrected with the non-interacting control amount, and the corrected value is corrected with the d-axis / q-axis correction value. The amount may be corrected with the d-axis / q-axis correction value, and the PI calculation value may be corrected with the non-interacting control amount after the correction.

また、前述の第2および第3の実施形態では、補正値Cd,Cqを求めるために前演算周期の電圧指令値Vd *(n-1),Vq *(n-1)を用いているが、これらに代えて今演算周期の電圧指令値Vd *(n),Vq *(n)を用いてもよい。
また、前述の第3の実施形態では、前演算周期と今演算周期との電流の差を電流変化量として求めているが、他の計算方法で電流変化量を求めてもよい。
In the second and third embodiments described above, the voltage command values V d * (n−1) and V q * (n−1) in the previous calculation period are used to obtain the correction values C d and C q. However, instead of these, voltage command values V d * (n), V q * (n) of the current calculation cycle may be used.
In the third embodiment, the current difference between the previous calculation cycle and the current calculation cycle is obtained as the current change amount. However, the current change amount may be obtained by another calculation method.

また、前述の実施形態では、レゾルバ2でロータ回転位置を検出しているが、いわゆるセンサレス制御によってロータ回転位置を推定してもよい。そして、この推定されたロータ回転位置に基づいて回転角速度ωを演算するようにしてもよい。
また、ロータ回転位置に基づいて回転角速度ωを求める代わりに、次式(5)(6)に示すモータの方程式を利用して回転角速度ωを求めるようにしてもよい。ただし、次式(5)(6)において、pは微分演算子を表す。
In the above-described embodiment, the rotor rotational position is detected by the resolver 2, but the rotor rotational position may be estimated by so-called sensorless control. The rotational angular velocity ω may be calculated based on the estimated rotor rotational position.
Further, instead of obtaining the rotational angular velocity ω based on the rotor rotational position, the rotational angular velocity ω may be obtained by using a motor equation shown in the following equations (5) and (6). However, in the following formulas (5) and (6), p represents a differential operator.

d−(R+pLd)Id=ω(−Lqq) …(5)
q−(R+pLq)Iq=ω(Φ+Ldd) …(6)
より具体的には、微分項を省略して、次式(7)または(8)に従って回転角速度ωを求めることができる。
ω=(Vd(n-1)−RId)/(−Lqq) …(7)
ω=(Vq(n-1)−RIq)/(Φ+Ldd) …(8)
このような演算によって回転角速度ωを求めることにより、応答のよい回転角速度演算が可能になるので、非干渉化制御量をより的確に演算することができるようになる。
V d − (R + pL d ) I d = ω (−L q I q ) (5)
V q − (R + pL q ) I q = ω (Φ + L d I d ) (6)
More specifically, the rotational angular velocity ω can be obtained according to the following equation (7) or (8) with the differential term omitted.
ω = (V d (n−1) −RI d ) / (− L q I q ) (7)
ω = (V q (n−1) −RI q ) / (Φ + L d I d ) (8)
By calculating the rotational angular velocity ω by such calculation, it is possible to perform a rotational angular velocity calculation with a good response, so that the non-interacting control amount can be calculated more accurately.

また、SPM(Surface Permanent Magnet:表面磁石貼付型)モータなどのように、LdとLqとの差が小さい場合には、Ld=Lqとして非干渉化制御量等を演算してもよい。
また、前述の実施形態では、電動パワーステアリング装置の駆動源としてのモータに本発明が適用された例について説明したが、この発明は、電動パワーステアリング装置以外の用途のモータの制御に対しても適用が可能である。とくに、サーボ系で応答性や追従性が要求される用途でのモータトルク制御に応用すると効果的である。
Further, when the difference between L d and L q is small, such as an SPM (Surface Permanent Magnet) motor, the non-interacting control amount is calculated as L d = L q. Good.
In the above-described embodiment, the example in which the present invention is applied to the motor as the drive source of the electric power steering apparatus has been described. However, the present invention is also applicable to the control of a motor for applications other than the electric power steering apparatus. Applicable. In particular, it is effective when applied to motor torque control in applications where responsiveness and followability are required in a servo system.

その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。   In addition, various design changes can be made within the scope of the matters described in the claims.

この発明の一実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の電気的構成を説明するためのブロック図である。1 is a block diagram for explaining an electrical configuration of an electric power steering device to which a motor control device according to an embodiment of the present invention is applied. FIG. dq軸電圧指令値演算部の詳しい構成を説明するためのブロック図である。It is a block diagram for demonstrating the detailed structure of a dq axis voltage command value calculating part. d軸電流およびq軸電流の検出と、dq座標軸の回転との関係を示す図である。It is a figure which shows the relationship between the detection of d-axis current and q-axis current, and rotation of a dq coordinate axis. 電流値取得および電圧指令値更新の各タイミングを例示する図解図である。It is an illustration figure which illustrates each timing of electric current value acquisition and voltage command value update. モータ制御装置によるモータの制御手順を説明するためのフローチャートである。It is a flowchart for demonstrating the control procedure of the motor by a motor control apparatus. d軸電圧指令値およびq軸電圧指令値の演算手順を示すフローチャートである。It is a flowchart which shows the calculation procedure of d-axis voltage command value and q-axis voltage command value. この発明の第2の実施形態に係るモータ制御装置に適用されるdq軸電圧指令値演算部の構成を示すブロック図である。It is a block diagram which shows the structure of the dq-axis voltage command value calculating part applied to the motor control apparatus which concerns on 2nd Embodiment of this invention. この発明の第3の実施形態に係るモータ制御装置に適用されるdq軸電圧指令値演算部の構成を示すブロック図である。It is a block diagram which shows the structure of the dq axis voltage command value calculating part applied to the motor control apparatus which concerns on 3rd Embodiment of this invention.

符号の説明Explanation of symbols

1…モータ、2…レゾルバ、10…モータ制御装置、11…電流検出部、12…マイクロコンピュータ、51…d軸電圧指令値演算部、51c…d軸第1加算部、51d…d軸第2加算部、51d′…d軸減算部、51e…d軸補正値演算部、52…q軸電圧指令値演算部、52c…q軸第1加算部、52d…q軸第2加算部、52d′…q軸減算部、52e…q軸補正値演算部   DESCRIPTION OF SYMBOLS 1 ... Motor, 2 ... Resolver, 10 ... Motor control apparatus, 11 ... Current detection part, 12 ... Microcomputer, 51 ... d-axis voltage command value calculating part, 51c ... d-axis 1st addition part, 51d ... d-axis 2nd Adder, 51d '... d-axis subtractor, 51e ... d-axis correction value calculator, 52 ... q-axis voltage command value calculator, 52c ... q-axis first adder, 52d ... q-axis second adder, 52d' ... q-axis subtraction unit, 52e ... q-axis correction value calculation unit

Claims (4)

モータを駆動するための基本駆動値を演算する基本駆動値演算手段と、
前記モータの非干渉化制御のための非干渉化制御量を演算する非干渉化制御量演算手段と、
この非干渉化制御量演算手段によって演算される非干渉化制御量を補正するための補正値を演算する補正値演算手段と、
前記非干渉化制御量演算手段によって演算される前記非干渉化制御量、および前記補正値演算手段によって演算される前記補正値によって、前記基本駆動値演算手段により演算される前記基本駆動値を修正してモータ駆動値を得る修正手段と、
この修正手段での修正によって得られるモータ駆動値に基づいて前記モータを駆動する駆動手段とを含む、モータ制御装置。
Basic drive value calculating means for calculating a basic drive value for driving the motor;
A non-interacting control amount calculating means for calculating a non-interacting control amount for non-interacting control of the motor;
A correction value calculating means for calculating a correction value for correcting the non-interacting control amount calculated by the non-interacting control amount calculating means;
The basic driving value calculated by the basic driving value calculating means is corrected by the non-interacting control amount calculated by the non-interacting control amount calculating means and the correction value calculated by the correction value calculating means. Correction means for obtaining a motor drive value,
A motor control device including drive means for driving the motor based on a motor drive value obtained by correction by the correction means.
前記モータ制御装置が、所定の演算周期毎に前記モータ駆動値を更新して出力するものであり、
前記補正値演算手段が、今回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量から前回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量を差し引いた値を前記補正値として演算するものである、請求項1記載のモータ制御装置。
The motor control device updates and outputs the motor driving value at every predetermined calculation cycle,
The correction value calculating means is decoupled calculated by the non-interacting control amount computing means in the previous computing cycle from the non-interacting control quantity computed by the non-interacting control amount computing means in the current computing cycle. The motor control device according to claim 1, wherein a value obtained by subtracting a control amount is calculated as the correction value.
前記モータに流れるモータ電流を検出するモータ電流検出手段をさらに含み、
前記補正値演算手段が、前記モータ駆動値から、前記モータを含む電気回路の電気抵抗と前記モータ電流検出手段によって検出されたモータ電流との積を差し引いた値を前記補正値として演算するものである、請求項1記載のモータ制御装置。
A motor current detecting means for detecting a motor current flowing through the motor;
The correction value calculation means calculates, as the correction value, a value obtained by subtracting a product of an electric resistance of an electric circuit including the motor and a motor current detected by the motor current detection means from the motor driving value. The motor control device according to claim 1.
前記モータ制御装置が、所定の演算周期毎に前記モータ駆動値を更新して出力するものであり、
前記演算周期毎に、前記モータに流れるモータ電流を検出するモータ電流検出手段をさらに含み、
前記補正値演算手段が、前記モータ駆動値から、前記モータを含む電気回路の電気抵抗と前記モータ電流検出手段によって検出されたモータ電流との積を差し引き、さらに、今回の演算周期と前回の演算周期との間におけるモータ電流変化量にモータ巻線のインダクタンスを乗じた値を差し引いた値を前記補正値として演算するものである、請求項1記載のモータ制御装置。
The motor control device updates and outputs the motor driving value at every predetermined calculation cycle,
A motor current detecting means for detecting a motor current flowing through the motor for each calculation cycle;
The correction value calculation means subtracts the product of the electric resistance of the electric circuit including the motor and the motor current detected by the motor current detection means from the motor drive value, and further calculates the current calculation cycle and the previous calculation. The motor control device according to claim 1, wherein a value obtained by subtracting a value obtained by multiplying an amount of change in the motor current with respect to the period by the inductance of the motor winding is calculated as the correction value.
JP2007307645A 2007-11-28 2007-11-28 Motor control device Expired - Fee Related JP5141955B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007307645A JP5141955B2 (en) 2007-11-28 2007-11-28 Motor control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007307645A JP5141955B2 (en) 2007-11-28 2007-11-28 Motor control device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012201600A Division JP5459564B2 (en) 2012-09-13 2012-09-13 Motor control device

Publications (2)

Publication Number Publication Date
JP2009136035A true JP2009136035A (en) 2009-06-18
JP5141955B2 JP5141955B2 (en) 2013-02-13

Family

ID=40867389

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007307645A Expired - Fee Related JP5141955B2 (en) 2007-11-28 2007-11-28 Motor control device

Country Status (1)

Country Link
JP (1) JP5141955B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014046235A1 (en) * 2012-09-21 2014-03-27 日産自動車株式会社 Inverter control device and inverter control method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5397664B2 (en) * 2008-07-23 2014-01-22 株式会社ジェイテクト Motor control device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1198900A (en) * 1997-09-22 1999-04-09 Hitachi Ltd Current controller for power converter
JP2002291298A (en) * 2002-03-25 2002-10-04 Hitachi Ltd Motor controller and controller for electric rolling stock
JP2006197718A (en) * 2005-01-13 2006-07-27 Nissan Motor Co Ltd Controller for motor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1198900A (en) * 1997-09-22 1999-04-09 Hitachi Ltd Current controller for power converter
JP2002291298A (en) * 2002-03-25 2002-10-04 Hitachi Ltd Motor controller and controller for electric rolling stock
JP2006197718A (en) * 2005-01-13 2006-07-27 Nissan Motor Co Ltd Controller for motor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014046235A1 (en) * 2012-09-21 2014-03-27 日産自動車株式会社 Inverter control device and inverter control method
JP5930052B2 (en) * 2012-09-21 2016-06-08 日産自動車株式会社 Inverter control device and inverter control method

Also Published As

Publication number Publication date
JP5141955B2 (en) 2013-02-13

Similar Documents

Publication Publication Date Title
JP5130716B2 (en) Motor control device and electric power steering device
JP4881635B2 (en) Vector controller for permanent magnet motor
JP5168448B2 (en) Motor control device and electric power steering device
JP2004328814A (en) Electric power steering device
JP5387878B2 (en) Motor control device
JP3674919B2 (en) Electric power steering apparatus and control method thereof
JP2011151883A (en) Torque ripple suppression control device for permanent magnet motor, and electric power steering system
WO2011151977A1 (en) Electric motor controller and electric motor control system
JP5408469B2 (en) Motor control device
JP2009165259A (en) Motor controller and electric power steering system
JP2009247181A (en) Motor control device and electric power steering device
JP2008220155A (en) Motor controller and electric power steering system
JP5136839B2 (en) Motor control device
JP5376213B2 (en) Motor control device
JP2009171726A (en) Motor control unit and electric power steering system
JP4561105B2 (en) Motor control device
JP2006262668A (en) Electric power steering device
JP5397664B2 (en) Motor control device
JP2008154308A (en) Controller of motor-driven power steering system
JP5141955B2 (en) Motor control device
JP4680754B2 (en) DC brushless motor rotor angle estimation method and DC brushless motor control device
JP4466082B2 (en) Control device for electric power steering device
JP2019050684A (en) Controller of power steering device
JP5459564B2 (en) Motor control device
JP2008155683A (en) Electric power steering device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120913

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: 20121025

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: 20121107

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151130

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5141955

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees