JP2641492B2 - Rotational angle position detection method for rotating body - Google Patents

Rotational angle position detection method for rotating body

Info

Publication number
JP2641492B2
JP2641492B2 JP10627688A JP10627688A JP2641492B2 JP 2641492 B2 JP2641492 B2 JP 2641492B2 JP 10627688 A JP10627688 A JP 10627688A JP 10627688 A JP10627688 A JP 10627688A JP 2641492 B2 JP2641492 B2 JP 2641492B2
Authority
JP
Japan
Prior art keywords
angle position
count value
pulse
rotating body
stage
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.)
Expired - Fee Related
Application number
JP10627688A
Other languages
Japanese (ja)
Other versions
JPH01277662A (en
Inventor
真司 十万
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP10627688A priority Critical patent/JP2641492B2/en
Publication of JPH01277662A publication Critical patent/JPH01277662A/en
Application granted granted Critical
Publication of JP2641492B2 publication Critical patent/JP2641492B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Ignition Installations For Internal Combustion Engines (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Description

【発明の詳細な説明】 技術分野 本発明は、内燃機関のクランクシャフト等の回転体の
回転角度位置を検出する方法に関する。
Description: TECHNICAL FIELD The present invention relates to a method for detecting a rotational angle position of a rotating body such as a crankshaft of an internal combustion engine.

背景技術 回転体の回転基準位置を判別する為の装置が、例え
ば、米国特許第4553426号の明細書に開示されている。
該明細書記載の装置においては、回転体の回転方向にお
いて一部の欠落部を除き等角度間隔をもって磁性突起等
の被検知子を設け、被検知子が近傍を通過する毎に所定
レベルの出力を発する検知素子を被検知子の回転軌跡近
傍に配置し、検知素子の発する出力毎にカウンタのカウ
ント値をインクリメントし、被検知子の欠落部を検知素
子が検知したときカウンタのカウント値をリセットする
こととして、カウンタのカウント値が被検知子の欠落部
を検知素子が検知したときに対応すべきカウント値であ
るか否かを判別して正確な回転体の回転基準位置を把握
し得るよう構成されている。
BACKGROUND ART An apparatus for determining a rotation reference position of a rotating body is disclosed in, for example, US Pat. No. 4,553,426.
In the apparatus described in the specification, a detector such as a magnetic projection is provided at equal angular intervals except for some missing portions in the rotation direction of the rotating body, and a predetermined level of output is provided each time the detector passes in the vicinity. The detection element that emits a signal is placed near the rotation locus of the detected element, the count value of the counter is incremented for each output generated by the detection element, and the counter value is reset when the detection element detects a missing part of the detected element. In other words, it is possible to determine whether or not the count value of the counter is a count value to be dealt with when the detecting element detects the missing part of the detected element, so that an accurate rotation reference position of the rotating body can be grasped. It is configured.

しかし乍ら、上記の装置においては、回転体が静止し
ている状態から回転せしめられる場合に、被検知子の欠
落部が検知素子近傍を通過直後の静止状態から回転せし
められると、回転体の回転基準位置は回転体が2回転し
なければ求められなかった。
However, in the above apparatus, when the rotating body is rotated from a stationary state, and when the missing portion of the detected element is rotated from the stationary state immediately after passing through the vicinity of the sensing element, the rotating body is rotated. The rotation reference position cannot be obtained unless the rotating body makes two rotations.

発明の概要 そこで、本発明は上述の事情に鑑み、回転体が回転を
始めてからその基準回転角度位置が検出されるまでに必
要とされる回転体の回転量が少ない回転体の回転角度位
置検出方法を提供することを目的としている。
SUMMARY OF THE INVENTION Accordingly, in view of the above-described circumstances, the present invention provides a method of detecting a rotation angle position of a rotating body, which requires a small amount of rotation of the rotating body from when the rotating body starts rotating until its reference rotation angle position is detected. It is intended to provide a way.

上記の目的を達成する為、本発明は、エンジンのクラ
ンク軸と共に回転する回転体にその回転方向において複
数の被検知部を相隣り合う被検知部間の角度間隔のうち
の1つが最大若しくは最小となるよう形成し、前記被検
知部の回転軌跡近傍に被検知部が近傍を通過する毎にパ
ルスを発生する検知素子を設け、前記パルスの発生間隔
を計時手段により計測し、前記発生間隔の前回値と今回
値との比を算出し前記回転体の1回転毎に得られる前記
比の中の最大値若しくは最小値を求めこれに応じて前記
クランク軸の基準回転角度位置を検出して、検出した基
準回転角度位置に基づいて前記エンジンのクランク角度
位置を検出するクランク角度位置検出方法であって、 前記回転体の回転速度が所定低回転速度を下回った場
合には、前記基準回転角度位置及び前記クランク角度位
置に関する情報を一旦消去した後前記パルスの次の検出
を待って前記基準回転角度位置及び前記クランク角度位
置の検出を再開することを特徴とする回転体の回転角度
位置検出方法を提供する。
In order to achieve the above object, the present invention provides a rotating body which rotates together with a crankshaft of an engine, wherein one of a plurality of detected parts in an angular direction between adjacent detected parts in a rotational direction is maximum or minimum. A detection element that generates a pulse each time the detected part passes near the rotation locus of the detected part, and measures the generation interval of the pulse by time-measuring means. Calculating the ratio between the previous value and the current value, obtaining the maximum value or the minimum value of the ratio obtained for each rotation of the rotating body, detecting the reference rotation angle position of the crankshaft accordingly, A crank angle position detection method for detecting a crank angle position of the engine based on the detected reference rotation angle position, wherein when the rotation speed of the rotating body falls below a predetermined low rotation speed, the reference rotation angle Detecting the rotation angle position of the rotating body, wherein once the information on the degree position and the crank angle position is erased, the detection of the reference rotation angle position and the crank angle position is restarted after waiting for the next detection of the pulse. Provide a way.

また、回転体の回転速度が所定低回転速度以下に低下
した場合には、基準回転角度位置検出を再開することが
好ましい。
Further, when the rotation speed of the rotating body drops below the predetermined low rotation speed, it is preferable to restart the reference rotation angle position detection.

実 施 例 以下、本発明の実施例について添付図面を参照しつつ
説明する。
Embodiments Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.

第1図は本発明による回転体の回転角度位置検出方法
を適用した内燃機関の点火装置を示している。
FIG. 1 shows an ignition device for an internal combustion engine to which a method for detecting a rotational angle position of a rotating body according to the present invention is applied.

第1図に示した様に、本実施例においては、内燃機関
(図示せず)のクランクシャフト1に円形の回転体2が
取り付けられており、回転体2はクランクシャフト1と
共に図の時計方向に回転する。回転体2の外周部には被
検知部として7個の磁性突起3a,3b,……3f,3gが回転方
向において磁性突起3g,3a間の角度間隔が最大となるよ
う形成されている。磁性突起3の回転軌跡近傍には磁性
突起3が近傍を通過する毎にパルスを発生する検知素子
5が設けられている。検知素子5は、例えば磁気コイル
を内蔵した磁気センサからなっており、磁性突起3aを検
知したときエンジンの第1気筒のピストンが上死点位置
となるよう配設されている。
As shown in FIG. 1, in the present embodiment, a circular rotating body 2 is attached to a crankshaft 1 of an internal combustion engine (not shown), and the rotating body 2 is moved together with the crankshaft 1 in a clockwise direction in the figure. To rotate. On the outer peripheral portion of the rotating body 2, seven magnetic projections 3a, 3b,..., 3f, 3g are formed as detected parts so that the angular interval between the magnetic projections 3g, 3a in the rotation direction is maximized. In the vicinity of the rotation locus of the magnetic projection 3, a detection element 5 that generates a pulse every time the magnetic projection 3 passes near the magnetic projection 3 is provided. The detection element 5 is, for example, a magnetic sensor having a built-in magnetic coil, and is arranged so that the piston of the first cylinder of the engine is located at the top dead center when the magnetic projection 3a is detected.

検知素子5が磁性突起3a〜3gを検知して発するパルス
は波形整形器としても作用する増幅器6を介してマイク
ロコンピュータMのCPU7に入力される。従って、本実施
例装置においては、内燃機関の運転中、回転体2の回転
に応じて検知素子5からは増幅器6を介して第2図に示
したパルス信号がCPU7に入力される。
Pulses generated by the detection element 5 detecting the magnetic protrusions 3a to 3g are input to the CPU 7 of the microcomputer M via the amplifier 6 which also functions as a waveform shaper. Accordingly, in the apparatus of this embodiment, during operation of the internal combustion engine, a pulse signal shown in FIG. 2 is input to the CPU 7 from the detection element 5 via the amplifier 6 in accordance with the rotation of the rotating body 2.

上述したマイクロコンピュータMはCPU7及びROM8,RAM
10,クロックジェネレータ等から構成されており、パル
スをもとに、後述するプログラムに従って、回転体2の
回転角度位置すなわちクランクシャフト1の基準回転角
度位置を検出し、クランクシャフト1が所定の回転角度
位置に達したとき増幅器11を介して点火ユニット12に対
し指令信号を出力するのである。
The microcomputer M described above has a CPU 7, a ROM 8, and a RAM.
10, a clock generator, etc., which detects the rotation angle position of the rotating body 2, that is, the reference rotation angle position of the crankshaft 1 according to a program described later based on the pulse, and the crankshaft 1 When the position is reached, a command signal is output to the ignition unit 12 via the amplifier 11.

クロックジェネレータは、所定周期毎にクロック信号
を発生する発振器13の出力が、直接、AND回路15に入力
されると共に分周器16を介してAND回路17に入力される
一方、AND回路17にはCPU7からの指令信号が直接入力さ
れると共にAND回路15にはCPU7からの指令信号がインバ
ータ18を介して入力されており、AND回路15若しくは17
によって中継出力されるクロック信号がOR回路20を介し
てCPU7に入力される構成となっている。
The clock generator outputs the output of the oscillator 13 that generates a clock signal every predetermined period directly to the AND circuit 15 and to the AND circuit 17 via the frequency divider 16, while the AND circuit 17 A command signal from the CPU 7 is directly input, and a command signal from the CPU 7 is input to the AND circuit 15 via the inverter 18.
Thus, a clock signal relay-outputted is input to the CPU 7 via the OR circuit 20.

このようにクロックジェネレータを構成することによ
り、CPU7からの指令信号に基づき、クロックジェネレー
タからCPU7に入力されるクロック信号の周期(周波数)
を切換えることが出来、これによってマイクロコンピュ
ータMの最低動作電圧を変えることが可能となっている
のである。すなわち、CPU7をしてバッテリ(図示せず)
の端子電圧、エンジン回転速度(以下、エンジン回転数
と称す。)若しくはスタータスイッチ等を監視せしめ、
エンジンがクランキング中等でバッテリ電圧が低下した
場合に指令信号を出力させ、クロック信号がCPU7に入力
される周期を大きくして(周波数を小さくして)マイク
ロコンピュータMの最低動作電圧を下げることによっ
て、クランキング中等のようにバッテリ端子電圧が低下
した場合であっても、マイクロコンピュータMは確実に
動作できるのである。
By configuring the clock generator in this manner, the period (frequency) of the clock signal input from the clock generator to the CPU 7 based on the command signal from the CPU 7
Can be changed, thereby making it possible to change the minimum operating voltage of the microcomputer M. That is, the CPU 7 and the battery (not shown)
Monitor the terminal voltage, engine speed (hereinafter, referred to as engine speed) or starter switch, etc.
By causing the command signal to be output when the battery voltage decreases during engine cranking or the like, and by increasing the cycle at which the clock signal is input to the CPU 7 (by decreasing the frequency), the minimum operating voltage of the microcomputer M is reduced. The microcomputer M can operate reliably even when the battery terminal voltage drops, such as during cranking.

第3図は、CPU7の動作を司るプログラムの一部を示し
たフローチャートである。このプログラムは上述したパ
ルスの発生毎に、例えば、エンジンに供給される混合気
の空燃比制御の為にプログラムされたメインルーチンに
割込んで実行される。
FIG. 3 is a flowchart showing a part of a program for controlling the operation of the CPU 7. This program is executed every time the above-described pulse is generated, for example, by interrupting a main routine programmed for controlling the air-fuel ratio of the air-fuel mixture supplied to the engine.

まず、マイクロコンピュータに電源が投入されると、
電源投入と同時に初期化が行なわれ、後述する各カウン
タのカウント値及び各フラグがリセットされる。次い
で、上述したメインルーチンの各ステップが上述したク
ロック信号に同期して実行される。メインルーチンを実
行中、CPUにパルス(第2図参照)が入力されると、そ
の都度メインルーチンに割込んで第3図に示した割込み
サブルーチンが実行される。
First, when the microcomputer is powered on,
Initialization is performed simultaneously with power-on, and the count value and each flag of each counter described later are reset. Next, each step of the above-mentioned main routine is executed in synchronization with the above-mentioned clock signal. When a pulse (see FIG. 2) is input to the CPU during execution of the main routine, the CPU interrupts the main routine and executes the interrupt subroutine shown in FIG. 3 each time.

メインルーチンに割込むと、まず、割込サブルーチン
が実行される毎にインクリメントされるステージカウン
タのステージカウント値SCが磁性突起3の数(本実施例
においてはK=7)と等しいか否かを判別し(ステップ
S1)、これが等しかった場合にはステージカウント値SC
を1にリセットする(ステップS2)。また、等しくなか
った場合にはステージカウント値SCをインクリメントす
る(ステップS3)。
When the main routine is interrupted, first, it is determined whether or not the stage count value SC of the stage counter, which is incremented each time the interrupt subroutine is executed, is equal to the number of magnetic projections 3 (K = 7 in this embodiment). Determine (Step
S 1 ), if they are equal, the stage count value SC
Is reset to 1 (step S 2 ). Furthermore, it increments the stage count value SC when not equal (Step S 3).

ここで、ステージカウント値SCの役割について説明し
ておく。まず、本実施例においては、クランクシャフト
1の1回転が第1図に示した様に、磁性突起3a〜3gによ
って分割される7個のステージから構成されており、各
ステージにはクランクシャフト1の基準回転角度位置に
対応する第1気筒の上死点から始まるステージを起点と
して1〜7までのステージナンバを各ステージを挾む第
1磁性突起のうち回転方向前方側の各磁性突起に対応し
て付いてある。従って、後述するようにパルス発生毎に
更新されるステージカウンタのカウント値SCと検知素子
5により検知された磁性突起3に対応する実際のステー
ジナンバとを一致せしめることにより、ステージカウン
ト値SCから現在のクランクシャフト1の回転角度位置が
どのステージに属するかを知ることができるようになっ
ているものである。
Here, the role of the stage count value SC will be described. First, in this embodiment, as shown in FIG. 1, one rotation of the crankshaft 1 is composed of seven stages divided by magnetic projections 3a to 3g. Starting from the stage starting from the top dead center of the first cylinder corresponding to the reference rotation angle position, the stage numbers from 1 to 7 correspond to the respective magnetic projections on the front side in the rotation direction among the first magnetic projections sandwiching each stage. It is attached. Therefore, by matching the count value SC of the stage counter updated each time a pulse is generated with the actual stage number corresponding to the magnetic protrusion 3 detected by the detection element 5 as described later, the current stage count value SC is calculated from the stage count value SC. It is possible to know which stage the rotation angle position of the crankshaft 1 belongs to.

第3図に示したフローチャートの説明に戻ると、ステ
ップS1〜S3の実行後、パルスの出力回数を計数するパル
スカウンタのカウント値nが電源投入直後に初期化され
たままであるか否か、すなわち、n=0であるか否かを
判別する(ステップS4)。カウント値nが0であった場
合には電源投入後最初に割込サブルーチンが実行されて
いることとなり、この場合には後でパルスの発生間隔を
計測するのに必要となるタイマをスタートさせ(ステッ
プS5)、クランクシャフト1の基準回転角度位置が未だ
検出されていないことを示すフラグFaに1をセットする
(ステップS6)。フラグFaは基準回転角度位置が検出さ
れたときゼロリセットされるフラグである。次いで、パ
ルスカウンタのカウント値nを1とし(ステップS7)、
メインルーチンの実行に戻り、次のパルス発生により再
度メインルーチンに割込んで割込サブルーチンが実行さ
れる。
Returning to the explanation of the flowchart shown in FIG. 3, after execution of step S 1 to S 3, whether or not the count value n of the pulse counter for counting the number of output times of pulses remains initialized immediately after power-on That is, it is determined whether or not n = 0 (step S 4 ). If the count value n is 0, it means that the interrupt subroutine is executed first after the power is turned on. In this case, a timer necessary for measuring a pulse generation interval later is started ( step S 5), sets 1 in the flag Fa indicating that the reference rotational angle position of the crankshaft 1 is not detected yet (step S 6). The flag Fa is a flag that is reset to zero when the reference rotation angle position is detected. Then, the count value n of the pulse counter is set to 1 (step S 7),
Returning to the execution of the main routine, the generation of the next pulse interrupts the main routine again to execute the interrupt subroutine.

割込サブルーチンが再度実行されると、ステップS1
S3が実行された後、ステップS4の判別が行われる。ここ
では、パルスカウンタのカウント値nはステップS7の実
行によりn=1とされているので、ステップS8へ進み、
フラグFaに1がセットされているか否か、言換すれば、
既に基準回転角度位置が検出されているか否かを判別す
る(ステップS8)。ここで、後述するステップの実行に
よりクランクシャフト1の基準回転角度位置が検出され
ている場合には、後述するようにステージカウント値SC
と検知素子5が検知した磁性突起3に対応する実際のス
テージナンバとが一致せしめられているので、クランク
シャフト1の回転角度位置が点火ユニット12をトリガす
べきトリガステージに属しているか否かの判別を、ステ
ージカウント値SCがトリガステージのステージナンバと
一致したカウント値SCIとなっているか否かを判別する
ことによって、行ない(ステップS9)、ステージカウン
ト値SCがSCIに一致していた場合には点火ユニット12に
対して点火指令信号を発して点火をなし(ステップ
S10)、ステップS11に進む。なお、エンジンの気筒数に
よってはトリガステージは複雑となり、この場合にはト
リガステージのステージナンバに一致したカウント値SC
Iも複数となり、各気筒に対応する点火ユニットを各ト
リガステージ毎にトリガすることとなる。ステップS8
おいてフラグFaに1がセットされていた場合、すなわ
ち、基準回転角度位置が未だ検出されておらずステージ
カウント値SCと検知素子5が検知した磁性突起3に対応
する実際のステージナンバとが一致せしめられていない
場合、またはステップS9においてステージカウント値SC
がSCIと一致せずクランクシャフト1の回転角度位置が
点火ユニット12をトリガすべきトリガステージに属して
いないと判断された場合には点火指令信号を発すること
なくステップS11に進む。
When the interrupt subroutine is executed again, steps S 1 to S 1
After the S 3 has been performed, the determination in step S 4 is performed. Here, since the count value n of the pulse counter is set to n = 1 by the execution of step S 7, the process proceeds to step S 8,
Whether the flag Fa is set to 1 or not, in other words,
Already reference rotational angular position is determined whether it is detected (Step S 8). Here, when the reference rotation angle position of the crankshaft 1 is detected by executing the later-described steps, the stage count value SC will be described later.
And the actual stage number corresponding to the magnetic projection 3 detected by the detection element 5 are matched, so that whether the rotation angle position of the crankshaft 1 belongs to the trigger stage to trigger the ignition unit 12 or not is determined. The determination is performed by determining whether or not the stage count value SC has a count value SCI that matches the stage number of the trigger stage (step S 9 ), and when the stage count value SC matches the SCI. Ignites by issuing an ignition command signal to the ignition unit 12 (step
S 10), the process proceeds to step S 11. Note that the trigger stage is complicated depending on the number of cylinders of the engine. In this case, the count value SC corresponding to the stage number of the trigger stage is used.
I is also plural, and the ignition unit corresponding to each cylinder is triggered for each trigger stage. If 1 in the flag Fa in the step S 8 is set, i.e., the actual stage numbers corresponding to the reference rotational angular position is magnetic projections 3 which is sensing element 5 with the stage count value SC not been detected yet detected If but have not been allowed to match, or stage count value SC in step S 9
There is the case where it is determined that the rotational angle position of the crank shaft 1 does not match the SCI does not belong to a trigger stage that should trigger the ignition unit 12 proceeds to step S 11 without emitting a ignition command signal.

ステップS11ではステップS5で駆動されたタイマが示
すタイマ値tnをパルスカウンタのカウント値nに対応さ
せて取り込む。次いで、パルスカウンタのカウント値n
が1であるか否かを判別する(ステップS12)。電源投
入後の割込サブルーチンの実行が2回目である場合には
カウント値nはステップS7において1とされたままであ
るので、ステップS13へ進みフラグFaに1がセットされ
ているか否かを判別する。ここでは、未だフラグFaはゼ
ロリセットされていないのでステップS14へ進み、パル
スカウンタのカウント値nがK+2(Kは磁性突起3の
数で本実施例では7)に一致しているか否かを判別す
る。
Step S capturing 11, the timer value t n indicated driven timer in step S 5 in correspondence with the count value n of the pulse counter. Next, the count value n of the pulse counter
There it is determined whether or not the 1 (step S 12). Because if the execution of the interrupt subroutine after power-on is the second count value n is kept set to 1 at step S 7, whether 1 the flag Fa proceeds to step S 13 is set Determine. Here, still flag Fa proceeds to step S 14 because it is not reset to zero, whether or not the count value n K + 2 of the pulse counter (K is 7 in this embodiment the number of magnetic projections 3) coincides with the Determine.

ここで、現在のカウント値nは1であるから、パルス
カウンタのカウント値nをインクリメントし(ステップ
S15)、メインルーチンの実行に戻る。
Here, since the current count value n is 1, the count value n of the pulse counter is incremented (step
S 15), returns to the execution of the main routine.

そして、次のパルス発生により再びメインルーチンに
割込んで割込サブルーチンが実行されると、ステップS1
〜S11が上述の手順で実行され、ステップS12の判別がな
される。今度はカウント値nはステップS15においてイ
ンクリメントされ2となっているのでステップS16に進
み、フラグFaに1がセットされているか否か判別する。
しかし、フラグFaにはステップS6において1がセットさ
れたまま、未だゼロリセットされていないのでステップ
S17へ進み、ステップS11で取込んだ今回のタイマ値tn
ら前回のタイマ値tn-1を減算してパルスの発生間隔Δtn
を得、これをカウント値nに対応させて記憶する。次い
で、フラグFbに1がセットされているか否かを判別する
(ステップS18)。フラグFbはエンジンの回転数Neが所
定高速回転数例えば3000rpmを超えたときに1がセット
されるフラグであり、電源投入直後のエンジン始動状態
においてはフラグFbに1はセットされていないのでステ
ップS19に進み、フラグFaに1がセットされているか否
か判別する。ここでは、フラグFaは1がセットされたま
まであるから、更にパルスカウンタのカウント値nが2
に等しいか否か判別する(ステップS20)。現在のカウ
ント値はnは上述した様に2であるから、ステップS14
を経てステップS15に進みカウント値nをインクリメン
トして3とした後、メインルーチンの実行に戻る。
When the interrupt subroutine is executed interrupting again the main routine at the next pulse generation, step S 1
To S 11 is performed in accordance with the procedure described above, the determination of step S 12 is performed. Now since the count value n has a 2 is incremented in step S 15 proceeds to step S 16, 1 in the flag Fa is determined whether it is set.
However, while the flag Fa is 1 set in step S 6, because it is not yet zero reset step
Advances to S 17, step S of the previous from the current timer value t n of the taken at 11 the timer value t generated interval n-1 and subtracts pulses Delta] t n
And stores it in association with the count value n. Then, 1 is determined whether it is set in the flag Fb (step S 18). The flag Fb is a flag that is set to 1 when the engine speed Ne exceeds a predetermined high-speed speed, for example, 3000 rpm. Since 1 is not set in the flag Fb immediately after the power is turned on, the process proceeds to step S Proceeding to 19 , it is determined whether 1 is set in the flag Fa. Here, since the flag Fa remains set to 1, the count value n of the pulse counter is set to 2
Equal determines whether or not (step S 20). Since the current count value is 2 as described above, step S 14
After a 3 increments the count value n proceeds to step S 15 via returns to the execution of the main routine.

そして、次のパルス発生によりメインルーチンに割込
んで割込サブルーチンが実行されると、前回の割込サブ
ルーチンの実行と同様にステップS19まで進み、ステッ
プS20の判別において今回はn=3であり、カウント値
n=2ではないのでステップS21に進みステップS17で求
められたパルスの発生間隔の今回値Δtnと前回値Δtn-1
との比Tnを求めこれをパルスカウンタのカウント値nに
対応させて記憶する(n=3の場合にはT3=Δt3
t2)。次いで、フラグFaに1がセットされているか否か
の判別を行なう(ステップS22)。フラグFaは未だ1が
セットされたままであるのでステップS14→S15と進み、
パルスカウンタのカウント値nがステップS14において
K+2(本実施例ではK+2=9)となるまでカウント
値nが3の場合と同様に割込サブルーチンが実行され、
比Tnを7つ(T3,T4,T5,T6,T7,T8,T9)記憶する。7つの
比Tnが記憶されると、その時のパルスカウンタのカウン
ト値nはK+2に一致するのでステップS14からステッ
プS23に進み、フラグFcに1がセットされているか否か
を判別する。フラグFcはフラグFaがゼロリセットされた
後エンジンの回転数Neが所定回転数領域内(例えば150r
pm<Ne<2000rpm)に入ったときに1がセットされるフ
ラグであり、現在までのところフラグFcに1はセットさ
れていないので、ステップS24に進みステップS22におい
て記憶された7つの比Tn-6,Tn-5,Tn-4…Tnの中から最大
の比Txを検索し、その最大の比Txが求められた時のパル
スカウンタのカウント値xを求めてこのカウント値xを
レジスタaに記憶する(ステップS25)。例えば、第2
図の◎の時点で電源投入があり、エンジンが始動された
とすると、パルスカウンタのカウント値nが2となった
ときからパルスの発生間隔tnが求められ、カウント値n
が3となったときから比Tn(=Δtn/Δtn-1)が求めら
れる。従って、クランクシャフト1の基準回転角度位置
を検出するに必要な情報量(Tnの数)を得るには始動時
においてはカウント値nがK+2となるまで待たなくて
はならず、それ故にステップS14においてカウント値n
がK+2に等しくなったか否かの判断をしているのであ
る。ところで、第2図に示した様に、エンジンが始動さ
れた場合、ステップS22において記憶された7つの比(T
3,T4……T8,T9)のうちで最大となるのは、第2図にも
示した様に、T4でありその時のカウント値nは4であ
る。従って、このカウント値4がレジスタaに記憶され
るのである。
When the interrupt subroutine interrupt the main routine at the next pulse generation is performed, the process proceeds to step S 19 as with the last execution of the interrupt subroutine, at this time n = 3 is determined in step S 20 There, the current value Delta] t n and the previous value Delta] t n-1 of the count value n = pulse generation interval determined in step S 17 proceeds to step S 21 is not a 2
Determine the specific T n of which is stored in correspondence with the count value n of the pulse counter (in the case of n = 3 is T 3 = Δt 3 / Δ
t 2). Then, performed is determined whether or not 1 in the flag Fa is set (step S 22). Since the flag Fa is remains still 1 is set proceeds to steps S 14 → S 15,
The count value n of the pulse counter interrupt subroutine as in the case of the count value n is 3 until is performed (K + 2 = 9 in this embodiment) K + 2 in step S 14,
7 the ratio T n (T 3, T 4 , T 5, T 6, T 7, T 8, T 9) stores. When seven ratio T n is stored, the count value n of the pulse counter at that time proceeds from step S 14 since matching K + 2 in step S 23, 1 in the flag Fc is determined whether it is set. The flag Fc indicates that the engine speed Ne is within a predetermined speed range after the flag Fa is reset to zero (for example, 150 r
pm <Ne <a flag 1 is set when entering the 2000 rpm), since 1 flag Fc far not set, seven ratios stored in step S 22 proceeds to step S 24 The maximum ratio Tx is searched from T n-6 , T n-5 , T n-4 ... T n , and the count value x of the pulse counter when the maximum ratio Tx is obtained is obtained. stores the value x in the register a (step S 25). For example, the second
Assuming that the power is turned on and the engine is started at time ◎ in the figure, the pulse generation interval t n is obtained from when the count value n of the pulse counter becomes 2, and the count value n
Is 3, the ratio T n (= Δt n / Δt n-1 ) is obtained. Thus, not only is to wait until the count value n is K + 2 is at the start to get the amount of information required for detecting the reference rotational angle position of the crankshaft 1 (T number of n), therefore step count value n in S 14
Is determined to be equal to K + 2. Meanwhile, as shown in FIG. 2, when the engine is started, seven ratios stored in step S 22 (T
3 , T 4, ..., T 8 , T 9 ), the largest is T 4 as shown in FIG. 2, and the count value n at that time is 4. Therefore, the count value 4 is stored in the register a.

再び、フローチャートについて説明すると、ステップ
S25の実行の後、現在のカウント値nとレジスタaに記
憶されたカウント値(4)とからクランクシャフト1の
基準回転角度位置が現在のパルスカウンタのカウント値
nからいくつカウント値nが遡った時点でクランクシャ
フト1の基準回転角度位置に対応した最大の比Txが得ら
れたかが分かる。従って、その時点におけるステージカ
ウント値SCを1とした場合に現在のステージカウント値
SCがとり得るべき値を現在のステージカウント値SCと置
き換えることによってステージナンバとステージカウン
ト値SCとを一致せしめることができるのである。この演
算を行なうのがステップS26である。すなわち、ステッ
プS26においては現在のパルスカウンタのカウント値n
(n=9)とレジスタaに記憶された最大の比Tnが得ら
れたときのパルスカウンタのカウント値とからn+1−
aなる演算を行なうことによってステージナンバが1の
ときのステージカウント値SCを1としていたならば現在
のステージカウント値SCがとるべき値を算出し、この値
をそのままステージカウント値SCに設定するのである。
第2図に示した具体例で説明すると、パルスカウンタの
カウント値nが9となって基準回転角度位置検出に必要
とされる情報が揃い、7つの比(T3,T4……T9)のうち
最大の比T4が検索され(ステップS24)、その最大の比T
4が得られたときのパルスカウンタのカウント値4が求
められ(ステップS25)、現在のパルスカウンタのカウ
ント値n(n=9)とレジスタaに記憶された値4とか
らn+1−aなる演算によってステージカウント値SCを
ステージナンバと一致せしめる為、現在のステージカウ
ント値SCが取るべき値6が求められ、この値を現在のス
テージカウント値SCにセットして、ステージナンバとス
テージカウント値とを一致せしめるのである(ステップ
S26)。
The flowchart will be described again.
After execution of S 25, the current count value n and the register stored count value a (4) because the reference rotational angle position of the crank shaft 1 back number count value n from the count value n of the current pulse counter At this point, it can be seen whether the maximum ratio Tx corresponding to the reference rotation angle position of the crankshaft 1 has been obtained. Therefore, if the stage count value SC at that time is set to 1, the current stage count value SC
By replacing the value that can be taken by the SC with the current stage count value SC, the stage number and the stage count value SC can be matched. To carry out this operation is a step S 26. That is, in step S 26 the count value n of the current pulse counter
From (n = 9) and the count value of the pulse counter when the maximum ratio T n stored in the register a is obtained, n + 1−
If the stage count value SC when the stage number is 1 is set to 1 by performing the operation a, the value to be taken by the current stage count value SC is calculated and this value is set as it is as the stage count value SC. is there.
Explaining with the specific example shown in FIG. 2, the count value n of the pulse counter becomes 9, and the information required for the reference rotation angle position detection is complete, and the seven ratios (T 3 , T 4, ..., T 9) ) Is searched for the maximum ratio T 4 (step S 24 ), and the maximum ratio T 4
4 is a pulse counter count value 4 when the obtained obtained (step S 25), n + 1- a made of the current pulse count value of a counter n (n = 9) and register a to store the value 4 which In order to match the stage count value SC with the stage number by calculation, a value 6 to be taken by the current stage count value SC is obtained. This value is set to the current stage count value SC, and the stage number and the stage count value are set. Are matched (step
S 26).

次いで、最新のパルスの発生間隔ΔtnをΔtOに、ま
た、最新のタイマ値tnをtOに置き換える(ステップ
S27)。これは、次のステップS28においてパルスカウン
タのカウント値nが1にリセットされるので、次のパル
ス発生によって割込サブルーチンが実行された際にカウ
ント値n=1でステップS21及びS17における演算にΔtO
及びtOが必要となる為である。このようにして、クラン
クシャフト1の基準回転角度位置が求められ、ステージ
ナンバとステージカウント値SCが一致せしめられると、
フラグFaはゼロリセットされ、カウント値nも1にリセ
ットされる(ステップS28)。
Next, the latest pulse generation interval Δt n is replaced with Δt O and the latest timer value t n is replaced with t O (step
S 27). This is because the count value n of the pulse counter in the next step S 28 is reset to 1, in steps S 21 and S 17 by the count value n = 1 when the interrupt subroutine is executed by the next pulse generator Δt O for calculation
And t O are required. In this manner, when the reference rotation angle position of the crankshaft 1 is obtained and the stage number and the stage count value SC are matched,
Flag Fa is reset to zero, is reset to 1 count n (step S 28).

次いで、次のパルス発生により割込サブルーチンが実
行されると、ステップS1からステップS11まで上述の如
く実行された後、ステップS12においてカウント値nが
1に等しいか否か判別される。ここでカウント値nはス
テップS28において1にリセットされているのでステッ
プS13へ進み、フラグFaに1がセットされているか否か
判別する。フラグFaはステップS28においてゼロリセッ
トされているので、ステップS29へ進み、エンジン回転
数Neが、検知素子5が被検知部3の検知に失敗して所定
レベルのパルスを発生し得ずいわゆるパルスの歯抜けが
生じ得る所定低回転数例えば150rpmより小さいか否かを
判別する。エンジン回転数Neとしては、ステップS17
求められるパルスの発生間隔でΔtnを対応する磁性突起
3の角度間隔で除して得ることができる。ステップS29
において、Neが150rpm以上であった場合には更にNeがク
ランクシャフト1の回転が安定しその回転速度変動が小
さく、かつ、パルスの発生間隔Δtnが小さくなる所定高
回転数例えば3000rpmを超えているか否か判別する(ス
テップS30)。ここで、Neが3000rpm以下であった場合に
は、更に、Neがクランクシャフト1の回転速度変動が大
きい所定回転数領域(例えば150rpm≦Ne<2000rpm)内
にあるか否かをNeが2000rpmを下回っているか否かを判
別することにより判別する(ステップS31)。ここで、N
eが2000rpm以上であった場合、すなわち、2000rpm≦Ne
≦3000rpmであった場合には、ステップS17へ進みパルス
の発生間隔Δtnを求めた後、フラグFb及びFaは共に1が
セットされていないのでステップS18→S19→S21と進み
比Tnを求め、ステップS22からステップS32へ進みカウン
ト値nがK(K=7)と等しいか否か判別する。ここ
で、カウント値nがKと等しくない場合にはステップS
15へ進みカウント値nをインクリメントする。
Then, the interrupt subroutine is executed by the next pulse occurs after the execution as described above from step S 1 to step S 11, the count value n is judged whether equal to 1 in step S 12. Here the count value n is because it is reset to 1 in step S 28 proceeds to step S 13, 1 is judged whether it is set in the flag Fa. Since the flag Fa is reset to zero in step S 28, the process proceeds to step S 29, the engine speed Ne, the sensing element 5 fails to detect the detected portion 3 generates a predetermined level of the pulse Eze called It is determined whether or not the rotation speed is smaller than a predetermined low rotation speed, for example, 150 rpm at which pulse omission may occur. The engine rotational speed Ne, can be obtained by dividing by the corresponding angular interval of the magnetic projections 3 Delta] t n in generation interval of the pulse obtained in step S 17. Step S 29
In the case where Ne is equal to or greater than 150 rpm, Ne further exceeds a predetermined high rotational speed, for example, 3000 rpm, at which the rotation of the crankshaft 1 is stabilized and its rotation speed fluctuation is small, and the pulse generation interval Δt n is small. dolphin whether determined (step S 30). Here, when Ne is 3000 rpm or less, Ne further determines whether or not Ne is within a predetermined rotation speed region (for example, 150 rpm ≦ Ne <2000 rpm) where the rotation speed fluctuation of the crankshaft 1 is large. determining by determining whether the below (step S 31). Where N
When e is 2000 rpm or more, that is, 2000 rpm ≦ Ne
If was ≦ 3000 rpm, after seeking the generation interval Delta] t n pulse proceeds to step S 17, the flag Fb and Fa are both 1 proceeds to steps S 18 → S 19 → S 21 because it is not set ratio seeking T n, the count value n proceeds from step S 22 to step S 32 it is determined whether or not equal to K (K = 7). If the count value n is not equal to K, step S
Proceed to 15 to increment the count value n.

次のパルス発生により、割込サブルーチンが実行され
ると、ステップS1〜S11まで上述の如く実行された後、
ステップS12の判別が行なわれる。ここで、カウント値
nはステップS15においてインクリメントされ、2とな
っているので、ステップS16へと進み、フラグFaに1が
セットされているか否か判別される。フラグFaは上述し
た様に既にゼロリセットされているので、ステップS33
へ進み、フラグFbに1がセットされているか否か判別す
る。フラグFbに1は未だセットされていないので、ステ
ップS34へ進みフラグFcに1がセットされているか否か
判別する。ここでもフラグFcに1は未だセットされてい
ない。故に、ステップS17にてパルスの発生間隔Δtn
求めた後、ステップS18→S1921と進み比Tnを求めステ
ップS22→S32→S15と進む。この動作をカウント値nが
Kと等しくなるまで実行しクランクシャフト1が1回転
する毎に得られる所定数(7つ)の比Tnを求めた後、ス
テップS32からステップS23以下のステップへ進み実際の
ステージナンバとステージカウント値SCとのずれがあれ
ばこれを修正する。
The next pulse occurs, the interrupt subroutine is executed, after being executed as described above to step S 1 to S 11,
Determination of step S 12 is performed. Here, the count value n is incremented in step S 15, since a 2, the process proceeds to step S 16, 1 is judged whether it is set in the flag Fa. Since the flag Fa has already been reset to zero as described above, step S 33
Then, it is determined whether or not 1 is set in the flag Fb. Since the flag Fb 1 has not yet been set, 1 in the flag Fc advances to step S 34 it is determined whether it is set. Here, 1 has not yet been set in the flag Fc. Thus, after obtaining the occurrence interval Delta] t n of the pulse at step S 17, the process proceeds to steps S 22 → S 32 → S 15 seek proceeds ratio T n in step S 18 → S 1921. After crankshaft 1 performs this operation until the count value n is equal to K was determined the ratio T n of the predetermined number which is obtained per rotation (7), the following steps: Step S 23 from step S 32 If there is a difference between the actual stage number and the stage count value SC, correct it.

フラグFaがゼロリセットされると共にカウント値nが
1にリセットされた後、ステップS31においてエンジン
回転数Neが2000rpmを下回った場合、すなわち、150rpm
≦Ne<2000rpmとなった場合には、フラグFcに1をセッ
トし(ステップS33)、カウント値nがK(K=7)と
等しいか否か判別し(ステップS35)、n=Kでない場
合にはステップS32を経てステップS15に進みカウント値
nをインクリメントする。
After the flag Fa is the count value n is reset to 1 with reset to zero, when the engine speed Ne falls below the 2000rpm in step S 31, namely, 150 rpm
When a ≦ Ne <2000 rpm is set to 1 in the flag Fc (step S 33), it decides whether or not the count value n is equal to K (K = 7) (step S 35), n = K increments the proceeds count value n in step S 15 through step S 32 if not.

次のパルス発生により割込サブルーチンが実行される
とステップS1からS11まで実行された後、カウント値n
はステップS15においてインクリメントされn>1とな
っているので、ステップS16→S33→S34と進みフラグFc
にはステップS33において1がセットされているのでス
テップS35へ進む。この動作がカウント値nがn=Kと
なるまで繰り返され、n=Kとなるとその時のパルスの
発生間隔Δtnを求め(ステップS36)、ステップS32を経
てステップS23へ進む。ここでフラグFcにはステップS33
にて1がセットされたままであるので、ステップS24〜S
26における基準回転角度位置の検出を行なわず、ステッ
プS27以下のステップを実行し、ステップS28において、
フラグFcをゼロリセットすると共にカウント値nを1に
リセットする。
After being executed when the interrupt subroutine is executed from Step S 1 to S 11 by the next pulse occurs, the count value n
Since it has become incremented n> 1 in step S 15, the flag Fc advances to steps S 16 → S 33 → S 34
Since 1 is set in step S 33 to proceed to step S 35. This operation is repeated until the count value n is n = K, the n = K when seeking generation interval Delta] t n of the pulse at that time (step S 36), the process proceeds to step S 23 through step S 32. Here, the flag Fc is set in step S33.
Since one is left has been set in, step S 24 ~S
Without detection of the reference rotational angle position at 26, the step S 27 to perform the following steps, in step S 28,
The flag Fc is reset to zero and the count value n is reset to one.

すなわち、エンジン回転数Neが所定回転数領域(150r
pm≦Ne<2000rpm)内に入った場合には、ステップS24,S
25,S26の実行を取り止め基準回転角度位置の検出を中止
することとしているのである。これは、この所定回転数
領域内においてはエンジン始動直後の初爆によるクラン
クシャフト1の回転速度変動が大きいこと及びエンジン
の空吹かしによる回転速度変動が大きいことから、ステ
ージナンバ1に対応する磁性突起3aによるパルス発生時
にステップS21において求められる比Tnがクランクシャ
フト1回転中に得られる他の比Tnより小さくなる可能性
があり、これによって既にステージナンバと一致せしめ
られているステージカウント値SCが乱されることを防止
する為である。なお、この所定回転数領域(150rpm≦Ne
<2000rpm)においては、Neがいわゆるパルスの歯抜け
が生ずる回転数(150rpm)以上となっていることから、
既にステージナンバと一致せしめられたステージカウン
ト値SCを各パルス発生毎に更新し(ステップS1〜S3)、
このステージカウント値SCを監視することにより、クラ
ンクシャフト1の現在の回転角度位置を知ることができ
るようになっている。
That is, the engine speed Ne is within a predetermined speed range (150r
pm ≦ Ne <2000 rpm), steps S 24 and S 24
25, with each other to a to cancel the detection of the reference rotational angular position rambling execution of S 26. The reason for this is that the magnetic projection corresponding to the stage number 1 corresponds to the stage number 1 because the rotation speed of the crankshaft 1 is large due to the initial explosion immediately after the start of the engine and the rotation speed is large due to the engine blowing. There ratio T n obtained in step S 21 at the time of pulse generation may become smaller than the other ratios T n obtained during one crankshaft rotation according 3a, whereby already the stage count value is made to coincide with the stage number This is to prevent the SC from being disturbed. Note that this predetermined rotation speed region (150 rpm ≦ Ne
<2000rpm), since Ne is higher than the rotation speed (150rpm) at which the so-called pulse omission occurs,
Already updated the stage count value SC which is allowed consistent with stage numbers for each pulse generator (step S 1 ~S 3),
By monitoring the stage count value SC, the current rotational angle position of the crankshaft 1 can be known.

また、フラグFaがゼロリセットされ、カウント値nが
1にリセットされた後、割込サブルーチンが実行され、
ステップS30においてエンジン回転数Neが3000rpmを超え
ていた場合にはフラグFbに1をセットする(ステップS
37)。継いで、パルスの発生間隔Δtnを求め(ステップ
S17)、フラグFbに1がセットされているか否か判別し
(ステップS18)、ステップS38へ進んで比(Δtn/Δt
n-1)の代わりにΔtnをそのままTnとして記憶する(ス
テップS38)。次いで、ステップS32→S15と進みカウン
ト値nをインクリメントする。
After the flag Fa is reset to zero and the count value n is reset to 1, an interrupt subroutine is executed,
When the engine speed Ne exceeds the 3000rpm in step S 30 is set to 1 in the flag Fb (step S
37 ). Then, determine the pulse generation interval Δt n (step
S 17), it decides whether or not 1 in the flag Fb is set (step S 18), the ratio proceeds to step S 38 (Δt n / Δt
it is stored as T n a Delta] t n instead of n-1) (step S 38). Then increments the count value n proceeds to steps S 32 → S 15.

次のパルス発生により割込サブルーチンが実行される
と、ステップS1からS11まで実行された後、ステップS12
を経てステップS16,S33の判別を行なう。ここで、フラ
グFbに1がセットされているので、ステップS17へ進み
パルスの発生間隔Δtnを求め、ステップS18→S38→S32
と進む。この動作がカウント値nがn=Kとなるまで繰
り返され、n=KとなるとステップS23を経てステップS
24→S25→S26と進み、比(Δtn/Δtn-1)の代わりにTn
として記憶されたΔtnの最大値を検索し、これに基づき
基準回転角度位置を遡って検出し、実際のステージナン
バとステージカウント値とがずれていればこれを修正す
るのである。
When the interrupt subroutine is executed by the next pulse occurs after the execution of Step S 1 to S 11, step S 12
Through the discriminating step S 16, S 33. Since 1 flag Fb is set, obtains the generation interval Delta] t n pulse proceeds to step S 17, step S 18 → S 38 → S 32
And proceed. This operation is repeated until the count value n is n = K, step through step S 23 when it comes to n = K S
24 → S 25 → S 26, and instead of the ratio (Δt n / Δt n-1 ), T n
The maximum value of Δt n stored as is searched, and based on this, the reference rotation angle position is detected retrospectively, and if the actual stage number is different from the stage count value, this is corrected.

すなわち、エンジン回転数Neが所定高回転数(例えば
3000rpm)を超えた場合には、クランクシャフト1が1
回転する毎に得られる所定数(7つ)のパルス発生間隔
Δtnの中から最大のΔtnを求め、これに応じてクランク
シャフト1の基準回転角度位置を遡及的に求め、ステー
ジナンバとステージカウント値SCとの一致を図っている
のである。このように比(Δtn/Δtn-1)の代わりにパ
ルスの発生間隔Δtnを用いることとしたのは、エンジン
回転数Neが所定高回転数(3000rpm)を超えた場合に
は、クランクシャフト1の回転速度変動が小さくなり、
比(Δtn/Δtn-1)を用いなくてもパルスの発生間隔Δt
nから正確に基準回転角度位置を検出し得ること及び演
算処理時間が長くかかる除算ステップ(S21)を省くこ
とによってマイクロコンピュータの所要演算処理時間を
短縮化でき、エンジン回転数Neが高くなった場合にもマ
イクロコンピュータの演算スピードがこれに十分追従し
て行けるようにする為である。
That is, when the engine speed Ne is a predetermined high speed (for example,
3000rpm), the crankshaft 1
The maximum Δt n is determined from a predetermined number (7) of pulse generation intervals Δt n obtained each time the motor rotates, and the reference rotation angle position of the crankshaft 1 is determined retrospectively in accordance with the maximum Δt n. This is to match the count value SC. As described above, the pulse generation interval Δt n is used instead of the ratio (Δt n / Δt n-1 ) because the engine rotation speed Ne exceeds the predetermined high rotation speed (3000 rpm). The rotation speed fluctuation of the shaft 1 becomes small,
Pulse interval Δt without using ratio (Δt n / Δt n-1 )
The required calculation processing time of the microcomputer can be shortened by eliminating the division step (S 21 ) that can accurately detect the reference rotation angle position from n and the calculation processing time is long, and the engine rotation speed Ne is increased. In this case, the calculation speed of the microcomputer can sufficiently follow this.

また、ステップS29において、エンジン回転数Neが150
rpmを下回った場合には、カウント値nをゼロリセット
してシステム自体をリセットし、基準回転角度位置が求
められていないエンジン始動当初と同様に、あらためて
基準回転角度位置を求める動作に戻り、基準回転角度位
置検出を行なうこととしている。これは、エンジン回転
数Neが所定低回転数(例えば150rpm)を下回った場合に
は、検知素子5が被検知部3の検知に失敗して所定レベ
ル以上のパルスを発生することが出来ず、いわゆるパル
スの歯抜けが生ずるので、これによってステージナンバ
とステージカウンタ値SCとが一致しなくなる場合が考え
られる。従って、クランクシャフト1の基準回転角度位
置を全く新たに検出し直すこととしたのである。
Further, in step S 29, the engine speed Ne is 150
When the rotation speed falls below rpm, the count value n is reset to zero and the system itself is reset, and the operation returns to the operation for obtaining the reference rotation angle position again, as in the beginning of engine start when the reference rotation angle position is not obtained. The rotation angle position is detected. This is because, when the engine speed Ne falls below a predetermined low speed (for example, 150 rpm), the detection element 5 fails to detect the detected part 3 and cannot generate a pulse of a predetermined level or more. Since so-called pulse omission occurs, it is conceivable that the stage number and the stage counter value SC do not coincide with each other. Therefore, the reference rotation angle position of the crankshaft 1 is completely newly detected.

発明の効果 以上説明した様に、本発明によるクランク角度位置検
出方法においては、エンジンのクランク軸と共に回転す
る回転体にその回転方向において複数の被検知部を相隣
り合う被検知部間の角度間隔のうちの1つが最大若しく
は最小となるよう形成し、前記被検知部の回転軌跡近傍
に被検知部が近傍を通過する毎にパルスを発生する検知
素子を設け、前記パルスの発生間隔を計時手段により計
測し、前記発生間隔の前回値と今回値との比を算出し前
記回転体の1回転毎に得られる前記比の中の最大値若し
くは最小血を求めこれに応じて前記クランク軸の基準回
転角度位置を検出して、検出した基準回転角度位置に基
づいて前記エンジンのクランク角度位置を検出すること
とし、更に、 前記回転体の回転速度が所定低回転速度を下回った場
合には、前記基準回転角度位置及び前記クランク角度位
置に関する情報を一旦消去した後前記パルスの次の検出
を待って前記基準回転角度位置及び前記クランク角度位
置の検出を再開することを特徴としている故、この所定
低回転速度以下において起り易い検知素子の被検知部検
知の失敗によって回転角度位置が誤検出されることを防
止できると共に、速やかに基準回転角度位置を新たに検
出できる。
Effect of the Invention As described above, in the crank angle position detecting method according to the present invention, a plurality of detected parts are arranged on a rotating body that rotates together with the crankshaft of the engine in the rotation direction, and the angular interval between the detected parts adjacent to each other. Is formed so that one of them becomes maximum or minimum, and a detection element is provided near the rotation locus of the detected part to generate a pulse each time the detected part passes through the vicinity. And the ratio between the previous value and the current value of the occurrence interval is calculated, and the maximum value or the minimum blood in the ratio obtained for each rotation of the rotating body is obtained, and the reference of the crankshaft is accordingly determined. A rotational angle position is detected, and a crank angle position of the engine is detected based on the detected reference rotational angle position. Further, the rotational speed of the rotating body falls below a predetermined low rotational speed. In this case, after the information regarding the reference rotation angle position and the crank angle position is once deleted, the detection of the reference rotation angle position and the crank angle position is restarted after waiting for the next detection of the pulse. Therefore, it is possible to prevent the rotation angle position from being erroneously detected due to the failure of the detection of the detected portion of the detection element which is likely to occur below the predetermined low rotation speed, and to newly detect the reference rotation angle position promptly.

【図面の簡単な説明】[Brief description of the drawings]

第1図は本発明を適用した内燃機関の点火装置を示した
ブロック図、第2図は第1図に示したCPUに入力される
パルスの信号波形及び各パルスに応じたステージナン
バ,パルスのカウント値n,ステージカウント値SC,パル
スの発生間隔Δtn,発生間隔Δtnの比Tnを示した図、第
3図は第1図に示したCPUの動作を示したフローチャー
トである。 主要部分の符号の説明 1……クランクシャフト 2……回転体 3a〜3g……磁性突起 5……検知素子 7……CPU 12……点火ユニット M……マイクロコンピュータ
FIG. 1 is a block diagram showing an ignition device of an internal combustion engine to which the present invention is applied, and FIG. 2 is a diagram showing signal waveforms of pulses input to a CPU shown in FIG. 1, a stage number corresponding to each pulse, and pulse numbers. count value n, the stage count value SC, the pulse generation interval Delta] t n, the diagram showing the ratio T n of the generation interval Delta] t n, FIG. 3 is a flowchart showing the operation of the CPU shown in Figure 1. Description of Signs of Main Parts 1 ... Crankshaft 2 ... Rotating Body 3a to 3g ... Magnetic Projection 5 ... Detection Element 7 ... CPU 12 ... Ignition Unit M ... Microcomputer

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】エンジンのクランク軸と共に回転する回転
体にその回転方向において複数の被検知部を相隣り合う
被検知部間の角度間隔のうちの1つが最大若しくは最小
となるよう形成し、前記被検知部の回転軌跡近傍に被検
知部が近傍を通過する毎にパルスを発生する検知素子を
設け、前記パルスの発生間隔を計時手段により計測し、
前記発生間隔の前回値と今回値との比を算出し前記回転
体の1回転毎に得られる前記比の中の最大値若しくは最
小値を求めこれに応じて前記クランク軸の基準回転角度
位置を検出して、検出した基準回転角度位置に基づいて
前記エンジンのクランク角度位置を検出するクランク角
度位置検出方法であって、 前記回転体の回転速度が所定低回転速度を下回った場合
には、前記基準回転角度位置及び前記クランク角度位置
に関する情報を一旦消去した後前記パルスの次の検出を
待って前記基準回転角度位置及び前記クランク角度位置
の検出を再開することを特徴とする回転体の回転角度位
置検出方法。
A rotating body that rotates together with a crankshaft of an engine, wherein a plurality of detected parts are formed in a direction of rotation such that one of angular intervals between adjacent detected parts is maximum or minimum; A detection element that generates a pulse every time the detected portion passes in the vicinity of the rotation locus of the detected portion is provided, and the pulse generation interval is measured by a timer.
The ratio between the previous value and the current value of the generation interval is calculated, and the maximum value or the minimum value of the ratio obtained for each rotation of the rotating body is determined, and the reference rotation angle position of the crankshaft is accordingly determined. A crank angle position detection method for detecting and detecting a crank angle position of the engine based on the detected reference rotation angle position, wherein when the rotation speed of the rotating body falls below a predetermined low rotation speed, A method of temporarily erasing information relating to a reference rotation angle position and the crank angle position and then restarting detection of the reference rotation angle position and the crank angle position after waiting for the next detection of the pulse; Position detection method.
JP10627688A 1988-04-28 1988-04-28 Rotational angle position detection method for rotating body Expired - Fee Related JP2641492B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10627688A JP2641492B2 (en) 1988-04-28 1988-04-28 Rotational angle position detection method for rotating body

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10627688A JP2641492B2 (en) 1988-04-28 1988-04-28 Rotational angle position detection method for rotating body

Publications (2)

Publication Number Publication Date
JPH01277662A JPH01277662A (en) 1989-11-08
JP2641492B2 true JP2641492B2 (en) 1997-08-13

Family

ID=14429556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10627688A Expired - Fee Related JP2641492B2 (en) 1988-04-28 1988-04-28 Rotational angle position detection method for rotating body

Country Status (1)

Country Link
JP (1) JP2641492B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009235963A (en) * 2008-03-26 2009-10-15 Honda Motor Co Ltd Method and device for detecting crank angle of engine
DE102010003561A1 (en) 2010-03-31 2011-10-06 Robert Bosch Gmbh Method for the systematic treatment of errors

Also Published As

Publication number Publication date
JPH01277662A (en) 1989-11-08

Similar Documents

Publication Publication Date Title
JP2648929B2 (en) Engine cylinder discriminator
JPH06229311A (en) Accidental fire detecting method by crank shaft rotational fluctuation
JPS6132500B2 (en)
JP3508720B2 (en) Engine control device
JPH06129298A (en) Misfire detection device of internal combustion engine
US6612296B1 (en) Control apparatus for internal combustion engine
JP2004044440A (en) Cylinder discriminating device of internal combustion engine
JP2641492B2 (en) Rotational angle position detection method for rotating body
US6216669B1 (en) Control system for an internal combustion engine
EP0424917A2 (en) System for identifying misfire cylinder in internal combustion engine
JPH0678967B2 (en) Positioning method of top dead center of engine
JPH1162687A (en) Engine rotation direction judging device
JP2010150953A (en) Misfire diagnostic device for internal combustion engine
KR940000347B1 (en) Internal combustion engine control method
JPS5851155B2 (en) Electronic ignition control device for internal combustion engines
JP2003232255A (en) Reverse rotation detecting device for internal combustion engine and cylinder identifying device
JP2707275B2 (en) Engine control device
JP2001323836A (en) Abnormality detection method for crank synchronous task
JP2003065139A (en) Engine control device
JP3159312B2 (en) Engine ignition timing control device
JPH0742929B2 (en) Ignition timing control device and control method for internal combustion engine
JP3985597B2 (en) Ignition device for internal combustion engine
JPH05340293A (en) Misfire detection method by crank shaft rotation fluctuation
JP2596155B2 (en) Method and apparatus for controlling ignition timing of internal combustion engine
KR100444049B1 (en) Method of detecting cylinder for engine

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees