JP2007037335A - Motor controller - Google Patents
Motor controller Download PDFInfo
- Publication number
- JP2007037335A JP2007037335A JP2005218933A JP2005218933A JP2007037335A JP 2007037335 A JP2007037335 A JP 2007037335A JP 2005218933 A JP2005218933 A JP 2005218933A JP 2005218933 A JP2005218933 A JP 2005218933A JP 2007037335 A JP2007037335 A JP 2007037335A
- Authority
- JP
- Japan
- Prior art keywords
- value
- counter
- motor
- correction
- electrical angle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、所定の回転角範囲内での回転駆動が行われるブラシレスモータの制御装置に係り、詳しくは同モータの回転角検出に用いられる位置カウンタのカウンタ値の補正に関するものである。 The present invention relates to a brushless motor control apparatus that is driven to rotate within a predetermined rotation angle range, and more particularly to correction of a counter value of a position counter used for detecting the rotation angle of the motor.
従来より、特許文献1に示されるブラシレスモータ等のモータをモータ制御装置により所定の回転角範囲内で回転駆動し、それによって各種機構を駆動することが行われている。この場合、各種機構を精密に駆動するには、モータの回転角を正確に検出し、その回転角を各種機構の目標とする駆動状態に対応した回転角とすることが重要になる。
2. Description of the Related Art Conventionally, a motor such as a brushless motor disclosed in
ここで、モータの回転角を検出する方法としては、特許文献2に示される方法、すなわちモータの回転に伴いパルス信号を出力する位置センサとしてエンコーダを設け、そのエンコーダからのパルス信号を計数するという方法を採用することが考えられる。この方法によれば、上記パルス信号を計数した値がモータの回転角に対応した値になり、上記パルス信号の計数値に基づきモータの回転角を検出することができるようになる。
ところで、上記エンコーダからのパルス信号のエッジを計数して得られる計数値は、常にモータの実際の回転角に対応しているとは限らず、その実際の回転角に対応した値からずれることがある。例えば、エンコーダから出力される信号にノイズが発生すると、そのノイズのエッジとエンコーダからのパルス信号のエッジとを見分けることができず、ノイズのエッジをパルス信号のエッジと誤認し、パルス信号のエッジを計数して得られる計数値がモータの実際の回転角に対応した値からずれる。この場合、計数値に基づき検出されるモータの回転角が不正確になり、その回転角等に基づきモータを駆動し、各種機器を目標とする駆動状態に制御しようとしても、それを正しく行えなくなるという不具合が生じる。 By the way, the count value obtained by counting the edges of the pulse signal from the encoder does not always correspond to the actual rotation angle of the motor, and may deviate from the value corresponding to the actual rotation angle. is there. For example, if noise occurs in the signal output from the encoder, the edge of the noise cannot be distinguished from the edge of the pulse signal from the encoder, and the edge of the noise is mistaken for the edge of the pulse signal. The count value obtained by counting is deviated from the value corresponding to the actual rotation angle of the motor. In this case, the rotation angle of the motor detected based on the count value becomes inaccurate, and even if the motor is driven based on the rotation angle or the like to control various devices to the target driving state, it cannot be performed correctly. The problem that occurs.
こうした不具合を抑制するには、上記計数値における実際のモータの回転角に対するずれ量を求め、そのずれ量に対応する分の補正を当該計数値に加えて、その計数値を実際のモータ回転角に対応する値へと戻すことが必要になる。このため、モータの回転角を検出するリニアセンサ等を別途設け、同センサによって検出されるモータの回転角が上記計数値に基づき検出されるモータの回転角と対応していないとき、両者の差に基づいて計数値の補正に用いられる補正値を算出し、その補正値の分だけ計数値を補正することが考えられる。この場合、計数値における実際のモータ回転角に対応する値からのずれを無くすことはできるものの、そのためにリニアセンサ等を別途設けなければならず、リニアセンサ等の設置に手間がかかるとともに、同センサの設置に関係してモータの設置位置が制約を受けるという新たな問題が生じる。 In order to suppress such problems, a deviation amount with respect to the actual motor rotation angle in the count value is obtained, a correction corresponding to the deviation amount is added to the count value, and the count value is converted into the actual motor rotation angle. It is necessary to return to the value corresponding to. For this reason, when a linear sensor or the like for detecting the rotation angle of the motor is separately provided and the rotation angle of the motor detected by the sensor does not correspond to the rotation angle of the motor detected based on the count value, the difference between the two is detected. It is conceivable that a correction value used for correction of the count value is calculated based on the above and the count value is corrected by the correction value. In this case, the deviation from the value corresponding to the actual motor rotation angle in the count value can be eliminated, but for that purpose, a linear sensor or the like must be provided separately, and it takes time to install the linear sensor or the like. A new problem arises that the installation position of the motor is restricted in relation to the installation of the sensor.
本発明はこのような実情に鑑みてなされたものであって、その目的は、位置センサからのパルス信号を係数する位置カウンタのカウンタ値がモータの実際の回転角に対応する値からずれたとしても、そのずれを新たなセンサ等を設けることなく無くすことのできるモータ制御装置を提供することにある。 The present invention has been made in view of such a situation, and its purpose is that the counter value of the position counter that coefficients the pulse signal from the position sensor deviates from the value corresponding to the actual rotation angle of the motor. It is another object of the present invention to provide a motor control device that can eliminate the deviation without providing a new sensor or the like.
以下、上記目的を達成するための手段及びその作用効果について記載する。
上記目的を達成するため、請求項1記載の発明では、所定の回転角範囲内での回転駆動が行われるブラシレスモータと、このブラシレスモータの回転に伴い同モータに設けられた複数の電気角センサから位相をずらして出力されるパルス信号の出力パターンに応じて電気角カウンタのカウンタ値を変化させ、その電気角カウンタのカウンタ値に基づき前記ブラシレスモータの通電相を切り換えることで同モータを駆動する駆動装置と、前記ブラシレスモータの回転に伴い各電気角センサから出力されるパルス信号のエッジ間隔よりも短いエッジ間隔のパルス信号を出力する位置センサとを備え、その位置センサからのパルス信号のエッジを計数する位置カウンタのカウンタ値に基づき、前記ブラシレスモータの回転角を検出するモータ制御装置において、各電気角センサから出力されるパルス信号のエッジ発生毎に、今回のエッジ発生時における位置カウンタのカウンタ値Pi と前回のエッジ発生時における位置カウンタのカウンタ値Pi-1 との差(Pi −Pi-1 )を算出する算出手段と、前記電気角カウンタのカウンタ値の変化に基づき前記ブラシレスモータの回転状態が正回転中、逆回転中、及び正逆回転反転中のうちのいずれであるかを判断し、そのブラシレスモータの回転状態に応じて前記差(Pi −Pi-1 )の正常時の値である正常値を可変設定する設定手段と、前記正常値に対する前記差(Pi −Pi-1 )のずれ量を第1の補正値とし、当該第1の補正値分の補正を前記位置カウンタのカウンタ値に加える第1の補正手段と、前記各電気角センサから出力されるパルス信号のエッジ発生時、前記電気角カウンタのカウンタ値が通常あり得ない変化を示したとき、前記第1の補正手段による補正を無効にするための第2の補正値を設定し、当該第2の補正値分の補正を前記位置カウンタのカウンタ値に加える第2の補正手段とを備えた。
In the following, means for achieving the above object and its effects are described.
In order to achieve the above object, according to the first aspect of the present invention, a brushless motor that is rotationally driven within a predetermined rotational angle range and a plurality of electrical angle sensors provided in the motor as the brushless motor rotates. The motor is driven by changing the counter value of the electrical angle counter according to the output pattern of the pulse signal output with the phase shifted from, and switching the energized phase of the brushless motor based on the counter value of the electrical angle counter A driving device; and a position sensor that outputs a pulse signal having an edge interval shorter than an edge interval of a pulse signal output from each electrical angle sensor as the brushless motor rotates, and an edge of the pulse signal from the position sensor A motor control device for detecting the rotation angle of the brushless motor based on the counter value of the position counter At each occurrence of an edge of the pulse signal output from each electrical angle sensor, the difference (Pi) between the counter value Pi of the position counter at the time of the current edge generation and the counter value Pi-1 of the position counter at the time of the previous edge generation. -Pi-1), and the rotational state of the brushless motor based on a change in the counter value of the electrical angle counter is any of normal rotation, reverse rotation, and normal / reverse rotation inversion And setting means for variably setting a normal value which is a normal value of the difference (Pi−Pi−1) according to the rotation state of the brushless motor, and the difference (Pi−Pi) with respect to the normal value. -1) as a first correction value, a first correction means for adding a correction for the first correction value to the counter value of the position counter, and a pulse signal output from each electrical angle sensor No When the counter value of the electrical angle counter shows a change that cannot normally occur at the time of occurrence of a shift, a second correction value for invalidating the correction by the first correction means is set, and the second correction Second correction means for adding a correction for the value to the counter value of the position counter.
ブラシレスモータの回転時には、同モータの駆動に用いられる電気角センサからパルス信号が互いに位相をずらした状態で出力される。従って、各電気角センサからのパルス信号のエッジを計数すれば、その計数値に基づきブラシレスモータの回転角を大まかに検出することはできる。しかし、ブラシレスモータの回転角の検出に高精度が要求されるような場合には、上記のような大まかな回転角検出では検出精度が足りなくなる。このため、ブラシレスモータの回転に伴い各電気角センサから出力されるパルス信号のエッジ間隔よりも短いエッジ間隔でパルス信号を出力する位置センサが設けられ、その位置センサからのパルス信号のエッジを計数する位置カウンタのカウンタ値に基づき、ブラシレスモータの回転角を検出することが行われている。これにより、ブラシレスモータの回転角の検出を高精度で行うことが可能になる。 When the brushless motor rotates, pulse signals are output from the electrical angle sensor used to drive the motor with the phases shifted from each other. Therefore, if the edge of the pulse signal from each electric angle sensor is counted, the rotation angle of the brushless motor can be roughly detected based on the counted value. However, when high accuracy is required for detection of the rotation angle of the brushless motor, the detection accuracy is insufficient for the rough rotation angle detection as described above. For this reason, a position sensor that outputs a pulse signal at an edge interval shorter than the edge interval of the pulse signal output from each electrical angle sensor as the brushless motor rotates is provided, and the edge of the pulse signal from the position sensor is counted. The rotation angle of the brushless motor is detected based on the counter value of the position counter. As a result, the rotation angle of the brushless motor can be detected with high accuracy.
ところで、位置センサからの信号にノイズが発生し、そのノイズのエッジが位置センサからのパルス信号のエッジと誤認されて位置カウンタにより計数されるなど、位置カウンタのカウンタ値がブラシレスモータの実際の回転角に対応しなくなる状況が生じる可能性がある。この場合、位置カウンタのカウンタ値が、ブラシレスモータの実際の回転角に対応する値からずれた状態になる。上記構成によれば、各電気角センサから出力されるパルス信号の今回のエッジ発生時における位置カウンタのカウンタ値Pi と、前回のエッジ発生時における位置カウンタのカウンタ値Pi-1 との差(Pi −Pi-1 )に、上記位置カウンタのカウンタ値における上記ブラシレスモータの実際の回転角に対応する値からのずれが反映される。すなわち、そのずれの分だけ上記差(Pi −Pi-1 )が正常値からずれることになる。従って、正常値に対する上記差(Pi −Pi-1 )のずれ量を第1の補正値とし、当該第1の補正値分の補正を位置カウンタのカウンタ値に加えることで、そのカウンタ値におけるブラシレスモータの実際の回転角に対応する値からのずれを無くすことができる。また、第1の補正値を求めるための差(Pi −Pi-1 )を算出するのには、ブラシレスモータの駆動に用いられる電気角センサがあればよく、上記ずれを無くすために新たなセンサ等を設ける必要はない。なお、第1の補正値を求めるための上記正常値は、電気角カウンタのカウンタ値に基づきブラシレスモータの回転状態、すなわち正回転中、逆回転中、正逆回転反転中のいずれであるかに応じて可変設定されるものである。 By the way, noise is generated in the signal from the position sensor, the edge of the noise is mistakenly recognized as the edge of the pulse signal from the position sensor, and the position counter counts the actual value of the brushless motor. There may be situations where the corner no longer corresponds. In this case, the counter value of the position counter is shifted from a value corresponding to the actual rotation angle of the brushless motor. According to the above configuration, the difference (Pi) between the counter value Pi of the position counter when the current edge occurs in the pulse signal output from each electrical angle sensor and the counter value Pi-1 of the position counter when the previous edge occurs. -Pi-1) reflects the deviation of the counter value of the position counter from the value corresponding to the actual rotation angle of the brushless motor. That is, the difference (Pi-Pi-1) deviates from the normal value by the deviation. Accordingly, the deviation amount of the difference (Pi−Pi−1) from the normal value is set as the first correction value, and the correction corresponding to the first correction value is added to the counter value of the position counter, so that the brushless value in the counter value is increased. Deviation from the value corresponding to the actual rotation angle of the motor can be eliminated. Further, in order to calculate the difference (Pi-Pi-1) for obtaining the first correction value, it is sufficient if there is an electrical angle sensor used for driving the brushless motor, and a new sensor is used to eliminate the deviation. Etc. need not be provided. Note that the normal value for obtaining the first correction value is based on the counter value of the electrical angle counter, which is the rotation state of the brushless motor, that is, whether it is during normal rotation, reverse rotation, or normal / reverse rotation inversion. It is variably set accordingly.
また、電気角センサからの信号にノイズが発生する場合もある。この場合、当該ノイズを電気角センサからのパルス信号と誤認し、電気角カウンタのカウンタ値が誤った値に変化するおそれがある。そして、電気角カウンタのカウンタ値が誤った値に変化すると、そのカウンタ値に基づき判断されるモータ回転状態が実際の状態とは異なるものとなり、設定手段により設定される正常値が実際のモータ回転状態と対応しなくなる。このような状況下では、上述した正常値の異常に起因して、その正常値に対する差(Pi −Pi-1 )のずれ量である第1の補正値が誤った値となり、位置カウンタのカウンタ値に当該第1の補正値分の誤補正が加えられる。その結果、位置カウンタのカウンタ値がブラシレスモータの実際の回転角に対応する値からずれてしまい、そのカウンタ値に基づき検出されるブラシレスモータの回転角が不正確な値になる。 In addition, noise may occur in the signal from the electrical angle sensor. In this case, the noise may be mistaken as a pulse signal from the electrical angle sensor, and the counter value of the electrical angle counter may change to an incorrect value. When the counter value of the electrical angle counter changes to an incorrect value, the motor rotation state determined based on the counter value is different from the actual state, and the normal value set by the setting means is the actual motor rotation. It will not correspond to the state. Under such circumstances, the first correction value, which is the deviation amount of the difference (Pi−Pi−1) from the normal value, due to the above-described abnormality of the normal value becomes an incorrect value, and the counter of the position counter The erroneous correction corresponding to the first correction value is added to the value. As a result, the counter value of the position counter deviates from a value corresponding to the actual rotation angle of the brushless motor, and the rotation angle of the brushless motor detected based on the counter value becomes an incorrect value.
しかし、上記構成によれば、電気角センサからの信号にノイズが発生して電気角カウンタのカウンタ値が誤った値に変化する場合、第1の補正値による位置カウンタのカウンタ値の誤補正が無効にされる。これは、上記のように電気角カウンタのカウンタ値が誤った値に変化する場合、当該カウンタ値が通常あり得ない変化を示すようになり、そうした変化を示したときには第1の補正手段による補正を無効にするための第2の補正値が設定され、当該第2の補正値分の補正が位置カウンタのカウンタ値に加えられるためである。このように第1の補正値による位置カウンタのカウンタ値の誤補正が無効にされるため、そのカウンタ値がブラシレスモータの実際の回転角に対応する値からずれ、同カウンタ値に基づき検出されるブラシレスモータの回転角が不正確な値になるのを抑制することができる。 However, according to the above configuration, when noise occurs in the signal from the electrical angle sensor and the counter value of the electrical angle counter changes to an incorrect value, the counter value of the position counter is erroneously corrected by the first correction value. Disabled. This is because when the counter value of the electrical angle counter changes to an incorrect value as described above, the counter value shows a change that is not normally possible. When such a change is shown, the correction by the first correction means is performed. This is because a second correction value for invalidating is set, and correction for the second correction value is added to the counter value of the position counter. As described above, since the erroneous correction of the counter value of the position counter by the first correction value is invalidated, the counter value deviates from a value corresponding to the actual rotation angle of the brushless motor, and is detected based on the counter value. It is possible to suppress the rotation angle of the brushless motor from becoming an inaccurate value.
請求項2記載の発明では、請求項1記載の発明において、前記第2の補正手段は、前記位置カウンタのカウンタ値におけるブラシレスモータの実際の回転角に対応する値からのずれに影響を及ぼす第1の補正値の正負を反転させた値を、前記第2の補正値として設定するものとした。
According to a second aspect of the present invention, in the first aspect of the invention, the second correction means affects the deviation of the counter value of the position counter from the value corresponding to the actual rotation angle of the brushless motor. A value obtained by inverting the sign of the
上記構成によれば、第2の補正値が位置カウンタのカウンタ値におけるブラシレスモータの実際の回転角に対応する値からのずれに影響を及ぼす第1の補正値の正負を反転させた値となるため、その第2の補正値分の補正を位置カウンタのカウンタ値に加えることで、第1の補正手段による位置カウンタのカウンタ値の誤補正を的確に無効にすることができる。 According to the above configuration, the second correction value is a value obtained by inverting the sign of the first correction value that affects the deviation of the counter value of the position counter from the value corresponding to the actual rotation angle of the brushless motor. Therefore, by adding the correction for the second correction value to the counter value of the position counter, the erroneous correction of the counter value of the position counter by the first correction unit can be accurately invalidated.
請求項3記載の発明では、請求項1記載の発明において、前記設定手段は、前記各電気角センサから出力されるパルス信号のエッジ間において前記位置センサから出力されるパルス信号のエッジ数が「n」であるとすると、前記電気角センサからの前回のエッジ発生時と今回のエッジ発生時とで共に電気角カウンタのカウンタ値がモータ正回転方向への変化を示したことに基づき前記ブラシレスモータの正回転中である旨判断して前記正常値を「n」に設定し、前記電気角センサからの前回のエッジ発生時と今回のエッジ発生時とで共に電気角カウンタのカウンタ値がモータ逆回転方向への変化を示したことに基づき前記ブラシレスモータの逆回転中である旨判断して前記正常値を「−n」に設定し、前記電気角センサからの前回のエッジ発生時と今回のエッジ発生時との電気角カウンタのカウンタ値の変化がモータ正回転方向への変化とモータ逆回転方向への変化とで異なっていることに基づき前記ブラシレスモータの正逆回転反転中である旨判断して前記正常値を「0」に設定するものであり、前記第2の補正手段は、前記電気角カウンタのカウンタ値がモータ正回転方向についての通常あり得ない変化を示したとき前記第2の補正値を「n」に設定し、前記電気角カウンタのカウンタ値がモータ逆回転方向についての通常あり得ない変化を示したとき前記第2の補正値を「−n」に設定するものとした。 According to a third aspect of the present invention, in the first aspect of the present invention, the setting means is configured such that the number of edges of the pulse signal output from the position sensor is “between edges of the pulse signal output from the electric angle sensors”. n ”, the brushless motor is based on the fact that the counter value of the electrical angle counter indicates a change in the motor forward rotation direction both when the previous edge is generated from the electrical angle sensor and when the current edge is generated. The normal value is set to “n”, and the counter value of the electrical angle counter is the reverse of the motor both when the previous edge is generated from the electrical angle sensor and when the current edge is generated. Based on the indication of the change in the rotation direction, it is determined that the brushless motor is rotating in reverse, the normal value is set to “−n”, and the previous edge occurrence from the electrical angle sensor is set. The forward and reverse rotation of the brushless motor is being reversed based on the fact that the change in the counter value of the electrical angle counter differs between the change in the forward direction of the motor and the change in the reverse direction of the motor. The normal value is set to “0”, and the second correction means shows a change in which the counter value of the electrical angle counter is not normally possible in the motor forward rotation direction. When the second correction value is set to “n” and the counter value of the electric angle counter indicates a change that is not normally possible in the reverse rotation direction of the motor, the second correction value is set to “−n”. It was supposed to be set.
電気角センサからの信号にノイズが発生し、そのノイズが他の電気角センサからのパルス信号のエッジと重なると、当該ノイズの発生期間中に電気カウンタのカウンタ値が、モータ回転方向とは逆方向への変化、及び、モータ回転方向と同方向への通常あり得ない変化を示すようになる。 When noise occurs in the signal from the electrical angle sensor and the noise overlaps the edge of the pulse signal from another electrical angle sensor, the counter value of the electrical counter is reversed from the motor rotation direction during the noise generation period. Changes in the direction and changes that are normally impossible in the same direction as the motor rotation direction.
そして、例えばブラシレスモータの正回転中、上述したように電気角カウンタのカウンタ値がモータ回転方向とは逆方向への変化を示すと、設定手段により正常値が本来ならば「n」に設定されるべきところを「0」に設定されてしまう。その結果、正常値に対する差(Pi −Pi-1 )のずれ量が本来ならば「0」であるのに「−n」と誤認され、それに対応して第1の補正値が誤って「−n」とされた状態で位置カウンタのカウンタ値の補正に用いられる。このため、位置カウンタのカウンタ値が当該第1の補正値により誤補正される。しかし、電気角カウンタのカウンタ値がモータ回転方向と同方向(正回転方向)への通常あり得ない変化を示すと、第2の補正値が「n」とされて位置カウンタのカウンタ値の補正に用いられる。これにより、上記第1の補正値による位置カウンタのカウンタ値の誤補正を的確に無効にすることができる。 For example, if the counter value of the electrical angle counter changes in the direction opposite to the motor rotation direction as described above during normal rotation of the brushless motor, the normal value is originally set to “n” by the setting means. The place to be set is set to “0”. As a result, the deviation amount of the difference (Pi−Pi−1) from the normal value is “0” if it is originally “0”, and the first correction value is erroneously changed to “−” n ”is used to correct the counter value of the position counter. For this reason, the counter value of the position counter is erroneously corrected by the first correction value. However, if the counter value of the electrical angle counter shows a change that cannot normally occur in the same direction as the motor rotation direction (positive rotation direction), the second correction value is set to “n” and the counter value of the position counter is corrected. Used for. Thereby, the erroneous correction of the counter value of the position counter by the first correction value can be appropriately invalidated.
また、ブラシレスモータの逆回転中、上述したように電気角カウンタのカウンタ値がモータ回転方向とは逆方向への変化を示すと、設定手段により正常値が本来ならば「−n」に設定されるべきところを「0」に設定されてしまう。その結果、正常値に対する差(Pi −Pi-1 )のずれ量が本来ならば「0」であるのに「n」と誤認され、それに対応して第1の補正値が誤って「n」とされた状態で位置カウンタのカウンタ値の補正に用いられる。このため、位置カウンタのカウンタ値Pが当該第1の補正値により誤補正される。しかし、電気角カウンタのカウンタ値がモータ回転方向と同方向(逆回転方向)への通常あり得ない変化を示すと、第2の補正値が「−n」とされて位置カウンタのカウンタ値の補正に用いられる。これにより、第1の補正値による位置カウンタのカウンタ値の誤補正を的確に無効にすることができる。 If the counter value of the electrical angle counter changes in the direction opposite to the motor rotation direction as described above during reverse rotation of the brushless motor, the normal value is originally set to “−n” by the setting means. The place to be set is set to “0”. As a result, the deviation amount of the difference (Pi−Pi−1) from the normal value is “0” if it is originally “0”. Correspondingly, the first correction value is erroneously “n”. In this state, it is used for correcting the counter value of the position counter. For this reason, the counter value P of the position counter is erroneously corrected by the first correction value. However, if the counter value of the electrical angle counter shows a change that cannot normally occur in the same direction as the motor rotation direction (reverse rotation direction), the second correction value is set to “−n” and the counter value of the position counter Used for correction. Thereby, the erroneous correction of the counter value of the position counter by the first correction value can be accurately invalidated.
請求項4記載の発明では、請求項3記載の発明において、前記電気角カウンタは、前記ブラシレスモータの正回転時には各電気角センサからのパルス信号の出力パターンに応じて「0」〜「m」の範囲内の連続した各整数値を順方向にカウンタ値として当てはめ、前記ブラシレスモータの逆回転時には各電気角センサからのパルス信号の出力パターンに応じて「0」〜「m」の範囲内の連続した各整数値を逆方向にカウンタ値として当てはめるものであり、前記第2の補正手段は、前記電気角カウンタのカウンタ値が順方向に整数値を一つとばして変化したことに基づき当該カウンタ値がモータ正回転方向について通常あり得ない変化を示したと判断し、前記電気角カウンタのカウンタ値が逆方向に整数値を一つとばして変化したことに基づき当該カウンタ値がモータ逆回転方向について通常あり得ない変化を示したと判断するものとした。 According to a fourth aspect of the present invention, in the third aspect of the present invention, the electrical angle counter is “0” to “m” according to the output pattern of the pulse signal from each electrical angle sensor when the brushless motor is rotating forward. Each successive integer value in the range of? Is applied as a counter value in the forward direction, and during reverse rotation of the brushless motor, a range of "0" to "m" in accordance with the output pattern of the pulse signal from each electrical angle sensor Each successive integer value is applied as a counter value in the reverse direction, and the second correction unit is configured to change the counter value based on the fact that the counter value of the electrical angle counter is changed by skipping the integer value in the forward direction. Based on the fact that the counter value of the electrical angle counter changed by skipping an integer value in the reverse direction, it was determined that the value showed a change that would normally not be possible in the forward rotation direction of the motor. It was assumed that the counter value is determined to show changes improbable usually for motor reverse rotation direction.
この場合、ブラシレスモータの正回転中、電気角センサの信号でのノイズ発生に起因する電気角カウンタのカウンタ値の正回転方向への通常あり得ない変化は、当該カウンタ値が順方向(正回転方向)に整数値を一つとばして変化するという態様で示される。また、ブラシレスモータの逆回転中、電気角センサの信号でのノイズ発生に起因する電気角カウンタのカウンタ値の逆回転方向への通常あり得ない変化は、当該カウンタ値が逆方向(逆回転方向)に整数値を一つとばして変化するという態様で示される。 In this case, during the forward rotation of the brushless motor, the counter value of the electrical angle counter that is normally impossible in the forward rotation direction due to the occurrence of noise in the electrical angle sensor signal is the forward direction (forward rotation) The direction is changed by skipping an integer value by one. In addition, during the reverse rotation of the brushless motor, the counter value of the electrical angle counter, which is normally impossible in the reverse rotation direction due to the occurrence of noise in the electrical angle sensor signal, ) Is changed in such a manner that the integer value is changed by one.
上記構成によれば、電気角カウンタのカウンタ値が順方向に整数値を一つとばして変化したことに基づき、当該カウンタ値がモータ正回転方向について通常あり得ない変化を示したと判断され、第2の補正値が「−n」に設定される。また、電気角カウンタのカウンタ値が逆方向に整数値を一つとばして変化したことに基づき当該カウンタ値がモータ逆回転方向について通常あり得ない変化を示したと判断され、第2の補正値が「n」に設定される。以上により、第2の補正値を「−n」と「n」とのいずれかに設定するに際し、それを適切に行うことができるようになる。 According to the above configuration, based on the fact that the counter value of the electrical angle counter has changed by skipping an integer value in the forward direction, it is determined that the counter value has shown a change that is not normally possible in the motor forward rotation direction. The correction value of 2 is set to “−n”. Further, based on the fact that the counter value of the electrical angle counter has changed in the reverse direction by skipping an integer value, it is determined that the counter value has shown a change that is not normally possible in the motor reverse rotation direction, and the second correction value is Set to “n”. As described above, when the second correction value is set to either “−n” or “n”, it can be appropriately performed.
請求項5記載の発明では、請求項1〜4のいずれか一項に記載の発明において、前記ブラシレスモータは、内燃機関の機関バルブのバルブ特性を可変とするバルブリフト可変機構の駆動に用いられるものとした。 According to a fifth aspect of the invention, in the invention according to any one of the first to fourth aspects, the brushless motor is used for driving a variable valve lift mechanism that varies a valve characteristic of an engine valve of an internal combustion engine. It was supposed to be.
ブラシレスモータを内燃機関のバルブリフト可変機構の駆動に用いる場合、位置カウンタのカウンタ値に基づきブラシレスモータの回転角を検出し、その回転角が目標とするバルブ特性に対応した回転角となるようブラシレスモータが駆動される。これにより、機関バルブのバルブ特性が目標とするバルブ特性となるよう、バルブリフト可変機構が駆動制御されることとなる。しかし、電気角センサからの信号にノイズが発生することに起因して、位置カウンタのカウンタ値に対し第1の補正値分の誤補正がなされ、当該カウンタ値がブラシレスモータの実際の回転角に対応する値からずれる。その結果、位置カウンタのカウンタ値に基づき検出されるブラシレスモータの回転角が不正確になり、当該回転角に基づきブラシレスモータを駆動してバルブリフト可変機構を駆動制御しようとしても、それを正しく行えなくなって機関運転への悪影響に繋がる。上記構成によれば、第1の補正値分の位置カウンタのカウンタ値の後補正を無効にし、当該カウンタ値がブラシレスモータの実際の回転角に対応する値からずれるのを回避することができる。従って、位置カウンタのカウンタ値に基づき検出されるブラシレスモータの回転角に基づきブラシレスモータを駆動し、バルブリフト可変機構を駆動制御しようとするとき、それを正しく行えなくなって機関運転への悪影響に繋がるということはない。 When a brushless motor is used for driving a variable valve lift mechanism of an internal combustion engine, the rotation angle of the brushless motor is detected based on the counter value of the position counter, and the rotation angle corresponds to the target valve characteristic. The motor is driven. As a result, the variable valve lift mechanism is driven and controlled so that the valve characteristic of the engine valve becomes the target valve characteristic. However, due to the occurrence of noise in the signal from the electrical angle sensor, the counter value of the position counter is erroneously corrected by the first correction value, and the counter value becomes the actual rotation angle of the brushless motor. Deviation from the corresponding value. As a result, the rotation angle of the brushless motor detected based on the counter value of the position counter becomes inaccurate, and even if it tries to drive and control the variable valve lift mechanism by driving the brushless motor based on the rotation angle, it can be done correctly. It will be lost and will have a negative effect on engine operation. According to the above configuration, the post-correction of the counter value of the position counter for the first correction value can be invalidated, and the counter value can be prevented from deviating from the value corresponding to the actual rotation angle of the brushless motor. Therefore, when the brushless motor is driven based on the rotation angle of the brushless motor detected based on the counter value of the position counter and the valve lift variable mechanism is to be driven and controlled, this cannot be performed correctly, leading to an adverse effect on engine operation. That's not true.
以下、本発明を自動車用エンジンに適用した一実施形態を図1〜図19に従って説明する。
図1は、エンジン1における所定気筒のシリンダヘッド2周りの構造を示す拡大断面図である。このエンジン1においては、シリンダヘッド2、シリンダブロック3、及びピストン5によって燃焼室6が区画され、この燃焼室6には吸気通路7及び排気通路8が接続されている。そして、吸気通路7と燃焼室6との間は吸気バルブ9の開閉動作によって連通・遮断され、排気通路8と燃焼室6との間は排気バルブ10の開閉動作によって連通・遮断されるようになる。
Hereinafter, an embodiment in which the present invention is applied to an automobile engine will be described with reference to FIGS.
FIG. 1 is an enlarged sectional view showing a structure around a
シリンダヘッド2には、吸気バルブ9及び排気バルブ10を駆動するための吸気カムシャフト11及び排気カムシャフト12が設けられている。これら吸気カムシャフト11及び排気カムシャフト12は、エンジン1のクランクシャフトからの回転伝達によって回転するようになっている。また、吸気カムシャフト11及び排気カムシャフト12には、それぞれ吸気カム11a及び排気カム12aが設けられている。そして、これら吸気カム11a及び排気カム12aの吸気カムシャフト11及び排気カムシャフト12との一体回転を通じて、吸気バルブ9及び排気バルブ10が開閉動作するようになっている。
The
また、エンジン1には、吸気バルブ9及び排気バルブ10といった機関バルブのバルブ特性を可変とするバルブリフト可変機構として、吸気バルブ9の最大リフト量及び吸気カム11aの作用角を可変とするバルブリフト可変機構14が吸気カム11aと吸気バルブ9との間に設けられている。このバルブリフト可変機構14の駆動を通じて、例えば吸入空気量を多く必要とするエンジン運転状態になるほど、最大リフト量及び作用角が大となるよう制御される。これは最大リフト量及び作用角を大とするほど、吸気通路7から燃焼室6への空気の吸入が効率よく行われ、上述した吸入空気量に関する要求を満たすことが可能なためである。
Further, the
次に、バルブリフト可変機構14の詳細な構造について説明する。
バルブリフト可変機構14は、回転する吸気カム11aにより押されて上記吸気カムシャフト11と平行に延びるロッカシャフト15及びコントロールシャフト16の軸線を中心に揺動する入力アーム17と、この入力アーム17の揺動に基づき上記軸線を中心に揺動する出力アーム18とを備えている。入力アーム17については、ローラ19が回転可能に取り付けられるとともに、そのローラ19が吸気カム11aに押しつけられるようコイルスプリング20によって吸気カム11a側に付勢されている。また、出力アーム18は、その揺動時にロッカアーム21に押しつけられ、同ロッカアーム21を介して吸気バルブ9をリフトさせる。
Next, the detailed structure of the variable
The variable
このロッカアーム21の基端部はラッシュアジャスタ22によって支持され、同ロッカアーム21の先端部は吸気バルブ9に接触している。また、ロッカアーム21は吸気バルブ9のバルブスプリング24によって出力アーム18側に付勢され、これによりロッカアーム21の基端部と先端部との間に回転可能に支持されたローラ23が出力アーム18に押しつけられている。従って、吸気カム11aの回転に基づき入力アーム17及び出力アーム18が揺動すると、出力アーム18がロッカアーム21を介して吸気バルブ9をリフトさせ、吸気バルブ9の開閉動作が行われるようになる。
The base end portion of the rocker arm 21 is supported by a
バルブリフト可変機構14では、パイプ状のロッカシャフト15内に配置されたコントロールシャフト16を軸方向に変位させることで、入力アーム17と出力アーム18との揺動方向についての相対位置を変更することが可能となっている。このように、入力アーム17と出力アーム18との揺動方向についての相対位置を変更すると、上記吸気バルブ9の最大リフト量、及び吸気カム11aの吸気バルブ9に対する作用角が可変とされる。即ち、入力アーム17と出力アーム18とを揺動方向について互いに接近させるほど、吸気バルブ9の最大リフト量及び吸気カム11aの作用角は小となってゆく。逆に、入力アーム17と出力アーム18とを揺動方向について互いに離間させるほど、吸気バルブ9の最大リフト量及び吸気カム11aの作用角は大となってゆく。
In the variable
次に、バルブリフト可変機構14を駆動すべく上記コントロールシャフト16を軸方向に変位させるための駆動機構、及び、その駆動機構を駆動制御する制御装置について、図2を参照して説明する。
Next, a drive mechanism for displacing the
同図に示されるように、コントロールシャフト16の基端部(図中右端部)には、ブラシレスモータ47が変換機構48を介して連結されている。この変換機構48は、ブラシレスモータ47の回転運動をコントロールシャフト16の軸方向への直線運動に変換するためのものである。そして、上記ブラシレスモータ47の所定の回転角範囲内での回転駆動、例えば同モータ47の10回転分の回転角範囲(0〜3600°)内での回転駆動を通じて、コントロールシャフト16が軸方向に変位させられ、バルブリフト可変機構14が駆動されることとなる。
As shown in the figure, a
ちなみに、ブラシレスモータ47を正回転させると、コントロールシャフト16は先端(図中左端)側に変位し、入力アーム17と出力アーム18との揺動方向についての相対位置が互いに接近するように変更される。また、ブラシレスモータ47を逆回転させると、コントロールシャフト16は基端(図中右端)側に変位し、入力アーム17と出力アーム18との揺動方向についての相対位置が互いに離間するように変更される。こうしたブラシレスモータ47の回転駆動による入力アーム17及び出力アーム18の揺動方向についての相対位置の変更を通じて、吸気カム11aの回転により出力アーム18が揺動したときの吸気バルブ9の最大リフト量、及び吸気カム11aの作用角が可変とされる。
Incidentally, when the
ブラシレスモータ47には、三つの電気角センサS1〜S3、及び 二つの位置センサS4,S5が設けられている。
三つの電気角センサS1〜S3は、ブラシレスモータ47の回転時、同モータ47のロータと一体回転する4極の多極マグネットの磁気に応じて、図3(a)〜(c)に示されるようなパルス状の信号、すなわちハイ信号「H」とロー信号「L」とを交互に出力するものである。また、各電気角センサS1〜S3からのパルス信号は、互いに位相をずらした状態で出力されるようになっている。すなわち、こうしたパルス信号の波形が得られるよう、上記ロータに対する各電気角センサS1〜S3の周方向位置が定められている。なお、各電気角センサS1〜S3のうちの一つのセンサから出力されるパルス信号のエッジは、ブラシレスモータ47の45°回転毎に発生している。また、上記一つのセンサからのパルス信号は、他のセンサからのパルス信号に対し、ブラシレスモータ47の30°回転分だけ進み側及び遅れ側に位相をずらした状態となっている。
The
The three electrical angle sensors S1 to S3 are shown in FIGS. 3A to 3C according to the magnetism of the four-pole multipolar magnet that rotates integrally with the rotor of the
二つの位置センサS4,S5は、ブラシレスモータ47の回転時、同モータ47のロータと一体回転する48極の多極マグネットの磁気に応じて、図3(d)及び(e)に示されるようなパルス状の信号、すなわちハイ信号「H」とロー信号「L」とを交互に出力するものである。また、各位置センサS4,S5からのパルス信号は、互いに位相をずらした状態で出力されるようになっている。すなわち、こうしたパルス信号の波形が得られるよう、上記ロータに対する各位置センサS4,S5の周方向位置が定められている。なお、各位置センサS4,S5の内の一方のセンサから出力するパルス信号のエッジは、ブラシレスモータ47の7.5°回転毎に発生している。また、上記一方のセンサからのパルス信号は、他方のセンサからのパルス信号に対し、ブラシレスモータ47の3.75°回転分だけ位相をずらした状態となっている。
As shown in FIGS. 3D and 3E, the two position sensors S4 and S5 correspond to the magnetism of the 48-pole multipole magnet that rotates integrally with the rotor of the
従って、電気角センサS1〜S3からのパルス信号のエッジ間隔が15°であるのに対し、位置センサS4,S5からのパルス信号のエッジ間隔は3.75°と上記15°というエッジ間隔よりも短くなっている。更に、電気角センサS1〜S3からのパルス信号のエッジ発生から次回のエッジ発生までには、位置センサS4,S5からのパルス信号のエッジが4回発生するようになっている。 Therefore, while the edge interval of the pulse signals from the electrical angle sensors S1 to S3 is 15 °, the edge interval of the pulse signals from the position sensors S4 and S5 is 3.75 °, which is larger than the edge interval of 15 °. It is getting shorter. Further, the edge of the pulse signal from the position sensors S4 and S5 is generated four times from the generation of the edge of the pulse signal from the electrical angle sensors S1 to S3 to the next generation of the edge.
コントロールシャフト16を軸方向に変位させるべく回転駆動されるブラシレスモータ47の制御装置は、吸気バルブ9の最大リフト量及び吸気カム11aの作用角といった吸気バルブ9のバルブ特性の制御など、エンジン1の各種制御を行う電子制御装置50(図2)を備えている。この電子制御装置50は、上記各種制御にかかる演算処理を実行するCPU、その制御に必要なプログラムやデータの記憶されたROM、CPUの演算結果が一時的に記憶されるRAM、外部との間で信号を入・出力するための入・出力ポート等を備えて構成されている。
The control device of the
電子制御装置50の入力ポートには、上述した電気角センサS1〜S3及び位置センサS4,S5が接続されるほか、更に以下のセンサを含む各種センサが接続されている。
・自動車の運転者によって踏み込み操作されるアクセルペダルの踏み込み量(アクセル踏込量)を検出するアクセルポジションセンサ51。
In addition to the electrical angle sensors S1 to S3 and the position sensors S4 and S5 described above, various sensors including the following sensors are connected to the input port of the
An
・エンジン1の吸気通路7に設けられたスロットルバルブの開度(スロットル開度)を検出するスロットルポジションセンサ52。
・上記吸気通路7を通じて燃焼室6に吸入される空気の量を検出するエアフローメータ53。
A
An
・エンジン1の出力軸の回転に対応する信号を出力してエンジン回転速度の検出等に用いられるクランクポジションセンサ54。
・自動車の運転者により切り換え操作され、現在の切換位置に対応した信号を出力するイグニッションスイッチ55。
A crank
An
また、電子制御装置50の出力ポートには、ブラシレスモータ47の駆動回路等が接続されている。電子制御装置50は、上記各種センサから入力した検出信号に基づきエンジン運転状態を把握する。そして、その把握したエンジン運転状態に基づきブラシレスモータ47を駆動してコントロールシャフト16を軸方向に変位させることで、バルブリフト可変機構14が駆動されて吸気バルブ9のバルブ特性制御が行われる。なお、ブラシレスモータ47の駆動は、各電気角センサS1〜S3から出力される同モータ47の回転時のパルス信号の出力パターンに応じて、ブラシレスモータ47の通電相を切り換えることによって行われる。
The output port of the
吸気バルブ9のバルブ特性、すなわち吸気バルブ9の最大リフト量及び吸気カム11aの作用角は、コントロールシャフト16の軸方向位置、言い換えればブラシレスモータ47の上記所定回転角範囲内での回転角に対応したものとなる。従って、吸気バルブ9のバルブ特性を精密に制御するには、ブラシレスモータ47の回転角を正確に検出し、その回転角が目標とするバルブ特性に対応する回転角となるようブラシレスモータ47を駆動することが重要になる。
The valve characteristics of the intake valve 9, that is, the maximum lift amount of the intake valve 9 and the operating angle of the
以下、本実施形態におけるブラシレスモータ47の回転角の検出手順について、図3のタイミングチャート及び図4のフローチャートを併せ参照して説明する。
図3において、(a)〜(e)は、ブラシレスモータ47の回転時における同モータ47の回転角変化に対し、各センサS1〜S5からパルス信号がどのように出力されるかを示す波形図である。また、(f)〜(h)ではそれぞれ、ブラシレスモータ47の回転時における同モータ47の回転角の変化に対し、電気角カウンタE、位置カウンタP、及びストロークカウンタSのカウンタ値がどのように推移するかを示している。
Hereinafter, the detection procedure of the rotation angle of the
3A to 3E are waveform diagrams showing how pulse signals are output from the sensors S1 to S5 in response to the rotation angle change of the
なお、上記電気角カウンタEは、ブラシレスモータ47を駆動すべく同モータ47の通電相を切り換える際に用いられるものである。また、上記位置カウンタPは、エンジン1を運転開始する際のイグニッションスイッチ55のオン操作(イグニッションオン)後、コントロールシャフト16が軸方向にどれだけ変位したか、言い換えればブラシレスモータ47の回転角がどれだけ変化したかを表すものである。更に、上記ストロークカウンタSは、コントロールシャフト16の最も先端側に変位した状態を基準とする軸方向位置、言い換えればブラシレスモータ47の上記所定回転角範囲におけるコントロールシャフト16の上記変位状態に対応する端を基準とした同モータ47の回転角を表すものである。
The electrical angle counter E is used when the energized phase of the
図4は、上記電気角カウンタE、位置カウンタP、及びストロークカウンタSのカウンタ値を変化させるためのカウント処理ルーチンを示すフローチャートである。同ルーチンは、電子制御装置50を通じて、位置センサS4,S5からのパルス信号のエッジ間隔に対応する時間間隔よりも短い間隔をもって周期的に実行される。
FIG. 4 is a flowchart showing a count processing routine for changing the counter values of the electrical angle counter E, the position counter P, and the stroke counter S. The routine is periodically executed through the
同ルーチンにおいては、まず図3(a)〜(c)に示される各電気角センサS1〜S3からのパルス信号の出力パターンに基づき、図3(f)に示されるように電気角カウンタEのカウンタ値を変化させる(S101)。 In this routine, first, based on the output patterns of the pulse signals from the electric angle sensors S1 to S3 shown in FIGS. 3A to 3C, the electric angle counter E is set as shown in FIG. The counter value is changed (S101).
より詳しくは、図5(a)に示されるように、各電気角センサS1〜S3から各々ハイ信号「H」とロー信号「L」とのいずれが出力されているかに応じて、電気角カウンタEのカウンタ値が「0」〜「5」の範囲内の連続した整数値のうちのいずれかが当てはめられる。その結果、ブラシレスモータ47の正回転時(図3中右向き)には、電気角センサS1〜S3からのパルス信号の出力パターンに応じて、「0」〜「m(この実施形態では5)」の範囲内の連続した各整数値が「0」→「1」→「2」→「3」→「4」→「5」→「0」といった順序で順方向に電気角カウンタEのカウンタ値として当てはめられる。また、ブラシレスモータ47の逆回転時(図3中左向き)には、電気角センサS1〜S3からのパルス信号の出力パターンに応じて、「0」〜「m(5)」の範囲内の連続した各整数値が「5」→「4」→「3」→「2」→「1」→「0」→「5」といった順序で逆方向に電気角カウンタEのカウンタ値として当てはめられる。なお、何らかの原因により、各電気角センサS1〜S3全てがハイ信号「H」を出力する場合、或いは、各電気角センサS1〜S3全てがロー信号「L」を出力する場合もあるが、これらの場合には異常状態である旨判断され、電気角カウンタEのカウンタ値がそのまま保持されることとなる。
More specifically, as shown in FIG. 5 (a), an electrical angle counter is selected depending on whether a high signal “H” or a low signal “L” is output from each of the electrical angle sensors S1 to S3. One of consecutive integer values in the range where the counter value of E is in the range of “0” to “5” is applied. As a result, during the forward rotation of the brushless motor 47 (rightward in FIG. 3), “0” to “m (5 in this embodiment)” according to the output pattern of the pulse signals from the electrical angle sensors S1 to S3. Each successive integer value within the range of “0” → “1” → “2” → “3” → “4” → “5” → “0” in the forward direction is the counter value of the electrical angle counter E As applied. Further, when the
そして、この電気角カウンタEのカウンタ値に基づき、ブラシレスモータ47の通電層を切り換えることで、同モータの正回転方向または逆回転方向への駆動が行われる。
続いて、各位置センサS4,S5からのパルス信号の出力パターンに基づき、位置カウンタPのカウンタ値を増減させる(図4のS102)。
Then, by switching the energization layer of the
Subsequently, the counter value of the position counter P is increased or decreased based on the pulse signal output patterns from the position sensors S4 and S5 (S102 in FIG. 4).
詳しくは、図5(b)に示されるように、位置センサS4,S5のうち、一方のセンサからパルス信号の立ち上がりエッジと立ち下がりエッジとのいずれが生じているか、及び、他方のセンサからハイ信号「H」とロー信号「L」とのいずれが出力されているかに応じて、位置カウンタPのカウンタ値に対し「+1」と「−1」とのいずれかが加算される。なお、同図において、「↑」はパルス信号の立ち上がりエッジを表し、「↓」はパルス信号の立ち下がりエッジを表している。こうした処理を通じて得られる位置カウンタPのカウンタ値は、各位置センサS4,S5からのパルス信号のエッジを計数した値ということになる。 Specifically, as shown in FIG. 5 (b), one of the position sensors S4 and S5 has a rising edge or a falling edge of the pulse signal, and the other sensor is high. Depending on whether the signal “H” or the low signal “L” is output, either “+1” or “−1” is added to the counter value of the position counter P. In the figure, “↑” represents the rising edge of the pulse signal, and “↓” represents the falling edge of the pulse signal. The counter value of the position counter P obtained through such processing is a value obtained by counting the edges of the pulse signals from the position sensors S4 and S5.
ここで、ブラシレスモータ47の正回転中であれば、位置カウンタPのカウンタ値は、図3(d)及び(e)に示される位置センサS4,S5からのパルス信号のエッジ毎に「1」ずつ加算されてゆき、図3(g)中の右方向に変化してゆく。また、ブラシレスモータ47の逆回転中であれば、位置カウンタPのカウンタ値は、上記エッジ毎に「1」ずつ減算されてゆき、図3(g)中の左方向に変化してゆく。なお、この位置カウンタPは、イグニッションスイッチ55のオフ操作(イグニッションオフ)がなされたとき、「0」にリセットされる。従って、位置カウンタPのカウンタ値は、イグニッションオン後にコントロールシャフト16が軸方向にどれだけ変位したかを表すものとなる。
Here, if the
そして、図3(g)に示されるように変化する位置カウンタPに応じて、図3(h)に示されるようにストロークカウンタSが変化させられるようになる。具体的には、位置カウンタPに対して学習値Prの正負を反転させた値(−Pr)を加算して得られる値がストロークカウンタSのカウンタ値として設定される(図4のS103)。なお、上記学習値Prは、コントロールシャフト16をその移動範囲における図2の左端(先端)側の変位端まで変位させたとき、すなわちブラシレスモータ47の回転角を上記所定の回転角範囲内における上記コントロールシャフト16の変位状態に対応する端まで変化させたときの位置カウンタPのカウンタ値に対応した値である。この学習値Prは、イグニッションオン後に所定の条件下で学習が行われて電子制御装置50の不揮発性メモリ56に記憶されるものである。従って、位置カウンタPのカウンタ値に学習値Prの正負を反転させた値を加算して得られる値であるストロークカウンタSのカウンタ値は、コントロールシャフト16の最も先端側に変位した状態を基準とする同シャフト16の軸方向位置を表すものということになる。このことは言い換えれば、ストロークカウンタSのカウンタ値が、ブラシレスモータ47の上記所定回転角範囲におけるコントロールシャフト16の上記変位状態に対応する端を基準とした同モータ47の回転角を表すものになるということである。
Then, the stroke counter S is changed as shown in FIG. 3 (h) in accordance with the position counter P changing as shown in FIG. 3 (g). Specifically, a value obtained by adding a value (−Pr) obtained by inverting the sign of the learning value Pr to the position counter P is set as a counter value of the stroke counter S (S103 in FIG. 4). Note that the learning value Pr is the value obtained when the
電子制御装置50は、上記ストロークカウンタSのカウンタ値に基づき、ブラシレスモータ47の回転角を検出する。そして、電子制御装置50は、バルブリフト可変機構14を駆動して吸気バルブ9の最大リフト量及び吸気カム11aの作用角といったバルブ特性を制御する際、上記のように検出されたブラシレスモータ47の回転角が目標とするバルブ特性に対応する回転角となるようブラシレスモータ47を駆動する。これにより、吸気バルブ9のバルブ特性を目標とする特性へと精密に制御することができるようになる。
The
なお、ブラシレスモータ47の回転時に位置センサS4,S5からのパルス信号のエッジを上述したように計数する代わりに、電気角センサS1〜S3からのパルス信号のエッジを計数しても、その計数値に基づきブラシレスモータ47の回転角を大まかにならば検出することは可能である。しかし、バルブリフト可変機構14を駆動するうえでのブラシレスモータ47の回転角の検出のように、同モータ47の回転角の検出に高精度が要求されるような場合には、上記のような大まかな回転角検出では検出精度が足りなくなる。このため、電気角センサS1〜S3からのパルス信号のエッジ間隔よりも短いエッジ間隔でパルス信号を出力する位置センサS4,S5が設けられ、それら位置センサS4,S5からのパルス信号のエッジを計数する位置カウンタPのカウンタ値に基づき、ブラシレスモータ47の回転角検出が行われている。
Note that, instead of counting the edges of the pulse signals from the position sensors S4 and S5 during the rotation of the
ところで、位置カウンタPのカウンタ値は、常にブラシレスモータ47の実際の回転角に対応しているとは限らず、その実際の回転角に対応した値からずれることがある。例えば、位置センサS4,S5から出力される信号にノイズが発生すると、そのノイズのエッジと位置センサS4,S5からのパルス信号のエッジとを見分けることができず、ノイズのエッジをパルス信号のエッジと誤認し、パルス信号のエッジを計数する位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角と対応しなくなる。
By the way, the counter value of the position counter P does not always correspond to the actual rotation angle of the
以下、上記不具合発生の詳細について、モータ正回転中に上記ノイズが発生した場合、及び、モータ逆回転中に上記ノイズが発生した場合を例に、図6を参照して説明する。なお、図6において、(a)〜(e)は、ブラシレスモータ47の回転角の変化に対する位置センサS4,S5からのパルス信号の波形、電気角カウンタEのカウンタ値の推移、及び、位置カウンタPのカウンタ値の推移を表している。
Hereinafter, details of the occurrence of the problem will be described with reference to FIG. 6 by taking, as an example, the case where the noise occurs during the forward rotation of the motor and the case where the noise occurs during the reverse rotation of the motor. 6A to 6E show the waveforms of the pulse signals from the position sensors S4 and S5 with respect to the change in the rotation angle of the
ブラシレスモータ47の正回転中、例えば図6(a)に示されるように、位置センサS4からの信号にノイズが発生し、そのノイズが位置センサS5からのパルス信号の立ち下がりエッジと重なると、上記ノイズの発生しているタイミングa,b,cでの位置センサS4,S5からの信号の出力パターンは、図7(a)に示されるようなパターンとなる。その結果、タイミングa,b,cでそれぞれ位置カウンタPのカウンタ値に「−1」が加算され、図6(d)のタイミングa,b,cでは当該カウンタ値が破線で示されるように「1」ずつ減少してゆく。一方、仮に上記ノイズが発生していないとすれば、タイミングa,b,cではタイミングbで位置カウンタPのカウンタ値に「1」が加算されるだけとなるはずである。このため、上記ノイズが発生したときの位置カウンタPのカウンタ値は、タイミングc以降、ブラシレスモータ47の実際の回転角に対応する値(実線)に対し、二点鎖線で示されるように「4」だけ小さくなる。
During forward rotation of the
ブラシレスモータ47の逆回転中、例えば図6(a)に示されるノイズが発生し、そのノイズが位置センサS5からのパルス信号の立ち上がりエッジと重なった場合にも、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値からずれることになる。すなわち、上記ノイズの発生しているタイミングc,b,aでの位置センサS4,S5からの信号の出力パターンが図7(b)に示されるようなパターンとなり、タイミングc,b,aでそれぞれ位置カウンタPのカウンタ値に「1」が加算され、図6(e)のタイミングc,b,aでは当該カウンタ値が破線で示されるように「1」ずつ増加してゆく。一方、仮に上記ノイズが発生していないとすれば、タイミングc,b,aではタイミングbで位置カウンタPのカウンタ値に「−1」が加算されるだけとなるはずである。このため、上記ノイズが発生したときの位置カウンタPのカウンタ値は、タイミングa以降、ブラシレスモータ47の実際の回転角に対応する値(実線)に対し、二点鎖線で示されるように「4」だけ大きくなる。
During the reverse rotation of the
以上のように、位置センサS4,S5から出力される信号にノイズが発生し、そのノイズが位置センサS4,S5からのパルス信号のエッジと重なると、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角と対応しなくなる。その結果、位置カウンタP(正確にはストロークカウンタS)のカウンタ値に基づき検出されるブラシレスモータ47の実際の回転角が不正確になり、その回転角等に基づきブラシレスモータ47を駆動し、吸気バルブ9のバルブ特性を目標の特性に制御しようとしても、それを正しく行えなくなってエンジン運転への悪影響に繋がる。より詳しくは、吸気バルブ9のバルブ特性を目標の特性に制御できないことから、当該バルブ特性に基づくエンジン1の吸入空気量の正しい推定を行えなくなり、ひいては推定される吸入空気量に基づきエンジン1を運転制御する際にエンジン1のエミッション不良や加速不良を招くこととなる。
As described above, when noise is generated in the signals output from the position sensors S4 and S5, and the noise overlaps with the edge of the pulse signal from the position sensors S4 and S5, the counter value of the position counter P becomes the value of the
上述したノイズに起因する不具合の発生を抑制するためには、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれ量を求め、そのずれ量に対応する分の補正を当該カウンタ値に加えて、そのカウンタ値をブラシレスモータ47の実際の回転角に対応する値に戻すことが必要になる。このため、[発明が解決しようとする課題]の欄に記載したように、ブラシレスモータ47の実際の回転角を検出するリニアセンサ等を別途設け、そのセンサによって検出される回転角が位置カウンタPのカウンタ値等に基づき検出される回転角と対応していないとき、両者の差に基づき求められる補正値の分だけカウンタ値を補正することも考えられる。しかし、この場合には、リニアセンサ等の設置に手間がかかるとともに、同センサの設置に関係してブラシレスモータ47の搭載位置が制約されるという新たな問題が生じることは、[発明が解決しようとする課題]の欄に記載したとおりである。
In order to suppress the occurrence of the problems due to the noise described above, a deviation amount from the value corresponding to the actual rotation angle of the
そこで本実施形態では、ブラシレスモータ47の駆動に用いられる電気角センサS1〜S3からのパルス信号を利用して、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれ量を求め、そのずれ量に対応する補正を上記カウンタ値に加えるようにしている。より詳しくは、以下の[1]〜[3]の処理を実行することで、上述した位置カウンタPのカウンタ値の補正を行い、同カウンタ値をブラシレスモータ47の実際の回転角に対応する値に戻すようにしている。
Therefore, in the present embodiment, the pulse signal from the electric angle sensors S1 to S3 used for driving the
[1]各電気角センサS1〜S3から出力されるパルス信号のエッジ発生毎に、今回のエッジ発生時における位置カウンタPのカウンタ値Pi と前回のエッジ発生時における位置カウンタPのカウンタ値Pi-1 との差(Pi −Pi-1 )を算出する。 [1] Every time an edge of the pulse signal output from each of the electrical angle sensors S1 to S3 occurs, the counter value Pi of the position counter P when the current edge is generated and the counter value Pi− of the position counter P when the previous edge is generated The difference (Pi-Pi-1) from 1 is calculated.
[2]電気角カウンタEのカウンタ値の変化に基づきブラシレスモータ47の回転状態が正回転中、逆回転中、及び正逆回転反転中のうちのいずれであるかを判断し、そのブラシレスモータ47の回転状態に応じて差(Pi −Pi-1 )の正常時の値である正常値Jを可変設定する。この正常値Jの可変設定では、電気角センサS1〜S3からのパルス信号のエッジ間において位置センサS4,S5から出力されるパルス信号のエッジ数n(本実施形態では「4」)に関係して、正常値Jがモータ正回転中であれば「n」とされ、モータ逆回転中であれば「−n」とされ、モータ正逆回転反転中であれば「0」とされる。
[2] Based on the change in the counter value of the electrical angle counter E, it is determined whether the rotation state of the
[3]上記正常値Jに対する差(Pi −Pi-1 )のずれ量「J−(Pi −Pi-1 )」を第1の補正値ΔPとし、当該第1の補正値ΔP分の補正を位置カウンタPのカウンタ値に加える。 [3] A deviation “J− (Pi−Pi−1)” of the difference (Pi−Pi−1) with respect to the normal value J is set as a first correction value ΔP, and correction for the first correction value ΔP is performed. It adds to the counter value of the position counter P.
この場合、上記ノイズの発生に起因して位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応しなくなり、その実際の回転角に対応する値からずれた状態になると、上記差(Pi −Pi-1 )に位置カウンタPのカウンタ値における上記実際の回転角に対応する値からのずれが反映される。すなわち、そのずれの分だけ上記差(Pi −Pi-1 )が正常値Jからずれることになる。従って、上記[3]の処理で算出される第1の補正値ΔP分の補正を位置カウンタPのカウンタ値に加えることで、そのカウンタ値におけるブラシレスモータ47における実際の回転角に対応する値からのずれを無くすことができる。このため、位置カウンタP(正確にはストロークカウンタS)のカウンタ値に基づき検出されるブラシレスモータ47の回転角に基づきブラシレスモータ47を駆動し、バルブリフト可変機構14を駆動制御しようとするとき、それを正しく行えなくなってエンジン運転への悪影響に繋がることはない。また、第1の補正値ΔPを求めるための差(Pi −Pi-1 )を算出するのには、ブラシレスモータ47の駆動に用いられる電気角センサS1〜S3があればよく、上記異常発生の検出のために新たなセンサ等を設ける必要はない。
In this case, when the counter value of the position counter P does not correspond to the actual rotation angle of the
次に、上記[2]の処理でのブラシレスモータ47の回転状態の判断について図8及び図9を参照して説明する。
図8において、(a)〜(e)は、ブラシレスモータ47の回転状態が正回転中、正逆回転反転中、及び逆回転中へと変化する際、電気角センサS1〜S3からのパルス信号の波形、電気角カウンタEのカウンタ値、及びモータステータスがどのように変化するかを表している。
Next, determination of the rotation state of the
8A to 8E show pulse signals from the electrical angle sensors S1 to S3 when the rotation state of the
図8(e)に示されるモータステータスは、電気角センサS1〜S3からのパルス信号のエッジ発生毎に、ブラシレスモータ47の回転方向を表すものとなるよう、電気角カウンタEの変化態様に応じて設定されるものである。
The motor status shown in FIG. 8 (e) depends on the change of the electric angle counter E so that it represents the rotational direction of the
詳しくは、上記エッジ発生時に電気角カウンタEのカウンタ値が順方向(モータ正回転方向)、すなわち「0」→「1」→「2」→「3」→「4」→「5」→「0」という方向に整数値一つ分だけ変化した場合、上記モータステータスは「cw」に設定される。また、上記エッジ発生時に電気角カウンタEのカウンタ値が逆方向(モータ逆回転方向)、すなわち「5」→「4」→「3」→「2」→「1」→「0」→「5」という方向に整数値一つ分だけ変化した場合、上記モータステータスは「ccw」に設定される。なお、上記エッジ発生時、何らかの理由により電気角カウンタEのカウンタ値が変化しなかった場合、上記モータステータスは「hold」に設定される。 Specifically, when the edge is generated, the counter value of the electrical angle counter E is forward (motor forward rotation direction), that is, “0” → “1” → “2” → “3” → “4” → “5” → “ When the value changes by one integer value in the direction of “0”, the motor status is set to “cw”. When the edge is generated, the counter value of the electrical angle counter E is in the reverse direction (motor reverse rotation direction), that is, “5” → “4” → “3” → “2” → “1” → “0” → “5 In the direction of “”, the motor status is set to “ccw”. When the edge is generated, if the counter value of the electrical angle counter E does not change for some reason, the motor status is set to “hold”.
そして、ブラシレスモータ47の回転状態が正回転中、逆回転中、及び正逆回転反転中のいずれであるかは、電気角センサS1〜S3からのパルス信号の前回のエッジ発生時と今回のエッジ発生時とにおける各々のモータステータスに基づき判断される。
Whether the rotation state of the
すなわち、図9に示されるように、前回のエッジ発生時と今回のエッジ発生時とのモータステータスが共に「cw」であれば、前回のエッジ発生時と今回のエッジ発生時とで共にブラシレスモータ47が正回転していることになり、その結果、モータ正回転中である旨の判断がなされる。また、前回のエッジ発生時と今回のエッジ発生時とのモータステータスが共に「ccw」であれば、前回のエッジ発生時と今回のエッジ発生時とで共にブラシレスモータ47が逆回転していることになり、その結果、モータ逆回転中である旨の判断がなされる。更に、前回のエッジ発生時と今回のエッジ発生時とでモータステータスが「cw」と「ccw」とで異なっていれば、前回のエッジ発生時と今回のエッジ発生時とでブラシレスモータ47の回転方向が異なっていることになり、その結果、モータ正逆回転反転中である旨の判断がなされる。
That is, as shown in FIG. 9, if both the motor statuses at the time of the previous edge generation and the current edge generation are “cw”, both the brush generation motor at the time of the previous edge generation and the current edge generation are both. 47 is rotating forward, and as a result, it is determined that the motor is rotating forward. Also, if the motor status at the time of the previous edge occurrence and the current edge occurrence is both “ccw”, the
なお、今回のエッジ発生時のモータステータスが「hold」であった場合には、ブラシレスモータ47の回転状態の判断は行われない。また、次回のエッジ発生時に上記「hold」が前回のモータステータスとして用いられることはなく、モータステータスが「hold」となるエッジ発生時の一つ前のエッジ発生時のモータステータスが前回のモータステータスとして用いられることとなる。
If the motor status at the time of the current edge generation is “hold”, the determination of the rotation state of the
次に、上述した第1の補正値ΔPによる位置カウンタPのカウンタ値の補正の概要について、ブラシレスモータ47の正回転中及び逆回転中での上記補正を例に、図6を参照して説明する。
Next, an outline of correction of the counter value of the position counter P by the above-described first correction value ΔP will be described with reference to FIG. 6 taking the above correction during forward rotation and reverse rotation of the
ブラシレスモータ47の正回転中、図6(a)に示されるようにノイズが発生すると、図6(d)に示されるように、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)に対し、二点鎖線で示されるように「4」だけ小さくなることは上述したとおりである。この場合、電気角カウンタEのカウンタ値が「2」から「3」に変化する電気角センサS1〜S3からのパルス信号のエッジ発生時、上記差(Pi −Pi-1 )が正常値J(=4)に対し「−4」だけずれた「0」になる。
If noise occurs as shown in FIG. 6A during the forward rotation of the
そして、電気角カウンタEのカウンタ値が「2」から「3」に変化する電気角センサS1〜S3からのパルス信号のエッジ発生時、正常値J(=4)に対する差(Pi −Pi-1 )のずれ量「J−(Pi −Pi-1 )=4」を第1の補正値ΔPとし、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値(二点鎖線)に加えられる。その結果、図6(e)に黒矢印で示されるように、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)へと変化する。これにより、位置カウンタPのカウンタ値における上記実際の回転角に対応する値(実線)からのずれが修正される。
When the edge of the pulse signal from the electrical angle sensors S1 to S3 in which the counter value of the electrical angle counter E changes from “2” to “3” is generated, the difference (Pi−Pi−1) with respect to the normal value J (= 4). ) Is set to the first correction value ΔP, and the correction for the first correction value ΔP is added to the counter value (two-dot chain line) of the position counter P. It is done. As a result, as indicated by a black arrow in FIG. 6E, the counter value of the position counter P changes to a value (solid line) corresponding to the actual rotation angle of the
ブラシレスモータ47の逆回転中、図6(a)に示されるようにノイズが発生すると、図6(e)に示されるように、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)に対し、二点鎖線で示されるように「4」だけ大きくなることは上述したとおりである。この場合、電気角カウンタEのカウンタ値が「3」から「2」に変化する電気角センサS1〜S3からのパルス信号のエッジ発生時、上記差(Pi −Pi-1 )が正常値J(−4)に対し「4」だけずれた「0」になる。
If noise occurs as shown in FIG. 6A during the reverse rotation of the
そして、電気角カウンタEのカウンタ値が「2」から「1」に変化する電気角センサS1〜S3からのパルス信号のエッジ発生時、正常値J(=−4)に対する差(Pi −Pi-1 )のずれ量「J−(Pi −Pi-1 )=−4」を第1の補正値ΔPとし、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値(二点鎖線)に加えられる。その結果、図6(d)に黒矢印で示されるように、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)へと変化する。これにより、位置カウンタPのカウンタ値における上記実際の回転角に対応する値(実線)からのずれが修正される。
When the edge of the pulse signal from the electrical angle sensors S1 to S3 in which the counter value of the electrical angle counter E changes from “2” to “1” is generated, the difference (Pi−Pi−) with respect to the normal value J (= −4). 1) The deviation “J− (Pi−Pi−1) = − 4” is the first correction value ΔP, and the correction for the first correction value ΔP is the counter value of the position counter P (two-dot chain line). Added to. As a result, as indicated by a black arrow in FIG. 6D, the counter value of the position counter P changes to a value (solid line) corresponding to the actual rotation angle of the
次に、位置カウンタPのカウンタ値が正しい値からずれたときに当該カウンタ値を正しい値に戻すための補正手順について、位置カウンタ補正ルーチンを示す図10のフローチャートを参照して説明する。この位置カウンタ補正ルーチンは、電子制御装置50を通じて、位置センサS4,S5からのパルス信号のエッジ間隔に対応する時間間隔よりも短い間隔をもって周期的に実行される。
Next, a correction procedure for returning the counter value to the correct value when the counter value of the position counter P deviates from the correct value will be described with reference to the flowchart of FIG. 10 showing the position counter correction routine. This position counter correction routine is periodically executed through the
同ルーチンにおいては、まず上記[1]の処理として、ステップS201〜S203の処理が実行される。すなわち、電気角センサS1〜S3からのパルス信号のエッジが発生したとき(S201:YES)、位置カウンタPのカウンタ値が電子制御装置50のメモリに記憶され(S202)、今回のエッジ発生時のカウンタ値Pi と前回のエッジ発生時のカウンタ値Pi-1 との差(Pi −Pi-1 )が算出される(S203)。 In this routine, first, the processes of steps S201 to S203 are executed as the process of [1]. That is, when an edge of the pulse signal from the electrical angle sensors S1 to S3 occurs (S201: YES), the counter value of the position counter P is stored in the memory of the electronic control unit 50 (S202), and the current edge generation time is generated. A difference (Pi-Pi-1) between the counter value Pi and the counter value Pi-1 at the previous edge occurrence is calculated (S203).
続いて、上記[2]の処理として、ステップS204〜S208の処理が実行される。すなわち、電気角センサS1〜S3からのパルス信号における前回のエッジ発生と今回のエッジ発生時とのモータステータスに基づきブラシレスモータ47の回転状態が判断され、その回転状態に応じて上記差(Pi −Pi-1 )の正常値Jが可変設定される。具体的には、正常値Jは、モータ正回転中(S204:YES)であれば「4」に設定され(S206)、モータ逆回転中(S205:YES)であれば「−4」に設定され(S207)、モータ正逆回転反転中(S204、S205で共にNO)であれば「0」に設定される(S208)。また、上述した今回のエッジ発生時のモータステータスが「hold」であって、ブラシレスモータ47の回転状態の判断がなされないときには、上記ステップS204,S205で共に否定判定がなされ、正常値JがステップS208の処理で「0」に設定される。
Subsequently, the processes of steps S204 to S208 are executed as the process [2]. That is, the rotational state of the
その後、上記[3]の処理として、ステップS209及びステップS210の処理が実行される。すなわち、正常値Jに対する上記差(Pi −Pi-1 )のずれ量「J−(Pi −Pi-1 )」が第1の補正値ΔPとして設定される(S209)。そして、この第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられる(S210)。これにより、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応した値からずれていたとしても、そのずれが修正されることとなる。
Thereafter, as the process [3], the processes of steps S209 and S210 are executed. That is, the deviation “J− (Pi−Pi−1)” of the difference (Pi−Pi−1) with respect to the normal value J is set as the first correction value ΔP (S209). Then, the correction for the first correction value ΔP is added to the counter value of the position counter P (S210). As a result, even if the counter value of the position counter P deviates from a value corresponding to the actual rotation angle of the
ところで、電気角センサS1〜S3からの信号にノイズが発生する場合もある。この場合、当該ノイズを電気角センサS1〜S3からのパルス信号と誤認し、電気角カウンタEのカウンタ値が誤った値に変化するおそれがある。そして、電気角カウンタEのカウンタ値が誤った値に変化すると、そのカウンタ値に基づき判断されるブラシレスモータ47の回転状態が実際の状態とは異なるものとなり、そのモータ回転状態に応じて設定される正常値Jが実際のモータ回転状態とは対応しなくなる。このような状況下では、上述した正常値Jの異常に起因して、その正常値Jに対する上記差(Pi −Pi-1 )のずれ量「J−(Pi −Pi-1 )」である第1の補正値ΔPが誤った値となる。そして、その第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられると、当該カウンタ値がブラシレスモータ47の実際の回転角に対応する値からずれることになる。その結果、位置カウンタPのカウンタ値に基づき検出されるブラシレスモータ47の回転角が不正確な値になる。
Incidentally, noise may occur in signals from the electrical angle sensors S1 to S3. In this case, the noise is mistaken as a pulse signal from the electrical angle sensors S1 to S3, and the counter value of the electrical angle counter E may change to an incorrect value. When the counter value of the electrical angle counter E changes to an incorrect value, the rotation state of the
次に、上記不具合発生の詳細について、モータ正回転中に上記ノイズが発生した場合、及び、モータ逆回転中に上記ノイズが発生した場合を例に、図11を参照して説明する。なお、図11において、(a)〜(i)は、ブラシレスモータ47の回転角の変化に対する電気角センサS1〜S3からのパルス信号の波形、位置センサS4,S5からのパルス信号の波形、電気角カウンタEのカウンタ値の推移、及び、位置カウンタPのカウンタ値の推移を表している。
Next, the details of the occurrence of the problem will be described with reference to FIG. 11, taking as an example the case where the noise occurs during the forward rotation of the motor and the case where the noise occurs during the reverse rotation of the motor. In FIG. 11, (a) to (i) are waveforms of pulse signals from the electrical angle sensors S1 to S3 with respect to changes in the rotation angle of the
[モータ正回転中]
ブラシレスモータ47の正回転中、例えば図11(b)の破線L1で示されるように、電気角センサS2からの信号にノイズが発生し、そのノイズが電気角センサS1からのパルス信号の立ち上がりエッジと重なると、上記ノイズの発生しているタイミングa,b,cでの電気角センサS1〜S3からの信号の出力パターンが正常時とは異なるものとなる。この正常時とは異なる出力パターンに応じて、電気角カウンタEのカウンタ値は、図11(f)に破線L2で示されるように誤った値に変化する。
[During motor forward rotation]
During the forward rotation of the
ここで、タイミングa,b,cでの電気角センサS1〜S3からの信号の出力パターン、電気角カウンタEのカウンタ値、電気角センサS1〜S3からの信号における前回のエッジ発生時と今回のエッジ発生時とのモータステータス、正常値J、差(Pi −Pi-1 )、及び、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)を、図12(a)に示す。 Here, the output pattern of the signals from the electrical angle sensors S1 to S3 at the timings a, b, and c, the counter value of the electrical angle counter E, the previous edge generation in the signals from the electrical angle sensors S1 to S3, and the current time FIG. 12A shows the motor status, normal value J, difference (Pi−Pi−1), and first correction value ΔP (= “J− (Pi−Pi−1)”) from the time of edge generation. Shown in
タイミングaは、上記ノイズの立ち上がりエッジに対応している。このため、タイミングaでは、上記ノイズの立ち上がりエッジに起因して、電気角センサS1〜S3からの信号がそれぞれ「L」、「H」、「H」となり、電気角カウンタEのカウンタ値が「2」から「1」へと変化する。このため、電気角センサS1〜S3からの信号における前回エッジ発生時のモータステータスと今回エッジ発生時のモータステータスとがそれぞれ、「cw」、「ccw」となる。その結果、モータ正逆回転反転中である旨の誤判断がなされ、正常値Jが誤って「0」に設定される。この場合、今回のエッジ発生時の位置カウンタPのカウンタ値Pi と前記のエッジ発生時の位置カウンタPのカウンタ値Pi-1 との差(Pi −Pi-1 )が「4」であることから、正常値Jに対する上記差(Pi −Pi-1 )のずれ量である第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が「−4」とされる。そして、この第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(g)に黒矢印Y1で示されるように誤って「−4」分だけ小さくされることになる。 Timing a corresponds to the rising edge of the noise. Therefore, at timing a, due to the rising edge of the noise, the signals from the electrical angle sensors S1 to S3 are “L”, “H”, and “H”, respectively, and the counter value of the electrical angle counter E is “ It changes from “2” to “1”. Therefore, the motor status at the time of the previous edge occurrence and the motor status at the occurrence of the current edge in the signals from the electrical angle sensors S1 to S3 are “cw” and “ccw”, respectively. As a result, an erroneous determination that the motor is rotating in the forward / reverse rotation is made, and the normal value J is erroneously set to “0”. In this case, the difference (Pi−Pi−1) between the counter value Pi of the position counter P when the current edge occurs and the counter value Pi−1 of the position counter P when the edge occurs is “4”. The first correction value ΔP (= “J− (Pi−Pi−1)”), which is the deviation of the difference (Pi−Pi−1) from the normal value J, is set to “−4”. Since the correction for the first correction value ΔP is added to the counter value of the position counter P, the counter value is erroneously set to “−4” as indicated by the black arrow Y1 in FIG. Will be made smaller.
タイミングbは、電気角センサS1からのパルス信号の立ち上がりエッジに対応している。このタイミングbでは、上記ノイズの発生に起因して、電気角センサS1〜S3全てが図12(a)に示されるようにハイ信号「H」となり、電気角カウンタEのカウンタ値がそれまでの値である「1」に保持される。その結果、電気角センサS1〜S3からの信号における今回エッジ発生時のモータステータスが「hold」となり、正常値Jが「0」に設定される。また、タイミングaからタイミングbまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「0」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられることはない。 Timing b corresponds to the rising edge of the pulse signal from the electrical angle sensor S1. At this timing b, due to the generation of the noise, all the electrical angle sensors S1 to S3 become the high signal “H” as shown in FIG. The value “1” is held. As a result, the motor status when the current edge occurs in the signals from the electrical angle sensors S1 to S3 is “hold”, and the normal value J is set to “0”. Further, the difference (Pi−Pi−1), which is the change amount of the position counter P from the timing a to the timing b, is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “0”, and the correction for the first correction value ΔP is added to the counter value of the position counter P. There is no.
タイミングcは、上記ノイズの立ち下がりエッジに対応している。このタイミングcでは、上記ノイズの立ち下がりエッジに起因して、電気角センサS1〜S3からの信号がそれぞれ「H」、「L」、「H」となり、電気角カウンタEのカウンタ値が通常あり得ない変化、すなわち「1」から「3」へと順方向に整数値を一つとばした変化を示すようになる。こうした今回のエッジ発生時の電気角カウンタEのカウンタ値の変化を順方向への変化とみなし、今回のエッジ発生時のモータステータスを図中のハッチングで示されるように「cw」に設定したとすると、前回エッジ発生時と今回エッジ発生時とのモータステータスはそれぞれ、「ccw」、「cw」となる。その結果、正常値Jが「0」に設定される。また、タイミングbからタイミングcまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「0」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられることはない。 Timing c corresponds to the falling edge of the noise. At this timing c, due to the falling edge of the noise, the signals from the electrical angle sensors S1 to S3 become “H”, “L”, and “H”, respectively, and the counter value of the electrical angle counter E is normal. An unobtainable change, that is, a change in which an integer value is skipped in the forward direction from “1” to “3”. The change of the counter value of the electrical angle counter E at the time of the occurrence of the current edge is regarded as a change in the forward direction, and the motor status at the occurrence of the current edge is set to “cw” as indicated by hatching in the figure. Then, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “ccw” and “cw”, respectively. As a result, the normal value J is set to “0”. Further, the difference (Pi−Pi−1) which is the change amount of the position counter P from the timing b to the timing c is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “0”, and the correction for the first correction value ΔP is added to the counter value of the position counter P. There is no.
従って、図11(b)に破線L1で示されるノイズの発生に起因して、電気角カウンタEのカウンタ値が図11(f)に破線L2で示されるように変化すると、図11(g)に黒矢印Y1で示される第1の補正値ΔP(=−4)分の補正が誤って位置カウンタPのカウンタ値に加えられる。その結果、位置カウンタPのカウンタ値は、図中の破線L3で示されるように、ブラシレスモータ47の実際の回転角に対応する値(実線)からずれることになる。
Accordingly, when the counter value of the electrical angle counter E changes as shown by the broken line L2 in FIG. 11 (f) due to the generation of noise shown by the broken line L1 in FIG. 11 (b), FIG. The correction for the first correction value ΔP (= −4) indicated by the black arrow Y1 is erroneously added to the counter value of the position counter P. As a result, the counter value of the position counter P deviates from a value (solid line) corresponding to the actual rotation angle of the
また、ブラシレスモータの正回転中、例えば図11(b)の破線L4で示されるように、電気角センサS2からの信号にノイズが発生し、同ノイズが電気角センサS3からのパルス信号の立ち下がりエッジと重なると、上記ノイズの発生しているタイミングd,e,fでの電気角センサS1〜S3からの信号の出力パターンが正常時とは異なるものとなる。この正常時とは異なる出力パターンに応じて、電気角カウンタEのカウンタ値は、図11(f)に破線L5で示されるように誤った値に変化する。 Further, during the forward rotation of the brushless motor, for example, as indicated by a broken line L4 in FIG. 11B, noise is generated in the signal from the electrical angle sensor S2, and the noise is generated by the rise of the pulse signal from the electrical angle sensor S3. When overlapping with the falling edge, the output pattern of signals from the electrical angle sensors S1 to S3 at the timings d, e, and f at which the noise is generated becomes different from the normal time. The counter value of the electrical angle counter E changes to an incorrect value as indicated by a broken line L5 in FIG.
ここで、タイミングd,e,fでの電気角センサS1〜S3からの信号の出力パターン、電気角カウンタEのカウンタ値、電気角センサS1〜S3からの信号における前回のエッジ発生時と今回のエッジ発生時とのモータステータス、正常値J、差(Pi −Pi-1 )、及び、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)を、図12(b)に示す。なお、同図には、タイミングf後、最初に電気角センサS1〜S3からのパルス信号のエッジが発生するタイミングgでの電気角センサS1〜S3からの信号の出力パターン、電気角カウンタEのカウンタ値、前回エッジ発生時と今回エッジ発生時とのモータステータス、正常値J、差(Pi −Pi-1 )、及び、第1の補正値ΔPも示している。 Here, the output pattern of the signals from the electrical angle sensors S1 to S3 at the timings d, e, and f, the counter value of the electrical angle counter E, the time when the previous edge occurred in the signals from the electrical angle sensors S1 to S3, and the current time FIG. 12B shows the motor status, normal value J, difference (Pi−Pi−1), and first correction value ΔP (= “J− (Pi−Pi−1)”) from when the edge is generated. Shown in In the figure, after the timing f, the output pattern of the signals from the electrical angle sensors S1 to S3 at the timing g when the edges of the pulse signals from the electrical angle sensors S1 to S3 first occur, and the electrical angle counter E The counter value, the motor status between the occurrence of the previous edge and the current edge, the normal value J, the difference (Pi−Pi−1), and the first correction value ΔP are also shown.
タイミングdは、上記ノイズの立ち上がりエッジに対応している。このため、タイミングdでは、上記ノイズの立ち上がりエッジに起因して、電気角センサS1〜S3からの信号が全てハイ信号「H」となり、電気角カウンタEのカウンタ値がそれまでの値である「3」に保持される。その結果、電気角センサS1〜S3からの信号における今回エッジ発生時のモータステータスが「hold」となり、正常値Jが「0」に設定される。この場合、今回のエッジ発生時の位置カウンタPのカウンタ値Pi と前記のエッジ発生時の位置カウンタPのカウンタ値Pi-1 との差(Pi −Pi-1 )が「4」であることから、正常値Jに対する上記差(Pi −Pi-1 )のずれ量である第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が「−4」とされる。そして、この第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(g)に黒矢印Y3で示されるように「−4」分だけ小さくされることになる。 Timing d corresponds to the rising edge of the noise. For this reason, at the timing d, due to the rising edge of the noise, all the signals from the electrical angle sensors S1 to S3 become the high signal “H”, and the counter value of the electrical angle counter E is the value up to that time. 3 ". As a result, the motor status when the current edge occurs in the signals from the electrical angle sensors S1 to S3 is “hold”, and the normal value J is set to “0”. In this case, the difference (Pi−Pi−1) between the counter value Pi of the position counter P when the current edge occurs and the counter value Pi−1 of the position counter P when the edge occurs is “4”. The first correction value ΔP (= “J− (Pi−Pi−1)”), which is the deviation of the difference (Pi−Pi−1) from the normal value J, is set to “−4”. Then, since the correction for the first correction value ΔP is added to the counter value of the position counter P, the counter value is decreased by “−4” as indicated by the black arrow Y3 in FIG. Will be.
タイミングeは、電気角センサS3からのパルス信号の立ち下がりエッジに対応している。このタイミングeでは、上記ノイズの発生に起因して、図12(b)に示されるように電気角センサS1〜S3からの信号がそれぞれ「H」、「H」、「L」となり、電気角カウンタEのカウンタ値が通常あり得ない変化、すなわち「3」から「5」へと順方向に整数値を一つとばした変化を示すようになる。こうした今回のエッジ発生時の電気角カウンタEのカウンタ値の変化を順方向への変化とみなし、今回のエッジ発生時のモータステータスを図中のハッチングで示されるように「cw」に設定したとすると、前回エッジ発生時と今回エッジ発生時とのモータステータスはそれぞれ、「cw」、「cw」となる。その結果、正常値Jが「4」に設定される。また、タイミングdからタイミングeまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「4」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(g)に黒矢印Y4で示されるように「4」だけ大きくされることになる。 The timing e corresponds to the falling edge of the pulse signal from the electrical angle sensor S3. At this timing e, due to the generation of the noise, the signals from the electrical angle sensors S1 to S3 become “H”, “H”, and “L”, respectively, as shown in FIG. The counter value of the counter E usually shows an impossible change, that is, a change in which the integer value is skipped by one in the forward direction from “3” to “5”. The change of the counter value of the electrical angle counter E at the time of occurrence of the current edge is regarded as a change in the forward direction, and the motor status at the time of occurrence of the current edge is set to “cw” as indicated by hatching in the figure. Then, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “cw” and “cw”, respectively. As a result, the normal value J is set to “4”. Further, the difference (Pi−Pi−1), which is the change amount of the position counter P from the timing d to the timing e, is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “4”, and correction for the first correction value ΔP is added to the counter value of the position counter P. The counter value is increased by “4” as indicated by the black arrow Y4 in FIG.
タイミングfは、上記ノイズの立ち下がりエッジに対応している。このタイミングfでは、上記ノイズの立ち下がりエッジに起因して、電気角センサS1〜S3からの信号がそれぞれ「H」、「L」、「L」となり、電気角カウンタEのカウンタ値が「5」から「4」へと変化する。このため、前回エッジ発生時と今回エッジ発生時とのモータステータスがそれぞれ「cw」、「ccw」となり、それに基づき正常値Jが「0」に設定される。また、タイミングeからタイミングfまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「0」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられることはない。 Timing f corresponds to the falling edge of the noise. At this timing f, due to the falling edge of the noise, the signals from the electrical angle sensors S1 to S3 are “H”, “L”, and “L”, respectively, and the counter value of the electrical angle counter E is “5”. To "4". Therefore, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “cw” and “ccw”, respectively, and the normal value J is set to “0” based on the motor status. Further, the difference (Pi−Pi−1), which is the change amount of the position counter P from the timing e to the timing f, is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “0”, and the correction for the first correction value ΔP is added to the counter value of the position counter P. There is no.
タイミングgは、タイミングf後における最初の電気角センサS1〜S3からのパルス信号のエッジ発生に対応している。このタイミングgでは、電気角センサS1〜S3からの信号がそれぞれ「H」、「H」、「L」となり、電気角カウンタEのカウンタ値が「4」から「5」へと変化する。このため、前回エッジ発生時と今回エッジ発生時とのモータステータスがそれぞれ「ccw」、「cw」となる。その結果、モータ正逆回転反転中である旨の誤判断がなされ、正常値Jが誤って「0」に設定される。この場合、今回のエッジ発生時の位置カウンタPのカウンタ値Pi と前記のエッジ発生時の位置カウンタPのカウンタ値Pi-1 との差(Pi −Pi-1 )が「4」であることから、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が「−4」とされる。そして、この第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(g)に黒矢印Y5で示されるように誤って「−4」分だけ小さくされることになる。 Timing g corresponds to the edge generation of the pulse signal from the first electrical angle sensors S1 to S3 after timing f. At this timing g, the signals from the electrical angle sensors S1 to S3 become “H”, “H”, and “L”, respectively, and the counter value of the electrical angle counter E changes from “4” to “5”. Therefore, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “ccw” and “cw”, respectively. As a result, an erroneous determination that the motor is rotating in the forward / reverse rotation is made, and the normal value J is erroneously set to “0”. In this case, the difference (Pi−Pi−1) between the counter value Pi of the position counter P when the current edge occurs and the counter value Pi−1 of the position counter P when the edge occurs is “4”. The first correction value ΔP (= “J− (Pi−Pi−1)”) is set to “−4”. Then, since the correction for the first correction value ΔP is added to the counter value of the position counter P, the counter value is erroneously set to “−4” as indicated by the black arrow Y5 in FIG. Will be made smaller.
従って、図11(b)に破線L4で示されるノイズの発生に起因して、電気角カウンタEのカウンタ値が図11(f)に破線L5で示されるように変化すると、図11(g)に黒矢印Y3,Y4,Y5で示される第1の補正値ΔP分の補正が誤って位置カウンタPのカウンタ値に加えられる。その結果、位置カウンタPのカウンタ値は、図中の破線L6で示されるように、ブラシレスモータ47の実際の回転角に対応する値(実線)からずれることになる。
Accordingly, when the counter value of the electrical angle counter E changes as shown by the broken line L5 in FIG. 11 (f) due to the generation of the noise shown by the broken line L4 in FIG. 11 (b), FIG. The correction for the first correction value ΔP indicated by the black arrows Y3, Y4, Y5 is erroneously added to the counter value of the position counter P. As a result, the counter value of the position counter P deviates from a value (solid line) corresponding to the actual rotation angle of the
[モータ逆回転中]
ブラシレスモータ47の逆回転中、図11(b)の破線L4で示されるように、電気角センサS2からの信号にノイズが発生し、そのノイズが電気角センサS3からのパルス信号の立ち上がりエッジと重なると、上記ノイズの発生しているタイミングf,e,dでの電気角センサS1〜S3からの信号の出力パターンが正常時とは異なるものとなる。この正常時とは異なる出力パターンに応じて、電気角カウンタEのカウンタ値は、図11(h)に破線L11で示されるように誤った値に変化する。
[Motor reverse rotation]
During reverse rotation of the
ここで、タイミングf,e,dでの電気角センサS1〜S3からの信号の出力パターン、電気角カウンタEのカウンタ値、電気角センサS1〜S3からの信号における前回のエッジ発生時と今回のエッジ発生時とのモータステータス、正常値J、差(Pi −Pi-1 )、及び、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)を、図13(a)に示す。 Here, the output pattern of the signals from the electrical angle sensors S1 to S3 at the timings f, e, and d, the counter value of the electrical angle counter E, the time when the previous edge occurred in the signals from the electrical angle sensors S1 to S3, and the current time FIG. 13A shows the motor status, normal value J, difference (Pi−Pi−1), and first correction value ΔP (= “J− (Pi−Pi−1)”) from when the edge is generated. Shown in
タイミングfは、上記ノイズの立ち上がりエッジに対応している。このため、タイミングfでは、上記ノイズの立ち上がりエッジに起因して、電気角センサS1〜S3からの信号がそれぞれ「H」、「H」、「L」となり、電気角カウンタEのカウンタ値が「4」から「5」へと変化する。このため、電気角センサS1〜S3からの信号における前回エッジ発生時のモータステータスと今回エッジ発生時のモータステータスとがそれぞれ、「ccw」、「cw」となる。その結果、モータ正逆回転反転中である旨の誤判断がなされ、正常値Jが誤って「0」に設定される。この場合、今回のエッジ発生時の位置カウンタPのカウンタ値Pi と前記のエッジ発生時の位置カウンタPのカウンタ値Pi-1 との差(Pi −Pi-1 )が「−4」であることから、正常値Jに対する上記差(Pi −Pi-1 )のずれ量である第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が「4」とされる。そして、この第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(i)に黒矢印Y8で示されるように誤って「4」だけ大きくされることになる。 The timing f corresponds to the rising edge of the noise. Therefore, at the timing f, due to the rising edge of the noise, the signals from the electrical angle sensors S1 to S3 are “H”, “H”, and “L”, respectively, and the counter value of the electrical angle counter E is “ It changes from “4” to “5”. Therefore, the motor status at the time of the previous edge occurrence and the motor status at the occurrence of the current edge in the signals from the electrical angle sensors S1 to S3 are “ccw” and “cw”, respectively. As a result, an erroneous determination that the motor is rotating in the forward / reverse rotation is made, and the normal value J is erroneously set to “0”. In this case, the difference (Pi−Pi−1) between the counter value Pi of the position counter P when the current edge occurs and the counter value Pi−1 of the position counter P when the edge occurs is “−4”. Therefore, the first correction value ΔP (= “J− (Pi−Pi−1)”), which is a deviation amount of the difference (Pi−Pi−1) from the normal value J, is set to “4”. Since the correction for the first correction value ΔP is added to the counter value of the position counter P, the counter value is erroneously increased by “4” as shown by the black arrow Y8 in FIG. It will be.
タイミングeは、電気角センサS3からのパルス信号の立ち上がりエッジに対応している。このタイミングeでは、上記ノイズの発生に起因して、電気角センサS1〜S3全てが図13(a)に示されるようにハイ信号「H」となり、電気角カウンタEのカウンタ値がそれまでの値である「5」に保持される。その結果、電気角センサS1〜S3からの信号における今回エッジ発生時のモータステータスが「hold」となり、正常値Jが「0」に設定される。また、タイミングfからタイミングeまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「0」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられることはない。 The timing e corresponds to the rising edge of the pulse signal from the electrical angle sensor S3. At this timing e, due to the generation of the noise, all the electrical angle sensors S1 to S3 become the high signal “H” as shown in FIG. It is held at the value “5”. As a result, the motor status when the current edge occurs in the signals from the electrical angle sensors S1 to S3 is “hold”, and the normal value J is set to “0”. Further, the difference (Pi−Pi−1), which is the change amount of the position counter P from the timing f to the timing e, is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “0”, and the correction for the first correction value ΔP is added to the counter value of the position counter P. There is no.
タイミングdは、上記ノイズの立ち下がりエッジに対応している。このタイミングdでは、上記ノイズの立ち下がりエッジに起因して、電気角センサS1〜S3からの信号がそれぞれ「H」、「L」、「H」となり、電気角カウンタEのカウンタ値が通常あり得ない変化、すなわち「5」から「3」へと逆方向に整数値を一つとばした変化を示すようになる。こうした今回のエッジ発生時の電気角カウンタEのカウンタ値の変化を逆方向への変化とみなし、今回のエッジ発生時のモータステータスを図中のハッチングで示されるように「ccw」に設定したとすると、前回エッジ発生時と今回エッジ発生時とのモータステータスはそれぞれ、「cw」、「ccw」となる。その結果、正常値Jが「0」に設定される。また、タイミングeからタイミングdまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「0」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられることはない。 Timing d corresponds to the falling edge of the noise. At this timing d, due to the falling edge of the noise, the signals from the electrical angle sensors S1 to S3 become “H”, “L”, and “H”, respectively, and the counter value of the electrical angle counter E is normal. It shows an unobtainable change, that is, a change in which an integer value is skipped by one in the opposite direction from “5” to “3”. The change of the counter value of the electrical angle counter E at the time of the occurrence of the current edge is regarded as a change in the reverse direction, and the motor status at the time of the occurrence of the current edge is set to “ccw” as indicated by hatching in the figure. Then, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “cw” and “ccw”, respectively. As a result, the normal value J is set to “0”. Further, the difference (Pi−Pi−1), which is the change amount of the position counter P from the timing e to the timing d, is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “0”, and the correction for the first correction value ΔP is added to the counter value of the position counter P. There is no.
従って、図11(b)に破線L4で示されるノイズの発生に起因して、電気角カウンタEのカウンタ値が図11(h)に破線L11で示されるように変化すると、図11(i)に黒矢印Y8で示される第1の補正値ΔP(=4)分の補正が誤って位置カウンタPのカウンタ値に加えられる。その結果、位置カウンタPのカウンタ値は、図中の破線L8で示されるように、ブラシレスモータ47の実際の回転角に対応する値(実線)からずれることになる。
Accordingly, when the counter value of the electrical angle counter E changes as shown by the broken line L11 in FIG. 11 (h) due to the generation of noise shown by the broken line L4 in FIG. 11 (b), FIG. 11 (i). The correction for the first correction value ΔP (= 4) indicated by the black arrow Y8 is erroneously added to the counter value of the position counter P. As a result, the counter value of the position counter P deviates from a value (solid line) corresponding to the actual rotation angle of the
また、ブラシレスモータの逆回転中、図11(b)の破線L1で示されるように、電気角センサS2からの信号にノイズが発生し、そのノイズが電気角センサS1からのパルス信号の立ち下がりエッジと重なると、上記ノイズの発生しているタイミングc,b,aでの電気角センサS1〜S3からの信号の出力パターンが正常時とは異なるものとなる。この正常時とは異なる出力パターンに応じて、電気角カウンタEのカウンタ値は、図11(h)に破線L12で示されるように誤って変化する。 Further, during reverse rotation of the brushless motor, noise is generated in the signal from the electrical angle sensor S2, as indicated by the broken line L1 in FIG. 11B, and the noise falls on the pulse signal from the electrical angle sensor S1. If it overlaps with the edge, the output pattern of the signals from the electrical angle sensors S1 to S3 at the timings c, b, a where the noise is generated becomes different from that at the normal time. The counter value of the electrical angle counter E changes erroneously as shown by the broken line L12 in FIG.
ここで、タイミングc,b,aでの電気角センサS1〜S3からの信号の出力パターン、電気角カウンタEのカウンタ値、電気角センサS1〜S3からの信号における前回のエッジ発生時と今回のエッジ発生時とのモータステータス、正常値J、差(Pi −Pi-1 )、及び、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)を、図13(b)に示す。なお、同図には、タイミングa後、最初に電気角センサS1〜S3からのパルス信号のエッジ発生するタイミングaでの電気角センサS1〜S3からの信号の出力パターン、電気角カウンタEのカウンタ値、前回エッジ発生時と今回エッジ発生時とのモータステータス、正常値J、差(Pi −Pi-1 )、及び、第1の補正値ΔPも示している。 Here, the output pattern of the signals from the electrical angle sensors S1 to S3 at the timings c, b, and a, the counter value of the electrical angle counter E, the time when the previous edge occurred in the signals from the electrical angle sensors S1 to S3, and the current time FIG. 13B shows the motor status, normal value J, difference (Pi−Pi−1), and first correction value ΔP (= “J− (Pi−Pi−1)”) when the edge is generated. Shown in In the figure, after the timing a, the output pattern of the signals from the electrical angle sensors S1 to S3 at the timing a when the edges of the pulse signals from the electrical angle sensors S1 to S3 first occur, Also shown are the value, the motor status between the occurrence of the previous edge and the current edge, the normal value J, the difference (Pi−Pi−1), and the first correction value ΔP.
タイミングcは、上記ノイズの立ち上がりエッジに対応している。このため、タイミングcでは、上記ノイズの立ち上がりエッジに起因して、電気角センサS1〜S3からの信号が全てハイ信号「H」となり、電気角カウンタEのカウンタ値がそれまでの値である「3」に保持される。その結果、電気角センサS1〜S3からの信号における今回エッジ発生時のモータステータスが「hold」となり、正常値Jが「0」に設定される。この場合、今回のエッジ発生時の位置カウンタPのカウンタ値Pi と前記のエッジ発生時の位置カウンタPのカウンタ値Pi-1 との差(Pi −Pi-1 )が「−4」であることから、正常値Jに対する上記差(Pi −Pi-1 )のずれ量である第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が「4」とされる。そして、この第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(i)に黒矢印Y10で示されるように「4」だけ大きくされることになる。 Timing c corresponds to the rising edge of the noise. For this reason, at timing c, due to the rising edge of the noise, all the signals from the electrical angle sensors S1 to S3 become the high signal “H”, and the counter value of the electrical angle counter E is the value up to that time. 3 ". As a result, the motor status when the current edge occurs in the signals from the electrical angle sensors S1 to S3 is “hold”, and the normal value J is set to “0”. In this case, the difference (Pi−Pi−1) between the counter value Pi of the position counter P when the current edge occurs and the counter value Pi−1 of the position counter P when the edge occurs is “−4”. Therefore, the first correction value ΔP (= “J− (Pi−Pi−1)”), which is a deviation amount of the difference (Pi−Pi−1) from the normal value J, is set to “4”. Since the correction for the first correction value ΔP is added to the counter value of the position counter P, the counter value is increased by “4” as indicated by the black arrow Y10 in FIG. become.
タイミングbは、電気角センサS1からのパルス信号の立ち下がりエッジに対応している。このタイミングbでは、上記ノイズの発生に起因して、図13(b)に示されるように電気角センサS1〜S3からの信号がそれぞれ「L」、「H」、「H」となり、電気角カウンタEのカウンタ値が通常あり得ない変化、すなわち「3」から「1」へと逆方向に整数値を一つとばした変化を示すようになる。こうした今回のエッジ発生時の電気角カウンタEのカウンタ値の変化を逆方向への変化とみなし、今回のエッジ発生時のモータステータスを図中のハッチングで示されるように「ccw」に設定したとすると、前回エッジ発生時と今回エッジ発生時とのモータステータスはそれぞれ、「ccw」、「ccw」となる。その結果、正常値Jが「−4」に設定される。また、タイミングcからタイミングbまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「−4」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(i)に黒矢印Y11で示されるように「−4」分だけ小さくされることになる。 Timing b corresponds to the falling edge of the pulse signal from the electrical angle sensor S1. At this timing b, due to the occurrence of the noise, as shown in FIG. 13B, the signals from the electrical angle sensors S1 to S3 become “L”, “H”, “H”, respectively, and the electrical angle The counter value of the counter E usually shows an impossible change, that is, a change in which the integer value is skipped by one in the opposite direction from “3” to “1”. The change of the counter value of the electrical angle counter E at the time of the occurrence of the current edge is regarded as a change in the reverse direction, and the motor status at the time of the occurrence of the current edge is set to “ccw” as indicated by hatching in the figure. Then, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “ccw” and “ccw”, respectively. As a result, the normal value J is set to “−4”. Further, the difference (Pi−Pi−1), which is the change amount of the position counter P from the timing c to the timing b, is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “−4”, and the correction for the first correction value ΔP is added to the counter value of the position counter P. Therefore, the counter value is decreased by “−4” as indicated by the black arrow Y11 in FIG.
タイミングaは、上記ノイズの立ち下がりエッジに対応している。このタイミングaでは、上記ノイズの立ち下がりエッジに起因して、電気角センサS1〜S3からの信号がそれぞれ「L」、「L」、「H」となり、電気角カウンタEのカウンタ値が「1」から「2」へと変化する。このため、前回エッジ発生時と今回エッジ発生時とのモータステータスがそれぞれ「ccw」、「cw」となり、それに基づき正常値Jが「0」に設定される。また、タイミングbからタイミングaまでの位置カウンタPのカウンタ値の変化量である差(Pi −Pi-1 )は「0」となる。このため、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)は「0」となり、当該第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられることはない。 Timing a corresponds to the falling edge of the noise. At this timing a, due to the falling edge of the noise, the signals from the electrical angle sensors S1 to S3 are “L”, “L”, and “H”, respectively, and the counter value of the electrical angle counter E is “1”. To "2". Therefore, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “ccw” and “cw”, respectively, and the normal value J is set to “0” based thereon. Further, the difference (Pi−Pi−1), which is the change amount of the position counter P from the timing b to the timing a, is “0”. For this reason, the first correction value ΔP (= “J− (Pi−Pi−1)”) is “0”, and the correction for the first correction value ΔP is added to the counter value of the position counter P. There is no.
タイミングzは、タイミングa後における最初の電気角センサS1〜S3からのパルス信号のエッジ発生に対応している。このタイミングzでは、電気角センサS1〜S3からの信号がそれぞれ「L」、「H」、「H」となり、電気角カウンタEのカウンタ値が「2」から「1」へと変化する。このため、前回エッジ発生時と今回エッジ発生時とのモータステータスがそれぞれ「cw」、「ccw」となる。その結果、モータ正逆回転反転中である旨の誤判断がなされ、正常値Jが誤って「0」に設定される。この場合、今回のエッジ発生時の位置カウンタPのカウンタ値Pi と前記のエッジ発生時の位置カウンタPのカウンタ値Pi-1 との差(Pi −Pi-1 )が「−4」であることから、第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が「4」とされる。そして、この第1の補正値ΔP分の補正が位置カウンタPのカウンタ値に加えられるため、当該カウンタ値が図11(i)に黒矢印Y12で示されるように誤って「4」だけ大きくされることになる。 The timing z corresponds to the generation of an edge of the pulse signal from the first electrical angle sensors S1 to S3 after the timing a. At this timing z, the signals from the electrical angle sensors S1 to S3 become “L”, “H”, and “H”, respectively, and the counter value of the electrical angle counter E changes from “2” to “1”. Therefore, the motor statuses at the time of the previous edge occurrence and the current edge occurrence are “cw” and “ccw”, respectively. As a result, an erroneous determination that the motor is rotating in the forward / reverse rotation is made, and the normal value J is erroneously set to “0”. In this case, the difference (Pi−Pi−1) between the counter value Pi of the position counter P when the current edge occurs and the counter value Pi−1 of the position counter P when the edge occurs is “−4”. Therefore, the first correction value ΔP (= “J− (Pi−Pi−1)”) is set to “4”. Since the correction for the first correction value ΔP is added to the counter value of the position counter P, the counter value is erroneously increased by “4” as indicated by the black arrow Y12 in FIG. It will be.
従って、図11(b)に破線L1で示されるノイズの発生に起因して、電気角カウンタEのカウンタ値が図11(h)に破線L12で示されるように変化すると、図11(i)に黒矢印Y10,Y11,Y14で示される第1の補正値ΔP分の補正が誤って位置カウンタPのカウンタ値に加えられる。その結果、位置カウンタPのカウンタ値は、図中の破線L9で示されるように、ブラシレスモータ47の実際の回転角に対応する値(実線)からずれることになる。
Accordingly, when the counter value of the electrical angle counter E changes as shown by the broken line L12 in FIG. 11 (h) due to the generation of noise shown by the broken line L1 in FIG. 11 (b), FIG. 11 (i). The correction for the first correction value ΔP indicated by the black arrows Y10, Y11, and Y14 is erroneously added to the counter value of the position counter P. As a result, the counter value of the position counter P deviates from a value (solid line) corresponding to the actual rotation angle of the
以上のように、電気角センサS1〜S3から出力される信号にノイズ(破線L1や破線L4)が発生し、そのノイズが電気角センサS1〜S3からのパルス信号のエッジと重なると、位置カウンタPのカウンタ値が第1の補正値ΔP分の誤補正により、ブラシレスモータ47の実際の回転角と対応しなくなる。その結果、位置カウンタP(正確にはストロークカウンタS)のカウンタ値に基づき検出されるブラシレスモータ47の実際の回転角が不正確になり、その回転角等に基づきブラシレスモータ47を駆動し、吸気バルブ9のバルブ特性を目標の特性に制御しようとしても、それを正しく行えなくなってエンジン運転への悪影響に繋がる。
As described above, when noise (broken line L1 or broken line L4) is generated in the signals output from the electrical angle sensors S1 to S3, and the noise overlaps with the edges of the pulse signals from the electrical angle sensors S1 to S3, the position counter. The counter value of P does not correspond to the actual rotation angle of the
なお、電気角センサS1〜S3から出力される信号にノイズが発生したとき、そのノイズが電気角センサS1〜S3からのパルス信号のエッジと重ならない場合もある。この場合は、同ノイズの立ち上がりエッジで位置カウンタPのカウンタ値が第1の補正値ΔP分の補正によりブラシレスモータ47の実際の回転角に対応する値からずれるものの、同ノイズの立ち下がりエッジでは位置カウンタPのカウンタ値に第1の補正値ΔP分の補正が上記と逆方向に加えられる。これにより、次回のパルス信号のエッジ発生時までには、位置カウンタPのカウンタ値における上記ずれが解消されることとなる。このため、電気角センサS1〜S3から出力される信号にノイズが発生しても、そのノイズが電気角センサS1〜S3からのパルス信号のエッジと重ならない場合には、上述したような不具合が生じることはない。
When noise is generated in the signals output from the electrical angle sensors S1 to S3, the noise may not overlap the edges of the pulse signals from the electrical angle sensors S1 to S3. In this case, the counter value of the position counter P deviates from a value corresponding to the actual rotation angle of the
次に、本実施形態にて行われる上述した不具合の抑制について説明する。
この実施形態では、電気角センサS1〜S3から信号にノイズが発生することに起因して、位置カウンタPのカウンタ値に対して第1の補正値ΔP分の誤補正が行われるとき、電気角カウンタEのカウンタ値が通常あり得ない変化を示すことに着目し、こうした変化が生じたときに第1の補正値ΔPによる誤補正を無効化する処理を実行する。
Next, suppression of the above-described problems performed in the present embodiment will be described.
In this embodiment, when the correction of the first correction value ΔP is performed on the counter value of the position counter P due to noise generated in the signals from the electric angle sensors S1 to S3, the electric angle Focusing on the fact that the counter value of the counter E indicates a change that cannot normally occur, processing for invalidating the erroneous correction by the first correction value ΔP is executed when such a change occurs.
具体的には、まず上記処理を実行可能とするため、電気角カウンタEのカウンタ値がモータ正回転方向への通常あり得ない変化である整数値を順方向に一つとばした変化を示したときのモータステータスとして「cw2」を追加する。更に、同じく電気角カウンタEのカウンタ値がモータ逆回転方向への通常あり得ない変化である整数値を逆方向に一つとばした変化を示したときのモータステータスとして「ccw2」を追加する。 Specifically, first, in order to enable the above processing to be executed, the counter value of the electrical angle counter E showed a change in which an integer value, which is a normal change in the motor forward rotation direction, is skipped by one in the forward direction. "Cw2" is added as the motor status. Furthermore, “ccw2” is added as the motor status when the counter value of the electrical angle counter E shows a change in which an integer value, which is a normal change in the reverse direction of the motor, is skipped by one in the reverse direction.
そして、これら「cw2」及び「ccw2」が追加されたモータステータスを用いて、ブラシレスモータ47の回転状態が正回転中、逆回転中、及び正逆回転反転中のいずれであるかの判断を行うようにする。
Then, using the motor status to which “cw2” and “ccw2” are added, it is determined whether the rotation state of the
すなわち、図14に示されるように、電気角センサS1〜S3からの信号における前回のエッジ発生時と今回のエッジ発生時とのモータステータスが共に「cw」や「cw2」といったモータ正回転を表すものである場合には、ブラシレスモータ47が正回転中である旨判断する。また、前回のエッジ発生時と今回のエッジ発生時とのモータステータスが共に「ccw」や「ccw2」といったモータ逆回転を表すものである場合には、ブラシレスモータ47が逆回転中である旨判断する。更に、前回のエッジ発生時と今回のエッジ発生時とでモータステータスがモータ正回転を表すもの(「cw」、「cw2」)と、モータ逆回転を表すもの(「ccw」及び「ccw2」)とで異なっていれば、ブラシレスモータ47の正逆回転反転中である旨判断する。
That is, as shown in FIG. 14, the motor statuses at the time of the previous edge generation and the current edge generation in the signals from the electrical angle sensors S1 to S3 both represent motor forward rotations such as “cw” and “cw2”. If it is, it is determined that the
また、前回のエッジ発生時と今回のエッジ発生時とのモータステータスに基づき設定される正常値Jについては、それらモータステータスに応じて図15の表に示されるように設定する。同図において、ハッチングで示される部分は、モータステータスとして「cw2」、「ccw2」を加えたことによる追加部分を示している。この図から分かるように、前回のエッジ発生時と今回のエッジ発生時とでモータステータスがモータ正回転を表すもの(「cw」、「cw2」)から同じくモータ正回転を表すもの(「cw」、「cw2」)へと変化している場合には、正常値Jが「4」に設定される。また、前回のエッジ発生時と今回のエッジ発生時とでモータステータスがモータ逆回転を表すもの(「ccw」及び「ccw2」)から同じくモータ逆回転を表すもの(「ccw」及び「ccw2」)へと変化している場合には、正常値Jが「−4」に設定される。更に、前回のエッジ発生時と今回のエッジ発生時とでモータステータスがモータ正回転を表すもの(「cw」、「cw2」)とモータ逆回転を表すもの(「ccw」及び「ccw2」)との間で変化している場合には、正常値Jが「0」に設定される。 Further, the normal value J set based on the motor status at the time of the previous edge generation and the current edge generation is set as shown in the table of FIG. 15 according to the motor status. In the figure, the hatched portion indicates an additional portion obtained by adding “cw2” and “ccw2” as the motor status. As can be seen from this figure, when the previous edge occurrence and the current edge occurrence, the motor status represents the motor forward rotation ("cw", "cw2") to the same motor forward rotation ("cw"). , “Cw2”), the normal value J is set to “4”. Also, the motor status indicating reverse motor rotation ("ccw" and "ccw2") from the time of the previous edge generation and the current edge generation to the same motor reverse rotation ("ccw" and "ccw2") When the value has changed to normal, the normal value J is set to “−4”. Furthermore, when the previous edge occurs and when the current edge occurs, the motor status indicates normal motor rotation (“cw”, “cw2”) and the reverse motor rotation (“ccw” and “ccw2”). When the value changes between the normal values J, the normal value J is set to “0”.
続いて、第1の補正値ΔPによる位置カウンタPの補正を無効にするための第2の補正値ΔPrを、図16に示されるように今回エッジ発生時のモータステータスに応じて設定する。 Subsequently, a second correction value ΔPr for invalidating the correction of the position counter P by the first correction value ΔP is set according to the motor status when the current edge occurs, as shown in FIG.
このように設定される第2の補正値ΔPrについては、今回エッジ発生時のモータステータスが「cw2」であるとき、電気角センサS1〜S3からのパルス信号のエッジ間において位置センサS4,S5から出力されるパルス信号のエッジ数nに関係して「n=(4)」とされる。ここで、上記モータステータスが「cw2」であるということは、今回エッジ発生時に電気角カウンタEのカウンタ値がモータ正回転方向への通常あり得ない変化を示したこと、すなわち当該カウンタ値が整数値を順方向に一つとばしての変化を示したことを意味する。また、同第2の補正値ΔPrについては、今回エッジ発生時のモータステータスが「ccw2」であるとき、上記エッジ数nに関係して「−n(=−4)」とされる。ここで、上記モータステータスが「ccw2」であるということは、今回エッジ発生時に電気角カウンタEのカウンタ値がモータ逆回転方向に通常あり得ない変化を示したこと、すなわち当該カウンタ値が整数値を逆方向に一つとばしての変化を示したことを意味する。なお、今回のエッジ発生時のモータステータスが上述した「cw2」及び「ccw2」以外であるときには、第2の補正値ΔPrは「0」となる。 With respect to the second correction value ΔPr set in this way, when the motor status at the time of the current edge generation is “cw2”, the position sensors S4 and S5 are used between the edges of the pulse signals from the electrical angle sensors S1 to S3. “N = (4)” in relation to the number of edges n of the output pulse signal. Here, the motor status being “cw2” indicates that the counter value of the electrical angle counter E has changed in the normal motor rotation direction at the time of the occurrence of the current edge, that is, the counter value is adjusted. It means that the numerical value is changed one by one in the forward direction. The second correction value ΔPr is set to “−n (= −4)” in relation to the number of edges n when the motor status at the time of occurrence of the current edge is “ccw2”. Here, that the motor status is “ccw2” indicates that the counter value of the electrical angle counter E is not normally changed in the reverse direction of the motor when the current edge occurs, that is, the counter value is an integer value. It means that the change is shown by skipping one in the opposite direction. If the motor status at the time of the current edge generation is other than “cw2” and “ccw2” described above, the second correction value ΔPr is “0”.
そして、このように設定される第2の補正値ΔPr分の補正を位置カウンタPのカウンタ値に加えることで、当該カウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれに影響を及ぼす第1の補正値ΔPによる補正を無効化することができるようになる。これにより、上記第1の補正値ΔPによる誤補正に起因して、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値からずれるのを回避することができる。
Then, by adding the correction for the second correction value ΔPr set in this way to the counter value of the position counter P, the deviation of the counter value from the value corresponding to the actual rotation angle of the
以上のように、モータステータスに「cw2」及び「ccw2」を加えること、正常値Jを図16に示されるように設定すること、及び、第2の補正値ΔPr分の補正を位置カウンタPのカウンタ値に加えることにより、図12及び図13の表を図17及び図18に示される表に変えることが可能になる。 As described above, adding “cw2” and “ccw2” to the motor status, setting the normal value J as shown in FIG. 16, and correcting the second correction value ΔPr by the position counter P By adding to the counter value, the tables in FIGS. 12 and 13 can be changed to the tables shown in FIGS. 17 and 18.
これらの図において、図12(a)及び(b)、並びに、図13(a)及び(b)の表はそれぞれ、図17(a)及び(b)、並びに、図18(a)及び(b)の表に対応している。なお、図17及び図18の表のモータステータスの欄におけるハッチング部分は、モータステータスに「cw2」及び「ccw2」を加えることにより、図12及び図13の表から変更された部分である。また、図17及び図18の表の第2の補正値ΔPrの欄は、図12及び図13の表に対し追加された部分である。 In these figures, the tables of FIGS. 12 (a) and 12 (b) and FIGS. 13 (a) and 13 (b) are shown in FIGS. 17 (a) and 17 (b) and FIGS. 18 (a) and (b), respectively. Corresponds to the table in b). The hatched portion in the motor status column of the tables of FIGS. 17 and 18 is a portion changed from the tables of FIGS. 12 and 13 by adding “cw2” and “ccw2” to the motor status. Also, the column of the second correction value ΔPr in the tables of FIGS. 17 and 18 is a portion added to the tables of FIGS. 12 and 13.
次に、位置カウンタPのカウンタ値に対し上記第2の補正値ΔPr分の補正を加えることの効果について、モータ正回転中である場合とモータ逆回転中である場合とを例に、図11のタイミングチャートに基づき、図17及び図18の表を併せ参照して、詳しく説明する。 Next, with respect to the effect of adding the correction of the second correction value ΔPr to the counter value of the position counter P, the case where the motor is rotating forward and the case where the motor is rotating backward is taken as an example in FIG. Based on these timing charts, detailed description will be given with reference to the tables of FIGS.
[モータ正回転中]
ブラシレスモータ47の正回転中、図11(b)に破線L1で示されるようにノイズが発生すると、第1の補正値ΔP分の誤補正により図11(g)に示される位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)に対し、破線L3で示されるように「−4」分だけ小さくなることは上述したとおりである。この場合、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれは、タイミングaでの第1の補正値ΔP分の誤補正(図11(g)の黒矢印Y1)による影響を受けたものということになる。
[During motor forward rotation]
If noise occurs as shown by the broken line L1 in FIG. 11B during the forward rotation of the
しかし、タイミングcでは、図17(a)に示されるように、今回エッジ発生時のモータステータスが「cw2」となり、それに基づき第2の補正値ΔPrが「4」に設定される。このときの第2の補正値ΔPrの「4」という値は、上記タイミングaでの第1の補正値ΔP(「−4」)の正負を反転させた値となる。なお、タイミングa,bにおける今回エッジ発生時のモータステータスについては、「cw2」や「ccw2」でないことから「0」に設定される。そして、上記のように設定された第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられることとなる。 However, at timing c, as shown in FIG. 17A, the motor status when the current edge is generated is “cw2”, and based on this, the second correction value ΔPr is set to “4”. The value “4” of the second correction value ΔPr at this time is a value obtained by inverting the sign of the first correction value ΔP (“−4”) at the timing a. The motor status when the current edge occurs at timings a and b is set to “0” because it is not “cw2” or “ccw2”. Then, the correction for the second correction value ΔPr set as described above is added to the counter value of the position counter P.
このように第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられると、それによってタイミングaでの第1の補正値ΔP分の位置カウンタPの補正が無効にされ、当該位置カウンタPのカウンタ値が図11(g)に白矢印Y2で示されるようにブラシレスモータ47の実際の回転角に対応する値(実線)へと変化する。これにより、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれが修正される。
Thus, when the correction for the second correction value ΔPr is added to the counter value of the position counter P, the correction of the position counter P for the first correction value ΔP at the timing a is invalidated, and the position The counter value of the counter P changes to a value (solid line) corresponding to the actual rotation angle of the
また、ブラシレスモータ47の正回転中、図11(b)に破線L4で示されるようにノイズが発生すると、第1の補正値ΔP分の誤補正により図11(g)に示される位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)に対し、破線L6で示されるように「−4」分だけ小さくなることも上述した。この場合、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれは、タイミングgでの第1の補正値ΔP分の誤補正(図11(g)の黒矢印Y5)による影響を受けたものということになる。
In addition, when noise is generated during the forward rotation of the
しかし、タイミングeでは、図17(b)に示されるように、今回エッジ発生時のモータステータスが「cw2」となり、それに基づき第2の補正値ΔPrが「4」に設定される。このときの第2の補正値ΔPrの「4」という値は、上記タイミングgでの第1の補正値ΔP(「−4」)の正負を反転させた値となる。なお、タイミングd,f,gにおける今回エッジ発生時のモータステータスについては、「cw2」や「ccw2」でないことから「0」に設定される。そして、上記のように設定された第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられることとなる。 However, at timing e, as shown in FIG. 17B, the motor status when the current edge is generated is “cw2”, and based on this, the second correction value ΔPr is set to “4”. The value “4” of the second correction value ΔPr at this time is a value obtained by inverting the sign of the first correction value ΔP (“−4”) at the timing g. The motor status at the time of occurrence of the current edge at timings d, f, and g is set to “0” because it is not “cw2” or “ccw2”. Then, the correction for the second correction value ΔPr set as described above is added to the counter value of the position counter P.
このように第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられると、当該カウンタ値が図11(g)の白矢印Y6で示されるようにブラシレスモータ47の実際の回転角に対応する値から「4」だけ増加し、その後は破線L7で示されるように推移する。これにより、タイミングgでの第1の補正値ΔP分の誤補正により位置カウンタPのカウンタ値が黒矢印Y7で示されるように「−4」分だけ減少したとき、当該カウンタ値はブラシレスモータ47の実際の回転角に対応する値(実線)と一致する。このことは言い換えれば、タイミングeでの第2の補正値ΔPr分の位置カウンタPの補正により、タイミングgでの第1の補正値ΔP分の位置カウンタPの補正が無効にされるということである。以上により、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれが修正される。
When the correction for the second correction value ΔPr is added to the counter value of the position counter P in this way, the counter value is an actual rotation angle of the
[モータ逆回転中]
ブラシレスモータ47の逆回転中、図11(b)に破線L4で示されるようにノイズが発生すると、第1の補正値ΔP分の誤補正により図11(g)に示される位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)に対し、破線L8で示されるように「4」だけ大きくなることは上述したとおりである。この場合、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれは、タイミングfでの第1の補正値ΔP分の誤補正(図11(g)の黒矢印Y8)による影響を受けたものということになる。
[Motor reverse rotation]
During the reverse rotation of the
しかし、タイミングdでは、図18(a)に示されるように、今回エッジ発生時のモータステータスが「ccw2」となり、それに基づき第2の補正値ΔPrが「−4」に設定される。このときの第2の補正値ΔPrの「−4」という値は、上記タイミングfでの第1の補正値ΔP(「4」)の正負を反転させた値となる。なお、タイミングf,eにおける今回エッジ発生時のモータステータスについては、「cw2」や「ccw2」でないことから「0」に設定される。そして、上記のように設定された第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられることとなる。 However, at timing d, as shown in FIG. 18A, the motor status when the current edge is generated becomes “ccw2”, and based on this, the second correction value ΔPr is set to “−4”. The value “−4” of the second correction value ΔPr at this time is a value obtained by inverting the sign of the first correction value ΔP (“4”) at the timing f. The motor status at the time of occurrence of the current edge at timings f and e is set to “0” because it is not “cw2” or “ccw2”. Then, the correction for the second correction value ΔPr set as described above is added to the counter value of the position counter P.
このように第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられると、それによってタイミングfでの第1の補正値ΔP分の位置カウンタPの補正が無効にされ、当該位置カウンタPのカウンタ値が図11(g)に白矢印Y9で示されるようにブラシレスモータ47の実際の回転角に対応する値(実線)へと変化する。これにより、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれが修正される。
Thus, when the correction for the second correction value ΔPr is added to the counter value of the position counter P, the correction of the position counter P for the first correction value ΔP at the timing f is invalidated, and the position The counter value of the counter P changes to a value (solid line) corresponding to the actual rotation angle of the
また、ブラシレスモータ47の逆回転中、図11(b)に破線L1で示されるようにノイズが発生すると、第1の補正値ΔP分の誤補正により図11(g)に示される位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値(実線)に対し、破線L9で示されるように「4」だけ大きくなることも上述した。この場合、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれは、タイミングzでの第1の補正値ΔP分の誤補正(図11(g)の黒矢印Y12)による影響を受けたものということになる。
Further, when noise occurs during reverse rotation of the
しかし、タイミングbでは、図18(b)に示されるように、今回エッジ発生時のモータステータスが「ccw2」となり、それに基づき第2の補正値ΔPrが「−4」に設定される。このときの第2の補正値ΔPrの「−4」という値は、上記タイミングzでの第1の補正値ΔP(「4」)の正負を反転させた値となる。なお、タイミングc,a,zにおける今回エッジ発生時のモータステータスについては、「cw2」や「ccw2」でないことから「0」に設定される。そして、上記のように設定された第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられることとなる。 However, at timing b, as shown in FIG. 18B, the motor status when the current edge is generated is “ccw2”, and based on this, the second correction value ΔPr is set to “−4”. The value “−4” of the second correction value ΔPr at this time is a value obtained by inverting the sign of the first correction value ΔP (“4”) at the timing z. The motor status at the time of occurrence of the current edge at timings c, a, and z is set to “0” because it is not “cw2” or “ccw2”. Then, the correction for the second correction value ΔPr set as described above is added to the counter value of the position counter P.
このように第2の補正値ΔPr分の補正が位置カウンタPのカウンタ値に加えられると、当該カウンタ値が図11(g)の白矢印Y13で示されるようにブラシレスモータ47の実際の回転角に対応する値から「−4」分だけ減少し、その後は破線L10で示されるように推移する。これにより、タイミングzでの第1の補正値ΔP分の誤補正により位置カウンタPのカウンタ値が黒矢印Y12で示されるように「4」だけ増加したとき、当該カウンタ値はブラシレスモータ47の実際の回転角に対応する値(実線)と一致する。このことは言い換えれば、タイミングbでの第2の補正値ΔPr分の位置カウンタPの補正により、タイミングzでの第1の補正値ΔP分の位置カウンタPの補正が無効にされるということである。以上により、位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれが修正される。
When the correction for the second correction value ΔPr is added to the counter value of the position counter P in this way, the counter value is an actual rotation angle of the
次に、第2の補正値ΔPrの算出手順、及び、その第2の補正値ΔPrによる位置カウンタの補正手順について、位置カウンタ補正無効化ルーチンを示す図19のフローチャートを参照して説明する。この位置カウンタ補正無効化ルーチンは、電子制御装置50を通じて、位置センサS4,S5からのパルス信号のエッジ間隔に対応する時間間隔よりも短い間隔をもって周期的に実行される。
Next, the procedure for calculating the second correction value ΔPr and the procedure for correcting the position counter using the second correction value ΔPr will be described with reference to the flowchart of FIG. 19 showing the position counter correction invalidation routine. This position counter correction invalidation routine is periodically executed through the
同ルーチンにおいては、電気角センサS1〜S3からの信号にエッジが発生したとき(S201:YES)、今回のエッジ発生時のモータステータスが「cw2」であるか否かの判断(S202)、及び、今回のエッジ発生時のモータステータスが「ccw2」であるか否かの判断(S203)が行われる。 In the routine, when an edge occurs in the signals from the electrical angle sensors S1 to S3 (S201: YES), it is determined whether or not the motor status at the time of the current edge generation is “cw2” (S202); Then, it is determined whether or not the motor status at the time of the current edge generation is “ccw2” (S203).
そして、今回のエッジ発生時のモータステータスが「cw2」であれば(S202:YES)、すなわち電気角カウンタEのカウンタ値がモータ正回転方向への通常あり得ない変化である整数値を順方向に一つとばした変化を示した旨判断され、第2の補正値ΔPrが上述したエッジ数nに関係して「n(=4)」に設定される(S204)。一方、今回のエッジ発生時のモータステータスが「ccw2」であれば(S203:YES)、電気角カウンタEのカウンタ値がモータ逆回転方向への通常あり得ない変化である整数値を逆方向に一つとばした変化を示した旨判断され、第2の補正値ΔPrが上述したエッジ数nに関係して「−n(=−4)」に設定される(S205)。更に、今回のエッジ発生時のモータステータスが「cw2」と「ccw2」とのいずれでもなければ(S202、S203で共にNO)、第2の補正値ΔPrは「0」に設定される(S206)。 If the motor status at the time of occurrence of the current edge is “cw2” (S202: YES), that is, the counter value of the electrical angle counter E is changed to an integer value that is a normally impossible change in the motor forward rotation direction. The second correction value ΔPr is set to “n (= 4)” in relation to the number of edges n described above (S204). On the other hand, if the motor status at the time of the occurrence of the current edge is “ccw2” (S203: YES), the counter value of the electrical angle counter E is changed to an integer value that is a change that is not normally possible in the motor reverse rotation direction. It is determined that one change has been shown, and the second correction value ΔPr is set to “−n (= −4)” in relation to the number of edges n described above (S205). Further, if the motor status at the time of the current edge generation is neither “cw2” nor “ccw2” (both NO in S202 and S203), the second correction value ΔPr is set to “0” (S206). .
このように第2の補正値ΔPrの設定が行われた後、位置カウンタPのカウンタ値に対し当該第2の補正値ΔPr分の補正が加えられる(S207)。これにより、位置カウンタPに対する第1の補正値ΔPの誤補正が無効化され、その誤補正に起因した位置カウンタPのカウンタ値におけるブラシレスモータ47の実際の回転角に対応した値からのずれが修正される。
After the second correction value ΔPr is set in this way, correction for the second correction value ΔPr is added to the counter value of the position counter P (S207). Thereby, the erroneous correction of the first correction value ΔP with respect to the position counter P is invalidated, and the deviation of the counter value of the position counter P from the value corresponding to the actual rotation angle of the
以上詳述した本実施形態によれば、以下に示す効果が得られるようになる。
(1)電気角センサS1〜S3からのパルス信号のエッジ発生毎に、前回のエッジ発生時の位置カウンタPのカウンタ値Pi-1 と今回のエッジ発生時の位置カウンタPのカウンタ値Pi との差(Pi −Pi-1 )が算出される。この差(Pi −Pi-1 )には、位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角に対応する値からずれた状態になったとき、当該ずれが反映されることとなる。すなわち、そのずれの分だけ上記差(Pi −Pi-1 )が正常値Jからずれることになる。従って、正常値Jに対する差(Pi −Pi-1 )のずれ量「J−(Pi −Pi-1 )」を第1の補正値ΔPとし、当該第1の補正値ΔP分の補正を位置カウンタPのカウンタ値に加えることで、そのカウンタ値におけるブラシレスモータ47の実際の回転角に対応する値からのずれを無くすことができる。また、第1の補正値ΔPを求めるための差(Pi −Pi-1 )を算出するのには、ブラシレスモータ47の駆動に用いられる電気角センサS1〜S3があればよく、上記ずれを無くすために新たなセンサ等を設ける必要はない。
According to the embodiment described in detail above, the following effects can be obtained.
(1) Every time the edge of the pulse signal from the electrical angle sensors S1 to S3 is generated, the counter value Pi-1 of the position counter P when the previous edge is generated and the counter value Pi of the position counter P when the current edge is generated The difference (Pi-Pi-1) is calculated. This difference (Pi−Pi−1) is reflected when the counter value of the position counter P is deviated from a value corresponding to the actual rotation angle of the
(2)電気角センサS1〜S3からの信号にノイズが発生し、そのノイズが他の電気角センサS1〜S3からのパルス信号のエッジと重なると、当該ノイズを電気角センサS1〜S3からのパルス信号と誤認し、電気角カウンタEのカウンタ値が誤った値に変化する。このように電気角カウンタEのカウンタ値が誤った値に変化すると、同カウンタ値に基づき判断されるブラシレスモータ47の回転状態が実際の状態とは異なるものとなり、そのモータ回転状態に応じて設定される正常値Jが実際のモータ回転状態とは対応しなくなる。そして、上述した正常値Jの異常に起因して、当該正常値Jに対する上記差(Pi −Pi-1 )のずれ量「J−(Pi −Pi-1 )」である第1の補正値ΔPが誤った値となる。この第1の補正値ΔPにより位置カウンタPのカウンタ値が誤補正されると、当該カウンタ値がブラシレスモータ47の実際の回転角に対応する値からずれることになる。その結果、位置カウンタPのカウンタ値に基づき検出されるブラシレスモータ47の回転角が不正確な値になる。
(2) When noise is generated in the signals from the electrical angle sensors S1 to S3, and the noise overlaps with the edges of the pulse signals from the other electrical angle sensors S1 to S3, the noise is transmitted from the electrical angle sensors S1 to S3. It is mistaken for a pulse signal, and the counter value of the electrical angle counter E changes to an incorrect value. When the counter value of the electrical angle counter E changes to an incorrect value in this way, the rotational state of the
しかし、電気角センサS1〜S3の信号でのノイズ発生により電気角カウンタEが誤った値に変化し、それに起因して位置カウンタPのカウンタ値がブラシレスモータ47の実際の回転角からずれる場合には、電気角カウンタEのカウンタ値が通常あり得ない変化を示すことになる。こうした電気角カウンタEのカウンタ値の変化に着目し、その変化が生じた旨判断されたときには第1の補正値ΔPによる誤補正を無効化するための処理が実行される。詳しくは、電気角カウンタEのカウンタ値の通常あり得ない変化として、同カウンタ値が整数値を一つとばした変化を示し、モータステータスが「cw2」や「ccw2」となったとき、それに基づき第1の補正値ΔPによる誤補正を無効化するための第2の補正値ΔPrが設定される。そして、当該第2の補正値ΔPrの補正が位置カウンタPのカウンタ値に加えられる。これにより、位置カウンタPのカウンタ値に対する上記第1の補正値ΔP分の誤補正が無効化され、そのカウンタ値がブラシレスモータ47の実際の回転角に対応する値からずれるのを回避することができる。従って、位置カウンタP(正確にはストロークカウンタS)のカウンタ値に基づき検出されるブラシレスモータ47の回転角が不正確な値になるのを回避することができる。そして、位置カウンタPのカウンタ値に基づき検出されるブラシレスモータ47の回転角に基づき同モータ47を駆動し、バルブリフト可変機構14を駆動制御しようとするとき、それを正しく行えなくなってエンジン運転への悪影響に繋がるということもなくなる。
However, when the electrical angle counter E changes to an incorrect value due to the occurrence of noise in the signals of the electrical angle sensors S1 to S3, the counter value of the position counter P deviates from the actual rotation angle of the
(3)ブラシレスモータ47の正回転中、上記ノイズの発生に起因して電気角カウンタEのカウンタがモータ回転方向とは逆方向への変化を示したとき、例えば図17(a)のタイミングaや図17(b)のタイミングgでは、正常値Jが本来ならば上述したエッジ数nに関係して「4」に設定されるべきところを「0」に設定されてしまう。その結果、正常値Jに対する差(Pi −Pi-1 )のずれ量である第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が、図17(a)のタイミングaや図17(b)のタイミングgにおいて、本来ならば「0」であるのに誤って「−4」とされた状態で位置カウンタPの補正に用いられ、当該位置カウンタPのカウンタ値が誤補正される。しかし、電気角カウンタEのカウンタ値が順方向(モータ正回転方向)に整数値を一つとばした変化を示し、例えば図18(a)のタイミングcや図17(b)のタイミングeのようにモータステータスが「cw2」になると、第2の補正値ΔPrが「4」とされて位置カウンタPの補正に用いられる。このときの第2の補正値ΔPrは、上述したエッジ数nに関係して「n(=4)」に設定された値であり、かつ、上記誤補正を生じさせる第1の補正値ΔPの正負を反転させた値である。従って、第2の補正値ΔPr分の補正を位置カウンタPのカウンタ値に加えることで、第1の補正値ΔPによる位置カウンタPの誤補正を的確に無効にすることができる。
(3) During forward rotation of the
また、ブラシレスモータ47の逆回転中、上記ノイズの発生に起因して電気角カウンタEのカウンタがモータ回転方向とは逆方向への変化を示したとき、例えば図18(a)のタイミングfや図18(b)のタイミングzでは、正常値Jが本来ならば上述したエッジ数nに関係して「−4」に設定されるべきところを「0」に設定されてしまう。その結果、正常値Jに対する差(Pi −Pi-1 )のずれ量である第1の補正値ΔP(=「J−(Pi −Pi-1 )」)が、図18(a)のタイミングfや図18(b)のタイミングzにおいて、本来ならば「0」であるのに誤って「4」とされた状態で位置カウンタPの補正に用いられ、当該位置カウンタPのカウンタ値が誤補正される。しかし、電気角カウンタEのカウンタ値が正方向に整数値を一つとばした変化を示し、例えば図18(a)のタイミングdや図18(b)のタイミングbのようにモータステータスが「ccw2」になると、第2の補正値ΔPrが「−4」とされて位置カウンタPの補正に用いられる。このときの第2の補正値ΔPrは、上述したエッジ数nに関係して「−n=(−4)」に設定された値であり、かつ、上記誤補正を生じさせる第1の補正値ΔPの正負を反転させた値である。従って、第2の補正値ΔPr分の補正を位置カウンタPのカウンタ値に加えることで、第1の補正値ΔPによる位置カウンタPの誤補正を的確に無効にすることができる。
Further, during the reverse rotation of the
(4)第1の補正値ΔPによる位置カウンタPの誤補正を無効化すべく、第2の補正値ΔPrを「n(=4)」と「−n=(−4)」とのいずれかに設定する際、その設定についてはモータステータスが「cw2」であるか「ccw2」であるかに応じて行われる。この「cw2」は、電気角カウンタEのカウンタ値のモータ正回転方向への通常あり得ない変化である整数値を順方向に一つとばした変化の発生を意味するものである。また、「ccw2」は、電気角カウンタEのカウンタ値のモータ逆回転方向への通常あり得ない変化である整数値を逆方向に一つとばした変化の発生を意味するものである。従って、モータステータスが「cw2」であることに基づき第2の補正値ΔPrを「n(=4)」に設定し、モータステータスが「ccw2」であることに基づき第2の補正値ΔPrを「−n=(−4)」に設定することで、第2の補正値ΔPrにおける「n(=4)」と「−n=(−4)」とのいずれかへの設定を適切に行うことができる。 (4) In order to invalidate the erroneous correction of the position counter P by the first correction value ΔP, the second correction value ΔPr is set to either “n (= 4)” or “−n = (− 4)”. When setting, the setting is performed depending on whether the motor status is “cw2” or “ccw2”. This “cw2” means the occurrence of a change in which the integer value, which is a change that is not normally possible in the forward rotation direction of the electric angle counter E, is skipped by one in the forward direction. Further, “ccw2” means the occurrence of a change in which the integer value, which is a normally impossible change in the motor reverse rotation direction, of the electric angle counter E is skipped in the reverse direction. Therefore, the second correction value ΔPr is set to “n (= 4)” based on the fact that the motor status is “cw2”, and the second correction value ΔPr is set to “n (= 4)” based on the fact that the motor status is “ccw2”. By appropriately setting “−n = (− 4)”, the second correction value ΔPr is appropriately set to “n (= 4)” or “−n = (− 4)”. Can do.
なお、上記実施形態は、例えば以下のように変更することもできる。
・電気角センサ数の変更や同センサの検出対象である多極マグネットの極数の変更を通じて、各電気角センサからのパルス信号のエッジ間隔を変更することも可能である。
In addition, the said embodiment can also be changed as follows, for example.
It is also possible to change the edge interval of the pulse signal from each electrical angle sensor through a change in the number of electrical angle sensors or a change in the number of poles of a multipolar magnet that is a detection target of the sensor.
・位置センサ数の変更や同センサの検出対象である多極マグネットの極数の変更を通じて各位置センサからのパルス信号のエッジ間隔を変更することも可能である。
・電気角カウンタEを「0」〜「m」の範囲内の連続した各整数値がカウンタ値として当てはめられるものとし、上記「m」を「5」に設定したが、その値を適宜変更することも可能である。この場合、電気角センサの数や位置、及び、それら電気角センサの検出対象である多極マグネットの極数が適宜変更されることとなる。
It is also possible to change the edge interval of the pulse signal from each position sensor through changing the number of position sensors or changing the number of poles of a multipolar magnet that is a detection target of the sensors.
The electric angle counter E is assumed that each successive integer value within the range of “0” to “m” is applied as the counter value, and the above “m” is set to “5”, but the value is changed as appropriate. It is also possible. In this case, the number and position of the electrical angle sensors and the number of poles of the multipolar magnet that is a detection target of the electrical angle sensors are appropriately changed.
・電気角センサS1〜S3からのパルス信号のエッジ間において位置センサS4,S5から出力されるパルス信号のエッジ数nを「4」に設定したが、その値についてはブラシレスモータ47の回転角検出精度を確保し得る位置センサS4,S5からのパルス信号のエッジ間隔に対応する値であればよく、「2」以上の整数値に適宜変更可能である。このようにエッジ数nを変更する際には、位置カウンタの数や位置、及び、それら位置センサの検出対象である多極マグネットの極数が適宜変更されることとなる。
The number of edges n of the pulse signals output from the position sensors S4 and S5 is set to “4” between the edges of the pulse signals from the electrical angle sensors S1 to S3, but the rotation angle of the
・ブラシレスモータ47と一体回転する多極マグネットの磁気に応じてパルス信号を出力する位置センサS4,S5を設ける代わりに、ブラシレスモータ47の回転に伴いパルス信号を出力する他のセンサ、例えば光学式のセンサを設けることも考えられる。この場合、ブラシレスモータ47と一体回転するスリット付円板の厚さ方向側方にそれぞれ発光素子と受光素子を備える光学式のセンサを周方向に複数設け、ブラシレスモータ47の回転時に当該各センサからパルス信号を出力させるようにすることが考えられる。この場合の各センサからのパルス信号の出力パターンについては、スリット付円板におけるスリットのパターン、及び、光学式のセンサの数や位置によって調整される。
Instead of providing position sensors S4 and S5 that output a pulse signal according to the magnetism of a multipolar magnet that rotates integrally with the
・上記実施形態では、ブラシレスモータ47の回転運動をコントロールシャフト16の軸方向への運動に変換し、そのコントロールシャフト16の軸方向変位を通じて駆動されるバルブリフト可変機構を例示したが、本発明のバルブリフト可変機構はこれに限定されない。例えば、ブラシレスモータ47の回転運動を直接的に受けて駆動されるバルブリフト可変機構を採用することも可能である。
In the above embodiment, the variable valve lift mechanism is illustrated that converts the rotational motion of the
・バルブリフト可変機構14を駆動するブラシレスモータ47に本発明を適用したが、それ以外の各種機構を駆動するブラシレスモータに本発明を適用することもできる。
-Although this invention was applied to the
1…エンジン、2…シリンダヘッド、3…シリンダブロック、5…ピストン、6…燃焼室、7…吸気通路、8…排気通路、9…吸気バルブ、10…排気バルブ、11…吸気カムシャフト、11a…吸気カム、12…排気カムシャフト、12a…排気カム、14…バルブリフト可変機構、15…ロッカシャフト、16…コントロールシャフト、17…入力アーム、18…出力アーム、19…ローラ、20…コイルスプリング、21…ロッカアーム、22…ラッシュアジャスタ、23…ローラ、24…バルブスプリング、47…ブラシレスモータ、48…変換機構、50…電子制御装置(駆動装置、算出手段、設定手段、第1の補正手段、第2の補正手段)、51…アクセルポジションセンサ、52…スロットルポジションセンサ、53…エアフローメータ、54…クランクポジションセンサ、55…イグニッションスイッチ、56…不揮発性メモリ、S1〜S3…電気角センサ、S4,S5…位置センサ。
DESCRIPTION OF
Claims (5)
各電気角センサから出力されるパルス信号のエッジ発生毎に、今回のエッジ発生時における位置カウンタのカウンタ値Pi と前回のエッジ発生時における位置カウンタのカウンタ値Pi-1 との差(Pi −Pi-1 )を算出する算出手段と、
前記電気角カウンタのカウンタ値の変化に基づき前記ブラシレスモータの回転状態が正回転中、逆回転中、及び正逆回転反転中のうちのいずれであるかを判断し、そのブラシレスモータの回転状態に応じて前記差(Pi −Pi-1 )の正常時の値である正常値を可変設定する設定手段と、
前記正常値に対する前記差(Pi −Pi-1 )のずれ量を第1の補正値とし、当該第1の補正値分の補正を前記位置カウンタのカウンタ値に加える第1の補正手段と、
前記各電気角センサから出力されるパルス信号のエッジ発生時、前記電気角カウンタのカウンタ値が通常あり得ない変化を示したとき、前記第1の補正手段による補正を無効にするための第2の補正値を設定し、当該第2の補正値分の補正を前記位置カウンタのカウンタ値に加える第2の補正手段と、
を備えることを特徴とするモータ制御装置。 According to the output pattern of the pulse signal output from the brushless motor that is driven to rotate within a predetermined rotation angle range, and the phase of the plurality of electrical angle sensors provided on the motor as the brushless motor rotates. A drive device for driving the motor by changing the counter value of the electric angle counter and switching the energized phase of the brushless motor based on the counter value of the electric angle counter, and each electric angle sensor as the brushless motor rotates. A position sensor that outputs a pulse signal having an edge interval shorter than the edge interval of the pulse signal output from the position sensor, and based on the counter value of the position counter that counts the edge of the pulse signal from the position sensor, the brushless motor In the motor control device that detects the rotation angle,
Every time an edge of a pulse signal output from each electrical angle sensor occurs, the difference (Pi−Pi) between the counter value Pi of the position counter when the current edge occurs and the counter value Pi-1 of the position counter when the previous edge occurs -1) calculating means,
Based on the change of the counter value of the electrical angle counter, it is determined whether the rotation state of the brushless motor is normal rotation, reverse rotation, or normal / reverse rotation inversion, and the brushless motor rotation state is determined. In response, setting means for variably setting a normal value which is a normal value of the difference (Pi-Pi-1);
First correction means for setting a deviation amount of the difference (Pi−Pi−1) with respect to the normal value as a first correction value, and adding a correction corresponding to the first correction value to the counter value of the position counter;
When an edge of the pulse signal output from each electrical angle sensor is generated, a second value for invalidating the correction by the first correction means when the counter value of the electrical angle counter shows a change that is not normally possible. Second correction means for setting a correction value for the second correction value and adding a correction for the second correction value to the counter value of the position counter;
A motor control device comprising:
請求項1記載のモータ制御装置。 The second correction means obtains a value obtained by inverting the sign of the first correction value that affects the deviation of the counter value of the position counter from the value corresponding to the actual rotation angle of the brushless motor. The motor control device according to claim 1, wherein the motor control device is set as a correction value.
前記第2の補正手段は、前記電気角カウンタのカウンタ値がモータ正回転方向についての通常あり得ない変化を示したとき前記第2の補正値を「n」に設定し、前記電気角カウンタのカウンタ値がモータ逆回転方向についての通常あり得ない変化を示したとき前記第2の補正値を「−n」に設定するものである
請求項1記載のモータ制御装置。 When the number of edges of the pulse signal output from the position sensor is “n” between the edges of the pulse signal output from each of the electrical angle sensors, the setting means sets the previous edge from the electrical angle sensor. It is determined that the brushless motor is rotating forward based on the fact that the counter value of the electrical angle counter shows a change in the motor forward rotation direction both at the time of occurrence and at the occurrence of the current edge, and the normal value is set to “n”. And the counter value of the brushless motor is changed based on the fact that the counter value of the electric angle counter indicates a change in the reverse direction of the motor both when the previous edge is generated from the electric angle sensor and when the current edge is generated. The normal value is set to “−n” by judging that the motor is rotating, and the counter of the electrical angle counter at the time of the previous edge generation and the current edge generation from the electrical angle sensor The normal value is set to “0” by determining that the brushless motor is in the reverse rotation inversion based on the difference between the change in the motor forward rotation direction and the change in the motor reverse rotation direction. Is what
The second correction means sets the second correction value to “n” when the counter value of the electric angle counter indicates a change that is not possible in the normal motor rotation direction, and the electric angle counter The motor control device according to claim 1, wherein the second correction value is set to “−n” when the counter value indicates a change that is not possible in the reverse direction of the motor.
前記第2の補正手段は、前記電気角カウンタのカウンタ値が順方向に整数値を一つとばして変化したことに基づき当該カウンタ値がモータ正回転方向について通常あり得ない変化を示したと判断し、前記電気角カウンタのカウンタ値が逆方向に整数値を一つとばして変化したことに基づき当該カウンタ値がモータ逆回転方向について通常あり得ない変化を示したと判断するものである
請求項3記載のモータ制御装置。 When the brushless motor is rotating forward, the electrical angle counter uses each successive integer value within the range of “0” to “m” as a counter value in the forward direction according to the output pattern of the pulse signal from each electrical angle sensor. When applying the reverse rotation of the brushless motor, each successive integer value within the range of “0” to “m” is applied as a counter value in the reverse direction according to the output pattern of the pulse signal from each electrical angle sensor. ,
The second correction means determines that the counter value indicates a change that is not normally possible in the forward motor rotation direction based on a change in the counter value of the electrical angle counter by skipping an integer value in the forward direction. The counter value of the electrical angle counter is determined to have changed in the reverse direction of the motor based on the fact that the counter value has changed by skipping an integer value in the reverse direction. Motor control device.
請求項1〜4のいずれか一項に記載のモータ制御装置。 The motor control device according to any one of claims 1 to 4, wherein the brushless motor is used to drive a variable valve lift mechanism that varies a valve characteristic of an engine valve of an internal combustion engine.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005218933A JP2007037335A (en) | 2005-07-28 | 2005-07-28 | Motor controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005218933A JP2007037335A (en) | 2005-07-28 | 2005-07-28 | Motor controller |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007037335A true JP2007037335A (en) | 2007-02-08 |
Family
ID=37795892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005218933A Pending JP2007037335A (en) | 2005-07-28 | 2005-07-28 | Motor controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007037335A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012029547A (en) * | 2010-06-23 | 2012-02-09 | Denso Corp | Motor control device for running vehicle, motor control system for vehicle, memory medium, motor detection angle correction method, and rotation detection device |
-
2005
- 2005-07-28 JP JP2005218933A patent/JP2007037335A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012029547A (en) * | 2010-06-23 | 2012-02-09 | Denso Corp | Motor control device for running vehicle, motor control system for vehicle, memory medium, motor detection angle correction method, and rotation detection device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4655036B2 (en) | Control device for variable valve mechanism | |
JP4736601B2 (en) | Motor control device | |
JP4525797B2 (en) | Abnormality judgment device for valve characteristic change mechanism | |
JP4797768B2 (en) | Motor control device | |
JP2007043853A (en) | Motor controller | |
JP4692339B2 (en) | Control device for variable valve mechanism | |
JP4888160B2 (en) | Variable valve operating device for internal combustion engine | |
JP4852992B2 (en) | Control device for internal combustion engine | |
JP2007037335A (en) | Motor controller | |
JP2009299543A (en) | Abnormality detection device for valve system | |
JP4816520B2 (en) | Control device for variable valve mechanism | |
JP2007085328A (en) | Variable valve system for internal combustion engine | |
JP4645339B2 (en) | Motor control device | |
JP4715536B2 (en) | Maximum lift control device for engine valves | |
JP2007162646A (en) | Motor control device | |
JP2007185006A (en) | Controller of brushless motor | |
JP2007185046A (en) | Motor controller | |
JP2007051602A (en) | Variable valve gear for internal combustion engine | |
JP4400648B2 (en) | Diagnostic equipment | |
US20130085654A1 (en) | Control apparatus and control method for variable mechanism | |
JP2007312478A (en) | Motor controller | |
JP2008223486A (en) | Control system of internal combustion engine | |
JP5015974B2 (en) | Control device for variable valve mechanism | |
JP2007182764A (en) | Variable valve gear for internal combustion engine | |
JP5648538B2 (en) | Control device for variable lift amount mechanism |