JP2013001141A - 情報処理装置、ソフト起動方法 - Google Patents
情報処理装置、ソフト起動方法 Download PDFInfo
- Publication number
- JP2013001141A JP2013001141A JP2011131010A JP2011131010A JP2013001141A JP 2013001141 A JP2013001141 A JP 2013001141A JP 2011131010 A JP2011131010 A JP 2011131010A JP 2011131010 A JP2011131010 A JP 2011131010A JP 2013001141 A JP2013001141 A JP 2013001141A
- Authority
- JP
- Japan
- Prior art keywords
- power supply
- application
- activated
- information processing
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】1つのECUに複数の制御アプリから共用される回路が搭載された際、制御アプリの起動条件に関係なく回路を保護可能な情報処理装置を提供すること。
【解決手段】IGオンにより起動する第1のアプリケーションと、+B電源により起動する第2のアプリケーションと、+B電源により作動して、前記第1アプリケーションが利用する第1の周辺機器及び前記第2アプリケーションが利用する第2の周辺機器500との共通のインタフェース400と、を有する情報処理装置であって、+B電源により作動する前記第1又は第2の周辺機器が、当該情報処理装置に出力する入力データを監視して前記周辺機器の故障を検出する、+B電源により起動する監視ソフト200、を有することを特徴とする。
【選択図】図3
【解決手段】IGオンにより起動する第1のアプリケーションと、+B電源により起動する第2のアプリケーションと、+B電源により作動して、前記第1アプリケーションが利用する第1の周辺機器及び前記第2アプリケーションが利用する第2の周辺機器500との共通のインタフェース400と、を有する情報処理装置であって、+B電源により作動する前記第1又は第2の周辺機器が、当該情報処理装置に出力する入力データを監視して前記周辺機器の故障を検出する、+B電源により起動する監視ソフト200、を有することを特徴とする。
【選択図】図3
Description
本発明は、複数のアプリケーションが起動可能な情報処理装置に関し、特に、アプリケーションが使用する周辺機器の故障を検出可能な情報処理装置に関する。
車載されている各種の装置は、電子制御ユニット(ECU:electronic control unit)により制御されている。ECUは、エンジンを制御するもの、ブレーキを制御するもの、ボディ系の機器を制御するもの、AV系統の機器を制御するもの等、数多く存在する。ところが、ECUの数が増大したため開発コストや搭載するために必要な車載スペースが増大することを無視できなくなってきた。このため、いくつかのECUの機能を1つのECUに機能統合する試みが知られている。
ところで、ECUが作動するためには電源が必要だが、各ECUが作動を開始する条件は必ずしも同じではない。例えば、走行に必要なエンジンECUはIGオンで作動を開始し(以下、このようなECUを「IG電源で作動する」という)、電子キーシステムのECUはIGオンの前でもバッテリが装着されていれば作動する(以下、このようなECUを「+B電源で作動する」という)。IG電源のECUと+B電源のECUを統合した場合、IG電源のECUの機能(アプリケーション)を常に起動させる必要はないので、複数のECUから統合された複数のアプリケーションを、電源の状態に応じて起動させることが考えられる(例えば、特許文献1参照。)。
特許文献1には、電源状態及び起動要件に基づいて各アプリケーションの動作要件の判定を行い、動作要件を満足したアプリケーションのみを起動するECUが開示されている。
しかしながら、特許文献1では、アプリケーションが使用する回路について考慮されていないという問題がある。
図1は、アプリケーションと回路の関係を説明する図の一例である。ECU1は制御アプリAにてセンサ・アクチュエータαを使用し、制御アプリBにてセンサ・アクチュエータβを使用する。ECU1はIG電源のECUであり、ECU1はIGオンにより作動を開始する。また、センサ・アクチュエータαはIGオン電源のセンサ・アクチュエータであり、センサ・アクチュエータβは+B電源のセンサ・アクチュエータである。
ここで、ハード的な対象であるセンサ・アクチュエータを制御する場合、ECUは特定の回路を必要とすることが多い。回路AはECU1に存在するので回路AもIGオンにより作動を開始する。これに対し、ECU2は+B電源のECUであり、ECU2及び回路Cはバッテリにより常時作動している。センサ・アクチュエータγは+B電源のセンサ・アクチュエータである。
また、各制御アプリは故障検出ソフトとセットで実行される。故障検出ソフトは、センサからの入力値がセンサの仕様範囲内に入るかを監視したり、アクチュエータの異常有無を監視して、回路を保護するソフトである。したがって、故障検出ソフトが起動していないと回路を保護することができない。
なお、ECU1では、回路AがIG電源であるのに対し、センサ・アクチュエータβは+B電源である。しかし、+B電源でセンサ・アクチュエータβが作動しても回路AがIGオンまで作動しない。このため、故障検出ソフトが起動していない状態でセンサ・アクチュエータβが故障しても、回路Aが損傷することはない。
次に、ECU1とECU2を1つのECUに機能統合したとする。図示するように、回路Aと回路Cが共に1つのECUに搭載される。統合後もセンサ・アクチュエータが作動する場合は、「制御アプリ+故障検出ソフト」と回路の作動条件は一致していなければならない。これにより、統合後も故障検出ソフトが回路を保護することができる。
ところで、図1のように機能を統合するのであれば、回路A,Cも統合した方がチップ数が少なくなりコスト低減しやすい。そこで、図2に示すように回路A,Cを回路Zに統合することが期待される。回路Zの作動条件をIGオンとすると、制御アプリBが+B電源で起動してしても回路Zを使用できないので、必然的に回路Zの作動条件は+B電源となる。
しかし、回路Zの作動条件を+Bとしてしまうと、「制御アプリB+故障検出ソフト」が作動していない状態で、センサ・アクチュエータβ及び回路Zが作動することになる。このため、センサ・アクチュエータβが故障した際に、制御アプリBと一体の故障検出ソフトが回路Zを保護できないという問題が生じる。特に、機能統合しているので、回路Zの故障により制御アプリA、Cもセンサ・アクチュエータαやγを使用できなくなる可能性が生じてしまう。
本発明は上記課題に鑑み、1つのECUに複数の制御アプリから共用される回路が搭載された際、制御アプリの起動条件に関係なく回路を保護可能な情報処理装置を提供することを目的とする。
上記課題に鑑み、本発明は、IGオンにより起動する第1のアプリケーションと、+B電源により起動する第2のアプリケーションと、+B電源により作動して、前記第1アプリケーションが利用する第1の周辺機器及び前記第2アプリケーションが利用する第2の周辺機器との共通のインタフェースと、を有する情報処理装置であって、+B電源により作動する前記第1又は第2の周辺機器が、当該情報処理装置に出力する入力データを監視して前記周辺機器の故障を検出する、+B電源により起動する監視ソフト、を有する。
1つのECUに複数の制御アプリから共用される回路が搭載された際、制御アプリの起動条件に関係なく回路を保護可能な情報処理装置を提供することを目的とする。
以下、本発明を実施するための形態について図面を参照しながら説明する。
図3(a)は、本実施形態の統合ECU(electronic control unit)100の概略を説明する図の一例である。各制御アプリ300(以下、区別する場合、制御アプリA〜Cという)はセンサ・アクチュエータ500(以下、区別する場合、センサ・アクチュエータα、β、γという)を利用して制御を行う。各制御アプリ300の起動条件は以下のようになっている。まず、制御アプリAとセンサ・アクチュエータαはIGオンにより作動を開始し、制御アプリCとセンサ・アクチュエータγは+B電源により作動を開始する。
図3(a)は、本実施形態の統合ECU(electronic control unit)100の概略を説明する図の一例である。各制御アプリ300(以下、区別する場合、制御アプリA〜Cという)はセンサ・アクチュエータ500(以下、区別する場合、センサ・アクチュエータα、β、γという)を利用して制御を行う。各制御アプリ300の起動条件は以下のようになっている。まず、制御アプリAとセンサ・アクチュエータαはIGオンにより作動を開始し、制御アプリCとセンサ・アクチュエータγは+B電源により作動を開始する。
これに対し、制御アプリBはIGオンにより起動し、センサ・アクチュエータβは+B電源により起動する。このため、制御アプリBが起動していない状態で、回路400及びセンサ・アクチュエータβが作動する状況が生じうる。
そこで、本実施形態の統合ECU100は、回路400の作動時に、制御アプリA〜Cに共通の故障検出ソフト200を起動させることを特徴の1つとする。すなわち、故障検出ソフト200は、回路400の作動中、常に作動している。こうすることで、センサ・アクチュエータβが仮に故障し、制御アプリBが起動していなくても故障検出ソフト200が起動しているので、回路400をセンサ・アクチュエータβから保護することができる。
なお、図3(a)は図2を踏襲した図であり、必ずしも制御アプリAとセンサ・アクチュエータαは必要ない点に注意されたい。図3(b)は統合ECU100における制御アプリの別の態様を説明する図の一例である。制御アプリB,C、回路400、及び、センサ・アクチュエータ500の動作条件は図3(a)と同様である。図3(b)では制御アプリBが起動していない状態で、センサ・アクチュエータβとγ、回路400及び故障検出ソフト200が+B電源で作動する。したがって、制御アプリAとセンサ・アクチュエータαの有無に関係なく、故障検出ソフト200が、センサ・アクチュエータβの故障から回路400を保護できるという点は変わりがない。
また、制御アプリBはセンサ・アクチュエータβを使用して制御を行うが、制御アプリBが起動していなくても、センサ・アクチュエータβが作動している必要があるのは、例えば次のような場合である。
・センサ・アクチュエータβの起動が遅く、制御アプリBが起動してからセンサ・アクチュエータβを起動したのでは制御アプリBの起動が遅れてしまう場合
・制御アプリCがセンサ・アクチュエータβを使用する場合(制御アプリBとCがセンサ・アクチュエータβを共有する場合)
〔構成例〕
図4は、統合ECU100が搭載された車載ネットワークの概略構成図の一例を示す。この車載ネットワークには、CAN(Controller Area Network)などの車載LANを介して接続された電源ECU11、統合ECU100、及び、スマートECU12等が接続されている。電源ECU11にはエンジンスイッチ16、ブレーキSW17、シフトポジションセンサ18、ACCリレー、IG1リレー及びIG2リレーが、スマートECU12には室内アンテナ19が、それぞれ接続されている。なお、この図は、統合ECU100への電源供給を図示するための図であり、これらのECU以外のECUがさらに接続されていることが一般的である。
・センサ・アクチュエータβの起動が遅く、制御アプリBが起動してからセンサ・アクチュエータβを起動したのでは制御アプリBの起動が遅れてしまう場合
・制御アプリCがセンサ・アクチュエータβを使用する場合(制御アプリBとCがセンサ・アクチュエータβを共有する場合)
〔構成例〕
図4は、統合ECU100が搭載された車載ネットワークの概略構成図の一例を示す。この車載ネットワークには、CAN(Controller Area Network)などの車載LANを介して接続された電源ECU11、統合ECU100、及び、スマートECU12等が接続されている。電源ECU11にはエンジンスイッチ16、ブレーキSW17、シフトポジションセンサ18、ACCリレー、IG1リレー及びIG2リレーが、スマートECU12には室内アンテナ19が、それぞれ接続されている。なお、この図は、統合ECU100への電源供給を図示するための図であり、これらのECU以外のECUがさらに接続されていることが一般的である。
エンジンスイッチ16は、押しボタン式のモーメンタリスイッチであり、内部から初期位置方向に弾性体による付勢力が与えられている。すなわち、乗員(以下、単に運転者という)がエンジンスイッチ16を押し下げるとエンジンスイッチ16はオン状態になり、運転者が指を離すと内蔵された弾性体の付勢力により初期位置に戻りオフとなる。
また、ブレーキSW17は、ブレーキペダルが初期位置よりも踏み込まれるとオンになり、運転者が踏力を減少させ初期位置まで戻されるとオフになるスイッチである。したがって、運転者がブレーキペダルを踏み込んでいる間だけ、ブレーキSW17から電源ECU11にオン信号が出力される。シフトポジションセンサ18は、シフトレバーの位置(P、N、D、1,2、R等)を検出するセンサである。
ACCリレーは、アクセサリー機器と呼ばれる機器(オーディオ類、ナビ、室内灯等)とバッテリ50との給電線をオン又はオフするリレーである。IG2リレー17は、エンジン始動に関係のない機器(メーター系、ワイパー、エアコンなど)とバッテリ50との給電線をオン又はオフするリレーである。IG1リレー16は、エンジン始動に必要な機器(イグニッションコイル、インジェクタなど)とバッテリ50との給電線をオン又はオフするリレーである。
スマートECU12は、室内アンテナ19から定期的にリクエスト電波を発信し、電子キー20が応答して送信したレスポンスキー電波に含まれるIDが予め登録されたIDと一致するか否かにより、電子キー20の認証が成立するか否かを判定する。認証が成立すると電源ECU11に通知するので、不図示のエンジンECUはエンジン始動が許可される。
電源ECU11、統合ECU100及びスマートECU12はバッテリ50と接続されている。図示した3つのECUはいずれも+B電源である。このため、エンジンスイッチ16のオン・オフに関係なく、バッテリ50が装着されていれば、電源ECU11、統合ECU100及びスマートECU12に電源が供給される。
また、シフトポジションをP(又はNでもよい)にセットした状態で、運転者がブレーキペダルを踏み込み、エンジンスイッチ16を1回押下することで、電源ECU11は、IG1リレーと不図示のSTリレーをオンにしてスタータモータを作動させる。これによりエンジンが始動するとエンジンECUが電源ECU11に完爆信号を出力するので、電源ECU11はACCリレー、IG1リレー及びIG2リレーをオンに維持する。
また、電気モータを動力の一部とする車両(HV車)、又は、電気モータを動力とする車両(EV車)の場合、電源ECU11は上記の運転者の操作を検出して、ACCリレー、IG1リレー及びIG2リレーをオンにすると共に、HV-ECUに起動信号を出力する。HV-ECUは、プログラムを読み出して初期処理や自己診断を実行し、起動可能な状態であると、Ready‐ON信号を電源ECU11に出力する。電源ECU11は、Ready‐ON信号を受信してReady‐ONモードになる。Ready‐ONモードになることは、IGオンと同様にACCリレー、IG1リレー及びIG2リレーがオンであることを意味する。統合ECU100は少なくともIG1リレー及びIG2リレーの少なくともいずれかのオンを検出することができる。以下、IGオンとReady‐ONを区別せずにIGオンとして説明する。
図5は、統合ECU100の概略構成図の一例を示す。統合ECU100はマイコン60とその他の回路とを有し、その他の回路は、例えば、ADC41,DAC42、CANコントローラ44、モータドライバ43、及び、電源回路45である。
マイコン60は、メインバス39に接続されたCPU31、RAM32、ROM33、INTC34、DMAC35、及び、バスコントローラ36を有する。また、マイコン60は、周辺バス40に接続されたTimer(以下、区別する場合Timer1、Timer0という)37、複数のI/O38を有する。これらのI/O38に上記の回路が接続されている。
CPU31は、シングルコア又はマルチコアのCPUである。または、ハードウェアマルチスレッド(HMT)型のCPUでもよい。CPU31はRAM32を作業メモリにしてプログラムを実行する。ROM33はフラッシュメモリなどの不揮発メモリであり、CPU31が実行するプログラムや静的なデータを記憶している。本実施形態ではプログラムに制御アプリA〜C、及び、故障検出ソフト200が含まれている。また、デバイスドライバやOSなどのプラットフォームも記憶されている。
DMAC35は、CPU31からの指示によりRAM32やROM33のデータをTimer37やI/O38に送信する。また、Timer37やI/O38がINTC34を介してCPU31に割り込みした際にCPU31から指示を受けて、Timer37やI/O38からデータを受け取り、RAM32に書き込む。
INTC34はIRQやその他の割り込み端子を介してTimer37やI/O38から入力された割り込み要求を、周辺機器の優先順位に基づき調停してCPU31に通知する。これによりCPU31は割り込みした周辺機器に応じて決まった処理を実行する。
バスコントローラ36は、メインバス39と周辺バス40との間のバス本数や周波数の違いを吸収して相互にデータを受け渡す。
周辺バス40には、実行速度の比較的おそい周辺回路が接続されており、Timer37は、例えばCPU31が設定した値をカウントし終わるとINTC34を介してCPU31に割り込みすることでCPU31に通知する。通知によりCPU31は例えば定期的に所定のプログラムを実行することができる。
そして、ADC41、DAC42、CANコントローラ44、及び、モータドライバ43は、それぞれが上述した回路400となりうる回路である。すなわち、ADC41には制御アプリAが使用するセンサA、制御アプリBが使用するセンサB、制御アプリCが使用するセンサC、が接続されている。DAC42には制御アプリAが使用するアクチュエータA、制御アプリBが使用するアクチュエータB、制御アプリCが使用するアクチュエータC、が接続されている。モータドライバ43には制御アプリAが使用するモータA、制御アプリBが使用するモータB、制御アプリCが使用するモータC、が接続されている。なお、CANコントローラ44にはCANバスが接続されるが、CANバスは制御アプリA〜Cに共通である。
ADC41は、センサA〜Cが検出したアナログ信号をデジタル信号に変換してI/O38に出力する。DAC42は、制御アプリA〜CがI/O38を介して出力したデジタル信号をアナログ信号に変換してアクチュエータA〜Cに出力する。モータドライバ43は、制御アプリA〜CがI/O38を介して出力したデジタル信号をモータ制御信号に変換してモータA〜Cに出力する。複数のセンサ、アクチュエータ又はモータが接続されている回路400は、例えばマルチプレクサにより選択的に信号を入出力できるようになっている。または、センサ、アクチュエータ又はモータ毎にチャネルを有していてよい。
CANコントローラはCANIDに基づく優先順位で時分割にCANフレームを送受信する通信装置である。+B電源の統合ECUでは、IGオフの間も通信のためCANコントローラに常に電源が供給される。
電源回路45は、IGオフの状態でもバッテリ50から電源供給を受けてマイコン駆動用の電圧・電流を生成する。例えば、バッテリ電圧が12Vなら例えば3.3〜5Vの電圧を生成する。電源回路45にはIGオンを検出して、IGオン又はIGオフに応じて電源を供給する回路を制御する。例えば、+B電源の回路に対しては、IGオンを検出するか否かに関係なく電源を供給する。IGオン電源の回路に対しては、IGオンを検出した場合にのみ電源を供給する。本実施形態では、一例としてADC41がIGオン電源であるとして説明する。
なお、電源回路45は、IGオン時は、ECU内の全ての回路を通常モードで動作させるために必要な大容量の電圧・電流を生成し、IGオフ時は、+B電源の回路400やマイコン60を省電力モードに保持するために必要な最小限の電圧・電流を生成する。
センサA〜C、アクチュエータA〜C及びモータA〜Cには、バッテリ50から常時、又は、IG1リレーとIG2リレーがオンになるとバッテリ50から電源が供給される。例えば、センサAにはIGオンにより電源が供給され、センサB,Cにはバッテリ50から常時、電源が供給されている。CANバスにはバッテリ50から常時、電源が供給される。
〔統合ECUの機能〕
図6は、統合ECU100の機能ブロック図の一例を示す。制御アプリAは制御手段Aを有し、制御アプリBは制御手段Bを有し、制御アプリCは制御手段Cを有する。また、統合ECU100は、制御アプリA〜Cに共通の故障検出ソフト200を有する。制御アプリA〜C、及び、故障検出ソフト200は独立したソフトウェアなので、リソースを使用するソフトウェアを管理する仕組みが存在することが好ましい。例えば、タスクスケジューラやディスパッチャなどと呼ばれる機能である。本実施形態では、この機能がプラットフォーム51により提供されるものとする。
図6は、統合ECU100の機能ブロック図の一例を示す。制御アプリAは制御手段Aを有し、制御アプリBは制御手段Bを有し、制御アプリCは制御手段Cを有する。また、統合ECU100は、制御アプリA〜Cに共通の故障検出ソフト200を有する。制御アプリA〜C、及び、故障検出ソフト200は独立したソフトウェアなので、リソースを使用するソフトウェアを管理する仕組みが存在することが好ましい。例えば、タスクスケジューラやディスパッチャなどと呼ばれる機能である。本実施形態では、この機能がプラットフォーム51により提供されるものとする。
各制御手段A〜C、及び、故障検出ソフト200は、予め決められたイベントが検出されたり、タイマの定期的な割り込み毎に、それぞれがいくつかのタスクとして起動する。例えば、制御手段A,BはIGオンにより生成される。監視部53は、ADC41の割り込みより生成されるが、バッテリ50の装着により生成されてもよい。制御手段Cはバッテリ50の装着により生成されるが、ADC41の割り込みより生成されてもよい。
各タスクは、自身の状態(入出力などによるデータを待っている実行待機状態、CPU31への割り当てを待っている実行可能状態、実行中の状態)や優先度を、プラットフォーム51を介してTCB(タスクコントロールブロック)に登録する。プラットフォーム51は、各タスクの優先度に応じて、実行可能状態のタスクからCPU31に割り当てるタスクを決定する。
例えば、監視部53は、ADC41がI/O38経由でCPU31に割り込みし、プラットフォーム51が監視部53の状態を高優先度の実行可能状態にすることで、CPU31により実行される。監視部53は、ADC41に対し後述するような処理を行う。監視部53は、ADC41の入力データに異常がないと判断すると、プラットフォーム51が提供するプロセス間通信、又は、共有メモリなどを介して、制御手段Cに入力データを出力する。制御手段A〜Cのうちどの制御手段にADC41の入力データを出力するかは(センサA〜Cのうちどのセンサのデータか)、ADC41が割り込み時にCPU31に通知している。
同様に、監視部53は、ADC41の入力データに異常があると判断すると、フェールセーフ部54のタスクを生成する。フェールセーフ部54は、後述するようなフェールセーフ処理を行う。
制御手段A〜Cは、本実施例の特徴部を説明するための付加的な機能なのでどのような機能を有していてもよい。しかし、制御手段Aは、センサAが検出しADC41が変換したデジタル信号を制御に使用し、制御手段Bは、センサBが検出しADC41が変換したデジタル信号を制御に使用し、制御手段Cは、センサCが検出しADC41が変換したデジタル信号を制御に使用する。
故障検出ソフト200は、制御アプリA〜Cに共通のソフトであり、ADC41をセンサA〜Cの故障から保護する。例えば、監視部53は、以下のような監視を行う。
・ADC41がデジタル信号を変換した際、センサA〜Cの仕様範囲に収まっているか否かを検査する。センサA〜C毎に出力する仕様上の電圧範囲が異なる場合、センサA〜C毎に仕様範囲に収まっているか否かを検査する。
・ADC41が変換したデジタル信号を経時的に監視して安定しているか否かを検査する(過去の数個の値の差の合計が所定範囲を超えて変動しないこと)。
・ADC41にセンサA〜Cの診断を要求し、異常があるか否かを検査する
また、フェールセーフ部54はセンサA〜Cの異常が検出された場合、以下のようなフェールセーフ処理を行う。
・センサA〜Cをリセットする
・センサA〜CとADC41の接続を個別にオフにする。
・センサA〜CとADC41を1つずつ接続し、AD変換するなどしてセンサA〜Cの仕様範囲にデジタル信号が含まれるか否かを等を判定する診断を行う。これにより、センサA〜Cのうち故障したセンサを特定する。
・ADC41がデジタル信号を変換した際、センサA〜Cの仕様範囲に収まっているか否かを検査する。センサA〜C毎に出力する仕様上の電圧範囲が異なる場合、センサA〜C毎に仕様範囲に収まっているか否かを検査する。
・ADC41が変換したデジタル信号を経時的に監視して安定しているか否かを検査する(過去の数個の値の差の合計が所定範囲を超えて変動しないこと)。
・ADC41にセンサA〜Cの診断を要求し、異常があるか否かを検査する
また、フェールセーフ部54はセンサA〜Cの異常が検出された場合、以下のようなフェールセーフ処理を行う。
・センサA〜Cをリセットする
・センサA〜CとADC41の接続を個別にオフにする。
・センサA〜CとADC41を1つずつ接続し、AD変換するなどしてセンサA〜Cの仕様範囲にデジタル信号が含まれるか否かを等を判定する診断を行う。これにより、センサA〜Cのうち故障したセンサを特定する。
なお、回路400が異なった場合、故障検出ソフト200が提供する機能も異なるので、マイコン60は回路に応じて異なる故障検出ソフト200を実行することが好ましい。すなわち、故障検出ソフトは回路の数だけ起動することができる。
〔動作手順〕
図7は、統合ECU100が動作する手順を示すシーケンス図の一例である。図7の手順は車両にバッテリ50が装着されることでスタートする。
図7は、統合ECU100が動作する手順を示すシーケンス図の一例である。図7の手順は車両にバッテリ50が装着されることでスタートする。
バッテリ50が装着されると、まず+B電源のセンサB、Cに電源が供給され作動する(S10)。また、バッテリ50が装着されると、電源回路45に+B電源が供給される(S20)。
電源回路45は+B電源により作動して、予め定められている回路であるADC41に電源を供給する(S30)。
ADC41に電源が供給されると、ADC41がリセットされ、ADC41が作動して自己診断などを行い、異常がなければCPU31に割り込みする(S40)。具体的には、ADC41が接続されたI/O38がINTC34に割り込み要求して、INTC34がCPU31に割り込む。
CPU31はADC41が接続されたI/O38からの割り込みにより予め決まった割り込みハンドラを実行し、この割り込みハンドラが検査検出ソフトを起動させる(S50)。これにより、ADC41は故障検出ソフト200により保護される。
また、CPU31はADC41からの割り込みにより又はバッテリ50の装着により制御アプリCを起動させる(S60)。なお、ADC41の作動後に故障検出ソフト200を起動させるのでなく、故障検出ソフト200をADC41よりも先に起動させてもよい。このような処理は、故障検出ソフト200の起動後にADC41を作動させることで実現できる。
このように、ADC41が起動している間は、必ず故障検出ソフト200が起動することで、故障検出ソフト200がADC41を保護することができる。
次に、運転者がIGオンすると、電源回路45はIGオンを検出する(S70)。また、IG電源のセンサAに電源が供給され起動する(S80)。
電源回路45はIGオンを検出すると、CPU31に割り込みする(S90)。具体的には、電源回路45がINTC34に割り込み要求して、INTC34がCPU31に割り込む。
CPU31はIGオンにより予め決まった割り込みハンドラを実行し、この割り込みハンドラが制御アプリA、Bを起動する(S100)。制御アプリA〜Cは、優先度やタイムスケジュールなどにより時分割に実行されるが、その間、共通に故障検出ソフト200を利用して、ADC41を保護する。
図8は、故障検出ソフト200の動作手順を示すフローチャート図の一例である。図8の手順は、ADC41により故障検出ソフト200の監視部53が生成されるとスタートする。監視部53は、ADC41が入力データをI/O38に出力すると実行状態となる。
まず、監視部53はセンサA〜Cのいずれが入力データを出力したかを判別する(S210)。ADC41は入力データをI/O38に出力する際にセンサA〜Cの識別信号をCPU31に入力するので、監視部53はこれによりセンサA〜Cを判別する。
次に、監視部53は入力データが仕様範囲に入っているか否かを判定する(S220)。仕様範囲は、センサA〜Cにより決まっているので、監視部53はセンサA〜C毎に仕様範囲に入っているか否かを判定する。
入力データが仕様範囲に入っている場合(S220のYes)、入力データを出力したセンサがセンサA〜Cのいずれであるかに応じて、入力データを制御手段A〜Cに送出する(S230)。
入力データが仕様範囲に入っていない場合(S220のNo)、センサA〜Cが故障している可能性があるので、監視部53はフェールセーフ部54を起動する(S240)。フェールセーフ部54は、仕様範囲に入らない入力データを出したセンサに再度のAD変換を要求し、仕様範囲に入るか否かを確認する。そして、故障している可能性が高いと判定すれば、該センサとADC41を遮断する。こうすることで、ADC41を故障したセンサから保護することができる。また、故障していないセンサとADC41は接続されたままなので、制御アプリはそれらのセンサの検出する信号を使用することができる。
<起動手順の変形例>
図7の手順では、ADC41が作動した後に故障検出ソフトが起動を開始したが、故障検出ソフトが起動するまでの間にセンサBが故障すると、故障検出ソフトがADC41を保護できないおそれがある。そこで、図9のような手順も有効である。
図7の手順では、ADC41が作動した後に故障検出ソフトが起動を開始したが、故障検出ソフトが起動するまでの間にセンサBが故障すると、故障検出ソフトがADC41を保護できないおそれがある。そこで、図9のような手順も有効である。
図9では、バッテリ50が装着され電源回路45に+B電源が供給されるまでは(S20)図7と同様である。
しかし、電源回路45は+B電源により起動しても、ADC41ではなくCPU31に故障検出ソフトの起動開始を要求するための割り込みを行う(S32)。
CPU31は電源回路45からの割り込みにより予め決まった割り込みハンドラを実行し、検査検出ソフトを起動する(S50)。また、故障検出ソフトは故障検出ソフトの起動が完了したことを電源回路45に通知する(S52)。
電源回路45はこの通知によりADC41に電源を供給する(S30)。このような手順とすることで、故障検出ソフトをADCの起動よりも必ず後にできるので、故障検出ソフトはセンサB、Cの故障からADCを確実に保護することができる。
〔アクチュエータやモータの場合〕
センサでなく、アクチュエータやモータの場合も処理手順は同様である。
図10は、統合ECU100の機能ブロック図の一例を示す。図10において図6と同一部の説明は省略する。統合ECU100は、制御アプリA〜Cに共通の故障検出ソフト200を有する。回路毎に故障の検出方法は異なることが一般的なので、故障検出ソフト200は、回路毎に用意されている。制御手段A〜Cは図6と同じものでもよいし、異なっていてもよい。
センサでなく、アクチュエータやモータの場合も処理手順は同様である。
図10は、統合ECU100の機能ブロック図の一例を示す。図10において図6と同一部の説明は省略する。統合ECU100は、制御アプリA〜Cに共通の故障検出ソフト200を有する。回路毎に故障の検出方法は異なることが一般的なので、故障検出ソフト200は、回路毎に用意されている。制御手段A〜Cは図6と同じものでもよいし、異なっていてもよい。
監視部53は、モータドライバ43の割り込み又はバッテリ50の装着により生成される。制御手段Cはバッテリ50の装着により生成されるが、モータドライバ43の割り込みより生成されてもよい。
監視部53は、モータドライバ43がI/O38経由でCPU31に割り込みし、CPU31が監視部53の状態を高優先度の実行可能状態にすることで、CPU31により実行される。監視部53は、例えば、以下のような監視を行う。
・モータドライバ43により検出されるモータ側の電圧や電流が仕様範囲に収まっているか否かを検査する。モータA〜C毎に検査することができる。
・モータドライバ43により検出されるモータ温度が所定値以下に収まっているか否かを検査する。モータA〜C毎に検査することができる。
・指示された回転数と実際の回転数がほぼ一定か否かを検査する
また、フェールセーフ部54はモータの異常が検出された場合、以下のようなフェールセーフ処理を行う。
・モータドライバ43とモータの接続を個別にオフにする。
・モータドライバ43に出力される回転数を一定値以下に制限する。
・モータドライバ43により検出されるモータ側の電圧や電流が仕様範囲に収まっているか否かを検査する。モータA〜C毎に検査することができる。
・モータドライバ43により検出されるモータ温度が所定値以下に収まっているか否かを検査する。モータA〜C毎に検査することができる。
・指示された回転数と実際の回転数がほぼ一定か否かを検査する
また、フェールセーフ部54はモータの異常が検出された場合、以下のようなフェールセーフ処理を行う。
・モータドライバ43とモータの接続を個別にオフにする。
・モータドライバ43に出力される回転数を一定値以下に制限する。
監視部53はモータドライバ43が起動している状態で起動するので、故障検出ソフト200は、回路がADC41の場合と同様に、モータドライバ43をモータの故障から保護することができる。
また、CANコントローラ44を回路400とみなしても、本実施形態の回路の保護方法は有効である。CANバスがショートなどして高電圧が印加されたような場合に、CANコントローラを保護すべき状況となる。CANバスとCANコントローラは、+B電源なので、IGオフでもバッテリにより作動している。一般には、CANコントローラは送信エラー回数と受信エラー回数をカウントし、所定値を超えるとバスオフすることができる。本実施例ではCANコントローラに対応した故障検出ソフトが、CANコントローラの通信状態を検出することでCANコントローラと同等以上にCANコントローラを保護することができる。
〔+B電源とIGオン電源以外の電源について〕
上記では、IGオン電源で起動する制御アプリにより使用されるが、+B電源で作動する回路400を、+B電源で作動するセンサ・アクチュエータ500の故障から保護する統合ECU100について説明した。しかし、+B電源とIG電源以外にも、同様の関係が生じる場合がある。
上記では、IGオン電源で起動する制御アプリにより使用されるが、+B電源で作動する回路400を、+B電源で作動するセンサ・アクチュエータ500の故障から保護する統合ECU100について説明した。しかし、+B電源とIG電源以外にも、同様の関係が生じる場合がある。
図11は、統合ECUの概略の構成例を説明する図の一例である。制御アプリAとセンサ・アクチュエータαはIGオンにより作動を開始し、制御アプリCとセンサ・アクチュエータγはACC電源により作動を開始する。制御アプリBはIGオンにより起動し、センサ・アクチュエータβはACC電源により作動を開始する。このため、制御アプリBが起動していない状態で、回路400及びセンサ・アクチュエータβが作動する状況が生じうる。
このような状況において、故障検出ソフト200はACC電源で起動することで、回路400をセンサ・アクチュエータβの故障から保護することができる。図11においてIGをACCにACCを+Bに置き換えた場合も同様に説明できる。
すなわち、本実施形態の情報処理装置は、回路400及びセンサ・アクチュエータ500が作動を開始する電源よりも、制御アプリが起動する電源の方が遅くオンにされる場合に有効である。
以上説明したように、本実施形態の統合ECU100は、機能統合に伴い統合された回路の作動時に、故障検出ソフト200を起動させることで、センサ・アクチュエータが仮に故障しても、回路をセンサ・アクチュエータから保護することができる。
50 バッテリ
60 マイコン
100 統合ECU
200 故障検出ソフト
300 制御アプリ
400 回路
500 センサ・アクチュエータ
60 マイコン
100 統合ECU
200 故障検出ソフト
300 制御アプリ
400 回路
500 センサ・アクチュエータ
Claims (8)
- IGオンにより起動する第1のアプリケーションと、
+B電源により起動する第2のアプリケーションと、
+B電源により作動して、前記第1アプリケーションが利用する第1の周辺機器及び前記第2アプリケーションが利用する第2の周辺機器との共通のインタフェースと、を有する情報処理装置であって、
+B電源により作動する前記第1又は第2の周辺機器が、当該情報処理装置に出力する入力データを監視して前記周辺機器の故障を検出する、+B電源により起動する監視ソフト、
を有する情報処理装置。 - 前記監視ソフトは、+B電源で作動する前記第1又は第2の周辺機器が、IGオンで起動する前記第1のアプリケーションへの入力データを監視する、
ことを特徴とする請求項1記載の情報処理装置。 - IGオンにより起動する第3のアプリケーションを有し、
前記第3のアプリケーションが利用する、IGオンにより作動する第3の周辺機器が前記インタフェースに接続されている、
ことを特徴とする請求項1又は2記載の情報処理装置。 - 前記故障検出ソフトは、前記インタフェースの作動開始により起動する、
ことを特徴とする請求項1〜3いずれか1項記載の情報処理装置。 - 前記故障検出ソフトは、前記インタフェースの作動開始よりも先に起動する、
ことを特徴とする請求項1〜3いずれか1項記載の情報処理装置。 - 前記故障検出ソフトは、前記インタフェースの数だけ起動する、ことを特徴とする請求項1〜5いずれか1項記載の情報処理装置。
- 第1のアプリケーションが利用する第1の周辺機器及び第2のアプリケーションが利用する第2の周辺機器の共通のインタフェースと接続するためのポートと、
IGオンにより起動する前記第1のアプリケーションと、
+B電源により起動する前記第2のアプリケーションと、を有する情報処理装置であって、
+B電源により作動する、前記第1又は第2の周辺機器が当該情報処理装置に出力する入力データを監視して前記周辺機器の故障を検出する、+B電源により起動する監視ソフト、
を有する情報処理装置。 - IGオンにより起動する第1のアプリケーションと、
+B電源により起動する第2のアプリケーションと、
+B電源により作動して、前記第1アプリケーションが利用する第1の周辺機器及び前記第2アプリケーションが利用する第2の周辺機器との共通のインタフェースと、を有する情報処理装置であって、
+B電源により作動する前記第1又は第2の周辺機器が、当該情報処理装置に出力する入力データを監視して、前記周辺機器の故障を検出する監視ソフトを起動させる、
ことを特徴とするソフト作動開始方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011131010A JP2013001141A (ja) | 2011-06-13 | 2011-06-13 | 情報処理装置、ソフト起動方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011131010A JP2013001141A (ja) | 2011-06-13 | 2011-06-13 | 情報処理装置、ソフト起動方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013001141A true JP2013001141A (ja) | 2013-01-07 |
Family
ID=47670182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011131010A Withdrawn JP2013001141A (ja) | 2011-06-13 | 2011-06-13 | 情報処理装置、ソフト起動方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013001141A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7497764B2 (ja) | 2017-07-19 | 2024-06-11 | 株式会社デンソー | 車両用制御装置 |
-
2011
- 2011-06-13 JP JP2011131010A patent/JP2013001141A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7497764B2 (ja) | 2017-07-19 | 2024-06-11 | 株式会社デンソー | 車両用制御装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2409230B1 (en) | Failure diagnostic system, electronic control unit for vehicle, failure diagnostic method | |
US20190340116A1 (en) | Shared backup unit and control system | |
CN111164577B (zh) | 车载电子控制装置及其异常时处理方法 | |
JP2010285001A (ja) | 電子制御システム、機能代行方法 | |
KR20060026884A (ko) | 프로세서 유닛의 적어도 2개의 작동 모드 사이의 전환 방법및 상응하는 프로세서 유닛 | |
US9690269B2 (en) | Controller and process monitoring method including monitoring of process execution sequence | |
WO2015045507A1 (ja) | 車両用制御装置 | |
JP5094777B2 (ja) | 車載用電子制御装置 | |
JP2011002993A (ja) | ウォッチドックタイマ監視装置、ウォッチドックタイマ監視方法 | |
JP2013143093A (ja) | 情報処理装置、情報処理システム | |
JP5928358B2 (ja) | 情報処理装置、監視装置、制御装置 | |
JP2013001141A (ja) | 情報処理装置、ソフト起動方法 | |
JP4039291B2 (ja) | 車両用制御装置 | |
JP2016143908A (ja) | 電子制御装置及び電子制御システム | |
JP4934113B2 (ja) | 制御装置及びコンピュータプログラム | |
JP2010113419A (ja) | マルチコア制御装置 | |
JP7300551B2 (ja) | 車両の人員保護手段を起動させるための制御装置および方法 | |
US10514970B2 (en) | Method of ensuring operation of calculator | |
WO2013073009A1 (ja) | マイコンシステム、監視マイコン | |
JP7359118B2 (ja) | 電子制御装置 | |
JP6349444B2 (ja) | 車両用制御装置 | |
JP2007283788A (ja) | 車両用電子制御装置 | |
JP2019191942A (ja) | 制御装置および機能検査方法 | |
JP2015112962A (ja) | 情報処理装置 | |
JP4375105B2 (ja) | マイクロコンピュータ監視装置の故障診断方法及び車両用電子制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140902 |