JPH0932627A - 内燃機関用制御装置の制御データ書替え方法及び装置 - Google Patents

内燃機関用制御装置の制御データ書替え方法及び装置

Info

Publication number
JPH0932627A
JPH0932627A JP18266795A JP18266795A JPH0932627A JP H0932627 A JPH0932627 A JP H0932627A JP 18266795 A JP18266795 A JP 18266795A JP 18266795 A JP18266795 A JP 18266795A JP H0932627 A JPH0932627 A JP H0932627A
Authority
JP
Japan
Prior art keywords
control
data
rewriting
internal combustion
combustion engine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP18266795A
Other languages
English (en)
Inventor
Atsufumi Kinoshita
敦文 木下
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.)
Mahle Electric Drive Systems Co Ltd
Original Assignee
Kokusan Denki Co 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 Kokusan Denki Co Ltd filed Critical Kokusan Denki Co Ltd
Priority to JP18266795A priority Critical patent/JPH0932627A/ja
Publication of JPH0932627A publication Critical patent/JPH0932627A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 内燃機関の動作中に制御データを書替えるこ
とができる内燃機関用制御装置の制御データ書替え方法
を提供する。 【解決手段】外部端末装置22を内燃機関用制御装置2
のCPU12aに接続し、内燃機関用制御装置2と外部
端末装置22との間で通信を行わせることによりEEP
ROM12eへのデータの書き込みを行わせる。EEP
ROMへのデータの書込みを行わせるためのプログラム
はROM12bに記憶させておく。1回に書替える制御
データを1つだけに制限し、書替えの対象とする制御デ
ータを記憶したアドレスの情報と、新たな制御データの
値とを受信したときにROMに記憶されたEEPROM
書込み用プログラムを実行させる。EEPROMへの制
御データの書込みが終了したことが確認されたときに制
御プログラムに復帰する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、内燃機関の所定の
制御対象をマイクロコンピュータを用いて制御する内燃
機関用制御装置の制御データを書替える制御データ書替
え方法及び該方法を実施するために用いる制御データ書
替え装置に関するものである。
【0002】
【従来の技術】近年内燃機関においては、排気ガスの成
分、燃費、騒音、出力等、所定の条件を満たすことが要
求される項目が多くなっており、各種の制御条件に応じ
て制御することが必要な制御対象が多くなっている。例
えば点火装置を用いた内燃機関においては、機関の点火
時期を回転数やスロットルバルブの開度(スロットル開
度)等に応じて制御することが必要とされる。またイン
ジェクタを用いて燃料を供給する内燃機関においては、
スロットル開度、機関の回転数、加速度、吸気温度、大
気圧等に応じて燃料の噴射時期や噴射時間を制御するこ
とが必要とされる。更に機関の排気タイミングを制御す
るバルブが設けられている場合には、該バルブの開度を
回転数やスロットル開度に応じて制御することが必要と
される。また吸気タイミングを制御するように回転数や
スロットル開度に応じて吸気バルブを制御することが必
要とされる場合もある。
【0003】機関の点火時期、燃料の噴射時間、排気タ
イミング、吸気タイミング等に対して要求される特性は
機関により相違し、車両に搭載される機関の場合には、
車種に応じてこれらの特性を変えることが必要とされ
る。
【0004】最近これらの制御対象を制御するためにマ
イクロコンピュータを用いることが多くなっている。一
般にマイクロコンピュータを用いた内燃機関用制御装置
では、内燃機関の付属機器の内、与えられる駆動信号の
位相及び(または)大きさに応じて制御量(動作時期ま
たは動作量)が変化する少なくとも1つの機器を制御対
象とし、所定の制御条件と制御量の目標値との関係を与
える複数のマップポイントのそれぞれを規定する制御条
件の値と制御量の目標値とを制御データとして集積した
構造を有する制御量演算用マップを記憶した制御データ
記憶手段と、制御条件の検出値に対する制御量の目標値
を前記マップを用いて演算して制御量を演算された目標
値に一致させるように制御する内燃機関制御手段を実現
するための制御プログラムを記憶した制御プログラム記
憶手段とを設けて、CPUにより制御プログラムを実行
させることにより制御対象の制御量を制御する。
【0005】マイクロコンピュータは、各種のセンサか
らシリアルインターフェースを介して制御条件を取り込
むとともに、機関の回転数を検出し、機関の回転数及び
各種の制御条件に対して、燃料の噴射時間、点火時期、
排気バルブの開度等を演算して、噴射指令信号、点火信
号、バルブを駆動する駆動信号等を発生する。
【0006】従来の内燃機関用制御装置においては、こ
れらの演算を行わせるための制御データ(演算用のマッ
プを定めるためのデータや演算の際に用いる定数等のデ
ータ)と制御プログラムとがマイクロコンピュータのR
OMに記憶され、逐次入力されるデータや逐次演算され
るデータがRAMに記憶されていた。
【0007】このような構成では、制御データを書き替
えることができないため、通常仕様の機関をレース仕様
に変更する際やモデルチェンジ等の際に制御特性を変更
する必要が生じた場合には、ROM自体を交換する必要
がある。ところが一般の内燃機関では、制御装置に耐振
性と耐候性とをもたせるために、ROMを基板に半田付
けして、制御装置のユニットを樹脂モールド等により密
封しているため、ROMだけを交換することはできず、
制御特性の変更に対応するためにはユニット全体を交換
する必要があり、不経済である。
【0008】そこで、内燃機関用制御装置のマイクロコ
ンピュータに、内容の書替えが可能な不揮発性メモリ
(EEPROMともいう。)を外部メモリとして設け
て、制御データを該不揮発性メモリに記憶させるととも
に、通信用プログラムをマイクロコンピュータ内に設け
られたROMに記憶させておいて、外部端末装置とマイ
クロコンピュータとの間で通信を行わせることにより、
制御プログラム及び制御データを書替えることができる
ようにした内燃機関用制御装置が提案された。
【0009】図7は、EEPROMに制御データを記憶
させるようにした従来の内燃機関用制御装置におけるメ
モリの割り付けを示すメモリマップを示したもので、同
図において、0000H及びFFFFHはそれぞれメモ
リの先頭アドレス及び最終アドレスを示しており、末尾
のHはこれらのアドレスが16進数であることを示して
いる。またPROGSTは所定の領域の先頭アドレスを
示す単なる符号である。この制御装置では、ROMの0
000H番地からPROGST−1番地までの領域に割
込みベクタテーブルが記憶され、ROMのPROGST
番地以降に内燃機関を制御するための制御プログラム
と、外部端末装置と内燃機関用制御装置のマイクロコン
ピュータとの間で通信を行うための通信用プログラムと
が記憶されている。またEEPROMに所定の制御デー
タが記憶されている。
【0010】図6は従来の内燃機関用制御装置において
ROMに記憶された制御プログラムのメインルーチンを
示したものである。従来の内燃機関用制御装置において
電源が投入されると、先ずROMの0000H番地に飛
ぶ。この番地にはメインルーチンの先頭番地PROGS
Tが書込まれているため、次いでPROGST番地に飛
び、図6のメインルーチンが開始される。メインルーチ
ンが開始されると、先ず各部のイニシャライズ(初期
化)が行われる。次いで点火時期、排気タイミング調節
用バルブを操作するアクチュエータの操作量、インジェ
クタの噴射時間等の演算と制御とを行い、内燃機関の各
種のデータ(回転数、スロットル開度、点火時期等)の
現在値をモニタデータとして外部端末装置に送信する。
その後外部端末装置(PC)から書替え用データ(EE
PROMの所定のアドレスに記憶されている制御データ
と置き換えるべき新たな制御データ)を受信しているか
否かを判定し、受信している場合には、該書替え用デー
タをEEPROMの所定のアドレスに書き込んで、該ア
ドレスの制御データを変更する。以上の処理が繰り返さ
れる。
【0011】上記のように構成すれば、外部端末装置と
マイクロコンピュータとの間で通信を行わせることによ
り制御データの書替えを行うことができるため、制御特
性の変更を容易に行うことができる。
【0012】しかしながら、上記の構成では、制御プロ
グラムがROMに記憶されているため、制御プログラム
そのものを変更する必要があるときにはROMを交換す
る必要がある。例えば、各種の制御特性を補正したり、
所定の条件が成立したときに機関を失火させるためのプ
ログラムを追加したりする場合には、制御プログラムを
変更する必要があるが、上記の装置ではこのような場合
にROMを交換する必要がある。ROMの交換を可能に
するためには、ROMをソケットを介して取り外し可能
に取り付けておく必要があるが、ROMをソケットを介
して取り付けた場合には、制御装置の耐振性や耐水性が
悪くなり、信頼性が低下するのを避けられない。またR
OMに制御プログラムを記憶させる構成をとった場合に
は、制御プログラムを開発する際や、修正する際に何度
もROMを交換する必要があるため、作業に時間がかか
り面倒である。
【0013】ROMを交換することなく制御プログラム
の変更を行うことができるようにするためには、制御デ
ータだけでなく、制御プログラムをもEEPROMに記
憶させて、外部端末装置と内燃機関用制御装置との間で
通信を行わせることにより、制御データと制御プログラ
ムとの双方を書替えることができるようにしておく必要
がある。
【0014】ところで、マイクロコンピュータを用いた
内燃機関用制御装置において、燃料の噴射時間や点火時
期、あるいは排気バルブの開度等の制御量を制御する場
合、機関の回転数、スロットル開度、吸気温度等の各種
の制御条件に対して、各制御量の目標値を演算する必要
がある。これらの演算はあらかじめEEPROMに記憶
されたマップを用いて行われる。各制御量の目標値の演
算に用いるマップは、所定の制御条件と制御量の目標値
との関係(例えば回転数と点火時期との関係)を与える
もので、各変数に対する制御量の特性曲線の折れ点(ま
たは特性曲線上に所定の間隔をおいて設定した定点)を
マップポイントとして、各マップポイントを規定する制
御条件の値と目標値(制御データ)とを集積した構造を
有するものである。
【0015】例えば、機関の点火時期を回転数及びスロ
ットル開度に対して制御する場合には、点火時期と回転
数とスロットル開度との間の関係を与える3次元マップ
が用いられる。この3次元マップを作成する際には、例
えば点火時期と回転数との間の関係を与える点火時期対
回転数特性曲線を種々のスロットル開度の値に対して用
意し、各スロットル開度に対する点火時期対回転数特性
曲線上の各折れ点(マップポイント)の座標を制御デー
タとしてメモリに記憶させる。
【0016】図9(A)及び(B)は、一例として、2
サイクル機関のスロットル開度θthが80°及び60°
のときの点火時期θi 対回転数N特性の例を示したもの
である。実際には同様の特性曲線がスロットル開度θth
の更に他の値40°,20°,…等に対して多数作成さ
れる。この場合、各特性曲線毎に1つのマップが作成さ
れ、一連のスロットル開度θthの値80°,60°,…
に対するマップがそれぞれ、マップ1、マップ2、…マ
ップnのように作成されて、各マップのマップポイント
の座標がEEPROMの所定の領域に記憶される。
【0017】図8は、マップ1、マップ2、…マップn
をEEPROMに記憶させる場合のデータの割り付けの
一例を示したものである。即ち、この例のマップ1にお
いては、該マップ1に割り当てられた領域の先頭番地か
ら、図9(A)の特性曲線上のマップポイントaの回転
数、マップポイントaの点火時期、マップポイントbの
回転数、マップポイントbの点火時期、…のように、回
転数が高い方から順に各マップポイントを規定する情報
(各マップポイントの座標を与える制御条件及び制御量
の目標値)が記憶される。またマップ2においては、該
マップ2に割り当てられた領域の先頭番地から順に、図
9(B)の特性曲線上のマップポイントa´の回転数、
マップポイントa´の点火時期、マップポイントb´の
回転数、マップポイントb´の点火時期、…のように各
マップポイントを規定する情報が記憶される。同様に、
マップ3〜マップnがそれぞれEEPROMの所定の領
域に記憶され、マップ1〜マップnにより機関の回転数
と点火時期とスロットル開度との間の関係を与える3次
元マップが構成される。
【0018】図示の例では、各回転数及び点火時期のそ
れぞれに対して2バイト分のメモリが割り当てられ、各
マップポイントに対して4バイト分のメモリが使われて
いる。ここで1バイトを1データとし、各マップを構成
するマップポイントの数が8であるとすると、1つのマ
ップを構成するデータ数は、8×4=32となる。
【0019】従来の方法で上記のマップを構成するデー
タを、EEPROMに書き込む際、または書き替える際
には、パーソナルコンピュータ等からなる外部端末装置
を内燃機関用制御装置のCPUにシリアルインターフェ
ースを介して接続し、外部端末装置からマイクロコンピ
ュータに、マップ1、マップ2、…マップnの順でデー
タを送る。
【0020】従来の方法でパーソナルコンピュータから
マイクロコンピュータを通してEEPROMにデータを
書き込む際には、例えば図10(A)に示すようなフォ
ーマットで、シリアルインターフェースを通して通信が
行われる。図10(A)に示した通信のフォーマット
は、インテルHEXフォーマットとして広く採用されて
いるもので、このフォーマットでは、各マップの送信の
最初に、先ず1バイトのデータとしてレコードマー
ク「:」(コロン)を送る。次いで、今回送信するマッ
プに含まれるデータの数(今の例では8×4=32)を
16進数に変換して1バイトの情報として送り、今回送
信するマップを割り付ける領域の先頭番地を2バイトの
情報として送る。次に今回送信するマップが最後のマッ
プであるか否かを示す情報「レコードタイプ」を、1バ
イトの情報として送る。今回送信するマップが最後のマ
ップである場合には、レコードタイプを「01」とし、
それ以外のマップである場合には、レコードタイプを
「00」とする。その後EEPROMに割り付ける順に
マップポイントaの回転数、マップポイントaの点火時
期、マップポイントbの回転数、マップポイントbの点
火時期、…のように、各マップポイントの情報をそれぞ
れ2バイトの情報(16進数)として送信する。全ての
マップポイントの情報を送信した後、「データ数」の情
報から最後のマップポイントの情報[図9(A)のマッ
プを送信する際にはマップポイントhの点火時期]まで
の数値の総和を0から引いた値の下位の1バイトを「チ
ェックサム」として送信する。更に送信するマップがあ
る場合には、上記と同じように「:」から「チェックサ
ム」までの情報を送信する。
【0021】受信側では、受信した各マップポイントの
情報を与えるデータを、指定された先頭番地から順にE
EPROMに書き込んでいき、指定された数のデータを
書き込んだ後、受信側で演算したチェックサムの値を、
最後に送信されたチェックサムの値と比較して、両者が
一致したときに、通信に誤りがなかったと判定する。チ
ェックサムが一致しない場合には、通信に誤りがあった
ものとして書き込みを無効とし、再度通信を行わせる。
【0022】内燃機関を運転する際には、スロットル開
度が検出されたときに、マップが作成されたスロットル
開度の内、検出値に最も近い2つのスロットル開度を検
索して、検索した2つのスロットル開度に対してそれぞ
れ作成されたマップを用いて補間法によりそのスロット
ル開度における各回転数の点火時期を演算する。
【0023】例えばスロットル開度80°、60°、4
0°、…に対して点火時期対回転数特性を与えるマップ
が作成されている場合に、スロットル開度が70°であ
ることが検出されたとする。この場合には、スロットル
開度80°に対するマップ1と、スロットル開度60°
に対するマップ2とを用いて、それぞれのマップからそ
の時の回転数における点火時期を補間法により演算し、
次いでスロットル開度80°に対するマップから演算し
た点火時期と、スロットル開度60°に対するマップか
ら演算した点火時期とを用いて、補間法により70°に
おける点火時期を演算する。
【0024】また多数のスロットル開度に対してマップ
が作成されている場合には、検出されたスロットル開度
に最も近いスロットル開度に対して作成されたマップを
用いて各回転数における点火時期を補間演算し、スロッ
トル開度に対する補間演算は省略する方法をとることも
ある。
【0025】各点火時期のデータは、その時の回転数で
機関の基準の回転角度位置から点火時期に相当する回転
角度位置まで機関が回転するのに要する時間(その間に
計数すべきクロックパルスの数)の形で演算される。こ
の場合、内燃機関用制御装置を構成するマイクロコンピ
ュータは、機関に取り付けられた信号発電機が特定の回
転角度位置で発生するパルス信号から機関の回転角度に
関する情報を得て、基準の回転角度位置を検出したとき
に演算された点火時期の計測(クロックパルスの計数)
を開始し、演算された点火時期が計測された時に点火回
路に点火信号を与える。点火回路は、点火信号が与えら
れた時に点火用の高電圧を発生して、該高電圧を所定の
気筒の点火プラグに印加し、該点火プラグに火花を生じ
させて点火動作を行わせる。
【0026】上記の説明では、点火時期を制御する場合
を例にとったが、燃料の噴射時間などの制御量を各種の
制御条件に対して制御する場合にも、各種の制御条件と
制御量の目標値との関係を与えるマップが作成されて、
該マップにより各制御条件に対する制御量の目標値が演
算され、実際の制御量を演算された目標値に一致させる
ように制御対象が駆動される。
【0027】上記のように制御データ及び制御プログラ
ムを記憶する手段としてEEPROMを用いて、外部端
末装置と内燃機関用制御装置を構成するマイクロコンピ
ュータとの間で通信を行わせることにより、制御プログ
ラム及び制御データを書替え得るようにすると、マップ
を構成する制御データを種々書き替えて、実際に内燃機
関の出力、加速性能、排気ガス成分などの特性を測定す
ることにより、機関にとって最適のマップを決定するこ
とができ、内燃機関の調整を容易に行わせることができ
る。特にレース用の内燃機関では、機関の特性をレース
当日のコンディションに適合するように調整することが
望ましいが、上記のように構成しておけば、現地で内燃
機関用制御装置に外部端末装置を接続してマップの書替
えを行うことができるため、機関の特性を当日のコンデ
ィションに合った最適の特性に調整することが可能にな
る。
【0028】この場合、機関を一定の回転数で回転させ
た状態で、その出力を動力計により測定するとともに、
内燃機関制御装置から外部端末装置に逐次送信される回
転数、点火時期、燃料噴射時間、排気バルブの開度等の
データをモニタしながらEEPROMに記憶されている
制御データの書き替えを行って、書替えた制御データと
モニタしたデータとの間の関係をリアルタイムで見るこ
とができれば、最適のマップを容易に決定することがで
きる。この場合、制御データの書替えに時間がかかる
と、書替えた制御データとモニタした各種のデータとの
間の相関関係を正しく把握することができなくなるた
め、最適なマップを決定するためには、制御データの書
替えをできるだけ短時間に、好ましくは100msec以下
の時間内に行わせることが必要である。
【0029】しかしながら、一般にEEPROMに制御
データを書き込む際には、比較的長い時間(最大で1バ
イト当り10msec)がかかるため、図10(A)に示し
たような一般に採用されているフォーマットでシリアル
インターフェースを通して通信を行わせることによりデ
ータの書き込みを行った場合には、各マップを書き込む
ために必要な処理時間が非常に長くなるのを避けられな
い。
【0030】例えば、図10(A)の通信フォーマット
を用いて、前述のようにマップポイントの数が8で、デ
ータ数が32(=8×4)のマップを書き替えるために
は320msecを必要とすることになり、100msec以下
の時間でマップのデータの書き替えを行うことは到底不
可能になる。
【0031】そこで、制御データ記憶手段に記憶されて
いる1つのマップを書替対象マップとして、該書替対象
マップに含まれる1つのマップポイントを規定する目標
値(制御データ)のみを1回の書替えの対象とし、内燃
機関の動作中に外部端末装置から内燃機関用制御装置に
書替えの対象とした目標値の新たな値を送信して、書替
対象とした目標値の書替えを行わせることが考えられ
る。
【0032】このように、制御データ記憶手段に記憶さ
れている1つのマップを書替対象マップとして、該書替
対象マップに含まれる1つのマップポイントを規定する
制御データ(目標値)のみを1回の書替えの対象とする
と、1回の書替えでは1つの制御データのみを書替えれ
ばよいため、1回の書替えに要する時間を短くすること
ができる。そのため、このような方法により、内燃機関
の動作中に外部端末装置から内燃機関用制御装置に書替
えの対象とした制御データの新たな値を送信して制御デ
ータの書替えを行わせると、書替えた制御条件と逐次モ
ニタされる各種のデータ(回転数、点火時期、燃料噴射
時間等)との相関関係を適確かつ迅速に把握することが
できるため、制御データを種々変化させてみることによ
り、最適のマップを容易に決定することができる。
【0033】
【発明が解決しようとする課題】前述のように、EEP
ROMの所定のアドレスに記憶された1つの制御データ
を書替える場合、1バイト当り10[msec]の時間がか
かる。EEPROMへの制御データの書込みを行ってい
る間は、EEPROMからの読み出しを正しく行うこと
ができず、その間にEEPROMからの読み出しを行う
と不定の数値が読み出されることになる。
【0034】そのため、EEPROMに書込みを行うた
めのプログラムをEEPROMに記憶させておくと、E
EPROMへの制御データの書込みを開始させた後、次
の命令を読み取りに行ったときに、該命令を正しく読み
取ることができず、EEPROM書込み用プログラムが
暴走してしまう。
【0035】内燃機関の運転中に制御データの書替えを
行わせるためには、このようなプログラムの暴走を確実
に防ぐ必要がある。
【0036】本発明の目的は、制御プログラムと制御デ
ータとの双方を書替え得る構成をとった内燃機関用制御
装置において、プログラムが暴走する状態を生じさせる
ことなく、機関の動作中に制御データの書き替えを行う
ことができるようにした制御データ書替え方法及び装置
を提供することにある。
【0037】
【課題を解決するための手段】本発明に係わる方法は、
内燃機関の所定の制御対象の制御特性を与える制御デー
タと該制御データを用いて制御対象を制御するための制
御プログラムとをEEPROMに記憶させて、CPUに
より制御プログラムを実行することによって制御対象を
制御する内燃機関用制御装置の制御データを書き替える
方法である。本発明が対象とする方法では、CPUにシ
リアルインターフェースを介して外部端末装置を接続
し、書替えの対象とする制御データが記憶されているE
EPROMの書替え対象アドレスを与えるアドレス情報
と該アドレス情報により与えられる書替対象アドレスに
新たに書込む書替え用データとを内燃機関の運転中に外
部端末装置から内燃機関用制御装置に与えてEEPRO
Mに記憶された制御データを書替える。
【0038】本発明においては、EEPROMへのデー
タの書込みを行わせるためのEEPROM書込み用プロ
グラムをROMに記憶させておく。そして、1回に書替
える制御データを1つだけ(1つのマップポイントを規
定する制御データ)に制限し、制御プログラムを実行し
ている途中で外部端末装置から書替え対象アドレスを与
えるアドレス情報と書替え用データとが与えられたとき
に該アドレス情報により与えられる書替え対象アドレス
及び書替え用データをそれぞれ一時記憶装置に記憶させ
る。次いでROMに記憶されたEEPROM書込み用プ
ログラムを実行させてアドレス情報により与えられた書
替え対象アドレスに書替え用データを書込む書込み動作
を開始させ、その後書替え対象アドレスの内容と一時記
憶装置に記憶された書替え用データとを比較して両者が
一致したことが確認されたときにEEPROMに記憶さ
れた制御プログラムを実行する過程を再開させる。
【0039】なお一時記憶装置は、書替え対象アドレス
及び書替え用データを一時的に記憶させておくもので、
この記憶装置としては、RAMまたはレジスタを用いる
ことができる。
【0040】またアドレス情報は、書替えの対象とする
制御データが記憶されたアドレスを与えるための情報で
あり、このアドレス情報はいかなる形で与えてもよい。
例えば、書替えの対象とする制御データが記憶されてい
る箇所を示すアドレスそのもの(例えば図8のようにメ
モリが割り付けられている場合には、2バイトの制御デ
ータを記憶している2つのアドレスの内の一方のアドレ
ス)をアドレス情報としてもよく、書替えの対象とする
マップの各マップポイントを規定する制御条件をアドレ
ス情報としてもよい。例えば、図9(A)のマップポイ
ントaの制御データ(点火時期θi )を書替える場合に
は、該マップポイントaを規定する制御条件である回転
数「4500[rpm ]」を上記アドレス情報とすること
ができる。また書替えの対象とするマップポイントが何
番目のマップポイントであるかを示す数値をアドレス情
報としてもよい。
【0041】このように、書替えの対象とするマップポ
イントを規定する制御条件をアドレス情報とする場合に
は、該アドレス情報から書替えの対象とする実際のアド
レスを書替え対象アドレスとして求めて、該書替え対象
アドレスを一次記憶装置に記憶させる。
【0042】本発明に係わる装置は、内燃機関の所定の
制御対象の制御特性を与える制御データと該制御データ
を用いて制御対象を制御するための制御プログラムとを
記憶したEEPROMと、制御プログラムを実行するC
PUとを備えた内燃機関用制御装置のEEPROMに記
憶された制御データを書替える制御データ書替え装置で
ある。
【0043】本発明に係わる書替え装置は、CPUにシ
リアルインターフェースを介して接続されて、1回に書
替える制御データを1つだけに制限しつつ、書替えの対
象とする制御データが記憶された書替え対象アドレスを
与えるアドレス情報と該アドレス情報により与えられる
書替え対象アドレスに新たに書込む書替え用データとを
内燃機関用制御装置に与える外部端末装置と、EEPR
OMへのデータの書込みを行わせるためのEEPROM
書込み用プログラムを記憶したROMと、制御プログラ
ムを実行している途中で外部端末装置からアドレス情報
と書替え用データとが与えられたときに、該アドレス情
報により与えられた書替え対象アドレス及び書替え用デ
ータをそれぞれ記憶する一時記憶装置と、ROMに記憶
されたEEPROM書込み用プログラムを実行させてE
EPROMの書替え対象アドレスに書替え用データを書
込む書替え用データ書込み手段と、書替え対象アドレス
の内容と前記一時記憶装置に記憶された書替え用データ
とを比較して両者が一致していないときには前記書替え
用データ書込み手段による書替え用データの書込み動作
を続行させ、両者が一致したことが確認されたときに前
記EEPROMに記憶された制御プログラムを実行する
過程を再開させるモード切替え手段とを備えている。
【0044】上記のように、1回に書替える制御データ
を1つだけ(図8の例では2バイトのデータ)に制限す
ると、1回の書替えに要する時間を短くすることができ
るため、内燃機関の動作中に制御データの変更を行った
場合に、変更した制御データと逐次モニタされるデータ
との間の相関関係をほぼリアルタイムで適確に把握し
て、最適の制御データを適確かつ迅速に決定することが
でき、最適なマップを容易に決定することができる。
【0045】また上記のように、制御プログラムを実行
している途中で外部端末装置からアドレス情報と書替え
用データとが与えられたときにROMに記憶されたEE
PROM書込み用プログラムを実行させることによりE
EPROMの書替え対象アドレスに書替え用データを書
込む書込み動作を行わせ、書替え対象アドレスの内容と
与えられた書替え用データとが一致したことが確認され
たときに制御プログラムの実行を再開させるようにする
と、プログラムを暴走させることなく、機関の運転中に
制御データの書替えを行わせることができる。
【0046】
【発明の実施の形態】図1は本発明の好ましい実施の形
態で用いるハードウェアの構成例を示したもので、同図
において1は2サイクル内燃機関、2は内燃機関用制御
装置である。本実施形態では、内燃機関用制御装置2
が、内燃機関1の点火時期、燃料の噴射時間及び排気バ
ルブの開度を、機関の回転数、スロットル開度及び変速
機のギアポジションとに対して制御するものとする。
【0047】内燃機関1は、吸気マニホールド1Aと排
気マニホールド1Bとを有していて、吸気マニホールド
1Aにスロットルバルブ3が取り付けられ、スロットル
バルブ3よりも下流側の位置にインジェクタ4が取り付
けられている。内燃機関の排気ポートには、排気のタイ
ミングを調整するための排気バルブ5が取り付けられ、
内燃機関のシリンダ1Cには点火プラグ6が取り付けら
れている。
【0048】内燃機関1の出力軸1Dにはフライホイー
ル磁石発電機7の回転子が取り付けられ、この回転子の
ヨークを構成するフライホイール7aの外周部にリラク
タ7a1が形成されている。内燃機関のケース等に設けら
れた取付け部にパルサ(信号発電子)8が取り付けら
れ、パルサ8の磁極部がリラクタ7a1に対向させられて
いる。パルサ8はリラクタ7a1に対向する磁極部を先端
に有する鉄心と該鉄心に巻回された信号コイルと該鉄心
に磁束を流す永久磁石とを備えた周知のもので、リラク
タ7a1がパルサ8の磁極部に対向する際及び該対向を終
える際にそれぞれパルサ8から極性が異なるパルス状の
信号が出力される。パルサ8の出力信号は、内燃機関の
回転角度や回転速度等の回転情報を得るための信号とし
て、内燃機関用制御装置2のパルサ信号入力部9に入力
されている。
【0049】スロットルバルブ3にはポテンショメータ
等からなるスロットルセンサが取り付けられ、該センサ
から得られるスロットル開度信号が内燃機関用制御装置
2のスロットル開度信号入力部10に入力されている。
【0050】内燃機関1の出力軸と負荷との間に取り付
けられた図示しない変速機には、ギアポジションを検出
するギアポジションセンサが取り付けられていて、該ギ
アポジションセンサから得られるギアポジション信号
が、内燃機関用制御装置2のギアポジション信号入力部
11に入力されている。
【0051】図示の例では、パルサ信号入力部9とスロ
ットル開度信号入力部10とギアポジション信号入力部
11とによりセンサ入力部が構成されている。更に機関
の吸気温度を検出する温度センサ、冷却水温度を検出す
る温度センサ、大気圧を検出する気圧センサ等が設けら
れる場合もあるが、その場合には各センサに対して入力
部(インターフェース)が設けられる。
【0052】内燃機関用制御装置2はまた、CPU(演
算処理部)12a、ROM12b、RAM12c、タイ
マ12d及びEEPROM(書替えが可能な不揮発性メ
モリ)12e等を有するマイクロコンピュータ12と、
噴射制御部13と、点火制御部14と、排気バルブ制御
部15とを備えている。噴射制御部13、点火制御部1
4及び排気バルブ制御部15により出力制御部が構成さ
れている。
【0053】CPU12aは入出力ポートA1 〜A5 を
有していて、該CPU12aの入出力ポートA1 ,A2
及びA3 にそれぞれパルサ信号入力部9、スロットル開
度信号入力部10及びギアポジション信号入力部11の
出力信号が入力されている。またCPU12aの入出力
ポートA4 にシリアルインタフェース20が接続され、
シリアルインタフェース20の信号入力線20a,信号
出力線20b及び接地線20cはそれぞれコネクタ21
を介してパーソナルコンピュータからなる外部端末装置
22につながる通信線の信号出力線22a,信号入力線
22b及び接地線22cに接続されている。
【0054】コネクタ21は、シリアルインタフェース
側の信号入力線20a、信号出力線20b及び接地線2
0cにそれぞれ接続された接点21a1,21b1及び21
c1と検出接点21d1とを有する第1のコネクタ21A
と、外部端末装置22側の信号出力線22a,信号入力
線22b及び接地線22cにそれぞれ対応する接点21
a2,21b2及び21c2と検出接点21d2とを有する第2
のコネクタ21Bとを備えていて、第1のコネクタ21
Aと第2のコネクタ21Bとを接続した際に接点21a
1,21b1,21c1及び21d1にそれぞれ接点21a2,
21b2,21c2及び21d2が接触するようになってい
る。検出用接点21d1はCPUの所定の入出力ポートA
5 に接続されるとともに抵抗Rを通して図示しない電源
に接続されている。また検出用接点21d2は外部端末装
置22側の接地線22cに接続されている。
【0055】図1に示した例において、コネクタ21の
検出接点21d1及び21d2は、内燃機関用制御装置2に
外部端末装置22が接続されているか否かを検出するた
めのスイッチSW1 を構成している。外部端末装置22
が接続されていない状態では、検出接点21d1が非接地
状態にある(スイッチSW1 が開いている)ため、CP
Uの入力ポートA5 の電位は高レベルの状態にある。第
1及び第2のコネクタ21A及び21Bが接続されると
検出接点21d1が検出接点21d2を通して接地される
(スイッチSW1 が閉じる)ため、入力ポートA5 の電
位が零になる。この例では、入力ポートA5 の電位が高
レベルの状態にあるときに外部端末装置22が接続され
ていないと判定し、入力ポートA5 の電位が零になった
ときに外部端末装置22が接続されていると判定する。
この例では、コネクタ21A,21Bの接点21d1及び
21d2と抵抗Rとにより外部端末装置検出手段が構成さ
れている。
【0056】CPU12aはまた、出力ポートB1 ,B
2 及びB3 を有していて、これらの出力ポートからそれ
ぞれ出力される噴射指令信号Vj 、点火信号Vi 及びバ
ルブ開度信号Vθがそれぞれ噴射制御部13、点火制御
部14及び排気バルブ制御部15に入力されている。
【0057】噴射制御部13はインジェクタ4に駆動信
号を与えるスイッチ回路からなっていて、噴射指令信号
Vj が与えられている間だけインジェクタ4に駆動信号
を与えて該インジェクタから燃料を噴射させる。
【0058】点火制御部14は点火コイルと該点火コイ
ルの一次電流を制御する制御回路とからなっていて、点
火信号Vi が与えられたときに点火コイルの一次電流に
急激な変化を生じさせて該点火コイルの二次コイルに点
火用の高電圧を誘起させる。この高電圧は点火プラグ6
に印加され、該高電圧の印加により点火プラグに火花が
生じて機関が点火される。
【0059】排気バルブ制御部15は排気バルブ5を操
作するアクチュエータに駆動電流を供給する回路からな
っていて、バルブ駆動信号Ve が与えられている間該ア
クチュエータに駆動信号を与えて排気バルブ5の開度を
調整する。
【0060】図1に示した制御装置におけるメモリの割
り付けを示すメモリマップは図2に示す通りである。こ
の例では、0000H番地からPROG00−1番地ま
での領域がROMに割り当てられていて、0000H番
地からPROGST−1番地までの領域に割込みベクタ
テーブルが記憶され、この割込みベクタテーブルには、
ROMに記憶されたプログラムの割り込みルーチンの先
頭アドレスが格納されている。またPROGST番地か
らEEPWRI−1番地までの領域に外部端末装置22
とCPUとの間で通信を行わせるための通信用プログラ
ムが記憶され、EEPWRI番地からPROGC01−
1番地までの領域にEEPROM12eに書込みを行う
ためのEEPROM書込み用プログラムが記憶されてい
る。
【0061】ROMのPROGC01番地以降の領域に
は、EEPROMへの書込みを行っている間に機関の回
転を維持するために実行される制御プログラムが記憶さ
れている。この制御プログラムは、内燃機関の各制御対
象の制御量を、既に演算されてRAMに記憶されている
目標値に一致させるように制御するEEPROM書込み
時内燃機関制御手段を実現する。
【0062】またPROG00番地からPROG02−
1番地までの領域がEEPROMに割り当てられてい
て、PROG00番地からPROG01−1番地までの
領域に割込みベクタテーブルが記憶されている。この割
込みベクタテーブルには、EEPROMに記憶されたプ
ログラムの割込みルーチンの先頭アドレスが格納されて
いる。
【0063】PROG01番地からPROGNU0−1
番地までの領域には、各種の制御条件の検出値に対する
各制御対象の制御量の目標値をマップを用いて演算して
制御量を演算された目標値に一致させるように制御する
内燃機関制御手段を実現するための制御プログラムが記
憶され、PROGNU1番地からPROG02−1番地
までの領域には各種のマップを構成する制御データが記
憶されている。
【0064】またPROG02番地から0FFFFH番
地までの領域はRAMに割り当てられていて、この領域
には機関の運転中に各種のセンサから逐次入力される逐
次入力データと、該逐次入力データを用いて演算された
逐次演算データとが一時的に記憶される。
【0065】本実施形態において、最初にEEPROM
12eに制御データと制御プログラムとを書込む際、及
び制御データと制御プログラムとを変更するためにEE
PROMの書替えを行う際には、内燃機関を停止させた
状態で、ROM12bの0000H番地からPROGS
T−1番地のROMに記憶された割込みベクタテーブル
を用い、PROGST番地からEEPWRI−1番地に
記憶された通信用プログラムを実行させることによっ
て、図10(A)に示した通信フォーマットで、従来と
同様な方法により、外部端末装置22からCPU12a
にデータを送信して、EEPROM12eの所定の領域
に各マップや制御プログラムを書き込む。内燃機関用制
御装置2から外部端末装置22に多くのモニタデータを
送信する場合も同様に0000H番地からPROGST
−1番地に記憶された割込みベクタテーブルを用いて、
PROGSTからEEPWRI−1番地に記憶された通
信用プログラムを実行させる。
【0066】また内燃機関の制御を行わせるときと、内
燃機関の状態を示すモニタデータを外部端末装置22に
送信するときと、内燃機関の運転中に外部端末装置22
から与えられる制御データを受信するときには、EEP
ROM12eのPROG00番地からPROG01−1
番地までのEEPROMに記憶された割込みベクタテー
ブルを用いて、PROG01番地からPROGNU−1
番地までのEEPROMに記憶された制御プログラムを
実行させる。
【0067】ここで、従来の技術についての説明で挙げ
た例と同様に、機関の点火時期と回転数とスロットル開
度との関係を与える3次元マップを用いて、点火時期を
回転数とスロットル開度とに対して制御する場合を例に
とると、種々のスロットル開度における点火時期と回転
数との関係を与える特性曲線は、例えば図9(A),
(B)に示した通りであり、EEPROM12eに記憶
される3次元マップの割り付けは図8に示した通りであ
る。
【0068】ここで、内燃機関の動作中に外部端末装置
22から内燃機関用制御装置2に制御データを送信して
マップの書替えを行う場合を考える。この場合には、図
10(B)のフォーマットで通信を行わせてEEPRO
Mへの書込みを行う。図10(B)のフォーマットで
は、先ず送信するデータの先頭であることを示すレコー
ドマークと、書替対象マップを特定するための識別コー
ド(マップNO)と、書替対象マップ(例えば回転数と
点火時期との関係を与えるマップ)の書替え対象にする
特定のマップポイントの制御データ(例えば点火時期)
が記憶されている箇所のアドレスを与えるアドレス情報
と、書替えの対象とする制御データの新たな値を与える
書替え用データとを外部端末装置22から内燃機関用制
御装置2に順次送信する。
【0069】このモードにおいては、1回に書替える制
御データをEEPROM12eに記憶されている1つの
制御データ(この例では2バイトのデータ)のみに制限
する。例えば、特定のマップを構成する制御データを書
替える場合には、該マップの1つのマップポイントを規
定する目標値(例えば特定の回転数に対する点火時期)
を与える制御データのみを1回の書替えの対象として、
該制御データが記憶されているアドレス及び該制御デー
タの新たな値をそれぞれ書替え対象アドレス及び書替え
用データとする。そして、制御プログラムを実行してい
る途中で外部端末装置22が図10(B)のフォーマッ
トで送信したアドレス情報と書替え用データとを内燃機
関用制御装置2が受信したときに、先ず該アドレス情報
により与えられる書替え対象アドレスと書替え用データ
とをRAMまたはレジスタからなる一時記憶装置に記憶
させる。次いでROMに記憶されたEEPROM書込み
用プログラムを実行させてEEPROMの書替え対象ア
ドレスに書替え用データを書込む書込み動作を開始させ
る。その後書替え対象アドレスの内容と一時記憶装置に
記憶された書替え用データとを比較して両者が一致した
ことが確認されたときにEEPROMに記憶された制御
プログラムを実行する過程を再開させる。
【0070】本発明の実施形態において用いるプログラ
ムのアルゴリズムを示すフローチャートを図3ないし図
5に示した。なおこれらのフローチャートにおいて、
「PC」は図1に示した外部端末装置22を意味し、
「ECU」は内燃機関用点火装置2を意味している。
【0071】図3はROM12bに記憶されたメインル
ーチン1のアルゴリズムを示したもので、このメインル
ーチンでは、先ず各部のイニシャライズ(初期化)を行
い、外部端末装置22から「0」,「1」,「2」また
は「3」の1バイトの指令値が受信されたか否かを判別
する。これらの1バイトの指令値は外部端末装置から内
燃機関用制御装置2に与える特定の指令を意味するもの
で、「0」は、内燃機関の停止中に外部端末装置22か
ら送信した制御データを内燃機関用制御装置2で受信し
て、受信した制御データをEEPROM12eに書き込
むことを指令する制御データ書込み指令であり、「1」
はEEPROM12eに記憶されている制御データを外
部端末装置に送信することを指令する制御データ送信指
令である。また「2」は内燃機関の停止中に外部端末装
置22から送信された制御プログラムを内燃機関用制御
装置2で受信して、受信した制御プログラムをEEPR
OM12eに書き込むことを指令する制御プログラム書
込み指令であり、「3」は内燃機関の運転中に内燃機関
用制御装置2から回転数、点火時期、燃料噴射時間等の
各種のモニタデータを外部端末装置22に送信すること
を指令するモニタ送信指令である。これらの指令は、外
部端末装置22のキーボード22Kの操作により、内燃
機関用制御装置2に与えられる。
【0072】内燃機関用制御装置2が受信した1バイト
の指令値が「0」(制御データ書込み指令)である場合
には、内燃機関用制御装置2のROMに記憶された通信
用プログラムにより、図10(A)のフォーマットで外
部端末装置(PC)22から送信された制御データを内
燃機関用制御装置(ECU)2で受信し、受信した制御
データをEEPROM12eに書き込んだ後、PROG
NU1番地に「32H」を書き込む。
【0073】内燃機関用制御装置2が受信した1バイト
の指令値が「1」(制御データ送信指令)である場合に
は、内燃機関用制御装置2から外部端末装置22に制御
データの送信を行わせる。
【0074】内燃機関用制御装置2が受信した1バイト
の指令値が「2」(制御プログラム書込み指令)である
場合には、外部端末装置22から送信された制御プログ
ラムを内燃機関用制御装置2で受信して、受信した制御
プログラムをEEPROM12eに書き込んだ後、EE
PROMのPROGNU0番地に「31H」を書き込
む。
【0075】内燃機関用制御装置2が受信した1バイト
の指令値が「3」である場合には、フラグ1を1として
内燃機関の運転を許容する運転モードとし、外部端末装
置22からの1バイトの指令値の受信を待機する状態に
戻る。
【0076】内燃機関用制御装置2が1バイトの指令値
を受信しないときには、SW1がON状態にあるか否か
(外部端末装置22が接続されているか否か)を判定し
て、SW1がOFF状態にあるとき(外部端末装置が接
続されていないとき)には、PROGNU0番地の内容
が「31H」であるか否か(EEPROMへの制御プロ
グラムの書込みが終了しているか否か)を判定し、PR
OGNU0番地の内容が「31H」でない場合(制御プ
ログラムの書込みが終了していない場合)には1バイト
の信号の受信を待機する状態に戻る。PROGNU0番
地の内容が「31H」である場合(EEPROMへの制
御プログラムの書込みが終了している場合)には、次い
でPROGNU1番地の内容が「32H」であるか否か
(EEPROMへの制御データの書込みが終了している
か否か)を判定し、PROGNU1番地の内容が「32
H」でない場合(制御プログラムの書込みは終了してい
るが制御データの書込みは終了していない場合)には1
バイトの信号の受信を待機する状態に戻る。PROGN
U1番地の内容が「32H」である場合(制御プログラ
ムの書込み及び制御データの書込みが終了していること
が確認された場合)には、全ての割込みを禁止して、割
込みベクタテーブルのアドレスをPROG00とする。
PROG00番地には、制御プログラムの先頭アドレス
PROG01が書き込まれているので、PROG01番
地にジャンプして、EEPROM内の制御プログラムを
実行させる。
【0077】また1バイトの信号が受信されない場合に
は、SW1がON状態にあるか否かを判定し、その結果
SW1がON状態にあると判定された場合(外部端末装
置22が接続されている場合)には、次いでフラグが1
であるか否かを判定し、フラグが1でない場合には、1
バイトの信号を受信する状態に戻る。SW1がON状態
にあると判定され、フラグが1であると判定された場合
(外部端末装置22が接続され、かつ内燃機関の運転が
許容されている場合)には、PROGNU0番地の内容
が「31H」であるか否か、及びPROGNU1番地の
内容が「32H」であるか否かを判定する過程に移行
し、その結果、制御プログラムの書込み及び制御データ
の書込みが終了していることが確認されたときには、全
ての割込みを禁止して、割込みベクタテーブルのアドレ
スをPROG00として、PROG01番地からの制御
プログラムを実行させる。
【0078】またSW1がOFF状態にあると判定され
たとき(外部端末装置が接続されていないとき)にも、
PROGNU0番地の内容が「31H」であるか否か、
及びPROGNU1番地の内容が「32H」であるか否
かを判定し、その結果制御プログラムの書込み及び制御
データの書込みが終了していることが確認されたときに
全ての割込みを禁止して、割込みベクタテーブルのアド
レスをPROG00として、PROG01番地からの制
御プログラムを実行させる。
【0079】図3のメインルーチンにより、内燃機関の
停止中に外部端末装置22から送信した制御データを内
燃機関用制御装置2で受信して、受信した制御データを
EEPROM12eに書き込む制御データ書込みモード
と、EEPROM12eに記憶されている制御データを
外部端末装置に送信する制御データ送信モードと、内燃
機関の停止中に外部端末装置22から送信された制御プ
ログラムを内燃機関用制御装置2で受信して、受信した
制御プログラムをEEPROM12eに書き込む制御プ
ログラム書込みモードと、内燃機関の運転を許容して内
燃機関用制御装置2から回転数、点火時期、燃料噴射時
間等の各種のモニタデータを外部端末装置22に送信す
る運転モードとを切り替えるモード切替え手段が実現さ
れる。
【0080】図4は、EEPROMに記憶された制御プ
ログラムのメインルーチン2のアルゴリズムを示したも
ので、このメインルーチンでは、先ず各部のイニシャラ
イズを行った後、SW1がON状態にあるか否かを判定
し、SW1がOFF状態であると判定された場合(外部
端末装置22が接続されていないと判定された場合)に
は、点火時期の制御と、排気バルブの制御と、燃料の噴
射時間の制御とに必要な処理(点火時期の演算、排気バ
ルブの開度の演算、燃料の噴射時間の演算等)を行わせ
る。
【0081】SW1がON状態にあると判定された場合
(外部端末装置22が接続されていると判定された場
合)には、フラグ1が1であるか否かを判定して、フラ
グ1が1でない場合(内燃機関の運転モードでない場
合)には、点火装置、インジェクタ、アクチュエータ等
の駆動を停止した後、全ての割込みを禁止し、次いで割
込みベクタテーブルのアドレスを0000H番地とす
る。0000H番地には、通信用プログラムの先頭アド
レスPROGST番地が記憶されているので、該PRO
GST番地にジャンプする。
【0082】SW1がON状態であると判定され、フラ
グ1が1であると判定された場合(外部端末装置22が
接続されていて、内燃機関の運転が許容されている場
合)には、回転数、スロットル開度、点火時期、噴射時
間等のモニタ用データを外部端末装置に送信する。その
後、外部端末装置22が送信したアドレス情報及び制御
データを受信しているか否かを判定し、アドレス情報及
び制御データの受信がない場合には、点火時期の制御
と、排気バルブの制御と、燃料の噴射時間の制御とに必
要な処理を行わせる。
【0083】外部端末装置22が送信したアドレス情報
及び制御データを受信していると判定されたときには、
アドレス情報により与えられるEEPROMの書替え対
象アドレスを求めて、該書替え対象アドレスをレジスタ
ペアBC(一時記憶装置)に書き込み、書替え用データ
をレジスタペアDEに書き込む。これによりアドレス情
報の上位1バイト及び下位1バイトがそれぞれレジスタ
ペアBCの上位のレジスタB及び下位のレジスタCに記
憶され、また書替え用データの上位1バイト及び下位1
バイトがそれぞれレジスタペアDEの上位のレジスタD
及び下位のレジスタEに記憶される。
【0084】アドレス情報としては、書替えの対象とす
るマップの各マップポイントを規定する制御条件の値を
用いるのが分かりやすくて便利である。各マップポイン
トを規定する制御条件及び制御データが記憶されている
アドレスは予め分かっているため、書替えの対象とする
マップポイントの制御条件が与えられれば、書替え対象
アドレスは容易に求めることができる。
【0085】次いでROMのEEPWRI番地以降に記
憶された図5のサブルーチンを実行する。このサブルー
チンでは、先ずレジスタペアDEに書き込まれた書替え
用データの内、下位1バイトであるレジスタEの内容を
レジスタペアBCに記憶されたアドレス情報が示す書替
え対象アドレス(書替えの対象とする制御データの下位
1バイトが記憶されたアドレス)に書き込む。次いで書
替え対象アドレスの内容を読み出してレジスタAに書き
込み、レジスタAの内容がレジスタEの内容に等しいか
否かを判定する。レジスタAの内容がレジスタEの内容
に等しくない場合には、EEPROMへ書き込み中であ
ることを示し、再び書替え対象アドレスの内容をレジス
タAに書込んで、レジスタAの内容がレジスタEの内容
に等しいか否かを判定する。同様のことを繰り返し、レ
ジスタAの内容がレジスタEの内容に等しくなったとき
(制御データの下位1バイトの書き込みが終了したと
き)に書込みが終了したことを示す。次いで、レジスタ
ペアBCに記憶されたアドレスに1を加えたアドレス
(書替の対象とする制御データの上位1バイトが記憶さ
れたアドレス)を書替え対象アドレスとして、レジスタ
ペアDEの上位のレジスタDの内容を該書替対象アドレ
スに書込む。次いで書替え対象アドレスの内容を読み出
してレジスタAに書き込み、レジスタAの内容がレジス
タDの内容に等しいか否かを判定する。レジスタAの内
容がレジスタDの内容に等しくない場合には、EEPR
OMへ書き込み中であることを示し、再び書替え対象ア
ドレスの内容をレジスタAに書込んで、レジスタAの内
容がレジスタDの内容に等しいか否かを判定する。同様
のことを繰り返して、レジスタAの内容がレジスタDの
内容に等しくなったとき(制御データの上位1バイトの
書き込みが終了したとき)に書込みが終了したことを示
し、EEPROMに記憶された制御プログラムの点火時
期、排気バルブの開度、及び燃料の噴射時間の演算、制
御を行わせる過程(図4参照)に復帰する。
【0086】図5のルーチンにより、書替え対象アドレ
スの内容と一次記憶装置に記憶された書替え用データと
を比較して両者が一致していないときには書替え用デー
タ書込み手段による書替え用データの書込み動作を続行
させ、両者が一致したことが確認されたときにEEPR
OMに記憶された制御プログラムを実行する過程を再開
させる書込みモード制御モード切替え手段が実現され
る。
【0087】内燃機関の運転中に制御データを書き替え
る図5の処理をEEPROMに記憶されたプログラムに
より行ったとすると、CPUは、レジスタEの内容をレ
ジスタペアBCに記憶されたアドレスに書込む動作を開
始させた後、その書込みが終了する前に、書替え対象ア
ドレスから読み出した内容をレジスタAに書込むことを
指示する命令「A←(BC)」が書かれた番地から、該
命令「A←(BC)」を読み込もうとするが、EEPR
OMへの書込みが終了していない状態では、EEPRO
Mから読み出されるデータが不定であるため、「A←
(BC)」の命令を正しく取り込むことができない。従
って、この時点でプログラムが暴走してしまう。
【0088】本発明においては、図5のルーチンのプロ
グラムをEEPROMではなく、ROMに記憶させるた
め、EEPROMへの書込みが終了していない状態で
も、EEPROM書込み用のプログラムの各命令を正し
く取り込むことができ、プログラムが暴走するおそれを
なくすことができる。
【0089】図1の内燃機関用制御装置2においては、
マイクロコンピュータ12が、スロットルセンサ、パル
サ及びギアポジションセンサから与えられる情報に基づ
いて、各スロットル開度、回転数(パルサの出力信号の
発生周期から演算する)及び各ギアポジションにおける
燃料噴射時間と点火時期とを演算し、パルサ信号により
基準回転角度位置が計測される毎に割り込みルーチンを
実行させる。この割り込みルーチンでは、各種の制御条
件に対して演算されてRAMに記憶されている点火時期
の計測値及び噴射時間の計測値をそれぞれ点火時期計測
用のコンペアレジスタ及び噴射時間計測用のコンペアレ
ジスタに入れて、点火時期及び噴射時間の計測を開始さ
せるとともに、出力ポートB1 から噴射制御部13に噴
射指令信号Vj を与える。噴射時間の計測が終了したと
きに噴射指令信号Vj の出力を停止させ、点火時期が計
測されたときに点火時期を定める点火信号Vi を出力ポ
ートB2 から点火制御部14に与える。
【0090】マイクロコンピュータはまた各回転数、各
スロットル開度及びギアポジションにおける排気バルブ
の開度を演算して、その開度を与えるバルブ開度信号V
θを出力ポートB3 に出力する。
【0091】噴射制御部13はマイクロコンピュータ1
2の出力ポートB1 から噴射指令信号Vj が与えられた
ときにインジェクタ4に駆動電流を与える。インジェク
タ4は、駆動電流が所定の値に達したときにそのバルブ
を開いて図示しない燃料ポンプから与えられている燃料
を吸気マニホールド1A内に噴射する。
【0092】点火制御部14は、点火信号Vi が与えら
れたときに点火用の高電圧を発生する点火回路を備えて
いて、点火信号Vi が与えられたときに、点火プラグ6
に点火用の高電圧を印加して点火動作を行わせる。
【0093】排気バルブ制御部15は、マイクロコンピ
ュータ12のCPU12aの出力ポートB3 から与えら
れるバルブ開度信号Vθに応じて排気バルブ5に取り付
けられた図示しないアクチュエータに駆動電流を与えて
排気バルブ5を演算された開度まで変位させる。
【0094】外部端末装置22が外されていて、CPU
12aの入出力ポートA5 の電位が高レベルの状態にあ
るときには、内燃機関制御手段のみを実行させ、機関の
定常運転を行わせる。
【0095】なおEEPROMへの書き込みを行ってい
るときには、EEPROMからの制御プログラムの読み
出しを行うことができない。そのため、本実施形態で
は、図3ないし図5に示したフローチャートには特に示
してないが、EEPROMへの書き込みを行っていると
きにパルサ8の出力信号による割り込みを許可して、パ
ルサ8から基準回転角度位置を示す信号が入力される毎
に割り込みをかけることにより、ROMのPROGC0
1番地以降に記憶された制御プログラムを実行させ、該
制御プログラムにより、既に演算されてRAMに記憶さ
れている点火時期及び燃料噴射時間のデータを用いて、
点火信号Vi 及び噴射指令信号Vj を発生させるように
している。また既に演算されてRAMに記憶されている
排気バルブの開度を与えるバルブ開度信号Vθを出力ポ
ートB3 から出力させるようにしている。従って、制御
データの書替えを行っている間も機関の運転は支障なく
行われる。
【0096】上記のように、本発明においては、1回に
書替える制御データを、書替対象マップの1つのマップ
ポイントを規定する1つの制御データのみに制限する。
そのため、100[msec]以下の短い時間で1回の書替
えを行わせることができ、書替えた制御データとモニタ
される各種データとの相関関係をほぼリアルタイムで確
認して、制御データの最適値を適確かつ迅速に決定する
ことができる。
【0097】図1の制御装置において、内燃機関の運転
中に制御データを書替える場合、書替対象マップポイン
トを規定する制御条件は、制御条件の現在値に最も近い
値とするのが好ましい。このようにして書替対象マップ
ポイントの目標値を書替えると、その結果が直ちに動作
中の機関の特性に反映される。従って、例えば機関に動
力計を接続して、機関の回転数を一定に保った状態でマ
ップの書替を行わせることにより、マップデータの書替
えによる機関の出力の変化を直ちに知ることができ、最
適のマップデータを短時間で決定することができる。
【0098】上記の実施形態では、図3のメインルーチ
ンにおいて、内燃機関用制御装置(ECU)から外部端
末装置(PC)に制御データを送信する過程により、制
御データ送信手段が実現される。
【0099】また図5に示したルーチンにより、ROM
に記憶されたEEPROM書込み用プログラムを実行さ
せてアドレス情報が示す書替え対象アドレスに書替え用
データを書込む書替え用データ書込み手段が実現され
る。
【0100】上記の実施形態ではスロットル開度、回転
数及び変速機のギアポジションに応じて点火時期、燃料
噴射時間、及び排気バルブの開度を制御しているが、吸
気温度、大気圧等の他の条件を更に加える場合もあり、
制御対象毎に制御条件を異ならせる場合もある。例え
ば、点火時期を回転数に応じて制御し、燃料噴射時間を
スロットル開度、吸気温度及び大気圧に応じて制御する
場合もある。
【0101】上記の実施形態では、燃料の噴射開始時期
を一定(パルサが信号を発生した時)として、噴射時間
のみを制御しているが、燃料の噴射開始時期及び噴射時
間の双方を制御するようにすることもできる。
【0102】本発明において、各制御対象をいかなる制
御条件に対して制御するかは任意である。
【0103】上記の実施形態では、コネクタ21A及び
21Bの1つの接点を検出接点(スイッチSW1)とし
て利用して外部端末装置が接続されているか否かを検出
する外部端末検出手段を構成したが、外部端末装置の接
続の有無を検出するためのスイッチを別個に設けて、コ
ネクタ21Aと21Bとを接続した際に、コネクタの一
部により該スイッチが動作させられて自動的にオンまた
はオフするように構成することにより、外部端末装置の
接続の有無を検出するようにしてもよい。更に外部端末
装置のキーボードの操作により、外部端末装置が接続さ
れていることを確認する信号を発生させるようにしても
よい。
【0104】上記の実施形態では、点火装置、燃料噴射
装置及び排気バルブを制御対象としているが、更に他の
付属機器を制御対象とする場合にも本発明を適用できる
のはもちろんである。
【0105】
【発明の効果】以上のように、本発明によれば、1回に
書替える制御データを1つだけに制限するので、1回の
書替えに要する時間を短くすることができ、内燃機関の
動作中に制御データの変更を行う場合に、変更した制御
データとモニタされたデータとの相関関係を適確に把握
して、制御データの最適値を適確かつ迅速に決定するこ
とができる。そのため、内燃機関を動作させながら制御
データを書替えて最適のマップを容易に決定することが
できる。
【0106】また本発明によれば、制御プログラムを実
行している途中で外部端末装置からアドレス情報と書替
え用データとが与えられたときにROMに記憶されたE
EPROM書込み用プログラムを実行させることにより
EEPROMの書替え対象アドレスに書替え用データを
書込む書込み動作を行わせ、書替え対象アドレスの内容
と与えられた書替え用データとが一致したことが確認さ
れたときに制御プログラムの実行を再開させるので、プ
ログラムを暴走させることなく、機関の運転中に制御デ
ータの書替えを行わせることができる。
【図面の簡単な説明】
【図1】本発明の実施形態で用いる制御装置のハードウ
ェアの構成を示したブロック図である。
【図2】本発明の一実施形態におけるメモリの割り付け
を示すメモリマップである。
【図3】本発明の実施形態において、ROMに記憶され
ているプログラムのメインルーチンのアルゴリズムを示
したフローチャートである。
【図4】本発明の実施形態においてEEPROMに記憶
されているプログラムのメインルーチンのアルゴリズム
を示したフローチャートである。
【図5】本発明の実施形態においてROMに記憶された
EEPROM書込み用プログラムのアルゴリズムを示し
たフローチャートである。
【図6】内燃機関用制御装置の制御データを書替える従
来の方法のアルゴリズムを示したフローチャートであ
る。
【図7】従来の内燃機関用制御装置で採用していたメモ
リの割り付けを示したメモリマップである。
【図8】EEPROMにおけるメモリの割付けの一例を
示したメモリマップである。
【図9】(A)及び(B)はそれぞれ異なるスロットル
開度に対する点火時期対回転数特性の一例を示した線図
である。
【図10】(A)は従来から用いられている通信フォー
マットを示した説明図である。(B)は本発明の方法で
用いる通信フォーマットを示した説明図である。
【符号の説明】
1 内燃機関 2 内燃機関用制御装置 3 スロットルバルブ 4 インジェクタ 5 排気バルブ 6 点火プラグ 8 パルサ 9 パルサ信号入力部 10 スロットル開度信号入力部 11 ギアポジション信号入力部 12 マイクロコンピュータ 12a CPU 12b ROM 12c RAM 12d タイマ 12e EEPROM

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 内燃機関の所定の制御対象の制御特性を
    与える制御データと該制御データを用いて前記制御対象
    を制御するための制御プログラムとをEEPROMに記
    憶させて、CPUにより前記制御プログラムを実行する
    ことによって前記制御対象を制御する内燃機関用制御装
    置の前記CPUにシリアルインターフェースを介して外
    部端末装置を接続し、書替えの対象とする制御データが
    記憶されたEEPROMの書替え対象アドレスを与える
    アドレス情報と該アドレス情報により与えられる書替え
    対象アドレスに新たに書込む書替え用データとを内燃機
    関の運転中に前記外部端末装置から内燃機関用制御装置
    に与えて前記EEPROMに記憶された制御データを書
    替える制御データ書替え方法であって、 前記EEPROMへのデータの書込みを行わせるための
    EEPROM書込み用プログラムをROMに記憶させて
    おき、 1回に書替える制御データを1つのみに制限し、 前記制御プログラムを実行している途中で前記外部端末
    装置から前記アドレス情報と書替え用データとが与えら
    れたときに該アドレス情報により与えられる書替え対象
    アドレス及び書替え用データを一時記憶装置に記憶さ
    せ、次いでROMに記憶されたEEPROM書込み用プ
    ログラムを実行させて前記アドレス情報により与えられ
    た書替え対象アドレスに前記書替え用データを書込む書
    込み動作を開始させ、書替え対象アドレスの内容と前記
    一時記憶装置に記憶された書替え用データとを比較して
    両者が一致したことが確認されたときに前記EEPRO
    Mに記憶された制御プログラムを実行する過程を再開さ
    せることを特徴とする内燃機関用制御装置の制御データ
    書替え方法。
  2. 【請求項2】 内燃機関の所定の制御対象の制御特性を
    与える制御データと該制御データを用いて前記制御対象
    を制御するための制御プログラムとを記憶したEEPR
    OMと、前記制御プログラムを実行するCPUとを備え
    た内燃機関用制御装置の前記EEPROMに記憶された
    制御データを書替える制御データ書替え装置であって、 前記CPUにシリアルインターフェースを介して接続さ
    れて、1回に書替える制御データを1つだけに制限しつ
    つ、書替えの対象とする制御データが記憶された書替対
    象アドレスを与えるアドレス情報と該アドレス情報によ
    り与えられる書替対象アドレスに新たに書込む書替え用
    データとを前記内燃機関用制御装置に与える外部端末装
    置と、 前記EEPROMへのデータの書込みを行わせるための
    EEPROM書込み用プログラムを記憶したROMと、 前記制御プログラムを実行している途中で前記外部端末
    装置から前記アドレス情報と書替え用データとが与えら
    れたときに、該アドレス情報により与えられる書替え対
    象アドレス及び書替え用データを記憶する一時記憶装置
    と、 前記ROMに記憶されたEEPROM書込み用プログラ
    ムを実行させて前記アドレス情報により与えられた書替
    え対象アドレスに前記書替え用データを書込む書替え用
    データ書込み手段と、 前記書替え対象アドレスの内容と前記一次記憶装置に記
    憶された書替え用データとを比較して両者が一致してい
    ないときには前記書替え用データ書込み手段による書替
    え用データの書込み動作を続行させ、両者が一致したこ
    とが確認されたときに前記EEPROMに記憶された制
    御プログラムを実行する過程を再開させる書込みモード
    制御モード切替え手段とを具備したことを特徴とする内
    燃機関用制御装置の制御データ書替え装置。
JP18266795A 1995-07-19 1995-07-19 内燃機関用制御装置の制御データ書替え方法及び装置 Pending JPH0932627A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18266795A JPH0932627A (ja) 1995-07-19 1995-07-19 内燃機関用制御装置の制御データ書替え方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18266795A JPH0932627A (ja) 1995-07-19 1995-07-19 内燃機関用制御装置の制御データ書替え方法及び装置

Publications (1)

Publication Number Publication Date
JPH0932627A true JPH0932627A (ja) 1997-02-04

Family

ID=16122335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18266795A Pending JPH0932627A (ja) 1995-07-19 1995-07-19 内燃機関用制御装置の制御データ書替え方法及び装置

Country Status (1)

Country Link
JP (1) JPH0932627A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11141392A (ja) * 1997-11-07 1999-05-25 Nissan Motor Co Ltd 車両制御用メモリ書き換え装置
JPH11141393A (ja) * 1997-11-07 1999-05-25 Nissan Motor Co Ltd 車両制御用メモリ書き換え装置
KR20010026291A (ko) * 1999-09-04 2001-04-06 박종섭 차량의 급발진 방지 장치
JP2001263156A (ja) * 2000-03-16 2001-09-26 Honda Motor Co Ltd 車両制御装置のためのメモリ書き換えシステム
CN103309824A (zh) * 2012-03-12 2013-09-18 海尔集团公司 Eeprom数据通用读写系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11141392A (ja) * 1997-11-07 1999-05-25 Nissan Motor Co Ltd 車両制御用メモリ書き換え装置
JPH11141393A (ja) * 1997-11-07 1999-05-25 Nissan Motor Co Ltd 車両制御用メモリ書き換え装置
KR20010026291A (ko) * 1999-09-04 2001-04-06 박종섭 차량의 급발진 방지 장치
JP2001263156A (ja) * 2000-03-16 2001-09-26 Honda Motor Co Ltd 車両制御装置のためのメモリ書き換えシステム
CN103309824A (zh) * 2012-03-12 2013-09-18 海尔集团公司 Eeprom数据通用读写系统

Similar Documents

Publication Publication Date Title
US4425890A (en) Spark timing control apparatus for use with a internal combustion engine
JP2693884B2 (ja) 内燃機関制御装置
US6546321B1 (en) Method and apparatus for rewriting data of control unit for vehicle
JPH0932627A (ja) 内燃機関用制御装置の制御データ書替え方法及び装置
JP5880192B2 (ja) 記憶制御装置、記憶制御方法およびプログラム
JPH08177607A (ja) 内燃機関用制御装置の制御量演算用マップ書替方法及び装置
KR100285256B1 (ko) 엔진제어장치 및 그 제어방법
CN101014761A (zh) 发动机的燃料喷射控制方法及燃料喷射控制装置
JP2000130250A (ja) 内燃機関用制御装置
JP4460077B2 (ja) 内燃機関の制御方法および装置
EP0866222A3 (en) Ignition timing control system for industrial engines
JP3892052B2 (ja) エンジン用制御装置
US5494018A (en) Altitude dependent fuel injection timing
JPH07127518A (ja) 内燃機関用制御装置
GB2220085A (en) Ic engine testing
JPH0727036A (ja) 内燃機関用制御装置
JP2634598B2 (ja) 内燃機関の電子制御装置
JPH0531251Y2 (ja)
JPS61135948A (ja) 内燃機関の燃料噴射量制御方法
JP5287977B2 (ja) 内燃機関の制御装置
JP2865023B2 (ja) 補正データ処理装置
JPS6321816B2 (ja)
US5173680A (en) System and method for indicating an abnormal condition in a vehicle with a multi-level positioner indicator
JP2003343333A (ja) エンジンの始動制御装置
KR100354670B1 (ko) 엔진제어프로그램 테스트장치

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020402