BMW E30 M3 ECU(DME) room
                                                                                                 更新日:令和6年2月17日

解 析

【ECU比較】

<発熱比較>

始動できないECUをエンジンシミュレータと接続して調査するも、詳細な回路が分からなかったので原因特定が出来ずにいた時、赤外線サーモグラフィーを使用できる機会があり、正常なECUと発熱状況を比較することにより動作していない部分を特定することが可能になり、点火回路の部品が動作していないことが分かった。

  • 右上のパーツが発熱していないことが分かる。
  • 基板のプリントパターンを確認し、点火系の部品に信号が来ていないことが分かった。
  • エンジンが始動できないトラブルは、本原因が多い。

<CPU内部データ比較>

所有している複数のECUを順番に、センサー値のボリューム設定を同じ状態にしたエンジンシミュレータに接続して、各ECUが読み込んでいるセンサ値や燃料噴射時間の違いをCPUのレジスタ値を元に計測したもの。

  • エンジンシミュレータの設定は同じでも、各ECUのA/Dなどの個体差により、センサ値が異なり結果も異なる。
  • 例えば、M社から購入したECUは電源電圧が若干高めになっている。(当然、実車においても同等の結果となる)

 

【水温 対 燃料噴射時間】

<机上計測>

始動時の水温が燃料噴射時間にどの程度影響するか確認する為、エンジンシミュレータを低回転(100rpm以下)に設定し、水温センサの設定を変化させ、エンジンシミュレータのスイッチを入れ直した(再始動)時の燃料噴射時間を計測した。

  • 水温センサ(サーミスタ)をボリュームで模擬しており、校正をしていないので、温度数値は正確ではない。
  • 水温(エンジン温度)は燃料噴射時間に大きく関与しており、水温が低いと燃料噴射時間が大幅に長くなる。

以下に、エンジン温度40℃の時の燃料噴射時間を基準とした場合の、温度変化による倍率変化を示す。

エンジン温度 : -29℃、 -19℃、-10℃、  0℃、  9℃、 20℃、30℃、 40℃
燃料噴射時間:13.0倍、11.1倍、 7.8倍、4.4倍、2.4倍、1.9倍、1.5倍、1.0倍

 

【吸気温 対 燃料噴射時間】

<机上計測>

始動時の吸気温(外気温)が燃料噴射時間にどの程度影響するか確認する為、エンジンシミュレータを低回転(100rpm以下)に設定し、吸気温度センサの設定を変化させ、エンジンシミュレータのスイッチを入れ直した(再始動)時の燃料噴射時間を計測した。

  • 吸気温度センサ(サーミスタ)をボリュームで模擬しており、校正をしていないので、温度数値は正確ではない。
  • 酸素密度は吸気温度に影響されるので、空気量を計るエアーフローメータの値を補正する必要がある。
  • 吸気温度が低い方が、シリンダに吸い込める酸素の量が多くなるので、冬はパワーが出る。

以下に、吸気温度14℃の時の燃料噴射時間を基準とした場合の、温度変化による倍率変化を示す。

吸 気 温 度: -17.1℃、 14.1℃、 70.1℃
燃料噴射時間:    1.1倍、   1.0倍、    0.9倍

 

【排ガスコントロール】

排ガスをクリーンにする為にキャタライザー(三元触媒)で有害物質を取り除いているが、その為には空燃比を理論混合比(14.7)に保つ必要があり、 O2センサ(ジルコニア酸素センサ)信号により、ECUで燃料噴射の時間を制御している。
このO2センサの出力信号は、理論混合比を境に急峻に変化する為、ECUで燃料噴射時間を長い側(燃料リッチ)と短い側(燃料リーン)の間で行ったり来たりさせて、空燃比の平均値を14.7になるよう制御している。

<机上確認>

1.通常のアイドリングを模擬

  • 燃料噴射時間は、AirFlow値と回転数をベースに計算する。
  • なお、適正燃焼には酸素を正確に測定する必要があり、AirFlow値は一定でも吸気温、大気圧の値で酸素の密度が変化するので、吸気温及び大気圧値で補正し、インジェクターの動作遅れを電源電圧の値で補正する。
  • また、エンジンが冷えている時のガソリンの気化遅れを水温の値で補正する。

2.センサ値を固定して模擬

センサ値(AirFlow、電源電圧)と回転数を一定値に固定するようECUのプログラムを改造し、固定する組み合わせによる噴射時間のばらつきの状況を確認した。

  • 回転数を固定すると、ばらつきが大幅に減る。
  • 電源電圧の変化は、ばらつきにはさほど影響していないように見える。(変動幅にもよるが)。

3.O2センサの値を変化させて模擬

センサ値(AirFlow、電源電圧、水温、吸気温、大気圧)と回転数をアイドリング時の値に固定し、O2センサのデータを濃い側から薄い側に変化させた時の燃料噴射時間変化を確認した。

  • 燃料噴射時間を三角波のように変化させ、空燃比を制御している。
  • 非常に薄い状態が続くと、ECUでO2センサが不良と判定し、三角波のような制御を止め燃料噴射時間を調整する。

<実車確認>

1.通常のアイドリング

アイドリング中の状況をモニターした。

2.センサ値&rpm値固定

アイドリング中に大気圧センサのコネクタを外した時、センサ値(AirFlow、電源電圧、水温、吸気温、大気圧)と燃料噴射量の計算に使用しているrpm値(実際の回転数とは異なる)を一定値に固定するようECUのプログラムを改造し、途中でO2センサのコネクタを外したり繋いだりした場合の状況をモニターした。

 

【振動対策】

<動機>

アイドリング中に不規則な振動があるので、ECUの改修などで燃料噴射時間のバラツキを減らし、振動が減らせないか検討してみた。

<机上計測>

エンジンシミュレータで、アイドリング状態を模擬した。

  • センサ(AirFlow、水温、吸気温及び大気圧)用ボリュームを固定していても、ECUが読み込んでいる値はばらついている。
  • 同様に燃料噴射時間もばらついている。

1.センサ値の変動を抑える

<対策>

燃料噴射時間を計算するベースとなるAirFlowデータと補正に使う水温、吸気温、大気圧及び電源電圧データのバラツキを減らす為、これらを入力するA/Dの入り口にあるフィルタの時定数を伸ばし、高周波成分を除去することにより、燃料噴射のバラツキを減らし振動が減らせないか検討してみた。

  • AirFlowのフィルタ時定数を10倍(6.2ms)にする。
  • 水温、吸気温のフィルタ時定数を100倍(0.22s)にする。
  • 大気圧の時定数を330倍(0.73s)にする。
  • 電源電圧の時定数を470倍(0.23s)にする。

<机上確認>

エンジンシミュレータは、改修前と同じ設定で模擬した。

  • センサ(AirFlow、水温、吸気温、大気圧)及び電源電圧のバラツキは大幅に減った。
  • エンジンシミュレータの回転数は発信器をボリュームで制御しているのみで、センサデータは寄与しない。
  • その為、回転数のバラツキは減らず、燃料噴射時間のバラツキは若干減った程度。

<実車確認>

対策前後(フィルタ変更)のECUでアイドリング状態を比較した。 

  • 電源電圧、水温及び大気圧のバラツキがかなり減っている。
  • 空燃比、回転数及び噴射時間のバラツキも減っている。
  • 振動も若干減ったように感じるが、加速度(Z軸)データでは違いが上手く現れていない。
  • 振動が無い状態でも、加速度データにはノイズが多いので、加速度センサの使用方法があっていない可能性もある。

2.回転数の変動を抑える

<対策>

回転数が1200rpm以下の時、変化が±40rpm以内の場合は前値置換となるようプログラムを改修した。

<机上確認>

エンジンシミュレータは改修前と同じ設定で模擬した。

 
  • 回転数のバラツキは無くなった。
  • それに従って、燃料噴射時間のバラツキも殆ど無くなった。

<実車確認>

対策前後(プログラム改造)のECUでアイドリング状態を比較した。 

  • AirFlowや回転数にバラツキが増え、噴射時間にもヒゲ状のノイズがある。
  • 実際の回転数と噴射時間の計算に使用している回転数が違うことが、悪影響となっている。

 

【アイドルコントロールバルブ駆動回路】

水温の変化によるアイドルコントロールバルブの駆動信号変化を確認する為、エンジンシミュレータの水温センサ設定を変化させ、ECUのアイドルコントロールバルブ端子(33ピン、34ピン)の波形を計測した。

1.正常なECUの机上計測

<高温時>

<低温時>

 

.異常なECUの机上計測

<高温時>

<低温時>

青色(33ピン)の波形が異常な為、アイドルコントロールバルブの片側のコイル(モータ)が正常に駆動できないので、アイドル制御が不十分となる。

エンジンシミュレータではICVをLEDで模擬しているので、波形に異常があっても実車では問題ない可能性がある。

3.対策

34ピンの駆動信号(コレクタ)から33ピンのベース信号を作っているが、経年変化で電圧が足らなくなっているので、R561(2.2kΩ)の抵抗値を若干下げる事により、正常になる。


4.アイドルコントロールバルブの効果

アイドルコントロールバルブの制御回路を修理すると、オーナーよりアイドリングが安定しアイドルアップをするようになったと共にパワーアップしたように感じると連絡があり、ICVはパワーには関係しないと思っていたので、ICVの動きが気になり調査してみた。

<測定風景>

エンジンシミュレータ、予備のDME(2.3L、モニタ機能付き)及びDMEモニターを接続し、ICV制御回路の波形をオシロスコープで測定した。



<パラメータ設定>

DMEモニターの数値を見ながら、パラメータ(電源電圧、エアーフローメータ、エンジン温度、吸気温度、大気圧及び回転数)を設定した。

また、エンジンシミュレータは温度センサーや大気圧センサーをボリュームで模擬しており、校正もしていないので値は目安となる。

なお、O2センサはデューティーが約50%になるように設定した。

<ICV制御回路>


 

<エンジン温度が低温時>

エンジン温度を低温(-20℃程度)に設定した時のICV制御回路の波形を示す。

上側(CH2)は33ピンで下側(CH1)は34ピンの波形になる。


      

<アイドルコントロールバルブ開閉率>

上図から、1周期(T-b)が約13msであることが分かる。

(T-a)/(T-b)をデューティーとし、エンジン温度と回転数を変えた時の値をグラフ化した。

なお、実際のICVは10×15mm程度の金属が上下(左右)して空気の通り道を全開・全閉しているので、デューティーを開閉率として補正した。

<考察>

ICV制御回路の故障では、トランジスタ(T560)に過電流が流れて異常発熱したり、34ピンからT560のコレクタ間のプリントパターンが焼損したりする。

なお、件数は少ないが、トランジスタがオープンモードで故障した場合は、電流は流れず発熱もない。

いずれにしても、ICV内部の金属がある位置(開度)で固定されるので、アイドリング調整やアイドルアップが出来なくなる。

ICV制御回路が正常な場合は、高回転(約3,500回転以上)になるとより多くの空気をICV経由で取り込んでいることが、グラフから分かる。

ICV制御回路が異常な場合は、固定されている開度にもよるが高回転になっても、取り入れる空気が増えることは期待できない。

暖機済みの状態で異常が発生したとすると、10%程度の開度になるので、正常な場合の最大開度約90%と大きな差がある。

その分が、パワーアップになるのではないかと思われる。