以下、図を参照し、本発明の実施例に係る開閉体制御装置の一例であるパワーウインドウ装置について説明する。図1は、パワーウインドウ装置の構成例を示す概略図である。
Hereinafter, a power window device which is an example of an opening/closing body control device according to an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a schematic diagram showing a configuration example of a power window device.
パワーウインドウ装置は、車両のドア1に搭載された開閉体としての窓ガラス2の動きを制御する。パワーウインドウ装置は、主に、窓ガラス駆動機構4の制御を行う演算装置6を有する。図1の例では、演算装置6はドア1内に設けられているが、車両内の別の位置に設けられていてもよい。
The power window device controls the movement of the window glass 2 as an opening/closing body mounted on the door 1 of the vehicle. The power window device mainly has an arithmetic unit 6 that controls the window glass driving mechanism 4. In the example of FIG. 1, the arithmetic unit 6 is provided inside the door 1, but it may be provided at another position inside the vehicle.
ドア1は窓1aを備えている。窓1aは窓ガラス2が上下動することで開閉される。具体的には、窓ガラス2が下降することで窓1aが開かれ、窓ガラス2が上昇することで窓1aが閉じられる。そして、窓ガラス2が全閉位置まで上昇すると窓1aは全閉状態となる。このとき、窓ガラス2の上端部2tは、ドア1の上端部を構成する上部サッシュ3に突き当たる。
The door 1 has a window 1a. The window 1a is opened and closed by moving the window glass 2 up and down. Specifically, the window glass 2 is lowered to open the window 1a, and the window glass 2 is raised to close the window 1a. Then, when the window glass 2 is raised to the fully closed position, the window 1a is in the fully closed state. At this time, the upper end portion 2t of the window glass 2 hits the upper sash 3 that constitutes the upper end portion of the door 1.
窓ガラス駆動機構4は、窓ガラス2を上下動させる機構であり、ドア1内に収納されている。窓ガラス駆動機構4は、動力源としての電動機10を含む。
The window glass driving mechanism 4 is a mechanism for moving the window glass 2 up and down, and is housed in the door 1. The window glass drive mechanism 4 includes an electric motor 10 as a power source.
電動機10は、順方向及び逆方向に回転可能であり、一方向に回転することで窓ガラス2を上昇させ、他方向に回転することで窓ガラス2を下降させる。図1の例では、電動機10は、整流子を備えた直流整流子電動機である。演算装置6は、電動機10の回転を制御することで窓ガラス2による窓1aの開閉を制御できる。
The electric motor 10 can rotate in the forward direction and the reverse direction, and rotates in one direction to raise the window glass 2 and in the other direction to lower the window glass 2. In the example of FIG. 1, the electric motor 10 is a DC commutator electric motor including a commutator. The arithmetic unit 6 can control the opening/closing of the window 1 a by the window glass 2 by controlling the rotation of the electric motor 10.
図2は、演算装置6の構成例を示す機能ブロック図である。演算装置6は、主に、操作ボタン7、電圧検出部10a及び電流検出部10bからの信号を受けて各種演算を実行し、4つのスイッチSW1〜SW4のそれぞれに対して制御指令を出力できる。図2の例では、演算装置6は、CPU、揮発性メモリ、不揮発性メモリ等を備えたマイクロコンピュータである。スイッチSW1〜SW4は、半導体リレーで構成されている。電磁リレーで構成されていてもよい。
FIG. 2 is a functional block diagram showing a configuration example of the arithmetic unit 6. The arithmetic unit 6 mainly receives signals from the operation button 7, the voltage detection unit 10a, and the current detection unit 10b, executes various calculations, and can output a control command to each of the four switches SW1 to SW4. In the example of FIG. 2, the arithmetic unit 6 is a microcomputer including a CPU, a volatile memory, a non-volatile memory, and the like. The switches SW1 to SW4 are semiconductor relays. It may be composed of an electromagnetic relay.
電動機10は、4つのスイッチSW1〜SW4を介して電源に接続されている。そして、スイッチSW1とスイッチSW3が閉状態(導通状態)となったときに順回転して窓ガラス2を下降させる。また、スイッチSW2とスイッチSW4が閉状態となったときに逆回転して窓ガラス2を上昇させる。電源に接続されている図2の例では、順回転する電動機10を流れる電流が正の値を有し、逆回転する電動機10を流れる電流が負の値を有する。惰性回転中は、スイッチSW2とスイッチSW3が閉状態となり、順回転する電動機10を流れる電流は負の値を有し、逆回転する電動機10を流れる電流は正の値を有する。本実施例では、惰性回転中も回転を検出するために、電動機10と電流検出部10bは、閉ループ中に存在する。なお、本実施例では、電動機10は、電気抵抗値が十分大きいため、電動機10の2つの端子を短絡しても、惰性で回転する。一方、電動機10は、電気抵抗値が小さい場合には、電動機10の2つの端子を短絡すると、急速に減速する。惰性回転中の電動機10の減速を抑制するためには、抵抗器を通る閉ループを形成すればよい。
The electric motor 10 is connected to a power source via four switches SW1 to SW4. Then, when the switch SW1 and the switch SW3 are in the closed state (conductive state), they are rotated forward to lower the window glass 2. Further, when the switch SW2 and the switch SW4 are in the closed state, they rotate in the reverse direction to raise the window glass 2. In the example of FIG. 2 connected to the power supply, the current flowing through the forward rotating electric motor 10 has a positive value, and the current flowing through the reverse rotating electric motor 10 has a negative value. During inertial rotation, the switches SW2 and SW3 are closed, and the current flowing through the forward rotating electric motor 10 has a negative value, and the current flowing through the reverse rotating electric motor 10 has a positive value. In the present embodiment, the electric motor 10 and the current detection unit 10b exist in the closed loop in order to detect the rotation even during inertial rotation. In the present embodiment, the electric resistance of the electric motor 10 is sufficiently large, so that the electric motor 10 rotates by inertia even if the two terminals of the electric motor 10 are short-circuited. On the other hand, when the electric resistance value is small, the electric motor 10 rapidly decelerates when the two terminals of the electric motor 10 are short-circuited. In order to suppress the deceleration of the electric motor 10 during inertial rotation, a closed loop passing through the resistor may be formed.
電圧検出部10aは、電動機10の端子間電圧Vを検出する。電流検出部10bは、電動機10を流れる電流Imを検出する。
The voltage detector 10a detects the voltage V between the terminals of the electric motor 10. The current detector 10b detects the current Im flowing through the electric motor 10.
操作ボタン7は、窓ガラス2を操作するための操作装置の一例であり、例えば、ドア1の車室側の表面に設けられている。本実施例では、操作ボタン7は、自動開ボタン7A、手動開ボタン7B、自動閉ボタン7C及び手動閉ボタン7Dを含む。
The operation button 7 is an example of an operation device for operating the window glass 2, and is provided, for example, on the surface of the door 1 on the passenger compartment side. In this embodiment, the operation buttons 7 include an automatic open button 7A, a manual open button 7B, an automatic close button 7C and a manual close button 7D.
演算装置6は、各種演算を実行するための機能要素として、開閉制御部60、位置検出部61、接触判定部62、計数部63及び機能制限部64を有する。
The arithmetic device 6 has an opening/closing controller 60, a position detector 61, a contact determiner 62, a counter 63, and a function limiter 64 as functional elements for executing various calculations.
開閉制御部60は、窓ガラス2の動きを制御する。本実施例では、開閉制御部60は、操作ボタン7からの信号に応じて窓ガラス2の動きを制御する。
The opening/closing control unit 60 controls the movement of the window glass 2. In this embodiment, the opening/closing control unit 60 controls the movement of the window glass 2 in response to a signal from the operation button 7.
例えば、開閉制御部60は、所定の窓開け条件が満たされた場合に窓ガラス2を自動的に開ける(下降させる)自動開け機能を実行する。例えば、自動開ボタン7Aが操作されると、所定の窓開け条件が満たされたと判定し、スイッチSW1及びスイッチSW3を閉状態にして電動機10を順回転させて窓ガラス2を下降させる。そして、他のボタンが操作されるか、或いは、窓ガラス2が全開位置に達するまでその順回転を継続させる。自動開ボタン7Aが再操作されたときにその順回転を停止させてもよい。
For example, the opening/closing control unit 60 executes an automatic opening function of automatically opening (lowering) the window glass 2 when a predetermined window opening condition is satisfied. For example, when the automatic opening button 7A is operated, it is determined that a predetermined window opening condition is satisfied, the switches SW1 and SW3 are closed, and the electric motor 10 is rotated in the forward direction to lower the window glass 2. Then, the forward rotation is continued until another button is operated or the window glass 2 reaches the fully opened position. The forward rotation may be stopped when the automatic opening button 7A is operated again.
また、開閉制御部60は、手動開ボタン7Bが操作されると、手動開ボタン7Bが操作されている間だけ窓ガラス2を開ける(下降させる)手動開け機能を実行する。例えば、手動開ボタン7Bが押下されている間だけスイッチSW1及びスイッチSW3を閉状態にして電動機10を順回転させて窓ガラス2を下降させる。そして、手動開ボタン7Bの押下が中止されてから所定時間が経過すると、その順回転を停止させる。
Further, when the manual open button 7B is operated, the opening/closing control unit 60 executes a manual open function of opening (lowering) the window glass 2 only while the manual open button 7B is operated. For example, while the manual open button 7B is being pressed, the switches SW1 and SW3 are closed and the electric motor 10 is rotated in the forward direction to lower the window glass 2. Then, when a predetermined time elapses after the pressing of the manual open button 7B is stopped, the forward rotation is stopped.
また、開閉制御部60は、所定の窓閉じ条件が満たされた場合に窓ガラス2を自動的に閉じる(上昇させる)自動閉じ機能を実行する。例えば、自動閉ボタン7Cが操作されると、所定の窓閉じ条件が満たされたと判定し、スイッチSW2及びスイッチSW4を閉状態にして電動機10を逆回転させて窓ガラス2を上昇させる。そして、他のボタンが操作されるか、或いは、窓ガラス2が全閉位置に達するまでその逆回転を継続させる。自動閉ボタン7Cが再操作されたときにその逆回転を停止させてもよい。
Further, the opening/closing control unit 60 executes an automatic closing function of automatically closing (raising) the window glass 2 when a predetermined window closing condition is satisfied. For example, when the automatic close button 7C is operated, it is determined that a predetermined window closing condition is satisfied, the switches SW2 and SW4 are closed, and the electric motor 10 is rotated in the reverse direction to raise the window glass 2. Then, the reverse rotation is continued until another button is operated or the window glass 2 reaches the fully closed position. The reverse rotation may be stopped when the automatic close button 7C is operated again.
また、開閉制御部60は、手動閉ボタン7Dが操作されると、手動閉ボタン7Dが操作されている間だけ窓ガラス2を閉じる(上昇させる)手動閉じ機能を実行する。例えば、手動閉ボタン7Dが押下されている間だけスイッチSW2及びスイッチSW4を閉状態にして電動機10を逆回転させて窓ガラス2を上昇させる。そして、手動閉ボタン7Dの押下が中止されてから所定時間が経過すると、その逆回転を停止させる。
Further, when the manual close button 7D is operated, the opening/closing control unit 60 executes a manual close function of closing (raising) the window glass 2 only while the manual close button 7D is operated. For example, the switch SW2 and the switch SW4 are closed only while the manual close button 7D is pressed, and the electric motor 10 is reversely rotated to raise the window glass 2. Then, when a predetermined time elapses after the pressing of the manual close button 7D is stopped, the reverse rotation is stopped.
位置検出部61は、窓ガラス2の位置を検出する。本実施例では、位置検出部61は、電動機10の回転角度を算出する。そして、電動機10の回転角度に基づき、全閉位置に関する窓ガラス2の上端部2tの相対位置を検出する。また、位置検出部61は、窓1aが全閉状態となったと判定する度に、その時点で検出されている上端部2tの位置で基準位置としての全閉位置を更新する。すなわち、上端部2tの現在の位置が全閉位置となる。
The position detector 61 detects the position of the window glass 2. In this embodiment, the position detector 61 calculates the rotation angle of the electric motor 10. Then, based on the rotation angle of the electric motor 10, the relative position of the upper end 2t of the window glass 2 with respect to the fully closed position is detected. Further, every time the position detection unit 61 determines that the window 1a is in the fully closed state, the position detection unit 61 updates the fully closed position as the reference position with the position of the upper end 2t detected at that time. That is, the current position of the upper end 2t is the fully closed position.
接触判定部62は、窓ガラス2と他の物体とが接触しているか否かを判定する。本実施例では、接触判定部62は、自動閉じ機能の実行中に窓ガラス2と他の物体とが接触しているか否かを判定する。例えば、位置検出部61が算出する電動機10の回転角速度と端子間電圧Vと電流Imとに基づいてトルクを算出する。そして、算出したトルクが所定の第1閾値以上の場合に窓ガラス2と他の物体とが接触していると判定する。
The contact determination unit 62 determines whether the window glass 2 is in contact with another object. In the present embodiment, the contact determination unit 62 determines whether the window glass 2 is in contact with another object during execution of the automatic closing function. For example, the torque is calculated based on the rotational angular velocity of the electric motor 10, the inter-terminal voltage V, and the current Im calculated by the position detection unit 61. Then, when the calculated torque is equal to or larger than the predetermined first threshold value, it is determined that the window glass 2 is in contact with another object.
計数部63は、電動機10の起動回数を計数する。本実施例では、計数部63は、電動機10が起動したとき、すなわち電動機10の回転が開始されたときに、電動機10の起動回数をカウントアップする。例えば、操作ボタン7が操作される度に起動回数を1だけ加算(インクリメント)する。また、計数部63は、窓ガラス2が全閉位置に達する度に起動回数をゼロにリセットする。
The counting unit 63 counts the number of times the electric motor 10 is activated. In the present embodiment, the counting unit 63 counts up the number of times the electric motor 10 is started when the electric motor 10 is started, that is, when the rotation of the electric motor 10 is started. For example, each time the operation button 7 is operated, the number of activations is incremented by one. Further, the counting unit 63 resets the number of activations to zero every time the window glass 2 reaches the fully closed position.
機能制限部64は、開閉制御部60による機能の一部を制限する。本実施例では、機能制限部64は、所定の機能制限条件が満たされた場合に自動閉じ機能を制限する。例えば、電動機10の起動回数に基づいて自動閉じ機能を制限する。
The function restriction unit 64 restricts some of the functions of the opening/closing control unit 60. In this embodiment, the function limiting unit 64 limits the automatic closing function when a predetermined function limiting condition is satisfied. For example, the automatic closing function is limited based on the number of times the electric motor 10 is activated.
自動閉じ機能の制限は、例えば、自動閉じ機能の実行を禁止すること、自動閉じ機能による窓ガラス2の上端部2tの最終到達位置を全閉位置よりも低い位置にすること、自動閉じ機能による窓ガラス2の移動距離(上昇距離)を制限すること等を含む。
The automatic closing function is limited, for example, by prohibiting the execution of the automatic closing function, setting the final reaching position of the upper end 2t of the window glass 2 by the automatic closing function to a position lower than the fully closed position, and the automatic closing function. This includes limiting the moving distance (rising distance) of the window glass 2.
機能制限部64は、例えば、電動機10の起動回数が所定の閾値を超えたときに、所定の機能制限条件が満たされたと判定し、自動閉じ機能の実行を禁止する。起動回数が多いほど、窓ガラス2の位置の検出誤差が大きくなり、自動閉じ機能が誤動作する可能性が高まるためである。
For example, when the number of activations of the electric motor 10 exceeds a predetermined threshold value, the function restriction unit 64 determines that a predetermined function restriction condition is satisfied, and prohibits execution of the automatic closing function. This is because as the number of activations increases, the detection error of the position of the window glass 2 increases and the possibility that the automatic closing function malfunctions increases.
この点に関し、窓ガラス2を上昇させるために電動機10を起動する場合と窓ガラス2を下降させるために電動機10を起動する場合とで検出誤差の増減方向が正反対となるときには、計数部63はその違いを考慮してもよい。例えば、計数部63は、自動開ボタン7A又は手動開ボタン7Bが押下されたときに起動回数を1だけインクリメントし、自動閉ボタン7C又は手動閉ボタン7Dが押下されたときに起動回数を1だけ減算(デクリメント)してもよい。
In this regard, when the detection error increases or decreases in opposite directions when the electric motor 10 is started to raise the window glass 2 and when the electric motor 10 is started to lower the window glass 2, the counting unit 63 determines You may consider the difference. For example, the counting unit 63 increments the activation count by 1 when the automatic open button 7A or the manual open button 7B is pressed, and increments the activation count by 1 when the automatic close button 7C or the manual close button 7D is pressed. It may be subtracted.
また、機能制限部64は、窓ガラス2が全閉位置に達したときに自動閉じ機能の制限を解除する。自動閉じ機能の誤動作の原因となる窓ガラス2の位置の検出誤差がゼロにリセットされるためである。
Further, the function limiting unit 64 releases the limitation of the automatic closing function when the window glass 2 reaches the fully closed position. This is because the detection error of the position of the window glass 2 that causes the malfunction of the automatic closing function is reset to zero.
ここで、図3、図4A及び図4Bを参照し、自動閉ボタン7Cが操作されたときに演算装置6が実行する処理(以下、「自動閉じ処理」とする。)について説明する。図3は自動閉じ処理のフローチャートである。図4A及び図4Bは、窓ガラス2の上端部2tと上部サッシュ3の位置関係を示す断面図であり、図1の破線L1を含む平面を矢印AR1で示す方向から見たときの断面図に対応する。
Here, with reference to FIG. 3, FIG. 4A and FIG. 4B, a process (hereinafter, referred to as “automatic close process”) executed by the arithmetic unit 6 when the automatic close button 7C is operated will be described. FIG. 3 is a flowchart of the automatic closing process. 4A and 4B are cross-sectional views showing the positional relationship between the upper end portion 2t of the window glass 2 and the upper sash 3, and are the cross-sectional views of the plane including the broken line L1 of FIG. Correspond.
最初に、演算装置6は、自動閉じ機能が有効であるか否かを判定する(ステップST1)。演算装置6は、例えば、機能制限部64によって自動閉じ機能が制限されていない場合に自動閉じ機能が有効であると判定する。機能制限部64によって自動閉じ機能が禁止されていない場合に自動閉じ機能が有効であると判定してもよい。すなわち、自動閉じ機能が制限されている場合であっても禁止されていなければ自動閉じ機能が有効であると判定してもよい。
First, the arithmetic device 6 determines whether or not the automatic closing function is effective (step ST1). The arithmetic device 6 determines that the automatic closing function is effective, for example, when the automatic closing function is not restricted by the function restriction unit 64. If the function limiting unit 64 does not prohibit the automatic closing function, it may be determined that the automatic closing function is valid. That is, even if the automatic closing function is restricted, it may be determined that the automatic closing function is valid if it is not prohibited.
自動閉じ機能が無効であると判定した場合(ステップST1のNO)、開閉制御部60は、自動閉じ機能を開始させることなく、今回の自動閉じ処理を終了させる。
When it is determined that the automatic closing function is invalid (NO in step ST1), the opening/closing control unit 60 ends the automatic closing process this time without starting the automatic closing function.
自動閉じ機能が有効であると判定した場合(ステップST1のYES)、開閉制御部60は、自動閉じ機能を開始させる(ステップST2)。開閉制御部60は、例えば、スイッチSW2及びスイッチSW4を閉状態にして電動機10を逆回転させて窓ガラス2を上昇させる。
When it is determined that the automatic closing function is valid (YES in step ST1), the opening/closing control unit 60 starts the automatic closing function (step ST2). The opening/closing control unit 60 raises the window glass 2 by rotating the electric motor 10 in the reverse direction by closing the switches SW2 and SW4, for example.
その後、接触判定部62は、窓ガラス2と他の物体とが接触しているか否かを判定する(ステップST3)。接触判定部62は、例えば、電動機10が発生させているトルクが第1閾値以上の場合に窓ガラス2と他の物体とが接触していると判定する。
Then, the contact determination unit 62 determines whether the window glass 2 is in contact with another object (step ST3). The contact determination unit 62 determines that the window glass 2 is in contact with another object when the torque generated by the electric motor 10 is equal to or higher than the first threshold value, for example.
窓ガラス2と他の物体とが接触していないと判定した場合(ステップST3のNO)、接触判定部62は、窓ガラス2と他の物体とが接触していると判定するまでステップST3の判定を繰り返す。
When it is determined that the window glass 2 is not in contact with another object (NO in step ST3), the contact determination unit 62 is in step ST3 until it is determined that the window glass 2 is in contact with another object. Repeat the judgment.
窓ガラス2と他の物体とが接触していると判定された場合(ステップST3のYES)、位置検出部61は、窓ガラス2の上端部2tの位置が非検出範囲内にあるか否かを判定する(ステップST4)。
When it is determined that the window glass 2 is in contact with another object (YES in step ST3), the position detection unit 61 determines whether the position of the upper end 2t of the window glass 2 is within the non-detection range. Is determined (step ST4).
非検出範囲は、窓ガラス2と接触している物体を異物として検出しない範囲、すなわち、窓ガラス2と接触している物体が上部サッシュ3であるとみなされる範囲を意味する。「範囲」は、例えば、全閉位置からの距離で表される。
The non-detection range means a range in which an object in contact with the window glass 2 is not detected as a foreign matter, that is, a range in which the object in contact with the window glass 2 is regarded as the upper sash 3. The “range” is represented by the distance from the fully closed position, for example.
本実施例では、位置検出部61は、図4Aに示すように、全閉位置と窓ガラス2の上端部2tとの距離D1が閾値Dt以下の場合に、窓ガラス2の上端部2tの位置が非検出範囲内にあると判定する。そして、接触判定部62により窓ガラス2と他の物体とが接触していると判定され、且つ、位置検出部61により窓ガラス2の上端部2tの位置が非検出範囲内にあると判定されると、演算装置6は、窓1aが全閉状態にあると判定する。
In the present embodiment, as shown in FIG. 4A, the position detection unit 61 positions the upper end 2t of the window glass 2 when the distance D1 between the fully closed position and the upper end 2t of the window glass 2 is equal to or less than the threshold value Dt. Is within the non-detection range. Then, the contact determination unit 62 determines that the window glass 2 is in contact with another object, and the position detection unit 61 determines that the position of the upper end 2t of the window glass 2 is within the non-detection range. Then, the arithmetic device 6 determines that the window 1a is in the fully closed state.
一方で、位置検出部61は、図4Bに示すように、全閉位置と窓ガラス2の上端部2tとの距離D1が閾値Dtより大きい場合に、窓ガラス2の上端部2tの位置が非検出範囲内にないと判定する。そして、接触判定部62により窓ガラス2と他の物体とが接触していると判定され、且つ、位置検出部61により窓ガラス2の上端部2tの位置が非検出範囲内にないと判定されると、演算装置6は、窓ガラス2が上部サッシュ3以外の異物に接触していると判定する。
On the other hand, as shown in FIG. 4B, when the distance D1 between the fully closed position and the upper end 2t of the window glass 2 is larger than the threshold value Dt, the position detection unit 61 determines that the position of the upper end 2t of the window glass 2 is not. It is determined that it is not within the detection range. Then, the contact determination unit 62 determines that the window glass 2 is in contact with another object, and the position detection unit 61 determines that the position of the upper end 2t of the window glass 2 is not within the non-detection range. Then, the computing device 6 determines that the window glass 2 is in contact with the foreign matter other than the upper sash 3.
窓ガラス2の上端部2tの位置が非検出範囲内にあると判定した場合(ステップST4のYES)、開閉制御部60は、窓1aが全閉状態にあると判定して電動機10を停止させる(ステップST5)。電動機10が発生させているトルクが第2閾値(>第1閾値)に達するまで電動機10の逆回転を継続させ、トルクが第2閾値に達したときに電動機10の逆回転を停止させてもよい。
When it is determined that the position of the upper end portion 2t of the window glass 2 is within the non-detection range (YES in step ST4), the opening/closing control unit 60 determines that the window 1a is in the fully closed state and stops the electric motor 10. (Step ST5). Even if the reverse rotation of the electric motor 10 is continued until the torque generated by the electric motor 10 reaches the second threshold value (>the first threshold value) and the reverse rotation of the electric motor 10 is stopped when the torque reaches the second threshold value. Good.
その後、位置検出部61は、全閉位置をリセット(初期化)する(ステップST6)。位置検出部61は、例えば、窓ガラス2の上端部2tの現在の位置が全閉位置に一致しているか否かにかかわらず、窓ガラス2の上端部2tの現在の位置を全閉位置として設定する。
After that, the position detector 61 resets (initializes) the fully closed position (step ST6). The position detection unit 61 sets the current position of the upper end 2t of the window glass 2 as the fully closed position regardless of whether the current position of the upper end 2t of the window glass 2 matches the fully closed position. Set.
そして、計数部63は、起動回数をリセットする。全閉位置のリセットにより、窓ガラス2の位置の検出誤差が解消されるためである。そして、機能制限部64は、自動閉じ機能を制限している場合には、その制限を解除する。窓ガラス2の位置の検出誤差が解消されたため、すなわち、その検出誤差に起因して自動閉じ機能が誤動作するおそれがなくなったためである。
Then, the counting unit 63 resets the number of activations. This is because the detection error of the position of the window glass 2 is eliminated by resetting the fully closed position. Then, the function restriction unit 64 releases the restriction when the automatic closing function is restricted. This is because the detection error of the position of the window glass 2 has been eliminated, that is, there is no possibility that the automatic closing function malfunctions due to the detection error.
窓ガラス2の上端部2tの位置が非検出範囲内にないと判定した場合(ステップST4のNO)、開閉制御部60は、窓ガラス2が上部サッシュ3以外の異物に接触していると判定し、電動機10の回転方向を反転させる(ステップST7)。本実施例では、開閉制御部60は、逆回転していた電動機10を順回転させて窓ガラス2を下降させる。異物の挟み込みを防止するためである。
When it is determined that the position of the upper end portion 2t of the window glass 2 is not within the non-detection range (NO in step ST4), the opening/closing control unit 60 determines that the window glass 2 is in contact with a foreign substance other than the upper sash 3. Then, the rotation direction of the electric motor 10 is reversed (step ST7). In the present embodiment, the opening/closing control unit 60 causes the electric motor 10 that has been rotating in the reverse direction to rotate forward to lower the window glass 2. This is to prevent foreign matter from being caught.
その後、開閉制御部60は、窓ガラス2が全開位置に達するまで電動機10を順回転させ、窓ガラス2が全開位置に達したところで電動機10を停止させる(ステップST8)。開閉制御部60は、窓ガラス2が所定距離だけ下降したところで電動機10の順回転を停止させてもよい。
After that, the opening/closing control unit 60 causes the electric motor 10 to rotate forward until the window glass 2 reaches the fully opened position, and stops the electric motor 10 when the window glass 2 reaches the fully opened position (step ST8). The opening/closing control unit 60 may stop the forward rotation of the electric motor 10 when the window glass 2 descends by a predetermined distance.
次に、図5を参照し、パワーウインドウ装置の稼働中に演算装置6が実行する基本的な処理(以下、「基本処理」とする。)について説明する。図5は基本処理のフローチャートである。演算装置6は、所定の制御周期で繰り返しこの基本処理を実行する。
Next, with reference to FIG. 5, a basic process (hereinafter, referred to as “basic process”) executed by the arithmetic unit 6 while the power window device is operating will be described. FIG. 5 is a flowchart of basic processing. The arithmetic unit 6 repeatedly executes this basic process at a predetermined control cycle.
最初に、演算装置6は、操作ボタン7が操作されたか否かを判定する(ステップST11)。本実施例では、演算装置6は、自動開ボタン7A、手動開ボタン7B、自動閉ボタン7C及び手動閉ボタン7Dの何れかが押下されたときに操作ボタン7が操作されたと判定する。
First, the arithmetic device 6 determines whether or not the operation button 7 has been operated (step ST11). In the present embodiment, the arithmetic unit 6 determines that the operation button 7 has been operated when any one of the automatic open button 7A, the manual open button 7B, the automatic close button 7C and the manual close button 7D is pressed.
操作ボタン7が操作されたと判定した場合(ステップST11のYES)、計数部63は、電動機10の起動回数をカウントアップする(ステップST12)。本実施例では、自動開ボタン7A、手動開ボタン7B、自動閉ボタン7C及び手動閉ボタン7Dの何れが押下された場合であっても起動回数を1だけインクリメントする。
When it is determined that the operation button 7 has been operated (YES in step ST11), the counting unit 63 counts up the number of times the electric motor 10 is activated (step ST12). In the present embodiment, the number of activations is incremented by 1 regardless of which of the automatic open button 7A, the manual open button 7B, the automatic close button 7C and the manual close button 7D is pressed.
その後、機能制限部64は、起動回数が閾値を超えたか否かを判定する(ステップST13)。本実施例では、機能制限部64は、起動回数が10回を超えたか否かを判定する。
After that, the function limiting unit 64 determines whether or not the number of activations exceeds the threshold value (step ST13). In the present embodiment, the function limiting unit 64 determines whether the number of activations has exceeded 10 times.
起動回数が閾値を超えたと判定した場合(ステップST13のYES)、機能制限部64は、自動閉じ機能を制限する(ステップST14)。本実施例では、機能制限部64は、自動閉じ機能の実行を禁止する。
When it is determined that the number of activations has exceeded the threshold value (YES in step ST13), the function limiting unit 64 limits the automatic closing function (step ST14). In this embodiment, the function limiting unit 64 prohibits the execution of the automatic closing function.
起動回数が閾値を超えていないと判定された場合(ステップST13のNO)、演算装置6は、自動閉じ機能を制限することなく、ステップST15を実行する。操作ボタン7が操作されていないと判定した場合(ステップST11のNO)、演算装置6は、起動回数をカウントアップすることなく、また、自動閉じ機能を制限することなく、ステップST15を実行する。
When it is determined that the number of activations does not exceed the threshold value (NO in step ST13), the arithmetic device 6 executes step ST15 without limiting the automatic closing function. When it is determined that the operation button 7 has not been operated (NO in step ST11), the arithmetic device 6 executes step ST15 without counting up the number of activations and without limiting the automatic closing function.
ステップST15において、演算装置6は、窓1aが全閉状態にあるか否かを判定する。本実施例では、窓ガラス2の上端部2tの位置が非検出範囲内にある場合に窓1aが全閉状態にあると判定する。例えば、手動閉ボタン7Dの操作によって上端部2tの位置が非検出範囲内に至った場合に窓1aが全閉状態にあると判定する。
In step ST15, the arithmetic unit 6 determines whether or not the window 1a is in the fully closed state. In this embodiment, when the position of the upper end 2t of the window glass 2 is within the non-detection range, it is determined that the window 1a is in the fully closed state. For example, when the position of the upper end 2t reaches the non-detection range by operating the manual close button 7D, it is determined that the window 1a is in the fully closed state.
窓1aが全閉状態にあると判定された場合(ステップST15のYES)、位置検出部61は全閉位置をリセットし、計数部63は起動回数をリセットし、そして、機能制限部64は、自動閉じ機能を制限している場合には、その制限を解除する(ステップST16)。本実施例では、位置検出部61は、窓ガラス2の上端部2tの現在の位置を全閉位置として設定する。計数部63は起動回数をゼロにリセットする。機能制限部64は、自動閉じ機能の実行を禁止している場合には、その禁止を解除する。
When it is determined that the window 1a is in the fully closed state (YES in step ST15), the position detection unit 61 resets the fully closed position, the counting unit 63 resets the number of times of activation, and the function limiting unit 64 When the automatic closing function is restricted, the restriction is released (step ST16). In the present embodiment, the position detection unit 61 sets the current position of the upper end 2t of the window glass 2 as the fully closed position. The counting unit 63 resets the number of activations to zero. The function restriction unit 64 releases the prohibition when the execution of the automatic closing function is prohibited.
窓1aが全閉状態にないと判定した場合(ステップST15のNO)、演算装置6は、全閉位置のリセット、起動回数のリセット、及び、自動閉じ機能の制限の解除の何れをも行うことなく、今回の基本処理を終了させる。
When it is determined that the window 1a is not in the fully closed state (NO in step ST15), the computing device 6 resets the fully closed position, resets the number of startups, and releases the restriction of the automatic closing function. No, the basic processing of this time is ended.
上述のように、パワーウインドウ装置は、窓ガラス2を自動的に閉じる自動閉じ機能を実行する開閉制御部60と、窓ガラス2を駆動する電動機10の起動回数を計数する計数部63と、電動機10の起動回数に基づいて自動閉じ機能を制限する機能制限部64とを有する。そのため、窓ガラス2の位置の検出誤差が大きくなった可能性があるときに自動閉じ機能を制限できる。例えば電動機10の起動回数が所定の閾値を超えた場合に自動閉じ機能を制限できる。起動回数が閾値を超えるといった状況は、例えば、窓ガラス2を僅かに動かすためのインチング操作が繰り返された場合に発生する。この構成により、パワーウインドウ装置は、窓ガラス2が全閉位置に達したことを検出するためのセンサ(リミットスイッチ、ホールセンサ等)を備えていなくとも、自動閉じ機能の誤動作を低コストで且つ確実に防止できる。すなわち、電流Imのリップル成分に基づいて窓ガラス2の位置を検出する後述のような構成においても、自動閉じ機能の誤動作を確実に防止できる。具体的には、窓ガラス2が全閉位置に達した状態を異物に接触した状態と誤認識してしまい、窓ガラス2の移動方向を反転させて窓ガラス2を開いてしまうといった状況が発生してしまうのを防止できる。また、窓ガラス2が異物に接触した状態を全閉位置に達した状態と誤認識してしまい、窓ガラス2で異物を挟み込んでしまうといった状況が発生してしまうのを防止できる。
As described above, the power window device includes the opening/closing control unit 60 that executes the automatic closing function of automatically closing the window glass 2, the counting unit 63 that counts the number of times the electric motor 10 that drives the window glass 2 is activated, and the electric motor. The function limiting unit 64 limits the automatic closing function based on the number of activations of 10. Therefore, the automatic closing function can be limited when the detection error of the position of the window glass 2 may be large. For example, the automatic closing function can be limited when the number of activations of the electric motor 10 exceeds a predetermined threshold. The situation that the number of activations exceeds the threshold value occurs, for example, when the inching operation for slightly moving the window glass 2 is repeated. With this configuration, the power window device can prevent malfunction of the automatic closing function at low cost even if the power window device does not include a sensor (a limit switch, a hall sensor, etc.) for detecting that the window glass 2 has reached the fully closed position. It can be surely prevented. That is, even in the configuration described below in which the position of the window glass 2 is detected based on the ripple component of the current Im, the malfunction of the automatic closing function can be reliably prevented. Specifically, a situation occurs in which the state in which the window glass 2 reaches the fully closed position is erroneously recognized as a state in which a foreign object is in contact, and the movement direction of the window glass 2 is reversed to open the window glass 2. It can be prevented. Further, it is possible to prevent a situation in which the state in which the window glass 2 is in contact with the foreign matter is erroneously recognized as the state in which the window glass 2 has reached the fully closed position, and the foreign matter is pinched by the window glass 2.
機能制限部64は、窓ガラス2が全閉位置に達したときに自動閉じ機能の制限を解除してもよい。この構成により、パワーウインドウ装置は、自動閉じ機能が一時的に制限されている場合であっても、窓ガラス2が全閉位置に達したときにその制限を解除して自動閉じ機能を再び利用可能な状態にできる。
The function limiting unit 64 may release the limitation of the automatic closing function when the window glass 2 reaches the fully closed position. With this configuration, even when the automatic closing function is temporarily restricted, the power window device releases the restriction and reuses the automatic closing function when the window glass 2 reaches the fully closed position. It can be possible.
計数部63は、電動機10が起動するときに電動機10の起動回数をカウントアップしてもよい。例えば、操作ボタン7が操作される度に起動回数をカウントアップしてもよく、操作ボタン7からの信号とは無関係に、電動機10の回転が開始される度に起動回数をカウントアップしてもよい。この構成により、パワーウインドウ装置は、窓ガラス2の位置の検出誤差が大きくなった可能性のある状態を容易に認識できる。
The counting unit 63 may count up the number of times of starting the electric motor 10 when the electric motor 10 is started. For example, the number of activations may be counted up each time the operation button 7 is operated, or the number of activations may be counted up each time the rotation of the electric motor 10 is started regardless of the signal from the operation button 7. Good. With this configuration, the power window device can easily recognize the state in which the detection error of the position of the window glass 2 may be large.
計数部63は、望ましくは、窓ガラス2が全閉位置に達したときに電動機10の起動回数をゼロにリセットする。窓ガラス2が全閉位置に達すると、全閉位置がリセットされ、窓ガラス2の位置の検出誤差が解消されるためである。この構成により、計数部63は、自動閉じ機能が誤って早期に制限されてしまうのを防止できる。
The counting unit 63 desirably resets the number of startups of the electric motor 10 to zero when the window glass 2 reaches the fully closed position. This is because when the window glass 2 reaches the fully closed position, the fully closed position is reset and the detection error of the position of the window glass 2 is eliminated. With this configuration, the counting unit 63 can prevent the automatic closing function from being accidentally limited early.
機能制限部64は、電動機10の起動回数が所定の閾値を超えた場合に、自動閉じ機能の実行を禁止してもよい。自動閉じ機能の実行を禁止するときの閾値は、自動閉じ機能を制限するときの閾値より大きい値であってもよい。この構成により、パワーウインドウ装置は、窓ガラス2の位置の検出誤差が大きくなった可能性が高いときに自動閉じ機能の実行を禁止できる。その結果、自動閉じ機能の誤動作をより確実に防止できる。
The function limiting unit 64 may prohibit the execution of the automatic closing function when the number of times of starting the electric motor 10 exceeds a predetermined threshold value. The threshold for prohibiting the execution of the automatic closing function may be larger than the threshold for restricting the automatic closing function. With this configuration, the power window device can prohibit the execution of the automatic closing function when there is a high possibility that the detection error of the position of the window glass 2 becomes large. As a result, the malfunction of the automatic closing function can be more reliably prevented.
次に、図6〜図14を参照し、位置検出部61の詳細について説明する。回転角度検出器100は、位置検出部61の一例であり、電動機10の回転角度を検出し、その回転角度に基づいて窓ガラス2の位置を検出する。図6の例では、回転角度検出器100は、電動機10の端子間電圧Vと電動機10を流れる電流Imとに基づいて電動機10の回転角度を検出する。
Next, the details of the position detector 61 will be described with reference to FIGS. The rotation angle detector 100 is an example of the position detection unit 61, detects the rotation angle of the electric motor 10, and detects the position of the window glass 2 based on the rotation angle. In the example of FIG. 6, 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.
図7は電動機10における整流子20の概略図である。図7に示すように、整流子20は、スリット20sによって互いに隔てられた8つの整流子片20aで構成されている。各整流子片20aの円弧の中心角であるスリット間角度θcは約45度である。
FIG. 7 is a schematic diagram of the commutator 20 in the electric motor 10. As shown in FIG. 7, the commutator 20 is composed of eight commutator pieces 20a separated from each other by a slit 20s. The angle θc between slits, which is the central angle of the arc of each commutator piece 20a, is about 45 degrees.
回転角度検出器100は、主に、電圧フィルタ部30、回転角速度算出部31、回転角度算出部32、電流フィルタ部33、第1信号生成部34、第2信号生成部35、回転情報算出部36、抵抗設定部37等の要素を含む。各要素は、電気回路で構成されていてもよく、ソフトウェアで構成されていてもよい。
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, a resistance setting unit 37, and the like. Each element may be configured by an electric circuit or software.
電圧フィルタ部30は、電圧検出部10aが出力する端子間電圧Vの波形を滑らかにする。電圧フィルタ部30は、例えば、回転角速度算出部31が電動機10の回転角速度を精度良く算出できるように端子間電圧Vの波形を滑らかにする。図6の例では、電圧フィルタ部30は、ローパスフィルタであり、電圧検出部10aが出力する端子間電圧Vの波形のうちの高周波成分をノイズとして除去した端子間電圧V'を出力する。
The voltage filter unit 30 smoothes the waveform of the inter-terminal voltage V output by the voltage detection unit 10a. The voltage filter unit 30 smoothes the waveform of the inter-terminal voltage V so that the rotation angular velocity calculation unit 31 can accurately calculate the rotation angular velocity of the electric motor 10, for example. In the example of FIG. 6, the voltage filter unit 30 is a low-pass filter and outputs an inter-terminal voltage V′ in which a high frequency component of the waveform of the inter-terminal voltage V output by the voltage detection unit 10a is removed as noise.
回転角速度算出部31は、電動機10の端子間電圧V'と電動機10を流れる電流Imとに基づいて電動機10の回転角速度を算出する。図6の例では、回転角速度算出部31は、式(1)に基づいて回転角速度ωを算出する。
The rotational angular velocity calculation unit 31 calculates the rotational angular velocity of the electric motor 10 based on the inter-terminal voltage V′ of the electric motor 10 and the current Im flowing through the electric motor 10. In the example of FIG. 6, the rotation angular velocity calculation unit 31 calculates the rotation angular velocity ω based on the equation (1).
Keは逆起電力定数であり、Rmは電動機10の内部抵抗に対応する値(設定抵抗値)であり、Lmは電動機10のインダクタンスであり、dIm/dtは電流Imの一回微分である。電流Imの一回微分は、例えば、前回の電流Imの値と今回の電流Imの値との差である。設定抵抗値Rmは、例えば、回転角度検出器100の起動時に抵抗設定部37によって設定される。 Ke is a back electromotive force constant, Rm is a value (setting resistance value) corresponding to the internal resistance of the electric motor 10, Lm is the inductance of the electric motor 10, and dIm/dt is a one-time derivative of the current Im. The one-time 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 started, for example.
回転角速度算出部31は、一定の制御周期毎に電動機10の回転角速度ωを算出し、算出した回転角速度ωを回転角度算出部32に対して出力する。
The rotation angular velocity calculation unit 31 calculates the rotation angular velocity ω of the electric motor 10 for each constant control cycle, and outputs the calculated rotation angular velocity ω to the rotation angle calculation unit 32.
回転角度算出部32は、電動機10の回転角度θを算出する。回転角度算出部32は、式(2)に基づいて回転角度θを算出する。
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 the equation (2).
回転角度算出部32は、例えば、回転角速度算出部31が一定の制御周期毎に出力する回転角速度ωを積算して回転角度θを算出し、算出した回転角度θに関する信号である回転角度信号を第2信号生成部35に対して出力する。 The rotation angle calculation unit 32 calculates the rotation angle θ by integrating the rotation angular velocities ω output by the rotation angular velocity calculation unit 31 at constant control cycles, and outputs a rotation angle signal that is a signal related to the calculated rotation angle θ, for example. The signal is output to the second signal generator 35.
また、回転角度算出部32は、第2信号生成部35からの同期指令に応じて回転角度θをゼロにリセットする。
Further, the rotation angle calculation unit 32 resets the rotation angle θ to zero according to the synchronization command from the second signal generation unit 35.
電流フィルタ部33は、電流検出部10bが出力する電流Imに含まれる特定の周波数成分であるリップル成分Irを出力する。電流フィルタ部33は、例えば、第1信号生成部34が電流Imのリップル成分Irを検出できるようにリップル成分Irの周波数を通すバンドパスフィルタで構成される。バンドパスフィルタで構成される電流フィルタ部33は、電流検出部10bが出力する電流Imの波形のうちのリップル成分Ir以外の周波数成分を除去する。本実施例で利用するリップル成分Irは、整流子片20aとブラシとの接触・分離に起因して生成される。そのため、リップル成分Irの1周期の間に電動機10が回転する角度はスリット間角度θcに等しい。
The current filter unit 33 outputs a ripple component Ir that is a specific frequency component included in the current Im output by 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 including a bandpass filter removes frequency components other than the ripple component Ir in the waveform of the current Im output by the current detection unit 10b. The ripple component Ir used in this 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 inter-slit angle θc.
第1信号生成部34は、電動機10が一定の角度だけ回転したことを、リップル成分Irの波形から推定した信号を生成する。この信号は、リップル成分Irの周期に応じた信号である。一定の角度は、リップル成分Irの1周期に対応する角度でもよいし、半周期に対応する角度でもよい。この実施例では、電動機10がスリット間角度θcだけ回転する毎に、リップル成分Irの波形から推定した信号(第1パルス信号Pa)を生成する。第1信号生成部34は、例えば、電流フィルタ部33が出力するリップル成分Irの波形に基づいて第1パルス信号Paを生成する。
The first signal generation unit 34 generates a signal that the motor 10 is rotated by a certain angle from the waveform of the ripple component Ir. This signal is a signal corresponding to the cycle of the ripple component Ir. The constant angle may be an angle corresponding to one cycle of the ripple component Ir or an angle corresponding to a half cycle. In this embodiment, every time the electric motor 10 rotates by the inter-slit angle θc, a signal (first pulse signal Pa) estimated from the waveform of the ripple component Ir is generated. The first signal generation unit 34 generates, for example, the first pulse signal Pa based on the waveform of the ripple component Ir output from the current filter unit 33.
図8Aは、第1信号生成部34が第1パルス信号Paを生成するタイミングの一例を示す図である。第1信号生成部34は、リップル成分Irの1周期毎に第1パルス信号Paを生成する。例えば、リップル成分Irが基準電流値Ibを超える度に第1パルス信号Paを生成する。図8Aの例では、時刻t1、t2、t3、・・・、tn等で第1パルス信号Paを生成している。C1、C2、C3、・・・、Cn等は、リップル成分Irの周期を示し、θ1、θ2、θ3、・・・、θn等は、第1信号生成部34が第1パルス信号を生成したときの回転角度θを示す。回転角度θは、回転角度算出部32が算出した値である。このように、第1信号生成部34は、典型的には、回転角度θのがスリット間角度θcだけ増加する毎に第1パルス信号Paを生成する。
FIG. 8A is a diagram showing an example of the timing when the first signal generation unit 34 generates the first pulse signal Pa. The first signal generation unit 34 generates the first pulse signal Pa for each cycle of the ripple component Ir. For example, the first pulse signal Pa is generated every time the ripple component Ir exceeds the reference current value Ib. In the example of FIG. 8A, the first pulse signal Pa is generated at times t1, t2, t3,..., Tn. Cn, C2, C3,..., Cn, etc. indicate the cycle of the ripple component Ir, and θ1, θ2, θ3,..., θn, etc., are generated by the first signal generator 34 from the first pulse signal. Shows the rotation angle θ. The rotation angle θ is a value calculated by the rotation angle calculation unit 32. As described above, the first signal generation unit 34 typically generates the first pulse signal Pa each time the rotation angle θ increases by the inter-slit angle θc.
但し、第1信号生成部34は、例えば、電動機10の電源オフ後の惰性回転期間において電流Im及びそのリップル成分Irが小さくなった場合、リップル成分Irを検出できずに、第1パルス信号Paを生成できないことがある。また、第1信号生成部34は、例えば、電動機10の電源オン直後に突入電流が発生した場合、その突入電流に応じて第1パルス信号Paを誤って生成してしまうことがある。このような第1パルス信号Paの生成漏れ又は誤生成は、回転角度検出器100が出力する電動機10の回転に関する情報(以下、「回転情報」とする。)の信頼性を低下させてしまう。
However, for example, when the current Im and its ripple component Ir become small in the inertia rotation period after the power of the electric motor 10 is turned off, the first signal generation unit 34 cannot detect the ripple component Ir and the first pulse signal Pa is not detected. May not be generated. Further, for example, when a rush current is generated immediately after the power of the electric motor 10 is turned on, the first signal generation unit 34 may erroneously generate the first pulse signal Pa according to the rush current. Such omission or erroneous generation of the first pulse signal Pa reduces the reliability of the information about the rotation of the electric motor 10 (hereinafter, referred to as “rotation information”) output by the rotation angle detector 100.
そこで、回転角度検出器100は、第2信号生成部35により、電動機10の回転角度を表す信号をより高精度に生成できるようにしている。
Therefore, in the rotation angle detector 100, the second signal generation unit 35 can generate a signal representing the rotation angle of the electric motor 10 with higher accuracy.
第2信号生成部35は、電動機10が所定角度だけ回転したことを表す信号を生成する。第2信号生成部35は、例えば、回転角度算出部32が出力する回転角度信号と第1信号生成部34が出力する第1パルス信号Paとに基づいてスリット間角度θc毎に第2パルス信号Pbを生成する。第2パルス信号Pbは、電動機10が所定角度だけ回転したことを表す情報の一例である。第1パルス信号Paは、リップル成分Irの波形のみから推定した信号であるため、誤って出力されることがある。一方、第2パルス信号Pbは、第1パルス信号Paと、回転角度信号の双方から推定した信号であるため、誤差を一定値以下にできる。
The second signal generation unit 35 generates a signal indicating that the electric motor 10 has rotated by a predetermined angle. The second signal generation unit 35, for example, based on the rotation angle signal output by the rotation angle calculation unit 32 and the first pulse signal Pa output by the first signal generation unit 34, the second pulse signal for each inter-slit angle θc. Generate Pb. 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 set to a certain value or less.
図9は、第2信号生成部35が第2パルス信号Pbを生成するタイミングの一例を示す図である。第1閾値θu及び第2閾値θdは、第1パルス信号Paの受付可否の閾値であり、例えば、回転角度θと電動機10の実際の回転角度との最大位相差に基づいて設定される。
FIG. 9 is a diagram showing an example of the timing when 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, for example, based on the maximum phase difference between the rotation angle θ and the actual rotation angle of the electric motor 10.
第2信号生成部35は、回転角度θが第1閾値θu以上で且つスリット間角度θc未満のときに第1信号生成部34が最初に生成した第1パルス信号Paに基づいて、第2パルス信号Pbを生成する。第1閾値θuは、予め設定される値であってもよく、動的に設定される値であってもよい。図9は、回転角度θが第1閾値θu以上で且つスリット間角度θc未満の角度範囲である受付範囲をドットパターンで示す。図9の例では、第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が検出する回転角度は、ノイズによって、一時的に誤って検出されても、正しい回転角度に戻る。また、誤差の範囲は、角度α未満であり、実用上、問題無い範囲である。
The second signal generator 35 outputs the second pulse based on the first pulse signal Pa first generated by the first signal generator 34 when the rotation angle θ is equal to or greater than the first threshold value θu and less than the inter-slit angle θc. The signal Pb is generated. The first threshold value θu may be a preset value or a dynamically set value. FIG. 9 shows a dot pattern of the acceptance range in which the rotation angle θ is the first threshold value θu or more and less than the inter-slit angle θc. In the example of FIG. 9, the rotation angles θ1, θ2, and θ5 when the first signal generation unit 34 generates the first pulse signals Pa1, Pa2, and Pa4 are greater than or equal to the first threshold θu and less than the inter-slit angle θc. That is, the remaining angles until the rotation angles θ1, θ2, and θ5 reach the inter-slit angle θc are less than the angle α. The angle α is set, for example, based on the maximum error between the rotation angle θ and the actual rotation angle of the electric motor 10. In this case, the second signal generation unit 35 considers that the first pulse signals Pa1, Pa2, Pa4 generated by the first signal generation unit 34 at times t1, t2, and t5 are not noise. Therefore, the second signal generation unit 35 generates the second pulse signals Pb1, Pb2, Pb4 at times t1, t2, t5. When the second pulse signal Pb is generated, the second signal generator 35 outputs a synchronization command to the rotation angle calculator 32. When the rotation angle θ is less than the inter-slit angle θc and is equal to or more than the first threshold value θu, if a noise having the same frequency component as the ripple component Ir occurs, an erroneous first pulse signal Pa is output and the second pulse signal Pa is output. The pulse signal Pb may be generated. However, at the next timing, the true ripple component Ir is detected, 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 erroneously detected due to noise. Moreover, the range of the error is less than the angle α, which is a range that causes no practical problem.
また、第2信号生成部35は、回転角度θの大きさが所定角度に達したときに第2パルス信号Pbを生成する。所定角度は、例えば、スリット間角度θcである。但し、回転角度θは、回転角度算出部32が算出した角度であり、誤差が含まれる。図9の例では、時刻t3、t7、t9において回転角度θ3、θ7、θ9の絶対値がスリット間角度θcに達したときに第2パルス信号Pb3、Pb5、Pb6を生成している。第2パルス信号Pbを生成すると、第2信号生成部35は、回転角度算出部32に対して同期指令を出力する。回転角度算出部32は、同期指令を受けると回転角度θをゼロにリセットする。
The second signal generation unit 35 also generates the second pulse signal Pb when the magnitude of the rotation angle θ reaches a predetermined angle. The predetermined angle is, for example, the inter-slit angle θc. However, the rotation angle θ is an angle calculated by the rotation angle calculation unit 32 and includes an error. In the example of FIG. 9, 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. When the second pulse signal Pb is generated, 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 when receiving the synchronization command.
すなわち、第2信号生成部35は、例えば、時刻t2において、第2パルス信号Pb2を生成した後で第1パルス信号Paを受け取ることがない状態のまま、回転角度θの絶対値がスリット間角度θcに達したときに第2パルス信号Pb3を生成する。
That is, for example, at time t2, the second signal generation unit 35 does not receive the first pulse signal Pa after generating the second pulse signal Pb2, and the absolute value of the rotation angle θ is the inter-slit angle. When θc is reached, the second pulse signal Pb3 is generated.
このように、第2信号生成部35は、何らかの理由で第1パルス信号Paが生成されなかった場合であっても、回転角度算出部32によって算出された回転角度θの絶対値がスリット間角度θcに達しさえすれば、第2パルス信号Pbを生成する。そのため、第1パルス信号Paの生成漏れを確実に防止できる。
As described above, 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 inter-slit angle even when the first pulse signal Pa is not generated for some reason. The second pulse signal Pb is generated only when θc is reached. Therefore, generation leakage of the first pulse signal Pa can be reliably prevented.
また、第2信号生成部35は、第1信号生成部34が第1パルス信号Paを生成したときの回転角度θが第2閾値θd未満の場合、第2パルス信号Pbを生成しない。第2閾値θdは、予め設定される値であってもよく、動的に設定される値であってもよい。このような状況は、典型的には、回転角度θの大きさが所定角度に達したことで第2パルス信号Pbが生成された後に発生する。図9は、回転角度θがゼロ以上で且つ第2閾値θd未満の角度範囲である受付範囲をドットパターンで示す。図9の例では、時刻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を生成しない。図9の「×」に向かう破線矢印は、第1パルス信号Pa3に基づいて第2パルス信号Pbが生成されなかったことを表す。他の図における「×」に向かう破線矢印についても同様である。
The second signal generation unit 35 does not generate the second pulse signal Pb 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 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 magnitude of the rotation angle θ reaching a predetermined angle. FIG. 9 shows a dot pattern of a reception range that is an angle range in which the rotation angle θ is equal to or larger than zero and smaller than the second threshold value θd. In the example of FIG. 9, at the time t4 after the second pulse signal Pb3 is generated due to the absolute value of the rotation angle θ reaching the inter-slit angle θc at the time t3, the first signal generation unit 34 causes the first pulse to be generated. The 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 accumulated after being reset at the time t3 is still less than the angle β. In this case, 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. Specifically, this occurs when the rotation angle θ output by the rotation angle calculation unit 32 reaches the inter-slit angle θc before the actual rotation angle of the electric motor 10 reaches the inter-slit angle θc. That is, since the rotation angle θ calculated by the rotation angle calculation unit 32 reaches the inter-slit angle θc even though the actual rotation angle has not reached the inter-slit angle θc, the second pulse signal Pb3 is generated. Occurs when. The time when the first pulse signal Pa3 is generated immediately after the second pulse signal Pb3 is generated is the moment when the actual rotation angle reaches the inter-slit angle θc. Therefore, the second signal generator 35 outputs a synchronization command to the rotation angle calculator 32 at the time when the first pulse signal Pa3 is generated. In this case, the second signal generator 35 does not generate the second pulse signal Pb at time t4. The dashed arrow pointing to "x" in FIG. 9 indicates that the second pulse signal Pb was not generated based on the first pulse signal Pa3. The same applies to the dashed arrow pointing to "x" in other figures.
また、第1信号生成部34が、第1パルス信号Paを短時間に連続して生成することがある。上述したとおり、図8Aにおいて、リップル成分Irが基準電流値Ibを超える度に、第1信号生成部34が、第1パルス信号Paを生成する。リップル成分Irが基準電流値Ibを超える直前や直後は、微小なノイズが重畳されても、第1パルス信号Paが誤って生成される。この場合、第1信号生成部34が、第1パルス信号Paを生成する間隔が角度β(第2閾値θd)未満となる。図9の例では、第1信号生成部34が、時刻t2で、第1パルス信号Pa2を生成する。第2信号生成部35は、第2パルス信号Pb2を生成すると共に、回転角度算出部32に同期指令を出力する。回転角度算出部32は、回転角度θをリセットする。その後、第1信号生成部34が、時刻t2'で、第1パルス信号Pa2'を生成する。時刻t2'の時点での回転角度θは、第2閾値θd未満である。この場合、第2信号生成部35は、第2パルス信号Pbを生成せず、同期指令も出力しない。図9の「×」に向かう破線矢印は、第1パルス信号Pa3に基づいて第2パルス信号Pbが生成されなかったことを表す。なお、リップル成分Irが基準電流値Ibを超える直前や直後は、微小なノイズが重畳された場合、短時間に連続して複数発生する第1パルス信号Paの何れが、スリット間角度θcに達したことを示す第1パルス信号Paか判断できない。しかし、この場合、複数の第1パルス信号Paは、短い期間内(角度β未満)に生成されるため、最初の第1パルス信号Paの時点で、回転角度θがスリット間角度θcに達したと見なしても、実用上、問題ない。また、リップル成分Irが基準電流値Ibを超える度に、同様のノイズが発生したとしても、誤差は、角度β未満に抑えられる。つまり、誤差が累積しない。このため、実用上問題ない範囲に誤差を抑えることができる。
In addition, the first signal generation unit 34 may continuously generate the first pulse signal Pa in a short time. As described above, in FIG. 8A, the first signal generation unit 34 generates the first pulse signal Pa each time the ripple component Ir exceeds the reference current value Ib. Immediately before or 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 generation unit 34 generates the first pulse signal Pa is less than the angle β (second threshold θd). In the example of FIG. 9, the first signal generation unit 34 generates the first pulse signal Pa2 at time t2. The second signal generation unit 35 generates the second pulse signal Pb2 and outputs a synchronization command to the rotation angle calculation unit 32. The rotation angle calculation unit 32 resets the rotation angle θ. After that, the first signal generation unit 34 generates the first pulse signal Pa2′ at time t2′. The rotation angle θ at time t2′ is less than the second threshold θd. In this case, the second signal generator 35 does not generate the second pulse signal Pb and does not output the synchronization command. The dashed arrow pointing to "x" in FIG. 9 indicates that the second pulse signal Pb was not generated based on the first pulse signal Pa3. Immediately before or immediately after the ripple component Ir exceeds the reference current value Ib, when a small amount of noise is superimposed, which of a plurality of first pulse signals Pa continuously generated in a short time reaches the inter-slit angle θc. It cannot be determined whether it is the first pulse signal Pa indicating that it has been done. 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 θ reaches 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 similar 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, the error does not accumulate. For this reason, the error can be suppressed within a range that causes no practical problem.
また、第2信号生成部35は、第1信号生成部34が第1パルス信号Paを生成したときの回転角度θが第2閾値θd以上で且つ第1閾値θu未満の場合、すなわち、回転角度θが角度範囲R1内にある場合、第2パルス信号Pbを生成することはなく、回転角度算出部32に対して同期指令を出力することもない。図9の例では、時刻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による影響を排除できる。
In addition, the second signal generation unit 35, when the rotation angle θ when the first signal generation unit 34 generates the first pulse signal Pa is equal to or more than the second threshold θd and less than the first threshold θu, that is, the rotation angle. When θ is within the angle range R1, the second pulse signal Pb is not generated and the synchronization command is not output to the rotation angle calculation unit 32. In the example of FIG. 9, 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. That is, the remaining angle until the rotation angle θ6 reaches the inter-slit angle θc is larger than the angle α, and the rotation angle θ6 accumulated after being reset at the time t5 is the angle β or more. In this case, 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 the time t6 and does not output the synchronization command to the rotation angle calculation unit 32. That is, the influence of the first pulse signal Pa5 due to noise can be eliminated.
また、第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は、同期指令を出力しない。図9の例では、時刻t4'において第1信号生成部34が第1パルス信号Pa3'を生成したときの回転角度θ4'は、第2閾値θd未満である。しかしながら、第1パルス信号Pa3'は、直近の第2パルス信号Pb3が生成された後の2番目の第1パルス信号Paである。そのため、第2信号生成部35は、第1パルス信号Pa3'を受け取ったときには、第2パルス信号Pbを生成することはなく、回転角度算出部32に対して同期指令を出力することもない。
The second signal generation unit 35 does not generate the second pulse signal Pb when the rotation angle θ when the first signal generation unit 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 value θd, the second signal generation unit 35 issues a synchronization command to the rotation angle calculation unit 32. In some cases, the synchronization command is not output. If the first pulse signal Pa is generated when the rotation angle θ is less than the second threshold θd after the rotation angle θ reaches the inter-slit angle θc before the first pulse signal Pa is generated, The two-signal generator 35 sends a synchronization command to the rotation angle calculator 32. However, before the first pulse signal Pa is generated, after the rotation angle θ reaches the inter-slit angle θc, the plurality of first pulse signals Pa are generated when the rotation angle θ is less than the second threshold value θd. Then, the first pulse signal Pa after the second pulse is ignored. That is, the second signal generation unit 35 does not output the synchronization command. In addition, even if the first pulse signal Pa is generated when the rotation angle θ is less than the second threshold value θd after the first pulse signal Pa is generated before the rotation angle θ reaches the inter-slit angle θc, the second pulse signal Pa is generated. The signal generator 35 does not output the synchronization command. That is, when the plurality of first pulse signals Pa are generated while the first pulse signal Pa is less than the second threshold value θd (angle β), the second and subsequent first pulse signals Pa are ignored. That is, the second signal generation unit 35 does not output the synchronization command. In the example of FIG. 9, 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. However, the first pulse signal Pa3′ is the second first pulse signal Pa after the most recent second pulse signal Pb3 is generated. Therefore, when the second signal generation unit 35 receives the first pulse signal Pa3′, the second signal generation unit 35 does not generate the second pulse signal Pb and does not output the synchronization command to the rotation angle calculation unit 32.
以上の構成により、回転角度検出器100は、電動機10の回転角度θの検出誤差を実用上問題ない範囲に抑えることができる。特に、回転角度検出器100では、誤差が累積されることがない。このため、電動機10の回転数にかかわらず、誤差を一定範囲内に抑えることができる。発明者は、次の前提が成り立つことを発見し、上述した回転角度検出器100を発明した。(1)微小ノイズによるリップル成分Irの誤検出は、リップル成分Irが基準電流値Ibを超える直前か直後に限定される。この場合、正しく生成された第1パルス信号Paの前後の短時間(角度αだけ前から角度βだけ後まで)のみ、誤った第1パルス信号Paが生成される。(2)大きなノイズは、電源オン直後の突入電流等によるもので、スリット間角度θcより充分長い間隔で発生する。(3)回転角度算出部32が、端子間電圧V'と電流Imから算出する回転角度θの誤差は、スリット間角度θcより充分に小さい。
With the above configuration, the rotation angle detector 100 can suppress the detection error of the rotation angle θ of the electric motor 10 within a range that causes no practical problem. In particular, the rotation angle detector 100 does not accumulate errors. Therefore, the error can be suppressed within a certain range regardless of the rotation speed of the electric motor 10. The inventor has found that the following premise holds, 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 immediately 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 β). (2) The large noise is due to the inrush current immediately after the power is turned on, and is generated at intervals sufficiently longer than the inter-slit angle θc. (3) The error of the rotation angle θ calculated by the rotation angle calculation unit 32 from the inter-terminal voltage V′ and the current Im is sufficiently smaller than the inter-slit angle θc.
以上の構成により、第2信号生成部35は、例えば、電動機10の電源オフ後の惰性回転期間において電流Im及びそのリップル成分Irが小さくなり、第1信号生成部34がリップル成分Irの波形に基づいて第1パルス信号Paを生成できない場合であっても、第2パルス信号Pbを生成できる。
With the above configuration, the second signal generation unit 35 reduces the current Im and its ripple component Ir in the inertia rotation period after the power of the electric motor 10 is turned off, and the first signal generation unit 34 changes the waveform of the ripple component Ir into a waveform. Even if the first pulse signal Pa cannot be generated based on the above, the second pulse signal Pb can be generated.
また、第2信号生成部35は、例えば、電動機10の電源オン直後に突入電流が発生し、第1信号生成部34がその突入電流に応じて第1パルス信号Paを誤って生成してしまった場合であっても、その第1パルス信号Paに対応する第2パルス信号Pbを生成しない。すなわち、その第1パルス信号Paによる影響を排除できる。
In addition, in the second signal generation unit 35, for example, an inrush current is generated immediately after the power of the electric 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 the 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.
また、第2信号生成部35は、例えば、第1信号生成部34がノイズ等の影響により第1パルス信号Paを誤って生成してしまった場合であっても、その第1パルス信号Paに対応する第2パルス信号Pbを生成することはなく、回転角度算出部32に対して同期指令を出力することもない。
Further, the second signal generation unit 35 outputs the first pulse signal Pa to 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 the synchronization command is not output to the rotation angle calculation unit 32.
そのため、回転角度検出器100は、第1パルス信号Paと回転角度信号の双方に基づき生成される第2パルス信号Pbに基づいて電動機10の回転情報を算出することで、電動機10の回転情報の信頼性を向上させることができる。
Therefore, the rotation angle detector 100 calculates the rotation information of the electric motor 10 based on the second pulse signal Pb that is generated based on both the first pulse signal Pa and the rotation angle signal, so that the rotation information of the electric motor 10 can be obtained. The reliability can be improved.
また、第2信号生成部35は、電動機10の回転方向を表す方向信号を出力する。例えば、第2信号生成部35は、回転方向が順回転方向であれば、回転角度θとして正の値を出力し、回転方向が逆回転方向であれば、回転角度θとして負の値を出力する。回転角度θは、電動機10を流れる電流が正の値のときに正の値を有し、電動機10を流れる電流が負の値のときに負の値を有する。但し、惰性回転中は、回転角度θは、電動機10を流れる電流が負の値のときに正の値を有し、電動機10を流れる電流が正の値のときに負の値を有する。
In addition, the second signal generation unit 35 outputs a direction signal indicating the rotation direction of the electric motor 10. For example, the second signal generation unit 35 outputs a positive value as the rotation angle θ when the rotation direction is the forward rotation direction, and outputs a negative value as the rotation angle θ when the rotation direction is the reverse rotation direction. To do. The rotation angle θ has a positive value when the current flowing through the electric motor 10 has a positive value, and has a negative value when the current flowing through the electric motor 10 has a negative value. However, during inertial rotation, 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.
回転情報算出部36は、電動機10の回転情報を算出する。電動機10の回転情報は、例えば、基準回転位置からの回転量(回転角度)、基準回転位置からの回転数、基準位置(全閉位置)に対する窓ガラス2の上端部2tの相対位置、窓1aの開き量等に変換された値でもよい。また、ある期間における回転角速度ωの平均値、最大値、最小値、中央値等の統計値を含んでいてもよい。図6の例では、回転情報算出部36は、第2信号生成部35の出力に基づいて電動機10の回転情報を算出する。例えば、電動機10の回転が開始した後に生成された第2パルス信号Pbの数にスリット間角度θcを乗ずることで、電動機10の回転が開始した後の回転量を算出する。その際、回転情報算出部36は、第2信号生成部35が第2パルス信号Pbと共に出力する方向信号に基づいて第2パルス信号Pbの数をインクリメントするかデクリメントするかを決定する。或いは、回転情報算出部36は、順回転方向を表す方向信号と共に受けた第2パルス信号Pbの数と、逆回転方向を表す方向信号と共に受けた第2パルス信号Pbの数とを別々に計数し、それらの差に基づいて電動機10の回転量を算出してもよい。
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, the rotation amount (rotation angle) from the reference rotation position, the number of rotations from the reference rotation position, the relative position of the upper end 2t of the window glass 2 with respect to the reference position (fully closed position), and the window 1a. It may be a value converted into the opening amount of the. It may also include statistical values such as an average value, a maximum value, a minimum value, and a median value of the rotational angular velocity ω in a certain period. In the example of FIG. 6, the rotation information calculation unit 36 calculates the rotation information of the electric motor 10 based on the output of the second signal generation unit 35. For example, the rotation amount after the rotation of the electric motor 10 is started is calculated by multiplying the number of the second pulse signals Pb generated after the rotation of the electric motor 10 by the inter-slit angle θc. At that time, the rotation information calculation unit 36 determines whether to increment or decrement the number of the second pulse signals Pb based on the direction signal output by the second signal generation unit 35 together with the second pulse signal Pb. 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. However, the rotation amount of the electric motor 10 may be calculated based on the difference between them.
抵抗設定部37は、電動機10の抵抗特性に対応する抵抗値を設定する。抵抗設定部37は、例えば、回転角度検出器100の起動時に、不揮発性記憶媒体に予め記憶されている値を、式(1)における設定抵抗値Rmとして設定する。設定抵抗値Rmは、動的に更新されてもよい。
The resistance setting unit 37 sets a resistance value corresponding to the resistance characteristic of the electric motor 10. The resistance setting unit 37 sets a value stored in advance in the non-volatile storage medium as the set resistance value Rm in Expression (1) when the rotation angle detector 100 is activated, for example. The set resistance value Rm may be dynamically updated.
次に、図10を参照し、回転角度検出器100が電動機10の回転量を算出する処理(以下、「回転量算出処理」とする。)の流れについて説明する。図10は、回転量算出処理のフローチャートである。回転角度検出器100は、電動機10の駆動中にこの回転量算出処理を実行する。
Next, with reference to FIG. 10, a flow of a process in which the rotation angle detector 100 calculates the rotation amount of the electric motor 10 (hereinafter, referred to as “rotation amount calculation process”) will be described. FIG. 10 is a flowchart of the rotation amount calculation process. The rotation angle detector 100 executes this rotation amount calculation process while the electric motor 10 is being driven.
最初に、回転角度検出器100は、端子間電圧V及び電流Imを取得する(ステップST21)。図6の例では、回転角度検出器100は、電圧検出部10aが出力する端子間電圧V、及び、電流検出部10bが出力する電流Imを所定の制御周期毎に取得する。
First, the rotation angle detector 100 acquires the inter-terminal voltage V and the current Im (step ST21). In the example of FIG. 6, the rotation angle detector 100 acquires the inter-terminal voltage V output by the voltage detection unit 10a and the current Im output by the current detection unit 10b for each predetermined control cycle.
その後、回転角度検出器100は、回転角速度ω及び回転角度θを算出する(ステップST22)。図6の例では、回転角度検出器100の回転角速度算出部31は、端子間電圧V'と電流Imを式(1)に代入して回転角速度ωを所定の制御周期毎に算出する。そして、回転角度検出器100の回転角度算出部32は、制御周期毎に算出される回転角速度ωを積算して回転角度θを算出する。
After that, the rotation angle detector 100 calculates the rotation angular velocity ω and the rotation angle θ (step ST22). In the example of FIG. 6, the rotation angular velocity calculation unit 31 of the rotation angle detector 100 substitutes the inter-terminal voltage V′ and the current Im into the equation (1) to calculate the rotation angular velocity ω for each predetermined control cycle. Then, the rotation angle calculation unit 32 of the rotation angle detector 100 integrates the rotation angular velocities ω calculated for each control cycle to calculate the rotation angle θ.
その後、回転角度検出器100は、回転角度θが所定角度未満であるか否かを判定する(ステップST23)。図6の例では、回転角度検出器100の第2信号生成部35は、回転角度θがスリット間角度θc未満であるか否かを判定する。
Then, the rotation angle detector 100 determines whether or not the rotation angle θ is less than a predetermined angle (step ST23). In the example of FIG. 6, the second signal generator 35 of the rotation angle detector 100 determines whether the rotation angle θ is less than the inter-slit angle θc.
回転角度θがスリット間角度θc以上であると判定した場合(ステップST23のNO)、第2信号生成部35は、スリット間角度θcまでのタイミングで第1パルス信号Paが生成されなかったと判定する。この場合、第2信号生成部35は、第1パルス信号Paが生成されていないことを示すためにフラグFを"False"にする(ステップST23A)。フラグFは、第1パルス信号Paが生成されたか否かを示すためのフラグである。フラグFの初期値は、第1パルス信号Paが生成されていないことを示す"False"である。フラグFが"True"であることは、第1パルス信号Paが既に生成されたことを示す。そして、第2パルス信号Pbを生成し(ステップST29)、且つ、回転角度θをゼロにリセットする(ステップST30)。これは、第1パルス信号Paが生成される前に回転角度θがスリット間角度θcに達した場合であり、図9の例において時刻t3、t7、t9で回転角度θが回転角度θ3、θ7、θ9に達した場合に対応する。
When it is determined that the rotation angle θ is equal to or greater than the inter-slit angle θc (NO in step ST23), the second signal generation unit 35 determines that the first pulse signal Pa is not generated at the timing up to the inter-slit angle θc. .. In this case, the second signal generation unit 35 sets the flag F to "False" to indicate that the first pulse signal Pa is not generated (step ST23A). 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. Then, the second pulse signal Pb is generated (step ST29), and the rotation angle θ is reset to zero (step ST30). This is a case where the rotation angle θ reaches the inter-slit angle θc before the first pulse signal Pa is generated. In the example of FIG. 9, the rotation angle θ is the rotation angles θ3, θ7 at times t3, t7, and t9. , Θ9 is reached.
一方、回転角度θがスリット間角度θc未満であると判定した場合(ステップST23のYES)、第2信号生成部35は、第1パルス信号Paが生成されたか否かを判定する(ステップST24)。図6の例では、第1信号生成部34によって第1パルス信号Paが生成されたか否かを判定する。
On the other hand, when it is determined that the rotation angle θ is less than the inter-slit angle θc (YES in step ST23), the second signal generator 35 determines whether the first pulse signal Pa is generated (step ST24). .. In the example of FIG. 6, it is determined whether the first signal generator 34 has generated the first pulse signal Pa.
回転角度θがスリット間角度θc未満の段階(ステップST23のYES)で第1パルス信号Paが未だ生成されていないと第2信号生成部35が判定した場合(ステップST24のNO)、回転角度検出器100は、回転量を算出する(ステップST27)。そして、回転情報算出部36は、第2信号生成部35の出力に基づいて電動機10の回転量を算出する。この場合、算出される回転量に変化はない。これは、図9の例において時刻t0で回転角度θが回転角度θ0になっている場合に対応する。
When the second signal generation unit 35 determines that the first pulse signal Pa is not yet generated at the stage where the rotation angle θ is less than the inter-slit angle θc (YES in step ST23) (NO in step ST24), the rotation angle detection is performed. The container 100 calculates the rotation amount (step ST27). 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. In this case, the calculated rotation amount does not change. This corresponds to the case where the rotation angle θ is the rotation angle θ0 at the time t0 in the example of FIG. 9.
その後、回転角度検出器100は、回転角速度ωがゼロになったか否かを判定する(ステップST28)。そして、回転角度検出器100は、回転角速度ωがゼロになっていないと判定した場合(ステップST28のNO)、処理をステップST1に戻し、回転角速度ωがゼロになったと判定した場合(ステップST28のYES)、回転量算出処理を終了させる。
After that, the rotation angle detector 100 determines whether the rotation angular velocity ω has become zero (step ST28). When the rotation angle detector 100 determines that the rotation angular velocity ω is not zero (NO in step ST28), the process is returned to step ST1 and when the rotation angular velocity ω is determined to be zero (step ST28). YES), the rotation amount calculation process is terminated.
第1パルス信号Paが生成されたと判定した場合(ステップST24のYES)、第2信号生成部35は、回転角度θが第1閾値θu未満であるか否かを判定する(ステップST25)。第1閾値θu未満のタイミングで生成された第1パルス信号Paは、ノイズに基づく慨然性が高いためである。
When it is determined that the first pulse signal Pa is generated (YES in step ST24), the second signal generation unit 35 determines whether the rotation angle θ is less than the first threshold value θu (step ST25). This is because the first pulse signal Pa generated at the timing less than the first threshold value θu is highly probable due to noise.
回転角度θが第1閾値θu以上であると判定した場合(ステップST25のNO)、第2信号生成部35は、第1パルス信号Paが生成されたか否かを示すためにフラグFを"True"にする(ステップST25A)。そして、第2信号生成部35は、第2パルス信号Pbを生成し(ステップST29)、且つ、回転角度θをゼロにリセットする(ステップST30)。回転角度θが、第1閾値θu以上のときに第1パルス信号Paが発生した場合、第1パルス信号Paが発生した時点の実際の回転角度が、スリット間角度θcに近いためである。これは、図9の例において時刻t1、t2、t5で第1パルス信号Pa1、Pa2、Pa4が生成された場合に対応する。
When determining that the rotation angle θ is equal to or larger than the first threshold value θu (NO in step ST25), the second signal generation unit 35 sets the flag F to “True” to indicate whether the first pulse signal Pa is generated. "(Step ST25A). Then, the second signal generation unit 35 generates the second pulse signal Pb (step ST29) and resets the rotation angle θ to zero (step ST30). This is because when the first pulse signal Pa is generated when the rotation angle θ is equal to or larger than the first threshold value θ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, and t5 in the example of FIG.
回転角度θが第1閾値θu未満であると判定した場合(ステップST25のYES)、第2信号生成部35は、現時点では、第1パルス信号Paがノイズに基づくものでないとは判定できない。回転角度θは、多少の誤差を含む場合がある。また、第1パルス信号Paの生成時期が、ノイズ等の影響で、若干ずれることがある。このため、回転角度θがスリット間角度θcに達する時期と、第1パルス信号Paの生成時期がずれる場合がある。このため、回転角度θがスリット間角度θcに達する時期と、第1パルス信号Paの生成時期のどちらが早いか分からないためである。そこで、第2信号生成部35は、直近の第2パルス信号Pbを生成した後で最初に受け取った第1パルス信号Paに関し、回転角度θが第2閾値θd未満であるか否かを判定する(ステップST26)。
When it is determined that the rotation angle θ is less than the first threshold value θu (YES in step ST25), the second signal generation unit 35 cannot determine at this moment that the first pulse signal Pa is not based on noise. The rotation angle θ may include some errors. Further, the generation timing of the first pulse signal Pa may be slightly shifted due to the influence of noise or the like. Therefore, the time when the rotation angle θ reaches the inter-slit angle θc and the time when the first pulse signal Pa is generated may shift. Therefore, it is not known which of the timing when the rotation angle θ reaches the inter-slit angle θc and the timing when the first pulse signal Pa is generated. Therefore, the second signal generation unit 35 determines whether or not the rotation angle θ is less than the second threshold value θd for the first pulse signal Pa that is received first after the most recent second pulse signal Pb is generated. (Step ST26).
最初の第1パルス信号Paに関する回転角度θが第2閾値θd未満であると判定した場合(ステップST26のYES)、第2信号生成部35は、フラグFを調べる(ステップST26A)。フラグFは、第1パルス信号Paが、連続して発生したことを判断するためのフラグである。フラグFが"True"の場合、第1パルス信号Paは、連続して発生した2番目以降の第1パルス信号Paである。フラグFが"True"の場合(ステップST26AのYES)、回転角度検出器100は、回転量を算出する(ステップST27)。これは、図9の例において時刻t2'、t4'で第1パルス信号Pa2'、Pa3'が生成されたときに対応する。フラグFが"False"の場合(ステップST26AのNO)、第2信号生成部35は、フラグFを"True"にする(ステップST26B)。その後、第2信号生成部35は、回転角度θをゼロにリセットする(ステップST30)。回転角度θが第2閾値θd未満の場合、第1パルス信号Paが生成されたときの実際の回転角度が、スリット間角度θcに近いためである。すなわち、第2閾値θd未満の場合、第1パルス信号Paが、直前に生成した第2パルス信号Pbに対応すると判定できるためである。これは、図9の例において時刻t4、t8で第1パルス信号Pa3、Pa6が生成された場合に対応する。すなわち、第1パルス信号Pa3、Pa6が第2パルス信号Pb3、Pb5に対応すると判定できる。
When it is determined that the rotation angle θ related to the first pulse signal Pa is less than the second threshold value θd (YES in step ST26), the second signal generation unit 35 checks the flag F (step ST26A). The flag F is a flag for determining that the first pulse signal Pa is continuously generated. When the flag F is "True", the first pulse signal Pa is the second pulse signal Pa and the second pulse signals which are successively generated. When the flag F is "True" (YES in step ST26A), the rotation angle detector 100 calculates the rotation amount (step ST27). This corresponds to the case where the first pulse signals Pa2′ and Pa3′ are generated at the times t2′ and t4′ in the example of FIG. When the flag F is "False" (NO in step ST26A), the second signal generation unit 35 sets the flag F to "True" (step ST26B). Then, the second signal generation unit 35 resets the rotation angle θ to zero (step ST30). This is because when the rotation angle θ is less than the second threshold value θ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 value θ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 the 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.
最初の第1パルス信号Paに関する回転角度θが第2閾値θd以上であると判定した場合(ステップST26のNO)、すなわち、角度範囲R1内であると判定した場合、第2信号生成部35は、その第1パルス信号Paがノイズに基づくものであると判定する。この場合、第2信号生成部35は、第2パルス信号Pbを生成することはなく、回転角度θをリセットすることもない。そして、回転情報算出部36は、第2信号生成部35の出力に基づいて電動機10の回転量を算出する。これは、図9の例において時刻t6で第1パルス信号Pa5が生成されたときに対応する。すなわち、第2信号生成部35は、第1パルス信号Pa5をノイズに基づくものと判定している。
When it is determined that the rotation angle θ related to the first pulse signal Pa is equal to or larger than the second threshold value θd (NO in step ST26), that is, when the rotation angle θ is within the angle range R1, the second signal generation unit 35 determines , It is determined that the first pulse signal Pa is based on noise. In this case, the second signal generation unit 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.
その後、回転角度検出器100は、電動機10の回転量を算出する(ステップST27)。図6の例では、回転角度検出器100の回転情報算出部36は、電動機10の回転が開始した後に生成された第2パルス信号Pbの数にスリット間角度θcを乗ずることで、電動機10の回転が開始した後の回転量を算出する。
Then, the rotation angle detector 100 calculates the rotation amount of the electric motor 10 (step ST27). In the example of FIG. 6, 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 by the inter-slit angle θc, so that the electric motor 10 is rotated. The amount of rotation after the start of rotation is calculated.
次に、図11を参照し、回転角度検出器100が算出した電動機10の回転量の信頼性に関する実験結果について説明する。図11は、合成パルス信号及びホールパルス信号のそれぞれの推移を示す図である。
Next, with reference to FIG. 11, an experimental result regarding the reliability of the rotation amount of the electric motor 10 calculated by the rotation angle detector 100 will be described. FIG. 11 is a diagram showing respective transitions of the combined pulse signal and the hall pulse signal.
合成パルス信号は、第2パルス信号Pbの複数パルスを1パルスに合成することで得られる信号である。図11の例では、スリット間角度θcは90度である。第1パルス信号Pa及び第2パルス信号Pbは、基本的に、電動機10の回転軸が90度回転する度に生成されている。そして、合成パルス信号は、第2パルス信号Pbの2パルスを1パルスに合成して生成されている。すなわち、回転角度検出器100は、電動機10の回転軸が180度回転する度に合成パルス信号を1つ生成するように構成されている。
The combined pulse signal is a signal obtained by combining a plurality of pulses of the second pulse signal Pb into one pulse. In the example of FIG. 11, the inter-slit angle θc is 90 degrees. The first pulse signal Pa and the second pulse signal Pb are basically generated each time the rotating shaft of the electric motor 10 rotates 90 degrees. The combined pulse signal is generated by combining the two pulses of the second pulse signal Pb into one pulse. That is, the rotation angle detector 100 is configured to generate one combined pulse signal each time the rotation shaft of the electric motor 10 rotates 180 degrees.
ホールパルス信号は、ホールセンサが出力したパルス信号である。ホールセンサは、第2パルス信号Pbとホールパルス信号との比較のために電動機10の回転軸に取り付けられた磁石が作る磁束を検出する。図11の例では、回転角度検出器100は、電動機10の回転軸が180度回転する度にホールパルス信号を1つ生成するように構成されている。
The hall pulse signal is a pulse signal output by the hall sensor. The Hall sensor detects the magnetic flux generated by the magnet attached to the rotating shaft of the electric motor 10 for comparison between the second pulse signal Pb and the Hall pulse signal. In the example of FIG. 11, 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.
図11の「×」に向かう破線矢印は、第1パルス信号Paに基づいて第2パルス信号Pbが生成されなかったことを表す。すなわち、第1パルス信号Paがノイズとして無視されたことを表す。また、図11の8つの実線矢印は、第1パルス信号Paの生成漏れの際に第2パルス信号Pbが追加されたことを表す。
The dashed arrow pointing to "x" in FIG. 11 indicates that the second pulse signal Pb was not generated based on the first pulse signal Pa. That is, it means that the first pulse signal Pa is ignored as noise. Further, the eight solid arrows in FIG. 11 indicate that the second pulse signal Pb is added when the first pulse signal Pa is not generated.
図11の例では、電動機10の順回転を開始させてからその順回転を停止させるまでの期間に生成された合成パルス信号及びホールパルス信号のそれぞれの数が等しいことが確認された。すなわち、第2パルス信号Pbに基づいて算出される電動機10の回転量が、ホールセンサによって検出される電動機10の回転量に等しいことが確認された。
In the example of FIG. 11, it has been confirmed that the numbers of the combined pulse signal and the hall pulse signal generated in the period from when the forward rotation of the electric motor 10 is started to when the forward rotation is stopped are equal. That is, it was confirmed that the rotation amount of the electric motor 10 calculated based on the second pulse signal Pb was equal to the rotation amount of the electric motor 10 detected by the hall sensor.
次に、図12を参照し、抵抗設定部37が電動機10の抵抗特性に対応する抵抗値を更新する処理(以下、「更新処理」とする。)について説明する。図12は、更新処理のフローチャートである。抵抗設定部37は、所定の制御周期で繰り返しこの更新処理を実行する。
Next, with reference to FIG. 12, a process in which the resistance setting unit 37 updates the resistance value corresponding to the resistance characteristic of the electric motor 10 (hereinafter, referred to as “update process”) will be described. FIG. 12 is a flowchart of the update process. The resistance setting unit 37 repeatedly executes this updating process at a predetermined control cycle.
最初に、抵抗設定部37は、電動機10の回転が安定している回転安定状態であるか否かを判定する(ステップST31)。回転安定状態は、例えば、所定期間における電動機10の端子間電圧Vの変動幅が所定値未満で、且つ、その所定期間における電動機10を流れる電流Imの変動幅が所定値未満で、且つ、その所定期間における第1パルス信号Paの周期の変動幅が所定値未満の状態を含む。
First, the resistance setting unit 37 determines whether or not the rotation of the electric motor 10 is stable and is in a stable rotation state (step ST31). In the stable rotation state, for example, the fluctuation range of the inter-terminal voltage V of the electric motor 10 in a predetermined period is less than a predetermined value, the fluctuation range of the current Im flowing through the electric motor 10 in the predetermined period is less than the predetermined value, and This includes a state in which the fluctuation range of the cycle of the first pulse signal Pa in the predetermined period is less than the predetermined value.
図13は、窓ガラス2の昇降に使用される電動機10の回転安定状態の一例を示す。具体的には、窓ガラス2を下げるためのインチング操作が行われたときの端子間電圧V、電流Im及び第1パルス信号Paの時間的推移を示す。窓ガラス2を下げるためのインチング操作は、例えば、手動閉ボタン7Dの短時間の押圧操作である。図13は、時刻t1において手動閉ボタン7Dが押下されたときにスイッチSW1及びSW3(図6参照。)が閉状態となり端子間電圧V及び電流Imが増加する様子を示す。また、時刻t4においてスイッチSW1が開状態となり且つスイッチSW2(図6参照。)が閉状態となった後で電動機10の惰性回転に応じて端子間電圧V及び電流Imが変動する様子を示す。そして、時刻t5において電動機10が停止して端子間電圧V及び電流Imがゼロに至る様子を示す。時刻t2は最初の回転安定状態の開始時点を表し、時刻t3は最初の回転安定状態の終了時点を表す。図14は、最初の回転安定状態のときの端子間電圧V、電流Im及び第1パルス信号Paの時間的推移を示す。
FIG. 13 shows an example of a stable rotation state of the electric motor 10 used for raising and lowering the window glass 2. Specifically, it shows a 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 glass 2 is performed. The inching operation for lowering the window glass 2 is, for example, a short-time pressing operation of the manual close button 7D. FIG. 13 shows how the switches SW1 and SW3 (see FIG. 6) are closed and the inter-terminal voltage V and the current Im increase when the manual close button 7D is pressed at time t1. Also, at time t4, the state in which the switch SW1 is opened and the switch SW2 (see FIG. 6) is closed and then the inter-terminal voltage V and the current Im are changed according to the inertia rotation of the electric motor 10 is shown. Then, at time t5, the electric motor 10 is stopped and the inter-terminal voltage V and the current Im reach zero. Time t2 represents the start time of the first stable rotation state, and time t3 represents the end time of the first stable rotation state. FIG. 14 shows temporal transitions of the inter-terminal voltage V, the current Im, and the first pulse signal Pa in the initial stable rotation state.
図14に示すように、抵抗設定部37は、所定数の第1パルス信号Paを検出する度に、その期間における端子間電圧V及び電流Imのそれぞれの平均値を算出する。中央値、最頻値、最大値、最小値等の他の統計値であってもよい。図14の例では、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の平均値を表す。
As shown in FIG. 14, each time the resistance setting unit 37 detects the predetermined number of first pulse signals Pa, the resistance setting unit 37 calculates the average value of each of the inter-terminal voltage V and the current Im during the period. Other statistical values such as median value, mode value, maximum value and minimum value may be used. In the example of FIG. 14, each time the eight first pulse signals Pa are detected, the respective average values of the inter-terminal voltage V and the current Im in the period T are calculated. The periods T1, T2, T3,..., Tn represent the periods required to detect the eight first pulse signals Pa. The average inter-terminal voltages V1, V2, V3,..., Vn represent the average value of the inter-terminal voltage V in the periods T1, T2, T3,. The average current Im1, Im2, Im3,..., Imn represents the average value of the current Im in the periods T1, T2, T3,.
抵抗設定部37は、例えば、以下の条件が満たされる場合に、電動機10が回転安定状態にあると判定する。
The resistance setting unit 37 determines that the electric motor 10 is in a stable rotation state, for example, when the following conditions are satisfied.
Δ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が回転安定状態にあると判定する。 ΔT represents a period threshold, ΔIm represents a current threshold, and ΔV represents a voltage threshold. i represents an integer of 1 to n. Specifically, in the resistance setting unit 37, the absolute value of the difference between the periods T1 to Tn with respect to each period T1 is smaller than the period threshold ΔT, and the absolute value of the difference between the average currents Im1 to Imn with respect to each average current Im1 is the current. When the absolute value of the difference between the average inter-terminal voltages V1 to Vn with respect to each of the average inter-terminal voltages V1 is smaller than the threshold ΔIm and smaller than the voltage threshold ΔV, it is determined that the electric motor 10 is in the stable rotation state. That is, when the generation interval of the first pulse signal Pa, the current Im, and the terminal voltage V are all stable, it is determined that the electric motor 10 is in the stable rotation state.
図14の破線による図解は、期間T2、T3、Tnの期間T1に対する差の絶対値が期間閾値ΔTより小さいことを表している。図14のドットパターン領域は、T1±ΔTの範囲を表している。図14の一点鎖線による図解は、平均端子間電圧V2、V3、Vnの平均端子間電圧V1に対する差の絶対値が電圧閾値ΔVより小さいことを表している。図14の二点鎖線による図解は、平均電流Im2、Im3、Imnの平均電流Im1に対する差の絶対値が電流閾値ΔImより小さいことを表している。
The illustration by the broken line in FIG. 14 indicates 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 ΔT. The dot pattern area in FIG. 14 represents the range of T1±ΔT. The illustration by the one-dot chain line in FIG. 14 indicates that the absolute value of the difference between the average inter-terminal voltages V2, V3, and Vn with respect to the average inter-terminal voltage V1 is smaller than the voltage threshold ΔV. The two-dot chain line diagram in FIG. 14 indicates 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.
図14の例では、抵抗設定部37は、時刻t3において、時刻t2から時刻t3までの期間で電動機10が回転安定状態にあったと判定できる。すなわち、電動機10が現時点において回転安定状態にあると判定できる。
In the example of FIG. 14, the resistance setting unit 37 can determine at time t3 that the electric motor 10 was in the stable rotation state during the period from time t2 to time t3. That is, it can be determined that the electric motor 10 is in the stable rotation state at the present moment.
ここで再び図12を参照する。電動機10が回転安定状態にあると判定すると(ステップST31のYES)、抵抗設定部37は、第1パルス信号Paの周期に基づいて回転角速度ω'を算出する(ステップST32)。抵抗設定部37は、例えば、以下の式(3)に基づいて回転角速度ω'を算出する。
Referring again to FIG. When it is determined that the electric motor 10 is in the stable rotation state (YES in step ST31), the resistance setting unit 37 calculates the rotational angular velocity ω′ based on the cycle of the first pulse signal Pa (step ST32). The resistance setting unit 37 calculates the rotational angular velocity ω′ based on the following equation (3), for example.
nは期間Tの数を表し、Mは期間Tにおける第1パルス信号Paの数を表す。例えば、nを10とし、Mを8とし、スリット間角度θcを45度とすると、回転角速度ω'は、電動機10が10回転する間の平均回転角速度[rad/s]を表す。このように、抵抗設定部37は、第1パルス信号Paの周期(上述の例では80周期)に基づいて回転角速度ω'を算出できる。 n represents the number of periods T, and M represents the number of first pulse signals Pa in the period T. For example, when n is 10, M is 8, and the inter-slit angle θc is 45 degrees, the rotational angular velocity ω′ represents the average rotational angular velocity [rad/s] during 10 rotations of the electric motor 10. In this way, the resistance setting unit 37 can calculate the rotational angular velocity ω′ based on the cycle of the first pulse signal Pa (80 cycles in the above example).
その後、抵抗設定部37は、回転角速度ω'に基づいて推定抵抗値R'mを算出する(ステップST33)。抵抗設定部37は、例えば、以下の式(4)に基づいて推定抵抗値R'mを算出する。
After that, the resistance setting unit 37 calculates the estimated resistance value R'm based on the rotational angular velocity ω'(step ST33). The resistance setting unit 37 calculates the estimated resistance value R′m based on the following equation (4), for example.
式(4)は電動機の基本理論式であり、Keは逆起電力定数を表し、Ke×ω'は逆起電力推定値を表す。すなわち、平均端子間電圧V1〜Vnの平均値から逆起電力推定値を差し引いた値を平均電流Im1〜Imnの平均値で除した値が推定抵抗値R'mとして導き出される。平均値は、中央値、最頻値、最大値、最小値等の他の統計値であってもよい。 Formula (4) is a basic theoretical formula of the electric 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 back electromotive force estimated value from the average value of the average inter-terminal voltages V1 to Vn divided 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.
その後、抵抗設定部37は、推定抵抗値R'mが正常範囲内にあるか否かを判定する(ステップST34)。抵抗設定部37は、例えば、不揮発性記憶媒体に予め登録されている正常範囲の上限及び下限を参照し、推定抵抗値R'mが正常範囲内にあるか否かを判定する。正常範囲の上限及び下限の少なくとも一方は、外気温、電動機10の温度等に応じて動的に変更されてもよい。
Then, the resistance setting unit 37 determines whether the estimated resistance value R'm is within the normal range (step ST34). The resistance setting unit 37 refers to, for example, the upper limit and the lower limit of the normal range registered in advance in the nonvolatile storage medium, and determines whether 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.
推定抵抗値R'mが正常範囲内にあると判定した場合(ステップST34のYES)、抵抗設定部37は、推定抵抗値R'mを用いて設定抵抗値Rmを更新する(ステップST35)。図12の例では、抵抗設定部37は、推定抵抗値R'mを算出する周期と同じ周期で、推定抵抗値R'mを用いて設定抵抗値Rmを更新する。但し、抵抗設定部37は、推定抵抗値R'mを算出する周期とは異なる周期で設定抵抗値Rmを更新してもよい。例えば、推定抵抗値R'mを算出する周期より短い周期で設定抵抗値Rmを更新してもよい。
When it is determined that the estimated resistance value R'm is within the normal range (YES in step ST34), the resistance setting unit 37 updates the set resistance value Rm using the estimated resistance value R'm (step ST35). In the example of FIG. 12, the resistance setting unit 37 updates the set resistance value Rm using the estimated resistance value R'm in the same cycle as the cycle of calculating the estimated resistance value R'm. However, the resistance setting unit 37 may update the set resistance value Rm at a cycle different from the cycle at which the estimated resistance value R'm is calculated. For example, the set resistance value Rm may be updated in a cycle shorter than the cycle of calculating the estimated resistance value R'm.
具体的には、抵抗設定部37は、例えば、以下の式(5)で導き出される抵抗値R"mで設定抵抗値Rmを更新してもよい。
Specifically, 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は1.0以下の正の実数定数を表す。すなわち、Kmの値が1.0に近いほど、設定抵抗値Rmは推定抵抗値R'mに近い抵抗値R"mで更新される。典型的には、Kmは1.0未満である。設定抵抗値Rmの急変、振動等を防止するためである。Kmは、不揮発性記憶媒体に予め登録されている固定値又は可変値であってもよく、動的に算出され且つ設定される値であってもよい。例えば、インチング操作(比較的短い押圧操作)が行われたときのKmは、通常操作(比較的長い押圧操作)が行われたときのKmよりも大きくなるように設定されてもよい。インチング操作が行われたときは、通常操作が行われたときに比べ、設定抵抗値Rmを更新する処理を繰り返し実行するために利用できる時間が短いためである。
Km represents a positive real number 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 the 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 a sudden change in the set resistance value Rm, vibration, etc. Km may be a fixed value or a variable value registered in advance in the non-volatile storage medium, and is a value that is dynamically calculated and set. For example, Km when inching operation (relatively short pressing operation) is set to be larger than Km when normal operation (relatively long pressing operation) is performed. This is because the time available for repeatedly executing the process of updating the set resistance value Rm is shorter when the inching operation is performed than when the normal operation is performed.
また、式(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に近づくためである。
Further, as is clear from the equation (5), 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 the 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.. The set resistance value Rm is gradually approached to the estimated resistance value R'm while preventing a sudden change in the set resistance value Rm. For example, when the estimated resistance value R'm repeatedly derived by using the equation (4) hardly changes, the resistance setting unit 37 gradually changes the set resistance value Rm to the estimated resistance value R'm. In particular, when the set resistance value Rm is updated in a cycle shorter than the cycle for calculating the estimated resistance value R'm, the resistance setting unit 37 does not calculate the new estimated resistance value R'm. In addition, the set resistance value Rm can be gradually brought close to the estimated resistance value R'm, because the resistance value R"m approaches the estimated resistance value R'm every time it is derived.
電動機10が回転安定状態にないと判定した場合(ステップST31のNO)、或いは、推定抵抗値R'mが正常範囲内にないと判定した場合(ステップST34のNO)、抵抗設定部37は、設定抵抗値Rmを更新することなく、今回の更新処理を終了する。この場合、回転角速度算出部31は、現在の設定抵抗値Rmを用い、式(1)に基づいて回転角速度ωを算出する。
When it is determined that the electric motor 10 is not in the stable rotation state (NO in step ST31) or when the estimated resistance value R'm is not within the normal range (NO in step ST34), the resistance setting unit 37 is This update process is terminated without updating the set resistance value Rm. In this case, the rotation angular velocity calculation unit 31 calculates the rotation angular velocity ω based on the equation (1) using the current set resistance value Rm.
このように、抵抗設定部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の回転に関する情報をより高い信頼性で取得できる。例えば、窓ガラス2の昇降に使用される電動機10に関し、窓ガラス2を昇降させるためのインチング操作が行われた場合における電動機10の惰性回転期間であっても、電動機10の回転に関する情報をより高い信頼性で取得できる。
In this way, 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 stable rotation state. Then, the estimated resistance value R'm is 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 according to the change in the resistance characteristic of the electric motor 10 caused by the temperature change, the secular change, or the like of the electric motor 10. The secular change includes, for example, wear of the commutator piece 20a, wear of the brush, and the like. As a result, in the rotation angle detector 100, for example, the current Im and its ripple component Ir become small during the inertial rotation period after the power supply of the electric motor 10 is turned off, and the first signal generation unit 34 makes the first component based on the waveform of the ripple component Ir. Even when the 1-pulse signal Pa cannot be generated, the information regarding the rotation of the electric motor 10 can be acquired with higher reliability. Specifically, the second pulse signal Pb is more accurately generated based on the rotation angular velocity ω and the rotation angle θ which are calculated in real time by using an appropriate set resistance value Rm regardless of the first pulse signal Pa. As a result, information about the rotation of the electric motor 10 can be acquired with higher reliability. For example, regarding the electric motor 10 used for raising and lowering the window glass 2, even if the inertial rotation period of the electric motor 10 when the inching operation for raising and lowering the window glass 2 is performed, the information regarding the rotation of the electric motor 10 is more useful. It can be obtained with high reliability.
上述の通り、整流子20を備えた電動機10の回転情報を取得する回転角度検出器100は、電動機10の抵抗特性に対応する抵抗値を設定する抵抗設定部37と、電圧検出部10aが検出した検出電圧値と電流検出部10bが検出した検出電流値と抵抗設定部37が設定した設定抵抗値Rmとに基づいて電動機10の回転に関する情報を算出する回転情報算出部36とを含む。そして、抵抗設定部37は、電動機10の回転が安定している回転安定状態で検出された検出電圧値と検出電流値とに基づいて推定抵抗値R'mをリアルタイムで導き出し、その推定抵抗値R'mを用いて設定抵抗値Rmをリアルタイムで更新するように構成されている。そのため、ホールセンサ等の回転センサが無くても、電動機10の回転情報を高い信頼性で取得できる。これは、センサインタフェース回路、ハーネス等の回転センサを利用するために必要な部品を省略できることを意味する。そのため、軽量化、低コスト化、小型化等を実現できる。
As described above, the rotation angle detector 100 that acquires the rotation information of the electric motor 10 including the commutator 20 detects the rotation angle detector 100 that sets the resistance value corresponding to the resistance characteristic of the electric motor 10 and the voltage detection unit 10a. The rotation information calculation unit 36 that calculates information about the rotation of the electric motor 10 based on the detected voltage value, the detected 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 stable rotation state where the rotation of the electric motor 10 is stable, and the estimated resistance value is calculated. R'm is used to update the set resistance value Rm in real time. Therefore, even if there is no rotation sensor such as a hall sensor, the rotation information of the electric motor 10 can be acquired with high reliability. This means that the parts necessary for using the rotation sensor such as the sensor interface circuit and the harness can be omitted. Therefore, weight reduction, cost reduction, size reduction, and the like can be realized.
抵抗設定部37は、例えば、推定抵抗値R'mが所定範囲内である場合にその推定抵抗値R'mを用いて設定抵抗値Rmを更新し、推定抵抗値R'mが所定範囲外である場合には設定抵抗値Rmを更新しないように構成されている。そのため、異常な推定抵抗値R'mによって設定抵抗値Rmが更新されてしまうのを防止できる。
For example, when the estimated resistance value R'm is within a predetermined range, 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. If it is, the set resistance value Rm is not updated. Therefore, it is possible to prevent the set resistance value Rm from being updated by the abnormal estimated resistance value R'm.
回転安定状態は、例えば、所定期間における端子間電圧Vの変動幅が所定値未満で、且つ、その所定期間における電流Imの変動幅が所定値未満で、且つ、その所定期間における第1パルス信号Paの周期の変動幅が所定値未満の状態である。回転安定状態は、端子間電圧V、電流Im、及び、第1パルス信号Paの周期の少なくとも1つを用いて定められる他の状態であってもよい。例えば、所定期間における端子間電圧Vの標準偏差が所定値未満で、且つ、その所定期間における電流Imの標準偏差が所定値未満で、且つ、その所定期間における第1パルス信号Paの周期の標準偏差が所定値未満の状態であってもよい。或いは、所定期間における端子間電圧Vの積算値が所定範囲内で、且つ、その所定期間における電流Imの積算値が所定範囲内の状態であってもよい。この構成により、抵抗設定部37は、推定抵抗値R'mを適切に導き出すことができる。
In the stable rotation state, for example, the fluctuation range of the inter-terminal voltage V in the predetermined period is less than the predetermined value, the fluctuation range of the current Im in the predetermined period is less than the predetermined value, and the first pulse signal in the predetermined period is set. The fluctuation range of the cycle of Pa is less than the predetermined value. The stable rotation state may be another state determined by using at least one of the voltage V between terminals, the current Im, and the cycle of the first pulse signal Pa. For example, the standard deviation of the voltage V between the terminals in the predetermined period is less than the predetermined value, the standard deviation of the current Im in the predetermined period is less than the predetermined value, and the standard of the cycle of the first pulse signal Pa in the predetermined period. The deviation may be less than the predetermined value. Alternatively, the integrated value of the inter-terminal voltage V during the predetermined period may be within a predetermined range, and the integrated value of the current Im during the predetermined period may be within a predetermined range. With this configuration, the resistance setting unit 37 can appropriately derive the estimated resistance value R'm.
また、抵抗設定部37は、望ましくは、更新後の設定抵抗値Rmと推定抵抗値R'mとの差が、更新前の設定抵抗値Rmと推定抵抗値R'mとの差より小さくなるように設定抵抗値Rmを更新ように構成されている。設定抵抗値Rmの急変を防止しながら、設定抵抗値Rmを推定抵抗値R'mに徐々に近づけるようにするためである。
Further, the resistance setting unit 37 desirably has a difference between the updated resistance value Rm and the estimated resistance value R'm smaller than the difference between the pre-updated resistance value Rm and the estimated resistance value R'm. Thus, the set resistance value Rm is configured to be updated. This is to prevent the set resistance value Rm from changing suddenly and to gradually bring the set resistance value Rm closer to the estimated resistance value R'm.
また、回転角度検出器100は、電流Imのリップル成分Irに基づいて生成される第1パルス信号Paと、端子間電圧V及び電流Imに基づいて算出される回転角度θとを用いて第2パルス信号Pbを生成する。すなわち、別々の方法で導き出される2つのパラメータである第1パルス信号Paと回転角度θとを用いて第2パルス信号Pbを生成する。そのため、一方のパラメータが適切に導出されなかった場合であっても他方のパラメータでその不具合を補うことができる。その結果、電動機10の回転情報をより高い信頼性で取得できる。
Further, the rotation angle detector 100 uses the first pulse signal Pa generated based on the ripple component Ir of the current Im and the rotation angle θ calculated based on the inter-terminal voltage V and the current Im to perform the second rotation. The pulse signal Pb is generated. That is, the second pulse signal Pb is generated using the first pulse signal Pa and the rotation angle θ that are two parameters derived by different methods. Therefore, even if one of the parameters is not properly derived, 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.
回転角度算出部32は、例えば、端子間電圧Vと電流Imとに基づいて算出される電動機10の回転角速度ωを積算して回転角度θを算出するように構成される。そのため、回転角度算出部32は、電動機10の起動直後の期間、惰性回転期間等を含めた全期間に亘って回転角度θを安定的且つ継続的に算出できる。そして、第2信号生成部35は、例えば、回転角度θが所定角度に達したときに、第2パルス信号Pbを即時に生成するように構成される。そのため、第2信号生成部35は、第1パルス信号Paの生成漏れが発生した場合であっても、安定的且つ継続的に算出される回転角度θに基づき、所定角度だけ回転したことを表す第2パルス信号Pbをリアルタイムに生成できる。そのため、回転角度検出器100は、電動機10の回転情報を遅滞なく算出できる。
The rotation angle calculation unit 32 is configured to integrate the rotation angular velocity ω of the electric motor 10 calculated based on the inter-terminal voltage V and the current Im, for example, to calculate the rotation angle θ. 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 inertial rotation period. Then, the second signal generation unit 35 is configured to immediately generate the second pulse signal Pb when the rotation angle θ reaches a predetermined angle, for example. Therefore, the second signal generation unit 35 indicates that the second signal generation unit 35 has rotated by the predetermined angle based on the rotation angle θ that is stably and continuously calculated even when the generation leakage 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.
第2信号生成部35は、例えば、回転角度θが所定角度に達したときに、回転角度θをゼロにリセットする指令を回転角度算出部32に出力するように構成される。そのため、回転角度検出器100は、回転角度算出部32が算出する回転角度θの最大値が所定角度に制限されるので、回転角度θの記憶に必要なメモリのサイズを小さくできる。
The second signal generation unit 35 is configured to output a command to reset the rotation angle θ to zero to the rotation angle calculation unit 32 when the rotation angle θ reaches a predetermined angle, for example. Therefore, in the rotation angle detector 100, the maximum value of the rotation angle θ calculated by the rotation angle calculation unit 32 is limited to a predetermined angle, so that the memory size required for storing the rotation angle θ can be reduced.
所定角度は、例えば、整流子片20aの円弧の中心角、すなわちスリット間角度θcである。そのため、回転角度検出器100は、回転角度算出部32が算出する回転角度θの累積誤差の最大値をスリット間角度θcとすることができる。
The predetermined angle is, for example, the central angle of the arc of the commutator piece 20a, that is, the inter-slit angle θc. Therefore, the rotation angle detector 100 can set the maximum value of the cumulative error of the rotation angle θ calculated by the rotation angle calculation unit 32 as the inter-slit angle θc.
受付範囲は、例えば、電動機10がスリット間角度θcだけ回転する毎に生じる回転角度θの最大誤差の範囲である。すなわち、回転角速度算出部31が、実際よりも、回転角速度ωを大きく算出した場合に、実際の回転角度に基づく第1パルス信号Paが生成される(誤差を含んだ)回転角度θの最大値が第2閾値θdである。また、回転角速度算出部31が、実際よりも、回転角速度ωを小さく算出した場合に、実際の回転角度に基づく第1パルス信号Paが生成される(誤差を含んだ)回転角度θの最小値が第1閾値θuである。そのため、回転角度検出器100では、回転角度算出部32が算出する回転角度θの誤差が累積されない。つまり、電動機10が何回転しても、誤差を−αから+βの範囲とすることができる。
The acceptance range is, for example, the maximum error range of the rotation angle θ that occurs each time the electric motor 10 rotates by the inter-slit angle θc. That is, when the rotational angular velocity calculation unit 31 calculates the rotational angular velocity ω larger than it actually is, the first pulse signal Pa based on the actual rotational angle is generated (the maximum value of the rotational angle θ (including an error)). Is the second threshold θd. When the rotation angular velocity calculation unit 31 calculates the rotation angular velocity ω smaller than the actual rotation angle, the first pulse signal Pa based on the actual rotation angle is generated (the minimum value of the rotation angle θ (including an error)). Is the first threshold θ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 revolutions the electric motor 10 makes, the error can be in the range of -α to +β.
第2信号生成部35は、例えば、第1パルス信号Paを受けたときに、回転角度θが第1閾値θu以上であれば、第2パルス信号Pbを生成するように構成される。第1閾値θuは、例えば、所定角度(スリット間角度θc)より小さい値として予め設定されている。この構成により、第2信号生成部35は、回転角度θが、第1閾値θu以上のときに生成された第1パルス信号Paをノイズに基づくものではないと見なす。そして、第1パルス信号Paが生成されなくても、回転角度θが所定角度(スリット間角度θc)に達したら、第2パルス信号Pbを生成する。そのため、第1パルス信号Paの生成漏れによる回転情報の算出結果への影響を確実に排除できる。
The second signal generation unit 35 is configured to generate the second pulse signal Pb when the rotation angle θ is equal to or larger than the first threshold value θu when receiving the first pulse signal Pa, for example. The first threshold value θu is set in advance as a value smaller than a predetermined angle (angle between slits θc), for example. With this configuration, the second signal generation unit 35 regards the first pulse signal Pa generated when the rotation angle θ is equal to or larger than the first threshold value θu as not based on noise. Then, 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, the influence on the calculation result of the rotation information due to the omission of the generation of the first pulse signal Pa can be reliably eliminated.
また、第2信号生成部35は、例えば、第1パルス信号Paを受けたときに、回転角度θが第1閾値θu未満であれば、第2パルス信号Pbを生成しないように構成される。この構成により、第2信号生成部35は、回転角度θが第1閾値θu未満のときに生成された第1パルス信号Paをノイズに基づくものであると判定できる。そして、ノイズに基づいて生成された第1パルス信号Paに対応する第2パルス信号Pbが生成されてしまうのを防止できる。そのため、ノイズに基づいて生成された第1パルス信号Paによる回転情報の算出結果への影響を確実に排除できる。
The second signal generation unit 35 is configured not to generate the second pulse signal Pb if the rotation angle θ is less than the first threshold θu when receiving the first pulse signal Pa, for example. With this configuration, 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 value θu is based on noise. Then, it is possible to prevent the second pulse signal Pb corresponding to the first pulse signal Pa generated based on noise from being generated. Therefore, the influence of the first pulse signal Pa generated based on noise on the calculation result of the rotation information can be reliably eliminated.
また、第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の生成タイミングのずれによる回転情報の算出結果への影響を確実に排除できる。
In addition, for example, when the second signal generation unit 35 receives the first pulse signal Pa and the rotation angle θ is smaller than the second threshold value θd, the rotation angle calculation unit 32 issues a command to reset the rotation angle θ to zero. Configured to output to. The second threshold value θd is set in advance, for example, as a value in which the phase is delayed by β from a predetermined angle (angle between slits θc). With this configuration, when the second signal generation unit 35 receives the first pulse signal Pa immediately after generating the second pulse signal Pb prior to occurrence of generation failure of the first pulse signal Pa, the first pulse signal Pa is generated. Consider Pa not based on noise. Then, the first pulse signal Pa can be associated with the second pulse signal Pb generated immediately before. Therefore, it is possible to reliably eliminate the influence of the deviation of the generation timing of the first pulse signal Pa on the calculation result of the rotation information.
以上、本発明の好ましい実施例について詳説した。しかしながら、本発明は、上述した実施例に制限されることはない。本発明の範囲を逸脱することなしに上述した実施例に種々の変形及び置換を加えることができる。
The preferred embodiments of the present invention have been described above in detail. However, the invention is not limited to the embodiments described above. Various modifications and substitutions can be made to the above-described embodiments without departing from the scope of the present invention.
例えば、開閉体制御装置は、車両のサンルーフ、ドアミラー、スライドドア等の窓ガラス2以外の開閉体を電動機で動作させる装置であってもよい。
For example, the opening/closing body control device may be a device that operates an opening/closing body other than the window glass 2 such as a sunroof, a door mirror, and a sliding door of a vehicle by an electric motor.
本願は、2017年5月10日に出願した日本国特許出願2017−093675号に基づく優先権を主張するものであり、これらの日本国特許出願の全内容を本願に参照により援用する。
This application claims priority based on Japanese Patent Application No. 2017-093675 filed on May 10, 2017, and the entire contents of these Japanese patent applications are incorporated herein by reference.