JPS6338547B2 - - Google Patents

Info

Publication number
JPS6338547B2
JPS6338547B2 JP52125969A JP12596977A JPS6338547B2 JP S6338547 B2 JPS6338547 B2 JP S6338547B2 JP 52125969 A JP52125969 A JP 52125969A JP 12596977 A JP12596977 A JP 12596977A JP S6338547 B2 JPS6338547 B2 JP S6338547B2
Authority
JP
Japan
Prior art keywords
signal
register
input
data
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP52125969A
Other languages
Japanese (ja)
Other versions
JPS5458111A (en
Inventor
Masao Takato
Masumi Imai
Yoshitaka Shioiri
Hiroatsu Tokuda
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 JP12596977A priority Critical patent/JPS5458111A/en
Publication of JPS5458111A publication Critical patent/JPS5458111A/en
Publication of JPS6338547B2 publication Critical patent/JPS6338547B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Control By Computers (AREA)
  • Electrical Control Of Ignition Timing (AREA)
  • 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)

Description

【発明の詳細な説明】[Detailed description of the invention]

本発明は自動車の制御装置に関するもので、特
に点制御装置に関する。 近年特に厳しくなる自動車の排気ガス規制や安
全規制によつて次第に規模の大きい電子制御装置
が自動車に装着され始め、これら制御装置には複
雑でかつ精度の良い制御特性が要求されている。 この制御特性としては、例えば電子制御燃料噴
射装置におけるエンジン回転数と吸入される空気
流量等の入力情報に対する最適な燃料噴射特性や
点火進角特性がある。 そして、この各種入力情報に対するそれぞれの
制御特性を制御装置自体が記憶している必要があ
り、制御精度の向上の点から記憶方法はデジタル
メモリを用いてデジタル値で記憶することが必要
である。しかしデジタル値で記憶された入出力特
性は量子化されて階段的に表されるため、出力
(制御)特性を高精度で記憶させようとする膨大
な記憶容量を有するメモリが必要となり、有効な
メモリの使い方が問題となつている。 特に点火進角特性について見ると、第1にエン
ジンの空気流量と回転速度をパラメータとして特
性テーブルを構成した場合、回転速度が比較的低
くしかも空気流量が多い状態は現実の運転状態で
はおこりえず、エンジンの空気流量と回転速度を
パラメータとして特性テーブルを構成するとこの
ような現実に起こりえない状態が約40%程度存在
する。したがつて、この領域に対する記憶容量は
無駄となり、このことは逆に他の領域に特性が集
中するため精度確保の点から他領域での容量が更
に増大することになる。 第2に絞弁開度とエンジンの回転速度をパラメ
ータとして特性テーブルを構成した場合、絞り弁
開度は空気流量の変化と見掛け上近い関係を有し
ており空気流量と同様の問題があると共に変化特
性が空気流量ほど線形でなく実際上点火進角特性
のパラメータとしては適切でないという問題があ
る。 そして、自動車の走行状態に適応した制御を行
なうためには燃料噴射時間の制御や点火時期の制
御をエンジンの回転に同期して制御する必要があ
るが、エンジン回転数は600〜6000RPMと変化
し、高速では一回転当り10msであり、更に6気
筒エンジンの場合には3.3ms毎に点火する必要が
あり、点火進角制御(点火時期をエンジン回転の
ある一定点より何度前とするかを制御する)等に
高速の処理が要求される。このため点火進角特性
テーブルの検索時間を短くすることが必要で点火
進角特性テーブルを構成するメモリの記憶容量を
減少させることも必要となつている。 この他、エンジンの吸入負圧とエンジンの回転
速度をパラメータとして特性テーブルを構成した
場合、EGRの作動による吸入負圧の変動やエア
クリーナの詰まりによる吸入負圧の変動があり正
確な点火進角値が検索できないというパラメータ
上の問題がある。 本発明は上記欠点を解決するためになされたも
ので、その目的はメモリを有効に利用すると共に
記憶容量を少なくできる点火時期制御装置を提供
することである。 本発明の特徴は、 (a) エンジンに吸入される空気量情報を検出する
空気流量検出手段; (b) エンジンの回転数情報を検出する回転数検出
手段; (c) 前記空気量検出手段から得られる空気量情報
と前記回転数検出手段から得られる回転数情報
とに基づいて負荷情報を決定する負荷情報決定
手段; (d) 回転数情報と負荷情報とをそれぞれ所定数の
分割点にて分割し、この分割点順番に従つて決
定された番地に点火データを予め記憶した記憶
手段; (e) 前記負荷情報決定手段からの負荷情報と前記
回転数検出手段からの回転数情報に基づいて前
記記憶手段から対応した負荷情報及び回転数情
報により定まる点火データを読みだし、この読
み出された点火データに基づいて点火時期を制
御する点火制御手段 とよりなる点火時期制御装置にある。 次に本発明の実施例を図面を用いて説明する。 第1図は電子式エンジン制御装置の主要構成を
示すシステム図である。エアクリーナ12を通し
て取り込まれた空気はエアフローメータでその流
量が計測され、エアフローメータ14から空気流
量を表わす出力QAが制御回路10へ入力され
る。エアフローメータ14には吸入空気の温度を
検出するための吸気温センサ16が設けられ吸入
空気の温度を表わす出力TAが制御回路10へ入
力される。 エアフローメータ14を通過した空気はスロツ
トルチヤンバ18を通過し、インテークマニホー
ルド26から吸入弁32を介してエンジン30の
燃焼室34へ吸入される。燃焼室34へ吸入され
る空気の量はアクセルペダル22と機械的に連動
してスロツトルチヤンバ内に設けられているスロ
ツトルバルブ20の開度を変化させることにより
制御される。スロツトルバルブ20の開度はスロ
ツトル位置検出器24によりスロツトルバルブ2
0の位置が検出されることにより求められ、この
スロツトルバルブ20の位置を表わす信号QTH
はスロツトル位置検出器24から制御回路10へ
入力される。 スロツトルチヤンバ18にはアイドル用のバイ
パス通路42とこのバイパス通路42を通る空気
量を調整するアイドルアジヤストスクリユ44が
設けられている。エンジンがアイドリング状態で
運転されている場合、スロツトルバルブ20が全
閉状態に位置している。エアフローメータ14か
らの吸入空気はバイパス通路42を通して流れ、
燃焼室34へ吸入される。従つてアイドリング運
転状態の吸入空気量はアイドルアジヤストスクリ
ユの調整により変えられる。燃焼室で発生するエ
ネルギはバイパス通路42からの空気量によりほ
ぼ定まるので、アイドルアジヤストスクリユ44
を調整し、エンジンへの吸入空気量を変えること
により、アイドリング運転状態でのエンジン回転
速度を適正な値に調整することができる。 スロツトルチヤンバ18にはさらに別のバイパ
ス通路46とエアレギユレータ48が設けられて
いる。エアレギユレータ48は制御回路10の出
力信号NIDLに応じて通路46を通る空気量を制
御し、暖気運転時のエンジン回転速度の制御やス
ロツトルバルブ20の急変時のエンジンへの適正
な空気量の供給を行う。また必要に応じアイドル
運転時の空気流量を変えることもできる。 次に燃料供給系について説明すると、フユーエ
ルタンク50に蓄わえられている燃料はフユーエ
ルポンプ52に吸入され、フユーエルダンパ54
へ圧送される。フユーエルダンパ54はフユーエ
ルポンプ52からの燃料の圧力脈動を吸収し、所
定圧力の燃料をフユーエルフイルタ56を介して
燃圧レギユレータ62に送る。燃圧レギユレータ
からの燃料は燃料パイプ60を介してフユーエル
インジエクタ66に圧送され、制御回路10から
の出力INJによりフユーエルインジエクタ66が
開き燃料を噴射する。 フユーエルインジエクタ66からの燃料噴射量
はこのインジエクタ66の開弁時間と、インジエ
クタへ圧送されてくる燃料圧力と燃料が噴射され
るインテークマニホールド26との圧力差で定ま
る。しかしフユーエルインジエクタ66からの燃
料噴射料が制御回路10からの信号で決まる開弁
時間にのみ依存することが望ましい。そのためフ
ユーエルインジエクタ66への燃料圧力とインテ
ークマニホールド26のマニホールド圧力の差が
常に一定になるように燃圧レギユレータ62によ
りフユーエルインジエクタ66への圧送燃料圧力
を制御している。燃圧レギユレータ62には導圧
管64を介してインテークマニホールド圧が印加
され、この圧力に対し燃料パイプ60内の燃圧が
一定以上になると、燃料パイプ60とフユーエル
リターンパイプ58とが導通し、過剰圧に対応し
た燃料がフユーエルリターンパイプ58を介して
フユーエルタンク50へ戻される。このようにし
て燃料パイプ60内の燃圧とインテークマニホー
ルド内のマニホールド圧との差が常に一定に保た
れる。 フユーエルタンク50にはさらに燃料の気化し
たガスを吸収するためのパイプ68とキヤニスタ
70が設けられ、エンジンの運転時大気開口74
から空気を吸入し、吸収した燃料の気化ガスをパ
イプ72により、インテークマニホールドへ導び
き、エンジン30へ導びく。 上で説明した如くフユーエルインジエクタから
燃料が噴射され、吸入弁32がピストン74の運
動に同期して開き、空気と燃料の混合気が燃焼室
34へ導びかれる。この混合気が圧縮され、点火
プラグ36からの火花エネルギで燃焼することに
より、混合気の燃焼エネルギはピストンを動かす
運動エネルギに変換される。 燃焼した混合気は排気ガスとして排気弁(図示
せず)より排気管76、触媒コンバータ82、マ
フラ86を介して大気へ排気される。排気管76
には排気還流管78(以下EGRパイプと記す)
があり、この管を介して排気ガスの一部がインテ
ークマニホールド26へ導びかれる。すなわち排
気ガスの一部が再びエンジンの吸入側へ還流され
る。この還流量は排気ガス還流装置28の開弁量
で定まる。この開弁量は制御回路10の出力
EGRで制御され、さらに排気ガス還流装置28
の弁位置が電気信号に変換され、信号QEとして
制御回路10へ入力される。 排気管76にはλセンサ80が設けられてお
り、燃焼室34へ吸入された混合気の混合割合を
検出する。具体的にはO2センサ(酸素センサ)
が一般に使用され、排気ガス中の酸素濃度を検出
し、酸素濃度に応じた電圧Vλを発生する。λセ
ンサ80の出力Vλは制御回路10へ入力される。
触媒コンバータ82には排気温センサ84が設け
られており、排気温度に応じた出力TEが制御回
路10へ入力される。 制御回路10には負電源端子88と正電源端子
90が設けられている。さらに制御回路10より
上で述べた点火プラグ36の火花発生を制御する
信号IGNが点火コイル40の1次コイルに加え
られ、2次コイルに発生した高電圧が配電器38
を介して点火プラグ36へ印加され、燃焼室34
内で燃焼のための火花を発生する。さらに具体的
に述べると、点火コイル40には正電源端子92
が設けられ、さらに制御回路10には点火コイル
40の1次コイル電流を制御するためのパワート
ランジスタが設けられている。点火コイル40の
正電源端子92と制御回路10の負電源端子88
との間に、点火コイル40の1次コイルと上記パ
ワートランジスタとの直列回路を形成され、該パ
ワートランジスタが導通することにより点火コイ
ル40に電磁エネルギが蓄積され、上記パワート
ランジスタが遮断することにより上記電磁エネル
ギは高電圧を有するエネルギとして点火プラグ3
6へ印加される。 エンジン30には水温センサ96が設けられ、
エンジン冷却水94の温度を検出し、この温度に
応じた信号TWを制御回路10へ入力する。さら
にエンジン30にはエンジンの回転位置を検出す
る角度センサ98が設けられ、このセンサ98に
よりエンジンの回転に同期して例えば120度毎に
リフアレンス信号PRを発生し、またエンジンが
所定角度(例えば0.5度)回転する毎に角度信号
PCを発生する。これらの信号を制御回路10へ
入力する。 図中点線で示した100は負圧センサであり、
インテークマニホールド26の負圧に応じた電圧
VDを制御回路10へ入力する。 負圧センサ10としては具体的には半導体負圧
センサが考えられる。シリコンチツプの片側にイ
ンテークマニホールドのブースト圧を作用させ、
他方に大気圧あるいは一定圧を作用させる。場合
によつては真空でもよい。このような構造とする
ことによりピエゾ抵抗効果等の作用によりマニホ
ールド圧に応じた電圧VDが発生し、制御回路1
0へ印加される。 第2図は6気筒エンジンのクランク角に対する
点火タイミングと燃料噴射タイミングを説明する
動作図である。イはクランク角を表わし、クラン
ク角120゜毎にリフアレンス信号PRが角度センサ
98より出力される。すなわちクランク角の0゜,
120゜,240゜,360゜,480゜,600゜,720゜毎にリアレ

ス信号PRが制御回路10へ入力される。 図で、ロ,ハ,ニ,ホ,ヘ,ト各々第1気筒、
第5気筒、第3気筒、第6気筒、第2気筒、第4
気筒の動作を表わす。またJ1〜J6は各気筒の
吸入弁の開弁位置を表わす。各気筒の開弁位置は
第2図に示す如く、クランク角で120゜毎にずれて
いる。この開弁位置と開弁幅はそれぞれのエンジ
ン構造により多少異なるがほぼ図に示すようにな
つている。 図でA1〜A5はフユーエルインジエクタ66
の開弁時期すなわち、燃料噴射時期を表わす。各
噴射時期A1〜A5の時間幅JDはフユーエルイ
ンジエクタ66の開弁時間を表わす。この時間幅
JDはフユーエルインジエクタ66の燃料噴射量
を表わすと考えることができる。フユーエルイン
ジエクタ66は各気筒に対応して各々設けられて
いるがこれらのインジエクタは制御回路10内の
駆動回路に対し、各々並列に接続されている。従
つて制御回路10からの信号INJにより各気筒に
対応したフユーエルインジエクタは各々同時に開
弁し燃料を噴射する。第2図ロに示す第1気筒に
ついて説明する。クランク角360゜において発生し
た基準信号INTISに同期し、制御回路10より
出力信号INJが各気筒のマニホールドまたは吸気
ポートに設けられたフユーエルインジエクタ66
に印加される。これにより制御回路10で計算さ
れた時間JDだけA2で示す如く、燃料を噴射す
る。しかし第1気筒は吸気弁が閉じているので噴
射された燃料は第1気筒の吸気ポート付近に保持
され、シリンダ内には吸入されない。次にクラン
ク角720゜の点で生じる基準信号INTISに応じて再
び制御回路から各フユーエルインジエクタ66へ
信号が送られA3で示す燃料噴射が行なわれる。
この噴射とほぼ同時に第1気筒の吸気弁が開弁
し、この開弁でA2で噴射した燃料とA3で噴射
した燃料の両方を燃焼室へ吸入する。他の気筒に
ついても同様のことがいえる。すなわちハに示し
た第5気筒では吸気弁の開弁位置J5でA2とA
3で噴射された燃料が吸入される。ニに示す第3
気筒では吸気弁の開弁位置J3でA2で噴射され
た燃料の一部とA3で噴射された燃料とさらにA
4で噴射された燃料の一部が吸入される。A2で
噴射された一部の燃料とA4で噴射された一部の
燃料を合わせると1回分の噴射量になる。従つて
第3気筒の各吸気行程でもやはり2回の噴射量を
それぞれ収入することになる。ホ,ヘ,トに示す
第6気筒、第2気筒、第4気筒でも同様にフユー
エルインジエクタの2回分の噴射を1回吸気行程
で吸入する。以上の説明で分かるように制御回路
10よりの燃料噴射信号INJで指定される燃料噴
射量は収入するに必要な燃料の半分であり、フユ
ーエルインジエクタ66の2回の噴射で燃焼室3
4に吸入された空気に対応した必要燃料量が得ら
れる。 第2図でG1〜G6は第1気筒〜第6気筒に対
応した点火時期を示す。制御回路10内に設けら
れているパワートランジスタを遮断することによ
り点火コイル40の1次コイル電流を遮断し、2
次コイルに高電圧を発生する。この高電圧の発生
は点火時期G1,G5,G6,G2,G4のタイ
ミングで行なわれ、各気筒に設けられた点火プラ
グへ配電器38により配電される。これにより第
1気筒、第5気筒、第3気筒、第6気筒、第2気
筒、第4気筒の順序で各点火プラグに点火が行な
われ、燃料と空気の混合気は燃焼する。 第1図の制御回路10の詳細な回路構成を第3
図に示す。制御回路10の正電源端子90はバツ
テリの正端子110に接続され、VBなる電圧が
制御回路10へ供給される。電源電圧VBは定電
圧回路112で一定電圧PVCC、例えば5〔V〕
に一定保持される。この一定電圧PVCCはセント
ラルプロセツサ(以下CPUと記す。)、ランダム
アクセスメモリ(以下RAMと記す。)、リードオ
ンリメモリ(以下ROMと記す。)へ供給される。
さらに定電圧回路112の出力PVCCは出力回路
120へも入力される。 入出力回路120はマルチプレクサ122、ア
ナログデイジタル変換器124、パルス出力回路
126、パルス入力回路128、デイスクリート
入出力回路130等を有している。 マルチプレクサ122にはアナログ信号が入力
され、CPUからの指令に基づいて入力信号の1
つが選択されアナログデイジタル変換器124へ
入力される。アナログ入力信号として、第1図に
示した各センサ、すなわち水温センサ96、吸気
温センサ16、排気温センサ84、スロツトル位
置検出器24、排気ガス還流装置28、λセンサ
80、エアフローメータQAからそれぞれ、エン
ジンの冷却水温を表わすアナログ信号TW、吸気
温を表わすアナログ信号TA、排気ガス温度を表
わすアナログ信号TE、スロツトル開度を表わす
アナログ信号QTH、排気ガス還流装置の開弁状
態を表わすアナログ信号QE、吸入混合気の空気
過剰率を表わすアナログ信号Vλ、吸入空気量を
表わすアナログ信号QAがフイルタ132〜14
4を介してマルチプレクサ122へ入力される。
但し、λセンサ80の出力Vλはフイルタ回路を
有する増幅器142を介してマルチプレクサへ入
力される。 この他に大気圧センサ146から大気圧を表わ
すアナログ信号VPAがマルチプレクサに入力さ
れる。また正電源端子90゜から抵抗150,1
52,154の直列回路に電圧VBが抵抗160
を介して供給され、さらに上記抵抗の直列回路の
端子電圧をツエナ148で一定に押えている。抵
抗150と152および抵抗152と154の接
続点156と158の電圧VHとVLの値がマル
チプレクサ122へ入力されている。 上で述べたCPU114とRAM116、ROM
118、入出力回路120の間はそれぞれデータ
バス162、アドレスバス164、コントロール
バス166で結ばれている。さらにCPUより
PAM,ROM、入出力回路120へそれぞれク
ロツク信号Eが印加され、このクロツク信号Eに
同期してデータバス162を介してのデータの伝
送が行なわれる。 入出力回路120のマルチプレクサ122には
水温TW、吸入空気量TA、排気ガス温度TE、ス
ロツトル開度QTH、排気還流量QE、λセンサ出
力Vλ、大気圧VPA、吸入空気量QA、基準電圧
VH,VL、吸入空気量QAの代りに負圧VDがそ
れぞれ入力される。これらの入力は、ROM11
8に記憶されていた命令プログラムに基づき
CPU114がアドレスバスを介してそのアドレ
スが指定され、指定されたアドレスのアナログ入
力が取込まれる。このアナログ入力はマルチプレ
クサ122からアナログデイジタル変換器124
へ送られ、デイジタル変換された値はそれぞれの
入力に対応したレジスタに保持され、必要に応
じ、コントロールバス166を介して送られてく
るCPU114からの命令に基づきCPU114ま
たはRAM116へ取込まれる。 パルス入力回路128には角度センサ98より
リフアレンスパルスPRおよび角度信号PCがパル
ス列の形でフイルタ168を介して入力される。
さらに車速センサ170から車速に応じた周波数
のパルスPSがパルス列の形でフイルタ172を
介してパルス入力回路128へ入力される。 CPU114により処理された信号はパルス出
力回路126に保持される。パルス出力回路12
6からの出力はパワー増幅回路188へ加えら
れ、この信号に基づいてフユーエルインジエクタ
が制御される。 188,194,198はパワー増幅回路であ
り、各々点火コイル40の1次コイル電流、排気
ガス還流装置28の開度、エアレギユレータ48
の開度をパルス出力回路126からの出力パルス
に応じて制御する。デイスクリート入出力回路1
30はスロツトルバルブ20が全閉状態にあるこ
とを検出するスイツチ174、スタータスイツチ
176、トランチミツシヨンギアがトツプギアで
あることを示すギアスイツチ178からの信号を
それぞれ、フイルタ180,182,184を介
して受信し、保持する。さらにセントラルプロセ
ツサCPU114からの処理信号を保持する。デ
イスクリート入出力回路130が関係する信号は
1ビツトでその内容を表示できる信号である。次
にセントラルプロセツサCPU114からの信号
により、パワー増幅回路196,200,20
2,204へデイスクリート入出力回路から信号
が送られ、それぞれ、排気ガス還流装置28を閉
じて排気ガスの還流を停止させたり、燃料ポンプ
を制御したり、触媒の異状温度を表示したり、エ
ンジンのオーバーヒートを表示したりする。 第4図はパルス出力回路126の具体的な回路
を示すもので、レジスタ群470は上で述べた基
準レジスタ群であり、CPU114で処理された
データを保持したりあるいは予じめ定められた一
定値を示すデータを保持する。このデータは
CPU114よりデータバス162を介して送ら
れる。保持するレジスタの指定はアドレスバス1
64を介して行なわれ、指定されたレジスタに上
記データが入力され保持される。 レジスタ群472は瞬時レジスタ群であり、エ
ンジン等の瞬時の状態を保持する。瞬時レジスタ
群472とラツチ回路476とインクリメンタ4
78とでいわゆるカウンタ機能を呈する。 出力レジスタ群474は例えばエンジンの回転
速度を保持するレジスタ430と車速を保持する
レジスタ432を有している。これらの値は、あ
る条件が満されたとき瞬時レジスタの値が読み込
まれることにより得られる。出力レジスタ群47
4に保持されているデータは、CPUからアドレ
スバスを介して送られてくる信号により関係する
レジスタを選ばれ、このレジスタからデータバス
162を介してCPU114に送られる。 コンパレータ480は基準レジスタ群の内の選
ばれたレジスタからの基準データと瞬時レジスタ
群の内の選ばれたレジスタからの瞬時データをそ
れぞれ入力端482と484から受け、比較動作
を行う。その比較結果は出力端486より出力さ
れる。出力端は比較結果保持回路として作用する
第1比較出力レジスタ群502の内の所定のレジ
スタにセツトされる。さらにその後第2比較出力
レジスタ群504の所定のレジスタにセツトされ
る。 基準レジスタ群470、瞬時レジスタ群47
2、出力レジスタ群474の読出しや書込み動
作、インクリメンタ478やコンパレータ480
の動作、第1比較出力レジスタ502、第2比較
出力レジスタ504への出力セツト動作は、ある
定められた時間内に処理される。また種々の処理
はステージカウンタ572のステージ順序に従
い、時分割で行なわれる。各ステージ毎に基準レ
ジスタ群470、瞬時レジスタ群472、第1お
よび第2比較結果レジスタ群のそれぞれのレジス
タ群の所定のレジスタおよび必要に応じて出力レ
ジスタ群474の内の所定のレジスタが選ばれ
る。またインクリメンタ478とコンパレータ4
80は共通に使用される。 第5図は第4図のタイミングを説明するための
図である。CPU114よりクロツク信号Eが入
出力回路120に供給される。この信号をイに示
す。このクロツク信号Eより回路574により重
なりのない2つのクロツク信号φ1とφ2を作
る。この信号をロとハに示す。このクロツク信号
φ1とφ2により第4図に示す回路は動作する。 第5図ニはステージ信号であり、クロツク信号
φ2の立上がりで切換えられ、各ステージの処理
はφ2に同期して行なわれる。第5図中で
THROUGHとはラツチ回路やレジスタ回路がイ
ネーブルの状態にあることを示し、これらの回路
の出力が入力に依存されることを示す。また
LATCHとはこれらの回路があるデータを保持
し、この回路の出力が入力に依存しないことを示
す。 ニに示すステージ信号は基準レジスタ470や
瞬時レジスタ472の読み出し信号となり、ある
選ばれた所定のレジスタからその内容を読み出
す。ホとヘはそれぞれ基準レジスタ470と瞬時
レジスタ472の動作を示す。この動作はクロツ
クφに同期してなされる。 ラツチ回路476の動作をトに示す。この回路
はφ2がハイレベルのときTHROUGH状態とな
り、瞬時レジスタ群472より読み出されたある
特定のレジスタのデータを書き込み、クロツクφ
2がローレベルになつたときLATCH状態とな
る。このようにしてそのステージに対応した瞬時
レジスタ群の内の所定のレジスタのデータを保持
する。ラツチ回路476に保持されたデータは、
クロツク信号に同期しないインクリメンタ478
により、外部の条件に基づいて修正される。 ここでインクリメンタ478はインクリメンタ
コントローラ490からの信号に基づき次のよう
な機能を有する。第1の機能はインクリメント機
能で入力データの示す値を1つ増加させる。第2
の機能はノンインクリメント機能で、入力を増加
させないでそのまま通過させる。第3の機能はリ
セツト機能で入力を全て0の値を示すデータに変
えてしまう。 瞬時レジスタのデータの流れを見ると、瞬時レ
ジスタ群472の内の1つのレジスタがステージ
カウンタ572により選ばれ、その保持データが
ラツチ回路476とインクリメンタ478を介し
てコンパレータ480に入力される。さらにイン
クリメンタ478の出力から元の選ばれたレジス
タへ戻る閉ループができる。従つてインクリメン
タがデータに対し1つ増加させる機能を呈すると
この閉ループはカウンタとしての機能を示す。し
かしこの閉ループで瞬時レジスタ群のデータが特
定の選ばれたレジスタから出力されながら、しか
もデータが回り込んできて入力されるような状態
が生じると誤動作を示す。従つてデータを切るた
めにラツチ回路476を設けている。ラツチ回路
476はクロツクφ2に同期してTHROUGH状
態になり、一方瞬時レジスタに入力が書き込まれ
るTHROUGH状態はクロツクφ1に同期してい
る。従つてクロツクφ2とφ1との間でデータカ
ツトが行なわれる。つまりレジスタ472の特定
のレジスタの値が変更になつてもラツチ回路47
6の出力は変化しない。 コンパレータ480もインクリメンタ476と
同様クロツク信号と同期せずに動作する。コンパ
レータ480の入力は基準レジスタ群470の内
より選ばれた1つの基準レジスタの保持データ
と、瞬時レジスタ群の内の選ばれた1つのレジス
タの保持データのラツチ回路とインクリメンタを
介して伝えられたデータとを受ける。このデータ
の比較結果は、クロツク信号φ1に同期して
THROUGH状態になる第1の比較結果レジスタ
群502へセツトされる。さらにこのデータはク
ロツクφ2でTHROUGH状態になる第2の比較
結果レジスタ群504へセツトされる。このレジ
スタ504の出力は、上記インクリメンタの各機
能を制御するための信号や、フユーエルインジエ
クタ、点火コイル、排気ガス還流装置などのドラ
イブ信号となる。 またこの信号に基づきそれぞれのステージでエ
ンジンの回転速度や車速の測定結果が瞬時レジス
タ群から出力レジスタ群474に書き込まれる。
いま、例えばエンジン回転速度を書き込む場合
は、一定時間が経過したことを表わす信号が第2
比較結果レジスタRPMWBF552に保持され、
後述する第1表のRPMステージで、このレジス
タ552の出力に基づき瞬時レジスタ462の保
持データが出力レジスタ群のレジスタ430へ入
力される。このとき第2比較結果レジスタ
RPMWBF552に一定時間経過したことを表わ
す信号が保持されていない場合はRPMステージ
になつてもレジスタ462の保持データをレジス
タ430へ入力する動作は行なわれない。 一方第2比較結果レジスタVSPWBF556に
保持される信号に基づいてステージVSPのタイ
ミングで瞬時レジスタ468のデータが車速を表
わすデータとして出力レジスタ432へ入力され
る。 エンジンの回転速度RPMおよび車速VSPを表
わすデータの出力レジスタ群474への書き込み
は次のようにして行なわれる。第5図に於いて、
ステージ信号STGがRPMまたはVSPになつてお
り、瞬時レジスタ462または468のデータが
クロツクφ2のハイレベルでラツチ回路476が
THROUGH状態となり書き込まれ、クロツクφ
2がローレベルになることにより上記データが
LATCHされる。このようにして保持されたデー
タは上記レジスタRPMWBF552または
VSPWBF556からの信号に基づいてクロツク
φ1のハイレベル同期で出力レジスタ群474は
第5図ルに示す如くTHROUGH状態となり、書
き込まれ、クロツクφ1のローレベルでLATCH
される。 出力レジスタ群474に保持されているデータ
をCPU114が読む場合は、CPU114よりア
ドレスバス164を介してレジスタを指定し、第
5図イに示すクロツク信号Eに同期してデータの
取り込みが行なわれる。 ステージ信号STGの発生回路を第6図に示す。
回路574からの信号φ1でステージカウンタ
SC570がカウントアツプされ、そのステージ
カウンタSC570の出力C0〜C6と第4図の
Tレジスタの出力を入力としてステージデコーダ
SDCに加えられる。ステージデコーダSDCは出
力として01〜017の信号をステージラツチ回路
STGLへクロツクφ2同期で書き込む。 ステージラツチSTGLのリセツト入力には第4
図のMODEレジスタの20ビツトの信号GOが入力
され、MODEレジスタの20ビツトのGO信号がロ
ーレベルとなるとSTGLの総ての出力がローレベ
ルとなり、どの処理動作も総て停止する。一方上
記GO信号がハイレベルになると再びステージ信
号STGが一定の順序で出力され、それに基づい
て処理が行なわれる。 上記ステージデコーダSDCはREAD,ONLY,
MEMORYなどを使用することにより容易に実
現できる。尚ステージラツチSTGLの出力である
ステージ信号STGの00〜6Fまでの詳細な内容を
第1表に示す。
The present invention relates to a control device for an automobile, and more particularly to a point control device. BACKGROUND ART In recent years, automobile exhaust gas regulations and safety regulations have become particularly strict, and increasingly large-scale electronic control devices have begun to be installed in automobiles, and these control devices are required to have complex and highly accurate control characteristics. The control characteristics include, for example, optimal fuel injection characteristics and ignition advance characteristics in response to input information such as engine speed and intake air flow rate in an electronically controlled fuel injection device. It is necessary for the control device itself to store control characteristics for each of the various input information, and in order to improve control accuracy, it is necessary to store the control characteristics in digital values using a digital memory. However, since the input/output characteristics stored as digital values are quantized and represented stepwise, a memory with a huge storage capacity is required to store the output (control) characteristics with high precision, making it difficult to effectively Memory usage is a problem. Looking at the ignition advance characteristics in particular, firstly, if a characteristic table is constructed using the engine's air flow rate and rotational speed as parameters, a situation where the rotational speed is relatively low and the air flow rate is large cannot occur under actual operating conditions. If a characteristic table is constructed using the engine's air flow rate and rotational speed as parameters, there will be approximately 40% of such situations that cannot occur in reality. Therefore, the storage capacity for this area is wasted, and since the characteristics are concentrated in other areas, the capacity in other areas is further increased in order to ensure accuracy. Second, when a characteristic table is constructed using the throttle valve opening and the engine rotational speed as parameters, the throttle valve opening has an apparently close relationship with changes in air flow rate, and there are problems similar to those of air flow rate. There is a problem in that the change characteristic is not as linear as the air flow rate and is not actually suitable as a parameter for the ignition advance characteristic. In order to perform control that adapts to the vehicle's driving conditions, it is necessary to control the fuel injection time and ignition timing in synchronization with the engine rotation, but the engine rotation speed varies from 600 to 6000 RPM. At high speeds, it is 10ms per revolution, and in the case of a 6-cylinder engine, it is necessary to ignite every 3.3ms, and ignition advance control (setting how many times before a certain point in engine rotation the ignition timing is) is required. control) etc., high-speed processing is required. Therefore, it is necessary to shorten the search time for the ignition advance characteristic table, and it is also necessary to reduce the storage capacity of the memory that constitutes the ignition advance characteristic table. In addition, when a characteristic table is configured using the engine's suction negative pressure and engine rotational speed as parameters, there are fluctuations in the suction negative pressure due to EGR operation and air cleaner clogging, resulting in accurate ignition advance values. There is a problem with the parameters that cannot be searched. The present invention has been made to solve the above-mentioned drawbacks, and its purpose is to provide an ignition timing control device that can effectively utilize memory and reduce storage capacity. The features of the present invention include: (a) air flow rate detection means for detecting information on the amount of air taken into the engine; (b) rotation speed detection means for detecting information on engine rotation speed; (c) from the air amount detection means. Load information determining means that determines load information based on the obtained air amount information and the rotation speed information obtained from the rotation speed detection means; (d) The rotation speed information and the load information are each determined at a predetermined number of dividing points. Storage means that divides the ignition data and stores the ignition data in advance at addresses determined according to the order of division points; (e) Based on the load information from the load information determining means and the rotation speed information from the rotation speed detection means; The ignition timing control device comprises ignition control means for reading ignition data determined by corresponding load information and rotation speed information from the storage means and controlling ignition timing based on the read ignition data. Next, embodiments of the present invention will be described using the drawings. FIG. 1 is a system diagram showing the main configuration of an electronic engine control device. The flow rate of the air taken in through the air cleaner 12 is measured by an air flow meter, and an output QA representing the air flow rate is input from the air flow meter 14 to the control circuit 10. The air flow meter 14 is provided with an intake temperature sensor 16 for detecting the temperature of intake air, and an output TA representing the temperature of the intake air is input to the control circuit 10. The air that has passed through the air flow meter 14 passes through the throttle chamber 18 and is drawn into the combustion chamber 34 of the engine 30 from the intake manifold 26 via the intake valve 32. The amount of air taken into the combustion chamber 34 is controlled by changing the opening degree of a throttle valve 20 provided in the throttle chamber in mechanical interlock with the accelerator pedal 22. The opening degree of the throttle valve 20 is determined by the throttle position detector 24.
0 position is detected, and a signal QTH representing the position of this throttle valve 20 is obtained.
is input from the throttle position detector 24 to the control circuit 10. The throttle chamber 18 is provided with an idle bypass passage 42 and an idle adjustment screw 44 for adjusting the amount of air passing through the bypass passage 42. When the engine is operating in an idling state, the throttle valve 20 is in a fully closed state. Intake air from the air flow meter 14 flows through the bypass passage 42;
It is sucked into the combustion chamber 34. Therefore, the amount of intake air during idling operation can be changed by adjusting the idle adjustment screw. Since the energy generated in the combustion chamber is almost determined by the amount of air from the bypass passage 42, the idle adjust screw 44
By adjusting the amount of air taken into the engine and changing the amount of air taken into the engine, it is possible to adjust the engine speed during idling to an appropriate value. The throttle chamber 18 is further provided with another bypass passage 46 and an air regulator 48. The air regulator 48 controls the amount of air passing through the passage 46 in accordance with the output signal NIDL of the control circuit 10, and controls the engine speed during warm-up operation and supplies an appropriate amount of air to the engine when the throttle valve 20 suddenly changes. I do. Additionally, the air flow rate during idling operation can be changed as needed. Next, to explain the fuel supply system, the fuel stored in the fuel tank 50 is sucked into the fuel pump 52, and the fuel damper 54
is pumped to. The fuel damper 54 absorbs pressure pulsations in the fuel from the fuel pump 52 and sends fuel at a predetermined pressure to the fuel pressure regulator 62 via the fuel filter 56. Fuel from the fuel pressure regulator is fed under pressure to a fuel injector 66 via a fuel pipe 60, and the fuel injector 66 opens in response to the output INJ from the control circuit 10 to inject fuel. The amount of fuel injected from the fuel injector 66 is determined by the valve opening time of the injector 66 and the pressure difference between the pressure of the fuel fed to the injector and the pressure of the intake manifold 26 into which the fuel is injected. However, it is desirable that the fuel injected from the fuel injector 66 depend only on the valve opening time determined by the signal from the control circuit 10. Therefore, the pressure of the fuel fed to the fuel injector 66 is controlled by the fuel pressure regulator 62 so that the difference between the fuel pressure to the fuel injector 66 and the manifold pressure of the intake manifold 26 is always constant. Intake manifold pressure is applied to the fuel pressure regulator 62 via a pressure guide pipe 64, and when the fuel pressure in the fuel pipe 60 exceeds a certain level with respect to this pressure, the fuel pipe 60 and the fuel return pipe 58 are brought into communication with each other, and the excess pressure is removed. The fuel corresponding to the amount is returned to the fuel tank 50 via the fuel return pipe 58. In this way, the difference between the fuel pressure in the fuel pipe 60 and the manifold pressure in the intake manifold is always kept constant. The fuel tank 50 is further provided with a pipe 68 and a canister 70 for absorbing vaporized fuel gas, and an atmosphere opening 74 is provided during engine operation.
Air is sucked in from the intake manifold, and the absorbed vaporized fuel gas is guided to the intake manifold through a pipe 72 and then to the engine 30. As explained above, fuel is injected from the fuel injector, the intake valve 32 opens in synchronization with the movement of the piston 74, and a mixture of air and fuel is introduced into the combustion chamber 34. This air-fuel mixture is compressed and combusted by the spark energy from the spark plug 36, thereby converting the combustion energy of the air-fuel mixture into kinetic energy that moves the piston. The combusted air-fuel mixture is exhausted as exhaust gas from an exhaust valve (not shown) to the atmosphere via an exhaust pipe 76, a catalytic converter 82, and a muffler 86. exhaust pipe 76
is the exhaust gas recirculation pipe 78 (hereinafter referred to as EGR pipe).
A portion of the exhaust gas is guided to the intake manifold 26 through this pipe. That is, part of the exhaust gas is recirculated to the intake side of the engine. This recirculation amount is determined by the valve opening amount of the exhaust gas recirculation device 28. This valve opening amount is the output of the control circuit 10.
Controlled by EGR and further exhaust gas recirculation device 28
The valve position is converted into an electrical signal and input to the control circuit 10 as a signal QE. A λ sensor 80 is provided in the exhaust pipe 76 and detects the mixture ratio of the air-fuel mixture sucked into the combustion chamber 34. Specifically O 2 sensor (oxygen sensor)
is generally used to detect the oxygen concentration in the exhaust gas and generate a voltage Vλ according to the oxygen concentration. The output Vλ of the λ sensor 80 is input to the control circuit 10.
The catalytic converter 82 is provided with an exhaust temperature sensor 84, and an output TE corresponding to the exhaust temperature is input to the control circuit 10. The control circuit 10 is provided with a negative power terminal 88 and a positive power terminal 90. Further, the control circuit 10 applies the above-described signal IGN to the primary coil of the ignition coil 40 to control the spark generation of the spark plug 36, and the high voltage generated in the secondary coil is transferred to the power distributor 38.
is applied to the spark plug 36 via the combustion chamber 34.
generates a spark for combustion within. More specifically, the ignition coil 40 has a positive power terminal 92.
The control circuit 10 is further provided with a power transistor for controlling the primary coil current of the ignition coil 40. Positive power terminal 92 of ignition coil 40 and negative power terminal 88 of control circuit 10
A series circuit is formed between the primary coil of the ignition coil 40 and the power transistor, and when the power transistor becomes conductive, electromagnetic energy is accumulated in the ignition coil 40, and when the power transistor is cut off, electromagnetic energy is accumulated in the ignition coil 40. The above-mentioned electromagnetic energy is energy with high voltage that is generated by the spark plug 3.
6. The engine 30 is provided with a water temperature sensor 96,
The temperature of engine cooling water 94 is detected, and a signal TW corresponding to this temperature is input to control circuit 10. Further, the engine 30 is provided with an angle sensor 98 that detects the rotational position of the engine, and this sensor 98 generates a reference signal PR every 120 degrees, for example, in synchronization with the rotation of the engine. degree) Angle signal every time it rotates
Generate PC. These signals are input to the control circuit 10. 100 indicated by a dotted line in the figure is a negative pressure sensor,
Voltage according to negative pressure of intake manifold 26
Input VD to the control circuit 10. Specifically, a semiconductor negative pressure sensor can be considered as the negative pressure sensor 10. Apply the boost pressure of the intake manifold to one side of the silicon chip,
Atmospheric pressure or constant pressure is applied to the other side. In some cases, a vacuum may be used. With this structure, a voltage VD corresponding to the manifold pressure is generated due to the piezoresistance effect, etc., and the control circuit 1
Applied to 0. FIG. 2 is an operational diagram illustrating the ignition timing and fuel injection timing with respect to the crank angle of a six-cylinder engine. A represents the crank angle, and a reference signal PR is output from the angle sensor 98 every 120 degrees of crank angle. In other words, 0° of crank angle,
The reality signal PR is input to the control circuit 10 at every 120°, 240°, 360°, 480°, 600°, and 720°. In the figure, the first cylinders are
5th cylinder, 3rd cylinder, 6th cylinder, 2nd cylinder, 4th cylinder
Represents the operation of the cylinder. Further, J1 to J6 represent the opening positions of the intake valves of each cylinder. As shown in Fig. 2, the valve opening positions of each cylinder are shifted by 120° in terms of crank angle. Although the valve opening position and valve opening width differ somewhat depending on the structure of each engine, they are approximately as shown in the figure. In the diagram, A1 to A5 are fuel injectors 66
This represents the valve opening timing, that is, the fuel injection timing. The time width JD of each injection timing A1 to A5 represents the valve opening time of the fuel injector 66. This time range
JD can be considered to represent the fuel injection amount of the fuel injector 66. A fuel injector 66 is provided corresponding to each cylinder, and these injectors are each connected in parallel to a drive circuit within the control circuit 10. Therefore, in response to the signal INJ from the control circuit 10, the fuel injectors corresponding to each cylinder open simultaneously and inject fuel. The first cylinder shown in FIG. 2B will be explained. In synchronization with the reference signal INTIS generated at a crank angle of 360°, an output signal INJ is sent from the control circuit 10 to the fuel injector 66 provided in the manifold or intake port of each cylinder.
is applied to As a result, fuel is injected for the time JD calculated by the control circuit 10 as shown by A2. However, since the intake valve of the first cylinder is closed, the injected fuel is held near the intake port of the first cylinder and is not sucked into the cylinder. Next, a signal is again sent from the control circuit to each fuel injector 66 in response to the reference signal INTIS generated at a crank angle of 720 degrees, and fuel injection indicated by A3 is performed.
Almost simultaneously with this injection, the intake valve of the first cylinder opens, and with this opening, both the fuel injected at A2 and the fuel injected at A3 are sucked into the combustion chamber. The same can be said for other cylinders. In other words, in the fifth cylinder shown in C, A2 and A are at the intake valve opening position J5.
The fuel injected in step 3 is inhaled. 3 shown in d.
In the cylinder, at the intake valve opening position J3, part of the fuel injected at A2, the fuel injected at A3, and further A
A portion of the fuel injected at step 4 is inhaled. The sum of the part of the fuel injected at A2 and the part of the fuel injected at A4 becomes the injection amount for one injection. Therefore, each intake stroke of the third cylinder also receives two injection amounts. Similarly, in the sixth cylinder, second cylinder, and fourth cylinder shown in E, H, and G, two injections from the fuel injector are inhaled in one intake stroke. As can be seen from the above explanation, the fuel injection amount specified by the fuel injection signal INJ from the control circuit 10 is half of the fuel required to generate fuel, and two injections from the fuel injector 66 cause the combustion chamber to
4, the required amount of fuel corresponding to the air taken in is obtained. In FIG. 2, G1 to G6 indicate ignition timings corresponding to the first to sixth cylinders. By cutting off the power transistor provided in the control circuit 10, the primary coil current of the ignition coil 40 is cut off.
Next, generate a high voltage in the coil. This high voltage is generated at the ignition timings G1, G5, G6, G2, and G4, and is distributed by the power distributor 38 to the spark plugs provided in each cylinder. As a result, each spark plug is ignited in the order of the first cylinder, the fifth cylinder, the third cylinder, the sixth cylinder, the second cylinder, and the fourth cylinder, and the mixture of fuel and air is combusted. The detailed circuit configuration of the control circuit 10 in FIG.
As shown in the figure. A positive power supply terminal 90 of the control circuit 10 is connected to a positive terminal 110 of the battery, and a voltage VB is supplied to the control circuit 10. The power supply voltage VB is set to a constant voltage PVCC, for example, 5 [V] by the constant voltage circuit 112.
is held constant. This constant voltage PVCC is supplied to a central processor (hereinafter referred to as CPU), random access memory (hereinafter referred to as RAM), and read-only memory (hereinafter referred to as ROM).
Furthermore, the output PVCC of the constant voltage circuit 112 is also input to the output circuit 120. The input/output circuit 120 includes a multiplexer 122, an analog/digital converter 124, a pulse output circuit 126, a pulse input circuit 128, a discrete input/output circuit 130, and the like. Analog signals are input to the multiplexer 122, and one of the input signals is input based on a command from the CPU.
is selected and input to the analog-to-digital converter 124. As analog input signals, each sensor shown in FIG. , an analog signal TW representing the engine cooling water temperature, an analog signal TA representing the intake air temperature, an analog signal TE representing the exhaust gas temperature, an analog signal QTH representing the throttle opening, an analog signal QE representing the valve opening state of the exhaust gas recirculation device. , an analog signal Vλ representing the excess air ratio of the intake mixture, and an analog signal QA representing the intake air amount are sent to the filters 132 to 14.
4 to multiplexer 122.
However, the output Vλ of the λ sensor 80 is input to the multiplexer via an amplifier 142 having a filter circuit. In addition, an analog signal VPA representing atmospheric pressure is input from the atmospheric pressure sensor 146 to the multiplexer. Also, from the positive power supply terminal 90° to the resistor 150,1
The voltage VB is connected to the resistor 160 in a series circuit of 52,154
Further, the terminal voltage of the series circuit of the resistors is kept constant by a zener 148. The values of voltages VH and VL at junctions 156 and 158 between resistors 150 and 152 and resistors 152 and 154 are input to multiplexer 122. The CPU 114, RAM 116, and ROM mentioned above
118 and the input/output circuit 120 are connected by a data bus 162, an address bus 164, and a control bus 166, respectively. Furthermore, from the CPU
A clock signal E is applied to each of the PAM, ROM, and input/output circuit 120, and data is transmitted via the data bus 162 in synchronization with this clock signal E. The multiplexer 122 of the input/output circuit 120 has water temperature TW, intake air amount TA, exhaust gas temperature TE, throttle opening QTH, exhaust recirculation amount QE, λ sensor output Vλ, atmospheric pressure VPA, intake air amount QA, and reference voltage.
Negative pressure VD is input instead of VH, VL, and intake air amount QA. These inputs are in ROM11
Based on the instruction program stored in 8.
The address of the CPU 114 is specified via the address bus, and the analog input of the specified address is taken in. This analog input is routed from multiplexer 122 to analog-to-digital converter 124.
The digitally converted values are held in registers corresponding to the respective inputs, and are taken into the CPU 114 or RAM 116 as required based on instructions from the CPU 114 sent via the control bus 166. A reference pulse PR and an angle signal PC are input from the angle sensor 98 to the pulse input circuit 128 in the form of a pulse train via a filter 168.
Furthermore, a pulse PS having a frequency corresponding to the vehicle speed is input from the vehicle speed sensor 170 to the pulse input circuit 128 via the filter 172 in the form of a pulse train. The signal processed by CPU 114 is held in pulse output circuit 126. Pulse output circuit 12
The output from 6 is applied to a power amplifier circuit 188, and the fuel injector is controlled based on this signal. Reference numerals 188, 194, and 198 are power amplification circuits that control the primary coil current of the ignition coil 40, the opening degree of the exhaust gas recirculation device 28, and the air regulator 48, respectively.
The opening degree of the pulse output circuit 126 is controlled according to the output pulse from the pulse output circuit 126. Discrete input/output circuit 1
30 receives signals from a switch 174 that detects that the throttle valve 20 is in a fully closed state, a starter switch 176, and a gear switch 178 that indicates that the tranmission gear is a top gear through filters 180, 182, and 184, respectively. received and retained. Furthermore, it holds processing signals from the central processor CPU 114. The signals related to the discrete input/output circuit 130 are signals whose contents can be displayed with one bit. Next, the power amplifier circuits 196, 200, 20
A signal is sent from the discrete input/output circuit to 2 and 204, respectively, to close the exhaust gas recirculation device 28 and stop the recirculation of exhaust gas, control the fuel pump, display abnormal temperature of the catalyst, Indicates engine overheating. FIG. 4 shows a specific circuit of the pulse output circuit 126. A register group 470 is the reference register group mentioned above, and is used to hold data processed by the CPU 114 or to store data at a predetermined constant level. Holds data that indicates a value. This data is
It is sent from the CPU 114 via the data bus 162. The register to hold is specified using address bus 1.
64, and the above data is input to the designated register and held. The register group 472 is a momentary register group and holds the instantaneous state of the engine and the like. Instantaneous register group 472, latch circuit 476, and incrementer 4
78 exhibits a so-called counter function. The output register group 474 includes, for example, a register 430 that holds the engine rotation speed and a register 432 that holds the vehicle speed. These values are obtained by reading the values of instantaneous registers when certain conditions are met. Output register group 47
The data held in CPU 162 is sent to the relevant register by a signal sent from the CPU via the address bus, and sent from this register to the CPU 114 via the data bus 162. Comparator 480 receives reference data from a selected register of the group of reference registers and instantaneous data from a selected register of the group of instantaneous registers at inputs 482 and 484, respectively, and performs a comparison operation. The comparison result is output from the output terminal 486. The output terminal is set in a predetermined register in the first comparison output register group 502 which functions as a comparison result holding circuit. Furthermore, it is then set in a predetermined register of the second comparison output register group 504. Reference register group 470, instantaneous register group 47
2. Read and write operations of the output register group 474, incrementer 478 and comparator 480
The operations of setting the output to the first comparison output register 502 and the second comparison output register 504 are processed within a certain predetermined time. Further, various processes are performed in a time-sharing manner according to the stage order of the stage counter 572. For each stage, a predetermined register in each of the reference register group 470, instantaneous register group 472, first and second comparison result register groups, and, if necessary, a predetermined register in the output register group 474 is selected. . Also, incrementer 478 and comparator 4
80 is commonly used. FIG. 5 is a diagram for explaining the timing of FIG. 4. A clock signal E is supplied from the CPU 114 to the input/output circuit 120. This signal is shown in A. From this clock signal E, a circuit 574 generates two non-overlapping clock signals φ1 and φ2. This signal is shown in (b) and (c). The circuit shown in FIG. 4 operates according to these clock signals φ1 and φ2. FIG. 5D is a stage signal, which is switched at the rising edge of clock signal φ2, and processing of each stage is performed in synchronization with φ2. In Figure 5
THROUGH indicates that the latch circuit or register circuit is enabled, and indicates that the output of these circuits is dependent on the input. Also
LATCH indicates that these circuits hold certain data and the output of this circuit does not depend on the input. The stage signal shown in (d) becomes a readout signal for the reference register 470 and instantaneous register 472, and the contents are read out from a certain selected predetermined register. E and F show the operation of reference register 470 and instantaneous register 472, respectively. This operation is performed in synchronization with the clock φ. The operation of latch circuit 476 is shown in FIG. This circuit enters the THROUGH state when φ2 is at a high level, writes data in a specific register read from the instantaneous register group 472, and clocks φ2.
When 2 becomes low level, it becomes LATCH state. In this way, the data of a predetermined register in the instantaneous register group corresponding to that stage is held. The data held in the latch circuit 476 is
Incrementer 478 not synchronized to clock signal
modified based on external conditions. Here, the incrementer 478 has the following functions based on the signal from the incrementer controller 490. The first function is an increment function that increases the value indicated by the input data by one. Second
The function is a non-increment function, which allows the input to pass through without increasing it. The third function is a reset function, which changes all inputs to data indicating a value of 0. Looking at the data flow of the instantaneous registers, one register in the instantaneous register group 472 is selected by the stage counter 572, and its held data is input to the comparator 480 via the latch circuit 476 and the incrementer 478. Additionally, a closed loop is created from the output of incrementer 478 back to the originally selected register. Therefore, when the incrementer functions to increase data by one, this closed loop functions as a counter. However, in this closed loop, if a situation occurs in which the data of the instantaneous register group is output from a specific selected register while the data is looped around and input, malfunction occurs. Therefore, a latch circuit 476 is provided to cut off the data. The latch circuit 476 enters the THROUGH state in synchronization with clock φ2, while the THROUGH state in which the input is written to the instantaneous register is synchronized with clock φ1. Therefore, data is cut between clocks φ2 and φ1. In other words, even if the value of a specific register in the register 472 is changed, the latch circuit 47
The output of 6 remains unchanged. Comparator 480, like incrementer 476, also operates out of synchronization with the clock signal. The input of the comparator 480 is transmitted through a latch circuit and an incrementer for the data held in one reference register selected from the reference register group 470 and the data held in one register selected from the instantaneous register group. received data. The result of this data comparison is synchronized with clock signal φ1.
It is set to the first comparison result register group 502 which enters the THROUGH state. Furthermore, this data is set in the second comparison result register group 504 which enters the THROUGH state at clock φ2. The output of this register 504 becomes a signal for controlling each function of the incrementer and a drive signal for the fuel injector, ignition coil, exhaust gas recirculation device, etc. Also, based on this signal, the measurement results of the engine rotational speed and vehicle speed at each stage are written from the instantaneous register group to the output register group 474.
Now, for example, when writing the engine rotation speed, the second signal indicating that a certain period of time has elapsed is
It is held in the comparison result register RPMWBF552,
At the RPM stage in Table 1, which will be described later, data held in the instantaneous register 462 is input to the register 430 of the output register group based on the output of this register 552. At this time, the second comparison result register
If the signal indicating that a certain period of time has elapsed is not held in the RPMWBF 552, the operation of inputting the data held in the register 462 to the register 430 is not performed even in the RPM stage. On the other hand, based on the signal held in the second comparison result register VSPWBF 556, data in the instantaneous register 468 is inputted to the output register 432 as data representing the vehicle speed at the timing of the stage VSP. Writing of data representing the engine rotational speed RPM and vehicle speed VSP to the output register group 474 is performed as follows. In Figure 5,
The stage signal STG is RPM or VSP, and the data in the instantaneous register 462 or 468 is at the high level of the clock φ2, and the latch circuit 476 is activated.
It becomes THROUGH state and is written, and the clock φ
2 becomes low level, the above data becomes
LATCHed. The data held in this way is stored in the register RPMWBF552 or
Based on the signal from the VSPWBF556, the output register group 474 enters the THROUGH state as shown in FIG.
be done. When the CPU 114 reads data held in the output register group 474, the CPU 114 specifies the register via the address bus 164, and the data is taken in in synchronization with the clock signal E shown in FIG. 5A. FIG. 6 shows a generation circuit for the stage signal STG.
Stage counter with signal φ1 from circuit 574
SC570 is counted up, and the outputs C0 to C6 of the stage counter SC570 and the output of the T register in FIG. 4 are input to the stage decoder.
Added to SDC. The stage decoder SDC outputs signals 01 to 017 to the stage latch circuit.
Write to STGL in synchronization with clock φ2. The stage latch STGL reset input has a fourth
When the 20- bit signal GO of the MODE register shown in the figure is input and the 20- bit GO signal of the MODE register becomes low level, all outputs of STGL become low level and all processing operations are stopped. On the other hand, when the GO signal becomes high level, the stage signal STG is outputted again in a fixed order, and processing is performed based on it. The above stage decoder SDC is READ, ONLY,
This can be easily achieved by using MEMORY etc. The detailed contents of stages 00 to 6F of the stage signal STG, which is the output of the stage latch STGL, are shown in Table 1.

【表】【table】

【表】 先ず第6図のステージカウンタSC570のリ
セツト端子にゼネラルリセツト信号GRが入力さ
れ、これによつてカウンタ出力C0〜C6は総て
0となる。このゼネラルリセツト信号はこの制御
回路の起動時CPUより送られる。この状態でク
ロツク信号φ2が入力されるとφ2の立ち上りで
EGRPのステージ信号STGが出る。このステー
ジ信号に基づいてEGRPの処理を行う。次にクロ
ツクφ1でステージカウンタSC570が1つカ
ウントアツプし、さらにクロツクφ2で次のステ
ージ信号STGのINTLが出力される。このステー
ジ信号INTLSTGに基づいて、INTLの処理が行
なわれる。さらに次はステージ信号CYLSTGが
出力されCYLの処理がなされ、その次はステー
ジ信号ADVが出力されADVの処理が行なわれ
る。このようにしてステージカウンタSC570
がφ1に同期してカウントアツプを続けると、φ
2に同期してステージ信STGが出力され、この
信号に応じた処理が行なわれる。 ステージカウンタSC570のC0〜C6が総
て1となるとステージ信号INJSTGが出力され、
INJの処理が行なわれ、第1表の総ての処理が終
了する。次のクロツク信号φ1でステージカウン
タSC570のC0〜C6は総て0となり、クロ
ツク信号φ2でステージ信号EGRPSTGが出力
され、STGの処理が行なわれる。このように第
1表の処理を繰り返す。 第1表に示す各ステージの処理内容を第2表に
示す。
[Table] First, the general reset signal GR is input to the reset terminal of the stage counter SC570 shown in FIG. 6, so that the counter outputs C0 to C6 all become 0. This general reset signal is sent from the CPU when this control circuit is activated. When clock signal φ2 is input in this state, at the rising edge of φ2,
EGRP stage signal STG is output. EGRP processing is performed based on this stage signal. Next, the stage counter SC570 counts up by one at clock φ1, and INTL of the next stage signal STG is output at clock φ2. INTL processing is performed based on this stage signal INTLSTG. Furthermore, next, a stage signal CYLSTG is output and CYL processing is performed, and next, a stage signal ADV is output and ADV processing is performed. In this way, the stage counter SC570
continues to count up in synchronization with φ1, φ
A stage signal STG is output in synchronization with 2, and processing is performed in accordance with this signal. When C0 to C6 of stage counter SC570 all become 1, stage signal INJSTG is output.
The INJ process is performed and all the processes in Table 1 are completed. With the next clock signal φ1, all C0 to C6 of the stage counter SC570 become 0, and with the clock signal φ2, the stage signal EGRPSTG is output, and STG processing is performed. In this way, the processing in Table 1 is repeated. Table 2 shows the processing contents of each stage shown in Table 1.

【表】【table】

【表】 第6図のステージラツチ回路STGLからの出力
STG0とSTG7信号は外部から入つてくる入力
と入出力回路120の内部のクロツク信号との同
期を取るための回路であり、出力STG0はステ
ージカウンタSC570のC0〜C2の総てが0
の時出力され、出力STG7はステージカウンタ
SC570のC0〜C2が総て1のとき出力され
る。 外部からの信号としては例えばエンジンの回転
に同期して発生するリフアレンス信号PR、角度
信号PCや車輪の回転に同期して生じる車速パル
スPSがある。これらのパルス周期は大きく変化
し、このままではクロツク信号φ1やφ2と同期
していない。従つて第1表のADVSTGのステー
ジ、VSPSTGのステージ、RPMSTGのステージ
でインクリメントすべきかどうかの判断ができな
い。 そこで外部からのパルス、例えばセンサからの
パルスと入出力回路のステージとの間で同期をと
ることが必要となる。しかも検出精度を向上させ
るためには角度信号PCと車速信号PSはその入力
パルスの立ち上がりと立ち上がりに対しステージ
と同期させる必要がある。リフアレンス信号PR
については立ち上がりと同期させればよい。 第6図のステージラツチ回路STGLの出力
STG0とSTG7を使用して上記同期をとつた信
号をφ2タイミングで作る。その回路を第7図に
示す。またその動作タイミングを第8図に示す。 センサ出力等の外部入力パルスとして例えばリ
フアレンスパルスPR、角度信号PC、車速信号
PSは第6図に示すSTG0出力により第7図のラ
ツチ回路600,602,604にそれぞれラツ
チされる。 第8図でイはクロツク信号φ2、ロはクロツク
信号φ1、ハとニはステージ信号STG7とSTG
0である。このステージ信号は第6図で説明した
如く、φ2に同期して発生する。ホに示す信号は
角度センサあるいは車速センサからの出力パルス
でリフアレンスパルスPRあるいは角度パルスPC
あるいは車速パルスPSを示し、この信号の発生
タイミングとパルスのデユーテイ、周期は不規則
であり、ステージ信号に対し無関係に入力され
る。 いま第8図ホに示すような信号がラツチ回路6
00,602,604に入力されたと仮定する
と、ステージ信号STG0(図のヌのパルス)で
それぞれラツチされる。従つて第8図ヘで示す如
く時点ルでハイレベルとなる。さらにヲで示すス
テージ信号STG0でも入力信号RP,PC,PSが
ハイレベルなのでラツチ回路600,602,6
04にそれぞれハイレベルがラツチされる。しか
しワで示すステージ信号STG0では入力信号
PR,PC,PSがローレベルになつているのでロ
ーレベルがラツチされる。従つてラツチ回路60
0,602,604の出力A1,A2,A3はヘ
に示すようになる。ラツチ回路606,608,
610は出力A1,A2,A3をそれぞれステー
ジ信号STG7のカでラツチするのでヨで示す時
点から立ち上がる。またステージ信号STG7の
タでもハイレベルをラツチするので、ハイレベル
を続ける。従つてラツチ回路606,608,6
10の出力信号B1,B2,B3はそれぞれトに
示すようになる。 NOR回路612にはインバータ608を介し
て送られる信号A1と信号B1が入力され、同期
化されたリフアレンス信号PRSがチに示すよう
に発生する。この同期化リフアレンス信号PRS
はリフアレンス信号PRの立ち上がりを捕え、ス
テージ信号STG0からSTG7のパルス幅になる。 EXCLUSIVELY OR回路614と616はそ
れぞれ信号A2とB2、信号A3とB3が入力さ
れ、信号PC,PVの立ち上がりでリに示す信号の
レが発生し、信号PC,PVの立ち上がりでソの信
号が発生する。信号レとソのデユーテイはチに示
すデユーテイと同じであり、ステージ信号STG
0とSTG7で決まる。 尚上記説明では信号PR,PC,PSが同時に同
じデユーテイで入力されたと可定したが実際はこ
れらの信号は同時には入力されずそのデユーテイ
も異なる。さらに同じ信号それ自身について見て
もその周期とデユーテイはそのつど異なる。 しかし第7図と同期化回路により一定の幅のパ
ルスとなる。このパルス幅はステージ信号STG
0とSTG7の時間差で定まる。従つてラツチ回
路600,602,604と606,608,6
10へ印加するステージ信号を変更することによ
りパルス幅を調整し変更することができる。 このパルス幅は第1表のステージのタイミング
に関係して定められる。すなわち第1表に示す如
く、INTLステージはステージカウンタ(C0〜
C2,C3〜C6)が(1,0)の状態で割り当
てられ、さらに(1,1),(1,2),(1,3)
…と8回目のステージ毎に割り当てられている。 各ステージが1マイクロセツクに設定されてい
るので8マイクロセツク毎にINTLステージが割
り当てられている。INTLステージでは角度信号
PCを検出してインクリメンタを制御する必要が
あるので、角度センサ98の出力PCが第7図に
示す同期化回路に印加されると、同期化回路はか
ならずINTLステージにひつかかるような同期化
パルスを作り、この同期化パルスPCSに基づき
INTLステージでインクリメンタコントローラを
制御する。 この同期化角度信号PCSはステージADVおよ
びRPMでも検出される。このステージADVと
RPMはそれぞれステージカウンタC0〜C2が
3と6の状態でC3〜C6の値が1つカウントア
ツプするごとに割り当てられている。そしてその
割り当てられたステージは8マイクロセツクのサ
イクルで回つている。 第7図のSTG0信号はステージカウンタのC
0〜C2の値が0のとき出力され、一方STG7
はC0〜C2が7の値のとき出力される。この出
力はC3〜C6に無関係に作られる。従つて第8
図からわかるように同期化角度信号PCSはステー
ジカウンタ出力C0〜C2が0の値から6の値ま
で必ずそのパルス幅がそんざいし、このパルスを
ステージINTL,ADV,RPMで検出し、インク
リメンタコントローラを制御する。 上と同様に同期化リフアレンスPRSを検出す
るCYLステージはステージカウンタ出力C0〜
C2の値が2ときに必ず割り当てられている、角
度センサ98よりリフアレンスパルスPRが入力
されたとき、この入力に同じ必ずステージカウン
タC0〜C2が2のとき同期化リフアレンス
PRSが出ることが必要である。第7図の回路は
STG0とSTG7の間のパルス幅ができるのでこ
の情報を十分満足する。 次に車輪速度を検出するVSPステージはステ
ージカウンタ出力C0〜C2の値が常に5の値の
ときに割り当てられている。従つてC0〜C2の
値が5の値のときに同期化PSS信号が出力されれ
ばよい。第7図の回路ではC0〜C2の値が0値
から6値まで出るのでこの値を満足する。第7図
でSTG0信号の代りにC0〜C2の値が4の値
のときに常にでる信号STG4を作りこの信号を
用い、さらにSTG7の信号の代りにC0〜C2
の値が6の値のときに常にでる信号STG6を用
いてもよい。この場合は信号PSが入力された場
合同期化信号PSSはステージカウンタの出力C0
〜C2の値が4と5のときに常に出力されること
になる。 ここでステージのサイクルについて説明する。
第1表においてステージカウンタ出力C0〜C6
の値が0から127までの128種類のステージ信号が
作られ、この信号が総て発生し終ると大サイクル
が完了し再び新しい大サイクルが始まる。この大
サイクルはさらに16個の小サイクルから構成さ
れ、この小サイクルは8種類のステージ信号から
構成されている。この小サイクルはステージカウ
ンタ出力C0〜C2の値が0から7のにそれぞれ
対応し、8マイクロセツクでこの小サイクルが完
了する。 センサからのパルス出力PR,PC,PSに対し
同期を確実にかけ、同期化パルスPRS,PCS,
PSSを確実に発生させるためには上記センサから
の出力がこの小サイクル以上のパルス幅を持つこ
とが必要である。例えば角度パルスはPCはエン
ジンの回転が早くなればなるほどそのデユーテイ
が狭くなる。例えば9000回転/分では約9マイク
ロセツクくらいになる。従つて9000回転/分に対
し十分に同期化できるようにするにはこの小サイ
クルをこれより短かくすることが必要であり、本
実施例では8マイクロセツクにしている。 次に第4図に示したインクリメンタ478の動
作について説明する。インクリメンタ478の詳
細な回路を第9図に示す。このインクリメンタの
機能は上で述べた如く三つあり、第1の機能は入
力データを1の値だけ増加させる機能であり、第
2の機能は入力データをリセツトする機能であ
り、第3の機能は入力データをそのまま出力する
機能である。インクリメント機能はICNT信号
で、リセツト機能はIRST信号が行なわれる。
ICNT信号がハイレベルの時、インクリメント機
能、ローレベルのときノンインクリメント機能、
IRST信号がハイレベルのとき、リセツト機能と
なり、IRST信号はICNT信号より優先する。 各処理の指令するステージ信号により、条件を
セレクトすればよい。その条件とは、同期化され
た外部入力や、第2比較結果のレジスタ群504
の出力である。また、出力レジスタ474にデー
タを転送し書き込む条件も、インクリメンタの条
件と同様である。 第10図は、燃料噴射信号INJの処理を説明し
た図である。気筒数の違いにより噴射の開始が異
なるため、CYL COUNTERとして作用するレ
ジスタ442により、リフアレンス信号PRSよ
り作られた初期角パルスINTLDをカウントし、
その結果を、気筒数に関連した値を保持している
CYLレジスタ404と比較し、大なりもしくは
等しくなつたとき、第1のレジスタの群502の
CYLFF506に1をセツトし、さらに第2のレ
ジスタ群504のCYLBF508に1をセツトす
る。このCYL BF=1でCYL COUNTER44
2はリセツトされる。またこのCYL BF=1の
とき、噴射時間を測定するINJ TIMER450が
リセツトされる。いつも、無条件で時間によりイ
ンクリメントされてゆき、噴射時間が設定された
INJDレジスタ412と比較し、大なりもしくは
等しいとき、第1のレジスタ群のINJ FF522
に1がセツトされる。また、第2のレジスタ群の
INJ BF524に1がセツトされる。このINJBF
=1のときは、時間によるインクリメントは禁止
する。このINJ BFの反転出力が燃料の噴射時間
幅となり、フユーエル・インゼクタの開弁時間と
なる。 第11図は、点火を制御する信号の処理を説明
した図である。初期角パルスINTLDによつて、
ADV COUNTERとして作用するレジスタ45
2をリセツトし、同期化された角度パルスPCが
ハイレベルであることによりインクリメントされ
る。そして、INTLDから点火する角度を保持し
ているADVレジスタ414と比較し、大なりも
しくは等しいとき、第1のレジスタ502の
ADV FF526に1をセツトし、また、第2の
レジスタ504のADV BF528に1がセツト
される。このADV BFの立上りを示すADVDに
より、通電開始のDWL COUNTER454をリ
セツトし、同期化された角度パルスPCがハイレ
ベルであることによりインクリメントされる。そ
して、前回の点火位置から通電開始する角度を保
持しているDWLレジスタ416と比較し、大な
りもしくは等しいとき、第1のレジスタ502の
DWL FF530に1をセツトし、また、第2の
レジスタ504のDWL BF532に1がセツト
される。このDWL BF532の出力が点火制御
信号ING1となる。 第12図はEGR(NIDL)の処理を設明した図
である。これらは、すべて比例ソレノイドである
ため、デユーテイ制御を行う。周期を保持する
EGRPレジスタ418とオン時間を保持する
EGRDレジスタ420の2つがあり、また、
TIMERとしては、EGR TIMER456により測
定される。処理上では、EGRP STGの処理のと
きは、無条件のインクリメント、またEGRPレジ
スタ418とEGR TIMER456との保持デー
タを比較し、大なりもしくは等しいとき、第1の
レジスタ群502のEGRP FF534に1をセツ
トする。さらに、第2のレジスタ群504の
EGRP BF536は1にセツトされる。 EGRD STGの処理のときは、無条件のノンイ
ンクリメント、また、EGRP BF=1でEGR
TIMER456はリセツトされる。EGRD FF5
38は、EGRDレジスタ420とEGR TIMER
456を比較し、その結果が大なりもしくは等し
いとき、1にセツトされ、EGRD BF540は1
にセツトされる。このEGRD BF540の反転出
力がEGRの制御信号である。NIDL同様の動作で
ある。 第13図は、エンジン回転数RPM(や車速
VSP)の測定方法や処理を説明した図である。 測定方法は、ある測定時間幅をRPMW
TIMER460で決定し、その時間幅にある同期
化された角度パルスPCを計数することにより得
るものである。 時間幅を測定するRPMW TIMER460は、
無条件にインクリメントされ、また、RPMW
BF552=1のとき、リセツトされる。RPMW
FF550に1がセツトされるのは、時間幅を保
持しているRPMWレジスタ426とRPMW
TIMER460を比較し、その結果が、大なりも
しくは等しいときである。 RPMW BF552の立上りを示すRPMWDに
より、該PCを計数したRPM COUNTER462
の内容を、出力レジスタ474のRPMレジスタ
430に転送し、書き込む。また、RPMW BF
552=1のときは、RPM COUNTER462
はリセツトされる。 VSP STGの処理についても、RPMと同様で
ある。 各レジスタの機能を第3表に示す。
[Table] Output from the stage latch circuit STGL in Figure 6
The STG0 and STG7 signals are circuits for synchronizing the input input from the outside with the internal clock signal of the input/output circuit 120.
Output STG7 is the stage counter
It is output when C0 to C2 of SC570 are all 1. External signals include, for example, a reference signal PR generated in synchronization with engine rotation, an angle signal PC, and a vehicle speed pulse PS generated in synchronization with wheel rotation. The periods of these pulses change greatly, and as they are, they are not synchronized with the clock signals φ1 and φ2. Therefore, it is not possible to determine whether to increment at the ADVSTG stage, VSPSTG stage, or RPMSTG stage in Table 1. Therefore, it is necessary to synchronize external pulses, such as pulses from a sensor, with the stages of the input/output circuit. Moreover, in order to improve the detection accuracy, the angle signal PC and the vehicle speed signal PS need to be synchronized with the stage with respect to the rising and rising edges of their input pulses. Reference signal PR
For this, it is sufficient to synchronize it with the rise. Output of stage latch circuit STGL in Figure 6
Using STG0 and STG7, the above synchronized signal is generated at φ2 timing. The circuit is shown in FIG. Further, the operation timing is shown in FIG. External input pulses such as sensor output, such as reference pulse PR, angle signal PC, vehicle speed signal
PS is latched by the STG0 output shown in FIG. 6 in latch circuits 600, 602, and 604 shown in FIG. 7, respectively. In Figure 8, A is the clock signal φ2, B is the clock signal φ1, and C and D are the stage signals STG7 and STG.
It is 0. This stage signal is generated in synchronization with φ2, as explained in FIG. The signal shown in E is the output pulse from the angle sensor or vehicle speed sensor and is the reference pulse PR or angle pulse PC.
Alternatively, it indicates the vehicle speed pulse PS, and the generation timing, pulse duty, and period of this signal are irregular, and are inputted regardless of the stage signal. Now, a signal as shown in FIG.
Assuming that the pulses are input to 00, 602, and 604, they are latched by the stage signal STG0 (pulse shown in the figure). Therefore, as shown in FIG. 8, the level becomes high at the time point. Furthermore, since the input signals RP, PC, and PS are at high level in the stage signal STG0 indicated by wo, the latch circuits 600, 602, and 6
The high level is latched at 04 respectively. However, in the stage signal STG0 shown by w, the input signal
Since PR, PC, and PS are at low level, the low level is latched. Therefore, the latch circuit 60
The outputs A1, A2, and A3 of 0, 602, and 604 are as shown in F. Latch circuits 606, 608,
610 latches the outputs A1, A2, and A3 respectively with the power of the stage signal STG7, so that the outputs rise from the point indicated by y. Furthermore, the stage signal STG7 also latches at a high level, so it continues to be at a high level. Therefore, the latch circuits 606, 608, 6
The ten output signals B1, B2, and B3 are as shown in FIG. The signal A1 and the signal B1 sent through the inverter 608 are input to the NOR circuit 612, and a synchronized reference signal PRS is generated as shown in FIG. This synchronized reference signal PRS
captures the rising edge of the reference signal PR and becomes the pulse width of the stage signals STG0 to STG7. EXCLUSIVELY OR circuits 614 and 616 receive signals A2 and B2 and signals A3 and B3, respectively, and the rising edge of the signals PC and PV generates the signal shown in (i), and the rising edge of the signals PC and PV generates the signal (g). do. The duty of signals R and G is the same as the duty shown in C, and the duty of the stage signal STG
Determined by 0 and STG7. In the above explanation, it was determined that the signals PR, PC, and PS were input at the same time with the same duty, but in reality, these signals are not input at the same time and their duties are different. Furthermore, even when looking at the same signal itself, its period and duty differ each time. However, due to FIG. 7 and the synchronization circuit, the pulse has a constant width. This pulse width is the stage signal STG
It is determined by the time difference between STG 0 and STG7. Therefore, latch circuits 600, 602, 604 and 606, 608, 6
By changing the stage signal applied to 10, the pulse width can be adjusted and changed. This pulse width is determined in relation to the timing of the stages in Table 1. In other words, as shown in Table 1, the INTL stage has a stage counter (C0~
C2, C3 to C6) are allocated in the state of (1,0), and further (1,1), (1,2), (1,3)
...and are assigned to each 8th stage. Since each stage is set to one microsec, an INTL stage is assigned every eight microsecs. In the INTL stage, the angle signal
Since it is necessary to detect the PC and control the incrementer, when the output PC of the angle sensor 98 is applied to the synchronization circuit shown in FIG. Make a pulse and based on this synchronized pulse PCS
Control the incrementer controller in the INTL stage. This synchronized angle signal PCS is also detected in stages ADV and RPM. This stage ADV
The RPM is assigned each time the values of C3 to C6 count up by one when the stage counters C0 to C2 are at 3 and 6, respectively. The assigned stage rotates in a cycle of 8 microsecs. The STG0 signal in Figure 7 is the C of the stage counter.
Output when the value of 0 to C2 is 0, while STG7
is output when C0 to C2 have a value of 7. This output is produced independently of C3-C6. Therefore, the eighth
As can be seen from the figure, the synchronized angle signal PCS always has a varying pulse width from the value of 0 to the value of 6 for the stage counter outputs C0 to C2, and this pulse is detected by the stages INTL, ADV, and RPM, and the increment controller control. As above, the CYL stage that detects the synchronization reference PRS uses the stage counter output C0~
When the reference pulse PR is input from the angle sensor 98, which is always assigned when the value of C2 is 2, the synchronized reference is always assigned to this input when the stage counter C0 to C2 is 2.
It is necessary for PRS to be issued. The circuit in Figure 7 is
Since the pulse width is between STG0 and STG7, this information is fully satisfied. Next, the VSP stage for detecting the wheel speed is assigned when the stage counter outputs C0 to C2 always have a value of 5. Therefore, it is sufficient that the synchronized PSS signal is output when the value of C0 to C2 is 5. In the circuit shown in FIG. 7, the values of C0 to C2 range from 0 to 6, so this value is satisfied. In Figure 7, instead of the STG0 signal, create a signal STG4 that always appears when the value of C0 to C2 is 4, use this signal, and use this signal instead of the signal of STG7.
A signal STG6 that is always output when the value of is 6 may be used. In this case, when the signal PS is input, the synchronization signal PSS is the output C0 of the stage counter.
It will always be output when the value of ~C2 is 4 and 5. The stage cycle will now be explained.
In Table 1, stage counter outputs C0 to C6
128 types of stage signals with values from 0 to 127 are created, and when all of these signals have been generated, the large cycle is completed and a new large cycle begins again. This large cycle is further composed of 16 small cycles, and this small cycle is composed of 8 types of stage signals. This small cycle corresponds to the values of stage counter outputs C0 to C2 from 0 to 7, respectively, and is completed in 8 microsecs. The pulse outputs PR, PC, and PS from the sensor are reliably synchronized, and the synchronized pulses PRS, PCS,
In order to reliably generate PSS, it is necessary that the output from the sensor has a pulse width longer than this short cycle. For example, the duty of the angular pulse becomes narrower as the engine rotates faster. For example, at 9000 rpm, it will be about 9 microsecs. Therefore, in order to achieve sufficient synchronization with respect to 9000 revolutions per minute, it is necessary to make this small cycle shorter than this, and in this embodiment it is 8 microsecs. Next, the operation of incrementer 478 shown in FIG. 4 will be explained. A detailed circuit of incrementer 478 is shown in FIG. As mentioned above, this incrementer has three functions: the first function is to increase the input data by a value of 1, the second function is to reset the input data, and the third function is to increase the input data by a value of 1. The function is a function that outputs input data as is. The increment function is performed by the ICNT signal, and the reset function is performed by the IRST signal.
When ICNT signal is high level, increment function, when low level, non-increment function,
When the IRST signal is high level, it becomes a reset function and the IRST signal has priority over the ICNT signal. The conditions may be selected based on the stage signals commanded by each process. The conditions include synchronized external input and the register group 504 of the second comparison result.
This is the output of Further, the conditions for transferring and writing data to the output register 474 are also similar to the conditions for the incrementer. FIG. 10 is a diagram explaining the processing of the fuel injection signal INJ. Since the start of injection differs depending on the number of cylinders, the register 442 acting as a CYL COUNTER counts the initial angular pulse INTLD generated from the reference signal PRS,
The result is held as a value related to the number of cylinders.
When compared with the CYL register 404 and when they are greater than or equal, the first register group 502 is
CYLFF 506 is set to 1, and CYLBF 508 of the second register group 504 is set to 1. With this CYL BF=1, CYL COUNTER44
2 is reset. Also, when CYL BF=1, the INJ TIMER 450 that measures the injection time is reset. Always unconditionally incremented by time, the injection time is set.
Compare with INJD register 412, and if greater or equal, INJ FF522 of the first register group
is set to 1. Also, the second register group
INJ BF524 is set to 1. This INJBF
When =1, increment by time is prohibited. This reversed output of INJ BF becomes the fuel injection time width, which becomes the valve opening time of the fuel injector. FIG. 11 is a diagram illustrating processing of signals that control ignition. By the initial angular pulse INTLD,
Register 45 acts as ADV COUNTER
2 and is incremented by the synchronized angle pulse PC being high. Then, compare it with the ADV register 414 that holds the ignition angle from INTLD, and if it is greater or equal, the first register 502
ADV FF 526 is set to 1, and ADV BF 528 of the second register 504 is set to 1. ADVD indicating the rise of ADV BF resets the DWL COUNTER 454, which starts energization, and is incremented when the synchronized angle pulse PC is at a high level. Then, it is compared with the DWL register 416 that holds the angle at which energization starts from the previous ignition position, and if the angle is greater or equal, the first register 502 is set.
The DWL FF 530 is set to 1, and the DWL BF 532 of the second register 504 is set to 1. The output of this DWL BF532 becomes the ignition control signal ING1. FIG. 12 is a diagram illustrating the processing of EGR (NIDL). Since these are all proportional solenoids, they perform duty control. maintain the cycle
Holds EGRP register 418 and on time
There are two EGRD registers 420, and
The TIMER is measured by EGR TIMER456. In processing, when processing the EGRP STG, the data held in the EGRP register 418 and the EGR TIMER 456 are compared, and if they are greater or equal, 1 is set in the EGRP FF 534 of the first register group 502. Set. Furthermore, the second register group 504
EGRP BF 536 is set to 1. When processing EGRD STG, unconditional non-increment, or EGR with EGRP BF=1.
TIMER 456 is reset. EGRDFF5
38 is the EGRD register 420 and EGR TIMER
456 and the results are greater than or equal, EGRD BF540 is set to 1.
is set to The inverted output of this EGRD BF540 is the EGR control signal. The operation is similar to NIDL. Figure 13 shows the engine speed RPM (and vehicle speed).
FIG. The measurement method uses a certain measurement time width as RPMW.
It is determined by the TIMER 460 and obtained by counting the synchronized angle pulses PC within that time width. RPMW TIMER460, which measures time width,
is unconditionally incremented and also RPMW
It is reset when BF552=1. RPMW
FF550 is set to 1 because the RPMW register 426 that holds the time width and the RPMW
This is when the TIMER 460 is compared and the result is greater than or equal. RPM COUNTER462 that counted the PC by RPMWD indicating the rise of RPMW BF552
The contents of are transferred to the RPM register 430 of the output register 474 and written. Also, RPMW BF
When 552=1, RPM COUNTER462
will be reset. VSP STG processing is also similar to RPM. Table 3 shows the functions of each register.

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】 次に基準レジスタ470に基準データをセツト
する方法について説明する。レジスタ402,4
04,406,410はこの実施例の装置の起動
時にセツトされる。これらの値は一度セツトされ
ると変更されない。次にレジスタ408のデータ
セツトはプログラム処理により行なわれる。 レジスタ412にはフユーエルインジエクタ6
6の開弁時間を表わすデータINJDが入力され
る。このデータINJDは例えば次のようにして定
められる。エアフローメータ14の出力信号QA
をマルチプレクサ122を介してアナログデイジ
タル変換器124へ取込む。ここでデイジタルデ
ータに変換されレジスタ(図示せず)に保持され
る。この吸入空気量を表わすデータと第4図のレ
ジスタ430に保持されているエンジン回転速度
データNとから計算処理あるいはマツプ状態に記
憶された情報を検索することにより演算処理によ
り負荷データTPを求める。さらに吸気温センサ
16、水温センサ96、大気圧センサ146の出
力をデイジタル変換し、このデータとエンジンの
運転状態により補正を行う。この補正係数をK1
とする。さらにバツテリ電圧もデイジタル化さ
れ、このデータに応じて補正が行なわれる。この
補正係数をTSとする。次にλセンサ80によつ
て補正が行なわれる。この補正係数をαとする。
すなわちデータINJDは次の式となる。この INJD=α(K1.TP+TS) ようにしてフユーエルインジエクタの開弁時間が
定められる。しかしここで示した方法は1例であ
り、他の方法で定めることはもちろん可能であ
る。 レジスタ414には点火時期を表わすデータ
ADVがセツトされる。このデータADVは次のよ
うにして作られる。上記負荷データTPと回転数
をフアクタとするマツプ状態の点火データθIGを
ROM118内に保持し、このマツプより求め
る。さらにこのθIGに始動補正、水温補正、加速
補正などを加える。このようにして点火時期デー
タADVが作られる。 レジスタ416には点火コイルの1次電流充電
時間を制御するためのデータとしてデータDWL
がセツトされる。このデータDWLは上記データ
ADVの値とバツテリ電圧のデイジタル値より計
算されて求められる。 次に、入力情報をもとに入力情報に対応した制
御量である点火時期を求める補間の方法について
説明する。第14図はx軸としてエンジン回転速
度データN,y軸として基本燃料噴射時間を表わ
す上記負荷データTPをとつたときの点火進角を
Z軸方向(図では等高線として表わされている)
にプロツトしたものである。この図に示すよよう
に制御特性である点火進角はエンジン回転速度N
が低く、負荷TPが中程度のあたりで変化が激し
いため等高線が急である。一方、エンジン回転速
度Nが中以上で負荷TPが大きい場合には変化が
小さいので等高線がゆるやかである。この等高線
の傾斜に合わせてx軸及びy軸を分割することに
より均一の精度が維持できる。ここでは、x軸及
びy軸を2の4乗を最小間隔として11分割した場
合を示している。 今、入力情報としてのエンジン回転速度N及び
負荷TPが得られたときの点火進角Zを求める場
合を示す。 第14図に示す各分割点の値及びx軸、y軸上
の分割点の交点における点火進角の値のデイジタ
ル値は、第15図に示すようにデータとして
ROM118に記憶してある。第15図aはx軸
上の分割点の値を、第15図bはy軸上の分割点
の値を、第15図eは上記a及びbに示される分
割点の交点での制御出力特性(点火進角)の値を
意味している。このa,b,eのデータは、分割
点の最小間隔24ビツトを意味する下位4ビツト
(図中の斜線で示される部分)を除いた上位5ビ
ツトのみがROM118に記憶されている。第1
5図c,dは入力情報として第14図に示すx,
yが入力されたときのそのx及びyの値を示す。
ここでは、入力情報、出力である制御特性をすべ
て9ビツトで表わしている。 第16図の処理フローに従つて、入力値に対応
した制御特性値を求める方法を説明する。まず、
エンジン回転速度NをRPMレジスタ第4図の4
30より入力し、負荷状態TPをエアフロセンサ
14より与えられる空気流量QAをアナログデイ
ジタル変換器を介して得られる値と上記エンジン
回転速度Nとから求める。こうして得られたエン
ジン回転速度Nを入力値xとして一方、演算によ
り求められた負荷状態TPをyとしてRAM内の
ワークエリアに一時記憶しておく。(第16図の
ステツプ800)次に上記のようにして得られた
デイジタル値x及びy(第15図c及びdを用い
て、このx及びyをはさむ分割点を求める。この
分割点の具体的求め方を第17図に示す。具体的
に第15図に示す値を用いて説明すると、まず入
力値x〔001111010〕を最小分割点間隔2の4乗で
除す。すなわちCPU14内にある桁移動を行う
手段により4ビツト右に桁移動する。これにより
xは〔0111〕となる。第17図850ステツプでこ
の入力値x〔0111〕を最小分割点x0〔00000〕及び
最大分割点〔10011〕と比較する。このROM1
18内のデータxiへのアクセスは、第3図の説明
したようにCPU114から3種類のバス162,
164,166を用いて行う。以下、分割点のデ
ータはこれと同様に扱うものとする。 上記チエツクではx0≦x≦x11を満足するので
まず最初にステツプ854でi=(11+1)/2
=6となるiの初期値を決定する。これに基づき
hの初期値も決定する。次にステツプ860で点
x6の値〔00110〕と比較する。この結果、x>x6
なる関係が成り立つのでステツプ862へ進みi
=6+3=9(hはステツプ856と858によ
りh=3となつている)、h=3よりステツプ8
64の判定はNOとなる。次に、上と同様にxと
x9〔01011〕とを比較する。この場合はx<x9な
る関係が成り立つのでステツプ870へ進みi=
9−1=8(hはステツプ858によりh=1と
なつている)、ステツプ872の判定によりxと
x8〔01001〕とステツプ860で比較する。この
場合もx<x8なのでステツプ870へ進みi=
8−0=8(hはステツプ858でh=0となつ
ている)となる。次のステツプ872における判
定h=0が成り立つのでステツプ874へ進む。
この場合、xはxi−1とxiとの間にあるので後の
処理のためにステツプ874でiをi−1の値と
する。そこでステツプ866で入力値xはx7と
x8の間にあることが分かる。 なお、ステツプ850の判定で、入力値xが分
割点の最小値x0より小さいか、分割点の最大値
xmよりも大きい場合には、入力値はそれぞれx0
及びxmに等しいとみなしている。 以上は、入力値xに対して述べたが入力値yに
ついても同様である。上記方法で求めた分割点の
値xi,xi+1,yj,yj+1はRAM116内のワ
ークエリアに一時記憶しておく。次に上記方法で
求められたi及びjから分割点の交点の制御量
Zijを求める。すなわち、制御量を記憶している
テーブルの先頭のアドレスをCONTとすると分
割点(xi,yj)の制御量Zijのデータは、その格
納アドレスをMAijとすると MAij=CONT+2(i×jm+j) ……(1) なるアドレスに格納されている。なお、この(1)式
における係数2は、ROM118が1バイト/1
語であると仮定していることを示している。 そこで第3図の所で説明した様に、CPU11
4よりアドレスバス164を介してデータ格納ア
ドレスMAijを指定して、コントロールバス16
6を介してROMをコントールすることにより、
データバス162を介してROM118内のデー
タZijがCPU114内のレジスタに格納される。
このデータZijを一時RAM116内のワークエリ
アに上記3種類のバスを用いて記憶しておく。同
様の方法で入力値x及びyをはさむ分割点の制御
量Zij+1,Zi+1j,Zi+1j+1をRAM116内
のワークエリアに記憶しておく(第16図ステツ
プ830)。 次に、上記第16図ステツプ830で求めた各
分割点の制御量をもとに入力値x及びyに対した
制御量Zを補間によつて求める。ここでは直線補
間を3回用いることにより制御量Zを求める。ま
ずx軸方向の補間を2回行ない、その結果求めら
れる制御量Zj及びZj+1をもとにy軸方向の補間
を行う。補間の式は下記の様になる。 Zj=Zij+(Zi+1j−Zij)x−xi/xi+1−xi ……(2) Zi+1=Zij+1(Zi+1j−Zij+1) x−xi/xi+1−xi ……(3) Z=Zi+(Zj+1−Zj)y−yj/yj+1−yi ……(4) 第16図ステツプ820及び830でRAM1
16内のワークエリアに一時記憶しておいた値、
xi,xi+1,yi,yi+1,Zij,Zij+1,Zi+1j,
Zi+1j,j+1をもとにして(2),(3),(4)式を計算
する。(2)式を例にとつて説明すると、まず、
RAM内のZi+1j,ZijのデータをCPU内によりデ
ータバス162を介してCPU内のレジスタに読
み込み、CPU内の減算手段を用いて(Zi+1j−
Zij)の減算を行い、この結果W1を一時RAM内
のワークエリアに記憶する。次に、(x−xi)の
減算を行う前にxとxiの桁数を合わせるためにxi
の値を2の4乗(分割点の最小間隔)倍し、(x
−xi)の減算を行う。この結果W2と上記RAM
内の演算結果W1の乗算はCPU内の加算手段を
用いて、W2をW1回加算することにより行い、
この演算結果W3を同様にRAMに記憶する。こ
の乗算は、CPU内に乗算手段を有する場合は、
より簡単に行なえる。次に(2)式の分母である(xi
+1−xi)を減算手段により求める。ここで、上
記xi、及びxi+1は、第15図aに示した様に、
下位4ビツトを除いた上位5ビツトの値であるの
で、(xi+1−xi)の減算結果W4は、(2)式にお
ける(xj+1−xi)による除算に相当する桁移動
の桁数Lの一部を意味している。ここでLは、分
割点の最小間隔を2のk乗とすると L=(xi+1−xi)/2+k ……(5) となる。(5)式におけるxi,xi+1は第15図aに
示す5ビツトのデータである。 そこで、上記演算結果W3を桁移動手段により
L桁だけ右へ桁移動し、その結果にZijを加算手
段を用いて加算することによりZijが求められる。 以上説明したことと同様に(3)式及び(4)式によ
り、最終的に、入力値x及びyに対応した制御量
Zが求められる。 この制御量Zは点火進角を表わしているので、
第11図に示す初期角パルスINTLD(このパル
スはエンジンの気筒数に関係し、4気筒では180
度毎に、6気筒では120度毎に出力される)の間
隔をW、第1図で説明したようにエンジンが回転
する毎に発生する信号PCの所定角度を1度とす
ると、点火時期を制御するためのADVレジスタ
に設定する値ADVVは ADVV=W−Z ……(6) で求められる。この値を第4図で説明したパルス
出力回路126内のADVレジスタに設定するこ
とにより第11図で説明したようにして、点火時
期を制御することができる。 以上述べたことから本実施例の効果として、入
力情報に対応した制御特性が、どのような関係で
あつても、入力情報に対応した制御特性の精度を
入力情報全体について必要最大限に保ちつつ、必
要記憶容量を必要最小限に押えることができるの
で従来と比較して記憶容量の著しい削減が図れる
ことがあげられる。例えば、第14図に示した実
施例の場合には、制御特性の精度を必要最小限に
保ちつつ入力情報を2のn乗の間隔で等分割する
場合(本実施例ではn=4なので19分割すること
になる)に必要とする記憶容量20×20×9=3600
ビツトに対して、本発明によれば、12×12×9+
12×2×9=1512ビツトで済むので、記憶容量が
著しく削減できる。 また、本発明において、任意の入力値をはさむ
分割点を求める場合に、2分割探索法を用いるこ
とにより、リニアサーチに比較して、処理が速く
なるので、自動車の制御のように高速回転するエ
ンジンの回転数に対応して処理を行う場合には効
果が大きい。 さらに、入力情報の分割点の間隔を2のn1乗、
2のn2乗……2のnm乗(n1,n2……nmは正の
整数)と2のべき乗にすることにより、補間演算
において必要となる割り算は桁移動で代行できる
ので、除算機能が不要になり、CPUが簡単なも
ので済むのでコスト低減になる。 また、本発明の実施例の効果として、入力情報
の分割点のデータを分割点の最小間隔2のk乗の
kビツトを除いた上位ビツトのみの情報として記
憶することにより、記憶容量を削減できる。 本発明によれば点火時期特性テーブルのパラメ
ータとしてエンジンの基本燃料供給量を示す負荷
状態とエンジン回転速度を用いているのでメモリ
が有効に利用できると共に、記憶容量が減少さ
れ、更にEGR作動やエアクリーナの目詰り等が
あつても正確な点火時期が検索できるものであ
る。
[Table] Next, a method for setting reference data in the reference register 470 will be explained. Register 402,4
04, 406, and 410 are set when the device of this embodiment is started. Once set, these values do not change. Next, data set in register 408 is performed by program processing. The register 412 contains the fuel injector 6.
Data INJD representing the valve opening time of No. 6 is input. This data INJD is determined, for example, as follows. Output signal QA of air flow meter 14
is input to an analog-to-digital converter 124 via a multiplexer 122. Here, it is converted into digital data and held in a register (not shown). The load data TP is obtained by calculation processing from the data representing the intake air amount and the engine rotational speed data N held in the register 430 in FIG. 4, or by searching the information stored in the map state. Furthermore, the outputs of the intake air temperature sensor 16, water temperature sensor 96, and atmospheric pressure sensor 146 are converted into digital data, and correction is performed based on this data and the operating state of the engine. This correction factor is K1
shall be. Furthermore, the battery voltage is also digitized, and correction is performed according to this data. Let this correction coefficient be TS. Correction is then performed by the λ sensor 80. Let this correction coefficient be α.
In other words, data INJD is expressed as follows. The valve opening time of the fuel injector is determined as follows: INJD=α(K1.TP+TS). However, the method shown here is just one example, and it is of course possible to define it using other methods. The register 414 contains data representing the ignition timing.
ADV is set. This data ADV is created as follows. The ignition data θIG in the map state with the above load data TP and rotation speed as factors.
It is stored in the ROM 118 and determined from this map. Furthermore, start correction, water temperature correction, acceleration correction, etc. are added to this θIG. In this way, the ignition timing data ADV is created. The register 416 contains data DWL as data for controlling the primary current charging time of the ignition coil.
is set. This data DWL is the above data
It is calculated from the ADV value and the digital value of battery voltage. Next, an interpolation method for determining the ignition timing, which is a control amount corresponding to the input information, based on the input information will be described. Figure 14 shows the ignition advance angle in the Z-axis direction (represented as contour lines in the figure) when the x-axis is the engine speed data N and the y-axis is the load data TP representing the basic fuel injection time.
It was plotted on. As shown in this figure, the ignition advance angle, which is a control characteristic, is determined by the engine rotational speed N
The contour lines are steep because the load TP is low and changes rapidly around medium load TP. On the other hand, when the engine speed N is medium or higher and the load TP is large, the change is small and the contour lines are gentle. Uniform accuracy can be maintained by dividing the x-axis and y-axis according to the slope of the contour lines. Here, a case is shown in which the x-axis and y-axis are divided into 11 parts with the minimum interval being 2 to the 4th power. Now, a case will be shown in which the ignition advance angle Z is determined when the engine rotational speed N and the load TP are obtained as input information. The digital value of the value of each dividing point shown in FIG. 14 and the value of the ignition advance angle at the intersection of the dividing points on the x-axis and y-axis is expressed as data as shown in FIG. 15.
It is stored in ROM118. Figure 15a shows the value of the dividing point on the x-axis, Figure 15b shows the value of the dividing point on the y-axis, and Figure 15e shows the control output at the intersection of the dividing points shown in a and b above. It means the value of the characteristic (ignition advance angle). Of the data a, b, and e, only the upper 5 bits are stored in the ROM 118, excluding the lower 4 bits (the shaded area in the figure), which means the minimum interval of 24 bits between division points. 1st
Figure 5c and d are the input information for x shown in Figure 14,
Shows the values of x and y when y is input.
Here, all input information and output control characteristics are expressed in 9 bits. A method for determining control characteristic values corresponding to input values will be explained according to the processing flow shown in FIG. first,
Set the engine speed N to the RPM register at 4 in Figure 4.
30, and the load state TP is determined from the air flow rate QA given by the air flow sensor 14 from the value obtained via the analog-to-digital converter and the engine rotational speed N. The engine rotational speed N obtained in this manner is used as an input value x, and the load state TP determined by the calculation is temporarily stored as y in a work area in the RAM. (Step 800 in FIG. 16) Next, using the digital values x and y obtained as described above (FIG. 15 c and d), find a dividing point that sandwiches x and y. Figure 17 shows how to find the target.To explain specifically using the values shown in Figure 15, first divide the input value x [001111010] by the fourth power of the minimum dividing point interval 2. In other words, The digits are shifted 4 bits to the right by means of digit shifting. This makes x become [0111]. At step 850 in Fig. 17, this input value x [0111] is converted to the minimum dividing point x0 [00000] and the maximum dividing point [0111]. 10011].This ROM1
As explained in FIG. 3, access to the data xi in
164 and 166. Hereinafter, the data of the division points will be handled in the same way. In the above check, since x0≦x≦x11 is satisfied, first, in step 854, i=(11+1)/2
Determine the initial value of i which becomes =6. Based on this, the initial value of h is also determined. Then, in step 860,
Compare with the value of x6 [00110]. As a result, x>x6
Since the following relationship holds true, proceed to step 862 i
=6+3=9 (h is set to h=3 by steps 856 and 858), step 8 from h=3
The determination of 64 is NO. Next, as above, x and
Compare with x9 [01011]. In this case, the relationship x<x9 holds, so proceed to step 870 and i=
9-1=8 (h is set to h=1 in step 858), and x and x are determined in step 872.
Compare with x8 [01001] in step 860. In this case as well, since x<x8, proceed to step 870 and i=
8-0=8 (h is set to h=0 in step 858). Since the determination h=0 in the next step 872 holds true, the process advances to step 874.
In this case, since x is between xi-1 and xi, i is set to the value of i-1 in step 874 for later processing. Therefore, in step 866, the input value x is x7.
It can be seen that it is between x8. In addition, in the judgment at step 850, it is determined whether the input value x is smaller than the minimum value x0 of the dividing point or the input value
If larger than xm, the input value is x0 respectively
and xm. The above has been described for the input value x, but the same applies to the input value y. The division point values xi, xi+1, yj, yj+1 obtained by the above method are temporarily stored in a work area in the RAM 116. Next, from i and j obtained by the above method, the control amount of the intersection of the dividing points
Find Zij. In other words, if CONT is the first address of the table that stores the control amount, then the data of the control amount Zij at the division point (xi, yj) is MAij=CONT+2(i×jm+j), where MAij is the storage address. (1) Stored at the address. Note that the coefficient 2 in this equation (1) means that the ROM 118 is 1 byte/1
This indicates that it is assumed to be a word. Therefore, as explained in Figure 3, CPU11
4, the data storage address MAij is specified via the address bus 164, and the control bus 16
By controlling the ROM through 6,
Data Zij in ROM 118 is stored in a register in CPU 114 via data bus 162.
This data Zij is temporarily stored in a work area in the RAM 116 using the above three types of buses. In a similar manner, the control amounts Zij+1, Zi+1j, Zi+1j+1 of the division points sandwiching the input values x and y are stored in the work area in the RAM 116 (step 830 in FIG. 16). Next, the control amount Z for the input values x and y is determined by interpolation based on the control amount for each division point determined in step 830 of FIG. 16 above. Here, the control amount Z is obtained by using linear interpolation three times. First, interpolation in the x-axis direction is performed twice, and interpolation in the y-axis direction is performed based on the control amounts Zj and Zj+1 obtained as a result. The interpolation formula is as follows. Zj=Zij+(Zi+1j-Zij)x-xi/xi+1-xi...(2) Zi+1=Zij+1(Zi+1j-Zij+1) x-xi/xi+1-xi...(3) Z=Zi+(Zj+1-Zj)y- yj/yj+1-yi...(4) RAM1 at steps 820 and 830 in Figure 16
The value temporarily stored in the work area in 16,
xi, xi+1, yi, yi+1, Zij, Zij+1, Zi+1j,
Calculate equations (2), (3), and (4) based on Zi+1j and j+1. Taking equation (2) as an example, first,
The data of Zi+1j and Zij in the RAM is read into the register in the CPU via the data bus 162, and the subtraction means in the CPU is used to calculate (Zi+1j−
Zij) is subtracted, and the result W1 is temporarily stored in the work area in the RAM. Next, in order to match the number of digits of x and xi before subtracting (x - xi), xi
Multiply the value of 2 to the 4th power (minimum interval between dividing points) and obtain (x
−xi) is subtracted. As a result, W2 and the above RAM
The multiplication of the operation result W1 in is performed by adding W2 once W1 using the addition means in the CPU,
This calculation result W3 is similarly stored in the RAM. This multiplication can be done by
It's easier to do. Next, the denominator of equation (2) is (xi
+1−xi) is determined by the subtraction means. Here, the above xi and xi+1 are as shown in Figure 15a,
Since it is the value of the upper 5 bits excluding the lower 4 bits, the subtraction result W4 of (xi + 1 - xi) is a part of the number of digits L of digit shift corresponding to division by (xj + 1 - xi) in equation (2). It means. Here, L is expressed as L=(xi+1-xi)/2+k (5), assuming that the minimum interval between dividing points is 2 to the k power. xi and xi+1 in equation (5) are the 5-bit data shown in FIG. 15a. Therefore, Zij is obtained by shifting the calculation result W3 to the right by L digits using a digit shifting means and adding Zij to the result using an adding means. Similarly to what has been explained above, the control amount Z corresponding to the input values x and y is finally obtained using equations (3) and (4). This control amount Z represents the ignition advance angle, so
The initial angular pulse INTLD shown in Figure 11 (this pulse is related to the number of cylinders in the engine; for 4 cylinders it is 180
If the interval is W, and the predetermined angle of the signal PC generated every time the engine rotates is 1 degree, as explained in Figure 1, then the ignition timing is The value ADVV set in the ADV register for control is obtained by ADVV=W-Z (6). By setting this value in the ADV register in the pulse output circuit 126 described in FIG. 4, the ignition timing can be controlled as described in FIG. 11. From the above, the effect of this embodiment is that no matter what the relationship between the control characteristics corresponding to the input information, the accuracy of the control characteristics corresponding to the input information can be maintained to the maximum necessary extent for the entire input information. Since the required storage capacity can be kept to the necessary minimum, the storage capacity can be significantly reduced compared to the conventional method. For example, in the case of the embodiment shown in FIG. 14, input information is equally divided at intervals of 2 to the n power while maintaining the accuracy of control characteristics to the necessary minimum (in this embodiment, n=4, so 19 Storage capacity required for (to be divided) 20 x 20 x 9 = 3600
According to the invention, 12×12×9+
Since it only requires 12 x 2 x 9 = 1512 bits, the storage capacity can be significantly reduced. In addition, in the present invention, when finding division points that sandwich arbitrary input values, by using the two-part search method, the processing is faster than a linear search, so the processing speed is faster than that of a linear search. This is highly effective when processing is performed in accordance with the engine speed. Furthermore, the interval between the dividing points of the input information is set to 2 to the n1 power,
By raising 2 to the power of n2...2 to the power of nm (n1, n2...nm is a positive integer) and a power of 2, the division required in interpolation calculations can be performed by moving digits, so there is no need for a division function. This reduces costs because a simple CPU is required. Furthermore, as an effect of the embodiment of the present invention, the storage capacity can be reduced by storing the data of the division points of input information as information only of the upper bits excluding the k bits of the minimum interval 2 of the division points to the k power. . According to the present invention, since the load condition indicating the basic fuel supply amount of the engine and the engine speed are used as the parameters of the ignition timing characteristic table, the memory can be used effectively and the storage capacity can be reduced. This allows accurate ignition timing to be found even if the engine is clogged.

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

第1図は本発明の1実施例のセンサとアクチユ
エータの位置を示す配置図、第2図は第1図の動
作を説明するための動作説明図、第3図は第1図
の制御回路の詳細図、第4図は第3図の入出力回
路の部分詳細図、第5図は第4図の動作説明図、
第6図は第4図のステージカウンタの詳細図、第
7図は同期化回路の詳細図、第8図は第7図の動
作説明図、第9図はインクリメンタコントローラ
の詳細図、第10図は燃料噴射信号処理の動作説
明図、第11図は点火時期制御の動作説明図、第
12図はEGRあるいはNIDLの処理の動作説明
図、第13図はエンジン回転速度RPMあるいは
車速VSP検出の動作説明図である。第14図は
点火進角の特性図、第15図は第4図xとyの交
点の特性を示す特性図、第16図は動作説明図、
第17図は分割点の検索を説明する説明図であ
る。 10…制御回路、12…エアクリーナ、14…
エアフローメータ、36…点火プラグ、38…配
電器、40…点火コイル、98…角度センサ、1
14…CPU、116…RAM、118…ROM、
120…入出力回路。
FIG. 1 is a layout diagram showing the positions of sensors and actuators in one embodiment of the present invention, FIG. 2 is an operation explanatory diagram for explaining the operation of FIG. 1, and FIG. 3 is an illustration of the control circuit of FIG. 1. Detailed diagram, Figure 4 is a partial detailed diagram of the input/output circuit in Figure 3, Figure 5 is an explanatory diagram of the operation of Figure 4,
Fig. 6 is a detailed diagram of the stage counter in Fig. 4, Fig. 7 is a detailed diagram of the synchronization circuit, Fig. 8 is an explanatory diagram of the operation of Fig. 7, Fig. 9 is a detailed diagram of the incrementer controller, and Fig. 10 is a detailed diagram of the stage counter in Fig. 4. Figure 11 is a diagram explaining the operation of fuel injection signal processing, Figure 11 is a diagram explaining the operation of ignition timing control, Figure 12 is a diagram explaining the operation of EGR or NIDL processing, and Figure 13 is a diagram explaining the operation of engine rotation speed RPM or vehicle speed VSP detection. It is an operation explanatory diagram. Fig. 14 is a characteristic diagram of the ignition advance angle, Fig. 15 is a characteristic diagram showing the characteristics of the intersection of x and y in Fig. 4, Fig. 16 is an operation explanatory diagram,
FIG. 17 is an explanatory diagram illustrating the search for division points. 10...control circuit, 12...air cleaner, 14...
Air flow meter, 36... Spark plug, 38... Power distributor, 40... Ignition coil, 98... Angle sensor, 1
14...CPU, 116...RAM, 118...ROM,
120...Input/output circuit.

Claims (1)

【特許請求の範囲】 1 (a) エンジンに吸入される空気量情報を検出
する空気流量検出手段; (b) エンジンの回転数情報を検出する回転数検出
手段; (c) 前記空気量検出手段から得られる空気量情報
と前記回転数検出手段から得られる回転数情報
とに基づいて負荷情報を決定する負荷情報決定
手段; (d) 回転数情報と負荷情報とをそれぞれ所定数の
分割点にて分割し、この分割点順番に従つて決
定された番地に点火データを予め記憶した記憶
手段; (e) 前記負荷情報決定手段からの負荷情報と前記
回転数検出手段からの回転数情報に基づいて前
記記憶手段から対応した負荷情報及び回転数情
報により定まる点火データを読みだし、この読
み出された点火データに基づいて点火時期を制
御する点火制御手段 とよりなるエンジンの点火時期制御装置。
[Scope of Claims] 1 (a) Air flow rate detection means for detecting information on the amount of air taken into the engine; (b) Rotation speed detection means for detecting engine rotation speed information; (c) Said air amount detection means load information determining means for determining load information based on the air amount information obtained from the rotation speed information and the rotation speed information obtained from the rotation speed detection means; (d) dividing the rotation speed information and the load information into a predetermined number of division points, respectively; (e) storage means that divides the ignition data into segments and stores the ignition data in advance at addresses determined according to the order of the division points; (e) based on the load information from the load information determining means and the rotational speed information from the rotational speed detection means; An ignition timing control device for an engine comprising ignition control means for reading ignition data determined by corresponding load information and rotation speed information from the storage means and controlling ignition timing based on the read ignition data.
JP12596977A 1977-10-19 1977-10-19 Engine controller Granted JPS5458111A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12596977A JPS5458111A (en) 1977-10-19 1977-10-19 Engine controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12596977A JPS5458111A (en) 1977-10-19 1977-10-19 Engine controller

Publications (2)

Publication Number Publication Date
JPS5458111A JPS5458111A (en) 1979-05-10
JPS6338547B2 true JPS6338547B2 (en) 1988-08-01

Family

ID=14923455

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12596977A Granted JPS5458111A (en) 1977-10-19 1977-10-19 Engine controller

Country Status (1)

Country Link
JP (1) JPS5458111A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3502573C3 (en) * 1985-01-26 2002-04-25 Bosch Gmbh Robert Device for venting fuel tanks

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5372931A (en) * 1976-12-10 1978-06-28 Nippon Soken Inc Internal combustion engine electronic controller
JPS53137344A (en) * 1977-04-14 1978-11-30 Nippon Soken Inc Internal combustion engine ignition time adjustor

Also Published As

Publication number Publication date
JPS5458111A (en) 1979-05-10

Similar Documents

Publication Publication Date Title
JPS623303B2 (en)
JPS6060025B2 (en) car control method
JPS6360220B2 (en)
US4282573A (en) Processor interrupt device for an electronic engine control apparatus
KR930006056B1 (en) Air-fuel ratio feedback control method of mixer supplied to internal combustion engine
JPS6060019B2 (en) How to control the engine
JPS6218742B2 (en)
JPS623304B2 (en)
US4530332A (en) Fuel control system for actuating injection means for controlling small fuel flows
CA1109695A (en) Apparatus for detecting revolutions of an internal combustion engine
JPH0120301B2 (en)
JPS6225860B2 (en)
JPS6315465B2 (en)
JPH0112931B2 (en)
JPH0315648A (en) Ignition timing control device for internal combustion engine
JPS6224616B2 (en)
JPS6256342B2 (en)
JPS627373B2 (en)
JPS627381B2 (en)
JPS6338547B2 (en)
JPS6319698B2 (en)
JPS6217104B2 (en)
JPS6224617B2 (en)
JPS623305B2 (en)
JPS6315469B2 (en)