JPH05321802A - Torque controller for internal combustion engine - Google Patents

Torque controller for internal combustion engine

Info

Publication number
JPH05321802A
JPH05321802A JP24993092A JP24993092A JPH05321802A JP H05321802 A JPH05321802 A JP H05321802A JP 24993092 A JP24993092 A JP 24993092A JP 24993092 A JP24993092 A JP 24993092A JP H05321802 A JPH05321802 A JP H05321802A
Authority
JP
Japan
Prior art keywords
engine
control
program
task
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.)
Granted
Application number
JP24993092A
Other languages
Japanese (ja)
Other versions
JPH0751932B2 (en
Inventor
Toshio Furuhashi
俊夫 古橋
Masaaki Fujisawa
正明 藤沢
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP4249930A priority Critical patent/JPH0751932B2/en
Publication of JPH05321802A publication Critical patent/JPH05321802A/en
Publication of JPH0751932B2 publication Critical patent/JPH0751932B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Output Control And Ontrol Of Special Type Engine (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Electrical Control Of Ignition Timing (AREA)

Abstract

PURPOSE:To adjust large increase/decrease of a rotational speed and small increase/decrease of the rotational speed effectively that are required to control the rotation, and also to secure control precision by uniformalizing the load occupied by a computer as even as possible. CONSTITUTION:A control circuit 30 sets the execution priority for an ignition timing control computing process for generating ignition timing control data so as to control a rotational speed of an engine 1 by controlling an ignition means 50 to be higher than that of the air control computing process for generating air control data for the purpose of controlling the rotational speed of the engine by controlling an air control means 14, when the engine 1 is found to be in the idling condition. In this way, large increase/decrease of a rotational speed is adjusted by controlling an air volume, and also in preference to this adjustment, ignition timing is controlled to adjust small increase/decrease of a rotational speed so that a precise control of a rotational speed is performed effectively.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、エンジンがアイドル状
態にある場合の回転数制御を行うトルク制御装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a torque control device for controlling a rotation speed when an engine is in an idle state.

【0002】[0002]

【従来の技術】従来より、アイドル時のエンジン回転速
度制御方法については、絞り弁を迂回するバイパス通路
に空気制御弁を設けてエンジンの吸入空気量(混合気を
含む)を調整してエンジン回転数を制御する方法または
エンジンに供給される混合気濃度の割合(空燃比)を操作
してアイドル回転数を制御する方法等種々提案されてい
る。
2. Description of the Related Art Conventionally, an engine speed control method during idling has been such that an air control valve is provided in a bypass passage bypassing a throttle valve to adjust the engine intake air amount (including air-fuel mixture) There have been proposed various methods such as a method of controlling the number or a method of controlling the idling speed by operating the ratio (air-fuel ratio) of the mixture concentration supplied to the engine.

【0003】[0003]

【発明が解決しようとする課題】このような従来の方法
では、吸気系、燃料系の応答遅れが支配的であること及
び吸入空気、燃料の増減に対する回転数の反映量が大き
いというため、回転数の大きい上げ下げは可能である
が、回転数の小さい変動に対しては十分な効果を得るこ
とができなかった。
In such a conventional method, since the response delays of the intake system and the fuel system are dominant, and the amount of revolutions reflected by the increase and decrease of intake air and fuel is large, Although it is possible to raise or lower the number of revolutions, a sufficient effect could not be obtained for small fluctuations of the revolution speed.

【0004】また、この種の装置ではマイクロコンピュ
−タを使用することが有効であるが、マイクロコンピュ
−タの占有処理率の問題も合わせ解決することが必要で
あった。
Further, although it is effective to use a microcomputer in this type of apparatus, it was necessary to solve the problem of the occupation rate of the microcomputer as well.

【0005】本発明の目的は、回転制御を実行する上で
必要な回転数の大きい上げ下げと回転数の小さい上げ下
げを効果的に調整でき、しかもコンピュータの占有負荷
をできるだけ均一化して制御精度を確保する内燃機関の
トルク制御装置を提供することにある。
An object of the present invention is to effectively adjust a large rotation speed and a small rotation speed required for execution of rotation control and a small rotation speed so that the load occupied by the computer can be made as uniform as possible to ensure control accuracy. A torque control device for an internal combustion engine is provided.

【0006】[0006]

【課題を解決するための手段】本発明の特徴は、 (a).エンジンの実際アイドル回転数を検出する回転
数検出手段(80); (b).前記エンジンのアイドル状態を検出するアイド
ル状態検出手段(76,410,710); (c).前記アイドル状態検出手段によって前記エンジ
ンがアイドル状態にあると判別されたときに空気制御手
段(14)を制御してエンジンの回転数を制御するため
の空気制御デ−タを発生する空気制御演算処理(41
4)と、前記空気演算処理より実行優先度が高く設定さ
れ、点火手段(162)を制御してエンジンの回転数を制
御するための点火時期制御デ−タを発生する点火時期制
御演算処理(712〜716)とを実行するセントラル
プロセッシングユニット(102)、リ−ドオンリメモ
リ(104)及びランダムアクセスメモリ(106)よ
りなる演算手段(309); (d).前記演算手段からの前記制御デ−タを前記空気
制御手段及び点火手段の制御信号に変換するデ−タ変換
手段(156,164); (e).前記デ−タ変換手段の出力にもとづいて前記空
気制御手段及び点火手段を制御する出力手段 とよりなるトルク制御装置にある。
The features of the present invention include (a). Rotation speed detection means (80) for detecting the actual idle speed of the engine; (b). Idle state detection means (76, 410, 710) for detecting the idle state of the engine; (c). Air control arithmetic processing for generating air control data for controlling the air control means (14) to control the engine speed when the idle state detection means determines that the engine is in the idle state. (41
4), the execution priority is set higher than that of the air calculation process, and the ignition timing control calculation process for generating the ignition timing control data for controlling the engine speed by controlling the ignition means (162) ( 712 to 716), a processing unit (309) including a central processing unit (102), a read only memory (104) and a random access memory (106); (d). Data conversion means (156, 164) for converting the control data from the calculation means into control signals for the air control means and ignition means; (e). The torque control device comprises an output means for controlling the air control means and the ignition means based on the output of the data conversion means.

【0007】[0007]

【作用】本発明は絞り弁を迂回する空気量を制御するこ
とで回転数の大きい上げ下げの調整を行うと共にこれに
優先して実行点火時期を制御することで回転数の小さい
上げ下げを調整して効果的に回転数の正確な制御を実行
でき、しかも空気量の制御を行う演算処理に対して点火
時期の制御を行う演算処理を優先して実行させるように
してコンピュータの占有負荷をできるだけ均一化して制
御精度を確保することができる。
According to the present invention, the amount of air that bypasses the throttle valve is controlled to adjust the raising and lowering of the rotation speed, and the execution ignition timing is prioritized to control the raising and lowering of the rotation speed. Accurate control of the number of revolutions can be executed effectively, and the arithmetic processing for controlling the ignition timing is prioritized over the arithmetic processing for controlling the air amount to make the occupation load of the computer as uniform as possible. Control accuracy can be ensured.

【0008】[0008]

【実施例】以下、本発明の一実施例を図面により説明す
る。尚、本実施例ではエンジンの吸気量の制御状態を検
出するセンサとして圧力センサを用いているが、上述の
如く、空気流量センサやスロットルバルブの開度状態を
検出するセンサでも使用可能である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. In this embodiment, the pressure sensor is used as the sensor for detecting the control state of the intake air amount of the engine, but as described above, the air flow rate sensor or the sensor for detecting the opening state of the throttle valve can be used.

【0009】図1はエンジン系統全体のシステム図であ
る。
FIG. 1 is a system diagram of the entire engine system.

【0010】先ず、エンジン1のシリンダへ導かれる吸
入空気の流れについて説明する。
First, the flow of intake air guided to the cylinder of the engine 1 will be described.

【0011】エアークリーナ2より導入された空気は吸
気手段として図示された空気通路、インテークマニホー
ルド3を通ってエンジン1に供給されるが、その途中で
ターボチャージャ4のタービン6により高速回転される
コンプレッサ8により圧縮される。圧縮された空気はス
ロットルチャンバ内に設けられた空気の量を制御するス
ロットルバルブ10あるいはエアーバイパスバルブ14
を介してエンジンの各シリンダに導入される。図1では
1個のシリンダのみ代表的に示した。
The air introduced from the air cleaner 2 is supplied to the engine 1 through an air passage shown as an intake means and an intake manifold 3, and a compressor which is rotated at a high speed by a turbine 6 of a turbocharger 4 in the middle thereof. Compressed by 8. The compressed air is a throttle valve 10 or an air bypass valve 14 that controls the amount of air provided in the throttle chamber.
Is introduced into each cylinder of the engine via. In FIG. 1, only one cylinder is shown as a representative.

【0012】このシリンダには吸気バルブ16が設けら
れており、この吸気バルブ16の開弁時に空気および後
述する燃料からなる混合気が導入される。スロットルバ
ルブ10は運転者によって制御されるアクセスペダル1
2と機械的に連動し、アクセルペダル12の踏込量に応
じてスロットルバルブ10の開度が定まる。その結果、
空気抵抗が制御され、シリンダ内へ導入される空気量が
制御される。
An intake valve 16 is provided in this cylinder, and when the intake valve 16 is opened, a mixture of air and fuel described later is introduced. The throttle valve 10 is an access pedal 1 controlled by the driver.
Mechanically interlocking with 2, the opening degree of the throttle valve 10 is determined according to the depression amount of the accelerator pedal 12. as a result,
The air resistance is controlled and the amount of air introduced into the cylinder is controlled.

【0013】次に燃料供給系につき説明する。燃料タン
ク20からフィルタ22を介して燃料ポンプ24へ燃料
が導かれ、燃料ポンプ24で加圧された燃料は燃圧制御
弁26でインテークマニホールド圧に対し、一定圧力に
保持されるように制御される。
Next, the fuel supply system will be described. Fuel is guided from the fuel tank 20 to the fuel pump 24 through the filter 22, and the fuel pressurized by the fuel pump 24 is controlled by the fuel pressure control valve 26 so as to be maintained at a constant pressure with respect to the intake manifold pressure. ..

【0014】燃料供給手段である噴射弁28には燃圧制
御弁26により制御された圧力の燃料が導入され、制御
ユニット30で作られた出力パルスにより噴射弁28が
開き、燃料がインテークマニホールド3内に供給され
る。インテークマニホールド3内に供給された燃料は、
吸入空気と共に混合気を形成し、吸気バルブ16を介し
てシリンダ内に導入される。
Fuel having a pressure controlled by the fuel pressure control valve 26 is introduced into the injection valve 28, which is a fuel supply means, and the injection valve 28 is opened by an output pulse generated by the control unit 30, so that the fuel is introduced into the intake manifold 3. Is supplied to. The fuel supplied into the intake manifold 3 is
A mixture is formed with the intake air and is introduced into the cylinder via the intake valve 16.

【0015】次に点火系につき説明する。バッテリ40
にキースイッチ42を介して接続された点火手段を構成
する点火コイル44の他端は制御ユニット30に接続さ
れている。制御ユニット30内に設けられたパワートラ
ンジスタにより点火コイル44にエネルギ充電の為の充
電電流が供給される。次に該充電電流が遮断されること
により点火コイル44の2次コイルに高電圧を発生し、
該高電圧はこれもディストリビュータ46を介して各シ
リンダに設けられている点火プラグ50へ供給される。
上記ディストリビュータ46はシリンダ内のピストン4
8により回転力が与えられる出力軸と機械的に連動して
回転する。これら、制御ユニット内のパワートランジス
タ,点火コイル44,ディストリビュータ46,点火プ
ラグ50が後述(図2)の点火装置162を構成する。
Next, the ignition system will be described. Battery 40
The other end of the ignition coil 44, which constitutes the ignition means and is connected to the control unit 30 via the key switch 42, is connected to the control unit 30. A power transistor provided in the control unit 30 supplies a charging current for energy charging to the ignition coil 44. Then, by interrupting the charging current, a high voltage is generated in the secondary coil of the ignition coil 44,
The high voltage is also supplied to the spark plug 50 provided in each cylinder via the distributor 46.
The distributor 46 is the piston 4 in the cylinder.
8 mechanically interlocks with the output shaft to which the rotational force is applied by 8. The power transistor, the ignition coil 44, the distributor 46, and the ignition plug 50 in the control unit constitute an ignition device 162 described later (FIG. 2).

【0016】上述のシリンダに導入された混合気はピス
トン48により圧縮され、点火プラグ50からの火花エ
ネルギにより燃焼を開始する。混合気の燃焼により生じ
る熱エネルギに変換され、エンジンの出力軸を介して機
械エネルギが出力される。
The air-fuel mixture introduced into the above-mentioned cylinder is compressed by the piston 48, and combustion is started by the spark energy from the spark plug 50. It is converted into heat energy generated by combustion of the air-fuel mixture, and mechanical energy is output via the output shaft of the engine.

【0017】次に排気系について説明する。シリンダ内
の燃焼ガスは排気バルブ(図示せず)を介して排気管52
に導かれ、タービン6を回転させる。その後触媒ユニッ
ト54およびマフラ56を介して大気へ放出される。尚
タービン6にはバイパス通路60が設けられており、バ
イパス通路60の開口をダイヤフラム58で制御するこ
とによりタービン6の回転速度の調整が行なわれる。ま
た排気管52とインテークマニホールド3との間にEG
Rバルブ62が設けられており、排気ガスが吸気系に導
かれる。スタータ系を説明する。エンジン1の出力軸に
はスタータモータ64が必要に応じ、接続される機構と
なっている。スタータスイッチ66がターンオンするこ
とにより、スタータモータ64が励磁され、それと共に
スタータ軸に設けられたピニオンがエンジン1の出力軸
に設けられたフライホイルに結合し、エンジン1のピス
トンを駆動する。この動作によりエンジン1のシリンダ
内で熱エネルギが機械エネルギに変換され、エンジン1
はこの新たに発生したエネルギで出力軸を動かす。この
ことによりエンジン1は自走状態となり、スタート動作
を完了する。
Next, the exhaust system will be described. The combustion gas in the cylinder is exhausted through an exhaust valve (not shown) to an exhaust pipe 52.
The turbine 6 is rotated. After that, it is released to the atmosphere via the catalyst unit 54 and the muffler 56. A bypass passage 60 is provided in the turbine 6, and the rotational speed of the turbine 6 is adjusted by controlling the opening of the bypass passage 60 with the diaphragm 58. In addition, an EG is provided between the exhaust pipe 52 and the intake manifold 3.
An R valve 62 is provided and exhaust gas is guided to the intake system. The starter system will be explained. A starter motor 64 is connected to the output shaft of the engine 1 as needed. When the starter switch 66 is turned on, the starter motor 64 is excited, and the pinion provided on the starter shaft is coupled to the flywheel provided on the output shaft of the engine 1 to drive the piston of the engine 1. By this operation, thermal energy is converted into mechanical energy in the cylinder of the engine 1,
Moves the output shaft with this newly generated energy. As a result, the engine 1 is in the self-propelled state, and the start operation is completed.

【0018】次にエンジン制御のためのセンサにつき説
明する。制御ユニット30には上記エンジン1の各系統
の状態に表わす入力信号としてノックセンサ72,水温
センサ74,スロットルスイッチ(スロットルSW)7
6,圧力センサ78,クランク角センサ80,排気ガス
センサ82,スタータスイッチ66の各出力が入力され
る。ノックセンサ82は既に知られている方法によりノ
ッキング状態に応じてパルス発生する。水温センサ74
はエンジンの冷却水温に基づくアナログ電圧をユニット
60へ伝える。スロットルスイッチ46はスロットルバ
ルブ10の全閉状態で“H”レベルの出力を出し、その
他の状態で、“L”レベルの出力を出す。圧力センサ7
8はインテークマニホールド3内のスロットルバルブ1
0下流の圧力に応じた電圧を出力する。
Next, a sensor for controlling the engine will be described. The control unit 30 receives a knock sensor 72, a water temperature sensor 74, a throttle switch (throttle SW) 7 as an input signal representing the state of each system of the engine 1.
6, outputs of the pressure sensor 78, the crank angle sensor 80, the exhaust gas sensor 82, and the starter switch 66 are input. Knock sensor 82 generates a pulse in accordance with a knocking state by a method already known. Water temperature sensor 74
Transmits an analog voltage based on the engine cooling water temperature to the unit 60. The throttle switch 46 outputs an "H" level output when the throttle valve 10 is fully closed, and outputs an "L" level output in other states. Pressure sensor 7
8 is a throttle valve 1 in the intake manifold 3
0 Outputs a voltage according to the downstream pressure.

【0019】クランク角センサ80は既に知られている
如く2値のスリットを切った円板がエンジン1の出力軸
シャフトに同期して回るディストリビュータ46のシャ
フトに固定され、該円板の回転がホトカプラにより検知
される。これによりエンジン1の出力軸の回転に応じ、
基準角パルス(以下REFパルスと記す。)と単位回転
角パルス(以下POSパルスと記す。)とを発生する。
4気筒エンジンでは基準角(REF)パルス90度毎
に、単位(POS)パルスは例えば2度毎にそれぞれ発
生する。
As already known, the crank angle sensor 80 has a disc in which a binary slit is cut and is fixed to the shaft of the distributor 46 which rotates in synchronization with the output shaft of the engine 1, and the rotation of the disc is a photocoupler. Detected by. As a result, according to the rotation of the output shaft of the engine 1,
A reference angle pulse (hereinafter referred to as a REF pulse) and a unit rotation angle pulse (hereinafter referred to as a POS pulse) are generated.
In a four-cylinder engine, a reference angle (REF) pulse is generated every 90 degrees and a unit (POS) pulse is generated every 2 degrees, for example.

【0020】次に制御ユニット30について説明する。
図2は図1の制御ユニット30の詳細回路構成図であ
り、CPU102とROM104とRAM106と入出力回路108とから
構成されている。上記CPU102はROM104内に記憶された各
種のプログラムにより、入出力回路108からの入力デ
ータを演算し、その演算結果を再び入出力回路108へ
戻す。これらの演算に必要な中間的な記憶はRAM106を使
用する。CPU102,ROM104,RAM106,入出力回路108間
の各種データのやり取りはデータ・バスとコントロール
・バスとアドレス・バスからなるバスライン110によ
って行なわれる。入出力回路108には第1のアナログ
・ディジタル・コンバータ(以下ADC1と記す)と第2の
アナログ・ディジタル・コンバータ(以下ADC2と記
す)とエンジン回転速度を検出する角度信号処理回路1
40と1ビット情報を入出力する為のディストリート入
出力回路(以下DIOと記す)との入力手段を待つ。
Next, the control unit 30 will be described.
FIG. 2 is a detailed circuit configuration diagram of the control unit 30 shown in FIG. 1, which includes a CPU 102, a ROM 104, a RAM 106, and an input / output circuit 108. The CPU 102 calculates the input data from the input / output circuit 108 according to various programs stored in the ROM 104, and returns the calculation result to the input / output circuit 108 again. The RAM 106 is used as an intermediate storage required for these calculations. Various types of data are exchanged among the CPU 102, ROM 104, RAM 106, and input / output circuit 108 by a bus line 110 including a data bus, a control bus, and an address bus. The input / output circuit 108 includes a first analog-digital converter (hereinafter referred to as ADC1), a second analog-digital converter (hereinafter referred to as ADC2), and an angle signal processing circuit 1 for detecting an engine rotation speed.
40 and an input means of a destreet input / output circuit (hereinafter referred to as DIO) for inputting / outputting 1-bit information is waited.

【0021】ADC1にはバッテリ電圧検出センサ12
2(以下VBSと記す)と冷却水温センサ74(以下T
WSと記す)と大気温センサ124(以下TASと記
す)と調整電圧発生器126(以下VRSと記す)とス
ロットル角センサ128(以下θTHSと記す)と排気
ガスセンサ82(以下λSと記す)との出力がマルチ・
プレクサ130(以下MPXと記す)に加えられ、MPX1
30によりこの内の1つを選択してアナログ・ディジタル
・変換回路132(以下ADCと記す)へ入力する。AD
C132の出力であるディジタル値はレジスタ134(以下
REGと記す)に保持される。
The ADC 1 has a battery voltage detection sensor 12
2 (hereinafter referred to as VBS) and a cooling water temperature sensor 74 (hereinafter referred to as TBS)
WS), an ambient temperature sensor 124 (hereinafter referred to as TAS), an adjustment voltage generator 126 (hereinafter referred to as VRS), a throttle angle sensor 128 (hereinafter referred to as θTHS), and an exhaust gas sensor 82 (hereinafter referred to as λS). Multi-output
MPX1 added to Plexer 130 (hereinafter referred to as MPX)
One of these is selected by 30 and input to the analog / digital conversion circuit 132 (hereinafter referred to as ADC). AD
The digital value output from C132 is held in the register 134 (hereinafter referred to as REG).

【0022】また圧力センサ78(以下VCSと記す)
はADC2へ入力され、アナログ・ディジタル・変換回
路136(以下ADCと記す)を介してディジタル変換
され、レジスタ138(以下REGと記す)へセットさ
れる。
A pressure sensor 78 (hereinafter referred to as VCS)
Is input to the ADC 2, digitally converted via an analog / digital conversion circuit 136 (hereinafter referred to as ADC), and set in a register 138 (hereinafter referred to as REG).

【0023】角度センサ80(以下ANGSと記す)か
らはREF(基準クランク角、例えば180度クランク
角を示す信号)とPOS(単位角、例えば2度クランク
角を示す信号)とが出力され、角度信号処理回路140
へ加えられ、ここでエンジン速度の計測が行なわれる。
DIO(ディストリート入出力回路)にはスロットル・
スイッチ76(以下TH−SWと記す)とトップ・ギヤ
・スイッチ142(以下TOP−SWと記す)とスター
タスイッチ66(以下START−SWと記す)とが入力
されている。尚このDIOの詳細は図28を用いて後述
する。
An angle sensor 80 (hereinafter referred to as ANGS) outputs REF (a signal indicating a reference crank angle, eg, 180 ° crank angle) and POS (a unit angle, eg, a signal indicating 2 ° crank angle), and the angle Signal processing circuit 140
The engine speed is measured here.
Throttle for DIO (Distro I / O circuit)
A switch 76 (hereinafter referred to as TH-SW), a top gear switch 142 (hereinafter referred to as TOP-SW), and a starter switch 66 (hereinafter referred to as START-SW) are input. Details of this DIO will be described later with reference to FIG.

【0024】次にCPUの演算結果に基づくパルス出力
回路および制御対象について説明する。燃料供給手段で
ある噴射弁28を制御するための制御信号を発生する出
力手段としての制御回路152(INJCと記す)は演
算結果のディジタル値をパルス出力に変換する回路であ
る。従って燃料噴射量に相当したパルス幅を有するパル
スがINJC152 で作られ、ANDゲート154を介してイ
ンジェクタ28へ印加される。尚INJC152 の詳細は図2
9〜図30により後述する。
Next, the pulse output circuit and the controlled object based on the calculation result of the CPU will be described. A control circuit 152 (denoted as INJC) as an output means for generating a control signal for controlling the injection valve 28 which is a fuel supply means is a circuit for converting the digital value of the calculation result into a pulse output. Therefore, a pulse having a pulse width corresponding to the fuel injection amount is generated by the INJC 152 and applied to the injector 28 via the AND gate 154. The details of INJC152 are shown in Fig. 2.
It will be described later with reference to FIGS.

【0025】点火手段を制御するための制御信号を発生
する出力手段としての点火パルス発生回路156(以下
IGNCと記す)は点火時期をセットするレジスタ(A
DVと記す)と点火コイル44の1次電流通電開始時間
をセットするレジスタ(DWLと記す)とを有し、CP
Uよりこれらデータがセットされる。センサされたデー
タに基づいてパルスを発生し、図1の点火コイル44の
1次電流を制御するための点火装置162(制御ユニッ
ト30内のパワートランジスタとその駆動回路とからな
る)へANDゲート158,160を介してこのパルス
を加える。このIGNC156 は図27を用いて後述する。
An ignition pulse generation circuit 156 (hereinafter referred to as IGNC) as an output means for generating a control signal for controlling the ignition means is a register (A) for setting the ignition timing.
CP) and a register (denoted as DWL) for setting the primary current energization start time of the ignition coil 44.
These data are set by U. AND gate 158 to an ignition device 162 (consisting of a power transistor and its drive circuit in control unit 30) for generating a pulse based on the sensed data and controlling the primary current of ignition coil 44 of FIG. , 160 to apply this pulse. This IGNC 156 will be described later with reference to FIG.

【0026】エアー・バイパス・バルブ14の開弁率は
制御回路(以下ISCCと記す)164からANDゲー
ト166を介して加えられるパルスによって制御され
る。ISCC164 はパルス幅をセットするレジスタISCD
と繰返しパルス周期をセットするレジスタISCPとを
持っている。このISCCの詳細回路は図26で説明す
る。
The opening rate of the air bypass valve 14 is controlled by a pulse applied from a control circuit (hereinafter referred to as ISCC) 164 through an AND gate 166. ISCC164 is a register ISCD that sets the pulse width
And a register ISCP for setting the repetition pulse period. The detailed circuit of this ISCC will be described with reference to FIG.

【0027】図1に示したEGR制御弁62を制御する
EGR量制御パルス発生回路168(以下EGRCと記
す)にはパルスのデューティを表わす値をセットするレ
ジスタEGRDとパルスの繰返し周期を表わす値をセッ
トするレジスタEGRPとを有している。このEGRC
の出力パルスはANDゲート170を介してEGR制御
弁62に加えられる。このEGRC回路も図26を用い
て後述する。
In the EGR amount control pulse generation circuit 168 (hereinafter referred to as EGRC) for controlling the EGR control valve 62 shown in FIG. 1, a register EGRD for setting a value representing the duty of the pulse and a value representing the repetition period of the pulse are provided. It has a register EGRP for setting. This EGRC
Output pulse is applied to EGR control valve 62 via AND gate 170. This EGRC circuit will also be described later with reference to FIG.

【0028】また1ビットの入出力回路は回路DIO
(ディスクリート入出力回路)により制御される。入力
信号としてはスロットルスイッチからのTH−SW信
号,トップギアスイッチ142からのTOP−SW信
号,スタータスイッチ66からのSTART−SW信号
がある。また出力信号としては燃料ポンプ24を駆動す
るためのパルス出力信号がある。このDIOは端子を入
力端子として使用するか、出力端子として使用するかを
決定するためのレジスタDDR192と、出力データをラッチ
するためのレジスタDOUT194 とが設けられている。
The 1-bit input / output circuit is the circuit DIO.
(Discrete input / output circuit). Input signals include a TH-SW signal from the throttle switch, a TOP-SW signal from the top gear switch 142, and a START-SW signal from the starter switch 66. The output signal includes a pulse output signal for driving the fuel pump 24. This DIO is provided with a register DDR192 for determining whether to use the terminal as an input terminal or an output terminal, and a register DOUT194 for latching output data.

【0029】モードレジスタ172は入出力回路108
内部の色々な状態を指令する命令を保持するレジスタ
(以下MODと記す)であり、例えばこのモードレジスタ
172に命令セットすることにより、ANDゲート15
4,158,166,170を総て動作状態にさせた
り、不動作状態にさせたりする。このようにモードレジ
スタ172に命令をセットすることにより、INJC152やI
GNC156,ISCC164,EGRC168の出力の停止や起動を制御で
きる。
The mode register 172 is the input / output circuit 108.
A register that holds commands that command various internal states
(Hereinafter referred to as MOD), for example, by setting an instruction in the mode register 172, the AND gate 15
All 4, 158, 166, 170 are put into an operating state or put into an inoperative state. By setting an instruction in the mode register 172 in this way, INJC152 and I
It is possible to control the stop and start of GNC156, ISCC164, and EGRC168 outputs.

【0030】次にROM104に格納されているプログラムに
つき説明する。
Next, the programs stored in the ROM 104 will be described.

【0031】図3は図2の制御回路のプログラムシステ
ムである。キー・スイッチ42(図1)により電源電圧
がCPU102に加えられるとCPU102はスタータ・モード20
2となり、イニシャライズ・プログラム(INITIALIZ)2
04を実行する。次に監視プログラム(MONIT)20
6を実行し、バック・グランド・ジョブ(BACKGROUNDJO
B)208を実行する。このバック・グランド・ジョブと
して例えばEGR量の計算タスク(以下ERG・TAS
Kと記す。)やエアー・バイパス・バルブ14の開度を
計算するタスク(以下ISC・TASKと記す)を実行
する。
FIG. 3 shows a program system of the control circuit of FIG. When the power supply voltage is applied to the CPU 102 by the key switch 42 (Fig. 1), the CPU 102 starts the starter mode 20.
2, the initialization program (INITIALIZ) 2
Execute 04. Next, the monitoring program (MONIT) 20
6 to execute the background job (BACKGROUNDJO
B) Execute 208. As this background job, for example, an EGR amount calculation task (hereinafter referred to as ERG TAS
Write K. ) And the task of calculating the opening degree of the air bypass valve 14 (hereinafter referred to as ISC / TASK).

【0032】このタスクの実行中、割込要因(以下IR
Qと記す)が発生すると割込要因の分析を行なうため開
始点222へジャンプし、割込要因分析(以下IRQ ANAL
と記す)プログラム224を実行する。
During execution of this task, interrupt factors (IR
When Q occurs, it jumps to the starting point 222 to analyze the interrupt factor and analyzes the interrupt factor (hereinafter IRQ ANAL
The program 224 is executed.

【0033】この割込要因分析(IRQ ANAL)の
プログラム224はさらにADC1の終了割込処理(以
下ADCIEND IRQと記す)プログラム226とADC2の終
了割込処理(以下ADC2END IRQと記す)プログラム228
と本発明の第1ステップが実行される一定期間経過割込
処理(以下INTV IRQと記す)プログラム230と
本発明の第2のステップ及び第3ステップが実行される
エンジン回転同期割込処理(以下INTL IRQと記
す)プログラム232からなり、後述する各タスクにそ
れぞれ起動要求(以下QUEUEと記す)を出す。
This interrupt factor analysis (IRQ ANAL) program 224 further includes an end interrupt processing of ADC1 (hereinafter referred to as ADCIEND IRQ) program 226 and an end interrupt processing of ADC2 (hereinafter referred to as ADC2END IRQ) program 228.
And a predetermined period elapsed interrupt process (hereinafter referred to as INTV IRQ) program 230 in which the first step of the present invention is executed, and an engine rotation synchronous interrupt process in which the second step and the third step of the present invention are executed (hereinafter INTL IRQ) program 232, and issues an activation request (hereinafter referred to as QUEUE) to each task described later.

【0034】この割込要因分析(IRQ ANAL)プ
ログラム224内の各プログラムADC1 END I
RQ226やADC2 END IRQ228やINT
VIRQ230やINTL IRQ232の各プログラ
ムにより起動要求(QUEUE)が出力される各タスクはレベ
ル・ゼロ・タスク群252やレベル1タスク群254やレ
ベル2タスク群256やレベル3タスク群258である
か、あるいは該各タスク群を構成するタスクである。ま
たINTV IRQプログラム232によりさらにエン
ジンの停止が検出されると起動要求(QUEUE)が発
生するタスクはエンジン停止時の処理タスク262(以
下ENST ATSKと記す)である。このENST TASK
262 が実行されると再び制御システムはスタート・モー
ドとなり、開始点202へ戻る。
Each program ADC1 END I in this interrupt factor analysis (IRQ ANAL) program 224
RQ226 and ADC2 END IRQ228 and INT
Each task for which an activation request (QUEUE) is output by each program of VIRQ 230 or INTL IRQ 232 is level zero task group 252, level 1 task group 254, level 2 task group 256, or level 3 task group 258, or These are tasks that make up each task group. When the engine stop is further detected by the INTV IRQ program 232, the task for which the activation request (QUEUE) is generated is the processing task 262 when the engine is stopped (hereinafter referred to as EST ATSK). This ENST TASK
Once 262 is executed, the control system is again in start mode and returns to start point 202.

【0035】タスク・スケジューラ242は起動要求
(QUEUE)の発生しているタスク群かあるいは実行
中断タスク群の内、レベルの高いタスク群(ここではレ
ベル・ゼロを最高とする)から実行するように、タスク
群の実行順序を決定する。タスク群の実行が終了すると
終了報告プログラム260(以下EXITと記す)によ
り終了報告される。この終了報告により、再び実行待ち
になってタスク群の内の最もレベルの高いタスク群を順
に実行する。
The task scheduler 242 executes from the task group in which the activation request (QUEUE) is generated or the execution suspended task group, from the task group with the higher level (here, level zero is the highest). , Determine the task group execution order. When the execution of the task group ends, the end report program 260 (hereinafter referred to as EXIT) reports the end. Due to this end report, the task group becomes the waiting state again and the task group having the highest level among the task groups is sequentially executed.

【0036】実行中断タスク群や起動要求(QUEU
E)の発生しているタスク群がなくなるとタスク・スケ
ジューラ242より再びバック・グラウンド・ジョブ2
08の実行へ移る。さらにレベル・ゼロ・タスク群から
レベル3タスク群のどれかを実行中に割込(IRQ)が
発生すると割込要因分析プログラムの開始点222へ戻
る。
Execution suspended task group and activation request (QUEU
When the task group in which E) has occurred disappears, the task scheduler 242 again executes the background job 2
Move to execution of 08. Further, if an interrupt (IRQ) occurs during execution of any of the level zero task group and the level 3 task group, the process returns to the starting point 222 of the interrupt factor analysis program.

【0037】第1表に以上述べた各タスクの起動とその
機能を示す。
Table 1 shows the activation and functions of each task described above.

【0038】[0038]

【表1】 [Table 1]

【0039】表1において、制御システムを管理するた
めのプログラムとして、割込分析(IRQ ANAL)プログラ
ムやタスクスケジューラ(TASK SCHDULER)プログラムや
終了報告(EXIT)プログラムがある。これらのプロ
グラム(以下OSと記す)は図4の如くROM104のアドレ
スA000からアドレスA300に保持されている。尚
アドレスは16進法記載で表現されている。
In Table 1, as programs for managing the control system, there are an interrupt analysis (IRQ ANAL) program, a task scheduler (TASK SCHDULER) program, and an end report (EXIT) program. These programs (hereinafter referred to as OS) are held at addresses A000 to A300 of the ROM 104 as shown in FIG. The address is expressed in hexadecimal notation.

【0040】さらにレベル・ゼロ・プログラムとしてA
D1の出力取込み(AD1IN)、AD2の出力取込み
(AD2IN)、エンジン回転速度出力取込み(RPM
IN)の各プログラムがあり、通常一定時間経過割込
(INTV IRQ)の10〔mSEC〕で起動され
る。レベル1プログラムとして燃料制御(INJC)、
点火時期制御(IGNCAL)、通電角制御(DWLCAL)プログ
ラムがあり、一定時間経過割込(INTV IRQ)の
20〔mSEC〕ごとに起動される。レベル2プログラ
ムとしてO2 フィードバック制御(LAMBDA)プログラム
があり、一定時間経過割込(INTV IRQ)の40
〔mSEC〕ごとに起動される。レベル3プログラムと
して補正計算(HOSEI)プログラムがあり一定時間
経過割込(INTV IRQ)の100〔mSEC〕ご
とに起動される。
A as a level zero program
D1 output capture (AD1IN), AD2 output capture (AD2IN), engine speed output capture (RPM
IN) programs, which are normally activated at a fixed time elapsed interrupt (INTV IRQ) of 10 [mSEC]. Fuel control (INJC) as level 1 program,
There are ignition timing control (IGNCAL) and conduction angle control (DWLCAL) programs, which are activated every 20 [mSEC] of a fixed time elapsed interrupt (INTV IRQ). There is an O 2 feedback control (LAMBDA) program as a level 2 program, and a 40-hour interrupt (INTV IRQ)
It is activated every [mSEC]. There is a correction calculation (HOSEI) program as a level 3 program, which is activated every 100 [mSEC] of a certain time elapsed interrupt (INTV IRQ).

【0041】またバック・グラウンド・ジョブとして排
気環流制御(EGRCAL)とバイパスエアー制御(ISCCAL)
プログラムがある。
Exhaust gas recirculation control (EGRCAL) and bypass air control (ISCCAL) as background jobs
There is a program.

【0042】上記レベル・ゼロ・プログラムはPROG
1としてそれぞれ図4のROM104のアドレスA600から
AAFFに記憶されている。レベル・1プログラムはPR
OG2としてROM104のアドレスAB00からABFFに記
憶されている。レベル2プログラムはPROG3として
ROM104のアドレスAE00からAEFFに記憶されてい
る。レベル3プログラムはPROG4としてROM104のア
ドレスAF00からAFFFに記憶されている。
The level zero program is PROG.
1 are stored in addresses A600 to AAFF of the ROM 104 of FIG. 4, respectively. PR for Level 1 Program
It is stored in the ROM 104 at addresses AB00 to ABFF as OG2. Level 2 program as PROG3
It is stored in the addresses AE00 to AEFF of the ROM 104. The level 3 program is stored in the ROM 104 at addresses AF00 to AFFF as PROG4.

【0043】またバック・グラウンド・ジョブ・プログ
ラムはB000からB1FFに保持されている。
The background job program is held in B000 to B1FF.

【0044】なお上記プログラムPROG1からPRO
G4までの各プログラムのスタート・アドレスのリスト
(以下SETMRと記す)がB200からB2FFまで
に保持され、PROG1からPROG4までの各プログ
ラム起動周期を表わす値(以下TTMと記す)がアドレ
スB300からB3FFに記憶されている。これらの詳
細は図15に示されている。
The programs PROG1 to PRO
A list of start addresses (hereinafter referred to as SETMR) of each program up to G4 is held in B200 to B2FF, and a value (hereinafter referred to as TTM) representing each program activation period from PROG1 to PROG4 is stored in addresses B300 to B3FF. Remembered These details are shown in FIG.

【0045】その他のデータは必要に応じ図4のROM
のアドレスB400からB4FFに記憶される。それに
続いて演算のためのデータとして用いる、点火時期マッ
プ(ADV.MAP)、空燃比制御マップ(AF.MA
P)や排気ガス制御マップ(EGR.MAP)をそれぞ
れ記憶されている。
Other data is stored in the ROM of FIG. 4 as necessary.
Are stored in the addresses B400 to B4FF. Subsequently, an ignition timing map (ADV.MAP) and an air-fuel ratio control map (AF.MA) are used as data for calculation.
P) and the exhaust gas control map (EGR.MAP) are stored.

【0046】イニシャライズプログラムを説明する。The initialization program will be described.

【0047】図3におけるイニシャライズ(INITIALIZ)
プログラム204の詳細を図5を用いて説明する。ステ
ップ282で割込(IRQ)発生時の退避エリアを設定
する。次にステップ284でRAM106を全てクリアする。
ステップ286で入出力回路108のレジスタ内に初期
値の設定を行なう。この初期値設定として例えば、角度
センサ146の計測時間の初期値やDIOの端子の入力
と出力の使い分けのDDRの設定や一定時間経過割込
(INTV IRQ)発生のためのタイマの設定があ
る。
Initialization in FIG. 3 (INITIALIZ)
Details of the program 204 will be described with reference to FIG. In step 282, the save area when an interrupt (IRQ) occurs is set. Next, in step 284, the RAM 106 is all cleared.
At step 286, an initial value is set in the register of the input / output circuit 108. This initial value setting includes, for example, an initial value of the measurement time of the angle sensor 146, a DDR setting for selectively using input and output of the DIO terminal, and a timer setting for generating a certain time elapsed interrupt (INTV IRQ).

【0048】ステップ288でADC1に起動をかけ、
さらにADC1の終了割込(ADC1ENDIRQ)の為の禁止解
除を行なう。この場合、ADC1に入力されるマルチプ
レクサ(MPX)の指定を行ない、ADC1を起動する
ためのパルスを送る。
In step 288, the ADC1 is activated,
Further, the prohibition is released for the end interrupt (ADC1ENDIRQ) of ADC1. In this case, the multiplexer (MPX) input to the ADC1 is designated and a pulse for activating the ADC1 is sent.

【0049】これにより図2のADC1のマルチプレク
サMPXの入力の1つであるバッテリ電圧検出センサVB
S122の出力がセレクトされてADC1へ入力される。ス
テップ290へ戻ってここでADC1 END IRQ
を持つ。ADC1の変換動作が完了し、REG134へディジ
タル値がセットされるとステータス・レジスタSTAUS198
へADC164の動作完了が報告され、ADC1 END I
RQがCPU102へ入力される。これによりプログラムAD
1 INが実行され、バッテリ電圧センサ132の出力
が取り込まれる。
As a result, the battery voltage detection sensor VB which is one of the inputs of the multiplexer MPX of the ADC 1 of FIG.
The output of S122 is selected and input to ADC1. Return to step 290 where ADC1 END IRQ
have. When the conversion operation of ADC1 is completed and a digital value is set in REG134, status register STAUS198
ADC164 operation is reported to ADC1 END I
The RQ is input to the CPU 102. This makes the program AD
1 IN is executed, and the output of the battery voltage sensor 132 is captured.

【0050】ステップ292でセンサ122から82の
出力を全て取り込んだかを確認する。この場合センサ1
22の入力の取り込みが完了されただけなので、ステッ
プ288へ戻る。このステップ288でマルチプレクサ
(MPX)162は次の入力であるセンサ74の出力を
セレクトする。水温センサ74の出力のアナログ・ディ
ジタル変換が完了すると再び、ステップ290でプログ
ラムAD1 IN(取り込み)が実行され、レジスタRE
G134内に保持されている水温センサTWS74の出力のディ
ジタル値が取り込まれてROM104のデータ(DATA)エ
リアに保持される。ステップ292で再びステップ28
8へ戻される。このようにステップ288からステップ
292のループを回ることによりセンサ122から82
の出力のディジタル値が次々に取り込まれ、排気ガスセ
ンサであるλS82の出力値の取り込みが完了すると、
ステップ294へ進む。
At step 292, it is confirmed whether all the outputs of the sensors 122 to 82 have been captured. In this case sensor 1
Since the input of 22 has been completed, the process returns to step 288. In step 288, the multiplexer (MPX) 162 selects the output of the sensor 74 which is the next input. When the analog-digital conversion of the output of the water temperature sensor 74 is completed, the program AD1 IN (acquisition) is executed again in step 290, and the register RE
The digital value of the output of the water temperature sensor TWS74 held in G134 is fetched and held in the data (DATA) area of the ROM 104. Step 28 again at step 292
Returned to 8. In this way, the sensor 122 to 82
When the digital values of the output of are captured one after another and the capture of the output value of λS82, which is an exhaust gas sensor, is completed,
Go to step 294.

【0051】ステップ294で始動時の点火時期の演算
と設定を行なう。この点火時期θADV(ST)はエン
ジンの冷却水温TWの関数として演算する。この関数を
図7に示す。図7の特性に従ってθADV(ST)を演
算し、この演算された結果は図2IGNC156 のレジスタA
DVにセットされる。
In step 294, the ignition timing at the time of starting is calculated and set. The ignition timing θADV (ST) is calculated as a function of the engine cooling water temperature TW. This function is shown in FIG. ΘADV (ST) is calculated according to the characteristics of FIG. 7, and the calculated result is the register A of IGNC156 of FIG.
Set to DV.

【0052】ステップ296で始動時のエアー・バイパ
ス・バルブ14の初期値の演算を行なう。この演算は図
9に示す特性に基づいて行なわれ、その演算出力は制御
回路ISCC164 のレジスタISCDにセットされる、尚I
SCPについても固定値がセットされる。この固定値は
制御弁の特性で定まる値である。
In step 296, the initial value of the air bypass valve 14 at the time of starting is calculated. This calculation is performed based on the characteristics shown in FIG. 9, and the calculation output is set in the register ISCD of the control circuit ISCC164.
A fixed value is also set for SCP. This fixed value is a value determined by the characteristics of the control valve.

【0053】ステップ298で燃料噴射時間であるIN
JCのオン・デューティの初期値が演算される。この演
算は図8に示す特性に基づいて行なわれるものであり、
その演算出力は制御回路INJC152 のレジスタINJDに
セットされる。レジスタINJDのセットにより、図3のイ
ニシャライズ(INITIALIZ)プログラム204の実行を終
了する。
In step 298, the fuel injection time IN
The initial value of the on-duty of JC is calculated. This calculation is performed based on the characteristics shown in FIG.
The operation output is set in the register INJD of the control circuit INJC152. By setting the register INJD, the execution of the initialization (INITIALIZ) program 204 of FIG. 3 is completed.

【0054】次に監視プログラム206を説明する。図
6にMONITプログラム206を示す。MONITプ
ログラム206はステップ302より開始され、ステッ
プ302で図1のスタータ・スイッチ66がON状態か
どうかDIOのDIO5入力を監視することにより行な
われる。もしスタータ・スイッチ66がON状態である
とDIOの第5ビットDIO5が“H”となっている。
また逆にOFFしていると“L”となっている。今エン
ジンの始動前であるとするとスタータ・スイッチ66は
OFFであり、ステップ302からステップ312へ進
み、ここで始動後かどうかを判断する。この判断は例え
ばスタータ・フラグが立っているかどうかを判断する。
このスタータ・フラグはステップ308で立てられるも
のである。このスタータ・フラグはRAM内の所定位置
にセットされる。始動前はスタータ・フラグが立ってい
ないので、ステップ312でNOとなり、再びステップ
302へ戻る。スタータ・スイッチ66がONされるま
でステップ302のNOからステップ312のNOを通
ってステップ302へ戻るルートを回る。このルートを
回りながら、スタータ・スイッチ66の監視を行なう。
Next, the monitoring program 206 will be described. FIG. 6 shows the MONIT program 206. The MONIT program 206 starts at step 302 and is performed by monitoring the DIO5 input of the DIO at step 302 for the starter switch 66 of FIG. If the starter switch 66 is ON, the fifth bit DIO5 of DIO is "H".
On the contrary, when it is OFF, it is "L". If the engine is not started yet, the starter switch 66 is off, and the routine proceeds from step 302 to step 312, where it is determined whether or not the engine has been started. This determination determines, for example, whether or not the starter flag is set.
This starter flag is set in step 308. This starter flag is set at a predetermined position in RAM. Since the starter flag is not set before the engine is started, the answer is NO in step 312, and the process returns to step 302 again. The route from NO in step 302 through NO in step 312 to step 302 is repeated until the starter switch 66 is turned on. The starter switch 66 is monitored while traveling around this route.

【0055】スタータ・スイッチ66がONするとステ
ップ302で判断がYESとなり、ステップ304へ進
む。ここで、既にスタータ・スイッチがONしていたか
どうかを判断する。初めてステップ304へ進んだ場合
はスタータ・スイッチのONを検出した直後であり、ス
タータフラグが立っていないのでステップ304で判断
がNOとなる。スタータ・フラグの立っていない時は判
断をNOとしてステップ306へ進み、始動の為の準備
がされる。例えば本実施例では、燃料・ポンプ24の起
動のためにDIOのDOUTレジスタ194の第ゼロ・
ビットに“H”をセットする。これにより燃料・ポンプ
24の電源が入る。次にステップ306で、DOUTレ
ジスタ194の第1ビットを“H”とする。これにより
IGNC回路156の出力に設けられているANDゲー
ト160が動作状態になる。実際にDOUTレジスタ1
94の第ゼロビットと第1ビットのセットは同時に行な
われる。
When the starter switch 66 is turned on, the determination at step 302 is YES, and the routine proceeds to step 304. Here, it is determined whether or not the starter switch has already been turned on. When the process proceeds to step 304 for the first time, it is immediately after the starter switch is detected to be ON, and the starter flag is not set. Therefore, the determination is NO in step 304. When the starter flag is not set, the determination is NO and the routine proceeds to step 306, where preparation for starting is made. For example, in the present embodiment, the DIO DOUT register 194 zero zero
Set the bit to "H". This turns on the fuel pump 24. Next, at step 306, the first bit of the DOUT register 194 is set to "H". This activates the AND gate 160 provided at the output of the IGNC circuit 156. Actually DOUT register 1
The zero and first bits of 94 are set at the same time.

【0056】ステップ308で一定時間経過割込(INTV
IRQ)の禁止解除がなされる。この一定時間経過割込(I
NTV IRQ)の禁止解除は例えば図2のMASKレ
ジスタ196の第4ビットを“H”にすることにより行
なう。さらにステップ308でスタータ・フラグを立て
る。このスタータ・フラグは既にスタータ・スイッチ6
6がONであることを示していて、ステップ304とス
テップ312でこのフラグを判断に用いる。
At step 308, an interrupt (INTV
IRQ) is prohibited. This fixed time elapsed interrupt (I
The release of the prohibition of (NTV IRQ) is performed by setting the fourth bit of the MASK register 196 of FIG. 2 to "H". Further, in step 308, a starter flag is set. This starter flag is already the starter switch 6
6 indicates that it is ON, and this flag is used for the determination in step 304 and step 312.

【0057】ステップ310で入出力回路108の出力
系である制御回路INJCと制御回路IGNCと制御回
路ISCCと制御回路EGRCの出力端のANDゲート
を動作状態にするため、後で説明するモード・レジスタ
172に“H”をセットする。これにより各制御装置へ
パルス出力が送られる。ステップ310からステップ3
02へ戻り、ステップ302でスタータ・スイッチ66
がONかどうかが判断される。始動中はスタータ・スイ
ッチ66がONであり、YESからステップ304へ進
む。このステップ304で、スタータ・フラグをチェッ
クし、フラグが立っていれば既にスタート中であるとし
てステップ302へ戻る。
In step 310, the control circuit INJC which is the output system of the input / output circuit 108, the control circuit IGNC, the control circuit ISCC, and the AND gate at the output end of the control circuit EGRC are brought into the operating state. Set “H” to 172. As a result, a pulse output is sent to each control device. Step 310 to Step 3
02, the starter switch 66 in step 302.
Is determined to be ON. During start-up, the starter switch 66 is ON, and the process proceeds from YES to step 304. In this step 304, the starter flag is checked. If the flag is set, it means that the start has already started, and the process returns to step 302.

【0058】このようにスタータ・モータ66が駆動さ
れている間は、ステップ302のYESと304のYE
Sとから作られるループを回っている。
While the starter motor 66 is being driven in this manner, YES at step 302 and YE at 304.
It goes around a loop made from S and.

【0059】エンジン1が始動されるとスタータ・スイ
ッチ66がOFFとなるので、ステップ302の判断は
NOとなり、ステップ312へ進み、ステップ312で
スタータ・フラグがチェックされ、スタータ・フラグが
立っているのでステップ314へ進む。このステップ31
4で、エンジン停止の検知と処理の禁止解除の為にエン
スト・フラグがセットされ、このステップ314以降エ
ンジンの停止はINTVIRQとINTLIRQ処理プログラムのエン
ジンの停止検知ステップで検知できる。次にバック・グ
ラウンド・ジョブのプログラム208へ進む。このプロ
グラムを図10に詳述する。
Since the starter switch 66 is turned off when the engine 1 is started, the judgment in step 302 is NO, the routine proceeds to step 312, where the starter flag is checked in step 312 and the starter flag is set. Therefore, the process proceeds to step 314. This step 31
In step 4, the engine stall flag is set to detect the engine stop and release the prohibition of the process, and the engine stop after step 314 can be detected in the engine stop detecting step of the INTVIRQ and INTLIRQ processing programs. Next, the process proceeds to the background job program 208. This program is detailed in FIG.

【0060】図において、ステップ410でスロットル
・スイッチ76がONかどうかが判断される。もしON
であれば排気ガス還流制御は行なわれない。
In the figure, at step 410, it is judged if the throttle switch 76 is ON. If ON
If so, the exhaust gas recirculation control is not performed.

【0061】従ってステップ412へ進み、ここでレジ
スタEGRDにゼロをセットする。このことによりEG
R弁62の開弁率はゼロになる。一方ステップ414で
ISCDに所定の値をセットする。このため、レジスタIS
CDにセットされた値に応じて図1のエアー・バイパス
・バルブ14が制御される。バイパス通路13の空気流
量を制御するエアー・バイパス・バルブ14は特定の運
転状態に応じて制御される。すなわち気温の低い冬季の
運転、エンジンの冷えている始動時の運転およびエンジ
ンに負荷のかかるカーエアコンデンショナーを使用中の
運転等の場合にはバイパス通路13の空気流量を増加さ
れる。ステップ414で冷却水温TWに応じてエアー・
バイパス・バルブ14のデューティがレジスタISCD
に設定される。この値に応じてアイドル時のエンジン回
転速度が制御される。このステップ414の終了により
再び410へ進み、このフローを繰り返す。
Therefore, the routine proceeds to step 412, where the register EGRD is set to zero. This makes EG
The opening rate of the R valve 62 becomes zero. On the other hand, in step 414
Set a predetermined value in ISCD. Therefore, the register IS
The air bypass valve 14 of FIG. 1 is controlled according to the value set in CD. The air bypass valve 14, which controls the air flow rate in the bypass passage 13, is controlled according to a specific operating condition. That is, the air flow rate in the bypass passage 13 is increased in the case of operation in the winter when the temperature is low, the operation at the time of starting the engine when the engine is cold, and the operation in which the car air conditioner with a load on the engine is used. In step 414, air is supplied according to the cooling water temperature TW.
The duty of the bypass valve 14 is the register ISCD.
Is set to. The engine speed during idling is controlled according to this value. Upon completion of this step 414, the process proceeds to 410 again, and this flow is repeated.

【0062】一方、スロットル・スイッチ76がオンで
ない状態ではエアー・バイパス・バルブ14は開弁され
ず、代りに排気ガス還流制御が行なわれる。このために
ステップ418でレジスタISCDにゼロをセットす
る。ステップ422で冷却水温TWが一定値、例えばT
A℃より高いかどうかを判断し、もし高ければEGRを
掛けないようにする。このためステップ426でEGR
CUTを行なうための値“ゼロ”を設定する。またステ
ップ422で冷却水温が一定値(TA℃)より低い値で
あればステップ424へ進む。ステップ424で冷却水
温がTB℃より低いかどうかを判断する。もし低い場
合、やはりEGRを掛けないのでステップ426でEGRC
UTを行なう値“ゼロ”を設定する。これらの値はステッ
プ430でEGRDレジスタにセットされる。
On the other hand, when the throttle switch 76 is not turned on, the air bypass valve 14 is not opened, and instead the exhaust gas recirculation control is performed. To this end, step 418 sets register ISCD to zero. In step 422, the cooling water temperature TW has a constant value, for example, T
Judge whether it is higher than A ° C, and if it is higher, do not apply EGR. Therefore, in step 426, EGR
Set the value "zero" to perform CUT. If the cooling water temperature is lower than the constant value (TA ° C.) in step 422, the process proceeds to step 424. In step 424, it is determined whether the cooling water temperature is lower than TB ° C. If it is low, since EGR is not applied, EGRC is executed in step 426.
Set the value "zero" for UT. These values are set in the EGRD register in step 430.

【0063】一方冷却水温TWがTB℃より高くTA℃
より低い場合EGRを行なう。このときのEGR量は圧
力センサ78の出力VCとエンジン回転速度Nで定ま
る。出力VCとNとによるEGR量のマップは図4のR
OMのアドレスB700〜B7FFに設けられており、この
マップから検索してEGR量を定める。ステップ428
で検索を行ない、この値をステップ430でレジスタE
GRDへセットする。このレジスタEGRDのセット値
に応じて図1に示したEGR装置62は駆動される。
On the other hand, the cooling water temperature TW is higher than TB ° C. and TA ° C.
If lower, perform EGR. The EGR amount at this time is determined by the output VC of the pressure sensor 78 and the engine rotation speed N. The map of the EGR amount by the output VC and N is R in FIG.
It is provided at OM addresses B700 to B7FF, and the EGR amount is determined by searching from this map. Step 428
Is searched for, and this value is registered in the register E in step 430.
Set to GRD. The EGR device 62 shown in FIG. 1 is driven according to the set value of the register EGRD.

【0064】図10に示したフローチャートでは、ステ
ップ430あるいはステップ414の終了により、再び
ステップ410へ戻る。このようにすることによりコン
ピュータはエアー・バイパス・バルブ14を制御するた
めのステップ410からステップ414までのフローチ
ャートかあるいはステップ418からステップ430ま
でのステップのフローチャートを常に実行できる。従っ
て割込(IRQ)などの発生が生じないものとすれば、
開始点202よりスタートしたプログラムはイニシャラ
イズ(INITIALIZ )プログラム204,監視(MONI
T)プログラム206を通ってバック・グラウンド・ジ
ョブ208であるISCプログラムあるいはEGRCALプロ
グラムを常に実行し続けることになる。
In the flow chart shown in FIG. 10, upon the completion of step 430 or step 414, the process returns to step 410 again. In this way, the computer can always execute the flow chart of steps 410 to 414 or the flow chart of steps 418 to 430 for controlling the air bypass valve 14. Therefore, if the occurrence of interrupts (IRQ) etc. does not occur,
The program started from the start point 202 is the initialization program INITIALIZ 204 and monitoring (MONI).
T) Through the program 206, the background job 208, that is, the ISC program or the EGRCAL program will always be executed.

【0065】監視(MONIT)プログラム206やバッ
ク・グラウンド・ジョブ208は割込(IRQ)を発生さ
せてその処理を中断できるようになっており、割込(I
RQ)による処理が終了すると再び上記プログラムの実
行を再開する。
The monitor (MONIT) program 206 and the background job 208 can interrupt the processing by generating an interrupt (IRQ).
When the processing by RQ) is completed, the execution of the program is restarted.

【0066】次に図3における割込(IRQ)の発生に
基づく処理の説明を行なう。割込(IRQ)の要因分析
のプログラム224はADC1END IRQ226の処理とADC2 END
IRQ228の処理とINTV IRQ230の処理と、INTLIRQ232 の処
理とからなっている。ここで各プログラム226,22
8,230,232のそれぞれを実行するためには先
ず、割込(IRQ)に基づくサービスの要求内容は何か
を調べる。このため図2のステータス(STATUS)レジス
タ198の内容が調べられる。このステータス(STATU
S)レジスタの内容を見ることにより、割込(IRQ)の
発生要因が判明する。この発生要因に応じて上記各プロ
グラム226,228,230,232を実行し、これ
によりタスク(TASK)252,254,256,2
58,262の内の実行が必要なタスク(TASK)に
起動要求(QUEUE)を出す。
Next, the processing based on the occurrence of the interrupt (IRQ) in FIG. 3 will be described. The interrupt (IRQ) factor analysis program 224 processes ADC1 END IRQ226 and ADC2 END.
It consists of IRQ228 processing, INTV IRQ230 processing, and INTLIRQ232 processing. Here, each program 226,22
In order to execute each of 8, 230 and 232, first, what is the request content of the service based on the interrupt (IRQ) is checked. Therefore, the contents of the status register 198 of FIG. 2 are examined. This status (STATU
The cause of the interrupt (IRQ) is found by looking at the contents of the (S) register. Each of the programs 226, 228, 230, 232 is executed in accordance with the cause of this occurrence, and as a result, tasks (TASK) 252, 254, 256, 2 are executed.
An activation request (QUEUE) is issued to a task (TASK) that needs to be executed among 58 and 262.

【0067】但し、割込(IRQ)の発生を多くすると管
理プログラム(以下OSと記す)の実行時間が多くなり実
質的なエンジン制御の為の演算時間がとれなくなる欠点
がある。従ってこの実施例では、ADC1 END IRQ228 はイ
ニシャライズ(INITIALIZ)あるいは監視(MONIT)
プログラム204と206の実行中のみ発生させ、その
他は発生させない。つまり監視(MONIT)プログラム
206の図6で示したステップ314で図2のマスク
(MASK)レジスタ196にADC1END IRQ の禁止命令で
ある“L”をセットする。またADC2END ITQ226は最初か
ら発生させない、つまりスタート点である202で全て
の割込みが禁止されるように入出力回路のゼネラル・リ
セット信号でIRQ発生禁止状態になるようにマスク
(MASK)レジスタをセットする。その後割込(IR
Q)禁止解除の命令を出さないようにすることによりAD
C2END IRQ の発生を禁止する。
However, if the number of interrupts (IRQ) is increased, the execution time of the management program (hereinafter referred to as OS) is increased, and the calculation time for the substantial engine control cannot be taken. Therefore, in this embodiment, the ADC1 END IRQ 228 is initialized (INITIALIZ) or monitored (MONIT).
It is generated only while the programs 204 and 206 are being executed, and the others are not generated. That is, in step 314 shown in FIG. 6 of the monitoring (MONIT) program 206, the mask of FIG.
(MASK) Set "L" which is the ADC1END IRQ prohibition instruction to the register 196. In addition, ADC2END ITQ226 is not generated from the beginning, that is, the mask (MASK) register is set so that the IRQ generation is disabled by the general reset signal of the input / output circuit so that all interrupts are disabled at the start point 202. .. Then interrupt (IR
Q) AD by not issuing a command to release the prohibition
C2END IRQ generation is prohibited.

【0068】割込要因分析プログラム224の具体例を
図11〜図14に示す。割込要因(IRQ)の分析を行
なうための開始点222よりステップ450においてAD
C1END IRQ でないことが判断されると、ステップ452
へ行く。一方割込(IRQ)の発生要因がADC1END IRQ か
どうかを判断し、そうであればステップ450よりイニ
シャライズ(INITIALIZ )プログラムのステップ290
へジャンプする。ADC1 END IRQが発生するのはこの実施
例では図5のイニシャライズ(INITIALIZ)プログラム
204の実行中のみである。それ以外の状態ではADC1 E
ND IRQは禁止される。ステップ450の判断が“NO”
の場合ステップ452へ進む。
Specific examples of the interrupt factor analysis program 224 are shown in FIGS. AD at step 450 from starting point 222 for analysis of interrupt factor (IRQ)
If it is determined that it is not C1END IRQ, step 452
Go to On the other hand, it is determined whether the cause of the interrupt (IRQ) is ADC1END IRQ, and if so, step 290 of the initialization (INITIALIZ) program from step 450.
Jump to. In this embodiment, the ADC1 END IRQ is generated only during execution of the initialization (INITIALIZ) program 204 shown in FIG. ADC1 E in all other states
ND IRQ is prohibited. The determination in step 450 is “NO”
If yes, go to step 452.

【0069】ステップ452で割込(IRQ)の要因が
一定周期で発生する一定時間経過割込(INTV IRQ)かど
うかを判断する。“YES”の場合、ステップ454へ
進む。ステップ454からステップ458は図12のス
テップ482と組合わせられてエンジンの停止状態を検
知する。
In step 452, it is determined whether the factor of the interrupt (IRQ) is a constant time elapsed interrupt (INTV IRQ) which occurs at a constant cycle. If “YES”, the process proceeds to step 454. Steps 454 to 458 are combined with step 482 of FIG. 12 to detect the stopped state of the engine.

【0070】次にステップ454で、エンジン停止状態
を検知すべきかどうかを、エンスト検知フラグがセット
されているかどうかにより判断する。エンジン停止の検
知が必要な場合のみこのエンスト検知フラグがセットさ
れている。ステップ454でこのフラグがリセットの場
合、エンジンの停止検知は行なわず、ステップ460へ
進む。一方フラグがセットされている場合、エンジン停
止の検知を行なう為にステップ456へ進む。
Next, at step 454, it is judged whether the engine stop state should be detected or not depending on whether the engine stall detection flag is set. This engine stall detection flag is set only when engine stop detection is required. If this flag is reset in step 454, engine stop detection is not performed, and the routine proceeds to step 460. On the other hand, if the flag is set, the routine proceeds to step 456 to detect the engine stop.

【0071】このステップでエンジン出力軸の基準回転
角で発生するREF信号からの時間経過を計測するため
エンストカウンタのカウント値を更新する。このエンス
トカウンタは基準回転角を表わすREF信号毎にクリア
されるので、エンストカウンタ値の前のREF信号発生
からの時間経過を表わす。ステップ458でエンストカ
ウント値が規定値に達している場合、エンジンが停止し
たと判断され、ステップ474へ進みエンストタスク
(ENSTTASK)(図14)を実行する。
In this step, the count value of the engine stall counter is updated in order to measure the elapsed time from the REF signal generated at the reference rotation angle of the engine output shaft. Since this engine stall counter is cleared for each REF signal representing the reference rotation angle, it represents the passage of time since the generation of the REF signal before the engine stall counter value. When the engine stall count value has reached the specified value in step 458, it is determined that the engine has stopped, and the routine proceeds to step 474, where the engine stall task (ENSTTASK) (FIG. 14) is executed.

【0072】エンストタスク(ENSTTASK)の内容は、燃
料ポンプ24を停止させるために図2のDIOOを
“H”から“L”に変更すること、図2のANDゲート
154,158,166,170を停止状態にするため
にモード(MODE)レジスタ172に“L”とセット
することおよびプログラムシステムのスタート点202
へジャンプすることである。
The contents of the ENT task (ENSTTASK) are that the DIOO of FIG. 2 is changed from "H" to "L" to stop the fuel pump 24, and the AND gates 154, 158, 166 and 170 of FIG. Setting the mode register 172 to "L" to bring it to a stopped state and the start point 202 of the program system
Is to jump to.

【0073】またステップ458でエンジンが停止して
いないと判断されるとステップ460へ進む。ステップ4
60からステップ470はタスク・レベル・ゼロからタ
スク・レベル3までのプログラムが起動タイミングに達
したかどうかの判断をする機能を持つ。先ずタスク・レ
ベル・ゼロを調べる。その為のステップ460でタスク
コントロールワード(TCW)の番号nを表わすRAM
内の所定のアドレスの内容をゼロにする。タスク・レベ
ル・ゼロのタスク・コントロール・ワードすなわち図1
5のRAM106内のTCW0のビットb0〜b5で構成され
ているカウンタ0をプラス1だけインクリメントする。
このように本実施例では加算法を採用したが、減算法を
採用することも可能である。ステップ462でTCW0
のカウンタの値と図15のタスク起動タイマTTM0の
値とを比較する。ここでTTM0には“1”が入ってい
る。
If it is determined in step 458 that the engine is not stopped, the process proceeds to step 460. Step 4
Steps 60 to 470 have a function of determining whether or not the programs from task level zero to task level 3 have reached the activation timing. First, check task level zero. A RAM representing the task control word (TCW) number n in step 460 for that purpose
Zero the contents of a given address in. Task Level Zero Task Control Word, Figure 1
The counter 0 constituted by the bits b0 to b5 of TCW0 in the RAM 106 of 5 is incremented by one.
As described above, the addition method is adopted in this embodiment, but the subtraction method can also be adopted. TCW0 in step 462
The value of the counter is compared with the value of the task activation timer TTM0 of FIG. Here, TTM0 contains "1".

【0074】ここで一定時間経過割込(INTV IR
Q)は10〔mSEC〕毎に発生するものとしているの
で、TTM0に“1”が入っていることはタスク・レベ
ル・ゼロ・プログラム(図3の252)は10〔mSE
C〕毎に起動されることを表わしている。図15のTC
W0のカウンタ(CNTR0)とTTM0をステップ4
64で比較し、一致する場合“YES”へ進む。この場
合は一致するのでステップ466へ進み、タスク・コン
トロール・ワードTCW0のビットb6にフラグ“1”
を立てる。この実施例では各TCWのb6はそのタスク
の起動要求(QUEUE)のフラグとなる。ステップ4
66でさらにTCW0のb6にフラグ“1”を立てたの
でこのTCW0のb6〜b5に設けられたカウンタCNTR
0 をクリアする。ステップ468でTCWのnをインク
リエントする。すなわちステップ468でタスク・レベ
ル・ゼロからタスク・レベル1の起動タイミング検索に
移る。ステップ470でタスク・レベル3の終了かを判
断する。つまりn=4かを判断する。この場合n=1で
あるので、ステップ462へ戻る。ステップ462でタ
スク・レベル1のプログラムのタスク・コントロール・
ワードである図15のRAM106内のTCW1のカウンタC
NTR1の内容を“+1”インクリメントする。ステッ
プ464で、図15のROM104のTTM1と比較する。こ
の実施例ではTTM1の内容は“2”である。つまりタ
スク・レベル1の起動タイミングは20〔mSEC〕で
ある。今カウンタCNTR1 の内容が“1”であると仮定す
ると464の判断は“NO”つまりタスク・レベル1プ
ログラム254は起動タイミングではないことが判断さ
れ、ステップ468へ進む。ここで再び検索されるタス
ク・レベルが再新され、次はタスク・レベル2となる。
同様にしてタスク・レベル3まで終了すると、ステップ
468でn=4となり、ステップ470でn=nMAX
(4)の条件が満足される。そしてタスク・スケジュー
ラ242へ進む。
Here, a certain time elapsed interrupt (INTV IR
Since Q) is generated every 10 [mSEC], the fact that "1" is included in TTM0 means that the task level zero program (252 in FIG. 3) is 10 [mSE].
C] is activated every time. TC of FIG.
Step 4 of W0 counter (CNTR0) and TTM0
The comparison is made at 64, and if they match, the process proceeds to “YES”. In this case, since they match, the process proceeds to step 466, and the flag "1" is set in the bit b6 of the task control word TCW0.
Stand up. In this embodiment, b6 of each TCW becomes a flag of the activation request (QUEUE) of the task. Step 4
At 66, the flag "1" is set in b6 of TCW0, so the counter CNTR provided in b6 to b5 of TCW0.
Clear 0. In step 468, TCW n is incremented. That is, in step 468, the process moves from task level zero to task level 1 activation timing search. In step 470, it is determined whether the task level 3 has ended. That is, it is determined whether n = 4. In this case, n = 1, so the process returns to step 462. In step 462, the task control of the task level 1 program
The counter C of TCW1 in the RAM 106 of FIG. 15 which is a word
The content of NTR1 is incremented by "+1". In step 464, it is compared with TTM1 in the ROM 104 of FIG. In this embodiment, the content of TTM1 is "2". That is, the activation timing of task level 1 is 20 [mSEC]. Assuming that the content of the counter CNTR1 is "1", the determination at 464 is "NO", that is, it is determined that the task level 1 program 254 is not the activation timing, and the routine proceeds to step 468. The task level searched again here is renewed, and next is task level 2.
Similarly, when task level 3 is completed, n = 4 at step 468 and n = nMAX at step 470.
The condition (4) is satisfied. Then, the process proceeds to the task scheduler 242.

【0075】ステップ452で一定時間経過割込(INTV
IRQ )でなければステップ472へ進む。ここでエンジ
ンの出力軸の基準回転角毎に発生する基準角割込(IN
TLIRQ)かどうか判断する。この場合かならずYE
Sになるはずであるが、もしノイズ等で誤動作した場合
ステップ472でNOとなり、割込前の状態に戻る。一
方基準角割込(INTL IRQ)の場合、図12のス
テップ482へ進む。ここで図11のステップ456,
458と組合わせられてエンジンの停止状態を検知す
る。すなわちエンストカウンタをステップ482でクリ
アする。
At step 452, an interrupt (INTV
IRQ), the process proceeds to step 472. Here, a reference angle interrupt (IN is generated for each reference rotation angle of the output shaft of the engine).
TLIRQ). In this case YE
It should be S, but if it malfunctions due to noise or the like, it becomes NO in step 472, and the state before the interrupt is restored. On the other hand, in the case of the reference angle interrupt (INTL IRQ), the process proceeds to step 482 in FIG. Here, step 456 of FIG.
Combined with 458, it detects the engine stop condition. That is, the engine stall counter is cleared in step 482.

【0076】ステップ484で燃料ポンプ24が動作中
かどうかを判断し、もし停止していれば、エンジン出力
軸が基準回転角まで回転したことであるのでステップ4
90で図2のDIOのDIOOを“H”にすることによ
り燃料ポンプ24を動作状態にする。
In step 484, it is determined whether the fuel pump 24 is operating, and if it is stopped, it means that the engine output shaft has rotated to the reference rotation angle.
At 90, the DIOP of the DIO of FIG. 2 is set to "H" to activate the fuel pump 24.

【0077】ステップ502で、本発明の第2ステップ
の補正演算を実行する。すなわち、点火時期の急変に基
づくエンジントルクの急変を防止するための処理を行な
う。以下ダイナミックリミテーション(DYNAL)と
記す。その詳細は図13を用いて後述する。
At step 502, the correction operation of the second step of the present invention is executed. That is, processing for preventing a sudden change in engine torque due to a sudden change in ignition timing is performed. Hereinafter referred to as dynamic limitation (DYNAL). The details will be described later with reference to FIG.

【0078】ステップ504でエンジン回転数の読出し
を行ない、最終回転数nMAXを越えているかどうかを
判断する。nMAXを越えている場合、エンジンの出力
トルクを低下させる為にステップ510へ進む。ステッ
プ520〜524は点火動作の間引を行なうステップで
ある。つまり図2のANDゲート160を間欠的に動作
状態とする。ステップ520でDIO1の出力が“H”
かどうかを判断し、“H”の場合は点火を停止する為に
ステップ522でDIO1を“L”にする。そうでない
場合はステップ524でDIO1を“H”にする。これ
により間欠的に点火が行なわれる。
At step 504, the engine speed is read to determine whether or not the final speed nMAX is exceeded. If it exceeds nMAX, the routine proceeds to step 510 in order to reduce the output torque of the engine. Steps 520 to 524 are steps for thinning out the ignition operation. That is, the AND gate 160 of FIG. 2 is intermittently operated. In step 520, the output of DIO1 is “H”
If it is "H", DIO1 is set to "L" in step 522 to stop ignition. If not, DIO1 is set to "H" in step 524. As a result, ignition is performed intermittently.

【0079】ステップ506〜514でインテークマニ
ホールド内の圧力Pが最高圧力PMAXを越えているか
どうかを判断する。圧力PがPMAXを越えると危険で
ある。このPMAXはエンジン回転速度Nに対し、図1
8の如き特性になっている。この図18の特性は例えば
NA〜NMの各エンジン回転速度のバンドに分けられ
て、その各バンド内でのPMAX値の最低値をそのバン
ドの代表値として選び、図19に示す如く、ROMのア
ドレスのB800〜B80Dに記憶されている。
In steps 506 to 514, it is judged whether the pressure P in the intake manifold exceeds the maximum pressure PMAX. It is dangerous if the pressure P exceeds PMAX. This PMAX is shown in FIG.
It has characteristics such as 8. The characteristic of FIG. 18 is divided into, for example, each band of engine speeds NA to NM, and the lowest PMAX value in each band is selected as a representative value of that band, and as shown in FIG. It is stored in the addresses B800 to B80D.

【0080】先ず、ステップ506で番号Zをゼロにす
る。このZは上記NA〜NMのバンドの順番を表わして
いる。ステップ508で先頭番地B80E+Zの番地か
らバンドの境界値を読出す。つまり最初はバンドNAと
NBの境界NOの値がアドレスB80Eより読出され
る。したがってステップ508でエンジン回転速度Nと
アドレスB804に記憶されているバンドNAとNBと
の境界の回転速度値とが比較される。エンジン回転速度
Nがこの境界値より大きい場合、ステップ510へ進
み、Zがインクリメントされる。これにより実際の回転
速度Nと比較される値は番地B80Fから読出されたN
1の値に移る。このN1の値はバンドNBとバンドNC
との境界値である。
First, at step 506, the number Z is set to zero. This Z represents the order of the bands NA to NM. In step 508, the band boundary value is read from the head address B80E + Z. That is, initially, the value of the boundary NO between the bands NA and NB is read from the address B80E. Therefore, in step 508, the engine rotation speed N is compared with the rotation speed value at the boundary between the bands NA and NB stored in the address B804. If the engine speed N is higher than this boundary value, the routine proceeds to step 510, where Z is incremented. As a result, the value compared with the actual rotation speed N is N read from the address B80F.
Move to a value of 1. The value of this N1 is the band NB and the band NC.
It is the boundary value of and.

【0081】このようにして実際のエンジン回転速度N
が、次々に読出される境界値と比較され、そのつど番号
Zがインクリエントされる。その境界値より実際のエン
ジン回転速度の値Nが小さくなった時点でステップ50
8からステップ512へ進む。ステップ512でこのバ
ンド順番を意味するZの値が用いられ、アドレスB80
0から何番目かがZの値で決められ、最大圧力がB80
0+Zのアドレスより読み出される。この最大圧力PM
AXと測定圧力Pが比較され、この最大圧力PMAXを越え
ている場合、エンジントルクを減少させるためにステッ
プ520へ進む。一方マニホールド圧が最大圧より小さ
い時はDIOのDIO1出力を“H”とし、ANDゲー
ト160(図2)を動作状態とする。そしてタスクスケ
ジューラプログラムへ進む。
In this way, the actual engine speed N
Are compared with the boundary values read one after another, and the number Z is incremented each time. When the actual engine speed value N becomes smaller than the boundary value, step 50
From 8 to step 512. In step 512, the value of Z which means this band order is used, and the address B80
The number from 0 is determined by the value of Z, and the maximum pressure is B80
It is read from the address 0 + Z. This maximum pressure PM
The measured pressure P is compared with AX, and if it exceeds this maximum pressure PMAX, the routine proceeds to step 520 to reduce the engine torque. On the other hand, when the manifold pressure is lower than the maximum pressure, the DIO1 output of DIO is set to "H", and the AND gate 160 (FIG. 2) is activated. Then proceed to the task scheduler program.

【0082】次に、本発明の第2ステップであるダイナ
ミックリミテーションプログラム(DYNAL)を説明
する。
Next, the dynamic limiting program (DYNAL) which is the second step of the present invention will be described.

【0083】図13は図12のダイナミックリミテーシ
ョンプログラム(DYNAL)の詳細フローチャートで
ある。まず、後述の図21に示されるレベル1プログラ
ム中の表1に示したIGNCALプログラムにより点火時期の
目標値θ TARGETが計算される。これは一定時間経過毎
に実行されている。そして、第2ステップではこの目標
値θ TARGETと前回の点火時期であるθ(t−1)との差
Δθがステップ532で計算されている。この差Δθの
大きさが一定値ΔθMAXより大きいかどうかをステッ
プ534で判断し、このΔθMAXより大きくない場
合、目標値θ TARGETと前回の点火時期θ(t−1)と
の差が小さいとの理由で、ステップ536で、目標値θ
TARGETを今回の点火時期θ(t)とする。
FIG. 13 is a detailed flowchart of the dynamic limiting program (DYNAL) shown in FIG. First, the target value θ TARGET of the ignition timing is calculated by the IGNCAL program shown in Table 1 in the level 1 program shown in FIG. 21 described later. This is executed at regular time intervals. Then, in the second step, the difference Δθ between this target value θ TARGET and θ (t−1) which is the previous ignition timing is calculated in step 532. It is determined in step 534 whether the magnitude of this difference Δθ is larger than a fixed value ΔθMAX. If it is not larger than this ΔθMAX, it is determined that the difference between the target value θ TARGET and the previous ignition timing θ (t−1) is small. For the reason, in step 536, the target value θ
Let TARGET be the ignition timing θ (t) of this time.

【0084】一方ステップ534で目標値θ TARGETと
前回の点火時期θ(t−1)との差Δθが一定幅ΔθM
AXより大きいと判断された場合、ステップ538とス
テップ540及びステップ542で一定角(+Δθ1
−Δθ2)のみ目標値に近づける処理を行なう。すなわ
ち目標値θ TARGETが前回の点火時期に対し、大きいか
小さいかを判断する。この目標値θ TARGETや前回の点
火時期θ(t−1)はこの実施例では点火時期より前の
基準回転角から点火角までの間のセンサ80からの単位
パルスであるPOSパルスの数で表わされる。
On the other hand, in step 534, the difference Δθ between the target value θ TARGET and the previous ignition timing θ (t-1) is a constant width ΔθM.
If it is determined that it is larger than AX, a constant angle (+ Δθ 1 ,
Only −Δθ 2 ) is processed to approach the target value. That is, it is determined whether the target value θ TARGET is larger or smaller than the previous ignition timing. In this embodiment, the target value θ TARGET and the previous ignition timing θ (t−1) are represented by the number of POS pulses which are unit pulses from the sensor 80 from the reference rotation angle before the ignition timing to the ignition angle. Be done.

【0085】従って、θ TARGET>θ(t−1)の条件
が満足されることは点火時期を進み側に移す必要がある
ことを意味し、そうでない場合は遅れ側に移す必要があ
ることを意味している。
Therefore, if the condition of θ TARGET> θ (t-1) is satisfied, it means that the ignition timing needs to be shifted to the advance side, and if not, it needs to be shifted to the delay side. I mean.

【0086】そして、ステップ538で、目標値θ TA
RGETが前回の点火時期θ(t−1)より大きい場合に
は、今回行なう点火時期を目標値θ TARGETに近づける
為にステップ540で一定値Δθ1のみ加算した値θ
(t−1)+Δθ1を今回の点火時期θ(t)とする。
一方そうでない場合、ステップ542でθ(t−1)か
ら一定値Δθ2を減じたθ(t−1)−Δθ2が今回の点
火時期θ(t)とされる。次に本発明の第3ステップに
該当する処理としてステップ544で、ステップ536
とステップ540及びステップ542のいずれかで求め
られたθ(t)を図2の入出力回路108のIGNC156 のレ
ジスタADVへセットする。そして図12のステップ5
04へ続く。
Then, in step 538, the target value θ TA
If RGET is larger than the previous ignition timing θ (t−1), the value θ obtained by adding only the constant value Δθ1 in step 540 to bring the ignition timing performed this time closer to the target value θ TARGET.
Let (t-1) + Δθ1 be the present ignition timing θ (t).
On the other hand, if not, in step 542, θ (t−1) −Δθ2 obtained by subtracting a constant value Δθ2 from θ (t−1) is set as the current ignition timing θ (t). Next, as processing corresponding to the third step of the present invention, in step 544, step 536.
2 is set in the register ADV of the IGNC 156 of the input / output circuit 108 of FIG. And step 5 of FIG.
Continue to 04.

【0087】このように、本発明の第2ステップ及び第
3ステップは回転に同期して実行されている。
As described above, the second step and the third step of the present invention are executed in synchronization with the rotation.

【0088】次に図14はエンストタスク(ENST
TASK)の詳細フローチャートであり、図11のステ
ップ474の詳細である。このステップ747で説明し
た如く、燃料ポンプ24を停止し、図2の入出力回路1
08の出力を全て停止するためにモードレジスタ(MO
DE)172に“L”をセットする。その後スタート点
202のアドレスへジャンプする。
Next, FIG. 14 shows an stalled task (ENST
12 is a detailed flowchart of TASK), which is the details of step 474 of FIG. 11. As described in step 747, the fuel pump 24 is stopped and the input / output circuit 1 of FIG.
Mode register (MO
"DE" 172 is set to "L". After that, it jumps to the address of the start point 202.

【0089】図16はタスク・スケジューラ242の詳
細フローチャートであり、ステップ560でタスク・レ
ベルnの実行が必要かを判断する。最初はnをクリア
し、このためn=0である。タスク・レベル・ゼロのプ
ログラムの実行の必要について判断する。すなわち、優
先順位の高いタスクから順に起動要求(QUEUE)の存
在を調べてゆく。これは図15のRAM106をタスク・コン
トロール・ワードTCWのb6とb7を検索することに
より判断できる。b6は起動要求フラグでここに“1”
が立っていると起動要求が“有り”であることがわか
る。またb7には実行中を示すフラグであり、ここで
“1”が立っていると実行中であり現時点では中断され
ていることを示す。従ってb6とb4の少なくともどち
らかに“1”があれば実行要となりステップ568へ進
む。
FIG. 16 is a detailed flowchart of the task scheduler 242. In step 560, it is judged whether the task level n needs to be executed. Initially clear n, so n = 0. Determine the need to run a task-level zero program. That is, the existence of the activation request (QUEUE) is checked in order from the task with the highest priority. This can be judged by searching the RAM 106 of FIG. 15 for b6 and b7 of the task control word TCW. b6 is a start request flag, which is "1"
It can be seen that the start request is “present” when is set. Further, b7 is a flag indicating that it is being executed, and if "1" is set here, it indicates that it is being executed and that it is interrupted at the present time. Therefore, if "1" is present in at least one of b6 and b4, it is necessary to execute and the process proceeds to step 568.

【0090】ステップ568でb7のフラグを判断し、
b7が“1”であれば実行中断中でありステップ570
よりその中断していたタスクの実行を再開する。b6と
b7の両方にフラグが立っていてもやはりステップ56
8の判断は“YES”となり、中断中のところのプログ
ラムから再開する。b6のみが“1”の場合、そのレベ
ルの起動要求フラグつまりb6をステップ572でクリ
アして、ステップ574でb7のフラグ(以下RUNフ
ラグと記す)をセットする。ステップ572と574は
そのタスク・レベルの起動要求状態から実行状態に進ん
だことを示す。ステップ578でそのタスク・レベル・
プログラムのスタート・アドレスを検索する。これは図
15に示したROM104の内に各タスク・レベルのT
CWに対応させて設けられたスタートアドレステーブル
TSAより求められ、つまりステップ560でのタスク
レベルnの値に図15に示したROM104内のタスクスター
トアドレステーブル(TASK START ADDRESS)の先頭番地
を加算した(n+TASK・START・ADDRESSの先頭番地)の
式から読出し番地を決め、この番地の記憶内容をスター
トアドレスとしてこのスタート・アドレスへジャンプす
ることによりそのタスクの実行が行なわれる。
At step 568, the flag of b7 is judged,
If b7 is "1", execution is suspended and step 570
The suspended task is resumed. Even if both b6 and b7 are flagged, step 56 is still performed.
The judgment of 8 is "YES", and the program at the interrupted point is restarted. If only b6 is "1", the start request flag of that level, that is, b6 is cleared in step 572, and the flag of b7 (hereinafter referred to as RUN flag) is set in step 574. Steps 572 and 574 indicate that the task-level activation request state has progressed to the execution state. In step 578, the task level
Find the program start address. This is the T of each task level in the ROM 104 shown in FIG.
It is obtained from the start address table TSA provided corresponding to the CW, that is, the value of the task level n in step 560 is added with the start address of the task start address table (TASK START ADDRESS) in the ROM 104 shown in FIG. The read address is determined from the expression (start address of n + TASK / START / ADDRESS), and the task is executed by jumping to this start address with the stored content of this address as the start address.

【0091】図16へ戻ってステップ560で“NO”
と判断された場合、この場合は検索のタスク・レベルの
プログラムには起動要求がでていなくしかも、実行中断
でもないことを示している。この場合次のタスク・レベ
ルの検索にうつる。つまりタスク・レベルのnがn+1
となってレベルが1つ移動する。ここでnがMAXつま
りここでは4であるかをみ、4でなければステップ56
0へ進む。これを繰り返し、n=4となると点566よ
りバック・グラウンド・ジョブの中断点へ戻る。つまり
点566ではタスク・レベル・ゼロ〜3までの全てのプ
ログラムに実行の必要がないことが判明したことにな
り、IRQの発生前のバック・グラウンド・ジョブの中
断点へ戻る。
Returning to FIG. 16, "NO" in step 560.
If it is determined that this is the case, it means that neither the activation request has been issued to the task-level program of the search nor the execution interruption. In this case, it goes to the next task level search. That is, the task level n is n + 1
And move one level. Here, it is checked whether n is MAX, that is, 4 here, and if not 4, step 56.
Go to 0. This is repeated, and when n = 4, the process returns from the point 566 to the interruption point of the background job. In other words, at point 566, it has been found that it is not necessary for all programs up to task level 0 to 3 to execute, and the process returns to the interruption point of the background job before the IRQ.

【0092】図15は上で述べたタスク・コントロール
・ワードTCWとROM内のタスク・起動周期を表わす
TTM、タスク・スタート・アドレス・テーブルの関係
を示したものである。タスク・コントロール・ワードT
CWの0〜3に対応してROM内にタスク起動周期TTM
があり、一定時間経過割込(INTV IRQ)ごとにT
CWカウンタのCNTR0〜3が各々に更新され、各タ
スクのTTMと一致したことにより、そのTCWのb6
にフラグが立つ、このフラグにより次にROM内のタス
ク・スタート・アドレスTSAよりそのタスクのスター
ト・アドレスが検索され、そのスタート・アドレスへジ
ャンプすることによりプログラム1〜4の選ばれたプロ
グラムが実行される。この実行中はRAM106内のそのプロ
グラムに対応したTCWのb7にフラグが立つ。このフ
ラグが立っている間は実行中であることが判断できる。
このようにして図3のタスク・スケジューラ242によ
り、レベル0〜3のプログラムが実行される。そして例
えばレベル0〜3までのプログラム252〜258のい
ずれかが実行されている時に割込(IRQ)が発生すれば
再びそのタスクを中断して割込(IRQ)の処理になる。
今割込(IRQ)が発生により実行が開始されたタスクは
やがてその処理を終了する。これにより終了報告を行な
うため、終了報告(EXIT)プログラム260へジャ
ンプする。
FIG. 15 shows the relationship between the task control word TCW described above, the TTM indicating the task activation cycle in the ROM, and the task start address table. Task control word T
Task activation cycle TTM in ROM corresponding to CW 0 to 3
There is, and T is set for each interrupt (INTV IRQ)
The CNWs 0 to 3 of the CW counter have been updated to match the TTMs of the respective tasks, so that b6 of the TCW is updated.
The task start address TSA in the ROM is searched for the start address of the task by this flag, and the program selected from programs 1 to 4 is executed by jumping to the start address. To be done. During this execution, a flag is set in b7 of the TCW corresponding to the program in the RAM 106. While this flag is set, it can be determined that it is being executed.
In this way, the task scheduler 242 of FIG. 3 executes the programs of levels 0 to 3. If an interrupt (IRQ) occurs while any of the programs 252 to 258 of levels 0 to 3 is being executed, the task is interrupted again and the interrupt (IRQ) process is started.
The task whose execution has started due to the occurrence of an interrupt (IRQ) will eventually finish its processing. As a result, the end report is made, and the process jumps to the end report (EXIT) program 260.

【0093】この終了報告(EXIT)プログラムの詳
細を図17に示す。このプログラムは、終了タスクを見
つけるためのステップ592と594からなる。このス
テップ592と594で先ずタスク・レベルのゼロより
検索し、終了したタスク・レベルを見つける。これによ
りステップ596へ進み、ここで終了したタスク・コン
トロール・ワード(TCW)のb7のフラグ(RUNフ
ラグ)をリセットする。これによりそのプログラムの実
行が完全に終ったことになる。そして再びタスク・スケ
ジューラへ戻り、次の実行プログラムが決定される。
The details of this end report (EXIT) program are shown in FIG. The program consists of steps 592 and 594 for finding the finished task. In steps 592 and 594, the task level zero is searched first to find the completed task level. As a result, the process proceeds to step 596, and the flag (RUN flag) of b7 of the task control word (TCW) ended here is reset. This completes the execution of the program. Then, it returns to the task scheduler again, and the next execution program is determined.

【0094】図20はレベルゼロプログラムである。こ
のプログラムは表1に示す通り、一定時間経過に実行さ
れており、例えば10m・SEC毎に起動要求が出され
る。ステップ650でADC1のデータの取込みを行な
い、654で次の割込データを選択し、ステップ656
でADC1の次のデータを取り込むための起動をかけ
る。また652のステップは始動前にADCEND IRQを使用
するためであり、始動前のフラグが立っている場合、始
動前であるため割込中断の再開(RTI)つまり中断し
ているプログラムへ戻る。このプログラムは図5のイニ
シャライズ(INITIALIZ)プログラム204である。
FIG. 20 shows a level zero program. As shown in Table 1, this program is executed after a fixed time elapses, and a start request is issued every 10 m · SEC, for example. At step 650, the data of ADC1 is fetched, at 654 the next interrupt data is selected, and at step 656.
Then, it is activated to fetch the next data of ADC1. The step 652 is to use the ADCEND IRQ before starting. If the flag before starting is set, the interrupt interruption restart (RTI), that is, the interrupted program is returned because it is before starting. This program is the initialization program 204 shown in FIG.

【0095】ステップ658でAD2のデータであるイ
ンテークマニホールド圧Pを取り込み、さらにステップ
670でADC2の次のデータ取り込みのための起動を
かける。ステップ672でエンジン速度を取り込む。こ
の後、ステップ674で始動は完了したかどうか判断す
る。始動完了であればステップ682へジャンプする。
一方そうでない場合はステップ676で始動前か始動中
かを判断する。エンジンの測定速度Nが始動回転速度に
達していなければ始動前であり、ステップ682へジャン
プする。始動中であればステップ678へ移り、図2の
入出力回路108の出力禁止を解除するためにモード(M
ODE)レジスタ172に“H”をセットする。そして
始動中を示すフラグをセットする。尚このレベル(LE
VEL)ゼロタスクは10mSEC毎に起動要求が出さ
れるので、ほぼ10mSEC毎に実行される。従って始
動中は10mSEC毎にステップ678や680が実行
される。一度セットした後同じ主旨のフラグやデータを
セットしても実害は起こらない。ステップ680で基準
回転角割込(INTL IRQ)を受付可能にするため
に、図2のマスク(MASK)レジスタ196へ“H”
フラグをセットし、さらにエンジン停止の検知を行なう
為にエンスト検知フラグをセットする。この検知フラグ
は図11のステップ454で使用される。ステップ68
2と684でエンジン回転速度Nがアイドル目標回転値
NLLより大きい場合NLLフラグをセットする。
In step 658, the intake manifold pressure P, which is the data of AD2, is taken in, and in step 670, the ADC2 is started for taking in the next data. In step 672, the engine speed is acquired. Thereafter, in step 674, it is determined whether the start is completed. If the start is completed, the process jumps to step 682.
On the other hand, if not, it is determined in step 676 whether it is before starting or during starting. If the measured speed N of the engine has not reached the starting rotation speed, it means that the engine has not started yet, and the routine jumps to step 682. If the engine is being started, the process proceeds to step 678, and the mode (M
ODE) register 172 is set to "H". Then, a flag indicating that the engine is starting is set. This level (LE
The VEL) zero task is executed almost every 10 mSEC because the activation request is issued every 10 mSEC. Therefore, during startup, steps 678 and 680 are executed every 10 mSEC. Even if you set the flag and data of the same purpose after setting once, no actual harm will occur. In order to enable reception of the reference rotation angle interrupt (INT IRQ) at step 680, "H" is set in the mask (MASK) register 196 of FIG.
The flag is set, and the engine stall detection flag is set to detect the engine stop. This detection flag is used in step 454 of FIG. Step 68
If the engine speed N is greater than the idle target speed value NLL at 2 and 684, the NLL flag is set.

【0096】ステップ686で始動が完了したかどうか
を判断する。測定値Nが始動完了と判断できる回転速度
より大きい場合は始動完と判断し、始動完フラグをセッ
トする。そうでない場合はNLLフラグをリセットす
る。そしてこのレベル(LEVEL)ゼロタスクは終了し、そ
の終了報告を行なう為、終了報告(EXIT)プログラ
ム260へジャンプし、図15のRAM106TCW0のb7
ビットのフラグをクリアする。
At step 686, it is determined whether the start is completed. When the measured value N is higher than the rotation speed at which it can be judged that the start is completed, it is judged that the start is completed and the start completed flag is set. If not, the NLL flag is reset. Then, this level (LEVEL) zero task ends, and in order to report the end, jump to the end report (EXIT) program 260, b7 of RAM106TCW0 in FIG.
Clear the flag of the bit.

【0097】図21はレベル1プログラムであり、これ
も一定時間経過毎に実行されるものである。
FIG. 21 shows a level 1 program, which is also executed at regular time intervals.

【0098】まずステップ702で始動中かどうかを判
断する。始動中の場合、始動中の燃料を供給し、さらに
点火時期を決定するので、これらの計算の為にステップ
704へ進む。このステップ704でエンジン冷却水温の
値TWに基づいて始動燃料を決定する。またステップ7
06でエンジン回転速度Nと水温TWとに基づいて点火
時期θを決定する。
First, in step 702, it is determined whether or not the engine is starting. If it is during start-up, supply fuel during start-up and determine the ignition timing.
Proceed to 704. In step 704, the starting fuel is determined based on the engine cooling water temperature value TW. Step 7 again
At 06, the ignition timing θ is determined based on the engine speed N and the water temperature TW.

【0099】一方始動中でない場合はステップ708で
インテークマニホールド圧Pとエンジン速度Nとから燃
料供給量を求めて図2の制御回路INJC152 のINJDレ
ジスタへセットする。次に本発明の第1ステップとして
のステップ710〜724の処理は点火時期の演算フロ
ーチャートである。
On the other hand, if the engine is not being started, the fuel supply amount is obtained from the intake manifold pressure P and the engine speed N in step 708 and is set in the INJD register of the control circuit INJC152 in FIG. Next, the processing of steps 710 to 724 as the first step of the present invention is an ignition timing calculation flowchart.

【0100】ここで制御される点火進角値Wはエンジン
回転速度Nに対し図22の如き特性になる。つまりアイ
ドル目標回転速度NLL値より低くなると進角値をW2
に向けて増加させる。これによりトルク出力を増加させ
てエンジン回転数Nを目標値NLLに近づける。尚目標
回転速度NLLでは進角量が少なく進角値はW1であ
り、エンジン回転速度に対し点火進み角が少ないのでト
ルク出力が少ない。従って目標回転速度NLL値の付近
でエンジンの回転速度がバランスするはずである。ここ
でNCRANKは、エンジンのクランキング時の回転数を、ま
たNSTARTは、始動完了時のエンジン回転数を、それぞれ
示す。この場合、具体的にはマニホールド圧Pとエンジ
ン回転速度Nとの関数によって決まる。この関係はAD
Vマップとして図4の如くROM104のアドレスB500〜
B5FFに格納されている。
The ignition advance value W controlled here has a characteristic as shown in FIG. 22 with respect to the engine rotation speed N. That is, when the idling target rotation speed becomes lower than the NLL value, the advance value is set to W2.
Increase towards. As a result, the torque output is increased to bring the engine speed N close to the target value NLL. At the target rotation speed NLL, the advance amount is small and the advance value is W1. Since the ignition advance angle is small with respect to the engine rotation speed, the torque output is small. Therefore, the engine rotation speed should be balanced near the target rotation speed NLL value. Here, NCRANK indicates the engine speed during cranking of the engine, and NSTART indicates the engine speed at the completion of starting. In this case, it is specifically determined by a function of the manifold pressure P and the engine rotation speed N. This relationship is AD
As a V map, as shown in FIG.
It is stored in B5FF.

【0101】ステップ710でスロットルスイッチ76
が閉じているかどうかを判断し、閉じている場合、ステ
ップ712でアイドル目標回転速度NLLより大きいか
どうかを見る。ここで大きい場合、ステップ716でエ
ンジン回転速度Nの関数として図22に示した点火進角
値Wに対応した角度θが決められる。この値Wは図22
の如く、回転速度Nが増加してもNLL付近では一定な
ので回転速度Nが増加するほど最高トルク出力特性に比
べ遅角状態となる。従って出力トルクは減少する。しか
し目標回転速度NLLより大幅に大きい場合、図22の
如く回転速度Nに対応して進角している。この領域は高
速回転でエンジンブレーキが掛けられたような場合に用
いられるもので、運転の滑らかさと排気ガス状態なども
考慮して決められる。
In step 710, the throttle switch 76
Is closed, and if it is closed, it is checked in step 712 whether it is larger than the idle target rotation speed NLL. If so, in step 716, the angle θ corresponding to the ignition advance value W shown in FIG. 22 is determined as a function of the engine rotation speed N. This value W is shown in FIG.
As described above, even if the rotation speed N increases, the rotation speed N is constant in the vicinity of NLL, and thus the retard angle state becomes more retarded as the maximum torque output characteristic increases as the rotation speed N increases. Therefore, the output torque is reduced. However, when the rotation speed is much higher than the target rotation speed NLL, the advance angle is advanced corresponding to the rotation speed N as shown in FIG. This region is used when the engine brake is applied at high speed and is determined in consideration of the smooth running and the exhaust gas condition.

【0102】いずれにしても回転速度Nがアイドル目標
回転速度NLLより大きい場合は減速特性となり、そう
でない場合は加速特性となるように点火時期が定められ
る。スロットルスイッチ76が開いている場合、ステッ
プ718で点火時期θがインテークマニホールド圧力P
と回転速度Nより求められる。この圧力Pが規定値(タ
ーボチャージャ4の動作開始を示す圧力)より大きい値
のとき、ステップ718で求めたθに補正係数θCがス
テップ722で加算され、その値がθとされる。この補
正係数θCはレベル3のタスクで求められる。詳細は後
述する。
In any case, the ignition timing is determined so that the deceleration characteristic is obtained when the rotation speed N is higher than the idle target rotation speed NLL, and the acceleration characteristic is obtained otherwise. If the throttle switch 76 is open, the ignition timing θ is set to the intake manifold pressure P in step 718.
And the rotation speed N. When the pressure P is larger than the specified value (pressure indicating the start of operation of the turbocharger 4), the correction coefficient θC is added to the θ obtained in step 718 in step 722, and the value is set to θ. The correction coefficient θC is obtained by the task of level 3. Details will be described later.

【0103】ステップ724は点火パルスを受けてから
パワートランジスタを含む点火コイル電流の制御部が動
作するまでの時間を補正するものであり、補正量f(N)
は図23の如き特性になる。つまり制御部の遅れはほぼ
一定時間と考えられ、この時間に対応したエンジン回転
角をf(N)として求め、ステップ724でf(N)とθの
加算を行ない、この値を目標点火時期θ TARGETとす
る。このθ TARGETは図13で説明したダイナミックリ
ミテーションのステップ532〜544で用いられる。
Step 724 is to correct the time from the receipt of the ignition pulse to the operation of the ignition coil current controller including the power transistor. The correction amount f (N)
Has characteristics as shown in FIG. That is, the delay of the control unit is considered to be almost constant time, the engine rotation angle corresponding to this time is obtained as f (N), and f (N) and θ are added in step 724, and this value is set as the target ignition timing θ. TARGET. This θ TARGET is used in steps 532 to 544 of the dynamic limiting described with reference to FIG.

【0104】ステップ726〜734は安全対策であ
り、ステップ726で回転速度Nが最高回転速度NMA
X越えた場合ステップ726からステップ734へジャ
ンプし、燃料ポンプ24をオフする。最高回転速度NM
AXを越えていない場合、ステップ728で圧力Pの最
大値を求める。これは図12のステップ506〜512
によりPMAXを求めるフローと同じ動作である。圧力
PがPMAXより大きいとき、燃料ポンプ24をオフす
るためステップ734へジャンプする。そうでない場
合、燃料ポンプ24をオンさせる。尚すでにオン状態の
ときさらにオンさせるよう入出力回路108へデータセ
ットしても問題は生じない。この後ステップ736で点
火コイル44の一次電流の通電開始時期を演算し、終了
報告(EXIT)プログラムへジャンプしてレベル1プログ
ラムは終了する。
Steps 726 to 734 are safety measures. In step 726, the rotation speed N is the maximum rotation speed NMA.
When X is exceeded, the routine jumps from step 726 to step 734, and the fuel pump 24 is turned off. Maximum rotation speed NM
If it does not exceed AX, the maximum value of the pressure P is obtained in step 728. This is steps 506-512 in FIG.
Is the same operation as the flow for obtaining PMAX. When the pressure P is higher than PMAX, the routine jumps to step 734 to turn off the fuel pump 24. If not, the fuel pump 24 is turned on. It should be noted that there is no problem even if data is set to the input / output circuit 108 so as to be further turned on when it is already on. Thereafter, in step 736, the energization start timing of the primary current of the ignition coil 44 is calculated, the jump is made to the end report (EXIT) program, and the level 1 program is ended.

【0105】図24はレベル3プログラムであり、図2
1で使用される補正量θCが求められる。インテークマ
ニホールド圧力Pがターボチャージャ4が動作を開始し
た時の圧力より大きくなった場合、ターボチャージャ4
の動作に伴い点火時期がシフトされる。このシフト値θ
Cは図25の特性より求められる。つまり吸気温度TA
をパラメータとし、吸気温が低い場合点火時期が進み側
にあり、吸気温が上るに従って遅れ側に移る。従って補
正値θCは吸気温TAが高くなるにつれて負の大きな値
となる。
FIG. 24 shows a level 3 program.
The correction amount θC used in 1 is obtained. If the intake manifold pressure P becomes greater than the pressure at which the turbocharger 4 started operating, the turbocharger 4
The ignition timing is shifted in accordance with the operation of. This shift value θ
C is obtained from the characteristics shown in FIG. That is, the intake air temperature TA
Is used as a parameter, the ignition timing is on the advance side when the intake air temperature is low, and the ignition timing shifts to the delay side as the intake air temperature rises. Therefore, the correction value θC becomes a large negative value as the intake air temperature TA increases.

【0106】図26は図2の制御回路EGRC168およびISC
C164詳細図である。図2でISCDとEGRDの各レジ
スタはパルス幅を表わすもので、レジスタ802に相当
する。またISCPとEGRPに相当するレジスタが8
06である。
FIG. 26 shows the control circuits EGRC168 and ISC of FIG.
It is a C164 detailed drawing. In FIG. 2, each register of ISCD and EGRD represents a pulse width and corresponds to the register 802. There are 8 registers corresponding to ISCP and EGRP.
It is 06.

【0107】今、モード(MODE)レジスタ172の
ビットb0に“H”がセットされているとする。このた
めANDゲート166(図2)と816が共に動作状態
である。カウンタ回路が構成されるタイマ804はAN
Dゲート816からクロックを計数する。この計数値B
はレジスタ806の値とコンパレータ810で比較さ
れ、計数値Bの値がレジスタ806の値C以上となると
タイマ804はクリアされる。従ってタイマ804はレ
ジスタ806の値Cで定まる周期で計数をくり返す。
Now, it is assumed that "H" is set in the bit b0 of the mode (MODE) register 172. Therefore, AND gates 166 (FIG. 2) and 816 are both in the operating state. The timer 804 including the counter circuit is an AN
Count clocks from D-gate 816. This count value B
Is compared with the value of the register 806 by the comparator 810, and the timer 804 is cleared when the value of the count value B exceeds the value C of the register 806. Therefore, the timer 804 repeats counting at a cycle determined by the value C of the register 806.

【0108】またタイマ804の計数値はレジスタ80
2の値とコンパレータ808と比較される。このときレ
ジスタ802の値Aがタイマ804の計数値Bより大な
る条件でフリップフロップ812をセットし、値Bが値
A以上となる条件でリセットされる。このためフリップ
フロップ812のセット時間はレジスタ802の値Aに
より定まる。この値Aを大きくすることによりフリップ
フロップ812のセット時間は長くなる。
The count value of the timer 804 is stored in the register 80.
The value of 2 is compared with the comparator 808. At this time, the flip-flop 812 is set under the condition that the value A of the register 802 is larger than the count value B of the timer 804, and is reset under the condition that the value B is the value A or more. Therefore, the set time of the flip-flop 812 is determined by the value A of the register 802. By increasing the value A, the set time of the flip-flop 812 becomes longer.

【0109】さらに上で述べた如く、タイマ804の計
数はレジスタ806のセット値に応じた周波数で繰返さ
れるので、フリップフロップ812のセット出力はレジ
スタ806のセット値により繰返し周期に応じ、繰返し
出力される。MODEレジスタ172(図2)のb0ビ
ットが“H”レベルでANDゲート166を介して出力
される。
Further, as described above, since the count of the timer 804 is repeated at the frequency corresponding to the set value of the register 806, the set output of the flip-flop 812 is repeatedly output according to the repetition period by the set value of the register 806. It The b0 bit of the MODE register 172 (FIG. 2) is output at the “H” level via the AND gate 166.

【0110】MODEレジスタ172のb0を“L”に
するとANDゲート166と816はOFFし、フリッ
プフロップ812の出力は停止され、同時にタイマ80
4への入力も停止される。
When b0 of the MODE register 172 is set to "L", the AND gates 166 and 816 are turned off, the output of the flip-flop 812 is stopped, and at the same time, the timer 80
Input to 4 is also stopped.

【0111】従って図2に示すMODEレジスタ172
へCPUから制御データをセットすることにより、図2
6の回路動作のスタートあるいは停止を制御できる。図
26はMODEレジスタのb0によりANDゲート16
6と816が制御される例であるがb0は図2のISCC16
4 を制御するビットである。図2のEGRC168 も図26と
同様の構成であるが、ISCC164 の動作スタートストップ
はMODEレジスタのb0ビットで制御され、EGRC168
はb2ビットで制御される。
Therefore, the MODE register 172 shown in FIG.
By setting the control data from the CPU to
The start or stop of the circuit operation of 6 can be controlled. FIG. 26 shows the AND gate 16 by the b0 of the MODE register.
6 and 816 are controlled, but b0 is ISCC16 in FIG.
It is a bit that controls 4. The EGRC168 of FIG. 2 has the same configuration as that of FIG. 26, but the operation start / stop of the ISCC164 is controlled by the b0 bit of the MODE register.
Is controlled by the b2 bit.

【0112】図27は点火を制御する出力手段である図
2IGNC156 の詳細図である。CPUより点火コイル44
の一次電流通電開始点を制御するデータがDWLレジス
タへセットされ、点火時期を表わすデータがADVレジ
スタへセットされる。今DWLレジスタのセット値をA、
ADVレジスタのセット値をCとする。
FIG. 27 is a detailed view of the IGNC 156 of FIG. 2 which is an output means for controlling ignition. Ignition coil 44 from CPU
Data for controlling the starting point of the primary current conduction is set in the DWL register, and data representing the ignition timing is set in the ADV register. Now, set the DWL register set value to A,
Let C be the set value of the ADV register.

【0113】今、MODEレジスタ172のb1ビット
が“H”であると、ANDゲート158と860は信号
を伝える状態になっており、POSパルスがANDゲー
ト860を介してカウンタ850へ入力される。このカ
ウンタ850のカウント値はこのため、エンジンクラン
ク角に応じて増大し、基準角を示すREFパルスにより
クリアされる。このカウント値をBとする。カウント値
が小さいときは比較器852のA>Bの出力がORゲー
トを介してフリップフロップ856へ加えられ、フリッ
プフロップ856はリセット状態となる。従ってAND
ゲート158からはパルス出力が出ない。カウンタ85
0のカウント値が大きくなるとDWLレジスタの値Aよ
りカウンタ850のカウント値が大きくなり、ANDゲ
ート864を介してフリップフロップ856はセットさ
れる。このセット出力がANDゲート158を介しさら
に図2のANDゲート160を介して点火装置162に
加えられ、点火装置162の点火コイル44に一次コイ
ル電流が流れる。カウント値がさらに高くなるとコンパ
レータ854のC≦Bの出力よりフリップフロップ85
6は再びOFFする。これによりANDゲート858か
らパルス出力は停止し、点火のためのスパークが生じ
る。
Now, when the b1 bit of the MODE register 172 is "H", the AND gates 158 and 860 are in a state of transmitting a signal, and the POS pulse is input to the counter 850 via the AND gate 860. Therefore, the count value of the counter 850 increases according to the engine crank angle and is cleared by the REF pulse indicating the reference angle. This count value is B. When the count value is small, the output of A> B of the comparator 852 is added to the flip-flop 856 via the OR gate, and the flip-flop 856 is in the reset state. Therefore AND
There is no pulse output from the gate 158. Counter 85
When the count value of 0 becomes large, the count value of the counter 850 becomes larger than the value A of the DWL register, and the flip-flop 856 is set via the AND gate 864. This set output is applied to the ignition device 162 via the AND gate 158 and further via the AND gate 160 of FIG. 2, and a primary coil current flows through the ignition coil 44 of the ignition device 162. When the count value is further increased, the flip-flop 85 is output from the output of C ≦ B of the comparator 854.
6 turns off again. This stops the pulse output from AND gate 858 and causes a spark for ignition.

【0114】図2のDIOの詳細を図28に示す。この
図でDDR192はDIOの入出力ポートDIO0から
DIO7を入力状態とするか出力状態とするかを決定す
るものである。DDRの内“H”がセットされたビット
よりの信号がそれに対応した872〜886のトライス
テートに加えられそのトライステートは導通状態とな
る。これによりDDRの“H”のビットに対応したDO
UTのビットは対応しているトライステートを介して出
力される。一方ラインDIO0〜DIO7の信号はCPU
よりバッファアンプ892〜904を介して自由に読み
取ることができる。トライステート872〜886の内
不導通となっているトライステートに対応したラインの
信号は外部の状態に存在するので、このラインに対して
は外部の状態を読み取ることができる。
Details of the DIO of FIG. 2 are shown in FIG. In this figure, the DDR 192 determines whether the input / output ports DIO0 to DIO7 of the DIO are in the input state or the output state. A signal from a bit in which "H" is set in DDR is added to the corresponding tristates 872 to 886, and the tristate becomes conductive. As a result, the DO corresponding to the "H" bit of DDR
The bits of the UT are output via the corresponding tristate. On the other hand, the signals on lines DIO0 to DIO7 are CPU
Therefore, it can be freely read through the buffer amplifiers 892 to 904. Since the signal of the line corresponding to the tri-state which is non-conductive among the tri-states 872 to 886 exists in the external state, the external state can be read from this line.

【0115】図29は燃料を制御する出力手段である図
2のINJC152 の詳細図であり、クランク角センサよりの
REFパルスはクランク角の上死点前の一定角(例えば
80度とか、90度)の所で生じる。クランク角の上死
点(TDC)とREFの関係を図30のA,Bに示す。
今MODEレジスタ172のb4ビットが“H”となっ
ていると仮定するのでゲート910,912,154
(図2)はONしている。このため、カウンタ904の
カウント値は図30Cに示す如くREFパルス毎にクリ
アされる。レジスタ902の値Aは噴射開始点を決める
値をCPUより受けて保持するレジスタである。レジス
タ902の値Aとカウント値Bは比較器906へセット
され、フリップフロップ908をセットする。
FIG. 29 is a detailed view of the INJC152 of FIG. 2 which is an output means for controlling fuel. The REF pulse from the crank angle sensor is a constant angle before the top dead center of the crank angle (for example, 80 degrees or 90 degrees). ). The relationship between the top dead center (TDC) of the crank angle and REF is shown in A and B of FIG.
Since it is now assumed that the b4 bit of the MODE register 172 is "H", the gates 910, 912, 154
(Fig. 2) is ON. Therefore, the count value of the counter 904 is cleared every REF pulse as shown in FIG. 30C. The value A of the register 902 is a register that receives and holds a value that determines the injection start point from the CPU. The value A and the count value B of the register 902 are set in the comparator 906 and the flip-flop 908 is set.

【0116】フリップフロップ908がセットされると
ANDゲート154よりパルスが送られて噴射弁28へ
パルスが送られる。さらにゲート912が開きカウンタ
よりなるタイマ916はクロックパルスを計数する。I
NJDレジスタ914は図2のINJDレジスタであ
り、このレジスタのセット値Cに対応する時間,弁は開
弁する。すなわちタイマ916のカウント値DがCより
小さい間はフリップフロップ920がセットされている
が、C≦Dの条件でフリップフロップ920がリセット
され、ANDゲート154からの噴射用パルスは停止す
る。
When the flip-flop 908 is set, a pulse is sent from the AND gate 154 and a pulse is sent to the injection valve 28. Further, the gate 912 is opened and the timer 916, which is a counter, counts clock pulses. I
The NJD register 914 is the INJD register of FIG. 2, and the valve is opened for the time corresponding to the set value C of this register. That is, while the count value D of the timer 916 is smaller than C, the flip-flop 920 is set, but the flip-flop 920 is reset under the condition of C ≦ D, and the injection pulse from the AND gate 154 is stopped.

【0117】このようにして燃料噴射の開始点と開弁時
間が制御できる。
In this way, the starting point of fuel injection and the valve opening time can be controlled.

【0118】さらにMODEレジスタ172のb4をゼ
ロ(L)にすることによりゲート154の出力および全ての
動作を停止できる。
Further, the output of the gate 154 and all the operations can be stopped by setting b4 of the MODE register 172 to zero (L).

【0119】[0119]

【発明の効果】以上説明した如く、本発明によれば絞り
弁を迂回する空気量を制御することで回転数の大きい上
げ下げの調整を行うと共にこれに優先して実行点火時期
を制御することで回転数の小さい上げ下げを調整して効
果的に回転数の正確な制御を実行でき、しかも空気量の
制御を行う演算処理に対して点火時期の制御を行う演算
処理を優先して実行させるようにしてコンピュータの占
有負荷をできるだけ均一化して制御精度を確保すること
ができる。
As described above, according to the present invention, by controlling the amount of air that bypasses the throttle valve, the adjustment of the increase and decrease of the rotational speed is large and the execution ignition timing is prioritized. Adjusting the small increase / decrease of the number of revolutions enables effective accurate control of the number of revolutions, and preferentially executes the arithmetic process for controlling the ignition timing over the arithmetic process for controlling the air amount. The control load can be ensured by making the load occupied by the computer as uniform as possible.

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

【図1】エンジン制御システムの全体システム図。FIG. 1 is an overall system diagram of an engine control system.

【図2】図1の制御回路のブロック図。FIG. 2 is a block diagram of a control circuit shown in FIG.

【図3】プログラムシステム図。FIG. 3 is a program system diagram.

【図4】図2のROMのプログラム格納図。FIG. 4 is a program storage diagram of the ROM of FIG.

【図5】図3のイニシャライズ(INTIALIZ)プログラム
204の詳細図。
FIG. 5 is a detailed diagram of the initialization (INTIALIZ) program 204 in FIG.

【図6】図3の監視(MONIT)プログラム206の
詳細図。
FIG. 6 is a detailed diagram of a monitoring (MONIT) program 206 shown in FIG.

【図7】点火時期特性図。FIG. 7 is an ignition timing characteristic diagram.

【図8】燃料供給特性図。FIG. 8 is a fuel supply characteristic diagram.

【図9】エアーバイパス制御の特性図。FIG. 9 is a characteristic diagram of air bypass control.

【図10】図3のバックグランドプログラム208の詳
細図。
10 is a detailed diagram of the background program 208 shown in FIG.

【図11】図3のプログラム226,228,230の
詳細図。
11 is a detailed diagram of programs 226, 228, and 230 shown in FIG.

【図12】図3のプログラム232の詳細図。12 is a detailed diagram of a program 232 in FIG.

【図13】図12のダイナミックリミテーションプログ
ラム(DYNAL)502の詳細図。
13 is a detailed diagram of the dynamic limiting program (DYNAL) 502 of FIG.

【図14】図3のプログラム262の詳細図。14 is a detailed diagram of a program 262 in FIG.

【図15】図11の動作説明図。15 is an explanatory diagram of the operation of FIG.

【図16】図3のプログラム242の詳細図。16 is a detailed diagram of the program 242 of FIG.

【図17】図3のプログラム260の詳細図。17 is a detailed view of the program 260 shown in FIG.

【図18】図12の動作説明図。FIG. 18 is an operation explanatory diagram of FIG. 12;

【図19】図12の動作説明図。FIG. 19 is an operation explanatory diagram of FIG. 12;

【図20】図3のプログラム252の詳細図。20 is a detailed diagram of the program 252 of FIG.

【図21】図3のプログラム254の詳細図。FIG. 21 is a detailed diagram of the program 254 in FIG.

【図22】図21の動作説明図。22 is an explanatory diagram of the operation of FIG. 21.

【図23】点火遅れ補正の特性図。FIG. 23 is a characteristic diagram of ignition delay correction.

【図24】図3のプログラム258の詳細図。FIG. 24 is a detailed view of the program 258 shown in FIG.

【図25】図24の動作説明図。FIG. 25 is an operation explanatory diagram of FIG. 24;

【図26】図2の詳細図。FIG. 26 is a detailed view of FIG.

【図27】図2の制御回路156の詳細図。FIG. 27 is a detailed diagram of the control circuit 156 of FIG.

【図28】図2の制御回路192の詳細図。28 is a detailed diagram of the control circuit 192 of FIG.

【図29】図2の制御回路152の詳細図。29 is a detailed diagram of the control circuit 152 of FIG.

【図30】図29の動作説明図。FIG. 30 is an operation explanatory diagram of FIG. 29;

【符号の説明】[Explanation of symbols]

1…エンジン、2…エアークリーナ、3…インテークマ
ニホールド、4…ターボチャージャ、6…タービン、8
…コンプレッサ、10…スロットルバルブ、12…アク
セルペダル、14…エアーバイパスバルブ、16…吸気
バルブ、20…燃料タンク、22…フィルタ、24…燃
料ポンプ、26…燃圧制御弁、28…噴射弁、30…制
御ユニット、40…バッテリ、42…キースイッチ、4
4…点火コイル、46…ディストリビュータ、50…点
火プラグ、49…ピストン、52…排気管、54…触媒
ユニット、56…マフラ、60…バイパス通路、62…
EGRバルブ、64…スタータモータ、66…スタータ
スイッチ、72…ノックセンサ、74…スロットルセン
サ、76…スロットルスイッチ、78…圧力センサ、8
0…クランク角センサ、82…排気ガスセンサ、102
…CPU、104…ROM、106…RAM、108…入
出力回路、110…バスライン、122…電圧センサ、
124…大気温センサ、126…調整電圧発生器、12
8…スロットル角センサ、130…マルチプレクサ、1
32…アナログディジタル、134,138,192,1
94,802,806,902,914…レジスタ、13
6…アナログディジタル変換回路、140…角度信号処
理回路、142…トップギアスイッチ、152…インジ
ェクタ制御回路、154,158,160,166,17
0,910,912…ANDゲート、156…点火パルス
発生回路、162…点火装置、164…バイパスバルブ
制御回路、168…EGR量制御パルス発生回路、17
2…モードレジスタ、190…ステータレジスタ、19
6…マスクレジスタ、204…イニシャライズプログラ
ム、206…監視プログラム、208…バックグランド
ジョブ、224…割込要因分析プログラム、226…A
DC1終了プログラム、228…ADC2終了プログラ
ム、230…一定時間経過割込(INTV IRQ)処
理プログラム、232…基準角割込処理プログラム(I
NTL IRQ)、242…タスクスケジュールプログ
ラム、252…レベルゼロプログラム、254…レベル
1プログラム、256…レベル2プログラム、258…
レベル3プログラム、262…エンスト処理プログラ
ム、586,812,908,920…フリップフロッ
プ、804,850,904,916…カウンタ、80
8,810,852,854,906,918…コンパ
レータ、872〜886…トライステート回路。
1 ... Engine, 2 ... Air cleaner, 3 ... Intake manifold, 4 ... Turbocharger, 6 ... Turbine, 8
... compressor, 10 ... throttle valve, 12 ... accelerator pedal, 14 ... air bypass valve, 16 ... intake valve, 20 ... fuel tank, 22 ... filter, 24 ... fuel pump, 26 ... fuel pressure control valve, 28 ... injection valve, 30 ... control unit, 40 ... battery, 42 ... key switch, 4
4 ... Ignition coil, 46 ... Distributor, 50 ... Spark plug, 49 ... Piston, 52 ... Exhaust pipe, 54 ... Catalyst unit, 56 ... Muffler, 60 ... Bypass passage, 62 ...
EGR valve, 64 ... Starter motor, 66 ... Starter switch, 72 ... Knock sensor, 74 ... Throttle sensor, 76 ... Throttle switch, 78 ... Pressure sensor, 8
0 ... Crank angle sensor, 82 ... Exhaust gas sensor, 102
... CPU, 104 ... ROM, 106 ... RAM, 108 ... Input / output circuit, 110 ... Bus line, 122 ... Voltage sensor,
124 ... Atmospheric temperature sensor 126 ... Adjustment voltage generator 12
8 ... Throttle angle sensor, 130 ... Multiplexer, 1
32 ... Analog digital, 134, 138, 192, 1
94, 802, 806, 902, 914 ... Register, 13
6 ... Analog-digital conversion circuit, 140 ... Angle signal processing circuit, 142 ... Top gear switch, 152 ... Injector control circuit, 154, 158, 160, 166, 17
AND gate, 156 ... Ignition pulse generation circuit, 162 ... Ignition device, 164 ... Bypass valve control circuit, 168 ... EGR amount control pulse generation circuit, 17
2 ... Mode register, 190 ... Stator register, 19
6 ... Mask register, 204 ... Initialization program, 206 ... Monitoring program, 208 ... Background job, 224 ... Interrupt factor analysis program, 226 ... A
DC1 end program, 228 ... ADC2 end program, 230 ... Certain time elapsed interrupt (INTV IRQ) processing program, 232 ... Reference angle interrupt processing program (I
NTL IRQ), 242 ... Task schedule program, 252 ... Level zero program, 254 ... Level 1 program, 256 ... Level 2 program, 258 ...
Level 3 program, 262 ... stalling processing program, 586, 812, 908, 920 ... Flip-flop, 804, 850, 904, 916 ... Counter, 80
8, 810, 852, 854, 906, 918 ... Comparator, 872-886 ... Tristate circuit.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】(a).エンジンの実際アイドル回転数を
検出する回転数検出手段(80); (b).前記エンジンのアイドル状態を検出するアイド
ル状態検出手段(76,410,710); (c).前記アイドル状態検出手段によって前記エンジ
ンがアイドル状態にあると判別されたときに空気制御手
段(14)を制御してエンジンの回転数を制御するため
の空気制御デ−タを発生する空気制御演算処理(41
4)と、前記空気演算処理より実行優先度が高く設定さ
れ、点火手段(162)を制御してエンジンの回転数を制
御するための点火時期制御デ−タを発生する点火時期制
御演算処理(712〜716)とを実行するセントラル
プロセッシングユニット(102)、リ−ドオンリメモ
リ(104)及びランダムアクセスメモリ(106)よ
りなる演算手段(309); (d).前記演算手段からの前記制御デ−タを前気空気
制御手段及び点火手段の制御信号に変換するデ−タ変換
手段(156,164); (e).前記デ−タ変換手段の出力にもとづいて前記空
気制御手段及び点火手段を制御する出力手段とよりなる
内燃機関のトルク制御装置。
1. (a). Rotation speed detection means (80) for detecting the actual idle speed of the engine; (b). Idle state detection means (76, 410, 710) for detecting the idle state of the engine; (c). Air control arithmetic processing for generating air control data for controlling the air control means (14) to control the engine speed when the idle state detection means determines that the engine is in the idle state. (41
4), the execution priority is set higher than that of the air calculation process, and the ignition timing control calculation process for generating the ignition timing control data for controlling the engine speed by controlling the ignition means (162) ( 712 to 716), a processing unit (309) including a central processing unit (102), a read only memory (104) and a random access memory (106); (d). Data conversion means (156, 164) for converting the control data from the calculation means into control signals for the front air control means and the ignition means (e). A torque control device for an internal combustion engine, comprising: output means for controlling the air control means and the ignition means based on the output of the data conversion means.
JP4249930A 1992-09-18 1992-09-18 Torque control device for internal combustion engine Expired - Lifetime JPH0751932B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4249930A JPH0751932B2 (en) 1992-09-18 1992-09-18 Torque control device for internal combustion engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4249930A JPH0751932B2 (en) 1992-09-18 1992-09-18 Torque control device for internal combustion engine

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP8292180A Division JPS578349A (en) 1980-06-20 1980-06-20 Control method of ignition timing in engine

Publications (2)

Publication Number Publication Date
JPH05321802A true JPH05321802A (en) 1993-12-07
JPH0751932B2 JPH0751932B2 (en) 1995-06-05

Family

ID=17200295

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4249930A Expired - Lifetime JPH0751932B2 (en) 1992-09-18 1992-09-18 Torque control device for internal combustion engine

Country Status (1)

Country Link
JP (1) JPH0751932B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011512589A (en) * 2008-02-14 2011-04-21 インターナショナル・ビジネス・マシーンズ・コーポレーション Computer program, apparatus, and method for providing indirect data addressing for control blocks in a host computer system configured for communication with a control unit (control blocks in a channel subsystem of an input / output processing system) Indirect data addressing for data)
CN115573825A (en) * 2022-10-09 2023-01-06 一汽解放汽车有限公司 Transient response control method and device for engine and electronic equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56165972U (en) * 1980-05-10 1981-12-09

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56165972U (en) * 1980-05-10 1981-12-09

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011512589A (en) * 2008-02-14 2011-04-21 インターナショナル・ビジネス・マシーンズ・コーポレーション Computer program, apparatus, and method for providing indirect data addressing for control blocks in a host computer system configured for communication with a control unit (control blocks in a channel subsystem of an input / output processing system) Indirect data addressing for data)
CN115573825A (en) * 2022-10-09 2023-01-06 一汽解放汽车有限公司 Transient response control method and device for engine and electronic equipment
CN115573825B (en) * 2022-10-09 2024-06-04 一汽解放汽车有限公司 Transient response control method and device of engine and electronic equipment

Also Published As

Publication number Publication date
JPH0751932B2 (en) 1995-06-05

Similar Documents

Publication Publication Date Title
US4450815A (en) Internal combustion engine control apparatus
US4354238A (en) Method of controlling air-fuel ratio of internal combustion engine so as to effectively maintain the air fuel ratio at a desired air-fuel ratio of λ=1
JPS6127571B2 (en)
JPH0250303B2 (en)
JPS6256345B2 (en)
JPH0370106B2 (en)
JPS6256339B2 (en)
JPS6352225B2 (en)
JPH0375740B2 (en)
JP3326945B2 (en) Control device for internal combustion engine
JPS6313011B2 (en)
JP3191676B2 (en) Ignition timing control device for internal combustion engine
JPS632027B2 (en)
EP0030114B1 (en) Method for starting an operation of an internal combustion engine and apparatus therefor
EP0106366B1 (en) Control method for internal combustion engines
US4524739A (en) Engine control method
JPH05321802A (en) Torque controller for internal combustion engine
JPS61155641A (en) Fuel injection amount control device
JPH0138176B2 (en)
US4522178A (en) Method of fuel control in engine
JP3709595B2 (en) In-cylinder direct injection spark ignition engine controller
JP2749138B2 (en) Combustion abnormality detection device for internal combustion engine
JP2605038B2 (en) Method for controlling an electric device of an internal combustion engine
JPS6035148A (en) Air-fuel ratio control device
JPH03185247A (en) Fuel control device for engine