JPS59138773A - Control method for knocking of internal-combustion engine - Google Patents

Control method for knocking of internal-combustion engine

Info

Publication number
JPS59138773A
JPS59138773A JP58012052A JP1205283A JPS59138773A JP S59138773 A JPS59138773 A JP S59138773A JP 58012052 A JP58012052 A JP 58012052A JP 1205283 A JP1205283 A JP 1205283A JP S59138773 A JPS59138773 A JP S59138773A
Authority
JP
Japan
Prior art keywords
learning
knocking
value
amount
load
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.)
Granted
Application number
JP58012052A
Other languages
Japanese (ja)
Other versions
JPH0646026B2 (en
Inventor
Yuji Takeda
武田 勇二
Katsushi Anzai
安西 克史
Yoshiyasu Ito
嘉康 伊藤
Toshio Suematsu
末松 敏男
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP58012052A priority Critical patent/JPH0646026B2/en
Publication of JPS59138773A publication Critical patent/JPS59138773A/en
Publication of JPH0646026B2 publication Critical patent/JPH0646026B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02PIGNITION, OTHER THAN COMPRESSION IGNITION, FOR INTERNAL-COMBUSTION ENGINES; TESTING OF IGNITION TIMING IN COMPRESSION-IGNITION ENGINES
    • F02P5/00Advancing or retarding ignition; Control therefor
    • F02P5/04Advancing or retarding ignition; Control therefor automatically, as a function of the working conditions of the engine or vehicle or of the atmospheric conditions
    • F02P5/145Advancing or retarding ignition; Control therefor automatically, as a function of the working conditions of the engine or vehicle or of the atmospheric conditions using electrical means
    • F02P5/15Digital data processing
    • F02P5/152Digital data processing dependent on pinking
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Electrical Control Of Ignition Timing (AREA)

Abstract

PURPOSE:To have smooth control of ignition timing by stopping the study control of the amount of study angle delay in a specific range including light load, and by giving a constant value to the specific study control amount or the light load side in said specific range. CONSTITUTION:At Step 125 is judged whether the number of engine revolution H is below 3,000rpm, and if it turns out to be YES, it shall be judged at Step 126 whether the load Q/N is over 0.81/rev. If the number of engine revolutions is over 3,000rpm, it shall be judged at Step 126 whether the load is no more than 0.8l/rev. Then the study cotrol made at Steps 120, 121 is stopped in the specific range including light load. In this case, the amount of study control is held at a constant value. Thereby the ignition timing can be controlled smoothly.

Description

【発明の詳細な説明】 本発明は内燃機関のノッキング制御方法に係り、特にノ
ッキングの有無によって比較的速い速度で遅進角を行う
ための補正遅角量とノッキングの有無によって比較的遅
い速度で遅進角を行いかつ学習制御によって変更される
学習遅角数とによって、基本点火進角を補正してノッキ
ングを制御する方法に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a knocking control method for an internal combustion engine, and particularly relates to a corrective retardation amount for performing retarding at a relatively fast speed depending on the presence or absence of knocking, and a method for controlling knocking at a relatively slow speed depending on the presence or absence of knocking. The present invention relates to a method for controlling knocking by retarding the ignition angle and correcting the basic ignition advance angle using a learning retard number changed by learning control.

従来の学習制御によるノッキング制御方法は、エンジン
回転数N、・吸入空気IQとエンジン回転数Nとの比Q
/Nまたは吸気管負圧で定まる負荷によって予め定まる
基本点火進角θBAsK  をマイクロコンピュータの
リードオンリメモリ (ROM)にマツプの形で記憶さ
せておき、次の(1)式に基いて実際にイグナイタを制
御する点火進角θ踵 を演算し、この点火進角を用いて
ノッキング制御を行うものである。なお、アイドリンク
時等の軽負荷においてはノッキングが発生しないため、
ノッキング制御を行なわないようにしている。
The conventional knocking control method using learning control is based on the engine speed N, the ratio Q between the intake air IQ and the engine speed N.
/N or the load determined by the intake pipe negative pressure, the basic ignition advance angle θBAsK is stored in the read-only memory (ROM) of the microcomputer in the form of a map, and the igniter is actually activated based on the following equation (1). The ignition advance angle θheel is calculated and the knocking control is performed using this ignition advance angle. In addition, knocking does not occur under light loads such as during idling, so
Knocking control is not performed.

θig=θBA81C−(θKG+θK)°°°01°
(1)ただし、θKGはノッキングのレベルを所定レベ
ルにするためにエンジン回転数と負荷とによって定オリ
かつ学習制御によって変更される学習遅角量、賑はノッ
キングが発生したとき点火時期を遅らせかつノッキング
が発生しなくなったとき点火時期を進める補正遅角量で
ある。
θig=θBA81C-(θKG+θK)°°°01°
(1) However, θKG is a learning retardation amount that is changed by constant and learning control depending on the engine speed and load in order to bring the level of knocking to a predetermined level. This is a correction retard amount that advances the ignition timing when knocking no longer occurs.

ここで、補正遅角量θには次のようにして求められる。Here, the corrected retard amount θ is determined as follows.

まず、マイクロホン等そ構成されたノッキングセンサを
用いてエンジンの振動を検出し、エンジン振動の平均値
(バックグラウンド)bの所定倍Kb (ただしKは比
例定数)とエンジン振動のピーク値aとを求め、このピ
・−り値aとKbの値とを比較する。ピーク値aがKb
の値を越えたときには1.ノッキング発生と判断して次
の(2)式に示すようにノッキング発生1回あたり所定
クランク角(例えば0.4°CA)点火時期が遅れるよ
う一補正遅角坂θKを変更する。
First, engine vibration is detected using a knocking sensor configured with a microphone, etc., and a predetermined times Kb (where K is a proportionality constant) of the average value (background) b of engine vibration and the peak value a of engine vibration are calculated. The peak value a and the value of Kb are compared. The peak value a is Kb
When the value exceeds 1. When it is determined that knocking has occurred, the correction retard angle θK is changed so that the ignition timing is delayed by a predetermined crank angle (for example, 0.4° CA) per occurrence of knocking, as shown in the following equation (2).

θに一θに+〇4°CA・・・・・・・・・(2)また
ピーク値aがKbO値以下のときには、ノッキングが発
生しなかったと判断して、第1のタイマを用いて所定時
間(例えば48 m sec )経過したか否かを判断
し、所定時間経過したときには次の(3)式に示すよう
に所定クランク角(例えば0.08゜CA)点火時期が
進むように補正遅角量θKを変更する。
+04°CA in θ - θ +04°CA (2) Also, when the peak value a is less than the KbO value, it is determined that knocking has not occurred, and the first timer is used to It is determined whether a predetermined time (e.g., 48 msec) has elapsed, and when the predetermined time has elapsed, the ignition timing is corrected to advance by a predetermined crank angle (e.g., 0.08° CA) as shown in the following equation (3). Change the retardation amount θK.

θに←θに−0,08°CA・・・・・・(3)また、
エンジン条件に応じた学習遅角量θKGは次のようにし
て算出される。まず、第1図に示すようにエンジン回転
数Nと負荷Q/Nとに対応させて学習遅角量を記憶させ
る番地0〜23をマイクロコンピュータのランダムアク
セスメモリ (RAM)に用意して学習マツプを作成し
ておく。エンジン回転数Nと吸入空気IAI Qとを取
込み、学習マツプ上において現在のエンジン条件を示す
点(す点を囲むRA Mの番地がh(h=u、、1・・
・・・・16)。
θ to ← θ to −0,08° CA... (3) Also,
The learned retardation amount θKG according to engine conditions is calculated as follows. First, as shown in Fig. 1, addresses 0 to 23 for storing learning retard amounts in correspondence with engine speed N and load Q/N are prepared in the random access memory (RAM) of the microcomputer, and a learning map is created. Create. The engine speed N and intake air IAI Q are taken in, and the RAM address surrounding the point (h=u, 1...
...16).

n+1.h+g、IQ+7であり、番地用に学習遅角駿
θKG!ny番地ハ+1に学習遅角量θxq(n+1)
n+1. h+g, IQ+7, and the learning delay angle θKG for the address! Learning retardation amount θxq(n+1) at address ny+1
.

番地h+6に学習遅角量θxa()1+6)、番地h+
7に学習遅角量θKG(、n+7)かも々記憶、されて
いるものとする。そして、番地間のエンジン回転数の差
をX2番地間の負荷の差をY1番番地と現在のエンジン
条件を示す点との間のエンジン回転数の差をt2番地菖
と現在のエンジン条件を示す点との間の負荷の差をyと
すれば、以下の(4)〜(6)式に示す2次元補間法に
より現在のエンジン条件を示す点の学習遅角量θKGが
求められる。
Learning retardation amount θxa()1+6) at address h+6, address h+
It is assumed that the learning retardation amount θKG (, n+7) is also stored in 7. Then, the difference in engine speed between the addresses is X2. If the difference in load between the two points is y, then the learning retardation amount θKG of the point indicating the current engine condition can be determined by the two-dimensional interpolation method shown in equations (4) to (6) below.

匁(θKG4−θKG (n+1) A=□+θKG、l’l・・・・・・(4)φ(θKa
(n−44)−〇KG (n+7)B=□+θKG(n
十〇) ・・・・・・ (5) そして上記学習マツプの学習制御は、次のようにして行
なわれる。まず、現在のエンジン条件に応じて学習制御
の時間を決定する第2のタイマとエンジン条件に無関係
に学習制御の時間を決定する第3のタイマとを用意する
。第2のタイマにより所定時間(例えば48 m 5e
c)経過したことが検出されたときには、補正遅角7i
eKが変更されて所定クランク角(例えば40CA)を
越えたか否( かを判断し、補正遅角量θKが所定クランク角を越えた
ときに、上記で説明した現在のエンジン条件を示す点を
囲む学習マツプ上の4点の学習遅角量に所定クランク角
(例えば0.04°CA)加算する。この結果点火時期
が遅れるように学習遅角量が学習制御される。一方、第
3のタイマにより所定時間(例えば16 s e c)
経過したことが検出されたときには、ノッキングの有無
に無関係に学習マツプ上の全ての番地の学習遅角量から
所定クランク角(例えば0.01’CA)減算して、点
火時期が進むように学習遅角量を学習制御する。
Momme (θKG4-θKG (n+1) A=□+θKG, l'l...(4)φ(θKa
(n-44)-〇KG (n+7)B=□+θKG(n
(10) ... (5) The learning control of the learning map described above is performed as follows. First, a second timer that determines the learning control time depending on the current engine conditions and a third timer that determines the learning control time regardless of the engine conditions are prepared. A second timer is used for a predetermined period of time (for example, 48 m 5e
c) When it is detected that the time has elapsed, the correction retard angle 7i
It is determined whether or not eK has been changed to exceed a predetermined crank angle (for example, 40CA), and when the corrected retardation amount θK exceeds the predetermined crank angle, a point indicating the current engine condition explained above is enclosed. A predetermined crank angle (for example, 0.04° CA) is added to the learning retard amounts at the four points on the learning map.As a result, the learning retard amounts are learning-controlled so that the ignition timing is delayed.Meanwhile, the third timer for a predetermined time (for example, 16 seconds)
When it is detected that the ignition timing has elapsed, a predetermined crank angle (for example, 0.01'CA) is subtracted from the learning retard amount of all addresses on the learning map regardless of the presence or absence of knocking, so that the ignition timing is learned to advance. Learning and controlling the amount of retardation.

而して、上記のようにして変更された補正遅角量θにと
、学習制御される学習マツプから2次元補間法により求
めた学習遅角量θK Gとを用い、前記(1)式に基い
て基本点火進角θBASEを補正して、ノッキングを制
御するのである。
Using the corrected retardation amount θ changed as described above and the learning retardation amount θK G obtained by two-dimensional interpolation from the learning map subjected to learning control, the above equation (1) is calculated. Based on this, the basic ignition advance angle θBASE is corrected to control knocking.

ところで、第3図に示すように、基本点火進角Adva
nce F’or Be5t Torgue )は、エ
ンジン回転数に応じて曲線C1のように変化する。また
、空気が湿っている場き等のノッキングが発生しにくい
ときの微小ノッキング発生点火時期は曲線C2のように
なり、空気が乾燥している場合等のノッキングが発生し
易いときの微小ノッキング発生点火時期は曲線C3のよ
うになる。従って、エンジン回転数や環境条件によって
微小ノッキング発生点火時期が異っている。
By the way, as shown in Fig. 3, the basic ignition advance angle Adva
nce F'or Be5t Torgue) changes like a curve C1 according to the engine speed. In addition, the ignition timing at which knocking occurs when knocking is difficult to occur, such as when the air is humid, is as shown by curve C2, and when knocking is likely to occur, such as when the air is dry, minute knocking occurs. The ignition timing is as shown by curve C3. Therefore, the ignition timing at which minute knocking occurs varies depending on the engine speed and environmental conditions.

従って、上記のようガ学習制御によるノッキング制御方
法では、所定時間経過したときにノッキングの有無と無
関係に学習遅角量の全てを独立して学習制御により進角
側に変更していたため、遅角側の学習制御の機会が少な
いエンジン条件において学習遅角数が進角側となりすぎ
、ノッキングが発生するという問題点があった。また、
上記のように学習遅角量が進角側に学習制御される傾向
があるため、点火時期を進角側に制御する学習制御の速
度を速く設定することができず、上記第3図に示す場合
のようにエンジン条件等が変化してノッキングが発生し
にくくなったときに学習遅角量により点火時期が遅角し
すぎることがあり、ノッキングが発生しな(へ領域にお
いてベストトルクを得られガいという問題カドあった。
Therefore, in the above-mentioned knocking control method using learning control, all the learning retard amounts are independently changed to the advance side by learning control after a predetermined period of time has elapsed, regardless of the presence or absence of knocking. Under engine conditions where there are few opportunities for side learning control, the learning retard angle number becomes too advanced, resulting in the problem of knocking. Also,
As mentioned above, since the amount of learning retardation tends to be controlled to the advanced side, the learning control speed for controlling the ignition timing to the advanced side cannot be set quickly, as shown in Fig. 3 above. When engine conditions change and knocking becomes less likely to occur, the ignition timing may be retarded too much due to the learned retardation amount, and knocking does not occur (the best torque cannot be obtained in the region where knocking occurs). There was a problem with it being ugly.

ここで、上記問題点を解消するために補正遅角量が所定
範囲の値になるように学習遅角数の全てを学習制御する
ことが考えら11るが、軽負荷域の補正遅角量が所定値
以下となる領域においては学習遅角量が減少するように
学習制御され、エンジン条件が高負荷域に存在した場合
に学習された軽負荷側の学習遅角lも減少するように学
習制御されるため、補正遅角量が所定値以下となる領域
より少し負荷が上昇したときノッキングが発生するとい
う問題が生じる。
Here, in order to solve the above problem, it is possible to perform learning control on all the learning retard numbers so that the corrected retard amount falls within a predetermined range11, but the corrected retard amount in the light load range Learning control is performed so that the amount of learning retardation is reduced in a region where is less than a predetermined value, and the learning retardation l on the light load side that is learned when the engine condition is in a high load range is also learned to be reduced. Therefore, a problem arises in that knocking occurs when the load slightly increases beyond the range where the corrected retard amount is equal to or less than a predetermined value.

本発明は上記問題点を解消すべく成されたもので、軽負
荷域でエンジンが運転されても学習遅角量が狂わされず
、静負荷域よシ若干負荷が上昇してもノッキングが発生
しないようにしたノッキング制御方法を提供することを
目的とする。
The present invention was made to solve the above-mentioned problems, and the learning retardation amount is not disturbed even when the engine is operated in a light load range, and knocking does not occur even if the load increases slightly from the static load range. It is an object of the present invention to provide a knocking control method.

上記目的を達成するために本発明の構成は、エンジン回
転数と負荷とによって定まる基本点火進角から、ノッキ
ングのレベルを所定レベルにするためにエンジン回転数
と負荷とによって定まシかつ学習制御によって変更され
る学習遅角数とノッキングが発生したとき点火時期を遅
らせかつノッキングが発生しなくなったとき点火時期を
進める補正遅角量との和を減算し、前記補正遅角量が所
定範囲の値になるように前記学習遅角量を学習制御して
、ノッキングを制御する内燃機関のノッキング制御方法
において、軽負荷を含む特定領域内の学習遅角量の学習
制御を停止しかつ該特定範囲内の軽負荷側の特定の学習
遅角数を一定の値にするようにしたものである。
In order to achieve the above object, the configuration of the present invention is based on a basic ignition advance angle determined by the engine speed and load, and a learning control that determines the knocking level based on the engine speed and load in order to bring the knocking level to a predetermined level. Subtract the sum of the learning retard number changed by and the corrected retard amount that retards the ignition timing when knocking occurs and advances the ignition timing when knocking no longer occurs, and determines that the corrected retard amount is within a predetermined range. A knocking control method for an internal combustion engine, in which the learning control method of the internal combustion engine controls knocking by learning-controlling the learning retardation amount so that the learning retardation amount reaches a value of The specific learning delay angle number on the light load side is set to a constant value.

上記本発明の構成によれば、軽負荷側の特定領域内で学
習制御を停止し、この特定領域内の軽負荷側の学習遅角
数を一定としているため、エンジン条件が特定領域内に
存在するときでも高負荷側の学習遅角数が破壊されずに
最適なノッキング制御が持続でき、軽負荷から負荷が上
昇したときのノッキングの発生を軽減でき、また、軽負
荷°から高負荷側にかけて点火時期の変化がスムーズに
ガる、という特有の効果が得られる。
According to the configuration of the present invention, the learning control is stopped within a specific region on the light load side, and the number of learning retard angles on the light load side within this specific region is kept constant, so that the engine condition exists within the specific region. Optimal knock control can be maintained without destroying the learned retard angle number on the high load side even when the load is increased, reducing the occurrence of knocking when the load increases from light load. A unique effect can be obtained in that the ignition timing changes smoothly.

次に、本発明が適用されるエンジンの一例を第4図に示
す。このエンジンは図に示すように、エアクリーナ(図
示せず)の下流側に設けられた吸入空気量センサとして
のニア70−メータ2を備えている。エアフローメータ
2は、ダンピングチャンバ内に回動可能に設けられたコ
ンペンセーションプレート2Aと、コンベンセーション
プレー)2Aの開度を検出するポテンショメータ2Bと
から構成されている。従って、吸入空気IQはポテンシ
ョメータ2Bから出力される電圧として検出される。ま
た、エア470−メータ2の近傍には、吸入空気の温度
を検出する吸入空気温センサ4が設けられている。
Next, FIG. 4 shows an example of an engine to which the present invention is applied. As shown in the figure, this engine is equipped with a near 70-meter 2 as an intake air amount sensor provided downstream of an air cleaner (not shown). The air flow meter 2 includes a compensation plate 2A that is rotatably provided in a damping chamber, and a potentiometer 2B that detects the opening degree of the convention plate 2A. Therefore, the intake air IQ is detected as the voltage output from the potentiometer 2B. Further, an intake air temperature sensor 4 is provided near the air meter 2 to detect the temperature of intake air.

エアスローメータ2の下流側には、スロットル弁6が配
置され、スロットル弁6の下流側には、サージタンク8
が設けられている。このサージタンク8には、インテー
クマニホールド10が連結されており、このインテーク
マニホールド10内に突出して燃料噴射弁12が配置さ
れている。
A throttle valve 6 is arranged downstream of the air throw meter 2, and a surge tank 8 is arranged downstream of the throttle valve 6.
is provided. An intake manifold 10 is connected to the surge tank 8, and a fuel injection valve 12 is disposed protruding into the intake manifold 10.

インテークマニホールド10は、エンジン本体14の燃
焼室14Aに接続され、エンジンの燃焼室14Aはエキ
ゾーストマニホールド16を介して三元触媒を充填した
触媒コンバータ(図示せず)に接続されている。そして
、エンジン本体14には、マイクロホン等で構成された
、エンジンの振動を検出するノッキングセンサ18が設
けられている。
The intake manifold 10 is connected to a combustion chamber 14A of the engine body 14, and the combustion chamber 14A of the engine is connected via an exhaust manifold 16 to a catalytic converter (not shown) filled with a three-way catalyst. The engine body 14 is provided with a knocking sensor 18 configured with a microphone or the like and configured to detect vibrations of the engine.

なお、20は点火プラグ、22は混合気を理論空燃比近
傍に制御するための02センサ、24はエンジン冷却水
温を検出する冷温水温センサである。
Note that 20 is a spark plug, 22 is an 02 sensor for controlling the air-fuel mixture near the stoichiometric air-fuel ratio, and 24 is a cold/hot water temperature sensor for detecting the engine cooling water temperature.

エンジン本体14の点火プラグ20は、ディストリビュ
ータ26に接続され、ディストリビュータ26はイグナ
イタ28に接続されている。このディストリビュータ2
6には、ピックアップとディストリビュータシャフトに
固定されたシグナルロータとで構成された、気筒判別セ
ンサ30およびエンジン回転角センサ32が設けられて
いる。
The spark plug 20 of the engine body 14 is connected to a distributor 26, and the distributor 26 is connected to an igniter 28. This distributor 2
6 is provided with a cylinder discrimination sensor 30 and an engine rotation angle sensor 32, which are composed of a pickup and a signal rotor fixed to a distributor shaft.

この気筒判別センサ30は、例えばクランク角720度
毎に気筒判別信号をマイクロコンピュータ等で構成され
た電子制御回路34へ出力し、このエンジン回転角セン
サ32は、例えばクランク角30度毎にクランク角基準
位置信号を電子市1]御回路34へ出力する。
This cylinder discrimination sensor 30 outputs a cylinder discrimination signal to an electronic control circuit 34 constituted by a microcomputer or the like, for example, every 720 degrees of crank angle, and this engine rotation angle sensor 32 outputs a cylinder discrimination signal, for example, every 30 degrees of crank angle. The reference position signal is output to the electronic city 1 control circuit 34.

電子制御回路34は、第2図に示すように、ランダム・
アクセス・メモ’J  (RAM)36と、リード争オ
ンリー・メモリ (ROM)38と、中央処理装置(C
PU)40と、フロック(CLOCK)41と、第1の
入出力ボート42と、第2の入出力ボート44と、第1
の出力ポート46と、第2の出力ポート48とを含んで
構成され、RAM36.ROM38.CPU40.CL
OCK41、第1の入出力ボート42、第2の入出力ボ
ート44、第1の出力ポート46および第2の出力ポー
ト48は、バス50により接続されている。第1の入出
力ボート42には、バッファ(図示せず)、マルチプV
クサ54.アナログ−ディジタル(A/D)変換器56
を介して、エアフローメータ2.冷却1水温センサ24
および吸気温上ンサ4等カニ接続されている。このマル
チプレクサ、54およびA/D変換器56は、第1の入
出力ボート42から出力される信号により制御される。
The electronic control circuit 34, as shown in FIG.
Access Memo'J (RAM) 36, Read Only Memory (ROM) 38, and Central Processing Unit (C
PU) 40, a clock (CLOCK) 41, a first input/output boat 42, a second input/output boat 44, and a first input/output boat 44.
and a second output port 48, and the RAM 36. ROM38. CPU40. C.L.
The OCK 41, the first input/output port 42, the second input/output port 44, the first output port 46, and the second output port 48 are connected by a bus 50. The first input/output boat 42 includes a buffer (not shown), a multiplex V
Kusa 54. Analog-digital (A/D) converter 56
Through the air flow meter 2. Cooling 1 water temperature sensor 24
and intake air temperature riser 4 etc. are connected. The multiplexer 54 and A/D converter 56 are controlled by signals output from the first input/output port 42.

第2の入出力ボート44には、バッファ(図示せず)お
よびコンパレータ62を介してOxセンサ22が接続さ
れ、波形整形ローち4を介して気筒判別センサ30およ
びエンジン回転角センサ32が接続されている。
An Ox sensor 22 is connected to the second input/output boat 44 via a buffer (not shown) and a comparator 62, and a cylinder discrimination sensor 30 and an engine rotation angle sensor 32 are connected via a waveform shaping rotor 4. ing.

また、第2の入出カポ−)44には、バンドパス7フイ
ルタ60.ピークホールド回路61.チャンネル切換回
路66およびA/D変換器68を介してノッキングセン
サ18が接続されている。このバンドパスフィルタは積
分回路63を介してチャンネル切換回路66には、ピー
クホールド回路61の出力と積分回路63の出力とのい
ずれか一方をA/D変換器68に入力するための第2の
人出力ボート44から出力される制御イ言号が入力され
ておシ、ピークホールド回路61には第2の入出力ボー
ト44からリセット信号が入力されている。
In addition, the second input/output capo 44 includes a bandpass 7 filter 60. Peak hold circuit 61. Knocking sensor 18 is connected via channel switching circuit 66 and A/D converter 68. This band-pass filter is connected to a channel switching circuit 66 via an integrating circuit 63, and a second circuit for inputting either the output of the peak hold circuit 61 or the output of the integrating circuit 63 to an A/D converter 68. A control signal output from the human output boat 44 is input, and a reset signal is input from the second input/output boat 44 to the peak hold circuit 61.

また、第1の出力ポート46は駆動回路70を介してイ
グナイタ28に接続され、第2の出力ポート48は駆動
回路72を介して燃料噴射装置12に接続されている。
Further, the first output port 46 is connected to the igniter 28 via a drive circuit 70, and the second output port 48 is connected to the fuel injection device 12 via a drive circuit 72.

電子制御回路34のROM3 Bには、エンジン回転数
と吸入空気駿人で表わされる基本点火進角θBABKの
マツプおよび基本燃料噴射量等が予め記憶されておシ、
エア70−メータ2からの信号およびエンジン回転角セ
ンサ32からの信号によυ基本点火進角および基本燃料
噴射量が続出されると共に、冷却水温センサ24および
吸気温センサ4からの信号を含む各種の信号により、上
記基本点火進角および基本燃料噴射量に補正点火進角お
よび補正燃料噴射数が加えられ、イグナイタ28および
燃料噴射弁12が制御される。02センサ22から出力
される空燃比信号は、混合気の空燃比を理論空燃比近傍
に制御する空燃比制御に使用される。また、電子制御回
路34のRAM36には、第1図に示す学習マツプが予
め記憶されている。
The ROM 3B of the electronic control circuit 34 stores in advance a map of the basic ignition advance angle θBABK expressed by the engine speed and intake air intake, the basic fuel injection amount, etc.
The basic ignition advance angle and the basic fuel injection amount are continuously output based on the signals from the air meter 2 and the engine rotation angle sensor 32, and various signals including the signals from the cooling water temperature sensor 24 and the intake air temperature sensor 4 are output. In response to the signal, a corrected ignition advance angle and a corrected fuel injection number are added to the basic ignition advance angle and basic fuel injection amount, and the igniter 28 and the fuel injection valve 12 are controlled. The air-fuel ratio signal output from the 02 sensor 22 is used for air-fuel ratio control to control the air-fuel ratio of the air-fuel mixture to near the stoichiometric air-fuel ratio. Further, a learning map shown in FIG. 1 is stored in advance in the RAM 36 of the electronic control circuit 34.

次に、上記のようなエンジンに本発明を適用した場合の
実施例について詳細に説明する。なお、本発明の詳細な
説明するにあたって、燃料噴射制御、空燃比制御1点火
時期制御のメインルーチン等については従来と同様であ
るので説明を省略し、本発明に関連するノッキング制御
のルーチンのみについて説明する。
Next, an embodiment in which the present invention is applied to the engine as described above will be described in detail. In the detailed explanation of the present invention, the main routines of fuel injection control, air-fuel ratio control, ignition timing control, etc. are the same as conventional ones, so the explanation will be omitted, and only the knocking control routine related to the present invention will be explained. explain.

第6 図ハ、マイクロコンピュータを用いて本発明を実
施する場合の30°CA毎の割込みルーチンを示す。ま
ず、ステップ81においてエンジン回転角センサ32か
らの信号に基いて回転時間からエンジン回転数Nを求め
、ステップ82において気鋪判別センザ30から気筒判
別信号が入力されてから何番目の割込みかを数えて現在
のクランク角を示すフラグを立てる。次に、ステップ8
3において、ステップ82で立てたフラグが上死点(T
DC)のフラグであるか否かを判断する。現在上死点で
ない場合にはステップ88へ進み、現在上死点である場
合にはステップ84においてノックゲートが閉じている
か否かを判断する。ノックゲートが開いているときはス
テップ85においてノックゲートを閉じ、ノックゲート
が閉じているときはステップ86においてチャンネル切
換回路66を切換えて、ノッキング七ンサ18から出力
されるエンジン振動信号をパントノくスフイルり60、
積分M路63およびチャンネル切換回路66を介してA
/D変換器68に入力し、エンジン振動の平均値すなわ
ちバックグラウンドレベルのA/D変換を開始する。続
いて、ステップ87においてノックゲートの閉時側t1
、すなわち次にノックゲートを閉じる時刻を算出して時
刻一致割込みAをセットする。
FIG. 6C shows an interrupt routine every 30° CA when the present invention is implemented using a microcomputer. First, in step 81, the engine rotation speed N is calculated from the rotation time based on the signal from the engine rotation angle sensor 32, and in step 82, the number of interruptions is counted after the cylinder discrimination signal is input from the air pressure discrimination sensor 30. to set a flag indicating the current crank angle. Next, step 8
3, the flag set in step 82 is at top dead center (T
DC) flag. If the current position is not the top dead center, the process proceeds to step 88, and if the current position is the top dead center, it is determined in step 84 whether or not the knock gate is closed. When the knock gate is open, the knock gate is closed in step 85, and when the knock gate is closed, the channel switching circuit 66 is switched in step 86, and the engine vibration signal output from the knock sensor 18 is switched to a pantone filter. ri60,
A via the integral M path 63 and the channel switching circuit 66
A/D converter 68 starts A/D conversion of the average engine vibration value, that is, the background level. Subsequently, in step 87, the closing side t1 of the knock gate is
That is, the next time to close the knock gate is calculated and time coincidence interrupt A is set.

次に、ステップ88においてステップ82で立てたフラ
グを基にクランク角が9000A  BTDC(上死点
前)に匁ったか否かを判断する。クランク角が90°C
A  BTDCでないときはステップ91へ進み、90
°CA  BTDCのときはステップ89において補正
進角駿θにの更新をすると共に点火時期の計算処理を行
う(この詳細については以下で説明する)。ステップ9
0では、ステップ89で計算した点火時期と現在の時刻
とによシイブナイタ28をオンさせる時刻を求めて時刻
一致割込みBをセットすると共に、イグナイタオンのフ
ラグを立てる。そして、ステップ91においてクランク
角が60°CA  BTDCになったか否かを判断し、
60°CA  BTDCでない場合にはメインルーチン
へリターンシ、60°CA  BTDCである場合には
ステップ92においてイグナイタのオフ時刻を計算して
時刻一致割込みBをセットし、ステップ90で立てたイ
グナイタオンのフラグをおろす。
Next, in step 88, it is determined based on the flag set in step 82 whether the crank angle has reached 9000A BTDC (before top dead center). Crank angle is 90°C
A If it is not BTDC, proceed to step 91,
When it is CA BTDC, the corrected advance angle is updated to θ in step 89, and the ignition timing is calculated (details of this will be explained below). Step 9
0, the time to turn on the igniter 28 is determined based on the ignition timing calculated in step 89 and the current time, and a time coincidence interrupt B is set, and an igniter-on flag is set. Then, in step 91, it is determined whether the crank angle has reached 60° CA BTDC,
If it is not 60° CA BTDC, return to the main routine; if it is 60° CA BTDC, calculate the igniter off time in step 92, set time coincidence interrupt B, and set the igniter on flag set in step 90. Take it down.

次に第7図に示す時刻一致割込みAについて説明する。Next, the time coincidence interrupt A shown in FIG. 7 will be explained.

この割込みルーチンは1エンジン振動のピーク値を求め
るものであり、第6図のステップ87でセットした時刻
になると割込みが行なわれ、ステップ93においてピー
クホールド回路61に保持されたピーク値をチャンネル
切換回路66を介してA/D変換器68に入力してピー
クホールド値のA/D変換を開始してメインルーオンへ
リターンする。
This interrupt routine is for finding the peak value of one engine vibration, and when the time set in step 87 of FIG. The peak hold value is inputted to the A/D converter 68 via A/D converter 66 to start A/D conversion of the peak hold value, and then returned to the main circuit.

第8図は、時刻一致割込みBのルーチンを示すものであ
り、第6図のステップ90およびステップ92にセット
した時刻になると割込み75二行なわれる。ステップ9
4では、イグナイタオンのフラグが立っているか、すな
わちこのフ、ラグが1力λ否かを判断し、フラグが立っ
ているときはステップ。
FIG. 8 shows the routine of time coincidence interrupt B, and when the time set in step 90 and step 92 of FIG. 6 comes, an interrupt 752 is performed. Step 9
In step 4, it is determined whether the igniter on flag is set, that is, whether this flag is 1 force λ or not, and if the flag is set, step.

96においてイグナイタをオンし、フラグがおりている
ときにはステップ95においてイグナイタをオフし、メ
インルーチンへリターンスル。
The igniter is turned on in step 96, and when the flag is off, the igniter is turned off in step 95 and the process returns to the main routine.

第9図は、A/D変換完了割込みルーチンを示すもので
あり、バックグラウンドレベルのA/D変換およびピー
クホールド値のA/D変換73(完了したときにこの割
込みが行なわれる。まず、ステップ97において現在ノ
ックゲートが開いているか否かを判断する。ノックゲー
トが閉じているときには1、ステップ98において第6
図のステップ。
FIG. 9 shows the A/D conversion completion interrupt routine, in which the A/D conversion of the background level and the A/D conversion of the peak hold value (this interrupt is performed when the A/D conversion 73 (of the peak hold value) is completed. First, step In step 97, it is determined whether or not the knock gate is currently open.If the knock gate is closed, the sixth
Diagram steps.

86で変換したA / D変換値をRAM36のメモリ
に記憶してバックグラウンドレベルbとし、ステップ9
9においてノックゲートを開いてメインルーチンへリタ
ーンする。一方、ノックゲートカニ開いているときには
、第7図のステップ93で変換したA/D変換値をRA
M36のメモリKl己憶してピーク値aとし、ステップ
101においてノック’y’−)を閉じてメインルーチ
ンへリターンスる。
The A/D conversion value converted in step 86 is stored in the memory of RAM 36 and set as background level b.
At 9, the knock gate is opened and the process returns to the main routine. On the other hand, when the knock gate crab is open, the A/D conversion value converted in step 93 of FIG.
The memory K1 of M36 is stored as the peak value a, and in step 101, the knock 'y'-) is closed and the process returns to the main routine.

第10図は、ノッキングが発生していないときの時間と
学習制御する時間とをカウントするための所定時間(例
えば4m5ec)毎に行なわれる割込みルーチンを示す
ものである。まず、ステップ102においてノッキング
が発生しないときの時間を求めるカウンタTIMEIの
カウント値を1増加させ、ステップ103において学習
制御する時間を求めるカウンタTIMFJ2のカウント
値を1増加させる。次のステップ104において、カウ
ンタTIMEIのカウント値が12(48m8ee )
以下になっているが否かを判断する。カウント値が12
を越えているときにはステップ105においてカウンタ
TIMElのカウント値を12とし、カウント値が12
以下のときにはステップ106にお込てカウンタTIM
E2のカウント値が12以下になっているか否かを判断
する。ここで、カウント値が12を越えているときには
ステップ107においてカウンタTIME20カウント
値が12以下のときにはメインルーチンへリターンする
FIG. 10 shows an interrupt routine that is performed every predetermined time (for example, 4 m5 ec) for counting the time when no knocking occurs and the time for learning control. First, in step 102, the count value of the counter TIMEI, which determines the time when no knocking occurs, is increased by 1, and in step 103, the count value of the counter TIMFJ2, which determines the time for learning control, is increased by 1. In the next step 104, the count value of the counter TIMEI is 12 (48m8ee).
Determine whether the following is true or not. Count value is 12
If the count value exceeds 12, the count value of the counter TIMEL is set to 12 in step 105.
In the following cases, the counter TIM is entered in step 106.
It is determined whether the count value of E2 is 12 or less. Here, if the count value exceeds 12, the process proceeds to step 107, and if the counter TIME20 count value is 12 or less, the process returns to the main routine.

次に第6図のステップ89の詳細なルーチンを第11図
に基いて説明する。第6図のステップ88でクランク角
が90°CA  BTDCになったと判断されると、ス
テップ122において負荷Q/Nが0.6 C1/ r
 e v3以上か否か、すなわちノッキング制御領域か
否かを判断する。ノッキング制御領域でないときはステ
ップ123で基本点火進角θBASE を点火進角θi
gとし1.ノッキング制御領域のときはステップ。10
8において、第9図のステップ100で記憶されたピー
ク値aと、第9図のステップ98で記憶されたパックグ
ラウンドレベルbに定数Kを乗算した値Kbとを比較す
る。ピーク値aが値Kbを越えているときにはノッキン
グが発生したと判断して、ステップ11Oにおいて補正
遅角量θKを所定角(例えば0.4°CCA)増加させ
、ステップ112においてノッキングが発生しない時間
をカウントするカウンタTIMEIのカウント値をクリ
アする。一方、ピーク値aが値Kb以下のときにはノッ
キングが発しないと判断して、ステップ109において
カウンタT I M J!E 1のカウント値が所定値
(12)以上に&つでいるか否かを判断し、カウント値
が所定値以上になっているときにはノッキングの発生し
ない状態が所定時間経続していることからステップ11
1において補正遅角量θKを所定角(例えば0,08°
CA)減少させた後、ステップ112でカウンタT I
 M E 1をクリアする。また、ステップ109にお
いてカウント値が所定値未満であるときには、ステップ
113へ進む。ステップ113では、上記のようにして
求められた補正進遅騒θにと学習マツプから2次元補間
法により求められる学習遅角針θKGとによって前述し
た(1)式に示すように基本点火進角θBAliBを補
正し、実際にイグナイタを制御する点火進角θigを算
出する。
Next, the detailed routine of step 89 in FIG. 6 will be explained based on FIG. 11. When it is determined in step 88 of FIG. 6 that the crank angle has reached 90° CA BTDC, the load Q/N is determined to be 0.6 C1/r in step 122.
e It is determined whether or not it is v3 or higher, that is, whether or not it is in the knocking control region. If it is not in the knocking control region, in step 123, the basic ignition advance angle θBASE is changed to the ignition advance angle θi.
g and 1. Step when in knock control area. 10
8, the peak value a stored in step 100 of FIG. 9 is compared with a value Kb obtained by multiplying the background level b stored in step 98 of FIG. 9 by a constant K. When the peak value a exceeds the value Kb, it is determined that knocking has occurred, and in step 11O, the correction retard amount θK is increased by a predetermined angle (for example, 0.4° CCA), and in step 112, the time during which knocking does not occur is determined. Clear the count value of the counter TIMEI. On the other hand, when the peak value a is less than or equal to the value Kb, it is determined that knocking will not occur, and in step 109, the counter T I M J! It is determined whether the count value of E1 is greater than or equal to a predetermined value (12), and if the count value is greater than or equal to the predetermined value, it means that a state in which no knocking occurs has continued for a predetermined period of time, so step 11
1, the correction retard amount θK is set to a predetermined angle (for example, 0.08°
CA) After decrementing, in step 112 the counter T I
Clear M E 1. Further, if the count value is less than the predetermined value in step 109, the process proceeds to step 113. In step 113, the basic ignition advance angle is calculated using the corrected advance/retardation θ obtained as described above and the learned retard point needle θKG obtained from the learning map by the two-dimensional interpolation method, as shown in the above-mentioned equation (1). θBAliB is corrected to calculate the ignition advance angle θig that actually controls the igniter.

次如学習マツプから現在のエンジン条件に対応する学習
進角量θKGを求めかつ学習制御するルーチンを説明す
る。第12図にこのルーチンをメインルーチンの途中か
ら示す。なお、第1図に示す学習マツプの6.7,8,
14.] 5,16゜17番地については学習制御は行
なわない。
A routine for determining the learning advance angle amount θKG corresponding to the current engine condition from the following learning map and performing learning control will be explained. FIG. 12 shows this routine from the middle of the main routine. In addition, 6.7, 8, and 6.7, 8 of the learning map shown in Figure 1
14. ] Learning control is not performed for addresses 5, 16° and 17.

まず、ステップ124において負荷Q/Nが0.6(1
/ r e v )以上か否か、すなわちノッキング制
御領域か否かを判断する。ノッキング制御領域でないと
きはそのままメインルーチンへ続キ、ノッキング制御領
域であるときは、ステップ114においてエンジン回転
数Nと負荷Q / Nとで定まる現在のエンジン条件を
示す点を囲む4点のRAMの番地を学習マツプ上に求め
る。次にステップ115におhて、求めた4点のRAM
の番地に記憶されているデータ、すなわち4点のRA 
Mの番地に記憶されている学習遅角前を基に2次元補間
法(2次元補間法のルーチンは後で説明する)により、
現在のエンジン条件を示す点の学習進角量θKGを算出
し、算出した値をRAMの所定場所に記憶する。
First, in step 124, the load Q/N is 0.6 (1
/ r ev ) or more, that is, whether or not it is in the knocking control region. If it is not in the knocking control region, continue directly to the main routine. If it is in the knocking control region, in step 114, the four points in the RAM surrounding the point indicating the current engine condition determined by the engine speed N and the load Q/N are stored. Find the street address on the learning map. Next, in step 115 h, the obtained four points of RAM
The data stored at the address, that is, the 4 points of RA
Using the two-dimensional interpolation method (the routine of the two-dimensional interpolation method will be explained later) based on the before learning delay angle stored at the address M,
A learning advance angle amount θKG at a point indicating the current engine condition is calculated, and the calculated value is stored in a predetermined location in the RAM.

次のステップ125では、エンジン回転数iIが300
0 (rpm)以下であるかを判断し、エンジン回転数
が3000[rpm]以下である場合にはステップ12
6で負荷Q/Nが0.8(f/rev)以上であるかを
判断し、またエンジン回転数が3000 (rpmlを
越える場合にはステップ12 !?、で負荷Q/Nが1
.o(//rev3未満か否かを判断する。ステップ1
26で負荷が0.8(1/ r e v )以上のとき
は次のステップ116へ進み、負荷が0.8 C1/ 
r e v)未満であるとキハ次のルーチンへ進む。ま
た、ステップ127で負荷が1.0(J/rev)以上
のときは次のステップ116へ進み、負荷が1.0未満
であるときは次のルーチンへ進む。この結果、第1図に
示す学習マツプの6.7,8,14,15,16,17
番地を結ぶ線未満の特定領域内にエンジン条件を示す点
が存在する場合には、学習制御がされず、この特定領域
を除すた領域内にエンジン条件を示す点が存在する場合
のみステップ116からステップ121で示す学習制御
が行なわれることになる。
In the next step 125, the engine speed iI is set to 300.
0 (rpm) or less, and if the engine rotation speed is 3000 [rpm] or less, step 12
Step 6 determines whether the load Q/N is 0.8 (f/rev) or more, and if the engine speed exceeds 3000 (rpm), step 12!?, determines whether the load Q/N is 1.
.. o(//Determine whether it is less than rev3. Step 1
26, when the load is 0.8 (1/re v ) or more, the process proceeds to the next step 116, and the load is 0.8 C1/
r e v), the process proceeds to the next routine. Further, if the load is 1.0 (J/rev) or more in step 127, the process proceeds to the next step 116, and if the load is less than 1.0, the process proceeds to the next routine. As a result, 6.7, 8, 14, 15, 16, 17 of the learning map shown in Fig.
If a point indicating the engine condition exists within a specific area below the line connecting the addresses, learning control is not performed, and only in step 116 if a point indicating the engine condition exists within the area excluding this specific area. The learning control shown in step 121 is then performed.

ステップ116では、第10図のステップ103でカウ
ントした学習制御する時間を求めるだめのカウンタTI
ME2のカウント値が所定値(例えば12)以上か否か
を判断する。カウント値が所定値未満である場合にはメ
インルーチンへリターンし、カウント値が所定値以上の
場合にはステ・ツブ117でカウンタT、IME2のカ
ウンタ値をクリアした後、第11図のステップ110お
よび111で更新された補正遅角量θKが第1の所定ク
ランク角(例えば2°CA)以上であるか否かをステッ
プ118で判断する。
In step 116, the counter TI is used to obtain the learning control time counted in step 103 in FIG.
It is determined whether the count value of ME2 is greater than or equal to a predetermined value (for example, 12). If the count value is less than a predetermined value, the process returns to the main routine, and if the count value is greater than or equal to the predetermined value, the counter values of counter T and IME2 are cleared in step 117, and then step 110 in FIG. Then, in step 118, it is determined whether the corrected retardation amount θK updated in step 111 is greater than or equal to a first predetermined crank angle (for example, 2° CA).

ステップ118で補正遅角量OKが第1の所定クランク
角未満であると判断された場合には、ステップ121に
おいて現在のエンジン条件を示す点を囲む学習マツプ上
の4点に記憶されている学習遅角量の各々から、所定ク
ランク角(例えば0.04CA)減算する学習制御を行
ない、メインルーチンへリターンする。この結果、補正
進角駄θKが第1の所定クランク角未満であるときには
学習マツプの学習遅角駿が小さくなるように学習制御さ
れ、学習遅角駿によって点火時期が進むように制御され
る。一方、ステップ118で補正遅角量θKが第1の所
定クランク角以上であると判断された場合には、ステッ
プ119において補正遅角lθKが第1の所定クランク
角より大きい値の第2の所定クランク角(例えば4’C
A)未満であるか否かを判断する。ステップ119にお
いて補正遅角量θKが第1の所定クランク角未満である
と判断された場合、すなわち補正遅角量eKが以下の条
件を満足する場合には、 第1の所定クランク角(2°CA) ≦θにく第2の所定クランク角(4°CA)・・・・・
・・・・(7) 学習制御せずにメインルーチンへリターンする。
If it is determined in step 118 that the corrected retardation amount OK is less than the first predetermined crank angle, then in step 121 the learning information stored in the four points on the learning map surrounding the point indicating the current engine condition is determined. Learning control is performed to subtract a predetermined crank angle (for example, 0.04 CA) from each retard amount, and the process returns to the main routine. As a result, when the corrected advance angle θK is less than the first predetermined crank angle, learning control is performed so that the learning retardation value of the learning map becomes smaller, and the ignition timing is controlled to advance by the learning retardation value. On the other hand, if it is determined in step 118 that the corrected retard angle θK is greater than or equal to the first predetermined crank angle, then in step 119 the corrected retard angle lθK is set to a second predetermined value larger than the first predetermined crank angle. Crank angle (e.g. 4'C)
A) Determine whether it is less than or not. If it is determined in step 119 that the corrected retard amount θK is less than the first predetermined crank angle, that is, if the corrected retard amount eK satisfies the following conditions, the first predetermined crank angle (2° CA) ≦θ Second predetermined crank angle (4°CA)...
...(7) Return to the main routine without performing learning control.

この結果、補正遅角量θKが所定範囲の値をとるときは
学習制御されず、学習遅角駄によっては点火時期が変更
されない。なお、補正遅角量が所定範囲の値をとるとき
においても、必要に応じて学習制御するようにしてもよ
い。ステップ119において補正遅角量θKが第2の所
定クランク角以上と判断された場合には、ステップ12
0において現在のエンジン条件を示す点を囲む学習マツ
プ上の4点に記憶されている学習遅角段の昏々に、所定
クランク角(例えば0,04℃A)加算する学習制御を
行ない、メインルーチンへリターンする。
As a result, when the corrected retard amount θK takes a value within a predetermined range, learning control is not performed, and the ignition timing is not changed by the learning retard. Note that even when the corrected retard amount takes a value within a predetermined range, learning control may be performed as necessary. If it is determined in step 119 that the corrected retard amount θK is greater than or equal to the second predetermined crank angle, step 12
At 0, learning control is performed to add a predetermined crank angle (for example, 0.04°C) to the learning retard stage stored at the four points on the learning map surrounding the point indicating the current engine condition, and the main Return to routine.

この結果、補正遅角量θKが第2の所定クランク角以上
であるときには学習マツプの学習遅角量が大きくなるよ
うに学習制御され、学習遅角於によって点火時期が遅れ
るように制御される。
As a result, when the corrected retardation amount θK is equal to or greater than the second predetermined crank angle, learning control is performed so that the learning retardation amount of the learning map becomes larger, and the ignition timing is controlled to be delayed by the learning retardation value.

以上のような学習制御することによって、補正遅角量が
所定範囲の値になるように学習マツプの学習遅角験が変
更される。
By performing the learning control as described above, the learning retardation experience of the learning map is changed so that the corrected retardation amount falls within a predetermined range of values.

以下に第12図の学習ルーチンを詳細に説明する。The learning routine shown in FIG. 12 will be explained in detail below.

第13図は、第12図ステップ11502次元補間法の
詳細なルーチンを示すものである。この2次元補間ルー
チンにおいて、学習マツプとして第1図に示したマツプ
を使用し、現在のエンジン条件を示す4点のRAMの番
地を第2図に示すようにn 、  n + 1 、  
m + 6 、  n + 7とする。まず、ステップ
130において、現在の負荷Q/Nが学習マツプ上の負
荷の上限値すなわち1.2(1/rev3以下であるか
否かを判断する。負荷が1.2[l / r e v 
)を越えている場合にはステ・ツブ131でVジスタロ
に1.2を記憶し、負荷が1゜、2(l / r e 
v ]以下である場合にはステップ134で現在の負荷
Q/Hの値をレジスタnに記憶する。
FIG. 13 shows a detailed routine of the two-dimensional interpolation method in step 1150 of FIG. 12. In this two-dimensional interpolation routine, the map shown in Fig. 1 is used as a learning map, and the four RAM addresses representing the current engine conditions are determined as n, n + 1, and n + 1 as shown in Fig. 2.
Let m + 6 and n + 7. First, in step 130, it is determined whether the current load Q/N is less than or equal to the upper limit of the load on the learning map, that is, 1.2 (1/rev3).
), the step knob 131 stores 1.2 in the V distal, and the load is 1°, 2(l/re
v] or less, the current value of load Q/H is stored in register n in step 134.

ステップ135では、現在のエンジン回転数Nが学習マ
ツプ上のエンジン回転数の上限値すなわち6000 (
rpm)以下であるか否かを判断する。
In step 135, the current engine speed N is determined to be the upper limit of the engine speed on the learning map, that is, 6000 (
rpm) or less.

エンジン回転数が6000 (rpm)を越えている場
合にはステップ136でレジスタmに6000を記憶し
、エンジン回転数が6000 (rpm)[F、である
場合にはステップ137で現在のエンジン回転数Nの値
をレジスタmに記憶する。ステップ138では、レジス
タnの値が学習マシプ上の負荷の下限値すなわち0.6
 C1/ r e v)以上であるか否かを判断し、レ
ジスタnの値が0.6未満であるときにはステップ13
9においてレジスタnの値を0.6とし、Vジスタロの
値が0.6以上であるときにはステップ140に進む。
If the engine speed exceeds 6000 (rpm), 6000 is stored in register m in step 136, and if the engine speed is 6000 (rpm) [F, the current engine speed is stored in step 137. Store the value of N in register m. In step 138, the value of register n is set to the lower limit of the load on the learning machine, that is, 0.6.
C1/r e v) or more, and if the value of register n is less than 0.6, step 13
In step 9, the value of register n is set to 0.6, and if the value of V distal is 0.6 or more, the process proceeds to step 140.

そしてステップ140では、Vジスタmの値が学習マツ
プ上のエンジン回転数の下限値すなわち100’0 (
rpm3以上であるか否かを判断し、レジスタmの値が
1000未満であるときにはステップ141においてV
ジスタmの値ヲ1000とし、レジスタmの値が100
0以上であるときには次のステップ142に進む。以上
の結果、現在のエンジン回転数Nおよび負荷Q/Nが学
習マツプ上の値であるときにはその値がレジスタmおよ
びnに各々記憶され、現在のエンジン回転数Nおよび負
荷Q/Nが学習マツプの上下限値を越えているときには
上下限値がレジスタmおよびnK各々記憶される。
Then, in step 140, the value of V register m is set to the lower limit of engine speed on the learning map, that is, 100'0 (
It is determined whether the rpm is 3 or more, and if the value of register m is less than 1000, in step 141 V
The value of register m is 1000, and the value of register m is 100.
If it is 0 or more, the process advances to the next step 142. As a result of the above, when the current engine speed N and load Q/N are values on the learning map, those values are stored in registers m and n, respectively, and the current engine speed N and load Q/N are on the learning map. When the upper and lower limit values are exceeded, the upper and lower limit values are stored in registers m and nK, respectively.

ステップ142からステップ149は、学習マツプ上の
4点を選択するためのルーチンである。
Steps 142 to 149 are a routine for selecting four points on the learning map.

まず、ステップ142においてレジスタnの値から0番
地の負荷の値0.6 C1/ r e v)を減算した
値をレジスタnに記憶させる。次に、ステップ143に
おいてレジスタnの値を負荷の目盛り間隔である0、2
 C1/ r e v)で除算し、その商の整数部をレ
ジスタnに記憶させると共に商の余シヲレシスタyに記
憶させる。このレジスタyの値は、第2図のn番地から
現在のエンジン条件を示す点までの負荷の値yに等しい
。また、レジスタnに記憶された商の整数部は、現在の
エンジン条件を示す点に最も近くかつ現在のエンジン条
件を示す点以下の番地の列(番地の横方向の並び、例え
ばO〜5番地の並びを第1列とする)の列番を示してい
る。そして、ステップ144においてレジスタyの値を
更に0.2 C1/r e vlで除算しておく。従っ
て、最終的にレジスタyには前述した(6)式のy/ 
Yに対応した値が記憶されている。
First, in step 142, the value obtained by subtracting the load value at address 0 (0.6 C1/r e v) from the value of register n is stored in register n. Next, in step 143, the value of register n is set to 0, 2, which is the load scale interval.
The integer part of the quotient is stored in register n, and the remainder of the quotient is stored in register y. The value of this register y is equal to the load value y from address n in FIG. 2 to the point representing the current engine condition. In addition, the integer part of the quotient stored in register n is the column of addresses closest to the point indicating the current engine condition and below the point indicating the current engine condition (horizontal arrangement of addresses, for example, addresses O to 5). The first column is the first column). Then, in step 144, the value of register y is further divided by 0.2 C1/r e vl. Therefore, in the end, register y contains y/ of equation (6) above.
A value corresponding to Y is stored.

ステップ145において、前述と同様にレジスタmの値
から0番地のエンジン回転数の値101000(1(r
pを減算した値をレジスタmに記憶させる。次に、ステ
ップ146においてレジスタmの値をエンジン回転数の
目盛り間隔である1000[rpm)で除算し、その商
の整数部をレジスタmに記憶させると共に商の余シをレ
ジスタXに記憶させる。このレジスタXの値は、第2図
のn番地から現在のエンジン条件を示す点までのエンジ
す点に最も近くかつ現在のエンジン条件を示す点以下の
番地の行(番地の縦方向の並び、例えば0゜6.12.
18番地の並びを第1行とする)の行番を示している。
In step 145, the value of the engine rotation speed at address 0 is changed from the value of register m to 101000 (1(r
The value obtained by subtracting p is stored in register m. Next, in step 146, the value in register m is divided by 1000 [rpm], which is the scale interval of engine rotational speed, and the integer part of the quotient is stored in register m, and the remainder of the quotient is stored in register X. The value of this register For example, 0°6.12.
18 is the first row).

そして、ステップ147においてレジスタXの値を更に
1000 (rpm)で除算しておく。従って、最終的
にレジスタXには前述した(4)、 (5)式のx /
 Xに対応した値が記憶されている。
Then, in step 147, the value of register X is further divided by 1000 (rpm). Therefore, finally, in register X, x /
A value corresponding to X is stored.

次にステップ148において、レジスタnの値を6倍し
てレジスタnに記憶させ、次のステップ149において
、レジスタnの値とレジスタmの値を加算してレジスタ
nに記憶させる。この結果、現在のエンジン条件を囲む
4点の左下角の番地、すなわち第2図のn番地の番地番
号が求められ、レジスタnに記憶される。
Next, in step 148, the value of register n is multiplied by six and stored in register n, and in the next step 149, the value of register n and the value of register m are added and stored in register n. As a result, the addresses of the lower left corner of the four points surrounding the current engine condition, that is, address number n in FIG. 2, are determined and stored in register n.

ステップ150においては、学習マツプ上ノn番地に記
憶されている学習遅角歎θKGHi読出してレジスタA
に記憶させ、n+1番地に記憶されている学習遅角量θ
KG (n+1)を読出してレジスタBに記憶させ、n
+6番地に記憶されている学習遅角量θKG (n+6
)を読出してVジスタCに記憶させ、そしてn+7番地
に記憶されている学習遅角量θKc(n−)−7)を読
出してレジスタDに記憶させる。続いて、ステップ(5
)においてレジスタAの値からレジスタBの値を減算し
テレシスタXの値を乗算し、更にその値にレジスタAの
値を加算してレジスタEに記憶させる。また、ステップ
152においてレジスタCの値からレジスタDの値を減
算してレジスタXの値を乗算L、Fにtの値にレジスタ
Cの値を加算シテレシスタFに記憶させる。そして最後
にステップ153において、レジスタEの値がらVジス
タFの値を減算してレジスタyの値を乗算し、更にその
値にレジスタEの値を加算して、現在のエンジン条件を
示す点の学習遅角量θKGとする。
In step 150, the learning retard angle θKGHi stored at address n on the learning map is read out from the register A.
The learning delay angle θ stored at address n+1
KG (n+1) is read and stored in register B, and n
Learning retardation amount θKG stored at address +6 (n+6
) is read out and stored in V register C, and the learned retard amount θKc(n-)-7) stored in address n+7 is read out and stored in register D. Next, step (5)
), the value of register B is subtracted from the value of register A, the value of telesistor X is multiplied, and the value of register A is added to this value, and the result is stored in register E. Further, in step 152, the value of register D is subtracted from the value of register C, the value of register X is multiplied by L, and the value of register C is added to the value of t to F, and the value of register C is stored in the register F. Finally, in step 153, the value of V register F is subtracted from the value of register E, multiplied by the value of register y, and the value of register E is added to that value to obtain a point indicating the current engine condition. Let the learning retard amount θKG be.

上記の第12図の学習ルーチンにおける学習遅角量θK
Gを学習制御によって更新するときの補正遅角量θにの
条件と学習遅角量θKGの増減との関係をまとめて次表
に示す。
Learning retardation amount θK in the learning routine shown in FIG. 12 above
The following table summarizes the relationship between the conditions for the corrected retard amount θ when G is updated by learning control and the increase/decrease in the learned retard amount θKG.

表 また、第14図に時間経過に対する補正遅角量θK、学
習遅角亀θKG、点火時期O1gの変動を示す。図から
理解されるように、補正遅角量θKが所定範囲の値のと
きには学習遅角量&xaは一定であり、補正遅角量θK
が所定範囲を越えたときには学習遅角量θKGが増加し
、補正遅角量θKが所定範囲未満のとき減少している。
Further, FIG. 14 shows changes in the corrected retard amount θK, learned retard angle θKG, and ignition timing O1g over time. As can be understood from the figure, when the corrected retard amount θK is within a predetermined range, the learned retard amount &xa is constant, and the corrected retard amount θK
When θK exceeds a predetermined range, the learned retard amount θKG increases, and when the corrected retard amount θK falls below a predetermined range, it decreases.

更に、第15図にエンジン回転数に対応する点火時期の
変動を示す。第15図において曲線C1〜C8は第3図
のものと同一であ勺、ノッキングが発生し易い場合でも
ノッキングが発生しにくい場合でも補正遅角量θKが常
に一定になって込ることが理解される。
Furthermore, FIG. 15 shows variations in ignition timing corresponding to engine speed. In Fig. 15, the curves C1 to C8 are the same as those in Fig. 3, and it is understood that the corrected retardation amount θK is always constant regardless of whether knocking is likely to occur or when knocking is unlikely to occur. be done.

以上の学習制御ルーチンが行なわれた後、第16図に示
す軽負荷側の特定番地の学習遅角量を一定ニスルルーチ
ンが実行される。このルーチンは、第12図の学習制御
ルーチンに続くものであり、このルーチン終了後はメイ
ンルーチンへ続くものである。ステップ190において
、第1図に示す学習マツプ上の軽負荷側における所定負
荷以下の特定のRAMの番地(本実施例では第1図の斜
線で示す範囲に存在する番地o、1,2,3,4゜5.
9,10,11としている)に記憶されている学習遅角
量を所定クランク角(例えばO’CA )に書換える。
After the above-described learning control routine is performed, a Nissl routine for keeping the learning retard amount constant at a specific address on the light load side shown in FIG. 16 is performed. This routine follows the learning control routine shown in FIG. 12, and after this routine ends, the main routine continues. In step 190, addresses of specific RAMs below a predetermined load on the light load side on the learning map shown in FIG. ,4゜5.
9, 10, and 11) is rewritten to a predetermined crank angle (for example, O'CA).

上記のように軽負荷側の特定の学習遅角量を一定値にす
ることにより、負荷Q/’Hに対する基本点火進角から
の要求遅角量(θに+θKG)は第17図に示す特性と
なる。第17図はエンジン回転数が2000 [rpm
)、4000 (rpmlの特性を示すものであるが、
軽負荷側においてはノッキングが発生する点火時期が基
本点火進角よ多進み側にありかつ学習遅角量を0°CA
の一定価にしているため、要求遅角量が0°CAになっ
ており、遅角量の立上シがスムーズになっていることが
理解される。
By setting the specific learned retard amount on the light load side to a constant value as described above, the required retard amount (+θKG for θ) from the basic ignition advance angle for the load Q/'H has the characteristics shown in Fig. 17. becomes. Figure 17 shows the engine speed is 2000 [rpm].
), 4000 (which shows the characteristics of rpml,
On the light load side, the ignition timing at which knocking occurs is more advanced than the basic ignition advance angle, and the learning retardation amount is 0°CA.
It is understood that since the value is set to a constant value, the required retardation amount is 0° CA, and the rise of the retardation amount is smooth.

また、第18図に負荷と遅角量との関係を示す。Further, FIG. 18 shows the relationship between the load and the amount of retardation.

図に示すように、負荷0.8 C1/ r e ’V1
以下の軽負荷域において学習遅角量が略一定になってい
るととが理解される。
As shown in the figure, load 0.8 C1/ r e 'V1
It is understood that the learning retardation amount is approximately constant in the following light load range.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は学習マツプを示す説明図、第2図は現在のエン
ジン条件を示す点とこの点を囲む4点を示す説明図、第
3図はエンジン回転数と点火時期との関係を示す線図、
第4図は本発明が適用されるエンジンを示す概略図、第
5図は第4図の電子制御回路を示すブロック図、第6図
は30°CA毎の割込みルーチンの流れ図、第7図は時
刻一致割込みAの流れ図、第8図は時刻一致割込みBの
流れ図、第9図はA/D完了割込みルーチンの流れ図、
第10図は4m  sec毎の割込みルーチンを示す流
れ図、嬉11図は補正遅角量を更新するル−チンの流れ
図、第12図は学習制御ルーチンの流れ図、第13図は
2次元補間ルーチンの流れ図、第14図は時間経過に対
する補正遅角駿、学習遅角数、点火時期の変動を示す線
図、第15図は第3図と同様のエンジン回転数と点火時
期との関係補正遅角歇および学奢遅角次の関係を示す線
図、第16図は特定の学習遅角Iを一定値にするため3
2・・・エンジン回転角センサ。 34・・・電子制御回路。 代理人 鵜 沼 辰 之。 ((1力゛2糸〕 第1図 第2図 第3図 エソリ゛シ回中入粕入 第6図 第7図    第8図 第9図 第11図 第12図 第14図 Bゴ閏悴= 1sec 】 第15図 箪16図
Figure 1 is an explanatory diagram showing the learning map, Figure 2 is an explanatory diagram showing a point indicating the current engine condition and the four points surrounding this point, and Figure 3 is a line indicating the relationship between engine speed and ignition timing. figure,
FIG. 4 is a schematic diagram showing an engine to which the present invention is applied, FIG. 5 is a block diagram showing the electronic control circuit of FIG. 4, FIG. 6 is a flowchart of an interrupt routine every 30° CA, and FIG. FIG. 8 is a flow chart of time match interrupt A, FIG. 9 is a flow chart of time match interrupt B, and FIG. 9 is a flow chart of A/D completion interrupt routine.
Fig. 10 is a flowchart showing the interrupt routine every 4m sec, Fig. 11 is a flowchart of the routine for updating the correction retardation amount, Fig. 12 is a flowchart of the learning control routine, and Fig. 13 is a flowchart of the two-dimensional interpolation routine. Flowchart, Fig. 14 is a diagram showing changes in corrected retardation, learned retard number, and ignition timing over time; Fig. 15 is a graph showing the relationship between engine speed and ignition timing, similar to Fig. 3; corrected retardation A diagram showing the following relationship between the learning delay angle and the learning delay angle, Fig. 16 is 3.
2...Engine rotation angle sensor. 34...Electronic control circuit. Agent Tatsuyuki Unuma. ((1 force, 2 threads) Fig. 1 Fig. 2 Fig. 3 Fig. 6 Fig. 7 Fig. 8 Fig. 9 Fig. 11 Fig. 12 Fig. 14 Fig. B = 1 sec] Figure 15, Figure 16

Claims (2)

【特許請求の範囲】[Claims] (1)  エンジン回転数と負荷とによって定まる− 
基本点火進角から、ノッキングのレベルを所定レベルに
するためにエンジン回転数と負荷とによって定まシかつ
学習制御によって変更される学習遅角量とノッキングが
発生したとき点火時期を遅らせかつノッキングが発生し
なくなったとき点火時期を進める補正遅角量との和を減
算し、前記補正遅角量が所定範囲の値になるように学習
遅角量を学習制御して、ノッキングを制御する内燃機関
のノッキング制御方法において、軽負荷を含む特定領域
内の学習遅角量の学習制御を停止しかつ該特定領域内の
軽旬荷側の特定の学習遅角騒を一定の値にすることを特
徴とする内燃機関のノッキング制御方法。
(1) Determined by engine speed and load -
From the basic ignition advance angle, when knocking occurs, the ignition timing is delayed and the learning retardation amount is determined depending on the engine speed and load and changed by learning control in order to bring the knocking level to a predetermined level. An internal combustion engine that controls knocking by subtracting the sum with a corrected retard amount that advances the ignition timing when knocking no longer occurs, and performs learning control on a learned retard amount so that the corrected retard amount falls within a predetermined range. The knocking control method is characterized in that the learning control of the learning retardation amount in a specific area including light loads is stopped, and the specific learning retardation noise on the light load side in the specific area is set to a constant value. A knocking control method for an internal combustion engine.
(2)前記一定の値が零である特許請求の範囲第1項記
載の内燃機関のノッキング制御方法。
(2) A knocking control method for an internal combustion engine according to claim 1, wherein the certain value is zero.
JP58012052A 1983-01-27 1983-01-27 Knotting control method for internal combustion engine Expired - Lifetime JPH0646026B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58012052A JPH0646026B2 (en) 1983-01-27 1983-01-27 Knotting control method for internal combustion engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58012052A JPH0646026B2 (en) 1983-01-27 1983-01-27 Knotting control method for internal combustion engine

Publications (2)

Publication Number Publication Date
JPS59138773A true JPS59138773A (en) 1984-08-09
JPH0646026B2 JPH0646026B2 (en) 1994-06-15

Family

ID=11794826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58012052A Expired - Lifetime JPH0646026B2 (en) 1983-01-27 1983-01-27 Knotting control method for internal combustion engine

Country Status (1)

Country Link
JP (1) JPH0646026B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4819171A (en) * 1985-08-05 1989-04-04 Nissan Motor Co., Limited Engine spark timing control system
US7387107B2 (en) 2005-06-28 2008-06-17 Toyota Jidosha Kabushiki Kaisha Knocking state determination device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4819171A (en) * 1985-08-05 1989-04-04 Nissan Motor Co., Limited Engine spark timing control system
US7387107B2 (en) 2005-06-28 2008-06-17 Toyota Jidosha Kabushiki Kaisha Knocking state determination device
US7669582B2 (en) 2005-06-28 2010-03-02 Toyota Jidosha Kabushiki Kaisha Knocking state determination device

Also Published As

Publication number Publication date
JPH0646026B2 (en) 1994-06-15

Similar Documents

Publication Publication Date Title
JPS58143169A (en) Method for controlling ignition timing
JPS59103964A (en) Knocking control method for internal-combustion engine
JPS59138773A (en) Control method for knocking of internal-combustion engine
JPS5939972A (en) Control of knocking of internal-combustion engine
JPS58176470A (en) Control of revolution number of engine upon idling
JP2621396B2 (en) Ignition timing control device for internal combustion engine
JPS59110862A (en) Control of knocking in internal-combustion engine
JPH0315035B2 (en)
JPS60159372A (en) Ignition-timing control for internal-combustion engine
JPS59113267A (en) Control of knocking in internal-combustion engine
JPH0646022B2 (en) Knotting control method for internal combustion engine
JPS59119068A (en) Knocking controlling method for internal-combustion engine
JPS59138774A (en) Control method for knocking of internal-combustion engine
JPS5912164A (en) Ignition timing control for internal-combustion engine
JPS59108872A (en) Method of controlling knocking of intenal-combustion engine
JPS5843584B2 (en) Ignition timing control device
JPS6027782A (en) Method of controlling knocking of internal-combustion engine
JPS59136574A (en) Knocking control of internal-combustion engine
JPS59113264A (en) Controlling methd of knocking in internal-combustion engine
JPH0240082A (en) Ignition timing controller for internal combustion engine
JPS6380075A (en) Ignition timing control device for internal combustion engine
JPH077581Y2 (en) Engine ignition timing control device
JPS59168271A (en) Ignition timing control of engine
JPH0419384B2 (en)
JPH0252113B2 (en)