JP7006513B2 - Motor control device - Google Patents

Motor control device Download PDF

Info

Publication number
JP7006513B2
JP7006513B2 JP2018108792A JP2018108792A JP7006513B2 JP 7006513 B2 JP7006513 B2 JP 7006513B2 JP 2018108792 A JP2018108792 A JP 2018108792A JP 2018108792 A JP2018108792 A JP 2018108792A JP 7006513 B2 JP7006513 B2 JP 7006513B2
Authority
JP
Japan
Prior art keywords
value
cycle
timer
rotation speed
electric angle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018108792A
Other languages
Japanese (ja)
Other versions
JP2019213376A (en
Inventor
暁徳 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2018108792A priority Critical patent/JP7006513B2/en
Publication of JP2019213376A publication Critical patent/JP2019213376A/en
Application granted granted Critical
Publication of JP7006513B2 publication Critical patent/JP7006513B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Control Of Motors That Do Not Use Commutators (AREA)

Description

本開示は、ブラシレスモータのロータ位置を推定する技術に関する。 The present disclosure relates to a technique for estimating the rotor position of a brushless motor.

下記特許文献1には、3個のホールICを用いてブラシレスモータのロータ位置を検出する技術が記載されている。具体的には、マイクロコンピュータ(以下、マイコン)が有するハードウェアタイマを利用して、1個のホールIC信号の電気角周期を表す周期カウント値Ccy計測すると共に、予め設定された処理周期毎にハードウェアタイマの瞬時値を表す瞬時カウント値Cinを取得する。そして、ロータ位置を表す電気角θ[deg]を、下式を用いて算出する。 The following Patent Document 1 describes a technique for detecting the rotor position of a brushless motor using three Hall ICs. Specifically, a hardware timer possessed by a microcomputer (hereinafter referred to as a microcomputer) is used to measure a cycle count value Cyy representing the electrical angular cycle of one Hall IC signal, and for each preset processing cycle. Acquires the instantaneous count value Cin, which represents the instantaneous value of the hardware timer. Then, the electric angle θ [deg] representing the rotor position is calculated using the following equation.

θ=Cin÷Ccy×360[deg] θ = Cin ÷ Cy × 360 [deg]

特許第5709693号公報Japanese Patent No. 5709693

しかしながら、発明者の詳細な検討の結果、特許文献1に記載の従来技術では、ロータが、タイマの計測範囲外となるような低速で動作している場合、ロータ位置を精度よく推定できないという課題が見出された。 However, as a result of detailed studies by the inventor, in the prior art described in Patent Document 1, there is a problem that the rotor position cannot be estimated accurately when the rotor is operating at a low speed that is outside the measurement range of the timer. Was found.

即ち、ハードウェアタイマのビット幅は固定値であるため、ハードウェアタイマを動作させるクロックの周波数によって、ロータ回転数の分解能と、計測可能なロータ回転数の下限(以下、下限回転数)とが決まる。実際には、要求される分解能が得られるようにクロックの周波数を設定することによって、下限回転数が決まる。 That is, since the bit width of the hardware timer is a fixed value, the resolution of the rotor rotation speed and the lower limit of the measurable rotor rotation speed (hereinafter referred to as the lower limit rotation speed) are determined by the frequency of the clock that operates the hardware timer. It will be decided. In practice, the lower limit of revolutions is determined by setting the clock frequency so that the required resolution is obtained.

そして、ロータが下限回転数より低い回転数で動作(以下、低速動作)している場合、一周期の計測が終了する前にハードウェアタイマのカウント値が飽和するため、周期を正確に計測できない。その結果、ハードウェアタイマのカウント値からはロータ位置を推定できず、3個のホールICから出力される信号のパターンから60[deg]間隔という荒い精度でロータ位置を推定することになる。つまり、従来技術では、低速動作時には、ロータ位置の推定精度が劣化し、モータ制御の性能が損なわれていた。 When the rotor is operating at a rotation speed lower than the lower limit rotation speed (hereinafter, low-speed operation), the count value of the hardware timer is saturated before the measurement of one cycle is completed, so that the cycle cannot be measured accurately. .. As a result, the rotor position cannot be estimated from the count value of the hardware timer, and the rotor position is estimated with a rough accuracy of 60 [deg] intervals from the pattern of the signals output from the three Hall ICs. That is, in the prior art, the estimation accuracy of the rotor position deteriorates at low speed operation, and the performance of motor control is impaired.

本開示の1つの局面は、ロータの位置を精度よく推定できる範囲を、回転数のより低い範囲に拡大する技術を提供することにある。 One aspect of the present disclosure is to provide a technique for expanding the range in which the position of the rotor can be accurately estimated to a range in which the rotation speed is lower.

本開示の一態様によるモータ制御装置(1)は、ブラシレスモータを駆動する。モータ制御装置は、パターン生成部(31)と、第1周期計測部(35)と、第2周期計測部(32)と、相当値算出部(36)と、瞬時値調停部(37)と、電気角算出部(38)と、を備える。 The motor control device (1) according to one aspect of the present disclosure drives a brushless motor. The motor control device includes a pattern generation unit (31), a first period measurement unit (35), a second period measurement unit (32), an equivalent value calculation unit (36), and an instantaneous value arbitration unit (37). , And an electric angle calculation unit (38).

パターン生成部は、電気角周期の間に取り得る複数の回転位置に対応した検出パターンを生成する。電気角周期は、ロータが電気角で1回転する期間である。
第1周期計測部は、第1タイマ(3c)を用いて、電気角周期を表す第1周期値を算出
する。第1タイマは、予め設定されたビット幅を有し、ロータの回転数の分解能に応じて周期が設定されたクロック信号に従ってカウント動作を行い、検出パターンに従って電気角周期毎にカウント値がリセットされるハードウェアタイマである。
The pattern generation unit generates a detection pattern corresponding to a plurality of rotation positions that can be taken during the electric angle period. The electric angle period is a period during which the rotor makes one rotation at the electric angle.
The first period measuring unit calculates the first period value representing the electric angle period by using the first timer (3c). The first timer has a preset bit width, performs a counting operation according to a clock signal whose period is set according to the resolution of the rotation speed of the rotor, and resets the count value for each electric angle period according to a detection pattern. It is a hardware timer.

第2周期計測部は、第2タイマを用いて、検出パターンが変化する周期を表す第2周期値を算出する。第2タイマは、クロック信号の周期より長く設定されたカウント周期毎にカウント動作を行い、検出パターンが変化する毎にカウント値がリセットされる。 The second cycle measuring unit uses the second timer to calculate the second cycle value representing the cycle in which the detection pattern changes. The second timer performs a counting operation every count cycle set longer than the clock signal cycle, and resets the count value every time the detection pattern changes.

相当値算出部は、第2タイマのカウント値である第2タイマ値を取得し、該第2タイマ値を、検出パターンと第2周期値とを用いて、タイマ相当値に換算する。タイマ相当値は、電気角周期の基点となるタイミングから第2タイマ値が得られたタイミングまでの期間を、カウント周期でカウントした値に相当する。 The equivalent value calculation unit acquires the second timer value, which is the count value of the second timer, and converts the second timer value into a timer equivalent value using the detection pattern and the second cycle value. The timer equivalent value corresponds to the value counted in the count cycle from the timing which is the base point of the electric angle cycle to the timing when the second timer value is obtained.

低速判定部は、ロータの回転数が、下限回転数より小さいか否かを判定する。下限回転数は、第1タイマのカウント値を第1タイマ値として、電気角周期の間に第1タイマ値が飽和するロータの回転数である。 The low speed determination unit determines whether or not the rotation speed of the rotor is smaller than the lower limit rotation speed. The lower limit rotation speed is the rotation speed of the rotor in which the first timer value is saturated during the electric angle cycle, with the count value of the first timer as the first timer value.

瞬時値調停部は、低速判定部にて、ロータの回転数が下限回転数以上であると判定された場合は第1タイマ値を選択し、下限回転数より小さいと判定された場合はタイマ相当値を選択する。 The instantaneous value arbitration unit selects the first timer value when the low speed determination unit determines that the rotor rotation speed is equal to or higher than the lower limit rotation speed, and corresponds to a timer when it is determined that the rotor rotation speed is smaller than the lower limit rotation speed. Select a value.

電気角算出部は、選択部で選択された値である瞬時値と第1周期値とを用いて、電気角周期内での電気角を表す基準電気角を算出する。
このような構成によれば、ロータの回転数が下限回転数以上である場合、第1タイマ値を用いて、電気角周期内での位相である基準電気角が算出される。また、ロータの回転数が下限回転数より小さい場合、より低速のカウント周期で動作する第2タイマのカウント値を用いて、検出パターンが変化する期間内での位相を、電気角周期内での位相に換算したタイマ相当値を用いて、基準電気角が算出される。
The electric angle calculation unit calculates a reference electric angle representing the electric angle within the electric angle cycle by using the instantaneous value and the first period value which are the values selected by the selection unit.
According to such a configuration, when the rotation speed of the rotor is equal to or higher than the lower limit rotation speed, the reference electric angle, which is the phase within the electric angle period, is calculated using the first timer value. Further, when the rotation speed of the rotor is smaller than the lower limit rotation speed, the phase within the period in which the detection pattern changes is set within the electric angle cycle by using the count value of the second timer that operates at a slower count cycle. The reference electric angle is calculated using the timer equivalent value converted into the phase.

このため、ロータの回転数が、第1タイマでは測定不能な下限回転数より低い場合でも、ロータ位置を精度よく測定することができる。また、高速性が要求される第1タイマにはハードウェアタイマが用いられるが、より低速な第2タイマはソフトウェアによって構成することができる。第2タイマをソフトウェアで構成した場合、カウント値のビット幅もハードウェアに制約されることがないため、任意の大きさに設定でき、これにより、測定可能な回転数の下限値を大幅に改善することができる。 Therefore, even when the rotation speed of the rotor is lower than the lower limit rotation speed that cannot be measured by the first timer, the rotor position can be measured accurately. A hardware timer is used as the first timer that requires high speed, but a slower second timer can be configured by software. When the second timer is configured by software, the bit width of the count value is not restricted by the hardware, so it can be set to any size, which greatly improves the lower limit of the measurable rotation speed. can do.

また、第2タイマを用いた測定結果を、第1タイマ値と同等のタイマ相当値に変換しており、ロータの回転数に応じて第1タイマ値およびタイマ相当値のいずれかを瞬時値として選択するため、いずれが選択された場合でも同一の演算によって基準電気角を算出できる。 Further, the measurement result using the second timer is converted into a timer equivalent value equivalent to the first timer value, and either the first timer value or the timer equivalent value is used as an instantaneous value according to the rotation speed of the rotor. Since the selection is made, the reference electric angle can be calculated by the same calculation regardless of which one is selected.

なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。 In addition, the reference numerals in parentheses described in this column and the scope of claims indicate the correspondence with the specific means described in the embodiment described later as one embodiment, and the technical scope of the present disclosure is defined. It is not limited.

モータ制御装置、および制御対象となるブラシレスモータの構成を示すブロック図である。It is a block diagram which shows the structure of the motor control device, and the brushless motor to be controlled. 複数の検出パターンと、各検出パターンにおけるリミット値との関係を示す一覧表である。It is a list which shows the relationship between a plurality of detection patterns and a limit value in each detection pattern. モータ制御装置の制御部の機能的な構成を示す機能ブロック図である。It is a functional block diagram which shows the functional structure of the control part of a motor control device. 制御部の各部の動作を例示するタイミング図である。It is a timing diagram which illustrates the operation of each part of a control part. 回転数と、検出される基準電気角とを例示するグラフである。It is a graph which illustrates the rotation speed and the detected reference electric angle.

以下、図面を参照しながら、本開示の実施形態を説明する。
[1.構成]
図1に示すモータ制御装置1は、ブラシレスモータ5を駆動制御する装置である。ブラシレスモータ5は、三相モータであり、ロータ51と、複数のステータ52と、3個のホールIC53とを備える。
Hereinafter, embodiments of the present disclosure will be described with reference to the drawings.
[1. Constitution]
The motor control device 1 shown in FIG. 1 is a device that drives and controls the brushless motor 5. The brushless motor 5 is a three-phase motor and includes a rotor 51, a plurality of stators 52, and three hole ICs 53.

ロータ51は、複数の磁極対を回転自在に支持する。磁極対には、永久磁石が用いられる。磁極対は、ロータ51の外周においてN極とS極とが交互かつ均等に並ぶように配置される。本実施形態では、磁極対の数をNとして、N=5である場合について例示するが、これに限定されるものではなく、磁極対の数は任意でよい。 The rotor 51 rotatably supports a plurality of magnetic pole pairs. A permanent magnet is used for the pair of magnetic poles. The magnetic pole pairs are arranged so that the north poles and the south poles are arranged alternately and evenly on the outer circumference of the rotor 51. In the present embodiment, the case where the number of magnetic pole pairs is N and N = 5 is illustrated, but the present invention is not limited to this, and the number of magnetic pole pairs may be arbitrary.

ステータ52は、ロータ51の周囲に等角度間隔で配置され、巻線が巻回される。ステータ52は、U相、V相およびW相のいずれかの巻線がそれぞれ巻回される。本実施形態では、ステータ52の数が3である場合について例示するが、これに限定されるものではなく、ステータ52の数は、3の倍数であればよい。 The stator 52 is arranged around the rotor 51 at equal angular intervals, and windings are wound around the stator 52. The stator 52 is wound around any of the U-phase, V-phase, and W-phase windings. In the present embodiment, the case where the number of stators 52 is 3 is illustrated, but the present invention is not limited to this, and the number of stators 52 may be a multiple of 3.

3個のホールIC53は、いずれもホール素子が組み込まれた集積回路であり、ロータと一体に回転する永久磁石の磁極を検出して、磁極の極性に対応した信号レベルを有する検出信号Su,Sv,Swを出力する。検出信号Su,Sv,Swの信号レベルは、例えば、ホールIC53と対向する磁極がN極であるときにハイレベルHi、S極であるときにロウレベルLoとなる。 Each of the three Hall ICs 53 is an integrated circuit incorporating a Hall element, detects the magnetic poles of a permanent magnet that rotates integrally with the rotor, and has detection signals Su, Sv having a signal level corresponding to the polarity of the magnetic poles. , Sw is output. The signal levels of the detection signals Su, Sv, and Sw are, for example, high level Hi when the magnetic pole facing the hall IC 53 is N pole, and low level Lo when the magnetic poles are S pole.

3個のホールIC53は、電気角で120[deg]ずつ離れた位置に配置される。電気角とは、個々のホールIC53が出力する検出信号の1周期を360[deg]とした時の角度を表す。ここでは、ロータ51が5個の磁極対(即ち、磁極数は10)を有するため、機械角では、24(=120/5)[deg]ずつ離れた位置に配置される。但し、機械角での配置間隔は24[deg]に限るものではなく、例えば96(=120/5+360/5)[deg]でもよい。機械角とは、ロータ51の1回転を360[deg]としたときの角度を表す。これにより、3つの検出信号Su,Sv,Swは、図4に示すように、120[deg]ずつ位相が異なる。 The three hole ICs 53 are arranged at positions separated by 120 [deg] in terms of electrical angle. The electric angle represents an angle when one cycle of the detection signal output by each Hall IC 53 is 360 [deg]. Here, since the rotor 51 has five magnetic pole pairs (that is, the number of magnetic poles is 10), they are arranged at positions separated by 24 (= 120/5) [deg] in terms of mechanical angle. However, the arrangement interval at the machine angle is not limited to 24 [deg], and may be, for example, 96 (= 120/5 + 360/5) [deg]. The mechanical angle represents an angle when one rotation of the rotor 51 is 360 [deg]. As a result, the three detection signals Su, Sv, and Sw have different phases by 120 [deg] as shown in FIG.

モータ制御装置1は、インタフェース(以下、I/F)部2と、制御部3と、駆動回路4とを備える。
I/F部2は、3つの検出信号Su,Sv,Swを入力し、これらの信号に、増幅処理や波形整形処理などを施して制御部3へ出力する。
The motor control device 1 includes an interface (hereinafter, I / F) unit 2, a control unit 3, and a drive circuit 4.
The I / F unit 2 inputs three detection signals Su, Sv, and Sw, performs amplification processing, waveform shaping processing, and the like on these signals and outputs them to the control unit 3.

制御部3は、検出信号Su,Sv,Swにより電気角60[deg]単位で表現される低精度な回転位置から、より高精度に回転位置を表現する基準電気角θを推定し、この基準電気角θに応じたデューティ比を有するPWM信号を生成して、駆動回路4に出力する。 The control unit 3 estimates the reference electric angle θ that expresses the rotation position with higher accuracy from the low-precision rotation position expressed in units of electric angles 60 [deg] by the detection signals Su, Sv, and Sw, and this reference. A PWM signal having a duty ratio corresponding to the electric angle θ is generated and output to the drive circuit 4.

駆動回路4は、PWM信号に応じた所定の周期で各相のステータ52の巻線に通電することで、巻線と磁極との間に発生する吸引力および反発力によって、ロータ51を回転させる。 The drive circuit 4 energizes the windings of the stator 52 of each phase at a predetermined cycle according to the PWM signal, and rotates the rotor 51 by the attractive force and the repulsive force generated between the windings and the magnetic poles. ..

制御部3は、CPU3aと、例えば、RAM又はROM等の半導体メモリ(以下、メモリ3b)と、ハードウェアタイマ3cと、を有するマイクロコンピュータを備える。制御部3の各機能は、CPU3aが非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、メモリ3bが、プログラムを格納した非遷移的実体的記録媒体に該当する。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。なお、制御部3は、1つのマイクロコンピュータを備えてもよいし、複数のマイクロコンピュータを備えてもよい。 The control unit 3 includes a microcomputer having a CPU 3a, a semiconductor memory such as RAM or ROM (hereinafter, memory 3b), and a hardware timer 3c. Each function of the control unit 3 is realized by the CPU 3a executing a program stored in a non-transitional substantive recording medium. In this example, the memory 3b corresponds to a non-transitional substantive recording medium in which a program is stored. In addition, when this program is executed, the method corresponding to the program is executed. The control unit 3 may include one microcomputer or a plurality of microcomputers.

メモリ3bには、プログラムの他、制御部3の機能を実現するために必要なデータとしてパターンテーブルが記憶される。パターンテーブルは、図2に示すように、検出パターン(U,V,W)と、該検出パターン(U,V,W)に対応づけられるリミット値とが記憶されている。検出パターン(U,V,W)は、検出信号Su,Sv,Swによって表現される信号レベルの組み合わせパターンである。なお、図1に示したロータ51の時計周りをCW、反時計周りをCCWと表記するものとして、検出パターン(U,V,W)は、ロータ51の回転方向がCWである場合に変化する順番に記憶される。各検出パターンのリミット値は、それぞれ上限角および下限角を有する。上限角と下限角とは、両者の差が60[deg]となり、且つ、順方向に並ぶ先の検出パターンの上限角と後の検出パターンの下限角とが一致するように設定される。ここでは、検出信号Su,Sv,SwのハイレベルHiを1、ロウレベルLoを0で表すものとする。そして、検出パターン(U,V,W)が(1,0,1)である場合における下限角を基準(即ち、0[deg])にして設定される。 In addition to the program, the memory 3b stores a pattern table as data necessary for realizing the function of the control unit 3. As shown in FIG. 2, the pattern table stores a detection pattern (U, V, W) and a limit value associated with the detection pattern (U, V, W). The detection pattern (U, V, W) is a combination pattern of signal levels expressed by the detection signals Su, Sv, Sw. It should be noted that the clockwise direction of the rotor 51 shown in FIG. 1 is expressed as CW and the counterclockwise direction is expressed as CCW, and the detection pattern (U, V, W) changes when the rotation direction of the rotor 51 is CW. It is memorized in order. The limit value of each detection pattern has an upper limit angle and a lower limit angle, respectively. The upper limit angle and the lower limit angle are set so that the difference between the two is 60 [deg], and the upper limit angle of the first detection pattern arranged in the forward direction and the lower limit angle of the later detection pattern match. Here, it is assumed that the high level Hi of the detection signals Su, Sv, and Sw is represented by 1 and the low level Lo is represented by 0. Then, the lower limit angle when the detection pattern (U, V, W) is (1, 0, 1) is set as a reference (that is, 0 [deg]).

ハードウェアタイマ3cは、第1タイマに相当する。ハードウェアタイマ3cは、カウント値が16ビットで表現される。ハードウェアタイマ3cは、所定の周波数を有するクロックCKによって駆動される。ハードウェアタイマ3cのカウント値を第1タイマ値HCとして出力すると共に、いずれか一つのホールIC53からの検出信号、ここではU相の検出信号Suの立ち上がりエッジをトリガに、カウント値を第1周期値Crとして保存し、計測用のカウンタをリセットする。 The hardware timer 3c corresponds to the first timer. The hardware timer 3c has a count value represented by 16 bits. The hardware timer 3c is driven by a clock CK having a predetermined frequency. The count value of the hardware timer 3c is output as the first timer value HC, and the count value is set to the first cycle by using the detection signal from any one of the hall IC 53s, here the rising edge of the U-phase detection signal Su, as a trigger. Save as the value Cr and reset the measurement counter.

ハードウェアタイマ3cを駆動するクロックCKの周波数fhwt[Hz]は、ロータ51の回転数(以下、ロータ回転数)がNrated[rpm]の時に、±Nerror[rpm]以下の回転数精度が得られるように設定される。詳しくは、ロータ回転数Nratedに相当する電気角周期を、周波数fhwtでカウントしたときのカウント値を求め、そのカウント値を1カウント変化させたときにロータ回転数の変化がNerror以下となるように、周波数fhwtを設定する。但し、周波数fhwtは、ハードウェアタイマ3cの駆動用に用意されたクロックを分周することで得られる周波数の中から、上記条件を満たす最小の周波数が選択される。なお、ハードウェアタイマ3cのビット数は、上述の16ビットに限定されるものではない。 The frequency fhwt [Hz] of the clock CK that drives the hardware timer 3c can obtain a rotation speed accuracy of ± Nerror [rpm] or less when the rotation speed of the rotor 51 (hereinafter, rotor rotation speed) is Nrated [rpm]. Is set to. Specifically, the count value when the electric angle period corresponding to the rotor rotation speed Nrated is counted at the frequency fhwt is obtained, and the change in the rotor rotation speed becomes Nerror or less when the count value is changed by 1 count. , Set the frequency fhwt. However, as the frequency fhwt, the minimum frequency satisfying the above conditions is selected from the frequencies obtained by dividing the clock prepared for driving the hardware timer 3c. The number of bits of the hardware timer 3c is not limited to the 16 bits described above.

周波数がfhwtである場合、ハードウェアタイマ3cのカウント値がカウント開始から飽和するまでに要する時間が216/fhwt[s]である。また、ハードウェアタイマ3cによって検出可能なロータ回転数の下限である下限回転数は60÷極対数÷(216/fhwt)[rpm]となる。 When the frequency is fhwt , the time required from the start of counting to the saturation of the count value of the hardware timer 3c is 216 / fhwt [s]. Further, the lower limit rotation speed, which is the lower limit of the rotor rotation speed that can be detected by the hardware timer 3c, is 60 ÷ pole pair number ÷ (216 / fhwt ) [rpm].

制御部3は、図3に示すように、パターン生成部31と、第2周期計測部32と、回転判定部33と、低速判定部34と、第1周期計測部35と、相当値算出部36と、瞬時値調停部37と、電気角算出部38と、信号生成部39と、を備える。これら制御部3に含まれる各部の機能を実現する手法は、ソフトウェアに限るものではなく、その一部又は全部の機能は、一つあるいは複数のハードウェアを用いて実現されてもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は、デジタル
回路、又はアナログ回路、あるいはこれらの組合せによって実現されてもよい。
As shown in FIG. 3, the control unit 3 includes a pattern generation unit 31, a second cycle measurement unit 32, a rotation determination unit 33, a low speed determination unit 34, a first cycle measurement unit 35, and an equivalent value calculation unit. 36, an instantaneous value arbitration unit 37, an electric angle calculation unit 38, and a signal generation unit 39 are provided. The method for realizing the functions of each unit included in the control unit 3 is not limited to software, and some or all of the functions may be realized by using one or a plurality of hardware. For example, when the above function is realized by an electronic circuit which is hardware, the electronic circuit may be realized by a digital circuit, an analog circuit, or a combination thereof.

なお、瞬時値調停部37、電気角算出部38、および信号生成部39は、予め設定された処理周期Tp毎に処理が実行される。処理周期Tpは、例えば、fp[Hz]として、Tp=1/fp[s]に設定される。また、第2周期計測部32、回転判定部33、低速判定部34、および相当値算出部36は、処理周期Tpより長く設定されたカウント周期Tc毎に処理が実行される。カウント周期Tcは処理周期Tpの整数倍の長さを有する。 The instantaneous value arbitration unit 37, the electric angle calculation unit 38, and the signal generation unit 39 execute processing at each preset processing cycle Tp. The processing cycle Tp is set to Tp = 1 / fp [s], for example, as fp [Hz]. Further, the second cycle measurement unit 32, the rotation determination unit 33, the low speed determination unit 34, and the equivalent value calculation unit 36 execute processing every count cycle Tc set longer than the processing cycle Tp. The count cycle Tc has a length that is an integral multiple of the processing cycle Tp.

パターン生成部31は、処理周期Tp毎に、検出信号Su,Sv,Swの信号レベルがハイレベルかロウレベルかを判断し、判断結果である検出パターン(U,V,W)をバッファに記憶する。パターン生成部31は、現在の検出パターンである現パターンと、バッファに記憶された検出パターンである前パターンとを比較して、現パターンが前パターンから変化したか否かを判断し、その判断結果を表す切替信号Sxを生成する。パターン生成部31は、現パターンが前パターンから変化した場合に、バッファの記憶内容を更新する。切替信号Sxは、第2周期計測部32に入力される。バッファの記憶内容は、第2周期計測部32、回転判定部33および相当値算出部36に入力される。 The pattern generation unit 31 determines whether the signal levels of the detection signals Su, Sv, and Sw are high level or low level for each processing cycle Tp, and stores the detection pattern (U, V, W) as the determination result in the buffer. .. The pattern generation unit 31 compares the current pattern, which is the current detection pattern, with the previous pattern, which is the detection pattern stored in the buffer, determines whether or not the current pattern has changed from the previous pattern, and determines that determination. A switching signal Sx representing the result is generated. The pattern generation unit 31 updates the stored contents of the buffer when the current pattern changes from the previous pattern. The switching signal Sx is input to the second cycle measuring unit 32. The stored contents of the buffer are input to the second cycle measurement unit 32, the rotation determination unit 33, and the equivalent value calculation unit 36.

第2周期計測部32は、ソフトウェアによって実現されるタイマである第2タイマを有する。第2周期計測部32は、カウント周期Tc毎に第2タイマのカウント動作を実行し、切替信号Sxに従い、検出パターン(U,V,W)の変化をトリガとしてカウント値がリセットされる。第2周期計測部32は、リセットの直前に得られるカウント値を、パターンが変化する周期Tptを表す第2周期値Cptとして出力する。また、第2周期計測部32は、リセット時点からの経過時間に対応した値として、カウント値C2を出力する。第2周期値Cptは低速判定部34および相当値算出部36に入力され、カウント値C2は相当値算出部36に入力される。 The second period measuring unit 32 has a second timer which is a timer realized by software. The second cycle measurement unit 32 executes the count operation of the second timer for each count cycle Tc, and resets the count value according to the switching signal Sx, triggered by the change in the detection pattern (U, V, W). The second cycle measurement unit 32 outputs the count value obtained immediately before the reset as the second cycle value Cpt representing the cycle Tpt at which the pattern changes. Further, the second cycle measurement unit 32 outputs the count value C2 as a value corresponding to the elapsed time from the reset time. The second period value Cpt is input to the low speed determination unit 34 and the equivalent value calculation unit 36, and the count value C2 is input to the equivalent value calculation unit 36.

回転判定部33は、図2に示したパターンテーブルを参照して、過去に取得された検出パターンと新たに取得された検出パターンとを比較し、検出パターン(U,V,W)の変化の仕方から、ロータ51の回転方向を判定し、その判定結果を示す回転判定信号Srを出力する。つまり、検出パターン(U,V,W)が、パターンテーブルの上から下へ向かうように変化する場合はCWと判定し、下から上へ向かうように変化する場合はCCWと判定する。回転判定信号Srは、相当値算出部36および電気角算出部38に入力される。 The rotation determination unit 33 compares the previously acquired detection pattern with the newly acquired detection pattern with reference to the pattern table shown in FIG. 2, and changes the detection pattern (U, V, W). Therefore, the rotation direction of the rotor 51 is determined, and the rotation determination signal Sr indicating the determination result is output. That is, when the detection pattern (U, V, W) changes from the top to the bottom of the pattern table, it is determined to be CW, and when it changes from the bottom to the top, it is determined to be CCW. The rotation determination signal Sr is input to the equivalent value calculation unit 36 and the electric angle calculation unit 38.

低速判定部34は、第2周期計測部32で計測された第2周期値Cptが予め設定された低速閾値を超えたか否かを判断し、その判断結果を表す低速判定信号Svを出力する。低速判定信号Svは、第1周期計測部35および瞬時値調停部37に入力される。低速閾値は、ロータ回転数の下限回転数に相当するパターン周期Tptを、カウント周期Tcで除した値に設定される。つまり、低速判定部34は、第2周期値Cptが低速閾値を超えている場合に、ロータ回転数が下限回転数に満たない、即ち、ハードウェアタイマ3cでは計測不能な回転数まで低下していると判定する。また、低速判定部34は、カウント値C2が低速閾値を超えてもリセットされない場合にも、ロータ回転数が下限回転数に満たないと判定する。 The low-speed determination unit 34 determines whether or not the second cycle value Cpt measured by the second cycle measurement unit 32 exceeds a preset low-speed threshold value, and outputs a low-speed determination signal Sv indicating the determination result. The low-speed determination signal Sv is input to the first period measurement unit 35 and the instantaneous value arbitration unit 37. The low speed threshold value is set to a value obtained by dividing the pattern period Tpt corresponding to the lower limit rotation speed of the rotor rotation speed by the count cycle Tc. That is, when the second cycle value Cpt exceeds the low speed threshold value, the low speed determination unit 34 reduces the rotor rotation speed to less than the lower limit rotation speed, that is, the rotation speed that cannot be measured by the hardware timer 3c. It is determined that there is. Further, the low speed determination unit 34 determines that the rotor rotation speed does not reach the lower limit rotation speed even when the count value C2 is not reset even if it exceeds the low speed threshold value.

第1周期計測部35は、周期バッファ351と、周期調停部353とを備える。
ハードウェアタイマ3cは、ハードウェアタイマ3cが検出信号Suに従ってリセットされる毎に、リセット直前のカウント値Crを、周期バッファ351に記憶する。バッファリングは、ソフトウェアにより実行される。周期バッファ351は、ロータ51の磁極対と同数である過去5回分のカウント値Crが少なくとも記憶される。なお、図3において[n]はバッファに記憶された最新のカウント値Crであることを表す。[max]は
ハードウェアタイマ3cのカウント値の上限である飽和値を表す。周期バッファ351は、[n]を第1データとし、[max]を第2データとして出力する。
The first period measuring unit 35 includes a period buffer 351 and a period arbitration unit 353.
Each time the hardware timer 3c is reset according to the detection signal Su, the hardware timer 3c stores the count value Cr immediately before the reset in the cycle buffer 351. Buffering is performed by software. The periodic buffer 351 stores at least the count value Cr for the past five times, which is the same number as the number of magnetic pole pairs of the rotor 51. In FIG. 3, [n] represents the latest count value Cr stored in the buffer. [Max] represents the saturation value which is the upper limit of the count value of the hardware timer 3c. The periodic buffer 351 outputs [n] as the first data and [max] as the second data.

周期調停部353は、低速判定信号Slowに従って、第1データ[n]および第2データ[max]のいずれかを選択し、ロータ51の電気角周期を表す第1周期値Ccyの算出に必要な周期データDcyとして出力する。具体的には、低速判定信号Slowにより、ロータ回転数が下限回転数より低下していることが示されている場合は、第2データ[max]が周期データDcyとして選択される。ロータ回転数が下限回転数以上である場合は、第1データ[n]が周期データDcyとして選択される。選択された周期データDcyは、電気角算出部38に入力される。 The periodic arbitration unit 353 selects either the first data [n] or the second data [max] according to the low-speed determination signal Slow, and is necessary for calculating the first period value Cyy representing the electric angle period of the rotor 51. Output as periodic data Dcy. Specifically, when the low speed determination signal Slow indicates that the rotor rotation speed is lower than the lower limit rotation speed, the second data [max] is selected as the periodic data Dcy. When the rotor rotation speed is equal to or higher than the lower limit rotation speed, the first data [n] is selected as the periodic data Dcy. The selected periodic data Dcy is input to the electric angle calculation unit 38.

相当値算出部36は、符号付与部361と、リミット設定部362と、換算部363と、を備える。
符号付与部361は、カウント周期Tc毎に第2周期計測部32からカウント値C2および第2周期値Cptを取得し、(1)式に従って、パターン周期内での位相を表す符号付きカウント値SCを算出する。
The equivalent value calculation unit 36 includes a signing unit 361, a limit setting unit 362, and a conversion unit 363.
The coding unit 361 acquires the count value C2 and the second period value Cpt from the second period measurement unit 32 for each count cycle Tc, and according to the equation (1), the coded count value SC representing the phase in the pattern period. Is calculated.

SC=Sign×(C2÷Cpt)×([max]×60÷360) (1)
即ち、符号付与部361は、カウント値C2を第2周期値Cptで除した結果に、ハードウェアタイマ3cのカウント値の上限である飽和値[max]をパターン周期(即ち、60[deg])分の値に換算した値を乗じ、更に、回転判定信号Srに従って符号Signを付与することで符号付きカウント値SCを算出する。符号Signは、具体的には、回転判定信号Srにより示される回転方向がCWである場合はプラス符号となり、回転方向がCCWである場合はマイナス符号となる。
SC = Sign × (C2 ÷ Cpt) × ([max] × 60 ÷ 360) (1)
That is, the signing unit 361 divides the count value C2 by the second cycle value Cpt, and sets the saturation value [max], which is the upper limit of the count value of the hardware timer 3c, as the pattern cycle (that is, 60 [deg]). The signed count value SC is calculated by multiplying the value converted into the minute value and further assigning the sign Sign according to the rotation determination signal Sr. Specifically, the symbol Sign is a plus sign when the rotation direction indicated by the rotation determination signal Sr is CW, and is a minus sign when the rotation direction is CCW.

リミット設定部362は、パターン生成部31から検出パターン(U,V,W)を取得し、パターンテーブルを参照して、取得した検出パターン(U,V,W)に応じた下限角αLおよび上限角αUを取得し、(2)(3)式に従って、下限値CLおよび上限値CUを算出する。 The limit setting unit 362 acquires a detection pattern (U, V, W) from the pattern generation unit 31, refers to the pattern table, and has a lower limit angle αL and an upper limit corresponding to the acquired detection pattern (U, V, W). The angle αU is acquired, and the lower limit CL and the upper limit CU are calculated according to the equations (2) and (3).

CL=αL÷360×[max] (2)
CU=αU÷360×[max] (3)
即ち、リミット設定部362は、取得した下限角αLおよび上限角αUを、それぞれ360[deg]で除した結果に、ハードウェアタイマ3cのカウント値の上限である飽和値[max]を乗じることで、下限値CLおよび上限値CUを算出する。この下限値CLおよび上限値CUは、取得した検出パターン(U,V,W)の状態が維持されている間に、タイマ相当値Ceが取り得る値の範囲を表す。
CL = αL ÷ 360 × [max] (2)
CU = αU ÷ 360 × [max] (3)
That is, the limit setting unit 362 divides the acquired lower limit angle αL and upper limit angle αU by 360 [deg], respectively, by multiplying the result by the saturation value [max] which is the upper limit of the count value of the hardware timer 3c. , Lower limit CL and upper limit CU are calculated. The lower limit value CL and the upper limit value CU represent a range of values that the timer equivalent value Ce can take while the state of the acquired detection pattern (U, V, W) is maintained.

換算部363は、回転判定信号Srに従い、回転方向がCWである場合は下限値CLを基準値Cfとして選択し、回転方向がCCWである場合は上限値CUを基準値Cfとして選択する。また、換算部363は、選択された基準値Cfに、符号付与部361からの符号付きカウント値SCを加算する。具体的には、回転方向がCWの場合は、基準値Cfである下限値CLとプラス符号のカウント値との加算が実行され、回転方向がCCWの場合は、基準値Cfである上限値CUとマイナス符号のカウント値との加算、即ち、上限値CUからのカウント値の減算が実行される。更に換算部363は、加算結果が下限値CLから上限値CUまでの許容範囲内にある場合は、加算結果をそのままタイマ相当値Ceとして出力する。また換算部363は、加算結果が許容範囲外にある場合は、ガード値によって制限された値をタイマ値Ceとして出力する。具体的には、加算結果が、上限値CUより大きな値であれば、ガード値である上限値CUをタイマ相当値Ceとし、下限値CLより小さな値であれば、ガード値である下限値CLをタイマ相当値Ceとして出力する。タ
イマ相当値Ceは、瞬時値調停部37に入力される。
According to the rotation determination signal Sr, the conversion unit 363 selects the lower limit value CL as the reference value Cf when the rotation direction is CW, and selects the upper limit value CU as the reference value Cf when the rotation direction is CCW. Further, the conversion unit 363 adds the signed count value SC from the signing unit 361 to the selected reference value Cf. Specifically, when the rotation direction is CW, the addition of the lower limit value CL which is the reference value Cf and the count value of the plus sign is executed, and when the rotation direction is CCW, the upper limit value CU which is the reference value Cf is executed. And the count value of the minus sign are added, that is, the count value is subtracted from the upper limit value CU. Further, when the addition result is within the allowable range from the lower limit value CL to the upper limit value CU, the conversion unit 363 outputs the addition result as it is as the timer equivalent value Ce. If the addition result is out of the permissible range, the conversion unit 363 outputs the value limited by the guard value as the timer value Ce. Specifically, if the addition result is a value larger than the upper limit value CU, the upper limit value CU which is a guard value is set as the timer equivalent value Ce, and when the value is smaller than the lower limit value CL, the lower limit value CL which is a guard value. Is output as a timer equivalent value Ce. The timer equivalent value Ce is input to the instantaneous value arbitration unit 37.

つまり、相当値算出部36では、検出パターン(U,V,W)によって特定される電気角で60[deg]の範囲内での位相(即ち、ロータ51の回転位置)を推定し、更に、検出パターン(U,V,W)を用いて電気角で360[deg]の範囲(即ち、1周期)内での位相を表す値に換算したものをタイマ相当値Ceとして出力する。 That is, the equivalent value calculation unit 36 estimates the phase (that is, the rotation position of the rotor 51) within the range of 60 [deg] with the electric angle specified by the detection pattern (U, V, W), and further. Using the detection pattern (U, V, W), the value converted into a value representing the phase within the range of 360 [deg] in the electric angle (that is, one cycle) is output as the timer equivalent value Ce.

瞬時値調停部37は、低速判定信号Svに従い、ロータ回転数が下限回転数以上である場合は、第1タイマ値HCを選択し、ロータ回転数が下限回転数より低い場合は、タイマ相当値Ceを選択して、選択された値を瞬時値Cinとして出力する。瞬時値Cinは、電気角算出部38に入力される。 The instantaneous value arbitration unit 37 selects the first timer value HC when the rotor rotation speed is equal to or higher than the lower limit rotation speed according to the low speed determination signal Sv, and the timer equivalent value when the rotor rotation speed is lower than the lower limit rotation speed. Ce is selected and the selected value is output as an instantaneous value Cin. The instantaneous value Cin is input to the electric angle calculation unit 38.

電気角算出部38は、周期データDcyを第1周期値Ccyとし、この第1周期値Ccyと、瞬時値Cinと、回転判定信号Srとに基づき、回転判定信号SrがCWの時は(4)式に従って、回転判定信号SrがCCWの時は(5)式に従って、基準電気角θを算出する。(4)及び(5)式は、回転方向によりロータ位置と立上がりエッジの関係が180[deg]変化することを意味する。 The electric angle calculation unit 38 sets the periodic data Dcy as the first periodic value Ccy, and based on the first periodic value Ccy, the instantaneous value Cin, and the rotation determination signal Sr, when the rotation determination signal Sr is CW (4). ), When the rotation determination signal Sr is CCW, the reference electric angle θ is calculated according to the equation (5). Equations (4) and (5) mean that the relationship between the rotor position and the rising edge changes by 180 [deg] depending on the rotation direction.

θ=Cin÷Ccy×360[deg] (4)
θ=-Cin÷Ccy×360+180[deg] (5)
ここでは、第1周期値Ccyとして、周期データDcyをそのまま用いているが、これに限定されるものではない。例えば、過去N周期分の周期データDcyをD1~DNで表すものとして、(6)式に示すように、機械角で1周期分に相当する電気角でN周期分の周期データD1~DNの平均値を、第1周期値Ccyとして用いてもよい。なお、平均化するデータ数は、N個に限定されるものではない。
θ = Cin ÷ Cy × 360 [deg] (4)
θ = -Cin ÷ Cy x 360 + 180 [deg] (5)
Here, the periodic data Dcy is used as it is as the first periodic value Ccy, but the present invention is not limited to this. For example, assuming that the period data Dcy for the past N cycles is represented by D1 to DN, as shown in Eq. (6), the period data D1 to DN for N cycles with the electric angle corresponding to one cycle in the mechanical angle. The average value may be used as the first cycle value Cy. The number of data to be averaged is not limited to N.

Ccy=(D1+D2+…+DN)/N (6)
信号生成部39は、基準電気角θに従って、ステータ52の巻線の通電制御に用いる3種類のPWM信号を生成する。
Ccy = (D1 + D2 + ... + DN) / N (6)
The signal generation unit 39 generates three types of PWM signals used for energization control of the winding of the stator 52 according to the reference electric angle θ.

[2.動作]
図4に示すように、検出信号Su,Sv,Swは、電気角で120degずつずれたタイミングで信号レベルが変化し、回転方向が一定である場合、電気角周期(即ち、360deg)の間に6つの検出パターン(U,V,W)が現れる。
[2. motion]
As shown in FIG. 4, the detection signals Su, Sv, Sw change in signal level at a timing deviated by 120 deg in the electric angle, and when the rotation direction is constant, during the electric angle period (that is, 360 deg). Six detection patterns (U, V, W) appear.

第1タイマ値HCは処理周期Tp毎に取得される。第2タイマ値C2は、カウント周期Tc毎に取得される。なお、第2タイマ値C2は、第1タイマ値HCより緩やかに変化する。 The first timer value HC is acquired for each processing cycle Tp. The second timer value C2 is acquired for each count cycle Tc. The second timer value C2 changes more slowly than the first timer value HC.

図示を省略するが、第1周期値Ccyは、処理周期Tp毎またはカウント周期Tc毎に取得され、その値は電気角の1周期毎に変化する。第2周期値Cptは、カウント周期Tc毎に取得され、その値は、電気角の60[deg]毎に変化する。タイマ相当値Ceは、カウント周期Tc毎に算出される。 Although not shown, the first cycle value Ccy is acquired every processing cycle Tp or every count cycle Tc, and the value changes every one cycle of the electric angle. The second cycle value Cpt is acquired for each count cycle Tc, and the value changes every 60 [deg] of the electric angle. The timer equivalent value Ce is calculated for each count cycle Tc.

基準電気角θは、処理周期Tp毎に算出される。
回転判定信号Srは、処理周期Tp毎に確認され、検出パターン(U,V,W)が変化するタイミングで変化する。低速判定値Svは、カウント周期Tc毎に確認される。
低速判定は、カウント周期毎に行われる。
The reference electric angle θ is calculated for each processing cycle Tp.
The rotation determination signal Sr is confirmed for each processing cycle Tp, and changes at the timing when the detection pattern (U, V, W) changes. The low speed determination value Sv is confirmed for each count cycle Tc.
The low speed determination is performed every count cycle.

第1周期値Ccyは、周期データDcyに基づいて処理周期Tp毎またはカウント周期
Tc毎に算出され、基準電気角θは、瞬時値Cinと第1周期値Ccyを用いて処理周期Tp毎に算出される。
The first cycle value Ccy is calculated for each processing cycle Tp or count cycle Tc based on the cycle data Dcy, and the reference electric angle θ is calculated for each processing cycle Tp using the instantaneous value Cin and the first cycle value Ccy. Will be done.

瞬時値Cinは、ロータ回転数が下限回転数以上である非低速動作時には第1タイマ値HCが用いられ、ロータ回転数が下限回転数より小さい低速動作時にはタイマ相当値Ceが用いられる。 For the instantaneous value Cin, the first timer value HC is used during non-low speed operation when the rotor rotation speed is equal to or higher than the lower limit rotation speed, and the timer equivalent value Ce is used during low speed operation when the rotor rotation speed is smaller than the lower limit rotation speed.

非低速動作時には、周期データDcyとして第1データ[n]が選択される。つまり、ハードウェアタイマ3cから得られる電気周期のカウント値である第1データ[n]が、周期データDcy、ひいては第1周期値Ccyとして使用される。 During non-low speed operation, the first data [n] is selected as the periodic data Dcy. That is, the first data [n], which is the count value of the electric cycle obtained from the hardware timer 3c, is used as the cycle data Dcy, and by extension, the first cycle value Ccy.

低速動作時には、周期データDcyとして第2データ[max]が選択される。つまり、下限回転数のときの周期を表す飽和値が、周期データDcy、ひいては第1周期値Ccyとして使用される。 At low speed operation, the second data [max] is selected as the periodic data Dcy. That is, the saturation value representing the period at the lower limit rotation speed is used as the period data Dcy, and by extension, the first period value Ccy.

図4では、ロータ51が非低速動作である場合のタイミング図を示しているが、低速動作である場合、検出信号Su,Sv,Sw、検出パターン(U,V,W)が時間軸方向に引き伸ばされる点、ハードウェアタイマ3cの代わりにソフトウェアで動作する第2タイマを用いて算出された瞬時値Cin(即ち、タイマ相当値Ce)が用いられる点以外は、同様なタイミング図となる。 FIG. 4 shows a timing diagram when the rotor 51 is in non-low speed operation, but in the case of low speed operation, the detection signals Su, Sv, Sw and the detection pattern (U, V, W) are in the time axis direction. The timing diagram is the same except that the instantaneous value Cin (that is, the timer equivalent value Ce) calculated by using the second timer operated by the software instead of the hardware timer 3c is used.

図5は、回転方向が変化するときに回転数がゼロとなる前後で生じる低速動作時において、タイマ相当値に基づいて算出される基準電気角θおよび検出パターンから設定されるガード値を例示したグラフである。図5の下側のグラフにおいて、実線は基準電気角θであり、一点鎖線はガード値であり、破線は基準電気角θの理論値である。 FIG. 5 illustrates a guard value set from a reference electric angle θ calculated based on a timer equivalent value and a detection pattern during low-speed operation that occurs before and after the rotation speed becomes zero when the rotation direction changes. It is a graph. In the lower graph of FIG. 5, the solid line is the reference electric angle θ, the alternate long and short dash line is the guard value, and the broken line is the theoretical value of the reference electric angle θ.

低速動作時には、第1周期値Ccyの算出に、下限回転数の時の周期を表すカウント値[max]が用いられるため、回転数がゼロに近づくほど、第1周期値Ccyは実際の値より小さく見積もられることになり、基準電気角θは、理論値より大きめの値が算出される。しかし、検出パターン(U,V,W)が変化するパターン周期毎にガード値が設定され、ガード値によって基準電気角θの値が制限されるため、パターン周期を跨いで誤差が蓄積されることがない。 During low-speed operation, the count value [max] representing the cycle at the lower limit rotation speed is used to calculate the first cycle value Ccy. Therefore, as the rotation speed approaches zero, the first cycle value Ccy is higher than the actual value. It will be underestimated, and the reference electric angle θ will be calculated to be larger than the theoretical value. However, since the guard value is set for each pattern cycle in which the detection pattern (U, V, W) changes and the value of the reference electric angle θ is limited by the guard value, an error is accumulated across the pattern cycle. There is no.

なお、ガード値は、検出パターン(U,V,W)に従って設定されるため、応答性よく正しく設定されるが、回転方向の判定は、複数のパターン周期に渡る検出パターンの比較が必要であり、実際の状況に対して遅延が生じる。この影響で、図5中の時刻6の周辺では、実際には電気角が減少しているにも関わらず、基本電気角θが増加するというずれが生じている。しかし、回転方向の判定が正しく反映された後の基本電気角θは、理論値とのずれが十分に抑制されている。 Since the guard value is set according to the detection pattern (U, V, W), it is set correctly with good responsiveness, but it is necessary to compare the detection patterns over a plurality of pattern cycles to determine the rotation direction. , There is a delay with respect to the actual situation. Due to this effect, in the vicinity of time 6 in FIG. 5, there is a deviation that the basic electric angle θ increases even though the electric angle actually decreases. However, the deviation of the basic electric angle θ after the determination of the rotation direction is correctly reflected from the theoretical value is sufficiently suppressed.

[3.効果]
以上詳述した第1実施形態によれば、以下の効果を奏する。
(1)モータ制御装置1では、ロータ回転数がハードウェアタイマ3cでは測定不能となる下限回転数より低い場合、より低速のカウント周期Tcで動作する第2タイマを用いて基準電気角θを算出する。このため、ロータ回転数が、下限回転数より低い場合でも、ロータ位置を精度よく推定することができる。具体的には、fhwt[Hz]のクロックで動作するハードウェアタイマ3cでは、計測可能な下限回転数は60÷極対数÷(216/fhwt)[rpm]である。これに対して、カウント周期Tc(>1/fhwt)のクロックで動作することに相当する第2タイマを用いることで、計測可能な下限回転数を60÷極対数÷(216/(1/Tc))[rpm]に引き下げることができる。
[3. effect]
According to the first embodiment described in detail above, the following effects are obtained.
(1) In the motor control device 1, when the rotor rotation speed is lower than the lower limit rotation speed that cannot be measured by the hardware timer 3c, the reference electric angle θ is calculated using the second timer that operates at a slower count cycle Tc. do. Therefore, even when the rotor rotation speed is lower than the lower limit rotation speed, the rotor position can be estimated accurately. Specifically, in the hardware timer 3c that operates with the clock of fhwt [Hz], the lower limit rotation speed that can be measured is 60 ÷ the number of pole pairs ÷ (216 / fhwt ) [rpm]. On the other hand, by using a second timer corresponding to operating with a clock having a count cycle Tc (> 1 / fhwt ), the lower limit rotation speed that can be measured is 60 ÷ pole logarithm ÷ (216 / (1 /). Tc)) It can be reduced to [rpm].

(2)第2タイマを用いる場合、電気角周期内での位相を直接計測するのではなく、検出パターン(U,V,W)が変化するパターン周期と、パターン周期内での位相とを計測し、これを電気角周期内での位相を表すタイマ相当値に換算している。このため、電気角周期内での位相を直接計測する場合と比較して、より短時間で基準電気角を推定できる。また、タイマ相当値Ceは、第1タイマ値HCと同等の値であるため、瞬時値Cinとしていずれの値が選択された場合でも、基準電気角θを同一の演算によって算出でき、従来の構成を有効利用できる。 (2) When the second timer is used, the phase within the electrical angle cycle is not directly measured, but the pattern cycle in which the detection pattern (U, V, W) changes and the phase within the pattern cycle are measured. However, this is converted into a timer-equivalent value that represents the phase within the electrical angle period. Therefore, the reference electric angle can be estimated in a shorter time as compared with the case of directly measuring the phase within the electric angle period. Further, since the timer equivalent value Ce is the same value as the first timer value HC, the reference electric angle θ can be calculated by the same calculation regardless of which value is selected as the instantaneous value Cin, which is the conventional configuration. Can be used effectively.

(3)パターン周期内での位相を計測する時に、検出パターン(U,V,W)に応じたガード値を設定することで、パターン周期内での誤差が、パターン周期を跨いで蓄積されることがないようにされている。従って、低速動作時は、回転数変化に対する外乱の寄与度大きいにも関わらず、その影響を、個々のパターン周期内だけに留めることができ、全体としての基準電気角θの推定精度を向上させることができる。 (3) By setting a guard value according to the detection pattern (U, V, W) when measuring the phase in the pattern cycle, the error in the pattern cycle is accumulated across the pattern cycle. It is designed not to happen. Therefore, during low-speed operation, although the contribution of disturbance to the change in rotation speed is large, the influence can be limited to within each pattern period, and the estimation accuracy of the reference electric angle θ as a whole is improved. be able to.

(4)第2タイマは、ソフトウェアにより実現されるため、カウント値のビット幅を、ハードウェアに制約されることなく任意の大きさに設定できるため、計測可能な回転数の下限値を大幅に改善できる。 (4) Since the second timer is realized by software, the bit width of the count value can be set to an arbitrary size without being restricted by the hardware, so that the lower limit of the measurable rotation speed is greatly reduced. Can be improved.

[4.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
[4. Other embodiments]
Although the embodiments of the present disclosure have been described above, the present disclosure is not limited to the above-described embodiments, and can be variously modified and implemented.

(a)上記実施形態では、一つの第2タイマを用いて一つのカウント相当値Ceが算出されるように構成されているが、カウント周期Tcの異なる複数の第2タイマを用いて複数のカウント相当値Ceが算出されるように構成されてもよい。即ち、カウント周期Tcを長くするほど、より低速まで計測できる一方で回転数の分解能が低下する。つまり、計測対象となる回転数に応じた分解能を実現する複数のカウント相当値Ceを用いることで、必要な分解能を保持しつつ、計測可能な回転速度の下限をより引き下げることができる。 (A) In the above embodiment, one count equivalent value Ce is calculated using one second timer, but a plurality of counts are calculated using a plurality of second timers having different count cycles Tc. It may be configured so that the equivalent value Ce is calculated. That is, the longer the count cycle Tc, the lower the resolution of the rotation speed while the lower speed can be measured. That is, by using a plurality of count equivalent values Ce that realize the resolution according to the rotation speed to be measured, the lower limit of the measurable rotation speed can be further lowered while maintaining the required resolution.

(b)上記実施形態では、相当値算出部36は、検出パターン(U,V,W)と回転方向とで決まる値を基準として、符号付きカウント値SCを加算することで、タイマ相当値Ceを算出しているが、本開示は、これに限定されるものではない。例えば、直前のパターン周期の最後に得られた値を基準として、符号付きカウント値SCを加算することで、タイマ相当値Ceを算出してもよい。この場合、回転方向の判定が誤っている場合でも、パターン周期の開始時点の値は、常に、直前のパターン周期の終了時点の値となる。このため、回転方向の判定が誤っている場合に、そのパターン周期でのタイマ相当値Ceは、開始から終了まで一定の値となるものの、実際の位相変化とは逆方向にタイマ相当値Ceが変化することを阻止できる。 (B) In the above embodiment, the equivalent value calculation unit 36 adds a signed count value SC based on a value determined by the detection pattern (U, V, W) and the rotation direction to obtain a timer equivalent value Ce. However, the present disclosure is not limited to this. For example, the timer equivalent value Ce may be calculated by adding the signed count value SC with the value obtained at the end of the immediately preceding pattern cycle as a reference. In this case, even if the determination of the rotation direction is incorrect, the value at the start of the pattern cycle is always the value at the end of the immediately preceding pattern cycle. Therefore, when the determination of the rotation direction is incorrect, the timer equivalent value Ce in the pattern cycle becomes a constant value from the start to the end, but the timer equivalent value Ce is in the direction opposite to the actual phase change. You can prevent it from changing.

(c)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。 (C) A plurality of functions possessed by one component in the above embodiment may be realized by a plurality of components, or one function possessed by one component may be realized by a plurality of components. .. Further, a plurality of functions possessed by the plurality of components may be realized by one component, or one function realized by the plurality of components may be realized by one component. Further, a part of the configuration of the above embodiment may be omitted. Further, at least a part of the configuration of the above embodiment may be added or replaced with the configuration of the other above embodiment. It should be noted that all aspects included in the technical idea specified from the wording described in the claims are embodiments of the present disclosure.

(d)上述したモータ制御装置の他、当該モータ制御装置を構成要素とするシステム、当該モータ制御装置としてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、ロータ位置の推定方法など、種々の形態で本開示を実現することもできる。 (D) In addition to the above-mentioned motor control device, a system having the motor control device as a component, a program for operating a computer as the motor control device, a non-transitional actual record of a semiconductor memory or the like in which this program is recorded, etc. The present disclosure can also be realized in various forms such as a method for estimating a medium and a rotor position.

1…モータ制御装置、2…インタフェース部、3…制御部、3a…CPU、3b…メモリ、3c…ハードウェアタイマ、4…駆動回路、5…ブラシレスモータ、31…パターン生成部、32…第2周期計測部、33…回転判定部、34…低速判定部、35…第1周期計測部、36…相当値算出部、37…瞬時値調停部、38…電気角算出部、39…信号生成部、51…ロータ、52…ステータ、53…ホールIC、351…周期バッファ、353…周期調停部、361…符号付与部、362…リミット設定部、363…換算部。 1 ... Motor control device, 2 ... Interface unit, 3 ... Control unit, 3a ... CPU, 3b ... Memory, 3c ... Hardware timer, 4 ... Drive circuit, 5 ... Brushless motor, 31 ... Pattern generation unit, 32 ... Second Period measurement unit, 33 ... Rotation determination unit, 34 ... Low speed determination unit, 35 ... First cycle measurement unit, 36 ... Equivalent value calculation unit, 37 ... Instantaneous value arbitration unit, 38 ... Electric angle calculation unit, 39 ... Signal generation unit , 51 ... rotor, 52 ... stator, 53 ... hall IC, 351 ... periodic buffer, 353 ... periodic arbitration unit, 361 ... signing unit, 362 ... limit setting unit, 363 ... conversion unit.

Claims (4)

ブラシレスモータ(5)を駆動するモータ制御装置(1)であって、
ロータ(51)が電気角で1回転する期間を電気角周期として、前記電気角周期の間に取り得る複数の回転位置に対応した検出パターン(U,V,W)を生成するように構成されたパターン生成部(31)と、
予め設定されたビット幅を有し、回転速度の分解能に応じて周期が設定されたクロック信号に従ってカウント動作を行い、前記検出パターンに従って前記電気角周期毎にカウント値がリセットされるハードウェアタイマである第1タイマ(3c)を用いて、前記電気角周期を表す第1周期値(Ccy)を計測するように構成された第1周期計測部(35)と、
前記クロック信号の周期より長く設定されたカウント周期(Tc)毎にカウント動作を行い、前記検出パターンが変化する毎にカウント値がリセットされる第2タイマを用いて、前記検出パターンが変化する周期を表す第2周期値(Cpt)を計測するように構成された第2周期計測部(32)と、
前記第2タイマのカウント値である第2タイマ値(C2)を取得し、該第2タイマ値を、前記検出パターンと前記第2周期値とを用いて、前記カウント周期でカウントした値に相当するタイマ相当値(Ce)に換算するように構成された相当値算出部(36)と、
前記第1タイマのカウント値を第1タイマ値(HC)として、前記電気角周期の間に前記第1タイマ値が飽和する前記ロータの回転数を下限回転数として、前記ロータの回転数が、前記下限回転数より小さいか否かを判定する低速判定部(34)と、
前記低速判定部にて、前記ロータの回転数が前記下限回転数以上であると判定された場合は前記第1タイマ値を選択し、前記下限回転数より小さいと判定された場合は前記タイマ相当値を選択するように構成された瞬時値調停部(37)と、
前記瞬時値調停部で選択された値である瞬時値(Cin)と前記第1周期値とを用いて、前記電気角周期内での電気角を表す基準電気角(θ)を算出するように構成された電気角算出部(38)と
を備えるモータ制御装置。
A motor control device (1) that drives a brushless motor (5).
It is configured to generate a detection pattern (U, V, W) corresponding to a plurality of rotation positions that can be taken during the electric angle cycle, with the period during which the rotor (51) makes one rotation at the electric angle as the electric angle cycle. Pattern generation unit (31) and
A hardware timer that has a preset bit width, performs a count operation according to a clock signal whose period is set according to the resolution of the rotation speed, and resets the count value for each electric angle period according to the detection pattern. A first cycle measuring unit (35) configured to measure a first cycle value (Ccy) representing the electric angular cycle using a first timer (3c), and a first cycle measuring unit (35).
A cycle in which the detection pattern changes using a second timer that performs a count operation every count cycle (Tc) set longer than the cycle of the clock signal and resets the count value each time the detection pattern changes. A second period measuring unit (32) configured to measure a second period value (Cpt) representing
The second timer value (C2), which is the count value of the second timer, is acquired, and the second timer value corresponds to the value counted in the count cycle using the detection pattern and the second cycle value. The equivalent value calculation unit (36) configured to convert to the timer equivalent value (Ce) to be used, and
The rotation speed of the rotor is determined by setting the count value of the first timer as the first timer value (HC) and the rotation speed of the rotor at which the first timer value is saturated during the electric angle cycle as the lower limit rotation speed. A low-speed determination unit (34) for determining whether or not the rotation speed is smaller than the lower limit rotation speed,
When the low speed determination unit determines that the rotation speed of the rotor is equal to or higher than the lower limit rotation speed, the first timer value is selected, and when it is determined to be smaller than the lower limit rotation speed, it corresponds to the timer. An instantaneous value arbitrator (37) configured to select a value,
Using the instantaneous value (Cin), which is the value selected by the instantaneous value arbitration unit, and the first period value, the reference electric angle (θ) representing the electric angle within the electric angle period is calculated. A motor control device including a configured electric angle calculation unit (38).
請求項1に記載のモータ制御装置であって、
前記相当値算出部は、前記検出パターン毎に予め設定された下限値から上限値までの範囲内で前記タイマ相当値を生成するように構成された
モータ制御装置。
The motor control device according to claim 1.
The equivalent value calculation unit is a motor control device configured to generate the timer equivalent value within a range from a lower limit value set in advance for each detection pattern to an upper limit value.
請求項1又は請求項2に記載のモータ制御装置であって、
前記第1周期計測部は、前記電気角周期毎に取得される前記カウント値の変化が、予め設定された許容範囲内である場合は、複数の前記電気角周期に渡る前記カウント値の平均値を前記第1周期値とし、該カウント値の変化が前記許容範囲を超える場合は、最新の前記カウント値を前記第1周期値とするように構成された、
モータ制御装置。
The motor control device according to claim 1 or 2.
The first cycle measuring unit is an average value of the count values over a plurality of the electric angle cycles when the change of the count value acquired for each electric angle cycle is within a preset allowable range. Is set as the first cycle value, and when the change of the count value exceeds the permissible range, the latest count value is set as the first cycle value.
Motor control device.
請求項1から請求項3までのいずれか1項に記載のモータ制御装置であって、
前記第1周期計測部は、前記ロータの回転数が、前記下限回転数より小さい場合、前記第1タイマの飽和値を前記第1周期値とするように構成された、
モータ制御装置。
The motor control device according to any one of claims 1 to 3.
The first cycle measuring unit is configured to set the saturation value of the first timer as the first cycle value when the rotation speed of the rotor is smaller than the lower limit rotation speed.
Motor control device.
JP2018108792A 2018-06-06 2018-06-06 Motor control device Active JP7006513B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018108792A JP7006513B2 (en) 2018-06-06 2018-06-06 Motor control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018108792A JP7006513B2 (en) 2018-06-06 2018-06-06 Motor control device

Publications (2)

Publication Number Publication Date
JP2019213376A JP2019213376A (en) 2019-12-12
JP7006513B2 true JP7006513B2 (en) 2022-01-24

Family

ID=68847076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018108792A Active JP7006513B2 (en) 2018-06-06 2018-06-06 Motor control device

Country Status (1)

Country Link
JP (1) JP7006513B2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5709693B2 (en) 2011-08-26 2015-04-30 三菱電機株式会社 Motor control device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5709693B2 (en) 2011-08-26 2015-04-30 三菱電機株式会社 Motor control device

Also Published As

Publication number Publication date
JP2019213376A (en) 2019-12-12

Similar Documents

Publication Publication Date Title
JP5502605B2 (en) Motor control device
KR102588927B1 (en) Motor control method
US7190145B2 (en) Method and apparatus for improving speed measurement quality in multi-pole machines
JP6695247B2 (en) Motor control device and control method of motor control device
CN109768755B (en) Semiconductor device, angle value correction circuit and method thereof
KR101655297B1 (en) Apparatus for correcting position of linear hole sensor and control method of thereof
US7786686B2 (en) Method and device for estimating the angular position of the rotor of a brushless motor
JP7006513B2 (en) Motor control device
JP5709693B2 (en) Motor control device
JP2022103046A (en) Signal generating device
JP3472533B2 (en) Motor control device
JP4127000B2 (en) Motor control device
CN110463022B (en) Motor control device and motor control method
JP2011117769A (en) Rotation angle detection device, motor control device, and electric power steering device
CN114690846B (en) Signal generating device
JP7468390B2 (en) Motor Control Device
WO2024004474A1 (en) Angle detection device and angle detection method
JP6207458B2 (en) Electric motor control device
JP6402276B1 (en) Electric field position detection method
JP3553861B2 (en) Digital input signal duty ratio detection circuit
JP6699241B2 (en) Inverter device
KR101806695B1 (en) Method for improving position precision of motor
JP2003009576A (en) Rotor position detector
JP2024507359A (en) System and method for motor control through improved position measurement
JP4793236B2 (en) Initial phase setting device for synchronous motor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210218

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211125

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211220