JP2011087402A - Motor controller and electric power steering device - Google Patents

Motor controller and electric power steering device Download PDF

Info

Publication number
JP2011087402A
JP2011087402A JP2009238387A JP2009238387A JP2011087402A JP 2011087402 A JP2011087402 A JP 2011087402A JP 2009238387 A JP2009238387 A JP 2009238387A JP 2009238387 A JP2009238387 A JP 2009238387A JP 2011087402 A JP2011087402 A JP 2011087402A
Authority
JP
Japan
Prior art keywords
value
detection
resistance
angular velocity
electric 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
JP2009238387A
Other languages
Japanese (ja)
Inventor
Itsuhito Komatsu
逸人 小松
Takeshi Ueda
武史 上田
Shingo Maeda
真悟 前田
Yuji Karizume
裕二 狩集
Tomohito Shinoda
智史 篠田
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 JP2009238387A priority Critical patent/JP2011087402A/en
Publication of JP2011087402A publication Critical patent/JP2011087402A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a motor controller for controlling a motor precisely by estimating an angular velocity accurately regardless of a temperature change or the like of a motor with a brush. <P>SOLUTION: An angular velocity estimation value ωe is used for motor control of an electric power steering device, and is obtained as follows. A resistance value Rc is calculated from a current detection value Im and a voltage detection value Vm obtained for each control period in a steering holding state. When the number of times for calculating the resistance value Rc is not less than the prescribed Ca times during one steering holding period, an average of the resistance value Rc for the nearest Ca times is calculated as a new resistance value Rnew (S54). When the number of times for calculating the resistance value Rc is C times, which is smaller than Ca times, a weighted mean of an average R1 of the resistance value Rc for the nearest C times and an average Rold of the resistance value Rc for the Ca times in the last steering holding period is calculated as the new resistance value Rnew (S62). The angular velocity estimation value ωe is calculated by the new resistance value Rnew (S58). <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、ブラシ付きモータ等の電動モータを駆動するモータ制御装置およびそれを用いた電動パワーステアリング装置に関する。   The present invention relates to a motor control device that drives an electric motor such as a motor with a brush, and an electric power steering device using the same.

電動パワーステアリング装置におけるモータ制御装置では、モータに流すべき電流の目標値の決定において、操舵トルクや車速に加えて、操舵速度に対応する当該モータの角速度も考慮される。これに対し、ブラシレスモータを制御する場合には、通常、レゾルバ等のモータ回転位置を検出するための角度検出センサが使用されるので、その角度検出センサの出力信号を時間微分することによりモータ角速度を得ることができる。しかし、ブラシ付きモータの制御のように角度センサを使用しないモータ制御では、モータ電流およびモータ端子間電圧を検出し、下記式に基づきモータ角速度ωが算出される。
ω=(V−I×R)/k …(1)
ここで、Vはモータ端子間電圧であり、Iはモータ電流であり、Rはモータ抵抗(モータ端子間抵抗)であり、kは逆起電力定数である。
In the motor control device in the electric power steering apparatus, in determining the target value of the current to be passed through the motor, the angular speed of the motor corresponding to the steering speed is considered in addition to the steering torque and the vehicle speed. On the other hand, when controlling a brushless motor, an angle detection sensor for detecting the rotational position of the motor such as a resolver is usually used. Therefore, the motor angular velocity is obtained by differentiating the output signal of the angle detection sensor with respect to time. Can be obtained. However, in motor control that does not use an angle sensor, such as control of a motor with a brush, the motor current and the voltage between the motor terminals are detected, and the motor angular velocity ω is calculated based on the following equation.
ω = (V−I × R) / k (1)
Here, V is a voltage between motor terminals, I is a motor current, R is a motor resistance (resistance between motor terminals), and k is a counter electromotive force constant.

なお、本願発明に関連して以下のような従来技術が知られている。すなわち、特許文献1には、舵輪に加えられる操舵トルクに応じて駆動される操舵補助用のモータを備えた動力舵取装置において、モータの駆動電流の検出結果と、これに対応する端子電圧検出結果の平均値との複数個のデータからモータの内部抵抗を求め、端子電圧からその内部抵抗と駆動電流との積を減算して逆起電力を求め、この逆起電力から当該モータの回転角速度を求めるという構成が開示されている。また、特許文献2および特許文献3には、操舵トルクの大きさに応じてモータを駆動するコントロールユニットを備えた電動パワーステアリング装置において、当該コントロールユニットが、検出された端子間電圧とモータ電流検出値とに基づいてモータ端子間抵抗値を求め、そのモータ端子間抵抗値に基づいてモータの巻線温度を推定し、その推定された巻線温度に基づいて逆起電力定数を温度補正し、その温度補正された逆起電力定数を用いてモータ角速度を推定するという構成が開示されている。   The following conventional techniques are known in relation to the present invention. That is, in Patent Literature 1, in a power steering apparatus including a steering assist motor driven in accordance with a steering torque applied to a steered wheel, a detection result of a motor drive current and a terminal voltage detection corresponding thereto. The internal resistance of the motor is obtained from a plurality of data with the average value of the result, the back electromotive force is obtained by subtracting the product of the internal resistance and the drive current from the terminal voltage, and the rotational angular velocity of the motor is obtained from this back electromotive force. The structure of requesting is disclosed. In Patent Document 2 and Patent Document 3, in an electric power steering apparatus including a control unit that drives a motor in accordance with the magnitude of steering torque, the control unit detects the detected inter-terminal voltage and motor current. The resistance value between the motor terminals is obtained based on the value, the winding temperature of the motor is estimated based on the resistance value between the motor terminals, the back electromotive force constant is temperature-corrected based on the estimated winding temperature, A configuration is disclosed in which the motor angular velocity is estimated using the temperature-corrected counter electromotive force constant.

特公平7−25313号公報Japanese Patent Publication No. 7-25313 特許第4258502号広報Patent No. 4258502 特許第3767035号広報Patent No. 3767035

ところで、上記のモータ抵抗Rは、温度変化や、製造ばらつき、ブラシ付きモータのブラシと整流子間の接触状態等によって変動する。また、逆起電力定数kも必ずしも一定ではなく、温度変化や製造ばらつき等によって変動する。このようなモータ抵抗Rまたは逆起電力定数kの変動によって上記式(1)によるモータ角速度ωの推定精度が低下する。その結果、例えば、上記のようなモータ制御装置を用いた電動パワーステアリング装置において、モータ角速度を使用する制御の精度が低下し、良好に操舵補助を行えないおそれがある。   By the way, the motor resistance R varies depending on temperature change, manufacturing variation, contact state between the brush and the commutator of the motor with brush, and the like. Further, the back electromotive force constant k is not necessarily constant, and fluctuates due to temperature changes, manufacturing variations, and the like. The estimation accuracy of the motor angular velocity ω according to the above equation (1) is lowered by such a change in the motor resistance R or the counter electromotive force constant k. As a result, for example, in the electric power steering apparatus using the motor control apparatus as described above, the accuracy of control using the motor angular velocity is lowered, and there is a possibility that steering assist cannot be performed satisfactorily.

そこで本発明の目的は、ブラシ付きモータ等のように高精度のモータ角度検出センサを使用せずに駆動されるモータにおいて温度変化や製造ばらつき等があっても精度よくモータ角速度を推定し、その推定値を用いて高精度に当該モータを制御できるモータ制御装置を提供することである。また、本発明の他の目的は、そのようなモータ制御装置を備えた電動パワーステアリング装置を提供することである。   Therefore, an object of the present invention is to accurately estimate the motor angular velocity even if there is a temperature change or manufacturing variation in a motor driven without using a high-precision motor angle detection sensor such as a motor with a brush. It is to provide a motor control device capable of controlling the motor with high accuracy using an estimated value. Another object of the present invention is to provide an electric power steering apparatus provided with such a motor control device.

第1の発明は、電動モータの電機子巻線に生じる逆起電力に基づき当該電動モータの回転速度の推定値を算出し、当該推定値を用いて当該電動モータを駆動するモータ制御装置であって、
前記電動モータに流れる電流を検出する電流検出手段と、
前記電動モータに印加される電圧を検出する電圧検出手段と、
前記電動モータが所定状態にあるときに所定の物理量につき順次取得される複数の検出値に基づき、前記電動モータの回路方程式におけるパラメータである前記電動モータの抵抗値および逆起電力定数のうち少なくとも1つのパラメータの値を更新パラメータ値として算出するパラメータ値更新手段と、
前記パラメータ値更新手段により算出される前記更新パラメータ値と前記電流検出手段により取得される電流検出値と前記電圧検出手段により取得される電圧検出値とを用いて、前記回路方程式に基づき、前記電動モータの回転速度を示す速度推定値を算出する推定値算出手段とを備え、
前記パラメータ値更新手段は、
前記更新パラメータ値の新たな算出のために前記物理量につき取得された検出値の個数が所定数以上であるときには、当該取得された検出値を用いて第1の所定方法により新たな更新パラメータ値を算出し、
前記更新パラメータ値の新たな算出のために前記物理量につき取得された検出値の個数が前記所定数よりも少ないときには、当該取得された検出値と既に得られている前記更新パラメータ値とを用いて第2の所定方法により新たな更新パラメータ値を算出し、
前記推定値算出手段は、前記パラメータ値更新手段によって新たな更新パラメータ値が算出されると、当該新たな更新パラメータ値を用いて前記速度推定値を算出することを特徴とする。
The first invention is a motor control device that calculates an estimated value of the rotational speed of the electric motor based on a counter electromotive force generated in an armature winding of the electric motor and drives the electric motor using the estimated value. And
Current detecting means for detecting a current flowing through the electric motor;
Voltage detecting means for detecting a voltage applied to the electric motor;
Based on a plurality of detection values sequentially acquired for a predetermined physical quantity when the electric motor is in a predetermined state, at least one of the resistance value of the electric motor and the back electromotive force constant, which are parameters in the circuit equation of the electric motor. Parameter value update means for calculating the value of one parameter as an update parameter value;
Using the updated parameter value calculated by the parameter value updating unit, the current detection value acquired by the current detection unit, and the voltage detection value acquired by the voltage detection unit, the electric motor based on the circuit equation An estimated value calculating means for calculating a speed estimated value indicating the rotational speed of the motor,
The parameter value updating means includes
When the number of detection values acquired for the physical quantity for a new calculation of the update parameter value is equal to or greater than a predetermined number, a new update parameter value is obtained by the first predetermined method using the acquired detection value. Calculate
When the number of detection values acquired for the physical quantity for a new calculation of the update parameter value is smaller than the predetermined number, the acquired detection value and the update parameter value already obtained are used. A new update parameter value is calculated by the second predetermined method,
When the new update parameter value is calculated by the parameter value update unit, the estimated value calculation unit calculates the speed estimated value using the new update parameter value.

第2の発明は、第1の発明において、
前記電動モータの回転速度が0近傍の所定値以下か否かを判定する判定手段を更に備え、
前記パラメータ値更新手段は、前記判定手段によって前記電動モータの回転速度が前記所定値以下であると判定されているときに前記電流検出手段および電圧検出手段により前記物理量の検出値として順次取得される複数の電流検出値および電圧検出値に基づき前記電動モータの抵抗値を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値から当該検出時点における前記電動モータの抵抗値を算出抵抗値として求め、前記所定数の当該算出抵抗値についての移動平均値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値から当該検出時点における前記電動モータの抵抗値を算出抵抗値として求め、複数の当該算出抵抗値についての平均値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする。
According to a second invention, in the first invention,
A determination means for determining whether or not the rotation speed of the electric motor is equal to or less than a predetermined value near 0;
The parameter value updating means is sequentially acquired as the physical quantity detection value by the current detection means and voltage detection means when the determination means determines that the rotation speed of the electric motor is equal to or less than the predetermined value. Calculate a resistance value of the electric motor based on a plurality of current detection values and voltage detection values,
The first predetermined method obtains a resistance value of the electric motor at the detection time as a calculated resistance value from the current detection value and the voltage detection value at each detection time of the plurality of current detection values and voltage detection values, It is a method of calculating a moving average value for a predetermined number of the calculated resistance values as a new update parameter value,
In the second predetermined method, a resistance value of the electric motor at the detection time is obtained as a calculated resistance value from the current detection value and the voltage detection value at each detection time of the plurality of current detection values and voltage detection values. The weighted average value of the average value of the calculated resistance value and the update parameter value already obtained is calculated as a new update parameter value.

第3の発明は、第1の発明において、
前記電動モータの回転速度を前記電動モータの駆動制御に必要な精度よりも低い精度で検出する簡易速度検出手段を更に備え、
前記パラメータ値更新手段は、前記簡易速度検出手段によって検出される回転速度が所定値以上であるときに前記物理量の検出値として前記電流検出手段および電圧検出手段により順次取得される複数の電流検出値および電圧検出値と前記簡易速度検出手段により順次取得される複数の回転速度検出値とに基づき、前記電動モータの抵抗値および逆起電力定数を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とが前記回路方程式を少なくとも近似的に満たすように、前記電動モータの抵抗値および逆起電力定数を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とが前記回路方程式を少なくとも近似的に満たすように、前記電動モータの抵抗値および逆起電力定数を仮パラメータ値として算出し、当該仮パラメータ値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする。
According to a third invention, in the first invention,
A simple speed detecting means for detecting the rotational speed of the electric motor with an accuracy lower than that required for drive control of the electric motor;
The parameter value update means includes a plurality of current detection values sequentially acquired by the current detection means and the voltage detection means as detection values of the physical quantity when the rotation speed detected by the simple speed detection means is a predetermined value or more. And a resistance value and a back electromotive force constant of the electric motor based on the voltage detection value and a plurality of rotation speed detection values sequentially obtained by the simple speed detection means,
In the first predetermined method, the current detection value, the voltage detection value, and the rotation speed detection value at each detection point of the plurality of current detection values and voltage detection values satisfy at least approximately the circuit equation. , Calculating the resistance value and back electromotive force constant of the electric motor as a new update parameter value,
In the second predetermined method, the current detection value, the voltage detection value, and the rotation speed detection value at each detection time of the plurality of current detection values and voltage detection values satisfy at least approximately the circuit equation. A method of calculating a resistance value and a back electromotive force constant of the electric motor as a temporary parameter value, and calculating a weighted average value of the temporary parameter value and the update parameter value already obtained as a new update parameter value It is characterized by being.

第4の発明は、第1の発明において、
前記電動モータの回転速度が前記電動モータの駆動制御に必要な精度よりも低い精度で得られるような分解能で前記電動モータの回転角を検出する簡易角度検出手段を更に備え、
前記パラメータ値更新手段は、前記簡易角度検出手段により検出される回転角が変化して新たな回転角が第1回転角検出値として検出された第1時点から当該第1時点以降において前記簡易角度検出手段により検出される回転角が変化して新たな回転角が第2回転角検出値として検出される第2時点までに前記電流検出手段および電圧検出手段により前記物理量の検出値として順次取得される複数の電流検出値および電圧検出値に基づき、前記電動モータの抵抗値を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値ならびに前記第1および第2回転角を用いて、前記回路方程式を前記第1時点から前記第2時点まで積分した方程式より、前記電動モータの抵抗値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値ならびに前記第1および第2回転角を用いて、前記回路方程式を前記第1時点から前記第2時点まで積分した方程式より、前記電動モータの抵抗値を仮パラメータ値として算出し、当該仮パラメータ値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする。
According to a fourth invention, in the first invention,
A simple angle detecting means for detecting the rotation angle of the electric motor with a resolution such that the rotation speed of the electric motor is obtained with an accuracy lower than the accuracy required for drive control of the electric motor;
The parameter value updating means changes the simple angle from the first time point to the first time point when the rotation angle detected by the simple angle detection means is changed and a new rotation angle is detected as the first rotation angle detection value. Until the second time point when the rotation angle detected by the detection unit changes and a new rotation angle is detected as the second rotation angle detection value, the current detection unit and the voltage detection unit sequentially acquire the detection value of the physical quantity. A resistance value of the electric motor is calculated based on a plurality of detected current values and detected voltage values,
The first predetermined method is based on an equation obtained by integrating the circuit equation from the first time point to the second time point, using the plurality of current detection values and voltage detection values and the first and second rotation angles. It is a method of calculating the resistance value of the electric motor as a new update parameter value,
The second predetermined method is based on an equation obtained by integrating the circuit equation from the first time point to the second time point using the plurality of current detection values and voltage detection values and the first and second rotation angles. It is a method of calculating a resistance value of the electric motor as a temporary parameter value, and calculating a weighted average value of the temporary parameter value and the already obtained update parameter value as a new update parameter value. To do.

第5の発明は、第1の発明において、
前記電動モータの回転速度を前記電動モータの駆動制御に必要な精度よりも低い精度で検出する簡易速度検出手段を更に備え、
前記パラメータ値更新手段は、前記簡易速度検出手段によって検出される回転速度が所定値以上であるときに前記物理量の検出値として前記電流検出手段および電圧検出手段により順次取得される複数の電流検出値および電圧検出値と前記簡易速度検出手段により順次取得される複数の回転速度検出値とに基づき、前記電動モータの逆起電力定数を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とを用いて前記回路方程式より当該検出時点における前記電動モータの逆起電力定数を算出逆起電力定数として求め、前記所定数の当該算出逆起電力定数についての移動平均値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とを用いて前記回路方程式より当該検出時点における前記電動モータの逆起電力定数を算出逆起電力定数として求め、複数の当該算出逆起電力定数についての平均値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする。
According to a fifth invention, in the first invention,
A simple speed detecting means for detecting the rotational speed of the electric motor with an accuracy lower than that required for drive control of the electric motor;
The parameter value update means includes a plurality of current detection values sequentially acquired by the current detection means and the voltage detection means as detection values of the physical quantity when the rotation speed detected by the simple speed detection means is a predetermined value or more. And a voltage detection value and a plurality of rotation speed detection values sequentially obtained by the simple speed detection means, to calculate a counter electromotive force constant of the electric motor,
The first predetermined method uses the current detection value, the voltage detection value, and the rotation speed detection value at each detection time of the plurality of current detection values and voltage detection values to determine the detection time at the detection time from the circuit equation. A method of obtaining a counter electromotive force constant of an electric motor as a calculated counter electromotive force constant, and calculating a moving average value for the predetermined number of the calculated counter electromotive force constants as a new update parameter value,
The second predetermined method uses the current detection value, the voltage detection value, and the rotation speed detection value at each detection time of the plurality of current detection values and voltage detection values to determine the detection time at the detection time from the circuit equation. A back electromotive force constant of the electric motor is obtained as a calculated back electromotive force constant, and a weighted average value of the average value of the plurality of calculated back electromotive force constants and the update parameter value already obtained is used as a new update parameter value. It is a method of calculating.

第6の発明は、第1の発明において、
前記電動モータの抵抗を構成する複数の抵抗成分のそれぞれに対応する装置の構成要素の温度を前記物理量として検出する温度検出手段を更に備え、
前記パラメータ値更新手段は、
前記複数の抵抗成分のそれぞれの温度特性を個別に保持している温度特性格納手段を含み、
前記温度検出手段によって各構成要素につき順次取得される複数の温度検出値を用いて前記温度特性に基づき前記電動モータの抵抗値を算出し、
前記第1の所定方法は、各構成要素につき順次取得された前記複数の温度検出値の各検出時点における当該温度検出値を用いて、当該構成要素に対応する抵抗成分の温度特性に基づき当該検出時点における当該抵抗成分の値を取得し、前記複数の抵抗成分についての当該値の和を前記電動モータの算出抵抗値として求め、前記所定数の当該算出抵抗値についての移動平均値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、各構成要素につき順次取得された前記複数の温度検出値の各検出時点における当該温度検出値を用いて、当該構成要素に対応する抵抗成分の温度特性に基づき当該検出時点における当該抵抗成分の値を取得し、前記複数の抵抗成分についての当該値の和を前記電動モータの算出抵抗値として求め、複数の当該算出抵抗値についての平均値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする。
According to a sixth invention, in the first invention,
Temperature detecting means for detecting the temperature of the component of the device corresponding to each of the plurality of resistance components constituting the resistance of the electric motor as the physical quantity;
The parameter value updating means includes
Including temperature characteristic storage means for individually holding the temperature characteristics of the plurality of resistance components,
Calculate a resistance value of the electric motor based on the temperature characteristics using a plurality of temperature detection values sequentially acquired for each component by the temperature detection means,
The first predetermined method uses the temperature detection value at each detection time of the plurality of temperature detection values sequentially acquired for each component, and detects the detection based on the temperature characteristic of the resistance component corresponding to the component. The value of the resistance component at the time is acquired, the sum of the values for the plurality of resistance components is obtained as the calculated resistance value of the electric motor, and the moving average value for the predetermined number of calculated resistance values is newly updated. It is a method of calculating as a parameter value,
The second predetermined method uses the temperature detection value at each detection time of the plurality of temperature detection values sequentially acquired for each component, and detects the detection based on a temperature characteristic of a resistance component corresponding to the component. The value of the resistance component at the time is acquired, the sum of the values for the plurality of resistance components is obtained as the calculated resistance value of the electric motor, and the average value for the plurality of calculated resistance values is already obtained. The method is characterized in that a weighted average value with the update parameter value is calculated as a new update parameter value.

第7の発明は、車両のステアリング機構に電動モータによって操舵補助力を与える電動パワーステアリング装置であって、
第1から第6の発明のいずれかに係るモータ制御装置を備え、
前記モータ制御装置は、前記ステアリング機構に前記操舵補助力を与える電動モータを駆動することを特徴とする。
A seventh aspect of the invention is an electric power steering device that applies a steering assist force by an electric motor to a steering mechanism of a vehicle,
A motor control device according to any one of the first to sixth inventions;
The motor control device drives an electric motor that applies the steering assist force to the steering mechanism.

上記第1の発明に係るモータ制御装置では、電動モータの回転速度を示す速度推定値を算出するために使用する更新パラメータ値の新たな算出に必要な所定の物理量の検出値の取得個数が所定数以上であるときには、それらの検出値を用いて第1の所定方法により新たな更新パラメータ値が算出される。これによりノイズの少ない安定した更新パラメータ値が得られるので、速度推定値を精度良く算出することができる。また、このような更新パラメータ値の新たな算出に必要な上記物理量の検出値の取得個数が所定数よりも少ないときには、取得された検出値に加えて既に得られている更新値パラメータ値を用いて第2の所定方法により新たな更新パラメータ値が算出される。このため、上記物理量の検出値の取得個数が少ない時点であっても、また上記物理量の検出可能な所定状態の期間が短い場合であっても、ノイズの少ない安定した更新パラメータ値を算出することができる。したがって、上記第1の発明によれば、当該電動モータに個体差があっても、また温度が変化したり当該電動モータがブラシ付きモータであってブラシと整流子の間の接触状態が変化しても、当該電動モータの速度推定値が精度良く算出され、これによりモータ制御装置の制御性能が向上する。   In the motor control device according to the first aspect of the invention, the number of acquired detection values of the predetermined physical quantity required for new calculation of the update parameter value used for calculating the speed estimation value indicating the rotation speed of the electric motor is predetermined. When the number is greater than or equal to the number, a new update parameter value is calculated by the first predetermined method using those detected values. As a result, a stable update parameter value with less noise can be obtained, so that the speed estimation value can be calculated with high accuracy. Further, when the number of detection values of the physical quantity required for new calculation of the update parameter value is smaller than a predetermined number, the update value parameter value already obtained is used in addition to the acquired detection value. Thus, a new update parameter value is calculated by the second predetermined method. Therefore, it is possible to calculate a stable update parameter value with less noise even when the number of acquired physical quantity detection values is small or when the period of a predetermined state in which the physical quantity can be detected is short. Can do. Therefore, according to the first invention, even if there is an individual difference in the electric motor, the temperature changes or the electric motor is a brushed motor, and the contact state between the brush and the commutator changes. However, the estimated speed value of the electric motor is calculated with high accuracy, thereby improving the control performance of the motor control device.

上記第2の発明に係るモータ制御装置では、電動モータの回転速度が0近傍の所定値以下であるときに新たな更新パラメータ値の算出に必要な上記物理量の検出値として電流検出値および電圧検出値が取得され、それら検出値の取得個数が所定数以上であるときには、それら検出値の各検出時点における当該電流検出値および電圧検出値に基づき当該検出時点における電動モータの抵抗値が算出抵抗値として算出され、上記所定数の当該算出抵抗値についての移動平均値が新たな更新パラメータ値として算出される。また、このような更新パラメータ値としての電動モータの抵抗値の新たな算出のための電流検出値および電圧検出値の取得個数が上記所定数よりも少ないときであっても、取得された電流検出値および電圧検出値の各検出時点での当該電流検出および電圧検出に基づき当該検出時点での電動モータの抵抗値が算出抵抗値として算出され、当該取得個数の当該算出抵抗値についての平均値と既に得られている更新パラメータ値との加重平均値が新たな更新パラメータ値として算出される。したがって、新たな更新パラメータ値の算出のための電流検出値および電圧検出値の取得個数の多少に拘わらず、また電動モータの回転速度が0近傍の所定値以下である期間(算出抵抗値の取得可能な期間)の長短に拘わらず、ノイズの少ない安定した更新パラメータ値(電動モータの抵抗値)を高い頻度で算出することができる。このような第2の発明によれば、当該電動モータに個体差があっても、また温度が変化したり当該電動モータがブラシ付きモータであってブラシと整流子の間の接触状態が変化しても、更新パラメータ値がその変化に追随し、当該電動モータの速度推定値が精度良く算出されるので、モータ制御装置の制御性能が向上する。   In the motor control device according to the second aspect of the invention, when the rotation speed of the electric motor is equal to or less than a predetermined value near 0, a current detection value and a voltage detection are detected as detection values of the physical quantity necessary for calculating a new update parameter value. When a value is acquired and the number of detection values acquired is equal to or greater than a predetermined number, the resistance value of the electric motor at the detection time is calculated based on the current detection value and the voltage detection value at each detection time of the detection values. The moving average value for the predetermined number of calculated resistance values is calculated as a new update parameter value. Further, even when the number of acquired current detection values and voltage detection values for the new calculation of the resistance value of the electric motor as the update parameter value is smaller than the predetermined number, the acquired current detection The resistance value of the electric motor at the detection time is calculated as a calculated resistance value based on the current detection and voltage detection at each detection time of the value and the voltage detection value, and the average value for the calculated resistance value of the acquired number A weighted average value with the already obtained update parameter value is calculated as a new update parameter value. Therefore, regardless of the number of acquired current detection values and voltage detection values for calculating a new update parameter value, the period during which the rotation speed of the electric motor is equal to or less than a predetermined value near 0 (acquisition of calculated resistance value). Regardless of the length of the possible period, a stable update parameter value (resistance value of the electric motor) with less noise can be calculated with high frequency. According to the second invention as described above, even if there is an individual difference in the electric motor, the temperature changes, or the electric motor is a brushed motor, and the contact state between the brush and the commutator changes. However, since the update parameter value follows the change and the speed estimation value of the electric motor is calculated with high accuracy, the control performance of the motor control device is improved.

上記第3の発明に係るモータ制御装置では、簡易速度検出手段によって検出される回転速度が所定値以上であるときに新たな更新パラメータ値の算出に必要な上記物理量の検出値として複数の電流検出値および電圧検出値が順次取得され、それら検出値の取得個数が所定数以上であるときには、それら検出値の各検出時点における当該電流検出値および電圧検出値と簡易速度検出手段による回転速度検出値とが電動モータの回路方程式を少なくとも近似的に満たすように電動モータの抵抗値および逆起電力定数が新たな更新パラメータ値として算出される。これにより、低コストの簡易速度検出手段を使用して、ノイズの少ない安定した更新パラメータ値として電動モータの抵抗値のみならず逆起電力定数をも得ることができる。また、このような更新パラメータ値の新たな算出のための電流検出値および電圧検出値等の取得個数が所定数よりも少ないときには、上記と同様にして得られる電動モータの抵抗値および逆起電力定数が仮パラメータ値とされ、当該仮パラメータ値と既に得られている更新パラメータ値との加重平均値が新たな更新パラメータ値として算出される。したがって、新たな更新パラメータ値の算出のための電流検出値および電圧検出値等の取得個数の多少に拘わらず、また回転速度が所定値以上である期間の長短に拘わらず、ノイズの少ない安定した更新パラメータ値として電動モータの抵抗値のみならず逆起電力定数をも高い頻度で算出することができる。このような第3の発明によれば、当該電動モータに個体差があっても、また温度が変化したり当該電動モータがブラシ付きモータであってブラシと整流子の間の接触状態が変化しても、更新パラメータ値がその変化に追随し、当該電動モータの速度推定値がより精度良く算出されるので、モータ制御装置の制御性能がより向上する。   In the motor control device according to the third aspect of the present invention, when the rotational speed detected by the simple speed detecting means is equal to or higher than a predetermined value, a plurality of current detections are detected as detection values of the physical quantity necessary for calculating a new update parameter value. Value and voltage detection value are acquired sequentially, and when the number of detection values acquired is equal to or greater than a predetermined number, the current detection value and voltage detection value at each detection time of those detection values and the rotation speed detection value by the simple speed detection means And the resistance value of the electric motor and the back electromotive force constant are calculated as new update parameter values so that the circuit equation of the electric motor at least approximately satisfies the circuit equation. As a result, it is possible to obtain not only the resistance value of the electric motor but also the counter electromotive force constant as a stable update parameter value with less noise by using a low-cost simple speed detection means. Further, when the number of acquired current detection values and voltage detection values for the new calculation of the updated parameter value is less than a predetermined number, the resistance value and back electromotive force of the electric motor obtained in the same manner as described above The constant is set as a temporary parameter value, and a weighted average value between the temporary parameter value and an already obtained update parameter value is calculated as a new update parameter value. Therefore, regardless of the number of acquired current detection values and voltage detection values for calculating a new update parameter value, and regardless of the length of the period when the rotation speed is equal to or higher than the predetermined value, the noise is stable and stable. As the update parameter value, not only the resistance value of the electric motor but also the counter electromotive force constant can be calculated with high frequency. According to the third aspect of the invention, even if there is an individual difference in the electric motor, the temperature changes or the electric motor is a brushed motor, and the contact state between the brush and the commutator changes. However, since the update parameter value follows the change and the estimated speed value of the electric motor is calculated with higher accuracy, the control performance of the motor control device is further improved.

上記第4の発明に係るモータ制御装置では、簡易角度検出手段によって検出される回転角が変化する毎に、回転角が変化する2つの時点間で新たな更新パラメータ値の算出に必要な上記物理量の検出値として順次取得される複数の電流検出値および電圧検出値に基づき、電動モータの回路方程式を時間積分した方程式より電動モータの抵抗値が算出される。算出された電動モータの抵抗値は、当該電流検出値および電圧検出値の取得個数が所定数以上であるときには新たな更新パラメータ値となる。これにより、低コストで分解能の低い簡易角度検出手段を使用して、ノイズの少ない安定した更新パラメータ値として電動モータの抵抗値を得ることができる。また、このような更新パラメータ値の新たな算出のための電流検出値および電圧検出値の取得個数が所定数よりも少ないときには、上記と同様にして得られる電動モータの抵抗値が仮パラメータ値とされ、当該仮パラメータ値と既に得られている更新パラメータ値との加重平均値が新たな更新パラメータ値として算出される。したがって、新たな更新パラメータ値の算出のための電流検出値および電圧検出値の取得個数の多少に拘わらず、また回転速度が所定値以上である期間の長短に拘わらず、ノイズの少ない安定した更新パラメータ値(電動モータの抵抗値)を高い頻度で算出することができる。このような第4の発明によれば、当該電動モータに個体差があっても、また温度が変化したり当該電動モータがブラシ付きモータであってブラシと整流子の間の接触状態が変化しても、更新パラメータ値がその変化に追随し、当該電動モータの速度推定値が精度良く算出されるので、モータ制御装置の制御性能が向上する。   In the motor control device according to the fourth aspect of the invention, the physical quantity necessary for calculating a new update parameter value between two time points when the rotation angle changes every time the rotation angle detected by the simple angle detection means changes. The resistance value of the electric motor is calculated from an equation obtained by integrating the circuit equation of the electric motor with time based on a plurality of current detection values and voltage detection values sequentially obtained as the detection values. The calculated resistance value of the electric motor becomes a new update parameter value when the number of acquired current detection values and voltage detection values is a predetermined number or more. Thereby, the resistance value of the electric motor can be obtained as a stable update parameter value with less noise by using a simple angle detection means with low cost and low resolution. In addition, when the number of current detection values and voltage detection values obtained for new calculation of the updated parameter value is less than a predetermined number, the resistance value of the electric motor obtained in the same manner as described above is the temporary parameter value. Then, a weighted average value between the temporary parameter value and the already obtained update parameter value is calculated as a new update parameter value. Therefore, regardless of the number of current detection values and voltage detection values obtained for calculating a new update parameter value, and regardless of the length of the period when the rotation speed is equal to or higher than the predetermined value, stable update with less noise The parameter value (electric motor resistance value) can be calculated with high frequency. According to the fourth aspect of the invention, even if there is an individual difference in the electric motor, the temperature changes, the electric motor is a brushed motor, and the contact state between the brush and the commutator changes. However, since the update parameter value follows the change and the speed estimation value of the electric motor is calculated with high accuracy, the control performance of the motor control device is improved.

上記第5の発明に係るモータ制御装置では、簡易速度検出手段によって検出される回転速度が所定値以上であるときに新たな更新パラメータ値の算出に必要な上記物理量の検出値として複数の電流検出値および電圧検出値が順次取得され、これら検出値の取得個数が所定数以上であるときには、これら検出値の各検出時点における当該電流検出値および電圧検出値と簡易速度検出手段による回転速度検出値とを用いて、電動モータの回路方程式より当該検出時点における逆起電力定数が算出逆起電力定数として求められ、上記所定数の当該算出逆起電力定数についての移動平均値が新たな更新パラメータ値として算出される。これにより、低コストの簡易速度検出手段を使用して、ノイズの少ない安定した更新パラメータ値として電動モータの逆起電力定数を得ることができる。また、このような更新パラメータ値の新たな算出のための電流検出値および電圧検出値の取得個数が上記所定数よりも少ないときであっても、上記と同様にして各検出時点につき算出逆起電力定数が算出され、当該取得個数の当該算出逆起電力定数についての平均値と既に得られている更新パラメータ値との加重平均値が新たな更新パラメータ値として算出される。したがって、新たな更新パラメータ値の算出のための電流検出値および電圧検出値の取得個数の多少に拘わらず、また回転速度が所定値以上である期間の長短に拘わらず、ノイズの少ない安定した更新パラメータ値(電動モータの逆起電力定数)を高い頻度で算出することができる。このような第5の発明によれば、当該電動モータに個体差があっても、また温度が変化したり当該電動モータがブラシ付きモータであってブラシと整流子の間の接触状態が変化しても、更新パラメータ値がその変化に追随し、当該電動モータの速度推定値が精度良く算出されるので、モータ制御装置の制御性能が向上する。   In the motor control device according to the fifth aspect of the invention, when the rotational speed detected by the simple speed detecting means is equal to or higher than a predetermined value, a plurality of current detections are detected as the physical quantity detection values necessary for calculating a new update parameter value. Value and voltage detection value are sequentially acquired, and when the number of detection values acquired is equal to or greater than a predetermined number, the current detection value and voltage detection value at each detection time of these detection values and the rotation speed detection value by the simple speed detection means And the counter electromotive force constant at the detection time is obtained as a calculated counter electromotive force constant from the circuit equation of the electric motor, and the moving average value for the predetermined number of calculated counter electromotive force constants is a new update parameter value. Is calculated as Thereby, the counter electromotive force constant of the electric motor can be obtained as a stable updated parameter value with less noise by using a low-cost simple speed detecting means. Further, even when the number of acquired current detection values and voltage detection values for the new calculation of the update parameter value is smaller than the predetermined number, the calculation back-up occurs for each detection time point in the same manner as described above. A power constant is calculated, and a weighted average value between the average value for the calculated counter electromotive force constant of the acquired number and the update parameter value already obtained is calculated as a new update parameter value. Therefore, regardless of the number of current detection values and voltage detection values obtained for calculating a new update parameter value, and regardless of the length of the period when the rotation speed is equal to or higher than the predetermined value, stable update with less noise The parameter value (back electromotive force constant of the electric motor) can be calculated with high frequency. According to the fifth aspect of the invention, even if there is an individual difference in the electric motor, the temperature changes, or the electric motor is a brushed motor, and the contact state between the brush and the commutator changes. However, since the update parameter value follows the change and the speed estimation value of the electric motor is calculated with high accuracy, the control performance of the motor control device is improved.

上記第6の発明に係るモータ制御装置では、電動モータが所定状態にあるときに新たな更新パラメータ値の算出に必要な上記物理量の検出値として複数の温度検出値が順次取得され、これら検出値の取得個数が所定数以上であるときには、これら検出値の各検出時点における当該温度検出値を用いて、電動モータの抵抗を構成する複数の抵抗成分のそれぞれの温度特性に基づき当該検出時点における各抵抗成分の値が取得され、当該複数の抵抗成分についての当該値の和が電動モータの算出抵抗値として求められ、上記所定数の当該算出抵抗値についての移動平均値が新たな更新パラメータ値として算出される。これにより、各抵抗成分の温度特性を個別に考慮することでモータ抵抗の温度特性を正確に反映した算出抵抗値が得られ、当該算出抵抗値についての移動平均値がノイズの少ない安定した更新パラメータ値として算出される。また、このような更新パラメータ値の新たな算出のための温度検出値の取得個数が上記所定数よりも少ないときであっても、上記と同様にして各検出時点につき算出抵抗値が算出され、当該取得個数の当該算出抵抗値についての平均値と既に得られている更新パラメータ値との加重平均値が新たな更新パラメータ値として算出される。したがって、新たな更新パラメータ値の算出のための温度検出値の取得個数の多少に拘わらず、ノイズの少ない安定した更新パラメータ値(電動モータの抵抗値)を高い頻度で算出することができる。このような第6の発明によれば、温度が変化しても、更新パラメータ値が温度変化による電動モータの抵抗値変化に正確に追随し、当該電動モータの速度推定値が精度良く算出されるので、モータ制御装置の制御性能が向上する。   In the motor control device according to the sixth aspect of the invention, when the electric motor is in a predetermined state, a plurality of temperature detection values are sequentially acquired as detection values of the physical quantity necessary for calculating a new update parameter value. When the obtained number is equal to or greater than the predetermined number, the temperature detection values at the detection times of these detection values are used to determine the respective values at the detection time based on the temperature characteristics of the plurality of resistance components constituting the resistance of the electric motor. The value of the resistance component is acquired, the sum of the values for the plurality of resistance components is obtained as the calculated resistance value of the electric motor, and the moving average value for the predetermined number of calculated resistance values is used as the new update parameter value. Calculated. This makes it possible to obtain a calculated resistance value that accurately reflects the temperature characteristics of the motor resistance by considering the temperature characteristics of each resistance component individually, and the moving average value for the calculated resistance value is a stable update parameter with less noise. Calculated as a value. In addition, even when the number of detected temperature values for new calculation of the updated parameter value is less than the predetermined number, the calculated resistance value is calculated for each detection time in the same manner as described above. A weighted average value of the average value for the calculated resistance value of the acquired number and the update parameter value already obtained is calculated as a new update parameter value. Therefore, a stable update parameter value (electric motor resistance value) with less noise can be calculated with high frequency regardless of the number of acquired temperature detection values for calculating a new update parameter value. According to the sixth aspect of the invention, even if the temperature changes, the updated parameter value accurately follows the resistance value change of the electric motor due to the temperature change, and the estimated speed value of the electric motor is accurately calculated. Therefore, the control performance of the motor control device is improved.

上記第7の発明によれば、電動パワーステアリング装置における電動モータの回転速度を示す速度推定値を算出するために使用する更新パラメータ値の新たな算出に必要な所定の物理量の検出値の取得個数が少ないときであっても、当該物理量の検出可能な所定状態の期間が短い場合であっても、ノイズの少ない安定した更新パラメータ値を算出することができる。したがって、当該電動モータの速度推定値が精度良く算出され、これによりモータ制御装置の制御性能が向上し、その電動パワーステアリング装置において良好な操舵感が得られる。   According to the seventh aspect of the invention, the number of acquired detection values of the predetermined physical quantity necessary for new calculation of the update parameter value used for calculating the speed estimation value indicating the rotation speed of the electric motor in the electric power steering apparatus. Even when there is a small amount of noise, even when the period of the predetermined state in which the physical quantity can be detected is short, a stable update parameter value with little noise can be calculated. Accordingly, the estimated speed value of the electric motor is calculated with high accuracy, thereby improving the control performance of the motor control device and obtaining a good steering feeling in the electric power steering device.

本発明に係るモータ制御装置を用いた電動パワーステアリング装置の構成を、それに関連する車両の構成と共に示す概略図である。It is the schematic which shows the structure of the electric power steering apparatus using the motor control apparatus which concerns on this invention with the structure of the vehicle relevant to it. 本発明の第1の実施形態に係るモータ制御装置の構成を示すブロック図である。It is a block diagram which shows the structure of the motor control apparatus which concerns on the 1st Embodiment of this invention. 上記第1の実施形態における制御部を実現するためのモータ制御処理を示すフローチャートである。It is a flowchart which shows the motor control process for implement | achieving the control part in the said 1st Embodiment. 上記第1の実施形態における角速度推定処理の基礎となる基本角速度推定処理を説明するための波形図である。It is a wave form diagram for demonstrating the basic angular velocity estimation process used as the foundation of the angular velocity estimation process in the said 1st Embodiment. 上記第1の実施形態における角速度推定部の機能的構成の一例を示すブロック図である。It is a block diagram which shows an example of a functional structure of the angular velocity estimation part in the said 1st Embodiment. 上記第1の実施形態についての上記基本角速度推定処理を示すフローチャートである。It is a flowchart which shows the said basic angular velocity estimation process about the said 1st Embodiment. 上記第1の実施形態における抵抗マップの更新方法を説明するための図である。It is a figure for demonstrating the update method of the resistance map in the said 1st Embodiment. 上記第1の実施形態における角速度推定部を実現するための第1の角速度推定処理を示すフローチャートである。It is a flowchart which shows the 1st angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 1st Embodiment. 上記第1の実施形態における角速度推定部を実現するための第2の角速度推定処理を示すフローチャートである。It is a flowchart which shows the 2nd angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 1st Embodiment. 本発明の第2の実施形態における角速度推定部の一構成例を示すブロック図である。It is a block diagram which shows one structural example of the angular velocity estimation part in the 2nd Embodiment of this invention. 上記第2の実施形態における角速度推定部を実現するための第1の角速度推定処理を示すフローチャートである。It is a flowchart which shows the 1st angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 2nd Embodiment. 上記第2の実施形態における角速度推定部を実現するための第2の角速度推定処理を示すフローチャートである。It is a flowchart which shows the 2nd angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 2nd Embodiment. 上記第2の実施形態における角速度推定部を実現するための第3の角速度推定処理を示すフローチャートである。It is a flowchart which shows the 3rd angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 2nd Embodiment. 本発明の第3の実施形態における角速度推定部の一構成例を示すブロック図である。It is a block diagram which shows one structural example of the angular velocity estimation part in the 3rd Embodiment of this invention. 上記第3の実施形態における角速度推定部を実現するための第1の角速度推定処理を示すフローチャートである。It is a flowchart which shows the 1st angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 3rd Embodiment. 上記第3の実施形態における角速度推定部を実現するための第2の角速度推定処理を示すフローチャートである。It is a flowchart which shows the 2nd angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 3rd Embodiment. 本発明の第4の実施形態における角速度推定部の一構成例を示すブロック図である。It is a block diagram which shows one structural example of the angular velocity estimation part in the 4th Embodiment of this invention. 上記第4の実施形態における角速度推定部を実現するための角速度推定処理の一例を示すフローチャートである。It is a flowchart which shows an example of the angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 4th Embodiment. 本発明の第5の実施形態における角速度推定部の一構成例を示すブロック図である。It is a block diagram which shows one structural example of the angular velocity estimation part in the 5th Embodiment of this invention. 上記第5の実施形態における角速度推定部の抵抗値更新部で使用される各抵抗値の温度特性を示す特性図である。It is a characteristic view which shows the temperature characteristic of each resistance value used with the resistance value update part of the angular velocity estimation part in the said 5th Embodiment. 上記第5の実施形態における角速度推定部を実現するための角速度推定処理の一例を示すフローチャートである。It is a flowchart which shows an example of the angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 5th Embodiment. 上記第5の実施形態における角速度推定部を実現するための角速度推定処における抵抗値算出処理を示すフローチャートである。It is a flowchart which shows the resistance value calculation process in the angular velocity estimation process for implement | achieving the angular velocity estimation part in the said 5th Embodiment.

<1.電動パワーステアリング装置>
図1は、本発明に係るモータ制御装置を用いた電動パワーステアリング装置の構成を、それに関連する車両の構成と共に示す概略図である。この電動パワーステアリング装置は、ブラシ付きモータ1、減速機2、トルクセンサ3、車速センサ4、および、モータ制御装置としての電子制御ユニット(ECU)5を備えたコラムアシスト型の電動パワーステアリング装置である。なお、本発明に係るモータ制御装置は、モータ1の回転の有無を検出するためのセンサ(以下「回転センサ」という)7を備えているのが好ましく、図1に示す電動パワーステアリング装置には、回転センサ7としてホールセンサが設けられている。この回転センサ7はホールセンサに限定されるものではなく、モータ1の回転に応じてパルス信号を発生させるものであればよい。また、モータ1の回転方向を検出する必要がないので、回転センサ7として低コストのセンサを使用することができる。さらに、この電動パワーステアリング装置では、舵角センサ(または操作角速度センサ)7hを備えている。ただし、これらの回転センサ7と舵角センサ7hのうち一方は省略することも可能である(詳細は後述)。
<1. Electric power steering device>
FIG. 1 is a schematic diagram showing the configuration of an electric power steering device using a motor control device according to the present invention, together with the configuration of a vehicle related thereto. This electric power steering apparatus is a column assist type electric power steering apparatus including a brushed motor 1, a speed reducer 2, a torque sensor 3, a vehicle speed sensor 4, and an electronic control unit (ECU) 5 as a motor control apparatus. is there. The motor control device according to the present invention preferably includes a sensor (hereinafter referred to as “rotation sensor”) 7 for detecting the presence or absence of rotation of the motor 1, and the electric power steering device shown in FIG. A hall sensor is provided as the rotation sensor 7. The rotation sensor 7 is not limited to a hall sensor, and any sensor that generates a pulse signal according to the rotation of the motor 1 may be used. Further, since it is not necessary to detect the rotation direction of the motor 1, a low-cost sensor can be used as the rotation sensor 7. Furthermore, this electric power steering apparatus includes a steering angle sensor (or an operation angular velocity sensor) 7h. However, one of the rotation sensor 7 and the steering angle sensor 7h can be omitted (details will be described later).

図1に示すように、ステアリングシャフト102の一端にはハンドル(ステアリングホイール)101が固着されており、ステアリングシャフト102の他端はラックピニオン機構103を介してラック軸104に連結されている。ラック軸104の両端は、タイロッドおよびナックルアームからなる連結部材105を介して車輪106に連結されている。運転者がハンドル101を回転させると、ステアリングシャフト102は回転し、これに伴いラック軸104は往復運動を行う。ラック軸104の往復運動に伴い、車輪106の向きが変わる。   As shown in FIG. 1, a steering wheel (steering wheel) 101 is fixed to one end of the steering shaft 102, and the other end of the steering shaft 102 is connected to a rack shaft 104 via a rack and pinion mechanism 103. Both ends of the rack shaft 104 are connected to a wheel 106 via a connecting member 105 composed of a tie rod and a knuckle arm. When the driver rotates the handle 101, the steering shaft 102 rotates, and the rack shaft 104 reciprocates accordingly. As the rack shaft 104 reciprocates, the direction of the wheels 106 changes.

電動パワーステアリング装置は、運転者の負荷を軽減するために、以下に示す操舵補助を行う。トルクセンサ3は、ハンドル101の操作によってステアリングシャフト102に加えられる操舵トルクTsを検出し、舵角センサ7hは、ハンドル101の操作量を示す操舵角θhを検出し、車速センサ4は車速Sを検出する。回転センサ7は、モータ1のロータの回転速度に応じた頻度でパルスを発生し、それらのパルスを含むパルス信号Pを出力する。モータ1のロータが停止しているときには、回転センサ7はパルスを発生しない。   The electric power steering device performs the following steering assistance in order to reduce the driver's load. The torque sensor 3 detects the steering torque Ts applied to the steering shaft 102 by the operation of the handle 101, the steering angle sensor 7h detects the steering angle θh indicating the operation amount of the handle 101, and the vehicle speed sensor 4 detects the vehicle speed S. To detect. The rotation sensor 7 generates pulses at a frequency corresponding to the rotation speed of the rotor of the motor 1 and outputs a pulse signal P including these pulses. When the rotor of the motor 1 is stopped, the rotation sensor 7 does not generate a pulse.

ECU5は、車載バッテリ8から電力の供給を受け、操舵トルクTs、車速S、およびパルス信号P(または操舵角θh)に基づきブラシ付きモータ1を駆動する。ブラシ付きモータ1は、ECU5によって駆動されると、操舵補助力を発生させる。減速機2は、ブラシ付きモータ1とステアリングシャフト102との間に設けられる。ブラシ付きモータ1で発生した操舵補助力は、減速機2を介して、ステアリングシャフト102を回転させるように作用する。   The ECU 5 receives power supplied from the in-vehicle battery 8 and drives the brushed motor 1 based on the steering torque Ts, the vehicle speed S, and the pulse signal P (or the steering angle θh). The brushed motor 1 generates a steering assist force when driven by the ECU 5. The speed reducer 2 is provided between the brushed motor 1 and the steering shaft 102. The steering assist force generated by the brushed motor 1 acts to rotate the steering shaft 102 via the speed reducer 2.

この結果、ステアリングシャフト102は、ハンドル101に加えられる操舵トルクと、ブラシ付きモータ1で発生した操舵補助力の両方によって回転する。このように電動パワーステアリング装置は、ブラシ付きモータ1で発生した操舵補助力を車両のステアリング機構に与えることにより操舵補助を行う。   As a result, the steering shaft 102 rotates by both the steering torque applied to the handle 101 and the steering assist force generated by the brushed motor 1. As described above, the electric power steering apparatus performs steering assist by applying the steering assist force generated by the brushed motor 1 to the steering mechanism of the vehicle.

<2.第1の実施形態>
<2.1 モータ制御装置の構成>
図2は、本発明の第1の実施形態に係るモータ制御装置の構成を示すブロック図である。このモータ制御装置は、上記電動パワーステアリング装置において使用され、ECU5を用いて構成されており、ブラシ付きモータ1を駆動する。ECU5は、制御部10と駆動部20からなる。制御部10は、マイクロコンピュータ(以下「マイコン」と略称する)を用いて実現されている。駆動部20は、モータ駆動回路30、電流検出用抵抗35、PWM信号生成回路21、電圧検出回路24、および電流検出回路25を備えている。本実施形態では、回転センサ7が使用され、舵角センサ7hは使用されないものとする。また、図2において点線で示される各部の温度センサ41,42,43も本実施形態では使用されない(これらの温度センサ41,42,43は後述の第5の実施形態において使用される)。
<2. First Embodiment>
<2.1 Motor controller configuration>
FIG. 2 is a block diagram showing the configuration of the motor control device according to the first embodiment of the present invention. This motor control device is used in the electric power steering device and is configured using the ECU 5 to drive the brushed motor 1. The ECU 5 includes a control unit 10 and a drive unit 20. The control unit 10 is realized using a microcomputer (hereinafter abbreviated as “microcomputer”). The drive unit 20 includes a motor drive circuit 30, a current detection resistor 35, a PWM signal generation circuit 21, a voltage detection circuit 24, and a current detection circuit 25. In the present embodiment, it is assumed that the rotation sensor 7 is used and the rudder angle sensor 7h is not used. In addition, the temperature sensors 41, 42, and 43 indicated by dotted lines in FIG. 2 are not used in this embodiment (the temperature sensors 41, 42, and 43 are used in a fifth embodiment described later).

ECU5には、トルクセンサ3から出力された操舵トルクTs、および、車速センサ4から出力された車速Sが入力され、これらはマイコン10に入力データとして与えられる。また、駆動部20では、後述のように、モータ1への印加電圧すなわちモータ1の端子間電圧(以下「モータ電圧」という)が電圧検出回路24により検出されると共に、モータ1(内の電機子巻線)を流れる電流(以下「モータ電流」という)が電流検出回路25により検出され、これらの検出結果としての電圧検出値Vmおよび電流検出値Imもマイコン10に与えられる。   The ECU 5 receives the steering torque Ts output from the torque sensor 3 and the vehicle speed S output from the vehicle speed sensor 4, and these are given as input data to the microcomputer 10. In the drive unit 20, as will be described later, the voltage applied to the motor 1, that is, the voltage across the terminals of the motor 1 (hereinafter referred to as “motor voltage”) is detected by the voltage detection circuit 24, and the motor 1 (internal electric machine) A current (hereinafter referred to as “motor current”) flowing through the child winding is detected by the current detection circuit 25, and a voltage detection value Vm and a current detection value Im as these detection results are also given to the microcomputer 10.

マイコン10は、ECU5に内蔵されたメモリ(図示せず)に格納されたプログラムを実行することにより、モータ1の制御のための機能単位として、目標電流設定部12、減算器14、制御演算部16、および角速度推定部50をソフトウェア的に実現している。角速度推定部50は、上記の電圧検出値Vm、電流検出値Im、および、回転センサ7から出力されるパルス信号Pに基づき、モータ1(のロータ)の回転速度を示す角速度推定値ωeを算出する。目標電流設定部12は、上記の操舵トルクTsおよび車速Sと、この角速度推定値ωeとに基づき、モータ1に流すべき電流の目標値Itを決定する。減算器14は、この電流目標値Itと上記電流検出値Imとの偏差(It−Im)を算出する。制御演算部16は、この偏差(It−Im)に基づく比例積分制御演算によって、この偏差(It−Im)を打ち消すためにモータ1に印加すべき電圧を示す指令値Dを算出する。この指令値Dはマイコン10から出力されて駆動部20のPWM信号生成回路21に与えられる。   The microcomputer 10 executes a program stored in a memory (not shown) built in the ECU 5, thereby setting a target current setting unit 12, a subtractor 14, a control calculation unit as functional units for controlling the motor 1. 16 and the angular velocity estimation unit 50 are realized by software. Based on the voltage detection value Vm, the current detection value Im, and the pulse signal P output from the rotation sensor 7, the angular velocity estimation unit 50 calculates an angular velocity estimation value ωe indicating the rotation speed of the motor 1 (the rotor). To do. The target current setting unit 12 determines a target value It of current to be passed through the motor 1 based on the steering torque Ts and the vehicle speed S and the estimated angular velocity value ωe. The subtractor 14 calculates a deviation (It−Im) between the current target value It and the current detection value Im. The control calculation unit 16 calculates a command value D indicating a voltage to be applied to the motor 1 in order to cancel the deviation (It-Im) by a proportional-integral control calculation based on the deviation (It-Im). The command value D is output from the microcomputer 10 and given to the PWM signal generation circuit 21 of the drive unit 20.

PWM信号生成回路21は、マイコン10から与えられる指令値Dに応じて、第1および第2の右方向PWM信号SRd1,SRd2と第1および第2の左方向PWM信号SLd1,SLd2とを生成する。ここで、指令値Dの符号は、モータ1が発生すべきトルクが右方向操舵を補助する方向のトルク(以下「右方向トルク」という)か左方向操舵を補助する方向のトルク(以下「左方向トルク」という)かを示す。右方向トルクを発生させる場合には、右方向PWM信号SRd1,SRd2は指令値Dに応じたデューティ比のPWM信号として生成され、左方向PWM信号SLd1,SLd2は非アクティブな信号として生成される。左方向トルクを発生させる場合には、左方向PWM信号SLd1,SLd2は指令値Dに応じたデューティ比のPWM信号として生成され、右方向PWM信号SRd1,SRd2は非アクティブな信号として生成される。   The PWM signal generation circuit 21 generates first and second rightward PWM signals SRd1 and SRd2 and first and second leftward PWM signals SLd1 and SLd2 according to a command value D given from the microcomputer 10. . Here, the sign of the command value D indicates that the torque to be generated by the motor 1 is a torque in a direction assisting rightward steering (hereinafter referred to as “rightward torque”) or a torque in a direction assisting leftward steering (hereinafter “left”). Direction torque). When generating the right direction torque, the right direction PWM signals SRd1 and SRd2 are generated as PWM signals having a duty ratio corresponding to the command value D, and the left direction PWM signals SLd1 and SLd2 are generated as inactive signals. When generating the left direction torque, the left direction PWM signals SLd1 and SLd2 are generated as PWM signals having a duty ratio corresponding to the command value D, and the right direction PWM signals SRd1 and SRd2 are generated as inactive signals.

モータ駆動回路30は、4個のスイッチング素子である電力用の電界効果型トランジスタ(以下「FET」という)31〜34によって構成されるブリッジ回路であり、このブリッジ回路はバッテリ8の電源ラインと接地ラインとの間に接続され、負荷としてモータ1が接続されている。すなわち、このブリッジ回路は、電源ラインに接続される電源ライン側FET31,32と、電流検出用抵抗35を介して接地ラインに接続される接地ライン側FET33,34とからなり、電源ライン側FET31と接地ライン側FET33との接続点N1にはモータ1の正端子が接続され、電源ライン側FET32と接地ライン側FET34との接続点N2にはモータ1の負端子が接続されている。電源ライン側FET31および接地ライン側FET34のゲート端子には、上記の右方向PWM信号SRd1,SRd2がそれぞれ印加され、電源ライン側FET32および接地ライン側FET33のゲート端子には、上記の左方向PWM信号SLd1,SLd2がそれぞれ印加される。これにより、指令値Dに応じたデューティ比でFET31および34またはFET32および33がオンおよびオフすることにより、指令値Dの符号に応じた極性および大きさの電圧がモータ駆動回路30からモータ1に印加される。その結果、モータ駆動回路30からモータ1に電流が供給され、モータ1は操舵トルクTs、車速Sおよび角速度推定値ωeに応じた操舵補助力を発生させる。   The motor drive circuit 30 is a bridge circuit composed of power field-effect transistors (hereinafter referred to as “FETs”) 31 to 34 that are four switching elements, and this bridge circuit is connected to the power line of the battery 8 and the ground. The motor 1 is connected as a load. In other words, this bridge circuit includes power supply line side FETs 31 and 32 connected to the power supply line, and ground line side FETs 33 and 34 connected to the ground line via the current detection resistor 35. The positive terminal of the motor 1 is connected to the connection point N1 with the ground line side FET 33, and the negative terminal of the motor 1 is connected to the connection point N2 between the power line side FET 32 and the ground line side FET 34. The right direction PWM signals SRd1 and SRd2 are applied to the gate terminals of the power supply line side FET 31 and the ground line side FET 34, respectively, and the left direction PWM signal is applied to the gate terminals of the power supply line side FET 32 and the ground line side FET 33. SLd1 and SLd2 are applied, respectively. As a result, the FETs 31 and 34 or the FETs 32 and 33 are turned on and off at a duty ratio corresponding to the command value D, whereby a voltage having a polarity and a magnitude corresponding to the sign of the command value D is transferred from the motor drive circuit 30 to the motor 1. Applied. As a result, a current is supplied from the motor drive circuit 30 to the motor 1, and the motor 1 generates a steering assist force according to the steering torque Ts, the vehicle speed S, and the estimated angular velocity value ωe.

上記のようにしてモータ1が駆動される間、モータ1に印加される電圧すなわちモータ1の端子間電圧は電圧検出回路24によって検出され、モータ1に流れる電流は電流検出用抵抗35の両端間の電圧に基づき電流検出回路25によって検出される。検出された電圧検出値Vmおよび電流検出値Imは、マイコン10に入力され、既述のように、角速度推定値ωeの算出やモータ1のフィードバック制御のための上記偏差(It−Im)の算出が行われる。   While the motor 1 is driven as described above, the voltage applied to the motor 1, that is, the voltage across the terminals of the motor 1 is detected by the voltage detection circuit 24, and the current flowing through the motor 1 is between both ends of the current detection resistor 35. Is detected by the current detection circuit 25 based on the voltage of. The detected voltage detection value Vm and detected current value Im are input to the microcomputer 10 and, as described above, calculation of the angular velocity estimation value ωe and the above deviation (It−Im) for the feedback control of the motor 1. Is done.

<2.2 モータ制御処理>
図3は、本実施形態においてモータ1の駆動を制御するための制御部(ECU)5をソフトウェア的に実現するためのモータ制御処理を示すフローチャートである。このモータ制御処理では、まず、車両情報等のモータ制御に必要な情報が取得される(ステップS2)。ここで取得される情報には、制御演算部16での演算や角速度推定部50での角速度推定値ωeの算出に必要なパラメータ値(例えば逆起電力定数kやモータ抵抗値Rの初期値、固定値として与えられる場合の逆起電力定数等)などが含まれ、後述の角速度推定処理(図6等参照)で使用されるフラグや変数等も当該ステップS2で初期化される(例えばFh=0,C=0,Cn=50等)。
<2.2 Motor control processing>
FIG. 3 is a flowchart showing a motor control process for realizing a control unit (ECU) 5 for controlling the driving of the motor 1 in software in the present embodiment. In this motor control process, first, information necessary for motor control such as vehicle information is acquired (step S2). The information obtained here includes parameter values (for example, the initial value of the back electromotive force constant k and the motor resistance value R, which are necessary for calculation in the control calculation unit 16 and calculation of the angular velocity estimation value ωe in the angular velocity estimation unit 50, Etc.), and flags and variables used in an angular velocity estimation process (see FIG. 6, etc.) described later are also initialized in step S2 (for example, Fh = 0, C = 0, Cn = 50, etc.).

このようなステップS2の実行後は、ステップS3において、各センサ3,4,7および検出回路24,25からの出力信号に基づき、モータ1に流すべき電流の目標値Itを算出する周期である制御周期毎に操舵トルクTs,車速S,パルス信号P、電圧検出値Vm、電流検出値Imが順次取得される。   After the execution of step S2, the cycle of calculating the target value It of the current to be supplied to the motor 1 based on the output signals from the sensors 3, 4, 7 and the detection circuits 24, 25 in step S3. Steering torque Ts, vehicle speed S, pulse signal P, voltage detection value Vm, and current detection value Im are sequentially acquired for each control cycle.

次のステップS4では、角速度推定部50を実現するための角速度推定処理が実行され、これによりモータ1の角速度推定値ωeが算出される。   In the next step S4, an angular velocity estimation process for realizing the angular velocity estimation unit 50 is executed, and thereby an angular velocity estimation value ωe of the motor 1 is calculated.

その後、ステップS6において、この角速度推定値ωeを用いてモータ1の電流制御等のための処理が行われる。すなわちステップS6では、この角速度推定値ωeや、処理操舵トルクTs、車速Sに基づいて電流目標値Itが決定され、この電流目標値Itと上記電流検出値Imとの偏差(It−Im)に基づく比例積分制御演算によって、モータ1に印加すべき電圧を示す指令値Dが算出される。すなわち、ステップS6の処理によって、図2に示す目標電流設定部12、減算器14および制御演算部16が実現される。   Thereafter, in step S6, processing for current control of the motor 1 and the like is performed using the estimated angular velocity value ωe. That is, in step S6, the current target value It is determined based on the angular velocity estimated value ωe, the processing steering torque Ts, and the vehicle speed S, and the deviation (It−Im) between the current target value It and the current detection value Im is determined. A command value D indicating a voltage to be applied to the motor 1 is calculated by the proportional integral control calculation based on the calculation. That is, the target current setting unit 12, the subtracter 14, and the control calculation unit 16 shown in FIG.

このような電流制御等の処理の後は、ステップS3へ戻る。以降、電動パワーステアリング装置におけるモータ制御装置(ECU)5が動作している間、上記の制御周期でステップS3,S4,S6が繰り返し実行される。   After such processing as current control, the process returns to step S3. Thereafter, while the motor control unit (ECU) 5 in the electric power steering apparatus is operating, steps S3, S4, and S6 are repeatedly executed in the control cycle described above.

<2.3 角速度推定部の構成および動作>
図4は、本実施形態における角速度推定部50を実現するための角速度推定処理の基礎となる基本角速度推定処理を説明するための波形図である。図4(a)は、本実施形態に係るモータ制御装置をECU5として使用する電動パワーステアリング装置において操舵角θhが図4(b)に示すように変化した場合に回転センサ7から出力されるパルス信号Pの波形を示し、図4(c)は、当該操舵角θhが図4(b)に示すように変化した場合における後述の平均値算出部53内のカウンタ535のカウント値Cの変化を示している。
<2.3 Configuration and operation of angular velocity estimation unit>
FIG. 4 is a waveform diagram for explaining the basic angular velocity estimation processing that is the basis of the angular velocity estimation processing for realizing the angular velocity estimation unit 50 in the present embodiment. FIG. 4A shows a pulse output from the rotation sensor 7 when the steering angle θh changes as shown in FIG. 4B in the electric power steering apparatus using the motor control apparatus according to the present embodiment as the ECU 5. FIG. 4C shows the waveform of the signal P. FIG. 4C shows the change in the count value C of the counter 535 in the average value calculation unit 53 described later when the steering angle θh changes as shown in FIG. 4B. Show.

図5は、本実施形態における角速度推定部50の機能的構成の一例を示すブロック図であり、この角速度推定部50は、図5に示すように、保舵判定部51、抵抗算出部52、平均値算出部53、および、角速度推定値算出部(以下「推定値算出部」と略記する)56を備えており、保舵判定部51と抵抗算出部52と平均値算出部53とは抵抗値更新部200を構成する。上記の電圧検出回路24および電流検出回路25により得られる電圧検出値Vmおよび電流検出値Imは、抵抗算出部52および推定値算出部56に入力される。   FIG. 5 is a block diagram illustrating an example of a functional configuration of the angular velocity estimation unit 50 according to the present embodiment. As illustrated in FIG. 5, the angular velocity estimation unit 50 includes a steering determination unit 51, a resistance calculation unit 52, An average value calculating unit 53 and an angular velocity estimated value calculating unit (hereinafter abbreviated as “estimated value calculating unit”) 56 are provided, and the steering determination unit 51, the resistance calculating unit 52, and the average value calculating unit 53 are resistant to each other. The value update unit 200 is configured. The voltage detection value Vm and the current detection value Im obtained by the voltage detection circuit 24 and the current detection circuit 25 are input to the resistance calculation unit 52 and the estimated value calculation unit 56.

基本角速度推定処理では、回転センサ7からのパルス信号Pが保舵判定部51に入力され、保舵判定部51は、予め決められた時間ΔT1の間、回転センサ7がパルスを出力しなければ、モータ1の回転速度は0近傍の所定値以下であるとして、保舵状態であると判定し、当該時間ΔT1の間に回転センサ7がパルスを出力すれば操舵状態であると判定する(図4(a)参照)。この判定結果は、回転状態信号Stとして抵抗算出部52および平均値算出部53に入力される。また、基本角速度推定処理では、当該時間ΔT1の間、回転センサ7がパルスを出力しない場合に保舵が検出されるが、その検出後において回転センサ7からパルスが出力されると、その時点で回転状態信号Stは操舵状態を示すように変化する。   In the basic angular velocity estimation process, the pulse signal P from the rotation sensor 7 is input to the steering determination unit 51, and the steering determination unit 51 does not output a pulse for a predetermined time ΔT1. Assuming that the rotation speed of the motor 1 is equal to or less than a predetermined value near 0, it is determined that the vehicle is in the steered state. If the rotation sensor 7 outputs a pulse during the time ΔT1, it is determined that the vehicle is in the steering state (FIG. 4 (a)). This determination result is input to the resistance calculation unit 52 and the average value calculation unit 53 as the rotation state signal St. Further, in the basic angular velocity estimation process, the steering is detected when the rotation sensor 7 does not output a pulse during the time ΔT1, but when a pulse is output from the rotation sensor 7 after the detection, at that time The rotation state signal St changes to indicate the steering state.

一般に、ブラシ付きモータ1のロータの角速度ωは、既述のように次式により与えられる。
ω=(V−I×R)/k …(2)
ここで、Vはモータ電圧(端子間電圧)であり、Iはモータ電流であり、Rはモータ抵抗(端子間抵抗)であり、kは逆起電力定数である。したがって、上記の電圧検出値Vmおよび電流検出値Imに加えて、モータ抵抗Rの値がわかれば、角速度ωを算出することができる。
In general, the angular velocity ω of the rotor of the brushed motor 1 is given by the following equation as described above.
ω = (V−I × R) / k (2)
Here, V is a motor voltage (terminal voltage), I is a motor current, R is a motor resistance (terminal resistance), and k is a counter electromotive force constant. Therefore, if the value of the motor resistance R is known in addition to the voltage detection value Vm and the current detection value Im, the angular velocity ω can be calculated.

電動パワーステアリング装置が保舵状態であってモータ1のロータが停止している場合、角速度ω=0であるので、上記式(2)に基づき下記式(3)によりモータ抵抗Rを算出することができる。
R=V/I …(3)
そこで抵抗算出部52は、回転状態信号Stが保舵状態を示すと、角速度ω=0とみなし、上記式(3)にV=Vm、I=Imを代入することによりモータ抵抗Rの値を算出する(以下、この値を「算出抵抗値」といい、記号“Rc”で示すものとする)。このようにして得られる算出抵抗値Rc(=Vm/Im)は、平均値算出部53に入力される。
When the electric power steering device is in the steering-holding state and the rotor of the motor 1 is stopped, the angular velocity ω = 0, so the motor resistance R is calculated by the following equation (3) based on the above equation (2). Can do.
R = V / I (3)
Therefore, when the rotation state signal St indicates the steered state, the resistance calculation unit 52 regards the angular velocity ω = 0 and substitutes V = Vm and I = Im into the above equation (3) to set the value of the motor resistance R. (Hereinafter, this value is referred to as “calculated resistance value” and is indicated by the symbol “Rc”). The calculated resistance value Rc (= Vm / Im) thus obtained is input to the average value calculation unit 53.

平均値算出部53は、上記の回転状態信号Stに基づき、電動パワーステアリング装置が保舵状態である期間(以下「保舵期間」という)に抵抗算出部52から制御周期毎に入力される算出抵抗値Rcの平均値を求め、抵抗平均値Rnewとして出力する。この抵抗平均値Rnewの具体的な算出方法については後述する。   Based on the rotation state signal St, the average value calculation unit 53 is a calculation that is input from the resistance calculation unit 52 for each control cycle during a period in which the electric power steering device is in the steering state (hereinafter referred to as “steering period”). The average value of the resistance value Rc is obtained and output as the resistance average value Rnew. A specific method for calculating the resistance average value Rnew will be described later.

推定値算出部56は、上記の抵抗平均値Rnewを上記の電圧検出値Vmおよび電流検出値Imと共に用いて上記式(2)により角速度推定値ωeを算出する。すなわち推定値算出部56は、V=Vm、I=Im、R=Rnewを上記式(2)に代入することにより角速度推定値ωeを算出する。なお本実施形態では、逆起電力定数kは図3のステップS2で既知の値を設定されているものとする。   The estimated value calculation unit 56 calculates the angular velocity estimated value ωe by the above equation (2) using the resistance average value Rnew together with the voltage detection value Vm and the current detection value Im. That is, the estimated value calculation unit 56 calculates the angular velocity estimated value ωe by substituting V = Vm, I = Im, and R = Rnew into the above equation (2). In the present embodiment, it is assumed that the back electromotive force constant k is set to a known value in step S2 of FIG.

上述の構成では、上記式(2)におけるモータ抵抗値Rとして上記の抵抗平均値Rnewを用いて角速度推定値ωeが算出されるが、これに代えて、図7に示すような抵抗マップを参照して求めた抵抗値Rmを用いて角速度推定値ωeを算出するようにしてもよい。   In the above configuration, the estimated angular velocity value ωe is calculated using the above resistance average value Rnew as the motor resistance value R in the above formula (2). Instead, refer to a resistance map as shown in FIG. The estimated angular velocity value ωe may be calculated using the resistance value Rm thus obtained.

抵抗マップを参照して抵抗値Rmを求める構成の場合、角速度推定部50は、既述の構成要素51,52,53,56に加えて、マップ更新部54およびマップ保持部55を備えている。この場合、抵抗算出部52での算出抵抗値Rcの算出に使用された電流検出値Imも、算出時電流値Icとして制御周期毎に平均値算出部53に入力され、平均値算出部53は、保舵期間中、算出時電流値Icの平均値を電流平均値Inewとして算出し、上記の抵抗平均値Rnewと共に電流平均値Inewも制御周期毎に出力する。これらの抵抗平均値Rnewおよび電流平均値Inewはマップ更新部54に入力される。   In the case of a configuration in which the resistance value Rm is obtained with reference to the resistance map, the angular velocity estimation unit 50 includes a map update unit 54 and a map holding unit 55 in addition to the above-described components 51, 52, 53, and 56. . In this case, the current detection value Im used for the calculation of the calculated resistance value Rc in the resistance calculation unit 52 is also input to the average value calculation unit 53 for each control cycle as the calculated current value Ic, and the average value calculation unit 53 During the steering period, the average value of the calculated current value Ic is calculated as the current average value Inew, and the current average value Inew is also output for each control cycle together with the resistance average value Rnew. These resistance average value Rnew and current average value Inew are input to the map update unit 54.

マップ保持部55は、モータ1の電流−抵抗特性に基づきモータ電流をモータ抵抗に対応付けるテーブルを抵抗マップとして保持している。マップ更新部54は、上記の抵抗平均値Rnewおよび電流平均値Inewに基づき、この抵抗マップを更新する。すなわち、図7に示すように、上記の電流−抵抗特性を表す特性曲線が上記の抵抗平均値Rnewおよび電流平均値Inewを示す点Aを通過するように(当該特性曲線が図7の実線の曲線から点線の曲線に変更されるように)、抵抗マップを変更する。なお、後述の第2の角速度推定処理(図9)では、保舵状態から操舵状態へと切り替わるときに抵抗マップが更新されるが(ステップS72)、この構成に限定されるものではなく、保舵状態において例えば抵抗値Rcが所定回数算出される毎に抵抗平均値Rnewおよび電流平均値Inewに基づいて抵抗マップを更新するようにしてもよい。   The map holding unit 55 holds, as a resistance map, a table that associates motor current with motor resistance based on the current-resistance characteristics of the motor 1. The map update unit 54 updates the resistance map based on the resistance average value Rnew and the current average value Inew. That is, as shown in FIG. 7, the characteristic curve representing the current-resistance characteristic passes through the point A indicating the resistance average value Rnew and the current average value Inew (the characteristic curve is a solid line in FIG. 7). Change the resistance map so that it changes from a curve to a dotted curve. In the second angular velocity estimation process (FIG. 9) to be described later, the resistance map is updated when the steering state is switched to the steering state (step S72). However, the present invention is not limited to this configuration. For example, each time the resistance value Rc is calculated a predetermined number of times in the rudder state, the resistance map may be updated based on the resistance average value Rnew and the current average value Inew.

推定値算出部56は、マップ保持部55における抵抗マップを参照して、上記の電流検出値Imに対応するモータ抵抗値Rmを求め、この抵抗値Rmを上記の電圧検出値Vmおよび電流検出値Imと共に用いて上記式(2)により角速度推定値ωeを算出する。すなわち推定値算出部56は、V=Vm、I=Im、R=Rmを上記式(2)に代入することにより角速度推定値ωeを算出する。なお、後述の第2の角速度推定処理(図9)では、操舵状態において角速度推定値ωeの算出に使用する抵抗値Rmを求めるために抵抗マップが使用されるが(ステップS76)、本実施形態はこの構成に限定されるものではなく、保舵状態においても角速度推定値ωeの算出に使用する抵抗値Rmを求めるために抵抗マップを使用するようにしてもよい。   The estimated value calculation unit 56 refers to the resistance map in the map holding unit 55 to obtain a motor resistance value Rm corresponding to the current detection value Im, and uses the resistance value Rm as the voltage detection value Vm and the current detection value. The angular velocity estimated value ωe is calculated by the above formula (2) using together with Im. That is, the estimated value calculation unit 56 calculates the angular velocity estimated value ωe by substituting V = Vm, I = Im, and R = Rm into the above equation (2). In the second angular velocity estimation process (FIG. 9) described later, a resistance map is used to obtain the resistance value Rm used for calculating the angular velocity estimated value ωe in the steering state (step S76). Is not limited to this configuration, and a resistance map may be used to determine the resistance value Rm used for calculating the estimated angular velocity value ωe even in the steering state.

<2.4 角速度推定処理の具体例>
以下、本実施形態における角速度推定部50をソフトウェア的に実現するための角速度推定処理(図3のステップS4)につき幾つかの具体例を説明する。
<2.4 Specific example of angular velocity estimation processing>
Hereinafter, some specific examples of angular velocity estimation processing (step S4 in FIG. 3) for realizing the angular velocity estimation unit 50 in the present embodiment in software will be described.

<2.4.1 基本角速度推定処理>
図6は、本実施形態における角速度推定処理S4の基礎となる基本角速度推定処理の詳細を示すフローチャートである。この基本角速度推定処理によって実現される角速度推定部50はマップ更新部54およびマップ保持部55を備えない構成となっている(図5参照)。以下、図5および図6を参照して、この基本角速度推定処理について詳述する。基本角速度推定処理は制御周期毎に実行され(図3参照)、この基本角速度推定処理においてマイコン10は下記のように動作する。
<2.4.1 Basic angular velocity estimation process>
FIG. 6 is a flowchart showing details of the basic angular velocity estimation processing that is the basis of the angular velocity estimation processing S4 in the present embodiment. The angular velocity estimation unit 50 realized by this basic angular velocity estimation process is configured not to include the map update unit 54 and the map holding unit 55 (see FIG. 5). Hereinafter, the basic angular velocity estimation process will be described in detail with reference to FIGS. 5 and 6. The basic angular velocity estimation process is executed every control cycle (see FIG. 3), and the microcomputer 10 operates as follows in this basic angular velocity estimation process.

まず、回転センサ7からのパルス信号Pに基づき電動パワーステアリング装置が保舵状態か否か判定する(ステップS10)。なお、保舵状態か否かの判定手法は、これに限定されるものではなく、例えば、回転センサ7に代えて、舵角センサ(または操舵角速度センサ)7hからの出力信号に基づいて保舵状態か否かを判定するようにしてもよい。また例えば、前回の制御周期において基本角速度推定処理の後述のステップS58で算出された角速度推定値ωeに基づき保舵状態か否かを判定してもよい。これらの点は、後述の第1の角速度推定処理においても同様である。   First, it is determined based on the pulse signal P from the rotation sensor 7 whether or not the electric power steering apparatus is in a steering-holding state (step S10). Note that the determination method for determining whether or not the vehicle is in the steered state is not limited to this. For example, instead of the rotation sensor 7, the steerable state is based on an output signal from the rudder angle sensor (or steering angular velocity sensor) 7 h. You may make it determine whether it is in a state. Further, for example, it may be determined whether or not the vehicle is in the steering holding state based on the estimated angular velocity value ωe calculated in step S58 described later in the basic angular velocity estimating process in the previous control cycle. These points are the same in the first angular velocity estimation process described later.

ステップS10での判定の結果、保舵状態である場合(Yesの場合)にはステップS11へ進み、保舵状態でない場合すなわち操舵状態の場合(Noの場合)には、ステップS30へ進んで、保舵状態か否かを示すフラグFhをリセットし(Fh=0)、その後、ステップS24へ進む。   As a result of the determination in step S10, if the steering state is maintained (Yes), the process proceeds to step S11. If the steering state is not established, that is, if the steering state is (No), the process proceeds to step S30. The flag Fh indicating whether or not the steering is maintained is reset (Fh = 0), and then the process proceeds to step S24.

ステップS11では、フラグFhに基づき前回の制御周期においても保舵状態であったか否かを判定する。フラグFhは、既述のように初期状態ではリセットされており(Fh=0)、保舵状態になると後述のステップS12でセットされる(Fh=1)。そこでステップS11では、フラグFhがセットされているか否かにより、前回の制御周期においても保舵状態か否かを判定する(例えばFh=1であれば前回の制御周期でも保舵状態であると判定される)。   In step S11, it is determined based on the flag Fh whether or not the steering was maintained in the previous control cycle. As described above, the flag Fh is reset in the initial state (Fh = 0), and is set in step S12 (Fh = 1) described later when the steering holding state is reached. Therefore, in step S11, it is determined whether or not the steering state is maintained even in the previous control cycle based on whether or not the flag Fh is set (for example, if Fh = 1, the steering state is maintained in the previous control cycle). Determined).

ステップS11での判定の結果、前回の制御周期においても保舵状態である場合(Fh=1の場合)には、ステップS12へ進み、前回の制御周期では保舵状態でない場合(Fh=0の場合)には、既述のカウント値C、算出抵抗値Rcを積算するための変数SR、および、算出時電流値Icを積算するための変数値SIを0に初期化し(ステップS32)、その後、ステップS12へ進む。   If the result of determination in step S11 is that the steering state is also maintained in the previous control cycle (Fh = 1), the process proceeds to step S12, and if the steering state is not maintained in the previous control cycle (Fh = 0). In the case), the above described count value C, variable SR for integrating the calculated resistance value Rc, and variable value SI for integrating the calculated current value Ic are initialized to 0 (step S32), and thereafter The process proceeds to step S12.

ステップS12ではフラグFhをセットし(Fh=1)、次のステップS14ではカウント値Cを1だけ増加させ、その後、式(3)にV=Vm(電圧検出値)、I=Im(電流検出値)を代入することによりモータ抵抗Rの値を算出抵抗値Rcとして求める(ステップS16)。次に、算出抵抗値Rcを積算すべく、上記変数SRに算出抵抗値Rcを加算した値を新たな変数SRとし、この算出抵抗値Rcの算出時の電流検出値Ic=Imを積算すべく、上記変数SIに算出時電流値Icを加算した値を新たな変数SIとする(ステップS18)。   In step S12, the flag Fh is set (Fh = 1), and in the next step S14, the count value C is incremented by 1, and then V = Vm (voltage detection value) and I = Im (current detection) in equation (3). The value of the motor resistance R is obtained as a calculated resistance value Rc by substituting (value) (step S16). Next, in order to integrate the calculated resistance value Rc, a value obtained by adding the calculated resistance value Rc to the variable SR is set as a new variable SR, and the current detection value Ic = Im at the time of calculation of the calculated resistance value Rc is to be integrated. A value obtained by adding the calculated current value Ic to the variable SI is set as a new variable SI (step S18).

その後、カウント値Cが所定の終了値Cn(例えば50)以上であるか否かを判定する(ステップS20)。この判定の結果、カウント値Cが終了値Cnに達している場合(S20でYesの場合)には、ステップS34へ進み、終了値Cnに達していない場合(S20でNoの場合)には、ステップS24へ進む。   Thereafter, it is determined whether or not the count value C is equal to or greater than a predetermined end value Cn (for example, 50) (step S20). As a result of the determination, if the count value C has reached the end value Cn (Yes in S20), the process proceeds to step S34. If the count value C has not reached the end value Cn (No in S20), Proceed to step S24.

ステップS34では、変数SRをカウント値C=Cnで除算し、変数SIをカウント値C=Cnで除算することにより、直近のCn回での算出抵抗値Rcおよび算出時電流値Icの各平均値をそれぞれ抵抗平均値Rnewおよび電流平均値Inewとして求める。このようにして抵抗平均値Rnewおよび電流平均値Inewが得られた後は、カウント値Cおよび変数SR,SIを0に初期化し(ステップS38)、ステップS24へ進む。   In step S34, the variable SR is divided by the count value C = Cn, and the variable SI is divided by the count value C = Cn, thereby calculating the respective average values of the calculated resistance value Rc and the calculated current value Ic at the latest Cn times. Are obtained as the resistance average value Rnew and the current average value Inew, respectively. After the resistance average value Rnew and the current average value Inew are obtained in this way, the count value C and the variables SR and SI are initialized to 0 (step S38), and the process proceeds to step S24.

ステップS24では、電流検出値Imおよび電圧検出値Vmと共に抵抗平均値Rnewを用いて式(2)により角速度推定値ωeを算出する。すなわち、I=Im、V=Vm、R=Rmを式(2)に代入することにより角速度推定値ωeを算出する。これにより、1つの制御周期での角速度推定処理を終了し、図3に示すモータ制御処理のルーチンに戻る。   In step S24, the angular velocity estimated value ωe is calculated by the equation (2) using the resistance average value Rnew together with the current detection value Im and the voltage detection value Vm. That is, the estimated angular velocity value ωe is calculated by substituting I = Im, V = Vm, and R = Rm into the equation (2). Thereby, the angular velocity estimation process in one control cycle is terminated, and the process returns to the motor control process routine shown in FIG.

図6に示す上記の基本角速度推定処理により、図4および図5に示す構成の角速度推定部50がソフトウェア的に実現される。このような基本角速度推定処理によれば、保舵状態において、抵抗値Rcおよび電流値IcがCn回算出される毎に(カウント値Cが終了値Cnに達する毎に)、角速度推定値ωeの算出に使用する抵抗平均値Rnewが更新されるので(ステップS34,S24)、モータ1に個体差があっても、また、モータ1のブラシと整流子の間の接触状態や温度等が変化しても、実際のモータ抵抗値に比べ誤差の少ない抵抗平均値Rnewが得られ、この抵抗平均値Rnewを用いて角速度推定値ωeを精度良く算出することができる。これにより、モータ制御装置の制御性能が向上し、そのモータ制御装置を用いた電動パワーステアリング装置において良好な操舵感が得られる。   By the basic angular velocity estimation process shown in FIG. 6, the angular velocity estimation unit 50 having the configuration shown in FIGS. 4 and 5 is realized by software. According to such basic angular velocity estimation processing, every time the resistance value Rc and the current value Ic are calculated Cn times in the steering state (every time the count value C reaches the end value Cn), the angular velocity estimation value ωe is calculated. Since the resistance average value Rnew used for the calculation is updated (steps S34 and S24), even if there is an individual difference in the motor 1, the contact state between the brush and the commutator of the motor 1 and the temperature change. However, the resistance average value Rnew with less error compared to the actual motor resistance value is obtained, and the estimated angular velocity value ωe can be accurately calculated using the resistance average value Rnew. As a result, the control performance of the motor control device is improved, and a good steering feeling can be obtained in an electric power steering device using the motor control device.

<2.4.2 第1の角速度推定処理>
上記の基本角速度推定処理では、保舵状態において、カウント値Cが最終値Cnに達する毎に、角速度推定値ωeの算出に使用される抵抗平均値Rnewが更新されるが、1つの保舵期間(保舵状態の期間)においてカウント値が最終値Cnに達しないときには抵抗平均値Rnewは更新されない。例えば最終値Cnが100に設定されている場合、操舵期間においてC=90までカウントされても(算出抵抗値Rcが90回算出されても)、抵抗平均値Rnewは更新されない。また、外部からの影響等でカウント値(1つの保舵期間での算出抵抗値Rcの算出回数)が最終値Cn(例えば100)に達しないことが多い場合には、抵抗平均値Rnewの更新周期が長くなる。この更新周期が過度に長くなると、角速度推定値ωeの算出に使用される抵抗平均値Rnewと実際のモータ抵抗値Rとの間に乖離が生じ、モータ制御装置としての制御性能が低下する。
<2.4.2 First angular velocity estimation process>
In the above basic angular velocity estimation process, the resistance average value Rnew used for calculating the angular velocity estimated value ωe is updated every time the count value C reaches the final value Cn in the steering state. The resistance average value Rnew is not updated when the count value does not reach the final value Cn in the (holding state period). For example, when the final value Cn is set to 100, the resistance average value Rnew is not updated even if C = 90 is counted during the steering period (even if the calculated resistance value Rc is calculated 90 times). Further, when the count value (the number of times of calculation of the calculated resistance value Rc in one steering period) often does not reach the final value Cn (for example, 100) due to external influences, etc., the resistance average value Rnew is updated. The cycle becomes longer. When this update cycle becomes excessively long, a difference occurs between the resistance average value Rnew used for calculating the angular velocity estimated value ωe and the actual motor resistance value R, and the control performance as a motor control device is deteriorated.

そこで、本実施形態における角速度推定部50をソフトウェア的に実現するための第1の角速度推定処理では、角速度推定値ωeの算出に使用される抵抗平均値Rnewをカウント値Cが所定値(最終値Cn)に達する毎に更新するのではなく、当該抵抗平均値Rnewを保舵期間において逐次(制御周期毎に)更新するように構成されている。図8は、この第1の角速度推定処理を示すフローチャートである。第1の角速度推定処理は制御周期毎に実行され(図3参照)、この第1の角速度推定処理においてマイコン10は下記のように動作する。   Therefore, in the first angular velocity estimation process for realizing the angular velocity estimation unit 50 in the present embodiment by software, the count value C is a predetermined value (final value) of the resistance average value Rnew used for calculating the angular velocity estimated value ωe. Instead of updating every time Cn) is reached, the resistance average value Rnew is configured to be updated sequentially (every control cycle) in the steering period. FIG. 8 is a flowchart showing the first angular velocity estimation process. The first angular velocity estimation process is executed for each control cycle (see FIG. 3), and in this first angular velocity estimation process, the microcomputer 10 operates as follows.

まず、ステップS10において、電動パワーステアリング装置が保舵状態か否か判定する。このステップS10およびその後に実行され得るステップS11〜S16,S30,S32の内容は上記の基本角速度推定処理(図6)における同一番号のステップの内容と同じであるので、説明を省略する。   First, in step S10, it is determined whether or not the electric power steering device is in a steering holding state. Since the contents of step S10 and steps S11 to S16, S30, and S32 that can be executed thereafter are the same as the contents of the steps having the same number in the basic angular velocity estimation process (FIG. 6), description thereof is omitted.

第1の角速度推定処理では、マイコン10内のメモリを用いてソフトウェア的にFIFOメモリが実現されており、ステップS16で算出抵抗値Rcが新たに算出されると、その抵抗値RcがFIFOメモリに格納される(ステップS50)。このFIFOメモリは、サイズが所定値Ca(例えば50)の先入れ先出し方式のメモリであって、Ca個の算出抵抗値Rcが格納されている状態において更に1個の新たな算出抵抗が格納されると、最初に格納されたFIFOメモリ内の算出抵抗値Rcが廃棄される。このため、このFIFOメモリにCa回以上算出抵抗値Rcが格納された場合には、直近のCa回に格納されたCa個の算出抵抗値RcのみがそのFIFOメモリに存在する。   In the first angular velocity estimation process, a FIFO memory is realized in software using the memory in the microcomputer 10, and when the calculated resistance value Rc is newly calculated in step S16, the resistance value Rc is stored in the FIFO memory. Stored (step S50). The FIFO memory is a first-in first-out memory having a predetermined value Ca (for example, 50), and when one new calculated resistance is stored in a state where Ca calculated resistance values Rc are stored. The calculated resistance value Rc in the FIFO memory stored first is discarded. For this reason, when the calculated resistance value Rc is stored in the FIFO memory more than Ca times, only the Ca calculated resistance values Rc stored in the most recent Ca time exist in the FIFO memory.

新たに算出された抵抗値Rcが上記FIFOメモリに格納された後は、カウント値Cが所定値Ca以上であるか否かを判定する(ステップS52)。この判定の結果、カウント値Cが所定値Caに達している場合(S52でYesの場合)には、ステップS54へ進み、所定値Caに達していない場合(S52でNoの場合)には、ステップS60へ進む。最初にステップS52が実行される時点では、C=1であるので、ステップS60へ進むが、この図8の角速度推定処理(第1の角速度推定処理)が繰り返し実行されて、抵抗値Rcの算出回数がCa回以上になると、ステップS54へ進む(C≧Ca)。   After the newly calculated resistance value Rc is stored in the FIFO memory, it is determined whether or not the count value C is equal to or greater than a predetermined value Ca (step S52). As a result of this determination, if the count value C has reached the predetermined value Ca (Yes in S52), the process proceeds to step S54. If the count value C has not reached the predetermined value Ca (No in S52), Proceed to step S60. Since C = 1 at the time of the first execution of step S52, the process proceeds to step S60, but the angular velocity estimation process (first angular velocity estimation process) in FIG. 8 is repeatedly executed to calculate the resistance value Rc. When the number of times becomes Ca or more, the process proceeds to step S54 (C ≧ Ca).

ステップS54へ進んだ場合には、その時点での直近のCa回で算出されたCa個の抵抗値RcがFIFOメモリに存在し、これらCa個の抵抗値Rcの平均値Rnewを求める。これは、制御周期毎に順次得られる抵抗値Rcについて移動平均化処理を施すことにより抵抗平均値Rcを求めることを意味する。その後、ステップS56で、この抵抗平均値RnewをRoldに代入して、ステップS58へ進む。   When the process proceeds to step S54, Ca resistance values Rc calculated in the most recent Ca times at that time exist in the FIFO memory, and an average value Rnew of these Ca resistance values Rc is obtained. This means that the resistance average value Rc is obtained by subjecting the resistance value Rc sequentially obtained for each control cycle to a moving average process. Thereafter, in step S56, the resistance average value Rnew is substituted into Rold, and the process proceeds to step S58.

ステップS60へ進んだ場合には、その時点での直近のC回で算出されたC個の抵抗値RcがFIFOメモリに存在し、これらC個の抵抗値Rcの平均値R1を求める。ここでCは、1以上でCaよりも小さい整数であり、Cが小さい場合には、平均値R1は安定した値ではなくばらつきがあるので、すなわち平均値R1に含まれるノイズが比較的大きいので、そのまま角速度推定値ωeの算出に使用するのは好ましくない。そこで、抵抗値RoldとR1との加重平均を示す下記式(4)により抵抗平均値Rnewを求める(ステップS62)。
Rnew={(1−f(C))・Rold+f(C)・R1} …(4)
ここで、f(C)は、C=0のとき0となりC=Caとき1となる、カウント値Cの単調増加関数であり、例えば関数f(C)=C/Caまたはf(C)=C2/Ca2を使用することができる。上記式(4)は、新たな更新パラメータ値としての抵抗平均値Rnewを求めるための電流検出値Imおよび電圧検出値Vmの取得個数(これは算出抵抗値Rcの取得個数に等しい)に応じた、抵抗値Roldと抵抗値R1との加重平均を示している。この式(4)により抵抗平均値Rnewが得られると、ステップS58へ進む。
When the process proceeds to step S60, C resistance values Rc calculated in the most recent C times at that time are present in the FIFO memory, and an average value R1 of these C resistance values Rc is obtained. Here, C is an integer greater than or equal to 1 and smaller than Ca. When C is small, the average value R1 is not a stable value but varies, that is, the noise included in the average value R1 is relatively large. It is not preferable to use it for calculation of the estimated angular velocity value ωe as it is. Therefore, the resistance average value Rnew is obtained by the following equation (4) indicating the weighted average of the resistance values Rold and R1 (step S62).
Rnew = {(1−f (C)) · Rold + f (C) · R1} (4)
Here, f (C) is a monotonically increasing function of the count value C, which is 0 when C = 0 and 1 when C = Ca. For example, the function f (C) = C / Ca or f (C) = C 2 / Ca 2 can be used. The above equation (4) corresponds to the number of acquired current detection values Im and voltage detection values Vm for obtaining the resistance average value Rnew as a new update parameter value (this is equal to the number of acquisitions of the calculated resistance value Rc). The weighted average of the resistance value Rold and the resistance value R1 is shown. When the resistance average value Rnew is obtained by the equation (4), the process proceeds to step S58.

ステップS58では、電流検出値I=Imおよび電圧検出値V=Vmと共に抵抗値R=Rnewを用いて式(2)により角速度推定値ωeを算出する。この角速度推定値ωeの算出には、保舵期間では上記のステップS54またはS62で算出された抵抗値Rnewが使用されるが、操舵期間ではその前の保舵期間で設定された抵抗値Rnewが使用される。ステップS58で角速度推定値ωeが算出されると、1つの制御周期での角速度推定処理を終了し、図3に示すモータ制御処理のルーチンに戻る。   In step S58, the angular velocity estimated value ωe is calculated by the equation (2) using the resistance value R = Rnew together with the current detection value I = Im and the voltage detection value V = Vm. For the calculation of the estimated angular velocity value ωe, the resistance value Rnew calculated in step S54 or S62 is used in the steering period. In the steering period, the resistance value Rnew set in the previous steering period is used. used. When the angular velocity estimation value ωe is calculated in step S58, the angular velocity estimation process in one control cycle is terminated, and the process returns to the motor control process routine shown in FIG.

このような第1の角速度推定処理によれば、角速度推定値ωeを算出するための抵抗平均値Rnewは、各保舵期間において逐次に得られ制御周期毎に更新される。このため、角速度推定値ωeを算出するための抵抗平均値Rnewは、現実のモータ抵抗値Rの変化に追随することができ、現実のモータ抵抗値Rとの乖離が抑制される。その結果、モータ1のブラシと整流子の間の接触状態や温度等が変化しても、実際のモータ抵抗値に比べ誤差の少ない抵抗平均値Rnewを用いて角速度推定値ωeを精度良く算出することができる。これにより、モータ制御装置の制御性能が向上し、そのモータ制御装置を用いた電動パワーステアリング装置において良好な操舵感が得られる。   According to such a first angular velocity estimation process, the resistance average value Rnew for calculating the angular velocity estimation value ωe is sequentially obtained in each steering holding period and updated every control cycle. For this reason, the resistance average value Rnew for calculating the estimated angular velocity value ωe can follow the change in the actual motor resistance value R, and the deviation from the actual motor resistance value R is suppressed. As a result, even if the contact state or temperature between the brush and the commutator of the motor 1 changes, the estimated angular velocity value ωe is accurately calculated using the resistance average value Rnew with less error than the actual motor resistance value. be able to. As a result, the control performance of the motor control device is improved, and a good steering feeling can be obtained in an electric power steering device using the motor control device.

<2.4.3 第2の角速度推定処理>
上記第1の角速度推定処理では、保舵期間において角速度推定値ωeの算出に使用される抵抗値Rnewは制御周期毎に更新される(図8のステップS52〜S56,S60,S62)。しかし、操舵期間では、その直前の保舵期間で最後に算出された抵抗平均値Rnewが角速度推定値ωeの算出に使用され、操舵状態の間は更新されない。そこで、本実施形態における角速度推定部50をソフトウェア的に実現するための第2の角速度推定処理では、図9に示すように、操舵状態であると判定された場合(ステップS10でNoの場合)には、その直前の保舵期間において最後に算出された抵抗平均値Rnewおよび電流平均値Inewに基づき抵抗マップが更新され(ステップS72)、操舵期間において角速度推定値ωeの算出に使用される抵抗値Rmは、制御周期毎にその抵抗マップを参照して決定され(ステップS76)、その抵抗値Rmを用いて角速度推定値ωeが算出される(ステップS78)。
<2.4.3 Second angular velocity estimation process>
In the first angular velocity estimation process, the resistance value Rnew used for calculating the angular velocity estimated value ωe in the steering holding period is updated every control cycle (steps S52 to S56, S60, and S62 in FIG. 8). However, in the steering period, the resistance average value Rnew calculated last in the immediately preceding steering period is used to calculate the angular velocity estimated value ωe, and is not updated during the steering state. Therefore, in the second angular velocity estimation process for realizing the angular velocity estimation unit 50 in the present embodiment in software, as shown in FIG. 9, when it is determined that the vehicle is in the steering state (No in step S10). The resistance map is updated based on the resistance average value Rnew and current average value Inew last calculated in the steering period immediately before (step S72), and the resistance used for calculating the estimated angular velocity value ωe in the steering period. The value Rm is determined with reference to the resistance map for each control period (step S76), and the angular velocity estimated value ωe is calculated using the resistance value Rm (step S78).

第2の角速度推定処理における他のステップS10〜S16,S32,S50〜S62の内容は、上記第1の角速度推定処理(図8)における対応するステップS10〜S16,S32,S50〜S62の内容と基本的には同じである。ただし、第2の角速度推定処理では、既述のように、抵抗マップを更新するために抵抗平均値Rnewだけでなく電流平均値Inewも必要であるので、これに対処すべくステップS50,S54,S56,S60,S62の内容が、第1の角速度推定処理における対応するステップS50,S54,S56,S60,S62の内容と若干異なっている(図8および図9参照)。   The contents of the other steps S10 to S16, S32, S50 to S62 in the second angular velocity estimation process are the same as the contents of the corresponding steps S10 to S16, S32, S50 to S62 in the first angular velocity estimation process (FIG. 8). Basically the same. However, in the second angular velocity estimation process, as described above, in order to update the resistance map, not only the resistance average value Rnew but also the current average value Inew is necessary, so that steps S50, S54, The contents of S56, S60, and S62 are slightly different from the contents of the corresponding steps S50, S54, S56, S60, and S62 in the first angular velocity estimation process (see FIGS. 8 and 9).

このような第2の角速度推定処理によれば、上記第1の角速度推定処理の場合と同様の効果に加えて、操舵期間における角速度推定値ωeの算出精度が向上する。その結果、モータ制御装置の制御性能が更に向上し、そのモータ制御装置を用いた電動パワーステアリング装置においてより良好な操舵感が得られる。   According to such second angular velocity estimation processing, in addition to the same effects as in the case of the first angular velocity estimation processing, the calculation accuracy of the angular velocity estimation value ωe during the steering period is improved. As a result, the control performance of the motor control device is further improved, and a better steering feeling can be obtained in an electric power steering device using the motor control device.

<3.第2の実施形態>
<3.1 モータ制御装置の構成>
本発明の第2の実施形態に係るモータ制御装置も、上記第1の実施形態と同様、図1に示すように電動パワーステアリング装置において使用され、ECU5を用いて構成されており、ブラシ付きモータ1を駆動する。また、このモータ制御装置の構成は、回転センサ7に代えて舵角センサ7hが設けられる点と角速度推定部50の構成を除き、上記第1の実施形態と基本的には同様であって、図2に示す通りである。ただし、図2において点線で示される各部の温度センサ41,42,43は本実施形態においても使用されない。なお本実施形態では、角速度推定値ωeの算出において、舵角センサ7hの出力信号が示す操舵角θhがそのまま使用されるのではなく、後述のように当該操舵角θhを微分することにより得られる操舵角速度ωhに対応するモータ角速度の概略的な値ωs(以下「角速度概略検出値ωs」または単に「検出値ωs」という)が使用される。このため、舵角センサ7hに代えて、操舵角速度センサ、または、モータの角速度を簡易に検出する低コストの簡易角速度センサを使用してもよい。このようにして舵角センサまたは操舵角速度センサまたは簡易角速度センサを用いてモータ1の回転速度を検出するという構成により、回転速度の検出精度は電動モータの駆動制御に必要な精度よりも低いが格段に低コストでモータ1の速度検出手段(簡易速度検出手段)を実現することができる。
<3. Second Embodiment>
<3.1 Motor controller configuration>
Similarly to the first embodiment, the motor control device according to the second embodiment of the present invention is used in the electric power steering device as shown in FIG. 1 is driven. The configuration of the motor control device is basically the same as that of the first embodiment except that the steering angle sensor 7h is provided instead of the rotation sensor 7 and the configuration of the angular velocity estimation unit 50. As shown in FIG. However, the temperature sensors 41, 42, and 43 of the respective parts indicated by dotted lines in FIG. 2 are not used in this embodiment. In this embodiment, in calculating the angular velocity estimated value ωe, the steering angle θh indicated by the output signal of the steering angle sensor 7h is not used as it is, but is obtained by differentiating the steering angle θh as described later. A rough value ωs of the motor angular velocity corresponding to the steering angular velocity ωh (hereinafter referred to as “angular velocity approximate detection value ωs” or simply “detection value ωs”) is used. Therefore, instead of the rudder angle sensor 7h, a steering angular velocity sensor or a low-cost simple angular velocity sensor that easily detects the angular velocity of the motor may be used. With the configuration in which the rotation speed of the motor 1 is detected using the steering angle sensor, the steering angular speed sensor, or the simple angular speed sensor in this way, the detection accuracy of the rotation speed is lower than the accuracy necessary for the drive control of the electric motor, but it is markedly different. In addition, the speed detection means (simple speed detection means) of the motor 1 can be realized at low cost.

以下では、本実施形態における角速度推定部50の構成について説明し、他の部分については同一または対応する構成要素に同一の参照符号を付して説明を省略する(後述の他の実施形態についても同様)。ただし、上記第1の実施形態との間には、図3に示すモータ制御処理についても若干の相違点があり、その相違点については角速度推定部50の構成の説明において適宜言及する(後述の他の実施形態についても同様)。   Hereinafter, the configuration of the angular velocity estimation unit 50 in the present embodiment will be described, and the same or corresponding components will be denoted by the same reference numerals for the other portions, and the description thereof will be omitted (also in other embodiments described later). The same). However, there is a slight difference in the motor control processing shown in FIG. 3 with respect to the first embodiment, and this difference will be appropriately referred to in the description of the configuration of the angular velocity estimation unit 50 (described later). The same applies to other embodiments).

図10は、本実施形態における角速度推定部50の機能的構成を示すブロック図である。この角速度推定部50は、速度判定部61とパラメータ値算出部62と角速度推定値算出部66とを備えており、速度判定部61とパラメータ値算出部62とはパラメータ値更新部400を構成する。角速度推定部50では、舵角センサ(または操舵角速度センサ)7hからの出力信号に基づき得られる角速度値が角速度概略検出値ωsとして入力される。舵角センサ(または操舵角速度センサ)7hの検出精度は、モータ1の回転速度が高いほど高い。このため、速度判定部61は、角速度概略検出値ωsが所定の最小値ωmin以上か否かを判定し、その判定結果を示す信号を回転状態信号Spとして出力する。パラメータ値算出部62は、この回転状態信号Spに基づき、モータ1が当該最小値ωminに対応する所定速度以上で回転している場合に、角速度概略検出値ωsと電流検出値Imと電圧検出値Vmとを1組とする複数組の検出値ωs,Im,Vmに基づき抵抗値Rnewと逆起電力定数knewを求める(詳細は後述)。角速度推定値算出部66は、これらの抵抗値Rnewと逆起電力定数knewを用いて角速度推定値ωeを算出する。また、パラメータ値算出部62は、回転状態信号Spに基づき、モータ1が当該最小値ωminに対応する所定速度よりも小さい速度で回転しているか停止している場合には、抵抗値Rnewおよび逆起電力定数knewを新たに算出しない(更新しない)。この場合、角速度推定値算出部66は、既に得られている抵抗値Rnewと逆起電力定数knewをそのまま用いて、または、他の方法により得られる抵抗値Rnew等を用いて角速度推定値ωeを算出する(詳細は後述)。   FIG. 10 is a block diagram showing a functional configuration of the angular velocity estimation unit 50 in the present embodiment. The angular velocity estimating unit 50 includes a velocity determining unit 61, a parameter value calculating unit 62, and an angular velocity estimated value calculating unit 66. The velocity determining unit 61 and the parameter value calculating unit 62 constitute a parameter value updating unit 400. . In the angular velocity estimation unit 50, an angular velocity value obtained based on an output signal from the steering angle sensor (or steering angular velocity sensor) 7h is input as the angular velocity approximate detection value ωs. The detection accuracy of the steering angle sensor (or steering angular velocity sensor) 7h is higher as the rotational speed of the motor 1 is higher. For this reason, the speed determination unit 61 determines whether or not the angular velocity approximate detection value ωs is equal to or greater than a predetermined minimum value ωmin, and outputs a signal indicating the determination result as the rotation state signal Sp. Based on the rotation state signal Sp, the parameter value calculation unit 62 performs the angular velocity approximate detection value ωs, the current detection value Im, and the voltage detection value when the motor 1 is rotating at a predetermined speed or higher corresponding to the minimum value ωmin. A resistance value Rnew and a counter electromotive force constant knew are obtained based on a plurality of sets of detected values ωs, Im, and Vm with Vm as one set (details will be described later). The angular velocity estimated value calculation unit 66 calculates the angular velocity estimated value ωe using the resistance value Rnew and the back electromotive force constant knew. Further, the parameter value calculation unit 62 determines the resistance value Rnew and the reverse value when the motor 1 is rotating at a speed smaller than a predetermined speed corresponding to the minimum value ωmin or stopped based on the rotation state signal Sp. The electromotive force constant knee is not newly calculated (not updated). In this case, the angular velocity estimated value calculation unit 66 uses the already obtained resistance value Rnew and the counter electromotive force constant knew as it is, or uses the resistance value Rnew obtained by another method or the like to calculate the angular velocity estimated value ωe. Calculate (details will be described later).

<3.2 角速度推定処理の具体例>
以下、本実施形態における角速度推定部50をソフトウェア的に実現するための角速度推定処理(図3のステップS4)につき幾つかの具体例を説明する。なお本実施形態では、図3のステップS2において、上記最小値ωminや、後述の時間制限値Tlim、パラメータ値(Rnew,knew)の新たな算出に必要な検出値(Vm,Im等)の個数を規定する所定値ja等に対し実験等に基づく適切な値が設定され、抵抗値Rold,Rnewや逆起電力定数kold,knewには初期値として実験等に基づく適切な値が設定され、パラメータ値(Rnew,knew)の算出に使用される検出値(Vm,Im,ωs)の個数を示す変数jが0に初期化される。また、図3のステップS3では、各センサ3,4,7hおよび検出回路24,25からの出力信号に基づき制御周期毎に操舵トルクTs,車速S,角速度概略検出値ωs、電圧検出値Vm、電流検出値Imが取得される。
<3.2 Specific example of angular velocity estimation processing>
Hereinafter, some specific examples of angular velocity estimation processing (step S4 in FIG. 3) for realizing the angular velocity estimation unit 50 in the present embodiment in software will be described. In the present embodiment, in step S2 in FIG. 3, the number of detection values (Vm, Im, etc.) necessary for the new calculation of the minimum value ωmin, the time limit value Tlim, and parameter values (Rnew, knew) described later. An appropriate value based on an experiment or the like is set for the predetermined value ja or the like that defines the value, and an appropriate value based on an experiment or the like is set as an initial value for the resistance values Rold, Rnew and the back electromotive force constants kold, knew, and the parameters A variable j indicating the number of detection values (Vm, Im, ωs) used for calculation of the values (Rnew, knew) is initialized to zero. In step S3 of FIG. 3, the steering torque Ts, the vehicle speed S, the angular velocity approximate detection value ωs, the voltage detection value Vm, for each control cycle based on the output signals from the sensors 3, 4, 7h and the detection circuits 24, 25. A current detection value Im is acquired.

<3.2.1 第1の角速度推定処理>
図11は、本実施形態における角速度推定処理S4の一例である第1の角速度推定処理の詳細を示すフローチャートである。本実施形態における第1の角速度推定処理も制御周期毎に実行され(図3参照)、この第1の角速度推定処理においてマイコン10は下記のように動作する。
<3.2.1 First angular velocity estimation process>
FIG. 11 is a flowchart showing details of a first angular velocity estimation process which is an example of the angular velocity estimation process S4 in the present embodiment. The first angular velocity estimation process in the present embodiment is also executed for each control cycle (see FIG. 3), and in this first angular velocity estimation process, the microcomputer 10 operates as follows.

まず、舵角センサ(または操舵角速度センサ)7hからの出力信号に基づき得られる角速度概略検出値ωsが所定の最小値ωmin以上か否かを判定する(ステップS100)。この判定の結果、角速度概略検出値ωsが当該最小値ωmin以上である場合(Yesの場合)にはステップS102へ進み、角速度概略検出値ωsが当該最小値ωminよりも小さい場合(Noの場合)には、角速度推定値ωeの算出に使用するパラメータ値(抵抗値Rnew、逆起電力定数knew)を更新することなくステップS120へ進む。   First, it is determined whether or not the angular velocity approximate detection value ωs obtained based on the output signal from the steering angle sensor (or steering angular velocity sensor) 7h is equal to or greater than a predetermined minimum value ωmin (step S100). As a result of this determination, if the angular velocity approximate detection value ωs is equal to or greater than the minimum value ωmin (in the case of Yes), the process proceeds to step S102, and if the angular velocity approximate detection value ωs is smaller than the minimum value ωmin (in the case of No). The process proceeds to step S120 without updating the parameter values (resistance value Rnew, counter electromotive force constant knew) used to calculate the estimated angular velocity value ωe.

ステップS102では、変数jが0か否かを判定する。その判定の結果、変数jが0であればステップS103へ進み、変数jが0でなければステップS104へ進む。マイコン10はタイマーを内蔵しており、ステップS103では、このタイマーをスタートさせる。これにより、このタイマーのスタートからの経過時間Telpが0に初期化され、その後、ステップS104へ進む。ステップS104へ進んだ場合には、変数jの値を1だけ増加させた後、ステップS106へ進む。   In step S102, it is determined whether the variable j is 0 or not. If the variable j is 0 as a result of the determination, the process proceeds to step S103, and if the variable j is not 0, the process proceeds to step S104. The microcomputer 10 has a built-in timer, and in step S103, the timer is started. As a result, the elapsed time Telp from the start of the timer is initialized to 0, and then the process proceeds to step S104. When the process proceeds to step S104, the value of the variable j is increased by 1, and then the process proceeds to step S106.

本実施形態における第1の角速度推定処理においても、マイコン10内のメモリを用いてソフトウェア的にFIFOメモリが実現されている。このFIFOメモリは、サイズが所定値ja(例えば30)の先入れ先出し方式のメモリであって、角速度、電流、電圧の上記検出値ωs,Im,Vmと上記経過時間Telpからなる4つの値を1組とするja組の検出データが格納されている状態において更に1組の検出データが格納されると、最初に格納されたFIFOメモリ内の1組の検出データ(先頭組を構成する上記検出値ωs,Im,Vmおよび上記経過時間Telp)が廃棄される。   Also in the first angular velocity estimation process in the present embodiment, a FIFO memory is realized in software using the memory in the microcomputer 10. This FIFO memory is a first-in first-out type memory whose size is a predetermined value ja (for example, 30), and a set of four values consisting of the detected values ωs, Im, Vm of the angular velocity, current, and voltage and the elapsed time Telp. When one set of detection data is stored in the state where the ja set of detection data is stored, one set of detection data in the FIFO memory stored first (the detection value ωs constituting the first set) , Im, Vm and the elapsed time Telp) are discarded.

ステップS106では、このようなFIFOメモリに現時点での検出値ωs,Im,Vmと経過時間Telpを1組の検出データとして格納する。   In step S106, the current detected values ωs, Im, Vm and the elapsed time Telp are stored in such a FIFO memory as a set of detected data.

次のステップS108では、このFIFOメモリの先頭組における経過時間Telpとタイマーが示す経過時間Telpとの差ΔTelpを求める。この差ΔTelpは、先頭組における検出値ωs,Im,Vmの検出時点から現時点までの経過時間を示しており、次のステップS110では、この差ΔTelpが所定の時間制限値Tlim以下であるか否かを判定する。なお、この時点では先頭組における経過時間Telpは略0であってΔTelpはタイマーが示す経過時間Telpに略等しいが、後述のようにFIFOメモリから先頭組が取り出されたり廃棄されたりしたときには2番目の組が先頭組となり、そのとき先頭組における経過時間Telpは正の値(非零)となる。   In the next step S108, a difference ΔTel between the elapsed time Telp in the first group of the FIFO memory and the elapsed time Telp indicated by the timer is obtained. This difference ΔTelp indicates the elapsed time from the detection time point of the detected values ωs, Im, Vm in the first set to the present time. In the next step S110, whether the difference ΔTelp is equal to or smaller than a predetermined time limit value Tlim. Determine whether. At this time, the elapsed time Telp in the first group is substantially 0 and ΔTelp is substantially equal to the elapsed time Telp indicated by the timer. However, when the first group is taken out or discarded from the FIFO memory as described later, the second group Is the first group, and the elapsed time Telp in the first group is a positive value (non-zero).

ステップS110での判定の結果、上記差ΔTelpが時間制限値Tlim以下である場合には、ステップS112へ進み、変数jが所定値jaに等しいか否かを判定する。その判定の結果、変数jが所定値jaに等しければステップS114へ進み、変数jが所定値jaに等しくなければ(すなわち所定値jaよりも小さければ)、ステップS128へ進む。最初にステップS112が実行される時点では、j=1であるので、ステップS128へ進むが、この図11の角速度推定処理(第1の角速度推定処理)が繰り返し実行されて、ja組の上記値ωs,Im,Vm,TelpがFIFOメモリに格納された状態になると、ステップS114へ進む(j=ja)。   As a result of the determination in step S110, when the difference ΔTelp is equal to or smaller than the time limit value Tlim, the process proceeds to step S112, and it is determined whether or not the variable j is equal to the predetermined value ja. If it is determined that the variable j is equal to the predetermined value ja, the process proceeds to step S114. If the variable j is not equal to the predetermined value ja (that is, smaller than the predetermined value ja), the process proceeds to step S128. Since j = 1 at the time when step S112 is first executed, the process proceeds to step S128. However, the angular velocity estimation process (first angular velocity estimation process) in FIG. When ωs, Im, Vm, and Telp are stored in the FIFO memory, the process proceeds to step S114 (j = ja).

ステップS114では、FIFOメモリに格納されているja組の上記値ωs,Im,Vm,Telpのうちja組の検出値ωs,Im,Vmから下記のようにして抵抗値Rnewと逆起電力定数knewとを算出する。   In step S114, the resistance value Rnew and the counter electromotive force constant knew are determined as follows from the detected values ωs, Im, Vm of the ja set among the above-described values ωs, Im, Vm, Telp of the ja set stored in the FIFO memory. And calculate.

まず、FIFOメモリ内のja組の検出値ωs,Im,Vmをωs(i),Im(i),Vm(i)(i=1,2,…,ja)と記すものとし、ja行2列の行列X、ja次元ベクトルY、および2次元ベクトルφを下記のように定義する(ベクトルYはja行1列の行列ともいえ、ベクトルφは2行1列の行列ともいえる)。
X=(Ω II) …(5)
Y=(Vm(1) Vm(2) … Vm(ja) )T …(6)
φ=(k R)T …(7)
ここで、Ωは
Ω=(ωs(1) ωs(2) … ωs(ja) )T …(8)
で定義されるja次元ベクトルであり、IIは
II=(Im(1) Im(2) … Im(ja) )T …(9)
で定義されるja次元ベクトルであり、上付添字のTは転置を示す記号である(例えばATは行列Aの転置行列を表す)。式(2)より
k・ωs(i)+R・Im(i)=Vm(i) …(10)
であり(i=1,2,…,ja)、これを上記のように定義されたX,Y,φで表現すると、
X・φ=Y …(11)
となる。
First, the detected values ωs, Im, and Vm of the ja set in the FIFO memory are written as ωs (i), Im (i), and Vm (i) (i = 1, 2,..., Ja), and the ja row 2 A matrix X of columns, a ja-dimensional vector Y, and a two-dimensional vector φ are defined as follows (the vector Y can also be referred to as a ja × 1 matrix, and the vector φ can be referred to as a 2 × 1 matrix).
X = (Ω II) (5)
Y = (Vm (1) Vm (2)... Vm (ja)) T (6)
φ = (k R) T (7)
Here, Ω is Ω = (ωs (1) ωs (2)... Ωs (ja)) T (8)
And II is II = (Im (1) Im (2)... Im (ja)) T (9)
The superscript T is a symbol indicating transposition (for example, A T represents a transposed matrix of the matrix A). From Equation (2) k · ωs (i) + R · Im (i) = Vm (i) (10)
(I = 1, 2,..., Ja), which is expressed by X, Y, and φ defined as above,
X · φ = Y (11)
It becomes.

そこでステップS114では、次式により算出されるkおよびRをそれぞれ上記の逆起電力定数knewおよび抵抗値Rnewとする(これは、ステップS120での角速度推定値ωeの算出に使用される逆起電力定数knewおよび抵抗値Rnewを更新することを意味する)。
φ=X+Y …(12)
ここで、X+は行列Xの擬似逆行列であり、次式により算出することができる。
+=(XT・X)-1・XT …(13)
また、上記のような擬似逆行列XTを用いて式(12)により算出されるφ=(k R)Tは、下記のΨを最小にするものとなっている。
Ψ={V(1)−k・ωs(1)−R・Im(1)}2+{V(2)−k・ωs(2)−R・Im(2)}2
… +{V(j)−k・ωs(j)−R・Im(j)}2
=(Y−X・φ)T・(Y−X・φ) …(14)
したがって、式(12)により算出されるφ=(k R)T をφ=(knew Rnew)Tとすると、逆起電力定数k=knewおよび抵抗値R=Rnewは、FIFOメモリ内のj組の検出値ωs(i),Im(i),Vm(i)(i=1,2,…,ja)を線形式Vm=k・ωs+R・Imを用いて最小二乗法により近似するための値となっている。すなわち、式(12)によりφを算出することは、j組の検出値ωs(i),Im(i),Vm(i)(i=1,2,…,ja)のいずれもがモータ1の回路方程式Vm=k・ωs+R・Imを少なくとも近似的に満たすようなφ=(k R)T を求めることを意味する。
Therefore, in step S114, k and R calculated by the following equations are set as the above-described counter electromotive force constant knee and resistance value Rnew (this is the counter electromotive force used for calculating the angular velocity estimated value ωe in step S120). It means updating the constant knew and the resistance value Rnew).
φ = X + Y (12)
Here, X + is a pseudo inverse matrix of the matrix X, and can be calculated by the following equation.
X + = (X T · X) −1 · X T (13)
Further, φ = (k R) T calculated by the expression (12) using the pseudo inverse matrix X T as described above minimizes the following Ψ.
Ψ = {V (1) −k · ωs (1) −R · Im (1)} 2 + {V (2) −k · ωs (2) −R · Im (2)} 2 ...
… + {V (j) −k · ωs (j) −R · Im (j)} 2
= (Y−X · φ) T · (Y−X · φ) (14)
Therefore, if the by phi = (k R) and T φ = (knew Rnew) T calculated by the equation (12), the counter electromotive force constant k = knew and resistance R = Rnew is the FIFO memory j sets of A value for approximating the detected values ωs (i), Im (i), Vm (i) (i = 1, 2,..., Ja) using the linear form Vm = k · ωs + R · Im by the least square method; It has become. That is, the calculation of φ by the equation (12) means that all of the j sets of detected values ωs (i), Im (i), Vm (i) (i = 1, 2,..., Ja) are motors 1. This means obtaining φ = (k R) T that at least approximately satisfies the circuit equation Vm = k · ωs + R · Im.

上記のようにして新たな抵抗値Rnewおよび逆起電力定数knewが求まると、その後、これらの抵抗値Rnewおよび逆起電力定数KnewをそれぞれRoldおよびkoldとおき(ステップS116)、FIFOメモリにおいて先頭組の検出データ(ωs,Im,Vm,Telp)を廃棄して次の新たな1組の検出データ(ωs,Im,Vm,Telp)の格納を可能とするために、変数jを1だけ減じる(ステップS118)。その後、ステップS120へ進む。   When the new resistance value Rnew and the back electromotive force constant knew are obtained as described above, the resistance value Rnew and the back electromotive force constant Knew are then set as Rold and kold, respectively (step S116), and the first group is set in the FIFO memory. In order to discard the detected data (ωs, Im, Vm, Telp) and store the next new set of detected data (ωs, Im, Vm, Telp), the variable j is reduced by 1 ( Step S118). Then, it progresses to step S120.

ステップS128へ進んだ場合には、変数jが2以上か否かを判定する。その判定の結果、変数jが2よりも小さい場合(Noの場合)には、後述のステップS130において抵抗値R1および逆起電力定数k1を算出できないので、角速度推定値ωeの算出に使用する抵抗値Rnewおよび逆起電力定数knewを更新することなくステップS120へ進む。一方、その判定の結果、変数jが2以上の場合(Yesの場合)にはステップS130へ進む。   When the process proceeds to step S128, it is determined whether or not the variable j is 2 or more. As a result of the determination, if the variable j is smaller than 2 (in the case of No), since the resistance value R1 and the counter electromotive force constant k1 cannot be calculated in step S130 described later, the resistance used for calculating the estimated angular velocity value ωe. The process proceeds to step S120 without updating the value Rnew and the back electromotive force constant knew. On the other hand, if it is determined that the variable j is 2 or more (Yes), the process proceeds to step S130.

ステップS130へ進んだ時点では、FIFOメモリにはj組の検出値ωs,Im,Vmと経過時間Telpが格納されており、これらのうちj組の検出値ωs,Im,VmからステップS114と同様にして抵抗値R1と逆起電力定数k1とを算出する。すなわち、ja=jとして上記式(12)により算出されるφ=(k R)Tをφ=(k1 R1)Tとすることで、ステップS130における抵抗値R1および逆起電力定数k1を求める。この時点での変数jは、2以上でjaよりも小さい整数であり、変数jが小さい場合には、抵抗値R1および逆起電力定数k1がばらついて安定に算出されないので、すなわちR1,k1に含まれるノイズが比較的大きいので、抵抗値R1および逆起電力定数k1をそのまま角速度推定値ωeの算出に使用するのは好ましくない。 At the time of proceeding to step S130, the FIFO memory stores j sets of detected values ωs, Im, Vm and the elapsed time Telp, and among these sets of j detected values ωs, Im, Vm, the same as step S114 Thus, the resistance value R1 and the counter electromotive force constant k1 are calculated. That, niv = j as by the phi = (k R) and T phi = (k1 R1) T is calculated by the equation (12) obtains the resistance value R1 and the counter electromotive force constant k1 in step S130. The variable j at this time is an integer greater than or equal to 2 and smaller than ja. When the variable j is small, the resistance value R1 and the counter electromotive force constant k1 vary and are not stably calculated. Since the contained noise is relatively large, it is not preferable to use the resistance value R1 and the counter electromotive force constant k1 as they are for the calculation of the estimated angular velocity value ωe.

そこで、角速度推定値ωeの算出に使用すべき抵抗値Rnewおよび逆起電力定数knewを、抵抗値RoldとR1との加重平均および逆起電力定数koldとk1の加重平均を示す下記式(15)および(16)により算出する(ステップS132)。
Rnew={(1−f(j))・Rold+f(j)・R1} …(15)
knew={(1−f(j))・kold+f(j)・k1} …(16)
ここで、f(j)は、j=0のとき0となりj=jaとき1となる、変数jの単調増加関数であり、例えば関数f(j)=j/jaまたはf(j)=j2/ja2を使用することができる。上記式(15)および(16)は、新たな更新パラメータ値としての抵抗値Rnewと逆起電力定数knewを求めるための電流検出値Imおよび電圧検出値Vmならびに角速度概略検出値ωsの取得個数に応じた、抵抗値RoldとR1との加重平均および逆起電力定数knewとk1との加重平均を示している。これらの式(15)および(16)により抵抗値Rnewおよび逆起電力定数knewが得られると、ステップS120へ進む。
Therefore, the resistance value Rnew and the counter electromotive force constant knew to be used for the calculation of the estimated angular velocity value ωe, the weighted average of the resistance values Rold and R1, and the weighted average of the counter electromotive force constants kold and k1 are expressed by the following equation (15). And (16) (step S132).
Rnew = {(1−f (j)) · Rold + f (j) · R1} (15)
knee = {(1−f (j)) · kold + f (j) · k1} (16)
Here, f (j) is a monotonically increasing function of variable j, which is 0 when j = 0 and 1 when j = ja. For example, function f (j) = j / ja or f (j) = j 2 / ja 2 can be used. The above equations (15) and (16) are obtained as the number of acquired current detection value Im and voltage detection value Vm and angular velocity approximate detection value ωs for obtaining the resistance value Rnew and the back electromotive force constant knew as new update parameter values. The weighted average of the resistance values Rold and R1 and the weighted average of the back electromotive force constants knew and k1 are shown. When the resistance value Rnew and the back electromotive force constant knew are obtained from these equations (15) and (16), the process proceeds to step S120.

上記ステップS110での判定の結果、FIFOメモリの先頭組における検出値ωs,Im,Vmの検出時点からの経過時間を示す上記差ΔTelpが時間制限値Tlimを越えている場合(Noの場合)には、ステップS122へ進み、その先頭組の検出値ωs,Im,Vmは現時点の抵抗値Rnew等の算出に使用するには古すぎるとして、FIFOメモリから先頭組の検出データ(ωs,Im,Vm,Telp)を取り出す(先頭組の検出データの廃棄)。   As a result of the determination in step S110, when the difference ΔTel indicating the elapsed time from the detection point of the detected values ωs, Im, Vm in the first group of the FIFO memory exceeds the time limit value Tlim (in the case of No) Advances to step S122, and the detected value ωs, Im, Vm of the first set is too old to be used for calculating the current resistance value Rnew and the like, and the detected data (ωs, Im, Vm of the first set is read from the FIFO memory. , Telp) is taken out (discarding the first set of detection data).

次に、この先頭組の検出データの取り出しに応じて、変数jを1だけ減じ(ステップS124)、その後、この変数jが0か否かを判定する(ステップS126)。この判定の結果、変数が0でない場合にはステップS108へ戻る。   Next, the variable j is decremented by 1 (step S124) in accordance with the extraction of the first set of detection data, and then it is determined whether or not the variable j is 0 (step S126). If the result of this determination is that the variable is not 0, processing returns to step S108.

以降、FIFOメモリにおける先頭組の上記差ΔTelpが時間制限値Tlim以下となるまで、ステップS110→S122→S124→S126→S108を繰り返し実行する。ただし、この間に変数jが0となれば、FIFOメモリに格納されている検出データ(ωs,Im,Vm,Telp)が無いので、角速度推定値ωeの算出に使用する抵抗値Rnewおよび逆起電力定数knewを更新することなくステップS120へ進む。ステップS110→S122→S124→S126→S108を繰り返し実行している間に上記差ΔTelpが時間制限値Tlim以下となれば、ステップS112へ進み、既述のステップS128〜S132を実行した後にステップS120へ進む。   Thereafter, steps S110 → S122 → S124 → S126 → S108 are repeatedly executed until the difference ΔTelp in the first group in the FIFO memory becomes equal to or less than the time limit value Tlim. However, if the variable j becomes 0 during this period, since there is no detection data (ωs, Im, Vm, Telp) stored in the FIFO memory, the resistance value Rnew and the back electromotive force used for the calculation of the estimated angular velocity value ωe. The process proceeds to step S120 without updating the constant knee. If the difference ΔTelp is equal to or smaller than the time limit value Tlim while repeatedly executing Steps S110 → S122 → S124 → S126 → S108, the process proceeds to Step S112, and after executing Steps S128 to S132 described above, the process proceeds to Step S120. move on.

ステップS120では、電流検出値I=Imおよび電圧検出値V=Vmと共に抵抗値R=Rnewおよび逆起電力定数k=knewを用いて式(2)により角速度推定値ωeを算出する。この角速度推定値ωeの算出には、上記のステップS114またはS132が実行された場合、そこで算出された抵抗値Rnewおよび逆起電力定数knewが使用されるが、上記のステップS114とS132のいずれもが実行されない場合には、今回の制御周期よりも前に設定された抵抗値Rnewおよび逆起電力定数knewが使用される。ステップS120で角速度推定値ωeが算出されると、1つの制御周期での角速度推定処理を終了し、図3に示すモータ制御処理のルーチンに戻る。   In step S120, the angular velocity estimated value ωe is calculated by the equation (2) using the detected current value I = Im and the detected voltage value V = Vm together with the resistance value R = Rnew and the counter electromotive force constant k = knew. For the calculation of the estimated angular velocity value ωe, when the above step S114 or S132 is executed, the resistance value Rnew and the back electromotive force constant knew calculated there are used. However, both of the above steps S114 and S132 are used. Is not executed, the resistance value Rnew and the counter electromotive force constant knew set before the current control cycle are used. When the angular velocity estimation value ωe is calculated in step S120, the angular velocity estimation process in one control cycle is terminated, and the process returns to the motor control process routine shown in FIG.

このような第1の角速度推定処理によれば、角速度概略検出値ωsが所定の最小値ωmin以上であるときに検出値Vm,Im,ωsがja回以上得られると、直近のja回で得られた検出値Vm,Im,ωsすなわちFIFOメモリに存在する検出値Vm,Im,ωsを用いて最小二乗法により抵抗値Rnewおよび逆起電力定数knewが算出され(ステップS114)、これらの抵抗値Rnewおよび逆起電力定数knewが角速度推定値ωeの算出に使用される(ステップS120)。また、角速度概略検出値ωsが所定の最小値ωmin以上であるときに検出値Vm,Im,ωsの取得される回数が所定値jaよりも少ないときには、直近のj回で得られた検出値Vm,Im,ωsから最小二乗法により求まる抵抗値R1および逆起電力定数k1をそのまま使用するのではなく、それ以前にja回以上の検出値の取得に基づくja組の検出値Vm,Im,ωsから算出された抵抗値Rnewおよび逆起電力定数knewをも考慮して、角速度推定値ωeの算出に使用すべき抵抗値Rnewおよび逆起電力定数knewが更新される(ステップS132)。また、これらの抵抗値Rnew,R1および逆起電力定数knew,k1の算出には、検出時点から時間制限値Tlim以上の時間が経過した検出値Vm,Im,ωsは使用されないようになっている(ステップS108,S110,S122〜S126)。   According to such first angular velocity estimation processing, when the detected values Vm, Im, and ωs are obtained ja times or more when the angular velocity approximate detection value ωs is equal to or greater than the predetermined minimum value ωmin, it is obtained in the latest ja times. Using the detected values Vm, Im, ωs, that is, the detected values Vm, Im, ωs existing in the FIFO memory, the resistance value Rnew and the counter electromotive force constant knew are calculated by the least square method (step S114), and these resistance values are calculated. Rnew and the counter electromotive force constant knew are used to calculate the angular velocity estimated value ωe (step S120). When the number of times the detected values Vm, Im, and ωs are acquired when the angular velocity approximate detected value ωs is equal to or greater than the predetermined minimum value ωmin, the detected value Vm obtained at the latest j times is obtained when the number of times the detected values Vm, Im, ωs are acquired is less than the predetermined value ja , Im, ωs, the resistance value R1 obtained by the least square method and the back electromotive force constant k1 are not used as they are, but the set of detected values Vm, Im, ωs based on obtaining the detected values more than ja times before that. The resistance value Rnew and the counter electromotive force constant knew to be used for calculating the angular velocity estimated value ωe are also updated in consideration of the resistance value Rnew and the counter electromotive force constant knew calculated from (Step S132). Further, for the calculation of the resistance values Rnew, R1 and the counter electromotive force constants knew, k1, the detected values Vm, Im, ωs that have passed the time limit value Tlim from the detection time are not used. (Steps S108, S110, S122 to S126).

したがって、上記の第1の角速度推定処理によれば、角速度概略検出値ωsが所定の最小値ωmin以上であるときに、角速度推定値ωeの算出に使用する抵抗値Rnewおよび逆起電力定数knewとして安定した精度の高い値を高い頻度で算出することができる。このため、角速度推定値ωeを算出するための抵抗値Rnewのみならず逆起電力定数knewも、現実のモータ抵抗値Rおよび逆起電力定数kの変化に追随することができ、現実のモータ抵抗値Rおよび逆起電力定数kとの乖離が抑制される。その結果、角速度推定値ωeをより精度良く算出することができる。これにより、モータ制御装置の制御性能が向上し、そのモータ制御装置を用いた電動パワーステアリング装置においてより良好な操舵感が得られる。   Therefore, according to the first angular velocity estimation process, when the angular velocity approximate detection value ωs is equal to or larger than the predetermined minimum value ωmin, the resistance value Rnew and the counter electromotive force constant knew used for calculating the angular velocity estimation value ωe are used. A stable and highly accurate value can be calculated with high frequency. For this reason, not only the resistance value Rnew for calculating the estimated angular velocity value ωe but also the counter electromotive force constant knew can follow changes in the actual motor resistance value R and the counter electromotive force constant k. Deviation from the value R and the back electromotive force constant k is suppressed. As a result, the angular velocity estimated value ωe can be calculated with higher accuracy. Thereby, the control performance of the motor control device is improved, and a better steering feeling can be obtained in an electric power steering device using the motor control device.

<3.2.2 第2の角速度推定処理>
上記第1の角速度推定処理では、角速度推定値ωeの算出に使用される抵抗平均値Rnewおよび逆起電力定数knewは、角速度概略検出値ωsが所定値ωmin以上である場合には高い頻度で更新されるが、角速度概略検出値ωsが所定値ωminよりも小さい場合すなわちモータ1が所定値よりも低い速度で回転しているか停止している場合(典型的には電動パワーステアリング装置が保舵状態にある場合)には更新されない。そこで、この点を改善すべく、保舵状態のときには、第1の実施形態における角速度推定処理(例えば図8に示す角速度推定処理)における抵抗値更新処理(ステップS10〜S16,S30,S32,S50〜S56,S60,S60)により抵抗値Rnewを更新し、操舵状態のときには、本実施形態における上記第1の角速度推定処理(図11)におけるステップS100〜S118,S122〜S132からなる処理(以下「パラメータ値更新処理」という)S250により抵抗値Rnewおよび逆起電力定数knewを更新するという構成が考えられる。
<3.2.2 Second angular velocity estimation process>
In the first angular velocity estimation process, the resistance average value Rnew and the counter electromotive force constant knew used for calculating the angular velocity estimation value ωe are updated at a high frequency when the angular velocity approximate detection value ωs is equal to or greater than the predetermined value ωmin. However, when the angular velocity approximate detection value ωs is smaller than the predetermined value ωmin, that is, when the motor 1 is rotating at a speed lower than the predetermined value or is stopped (typically, the electric power steering device is in the steered state). Is not updated). Therefore, in order to improve this point, when in the steered state, resistance value update processing (steps S10 to S16, S30, S32, S50) in the angular velocity estimation processing (for example, angular velocity estimation processing shown in FIG. 8) in the first embodiment. ~ S56, S60, S60), the resistance value Rnew is updated, and when in the steering state, the process (hereinafter, "steps S100-S118, S122-S132" in the first angular velocity estimation process (Fig. 11) in the present embodiment). A configuration may be considered in which the resistance value Rnew and the counter electromotive force constant knew are updated in S250 (referred to as parameter value update processing).

図12は、このような構成を具体化するための角速度推定処理を示すフローチャートである。以下、この角速度推定処理を本実施形態における角速度推定部50をソフトウェア的に実現するための第2の角速度推定処理として説明する。この第2の角速度推定処理も制御周期毎に実行され(図3参照)、この第2の角速度推定処理においてマイコン10は図12のフローチャートに示すように動作する。   FIG. 12 is a flowchart showing an angular velocity estimation process for realizing such a configuration. Hereinafter, this angular velocity estimation processing will be described as second angular velocity estimation processing for realizing the angular velocity estimation unit 50 in the present embodiment in software. This second angular velocity estimation process is also executed for each control cycle (see FIG. 3), and in this second angular velocity estimation process, the microcomputer 10 operates as shown in the flowchart of FIG.

図12を図8と比較すればわかるように、本実施形態の第2の角速度推定処理における保舵状態のときの処理は、図8の角速度推定処理における抵抗値更新処理(ステップS10〜S16,S30,S32,S50〜S62)と同じであるので、対応するステップには同一の番号を付して説明を省略する。   As can be seen by comparing FIG. 12 with FIG. 8, the resistance value update processing (steps S10 to S16, Steps S10 to S16 in the angular velocity estimation processing of FIG. 8 is performed in the steering state in the second angular velocity estimation processing of the present embodiment. S30, S32, and S50 to S62), the corresponding steps are denoted by the same reference numerals and description thereof is omitted.

図8の角速度推定処理では、ステップS10で保舵状態であると判定された場合(Yesの場合)には、ステップS30でフラグFhをリセットした後にそのままステップS58(角速度推定値ωeを算出するステップ)に進むが、本実施形態における図12の角速度推定処理では、ステップS10で保舵状態でないと判定された場合には、ステップS30でフラグFhをリセットした後にパラメータ値操舵更新処理S250を実行し、その後にステップS120(角速度推定値ωeを算出するステップ)へ進む。このパラメータ値操舵更新処理S250として、図11の角速度推定処理において抵抗値Rnewおよび逆起電力定数knewを更新するためのパラメータ値更新処理(図11において点線で囲まれた部分の処理)S250が採用されている。なお、保舵状態であると判定された場合にも、抵抗値Rnewが更新されると(ステップS54,S62)、ステップS120へ進む。   In the angular velocity estimation process of FIG. 8, if it is determined in step S10 that the steering state is maintained (in the case of Yes), after resetting the flag Fh in step S30, step S58 (step of calculating the angular velocity estimated value ωe is performed as it is. However, in the angular velocity estimation process of FIG. 12 in the present embodiment, if it is determined in step S10 that the steering is not maintained, the flag Fh is reset in step S30 and then the parameter value steering update process S250 is executed. Thereafter, the process proceeds to step S120 (step of calculating the angular velocity estimated value ωe). As this parameter value steering update process S250, a parameter value update process (a process surrounded by a dotted line in FIG. 11) S250 for updating the resistance value Rnew and the back electromotive force constant knew in the angular velocity estimation process of FIG. 11 is adopted. Has been. In addition, also when it determines with it being a steering holding state, if resistance value Rnew is updated (step S54, S62), it will progress to step S120.

ステップS120では、抵抗値R=Rnewおよび逆起電力定数k=knewと電流検出値I=Imおよび電圧検出値V=Vmとを用いて式(2)により角速度推定値ωeを算出する。この式(2)における抵抗値Rnewおよび逆起電力定数knewとしては、保舵状態である場合には、ステップS54またはS62で更新された抵抗値Rnewが使用され、保舵状態でない場合には、通常、パラメータ値操舵更新処理S250内で更新された抵抗値Rnewおよび逆起電力定数knewが使用される(図11のステップS114,S132参照)。   In step S120, the angular velocity estimation value ωe is calculated by the equation (2) using the resistance value R = Rnew, the counter electromotive force constant k = knew, the current detection value I = Im, and the voltage detection value V = Vm. As the resistance value Rnew and the counter electromotive force constant knew in the equation (2), the resistance value Rnew updated in step S54 or S62 is used when the steering state is maintained, and when the steering state is not maintained, Usually, the resistance value Rnew and the back electromotive force constant knew updated in the parameter value steering update process S250 are used (see steps S114 and S132 in FIG. 11).

このような図12に示す角速度推定処理(第2の角速度推定処理)によれば、保舵状態か操舵状態かに拘わらず、角速度推定値ωeの算出に使用する抵抗値Rnewとして安定した精度の高い値を高頻度で算出することができる。また、操舵状態のときには、角速度推定値ωeの算出に使用する逆起電力定数knewとして安定した精度の高い値を高頻度で算出することができる。このため、角速度推定値ωeを算出するための抵抗値Rnewの更新は、現実のモータ抵抗値Rの変化によりよく追随することができ、現実のモータ抵抗値Rおよび逆起電力定数kとの乖離が更に抑制される。その結果、角速度推定値ωeを精度良く算出することができる。これにより、モータ制御装置の制御性能が更に向上し、そのモータ制御装置を用いた電動パワーステアリング装置においてより良好な操舵感が得られる。   According to the angular velocity estimation process (second angular velocity estimation process) shown in FIG. 12, the resistance value Rnew used for calculating the angular velocity estimated value ωe is stable regardless of whether the steering state is maintained or the steering state. High values can be calculated with high frequency. In the steering state, a stable and highly accurate value can be frequently calculated as the back electromotive force constant knew used for calculating the angular velocity estimated value ωe. Therefore, the update of the resistance value Rnew for calculating the estimated angular velocity value ωe can better follow the change in the actual motor resistance value R, and the difference between the actual motor resistance value R and the back electromotive force constant k. Is further suppressed. As a result, the angular velocity estimated value ωe can be calculated with high accuracy. Thereby, the control performance of the motor control device is further improved, and a better steering feeling can be obtained in the electric power steering device using the motor control device.

<3.2.3 第3の角速度推定処理>
上記第1の角速度推定処理(図11)では、検出値Vm,Im,ωsの取得個数が少ないときであっても、角速度推定値ωeの算出に使用する抵抗値Rnewおよび逆起電力定数knewを高い頻度で更新することができるが(ステップS128〜S132)、この更新頻度を多少下げることによって角速度推定処理を簡略化することができる。図13は、このような角速度推定処理(以下「第3の角速度推定処理」という)を示すフローチャートである。
<3.2.3 Third angular velocity estimation process>
In the first angular velocity estimation process (FIG. 11), even when the number of detected values Vm, Im, and ωs is small, the resistance value Rnew and the counter electromotive force constant knee that are used to calculate the angular velocity estimated value ωe are calculated. Although updating can be performed at a high frequency (steps S128 to S132), the angular velocity estimation process can be simplified by reducing the updating frequency to some extent. FIG. 13 is a flowchart showing such angular velocity estimation processing (hereinafter referred to as “third angular velocity estimation processing”).

図13を図11と比較すればわかるように、図13の角速度推定処理(第3の角速度推定処理)に含まれるステップのうち、図11の角速度推定処理に含まれるステップと同じものについては同一の番号が付されており、図11の角速度推定処理におけるステップS106〜S118,S122〜S132が、図13の角速度推定処理ではステップS140〜S148に変更されている。   As can be seen by comparing FIG. 13 with FIG. 11, among the steps included in the angular velocity estimation process (third angular velocity estimation process) of FIG. 13, the same steps as those included in the angular velocity estimation process of FIG. The steps S106 to S118 and S122 to S132 in the angular velocity estimation process of FIG. 11 are changed to steps S140 to S148 in the angular velocity estimation process of FIG.

このような図13の角速度推定処理によれば、検出値Vm,Im,ωsがja回取得される毎に、その取得されたja組の検出値Vm(i),Im(i),ω(i)(i=1〜ja)を用いて式(12)により算出されるφをφ=(Rnew knew)とすることで、抵抗値Rnewおよび逆起電力定数knewが更新される(ステップS140〜S148)。ただし、そのja組のうち1組目の検出値Vm(1),Im(1),ω(1)の検出時点からの経過時間が時間制限値Tlimを越える場合には、そのja組のVm(i),Im(i),ω(i)(i=1〜ja)は、抵抗値Rnewおよび逆起電力定数knewの更新には使用されず(ステップS103,S146)、その後に取得されるja組の検出値Vm(i),Im(i),ω(i)(i=1〜ja)を用いて抵抗値Rnewおよび逆起電力定数knewが更新される(ステップS148)。このような角速度推定処理によっても、角速度概略検出値ωsが所定の最小値ωmin以上であるときに、角速度推定値ωeの算出に使用する抵抗値Rnewおよび逆起電力定数knewが所定の頻度で更新されるので、現実のモータ抵抗値Rや逆起電力定数kが変化しても、角速度推定値ωeを精度良く算出することができる。その結果、モータ制御装置の制御性能が向上し、そのモータ制御装置を用いた電動パワーステアリング装置において良好な操舵感が得られる。   According to such an angular velocity estimation process of FIG. 13, every time the detection values Vm, Im, and ωs are acquired ja times, the acquired detection values Vm (i), Im (i), ω ( i) The resistance value Rnew and the back electromotive force constant knee are updated by setting φ calculated by the equation (12) using (i = 1 to ja) to φ = (Rnew knew) (steps S140 to S140). S148). However, if the elapsed time from the detection time point of the first set of detection values Vm (1), Im (1), and ω (1) out of the ja set exceeds the time limit value Tlim, the set of Vm (I), Im (i), ω (i) (i = 1 to ja) are not used for updating the resistance value Rnew and the counter electromotive force constant knew (steps S103 and S146), and are acquired thereafter. The resistance value Rnew and the back electromotive force constant knew are updated using the detection values Vm (i), Im (i), and ω (i) (i = 1 to ja) of the set ja (step S148). Even with such angular velocity estimation processing, when the angular velocity approximate detection value ωs is equal to or greater than the predetermined minimum value ωmin, the resistance value Rnew and the counter electromotive force constant knew used for calculating the angular velocity estimated value ωe are updated at a predetermined frequency. Therefore, even if the actual motor resistance value R and the counter electromotive force constant k change, the estimated angular velocity value ωe can be calculated with high accuracy. As a result, the control performance of the motor control device is improved, and a good steering feeling can be obtained in an electric power steering device using the motor control device.

<4.第3の実施形態>
<4.1 モータ制御装置の構成>
本発明の第3の実施形態に係るモータ制御装置も、上記第1の実施形態と同様、図1に示すように電動パワーステアリング装置において使用され、ECU5を用いて構成されており、ブラシ付きモータ1を駆動する。また、このモータ制御装置の構成は、回転センサ7に代えて舵角センサ7hが設けられる点と角速度推定部50の構成を除き、上記第1の実施形態と基本的には同様であって、図2に示す通りである。ただし、図2において点線で示される各部の温度センサ41,42,43は本実施形態においても使用されない。
<4. Third Embodiment>
<4.1 Configuration of motor control device>
As in the first embodiment, the motor control device according to the third embodiment of the present invention is also used in the electric power steering device as shown in FIG. 1 is driven. The configuration of the motor control device is basically the same as that of the first embodiment except that the steering angle sensor 7h is provided instead of the rotation sensor 7 and the configuration of the angular velocity estimation unit 50. As shown in FIG. However, the temperature sensors 41, 42, and 43 of the respective parts indicated by dotted lines in FIG. 2 are not used in this embodiment.

以下、本実施形態における角速度推定部50の構成について説明する。図14は、本実施形態における角速度推定部50の機能的構成を示すブロック図である。この角速度推定部50は、角度変化検出部71と抵抗算出部72と角速度推定値算出部66とを備えており、角速度推定部50には、舵角センサ7hからの出力信号に基づき取得されるモータ1の回転角θsが入力される。角度変化検出部71と抵抗算出部72とは抵抗値更新部200を構成する。なお、本実施形態のように舵角センサ7h(またはモータ1の角速度を低分解能で検出する簡易角度センサ)を用いてモータ1の回転角を検出するという構成によれば、十分に低いコストでモータ1の角度検出手段(簡易角度検出手段)を実現することができる。この場合、この簡易角速度検出手段の分解能は、モータ1の駆動制御に必要な精度で角速度が得られるような分解能である必要はないので、その駆動制御に必要な精度で角速度を検出するセンサを使用する場合に比べ低いコストで精度のよい角速度推定値を算出することができる。   Hereinafter, the configuration of the angular velocity estimation unit 50 in the present embodiment will be described. FIG. 14 is a block diagram showing a functional configuration of the angular velocity estimation unit 50 in the present embodiment. The angular velocity estimation unit 50 includes an angle change detection unit 71, a resistance calculation unit 72, and an angular velocity estimation value calculation unit 66. The angular velocity estimation unit 50 is acquired based on an output signal from the steering angle sensor 7h. The rotation angle θs of the motor 1 is input. The angle change detection unit 71 and the resistance calculation unit 72 constitute a resistance value update unit 200. According to the configuration in which the rotation angle of the motor 1 is detected using the steering angle sensor 7h (or the simple angle sensor that detects the angular velocity of the motor 1 with low resolution) as in the present embodiment, the cost is sufficiently low. An angle detection means (simple angle detection means) of the motor 1 can be realized. In this case, the resolution of the simple angular velocity detection means does not have to be such a resolution that the angular velocity can be obtained with the accuracy required for the drive control of the motor 1, so a sensor for detecting the angular velocity with the accuracy necessary for the drive control is provided. It is possible to calculate an accurate angular velocity estimation value at a lower cost than when it is used.

舵角センサ7hにより得られる操舵角θhに基づきモータ1の(ロータの)回転角θsを算出することができるが、舵角センサ7hはモータ1の回転角を直接に検出するセンサに比べて分解能が低い。しかし、舵角センサ7hからの出力信号が変化したタイミングであれば、その出力信号に基づき得られる回転角θsは実際の回転角に対応していると見なすことができる。そこで、本実施形態の角速度推定部50では、角度変化検出部71が、舵角センサ7hの出力信号に基づき取得される回転角θsが変化したか否かを判定し、その判定結果を示す信号を角度変化検出信号Scとして出力する。   The (rotor) rotation angle θs of the motor 1 can be calculated based on the steering angle θh obtained by the steering angle sensor 7h. The steering angle sensor 7h has a resolution higher than that of a sensor that directly detects the rotation angle of the motor 1. Is low. However, if the output signal from the rudder angle sensor 7h changes, the rotation angle θs obtained based on the output signal can be regarded as corresponding to the actual rotation angle. Therefore, in the angular velocity estimation unit 50 of the present embodiment, the angle change detection unit 71 determines whether or not the rotation angle θs acquired based on the output signal of the steering angle sensor 7h has changed, and a signal indicating the determination result. Is output as the angle change detection signal Sc.

抵抗算出部72は、この角度変化検出信号Scに基づき、回転角θsが変化したときに、その回転角θsを第1回転角θ1として設定し、その後、制御周期毎に得られる電流および電圧の検出値Vm,Imを蓄積していく。そして抵抗算出部72は、この角度変化検出信号Scに基づき、その後に回転角θsが変化したときに、その回転角θsを第2回転角θ2として設定し、第1および第2回転角θ1,θ2と、第1回転角θ1の検出時点から第2回転角θ2の検出時点までに蓄積された電流および電圧の検出値Vm,Imとに基づき、モータ1の抵抗値Rnewを算出する。以後、回転角θsの変化が検出される毎に、その時点以前に設定された第1回転角θ1とその時点での回転角θsである第2回転角θ2と、第1および第2回転角θ1,θ2の検出時点間での電流および電圧の検出値Vm,Imに基づき、モータ1の抵抗値Rnewを算出する。   The resistance calculation unit 72 sets the rotation angle θs as the first rotation angle θ1 when the rotation angle θs changes based on the angle change detection signal Sc, and then the current and voltage obtained for each control cycle. The detection values Vm and Im are accumulated. Then, the resistance calculation unit 72 sets the rotation angle θs as the second rotation angle θ2 when the rotation angle θs subsequently changes based on the angle change detection signal Sc, and sets the first and second rotation angles θ1, A resistance value Rnew of the motor 1 is calculated based on θ2 and current and voltage detection values Vm and Im accumulated from the detection time point of the first rotation angle θ1 to the detection time point of the second rotation angle θ2. Thereafter, each time a change in the rotation angle θs is detected, the first rotation angle θ1 set before that time, the second rotation angle θ2 that is the rotation angle θs at that time, and the first and second rotation angles. The resistance value Rnew of the motor 1 is calculated based on the detected values Vm and Im of the current and voltage between the detection times of θ1 and θ2.

角速度推定値算出部66は、このようにして算出される抵抗値Rnewと共に各時点の電流および電圧の検出値Im,Vmを用いて角速度推定値ωeを算出する。なお本実施形態では、舵角センサ7hの出力信号に基づき取得されるモータ1の回転角θsが角速度推定部50に入力されるものとしているが(図14)、舵角センサ7hの出力信号が示す操舵角θhを角速度推定部50が受け取り、角速度推定値算出部66において当該操舵角θhと減速機2の減速比を用いて角速度推定値ωeを算出するように構成されていてもよい。   The angular velocity estimated value calculation unit 66 calculates the angular velocity estimated value ωe by using the detected current values Im and Vm at each time point together with the resistance value Rnew thus calculated. In the present embodiment, the rotation angle θs of the motor 1 acquired based on the output signal of the steering angle sensor 7h is input to the angular velocity estimation unit 50 (FIG. 14), but the output signal of the steering angle sensor 7h is The angular velocity estimation unit 50 may receive the indicated steering angle θh, and the angular velocity estimation value calculation unit 66 may calculate the angular velocity estimation value ωe using the steering angle θh and the reduction ratio of the speed reducer 2.

<4.2 角速度推定処理の具体例>
以下、本実施形態における角速度推定部50をソフトウェア的に実現するための角速度推定処理(図3のステップS4)につき具体例を説明する。本実施形態では、図3のステップS2において、モータ1の逆起電力定数kおよび後述の所定値ja,jmaxに対し実験等に基づく適切な値が設定され、モータ1の抵抗値Rold,Rnewにも初期値として実験等に基づく適切な値が設定され、抵抗値Rnewを新たに算出するのに使用される電圧検出値Vmおよび電流検出値Imの取得個数を示す変数j、および、回転角θsが最初に変化したときにセットされるフラグFsが0に初期化される。また、図3のステップS3では、各センサ3,4,7hおよび検出回路24,25からの出力信号に基づき制御周期毎に操舵トルクTs,車速S,操舵角θh、電圧検出値Vm、電流検出値Imが取得される。なお本実施形態では、舵角センサ7hが必要になるが、モータ1の回転角を直接に検出する回転センサに比べ舵角センサのコストは格段に低い。
<4.2 Specific example of angular velocity estimation processing>
Hereinafter, a specific example will be described for angular velocity estimation processing (step S4 in FIG. 3) for realizing the angular velocity estimation unit 50 in the present embodiment in software. In the present embodiment, in step S2 of FIG. 3, appropriate values based on experiments and the like are set for the back electromotive force constant k of the motor 1 and predetermined values ja and jmax described later, and the resistance values Roll and Rnew of the motor 1 are set. Also, an appropriate value based on an experiment or the like is set as an initial value, a variable j indicating the number of acquired voltage detection values Vm and current detection values Im used to newly calculate the resistance value Rnew, and a rotation angle θs. A flag Fs that is set when the first change is initialized to 0. In step S3 in FIG. 3, the steering torque Ts, the vehicle speed S, the steering angle θh, the voltage detection value Vm, and the current detection are performed for each control period based on the output signals from the sensors 3, 4, 7h and the detection circuits 24, 25. The value Im is obtained. In this embodiment, the steering angle sensor 7h is required, but the cost of the steering angle sensor is significantly lower than that of the rotation sensor that directly detects the rotation angle of the motor 1.

<4.2.1 第1の角速度推定処理>
図15は、本実施形態における角速度推定処理S4の一例である第1の角速度推定処理の詳細を示すフローチャートである。本実施形態における第1の角速度推定処理も制御周期毎に実行され(図3参照)、この第1の角速度推定処理においてマイコン10は下記のように動作する。
<4.2.1 First Angular Velocity Estimation Process>
FIG. 15 is a flowchart showing details of a first angular velocity estimation process which is an example of the angular velocity estimation process S4 in the present embodiment. The first angular velocity estimation process in the present embodiment is also executed for each control cycle (see FIG. 3), and in this first angular velocity estimation process, the microcomputer 10 operates as follows.

まず、舵角センサ7hからの出力信号に基づきモータ1の回転角θsが変化したか否かを判定する(ステップS150)。この判定の結果、回転角θsが変化した場合には新たな回転角θsが検出されたとしてステップS152へ進み、回転角θsが変化しない場合にはステップS172へ進む。   First, it is determined based on the output signal from the rudder angle sensor 7h whether or not the rotation angle θs of the motor 1 has changed (step S150). If the result of this determination is that the rotation angle θs has changed, the process proceeds to step S152 assuming that a new rotation angle θs has been detected, and the process proceeds to step S172 if the rotation angle θs has not changed.

ステップS152では、新たな抵抗値Rnewの算出に使用される電流検出値および電圧検出値Vm,Imの取得個数を示す変数jが0か否かを判定する。この判定の結果、変数jが0である場合には、ステップS153において現時点の回転角(新たに検出された回転角)θsを第1回転角θ1として設定すると共に(θ1=θs)フラグFsをセットし(Fs=1)、その後にステップS154へ進み、変数jが0でない場合にはそのままステップS154へ進む。   In step S152, it is determined whether or not a variable j indicating the number of acquired current detection values and voltage detection values Vm and Im used for calculating a new resistance value Rnew is zero. If the variable j is 0 as a result of this determination, the current rotation angle (the newly detected rotation angle) θs is set as the first rotation angle θ1 in step S153 (θ1 = θs) and the flag Fs is set. After setting (Fs = 1), the process proceeds to step S154. If the variable j is not 0, the process proceeds to step S154.

ステップS154では、変数jを1だけ増加させ、その後、現時点の電流検出値Imおよび電圧検出値VmをそれぞれI(j)およびV(j)とおき(ステップS156)、現時点の回転角θsを第2回転角θ2として設定する(ステップS158)。   In step S154, the variable j is incremented by 1, and then the current detection value Im and the voltage detection value Vm are set to I (j) and V (j), respectively (step S156), and the current rotation angle θs is set to the first value. The rotation angle θ2 is set (step S158).

その後、ステップS160において、変数jが所定値ja以上か否かを判定する(jaは正の整数であって例えば50)。ここで所定値jaは、抵抗値Rnewを新たに算出するのに必要な電流および電圧の検出回数であり、予め図3のステップS2において実験等に基づく適切な値が設定されている。ステップS160での判定の結果、変数jが所定値ja以上であればステップS162へ進み、変数jが所定値jaよりも小さければステップS178へ進む。最初にステップS160が実行される時点では、j=1であるので、ステップS178へ進むが、この図15の角速度推定処理(第1の角速度推定処理)が繰り返し実行されて、ja個以上の電流検出値I(i)および電圧検出値V(i)(i=1〜j、j≧ja)が取得され、かつ、回転角θsが変化したときには、ステップS162へ進む。   Thereafter, in step S160, it is determined whether or not the variable j is greater than or equal to a predetermined value ja (ja is a positive integer, for example 50). Here, the predetermined value ja is the number of times the current and voltage are detected to newly calculate the resistance value Rnew, and an appropriate value based on an experiment or the like is set in advance in step S2 of FIG. If it is determined in step S160 that the variable j is equal to or greater than the predetermined value ja, the process proceeds to step S162. If the variable j is smaller than the predetermined value ja, the process proceeds to step S178. Since j = 1 at the time when step S160 is first executed, the process proceeds to step S178. However, the angular velocity estimation process (first angular velocity estimation process) in FIG. When the detected value I (i) and the detected voltage value V (i) (i = 1 to j, j ≧ ja) are acquired and the rotation angle θs changes, the process proceeds to step S162.

ステップS162では、第1および第2回転角θ1,θ2と、電流検出値I(i)および電圧検出値V(i)(i=1〜j)から下記のようにして抵抗値Rnewを算出する。   In step S162, the resistance value Rnew is calculated from the first and second rotation angles θ1 and θ2, the current detection value I (i), and the voltage detection value V (i) (i = 1 to j) as follows. .

式(2)においてV=V(t)、I=I(t)として両辺を時間積分すると、下記の式が得られる(この時間積分の期間では抵抗値Rは変化しないものとみなす)。
θ(t)=(1/k)∫V(t)dt−(R/k)∫I(t)dt …(17)
ここで、θ(t)=∫ωdtである。上記式(17)より、次式によりモータ抵抗値Rを求めることができる。
R={∫V(t)dt−θ(t)・k}/∫I(t)dt …(18)
いま、第1および第2回転角θ1,θ2の検出時点をそれぞれt1,t2とすると、式(18)より、角速度推定値ωeの算出に使用する新たな抵抗値Rnewを下記式により求めることができる。
Rnew={Tc・Σ(i=1,j)V(i)−(θ2−θ1)・k}/{Tc・Σ(i=1,j)I(i)}…(19)
ここで、Tcは制御周期(電流Imおよび電圧Vmの検出間隔)であり、
Σ(i=1,j)V(i)=V(1)+V(2)+…+V(j)、
Σ(i=1,j)I(i)=I(1)+I(2)+…+I(j)
である。
In the equation (2), when both sides are time integrated with V = V (t) and I = I (t), the following equation is obtained (the resistance value R is considered not to change during this time integration period).
θ (t) = (1 / k) ∫V (t) dt− (R / k) ∫I (t) dt (17)
Here, θ (t) = ∫ωdt. From the above equation (17), the motor resistance value R can be obtained by the following equation.
R = {∫V (t) dt−θ (t) · k} / ∫I (t) dt (18)
Now, assuming that the detection times of the first and second rotation angles θ1 and θ2 are t1 and t2, respectively, a new resistance value Rnew used to calculate the angular velocity estimated value ωe can be obtained from the following equation using the equation (18). it can.
Rnew = {Tc · Σ (i = 1, j) V (i) − (θ2−θ1) · k} / {Tc · Σ (i = 1, j) I (i)} (19)
Here, Tc is a control cycle (detection interval of current Im and voltage Vm),
Σ (i = 1, j) V (i) = V (1) + V (2) + ... + V (j),
Σ (i = 1, j) I (i) = I (1) + I (2) +... + I (j)
It is.

そこでステップS162では、第1および第2回転角θ1,θ2と電流検出値I(i)および電圧検出値V(i)(i=1〜j)とを用いて、上記式(19)により、抵抗値Rnewを算出する。   Therefore, in step S162, using the first and second rotation angles θ1, θ2, the current detection value I (i), and the voltage detection value V (i) (i = 1 to j), The resistance value Rnew is calculated.

このようにして新たな抵抗値Rnewが求まると、その後、この抵抗値RnewをRoldとおき(ステップS164)、変数jが所定値jmaxを越えているか否かを判定する(ステップS166)。ここで所定値jmaxは、上記所定値jaよりも大きい値であって、検出時点から長期間経過した検出値Im,Vmを抵抗値Rnewの算出に使用するのを回避するために導入されたものである。このステップS166での判定の結果、変数jが所定値jmaxを越えている場合(Yesの場合)には、現時点以降に検出される電流検出値Imおよび電圧検出値Vmを用いて次の新たな抵抗値Rnewを算出すべく、現時点の回転角θsを第1回転角θ1として設定し直すと共に、現時点の電流検出値Imおよび電圧検出値VmをそれぞれI(1)およびV(1)とおき(ステップS168)、その後にステップS170へ進む。一方、その判定の結果、変数jが所定値jmax以下である場合(Noの場合)にはそのままステップS170へ進む。   When a new resistance value Rnew is obtained in this way, the resistance value Rnew is then set to Rold (step S164), and it is determined whether or not the variable j exceeds a predetermined value jmax (step S166). Here, the predetermined value jmax is larger than the predetermined value ja, and is introduced in order to avoid using the detection values Im and Vm that have passed for a long time from the detection time point in calculating the resistance value Rnew. It is. As a result of the determination in step S166, when the variable j exceeds the predetermined value jmax (in the case of Yes), the next new value is detected using the current detection value Im and the voltage detection value Vm detected after the present time. In order to calculate the resistance value Rnew, the current rotation angle θs is reset as the first rotation angle θ1, and the current detection value Im and the voltage detection value Vm are set to I (1) and V (1), respectively ( Step S168), and then the process proceeds to Step S170. On the other hand, as a result of the determination, if the variable j is equal to or less than the predetermined value jmax (in the case of No), the process proceeds to step S170 as it is.

ステップS160での判定の結果、ステップS178へ進んだ場合(ステップS160でNoの場合)には、変数jが2以上か否かを判定する。その判定の結果、変数jが2よりも小さい場合には、後述のステップS180において抵抗値R1を算出できないので、角速度推定値ωeの算出に使用する抵抗値Rnewを更新することなくステップS170へ進む。一方、その判定の結果、変数jが2以上であればステップS180へ進む。   As a result of the determination in step S160, when the process proceeds to step S178 (No in step S160), it is determined whether or not the variable j is 2 or more. As a result of the determination, if the variable j is smaller than 2, the resistance value R1 cannot be calculated in step S180, which will be described later. Therefore, the process proceeds to step S170 without updating the resistance value Rnew used for calculating the estimated angular velocity value ωe. . On the other hand, as a result of the determination, if the variable j is 2 or more, the process proceeds to step S180.

ステップS180では、第1および第2回転角θ1,θ2と、電流検出値I(i)および電圧検出値V(i)(i=1〜j)とから、式(19)と同様の下記式(20)により抵抗値R1を算出する。
R1={Tc・Σ(i=1,j)V(i)−(θ2−θ1)・k}/{Tc・Σ(i=1,j)I(i)}…(20)
この時点での変数jは、2以上でjaよりも小さい整数であり(ステップS160参照)、変数jが小さい場合には、抵抗値R1がばらついて安定に算出されないので、すなわち抵抗値R1に含まれるノイズが比較的大きいので、抵抗値R1をそのまま角速度推定値ωeの算出に使用するのは好ましくない。そこで、角速度推定値ωeの算出に使用すべき抵抗値Rnewを、抵抗値RoldとR1との加重平均を示す下記式(21)により算出する(ステップS182)。
Rnew={(1−f(j))・Rold+f(j)・R1} …(21)
ここで、f(j)は、j=0のとき0となりj=jaとき1となる、変数jの単調増加関数であり、例えば関数f(j)=j/jaまたはf(j)=j2/ja2を使用することができる。上記式(21)は、新たな更新パラメータ値としての抵抗値Rnewを求めるための電流検出値Imおよび電圧検出値Vmの取得個数に応じた、抵抗値RoldとR1との加重平均を示している。この式(21)により抵抗値Rnewが得られると、ステップS170へ進む。
In step S180, the following equation similar to equation (19) is obtained from the first and second rotation angles θ1 and θ2, and the current detection value I (i) and the voltage detection value V (i) (i = 1 to j). The resistance value R1 is calculated from (20).
R1 = {Tc · Σ (i = 1, j) V (i) − (θ2−θ1) · k} / {Tc · Σ (i = 1, j) I (i)} (20)
The variable j at this time is an integer greater than or equal to 2 and smaller than ja (see step S160). When the variable j is small, the resistance value R1 varies and is not calculated stably, that is, included in the resistance value R1. Since the generated noise is relatively large, it is not preferable to use the resistance value R1 as it is for the calculation of the estimated angular velocity value ωe. Therefore, the resistance value Rnew to be used for calculation of the estimated angular velocity value ωe is calculated by the following equation (21) indicating a weighted average of the resistance values Rold and R1 (step S182).
Rnew = {(1−f (j)) · Rold + f (j) · R1} (21)
Here, f (j) is a monotonically increasing function of variable j, which is 0 when j = 0 and 1 when j = ja. For example, function f (j) = j / ja or f (j) = j 2 / ja 2 can be used. The above equation (21) represents a weighted average of the resistance values Rold and R1 according to the number of acquired current detection values Im and voltage detection values Vm for obtaining the resistance value Rnew as a new update parameter value. . When the resistance value Rnew is obtained by this equation (21), the process proceeds to step S170.

ステップS150での判定の結果、回転角θsが変化していない場合(ステップS150でNoの場合)には、ステップS172へ進み、フラグFsがセットされているか否かを判定する。この判定の結果、フラグFsがセットされていない場合(Fs=0の場合)、回転角θsの変化が未だ検出されていないので、そのままステップS170へ進む。一方、この判定の結果、フラグFsがセットされている場合(Fs=1の場合)には、ステップS174へ進み、変数jを1だけ増加させ、現時点の電流検出値Imおよび電圧検出値VmをそれぞれI(j)およびV(j)とおく(ステップS176)。これにより、回転角θsの変化が検出されてその回転角θsが第1回転角θ1として設定された後は、回転角θsが変化しない制御周期においても電流検出値Imおよび電圧検出値VmがI(j)およびV(j)として蓄積される。ステップS176の実行後は、ステップS170へ進む。   As a result of the determination in step S150, if the rotation angle θs has not changed (No in step S150), the process proceeds to step S172, and it is determined whether or not the flag Fs is set. As a result of this determination, if the flag Fs is not set (if Fs = 0), the change in the rotation angle θs has not been detected yet, and the process directly proceeds to step S170. On the other hand, if the determination result shows that the flag Fs is set (if Fs = 1), the process proceeds to step S174, where the variable j is incremented by 1, and the current detected value Im and voltage detected value Vm are set to the current detected value Im. These are set as I (j) and V (j), respectively (step S176). Thereby, after the change of the rotation angle θs is detected and the rotation angle θs is set as the first rotation angle θ1, the current detection value Im and the voltage detection value Vm are I even in the control cycle in which the rotation angle θs does not change. Accumulated as (j) and V (j). After execution of step S176, the process proceeds to step S170.

ステップS170では、抵抗値R=Rnewと電流検出値I=Imと電圧検出値V=Vmを用いて式(2)により角速度推定値ωeを算出する。この角速度推定値ωeの算出には、上記のステップS162またはS182が実行された場合、そこで算出された抵抗値Rnewが使用されるが、上記のステップS162とS182のいずれもが実行されない場合には、今回の制御周期よりも前に設定された抵抗値Rnewが使用される。ステップS170で角速度推定値ωeが算出されると、1つの制御周期での角速度推定処理を終了し、図3に示すモータ制御処理のルーチンに戻る。   In step S170, the angular velocity estimated value ωe is calculated by Equation (2) using the resistance value R = Rnew, the detected current value I = Im, and the detected voltage value V = Vm. For the calculation of the estimated angular velocity value ωe, when the above step S162 or S182 is executed, the resistance value Rnew calculated there is used, but when neither of the above steps S162 and S182 is executed. The resistance value Rnew set before the current control cycle is used. When the angular velocity estimation value ωe is calculated in step S170, the angular velocity estimation process in one control cycle is terminated, and the process returns to the motor control process routine shown in FIG.

このような第1の角速度推定処理によれば、舵角センサ7hからの出力信号に基づき回転角θsの変化が検出される毎に、電流検出値I(i)および電圧検出値V(i)の積算値に基づき、式(19)または(20)と(21)により抵抗値Rnewが新たに算出される(ステップS150,S162,S180,S182)。このとき、第1回転角θ1の取得時点以降での電流検出値Imおよび電圧検出値Vmの取得個数が少ない場合であっても、その前に得られた抵抗値Rnewも用いて式(21)により新たな抵抗値Rnewが算出される(ステップS182)。したがって、ばらつきの少ない安定した角速度推定値ωeを高い頻度で取得することができる。このため、角速度推定値ωeの算出に使用される抵抗値Rnewは、現実のモータ抵抗値Rの変化に追随することができ、温度変化等によって角速度推定値ωeの算出が影響されない。その結果、モータ1のブラシと整流子の間の接触状態や温度等が変化しても、実際のモータ抵抗値に比べ誤差の少ない抵抗Rnewを用いて角速度推定値ωeを精度良く算出することができる。これにより、モータ制御装置の制御性能が向上し、そのモータ制御装置を用いた電動パワーステアリング装置において良好な操舵感が得られる。なお、上記のような角速度推定処理を含む本実施形態は、舵角センサからの出力信号を微分して角速度を求める従来の技術に比べ、高い分解能のセンサを必要としないので、コスト面でも有利である。   According to such first angular velocity estimation processing, each time a change in the rotation angle θs is detected based on the output signal from the steering angle sensor 7h, the current detection value I (i) and the voltage detection value V (i). On the basis of the integrated value, the resistance value Rnew is newly calculated by the equations (19) or (20) and (21) (steps S150, S162, S180, S182). At this time, even when the number of acquired current detection values Im and voltage detection values Vm after the acquisition time of the first rotation angle θ1 is small, the resistance value Rnew obtained before that is used to obtain the equation (21). Thus, a new resistance value Rnew is calculated (step S182). Therefore, a stable angular velocity estimated value ωe with little variation can be acquired with high frequency. For this reason, the resistance value Rnew used for calculation of the estimated angular velocity value ωe can follow the actual change in the motor resistance value R, and the calculation of the estimated angular velocity value ωe is not affected by a temperature change or the like. As a result, even if the contact state between the brush of the motor 1 and the commutator, the temperature, or the like changes, the estimated angular velocity value ωe can be accurately calculated using the resistance Rnew with less error than the actual motor resistance value. it can. As a result, the control performance of the motor control device is improved, and a good steering feeling can be obtained in an electric power steering device using the motor control device. The present embodiment including the angular velocity estimation process as described above is advantageous in terms of cost because it does not require a high resolution sensor compared to the conventional technique for differentiating the output signal from the steering angle sensor to obtain the angular velocity. It is.

<4.2.2 第2の角速度推定処理>
上記第1の角速度推定処理(図15)では、第1回転角θ1の取得時点以降での電流検出値Imおよび電圧検出値Vmの取得個数が少ないときであっても、角速度推定値ωeの算出に使用する抵抗値Rnewを高い頻度で更新することが可能であるが(ステップS178〜S182)、この更新頻度を多少下げることによって角速度推定処理を簡略化することができる。図16は、このような角速度推定処理(以下「第2の角速度推定処理」という)を示すフローチャートである。
<4.2.2 Second angular velocity estimation process>
In the first angular velocity estimation process (FIG. 15), the angular velocity estimation value ωe is calculated even when the number of acquired current detection values Im and voltage detection values Vm after the acquisition of the first rotation angle θ1 is small. It is possible to update the resistance value Rnew to be used at a high frequency (steps S178 to S182), but the angular velocity estimation process can be simplified by reducing the update frequency to some extent. FIG. 16 is a flowchart showing such angular velocity estimation processing (hereinafter referred to as “second angular velocity estimation processing”).

図16を図15と比較すればわかるように、図16の角速度推定処理に含まれるステップのうち、図15の角速度推定処理に含まれるステップと同じものについては同一の番号が付されている。そして、図15の角速度推定処理におけるステップS164,S166,S178〜S182が図16の角速度推定処理において削除されており、図16の角速度推定処理では、ステップS160において変数jが所定値jaよりも小さいと判定された場合(Noの場合)には、角速度推定値ωeの算出に使用する抵抗値Rnewを更新することなくステップS170へ進む。   As can be seen by comparing FIG. 16 with FIG. 15, among the steps included in the angular velocity estimation process of FIG. 16, the same steps as those included in the angular velocity estimation process of FIG. Then, steps S164, S166, S178 to S182 in the angular velocity estimation process of FIG. 15 are deleted in the angular velocity estimation process of FIG. 16, and in the angular velocity estimation process of FIG. 16, the variable j is smaller than the predetermined value ja in step S160. If it is determined (No), the process proceeds to step S170 without updating the resistance value Rnew used to calculate the estimated angular velocity value ωe.

このような図16の角速度推定処理によれば、検出値Vm,Imがja回以上取得され且つ回転角θsの変化が検出される毎に、取得された検出値I(i),V(i)(i=1〜j)を用いて式(19)により抵抗値Rnewが算出されることで(ステップS162)、角速度推定値ωeの算出に使用する抵抗値Rnewが更新される。これにより、ばらつきの少ない安定した角速度推定値ωe、すなわち検出値に含まれるノイズの影響が抑制された角速度推定値ωeを高い頻度で取得することができる。その結果、モータ1のブラシと整流子の間の接触状態や温度等が変化しても、実際のモータ抵抗値に比べ誤差の少ない抵抗Rnewを用いて角速度推定値ωeを精度良く算出することができる。   According to such an angular velocity estimation process of FIG. 16, every time the detected values Vm and Im are acquired ja times or more and a change in the rotation angle θs is detected, the acquired detected values I (i) and V (i ) (I = 1 to j) is used to calculate the resistance value Rnew by the equation (19) (step S162), thereby updating the resistance value Rnew used for calculating the angular velocity estimated value ωe. Thereby, a stable angular velocity estimated value ωe with little variation, that is, an angular velocity estimated value ωe in which the influence of noise included in the detected value is suppressed can be acquired with high frequency. As a result, even if the contact state between the brush of the motor 1 and the commutator, the temperature, or the like changes, the estimated angular velocity value ωe can be accurately calculated using the resistance Rnew with less error than the actual motor resistance value. it can.

<5.第4の実施形態>
<5.1 モータ制御装置の構成>
本発明の第4の実施形態に係るモータ制御装置も、上記第1の実施形態と同様、図1に示すように電動パワーステアリング装置において使用され、ECU5を用いて構成されており、ブラシ付きモータ1を駆動する。また、このモータ制御装置の構成は、回転センサ7に代えて舵角センサ7hが設けられる点と角速度推定部50の構成を除き、上記第1の実施形態と基本的には同様であって、図2に示す通りである。ただし、図2において点線で示される各部の温度センサ41,42,43は本実施形態においても使用されない。なお本実施形態では、角速度推定値ωeの算出において、舵角センサ7hの出力信号が示す操舵角θhがそのまま使用されるのではなく、当該操舵角θhを微分することにより得られる操舵角速度ωhが使用される。このため、舵角センサ7hに代えて、操舵角速度センサまたはモータの角速度を簡易に検出する低コストの角速度センサを使用してもよい(図1、図10参照)。
<5. Fourth Embodiment>
<5.1 Configuration of motor control device>
Similarly to the first embodiment, the motor control device according to the fourth embodiment of the present invention is used in the electric power steering device as shown in FIG. 1 is driven. The configuration of the motor control device is basically the same as that of the first embodiment except that the steering angle sensor 7h is provided instead of the rotation sensor 7 and the configuration of the angular velocity estimation unit 50. As shown in FIG. However, the temperature sensors 41, 42, and 43 of the respective parts indicated by dotted lines in FIG. 2 are not used in this embodiment. In this embodiment, in calculating the angular velocity estimated value ωe, the steering angle θh indicated by the output signal of the steering angle sensor 7h is not used as it is, but the steering angular velocity ωh obtained by differentiating the steering angle θh is used. used. Therefore, instead of the steering angle sensor 7h, a low-cost angular velocity sensor that simply detects the angular velocity of the steering angular velocity sensor or the motor may be used (see FIGS. 1 and 10).

図17は、本実施形態における角速度推定部50の機能的構成を示すブロック図である。この角速度推定部50は、抵抗値更新部200と逆起電力定数更新部300と角速度推定値算出部66とを備えている。   FIG. 17 is a block diagram showing a functional configuration of the angular velocity estimation unit 50 in the present embodiment. The angular velocity estimation unit 50 includes a resistance value update unit 200, a back electromotive force constant update unit 300, and an angular velocity estimation value calculation unit 66.

抵抗値更新部200は、図8の角速度推定処理(第1の実施形態における第1の角速度推定処理)のうち角速度推定値ωeの算出に使用する抵抗値Rnewを更新するための処理(図8において点線で囲まれた部分に相当する抵抗値更新処理)によってソフトウェア的に実現される。したがって、抵抗値更新部200は、機能的には、図5に示す角速度推定部50に含まれる保舵判定部51と抵抗算出部52と平均値算出部53とから構成される。ただし本実施形態では、保舵判定部51による保舵状態か否かの判定(ステップS10)は、回転センサ7からのパルス信号Pではなく舵角センサ(または操舵角速度センサ)7hからの出力信号に基づき得られる操舵角速度ωhを用いて行われる。なお、このような構成に代えて、本発明の各実施形態における他の角速度推定処理のうち角速度推定値ωeの算出に使用する抵抗値Rnewを更新するための処理によって上記抵抗値更新部200を実現してもよい。   The resistance value update unit 200 updates the resistance value Rnew used for calculating the angular velocity estimated value ωe in the angular velocity estimation processing (first angular velocity estimation processing in the first embodiment) in FIG. 8 (FIG. 8). In this case, the resistance value updating process corresponding to the portion surrounded by the dotted line in FIG. Therefore, the resistance value update unit 200 is functionally configured by a steering determination unit 51, a resistance calculation unit 52, and an average value calculation unit 53 included in the angular velocity estimation unit 50 shown in FIG. However, in the present embodiment, the determination (step S10) as to whether or not the steered state is the steered state by the steerage determining unit 51 is not the pulse signal P from the rotation sensor 7, but the output signal from the steer angle sensor (or steering angular velocity sensor) 7h. This is performed using the steering angular velocity ωh obtained based on the above. Instead of such a configuration, the resistance value updating unit 200 is changed by a process for updating the resistance value Rnew used for calculating the angular velocity estimation value ωe among the other angular velocity estimation processes in each embodiment of the present invention. It may be realized.

逆起電力定数更新部300は、図17に示すように、速度判定部81と逆起電力定数算出部82と平均値算出部83とを含んでいる。   As shown in FIG. 17, the back electromotive force constant update unit 300 includes a speed determination unit 81, a back electromotive force constant calculation unit 82, and an average value calculation unit 83.

角速度推定部50では、舵角センサ(または操舵角速度センサ)7hからの出力信号に基づき得られる操舵角速度ωhが入力される。舵角センサ7hの検出精度は、モータ1の回転速度が高いほど高いことから、速度判定部81は、この操舵角速度ωhが所定の最小値ωhmin以上か否かを判定し、その判定結果を示す信号を回転状態信号Spとして出力する。逆起電力定数算出部82は、この回転状態信号Spに基づき、モータ1が当該最小値ωhminに対応する所定速度以上で回転している場合に、操舵角速度ωhと電流検出値Imおよび電圧検出値Vmとを用いて逆起電力定数kを制御周期毎に算出する。平均値算出部83は、このようにして制御周期毎に順次得られる逆起電力定数kについて平均化処理を施すことにより逆起電力定数平均値knewを求める。角速度推定値算出部66は、上記の抵抗値Rnewと逆起電力定数平均値knewと電流検出値Imおよび電圧検出値Vmとを用いて角速度推定値ωeを算出する。   In the angular velocity estimation unit 50, the steering angular velocity ωh obtained based on the output signal from the steering angle sensor (or steering angular velocity sensor) 7h is input. Since the detection accuracy of the steering angle sensor 7h is higher as the rotational speed of the motor 1 is higher, the speed determination unit 81 determines whether or not the steering angular speed ωh is equal to or higher than a predetermined minimum value ωhmin, and shows the determination result. The signal is output as the rotation state signal Sp. Based on the rotation state signal Sp, the back electromotive force constant calculation unit 82 determines the steering angular velocity ωh, the current detection value Im, and the voltage detection value when the motor 1 is rotating at a predetermined speed or higher corresponding to the minimum value ωhmin. The counter electromotive force constant k is calculated for each control period using Vm. The average value calculation unit 83 obtains the counter electromotive force constant average value knew by performing an averaging process on the counter electromotive force constant k sequentially obtained for each control period in this way. The angular velocity estimated value calculation unit 66 calculates the angular velocity estimated value ωe using the resistance value Rnew, the counter electromotive force constant average value knew, the detected current value Im, and the detected voltage value Vm.

<5.2 角速度推定処理の具体例>
以下、本実施形態における角速度推定部50をソフトウェア的に実現するための角速度推定処理(図3のステップS4)につき具体例を説明する。
<5.2 Specific example of angular velocity estimation processing>
Hereinafter, a specific example will be described for angular velocity estimation processing (step S4 in FIG. 3) for realizing the angular velocity estimation unit 50 in the present embodiment in software.

図18は、本実施形態における角速度推定処理S4の一例を示すフローチャートである。図18の角速度推定処理では、まず、抵抗値更新部200をソフトウェア的に実現すべく、現時点までに取得された電流検出値Imおよび電圧検出値Vm等を用いて角速度推定値ωeの算出のための抵抗値Rnewを新たに算出するために抵抗値更新処理S200を実行する。本実施形態では、この抵抗値更新処理S200として、既述のように、図8の角速度推定処理に含まれる既述の抵抗値更新処理(図8において点線で囲まれた部分のステップからなる処理)が利用される。この抵抗値更新処理S200の実行後に、角速度推定値ωeの算出のための逆起電力定数knewを新たに算出するために逆起電力定数更新処理S300を実行する。   FIG. 18 is a flowchart showing an example of the angular velocity estimation process S4 in the present embodiment. In the angular velocity estimation processing of FIG. 18, first, in order to realize the resistance value updating unit 200 in software, the angular velocity estimation value ωe is calculated using the current detection value Im and the voltage detection value Vm acquired up to the present time. In order to newly calculate the resistance value Rnew, the resistance value update process S200 is executed. In the present embodiment, as the resistance value update process S200, as described above, the resistance value update process described above included in the angular velocity estimation process of FIG. 8 (a process consisting of steps surrounded by a dotted line in FIG. 8). ) Is used. After the resistance value update process S200 is executed, the counter electromotive force constant update process S300 is executed in order to newly calculate the counter electromotive force constant knee for calculating the angular velocity estimated value ωe.

本実施形態における角速度推定処理(図18)において、これらの抵抗値更新処理S200と逆起電力定数更新処理S300との実行順序を逆にし、逆起電力定数更新処理S300を実行した後に抵抗値更新処理S200を実行するようにしてもよい。抵抗値更新処理S200の詳細については既述の説明から明らかであるので、以下では逆起電力定数更新処理S300の詳細について説明する。なお、逆起電力定数更新処理S300では、操舵角速度に関して予め決められた最小値ωhminや、減速機2(図1参照)の減速比Cgが使用されるが、これらには実験等に基づく適切な値が図3のステップS2において設定されているものとする。また、逆起電力定数更新処理S300で使用される変数Ckも図3のステップS2で初期化されているものとする。   In the angular velocity estimation process (FIG. 18) in this embodiment, the resistance value update process S200 and the counter electromotive force constant update process S300 are reversed in order, and the resistance value update is performed after executing the counter electromotive force constant update process S300. The process S200 may be executed. Since the details of the resistance value update process S200 are clear from the above description, details of the back electromotive force constant update process S300 will be described below. In the back electromotive force constant update process S300, a predetermined minimum value ωhmin and a reduction ratio Cg of the speed reducer 2 (see FIG. 1) regarding the steering angular velocity are used, which are appropriate based on experiments and the like. It is assumed that the value is set in step S2 of FIG. In addition, it is assumed that the variable Ck used in the counter electromotive force constant update process S300 is also initialized in step S2 of FIG.

逆起電力定数更新処理S300では、まず、舵角センサ7hからの出力信号に基づき得られる操舵角速度ωhが所定の最小値ωhmin以上であるか否かを判定する(ステップS202)。この判定の結果、操舵角速度ωhが当該最小値ωhmin以上である場合(Yesの場合)にはステップS204へ進み、操舵角速度ωhが当該最小値ωhminよりも小さい場合(Noの場合)には、角速度推定値ωeの算出に使用する逆起電力定数knewを更新するための処理を実行することなくステップS220へ進む。   In the back electromotive force constant update processing S300, first, it is determined whether or not the steering angular velocity ωh obtained based on the output signal from the steering angle sensor 7h is equal to or greater than a predetermined minimum value ωhmin (step S202). As a result of this determination, if the steering angular velocity ωh is equal to or greater than the minimum value ωhmin (Yes), the process proceeds to step S204. If the steering angular velocity ωh is smaller than the minimum value ωhmin (No), the angular velocity is It progresses to step S220, without performing the process for updating the counter electromotive force constant knew used for calculation of estimated value (omega) e.

ステップS204では、逆起電力定数knewを新たに算出するのに使用される電圧検出値Vmおよび電流検出値Imの取得個数を示す変数Ckが0か否かを判定する。その判定の結果、変数Ckが0であればステップS222へ進み、変数Ckが0でなければステップS206へ進む。マイコン10はタイマーを内蔵しており、ステップS222では、このタイマーをスタートさせる。これにより、このタイマーのスタートからの経過時間Tkelpが0に初期化される。その後、ステップS206へ進む。   In step S204, it is determined whether or not a variable Ck indicating the number of acquired voltage detection values Vm and current detection values Im used to newly calculate the counter electromotive force constant knew is zero. If the variable Ck is 0 as a result of the determination, the process proceeds to step S222, and if the variable Ck is not 0, the process proceeds to step S206. The microcomputer 10 has a built-in timer, and in step S222, the timer is started. As a result, the elapsed time Tkelp from the start of the timer is initialized to zero. Thereafter, the process proceeds to step S206.

ステップS206では、上記経過時間Tkelpが時間制限値Tlim以下であるか否かを判定する。この判定の結果、上記経過時間Tkelpが時間制限値Tlim以下である場合(Yesの場合)には、変数Ckを1だけ増加させ(ステップS208)、ステップS210へ進む。一方、上記経過時間Tkelpが時間制限値Tlimを越える場合(Noの場合)には、変数Ckを0に初期化し(ステップS224)、逆起電力定数knewを更新するための処理を行わずにステップS220へ進む。これにより、逆起電力定数knewの更新に古い検出値Im.Vmが使用されるのが回避される。   In step S206, it is determined whether or not the elapsed time Tkelp is less than or equal to the time limit value Tlim. As a result of this determination, when the elapsed time Tkelp is equal to or shorter than the time limit value Tlim (in the case of Yes), the variable Ck is increased by 1 (step S208), and the process proceeds to step S210. On the other hand, when the elapsed time Tkelp exceeds the time limit value Tlim (in the case of No), the variable Ck is initialized to 0 (step S224), and the process without updating the counter electromotive force constant knee is performed. Proceed to S220. As a result, the old detection value Im. The use of Vm is avoided.

ステップS210では、上記の操舵角速度ωhと、上記の抵抗値更新処理S200で得られた更新抵抗値Rnewと、減速機2の減速比Cgと、電流検出値Imおよび電圧検出値Vmとを用いて、下記式(22)により逆起電力定数kを算出する(以下、この逆起電力定数kを「算出逆起電力定数k」ともいう)。なお、減速比Cgは減速機2における原軸の回転速度に対する従軸の回転速度の比(例えば1/15)である。また、逆起電力定数更新処理S300が抵抗値更新処理S200よりも先に実行される構成の場合には、以前に角速度推定処理が実行されたときに算出された抵抗値Rnewまたは図3のステップS2で設定された抵抗値Rnewが下記式(22)の抵抗値Rnewとして使用される。
k=(Vm−Im・Rnew)/(ωh/Cg) …(22)
In step S210, the steering angular velocity ωh, the update resistance value Rnew obtained in the resistance value update process S200, the reduction ratio Cg of the reduction gear 2, the current detection value Im, and the voltage detection value Vm are used. The counter electromotive force constant k is calculated by the following equation (22) (hereinafter, this counter electromotive force constant k is also referred to as “calculated counter electromotive force constant k”). The reduction ratio Cg is a ratio (for example, 1/15) of the rotational speed of the slave shaft to the rotational speed of the master shaft in the speed reducer 2. Further, in the case where the back electromotive force constant update process S300 is executed prior to the resistance value update process S200, the resistance value Rnew calculated when the angular velocity estimation process was previously executed or the step of FIG. The resistance value Rnew set in S2 is used as the resistance value Rnew of the following formula (22).
k = (Vm−Im · Rnew) / (ωh / Cg) (22)

本実施形態では、マイコン10内のメモリを用いてソフトウェア的にFIFOメモリが実現されており、上記のようにしてステップS210で逆起電力定数kが新たに算出されると、その逆起電力定数kがFIFOメモリに格納される(ステップS212)。このFIFOメモリは、サイズが所定値Cka(例えば50)の先入れ先出し方式のメモリであって、Cka個の逆起電力定数kが格納されている状態において更に1個の新たな逆起電力定数kが格納されると、最初に格納されたFIFOメモリ内の逆起電力定数kが廃棄される。このため、このFIFOメモリにCka回以上逆起電力定数kが格納された場合には、直近のCka回で格納されたCka個の逆起電力定数kのみがそのFIFOメモリに存在する。   In the present embodiment, a FIFO memory is realized by software using the memory in the microcomputer 10, and when the counter electromotive force constant k is newly calculated in step S210 as described above, the counter electromotive force constant is calculated. k is stored in the FIFO memory (step S212). This FIFO memory is a first-in first-out memory having a predetermined value Cka (for example, 50), and in the state where Cka back electromotive force constants k are stored, another new back electromotive force constant k is further stored. When stored, the back electromotive force constant k in the FIFO memory stored first is discarded. For this reason, when the counter electromotive force constant k is stored Cka times or more in this FIFO memory, only the Cka number of counter electromotive force constants k stored in the latest Cka times exist in the FIFO memory.

新たに算出された逆起電力定数kが上記FIFOメモリに格納された後は、変数Ckが所定値Cka以上であるか否かを判定する(ステップS214)。この判定の結果、変数Ckが所定Ckaに達している場合(Yesの場合)にはステップS216へ進み、所定Ckaに達していない場合(Noの場合)にはステップS226へ進む。最初にステップS214が実行される時点では、Ck=1であるので、ステップS226へ進むが、この図18の角速度推定処理が繰り返し実行されて、逆起電力定数kの算出回数がCka回以上になると、ステップS216へ進む。   After the newly calculated counter electromotive force constant k is stored in the FIFO memory, it is determined whether or not the variable Ck is greater than or equal to a predetermined value Cka (step S214). As a result of this determination, if the variable Ck has reached the predetermined Cka (in the case of Yes), the process proceeds to step S216. If the variable Ck has not reached the predetermined Cka (in the case of No), the process proceeds to step S226. Since Ck = 1 at the time of the first execution of step S214, the process proceeds to step S226. However, the angular velocity estimation process of FIG. Then, the process proceeds to step S216.

ステップS216へ進んだときには、その時点での直近のCka回で算出されたCka個の逆起電力定数kがFIFOメモリに存在し、これらCka個の逆起電力定数kの平均値を新たな逆起電力定数knewとして求める。これは、制御周期毎に順次得られる逆起電力定数kについて移動平均化処理を施すことにより新たな逆起電力定数knewを得ることを意味する。その後、この新たな逆起電力定数knewをkoldとおいて(ステップS218)、ステップS220へ進む。   When the process proceeds to step S216, Cka back electromotive force constants k calculated in the most recent Cka times at that time are present in the FIFO memory, and the average value of these Cka back electromotive force constants k is newly inverted. Obtained as electromotive force constant knew. This means that a new counter electromotive force constant knew is obtained by performing a moving averaging process on the counter electromotive force constant k sequentially obtained for each control period. Thereafter, the new counter electromotive force constant knee is set to kold (step S218), and the process proceeds to step S220.

ステップS226へ進んだときには、その時点での直近のCk回で算出されたCk個の逆起電力定数kがFIFOメモリに存在し、これらCk個の逆起電力定数kの平均値k1求める。ここでCkは、1以上でCkaよりも小さい整数であり、Ckが小さい場合には、この平均値k1は安定した値ではなくばらつきがあるので、すなわち平均値k1に含まれるノイズが比較的大きいので、そのまま角速度推定値ωeの算出に使用するのは好ましくない。そこで、逆起電力定数koldとk1との加重平均を示す下記式(23)により新たな逆起電力定数knewを求める(ステップS228)。
knew={(1−f(Ck))・kold+f(Ck)・k1} …(23)
ここで、f(Ck)は、Ck=0のとき0となりCk=Ckaのとき1となる、変数Ckの単調増加関数であり、例えば関数f(Ck)=Ck/Ckaまたはf(Ck)=Ck2/Cka2を使用することができる。上記式(23)は、新たな更新パラメータ値としての逆起電力定数knewを求めるための電流検出値Imおよび電圧検出値Vmの取得個数(これは算出逆起電力定数kの取得個数に等しい)に応じた、逆起電力定数koldとk1との加重平均を示している。この式(23)により新たな逆起電力定数knewが得られると、ステップS220へ進む。
When the process proceeds to step S226, Ck counter electromotive force constants k calculated in the most recent Ck times at that time exist in the FIFO memory, and an average value k1 of these Ck counter electromotive force constants k is obtained. Here, Ck is an integer greater than or equal to 1 and smaller than Cka, and when Ck is small, the average value k1 is not a stable value but varies, that is, the noise included in the average value k1 is relatively large. Therefore, it is not preferable to use it for calculation of the angular velocity estimated value ωe as it is. Therefore, a new counter electromotive force constant knee is obtained by the following equation (23) indicating the weighted average of the counter electromotive force constants kold and k1 (step S228).
knee = {(1−f (Ck)) · kold + f (Ck) · k1} (23)
Here, f (Ck) is a monotonically increasing function of the variable Ck, which is 0 when Ck = 0 and 1 when Ck = Cka. For example, f (Ck) = Ck / Cka or f (Ck) = Ck 2 / Cka 2 can be used. The above equation (23) is the number of acquired current detection values Im and voltage detection values Vm for obtaining the counter electromotive force constant knew as a new update parameter value (this is equal to the number of acquisition of the calculated counter electromotive force constant k). The weighted average of the back electromotive force constants kold and k1 is shown. When a new counter electromotive force constant knew is obtained from the equation (23), the process proceeds to step S220.

ステップS220では、電流検出値I=Imおよび電圧検出値V=Vmと共に抵抗値R=Rnewおよび逆起電力定数k=knewを用いて式(2)により角速度推定値ωeを算出する。この角速度推定値ωeの算出には、上記のステップS216またはS228が実行された場合、そこで算出された逆起電力定数knewが使用されるが、上記のステップS216とS228のいずれもが実行されない場合には、今回の制御周期よりも前に設定された逆起電力定数knewが使用される。ステップS220で角速度推定値ωeが算出されると、1つの制御周期での角速度推定処理を終了し、図3に示すモータ制御処理のルーチンに戻る。   In step S220, the angular velocity estimated value ωe is calculated by the equation (2) using the resistance value R = Rnew and the counter electromotive force constant k = knew together with the current detection value I = Im and the voltage detection value V = Vm. In the calculation of the angular velocity estimation value ωe, when the above step S216 or S228 is executed, the back electromotive force constant knew calculated there is used, but neither of the above steps S216 or S228 is executed. The counter electromotive force constant knew set before the current control cycle is used. When the angular velocity estimation value ωe is calculated in step S220, the angular velocity estimation process in one control cycle is terminated, and the process returns to the motor control process routine shown in FIG.

<5.3 効果>
上記のような本実施形態によれば、角速度推定値ωeの算出に使用されるパラメータ値のうち抵抗値Rnewだけでなく逆起電力定数knewも更新され、しかも、操舵角速度ωhが所定の最小値ωhmin以上であるときに制御周期毎に逆起電力定数knewが更新される。また、この逆起電力定数knewは、電流および電圧の複数回の検出により取得される複数個の検出値Im.Vmから式(22)により算出される逆起電力定数kに対して平均化処理を施すことにより得られるので(ステップS216,S226,S228)、式(22)により算出される逆起電力定数kに含まれるノイズの影響が抑制され、ばらつきのない安定した逆起電力定数knewを用いて角速度推定値ωeが算出される。このため、モータ1における現実の逆起電力定数が変化しても、高い精度で角速度推定値ωeを算出することができる。その結果、モータ制御装置の制御性能が向上し、そのモータ制御装置を用いた電動パワーステアリング装置において良好な操舵感が得られる。なお、図18の角速度推定処理では、変数Ckが所定値Ckaに達する毎に逆起電力定数kの算出値についての移動平均処理が行われるが(ステップS216)、これに代えて逆起電力定数kの算出値につき所定個数ずつ単純な平均化処理を行うようにしてもよい。
<5.3 Effects>
According to the present embodiment as described above, not only the resistance value Rnew but also the counter electromotive force constant knew among the parameter values used for calculating the angular velocity estimated value ωe is updated, and the steering angular velocity ωh is a predetermined minimum value. When it is equal to or larger than ωhmin, the counter electromotive force constant knee is updated every control cycle. Further, the counter electromotive force constant knew includes a plurality of detection values Im. Since it is obtained by averaging the counter electromotive force constant k calculated from Vm according to the equation (22) (steps S216, S226, S228), the counter electromotive force constant k calculated according to the equation (22) is obtained. The angular velocity estimated value ωe is calculated using a stable counter electromotive force constant knew that is stable and has no variation. For this reason, even if the actual back electromotive force constant in the motor 1 changes, the angular velocity estimated value ωe can be calculated with high accuracy. As a result, the control performance of the motor control device is improved, and a good steering feeling can be obtained in an electric power steering device using the motor control device. In the angular velocity estimation process of FIG. 18, every time the variable Ck reaches a predetermined value Cka, a moving average process is performed on the calculated value of the counter electromotive force constant k (step S216). Instead, the counter electromotive force constant is calculated. A simple averaging process may be performed for each calculated value of k by a predetermined number.

<6.第5の実施形態>
<6.1 モータ制御装置の構成>
本発明の第5の実施形態に係るモータ制御装置も、上記第1の実施形態と同様、図1に示すように電動パワーステアリング装置において使用され、ECU5を用いて構成されており、ブラシ付きモータ1を駆動する。このモータ制御装置では、上記第1の実施形態とは異なり、各部の温度センサ41,42,43が設けられている。これらの温度センサは、具体的には、モータ1のコイルの温度Twを検出するために設けられたセンサ41、モータ1のブラシの温度Tbを検出するために設けられたセンサ42,および、モータ駆動回路30の基板温度Tdを検出するために設けられたセンサ43である。また、本実施形態では、角速度推定部50の構成が他の実施形態と異なる。本実施形態に係るモータ制御装置における他の構成は、上記第1の実施形態と基本的には同様であって、図2に示す通りである。
<6. Fifth Embodiment>
<6.1 Motor controller configuration>
Similarly to the first embodiment, the motor control device according to the fifth embodiment of the present invention is used in the electric power steering device as shown in FIG. 1 is driven. In this motor control device, unlike the first embodiment, temperature sensors 41, 42, and 43 are provided for each part. Specifically, these temperature sensors include a sensor 41 provided for detecting the coil temperature Tw of the motor 1, a sensor 42 provided for detecting the brush temperature Tb of the motor 1, and the motor. This is a sensor 43 provided for detecting the substrate temperature Td of the drive circuit 30. Moreover, in this embodiment, the structure of the angular velocity estimation part 50 differs from other embodiment. The other configuration of the motor control device according to the present embodiment is basically the same as that of the first embodiment, as shown in FIG.

図19は、本実施形態における角速度推定部50の機能的構成を示すブロック図である。この角速度推定部50は、温度特性格納部91と抵抗値算出部92と平均値算出部93と角速度推定値算出部66とを備えており、温度特性格納部91と抵抗値算出部92と平均値算出部93とは抵抗値更新部200を構成する。   FIG. 19 is a block diagram showing a functional configuration of the angular velocity estimation unit 50 in the present embodiment. The angular velocity estimation unit 50 includes a temperature characteristic storage unit 91, a resistance value calculation unit 92, an average value calculation unit 93, and an angular velocity estimation value calculation unit 66. The temperature characteristic storage unit 91, the resistance value calculation unit 92, and the average The value calculation unit 93 constitutes the resistance value update unit 200.

図19に示すように、温度特性格納部91は、巻線抵抗マップMw、ブラシ抵抗マップMb、接触抵抗マップMc、および回路抵抗マップMdを保持している。ここで、巻線抵抗マップMwは、図20(a)に示すようなモータ1の巻線抵抗の温度特性に基づきコイル温度を巻線抵抗に対応付けるテーブルであり、ブラシ抵抗マップMbは、図20(b)に示すようなモータ1のブラシ抵抗の温度特性に基づきブラシ温度をブラシ抵抗に対応付けるテーブルであり、接触抵抗マップMcは、図20(c)に示すようなモータ1におけるブラシの接触抵抗の温度特性に基づきブラシ温度を接触抵抗に対応付けるテーブルであり、回路抵抗マップMdは、図20(d)に示すようなモータ駆動回路30の基板温度の温度特性に基づき基板温度をモータ駆動回路30の抵抗(以下「回路抵抗」という)に対応付けるテーブルである。   As shown in FIG. 19, the temperature characteristic storage unit 91 holds a winding resistance map Mw, a brush resistance map Mb, a contact resistance map Mc, and a circuit resistance map Md. Here, the winding resistance map Mw is a table associating the coil temperature with the winding resistance based on the temperature characteristics of the winding resistance of the motor 1 as shown in FIG. 20A, and the brush resistance map Mb is shown in FIG. FIG. 20B is a table for associating the brush temperature with the brush resistance based on the temperature characteristic of the brush resistance of the motor 1 as shown in FIG. The circuit resistance map Md is a table for associating the brush temperature with the contact resistance based on the temperature characteristics of the motor drive circuit 30 based on the temperature characteristics of the substrate temperature of the motor drive circuit 30 as shown in FIG. It is a table corresponding to the resistance (hereinafter referred to as “circuit resistance”).

温度特性格納部91は、制御周期毎に、既述の温度センサ41,42,43によりそれぞれ得られるコイル温度検出値Tw、ブラシ温度検出値Tb、および基板温度検出値Tdを受け取り(図3のステップS3)、そのコイル温度検出値Twに対応する巻線抵抗値Rwを巻線抵抗マップMwを参照して求め、そのブラシ温度検出値Tbに対応するブラシ抵抗値Rbをブラシ抵抗マップMbを参照して求め、そのブラシ温度検出値Tbに対応する接触抵抗値Rcを接触抵抗マップMcを参照して求め、その基板温度検出値Tdに対応する回路抵抗値Rdを回路抵抗マップMdを参照して求める。このようにして求めた巻線抵抗値Rw、ブラシ抵抗値Rb、接触抵抗値Rc,および回路抵抗値Rdは、抵抗値算出部92に入力される。   The temperature characteristic storage unit 91 receives the coil temperature detection value Tw, the brush temperature detection value Tb, and the substrate temperature detection value Td obtained by the above-described temperature sensors 41, 42, and 43 for each control cycle (see FIG. 3). In step S3), the winding resistance value Rw corresponding to the detected coil temperature value Tw is obtained with reference to the winding resistance map Mw, and the brush resistance value Rb corresponding to the detected brush temperature value Tb is referred to the brush resistance map Mb. The contact resistance value Rc corresponding to the brush temperature detection value Tb is obtained with reference to the contact resistance map Mc, and the circuit resistance value Rd corresponding to the substrate temperature detection value Td is obtained with reference to the circuit resistance map Md. Ask. The winding resistance value Rw, brush resistance value Rb, contact resistance value Rc, and circuit resistance value Rd thus obtained are input to the resistance value calculation unit 92.

抵抗値算出部92は、これらの巻線抵抗値Rw、ブラシ抵抗値Rb、接触抵抗値Rc、および回路抵抗値Rdからモータ抵抗値Rsを制御周期毎に求める。平均値算出部93は、このようにして制御周期毎に順次得られるモータ抵抗値Rsについて平均化処理を施すことにより抵抗平均値Rnewを求める。角速度推定値算出部66は、この抵抗平均値Rnewと予め設定された逆起電力定数k(図3のステップS2)と電圧検出回路24からの電圧検出値Vmと電流検出回路25からの電流検出値Imとを用いて角速度推定値ωeを算出する。   The resistance value calculation unit 92 obtains a motor resistance value Rs for each control cycle from the winding resistance value Rw, the brush resistance value Rb, the contact resistance value Rc, and the circuit resistance value Rd. The average value calculation unit 93 obtains the resistance average value Rnew by performing an averaging process on the motor resistance value Rs obtained sequentially for each control period in this way. The angular velocity estimated value calculation unit 66 detects the resistance average value Rnew, a preset counter electromotive force constant k (step S2 in FIG. 3), the voltage detection value Vm from the voltage detection circuit 24, and the current detection from the current detection circuit 25. An angular velocity estimation value ωe is calculated using the value Im.

<6.2 角速度推定処理の具体例>
以下、本実施形態における角速度推定部50をソフトウェア的に実現するための角速度推定処理(図3のステップS4)につき具体例を説明する。なお、上記の温度特性格納部91は、この角速度推定処理とマイコン10内のメモリによって実現され、上記の巻線抵抗マップMw、ブラシ抵抗マップMb、接触抵抗マップMc、および回路抵抗マップMdを構成するデータは予め当該メモリに記憶されているものとする。
<6.2 Specific example of angular velocity estimation processing>
Hereinafter, a specific example will be described for angular velocity estimation processing (step S4 in FIG. 3) for realizing the angular velocity estimation unit 50 in the present embodiment in software. The temperature characteristic storage unit 91 is realized by the angular velocity estimation process and a memory in the microcomputer 10, and constitutes the winding resistance map Mw, the brush resistance map Mb, the contact resistance map Mc, and the circuit resistance map Md. It is assumed that data to be stored is stored in advance in the memory.

図21は、本実施形態における角速度推定処理S4の一例を示すフローチャートである。この例においても、角速度推定処理は制御周期毎に実行され(図3参照)、この角速度推定処理の実行においてマイコン10は図21および図22に示すように動作する。   FIG. 21 is a flowchart showing an example of the angular velocity estimation process S4 in the present embodiment. Also in this example, the angular velocity estimation process is executed for each control cycle (see FIG. 3), and the microcomputer 10 operates as shown in FIGS. 21 and 22 in the execution of the angular velocity estimation process.

図21の角速度推定処理は、図8の角速度推定処理と比較すると、ステップS10〜S12,S30,S32が削除されている点と抵抗値Rsを算出するための処理内容(図8のステップ16と図21のステップS17)が異なる点と除けば実質的に図8の角速度推定処理と同じであり、対応するステップには同一の番号を付して説明を省略する。   The angular velocity estimation process in FIG. 21 is different from the angular velocity estimation process in FIG. 8 in that steps S10 to S12, S30, and S32 are deleted and the processing content for calculating the resistance value Rs (step 16 in FIG. 8). Except for the difference in step S17) in FIG. 21, this is substantially the same as the angular velocity estimation processing in FIG. 8, and the corresponding steps are denoted by the same reference numerals and description thereof is omitted.

図22は、本実施形態におけるステップS17での処理すなわち抵抗値算出処理の詳細手順を示すフローチャートである。この抵抗値算出処理では、まず、既述の温度センサ41,42,43により得られるコイル温度検出値Tw、ブラシ温度検出値Tb、および基板温度検出値Tdを取得する(ステップS230)。次に、巻線抵抗の温度特性を示す巻線抵抗マップMwを参照することにより、コイル温度検出値Twに対応する巻線抵抗値Rwを求める(ステップS232)。同様に、ブラシ抵抗の温度特性を示すブラシ抵抗マップMbを参照することにより、ブラシ温度検出値Tbに対応するブラシ抵抗値Rbを求め(ステップS234)、接触抵抗の温度特性を示す接触抵抗マップMcを参照することにより、ブラシ温度検出値Tbに対応する接触抵抗値Rcを求め(ステップS236)、回路抵抗の温度特性を示す回路抵抗マップMdを参照することにより、基板温度検出値Tdに対応する回路抵抗値Rdを求める(ステップS238)。   FIG. 22 is a flowchart showing a detailed procedure of the process in step S17 in this embodiment, that is, the resistance value calculation process. In this resistance value calculation process, first, the coil temperature detection value Tw, the brush temperature detection value Tb, and the substrate temperature detection value Td obtained by the above-described temperature sensors 41, 42, and 43 are acquired (step S230). Next, a winding resistance value Rw corresponding to the detected coil temperature value Tw is obtained by referring to the winding resistance map Mw indicating the temperature characteristics of the winding resistance (step S232). Similarly, the brush resistance value Rb corresponding to the brush temperature detection value Tb is obtained by referring to the brush resistance map Mb indicating the temperature characteristic of the brush resistance (step S234), and the contact resistance map Mc indicating the temperature characteristic of the contact resistance is obtained. , The contact resistance value Rc corresponding to the brush temperature detection value Tb is obtained (step S236), and the circuit resistance map Md indicating the temperature characteristic of the circuit resistance is referred to, thereby corresponding to the substrate temperature detection value Td. A circuit resistance value Rd is obtained (step S238).

上記のようにして、巻線抵抗値Rw、ブラシ抵抗値Rb、接触抵抗値Rc、および回路抵抗値Rdが求まると、次に、これらの抵抗値Rw,Rb,Rc,Rdの和としてモータ抵抗値(以下「算出抵抗値」という)Rsを求める(ステップS240)。すなわち、
Rs=Rw+Rb+Rc+Rd …(24)
である。
When the winding resistance value Rw, the brush resistance value Rb, the contact resistance value Rc, and the circuit resistance value Rd are obtained as described above, the motor resistance is calculated as the sum of these resistance values Rw, Rb, Rc, and Rd. A value (hereinafter referred to as “calculated resistance value”) Rs is obtained (step S240). That is,
Rs = Rw + Rb + Rc + Rd (24)
It is.

上記のようなステップS230〜S240からなる抵抗値算出処理(S17)をマイコン10が実行することにより、図19に示す抵抗値算出部92が実現される。   When the microcomputer 10 executes the resistance value calculation process (S17) including steps S230 to S240 as described above, the resistance value calculation unit 92 illustrated in FIG. 19 is realized.

上記のようにして算出抵抗値Rsが求められると、抵抗値算出処理(S17)を終了し、図21に示す角速度推定処理のルーチンに戻り、ステップS50以降の処理を実行する。この処理では、現時点までに制御周期毎に得られた複数の算出抵抗値Rsを用い、上記第1の実施形態における第1の角速度推定処理(図8の角速度推定処理)と同様にして、抵抗平均値Rnew(ステップS54,S62)を算出し、この抵抗平均値Rnewを用いて角速度推定値ωeを算出する(ステップS58)。ステップS58で角速度推定値ωeが算出されると、1つの制御周期での角速度推定処理を終了し、図3に示すモータ制御処理のルーチンに戻る。   When the calculated resistance value Rs is obtained as described above, the resistance value calculation process (S17) is terminated, the process returns to the angular velocity estimation process routine shown in FIG. 21, and the processes after step S50 are executed. In this process, a plurality of calculated resistance values Rs obtained for each control cycle up to the present time are used, and in the same manner as in the first angular velocity estimation process (angular velocity estimation process in FIG. 8) in the first embodiment, the resistance An average value Rnew (steps S54 and S62) is calculated, and an estimated angular velocity value ωe is calculated using the resistance average value Rnew (step S58). When the angular velocity estimation value ωe is calculated in step S58, the angular velocity estimation process in one control cycle is terminated, and the process returns to the motor control process routine shown in FIG.

<6.3 効果>
上記のような本実施形態によれば、角速度推定値ωeの算出に必要なモータ抵抗値Rnewは、モータ抵抗Rを構成する各部の抵抗(抵抗成分)毎に抵抗値の温度特性を考慮して算出される(ステップS230〜S240、図20参照)。これにより、モータ抵抗の温度特性を正確に反映した抵抗値Rnewを用いて角速度推定値ωeが算出されるので、角速度推定値ωeの精度を向上させることができる。また、角速度推定値ωeを算出するための抵抗平均値Rnewは、モータ制御装置が動作している状態において制御周期毎に更新されるので(ステップS54,S62)、角速度推定値ωeを算出するための抵抗平均値Rnewは、現実のモータ抵抗値Rの変化に追随することができ、現実のモータ抵抗値Rとの乖離が抑制される。このため、温度が変化しても、実際のモータ抵抗値に比べ誤差の少ない抵抗平均値Rnewを用いて角速度推定値ωeを精度良く算出することができる。以上により、モータ制御装置の制御性能が向上し、そのモータ制御装置を用いた電動パワーステアリング装置において良好な操舵感が得られる。
<6.3 Effect>
According to the present embodiment as described above, the motor resistance value Rnew necessary for calculating the angular velocity estimated value ωe is determined by considering the temperature characteristics of the resistance value for each resistance (resistance component) of each part constituting the motor resistance R. It is calculated (see steps S230 to S240, FIG. 20). As a result, the estimated angular velocity value ωe is calculated using the resistance value Rnew that accurately reflects the temperature characteristic of the motor resistance, so that the accuracy of the estimated angular velocity value ωe can be improved. Further, since the resistance average value Rnew for calculating the estimated angular velocity value ωe is updated every control cycle in a state where the motor control device is operating (steps S54 and S62), the estimated angular velocity value ωe is calculated. This resistance average value Rnew can follow the change in the actual motor resistance value R, and the deviation from the actual motor resistance value R is suppressed. For this reason, even if the temperature changes, the estimated angular velocity value ωe can be accurately calculated using the resistance average value Rnew with less error than the actual motor resistance value. As described above, the control performance of the motor control device is improved, and a good steering feeling can be obtained in the electric power steering device using the motor control device.

<7.変形例など>
上記第1〜第5の実施形態において、角速度推定部50はマイコン10が所定プログラムを実行することによりソフトウェア的に実現されているが、角速度推定部50の一部または全部をハードウェア的に実現してもよい。
<7. Variations>
In the first to fifth embodiments, the angular velocity estimation unit 50 is realized by software by the microcomputer 10 executing a predetermined program, but part or all of the angular velocity estimation unit 50 is realized by hardware. May be.

上記第1〜第5の実施形態に係るモータ制御装置は、ブラシ付きモータ1を駆動するための装置であるが、本発明はこれに限定されるものではない。本発明は、電動モータの電機子巻線に生じる逆起電力に基づき、当該モータの抵抗値および逆起電力定数と当該モータへの印加電圧および当該モータに流れる電流の検出値とから当該モータの回転速度(角速度)の推定値を算出できるものであれば、他の種類のモータにも適用可能である。   The motor control devices according to the first to fifth embodiments are devices for driving the brushed motor 1, but the present invention is not limited to this. The present invention is based on the back electromotive force generated in the armature winding of the electric motor, based on the resistance value and back electromotive force constant of the motor, the applied voltage to the motor, and the detected value of the current flowing to the motor. As long as the estimated value of the rotational speed (angular speed) can be calculated, the present invention can be applied to other types of motors.

なお本発明は、上述したコラムアシスト型の電動パワーステアリング装置だけでなく、ピニオンアシスト型やラックアシスト型の電動パワーステアリング装置にも適用できる。また、本発明は、電動パワーステアリング装置以外に用いられるモータ制御装置にも適用できる。   The present invention can be applied not only to the above-described column assist type electric power steering apparatus but also to a pinion assist type or rack assist type electric power steering apparatus. The present invention can also be applied to a motor control device used in addition to the electric power steering device.

1…ブラシ付きモータ(電動モータ)、5…ECU(モータ制御装置)、7…回転センサ、7h…舵角センサ(簡易角度検出手段),操舵角速度センサ(簡易速度検出手段)、51…保舵判定部(判定手段)、56…角速度推定値算出部(推定値算出手段)、91…温度特性格納部、200…抵抗値更新部(パラメータ値更新手段)、300…逆起電力定数更新部(パラメータ値更新手段)、400…パラメータ値更新部(パラメータ値更新手段)。   DESCRIPTION OF SYMBOLS 1 ... Motor with a brush (electric motor), 5 ... ECU (motor control apparatus), 7 ... Rotation sensor, 7h ... Steering angle sensor (simple angle detection means), Steering angular velocity sensor (simple speed detection means), 51 ... Steering Determination unit (determination unit) 56 ... Angular velocity estimation value calculation unit (estimation value calculation unit) 91 ... Temperature characteristic storage unit 200 ... Resistance value update unit (parameter value update unit) 300 ... Back electromotive force constant update unit ( Parameter value updating means), 400... Parameter value updating section (parameter value updating means).

Claims (7)

電動モータの電機子巻線に生じる逆起電力に基づき当該電動モータの回転速度の推定値を算出し、当該推定値を用いて当該電動モータを駆動するモータ制御装置であって、
前記電動モータに流れる電流を検出する電流検出手段と、
前記電動モータに印加される電圧を検出する電圧検出手段と、
前記電動モータが所定状態にあるときに所定の物理量につき順次取得される複数の検出値に基づき、前記電動モータの回路方程式におけるパラメータである前記電動モータの抵抗値および逆起電力定数のうち少なくとも1つのパラメータの値を更新パラメータ値として算出するパラメータ値更新手段と、
前記パラメータ値更新手段により算出される前記更新パラメータ値と前記電流検出手段により取得される電流検出値と前記電圧検出手段により取得される電圧検出値とを用いて、前記回路方程式に基づき、前記電動モータの回転速度を示す速度推定値を算出する推定値算出手段とを備え、
前記パラメータ値更新手段は、
前記更新パラメータ値の新たな算出のために前記物理量につき取得された検出値の個数が所定数以上であるときには、当該取得された検出値を用いて第1の所定方法により新たな更新パラメータ値を算出し、
前記更新パラメータ値の新たな算出のために前記物理量につき取得された検出値の個数が前記所定数よりも少ないときには、当該取得された検出値と既に得られている前記更新パラメータ値とを用いて第2の所定方法により新たな更新パラメータ値を算出し、
前記推定値算出手段は、前記パラメータ値更新手段によって新たな更新パラメータ値が算出されると、当該新たな更新パラメータ値を用いて前記速度推定値を算出することを特徴とする、モータ制御装置。
A motor control device that calculates an estimated value of the rotational speed of the electric motor based on a back electromotive force generated in the armature winding of the electric motor, and drives the electric motor using the estimated value,
Current detecting means for detecting a current flowing through the electric motor;
Voltage detecting means for detecting a voltage applied to the electric motor;
Based on a plurality of detection values sequentially acquired for a predetermined physical quantity when the electric motor is in a predetermined state, at least one of the resistance value of the electric motor and the back electromotive force constant, which are parameters in the circuit equation of the electric motor. Parameter value update means for calculating the value of one parameter as an update parameter value;
Using the updated parameter value calculated by the parameter value updating unit, the current detection value acquired by the current detection unit, and the voltage detection value acquired by the voltage detection unit, the electric motor based on the circuit equation An estimated value calculating means for calculating a speed estimated value indicating the rotational speed of the motor,
The parameter value updating means includes
When the number of detection values acquired for the physical quantity for a new calculation of the update parameter value is equal to or greater than a predetermined number, a new update parameter value is obtained by the first predetermined method using the acquired detection value. Calculate
When the number of detection values acquired for the physical quantity for a new calculation of the update parameter value is smaller than the predetermined number, the acquired detection value and the update parameter value already obtained are used. A new update parameter value is calculated by the second predetermined method,
When the new update parameter value is calculated by the parameter value update unit, the estimated value calculation unit calculates the speed estimated value using the new update parameter value.
前記電動モータの回転速度が0近傍の所定値以下か否かを判定する判定手段を更に備え、
前記パラメータ値更新手段は、前記判定手段によって前記電動モータの回転速度が前記所定値以下であると判定されているときに前記電流検出手段および電圧検出手段により前記物理量の検出値として順次取得される複数の電流検出値および電圧検出値に基づき前記電動モータの抵抗値を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値から当該検出時点における前記電動モータの抵抗値を算出抵抗値として求め、前記所定数の当該算出抵抗値についての移動平均値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値から当該検出時点における前記電動モータの抵抗値を算出抵抗値として求め、複数の当該算出抵抗値についての平均値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする、請求項1に記載のモータ制御装置。
A determination means for determining whether or not the rotation speed of the electric motor is equal to or less than a predetermined value near 0;
The parameter value updating means is sequentially acquired as the physical quantity detection value by the current detection means and voltage detection means when the determination means determines that the rotation speed of the electric motor is equal to or less than the predetermined value. Calculate a resistance value of the electric motor based on a plurality of current detection values and voltage detection values,
The first predetermined method obtains a resistance value of the electric motor at the detection time as a calculated resistance value from the current detection value and the voltage detection value at each detection time of the plurality of current detection values and voltage detection values, It is a method of calculating a moving average value for a predetermined number of the calculated resistance values as a new update parameter value,
In the second predetermined method, a resistance value of the electric motor at the detection time is obtained as a calculated resistance value from the current detection value and the voltage detection value at each detection time of the plurality of current detection values and voltage detection values. 2. The motor according to claim 1, wherein a weighted average value of an average value of the calculated resistance value and the update parameter value already obtained is calculated as a new update parameter value. Control device.
前記電動モータの回転速度を前記電動モータの駆動制御に必要な精度よりも低い精度で検出する簡易速度検出手段を更に備え、
前記パラメータ値更新手段は、前記簡易速度検出手段によって検出される回転速度が所定値以上であるときに前記物理量の検出値として前記電流検出手段および電圧検出手段により順次取得される複数の電流検出値および電圧検出値と前記簡易速度検出手段により順次取得される複数の回転速度検出値とに基づき、前記電動モータの抵抗値および逆起電力定数を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とが前記回路方程式を少なくとも近似的に満たすように、前記電動モータの抵抗値および逆起電力定数を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とが前記回路方程式を少なくとも近似的に満たすように、前記電動モータの抵抗値および逆起電力定数を仮パラメータ値として算出し、当該仮パラメータ値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする、請求項1に記載のモータ制御装置。
A simple speed detecting means for detecting the rotational speed of the electric motor with an accuracy lower than that required for drive control of the electric motor;
The parameter value update means includes a plurality of current detection values sequentially acquired by the current detection means and the voltage detection means as detection values of the physical quantity when the rotation speed detected by the simple speed detection means is a predetermined value or more. And a resistance value and a back electromotive force constant of the electric motor based on the voltage detection value and a plurality of rotation speed detection values sequentially obtained by the simple speed detection means,
In the first predetermined method, the current detection value, the voltage detection value, and the rotation speed detection value at each detection point of the plurality of current detection values and voltage detection values satisfy at least approximately the circuit equation. , Calculating the resistance value and back electromotive force constant of the electric motor as a new update parameter value,
In the second predetermined method, the current detection value, the voltage detection value, and the rotation speed detection value at each detection time of the plurality of current detection values and voltage detection values satisfy at least approximately the circuit equation. A method of calculating a resistance value and a back electromotive force constant of the electric motor as a temporary parameter value, and calculating a weighted average value of the temporary parameter value and the update parameter value already obtained as a new update parameter value The motor control device according to claim 1, wherein:
前記電動モータの回転速度が前記電動モータの駆動制御に必要な精度よりも低い精度で得られるような分解能で前記電動モータの回転角を検出する簡易角度検出手段を更に備え、
前記パラメータ値更新手段は、前記簡易角度検出手段により検出される回転角が変化して新たな回転角が第1回転角検出値として検出された第1時点から当該第1時点以降において前記簡易角度検出手段により検出される回転角が変化して新たな回転角が第2回転角検出値として検出される第2時点までに前記電流検出手段および電圧検出手段により前記物理量の検出値として順次取得される複数の電流検出値および電圧検出値に基づき、前記電動モータの抵抗値を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値ならびに前記第1および第2回転角を用いて、前記回路方程式を前記第1時点から前記第2時点まで積分した方程式より、前記電動モータの抵抗値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値ならびに前記第1および第2回転角を用いて、前記回路方程式を前記第1時点から前記第2時点まで積分した方程式より、前記電動モータの抵抗値を仮パラメータ値として算出し、当該仮パラメータ値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする、請求項1に記載のモータ制御装置。
A simple angle detecting means for detecting the rotation angle of the electric motor with a resolution such that the rotation speed of the electric motor is obtained with an accuracy lower than the accuracy required for drive control of the electric motor;
The parameter value updating means changes the simple angle from the first time point to the first time point when the rotation angle detected by the simple angle detection means is changed and a new rotation angle is detected as the first rotation angle detection value. Until the second time point when the rotation angle detected by the detection unit changes and a new rotation angle is detected as the second rotation angle detection value, the current detection unit and the voltage detection unit sequentially acquire the detection value of the physical quantity. A resistance value of the electric motor is calculated based on a plurality of detected current values and detected voltage values,
The first predetermined method is based on an equation obtained by integrating the circuit equation from the first time point to the second time point, using the plurality of current detection values and voltage detection values and the first and second rotation angles. It is a method of calculating the resistance value of the electric motor as a new update parameter value,
The second predetermined method is based on an equation obtained by integrating the circuit equation from the first time point to the second time point using the plurality of current detection values and voltage detection values and the first and second rotation angles. It is a method of calculating a resistance value of the electric motor as a temporary parameter value, and calculating a weighted average value of the temporary parameter value and the already obtained update parameter value as a new update parameter value. The motor control device according to claim 1.
前記電動モータの回転速度を前記電動モータの駆動制御に必要な精度よりも低い精度で検出する簡易速度検出手段を更に備え、
前記パラメータ値更新手段は、前記簡易速度検出手段によって検出される回転速度が所定値以上であるときに前記物理量の検出値として前記電流検出手段および電圧検出手段により順次取得される複数の電流検出値および電圧検出値と前記簡易速度検出手段により順次取得される複数の回転速度検出値とに基づき、前記電動モータの逆起電力定数を算出し、
前記第1の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とを用いて前記回路方程式より当該検出時点における前記電動モータの逆起電力定数を算出逆起電力定数として求め、前記所定数の当該算出逆起電力定数についての移動平均値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、前記複数の電流検出値および電圧検出値の各検出時点における当該電流検出値および電圧検出値と前記回転速度検出値とを用いて前記回路方程式より当該検出時点における前記電動モータの逆起電力定数を算出逆起電力定数として求め、複数の当該算出逆起電力定数についての平均値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする、請求項1に記載のモータ制御装置。
A simple speed detecting means for detecting the rotational speed of the electric motor with an accuracy lower than that required for drive control of the electric motor;
The parameter value update means includes a plurality of current detection values sequentially acquired by the current detection means and the voltage detection means as detection values of the physical quantity when the rotation speed detected by the simple speed detection means is a predetermined value or more. And a voltage detection value and a plurality of rotation speed detection values sequentially obtained by the simple speed detection means, to calculate a counter electromotive force constant of the electric motor,
The first predetermined method uses the current detection value, the voltage detection value, and the rotation speed detection value at each detection time of the plurality of current detection values and voltage detection values to determine the detection time at the detection time from the circuit equation. A method of obtaining a counter electromotive force constant of an electric motor as a calculated counter electromotive force constant, and calculating a moving average value for the predetermined number of the calculated counter electromotive force constants as a new update parameter value,
The second predetermined method uses the current detection value, the voltage detection value, and the rotation speed detection value at each detection time of the plurality of current detection values and voltage detection values to determine the detection time at the detection time from the circuit equation. A back electromotive force constant of the electric motor is obtained as a calculated back electromotive force constant, and a weighted average value of the average value of the plurality of calculated back electromotive force constants and the update parameter value already obtained is used as a new update parameter value. The motor control device according to claim 1, wherein the motor control device is a method of calculating.
前記電動モータの抵抗を構成する複数の抵抗成分のそれぞれに対応する装置の構成要素の温度を前記物理量として検出する温度検出手段を更に備え、
前記パラメータ値更新手段は、
前記複数の抵抗成分のそれぞれの温度特性を個別に保持している温度特性格納手段を含み、
前記温度検出手段によって各構成要素につき順次取得される複数の温度検出値を用いて前記温度特性に基づき前記電動モータの抵抗値を算出し、
前記第1の所定方法は、各構成要素につき順次取得された前記複数の温度検出値の各検出時点における当該温度検出値を用いて、当該構成要素に対応する抵抗成分の温度特性に基づき当該検出時点における当該抵抗成分の値を取得し、前記複数の抵抗成分についての当該値の和を前記電動モータの算出抵抗値として求め、前記所定数の当該算出抵抗値についての移動平均値を新たな更新パラメータ値として算出するという方法であり、
前記第2の所定方法は、各構成要素につき順次取得された前記複数の温度検出値の各検出時点における当該温度検出値を用いて、当該構成要素に対応する抵抗成分の温度特性に基づき当該検出時点における当該抵抗成分の値を取得し、前記複数の抵抗成分についての当該値の和を前記電動モータの算出抵抗値として求め、複数の当該算出抵抗値についての平均値と既に得られている前記更新パラメータ値との加重平均値を新たな更新パラメータ値として算出するという方法であることを特徴とする、請求項1に記載のモータ制御装置。
Temperature detecting means for detecting the temperature of the component of the device corresponding to each of the plurality of resistance components constituting the resistance of the electric motor as the physical quantity;
The parameter value updating means includes
Including temperature characteristic storage means for individually holding the temperature characteristics of the plurality of resistance components,
Calculate a resistance value of the electric motor based on the temperature characteristics using a plurality of temperature detection values sequentially acquired for each component by the temperature detection means,
The first predetermined method uses the temperature detection value at each detection time of the plurality of temperature detection values sequentially acquired for each component, and detects the detection based on the temperature characteristic of the resistance component corresponding to the component. The value of the resistance component at the time is acquired, the sum of the values for the plurality of resistance components is obtained as the calculated resistance value of the electric motor, and the moving average value for the predetermined number of calculated resistance values is newly updated. It is a method of calculating as a parameter value,
The second predetermined method uses the temperature detection value at each detection time of the plurality of temperature detection values sequentially acquired for each component, and detects the detection based on a temperature characteristic of a resistance component corresponding to the component. The value of the resistance component at the time is acquired, the sum of the values for the plurality of resistance components is obtained as the calculated resistance value of the electric motor, and the average value for the plurality of calculated resistance values is already obtained. The motor control device according to claim 1, wherein the weighted average value with the update parameter value is calculated as a new update parameter value.
車両のステアリング機構に電動モータによって操舵補助力を与える電動パワーステアリング装置であって、
請求項1から6のいずれか1項に記載のモータ制御装置を備え、
前記モータ制御装置は、前記ステアリング機構に前記操舵補助力を与える電動モータを駆動することを特徴とする、電動パワーステアリング装置。
An electric power steering device for applying a steering assist force to a steering mechanism of a vehicle by an electric motor,
The motor control device according to any one of claims 1 to 6, comprising:
The motor control device drives an electric motor that gives the steering assist force to the steering mechanism.
JP2009238387A 2009-10-15 2009-10-15 Motor controller and electric power steering device Pending JP2011087402A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009238387A JP2011087402A (en) 2009-10-15 2009-10-15 Motor controller and electric power steering device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009238387A JP2011087402A (en) 2009-10-15 2009-10-15 Motor controller and electric power steering device

Publications (1)

Publication Number Publication Date
JP2011087402A true JP2011087402A (en) 2011-04-28

Family

ID=44079950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009238387A Pending JP2011087402A (en) 2009-10-15 2009-10-15 Motor controller and electric power steering device

Country Status (1)

Country Link
JP (1) JP2011087402A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012236474A (en) * 2011-05-11 2012-12-06 Toyota Motor Corp Electric power steering device
JP2012245822A (en) * 2011-05-25 2012-12-13 Jtekt Corp Electric power steering device
WO2017103986A1 (en) * 2015-12-15 2017-06-22 オリンパス株式会社 Manipulator system and control method therefor
WO2020167124A1 (en) 2019-02-15 2020-08-20 Mci (Mirror Controls International) Netherlands B.V. Resistance determination in an electric motor assembly
KR20220075927A (en) * 2020-11-30 2022-06-08 한국생산기술연구원 An method estimating parameters of electric model for moter
CN113614544B (en) * 2019-02-15 2024-04-19 荷兰反光镜控制器国际有限公司 Resistance determination in an electric motor assembly

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012236474A (en) * 2011-05-11 2012-12-06 Toyota Motor Corp Electric power steering device
JP2012245822A (en) * 2011-05-25 2012-12-13 Jtekt Corp Electric power steering device
WO2017103986A1 (en) * 2015-12-15 2017-06-22 オリンパス株式会社 Manipulator system and control method therefor
WO2020167124A1 (en) 2019-02-15 2020-08-20 Mci (Mirror Controls International) Netherlands B.V. Resistance determination in an electric motor assembly
NL2022591B1 (en) * 2019-02-15 2020-08-28 Mci Mirror Controls Int Netherlands B V Resistance determination in an electric motor assembly
CN113614544A (en) * 2019-02-15 2021-11-05 荷兰反光镜控制器国际有限公司 Resistance determination in an electric motor assembly
US11757387B2 (en) 2019-02-15 2023-09-12 Mci (Mirror Controls International) Netherlands B.V. Resistance determination in an electric motor assembly
CN113614544B (en) * 2019-02-15 2024-04-19 荷兰反光镜控制器国际有限公司 Resistance determination in an electric motor assembly
KR20220075927A (en) * 2020-11-30 2022-06-08 한국생산기술연구원 An method estimating parameters of electric model for moter
KR102491232B1 (en) * 2020-11-30 2023-01-26 한국생산기술연구원 An method estimating parameters of electric model for moter

Similar Documents

Publication Publication Date Title
WO2010150745A1 (en) Motor control device and electric power steering apparatus
EP2293428B1 (en) Motor control device and electric power steering device
US8977432B2 (en) Vehicular steering control apparatus
CN107453683B (en) Method and system for controlling or managing a DC motor
JP2016088434A (en) Motor control device
JP4294380B2 (en) Vehicle steering system
JP2009165259A (en) Motor controller and electric power steering system
JP2011087402A (en) Motor controller and electric power steering device
JP2002325481A (en) Motor controller
CN104052344A (en) Rotating electric machine control device and electric power steering apparatus
JP2003212144A (en) Electric power steering system
JP5392530B2 (en) Motor control device
JP5493680B2 (en) Motor control device and electric power steering device
JP5585058B2 (en) Rotation angle detection device, motor control device, and electric power steering device
CN114389492A (en) Current capacity limitation of DC motors
JP5645062B2 (en) Motor control device
JP5729130B2 (en) Electric power steering device
JP2001128479A (en) Drive control method and device of dc commutatorless motor
JP2011010401A (en) Motor controller and motor-driven power steering device
JP2014000930A (en) Electric power steering apparatus for vehicle
JP7363176B2 (en) Motor control device, motor control method, and electric power steering device
WO2021193395A1 (en) Steering angle estimation device, steering device, and steering angle estimation method
JP6024976B2 (en) Steering angle sensor reliability determination device
JP2010130707A (en) Motor control device and electric power steering device
JP5999414B2 (en) Motor control device