吸気温度対策の効果検証の為に吸気温度を測定したくなってきました。
以前は秋月の温度計キットを使って測っていた時期があったのですが、ここはひとつ、NA8Cに純正で備わっている水温センサと吸気温センサからの信号を拾って、吸気温計とついでに水温計を作ろうと思います。
REV Counter Moduleで使ったワンチップマイコン PIC16シリーズのADC付きのモノを使って、純正温度センサ信号を拾って、水温や吸気温をディジタル表示させます。
方針はRev Counterと同様。
ROMチェンジャー第2弾が進まないくせによくこんなのやるよなぁ、という気もしますけど、これから起こすROMチェンジャー第2弾の基板と一緒の異種集合基板にして、ついでに基板化してしまえないかなぁ...という思惑があります。
ですので、パターン設計に取り掛かる迄に回路の完成度を十分に高めておく必要があります。
もっとも一番大きい理由は、夏のボーナスが出ないことには基板を起こす為の初期投資ができないというのが実情ですが...(^^;)
純正の温度センサ(サーミスタ)をそのまま使います。
ECUへの配線の途中から信号を分岐して温度を計測するというお手軽仕様です。
ECUへの影響は殆どありません。
サーミスタというのは、温度によって抵抗値が変わる素子です。
温度特性によって以下のように3種類に分類されます。
温度計に用いられるのは、当然1番目のNTCサーミスタになります。
NTCサーミスタの温度と抵抗値との関係式は...
R = R0 ・ exp B ( 1/T − 1/T0 )
ここで、
R :任意の温度Tにおける抵抗値
T :任意の温度[K]
R0:基準となる温度T 0における抵抗値
T0:基準となる温度[K]
B :定数
ECU内部では、定電圧電源と抵抗によって、リニアライズ処理を兼ねたサーミスタの抵抗値→電圧という変換を行った後、ADCでディジタル化してマイコンに取り込んでいます。
よって、純正温度センサのR0、T0、B定数、そしてECUの定電圧電源の電圧値と抵抗値、これらの各種定数が判れば変換テーブルが作成できます。
ロドスタの純正温度センサの特性を、各種の資料を元に解析してみます。
え〜、行程省略(笑)。
センサの各種定数から抵抗値をイルカと戦いながら(笑)Excelで計算してプロットしました。
このグラフは整備書にも載っています。
整備書の数値とグラフから判断すると、吸気温度センサも水温センサも同じ特性のようです。
上で求めた抵抗値を元に、ECU内のリファレンス電圧とプルアップ抵抗とから、温度と信号ライン電圧との関係を求めます。
整備書の20℃及び暖機後における標準値を参照すると一致してますので、恐らくこれで正解。
ただ、NA6CEの方の吸気温センサ電圧は水温センサ電圧と同じカーブかもしれません。
(未確認)
95℃付近を拡大。
ここまで来れば、ファン制御をやるのは簡単。
アナログコンパレーターを通してパワートランジスタをON/OFFしてファンリレーを駆動すれば任意の温度でのファン制御が実現します。
そう考えると某製品の¥14,800はちょっと高過ぎるよね(笑)。
温度計のブロック図はこんな感じ。
非常に単純な図ですけれども、ワンチップマイコンのお陰で、実際の回路も極めて小規模です。
ADC内蔵のワンチップマイコンに純正センサ信号を取り込んで、ADして、AD値-温度変換し
て、7セグLEDに表示します。
3桁表示の1℃刻みで、ちょっと分解能が物足りない感じがしますが、サーミスタ自体の精度が1%程度しか無いので、測定値の小数点以下はあまり意味がありません。
但し、ADCのビット数は8bitなので、1℃刻みにしてもADCの方の分解能が不足します。
しかも、とりわけ重要な高温側では電圧変化が少なくなって行くのでさらに分解能が不足します。
そこで、入力をゲイン1倍のバッファと、ゲイン4倍のアンプとを介した2入力とし、70℃以下では1倍の入力から、70℃以上では4倍の入力からADすることで、1digit/℃以上の分解能を確保します。
つづく...