前回記事
(5)燃料噴射・点火信号の確認
#燃料噴射量と点火時期制御を確認
燃料噴射量・点火時期制御の基本動作を確認します。
Seeduinoでは、これらをスロットルポジションセンサ(または吸気圧センサ)と回転数のマップから算出しています。
##用意するもの
(ロジックナライザーなしでも、動作確認ができます)
##Tuner StudioとDeviceDruidの設定
-
TunerStudioとDeviceDruidを起動し、回転数を1500[rpm]のクランク角信号を入力します。
参考:(4)回転数の確認 -
TunerStudioのAccessories>Boost ControlのBoost CutをOffにします。
-
TunerStudioのSettings>Engine ConstantsのControl AlgorithmをMAPからTPSに変更します。
これにより、制御に使うセンサが吸気圧センサ(MAP:Manifold Air Pressure Sensor})からスロットルポジションセンサ(TPS)へ変更します。 -
TunerStudioのSpark>Spark SettingsのIgnition load sourceをMAPからTPSに変更します。
同様に、点火時期の算出に使うセンサもスロットルポジションセンサ(TPS)へ変更します。 -
ゲージのDuty Cycleを右クリック、Main>Spark Advance-advanceGaugeに切り替えます。
Spark Advanceの値は、シリンダー圧縮上死点(BTDC)の何度手前(進角)で点火したかを示します。
##充填効率マップの確認
TunerStudioのTuning>VE Tableを開きます。
- 横軸:回転数(RPM)
- 縦軸:スロットルポジションセンサ[%]
- 値:燃料噴射量のベースとなる充填効率※(VE:Volumetric Efficiency)[%]
VE(充填効率※)マップデータに基づき、インジェクターのパルス幅(Pulse width)が算出されます。
※吸入される実際の空気量/ピストンが上下に移動する容積(排気量)。
パルス幅が長いとインジェクターの開く時間が長くなり、燃料噴射量が多くなります。
VEテーブルの詳細については、下記に説明があります。
https://speeduino.com/wiki/index.php/Tuning#The_VE_Table
##点火時期マップの確認
TunerStudioのTuning>Spark Tableを開きます。
- 横軸:回転数(RPM)
- 縦軸:スロットルポジションセンサ[%]
- 値:点火時期 + 10[deg]
2.Arduino MegaのA2ピンをGNDと接続し、TPS(スロットルポジションセンサ)を100%⇔0%に変化させます。
点火時期テーブルに基づき、Spark Advance[deg]が変化します。
Spark Advance[deg]が大きいと、圧縮上死点(BTDC)より、早いタイミング(進角)で点火が行われます。
点火タイミングについては、以下のサイトが参考になります。
いまさら聞けない 電装部品入門(8):さらばディストリビューター、点火タイミングは電子制御で最適化する時代に
##ロジックアナライザでの確認
Cam信号の立ち上がりをトリガーにして計測すると、比較しやすいです
上:TPS=100[%]、下:TPS=0[%]
*D0:INJ1, D1:INJ2, D2:IGN1, D3:IGN2, D4:Crank, D5:Cam
スロットルポジションセンサの変化により、インジェクターのパルス幅と点火タイミングが変化しています。
##最後に
マップに基づく燃料噴射量・点火時期制御の動作を確認しました。
今回は、基本制御の計算部分で、そのほかにも様々な補正要素があります。
次回は、これらを計算しているソースコードの解読を行う予定です。