JP2014219364A - Rotation angle detection apparatus - Google Patents
Rotation angle detection apparatus Download PDFInfo
- Publication number
- JP2014219364A JP2014219364A JP2013100613A JP2013100613A JP2014219364A JP 2014219364 A JP2014219364 A JP 2014219364A JP 2013100613 A JP2013100613 A JP 2013100613A JP 2013100613 A JP2013100613 A JP 2013100613A JP 2014219364 A JP2014219364 A JP 2014219364A
- Authority
- JP
- Japan
- Prior art keywords
- magnetic
- rotation angle
- magnetic sensor
- sensor
- calculation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01D—MEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
- G01D5/00—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
- G01D5/12—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
- G01D5/14—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage
- G01D5/24—Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing the magnitude of a current or voltage by varying capacitance
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Transmission And Conversion Of Sensor Element Output (AREA)
- Measurement Of Length, Angles, Or The Like Using Electric Or Magnetic Means (AREA)
Abstract
Description
この発明は、回転体の回転角を検出する回転角検出装置に関する。 The present invention relates to a rotation angle detection device that detects a rotation angle of a rotating body.
回転体の回転角を検出する回転角検出装置として、ブラシレスモータの回転に応じて回転する検出用ロータを用いて、ブラシレスモータのロータの回転角を検出する回転角検出装置が知られている。具体的には、図17に示すように、検出用ロータ201(以下、「ロータ201」という)は、ブラシレスモータのロータに設けられている磁極対に相当する複数の磁極対を有する円筒状の磁石202を備えている。ロータ201の周囲には、2つの磁気センサ221,222が、ロータ201の回転中心軸を中心として所定の角度間隔をおいて配置されている。各磁気センサ221,222からは、所定の位相差を有する正弦波信号が出力される。これらの2つの正弦波信号に基づいて、ロータ201の回転角(ブラシレスモータのロータの回転角)が検出される。 As a rotation angle detection device that detects the rotation angle of a rotating body, a rotation angle detection device that detects a rotation angle of a rotor of a brushless motor using a detection rotor that rotates in accordance with the rotation of the brushless motor is known. Specifically, as shown in FIG. 17, the detection rotor 201 (hereinafter referred to as “rotor 201”) has a cylindrical shape having a plurality of magnetic pole pairs corresponding to the magnetic pole pairs provided in the rotor of the brushless motor. A magnet 202 is provided. Two magnetic sensors 221 and 222 are disposed around the rotor 201 at a predetermined angular interval with the rotation center axis of the rotor 201 as the center. Each magnetic sensor 221 and 222 outputs a sine wave signal having a predetermined phase difference. Based on these two sine wave signals, the rotation angle of the rotor 201 (rotation angle of the rotor of the brushless motor) is detected.
この例では、磁石202は、5組の磁極対を有している。つまり、磁石102は、等角度間隔で配置された10個の磁極を有している。各磁極は、ロータ201の回転中心軸を中心として、36°(電気角では180°)の角度間隔で配置されている。また、2つの磁気センサ221,222は、ロータ201の回転中心軸を中心として18°(電気角では90°)の角度間隔をおいて配置されている。 In this example, the magnet 202 has five pairs of magnetic poles. That is, the magnet 102 has ten magnetic poles arranged at equiangular intervals. The magnetic poles are arranged at an angular interval of 36 ° (180 ° in electrical angle) around the rotation center axis of the rotor 201. The two magnetic sensors 221 and 222 are arranged at an angular interval of 18 ° (90 ° in electrical angle) with the rotation center axis of the rotor 201 as the center.
図17に矢印で示す方向を検出用ロータ201の正方向の回転方向とする。そして、ロータ201が正方向に回転されるとロータ201の回転角が大きくなり、ロータ201が逆方向に回転されると、ロータ201の回転角が小さくなるものとする。各磁気センサ221,222からは、図18に示すように、ロータ201が1磁極対分に相当する角度(72°(電気角では360°))を回転する期間を一周期とする正弦波信号S1,S2が出力される。 A direction indicated by an arrow in FIG. 17 is a positive rotation direction of the detection rotor 201. When the rotor 201 is rotated in the forward direction, the rotation angle of the rotor 201 is increased. When the rotor 201 is rotated in the reverse direction, the rotation angle of the rotor 201 is decreased. As shown in FIG. 18, from each magnetic sensor 221, 222, a sine wave signal having a period during which the rotor 201 rotates an angle corresponding to one magnetic pole pair (72 ° (360 ° in electrical angle)) is one cycle. S 1 and S 2 are output.
ロータ201の1回転分の角度範囲を、5つの磁極対に対応して5つの区間に分け、各区間の開始位置を0°とし終了位置を360°として表したロータ201の回転角を、ロータ201の電気角θということにする。
ここでは、第1磁気センサ221からは、S1=A1・sinθの出力信号が出力され、第2磁気センサ222からは、S2=A2・cosθの出力信号が出力されるものとする。A1,A2は、振幅である。両出力信号S1,S2の振幅A1,A2が互いに等しいとみなすと、ロータ201の電気角θは、両出力信号S1,S2を用いて、次式に基づいて求めることができる。
The angle range for one rotation of the rotor 201 is divided into five sections corresponding to the five magnetic pole pairs, and the rotation angle of the rotor 201 expressed as the start position of each section is 0 ° and the end position is 360 ° The electric angle θ of 201 is assumed.
Here, an output signal of S 1 = A 1 · sin θ is output from the first magnetic sensor 221, and an output signal of S 2 = A 2 · cos θ is output from the second magnetic sensor 222. . A 1 and A 2 are amplitudes. Assuming that the amplitudes A 1 and A 2 of the two output signals S 1 and S 2 are equal to each other, the electrical angle θ of the rotor 201 can be obtained based on the following equation using both the output signals S 1 and S 2. it can.
θ=tan−1(sinθ/cosθ)
=tan−1(S1/S2)
このようにして、求められた電気角θを使って、ブラシレスモータを制御する。
θ = tan −1 (sinθ / cosθ)
= Tan −1 (S 1 / S 2 )
In this way, the brushless motor is controlled using the obtained electrical angle θ.
前述したような従来の回転角検出装置においては、両磁気センサ221,222の出力信号S1,S2の振幅A1,A2が等しいとみなして回転角θを演算しているが、両出力信号S1,S2の振幅A1,A2は、両磁気センサ221,222の温度特性のばらつきおよび温度変化に応じて変化する。このため、両磁気センサ221,222の温度特性のばらつきおよび温度変化によって、ロータの回転角の検出に誤差が発生する。 In the conventional rotation angle detection device as described above, the rotation angle θ is calculated on the assumption that the amplitudes A 1 and A 2 of the output signals S 1 and S 2 of the magnetic sensors 221 and 222 are equal. The amplitudes A 1 and A 2 of the output signals S 1 and S 2 change according to variations in temperature characteristics of the magnetic sensors 221 and 222 and changes in temperature. For this reason, an error occurs in detection of the rotation angle of the rotor due to variations in temperature characteristics and temperature changes of both magnetic sensors 221 and 222.
この発明の目的は、精度の高い回転角を検出できる回転角検出装置を提供することである。 An object of the present invention is to provide a rotation angle detection device capable of detecting a rotation angle with high accuracy.
請求項1記載の発明は、回転体(8)の回転角を演算する回転角演算装置(77A)であって、前記回転体の回転に応じて回転し、複数の磁極を有する環状の多極磁石(61)と、前記多極磁石の周方向に並んで配置され、前記多極磁石の回転に応じて位相差を有する正弦波信号をそれぞれ出力する3つの磁気センサ(71,72,73)であって、これら3つの磁気センサのうちの中央の磁気センサと他の一方の磁気センサとの間の角度間隔と、前記中央の磁気センサと他の他方の磁気センサとの間の角度間隔との和が、電気角で180度未満である3つの磁気センサと、前記各磁気センサに故障が発生したか否かを判定する故障判定手段(77A,S1)と、前記3つの磁気センサのうちの中央の磁気センサを含む少なくとも2つの磁気センサが正常である場合において、中央の磁気センサを含む正常な2つの磁気センサが共に同じ1つの磁極を所定複数サンプリング周期連続して検出しているという第1条件を満たしているときには、それらの2つの磁気センサの前記所定複数サンプリング分の出力信号に基づいて、前記回転体の回転角を演算する第1演算手段(77A,S84,S85,S88,S89)と、前記3つの磁気センサのうちの中央の磁気センサのみが故障している場合において、中央の磁気センサを除く正常な2つの磁気センサが共に同じ1つの磁極を所定複数サンプリング周期連続して検出しているという第2条件を満たしているときには、それらの2つの磁気センサの前記所定複数サンプリング分の出力信号に基づいて、前記回転体の回転角を演算する第2演算手段(77A,S97,S98)とを含む、回転角演算装置である。なお、括弧内の英数字は、後述の実施形態における対応構成要素等を表すが、むろん、この発明の範囲は当該実施形態に限定されない。以下、この項において同じ。 The invention according to claim 1 is a rotation angle calculation device (77A) for calculating the rotation angle of the rotating body (8), which rotates in accordance with the rotation of the rotating body and has a plurality of magnetic poles. A magnet (61) and three magnetic sensors (71, 72, 73) that are arranged side by side in the circumferential direction of the multipolar magnet and each output a sine wave signal having a phase difference according to the rotation of the multipolar magnet. Of these three magnetic sensors, an angular interval between the central magnetic sensor and the other magnetic sensor, and an angular interval between the central magnetic sensor and the other magnetic sensor, Of three magnetic sensors whose electrical angle is less than 180 degrees, failure determination means (77A, S1) for determining whether or not a failure has occurred in each of the magnetic sensors, and among the three magnetic sensors At least two magnets including a central magnetic sensor In the case where the sensor is normal, when two normal magnetic sensors including the central magnetic sensor satisfy the first condition that both of them detect the same magnetic pole continuously for a predetermined sampling period, those sensors First calculation means (77A, S84, S85, S88, S89) for calculating the rotation angle of the rotating body based on the output signals of the predetermined plural samplings of the two magnetic sensors, and among the three magnetic sensors In the case where only the center magnetic sensor of the sensor fails, the second condition that both normal two magnetic sensors except the center magnetic sensor detect the same magnetic pole continuously for a predetermined number of sampling periods is satisfied. The rotation angle of the rotating body is calculated based on the output signals for the predetermined multiple samplings of the two magnetic sensors. And a second calculation means (77A, S97, S98), a rotation angle calculation unit. In addition, although the alphanumeric character in parentheses represents a corresponding component in an embodiment described later, of course, the scope of the present invention is not limited to the embodiment. The same applies hereinafter.
この発明では、3つの磁気センサのうちの中央の磁気センサと他の一方の磁気センサとの間の角度間隔と、前記中央の磁気センサと他の他方の磁気センサとの間の角度間隔との和が、電気角で180度未満である。このため、3つの磁気センサのうちのいずれの1つの磁気センサが故障した場合であっても、正常な2つの磁気センサが共に同じ1つの磁極を所定複数サンプリング周期連続して検出しているという状態が発生しうる。 In the present invention, an angular interval between the central magnetic sensor and the other one of the three magnetic sensors, and an angular interval between the central magnetic sensor and the other magnetic sensor. The sum is less than 180 degrees in electrical angle. For this reason, even if any one of the three magnetic sensors fails, the two normal magnetic sensors both detect the same magnetic pole continuously for a predetermined number of sampling periods. A condition can occur.
正常な2つの磁気センサが共に同じ1つの磁極を所定複数サンプリング周期連続して検出しているという条件(前記第1条件および前記第2条件のうちの少なくとも一方の条件)を満たしている場合には、正常な2つの磁気センサの所定複数サンプリング分の出力信号に基づいて回転体の回転角を演算することにより、精度の高い回転角を演算することが可能である。これにより、3つの磁気センサのうちのいずれの1つの磁気センサが故障した場合であっても、前記第1条件および前記第2条件のうちの少なくとも一方の条件を満たしているときには、精度の高い回転角を演算することが可能となる。 When two normal magnetic sensors satisfy the condition (at least one of the first condition and the second condition) that the same magnetic pole is detected continuously for a predetermined plurality of sampling periods Can calculate the rotation angle with high accuracy by calculating the rotation angle of the rotating body based on the output signals of a predetermined number of samplings of two normal magnetic sensors. As a result, even if any one of the three magnetic sensors fails, the accuracy is high when at least one of the first condition and the second condition is satisfied. The rotation angle can be calculated.
請求項2記載の発明は、前記第1演算手段は、前記第1条件を満たしているときに、常にまたは前記中央の磁気センサを含む正常な2つの磁気センサの前記所定複数サンプリング分の出力信号が一定の要件を満たしているときには、それらの2つの磁気センサが検出している磁極の磁極幅に関する情報および/またはそれらの2つの磁気センサの出力信号の振幅に関する情報を演算して当該磁極に関連付けて記憶する手段(77A,S87,S91)を含んでおり、前記第2演算手段は、前記第2条件を満たしているときに、常にまたは前記中央の磁気センサを除く正常な2つの磁気センサの前記所定複数サンプリング分の出力信号が一定の要件を満たしているときには、それらの2つの磁気センサが検出している磁極の磁極幅に関する情報および/またはそれらの2つの磁気センサの出力信号の振幅に関する情報を演算して当該磁極に関連付けて記憶する手段(77A,S100)を含んでおり、前記3つの磁気センサのうちの中央の磁気センサを含む少なくとも2つの磁気センサが正常である場合において、前記第1条件を満たしていないときには、正常な磁気センサのうち、磁極幅に関する情報および/または振幅に関する情報が関連付けて記憶されている磁極を検出している1つの磁気センサを含む2つの磁気センサの1サンプリング分の出力信号と、前記第1演算手段によって記憶されている前記情報とを用いて、前記回転体の回転角を演算する第3演算手段(77A,S93,S95,S96)と、前記3つの磁気センサのうちの前記中央の磁気センサのみが故障している場合において、前記第2条件を満たしておらずかつ前記中央の磁気センサを除く正常な2つの磁気センサが検出している磁極のうちの少なくとも一方の磁極に関連して、の磁極幅に関する情報および/または振幅に関する情報が記憶されている場合には、正常な2つの磁気センサの1サンプリング分の出力信号と、前記第2演算手段によって記憶されている前記情報とを用いて、前記回転体の回転角を演算する第4演算手段(77A,S102,S104)とをさらに含む、請求項1に記載の回転角演算装置である。 According to a second aspect of the present invention, when the first calculation means satisfies the first condition, an output signal for the predetermined plural samplings of two normal magnetic sensors including the central magnetic sensor always or when the first condition is satisfied. When the information satisfies a certain requirement, the information on the magnetic pole width of the magnetic pole detected by the two magnetic sensors and / or the information on the amplitude of the output signal of the two magnetic sensors is calculated and applied to the magnetic pole. Means (77A, S87, S91) for storing in association with each other, and the second calculation means always or normally two magnetic sensors excluding the central magnetic sensor when the second condition is satisfied Information on the magnetic pole widths of the magnetic poles detected by the two magnetic sensors when the output signals for the predetermined plurality of samplings satisfy certain requirements And / or means (77A, S100) for calculating and storing information relating to the amplitudes of the output signals of the two magnetic sensors in association with the magnetic poles, the central magnetic sensor of the three magnetic sensors. When the first condition is not satisfied when at least two magnetic sensors including the normal magnetic sensor are included, information on the magnetic pole width and / or information on the amplitude are stored in association with each other. First, the rotation angle of the rotating body is calculated using output signals for one sampling of two magnetic sensors including one detected magnetic sensor and the information stored by the first calculation means. Only three arithmetic means (77A, S93, S95, S96) and the central magnetic sensor among the three magnetic sensors are out of order. Information on the magnetic pole width in relation to at least one of the magnetic poles detected by the two normal magnetic sensors excluding the central magnetic sensor and not satisfying the second condition. And / or the information on the amplitude is stored, the output signal for one sampling of two normal magnetic sensors and the information stored by the second calculation means are used to obtain the rotating body. The rotation angle calculation device according to claim 1, further comprising fourth calculation means (77A, S102, S104) for calculating the rotation angle.
この構成によれば、3つの磁気センサのうちの中央の磁気センサを含む少なくとも2つの磁気センサが正常である場合において、第1条件を満たしていないときであっても、精度の高い回転角を演算することが可能となる。また、3つの磁気センサのうちの中央の磁気センサのみが故障している場合において、第2条件を満たしていないときであっても、中央の磁気センサを除く正常な2つの磁気センサが検出している磁極のうちの少なくとも一方の磁極に関連して、磁極幅に関する情報および/または振幅に関する情報が記憶されている場合には、精度の高い回転角を演算することが可能となる。 According to this configuration, when at least two magnetic sensors including the central magnetic sensor among the three magnetic sensors are normal, even when the first condition is not satisfied, a highly accurate rotation angle is obtained. It becomes possible to calculate. In addition, when only the central magnetic sensor of the three magnetic sensors is out of order, the normal two magnetic sensors excluding the central magnetic sensor detect even when the second condition is not satisfied. In the case where information on the magnetic pole width and / or information on the amplitude is stored in association with at least one of the magnetic poles, the rotation angle can be calculated with high accuracy.
請求項3記載の発明は、前記3つの磁気センサを第1磁気センサ、第2磁気センサおよび第3磁気センサとし、前記第2磁気センサが前記中央の磁気センサであるとすると、前記第2磁気センサと前記第1磁気センサとの間の角度間隔が電気角で60度であり、前記第2磁気センサと前記第3磁気センサとの間の角度間隔が電気角で60度である、請求項1または2に記載の回転角演算装置である。 According to a third aspect of the present invention, when the three magnetic sensors are a first magnetic sensor, a second magnetic sensor, and a third magnetic sensor, and the second magnetic sensor is the central magnetic sensor, the second magnetic sensor The angular interval between a sensor and the first magnetic sensor is 60 degrees in electrical angle, and the angular interval between the second magnetic sensor and the third magnetic sensor is 60 degrees in electrical angle. The rotation angle calculation device according to 1 or 2.
以下では、この発明の実施形態を、添付図面を参照して詳細に説明する。
図1は、本発明の第1実施形態に係る回転角検出装置が適用されたトルクセンサを備えた電動パワーステアリング装置の概略構成を示す模式図である。
電動パワーステアリング装置1は、車両を操向するための操舵部材としてのステアリングホイール2と、このステアリングホイール2の回転に連動して転舵輪3を転舵する転舵機構4と、運転者の操舵を補助するための操舵補助機構5とを備えている。ステアリングホイール2と転舵機構4とは、ステアリングシャフト6および中間軸7を介して機械的に連結されている。
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 is a schematic diagram illustrating a schematic configuration of an electric power steering apparatus including a torque sensor to which a rotation angle detection apparatus according to a first embodiment of the present invention is applied.
The electric power steering apparatus 1 includes a steering wheel 2 as a steering member for steering the vehicle, a steering mechanism 4 that steers the steered wheels 3 in conjunction with the rotation of the steering wheel 2, and steering by the driver. And a steering assist mechanism 5 for assisting. The steering wheel 2 and the steering mechanism 4 are mechanically coupled via a steering shaft 6 and an intermediate shaft 7.
ステアリングシャフト6は、ステアリングホイール2に連結された入力軸8と、中間軸7に連結された出力軸9とを含む。入力軸8と出力軸9とは、トーションバー10を介して同一軸線上で相対回転可能に連結されている。すなわち、ステアリングホイール2が回転されると、入力軸8および出力軸9は、互いに相対回転しつつ同一方向に回転するようになっている。 The steering shaft 6 includes an input shaft 8 connected to the steering wheel 2 and an output shaft 9 connected to the intermediate shaft 7. The input shaft 8 and the output shaft 9 are connected via a torsion bar 10 so as to be relatively rotatable on the same axis. That is, when the steering wheel 2 is rotated, the input shaft 8 and the output shaft 9 rotate in the same direction while rotating relative to each other.
ステアリングシャフト6の周囲には、本発明の一実施形態に係る回転角検出装置が適用されたトルクセンサ(トルク検出装置)11が設けられている。トルクセンサ11は、入力軸8および出力軸9の相対回転変位量に基づいて、ステアリングホイール2に与えられた操舵トルクを検出する。トルクセンサ11によって検出される操舵トルクは、モータ制御用ECU(電子制御ユニット:Electronic Control Unit)12に入力される。 Around the steering shaft 6 is provided a torque sensor (torque detection device) 11 to which the rotation angle detection device according to one embodiment of the present invention is applied. The torque sensor 11 detects the steering torque applied to the steering wheel 2 based on the relative rotational displacement amount of the input shaft 8 and the output shaft 9. The steering torque detected by the torque sensor 11 is input to a motor control ECU (Electronic Control Unit) 12.
転舵機構4は、ピニオン軸13と、転舵軸としてのラック軸14とを含むラックアンドピニオン機構からなる。ラック軸14の各端部には、タイロッド15およびナックルアーム(図示略)を介して転舵輪3が連結されている。ピニオン軸13は、中間軸7に連結されている。ピニオン軸13は、ステアリングホイール2の操舵に連動して回転するようになっている。ピニオン軸13の先端には、ピニオン16が連結されている。 The steered mechanism 4 includes a rack and pinion mechanism including a pinion shaft 13 and a rack shaft 14 as a steered shaft. The steered wheel 3 is connected to each end of the rack shaft 14 via a tie rod 15 and a knuckle arm (not shown). The pinion shaft 13 is connected to the intermediate shaft 7. The pinion shaft 13 rotates in conjunction with the steering of the steering wheel 2. A pinion 16 is connected to the tip of the pinion shaft 13.
ラック軸14は、自動車の左右方向(直進方向に直交する方向)に沿って直線状に延びている。ラック軸14の軸方向の中間部には、ピニオン16に噛み合うラック17が形成されている。このピニオン16およびラック17によって、ピニオン軸13の回転がラック軸14の軸方向移動に変換される。ラック軸14を軸方向に移動させることによって、転舵輪3を転舵することができる。 The rack shaft 14 extends linearly along the left-right direction of the automobile (a direction orthogonal to the straight-ahead direction). A rack 17 that meshes with the pinion 16 is formed at an intermediate portion in the axial direction of the rack shaft 14. By the pinion 16 and the rack 17, the rotation of the pinion shaft 13 is converted into the axial movement of the rack shaft 14. The steered wheels 3 can be steered by moving the rack shaft 14 in the axial direction.
ステアリングホイール2が操舵(回転)されると、この回転が、ステアリングシャフト6および中間軸7を介して、ピニオン軸13に伝達される。そして、ピニオン軸13の回転は、ピニオン16およびラック17によって、ラック軸14の軸方向移動に変換される。これにより、転舵輪3が転舵される。
操舵補助機構5は、操舵補助力を発生するための電動モータ18と、電動モータ18の出力トルクを転舵機構4に伝達するための減速機構19とを含む。電動モータ18は、この実施形態では、三相ブラシレスモータからなる。減速機構19は、ウォーム軸20と、このウォーム軸20と噛み合うウォームホイール21とを含むウォームギヤ機構からなる。減速機構19は、伝達機構ハウジングとしてのギヤハウジング22内に収容されている。
When the steering wheel 2 is steered (rotated), this rotation is transmitted to the pinion shaft 13 via the steering shaft 6 and the intermediate shaft 7. The rotation of the pinion shaft 13 is converted into an axial movement of the rack shaft 14 by the pinion 16 and the rack 17. Thereby, the steered wheel 3 is steered.
The steering assist mechanism 5 includes an electric motor 18 for generating a steering assist force, and a speed reduction mechanism 19 for transmitting the output torque of the electric motor 18 to the steering mechanism 4. In this embodiment, the electric motor 18 is a three-phase brushless motor. The speed reduction mechanism 19 includes a worm gear mechanism that includes a worm shaft 20 and a worm wheel 21 that meshes with the worm shaft 20. The speed reduction mechanism 19 is accommodated in a gear housing 22 as a transmission mechanism housing.
ウォーム軸20は、電動モータ18によって回転駆動される。また、ウォームホイール21は、ステアリングシャフト6とは同方向に回転可能に連結されている。ウォームホイール21は、ウォーム軸20によって回転駆動される。
電動モータ18によってウォーム軸20が回転駆動されると、ウォームホイール21が回転駆動され、ステアリングシャフト6が回転する。そして、ステアリングシャフト6の回転は、中間軸7を介してピニオン軸13に伝達される。ピニオン軸13の回転は、ラック軸14の軸方向移動に変換される。これにより、転舵輪3が転舵される。すなわち、電動モータ18によってウォーム軸20を回転駆動することによって、転舵輪3が転舵されるようになっている。
The worm shaft 20 is rotationally driven by the electric motor 18. The worm wheel 21 is coupled to the steering shaft 6 so as to be rotatable in the same direction. The worm wheel 21 is rotationally driven by the worm shaft 20.
When the worm shaft 20 is rotationally driven by the electric motor 18, the worm wheel 21 is rotationally driven and the steering shaft 6 rotates. The rotation of the steering shaft 6 is transmitted to the pinion shaft 13 via the intermediate shaft 7. The rotation of the pinion shaft 13 is converted into the axial movement of the rack shaft 14. Thereby, the steered wheel 3 is steered. That is, the wheel 3 is steered by rotating the worm shaft 20 by the electric motor 18.
電動モータ18のロータの回転角(ロータ回転角)は、レゾルバ等の回転角センサ25によって検出される。回転角センサ25の出力信号は、モータ制御用ECU12に入力される。電動モータ18は、モータ制御装置としてのモータ制御用ECU12によって制御される。
図2は、モータ制御用ECU12の電気的構成を示す概略図である。
The rotation angle of the rotor of the electric motor 18 (rotor rotation angle) is detected by a rotation angle sensor 25 such as a resolver. The output signal of the rotation angle sensor 25 is input to the motor control ECU 12. The electric motor 18 is controlled by a motor control ECU 12 as a motor control device.
FIG. 2 is a schematic diagram showing an electrical configuration of the motor control ECU 12.
モータ制御用ECU12は、トルクセンサ11によって検出される操舵トルクThに応じて電動モータ18を駆動することによって、操舵状況に応じた適切な操舵補助を実現する。モータ制御用ECU12は、マイクロコンピュータ40と、マイクロコンピュータ40によって制御され、電動モータ18に電力を供給する駆動回路(インバータ回路)31と、電動モータ18に流れるモータ電流を検出する電流検出部32とを備えている。 The motor control ECU 12 drives the electric motor 18 according to the steering torque Th detected by the torque sensor 11, thereby realizing appropriate steering assistance according to the steering situation. The motor control ECU 12 includes a microcomputer 40, a drive circuit (inverter circuit) 31 that is controlled by the microcomputer 40 and supplies electric power to the electric motor 18, and a current detection unit 32 that detects a motor current flowing through the electric motor 18. It has.
電動モータ18は、例えば三相ブラシレスモータであり、図3に図解的に示すように、界磁としてのロータ100と、U相、V相およびW相のステータ巻線101,102,103を含むステータ105とを備えている。電動モータ18は、ロータの外部にステータを対向配置したインナーロータ型のものであってもよいし、筒状のロータの内部にステータを対向配置したアウターロータ型のものであってもよい。 The electric motor 18 is, for example, a three-phase brushless motor, and includes a rotor 100 as a field and U-phase, V-phase, and W-phase stator windings 101, 102, and 103, as schematically shown in FIG. And a stator 105. The electric motor 18 may be of an inner rotor type having a stator opposed to the outside of the rotor, or may be of an outer rotor type having a stator opposed to the inside of a cylindrical rotor.
各相のステータ巻線101,102,103の方向にU軸、V軸およびW軸をとった三相固定座標(UVW座標系)が定義される。また、ロータ100の磁極方向にd軸(磁極軸)をとり、ロータ100の回転平面内においてd軸と直角な方向にq軸(トルク軸)をとった二相回転座標系(dq座標系。実回転座標系)が定義される。dq座標系は、ロータ100とともに回転する回転座標系である。dq座標系では、q軸電流のみがロータ100のトルク発生に寄与するので、d軸電流を零とし、q軸電流を所望のトルクに応じて制御すればよい。ロータ100の回転角(電気角)θ-Sは、U軸に対するd軸の回転角である。dq座標系は、ロータ角θ-Sに従う実回転座標系である。このロータ角θ-Sを用いることによって、UVW座標系とdq座標系との間での座標変換を行うことができる。 Three-phase fixed coordinates (UVW coordinate system) are defined in which the U, V, and W axes are taken in the direction of the stator windings 101, 102, and 103 of each phase. Further, a two-phase rotational coordinate system (dq coordinate system) in which the d axis (magnetic pole axis) is taken in the magnetic pole direction of the rotor 100 and the q axis (torque axis) is taken in a direction perpendicular to the d axis in the rotation plane of the rotor 100. The actual rotating coordinate system) is defined. The dq coordinate system is a rotating coordinate system that rotates with the rotor 100. In the dq coordinate system, since only the q-axis current contributes to the torque generation of the rotor 100, the d-axis current may be set to zero and the q-axis current may be controlled according to the desired torque. The rotation angle (electrical angle) θ- S of the rotor 100 is the rotation angle of the d axis with respect to the U axis. The dq coordinate system is an actual rotating coordinate system according to the rotor angle θ- S . By using this rotor angle θ- S , coordinate conversion between the UVW coordinate system and the dq coordinate system can be performed.
マイクロコンピュータ40は、CPUおよびメモリ(ROM、RAM、不揮発性メモリなど)を備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。この複数の機能処理部には、電流指令値設定部41と、電流偏差演算部42と、PI(比例積分)制御部43と、dq/UVW変換部44と、PWM(Pulse Width Modulation)制御部45と、UVW/dq変換部46と、回転角演算部47とを含む。 The microcomputer 40 includes a CPU and a memory (ROM, RAM, non-volatile memory, etc.), and functions as a plurality of function processing units by executing a predetermined program. The plurality of function processing units include a current command value setting unit 41, a current deviation calculation unit 42, a PI (proportional integration) control unit 43, a dq / UVW conversion unit 44, and a PWM (Pulse Width Modulation) control unit. 45, a UVW / dq conversion unit 46, and a rotation angle calculation unit 47.
回転角演算部47は、回転角センサ25の出力信号に基づいて、電動モータ18のロータの回転角(電気角。以下、「ロータ角θS」という。)を演算する。
電流指令値設定部41は、dq座標系の座標軸に流すべき電流値を電流指令値として設定する。具体的には、電流指令値設定部41は、d軸電流指令値Id *およびq軸電流指令値Iq *(以下、これらを総称するときには「二相電流指令値Idq *」という。)を設定する。さらに具体的には、電流指令値設定部41は、q軸電流指令値Iq *を有意値とする一方で、d軸電流指令値Id *を零とする。より具体的には、電流指令値設定部41は、トルクセンサ11によって検出される操舵トルク(検出操舵トルク)Thに基づいて、q軸電流指令値Iq *を設定する。
The rotation angle calculation unit 47 calculates the rotation angle of the rotor of the electric motor 18 (electrical angle; hereinafter referred to as “rotor angle θ S ”) based on the output signal of the rotation angle sensor 25.
The current command value setting unit 41 sets a current value to be passed through the coordinate axes of the dq coordinate system as a current command value. Specifically, the current command value setting unit 41 refers to a d-axis current command value I d * and a q-axis current command value I q * (hereinafter, collectively referred to as “two-phase current command value I dq * ”). ) Is set. More specifically, the current command value setting unit 41 sets the q-axis current command value I q * to a significant value and sets the d-axis current command value I d * to zero. More specifically, the current command value setting unit 41 sets the q-axis current command value I q * based on the steering torque (detected steering torque) Th detected by the torque sensor 11.
検出操舵トルクThに対するq軸電流指令値Iq *の設定例は、図4に示されている。検出操舵トルクThは、たとえば、右方向への操舵のためのトルクが正の値にとられ、左方向への操舵のためのトルクが負の値にとられている。また、q軸電流指令値Iq *は、電動モータ18から右方向操舵のための操作補助力を発生させるべきときには正の値とされ、電動モータ18から左方向操舵のための操作補助力を発生させるべきときには負の値とされる。q軸電流指令値Iq *は、検出操舵トルクThの正の値に対しては正をとり、検出操舵トルクThの負の値に対しては負をとる。検出操舵トルクThが零のときには、q軸電流指令値Iq *は零とされる。そして、検出操舵トルクThの絶対値が大きくなるほど、q軸電流指令値Iq *の絶対値が大きくなるように、q軸電流指令値Iq *が設定されている。 A setting example of the q-axis current command value I q * for the detected steering torque Th is shown in FIG. For the detected steering torque Th, for example, the torque for steering in the right direction is a positive value, and the torque for steering in the left direction is a negative value. The q-axis current command value I q * is a positive value when an operation assisting force for rightward steering is to be generated from the electric motor 18, and the operation assisting force for leftward steering from the electric motor 18 is When it should be generated, it is a negative value. The q-axis current command value I q * is positive for a positive value of the detected steering torque Th and negative for a negative value of the detected steering torque Th. When the detected steering torque Th is zero, the q-axis current command value I q * is zero. The q-axis current command value I q * is set so that the absolute value of the q-axis current command value I q * increases as the absolute value of the detected steering torque Th increases.
電流指令値設定部41によって設定された二相電流指令値Idq *は、電流偏差演算部42に与えられる。
電流検出部32は、電動モータ18のU相電流IU、V相電流IVおよびW相電流IW(以下、これらを総称するときは、「三相検出電流IUVW」という。)を検出する。電流検出部32によって検出された三相検出電流IUVWは、UVW/dq変換部46に与えられる。
The two-phase current command value I dq * set by the current command value setting unit 41 is given to the current deviation calculation unit 42.
The current detection unit 32 detects the U-phase current I U , the V-phase current I V, and the W-phase current I W (hereinafter collectively referred to as “three-phase detection current I UVW ”) of the electric motor 18. To do. The three-phase detection current I UVW detected by the current detection unit 32 is given to the UVW / dq conversion unit 46.
UVW/dq変換部46は、電流検出部32によって検出されるUVW座標系の三相検出電流IUVW(U相電流IU、V相電流IVおよびW相電流IW)を、dq座標系の二相検出電流IdおよびIq(以下総称するときには「二相検出電流Idq」という。)に座標変換する。この座標変換には、回転角演算部47によって演算されたロータ角θSが用いられる。 The UVW / dq converter 46 converts the three-phase detection current I UVW (U-phase current I U , V-phase current I V and W-phase current I W ) in the UVW coordinate system detected by the current detector 32 into the dq coordinate system. Are transformed into two-phase detection currents I d and I q (hereinafter collectively referred to as “two-phase detection current I dq ”). For this coordinate conversion, the rotor angle θ S calculated by the rotation angle calculation unit 47 is used.
電流偏差演算部42は、電流指令値設定部41によって設定される二相電流指令値Idq *と、UVW/dq変換部46から与えられる二相検出電流Idqとの偏差を演算する。より具体的には、電流偏差演算部42は、d軸電流指令値Id *に対するd軸検出電流Idの偏差およびq軸電流指令値Iq *に対するq軸検出電流Iqの偏差を演算する。これらの偏差は、PI制御部43に与えられる。 The current deviation calculation unit 42 calculates a deviation between the two-phase current command value I dq * set by the current command value setting unit 41 and the two-phase detection current I dq given from the UVW / dq conversion unit 46. More specifically, the current deviation calculation unit 42 calculates the deviation of the d-axis detection current I d with respect to the d-axis current command value I d * and the deviation of the q-axis detection current I q with respect to the q-axis current command value I q * . To do. These deviations are given to the PI control unit 43.
PI制御部43は、電流偏差演算部42によって演算された電流偏差に対するPI演算を行なうことにより、電動モータ18に印加すべき二相電圧指令値Vdq *(d軸電圧指令値Vd *およびq軸電圧指令値Vq *)を生成する。この二相電圧指令値Vdq *は、dq/UVW変換部44に与えられる。
dq/UVW変換部44は、二相電圧指令値Vdq *を三相電圧指令値VUVW *に座標変換する。この座標変換には、回転角演算部47によって演算されたロータ角θSが用いられる。三相電圧指令値VUVW *は、U相電圧指令値VU *、V相電圧指令値VV *およびW相電圧指令値VW *からなる。この三相電圧指令値VUVW *は、PWM制御部45に与えられる。
The PI control unit 43 performs a PI calculation on the current deviation calculated by the current deviation calculation unit 42 to thereby provide a two-phase voltage command value V dq * (d-axis voltage command value V d * and a d-axis voltage command value to be applied to the electric motor 18. q-axis voltage command value V q * ) is generated. The two-phase voltage command value V dq * is given to the dq / UVW converter 44.
The dq / UVW conversion unit 44 performs coordinate conversion of the two-phase voltage command value V dq * into the three-phase voltage command value V UVW * . For this coordinate conversion, the rotor angle θ S calculated by the rotation angle calculation unit 47 is used. The three-phase voltage command value V UVW * includes a U-phase voltage command value V U * , a V-phase voltage command value V V *, and a W-phase voltage command value V W * . This three-phase voltage command value V UVW * is given to the PWM control unit 45.
PWM制御部45は、U相電圧指令値VU *、V相電圧指令値VV *およびW相電圧指令値VW *にそれぞれ対応するデューティのU相PWM制御信号、V相PWM制御信号およびW相PWM制御信号を生成し、駆動回路31に供給する。
駆動回路31は、U相、V相およびW相に対応した三相インバータ回路からなる。このインバータ回路を構成するパワー素子がPWM制御部45から与えられるPWM制御信号によって制御されることにより、三相電圧指令値VUVW *に相当する電圧が電動モータ18の各相のステータ巻線101,102、103に印加されることになる。
The PWM control unit 45 includes a U-phase PWM control signal, a V-phase PWM control signal having a duty corresponding to the U-phase voltage command value V U * , the V-phase voltage command value V V *, and the W-phase voltage command value V W * , respectively. A W-phase PWM control signal is generated and supplied to the drive circuit 31.
The drive circuit 31 includes a three-phase inverter circuit corresponding to the U phase, the V phase, and the W phase. The power elements constituting the inverter circuit are controlled by a PWM control signal supplied from the PWM control unit 45, whereby a voltage corresponding to the three-phase voltage command value V UVW * is set to the stator winding 101 of each phase of the electric motor 18. , 102, 103.
電流偏差演算部42およびPI制御部43は、電流フィードバック制御手段を構成している。この電流フィードバック制御手段の働きによって、電動モータ18に流れるモータ電流が、電流指令値設定部41によって設定された二相電流指令値Idq *に近づくように制御される。
図5は、トルクセンサ11の構成を図解的に示す模式図である。
The current deviation calculation unit 42 and the PI control unit 43 constitute a current feedback control unit. By the action of the current feedback control means, the motor current flowing through the electric motor 18 is controlled so as to approach the two-phase current command value I dq * set by the current command value setting unit 41.
FIG. 5 is a schematic diagram schematically showing the configuration of the torque sensor 11.
入力軸8には、環状の第1の磁石(多極磁石)61が一体回転可能に連結されている。第1の磁石61の下側には、第1の磁石61の回転に応じて位相差を有する正弦波状の信号をそれぞれ出力する3つの磁気センサ71,72,73が配置されている。
出力軸9には、環状の第2の磁石(多極磁石)62が一体回転可能に連結されている。第2の磁石62の上側には、第2の磁石62の回転に応じて位相差を有する正弦波状の信号をそれぞれ出力する3つの磁気センサ74,75,76が配置されている。
An annular first magnet (multipolar magnet) 61 is connected to the input shaft 8 so as to be integrally rotatable. Under the first magnet 61, three magnetic sensors 71, 72, and 73 that respectively output sinusoidal signals having a phase difference according to the rotation of the first magnet 61 are arranged.
An annular second magnet (multipolar magnet) 62 is connected to the output shaft 9 so as to be integrally rotatable. Three magnetic sensors 74, 75, and 76 that respectively output sinusoidal signals having a phase difference according to the rotation of the second magnet 62 are disposed above the second magnet 62.
各磁気センサ71〜76の出力信号S1〜S6は、入力軸8に加えられる操舵トルクを演算するためのトルク演算用ECU77に入力されている。トルク演算用ECU77の電源は、イグニッションキーがオン操作されることによってオンとなる。イグニッションキーがオフ操作されたときには、そのことを示すイグニッションオフ指令が、トルク演算用ECU77に入力される。なお、磁気センサとしては、たとえば、ホール素子、磁気抵抗素子(MR素子)等、磁界の作用により電気的特性が変化する特性を有する素子を備えたものを用いることができる。この実施形態では、磁気センサとしては、ホール素子が用いられている。 Output signals S 1 to S 6 of the magnetic sensors 71 to 76 are input to a torque calculation ECU 77 for calculating a steering torque applied to the input shaft 8. The power source of the torque calculation ECU 77 is turned on when the ignition key is turned on. When the ignition key is turned off, an ignition off command indicating that is input to the torque calculation ECU 77. In addition, as a magnetic sensor, what was provided with the element which has the characteristic which an electrical characteristic changes with the effect | actions of a magnetic field, such as a Hall element and a magnetoresistive element (MR element), for example can be used. In this embodiment, a Hall element is used as the magnetic sensor.
前記磁石61,62、前記磁気センサ71〜76およびトルク演算用ECU77によって、トルクセンサ11が構成されている。
トルク演算用ECU77は、マイクロコンピュータを含んでいる。マイクロコンピュータは、CPUおよびメモリ(ROM,RAM,不揮発性メモリ等)を備えており、所定のプログラムを実行することによって、複数の機能処理部として機能する。この複数の機能処理部には、第1の回転角演算部77Aと、第2の回転角演算部77Bと、トルク演算部77Cとを含んでいる。
The magnets 61 and 62, the magnetic sensors 71 to 76, and the torque calculation ECU 77 constitute a torque sensor 11.
The torque calculation ECU 77 includes a microcomputer. The microcomputer includes a CPU and a memory (ROM, RAM, nonvolatile memory, etc.), and functions as a plurality of function processing units by executing a predetermined program. The plurality of function processing units include a first rotation angle calculation unit 77A, a second rotation angle calculation unit 77B, and a torque calculation unit 77C.
第1の回転角演算部77Aは、3つの磁気センサ71,72,73の出力信号S1,S2,S3に基づいて入力軸8の回転角(電気角θA)を演算する。第2の回転角演算部77Bは、3つの磁気センサ74,75,76の出力信号S4,S5,S6に基づいて出力軸9の回転角(電気角θB)を演算する。
トルク演算部77Cは、第1の回転角演算部77Aによって検出された入力軸8の回転角θAと第2の回転角演算部77Bによって検出された出力軸9の回転角θBとに基づいて、入力軸8に加えられた操舵トルクThを演算する。具体的には、操舵トルクThは、トーションバー10のバネ定数をKとし、各磁石61,62に設けられた磁極対数をNとすると、次式(1)に基づいて演算される。
The first rotation angle calculator 77A calculates the rotation angle (electrical angle θ A ) of the input shaft 8 based on the output signals S 1 , S 2 , S 3 of the three magnetic sensors 71, 72, 73. The second rotation angle calculator 77B calculates the rotation angle (electrical angle θ B ) of the output shaft 9 based on the output signals S 4 , S 5 , S 6 of the three magnetic sensors 74, 75, 76.
The torque calculator 77C is based on the rotation angle θ A of the input shaft 8 detected by the first rotation angle calculator 77A and the rotation angle θ B of the output shaft 9 detected by the second rotation angle calculator 77B. Thus, the steering torque Th applied to the input shaft 8 is calculated. Specifically, the steering torque Th is calculated based on the following equation (1), where K is the spring constant of the torsion bar 10 and N is the number of magnetic pole pairs provided in each of the magnets 61 and 62.
Th={(θA−θB)/N}×K …(1)
第1の磁石61、磁気センサ71,72,73および第1の回転角演算部77Aによって、入力軸8の回転角θAを検出するための第1の回転角検出装置が構成されている。また、第2の磁石62、磁気センサ74,75,76および第2の回転角演算部77Bによって、出力軸9の回転角θBを検出するための第2の回転角検出装置が構成されている。第1の回転角検出装置(第1の回転角演算部77A)の動作と第2の回転角検出装置(第2の回転角演算部77B)の動作は同様であるので、以下、第1の回転角検出装置(第1の回転角演算部77A)の動作についてのみ説明する。
Th = {(θ A −θ B ) / N} × K (1)
First magnet 61, the magnetic sensor 71, 72, 73 and the first rotation angle computation section 77A, the first rotation angle detecting device for detecting a rotation angle theta A of the input shaft 8 is constituted. The second magnet 62, the magnetic sensor 74, 75, 76 and the second rotation angle computation section 77B, and a second rotation angle detecting device is configured to detect the rotation angle theta B of the output shaft 9 Yes. The operation of the first rotation angle detection device (first rotation angle calculation unit 77A) and the operation of the second rotation angle detection device (second rotation angle calculation unit 77B) are the same. Only the operation of the rotation angle detection device (first rotation angle calculation unit 77A) will be described.
図6は、第1の磁石61の構成および3つの磁気センサ71,72,73の配置を示す模式図である。
第1の磁石61は、周方向に等角度間隔で配された4組の磁極対(M1,M2),(M3,M4),(M5,M6),(M7,M8)を有している。つまり、第1の磁石61は、等角度間隔で配置された8個の磁極M1〜M8を有している。各磁極M1〜M8は、入力軸8の中心軸を中心として、ほぼ45°(電気角ではほぼ180°)の角度間隔(角度幅)で配置されている。各磁極M1〜M8の磁力の大きさは、ほぼ一定である。
FIG. 6 is a schematic diagram showing the configuration of the first magnet 61 and the arrangement of the three magnetic sensors 71, 72, 73.
The first magnet 61 has four pairs of magnetic poles (M1, M2), (M3, M4), (M5, M6), (M7, M8) arranged at equal angular intervals in the circumferential direction. . That is, the first magnet 61 has eight magnetic poles M1 to M8 arranged at equal angular intervals. The magnetic poles M <b> 1 to M <b> 8 are arranged at an angular interval (angular width) of approximately 45 ° (electrical angle is approximately 180 °) with the central axis of the input shaft 8 as the center. The magnitude of the magnetic force of each of the magnetic poles M1 to M8 is substantially constant.
3つの磁気センサ71,72,73は、第1の磁石61の下側の環状端面に対向して、配置されている。以下において、磁気センサ71を第1磁気センサ71、磁気センサ72を第2磁気センサ72、磁気センサ73を第3磁気センサ73という場合がある。第1磁気センサ71と第2磁気センサ72とは、入力軸8の中心軸を中心として電気角で60°(機械角で15°)の角度間隔で配置されている。また、第2磁気センサ72と第3磁気センサ73とは、入力軸8の中心軸を中心として電気角で60°の角度間隔で配置されている。したがって、第1磁気センサ71と第3磁気センサ73とは、入力軸8の中心軸を中心として電気角で120°(機械角で30°)の角度間隔で配置されている。 The three magnetic sensors 71, 72, 73 are arranged to face the lower annular end surface of the first magnet 61. Hereinafter, the magnetic sensor 71 may be referred to as a first magnetic sensor 71, the magnetic sensor 72 may be referred to as a second magnetic sensor 72, and the magnetic sensor 73 may be referred to as a third magnetic sensor 73. The first magnetic sensor 71 and the second magnetic sensor 72 are arranged at an angular interval of 60 ° in electrical angle (15 ° in mechanical angle) around the central axis of the input shaft 8. Further, the second magnetic sensor 72 and the third magnetic sensor 73 are arranged at an electrical angle of 60 ° in electrical angle with the central axis of the input shaft 8 as the center. Accordingly, the first magnetic sensor 71 and the third magnetic sensor 73 are arranged at an angular interval of 120 ° in electrical angle (30 ° in mechanical angle) around the central axis of the input shaft 8.
つまり、第2磁気センサ72と第1磁気センサ71との間の角度間隔と、第2磁気センサ72と第3磁気センサ73との間の角度間隔との和は電気角で120°であり、1つの磁極の角度幅(電気角で180°)より小さく設定されている。
なお、第1磁気センサ71と第2磁気センサ72との間の角度間隔は、第2磁気センサ72を基準として、図6において時計方向周りの角度間隔と、反時計方向周りの角度間隔との2種類存在すると考えられることができるかもしれないが、この明細書ではそれらの2種類のうち、機械角が小さい方をいうものとする。言い換えれば、第1磁気センサ71と第2磁気センサ72との間の角度間隔は、前記2種類のうち、機械角の180°より小さい方をいう。第2磁気センサ72と第3磁気センサ73との間の角度間隔も、同様である。
That is, the sum of the angular interval between the second magnetic sensor 72 and the first magnetic sensor 71 and the angular interval between the second magnetic sensor 72 and the third magnetic sensor 73 is 120 ° in electrical angle, It is set smaller than the angular width of one magnetic pole (180 ° in electrical angle).
Note that the angular interval between the first magnetic sensor 71 and the second magnetic sensor 72 is based on the second magnetic sensor 72 as a reference between the clockwise angular interval and the counterclockwise angular interval in FIG. Although it may be considered that there are two types, in this specification, the smaller one of the two types is used. In other words, the angular interval between the first magnetic sensor 71 and the second magnetic sensor 72 is the one of the two types that is smaller than the mechanical angle of 180 °. The same applies to the angular interval between the second magnetic sensor 72 and the third magnetic sensor 73.
図6に矢印で示す方向を入力軸8の正方向の回転方向とする。そして、入力軸8が正方向に回転されると入力軸8の回転角が大きくなり、入力軸8が逆方向に回転されると、入力軸2の回転角が小さくなるものとする。各磁気センサ71,72,73からは、図7に示すように、入力軸8の回転に伴って、正弦波状の信号S1,S2,S3が出力される。なお、図7の横軸の回転角[deg]は、機械角を表している。 A direction indicated by an arrow in FIG. 6 is a positive rotation direction of the input shaft 8. When the input shaft 8 is rotated in the forward direction, the rotation angle of the input shaft 8 is increased. When the input shaft 8 is rotated in the reverse direction, the rotation angle of the input shaft 2 is decreased. As shown in FIG. 7, sinusoidal signals S 1 , S 2 , S 3 are output from the magnetic sensors 71, 72, 73 as the input shaft 8 rotates. Note that the rotation angle [deg] on the horizontal axis in FIG. 7 represents a mechanical angle.
以下において、第1磁気センサ71の出力信号S1を第1出力信号S1または第1センサ値S1といい、第2磁気センサ72の出力信号S2を第2出力信号S2または第2センサ値S2といい、第3磁気センサ73の出力信号S3を第3出力信号S3または第3センサ値S3という場合がある。
以下においては、説明の便宜上、入力軸8の回転角をθAではなく、θで表すことにする。各出力信号S1,S2,S3が正弦波信号であるとみなし、入力軸8の回転角をθ(電気角)とすると、第1磁気センサ71の出力信号S1は、S1=A1・sinθと表され、第2磁気センサ72の出力信号S2は、S2=A2・sin(θ+60)と表され、第3磁気センサ73の出力信号S3は、S3=A3・sin(θ+120)と表される。A1,A2,A3は、それぞれ振幅を表している。第1出力信号S1と第2出力信号S2との位相差は60度である。第2出力信号S2と第3出力信号S3との位相差も60度である。したがって、第1出力信号S1と第3出力信号S3との位相差は120度である。
In the following, the output signals S 1 is referred to as a first output signals S 1 or the first sensor value S 1, the output signal S 2 of the second magnetic sensor 72 the second output signal S 2 or the second of the first magnetic sensor 71 called sensor values S 2, there is a case the output signal S 3 of the third magnetic sensor 73 that the third output signal S 3 or the third sensor value S 3.
In the following, for convenience of explanation, the rotation angle of the input shaft 8 is represented by θ, not θ A. Assuming that each output signal S 1 , S 2 , S 3 is a sine wave signal and the rotation angle of the input shaft 8 is θ (electrical angle), the output signal S 1 of the first magnetic sensor 71 is S 1 = is expressed as a 1 · sin [theta, output signal S 2 of the second magnetic sensor 72 is expressed as S 2 = a 2 · sin ( θ + 60), the output signal S 3 of the third magnetic sensor 73, S 3 = a 3 · sin (θ + 120). A 1 , A 2 , and A 3 represent amplitudes, respectively. First output signals S 1 and the phase difference between the second output signal S 2 is 60 degrees. Phase difference between the second output signals S 2 and the third output signal S 3 is also 60 degrees. Accordingly, the phase difference between the first output signals S 1 and the third output signal S 3 is 120 degrees.
第1の回転角演算部77Aによる回転角θの演算方法の基本的な考え方について説明する。第1の回転角演算部77Aによる回転角演算モードには、第1演算モード〜第7演算モードがある。以下、各演算モードについて説明する。
[1]第1演算モード
第1演算モードは、第1および第2磁気センサ71,72が、3サンプリング周期(3演算周期)連続して共に同じ1つの磁極を検出している場合に適用される可能性がある演算モードである。第1演算モードでは、第1および第2磁気センサ71,72における3サンプリング分の出力信号に基づいて回転角θが演算される。
The basic concept of the calculation method of the rotation angle θ by the first rotation angle calculation unit 77A will be described. The rotation angle calculation modes by the first rotation angle calculation unit 77A include a first calculation mode to a seventh calculation mode. Hereinafter, each calculation mode will be described.
[1] First Calculation Mode The first calculation mode is applied when the first and second magnetic sensors 71 and 72 detect the same magnetic pole together for three sampling periods (three calculation periods) continuously. This is a calculation mode that may be In the first calculation mode, the rotation angle θ is calculated based on output signals for three samplings in the first and second magnetic sensors 71 and 72.
第1出力信号S1と第2出力信号S2との位相差(電気角)をCで表すことにする。また、今回のサンプリング周期の番号(今回の演算周期の番号)を[n]、前回のサンプリング周期の番号を[n-1]、前々回のサンプリング周期の番号を[n-2]で表すことにする。また、各磁極M1〜M8の角度幅(ピッチ幅)のばらつきに基づく回転角演算誤差を補正するための補正値を、角度幅誤差補正値といい、Eで表すことことにする。 Phase difference between the first output signals S 1 and the second output signal S 2 (electrical angle) to be represented by C. In addition, the number of the current sampling cycle (the number of the current calculation cycle) is represented by [n], the number of the previous sampling cycle is represented by [n-1], and the number of the previous sampling cycle is represented by [n-2]. To do. A correction value for correcting the rotation angle calculation error based on the variation in the angular width (pitch width) of each of the magnetic poles M1 to M8 is referred to as an angular width error correction value and is represented by E.
位相差C、サンプリング周期番号[n],[n-1],[n-2]および角度幅誤差補正値Eを用いると、今回、前回および前々回にサンプリングされた第1出力信号S1ならびに今回、前回および前々回にサンプリングされた第2出力信号S2を、それぞれ次式(2a),(2b),(2c), (2d),(2e),(2f)で表すことができる。
S1[n]=A1[n]sin(E1[n]θ[n]) …(2a)
S1[n-1]=A1[n-1]sin(E1[n-1]θ[n-1]) …(2b)
S1[n-2]=A1[n-2]sin(E1[n-2]θ[n-2]) …(2c)
S2[n]=A2[n]sin(E2[n]θ[n]+C) …(2d)
S2[n-1]=A2[n-1]sin(E2[n-1]θ[n-1]+C) …(2e)
S2[n-2]=A2[n-2]sin(E2[n-2]θ[n-2]+C) …(2f)
前記式(2a)〜(2f)において、E1[x]は、x番目の演算周期において第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値である。E2[x]は、x番目の演算周期において第2磁気センサ72が検出している磁極に対応する角度幅誤差補正値である。
Phase difference C, the sampling period number [n], [n-1 ], the use of [n-2] and angular width error correction value E, this first output signals S 1 and the current sampled the last and second last , the second output signal S 2 which is sampled last and second last, the following equations (2a), can be expressed by (2b), (2c), (2d), (2e), (2f).
S 1 [n] = A 1 [n] sin (E 1 [n] θ [n]) (2a)
S 1 [n-1] = A 1 [n-1] sin (E 1 [n-1] θ [n-1]) (2b)
S 1 [n-2] = A 1 [n-2] sin (E 1 [n-2] θ [n-2]) (2c)
S 2 [n] = A 2 [n] sin (E 2 [n] θ [n] + C) (2d)
S 2 [n-1] = A 2 [n-1] sin (E 2 [n-1] θ [n-1] + C) ... (2e)
S 2 [n-2] = A 2 [n-2] sin (E 2 [n-2] θ [n-2] + C) (2f)
In the equations (2a) to (2f), E 1 [x] is an angle width error correction value corresponding to the magnetic pole detected by the first magnetic sensor 71 in the x-th calculation cycle. E 2 [x] is an angle width error correction value corresponding to the magnetic pole detected by the second magnetic sensor 72 in the x-th calculation cycle.
ある磁極の角度幅をw(電気角)とすると、その磁極の角度幅誤差θerr(電気角)は、次式(3)で定義される。
θerr=w−180 …(3)
その磁極に対する角度幅誤差補正値Eは、次式(4)で定義される。
E=180/w
=180/(θerr+180) …(4)
各磁極の角度幅誤差補正値Eは、各磁極の磁極幅に関する情報である。なお、各磁極の磁極幅に関する情報は、各磁極の角度幅wであってもよいし、各磁極の角度幅誤差θerrであってもよい。
When the angular width of a certain magnetic pole is w (electrical angle), the angular width error θ err (electrical angle) of the magnetic pole is defined by the following equation (3).
θ err = w−180 (3)
The angular width error correction value E for the magnetic pole is defined by the following equation (4).
E = 180 / w
= 180 / (θ err +180) (4)
The angle width error correction value E of each magnetic pole is information regarding the magnetic pole width of each magnetic pole. The information on the magnetic pole width of each magnetic pole may be the angular width w of each magnetic pole or the angular width error θ err of each magnetic pole.
Cが既知であるとすると、前記式(2a)〜(2f)で表される6つの式に含まれる未知数の数は15となる。つまり、未知数の数が方程式の数より多いため、このままでは、6つの式からなる連立方程式を解くことができない。
この実施形態では、サンプリング間隔(サンプリング周期)を短く設定することにより、3サンプリング間の温度変化による振幅の変化がないとみなす。つまり、3サンプリング間の第1磁気センサ71の出力信号の振幅A1[n],A1[n-1],A1[n-2]が互いに等しいとみなして、これらをA1とする。同様に、3サンプリング間の第2磁気センサ72の出力信号の振幅A2[n],A2[n-1],A2[n-2]が互いに等しいとみなし、これらをA2とする。
Assuming that C is known, the number of unknowns included in the six expressions represented by the expressions (2a) to (2f) is 15. In other words, since the number of unknowns is larger than the number of equations, it is not possible to solve simultaneous equations consisting of six equations.
In this embodiment, by setting the sampling interval (sampling period) to be short, it is considered that there is no change in amplitude due to a temperature change between three samplings. That is, it is assumed that the amplitudes A 1 [n], A 1 [n−1], and A 1 [n−2] of the output signal of the first magnetic sensor 71 during three samplings are equal to each other, and these are defined as A 1 . . Similarly, the amplitudes A 2 [n], A 2 [n−1], and A 2 [n−2] of the output signal of the second magnetic sensor 72 during three samplings are regarded as being equal to each other, and these are defined as A 2 . .
3サンプリング間において、両磁気センサ71,72が共に同じ1つの磁極を検出している場合には、3サンプリング分の両磁気センサ71,72の出力信号に含まれている角度幅誤差補正値E1[n],E1[n-1],E1[n-2],E2[n],E2[n-1],E2[n-2]は同じ値となるので、これらをEで表すことにする。これにより、前記式(2a)〜(2f)は、それぞれ次式(5a)〜(5f)で表わされる。 When both magnetic sensors 71 and 72 detect the same magnetic pole during three samplings, the angle width error correction value E included in the output signals of both magnetic sensors 71 and 72 for three samplings. 1 [n], E 1 [n-1], E 1 [n-2], E 2 [n], E 2 [n-1], E 2 [n-2] have the same value. Is represented by E. As a result, the equations (2a) to (2f) are represented by the following equations (5a) to (5f), respectively.
S1[n]=A1sin(Eθ[n]) …(5a)
S1[n-1]=A1sin(Eθ[n-1]) …(5b)
S1[n-2]=A1sin(Eθ[n-2]) …(5c)
S2[n]=A2sin(Eθ[n]+C) …(5d)
S2[n-1]=A2sin(Eθ[n-1]+C) …(5e)
S2[n-2]=A2sin(Eθ[n-2]+C) …(5f)
これら6つの式に含まれる未知数(A1,A2,E,θ[n],θ[n-1],θ[n-2])の数は6となる。つまり、未知数の数が方程式の数以下となるため、6つの式からなる連立方程式を解くことができる。したがって、前記6つの式(5a)〜(5f)からなる連立方程式を解くことにより、入力軸8の回転角θ[n]を演算することができる。
S 1 [n] = A 1 sin (Eθ [n]) (5a)
S 1 [n-1] = A 1 sin (Eθ [n-1]) (5b)
S 1 [n-2] = A 1 sin (Eθ [n-2]) (5c)
S 2 [n] = A 2 sin (Eθ [n] + C) (5d)
S 2 [n-1] = A 2 sin (Eθ [n-1] + C) (5e)
S 2 [n-2] = A 2 sin (Eθ [n-2] + C) (5f)
The number of unknowns (A 1 , A 2 , E, θ [n], θ [n−1], θ [n−2]) included in these six formulas is 6. That is, since the number of unknowns is less than or equal to the number of equations, simultaneous equations composed of six equations can be solved. Therefore, the rotation angle θ [n] of the input shaft 8 can be calculated by solving the simultaneous equations composed of the six equations (5a) to (5f).
以下、両磁気センサ間の位相差Cが60度である場合について、具体的に説明する。位相差Cが60度である場合には、前記6つの式(5a)〜(5f)は、それぞれ次式(6a)〜(6f)で表わすことができる。
S1[n]=A1sin(Eθ[n]) …(6a)
S1[n-1]=A1sin(Eθ[n-1]) …(6b)
S1[n-2]=A1sin(Eθ[n-2]) …(6c)
S2[n]=A2sin(Eθ[n]+60) …(6d)
S2[n-1]=A2sin(Eθ[n-1]+60) …(6e)
S2[n-2]=A2sin(Eθ[n-2]+60) …(6f)
Eθ[n]を1つの未知数と考えると、前記6つの式(6a)〜(6f)のうちの4つの式(6a),(6b),(6d),(6e)からなる連立方程式を解くことにより、Eθ[n]は、次式(7)(以下、「Eθ基本演算式(7)」という。)で表わされる。
Hereinafter, the case where the phase difference C between the two magnetic sensors is 60 degrees will be specifically described. When the phase difference C is 60 degrees, the six formulas (5a) to (5f) can be expressed by the following formulas (6a) to (6f), respectively.
S 1 [n] = A 1 sin (Eθ [n]) (6a)
S 1 [n-1] = A 1 sin (Eθ [n-1]) (6b)
S 1 [n-2] = A 1 sin (Eθ [n-2]) (6c)
S 2 [n] = A 2 sin (Eθ [n] +60) (6d)
S 2 [n-1] = A 2 sin (Eθ [n-1] +60) (6e)
S 2 [n-2] = A 2 sin (Eθ [n-2] +60) (6f)
Considering Eθ [n] as one unknown, solve the simultaneous equations consisting of four equations (6a), (6b), (6d), and (6e) among the above six equations (6a) to (6f). Thus, Eθ [n] is expressed by the following equation (7) (hereinafter referred to as “Eθ basic operation equation (7)”).
また、前記6つの式(6a)〜(6f)からなる連立方程式を解くことにより、角度幅誤差補正値Eは、次式(8)(以下、「E演算式(8)」という。)で表わされる。 Further, by solving the simultaneous equations composed of the above six equations (6a) to (6f), the angular width error correction value E is expressed by the following equation (8) (hereinafter referred to as “E operation equation (8)”). Represented.
したがって、前記Eθ基本演算式(7)により演算されたEθ[n]を、前記E演算式(8)により演算された角度幅誤差補正値Eで除することにより、θ[n]を求めることができる。つまり、次式(9)により、θ[n]を求めることができる。
θ[n]=Eθ[n]/E …(9)
ただし、E演算式(8)に含まれている分数のいずれかの分母が零になる場合には、E演算式(8)に基づいて角度幅誤差補正値Eを演算することはできない。そこで、この実施形態では、E演算式(8)に含まれている分数のいずれかの分母が零になる場合には、前回に演算された角度幅誤差補正値Eを今回の角度幅誤差補正値Eとして用いるようにしている。
Therefore, θ [n] is obtained by dividing Eθ [n] calculated by the Eθ basic calculation formula (7) by the angle width error correction value E calculated by the E calculation formula (8). Can do. That is, θ [n] can be obtained by the following equation (9).
θ [n] = Eθ [n] / E (9)
However, when any denominator of the fraction included in the E calculation formula (8) is zero, the angle width error correction value E cannot be calculated based on the E calculation formula (8). Therefore, in this embodiment, when any denominator of the fraction included in E calculation formula (8) becomes zero, the angle width error correction value E calculated last time is used as the current angle width error correction. The value E is used.
なお、E演算式(8)に含まれている分数のいずれかの分母が零になる場合とは、次式(10),(11),(12)でそれぞれ表される3つの条件のうちの少なくとも1つの条件を満たす場合である。 Note that the case where any denominator of the fraction included in E equation (8) is zero is one of the three conditions represented by the following equations (10), (11), and (12): This is a case where at least one of the following conditions is satisfied.
また、Eθ基本演算式(7)に含まれている分数のいずれかの分母が零になる場合には、Eθ基本演算式(7)に基づいてEθ[n]を演算することはできない。そこで、この実施形態では、Eθ基本演算式(7)に含まれている分数のいずれかの分母が零になる場合には、Eθ基本演算式(7)とは異なる演算式によってEθ[n]を演算するようにしている。さらに、この実施形態では、Eθ基本演算式(7)に基づいてEθ[n]を演算することができるけれども、より簡単な演算式によってEθ[n]を演算できる場合には、Eθ基本演算式(7)とは異なる演算式によってEθ[n]を演算するようにしている。この実施形態では、Eθ基本演算式(7)よりも簡単にEθ[n]を演算できる場合とは、S1[n]=0の場合またはS2[n]=0の場合である。 Further, when any denominator of the fraction included in the Eθ basic calculation formula (7) is zero, Eθ [n] cannot be calculated based on the Eθ basic calculation formula (7). Therefore, in this embodiment, when any denominator of the fraction included in the Eθ basic arithmetic expression (7) becomes zero, Eθ [n] is calculated by an arithmetic expression different from the Eθ basic arithmetic expression (7). Is calculated. Furthermore, in this embodiment, Eθ [n] can be calculated based on the Eθ basic calculation formula (7). However, when Eθ [n] can be calculated using a simpler calculation formula, the Eθ basic calculation formula is used. Eθ [n] is calculated by an arithmetic expression different from (7). In this embodiment, the case where Eθ [n] can be calculated more simply than the Eθ basic calculation formula (7) is the case where S 1 [n] = 0 or S 2 [n] = 0.
この実施形態では、Eθ[n]を演算するための演算式として、Eθ基本演算式(7)を含めて10種類の演算式が用意されている。表1は、10種類の演算式と、その演算式が適用される条件とを示している。なお、Eθ[n]を演算する際には、表1の上から順番にその条件を満たしているか否かが判別され、条件を満たしたと判別されるとそれ以降の条件判別は行われず、当該条件に対応する演算式により、Eθ[n]が演算される。 In this embodiment, 10 types of calculation formulas including Eθ basic calculation formula (7) are prepared as calculation formulas for calculating Eθ [n]. Table 1 shows ten types of arithmetic expressions and conditions to which the arithmetic expressions are applied. When calculating Eθ [n], it is determined whether or not the condition is satisfied in order from the top of Table 1. If it is determined that the condition is satisfied, the subsequent condition determination is not performed. Eθ [n] is calculated by an arithmetic expression corresponding to the condition.
表1の上から1番目の演算式は、Eθ基本演算式(7)である。Eθ基本演算式(7)は、S1[n]およびS2[n]のいずれもが零でなく、かつEθ基本演算式(7)に含まれている分数のいずれの分母も零でないという条件を満たしている場合に、適用される。Eθ基本演算式(7)に含まれている分数のいずれの分母も零でないという条件は、S1[n-1]≠0でかつ、S2[n-1]≠0で、p1−p2≠0でかつ、p1 2+p1p2+p2 2≠0である場合に満たされる。なお、S1[n-1]はp1の分母であり、S2[n-1]はp2の分母である。 The first arithmetic expression from the top of Table 1 is the Eθ basic arithmetic expression (7). In Eθ basic arithmetic expression (7), neither S 1 [n] nor S 2 [n] is zero, and any denominator of a fraction contained in Eθ basic arithmetic expression (7) is not zero. Applicable when conditions are met. The condition that any denominator of the fraction included in the Eθ basic arithmetic expression (7) is not zero is that S 1 [n−1] ≠ 0 and S 2 [n−1] ≠ 0, and p 1 − It is satisfied when p 2 ≠ 0 and p 1 2 + p 1 p 2 + p 2 2 ≠ 0. Note that S 1 [n-1] is the denominator of p 1 and S 2 [n-1] is the denominator of p 2 .
ただし、p1 2+p1p2+p2 2=0が成立するのは、p1=p2=0の場合だけであるが、第1磁気センサ71と第2磁気センサ72とは位相が60度ずれているため、両磁気センサ71,72のセンサ値S1,S2が同時に零になることはない。このため、p1 2+p1p2+p2 2=0が成立することはない。したがって、Eθ基本演算式(7)に含まれている分数のいずれの分母も零でないという条件は、S2[n-1]≠0で、S2[n-1]≠0でかつ、p1−p2≠0である場合に満たされる。 However, p 1 2 + p 1 p 2 + p 2 2 = 0 holds only when p 1 = p 2 = 0, but the first magnetic sensor 71 and the second magnetic sensor 72 have a phase of 60. The sensor values S 1 and S 2 of the two magnetic sensors 71 and 72 do not become zero at the same time because of the degree of deviation. Therefore, p 1 2 + p 1 p 2 + p 2 2 = 0 does not hold. Therefore, the condition that any denominator of the fraction included in the Eθ basic arithmetic expression (7) is not zero is S 2 [n−1] ≠ 0, S 2 [n−1] ≠ 0, and p It is satisfied when 1− p 2 ≠ 0.
表1の上から2番目の演算式は、p1−p2=0である場合に適用される演算式である。p1−p2=0が成立する場合について検討する。この場合には、p1=p2であるから、次式(13)が成立する。 The second arithmetic expression from the top of Table 1 is an arithmetic expression applied when p 1 −p 2 = 0. Consider the case where p 1 −p 2 = 0 holds. In this case, since p 1 = p 2 , the following equation (13) is established.
これを変形すると、次式(14)が得られる。 When this is modified, the following equation (14) is obtained.
前記式(14)が成立する場合とは、Eθ[n]とEθ[n-1]とが等しい場合である。つまり、今回のEθ[n]が前回のEθ[n-1]に等しい場合である。そこで、S1[n]およびS2[n]のいずれもが零でなく、かつp1の分母S1[n-1]およびp2の分母S2[n-1]のいずれもが零でなく、かつp1−p2=0であるという条件を満たした場合には、前回に演算されたEθ[n-1]が今回のEθ[n]として用いられる。 The case where the formula (14) is satisfied is a case where Eθ [n] and Eθ [n−1] are equal. That is, the current Eθ [n] is equal to the previous Eθ [n−1]. Therefore, none of the S 1 [n] and S 2 [n] is not zero, and none of the denominator S 1 of p 1 [n-1] and the denominator S 2 [n-1] of p 2 is zero If the condition that p 1 −p 2 = 0 is satisfied, Eθ [n−1] calculated last time is used as the current Eθ [n].
表1の上から3番目および4番目の演算式は、p1の分母S1[n-1]が零となる場合に適用される演算式である。S1[n-1]=A1sinEθ[n-1]であるので、sinEθ[n-1]=0のときに、S1[n-1]=0となる。つまり、Eθ[n-1]が0度または180度のときに、S1[n-1]が零となる。S2[n-1]=A2sin(Eθ[n-1]+60)であるので、Eθ[n-1]が0度のときにはS2[n-1]>0となり、Eθ[n-1]が180度のときにはS2[n-1]<0となる。したがって、S1[n-1]=0でかつS2[n-1]>0のときにはEθ[n-1]=0となり、S1[n-1]=0でかつS2[n-1]<0のときにはEθ[n-1]=180となる。 The third and fourth arithmetic expressions from the top of Table 1 are arithmetic expressions applied when the denominator S 1 [n−1] of p 1 becomes zero. Since S 1 [n-1] = A 1 sinEθ [n-1], when sinEθ [n-1] = 0, S 1 [n-1] = 0. That is, when Eθ [n−1] is 0 degree or 180 degrees, S 1 [n−1] is zero. Since S 2 [n-1] = A 2 sin (Eθ [n-1] +60), when Eθ [n-1] is 0 degree, S 2 [n-1]> 0, and Eθ [n− When 1] is 180 degrees, S 2 [n−1] <0. Therefore, when S 1 [n-1] = 0 and S 2 [n-1]> 0, Eθ [n-1] = 0, and S 1 [n-1] = 0 and S 2 [n− When 1] <0, Eθ [n−1] = 180.
Eθ[n-1]=0である場合には、前記式(6d),(6e)は、それぞれ次式(15d),(15e)で表される。
S2[n]=A2sin(Eθ[n]+60) …(15d)
S2[n-1]=A2sin60=√3/2・A2 …(15e)
前記式(15e)から、次式(16)が得られる。
When Eθ [n−1] = 0, the expressions (6d) and (6e) are expressed by the following expressions (15d) and (15e), respectively.
S 2 [n] = A 2 sin (Eθ [n] +60) (15d)
S 2 [n-1] = A 2 sin 60 = √3 / 2 · A 2 (15e)
From the equation (15e), the following equation (16) is obtained.
A2=(2/√3)・S2[n-1] …(16)
前記式(16)を前記式(15d)に代入すると、次式(17)が得られる。
sin(Eθ[n]+60)=(√3/2)・(S2[n]/S2[n-1]) …(17)
したがって、Eθ[n]は、次式(18)により演算することができる。
A 2 = (2 / √3) · S 2 [n-1] (16)
Substituting the equation (16) into the equation (15d) yields the following equation (17).
sin (Eθ [n] +60) = (√3 / 2) · (S 2 [n] / S 2 [n−1]) (17)
Therefore, Eθ [n] can be calculated by the following equation (18).
つまり、表1の上から3番目に示すように、S1[n]およびS2[n]のいずれもが零でなく、かつp2の分母S2[n-1]が零でなく、かつp1の分母S1[n-1]が零であり、かつS2[n-1]>0であるという条件を満たした場合には、前記式(18)で表される演算式に基づいてEθ[n]が演算される。
一方、Eθ[n-1]=180である場合には、前記式(6d),(6e)は、それぞれ次式(19d),(19e)で表される。
That is, as shown third from the top in Table 1, neither S 1 [n] nor S 2 [n] is zero and the denominator S 2 [n−1] of p 2 is not zero. When the condition that the denominator S 1 [n-1] of p 1 is zero and S 2 [n-1]> 0 is satisfied, the arithmetic expression represented by the above equation (18) is obtained. Based on this, Eθ [n] is calculated.
On the other hand, when Eθ [n−1] = 180, the expressions (6d) and (6e) are expressed by the following expressions (19d) and (19e), respectively.
S2[n]=A2sin(Eθ[n]+60) …(19d)
S2[n-1]=A2sin240=−√3/2・ A2 …(19e)
前記式(19e)から、次式(20)が得られる。
A2=(−2/√3)・S2[n-1] …(20)
前記式(20)を前記式(19d)に代入すると、次式(21)が得られる。
S 2 [n] = A 2 sin (Eθ [n] +60) (19d)
S 2 [n-1] = A 2 sin 240 = −√3 / 2 · A 2 (19e)
From the equation (19e), the following equation (20) is obtained.
A 2 = (− 2 / √3) · S 2 [n−1] (20)
Substituting the equation (20) into the equation (19d) yields the following equation (21).
sin(Eθ[n]+60)=(−√3/2)・(S2[n]/S2[n-1]) …(21)
したがって、Eθ[n]は、次式(22)により演算することができる。
sin (Eθ [n] +60) = (− √3 / 2) · (S 2 [n] / S 2 [n−1]) (21)
Therefore, Eθ [n] can be calculated by the following equation (22).
つまり、表1の上から4番目に示すように、S1[n]およびS2[n]のいずれもが零でなく、かつp2の分母S2[n-1]が零でなく、かつp1の分母S1[n-1]が零であり、かつS2[n-1]<0であるという条件を満たした場合には、前記式(22)で表される演算式に基づいてEθ[n]が演算される。
表1の上から5番目および6番目の演算式は、S2[n]=0となる場合に適用される演算式である。S2[n]=A2sin(Eθ[n]+60)であるので、sin(Eθ[n]+60)=0のときに、S2[n]=0となる。つまり、Eθ[n]が−60度または120度のときに、S2[n]=0となる。S1[n]=A1sinEθ[n]であるので、Eθ[n]が−60度のときにはS1[n]<0となり、Eθ[n]が120度のときにはS1[n]>0となる。したがって、S2[n]=0でかつS1[n]>0のときにはEθ[n]=120となり、S2[n]=0でかつS1[n]<0であればEθ[n]=−60となる。
That is, as shown in the fourth from the top of Table 1, neither S 1 [n] nor S 2 [n] is zero and the denominator S 2 [n−1] of p 2 is not zero. When the condition that the denominator S 1 [n-1] of p 1 is zero and S 2 [n-1] <0 is satisfied, the arithmetic expression represented by the above equation (22) is satisfied. Based on this, Eθ [n] is calculated.
The fifth and sixth arithmetic expressions from the top of Table 1 are arithmetic expressions applied when S 2 [n] = 0. Since S 2 [n] = A 2 sin (Eθ [n] +60), S 2 [n] = 0 when sin (Eθ [n] +60) = 0. That is, S 2 [n] = 0 when Eθ [n] is −60 degrees or 120 degrees. Since S 1 [n] = A 1 sin Eθ [n], S 1 [n] <0 when Eθ [n] is −60 degrees, and S 1 [n]> when Eθ [n] is 120 degrees. 0. Accordingly, Eθ [n] = 120 when S 2 [n] = 0 and S 1 [n]> 0, and Eθ [n] when S 2 [n] = 0 and S 1 [n] <0. ] = − 60.
つまり、表1の上から5番目に示すように、S1[n]が零でなく、かつp2の分母S2[n-1]が零でなく、かつS2[n]=0であり、かつS1[n]>0であるという条件を満たした場合には、Eθ[n]は120度として演算される。また、表1の上から6番目に示すように、S1[n]が零でなく、かつp2の分母S2[n-1]が零でなく、かつS2[n]=0であり、かつS1[n]<0であるという条件を満たした場合には、Eθ[n]は−60度として演算される。 That is, as shown fifth from the top in Table 1, S 1 [n] is not zero, the denominator S 2 [n−1] of p 2 is not zero, and S 2 [n] = 0. When there is a condition that S 1 [n]> 0, Eθ [n] is calculated as 120 degrees. Further, as shown in Table 6 from the top, S 1 [n] is not zero, the denominator S 2 [n−1] of p 2 is not zero, and S 2 [n] = 0. If there is a condition that S 1 [n] <0, Eθ [n] is calculated as −60 degrees.
表1の上から7番目および8番目の演算式は、p2の分母S2[n-1]が零となる場合に適用される演算式である。S2[n-1]=A2sin(Eθ[n-1]+60)であるので、sin(Eθ[n-1]+60)=0のときに、S2[n-1]=0となる。つまり、Eθ[n-1]が−60度または120度のときに、S2[n-1]が零となる。S1[n-1]=A1sinEθ[n-1]であるので、Eθ[n-1]が−60度のときにはS1[n-1]<0となり、Eθ[n-1]が120度のときにはS1[n-1]>0となる。したがって、S2[n-1]=0でかつS1[n-1]>0のときにはEθ[n-1]=120となり、S2[n-1]=0でかつS1[n-1]<0のときにはEθ[n-1]=−60となる。 The seventh and eighth arithmetic expressions from the top of Table 1 are arithmetic expressions applied when the denominator S 2 [n−1] of p 2 is zero. Since S 2 [n-1] = A 2 sin (Eθ [n-1] +60), when sin (Eθ [n-1] +60) = 0, S 2 [n-1] = 0 Become. That is, when Eθ [n−1] is −60 degrees or 120 degrees, S 2 [n−1] is zero. Since S 1 [n-1] = A 1 sinEθ [n-1], when Eθ [n-1] is −60 degrees, S 1 [n-1] <0, and Eθ [n-1] is At 120 degrees, S 1 [n-1]> 0. Therefore, when S 2 [n-1] = 0 and S 1 [n-1]> 0, Eθ [n-1] = 120, S 2 [n-1] = 0 and S 1 [n− When 1] <0, Eθ [n−1] = − 60.
Eθ[n-1]=120である場合には、前記式(6a),(6b)は、それぞれ次式(23a),(23b)で表される。
S1[n]=A1sinEθ[n] …(23a)
S1[n-1]=A1sin120=√3/2・ A1 …(23b)
前記式(23b)から、次式(24)が得られる。
When Eθ [n−1] = 120, the equations (6a) and (6b) are represented by the following equations (23a) and (23b), respectively.
S 1 [n] = A 1 sin Eθ [n] (23a)
S 1 [n-1] = A 1 sin 120 = √3 / 2 · A 1 (23b)
From the equation (23b), the following equation (24) is obtained.
A1=(2/√3)・S1[n-1] …(24)
前記式(24)を前記式(23a)に代入すると、次式(25)が得られる。
sinEθ[n]=(√3/2)・(S1[n]/S1[n-1]) …(25)
したがって、Eθ[n]は、次式(26)により演算することができる。
A 1 = (2 / √3) · S 1 [n-1] (24)
Substituting the equation (24) into the equation (23a) yields the following equation (25).
sinEθ [n] = (√3 / 2) · (S 1 [n] / S 1 [n-1]) (25)
Therefore, Eθ [n] can be calculated by the following equation (26).
つまり、表1の上から7番目に示すように、S1[n]が零でなく、かつp2の分母S2[n-1]が零であり、かつS1[n-1]>0であるという条件を満たした場合には、前記式(26)で表される演算式に基づいてEθ[n]が演算される。
一方、Eθ[n-1]=−60である場合には、前記式(6a),(6b)は、それぞれ次式(27a),(27b)で表される。
That is, as shown in Table 7 from the top, S 1 [n] is not zero, the denominator S 2 [n-1] of p 2 is zero, and S 1 [n-1]> When the condition of 0 is satisfied, Eθ [n] is calculated based on the arithmetic expression expressed by the expression (26).
On the other hand, when Eθ [n−1] = − 60, the expressions (6a) and (6b) are expressed by the following expressions (27a) and (27b), respectively.
S1[n]=A1sinEθ[n] …(27a)
S1[n-1]=A1sin(−60)=−√3/2・A2 …(27b)
前記式(27b)から、次式(28)が得られる。
A1=(−2/√3)・S1[n-1] …(28)
前記式(28)を前記式(27a)に代入すると、次式(29)が得られる。
S 1 [n] = A 1 sin Eθ [n] (27a)
S 1 [n-1] = A 1 sin (−60) = − √3 / 2 · A 2 (27b)
From the equation (27b), the following equation (28) is obtained.
A 1 = (− 2 / √3) · S 1 [n−1] (28)
Substituting the equation (28) into the equation (27a) yields the following equation (29).
sinEθ[n]=(−√3/2)・(S1[n]/S1[n-1]) …(29)
したがって、Eθ[n]は、次式(30)により演算することができる。
sinEθ [n] = (− √3 / 2) · (S 1 [n] / S 1 [n−1]) (29)
Therefore, Eθ [n] can be calculated by the following equation (30).
つまり、表1の上から8番目に示すように、S1[n]が零でなく、かつp2の分母S2[n-1]が零であり、かつS1[n-1]<0であるという条件を満たした場合には、前記式(30)で表される演算式に基づいてEθ[n]が演算される。
表1の上から9番目および10番目の演算式は、S1[n]=0となる場合に適用される演算式である。S1[n]=A1sinEθ[n]であるので、sinEθ[n]=0のときに、S1[n]=0となる。つまり、Eθ[n]が0度または180度のときに、S1[n]=0となる。S2[n]=A2sin(Eθ[n]+60]であるので、Eθ[n]が0度のときにはS2[n]>0となり、Eθ[n]が180度のときにはS2[n]<0となる。したがって、S1[n]=0でかつS2[n]>0であればEθ[n]=0となり、S1[n]=0でかつS2[n]<0であればEθ[n]=180となる。
That is, as shown in Table 8 from the top, S 1 [n] is not zero, the denominator S 2 [n−1] of p 2 is zero, and S 1 [n−1] < When the condition of 0 is satisfied, Eθ [n] is calculated based on the arithmetic expression expressed by the expression (30).
The ninth and tenth arithmetic expressions from the top of Table 1 are arithmetic expressions that are applied when S 1 [n] = 0. Since S 1 [n] = A 1 sinEθ [n], when sinEθ [n] = 0, S 1 [n] = 0. That is, when Eθ [n] is 0 degree or 180 degrees, S 1 [n] = 0. Since it is S 2 [n] = A 2 sin (Eθ [n] +60], Eθ [n] is S 2 [n] at the time of 0 degree> 0, E.theta [n] is at the time of 180 ° S 2 [ n] <0 Therefore, if S 1 [n] = 0 and S 2 [n]> 0, Eθ [n] = 0, and S 1 [n] = 0 and S 2 [n] If <0, Eθ [n] = 180.
つまり、表1の上から9番目に示すように、S1[n]が零であり、かつS2[n]>0であるという条件を満たした場合には、Eθ[n]は0度として演算される。また、表1の上から10番目に示すように、S1[n]が零であり、かつS2[n]<0であるという条件を満たした場合には、Eθ[n]は180度として演算される。
Eθ[n]が演算されると、前記式(6a)に基づいて振幅A1を演算することができるとともに、前記式(6d)に基づいて振幅A2を演算することができる。つまり、第1演算モードによって、E,θ[n],A1,A2を演算することができる。
[2]第2演算モード
第2演算モードは、第2および第3磁気センサ72,73が、3サンプリング周期(3演算周期)連続して共に同じ1つの磁極を検出している場合に適用される可能性がある演算モードである。第2演算モードでは、第2および第3磁気センサ72,73における3サンプリング分の出力信号に基づいて回転角θが演算される。
That is, as shown in the ninth from the top in Table 1, when the condition that S 1 [n] is zero and S 2 [n]> 0 is satisfied, Eθ [n] is 0 degree. Is calculated as As shown in the tenth from the top in Table 1, when the condition that S 1 [n] is zero and S 2 [n] <0 is satisfied, Eθ [n] is 180 degrees. Is calculated as
When Eθ [n] is calculated, the amplitude A 1 can be calculated based on the equation (6a), and the amplitude A 2 can be calculated based on the equation (6d). That is, E, θ [n], A 1, A 2 can be calculated in the first calculation mode.
[2] Second Calculation Mode The second calculation mode is applied when the second and third magnetic sensors 72 and 73 detect the same magnetic pole for three sampling periods (three calculation periods) continuously. This is a calculation mode that may be In the second calculation mode, the rotation angle θ is calculated based on output signals for three samplings in the second and third magnetic sensors 72 and 73.
第2磁気センサ72および第3磁気センサ73の出力信号S2,S3を、角度幅誤差補正値Eを用いて表すと、第2磁気センサ72の出力信号S2[n]はS2[n]=A2・sin(E2θ[n]+60)で表され、第3磁気センサ73の出力信号S3[n]は、S3[n]=A3・sin(E3θ[n]+120)と表される。ここで、E3は、第3磁気センサ73が検出している磁極に対応する角度幅誤差補正値である。第2磁気センサ72および第3磁気センサ73が同じ磁極を検出している場合には、E2とE3とは等しいので、これらをEで表すと、第2磁気センサ72の出力信号S2[n]はS2[n]=A2・sin(Eθ[n]+60)で表され、第3磁気センサ73の出力信号S3[n]は、S3[n]=A3・sin(Eθ[n]+120)と表される。 When the output signals S 2 and S 3 of the second magnetic sensor 72 and the third magnetic sensor 73 are expressed using the angular width error correction value E, the output signal S 2 [n] of the second magnetic sensor 72 is S 2 [ n] = A 2 · sin (E 2 θ [n] +60), and the output signal S 3 [n] of the third magnetic sensor 73 is S 3 [n] = A 3 · sin (E 3 θ [ n] +120). Here, E 3 is an angle width error correction value corresponding to the magnetic pole detected by the third magnetic sensor 73. When the second magnetic sensor 72 and the third magnetic sensor 73 detect the same magnetic pole, E 2 and E 3 are equal to each other. Therefore, when these are represented by E, the output signal S 2 of the second magnetic sensor 72 is output. [n] is represented by S 2 [n] = A 2 · sin (Eθ [n] +60), and the output signal S 3 [n] of the third magnetic sensor 73 is S 3 [n] = A 3 · sin It is expressed as (Eθ [n] +120).
(Eθ[n]+60)をEΘ[n]に置き換えると、第2出力信号S2[n]はS2[n]=A2・sinEΘ[n]で表され、第3出力信号S3[n]はS3[n]=A3・sin(EΘ[n]+60)で表わされる。したがって、第2出力信号S2と第3出力信号S3とを用い、前述した方法と同様な方法でEΘ[n]とEとを演算することができる。EΘ[n]=Eθ[n]+60であるので、θ[n]=(EΘ[n]−60)/Eである。したがって、θ[n]=(EΘ[n]−60)/Eの式に、演算されたEΘ[n]とEを代入することにより、入力軸8の回転角θ[n]を演算することができる。また、EΘ[n]が演算されると、振幅A2および振幅A3を演算することができる。つまり、第2演算モードによって、E,θ[n],A2,A3を演算することができる。 When (Eθ [n] +60) is replaced with EΘ [n], the second output signal S 2 [n] is represented by S 2 [n] = A 2 · sinEΘ [n], and the third output signal S 3 [ n] is represented by S 3 [n] = A 3 · sin (EΘ [n] +60). Therefore, EΘ [n] and E can be calculated using the second output signal S 2 and the third output signal S 3 in the same manner as described above. Since EΘ [n] = Eθ [n] +60, θ [n] = (EΘ [n] −60) / E. Therefore, the rotation angle θ [n] of the input shaft 8 is calculated by substituting the calculated EΘ [n] and E into the equation θ [n] = (EΘ [n] −60) / E. Can do. When EΘ [n] is calculated, the amplitude A 2 and the amplitude A 3 can be calculated. That is, E, θ [n], A 2, A 3 can be calculated in the second calculation mode.
第2演算モードによる回転角演算に用いられる3サンプリング分の第2および第3出力信号を、前記式(6a)〜(6f)にならって次式(31a)〜(31f)で表すと、EΘ基本演算式およびE演算式はそれぞれ次式(32)および(33)で表すことができる。
S2[n]=A2sin(Eθ[n]+60) …(31a)
S2[n-1]=A2sin(Eθ[n-1]+60) …(31b)
S2[n-2]=A2sin(Eθ[n-2]+60) …(31c)
S3[n]=A3sin(Eθ[n]+120) …(31d)
S3[n-1]=A3sin(Eθ[n-1]+120) …(31e)
S3[n-2]=A3sin(Eθ[n-2]+120) …(31f)
When the second and third output signals for three samplings used for the rotation angle calculation in the second calculation mode are expressed by the following equations (31a) to (31f) following the equations (6a) to (6f), EΘ The basic arithmetic expression and the E arithmetic expression can be expressed by the following expressions (32) and (33), respectively.
S 2 [n] = A 2 sin (Eθ [n] +60) (31a)
S 2 [n-1] = A 2 sin (Eθ [n-1] +60) (31b)
S 2 [n-2] = A 2 sin (Eθ [n-2] +60) (31c)
S 3 [n] = A 3 sin (Eθ [n] +120) (31d)
S 3 [n-1] = A 3 sin (Eθ [n-1] +120) (31e)
S 3 [n-2] = A 3 sin (Eθ [n-2] +120) (31f)
なお、第2演算モードのE演算式(33)におけるq1〜q6,tの定義は、第1演算モードのE演算式(8)のq1〜q6,tの定義と異なっている。
[3]第3演算モード
第3演算モードは、第1および第3磁気センサ71,73が、3サンプリング周期(3演算周期)連続して共に同じ1つの磁極を検出している場合に適用される可能性がある演算モードである。第3演算モードでは、第1および第3磁気センサ71,73における3サンプリング分の出力信号に基づいて回転角θが演算される。
Note that the definitions of q 1 to q 6 , t in the E calculation formula (33) in the second calculation mode are different from the definitions of q 1 to q 6 , t in the E calculation formula (8) in the first calculation mode. .
[3] Third Calculation Mode The third calculation mode is applied when the first and third magnetic sensors 71 and 73 detect the same magnetic pole together for three sampling periods (three calculation periods) continuously. This is a calculation mode that may be In the third calculation mode, the rotation angle θ is calculated based on output signals for three samplings in the first and third magnetic sensors 71 and 73.
第3演算モードによる回転角演算に用いられる3サンプリング分の第1および第3出力信号を、前記式(6a)〜(6f)にならって表すと、次式(34a)〜(34f)となる。
S1[n]=A1sin(Eθ[n]) …(34a)
S1[n-1]=A1sin(Eθ[n-1]) …(34b)
S1[n-2]=A1sin(Eθ[n-2]) …(34c)
S3[n]=A3sin(Eθ[n]+120) …(34d)
S3[n-1]=A3sin(Eθ[n-1]+120) …(34e)
S3[n-2]=A3sin(Eθ[n-2]+120) …(34f)
Eθ[n]を1つの未知数と考えると、前記6つの式(34a)〜(34f)のうちの4つの式(34a),(34b),(34d),(34e)からなる連立方程式を解くことにより、Eθ[n]は、次式(35)(以下、「Eθ基本演算式(35)」という。)で表わされる。
When the first and third output signals for three samplings used for the rotation angle calculation in the third calculation mode are expressed according to the above equations (6a) to (6f), the following equations (34a) to (34f) are obtained. .
S 1 [n] = A 1 sin (Eθ [n]) (34a)
S 1 [n-1] = A 1 sin (Eθ [n-1]) (34b)
S 1 [n-2] = A 1 sin (Eθ [n-2]) (34c)
S 3 [n] = A 3 sin (Eθ [n] +120) (34d)
S 3 [n-1] = A 3 sin (Eθ [n-1] +120) (34e)
S 3 [n-2] = A 3 sin (Eθ [n-2] +120) (34f)
Considering Eθ [n] as one unknown, it solves simultaneous equations consisting of four equations (34a), (34b), (34d) and (34e) among the six equations (34a) to (34f). Thus, Eθ [n] is expressed by the following equation (35) (hereinafter referred to as “Eθ basic operation equation (35)”).
また、前記6つの式(34a)〜(34f)からなる連立方程式を解くことにより、角度幅誤差補正値Eは、次式(36)(以下、「E演算式(36)」という。)で表わされる。なお、第3演算モードのE演算式(36)におけるq1〜q6,tの定義は、第1演算モードのE演算式(8)のq1〜q6,tの定義と異なっている。 Further, by solving the simultaneous equations composed of the above six equations (34a) to (34f), the angular width error correction value E is expressed by the following equation (36) (hereinafter referred to as “E operation equation (36)”). Represented. The definition of q 1 to q 6 , t in the E operation expression (36) in the third operation mode is different from the definition of q 1 to q 6 , t in the E operation expression (8) in the first operation mode. .
したがって、前記Eθ基本演算式(35)により演算されたEθ[n]を、前記E演算式(36)により演算された角度幅誤差補正値Eで除することにより、θ[n]を求めることができる。つまり、次式(37)により、θ[n]を求めることができる。
θ[n]=Eθ[n]/E …(37)
ただし、E演算式(36)に含まれている分数のいずれかの分母が零になる場合には、E演算式(36)に基づいて角度幅誤差補正値Eを演算することはできない。そこで、この実施形態では、E演算式(36)に含まれている分数のいずれかの分母が零になる場合には、前回に演算された角度幅誤差補正値Eを今回の角度幅誤差補正値Eとして用いるようにしている。
Therefore, θ [n] is obtained by dividing Eθ [n] calculated by the Eθ basic calculation formula (35) by the angular width error correction value E calculated by the E calculation formula (36). Can do. That is, θ [n] can be obtained by the following equation (37).
θ [n] = Eθ [n] / E (37)
However, when any denominator of the fraction included in the E calculation formula (36) is zero, the angle width error correction value E cannot be calculated based on the E calculation formula (36). Therefore, in this embodiment, when any denominator of the fraction included in the E equation (36) becomes zero, the angle width error correction value E calculated last time is used as the current angle width error correction. The value E is used.
なお、E演算式(36)に含まれている分数のいずれかの分母が零になる場合とは、E演算式(36)におけるtの分母が零になる場合、tの分子が零になる場合または(S1[n]・S3[n]−S1[n-1]・S3[n-1])が零になる場合である。
また、Eθ基本演算式(35)に含まれている分数のいずれかの分母が零になる場合には、Eθ基本演算式(35)に基づいてEθ[n]を演算することはできない。そこで、この実施形態では、Eθ基本演算式(35)に含まれている分数のいずれかの分母が零になる場合には、Eθ基本演算式(35)とは異なる演算式によってEθ[n]を演算するようにしている。さらに、この実施形態では、Eθ基本演算式(35)に基づいてEθ[n]を演算することができるけれども、より簡単な演算式によってEθ[n]を演算できる場合には、Eθ基本演算式(35)とは異なる演算式によってEθ[n]を演算するようにしている。この実施形態では、Eθ基本演算式(35)よりも簡単にEθ[n]を演算できる場合とは、S1[n]=0の場合またはS3[n]=0の場合である。
It should be noted that the case where any denominator of the fraction included in E arithmetic expression (36) is zero means that when the denominator of t in E arithmetic expression (36) is zero, the numerator of t is zero. Or (S 1 [n] · S 3 [n] −S 1 [n−1] · S 3 [n−1]) becomes zero.
In addition, when any denominator of the fraction included in the Eθ basic calculation formula (35) is zero, Eθ [n] cannot be calculated based on the Eθ basic calculation formula (35). Therefore, in this embodiment, when any denominator of the fraction contained in the Eθ basic arithmetic expression (35) becomes zero, Eθ [n] is calculated by an arithmetic expression different from the Eθ basic arithmetic expression (35). Is calculated. Further, in this embodiment, Eθ [n] can be calculated based on the Eθ basic calculation formula (35). However, when Eθ [n] can be calculated using a simpler calculation formula, the Eθ basic calculation formula is used. Eθ [n] is calculated by an arithmetic expression different from (35). In this embodiment, the case where Eθ [n] can be calculated more easily than the Eθ basic calculation formula (35) is the case where S 1 [n] = 0 or S 3 [n] = 0.
この実施形態では、Eθ[n]を演算するための演算式として、Eθ基本演算式(35)を含めて10種類の演算式が用意されている。表2は、10種類の演算式と、その演算式が適用される条件とを示している。なお、Eθ[n]を演算する際には、表2の上から順番にその条件を満たしているか否かが判別され、条件を満たしたと判別されるとそれ以降の条件判別は行われず、当該条件に対応する演算式により、Eθ[n]が演算される。 In this embodiment, 10 types of calculation formulas including the Eθ basic calculation formula (35) are prepared as calculation formulas for calculating Eθ [n]. Table 2 shows 10 types of arithmetic expressions and conditions to which the arithmetic expressions are applied. When calculating Eθ [n], it is determined whether or not the condition is satisfied in order from the top of Table 2. If it is determined that the condition is satisfied, the subsequent condition determination is not performed. Eθ [n] is calculated by an arithmetic expression corresponding to the condition.
表2の上から1番目の演算式は、Eθ基本演算式(35)である。Eθ基本演算式(35)は、S1[n]およびS3[n]のいずれもが零でなく、かつEθ基本演算式(35)に含まれている分数のいずれの分母も零でないという条件を満たしている場合に、適用される。Eθ基本演算式(35)に含まれている分数のいずれの分母も零でないという条件は、p1−p3≠0でかつ、p1 2+p1p3+p3 2≠0でかつ、S1[n-1]≠0でかつS3[n-1]≠0である場合に満たされる。なお、S1[n-1]はp1の分母であり、S3[n-1]はp3の分母である。 The first arithmetic expression from the top of Table 2 is the Eθ basic arithmetic expression (35). In the Eθ basic arithmetic expression (35), neither S 1 [n] nor S 3 [n] is zero, and any denominator of the fraction included in the Eθ basic arithmetic expression (35) is not zero. Applicable when conditions are met. The condition that any denominator of the fraction included in the Eθ basic arithmetic expression (35) is not zero is that p 1 −p 3 ≠ 0, p 1 2 + p 1 p 3 + p 3 2 ≠ 0, and S It is satisfied when 1 [n-1] ≠ 0 and S 3 [n-1] ≠ 0. Note that S 1 [n-1] is the denominator of p 1 and S 3 [n-1] is the denominator of p 3 .
ただし、p1 2+p1p3+p3 2=0が成立するのは、p1=p3=0の場合だけであるが、第1磁気センサ71と第3磁気センサ73とは位相が120度ずれているため、両磁気センサ71,73のセンサ値S1,S3が同時に零になることはない。このため、p1 2+p1p3+p3 2=0が成立することはない。したがって、Eθ基本演算式(35)に含まれている分数のいずれの分母も零でないという条件は、p1−p3≠0でかつ、S1[n-1]≠0でかつS3[n-1]≠0である場合に満たされる。 However, p 1 2 + p 1 p 3 + p 3 2 = 0 holds only when p 1 = p 3 = 0, but the first magnetic sensor 71 and the third magnetic sensor 73 have a phase of 120. The sensor values S 1 and S 3 of both magnetic sensors 71 and 73 do not become zero at the same time because they are deviated. Therefore, p 1 2 + p 1 p 3 + p 3 2 = 0 does not hold. Therefore, the condition that any denominator of the fraction included in the Eθ basic arithmetic expression (35) is not zero is that p 1 −p 3 ≠ 0, S 1 [n−1] ≠ 0, and S 3 [ It is satisfied when n−1] ≠ 0.
表2の上から2番目の演算式は、p1−p3=0である場合に適用される演算式である。p1−p3=0が成立する場合について検討する。この場合には、p1=p3であるから、次式(38)が成立する。 The second arithmetic expression from the top of Table 2 is an arithmetic expression applied when p 1 −p 3 = 0. Consider the case where p 1 −p 3 = 0 holds. In this case, since p 1 = p 3 , the following equation (38) is established.
これを変形すると、次式(39)が得られる。 When this is transformed, the following equation (39) is obtained.
前記式(39)が成立する場合とは、Eθ[n]とEθ[n-1]とが等しい場合である。つまり、今回のEθ[n]が前回のEθ[n-1]に等しい場合である。そこで、S1[n]およびS3[n]のいずれもが零でなく、かつp1の分母S1[n-1]およびp3の分母S3[n-1]のいずれもが零でなく、かつp1−p3=0であるという条件を満たした場合には、前回に演算されたEθ[n-1]が今回のEθ[n]として用いられる。 The case where the equation (39) is satisfied is a case where Eθ [n] and Eθ [n−1] are equal. That is, the current Eθ [n] is equal to the previous Eθ [n−1]. Therefore, none of the S 1 [n] and S 3 [n] is not zero, and none of the denominator S 3 of the denominator S 1 [n-1] and p 3 of p 1 [n-1] is zero If the condition that p 1 −p 3 = 0 is satisfied, Eθ [n−1] calculated last time is used as the current Eθ [n].
表2の上から3番目および4番目の演算式は、p1の分母S1[n-1]が零となる場合に適用される演算式である。S1[n-1]=A1sinEθ[n-1]であるので、sinEθ[n-1]=0のときに、S1[n-1]=0となる。つまり、Eθ[n-1]が0度または180度のときに、S1[n-1]が零となる。S3[n-1]=A3sin(Eθ[n-1]+120)であるので、Eθ[n-1]が0度のときにはS3[n-1]>0となり、Eθ[n-1]が180度のときにはS3[n-1]<0となる。したがって、S1[n-1]=0でかつS3[n-1]>0のときにはEθ[n-1]=0となり、S1[n-1]=0でかつS3[n-1]<0のときにはEθ[n-1]=180となる。 The third and fourth arithmetic expressions from the top of Table 2 are arithmetic expressions applied when the denominator S 1 [n−1] of p 1 is zero. Since S 1 [n-1] = A 1 sinEθ [n-1], when sinEθ [n-1] = 0, S 1 [n-1] = 0. That is, when Eθ [n−1] is 0 degree or 180 degrees, S 1 [n−1] is zero. Since S 3 [n-1] = A 3 sin (Eθ [n-1] +120), when Eθ [n-1] is 0 degree, S 3 [n-1]> 0, and Eθ [n− When 1] is 180 degrees, S 3 [n−1] <0. Therefore, when S 1 [n-1] = 0 and S 3 [n-1]> 0, Eθ [n-1] = 0, and S 1 [n-1] = 0 and S 3 [n− When 1] <0, Eθ [n−1] = 180.
Eθ[n-1]=0である場合には、前記式(34d),(34e)は、それぞれ次式(40d),(40e)で表される。
S3[n]=A3sin(Eθ[n]+120) …(40d)
S3[n-1]=A3sin120=√3/2・A2 …(40e)
前記式(40e)から、次式(41)が得られる。
When Eθ [n−1] = 0, the expressions (34d) and (34e) are expressed by the following expressions (40d) and (40e), respectively.
S 3 [n] = A 3 sin (Eθ [n] +120) (40d)
S 3 [n-1] = A 3 sin 120 = √3 / 2 · A 2 (40e)
From the equation (40e), the following equation (41) is obtained.
A3=(2/√3)・S3[n-1] …(41)
前記式(41)を前記式(40d)に代入すると、次式(42)が得られる。
sin(Eθ[n]+120)=(√3/2)・(S3[n]/S3[n-1]) …(42)
したがって、Eθ[n]は、次式(43)により演算することができる。
A 3 = (2 / √3) · S 3 [n-1] (41)
Substituting the equation (41) into the equation (40d) yields the following equation (42).
sin (Eθ [n] +120) = (√3 / 2) · (S 3 [n] / S 3 [n−1]) (42)
Therefore, Eθ [n] can be calculated by the following equation (43).
つまり、表2の上から3番目に示すように、S1[n]およびS3[n]のいずれもが零でなく、かつp3の分母S3[n-1]が零でなく、かつp1の分母S1[n-1]が零であり、かつS3[n-1]>0であるという条件を満たした場合には、前記式(43)で表される演算式に基づいてEθ[n]が演算される。
一方、Eθ[n-1]=180である場合には、前記式(34d),(34e)は、それぞれ次式(44d),(44e)で表される。
That is, as shown third from the top in Table 2, neither S 1 [n] nor S 3 [n] is zero, and the denominator S 3 [n−1] of p 3 is not zero. When the condition that the denominator S 1 [n-1] of p 1 is zero and S 3 [n-1]> 0 is satisfied, the arithmetic expression represented by the above equation (43) is satisfied. Based on this, Eθ [n] is calculated.
On the other hand, when Eθ [n−1] = 180, the expressions (34d) and (34e) are expressed by the following expressions (44d) and (44e), respectively.
S3[n]=A3sin(Eθ[n]+120) …(44d)
S3[n-1]=A3sin300=−√3/2・ A3 …(44e)
前記式(44e)から、次式(45)が得られる。
A3=(−2/√3)・S3[n-1] …(45)
前記式(45)を前記式(44d)に代入すると、次式(46)が得られる。
S 3 [n] = A 3 sin (Eθ [n] +120) (44d)
S 3 [n-1] = A 3 sin 300 = −√3 / 2 · A 3 (44e)
From the equation (44e), the following equation (45) is obtained.
A 3 = (− 2 / √3) · S3 [n−1] (45)
Substituting the equation (45) into the equation (44d) yields the following equation (46).
sin(Eθ[n]+120)=(−√3/2)・(S3[n]/S3[n-1]) …(46)
したがって、Eθ[n]は、次式(47)により演算することができる。
sin (Eθ [n] +120) = (− √3 / 2) · (S 3 [n] / S 3 [n−1]) (46)
Therefore, Eθ [n] can be calculated by the following equation (47).
つまり、表2の上から4番目に示すように、S1[n]およびS3[n]のいずれもが零でなく、かつp3の分母S3[n-1]が零でなく、かつp1の分母S1[n-1]が零であり、かつS3[n-1]<0であるという条件を満たした場合には、前記式(47)で表される演算式に基づいてEθ[n]が演算される。
表2の上から5番目および6番目の演算式は、S3[n]=0となる場合に適用される演算式である。S3[n]=A3sin(Eθ[n]+120)であるので、sin(Eθ[n]+120)=0のときに、S3[n]=0となる。つまり、Eθ[n]が−120度または60度のときに、S3[n]=0となる。S1[n]=A1sinEθ[n]であるので、Eθ[n]が−120度のときにはS1[n]<0となり、Eθ[n]が60度のときにはS1[n]>0となる。したがって、S3[n]=0でかつS1[n]>0のときにはEθ[n]=60となり、S3[n]=0でかつS1[n]<0であればEθ[n]=−120となる。
That is, as shown in the fourth from the top of Table 2, neither S 1 [n] nor S 3 [n] is zero and the denominator S 3 [n−1] of p 3 is not zero. And when the condition that the denominator S 1 [n-1] of p 1 is zero and S 3 [n-1] <0 is satisfied, the arithmetic expression represented by the equation (47) is obtained. Based on this, Eθ [n] is calculated.
The fifth and sixth arithmetic expressions from the top in Table 2 are arithmetic expressions that are applied when S 3 [n] = 0. Since S 3 [n] = A 3 sin (Eθ [n] +120), S 3 [n] = 0 when sin (Eθ [n] +120) = 0. That is, when Eθ [n] is −120 degrees or 60 degrees, S 3 [n] = 0. Since S 1 [n] = A 1 sin Eθ [n], S 1 [n] <0 when Eθ [n] is −120 degrees, and S 1 [n]> when Eθ [n] is 60 degrees. 0. Therefore, Eθ [n] = 60 when S 3 [n] = 0 and S 1 [n]> 0, and Eθ [n] when S 3 [n] = 0 and S 1 [n] <0. ] = − 120.
つまり、表2の上から5番目に示すように、S1[n]が零でなく、かつp3の分母S3[n-1]が零でなく、かつS3[n]=0であり、かつS1[n]>0であるという条件を満たした場合には、Eθ[n]は60度として演算される。また、表2の上から6番目に示すように、S1[n]が零でなく、かつp3の分母S3[n-1]が零でなく、かつS3[n]=0であり、かつS1[n]<0であるという条件を満たした場合には、Eθ[n]は−120度として演算される。 That is, as shown fifth from the top in Table 2, S 1 [n] is not zero, the denominator S 3 [n−1] of p 3 is not zero, and S 3 [n] = 0. If there is a condition that S 1 [n]> 0, Eθ [n] is calculated as 60 degrees. Further, as shown in Table 6 from the top, S 1 [n] is not zero, the denominator S 3 [n−1] of p 3 is not zero, and S 3 [n] = 0. If the condition that S 1 [n] <0 is satisfied, Eθ [n] is calculated as −120 degrees.
表2の上から7番目および8番目の演算式は、p3の分母S3[n-1]が零となる場合に適用される演算式である。S3[n-1]=A3sin(Eθ[n-1]+120)であるので、sin(Eθ[n-1]+120)=0のときに、S3[n-1]=0となる。つまり、Eθ[n-1]が−120度または60度のときに、S3[n-1]が零となる。S1[n-1]=A1sinEθ[n-1]であるので、Eθ[n-1]が−120度のときにはS1[n-1]<0となり、Eθ[n-1]が60度のときにはS1[n-1]>0となる。したがって、S3[n-1]=0でかつS1[n-1]>0のときにはEθ[n-1]=60となり、S3[n-1]=0でかつS1[n-1]<0のときにはEθ[n-1]=−120となる。 The seventh and eighth arithmetic expressions from the top of Table 2 are arithmetic expressions applied when the denominator S 3 [n−1] of p 3 is zero. Since S 3 [n-1] = A 3 sin (Eθ [n-1] +120), when sin (Eθ [n-1] +120) = 0, S 3 [n-1] = 0 Become. That is, when Eθ [n−1] is −120 degrees or 60 degrees, S 3 [n−1] is zero. Since S 1 [n-1] = A 1 sinEθ [n-1], when Eθ [n-1] is −120 degrees, S 1 [n-1] <0, and Eθ [n-1] is When it is 60 degrees, S 1 [n-1]> 0. Therefore, when S 3 [n-1] = 0 and S 1 [n-1]> 0, Eθ [n-1] = 60, S 3 [n-1] = 0 and S 1 [n− When 1] <0, Eθ [n−1] = − 120.
Eθ[n-1]=60である場合には、前記式(34a),(34b)は、それぞれ次式 (48a),(48b)で表される。
S1[n]=A1sinEθ[n] …(48a)
S1[n-1]=A1sin60=√3/2・ A1 …(48b)
前記式(48b)から、次式(49)が得られる。
When Eθ [n−1] = 60, the equations (34a) and (34b) are expressed by the following equations (48a) and (48b), respectively.
S 1 [n] = A 1 sin Eθ [n] (48a)
S 1 [n-1] = A 1 sin 60 = √3 / 2 · A 1 (48b)
From the equation (48b), the following equation (49) is obtained.
A1=(2/√3)・S1[n-1] …(49)
前記式(49)を前記式(48a)に代入すると、次式(50)が得られる。
sinEθ[n]=(√3/2)・(S1[n]/S1[n-1]) …(50)
したがって、Eθ[n]は、次式(51)により演算することができる。
A 1 = (2 / √3) · S 1 [n-1] (49)
Substituting the equation (49) into the equation (48a) yields the following equation (50).
sinEθ [n] = (√3 / 2) · (S 1 [n] / S 1 [n-1]) (50)
Therefore, Eθ [n] can be calculated by the following equation (51).
つまり、表2の上から7番目に示すように、S1[n]が零でなく、かつp3の分母S3[n-1]が零であり、かつS1[n-1]>0であるという条件を満たした場合には、前記式(51)で表される演算式に基づいてEθ[n]が演算される。
一方、Eθ[n-1]=−120である場合には、前記式 (34a),(34b)は、それぞれ次式 (52a),(52b)で表される。
That is, as shown in the seventh from the top in Table 2, S 1 [n] is not zero, the denominator S 3 [n-1] of p 3 is zero, and S 1 [n-1]> When the condition of 0 is satisfied, Eθ [n] is calculated based on the arithmetic expression expressed by the above equation (51).
On the other hand, when Eθ [n−1] = − 120, the equations (34a) and (34b) are expressed by the following equations (52a) and (52b), respectively.
S1[n]=A1sinEθ[n] …(52a)
S1[n-1]=A1sin(−120)=−√3/2・ A1 …(52b)
前記式(52b)から、次式(53)が得られる。
A1=(−2/√3)・S1[n-1] …(53)
前記式(53)を前記式(52a)に代入すると、次式(54)が得られる。
S 1 [n] = A 1 sin Eθ [n] (52a)
S 1 [n-1] = A 1 sin (−120) = − √3 / 2 · A 1 (52b)
From the equation (52b), the following equation (53) is obtained.
A 1 = (− 2 / √3) · S 1 [n−1] (53)
Substituting the equation (53) into the equation (52a) yields the following equation (54).
sinEθ[n]=(−√3/2)・(S1[n]/S1[n-1]) …(54)
したがって、Eθ[n]は、次式(55)により演算することができる。
sinEθ [n] = (− √3 / 2) · (S 1 [n] / S 1 [n−1]) (54)
Therefore, Eθ [n] can be calculated by the following equation (55).
つまり、表2の上から8番目に示すように、S1[n]が零でなく、かつp3の分母S3[n-1]が零であり、かつS1[n-1]<0であるという条件を満たした場合には、前記式(55)で表される演算式に基づいてEθ[n]が演算される。
表2の上から9番目および10番目の演算式は、S1[n]=0となる場合に適用される演算式である。S1[n]=A1sinEθ[n]であるので、sinEθ[n]=0のときに、S1[n]=0となる。つまり、Eθ[n]が0度または180度のときに、S1[n]=0となる。S3[n]=A3sin(Eθ[n]+120]であるので、Eθ[n]が0度のときにはS3[n]>0となり、Eθ[n]が180度のときにはS3[n]<0となる。したがって、S1[n]=0でかつS3[n]>0であればEθ[n]=0となり、S1[n]=0でかつS3[n]<0であればEθ[n]=180となる。
In other words, as shown in Table 8 from the top, S 1 [n] is not zero, the denominator S 3 [n-1] of p 3 is zero, and S 1 [n-1] < When the condition of 0 is satisfied, Eθ [n] is calculated based on the arithmetic expression represented by the expression (55).
The ninth and tenth arithmetic expressions from the top of Table 2 are arithmetic expressions applied when S 1 [n] = 0. Since S 1 [n] = A 1 sinEθ [n], when sinEθ [n] = 0, S 1 [n] = 0. That is, when Eθ [n] is 0 degree or 180 degrees, S 1 [n] = 0. Since it is S 3 [n] = A 3 sin (Eθ [n] +120], Eθ [n] is S 3 [n] when the 0 degree> 0, E.theta [n] is at the time of 180 S 3 [ n] <0 Therefore, if S 1 [n] = 0 and S 3 [n]> 0, Eθ [n] = 0, and S 1 [n] = 0 and S 3 [n] If <0, Eθ [n] = 180.
つまり、表2の上から9番目に示すように、S1[n]が零であり、かつS3[n]>0であるという条件を満たした場合には、Eθ[n]は0度として演算される。また、表2の上から10番目に示すように、S1[n]が零であり、かつS3[n]<0であるという条件を満たした場合には、Eθ[n]は180度として演算される。
Eθ[n]が演算されると、前記式(34a)に基づいて振幅A1を演算することができるとともに、前記式(34d)に基づいて振幅A3を演算することができる。つまり、第3演算モードによって、E,θ[n],A1,A3を演算することができる。
That is, as shown in the ninth from the top in Table 2, when the condition that S 1 [n] is zero and S 3 [n]> 0 is satisfied, Eθ [n] is 0 degree. Is calculated as Further, as shown in the tenth from the top of Table 2, when the condition that S 1 [n] is zero and S 3 [n] <0 is satisfied, Eθ [n] is 180 degrees. Is calculated as
When Eθ [n] is calculated, the amplitude A 1 can be calculated based on the equation (34a), and the amplitude A 3 can be calculated based on the equation (34d). That is, E, θ [n], A 1, A 3 can be calculated in the third calculation mode.
第1演算モード、第2演算モードまたは第3演算モードでは、3つの磁気センサ71,72,73のうちの2つの磁気センサにおける3サンプリング分の出力信号に基づいて入力軸8の回転角θ[n]を演算しているので、精度の高い回転角を演算することが可能となる。また、第1〜第3演算モードでは、入力軸8の回転角θ[n]の演算に用いられる数式の数が、これらの数式に含まれている本来の未知数の数より少なくても、入力軸8の回転角θ[n]を演算することができるので、入力軸8の回転角θ[n]を演算するために必要なセンサ値の数を少なくすることが可能となる。 In the first calculation mode, the second calculation mode, or the third calculation mode, the rotation angle θ [of the input shaft 8 based on the output signals for three samplings in two of the three magnetic sensors 71, 72, 73. Since n] is calculated, a highly accurate rotation angle can be calculated. Further, in the first to third calculation modes, even if the number of mathematical expressions used for the calculation of the rotation angle θ [n] of the input shaft 8 is smaller than the number of original unknowns included in these mathematical expressions, the input is performed. Since the rotation angle θ [n] of the shaft 8 can be calculated, the number of sensor values required for calculating the rotation angle θ [n] of the input shaft 8 can be reduced.
第1〜第3演算モードでは、3サンプリング間での同じ磁気センサの出力信号の振幅が互いに等しいとみなしている。3サンプリング間での同じ磁気センサの出力信号の振幅は、温度変化の影響によって異なる値となる可能性がある。しかしながら、サンプリング間隔が小さい場合には、3サンプリング間の温度変化は非常に小さいので、3サンプリング間での同じ磁気センサの出力信号の振幅は等しいとみなすことができる。したがって、第1〜第3演算モードでは、3サンプリング間での温度変化の影響による振幅のばらつきを補償することができる。また、第1〜第3演算モードでは、回転角の演算に用いられている2つの磁気センサ間の振幅は、別々の未知数として扱っているので、それらの2つの磁気センサ間の温度特性のばらつきの影響を補償することができる。これにより、精度の高い回転角を検出することができる。 In the first to third calculation modes, it is considered that the amplitudes of the output signals of the same magnetic sensor are the same between the three samplings. The amplitude of the output signal of the same magnetic sensor during three samplings may be different depending on the influence of temperature change. However, when the sampling interval is small, the temperature change between the three samplings is very small, so that the amplitude of the output signal of the same magnetic sensor during the three samplings can be regarded as equal. Therefore, in the first to third calculation modes, it is possible to compensate for the amplitude variation due to the temperature change between the three samplings. In the first to third calculation modes, the amplitude between the two magnetic sensors used for the calculation of the rotation angle is treated as a separate unknown, and therefore the temperature characteristics of the two magnetic sensors vary. Can be compensated for. Thereby, a highly accurate rotation angle can be detected.
また、第1〜第3演算モードでは、磁石61の各磁極M1〜M8の角度幅(ピッチ幅)のばらつきを高い精度で補償できるので、誤差のより小さい回転角を検出することが可能となる。
[4]第4演算モード
第4演算モードは、第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値E1および第1出力信号S1の振幅A1が第1演算モードまたは第3演算モードによって既に演算されてメモリに記憶されている場合に適用される可能性がある演算モードである。第4演算モードでは、主として第1磁気センサ71の出力信号S1に基づいて回転角θが演算される。
Further, in the first to third calculation modes, variations in the angular width (pitch width) of the magnetic poles M1 to M8 of the magnet 61 can be compensated with high accuracy, so that a rotation angle with a smaller error can be detected. .
[4] Fourth operation mode 4 arithmetic mode, the angular width error correction value amplitude A 1 of E 1 and the first output signals S 1 to the first magnetic sensor 71 corresponds to the magnetic pole are detected by the first operational mode Alternatively, the calculation mode may be applied when already calculated in the third calculation mode and stored in the memory. In the fourth calculation mode, the rotation angle θ is calculated mainly based on the output signal S 1 of the first magnetic sensor 71.
たとえば、図8Aに示すように、磁石61(入力軸8)が矢印で示す方向に回転している場合において、第1および第2磁気センサ71,72が同じ磁極(この例ではM1)を検出している状態から、第2磁気センサ72の検出している磁極が変化した場合を想定する。変化直後の状態においては第2磁気センサ72および第3磁気センサ73が共に同じ1つの磁極を3サンプリング周期(3演算周期)連続して検出していないため、第2演算モードを適用できない。このような場合等には、第4演算モードが適用される可能性がある。 For example, as shown in FIG. 8A, when the magnet 61 (input shaft 8) rotates in the direction indicated by the arrow, the first and second magnetic sensors 71 and 72 detect the same magnetic pole (M1 in this example). A case is assumed where the magnetic pole detected by the second magnetic sensor 72 changes from the state in which the magnetic field is detected. In the state immediately after the change, both the second magnetic sensor 72 and the third magnetic sensor 73 do not detect the same magnetic pole continuously for three sampling periods (three calculation periods), so the second calculation mode cannot be applied. In such a case, the fourth calculation mode may be applied.
角度幅誤差補正値Eと今演算周期の番号nを用いると、今演算周期においてサンプリングされた第1磁気センサ71の出力信号S1は、次式(56)で表される。
S1[n]=A1[n]sin(E1θ[n]) …(56)
E1は、第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値である。
前記式(56)から回転角θ[n]は、次式(57)で表される。
With number n of the angular width error correction value E and calculation cycle, the output signals S 1 of the first magnetic sensor 71 sampled at the present calculation cycle is represented by the following formula (56).
S 1 [n] = A 1 [n] sin (E 1 θ [n]) (56)
E 1 is an angle width error correction value corresponding to the magnetic pole detected by the first magnetic sensor 71.
From the equation (56), the rotation angle θ [n] is expressed by the following equation (57).
θ[n]=(1/E1)sin−1(S1[n]/A1) …(57)
第1磁気センサ71が検出している磁極に対応するE1およびA1がメモリに記憶されているとすると、それらを前記式(57)に代入することにより、θ[n]を演算することができる。ただし、式(57)によって回転角θ[n]を演算する場合には、2つの回転角θ[n]が演算されるので、いずれの回転角が実際の回転角であるかを判定する必要がある。この判定方法について、図9を参照して説明する。図9には、第1出力信号S1、第2出力信号S2および第3出力信号S3の1周期分の波形が示されている。図9の横軸の回転角[deg]は、電気角を表している。
θ [n] = (1 / E 1 ) sin −1 (S 1 [n] / A 1 ) (57)
Assuming that E 1 and A 1 corresponding to the magnetic pole detected by the first magnetic sensor 71 are stored in the memory, θ [n] is calculated by substituting them into the equation (57). Can do. However, when the rotation angle θ [n] is calculated by the equation (57), since two rotation angles θ [n] are calculated, it is necessary to determine which rotation angle is the actual rotation angle. There is. This determination method will be described with reference to FIG. FIG. 9 shows waveforms for one cycle of the first output signal S 1 , the second output signal S 2, and the third output signal S 3 . The rotation angle [deg] on the horizontal axis in FIG. 9 represents an electrical angle.
図9に示すように、第1出力信号S1[n]がたとえば正の値である場合には、(1/E1)sin−1(S1[n]/A1)に対応する回転角θ[n]は、0度〜90度の領域R1内の回転角と、90度〜180度の領域R2内の回転角との2つの回転角となる。また、第1出力信号S1[n]がたとえば負の値である場合には、(1/E1)sin−1(S1[n]/A1)に対応する回転角θ[n]は、180度〜270度の領域U1内の回転角と、270度〜360度の領域U2内の回転角との2つの回転角となる。 As shown in FIG. 9, when the first output signal S 1 [n] has a positive value, for example, the rotation corresponding to (1 / E 1 ) sin −1 (S 1 [n] / A 1 ) The angle θ [n] is two rotation angles: a rotation angle in the region R1 of 0 to 90 degrees and a rotation angle in the region R2 of 90 to 180 degrees. Further, when the first output signal S 1 [n] is, for example, a negative value, the rotation angle θ [n] corresponding to (1 / E 1 ) sin −1 (S 1 [n] / A 1 ). Are two rotation angles: a rotation angle in the region U1 of 180 to 270 degrees and a rotation angle in the region U2 of 270 to 360 degrees.
この実施形態では、第1磁気センサ71以外の2つの磁気センサ72,73の出力信号S2,S3のいずれか一方に基づいて、前記式(57)によって演算される2つの回転角のうちのいずれが実際の回転角であるかが判定される。なお、第2磁気センサ72および第3磁気センサ73のうちのいずれか一方が故障している場合には、正常である一方の磁気センサの出力信号に基づいて、前記判定が行われる。 In this embodiment, based on one of the output signals S 2 and S 3 of the two magnetic sensors 72 and 73 other than the first magnetic sensor 71, out of the two rotation angles calculated by the equation (57). Which is the actual rotation angle is determined. When one of the second magnetic sensor 72 and the third magnetic sensor 73 is out of order, the determination is made based on the output signal of one normal magnetic sensor.
まず、第2出力信号S2[n]に基づいて、前記判定が行われる場合について説明する。第2出力信号S2の振幅A2の1/2を閾値a(a>0)とする。この閾値aは、たとえば、メモリに記憶されている第2出力信号S2の振幅A2であって、第1磁気センサ71が検出している磁極に対応する振幅A2に基づいて求めることができる。なお、第1出力信号S1の振幅A1の1/2を閾値a(a>0)としてもよい。 First, the case where the determination is performed based on the second output signal S 2 [n] will be described. 1/2 of the amplitude A 2 of the second output signal S 2 is set as a threshold value a (a> 0). The threshold value a, for example, a amplitude A 2 of the second output signal S 2 which is stored in the memory, be determined based on the amplitude A 2 of the first magnetic sensor 71 corresponds to the magnetic pole is detected it can. Note that ½ of the amplitude A 1 of the first output signal S 1 may be set as the threshold value a (a> 0).
第2出力信号S2[n]がa以上のときに取り得る入力軸8の回転角θ[n]は、0度〜90度の範囲および330度〜360度の範囲である。第2出力信号S2[n]が−a未満のときに取り得る入力軸8の回転角θ[n]は、150度〜270度の範囲である。第2出力信号S2[n]が−a以上a未満のときに取り得る入力軸8の回転角θ[n]は、90度〜150度の範囲および270度〜330度の範囲である。 The rotation angle θ [n] of the input shaft 8 that can be taken when the second output signal S 2 [n] is greater than or equal to a is in the range of 0 degrees to 90 degrees and in the range of 330 degrees to 360 degrees. The rotation angle θ [n] of the input shaft 8 that can be taken when the second output signal S 2 [n] is less than −a is in the range of 150 degrees to 270 degrees. The rotation angle θ [n] of the input shaft 8 that can be taken when the second output signal S 2 [n] is greater than or equal to −a and less than a is in the range of 90 ° to 150 ° and in the range of 270 ° to 330 °.
したがって、前記式(57)によって演算された2つの回転角のうち、いずれの回転角が実際の回転角であるかを、第2出力信号S2[n]に基づいて判定することができる。具体的には、第1出力信号S1[n]が正の値である場合には、第2出力信号S2[n]がa以上であれば、前記式(57)によって演算された2つの回転角のうち領域R1内の回転角が実際の回転角であると判定される。一方、第2出力信号S2[n]がa未満であれば、前記式(57)によって演算された2つの回転角のうち領域R2内の回転角が実際の回転角であると判定される。 Therefore, it can be determined based on the second output signal S 2 [n] which of the two rotation angles calculated by the equation (57) is the actual rotation angle. Specifically, when the first output signal S 1 [n] is a positive value, if the second output signal S 2 [n] is greater than or equal to a, 2 calculated by the equation (57) is used. Of the two rotation angles, the rotation angle in the region R1 is determined to be the actual rotation angle. On the other hand, if the second output signal S 2 [n] is less than a, it is determined that the rotation angle in the region R2 is the actual rotation angle among the two rotation angles calculated by the equation (57). .
第1出力信号S1[n]が負の値である場合には、第2出力信号S2[n]が−a未満であれば、前記式(57)によって演算された2つの回転角のうち領域U1内の回転角が実際の回転角であると判定される。一方、第2出力信号S2[n]が−a以上であれば、前記式(57)によって演算された2つの回転角のうち領域U2内の回転角が実際の回転角であると判定される。 When the first output signal S 1 [n] is a negative value, if the second output signal S 2 [n] is less than −a, the two rotation angles calculated by the equation (57) are used. Of these, the rotation angle in the region U1 is determined to be the actual rotation angle. On the other hand, if the second output signal S 2 [n] is −a or more, it is determined that the rotation angle in the region U2 is the actual rotation angle among the two rotation angles calculated by the equation (57). The
次に、第3出力信号S3[n]に基づいて、前記判定が行われる場合について説明する。第3出力信号S3の振幅A3の1/2を閾値a(a>0)とする。この閾値aは、たとえば、メモリに記憶されている第3出力信号S3の振幅A3であって、第1磁気センサ71が検出している磁極に対応する振幅A3に基づいて求めることができる。なお、第1出力信号S1の振幅A1の1/2を閾値a(a>0)としてもよい。 Next, a case where the determination is performed based on the third output signal S 3 [n] will be described. A half of the amplitude A 3 of the third output signal S 3 is set as a threshold value a (a> 0). The threshold value a, for example, a amplitude A 3 of the third output signal S 3 which is stored in the memory, be determined based on the amplitude A 3 of the first magnetic sensor 71 corresponds to the magnetic pole is detected it can. Note that ½ of the amplitude A 1 of the first output signal S 1 may be set as the threshold a (a> 0).
第1出力信号S1[n]が正の値である場合には、第3出力信号S3[n]が−a以上であれば、前記式(57)によって演算された2つの回転角のうち領域R1内の回転角が実際の回転角であると判定される。一方、第3出力信号S3[n]が−a未満であれば、前記式(57)によって演算された2つの回転角のうち領域R2内の回転角が実際の回転角であると判定される。 When the first output signal S 1 [n] is a positive value, if the third output signal S 3 [n] is greater than or equal to −a, the two rotation angles calculated by the equation (57) are used. Of these, the rotation angle in the region R1 is determined to be the actual rotation angle. On the other hand, if the third output signal S 3 [n] is less than −a, it is determined that the rotation angle in the region R2 is the actual rotation angle among the two rotation angles calculated by the equation (57). The
第1出力信号S1[n]が負の値である場合には、第3出力信号S3[n]がa未満であれば、前記式(57)によって演算された2つの回転角のうち領域U1内の回転角が実際の回転角であると判定される。一方、第3出力信号S3[n]がa以上であれば、前記式(57)によって演算された2つの回転角のうち領域U2内の回転角が実際の回転角であると判定される。
[5]第5演算モード
第5演算モードは、第2磁気センサ72が検出している磁極に対応する角度幅誤差補正値E2および第2出力信号S2の振幅A2が第1演算モードまたは第2演算モードによって既に演算されてメモリに記憶されている場合に適用される可能性がある演算モードである。第5演算モードでは、主として第2磁気センサ72の出力信号S2に基づいて回転角θが演算される。
When the first output signal S 1 [n] is a negative value, if the third output signal S 3 [n] is less than a, the two rotation angles calculated by the equation (57) are used. It is determined that the rotation angle in the region U1 is an actual rotation angle. On the other hand, if the third output signal S 3 [n] is greater than or equal to a, it is determined that the rotation angle in the region U2 is the actual rotation angle among the two rotation angles calculated by the equation (57). .
[5] Fifth operation mode fifth operation mode, amplitude A 2 of the angular width error correction value E 2 and the second output signal S 2 of the second magnetic sensor 72 corresponds to the magnetic pole are detected by the first operational mode Alternatively, the calculation mode may be applied when the calculation is already performed in the second calculation mode and stored in the memory. In the fifth operation mode, the rotation angle θ is calculated mainly on the basis of the output signal S 2 of the second magnetic sensor 72.
たとえば、図8Bに示すように、磁石61(入力軸8)が矢印で示す方向に回転している場合において、第1、第2および第3磁気センサ71,72,73が同じ磁極(この例ではM1)を検出している状態から、第1磁気センサ71が検出している磁極が変化した場合を想定する。第3磁気センサが故障している場合には、変化後の状態において、第2演算モードを適用することはできない。このような場合等に、第5演算モードが適用される可能性がある。 For example, as shown in FIG. 8B, when the magnet 61 (input shaft 8) rotates in the direction indicated by the arrow, the first, second, and third magnetic sensors 71, 72, 73 have the same magnetic pole (this example Let us assume a case where the magnetic pole detected by the first magnetic sensor 71 changes from the state in which M1) is detected. When the third magnetic sensor is out of order, the second calculation mode cannot be applied in the changed state. In such a case, the fifth calculation mode may be applied.
角度幅誤差補正値Eと今演算周期の番号nを用いると、今演算周期においてサンプリングされた第2磁気センサ72の出力信号S2は、次式 (58)で表される。
S2[n]=A2[n]sin(E2θ[n]+60) …(58)
E2は、第2磁気センサ72が検出している磁極に対応する角度幅誤差補正値である。
前記式(58)から回転角θ[n]は、次式(59)で表される。
With number n of the angular width error correction value E and calculation cycle, the output signal S 2 of the second magnetic sensor 72 sampled at the present calculation cycle is represented by the following formula (58).
S 2 [n] = A 2 [n] sin (E 2 θ [n] +60) (58)
E 2 is an angle width error correction value corresponding to the magnetic pole detected by the second magnetic sensor 72.
From the equation (58), the rotation angle θ [n] is expressed by the following equation (59).
θ[n]=(1/E2){sin−1(S2[n]/A2)−60} …(59)
第2磁気センサ72が検出している磁極に対応するE2およびA2がメモリに記憶されているとすると、それらを、前記式(59)に代入することにより、θ[n]を演算することができる。
前記式(59)によって回転角θ[n]を演算すると、2つの回転角θ[n]が演算される。そこで、第2磁気センサ72以外の2つの磁気センサ71,73の出力信号S1,S3のいずれか一方に基づいて、前記式(59)によって演算された2つの回転角θ[n]のうちのいずれが実際の回転角であるかを判定する。なお、第1磁気センサ71および第3磁気センサ73のうちのいずれか一方が故障している場合には、正常である一方の磁気センサの出力信号に基づいて、前記判定が行われる。
θ [n] = (1 / E 2 ) {sin −1 (S 2 [n] / A 2 ) −60} (59)
Assuming that E 2 and A 2 corresponding to the magnetic pole detected by the second magnetic sensor 72 are stored in the memory, θ [n] is calculated by substituting them into the equation (59). be able to.
When the rotation angle θ [n] is calculated by the equation (59), two rotation angles θ [n] are calculated. Therefore, based on one of the output signals S 1 and S 3 of the two magnetic sensors 71 and 73 other than the second magnetic sensor 72, the two rotation angles θ [n] calculated by the equation (59) are calculated. It is determined which of these is the actual rotation angle. Note that, when one of the first magnetic sensor 71 and the third magnetic sensor 73 is out of order, the determination is made based on the output signal of one normal magnetic sensor.
まず、第1出力信号S1[n]に基づいて、前記判定が行われる場合について説明する。メモリに記憶されている第1出力信号S1の振幅A1の1/2または第2出力信号S2の振幅A2の1/2を閾値a(a>0)とする。
第2出力信号S2[n]が正の値である場合には、第1出力信号S1[n]がa未満であれば、前記式(59)によって演算された2つの回転角のうち0度〜30度または300度〜360度の領域内の回転角が実際の回転角であると判定される。一方、第1出力信号S1[n]がa以上であれば、前記式(59)によって演算された2つの回転角のうち30度〜120度の領域内の回転角が実際の回転角であると判定される。
First, the case where the determination is performed based on the first output signal S 1 [n] will be described. The threshold a (a> 0) is set to 1/2 of the amplitude A 1 of the first output signal S 1 or 1/2 of the amplitude A 2 of the second output signal S 2 stored in the memory.
When the second output signal S 2 [n] is a positive value, if the first output signal S 1 [n] is less than a, the two rotation angles calculated by the equation (59) are used. It is determined that the rotation angle in the region of 0 degrees to 30 degrees or 300 degrees to 360 degrees is the actual rotation angle. On the other hand, if the first output signal S 1 [n] is greater than or equal to a, the rotation angle in the region of 30 to 120 degrees out of the two rotation angles calculated by the equation (59) is the actual rotation angle. It is determined that there is.
第2出力信号S2[n]が負の値である場合には、第1出力信号S1[n]が−a以上であれば、前記式(59)によって演算された2つの回転角のうち120度〜210度の領域内の回転角が実際の回転角であると判定される。一方、第1出力信号S1[n]が−a未満であれば、前記式(59)によって演算された2つの回転角のうち210度〜300度の領域内の回転角が実際の回転角であると判定される。 When the second output signal S 2 [n] is a negative value, if the first output signal S 1 [n] is greater than or equal to −a, the two rotation angles calculated by the equation (59) are used. Of these, the rotation angle within the range of 120 to 210 degrees is determined to be the actual rotation angle. On the other hand, if the first output signal S 1 [n] is less than −a, the rotation angle in the region of 210 ° to 300 ° out of the two rotation angles calculated by the equation (59) is the actual rotation angle. It is determined that
次に、第3出力信号S3[n]に基づいて、前記判定が行われる場合について説明する。メモリに記憶されている第3出力信号S2の振幅A3の1/2または第2出力信号S2の振幅A2の1/2を閾値a(a>0)とする。
第2出力信号S2[n]が正の値である場合には、第3出力信号S3[n]がa以上であれば、前記式(59)によって演算された2つの回転角のうち0度〜30度または300度〜360度の領域内の回転角が実際の回転角であると判定される。一方、第3出力信号S3[n]がa未満であれば、前記式(59)によって演算された2つの回転角のうち30度〜120度の領域内の回転角が実際の回転角であると判定される。
Next, a case where the determination is performed based on the third output signal S 3 [n] will be described. The threshold a (a> 0) is set to 1/2 of the amplitude A 3 of the third output signal S 2 or 1/2 of the amplitude A 2 of the second output signal S 2 stored in the memory.
In the case where the second output signal S 2 [n] is a positive value, if the third output signal S 3 [n] is greater than or equal to a, of the two rotation angles calculated by the equation (59). It is determined that the rotation angle in the region of 0 degrees to 30 degrees or 300 degrees to 360 degrees is the actual rotation angle. On the other hand, if the third output signal S 3 [n] is less than a, the rotation angle in the region of 30 ° to 120 ° out of the two rotation angles calculated by the equation (59) is the actual rotation angle. It is determined that there is.
第2出力信号S2[n]が負の値である場合には、第3出力信号S3[n]が−a未満であれば、前記式(59)によって演算された2つの回転角のうち120度〜210度の領域内の回転角が実際の回転角であると判定される。一方、第3出力信号S3[n]が−a以上であれば、前記式(59)によって演算された2つの回転角のうち210度〜300度の領域内の回転角が実際の回転角であると判定される。
[6]第6演算モード
第6演算モードは、第3磁気センサ73が検出している磁極に対応する角度幅誤差補正値E3および第3出力信号S3の振幅A3が第2演算モードまたは第3演算モードによって既に演算されてメモリに記憶されている場合に適用される可能性がある演算モードである。第6演算モードでは、主として第3磁気センサ73の出力信号S3に基づいて回転角θが演算される。
When the second output signal S 2 [n] is a negative value, if the third output signal S 3 [n] is less than −a, the two rotation angles calculated by the equation (59) are used. Of these, the rotation angle within the range of 120 to 210 degrees is determined to be the actual rotation angle. On the other hand, if the third output signal S 3 [n] is greater than or equal to −a, the rotation angle in the region of 210 to 300 degrees out of the two rotation angles calculated by the equation (59) is the actual rotation angle. It is determined that
[6] Sixth operation mode sixth operation mode, the angular width error correction value E 3 and the third amplitude A 3 of the output signal S 3 of the third magnetic sensor 73 corresponds to the magnetic pole are detected by the second operation mode Alternatively, the calculation mode may be applied when already calculated in the third calculation mode and stored in the memory. In the sixth calculation mode, the rotation angle θ is calculated mainly based on the output signal S 3 of the third magnetic sensor 73.
たとえば、図8Cに示すように、磁石61(入力軸8)が矢印で示す方向に回転している場合において、第2および第3磁気センサ72,73が同じ磁極(この例ではM2)を検出している状態から、第2磁気センサ72が検出している磁極が変化した場合を想定する。変化直後の状態においては第1磁気センサ71および第2磁気センサ73が共に同じ1つの磁極を3サンプリング周期(3演算周期)連続して検出していないため、第1演算モードを適用できない。このような場合等には、第6演算モードが適用される可能性がある。 For example, as shown in FIG. 8C, when the magnet 61 (input shaft 8) rotates in the direction indicated by the arrow, the second and third magnetic sensors 72 and 73 detect the same magnetic pole (M2 in this example). It is assumed that the magnetic pole detected by the second magnetic sensor 72 changes from the state in which the magnetic field is detected. In the state immediately after the change, both the first magnetic sensor 71 and the second magnetic sensor 73 do not detect the same magnetic pole for three sampling periods (three calculation periods) continuously, so the first calculation mode cannot be applied. In such a case, the sixth calculation mode may be applied.
また、前述の図8Bに示すように、磁石61が矢印で示す方向に回転している場合において、第1、第2および第3磁気センサ71,72,73が同じ磁極(この例ではM1)を検出している状態から、第1磁気センサ71が検出している磁極が変化した場合において、第2磁気センサ72が故障している場合にも、第6演算モードが適用される可能性がある。 Further, as shown in FIG. 8B described above, when the magnet 61 rotates in the direction indicated by the arrow, the first, second, and third magnetic sensors 71, 72, 73 have the same magnetic pole (M1 in this example). When the magnetic pole detected by the first magnetic sensor 71 changes from the state where the first magnetic sensor 71 is detected, the sixth calculation mode may be applied even when the second magnetic sensor 72 is out of order. is there.
角度幅誤差補正値Eと今演算周期の番号nを用いると、今演算周期においてサンプリングされた第3磁気センサ73の出力信号S3は、次式 (60)で表される。
S3[n]=A3[n]sin(E3θ[n]+120) …(60)
E3は、第3磁気センサ73が検出している磁極に対応する角度幅誤差補正値である。
前記式(60)から回転角θ[n]は、次式(61)で表される。
With number n of the angular width error correction value E and calculation cycle, the output signal S 3 of the third magnetic sensor 73 sampled at the present calculation cycle is represented by the following formula (60).
S 3 [n] = A 3 [n] sin (E 3 θ [n] +120) (60)
E 3 is an angle width error correction value corresponding to the magnetic pole detected by the third magnetic sensor 73.
From the equation (60), the rotation angle θ [n] is expressed by the following equation (61).
θ[n]=(1/E3){sin−1(S3[n]/A3)−120} …(61)
第3磁気センサ73が検出している磁極に対応するE3およびA3がメモリに記憶されているとすると、これらを、前記式(61)に代入することにより、θ[n]を演算することができる。
前記式(61)によって回転角θ[n]を演算すると、2つの回転角θ[n]が演算される。そこで、第3磁気センサ73以外の2つの磁気センサ71,72の出力信号S1,S2のいずれか一方に基づいて、前記式(61)によって演算された2つの回転角θ[n]のうちのいずれが実際の回転角であるかを判定する。なお、第1磁気センサ71および第2磁気センサ72のうちのいずれか一方が故障している場合には、正常である一方の磁気センサの出力信号に基づいて、前記判定が行われる。
θ [n] = (1 / E 3 ) {sin −1 (S 3 [n] / A 3 ) −120} (61)
Assuming that E 3 and A 3 corresponding to the magnetic pole detected by the third magnetic sensor 73 are stored in the memory, θ [n] is calculated by substituting these into the equation (61). be able to.
When the rotation angle θ [n] is calculated by the equation (61), two rotation angles θ [n] are calculated. Therefore, based on one of the output signals S 1 and S 2 of the two magnetic sensors 71 and 72 other than the third magnetic sensor 73, the two rotation angles θ [n] calculated by the equation (61) are calculated. It is determined which of these is the actual rotation angle. In addition, when any one of the 1st magnetic sensor 71 and the 2nd magnetic sensor 72 has failed, the said determination is performed based on the output signal of one normal magnetic sensor.
まず、第2出力信号S2[n]に基づいて、前記判定が行われる場合について説明する。メモリに記憶されている第2出力信号S2の振幅A2の1/2または第3出力信号S3の振幅A3の1/2を閾値a(a>0)とする。
第3出力信号S3[n]が正の値である場合には、第2出力信号S2[n]がa未満であれば、前記式(61)によって演算された2つの回転角のうち240度〜330度の領域内の回転角が実際の回転角であると判定される。一方、第2出力信号S2[n]がa以上であれば、前記式(61)によって演算された2つの回転角のうち330度〜360度または0度〜60度の領域内の回転角が実際の回転角であると判定される。
First, the case where the determination is performed based on the second output signal S 2 [n] will be described. The threshold a (a> 0) is set to 1/2 of the amplitude A 2 of the second output signal S 2 or 1/2 of the amplitude A 3 of the third output signal S 3 stored in the memory.
When the third output signal S 3 [n] is a positive value, if the second output signal S 2 [n] is less than a, the two rotation angles calculated by the equation (61) are used. It is determined that the rotation angle within the range of 240 degrees to 330 degrees is the actual rotation angle. On the other hand, if the second output signal S 2 [n] is greater than or equal to a, the rotation angle in the region of 330 ° to 360 ° or 0 ° to 60 ° among the two rotation angles calculated by the equation (61). Is determined to be the actual rotation angle.
第3出力信号S3[n]が負の値である場合には、第2出力信号S2[n]が−a以上であれば、前記式(61)によって演算された2つの回転角のうち60度〜150度の領域内の回転角が実際の回転角であると判定される。一方、第2出力信号S2[n]が−a未満であれば、前記式(61)によって演算された2つの回転角のうち150度〜240度の領域内の回転角が実際の回転角であると判定される。 When the third output signal S 3 [n] is a negative value, if the second output signal S 2 [n] is equal to or greater than −a, the two rotation angles calculated by the equation (61) are used. Of these, the rotation angle in the region of 60 degrees to 150 degrees is determined to be the actual rotation angle. On the other hand, if the second output signal S 2 [n] is less than −a, the rotation angle in the region of 150 to 240 degrees out of the two rotation angles calculated by the equation (61) is the actual rotation angle. It is determined that
次に、第1出力信号S1[n]に基づいて、前記判定が行われる場合について説明する。メモリに記憶されている第1出力信号S1の振幅A1の1/2または第3出力信号S3の振幅A3の1/2を閾値a(a>0)とする。
第3出力信号S3[n]が正の値である場合には、第1出力信号S1[n]が−a未満であれば、前記式(61)によって演算された2つの回転角のうち240度〜330度の領域内の回転角が実際の回転角であると判定される。一方、第1出力信号S1[n]が−a以上であれば、前記式(61)によって演算された2つの回転角のうち330度〜360度または0度〜60度の領域内の回転角が実際の回転角であると判定される。
Next, a case where the determination is performed based on the first output signal S 1 [n] will be described. 1/2 of the amplitude A 3 1/2 or third output signal S 3 of the first output signals S 1 amplitude A1 stored in the memory as the threshold a (a> 0).
When the third output signal S 3 [n] is a positive value, if the first output signal S 1 [n] is less than −a, the two rotation angles calculated by the equation (61) are used. Of these, the rotation angle in the region of 240 to 330 degrees is determined to be the actual rotation angle. On the other hand, if the first output signal S 1 [n] is −a or more, the rotation within the region of 330 ° to 360 ° or 0 ° to 60 ° out of the two rotation angles calculated by the equation (61). It is determined that the angle is an actual rotation angle.
第3出力信号S3[n]が負の値である場合には、第1出力信号S1[n]がa以上であれば、前記式(61)によって演算された2つの回転角のうち60度〜150度の領域内の回転角が実際の回転角であると判定される。一方、第1出力信号S1[n]がa未満であれば、前記式(61)によって演算された2つの回転角のうち150度〜240度の領域内の回転角が実際の回転角であると判定される。
[7]第7演算モード
第7演算モードは、第2磁気センサ72が故障しており、かつ第3演算モード、第4演算算モードおよび第6演算モードのいずれもが適用できない場合に、適用される演算モードである。第7演算モードでは、第3演算モードと同じ演算式(35),(36),(37)を用いて回転角θ[n]が演算される。つまり、第7演算モードでは、第1および第3磁気センサ71,73が共に同じ1つの磁極を3サンプリング周期(3演算周期)連続して検出しているという条件を満たしていないにもかかわらず、第3演算モードと同じ演算式を用いて回転角θ[n]が演算される。
When the third output signal S 3 [n] is a negative value, if the first output signal S 1 [n] is greater than or equal to a, the two rotation angles calculated by the equation (61) It is determined that the rotation angle in the region of 60 degrees to 150 degrees is the actual rotation angle. On the other hand, if the first output signal S 1 [n] is less than a, the rotation angle in the region of 150 to 240 degrees out of the two rotation angles calculated by the equation (61) is the actual rotation angle. It is determined that there is.
[7] Seventh operation mode The seventh operation mode is applied when the second magnetic sensor 72 is out of order and any of the third operation mode, the fourth operation mode, and the sixth operation mode cannot be applied. Calculation mode. In the seventh calculation mode, the rotation angle θ [n] is calculated using the same calculation expressions (35), (36), and (37) as in the third calculation mode. That is, in the seventh calculation mode, the first and third magnetic sensors 71 and 73 both do not satisfy the condition that the same magnetic pole is continuously detected for three sampling periods (three calculation periods). The rotation angle θ [n] is calculated using the same calculation formula as in the third calculation mode.
図10は、第1の回転角演算部77Aの動作を示すフローチャートである。
トルク演算用ECU77の電源がオンすると、第1の回転角演算部77Aは、各磁気センサ71,72,73が故障しているか否かを判定するため故障判定処理を行う(ステップS1)。この処理の詳細については後述する。
ステップS1の故障判定処理において、3つの磁気センサ71,72,73の全てが故障していないと判定された場合または1個の磁気センサのみが故障していると判定された場合には、第1の回転角演算部77Aは、ステップS2に移行する。
FIG. 10 is a flowchart showing the operation of the first rotation angle calculator 77A.
When the torque calculation ECU 77 is turned on, the first rotation angle calculation unit 77A performs a failure determination process to determine whether or not each of the magnetic sensors 71, 72, 73 has failed (step S1). Details of this processing will be described later.
In the failure determination process of step S1, if it is determined that all three magnetic sensors 71, 72, 73 are not broken or if it is determined that only one magnetic sensor is broken, 1 rotation angle calculation unit 77A proceeds to step S2.
ステップS2では、第1の回転角演算部77Aは、強制回転フラグFAKの値が1であるか否かを判別する。強制回転フラグFAKは、トルク演算用ECU77の電源がオンされたにおいて、後述するステップS3の強制回転に基づく回転角演算処理が行われたことを記憶するためのフラグである。強制回転フラグFAKの初期値は0であり、強制回転に基づく回転角演算処理が行われたときには強制回転フラグFAKの値が1に設定される。 In step S2, the first rotation angle calculation unit 77A determines whether or not the value of the forced rotation flag F AK is 1. The forced rotation flag F AK is a flag for storing that the rotation angle calculation process based on the forced rotation in step S3 described later was performed when the torque calculation ECU 77 was turned on. The initial value of the forced rotation flag F AK is 0, and the value of the forced rotation flag F AK is set to 1 when the rotation angle calculation process based on the forced rotation is performed.
強制回転フラグFAKの値が0である場合には(ステップS2:NO)、第1の回転角演算部77Aは、強制回転に基づく回転角演算処理を行う(ステップS3)。この処理は、電動モータ18を一時的に強制回転させることにより、入力軸8(出力軸9)を回転させ、入力軸8の回転角θを演算する処理である。この処理の詳細については後述する。
前述した第1演算モード、第2演算モードまたは第3演算モードでは、前回のサンプリング時点と今回のサンプリング時点とにおいて、回転角θ[n]の演算に用いられる2つの磁気センサの出力信号が変化していない場合には、前回演算されたEθ[n](またはEΘ[n])、Eおよびθ[n]が、今回のEθ[n](またはEΘ[n])、Eおよびθ[n]として用いられる(表1および表2の上から2番目の演算式を参照)。しかしながら、イグニッションキーがオン操作されることによって、トルク演算用ECU77の電源がオンされた時点では、前回演算されたEθ[n](またはEΘ[n])、Eおよびθ[n]は存在しない。このため、トルク演算用ECU77の電源がオンされた後に、回転角θ[n]の演算に用いられる2つの磁気センサの出力信号が変化していない場合には、第1、第2または第3演算モードによって回転角θ[n]を演算できなくなる。そこで、Eθ[n](またはEΘ[n])、Eおよびθ[n]の前回値を作成するために、強制回転に基づく回転角演算処理を行っている。
When the value of the forced rotation flag F AK is 0 (step S2: NO), the first rotation angle calculation unit 77A performs a rotation angle calculation process based on the forced rotation (step S3). This process is a process of rotating the input shaft 8 (output shaft 9) by temporarily forcibly rotating the electric motor 18 to calculate the rotation angle θ of the input shaft 8. Details of this processing will be described later.
In the first calculation mode, the second calculation mode, or the third calculation mode described above, the output signals of the two magnetic sensors used for calculating the rotation angle θ [n] change between the previous sampling time and the current sampling time. If not, the previously calculated Eθ [n] (or EΘ [n]), E and θ [n] are the current Eθ [n] (or EΘ [n]), E and θ [n]. ] (See the second arithmetic expression from the top of Table 1 and Table 2). However, when the ignition key is turned on to turn on the torque calculation ECU 77, the previously calculated Eθ [n] (or EΘ [n]), E and θ [n] do not exist. . For this reason, when the output signals of the two magnetic sensors used for calculating the rotation angle θ [n] have not changed after the torque calculation ECU 77 is turned on, the first, second, or third The rotation angle θ [n] cannot be calculated depending on the calculation mode. Therefore, in order to create the previous values of Eθ [n] (or EΘ [n]), E, and θ [n], rotation angle calculation processing based on forced rotation is performed.
強制回転に基づく回転角演算処理が終了すると、第1の回転角演算部77Aは、強制回転フラグFAKの値を1に設定した後(ステップS4)、ステップS6に移行する。
ステップS6では、第1の回転角演算部77Aは、イグニッションオフ指令が入力されたか否かを判別する。イグニッションオフ指令が入力されていなれば(ステップS6:NO)、第1の回転角演算部77Aは、ステップS1に戻る。
When the rotation angle computing process based on forced rotation is completed, the first rotation angle computation unit 77A, after setting the value of the forced rotation flag F AK 1 (step S4), and proceeds to step S6.
In step S6, the first rotation angle calculation unit 77A determines whether or not an ignition off command is input. If the ignition off command has not been input (step S6: NO), the first rotation angle calculation unit 77A returns to step S1.
前記ステップS2において、強制回転フラグFAKの値が1であると判別された場合には(ステップS2:YES)、第1の回転角演算部77Aは、通常時の回転角演算処理を行う(ステップS5)。この処理の詳細については後述する。
通常時の回転角演算処理によって回転角が演算されると、第1の回転角演算部77Aは、ステツプS6に移行し、イグニッションオフ指令が入力されたか否かを判別する。イグニッションオフ指令が入力されていなれば(ステップS6:NO)、第1の回転角演算部77Aは、ステップS1に戻る。
When it is determined in step S2 that the value of the forced rotation flag F AK is 1 (step S2: YES), the first rotation angle calculation unit 77A performs a normal rotation angle calculation process ( Step S5). Details of this processing will be described later.
When the rotation angle is calculated by the normal rotation angle calculation process, the first rotation angle calculation unit 77A proceeds to step S6 and determines whether or not an ignition-off command is input. If the ignition off command has not been input (step S6: NO), the first rotation angle calculation unit 77A returns to step S1.
ステップS6で、イグニッションオフ指令が入力されたと判別された場合には(ステップS6:YES)、第1の回転角演算部77Aは回転角演算処理を終了する。
図11は、図10のステップS1の故障判定処理の手順を示すフローチャートである。
まず、第1の回転角演算部77Aは、各磁気センサ71,72,73のセンサ値S1[n],S2[n],S3[n]を取得する(ステップS11)。トルク演算用ECU77内のメモリには、所定回数前に取得されたセンサ値から最新に取得されたセンサ値までの複数回分(3回以上)のセンサ値が記憶されるようになっている。
If it is determined in step S6 that an ignition off command has been input (step S6: YES), the first rotation angle calculation unit 77A ends the rotation angle calculation process.
FIG. 11 is a flowchart showing the procedure of the failure determination process in step S1 of FIG.
First, the first rotation angle calculation unit 77A acquires the sensor values S 1 [n], S 2 [n], and S 3 [n] of the magnetic sensors 71, 72, and 73 (step S11). The memory in the torque calculation ECU 77 stores sensor values for a plurality of times (three or more times) from the sensor value acquired a predetermined number of times to the latest acquired sensor value.
そして、第1の回転角演算部77Aは、取得したセンサ値S1[n],S2[n],S3[n]に基づいて、第1磁気センサ71、第2磁気センサ72および第3磁気センサ73が故障しているか否かを判定する(ステップS12,S14,S16)。磁気センサが故障した場合には、その出力信号が所定値に固定される。そこで、たとえば、第2および第3磁気センサ72,73のセンサ値が変化しているにもかかわらず、第1磁気センサ71のセンサ値が変化しないような状態が継続した場合には、第1磁気センサ71が故障している判定される。 Then, the first rotation angle calculation unit 77A, based on the acquired sensor values S 1 [n], S 2 [n], S 3 [n], the first magnetic sensor 71, the second magnetic sensor 72, and the second 3. It is determined whether or not the magnetic sensor 73 is out of order (steps S12, S14, S16). When the magnetic sensor fails, the output signal is fixed to a predetermined value. Therefore, for example, when the sensor value of the first magnetic sensor 71 does not change despite the sensor values of the second and third magnetic sensors 72 and 73 changing, the first It is determined that the magnetic sensor 71 has failed.
第1磁気センサが故障していると判定された場合には(ステップS12:YES)、第1の回転角演算部77Aは、第1センサ故障フラグFA1の値を1に設定する(ステップS13)。第1センサ故障フラグFA1の初期値は0である。
第2磁気センサが故障していると判定された場合には(ステップS14:YES)、第1の回転角演算部77Aは、第2センサ故障フラグFA2の値を1に設定する(ステップS15)。第2センサ故障フラグFA2の初期値は0である。
When it is determined that the first magnetic sensor has failed (step S12: YES), the first rotation angle calculation unit 77A sets the value of the first sensor failure flag F A1 to 1 (step S13). ). The initial value of the first sensor failure flag F A1 is zero.
If it is determined that the second magnetic sensor has failed (step S14: YES), the first rotation angle calculation unit 77A sets the value of the second sensor failure flag F A2 to 1 (step S15). ). The initial value of the second sensor failure flag F A2 is zero.
第3磁気センサが故障していると判定された場合には(ステップS16:YES)、第1の回転角演算部77Aは、第3センサ故障フラグFA3の値を1に設定する(ステップS17)。
このようにして、各磁気センサ71,72,73についての故障判定が終了すると、第1の回転角演算部77Aは、2以上の磁気センサが故障しているか否かを判別する(ステップS18)。2以上の磁気センサが故障している場合には(ステップS18:YES)、第1の回転角演算部77Aは、異常処理を行う(ステップS19)。つまり、第1の回転角演算部77Aは、回転角演算処理を停止するとともに、モータ制御用ECU12に、電動モータ18の制御を停止させるための指令を送信する。これにより、電動モータ18は、駆動されなくなる。
When it is determined that the third magnetic sensor has failed (step S16: YES), the first rotation angle calculation unit 77A sets the value of the third sensor failure flag F A3 to 1 (step S17). ).
Thus, when the failure determination for each of the magnetic sensors 71, 72, 73 is completed, the first rotation angle calculation unit 77A determines whether or not two or more magnetic sensors have failed (step S18). . When two or more magnetic sensors are out of order (step S18: YES), the first rotation angle calculation unit 77A performs an abnormality process (step S19). That is, the first rotation angle calculation unit 77A stops the rotation angle calculation process and transmits a command for stopping the control of the electric motor 18 to the motor control ECU 12. Thereby, the electric motor 18 is not driven.
2以上の磁気センサが故障していない場合には(ステップS18:NO)、つまり、全ての磁気センサ71,72,73が正常であるか、または1つの磁気センサのみが故障している場合には、第1の回転角演算部77Aは、図10のステップS2に移行する。
図12A、図12Bおよび図12Cは、図10のステップS3の強制回転に基づく回転角演算処理の手順を示すフローチャートである。
When two or more magnetic sensors have not failed (step S18: NO), that is, when all the magnetic sensors 71, 72, 73 are normal or only one magnetic sensor has failed. The first rotation angle calculation unit 77A proceeds to step S2 in FIG.
12A, 12B and 12C are flowcharts showing the procedure of the rotation angle calculation process based on the forced rotation in step S3 of FIG.
強制回転に基づく回転角演算処理開始時において、正常な任意の1つの磁気センサが検出している磁極を基準磁極として、各磁極に相対的な番号を割り当てた場合の各磁極の番号を相対的極番号と定義する。第1磁気センサ71が検出している磁極の相対的極番号(以下、「第1相対的極番号」という)を変数r1で表し、第2磁気センサ72が検出している磁極の相対的極番号(以下、「第2相対的極番号」という)を変数r2で表し、第3磁気センサ73が検出している磁極の相対的極番号(以下、「第3相対的極番号」という)を変数r3で表すことにする。なお、各相対的極番号r1,r2,r3は、1〜8の整数をとり、1より1少ない相対的極番号は8となり、8より1大きい相対的極番号は1となるものとする。 When the rotation angle calculation process based on forced rotation is started, the magnetic pole number detected by one normal magnetic sensor is used as a reference magnetic pole, and the relative magnetic pole number is assigned to each magnetic pole. It is defined as a pole number. The relative pole number of the magnetic pole detected by the first magnetic sensor 71 (hereinafter referred to as “first relative pole number”) is represented by a variable r1, and the relative pole of the magnetic pole detected by the second magnetic sensor 72 is represented. The number (hereinafter referred to as “second relative pole number”) is represented by a variable r2, and the relative pole number of the magnetic pole detected by the third magnetic sensor 73 (hereinafter referred to as “third relative pole number”). Let it be represented by a variable r3. Each of the relative pole numbers r1, r2, and r3 takes an integer of 1 to 8, and the relative pole number that is 1 less than 1 is 8, and the relative pole number that is 1 greater than 8 is 1.
トルク演算用ECU77内のメモリには、図13に示すように、e1〜e4で示すエリア等が設けられている。エリアe1には、1〜8の相対的磁極番号毎に角度幅誤差補正値Eの値が記憶される。エリアe2には、1〜8の相対的磁極番号毎に第1出力信号S1の振幅A1が記憶される。エリアe3には、1〜8の相対的磁極番号毎に第2出力信号S2の振幅A2が記憶される。エリアe4には、1〜8の相対的磁極番号毎に第3出力信号S3の振幅A3が記憶される。 The memory in the torque calculation ECU 77 is provided with areas indicated by e1 to e4 as shown in FIG. In the area e1, the value of the angle width error correction value E is stored for each of the relative magnetic pole numbers 1 to 8. The area e2, the amplitude A 1 of the first output signal S 1 is stored for each 8 relative pole number. The area e3, the amplitude A 2 of the second output signal S 2 is stored for each 8 relative pole number. The area e4, the amplitude A 3 of the third output signal S 3 is stored for each 8 relative pole number.
図12Aに戻り、強制回転に基づく回転角演算処理では、短時間ではあるがステアリングホイール2が回転駆動される。このため、運転者は何らかの故障が発生したと誤解するおそれがある。そこで、第1の回転角演算部77Aは、運転者への警告を行う(ステップS21)。具体的には、第1の回転角演算部77Aは、車内に設けられた表示装置(図示略)、音声出力装置(図示略)等を制御するための映像音声制御装置(図示略)に、警告出力指令を送信する。映像音声制御装置は、この警告出力指令を受信すると、「ステアリングホイールが強制的に回転しますが故障ではありません」等のメッセージを表示装置に表示したり、音声出力装置によって音声出力したりする。 Returning to FIG. 12A, in the rotation angle calculation process based on forced rotation, the steering wheel 2 is driven to rotate for a short time. For this reason, the driver may misunderstand that some kind of failure has occurred. Therefore, the first rotation angle calculation unit 77A issues a warning to the driver (step S21). Specifically, the first rotation angle calculation unit 77A is connected to a video / audio control device (not shown) for controlling a display device (not shown), an audio output device (not shown) and the like provided in the vehicle. Send a warning output command. When receiving the warning output command, the video / audio control device displays a message such as “the steering wheel is forcibly rotated but is not in failure” on the display device, or outputs the sound by the audio output device.
次に、第1の回転角演算部77Aは、第1方向に電動モータ18を回転駆動させる(ステップS22)。具体的には、第1の回転角演算部77Aは、第1方向に電動モータ18を回転駆動させるための第1強制回転指令をモータ制御用ECU12に送信する。モータ制御用ECU12は、この第1強制回転指令を受信すると、第1方向に電動モータ18を回転駆動させる。 Next, the first rotation angle calculation unit 77A rotates the electric motor 18 in the first direction (step S22). Specifically, the first rotation angle calculator 77A transmits a first forced rotation command for rotating the electric motor 18 in the first direction to the motor control ECU 12. When receiving the first forced rotation command, the motor control ECU 12 rotates the electric motor 18 in the first direction.
第1の回転角演算部77Aは、各磁気センサ71,72,73のセンサ値S1[n],S2[n],S3[n]を取得する(ステップS23)。ステップS23の処理は、後述するステップS30、ステップS32またはステップS34でYESと判定されるまで、所定の演算周期毎に繰り返し実行される。トルク演算用ECU77内のメモリには、所定回数前に取得されたセンサ値から最新に取得されたセンサ値までの複数回分(3回以上)のセンサ値が記憶されるようになっている。 The first rotation angle calculator 77A acquires the sensor values S 1 [n], S 2 [n], S 3 [n] of the magnetic sensors 71, 72, 73 (step S23). The process in step S23 is repeatedly executed at predetermined calculation cycles until YES is determined in step S30, step S32, or step S34 described later. The memory in the torque calculation ECU 77 stores sensor values for a plurality of times (three or more times) from the sensor value acquired a predetermined number of times to the latest acquired sensor value.
第1の回転角演算部77Aは、今回の処理が強制回転に基づく回転角演算処理開始後の初回の処理であるか否かを判別する(ステップS24)。今回の処理が強制回転に基づく回転角演算処理開始後の初回の処理である場合には(ステップS24:YES)、第1の回転角演算部77Aは、相対的極番号の設定処理を行う(ステップS25)。
図14は、相対的極番号の設定処理の詳細な手順を示すフローチャートである。
The first rotation angle calculation unit 77A determines whether or not the current process is the first process after the start of the rotation angle calculation process based on the forced rotation (step S24). When the current process is the first process after the start of the rotation angle calculation process based on the forced rotation (step S24: YES), the first rotation angle calculation unit 77A performs a relative pole number setting process ( Step S25).
FIG. 14 is a flowchart showing a detailed procedure of the relative pole number setting process.
ここでは、全ての磁気センサ71,72,73が正常であり、第1磁気センサ71が検出している磁極を基準磁極として各磁極に相対的な番号を割り当てた場合の各磁極の番号を相対的極番号と定義した場合を例にとって説明する。
第1の回転角演算部77Aは、まず、第1出力信号S1が0より大きいか否かを判別する(ステップS61)。第1出力信号S1が0より大きい場合には(ステップS61:YES)、第1の回転角演算部77Aは、第1磁気センサ71が検出している磁極がN極の磁極であると判別し、第1相対的極番号r1を1に設定する(ステップS64)。そして、ステップS66に進む。
Here, all the magnetic sensors 71, 72, 73 are normal, and the magnetic pole numbers when the relative numbers are assigned to the respective magnetic poles using the magnetic pole detected by the first magnetic sensor 71 as a reference magnetic pole are relative to each other. The case where it is defined as a target pole number will be described as an example.
First rotation angle computation section 77A, first, the first output signals S 1 to determine whether greater than zero or not (step S61). If the first output signal S 1 is greater than 0 (step S61: YES), determines that the first rotation angle computation unit 77A includes pole first magnetic sensor 71 is detected by a magnetic pole of N-pole Then, the first relative pole number r1 is set to 1 (step S64). Then, the process proceeds to step S66.
一方、第1出力信号S1が0以下である場合には(ステップS61:NO)、第1の回転角演算部77Aは、第1出力信号S1が0より小さいか否かを判別する(ステップS62)。第1出力信号S1が0より小さい場合には(ステップS62:YES)、第1の回転角演算部77Aは、第1磁気センサ71が検出している磁極がS極の磁極であると判別し、第1相対的極番号r1を2に設定する(ステップS65)。そして、ステップS66に進む。 On the other hand, if the first output signal S 1 is equal to or smaller than 0 (step S61: NO), the first rotation angle computation section 77A, the first output signal S 1 is determined whether 0 less than or ( Step S62). If the first output signal S 1 is smaller than 0 (step S62: YES), determines that the first rotation angle computation unit 77A includes pole first magnetic sensor 71 is detecting is the magnetic pole of the S pole Then, the first relative pole number r1 is set to 2 (step S65). Then, the process proceeds to step S66.
前記ステップS62において、第1出力信号S1が0以上であると判別された場合には(ステップS62:NO)、つまり、第1出力信号S1が0である場合には、第1の回転角演算部77Aは、入力軸8の回転角が0°であるか180°であるかを判別するために、第2出力信号S2が0より大きいか否かを判別する(ステップS63)。第2出力信号S2が0より大きい場合には(ステップS63:YES)、第1の回転角演算部77Aは、入力軸8の回転角が0°であると判別し、第1相対的極番号r1を1に設定する(ステップS64)。そして、ステップS66に進む。 In the step S62, if the first output signals S 1 is determined to be 0 or more (step S62: NO), that is, if the first output signal S 1 is 0, the first rotating corner arithmetic unit 77A, the rotation angle of the input shaft 8 is 0 to determine a whether a is either 180 ° °, the second output signal S 2 is to determine whether greater than zero or not (step S63). If the second output signal S 2 is greater than 0 (step S63: YES), the first rotation angle computation unit 77A determines that the rotation angle of the input shaft 8 is 0 °, the first relative pole The number r1 is set to 1 (step S64). Then, the process proceeds to step S66.
一方、第2出力信号S2が0以下である場合には(ステップS63:NO)、第1の回転角演算部77Aは、入力軸8の回転角が180°であると判別し、第1相対的極番号r1を2に設定する(ステップS65)。そして、ステップS66に進む。
ステップS66では、第1の回転角演算部77Aは、「S1≧0かつS2>0」または「S1≦0かつS2<0」の条件を満たしているか否かを判別する。この条件を満たしている場合には(ステップS66:YES)、第1の回転角演算部77Aは、第2磁気センサ72が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号と同じであると判別し、第2相対的極番号r2に第1相対的極番号r1と同じ番号(r2=r1)を設定する(ステップS67)。そして、ステップS69に進む。
On the other hand, when the second output signal S 2 is equal to or smaller than 0 (step S63: NO), the first rotation angle computation unit 77A, the rotation angle of the input shaft 8 is determined to be a 180 °, the first The relative pole number r1 is set to 2 (step S65). Then, the process proceeds to step S66.
In step S66, the first rotation angle calculation unit 77A determines whether or not the condition of “S 1 ≧ 0 and S 2 > 0” or “S 1 ≦ 0 and S 2 <0” is satisfied. When this condition is satisfied (step S66: YES), the first rotation angle calculator 77A detects the pole number of the magnetic pole detected by the second magnetic sensor 72 by the first magnetic sensor 71. It is determined that it is the same as the pole number of the magnetic pole, and the same number (r2 = r1) as the first relative pole number r1 is set as the second relative pole number r2 (step S67). Then, the process proceeds to step S69.
一方、前記ステップS66の条件を満たしていない場合には(ステップS66:NO)、第1の回転角演算部77Aは、第2磁気センサ72が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号より1だけ大きい番号であると判別し、第2相対的極番号r2に、第1相対的極番号r1より1だけ大きい番号(r2=r1+1)を設定する(ステップS68)。そして、ステップS69に進む。 On the other hand, when the condition of step S66 is not satisfied (step S66: NO), the first rotation angle calculator 77A indicates that the pole number of the magnetic pole detected by the second magnetic sensor 72 is the first magnetic field. It is determined that the number is 1 larger than the pole number of the magnetic pole detected by the sensor 71, and a number (r2 = r1 + 1) larger by 1 than the first relative pole number r1 is set in the second relative pole number r2. (Step S68). Then, the process proceeds to step S69.
ステップS69では、第1の回転角演算部77Aは、「S1≧0かつS3>0」または「S1≦0かつS3<0」の条件を満たしているか否かを判別する。この条件を満たしている場合には(ステップS69:YES)、第1の回転角演算部77Aは、第3磁気センサ73が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号と同じであると判別し、第3相対的極番号r3に第1相対的極番号r1と同じ番号(r3=r1)を設定する(ステップS70)。そして、図12AのステップS28に移行する。 In step S69, the first rotation angle calculation unit 77A determines whether or not the conditions of “S 1 ≧ 0 and S 3 > 0” or “S 1 ≦ 0 and S 3 <0” are satisfied. When this condition is satisfied (step S69: YES), the first rotation angle calculation unit 77A detects the pole number of the magnetic pole detected by the third magnetic sensor 73 by the first magnetic sensor 71. It is determined that it is the same as the pole number of the magnetic pole, and the same number (r3 = r1) as the first relative pole number r1 is set as the third relative pole number r3 (step S70). And it transfers to step S28 of FIG. 12A.
一方、前記ステップS69の条件を満たしていない場合には(ステップS69:NO)、第1の回転角演算部77Aは、第3磁気センサ73が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号より1だけ大きい番号であると判別し、第3相対的極番号r3に、第1相対的極番号r1より1だけ大きい番号(r3=r1+1)を設定する(ステップS71)。そして、図12AのステップS28に移行する。 On the other hand, when the condition of step S69 is not satisfied (step S69: NO), the first rotation angle calculator 77A indicates that the pole number of the magnetic pole detected by the third magnetic sensor 73 is the first magnetic field. It is determined that the number is 1 larger than the pole number of the magnetic pole detected by the sensor 71, and a number (r3 = r1 + 1) larger by 1 than the first relative pole number r1 is set in the third relative pole number r3. (Step S71). And it transfers to step S28 of FIG. 12A.
前記ステップS66の条件に基づいて第2相対的極番号r2を決定している理由および前記ステップS69の条件に基づいて第3相対的極番号r3を決定している理由について説明する。たとえば、磁石61における磁極M1と磁極M2とからなる磁極対が第1磁気センサ71を通過する際の、第1、第2および第3出力信号S1,S2,S3の信号波形を模式的に表すと、図15の(a),(b),(c)のようになる。 The reason why the second relative pole number r2 is determined based on the condition of step S66 and the reason why the third relative pole number r3 is determined based on the condition of step S69 will be described. For example, the signal waveforms of the first, second and third output signals S 1 , S 2 and S 3 when the magnetic pole pair of the magnetic pole M1 and the magnetic pole M2 in the magnet 61 passes through the first magnetic sensor 71 are schematically shown. Expressed as shown in FIG. 15, (a), (b), and (c).
図15において、Q1,Q2,Q4およびQ5で示す領域においては、第2磁気センサ72が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号と同じである。一方、Q3およびQ6で示す領域においては、第2磁気センサ72が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号より1だけ大きい。 In FIG. 15, in the areas indicated by Q1, Q2, Q4 and Q5, the pole numbers of the magnetic poles detected by the second magnetic sensor 72 are the same as the pole numbers of the magnetic poles detected by the first magnetic sensor 71. is there. On the other hand, in the regions indicated by Q3 and Q6, the pole number of the magnetic pole detected by the second magnetic sensor 72 is one greater than the pole number of the magnetic pole detected by the first magnetic sensor 71.
領域Q1およびQ2においては、両センサ値S1,S2は、S1≧0かつS2>0の第1条件を満たす。領域Q3においては、両センサ値S1,S2は、S1>0かつS2≦0の第2条件を満たす。領域Q4およびQ5においては、両センサ値S1,S2は、S1≦0かつS2<0の第3条件を満たす。領域Q6においては、両センサ値S1,S2は、S1<0かつS2≧0の第4条件を満たす。そこで、第1の回転角演算部77Aは、第1条件および第3条件の一方を満たしているときには、第2磁気センサ72が検出している磁極の極番号が、第1磁気センサ71が検出している磁極の極番号と同じであると判別している。一方、第1条件および第3条件のいずれの条件をも満たしていないときには、第1の回転角演算部77Aは、第2磁気センサ72が検出している磁極の極番号が、第1磁気センサ71が検出している磁極の極番号より1だけ大きいと判別している。 In the regions Q1 and Q2, the sensor values S 1 and S 2 satisfy the first condition of S 1 ≧ 0 and S 2 > 0. In the region Q3, both sensor values S 1, S 2 is, S 1> 0 and the second condition is satisfied in S 2 ≦ 0. In the regions Q4 and Q5, both sensor values S 1 and S 2 satisfy the third condition of S 1 ≦ 0 and S 2 <0. In the region Q6, the sensor values S 1 and S 2 satisfy the fourth condition of S 1 <0 and S 2 ≧ 0. Therefore, when the first rotation angle calculator 77A satisfies one of the first condition and the third condition, the first magnetic sensor 71 detects the pole number of the magnetic pole detected by the second magnetic sensor 72. It is discriminated that it is the same as the pole number of the magnetic pole. On the other hand, when neither the first condition nor the third condition is satisfied, the first rotation angle calculation unit 77A indicates that the pole number of the magnetic pole detected by the second magnetic sensor 72 is the first magnetic sensor. 71 is determined to be one larger than the pole number of the magnetic pole detected.
図15において、Q1およびQ4で示す領域においては、第3磁気センサ73が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号と同じである。一方、Q2,Q3,Q5およびQ6で示す領域においては、第3磁気センサ73が検出している磁極の極番号は、第1磁気センサ71が検出している磁極の極番号より1だけ大きい。 In FIG. 15, in the areas indicated by Q <b> 1 and Q <b> 4, the pole number of the magnetic pole detected by the third magnetic sensor 73 is the same as the pole number of the magnetic pole detected by the first magnetic sensor 71. On the other hand, in the regions indicated by Q2, Q3, Q5, and Q6, the pole number of the magnetic pole detected by the third magnetic sensor 73 is one greater than the pole number of the magnetic pole detected by the first magnetic sensor 71.
領域Q1においては、両センサ値S1,S3は、S1≧0かつS3>0の第5条件を満たす。領域Q2およびQ3においては、両センサ値S1,S3は、S1>0かつS3≦0の第6条件を満たす。領域Q4においては、両センサ値S1,S3は、S1≦0かつS3<0の第7条件を満たす。領域Q5およびQ6においては、両センサ値S1,S3は、S1<0かつS2≧0の第8条件を満たす。そこで、第1の回転角演算部77Aは、第5条件および第7条件の一方を満たしているときには、第3磁気センサ73が検出している磁極の極番号が、第1磁気センサ71が検出している磁極の極番号と同じであると判別している。一方、第5条件および第7条件のいずれの条件をも満たしていないときには、第1の回転角演算部77Aは、第3磁気センサ73が検出している磁極の極番号が、第1磁気センサ71が検出している磁極の極番号より1だけ大きいと判別している。 In the region Q1, the sensor values S 1 and S 3 satisfy the fifth condition of S 1 ≧ 0 and S 3 > 0. In the regions Q2 and Q3, both sensor values S 1 and S 3 satisfy the sixth condition of S 1 > 0 and S 3 ≦ 0. In the region Q4, both sensor values S 1 and S 3 satisfy the seventh condition of S 1 ≦ 0 and S 3 <0. In the regions Q5 and Q6, the sensor values S 1 and S 3 satisfy the eighth condition of S 1 <0 and S 2 ≧ 0. Therefore, when the first rotation angle calculation unit 77A satisfies one of the fifth condition and the seventh condition, the first magnetic sensor 71 detects the pole number of the magnetic pole detected by the third magnetic sensor 73. It is discriminated that it is the same as the pole number of the magnetic pole. On the other hand, when neither the fifth condition nor the seventh condition is satisfied, the first rotation angle calculation unit 77A indicates that the pole number of the magnetic pole detected by the third magnetic sensor 73 is the first magnetic sensor. 71 is determined to be one larger than the pole number of the magnetic pole detected.
図12Aに戻り、前記ステップS24において、今回の処理が強制回転に基づく回転角演算処理開始後の初回の処理ではないと判別された場合には(ステップS24:NO)、ステップS26に移行する。
ステップS26では、第1の回転角演算部77Aは、メモリに記憶されているセンサ値S1,S2,S3に基づいて、センサ値S1,S2,S3毎に、センサ値の符号が反転するゼロクロスを検出したか否かを判別する。ゼロクロスが検出されなかったときには(ステップS26:NO)、第1の回転角演算部77Aは、ステップS28に移行する。
Returning to FIG. 12A, when it is determined in step S24 that the current process is not the first process after the start of the rotation angle calculation process based on the forced rotation (step S24: NO), the process proceeds to step S26.
In step S26, the first rotation angle computation unit 77A, based on the sensor values S 1, S 2, S 3 stored in the memory, for each sensor value S 1, S 2, S 3, the sensor value It is determined whether or not a zero cross whose sign is inverted is detected. When the zero cross is not detected (step S26: NO), the first rotation angle calculation unit 77A proceeds to step S28.
前記ステップS26において、いずれかのセンサ値S1,S2,S3に対してゼロクロスが検出された場合には(ステップS26:YES)、第1の回転角演算部77Aは、相対的極番号の更新処理を行なう(ステップS27)。具体的には、第1の回転角演算部77Aは、前記ステップS26でゼロクロスが検出された磁気センサに対して現在設定されている相対的極番号r1,r2またはr3を、入力軸8(磁石61)の回転方向に応じて、1だけ大きい番号または1だけ小さい番号に変更する。 If a zero cross is detected for any of the sensor values S 1 , S 2 , S 3 in step S26 (step S26: YES), the first rotation angle calculator 77A determines the relative pole number. Is updated (step S27). Specifically, the first rotation angle calculator 77A uses the relative pole number r1, r2, or r3 currently set for the magnetic sensor in which the zero cross is detected in step S26 as the input shaft 8 (magnet 61) The number is changed to a number larger by 1 or a number smaller by 1 depending on the rotation direction.
入力軸8の回転方向が正方向(図6に矢印で示す方向)である場合には、第1の回転角演算部77Aは、前記ステップS26でゼロクロスが検出された磁気センサに対して現在設定されている相対的極番号r1,r2またはr3を、1だけ大きい番号に更新する。一方、入力軸8の回転方向が逆方向である場合には、第1の回転角演算部77Aは、ゼロクロスが検出された磁気センサに対して現在設定されている相対的極番号r1,r2またはr3を、1だけ小さい番号に更新する。ただし、前述したように、”1”の相対的極番号に対して、1だけ小さい相対的極番号は、”8”となる。また、”8”の相対的極番号に対して、1だけ大きい相対的極番号は、”1”となる。 When the rotation direction of the input shaft 8 is the positive direction (the direction indicated by the arrow in FIG. 6), the first rotation angle calculation unit 77A is currently set for the magnetic sensor in which the zero cross is detected in step S26. The relative pole number r1, r2 or r3 being updated is updated to a number larger by one. On the other hand, when the rotation direction of the input shaft 8 is the reverse direction, the first rotation angle calculation unit 77A has the relative pole numbers r1, r2 currently set for the magnetic sensor in which the zero cross is detected, or Update r3 to a number smaller by one. However, as described above, the relative pole number that is smaller by 1 than the relative pole number of “1” is “8”. Further, the relative pole number that is larger by 1 than the relative pole number of “8” is “1”.
なお、入力軸8の回転方向は、例えば、ゼロクロスが検出された出力信号の前回値および今回値と、他の出力信号の今回値とに基づいて判定することができる。具体的には、ゼロクロスが検出された出力信号が第1出力信号S1である場合には、「第1出力信号S1の前回値が0より大きくかつその今回値が0以下であり、第2出力信号S2が0より小さい(第3出力信号S3が0より小さい)」という条件、または「第1出力信号S1の前回値が0未満でかつその今回値が0以上であり、第2出力信号S2が0より大きい(第3出力信号S3が0より大きい)」という条件を満たしている場合には、回転方向は正方向(図6に矢印で示す方向)であると判定される。 In addition, the rotation direction of the input shaft 8 can be determined based on, for example, the previous value and the current value of the output signal in which the zero cross is detected, and the current value of the other output signal. Specifically, when the output signal in which the zero cross is detected is the first output signal S 1 , “the previous value of the first output signal S 1 is greater than 0 and the current value is less than or equal to 0, The condition that the second output signal S 2 is smaller than 0 (the third output signal S 3 is smaller than 0), or “the previous value of the first output signal S 1 is less than 0 and its current value is greater than or equal to 0; when the second output signal S 2 is (a third output signal S 3 greater than 0) greater than 0 satisfies the condition that "the direction of rotation If it is positive (the direction indicated by the arrow in FIG. 6) Determined.
一方、「第1出力信号S1の前回値が0以上でかつその今回値が0未満であり、第2出力信号S2が0より大きい(第3出力信号S3が0より大きい)」という条件、または「第1出力信号S1の前回値が0以下でかつその今回値が0より大きく、第2出力信号S2が0より小さい(第3出力信号S3が0より小さい)」という条件を満たしている場合には、回転方向は逆方向であると判定される。 On the other hand, “the previous value of the first output signal S 1 is 0 or more and the current value is less than 0, and the second output signal S 2 is greater than 0 (the third output signal S 3 is greater than 0)”. The condition, or “the previous value of the first output signal S 1 is less than or equal to 0 and the current value is greater than 0 and the second output signal S 2 is less than 0 (the third output signal S 3 is less than 0)” If the condition is satisfied, it is determined that the rotation direction is the reverse direction.
ゼロクロスが検出された出力信号が第2出力信号S2である場合には、「第2出力信号S2の前回値が0より大きくかつその今回値が0以下であり、第1出力信号S1が0より大きい(第3出力信号S3が0より小さい)」という条件、または「第2出力信号S2の前回値が0未満でかつその今回値が0以上であり、第1出力信号S1が0より小さい(第3出力信号S3が0より大きい)」という条件を満たしている場合には、回転方向は正方向(図6に矢印で示す方向)であると判定される。一方、「第2出力信号S2の前回値が0以上でかつその今回値が0未満であり、第1出力信号S1が0より小さい(第3出力信号S3が0より大きい)」という条件、または「第2出力信号S2の前回値が0以下でかつその今回値が0より大きく、第1出力信号S1が0より大きい(第3出力信号S3が0より小さい)」という条件を満たしている場合には、回転方向は逆方向であると判定される。 When the output signal in which the zero cross is detected is the second output signal S 2 , “the previous value of the second output signal S 2 is greater than 0 and the current value is less than or equal to 0, and the first output signal S 1 Is greater than 0 (the third output signal S 3 is less than 0), or “the previous value of the second output signal S 2 is less than 0 and its current value is greater than or equal to 0, and the first output signal S when one meets a condition that 0 is less than (the third output signal S 3 is greater than zero) ", the rotation direction is determined to be a positive direction (the direction indicated by the arrow in FIG. 6). On the other hand, “the previous value of the second output signal S 2 is 0 or more and the current value is less than 0, and the first output signal S 1 is less than 0 (the third output signal S 3 is greater than 0)”. The condition, or “the previous value of the second output signal S 2 is less than or equal to 0 and the current value is greater than 0 and the first output signal S 1 is greater than 0 (the third output signal S 3 is less than 0)” If the condition is satisfied, it is determined that the rotation direction is the reverse direction.
ゼロクロスが検出された出力信号が第3出力信号S3である場合には、「第3出力信号S3の前回値が0より大きくかつその今回値が0以下であり、第2出力信号S2が0より大きい(第1出力信号S1が0より大きい)」という条件、または「第3出力信号S3の前回値が0未満でかつその今回値が0以上であり、第2出力信号S2が0より小さい(第1出力信号S1が0より小さい)」という条件を満たしている場合には、回転方向は正方向(図6に矢印で示す方向)であると判定される。 When the output signal in which the zero cross is detected is the third output signal S 3 , “the previous value of the third output signal S 3 is greater than 0 and its current value is less than or equal to 0, and the second output signal S 2 Is greater than 0 (the first output signal S 1 is greater than 0), or “the previous value of the third output signal S 3 is less than 0 and its current value is greater than or equal to 0, and the second output signal S When the condition “ 2 is smaller than 0 (first output signal S 1 is smaller than 0)” is satisfied, the rotation direction is determined to be the positive direction (the direction indicated by the arrow in FIG. 6).
一方、「第3出力信号S3の前回値が0以上でかつその今回値が0未満であり、第2出力信号S2が0より小さい(第1出力信号S1が0より小さい)」という条件、または「第3出力信号S3の前回値が0以下でかつその今回値が0より大きく、第2出力信号S2が0より大きい(第1出力信号S1が0より大きい)」という条件を満たしている場合には、回転方向は逆方向であると判定される。 On the other hand, “the previous value of the third output signal S 3 is 0 or more and the current value is less than 0, and the second output signal S 2 is less than 0 (the first output signal S 1 is less than 0)”. The condition, or “the previous value of the third output signal S 3 is less than or equal to 0 and the current value is greater than 0 and the second output signal S 2 is greater than 0 (the first output signal S 1 is greater than 0)” If the condition is satisfied, it is determined that the rotation direction is the reverse direction.
相対的極番号の更新処理が終了すると、第1の回転角演算部77Aは、ステップS28に移行する。ステップS28では、第1の回転角演算部77Aは、第2センサ故障フラグFA2の値が0であるか否かを判別する。第2センサ故障フラグFA2の値が0である場合には(ステップS28:YES)、つまり、第2磁気センサ72が故障していない場合には、第1の回転角演算部77Aは、図12BのステップS31に移行する。 When the relative pole number update process ends, the first rotation angle calculation unit 77A proceeds to step S28. In step S28, the first rotation angle calculation unit 77A determines whether or not the value of the second sensor failure flag F A2 is zero. If the value of the second sensor failure flag F A2 is 0 (step S28: YES), that is, if the second magnetic sensor 72 has not failed, the first rotation angle calculation unit 77A The process proceeds to step S31 of 12B.
ステップS31では、第1の回転角演算部77Aは、第1および第2磁気センサ71,72が正常でありかつそれらが共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する。各演算周期において、第1および第2磁気センサ71,72が検出している磁極の相対的番号は、それぞれ第1相対的磁極番号r1および第2相対的磁極番号r2によって認識することができる。したがって、所定演算周期前から今演算周期までの複数演算周期分の各相対的磁極番号r1,r2をメモリに記憶することにより、3演算周期連続して第1および第2磁気センサ71,72がともに同じ1つの磁極を検出しているか否かを判別できる。 In step S31, the first rotation angle calculation unit 77A sets a condition that the first and second magnetic sensors 71 and 72 are normal and both detect the same magnetic pole for three calculation cycles continuously. It is determined whether or not it is satisfied. In each calculation cycle, the relative numbers of the magnetic poles detected by the first and second magnetic sensors 71 and 72 can be recognized by the first relative magnetic pole number r1 and the second relative magnetic pole number r2, respectively. Therefore, by storing the relative magnetic pole numbers r1 and r2 for a plurality of calculation periods from the predetermined calculation period to the current calculation period in the memory, the first and second magnetic sensors 71 and 72 can be continuously operated for three calculation periods. It can be determined whether or not the same magnetic pole is detected.
ステップS31の条件を満たしていない場合には(ステップS31:NO)、第1の回転角演算部77Aは、第2および第3磁気センサ72,73が正常でありかつそれらが共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する(ステップS33)。各演算周期において、第2および第3磁気センサ72,73が検出している磁極の相対的番号は、それぞれ第2相対的磁極番号r2および第3相対的磁極番号r3によって認識することができる。したがって、所定演算周期前から今演算周期までの複数演算周期分の各相対的磁極番号r2,r3をメモリに記憶することにより、3演算周期連続して第2および第3磁気センサ72,73がともに同じ1つの磁極を検出しているか否かを判別できる。 When the condition of step S31 is not satisfied (step S31: NO), the first rotation angle calculation unit 77A has one magnetic pole in which the second and third magnetic sensors 72 and 73 are normal and both are the same. It is determined whether or not the condition that is detected continuously for three calculation cycles is satisfied (step S33). In each calculation cycle, the relative numbers of the magnetic poles detected by the second and third magnetic sensors 72 and 73 can be recognized by the second relative magnetic pole number r2 and the third relative magnetic pole number r3, respectively. Accordingly, by storing the relative magnetic pole numbers r2 and r3 for a plurality of calculation periods from a predetermined calculation period before the current calculation period in the memory, the second and third magnetic sensors 72 and 73 can be continuously operated for three calculation periods. It can be determined whether or not the same magnetic pole is detected.
ステップS33の条件を満たしていない場合には(ステップS33:NO)、第1の回転角演算部77Aは、図12AのステップS23に戻る。
前記ステップS31において、ステップS31の条件を満たしていると判別された場合には(ステップS31:YES)、第1の回転角演算部77Aは、第1演算モードで用いられるEθ基本演算式(7)およびE演算式(8)に含まれている分数のいずれの分母も零でないという条件を満たしているか否かを判別する(ステップS32)。ステップS32の条件を満たしていない場合には(ステップS32:NO)、第1の回転角演算部77Aは、図12AのステップS23に戻る。一方、ステップS32の条件を満たしている場合には(ステップS32:YES)、第1の回転角演算部77Aは、ステップS35に移行する。
When the condition of step S33 is not satisfied (step S33: NO), the first rotation angle calculation unit 77A returns to step S23 of FIG. 12A.
When it is determined in step S31 that the condition of step S31 is satisfied (step S31: YES), the first rotation angle calculation unit 77A uses the Eθ basic calculation formula (7 ) And E arithmetic expression (8), it is determined whether or not the condition that any denominator of the fraction is not zero is satisfied (step S32). When the condition of step S32 is not satisfied (step S32: NO), the first rotation angle calculation unit 77A returns to step S23 of FIG. 12A. On the other hand, when the condition of step S32 is satisfied (step S32: YES), the first rotation angle calculation unit 77A proceeds to step S35.
前記ステップS33において、ステップS33の条件を満たしていると判別された場合には(ステップS33:YES)、第1の回転角演算部77Aは、第2演算モードで用いられるEΘ基本演算式(32)およびE演算式(33)に含まれている分数のいずれの分母も零でないという条件を満たしているか否かを判別する(ステップS34)。ステップS34の条件を満たしていない場合には(ステップS34:NO)、第1の回転角演算部77Aは、図12AのステップS23に戻る。一方、ステップS34の条件を満たしている場合には(ステップS34:YES)、第1の回転角演算部77Aは、ステップS35に移行する。 If it is determined in step S33 that the condition of step S33 is satisfied (step S33: YES), the first rotation angle calculation unit 77A uses the EΘ basic calculation expression (32) used in the second calculation mode. ) And E arithmetic expression (33), it is determined whether or not the condition that any denominator of the fraction is not zero is satisfied (step S34). When the condition of step S34 is not satisfied (step S34: NO), the first rotation angle calculation unit 77A returns to step S23 of FIG. 12A. On the other hand, when the condition of step S34 is satisfied (step S34: YES), the first rotation angle calculation unit 77A proceeds to step S35.
ステップS35では、第1の回転角演算部77Aは、第1方向とは反対方向である第2方向に電動モータ18を回転駆動させる。具体的には、第1の回転角演算部77Aは、第2方向に電動モータ18を回転駆動させるための第2強制回転指令をモータ制御用ECU12に送信する。モータ制御用ECU12は、この第2強制回転指令を受信すると、第2方向に電動モータ18を回転駆動させる。 In step S35, the first rotation angle calculator 77A rotates the electric motor 18 in a second direction that is opposite to the first direction. Specifically, the first rotation angle calculator 77A transmits a second forced rotation command for rotating the electric motor 18 in the second direction to the motor control ECU 12. When receiving the second forced rotation command, the motor control ECU 12 rotates the electric motor 18 in the second direction.
この後、第1の回転角演算部77Aは、各磁気センサ71,72,73のセンサ値S1[n],S2[n],S3[n]を取得する(ステップS36)。ステップS36の処理は、後述するステップS41、S45またはステップS49でYESと判定されるまで、所定の演算周期毎に繰り返し実行される。そして、第1の回転角演算部77Aは、メモリに記憶されているセンサ値S1,S2,S3に基づいて、センサ値S1,S2,S3毎に、センサ値の符号が反転するゼロクロスを検出したか否かを判別する(ステップS37)。ゼロクロスが検出されなかったときには(ステップS37:NO)、第1の回転角演算部77Aは、ステップS39に移行する。 Thereafter, the first rotation angle calculation unit 77A acquires the sensor values S 1 [n], S 2 [n], and S 3 [n] of the magnetic sensors 71, 72, and 73 (step S36). The process of step S36 is repeatedly executed at predetermined calculation cycles until YES is determined in step S41, S45, or step S49 described later. Then, the first rotation angle calculation unit 77A calculates the sensor value sign for each of the sensor values S 1 , S 2 , S 3 based on the sensor values S 1 , S 2 , S 3 stored in the memory. It is determined whether or not an inverted zero cross is detected (step S37). When the zero cross is not detected (step S37: NO), the first rotation angle calculation unit 77A proceeds to step S39.
前記ステップS37において、いずれかのセンサ値S1,S2,S3に対してゼロクロスが検出された場合には(ステップS37:YES)、第1の回転角演算部77Aは、相対的極番号の更新処理を行なう(ステップS38)。この相対的極番号の更新処理は、前述したステップS27(図12A参照)における相対的極番号の更新処理と同じである。ステップS38の相対的極番号の更新処理が終了すると、第1の回転角演算部77Aは、ステップS39に移行する。 If a zero cross is detected for any of the sensor values S 1 , S 2 , S 3 in step S37 (step S37: YES), the first rotation angle calculator 77A determines the relative pole number. Is updated (step S38). The relative pole number update process is the same as the relative pole number update process in step S27 described above (see FIG. 12A). When the relative pole number update processing in step S38 is completed, the first rotation angle calculation unit 77A proceeds to step S39.
ステップS39では、第1の回転角演算部77Aは、第2センサ故障フラグFA2の値が0であるか否かを判別する。第2センサ故障フラグFA2の値が0である場合には(ステップS39:YES)、つまり、第2磁気センサ72が故障していない場合には、第1の回転角演算部77Aは、図12CのステップS40に移行する。
ステップS40では、第1の回転角演算部77Aは、第1および第2磁気センサ71,72が正常でありかつそれらが共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する。ステップS40の条件を満たしていない場合には(ステップS40:NO)、第1の回転角演算部77Aは、第2および第3磁気センサ72,73が正常でありかつそれらが共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する(ステップS44)。ステップS44の条件を満たしていない場合には(ステップS44:NO)、第1の回転角演算部77Aは、図12BのステップS36に戻る。
In step S39, the first rotation angle calculation unit 77A determines whether or not the value of the second sensor failure flag F A2 is zero. When the value of the second sensor failure flag F A2 is 0 (step S39: YES), that is, when the second magnetic sensor 72 has not failed, the first rotation angle calculation unit 77A The process proceeds to step S40 of 12C.
In step S40, the first rotation angle calculation unit 77A sets a condition that the first and second magnetic sensors 71 and 72 are normal and both detect the same magnetic pole for three calculation cycles continuously. It is determined whether or not it is satisfied. When the condition of step S40 is not satisfied (step S40: NO), the first rotation angle calculation unit 77A has one magnetic pole in which the second and third magnetic sensors 72 and 73 are normal and both are the same. It is determined whether or not the condition that is detected continuously for three calculation cycles is satisfied (step S44). When the condition of step S44 is not satisfied (step S44: NO), the first rotation angle calculation unit 77A returns to step S36 of FIG. 12B.
前記ステップS40において、ステップS40の条件を満たしていると判別された場合には(ステップS40:YES)、第1の回転角演算部77Aは、第1演算モードで用いられるEθ基本演算式(7)およびE演算式(8)に含まれている分数のいずれの分母も零でないという条件を満たしているか否かを判別する(ステップS41)。ステップS41の条件を満たしていない場合には(ステップS41:NO)、第1の回転角演算部77Aは、図12BのステップS36に戻る。 If it is determined in step S40 that the condition of step S40 is satisfied (step S40: YES), the first rotation angle calculation unit 77A uses the Eθ basic calculation formula (7 ) And E arithmetic expression (8), it is determined whether or not the condition that any denominator of the fraction is not zero is satisfied (step S41). When the condition of step S41 is not satisfied (step S41: NO), the first rotation angle calculation unit 77A returns to step S36 of FIG. 12B.
ステップS41の条件を満たしていると判別された場合には(ステップS41:YES)、第1の回転角演算部77Aは、第1演算モードによってθ[n],E,A1,A2を演算する(ステップS42)。そして、第1の回転角演算部77Aは、演算されたE、A1およびA2を、第1および第2磁気センサ71,72が検出している磁極の相対的極番号に関連付けてメモリに記憶する(ステップS43)。第1および第2磁気センサ71,72が検出している磁極の相対的極番号は、現在設定されている第1相対的極番号r1または第2相対的極番号r2と同じ値となる。具体的には、第1の回転角演算部77Aは、メモリのエリアe1,e2,e3内の現在設定されている第1相対的極番号r1に対応する記憶場所に、演算されたE、A1およびA2をそれぞれ記憶する。この後、第1の回転角演算部77Aは、ステップS52に進む。 When it is determined that the condition of step S41 is satisfied (step S41: YES), the first rotation angle calculation unit 77A calculates θ [n], E, A 1 , A 2 according to the first calculation mode. Calculation is performed (step S42). Then, the first rotation angle calculator 77A associates the calculated E, A 1 and A 2 with the relative pole numbers of the magnetic poles detected by the first and second magnetic sensors 71 and 72 in the memory. Store (step S43). The relative pole numbers of the magnetic poles detected by the first and second magnetic sensors 71 and 72 have the same value as the currently set first relative pole number r1 or second relative pole number r2. Specifically, the first rotation angle calculator 77A calculates the calculated E, A in the storage location corresponding to the currently set first relative pole number r1 in the memory areas e1, e2, e3. 1 and a 2 to be stored. Thereafter, the first rotation angle calculation unit 77A proceeds to step S52.
前記ステップS44において、ステップS44の条件を満たしていると判別された場合には(ステップS44:YES)、第1の回転角演算部77Aは、第2演算モードで用いられるEΘ基本演算式(32)およびE演算式(33)に含まれている分数のいずれの分母も零でないという条件を満たしているか否かを判別する(ステップS45)。ステップS45の条件を満たしていない場合には(ステップS45:NO)、第1の回転角演算部77Aは、図12BのステップS36に戻る。 If it is determined in step S44 that the condition of step S44 is satisfied (step S44: YES), the first rotation angle calculation unit 77A uses the EΘ basic calculation expression (32) used in the second calculation mode. ) And E arithmetic expression (33), it is determined whether or not the condition that any denominator of the fraction is not zero is satisfied (step S45). When the condition of step S45 is not satisfied (step S45: NO), the first rotation angle calculation unit 77A returns to step S36 of FIG. 12B.
ステップS45の条件を満たしている場合には(ステップS45:YES)、第1の回転角演算部77Aは、第2演算モードによってθ[n],E,A2,A3を演算する(ステップS46)。そして、第1の回転角演算部77Aは、演算されたE、A2およびA3を、第2および第3磁気センサ72,73が検出している磁極の相対的極番号に関連付けてメモリに記憶する(ステップS47)。第2および第3磁気センサ72,73が検出している磁極の相対的極番号は、現在設定されている第2相対的極番号r2または第3相対的極番号r3と同じ値となる。具体的には、第1の回転角演算部77Aは、メモリのエリアe1,e3,e4内の現在設定されている第2相対的極番号r2に対応する記憶場所に、演算されたE、A2およびA3をそれぞれ記憶する。この後、第1の回転角演算部77Aは、ステップS52に進む。 If the condition of step S45 is satisfied (step S45: YES), the first rotation angle calculator 77A calculates θ [n], E, A 2 , A 3 in the second calculation mode (step S45). S46). Then, the first rotation angle calculator 77A associates the calculated E, A 2 and A 3 with the relative pole numbers of the magnetic poles detected by the second and third magnetic sensors 72 and 73 in the memory. Store (step S47). The relative pole numbers of the magnetic poles detected by the second and third magnetic sensors 72 and 73 have the same value as the currently set second relative pole number r2 or third relative pole number r3. Specifically, the first rotation angle calculator 77A calculates the calculated E, A in the storage location corresponding to the currently set second relative pole number r2 in the areas e1, e3, e4 of the memory. 2 and a 3 are respectively stored. Thereafter, the first rotation angle calculation unit 77A proceeds to step S52.
ステップS52では、第1の回転角演算部77Aは、電動モータ18の駆動を停止させるとともに運転者への警告を停止させる。具体的には、第1の回転角演算部77Aは、電動モータ18の駆動停止指令をモータ制御用ECU12に送信するとともに、映像音声制御装置に警告停止指令を送信する。モータ制御用ECU12は、電動モータ18の駆動停止指令を受信すると電動モータ18の駆動を停止させる。映像音声制御装置は、警告停止指令を受信すると、警告表示、警告音声出力等を停止させる。これにより、強制回転に基づく回転角演算処理が終了する。 In step S52, the first rotation angle calculation unit 77A stops driving the electric motor 18 and stops the warning to the driver. Specifically, the first rotation angle calculation unit 77A transmits a drive stop command for the electric motor 18 to the motor control ECU 12, and transmits a warning stop command to the video / audio control device. When the motor control ECU 12 receives a drive stop command for the electric motor 18, the motor control ECU 12 stops the drive of the electric motor 18. When receiving the warning stop command, the video / audio control device stops warning display, warning voice output, and the like. Thereby, the rotation angle calculation process based on forced rotation ends.
図12Aに戻り、前記ステップS28において、第2センサ故障フラグFA2の値が0ではないと判別された場合には(ステップS28:NO)、つまり、電源オンの直後から第2磁気センサ72が故障していると判定されている場合には、第1の回転角演算部77Aは、ステップS29に移行する。ステップS29では、第1の回転角演算部77Aは、第1および第3磁気センサ71,73が共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する。各演算周期において、第1および第3磁気センサ71,73が検出している磁極の相対的番号は、それぞれ第1相対的磁極番号r1および第3相対的磁極番号r3によって認識することができる。したがって、所定演算周期前から今演算周期までの複数演算周期分の各相対的磁極番号r1,r3をメモリに記憶することにより、3演算周期連続して第1および第2磁気センサ71,73がともに同じ1つの磁極を検出しているか否かを判別できる。 Returning to FIG. 12A, if it is determined in step S28 that the value of the second sensor failure flag F A2 is not 0 (step S28: NO), that is, the second magnetic sensor 72 is turned on immediately after the power is turned on. If it is determined that a failure has occurred, the first rotation angle calculation unit 77A proceeds to step S29. In step S29, the first rotation angle calculation unit 77A determines whether or not the first and third magnetic sensors 71 and 73 both satisfy the condition that the same magnetic pole is detected continuously for three calculation cycles. Determine. In each calculation period, the relative numbers of the magnetic poles detected by the first and third magnetic sensors 71 and 73 can be recognized by the first relative magnetic pole number r1 and the third relative magnetic pole number r3, respectively. Therefore, by storing the relative magnetic pole numbers r1 and r3 for a plurality of calculation periods from the predetermined calculation period to the current calculation period in the memory, the first and second magnetic sensors 71 and 73 can be continuously operated for three calculation periods. It can be determined whether or not the same magnetic pole is detected.
ステップS29の条件を満たしていない場合には(ステップS29:NO)、第1の回転角演算部77Aは、ステップS23に戻る。一方、ステップS29の条件を満たしていると判別された場合には(ステップS29:YES)、第1の回転角演算部77Aは、第3演算モードで用いられるEθ基本演算式(35)およびE演算式(36)に含まれている分数のいずれの分母も零でないという条件を満たしているか否かを判別する(ステップS30)。ステップS30の条件を満たしていない場合には(ステップS30:NO)、第1の回転角演算部77Aは、ステップS23に戻る。一方、ステップS30の条件を満たしている場合には(ステップS30:YES)、第1の回転角演算部77Aは、図12BのステップS35に移行し、第2方向に電動モータ18を駆動する。 When the condition of step S29 is not satisfied (step S29: NO), the first rotation angle calculation unit 77A returns to step S23. On the other hand, when it is determined that the condition of step S29 is satisfied (step S29: YES), the first rotation angle calculation unit 77A uses the Eθ basic calculation formula (35) and E used in the third calculation mode. It is determined whether or not the condition that any denominator of the fraction contained in the arithmetic expression (36) is not zero is satisfied (step S30). When the condition of step S30 is not satisfied (step S30: NO), the first rotation angle calculation unit 77A returns to step S23. On the other hand, when the condition of step S30 is satisfied (step S30: YES), the first rotation angle calculator 77A proceeds to step S35 of FIG. 12B and drives the electric motor 18 in the second direction.
図12Bの前記ステップS39において、第2センサ故障フラグFA2の値が0ではないと判別された場合には(ステップS39:NO)、つまり、電源オンの直後から第2磁気センサ72が故障していると判定されている場合には、第1の回転角演算部77Aは、図12DのステップS48に移行する。
ステップS48では、第1の回転角演算部77Aは、第1および第3磁気センサ71,73が共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する。ステップS48の条件を満たしていない場合には(ステップS48:NO)、第1の回転角演算部77Aは、図12BのステップS36に戻る。
In step S39 of FIG. 12B, when it is determined that the value of the second sensor failure flag FA2 is not 0 (step S39: NO), that is, the second magnetic sensor 72 has failed immediately after the power is turned on. If it is determined that the rotation angle is calculated, the first rotation angle calculation unit 77A proceeds to step S48 in FIG. 12D.
In step S48, the first rotation angle calculator 77A determines whether or not the first and third magnetic sensors 71 and 73 both satisfy the condition that the same magnetic pole is detected continuously for three calculation cycles. Determine. When the condition of step S48 is not satisfied (step S48: NO), the first rotation angle calculation unit 77A returns to step S36 of FIG. 12B.
前記ステップS48において、ステップS48の条件を満たしていると判別された場合には(ステップS48:YES)、第1の回転角演算部77Aは、第3演算モードで用いられるEθ基本演算式(35)およびE演算式(36)に含まれている分数のいずれの分母も零でないという条件を満たしているか否かを判別する(ステップS49)。ステップS49の条件を満たしていない場合には(ステップS49:NO)、第1の回転角演算部77Aは、図12BのステップS36に戻る。 If it is determined in step S48 that the condition of step S48 is satisfied (step S48: YES), the first rotation angle calculation unit 77A uses the Eθ basic calculation formula (35) used in the third calculation mode. ) And E arithmetic expression (36), it is determined whether or not the condition that any denominator of the fraction is not zero is satisfied (step S49). When the condition of step S49 is not satisfied (step S49: NO), the first rotation angle calculation unit 77A returns to step S36 of FIG. 12B.
ステップS49の条件を満たしていると判別された場合には(ステップS49:YES)、第1の回転角演算部77Aは、第3演算モードによってθ[n],E,A1,A3を演算する(ステップS50)。そして、第1の回転角演算部77Aは、演算されたE、A1およびA3を、第1および第3磁気センサ71,73が検出している磁極の相対的極番号に関連付けてメモリに記憶する(ステップS51)。第1および第3磁気センサ71,73が検出している磁極の相対的極番号は、現在設定されている第1相対的極番号r1または第3相対的極番号r3と同じ値となる。具体的には、第1の回転角演算部77Aは、メモリのエリアe1,e2,e4内の現在設定されている第1相対的極番号r1に対応する記憶場所に、演算されたE、A1およびA3をそれぞれ記憶する。この後、第1の回転角演算部77Aは、ステップS52に進む。 When it is determined that the condition of step S49 is satisfied (step S49: YES), the first rotation angle calculation unit 77A sets θ [n], E, A 1 , A 3 in the third calculation mode. Calculation is performed (step S50). Then, the first rotation angle calculator 77A associates the calculated E, A 1 and A 3 with the relative pole numbers of the magnetic poles detected by the first and third magnetic sensors 71 and 73 in the memory. Store (step S51). The relative pole numbers of the magnetic poles detected by the first and third magnetic sensors 71 and 73 have the same value as the currently set first relative pole number r1 or third relative pole number r3. Specifically, the first rotation angle calculator 77A calculates the calculated E, A in the storage location corresponding to the currently set first relative pole number r1 in the memory areas e1, e2, e4. 1 and a 3 are respectively stored. Thereafter, the first rotation angle calculation unit 77A proceeds to step S52.
図16A、図16Bおよび図16Cは、図10のステップS5の通常時の回転角演算処理の手順を示すフローチャートである。
通常時の回転角演算処理においては、第1の回転角演算部77Aは、図10のステップS1の故障判定処理(より詳しくは図11のステップS11)において取得されたセンサ値S1[n],S2[n],S3[n]に基づいて、入力軸18の回転角θを演算する。
16A, 16B, and 16C are flowcharts showing the procedure of the normal rotation angle calculation process in step S5 of FIG.
In the normal rotation angle calculation process, the first rotation angle calculation unit 77A uses the sensor value S 1 [n] acquired in the failure determination process in step S1 of FIG. 10 (more specifically, step S11 of FIG. 11). , S 2 [n], S 3 [n], the rotation angle θ of the input shaft 18 is calculated.
第1の回転角演算部77Aは、メモリに記憶されているセンサ値S1,S2,S3に基づいて、センサ値S1,S2,S3毎に、センサ値の符号が反転するゼロクロスを検出したか否かを判別する(ステップS81)。ゼロクロスが検出されなかったときには(ステップS81:NO)、第1の回転角演算部77Aは、ステップS83に移行する。
前記ステップS81において、いずれかのセンサ値S1,S2,S3に対してゼロクロスが検出された場合には(ステップS81:YES)、第1の回転角演算部77Aは、相対的極番号の更新処理を行なう(ステップS82)。この相対的極番号の更新処理は、前述した
図12AのステップS27における相対的極番号の更新処理と同じである。ステップS82の相対的極番号の更新処理が終了すると、第1の回転角演算部77Aは、ステップS83に移行する。
First rotation angle computation unit 77A, based on the sensor values S 1, S 2, S 3 stored in the memory, for each sensor value S 1, S 2, S 3, the sign of the sensor value is inverted It is determined whether a zero cross has been detected (step S81). When the zero cross is not detected (step S81: NO), the first rotation angle calculation unit 77A proceeds to step S83.
If a zero cross is detected for any of the sensor values S 1 , S 2 , S 3 in step S81 (step S81: YES), the first rotation angle calculator 77A determines the relative pole number. Is updated (step S82). The relative pole number update process is the same as the relative pole number update process in step S27 of FIG. 12A described above. When the relative pole number update process in step S82 ends, the first rotation angle calculation unit 77A proceeds to step S83.
ステップS83では、第1の回転角演算部77Aは、第2センサ故障フラグFA2の値が0であるか否かを判別する。第2センサ故障フラグFA2の値が0である場合には(ステップS83:YES)、つまり、第2磁気センサ72が故障していない場合には、第1の回転角演算部77Aは、ステップS84に移行する。
ステップS84では、第1の回転角演算部77Aは、第1および第2磁気センサ71,72が正常でありかつそれらが共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する。ステップS84の条件を満たしている場合には(ステップS84:YES)、第1の回転角演算部77Aは、第1演算モードによってθ[n],E,A1,A2を演算する(ステップS85)。第1演算モードによって回転角θ[n]を演算する際においては、第1の回転角演算部77Aは、Eθ基本演算式(7)に含まれている分数の分母が零でないか否か、E演算式(8)に含まれている分数の分母が零でないか否かを判定し、それらの判定結果に応じてθ[n],E,A1,A2を演算する。
In step S83, the first rotation angle calculation unit 77A determines whether or not the value of the second sensor failure flag F A2 is zero. If the value of the second sensor failure flag F A2 is 0 (step S83: YES), that is, if the second magnetic sensor 72 has not failed, the first rotation angle calculator 77A The process proceeds to S84.
In step S84, the first rotation angle calculation unit 77A sets a condition that the first and second magnetic sensors 71 and 72 are normal and both detect the same magnetic pole for three calculation cycles continuously. It is determined whether or not it is satisfied. If the condition of step S84 is satisfied (step S84: YES), the first rotation angle calculator 77A calculates θ [n], E, A 1 , A 2 in the first calculation mode (step S84). S85). When calculating the rotation angle θ [n] in the first calculation mode, the first rotation angle calculation unit 77A determines whether or not the denominator of the fraction included in the Eθ basic calculation formula (7) is zero. It is determined whether or not the denominator of the fraction included in E arithmetic expression (8) is not zero, and θ [n], E, A 1 , A 2 are calculated according to the determination results.
第1の回転角演算部77Aは、θ[n],E,A1,A2を演算すると、Eθ基本演算式(7)およびE演算式(8)に含まれている分数のいずれの分母も零でないという条件を満たしていたか否かを判別する(ステップS86)。ステップS86の条件を満たしていた場合には(ステップS86:YES)、第1の回転角演算部77Aは、演算されたE、A1およびA2を、第1および第2磁気センサ71,72が検出している磁極の相対的極番号に関連付けてメモリに記憶する(ステップS87)。第1および第2磁気センサ71,72が検出している磁極の相対的極番号は、現在設定されている第1相対的極番号r1または第2相対的極番号r2と同じ値となる。具体的には、第1の回転角演算部77Aは、メモリのエリアe1,e2,e3内の現在設定されている第1相対的極番号r1に対応する記憶場所に、演算されたE、A1およびA2をそれぞれ記憶する。なお、メモリのエリアe1,e2,e3の前記記憶場所に既にE、A1およびA2が記憶されている場合には、今回演算されたE、A1およびA2が上書きされる。この後、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。 When the first rotation angle calculation unit 77A calculates θ [n], E, A 1 , A 2 , any denominator of the fractions included in the Eθ basic calculation formula (7) and the E calculation formula (8) is calculated. It is determined whether or not the condition that is not zero is also satisfied (step S86). If met the condition of step S86 (step S86: YES), the first rotation angle computation unit 77A is computed E, A 1 and A 2, the first and second magnetic sensors 71 and 72 Is stored in the memory in association with the relative pole number of the magnetic pole detected by (step S87). The relative pole numbers of the magnetic poles detected by the first and second magnetic sensors 71 and 72 have the same value as the currently set first relative pole number r1 or second relative pole number r2. Specifically, the first rotation angle calculator 77A calculates the calculated E, A in the storage location corresponding to the currently set first relative pole number r1 in the memory areas e1, e2, e3. Store 1 and A2, respectively. Note that memory areas e1, e2, e3 already E in the storage location, if A 1 and A 2 are stored, this time computed E, A 1 and A 2 are overwritten. Thereafter, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
前記ステップS86において、ステップS86の条件を満たしていなかったと判別された場合には(ステップS86:NO)、第1の回転角演算部77Aは、ステップS87の処理を行うことなく、今回の通常時の回転角演算処理を終了する。したがって、この場合には、ステップS85で演算されたE、A1およびA2は、メモリのエリアe1,e2,e3に記憶されない。 If it is determined in step S86 that the condition of step S86 has not been satisfied (step S86: NO), the first rotation angle calculation unit 77A does not perform the process of step S87, but at this normal time. This completes the rotation angle calculation process. Therefore, in this case, the calculated E in step S85, A 1 and A 2 are not stored in the area e1, e2, e3 of the memory.
前記ステップS84において、ステップS84の条件を満たしていないと判別された場合には(ステップS84:NO)、第1の回転角演算部77Aは、第2および第3磁気センサ72,73が正常でありかつそれらが共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する(ステップS88)。ステップS88の条件を満たしている場合には(ステップS88:YES)、第1の回転角演算部77Aは、第2演算モードによってθ[n],E,A2,A3を演算する(ステップS89)。第2演算モードによって回転角θ[n]を演算する際においては、第1の回転角演算部77Aは、EΘ基本演算式(32)に含まれている分数の分母が零でないか否か、E演算式(33)に含まれている分数の分母が零でないか否かを判定し、それらの判定結果に応じてθ[n],E,A2,A3を演算する。 If it is determined in step S84 that the condition in step S84 is not satisfied (step S84: NO), the first rotation angle calculator 77A indicates that the second and third magnetic sensors 72 and 73 are normal. Then, it is determined whether or not the condition that the same magnetic pole is detected for three consecutive calculation periods is satisfied (step S88). If the condition of step S88 is satisfied (step S88: YES), the first rotation angle calculator 77A calculates θ [n], E, A 2 , A 3 in the second calculation mode (step S88). S89). When calculating the rotation angle θ [n] in the second calculation mode, the first rotation angle calculation unit 77A determines whether the denominator of the fraction contained in the EΘ basic calculation expression (32) is not zero, It is determined whether or not the fractional denominator included in the E equation (33) is non-zero, and θ [n], E, A 2 , A 3 are calculated according to the determination results.
第1の回転角演算部77Aは、θ[n],E,A2,A3を演算すると、EΘ基本演算式(32)およびE演算式(33)に含まれている分数のいずれの分母も零でないという条件を満たしていたか否かを判別する(ステップS90)。ステップS90の条件を満たしていた場合には(ステップS90:YES)、第1の回転角演算部77Aは、演算されたE、A2およびA3を、第2および第3磁気センサ72,73が検出している磁極の相対的極番号に関連付けてメモリに記憶する(ステップS91)。第2および第3磁気センサ72,73が検出している磁極の相対的極番号は、現在設定されている第2相対的極番号r2または第3相対的極番号r3と同じ値となる。具体的には、第1の回転角演算部77Aは、メモリのエリアe1,e3,e4内の現在設定されている第2相対的極番号r2に対応する記憶場所に、演算されたE、A2およびA3をそれぞれ記憶する。なお、メモリのエリアe1,e3,e4の前記記憶場所に既にE、A2およびA3が記憶されている場合には、今回演算されたE、A2およびA3が上書きされる。この後、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。 When the first rotation angle calculation unit 77A calculates θ [n], E, A 2 , A 3 , any denominator of the fractions included in the EΘ basic calculation expression (32) and the E calculation expression (33) is calculated. It is also determined whether or not the condition that is not zero is satisfied (step S90). When the condition of step S90 is satisfied (step S90: YES), the first rotation angle calculation unit 77A converts the calculated E, A 2 and A 3 into the second and third magnetic sensors 72 and 73. Are stored in the memory in association with the relative pole numbers of the magnetic poles detected (step S91). The relative pole numbers of the magnetic poles detected by the second and third magnetic sensors 72 and 73 have the same value as the currently set second relative pole number r2 or third relative pole number r3. Specifically, the first rotation angle calculator 77A calculates the calculated E, A in the storage location corresponding to the currently set second relative pole number r2 in the areas e1, e3, e4 of the memory. 2 and a 3 are respectively stored. If E, A 2 and A 3 are already stored in the storage locations of the memory areas e1, e3 and e4, the currently calculated E, A 2 and A 3 are overwritten. Thereafter, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
前記ステップS90において、ステップS90の条件を満たしていなかったと判別された場合には(ステップS90:NO)、第1の回転角演算部77Aは、ステップS91の処理を行うことなく、今回の通常時の回転角演算処理を終了する。したがって、この場合には、ステップS89で演算されたE、A2およびA3は、メモリのエリアe1,e3,e4に記憶されない。 If it is determined in step S90 that the condition of step S90 is not satisfied (step S90: NO), the first rotation angle calculation unit 77A does not perform the process of step S91, and the current normal time This completes the rotation angle calculation process. Therefore, in this case, E, A 2 and A 3 calculated in step S89 are not stored in the memory areas e1, e3 and e4.
前記ステップS88において、ステップS88の条件を満たしていないと判別された場合には(ステップS88:NO)、第1の回転角演算部77Aは、図13BのステップS92に移行する。ステップS92では、第1の回転角演算部77Aは、第1磁気センサ71が正常でありかつ第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されているか否かを判別する。第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されているか否かの判別は、メモリのエリアe1内の現在設定されている第1相対的極番号r1に対応する記憶場所に、角度幅誤差補正値Eが記憶されているか否かに基づいて行われる。 If it is determined in step S88 that the condition of step S88 is not satisfied (step S88: NO), the first rotation angle calculation unit 77A proceeds to step S92 of FIG. 13B. In step S92, the first rotation angle calculation unit 77A stores in the memory an angle width error correction value E corresponding to the magnetic pole detected by the first magnetic sensor 71 when the first magnetic sensor 71 is normal. It is determined whether or not. Whether or not the angular width error correction value E corresponding to the magnetic pole detected by the first magnetic sensor 71 is stored in the memory is determined based on the currently set first relative pole number in the area e1 of the memory. This is performed based on whether or not the angular width error correction value E is stored in the storage location corresponding to r1.
第1磁気センサ71が正常でありかつ第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されている場合には(ステップS92:YES)、第1の回転角演算部77Aは、第4演算モードによって回転角θ[n]を演算する(ステップS93)。そして、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。 When the first magnetic sensor 71 is normal and the angle width error correction value E corresponding to the magnetic pole detected by the first magnetic sensor 71 is stored in the memory (step S92: YES), the first magnetic sensor 71 is normal. The rotation angle calculator 77A calculates the rotation angle θ [n] in the fourth calculation mode (step S93). Then, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
前記ステップS92において、第1磁気センサ71が故障していると判定されている場合または第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されていないと判別された場合には(ステップS92:NO)、第1の回転角演算部77Aは、ステップS94に進む。ステップS94では、第1の回転角演算部77Aは、第2磁気センサ72が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されているか否かを判別する。この判別は、メモリのエリアe1内の現在設定されている第2相対的極番号r2に対応する記憶場所に、角度幅誤差補正値Eが記憶されているか否かに基づいて行われる。 If it is determined in step S92 that the first magnetic sensor 71 has failed or the angle width error correction value E corresponding to the magnetic pole detected by the first magnetic sensor 71 is not stored in the memory. If it is determined (step S92: NO), the first rotation angle calculator 77A proceeds to step S94. In step S94, the first rotation angle calculation unit 77A determines whether or not the angular width error correction value E corresponding to the magnetic pole detected by the second magnetic sensor 72 is stored in the memory. This determination is made based on whether or not the angular width error correction value E is stored in the storage location corresponding to the currently set second relative pole number r2 in the area e1 of the memory.
第2磁気センサ72が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されている場合には(ステップS94:YES)、第1の回転角演算部77Aは、第5演算モードによって回転角θ[n]を演算する(ステップS93)。そして、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。
前記ステップS94において、第2磁気センサ72が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されていないと判別された場合には(ステップS94:NO)、第1の回転角演算部77Aは、第6演算モードによって回転角θ[n]を演算する(ステップS96)。そして、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。
When the angle width error correction value E corresponding to the magnetic pole detected by the second magnetic sensor 72 is stored in the memory (step S94: YES), the first rotation angle calculation unit 77A performs the fifth calculation. The rotation angle θ [n] is calculated according to the mode (step S93). Then, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
If it is determined in step S94 that the angular width error correction value E corresponding to the magnetic pole detected by the second magnetic sensor 72 is not stored in the memory (step S94: NO), the first rotation The angle calculation unit 77A calculates the rotation angle θ [n] in the sixth calculation mode (step S96). Then, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
図16Aに戻り、前記ステップS83において、第2センサ故障フラグFA2の値が0でないと判別された場合には(ステップS83:NO)、つまり、第2磁気センサ72が故障している場合には、第1の回転角演算部77Aは、図16CのステップS97に移行する。ステップS97では、第1の回転角演算部77Aは、第1および第3磁気センサ71,73が共に同じ1つの磁極を3演算周期連続して検出しているという条件を満たしている否かを判別する。ステップS97の条件を満たしている場合には(ステップS97:YES)、第1の回転角演算部77Aは、第3演算モードによってθ[n],E,A1,A3を演算する(ステップS98)。第3演算モードによって回転角θ[n]を演算する際においては、第1の回転角演算部77Aは、Eθ基本演算式(35)に含まれている分数の分母が零でないか否か、E演算式(36)に含まれている分数の分母が零でないか否かを判定し、それらの判定結果に応じてθ[n],E,A1,A3を演算する。 Returning to FIG. 16A, if it is determined in step S83 that the value of the second sensor failure flag F A2 is not 0 (step S83: NO), that is, if the second magnetic sensor 72 has failed. The first rotation angle calculation unit 77A proceeds to step S97 in FIG. 16C. In step S97, the first rotation angle calculation unit 77A determines whether or not the first and third magnetic sensors 71 and 73 both satisfy the condition that the same magnetic pole is detected continuously for three calculation cycles. Determine. When the condition of step S97 is satisfied (step S97: YES), the first rotation angle calculation unit 77A calculates θ [n], E, A 1 , A 3 in the third calculation mode (step S97). S98). When calculating the rotation angle θ [n] in the third calculation mode, the first rotation angle calculation unit 77A determines whether the fractional denominator included in the Eθ basic calculation formula (35) is not zero, It is determined whether or not the denominator of the fraction included in the E arithmetic expression (36) is not zero, and θ [n], E, A 1 , A 3 are calculated according to the determination results.
第1の回転角演算部77Aは、θ[n],E,A1,A3を演算すると、Eθ基本演算式(35)およびE演算式(36)に含まれている分数のいずれの分母も零でないという条件を満たしていたか否かを判別する(ステップS99)。ステップS99の条件を満たしていた場合には(ステップS99:YES)、第1の回転角演算部77Aは、演算されたE、A1およびA3を、第1および第3磁気センサ71,73が検出している磁極の相対的極番号に関連付けてメモリに記憶する(ステップS100)。第1および第3磁気センサ71,73が検出している磁極の相対的極番号は、現在設定されている第1相対的極番号r1または第3相対的極番号r3と同じ値となる。具体的には、第1の回転角演算部77Aは、メモリのエリアe1,e2,e4内の現在設定されている第1相対的極番号r1に対応する記憶場所に、演算されたE、A1およびA3をそれぞれ記憶する。なお、メモリのエリアe1,e2,e4の前記記憶場所に既にE、A1およびA3が記憶されている場合には、今回演算されたE、A1およびA3が上書きされる。この後、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。 When the first rotation angle calculation unit 77A calculates θ [n], E, A 1 , A 3 , any denominator of the fractions included in the Eθ basic calculation formula (35) and the E calculation formula (36) is calculated. It is determined whether or not the condition that is not zero is also satisfied (step S99). When the condition of step S99 is satisfied (step S99: YES), the first rotation angle calculation unit 77A converts the calculated E, A 1 and A 3 into the first and third magnetic sensors 71 and 73. Are stored in the memory in association with the relative pole numbers of the magnetic poles detected (step S100). The relative pole numbers of the magnetic poles detected by the first and third magnetic sensors 71 and 73 have the same value as the currently set first relative pole number r1 or third relative pole number r3. Specifically, the first rotation angle calculator 77A calculates the calculated E, A in the storage location corresponding to the currently set first relative pole number r1 in the memory areas e1, e2, e4. 1 and a 3 are respectively stored. When E, A 1 and A 3 are already stored in the storage locations of the memory areas e1, e2 and e4, the currently calculated E, A 1 and A 3 are overwritten. Thereafter, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
前記ステップS99において、ステップS99の条件を満たしていなかったと判別された場合には(ステップS99:NO)、第1の回転角演算部77Aは、ステップS100の処理を行うことなく、今回の通常時の回転角演算処理を終了する。したがって、この場合には、ステップS98で演算されたE、A1およびA3は、メモリのエリアe1,e2,e4に記憶されない。 If it is determined in step S99 that the condition of step S99 is not satisfied (step S99: NO), the first rotation angle calculation unit 77A does not perform the process of step S100, and the current normal time This completes the rotation angle calculation process. Therefore, in this case, the calculated E in step S98, A 1 and A 3 are not stored in the area e1, e2, e4 of the memory.
前記ステップS97において、ステップS97の条件を満たしていないと判別された場合には(ステップS97:NO)、第1の回転角演算部77Aは、第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されているか否かを判別する(ステップS101)。この判別は、メモリのエリアe1内の現在設定されている第1相対的極番号r1に対応する記憶場所に、角度幅誤差補正値Eが記憶されているか否かに基づいて行われる。 If it is determined in step S97 that the condition of step S97 is not satisfied (step S97: NO), the first rotation angle calculator 77A corresponds to the magnetic pole detected by the first magnetic sensor 71. It is determined whether or not the angular width error correction value E to be stored is stored in the memory (step S101). This determination is performed based on whether or not the angular width error correction value E is stored in the storage location corresponding to the currently set first relative pole number r1 in the memory area e1.
第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されている場合には(ステップS101:YES)、第1の回転角演算部77Aは、第4演算モードによって回転角θ[n]を演算する(ステップS102)。そして、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。
前記ステップS101において、第1磁気センサ71が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されていないと判別された場合には(ステップS101:NO)、第1の回転角演算部77Aは、ステップS103に移行する。ステップS103では、第1の回転角演算部77Aは、第3磁気センサ73が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されているか否かを判別する。この判別は、メモリのエリアe1内の現在設定されている第3相対的極番号r3に対応する記憶場所に、角度幅誤差補正値Eが記憶されているか否かに基づいて行われる。
When the angle width error correction value E corresponding to the magnetic pole detected by the first magnetic sensor 71 is stored in the memory (step S101: YES), the first rotation angle calculation unit 77A performs the fourth calculation. The rotation angle θ [n] is calculated according to the mode (step S102). Then, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
If it is determined in step S101 that the angular width error correction value E corresponding to the magnetic pole detected by the first magnetic sensor 71 is not stored in the memory (step S101: NO), the first rotation The angle calculation unit 77A proceeds to step S103. In step S103, the first rotation angle calculator 77A determines whether or not the angular width error correction value E corresponding to the magnetic pole detected by the third magnetic sensor 73 is stored in the memory. This determination is made based on whether or not the angular width error correction value E is stored in the storage location corresponding to the currently set third relative pole number r3 in the area e1 of the memory.
第3磁気センサ73が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されている場合には(ステップS103:YES)、第1の回転角演算部77Aは、第6演算モードによって回転角θ[n]を演算する(ステップS104)。そして、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。
前記ステップS103において、第3磁気センサ73が検出している磁極に対応する角度幅誤差補正値Eがメモリに記憶されていないと判別された場合には(ステップS103:NO)、第1の回転角演算部77Aは、第7演算モードによって回転角θ[n]を演算する(ステップS105)。つまり、第3演算モードと同じ演算式(35),(35),(37)を用いて演算角θ[n]が演算される。そして、第1の回転角演算部77Aは、今回の通常時の回転角演算処理を終了する。ステップS105の処理は、ステップS103でNOと判別された場合に実行されるが、ステップS103でNOと判別される状況が実際に発生するか否かは不明である。また、ステップS103でNOと判別される状況が発生するとしても、その発生頻度は非常に低いと考えられる。この実施形態では、念のために、ステップS105の処理を用意している。
When the angle width error correction value E corresponding to the magnetic pole detected by the third magnetic sensor 73 is stored in the memory (step S103: YES), the first rotation angle calculation unit 77A performs the sixth calculation. The rotation angle θ [n] is calculated according to the mode (step S104). Then, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time.
If it is determined in step S103 that the angular width error correction value E corresponding to the magnetic pole detected by the third magnetic sensor 73 is not stored in the memory (step S103: NO), the first rotation The angle calculation unit 77A calculates the rotation angle θ [n] in the seventh calculation mode (step S105). That is, the calculation angle θ [n] is calculated using the same calculation formulas (35), (35), and (37) as in the third calculation mode. Then, the first rotation angle calculation unit 77A ends the normal rotation angle calculation process at this time. The process of step S105 is executed when NO is determined in step S103, but it is unclear whether or not the situation determined as NO in step S103 actually occurs. Moreover, even if the situation determined as NO in step S103 occurs, the occurrence frequency is considered to be very low. In this embodiment, the process of step S105 is prepared just in case.
なお、図16AのステップS86を省略して、ステップS85の処理が終了したときには、ステップS87に進むようにしてもよい。同様に、図16AのステップS90を省略して、ステップS89の処理が終了したときには、ステップS91に進むようにしてもよい。同様に、図16CのステップS99を省略して、ステップS98の処理が終了したときには、ステップS101に進むようにしてもよい
上述の実施形態では、第2磁気センサ72と第1磁気センサ71との間の角度間隔と、第2磁気センサ72と第3磁気センサ73との間の角度間隔との和は電気角で120°であり、1つの磁極の角度幅(電気角で180°)より小さく設定されている。このため、3つの磁気センサ71,72,73のうちのいずれの1つの磁気センサが故障した場合であっても、正常な2つの磁気センサが共に同じ1つの磁極を3サンプリング周期(3演算周期)連続して検出しているという状態が発生しうる。
Note that step S86 of FIG. 16A may be omitted, and the process may proceed to step S87 when the process of step S85 is completed. Similarly, step S90 of FIG. 16A may be omitted, and when the process of step S89 is completed, the process may proceed to step S91. Similarly, step S99 of FIG. 16C may be omitted, and the process may proceed to step S101 when the process of step S98 ends. In the above-described embodiment, the process between the second magnetic sensor 72 and the first magnetic sensor 71 may be performed. The sum of the angular interval and the angular interval between the second magnetic sensor 72 and the third magnetic sensor 73 is 120 ° in electrical angle, and is set smaller than the angular width of one magnetic pole (180 ° in electrical angle). ing. For this reason, even if any one of the three magnetic sensors 71, 72, 73 fails, the two normal magnetic sensors both use the same magnetic pole for three sampling periods (three calculation periods). ) A state of continuous detection may occur.
正常な2つの磁気センサが共に同じ1つの磁極を3サンプリング周期(3演算周期)連続して検出しているという条件を満たしている場合には、正常な2つの磁気センサの3サンプリング分の出力信号に基づいて回転体の回転角を演算することにより、精度の高い回転角を演算することが可能である。これにより、3つの磁気センサのうちのいずれの1つの磁気センサが故障した場合であっても、前記条件を満たしているときには、精度の高い回転角を演算することが可能となる。 If the two normal magnetic sensors satisfy the condition that the same magnetic pole is detected continuously for three sampling periods (three calculation periods), the output of three normal magnetic sensors for three samplings By calculating the rotation angle of the rotating body based on the signal, it is possible to calculate a highly accurate rotation angle. As a result, even when any one of the three magnetic sensors fails, it is possible to calculate a highly accurate rotation angle when the above condition is satisfied.
また、この実施形態では、正常な2つの磁気センサが共に同じ1つの磁極を3サンプリング周期(3演算周期)連続して検出しているという条件を満たしていない場合においても、ほとんどの場合、第4、第5または第6演算モードのいずれかの演算モードで回転角が演算される。このため、前記条件を満たしていない場合においても、精度の高い回転角を演算することが可能となる。 Further, in this embodiment, even when the condition that both normal two magnetic sensors detect the same magnetic pole continuously for three sampling periods (three calculation periods) is not satisfied, The rotation angle is calculated in any one of the fourth, fifth and sixth calculation modes. For this reason, even when the above conditions are not satisfied, a highly accurate rotation angle can be calculated.
以上、この発明の一実施形態について説明したが、この発明はさらに他の形態で実施することもできる。たとえば、前述の実施形態では、第2磁気センサ72と第1磁気センサ71との間の角度間隔は60°であり、第2磁気センサ72と第3磁気センサ73との間の角度間隔は60°である。しかしながら、第2磁気センサ72と第1磁気センサ71との間の角度間隔と、第2磁気センサ72と第3磁気センサ73との間の角度間隔との和が電気角で180°未満であれば、これらの角度間隔は60°以外の角度であってもよい。この場合、第2磁気センサ72と第3磁気センサ73との間の角度間隔と、第2磁気センサ72と第3磁気センサ73との間の角度間隔とは、異なっていてもよい。 As mentioned above, although one Embodiment of this invention was described, this invention can also be implemented with another form. For example, in the above-described embodiment, the angular interval between the second magnetic sensor 72 and the first magnetic sensor 71 is 60 °, and the angular interval between the second magnetic sensor 72 and the third magnetic sensor 73 is 60 °. °. However, the sum of the angular interval between the second magnetic sensor 72 and the first magnetic sensor 71 and the angular interval between the second magnetic sensor 72 and the third magnetic sensor 73 is less than 180 ° in electrical angle. For example, the angle interval may be an angle other than 60 °. In this case, the angular interval between the second magnetic sensor 72 and the third magnetic sensor 73 and the angular interval between the second magnetic sensor 72 and the third magnetic sensor 73 may be different.
また、前述の実施形態では、第1演算モード、第2演算モードおよび第3演算モードでは、所定の2つの磁気センサが3サンプリング周期連続して共に同じ1つの磁極を検出している場合に、これらの2つの磁気センサにおける3サンプリング分の出力信号に基づいて回転角θが演算されている。しかし、第1演算モード、第2演算モードおよび第3演算モードにおいて、所定の2つの磁気センサが2サンプリング周期連続して共に同じ1つの磁極を検出している場合に、これらの2つの磁気センサにおける2サンプリング分の出力信号に基づいて回転角θを演算するようにしてもよい。 In the above-described embodiment, in the first calculation mode, the second calculation mode, and the third calculation mode, when two predetermined magnetic sensors detect the same magnetic pole for three consecutive sampling periods, The rotation angle θ is calculated on the basis of output signals for three samplings in these two magnetic sensors. However, in the first calculation mode, the second calculation mode, and the third calculation mode, when two predetermined magnetic sensors detect the same magnetic pole for two consecutive sampling periods, these two magnetic sensors The rotation angle θ may be calculated based on the output signal for two samplings in FIG.
この場合には、回転角θの演算に用いられる2つの磁気センサの振幅および角度幅誤差補正値のうちのいずれか一方が固定値とされる。これにより、2つの磁気センサにおける2サンプリング分の出力信号に基づいて回転角θを演算することが可能となる。2つの磁気センサの振幅が固定値とされる場合には、相対的極番号に関連して記憶される情報は、角度幅誤差補正値のみとなる。一方、角度幅誤差補正値が固定値とされる場合には、相対的極番号に関連して記憶される情報は、各磁気センサの振幅のみとなる。 In this case, one of the amplitude and angle width error correction values of the two magnetic sensors used for the calculation of the rotation angle θ is set as a fixed value. As a result, the rotation angle θ can be calculated based on the output signals for two samples from the two magnetic sensors. When the amplitudes of the two magnetic sensors are fixed values, the information stored in relation to the relative pole number is only the angle width error correction value. On the other hand, when the angle width error correction value is a fixed value, the information stored in relation to the relative pole number is only the amplitude of each magnetic sensor.
また、第1演算モード、第2演算モードおよび第3演算モードにおいて、所定の2つの磁気センサが4以上の所定数のサンプリング周期連続して共に同じ1つの磁極を検出している場合に、これらの2つの磁気センサにおける前記所定数のサンプリング分の出力信号に基づいて回転角θを演算するようにしてもよい。
なお、この発明は、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
In addition, in the first calculation mode, the second calculation mode, and the third calculation mode, when two predetermined magnetic sensors detect the same one magnetic pole continuously for a predetermined number of sampling periods of 4 or more, these The rotation angle θ may be calculated based on the predetermined number of sampling output signals in the two magnetic sensors.
The present invention can be modified in various ways within the scope of the matters described in the claims.
1…電動パワーステアリング装置、6…ステアリングシャフト、8…入力軸、9…出力軸、11…トルクセンサ、12…モータ制御用ECU、18…電動モータ、41…電流指令値設定部、61,62…磁石、71〜76…磁気センサ、77…トルク演算用ECU、77A…第1の回転角演算部、77B…第2の回転角演算部 DESCRIPTION OF SYMBOLS 1 ... Electric power steering apparatus, 6 ... Steering shaft, 8 ... Input shaft, 9 ... Output shaft, 11 ... Torque sensor, 12 ... Motor control ECU, 18 ... Electric motor, 41 ... Current command value setting part, 61, 62 ... Magnets, 71 to 76 ... Magnetic sensors, 77 ... ECU for torque calculation, 77A ... First rotation angle calculation unit, 77B ... Second rotation angle calculation unit
Claims (3)
前記回転体の回転に応じて回転し、複数の磁極を有する環状の多極磁石と、
前記多極磁石の周方向に並んで配置され、前記多極磁石の回転に応じて位相差を有する正弦波信号をそれぞれ出力する3つの磁気センサであって、これら3つの磁気センサのうちの中央の磁気センサと他の一方の磁気センサとの間の角度間隔と、前記中央の磁気センサと他の他方の磁気センサとの間の角度間隔との和が、電気角で180度未満である3つの磁気センサと、
前記各磁気センサに故障が発生したか否かを判定する故障判定手段と、
前記3つの磁気センサのうちの中央の磁気センサを含む少なくとも2つの磁気センサが正常である場合において、中央の磁気センサを含む正常な2つの磁気センサが共に同じ1つの磁極を所定複数サンプリング周期連続して検出しているという第1条件を満たしているときには、それらの2つの磁気センサの前記所定複数サンプリング分の出力信号に基づいて、前記回転体の回転角を演算する第1演算手段と、
前記3つの磁気センサのうちの中央の磁気センサのみが故障している場合において、中央の磁気センサを除く正常な2つの磁気センサが共に同じ1つの磁極を所定複数サンプリング周期連続して検出しているという第2条件を満たしているときには、それらの2つの磁気センサの前記所定複数サンプリング分の出力信号に基づいて、前記回転体の回転角を演算する第2演算手段とを含む、回転角演算装置。 A rotation angle calculation device for calculating the rotation angle of a rotating body,
An annular multipolar magnet that rotates according to the rotation of the rotating body and has a plurality of magnetic poles;
Three magnetic sensors arranged side by side in the circumferential direction of the multipolar magnet and each outputting a sine wave signal having a phase difference in accordance with the rotation of the multipolar magnet, the center of the three magnetic sensors The sum of the angular interval between one magnetic sensor and the other magnetic sensor and the angular interval between the central magnetic sensor and the other magnetic sensor is less than 180 degrees in electrical angle 3 Two magnetic sensors,
Failure determination means for determining whether or not a failure has occurred in each of the magnetic sensors;
When at least two magnetic sensors including the central magnetic sensor among the three magnetic sensors are normal, the two normal magnetic sensors including the central magnetic sensor continuously use the same magnetic pole for a predetermined plurality of sampling periods. A first calculating means for calculating a rotation angle of the rotating body based on output signals for the predetermined plurality of samplings of the two magnetic sensors when the first condition that the two magnetic sensors are detected is satisfied;
When only the central magnetic sensor of the three magnetic sensors is out of order, two normal magnetic sensors excluding the central magnetic sensor both detect the same magnetic pole continuously for a predetermined sampling period. Rotation angle calculation, including second calculation means for calculating the rotation angle of the rotating body based on the output signals for the predetermined plurality of samplings of the two magnetic sensors when the second condition is satisfied apparatus.
前記第2演算手段は、前記第2条件を満たしているときに、常にまたは前記中央の磁気センサを除く正常な2つの磁気センサの前記所定複数サンプリング分の出力信号が一定の要件を満たしているときには、それらの2つの磁気センサが検出している磁極の磁極幅に関する情報および/またはそれらの2つの磁気センサの出力信号の振幅に関する情報を演算して当該磁極に関連付けて記憶する手段を含んでおり、
前記3つの磁気センサのうちの中央の磁気センサを含む少なくとも2つの磁気センサが正常である場合において、前記第1条件を満たしていないときには、正常な磁気センサのうち、磁極幅に関する情報および/または振幅に関する情報が関連付けて記憶されている磁極を検出している1つの磁気センサを含む2つの磁気センサの1サンプリング分の出力信号と、前記第1演算手段によって記憶されている前記情報とを用いて、前記回転体の回転角を演算する第3演算手段と、
前記3つの磁気センサのうちの前記中央の磁気センサのみが故障している場合において、前記第2条件を満たしておらずかつ前記中央の磁気センサを除く正常な2つの磁気センサが検出している磁極のうちの少なくとも一方の磁極に関連して、磁極幅に関する情報および/または振幅に関する情報が記憶されている場合には、正常な2つの磁気センサの1サンプリング分の出力信号と、前記第2演算手段によって記憶されている前記情報とを用いて、前記回転体の回転角を演算する第4演算手段とをさらに含む、請求項1に記載の回転角演算装置。 When the first calculation means satisfies the first condition, the output signals for the predetermined plurality of samplings of the two normal magnetic sensors including the central magnetic sensor always satisfy a certain requirement. Sometimes, means for calculating and storing information relating to the magnetic pole width of the magnetic pole detected by the two magnetic sensors and / or information relating to the amplitude of the output signals of the two magnetic sensors in association with the magnetic poles is included. And
When the second calculation means satisfies the second condition, the output signals for the predetermined plurality of samplings of two normal magnetic sensors excluding the central magnetic sensor always or when satisfying the second condition satisfy a certain requirement Sometimes, means for calculating and storing information relating to the magnetic pole width of the magnetic pole detected by the two magnetic sensors and / or information relating to the amplitude of the output signals of the two magnetic sensors in association with the magnetic poles is included. And
When at least two magnetic sensors including the central magnetic sensor among the three magnetic sensors are normal and the first condition is not satisfied, information on the magnetic pole width of the normal magnetic sensors and / or Using output signals for one sampling of two magnetic sensors including one magnetic sensor that detects magnetic poles associated with information related to amplitude, and the information stored by the first calculation means Third calculating means for calculating the rotation angle of the rotating body;
When only the central magnetic sensor of the three magnetic sensors is out of order, the normal two magnetic sensors excluding the central magnetic sensor that do not satisfy the second condition are detected. When information on the magnetic pole width and / or information on the amplitude is stored in association with at least one of the magnetic poles, the output signals for one sampling of two normal magnetic sensors, and the second The rotation angle calculation device according to claim 1, further comprising fourth calculation means for calculating a rotation angle of the rotating body using the information stored by the calculation means.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013100613A JP2014219364A (en) | 2013-05-10 | 2013-05-10 | Rotation angle detection apparatus |
CN201310667521.8A CN104142120A (en) | 2013-05-10 | 2013-12-10 | Rotation angle detection device |
EP13196425.6A EP2743647B1 (en) | 2012-12-12 | 2013-12-10 | Rotation angle detection device |
US14/104,322 US20140163921A1 (en) | 2012-12-12 | 2013-12-12 | Rotation angle detection device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013100613A JP2014219364A (en) | 2013-05-10 | 2013-05-10 | Rotation angle detection apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014219364A true JP2014219364A (en) | 2014-11-20 |
Family
ID=51851376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013100613A Pending JP2014219364A (en) | 2012-12-12 | 2013-05-10 | Rotation angle detection apparatus |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2014219364A (en) |
CN (1) | CN104142120A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190040462A (en) * | 2017-10-10 | 2019-04-18 | 멜렉시스 테크놀로기스 에스에이 | Redundant Sensor Fault Detection |
CN111721334A (en) * | 2019-03-20 | 2020-09-29 | Tdk株式会社 | Rotation angle detecting device |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105406675B (en) * | 2015-12-01 | 2018-02-09 | 浙江省东阳市东磁诚基电子有限公司 | A kind of mobile phone Structure of D. C. brushless motor |
CN108114482B (en) * | 2017-11-19 | 2019-10-15 | 西北农林科技大学 | A kind of carbon-free trolley of the S-shaped walking based on magnetic force steering mechanism |
US11513170B2 (en) * | 2018-03-14 | 2022-11-29 | Honeywell International Inc. | Off-axis magnetic angular sensor using a magnetic sensing probe and multi-pole magnet array |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010203960A (en) * | 2009-03-04 | 2010-09-16 | Jtekt Corp | Torque detection device, and electric power steering device using the same |
JP2011220848A (en) * | 2010-04-09 | 2011-11-04 | Jtekt Corp | Rotation angle detection device |
JP2012127910A (en) * | 2010-12-17 | 2012-07-05 | Jtekt Corp | Rotation angle detector |
JP2012137415A (en) * | 2010-12-27 | 2012-07-19 | Jtekt Corp | Rotation angle detecting device |
JP2012149908A (en) * | 2011-01-17 | 2012-08-09 | Jtekt Corp | Rotation angle detection device |
JP2012237619A (en) * | 2011-05-11 | 2012-12-06 | Jtekt Corp | Rotational angle detector |
JP2013019802A (en) * | 2011-07-12 | 2013-01-31 | Jtekt Corp | Rotation angle detection apparatus |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7382295B2 (en) * | 2003-11-04 | 2008-06-03 | Nsk Ltd. | Control unit for electric power steering apparatus |
JP2008026297A (en) * | 2006-06-21 | 2008-02-07 | Nsk Ltd | Device for detecting rotation angle position |
JP2008045881A (en) * | 2006-08-10 | 2008-02-28 | Nsk Ltd | Rotation angle position detector |
JP5082481B2 (en) * | 2007-02-13 | 2012-11-28 | 日本精工株式会社 | Rotational angle position calculation device and motor |
DE102007008870A1 (en) * | 2007-02-21 | 2008-09-04 | Hl-Planar Technik Gmbh | Arrangement and method for the absolute determination of the linear position or the angular position expressed by an angle |
JP4330083B2 (en) * | 2007-05-18 | 2009-09-09 | 株式会社日本自動車部品総合研究所 | Rotation angle detector |
US8957675B2 (en) * | 2010-03-03 | 2015-02-17 | Jtekt Corporation | Rotation angle detection device |
JP5807770B2 (en) * | 2010-12-15 | 2015-11-10 | 株式会社ジェイテクト | Rotation angle detector |
JP5716954B2 (en) * | 2011-01-17 | 2015-05-13 | 株式会社ジェイテクト | Rotation angle detector |
JP2012189377A (en) * | 2011-03-09 | 2012-10-04 | Jtekt Corp | Rotation angle detection device |
-
2013
- 2013-05-10 JP JP2013100613A patent/JP2014219364A/en active Pending
- 2013-12-10 CN CN201310667521.8A patent/CN104142120A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010203960A (en) * | 2009-03-04 | 2010-09-16 | Jtekt Corp | Torque detection device, and electric power steering device using the same |
JP2011220848A (en) * | 2010-04-09 | 2011-11-04 | Jtekt Corp | Rotation angle detection device |
JP2012127910A (en) * | 2010-12-17 | 2012-07-05 | Jtekt Corp | Rotation angle detector |
JP2012137415A (en) * | 2010-12-27 | 2012-07-19 | Jtekt Corp | Rotation angle detecting device |
JP2012149908A (en) * | 2011-01-17 | 2012-08-09 | Jtekt Corp | Rotation angle detection device |
JP2012237619A (en) * | 2011-05-11 | 2012-12-06 | Jtekt Corp | Rotational angle detector |
JP2013019802A (en) * | 2011-07-12 | 2013-01-31 | Jtekt Corp | Rotation angle detection apparatus |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190040462A (en) * | 2017-10-10 | 2019-04-18 | 멜렉시스 테크놀로기스 에스에이 | Redundant Sensor Fault Detection |
KR102375412B1 (en) * | 2017-10-10 | 2022-03-16 | 멜렉시스 테크놀로기스 에스에이 | Redundant Sensor Fault Detection |
CN111721334A (en) * | 2019-03-20 | 2020-09-29 | Tdk株式会社 | Rotation angle detecting device |
Also Published As
Publication number | Publication date |
---|---|
CN104142120A (en) | 2014-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6024969B2 (en) | Rotation angle detection device and electric power steering device having the same | |
JP6086205B2 (en) | Phase difference detection device and rotation angle detection device including the same | |
JP5679136B2 (en) | Rotation angle detection device and electric power steering device provided with rotation angle detection device | |
JP6024971B2 (en) | Rotation angle detector | |
JP2014219364A (en) | Rotation angle detection apparatus | |
JP6024970B2 (en) | Rotation angle detection device and electric power steering device having the same | |
JP2018057084A (en) | Motor control device | |
JP2015229385A (en) | Electric power steering device | |
JP2014139054A (en) | Electric power steering system | |
JP2017229216A (en) | Motor control device | |
JP6202302B2 (en) | Rotation angle detector | |
JP2014142322A (en) | Rotation angle detection device | |
EP2743647B1 (en) | Rotation angle detection device | |
JP2016192882A (en) | Motor control device | |
JP6024976B2 (en) | Steering angle sensor reliability determination device | |
JP2019156110A (en) | Steering device for vehicle | |
JP2017083422A (en) | Rotation angle detection device | |
JP2019124670A (en) | Rotation angle detection device, motor control device, electric power steering device, and rotation angle detection method | |
JP2014178178A (en) | Magnetic shield member and torque detection apparatus | |
JP2019047534A (en) | Motor controller | |
JP2014174098A (en) | Torque detection device and electric power steering system using the same | |
JP2015077841A (en) | Electric power steering apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160418 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170309 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170906 |