JPS5974337A - Fuel injector - Google Patents

Fuel injector

Info

Publication number
JPS5974337A
JPS5974337A JP18290282A JP18290282A JPS5974337A JP S5974337 A JPS5974337 A JP S5974337A JP 18290282 A JP18290282 A JP 18290282A JP 18290282 A JP18290282 A JP 18290282A JP S5974337 A JPS5974337 A JP S5974337A
Authority
JP
Japan
Prior art keywords
task
level
acceleration
engine
interrupt
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP18290282A
Other languages
Japanese (ja)
Inventor
Mineo Kashiwatani
峰雄 柏谷
Kiyomi Morita
清美 森田
Masahide Sakamoto
坂本 正英
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 JP18290282A priority Critical patent/JPS5974337A/en
Priority to EP83110424A priority patent/EP0106366B1/en
Priority to DE8383110424T priority patent/DE3376995D1/en
Publication of JPS5974337A publication Critical patent/JPS5974337A/en
Pending legal-status Critical Current

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/04Introducing corrections for particular operating conditions
    • F02D41/10Introducing corrections for particular operating conditions for acceleration
    • F02D41/105Introducing corrections for particular operating conditions for acceleration using asynchronous injection

Abstract

PURPOSE:To perform the optimal control of an engine at its acceleration, by altering the compensated quantity of injected fuel depending on four levels of acceleration, in an automobile fuel injector employing a microcomputer. CONSTITUTION:The degree of opening of a throttle valve is sampled for every prescribed time to detect the acceleration of an engine from the sampled values. A compensated quantity of fuel is additionally injected depending on each of four levels of the acceleration. The difference DELTATH between the preceding and succeeding degrees of opening of the throttle valve is determined for classification to the four levels. For instance, the level ''1'' corresponds to the opening degree of 1-2.5, the level ''2'' the opening degree of 2.5-5, the level ''3'' the opening degree of 5-7, and the level ''4'' the opening degree of 7 or more. As a result, the engine is controlled in an optimal manner at its acceleration.

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はエンジンの制御装置、さらに具体的にはマイク
ロコンピュータを使用した自動車のエンジン制御装置に
係シ、特に、スロットルバルブの開度によって検出する
加速状態に応じて燃料量を補正して噴射する燃料噴射装
置に関する。
[Detailed Description of the Invention] [Field of Application of the Invention] The present invention relates to an engine control device, and more specifically to an automobile engine control device using a microcomputer. The present invention relates to a fuel injection device that corrects and injects the amount of fuel according to an acceleration state.

〔従来技術〕[Prior art]

最近ではエンジンの制御機能を向上させる目的でマイク
ロコンピュータで使用したエンジンの総合的制御が行わ
れつつある。
Recently, comprehensive control of engines using microcomputers has been implemented in order to improve engine control functions.

一方、自動車の車種および用途に応じてエンジンに必要
な制御機能は様々であり、それゆえマイクロコンピユー
タラ使用したエンジン制御システムではエンジン制御装
置を操作するソフトウェアとして車種および用途に応じ
て汎用性ある、すなわら各種の制御機能の修正、変更お
よび追加が可能であるものがコスト面あるいは制御性の
向上といった観点から要請される。
On the other hand, the control functions required for the engine vary depending on the vehicle type and purpose, and therefore, in an engine control system using a microcomputer, the software that operates the engine control device is versatile depending on the vehicle type and purpose. In other words, a device that allows various control functions to be modified, changed, and added is required from the viewpoint of cost or improved controllability.

従来、内炉機関が吸入する空気量は、吸気マニフオルド
圧から間接的に、あるいは直接空気流量中 を検出して吸気行程ρトータル量を求める方法がとられ
ていた。前者は間接的方法であるため精度が悪く、機関
の機差や劣化の影響を受け、寸だ応答性が悪いという欠
点を有しておシ、後者は精度が高く(読み値±1%)、
ダイナミック−レンジが広い(1:50)流量センサを
必要とし、コスト高となる欠点を有していた。流量セン
サとして、いわゆる熱線式流量センサを用いると低コス
ト化が可能であり、またその出力特性の非線型性は相対
誤差を均一化して広いダイナミック・レンジを許容する
特長があシ望ましい。
Conventionally, the amount of air taken into the internal combustion engine has been determined by indirectly detecting the air flow rate from the intake manifold pressure or by directly detecting the air flow rate to determine the total amount of air in the intake stroke ρ. The former method has poor accuracy because it is an indirect method, and has the disadvantage of being affected by machine differences and deterioration of the engine, resulting in extremely poor response, whereas the latter method is highly accurate (reading value ±1%). ,
This method requires a flow sensor with a wide dynamic range (1:50) and has the drawback of high cost. If a so-called hot-wire flow sensor is used as the flow sensor, it is possible to reduce the cost, and it is desirable that the non-linearity of the output characteristic equalizes relative errors and allows a wide dynamic range.

ところがエンジン吸入空気流量は、一定ではなく、脈動
を有しておシ、流部センサからの出力信号は吸入空気流
に対し非線型関係を有し、応答する出力信号から吸入行
程の空気流量を瞬時空気流量の積算の形で求める必要が
あシ、この積算をするには複雑な演算処理が必要である
。すなわち、第1図に示すホットワイヤ出力電圧Vは、
質量流量をqムとすると、 と求1シ、(1)式はさらに、 v2= C,+ C2玉量”−(2) となる。いま、エンジン回転数N−0、質量流量q^二
〇のときのホットワイヤ出力′酸圧VをV−voとする
と、(2)式は、 v、F=C8・・・・・・・・・ (3〕となる。した
がって、(2)式、(3)式より、v2=vl+C1戸
l ・・・・・・・・曲(4)QA=   (v2−v
7)2−・−・曲(5)i と、瞬時瞬時の質量流量qAが(5)式によって求めら
れる。したがって、1吸気行程間の平均空気流量Q、は
、次のようになる。
However, the engine intake air flow rate is not constant but pulsates, and the output signal from the flow sensor has a nonlinear relationship with the intake air flow, and the air flow rate during the intake stroke can be determined from the responsive output signal. It is necessary to calculate the instantaneous air flow rate in the form of integration, and this integration requires complex arithmetic processing. That is, the hot wire output voltage V shown in FIG.
Letting the mass flow rate be q, then equation (1) becomes v2 = C, + C2 ball amount''-(2).Now, the engine rotation speed N-0 and the mass flow rate q^2 If the hot wire output 'acid pressure V at the time of 〇 is V-vo, the equation (2) becomes v, F=C8... (3). Therefore, the equation (2) , From equation (3), v2=vl+C1housel... Song (4) QA= (v2-v
7) 2--...Track (5)i and the instantaneous mass flow rate qA are determined by equation (5). Therefore, the average air flow rate Q during one intake stroke is as follows.

また、1吸気行程当たりの溶料噴射量Q、は、Nをエン
ジン回転数、Kを定数とすると、したがって、QAを求
めることにより1回転当りの燃料噴射量Q、が回転数に
よって決定される訳である。
Furthermore, the amount of solvent injection per intake stroke Q is determined by the engine speed, where N is the engine rotational speed and K is a constant. Therefore, by finding QA, the fuel injection amount Q per rotation is determined by the rotational speed. This is the translation.

このようにして、基本となる燃料噴射量Q、が求まるが
、エンジンを加速する場合、基本燃料噴射量Q、だけで
加速しようとすると、QAの演算遅れ等によシ加速がス
ムーズに行なえない。そこで、QAの取込変化量によっ
て加速状態を検出して、基本燃料噴射量を補正すること
が行われている。しかし、この吸入空気流量QAは、前
述の如く、脈動があるため、力ロ速状態の検出を誤検出
することがある。そこで、スロットルバルブの開度を検
出して加速状態の検出が行われている。すなわら、スロ
ットル開度を10m5I3C毎にサンプリングして10
m5ec毎に現在値と39m5f30前の取込値との差
を検出し、加速状態が否かを検出している。
In this way, the basic fuel injection amount Q is determined, but when accelerating the engine, if you try to accelerate with only the basic fuel injection amount Q, the acceleration will not be smooth due to the QA calculation delay etc. . Therefore, the basic fuel injection amount is corrected by detecting the acceleration state based on the amount of change in QA intake. However, as described above, this intake air flow rate QA has pulsations, so the detection of the low speed state may be erroneously detected. Therefore, the acceleration state is detected by detecting the opening degree of the throttle valve. In other words, the throttle opening is sampled every 10m5I3C and 10
The difference between the current value and the captured value 39m5f30 ago is detected every m5ec, and whether or not there is an acceleration state is detected.

この加速状態によって燃料を補正する訳であるが、従来
、加速の間一定量補正しているため、燃料出遅れ分ンー
ンになり、加速後半はリッチになるという欠点を有して
いる。
The fuel is corrected according to this acceleration state, but conventionally, since the fuel is corrected by a fixed amount during acceleration, it has the disadvantage that the fuel becomes dull due to the fuel delay and becomes rich in the latter half of acceleration.

また、従来の加速時、特に、減速時又はアイドル時から
の加速時においては、減速時又はアイドル時はインテー
クマニホルドが乾いており、加速のための補正増量があ
ってもインテークマニホールドをぬらす程度で、充分補
正効果があがらないという欠点を有している。
In addition, during conventional acceleration, especially during deceleration or acceleration from idling, the intake manifold is dry during deceleration or idling, and even if there is a correction increase for acceleration, the intake manifold will only get wet. However, it has the disadvantage that the correction effect is not sufficiently improved.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、加速時に最適なエンジン制御を行なう
ことのできる燃料噴射装置を提供することにある。
An object of the present invention is to provide a fuel injection device that can perform optimal engine control during acceleration.

〔発明の概要〕[Summary of the invention]

本発明は、一定時間毎にスロットルバルブの開度をサン
プリングして、該サンプリング値より刀口速状態を検出
し、4つのレベルに応じた補正量を追加噴射することに
よシ加速時に最適なエンジン制御を行なおうというもの
である。
The present invention samples the opening degree of the throttle valve at regular intervals, detects the throttle speed state from the sampled value, and additionally injects correction amounts according to four levels, thereby optimizing the engine during acceleration. The idea is to exercise control.

〔発明の実施例〕[Embodiments of the invention]

以下、本発明の実施例について説明する。 Examples of the present invention will be described below.

第2図には、エンジン系統全体の制御装置が示されてい
る。
FIG. 2 shows a control device for the entire engine system.

図において、吸入空気はエアクリーナ2、スロットルチ
ャンバ4、吸気管6を通り、シリンダ8へ供給される。
In the figure, intake air passes through an air cleaner 2, a throttle chamber 4, and an intake pipe 6, and is supplied to a cylinder 8.

シリンダ8で燃焼したガスは、シリンダ8から排気管1
0を通シ、大気中へ排出される。
The gas burned in the cylinder 8 is transferred from the cylinder 8 to the exhaust pipe 1.
0 and is emitted into the atmosphere.

スロットルチャンバ4には、燃料を噴射するためのイン
ジェクタ12が設けられており、このインジェクタ12
から噴出した燃料はスロットルチャンバ4の空気通路内
で霧化され、吸入空気と混合して混合気を形成し、この
混合気は吸気管6を通って、吸気弁20の開弁により、
シリンダ8の燃焼室へ供給される。
The throttle chamber 4 is provided with an injector 12 for injecting fuel.
The fuel ejected from the throttle chamber 4 is atomized in the air passage of the throttle chamber 4 and mixed with the intake air to form a mixture, and this mixture passes through the intake pipe 6 and when the intake valve 20 is opened.
It is supplied to the combustion chamber of cylinder 8.

インジェクタ12の出口近傍には絞り弁14゜16が設
けられている。絞り弁14は、アクセルペダルと機械的
に連通ずるように構成され、運転者によシ駆動される。
Throttle valves 14 and 16 are provided near the outlet of the injector 12. The throttle valve 14 is configured to be in mechanical communication with the accelerator pedal and is actuated by the driver.

一方、絞シ弁16はダイヤフラム18によシ駆動される
ように配置され、空気流量が小の領域で全閉状態となり
、空気流量が増大するにつれてダイヤフラム18への負
圧が増大することによシ絞り弁16は開き始め、吸入抵
抗の増大を抑止する。
On the other hand, the throttle valve 16 is arranged to be driven by the diaphragm 18, and is fully closed when the air flow rate is small, and as the air flow rate increases, the negative pressure on the diaphragm 18 increases. The throttle valve 16 begins to open, suppressing an increase in suction resistance.

スロットルチャンバ4の絞り弁14.1617)上流に
は空気通路22が設けられ、この空気通路22には熱式
空気流量計を構成する電気的発熱体24が配設され、空
気流速と発熱体の伝熱量との関係から定まる空気流速に
応じて変化する電気信号が取り出される。発熱体24は
空気通路22内に設けられているので、シリンダ8のバ
ツクファイア時に生じる高温ガスから保護されると共に
、吸入空気中のごみなどによって汚染されることからも
保護される。この空気通路22の出口はベンチュリの最
狭部近傍に開口され、その入口はべ/チュリの上流側に
開口されている。
An air passage 22 is provided upstream of the throttle valve 14.1617) of the throttle chamber 4, and an electric heating element 24 constituting a thermal air flowmeter is disposed in this air passage 22, and the air flow rate and the heating element are adjusted. An electrical signal is extracted that changes depending on the air flow velocity, which is determined from the relationship with the amount of heat transfer. Since the heating element 24 is provided within the air passage 22, it is protected from high-temperature gas generated when the cylinder 8 backfires, and is also protected from being contaminated by dust in the intake air. The outlet of this air passage 22 is opened near the narrowest part of the venturi, and the inlet thereof is opened on the upstream side of the venturi.

また、この絞り弁14.16には、第2図には図示され
ていないが、絞り弁14.16の開度を検出するスロッ
トル角センサが設けられており、このスロットル角セン
サからの検出信号が後述する第6図図示スロットル角セ
ンサ116から取り込まれ、第1のアナログ春ディジタ
ル・コンバータのマルチプレクサ120に入力される。
Although not shown in FIG. 2, this throttle valve 14.16 is provided with a throttle angle sensor that detects the opening degree of the throttle valve 14.16, and a detection signal from this throttle angle sensor is provided. is taken from a throttle angle sensor 116 shown in FIG.

インジェクタ12に供給される燃料は、燃料タンク30
から、フューエルボン7’32、ツユ−エンダンパ34
及びフィルタ36を介して燃圧レギュレータ38へ供給
される。一方、燃圧レギュレータ38からはインジェク
タ12ヘパイブ40を介して加圧燃料が供給され、その
インジェクタ12から燃料が噴射される吸気管6の圧力
と上記インジェクタ12への燃量圧の差が常に一定にな
るように、燃圧レギュレータ38から燃料タンク30ヘ
リターンパイプ42を介して燃料が戻されるようになっ
ている。
The fuel supplied to the injector 12 is supplied to the fuel tank 30
From, Fuel Bon 7'32, Tsuyuendampa 34
and is supplied to the fuel pressure regulator 38 via the filter 36. On the other hand, pressurized fuel is supplied from the fuel pressure regulator 38 to the injector 12 via a pipe 40, and the difference between the pressure in the intake pipe 6 through which fuel is injected from the injector 12 and the fuel amount pressure to the injector 12 is always constant. As such, fuel is returned from the fuel pressure regulator 38 to the fuel tank 30 via the return pipe 42.

吸気弁20から吸入された混合気はピストン50により
圧縮され、点火プラグ52によるスパークによシ燃焼し
、この燃焼は運動エネルギに変換される。シリンダ8は
冷却水54により冷却され、この冷却水の温度は水温セ
ンサ56によシ計測され、この計測値はエンジン温度と
して利用される。点火プラグ52には点火コイル58よ
シ点火タイミングに合わせて高電圧が供給される。
The air-fuel mixture taken in from the intake valve 20 is compressed by the piston 50 and combusted by a spark from the ignition plug 52, and this combustion is converted into kinetic energy. The cylinder 8 is cooled by cooling water 54, and the temperature of this cooling water is measured by a water temperature sensor 56, and this measured value is used as the engine temperature. A high voltage is supplied to the ignition plug 52 in accordance with the ignition timing of the ignition coil 58.

また、図示しないクランク軸にはエンジンの回(9] 転に応じて基準クランク色毎におよび一定角度(例えば
0.5度)毎に基準角信号およびポジション信号を出す
クランク角センサが設けられている。
In addition, a crank angle sensor (not shown) is provided on the crankshaft, which outputs a reference angle signal and a position signal for each reference crank color and at every fixed angle (for example, 0.5 degrees) according to the revolution (9) of the engine. There is.

このクランク角センサの出力、水温センサ56の出力5
6A及び発熱体24からの電気信号はマイクロコンピュ
ータなどからなる制御回路64に入力され、制御回路6
4で演算処理され、この制御回路64の出力によってイ
ンジェクタ12及び点火コイル58が駆動される。
Output of this crank angle sensor, output 5 of water temperature sensor 56
6A and the electric signals from the heating element 24 are input to a control circuit 64 consisting of a microcomputer, etc.
4, and the injector 12 and ignition coil 58 are driven by the output of the control circuit 64.

以上の構成に基づき制御されるエンジン系統において、
スロットルチャンバ4にはスロットルの絞り弁16を跨
いで吸気管6に連通ずるバイパス26が設けられ、この
バイパス26には開閉制御されるバイパスバルブ62が
設けられている。このバイパスバルブ62の駆動部には
、前記制御回路64の制御入力が供給され、開閉制御さ
れるようになっている。
In the engine system controlled based on the above configuration,
The throttle chamber 4 is provided with a bypass 26 that communicates with the intake pipe 6 across the throttle valve 16, and this bypass 26 is provided with a bypass valve 62 that is controlled to open and close. A control input from the control circuit 64 is supplied to the driving section of the bypass valve 62, so that opening and closing of the bypass valve 62 is controlled.

このバイパスバルブ62は絞り弁16を迂回して設けら
れたバイパス26に臨ませられ、パルス電流によって開
閉制御がなされる。このバイパス(10) バルブ62は弁のリフト量によシバイパス26の断面積
を変更するもので、このリフト量は制御回路64の出力
によって駆動系が駆動され制御される。即ち、制御回路
64においては駆動系の制御のため開閉周期信号が発生
され、駆動系はこの開閉周期信号によってバイパスパル
プ62のリフト量を調節するための制御信号をバイパス
パルプ62の駆動部に付与するものである。
This bypass valve 62 faces the bypass 26 provided by bypassing the throttle valve 16, and is controlled to open and close by pulse current. This bypass (10) valve 62 changes the cross-sectional area of the bypass (10) according to the lift amount of the valve, and this lift amount is controlled by driving the drive system by the output of the control circuit 64. That is, the control circuit 64 generates an opening/closing cycle signal to control the drive system, and the drive system applies a control signal to the drive section of the bypass pulp 62 to adjust the lift amount of the bypass pulp 62 based on the opening/closing cycle signal. It is something to do.

第3図、第2図の点火装置の説明図であり、増幅器68
を介してパワー・トランジスタ72ヘパルス電流が供給
され、この電流によりトランジスタ72はONする。こ
れによシバッテリ66よシ点火コイル68へ一次コイル
電流が流れる。このパルス電流の立ち下がりでトランジ
スタ74は遮断状態となシ、点火コイル58の2次コイ
ルに高′屯圧を発生する。
FIG. 3 is an explanatory diagram of the ignition device of FIG. 2, and the amplifier 68
A pulse current is supplied to the power transistor 72 through the power transistor 72, and this current turns the transistor 72 ON. This causes a primary coil current to flow from the battery 66 to the ignition coil 68. At the fall of this pulse current, the transistor 74 is turned off and a high voltage is generated in the secondary coil of the ignition coil 58.

この高電圧は配電器70を介してエンジンの各シリンダ
にある点火プラグ52のそれぞれにエンジン回転に同期
して高電圧を配電する。
This high voltage is distributed via the power distributor 70 to each of the spark plugs 52 in each cylinder of the engine in synchronization with the engine rotation.

第4図は排気ガス環流(以下EGR,と記す)シ(11
) ステムを説明するためのもので、負圧源80の一定負圧
が制圧弁84を介して制御弁86へ加えている。制圧弁
84はトランジスタ9oに加えられ繰返シパルスのON
デユーティ比率に応じ、負圧源の一定負圧を大気88へ
開放に対する比率を制御し、制御弁86への負圧の印ヵ
ロ状態を制御する。
Figure 4 shows the exhaust gas recirculation (hereinafter referred to as EGR) system (11
) This is for explaining the stem, in which a constant negative pressure from a negative pressure source 80 is applied to a control valve 86 via a pressure control valve 84. The pressure control valve 84 is applied to the transistor 9o to repeatedly turn on the sipulus.
According to the duty ratio, the ratio of the constant negative pressure of the negative pressure source to the atmosphere 88 is controlled, and the application state of the negative pressure to the control valve 86 is controlled.

従って制御弁86へ刀n tられる負圧はトランジスタ
90のONデユーティ比率で定捷る。この定圧弁84の
制御負圧により排気管1oがら吸気管6へのEGR,−
JR′が制御される。
Therefore, the negative pressure applied to the control valve 86 is constant at the ON duty ratio of the transistor 90. Due to the controlled negative pressure of the constant pressure valve 84, the EGR from the exhaust pipe 1o to the intake pipe 6, -
JR' is controlled.

第5図は制御システムの全体構成図である。FIG. 5 is an overall configuration diagram of the control system.

CPU102とリード・オンリ・メモリ104 (以下
ROMと記す)とランダム・アクセス・メモリ106(
以下RAMと記す)と人出カ回路108とから構成され
ている上記CPTJ102はFl、 OM2O3内に記
憶された各種のプログラムにより、入出力回路108か
らの入カテータを演算し、その演算結果を再ひ入出力回
路108へ戻す。これらの演算に必要な中間的な配憶は
I−1,AM106を使用する。CPUI 02 、 
ROMI 04 、 R,AM106、(12) 入出力回路108間の各種データのやり取りはデータ・
バスとコントロール−バスとアドレス−バスからなるパ
スライン110によって行われる。
A CPU 102, a read-only memory 104 (hereinafter referred to as ROM), and a random access memory 106 (
The CPTJ 102, which is composed of a RAM (hereinafter referred to as RAM) and a person output circuit 108, calculates the input voltage from the input/output circuit 108 using various programs stored in Fl and OM2O3, and replays the calculation results. The signal is returned to the input/output circuit 108. Intermediate storage required for these operations uses I-1, AM 106. CPUI 02,
ROMI 04, R, AM106, (12) Exchange of various data between the input/output circuit 108 is performed by data/
This is done by a pass line 110 consisting of a bus, a control bus, and an address bus.

入出力回路108には第1のアナログ・ディジタル・コ
ンバータ(以下ADCIと記す)と第2のアナログ・デ
ィジタル・コンバータ(以下AI)C2と記す)と角度
信号処理回路126と1ピツト情報を入出力する為のデ
ィスクリート入出力回路(以下DIOと記す)との入力
手段を持つ。
The input/output circuit 108 inputs and outputs 1-pit information to a first analog-to-digital converter (hereinafter referred to as ADCI), a second analog-to-digital converter (hereinafter referred to as AI (hereinafter referred to as C2)), and an angle signal processing circuit 126. It has an input means with a discrete input/output circuit (hereinafter referred to as DIO) for the purpose of doing so.

ADCIにはバッテリ電圧検出センサ132(以下VB
Sと記す)と冷却水温センサ56(以下TWSと記す)
と大気温センサ112(以下TASと記す)と調整電圧
発生器114(以下VR8と記す)とスロットル角セン
サ116(以下θT HSと記す)とλセンサ118(
以下λSと記す)との出力がマルチ・プレクサ12o(
以下MPXと記す)に加えられ、MPX120にょシこ
の内の1つを選択してアナログ・ディジタルe変換回路
122(以下ADCと記す)へ入力する。
The ADCI includes a battery voltage detection sensor 132 (hereinafter referred to as VB).
(hereinafter referred to as TWS) and cooling water temperature sensor 56 (hereinafter referred to as TWS)
, atmospheric temperature sensor 112 (hereinafter referred to as TAS), adjustment voltage generator 114 (hereinafter referred to as VR8), throttle angle sensor 116 (hereinafter referred to as θTHS), and λ sensor 118 (hereinafter referred to as θTHS).
The output from the multiplexer 12o (hereinafter referred to as λS) is
MPX 120 selects one of these and inputs it to an analog-to-digital conversion circuit 122 (hereinafter referred to as ADC).

ADC122の出力であるディジタル値はレジスタ(1
3) 124(以下REGと記す)に保持される。
The digital value that is the output of the ADC 122 is stored in the register (1
3) It is held at 124 (hereinafter referred to as REG).

また流量センサ24(以下AFSと記す)はADC2へ
入力され、アナログ・ディジタル・変換回路128(以
T−’ A D Cと記す)を介してディジタル変換さ
れレジスタ13o(以下)1. E Gと記す)へセッ
トされる。
Further, the flow rate sensor 24 (hereinafter referred to as AFS) is input to the ADC 2, and is digitally converted via an analog-to-digital conversion circuit 128 (hereinafter referred to as T-'ADC) to the register 13o (hereinafter referred to as 1. EG).

角度センサ146(以下ANGSと記す)からは基準ク
ランク角例えば180度クランク角を示す信号(以下R
E Fと記す)と微少角例えば1度クランク角を示す信
号(以下Posと記す)とが出力され、角度信号処理回
路126へ加えられ、ここで波形整形される。
An angle sensor 146 (hereinafter referred to as ANGS) sends a signal indicating a reference crank angle, for example, 180 degrees crank angle (hereinafter referred to as R
EF) and a signal (hereinafter referred to as Pos) indicating a minute angle, for example, a crank angle of 1 degree, are outputted and applied to the angle signal processing circuit 126, where they are waveform-shaped.

D I OKはアイドル・スイッチ148(以下IDL
E−8Wと記す)とトップ・ギヤ働スイッチ150(以
下TOP−8W、!:記す)トスタータ・スイツ−F−
152(以下S’l’、’IT −SWト記す)とが入
力される。
DI OK is the idle switch 148 (hereinafter referred to as IDL)
(hereinafter referred to as TOP-8W) and top gear operation switch 150 (hereinafter referred to as TOP-8W, !) tostarter suite-F-
152 (hereinafter referred to as S'l', 'IT-SW') is input.

次にCPUの演算結果に基づくパルス出方回路および制
御対象について説明する。インジェクタ制御回路(’I
NJCと記す)は演算結果のディジ(14) タル値をパルス出力に変換する回路である。従って燃料
噴射量に相当したパルス幅を有するノ(ルスが、INJ
C134で作られ、ANDゲート136を介してインジ
ェクタ12へ印加される。
Next, a pulse output circuit and a controlled object based on the calculation results of the CPU will be explained. Injector control circuit ('I
NJC) is a circuit that converts the digital (14) value of the calculation result into a pulse output. Therefore, the pulse width corresponding to the fuel injection amount is
C134 and is applied to the injector 12 via an AND gate 136.

点火パルス発生回路138(以下IGNCと記す)は点
火時期をセットするレジスタ(ADVと記す)と点火コ
イルの1次電流通電開始時間をセットするレジスタ(D
WLと記す)とを有し、CPUよすこれらデータがセッ
トされる。セットされたデータに基づいてパルスを発生
し、第3図に詳述した増幅器68へANDゲート140
を介してこのパルスを加える。
The ignition pulse generation circuit 138 (hereinafter referred to as IGNC) includes a register (hereinafter referred to as ADV) for setting the ignition timing and a register (hereinafter referred to as D) for setting the primary current supply start time of the ignition coil.
These data are set by the CPU. AND gate 140 generates a pulse based on the set data and sends it to amplifier 68, detailed in FIG.
Apply this pulse via.

バイパスバルブ62の開弁率は制御回路(以下l8CC
と記す)142からANDゲート144を介して加えら
れるパルスによって制御される。
The opening rate of the bypass valve 62 is determined by the control circuit (hereinafter referred to as 18CC).
) 142 through an AND gate 144.

l5CC142はパルス幅をセットするレジスタl5C
Dと繰返しパルス周期をセットするレジスタl8CPと
を持っている。
l5CC142 is a register l5C that sets the pulse width.
D and a register l8CP for setting the repetition pulse period.

第4図に示し一#EGR制御弁86を制御するトランジ
スタ90を制御するEGR,量制御パルス発(15) 主回路180(以下EGl(Cと記す)にはパルスのデ
ユーティを表わす値をセットするレジスタEGR,Dと
パルスの繰返し周期を表わす値をセットスルレジスタE
GRPとを有している。このE G R,Cの出力パル
スはANDゲート156を介してトランジスタ90に加
えられる。
As shown in FIG. 4, a value representing the duty of the pulse is set in the main circuit 180 (hereinafter referred to as EGl (referred to as C)). Set registers EGR and D and a value representing the pulse repetition period.
It has GRP. This EGR,C output pulse is applied to transistor 90 via AND gate 156.

また1ビツトの入出力信号は回路DIOにより制御され
る。入力信号としてはIDLE−8W信号、TOP−8
W信号、8’I”AR,’r−8W信号がある。
Further, the 1-bit input/output signal is controlled by the circuit DIO. Input signals are IDLE-8W signal, TOP-8
There are W signal, 8'I"AR, and 'r-8W signal.

また出力信号としては燃料ポンプを駆動するためのパル
ス出力信号がある。このDIOは端子を入力端子として
使用するか、出力端子として使用するかを決定するため
のレジスタDD几と、出力データをラッチするためのレ
ジスタD OtJ Tとが設けられている。
Further, the output signal includes a pulse output signal for driving the fuel pump. This DIO is provided with a register DD for determining whether a terminal is used as an input terminal or an output terminal, and a register DOtJT for latching output data.

レジスタ160は入出力口[108内部の色々な状態を
指令する命令を保持するレジスタ(以下MODと記す)
であり、例えばこのレジスタに命令をセットすることに
より、ANDゲート136゜140.144,156を
総てターンオンさせた(16) す、ターンオフさぜたりする。このようにMODレジス
タ160に命令をセットすることにより、INJCやI
GNC,l5CCの出力の停止や起動を制御できる。
The register 160 is an input/output port [register (hereinafter referred to as MOD) that holds instructions for commanding various internal states of the input/output port [108]
For example, by setting a command in this register, all the AND gates 136, 140, 144, and 156 are turned on (16) and turned off. By setting the command in the MOD register 160 in this way, INJC and I
It is possible to control the stop and start of output of GNC and 15CC.

第6図は第5図の制御回路のプログラムシステムの基本
構成を示す図である。
FIG. 6 is a diagram showing the basic configuration of a program system for the control circuit shown in FIG. 5.

図においてイニシャル処理プログラム202、割込処理
プログラム206、マクロ処理プログラム228および
タスクディスパッチャ208はタスク群を管理するため
の管理プログラムである。
In the figure, an initial processing program 202, an interrupt processing program 206, a macro processing program 228, and a task dispatcher 208 are management programs for managing a group of tasks.

イニシャル処理プログラム202はマイクロコンピュー
タを作動させるための前処理を行うためのプログラムで
あシ例えば、R,AM106の記憶内容をクリアしたシ
入出力インターフエイス回路108のレジスタ類の初期
値を設定したシ、さらにはエンジン制御を行うのに必要
な前処理を行うための入力情報例えば冷却水温Tw、バ
ッテリ電圧等のデータを取シ込むための処理を行う。ま
た、割込処理プログラム206は各種の割込を受は付け
、その割込要因を分析し、タスク群210ないしく17
) 226の内の必要なタスクを起動させるための起動要求
をタスクディスパッチャ208に出す。割込要因には後
述するごとく電源電圧、冷却水温度等の入力情報f:A
D変換終了後に発生するAD変換割込(p、DC) 、
エンジン回転に同期して発生するイニシャル割込(IN
TL)、又設定された一定時間毎に、例えばl Qms
毎に発生するインターバル割込(INTV)、更にはエ
ンジンのストップ状態を検出し、発生するエンスト割込
(EMST)等がある。
The initial processing program 202 is a program for performing preprocessing for operating the microcomputer. , and further performs processing for inputting data such as cooling water temperature Tw and battery voltage, etc., for performing preprocessing necessary for engine control. Further, the interrupt processing program 206 accepts various interrupts, analyzes the cause of the interrupt, and processes the task groups 210 to 17.
) Issues an activation request to the task dispatcher 208 to activate the necessary tasks among the tasks 226. Interrupt factors include input information such as power supply voltage and cooling water temperature f:A as described later.
AD conversion interrupt (p, DC) that occurs after D conversion is completed,
Initial interrupt (IN) that occurs in synchronization with engine rotation
TL), and every set period of time, for example l Qms
There is an interval interrupt (INTV) that occurs every time the engine stops, and an engine stall interrupt (EMST) that occurs when the engine is stopped.

タスク群210乃至226の各タスクには優先順位を表
わすタスク番号が割合てられており、各タスクはタスク
レベル0乃至2の何れかのタスクレベルに属する。即ち
、タスク0乃至タスク2はタスクレベルOに、タスク3
乃至タスク5Fiタスクレベル1に、更にタスク6乃至
タスク8けタスクレベル2に各々属する。
Each task in the task groups 210 to 226 is assigned a task number representing a priority order, and each task belongs to one of task levels 0 to 2. That is, tasks 0 to 2 are at task level O, and task 3 is at task level O.
Tasks 5 to 5 belong to task level 1, and tasks 6 to 8 belong to task level 2, respectively.

タスクディスパッチャ208は前記各種割込の起動要求
を受け、これらの起動要求に対応する各種タスクに付け
られた優先順位に基づきCPUの(18) 占有時間を割シ尚てる。
The task dispatcher 208 receives the activation requests for the various interrupts, and allocates the (18) occupied time of the CPU based on the priorities assigned to the various tasks corresponding to these activation requests.

ここでタスクディスパッチャ208によるタスクの優先
制御は下記の方法に拠る。(1)優先度の低いタスクを
中断し、優先度の高いタスクへの実行権の移行はタスク
レベル間のみで行う。なおここではレベルOが最も優先
度が高いものとする。(2)同じタスクレベル内で、現
在実行中又は中断中のタスクがある場合は、該タスクが
最も優先度が高く該タスクが終了するまで他のタスクは
動作できない。(3)同じタスクレベル内で複数のタス
クに起動要求がある場合には、タスク番号が小さい程優
先度が高いものとする。タスクディスパッチャ208の
処理内容は後述するが本発明では上記優先制御を行うた
めにタスク単位に)l、AMにソフトタイマを設け、又
タスクレベル単位にタスクを管理する制御ブロックをR
,AM中に設定するように構成している。そして上記各
タスクの実行終了毎にそのタスクの実行終了報告をマク
ロ処理プログラム228によシタスフディスパッチャ2
08に行うようにしている。
Here, task priority control by the task dispatcher 208 is based on the following method. (1) A task with a low priority is interrupted and the execution right is transferred to a task with a high priority only between task levels. Note that level O has the highest priority here. (2) If there is a task currently being executed or suspended within the same task level, this task has the highest priority and other tasks cannot operate until this task is completed. (3) If there are activation requests for multiple tasks within the same task level, the smaller the task number, the higher the priority. The processing contents of the task dispatcher 208 will be described later, but in the present invention, in order to perform the above-mentioned priority control, a soft timer is provided for each task, and a control block for managing tasks on a task level basis is provided in R.
, AM. Then, each time the execution of each task is completed, the task execution completion report is sent to the macro processing program 228 by the task dispatcher 2.
I am planning to do it in 2008.

(19) 次にタスクディスパッチャ208の処理内容について第
7図乃至第13図に基づき説明する。第7図はタスクデ
ィスパッチャ208の管理する11、AMに設けらt1
タタスク制御ブロックが設けられている。このタスク制
御ブロックがタスクレベルの数だけ設けられており本実
施例ではタスクレベル0乃至2の3つ設けられている。
(19) Next, the processing contents of the task dispatcher 208 will be explained based on FIGS. 7 to 13. 11, which is managed by the task dispatcher 208, is provided in AM t1
A data task control block is provided. The number of task control blocks equal to the number of task levels is provided, and in this embodiment, three task control blocks are provided at task levels 0 to 2.

各制御ブロックには各々8ビツトが割り当てられ、その
内0乃至2ビツト目(Qo〜Q2 )!fでか起動要求
タスク表示を行う起動ビットであり、7ビツト目(R1
が同一タスクレベル中の何ね、かのタスクが現在実行中
であるか又は中断中であるかを示す実行ビットを表わす
、そして前記起動ビットQ。釣竿Q2はそれぞれ各タス
クレベル中で実行優先度の高い順に醗列されており、例
えば第6図中でタスク4に該当する起動ビットはタスク
レベル1のQ、である。ここでタスクの起動要求があっ
た場合には起動ビットの伺れかにフラグが立てられ、一
方タスクディスバッチャ208は出された起動要求を高
いレベルのタスクに該当する起動ビット(20) よシ順に検索し、出された起動要求に該当するフラグを
リセットすると共に実行ビットにフラグ1を立て、該当
タスクを起動させるための処理を行う。
Eight bits are assigned to each control block, of which the 0th to 2nd bits (Qo to Q2)! f is a startup bit that displays the startup request task, and the 7th bit (R1
represents an execution bit indicating whether a task is currently being executed or suspended, and the activation bit Q is in the same task level. The fishing rods Q2 are arranged in descending order of execution priority in each task level. For example, the activation bit corresponding to task 4 in FIG. 6 is Q of task level 1. If there is a request to start a task, a flag is set in the start bit, and on the other hand, the task dispatcher 208 sends the issued start request to the start bit (20) corresponding to a higher level task. The tasks are searched in order, and the flag corresponding to the issued activation request is reset, the execution bit is set to flag 1, and processing is performed to activate the corresponding task.

第8図はタスクディスパッチャ208の管理する)l、
AM106に設けられたスタートアドレステーブルであ
る。スタートアドレスSAO乃至SA8は第6図に示し
たタスク群210乃至226の各タスク0乃至8に該当
するスタートアドレスを示す。各スタートアドレス情報
には16ビツトが割合てられ、これらのスタートアドレ
ス情報は後述する如くタスクディスパッチャ208によ
り起動要求のあった該当タスクを起動するのに使用され
る。
In FIG. 8, the task dispatcher 208 manages)l,
This is a start address table provided in AM106. Start addresses SAO to SA8 indicate the start addresses corresponding to each task 0 to 8 of the task groups 210 to 226 shown in FIG. 16 bits are allocated to each start address information, and these start address information are used by the task dispatcher 208 to start the corresponding task that has been requested to start, as will be described later.

次に第9図乃至第10図にタスクディスパッチャの処理
フローを示す。第8図に於いてステップ300でタスク
ディスパッチャの処理が開始されるとステップ302で
タスクレベルtに属するタスクが実行中断中か否かが判
断される。即ら、実行ビットに1が立っていたらマクロ
処理プロゲラ(21) ム228により未だタスク終了報告がタスクディスパッ
チャ208に出されていない状態であシ、実行中だった
タスクがより優先レベルが高い割込みが生じたために中
断をぜられている状態を示す。
Next, FIGS. 9 and 10 show the processing flow of the task dispatcher. In FIG. 8, when the process of the task dispatcher is started in step 300, it is determined in step 302 whether or not the execution of a task belonging to task level t is being suspended. In other words, if the execution bit is set to 1, it means that the task completion report has not yet been sent to the task dispatcher 208 by the macro processing programmer (21) 228, and the task that was currently being executed receives an interrupt with a higher priority level. Indicates a situation in which the process has been interrupted due to an occurrence.

従って、実行ビットに7ラグ1が立っていたらステップ
314にジャンプし、中断タスクを再開する。
Therefore, if 7 lag 1 is set in the execution bit, the process jumps to step 314 and restarts the interrupted task.

一方、実行ビットにフラグ1が立っていない即ら実行表
示フラグがリセットされている場合にはステップ304
に移行し、レベルtに起動待らタスクがあるか否かが判
断される。即ら、レベルtの起動ビットを対応するタス
クの実行優先度の高い順、即らQ、、Q、、、Q2の順
に検索する。タスクレベルtに属する起動ビットにフラ
グ1が立っていない場合はステップ306に移行し、タ
スクレベルの更新が行われる。即らタスクレベルtは+
1インクリメントされt+1とする。ステップ306で
タスクレベルの更新が行われるとステップ308に移行
しタスクレベルの全レベルカfニックされたか否かが判
断される。全レベルのチ(22) ニックが行われていない、即らt=2でない場合にはス
テップ302に戻り同様に上記手順で処理が行われる。
On the other hand, if flag 1 is not set in the execution bit, that is, the execution display flag is reset, step 304
Then, it is determined whether there is a task waiting to be started at level t. That is, the activation bits of level t are searched in the order of the execution priority of the corresponding task, that is, in the order of Q, Q, , Q2. If flag 1 is not set in the activation bit belonging to task level t, the process moves to step 306, and the task level is updated. That is, the task level t is +
It is incremented by 1 and set to t+1. When the task level is updated in step 306, the process moves to step 308, where it is determined whether all task levels have been updated. If all levels have not been ticked (22), that is, if t is not 2, the process returns to step 302 and the above procedure is similarly performed.

ステップ308でタスクレベルの全レベルがチェックさ
れている場合にはステップ310に移行し、割込み解除
が行われる。即ら、ステップ302乃至ステップ308
までの処理期間中は割込みを禁止しているのでこのステ
ップで割込み解除が為される。そして次のステップ31
2で次の割込みを待つ。
If all the task levels have been checked in step 308, the process moves to step 310 and the interrupt is canceled. That is, steps 302 to 308
Since interrupts are prohibited during the processing period up to this point, interrupts are canceled at this step. And next step 31
2 waits for the next interrupt.

次に前記ステップ304でタスクレベルtに起動待らタ
スクがある場合、即らタスクレベルtに属する起動ビッ
トにフラグ1が立っている場合にはステップ400に移
行する。ステップ500及び502のループでタスクレ
ベルtのどの起動ビットにフラグ1が立っているか対応
する優先実行度の高いレベルの順に即らQ。t Qt 
+ Q2の順で検索する。該当する起動ビットを割出し
たらステップ404に移行し、ステップ404ではその
フラグの立っている起動ビットをリセットし、その該当
タスクレベルのtの実行ビット(以下Rビ(23) ット)に7ラグ1を立てる。チ((ステップ406では
起動タスク番号の割出しを行いステップ408で第8図
に示しf R,A Mに設けられたスタートアドレステ
ーブルにより該当する起動タスクのスタートアドレス情
報を取出す。
Next, in step 304, if there is a task waiting to be activated at task level t, that is, if flag 1 is set in the activation bit belonging to task level t, the process moves to step 400. In the loop of steps 500 and 502, which activation bit of the task level t has the flag 1 set is determined in the order of the corresponding priority execution level, ie, Q. t Qt
+ Search in the order of Q2. Once the relevant activation bit has been determined, the process moves to step 404. In step 404, the flagged activation bit is reset, and the execution bit of t (hereinafter referred to as the R bit (23) bit) of the relevant task level is set to 7. Set up rug 1. (In step 406, the starting task number is determined, and in step 408, the start address information of the corresponding starting task is extracted from the start address table shown in FIG. 8 and provided in fR, AM.

次にステップ410では該当起動タスクを実行するか否
かの判断が行われる。ここでは取出したスタートアドレ
ス情報が特定のイlI′i例えばOであれば該当タスク
の実行は行わなくてよいと判断される。この判断ステッ
プはエンジン制御を行う前記タスク群の内各車種により
選択的に特定のタスクのみの機能を持たくるのに必要な
ものである。ステップ410で該当タスクの実行が停止
であると判断された場合にはステップ414に移行し、
該当タスクレベルtのRビットをリセットする。そして
更にステップ302に戻りタスクレベルtは中断中であ
るか否かが判断される。これは同一タスクレベルを中に
沙数の起動ビットにフラグが立っている場合かを)り得
るのでステップ414でRビット’6リセツトした後ス
テップ302に移行す(24) るように構成されている。
Next, in step 410, it is determined whether or not to execute the corresponding startup task. Here, if the retrieved start address information is a specific number, for example O, it is determined that the corresponding task does not need to be executed. This determination step is necessary to selectively provide the function of only a specific task to each vehicle type among the task group that performs engine control. If it is determined in step 410 that the execution of the corresponding task is stopped, the process moves to step 414;
The R bit of the corresponding task level t is reset. Then, the process returns to step 302 and it is determined whether the task level t is suspended. This is possible if the flag is set in the activation bit of the same task level, so the R bit '6 is reset in step 414 and then the process moves to step 302 (24). There is.

一方ステップ410で該当タスクの実行が停止でない場
合即ち実行する場合にはステップ412へ移行し該当タ
スクへジャンプし、タスクの実行が行われる。
On the other hand, in step 410, if the execution of the relevant task is not stopped, that is, if it is to be executed, the process moves to step 412, jumps to the relevant task, and the task is executed.

次に第11図はマクロ処理プログラム228の処理フロ
ーを示す図である。このプログラムは終了タスクを見つ
けるためのステップ562と564から成る。このステ
ップ562と564で先ずタスクレベルの0よシ検索し
終了したタスクレベルを見つける。これによりステップ
568へ進みここで終了したタスクのタスク制御ブロッ
クの7ビツト目の実行(R,UN)フラグをリセットす
る。
Next, FIG. 11 is a diagram showing the processing flow of the macro processing program 228. The program consists of steps 562 and 564 to find the finished task. In steps 562 and 564, the task level is first searched from 0 to find the completed task level. As a result, the process advances to step 568, where the execution (R, UN) flag in the 7th bit of the task control block of the completed task is reset.

これによυそのタスクの実行が完全に終わった事になる
。そして再びタスクディスパッチャ208に戻り次の実
行タスクが決定される。
This means that the task has been completely executed. Then, the process returns to the task dispatcher 208 again and the next task to be executed is determined.

次にタスクディスパッチャ208によりタスク優先制御
が行われる場合のタスクの実行と中断の様子を第12図
に基づき説明する。ここで起動要求N0に於けるmはタ
スクレベルを表わし、nは(25) タスクレベルm中に於ける優先度の順位を表わすものと
する。今CPUは管理プログラムO8を実行していたと
すると、この管理プログラムO8の実行中に起動要求N
2.が発生した場合には時刻T、で起動要求N21に該
当するタスク、即らタスク6の実行が開始される。ここ
でタスク6の実行中に時刻T、でより実行優先度の高い
タスクの起動要求N。1が生じた場合には管理プログラ
ムO8に実行が移り既に述べた所定の処理を行った後に
時刻T、で起動要求N。、に該当するタスク、即ちタス
クOの実行が開始される。このタスク0の実行中に史に
時刻T4で起動要求N1.が入った場合には一旦、管理
プログラムO8に実行が移り所定の処理が行われt後再
び時刻T、で中断されていたタスク0の実行が再開され
る。そしてタスク0の実行が時刻T、で終了すると再び
管理プログラムO8に実行が移りここでマクロ処理プロ
グラム228によりタスクディスパッチャ208へタス
ク0の実行終了報告がなされ時刻T、で再び起動待ちに
なっていた起動要求N1.に該当するタスク(26) 3の実行が開始される。このタスク3の実行中時刻T、
で同じタスクレベル1のより優先度の低い起動要求N、
2が入った場合にはタスク3の実行は一旦中断され実行
は管理プログラムO8に移り所定の処理が為された後、
時刻T、でタスク3の実行が再開される。そして時刻T
、。でタスク3の実行が終了するとCPUの実行は管理
プログラムO8に移り前記マクロ処理プログラム228
によシタスフディスパッチャ208へタスク3の実行終
了報告が為され、次いで時刻Tl+でよシ優先レベルの
低い起動要求N1□に該当するタスク4の実行が開始さ
れ、時刻T1.でタスク4の実行が終了すると実行は管
理プログラムO8に移シ所定の処理が為された後、今ま
で中断されていた起動要求N2.に該当するタスク6の
実行が時刻’I’tsから再開される。
Next, the manner in which tasks are executed and interrupted when task priority control is performed by the task dispatcher 208 will be explained based on FIG. 12. Here, m in activation request N0 represents the task level, and n represents the priority order within task level m (25). Assuming that the CPU is currently executing the management program O8, a startup request N is issued while this management program O8 is being executed.
2. If this occurs, execution of the task corresponding to the activation request N21, that is, task 6, is started at time T. Here, while task 6 is being executed, at time T, a request N is made to start a task with a higher execution priority. 1 occurs, the execution moves to the management program O8, and after performing the predetermined processing described above, a startup request N is issued at time T. Execution of the task corresponding to , ie, task O, is started. During the execution of this task 0, a start request N1 was issued at time T4. When the task 0 is entered, the execution is once transferred to the management program O8, predetermined processing is performed, and after t, the execution of the suspended task 0 is resumed again at time T. When the execution of task 0 ends at time T, the execution moves again to the management program O8, where the macro processing program 228 reports the completion of execution of task 0 to the task dispatcher 208, and the task is again waiting to be started at time T. Startup request N1. The execution of task (26) 3 corresponding to is started. The time T when this task 3 is being executed,
, a lower priority activation request N of the same task level 1,
If 2 is entered, the execution of task 3 is temporarily interrupted and the execution moves to the management program O8, after which predetermined processing is performed.
Execution of task 3 is resumed at time T. and time T
,. When the execution of task 3 is completed, the execution of the CPU shifts to the management program O8 and the macro processing program 228
The completion of execution of task 3 is reported to task dispatcher 208, and then, at time Tl+, execution of task 4 corresponding to activation request N1□ with a low priority level is started, and at time T1. When the execution of task 4 is completed, the execution is transferred to the management program O8, and after predetermined processing is performed, the startup request N2. Execution of task 6 corresponding to is resumed from time 'I'ts.

以上の様にしてタスクの優先制御が行われる。Priority control of tasks is performed in the manner described above.

タスクの優先制御に於ける状態遷移を第12図に示す。FIG. 12 shows state transitions in task priority control.

l:dle状態は起動待ちの状態であり、タスクにまだ
起動要求が出されていない。次に起動(27) 要求が出されるとタスク制御ブロックの起動ビットにフ
ラグが立ち、起動が必要ということが表示される。1d
le状態からQueue状態へ移動する時間は各タスク
のレベルにより定寸っている。更にQ u e u e
  状態になっても実行され順序は優先度により定寸る
。そのタスクが実行状態に入るのは管理プログラムO8
の内のタスクデイスパツチヤ208でタスク制御ブロッ
クの起動ビットのフラグがリセットされ、Rビット(7
ビツト目)にフラグが立ってからである。これによりタ
スクの実行が始められる。この状態が)l、UN状態で
ある。
The l:dle state is a state of waiting for activation, and no activation request has been issued to the task yet. Next, when a startup (27) request is issued, a flag is set in the startup bit of the task control block, indicating that startup is necessary. 1d
The time required to move from the le state to the queue state is determined by the level of each task. Furthermore, Q u e u e
They are executed even if the state changes, and the order is determined by priority. The task enters the execution state using the management program O8.
The activation bit flag of the task control block is reset in the task dispatcher 208, and the R bit (7
This is after the flag is set on bit 1). This will start the task execution. This state is the )l,UN state.

そして実行が終るとタスク制御ブロックのRビットのフ
ラグがクリアされ、終了報告を終了する。
When the execution is completed, the R bit flag of the task control block is cleared, and the completion report is ended.

これによりRU N状態は終り、町びIdle状態とな
り次の起動要求が出るのを待つ。しかし、タスクの実行
中即ちT−1,U N中に割込みIR,Q、が発生する
と、そのタスクは実行を中断しなければならない。この
ためCP Uの内容が待避され、実行が中断する。この
状態が1(、eady  状態である。次にこのタスク
が再び実行される状態になると待避エリ(28) アよシ、待避していた内容を再びCPUへ戻し、実行が
再開される。つま9 Ready 状態から再びR,U
 N状態へ戻る。この様に各レベルプログラムは第12
図の4つの状態を繰り返す。第12図は代表的な流れで
−あるがReady  状態でタスク制御ブロックの起
動ビットにフラグが立つ可能性がある。これは例えば起
動中断中にそのタスクの次の起動要求タイミングになっ
てしまった場合である。
This ends the RUN state and enters the idle state, waiting for the next activation request. However, if an interrupt IR,Q occurs during the execution of a task, ie, during T-1,UN, the task must interrupt its execution. Therefore, the contents of the CPU are saved and execution is interrupted. This state is the 1 (ready) state. Next, when this task becomes ready to be executed again, the saved contents are returned to the CPU and execution is resumed. 9 R, U again from Ready state
Return to N state. In this way, each level program is the 12th
Repeat the four states shown in the figure. Although FIG. 12 shows a typical flow, there is a possibility that the start bit of the task control block will be flagged in the Ready state. This is the case, for example, when the next activation request timing for the task comes while the activation is being suspended.

この時にはR5ビットのフラグが優先されて先ず、中断
中のタスクを終了させる。これによJ)Rビットのフラ
グが消え、起動ビットのフラグによシ■die状態を通
らずにQ u e u e状態となる。
At this time, priority is given to the flag of the R5 bit, and the suspended task is first terminated. As a result, the flag of the J)R bit disappears, and the state enters the QUEUE state without passing through the SIE state due to the flag of the activation bit.

この様にタスク0〜8は各々第13図の倒れかの状態に
ある。
In this way, tasks 0 to 8 are each in the collapsed state shown in FIG.

次に第14図は第6図のプログラムシステムの具体的実
施例を示している。図に於いて管理プログラムO8はイ
ニシャル処理プログラム202、割込み処理プログラム
206、タスクディスパッチャ208及びマクロ処理プ
ログラム228より成る。
Next, FIG. 14 shows a specific embodiment of the program system shown in FIG. In the figure, the management program O8 includes an initial processing program 202, an interrupt processing program 206, a task dispatcher 208, and a macro processing program 228.

(29) 割込み処理プログラム206には各種の割込み処理プロ
グラムがあり、イニシャル割込み処理(以下INTL割
込み処理という)602はエンジン回転に同期して発生
するイニシャル割込み信号によって、エンジン1回転当
たりエンジン気筒数の半分、即ち4気筒なら2回イニシ
ャル割込みが発生する。このイニシャル割込みによって
EGIタスク612で計算しり燃料の噴射時間を入出力
インターフェイス回路108のEGIレジスタに設定す
る。AD変換割込み処理604は2種類あり1つはAD
変換器1割込み(以下ADC1と略す)及びAD変換6
2割込み(以下ADC2と略す)である。AD変換器1
は8ピツトの精度を有し、電源電圧、冷却水温度、吸気
温度及び使用調整などの入力に用いられ、マルチプレク
サ−120に対する入カポインドの指定を行うと同時に
変換を開始し、変換終了後にADC1割込みを発生する
。なお本割込みはクランキング前にのみ使用する。又A
D変換器128は空気流量の入力に用いられ変換終了後
にAD02割込みを発生する。な(30) お、車側込みもクランキング前にのみ使用する。
(29) The interrupt processing program 206 includes various interrupt processing programs, and the initial interrupt processing (hereinafter referred to as INTL interrupt processing) 602 uses an initial interrupt signal generated in synchronization with engine rotation to control the number of engine cylinders per engine rotation. If there are half the number of cylinders, that is, 4 cylinders, the initial interrupt will occur twice. By this initial interrupt, the EGI task 612 calculates the fuel injection time and sets it in the EGI register of the input/output interface circuit 108 . There are two types of AD conversion interrupt processing 604, one is AD
Converter 1 interrupt (hereinafter abbreviated as ADC1) and AD conversion 6
2 interrupt (hereinafter abbreviated as ADC2). AD converter 1
has an accuracy of 8 pits, and is used for inputting power supply voltage, cooling water temperature, intake air temperature, usage adjustment, etc., and starts conversion at the same time as specifying the input point to multiplexer 120, and interrupts ADC1 after conversion is completed. occurs. Note that this interrupt is used only before cranking. Also A
D converter 128 is used to input the air flow rate and generates an AD02 interrupt after the conversion is completed. (30) Oh, the car side is also used only before cranking.

次にインターバル割込み処理プログラム(以下INTV
割込み処理プログラムと示す。)606ではINTV割
込み信号はINTVレジスタに設定した時間例えば10
m5毎に発生し、一定周期で起動すべきタスクの時間監
視用基本信号として用いられる。車側込み信号によって
、ソフトタイマの更新を行い、規定周期に達したマスク
を起動する。史にエンスト割込み処理プログラム(以下
ENST割込み処理プログラムと記す。)608ではエ
ンジンのストップ状態を検出するもので、INTL割込
み信号を検出すると、計数を開始し所定時間例えば1秒
以内に次の丁NTL割込み信号を検出できなかった時、
EH11割込みが発生する。そしてBNST割込みが3
回、例えば3秒経逼してもINTL割込み信号が検出で
きなかった場合にエンストが起ったものと判断し点火コ
イルへの通電及び燃料ポンプの停止を行う。これらの処
理の後今スタータスイッチ152がオンするまで待機す
る。上記割込み要因に対する処理概要(31) を表1に示す。
Next, the interval interrupt processing program (hereinafter INTV)
It is referred to as an interrupt processing program. ) 606, the INTV interrupt signal is used for the time set in the INTV register, for example, 10
This signal is generated every m5 and is used as a basic signal for time monitoring of tasks that should be started at regular intervals. The soft timer is updated in response to the side-by-vehicle signal, and the mask is activated when the specified cycle has been reached. The engine stall interrupt processing program (hereinafter referred to as ENST interrupt processing program) 608 detects the stopped state of the engine, and when an INTL interrupt signal is detected, it starts counting and starts counting the next engine within a predetermined period of time, for example, 1 second. When an interrupt signal cannot be detected,
EH11 interrupt occurs. And BNST interrupt is 3
If the INTL interrupt signal is not detected after 3 seconds, for example, it is determined that an engine stall has occurred, and the ignition coil is energized and the fuel pump is stopped. After these processes, the process waits until the starter switch 152 is turned on. Table 1 shows the processing outline (31) for the above interrupt factors.

表1 割込要因に対する処理概要 イニシャル処理プログラム202及びマクロ処理プログ
ラム228については前述の通りの処理を行う。
Table 1 Outline of processing for interrupt factors The initial processing program 202 and macro processing program 228 perform the processing as described above.

上記各種の割込みにより起動されるタスク群は次の通り
である。タスクレベル0に属するタスクとしては燃料カ
ット処理タスク(以下Asタスクと記す)、燃料噴射制
御タスク(以下EGIタスクと記す)及び始動モニタタ
スク(MONITタス(32) りと言う)がある。又タスクレベル1に属するタスクと
してはA、D1人カタスク(以下ADINIタスクと記
す)、時間係数処理タスク(以下AF’SIAタスク)
がある。史にタスクレベル2に属するタスクとしてはア
イドル回転制御タスク(以下ISCタスクと記す)、補
正計算タスク(以下HO8EIタスクと記す)及び始動
前処理タスク(以下l5TRTタスクと記す)がある。
The task groups activated by the various interrupts mentioned above are as follows. Tasks belonging to task level 0 include a fuel cut processing task (hereinafter referred to as As task), a fuel injection control task (hereinafter referred to as EGI task), and a start monitor task (hereinafter referred to as MONIT task (32)). Also, tasks belonging to task level 1 are A, D 1-person task (hereinafter referred to as ADINI task), and time coefficient processing task (hereinafter referred to as AF'SIA task).
There is. Historically, tasks belonging to task level 2 include an idle rotation control task (hereinafter referred to as ISC task), a correction calculation task (hereinafter referred to as HO8EI task), and a start preprocessing task (hereinafter referred to as 15TRT task).

上記各タスクレベルの割り当てとタスクの機能を表2に
示す。
Table 2 shows the assignment of each task level and the function of the task.

(33) 表2から明らかなように各種割込みによp起動される各
タスクの起動周期は予め定められており、これらの情報
はROM 104に格納されている。
(33) As is clear from Table 2, the activation cycle of each task activated by various interrupts is determined in advance, and this information is stored in the ROM 104.

次に、熱線式流引・センサの信号処理方法と燃料噴射制
御について説明する。本発明に使用する熱線式流量セン
サの信号処理を第15図に示す。ホットワイヤ出力電圧
Vから(5〕式により瞬時空気流量QAを計算できる。
Next, the signal processing method of the hot wire flow sensor and fuel injection control will be explained. FIG. 15 shows signal processing of the hot wire flow rate sensor used in the present invention. The instantaneous air flow rate QA can be calculated from the hot wire output voltage V using equation (5).

この瞬時空気流量qAは第15図に示すように脈動状態
を示すので、一定時間Δを毎にサンプルする。瞬時空気
流量QAから平均空気流量Q^は次式で求められる。
Since this instantaneous air flow rate qA exhibits a pulsating state as shown in FIG. 15, it is sampled at fixed time intervals Δ. The average air flow rate Q^ is calculated from the instantaneous air flow rate QA using the following equation.

nm  Δ t ΣqA11 2□・・・・・・(8) シリンダに吸入される空気流量は(8)式二り処理で積
算流量を求める。次に、燃料噴射制御について説明する
。本発明の燃料噴射は(7)式に示す(35) ような、1回転当たりの噴射量を計算するのではなく、
積算流量がある値になったときに燃料を噴射する。第1
6図に燃料噴射タイミングを示す。
nm Δ t ΣqA11 2 □ (8) For the air flow rate sucked into the cylinder, calculate the integrated flow rate using equation (8). Next, fuel injection control will be explained. The fuel injection of the present invention does not calculate the injection amount per revolution as shown in equation (7) (35), but
Fuel is injected when the cumulative flow rate reaches a certain value. 1st
Figure 6 shows the fuel injection timing.

瞬時空気流量qAを一定時間毎に積算し、その流量積算
値が積算流計レベルQ、以上になったら、一定時間tの
・岸°料を噴射する。つ1す、燃料噴射タイミングは流
1積算値が積算流量レベルに達したときである。この積
算流量レベルQ、11 をQ l、!にすると、空燃比
(A/F)は濃くなり、Q t3にすると、空燃比は薄
くなる。本発明は、この積算流量レベルをシフトして、
空燃比を任意に調整できることである。つまり、始動時
の暖機運転では、空燃比を濃くすることが必要であり、
積算流量レベルを小さくすることで実現できる。又、0
2センサの出力により、空燃比を常に最適に制御するに
は、02センサ出力の0N−OF’Fによシ、積算流量
レベルを訓減することで実現できる。
The instantaneous air flow rate qA is integrated at fixed time intervals, and when the integrated flow rate value exceeds the integrated flowmeter level Q, the air charge is injected for a fixed time period t. First, the fuel injection timing is when the flow 1 integrated value reaches the integrated flow rate level. This integrated flow level Q,11 is Q l,! When Qt3 is set, the air-fuel ratio (A/F) becomes rich, and when Qt3 is set, the air-fuel ratio becomes lean. The present invention shifts this integrated flow level to
The air-fuel ratio can be adjusted arbitrarily. In other words, it is necessary to enrich the air-fuel ratio during warm-up during startup.
This can be achieved by reducing the cumulative flow level. Also, 0
In order to always optimally control the air-fuel ratio using the output of the 02 sensor, this can be achieved by adjusting the integrated flow level according to the 0N-OF'F of the 02 sensor output.

このような熱線式流lセンサの信号取込及び噴射タイミ
ングの処理フローを第17図に示す。
FIG. 17 shows a processing flow for signal acquisition and injection timing of such a hot wire type flow l sensor.

図において、まず、ステップ801に訃いて、(36) INTL割込か否かを判断する。INTL割込の場合は
ステップ802において、IGN  BEGのセットを
行い、INTL割込処理プログラムを終了する。また、
ステップ801において、INTL割込でない場合には
、ステップ805において、QA用のタイマ割込か否か
を判定する。このタイマ割込の場合にはステップ806
において、熱線式流量センサ取込のための起動を行い、
ステップ807において、熱線式流量センサの取込を行
う。
In the figure, first, at step 801, it is determined whether or not there is an INTL interrupt (36). In the case of an INTL interrupt, IGN BEG is set in step 802, and the INTL interrupt processing program is terminated. Also,
If it is determined in step 801 that the interrupt is not an INTL interrupt, it is determined in step 805 whether or not it is a QA timer interrupt. In the case of this timer interrupt, step 806
, start up to import the hot wire flow rate sensor,
In step 807, a hot wire flow rate sensor is taken in.

ステップ808では、(5)式で示される瞬時空気流i
QAを計算し、ステップ809で積算処理を行う。ステ
ップ810において、瞬時空気流量の積算値が積算流量
レベルになったかどうかを判断する。積算流量レベルに
なった場合は、ステップ811で、EGI  BEGに
噴射時間tをセットし、ステップ812で燃料噴射を開
始する。ステップ813で積算流量と積算流量レベルの
差を現在の積算流量とする。ステップ805において%
 Q’用のタイマ割込でない場合は、ステップ815に
おいてADC割込か否かを判定する。ステップ(37) 815において、ADC割込である場合には、ステップ
816に−b・いて、IS’l”フラグが1か否かを判
定し、ISTフラグが1の場合には、ステップ817に
も・いて、熱線式流量センサの起動と取込を行う。この
取込による流量の値は押し掛けの検出に使用するもので
ある。また、ステップ815に訃いて、ADC割込でな
い場合、ステップ816において、■STフラグが1で
ない場合には、共に第14図のIN’rV割込処理60
6に移る。
In step 808, the instantaneous air flow i expressed by equation (5) is
QA is calculated and integration processing is performed in step 809. In step 810, it is determined whether the integrated value of the instantaneous air flow rate has reached the integrated flow rate level. If the integrated flow rate level is reached, an injection time t is set in EGI BEG in step 811, and fuel injection is started in step 812. In step 813, the difference between the cumulative flow rate and the cumulative flow rate level is set as the current cumulative flow rate. In step 805 %
If it is not a timer interrupt for Q', it is determined in step 815 whether it is an ADC interrupt. In step (37) 815, if it is an ADC interrupt, the process goes to step 816 to determine whether the IS'l'' flag is 1, and if the IST flag is 1, the process goes to step 817. Then, the hot wire flow rate sensor is activated and read in. The flow rate value obtained by this reading is used to detect overloading.Also, if step 815 fails and there is no ADC interrupt, step 816 In this case, if the ST flag is not 1, the IN'rV interrupt processing 60 in FIG.
Move on to 6.

次に、エンジン冷却水温センサからの出力値によって、
すなわち、エンジン冷却水温によって空気流l比較レベ
ルを変更する特性図が第18図に示されている。すなわ
ち、−40tZ’〜40t?は寒冷始動であり、暖機運
転レベルである。また、40C〜85trは通常始動レ
ベルであり、851:以上はホットリスタートレベルで
ある。この空気流量比較レベルは、始動前にすなわち、
エンジンキーをONすると直ちに、水温を取り込み水温
に対する空気流量比較レベルを第18図より演算しレベ
ル設定する。この演算はIS’l”RTプログラム(3
8) で処理することになる。
Next, depending on the output value from the engine coolant temperature sensor,
That is, FIG. 18 shows a characteristic diagram in which the air flow l comparison level is changed depending on the engine cooling water temperature. That is, -40tZ' to 40t? is a cold start and a warm-up operation level. Moreover, 40C to 85tr is a normal starting level, and 851: or more is a hot restart level. This air flow comparison level is determined before start-up, i.e.
Immediately after turning on the engine key, the water temperature is taken in and the air flow rate comparison level with respect to the water temperature is calculated from FIG. 18 and the level is set. This operation is performed by the IS'l''RT program (3
8) will be processed.

次に、加速時の処理について、第19図乃至第22図を
用いて説明する。
Next, processing during acceleration will be explained using FIGS. 19 to 22.

第19図には、アイドル状態又は減速後からの加速時の
燃料制御フローが示されている。すなわち、1ず、ステ
ップ901においてアイドルスイッチがONI、ている
か否かを判定し、ONしているときは、ステップ902
においてフラグをセットしてステップ903に移る。ま
た、ステップ901においてアイドルスイッチがOFF
であると判定するとステップ903においてスロットル
開度を検出してR,AMに格納する。次にステップ90
4において現在検出したスロットル開度と30μ(5)
前に取込んだスロットル開度とを比較し、覗在値が大き
いか否かすなわち、加速状態か否かを判定する。加速で
ない場合にはステップ910に移り、刀口速であると判
定すると、ステップ905において加速補正量1すなわ
ち、通常の吸入空気量の増量に伴う加速補正量を計算し
、この加速補正量のフラグに1が立っているか否かをス
テップ(39) 906において判定する。フラグが1になっているとき
は、ステップ907において加速補正量1にに倍した値
を加速補正分とする。また、フラグに1が立っていない
ときはステップ908において加速補正量1を加速補正
分とする。
FIG. 19 shows a fuel control flow during acceleration from an idling state or after deceleration. That is, first, in step 901, it is determined whether or not the idle switch is ON. If it is ON, step 902 is performed.
A flag is set in step 903. Also, in step 901, the idle switch is turned OFF.
If it is determined that this is the case, the throttle opening degree is detected in step 903 and stored in R and AM. Next step 90
Throttle opening currently detected in 4 and 30μ (5)
It is compared with the previously captured throttle opening to determine whether the peek value is large or not, that is, whether or not it is in an acceleration state. If it is not acceleration, the process moves to step 910, and if it is determined that the speed is at the knife speed, then in step 905, acceleration correction amount 1, that is, the acceleration correction amount accompanying the increase in the normal intake air amount, is calculated, and the flag of this acceleration correction amount is set. It is determined in step (39) 906 whether or not 1 is set. When the flag is set to 1, in step 907, a value multiplied by the acceleration correction amount 1 is set as the acceleration correction amount. If the flag is not set to 1, the acceleration correction amount 1 is set as the acceleration correction amount in step 908.

次にステップ909において加速補正を行ない、ステッ
プ910に訃いてアイドルスイッチがOFFしているか
否かを判定し、OFFしているときはフラグをリセット
する。
Next, in step 909, acceleration correction is performed, and in step 910, it is determined whether or not the idle switch is OFF, and if it is OFF, the flag is reset.

これによってアイドル状態又は減速後の加速は他の加速
時よりに倍大きくする。
This makes the acceleration after idling or deceleration twice as large as during other accelerations.

また、加速時第20図(A)に示す如く加速補正噴射を
行なっている。しかし、燃料が出遅れるため、その分リ
ーンになり、第20図(B)に示す如く溶料量が不足す
る。このため、従来、加速時に燃料を増量して、加速時
のリーン状態をなくそうとしている。しかし、第20図
(C)の如く、加速増量が加速の間一定量であると、力
ロ速後半がリッチとなってしまう。そこで、本実施例で
は第20図(D)に示す如く加速期間中初期は増量を(
40) 太きクシ、後期徐々に補正量を小さくしている。
Further, during acceleration, acceleration correction injection is performed as shown in FIG. 20(A). However, since the fuel is delayed, the fuel becomes leaner and the amount of solvent becomes insufficient as shown in FIG. 20(B). For this reason, conventional attempts have been made to increase the amount of fuel during acceleration to eliminate the lean state during acceleration. However, as shown in FIG. 20(C), if the acceleration increase is a constant amount during acceleration, the latter half of the power-low speed becomes rich. Therefore, in this embodiment, as shown in FIG. 20 (D), the amount is increased (
40) Thick comb, the amount of correction gradually decreases in the later stages.

このフローチャートが第21図に示されている。This flowchart is shown in FIG.

すなわち、l0m58c毎に入るインターバル割込によ
って起動し、ステップ1050において加速か否かを判
定し、加速と判定すると、ステップ1051において加
速時の補正分と、初期値を計算する。
That is, it is activated by an interval interrupt that occurs every 10m58c, and in step 1050 it is determined whether or not acceleration is occurring.If it is determined that acceleration is occurring, in step 1051, a correction amount for acceleration and an initial value are calculated.

次にステップ1052において補正回数をカウンタにセ
ットする。次に、ステップ1053において、エンジン
のクランク角180 毎に入る回転角信号が入ったか否
かを判定し、回転角信号が入ると、ステップ1054に
おいてカウンタを1減算し、ステップ1055において
補正初期値とカウンタ値とから直線的に減少する補正分
の計算を行なう。次にステップ1056において、ステ
ップ1055において計算された加速補正分を基本噴射
量に加算してレジスタにセットする。次に、ステップ1
057においてカウンタ値がOか否かを判定し、0でな
いと判定するとステップ1053に戻る。
Next, in step 1052, the number of corrections is set in a counter. Next, in step 1053, it is determined whether or not a rotation angle signal is input every 180 crank angles of the engine. When a rotation angle signal is input, the counter is decremented by 1 in step 1054, and the corrected initial value is set in step 1055. A correction amount that decreases linearly from the counter value is calculated. Next, in step 1056, the acceleration correction amount calculated in step 1055 is added to the basic injection amount and set in a register. Next, step 1
At step 057, it is determined whether the counter value is O or not, and if it is determined not to be 0, the process returns to step 1053.

また、本実施例においては、ゆっくりの加速の場合(加
速期間が200m5ec〜500m%と長い(41) もの)は、加速検出回数(10msecに1回の割で検
出している)が多く、その都度割込噴射を行なうことに
なるので、1回の加速時に、最初の1回の割込み噴射を
行ない、その後加速検出しても割込み噴射しないように
している。この制御フローチャートが第22図に示され
ている。すなわち、ステップ1001においてスロット
ル開度の取込みが、lomseo毎のインターバル割込
みによって行われ、このスロットル開度がAD変換され
T(、AMに格納される。次に、このスロットル開度T
Hと、30m5ec前に取込んだスロットル開度TR(
OLD)との差JTyrをステップ1002において求
める。
In addition, in this example, in the case of slow acceleration (long acceleration period of 200 m5ec to 500 m% (41)), the number of acceleration detections (detected once every 10 msec) is large; Since interrupt injection is performed each time, the first interrupt injection is performed during one acceleration, and no interrupt injection is performed even if acceleration is detected thereafter. This control flowchart is shown in FIG. That is, in step 1001, the throttle opening degree is captured by an interval interrupt every romseo, and this throttle opening degree is AD converted and stored in T(, AM.Next, this throttle opening degree T
H and throttle opening TR taken 30m5ec ago (
In step 1002, the difference JTyr with respect to OLD) is determined.

このΔTHの値が、ステップ1003において、レベル
1(スロットル開度1°〜2.5°)よシ大きいか否か
を判定し、大きくないと判定するとステップ1004に
おいてフラグ1をリセットする。また、ΔTRがレベル
1より太きいときは、ステップ1005においてレベル
2(スロットル開[2,5゜〜5°)より大きいか否か
を判定する。このステップ1005において小さいと判
定すると、水温に(42) よって定まる補正係数に1 の値をマツプ検索して(ス
テップ1006 )ステップ1007において前記レベ
ル2に応じた加速補正分計算を行ない、ステップ100
8においてフラグ1がOか否かを判定する。このステッ
プ1008においてフラグ1が0でないと判定するとそ
のまま抜ける。また、フラグ1がOであると判定すると
ステップ1009において割込噴射して、ステップ10
10においてフラグ1をセットする。
In step 1003, it is determined whether the value of ΔTH is greater than level 1 (throttle opening 1° to 2.5°), and if it is determined not to be larger, flag 1 is reset in step 1004. If ΔTR is larger than level 1, it is determined in step 1005 whether it is larger than level 2 (throttle open [2.5° to 5°). If it is determined in step 1005 that it is small, a value of 1 is searched in the correction coefficient determined by the water temperature (42) (step 1006), and an acceleration correction amount corresponding to the level 2 is calculated in step 1007.
8, it is determined whether flag 1 is O or not. If it is determined in step 1008 that flag 1 is not 0, the process exits. Further, if it is determined that flag 1 is O, interrupt injection is performed in step 1009, and step 10
10, flag 1 is set.

また、ステップ1005においてΔTHがレベル2より
太きいと判定すると、ステップ1011において、ΔT
Hがレベル3(スロットル開IJj5°〜7° )より
大きいか否かを判定する。このステップ1011におい
てΔToがレベル3よシ大きくないと判定するとステッ
プ1012において水温より定まる補正係数に1をマツ
プ検索する。このに1に基づいた基準加速補正分を加え
たレベル3に応じた加速補正分をステップ10J3にお
いて計算し、ステップ1014においてフラグ2がOか
否かを判定する。このステップ1014においてフラグ
2が(43) 0であると判定すると、ステップ1015において割込
噴射を行ない、ステップ1016においてフラグ2をセ
ットする。
Further, if it is determined in step 1005 that ΔTH is thicker than level 2, in step 1011, ΔT
It is determined whether H is greater than level 3 (throttle opening IJj 5° to 7°). If it is determined in step 1011 that ΔTo is not greater than level 3, in step 1012 a map search of 1 is performed on a correction coefficient determined from the water temperature. In step 10J3, an acceleration correction amount corresponding to level 3, which is the addition of the standard acceleration correction amount based on 1, is calculated in step 10J3, and in step 1014, it is determined whether flag 2 is O or not. If it is determined in step 1014 that flag 2 is (43) 0, interrupt injection is performed in step 1015, and flag 2 is set in step 1016.

また、ステップ1011においてΔTHがレベル3より
大きいと判定すると、ステップ1017においてΔTH
がレベル4(スロットル開度7°以上)に等しいか否か
を判定する。このステップ1017において等しくない
と判定するとステップ1018において水温によって定
凍る補正係数に、をマツプ検索し、ステップ1019に
おいて、レベル4に応じた加速補正分計算を行なう。次
にステップ1020においてフラグ3が0か否かを判定
し、0でないと判定するとステップ1021において割
込噴射ヲ行ない、ステップ1022においてフラグ3を
セットする。なお各レベルに応じて加速補正量が異なる
Further, if it is determined in step 1011 that ΔTH is greater than level 3, in step 1017 ΔTH
It is determined whether or not is equal to level 4 (throttle opening degree of 7 degrees or more). If it is determined in step 1017 that they are not equal, then in step 1018 a map is searched for the correction coefficient fixed depending on the water temperature, and in step 1019 an acceleration correction amount corresponding to level 4 is calculated. Next, in step 1020, it is determined whether or not flag 3 is 0. If it is determined that it is not 0, interrupt injection is performed in step 1021, and flag 3 is set in step 1022. Note that the acceleration correction amount differs depending on each level.

また、ステップ1017においてΔT■がレベル4に等
しいと判定するとステップ1023において水温より定
まる補正係数に、をマツプ検索し、ステップ1024に
おいて加速補正分を計算して、ス(44) テップ1025において割込噴射を行なう。
Further, if it is determined in step 1017 that ΔT is equal to level 4, a map is searched for a correction coefficient determined from the water temperature in step 1023, an acceleration correction amount is calculated in step 1024, and an interrupt is performed in step 1025. Perform injection.

以下、第23図乃至第25図に基づきI NTV割込処
理について説明する。第20図はRAM106に設けら
れたソフトタイマテーブルであり、このソフトタイマテ
ーブルには各種割込みによシ起動される異なる起動周期
の数だけのタイマブロックが設けられている。ここでタ
イマブロックとはROM104に格納されているタスク
の起動周期に関する時間情報が転送される記憶エリアを
指している。同図に訃いて、左端に記述されているTM
BはRAM106に於けるソフトタイマテーブルの先頭
番地を意味する。このソフトタイマテーブルの各タイマ
ブロックにはエンジン始動時にRAM106より前記起
動周期に関する時間情報、即ちINTV割込みを例えば
IQms毎に行う場合にはその整数倍の値が転送され、
格納される。
The INTV interrupt processing will be explained below based on FIGS. 23 to 25. FIG. 20 shows a soft timer table provided in the RAM 106, and this soft timer table is provided with as many timer blocks as the number of different activation cycles activated by various interrupts. Here, the timer block refers to a storage area to which time information regarding the activation cycle of tasks stored in the ROM 104 is transferred. TM who died in the same figure and is written on the left end
B means the starting address of the soft timer table in the RAM 106. To each timer block of this soft timer table, time information regarding the startup cycle is transferred from the RAM 106 when the engine is started, that is, when an INTV interrupt is performed, for example, every IQms, a value that is an integer multiple of the time information is transferred from the RAM 106.
Stored.

次に第24図にINTV割込み処理606の処理フロー
を示す。同図に於いてステップ626でプログラムが起
動されるとステップ628でI(、AM106に設けら
れたソフトタイマテーブルのイニ(45) シャルライズが行われる。即ち、インテ・ンクスレジス
タの内容iを0にし前記ソフトタイマテーブルの番地T
 M B + Oのタイマブロックに記憶されている残
り時間T、を調べる。ここでこの場合にlj: T t
 = ’11’ oである。次にステップ630で上記
ステップ628で調べたソフトタイマが停止中であるか
否かが判断される。即ち、ソフトタイマテーブルに記憶
されている残り時間T1がT1=0である場合にはソフ
トタイマは停止中であると判断され、該ソフトタイマに
よシ起動されるべき該当タスクは停止中であると判断さ
れ、ステップ640にジャンプし、ソフトタイマテーブ
ルの更新が行われる。
Next, FIG. 24 shows the processing flow of INTV interrupt processing 606. In the same figure, when the program is started at step 626, the I(, initialization (45) of the soft timer table provided in AM106) is performed at step 628. That is, the content i of the index register is set to 0. Address T of the soft timer table
The remaining time T stored in the timer block of M B + O is checked. Here in this case lj: T t
= '11' o. Next, in step 630, it is determined whether the soft timer checked in step 628 is stopped. That is, if the remaining time T1 stored in the soft timer table is T1=0, it is determined that the soft timer is stopped, and the corresponding task to be started by the soft timer is stopped. It is determined that the process jumps to step 640, and the soft timer table is updated.

一方、ソフトタイマテーブルの残り時間T、がT、\0
である場合にはステップ632に移行し前記タイマブロ
ックの残り時間の更新が行われる。
On the other hand, the remaining time T in the soft timer table is T,\0
If so, the process moves to step 632 and the remaining time of the timer block is updated.

Illち、残り時間T、から−1だけディクリメントさ
れる。次にステップ634では前記タイマテーブルのソ
フトタイマが起動周期に達したか否かが判断される。即
ち残り時間T、がT、=0である(46) 場合には起動周期に達したと判断されその場合にはステ
ップ636に移行する。又ソフトタイマが起動周期に達
していないと判断される場合にはステップ640にジャ
ンプし、ソフトタイマテーブルの更新が行われる。前記
ソフトタイマテーブルが起動周期に達している場合には
ステップ636でソフトタイマテーブルの残り時間T1
 を初期化する。即ち、’R,0M104よりRAM1
06へ該当タスクの起動周期の時間情報を転送する。そ
してステップ636で前記ソフトタイマテーブルの残り
時間T、を初期化した後、ステップ638でそのソフト
タイマテーブルに該当するタスクの起動要求を行う。次
にステップ640でソフトタイマテーブルの更新を行う
。即ち、インデックスレジスタの内容を+1インクリメ
ントする。更にステップ642では全部のソフトタイマ
テーブルをチェックしたか否かが判断される。即ち、第
24図に示したように本実施例ではソフトタイマテーブ
ルをN+1個だけ設けであるのでインデックスレジスタ
の内容iがi=N+1である場合には全部(47) フトタイマテーブルのチェックが完了したと判断されス
テップ644でINTV割込み処理プログラム606は
終了する。一方ステップ642で全ソフトタイマテーブ
ルがチェックされていないと判断された場合にはステッ
プ630に戻り、前述と同様の処理が行われる。
Ill, the remaining time T is decremented by -1. Next, in step 634, it is determined whether the soft timer in the timer table has reached its activation cycle. That is, if the remaining time T, is T,=0 (46), it is determined that the activation period has been reached, and in that case, the process moves to step 636. If it is determined that the soft timer has not reached its activation period, the process jumps to step 640, and the soft timer table is updated. If the soft timer table has reached the activation period, the remaining time T1 of the soft timer table is determined in step 636.
Initialize. That is, 'R,0M104 to RAM1
The time information of the activation cycle of the corresponding task is transferred to 06. After initializing the remaining time T in the soft timer table in step 636, a request is made to start the task corresponding to the soft timer table in step 638. Next, in step 640, the soft timer table is updated. That is, the contents of the index register are incremented by +1. Further, in step 642, it is determined whether all soft timer tables have been checked. That is, as shown in FIG. 24, in this embodiment, only N+1 soft timer tables are provided, so if the content i of the index register is i=N+1, all (47) soft timer tables have been checked. It is determined that the INTV interrupt processing program 606 is terminated in step 644. On the other hand, if it is determined in step 642 that all soft timer tables have not been checked, the process returns to step 630 and the same process as described above is performed.

以上の様にして各種の割込みに応じて該当タスクの起動
要求が出され、それに基づいて該当タスクの実行が為さ
れるが、表2に掲げられたタスク群が常にすべてが実行
されるので(riなく、エンジンの運転情報に基づいて
R,0M104に設けられている前記タスク群の起動周
期に関する時間情報を選択してFtAM106のソフト
タイマテーブル中に転送し格納する。そして与えられた
そのタスクの起動周期が例えば20m5であるとすれば
、その時間毎にタスクが起動されるがそのタスクの起動
が運転条件に応じて継続して行う必要があるものであれ
ばnにそのタスクに該当するソフトタイマテーブルは更
新して初期化される。次にエンジンの運転条件に応じて
各種割込みにより前記タスク(48) 群が起動停止される様子を第25図に示すタイムチャー
トにより説明する。スタータスイッチ152(第5図)
の操作によりパワーオンの状態になるとCPUが作動し
、ソフトウェアフラグIS’ll’及びソフトウェアフ
ラグEMに1が立てられる。ソフトウェアフラグIST
はエンジンが始動前の状態にあることを示すフラグであ
り、ソフトウェアフラグEMはENS’I’割込みを禁
止するためのフラグである。これらの2つのフラグによ
りエンジンが始動前の状態にあるか或いは始動中か又は
始動後の状態にあるかの判別が為される。さてスタータ
スイッチ152の操作によシハワーオンの状態になると
先ず最初にタスクADINIが起動され各種センサによ
りエンジンの始動に必要なデータ例えば冷却水温度、バ
ッテリ電圧等の入力情報がマルチプレクサ120を介し
てAD変換器122に取込まれ、これらのデータの一巡
入力毎にタスクHO8EIタスク補正が起動され前記入
力情報に基づき補正計算が行われる。又前記タスクAD
INIによ、9AD変換器122に各種センサからのデ
ー(49) りの−巡入力毎にタスクl5T)LTが起動されエンジ
ン始動中に必要な燃料噴射量の計算がなされる。
As described above, a request to start the relevant task is issued in response to various interrupts, and the relevant task is executed based on the request, but all of the task groups listed in Table 2 are always executed ( ri, selects the time information regarding the activation cycle of the task group provided in the R,0M 104 based on the engine operating information, and transfers and stores it in the soft timer table of the FtAM 106. For example, if the activation cycle is 20m5, a task will be activated every time, but if the task needs to be activated continuously depending on the operating conditions, then the software corresponding to that task will be added to n. The timer table is updated and initialized.Next, how the task (48) group is started and stopped by various interrupts depending on the engine operating conditions will be explained with reference to the time chart shown in FIG.25.Starter switch 152 (Figure 5)
When the power is turned on by the operation, the CPU is activated and 1 is set in the software flag IS'll' and the software flag EM. Software flag IST
is a flag indicating that the engine is in a pre-start state, and software flag EM is a flag for prohibiting ENS'I' interrupts. These two flags are used to determine whether the engine is in a pre-starting state, in a starting state, or in a post-starting state. Now, when the engine is turned on by operating the starter switch 152, the task ADINI is activated first, and input information such as cooling water temperature, battery voltage, etc. necessary for starting the engine is inputted via the multiplexer 120 to AD conversion by various sensors. The task HO8EI task correction is activated every time these data are inputted once to the device 122, and correction calculations are performed based on the input information. Also, the task AD
According to INI, task 15T)LT is started every time data (49) is input to the 9AD converter 122 from various sensors, and the fuel injection amount required during engine starting is calculated.

以上の3つのタスク、即ちタスクADIN1、タスクH
O8EI及びタスクI S TR,Tはイニシャル処理
プログラム202により起動されるものである。
The above three tasks, namely task ADIN1 and task H
O8EI and task ISTR,T are started by the initial processing program 202.

スタータスイッチ152がON状態になるとタスクl5
TR,Tの割込み信号によレジスタADINI、タスク
MONIT及びタスクADIN2  の3つのタスクに
起動が掛けられる。即ち、これらのタスクはスタータス
イッチ152がON状態になっている期間(エンジンの
クランキング時)のみ実行される必要がある。この期間
ではROM104からRAM106に設けられた前記タ
スクにそれぞれ該当するソフトタイマテーブルに所定の
起動周期の時間情報が転送され格納される。そしてこの
期間は前記ソフトタイマテーブルの起動周期の残り時間
TIは初期化され起動周期の設定が繰り返し行われる。
When the starter switch 152 is turned on, task l5
Three tasks, register ADINI, task MONIT, and task ADIN2, are activated by the interrupt signals TR and T. That is, these tasks need to be executed only while the starter switch 152 is in the ON state (during cranking of the engine). During this period, time information of a predetermined activation cycle is transferred from the ROM 104 to a soft timer table provided in the RAM 106 that corresponds to each of the tasks and is stored therein. During this period, the remaining time TI of the activation cycle in the soft timer table is initialized and the activation cycle is repeatedly set.

タスクMONI’[’はエンジン始動時の燃料噴射量を
計算するためのタスクでありエンジン始動後は不要なタ
スクであるので所定の回数だけり(50) スフの実行を終了したらソフトタイマの起動を停止し、
そのタスク終了時に発せられる停止信号により上記以外
のエンジン始動後に必要なタスク群の起動を行う。ここ
でタスクの停止をソフトタイマにより行うにはそのタス
クの終了に於ける判断時点でそのタスクが終了したこと
を示す信号によシそのタスクの該当するソフトタイマテ
ーブルに0″に格納する。即ちソフトタイマの内容をク
リアすることによレジスタの停止を行うものである。
Task MONI'[' is a task to calculate the fuel injection amount when starting the engine, and it is unnecessary after the engine starts, so it is only required to run a predetermined number of times (50). When the execution of Suff is finished, start the soft timer. stop,
A stop signal issued at the end of the task activates a group of tasks other than those mentioned above that are required after the engine is started. In order to stop a task using a soft timer, a signal indicating that the task has ended is stored at 0'' in the soft timer table corresponding to the task at the time when the task is determined to have ended. The register is stopped by clearing the contents of the soft timer.

したがって、タスクの起動停止をソフトタイマにより簡
単に行えるように構成したので異なる起動周期を有する
複数のタスクに対し能率的且つ信頼性有る管理を行うこ
とが可能となる。
Therefore, since the configuration is such that tasks can be easily activated and stopped using a soft timer, it is possible to efficiently and reliably manage a plurality of tasks having different activation cycles.

次に1几Qの発生回路を第26図に示す。レジスタ73
5とカウンタ736と比較器737とフリップフロップ
738はINTV  IRQ の発生回路であり、レジ
スタ735にINTV  IRQ の発生周期例えば本
実施例では10〔ms〕がセットされる。これに対しク
ロックパルスがカウンタ736ヘセツトされ、そのカウ
ント値がレジスタ(51) 735と一致するとフリップフロップ738をセット状
態とする。このセット状態でカウンタ736をクリアし
、再びカウントを再開する。従って一定時間(10ms
ec)ごとにINTV  II(、Q、が発生する。
Next, FIG. 26 shows a 1-liter Q generation circuit. register 73
5, a counter 736, a comparator 737, and a flip-flop 738 are an INTV IRQ generation circuit, and the INTV IRQ generation cycle is set in the register 735, for example, 10 [ms] in this embodiment. In response, a clock pulse is set to the counter 736, and when the count value matches the register (51) 735, the flip-flop 738 is set. In this set state, the counter 736 is cleared and counting is restarted again. Therefore, for a certain period of time (10ms
INTV II(,Q,) occurs every time,ec).

レジスタ741とカウンタ742と比較器743、フリ
ップフロップ744はエンジンの停止を検知するENS
T  IRQ の発生回路である。レジスタ741とカ
ウンタ742と比較器743は上の説明と同様であり、
カウント値がレジスタ741の値に達するとENST 
 IRQを発生する。しかしエンジンの回転中はクラン
ク角センサよリ一定りランク角毎に発生する1% E 
Fパルスによりカウンタ742がクリアされるのでカウ
ンタ742のカウント値がレジスタ741の値に達しな
いのでENST  IRQは発生しない。
A register 741, a counter 742, a comparator 743, and a flip-flop 744 are an ENS that detects engine stoppage.
This is a T IRQ generation circuit. The register 741, counter 742, and comparator 743 are the same as described above,
When the count value reaches the value of register 741, ENST
Generates an IRQ. However, while the engine is rotating, a constant 1% E is generated for each rank angle based on the crank angle sensor.
Since the counter 742 is cleared by the F pulse, the count value of the counter 742 does not reach the value of the register 741, so the ENST IRQ is not generated.

フリップフロップ738に発生したINTVIRQやフ
リップフロップ744に発生したENST  I)(Q
さらにADCIやAI)C2で発生したIR,Qはそれ
ぞれフリップフロップ7(52) 746、764,768ヘセツトされる。またフリップ
フロップ737,745,762,766にはIRQ.
を発生させるか禁止するかの信号がセットされる。フリ
ップフロップ737,745。
INTVIRQ generated in flip-flop 738 and ENST I) (Q) generated in flip-flop 744.
Further, IR and Q generated in ADCI and AI) C2 are set in flip-flops 7 (52) 746, 764, and 768, respectively. Also, flip-flops 737, 745, 762, and 766 have IRQ.
A signal is set to enable or prohibit the occurrence of Flip-flops 737, 745.

762、766に°゛H″がセットされていればAND
ゲート748,750,770,772は能動となp,
In,Qが発生するとORゲートよシただちにIRQが
発生する。
If °゛H'' is set in 762 and 766, AND
Gates 748, 750, 770, 772 are active p,
When In and Q are generated, IRQ is generated immediately by the OR gate.

従って7リツプフロツプ737,745。Therefore, 7 lip-flops 737, 745.

7 62、7 66(7)11.ぞれKuH”を入るか
L″′を入るかによってIll,Q.の発生を禁止した
シ、禁止を解除したりできる。またIR,Qが発生する
と7リツプフロツプ740,745,764,768の
内容をCPUに取り込むことにより、IRQ発生の原因
が解かる。
7 62, 7 66 (7) 11. Ill, Q. depending on whether KuH" or L"' is entered respectively. If you have prohibited the occurrence of this, you can cancel the prohibition. Furthermore, when IR and Q occur, the cause of the IRQ occurrence can be determined by loading the contents of seven lip-flops 740, 745, 764, and 768 into the CPU.

IRQに応じてCPUがプログラムを実行し始めた場合
、そのIR,Q信号はクリアする必要があるので実行を
始めたIR.Qに関するフリップフロ;ツブ740,7
46,764,768の1つをクリアする。
When the CPU starts executing a program in response to IRQ, the IR and Q signals need to be cleared. Flip flow regarding Q; Tube 740,7
Clear one of 46,764,768.

(53) 〔発明の効果〕 以上説明したように、本発明によれば、加速時に最適な
エンジン制御を行なうことができる。
(53) [Effects of the Invention] As explained above, according to the present invention, optimal engine control can be performed during acceleration.

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

第1図はクランク軸回転角度に対するホットワイヤ出力
電圧Vの出力特性図、第2図はエンジン系統全体の制御
装置を示す構成図、第3図は第2図の点火装置の説明図
、第4図は排気ガス環流システムを説明するための構成
図、第5図はエンジン制御システムの全体構成図、第6
図は本発明に係わるエンジン制御方法のプログラムシス
テムの基本的構成を示す図、第7図はタスクディスパッ
チャの管理するR,AMに設けられたタスク制御ブロッ
クのテーブルを示す図、第8図は各種割込みにより起動
されるタスク群のスタートアドレステーブルを示す図、
第9図及び第10図はタスクディスパッチャの処理フロ
ーを示す図、第11図はマク、口処理プログラムの処理
フローを示す図、第12図はタスク優先制御の一例を示
す図、第13図は上記タスク優先制御に於けるタスクの
状態遷(54) 移を示す図、第14図は第6図に於ける具体的フローを
示す図、第15図はホットワイヤ出力電圧取込タイミン
グを示す図、第16図は本発明の実施例を示す吸入空気
流量と噴射タイミングを示す図、第17図は割込処理の
フローチャート、第18図は水温による比較レベル変更
を示す図、第19図は加速時のフローチャート、第20
図は加速補正タイムチャート、第21図は第20図のフ
ローチャート、第22図は加速時の燃料増量フローチャ
ート、第23図はR,AMに設けられたソフトタイマテ
ーブルを示す図、第24図はINTV割込み処理プログ
ラムの処理フロチャート、第25図はエンジンの運転状
態に応じて各種タスクの起動が行われる様子を示したタ
イミングチャート、第26図は割込みIRQの発生回路
図である。 102・・・CPU、104・・・ROM、106・・
・RA−M 。 602・・・IN’I’L割込処理、610・・・空気
量信号(55) 范3図 范4(¥1 第7図 5i2)8日 スタート 第9図 噌/Q図 弔II図 早 /9 図 第2θ図 ハ硼5et 早 21  国 特開昭59−74337(22) 第 22  図 早  23  日 第  24  目 乙26 ソフトクイマチ−九の4二一ンヤライ      乙2
3る −〇 630    ソフトタイマ4道中か   。。 ソフトタイマテープjしの Lに ・0 乙゛32        9 口q  IS!+  史
 イイ「11−/→tL 乙34    ”ψカ 「■甘口・・シEし・か  〜
・6乙 ・ O es 636  ソフ1、タイマテーフ゛ルのtbt  J刀
゛H月イしする 乙38#亥当タスクの起動扛
Fig. 1 is an output characteristic diagram of the hot wire output voltage V with respect to the crankshaft rotation angle, Fig. 2 is a configuration diagram showing the control device of the entire engine system, Fig. 3 is an explanatory diagram of the ignition system in Fig. 2, and Fig. 4 The figure is a block diagram for explaining the exhaust gas recirculation system, Figure 5 is an overall block diagram of the engine control system, and Figure 6 is a block diagram for explaining the exhaust gas recirculation system.
The figure shows the basic configuration of the program system of the engine control method according to the present invention, FIG. 7 shows a table of task control blocks provided in R and AM managed by the task dispatcher, and FIG. 8 shows various types of task control blocks. A diagram showing a start address table of a task group activated by an interrupt,
Figures 9 and 10 are diagrams showing the processing flow of the task dispatcher, Figure 11 is a diagram showing the processing flow of the Mac and mouth processing program, Figure 12 is a diagram showing an example of task priority control, and Figure 13 is a diagram showing the processing flow of the task dispatcher. A diagram showing the state transition (54) of the task in the above task priority control, FIG. 14 is a diagram showing the specific flow in FIG. 6, and FIG. 15 is a diagram showing the hot wire output voltage acquisition timing. , Fig. 16 is a diagram showing the intake air flow rate and injection timing showing an embodiment of the present invention, Fig. 17 is a flowchart of interrupt processing, Fig. 18 is a diagram showing comparison level change depending on water temperature, and Fig. 19 is a diagram showing acceleration. Flowchart of Time, No. 20
The figure shows the acceleration correction time chart, Figure 21 is the flowchart of Figure 20, Figure 22 is the fuel increase flowchart during acceleration, Figure 23 is a diagram showing the soft timer table provided in R and AM, and Figure 24 is the flowchart of Figure 20. FIG. 25 is a processing flowchart of the INTV interrupt processing program, FIG. 25 is a timing chart showing how various tasks are activated depending on the operating state of the engine, and FIG. 26 is an interrupt IRQ generation circuit diagram. 102...CPU, 104...ROM, 106...
・RA-M. 602...IN'I'L interrupt processing, 610...Air amount signal (55) Fan 3 diagram Fan 4 (¥1 Figure 7 5i2) Starting on the 8th Figure 9 / Q diagram Funeral II diagram early /9 Figure 2θ Figure 5et Early 21 National Patent Publication No. 59-74337 (22) No. 22 Figure Early 23rd Day 24th Otsu 26 Soft gusset - 9-421 Nyarai Otsu 2
3ru -〇630 Soft timer 4 on the way. . Soft timer tape j to L ・0 ゛゛32 9 口q IS! + history ``11-/→tL Otsu 34 ``ψka ``■Sweet...shiEshi-ka ~
・6 Otsu ・O es 636 Software 1, timer table tbt J sword H month Issuing Otsu 38# Start of the task

Claims (1)

【特許請求の範囲】 1、 スロットルバルブの開度を一定時間毎に検出し所
定時間毎に差検出し刀口速状態を検出する手段を備えた
燃料噴射装置において、上記検出差が予め定められてい
る4つのレベルのいずれに属するかを検出する手段と、
検出されたレベルに応じた補正量を追加噴射する手段を
設けたことを特徴とする燃料噴射装置。 2、特許請求の範囲第1項記載の発明において、上記補
正量は、減速時又はアイドル時からの加速のときは通常
加速時の補正量の所定倍であることを%徴とする燃料噴
射装置。 3、特許請求の範囲第1項又は第2項記載の発明におい
て、上記補正量は、加速初期から順次小さく制御するこ
とを特徴とする燃料噴射装置。
[Scope of Claims] 1. In a fuel injection device equipped with means for detecting the opening degree of a throttle valve at fixed time intervals, detecting a difference at predetermined time intervals, and detecting a tip speed state, the detected difference is predetermined. means for detecting which of the four levels it belongs to;
A fuel injection device characterized by comprising means for additionally injecting a correction amount according to a detected level. 2. The fuel injection device according to claim 1, wherein the correction amount is a predetermined times the correction amount during normal acceleration during deceleration or acceleration from idling. . 3. The fuel injection device according to claim 1 or 2, wherein the correction amount is controlled to decrease gradually from the beginning of acceleration.
JP18290282A 1982-10-20 1982-10-20 Fuel injector Pending JPS5974337A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP18290282A JPS5974337A (en) 1982-10-20 1982-10-20 Fuel injector
EP83110424A EP0106366B1 (en) 1982-10-20 1983-10-19 Control method for internal combustion engines
DE8383110424T DE3376995D1 (en) 1982-10-20 1983-10-19 Control method for internal combustion engines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18290282A JPS5974337A (en) 1982-10-20 1982-10-20 Fuel injector

Publications (1)

Publication Number Publication Date
JPS5974337A true JPS5974337A (en) 1984-04-26

Family

ID=16126371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18290282A Pending JPS5974337A (en) 1982-10-20 1982-10-20 Fuel injector

Country Status (1)

Country Link
JP (1) JPS5974337A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62182453A (en) * 1985-12-27 1987-08-10 Japan Electronic Control Syst Co Ltd Interruption increased fuel quantity controller in acceleration for electronically controlled fuel injection type internal combustion engine
JPS63113161A (en) * 1986-10-31 1988-05-18 Japan Electronic Control Syst Co Ltd Acceleration judging device for internal combustion engine
DE3934498A1 (en) * 1988-10-14 1990-04-26 Hitachi Ltd CONTROL DEVICE FOR AN INTERNAL COMBUSTION ENGINE

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS575524A (en) * 1980-06-11 1982-01-12 Honda Motor Co Ltd Fuel correcting device in acceleration of efi engine

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS575524A (en) * 1980-06-11 1982-01-12 Honda Motor Co Ltd Fuel correcting device in acceleration of efi engine

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62182453A (en) * 1985-12-27 1987-08-10 Japan Electronic Control Syst Co Ltd Interruption increased fuel quantity controller in acceleration for electronically controlled fuel injection type internal combustion engine
JPS63113161A (en) * 1986-10-31 1988-05-18 Japan Electronic Control Syst Co Ltd Acceleration judging device for internal combustion engine
DE3934498A1 (en) * 1988-10-14 1990-04-26 Hitachi Ltd CONTROL DEVICE FOR AN INTERNAL COMBUSTION ENGINE
US4976243A (en) * 1988-10-14 1990-12-11 Hitachi, Ltd. Internal combustion engine control system

Similar Documents

Publication Publication Date Title
US4482962A (en) Engine control method
JPS6212384B2 (en)
JPS59221435A (en) Control method for fuel injection
US4469072A (en) Method and apparatus for controlling the fuel-feeding rate of an internal combustion engine
US4363097A (en) Electronic type engine control method
JPS6350546B2 (en)
JPH0375740B2 (en)
KR880001665B1 (en) Fuel injection control apparatus for internal combustion engine
KR920003200B1 (en) Engine control device
EP0106366B1 (en) Control method for internal combustion engines
JPS5974340A (en) Fuel injector
JPS5974337A (en) Fuel injector
JPS5974339A (en) Fuel injector
JPS6218748B2 (en)
JPS6327533B2 (en)
US4522178A (en) Method of fuel control in engine
JPS5895214A (en) Signal processing method for hot-wire flow rate sensor
JPH0138176B2 (en)
JPS5974338A (en) Fuel injector
JPH0118443B2 (en)
JPS58150047A (en) Fuel injection controller of internal-combustion engine
JPS6240645B2 (en)
JPH0118256B2 (en)
JPS61223239A (en) Starting fuel injection controller of internal-combustion engine
JPS5841361A (en) Electronic type engine controller