はじめに
自身でmatlab/simulink等を使ってECU設計/検証/シミュレーションの業務を行っていると言い張っているが、実際にECUがどのような目的でどのような制御を行っているかまで把握していることは少ない。
接続されているデバイスと故障診断機(スキャンツール)を起点にして知識掘り下げを行い、知見拡大を狙う。
方針
基本、エンジンの噴射制御を中心に説明する。
噴射制御を中心にした理由は以下。
- 外部診断機関連も良くやっている。
- 噴射制御は法規による排ガス規制、外部診断機要求と密接。
- よって、噴射制御の「言葉」の方がなじみ深い
噴射制御全体のデータフロー

O2センサ

クランク角センサ

MAF(吸気流量センサ)
![実吸気流量Ga[g]、エンジン回転数Ne[rpm]、旧流量Qa[g/sec]](https://www.simulationroom999.com/blog/wp-content/uploads/2020/03/MAF03-1024x462.png)
基本目標噴射量算出
![基本目標噴射量算出、Scilab、噴射量Qf[g]、エンジン回転数Ne[rpm]](https://www.simulationroom999.com/blog/wp-content/uploads/2020/03/basic-target-injection-amount02-1024x721.png)
スロットルポジションセンサ
インジェクタ
![インジェクタ、Scilab、インジェクタ通電時間Tinj[ms]、エンジン回転数Ne[rpm]](https://www.simulationroom999.com/blog/wp-content/uploads/2020/03/Injector02-1024x699.png)
全モデル合体

まとめ
今回、センサ/アクチュエータ特性をテーブル、マップではなく、近いと思われる式で同定した。
恐らくはエンジン開発の初期においては同等のことをしていると思われる。
ソフトウェアとして実装することを想定した段階から、CPUの時間リソースやチューニングの精度の都合でテーブル、マップになっているだけで、元となる変換式は存在するはず。
一度、そこに立ち戻って制御を見ることも重要と感じた。
また、SAE J1979の観点の情報も記載したが、規格で定められているものは業界レベルで共通であることがほぼ保障されているため、基本/標準的な視点、焦点を洗い出すには取っつき易いものとなる。
「外部診断機にそこにあるデータを返すだけ」という考えで無く、「なにのために」「どのようにして」まで踏み込むと新しいものが見える場合がある。
コメント