JPH0627517B2 - Engine controller - Google Patents

Engine controller

Info

Publication number
JPH0627517B2
JPH0627517B2 JP18342985A JP18342985A JPH0627517B2 JP H0627517 B2 JPH0627517 B2 JP H0627517B2 JP 18342985 A JP18342985 A JP 18342985A JP 18342985 A JP18342985 A JP 18342985A JP H0627517 B2 JPH0627517 B2 JP H0627517B2
Authority
JP
Japan
Prior art keywords
learning
value
control
engine
learning value
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 - Lifetime
Application number
JP18342985A
Other languages
Japanese (ja)
Other versions
JPS6245958A (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.)
Mazda Motor Corp
Original Assignee
Mazda 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 Mazda Motor Corp filed Critical Mazda Motor Corp
Priority to JP18342985A priority Critical patent/JPH0627517B2/en
Publication of JPS6245958A publication Critical patent/JPS6245958A/en
Publication of JPH0627517B2 publication Critical patent/JPH0627517B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)
  • Feedback Control In General (AREA)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は学習制御と呼ばれる手法を用いたエンジンの制
御装置に関するものである。
TECHNICAL FIELD The present invention relates to an engine control device using a technique called learning control.

(従来技術) 従来、エンジンの作動状態を適正に保つための制御を運
転状態が変化したときにも応答性良く行なうことができ
るようにするため、エンジンの作動状態に応じた制御量
を運転状態に対応させて記憶、更新し、その記憶値(学
習値)を制御に反映させる学習制御を行なうようにした
ものは知られており、例えば特開昭56−23566号
公報には、点火時期を学習制御するようにした装置が示
されている。すなわちこの装置は、エンジンの作動状態
としてノッキング発生状態を調べ、これに応じて求めた
点火時期のリタード量(遅角量)を、エンジンの運転状
態(例えばエンジン回転数と吸気負圧)を区分した複数
の記憶領域を有する記憶手段の該当する記憶領域に記憶
させ、このリタード量の記憶値を更新していくことによ
り学習値とし、この記憶手段に記憶された学習値に基づ
いて点火時期を制御するようにしている。
(Prior Art) Conventionally, in order to perform control for maintaining an appropriate operating state of an engine with good responsiveness even when the operating state changes, a control amount corresponding to the operating state of the engine is used. It is known to store and update the stored value (learning value) in accordance with the above, and perform learning control for reflecting the stored value (learning value) in the control. For example, Japanese Patent Laid-Open No. 56-23566 discloses an ignition timing. A device adapted for learning control is shown. That is, this device checks the knocking occurrence state as the engine operating state, and classifies the retard amount (retard angle amount) of the ignition timing obtained accordingly into the operating state of the engine (for example, engine speed and intake negative pressure). The stored value is stored in a corresponding storage area of the storage means having a plurality of storage areas, and the stored value of the retard amount is updated to be a learning value, and the ignition timing is set based on the learning value stored in the storage means. I'm trying to control.

ところで、従来のこの種装置では、各記憶領域ごとに学
習の機会を多くするため、運転状態の比較的大きな区分
に対応させて記憶手段の記憶領域を設定していたが、こ
の場合に運転状態によっては学習値と適正値との間にか
なり大きな誤差が生じる場合があった。つまり、上記記
憶領域の区分をある程度大きくしても、学習値がその領
域内の平均的な運転状態で求められたものであればその
領域内の各種運転状態に充分適合し得るが、領域内の一
方(例えば低回転低負荷側)に偏った運転状態で学習値
が求められている場合、他方(例えば高回転高負荷側)
に偏った運転状態ではこの学習値と適正値との間の誤差
が大きくなる。
By the way, in the conventional device of this type, in order to increase learning opportunities for each storage area, the storage area of the storage means is set corresponding to a relatively large division of the operating state. In some cases, a considerably large error may occur between the learned value and the proper value. That is, even if the division of the storage area is increased to some extent, the learning value can be sufficiently adapted to various operating states in the area as long as it is obtained in the average operating state in the area. If the learning value is obtained in an operating state that is biased to one side (for example, low rotation and low load side), the other side (for example, high rotation and high load side)
The error between the learning value and the proper value becomes large in the operating state biased to.

なお、このような誤差を小さくするためには、予め記憶
手段に運転状態を小さく区分した多数の記憶領域を設け
ておくことが考えられる。しかし、単に予め記憶領域の
区分を小さくしておくだけでは、記憶領域ごとの学習の
機会(運転状態が属する機会)が少なくなるため、各記
憶領域において学習値の記憶、修正を充分に行なうこと
が難しくなる。
In order to reduce such an error, it is conceivable to previously provide the storage means with a large number of storage areas into which the operating state is divided into small sections. However, if the storage areas are simply divided in advance, learning opportunities for each storage area (opportunities to which the driving state belongs) are reduced. Therefore, it is necessary to sufficiently store and correct the learning value in each storage area. Becomes difficult.

(発明の目的) 本発明はこのような事情に鑑み、とくに学習値が適正で
ない場合は隣り合う記憶領域の学習値の差が予測される
値より大きくなることに着目し、このような場合に適正
な学習値を求めることができるようにし、全運転域にわ
たって高精度の学習制御を行なうことのできるエンジン
の制御装置を提供するものである。
(Object of the Invention) In view of such circumstances, the present invention focuses on the fact that the difference between the learning values of the adjacent storage areas becomes larger than the predicted value when the learning value is not appropriate. (EN) An engine control device capable of obtaining an appropriate learning value and performing highly accurate learning control over the entire operating range.

(発明の構成) 本発明の構成を第1図に示す機能ブロック図により説明
すると、エンジンの作動状態(外的要因等に影響される
ノッキングの有無あるいは空燃比等の状態)を検出する
作動状態検出手段1と、エンジンの運転状態(主として
運転操作により定まるエンジン回転数や負荷の状態)が
示されるマップ上を複数に区分した各記憶領域ごとにエ
ンジンの制御量を記憶する記憶手段2と、上記作動状態
検出手段1によって検出されたエンジンの作動状態に応
じ、その時の運転状態に対応した上記記憶手段2の記憶
領域に記憶されている制御量を修正してこの制御量を学
習値とする学習制御手段3とを備え、上記記憶手段2に
記憶された学習値を用いて制御対象の制御(例えば学習
値による制御もしくは学習値を反映させたフィードバッ
ク制御)を行なうエンジンの制御装置において、次のよ
うな比較手段4および記憶領域分割手段5を設けたこと
を特徴とする。すなわち上記比較手段4は、上記学習制
御手段2により求められた新たな学習値Xとこの新たな
学習値が記憶されるべき記憶領域に対して隣り合う記憶
領域の制御量の学習値Xnearとを比較して両者の差(|
X−Xnear|)を求め、上記記憶領域分割手段5はこの
差が所定値以上のとき上記新たな学習値Xが記憶される
べき記憶領域を細分割して記憶領域を増加するようにし
ている。
(Structure of the Invention) The structure of the present invention will be described with reference to the functional block diagram shown in FIG. 1. An operating state for detecting an operating state of an engine (presence or absence of knocking influenced by external factors or a state such as an air-fuel ratio). A detection unit 1; a storage unit 2 for storing the control amount of the engine for each storage region obtained by dividing the map on which the operating state of the engine (engine rotational speed and load state determined mainly by the driving operation) is divided into a plurality of regions; According to the operating state of the engine detected by the operating state detecting means 1, the control amount stored in the storage area of the storing means 2 corresponding to the operating state at that time is corrected and this control amount is used as the learning value. The learning control means 3 and the learning value stored in the storage means 2 are used to control the control target (for example, control based on the learning value or feedback reflecting the learning value). In the control device of the engine for performing the control), the following comparing means 4 and storage area dividing means 5 are provided. That is, the comparison means 4 compares the new learning value X obtained by the learning control means 2 and the learning value Xnear of the control amount of the storage area adjacent to the storage area in which the new learning value is to be stored. The difference between the two (|
X-Xnear |), the storage area dividing means 5 subdivides the storage area in which the new learning value X is to be stored and increases the storage area when the difference is a predetermined value or more. .

つまり、通常は記憶領域ごとの学習の機会を多くするよ
うに運転状態のある程度大きな区分に対応させて記憶領
域を設定するが、隣り合う記憶領域の学習値が著しく異
なるときは、学習値が適正な値となっていないので、該
当する記憶領域を細分割することにより学習値の適正化
を図るようにしたものである。
That is, normally, the storage areas are set in correspondence with a somewhat large division of the operating state so as to increase the learning opportunities for each storage area. However, when the learning values of the adjacent storage areas are significantly different, the learning value is appropriate. Therefore, the learning value is optimized by subdividing the corresponding storage area.

(実施例) 第2図および第3図は本発明装置の一実施例を示し、こ
の実施例ではエンジンの作動状態としてノッキングを検
出し、エンジンの制御量として点火時期のリタード量を
制御する場合について示している。第2図はこの実施例
装置の全体構造を示し、この図において、11はエンジ
ンのシリンダ、12はシリンダ11内の燃焼室、13は
吸気通路、14は排気通路であり、上記吸気通路13に
はスロットル弁15および燃料噴射弁16等が配設され
ている。また、上記燃焼室12には点火プラグ17が臨
設され、この点火プラグ17に対してイグニッションコ
イル18、ディストリビュータ19およびイグナイタ2
0が配設されて周知の点火装置が構成されており、イグ
ニッションコイル18はバッテリ(BAT)に接続され
ている。
(Embodiment) FIGS. 2 and 3 show an embodiment of the device of the present invention. In this embodiment, knocking is detected as an operating state of the engine, and the retard amount of ignition timing is controlled as the control amount of the engine. Is shown. FIG. 2 shows the overall structure of the apparatus of this embodiment. In this figure, 11 is an engine cylinder, 12 is a combustion chamber in the cylinder 11, 13 is an intake passage, and 14 is an exhaust passage. The throttle valve 15 and the fuel injection valve 16 are provided. Further, an ignition plug 17 is provided in the combustion chamber 12, and an ignition coil 18, a distributor 19 and an igniter 2 are provided for the ignition plug 17.
0 is arranged to constitute a known ignition device, and the ignition coil 18 is connected to a battery (BAT).

また、21は点火時期を制御する制御ユニット(EC
U)であって、所定クランク角を検出するクランク角セ
ンサ22と、シリンダ11の壁面に取付けられてエンジ
ンのノッキングによる振動を検出するノックセンサ23
と、エンジン負荷に相当するスロットル弁15下流の吸
気負圧を検出する負圧センサ24とからの各検出信号を
受け、イグナイタ20に制御信号を出力している。
Further, 21 is a control unit (EC
U), which is a crank angle sensor 22 that detects a predetermined crank angle, and a knock sensor 23 that is mounted on the wall surface of the cylinder 11 and that detects vibration due to engine knocking.
And a negative pressure sensor 24 for detecting an intake negative pressure downstream of the throttle valve 15 corresponding to the engine load, and outputs a control signal to the igniter 20.

上記制御ユニット21は、第3図に示すように、CPU
25と、プログラム等を記憶するROM26と、後述す
る点火時期リタード量の学習値やその他の各種データを
記憶するRAM27とを有するとともに、クランク角セ
ンサ22からの信号に対する入力回路28と、ノックセ
ンサ23および負圧センサ24からの信号を処理する入
力回路29、マルチプレクサ30およびA/D変換器3
1と、イグナイタ20に制御信号を出力するためのタイ
マ32および駆動回路33と、基準クロックのカウンタ
34とを備えている。35は制御ユニット21内のバス
である。
The control unit 21 includes a CPU as shown in FIG.
25, a ROM 26 for storing a program and the like, a RAM 27 for storing a learned value of an ignition timing retard amount described later and other various data, an input circuit 28 for a signal from the crank angle sensor 22, and a knock sensor 23. An input circuit 29 for processing a signal from the negative pressure sensor 24, a multiplexer 30, and an A / D converter 3
1, a timer 32 and a drive circuit 33 for outputting a control signal to the igniter 20, and a reference clock counter 34. Reference numeral 35 is a bus in the control unit 21.

上記RAM27は、複数の記憶領域に点火時期リタード
量の学習値を記憶する記憶手段として、第4図(a)に
図式化して示すような基本学習値マップMを有すると
ともに、記憶領域分割のための第4図(b)に示すよう
な分割学習値マップMを有している。上記基本学習値
マップMは、吸気負圧とエンジン回転数とによる運転
状態が示されるマップ上を比較的大きく区画した複数の
学習ゾーンZ,Z…Zn…ごとの記憶エリアに、点
火時期リタード量の学習値θlを記憶し得るようになっ
ている。また分割学習値マップMは、上記学習ゾーン
をさらに複数に細分割(例えば4分割)したゾーンごと
に記憶エリアを有し、例えば或る学習ゾーンZnについ
て後述する分割処理が行なわれたときに4分割された各
学習ゾーンZn〜Znの記憶エリアにそれぞれ学習
値θlを記憶し得るようになっている。さらにRAM2
7には、図示しないが、基本学習値マップMに対応し
た各学習ゾーンZ,Z…Zn…ごとに後記の学習回
数CNTを記憶するマップ、分割された学習ゾーン(Z
〜Z)ごとに学習回数CNTを記憶するマップ、お
よび各学習ゾーン(Z,Z…Zn…)ごとに分割の
有無を示す後記分割フラグデータFdivを記憶する分割
フラグマップ等が含まれている。
The RAM 27 has a basic learning value map M 1 as schematically shown in FIG. 4 (a) as a storage means for storing the learning value of the ignition timing retard amount in a plurality of storage areas, and the storage area division For this purpose, a divided learning value map M 2 as shown in FIG. The basic learning value map M 1 is ignited in a storage area for each of a plurality of learning zones Z 1 , Z 2 ... Zn ... Which is a relatively large partition of the map showing the operating state according to the intake negative pressure and the engine speed. The learning value θl of the time retard amount can be stored. Further, the divided learning value map M 2 has a storage area for each zone obtained by subdividing the learning zone into a plurality of pieces (for example, four divisions), and for example, when a division process described later is performed on a certain learning zone Zn. 4 so that the respective may store learned value θl the divided storage areas of each learning zone Zn 1 ~Zn 4 was. RAM2
Although not shown in FIG. 7, a map storing a learning count CNT described later for each learning zone Z 1 , Z 2 ... Zn ... Corresponding to the basic learning value map M 1 , a divided learning zone (Z
1 to Z 4 ), a map that stores the number of learning times CNT, a division flag map that stores the division flag data Fdiv described below that indicates the presence or absence of division for each learning zone (Z 1 , Z 2 ... Zn ...), and the like. Has been.

そしてCPU25は、後述のフローチャートに従った制
御を行なうことにより、本発明における学習制御手段、
比較手段および分割手段を構成するとともに、運転状態
に応じた点火時期リタード量の学習値とノック発生状態
とに応じて点火時期を制御するようにしている。
Then, the CPU 25 controls the learning control means according to the present invention by performing control according to a flowchart described later.
The comparing means and the dividing means are configured, and the ignition timing is controlled according to the learned value of the ignition timing retard amount according to the operating state and the knocking occurrence state.

上記CPU25による制御を、第5図および第6図
(a)乃至(d)のフローチャートによって説明する。
The control by the CPU 25 will be described with reference to the flowcharts of FIGS. 5 and 6 (a) to (d).

第5図はメイルーチンを示し、先ずステップR1で後述
するθk,θsum,θkn,Nkn,θlエリア,CNTエ
リア,Fdivエリアの各データの初期値を0に設定して
から、ステップR2でエンジン回転および吸気負荷に基
づいて基本点火時期θbを算出し、このステップR2の
処理を繰返す。
FIG. 5 shows a Mayroutine. First, in step R1, the initial values of each data of θk, θsum, θkn, Nkn, θl area, CNT area, and Fdiv area, which will be described later, are set to 0, and then the engine rotation is performed in step R2. Then, the basic ignition timing θb is calculated based on the intake load, and the process of step R2 is repeated.

第6図(a)乃至(d)は一連の割込ルーチンを示し、
この割込は一定クランク角(例えばBTDC60°)ご
とに行なう。第6図(a)において割込みを開始する
と、先ずステップS1,S2で、センサ23,24から
の信号に基づくノックデータ(KN)および吸気負圧デ
ータ(BST)の入力と、割込周期によるエンジン回転
数(rpm)の算出とを行なう。そして上記吸気負圧デ
ータとエンジン回転数とで調べた運転状態に応じ、ステ
ップS3で基本学習値マップMの区分による現在の学
習ゾーンを調べてこれをZnewレジスタに記憶させ、さ
らにステップS4〜S6で、現在の学習ゾーンZnewに
対応する分割フラグデータFdivが1であれば、分割学
習値マップMの区分による現在の学習ゾーンを調べて
Znewレジスタの記憶内容を改める。
FIGS. 6A to 6D show a series of interrupt routines,
This interruption is performed at every constant crank angle (for example, BTDC 60 °). When the interruption is started in FIG. 6 (a), first in steps S1 and S2, the knock data (KN) and the intake negative pressure data (BST) based on the signals from the sensors 23 and 24 are input, and the engine according to the interrupt cycle. The rotation speed (rpm) is calculated. And according to the operation state checked in with the intake negative pressure data and the engine rotational speed, is stored it examines the current learning zone by division of the basic learned value map M 1 in step S3 in Znew register further step S4~ in S6, if the split flag data Fdiv corresponding to the current learning zone Znew is 1, it has been amended stored contents of Znew register examines the current learning zone by segment division learning value map M 2.

次にステップS7で、現在と前回とで運転状態が同一の
学習ゾーン(Znew=Zold)にあるか否かを調べ、その
判定結果がYESであれば後述するステップS66以下
の通常のノック制御に移り、判定結果がNOであればス
テップS8に移る。
Next, in step S7, it is checked whether or not the driving state is in the same learning zone (Znew = Zold) between the present time and the previous time, and if the determination result is YES, the normal knock control in step S66 and later described later is performed. If the determination result is NO, the process proceeds to step S8.

ステップS8〜S14は学習値を修正するための処理で
あって、運転状態が異なる学習ゾーンに移行したとき、
移行前の学習ゾーンZoldを対象としてこの対象ゾーン
Zoldの学習値θlを修正するようにしている。すなわ
ち、前回までに後述するステップS69,S70で求め
られている同一学習ゾーンで発生したノック回数Nknお
よびノック発生時の点火時期リタードの累計値θsumに
基づき、上記ノック回数Nknが0でなければ平均点火時
期リタード量(θave=θsum/Nkn)を求め(ステップ
S8,S9)、これと旧学習値θlと学習効率Kとに基
づいて新たな学習値θlを[θl=θl・(1−K)+
K・θave]と演算する(ステップS10)。そしてこ
の新たな学習値θlをマップMまたはMの上記対象
ゾーンZoldに相当する記憶エリアにセーブする(ステ
ップS11)。さらに学習値更新回数を示すデータCN
T1が所定値に達していなければこれをインクリメント
し(ステップS12,S13)、上記データCNT1を
学習回数記憶値のマップの上記対象ゾーンZoldに対応
するエリアにセーブ(ステップS14)してから、第6
図(b)のステップS15に移る。なお、ステップS8
での判定結果がNOのときはそのままステップS15に
移る。
Steps S8 to S14 are processes for correcting the learning value, and when the operation state shifts to a learning zone where
The learning value θl of the learning zone Zold before the transition is corrected. That is, based on the knock number Nkn that has occurred in the same learning zone, which has been obtained in steps S69 and S70 described below up to the previous time, and the cumulative value θsum of the ignition timing retard at the time of knock occurrence, if the knock number Nkn is not 0, the average value is obtained. The ignition timing retard amount (θave = θsum / Nkn) is calculated (steps S8 and S9), and a new learning value θl is set to [θl = θl · (1-K) based on this and the old learning value θl and the learning efficiency K. +
K · θave] (step S10). Then, the new learning value θl is saved in the storage area corresponding to the target zone Zold of the map M 1 or M 2 (step S11). Further, data CN indicating the number of learning value updates
If T1 has not reached the predetermined value, it is incremented (steps S12 and S13), the data CNT1 is saved in the area corresponding to the target zone Zold of the map of the learning number storage value (step S14), and then the 6
The process moves to step S15 in FIG. Note that step S8
When the result of the determination in is NO, the process directly proceeds to step S15.

第6図(b)におけるステップS15〜S31は上記対
象ゾーンZoldについて分割条件が成立したときに記憶
領域を分割する処理である。この処理では、学習回数が
少ない場合や学習値が適正な場合には学習の機会を多く
するため分割を行なわず、学習が充分に行なわれても隣
接ゾーンとの間で学習値の差が著しく大きいときに分割
処理に移行するようにしている。
Steps S15 to S31 in FIG. 6B are processes for dividing the storage area when the division condition is satisfied for the target zone Zold. In this process, when the number of times of learning is small or the learning value is appropriate, there is no division in order to increase the chances of learning, and even if learning is sufficiently performed, there is a significant difference in learning value between the adjacent zones. When the size is large, the process is divided into pieces.

すなわち、分割条件を調べる処理としては、先ず対象ゾ
ーンZoldの分割フラグデータFdivが0(未分割)か1
(分割済)かを調べ、未分割であれば学習回数のデータ
CNT1が所定値に達したかを調べて(ステップS15
〜S17)、分割済の場合や学習回数が所定値より少な
い場合は分割処理を行なわずに後述のステップS32に
移る。未分割で学習回数が所定値に達しているときは、
隣接ゾーンをサーチし(ステップS18)、隣接ゾーン
数Nnearをカウンタ値Cの初期値としてセット(ステ
ップS19)した後、最初の隣接ゾーンから順に、隣接
ゾーン数Znearの学習回数CNTをマップから読出して
そのデータCnearが所定値に達したか否かを調べ(ステ
ップS21,S22)、その判定結果がYESであれば
対象ゾーンの学習値θlとマップから読出した隣接ゾー
ン数Znearの学習値θnearとの差の絶対値が所定値以上
かを調べる(ステップS23,S24)。これらの判定
結果がNOの場合は未判定の隣接ゾーン数(C−1を
と置きかえた値)が0となるまでステップS25〜
S27を経てステップS21〜S24の判定を繰返し、
すべての隣接ゾーンにつきステップS21〜S24で判
定された条件が不成立の場合はステップS26での判定
結果がYESとなり、この場合、分割処理を行なわずに
後述のステップS23に移る。
That is, as the processing for checking the division condition, first, the division flag data Fdiv of the target zone Zold is 0 (undivided) or 1
(Divided), and if not divided, it is checked whether the learning count data CNT1 has reached a predetermined value (step S15).
~ S17), if the division is completed or the number of times of learning is less than the predetermined value, the division processing is not performed and the process proceeds to step S32 described later. If the number of learnings has reached a predetermined value without division,
After searching the adjacent zone (step S18) and setting the adjacent zone number Nnear as the initial value of the counter value C 0 (step S19), the learning count CNT of the adjacent zone number Znear is read from the map in order from the first adjacent zone. Then, it is checked whether or not the data Cnear has reached a predetermined value (steps S21 and S22), and if the determination result is YES, the learning value θl of the target zone and the learning value θnear of the number of adjacent zones Znear read from the map are determined. It is checked whether or not the absolute value of the difference is greater than or equal to a predetermined value (steps S23 and S24). Step until these determination results is NO number adjacent zones undetermined (value of C 0 -1 was replaced with C 0) becomes 0 S25 to
The determinations of steps S21 to S24 are repeated through S27,
When the conditions determined in steps S21 to S24 are not satisfied for all the adjacent zones, the determination result in step S26 is YES, and in this case, the division process is not performed and the process proceeds to step S23 described later.

対象ゾーンZoldと少なくとも一つの隣接ゾーンZnear
との間でステップS21〜S24の判定による条件が成
立した場合は、分割処理を行なう。この処理は、対象ゾ
ーンZoldに対応する分割フラグデータFdivを1として
(ステップS28)から、対象ゾーンZoldに対応する
分割学習値マップMの4ゾーン分の記憶エリアのすべ
てに前記のステップS10で求めた学習値θlをセーブ
し(ステップS29)、例えば対象ゾーンZoldが第3
図におけるゾーンZnであればゾーンZn〜Zn
各記憶エリアにθlをセーブする。さらに対象ゾーンZ
oldに対応する分割フラグマップの記憶エリアに分割フ
ラグデータFdivをセーブするとともに、対象ゾーンZo
ldに対応する4ゾーンの学習回数の記憶値CNTをすべ
てクリアする(ステップS30,S31)。そしてこの
分割処理が行なわれたときも第6図(c)のステップS
32に移るが、この場合は学習回数がクリアされていて
後述の統合条件が成立しないため実質的には第6図
(d)の処理に移ることとなる。
Target zone Zold and at least one adjacent zone Znear
If the conditions determined by the determination in steps S21 to S24 are satisfied between and, division processing is performed. This process is the division flag data Fdiv corresponding to the target zone Zold as 1 from (step S28), at step S10 in the all storage areas of the four zones fraction divided learning value map M 2 corresponding to the target zone Zold The learned value θl thus obtained is saved (step S29), and the target zone Zold is set to the third value, for example.
In the case of the zone Zn in the figure, θl is saved in each storage area of the zones Zn 1 to Zn 4 . Further target zone Z
The division flag data Fdiv is saved in the storage area of the division flag map corresponding to old, and the target zone Zo
All the stored values CNT of the learning numbers of the four zones corresponding to ld are cleared (steps S30 and S31). Even when this division processing is performed, step S in FIG. 6 (c).
32, but in this case, the learning count has been cleared and the integration condition described later does not hold, so that the process actually moves to FIG. 6 (d).

第6図(c)におけるステップS32〜S45では所定
の統合条件が成立したかどうかを調べ、ステップS46
〜S59では統合条件が成立したとき分割されていた学
習ゾーンを統合する処理を行なう。
In steps S32 to S45 in FIG. 6C, it is checked whether or not a predetermined integration condition is satisfied, and step S46.
In S59, the learning zones that have been divided when the integration condition is satisfied are integrated.

すなわち、統合条件を調べる処理としては、先ず分割フ
ラグデータFdivが1(分割済)であるか否かを調べ、
分割済であれば対象ゾーンに対する統合予定ゾーンをサ
ーチし(ステップS33)、例えば前記の分割学習値マ
ップMによるゾーンZnが対象ゾーンであればゾー
ンZn〜Znをサーチする。そして後記Nuni,Ds
um,Zuniの各データの初期値をそれぞれのレジスタに
セットする(ステップS34〜S36)。それから順次
統合予定ゾーンzuniにつき、マップから学習回数CN
Tを読出してそのデータCuniが所定値に達したか否か
を判定し(ステップS37,S38)、この判定結果が
YESの場合に対象ゾーンの学習値θlと統合予定ゾー
ンZuniの学習値θuniとの差の絶対値が所定値以下か否
かを判定し(ステップS39,S40)、この判定結果
がYESの場合に上記差の絶対値の累計値Dsumを求め
つつ(ステップS41)、未処理のゾーン数(Nuni−
1をNuniと置き換えた値)が0となるまでステップS
37からの処理を繰返すための処理(ステップS42〜
S44)を行なう。さらにすべての統合予定ゾーンにつ
いて累計値Dsumが求まればこれが所定値以内か否かを
調べる(ステップS45)。
That is, as the process for checking the integration condition, first, it is checked whether the division flag data Fdiv is 1 (divided),
If the zone has been divided, the integration planned zone for the target zone is searched (step S33). For example, if the zone Zn 1 according to the divided learning value map M 2 is the target zone, zones Zn 2 to Zn 4 are searched. And the postscript Nuni, Ds
The initial value of each data of um and Zuni is set in each register (steps S34 to S36). Then, the number of learnings CN from the map for the planned integration zone zuni
T is read and it is determined whether or not the data Cuni has reached a predetermined value (steps S37, S38). If the determination result is YES, the learning value θl of the target zone and the learning value θuni of the integrated planned zone Zuni are determined. It is determined whether or not the absolute value of the difference is less than or equal to a predetermined value (steps S39 and S40), and if this determination result is YES, the cumulative value Dsum of the absolute values of the differences is obtained (step S41), and Number of zones (Nuni-
Step S until the value obtained by replacing 1 with Nuni) becomes 0
Processing for repeating the processing from 37 (step S42-
Perform S44). Further, if the cumulative value Dsum is obtained for all the integrated planned zones, it is checked whether or not this is within a predetermined value (step S45).

これらのステップS32〜S45により、対象ゾーンが
分割済であって統合予定ゾーンがすべて充分に学習され
ており、かつ、上記学習値の差の絶対値および累計値が
比較的小さいときに統合処理に移り、この統合条件が成
立しないときは統合処理を行なわずに第6図(d)のス
テップS60に移る。統合処理としては、対象ゾーンの
学習値θlに対して最初の統合予定ゾーンから順に分割
学習値マップMから読出した学習値を加算していくこ
とによりその累計値Esumを求め(ステップS46〜S
53)、この累計値から求めた平均値(Esum/4)を
統合後の学習値θlとする(ステップS54)。そして
分割前の該当学習ゾーンをサーチしてこれを対象ゾーン
Zoldとし、この対象ゾーンZoldに相当する基本学習値
マップMの記憶エリアに上記学習値θlをセーブし
(ステップS55,S56)、さらにこの対象ゾーンZ
oldについて学習回数記憶値CNTをクリアするととも
に分割フラグデータFdivを0として分割フラグマップ
の記憶エリアにセーブする(ステップS57〜S5
9)。それから第6図(d)のステップS60に移る。
Through these steps S32 to S45, when the target zone has been divided and all the zones to be integrated have been sufficiently learned, and the absolute value and the cumulative value of the differences between the learning values are relatively small, the integration processing is performed. When the integration condition is not satisfied, the integration process is not performed and the process proceeds to step S60 of FIG. 6 (d). As the integration processing, the cumulative value Esum is obtained by adding the learning values read from the divided learning value map M 2 in order from the first integrated scheduled zone to the learning value θl of the target zone (steps S46 to S46).
53), and the average value (Esum / 4) obtained from this cumulative value is set as the integrated learning value θl (step S54). Then, the corresponding learning zone before division is searched, and this is set as the target zone Zold, and the learning value θl is saved in the storage area of the basic learning value map M 1 corresponding to this target zone Zold (steps S55 and S56). This target zone Z
For old, the learning count storage value CNT is cleared and the division flag data Fdiv is set to 0 and saved in the storage area of the division flag map (steps S57 to S5).
9). Then, the process proceeds to step S60 in FIG. 6 (d).

第6図(d)のステップS60〜S74は点火時期を制
御する処理であり、このうちステップS60〜S65
は、運転状態が別の学習ゾーンに移行したときに行なわ
れる予備的処理である。この処理においては、現在の学
習ゾーンZnewのデータをZoldレジスタにセットする
(ステップS60)とともに、現在の学習ゾーンZnew
に相当するマップMまたはMの記憶エリアから学習
値θlを読出してθkレジスタにセットし(ステップS
61,S62)さらにマップから読出した学習回数CN
TをCNT1レジスタにセットし、かつ後記累計値θsu
mおよびノックカウンタNknを0とする(ステップS6
3〜S65)。
Steps S60 to S74 of FIG. 6 (d) are processes for controlling the ignition timing, of which steps S60 to S65.
Is a preliminary process performed when the driving state shifts to another learning zone. In this process, the data of the current learning zone Znew is set in the Zold register (step S60) and the current learning zone Znew is set.
The learning value θl is read from the storage area of the map M 1 or M 2 corresponding to the above and set in the θk register (step S
61, S62) The learning count CN read from the map
T is set in the CNT1 register and the cumulative value θsu described later is set.
m and knock counter Nkn are set to 0 (step S6)
3 to S65).

次にステップS66〜S74ではノック発生状態に応じ
た点火時期の制御を行なう。すなわち、ノック発生の有
無を調べ(ステップS66)、ノック発生時にはその大
きさ関数f(KN)として演算したリタード増量値θkn
だけ点火時期のリタード量θkを大きくし(ステップS
67,68)、さらにノック発生時のリタード量の累計
値θsumを求めるとともにノックカウンタをインクリメ
ントする(ステップS69,S70)。また、ノックが
発生していないときにはリタード量θkが0でない限り
一定の微小値θiだけリタード量θkを小さくする(ス
テップS71,S72)。その後、基本点火時期の進角
値θbとリタード量θkとに基づいて最終点火時期θを
演算し(ステップS73)、これをタイマーにセット
(ステップS74)してからメインルーチンに復帰す
る。なお、上記基本点火時期の進角値θbは予めROM
マップに記憶されており、運転状態に応じてこのマップ
から求められる。
Next, in steps S66 to S74, the ignition timing is controlled according to the knocking occurrence state. That is, the presence or absence of knock is checked (step S66), and when the knock occurs, the retard increase value θkn calculated as the magnitude function f (KN) is calculated.
Only by increasing the ignition timing retard amount θk (step S
67, 68), and further, the cumulative value θsum of the retard amount at the time of knock occurrence is obtained and the knock counter is incremented (steps S69, S70). Further, when the knock is not generated, the retard amount θk is reduced by a fixed minute value θi unless the retard amount θk is 0 (steps S71 and S72). After that, the final ignition timing θ is calculated based on the advance value θb of the basic ignition timing and the retard amount θk (step S73), and this is set in the timer (step S74) before returning to the main routine. The advance value θb of the basic ignition timing is stored in advance in the ROM.
It is stored in the map and can be obtained from this map according to the driving condition.

以上のようなエンジンの制御装置によると、点火時期の
リタード量が学習値に基づいて制御され、つまり上記フ
ローチャートに示す制御例では、運転状態が同一学習ゾ
ーンに保たれているときはノック発生状態に応じた通常
のフィードバック制御(ステップS66〜S74)を行
なうが、運転状態が異なる学習ゾーンに移った直後のリ
タード量の初期値としてマップMまたはMに記憶さ
れた学習値θlが利用され(ステップS60〜S6
5)、これにより、運転状態の変動に対して点火時期が
応答性良く制御される。そして学習値θlは逐次修正さ
れ、適性化が図られる。
According to the engine control device as described above, the retard amount of the ignition timing is controlled based on the learning value, that is, in the control example shown in the above flowchart, when the operating state is kept in the same learning zone, the knocking occurrence state is generated. The normal feedback control (steps S66 to S74) according to is performed, but the learning value θl stored in the map M 1 or M 2 is used as the initial value of the retard amount immediately after the operation state shifts to a different learning zone. (Steps S60 to S6
5) As a result, the ignition timing is controlled with good responsiveness to changes in the operating state. Then, the learning value θl is sequentially corrected to be suitable.

とくに本発明の装置では、基本的には運転ゾーンごとの
学習の機会を多くするため比較的大きな学習ゾーンごと
に学習値が基本学習値マップMに記憶されるが、この
ようにして充分に学習を繰返しても対象ゾーンの平均的
な運転状態に応じた適正な学習値が得られない場合に、
これが隣接ゾーンとの比較により判別されて学習ゾーン
が細分される(ステップS16〜S32)。そして分割
後はこの細分された学習ゾーンごとに学習が行なわれて
学習値が分割学習値マップMに記憶されることによ
り、学習ゾーン内の運転状態のばらつきに起因した学習
値の誤差が小さくされる。
Particularly, in the device of the present invention, basically, the learning value is stored in the basic learning value map M 1 for each relatively large learning zone in order to increase the opportunity of learning for each driving zone. Even if the learning is repeated, if an appropriate learning value according to the average driving state of the target zone cannot be obtained,
This is discriminated by comparison with the adjacent zone, and the learning zone is subdivided (steps S16 to S32). Then, after the division, learning is performed for each of the subdivided learning zones and the learning value is stored in the divided learning value map M 2 , so that the error of the learning value due to the variation of the driving state in the learning zone is small. To be done.

なお、上記実施例では運転状態が異なる学習ゾーンに移
行したとき点火時期リタード量の学習値を求める一方、
記憶手段から読出した学習値を同一学習ゾーン内でのリ
タード量の初期値として利用しているが、同一学習ゾー
ン内でも学習値を求め、かつ学習値による制御を行なう
ようにしてもよい。
Incidentally, in the above-described embodiment, while the learning value of the ignition timing retard amount is obtained when the operating state shifts to a different learning zone,
Although the learning value read from the storage means is used as the initial value of the retard amount in the same learning zone, the learning value may be obtained and the learning value may be controlled even in the same learning zone.

また本発明の制御装置は、上記実施例に示す点火時期の
制御に限らず、他のエンジンの制御量を学習制御する場
合、例えばOセンサ等の出力に応じてもとめられる燃
料噴射量の学習値に基づいて空燃比を制御する場合等に
も採用し得るものである。
Further, the control device of the present invention is not limited to the control of the ignition timing shown in the above-described embodiment, but when the control amount of another engine is learned and controlled, for example, the learning of the fuel injection amount that is stopped according to the output of the O 2 sensor or the like is learned. It can also be adopted when controlling the air-fuel ratio based on the value.

(発明の効果) 以上のように本発明は、エンジンの運転状態が示される
マップ上を複数に区分した各記憶領域ごとにエンジンの
作動状態に応じた制御量の学習値を記憶させ、この学習
値に基づいて制御を行なう場合に、学習制御手段により
求められた新たな学習値とこの新たな学習値が記憶され
るべき記憶領域に対して隣り合う記憶領域の制御量の学
習値とを比較して、両者の差が所定値より大きくなった
とき、上記新たな学習値が記憶されるべき記憶領域を細
分割するようにしているため、記憶領域ごとの学習の繰
返しによる学習値の適正化を図りつつ、記憶領域内での
運転状態のばらつきに起因した誤差を防止し、学習値の
精度を格段に高めることができるものである。
(Effect of the invention) As described above, according to the present invention, the learning value of the control amount according to the operating state of the engine is stored for each storage area in which the map showing the operating state of the engine is divided into a plurality, and this learning is performed. When the control is performed based on the value, the new learning value obtained by the learning control means is compared with the learning value of the control amount of the storage area adjacent to the storage area where the new learning value is to be stored. Then, when the difference between the two becomes larger than a predetermined value, the storage area in which the new learning value should be stored is subdivided, so that the learning value is optimized by repeating learning for each storage area. It is possible to prevent the error caused by the variation of the driving state in the storage area while significantly improving the accuracy of the learning value.

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

第1図は本発明の構成を示す機能ブロック図、第2図は
本発明の一実施例装置の概略図、第3図は制御ユニット
のブロック図、第4図(a),(b)は学習値を記憶す
るマップを模式的に示す説明図、第5図および第6図
(a)〜(d)は制御のフローチャートである。 1…作動状態検出手段、2…記憶手段、3…学習制御手
段、4…比較手段、5…記憶領域分割手段。
FIG. 1 is a functional block diagram showing the configuration of the present invention, FIG. 2 is a schematic diagram of an embodiment of the present invention, FIG. 3 is a block diagram of a control unit, and FIGS. 4 (a) and 4 (b) are FIG. 5 and FIGS. 6 (a) to 6 (d) are explanatory views schematically showing a map for storing learning values, and are control flowcharts. 1 ... Operating state detecting means, 2 ... Storage means, 3 ... Learning control means, 4 ... Comparison means, 5 ... Storage area dividing means.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】エンジンの作動状態を検出する作動状態検
出手段と、エンジンの運転状態が示されるマップ上を複
数に区分した各記憶領域ごとにエンジンの制御量を記憶
する記憶手段と、上記作動状態検出手段によって検出さ
れたエンジンの作動状態に応じ、その時の運転状態に対
応した上記記憶手段の記憶領域に記憶されている制御量
を修正してこの制御量を学習値とする学習制御手段とを
備え、上記学習値を用いて制御対象を制御するようにし
たエンジンの制御装置において、上記学習制御手段によ
り求められた新たな学習値とこの新たな学習値が記憶さ
れるべき記憶領域に対して隣り合う記憶領域の制御量の
学習値とを比較する比較手段と、この比較手段により比
較された学習値の差が所定値以上のときに上記新たな学
習値が記憶されるべき記憶領域を複数に細分割して記憶
領域数を増加する記憶領域分割手段とを設けたことを特
徴とするエンジンの制御装置。
1. An operating state detecting means for detecting an operating state of an engine, a storing means for storing a control amount of the engine in each storage area obtained by dividing a map showing an operating state of the engine into a plurality of storage areas, and the operation. Learning control means for correcting the control amount stored in the storage area of the storage means corresponding to the operating state at that time in accordance with the operating state of the engine detected by the state detection means and using the control amount as a learning value; In a control device for an engine, which is configured to control a controlled object using the learning value, a new learning value obtained by the learning control means and a storage area in which the new learning value is to be stored are stored. Comparing means for comparing the learning values of the control amounts of adjacent storage areas with each other, and the new learning value is stored when the difference between the learning values compared by the comparing means is equal to or more than a predetermined value. Engine control apparatus is characterized by providing a storage area dividing means for increasing the number of storage areas of storage plurality subdivided come.
JP18342985A 1985-08-21 1985-08-21 Engine controller Expired - Lifetime JPH0627517B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18342985A JPH0627517B2 (en) 1985-08-21 1985-08-21 Engine controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18342985A JPH0627517B2 (en) 1985-08-21 1985-08-21 Engine controller

Publications (2)

Publication Number Publication Date
JPS6245958A JPS6245958A (en) 1987-02-27
JPH0627517B2 true JPH0627517B2 (en) 1994-04-13

Family

ID=16135619

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18342985A Expired - Lifetime JPH0627517B2 (en) 1985-08-21 1985-08-21 Engine controller

Country Status (1)

Country Link
JP (1) JPH0627517B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63251805A (en) * 1987-04-08 1988-10-19 Hitachi Ltd State-based adaptive control system for engine
JP5077208B2 (en) * 2008-12-02 2012-11-21 トヨタ自動車株式会社 Ignition timing control device for internal combustion engine
JP5098980B2 (en) * 2008-12-08 2012-12-12 トヨタ自動車株式会社 Ignition timing control device for internal combustion engine
JP5229116B2 (en) * 2009-06-04 2013-07-03 トヨタ自動車株式会社 Ignition timing control device for internal combustion engine

Also Published As

Publication number Publication date
JPS6245958A (en) 1987-02-27

Similar Documents

Publication Publication Date Title
US4322800A (en) Method of reducing fuel consumption rate in internal combustion engines
US4510910A (en) Ignition timing control method and apparatus for internal combustion engines
JPH0233472A (en) Ignition timing control device for engine
US4725954A (en) Apparatus and method for controlling fuel supply to internal combustion engine
JPH0627517B2 (en) Engine controller
US5345911A (en) Air fuel ratio control apparatus for internal combustion engine
JPH0814271B2 (en) Ignition timing control device for internal combustion engine
US4690122A (en) Ignition control system for internal combustion engines
JPH01193065A (en) Control device for engine
JPH05157034A (en) Ignition timing control device for internal combustion engine
JPH0627518B2 (en) Engine controller
JPS5843584B2 (en) Ignition timing control device
JPH09112334A (en) Misfire detecting device for internal combustion engine
JPH05141334A (en) Knocking control device for internal combustion engine
JPH0524342B2 (en)
JPH01216058A (en) Knocking control device for internal combustion engine
JPS61187558A (en) Control device of engine
JPH0627519B2 (en) Engine controller
JP2514442B2 (en) Knock detection device for internal combustion engine
JPH0686840B2 (en) Engine controller
JP3574151B2 (en) Electronic fuel injection control device
US5062402A (en) Knocking control apparatus of internal combustion engine
JPS6088841A (en) Air-fuel ratio controller for internal-combustion engine
JPS608331B2 (en) Fuel control device for internal combustion engines
JPH04116269A (en) Knocking control device for internal combustion engine