(57)【要約】【課題】  アナログ信号のＡ／Ｄ変換データからノイズを効果的に除去可能なＡ／Ｄ変換処理装置を提供する。【解決手段】  エンジンの運転状態を検出するセンサからのアナログ信号をＡ／Ｄ変換してマイコンに取り込ませる入力ＩＣ５は、一定時間毎（この例では５００μｓ毎）に、アナログ信号をＡ／Ｄ変換器によりＡ／Ｄ変換すると共に、最新の複数個（この例では３個）のＡ／Ｄ変換値を記憶して、その中から、大小順が真中であるＡ／Ｄ変換値（ＡＤ値３個の中心値）を検出する。そして更に、その検出した真中の各Ａ／Ｄ変換値に対して、変動を滑らかにするなまし処理を行い、そのなまし処理の結果（なまし値）を、エンジンの制御に使用されるデータとして、マイコンに出力する。【選択図】  図２
2005167972.tif 000002
【特許請求の範囲】
【請求項１】
制御対象の制御に用いられるアナログ信号をＡ／Ｄ変換して、該アナログ信号の電圧値を表すデータを順次出力するＡ／Ｄ変換手段と、
該Ａ／Ｄ変換手段からの最新のｍ個（ｍは３以上の整数）のデータを記憶するデータ記憶手段と、
該データ記憶手段内のデータが更新される毎に、該データ記憶手段内のｍ個のデータの中から、それらを大小順に並べた場合に順番が１番目と最終番目との何れでもない特定番目となるデータ（以下、特定番目データという）を検出するデータ検出手段と、
該データ検出手段により検出された前記特定番目データを、前記制御に使用されるデータとして処理結果記憶手段に格納する処理手段と、
を備えたことを特徴とするＡ／Ｄ変換処理装置。
【請求項２】
請求項１に記載のＡ／Ｄ変換処理装置において、
前記ｍは奇数であり、
前記データ検出手段は、前記特定番目データとして、順番が真中のデータを検出すること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項３】
請求項１又は請求項２に記載のＡ／Ｄ変換処理装置において、
前記処理手段は、前記データ検出手段により検出された特定番目データを、そのまま前記処理結果記憶手段に格納することに代えて、前記データ検出手段により検出された特定番目データに対して変動を滑らかにする平滑化処理を行い、その処理結果データを、前記制御に使用されるデータとして前記処理結果記憶手段に格納すること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項４】
制御対象の制御に用いられるアナログ信号をＡ／Ｄ変換して、該アナログ信号の電圧値を表すデータを順次出力するＡ／Ｄ変換手段と、
該Ａ／Ｄ変換手段からの最新のｍ個（ｍは４以上の整数）のデータを記憶するデータ記憶手段と、
該データ記憶手段内のデータが更新される毎に、該データ記憶手段内のｍ個のデータの中から、それらを大小順に並べた場合に順番が１番目と最終番目との何れでもない特定番目となる複数個のデータを検出して、その複数個のデータを平均化した平均値データを算出するデータ検出手段と、
該データ検出手段により算出された前記平均値データを、前記制御に使用されるデータとして処理結果記憶手段に格納する処理手段と、
を備えたことを特徴とするＡ／Ｄ変換処理装置。
【請求項５】
請求項４に記載のＡ／Ｄ変換処理装置において、
前記データ検出手段は、前記複数個のデータとして、順番が真中付近のデータを検出すること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項６】
請求項４又は請求項５に記載のＡ／Ｄ変換処理装置において、
前記処理手段は、前記データ検出手段により算出された平均値データを、そのまま前記処理結果記憶手段に格納することに代えて、前記データ検出手段により算出された平均値データに対して変動を滑らかにする平滑化処理を行い、その処理結果データを、前記制御に使用されるデータとして前記処理結果記憶手段に格納すること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項７】
請求項１ないし請求項６の何れか１項に記載のＡ／Ｄ変換処理装置において、
前記Ａ／Ｄ変換手段は、前記アナログ信号を一定でない間隔毎にＡ／Ｄ変換するように構成されていること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項８】
請求項１ないし請求項７の何れか１項に記載のＡ／Ｄ変換処理装置において、
前記制御対象を制御するための制御処理を実行する制御装置と通信するための通信手段を備えると共に、
前記通信手段以外の前記各手段は、前記制御装置との通信タイミングとは独立して動作するようになっており、
更に、当該Ａ／Ｄ変換処理装置は、前記通信手段を介した前記制御装置との通信により、前記制御装置からデータ要求を受けると、前記処理手段により前記処理結果記憶手段に格納されている最新のデータを前記制御装置へ送信するように構成されていること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項９】
請求項１ないし請求項７の何れか１項に記載のＡ／Ｄ変換処理装置において、
前記制御対象を制御するための制御処理を実行する制御装置と一定時間毎に通信するための通信手段を備えると共に、
前記通信手段以外の前記各手段は、前記制御装置との次の通信タイミングが到来する所定時間前になると動作を開始するようになっており、
更に、当該Ａ／Ｄ変換処理装置は、前記制御装置との通信タイミングが到来すると、その時点で前記処理手段により前記処理結果記憶手段に格納されている最新のデータを、前記通信手段を介して前記制御装置へ送信するように構成されていること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項１０】
請求項１ないし請求項６の何れか１項に記載のＡ／Ｄ変換処理装置において、
前記Ａ／Ｄ変換手段は、前記アナログ信号を入力するための入力端子を複数有すると共に、その各入力端子にそれぞれ入力される複数のアナログ信号を択一的に切り替えてＡ／Ｄ変換するように構成されており、
更に、前記複数の入力端子のうち、何れかの入力端子には、ノイズを除去するためのフィルタ回路を通してＡ／Ｄ変換対象のアナログ信号が入力され、他の入力端子には、ノイズを除去するためのフィルタ回路を通さずにＡ／Ｄ変換対象のアナログ信号が入力され、
前記フィルタ回路を通さずに前記Ａ／Ｄ変換手段に入力されるアナログ信号について、前記データ記憶手段、前記データ検出手段、及び前記処理手段が作動し、
前記フィルタ回路を通して前記Ａ／Ｄ変換手段に入力されるアナログ信号については、少なくとも前記データ検出手段が作動しないようになっていること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項１１】
請求項１０に記載のＡ／Ｄ変換処理装置において、
前記フィルタ回路を通さずに前記Ａ／Ｄ変換手段に入力されるアナログ信号は、前記フィルタ回路を通して前記Ａ／Ｄ変換手段に入力されるアナログ信号と比べて、変化が穏やかな信号であり、
前記フィルタ回路を通して前記Ａ／Ｄ変換手段に入力されるアナログ信号は、瞬時的変化を捕らえる必要がある信号であること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項１２】
請求項１０に記載のＡ／Ｄ変換処理装置において、
前記フィルタ回路を通して前記Ａ／Ｄ変換手段に入力されるアナログ信号は、時間に同期しないタイミングでＡ／Ｄ変換すべき信号であること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項１３】
請求項１０に記載のＡ／Ｄ変換処理装置において、
前記フィルタ回路を通さずに前記Ａ／Ｄ変換手段に入力されるアナログ信号は、前記Ａ／Ｄ変換手段に供給される電源電圧を分圧することで発生する信号であること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項１４】
請求項１〜７、１０〜１３の何れか１項に記載のＡ／Ｄ変換処理装置において、
前記Ａ／Ｄ変換手段がＡ／Ｄ変換を実施する時間間隔と前記ｍとの両方又は一方は、可変値となっており、その可変値が外部から設定可能であること、
を特徴とするＡ／Ｄ変換処理装置。
【請求項１５】
請求項１４に記載のＡ／Ｄ変換処理装置と、前記処理結果記憶手段に格納されたデータを用いて前記制御対象を制御するための制御処理を実行する制御手段と、を備えた電子制御装置であって、
前記制御手段は、動作を開始した際に前記可変値を初期設定すること、
を特徴とする電子制御装置。
【請求項１６】
請求項１５に記載の電子制御装置において、
前記制御手段は、前記可変値を前記制御対象の状態に応じて変更すること、
を特徴とする電子制御装置。
【請求項１７】
請求項１５又は請求項１６に記載の電子制御装置において、
前記制御手段は、前記Ａ／Ｄ変換処理装置から、前記処理結果記憶手段に格納されているデータと共に前記可変値も読み出し、その読み出した可変値が、当該制御手段が設定した値と一致しているか否かを判定すること、
を特徴とする電子制御装置。
【請求項１８】
請求項１７に記載の電子制御装置において、
前記制御手段は、前記Ａ／Ｄ変換処理装置から読み出した前記可変値が、当該制御手段が設定した値と一致していないと判定した場合には、前記Ａ／Ｄ変換処理装置から読み出したデータを破棄すること、
を特徴とする電子制御装置。
【請求項１９】
請求項１〜９に記載のＡ／Ｄ変換処理装置を使用する方法であって、
１つのアナログ信号について、変化が激しい部分のレベルと、その部分以外のバックグラウンドレベルとを測定する場合に、
そのアナログ信号を、ノイズを除去するためのフィルタ回路を通して前記Ａ／Ｄ変換手段に入力させ、
前記バックグラウンドレベルを測定する際には、前記データ記憶手段、前記データ検出手段、及び前記処理手段を作動させ、
前記変化が激しい部分のレベルを測定する際には、少なくとも前記データ検出手段を作動させないようにすること、
を特徴とするＡ／Ｄ変換処理装置の使用方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アナログ信号のＡ／Ｄ変換データからノイズを除去する機能を備えたＡ／Ｄ変換処理装置に関するものである。
【背景技術】
【０００２】
従来より、例えば自動車のエンジンを制御する電子制御装置においては、エンジンの運転状態を検出するための各種センサ類からの信号、すなわち、クランク角センサや車速センサなどからのデジタル信号、及び、吸入空気量センサ、スロットルポジションセンサ、冷却水温センサなどからのアナログ信号を装置内に取り込んで各種演算処理を行い、燃料噴射（空燃比）や点火時期などを制御している。そして、上記アナログ信号は、電子制御装置を構成するマイクロコンピュータなどでは直接扱うことができないため、Ａ／Ｄ変換器によりデジタル信号に変換（Ａ／Ｄ変換）して取り込むようにしている。
【０００３】
また、この種の車載電子制御装置が動作する環境下では、点火系のスパークノイズ、接点類の開閉によるスパークノイズ、パワートランジスタのオン／オフに伴うスイッチングノイズ、モータのブラシから発生するノイズ、スタータ電流、オイルネータの電流などから発生する外部磁界の電磁誘導によるノイズなど、種々の電気的ノイズが発生する。
【０００４】
このため、センサ等から出力されるアナログ信号をＡ／Ｄ変換器でＡ／Ｄ変換してマイクロコンピュータ等に取り込む場合、一般には、Ａ／Ｄ変換器の入力側にコンデンサと抵抗からなるフィルタ回路（ＣＲ回路）を設け、このフィルタ回路でノイズを除去したアナログ信号をＡ／Ｄ変換器でＡ／Ｄ変換する、という方法が採られていた。
【０００５】
しかし、近年、エンジンを制御する電子制御装置などにおいては、機能の増加に伴って、取り込むべきアナログ信号の数が増えている。よって、Ａ／Ｄ変換器の入力側にノイズ除去用のフィルタ回路を設けるノイズ除去方法では、センサ入力回路の構成が大規模化してしまうと共に、コストアップも招いてしまう。
【０００６】
そこで、フィルタ回路を設けること無く、アナログ信号を直接（つまり、フィルタ回路を通さずに）Ａ／Ｄ変換し、デジタル的にノイズを除去する方法として、下記（１）〜（３）のものが考えられている。
【０００７】
（１）特許文献１には、Ａ／Ｄ変換の実施タイミング毎に、前回のＡ／Ｄ変換値と今回のＡ／Ｄ変換値との差を求め、今回求めた差ＤＩＦ１が前回求めた差ＤＩＦ０よりも所定の判定値以上大きくなければ、今回のＡ／Ｄ変換値を今回の入力値として使用し、逆に、今回求めた差ＤＩＦ１が前回求めた差ＤＩＦ０よりも上記判定値以上大きければ、今回のＡ／Ｄ変換値がノイズであると判断して、入力値の更新を行わない（前回の入力値を使用する）ことが記載されている。
【０００８】
（２）特許文献２には、アナログ信号を１回の入力タイミングで得られるデータ群に含まれる異常値が１個以下となるように設定した回数だけ連続してＡ／Ｄ変換すると共に、そのＡ／Ｄ変換で得た複数の各Ａ／Ｄ変換値の相互の差分を求め、その差分が最小となった組のＡ／Ｄ変換値の平均値を今回の入力データ（つまり、制御に使用されるデータ）とすることが記載されている。
【０００９】
（３）特許文献３には、連続してＡ／Ｄ変換された複数個のＡ／Ｄ変換値の各々と、前回決定した入力データとの差を求め、その差が小さかったＡ／Ｄ変換値を今回の入力データとすることが記載されている。
【特許文献１】特開平１１−６２６８９号公報
【特許文献２】特許第２８５２０５９号公報
【特許文献３】特許第２８２８１０６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記（１）〜（３）の技術には、以下に述べる欠点がある。
まず、（１）の技術では、最適な判定値を定めるのが難しい。つまり、判定値を大きくするとノイズを検出できなくなり、逆に判定値を小さくすると、アナログ入力信号の急激な変化をノイズと誤判定してしまう。
【００１１】
次に、（２）の技術では、そもそも、処理対象のＡ／Ｄ変換値（即ち、相互の差分を求める複数のＡ／Ｄ変換値）のなかに存在する異常値を１個以下にしなければならず、ノイズの特性や環境などが異なる様々なアナログ信号に適用することは難しい。
【００１２】
そして、例えば図２０（Ａ）に示すように、処理対象のＡ／Ｄ変換値のなかに異常値が２個以上存在していたならば、ノイズ除去効果が大きく低下してしまう。つまり、図２０（Ａ）は、３つのＡ／Ｄ変換値ＡＤ１〜ＡＤ３毎について処理を行う場合を例示しているが、その図２０（Ａ）におけるＡＤ２とＡＤ３のように、ノイズによって他のＡ／Ｄ変換値よりも突出した異常値が２個あり、その異常値ＡＤ２，ＡＤ３の差が小さい場合には、その両異常値ＡＤ２，ＡＤ３の平均値が、入力データとして制御に使用されてしまう。特に、図２０（Ａ）の例では、ＡＤ１〜ＡＤ３のうち、ノイズによって最大となったＡＤ２の値が、制御に使用される入力データに反映されてしまうため、ノイズの制御に対する影響が大きくなってしまう。
【００１３】
また、（３）の技術では、図２０（Ｂ）に例示するように、前回決定した入力データをＡＤＯＬＤとし、今回処理対象とする複数個のＡ／Ｄ変換値の各々をＡＤＮＥＷ１〜ＡＤＮＥＷ３とすると、この例では、ＡＤＮＥＷ１が今回の入力データとして採用されることとなるが、もし、この例のようにアナログ信号が単調減少（又は単調増加）する状況でノイズが発生し、図２０（Ｃ）の如く、ＡＤＮＥＷ３が突出してＡＤＯＬＤの値に最も近くなった場合には、そのノイズで最大となってしまったＡＤＮＥＷ３を今回の入力データとして決定してしまう。すると、更に、そのノイズの値（＝ＡＤＮＥＷ３）が次回の処理で各Ａ／Ｄ変換値との差を求める基準値になってしまい、ノイズの影響が蓄積されてしまうこととなる。
【００１４】
そこで、本発明は、アナログ信号のＡ／Ｄ変換データからノイズを効果的に除去可能なＡ／Ｄ変換処理装置を提供することを目的としている。
【課題を解決するための手段】
【００１５】
上記目的を達成するためになされた請求項１に記載のＡ／Ｄ変換処理装置では、Ａ／Ｄ変換手段が、制御対象の制御に用いられるアナログ信号をＡ／Ｄ変換して、そのアナログ信号の電圧値を表すデータを順次出力する。また、そのＡ／Ｄ変換手段からの最新のｍ個（ｍは３以上の整数）のデータがデータ記憶手段に記憶される。そして、データ記憶手段内のデータが更新される毎に、データ検出手段が、上記データ記憶手段内のｍ個のデータの中から、それらを大小順に並べた場合に順番が１番目と最終番目との何れでもない特定番目となる特定番目データを検出し、処理手段が、そのデータ検出手段によって検出された特定番目データを、制御対象の制御に使用されるデータとして処理結果記憶手段に格納する。
【００１６】
つまり、請求項１のＡ／Ｄ変換処理装置では、Ａ／Ｄ変換手段から順次出力される最新のｍ（≧３）個のデータの中から、大小順が最大でも最小でもない特定番目のデータを選び、その特定番目データを、制御に使用されるデータとして処理結果記憶手段に格納するようにしている。
【００１７】
このため、処理結果記憶手段には、Ａ／Ｄ変換手段から出力されるデータのうち、ノイズによって値が極端に大きくなったり小さくなったりしたデータが格納されてしまうことがなく、制御対象を制御するための制御処理を実行するマイコンなどの制御装置では、その処理結果記憶手段に毎回格納されるデータを制御処理に使用することにより、ノイズを除去したＡ／Ｄ変換データを使用した制御が可能となる。
【００１８】
そして更に、この請求項１のＡ／Ｄ変換処理装置によれば、上記（１）の技術のように、判定値によってノイズ除去性能が左右されない上に、判定値自体を定める必要がなく、また、上記（２）及び（３）の技術のように、ノイズによって他のＡ／Ｄ変換データよりも一番突出した（最大又は最小となった）データが、制御に使用されるデータに反映されてしまうことが無い。このように、アナログ信号のＡ／Ｄ変換データからノイズを効果的に除去することができる。また、従来のアナログフィルタ回路でも影響を受けるような大きな振幅のノイズがアナログ信号に乗った場合でも、本案によるノイズ除去構成によれば除去することが可能となる。
【００１９】
ところで、請求項１のＡ／Ｄ変換処理装置においては、請求項２に記載の如く、前記ｍを奇数とし、データ検出手段は、特定番目データとして、順番が真中のデータを検出するように構成するのが好ましい。
【００２０】
つまり、例えば、アナログ信号の上側にノイズが乗りやすいといった特別な傾向がある場合には、ｍ個のデータのうち、真中のデータよりも値が小さい方の順番のデータを制御に使用されるデータとして検出するようにしても良いが、そのような特別な傾向がないのであれば、真中のデータを検出するように構成することで、どのような特性のノイズにも対応することができ最も汎用的であるからである。
【００２１】
次に、請求項３に記載のＡ／Ｄ変換処理装置では、請求項１又は２のＡ／Ｄ変換処理装置において、処理手段は、データ検出手段により検出された特定番目データを、そのまま処理結果記憶手段に格納することに代えて、データ検出手段により検出された特定番目データに対して変動を滑らかにする平滑化処理を行い、その処理結果データを、制御に使用されるデータとして処理結果記憶手段に格納するように構成されている。尚、平滑化処理としては、例えば、車載電子制御装置の分野でよく用いられる、なまし処理や移動平均処理（常に最新の所定個数のデータの平均をとる処理）がある。
【００２２】
そして、この請求項３の構成によれば、制御に使用されるデータ（延いては、制御対象の制御）へのノイズの影響を一層低減することができる。つまり、ノイズ除去効果を一層向上させることができる。
【００２３】
一方、請求項４に記載のＡ／Ｄ変換処理装置では、Ａ／Ｄ変換手段が、制御対象の制御に用いられるアナログ信号をＡ／Ｄ変換して、そのアナログ信号の電圧値を表すデータを順次出力する。また、そのＡ／Ｄ変換手段からの最新のｍ個（ｍは４以上の整数）のデータがデータ記憶手段に記憶される。そして、データ記憶手段内のデータが更新される毎に、データ検出手段が、上記データ記憶手段内のｍ個のデータの中から、それらを大小順に並べた場合に順番が１番目と最終番目との何れでもない特定番目となる複数個のデータを検出して、その複数個のデータを平均化した平均値データを算出し、処理手段が、そのデータ検出手段により算出された平均値データを、制御対象の制御に使用されるデータとして処理結果記憶手段に格納する。
【００２４】
つまり、請求項４のＡ／Ｄ変換処理装置では、Ａ／Ｄ変換手段から順次出力される最新のｍ（≧４）個のデータの中から、大小順が最大でも最小でもない複数個のデータを選ぶと共に、その複数個のデータの平均値のデータを、制御に使用されるデータとして処理結果記憶手段に格納するようにしている。
【００２５】
このような請求項４のＡ／Ｄ変換処理装置によっても、処理結果記憶手段には、Ａ／Ｄ変換手段から出力されるデータのうち、ノイズによって値が極端に大きくなったり小さくなったりしたデータが格納されてしまうことがなく、制御対象を制御するための制御処理を実行するマイコンなどの制御装置では、その処理結果記憶手段に毎回格納されるデータを制御処理に使用することにより、ノイズを除去したＡ／Ｄ変換データを使用した制御が可能となる。そして、この請求項４のＡ／Ｄ変換処理装置によっても、請求項１のＡ／Ｄ変換処理装置と同様の効果が得られる。
【００２６】
また、請求項４のＡ／Ｄ変換処理装置においては、請求項５に記載の如く、データ検出手段は、前記特定番目の複数個のデータとして、順番が真中付近のデータを検出するように構成するのが好ましい。請求項２のＡ／Ｄ変換処理装置と同様に、どのような特性のノイズにも対応することができ汎用的であるからである。
【００２７】
尚、請求項５のＡ／Ｄ変換処理装置において、前記ｍを奇数に設定した場合、データ検出手段は、順番が真中であるデータを含む連続した順番の複数個のデータを検出するように構成すれば良い。また、前記ｍを偶数数に設定した場合には、順番が真中のデータは存在しないため、順番が「ｍ／２」と「（ｍ／２）＋１」との両データ、或いは、その両データを含む連続した順番の複数個のデータを検出するように構成すれば良い。
【００２８】
次に、請求項６に記載のＡ／Ｄ変換処理装置では、請求項４又は５のＡ／Ｄ変換処理装置において、処理手段は、データ検出手段により算出された平均値データを、そのまま処理結果記憶手段に格納することに代えて、データ検出手段により算出された平均値データに対して変動を滑らかにする平滑化処理（例えば、前述したなまし処理や移動平均処理）を行い、その処理結果データを、制御に使用されるデータとして処理結果記憶手段に格納するように構成されている。そして、この請求項６の構成によれば、請求項３のＡ／Ｄ変換処理装置と同様に、ノイズ除去効果を一層向上させることができる。
【００２９】
ところで、ノイズとしては、例えばエンジンに対する点火や燃料噴射に起因するものなど、周期性を持つと共に、その発生周期がエンジン回転数に応じて変わるものがある。
このため、Ａ／Ｄ変換手段がアナログ信号を常に正確に一定の間隔でＡ／Ｄ変換するように構成すると、そのＡ／Ｄ変換タイミングとノイズの発生タイミングとが同期してしまう可能性が生じる。
【００３０】
そこで、請求項７に記載のように、Ａ／Ｄ変換手段は、アナログ信号を一定でない間隔毎にＡ／Ｄ変換するように構成すれば、ノイズをＡ／Ｄ変換してしまう可能性を非常に低くすることができ、ノイズ除去効果を向上させることができる。
【００３１】
一方、請求項１〜７のＡ／Ｄ変換処理装置は、制御対象を制御するための制御処理を実行するマイコンやＩＣなどの制御装置と通信可能に構成することができ、その場合、当該Ａ／Ｄ変換処理装置は、処理手段により処理結果記憶手段に格納されている最新のデータを制御装置へ送信するように構成すれば良い。そして、この場合、制御装置は、当該Ａ／Ｄ変換処理装置から受信したデータを、アナログ信号のＡ／Ｄ変換データとして制御処理に使用することとなる。
【００３２】
ここで、この場合、請求項８又は請求項９の構成が考えられる。
まず、請求項８に記載のＡ／Ｄ変換処理装置は、請求項１〜７のＡ／Ｄ変換処理装置において、制御装置と通信するための通信手段を備えると共に、その通信手段以外の前記各手段は、制御装置との通信タイミングとは独立して動作するようになっている。そして、この請求項８のＡ／Ｄ変換処理装置は、通信手段を介した制御装置との通信により、制御装置からデータ要求を受けると、処理手段により処理結果記憶手段に格納されている最新のデータを制御装置へ送信する。
【００３３】
このような請求項８の構成によれば、処理結果記憶手段に格納されるデータが、通信とは独立して更新されることとなり、制御装置に対して、常に最新のデータを提供することができる。つまり、制御装置側から見れば、どんなタイミングでデータ要求を出しても、常に最新のデータを取得することができる。
【００３４】
次に、請求項９に記載のＡ／Ｄ変換処理装置は、請求項１〜７のＡ／Ｄ変換処理装置において、制御装置と一定時間毎に通信するための通信手段を備えると共に、その通信手段以外の前記各手段は、制御装置との次の通信タイミングが到来する所定時間前になると動作を開始するようになっている。そして、この請求項９のＡ／Ｄ変換処理装置は、制御装置との通信タイミングが到来すると、その時点で処理手段により処理結果記憶手段に格納されている最新のデータを、通信手段を介して制御装置へ送信する。
【００３５】
このような請求項９の構成によれば、制御装置との通信タイミングの所定時間前になってから、アナログ信号のＡ／Ｄ変換をはじめ、制御に使用されるデータを処理結果記憶手段に格納するための各動作を行うこととなる。よって、Ａ／Ｄ変換回数を低減することができ、また、本Ａ／Ｄ変換処理装置が動作するための消費電力も低減することができる。
【００３６】
尚、上記所定時間は、次の通信タイミングが到来するまでに、処理結果記憶手段内のデータ（制御に使用されるデータ）を少なくとも１回は更新可能な時間に設定しておけば良い。
【００３７】
次に、請求項１０に記載のＡ／Ｄ変換処理装置では、請求項１〜６のＡ／Ｄ変換処理装置において、Ａ／Ｄ変換手段は、アナログ信号を入力するための入力端子を複数有すると共に、その各入力端子にそれぞれ入力される複数のアナログ信号を択一的に切り替えてＡ／Ｄ変換するように構成されている。更に、その複数の入力端子のうち、何れかの入力端子には、ノイズを除去するためのフィルタ回路を通してＡ／Ｄ変換対象のアナログ信号が入力され、他の入力端子には、ノイズを除去するためのフィルタ回路を通さずにＡ／Ｄ変換対象のアナログ信号が入力されるようになっている。そして、フィルタ回路を通さずにＡ／Ｄ変換手段に入力されるアナログ信号について、前記データ記憶手段、前記データ検出手段、及び前記処理手段が作動し、フィルタ回路を通してＡ／Ｄ変換手段に入力されるアナログ信号については、少なくともデータ検出手段が作動しないようになっている。
【００３８】
このような請求項１０のＡ／Ｄ変換処理装置によれば、１つのＡ／Ｄ変換手段により、Ａ／Ｄ変換対象のアナログ信号の特徴に合わせて、データ検出手段の処理を実施するか否かを選択することができる。
【００３９】
例えば、請求項１１に記載のように、フィルタ回路を通さずにＡ／Ｄ変換手段に入力されるアナログ信号（つまり、データ検出手段の処理を実施するアナログ信号であり、以下、第１種アナログ信号という）としては、フィルタ回路を通してＡ／Ｄ変換手段に入力されるアナログ信号（つまり、データ検出手段の処理を実施しないアナログ信号であり、以下、第２種アナログ信号という）と比べて、変化が穏やかな信号が考えられ、自動車のエンジン制御分野を例にすると、エンジンの冷却水温や油温や吸入空気温度などを検出するセンサからの信号を挙げることができる。そして、第２種アナログ信号としては、瞬時的変化を捕らえる必要のある信号が考えられ、自動車のエンジン制御分野を例にすると、気筒内圧力を検出するセンサからの信号や、空燃比センサからの信号や、ノックセンサからの信号を挙げることができる。
【００４０】
前者の変化が緩やかなアナログ信号については、フィルタ回路を設けなくても、データ検出手段の処理によってノイズを効果的に除去することができるからであり、また逆に、後者の瞬時的変化を捕らえる必要のある信号については、データ検出手段の処理を実施すると、瞬時的変化がノイズとして排除されてしまい、例えば、ｓｉｎ波の如く変化する信号のピーク値を捕らえたい場合に、そのピーク値が排除されて正しく捕らえることができなくなるが、その信号をフィルタ回路を通してＡ／Ｄ変換手段に入力させると共に、データ検出手段の処理を実施しないようにすることで、そのような不都合を回避することができるからである。
【００４１】
このため、請求項１１のＡ／Ｄ変換処理装置によれば、変化が緩やかなアナログ信号については、フィルタ回路が不要なことによる部品点数（素子数）の削減を実現することができ、瞬時的変化を捕らえる必要のあるアナログ信号については、その信号についての検出精度を良好に保つことができる。
【００４２】
また例えば、請求項１２に記載のように、第２種アナログ信号（フィルタ回路を通してＡ／Ｄ変換手段に入力されるアナログ信号）としては、時間に同期しないタイミングでＡ／Ｄ変換すべき信号が考えられる。エンジン制御分野を例にすると、一定のクランク角度毎の信号値を検出しなければならないアナログ信号や、特定のイベントが発生した時の信号値を検出しなければならないアナログ信号を挙げることができる。つまり、そのようなアナログ信号について、データ検出手段の処理を実施すると、時間に非同期のタイミングでのＡ／Ｄ変換値を得ることができないからである。
【００４３】
このため、請求項１２のＡ／Ｄ変換処理装置によれば、時間に非同期にＡ／Ｄ変換するアナログ信号については、その検出精度を確保することができ、他のアナログ信号については、フィルタ回路が不要なことによる部品点数（素子数）の削減を実現することができる。
【００４４】
また、第１種アナログ信号（フィルタ回路を通さずにＡ／Ｄ変換手段に入力されるアナログ信号）としては、請求項１３に記載のように、Ａ／Ｄ変換手段に供給される電源電圧を分圧することで発生する信号が考えられる。
【００４５】
つまり、そのような信号では、フィルタ回路を設けると、電源電圧の変動によってＡ／Ｄ変換値に影響が生じてしまうからである。
具体的に説明すると、まず一般に、Ａ／Ｄ変換手段として用いられるＡ／Ｄ変換器では、それに供給される電源電圧が変動しても、Ａ／Ｄ変換対象の入力電圧が、その電源電圧と同じ比率で変動したならば、その入力電圧に対するＡ／Ｄ変換値は変わらない。また一般に、フィルタ回路では、アナログ信号の入力ラインとグランドラインとの間にコンデンサ（例えば、後述する図１４のコンデンサＣｆ）が接続されるが、そのコンデンサに蓄えられた電荷は急激には変化しない。このため、Ａ／Ｄ変換器により、そのＡ／Ｄ変換器の電源電圧を分圧することで発生する信号をＡ／Ｄ変換する場合、その信号の入力ラインとグランドラインとにフィルタ回路のコンデンサが接続されていると、電源電圧が変動した際に、Ａ／Ｄ変換対象の信号だけがコンデンサの作用によって変動せず、その結果、Ａ／Ｄ変換値が、本来の分圧比に応じた値からずれてしまう。
【００４６】
そこで、このような信号については、フィルタ回路を通さずにＡ／Ｄ変換手段に入力すると共に、データ検出手段の処理を実施してノイズを除去するのである。
そして、この請求項１３の構成によれば、Ａ／Ｄ変換手段（Ａ／Ｄ変換器）の電源電圧が変動しても、それの影響を受けないようにすることができる。
【００４７】
尚、Ａ／Ｄ変換手段に供給される電源電圧を分圧することで発生するＡ／Ｄ変換対象の信号を、フィルタ回路を通さずにＡ／Ｄ変換手段に入力させる、という構成は、請求項１〜９のＡ／Ｄ変換処理装置についても同様に適用することができる。
【００４８】
また、第１種アナログ信号としては、上記の他にも、フィルタ回路の温度特性や経時特性変化の影響を受けたくない信号や、ノイズの大きい信号が考えられる。特に、大きいノイズはフィルタ回路に多少なりとも影響を与えるのに対して、データ検出手段の処理によれば、そのような大きいノイズを除去することができる。
【００４９】
一方、第２種アナログ信号としては、上記の他にも、ノイズが多発する信号が考えられる。そのような信号から、データ検出手段の処理によってノイズを確実に除去するためには、処理に用いるサンプル数（前記ｍ）多くする必要があるからである。
【００５０】
次に、請求項１４に記載のＡ／Ｄ変換処理装置では、請求項１〜７、１０〜１３のＡ／Ｄ変換処理装置において、Ａ／Ｄ変換手段がＡ／Ｄ変換を実施する時間間隔（Ａ／Ｄ変換間隔）と前記ｍとの両方又は一方は、可変値となっており、その可変値が外部から設定可能であることを特徴としている。
【００５１】
このような請求項１４のＡ／Ｄ変換処理装置によれば、Ａ／Ｄ変換間隔と前記ｍとを任意に設定することができるため、制御仕様の異なる様々な電子制御装置に用いることができるようになり、例えば、多種多様な車両の車載電子制御装置に使用可能となる。
【００５２】
そして、このような請求項１４のＡ／Ｄ変換処理装置と、それの処理結果記憶手段に格納されたデータを用いて制御対象を制御するための制御処理を実行する制御手段と、を備えた電子制御装置では、請求項１５に記載のように、制御手段は、動作を開始した際に、前記可変値を初期設定するように構成すれば良い。
【００５３】
また、制御手段は、動作を開始した際の初期設定以外にも、例えば、前記可変値を定期的に再設定するように構成すれば、例えば、ノイズ等の原因によりＡ／Ｄ変換処理装置側で前記可変値の記憶値が変化してしまった場合でも、その値を正しい値に戻すことができる。
【００５４】
また、請求項１６に記載の如く、制御手段は、前記可変値を制御対象の状態に応じて変更するように構成すれば、アナログ信号を制御対象の状態に応じた最適な条件でＡ／Ｄ変換したデータを得ることができ、制御対象の制御精度を向上させることができる。例えば、電子制御装置がエンジンを制御するものであるならば、Ａ／Ｄ変換間隔を、エンジンの回転数に応じて、低回転時よりも高回転時の方が短くなるように設定する、といったことを行うことができる。
【００５５】
次に、請求項１７に記載の電子制御装置では、請求項１５，１６の電子制御装置において、制御手段は、Ａ／Ｄ変換処理装置から、前記処理結果記憶手段に格納されているデータと共に前記可変値も読み出し、その読み出した可変値が、当該制御手段が設定した値と一致しているか否かを判定することを特徴としている。
【００５６】
この電子制御装置によれば、Ａ／Ｄ変換処理装置側で前記可変値が正しく設定できているか否かを制御手段側でチェックすることができる。
そして更に、請求項１８に記載のように、制御手段は、Ａ／Ｄ変換処理装置から読み出した前記可変値が、当該制御手段が設定した値と一致していないと判定した場合には、Ａ／Ｄ変換処理装置から読み出したデータ（処理結果記憶手段に格納されていたデータ）を破棄するように構成すれば、Ａ／Ｄ変換処理装置側で前記可変値が正しく設定できていないことによる制御への悪影響を回避することができ、信頼性を向上させることができる。
【００５７】
ところで、例えば特開平１１−２０１９３５号公報に記載されているように、エンジンを制御する電子制御装置では、空燃比センサに流れる電流を電圧に変換したアナログ信号を、センサ信号としてＡ／Ｄ変換し、そのセンサ信号の値から空燃比を検出するが、その空燃比センサの素子インピーダンスを測定する際には、空燃比センサに印加する電圧を故意に急峻に変化させて、その際に大きく変化するセンサ信号の値を検出し、その値を用いて素子インピーダンスを算出するようにしている。つまり、１つのセンサ信号について、変化が激しい部分のレベルと、その部分以外のバックグラウンドレベルとを測定することとなる。
【００５８】
そこで、請求項１〜９のＡ／Ｄ変換処理装置を用い、１つのアナログ信号について、変化が激しい部分のレベルと、その部分以外のバックグラウンドレベルとを測定する方法として、請求項１９の使用方法が考えられる。
【００５９】
即ち、そのアナログ信号を、ノイズを除去するためのフィルタ回路を通してＡ／Ｄ変換手段に入力させ、そのアナログ信号のバックグラウンドレベルを測定する際には、前記データ記憶手段、前記データ検出手段、及び前記処理手段を作動させ、変化が激しい部分のレベルを測定する際には、少なくとも前記データ検出手段を作動させないようにするのである。
【００６０】
このようなＡ／Ｄ変換処理装置の使用方法によれば、アナログ信号のバックグラウンドレベルについては、データ検出手段の処理によってノイズを効果的に除去することができ、また、変化が激しい部分のレベルについては、フィルタ回路によるノイズ除去のみで、データ検出手段の処理は実施されないため、ノイズとして排除されてしまうことがなく、確実に検出することができる。しかも、このような効果を、１系統の入力のみで実現することができる。
【００６１】
一方、請求項１０のＡ／Ｄ変換処理装置のように、Ａ／Ｄ変換手段が、アナログ信号を入力するための入力端子を複数有すると共に、その各入力端子にそれぞれ入力される複数のアナログ信号を択一的に切り替えてＡ／Ｄ変換するように構成されいてる場合には、２つの入力端子を用いることもできる。
【００６２】
つまり、まず、変化が激しい部分とバックグラウンドレベルとの両方を測定すべきアナログ信号を、１つの入力端子Ｔａには、フィルタ回路を通さずに入力させ、他の１つの入力端子Ｔｂには、フィルタ回路を通して入力させる。そして、入力端子Ｔａから入力される信号については、前記データ記憶手段、前記データ検出手段、及び前記処理手段が作動するようにし、入力端子Ｔｂから入力される信号については、データ検出手段を作動させることなく、その信号の変化が激しくなるタイミングで、Ａ／Ｄ変換手段にＡ／Ｄ変換させれば良い。そして、このような手法によっても、２系統の入力を使用するものの、アナログ信号のバックグラウンドレベルと変化が激しい部分のレベル（瞬時的変化）との両方を、ノイズの影響を回避しつつ測定することができる。
【００６３】
尚、変化が激しい部分とバックグラウンドレベルとの両方を測定すべきアナログ信号としては、空燃比センサの信号に限らず、例えば、エンジンの気筒内圧力を検出するセンサからの信号などがある。
【発明を実施するための最良の形態】
【００６４】
以下に、本発明が適用された実施形態の電子制御装置について説明する。尚、本実施形態の電子制御装置は、自動車のエンジンを制御するものである。
まず図１に示すように、本実施形態の電子制御装置（以下、ＥＣＵという）１は、エンジンを制御するための制御処理を実行するマイコン３と、エンジンの運転状態を検出するための各種センサからの複数（この例では６つ）のアナログ信号をＡ／Ｄ変換してマイコン３に取り込ませるための入力ＩＣ５とを備えている。
【００６５】
そして、入力ＩＣ５には、Ａ／Ｄ変換器７と、上記６つのアナログ信号を択一的にＡ／Ｄ変換器７へ入力させるマルチプレクサ（ＭＰＸ）９と、マイコン３とシリアル通信するための通信部１１と、Ａ／Ｄ変換器７及びマルチプレクサ９を制御すると共に、Ａ／Ｄ変換器７によるＡ／Ｄ変換値（即ち、Ａ／Ｄ変換されたデータ）を処理し、更に、その処理結果をマイコン３へ通信部１１を介して送信する処理部１３とが備えられている。
【００６６】
また、処理部１３には、ＲＡＭ１５が備えられている。そして、そのＲＡＭ１５には、Ａ／Ｄ変換対象のアナログ信号毎について、Ａ／Ｄ変換器７によるＡ／Ｄ変換値が最新のものから複数個格納される領域（以下、Ａ／Ｄ変換結果格納用ＲＡＭという）１５ａと、そのＡ／Ｄ変換結果格納用ＲＡＭ１５ａに格納されている複数個のＡ／Ｄ変換値を大小順に並べ替えるソート処理に使用される領域（以下、ソート処理用ＲＡＭという）１５ｂと、マイコン３へ出力されるＡ／Ｄ変換の処理結果が格納される領域（以下、処理結果用ＲＡＭという）１５ｃとが、設けられている。
【００６７】
ここで、Ａ／Ｄ変換対象のアナログ信号を出力するセンサとしては、吸入空気量センサ、スロットルポジションセンサ、冷却水温センサなどであり、それらのセンサを大別すると、例えば、一端が接地電位（グランド＝０Ｖ）に接続されると共に、検出対象の物理量に応じて抵抗値が変化するタイプのセンサＳＮａと、検出対象の物理量に応じて出力電圧が変化するタイプのセンサＳＮｂとがある。
【００６８】
そして、前者のタイプのセンサＳＮａについては、接地電位側とは反対側の端子がＥＣＵ１に接続されると共に、その端子の信号ラインが、ＥＣＵ１内にて、抵抗Ｒｕにより電源電圧ＶＤにプルアップされている。更に、そのセンサＳＮａの信号ラインは、入力ＩＣ５内にて、電源電圧ＶＤにカソードが接続されたサージ吸収用ダイオードＤｕのアノードに接続された上で、マルチプレクサ９の入力バッファ９ａに接続されている。尚、抵抗Ｒｕは、センサＳＮａの抵抗値との分圧により、検出対象の物理量に応じたアナログ信号を発生させるためのものである。一方、電源電圧ＶＤは、マイコン３や入力ＩＣ５（その中のマルチプレクサ９、Ａ／Ｄ変換器７、通信部１１、及び処理部１３）など、ＥＣＵ１内の各部に電源として供給される電圧である。
【００６９】
また、後者のタイプのセンサＳＮｂについては、そのセンサＳＮｂの信号出力端子がＥＣＵ１に接続されると共に、その信号出力端子の信号ラインが、ＥＣＵ１内にて、抵抗Ｒｄにより接地電位にプルダウンされている。更に、そのセンサＳＮｂの信号ラインは、入力ＩＣ５内にて、接地電位にアノードが接続されたサージ吸収用ダイオードＤｄのカソードに接続された上で、マルチプレクサ９の入力バッファ９ａに接続されている。尚、抵抗Ｒｄは、センサＳＮｂの信号出力端子からＥＣＵ１への配線が断線した場合の入力レベルをローレベルに固定するためのものであり、その抵抗値は、通常動作に影響が生じないように、非常に大きい値（例えば数百ＫΩ）に設定されている。
【００７０】
一方、図示は省略しているが、ＥＣＵ１のマイコン３には、クランク角センサや車速センサなどからのデジタル信号も入力されるようになっており、マイコン３は、そのデジタル信号と入力ＩＣ５から取得する上記各アナログ信号のＡ／Ｄ変換値とに基づいて各種制御処理を行い、エンジンに対する燃料噴射や点火時期などを制御している。
【００７１】
尚、本実施形態のＥＣＵ１では、後述するようにＡ／Ｄ変換対象のアナログ信号からデジタル的にノイズ除去するため、入力ＩＣ５への信号入力側にノイズ除去用のフィルタ回路（ＣＲ回路）は設けていない。
【００７２】
次に、入力ＩＣ５の動作概要について説明する。尚、本実施形態では、一定時間毎に、マルチプレクサ９を切替制御して、６つのアナログ信号を所定の順番でＡ／Ｄ変換器７に入力させてＡ／Ｄ変換しているが、ここでは、簡略化のために１つのアナログ信号について説明する。
【００７３】
図２に示すように、入力ＩＣ５では、一定時間毎（この図２の例では５００μｓ毎）に、アナログ信号をＡ／Ｄ変換器７によりＡ／Ｄ変換すると共に、最新の奇数個（この図２の例では３個）のＡ／Ｄ変換値の中から、大小順が真中のＡ／Ｄ変換値（ＡＤ値３個の中心値）を検出し、更に、その検出した真中のＡ／Ｄ変換値に対してなまし処理を行って、そのなまし処理結果の値であるなまし値を、エンジン制御に使用されるデータとして、処理結果用ＲＡＭ１５ｃに格納するようになっている。そして、処理結果用ＲＡＭ１５ｃに格納されたデータは、通信部１１を介してマイコン３に送信される。尚、図２において、黒丸印（●）は、アナログ信号をＡ／Ｄ変換した生のＡ／Ｄ変換値を示している。
【００７４】
このため、例えば、図２において、点線の枠Ｗ１内に示すように、今回のＡ／Ｄ変換値がＡＤ２であるタイミングでは、「ＡＤ０＜ＡＤ１＜ＡＤ２」の関係となるため、前回のＡ／Ｄ変換値ＡＤ１が、今回の真中のＡ／Ｄ変換値として検出され、一点鎖線の枠Ｗ２内に示すように、今回のＡ／Ｄ変換値がＡＤ３であるタイミングでは、「ＡＤ１＜ＡＤ３＜ＡＤ２」の関係となるため、今回のＡ／Ｄ変換値ＡＤ３が、今回の真中のＡ／Ｄ変換値として検出され、点線の枠Ｗ３内に示すように、今回のＡ／Ｄ変換値がＡＤ４であるタイミングでは、「ＡＤ３＜ＡＤ４＜ＡＤ２」の関係となるため、今回のＡ／Ｄ変換値ＡＤ４が、今回の真中のＡ／Ｄ変換値として検出されることとなる。そして、このような手順で検出された真中のＡ／Ｄ変換値に対してなまし処理が行われ、その処理結果データ（なまし値）が、マイコン３にてエンジン制御に用いられることとなる。
【００７５】
尚、図２の例では、なまし処理が、いわゆる１／２なまし処理であり、その計算式は、下記の式１である。
「今回のなまし値＝（前回のなまし値＋今回の真中のＡ／Ｄ変換値）／２」…式１
また、図２の３段目（「ＡＤ値３個の中心値」の段）と４段目（「なまし値」の段）との各々に示している黒丸印のＡ／Ｄ変換値は、図２の２段目（「アナログ信号」の段）に示した黒丸印のＡ／Ｄ変換値を、それぞれ１回のＡ／Ｄ変換周期分だけ遅らせて記載している。その理由は、アナログ信号は単純増加又は単純減少している状態が多いと考えられ、１回前のＡ／Ｄ変換値が今回の真中のＡ／Ｄ変換値になる可能性が高いためである。
【００７６】
このような入力ＩＣ５の動作によれば、例えば図３に示すように、Ａ／Ｄ変換タイミング毎の生のＡ／Ｄ変換値（ＡＤ値）をそのまま１／２なまし処理して、その処理結果の値をマイコン３で使用する場合と比べると、ノイズの影響を大幅に抑制できることが分かる。つまり、図３のように、点火信号や噴射信号などのパワー系駆動信号のオン／オフによってＡ／Ｄ変換対象のアナログ信号にノイズが乗り、しかも、そのノイズのタイミングでＡ／Ｄ変換をしてしまうと、たとえ１／２なまし処理を行っても、そのなまし値は本来の値から大きくずれてしまうが、図２に示した入力ＩＣ５の動作によれば、そのようなノイズの影響を回避することができる。尚、図３においても、黒丸印（●）は、アナログ信号をＡ／Ｄ変換した生のＡ／Ｄ変換値を示している。また、図３の３段目（「ＡＤ値」の段）と４段目（「なまし値」の段）における点線は、アナログ信号にノイズが乗っていなかった場合の値を示している。
【００７７】
ところで、上記図２の例では、最新の３つのＡ／Ｄ変換値の中から大小順が真中のＡ／Ｄ変換値を選択するものであったが、真中のＡ／Ｄ変換値を、５個や７個といった具合に、より多くのＡ／Ｄ変換値から求めるようにしたり、なまし処理を１／４なまし、１／８なましといった具合に、分母がより大きいものにする方が、ノイズに強くなる。
【００７８】
尚、１／Ｎなまし処理の計算式は、下記の式２である。
「今回のなまし値＝（（Ｎ−１）×前回のなまし値＋今回の真中のＡ／Ｄ変換値）／Ｎ」…式２
次に、入力ＩＣ５の詳細な動作について、図４及び図５を用い説明する。尚、図４は、入力ＩＣ５の処理部１３がＡ／Ｄ変換タイミング毎に実行する処理の内容を表すフローチャートであり、図５は、その処理の作用を説明する説明図である。
【００７９】
入力ＩＣ５の処理部１３は、一定時間毎のＡ／Ｄ変換タイミングになると、マルチプレクサ９を切替制御して、６つのアナログ信号を所定の順番でＡ／Ｄ変換器７へ択一的に入力させることにより、その各アナログ信号をＡ／Ｄ変換器７に順次Ａ／Ｄ変換させるが、各アナログ信号をＡ／Ｄ変換させる毎に、図４の処理を実行する。尚、以下、ここでも簡略化のために、１つのアナログ信号について説明する。
【００８０】
そして、処理部１３が図４の処理を開始すると、まずＳ１１０にて、今回のＡ／Ｄ変換値をＡＤＮＥＷとして記憶する。
次に、Ｓ１２０にて、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａの「ｎ＋１」個（但し、ｎは２以上の偶数）のアドレスＡＤＲＡＭ０〜ＡＤＲＡＭｎのうち、一番古いＡ／Ｄ変換値が格納されているアドレスに、ＡＤＮＥＷ（即ち、今回のＡ／Ｄ変換値）を書き込む。
【００８１】
次のＳ１３０では、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａの各アドレスＡＤＲＡＭ０〜ＡＤＲＡＭｎのデータを、ソート処理用ＲＡＭ１５ｂの「ｎ＋１」個の各アドレスＳＴＲＡＭ０〜ＳＴＲＡＭｎへそれぞれコピーする。そして更に、そのソート処理用ＲＡＭ１５ｂの各アドレスＳＴＲＡＭ０〜ＳＴＲＡＭｎに対して、アドレスＳＴＲＡＭｎのデータを最小にする降順のバブルソート処理を、「ｎ＋１」個のデータのうちで大小順が真中であるデータが真中のアドレスＳＴＲＡＭ（ｎ／２）に格納される状態となるまで（つまり、「ｎ／２＋１」回）実行する。
【００８２】
次に、Ｓ１４０にて、ソート処理用ＲＡＭ１５ｂの真中のアドレスＳＴＲＡＭ（ｎ／２）に格納されているデータを、今回の真中のＡ／Ｄ変換値（中心値）として読み出し、続くＳ１５０にて、その読み出された真中のＡ／Ｄ変換値に対して、前述したなまし処理を実行する。
【００８３】
そして、続くＳ１６０にて、上記Ｓ１５０でのなまし処理の結果（なまし値）を、エンジンの制御に使用されるデータとして処理結果用ＲＡＭ１５ｃに格納し、当該図４の処理を終了する。
【００８４】
ここで、ｎ＝４であるとし（つまり、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａには最新の５個のＡ／Ｄ変換値が格納され、その５個の中から大小順が真中のＡ／Ｄ変換値を検出するものとし）、また、図５（Ａ）における点線の枠Ｗ４内に示すＡＤ１〜ＡＤ５までの５個のＡ／Ｄ変換値がＡ／Ｄ変換結果格納用ＲＡＭ１５ａに格納されている状態で、次のＡ／Ｄ変換タイミングが到来し、図５（Ａ）における一点鎖線の枠Ｗ５内に示すように今回のＡ／Ｄ変換値がＡＤ６であったとする。尚、図５におけるＡＤ１〜ＡＤ６の大小順は、「ＡＤ４＞ＡＤ３＞ＡＤ１＞ＡＤ５＞ＡＤ６＞ＡＤ２」である。
【００８５】
この場合、図４のＳ１２０では、図５（Ｂ）に示すように、その時点でＡＤ１〜ＡＤ５が格納されているＡ／Ｄ変換結果格納用ＲＡＭ１５ａのアドレスＡＤＲＡＭ０〜ＡＤＲＡＭ４のうち、一番古いＡＤ１が格納されていたアドレスＡＤＲＡＭ１に、今回のＡ／Ｄ変換値であるＡＤ６を上書きすることとなる。
【００８６】
そして、この例の場合には、図４のＳ１３０により、ソート処理用ＲＡＭ１５ｂに、先頭のアドレスＳＴＲＡＭ０から順に、「ＡＤ５，ＡＤ６，ＡＤ２，ＡＤ３，ＡＤ４」がそれぞれコピーされ、更に、そのソート処理用ＲＡＭ１５ｂの各アドレスＳＴＲＡＭ０〜ＳＴＲＡＭ４に対して降順のバブルソート処理が３回実行される。すると、ソート処理用ＲＡＭ１５ｂは、図５（Ｃ）に示すように、各アドレスＳＴＲＡＭ０〜ＳＴＲＡＭ４に「ＡＤ３，ＡＤ４，ＡＤ５，ＡＤ６，ＡＤ２」がそれぞれ格納された状態となる。
【００８７】
つまり、ソート処理用ＲＡＭ１５ｂは、１回目のバブルソート処理により、各アドレスＳＴＲＡＭ０〜ＳＴＲＡＭ４に「ＡＤ５，ＡＤ６，ＡＤ３，ＡＤ４，ＡＤ２」が格納された状態となり、この状態で、最も小さいＡ／Ｄ変換値（＝ＡＤ２）が決定（確定）される。そして、２回目のバブルソート処理により、各アドレスＳＴＲＡＭ０〜ＳＴＲＡＭ４に「ＡＤ５，ＡＤ３，ＡＤ４，ＡＤ６，ＡＤ２」が格納された状態となり、この状態で、２番目に小さいＡ／Ｄ変換値（＝ＡＤ６）が決定される。そして更に、３回目のバブルソート処理により、各アドレスＳＴＲＡＭ０〜ＳＴＲＡＭ４に「ＡＤ３，ＡＤ４，ＡＤ５，ＡＤ６，ＡＤ２」が格納された状態となり、この状態で、３番目に小さいＡ／Ｄ変換値、即ち、真中のＡ／Ｄ変換値（＝ＡＤ５）が決定される。このため、真中のＡ／Ｄ変換値が決定されるまでには、２つの値同士の大小比較と順番入替の処理が、最大で９回（＝４＋３＋２）行われることとなる。尚、もしｎ＝６ならば、最大で１８回（＝６＋５＋４＋３）となる。
【００８８】
そして、この例の場合には、図４のＳ１４０にて、ソート処理用ＲＡＭ１５ｂの真中のアドレスＳＴＲＡＭ２に格納されているＡＤ５が、今回の真中のＡ／Ｄ変換値（即ち、ＡＤ２〜ＡＤ６のうちの真中のＡ／Ｄ変換値）として読み出され、図４のＳ１５０にて、そのＡＤ５を今回の真中のＡ／Ｄ変換値として、なまし処理が実行されることとなる。そして更に、図４のＳ１６０にて、そのなまし処理の結果が処理結果用ＲＡＭ１５ｃに更新して格納される。
【００８９】
また、本実施形態のＥＣＵ１では、図６に示すように、マイコン３が、一定時間毎（例えば４ｍｓ毎）に入力ＩＣ５と通信して、その入力ＩＣ５にデータ要求を出すようになっている。そして、入力ＩＣ５では、Ａ／Ｄ変換器７，マルチプレクサ９，及び処理部１３が、マイコン３との通信タイミングとは独立して動作すると共に、処理部１３は、通信部１１を介してマイコン３からのデータ要求を受けると、その時点で処理結果用ＲＡＭ１５ｃに格納されている最新のデータ（つまり、最新のなまし値）を、通信部１１からマイコン３へ送信するようになっている。よって、マイコン３には、常に最新のデータが提供されることとなる。つまり、マイコン３側から見れば、どんなタイミングでデータ要求を出しても、常に最新のデータを取得することができる。尚、図６では、Ａ／Ｄ変換タイミングが２５０μｓ毎に到来するものとして表されている。
【００９０】
以上のように、本第１実施形態のＥＣＵ１に設けられた入力ＩＣ５では、エンジンの制御に用いられるアナログ信号をＡ／Ｄ変換器７により一定時間毎にＡ／Ｄ変換すると共に、そのＡ／Ｄ変換器７からの最新の「ｎ＋１」個（奇数個）のＡ／Ｄ変換値をＡ／Ｄ変換結果格納用ＲＡＭ１５ａに記憶するようにしている（Ｓ１１０，Ｓ１２０）。
【００９１】
そして、そのＡ／Ｄ変換結果格納用ＲＡＭ１５ａ内のＡ／Ｄ変換値が更新されるＡ／Ｄ変換タイミング毎に、そのＡ／Ｄ変換結果格納用ＲＡＭ１５ａ内の「ｎ＋１」個のＡ／Ｄ変換値の中から、それらを大小順に並べた場合に順番が真中となるＡ／Ｄ変換値を、ソート処理によって検出し（Ｓ１３０，Ｓ１４０）、更に、その検出した真中のＡ／Ｄ変換値に対して、変動を滑らかにするなまし処理を行い（Ｓ１５０）、そのなまし処理の結果データであるなまし値を、エンジンの制御に使用されるデータとして処理結果用ＲＡＭ１５ｃに更新記憶し（Ｓ１６０）、マイコン３からのデータ要求に応じて、その処理結果用ＲＡＭ１５ｃ内の最新のなまし値をマイコン３へ送信するようにしている。
【００９２】
このような本第１実施形態の入力ＩＣ５によれば、処理結果用ＲＡＭ１５ｃには、Ａ／Ｄ変換器７から出力されるデータ（即ち、アナログ信号のＡ／Ｄ変換値）のうち、ノイズによって値が極端に大きくなったり小さくなったりしたデータに基づくなまし値が格納されてしまうことがない。つまり、ノイズによって他のＡ／Ｄ変換値よりも突出したＡ／Ｄ変換値が、エンジンの制御に使用されてしまうことが無い。よって、アナログ信号をＡ／Ｄ変換したデータからノイズを効果的に除去して、エンジン制御へのノイズの影響を抑えることができる。また、ノイズか否かを判定するための判定値を定める必要もない。
【００９３】
特に、本第１実施形態の入力ＩＣ５では、最新の奇数個のＡ／Ｄ変換値の中から、大小順が真中のＡ／Ｄ変換値を特定番目データとして選択するようにしているため、どのような特性のノイズにも対応することができる。
【００９４】
尚、上記第１実施形態では、Ａ／Ｄ変換器７及びマルチプレクサ９がＡ／Ｄ変換手段に相当し、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａがデータ記憶手段に相当し、処理部１３で実行される図４のＳ１３０とＳ１４０の処理が請求項１〜３のデータ検出手段に相当し、処理部１３で実行される図４のＳ１５０とＳ１６０の処理が請求項３の処理手段に相当し、処理結果用ＲＡＭ１５ｃが処理結果記憶手段に相当している。また、通信部１１が通信手段に相当している。
【００９５】
次に、遅れなどについて検証する。
まず、上記第１実施形態の入力ＩＣ５において、Ａ／Ｄ変換タイミングが２５０μｓ毎であり、上記ｎが４である（即ち、最新の５個のＡ／Ｄ変換値の中から大小順が真中のＡ／Ｄ変換値を検出する）ものとする。
【００９６】
この場合、図７（Ａ）に示すように、Ａ／Ｄ変換対象のアナログ信号（以下、入力信号ともいう）に変動が少ない状況では、最大で１ｍｓ（＝２５０μｓ×４）の遅れが生じる。つまり、真中のＡ／Ｄ変換値として検出されるのが、最長で１ｍｓ前のＡ／Ｄ変換値となる。しかし、もともと入力信号の変動が少ないため、そのような遅れが制御に影響することはない。
【００９７】
また、図７（Ｂ）に示すように、入力信号の変動が大きく且つゆっくりなものである状況では、５個のＡ／Ｄ変換値のうち、時系列で３番目のＡ／Ｄ変換値が、真中のＡ／Ｄ変換値として検出される可能性が高い。よって、図７（Ｂ）のような状況では、遅れが０．５ｍｓとなる（真中のＡ／Ｄ変換値として検出されるのが、０．５ｍｓ前のＡ／Ｄ変換値となる）。そして、その真中のＡ／Ｄ変換値に対して、例えば１／４なまし処理を実施したとすると、その１／４なまし処理での遅れは、インパルス応答の場合の時定数換算で約０．７ｍｓであるため、遅れ時間合計としては約１．２ｍｓ（＝０．５ｍｓ＋０．７ｍｓ）程度である。
【００９８】
ここで、コンデンサと抵抗からなる従来のアナログフィルタ回路（ＣＲ回路）の場合、その時定数τは、標準値で約１ｍｓ（例えば、コンデンサの容量が０．１μＦで、抵抗の抵抗値が１０ｋΩ）に設定されるのが一般的であり、コンデンサ及び抵抗の定数公差や温度特性をも加味すると、１ｍｓ±０．３ｍｓ程度となる。
【００９９】
よって、上記１．２ｍｓという遅れは、アナログフィルタ回路の時定数τとほぼ同等であり、図７（Ｂ）のような状況でも、遅れが問題となることはない。しかも、図６に示したように、入力ＩＣ５からマイコン３へは、４ｍｓ毎の通信によってデータが送信されるため、１ｍｓ程度の遅れは全く問題がない。
【０１００】
また、図８に示すように、入力信号の変動が大きく急激に振動するような状況では、枠Ｗ６内の５個のＡ／Ｄ変換値ＡＤ１〜ＡＤ５についてはＡＤ１が真中のＡ／Ｄ変換値として選択され、次の枠Ｗ７内の５個のＡ／Ｄ変換値ＡＤ２〜ＡＤ６についてはＡＤ５が真中のＡ／Ｄ変換値として選択され、次の枠Ｗ８内の５個のＡ／Ｄ変換値ＡＤ３〜ＡＤ７についてはＡＤ３が真中のＡ／Ｄ変換値として選択される、といった具合に、振動する入力信号の振幅の中心付近のＡ／Ｄ変換値を選択して取ることとなる。よって、大きなフィルタ効果を得ることができる。
【０１０１】
尚、アナログフィルタ回路における時定数の変更のようなことは、真中のＡ／Ｄ変換値を求める対象のＡ／Ｄ変換値の総数（３個，５個，７個・・・）や、Ａ／Ｄ変換間隔や、１／Ｎなまし処理のＮの値などによって、同様に行うことができる。
【０１０２】
次に、第２実施形態のＥＣＵについて説明する。尚、第２実施形態のＥＣＵは、第１実施形態のＥＣＵ１とハードウェア面は同じである。このため、以下の第２実施形態に関する説明では、第１実施形態と異なる点を中心に説明すると共に、第１実施形態と同じ物については、同一の符号を使用する。また、このことは、後述する他の実施形態や変形例についても同様である。また更に、本第２実施形態では、アナログ信号のＡ／Ｄ変換タイミングが２５０μｓ毎であると共に、前述のｎが４である（即ち、最新の５個のＡ／Ｄ変換値の中から大小順が真中のＡ／Ｄ変換値を検出する）ものとする。
【０１０３】
図９に示すように、第２実施形態のＥＣＵ１では、入力ＩＣ５とマイコン３とが一定時間毎（この例では４ｍｓ毎）に通信すると共に、入力ＩＣ５では、Ａ／Ｄ変換器７，マルチプレクサ９，及び処理部１３が、４ｍｓ毎の通信開始タイミングから２．５ｍｓが経過すると（換言すれば、次の通信開始タイミングが到来する１．５ｍｓ前になると）動作を開始するようになっている。
【０１０４】
つまり、入力ＩＣ５では、次の通信開始タイミングが到来する１．５ｍｓ前になると、アナログ信号の２５０μｓ毎のＡ／Ｄ変換を開始し、図４のＳ１１０及びＳ１２０の処理により、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａに最新の５個のＡ／Ｄ変換値を格納できた時点で、図４のＳ１３０〜Ｓ１６０の処理により、大小順が真中のＡ／Ｄ変換値の検出と、なまし処理とを実施して、そのなまし処理の結果データを処理結果用ＲＡＭ１５ｃに格納するようになっている。
【０１０５】
そして、入力ＩＣ５の処理部１３は、マイコン３との通信開始タイミングが到来すると、その時点で処理結果用ＲＡＭ１５ｃに格納されている最新のデータ（なまし値）を、通信部１１からマイコン３へ送信するようになっている。尚、この例の場合、次の通信開始タイミングが到来する約０．５ｍｓ前には、処理結果用ＲＡＭ１５ｃに最新のデータを格納しておくことができる。
【０１０６】
このような第２実施形態の入力ＩＣ５によれば、マイコン３との通信開始タイミングの１．５ｍｓ前になってから、アナログ信号のＡ／Ｄ変換をはじめ、制御に使用されるデータを処理結果用ＲＡＭ１５ｃに格納するための各動作を行うこととなるため、Ａ／Ｄ変換回数を低減することができ、また、当該入力ＩＣ５が動作するための消費電力も低減することができる。
【０１０７】
尚、Ａ／Ｄ変換を開始するタイミングは、入力ＩＣ５側で算出しても良いし、また、マイコン３から入力ＩＣ５へ、Ａ／Ｄ変換の開始を指示するタイミング信号を送るようにしても良い。
【０１０８】
次に、第３実施形態のＥＣＵについて説明する。
第３実施形態のＥＣＵ１では、第１実施形態のＥＣＵ１と比較すると、入力ＩＣ５の処理部１３にソート処理用ＲＡＭ１５ｂが設けられておらず、また、入力ＩＣ５の処理部１３は、Ａ／Ｄ変換器７にアナログ信号をＡ／Ｄ変換させる毎に、図４の処理に代えて、図１０の処理を実行するようになっている。
【０１０９】
但し、本第３実施形態の入力ＩＣ５では、ＥＣＵ１に電源が供給されて動作を開始すると、アナログ信号のＡ／Ｄ変換を「ｎ＋１」回（但し、ｎは２以上の偶数）実施するまでは、処理部１３が、図１０の処理を実行せずに、各Ａ／Ｄ変換タイミングでのＡ／Ｄ変換値をＡ／Ｄ変換結果格納用ＲＡＭ１５ａの各アドレスＡＤＲＡＭ０〜ＡＤＲＡＭｎに順次格納していき、「ｎ＋１」個のＡ／Ｄ変換値を格納できた時点で、そのＡ／Ｄ変換結果格納用ＲＡＭ１５ａの各アドレスＡＤＲＡＭ０〜ＡＤＲＡＭｎ内のＡ／Ｄ変換値を、ＡＤＲＡＭ０のデータが最大でＡＤＲＡＭｎのデータが最小となるように降順に並べ替え、その並べ替えが完了した次のＡ／Ｄ変換タイミングから、図１０の処理を実行するようになっている。
【０１１０】
そして、処理部１３が図１０の処理を開始すると、まずＳ２１０にて、今回のＡ／Ｄ変換値をＡＤＮＥＷとして記憶する。
次に、Ｓ２２０にて、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａのアドレスＡＤＲＡＭ０〜ＡＤＲＡＭｎのうち、一番古いＡ／Ｄ変換値が格納されているアドレスを探し、そのアドレスよりも小さい番号のアドレスの各データを、元のアドレスよりも番号が１つ大きいアドレスに移動させ、その上で、最も番号の小さいＡＤＲＡＭ０にＡＤＮＥＷ（即ち、今回のＡ／Ｄ変換値）を書き込む。
【０１１１】
そして、次のＳ２３０では、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａの各アドレスＡＤＲＡＭ０〜ＡＤＲＡＭｎに対して、アドレスＡＤＲＡＭｎのデータを最小にする降順のバブルソート処理を１回実行する。
【０１１２】
次に、Ｓ２４０では、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａの真中のアドレスＡＤＲＡＭ（ｎ／２）に格納されているデータを、今回の真中のＡ／Ｄ変換値（中心値）として読み出し、続くＳ２５０にて、その読み出した真中のＡ／Ｄ変換値に対して、前述したなまし処理を実行する。
【０１１３】
そして、続くＳ２６０にて、上記Ｓ２５０でのなまし処理の結果（なまし値）を、エンジンの制御に使用されるデータとして処理結果用ＲＡＭ１５ｃに格納し、当該図１０の処理を終了する。
【０１１４】
ここで、ｎ＝４であるとし、また、図１１（Ａ）における点線の枠Ｗ９内に示すＡＤ１〜ＡＤ５までの５個のＡ／Ｄ変換値がＡ／Ｄ変換結果格納用ＲＡＭ１５ａに格納されている状態で、次のＡ／Ｄ変換タイミングが到来し、図１１（Ａ）における一点鎖線の枠Ｗ１０内に示すように今回のＡ／Ｄ変換値がＡＤ６であったとする。尚、図１１におけるＡＤ１〜ＡＤ６の大小順は、前述した図５（Ａ）の例と同様に、「ＡＤ４＞ＡＤ３＞ＡＤ１＞ＡＤ５＞ＡＤ６＞ＡＤ２」である。
【０１１５】
この場合、図１０のＳ２２０では、図１１（Ｂ）に示すように、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａのアドレスＡＤＲＡＭ０〜ＡＤＲＡＭｎのうち、一番古いＡＤ１が格納されていたＡＤＲＡＭ２よりも小さい番号のアドレスであるＡＤＲＡＭ０，ＡＤＲＡＭ１の各データＡＤ４，ＡＤ３を、元のアドレスよりも番号が１つ大きいＡＤＲＡＭ１とＡＤＲＡＭ２とにそれぞれ移動させ、その上で、ＡＤＲＡＭ０に、今回のＡ／Ｄ変換値であるＡＤ６を上書きすることとなる。
【０１１６】
そして、この例の場合、図１０のＳ２３０では、先頭のアドレスＡＤＲＡＭ０から順に「ＡＤ６，ＡＤ４，ＡＤ３，ＡＤ５，ＡＤ２」がそれぞれ格納されたＡ／Ｄ変換結果格納用ＲＡＭ１５ａに対して、降順のバブルソート処理を１回実行することとなる。
【０１１７】
すると、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａは、図１１（Ｃ）に示すように、各アドレスＡＤＲＡＭ０〜ＡＤＲＡＭ４に「ＡＤ４，ＡＤ３，ＡＤ５，ＡＤ６，ＡＤ２」がそれぞれ格納された状態となる。
【０１１８】
そして、この例の場合には、図１０のＳ２４０にて、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａの真中のアドレスＡＤＲＡＭ２に格納されているＡＤ５が、今回の真中のＡ／Ｄ変換値（即ち、ＡＤ２〜ＡＤ６のうちの真中のＡ／Ｄ変換値）として読み出され、図１０のＳ２５０にて、そのＡＤ５を今回の真中のＡ／Ｄ変換値として、なまし処理が実行されることとなる。そして更に、図１０のＳ２６０にて、そのなまし処理の結果が処理結果用ＲＡＭ１５ｃに更新して格納される。
【０１１９】
以上のような第３実施形態によれば、図１０のＳ２２０で、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａ内のＡ／Ｄ変換値の格納順番を詰める処理を行う必要があるものの、図１０のＳ２３０におけるソート処理で行うべき２つの値同士の大小比較と順番入替の回数を少なくすることができる。
【０１２０】
例えば、ｎ＝４の場合、前述したように図４のＳ１３０では、真中のＡ／Ｄ変換値が決定されるまでに、２つの値同士の大小比較と順番入替の処理を、最大で９回行う必要があるが、図１０のＳ２３０では、最大４回で済む。つまり、大小比較と順番入替の処理は、最大ｎ回で済む。
【０１２１】
尚、本第３実施形態では、図１０のＳ２３０とＳ２４０の処理が請求項１〜３のデータ検出手段に相当し、図１０のＳ２５０とＳ２６０の処理が請求項３の処理手段に相当している。
【０１２２】
ところで、ノイズとしては、例えばエンジンの各気筒に対する点火や燃料噴射に起因するものなど、周期性を持つと共に、その発生周期がエンジン回転数に応じて変わるものがある。
【０１２３】
このため、アナログ信号を常に正確に一定の間隔でＡ／Ｄ変換するように構成すると、エンジン回転数によっては、Ａ／Ｄ変換タイミングとノイズの発生タイミングとが同期してしまう可能性が生じる。
【０１２４】
具体例を挙げると、図１２に例示するように、エンジンが８気筒エンジンで回転数が１００００ｒｐｍである場合には、１５００μｓ（＝１．５ｍｓ＝（６０秒×１０００ｍｓ）／｛１００００ｒｐｍ×（３６０°ＣＡ／９０°ＣＡ）｝）毎に、点火に伴うノイズが発生すると考えられる。そして、この場合に、例えば、５００μｓ毎に複数の各アナログ信号を常に同じ順番でＡ／Ｄ変換するように構成していたとすると、その各アナログ信号は常に５００μｓ毎にＡ／Ｄ変換されることとなるため、図１２における「アナログ信号３」の段に示すように、何れかのアナログ信号（この例ではアナログ信号３）のＡ／Ｄ変換タイミングとノイズの発生タイミングとが同期してしまう可能性が生じる。そして、このような同期が生じると、そのアナログ信号については、ノイズのＡ／Ｄ変換値を、大小順が真中のＡ／Ｄ変換値であるとして処理してしまう虞がある。
【０１２５】
尚、図１２において、丸印（●）は、各アナログ信号のＡ／Ｄ変換タイミング及びＡ／Ｄ変換値を示している。また、この図１２では、５００μｓ毎に、マルチプレクサ９を切り替えて、３つのアナログ信号１〜３を「アナログ信号１→アナログ信号２→アナログ信号３」の順にＡ／Ｄ変換していく場合を表している。
【０１２６】
そこで、こうした問題を回避するためには、上記各実施形態において、アナログ信号の各々を一定でない間隔毎にＡ／Ｄ変換するように構成すれば良い。そして、このように構成すれば、ノイズをＡ／Ｄ変換してしまう可能性を非常に低くすることができ、ノイズ除去効果を向上させることができる。
【０１２７】
ここで、各アナログ信号を一定でない間隔毎にＡ／Ｄ変換する具体例としては、下記の（ａ）又は（ｂ）が考えられる。
（ａ）：図１２におけるｔ０，ｔ１，ｔ２，ｔ３，ｔ４，…の一定時間毎（５００μｓ毎）の各タイミングで、毎回乱数を発生させて、複数のアナログ信号のうち、どのアナログ信号から先にＡ／Ｄ変換するか（つまり、各アナログ信号をＡ／Ｄ変換する順番）をランダムに決定するように構成することが考えられる。
【０１２８】
（ｂ）：図１３に示すように、一定時間毎のタイミングが到来したときに各アナログ信号をＡ／Ｄ変換する順番を、そのタイミング毎に毎回変わるように予め設定しておいても良い。
【０１２９】
尚、図１３は、一定時間毎のタイミングが５００μｓ毎であって、その各タイミングで３つのアナログ信号１〜３を順次Ａ／Ｄ変換すると共に、その３つのアナログ信号１〜３のＡ／Ｄ変換順序を６通りに変えた場合を例示している。よって、この図１３の例では、「５００μｓ×６」が１サイクルとなっている。また、この図１３においても、図１２と同様に、丸印（●）は、各アナログ信号のＡ／Ｄ変換タイミング及びＡ／Ｄ変換値を示している。そして、図１３では、マルチプレクサ９の１つの入力チャンネル（ｃｈ）のアナログ信号をＡ／Ｄ変換するのに５０μｓかかるものとして、各アナログ信号のＡ／Ｄ変換タイミングを示している。このため、各アナログ信号１〜３のＡ／Ｄ変換間隔は、５０μｓ単位で、４５０μｓ，５５０μｓ，４００μｓといった具合に毎回変わっている。また勿論、アナログ信号の数が多ければ、その各アナログ信号のＡ／Ｄ変換間隔を、より複雑に変化させることができる。
【０１３０】
そして、この（ｂ）の手法によっても、各アナログ信号のＡ／Ｄ変換タイミングがランダムとなり、ノイズをＡ／Ｄ変換してしまう回数を、１つのチャンネルのアナログ信号に集中させてしまうことなく、複数のチャンネルのアナログ信号に分散させることができる。よって、全てのアナログ信号について、ノイズが乗っていないＡ／Ｄ変換値を、大小順が真中のＡ／Ｄ変換値として選択することができるようになる。
【０１３１】
次に、上記各実施形態の変形例について説明する。
［変形例１］
上記各実施形態において、図４におけるＳ１５０又は図１０におけるＳ２５０のなまし処理を実行せずに、図４ではＳ１４０からＳ１６０へ直接進み、図１０ではＳ２４０からＳ２６０へ直接進むようにして、図４のＳ１６０又は図１０のＳ２６０では、真中のＡ／Ｄ変換値を、そのまま処理結果用ＲＡＭ１５ｃに格納するように構成しても良い。
【０１３２】
この場合、マイコン３は、なまし値ではなく、生のＡ／Ｄ変換値を用いてエンジンを制御することとなるが、このように構成しても、ノイズによって他のＡ／Ｄ変換値よりも突出したＡ／Ｄ変換値が、エンジンの制御に使用されず、エンジン制御へのノイズの影響を抑えることができる。尚、この場合、図４のＳ１６０又は図１０のＳ２６０の処理が、請求項１の処理手段に相当することとなる。
【０１３３】
［変形例２］
上記各実施形態及び変形例１では、奇数個のＡ／Ｄ変換値の中から、大小順が真中である１つのＡ／Ｄ変換値を選択して制御に用いるようにしたが、例えば、図４の処理を、以下のように変形しても良い。
【０１３４】
まず、Ｓ１１０，Ｓ１２０では、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａに最新のｇ個（ｇは４以上の偶数）のＡ／Ｄ変換値を記憶させるようにする。
そして、Ｓ１３０，Ｓ１４０では、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａ内のｇ個のＡ／Ｄ変換値のうちで、例えば、大小順が上から「ｇ／２」番目と「ｇ／２＋１」番目の２つのＡ／Ｄ変換値を検出する、請求項４，５のデータ検出手段としての処理を行う。例えば、ｇ＝６ならば、６個のＡ／Ｄ変換値を大小順に並べ替え、大きい方又は小さい方から３番目と４番目の２つのＡ／Ｄ変換値を検出する。
【０１３５】
そして更に、そのＳ１３０及びＳ１４０で検出した２つのＡ／Ｄ変換値の平均値を算出する、請求項４のデータ検出手段としての処理を行い、Ｓ１５０及びＳ１６０では、その算出した平均値（平均値データ）に対してなまし処理を行うと共に、そのなまし処理の結果を処理結果用ＲＡＭ１５ｃに格納する。
【０１３６】
このように変形しても、上記各実施形態と同様の効果を得ることができる。尚、この場合、Ｓ１５０とＳ１６０の処理が請求項６の処理手段に相当することとなる。
［変形例３］
上記変形例２において、Ｓ１５０のなまし処理を実行せずに、Ｓ１６０では、データ検出手段としての処理で算出した平均値（平均値データ）を、そのまま処理結果用ＲＡＭ１５ｃに格納するように構成しても良い。尚、この場合、平均値を処理結果用ＲＡＭ１５ｃに格納するＳ１６０の処理が、請求項４の処理手段に相当することとなる。
【０１３７】
一方、上記変形例２，３では、図４の処理をベースにして述べたが、図１０の処理についても同様に変形することができる。
次に、第４実施形態のＥＣＵについて説明する。
【０１３８】
図１４に示すように、第４実施形態のＥＣＵ１では、Ａ／Ｄ変換手段の一部を成すマルチプレクサ９が、ｃｈ０〜ｃＨ９の１０個の入力端子を有しており、その各入力端子に入力されるアナログ信号をＡ／Ｄ変換器７へ択一的に入力させるようになっている。
【０１３９】
尚、以下の説明において、マルチプレクサ９の各入力端子を「Ａ／Ｄ変換器７のチャンネル」又は単に「チャンネル」と言い、そのチャンネルのそれぞれをｃｈ０〜ｃｈ９と記す。また、本第４実施形態では、各チャンネルの信号ラインに、サージ吸収用ダイオードＤｕ，Ｄｄが接続されている。
【０１４０】
そして特に、第４実施形態のＥＣＵ１における入力ＩＣ５では、第１実施形態と比較すると、上記各チャンネル（ｃｈ０〜ｃｈ９）毎について、中心値（大小順が真中のＡ／Ｄ変換値）を求める中心値算出処理（図４のＳ１３０，Ｓ１４０の処理）を行うか否か、及びその処理を行うのであれば、何個のデータから中心値を求めるのかと、Ａ／Ｄ変換間隔（Ａ／Ｄ変換を行う周期）と、なまし処理（図４のＳ１５０の処理）を行うか否か、及びその処理を行うのであれば、式２のＮを幾つにするのかとが、それぞれ可変設定できるようになっている。
【０１４１】
このため、入力ＩＣ５には、図１４に示すように、Ａ／Ｄ変換器７の各チャンネル（ｃｈ０〜ｃｈ９）毎について、上記各可変設定項目の設定値を記憶するためのレジスタ１７が設けられている。
【０１４２】
即ち、このレジスタ１７には、各チャンネル（ｃｈ０〜ｃｈ９）毎について、中心値算出処理を行うか否か、及びその処理を行うのであれば、何個のデータから中心値を求めるのかを示す変数である「ＳＥＬ」と、Ａ／Ｄ変換間隔を示す変数である「Ｔｍｇ」と、なまし処理を行うか否か、及びなまし処理を行う場合の式２のＮを示す変数である「Ｎｍｓ」とが記憶されるようになっている。
【０１４３】
そして、ＳＥＬとしては、正の奇数が設定されるようになっており、例えば、ＳＥＬ＝３であれば、３個のデータから中心値を求めるということであり、ＳＥＬ＝１であれば、中心値算出処理を行わないということである。また、Ｔｍｇは、Ａ／Ｄ変換間隔を、「１２８μｓ×（２のＴｍｇ乗）」の式で示すものであり、例えば、Ｔｍｇ＝０であれば、Ａ／Ｄ変換間隔は１２８μｓとなり、Ｔｍｇ＝２であれば、Ａ／Ｄ変換間隔は５１２μｓとなる。また、Ｎｍｓは、式２のＮに該当し、例えば、Ｎｍｓ＝４であれば、１／４なまし処理を行うということであり、Ｎｍｓ＝１であれば、なまし処理を行わないということである。
【０１４４】
ここで、本実施形態では、例えば、ｃｈ０とｃｈ１については、ＳＥＬ＝５に設定（即ち、５個のデータから中心値を算出するように設定）されており、ｃｈ２については、ＳＥＬ＝３に設定（即ち、３個のデータから中心値を算出するように設定）されている。また、ｃｈ３〜ｃｈ６についても、ＳＥＬが１以外の奇数に設定されている。そして、ｃｈ７〜ｃｈ９については、ＳＥＬ＝１に設定（即ち、中心値算出処理を行わないように設定）されている。
【０１４５】
また、ｃｈ０については、Ｎｍｓ＝２に設定（即ち、１／２なまし処理を行うように設定）されており、ｃｈ１とｃｈ２については、Ｎｍｓ＝４に設定（即ち、１／４なまし処理を行うように設定）されている。そして、ｃｈ７〜９については、Ｎｍｓ＝１に設定（即ち、なまし処理を行わないように設定）されている。
【０１４６】
また、ｃｈ０については、Ｔｍｇ＝１に設定（即ち、Ａ／Ｄ変換間隔が２５６μｓに設定）されており、ｃｈ１とｃｈ２については、Ｔｍｇ＝２に設定（即ち、Ａ／Ｄ変換間隔が５１２μｓに設定）されており、ｃｈ７〜ｃｈ９については、Ｔｍｇ＝５に設定（即ち、Ａ／Ｄ変換間隔が４０９６μｓに設定）されている。
【０１４７】
更に、本実施形態において、Ａ／Ｄ変換器７のチャンネル（ｃｈ０〜ｃｈ９）のうち、中心値算出処理を行わないｃｈ７〜ｃｈ９については、図１４に示すように、抵抗ＲｆとコンデンサＣｆとからなる周知のＣＲフィルタ回路がそれぞれ設けられており、そのフィルタ回路を通してＡ／Ｄ変換対象のアナログ信号が入力されるようになっている。そして、そのｃｈ７〜ｃｈ９の各々には、「課題を解決するための手段」の欄で第２種アナログ信号として例示したアナログ信号（即ち、瞬時的変化を捕らえる必要のある気筒内圧力センサからの信号やノックセンサからの信号、時間に同期しない一定クランク角度毎のタイミングでＡ／Ｄ変換すべき信号など）が入力されるようになっている。
【０１４８】
また、中心値算出処理を行うｃｈ０〜ｃｈ６の各々には、フィルタ回路が設けられておらず、それらには、「課題を解決するための手段」の欄で第１種アナログ信号として例示したアナログ信号（即ち、変化が比較的穏やかな冷却水温センサや油温センサや吸気温センサなどからの信号、Ａ／Ｄ変換器７に供給される電源電圧ＶＤをセンサＳＮａの抵抗値とＥＣＵ１内の抵抗Ｒｕとにより分圧することで発生するセンサ信号など）が入力されるようになっている。
【０１４９】
このような本第４実施形態のＥＣＵ１において、入力ＩＣ５の処理部１３は、Ａ／Ｄ変換器７の各チャンネル（ｃｈ０〜ｃｈ９）に入力されるアナログ信号が、そのチャンネルのＴｍｇで指示される時間間隔毎にＡ／Ｄ変換されるように、マルチプレクサ９を切り替えてＡ／Ｄ変換器７を作動させ、Ａ／Ｄ変換器７から出力されるＡ／Ｄ変換値を、そのときに選択したチャンネル（Ａ／Ｄ変換対象チャンネル）用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに格納する。
【０１５０】
このとき、処理部１３は、Ａ／Ｄ変換対象チャンネルのＳＥＬが１以外ならば、そのＡ／Ｄ変換対象チャンネル用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに、そのチャンネルのＳＥＬで指示される個数分の最新のＡ／Ｄ変換値を格納することとなる。そして、それら複数個のＡ／Ｄ変換値の中から、Ａ／Ｄ変換対象チャンネル用のソート処理用ＲＡＭ１５ｂを用いたソート処理によって中心値（大小順が真中のＡ／Ｄ変換値）を検出する。そして更に、その検出した中心値と、そのＡ／Ｄ変換対象チャンネル用の処理結果用ＲＡＭ１５ｃに格納されている値とで、そのチャンネルのＮｍｓで指定される次数のなまし処理を実行し、そのなまし処理の結果値を、そのＡ／Ｄ変換対象チャンネル用の処理結果用ＲＡＭ１５ｃに更新記憶する。但し、Ａ／Ｄ変換対象チャンネルのＮｍｓが１ならば、なまし処理は行わず、検出した中心値を、そのＡ／Ｄ変換対象チャンネル用の処理結果用ＲＡＭ１５ｃに、そのまま更新記憶する。
【０１５１】
また、処理部１３は、Ａ／Ｄ変換対象チャンネルのＳＥＬが１ならば、そのＡ／Ｄ変換対象チャンネル用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに、最新のＡ／Ｄ変換値を１個のみ格納することとなる。そして、そのＡ／Ｄ変換値と、そのＡ／Ｄ変換対象チャンネル用の処理結果用ＲＡＭ１５ｃに格納されている値とで、そのチャンネルのＮｍｓで指定される次数のなまし処理を実行し、そのなまし処理の結果値を、そのＡ／Ｄ変換対象チャンネル用の処理結果用ＲＡＭ１５ｃに更新記憶する。但し、Ａ／Ｄ変換対象チャンネルのＮｍｓが１ならば、なまし処理は行わず、そのＡ／Ｄ変換対象チャンネル用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに今回格納した最新のＡ／Ｄ変換値を、そのＡ／Ｄ変換対象チャンネル用の処理結果用ＲＡＭ１５ｃに、そのまま更新記憶する。
【０１５２】
一方、マイコン３は、第１実施形態と同様に、一定時間毎（例えば  約４ｍｓ毎）に、入力ＩＣ５と通信して、データの要求を出すことにより、入力ＩＣ５から、その時点で各チャンネル用の処理結果用ＲＡＭ１５ｃにそれぞれ格納されている最新のデータを読み出すようになっている。
【０１５３】
また、マイコン３は、あるチャンネルについては、Ａ／Ｄ変換が必要になった任意のタイミング（時間に非同期なタイミング）で入力ＩＣ５へＡ／Ｄ変換要求（後述する単発Ａ／Ｄ変換要求）を出し、入力ＩＣ５は、Ａ／Ｄ変換要求を受けると、その要求によって指示されるチャンネルのアナログ信号をＡ／Ｄ変換器７にＡ／Ｄ変換させ、そのＡ／Ｄ変換結果をそのままマイコン３へ返送するようになっている。
【０１５４】
一方また、前述のＳＥＬ、Ｔｍｇ、及びＮｍｓは、入力ＩＣ５の製造時等に記憶される固定値でもよいが、本実施形態では、それらの値をマイコン３から通信によって書き込むようになっている。このため、入力ＩＣ５を多種多様な車両の電子制御装置に使用することができる。
【０１５５】
また、マイコン３は、入力ＩＣ５から、処理結果用ＲＡＭ１５ｃに格納されているデータを読み出す際に、レジスタ１７に記憶されている各チャンネルのＳＥＬ、Ｔｍｇ、及びＮｍｓも読み出し、その読み出したＳＥＬ、Ｔｍｇ、及びＮｍｓの各値が、当該マイコン３が設定した値と一致しているか否かを判定するチェック処理も行うようになっている。このチェック処理により、レジスタ１７内の各値がノイズの影響等で変化してしまったことを検知できるようにしているのである。
【０１５６】
次に、本第４実施形態のＥＣＵ１において、入力ＩＣ５の処理部１３とマイコン３とでそれぞれ実行される処理について、図１５〜図１７のフローチャートを用い説明する。
まず、図１５は、入力ＩＣ５の処理部１３が、Ａ／Ｄ変換器７の各チャンネル（ｃｈ０〜ｃｈ９）に入力されるアナログ信号を、レジスタ１７に記憶された内容に応じてＡ／Ｄ変換器７にＡ／Ｄ変換させる際に実行する処理を表すフローチャートである。
【０１５７】
尚、処理部１３は、入力ＩＣ５への電源投入やリセット信号の付与に伴って初期状態から動作を開始し、後述する図１７のＳ６２０により、レジスタ１７へマイコン３から送られてきた各チャンネル用のＳＥＬ、Ｎｍｓ、及びＴｍｇの初期値を書き込んだ後、この図１５の処理を開始するようになっている。また、以下に説明する図１５の処理において、「ｘ」は、処理部１３が当該図１５の処理を開始してから現在のタイミングが１２８μｓの何倍のタイミングであるかを示す整数の変数であり、「ｃｈｄｔ」は、現在のＡ／Ｄ変換対象チャンネルがｃｈ０〜ｃｈ９のうちの何れであるかを０〜９の値で示す変数である。また、「Ｓｅｌｄｔ」、「Ｎｍｓｄｔ」、及び「Ｔｍｇｄｔ」のそれぞれは、レジスタ１７から読み出された何れかのチャンネルのＳＥＬ、Ｎｍｓ、及びＴｍｇの各値がセットされる作業用の変数である。
【０１５８】
処理部１３が図１５の処理を開始すると、まずＳ３１０にて、ｘを０に初期化し、次のＳ３２０にて、ｃｈｄｔを０に初期化する。
そして、Ｓ３３０にて、レジスタ１７から、ｃｈｄｔの値に該当するチャンネル（即ち現在のＡ／Ｄ変換対象チャンネル）について記憶されているＳＥＬ、Ｎｍｓ、及びＴｍｇの各値ＳＥＬ（ｃｈｄｔ）、Ｎｍｓ（ｃｈｄｔ）、及びＴｍｇ（ｃｈｄｔ）を読み出し、その読み出した各値ＳＥＬ（ｃｈｄｔ）、Ｎｍｓ（ｃｈｄｔ）、及びＴｍｇ（ｃｈｄｔ）を、それぞれ、Ｓｅｌｄｔ、Ｎｍｓｄｔ、Ｔｍｇｄｔに記憶する。
【０１５９】
次に、Ｓ３４０にて、ｘの値が「２のＴｍｇｄｔ乗」の整数倍であるか否かを判定し、そうであれば（Ｓ３４０：ＹＥＳ）、Ｓ３５０に進んで、ｃｈｄｔの値に該当するチャンネルのアナログ信号がＡ／Ｄ変換器７へ入力されるようにマルチプレクサ９を切り替える。そして、続くＳ３６０にて、Ａ／Ｄ変換器７にＡ／Ｄ変換を実施させ、次のＳ３７０にて、Ａ／Ｄ変換器７から出力されるＡ／Ｄ変換値をＡＤＮＥＷとして記憶する。
【０１６０】
次に、Ｓ３８０にて、Ｓｅｌｄｔが１であるか否かを判定し、１でなければ、現在のＡ／Ｄ変換対象チャンネルについて中心値算出処理を行うということであることから、Ｓ３９０に進んで、ｃｈｄｔの値に該当するチャンネル用（即ち、現在のＡ／Ｄ変換対象チャンネル用ということであり、以下、ｃｈｄｔ用と記す）のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに、Ｓｅｌｄｔの示す個数分だけ最新のＡ／Ｄ変換値を記憶する処理を行う。即ち、ｃｈｄｔ用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａから一番古いＡ／Ｄ変換値を破棄して、その代わりに、ＡＤＮＥＷ（即ち、今回のＡ／Ｄ変換値）を書き込む。更に詳しくは、ｃｈｄｔ用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに、Ｓｅｌｄｔの示す数だけＡ／Ｄ変換値を記憶するためのアドレスを確保すると共に、図４のＳ１２０と同様に、それらアドレスのうち、一番古いＡ／Ｄ変換値が格納されているアドレスに、ＡＤＮＥＷ（即ち、今回のＡ／Ｄ変換値）を上書きする。
【０１６１】
そして、続くＳ４００にて、図４のＳ１３０及びＳ１４０と同様に、ｃｈｄｔ用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに格納されているデータ（Ｓｅｌｄｔの示す数のＡ／Ｄ変換値）を、ｃｈｄｔ用のソート処理用ＲＡＭ１５ｂへコピーして、そのソート処理用ＲＡＭ１５ｂのデータに対し、中心値（大小順が真中であるデータ）が決定されるまでバブルソート処理を実施し、その決定された中心値をｃｈｄｔ用のソート処理用ＲＡＭ１５ｂから読み出す。
【０１６２】
次に、Ｓ４１０にて、上記ｃｈｄｔ用のソート処理用ＲＡＭ１５ｂから読み出した中心値と、ｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに格納されているデータとで、Ｎｍｓｄｔの示す次数のなまし処理を実施する。即ち、ｃｈｄｔ用のソート処理用ＲＡＭ１５ｂから読み出した中心値を、式２における「今回の真中のＡ／Ｄ変換値」とし、Ｎｍｓｄｔの値を、式２における「Ｎ」とし、ｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに現在格納されているデータを、式２における「前回のなまし値」として、式２の計算を行う。
【０１６３】
そして、次にＳ４４０へ進んで、上記Ｓ４１０で計算した結果値を、ｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに更新記憶する。尚、Ｓ４１０において、Ｎｍｓｄｔの値が１ならば、式２におけるＮが１になるため、なまし処理は実質的には行われず、Ｓ４４０では、上記Ｓ４００でｃｈｄｔ用のソート処理用ＲＡＭ１５ｂから読み出した中心値が、そのまま結果値としてｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに更新記憶されることとなる。
【０１６４】
一方、上記Ｓ３８０にて、Ｓｅｌｄｔが１であると判定した場合には、現在のＡ／Ｄ変換対象チャンネルについて中心値算出処理を行わないということであり、その場合には、Ｓ４２０に移行する。
【０１６５】
Ｓ４２０では、ｃｈｄｔ用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａにおける先頭アドレスにＡＤＮＥＷ（今回のＡ／Ｄ変換値）を書き込む。
そして、続くＳ４３０にて、上記Ｓ４２０でｃｈｄｔ用のＡ／Ｄ変換結果格納用ＲＡＭ１５ａに書き込んだＡＤＮＥＷと、ｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに格納されているデータとで、Ｎｍｓｄｔの示す次数のなまし処理を実施する。即ち、ＡＤＮＥＷを、式２における「今回の真中のＡ／Ｄ変換値」とし、Ｎｍｓｄｔの値を、式２における「Ｎ」とし、ｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに現在格納されているデータを、式２における「前回のなまし値」として、式２の計算を行う。
【０１６６】
そして、次にＳ４４０へ進んで、上記Ｓ４３０で計算した結果値を、今回のなまし値として、ｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに更新記憶する。尚、Ｓ４３０において、Ｎｍｓｄｔの値が１ならば、式２におけるＮが１になるため、なまし処理は実質的には行われず、Ｓ４４０では、ＡＤＮＥＷが、そのまま結果値としてｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに更新記憶されることとなる。
【０１６７】
上記Ｓ４４０にて、上記Ｓ４１０又はＳ４３０での計算結果がｃｈｄｔ用の処理結果用ＲＡＭ１５ｃに記憶されると、次にＳ４５０へ進んで、ｃｈｄｔの値をインクリメント（＋１）する。
【０１６８】
また、上記Ｓ３４０にて、ｘの値が「２のＴｍｇｄｔ乗」の整数倍ではない判定した場合には、そのままＳ４５０へ進んで、ｃｈｄｔの値をインクリメントする。
そして、そのＳ４５０に続くＳ４６０にて、ｃｈｄｔの値が最終チャンネルに該当する９を越えたか否かを判定し、９を越えていなければ（Ｓ４６０：ＮＯ）、上記Ｓ３３０に戻る。
【０１６９】
また、Ｓ４６０にて、ｃｈｄｔの値が９を越えたと判定した場合には、Ｓ４７０に進んで、当該図１５の処理を開始した時点から１２８μｓの整数倍のタイミングが到来するまで待ち、その１２８μｓ毎のタイミングが到来したならば（Ｓ４７０：ＹＥＳ）、Ｓ４８０に進んで、ｘをインクリメントした後、上記Ｓ３２０に戻る。
【０１７０】
このような図１５の処理では、処理部１３が当該図１５の処理を開始した時と、その後、１２８μｓが経過する毎とに、Ｓ３２０以降の処理が行われ、また、その度毎に、ｘの値が０，１，２，３，…というように、１ずつ増加していくこととなる。
【０１７１】
そして、例えば、レジスタ１７内のＴｍｇが０に設定されたチャンネルについては、Ｓ３２０以降の処理が行われる各回のＳ３４０で肯定判定されるため、１２８μｓ毎に、Ｓ３５０〜Ｓ４４０の処理により、Ａ／Ｄ変換と、そのチャンネルについてレジスタ１７に書き込まれたＳＥＬ及びＮｍｓに応じた内容の処理とが、実施されることとなる。
【０１７２】
また、例えば、レジスタ１７のＴｍｇが１に設定されたチャンネルについては、Ｓ３２０以降の処理が行われる２回に１回の割合で（詳しくは、ｘ＝０，２，４，６，…のときに）Ｓ３４０で肯定判定されるため、２５６μｓ毎に、Ｓ３５０〜Ｓ４４０の処理により、Ａ／Ｄ変換と、そのチャンネルについてレジスタ１７に書き込まれたＳＥＬ及びＮｍｓに応じた内容の処理とが、実施されることとなる。
【０１７３】
また、例えば、レジスタ１７のＴｍｇが２に設定されたチャンネルについては、Ｓ３２０以降の処理が行われる４回に１回の割合で（詳しくは、ｘ＝０，４，８，１２，…のときに）Ｓ３４０で肯定判定されるため、５１２μｓ毎に、Ｓ３５０〜Ｓ４４０の処理により、Ａ／Ｄ変換と、そのチャンネルについてレジスタ１７に書き込まれたＳＥＬ及びＮｍｓに応じた内容の処理とが、実施されることとなる。
【０１７４】
そして、このような図１５の処理により、前述した処理部１３の動作が実現される。
次に、図１６は、制御手段としてのマイコン３が入力ＩＣ５と通信する際に実行する処理を表すフローチャートである。
【０１７５】
マイコン３は、電源投入やリセット信号の付与に伴って動作を開始すると、図１６の処理を開始し、まずＳ５１０にて、入力ＩＣ５へ、レジスタ値設定要求を送信する。
このレジスタ値設定要求は、各チャンネル毎のＳＥＬ、Ｔｍｇ、及びＮｍｓの各値を入力ＩＣ５のレジスタ１７に書き込むための要求であり、図１８（Ａ）に示すように、その要求がレジスタ値設定要求であることを示すコマンド（この例では「００」）と、各チャンネルの番号と、その番号のチャンネル用のＳＥＬ、Ｔｍｇ、及びＮｍｓの各値とから構成される。
【０１７６】
尚、入力ＩＣ５では、上記Ｓ５１０でマイコン３から送信されるレジスタ値設定要求を受信すると、後述する図１７におけるＳ６２０の処理により、そのレジスタ値設定要求に含まれている各チャンネルのＳＥＬ、Ｔｍｇ、及びＮｍｓの値を、レジスタ１７に書き込むこととなる。そして、これにより、レジスタ値の初期設定が完了する。
【０１７７】
次に、マイコン３は、Ｓ５２０にて、当該図１６の処理を開始してから４ｍｓ毎のタイミングになったか否かを判定し、４ｍｓ毎のタイミングであれば（Ｓ５２０：ＹＥＳ）、Ｓ５３０に進んで、入力ＩＣ５へ、データ取り込み要求を送信する。
【０１７８】
このデータ取り込み要求は、入力ＩＣ５から全チャンネルの処理結果用ＲＡＭ１５ｃにそれぞれ記憶されているデータを読み出すための要求であり、図１８（Ａ）に示すように、その要求がデータ取り込み要求であることを示すコマンド（この例では「１０」）からなる。
【０１７９】
そして、入力ＩＣ５では、上記データ取り込み要求を受信すると、後述する図１７におけるＳ６４０の処理により、各チャンネルの処理結果用ＲＡＭ１５ｃにそれぞれ記憶されているデータと、レジスタ１７に記憶されている各チャンネルのＳＥＬ、Ｔｍｇ、及びＮｍｓの各値とをマイコン３へ送信するため、マイコン３は、次のＳ５４０にて、その入力ＩＣ５からのデータを受信してＲＡＭなどの記憶部に格納する。
【０１８０】
次に、マイコン３は、Ｓ５５０にて、上記Ｓ５４０で入力ＩＣ５から受信した各チャンネルのＳＥＬ、Ｔｍｇ、及びＮｍｓの値が、当該マイコン３が設定した値（即ち、当該マイコン３から入力ＩＣ５へ送信してレジスタ１７に書き込ませたはずの値）と一致しているか否かを判定するチェック処理を行い、続くＳ５６０にて、エラー（不一致）があったか否かを判定する。
【０１８１】
そして、エラーが無いと判定した場合には（Ｓ５６０：ＮＯ）、Ｓ５２０へ戻るが、エラーがあったと判定した場合には（Ｓ５６０：ＹＥＳ）、レジスタ１７内の値がノイズの影響等で正しい値でなくなったと考えられることから、Ｓ５７０に進み、上記Ｓ５４０で入力ＩＣ５から受信した処理結果用ＲＡＭ１５ｃ内のデータを破棄（即ち、上記記憶部から削除）して、エンジンの制御に用いないようにすると共に、入力ＩＣ５をリセットする。そして、その後、Ｓ５１０へ戻って、レジスタ値の初期設定を再び実施する。
【０１８２】
一方、上記Ｓ５２０にて、４ｍｓ毎のタイミングではないと判定した場合には、Ｓ５８０に移行する。
Ｓ５８０では、Ａ／Ｄ変換器７の何れかのチャンネルについて、時間に同期せずに即座にＡ／Ｄ変換を実施すべきことを意味する非同期Ａ／Ｄ要求が発生したか否かを判定する。尚、この非同期Ａ／Ｄ要求は、一定クランク角度毎のタイミングが到来した時や、外部から特定の信号が入力された時などに発生するものである。また、本実施形態では、前述のＣＲフィルタ回路が設けられていないｃｈ７〜ｃｈ９の何れかについて、非同期Ａ／Ｄ要求が発生するようになっている。
【０１８３】
そして、非同期Ａ／Ｄ要求がなければ（Ｓ５８０：ＮＯ）、Ｓ５２０に戻るが、非同期Ａ／Ｄ要求があれば（Ｓ５８０：ＹＥＳ）、Ｓ５９０に進んで、その非同期Ａ／Ｄ要求があったチャンネルの単発Ａ／Ｄ変換要求を入力ＩＣ５へ送信する。
【０１８４】
この単発Ａ／Ｄ変換要求は、入力ＩＣ７に何れかのチャンネルのＡ／Ｄ変換を即座に行わせるための要求であり、図１８（Ａ）に示すように、その要求が単発Ａ／Ｄ変換要求であることを示すコマンド（この例では「１１」）と、Ａ／Ｄ変換を実施すべきチャンネルの番号とから構成される。
【０１８５】
そして、入力ＩＣ５では、上記単発Ａ／Ｄ変換要求を受信すると、後述する図１７におけるＳ６６０及びＳ６７０の処理により、その要求で指示されたチャンネルのアナログ信号をＡ／Ｄ変換すると共に、そのＡ／Ｄ変換結果のデータをマイコン３へ送信するため、マイコン３は、次のＳ６００にて、その入力ＩＣ５からのデータ（Ａ／Ｄ変換結果）を受信してＲＡＭなどの記憶部に格納する。そして、その後、Ｓ５２０へ戻る。尚、Ｓ６００で記憶部に格納されたデータは、上記Ｓ５５０で記憶部に格納されたデータと共に、エンジンの制御に用いられることとなる。
【０１８６】
次に、図１７は、入力ＩＣ５の処理部１３がマイコン３と通信する際に実行する処理を表すフローチャートである。
図１７に示すように、入力ＩＣ５の処理部１３は、動作を開始すると、まずＳ６１０にて、マイコン３からのレジスタ値設定要求を受信したか否かを判定し、レジスタ値設定要求を受信したならば（Ｓ６１０：ＹＥＳ）、Ｓ６２０に進んで、受信したレジスタ値設定要求に含まれている各チャンネルのＳＥＬ、Ｔｍｇ、及びＮｍｓの値を、レジスタ１７に書き込み、その書き込み（レジスタ値の設定）を終えたら、Ｓ６１０に戻る。
【０１８７】
また、上記Ｓ６１０にて、レジスタ値設定要求を受信していないと判定した場合には、Ｓ６３０に移行して、マイコン３からのデータ取り込み要求を受信したか否かを判定する。
【０１８８】
そして、データ取り込み要求を受信したならば（Ｓ６３０：ＹＥＳ）、Ｓ６４０に進んで、各チャンネルの処理結果用ＲＡＭ１５ｃにそれぞれ記憶されているデータと、レジスタ１７に記憶されている各チャンネルのＳＥＬ、Ｔｍｇ、及びＮｍｓの各値（レジスタ値）とを、マイコン３へ送信し、その後、Ｓ６１０に戻る。
【０１８９】
尚、本実施形態において、Ｓ６４０では、図１８（Ｂ）に示すように、各チャンネル毎について、処理結果用ＲＡＭ１５ｃ内のデータとレジスタ値（ＳＥＬ、Ｎｍｓ、Ｔｍｇ）とを並べてなるフレームを、順次送信するようにしているが、例えば、処理結果用ＲＡＭ１５ｃ内のデータと、レジスタ値とは、別々のフレームで送信するようにしても良い。
【０１９０】
また、上記Ｓ６３０にて、データ取り込み要求を受信していないと判定した場合には、Ｓ６５０に移行して、マイコン３からの単発Ａ／Ｄ変換要求を受信したか否かを判定する。
【０１９１】
そして、データ取り込み要求を受信していなければ（Ｓ６５０：ＮＯ）、そのままＳ６１０に戻るが、データ取り込み要求を受信したならば（Ｓ６５０：ＹＥＳ）、Ｓ６６０に進む。
【０１９２】
Ｓ６６０では、マルチプレクサ９を切り替えて、今回受信した単発Ａ／Ｄ変換要求で指示されたチャンネルのアナログ信号をＡ／Ｄ変換器７にＡ／Ｄ変換させる。そして、そのＡ／Ｄ変換結果のデータをマイコン３へ送信し、その後、Ｓ６１０に戻る。
【０１９３】
尚、Ｓ６６０では、受信した単発Ａ／Ｄ変換要求で指示されたチャンネルを対象として、図１５におけるＳ３５０〜Ｓ３７０及びＳ４２０〜Ｓ４４０の処理を行い、Ｓ６７０では、そのチャンネルの処理結果用ＲＡＭ１５ｃに格納されたデータを、マイコン３へ送信するようにしても良い。この場合、単発Ａ／Ｄ変換要求で指示されたチャンネルについてのレジスタ１７内のＮｍｓが１ならば、Ａ／Ｄ変換値がそのままマイコン３へ送信されることとなり、上記と同じことになる。
【０１９４】
一方、上記データ取り込み要求は、マイコン３から入力ＩＣ５へ全チャンネルのデータを一括で要求するものであったが、マイコン３からＩＣ５へは、処理結果用ＲＡＭ１５ｃに記憶されているデータを、各チャンネル毎に１つずつ要求するようにしても良い。この場合、マイコン３は、データ取り込み要求を示すコマンドに、データ要求対象のチャンネル番号を付して送信し、入力ＩＣ５は、その番号のチャンネルについて、処理結果用ＲＡＭ１５ｃ内のデータとレジスタ値（ＳＥＬ、Ｔｍｇ、Ｎｍｓ）とを返送するように構成すれば良い。
【０１９５】
以上のような第４実施形態では、Ａ／Ｄ変換器７のチャンネル（ｃｈ０〜ｃｈ９）のうち、ｃｈ０〜ｃｈ６の各々には、変化が穏やかなアナログ信号（冷却水温や油温や吸気温等を表す信号）、及び、「課題を解決するための手段」の欄で述べた様にフィルタ回路を設けると電源電圧ＶＤの変動によってＡ／Ｄ変換値に影響が生じてしまうアナログ信号（即ち、電源電圧ＶＤをセンサＳＮａの抵抗値とＥＣＵ１内の抵抗Ｒｕとにより分圧することで発生する信号）を、フィルタ回路を通さずに入力させると共に、そのｃｈ０〜ｃｈ６については、中心値算出処理を行い（Ｓ３８０：ＮＯ→Ｓ３９０，Ｓ４００）、また、ｃｈ７〜ｃｈ９の各々には、瞬時的変化を捕らえる必要のある信号（気筒内圧力センサからの信号やノックセンサからの信号）、及び、時間に同期しない一定クランク角度毎のタイミングでＡ／Ｄ変換すべき信号を、フィルタ回路を通して入力させると共に、中心値算出処理を行わないようにしている（Ｓ３８０：ＹＥＳ→Ｓ４２０）。
【０１９６】
このため、Ａ／Ｄ変換対象のアナログ信号のうち、変化が緩やかな信号と、電源電圧ＶＤを分圧することで発生する信号とについては、フィルタ回路が不要なことによる部品点数の削減を実現することができ、しかも、後者の信号については、その信号ラインにフィルタ用のコンデンサＣｆが設けられないことにより、電源電圧ＶＤの変動の影響を受けないようにすることができる。
【０１９７】
そして、瞬時的変化を捕らえる必要のある信号と、時間に非同期にＡ／Ｄ変換すべき信号については、中心値算出処理を行わずに、アナログのフィルタ回路でノイズを除去するようにしているため、その信号についての検出精度を良好に保つことができる。
【０１９８】
また更に、本第４実施形態のＥＣＵ１では、入力ＩＣ５が、Ａ／Ｄ変換器７の各チャンネルについて、レジスタ１７にセットするＳＥＬ、Ｔｍｇ、及びＮｍｓの各値により、中心値算出処理を行うか否か、及びその処理を行うのであれば、何個のデータから中心値を求めるのかと、Ａ／Ｄ変換間隔と、なまし処理を行うか否か、及びその処理を行うのであれば、式２のＮを幾つにするのかとを、それぞれ可変設定できるようになっている。そして、マイコン３が、動作を開始した際に、入力ＩＣ５と通信して、上記可変設定項目を初期設定するようになっている。
【０１９９】
このような第４実施形態の入力ＩＣ５によれば、制御仕様の異なる多種多様な車両のＥＣＵに用いることができる。
しかも、本第４実施形態のＥＣＵ１において、マイコン３は、入力ＩＣ５と通信して、処理結果用ＲＡＭ１５ｃに格納されているデータを読み出す際に、レジスタ１７内の各チャンネル毎のＳＥＬ、Ｔｍｇ、及びＮｍｓの値（レジスタ値）も読み出し、その読み出したレジスタ値が、当該マイコン３が設定した値と一致しているか否かを判定するチェック処理を行うようになっている（Ｓ５５０）。そして、不一致であるエラーがあった場合には（Ｓ５６０：ＹＥＳ）、入力ＩＣ５から受信した処理結果用ＲＡＭ１５ｃ内のデータを破棄して、エンジンの制御に用いないようにすると共に、レジスタ値を再設定するようになっている（Ｓ５７０→Ｓ５１０）。
【０２００】
このため、レジスタ値がノイズの影響等で変化してしまったことを検知することができ、しかも、そのようなレジスタ値の変化が生じたことによるエンジン制御への悪影響を回避することができる。
【０２０１】
尚、マイコン３は、動作開始直後の初期設定時だけでなく、動作中においても、入力ＩＣ５へレジスタ値設定要求を送信することにより、入力ＩＣ５側のレジスタ値（ＳＥＬ、Ｔｍｇ、及びＮｍｓの値）を、制御対象であるエンジンの状態に応じて適宜変更するように構成しても良い。例えば、ＳＥＬ、Ｔｍｇ、及びＮｍｓを、エンジン回転数に応じて、低回転時よりも高回転時の方が値が小さくなるように変更するようにしても良い。そして、このように構成すれば、アナログ信号を制御対象の状態に応じた最適な条件でＡ／Ｄ変換したデータを得ることができ、制御精度を向上させることができる。
【０２０２】
一方、例えば特開平１１−２０１９３５号公報に記載されているように、空燃比センサに流れる電流をシャント抵抗によって電圧に変換した空燃比センサ信号については、空燃比センサの素子インピーダンスを測定する際に、その空燃比センサに印加する電圧を故意に急峻に変化させて、そのときの信号値から素子インピーダンスを算出し、また、そのように印加電圧を変化させない定常時の信号値から空燃比を算出することとなるが、その空燃比センサ信号のように、変化が激しい部分のレベルと、その部分以外のバックグラウンドレベルとを測定する必要があるセンサ信号（２モード検出対象信号という）については、次のように扱うことができる。
【０２０３】
まず、図１９におけるｃｈ２とｃｈ３のように、２つのチャンネルに共通のアナログ信号が入力されるようにすると共に、その一方のチャンネル（ここでは、ｃｈ３）のみに、アナログフィルタ回路（Ｒｆ，Ｃｆ）を設ける。そして、２モード検出対象信号を、共通のアナログ信号として、ｃｈ２とｃｈ３とに入力させる。このため、２モード検出対象信号は、フィルタ回路が設けられないチャンネル（ここでは、図１９のｃｈ２）と、フィルタ回路が設けられたチャンネル（ここでは、図１９のｃｈ３）との、２つのチャンネルに入力されることとなる。
【０２０４】
そして、一方のｃｈ２については、定期的に図１５のＳ３５０〜Ｓ４１０及びＳ４４０の処理が実行されて中心値算出処理が行われるようにし、他方のｃｈ３については、中間値算出処理を行うことなく、２モード検出対象信号の変化が激しくなるタイミングで、マイコン３から入力ＩＣ５へ非同期Ａ／Ｄ要求を送信することにより、Ａ／Ｄ変換を実施させるようにすれば良い。
【０２０５】
即ち、１つの２モード検出対象信号について、ｃｈ２とｃｈ３との２つを使用し、ｃｈ２の方で、その信号のバックグラウンドレベルを測定し、ｃｈ３の方で、その信号の変化が激しい部分のレベルを測定するのである。
【０２０６】
そして、このようにすれば、バックグラウンドレベルについては、中間値算出処理によってノイズを効果的に除去することができ、変化が激しい部分のレベルについては、アナログフィルタ回路によるノイズ除去のみで、中間値算出処理は実施されないため、ノイズとして排除されてしまうことがなく、確実に検出することができる。
【０２０７】
また、２モード検出対象信号は、次のように扱うこともできる。
まず、２モード検出対象信号を、Ａ／Ｄ変換器７のチャンネルのうち、アナログフィルタ回路が設けられた１つのチャンネル（ここでは、例えば図１４のｃｈ７とする）に入力させる。
【０２０８】
そして、２モード検出対象信号のバックグラウンドレベルを測定する際には、その信号が入力されるｃｈ７について、定期的に図１５のＳ３５０〜Ｓ４１０及びＳ４４０の処理が実行されて中心値算出処理が行われるようにし、変化が激しい部分のレベルを測定する際には、その測定タイミングで、マイコン３から入力ＩＣ５へｃｈ７についての非同期Ａ／Ｄ要求を送信してＡ／Ｄ変換を実施させ、そのｃｈ７のＡ／Ｄ変換値（つまり、中間値算出処理が実施されないＡ／Ｄ変換値）が入力ＩＣ５からマイコン３へ取り込まれるようにすれば良い。
【０２０９】
このようにすれば、２モード検出対象信号を、１つのチャンネルのみで扱うことができ、使用するチャンネル数を節約することができる。
尚、２モード検出対象信号としては、空燃比センサの信号に限らず、例えば、エンジンの気筒内圧力を検出するセンサからの信号やイオン電流の信号などがある。
【０２１０】
また、上記第４実施形態の入力ＩＣ５において、Ｔｍｇの代わりに、Ａ／Ｄ変換を実施するチャンネルの順番（ｃｈ０→ｃｈ１→ｃｈ２→・・・→ｃｈ０→・・・）がレジスタ１７の値によって設定されるように構成し、その順番のデータをマイコン３から送信して入力ＩＣ５のレジスタ１７に記憶させるようにしても良い。
【０２１１】
一方、上記第４実施形態では、ＳＥＬとして奇数が設定され、図１５のＳ３９０及びＳ４００にて、第１実施形態と同様に、奇数個のＡ／Ｄ変換値の中から中心値を選択するようにしたが、ＳＥＬとして４以上の偶数又は１が設定され、そのＳＥＬが偶数に設定された場合の図１５におけるＳ３９０及びＳ４００では、前述した変形例２と同様に、最新のＳＥＬ個（ＳＥＬは４以上の偶数）のＡ／Ｄ変換値のうちで、大小順が上から「ＳＥＬ／２」番目と「ＳＥＬ／２＋１」番目の２つのＡ／Ｄ変換値を検出すると共に、その２つのＡ／Ｄ変換値の平均値を算出し、図１５のＳ４１０では、その算出した平均値（平均値データ）に対して、Ｎｍｓの値に応じた次数のなまし処理を行うように構成しても良い。
【０２１２】
以上、本発明の一実施形態について説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々なる態様で実施し得ることは勿論である。
【０２１３】
例えば、なまし処理としては、前述したものに限らず、分母が他の値（２，４，８以外の値）のなまし処理であっても良い。
また、図４のＳ１５０又は図１０のＳ２５０では、なまし処理の代わりに、移動平均処理を行うようにしても良い。
【０２１４】
一方、上記各実施形態及び各変形例では、Ａ／Ｄ変換器７からのＡ／Ｄ変換値を、そのままデータ記憶手段としてのＡ／Ｄ変換結果格納用ＲＡＭ１５ａに格納するようにしたが、Ａ／Ｄ変換器７からの各Ａ／Ｄ変換値に対して、特許文献１や特許文献３のノイズ除去用処理を行い、その処理の結果データ（つまり、ある程度大きなノイズが除去されたデータ）をＡ／Ｄ変換結果格納用ＲＡＭ１５ａに格納して、本案の処理を行うようにしても良い。そして、この場合には、Ａ／Ｄ変換器７及びマルチプレクサ９と上記ノイズ除去用処理を行う部分が、Ａ／Ｄ変換手段に相当することとなる。
【０２１５】
また、上記各実施形態及び変形例１では、奇数個のＡ／Ｄ変換値の中から、大小順が真中である１つのＡ／Ｄ変換値を選択して制御に用いるようにしたが、必ずしも真中のＡ／Ｄ変換値を選択するように構成しなくても良い。
【０２１６】
例えば、Ａ／Ｄ変換結果格納用ＲＡＭ１５ａにｇ個（ｇは偶数）のＡ／Ｄ変換値を記憶させるようにし、そのｇ個のＡ／Ｄ変換値の中から、大小順が大きい方から「ｇ／２」番目のＡ／Ｄ変換値（ｎ＝６なら３番目）を選択したり、小さい方から「ｇ／２」番目（つまり、大きい方から「ｇ／２＋１」番目）のＡ／Ｄ変換値を選択するようにしても良い。また例えば、アナログ信号の上側にノイズが乗りやすいといった特別な傾向がある場合には、５個のＡ／Ｄ変換値のうち、小さい方から２番目のＡ／Ｄ変換値を制御に使用されるデータとして検出するようにしても良い。
【０２１７】
一方、上記変形例２，３では、偶数個のＡ／Ｄ変換値の中から、大小順が真中付近の２つのＡ／Ｄ変換値を検出して平均するようにしたが、例えば、奇数個（ここでは７個とする）のＡ／Ｄ変換値の中から、大小順が大きい方から３番目，４番目（真中），及び５番目である３つのＡ／Ｄ変換値を検出し、それらの平均値を算出するようにしても良い。また、これと同様の処理を、第４実施形態における図１５のＳ４００で行うようにしても良い。また、大小順が真中付近の複数のＡ／Ｄ変換値が同じ値か互いに似たような値の場合には、それらの値のどれを使っても良い。つまり、仮にアナログ回路によってソート処理を実施した場合、真中付近の値はさほど正確に判断する必要はない。
【０２１８】
また更に、上記各実施形態及び各変形例では、データ記憶手段と処理結果記憶手段との各々として、ＲＡＭ１５の記憶領域１５ａ，１５ｃを使用したが、それら各記憶手段やソート処理に使用される記憶領域（前述の１５ｂ）は、メモリであれば良く、ＲＡＭに限らずレジスタなどであっても良い。
【０２１９】
一方、本発明は、自動車のエンジンを制御するＥＣＵに限らず、自動車のトラスミッションや自動車以外の他の分野の制御対象を制御するＥＣＵに対しても、同様に適用することができる。
【図面の簡単な説明】
【０２２０】
【図１】第１実施形態のＥＣＵ（電子制御装置）の構成を表す構成図である。
【図２】第１実施形態の入力ＩＣの動作概要を表す説明図である。
【図３】Ａ／Ｄ変換タイミング毎のＡ／Ｄ変換値（ＡＤ値）をそのままなまし処理する場合の動作を表す説明図である。
【図４】第１実施形態の入力ＩＣの処理部がＡ／Ｄ変換タイミング毎に実行する処理の内容を表すフローチャートである。
【図５】図４の処理の作用を説明する説明図である。
【図６】第１実施形態の入力ＩＣの動作をマイコンとの通信タイミングとあわせて表すタイムチャートである。
【図７】第１実施形態の入力ＩＣによる遅れの度合を説明する説明図である。
【図８】第１実施形態の入力ＩＣによるフィルタ効果を説明する説明図である。
【図９】第２実施形態の入力ＩＣの動作をマイコンとの通信タイミングとあわせて表すタイムチャートである。
【図１０】第３実施形態の入力ＩＣの処理部がＡ／Ｄ変換タイミング毎に実行する処理の内容を表すフローチャートである。
【図１１】図１０の処理の作用を説明する説明図である。
【図１２】Ａ／Ｄ変換タイミングとノイズの発生タイミングとが同期してしまう不具合を表すタイムチャートである。
【図１３】図１２の不具合を解決するための手段を説明するタイムチャートである。
【図１４】第４実施形態のＥＣＵ（電子制御装置）の構成を表す構成図である。
【図１５】第４実施形態の入力ＩＣの処理部が、各チャンネルのアナログ信号を、レジスタの記憶内容に応じてＡ／Ｄ変換器にＡ／Ｄ変換させる際に実行する処理を表すフローチャートである。
【図１６】第４実施形態のマイコンが入力ＩＣと通信する際に実行する処理を表すフローチャートである。
【図１７】第４実施形態の入力ＩＣの処理部がマイコンと通信する際に実行する処理を表すフローチャートである。
【図１８】第４実施形態のマイコンと入力ＩＣとの間で通信されるデータのフォーマットを表す図である。
【図１９】第４実施形態の入力ＩＣの応用例を説明するための構成図である。
【図２０】従来技術及びその問題点を説明する説明図である。
【符号の説明】
【０２２１】
１・・・ＥＣＵ（電子制御装置）、３・・・マイコン、５・・・入力ＩＣ、７・・・Ａ／Ｄ変換器、９・・・マルチプレクサ、９ａ・・・入力バッファ、１１・・・通信部、１３・・・処理部、１５・・・ＲＡＭ、１５ａ・・・Ａ／Ｄ変換結果格納用ＲＡＭ、１５ｂ・・・ソート処理用ＲＡＭ、１５ｃ・・・処理結果用ＲＡＭ、Ｄｄ，Ｄｕ・・・ダイオード、Ｒｄ，Ｒｕ・・・抵抗、ＳＮａ，ＳＮｂ・・・センサ、１７・・・レジスタ
【図１】
2005167972.tif 000003
【図２】
2005167972.tif 000004
【図３】
2005167972.tif 000005
【図４】
2005167972.tif 000006
【図５】
2005167972.tif 000007
【図６】
2005167972.tif 000008
【図７】
2005167972.tif 000009
【図８】
2005167972.tif 000010
【図９】
2005167972.tif 000011
【図１０】
2005167972.tif 000012
【図１１】
2005167972.tif 000013
【図１２】
2005167972.tif 000014
【図１３】
2005167972.tif 000015
【図１４】
2005167972.tif 000016
【図１５】
2005167972.tif 000017
【図１６】
2005167972.tif 000018
【図１７】
2005167972.tif 000019
【図１８】
2005167972.tif 000020
【図１９】
2005167972.tif 000021
【図２０】
2005167972.tif 000022