WO2018207680A1 - 回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法 - Google Patents

回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法 Download PDF

Info

Publication number
WO2018207680A1
WO2018207680A1 PCT/JP2018/017395 JP2018017395W WO2018207680A1 WO 2018207680 A1 WO2018207680 A1 WO 2018207680A1 JP 2018017395 W JP2018017395 W JP 2018017395W WO 2018207680 A1 WO2018207680 A1 WO 2018207680A1
Authority
WO
WIPO (PCT)
Prior art keywords
rotation angle
rotation
electric motor
value
resistance value
Prior art date
Application number
PCT/JP2018/017395
Other languages
English (en)
French (fr)
Inventor
軍安 都
勤 阿部
Original Assignee
アルプス電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アルプス電気株式会社 filed Critical アルプス電気株式会社
Priority to JP2019517581A priority Critical patent/JP6714775B2/ja
Priority to CN201880030510.XA priority patent/CN110603728B/zh
Publication of WO2018207680A1 publication Critical patent/WO2018207680A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P7/00Arrangements for regulating or controlling the speed or torque of electric DC motors
    • H02P7/06Arrangements for regulating or controlling the speed or torque of electric DC motors for regulating or controlling an individual dc dynamo-electric motor by varying field or armature current

Definitions

  • the present invention relates to a motor with a rotation angle detector, a rotation angle detector for the motor, and a method for detecting the rotation angle of a motor equipped with a commutator.
  • a motor control device that drives a motor with a brush that constitutes a steering assist mechanism of an electric power steering device is known (see Patent Document 1 and Patent Document 2).
  • This apparatus is configured to calculate a motor angular velocity based on a motor current, a voltage between motor terminals, a resistance between motor terminals, and a back electromotive force constant.
  • the resistance characteristic used for estimating the rotational angular velocity of the motor without providing an external sensor for detecting the steering holding state in which the rotation of the rotor of the motor can be regarded as being stopped is estimated. It is configured to update based on the value.
  • the steered state is detected, and the motor current and the motor obtained in the steered state are detected.
  • the resistance estimation value is calculated based on the voltage between the terminals.
  • An apparatus includes an electric motor and a rotation angle detector that detects a rotation angle of the electric motor, and the electric motor includes a commutator including a plurality of commutator pieces, and the rotation angle.
  • the detector includes a resistance setting unit that sets a resistance value corresponding to the resistance characteristic of the electric motor, a detection voltage value detected by a voltage detection unit that detects a voltage between terminals of the electric motor, and a current that detects a current flowing through the electric motor.
  • a rotation information calculation unit that calculates information related to rotation of the electric motor based on a detected current value detected by the detection unit and a set resistance value set by the resistance setting unit, and the resistance setting unit includes: An estimated resistance value is derived based on the detected voltage value and the detected current value detected in a rotation stable state in which rotation is stable, and the set resistance value is updated using the estimated resistance value. ing
  • FIG. 1 is a schematic diagram illustrating a configuration example of a rotation angle detector 100 according to an embodiment of the present invention.
  • the rotation angle detector 100 is a device that detects the rotation angle of the electric motor 10.
  • the rotation angle detector 100 detects the rotation angle of the electric motor 10 based on the voltage V between the terminals of the electric motor 10 and the current Im flowing through the electric motor 10.
  • the electric motor 10 is a DC commutator motor provided with a commutator.
  • the electric motor 10 is used, for example, for raising and lowering the window of an automobile, adjusting the angle of a door mirror, adjusting the air flow rate in an air conditioner, adjusting the optical axis of a headlight, and the like.
  • FIG. 2 is a schematic diagram of the commutator 20.
  • the commutator 20 includes eight commutator pieces 20a separated from each other by slits 20s.
  • the slit angle ⁇ c which is the central angle of the arc of each commutator piece 20a, is about 45 degrees.
  • the electric motor 10 is connected to a power source through four switches SW1 to SW4.
  • the switch SW1 and the switch SW3 are configured to rotate forward clockwise when the switch SW1 and the switch SW3 are closed, and to rotate counterclockwise when the switch SW2 and switch SW4 are closed. .
  • the current flowing through the forward rotating motor 10 has a positive value
  • the current flowing through the reverse rotating motor 10 has a negative value
  • the switch SW2 and the switch SW3 are closed, the current flowing through the forward rotating motor 10 has a negative value
  • the current flowing through the reverse rotating motor 10 has a positive value.
  • the electric motor 10 and the current detection unit 10b exist in a closed loop.
  • the electric resistance value of the electric motor 10 is sufficiently large, even if the two terminals of the electric motor 10 are short-circuited, the electric motor 10 rotates with inertia.
  • the electric resistance value is small, the electric motor 10 rapidly decelerates when the two terminals of the electric motor 10 are short-circuited.
  • a closed loop that passes through the resistor may be formed.
  • the voltage detector 10a detects the voltage V between the terminals of the electric motor 10.
  • the current detection unit 10 b detects the current Im flowing through the electric motor 10.
  • the rotation angle detector 100 mainly includes a voltage filter unit 30, a rotation angular velocity calculation unit 31, a rotation angle calculation unit 32, a current filter unit 33, a first signal generation unit 34, a second signal generation unit 35, and a rotation information calculation unit. 36, elements such as a resistance setting unit 37 are included. Each element may be configured by an electric circuit or may be configured by software.
  • the voltage filter unit 30 smoothes the waveform of the inter-terminal voltage V output from the voltage detection unit 10a.
  • the voltage filter unit 30 smoothes the waveform of the voltage V between the terminals so that the rotation angular velocity calculation unit 31 can accurately calculate the rotation angular velocity of the electric motor 10.
  • the voltage filter unit 30 is a low-pass filter, and outputs an inter-terminal voltage V ′ from which a high-frequency component in the waveform of the inter-terminal voltage V output by the voltage detection unit 10 a is removed as noise.
  • the rotation angular velocity calculation unit 31 calculates the rotation angular velocity of the electric motor 10 based on the voltage V ′ between the terminals of the electric motor 10 and the current Im flowing through the electric motor 10. In the example of FIG. 1, the rotational angular velocity calculation unit 31 calculates the rotational angular velocity ⁇ based on Expression (1).
  • Ke is a back electromotive force constant
  • Rm is a value (set resistance value) corresponding to the internal resistance of the electric motor 10
  • Lm is an inductance of the electric motor 10
  • dIm / dt is a single derivative of the current Im.
  • the single differentiation of the current Im is, for example, the difference between the previous value of the current Im and the current value of the current Im.
  • the set resistance value Rm is set by the resistance setting unit 37 when the rotation angle detector 100 is activated, for example.
  • the rotation angular velocity calculation unit 31 calculates the rotation angular velocity ⁇ of the electric motor 10 at a constant control cycle, and outputs the calculated rotation angular velocity ⁇ to the rotation angle calculation unit 32.
  • the rotation angle calculation unit 32 calculates the rotation angle ⁇ of the electric motor 10.
  • the rotation angle calculation unit 32 calculates the rotation angle ⁇ based on Expression (2).
  • the rotation angle calculation unit 32 calculates the rotation angle ⁇ by accumulating the rotation angular velocity ⁇ output by the rotation angular velocity calculation unit 31 at every constant control cycle, and outputs a rotation angle signal that is a signal related to the calculated rotation angle ⁇ . Output to the second signal generator 35.
  • the rotation angle calculation unit 32 resets the rotation angle ⁇ to zero according to the synchronization command from the second signal generation unit 35.
  • the current filter unit 33 outputs a ripple component Ir that is a specific frequency component included in the current Im output from the current detection unit 10b.
  • the current filter unit 33 is configured by, for example, a bandpass filter that passes the frequency of the ripple component Ir so that the first signal generation unit 34 can detect the ripple component Ir of the current Im.
  • the current filter unit 33 configured by a band-pass filter removes frequency components other than the ripple component Ir from the waveform of the current Im output from the current detection unit 10b.
  • the ripple component Ir used in the present embodiment is generated due to contact / separation between the commutator piece 20a and the brush. Therefore, the angle at which the electric motor 10 rotates during one cycle of the ripple component Ir is equal to the slit-to-slit angle ⁇ c.
  • the first signal generation unit 34 generates a signal estimated from the waveform of the ripple component Ir that the electric motor 10 has rotated by a certain angle.
  • This signal is a signal corresponding to the period of the ripple component Ir.
  • the fixed angle may be an angle corresponding to one cycle of the ripple component Ir or an angle corresponding to a half cycle.
  • a signal (first pulse signal Pa) estimated from the waveform of the ripple component Ir is generated.
  • the first signal generation unit 34 generates the first pulse signal Pa based on the waveform of the ripple component Ir output from the current filter unit 33.
  • FIG. 3A is a diagram illustrating an example of timing at which the first signal generation unit 34 generates the first pulse signal Pa.
  • the first signal generator 34 generates a first pulse signal Pa for each cycle of the ripple component Ir.
  • the first pulse signal Pa is generated every time the ripple component Ir exceeds the reference current value Ib.
  • the first pulse signal Pa is generated at times t1, t2, t3,. C1, C2, C3,..., Cn, etc. indicate the period of the ripple component Ir, and ⁇ 1, ⁇ 2, ⁇ 3,..., ⁇ n, etc., are generated by the first signal generator 34 for the first pulse signal.
  • the rotation angle ⁇ is a value calculated by the rotation angle calculation unit 32.
  • the first signal generation unit 34 typically generates the first pulse signal Pa every time the rotation angle ⁇ increases by the inter-slit angle ⁇ c.
  • the first signal generator 34 cannot detect the ripple component Ir and detect the first pulse signal Pa, for example, when the current Im and its ripple component Ir become small during the inertia rotation period after the motor 10 is powered off. May not be generated.
  • the first signal generation unit 34 may erroneously generate the first pulse signal Pa according to the inrush current. Such generation omission or erroneous generation of the first pulse signal Pa reduces the reliability of information related to the rotation of the electric motor 10 output by the rotation angle detector 100 (hereinafter referred to as “rotation information”).
  • the second signal generation unit 35 can generate a signal representing the rotation angle of the electric motor 10 with higher accuracy.
  • the second signal generation unit 35 generates a signal indicating that the electric motor 10 has rotated by a predetermined angle. For example, the second signal generation unit 35 generates the second pulse signal for each inter-slit angle ⁇ c based on the rotation angle signal output from the rotation angle calculation unit 32 and the first pulse signal Pa output from the first signal generation unit 34. Pb is generated.
  • the second pulse signal Pb is an example of information indicating that the electric motor 10 has rotated by a predetermined angle. Since the first pulse signal Pa is a signal estimated from only the waveform of the ripple component Ir, it may be erroneously output. On the other hand, since the second pulse signal Pb is a signal estimated from both the first pulse signal Pa and the rotation angle signal, the error can be reduced to a certain value or less.
  • FIG. 4 is a diagram illustrating an example of timing at which the second signal generation unit 35 generates the second pulse signal Pb.
  • the first threshold ⁇ u and the second threshold ⁇ d are thresholds for accepting the first pulse signal Pa, and are set based on, for example, the maximum phase difference between the rotation angle ⁇ and the actual rotation angle of the electric motor 10.
  • the second signal generator 35 generates a second pulse based on the first pulse signal Pa generated first by the first signal generator 34 when the rotation angle ⁇ is not less than the first threshold ⁇ u and less than the slit angle ⁇ c.
  • a signal Pb is generated.
  • the first threshold value ⁇ u may be a preset value or a dynamically set value.
  • FIG. 4 shows a reception range, which is an angle range in which the rotation angle ⁇ is greater than or equal to the first threshold ⁇ u and less than the inter-slit angle ⁇ c, as a dot pattern. In the example of FIG.
  • the rotation angles ⁇ 1, ⁇ 2, and ⁇ 5 when the first signal generation unit 34 generates the first pulse signals Pa1, Pa2, and Pa4 are equal to or greater than the first threshold ⁇ u and less than the inter-slit angle ⁇ c. That is, the remaining angles until each of the rotation angles ⁇ 1, ⁇ 2, and ⁇ 5 reaches the inter-slit angle ⁇ c is less than the angle ⁇ .
  • the angle ⁇ is set based on the maximum error between the rotation angle ⁇ and the actual rotation angle of the electric motor 10.
  • the second signal generation unit 35 regards the first pulse signals Pa1, Pa2, and Pa4 generated by the first signal generation unit 34 at times t1, t2, and t5 as not noise.
  • the second signal generator 35 generates the second pulse signals Pb1, Pb2, and Pb4 at times t1, t2, and t5.
  • the second signal generator 35 outputs a synchronization command to the rotation angle calculator 32. If noise having the same frequency component as the ripple component Ir occurs when the rotation angle ⁇ is less than the slit-to-slit angle ⁇ c and greater than or equal to the first threshold value ⁇ u, an erroneous first pulse signal Pa is output, and the second There is a possibility that the pulse signal Pb is generated.
  • the true ripple component Ir is detected at the next timing, and the rotation angle detector 100 can detect the correct rotation angle. Therefore, the rotation angle detected by the rotation angle detector 100 returns to the correct rotation angle even if it is temporarily detected by noise due to noise. Further, the error range is less than the angle ⁇ , and there is no practical problem.
  • the second signal generation unit 35 generates the second pulse signal Pb when the rotation angle ⁇ reaches a predetermined angle.
  • the predetermined angle is, for example, the slit-to-slit angle ⁇ c.
  • the rotation angle ⁇ is an angle calculated by the rotation angle calculation unit 32 and includes an error.
  • the second pulse signals Pb3, Pb5, and Pb6 are generated when the absolute values of the rotation angles ⁇ 3, ⁇ 7, and ⁇ 9 reach the inter-slit angle ⁇ c at times t3, t7, and t9.
  • the second signal generator 35 outputs a synchronization command to the rotation angle calculator 32.
  • the rotation angle calculation unit 32 resets the rotation angle ⁇ to zero.
  • the second signal generation unit 35 generates the second pulse signal Pb2 and then does not receive the first pulse signal Pa, so that the absolute value of the rotation angle ⁇ is the slit-to-slit angle.
  • the second pulse signal Pb3 is generated.
  • the second signal generation unit 35 determines that the absolute value of the rotation angle ⁇ calculated by the rotation angle calculation unit 32 is the angle between the slits. As long as ⁇ c is reached, the second pulse signal Pb is generated. Therefore, generation omission of the first pulse signal Pa can be reliably prevented.
  • the second signal generator 35 does not generate the second pulse signal Pb when the rotation angle ⁇ when the first signal generator 34 generates the first pulse signal Pa is less than the second threshold ⁇ d.
  • the second threshold value ⁇ d may be a preset value or a dynamically set value. Such a situation typically occurs after the second pulse signal Pb is generated due to the rotation angle ⁇ reaching a predetermined angle.
  • FIG. 4 shows a reception range, which is an angle range in which the rotation angle ⁇ is greater than or equal to zero and less than the second threshold value ⁇ d, with a dot pattern. In the example of FIG.
  • the first signal generator 34 performs the first pulse.
  • a signal Pa3 is generated.
  • the rotation angle ⁇ 4 at this time is less than the second threshold value ⁇ d. That is, the rotation angle ⁇ 4 integrated after being reset at time t3 is still less than the angle ⁇ .
  • the second signal generation unit 35 can determine that the first pulse signal Pa3 generated by the first signal generation unit 34 at time t4 can be integrated with the second pulse signal Pb3 generated at time t3.
  • the second pulse signal Pb3 is generated because the rotation angle ⁇ calculated by the rotation angle calculation unit 32 has reached the inter-slit angle ⁇ c even though the actual rotation angle has not reached the inter-slit angle ⁇ c. Occurs when.
  • the time when the first pulse signal Pa3 is generated immediately after the generation of the second pulse signal Pb3 is the moment when the actual rotation angle reaches the inter-slit angle ⁇ c. For this reason, the second signal generation unit 35 outputs a synchronization command to the rotation angle calculation unit 32 when the first pulse signal Pa3 is generated.
  • the second signal generator 35 does not generate the second pulse signal Pb at time t4.
  • a broken-line arrow toward “x” in FIG. 4 indicates that the second pulse signal Pb is not generated based on the first pulse signal Pa3. The same applies to the broken-line arrow toward “X” in the other drawings.
  • the first signal generation unit 34 may generate the first pulse signal Pa continuously in a short time. As described above, in FIG. 3A, every time the ripple component Ir exceeds the reference current value Ib, the first signal generation unit 34 generates the first pulse signal Pa. Immediately before and immediately after the ripple component Ir exceeds the reference current value Ib, the first pulse signal Pa is erroneously generated even if minute noise is superimposed. In this case, the interval at which the first signal generator 34 generates the first pulse signal Pa is less than the angle ⁇ (second threshold ⁇ d). In the example of FIG. 4, the first signal generation unit 34 generates the first pulse signal Pa2 at time t2.
  • the second signal generator 35 generates the second pulse signal Pb2 and outputs a synchronization command to the rotation angle calculator 32.
  • the rotation angle calculation unit 32 resets the rotation angle ⁇ .
  • the first signal generator 34 generates the first pulse signal Pa2 ′ at time t2 ′.
  • the rotation angle ⁇ at time t2 ′ is less than the second threshold value ⁇ d.
  • the second signal generator 35 does not generate the second pulse signal Pb and does not output a synchronization command.
  • a broken-line arrow toward “x” in FIG. 4 indicates that the second pulse signal Pb is not generated based on the first pulse signal Pa3.
  • any of the first pulse signals Pa generated continuously in a short time reaches the inter-slit angle ⁇ c. It cannot be determined whether the first pulse signal Pa indicates that the operation has been performed. However, in this case, since the plurality of first pulse signals Pa are generated within a short period (less than the angle ⁇ ), the rotation angle ⁇ reached the inter-slit angle ⁇ c at the time of the first first pulse signal Pa. Even if it is considered, there is no problem in practical use. Further, even if the same noise occurs every time the ripple component Ir exceeds the reference current value Ib, the error is suppressed to less than the angle ⁇ . That is, no error is accumulated. For this reason, it is possible to suppress the error within a range where there is no practical problem.
  • the second signal generation unit 35 is configured so that the rotation angle ⁇ when the first signal generation unit 34 generates the first pulse signal Pa is greater than or equal to the second threshold ⁇ d and less than the first threshold ⁇ u, that is, the rotation angle.
  • is within the angle range R1
  • the second pulse signal Pb is not generated, and a synchronization command is not output to the rotation angle calculation unit 32.
  • the rotation angle ⁇ 6 when the first signal generation unit 34 generates the first pulse signal Pa5 at time t6 is equal to or greater than the second threshold ⁇ d and less than the first threshold ⁇ u.
  • the second signal generation unit 35 can determine that the first pulse signal Pa5 is based on noise. Therefore, the second signal generation unit 35 does not generate the second pulse signal Pb at time t6 and does not output a synchronization command to the rotation angle calculation unit 32. That is, the influence of the first pulse signal Pa5 based on noise can be eliminated.
  • the second signal generator 35 does not generate the second pulse signal Pb when the rotation angle ⁇ when the first signal generator 34 generates the first pulse signal Pa is less than the second threshold ⁇ d. However, when the rotation angle ⁇ when the first signal generation unit 34 generates the first pulse signal Pa is less than the second threshold ⁇ d, the second signal generation unit 35 issues a synchronization command to the rotation angle calculation unit 32. There are cases where it is output and there is a case where a synchronization command is not output.
  • the two-signal generation unit 35 sends a synchronization command to the rotation angle calculation unit 32.
  • a plurality of first pulse signals Pa are generated when the rotation angle ⁇ is less than the second threshold ⁇ d. Then, the second and subsequent first pulse signals Pa are ignored. That is, the second signal generator 35 does not output a synchronization command.
  • the second pulse signal Pa is generated.
  • the signal generator 35 does not output a synchronization command. That is, when a plurality of first pulse signals Pa are generated while the first pulse signal Pa is less than the second threshold ⁇ d (angle ⁇ ), the second and subsequent first pulse signals Pa are ignored. That is, the second signal generator 35 does not output a synchronization command.
  • the rotation angle ⁇ 4 ′ when the first signal generation unit 34 generates the first pulse signal Pa3 ′ at time t4 ′ is less than the second threshold ⁇ d.
  • the first pulse signal Pa3 ′ is the second first pulse signal Pa after the most recent second pulse signal Pb3 is generated. Therefore, when receiving the first pulse signal Pa3 ′, the second signal generation unit 35 does not generate the second pulse signal Pb and does not output a synchronization command to the rotation angle calculation unit 32.
  • the rotation angle detector 100 can suppress the detection error of the rotation angle ⁇ of the electric motor 10 within a practically acceptable range. In particular, the rotation angle detector 100 does not accumulate errors. For this reason, regardless of the rotation speed of the electric motor 10, the error can be suppressed within a certain range.
  • the inventor discovered that the following premise is satisfied, and invented the rotation angle detector 100 described above. (1) The erroneous detection of the ripple component Ir due to minute noise is limited to just before or immediately after the ripple component Ir exceeds the reference current value Ib. In this case, the erroneous first pulse signal Pa is generated only for a short time before and after the correctly generated first pulse signal Pa (from before the angle ⁇ to after the angle ⁇ ).
  • the second signal generation unit 35 reduces the current Im and its ripple component Ir during the inertia rotation period after the power of the motor 10 is turned off, and the first signal generation unit 34 has a waveform of the ripple component Ir. Even if the first pulse signal Pa cannot be generated based on the second pulse signal Pb, the second pulse signal Pb can be generated.
  • the second signal generation unit 35 for example, generates an inrush current immediately after the motor 10 is turned on, and the first signal generation unit 34 erroneously generates the first pulse signal Pa according to the inrush current. Even in this case, the second pulse signal Pb corresponding to the first pulse signal Pa is not generated. That is, the influence of the first pulse signal Pa can be eliminated.
  • the second signal generation unit 35 generates the first pulse signal Pa even if the first signal generation unit 34 erroneously generates the first pulse signal Pa due to noise or the like.
  • the corresponding second pulse signal Pb is not generated, and a synchronization command is not output to the rotation angle calculation unit 32.
  • the rotation angle detector 100 calculates the rotation information of the motor 10 based on the second pulse signal Pb generated based on both the first pulse signal Pa and the rotation angle signal. Reliability can be improved.
  • the second signal generator 35 outputs a direction signal indicating the rotation direction of the electric motor 10.
  • the second signal generation unit 35 outputs a positive value as the rotation angle ⁇ if the rotation direction is the forward rotation direction, and outputs a negative value as the rotation angle ⁇ if the rotation direction is the reverse rotation direction.
  • the rotation angle ⁇ has a positive value when the current flowing through the electric motor 10 is a positive value, and has a negative value when the current flowing through the electric motor 10 is a negative value.
  • the rotation angle ⁇ has a positive value when the current flowing through the electric motor 10 has a negative value, and has a negative value when the current flowing through the electric motor 10 has a positive value.
  • the rotation information calculation unit 36 calculates rotation information of the electric motor 10.
  • the rotation information of the electric motor 10 includes, for example, a rotation amount (rotation angle) from the reference rotation position, a rotation number from the reference rotation position, and the like.
  • the rotation information of the electric motor 10 may be a value converted into the relative position of the upper edge of the window with respect to the reference position, the opening amount of the window, or the like.
  • statistical values such as an average value, a maximum value, a minimum value, and a median value of the rotation angular velocity ⁇ in a certain period may be included. In the example of FIG.
  • the rotation information calculation unit 36 calculates rotation information of the electric motor 10 based on the output of the second signal generation unit 35. For example, the amount of rotation after the rotation of the electric motor 10 is calculated by multiplying the number of second pulse signals Pb generated after the rotation of the electric motor 10 is multiplied by the inter-slit angle ⁇ c. At this time, the rotation information calculation unit 36 determines whether to increment or decrement the number of second pulse signals Pb based on the direction signal output together with the second pulse signal Pb by the second signal generation unit 35. Alternatively, the rotation information calculation unit 36 separately counts the number of second pulse signals Pb received together with the direction signal representing the forward rotation direction and the number of second pulse signals Pb received together with the direction signal representing the reverse rotation direction. Then, the rotation amount of the electric motor 10 may be calculated based on the difference between them.
  • the resistance setting unit 37 sets a resistance value corresponding to the resistance characteristic of the electric motor 10. For example, when the rotation angle detector 100 is activated, the resistance setting unit 37 sets a value stored in advance in the nonvolatile storage medium as the set resistance value Rm in Expression (1).
  • the set resistance value Rm may be updated dynamically.
  • FIG. 5 is a flowchart of the rotation amount calculation process.
  • the rotation angle detector 100 performs this rotation amount calculation process while the electric motor 10 is being driven.
  • the rotation angle detector 100 acquires the inter-terminal voltage V and the current Im (step ST1).
  • the rotation angle detector 100 acquires the inter-terminal voltage V output from the voltage detection unit 10a and the current Im output from the current detection unit 10b for each predetermined control cycle.
  • the rotation angle detector 100 calculates the rotation angular velocity ⁇ and the rotation angle ⁇ (step ST2).
  • the rotation angular velocity calculation unit 31 of the rotation angle detector 100 calculates the rotation angular velocity ⁇ for each predetermined control cycle by substituting the inter-terminal voltage V ′ and the current Im into the equation (1).
  • the rotation angle calculation unit 32 of the rotation angle detector 100 calculates the rotation angle ⁇ by integrating the rotation angular velocities ⁇ calculated for each control cycle.
  • the rotation angle detector 100 determines whether or not the rotation angle ⁇ is less than a predetermined angle (step ST3).
  • the second signal generation unit 35 of the rotation angle detector 100 determines whether or not the rotation angle ⁇ is less than the inter-slit angle ⁇ c.
  • the second signal generator 35 determines that the first pulse signal Pa has not been generated at the timing up to the inter-slit angle ⁇ c. . In this case, the second signal generator 35 sets the flag F to “False” to indicate that the first pulse signal Pa is not generated (step ST3A).
  • the flag F is a flag for indicating whether or not the first pulse signal Pa is generated. The initial value of the flag F is “False” indicating that the first pulse signal Pa is not generated. The flag F being “True” indicates that the first pulse signal Pa has already been generated.
  • the second pulse signal Pb is generated (step ST10), and the rotation angle ⁇ is reset to zero (step ST11).
  • the rotation angle ⁇ is the rotation angles ⁇ 3, ⁇ 7 at the times t3, t7, t9. , ⁇ 9 is reached.
  • the second signal generator 35 determines whether or not the first pulse signal Pa is generated (step ST4). . In the example of FIG. 1, it is determined whether or not the first pulse signal Pa is generated by the first signal generation unit 34.
  • the rotation angle is detected.
  • the device 100 calculates the rotation amount (step ST7).
  • the rotation information calculation unit 36 calculates the rotation amount of the electric motor 10 based on the output of the second signal generation unit 35. In this case, there is no change in the calculated rotation amount. This corresponds to the case where the rotation angle ⁇ is the rotation angle ⁇ 0 at time t0 in the example of FIG.
  • the rotation angle detector 100 determines whether or not the rotation angular velocity ⁇ has become zero (step ST8).
  • the rotation angle detector 100 determines that the rotation angular velocity ⁇ is not zero (NO in step ST8)
  • the rotation angle detector 100 returns the process to step ST1 and determines that the rotation angular velocity ⁇ is zero (step ST8). YES), the rotation amount calculation process is terminated.
  • the second signal generation unit 35 determines whether or not the rotation angle ⁇ is less than the first threshold ⁇ u (step ST5). This is because the first pulse signal Pa generated at a timing less than the first threshold ⁇ u is highly likely to be based on noise.
  • the second signal generator 35 sets the flag F to “True” to indicate whether or not the first pulse signal Pa has been generated. (Step ST5A). Then, the second signal generator 35 generates the second pulse signal Pb (step ST10), and resets the rotation angle ⁇ to zero (step ST11). This is because when the first pulse signal Pa is generated when the rotation angle ⁇ is equal to or greater than the first threshold ⁇ u, the actual rotation angle at the time when the first pulse signal Pa is generated is close to the inter-slit angle ⁇ c. This corresponds to the case where the first pulse signals Pa1, Pa2, Pa4 are generated at times t1, t2, t5 in the example of FIG.
  • the second signal generator 35 cannot determine at this time that the first pulse signal Pa is not based on noise.
  • the rotation angle ⁇ may include some error.
  • the generation timing of the first pulse signal Pa may be slightly shifted due to noise or the like. For this reason, the time when the rotation angle ⁇ reaches the slit-to-slit angle ⁇ c may be different from the time when the first pulse signal Pa is generated. For this reason, it is because it is not known which is earlier, the time when the rotation angle ⁇ reaches the inter-slit angle ⁇ c or the time when the first pulse signal Pa is generated. Therefore, the second signal generator 35 determines whether or not the rotation angle ⁇ is less than the second threshold ⁇ d with respect to the first pulse signal Pa received first after generating the latest second pulse signal Pb. (Step ST6).
  • the second signal generation unit 35 checks the flag F (step ST6A).
  • the flag F is a flag for determining that the first pulse signal Pa is continuously generated.
  • the flag F is “True”
  • the first pulse signal Pa is the second and subsequent first pulse signals Pa generated continuously.
  • the rotation angle detector 100 calculates the rotation amount (step ST7). This corresponds to the case where the first pulse signals Pa2 ′ and Pa3 ′ are generated at times t2 ′ and t4 ′ in the example of FIG.
  • the second signal generation unit 35 sets the flag F to “True” (step ST6B). Thereafter, the second signal generation unit 35 resets the rotation angle ⁇ to zero (step ST11). This is because when the rotation angle ⁇ is less than the second threshold ⁇ d, the actual rotation angle when the first pulse signal Pa is generated is close to the inter-slit angle ⁇ c. That is, when it is less than the second threshold ⁇ d, it can be determined that the first pulse signal Pa corresponds to the second pulse signal Pb generated immediately before. This corresponds to the case where the first pulse signals Pa3 and Pa6 are generated at times t4 and t8 in the example of FIG. That is, it can be determined that the first pulse signals Pa3 and Pa6 correspond to the second pulse signals Pb3 and Pb5.
  • the second signal generation unit 35 When it is determined that the rotation angle ⁇ related to the first first pulse signal Pa is equal to or larger than the second threshold ⁇ d (NO in step ST6), that is, when it is determined that the rotation angle ⁇ is within the angle range R1, the second signal generation unit 35 Then, it is determined that the first pulse signal Pa is based on noise. In this case, the second signal generator 35 does not generate the second pulse signal Pb and does not reset the rotation angle ⁇ . Then, the rotation information calculation unit 36 calculates the rotation amount of the electric motor 10 based on the output of the second signal generation unit 35. This corresponds to the case where the first pulse signal Pa5 is generated at time t6 in the example of FIG. That is, the second signal generation unit 35 determines that the first pulse signal Pa5 is based on noise.
  • the rotation angle detector 100 calculates the rotation amount of the electric motor 10 (step ST7).
  • the rotation information calculation unit 36 of the rotation angle detector 100 multiplies the number of second pulse signals Pb generated after the rotation of the electric motor 10 is multiplied by the inter-slit angle ⁇ c. The amount of rotation after the start of rotation is calculated.
  • FIG. 6 is a diagram showing transitions of the composite pulse signal and the hall pulse signal.
  • the synthesized pulse signal is a signal obtained by synthesizing a plurality of pulses of the second pulse signal Pb into one pulse.
  • the slit-to-slit angle ⁇ c is 90 degrees.
  • the first pulse signal Pa and the second pulse signal Pb are basically generated every time the rotating shaft of the electric motor 10 rotates 90 degrees.
  • the synthesized pulse signal is generated by synthesizing two pulses of the second pulse signal Pb into one pulse. That is, the rotation angle detector 100 is configured to generate one composite pulse signal each time the rotation shaft of the electric motor 10 rotates 180 degrees.
  • the hall pulse signal is a pulse signal output from the hall sensor.
  • the hall sensor detects a magnetic flux generated by a magnet attached to the rotating shaft of the electric motor 10 for comparison between the second pulse signal Pb and the hall pulse signal.
  • the rotation angle detector 100 is configured to generate one Hall pulse signal each time the rotation shaft of the electric motor 10 rotates 180 degrees.
  • FIG. 7 is a flowchart of the update process.
  • the resistance setting unit 37 repeatedly executes this update process at a predetermined control cycle.
  • the resistance setting unit 37 determines whether or not it is in a rotation stable state in which the rotation of the electric motor 10 is stable (step ST21).
  • the rotation stable state for example, the fluctuation range of the voltage V between the terminals of the electric motor 10 in a predetermined period is less than a predetermined value, and the fluctuation width of the current Im flowing in the electric motor 10 in the predetermined period is less than a predetermined value.
  • FIG. 8 shows an example of the rotation stable state of the electric motor 10 used for raising and lowering the window of the automobile. Specifically, the temporal transition of the inter-terminal voltage V, the current Im, and the first pulse signal Pa when an inching operation for lowering the window is performed is shown.
  • the inching operation for lowering the window is, for example, a short time pressing operation of the window lowering button.
  • FIG. 8 shows a state where the switches SW1 and SW3 (see FIG. 1) are closed when the window lowering button is pressed at time t1, and the inter-terminal voltage V and current Im increase.
  • the switch SW1 is opened and the switch SW2 (see FIG.
  • FIG. 9 shows temporal transitions of the inter-terminal voltage V, the current Im, and the first pulse signal Pa in the first rotation stable state.
  • each time the resistance setting unit 37 detects a predetermined number of first pulse signals Pa the resistance setting unit 37 calculates the average values of the inter-terminal voltage V and the current Im during that period. Other statistical values such as a median value, a mode value, a maximum value, and a minimum value may be used.
  • Periods T1, T2, T3,..., Tn represent periods required to detect the eight first pulse signals Pa.
  • the average terminal voltages V1, V2, V3,..., Vn represent the average value of the terminal voltages V in the periods T1, T2, T3,.
  • the average currents Im1, Im2, Im3,..., Imn represent average values of the current Im in the periods T1, T2, T3,.
  • the resistance setting unit 37 determines that the electric motor 10 is in a rotationally stable state when, for example, the following conditions are satisfied.
  • ⁇ T represents a period threshold
  • ⁇ Im represents a current threshold
  • ⁇ V represents a voltage threshold
  • i represents an integer of 1 to n.
  • the resistance setting unit 37 has an absolute value of a difference between each of the periods T1 to Tn with respect to each period T1 smaller than the period threshold value ⁇ T, and an absolute value of the difference between the average currents Im1 to Imn with respect to each average current Im1
  • the absolute value of the difference between the average inter-terminal voltages V1 to Vn with respect to the average inter-terminal voltage V1 is smaller than the threshold value ⁇ Im and smaller than the voltage threshold value ⁇ V
  • the electric motor 10 is in a rotationally stable state. That is, when the generation interval of the first pulse signal Pa, the current Im, and the inter-terminal voltage V are all stable, it is determined that the electric motor 10 is in a rotation stable state.
  • FIG. 9 shows that the absolute value of the difference between the periods T2, T3, and Tn with respect to the period T1 is smaller than the period threshold value ⁇ T.
  • the dot pattern area in FIG. 9 represents the range of T1 ⁇ ⁇ T.
  • the illustration by the alternate long and short dash line in FIG. 9 indicates that the absolute value of the difference between the average terminal voltages V2, V3, and Vn with respect to the average terminal voltage V1 is smaller than the voltage threshold value ⁇ V.
  • the illustration by the two-dot chain line in FIG. 9 represents that the absolute value of the difference between the average currents Im2, Im3, and Imn with respect to the average current Im1 is smaller than the current threshold value ⁇ Im.
  • the resistance setting unit 37 can determine that the electric motor 10 was in a rotationally stable state at a time t3 from a time t2 to a time t3. That is, it can be determined that the electric motor 10 is in a rotationally stable state at the present time.
  • the resistance setting unit 37 calculates the rotation angular velocity ⁇ ′ based on the cycle of the first pulse signal Pa (step ST22). For example, the resistance setting unit 37 calculates the rotational angular velocity ⁇ ′ based on the following equation (3).
  • n represents the number of periods T
  • M represents the number of first pulse signals Pa in the period T.
  • the rotational angular velocity ⁇ ′ represents an average rotational angular velocity [rad / s] while the motor 10 is rotated 10 times.
  • the resistance setting unit 37 can calculate the rotational angular velocity ⁇ ′ based on the period of the first pulse signal Pa (80 periods in the above example).
  • the resistance setting unit 37 calculates an estimated resistance value R′m based on the rotational angular velocity ⁇ ′ (step ST23). For example, the resistance setting unit 37 calculates an estimated resistance value R′m based on the following equation (4).
  • Equation (4) is a basic theoretical equation of the motor, Ke represents a back electromotive force constant, and Ke ⁇ ⁇ ′ represents a back electromotive force estimated value. That is, a value obtained by subtracting the estimated back electromotive force value from the average value of the average terminal voltages V1 to Vn by the average value of the average currents Im1 to Imn is derived as the estimated resistance value R′m.
  • the average value may be another statistical value such as a median value, a mode value, a maximum value, or a minimum value.
  • the resistance setting unit 37 determines whether or not the estimated resistance value R′m is within the normal range (step ST24).
  • the resistance setting unit 37 refers to the upper limit and the lower limit of the normal range registered in advance in the nonvolatile storage medium, and determines whether or not the estimated resistance value R′m is within the normal range.
  • At least one of the upper limit and the lower limit of the normal range may be dynamically changed according to the outside air temperature, the temperature of the electric motor 10, and the like.
  • the resistance setting unit 37 updates the set resistance value Rm using the estimated resistance value R′m (step ST25).
  • the resistance setting unit 37 updates the set resistance value Rm using the estimated resistance value R′m at the same period as the period for calculating the estimated resistance value R′m.
  • the resistance setting unit 37 may update the set resistance value Rm at a cycle different from the cycle for calculating the estimated resistance value R′m.
  • the set resistance value Rm may be updated at a cycle shorter than the cycle for calculating the estimated resistance value R′m.
  • the resistance setting unit 37 may update the set resistance value Rm with, for example, the resistance value R ′′ m derived by the following equation (5).
  • Km represents a positive real constant of 1.0 or less. That is, as the value of Km is closer to 1.0, the set resistance value Rm is updated with a resistance value R ′′ m that is closer to the estimated resistance value R′m. Typically, Km is less than 1.0. This is to prevent sudden changes in the set resistance value Rm, vibration, etc.
  • Km may be a fixed value or a variable value registered in advance in the nonvolatile storage medium, and is a value that is dynamically calculated and set. For example, the Km when an inching operation (a relatively short pressing operation) is performed is set to be larger than the Km when a normal operation (a relatively long pressing operation) is performed. This is because when the inching operation is performed, the time available for repeatedly executing the process of updating the set resistance value Rm is shorter than when the inching operation is performed.
  • the resistance setting unit 37 determines that the difference between the updated set resistance value Rm (resistance value R ′′ m) and the estimated resistance value R′m is the set resistance value before update.
  • the set resistance value Rm is updated so as to be smaller than the difference between Rm and the estimated resistance value R′m, and the set resistance value Rm is gradually brought closer to the estimated resistance value R′m while preventing a sudden change in the set resistance value Rm.
  • the resistance setting unit 37 gradually changes the set resistance value Rm to the estimated resistance value R′m.
  • the resistance setting unit 37 is configured to calculate the estimated resistance value R′m before the new estimated resistance value R′m is calculated.
  • the set resistance value Rm can be gradually brought closer to the estimated resistance value R′m. That.
  • the resistance R "m is to approach the estimated resistance value R'm whenever derived.
  • the resistance setting unit 37 is The current update process is terminated without updating the set resistance value Rm.
  • the rotation angular velocity calculation unit 31 calculates the rotation angular velocity ⁇ based on Expression (1) using the current set resistance value Rm.
  • the resistance setting unit 37 calculates the rotational angular velocity ⁇ ′ of the electric motor 10 from the cycle of the first pulse signal Pa when the electric motor 10 is in the rotation stable state. Then, the estimated resistance value R′m can be derived based on the calculated rotational angular velocity ⁇ ′, and the set resistance value Rm in the equation (1) can be updated using the estimated resistance value R′m. Therefore, the set resistance value Rm can be appropriately updated in accordance with the change in resistance characteristics of the electric motor 10 due to the temperature change, aging change, etc. of the electric motor 10.
  • the secular change includes, for example, commutator piece 20a wear, brush wear, and the like.
  • the rotation angle detector 100 for example, the current Im and its ripple component Ir become small in the inertial rotation period after the power of the motor 10 is turned off, and the first signal generation unit 34 determines the first based on the waveform of the ripple component Ir.
  • the 1-pulse signal Pa cannot be generated, information related to the rotation of the electric motor 10 can be acquired with higher reliability.
  • the second pulse signal Pb is more accurately generated based on the rotation angular velocity ⁇ and the rotation angle ⁇ calculated in real time using an appropriate set resistance value Rm, regardless of the first pulse signal Pa. Thereby, the information regarding rotation of the electric motor 10 can be acquired with higher reliability.
  • the electric motor 10 used for raising and lowering the window of an automobile even when the inching operation for raising and lowering the window is performed, information on the rotation of the electric motor 10 is more reliable even during the inertial rotation period of the electric motor 10. Can be acquired by sex.
  • the rotation angle detector 100 that acquires the rotation information of the electric motor 10 including the commutator 20 is detected by the resistance setting unit 37 that sets a resistance value corresponding to the resistance characteristic of the electric motor 10 and the voltage detection unit 10a.
  • a rotation information calculation unit 36 that calculates information related to rotation of the electric motor 10 based on the detected voltage value, the detection current value detected by the current detection unit 10b, and the set resistance value Rm set by the resistance setting unit 37. Then, the resistance setting unit 37 derives the estimated resistance value R′m in real time based on the detected voltage value and the detected current value detected in the rotation stable state in which the rotation of the electric motor 10 is stable, and the estimated resistance value The set resistance value Rm is updated in real time using R′m.
  • the rotation information of the electric motor 10 can be acquired with high reliability. This means that parts necessary for using a rotation sensor such as a sensor interface circuit and a harness can be omitted. Therefore, weight reduction, cost reduction, size reduction, etc. can be realized.
  • the electric motor with a rotation angle detector includes an electric motor 10 and a rotation angle detector 100 that detects the rotation angle of the electric motor 10.
  • the electric motor 10 includes a commutator 20 including a plurality of commutator pieces 20a.
  • the resistance setting unit 37 updates the set resistance value Rm using the estimated resistance value R′m, and the estimated resistance value R′m is outside the predetermined range. In such a case, the set resistance value Rm is not updated. Therefore, it is possible to prevent the set resistance value Rm from being updated by an abnormal estimated resistance value R′m.
  • the rotation stable state for example, the fluctuation width of the inter-terminal voltage V in a predetermined period is less than a predetermined value, the fluctuation width of the current Im in the predetermined period is less than a predetermined value, and the first pulse signal in the predetermined period This is a state where the fluctuation range of the period of Pa is less than a predetermined value.
  • the rotation stable state may be another state determined using at least one of the voltage V between terminals, the current Im, and the cycle of the first pulse signal Pa.
  • the standard deviation of the inter-terminal voltage V in a predetermined period is less than a predetermined value
  • the standard deviation of the current Im in the predetermined period is less than a predetermined value
  • the standard of the cycle of the first pulse signal Pa in the predetermined period may be less than a predetermined value
  • the integrated value of the inter-terminal voltage V in a predetermined period may be in a predetermined range
  • the integrated value of the current Im in the predetermined period may be in a predetermined range.
  • the resistance setting unit 37 desirably has a difference between the set resistance value Rm after update and the estimated resistance value R′m smaller than the difference between the set resistance value Rm before update and the estimated resistance value R′m.
  • the set resistance value Rm is configured to be updated. This is to make the set resistance value Rm gradually approach the estimated resistance value R′m while preventing a sudden change in the set resistance value Rm.
  • the rotation angle detector 100 calculates the rotation angle calculated based on the first pulse signal Pa, which is an example of the first signal generated based on the ripple component Ir of the current Im, the inter-terminal voltage V, and the current Im.
  • a second pulse signal Pb which is an example of the second signal, is generated using ⁇ . That is, the second pulse signal Pb is generated using the first pulse signal Pa and the rotation angle ⁇ , which are two parameters derived by different methods. Therefore, even if one parameter is not derived properly, the other parameter can compensate for the problem. As a result, the rotation information of the electric motor 10 can be acquired with higher reliability.
  • the rotation angle calculation unit 32 is configured to calculate the rotation angle ⁇ by integrating the rotation angular velocity ⁇ of the electric motor 10 calculated based on the inter-terminal voltage V and the current Im, for example. Therefore, the rotation angle calculation unit 32 can stably and continuously calculate the rotation angle ⁇ over the entire period including the period immediately after the start of the electric motor 10 and the inertia rotation period. And the 2nd signal generation part 35 is constituted so that the 2nd pulse signal Pb may be generated immediately, for example, when rotation angle theta reaches a predetermined angle.
  • the second signal generation unit 35 represents that the first pulse signal Pa has been rotated by a predetermined angle based on the rotation angle ⁇ that is stably and continuously calculated even when generation failure of the first pulse signal Pa occurs.
  • the second pulse signal Pb can be generated in real time. Therefore, the rotation angle detector 100 can calculate the rotation information of the electric motor 10 without delay.
  • the second signal generation unit 35 is configured to output a command to the rotation angle calculation unit 32 to reset the rotation angle ⁇ to zero when the rotation angle ⁇ reaches a predetermined angle, for example. Therefore, the rotation angle detector 100 limits the maximum value of the rotation angle ⁇ calculated by the rotation angle calculation unit 32 to a predetermined angle, so that the memory size necessary for storing the rotation angle ⁇ can be reduced.
  • the predetermined angle is, for example, the central angle of the arc of the commutator piece 20a, that is, the slit-to-slit angle ⁇ c. Therefore, the rotation angle detector 100 can set the maximum value of the accumulated error of the rotation angle ⁇ calculated by the rotation angle calculation unit 32 as the inter-slit angle ⁇ c.
  • the reception range is, for example, a range of the maximum error of the rotation angle ⁇ that occurs each time the electric motor 10 rotates by the inter-slit angle ⁇ c. That is, when the rotation angular velocity calculation unit 31 calculates the rotation angular velocity ⁇ larger than the actual rotation angle, the first pulse signal Pa based on the actual rotation angle is generated (including an error). Is the second threshold ⁇ d. Further, when the rotational angular velocity calculation unit 31 calculates the rotational angular velocity ⁇ smaller than the actual rotational angle velocity ⁇ , the first pulse signal Pa based on the actual rotational angle is generated (including an error). Is the first threshold value ⁇ u. Therefore, in the rotation angle detector 100, the error of the rotation angle ⁇ calculated by the rotation angle calculation unit 32 is not accumulated. That is, no matter how many times the motor 10 rotates, the error can be in the range of - ⁇ to + ⁇ .
  • the second signal generator 35 is configured to generate the second pulse signal Pb when the first pulse signal Pa is received and the rotation angle ⁇ is equal to or greater than the first threshold ⁇ u, for example.
  • the first threshold ⁇ u is set in advance as a value smaller than a predetermined angle (inter-slit angle ⁇ c), for example.
  • the second signal generation unit 35 regards the first pulse signal Pa generated when the rotation angle ⁇ is equal to or greater than the first threshold ⁇ u as not based on noise. Even if the first pulse signal Pa is not generated, the second pulse signal Pb is generated when the rotation angle ⁇ reaches a predetermined angle (inter-slit angle ⁇ c). Therefore, it is possible to reliably eliminate the influence on the calculation result of the rotation information due to the generation failure of the first pulse signal Pa.
  • the second signal generator 35 is configured not to generate the second pulse signal Pb if the rotation angle ⁇ is less than the first threshold ⁇ u when the first pulse signal Pa is received, for example.
  • the second signal generation unit 35 can determine that the first pulse signal Pa generated when the rotation angle ⁇ is less than the first threshold ⁇ u is based on noise. And it can prevent generating the 2nd pulse signal Pb corresponding to the 1st pulse signal Pa generated based on noise. Therefore, the influence on the calculation result of the rotation information by the first pulse signal Pa generated based on the noise can be surely eliminated.
  • the rotation angle calculation unit 32 issues a command to reset the rotation angle ⁇ to zero.
  • the second threshold ⁇ d is set in advance as a value whose phase is delayed by ⁇ from a predetermined angle (inter-slit angle ⁇ c).

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Direct Current Motors (AREA)
  • Transmission And Conversion Of Sensor Element Output (AREA)

Abstract

整流子(20)を備えた電動機(10)の回転角度を検出する回転角度検出器(100)は、電動機(10)の抵抗特性に対応する抵抗値を設定する抵抗設定部(37)と、電圧検出部(10a)が検出した検出電圧値と電流検出部(10b)が検出した検出電流値と抵抗設定部(37)が設定した設定抵抗値(Rm)とに基づいて電動機(10)の回転に関する情報を算出する回転情報算出部(36)とを含む。抵抗設定部(37)は、電動機(10)の回転が安定している状態で検出された検出電圧値と検出電流値とに基づいて推定抵抗値(R'm)を導き出し、推定抵抗値(R'm)を用いて設定抵抗値(Rm)を更新するように構成されている。

Description

回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法
 本発明は、回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法に関する。
 従来、電動パワーステアリング装置の操舵補助機構を構成するブラシ付きモータを駆動するモータ制御装置が知られている(特許文献1及び特許文献2参照。)。この装置は、モータ電流とモータ端子間電圧とモータ端子間抵抗と逆起電力定数とに基づいてモータ角速度を算出するように構成されている。また、モータのロータの回転が停止しているとみなせる状態である保舵状態を検出するための外部センサを備えることなしに、モータの回転角速度を推定するために用いられる抵抗特性を、抵抗推定値に基づいて更新するように構成されている。具体的には、逆起電力定数とモータ角速度の積である逆起電力推定値の絶対値が閾値以下の場合を保舵状態として検出し、その保舵状態のときに得られるモータ電流とモータ端子間電圧に基づいて抵抗推定値を算出するように構成されている。
特開2012-29358号公報 特開2013-251989号公報
 しかしながら、特許文献1及び特許文献2に記載の角速度推定値ωの演算方法(特許文献1の式(3)、特許文献2の式(3)参照。)には、モータのインダクタンス上に発生し得る電圧成分が現れていないため、インダクタンスに流れる電流の変化量が無視できるレベルにならない限り、算出した推定抵抗値の誤差が大きくなるおそれがある。また、モータ端子間抵抗は、保舵状態のときに拘束状態にあるモータの整流子とブラシの位置関係に応じて大きく変化するため、この点においても、算出した推定抵抗値の誤差が大きくなるおそれがある。更に、最も根本的な問題は、未知のパラメータ(逆起電力推定値及び抵抗推定値)の解を導き出すために必要な独立条件式の数(1つ)が未知のパラメータの数(2つ)よりも少ないため、理論的に解の組み合わせが幾通りも得られてしまう点にある。この場合、最小二乗法、加重平均等の方法を利用したとしても、パラメータの解は複数の解のうちの何れかに近づくのみであるため、本来導き出すべき解が得られるとは限らない(数学上の局所最適現象)。そのため、特許文献1及び特許文献2に記載の方法では、モータの正確な回転量を適時に取得できず、信頼性の高い回転量を取得できないおそれがある。
 上述の点に鑑み、直流整流子電動機の回転に関する情報をより高い信頼性で取得できる装置を提供することが望まれる。
 本発明の実施例に従った装置は、電動機と、前記電動機の回転角度を検出する回転角度検出器とを備え、前記電動機は、複数の整流子片からなる整流子を有し、前記回転角度検出器は、前記電動機の抵抗特性に対応する抵抗値を設定する抵抗設定部と、前記電動機の端子間電圧を検出する電圧検出部が検出した検出電圧値と前記電動機を流れる電流を検出する電流検出部が検出した検出電流値と前記抵抗設定部が設定した設定抵抗値とに基づいて前記電動機の回転に関する情報を算出する回転情報算出部と、を含み、前記抵抗設定部は、前記電動機の回転が安定している回転安定状態で検出された前記検出電圧値と前記検出電流値とに基づいて推定抵抗値を導き出し、該推定抵抗値を用いて前記設定抵抗値を更新するように構成されている。
 上述の手段により、直流整流子電動機の回転に関する情報をより高い信頼性で取得できる装置を提供できる。
本発明の実施例に係る回転角度検出器の構成例を示す概略図である。 整流子の概略図である。 第1パルス信号が生成されるタイミングの一例を示す図である。 第1パルス信号が生成されるタイミングの別の一例を示す図である。 第2パルス信号が生成されるタイミングの一例を示す図である。 回転量算出処理のフローチャートである。 合成パルス信号及びホールパルス信号のそれぞれの推移を示す図である。 更新処理のフローチャートである。 電動機の回転安定状態の一例を示す図である。 回転安定状態のときの電動機の端子間電圧、電流及び第1パルス信号の時間的推移を示す図である。
 以下、図を参照し、本発明の実施例に係る回転角度検出器100について説明する。図1は、本発明の実施例に係る回転角度検出器100の構成例を示す概略図である。
 回転角度検出器100は、電動機10の回転角度を検出する装置である。図1の例では、回転角度検出器100は、電動機10の端子間電圧Vと電動機10を流れる電流Imとに基づいて電動機10の回転角度を検出する。
 電動機10は、整流子を備えた直流整流子電動機である。電動機10は、例えば、自動車のウィンドウの昇降、ドアミラーの角度の調整、空調装置における送風量の調整、ヘッドライトの光軸の調整等で使用される。
 図2は整流子20の概略図である。図2に示すように、整流子20は、スリット20sによって互いに隔てられた8つの整流子片20aで構成されている。各整流子片20aの円弧の中心角であるスリット間角度θcは約45度である。
 電動機10は、4つのスイッチSW1~SW4を介して電源に接続されている。そして、スイッチSW1とスイッチSW3とが閉状態となったときに時計回りに順回転し、スイッチSW2とスイッチSW4とが閉状態となったときに反時計回りに逆回転するように構成されている。電源に接続されている図1の例では、順回転する電動機10を流れる電流が正の値を有し、逆回転する電動機10を流れる電流が負の値を有する。惰性回転中は、スイッチSW2とスイッチSW3とが閉状態となり、順回転する電動機10を流れる電流は負の値を有し、逆回転する電動機10を流れる電流は正の値を有する。本実施例では、惰性回転中も回転を検出するために、電動機10と電流検出部10bは、閉ループ中に存在する。なお、本実施例では、電動機10は、電気抵抗値が十分大きいため、電動機10の2つの端子を短絡しても、惰性で回転する。一方、電動機10は、電気抵抗値が小さい場合には、電動機10の2つの端子を短絡すると、急速に減速する。惰性回転中の電動機10の減速を抑制するためには、抵抗器を通る閉ループを形成すればよい。
 電圧検出部10aは、電動機10の端子間電圧Vを検出する。電流検出部10bは、電動機10を流れる電流Imを検出する。
 回転角度検出器100は、主に、電圧フィルタ部30、回転角速度算出部31、回転角度算出部32、電流フィルタ部33、第1信号生成部34、第2信号生成部35、回転情報算出部36、抵抗設定部37等の要素を含む。各要素は、電気回路で構成されていてもよく、ソフトウェアで構成されていてもよい。
 電圧フィルタ部30は、電圧検出部10aが出力する端子間電圧Vの波形を滑らかにする。電圧フィルタ部30は、例えば、回転角速度算出部31が電動機10の回転角速度を精度良く算出できるように端子間電圧Vの波形を滑らかにする。図1の例では、電圧フィルタ部30は、ローパスフィルタであり、電圧検出部10aが出力する端子間電圧Vの波形のうちの高周波成分をノイズとして除去した端子間電圧V'を出力する。
 回転角速度算出部31は、電動機10の端子間電圧V'と電動機10を流れる電流Imとに基づいて電動機10の回転角速度を算出する。図1の例では、回転角速度算出部31は、式(1)に基づいて回転角速度ωを算出する。
Figure JPOXMLDOC01-appb-M000001
 Keは逆起電力定数であり、Rmは電動機10の内部抵抗に対応する値(設定抵抗値)であり、Lmは電動機10のインダクタンスであり、dIm/dtは電流Imの一回微分である。電流Imの一回微分は、例えば、前回の電流Imの値と今回の電流Imの値との差である。設定抵抗値Rmは、例えば、回転角度検出器100の起動時に抵抗設定部37によって設定される。
 回転角速度算出部31は、一定の制御周期毎に電動機10の回転角速度ωを算出し、算出した回転角速度ωを回転角度算出部32に対して出力する。
 回転角度算出部32は、電動機10の回転角度θを算出する。回転角度算出部32は、式(2)に基づいて回転角度θを算出する。
Figure JPOXMLDOC01-appb-M000002
 回転角度算出部32は、例えば、回転角速度算出部31が一定の制御周期毎に出力する回転角速度ωを積算して回転角度θを算出し、算出した回転角度θに関する信号である回転角度信号を第2信号生成部35に対して出力する。
 また、回転角度算出部32は、第2信号生成部35からの同期指令に応じて回転角度θをゼロにリセットする。
 電流フィルタ部33は、電流検出部10bが出力する電流Imに含まれる特定の周波数成分であるリップル成分Irを出力する。電流フィルタ部33は、例えば、第1信号生成部34が電流Imのリップル成分Irを検出できるようにリップル成分Irの周波数を通すバンドパスフィルタで構成される。バンドパスフィルタで構成される電流フィルタ部33は、電流検出部10bが出力する電流Imの波形のうちのリップル成分Ir以外の周波数成分を除去する。本実施例で利用するリップル成分Irは、整流子片20aとブラシとの接触・分離に起因して生成される。そのため、リップル成分Irの1周期の間に電動機10が回転する角度はスリット間角度θcに等しい。
 第1信号生成部34は、電動機10が一定の角度だけ回転したことを、リップル成分Irの波形から推定した信号を生成する。この信号は、リップル成分Irの周期に応じた信号である。一定の角度は、リップル成分Irの1周期に対応する角度でもよいし、半周期に対応する角度でもよい。この実施例では、電動機10がスリット間角度θcだけ回転する毎に、リップル成分Irの波形から推定した信号(第1パルス信号Pa)を生成する。第1信号生成部34は、例えば、電流フィルタ部33が出力するリップル成分Irの波形に基づいて第1パルス信号Paを生成する。
 図3Aは、第1信号生成部34が第1パルス信号Paを生成するタイミングの一例を示す図である。第1信号生成部34は、リップル成分Irの1周期毎に第1パルス信号Paを生成する。例えば、リップル成分Irが基準電流値Ibを超える度に第1パルス信号Paを生成する。図3Aの例では、時刻t1、t2、t3、・・・、tn等で第1パルス信号Paを生成している。C1、C2、C3、・・・、Cn等は、リップル成分Irの周期を示し、θ1、θ2、θ3、・・・、θn等は、第1信号生成部34が第1パルス信号を生成したときの回転角度θを示す。回転角度θは、回転角度算出部32が算出した値である。このように、第1信号生成部34は、典型的には、回転角度θがスリット間角度θcだけ増加する毎に第1パルス信号Paを生成する。
 但し、第1信号生成部34は、例えば、電動機10の電源オフ後の惰性回転期間において電流Im及びそのリップル成分Irが小さくなった場合、リップル成分Irを検出できずに、第1パルス信号Paを生成できないことがある。また、第1信号生成部34は、例えば、電動機10の電源オン直後に突入電流が発生した場合、その突入電流に応じて第1パルス信号Paを誤って生成してしまうことがある。このような第1パルス信号Paの生成漏れ又は誤生成は、回転角度検出器100が出力する電動機10の回転に関する情報(以下、「回転情報」とする。)の信頼性を低下させてしまう。
 そこで、回転角度検出器100は、第2信号生成部35により、電動機10の回転角度を表す信号をより高精度に生成できるようにしている。
 第2信号生成部35は、電動機10が所定角度だけ回転したことを表す信号を生成する。第2信号生成部35は、例えば、回転角度算出部32が出力する回転角度信号と第1信号生成部34が出力する第1パルス信号Paとに基づいてスリット間角度θc毎に第2パルス信号Pbを生成する。第2パルス信号Pbは、電動機10が所定角度だけ回転したことを表す情報の一例である。第1パルス信号Paは、リップル成分Irの波形のみから推定した信号であるため、誤って出力されることがある。一方、第2パルス信号Pbは、第1パルス信号Paと、回転角度信号の双方から推定した信号であるため、誤差を一定値以下にできる。
 図4は、第2信号生成部35が第2パルス信号Pbを生成するタイミングの一例を示す図である。第1閾値θu及び第2閾値θdは、第1パルス信号Paの受付可否の閾値であり、例えば、回転角度θと電動機10の実際の回転角度との最大位相差に基づいて設定される。
 第2信号生成部35は、回転角度θが第1閾値θu以上で且つスリット間角度θc未満のときに第1信号生成部34が最初に生成した第1パルス信号Paに基づいて、第2パルス信号Pbを生成する。第1閾値θuは、予め設定される値であってもよく、動的に設定される値であってもよい。図4は、回転角度θが第1閾値θu以上で且つスリット間角度θc未満の角度範囲である受付範囲をドットパターンで示す。図4の例では、第1信号生成部34が第1パルス信号Pa1、Pa2、Pa4を生成したときの回転角度θ1、θ2、θ5が第1閾値θu以上で且つスリット間角度θc未満である。すなわち、回転角度θ1、θ2、θ5のそれぞれがスリット間角度θcに達するまでの残りの角度が角度α未満である。角度αは、例えば、回転角度θと電動機10の実際の回転角度との最大誤差に基づき設定される。この場合、第2信号生成部35は、時刻t1、t2、t5において第1信号生成部34が生成した第1パルス信号Pa1、Pa2、Pa4がノイズでないとみなす。そのため、第2信号生成部35は、時刻t1、t2、t5において第2パルス信号Pb1、Pb2、Pb4を生成する。第2パルス信号Pbを生成すると、第2信号生成部35は、回転角度算出部32に対して同期指令を出力する。なお、回転角度θがスリット間角度θc未満、且つ、第1閾値θu以上の場合に、リップル成分Irと同じ周波数成分を持つノイズが発生すると、誤った第1パルス信号Paが出力され、第2パルス信号Pbが生成されるおそれがある。しかし、次のタイミングで、本当のリップル成分Irが検出され、回転角度検出器100は、正しい回転角度を検出できる。したがって、回転角度検出器100が検出する回転角度は、ノイズによって、一時的に誤って検出されても、正しい回転角度に戻る。また、誤差の範囲は、角度α未満であり、実用上、問題無い範囲である。
 また、第2信号生成部35は、回転角度θの大きさが所定角度に達したときに第2パルス信号Pbを生成する。所定角度は、例えば、スリット間角度θcである。但し、回転角度θは、回転角度算出部32が算出した角度であり、誤差が含まれる。図4の例では、時刻t3、t7、t9において回転角度θ3、θ7、θ9の絶対値がスリット間角度θcに達したときに第2パルス信号Pb3、Pb5、Pb6を生成している。第2パルス信号Pbを生成すると、第2信号生成部35は、回転角度算出部32に対して同期指令を出力する。回転角度算出部32は、同期指令を受けると回転角度θをゼロにリセットする。
 すなわち、第2信号生成部35は、例えば、時刻t2において、第2パルス信号Pb2を生成した後で第1パルス信号Paを受け取ることがない状態のまま、回転角度θの絶対値がスリット間角度θcに達したときに第2パルス信号Pb3を生成する。
 このように、第2信号生成部35は、何らかの理由で第1パルス信号Paが生成されなかった場合であっても、回転角度算出部32によって算出された回転角度θの絶対値がスリット間角度θcに達しさえすれば、第2パルス信号Pbを生成する。そのため、第1パルス信号Paの生成漏れを確実に防止できる。
 また、第2信号生成部35は、第1信号生成部34が第1パルス信号Paを生成したときの回転角度θが第2閾値θd未満の場合、第2パルス信号Pbを生成しない。第2閾値θdは、予め設定される値であってもよく、動的に設定される値であってもよい。このような状況は、典型的には、回転角度θの大きさが所定角度に達したことで第2パルス信号Pbが生成された後に発生する。図4は、回転角度θがゼロ以上で且つ第2閾値θd未満の角度範囲である受付範囲をドットパターンで示す。図4の例では、時刻t3で回転角度θの絶対値がスリット間角度θcに達したことで第2パルス信号Pb3が生成された後の時刻t4において、第1信号生成部34が第1パルス信号Pa3を生成している。このときの回転角度θ4は、第2閾値θd未満である。すなわち、時刻t3でリセットされた後に積算された回転角度θ4は未だ角度β未満である。この場合、第2信号生成部35は、時刻t4で第1信号生成部34が生成した第1パルス信号Pa3を、時刻t3で生成した第2パルス信号Pb3に統合可能と判定できる。具体的には、電動機10の実際の回転角度がスリット間角度θcに達する前に、回転角度算出部32が出力する回転角度θが、スリット間角度θcに達した場合に発生する。すなわち、実際の回転角度がスリット間角度θcに達していないにもかかわらず、回転角度算出部32が算出した回転角度θがスリット間角度θcに達したために、第2パルス信号Pb3が生成された場合に発生する。第2パルス信号Pb3を生成した直後に第1パルス信号Pa3が生成された時点が、実際の回転角度がスリット間角度θcに達した瞬間である。このため、第2信号生成部35は、第1パルス信号Pa3を生成した時点で、回転角度算出部32に対して同期指令を出力する。この場合、第2信号生成部35は、時刻t4では第2パルス信号Pbを生成しない。図4の「×」に向かう破線矢印は、第1パルス信号Pa3に基づいて第2パルス信号Pbが生成されなかったことを表す。他の図における「×」に向かう破線矢印についても同様である。
 また、第1信号生成部34が、第1パルス信号Paを短時間に連続して生成することがある。上述したとおり、図3Aにおいて、リップル成分Irが基準電流値Ibを超える度に、第1信号生成部34が、第1パルス信号Paを生成する。リップル成分Irが基準電流値Ibを超える直前や直後は、微小なノイズが重畳されても、第1パルス信号Paが誤って生成される。この場合、第1信号生成部34が、第1パルス信号Paを生成する間隔が角度β(第2閾値θd)未満となる。図4の例では、第1信号生成部34が、時刻t2で、第1パルス信号Pa2を生成する。第2信号生成部35は、第2パルス信号Pb2を生成すると共に、回転角度算出部32に同期指令を出力する。回転角度算出部32は、回転角度θをリセットする。その後、第1信号生成部34が、時刻t2'で、第1パルス信号Pa2'を生成する。時刻t2'の時点での回転角度θは、第2閾値θd未満である。この場合、第2信号生成部35は、第2パルス信号Pbを生成せず、同期指令も出力しない。図4の「×」に向かう破線矢印は、第1パルス信号Pa3に基づいて第2パルス信号Pbが生成されなかったことを表す。なお、リップル成分Irが基準電流値Ibを超える直前や直後は、微小なノイズが重畳された場合、短時間に連続して複数発生する第1パルス信号Paの何れが、スリット間角度θcに達したことを示す第1パルス信号Paか判断できない。しかし、この場合、複数の第1パルス信号Paは、短い期間内(角度β未満)に生成されるため、最初の第1パルス信号Paの時点で、回転角度θがスリット間角度θcに達したと見なしても、実用上、問題ない。また、リップル成分Irが基準電流値Ibを超える度に、同様のノイズが発生したとしても、誤差は、角度β未満に抑えられる。つまり、誤差が累積しない。このため、実用上問題ない範囲に誤差を抑えることができる。
 また、第2信号生成部35は、第1信号生成部34が第1パルス信号Paを生成したときの回転角度θが第2閾値θd以上で且つ第1閾値θu未満の場合、すなわち、回転角度θが角度範囲R1内にある場合、第2パルス信号Pbを生成することはなく、回転角度算出部32に対して同期指令を出力することもない。図4の例では、時刻t6において第1信号生成部34が第1パルス信号Pa5を生成したときの回転角度θ6は、第2閾値θd以上で且つ第1閾値θu未満である。すなわち、回転角度θ6がスリット間角度θcに達するまでの残りの角度が角度αより大きく、時刻t5でリセットされた後に積算された回転角度θ6が角度β以上である。この場合、第2信号生成部35は、第1パルス信号Pa5がノイズに基づくものと判定できる。そのため、第2信号生成部35は、時刻t6では第2パルス信号Pbを生成することはなく、回転角度算出部32に対して同期指令を出力することもない。すなわち、ノイズに基づく第1パルス信号Pa5による影響を排除できる。
 また、第2信号生成部35は、第1信号生成部34が第1パルス信号Paを生成したときの回転角度θが第2閾値θd未満の場合、第2パルス信号Pbを生成しない。但し、第2信号生成部35は、第1信号生成部34が第1パルス信号Paを生成したときの回転角度θが第2閾値θd未満の場合、回転角度算出部32に対して同期指令を出力する場合と、同期指令を出力しない場合がある。第1パルス信号Paが生成される前に、回転角度θがスリット間角度θcに達した後で、回転角度θが第2閾値θd未満のときに第1パルス信号Paが生成されると、第2信号生成部35は、同期指令を回転角度算出部32に送る。但し、第1パルス信号Paが生成される前に、回転角度θがスリット間角度θcに達した後で、回転角度θが第2閾値θd未満のときに複数の第1パルス信号Paが生成されると、2番目以降の第1パルス信号Paは無視される。すなわち、第2信号生成部35は、同期指令を出力しない。また、回転角度θがスリット間角度θcに達する前に第1パルス信号Paが生成された後、回転角度θが第2閾値θd未満のときに第1パルス信号Paが生成されても、第2信号生成部35は、同期指令を出力しない。つまり、第1パルス信号Paが第2閾値θd(角度β)未満の間に、複数の第1パルス信号Paが生成された場合、2番目以降の第1パルス信号Paは無視される。すなわち、第2信号生成部35は、同期指令を出力しない。図4の例では、時刻t4'において第1信号生成部34が第1パルス信号Pa3'を生成したときの回転角度θ4'は、第2閾値θd未満である。しかしながら、第1パルス信号Pa3'は、直近の第2パルス信号Pb3が生成された後の2番目の第1パルス信号Paである。そのため、第2信号生成部35は、第1パルス信号Pa3'を受け取ったときには、第2パルス信号Pbを生成することはなく、回転角度算出部32に対して同期指令を出力することもない。
 以上の構成により、回転角度検出器100は、電動機10の回転角度θの検出誤差を実用上問題ない範囲に抑えることができる。特に、回転角度検出器100では、誤差が累積されることがない。このため、電動機10の回転数にかかわらず、誤差を一定範囲内に抑えることができる。発明者は、次の前提が成り立つことを発見し、上述した回転角度検出器100を発明した。(1)微小ノイズによるリップル成分Irの誤検出は、リップル成分Irが基準電流値Ibを超える直前か直後に限定される。この場合、正しく生成された第1パルス信号Paの前後の短時間(角度αだけ前から角度βだけ後まで)のみ、誤った第1パルス信号Paが生成される。(2)大きなノイズは、電源オン直後の突入電流等によるもので、スリット間角度θcより充分長い間隔で発生する。(3)回転角度算出部32が、端子間電圧V'と電流Imから算出する回転角度θの誤差は、スリット間角度θcより充分に小さい。
 以上の構成により、第2信号生成部35は、例えば、電動機10の電源オフ後の惰性回転期間において電流Im及びそのリップル成分Irが小さくなり、第1信号生成部34がリップル成分Irの波形に基づいて第1パルス信号Paを生成できない場合であっても、第2パルス信号Pbを生成できる。
 また、第2信号生成部35は、例えば、電動機10の電源オン直後に突入電流が発生し、第1信号生成部34がその突入電流に応じて第1パルス信号Paを誤って生成してしまった場合であっても、その第1パルス信号Paに対応する第2パルス信号Pbを生成しない。すなわち、その第1パルス信号Paによる影響を排除できる。
 また、第2信号生成部35は、例えば、第1信号生成部34がノイズ等の影響により第1パルス信号Paを誤って生成してしまった場合であっても、その第1パルス信号Paに対応する第2パルス信号Pbを生成することはなく、回転角度算出部32に対して同期指令を出力することもない。
 そのため、回転角度検出器100は、第1パルス信号Paと回転角度信号の双方に基づき生成される第2パルス信号Pbに基づいて電動機10の回転情報を算出することで、電動機10の回転情報の信頼性を向上させることができる。
 また、第2信号生成部35は、電動機10の回転方向を表す方向信号を出力する。例えば、第2信号生成部35は、回転方向が順回転方向であれば、回転角度θとして正の値を出力し、回転方向が逆回転方向であれば、回転角度θとして負の値を出力する。回転角度θは、電動機10を流れる電流が正の値のときに正の値を有し、電動機10を流れる電流が負の値のときに負の値を有する。但し、惰性回転中は、回転角度θは、電動機10を流れる電流が負の値のときに正の値を有し、電動機10を流れる電流が正の値のときに負の値を有する。
 回転情報算出部36は、電動機10の回転情報を算出する。電動機10の回転情報は、例えば、基準回転位置からの回転量(回転角度)、基準回転位置からの回転数等を含む。電動機10が自動車のウィンドウの昇降に使用される場合には、電動機10の回転情報は、基準位置に対するウィンドウの上縁の相対位置、ウィンドウの開き量等に変換された値でもよい。また、ある期間における回転角速度ωの平均値、最大値、最小値、中央値等の統計値を含んでいてもよい。図1の例では、回転情報算出部36は、第2信号生成部35の出力に基づいて電動機10の回転情報を算出する。例えば、電動機10の回転が開始した後に生成された第2パルス信号Pbの数にスリット間角度θcを乗ずることで、電動機10の回転が開始した後の回転量を算出する。その際、回転情報算出部36は、第2信号生成部35が第2パルス信号Pbと共に出力する方向信号に基づいて第2パルス信号Pbの数をインクリメントするかデクリメントするかを決定する。或いは、回転情報算出部36は、順回転方向を表す方向信号と共に受けた第2パルス信号Pbの数と、逆回転方向を表す方向信号と共に受けた第2パルス信号Pbの数とを別々に計数し、それらの差に基づいて電動機10の回転量を算出してもよい。
 抵抗設定部37は、電動機10の抵抗特性に対応する抵抗値を設定する。抵抗設定部37は、例えば、回転角度検出器100の起動時に、不揮発性記憶媒体に予め記憶されている値を、式(1)における設定抵抗値Rmとして設定する。設定抵抗値Rmは、動的に更新されてもよい。
 次に、図5を参照し、回転角度検出器100が電動機10の回転量を算出する処理(以下、「回転量算出処理」とする。)の流れについて説明する。図5は、回転量算出処理のフローチャートである。回転角度検出器100は、電動機10の駆動中にこの回転量算出処理を実行する。
 最初に、回転角度検出器100は、端子間電圧V及び電流Imを取得する(ステップST1)。図1の例では、回転角度検出器100は、電圧検出部10aが出力する端子間電圧V、及び、電流検出部10bが出力する電流Imを所定の制御周期毎に取得する。
 その後、回転角度検出器100は、回転角速度ω及び回転角度θを算出する(ステップST2)。図1の例では、回転角度検出器100の回転角速度算出部31は、端子間電圧V'と電流Imを式(1)に代入して回転角速度ωを所定の制御周期毎に算出する。そして、回転角度検出器100の回転角度算出部32は、制御周期毎に算出される回転角速度ωを積算して回転角度θを算出する。
 その後、回転角度検出器100は、回転角度θが所定角度未満であるか否かを判定する(ステップST3)。図1の例では、回転角度検出器100の第2信号生成部35は、回転角度θがスリット間角度θc未満であるか否かを判定する。
 回転角度θがスリット間角度θc以上であると判定した場合(ステップST3のNO)、第2信号生成部35は、スリット間角度θcまでのタイミングで第1パルス信号Paが生成されなかったと判定する。この場合、第2信号生成部35は、第1パルス信号Paが生成されていないことを示すためにフラグFを"False"にする(ステップST3A)。フラグFは、第1パルス信号Paが生成されたか否かを示すためのフラグである。フラグFの初期値は、第1パルス信号Paが生成されていないことを示す"False"である。フラグFが"True"であることは、第1パルス信号Paが既に生成されたことを示す。そして、第2パルス信号Pbを生成し(ステップST10)、且つ、回転角度θをゼロにリセットする(ステップST11)。これは、第1パルス信号Paが生成される前に回転角度θがスリット間角度θcに達した場合であり、図4の例において時刻t3、t7、t9で回転角度θが回転角度θ3、θ7、θ9に達した場合に対応する。
 一方、回転角度θがスリット間角度θc未満であると判定した場合(ステップST3のYES)、第2信号生成部35は、第1パルス信号Paが生成されたか否かを判定する(ステップST4)。図1の例では、第1信号生成部34によって第1パルス信号Paが生成されたか否かを判定する。
 回転角度θがスリット間角度θc未満の段階(ステップST3のYES)で第1パルス信号Paが未だ生成されていないと第2信号生成部35が判定した場合(ステップST4のNO)、回転角度検出器100は、回転量を算出する(ステップST7)。そして、回転情報算出部36は、第2信号生成部35の出力に基づいて電動機10の回転量を算出する。この場合、算出される回転量に変化はない。これは、図4の例において時刻t0で回転角度θが回転角度θ0になっている場合に対応する。
 その後、回転角度検出器100は、回転角速度ωがゼロになったか否かを判定する(ステップST8)。そして、回転角度検出器100は、回転角速度ωがゼロになっていないと判定した場合(ステップST8のNO)、処理をステップST1に戻し、回転角速度ωがゼロになったと判定した場合(ステップST8のYES)、回転量算出処理を終了させる。
 第1パルス信号Paが生成されたと判定した場合(ステップST4のYES)、第2信号生成部35は、回転角度θが第1閾値θu未満であるか否かを判定する(ステップST5)。第1閾値θu未満のタイミングで生成された第1パルス信号Paは、ノイズに基づく慨然性が高いためである。
 回転角度θが第1閾値θu以上であると判定した場合(ステップST5のNO)、第2信号生成部35は、第1パルス信号Paが生成されたか否かを示すためにフラグFを"True"にする(ステップST5A)。そして、第2信号生成部35は、第2パルス信号Pbを生成し(ステップST10)、且つ、回転角度θをゼロにリセットする(ステップST11)。回転角度θが、第1閾値θu以上のときに第1パルス信号Paが発生した場合、第1パルス信号Paが発生した時点の実際の回転角度が、スリット間角度θcに近いためである。これは、図4の例において時刻t1、t2、t5で第1パルス信号Pa1、Pa2、Pa4が生成された場合に対応する。
 回転角度θが第1閾値θu未満であると判定した場合(ステップST5のYES)、第2信号生成部35は、現時点では、第1パルス信号Paがノイズに基づくものでないとは判定できない。回転角度θは、多少の誤差を含む場合がある。また、第1パルス信号Paの生成時期が、ノイズ等の影響で、若干ずれることがある。このため、回転角度θがスリット間角度θcに達する時期と、第1パルス信号Paの生成時期がずれる場合がある。このため、回転角度θがスリット間角度θcに達する時期と、第1パルス信号Paの生成時期のどちらが早いか分からないためである。そこで、第2信号生成部35は、直近の第2パルス信号Pbを生成した後で最初に受け取った第1パルス信号Paに関し、回転角度θが第2閾値θd未満であるか否かを判定する(ステップST6)。
 最初の第1パルス信号Paに関する回転角度θが第2閾値θd未満であると判定した場合(ステップST6のYES)、第2信号生成部35は、フラグFを調べる(ステップST6A)。フラグFは、第1パルス信号Paが、連続して発生したことを判断するためのフラグである。フラグFが"True"の場合、第1パルス信号Paは、連続して発生した2番目以降の第1パルス信号Paである。フラグFが"True"の場合(ステップST6AのYES)、回転角度検出器100は、回転量を算出する(ステップST7)。これは、図4の例において時刻t2'、t4'で第1パルス信号Pa2'、Pa3'が生成されたときに対応する。フラグFが"False"の場合(ステップST6AのNO)、第2信号生成部35は、フラグFを"True"にする(ステップST6B)。その後、第2信号生成部35は、回転角度θをゼロにリセットする(ステップST11)。回転角度θが第2閾値θd未満の場合、第1パルス信号Paが生成されたときの実際の回転角度が、スリット間角度θcに近いためである。すなわち、第2閾値θd未満の場合、第1パルス信号Paが、直前に生成した第2パルス信号Pbに対応すると判定できるためである。これは、図4の例において時刻t4、t8で第1パルス信号Pa3、Pa6が生成された場合に対応する。すなわち、第1パルス信号Pa3、Pa6が第2パルス信号Pb3、Pb5に対応すると判定できる。
 最初の第1パルス信号Paに関する回転角度θが第2閾値θd以上であると判定した場合(ステップST6のNO)、すなわち、角度範囲R1内であると判定した場合、第2信号生成部35は、その第1パルス信号Paがノイズに基づくものであると判定する。この場合、第2信号生成部35は、第2パルス信号Pbを生成することはなく、回転角度θをリセットすることもない。そして、回転情報算出部36は、第2信号生成部35の出力に基づいて電動機10の回転量を算出する。これは、図4の例において時刻t6で第1パルス信号Pa5が生成されたときに対応する。すなわち、第2信号生成部35は、第1パルス信号Pa5をノイズに基づくものと判定している。
 その後、回転角度検出器100は、電動機10の回転量を算出する(ステップST7)。図1の例では、回転角度検出器100の回転情報算出部36は、電動機10の回転が開始した後に生成された第2パルス信号Pbの数にスリット間角度θcを乗ずることで、電動機10の回転が開始した後の回転量を算出する。
 次に、図6を参照し、回転角度検出器100が算出した電動機10の回転量の信頼性に関する実験結果について説明する。図6は、合成パルス信号及びホールパルス信号のそれぞれの推移を示す図である。
 合成パルス信号は、第2パルス信号Pbの複数パルスを1パルスに合成することで得られる信号である。図6の例では、スリット間角度θcは90度である。第1パルス信号Pa及び第2パルス信号Pbは、基本的に、電動機10の回転軸が90度回転する度に生成されている。そして、合成パルス信号は、第2パルス信号Pbの2パルスを1パルスに合成して生成されている。すなわち、回転角度検出器100は、電動機10の回転軸が180度回転する度に合成パルス信号を1つ生成するように構成されている。
 ホールパルス信号は、ホールセンサが出力したパルス信号である。ホールセンサは、第2パルス信号Pbとホールパルス信号との比較のために電動機10の回転軸に取り付けられた磁石が作る磁束を検出する。図6の例では、回転角度検出器100は、電動機10の回転軸が180度回転する度にホールパルス信号を1つ生成するように構成されている。
 図6の「×」に向かう破線矢印は、第1パルス信号Paに基づいて第2パルス信号Pbが生成されなかったことを表す。すなわち、第1パルス信号Paがノイズとして無視されたことを表す。また、図6の8つの実線矢印は、第1パルス信号Paの生成漏れの際に第2パルス信号Pbが追加されたことを表す。
 図6の例では、電動機10の順回転を開始させてからその順回転を停止させるまでの期間に生成された合成パルス信号及びホールパルス信号のそれぞれの数が等しいことが確認された。すなわち、第2パルス信号Pbに基づいて算出される電動機10の回転量が、ホールセンサによって検出される電動機10の回転量に等しいことが確認された。
 次に、図7を参照し、抵抗設定部37が電動機10の抵抗特性に対応する抵抗値を更新する処理(以下、「更新処理」とする。)について説明する。図7は、更新処理のフローチャートである。抵抗設定部37は、所定の制御周期で繰り返しこの更新処理を実行する。
 最初に、抵抗設定部37は、電動機10の回転が安定している回転安定状態であるか否かを判定する(ステップST21)。回転安定状態は、例えば、所定期間における電動機10の端子間電圧Vの変動幅が所定値未満で、且つ、その所定期間における電動機10を流れる電流Imの変動幅が所定値未満で、且つ、その所定期間における第1パルス信号Paの周期の変動幅が所定値未満の状態を含む。
 図8は、自動車のウィンドウの昇降に使用される電動機10の回転安定状態の一例を示す。具体的には、ウィンドウを下げるためのインチング操作が行われたときの端子間電圧V、電流Im及び第1パルス信号Paの時間的推移を示す。ウィンドウを下げるためのインチング操作は、例えば、ウィンドウ下げボタンの短時間の押圧操作である。図8は、時刻t1においてウィンドウ下げボタンが押下されたときにスイッチSW1及びSW3(図1参照。)が閉状態となり端子間電圧V及び電流Imが増加する様子を示す。また、時刻t4においてスイッチSW1が開状態となり且つスイッチSW2(図1参照。)が閉状態となった後で電動機10の惰性回転に応じて端子間電圧V及び電流Imが変動する様子を示す。そして、時刻t5において電動機10が停止して端子間電圧V及び電流Imがゼロに至る様子を示す。時刻t2は最初の回転安定状態の開始時点を表し、時刻t3は最初の回転安定状態の終了時点を表す。図9は、最初の回転安定状態のときの端子間電圧V、電流Im及び第1パルス信号Paの時間的推移を示す。
 図9に示すように、抵抗設定部37は、所定数の第1パルス信号Paを検出する度に、その期間における端子間電圧V及び電流Imのそれぞれの平均値を算出する。中央値、最頻値、最大値、最小値等の他の統計値であってもよい。図9の例では、8つの第1パルス信号Paを検出する度にその期間Tにおける端子間電圧V及び電流Imのそれぞれの平均値を算出している。期間T1、T2、T3、・・・、Tnは、8つの第1パルス信号Paを検出するのに要した期間を表す。平均端子間電圧V1、V2、V3、・・・、Vnは、期間T1、T2、T3、・・・、Tnにおける端子間電圧Vの平均値を表す。平均電流Im1、Im2、Im3、・・・、Imnは、期間T1、T2、T3、・・・、Tnにおける電流Imの平均値を表す。
 抵抗設定部37は、例えば、以下の条件が満たされる場合に、電動機10が回転安定状態にあると判定する。
Figure JPOXMLDOC01-appb-M000003
 ΔTは期間閾値を表し、ΔImは電流閾値を表し、ΔVは電圧閾値を表す。iは1~nの整数を表す。具体的には、抵抗設定部37は、期間T1~Tnのそれぞれの期間T1に対する差の絶対値が期間閾値ΔTより小さく、平均電流Im1~Imnのそれぞれの平均電流Im1に対する差の絶対値が電流閾値ΔImより小さく、且つ、平均端子間電圧V1~Vnのそれぞれの平均端子間電圧V1に対する差の絶対値が電圧閾値ΔVより小さい場合に電動機10が回転安定状態にあると判定する。すなわち、第1パルス信号Paの生成間隔、電流Im及び端子間電圧Vが何れも安定しているときに電動機10が回転安定状態にあると判定する。
 図9の破線による図解は、期間T2、T3、Tnの期間T1に対する差の絶対値が期間閾値ΔTより小さいことを表している。図9のドットパターン領域は、T1±ΔTの範囲を表している。図9の一点鎖線による図解は、平均端子間電圧V2、V3、Vnの平均端子間電圧V1に対する差の絶対値が電圧閾値ΔVより小さいことを表している。図9の二点鎖線による図解は、平均電流Im2、Im3、Imnの平均電流Im1に対する差の絶対値が電流閾値ΔImより小さいことを表している。
 図9の例では、抵抗設定部37は、時刻t3において、時刻t2から時刻t3までの期間で電動機10が回転安定状態にあったと判定できる。すなわち、電動機10が現時点において回転安定状態にあると判定できる。
 ここで再び図7を参照する。電動機10が回転安定状態にあると判定すると(ステップST21のYES)、抵抗設定部37は、第1パルス信号Paの周期に基づいて回転角速度ω'を算出する(ステップST22)。抵抗設定部37は、例えば、以下の式(3)に基づいて回転角速度ω'を算出する。
Figure JPOXMLDOC01-appb-M000004
 nは期間Tの数を表し、Mは期間Tにおける第1パルス信号Paの数を表す。例えば、nを10とし、Mを8とし、スリット間角度θcを45度とすると、回転角速度ω'は、電動機10が10回転する間の平均回転角速度[rad/s]を表す。このように、抵抗設定部37は、第1パルス信号Paの周期(上述の例では80周期)に基づいて回転角速度ω'を算出できる。
 その後、抵抗設定部37は、回転角速度ω'に基づいて推定抵抗値R'mを算出する(ステップST23)。抵抗設定部37は、例えば、以下の式(4)に基づいて推定抵抗値R'mを算出する。
Figure JPOXMLDOC01-appb-M000005
 式(4)は電動機の基本理論式であり、Keは逆起電力定数を表し、Ke×ω'は逆起電力推定値を表す。すなわち、平均端子間電圧V1~Vnの平均値から逆起電力推定値を差し引いた値を平均電流Im1~Imnの平均値で除した値が推定抵抗値R'mとして導き出される。平均値は、中央値、最頻値、最大値、最小値等の他の統計値であってもよい。
 その後、抵抗設定部37は、推定抵抗値R'mが正常範囲内にあるか否かを判定する(ステップST24)。抵抗設定部37は、例えば、不揮発性記憶媒体に予め登録されている正常範囲の上限及び下限を参照し、推定抵抗値R'mが正常範囲内にあるか否かを判定する。正常範囲の上限及び下限の少なくとも一方は、外気温、電動機10の温度等に応じて動的に変更されてもよい。
 推定抵抗値R'mが正常範囲内にあると判定した場合(ステップST24のYES)、抵抗設定部37は、推定抵抗値R'mを用いて設定抵抗値Rmを更新する(ステップST25)。図7の例では、抵抗設定部37は、推定抵抗値R'mを算出する周期と同じ周期で、推定抵抗値R'mを用いて設定抵抗値Rmを更新する。但し、抵抗設定部37は、推定抵抗値R'mを算出する周期とは異なる周期で設定抵抗値Rmを更新してもよい。例えば、推定抵抗値R'mを算出する周期より短い周期で設定抵抗値Rmを更新してもよい。
 具体的には、抵抗設定部37は、例えば、以下の式(5)で導き出される抵抗値R"mで設定抵抗値Rmを更新してもよい。
Figure JPOXMLDOC01-appb-M000006
 Kmは1.0以下の正の実数定数を表す。すなわち、Kmの値が1.0に近いほど、設定抵抗値Rmは推定抵抗値R'mに近い抵抗値R"mで更新される。典型的には、Kmは1.0未満である。設定抵抗値Rmの急変、振動等を防止するためである。Kmは、不揮発性記憶媒体に予め登録されている固定値又は可変値であってもよく、動的に算出され且つ設定される値であってもよい。例えば、インチング操作(比較的短い押圧操作)が行われたときのKmは、通常操作(比較的長い押圧操作)が行われたときのKmよりも大きくなるように設定されてもよい。インチング操作が行われたときは、通常操作が行われたときに比べ、設定抵抗値Rmを更新する処理を繰り返し実行するために利用できる時間が短いためである。
 また、式(5)から明らかなように、抵抗設定部37は、更新後の設定抵抗値Rm(抵抗値R"m)と推定抵抗値R'mとの差が、更新前の設定抵抗値Rmと推定抵抗値R'mとの差より小さくなるように設定抵抗値Rmを更新する。設定抵抗値Rmの急変を防止しながら、設定抵抗値Rmを推定抵抗値R'mに徐々に近づけるようにするためである。例えば、式(4)を用いて繰り返し導き出される推定抵抗値R'mがほとんど変化しない場合、抵抗設定部37は、設定抵抗値Rmを推定抵抗値R'mに徐々に近づけることができる。特に、推定抵抗値R'mを算出する周期より短い周期で設定抵抗値Rmを更新する場合、抵抗設定部37は、新たな推定抵抗値R'mが算出される前に、設定抵抗値Rmを推定抵抗値R'mに徐々に近づけることができる。抵抗値R"mは、導き出される度に推定抵抗値R'mに近づくためである。
 電動機10が回転安定状態にないと判定した場合(ステップST21のNO)、或いは、推定抵抗値R'mが正常範囲内にないと判定した場合(ステップST24のNO)、抵抗設定部37は、設定抵抗値Rmを更新することなく、今回の更新処理を終了する。この場合、回転角速度算出部31は、現在の設定抵抗値Rmを用い、式(1)に基づいて回転角速度ωを算出する。
 このように、抵抗設定部37は、電動機10が回転安定状態にあるときの第1パルス信号Paの周期から電動機10の回転角速度ω'を算出する。そして、算出した回転角速度ω'に基づいて推定抵抗値R'mを導き出し、推定抵抗値R'mを用いて式(1)における設定抵抗値Rmを更新できる。そのため、電動機10の温度変化、経年変化等に起因する電動機10の抵抗特性の変化に応じて設定抵抗値Rmを適切に更新できる。経年変化は、例えば、整流子片20aの摩耗、ブラシの摩耗等を含む。その結果、回転角度検出器100は、例えば、電動機10の電源オフ後の惰性回転期間において電流Im及びそのリップル成分Irが小さくなり、第1信号生成部34がリップル成分Irの波形に基づいて第1パルス信号Paを生成できない場合にも、電動機10の回転に関する情報をより高い信頼性で取得できる。具体的には、第1パルス信号Paによらずに、適切な設定抵抗値Rmを用いてリアルタイムに算出された回転角速度ω及び回転角度θに基づいて第2パルス信号Pbをより正確に生成することで、電動機10の回転に関する情報をより高い信頼性で取得できる。例えば、自動車のウィンドウの昇降に使用される電動機10に関し、ウィンドウを昇降させるためのインチング操作が行われた場合における電動機10の惰性回転期間であっても、電動機10の回転に関する情報をより高い信頼性で取得できる。
 上述の通り、整流子20を備えた電動機10の回転情報を取得する回転角度検出器100は、電動機10の抵抗特性に対応する抵抗値を設定する抵抗設定部37と、電圧検出部10aが検出した検出電圧値と電流検出部10bが検出した検出電流値と抵抗設定部37が設定した設定抵抗値Rmとに基づいて電動機10の回転に関する情報を算出する回転情報算出部36とを含む。そして、抵抗設定部37は、電動機10の回転が安定している回転安定状態で検出された検出電圧値と検出電流値とに基づいて推定抵抗値R'mをリアルタイムで導き出し、その推定抵抗値R'mを用いて設定抵抗値Rmをリアルタイムで更新するように構成されている。そのため、ホールセンサ等の回転センサが無くても、電動機10の回転情報を高い信頼性で取得できる。これは、センサインタフェース回路、ハーネス等の回転センサを利用するために必要な部品を省略できることを意味する。そのため、軽量化、低コスト化、小型化等を実現できる。
 また、回転角度検出器付き電動機は、電動機10と、電動機10の回転角度を検出する回転角度検出器100とを備えている。電動機10は、複数の整流子片20aからなる整流子20を有する。
 抵抗設定部37は、例えば、推定抵抗値R'mが所定範囲内である場合にその推定抵抗値R'mを用いて設定抵抗値Rmを更新し、推定抵抗値R'mが所定範囲外である場合には設定抵抗値Rmを更新しないように構成されている。そのため、異常な推定抵抗値R'mによって設定抵抗値Rmが更新されてしまうのを防止できる。
 回転安定状態は、例えば、所定期間における端子間電圧Vの変動幅が所定値未満で、且つ、その所定期間における電流Imの変動幅が所定値未満で、且つ、その所定期間における第1パルス信号Paの周期の変動幅が所定値未満の状態である。回転安定状態は、端子間電圧V、電流Im、及び、第1パルス信号Paの周期の少なくとも1つを用いて定められる他の状態であってもよい。例えば、所定期間における端子間電圧Vの標準偏差が所定値未満で、且つ、その所定期間における電流Imの標準偏差が所定値未満で、且つ、その所定期間における第1パルス信号Paの周期の標準偏差が所定値未満の状態であってもよい。或いは、所定期間における端子間電圧Vの積算値が所定範囲内で、且つ、その所定期間における電流Imの積算値が所定範囲内の状態であってもよい。この構成により、抵抗設定部37は、推定抵抗値R'mを適切に導き出すことができる。
 また、抵抗設定部37は、望ましくは、更新後の設定抵抗値Rmと推定抵抗値R'mとの差が、更新前の設定抵抗値Rmと推定抵抗値R'mとの差より小さくなるように設定抵抗値Rmを更新するように構成されている。設定抵抗値Rmの急変を防止しながら、設定抵抗値Rmを推定抵抗値R'mに徐々に近づけるようにするためである。
 また、回転角度検出器100は、電流Imのリップル成分Irに基づいて生成される第1信号の一例である第1パルス信号Paと、端子間電圧V及び電流Imに基づいて算出される回転角度θとを用いて第2信号の一例である第2パルス信号Pbを生成する。すなわち、別々の方法で導き出される2つのパラメータである第1パルス信号Paと回転角度θとを用いて第2パルス信号Pbを生成する。そのため、一方のパラメータが適切に導出されなかった場合であっても他方のパラメータでその不具合を補うことができる。その結果、電動機10の回転情報をより高い信頼性で取得できる。
 回転角度算出部32は、例えば、端子間電圧Vと電流Imとに基づいて算出される電動機10の回転角速度ωを積算して回転角度θを算出するように構成される。そのため、回転角度算出部32は、電動機10の起動直後の期間、惰性回転期間等を含めた全期間に亘って回転角度θを安定的且つ継続的に算出できる。そして、第2信号生成部35は、例えば、回転角度θが所定角度に達したときに、第2パルス信号Pbを即時に生成するように構成される。そのため、第2信号生成部35は、第1パルス信号Paの生成漏れが発生した場合であっても、安定的且つ継続的に算出される回転角度θに基づき、所定角度だけ回転したことを表す第2パルス信号Pbをリアルタイムに生成できる。そのため、回転角度検出器100は、電動機10の回転情報を遅滞なく算出できる。
 第2信号生成部35は、例えば、回転角度θが所定角度に達したときに、回転角度θをゼロにリセットする指令を回転角度算出部32に出力するように構成される。そのため、回転角度検出器100は、回転角度算出部32が算出する回転角度θの最大値が所定角度に制限されるので、回転角度θの記憶に必要なメモリのサイズを小さくできる。
 所定角度は、例えば、整流子片20aの円弧の中心角、すなわちスリット間角度θcである。そのため、回転角度検出器100は、回転角度算出部32が算出する回転角度θの累積誤差の最大値をスリット間角度θcとすることができる。
 受付範囲は、例えば、電動機10がスリット間角度θcだけ回転する毎に生じる回転角度θの最大誤差の範囲である。すなわち、回転角速度算出部31が、実際よりも、回転角速度ωを大きく算出した場合に、実際の回転角度に基づく第1パルス信号Paが生成される(誤差を含んだ)回転角度θの最大値が第2閾値θdである。また、回転角速度算出部31が、実際よりも、回転角速度ωを小さく算出した場合に、実際の回転角度に基づく第1パルス信号Paが生成される(誤差を含んだ)回転角度θの最小値が第1閾値θuである。そのため、回転角度検出器100では、回転角度算出部32が算出する回転角度θの誤差が累積されない。つまり、電動機10が何回転しても、誤差を-αから+βの範囲とすることができる。
 第2信号生成部35は、例えば、第1パルス信号Paを受けたときに、回転角度θが第1閾値θu以上であれば、第2パルス信号Pbを生成するように構成される。第1閾値θuは、例えば、所定角度(スリット間角度θc)より小さい値として予め設定されている。この構成により、第2信号生成部35は、回転角度θが、第1閾値θu以上のときに生成された第1パルス信号Paをノイズに基づくものではないと見なす。そして、第1パルス信号Paが生成されなくても、回転角度θが所定角度(スリット間角度θc)に達したら、第2パルス信号Pbを生成する。そのため、第1パルス信号Paの生成漏れによる回転情報の算出結果への影響を確実に排除できる。
 また、第2信号生成部35は、例えば、第1パルス信号Paを受けたときに、回転角度θが第1閾値θu未満であれば、第2パルス信号Pbを生成しないように構成される。この構成により、第2信号生成部35は、回転角度θが第1閾値θu未満のときに生成された第1パルス信号Paをノイズに基づくものであると判定できる。そして、ノイズに基づいて生成された第1パルス信号Paに対応する第2パルス信号Pbが生成されてしまうのを防止できる。そのため、ノイズに基づいて生成された第1パルス信号Paによる回転情報の算出結果への影響を確実に排除できる。
 また、第2信号生成部35は、例えば、第1パルス信号Paを受けたときに、回転角度θが第2閾値θdより小さければ、回転角度θをゼロにリセットする指令を回転角度算出部32に出力するように構成される。第2閾値θdは、例えば、所定角度(スリット間角度θc)より位相がβだけ遅れた値として予め設定されている。この構成により、第2信号生成部35は、第1パルス信号Paの生成漏れの発生に先立って第2パルス信号Pbを生成した直後に第1パルス信号Paを受けた場合、その第1パルス信号Paをノイズに基づくものではないと見なす。そして、その第1パルス信号Paを、直前に生成した第2パルス信号Pbに対応付けることができる。そのため、第1パルス信号Paの生成タイミングのずれによる回転情報の算出結果への影響を確実に排除できる。
 以上、本発明の好ましい実施例について詳説した。しかしながら、本発明は、上述した実施例に制限されることはない。本発明の範囲を逸脱することなしに上述した実施例に種々の変形及び置換を加えることができる。
 本願は、2017年5月8日に出願した日本国特許出願2017-092603号に基づく優先権を主張するものであり、これらの日本国特許出願の全内容を本願に参照により援用する。
 10・・・電動機 10a・・・電圧検出部 10b・・・電流検出部 20・・・整流子 20a・・・整流子片 20s・・・スリット 30・・・電圧フィルタ部 31・・・回転角速度算出部 32・・・回転角度算出部 33・・・電流フィルタ部 34・・・第1信号生成部 35・・・第2信号生成部 36・・・回転情報算出部 37・・・抵抗設定部 100・・・回転角度検出器 SW1~SW4・・・スイッチ

Claims (6)

  1.  電動機と、
     前記電動機の回転角度を検出する回転角度検出器とを備え、
     前記電動機は、複数の整流子片からなる整流子を有し、
     前記回転角度検出器は、
     前記電動機の抵抗特性に対応する抵抗値を設定する抵抗設定部と、
     前記電動機の端子間電圧を検出する電圧検出部が検出した検出電圧値と前記電動機を流れる電流を検出する電流検出部が検出した検出電流値と前記抵抗設定部が設定した設定抵抗値とに基づいて前記電動機の回転に関する情報を算出する回転情報算出部と、を含み、
     前記抵抗設定部は、前記電動機の回転が安定している回転安定状態で検出された前記検出電圧値と前記検出電流値とに基づいて推定抵抗値を導き出し、該推定抵抗値を用いて前記設定抵抗値を更新するように構成されている、
     回転角度検出器付き電動機。
  2.  前記抵抗設定部は、前記推定抵抗値が所定範囲内である場合に該推定抵抗値を用いて前記設定抵抗値を更新し、前記推定抵抗値が所定範囲外である場合には前記設定抵抗値を更新しないように構成されている、
     請求項1に記載の回転角度検出器付き電動機。
  3.  前記電動機を流れる電流に含まれるリップル成分に基づいて第1信号を生成する第1信号生成部を更に含み、
     前記回転安定状態は、所定期間における前記電動機の端子間電圧の変動幅が所定値未満で、且つ、該所定期間における前記電動機を流れる電流の変動幅が所定値未満で、且つ、該所定期間における前記第1信号の周期の変動幅が所定値未満の状態を含む、
     請求項1又は2に記載の回転角度検出器付き電動機。
  4.  前記抵抗設定部は、更新後の前記設定抵抗値と前記推定抵抗値との差が、更新前の前記設定抵抗値と前記推定抵抗値との差より小さくなるように前記設定抵抗値を更新するように構成されている、
     請求項1乃至3の何れかに記載の回転角度検出器付き電動機。
  5.  整流子を備えた電動機の回転角度を検出する方法であって、
     前記電動機の端子間電圧を検出するステップと、
     前記電動機を流れる電流を検出するステップと、
     前記電動機の抵抗特性に対応する抵抗値を設定するステップと、
     検出電圧値と検出電流値と設定抵抗値とに基づいて前記電動機の回転に関する情報を算出するステップと、
     前記電動機の回転が安定している回転安定状態において検出された前記検出電圧値と前記検出電流値とに基づいて推定抵抗値を導き出し、該推定抵抗値を用いて前記設定抵抗値を更新するステップと、
     を含む、方法。
  6.  整流子を備えた電動機の回転角度を検出するための電動機の回転角度検出器であって、
     前記電動機の抵抗特性に対応する抵抗値を設定する抵抗設定部と、
     前記電動機の端子間電圧を検出する電圧検出部が検出した検出電圧値と前記電動機を流れる電流を検出する電流検出部が検出した検出電流値と前記抵抗設定部が設定した設定抵抗値とに基づいて前記電動機の回転に関する情報を算出する回転情報算出部と、を含み、
     前記抵抗設定部は、前記電動機の回転が安定している回転安定状態で検出された前記検出電圧値と前記検出電流値とに基づいて推定抵抗値を導き出し、該推定抵抗値を用いて前記設定抵抗値を更新するように構成されている、
     回転角度検出器。
PCT/JP2018/017395 2017-05-08 2018-05-01 回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法 WO2018207680A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019517581A JP6714775B2 (ja) 2017-05-08 2018-05-01 回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法
CN201880030510.XA CN110603728B (zh) 2017-05-08 2018-05-01 带旋转角度检测器的电动机、电动机的旋转角度检测器以及电动机的旋转角度检测方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-092603 2017-05-08
JP2017092603 2017-05-08

Publications (1)

Publication Number Publication Date
WO2018207680A1 true WO2018207680A1 (ja) 2018-11-15

Family

ID=64105232

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/017395 WO2018207680A1 (ja) 2017-05-08 2018-05-01 回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法

Country Status (3)

Country Link
JP (1) JP6714775B2 (ja)
CN (1) CN110603728B (ja)
WO (1) WO2018207680A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7406457B2 (ja) 2020-06-03 2023-12-27 アルプスアルパイン株式会社 回転角度検出器付き電動機、回転角度検出器、および、回転角度検出方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111121706A (zh) * 2019-12-31 2020-05-08 潍柴动力股份有限公司 一种挖掘机回转角度测量方法、装置和系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001186726A (ja) * 1999-12-24 2001-07-06 Mitsubishi Electric Corp 直流電動機、直流電動機の駆動装置および駆動方法
JP2002127922A (ja) * 2000-10-30 2002-05-09 Omron Corp 電動パワーステアリング装置
JP2010130727A (ja) * 2008-11-25 2010-06-10 Toyota Motor Corp 直流モータの回転情報検出装置
JP2011087412A (ja) * 2009-10-15 2011-04-28 Jtekt Corp モータ制御装置および電動パワーステアリング装置
JP2012240656A (ja) * 2011-05-24 2012-12-10 Jtekt Corp 電動パワーステアリング装置
US20140042944A1 (en) * 2012-08-13 2014-02-13 Dynamic Controls Method or system for minimizing the impact of back emf sampling for motor resistance profiling

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011010379A (ja) * 2009-06-23 2011-01-13 Jtekt Corp モータ制御装置および電動パワーステアリング装置
JP5703963B2 (ja) * 2011-05-25 2015-04-22 株式会社ジェイテクト 電動パワーステアリング装置
KR101856431B1 (ko) * 2015-03-30 2018-05-09 미쓰비시덴키 가부시키가이샤 보호 장치 및 서보 모터

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001186726A (ja) * 1999-12-24 2001-07-06 Mitsubishi Electric Corp 直流電動機、直流電動機の駆動装置および駆動方法
JP2002127922A (ja) * 2000-10-30 2002-05-09 Omron Corp 電動パワーステアリング装置
JP2010130727A (ja) * 2008-11-25 2010-06-10 Toyota Motor Corp 直流モータの回転情報検出装置
JP2011087412A (ja) * 2009-10-15 2011-04-28 Jtekt Corp モータ制御装置および電動パワーステアリング装置
JP2012240656A (ja) * 2011-05-24 2012-12-10 Jtekt Corp 電動パワーステアリング装置
US20140042944A1 (en) * 2012-08-13 2014-02-13 Dynamic Controls Method or system for minimizing the impact of back emf sampling for motor resistance profiling

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7406457B2 (ja) 2020-06-03 2023-12-27 アルプスアルパイン株式会社 回転角度検出器付き電動機、回転角度検出器、および、回転角度検出方法

Also Published As

Publication number Publication date
CN110603728B (zh) 2023-05-05
CN110603728A (zh) 2019-12-20
JPWO2018207680A1 (ja) 2020-01-23
JP6714775B2 (ja) 2020-06-24

Similar Documents

Publication Publication Date Title
WO2018207680A1 (ja) 回転角度検出器付き電動機、電動機の回転角度検出器、及び、整流子を備えた電動機の回転角度を検出する方法
KR102004080B1 (ko) 전동 파워 스티어링 장치의 제어 장치 및 전동 파워 스티어링 장치
CA2727125C (en) Control of brushless motor
US10962346B2 (en) Apparatus and method for obtaining information on rotation of DC commutator motor
JP6814284B2 (ja) 回転角度検出器付き電動機、電動機の回転角度検出器、及び、電動機の回転角度検出器の故障を検知する方法
US11371275B2 (en) Method for controlling a drive arrangement for a flap of a motor vehicle
JP6705061B2 (ja) 開閉体制御装置及び開閉体制御方法
US11289987B2 (en) Motor module, rotation angle detector, and method for detecting rotation angle of motor
WO2018123426A1 (ja) 直流整流子電動機の回転に関する情報を取得する装置及び方法
JP7406457B2 (ja) 回転角度検出器付き電動機、回転角度検出器、および、回転角度検出方法
US12015363B2 (en) Motor drive circuit, motor system, and electric device
JP7468390B2 (ja) モータ制御装置
JP2022094458A (ja) 移動体の位置検出装置、モータの回転量検出装置
EP2503684B1 (en) Control of brushless motor

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18797722

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019517581

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18797722

Country of ref document: EP

Kind code of ref document: A1