(57)【要約】【課題】本発明は、アースをメイン基板と共用するサブ基板の数が増減しても、メイン基板に実装されるプロセッサによって計測された計測値を補正することができる、車両用制御装置の提供を目的とする。【解決手段】インジェクタＸの印加電圧を計測するメインＣＰＵ１１が実装されるメイン基板１０と、アースＥ０１をメインＣＰＵ１１と共用し、アースＥ０１との取り付け／取り外しが可能なサブ基板２０，３０と、を有する車両用制御装置であって、メインＣＰＵ１１は、アースＥ０１の浮き電圧をシャント抵抗１４によって検出し、サブ基板２０や３０がアースＥ０１に取り付けられたときに検出されたアースＥ０１の浮き電圧に基づいて、インジェクタＸの印加電圧の計測値を補正することを特徴とする、車両用制御装置。【選択図】図１
2008121580.tif 000002
【特許請求の範囲】
【請求項１】
電気負荷の印加電圧を計測するプロセッサが実装されるメイン基板と、
アースを前記プロセッサと共用し、前記アースとの取り付け／取り外しが可能なサブ基板と、を有する車両用制御装置であって、
前記アースの浮き電圧を検出する浮き電圧検出手段を備え、
前記プロセッサは、前記サブ基板が前記アースに取り付けられたときに前記浮き電圧検出手段によって検出された前記アースの浮き電圧に基づいて、前記印加電圧の計測値を補正することを特徴とする、車両用制御装置。
【請求項２】
前記浮き電圧検出手段は、前記サブ基板が前記アースに取り付けられる位置より下流側に直列に挿入された抵抗の両端電圧を検出することによって、前記アースの浮き電圧を検出する、請求項１に記載の車両用制御装置。
【請求項３】
前記印加電圧の計測値の補正量は、前記サブ基板が前記アースに取り付けられる前後で前記浮き電圧検出手段によって検出される前記アースの浮き電圧の差である、請求項１又は２に記載の車両用制御装置。
【請求項４】
前記浮き電圧検出手段は、前記プロセッサに内蔵のＡ／Ｄコンバータである、請求項１から３のいずれかに記載の車両用制御装置。
【請求項５】
前記サブ基板には前記プロセッサと通信可能な通信回路が実装され、
前記プロセッサは、前記通信回路と通信することによって前記サブ基板と前記アースとの取り付け／取り外しの状態を判断する、請求項１から４のいずれかに記載の車両用制御装置。
【請求項６】
前記プロセッサは、前記サブ基板の制御状態に応じて前記計測値を補正する、請求項1から５のいずれかに記載の車両用制御装置。
【請求項７】
前記電気負荷は、燃料噴射用インジェクタである、請求項１から６のいずれかに記載の車両用制御装置。
【請求項８】
前記プロセッサは、エンジンの回転数の違いに応じて前記計測値を補正する、請求項７に記載の車両用制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メイン基板とサブ基板を有し、少なくともサブ基板の取り付け／取り外しが可能な車両用制御装置に関する。
【背景技術】
【０００２】
従来、電圧制御電源から電源電圧の供給を受けて動作するプロセッサコアを備える電子機器が知られている（例えば、特許文献１参照）。この電子機器は、プロセッサコアの処理負荷に応じて、電源電圧を調整する手段を備えるものである。
【特許文献１】特開２００５−２１６１３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、アース（グランド）をメイン基板と共用するサブ基板を取り付け又は取り外し可能な構成にする場合、サブ基板を流れた電流がグランドに流れることによるメイン基板のグランド浮きが発生するため、上述の従来技術では、メイン基板に実装されるプロセッサが計測した計測値がサブ基板を取り付け又は取り外しする前後で変動するおそれがある。
【０００４】
そこで、本発明は、アースをメイン基板と共用するサブ基板の数が増減しても、メイン基板に実装されるプロセッサによって計測された計測値を補正することができる、車両用制御装置の提供を目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明の車両用制御装置は、
電気負荷の印加電圧を計測するプロセッサが実装されるメイン基板と、
アースを前記プロセッサと共用し、前記アースとの取り付け／取り外しが可能なサブ基板と、を有する車両用制御装置であって、
前記アースの浮き電圧を検出する浮き電圧検出手段を備え、
前記プロセッサは、前記サブ基板が前記アースに取り付けられたときに前記浮き電圧検出手段によって検出された前記アースの浮き電圧に基づいて、前記印加電圧の計測値を補正することを特徴とする。
【０００６】
ここで、前記浮き電圧検出手段は、前記サブ基板が前記アースに取り付けられる位置より下流側に直列に挿入された抵抗の両端電圧を検出することによって、前記アースの浮き電圧を検出すると好ましい。また、前記浮き電圧検出手段は、例えば、前記プロセッサに内蔵のＡ／Ｄコンバータである。
【０００７】
また、前記印加電圧の計測値の補正量は、前記サブ基板が前記アースに取り付けられる前後で前記浮き電圧検出手段によって検出される前記アースの浮き電圧の差であると好適である。例えば、前記サブ基板が前記アースに取り付けられたときの前記印加電圧の計測値に前記補正量を反映することによって、前記印加電圧の計測値を補正することが可能となる。
【０００８】
さらに、前記サブ基板には前記プロセッサと通信可能な通信回路が実装され、
前記プロセッサは、前記通信回路と通信することによって前記サブ基板と前記アースとの取り付け／取り外しの状態を判断すると好適である。
【０００９】
また、前記プロセッサは、前記サブ基板の制御状態に応じて前記計測値を補正するとよい。サブ基板から前記アースに流れる電流はサブ基板の制御状態によって変動し、その変動により前記計測値も異なってくるからである。
【００１０】
ここで、前記電気負荷を燃料噴射用インジェクタとして適用すると効果的である。燃料噴射用インジェクタは印加電圧によってその特性が変化するので、印加電圧の計測値には精度が要求されるからである。また、前記プロセッサは、エンジンの回転数の違いに応じて前記計測値を補正するとよい。前記アースに流れる電流はエンジン回転数によって変動し、その変動により前記計測値も異なってくるからである。
【発明の効果】
【００１１】
本発明によれば、アースをメイン基板と共用するサブ基板の数が増減しても、メイン基板に実装されるプロセッサによって計測された計測値を補正することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。図１は、本発明に係る車両用制御装置の一実施形態である。本実施形態の車両用制御装置は、エンジンに燃料を噴射するためのインジェクタＸ，Ｙ，Ｚへの通電を制御する電子制御装置である（以下、「ＥＣＵ１００」という）。ＥＣＵ１００の筐体内には、所定の回路がそれぞれ実装される複数の基板（例えば、プリント基板やセラミック基板やシリコン単結晶板）がその内部に取り付け可能なように形成されている。
【００１３】
ＥＣＵ１００の筐体内に取り付けられたメイン基板１０には、インジェクタＸを駆動する回路が実装されている。インジェクタＸの駆動回路は、メインＣＰＵ１１，トランジスタ１２及び保護抵抗１３を備えている。
【００１４】
メインＣＰＵ１１は、演算や制御を行うＣＰＵ（中央演算処理装置）と、データの記憶を行うメモリと、外部との入出力を行うＩ／Ｏ部とを備えるマイクロコンピュータ（プロセッサ）である。トランジスタ１２は、インジェクタＸを駆動する駆動素子（例えば、ＩＧＢＴやＭＯＳＦＥＴ）である。メインＣＰＵ１１の出力ポートＰ１から出力される出力信号がトランジスタ１２に入力される。その出力信号のＨｉレベル電圧とＬｏレベル電圧に従いトランジスタ１２はオン／オフする。出力ポートＰ１がＨｉレベルであればトランジスタ１２はオンし、出力ポートＰ１がＬｏレベルであればトランジスタ１２はオフする。トランジスタ１２がオンしているときに、バッテリ２００のプラス端子から電源ハーネス５１を介してインジェクタＸに電流が流れる。なお、抵抗１３は、過電流に対する保護抵抗であり、無くてもよい。
【００１５】
ＥＣＵ１００は、インジェクタＸの通電時間を精度良く制御するために、インジェクタＸの適合を行う。エンジンに対する燃料噴射量を左右するインジェクタの開弁時間はインジェクタに流す電流の通電時間によって決まるため、インジェクタを制御するＥＣＵはインジェクタに接続されるバッテリ等の電源電圧（＋Ｂ電圧）に応じてインジェクタの通電時間を変えている。しかしながら、インジェクタ自体のばらつき、並びに配線抵抗（例えば、インジェクタと電源のプラス側との間のハーネスの抵抗分、インジェクタと電源のマイナス側との間のハーネスの抵抗分）及び接触抵抗などによって、バッテリ等の電源電圧は同じでもインジェクタに実際に印加される電圧は変化する。そこで、ＥＣＵ１００は、インジェクタの通電時間を精度良く制御するためには、インジェクタＸに実際に印加される電圧を精度良く計測する必要がある。
【００１６】
インジェクタＸに実際に印加される電圧を精度良く計測するために、インジェクタＸにできるだけ近い電源ハーネス５１上の点ＡとＥＣＵ１００の端子Ｂがハーネス５２を介して結線されている。点ＡをインジェクタＸにできるだけ近い位置にすることによって、バッテリ２００と点Ａとの間の電源ハーネス５１の抵抗分による電圧ドロップを、ＥＣＵ１００が計測したインジェクタＸの印加電圧の計測値から排除することができる。点Ａの電圧値は、ハーネス５２と端子Ｂを介してメインＣＰＵ１１のＡ／Ｄ入力ポートＡＤ１に入力され、メインＣＰＵ１１に内蔵のＡ／Ｄコンバータによってデジタル値に変換される。入力ポートＡＤ１側はハイインピーダンスなことによりハーネス５２にはほとんど電流が流れないため、ハーネス５２の抵抗分による電圧ドロップは無視することができる。メインＣＰＵ１１のＡ／Ｄコンバータ用のＧＮＤ（グランド）端子は、ＥＣＵ１００の内部のグランド線を介してＥＣＵ１００のアース端子である端子Ｅ０１に直接接続されている。端子Ｅ０１はグランドハーネス５０によってバッテリ２００のマイナス端子や車体金属部に接続されている。したがって、メインＣＰＵ１１は、バッテリ２００と点Ａとの間の電源ハーネス５１の抵抗分やバッテリ２００と端子Ｅ０１との間のグランドハーネス５０の抵抗分等に影響されずに、端子Ｅ０１基準で点Ａの電圧（インジェクタＸの印加電圧）を精度良く計測していることになる。
【００１７】
ところで、車両の開発段階においては、開発効率等を考慮するため、その後の市販段階では複数の異機能を複数の異なるＥＣＵで実現する場合であっても、それらの異機能を実現する単一の試作ＥＣＵを使用して開発や評価が行われる場合がある。また、例えば工場出荷後に機能拡張可能なように、その拡張機能を実現する回路が実装されたサブ基板が予めＥＣＵに内蔵されていたり、そのようなサブ基板をＥＣＵに追加取り付け可能なように構成されていたりする場合がある。このような機能の増減に対応するため、ＥＣＵ１００は、サブ基板２０とサブ基板３０を取り付け／取り外し可能なように構成されている。
【００１８】
ＥＣＵ１００の筐体内に取り付けられたサブ基板２０には、インジェクタＹを駆動する回路が実装されている。インジェクタＹの駆動回路は、サブＣＰＵ１、トランジスタ２２及び保護抵抗２３を構成している。サブＣＰＵ１は、メインＣＰＵ１１と同様のマイクロコンピュータである。トランジスタ２２は、インジェクタＹを駆動する駆動素子であって、上述と同様に、サブＣＰＵ１の出力ポートＰ３から出力信号の電圧レベルによって駆動する。トランジスタ２２がオンしているときに、インジェクタＸと同一電源であるバッテリ２００から電源ハーネス５１を介してインジェクタＹに電流が流れる。なお、抵抗２３は、過電流に対する保護抵抗であり、無くてもよい。
【００１９】
同様に、ＥＣＵ１００の筐体に取り付けられたサブ基板３０には、インジェクタＺを駆動する回路が実装されている。インジェクタＺの駆動回路は、サブＣＰＵ２、トランジスタ３２及び保護抵抗３３を構成している。サブＣＰＵ２は、メインＣＰＵ１１と同様のマイクロコンピュータである。トランジスタ３２は、インジェクタＺを駆動する駆動素子であって、上述と同様に、サブＣＰＵ２の出力ポートＰ４から出力信号の電圧レベルによって駆動する。トランジスタ３２がオンしているときに、インジェクタＸと同一電源であるバッテリ２００から電源ハーネス５１を介してインジェクタＺに電流が流れる。なお、抵抗３３は、過電流に対する保護抵抗であり、無くてもよい。
【００２０】
メインＣＰＵ１１とサブＣＰＵ１とサブＣＰＵ２は、互いに通信可能なように通信ライン６０を介して各ＣＰＵの通信ポートで結ばれる。通信ライン６０は、例えば、ＣＡＮバスである。通信ライン６０を介して接続されることによって、メインＣＰＵ１１は、どのサブ基板がＥＣＵ１００に取り付けられているのかを判断することができる。
【００２１】
ところが、低抵抗のインジェクタＹを駆動するサブ基板２０や低抵抗のインジェクタＺを駆動するサブ基板３０を追加する場合、各基板のアースを端子Ｅ０１に接続することによりアースを共用化すると、各インジェクタを流れた大電流はすべて端子Ｅ０１を介してグランドハーネス５０を流れる構成となる。この場合、各インジェクタの大電流が端子Ｅ０１を介して流れることによって、グランドハーネス５０の抵抗分や接触抵抗による電圧が発生し、バッテリ２００のマイナス端子基準の端子Ｅ０１の電圧が変動する。その結果、メイン基板１０上のＣＰＵ１１が端子Ｅ０１基準で計測した点Ａの電圧計測値が変動することになり、サブ基板の追加又は削減前後でその計測値は異なってしまう。つまり、ＥＣＵ１００は、バッテリ２００のマイナス端子基準の点Ａの電圧が何ら変動していなくても、バッテリ２００のマイナス端子基準の端子Ｅ０１の電圧が変動することによって、端子Ｅ０１基準の点Ａの電圧の計測値がずれてしまい、インジェクタＸの通電時間を精度良く制御できないおそれがある。
【００２２】
そこで、本実施形態のＥＣＵ１００は、シャント抵抗１４とボルテージフォロア１５によって、各基板の共用アースであるグランドＥ０１の浮き電圧を検出する。シャント抵抗１４は、各インジェクタを流れた電流がグランドＥ０１に流れ込む電流を電圧に変換するための低抵抗値の抵抗素子である。シャント抵抗１４は、グランドＥ０１に直列に挿入される。シャント抵抗１４の抵抗値は、インジェクタＸの印加電圧の計測値の精度に影響を与えないように、インジェクタＸ，Ｙ，Ｚの抵抗値や保護抵抗１３，２３，３３の抵抗値に比べ、極めて小さい値とする。サブ基板２０がグランドＥ０１に取り付けられた場合にはシャント抵抗１４の上流側の点Ｆに接続され、サブ基板３０がグランドＥ０１に取り付けられた場合にはシャント抵抗１４の上流側の点Ｇに接続される。インジェクタＸを流れた電流は、ＥＣＵ１００の端子Ｖ１からトランジスタ１２によって吸い込まれ、シャント抵抗１４を介して、端子Ｅ０１から吐き出される。サブ基板２０をＥＣＵ１００に取り付けた場合にインジェクタＹに流れた電流は、ＥＣＵ１００の端子Ｖ２からトランジスタ２２によって吸い込まれ、シャント抵抗１４を介して、端子Ｅ０１から吐き出される。サブ基板２０をＥＣＵ１００に取り付けた場合にインジェクタＺに流れた電流は、ＥＣＵ１００の端子Ｖ３からトランジスタ３２によって吸い込まれ、シャント抵抗１４を介して、端子Ｅ０１から吐き出される。
【００２３】
トランジスタ１２，２２，３２とシャント抵抗１４との間の点Ｅの電圧値は、ボルテージフォロア１５を介してメインＣＰＵ１１のＡ／Ｄ入力ポートＡＤ２に入力され、メインＣＰＵ１１に内蔵のＡ／Ｄコンバータによってデジタル値に変換される。これによって、メインＣＰＵ１１は、シャント抵抗１４の両端電圧、すなわち、グランドＥ０１の浮き電圧を計測可能となる。なお、シャント抵抗１４の下流側の点Ｈは、点Ｈと端子Ｅ０１との間に生ずる電圧の影響をできるだけ排除するために、できるだけ端子Ｅ０１に近いほうがよい。
【００２４】
図２は、メインＣＰＵ１１が実行する、サブ基板有無の確認処理フローである。イグニッションスイッチの状態が確認され（ステップ１００）、オン状態である場合にはステップ１１０に移行し、オフ状態である場合には本フローは終了する。ステップ１１０において、ＣＡＮ通信の受信有無によってサブ基板（サブＣＰＵ）の接続有無が確認される。ＣＡＮ通信に含まれる基板ＩＤに基づいてサブＣＰＵ１が接続されているか否かが判断され（ステップ１２０）、サブＣＰＵ１に係る基板ＩＤが含まれている場合にはサブＣＰＵ１が接続されているとして、サブＣＰＵ１の接続状態を示すフラグであるＦ＿ＳＵＢＣＰＵ１をオンとし（ステップ１３０）、サブＣＰＵ１に係る基板ＩＤが含まれていない場合にはサブＣＰＵ１が接続されていないとして、Ｆ＿ＳＵＢＣＰＵ１をオフとする（ステップ１３５）。ステップ１４０において、サブＣＰＵ１からのＣＡＮ通信による通信データが取得される。
【００２５】
また、ＣＡＮ通信に含まれる基板ＩＤに基づいてサブＣＰＵ２が接続されているか否かが判断され（ステップ１５０）、サブＣＰＵ２に係る基板ＩＤが含まれている場合にはサブＣＰＵ２が接続されているとして、サブＣＰＵ２の接続状態を示すフラグであるＦ＿ＳＵＢＣＰＵ２をオンとし（ステップ１６０）、サブＣＰＵ２に係る基板ＩＤが含まれていない場合にはサブＣＰＵ２が接続されていないとして、Ｆ＿ＳＵＢＣＰＵ２をオフとする（ステップ１６５）。ステップ１７０において、サブＣＰＵ２からのＣＡＮ通信による通信データが取得される。ステップ１７０の終了後にステップ１００に戻る。
【００２６】
なお、ステップ１４０及びステップ１７０において各サブＣＰＵから取得される通信データには、各サブＣＰＵの制御状態が含まれている。その制御状態として、例えば、各基板を区別するための符号である基板ＩＤ、各サブＣＰＵの動作モード（例えば、通常使用状態を示す標準モードか故障解析等のためのテストモードかの区別）、ダイアグ情報（異常検出有無の区別）、走行状態（例えば、加速中や減速中などの非定常モードか定速走行中などの定常モードかの区別）が挙げられる。
【００２７】
図３は、メインＣＰＵ１１が実行する、サブＣＰＵの正常動作の確認処理フローである。イグニッションスイッチの状態が確認され（ステップ２００）、オン状態である場合にはステップ２１０に移行し、オフ状態である場合には本フローは終了する。ステップ２１０においてＦ＿ＳＵＢＣＰＵ１がオンであるか否かが確認されるとともに、ステップ２２０において図２のステップ１４０で取得された通信データに基づいてサブＣＰＵ１の状態が確認される。Ｆ＿ＳＵＢＣＰＵ１がオンであり、且つ、サブＣＰＵ１が標準モード且つ正常（異常検出無し）且つ定常モードである場合にはサブＣＰＵ１が正常動作しているとして、サブＣＰＵ１の動作状態を示すフラグであるＦ＿ＣＰＵ１をオンとし（ステップ２３０）、Ｆ＿ＳＵＢＣＰＵ１がオフ又はサブＣＰＵ１が標準モード等ではない場合にはサブＣＰＵ１が正常動作していないとして、Ｆ＿ＣＰＵ１をオフとする（ステップ２３５）。
【００２８】
一方、ステップ２４０においてＦ＿ＳＵＢＣＰＵ２がオンであるか否かが確認されるとともに、ステップ２５０において図２のステップ１７０で取得された通信データに基づいてサブＣＰＵ２の状態が確認される。Ｆ＿ＳＵＢＣＰＵ２がオンであり、且つ、サブＣＰＵ２が標準モード且つ正常（異常検出無し）且つ定常モードである場合にはサブＣＰＵ２が正常動作しているとして、サブＣＰＵ２の動作状態を示すフラグであるＦ＿ＣＰＵ２をオンとし（ステップ２６０）、Ｆ＿ＳＵＢＣＰＵ２がオフ又はサブＣＰＵ２が標準モード等ではない場合にはサブＣＰＵ２が正常動作していないとして、Ｆ＿ＣＰＵ２をオフとする（ステップ２６５）。
【００２９】
図４は、メインＣＰＵ１１が実行する、接続されているサブ基板を特定する処理フローである。イグニッションスイッチの状態が確認され（ステップ３００）、オン状態である場合にはステップ３１０に移行し、オフ状態である場合には本フローは終了する。ステップ３１０において、Ｆ＿ＳＵＢＣＰＵ１がオンであるか否かが確認される。Ｆ＿ＳＵＢＣＰＵ１がオンである場合にはサブＣＰＵ１が接続されているとして、ステップ３２０に移行する。Ｆ＿ＳＵＢＣＰＵ１がオフである場合にはサブＣＰＵ１が接続されていないとして、ステップ４２０に移行する。ステップ３２０において、Ｆ＿ＳＵＢＣＰＵ２がオンであるか否かが確認される。Ｆ＿ＳＵＢＣＰＵ２がオンである場合にはサブＣＰＵ２が接続されているとして、ステップ３３０に移行する。Ｆ＿ＳＵＢＣＰＵ２がオフである場合にはサブＣＰＵ２が接続されていないとして、ステップ３３５に移行する。一方、ステップ４２０において、Ｆ＿ＳＵＢＣＰＵ２がオンであるか否かが確認される。Ｆ＿ＳＵＢＣＰＵ２がオンである場合にはサブＣＰＵ２が接続されているとして、ステップ４３０に移行する。Ｆ＿ＳＵＢＣＰＵ２がオフである場合にはサブＣＰＵ２が接続されていないとして、ステップ４３５に移行する。
【００３０】
したがって、Ｆ＿ＳＵＢＣＰＵ１がオン且つＦ＿ＳＵＢＣＰＵ２がオンの場合には、サブ基板２０及び３０が接続されているとして、どのサブ基板が接続しているのかを示すフラグであるＦ＿ＫＩＢＡＮを「１１」とする。Ｆ＿ＳＵＢＣＰＵ１がオン且つＦ＿ＳＵＢＣＰＵ２がオフの場合には、サブ基板２０のみが接続されているとして、Ｆ＿ＫＩＢＡＮを「１０」とする。Ｆ＿ＳＵＢＣＰＵ１がオフ且つＦ＿ＳＵＢＣＰＵ２がオンの場合には、サブ基板３０のみが接続されているとして、Ｆ＿ＫＩＢＡＮを「０１」とする。Ｆ＿ＳＵＢＣＰＵ１がオフ且つＦ＿ＳＵＢＣＰＵ２がオフの場合には、サブ基板は接続されていないとして、Ｆ＿ＫＩＢＡＮを「００」とする。
【００３１】
図５は、メインＣＰＵ１１が実行する、インジェクタＸの印加電圧として計測される＋Ｂ電圧の補正方法を定めるためのフラグを決定する処理フローを示す。イグニッションスイッチの状態が確認され（ステップ５００）、オン状態である場合にはステップ５１０に移行し、オフ状態である場合には本フローは終了する。ステップ５１０において、Ｆ＿ＫＩＢＡＮの値が確認される。Ｆ＿ＫＩＢＡＮ＝１１である場合にはステップ５２０に移行し、Ｆ＿ＫＩＢＡＮ＝１０である場合にはステップ６２０に移行し、Ｆ＿ＫＩＢＡＮ＝０１である場合にはステップ７２０に移行し、Ｆ＿ＫＩＢＡＮ＝００である場合にはステップ７３５に移行する。
【００３２】
ステップ５２０において、Ｆ＿ＣＰＵ１がオン且つＦ＿ＣＰＵ２がオンの場合には、＋Ｂ電圧の補正方法を定めるためのフラグであるＦ＿ＨＯＳＥＩを「１１」とする（ステップ５３０）。Ｆ＿ＣＰＵ１とＦ＿ＣＰＵ２の少なくとも一方がオンではない場合には、Ｆ＿ＨＯＳＥＩを「００」とする（ステップ５３５）。
【００３３】
ステップ６２０において、Ｆ＿ＣＰＵ１がオンの場合には、Ｆ＿ＨＯＳＥＩを「１０」とする（ステップ６３０）。Ｆ＿ＣＰＵ１がオンではない場合には、Ｆ＿ＨＯＳＥＩを「００」とする（ステップ６３５）。
【００３４】
ステップ７２０において、Ｆ＿ＣＰＵ２がオンの場合には、Ｆ＿ＨＯＳＥＩを「０１」とする（ステップ７３０）。Ｆ＿ＣＰＵ２がオンではない場合には、Ｆ＿ＨＯＳＥＩを「００」とする（ステップ７３５）。
【００３５】
図６は、メインＣＰＵ１１が実行する、＋Ｂ電圧の補正処理フローである。イグニッションスイッチの状態が確認され（ステップ８００）、オン状態である場合にはステップ８１０に移行し、オフ状態である場合には本フローは終了する。本フローは、所定の周期で繰り返される。
【００３６】
ステップ８１０において、ポートＡＤ１を介してインジェクタＸの印加電圧として計測される＋Ｂ電圧値ＡＤ１が取得されるとともに、ポートＡＤ２を介してグランドＥ０１の浮き電圧値ＡＤ２が取得される。さらにまた、メインＣＰＵ１１のキャプチャ入力Ｐ２を介して、エンジン回転センサなどからエンジン回転数ＮＥ（Ｉ）が取得される。
【００３７】
ステップ８２０において、Ｆ＿ＨＯＳＥＩの値が確認される。Ｆ＿ＨＯＳＥＩの値に応じて、＋Ｂ電圧の補正方法を異ならせる。
【００３８】
ステップ８２０においてＦ＿ＨＯＳＥＩ＝００（ＯＴＨＥＲ）の場合には、サブ基板２０及び３０が取り付けられていないとして、又は、サブ基板２０又は３０が取り付けられていたとしてもサブＣＰＵ１又はサブＣＰＵ２が正常動作していないとして、＋Ｂ電圧の補正を実施しない。
【００３９】
したがって、ＥＣＵ１００は、サブ基板２０及び３０が取り付けられていない場合（すなわち、メイン基板１０のみ取り付けられている場合）、又は、サブ基板２０又は３０が取り付けられていたとしてもサブＣＰＵ１又はサブＣＰＵ２が正常動作していない場合、ステップ８１０において計測された＋Ｂ電圧値ＡＤ１及びエンジン回転数ＮＥ（Ｉ）に応じて（＋Ｂ電圧の補正をせずにそのまま）、＋Ｂ電圧値ＡＤ１及びエンジン回転数ＮＥ（Ｉ）とインジェクタＸの通電時間との関係を定めるマップや演算式に従って、インジェクタＸの通電時間を変化させる。
【００４０】
ステップ８２０においてＦ＿ＨＯＳＥＩ＝１１の場合には、サブ基板２０及び３０が共に取り付けられているとともにサブＣＰＵ１及びサブＣＰＵ２が共に正常動作しているとして、『ＡＤ２Ｈ１１＝ＡＤ２−ＡＤ２００』が演算される（ステップ８３０）。ここで、ＡＤ２００は、サブ基板２０及び３０が取り付けられていない場合にポートＡＤ２を介して検出されたグランドＥ０１の浮き電圧値ＡＤ２である。ＡＤ２００は、サブ基板２０及び３０が取り付けられていない状態で予め検出され、メモリ等に記憶されている。したがって、ＡＤ２とＡＤ２００の差分であるＡＤ２Ｈ１１は、サブ基板２０及び３０が接続された場合に発生するグランドＥ０１の浮き電圧の変動量に相当する。ステップ８３０によって演算されたＡＤ２Ｈ１１は、ステップ８１０においてＡＤ１及びＡＤ２が取得された時のＮＥ（Ｉ）とともに、ＮＥ（Ｉ）毎にメモリに格納される（ステップ８３０）。すなわち、サブ基板２０及び３０が取付けられている場合にＮＥ（Ｉ）に相当する回転数において発生するグランドＥ０１の浮き電圧の変動量ＡＤ２Ｈ１１がメモリに格納される。
【００４１】
ここで、ステップ８１０において計測された＋Ｂ電圧値ＡＤ１から変動量ＡＤ２Ｈ１１を引くことによって、サブ基板２０及び３０がグランドＥ０１に取り付けられたことにより変動量ＡＤ２Ｈ１１増加した＋Ｂ電圧値ＡＤ１を精度よく補正することができる。したがって、ＥＣＵ１００は、サブ基板２０及び３０が取り付けられるとともにサブＣＰＵ１及びサブＣＰＵ２が共に正常動作している場合、ステップ８１０において計測された＋Ｂ電圧値ＡＤ１（ステップ８３０において演算されたＡＤ２Ｈ１１の反映値）及びエンジン回転数ＮＥ（Ｉ）に応じて、上記の＋Ｂ電圧の補正をしない場合と同じマップや演算式に従って、インジェクタＸの通電時間を変化させる。
【００４２】
ステップ８２０においてＦ＿ＨＯＳＥＩ＝１０の場合には、サブ基板２０のみが取り付けられているとともにサブＣＰＵ１は正常動作しているとして、『ＡＤ２Ｈ１０＝ＡＤ２−ＡＤ２００』が演算される（ステップ９３０）。したがって、ＡＤ２とＡＤ２００の差分であるＡＤ２Ｈ１０は、サブ基板２０のみが接続された場合に発生するグランドＥ０１の浮き電圧の変動量に相当する。ステップ９３０によって演算されたＡＤ２Ｈ１０は、ステップ８１０においてＡＤ１及びＡＤ２が取得された時のＮＥ（Ｉ）とともに、ＮＥ（Ｉ）毎にメモリに格納される（ステップ９３０）。すなわち、サブ基板２０のみが取付けられている場合にＮＥ（Ｉ）に相当する回転数において発生するグランド浮き電圧の変動量ＡＤ２Ｈ１０がメモリに格納される。
【００４３】
ここで、ステップ８１０において計測された＋Ｂ電圧値ＡＤ１から変動量ＡＤ２Ｈ１０を引くことによって、サブ基板２０がグランドＥ０１に取り付けられたことにより変動量ＡＤ２Ｈ１０増加した＋Ｂ電圧値ＡＤ１を精度よく補正することができる。したがって、ＥＣＵ１００は、サブ基板２０のみが取り付けられているとともにサブＣＰＵ１が正常動作している場合、ステップ８１０において計測された＋Ｂ電圧値ＡＤ１（ステップ９３０において演算されたＡＤ２Ｈ１０の反映値）及びエンジン回転数ＮＥ（Ｉ）に応じて、上記の＋Ｂ電圧の補正をしない場合と同じマップや演算式に従って、インジェクタＸの通電時間を変化させる。
【００４４】
ステップ８２０においてＦ＿ＨＯＳＥＩ＝０１の場合には、サブ基板３０のみが取り付けられているとともにサブＣＰＵ２は正常動作しているとして、『ＡＤ２Ｈ０１＝ＡＤ２−ＡＤ２００』が演算される（ステップ１０３０）。したがって、ＡＤ２とＡＤ２００の差分であるＡＤ２Ｈ０１は、サブ基板３０のみが接続された場合に発生するグランドＥ０１の浮き電圧の変動量に相当する。ステップ１０３０によって演算されたＡＤ２Ｈ０１は、ステップ８１０においてＡＤ１及びＡＤ２が取得された時のＮＥ（Ｉ）とともに、ＮＥ（Ｉ）毎にメモリに格納される（ステップ１０３０）。すなわち、追加基板３０のみが取付けられている場合にＮＥ（Ｉ）に相当する回転数において発生するグランド浮き電圧の変動量ＡＤ２Ｈ０１がメモリに格納される。
【００４５】
ここで、ステップ８１０において計測された＋Ｂ電圧値ＡＤ１から変動量ＡＤ２Ｈ０１を引くことによって、サブ基板３０がグランドＥ０１に取り付けられたことにより変動量ＡＤ２Ｈ０１増加した＋Ｂ電圧値ＡＤ１を精度よく補正することができる。したがって、ＥＣＵ１００は、サブ基板３０のみが取り付けられているとともにサブＣＰＵ２が正常動作している場合、ステップ８１０において計測された＋Ｂ電圧値ＡＤ１（ステップ１０３０において演算されたＡＤ２Ｈ０１の反映値）及びエンジン回転数ＮＥ（Ｉ）に応じて、上記の＋Ｂ電圧の補正をしない場合と同じマップや演算式に従って、インジェクタＸの通電時間を変化させる。
【００４６】
なお、メインＣＰＵ１１は、通信ライン６０を介してＮＥ（Ｉ）毎のグランドＥ０１の浮き電圧の変動量（あるいは、その変動量を反映した＋Ｂ電圧値ＡＤ１）をサブＣＰＵ１及びサブＣＰＵ２に送信する。サブＣＰＵ１及びサブＣＰＵ２は、その送信情報に基づいて、上記同様のマップや演算式に従って、インジェクタＹ及びインジェクタＺの通電時間を精度良く制御することができる。
【００４７】
したがって、上述の実施例によれば、メインＣＰＵ１１は、各サブ基板の取り付け有無状態に応じたエンジン回転毎のグランド浮き電圧の変動値を取得している。そのため、サブ基板の増減によってグランドに流れる電流が増減してグランド浮きが発生したとしても、精度良く＋Ｂ電圧値ＡＤ１の計測値の補正をすることができる。また、エンジン回転数の変動に応じてグランドＥ０１の浮き電圧の変動量が変化しても、精度良く＋Ｂ電圧値ＡＤ１の計測値の補正をすることができる。その結果、サブ基板の増減によって、共用グランドＥ０１に流れる電流が変動しても、自動的にその増減を検出し＋Ｂ電圧値の補正を自動的に実行することができるとともに、インジェクタの適合も自動的に継続実行することができる。
【００４８】
また、上述の実施例によれば、電源ハーネス５１等の配線の長さが変化しても、自動的に＋Ｂ電圧の補正を行うことができる。
【００４９】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【００５０】
例えば、上述の実施例では、本発明に係る電気負荷としてエンジンに燃料を噴射するためのインジェクタを具体例に挙げたが、インジェクタ以外の電気負荷でもよい。本発明は、電気負荷の印加電圧を計測するシステムであってアースの共用化によりグランド浮きが生じるものに適用すると効果的である。
【００５１】
また、サブ基板の数は、上述の実施例に限らず、増減してもよい。
【図面の簡単な説明】
【００５２】
【図１】本発明に係る車両用制御装置の一実施形態である。
【図２】メインＣＰＵ１１が実行する、サブ基板有無の確認処理フローである。
【図３】メインＣＰＵ１１が実行する、サブＣＰＵの正常動作の確認処理フローである。
【図４】メインＣＰＵ１１が実行する、接続されているサブ基板を特定する処理フローである。
【図５】メインＣＰＵ１１が実行する、インジェクタＸの印加電圧として計測される＋Ｂ電圧の補正方法を定めるためのフラグを決定する処理フローを示す。
【図６】メインＣＰＵ１１が実行する、＋Ｂ電圧の補正処理フローである。
【符号の説明】
【００５３】
１，２  サブＣＰＵ
１０  メイン基板
１１  メインＣＰＵ
１４  シャント抵抗
２０，３０  サブ基板
５０  グランドハーネス
５１  電源ハーネス
１００  ＥＣＵ
２００  バッテリ
Ｘ，Ｙ，Ｚ  インジェクタ
【図１】
2008121580.tif 000003
【図２】
2008121580.tif 000004
【図３】
2008121580.tif 000005
【図４】
2008121580.tif 000006
【図５】
2008121580.tif 000007
【図６】
2008121580.tif 000008