JP2022088070A - 中継装置 - Google Patents
中継装置 Download PDFInfo
- Publication number
- JP2022088070A JP2022088070A JP2020200311A JP2020200311A JP2022088070A JP 2022088070 A JP2022088070 A JP 2022088070A JP 2020200311 A JP2020200311 A JP 2020200311A JP 2020200311 A JP2020200311 A JP 2020200311A JP 2022088070 A JP2022088070 A JP 2022088070A
- Authority
- JP
- Japan
- Prior art keywords
- vehicle
- central controller
- driver
- control signal
- communication
- 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.)
- Pending
Links
- 230000006854 communication Effects 0.000 claims abstract description 120
- 238000004891 communication Methods 0.000 claims abstract description 120
- 238000000034 method Methods 0.000 claims abstract description 40
- 230000002159 abnormal effect Effects 0.000 claims abstract description 20
- 230000005856 abnormality Effects 0.000 claims abstract description 18
- 238000005259 measurement Methods 0.000 claims description 2
- 238000001514 detection method Methods 0.000 abstract description 14
- 238000012545 processing Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 18
- 230000002093 peripheral effect Effects 0.000 description 15
- 238000013507 mapping Methods 0.000 description 11
- 230000006399 behavior Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 101100167365 Caenorhabditis elegans cha-1 gene Proteins 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 101100220549 Mus musculus Chd1 gene Proteins 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】通信途絶が発生したりした場合でも速やかにフェイルセーフ動作が実行されるようにする。【解決手段】車載機器制御装置400は、中央コントローラ10から車載ネットワークCNを介して受信された制御信号を出力デバイス5に出力する制御部を備える。制御部は、ソフトウェア構成として、ミドルウェア層430と、デバイスドライバ層440とを備える。ミドルウェア層430は、特定の異常状態が検知された場合に、中央コントローラ10からの制御信号によらずに、あらかじめ定められた特定信号を前記車載デバイスに出力する異常処理を実行する。【選択図】図3
Description
ここに開示された技術は、車両に搭載される中継装置に関する技術分野に属する。
近年では、国家的に自動運転システムの開発が進められており、車両に備えられたアクチュエータのほぼ全てが電子制御されるようになっている。これらアクチュエータの制御を行う制御装置は、AUTOSAR(AUTomotive Open System ARchitecture)の規格に準拠するソフトウェア構造を有することが多い。
例えば、特許文献1には、ランタイム環境を介して接続された複数のAUTOSARソフトウェア要素を有するAUTOSARソフトウェアシステムに関し、AUTOSARソフトウェア要素をバイパスする方法が開示されている。また、特許文献2には、AUTOSARに準拠したソフトウェア構造において、通信ネットワークのデータ送信先における設定方法が示されている。
また、車載ネットワーク装置として、車両の各構成要素に対応するECU(Electronic Control Unit)によるネットワーク構成を廃して、車両全体の動作を統括するECUを設け、車体の各所に車両全体の動作を統括するEUCによりセンサやアクチュエータを制御する方法が採用され始めている。
しかしながら、上記の中央ECUを中心としたネットワークを構成した場合において、ネットワークの一部が失陥したときに、センサ等からの信号が中央ECUに送られなかったり、中央ECUからアクチュエータへの指令等が伝達されない恐れがある。例えば、中央ECUと、イグニッションスイッチとエンジンコントロールユニット(PCM)を接続するネットワークの一部で通信が失陥したときに、エンジンのオフができなくなるおそれがある。
ここに開示された技術は、斯かる点に鑑みてなされたものであり、その目的とするところは、中央コントローラとハブ装置との間の通信途絶や、相対的に緊急性の高い異常検知された場合においても、速やかにフェイルセーフ動作が実行されるようにすることにある。
前記課題を解決するために、ここに開示された技術では、車載ネットワークにおいて、中央コントローラと車載デバイスとの通信を中継する中継装置を対象として、前記中央コントローラから前記車載ネットワークを介して受信された制御信号を前記車載デバイスに出力する制御部を備え、前記制御部は、ソフトウェア構成として、ハードウェア抽象化機能とこれらのデバイスドライバを含むデバイスドライバ層と、前記デバイスドライバ層の上位に設けられ、前記車載ネットワークと前記デバイスドライバ層との間を中継して相互間の通信経路を設定するミドルウェア層と、を有し、前記ミドルウェア層は、前記特定の異常状態が検知された場合に、前記中央コントローラからの制御信号によらずに、あらかじめ定められた特定信号を前記車載デバイスに出力する異常処理を実行する、とした。
この態様によると、ミドルウェア層が、特定の異常状態が検知された場合に、中央コントローラからの制御信号によらずに、あらかじめ定められた特定信号を車載デバイスに出力する異常処理を実行する。これにより、特定の異常状態が検知された場合に、自動的にフェイルセーフ動作が実行されるので、中央コントローラからの処理判断を待つことなく、ただちに出力デバイスに安全方向の動作(フェイルセーフ動作)を実行させることができる。
上記中継装置において、前記ミドルウェア層は、前記中央コントローラから一定期間自機への受信信号が受信されないタイムアウトが発生した場合に、前記特定の異常状態が検知されたとしてもよい。
これにより、車載ネットワークにおいて中央コントローラと中継装置との間の通信が失陥した場合においても、タイムアウトの発生により検知することができる。これにより、中央コントローラと中継装置との間の通信が失陥した場合でも、速やかに安全方向の動作(フェイルセーフ動作)を実行させることができる。
上記中継装置において、前記車載デバイスは、センサデバイスとアクチュエータとを含み、前記制御部は、前記センサデバイスの測定データを前記車載ネットワークに出力し、前記中央コントローラからの前記制御信号を前記アクチュエータに出力し、前記ミドルウェア層は、前記センサデバイスから所定の閾値を逸脱する測定値が入力された場合に、特定の異常状態が検知されたとしてもよい。
これにより、中央コントローラの処理に基づくことなくセンサデバイスでの異常検知に基づく安全方向の動作(フェイルセーフ動作)を実行させることができる。
以上説明したように、ここに開示された技術によると、車載ネットワークの一部途絶のように異常状態が検知された場合に、速やかに安全方向の動作を実行させることができる。
以下、例示的な実施形態について、図面を参照しながら詳細に説明する。
<車両制御システム>
図1は車両制御システムの構成例を示す図である。
図1は車両制御システムの構成例を示す図である。
車両制御システムでは、車両全体の動作を統括する中央コントローラ10を中心とした車内のネットワーク(以下、車載ネットワークCNという)が構成されている。車載ネットワークCNの通信方式は特に限定されないが、例えば、CAN(Controller Area Network)やイーサネット(登録商標)の通信のプロトコルに準拠したネットワークで構成される。
車両制御システムでは、例えば、車両1を複数のゾーンに分け、各ゾーンにセンサやアクチュエータ等の電子機器(以下、車載機器20ともいう)を接続するためのハブ装置30が設けられている。ハブ装置30は、車載ネットワークCNを介して伝送される情報を中継する機能を有する。
図1の例では、ハブ装置30として、車両1のフロント位置にフロントハブ装置31、車両の両サイドのドア付近にそれぞれサイドハブ装置32を配置した例を示す。中央コントローラ10とフロントハブ装置31とは、車載ネットワークCNを構成する通信ケーブルCN1で接続される。中央コントローラ10と車両右サイドのサイドハブ装置32とは、車載ネットワークCNを構成する通信ケーブルCN2で接続される。中央コントローラ10と車両左サイドのサイドハブ装置32とは、車載ネットワークCNを構成する通信ケーブルCN3で接続される。
-車載機器-
車載機器20は、センサデバイス及び信号受信デバイスを含む入力デバイスと、アクチュエータを含む出力デバイスとを含む。本開示の対象となる入力デバイスおよび出力デバイスは、車両に搭載されうるデバイスであれば、特に限定されない。
車載機器20は、センサデバイス及び信号受信デバイスを含む入力デバイスと、アクチュエータを含む出力デバイスとを含む。本開示の対象となる入力デバイスおよび出力デバイスは、車両に搭載されうるデバイスであれば、特に限定されない。
具体的な図示は省略するが、入力デバイスは、例えば、車内外環境を撮影するためのカメラ、車外の障害物等を検知するための複数のレーダ、GPS(Global Positioning System:)を利用した車両位置センサ、車速センサ、加速度センサ、ヨーレートセンサ等の車両の挙動を検出する車両状態センサ、車両1の乗員の状態を取得する乗員状態センサ、運転者の運転操作を検出する運転操作センサ、キーレスセンサ、人感センサ等を含む。また、入力デバイスは、乗員による操作を検出するスイッチを含む。スイッチは、例えば、乗員が電動ドアを開閉するためのドア開閉スイッチ、電動パワーウィンドウを動作させるためのパワーウィンドウの開閉スイッチ、ウォッシャーレベルスイッチ、フードスイッチ等を含む。
具体的な図示は省略するが、アクチュエータは、駆動系のアクチュエータ、操舵系のアクチュエータ、制動系のアクチュエータなどを含む。駆動系のアクチュエータの例としては、エンジン、トランスミッション、モータが挙げられる。制動系のアクチュエータの例としては、ブレーキが挙げられる。操舵系のアクチュエータの例としては、ステアリングが挙げられる。また、アクチュエータは、例えば、サイドドアをロックするためのドアロック装置、電動でドアを開閉させるドア開閉装置、電動パワーウィンドウを開閉させるウィンドウ開閉装置、前照灯等の点灯を制御する点灯制御装置、エアバック装置、音響装置等を含む。
図1では、入力デバイス4として、フロントハブ装置31にイグニッションスイッチ41が接続され、各サイドハブ装置32に電動パワーウィンドウの開閉スイッチ42及び電動パワーウィンドウの挟み込みを検知する挟み込み検知部43が接続された例を示す。挟み込み検知部43は、センサデバイスの一例である。
また、図1では、出力デバイスとして、フロントハブ装置31にエンジンコントロールユニット51(以下、PCM51という)が接続され、各サイドハブ装置32にウィンドウ開閉装置53が接続された例を示す。ウィンドウ開閉装置53は、アクチュエータの一例である。
-中央コントローラ-
図2に示すように、中央コントローラ10は、CPU100と、メモリ160と、接続部170とを備える。中央コントローラ10は、単一のIC(Integrated Circuit)により構成されてもよいし、複数のICにより構成されてもよい。
図2に示すように、中央コントローラ10は、CPU100と、メモリ160と、接続部170とを備える。中央コントローラ10は、単一のIC(Integrated Circuit)により構成されてもよいし、複数のICにより構成されてもよい。
前述のとおり、中央コントローラ10は、中継装置としてのハブ装置30を介して車載機器20に接続される。なお、中央コントローラ10に接続されるハブ装置30の数は特に限定されない。また、中央コントローラ10と車載機器20との間に複数のハブ装置30が介在してもよい。すなわち、中央コントローラ10と車載機器20が複数のハブ装置30を介して接続されてもよい。
〔CPU〕
CPU100は、メモリ160からプログラムを読み出して実行することにより各種の処理をおこなう。具体的には、例えば、センサ等の入力デバイスで取得されたり、検出されたデータを読み取ったり、諸機能を実現するために各種の演算処理を行ったり、アクチュエータを制御するための制御信号を生成して出力する。CPU100は、マイクロコンピュータ(いわゆるマイコン)で実現されていてもよいし、SoC(System-on-Chip)で実現されてもよい。
CPU100は、メモリ160からプログラムを読み出して実行することにより各種の処理をおこなう。具体的には、例えば、センサ等の入力デバイスで取得されたり、検出されたデータを読み取ったり、諸機能を実現するために各種の演算処理を行ったり、アクチュエータを制御するための制御信号を生成して出力する。CPU100は、マイクロコンピュータ(いわゆるマイコン)で実現されていてもよいし、SoC(System-on-Chip)で実現されてもよい。
(ハードウェア)
CPU100は、ハードウェアの構成として、メモリ160に格納されたプログラムにしたがって各種の演算処理を実行する演算処理部を備える。
CPU100は、ハードウェアの構成として、メモリ160に格納されたプログラムにしたがって各種の演算処理を実行する演算処理部を備える。
接続部170は、複数の通信ポート(図示省略)を有し、前述の車載ネットワークCNを構成する通信ケーブルCN1~CN3が接続可能に構成されている。接続部170は、ゾーンECU40との双方向通信のためのフロントエンド回路としての機能を有し、例えば、アナログ/デジタル変換回路やドライバ回路/レシーバ回路等が内蔵される。
(ソフトウェア)
CPU100は、ソフトウェアの構成として、最上位のアプリケーション層110と、アプリケーション層110の下位にあるランタイム環境140と、ランタイム環境140の下位にあるデバイスドライバ層150とを有する。
CPU100は、ソフトウェアの構成として、最上位のアプリケーション層110と、アプリケーション層110の下位にあるランタイム環境140と、ランタイム環境140の下位にあるデバイスドライバ層150とを有する。
CPU100は、いわゆるAUTOSARに準拠したソフトウェア構造を採用してもよい。この場合、アプリケーション層110は、AUTOSARのアプリケーション層に対応し、例えば、1または複数のSWC(Software Component)モジュールで構成される。ランタイム環境140は、AUTOSARのRTEに相当する。そして、デバイスドライバ層150は、AUTOSARのComplex Driver及びMCAL(Microcontroller Abstraction Layer)を含むBSW(Basic Software)に相当する。
《アプリケーション層》
アプリケーション層110は、車載機器20に対する諸機能を実現するためのアプリケーションが実装されている。アプリケーションは、車外環境認識モジュール113と、運転操作認識モジュール114と、車両挙動推定モジュール115と、入力操作認識モジュール116と、周辺機器制御モジュール117と、走行制御モジュール120とを含む。
アプリケーション層110は、車載機器20に対する諸機能を実現するためのアプリケーションが実装されている。アプリケーションは、車外環境認識モジュール113と、運転操作認識モジュール114と、車両挙動推定モジュール115と、入力操作認識モジュール116と、周辺機器制御モジュール117と、走行制御モジュール120とを含む。
車外環境認識モジュール113は、カメラ、レーダ、位置センサ、車外通信部、及び、車両挙動推定モジュール115等の出力に基づいて、車両の外部環境を認識する。運転操作認識モジュール114は、運転操作センサの出力に基づいて車両に加えられる運転操作を認識する。車両挙動推定モジュール115は、車両状態センサの出力に基づいて車両の挙動(例えば速度や加速度やヨーレートなど)を推定する。
走行制御モジュール120は、車外環境認識モジュール113、運転操作認識モジュール114及び車両挙動推定モジュール115等の出力に基づいて、走行制御にかかわる出力デバイス5を制御するための制御信号を出力する。具体的に、走行制御モジュール120は、車両1の走行先となる目標経路を生成し、その目標経路に基づいて目標運動を決定し、目標運動を達成するための駆動力と制動力と操舵量である目標駆動力と目標制動力と目標操舵量をそれぞれ導出する。さらに、走行制御モジュール120は、決定された目標運動に基づいてアクチュエータを制御するための制御信号を生成して、ランタイム環境140に出力する。具体的に、走行制御モジュール120は、駆動系のアクチュエータに送信するための目標駆動力を示す駆動指令値、制動系のアクチュエータに送信するための目標制動力を示す制動指令値、及び、操舵系のアクチュエータに送信するための操目標操舵量を示す操舵指令値を生成し、ランタイム環境140に出力する。
《ランタイム環境》
ランタイム環境140は、アプリケーション層110とデバイスドライバ層150に実装されたソフトウェアとを抽象化して接続するように構成される。ランタイム環境140は、周知構成のものを用いることができる。
ランタイム環境140は、アプリケーション層110とデバイスドライバ層150に実装されたソフトウェアとを抽象化して接続するように構成される。ランタイム環境140は、周知構成のものを用いることができる。
《デバイスドライバ層》
デバイスドライバ層150には、例えば、オペレーティングシステムや、デバイスドライバが実装される。デバイスドライバは、車載ネットワークCNWの通信プロトコルに準拠した通信ドライバ(図示省略)を含む。例えば、車載ネットワークCNがCANに準拠したネットワークの場合、通信ドライバとしてCANドライバを設ける。デバイスドライバ層150に実装されるソフトウェアは、周知構成のものを用いることができる。
デバイスドライバ層150には、例えば、オペレーティングシステムや、デバイスドライバが実装される。デバイスドライバは、車載ネットワークCNWの通信プロトコルに準拠した通信ドライバ(図示省略)を含む。例えば、車載ネットワークCNがCANに準拠したネットワークの場合、通信ドライバとしてCANドライバを設ける。デバイスドライバ層150に実装されるソフトウェアは、周知構成のものを用いることができる。
〔メモリ〕
メモリ160は、記憶領域として、CPU100を動作させるためのプログラムが記憶されたコード領域と、CPU100での処理結果等のデータを記憶する書き換え可能なデータ領域とを備える。具体的に、コード領域には、前述のアプリケーション、ランタイム環境140、オペレーティングシステム及びデバイスドライバを動作させるためのプログラムが格納されている。
メモリ160は、記憶領域として、CPU100を動作させるためのプログラムが記憶されたコード領域と、CPU100での処理結果等のデータを記憶する書き換え可能なデータ領域とを備える。具体的に、コード領域には、前述のアプリケーション、ランタイム環境140、オペレーティングシステム及びデバイスドライバを動作させるためのプログラムが格納されている。
-車載機器制御装置-
車載機器制御装置400は、1または複数のハブ装置30に搭載される。すなわち、車載機器制御装置400は、すべてのハブ装置30に搭載されてもよいし、一部のハブ装置30に搭載されてもよい。
車載機器制御装置400は、1または複数のハブ装置30に搭載される。すなわち、車載機器制御装置400は、すべてのハブ装置30に搭載されてもよいし、一部のハブ装置30に搭載されてもよい。
図3及び図4は、車載機器制御装置400の構成例を示すブロック図である。車載機器制御装置400は、例えば、CPU450(プロセッサ)とメモリ460とにより構成される。本実施形態では、図3の車載機器制御装置400はフロントハブ装置31に搭載され、図4の車載機器制御装置400はサイドハブ32に搭載されているものとする。なお、以下の説明において、図3及び図4において、共通の構成について共通の符号を付しており、重複する説明や個別の説明を省略する場合がある。
〔CPU〕
図3及び図4に共通して、CPU450は、メモリ460からプログラム462を読み出して実行することにより各種の処理をおこなう。具体的に、CPU450は、例えば、入力デバイス4からの入力データ(例えば、センサデバイスで検出された検出データ)を読み取って中央コントローラ10に送信したり、中央コントローラ10からの信号を受信して出力デバイス5(例えば、アクチュエータ)を制御するための制御信号を生成して出力する。CPU450は、制御部の一例である。なお、CPU450の具体的な態様は、特に限定されない。例えば、マイクロコンピュータ(いわゆるマイコン)で実現されていてもよいし、SoC(System-on-Chip)で実現されてもよい。
図3及び図4に共通して、CPU450は、メモリ460からプログラム462を読み出して実行することにより各種の処理をおこなう。具体的に、CPU450は、例えば、入力デバイス4からの入力データ(例えば、センサデバイスで検出された検出データ)を読み取って中央コントローラ10に送信したり、中央コントローラ10からの信号を受信して出力デバイス5(例えば、アクチュエータ)を制御するための制御信号を生成して出力する。CPU450は、制御部の一例である。なお、CPU450の具体的な態様は、特に限定されない。例えば、マイクロコンピュータ(いわゆるマイコン)で実現されていてもよいし、SoC(System-on-Chip)で実現されてもよい。
《ハードウェア》
図3及び図4に共通して、CPU450は、ハードウェアの構成として、メモリ460に格納されたプログラムにしたがって各種の演算処理を実行する演算処理部と、ペリフェラル機能ユニット480とを備える。ここでいうペリフェラルとは、中央コントローラ10及び/またはハブ装置30と組み合わせて利用される車載機器20を指すものとする。
図3及び図4に共通して、CPU450は、ハードウェアの構成として、メモリ460に格納されたプログラムにしたがって各種の演算処理を実行する演算処理部と、ペリフェラル機能ユニット480とを備える。ここでいうペリフェラルとは、中央コントローラ10及び/またはハブ装置30と組み合わせて利用される車載機器20を指すものとする。
ペリフェラル機能ユニット480は、ペリフェラル、すなわち、車載機器20を機能させるための1または複数のペリフェラル機能部481を備える。
ペリフェラル機能部481には、例えば、アナログデジタルコンバータ481a(以下、ADC481aという)、デジタル入力部481b、デジタル出力部481c及びPWM制御部481dが含まれる。なお、ペリフェラル機能部481として、上記の481a~481dの一部が搭載されてもよいし、他の構成が含まれていてもよい。なお、以下において、ADC481a、デジタル入力部481b、デジタル出力部481c及びPWM制御部481dの各ペリフェラル機能を特に区別しないで説明する場合、単にペリフェラル機能部481と記載する。
ペリフェラル機能部481は、それぞれ、複数のチャネルを有する。各チャネルには、車載機器20の入出力部(例えば、I/O接続用のコネクタ)が接続できるように構成されている。図3では、上記チャネルとして、ADC481aに入力用のチャネルCHa1,CHa2、デジタル入力部481bに入力用のチャネルCHb1,CHb2、デジタル出力部481cに出力用のチャネルCHc1,CHc2、及び、PWM制御部481dに出力用のチャネルCHc1,CHc2がそれぞれ設けられている例を示している。なお、チャネル数は、2つに限定されず、3つ以上であってもよい。また、単一のペリフェラル機能部481に、入力用及び出力用の両方のチャネルが設けられていてもよい。
《ソフトウェア》
図3及び図4に共通して、CPU450は、ソフトウェアの構成として、ミドルウェア層430と、デバイスドライバ層440とを有する。なお、本開示の技術は、アプリケーション層がなくても動作が可能であるため、図3及び図4ではアプリケーション層を省いた構成としている。ただし、アプリケーション層を設けてもかまわない。
図3及び図4に共通して、CPU450は、ソフトウェアの構成として、ミドルウェア層430と、デバイスドライバ層440とを有する。なお、本開示の技術は、アプリケーション層がなくても動作が可能であるため、図3及び図4ではアプリケーション層を省いた構成としている。ただし、アプリケーション層を設けてもかまわない。
例えば、CPU450は、いわゆるAUTOSARに準拠したソフトウェア構造を採用してもよい。この場合、デバイスドライバ層440及びミドルウェア層430は、AUTOSARのBSW(Basic Software)に相当し、デバイスドライバ層440はAUTOSARのMCAL(Microcontroller Abstraction Layer)に相当する。ミドルウェア層をComplex Driverとして実装してもよい。なお、CPU450にアプリケーション層を実装する場合、例えば、AUTOSARのアプリケーション層に対応させた1または複数のSWC(Software Component)モジュール構成が採用できる。
デバイスドライバ層440には、ミドルウェア層430で処理されるソフトウェアのコマンドをハードウェア用のコマンドに変換するデバイスドライバユニット441が実装される。
デバイスドライバユニット441には、ペリフェラル機能ユニット480に含まれるペリフェラル機能部481毎のデバイスドライバが実装される。前述のとおり、図3及び図4の例では、ペリフェラル機能部481として、ADC481a、デジタル入力部481b、デジタル出力部481c及びPWM制御部481dが含まれる。そこで、デバイスドライバユニット441には、ADC481aのためのデバイスドライバであるADCドライバ441aと、デジタル入力部481b及びデジタル出力部481cのためのデバイスドライバであるDIOドライバ441bと、及びPWM制御部481dのためのデバイスドライバであるPWMドライバ441dとが含まれる。すなわち、ADCドライバ441aはADC481aに接続され、DIOドライバ441bはデジタル入力部481b及びデジタル出力部481cに接続され、PWMドライバ441dはPWM制御部481dに接続される。
また、デバイスドライバユニット441には、車載ネットワークCNと接続するための通信ドライバ441eが含まれる。通信ドライバ441eは、車載ネットワークCNの通信プロトコルに準拠したものとなる。例えば、車載ネットワークがCANの場合、通信ドライバ441eとしてCANドライバを設ける。なお、本開示の技術が適用できる車載ネットワークの通信プロトコルは、CANに限定されず、例えば、イーサネット等の他の通信プロトコルであってもよい。
デバイスドライバは、ハードウェア依存性のあるソフトウェアである。一般的に、デバイスドライバ層440には、ハードウェアに依存しないソフトウェア(例えば、オペレーティングシステム等)も実装されるが、本願発明との関連性が低いので、本実施形態では、図示及び説明を省略している。
ミドルウェア層430は、上位側に設けられた(例えば、アプリケーション層がある場合、そのアプリケーション層と接続するための)1または複数の第1通信パケット431と、デバイスドライバとデータをやり取りするための1または複数の第2通信パケット432と、車載ネットワークCNとデータをやり取りするための外部通信パケット433と含むルーティングモジュール434が実装される。
ここでは、第1通信パケット431として、IO_1,IO_2,…IO_X(Xは自然数)が実装されている例を示す。また、第2通信パケット432として、(1)ADCドライバ441aとデータをやり取りするためのADC_1,ADC_2,…ADC_L(Lは自然数)、(2)DIOドライバ441bとデータをやり取りするためのDI_1,DI_2,…DI_M(Mは自然数)及びDO_1,DO_2,…DO_N(Nは自然数)、(3)PWMドライバ441dとデータをやり取りするためのPWM_1,PWM_2,…PWN_Q(Qは自然数)が実装されている。外部通信パケット433として、SIG_A,SIG_B,SIG_Cが実装されている。なお、以下の説明では、便宜上、外部通信パケットSIG_A,SIG_B,SIG_Cをまとめて、外部通信パケット433という場合がある。
ここで、外部通信パケット433は、車載ネットワークCNにデータを転送するために、車載ネットワークCNに適合するようなパケット構成になっている。例えば、車載ネットワークCNがCANの場合、外部通信パケット433は、通信ドライバ441eを介して、中央コントローラ10や他のハブ装置30との間で、CAN通信プロトコルに準拠した通信ができるように構成されている。より具体的には、外部通信パケット433には、例えば、CAN通信の「標準フォーマット」または「拡張フォーマット」のデータフレームを作成するために、入力デバイス4から取得したデータのサイズ調整処理や、形式変換等のデータ加工処理が施されて格納される。また、外部通信パケット433では、CANバスを介して信号を受信した場合に、そのデータフレームから、出力デバイス5を動作させるために必要な情報を取り出すデータ取得処理をして、第1通信パケット431に伝送する。上記のサイズ調整処理、データ加工処理及び/又はデータ取得処理は、それぞれ、例えば、後述するコード領域461で定義されていてもよいし、後述するデータ領域465において、書き換え可能な形式等で保存されていてもよい。
また、具体的に図示はしないが、以下の接続関係がある。
通信パケットADC_1はADC481aのチャネルCHa1に、通信パケットADC_2はADC481aのチャネルCHa2にそれぞれ接続される。通信パケットDI_1はデジタル入力部481bのチャネルCHb1に、通信パケットDI_2はデジタル入力部481bのチャネルCHb2にそれぞれ接続される。通信パケットDO_1はデジタル出力部481cのチャネルCHc1に、通信パケットDO_2はデジタル出力部481cのチャネルCHc2にそれぞれ接続される。通信パケットPWM_1はPWM制御部481dのチャネルCHd1に、通信パケットPWM_2はPWM制御部481dのチャネルCHd2にそれぞれ接続される。
ルーティングモジュール434は、マッピングモジュールに基づいて、ルーティングモジュール434内の通信パケット同士の通信経路を生成する。個別の通信経路の生成例については、後ほど説明する。
なお、図示しないが、アプリケーション層を設ける場合に、そのアプリケーション層とルーティングモジュール434との間に、ランタイム環境(RTE)が実装されていてもよい。ランタイム環境は、アプリケーション層とデバイスドライバ層440に実装されたソフトウェアとを抽象化して接続するように構成される。
〔メモリ〕
図3及び図4に共通して、メモリ460は、記憶領域として、CPU450を動作させるためのプログラム462が記憶されたコード領域461と、CPU450での処理結果及びマッピングモジュール466及び判定モジュール468等のデータが記憶された書き換え可能なデータ領域465とを備える。
図3及び図4に共通して、メモリ460は、記憶領域として、CPU450を動作させるためのプログラム462が記憶されたコード領域461と、CPU450での処理結果及びマッピングモジュール466及び判定モジュール468等のデータが記憶された書き換え可能なデータ領域465とを備える。
《コード領域》
コード領域461には、例えば、車載機器制御装置400の設計段階において、あらかじめ作成されたプログラム462がコンパイルされて実装されている。例えば、図3のコード領域461には、フロントハブ装置31におけるルーティングモジュール434の基本的な枠組みや、デバイスドライバユニット441の各ドライバを構成するプログラム462が格納されている。同様に、例えば、図4のコード領域461には、サイドハブ装置32におけるルーティングモジュール434の基本的な枠組みや、デバイスドライバユニット441の各ドライバを構成するプログラム462が格納されている。なお、ハブ装置30にアプリケーション層を設ける場合、コード領域461には、そのアプリケーション層のアプリケーションを動作させるためのプログラムが格納される。
コード領域461には、例えば、車載機器制御装置400の設計段階において、あらかじめ作成されたプログラム462がコンパイルされて実装されている。例えば、図3のコード領域461には、フロントハブ装置31におけるルーティングモジュール434の基本的な枠組みや、デバイスドライバユニット441の各ドライバを構成するプログラム462が格納されている。同様に、例えば、図4のコード領域461には、サイドハブ装置32におけるルーティングモジュール434の基本的な枠組みや、デバイスドライバユニット441の各ドライバを構成するプログラム462が格納されている。なお、ハブ装置30にアプリケーション層を設ける場合、コード領域461には、そのアプリケーション層のアプリケーションを動作させるためのプログラムが格納される。
《データ領域》
前述のとおり、データ領域465には、マッピングモジュール466及び判定モジュール468を含むデータが格納されている。
前述のとおり、データ領域465には、マッピングモジュール466及び判定モジュール468を含むデータが格納されている。
マッピングモジュール466は、第1通信パケット431、第2通信パケット432及び/又は外部通信パケット433の相互間の接続関係を規定するモジュールである。
マッピングモジュール466は、特定の異常状態が確認されていない通常動作(以下「通常動作」という)中の処理(以下「通常処理」という)として、入力デバイス4から第2通信パケット432介して入力された入力データを、外部通信パケット433を介して通信ドライバ441eに出力する。また、中継処理において、中央コントローラ10や他のハブ装置30から外部通信パケット433を介して受信した受信データを、第2通信パケット432を介して、その受信データで制御する出力デバイス5が接続されたデバイスドライバユニット441に出力する。
一方で、マッピングモジュール466は、特定の異常状態が発見された場合における処理(以下「異常処理」という)として、あらかじめ定められた特定信号を、その特定信号での制御対象となる出力デバイス5が接続されたデバイスドライバユニット441に出力する。この異常処理は、中央コントローラ10や他のハブ装置30からの受信データの有無にかかわらず実行される。
なお、特定の異常状態の内容については、特に限定されない。例えば、特定の異常状態として、中央コントローラ10からハブ装置30までの通信経路が途絶されるといったように、中央コントローラ10との間で何らかの通信異常が発生することが例示される。また、入力デバイス4からの入力データが特定の閾値をオーバーするというように、入力デバイス4からの入力データに基づいて特定の異常状態が発見される場合がある。
〔車載機器制御装置の動作例(1)〕
次に、図3を用いて、車載機器制御装置400の動作の一例を説明する。前述のとおり、図3の車載機器制御装置400はフロントハブ装置31に搭載されているものとする。
次に、図3を用いて、車載機器制御装置400の動作の一例を説明する。前述のとおり、図3の車載機器制御装置400はフロントハブ装置31に搭載されているものとする。
なお、本動作例において、フロントハブ装置31の外部通信パケット433は、車載ネットワークCNを介して、中央コントローラ10との間で通信パケットを送受信できるように構成されている。
ここで、フロントハブ装置31では、所定の一定期間に中央コントローラ10から特定の受信信号が受信されない、いわゆるタイムアウト時に、外部通信パケットSIG_Cにタイムアウト値として、オン制御信号及びオフ制御信号と異なる値(例えば、「2」)が設定されるものとする。
なお、外部通信パケット433を用いた双方向通信(相互間のデータの送受信)については、周知技術が適用できる。具体的に、例えば、車載ネットワークをCAN通信とする場合、(1)データの有無にかかわらず通信パケットを周期的に送信すること、または、(2)所定のトリガに応じて通信パケットを送信することが行われる。外部通信パケット433は、上記(1),(2)の両方に対応することができ、そのようなパケット通信に対応可能な構成になっている。
まず、図3のフロントハブ装置31において、イグニッションスイッチ41がオン/オフされた際の処理について説明する。なお、イグニッションスイッチ41がオンされると中央コントローラ10から「1(オン制御信号)」が入力され、イグニッションスイッチ41がオフされると中央コントローラ10から「0(オフ制御信号)」が入力されるものとする。
通常動作において、運転者によってイグニッションスイッチ41がオン操作されたとする。そうすると、フロントハブ装置31では、そのオン操作信号が、デジタル入力部481bを介してDIOドライバ441bに入力され、通信パケットDI_1としてルーティングモジュール434に送信される。
そうすると、マッピングモジュール466が適用され、通信パケットIO_1を介して外部通信パケットSIG_Aに送信される。外部通信パケットSIG_Aは、通信ドライバ441eを介して中央コントローラ10の接続部170に送信される。
中央コントローラ10において、フロントハブ装置31からイグニッションスイッチ41のオン操作信号が受信されると、入力操作認識モジュール116に入力される。中央コントローラ10では、オン操作信号が示す操作情報に基づいて、PCM51をオン制御するためのオン制御信号を通信ケーブルCN1に出力する。
フロントハブ装置31において、PCM51のオン制御信号が受信されると、そのオン制御信号は、通信ドライバ441eを介して通信パケットSIG_Cに格納され、マッピングモジュール466が適用される。ここで、前述のとおり、オン制御信号として「1」が入力されるので、異常判定モジュールでは「TRUE」判定となる。そうすると、通信パケットSIG_Cは通信パケットIO_3を介して通信パケットDO_1に送信される。その後、通信パケットDO_1は、DIOドライバ441b及びデジタル出力部481cのチャネルCHc1を介して、PCM51に出力される。PCM51では、オン制御信号が受信されると、エンジンの始動処理が実行される。
イグニッションスイッチ41のオフ制御の場合についても、上記のイグニッションスイッチ41のオン制御の場合と同様の処理が実行される。具体的に、イグニッションスイッチ41がオフ操作されると、オン操作の場合と同様にして、フロントハブ装置31から中央コントローラ10にオフ操作信号が送信される。中央コントローラ10では、オフ操作信号を受信すると、PCM51をオン制御するためのオフ制御信号を通信ケーブルCN1に出力する。フロントハブ装置31では、前述のとおり、オフ制御信号として「0」が入力されので、異常判定モジュールでは「TRUE」判定となる。そうすると、外部通信パケットSIG_Cは通信パケットIO_3を介して通信パケットDO_1に送信され、PCM51に出力される。PCM51では、オフ制御信号が受信されると、エンジンの停止処理が実行される。
このように、通常動作では、フロントハブ装置31に接続されたイグニッションスイッチ41のオン/オフ操作信号が、中央コントローラ10に送信され、中央コントローラ10の制御に基づいてエンジンの始動/停止処理が実行される。
ここで、特定の異常状態として、エンジンの動作中に、中央コントローラ10とフロントハブ装置31との間を接続する通信ケーブルCN1が途絶したものとする。そうすると、イグニッションスイッチ41のオフ操作信号が中央コントローラ10に送信されなくなる。そして、所定の時間が経過してタイムアウトになると、外部通信パケットSIG_Cに、タイムアウト値「2」が設定される。
そうすると、異常判定モジュールにおいて、「FAULT」判定となり、中央コントローラ10からの制御信号によらずに、すなわち、中央コントローラ10からの制御信号の入力なしに、オフ制御信号を示すフェイルセーフ値としての「0」(エンジン停止指示信号)が外部通信パケットSIG_Cに設定される。この外部通信パケットSIG_Cは、通信パケットIO_3を介して通信パケットDO_1に送信され、PCM51に出力される。そして、PCM51では、中央コントローラ10からオフ制御信号が受信された場合と同様に、エンジンの停止処理が実行される。
以上のように、本実施形態によると、中央コントローラ10とハブ装置30との間において、通信途絶が発生した場合においても、中央コントローラ10の処理に基づくことなく異常検知(ここでは、タイムアウト)に基づくフェイルセーフ動作が実行されるようになっている。これにより、中央コントローラ10とハブ装置30との間の通信や、ハブ装置30間の通信が途絶した場合でも、速やかに安全方向の動作が実行され、主要機能が喪失されるのを防ぐことができる。さらに、データ領域の変更のみでフェイルセーフ処理が設定できるようにしているので、ソフトウェアの設計工程及び検証工程を簡素化することができ、ソフトウェアの開発工数を大幅に低減することができる。
〔車載機器制御装置の動作例(2)〕
次に、図4を用いて、車載機器制御装置400の動作の他の例を説明する。前述のとおり、図4の車載機器制御装置400はサイドハブ装置32に搭載されているものとする。
次に、図4を用いて、車載機器制御装置400の動作の他の例を説明する。前述のとおり、図4の車載機器制御装置400はサイドハブ装置32に搭載されているものとする。
なお、本動作例において、サイドハブ装置32の外部通信パケット433は、車載ネットワークCNを介して、中央コントローラ10との間で通信パケットを送受信できるように構成されている。
まず、図4のサイドハブ装置32において、電動ウィンドウの開閉スイッチ42が操作された際の処理について説明する。なお、開閉スイッチ42の操作に応じて、中央コントローラ10からウィンドウ開閉装置53の開閉制御信号が入力されるものとする。また、ここでは、初期状態として、電動ウィンドウは開状態にあるものとする。
通常動作において、運転者によって開閉スイッチ42の閉操作がされたとする。そうすると、サイドハブ装置32では、その閉操作信号がデジタル入力部481bを介してDIOドライバ441bに入力され、通信パケットDI_2としてルーティングモジュール434に送信される。
そうすると、マッピングモジュール466が適用され、通信パケットIO_2を介して外部通信パケットSIG_Bに送信される。外部通信パケットSIG_Bは、通信ドライバ441eを介して中央コントローラ10の接続部170に送信される。
中央コントローラ10において、サイドハブ装置32から電動ウィンドウの閉操作信号が受信されると、入力操作認識モジュール116に入力される。中央コントローラ10では、閉操作信号が示す操作情報に基づいて、電動ウィンドウを閉制御するための閉制御信号を通信ケーブルCN1に出力する。
サイドハブ装置32において、電動ウィンドウの閉制御信号が受信されると、その閉制御信号は、通信ドライバ441eを介して外部通信パケットSIG_Cに格納され、マッピングモジュール466が適用される。ここでは、異常判定がされていない、すなわち異常判定モジュールで「TRUE」判定となり、外部通信パケットSIG_Cは通信パケットIO_3を介して通信パケットDO_1に送信される。その後、通信パケットDO_1は、DIOドライバ441b及びデジタル出力部481cのチャネルCHc1を介して、ウィンドウ開閉装置53に出力される。ウィンドウ開閉装置53では、閉制御信号が受信されると、電動ウィンドウの閉動作処理が実行される。
挟み込み検知部43では、電動ウィンドウの開閉動作に伴う電動ウィンドウへの挟み込みがないかどうかを検知している。挟み込み検知部43での検知結果は、ADC481aを介してADCドライバ441aに入力され、通信パケットADC_1としてルーティングモジュール434に送信される。
そうすると、マッピングモジュール466が適用され、通信パケットIO_1を介して外部通信パケットSIG_Aに送信される。外部通信パケットSIG_Aは、通信ドライバ441eを介して中央コントローラ10の接続部170に送信される。
ここで、挟み込み検知部43での検知データに異常があった場合のように、人の安全にかかわるような相対的に優先度の高い特定の異常状態が検知された場合を想定する。このような場合に、中央コントローラ10に検知データを送信し、中央コントローラ10内で判定して、その判定結果に基づく制御信号を受信してから制御をするというのでは、処理が間に合わない場合がある。
そこで、本実施形態では、特定の異常状態が検知された場合として、例えば、あらかじめ設定された特定のセンサデバイスから所定の閾値を逸脱する測定値が入力された場合に、特定の異常状態が検知されたとして、中央コントローラ10からの制御信号によらずに、あらかじめ定められた特定信号を車載機器20に出力する異常処理を実行するようにしている。
例えば、ウィンドウ開閉装置53が中央コントローラ10からの制御を受けて、電動ウィンドウを閉動作させている途中で、挟み込み検知部43から所定の閾値PTHを超える値が検知される、すなわち、挟み込みが検知されたとする。
そうすると、異常判定モジュールにおいて、「FAULT」判定となり、中央コントローラからの制御信号によらずに、電動ウィンドウのフェイルセーフ設定としての「開制御指示」を示す「OPEN」がSIG_Cに設定される。この外部通信パケットSIG_Cは、通信パケットIO_3を介して通信パケットDO_1に送信され、ウィンドウ開閉装置53に出力される。そして、ウィンドウ開閉装置53では、中央コントローラ10から電動ウィンドウの開制御信号が受信された場合と同様に、電動ウィンドウの開動作処理が実行される。
以上のように、本実施形態によると、ハブ装置30に接続されたアクチュエータにおいて、中央コントローラ10の処理に基づくことなく異常検知(ここでは、挟み込み)に基づく安全方向の動作(フェイルセーフ動作)が実行されるようになっている。これにより、センサデバイスからの入力データを中央コントローラ10で判断して処理を行うのでは間に合わないような処理についても、所定のフェイルセーフ動作を実行させることができる。すなわち、電動ウィンドウの挟み込みに対して、ウィンドウを開操作させるという安全方向の動作を速やかに実行させることができる。さらに、データ領域の変更のみでフェイルセーフ処理が設定できるようにしているので、ソフトウェアの設計工程及び検証工程を簡素化することができ、ソフトウェアの開発工数を大幅に低減することができる。
ここに開示された技術は、前述の実施形態に限られるものではなく、請求の範囲の主旨を逸脱しない範囲で代用が可能である。また、前述の実施形態は単なる例示に過ぎず、本開示の範囲を限定的に解釈してはならない。本開示の範囲は請求の範囲によって定義され、請求の範囲の均等範囲に属する変形や変更は、全て本開示の範囲内のものである。
例えば、車載機器制御装置の動作例(2)では、異常判定モジュールは、単一のセンサデバイスからの入力情報に基づいて単一のアクチュエータについてのフェイルセーフ処理を行うようにしたが、これに限定されない。例えば、複数のセンサデバイスからの入力情報に基づいて、単一または複数のアクチュエータのフェイルセーフ処理を実行させるようにしてもよい。
ここに開示された技術は、中央コントローラを主導にした車両制御を構成する場合において非常に有用である。
20 車載機器(車載デバイス)
30 ハブ装置(制御部)
400 車載機器制御装置(中継装置)
430 ミドルウェア層
440 デバイスドライバ層
CN 車載ネットワーク
30 ハブ装置(制御部)
400 車載機器制御装置(中継装置)
430 ミドルウェア層
440 デバイスドライバ層
CN 車載ネットワーク
Claims (3)
- 車載ネットワークにおいて、中央コントローラと車載デバイスとの通信を中継する中継装置であって、
前記中央コントローラから前記車載ネットワークを介して受信された制御信号を前記車載デバイスに出力する制御部を備え、
前記制御部は、ソフトウェア構成として、
ハードウェア抽象化機能とこれらのデバイスドライバを含むデバイスドライバ層と、
前記デバイスドライバ層の上位に設けられ、前記車載ネットワークと前記デバイスドライバ層との間を中継して相互間の通信経路を設定するミドルウェア層と、を有し、
前記ミドルウェア層は、
特定の異常状態が検知された場合に、前記中央コントローラから受信される制御信号によらずに、あらかじめ定められた特定信号を前記車載デバイスに出力する異常処理を実行する、ことを特徴とする中継装置。 - 請求項1に記載の中継装置において、
前記ミドルウェア層は、前記中央コントローラから一定期間自機への受信信号が受信されないタイムアウトが発生した場合に、前記特定の異常状態が検知されたとする、ことを特徴とする中継装置。 - 請求項1に記載の中継装置において、
前記車載デバイスは、センサデバイスとアクチュエータとを含み、
前記制御部は、前記センサデバイスの測定データを前記車載ネットワークに出力し、前記中央コントローラからの前記制御信号を前記アクチュエータに出力し、
前記ミドルウェア層は、前記センサデバイスから所定の閾値を逸脱する測定値が入力された場合に、前記特定の異常状態が検知されたとする、ことを特徴とする中継装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020200311A JP2022088070A (ja) | 2020-12-02 | 2020-12-02 | 中継装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020200311A JP2022088070A (ja) | 2020-12-02 | 2020-12-02 | 中継装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022088070A true JP2022088070A (ja) | 2022-06-14 |
Family
ID=81982109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020200311A Pending JP2022088070A (ja) | 2020-12-02 | 2020-12-02 | 中継装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022088070A (ja) |
-
2020
- 2020-12-02 JP JP2020200311A patent/JP2022088070A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11870602B2 (en) | In-vehicle equipment control device | |
CN108206774B (zh) | 车载网络系统 | |
US20080304499A1 (en) | Gateway device, network system and data converting method applied to vehicle using plurality of network protocol different from each other | |
US11643091B2 (en) | In-vehicle equipment control device | |
US11831718B2 (en) | In-vehicle equipment controller and vehicle control system | |
JP2017079406A (ja) | 車載記録システム及び車載制御装置 | |
US10612450B2 (en) | Control device for vehicle | |
US20090210171A1 (en) | Monitoring device and monitoring method for a sensor, and sensor | |
WO2021020230A1 (ja) | 車両制御システム | |
US11833984B2 (en) | In-vehicle equipment controller and vehicle control system | |
US8255109B2 (en) | Relay connection unit and vehicle-mounted communication system | |
WO2021020191A1 (ja) | 車両制御システム | |
CN110937020B (zh) | 适于自动驾驶汽车的电动转向控制系统 | |
EP4012981B1 (en) | In-vehicle network system | |
JP2022088070A (ja) | 中継装置 | |
US20100146174A1 (en) | Method for Protecting Against External Interventions into a Master/Slave Bus System and Master/Slave Bus System | |
CN110794735A (zh) | 远程控制装置及方法 | |
US20230138932A1 (en) | Software updating device, software updating method, and software update processing program | |
JP5406079B2 (ja) | 車載通信システム | |
JP7552313B2 (ja) | 中継装置及び車載ネットワークシステム | |
JP2001197154A (ja) | 複合制御装置 | |
JP4125178B2 (ja) | 動的再構成デバイスを用いた車両機能担保システム | |
US12030444B2 (en) | Selective actuation of vehicle components using two control modules | |
KR100666370B1 (ko) | 차량내부 네트워크용 스마트 모듈 | |
JP2022052184A (ja) | 移動体の電源システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231019 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240718 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240903 |