ROTATION DETECTION DEVICE

The rotary recording device addresses the challenge of accurately calculating motor revolutions by using a sensor and control section to calculate an absolute angle, thereby reducing errors and ensuring reliable operation.

DE102019207576B4Active Publication Date: 2025-03-13DENSO CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
DE102019207576
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Priority Date
2018-05-30
Filing Date
2019-05-23
Publication Date
2025-03-13
Estimated Expiration
2039-05-23

AI Technical Summary

Technical Problem

Existing rotary recording devices and electrical power devices face challenges in accurately calculating the number of revolutions of a motor, leading to errors and deviations that affect the reliability of subsequent calculations.

Method used

A rotary recording device with a sensor section that captures motor rotation and outputs first and second rotation information, and a control section that includes a signal processing unit to calculate an absolute angle based on this information, allowing for accurate rotation size calculation even in defined areas where detection deviations do not occur.

Benefits of technology

The solution enables the rotary recording device to accurately calculate the absolute angle, reducing errors and deviations, and ensuring reliable operation even in abnormal conditions that might affect the motor's rotation count.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Rotation detection device comprising: a sensor section (130, 230) designed to detect the rotation of a motor (80) and to output first rotation information containing the rotation angle of the motor within one revolution of the motor, and second rotation information containing the number of revolutions of the motor; and a control section (170, 270) which contains: a signal acquisition device (171, 271) designed to acquire the first rotation information and the second rotation information from the sensor section; and an absolute angle calculator (172, 272) designed to calculate an absolute angle indicating a rotation quantity with respect to a reference position, based on the first rotation information and the second rotation information; wherein which divides one revolution of the motor into an unsafe area and a safe area, wherein the unsafe area is an area in which a detection deviation of the second rotation information occurs, and wherein the safe area is an area in which no detection deviation of the second rotation information occurs, The absolute angle calculator is also designed to calculate the absolute angle using the second rotation information from the safe area, and The second rotation information is a count value based on counting ranges into which a revolution of the motor is divided, with the count value being incremented or decremented in response to the rotation angle transition from one counting range to another based on a rotation direction of the motor.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] The present invention relates to a rotation detecting device and an electric power steering device using the rotation detecting device.

[0002] JP 5 958 572 B2 and the corresponding DE 10 2015 102 161 A1 describe a rotation angle detection device that detects information that varies with a rotation or rotation of an electric motor (hereinafter motor).The rotation detection device includes: a sensor section configured to detect rotation of a motor and output first rotation information including a rotation angle of the motor within one revolution of the motor and second rotation information including a number of revolutions of the motor; and a control section including: a signal obtaining device configured to obtain the first rotation information and the second rotation information from the sensor section; and an absolute angle calculator configured to calculate an absolute angle indicating a rotation amount with respect to a reference position based on the first rotation information and the second rotation information.

[0003] When calculating a value relating to the number of revolutions of a motor in the rotation calculation described in JP 5 958 572 B2 or DE 10 2015 102 161 A1, a rotation count value may be incremented and decremented by comparing the rotation of the motor with a threshold value. The rotation count value may contain errors and deviations, particularly when errors and deviations of the threshold value are present. As such, the calculated number of revolutions (i.e., the value relating to the number of revolutions) may not be usable in other calculations because the calculated number of revolutions may contain errors.

[0004] DE 10 2008 054 973 A1 discloses a revolution counter for determining the number of revolutions of a shaft, wherein angular ranges of the shaft are divided into alternating safe ranges and unsafe ranges, wherein the unsafe range is a range in which a detection deviation of the rotation information occurs, and wherein the safe range is a range in which no detection deviation of the rotation information occurs, and wherein the absolute angle is calculated using the rotation information from the safe range.

[0005] JP H02 - 161 359 A discloses a speed detector that uses magnetic bubbles to detect the speed of a rotation axis and divides the rotation angle into safe and unsafe ranges.

[0006] The object of the invention is to provide a rotation detection device and an electric power steering device using the rotation detection device, which can recover from an abnormality affecting the rotation detection device. This object is achieved by a rotation detection device having the features of claim 1 and by an electric power steering device having the features of claim 7. The dependent claims are directed to advantageous developments of the invention.

[0007] According to one aspect of the present invention, a rotation detection device includes a sensor section and a control section. The sensor section detects rotation of a motor and outputs (i) first rotation information regarding a rotation angle of the motor within one rotation of the motor and (ii) second rotation information regarding the number of revolutions of the motor.

[0008] The control section includes a signal acquisition device and an absolute angle calculator. The signal acquisition device acquires the first rotation information and the second rotation information from the sensor section. The absolute angle calculator calculates an absolute angle based on the first rotation information and the second rotation information, wherein the absolute angle is a rotation quantity relative to a reference position. Within one rotation of the motor, there is an undefined range in which a detection error of the second rotation information (i.e., an error in the number of revolutions) may occur, and a defined range in which the detection error does not occur. The absolute angle calculator can calculate the absolute angle using the second rotation information in the defined range.In this way, the absolute angle calculator can calculate the absolute angle appropriately.

[0009] Objects, features, and advantages of the present invention will become apparent from the following detailed description with reference to the accompanying drawings. Fig. 1 shows a schematic configuration of a steering system according to a first embodiment; Fig. 2 is a cross-sectional view of a drive device of the first embodiment; Fig. 3 a cross-sectional view of the drive device along the line III-III of Fig. 2; Fig. 4 is a block diagram of an electronic control unit (ECU) of the first embodiment; Fig. 5 is a block diagram of a control section of the first embodiment; Fig. 6 areas in one revolution of a motor of the first embodiment; Fig. 7 is a circuit diagram showing a rotation counting unit of the first embodiment; Fig. 8 is a timing chart showing a sensor signal, an absolute angle, a determination range, a comparison signal, and a count value of the first embodiment; Fig. 9 is a timing chart showing the sensor signal, the comparison signal and the count value of the first embodiment; Fig. 10 is a timing chart showing an electrical angle and the absolute angle of the first embodiment; Fig. 11 defined or safe areas and undefined or unsafe areas of the first embodiment; Fig. 12 is a flowchart showing an absolute angle calculation process of the first embodiment; Fig. 13 is a flowchart showing an absolute angle calculation process according to a second embodiment; Fig. 14 is a flowchart showing an absolute angle calculation process according to a third embodiment; Fig. 15 safe areas and unsafe areas according to a fourth embodiment; Fig. 16 is a timing chart showing a sensor signal, an absolute angle, a determination range, a comparison signal, and a count value of the fourth embodiment; Fig. 17 safe areas and unsafe areas of the fourth embodiment; Fig. 18 is a flowchart showing an absolute angle calculation process of the fourth embodiment; Fig. 19 is a flowchart showing an absolute angle calculation process according to a fifth embodiment; Fig. 20 is a flowchart showing an absolute angle calculation process according to a sixth embodiment; Fig. 21 is a block diagram of a control section according to a seventh embodiment; Fig. 22 is a flowchart showing an absolute angle calculation process of the seventh embodiment; Fig. 23 shows a relationship between a count value and the number of revolutions of the seventh embodiment; Fig. 24 is a flowchart showing an absolute angle calculation process according to an eighth embodiment; Fig. 25 is a flowchart showing an absolute angle calculation process according to a ninth embodiment; Fig. 26 shows an initial position difference between different systems according to a tenth embodiment; and Fig. 27 is a block diagram of a control section of the tenth embodiment. (First embodiment)

[0010] A rotation detection device and an electric power steering device using such a rotation detection device will be described below with reference to the drawings. In the following embodiments, like features and elements in the embodiments may be denoted by the same reference numerals, and repeated descriptions of previously described like features and elements may be omitted from the description of the other embodiments.

[0011] In Fig. 1, an electronic control unit (ECU) 10 is configured as a rotation detection device according to the first embodiment. The ECU 10 includes an electric motor 80 as part of an electric power steering device 8 for assisting a steering operation of a vehicle. The motor 80 may also be referred to as an electric rotary machine. Fig. 1 shows an overall configuration of a steering system 90 including the electric power steering device 8. The steering system 90 includes a steering wheel 91, a steering shaft 92, a gear train 96, a rack 97, road wheels 98, and an electric power steering device 8.

[0012] The steering wheel 91 is arranged at one end of the steering shaft 92 and connected to the steering shaft 92. A torque sensor 94 is arranged on the steering shaft 92 to detect a steering torque Ts. The torque sensor 94 includes a first torque detector 194 and a second torque detector 294. The gear train 96 is arranged at the lower end of the steering shaft 92. The gear train 96 meshes with the rack 97. Road wheels 98 are coupled to both ends of the rack 97 via a mechanical link such as tie rods.

[0013] When a driver of the vehicle turns the steering wheel 91, the steering shaft 92, which is connected to the steering wheel 91, rotates. The gear train 96 converts the rotational movement of the steering shaft 92 into a linear movement to move the rack 97 linearly. The road wheels 98 are steered at an angle corresponding to the displacement of the rack 97.

[0014] The electric power steering device 8 includes a drive device 40 including the motor 80, the ECU 10, and a reduction gear 89. The reduction gear 89 is a drive train mechanism that reduces the speed of the motor 80 and transmits the rotation to the steering shaft 92. The electric power steering device 8 of the present embodiment is a column-assist type power steering device. However, the electric power steering device 8 is not limited to a column-assist type, but may alternatively be a rack-assist type electric power steering device 8 that transmits the rotation of the motor 80 to the rack 97.

[0015] The motor 80 outputs an assist torque to assist a steering operation. In other words, the motor 80 can provide either full or partial assistance to assist a vehicle user in turning the steering shaft 92 to steer the road wheels 98.

[0016] The engine 80 is more precisely in the Fig. 2 and Fig. 3. The motor 80 is driven by electric power supplied by batteries 191 and 291 located in Fig. 4, is supplied as DC power. The drive of the motor 80 in the forward and reverse directions causes the reduction gear 89, which is in Fig. 1, in the forward or reverse direction. The motor 80 is a brushless three-phase motor and has a rotor 860 and a stator 840, as shown in Fig. 2 is shown.

[0017] The motor 80 includes a first motor winding 180 as a first winding set and a second motor winding 280 as a second winding set. The motor windings 180 and 280 have the same electrical characteristics. For example, the motor windings 180 and 280 are wound together around the stator 840 so that the phases of the winding 180 are shifted by an electrical angle of 30 degrees with respect to the corresponding phases of the winding 280. The phase currents (for example, the U-phase, the V-phase, and the W-phase) are controlled to be supplied to the motor windings 180 and 280 such that the corresponding phase currents of the motor windings 180 and 280 have a phase difference φ of 30 degrees from each other. By optimizing the supply current phase difference, the output torque is improved and the torque ripple of the sixth-order harmonic can be reduced.Applying current with a phase difference φ of 30 degrees between the corresponding phases of motor windings 180 and 280 also averages the current, thereby advantageously maximizing the cancellation of noise and vibration. Since heat generation is also averaged, it is also possible to reduce errors in the torque value detection of torque sensors 194 and 294, since the detected torque values ​​may vary with temperature.

[0018] The Fig. The combination of a first driver circuit 120, a first sensor section 130, and a first control section 170, among other elements, shown in Figure 4, may also be referred to as a first system L1. The first system L1 is used to control the drive of the first motor winding 180 (for example, by controlling the power supplied to the first motor winding 180). The combination of a second driver circuit 220, a second sensor section 230, and a second control section 270, among other elements, may also be referred to as a second system L2. The second system L2 is used to control the drive of the second motor winding 280.Elements, components, and features included in the first system L1 may be designated by reference numerals based on 100 (e.g., 120, 170), and the elements, components, and features included in the second system L2 may be designated by reference numerals based on 200. Identical elements and features in the first system L1 and the second system L2 may be indicated by at least the last two digits. For example, the first control section 170 may be similar to the second control section 270 (e.g., the control sections 170 and 270 are similar components), with the reference numerals for the respective control sections 170 and 270 each including "70" as the last digits, with the prefix "1" (i.e.,The prefix "2" (the first digit) for the first control section 170 indicates that the first control section 170 is included in the first system L1, and the prefix "2" indicates that the second control section 270 is included in the second system L2. The descriptions of the first control section 170 and the second control section 270 may be similar to each other, and in such a case, a redundant description of like elements, components, and features may be omitted.

[0019] The drive device 40 may integrate the ECU 10 and the motor 80 within a single housing. The drive device 40 may be referred to as a machine-electronics integration type drive device 40. As described in Fig. 2, the ECU 10 may be arranged coaxially with the motor 80 at one end of the motor 80 along the longitudinal axis Ax (i.e., at one axial end of the motor 80). Alternatively, the motor 80 and the ECU 10 may be arranged separately. The ECU 10 is arranged on the side opposite the output of a shaft 870. Alternatively, the ECU 10 may be arranged on the shaft output side of the motor 80. By employing the machine-electronics integration type configuration, the drive device 40 including the ECU 10 and the motor 80 can be installed in more restricted spaces (i.e., smaller, narrower spaces) in the vehicle.

[0020] The motor 80 includes the stator 840, the rotor 860, and a housing 830, with the stator 840 and the rotor 860 housed within the housing 830. The stator 840 is fixed to the housing 830, and the motor windings 180 and 280 are wound around the stator 840. The rotor 860 is disposed within the stator 840. In other words, the stator 840 can surround the rotor 860. The rotor 860 can rotate relative to the stator 840.

[0021] The shaft 870 is attached to the rotor 860 to rotate integrally with the rotor 860. The shaft 870 is rotatably supported by the housing 830 through bearings 835 and 836. The end portion of the shaft 870 on the ECU 10 side protrudes from the housing 830 toward the ECU 10. A magnet 875 is included at the axial end of the shaft 870 on the ECU 10 side.

[0022] The housing 830 includes a cylindrical container 834 with a rear frame end 837 that closes the side of the housing 834 near the ECU 10. A front frame end 838 is attached to the open side of the container 834 to close the side of the container 834 near the output of the shaft 870. The container 834 and the front frame end 838 are fastened together by screws or similar fasteners (not shown). Lead wire insertion holes 839 are formed in the rear frame end 837. Lead wires 185 and 285, which are connected to a respective phase of the motor windings 180 and 280, are inserted through the lead wire insertion holes 839. The lead wires 185 and 285 pass through the lead wire insertion holes 839 toward the ECU 10 and are connected to a circuit board 470.

[0023] The ECU 10 includes a cover 460, a heat sink 465, the circuit board 470, and other electronic components mounted on the circuit board 470. The heat sink 465 may be fixed to the cover 460, and the circuit board 470 may be fixed to the heat sink 465.

[0024] The cover 460 protects the electronic components of the ECU 10 from external impacts and prevents dust and water from entering the interior of the ECU 10. The cover 460 integrally includes a cover main body 461 and a connector element 462. The connector element 462 and the cover main body 461 do not have to be integral and may alternatively be formed as two separate structural elements 461 and 462. The terminals 463 of the connector element 462 are connected to the circuit board 470 via wiring or similar electrical conductors (not shown). The number of connector elements 462 and the number of terminals may correspond to the number of electrical inputs and outputs (i.e., power, signals) to and from the ECU 10, as well as based on other design factors. The connector element 462 is disposed at an axial end of the drive device 40 on the side opposite the motor 80.The connector element 462 extends axially in the direction of the axis Ax away from the drive device 40 and is open to allow connection of an external connector (not shown) to the connector element 462.

[0025] The circuit board 470 is, for example, a printed circuit board and is arranged such that one side faces the rear frame end 837 in the direction of the motor 80 and another side faces away from the motor 80 in the direction of the cover 460. The electronic components of the first and second systems L1 and L2, which are Fig. 4 are mounted independently on the circuit board 470, so that the two systems are arranged in a fully redundant configuration. In the present embodiment, the electronic components of the first and second systems L1 and L2 are mounted on the circuit board 470, but the electronic components of the first and second systems L1 and L2 may alternatively be mounted on separate circuit boards. Not all electronic components of the first and second systems L1 and L2 need to be mounted on the circuit board, and the Fig. 2 and Fig. 3 not all electronic components used in Fig. 4 as being located on circuit board 470. The electronic components of the first and second systems L1 and L2 on circuit board 470 are described in more detail below.

[0026] Of the two main surfaces of the circuit board 470, the surface on the side of the motor 80 is referred to as a motor-side surface 471, and the other surface facing the cover 460 is referred to as a cover-side surface 472. As shown in Fig. 3, switching elements 121, switching elements 221, a rotation angle sensor 30, and customized integrated circuits (ICs) 159 and 259 are mounted on the motor-side surface 471. The rotation angle sensor 30 is mounted at a position facing the magnet 875 so that it is capable of detecting a change in the magnetic field caused by a rotation of the magnet 875. The rotation angle sensor 30 may be arranged centrally on the motor-side surface 471 of the circuit board 470, as shown in Fig. 3, so that the rotation angle sensor is arranged, for example, along the axis Ax coaxial with the shaft 870 and thus with the magnet 875, as shown in Fig. 2. The rotation angle sensor 30 may also be referred to as sensor section 30.

[0027] The switching elements 121 may form part of the first driver circuit 120, which in Fig. 4 (for example, inverter 1). The switching elements 221 may form part of the second driver circuit 220 shown in Fig. 4 (for example inverter 2).

[0028] Capacitors 128 and 228, coils 129 and 229 and control sections 170 and 270 are mounted on the cover side surface 472.

[0029] Small computers such as microcontrollers or systems on a chip (SoCs) may form the control sections 170 and 270, with respective separate computers forming the respective control sections 170 and 270. In other words, the control section 170 may be a microcontroller or SoC, and the control section 270 may be another microcontroller or SoC. Fig. 3, reference numerals 170 and 270 are assigned to the computers that are part of the control sections 170 and 270, respectively.

[0030] The capacitors 128 and 228 smooth respective electrical power from the batteries 191 and 291, which are in Fig. 4. Capacitors 128 and 228 also support the supply of electrical power to motor 80 by storing electrical charges. Capacitors 128 and 228 and coils 129 and 229 may be configured to form a filter circuit. For example, capacitor 128 and coil 129 may be combined to form an LC filter for first system L1. Capacitor 228 and coil 229 may be combined to form an LC filter for second system L2. The filter circuits reduce noise transmitted from other devices that also use batteries 191 and 291 and also reduce noise transmitted from drive device 40 to other devices that also use batteries 191 and 291.

[0031] Power supply relays, motor relays, and current sensors (all not shown in the drawings) may also be mounted on either the motor-side surface 471 or the cover-side surface 472.

[0032] As it is in Fig. 4, the ECU 10 includes the driver circuits 120 and 220 and the control circuits 170 and 270. In Fig. 4, the driver circuit is labeled "INV" (Inverter). The first driver circuit 120 is a three-phase inverter having six switching elements 121. The first driver circuit 120 converts the electric power supplied to the motor winding 180 (for example, converts the direct current (DC) power from the battery 191 into alternating current (AC) power). The switching elements 121 are turned on and off based on control signals from the first control section 170. The second driver circuit 220 is a three-phase inverter having six switching elements 221. The second driver circuit 220 converts the electric power supplied to the second motor winding 280. The switching elements 221 are turned on and off based on control signals from the second control section 270.

[0033] As it is in Fig. As shown in Fig. 4, the rotation angle sensor 30 includes the first sensor section 130 and the second sensor section 230. The first sensor section 130 outputs an output signal SGN1 to the first control section 170, and the second sensor section 230 outputs an output signal SGN2 to the second control section 270. That is, in the present embodiment, the first sensor section 130 is included in the first system L1, and the second sensor section 230 is included in the second system L2.

[0034] Unless otherwise described, the configurations of components and elements in the ECU 10, the rotation angle sensor 30, and the drive device 40 described in the present embodiment may be the same or substantially similar in the later embodiments.

[0035] The first sensor section 130 includes magnetic field detection units 131 and 132 and a signal processing unit 140. The second sensor section 230 includes magnetic field detection units 231 and 232 and a signal processing unit 240. Since the processes performed by the sensor sections 130 and 230 are the same, the description focuses on the details of the process performed by the first sensor section 130, and a similar description of the second sensor section 230 is omitted.

[0036] The magnetic field detection units 131, 132, 231, and 232 are detection elements that detect changes in the magnetic field of the magnet 875 based on the rotation of the motor 80 (for example, via the rotation of the rotor 860 and the shaft 870). A magnetoresistive (MR) sensor or a Hall sensor, for example, can be used as the respective magnetic field detection units 131, 132, 231, and 232. The magnetic field detection units 131, 132, 231, and 232 each have four sensor elements that output a "cos+" signal, a "sin+" signal, a "cos-" signal, and a "sin-" signal. The "cos+" signal, the "sin+" signal, the "cos-" signal, and the "sin-" signal can refer to the sensor signal either jointly or individually. Similarly, the sensor signal may refer to any or all of the “cos +” signal, the “sin +” signal, the “cos -” signal, and the “sin -” signal.

[0037] The signal processing unit 140 includes rotation angle calculators 141 and 142, a rotation counting unit 143, a self-diagnosis unit 145, and a communicator 146. The signal processing unit 240 includes rotation angle calculators 241 and 242, a rotation counting unit 243, a self-diagnosis unit 245, and a communicator 246.

[0038] The rotation angle calculator 141 calculates a mechanical angle θm1c based on the sensor signal from the magnetic field detection unit 131. The rotation angle calculator 142 calculates a mechanical angle θm1e based on the sensor signal from the magnetic field detection unit 132. The rotation angle calculator 241 calculates a mechanical angle θm2c based on the sensor signal from the magnetic field detection unit 231. The rotation angle calculator 242 calculates a mechanical angle θm2e based on the sensor signal from the magnetic field detection unit 232. The mechanical angles θm1c, θm1e, θm2c, and θm2e are calculated from the arctan of the "cos +" signal, the "sin +" signal, the "cos -" signal, and the "sin -" signal.

[0039] In the present embodiment, the mechanical angles θm1c and θm2c are calculated based on the detection signals (i.e., sensor signals) from the magnetic field detection units 131 and 231, respectively, and used for various calculations in the control sections 170 and 270. The calculated mechanical angles θm1e and θm2e are calculated based on the detection signals (i.e., sensor signals) from the magnetic field detection units 132 and 232, respectively, and used to detect abnormalities by comparing the mechanical angles θm1e and θm2e with the respective mechanical angles θm1c and θm2c. The magnetic field detection units 131 and 231 can be used for control and are designed “for control”, and the magnetic field detection units 132 and 232 can be used for abnormality detection and are designed “for abnormality detection”.Values ​​calculated by the rotation angle calculators 141, 142, 241 and 242 can be any values ​​that can be converted into mechanical angles.

[0040] The magnetic field detection units 131 and 231 for control and the magnetic field detection units 132 and 232 for abnormality detection may be the same type of magnetic field detection unit or different types. Since the magnetic field detection accuracy for abnormality detection may be significantly lower than the magnetic field detection accuracy for control, the detection accuracy of the magnetic field detection units 132 and 232 used for abnormality detection may be lower than the detection accuracy of the magnetic field detection units 131 and 231 used for control. By using different types of magnetic field detection devices for control and abnormality detection, the probability of the magnetic field detection units malfunctioning at the same time is reduced.If the same magnetic field sensing elements are used for the magnetic field sensing units 131, 132, 231, and 232, it may be possible to vary the layout and configuration of the magnetic field sensing units or to select sensing elements from different production batches to reduce the possibility of simultaneous malfunctions. The computing circuits of the rotation angle calculators 141, 142, 241, and 242 can be varied in a similar manner to reduce the likelihood of simultaneous circuit malfunctions.

[0041] The rotation counting unit 143 calculates a count value TC1 based on the signal from the magnetic field detecting unit 131. The rotation counting unit 243 calculates a count value TC2 based on the signal from the magnetic field detecting unit 231.

[0042] As it is in Fig. As shown in Figure 6, the mechanical angle θm assumes a value from 0° to 360° during one rotation of the motor 80, and four counting ranges are set. The position at which the mechanical angle θm changes from 360° to 0° is set as a rotation angle change position. In the drawings, the rotation angle change position is shown as 0°, and the notation "360°" is omitted. In the present embodiment, the mechanical angle θm that is equal to or greater than 0° and less than 90° is referred to as “range R0”, the mechanical angle θm that is equal to or greater than 90° and less than 180° is referred to as “range R1”, the mechanical angle θm that is equal to or greater than 180° and less than 270° is referred to as “range R2”, and the mechanical angle θm that is equal to or greater than 270° and less than 360° is referred to as “range R3”.Each time the mechanical angle θm changes from one range to another, the count values ​​TC1 and TC2 are either upcounted or downcounted based on the rotation direction. In the present embodiment, the count values ​​TC1 and TC2 are upcounted when the motor 80 rotates in a forward direction and are downcounted when the motor 80 rotates in a reverse direction. That is, when the motor 80 makes one revolution in the forward direction, for example, from 0° to 360°, the count values ​​TC1 and TC2 are each upcounted and increased by 4. When the motor 80 makes one revolution in the reverse direction, for example, from 360° to 0°, the count values ​​TC1 and TC2 are each downcounted and decreased by 4.

[0043] As it is in Fig. As shown in Figure 4, the self-diagnosis unit 145 monitors for abnormalities such as short circuits in the power sources or ground faults in the first sensor section 130. The communicator 146 generates a first output signal SGN1 and transmits the first output signal SGN1 to the first control section 170. The first output signal SGN1 includes various signals such as the mechanical angles θm1c and θm1e, the count value TC1, and the self-diagnosis result. The first output signal SGN1 may include additional signals. The self-diagnosis unit 145 monitors for abnormalities in the second sensor section 230. The communicator 246 generates the second output signal SGN2 and transmits the second output signal SGN2 to the second control section 270. The second output signal SGN2 includes various signals such as the mechanical angles θm2c and θm2e, the count value TC2, and the self-diagnosis result.The second output signal SGN2 may include additional signals. The output signal of the present embodiment is a digital signal, and the communication method may use, for example, a serial interface (SPI) communication specification, but other communication methods may also be used.

[0044] Electrical power is supplied to the first sensor section 130 from the first battery 191 via power supplies 192 and 193. The power supplies 192 and 193 may be regulators or similar controllers. Electrical power is constantly supplied to the magnetic field detection unit 131 and the rotation counting unit 143 via the power supply 192. The magnetic field detection unit 131 and the rotation counting unit 143 are surrounded by a dashed line to indicate that these components constantly receive power from the power source 192 and constantly receive power for continuous detection and calculation even when the vehicle ignition switch is turned off. In the first sensor section 130, components other than the magnetic field detection unit 131 and the rotation counting unit 143 receive electrical power via the power supply 193 when the vehicle ignition switch (not shown) is turned on.When the ignition switch is turned off, the power supply to these components is stopped. Furthermore, when the ignition switch is turned on, electrical power is supplied to the first control section 170 via the power supply 193. The vehicle ignition switch may also be referred to as a start switch.

[0045] Electric power is supplied to the second sensor section 230 from the second battery 291 via the power supplies 292 and 293. Electric power is constantly supplied to the magnetic field detection unit 231 and the rotation counting unit 243 via the power supply 292. The magnetic field detection unit 231 and the rotation counting unit 243 are surrounded by a dashed line to indicate that these components constantly receive power from the power source 292 and constantly receive power for continuous detection and calculation even when the vehicle ignition switch is turned off. In the second sensor section 230, components other than the magnetic field detection unit 231 and the rotation counting unit 243 receive electric power via the power supply 293 when the vehicle ignition switch is turned on. When the ignition switch is turned off, the power supply to these components stops.In addition, electric power is supplied to the second control section 270 via the power supply 293 when the ignition switch is turned on.

[0046] A low-power element such as a tunneling magnetoresistive element (TMR) may be used for the respective magnetic field sensing units 131 and 231, which continuously receive power. To simplify the description, detailed descriptions of some supply and control lines, such as the connection line between the battery 191 and the power supply 193, may be omitted. The description may similarly omit a detailed description of electrical connections between electrical components with reference to other figures.

[0047] Alternatively, the rotation counting units 143 and 243 may calculate the count values ​​TC1 and TC2 based on the signals from the magnetic field detecting units 132 and 232, rather than using the signals from the magnetic field detecting units 131 and 231 themselves. In this case, electrical power may be continuously supplied to the magnetic field detecting units 132 and 232.

[0048] As described above, each of the control sections 170 and 270 may be a small computer such as a microcontroller or an SoC, including, for example, one or more CPUs or similar processor cores, a memory such as read-only memory (ROM), random access memory (RAM), or flash memory, input / output (I / O) interfaces, and a bus line for connecting these components. The processes executed by the control sections 170 and 270 may be implemented as a software process, a hardware process, or a combination of software and hardware. The software process may be implemented by causing the CPU to execute a program or instruction set stored in a memory. The program may be previously stored in a memory such as the ROM. The memory for storing the programThe instruction set is a computer-readable non-transitory tangible storage medium. The hardware process may be implemented by a special dedicated electronic circuit. In addition to the computers that form the control sections 170 and 270, the control sections 170 and 270 may include other hardware components that form specialized circuits for performing the processes associated with the control sections 170 and 270. Such circuits may be, for example, analog circuit components, digital circuit components, logic circuit components, or a combination of these circuit components configured to perform the processes associated with the control sections 170 and 270.According to another example, the control sections 170 and 270 may include one or more specialized circuits, such as application-specific integrated circuits (ASICs) or field-programmable gate arrays (FPGAs), configured to perform the processes associated with the control sections 170 and 270.

[0049] The first control section 170 and the second control section 270 are configured to communicate with each other. The communication between the control sections 170 and 270 may be referred to as "intercomputer communication." Any communication method, such as serial communication such as SPI or SENT, CAN communication, FlexRay communication, or the like, may be used for intercomputer communication between the control sections 170 and 270.

[0050] The first control section 170 generates control signals for controlling the turning on and off of the switching elements 121 in the driver circuit 120 for current feedback control. The control signals for current feedback control can be based, for example, on the mechanical angle θm1c, the detection values ​​of the current sensor (not shown), or other sensor signals. The second control section 270 generates control signals for controlling the turning on and off of the switching elements 221 in the driver circuit 220 for current feedback control. The control signals for current feedback control can be based, for example, on the mechanical angle θm2c, the detection values ​​of the current sensor (not shown), or other sensor signals. When the mechanical angles are used for current feedback control, the mechanical angles θm1c and θm2c are converted into electrical angles.

[0051] As it is in Fig. 5, the first control section 170 includes a signal acquisition unit 171, an absolute angle calculator 172, an abnormality determiner 175, and a communicator 179. The second control section 270 includes a signal acquisition unit 271, an absolute angle calculator 272, an abnormality determiner 275, and a communicator 279.

[0052] As described above, the first control section 170 and the second control section 270 may be microcontrollers, SoCs, or similar computers. The first control section 170 and the second control section 270 may also include specialized circuits such as ASICs or FPGAs. The elements of the signal acquisition unit 171, the absolute angle calculator 172, the abnormality determiner 175, and the communicator 179 in the first control section 170 may be implemented as specialized hardware circuits (e.g., ASICs, FPGAs) configured to perform the processes associated with the respective elements. Alternatively, the processes associated with the respective elements may be performed by the control section 170 as a microcontroller, wherein the signal acquisition unit 171, the absolute angle calculator 172, the abnormality determiner 175, and the communicator 179 implemented in Fig. 5 represent functional blocks or processes performed by the control section 170.

[0053] The same hardware / software implementation applies to the elements of the signal acquisition unit 271, the absolute angle calculator 272, the abnormality determiner 275, and the communicator 279 of the second control section 270. That is, the elements of the second control section may be implemented as specialized hardware circuits or may represent functional blocks of processes performed by the second control section 270 when these elements are implemented as software, hardware, or a software / hardware combination.

[0054] The signal acquisition unit 171 acquires the first output signal SGN1 from the first sensor section 130. The signal acquisition unit 271 acquires the second output signal SGN2 from the second sensor section 230. The absolute angle calculator 172 calculates the absolute angle θa1 using the mechanical angle θm1c and the count value TC1. The absolute angle calculator 272 calculates the absolute angle θa2 using the mechanical angle θm2c and the count value TC2. The absolute angles θa1 and θa2 are each an amount of rotation with respect to the reference position. The absolute angles θa1 and θa2 can be converted into a steering angle θs, which is the rotation angle of the steering shaft 92, using the gear ratio of the reduction gear 89. The absolute angles θa1 and θa2 can also be used for calculations other than the steering angle.The communicators 179 and 279 mutually transmit the absolute angles θa1 and θa2 as angle information (ie, a common communication between the communicators 179 and 279).

[0055] The abnormality determiner 175 can determine abnormalities in the first system L1 based on the comparison result of the mechanical angles θm1c and θm1e and the self-diagnosis result obtained by the first sensor section 130. The abnormality determiner 175 can also determine abnormalities in the first system L1 by comparing the absolute angles θa1 and θa2. The abnormality determiner 275 can also determine abnormalities in the second system L2 based on the comparison result of the mechanical angles θm2c and θm2e and the self-diagnosis result obtained by the second sensor section 230. The abnormality determiner 275 can also determine abnormalities by comparing the absolute angles θa1 and θa2. When an abnormality is determined, the calculation of the absolute angles θa1 and θa2 is stopped.

[0056] In the present embodiment, if one of the first and second systems L1, L2 is normal, the normal system continues calculating the absolute angle. If an abnormality determination is made by comparing the absolute angles θa1 and θa2, the calculation of the absolute angles θa1 and θa2 is stopped. Unless otherwise described, for example, if it is described that the first system has an abnormality, the description assumes that the first system L1 and the second system L2 are both normal.

[0057] In the present embodiment, the same calculations are performed in the systems L1 and L2. When describing the calculations of the two systems, calculation references "1" and "2" may be used in the calculation symbols or notations to distinguish between the first system L1 and the second system L2, respectively. As described above, the mechanical angles for control θm1c and θm2c may be used for various other calculations. In the description of the various other calculations, the subscript "c" indicating "for control" may be omitted. The same applies to the embodiments described later.

[0058] As it is in Fig. 7, the rotation counting unit 143 includes the comparators 151, 152, 153 and 154 (ie, 151 - 154).

[0059] In the comparator 151, the "cos+" signal is input to a non-inverting terminal, and a threshold value TH is input to an inverting terminal. The comparator 151 outputs a Lo or Hi, i.e., a low or high, "cos+" comparison signal (i.e., outputs either a low-level or high-level "cos+" comparison signal). That is, when the "cos+" signal is greater than the threshold value TH, the comparator 151 outputs a Hi-level "cos+" comparison signal, and when the "cos+" signal is less than the threshold value TH, the comparator 151 outputs a Lo-level "cos+" comparison signal.

[0060] In comparator 152, the "sin+" signal is input to a non-inverting terminal, and a threshold value TH is input to an inverting terminal. Comparator 152 outputs a low or high "sin+" comparison signal. That is, when the "sin+" signal is greater than the threshold value TH, comparator 152 outputs a "sin+" comparison signal of a Hi level (high level), and when the "sin+" signal is less than the threshold value TH, comparator 152 outputs a "sin+" comparison signal of a Lo level (low level).

[0061] In comparator 153, the "cos -" signal is input to a non-inverting terminal, and a threshold value TH is input to an inverting terminal. Comparator 153 outputs a low or high "cos -" comparison signal. That is, when the "cos -" signal is greater than the threshold value TH, comparator 153 outputs a "cos -" comparison signal of a high level, and when the "cos -" signal is less than the threshold value TH, comparator 153 outputs a "cos -" comparison signal of a low level.

[0062] In comparator 154, the "sin -" signal is input to a non-inverting terminal, and a threshold value TH is input to an inverting terminal. Comparator 154 outputs a low or high "sin -" comparison signal. That is, when the "sin -" signal is greater than the threshold value TH, comparator 154 outputs a high-level "sin -" comparison signal, and when the "sin -" signal is less than the threshold value TH, comparator 154 outputs a low-level "sin -" comparison signal.

[0063] The threshold values ​​TH input to the comparators 151-154 can be arbitrarily set. The count value TC can be calculated by methods other than (i) a comparison between the "cos +" signal, the "sin +" signal, the "cos -" signal, and the "sin -" signal as output signals, or (ii) a threshold comparison using a logical operation of the "cos +" signal, the "sin +" signal, the "cos -" signal, and the "sin -" signal as output signals.

[0064] In the drawings, the “cos +” comparison signal is denoted as cos+_comp, the “sin +” comparison signal is denoted as sin+_comp, the “cos -” comparison signal is denoted as cos-_comp, and the “sin -” comparison signal is denoted as sin-_comp.

[0065] The rotation counting unit 243 in the second system L2 is designed similarly to the rotation counting unit 143 of the first system L1 described above and in Fig. 7. Therefore, a description of the rotation counting unit 243, which corresponds to the description of the rotation counting unit 143, and the illustration of the comparators in the rotation counting unit 243 are omitted.

[0066] Fig. 8 represents, in order from top to bottom, the sensor signal and the absolute angle θa, a determination range, the comparison signal and the count value TC.

[0067] As it is in Fig. As shown in Fig. 8, according to the present embodiment, when the respective comparison signal of the comparators 151-154 falls from the Hi level to the Lo level, the count value TC1 is counted up (i.e., incremented) when the motor 80 rotates in the forward direction and counted down (i.e., decremented) when the motor 80 rotates in the reverse direction. The direction of rotation should be determined separately.

[0068] As it is in Fig. 9, for example, the count value TC can be counted up or down when the respective comparison signal of the comparators 151 - 154 increases. Fig. 9 shows, in order from top to bottom, the sensor output, the comparison signal, and the count value TC. Although the following description focuses primarily on the forward rotation of the motor 80 (i.e., the motor 80 rotates in the forward direction), it is understood that the following description can also be used for the motor when it rotates in the reverse direction, in which case calculations and processes for the forward direction are logically reversed or negated to achieve similar results for the reverse direction.

[0069] The absolute angle θa will now be described. In the present embodiment, the count value TC and the mechanical angle θm are used to calculate the absolute angle θa. The absolute angle θa is an angle through which the motor 80 rotates with respect to a specific reference point or position. At time t1, which is Fig. For example, as shown in Figure 10, assuming a reference point of 0°, the absolute angle θa is 870° when the mechanical angle θm is 150°. The absolute angle θa is 870° because the motor 80 has already rotated twice (i.e., by 720°) with respect to the reference point of 0°. The reference point may be a point other than 0°. The absolute angle θa can be calculated using the following equation (1-1) or the following equation (2-1). For calculation using equation (1-1) or equation (2-1), the example assumes a count value TC of 9 and a mechanical angle θm of 150°. θa=TC×90°+MOD(θm,90°)

[0070] In equation (1-1), MOD(θm, 90°) (where MOD is a modulus operation) means determining a remainder by dividing the mechanical angle θm by 90°. In this case, the remainder is equal to 60°, so MOD(150°, 90°) is equal to 60°. Equation (1-1) can be described in such a way that, based on the count value TC, it is calculated how many revolutions have already been made by determining in which of the four ranges (as it is, for example, in Fig. 6) to determine where the rotation position is currently located. More specifically, equation (1-1) calculates where the rotation position is in this range based on the mechanical angle θm. θa=DIV(TC / 4)×360°+θm

[0071] DIV(TC / 4) in equation (2-1) (where DIV is an integer division operation) means a quotient obtained by dividing the count value TC by 4. In this example, where the count value TC is 9, DIV(9 / 4) would be equal to 2.

[0072] Equation (2-1) determines the number of revolutions the motor has rotated based on the count value TC, and then further determines the current rotation position based on the mechanical angle θm with respect to the reference point. As described above, the calculation results of equations (1-1) and (2-1) are the same. That is, either equation (1-1) or equation (2-1) can be used to calculate the absolute angle θa.

[0073] A mechanical post-displacement angle θms, described in more detail below, can be used instead of the mechanical angle θm in equations (1-1) and (2-1) where appropriate.

[0074] During counting of the count value TC, the count value TC may deviate from the true or actual count value TC due to deviations of the threshold value TH or due to sensor signal errors. As described in Fig. As shown in Figure 11, uncertain ranges “Ri” can be determined as ranges in which the counting up or counting down of the count value can be performed. The uncertain range Ri is a range in which the count value TC may deviate from an actual, true value depending on whether the counting up or counting down of the count value TC has already occurred. The safe ranges “Rd” (e.g., Rd0, Rd1) are ranges in which the count value TC can be definitely determined, and the counting up or counting down of the count value is not performed. The safe ranges Rd and the uncertain ranges Ri can be determined, for example, based on the threshold values ​​and detection errors. In the example of the comparison signals of the comparators 151-154 shown in Fig. 8, the uncertain range Ri may range from the falling edge of a detection signal to the next rising edge of the detection signal (i.e., the range between the falling edge and the rising edge of a detection signal). When the count value TC is counted by comparing it with the threshold value TH of the sensor signal, the ranges containing the mechanical angles θm of 0°, 90°, 180°, or 270° are the uncertain ranges Ri, as shown in Fig. 11 is shown. In Fig. In Figure 11, the unsafe areas Ri are shown with dotted hatching. The safe area within area R0 is designated as Rd0, the safe area within area R1 is designated as Rd1, the safe area within area R2 is designated as Rd2, and the safe area within area R3 is designated as Rd3.

[0075] If the count value has a true value "x" in the range R0, the count value TC can take the following possible values. When the motor 80 rotates in the forward direction, the count value TC can possibly take a value of x + 1 if an upcount occurs in the uncertain range between the range Rd0 and the range Rd1 (for example, the count value TC can possibly be incremented). When the motor 80 rotates in the reverse direction, the count value TC can possibly take a value of x - 1 if a downcount occurs in the uncertain range between the range Rd0 and the range Rd3 (for example, the count value TC can possibly be decremented). That is, three count values ​​TC of x, x + 1, or x - 1 can be taken in the range R0. The same applies to the other ranges.

[0076] During the transition from range R3 to range R0, to determine the count value TC, it is necessary to consider whether the mechanical angle θm has crossed 0° (i.e., greater than 360° or a multiple thereof), in addition to considering whether an upcount or downcount of the count value TC has ended. When the motor 80 makes one revolution and the rotation angle (mechanical angle) θm transitions from 360° to 0°, the 360° or 0° position can be called the switching position or change position, respectively, because the rotation angle θm changes from 360° to 0°. For example, when the absolute angle θa is calculated by equation (2-1), the absolute angle θa may deviate by 360° from the true value depending on whether the mechanical angle θm has crossed 0° (that is, depending on the true position of the mechanical angle θm with respect to the change position), as shown in Fig. 11. According to a specific example, it is assumed that the mechanical angle θm = 340° and the count value TC in the region R3 is 3. The count value TC is 4 in the region R0 after the transition (for example, after the mechanical angle θm has increased after 360° and passed 0° - that is, after the mechanical angle θm has passed the changeover position). The absolute pre-count angle θa in the region R3 is represented by equation (3), and the absolute post-count angle θa in the region R3 is represented by equation (4). The shift by 360° of the absolute angle θa is considerable between equations (3) and (4). θa=DIV(3 / 4)×360+340=340 θa=DIV(4 / 4)×360+340=700

[0077] Accordingly, in the present embodiment, the absolute angle θa is calculated when the mechanical angle θm is in the safe range Rd, and the absolute angle θa is not calculated when the mechanical angle θm is in the unsafe range Ri.

[0078] An absolute angle calculation process of the present embodiment will be described with reference to the flowchart of Fig. 12. The absolute angle calculation process is performed by the absolute angle calculators 172 and 272 at a predetermined cycle. Since the calculations of the absolute angle calculators 172 and 272 are similar, the process will be described with reference to the absolute angle calculator 172. However, the process described with reference to the absolute angle calculator 172 in the first system L1 can also be used for the absolute angle calculator 272 in the second system L2. Later embodiments may also describe similar processes for the first system L1 and the second system L2, with the process being described with reference to only one of the systems. Unless otherwise stated, the processes described with reference to one system can be used for the other system, and such similar processes can substitute corresponding values ​​from the other system as needed.

[0079] According to Fig. 12, the absolute angle calculator 172 determines in S101 whether the mechanical angle θm is within the safe range Rd0. If the absolute angle calculator 172 determines that the mechanical angle θm is within the safe range Rd0, that is, if "Yes" is in S101, the process proceeds to S105. If the absolute angle calculator 172 determines that the mechanical angle θm is not within the safe range Rd0, that is, if "No" is in S101, the process proceeds to S102.

[0080] In S102, the absolute angle calculator 172 determines whether the mechanical angle θm is within the safe range Rd1. If the absolute angle calculator 172 determines that the mechanical angle θm is within the safe range Rd1, i.e., if S102 is "Yes," the process proceeds to S105. If the absolute angle calculator 172 determines that the mechanical angle θm is not within the safe range Rd1, i.e., if S102 is "No," the process proceeds to S103.

[0081] In S103, the absolute angle calculator 172 determines whether the mechanical angle θm is within the safe range Rd2. If the absolute angle calculator 172 determines that the mechanical angle θm is within the safe range Rd2, i.e., if "Yes" is in S103, the process proceeds to S105. If the absolute angle calculator 172 determines that the mechanical angle θm is not within the safe range Rd2, i.e., if "No" is in S103, the process proceeds to S104.

[0082] In S104, the absolute angle calculator 172 determines whether the mechanical angle θm is within the safe range Rd3. If the absolute angle calculator 172 determines that the mechanical angle θm is within the safe range Rd3, i.e., if "Yes" is in S104, the process proceeds to S105. If the absolute angle calculator 172 determines that the mechanical angle θm is not within the safe range Rd3, i.e., if "No" is in S104, the process proceeds to S106.

[0083] In S105, the absolute angle calculator 172 calculates the absolute angle θa using the count value TC and the mechanical angle θm. The absolute angle calculator 172 performs the process in S106 when the mechanical angle θm is within the uncertain range Ri. In S106, the absolute angle calculator 172 does not calculate the absolute angle θa, but uses the previous absolute angle θa whose value is stored in a memory (i.e., a hold value). When S106 is performed immediately after starting (i.e., immediately after a vehicle is started or the ignition switch is turned on), an initial value stored in a memory is used as the absolute angle θa. Using the initial value of the absolute angle θa stored in the memory, the absolute angle calculator 172 can calculate the absolute angle θa without causing a 360° shift of the absolute angle θa (i.e.,without causing an offset error of 360° with respect to the true value of the absolute angle θa.

[0084] As described above, the ECU 10 of the present embodiment includes the sensor sections 130 and 230 and the control sections 170 and 270. The sensor sections 130 and 230 detect the rotation of the motor 80 and output mechanical angles θm1 and θm2. The mechanical angles θm1 and θm2 are rotation angles during one revolution (for example, between 0° and 360°). The sensor sections 130 and 230 also detect count values ​​TC1 and TC2 concerning the number of revolutions of the motor 80. In the present embodiment, the mechanical angles θm1 and θm2 may be referred to as "rotation angle" and "first rotation information." The count values ​​TC1 and TC2 may be referred to as second rotation information. The count values ​​TC1 and TC2 are used to divide one rotation of the motor 80 into several counting ranges and to count up (ie increment the count value) or count down (ieDecrementing the count value) depending on the direction of rotation of the motor 80 when one counting range changes or changes to another counting range.

[0085] The control sections 170 and 270 include signal acquisition units 171 and 271 and absolute angle calculators 172 and 272. The signal acquisition units 171 and 271 acquire the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2 from the sensor sections 130 and 230. The absolute angle calculators 172 and 272 calculate the absolute angles θa1 and θa2, which are rotation quantities with respect to the reference position, based on the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2.

[0086] In one revolution of the motor 80, there are unsafe ranges Ri in which detection deviations (i.e., errors) of the count values ​​TC1 and TC2 may occur, and safe ranges Rd in which no detection deviation occurs. The absolute angle calculators 172 and 272 calculate the absolute angles θa1 and θa2 using the count values ​​TC1 and TC2 in the safe range Rd.

[0087] In the present embodiment, the absolute angle calculators 172 and 272 calculate the respective absolute angles θa1 and θa2 based on the respective mechanical angles θm1 and θm2 and the respective count values ​​TC1 and TC2 in the safe range Rd, and hold the absolute angles θa1 and θa2 when the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2 are in the unsafe range Ri. "Holding" the absolute angles θa1 and θa2 may mean that the absolute angle calculators 172 and 272 use a hold value, that is, a previously calculated or stored absolute angle value, as the absolute angles θa1 and θa2. By holding the absolute angles θa1 and θa2, that is,Using absolute angles θa1 and θa2 previously calculated and stored in a memory, the absolute angle calculators 172 and 272 can appropriately calculate the absolute angles θa1 and θa2 when the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2 are in the uncertain range Ri.

[0088] The electric power steering device 8 includes the ECU 10 and the motor 80, which outputs torque to assist a steering operation of the vehicle. That is, the ECU 10 of the present embodiment can be used for the electric power steering device 8. Since the absolute angle θa is calculated by the ECU 10 of the present embodiment, the ECU 10 can convert the steering angle by converting the absolute angle θa with the gear ratio of the reduction gear 89 to transmit the drive power of the motor 80 to the steering system 90. In this way, the ECU 10 functions as a steering angle sensor, and the electric power steering device 8 including the ECU 10 of the present embodiment can dispense with a steering angle sensor. (Second embodiment)

[0089] The absolute angle calculation process of the present embodiment will be explained with reference to Fig. 13. As described in Fig. 13, the absolute angle calculator 172 determines in S110 whether a first calculation of the absolute angle θa has already been performed. Here, if the absolute angle θa has been calculated using the count value TC in the safe range Rd after the vehicle start switch such as an ignition switch is turned on, it is assumed that the first calculation has been performed. In the present embodiment, turning on a start switch such as an ignition switch may be referred to as a "system start." If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has already been performed, that is, if "YES" is in S110, the process proceeds to S117. If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has not yet been performed, that is, if "NO" is in S110, the process proceeds to S111.

[0090] The processes in S111, S112, S113 and S114 (ie S111 - S114) are similar to the processes in S101, S102, S103 and S104 of the first embodiment described in Fig. 12. If the absolute angle calculator 172 positively determines in any one of S111-S114 that the mechanical angle θm is within a safe range Rd (for example, Rd0-Rd3), that is, if "Yes" is in S111-S114, the process proceeds to S115. In S115, the absolute angle calculator 172 calculates the absolute angle θa using the count value TC and the mechanical angle θm, similarly to the process in S105 of the first embodiment. If the absolute angle calculator 172 obtains a negative determination result in any one of S111-S114 and determines that the mechanical angle θm is not within a safe range Rd but instead is within an unsafe range Ri, that is, if "No" is in S111-S114, the process proceeds to S116. In S116, the absolute angle calculator 172 does not calculate the absolute angle θa, but uses the initial value or a holding value of the absolute angle θa.

[0091] In cases where the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has already been performed, that is, when "Yes" is in S110, the process proceeds to S117. In S117, the absolute angle calculator 172 calculates the absolute angle θa by adding a difference between mechanical angles θm to a previous calculation of the absolute angle θa. Here, the absolute angle calculator 172 calculates the current value of the absolute angle θa based on the previous value of the absolute angle θa and the difference between the current value of the mechanical angle θm and the previous value of the mechanical angle θm (that is, the change amount of the mechanical angle θm), as shown in Equation (5-1). In Equation (5-1), the subscript (n) denotes the current value, and the subscript (n-1) denotes the previous value. θa(n)=θa(n−1)+(θm(n)−θm(n−1))

[0092] The absolute angle θa can be calculated from the absolute angle θa_init of the first calculation by adding the mechanical angle difference Iθmd compared to the first calculation. In equation (5-3), θm denotes (0) the mechanical angle at the time of absolute angle calculation using the count value TC, and θm (1) denotes the mechanical angle at the time of the first absolute angle calculation by adding the difference of the mechanical angles θm. Furthermore, the mechanical angle difference value Iθmd can be obtained as a separately calculated value from such a calculation. That is, the mechanical angle difference value Iθmd can be obtained by calculations other than Equation (5-3). θa(n)=θa_init+lθmd lθmd=(θm(1)−θm(0))+…+(θm(n−1)θm(n−2))+(θm(n)−θm(n−1))

[0093] In S118, the absolute angle calculator 172 stores the absolute angle θa calculated in S117 and the mechanical angle(s) θm used in the calculation in a memory (not shown). The stored values ​​of the absolute angle θa and the mechanical angle θm are used by the absolute angle calculator 172 as the previous values ​​in the second and subsequent calculations. The memory may be, for example, a volatile memory such as RAM for storing the last values ​​of the absolute angle θa and the mechanical angle θm.

[0094] In the present embodiment, the absolute angle calculator 172 calculates the absolute angle θa using the count value TC when the mechanical angle θm initially enters the safe range Rd. After performing the initial calculation of the absolute angle θa using the count value TC, the absolute angle calculator 172 does not use the count value TC, but instead calculates the absolute angle θa based on the first calculated absolute angle θa_init and the mechanical angles θm. Specifically, the absolute angle θa is calculated by adding the change amount of the mechanical angles θm to the absolute angle θa_init from the first calculation. In this way, values ​​in the uncertain range do not cause calculation errors, and the absolute angle calculator 172 can continue appropriate absolute angle calculations when the values ​​are in the uncertain range Ri.

[0095] In the present embodiment, the absolute angle calculators 172 and 272 calculate the absolute angles θa1 and θa2 based on the mechanical angles θm1 and θm2 in the safe range Rd in the first calculation at system startup, and then calculate the absolute angles θa1 and θa2 in the second and subsequent calculations based on the first-calculated values ​​of the absolute angles θa1 and θa2 and the mechanical angles θm1 and θm2. In this way, the calculations of the absolute angles θa1 and θa2 can be continued in the second and subsequent calculations when the count value TC and the mechanical angle θm are in the unsafe range Ri. The present embodiment achieves the same advantageous effects as in the first embodiment. (Third embodiment)

[0096] The absolute angle calculation process of the third embodiment will be explained with reference to Fig. 14. In Fig. 14, the processes performed by the absolute angle calculator 172 in S121, S122, S123 and S124 (ie S121 - S124) are similar to the processes performed by the absolute angle calculator 172 in S101 - S104 in Fig. 12 of the first embodiment. If the absolute angle calculator 172 positively determines in any one of S121-S124 that the mechanical angle θm is within a safe range Rd (for example, Rd0-Rd3), that is, if "Yes" is in S121-S124, the process proceeds to S125. In S125, the absolute angle calculator 172 calculates the absolute angle θa using the count value TC and the mechanical angle θm, similarly to the process in S105 of the first embodiment. If the absolute angle calculator 172 obtains a negative determination result in any one of S121-S124 and determines that the mechanical angle θm is not within a safe range Rd but instead is within an unsafe range Ri, that is, if "No" is in S121-S124, the process proceeds to S126.

[0097] In S126 the absolute angle calculator 172 determines similarly to S110 the Fig. 13, whether the first calculation of the absolute angle θa has already been performed. If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has not yet been performed, i.e., if "No" is in S126, the process proceeds to S127, and the absolute angle calculator 172 uses an initial value stored in a memory, similar to the process in S116. If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has already been performed, i.e., if "Yes" is in S126, the process proceeds to S128. In S128, the absolute angle calculator 172 calculates, similar to S117, the Fig. 13, the absolute angle θa is calculated by adding the difference of the mechanical angles θm to a previously calculated or stored absolute angle θa in a memory. In S129, the absolute angle calculator 172 stores the calculated absolute angle θa and the mechanical angle(s) θm in a memory, similar to S118. That is, in the present embodiment, the absolute angle θa is calculated using the count value TC when the rotation angle θm and the count value TC are in the safe range Rd, and the absolute angle θa is calculated by adding the difference of the mechanical angles θm to a previously stored or calculated absolute angle θa when the rotation angle θm and the count value TC are in the unsafe range Ri.

[0098] In the present embodiment, in the second and subsequent calculations in the safe range Rd, the absolute angle calculator 172 calculates the absolute angles θa1 and θa2 based on the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2, and further calculates the absolute angles θa1 and θa2 based on the first calculation value of the absolute angles θa1 and θa2 and the mechanical angles θm1 and θm2 when the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2 are in the uncertain range Ri. In this way, the absolute angle calculator 172 can continuously calculate the absolute angles θa1 and θa2 in the uncertain range Ri in the second and subsequent calculations. The present embodiment achieves the same advantageous effects as the previous embodiments. (Fourth embodiment)

[0099] The fourth embodiment will be described with reference to the Fig. 15, Fig. 16, Fig. 17 and Fig. 18. As described in the first embodiment, the unsafe areas Ri are arranged near the boundaries of the safe areas R0, R1, R2 and R3 (ie, R0 - R3), for example, as shown in Fig. 11, when the count value TC is counted by comparing it with threshold values ​​of the sensor signals. As described above, three count values ​​TC can be used in the respective ranges R0 - R3 (e.g., x-1, x, and x+1).

[0100] In the present embodiment, the absolute angle calculator 172 can perform a range correction process by adding an offset value α to the mechanical angle θm. Fig. 15, the absolute angle θa is offset by shifting the mechanical angle θm by the value α. The offset value α is set to an arbitrary value corresponding to the angular width of the uncertain area Ri such that the uncertain area Ri does not cross the boundary of any of the areas R0 - R3. As shown in Fig. For example, as shown in Figure 15, when the angular width of the unsafe region Ri is 45°, the offset value α is set to 22.5°, and the unsafe regions Ri are shifted by 22.5° so that they do not overlap with the boundaries of the safe regions R0 - R3.

[0101] By means of range correction, the count value TC that can be used in the range R0 is x or x - 1 when a count number of the range R0 is denoted as x. That is, when range correction is performed using the offset value α, the number of count values ​​TC that can possibly be used in the respective ranges R0 to R3 is 2 (i.e., x or x - 1), which reduces the number of possible count values ​​TC compared to cases without range correction. In this case, range correction reduces the number of count values ​​in each range from three (i.e., x - 1, x, and x + 1) to two (i.e., x - 1 and x). The corrected mechanical angle θm is appropriately adjusted with the offset value α as a mechanical post-shift angle θms after the shift (i.e., correction by offsetting or shifting).

[0102] As it is in the Fig. 15 and Fig. 17, in the present embodiment, each area is further divided into two sub-counting areas. In Fig. 17, in the range R0, the sub-counting range with the smaller mechanical post-shift angle θms is defined as a first half range, and the sub-counting range with the larger mechanical post-shift angle θms is set as a second half range. The first half range includes the uncertain range Ri, and the second half range does not include the uncertain range Ri. The same applies to the ranges R1 - R3.

[0103] In the present embodiment, the absolute angle θa is calculated in the second half range of the respective ranges R0-R3, which does not include the uncertain range Ri. The absolute angle θa is not calculated in the first half range, which includes the uncertain range Ri. In such a case, it can also be assumed that the first half range is regarded as the "uncertain range" and the second half range is regarded as the "safe range." When the uncertain range Ri is included in the second half range and the uncertain range Ri is not included in the first half range, the calculation of the absolute angle θa can be performed by using the first half range as the "safe range" and the second half range as the "uncertain range."

[0104] The absolute angle calculation process of the present embodiment will be explained with reference to the flowchart of Fig. 18. In S151, the absolute angle calculator 172 determines whether a remainder obtained by dividing the mechanical post-shift angle θms by 90° is greater than 45°. If it is determined that the remainder obtained by dividing the mechanical angle θms by 90° is greater than 45°, that is, if "Yes" is in S151, the absolute angle calculator 172 determines that the mechanical post-shift angle is within the safe range Rd, and the process proceeds to S152. If the absolute angle calculator 172 determines that the remainder obtained by dividing the mechanical angle θm by 90° is not greater than 45°, that is, if "No" is in S151, the absolute angle calculator 172 determines that the angle θms is within the unsafe range Ri, and the process proceeds to S153.

[0105] In S152, the absolute angle calculator 172 calculates the absolute angle θa using the count value TC and the mechanical post-displacement angle θms. In S153, similar to the process in S106, the absolute angle calculator 172 does not calculate the absolute angle θa, but uses the value of the previous absolute angle θa. If S153 is executed immediately after startup, an initial value stored in a memory is used as the absolute angle θa.

[0106] In the present embodiment, when range correction is performed using the offset value α and the count number in one revolution of the motor 80 is 4, one revolution of the motor 80 is divided into 8 ranges (ie, 2 × 4). The absolute angle calculator 172 calculates the absolute angle θa in a range that does not include the uncertain range Ri. In this way, the angular deviation and the error of the absolute angle θa can be less than 90°. Since range correction using the offset value α makes determination of the uncertain range Rd easier, the computational load of the absolute angle calculator 172 and thus of the control section 170 can be reduced, so that fewer computational resources are used and processing becomes faster and more efficient.

[0107] In the present embodiment, when the rotation angle change position where the mechanical angles θm1 and θm2 change from 360° to 0° is included in the unsafe range Ri, the control sections 170 and 270 shift the mechanical angles θm1 and θm2 so that the rotation angle change position is located in the safe range Rd. In this way, the range correction using the offset value α can reduce the number of possible count values ​​TC1 and TC2 in the respective ranges R0 - R3.

[0108] The absolute angle calculators 172 and 272 divide each counting range into a plurality of sub-ranges (i.e., sub-counting ranges) and shift the mechanical angles θm1 and θm2 so that the uncertain range Ri is included in one of the sub-ranges in the counting range. The absolute angle calculators 172 and 272 regard the sub-ranges that do not include the uncertain ranges Ri as safe ranges Rd. In the present embodiment, the number of parts of each counting range is 2, and a counting range is divided into a first half range and a second half range. The mechanical angles θm1 and θm2 are shifted so that the uncertain range Ri is included in one of the first half range and the second half range, and the other of the first half range and the second half range is regarded as the safe range Rd.In this way, the calculations for determining whether an angle lies in the uncertain range Ri or the safe range Rd can be simplified, and the computational load of the absolute angle calculators 172 and 272, and thus of the control sections 170 and 270, can be reduced. In the present embodiment, the first half range and the second half range may be referred to as "sub-counting ranges," the first half range may be referred to as "part of the sub-counting ranges," and the second half range may be referred to as "another sub-counting range." The present embodiment achieves the same advantageous effects as the previous embodiments. (Fifth embodiment)

[0109] The absolute angle calculation process of the fifth embodiment will be explained with reference to Fig. 19. The process in S161 is similar to the process in S110 of the Fig. 13. If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has already been performed, i.e., if "Yes" is in S161, the process proceeds to S162, and the absolute angle θa is calculated by adding the difference of the mechanical angles θm to a previous value of the absolute angle θa, similar to the calculation performed by the absolute angle calculator 172 in S117. If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has not been performed, i.e., if "No" is in S161, the process proceeds to S163.

[0110] The process in S163 is similar to the process in S151 of the Fig. 18. If the absolute angle calculator 172 determines that the remainder obtained by dividing the mechanical angle θm by 90° is greater than 45°, that is, if "Yes" is in S163, the absolute angle calculator 172 determines that the angle is within the safe range Rd, and the process proceeds to S164. Similar to the process in S115, the Fig. 13, the count value TC and the mechanical angle θm are used to calculate the absolute angle θa. In S165, the absolute angle calculator 172 stores the absolute angle θa calculated in S162 or S164 and the mechanical angle θm used in the calculation in a memory, similar to the process in S118. If the absolute angle calculator 172 determines that the remainder obtained by dividing the mechanical angle θm by 90° is not greater than 45°, that is, if "No" is displayed in S163, the process proceeds to S166. In S166, the absolute angle calculator 172 does not calculate the absolute angle θa, and the initial value is set similar to the process in S116. Fig. 13 is performed, held, or used. The configuration of the present embodiment achieves the same advantageous effects as the previous embodiments. (Sixth Embodiment)

[0111] The absolute angle calculation process of the sixth embodiment will be explained with reference to Fig. 20. The process in S171 is similar to the process described in S151 of the Fig. 18 is performed. If the absolute angle calculator 172 determines that the remainder obtained by dividing the mechanical angle θm by 90° is greater than 45°, that is, if "Yes" is in S171, the process proceeds to S172. In S172, the absolute angle calculator 172 calculates the absolute angle θa using the count value TC and the mechanical angle θm. If the absolute angle calculator 172 determines that the remainder obtained by dividing the mechanical angle θm by 90° is equal to or less than 45°, that is, if "No" is in S171, the process proceeds to S173.

[0112] The process in S173 is similar to the process in S110 of the Fig. 13. If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has already been performed, that is, if "Yes" is in S173, the process proceeds to S174, and the absolute angle calculator 172 calculates the absolute angle θa by adding the difference of the mechanical angles θm to a previous value of the absolute angle θa. In S175, similar to the process in S118, the absolute angle calculator 172 stores the absolute angle θa calculated in S172 or S174 and the mechanical angle θm used in the calculation. If the absolute angle calculator 172 determines that the first calculation of the absolute angle θa has not been performed yet, that is, if "No" is in S173, the process proceeds to S176, the absolute angle calculator 172 does not calculate the absolute angle θa, and the initial value is used.The configuration of the present embodiment achieves the same advantageous effects as the previous embodiments. (Seventh Embodiment)

[0113] The seventh embodiment will be described with reference to the Fig. 21, Fig. 22 and Fig. 23. As described in Fig. As shown in Fig. 21, the first control section 170 of the present embodiment includes the signal acquisition unit 171, the absolute angle calculator 172, a reference value storage unit 174, the abnormality determiner 175, and the communicator 179. The second control section 270 includes the signal acquisition unit 271, the absolute angle calculator 272, a reference value storage unit 274, the abnormality determiner 275, and the communicator 279.

[0114] The reference value storage units 174 and 274 store reference values ​​B1 and B2. The reference value storage units 174 and 274 are implemented using a non-volatile memory such as an EEPROM or the like, so that the reference values ​​B1 and B2 are retained in the memory even when the vehicle's start switch is turned off and the power supply to the first control section 170 and the second control section 270 is interrupted. In the present embodiment, the absolute angle calculators 172, 272 use the reference values ​​B1 and B2 to calculate the absolute angles θa1 and θa2 in addition to the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2.

[0115] Reference values ​​B1 and B2 are set when batteries 191 and 291 are connected and the starter switch is turned on for the first time. The first start of the vehicle after batteries 191 and 291 are connected can also be referred to as the "initial start." Reference values ​​B1 and B2 can be stored when reference values ​​B1 and B2 are set for the first time (i.e., before the vehicle is turned on for the first time), or reference values ​​B1 and B2 can be stored when the starter switch is turned off for the first time after the initial start, for example, during vehicle manufacturing.At these two storage times, the reference values ​​B1 and B2 can be better stored if the vehicle is turned off first after it is turned on for the first time, because the memory notices that a memory rewrite has occurred and records the number of rewrites as one when the vehicle start switch is turned on for the first time.

[0116] When an initialization command is used to initialize the reference values ​​B1 and B2 due to abnormality detection, or when initial adjustment is performed during vehicle manufacturing or at the vehicle dealership, the calculation and storage of the reference values ​​B1 and B2 can be performed. The first calculation after the initialization command described above can also be included in the concept of "initial start." In the above description, the "initial start" is defined as turning on the start switch for the first time after batteries 191 and 291 are connected.Regarding the system control for detecting abnormalities of the counter values ​​TC1 and TC2, the "initial start" can also be assumed in cases where the power supplies 192 and 292 have abnormal voltages when the start switch is turned on, or when the sensor sections 130 and 230 have a history of abnormalities when the start switch is turned on. That is, the "initial start" not only means the first time a vehicle is turned on after the batteries 191 and 291 are connected, but can also include cases where abnormalities exist when the vehicle is turned on.

[0117] In the above-described embodiments, if the mechanical angles θm1 and θm2 are in the unsafe range Ri when the vehicle start switch is turned on, the absolute angle calculators 172 and 272 may not perform the calculations of the absolute angles θa1 and θa2 until the mechanical angles θm1 and θm2 enter the safe ranges Rd when the motor 80 is rotating. In the present embodiment, the reference values ​​B1 and B2 are stored in the reference value storage units 174 and 274 at the initial start after the batteries 191 and 291 are connected, and then the absolute angle calculators 172 and 272 can calculate the absolute angles θa1 and θa2 immediately after the start switch is turned on, regardless of the rotation position of the motor 80.

[0118] In the present embodiment, the count value TC at the initial start is set as the initial count value TC_init, the mechanical angle θm at the initial start is set as the initial mechanical angle θm_init, and the initial count value TC_init and the initial mechanical angle θm_init are stored as the reference value B.

[0119] The absolute angle calculation process of the present embodiment will be explained with reference to the flowchart of Fig. 22. The process in Fig. 22 is performed by the control section 170 at a predetermined cycle. In S201, the absolute angle calculator 172 determines whether this is an initial start after battery connection. If the absolute angle calculator 172 determines that this is not an initial start after battery connection, that is, if S201 is "No," the process proceeds to S203. If the absolute angle calculator 172 determines that this is an initial start after battery connection, that is, if S201 is "Yes," the process proceeds to S202.

[0120] In S202, the absolute angle calculator 172 stores the current count value TC and the current mechanical angle θm in the reference value storage unit 174 as the initial count value TC_init and the initial mechanical angle θm_init.

[0121] In S203, the absolute angle calculator 172 calculates the mechanical angular deviation Δθm using equation (6). In S204, the absolute angle calculator 172 calculates a range setting value Ra using equation (7). In S205, the absolute angle calculator 172 calculates the counting deviation ΔTC using equation (8). The counting deviation ΔTC is a value indicating how much the counting value TC has changed from the initial position. θm and TC in the equations represent the current mechanical angle and the current counting value, respectively. In equation (7), the quotient obtained by dividing the mechanical angular deviation Δθm by 90° is calculated, and the range setting value Ra can be regarded as a value obtained by converting the mechanical angular deviation Δθm into the counting number. Δθm=θm−θm_init Ra=DIV(Δθm / 90°) ΔTC=TC−TC_init−Ra

[0122] In S206, the absolute angle calculator 172 determines whether the counting deviation ΔTC is greater than zero. If the absolute angle calculator 172 determines that the counting deviation ΔTC is greater than 0, that is, if S206 is "Yes," the process proceeds to S207. If the absolute angle calculator 172 determines that the counting deviation ΔTC is equal to or less than 0, that is, if S206 is "No," the process proceeds to S208.

[0123] In S207 and S208, the absolute angle calculator 172 calculates the number of revolutions N. In S207, the absolute angle calculator 172 obtains a quotient by adding 1 to the counting deviation ΔTC and dividing by 4 as the number of revolutions N, as calculated according to equation (9-1), to prevent undercounting of the number of revolutions N. In cases where there is no undercounting of the number of revolutions N, the absolute angle calculator 172 rounds the number of revolutions N after dividing by 4 (i.e., truncates the decimal fraction). In S208, the absolute angle calculator 172 obtains a quotient by subtracting 1 from the counting deviation ΔTC and dividing by 4 as the number of revolutions N, as calculated according to equation (9-2), to prevent overcounting of the number of revolutions N. In cases where there is no overcount of the number of revolutions N, the Absolute Angle Calculator 172 rounds the number of revolutions N after dividing by 4 (ietruncates the decimal fraction). In S209, the absolute angle calculator 172 calculates the absolute angle θa using the number of revolutions N, as shown in equation (2-2). N=DIV{(ΔTC+1) / 4} N=DIV{(ΔTC−1) / 4} θa=N×360°+θm

[0124] In the present embodiment, the initial mechanical angle θm_init and the initial count value TC_init stored as the reference value B may be in the safe range Rd or in the unsafe range Ri. As shown in Fig. As shown in Figure 23A, when the initial position is in the uncertain range Ri and the count value TC has not yet been counted, the count number in the range R0 is 0 or 1 (i.e., uncertain) because the upcount occurs in the range R0. When the motor 80 returns to the range R0 after one revolution, the count value TC is 4 or 5.

[0125] As it is in Fig. As shown in Figure 23B, the count in the range R0 is zero (i.e., safe) when the initial position is in the safe range Rd and the count-up has already occurred. When the motor 80 returns to the range R0 after one revolution, the count value TC is 4.

[0126] As it is in Fig. 23C, the count value TC is equal to 3 or 4 when the initial position is in the safe range Rd and the upcount occurs before the range boundary is crossed when the motor 80 returns to the range R0 after one revolution.

[0127] In summary, based on the Fig. 23A, Fig. 23B and Fig. 23C that when the motor 80 returns to the initial position after one revolution from the initial position, regardless of whether the initial position is in the unsafe range Ri or in the safe range Rd, the count value TC is equal to 4N ± 1. Because the absolute angle calculator 172 performs the calculations in S206, S207 and S208 of the Fig. 22 and the absolute angle calculator 172 calculates the absolute angle θa using the equation (2-2), the absolute angle calculator 172 can appropriately calculate the absolute angle θa regardless of whether the initial position is in the safe range Rd or in the unsafe range Ri.

[0128] In the present embodiment, the initial count value TC_init and the initial mechanical angle θm_init at the initial start after connecting the batteries 191 and 291 are stored in the reference value storage units 174 and 274 as the reference value B. Thus, regardless of whether the mechanical angle θm is in the safe range Rd or the unsafe range Ri, the absolute angle calculators 172 and 272 can calculate the absolute angle θa immediately after the start switch is turned on. Since the reference value B in the present embodiment is the count value TC and the mechanical angle θm at the time of the initial start, the calculation load of the absolute angle calculators 172 and 272 and thus of the control sections 170 and 270 can be reduced. The configuration of the present embodiment achieves the same advantageous effects as the previous embodiments. (Eighth Embodiment)

[0129] The eighth embodiment will be described with reference to Fig. 24. The absolute angle calculation process of the present embodiment will be described with reference to the flowchart of Fig. 24. In S221, the absolute angle calculator 172 calculates the count value TC of a reference range. In the present embodiment, the range R0 is set as the reference range, and the count value TC of the range R0 is calculated using equation (10). The count value TC of the range R0 is referred to as TC. (R0) designated. TC(R0)=TC−MOD(θms,90°)

[0130] The process in S222 is similar to the process in S201. If the absolute angle calculator 172 determines that the current process is not the initial start, ie, if S222 is "No," the process proceeds to S224. If the absolute angle calculator 172 determines that the current process is the initial start, ie, if S222 is "Yes," the process proceeds to S223.

[0131] In S223, the absolute angle calculator 172 stores the initial count value TC_init of the range R0 (i.e., the reference range) as the reference value B in the reference value storage unit 174. In S224, the absolute angle calculator 172 calculates the count deviation ΔTC using equation (11). The processes in S225, S226, S227, and S228 are similar to the processes in S206, S207, S208, and S209 of the Fig. 22. In S228, the absolute angle calculator 172 calculates the absolute angle θa. In the present embodiment, the mechanical post-displacement angle θms after the displacement is used instead of the mechanical angle θm. ΔTC=TC(R0)−TC_init

[0132] In the present embodiment, the absolute angle calculator 172 calculates the number of revolutions N, taking into account possible undercounts and overcounts. When the absolute angle calculator 172 calculates the absolute angle θa using the number of revolutions N, the absolute angle calculator 172 can appropriately calculate the absolute angle θa. The initial count value TC_init of the reference range is stored as the reference value B. Thus, only one piece of data, that is, the reference value B, is stored. The present embodiment achieves similar advantageous effects as the previous embodiments. (Ninth Embodiment)

[0133] The absolute angle calculation process of the ninth embodiment will be explained with reference to the flowchart of Fig. 25. The process in S241 is similar to the process in S201. If the absolute angle calculator 172 determines that a vehicle start is not the initial start, ie, if "No" is in S241, the process proceeds to S247. If the absolute angle calculator 172 determines that the vehicle start is the initial start, ie, if "Yes" is in S241, the process proceeds to S242.

[0134] In S242, the absolute angle calculator 172 determines whether the mechanical re-shift angle θms is within the safe range Rd. If the absolute angle calculator 172 determines that the mechanical re-shift angle θms is not within the safe range Rd, that is, if "No" is in S242, the absolute angle calculator 172 determines that the mechanical re-shift angle θms is within the unsafe range Ri, the process proceeds to S243, and the absolute angle calculator 172 uses or maintains the initial value. If the absolute angle calculator 172 determines that the mechanical re-shift angle θms is within the safe range Rd, that is, if "Yes" is in S242, the process proceeds to S244.

[0135] In S244, the absolute angle calculator 172 calculates a residual value RM obtained by dividing the count value TC by the number of ranges. If the remainder is 0, the residual value RM is set to 4. In S245, the absolute angle calculator 172 sets an initial residual value RM_init as the reference value B. The initial residual value RM_init is the residual value RM corresponding to the count value TC at the initial start. The absolute angle calculator 172 then stores the reference value B in the reference value storage unit 174 in association with the respective ranges R0 - R3.

[0136] For example, if the mechanical post-displacement angle θms is in the range R0 and the count value TC is 47, the residual value RM = 3, where an initial residual value corresponding to the range R0 is RM_init (R0) of 3, an initial residual value corresponding to the range R1, equal to RM_init (R1) of 4, an initial residual value corresponding to the range R2, equal to RM_init (R2)of 1, and an initial residual value corresponding to the range R3, equal to RM_init (R3) of 2. The absolute angle calculator 172 stores such values ​​in the reference value storage unit 174. In S246, the absolute angle calculator 172 calculates the absolute angle θa using the equation (1-2). θa=TC×90+MOD(θms, 90°)

[0137] In cases where the absolute angle calculator 172 determines that the vehicle start is not the initial start, i.e., if "No" is in S241, the process proceeds to S247. In S247, the absolute angle calculator 172 calculates the residual value RM similarly to the process in S244. In S248, the absolute angle calculator 172 calculates a counting adjustment value A using equation (12). The counting adjustment value A is a value corresponding to the counting deviation (i.e., counting error) between the initial position and the current position. RM_init (Rx)In equation (12), is an initial residual value corresponding to the current range in which the mechanical post-displacement angle θms is currently located. In S249, the absolute angle calculator 172 calculates the set count value TC_a using equation (13). In S250, the absolute angle calculator 172 calculates the absolute angle θa using the set count value TC_a using equation (1-3). A=RM_init(Rx)−RM Tc_a=TC+A θa=TC_a×90°+MOD(θms, 90°)

[0138] In the present embodiment, the absolute angle calculator 172 stores the residual value RM in the safe range of the respective four ranges at the initial start, and the absolute angle calculator 172 can appropriately calculate the absolute angle θa by correcting the count value TC with the stored value. By setting the reference value to be stored as the residual value, the stored value is smaller compared to storing the count value TC itself. Here, the count value TC can be corrected based on the residual value RM, so that the residual value RM of the range R0 becomes zero.As in the seventh embodiment or the eighth embodiment, the absolute angle calculator 172 can appropriately calculate the absolute angle θa by calculating the absolute angle θa using the number of revolutions N after taking into account undercounts and overcounts in the number of revolutions N, regardless of whether the initial position is in the safe range Rd or the unsafe range Ri. The present embodiment achieves the same advantageous effects as the previous embodiments. (Tenth Embodiment)

[0139] The tenth embodiment is described with reference to the Fig. 26 and Fig. 27. In the above-described embodiments, the method for accurately calculating the absolute angle θa in a respective system has been described. As shown in Fig. As shown in Figure 26, if the initial position at system startup differs depending on the system, there is a possibility that an error in the absolute angle will occur between the different systems. Therefore, in the present embodiment, error correction is performed by mutually transmitting (i.e., inter-system communication) the mechanical angle θm, the count value TC, and / or the absolute angle θa as angle information. The angle information is also transmitted between the systems and used to detect abnormalities.

[0140] As it is in Fig.27, the first control section 170 includes the signal acquisition unit 171, the absolute angle calculator 172, the reference value storage unit 174, the abnormality determiner 175, an inter-system correction unit 176, and the communicator 179. The second control section 270 includes the signal acquisition unit 271, the absolute angle calculator 272, the reference value storage unit 274, the abnormality determiner 275, an inter-system correction unit 276, and the communicator 279. The inter-system correction units 176 and 276 calculate corrected absolute angles θa1_s and θa2_s based on the angle information of the subject system, the angle information of the other system, and an abnormality determination result of the other system.

[0141] The communicators 179 and 279 transmit the absolute angles θa1 and θa2 to each other as angle information. When the absolute angles θa1 and θa2 are normal, the absolute angles θa1 and θa2 have the same value. Therefore, when the absolute angles θa1 and θa2 are transmitted to each other as angle information, the abnormality determiners 175 and 275 calculate an absolute inter-system angle deviation Δθax using Equation (14). If the absolute inter-system angle deviation Δθax is greater than an abnormality determination threshold θa_th, the abnormality determiners 175 and 275 can determine that abnormalities of the absolute angles θa1 and θa2 exist.

[0142] In the present embodiment, a correction is performed on the second system side so that the corrected absolute angle θa2_s agrees with the absolute angle θa1. The inter-system correction unit 276 calculates the corrected absolute angle θa2_s based on the absolute inter-angle deviation Δθax in equation (15). The inter-system correction unit 176 sets the absolute angle θa1 unchanged (i.e., without change) as the corrected absolute angle θa1_s. In the inter-system correction units 176 and 276, any calculation for matching the two angles θa1_s and θa2_s may be performed. For example, the average value of the absolute angles θa1 and θa2 before correction may be set as the corrected absolute angles θa1_s and θa2_s.Such variable correction methods can also be used to correct the number of revolutions N and in the case of mutual transmission of the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2.

[0143] If an abnormality exists on the first system side, the inter-system correction unit 276 sets the absolute angle θa2 as the corrected absolute angle θa2_s without performing an inter-system correction calculation. The inter-system correction units 176 and 276 output the corrected absolute angles θa1_s and θa2_s along with rotation angle abnormality information concerning the subject system or the other system. Δθax=θa2−θa1 θa2_s=θa2−Δθax

[0144] As described above, the control sections 170 and 270 acquire the mechanical angles θm1c and θm2c for control processes and the mechanical angles θm1e and θm2e for abnormality detection. The control sections 170 and 270 can already detect whether the system in question (i.e., the first system L1 and the second system L2, respectively) has abnormalities in the mechanical angle. To correct the error in the number of revolutions N, the inter-system correction units 176 and 276 can calculate the inter-system revolution number deviation ΔN to calculate the corrected absolute angle θa2_s using equations (16) and (17). If θa1 - θa2 in equation (16) is a value close to 360°, for example 358°, a rounding adjustment taking into account that ΔN = 1 may be included or programmed in the calculation. ΔN=DIV{(θa1−θa2) / 360°} θa2_s=θa2−ΔN×360°

[0145] Instead of the absolute angles θa1 and θa2, the mechanical angles θm1 and θm2 and the count values ​​TC1 and TC2 can be transmitted to each other as absolute angle information. The count values ​​TC1 and TC2 may differ depending on the initial position at the system startup time. On the other hand, since the mechanical angles θm1 and θm2 are detected as the same rotor position when normal, the mechanical angles θm1 and θm2 should assume the same value. Therefore, when the inter-system mechanical angle deviation Δθmx, as calculated by Equation (18), is greater than the abnormality determination threshold θm_th, the abnormality determiners 175 and 275 can determine abnormalities of the mechanical angles θm1 and θm2.

[0146] The inter-system correction unit 276 calculates the corrected mechanical angle θm2_s using equation (20) and the corrected count value TC2_s using equation (21) based on the inter-system mechanical angle deviation Δθmx calculated from equation (18) and the inter-system count deviation ΔTCx using equation (19). Thus, the corrected mechanical angle θm2_s matches the mechanical angle θm1 of the first system, and the corrected count value TC2_s matches the count value TC1 of the first system. The corrected absolute angle θa2_s calculated using the corrected mechanical angle θm2_s and the corrected count value TC2_s agrees with the calculated absolute angle θa1 calculated using the mechanical angle θm1 and the count value TC1 in the first system. Δθmx=θm2−θm1 ΔTCx=TC2−TC1 θm2_s=θm2−Δθm TC2_s=TC2−ΔTC

[0147] In this way, the inter-system error of the absolute angles θa1 and θa2 can be reduced, and inconsistent control due to the inter-system error of the absolute angles θa1 and θa2 can be prevented. That is, by comparing the absolute angles θa1 and θa2, the control sections 170 and 270 of the present embodiment can appropriately detect abnormalities in the absolute angle information. The present embodiment achieves the same advantageous effects as the previous embodiments. (Other embodiments)

[0148] In the embodiments described above, the first rotation information is a mechanical angle, and the second rotation information is a count value. In other embodiments, the first rotation information may be any value that can be converted to a mechanical angle. In other embodiments, the second rotation information may be any value that can be converted to the number of revolutions. In the embodiments described above, one revolution is divided into four ranges, and the count value for one revolution of the motor is four. In other embodiments, one revolution may be divided into different numbers of ranges, such as three, five, or more ranges.

[0149] In the fourth embodiment, each counting area is divided into two. In other embodiments, each counting area may be divided into three or more areas, and the mechanical angle may be shifted such that an unsafe area is not included in at least one of the three or more sub-areas.

[0150] In the embodiments described above, two sensor sections and two control sections are arranged for a dual-system configuration. In other embodiments, the number of systems may be three or more, or one.

[0151] In the embodiments described above, electrical power is supplied to the first sensor section and the second sensor section from two separate batteries, and an output signal is transmitted from two sensor sections to the two separate control sections. In other embodiments, electrical power may be supplied from a single battery to multiple sensor sections. In such a case, a power source such as a regulator may be arranged for each sensor section or may be shared between the sensor sections. In other embodiments, multiple sensor sections may each transmit an output signal to a single control section.

[0152] In other embodiments, the absolute angle information may be any value that can be converted into an absolute angle. Since the steering angle detected by the steering angle sensor can be converted into the absolute angle by the gear ratio of the reduction gear, for example, the steering angle information regarding the steering angle can be used as absolute angle information. In other words, the absolute angle of the other system is not necessarily limited to internal information obtained from the inside of the rotation detection device, but may also be obtained from an outside of the rotation detection device (for example, a value obtained externally).

[0153] In the embodiments described above, the sensor section is a sensing element that detects a change in the magnetic field of the magnet. In other embodiments, other rotation angle detection methods and devices, such as a resolver or an inductive sensor, may be used. Furthermore, a communicator may be arranged to transmit a respective type of information. For example, a first communicator may be arranged to transmit the first rotation information, and a second communicator may be arranged to transmit the second rotation information.

[0154] In the embodiments described above, the revolution number calculation is not performed based on the signal from the magnetic field detection unit for abnormality detection. In other embodiments, the revolution number calculation may be performed based on the signal from the magnetic field detection unit for abnormality detection, and the calculation result may be transmitted to the control section. In this way, the inter-system correction and / or the abnormality monitoring by inter-system comparison can be omitted for the second system.

[0155] In the embodiments described above, the motor is a brushless three-phase motor. In other embodiments, the motor is not limited to a permanent magnet type brushless three-phase motor, but can be implemented as any type of motor. The motor can also be a generator, or it can be a motor-generator that has both a motor function and a generator function. That is, the electric rotary machine is not necessarily limited to a motor, but can be a motor, a generator, or a motor-generator.

[0156] In the embodiments described above, a control device including the rotation detection device is used for an electric power steering device. In other embodiments, the control device including the rotation detection device may be used for devices other than an electric power steering device.

Claims

[1] Rotation detection device comprising: a sensor section (130, 230) configured to detect a rotation of a motor (80) and output first rotation information including a rotation angle of the motor within one revolution of the motor and second rotation information including a number of revolutions of the motor; and a control section (170, 270) containing: a signal acquisition device (171, 271) configured to acquire the first rotation information and the second rotation information from the sensor section; and an absolute angle calculator (172, 272) configured to calculate an absolute angle indicating a rotation amount with respect to a reference position based on the first rotation information and the second rotation information; wherein one revolution of the motor is divided into an unsafe range and a safe range, wherein the unsafe range is a range in which a detection deviation of the second rotation information occurs, and wherein the safe range is a range in which no detection deviation of the second rotation information occurs, the absolute angle calculator is further configured to calculate the absolute angle using the second rotation information from the safe area, and the second rotation information is a count value based on count ranges into which one revolution of the motor is divided, the count value being incremented or decremented in response to the rotation angle transition from one count range to another count range based on a rotation direction of the motor. [2] The rotation detecting device according to claim 1, wherein the absolute angle calculator is further configured to calculate the absolute angle (i) in a first calculation after a system start based on the first rotation information and the second rotation information from the safe area, and (ii) in calculations subsequent to the first calculation, based on the absolute angle calculated in the first calculation and the first rotation information. [3] The rotation detecting device according to claim 1, wherein the absolute angle calculator is further configured to calculate the absolute angle (i) in a first calculation after a system start based on the second rotation information and the first rotation information from the safe area, and (ii) in calculations subsequent to the first calculation, on the basis of the first rotation information and the second rotation information if the rotation angle of the motor is within the safe range, or on the basis of the absolute angle calculated in the first calculation and the first rotation information if the rotation angle of the motor is within the unsafe range. [4] The rotation detecting device according to claim 1, wherein the absolute angle calculator is further configured to calculate the absolute angle based on the first rotation information and the second rotation information from the safe range, and to use a previously calculated value of the absolute angle to calculate the absolute angle when the rotation angle of the motor is in the unsafe range. [5] The rotation detecting device according to any one of claims 1 to 4, wherein the control section is configured to control a shift of the rotation angle to shift the shift position into the safe range in response to a change position of the rotation angle at which the rotation angle changes from 360 degrees to 0 degrees included in the unsafe range. [6] A rotation detecting device according to any one of claims 1 to 5, wherein the absolute angle calculator is further configured to divide each counting area into several sub-counting areas, and to shift the angle of rotation to move the uncertain area into one of the sub-counting areas so that the uncertain area is contained in the one of the sub-counting areas, and wherein the other sub-counting areas that do not contain the unsafe area are safe areas. [7] Electric power steering device comprising: the rotation detecting device according to any one of claims 1 to 6; and the motor for outputting a steering torque for a steering operation of a vehicle.

Citation Information

Patent Citations

  • ROTATING ANGLE DETECTOR AND ELECTRIC POWER STEERING DEVICE USING THE SAME

    JP5958572B2

  • Revolution counter and method for determining the number of revolutions of a shaft

    DE102008054973A1

  • Rotary angle detection device and power steering device that uses this

    DE102015102161A1

  • Detector for speed of revolution

    JP1990161359A

  • JP000H02161359A