説明

電子制御装置

【課題】第1のマイコンの異常を第2のマイコンにより確実に監視することが出来る電子制御装置を提供する。
【解決手段】少なくとも2個のマイクロコンピュータを有し、第1のマイクロコンピュータ(3)が主に制御対象の制御を司り、第2のマイクロコンピュータ(4)が、主に第1のマイクロコンピュータ(3)の異常の監視を行なうように構成された電子制御装置であって、第1マイクロコンピュータ(3)は、自身が制御量の演算に用いるデータの少なくとも一部を、自身の演算リソースを用いずに第2のマイクロコンピュータ(4)に送信するように構成され、第2のマイクロコンピュータ(4)は、送信されたデータに基づいて第1のマイクロコンピュータ(3)の異常の有無を判断するように構成されている。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、マイクロコンピュータを複数備え、そのうちの一つのマイクロコンピュータにより他方のマイクロコンピュータの異常を監視するようにした電子制御装置に関するものである。
【背景技術】
【0002】
従来、いわゆるフェールセーフ強化のために、第1のマイクロコンピュータと、第2のマイクロコンピュータを備え(以下、マイクロコンピュータをマイコンと称する)、第1のマイコンが主に制御対象の制御を司り、第2のマイコンが主に第1のマイコン及び周辺回路の異常を監視するように構成され、或いは、第1のマイコンと第2のマイコンをほぼ同一機能・機種で構成し、相互に制御と異常の監視を行うように構成された電子制御装置がある(例えば、特許文献1参照)。この従来の電子制御装置に於いて、前述の監視は、両マイコンの通信機能を介して、チェックサム、若しくは所定の処理を行い、その答えをチェック、比較することにより行なわれている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第3835312号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載されている従来の装置は、第2のマイコンが第1のマイコンの動作(演算)を監視する構成であり、その監視の方法は、第1のマイコンの所定のRAM値とその反転値を第2のマイコンに送信し、チェックサムにより第1のマイコンの異常を監視し、又、第1のマイコンが所定の演算を行なったデータを第2のマイコンへ送信し、第2のマイコンがそのデータの正常、異常を判別するものである。しかし、特許文献1には、第1のマイコンから第2のマイコンへのデータ送信方法については全く言及されておらず、第1のマイコンの異常によって第1のマイコンから第2のマイコンに送信されるデータが正常と判別されるデータに固着されてしまうと、第2のマイコンによって第1のマイコンの異常を検出することが出来ないという問題があった。
【0005】
この発明は、従来の装置に於ける前述のような課題を解決するためになされたもので、第1のマイコンに異常が生じた場合でも、第1のマイコンから第2のマイコンに送信されるデータが正常と判断されるデータに固着されてしまうことのないマイコン間通信を実現し、第2のマイコンが第1のマイコンの異常を的確に監視することができる電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
この発明による電子制御装置は、制御対象に対する制御量の演算を主体とする第1のマイクロコンピュータと、前記第1のマイクロコンピュータに対する動作の監視を主体とする第2のマイクロコンピュータとを備え、前記演算に基づいて前記制御対象を制御するようにした電子制御装置であって、前記第1のマイクロコンピュータは、自身が前記制御量の演算に用いるデータの少なくとも一部を、自身の演算リソースを用いずに前記第2のマイクロコンピュータに送信するように構成され、前記第2のマイクロコンピュータは、前記送信されたデータに基づいて前記第1のマイクロコンピュータの異常の有無を判断するように構成されていることを特徴とするものである。
【発明の効果】
【0007】
この発明による電子制御装置によれば、第1のマイクロコンピュータは、自身が制御量の演算に用いるデータの少なくとも一部を自身の演算リソースを用いずに第2のマイクロコンピュータに送信するように構成され、第2のマイクロコンピュータは、送信されたデータに基づいて第1のマイクロコンピュータの異常の有無を判断するように構成されているので、第1のマイクロコンピュータに異常が発生した場合でも、第2のマイクロコンピュータにより第1のマイクロコンピュータの異常を確実に検出することが可能となる。
【図面の簡単な説明】
【0008】
【図1】この発明の実施の形態1による電子制御装置の全体構成を示すブロック図である。
【図2】この発明の実施の形態1による電子制御装置の動作を説明するフローチャートである。
【発明を実施するための形態】
【0009】
実施の形態1.
以下、この発明の実施の形態1による電子制御装置を図に基づいて説明する。この発明の実施の形態1による電子制御装置の全体構成を示すブロック図である。図1に於いて、この発明の実施の形態1による電子制御装置は、例えば車両の電子制御スロットルの制御装置として提供されたものであり、コントロールユニット(以下、ECUと称する)1と、アクチュエータ2と、センサ10とにより構成されている。
【0010】
アクチュエータ2は、例えば制御対象としてのスロットルを駆動してその開度を制御するように構成されている。ECU1は、電子制御装置による制御の中心をなすものであり、センサ10からの検出データ等の情報に基づき制御対象の制御量を算出し、その算出した制御量に基づいてアクチュエータ2を駆動する。
【0011】
センサ10は、例えばスロットルの開度を検出するセンサであり、スロットルの開度に応じたデータを制御対象の情報として出力する。ECU1は、主として、電源5と、センサ10からの情報を入力する入力インターフェース(以下、I/Fと称する)6と、第1のマイコン3と、第2のマイコン4と、制御対象であるアクチュエータ2を駆動するドライバ7とにより構成されている。
【0012】
前述のように構成されたECU1に於いて、第1のマイコン3と第2のマイコン4とを更に機能的に分解すると、夫々、以下のように複数の機能ブロックにより構成されている。即ち、第1のマイコン3は、演算の中心をなす第1の演算手段(以下、第1のCPUと称する)31と、第1の入力ポート32と、第1の出力ポート33と、不揮発性メモリとしての第1のROM34と、書き込み及び読み出し可能なメモリとしての第1のRAM35と、第1の通信ポート37と、通信コントローラ36とから構成されている。尚、第1のマイコン3を構成する前述の各機能ブロックは、アドレスバス若しくはデータバスとしての第1の接続バス38により相互に接続されている。
【0013】
一方、第2のマイコン4は、第1のマイコン3の構成に類似しており、第2の演算手段(以下、第2のCPUと称する)41と、第2の入力ポート42と、第2の出力ポート43と、不揮発性メモリとしての第2のROM44と、書き込み及び読み出し可能なメモリとしての第2のRAM45と、第2の通信ポート47と、これ等の機能ブロックを相互に接続するアドレスバス若しくはデータバスとしての第2の接続バス48とから構成されている。又、第1のマイコン3の異常を検出した場合に異常信号を出力する出力ライン9が設けられている。出力ライン9は、ドライバ7、及び第1のマイコン3に接続されている。
【0014】
次に第1のマイコン3の動作について説明する。センサ10からの情報を入力すると、第1のROM34に内蔵されたソフトウエアに従ってアクチュエータ2を駆動する制御量を第1のCPU31が演算する。その際、第1のRAM35からアクチュエータ2を駆動する制御量の演算に用いる所定のデータを読み出すと共に、演算の入力値と中間値と出力値とを第1のRAM35に記憶させる。制御量が決定されると第1の出力ポート33からその制御量が出力され、ドライバ7を制御し、アクチュエータ2を駆動する。第2のマイコン4との間で自己の監視のためではない通信をする必要がある場合、例えば、第2のマイコン4へ制御のための情報提供他を行う場合、第1の通信ポート37を使用するが、図示していない通信ポートを利用して、別途、データの授受を行うことがある。
【0015】
次に、第2のマイコン4の動作について説明する。センサ10からの情報を入力すると、第2のROM44に内蔵されたソフトウエアに従ってアクチュエータ2を駆動する制御量を第2のCPU41が演算する。その際、第2のRAM45から所定のデータの読み出すと共に、演算の入力値と中間値と出力値とを第2のRAM45に記憶させる。第2のCPU41の演算結果は、出力ライン9を介して第1のマイコン31に送信すると共に、ドライバ7に駆動の継続、停止の信号を出力する。この動作は、後述する第1のマイコン3の監視とは別に行われる。
【0016】
第2のマイコン4による第1のマイコン3の異常の監視に関しては、先ず、第2のマイコン4がマスターとなり、第1のマイコン3がスレーブとなって、第1のマイコン3の監視を行なうためのデータ通信を行う。第2のマイコン4の独自タイミングで、通信指示を第2の通信ポート47を介して第1のマイコン3へ送信する。この送信は第1のマイコン3の制御周期とは無関係に第2のマイコン4の独自の任意のタイミングで実行され、その通信指示は、第1のマイコン3の第1のRAM35に格納されている所定のアドレスのデータを引き出すためのものである。
【0017】
第2のマイコン4からの通信指示が第1のマイコン3の第1の通信ポート37に入力されると、通信コントローラ36が起動する。この通信コントローラ36は、第1のCPU31とは独立に処理できるコントローラであって、第2のマイコン4をマスターとし第1のマイコン3をスレーブとして動作する。例えば、通信コントローラ36は、DMAC(Direct Memory Access controller)のように、第1のCPU31とは独立して、データ
の読み出し、伝達ができる手段である。通信コントローラ36は、第2のマイコン4の通信指示を受けて起動され、第1のRAM35の所定のアドレスからデータを読み出し、そのデータを第1の通信ポート37から第2のマイコン4の第2の通信ポート47へ送信する。この通信は通信ライン8を介して行われる。通信ポート削減のためシリアル通信、例えばSPI(Serial Peripheral Interface)、SCI(Serial Communication Interface)を利用する。
【0018】
ここで、第1のマイコン3は、通信コントローラ36がデータを読み出す第1のRAM35の領域を、制御に用いる値を格納するRAMとして使用する。即ち、少なくとも、
第1のマイコン3の監視を行なうために第2のマイコン4に送信する値を格納するRAMとして第1のRAM35を使用する。例えば、DMACを用いて通信を行なう場合、DMACは第1のRAM35の予め定めたアドレス範囲のデータを第1のCPU31とは独立に送信する。このため、第1のマイコンは、例えば第1のマイコン31で行なう演算の入力値と中間値と出力値とを、DMACが読み出す第1のRAM35の予め定めたアドレス範囲に直接格納し、そのRAM値を読み出して制御に用いるように構成されている。
【0019】
このように構成することで、第1のマイコン3は、自身のCPUリソースを用いずに、制御に用いている値そのものを第1のマイコン3の監視を行なうためのデータとして第2
のマイコン4に送信することができる。このため、第1のマイコン3の演算に異常、即ち、CPUリソースの故障が生じた場合でも、第2のマイコン4は制御に用いている値に基づいて確実に第1のマイコン3の故障監視を行なうことができる。
【0020】
第2のマイコン4は、第1のマイコン3から送信されたデータを自己の保有しているデータと比較して、所定範囲内に入っているかを検証し、又は、第2のマイコン4が第2のCPU41で演算した結果と比較検証することで、第1のマイコン3の正常、異常を判断する。第2のマイコン4は、第2のCPU41とは独立して動作する通信コントローラを備えていなくてもよく、第2のCPU41から直接指示して通信してもよい。勿論、第2のマイコン4にも通信コントローラが内蔵していてもよく、この場合はその通信コントローラを利用してもよい。
【0021】
第2のマイコン4による前述の比較検証により第1のマイコン3が異常であると判断した場合、第2のマイコン4は、異常信号を出力する。この異常信号は出力ライン9を介して、ドライバ7を停止したり、第1のマイコン3に送信したり、又は警報を行う。第1のマイコン3の異常の状況によっては、一過性のものであったり、故障の箇所が一部であったり、軽症であった等により、更には後の点検に使用できるため、異常判断を第2のマイコン4のみならず第1のマイコン3も第2のマイコン4からの異常信号を記憶しておくとよい。
【0022】
次に、第1のCPU31、第2のCPU41のソフトウエアによる動作の一例を図2のフローチャートに沿って説明する。図2は、この発明の実施の形態1による電子制御装置の動作を説明するフローチャートであり、(A)は第1のマイコン3に於ける第1のCPU31のフローチャートであり、(B)は第2のマイコン4に於ける第2のCPU41のフローチャートである。
【0023】
先ず、第1のCPU31の動作について説明する。図2の(A)に於いて、第1のCPU31に電源が投入されると、ステップS10に於いて第1の入力ポート32、第1の出力ポート33、及び第1のRAM35等を初期化する。このとき、通信コントローラ36(例えばDMAC)を、第2のCPU41からの通信指示で第1のRAM35の所定のアドレス範囲のデータを第2のCPU41に送信するように設定する。
【0024】
次にステップS11に進み、センサ10からの情報を入力I/F6、第1の入力ポート32を介して入力する。ステップS12では、その入力した情報に基づき制御対象に対する制御量を演算する。次に、ステップS13では、いわゆるフェールセーフを実行し、特に第1のCPU31以外の異常の有無をチェックする。次に、ステップS14に於いてフェールセーフの結果の反映、及び制御量を第1の出力ポート33を介してドライバ7へ出力する。
【0025】
次に、プS15では、例えばDMACにより構成されている通信コントローラ36が読み出す第1のRAM35の所定のアドレス範囲のRAMに第2のマイコン4に送信するデータを格納する。このデータとしては、例えば第1のマイコン3が制御対象に対する制御量の演算に用いているデータの少なくとも一部である。ここで、第1のCPU31は、第1のRAM35の前述の所定のアドレス範囲のRAMに格納した値を用いて制御量の演算を行なう。尚、前述のデータを格納するステップS15での処理は、図2の(A)のフローチャートに示すステップS15の位置でなくても、例えば制御量演算過程のものであれば、ステップS12の中で格納してもよいし、或いは、次のステップS17の処理に時間的に余裕のあるときに格納してもよい。
【0026】
ステップS15で第1のRAM35に格納したデータは、第1のCPU31の一連の処
理とは別に第2のマイコン4からの通信指示に基づいて通信コントローラ36を介して第2のマイコン4に送信される。この送信をステップS16の破線で示している。最後にステップS17に於いて、第1のCPU31が所定の制御周期になるようにT1時間待機する。待機時間T1が経過すればステップS11へ戻り、前述と同様の処理を繰り返す。
【0027】
次に第2のCPU41の動作について説明する。図2の(B)に於いて、第2のCPU41に電源が投入されると、ステップS20に於いて第2の入力ポート42、第2の出力ポート43、及び第2のRAM45等を初期化する。ステップS21では、センサ10からの情報を入力I/F6、第2の入力ポート42を介して入力する。次に、ステップS22に進み、第2のマイコン4として受け持っている出力、処理等のために演算処理を行なう。ステップS23では、その演算結果に基づき出力する。ここまでは通常の処理フローであるが、次の動作からは監視フローとなる。
【0028】
ステップS24に於いて、第2の通信ポート47から第2のCPU41のクロック(図示せず)に従って第1のマイコン3へ通信指示を出力する。この通信指示の出力が破線で示すステップS25である。第1のマイコン3は、第2のマイコン4からの通信指示に基づいて、前述のステップS16によりデータを第2のマイコン4へ返信する。
【0029】
次に、ステップS26に於いて、第2のマイコン4は、第1のマイコン3から返信されたデータを自己の保有しているデータと比較して、その返信されたデータが所定範囲内に入っているか否かを検証し、又は、第2のマイコン4が第2のCPU41にて演算した結果と前述の返信されたデータとを比較検証することで、返信されたデータが異常であるか否かを判断し、これにより第1のマイコン3が正常であるか異常であるかを判断する。
【0030】
ステップS26に於いてデータ異常と判断された場合(Y)、ステップS27に進んで異常処理を行う。この異常処理は、例えば、図1に示す出力ライン9に異常信号を出力すると共に、第2のCPU41が異常を記憶する。
【0031】
以上のように、第2のマイコン4がマスター、第1のマイコン3がスレーブとなって通信を行ない、かつ、 通信コントローラ36によって第1のマイコン3自身のCPUリソ
ースを用いずに、第1のマイコン3が制御に用いているRAMのデータを第2のマイコン4に送信する。このため、第1のマイコン3の異常(CPUリソースの異常)が生じた場合でも、第2のマイコン4によって第1のマイコン3の故障を確実に検出することが出来る。
【0032】
以上、2個のマイコンが存在する構成について説明したが、第1のマイコンは複数あってもよい。この場合、第2のマイコンが複数の第1のマイコンに夫々、又は、同一の通信指示を行うことで同様な機能を有することができる。更に、第1のマイコン、第2のマイコンともに複数存在することも可能で、各第2のマイコンが各第1のマイコンを夫々担当して前述と同様の処理を行なうことで第1のマイコンの異常の有無を判断することができる。
【0033】
実施の形態2.
次に、この発明の実施の形態2による電子制御装置について説明する。実施の形態1では第1のマイコンの動作を第2のマイコンが監視する構成について説明したが、第1のマイコンと第2のマイコンが相互に相手の動作を監視することも可能である。電子制御装置の制御対象物に応じては、2つのマイコンを用い、各マイコンに制御機能を有するもの、或いは、冗長系を構成し、一方のマイコンが故障の場合、他方のマイコンで駆動を継続するようなシステムも多い。このようなシステムでは、2つのマイコンで相互に相手の動作を監視する構成が好適である。
【0034】
このような構成では、例えば第1のマイコンがマスター、第2のマイコンがスレーブとして動作する第1の通信手段を備え、第2のマイコンが実施の形態1と同様に自身のCPUリソースを用いずに第1のマイコンと通信を行い、また、第2のマイコンがマスター、第1のマイコンがスレーブとして動作する第2の通信手段を備え、第1のマイコンが実施の形態1と同様に自身のCPUリソースを用いずに第2のマイコンと通信を行うことで実現可能である。但し、この場合は、通信コントローラを第1のマイコンと第2のマイコンのそれぞれに保有している必要がある。
【0035】
尚、この発明は、その発明の範囲内に於いて、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【0036】
1 コントロールユニット(以下、ECUと称する)
2 アクチュエータ 3 、第1のマイクロコンピュータ
4 第2のマイクロコンピュータ 5 電源
6 入力インターフェース(I/F) 7 ドライバ
9 出力ライン 10 センサ
31 第1の演算手段(CPU) 32 第1の入力ポート
33 第1の出力ポート 34 第1のROM
35 第1のRAM 36 通信コントローラ
37 第1の通信ポート 38 第1の接続バス
41 第2の演算手段(CPU) 43 第2の出力ポート
44 第2のROM 45 第2のRAM47
第2の通信ポート 48 第2の接続バス

【特許請求の範囲】
【請求項1】
制御対象に対する制御量の演算を主体とする第1のマイクロコンピュータと、前記第1のマイクロコンピュータに対する動作の監視を主体とする第2のマイクロコンピュータとを備え、前記演算に基づいて前記制御対象を制御するようにした電子制御装置であって、
前記第1のマイクロコンピュータは、自身が前記制御量の演算に用いるデータの少なくとも一部を、自身の演算リソースを用いずに前記第2のマイクロコンピュータに送信するように構成され、
前記第2のマイクロコンピュータは、前記送信されたデータに基づいて前記第1のマイクロコンピュータの異常の有無を判断するように構成されている、
ことを特徴とする電子制御装置。
【請求項2】
前記第1のマイクロコンピュータは、前記第2マイクロコントローラをマスターとし前記第1のマイクロコントローラをスレーブとして動作する通信手段と、自身が前記制御量の演算に用いるデータの少なくとも一部を記憶するメモリを有し、
前記通信手段は、前記第2のマイクロコンピュータからの指示に基づいて、前記メモリに記憶された前記データの少なくとも一部を読み出して前記第1のマイクロコンピュータの演算リソースを介さずに前記第2のマイクロコンピュータに送信する、
ことを特徴とする請求項1に記載の電子制御装置。
【請求項3】
前記通信手段は、ダイレクト・メモリ・アクセス・コントローラにより構成されている、
ことを特徴とする請求項2に記載の電子制御装置。
【請求項4】
前記第2のマイクロコンピュータは、前記第1のマイクロコンピュータが異常であると判断したときは、異常信号を出力する、
ことを特徴とする請求項1乃至3のうちの何れか一項に記載の電子制御装置。
【請求項5】
前記第2のマイクロコンピュータは、前記第1のマイクロコンピュータが異常であると判断したときは、前記制御対象の駆動を停止させるととともに、異常信号を前記第1のマイクロコンピュータへ送信することを特徴とする請求項1乃至3のうちの何れか一項に記載の電子制御装置。
【請求項6】
前記第2のマイクロコンピュータは、前記第1のマイクロコンピュータに比較して機能的に下位の機種により構成されている、
ことを特徴とする請求項1乃至5のうちの何れか一項に記載の電子制御装置。
【請求項7】
前記第1のマイクロコンピュータは、前記第2のマイクロコンピュータの動作を監視するように構成されている、
ことを特徴とする請求項1乃至6のうちの何れか一項に記載の電子制御装置。

【図1】
image rotate

【図2】
image rotate


【公開番号】特開2013−89104(P2013−89104A)
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願番号】特願2011−230421(P2011−230421)
【出願日】平成23年10月20日(2011.10.20)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】