Motec アイドリングコントロール設定メモ(1)
Motec アイドリングコントロール設定メモ(1)
8月ぐらいから本日まで、ほぼ毎日アイドリング制御関連の再設定を行っていました。(これが走り込みの理由です。)
多分、まだ続けることになるかと思いますが、本日は雨、外気温は24度。
明日は、残暑でまた気温が上がるとのことですから、データ取りにはよい気温です。笑
ここ10年近く、毎日じゃないですけど、どうしても気温変化が激しい季節の変わり目でアイドリングパラメーター設定を行ってきましたが、以下の問題を一応解決できました。
(完璧じゃないですけど、まあいい感じです。これからまた寒くなるのでどうなるかわかりませんけどね。)
1.エンジンの再起動(完全に冷え切っていない状態など)の直後のエンスト対策
2.MotecM100系では対応できないISCVによるダッシュポット効果の追加
(走行中3000とか4000回転でクラッチを切ったり、空ぶかししてもエンストすることはほぼなくなりました。)
実は2のダッシュポット効果については、Motec本社にメールで問い合わせてのですが、返事無しでした。(涙)
AVO Motec/Japanさんの話では、Motec本社(オーストラリア)のメールでのやり取りの担当者がかなりいい加減な奴らしいです。(笑)メール連絡した後、数日経過してから電話連絡入れてしぶしぶ対応するなんてことが頻繁にあるとか...。(苦笑)
過去ログでも紹介しましたが、M100系のECU Managerの開発は終わったので機能追加は行えないと言われてしまいましたしね。
Motecのアイドリング制御の泣き所、Idle Inital Position(アイドリング制御していない状態でのISCVのDutyの値)に縦軸を追加して欲しいと依頼したのですが、
ダメだったので自分で考えた方法でうまくスロットルダッシュポット効果をつけることができました。
アイドリングコントロールの設定に関して、自分メモで以下にまとめです。
何回かに分けて記載する予定です。
あくまでもPWMアイドリグバルブの設定なので、DBW(ドライブバイワイヤー)やステッピングモーターの制御をとは異なる部分が多いかと思います。
PID制御
- MotecのあらゆるPID制御で使われているのでアイドリング制御を行う上で、初めにすべてのパラメーターをゼロに設定する。
- Air Con Increase/Power Steering Increaseも当然ゼロで初期設定は行う。この2つのパラメータはアイドリングコントロールバルブの出力値に加算される。
- この状態でAim RPMの設定(目的のアイドリング回転数)を行う。
- AimRPMは3次元マップで軸が2つ選べるので、エンジン温度(ET)と縦軸は別に使うことができる。(別な使い方は後に記載。)
- もし、エアコン制御を行う場合の回転アップは、AimRPMの縦軸ではなく、Aim RPM Compを使用する。
- エアコンのOn/OffのステータスはUser Channelに割り付けて、User Channelの値でOn/Offの判定をAim RPM Compの軸に割り付けてアイドルアップ回転数を設定すること。
- Normal PositionのDutyの設定は、エンジンが十分に温まった状態で指定回転になるように設定する。(Normal Positionの横軸にエンジン温度を割り付けた場合、初期の調整の段階では大体の値を入力しておきます。)
- このときNormal Positionと同時に大雑把で構わないので、Min / Max Dutyを設定しておく。
Min / Max Dutyの横軸は、この時点ではエンジン温度でかまわない。 - Min Dutyに関しては、横軸は設定しなくてもかまわないかもしれないが、後に記載するエンジンが中途半端な温度のときにエンジンをかけた直後にエンストするような場合の対策に使用することができる。)
- この時、Normal Positionを設定したときの値は、吸気温度をメモしておくほうがよい。
気温変化で若干の(-3.0〜+3.0)ぐらいの調整が必要になる場合があるので、異なる気温の日でログを取り、アイドリングバルブの開度の状態を調べる必要あり。 - PIDの設定は、Motecの公開しているYoutubeの動画を参照すると設定のコツが詳細されている。内容はブーストコントローラーとアイドリングバルブの2つについて紹介されている。
- まずはじめに、AimRPMの値を任意に変更する。
例えばエアコンをオンにしたときのアイドルアップ回転数など、ISCVが稼働に必要な回転数を入力する。 - PIDのPがゼロの場合は、この回転数を変更してもエンジン回転数は変わらない。
この状態でPの値を徐々に増やして調整を繰り返す。
すなわち元の回転数、アイドルアップしたい回転数を交互に入れて、ECU Managerのチャートレコーダーで、ISCVの開度と回転数を見ながら、Pの値がオーバーシュートしないぐらいの値にする。 - ISCVは、多くの場合でDパラメーターは必要としない。
アイドリングコントロールバルブは、突飛に動くと逆にハンチングしてしまうので、Dパラメーターはゼロのままか、かかなり小さな値のまま、AimRPMを変更して回転数がAimRPM通り(近く)になり、かつハンチングしないような値を探す。
(追記:Dパラメーターはゼロにはしないこと。Pパラメーターが設定されている場合、常にPパラメーターの値で追い求めるので、必ずDパラメーターは0以外の値を設定すること。)
実際には、ここでハンチングしない値であっても、走行シーンによってはハンチングしてしまう場合があるので、ギリギリの値を求めて、若干少なくするのがコツ。 - Iパラメーターを設定する前に、Iパラメーターのリミット、Min/Max Integration Limitを設定しておく。
ヘルプに記載されているディフォルト値+/-10.0で初期の段階ではかまわない。(最後までかもしれない)
本来、大きな気温変動がなければ(日本国内では無理)Integration Limitの値はかなり小さくすることできるはず。
微調整の範囲していなので、Integration Limitの横軸は、PパラメーターのAim RPM Comp同様に、エアコンOn/Offを軸に指定し、エアコンが稼働しているときの(負荷の変化があるため)で少し大きめの値、エアコンオフの状態では、なるべく小さな値にしてエラーを最小限にすべき。 - Iパラメーターは、Pパラメーターが決まった後に、目的の回転数に合わせるための微調整パラメーターである。
- ECU Managerの説明にある通り、あまり大きな値は突飛な動きをするので注意が必要。
- Iパラメーターは重要なので、納得がいくまで調整するほうがいい。
- ここまでの設定で、AimRPMに入力した回転数に追従するようになったかを繰り返しテストする。
- アイドリング回転数付近の点火時期、燃料マップは可能な限りフラットな状態が望ましいとのこと。
- こちらのMotecのIdle設定ヒントのYoutube動画で設定のヒントが公開されている。
- アイドリングのPID制御に関して、PID制御を理解する必要があるが、もしPID制御を理解できなく、簡易的にアイドリング制御をしたい場合、(テストなど)Iパラメーターだけの動作制御も可能。
その場合、Normal Positionをゼロに設定し、Integration LimitのMinとMaxに最小/最大のDuty値を設定する。 - このとき、Integration LimitのMinの値は、マイナス値ではなく、負号なしの値を設定し、アイドリング制御に入った段階で、P、D制御が行われず、長期的に行われるIパラメーターの値のみで、Min/Maxに指定されたDutyサイクルのみでアイドリングコントロールバルブの開度調整が行われるようになる。
- ちなみにこの方法は、Integration Limitのヘルプ(F1キーを押すと表示される)に記載されている。(1行のみであまり親切ではない。)
- その他、Motecのヘルプマニュアルは、昔(Version2.x)の頃からスペルミスや、略単語がマイナーな部分が多いので、読み違いに注意が必要。(いい加減直して欲しいというか、製品なんだから校正ぐらいかけて欲しいですね。)
以上、続く。