外気圧補正の怪(下)

 悩んできた変遷をさらけ出す

 Freedomをいじった経験について紹介しようと思って、まっさきに不可解に思った外気圧補正について書き出したら、それが爆弾であることが徐々に分かってきて、更新すらできない状態がしばらく続いてしまった。最初に書き始めた、2003年3月よりも、4連スロットルのエンジンをセッティングしたことで、確実に経験が上がってきたので、そろそろケリを付けてしまおうと思う。細かいことは後回しにし、話を単純化して、今回は結論だけ書いてしまう。

 外気圧補正の変遷を書くと、当初、ノーマルエンジン(シングルスロットル)で始めて、何も問題が起こるはずがなかった状態だったのに、不可解な現象が起こったため混乱してしまった(バグではないかと書くと問題が大きいから不可解と書く)。いじったこともない外気圧補正の数値(Dジェトロデフォルトの吸気圧変換方式)が、ありえない数値に置き換わっていたため、標高1100mぐらいで燃調が異常な濃さになってしまい、エンジンがうんともすんとも動かなくなるというものだった(外気圧補正の怪・中と当時の日常(2002年9月9日付)を参照)。

 学習をさせていないのに、勝手に外気圧補正(吸気圧変換方式)の数値が変な数字に変わっていた、という現象はこの後も1、2回経験したから、ある日突然調子が悪くなったとき、チェックしてみると良いかもしれない。

 で、吸気圧変換方式からマップ方式に切り替えたら、突然調子が良くなったので、ごきげんで走っていたのだが、日ごとに空燃比がころころ変わって、噴射量マップが信頼できなくなり、セッティングどころじゃなくなった。前回も書いたとおり、これは外気圧補正マップに学習をかけてしまったため。で、学習を止め、マップ上の数値をすべて「1.0000」で塗りつぶして、事実上外気圧補正を殺したのである。

 これが調子が良かった。標高が高くなって、外気圧が700mmHg以下と低くなっても問題なく走る。ノーマルECUは標高が高くなるにつれて空燃比が濃くなっていったものだが、この状態ではそれほど狂わなかった。これは、シングルスロットルの場合、吸気管内(インテークマニホールド内)の圧力に空気の吸入量が比例するからだと思う。

  650mmg 700mmHg 750mmHg 800mmHg
4000rpm 0.650 0.680 0.750 0.800
4500rpm 0.680 0.730 0.800 0.830
5000rpm 0.730 0.780 0.850 0.880

 例えば、高回転高負荷のマップが上の感じだったとする。平地(外気圧760mmHg)では、アクセル全開だと、マップ上の750mmHgと800mmHgの間を読んでいる(800mmHgあたりはあまり読まないらしく、あまり学習されない)。これが、松本ぐらいの高地だったとすると、外気圧は700mmHgほど。全開時の吸気圧も700mmHgぐらいになるのだ。マップ上の数値を見てもらえれば分かるが、それだけ噴射量が減っているわけで、これだけとらえれば外気圧の変化で補正する必要はない。点火時期についても同じことが言える。

 が、Freedomのマニュアルなどを見ると、Dジェトロで外気圧が低くなった場合、それだけマフラーの抜けが良くなることを考えるらしい。だから、同じ吸気圧で比較した場合、燃調を濃くする方向で補正が必要だという。が、僕があちこち走った限りでは、むしろ薄くする補正をかけたいぐらいで問題はなかった。確かに高地に行ったとき、燃調は狂うのだが、それは吸気圧が変わって噴射量マップの読む位置が変化して起こることの方が大きい気がした。マフラーの抜けが良くなる、というのもうなずける理屈なのだが、補正が必要になるほどずれないんじゃないの、というのが今のところの結論だ。

 もし、デフォルトの「吸気圧変換方式」を採用すると、外気圧が700mmHgと低くなっても、平地並みの750mmHgあたりのマップを読んでしまうことになるため、濃くなるだけのような気がする。

 誤解を恐れず書いてしまうと、シングルスロットルでDジェトロ=外気圧補正を殺す(吸気圧変換方式からマップ方式に切り替え、マップ上の数値をすべて1.0000で塗りつぶしてしまう)のが分かりやすくて良いのではないかと思う。もちろん、デフォルトのまま吸気圧変換方式を使っていても問題はないと思う。が、これだけは覚えておく。突然調子が悪くなったら、外気圧補正を疑ってみると、解決するかも知れない

 で、僕の場合、外気圧補正を殺したままで4連スロットルに移行したわけだが、平地ではまったく問題なかったのに、標高が上がると絶不調になってしまった。とにかく薄く、フィードバック補正を入れないとぎくしゃくして、まともに走ることができなかった。なぜだろう。

 シングルスロットルでは、吸気管内の圧力が空気の吸入量が比例するのだが、4連スロットルでは、この原則が崩れてしまう。理屈で書くとこうらしい。

 シングルスロットルの場合、エンジンは、吸気管内(空気だまり)の中からある一定の圧力を持つ空気を吸うとイメージすれば良い。スロットルを閉じていれば吸気管内の圧力が低くなってそれだけ吸入量が減り、開けていくに従って圧力が増していく。全開にすると、大気圧と同じになる。

 しかし、4連スロットルだと、開度が低いときはスロットルより後ろのポート内がシングルスロットルで言う吸気管(空気だまり)となって同じような原理が働くのだが、開度が20%あたりより大きくなってくると、スロットルの前後の空気の流れが連続したものになる=吸気管内の圧力が大気圧と等しくなる。

 要するに、Freedomから見ればスロットル開度20%を超えたあたりで全開と区別が付かなくなってしまうのだ。しかし、吸気管の途中には傾いたスロットルのバタフライが邪魔ものとして存在する。これが空気の流れをせき止めているところに、全開分の燃料を噴射してしまう結果となるので、ハーフスロットル時に燃調が濃くなってしまう。

FCSSの噴射量マップ編集画面で表示されるグラフ。縦軸が噴射量。横軸が吸気圧を示している。空燃比フィードバックで単純に学習させてマップを作ると、700mmHgあたりを境に急激に濃くなるマップとなってしまう。これをスロットル開度補正でつじつまを合わせるのだ。

 だから、4連スロットルのDジェトロ制御だと、スロットル開度20〜50%ぐらいのときに、噴射量を削る必要がある。スロットル開度が1%単位で分かるリニア式のスロットルポジションセンサーを取り付け、Freedom側でスロットル開度補正を入れることになる。

 スロットル開度補正をしないと、例えばサーキットを走っていて、コーナリング中にハーフスロットルにした場合など、一瞬濃くなって、エンジンがまったく吹けない状態になる。

 クリップを超えてジワリとアクセルを踏んで加速態勢に入りたいのに、エンジンが「ぼこぼこ」とぐずる状態。非常にフィーリングが悪く、タイムも出ない。

 具体的にどんなマップになってしまうのか。

 4連スロットルで空燃比計からフィードバック補正し、学習させたときの噴射量マップは、こんな感じになる。カムによってここら辺の数値はまったく変わってくるので、あくまでもイメージ。数値はでたらめである。

  650mmg 700mmHg 750mmHg 800mmHg
4000rpm 0.450 0.600 0.880 0.900
4500rpm 0.500 0.700 0.900 0.930
5000rpm 0.400 0.680 0.940 0.960

 単純に空燃比計からのフィードバックによる学習でマップを作ると、吸気圧700mmHg近くを境に急に濃くなるマップができあがる。だから、スロットル開度で補正する。

  15.0% 20.0% 25.0% 30.0%
4000rpm 1.000 0.930 0.800 0.830
4500rpm 1.000 0.930 0.800 0.830
5000rpm 1.000 0.930 0.800 0.830

 マップにするとこんな感じ。20%あたりから噴射量マップの全開の値を読むので、濃くなる分削る必要があるのだ。実際には、回転が上がるとスロットルオフ時の負圧も高くなるので、かなり複雑なマップとなる。

 で、本題に戻るのだが、これで外気圧補正を殺した状態だとどうなるかは一目瞭然。外気圧が700mmHgを下回ったあたりまで標高が上がると、全開時の吸気圧も700mmHg付近となる。海面レベルでの踏み始めぐらいまでの吸気圧しか出ない。結果、燃料がまったく足りない状態となり、とっても薄くなってエンジンが吹けるどころの騒ぎではなくなる。

 最初、外気圧補正マップでつじつまを合わそうとしたけれど、スロットル開度と噴射量の関係が崩れてしまっているので、補正しきれない。燃調はなんとか普通に回るぐらいまで補正できても、点火時期がかなり進んでしまい、ノッキングが出まくる。

 これはいただけない。いくら平地で絶好調でも、標高が少し高くなるだけで調子が悪くなる車はまったく実用性に欠けるわけで、最初は真剣にDジェトロを捨てようかとも思った。Freedomにはスロットル開度だけで噴射量を決めるスロポジ制御も選択可能なのだ。スロポジ制御であればスロットル開度と燃料噴射量が比例関係にあるから、外気圧補正は標高が高くなるに従って、薄くしていく方向でセットしてやれば、問題ない。

 真剣に悩んで標高2000mの志賀高原まで行ってあれこれ試し、ようやく気づいたのである。外気圧補正をマップ方式ではなく、吸気圧変換方式にすればよい、と。ここら辺の試行錯誤は当時の日常(2003年6月8日付)に詳しい。日常の方が生々しいから読んで下さい。

 で、ようやく吸気圧変換方式にたどり着いたわけだが、Freedomのマニュアルによると、吸気圧変換方式は、外気圧をX、換算吸気圧Yとすると関係式は、

 Y = a * X + b (*はかけるを意味する)

となるらしい。aはゲイン、bは切片というらしい。

 難しい話ではない。例えば標高600mあたりの場所に行き、外気圧が700mmHgぐらいになったとする。このとき全開の吸気圧も700mmHgになっちゃうことは、分かってもらえたと思う。だから、Freedom本体の中にあるセンサーで観測した外気圧を、かけ算(ゲイン)と足し算(切片)を駆使して760mmHgあたりの数値に置き換えしまえということなのである。

 700mmHgを760mmHgにかけ算だけで換算したければ、単純に計算して、

 760÷700=1.08571…

1.0857をかければ良いのだ。

 しかし、かけ算だけだと、実際走ってみた経験上、濃くなる傾向があるので、かけ算(ゲイン)とともに足し算(切片)も加えてやると具合がよい。今のところの外気圧補正の数値は以下の通り。

外気圧(mmHg)
ゲイン
切片
450
1.3750
80.0
470
1.3500
75.0
490
1.3250
70.0
510
1.3000
65.0
530
1.2750
60.0
550
1.2500
55.0
570
1.2250
50.0
590
1.2000
45.0
610
1.1750
40.0
630
1.1500
35.0
650
1.1250
30.0
670
1.1000
25.0
690
1.0750
20.0
710
1.0500
15.0
730
1.0250
10.0
750
1.0000
0.0

 一番下の750mmHgが平地で上に行くほど、標高が高くなっていくイメージ。見ての通り、単純に数値を大きくしているだけ。

 標高2000mで、590mmHgの外気圧なのだから、乗鞍スカイラインも走ることができなくなった今では450〜570mmHgの範囲は使うことがないと思われる。

 これで、標高1000mぐらいまでの範囲を走っている限りは、アクセル開度が浅いときに薄くなったりと、細かくずれることはあるが、気持ち悪いほどじゃないからだいたいOK。ツーリングする分には支障はない。ただし、標高が高いところのサーキットでも攻めるとすれば、きちんとセッティングを取り直した方が良いと思う。

 整理すると、4連スロットルをDジェトロで制御するなら、外気圧補正は吸気圧変換方式を選択する、ということだ。デフォルト状態では吸気圧変換方式になっているから、そのまま使っていれば問題はないが、ゲインと切片のデフォルト値はけっこういい加減なので見直してみる価値はある。

 スロポジ制御の場合は、外気圧補正マップを使う。外気圧が低くなるに応じて薄くするだけだから、悩むことはあまりない。シングル、4連の別もない。

 セッティングのしやすさと外気圧補正のシンプルさだけでいけば、スロポジ制御にしたくなるのだけれど、アイドリングのコントロールがちょっと甘くなるらしい。試してみる価値はあるけれど、しばらくは4連Dジェトロ制御で行こうと思っている(最初からやり直すのが面倒くさいとも言う)。

戻る