(57)【要約】      （修正有）【課題】演算装置に故障が発生し受信データの受信処理が出来ない状況になっても、受信処理を継続して実施することができる車両制御装置を提供する。【解決手段】車両制御装置１００は、複数の演算装置１１０〜１１２と受信装置１５０と受信監視部１２０と受信異常判定部１３０と受信処理再割り当て部１４０を備える。受信装置は、制御装置２００から、識別子が付与された受信データを受信する。複数の演算装置は、何れかの受信データを読み取るかが割り当てられており、割り当てられた識別子に応じて受信装置が受信したデータを読み取り、各種制御演算を実施する。受信監視部は、受信装置の受信データ処理情報を監視する。受信異常判定部は、受信監視部により監視された各受信データの監視情報を元に、各受信処理が異常か否かを判定する。受信処理再割り当て部は、受信異常判定部により異常と判定された受信処理を、複数の演算装置の何れかに再割り当てする。【選択図】図１
2018055517.tif 000002
【特許請求の範囲】
【請求項１】
他の制御装置からの受信データを複数の演算装置を用いて受信する車両制御装置であって、
前記車両制御装置は、
何れの受信データを何れの演算装置を用いて受信するかを割り当てる受信処理割り当て部と、
前記割り当て部によって割り当てられた受信データの受信処理を実施する際に受信データが演算装置により正しく受信処理されたか否かを監視する受信監視部と、
前期受信監視部によって得られた結果を元に受信処理の異常を判定する受信異常判定部と、
前記受信異常判定部によって得られた結果が異常の場合に前記受信処理を再割り当てする受信処理再割り当て部、を備えることを特徴とする車両制御装置。
【請求項２】
前記受信監視部は、受信データを正しく受信した回数もしくは受信データを正しく受信しなかった回数を、各受信データに付与された識別子毎に記憶することを特徴とする請求項１に記載の車両制御装置。
【請求項３】
前記受信監視部は、受信データの受信処理毎に処理されることを特徴とする請求項１に記載の車両制御装置。
【請求項４】
前記受信監視部は、任意の間隔で定周期処理されることを特徴とする請求項１に記載の車両制御装置。
【請求項５】
前記受信異常判定部は、前記受信監視部によって得られた回数が所定の閾値に達した場合に異常と判定することを特徴とする請求項２に記載の車両制御装置。
【請求項６】
前記受信異常判定部は、各受信データに付与された識別子毎に、閾値に対する異なった重み係数を有することを特徴とする請求項５に記載の車両制御装置。
【請求項７】
前記受信異常判定部は、受信処理のうち、処理優先度が高く、かつ前記監視部によって得られた回数が多いものほど優先的に受信異常判定処理を実施することを特徴とする請求項１に記載の車両制御装置。
【請求項８】
前記受信処理再割り当て部は、異常と判定された受信処理を、演算装置に割り振られた受信処理のうち最も優先度が低くかつ受信処理が異常と判断された回数が少ない受信処理を実施した演算装置に再割り当てすることを特徴とした請求項７に記載の車両制御装置。
【請求項９】
前記受信処理再割り当て部は、割り当てられた受信処理が異常と判定された回数を演算装置に割り当てられた識別子毎に記憶し、異常と判定された回数が所定の閾値に達した演算装置を除いて再割り当てすることを特徴とした請求項１に記載の車両制御装置。
【請求項１０】
前記受信処理再割り当て部は、受信データ処理と演算装置に事前に割り当てられた処理種別に基づき、処理を再割り当てする演算装置を限定することを特徴とした請求項１に記載の車両制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両制御装置に関する
【背景技術】
【０００２】
車両制御装置においては、演算装置を用い、例えば空燃比制御、燃料噴射制御、点火制御、各種診断など、様々な車両制御を行うことが広く知られている。その際、車両全体の統合的な制御を行うために、自車両制御装置以外からの情報を元に、制御処理を行う場合がある。その場合、Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ(以下ＣＡＮと表記)に代表されるような通信規格を用い、情報の受送信を行う。
【０００３】
車両制御装置におけるＣＡＮ通信の受送信処理には、定期的に行われるものと、割込み処理を用いることで、任意のタイミングで受送信を行う方法がある。ここで、割込み処理を用い受送信を行う場合において、例えばエンジンの回転数や車両速度のように、車両の状態に応じて増加減する情報を元に受送信させる場合がある。この場合、車両の状態により受送信の回数が増加減するため、受送信の割込み発生が多く発生した場合、より優先度の低い処理が実施できず、本来行われるべき処理が実施されない恐れがある。
【０００４】
上記のような処理未実施の発生を抑制させるために、複数の演算装置を車両制御装置に備え、各演算装置に対し演算処理を配置させることで、単体の演算装置の場合と比べ、各演算装置が実施すべき処理数を減らし、処理が実施されない状態の発生を抑制する方法が考えられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２７７１７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記特許文献１では、必要な演算装置利用率の大きいタスクが生じた際も、そのタスクが実施できる可能性を確保して、従来よりもリアルタイム性を向上させる技術について記載している。同文献においては、リアルタイムタスクの発生元のプログラムの必要計算量を計測し、タスクに課せられた時間制約と、そのタスクの発生元プログラムの必要計算量から、タスクが時間制約を満たすために必要な必要演算装置利用率を計算し、タスクを割り当てた際の演算装置利用率が最大となるよう演算装置を選択する。
【０００７】
上記特許文献１に記載の技術においては、演算装置が故障した場合を考慮していない。
そのため、演算装置の故障が発生した場合、演算処理ができない演算装置に対してもタスクが割り当てられ、割り当てられたタスク処理が未実施となり続ける可能性がある。
【０００８】
本発明は、上記のような課題に鑑みてなされたものであり、演算装置に故障が発生し受信データの受信処理が出来ない状況になったとしても、受信処理の異常を検知し、他の演算装置へ受信処理を再割り当てすることにより、受信データの受信処理を継続して実施することができる車両制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
以下の実施例において、詳細に説明するが、本発明の車両制御装置は他の制御装置からの受信データを複数の演算装置を用いて受信する。そして車両制御装置は、何れの受信データを何れの演算装置を用いて受信するかを割り当てる受信処理割り当て部と、前記割り当て部によって割り当てられた受信データの受信処理を実施する際に受信データが演算装置により正しく受信処理されたか否かを監視する受信監視部と、前期受信監視部によって得られた結果を元に受信処理の異常を判定する受信異常判定部と、前記受信異常判定部によって得られた結果が異常の場合に前記受信処理を再割り当てする受信処理再割り当て部、を備える。
【００１０】
また前記受信監視部は、受信データを正しく受信した回数もしくは受信データを正しく受信しなかった回数を、各受信データに付与された識別子毎に記憶することが望ましい。また前記受信監視部は、受信データの受信処理毎に処理されることが望ましい。また前記受信監視部は、任意の間隔で定周期処理される。また前記受信異常判定部は、前記受信監視部によって得られた回数が所定の閾値に達した場合に異常と判定することが望ましい。
【００１１】
また前記受信異常判定部は、各受信データに付与された識別子毎に、閾値に対する異なった重み係数を有することが望ましい。また前記受信異常判定部は、受信処理のうち、処理優先度が高く、かつ前記監視部によって得られた回数が多いものほど優先的に受信異常判定処理を実施することが望ましい。また前記受信処理再割り当て部は、異常と判定された受信処理を、演算装置に割り振られた受信処理のうち最も優先度が低くかつ受信処理が異常と判断された回数が少ない受信処理を実施した演算装置に再割り当てすることが望ましい。
【００１２】
また前記受信処理再割り当て部は、割り当てられた受信処理が異常と判定された回数を演算装置に割り当てられた識別子毎に記憶し、異常と判定された回数が所定の閾値に達した演算装置を除いて再割り当てすることが望ましい。また前記受信処理再割り当て部は、受信データ処理と演算装置に事前に割り当てられた処理種別に基づき、処理を再割り当てする演算装置を限定することが望ましい。
【発明の効果】
【００１３】
本発明に係る車両制御装置によれば、複数の演算装置のうち一部が故障した場合においても、継続して情報の受信処理を実施することができる。
【図面の簡単な説明】
【００１４】
【図１】実施例１に係る車両制御装置のシステム構成図である。
【図２】受信装置の詳細構成を示す図である。
【図３】受信監視部の詳細構成を示す図である。
【図４】受信監視部を説明するフローチャートである。
【図５】受信異常判定部を説明するフローチャートである。
【図６】受信処理再割り当て部を説明するフローチャートである。
【図７】実施例２において、受信処理再割り当て部の詳細構成を示す図である。
【図８】受信例２において、故障状態が発生していない演算装置に対してのみ再割り当て処理を説明するためのフローチャートである。
【図９】実施例３において、受信監視部の詳細構成を示す図である。
【図１０】実施例３において、受信処理再割り当て部の詳細を示す図である。
【図１１】実施例３において、受信処理に割り当てられたグループを処理可能な演算装置に対しての再割り当て処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の実施例について、図面を用いて説明する。
【実施例１】
【００１６】
図1は、本発明の実施例１に係る車両制御装置のシステム構成図である。車両制御装置１００は、制御装置２００からデータを受信する機器であり、複数の演算装置（ここでは１１０〜１１２）と受信装置１５０と受信監視部１２０と受信異常判定部１３０と受信処理再割り当て部１４０を備える。外部機器２００は、例えば車両制御装置１００を搭載している車両が備えるモータ制御コントローラなどの機器である。受信装置１５０は、外部機器２００との間の受信データを受信する。複数の演算装置１１０〜１１２は、受信データに付与された識別子に応じて何れかの演算装置が何れかの受信データを読み取るかが割り当てられており、割り当てられた識別子に応じて受信装置１５０が受信したデータを読み取り、車両制御装置１００に対する各種制御演算を実施する。受信監視部１２０は、受信装置１５０の受信データ処理情報を監視する。受信異常判定部１３０は、受信監視部１２０により監視された各受信データの監視情報を元に、各受信処理が異常か否かを判定する。受信処理再割り当て部１４０は、受信異常判定部１３０により異常と判定された受信処理を、複数の演算装置１１０〜１１２の何れかに再割り当てする。
【００１７】
図２は、受信装置１５０の詳細構成を示す図である。受信装置１５０は、受信データに付与された識別子（以下受信データ識別子）１５０１と、受信データ識別子１５０１毎の受信データバッファ１５０２と、受信データ読み取り状態１５０３と、受信データの重み係数１５０４の記憶部を備える。受信データバッファ１５０２と受信データ読み取り状態１５０３と重み係数１５０４は制御装置２００からのデータ受信時に更新される。ここで、受信データの読み取り状態１５０３とは、複数の演算装置１１０〜１１２が、受信データバッファ１５０２の情報を読み取る前に、受信データが上書きされたか否かを表すフラグなどが考えられ、本実施例では上書きされた状態を異常として１で表し、上書きされていない状態を正常として０で表している。
【００１８】
図３は、受信監視部１２０の詳細構成を示す図である。受信監視部１２０は、受信装置１５０から受信した受信データ識別子１５０１と、受信データ読み取り状態１５０３の状態をカウントした受信状態カウンタ１２０１と、各受信データ識別子１５０１の受信データ読み取り処理が割り当てられた演算装置１１０〜１１２の識別子１２０２と、受信データ識別子１５０１毎に予め設定された外部機器２００からの受信処理周期１２０２と、受信データ識別子毎の重み係数１２０３を格納する記憶部を備える。受信監視部１２０は制御装置２００からのデータ受信タイミングを基に起動され、受信監視部１２０から、受信状態カウンタ１２０１と受信データ識別子１５０１の情報を取得し、識別子毎に受信処理が異常か否かを判定する。
【００１９】
図４は受信監視部１２０の処理を説明するフローチャートである。  
以下図４の各ステップについて説明する。  
（図４：ステップＳ４１０〜Ｓ４６０）  
受信監視部１２０は、外部機器２００からのデータ受信毎、あるいはタイマ等に設定された任意の定周期間隔で起動する。受信監視処理を開始すると、受信装置から受信状態として受信データ識別子１５０１、受信データ読み取り状態１５０３を読み取る（Ｓ４１０）。そして受信データ識別子１５０１毎に、受信データの読み取り状態が正常か否かを判定し（Ｓ４２０）、異常でなければ受信状態カウンタ１２０１を減算する（Ｓ４３０）。異常であればさらに受信状態カウンタの値が閾値１未満かどうかを判定し（Ｓ４４０）、もし閾値１未満であれば受信状態カウンタ１２０１の値を閾値１で更新する（Ｓ４５０）。その後受信状態カウンタ１２０１を加算する（Ｓ４６０）。
【００２０】
このように受信データの読み取り状態が正常か否かを受信データ識別子１５０１毎に判定することにより、制御装置２００から受信した受信データを読み取る前に、本来受信処理を行うよう割り当てられた演算装置１１０〜１１２のうち何れかが、故障や継続的な高負荷等により正常な受信処理を実施できず、受信処理が滞っている状態を検知することができる。また、受信データ読み取り処理が異常でない場合をカウントすることにより、演算装置の処理負荷が低い状態が継続する可能性がある演算装置を判断することができる。これは、エンジンの回転数や車速などは、急加速、急制動を避けるために緩やかな変動となる場合が多く、エンジンの回転数や車速に基づくような受信割り込みが発生する車両システムの場合、もしエンジンの回転数や車速が低い状態であれば、ある一定期間連続してエンジンの回転数や車速に基づいた受信データの読み取り処理の負荷が低い状態が継続する可能性があるためである。さらに、受信監視処理を外部機器２００からのデータ受信毎に処理することにより、割り込み等により発生する不定期な受信処理に対しても、逐次異常監視処理を実施できる。あるいは、タイマ等による任意の定周期間隔で起動することによって、受信処理が頻発する通信状態の場合に、異常監視処理による演算装置の処理負荷を抑制しつつ、異常監視処理を実施できる。
【００２１】
図５は、受信異常判定部１３０の処理を説明するフローチャートである。  
以下、図５の各ステップについて説明する。  
（図５：ステップＳ５１０〜Ｓ５３０、Ｓ６００）  
受信異常判定部１３０は、受信監視部１２０より受信データ識別子１５０１と受信状態カウンタ１２０１の値と重み係数１２０３を読み取る（Ｓ５１０）。そして最も処理優先度の高く、かつ受信状態カウンタ数と重み係数１２０３の演算結果が大きい受信データ識別子を選択する（Ｓ５２０）。その後閾値２と、ステップＳ５２０で演算された受信データ識別子の受信状態カウンタ１２０１と重み係数１２０３演算結果を比較し（Ｓ５３０）、演算結果の値の方が大きければ、対象の識別子の受信処理を異常と判定し、受信処理再割り当て処理を実施する（Ｓ６００）。受信処理再割り当て処理の詳細は後述する。
【００２２】
このように、異常の判定に閾値を設けることにより、一回あたりの受信異常が制御にあまり影響を与えないような受信データの場合において、閾値２以下の受信処理異常による受信処理再割り当てを実施しないことにより、処理増加を抑制することができる。さらに、閾値２との比較に重み係数１２０３を含めることにより、例えば受信周期が長く、一回あたりの受信異常が制御に影響を与えやすい受信データの場合において、次回以降に優先的に受信処理再割り当て処理が実施可能となる。加えて、車両制御装置１００においてより処理優先度の高い受信データ識別子の受信データ読み取り処理を優先的に再割り当てすることが可能となり、制御上重要な受信データが未読み取りとなることを抑制することができる。
【００２３】
（図５：ステップＳ５４０）  
受信異常判定部１３０は、受信監視部１２０に格納された受信データ識別子１５０１全てについて受信異常判定が完了したか否かを確認する。完了していない場合はステップＳ５２０に戻って同様の処理を繰り返す。完了している場合は本フローチャートを終了する。
【００２４】
図６は、受信処理再割り当て部１４０の処理を説明するフローチャートである。
以下、図６の各ステップについて説明する。  
（図６：ステップＳ６１０）  
受信処理再割り当て部１４０は、受信異常判定部１３０から、受信処理が異常と判定された受信データ識別子１５０１と、受信状態カウンタ１２０１と、受信データ読み取り処理実施演算装置識別子１２０２を読み取り、最も優先度が低く、かつ異常と判定された受信データ読み取り処理が割り当てられた演算装置以外で最もカウンタの値の少ない識別子の受信処理が割り当てられている演算装置に、対象の受信データ識別子１５０１の受信処理を再割り当てする（Ｓ６１０）。
【００２５】
これにより、故障等が発生した演算装置１１０〜１１２のうち何れかに割り当てられた受信データ処理を、受信データ読み取り処理による処理負荷が低い他の演算装置に再割り当てすることが可能となる。また、ＣＡＮ等の通信プロトコルにおいては、受信データ識別子１５０１は受信データ処理間の処理優先度の意味も併せ持っている。そのため、一つの演算装置内に複数の受信データ読み取り処理が割り当てられている場合は、最も処理優先度の低い識別子の受信状態を読み取ることにより、演算装置に割り当てられた受信データ読み取り処理全体の負荷が低い演算装置を判断することができる。
【実施例２】
【００２６】
本発明の実施例２では、実施例１で説明した受信処理再割り当て部１４０と受信処理再割り当て処理（Ｓ６００）の第２具体例について説明する。その他の構成は概ね実施例１と同様であるため、以下では主に受信処理再割り当て部１４０の詳細構成とステップＳ６００の具体例について述べる。
【００２７】
図７は、本実施例２において、受信処理再割り当て部１４０の詳細構成を示す図である。受信処理再割り当て部１４０は、演算装置に割り当てられた識別子（以下、演算装置識別子）１４０１と、各演算装置識別子１４０１に発生した受信処理が異常と判定された回数の累積値（以下、異常発生累積回数）１４０２と、各演算装置識別子の故障状態判定結果（以下、故障状態）１４０３を格納する記憶部を備える。ここで演算装置識別子１４０１は、図３の受信データ読み取り処理実施演算装置識別子１２０２を重複無く並べたものと同じである。受信処理再割り当て部１４０は、受信異常判定部１３０から読み取った受信処理の異常判定結果から異常発生回数累積値１４０２を更新し、異常発生累積回数１４０２を元に故障状態１４０３を判定する。
【００２８】
（図８：ステップＳ６００、Ｓ６１１）  
受信処理再割り当て部１４０は受信処理再割り当て処理（Ｓ６００）を開始すると、受信異常判定部１３０から受信処理が異常と判断された受信データ識別子１５０１を読み取り、受信監視部１２０に格納された受信データ識別子１５０１と、受信データ読み取り処理実施演算装置識別子１２０２から、受信データ読み取り処理が実施された演算装置識別子１４０１を得たのち、該当する異常発生累積回数１４０２の情報を更新する（Ｓ６１１）。
【００２９】
（図８：ステップＳ６２１〜Ｓ６４１）  
受信処理再割り当て部１４０は、異常発生累積回数１４０２の値が、所定の閾値３に達したか否かを判定し（Ｓ６２１）、閾値３に達していれば、該当の演算装置の故障状態１４０３を更新する（Ｓ６３１）。その後、故障状態１４０３が異常な演算装置を除き、受信状態カウンタ１２０１が最も少ない識別子の受信処理が割り当てられている演算子に該当の識別子の受信処理を再割り当てする。これにより、受信処理で異常が頻出する演算装置を検出することができるため、再割り当て先の演算装置での受信データ未読み取りを抑制することができる。また、閾値３を故障判定値とすれば、故障が発生した演算装置を特定することが可能となる。
【実施例３】
【００３０】
本発明の実施例３では、実施例１で説明した受信監視部１２０と、処理再割り当て部１４０と受信処理再割り当て処理（Ｓ６００）の第３具体例について説明する。その他の構成は概ね実施例１と同様であるため、以下では主に受信監視部１２０と受信処理再割り当て部１４０の詳細構成とステップＳ６００の具体例について述べる。
【００３１】
図９は、本実施例３において、受信監視部１２０の詳細構成を示す図である。受信監視部１２０は、実施例１の受信監視部に格納された情報に加え、各受信データ識別子１５０１の処理種別を表す処理グループ１２０５が格納されている。
【００３２】
図１０は、本実施例３において、受信処理再割り当て部１４０の詳細構成を示す図である。受信処理再割り当て部１４０は、実施例１の受信処理再割り当て部に格納された情報に加え、演算装置識別子１４０１が処理可能な処理種別を表す割り当て可能処理グループ１４０４が格納されている。
【００３３】
（図１１：ステップＳ６１２）  
受信処理再割り当て部１４０は、受信処理再割り当て処理（Ｓ６００）を開始すると、受信異常判定部１３０から、受信処理が異常と判定された受信データ識別子１５０１と、受信状態カウンタ１２０１と、受信データ読み取り処理実施演算装置識別子１２０２を読み取る。あわせて、受信処理再割り当て部１４０から、受信処理が異常と判定された受信データ識別子１５０１の処理グループ１２０５を読み取る。そして、受信処理再割り当て部に格納された割り当て可能グループ１４０４のうち、受信処理が異常と判定された受信データ識別子１５０１の処理グループが処理可能な演算識別子１４０１を抽出し、その中で最も優先度が低く、最もカウンタの値の少ない識別子の受信処理が割り当てられている演算装置に、対象の受信データ識別子１５０１の受信処理を再割り当てする（Ｓ６１２）。これにより、例えば機能安全ＩＳＯ２６２６２等の適用により、各受信データ読み取り処理を実施可能な演算装置に制約がある場合においても、演算装置と受信処理の処理種別を適合するよう選択することで、制約を満足した処理の再割り当てが可能となる。
【符号の説明】
【００３４】
１００：車両制御装置、１１０：演算装置１、１１１：演算装置２、１１２：演算装置 ｎ、１２０：受信監視部、１３０：受信異常判定部、１４０：受信処理再割り当て部、１５０：受信装置、２００：制御装置。
【図１】
2018055517.tif 000003
【図２】
2018055517.tif 000004
【図３】
2018055517.tif 000005
【図４】
2018055517.tif 000006
【図５】
2018055517.tif 000007
【図６】
2018055517.tif 000008
【図７】
2018055517.tif 000009
【図８】
2018055517.tif 000010
【図９】
2018055517.tif 000011
【図１０】
2018055517.tif 000012
【図１１】
2018055517.tif 000013