燃料噴射制御の進化(2)

 引き続きECUというか、EFI(Electrical Fuel Injection)編。前回はLUT(Look Up Table)を使ったデジタルマップに代えて伝達関数を使う方式が採用され、最近ではモデル制御に移行しつつあるという話をちょろっとご紹介した。まずはこのあたりの補足から。

 LUTに代えて伝達関数を使う、といっても全部を伝達関数だけでやるのは結構骨である。たとえばグラフ1は前回も紹介した、適当に作った伝達関数を基にしたデジタルマップもどきであるが、実際に試作してみたら、どうも3,500~4,500rpmの間にトルクの谷ができてしまうので、ここをちょっとだけ濃い目にしよう、なんて話があったらどうするか?

 デジタルマップだったらグラフ2の様に、3,500~4,500rpmだけをちょっとだけ盛り上げる設定をすればよいが、これを伝達関数で実現しようとすると、えらく大変な話になる。どうしても伝達関数だけでやろうとしたら、たとえば回転数が3,500~4,500rpmの範囲かどうかをまず判定して、ついで盛り上げ分を別の関数で求めて足す、といった細工をすることになる。

 こうした処理が入れば入るほど、伝達関数だけで済ますのは難しくなる。元々グラフ1の様なきれいな形になるのは稀であって、通常は多項式演算を使って理想の形に近いものを近似計算で実現することになるが、この近似式の精度を上げようとすると、どんどん多項式の項数が増えてゆくことになり、計算に時間がかかる。これはEFIのレスポンスを悪化させることになり、必ずしもよい事ではない。

グラフ1グラフ2

 そこで伝達関数を使う場合、「補正マッピング」と呼ばれる方法が採用されることなった。つまり燃料吐出量のメインの計算は伝達関数で行うが、このあとで補正をデジタルマップで掛ける、というものだ。これを簡単にまとめたのが図1である。

 まず回転数やアクセル開度、エンジン温度など様々なパラメータを取り込み、伝達関数計算を行って仮のガソリン吐出量を決定する。ついで、この仮のガソリン吐出量と、必要なら幾つかのほかのパラメータ(これは外部センサー入力をそのまま持ってくる)を使って補正マップを参照し、最終的なガソリン吐出量を決定するというものだ。この際のLUT、つまりデジタルマップの中身は、たとえばグラフ3の様になっている。グラフ1で算出された仮の吐出量に、このグラフ3の補正値を足すと、グラフ2の様な吐出量が完成するという訳である。

図1グラフ3

 ここでグラフ3の値が-50%~50%になっているのは意図的なものである。つまり、吐出量は増やすばかりではなく減らすことも当然ある。あくまでこれは補正なので、元々の吐出量をどう変化させるかという差分になる関係で、マイナスの値をとることもありえるのだ。

 これを生かした仕組みが、たとえばオーバーレブ時の対応である。オーバーレブ時にどうするか、というのは車種(というかエンジン種類)によって色々だが、オーバーレブ手前から点火を間引く形で上限に達しにくくし、それでも達してしまったら燃料カットといったあたりが比較的普通ではないかと思う(ちょっと前だと間引かずにいきなりカットというものもあったが)。こうした対応は、補正マップでレッドゾーンぎりぎりにおける燃料噴射量の補正値を-100%にすれば、何があっても燃料供給がされなくなるので、オーバーレブでエンジンを壊す危険性が減ることになる。

 こうした補正マップは、完全なデジタルマップに比べればデータを設定するのも容易だし、たとえば試作の段階でテストをしながら「このあたりを10%アップ」「この辺を5%ダウン」といった具合に調整するのも容易となる。伝達関数をあれこれ操作するよりも影響が少ない(伝達関数を色々いじくると、影響が全域に及びやすい)点も便利である。

 そんなわけで、こうした補正マップに関しては現在も(伝達関数やモデル制御に併用する形で)使われている事が多い。厳密な話をすれば、伝達関数制御はともかくモデル制御に補正マップを併用するのは禁じ手(モデル制御の意味がなくなる)という話はあるのだが、このあたりはモデル制御の精度とも関係する話であって、最初に構築したモデルが十分な精度で無い場合、後工程にあたる補正マップでこれを補うというのは方法論としてはアリとされているようだ。そんなわけで、たとえば車雑誌などで「EFIのデジタルマップを操作する」という解説とか写真がある場合、大抵はこの補正マップの操作を行っていると考えてほしい。

 この補正マップを、後付けの形で実現したのがサブコンである。サブコンの定義は色々あるが、要するにメーカー純正のEFIとインジェクションの間に挟みこむ形で装着され、EFIの出力する吐出量の信号と、必要ならいくつかのセンサー信号を元に、あらためてデジタルマップを使ってガソリン吐出量を決めるという仕組みである。

 もっとも単なるデジタルマップで済むかどうかというのは、割とケースバイケースである。たとえばF1の場合、2008年度から共通ECUを使うことにされたのは、F1に興味のある読者であればご存知だろう。この共通ECUは、単にエンジンの制御のみならずトランスミッション制御や一部車体制御までカバーに入れたもので、製造はMcLaren Electronic Systems(http://www.mclarenelectronics.com/)が一括して行っている。

 最近だとここはNASCARの共通ECUも提供しているなど、このマーケットでは大手なのだが、ここの提供する「TAG-310B」(http://www.mclarenelectronics.com/Products/Product/TAG-310B)がF1で必ず使用しなければいけないものとなっている。

図2

 各F1コンストラクターは、自チームのエンジンや車体制御にこのTAG-310Bを使わなければいけないのは決まりだからどうしようもないが、問題はTAG-310Bで完全に制御しきれるわけではないことで、幾つかの制御システムをここに追加する必要がある。かといって、TAG-310Bの中に手を入れることはできない。

 そこで、やはり図2の様にまずTAG-310Bを動かし、ここから出てきた制御信号を自社のサブECUに入力、ここから制御信号を作り出すといった事をしている。このクラスの話になると、単純なデジタルマップなどではおそらく能力不足なので、伝達関数あるいはモデル制御を行っていると考えられるが、詳細は(当然ながら)不明である。

 世間一般で言われる、チューニングパーツとしてのサブコンは、勿論TAG-310Bほど高機能なECUを相手にするものではないし、そこまでの機能も要求されないから、おおよそ図2に示す程度のものであることが普通である。完全に元々のEFUを外してしまう事も可能な場合もあるが、最近の車は盗難防止などのシステムの中にEFIも組み込まれているのが普通なので、EFIを外してしまうとそもそもエンジンが掛からなかったりする。

 またエンジン起動時の振る舞い(特に寒冷地域におけるオートチョークまわりとか)などまでチューニングパーツにお任せされると荷が重いので、ある程度スポーツ走行を考慮したエンジン回転数未満は、サブコンは何もせずに信号をスルーといったインプリメントになっているものも少なくない。チューニングパーツのサブコンの目的は、ある程度ブン回して走るときによりパワー/トルクを出すとか、旋回時のレスポンスをよくするとかそういう話である事が多いので、それ以外はオリジナルのEFIに任せたほうが得策という訳だ。

 こうしたサブコンの場合、やはり調整は補正マップ方式になっていることが多い。もっと進んだものは、マップそのものを幾つか用意しておき、どのマップを使うかを選択するだけ、というものもある。サブコンを使おうとするドライバーが、必ずしもエンジンの特性などに詳しいとは限らないので、変に補正マップをいじくりまわして大変なことになるよりも、ある程度特性の確定したマップを選ばせるだけにしたほうが無難、というキットパーツショップ側の事情もここからは透けて見えてくる。

 ちなみに先ほどのF1のECUの話にも出てきたが、最近はEFIが単体でエンジン制御を行うという話には段々なりにくくなってきている。1つは車体制御とも関係する話で、トラクションコントロールなどを行う場合、エンジンと同時にサスペンションなどの制御を行う場合がある。また最近は車両安全のために、アクセルオーバーライド(衝突などが予見される場合、ドライバーのアクセル操作にかかわらず強制的に車速を落とすためアクセルを閉じる)などの機構が入る場合もある。こうした機構が入っている場合、サブコンなどを後で入れるとシステム的に矛盾した動きになることも当然想定される。

 また低燃費を維持するため、ECU側でシームレスにエンジン回転数とギアを入れ替えてゆく仕組みが随分進化しており、サブコンでEFIの信号だけを変更すると、このあたりも連携がおかしなことになる可能性がある(まぁ「オートマにサブコンを使うことは無いだろう」といわれればその通りだが)。今後はハイブリッド車が増えると、こちらはさらに複雑な制御なので、サブコンを追加するのはかなり難しくなるだろうと想像される。

カーエレWatch バックナンバー
http://car.watch.impress.co.jp/docs/series/cew/


(大原雄介 )
2011年 12月 7日