(57)【特許請求の範囲】
【請求項１】
車載側において、センサからの信号を多重化された処理系に取り込み、各処理系において複数の処理装置により演算処理を行い、前記複数の処理装置での各演算結果を各処理系での単一の比較装置により比較して、不一致の場合には演算結果が一致している処理系での演算結果に基づいて走行制御用アクチュエータを制御して道路に沿って車両を自動運転するようにした車両の自動運転システムであって、
前記複数の処理装置での各演算結果として異なるダミー用データを所定のチェック周期毎、或いは正常データと交互に一回おきに比較装置に送り、前記ダミー信号の送出に伴い比較装置から一致信号が出力された場合には異常であると判定するようにするとともに、
前記各処理系における処理装置による演算結果に関する信号が出力信号選択装置に送られ、出力信号選択装置は、比較装置から一致信号が送出されている処理系からの演算結果に関する信号を走行制御用アクチュエータを制御するための信号として出力するものであり、各処理系における処理装置は、前記ダミー用データの送出に伴い比較装置から一致信号が出力された異常時には、前記出力信号選択装置に対し自系停止信号を送出して当該処理系における演算結果を走行制御用アクチュエータを制御するための信号として用いないようにし、
且つ前記出力信号選択装置は、比較装置から２回連続して不一致信号を受け取ったときに初めて不一致信号の入力に伴う異常時の処理を実行する
ことを特徴とする車両の自動運転システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は車両の自動運転システムに関するものである。
【０００２】
【従来の技術】
車両の自動運転システムは、通信インフラと自動車搭載機器を利用して道路と車の路車間通信や車同士で行う車車間通信を用いて車載情報処理装置により道路から受け取った信号を基に車両制御用アクチュエータを制御して自動運転を行うものである。このとき、安全性を確保する目的でセンサ信号を処理する車載情報処理装置を多重化することが行われている。情報処理装置を完全に多重化することは全ての部品を複数用意することであり、これによりいずれかの部品に不具合が発生したとしても待避走行を行うことができフェールセーフ化を図ることが可能となるが、反面、部品点数が膨大になり、機能としては満足できるが、コスト・体格の面では好ましくないという問題点がある。また、それを避けようとすると、一部の部品は多重化でなくなり安全性が損なわれてしまう。
【０００３】
【発明が解決しようとする課題】
本発明はこのような背景の下になされたものであり、その目的は、車載機器のコストアップや大型化を避けつつ安全性を確保することができる車両の自動運転システムを提供することにある。
【０００４】
【課題を解決するための手段】
請求項１に記載の発明によれば、車載側において、センサからの信号が多重化された処理系に取り込まれ、各処理系において複数の処理装置により演算処理が行われて複数の処理装置での各演算結果が各処理系での単一の比較装置により比較されて、不一致の場合には演算結果が一致している処理系での演算結果に基づいて走行制御用アクチュエータが制御されて道路に沿って車両が自動運転される。
【０００５】
この際、複数の処理装置での各演算結果として異なるダミー用データが所定のチェック周期毎、或いは正常データと交互に一回おきに比較装置に送られて、そうしたダミー用データの送出に伴い比較装置から一致信号が出力された場合には異常であると判定される。よって、処理装置を監視している比較装置は多重化されていないが、比較装置の故障が検出できることになる。その結果、多重化していない部位においてもダイアグ機能を持たせることにより安全性を確保することができる。
【０００６】
このようにして、車載機器のコストアップや大型化を避けつつ安全性を確保することができる。
更に、各処理系における処理装置による演算結果に関する信号が出力信号選択装置に送られ、出力信号選択装置は、比較装置から一致信号が送出されている処理系からの演算結果に関する信号を走行制御用アクチュエータを制御するための信号として出力するものであり、各処理系における処理装置は、ダミー用データの送出に伴い比較装置から一致信号が出力された異常時には、出力信号選択装置に対し自系停止信号を送出して当該処理系における演算結果を走行制御用アクチュエータを制御するための信号として用いないようにする。
【０００７】
加えて、出力信号選択装置は、比較装置から２回連続して不一致信号を受け取ったときに初めて不一致信号の入力に伴う異常時の処理を実行するため、ダミー用データの送出に伴う誤動作を防止することができる。
【０００８】
【発明の実施の形態】
以下、この発明を具体化した実施の形態を図面に従って説明する。
図１には、本実施の形態における車両の自動運転システムの全体構成を示す。走行道路１０にはその幅方向中央部に磁気レーンマーカー１１が所定の間隔をおいて多数埋設されている。磁気レーンマーカー１１からは磁気信号が発せられる。一方、走行道路１０を走行する車両２０側において、磁気ネイルセンサ２１が搭載され、磁気ネイルセンサ２１により磁気レーンマーカー１１が発する磁気信号を検出することができるようになっている。
【０００９】
また、走行道路１０にはループアンテナ１２が所定の間隔をおいて多数埋設されるとともに、この各ループアンテナ１２は路車間通信路側機１３を通して管制装置１４と接続されている。一方、車両２０側において、路車間通信機２２が搭載され、路車間通信機２２によりループアンテナ１２と路車間通信路側機１３を介して管制装置１４と通信できるようになっている。
【００１０】
さらに、車両２０側において、衝突防止レーダ２３や車車間通信装置２４や車間距離センサ２５が搭載されている。衝突防止レーダ２３は衝突対象物との距離が所定値よりも接近した場合には車両停止信号を出力する。また、車車間通信装置２４により車車間での通信を行うことができる。さらに、車間距離センサ２５により車間距離が測定される。
【００１１】
また、車両２０にはコントローラ（車両制御ＥＣＵ）２６とドライバ２７とアクセル用アクチュエータ２８とブレーキ用アクチュエータ２９とステアリング用アクチュエータ３０が搭載されている。コントローラ２６は各種のセンサからの信号を取り込んで所定の演算処理を実行し、その演算結果に基づいてドライバ２７を介してアクセル用アクチュエータ２８とブレーキ用アクチュエータ２９とステアリング用アクチュエータ３０を作動させて所望の自動運転を行わせる。また、コントローラ２６は緊急停止する必要がある時にはドライバ２７を介して非常ブレーキ用アクチュエータ（図示略）を作動させるようになっている。
【００１２】
このように本システムは、走行道路１０に埋設された磁気レーンマーカー１１を、車両に搭載された磁気ネイルセンサ２１により検出し、コントローラ２６によりアクセル、ブレーキ、ステアリングの各アクチュエータ２８，２９，３０を制御しながら車両２０が道路中央部を走行するよう誘導するシステムである。
【００１３】
図１におけるコントローラ２６の詳細を、図２に示す。
図２において、コントローラ２６にはメインＣＰＵ４１とサブＣＰＵ４２が備えられ、ＣＰＵに関して多重化（２重化）されている。メインＣＰＵ４１には各センサが接続され、センサ入力データに基づいてメインＣＰＵ４１は各種の演算を実行する。
【００１４】
また、メインＣＰＵ４１からサブＣＰＵ４２に対し、メインＣＰＵ４１で取り込んだ入力データ（センサデータ）を演算用データとして送るようになっている。このデータに基づいてサブＣＰＵ４２はメインＣＰＵ４１での演算と同じ処理を実行する。
【００１５】
メインＣＰＵ４１とサブＣＰＵ４２には比較装置４３が接続され、メインＣＰＵ４１での処理データ（演算結果）とサブＣＰＵ４２での処理データ（演算結果）が比較装置４３に送られる。比較装置４３は両データ（両演算結果）を比較して一致した場合には一致信号を、一致しない場合には不一致信号を出力する。
【００１６】
このような構成をなすコンピュータ４０が、もう一つ用意されている。つまり、コンピュータ１系４０と、これと同じ構成をなすコンピュータ２系５０を備えている。
【００１７】
コンピュータ１系４０とコンピュータ２系５０には出力信号選択装置６０が接続されている。この出力信号選択装置６０とコンピュータとの信号のやり取りをコンピュータ１系４０で説明すると、比較装置４３からの一致・不一致信号が出力信号選択装置６０に送られる。また、メインＣＰＵ４１から出力信号選択装置６０へは演算結果データが送られるとともにサブＣＰＵ４２から出力信号選択装置６０へも演算結果データが送られる。そして、出力信号選択装置６０においてＣＰＵ４１と４２のいずれかのデータを外部のドライバ２７（図１参照）に送出する。本例では、メインＣＰＵ４１とサブＣＰＵ４２とを比較した場合、メインＣＰＵ４１の優先度が高く設定されており、当初、メインＣＰＵ４１からの出力データがドライバ２７に送られる。
【００１８】
例えば、比較装置４３においてメインＣＰＵ４１とサブＣＰＵ４２の演算出力結果を比較した結果、双方のＣＰＵ４１，４２の出力が一致していれば、コンピュータ１系４０は正常とみなして一致信号を出力信号選択装置６０に送り、出力信号選択装置６０においてコンピュータ１系４０でのメインＣＰＵ４１からのデータを選択して次段（図１のドライバ２７）に送る。一方、比較装置４３で比較した結果、不一致であれば、コンピュータ1系４０は故障であるとして不一致信号を出力信号選択装置６０に送り、出力信号選択装置６０において送り出すデータをコンピュータ２系５０からのデータに切り替える。
【００１９】
また、メインＣＰＵ４１から出力信号選択装置６０へは自系停止信号が送られるとともにサブＣＰＵ４２から出力信号選択装置６０へも自系停止信号が送られる。そして、出力信号選択装置６０において、ドライバ２７に送るデータとして自系停止信号が送られてきた方のＣＰＵ（異常が発生したＣＰＵ）から正常な方のＣＰＵに切り替えられる。
【００２０】
なお、コンピュータ１系４０について説明したが、コンピュータ２系５０も同様な構成および動作となる。
ここで、図３を用いてメインＣＰＵ・サブＣＰＵの必要性について言及する。
【００２１】
自動（無人）運転では人による最終的な危険回避措置（非常ブレーキ等）がとれないため、各機器に非常に高い信頼性が求められる。そこで、ノイズ等による演算の間違えやプログラム暴走、部品故障による演算間違えやプログラム暴走を確実に防止する必要がある。従来一般に行われているウォッチドッグではノイズや故障等でメモリのある１ビットが反転したような場合異常を検出することは不可能であった。つまり、演算値は異常になるが、プログラムが暴走するわけでないからである。そのために図３のように、メイン、サブ両ＣＰＵ４１，４２で同じ演算を行い、その結果をハード的に比較するという構成が必要となってくる。この構成であれば、前述のノイズや故障等でメモリのある１ビットが反転した場合でも、メイン側とサブ側の演算結果に違いが出てくるので異常を検出することが可能で、フェイルセーフが確保できる。
【００２２】
次に、図４を用いて冗長系の必要性について言及する。
本システムでは、前記のフェイルセーフ実現のための「メイン・サブＣＰＵによる２重系」が図４のように２系統用意されている。本システムは自動（無人）運転されるバス等公共交通機関での使用を想定しているのでフェイルセーフを実現しつつ稼働率を可能な限り向上させる必要がある。そのために、前記のフェイルセーフな「メイン・サブＣＰＵによる２重系」部を図４のように２系統用意して稼働率の向上を実現している。この場合、どちらか１系が動作している限り運行は通常通り可能である。
【００２３】
以上のように、ＣＰＵは二重化され故障検出を行うことができるようになっており、フェールセーフ化されている。さらに、故障時は他の系を利用するという二冗長系が組まれている。
【００２４】
ここまでの説明において本例の車両の自動運転システムは、車載側において、センサからの信号を多重化された処理系に取り込み、各処理系において複数の処理装置（メインＣＰＵ４１、サブＣＰＵ４２）により演算処理を行い、複数の処理装置（メインＣＰＵ４１、サブＣＰＵ４２）での各演算結果を各処理系での単一の比較装置４３により比較して、不一致の場合には演算結果が一致している処理系での演算結果に基づいて走行制御用アクチュエータ２８，２９，３０を制御して道路１０に沿って車両２０を自動運転するようになっている。このように、本システムでは、自動運転、無人走行であるが故に安全走行が第１であり、また故障時には安全側に停止させること、また、冗長系による一時待避のための走行機能等が重要となってくる。そのための追突防止のための衝突防止レーダや、車間距離センサ、車車間通信、またループアンテナを介した路車間通信等により、安全な走行管制システムを構築している。つまり、車両制御ＥＣＵにおいて、重要故障時にも安全にかつ待避走行も可能とするため、ＣＰＵの二重化およびＣＰＵ部の多冗長系（本例では二冗長系）を構成している。
【００２５】
ここで、ＣＰＵの多重化は図られているが、比較装置４３は一つしかなくこれが故障した時は不良動作を引き起こすことになってしまう。勿論、比較装置４３を二つ使用して多重化を図ればよいわけであるが、何もかも多重化を図るとコンピュータがどんどん大きく高価なものになり実用ではなくなってしまう。
【００２６】
そこで、本実施形態においては、重要部品、例えばＣＰＵ、センサ入力等は多重化を図り、一つでもよい部分は故障検知ができればよいということで回路を構成している。特に、比較装置４３の故障検知については次のようにしている。
【００２７】
各ＣＰＵ４１，４２が正常の場合、ＣＰＵ４１，４２からのデータを比較すれば一致となるが、所定のタイミングで一致しないデータを送出し、その時、比較装置４３から不一致信号が正しく帰ってくるかどうかをＣＰＵ４１（または４２）でチェックしている。この時、比較装置４３から不一致信号が帰ってくれば、ＣＰＵは比較装置４３を正常と判断するが、もし一致信号が帰ってきたら、ＣＰＵは比較装置４３の故障と判断し、自系停止信号を出力信号選択装置６０に出力し、出力信号選択装置６０はコンピュータ１系の故障と判断し、２系側に切り替える。
【００２８】
以下、詳しく説明する。
図５には、メインＣＰＵ４１とサブＣＰＵ４２と比較装置４３により行う処理内容を示す。また、図６は、各種の信号を示すタイムチャートである。図６において上からＮ値の変化、メインＣＰＵ４１からの比較用データの出力タイミング、メインＣＰＵ４１からのデータ確定信号の出力タイミング、サブＣＰＵ４２からの比較用データの出力タイミング、サブＣＰＵ４２からのデータ確定信号の出力タイミング、比較装置４３での比較処理タイミング、比較装置４３からの一致・不一致信号の出力タイミング、比較結果の内容、出力信号選択装置６０における故障判断内容を、示す。
【００２９】
なお、図７は図５と比較するためのフローチャートであり、比較装置４３の故障検知についての対策を講じなかった場合のメインＣＰＵ４１とサブＣＰＵ４２と比較装置４３により行う処理内容を示す。
【００３０】
図５において、メインＣＰＵ４１は５ｍｓｅｃのループ処理を起動する。このとき、カウント値Ｎ＝０にされる。メインＣＰＵ４１はステップ１００でデータを読み込み、ステップ１０１で同期信号をサブＣＰＵ４２に送る。サブＣＰＵ４２においてステップ２００で同期信号の入力を確認すると、ステップ２０１で準備完了信号をメインＣＰＵ４１に送る。
【００３１】
メインＣＰＵ４１は、ステップ１０２で準備完了信号の入力を確認すると、ステップ１０３でカウント値Ｎが所定値Ｋ（図６の場合、「５」）であるか判定し、カウント値Ｎが所定値Ｋ未満であれば、ステップ１０５に移行する。このステップ１０５でメインＣＰＵ４１は演算用データをサブＣＰＵ４２に送り、さらに、ステップ１０６で演算処理を行いその結果を比較装置４３に送る。一方、サブＣＰＵ４２はステップ２０２で演算用データを入力した後、ステップ２０３で演算処理を行いその結果を比較装置４３に送る。
【００３２】
比較装置４３において、ステップ３００でメインＣＰＵ４１からの演算結果とサブＣＰＵ４２からの演算結果を比較して、ステップ３０１で一致しているか否か判定する。一致していれば、ステップ３０２で一致信号を、不一致ならば、ステップ３０３で不一致信号を両ＣＰＵ４１，４２及び出力信号選択装置６０に送る。
【００３３】
また、メインＣＰＵ４１においてステップ１０７でカウント値Ｎが所定値Ｋ（図６の場合、「５」）であるか判定し、カウント値Ｎが所定値Ｋ未満であれば、ステップ１０８に移行する。このステップ１０８でメインＣＰＵ４１は一致・不一致を判定して不一致ならば自系停止信号を出力信号選択装置６０に送る。一方、ステップ１０８で一致したならばステップ１０９でＮ値を１インクリメントしてステップ１００に戻る。このＮ値のインクリメント動作は、図６においてｔ１０１，１０２のタイミングで行われる。また、サブＣＰＵ４２においてステップ２０４で一致・不一致をチェックしている。
【００３４】
一方、図６のｔ２００のタイミングで示すように、カウント値Ｎが所定値Ｋ（図６の場合、「５」）、メインＣＰＵ４１は図５のステップ１０３からステップ１０４に移行する。そして、ステップ１０４において、メインＣＰＵ４１は異なるダミーデータを生成して一方のデータをサブＣＰＵ４２に送るとともに他方のデータを用いて演算を行う。その後、ステップ１０６に移行する。サブＣＰＵ４２は前述のダミーデータを用いて同様の演算を行う。その結果、メインＣＰＵ４１での演算結果とサブＣＰＵ４２での演算結果が異なることになり、ステップ１０６，２０３においてＣＰＵ４１，４２での各演算結果として異なるダミー用データが比較装置４３に出力されることになる。
【００３５】
そして、メインＣＰＵ４１においてステップ１０７でカウント値Ｎが所定値Ｋであるので、ステップ１１０に移行する。このステップ１１０でメインＣＰＵ４１は比較装置４３から不一致信号を入力したか否か判定し、比較装置４３から一致信号が出力された場合には異常であると判定し、自系停止信号を出力信号選択装置６０に送る。
【００３６】
また、故意にテスト的に不一致となるデータ（ダミー用データ）を出した時、比較装置４３が正常な時も出力信号選択装置６０に不一致信号を送出することになるが、出力信号選択装置６０では、図６に示すように、２回連続で不一致信号を受け取ったときに初めて故障と判断して異常処理（系の切り替え）を実行する。これにより、１回のテスト信号としての不一致信号を比較装置４３から受け取ったとしても、これを無効化して全体の基本動作には何等関与しない。
【００３７】
従って、このテスト的な不一致となるデータ（ダミー用データ）を送出するタイミングとして、本例のように所定のチェック周期毎にテストデータとして送出してもよいし、あるいは、一回おきに正常データと故意の不一致となるデータを交互に各ＣＰＵから送出してもよい。要は、２回続けてテストデータは出さなければよい。
【００３８】
このように、図７に示す比較例に対し図５のごとくステップ１０３，１０４，１０７，１０９，１１０の各処理を追加することにより、複数の処理装置（メインＣＰＵ４１とサブＣＰＵ４２）での各演算結果として異なるダミー用データを比較装置４３に送り、比較装置４３から一致信号が出力された場合には異常であると判定することができることとなる。よって、ＣＰＵ４１，４２を監視している比較装置４３は多重化されていないが、比較装置４３の故障が検出できることになる。その結果、多重化していない部位においてもダイアグ機能を持たせることにより安全性を確保することができる。このようにして、車載機器のコストアップや大型化を避けつつ安全性を確保することができる。
【００３９】
特に、各処理系におけるＣＰＵ４１，４２による演算結果に関する信号が出力信号選択装置６０に送られ、出力信号選択装置６０は、比較装置４３から一致信号が送出されている処理系からの演算結果に関する信号を走行制御用アクチュエータを制御するための信号として出力するものであり、各処理系におけるＣＰＵ４１，４２は、ダミー用データの送出に伴い比較装置４３から一致信号が出力された異常時には、出力信号選択装置６０に対し自系停止信号を送出して当該処理系における演算結果を走行制御用アクチュエータを制御するための信号として用いないようした。また、出力信号選択装置６０は、比較装置４３から２回連続して不一致信号を受け取ったときに初めて不一致信号の入力に伴う異常時の処理を実行し、ダミー用データの送出に伴う誤動作を防止することができる。このようにすると、実用上好ましいシステムとすることができる。
【図面の簡単な説明】
【図１】実施の形態における車両の自動運転システムの全体構成図。
【図２】コントローラの詳細を示す図。
【図３】ＣＰＵの多重化を説明するための図。
【図４】冗長系を説明するための図。
【図５】メインＣＰＵとサブＣＰＵと比較装置により行う処理内容を示すフローチャート。
【図６】各種の信号を示すタイムチャート。
【図７】比較のためのフローチャート。
【符号の説明】
２６…コントローラ、２８…アクセル用アクチュエータ、２９…ブレーキ用アクチュエータ、３０…ステアリング用アクチュエータ、４０…コンピュータ１系、４１…メインＣＰＵ、４２…サブＣＰＵ、４３…比較装置、５０…コンピュータ２系、６０…出力信号選択装置。
【図１】
0003866536.tif 000002
【図２】
0003866536.tif 000003
【図３】
0003866536.tif 000004
【図４】
0003866536.tif 000005
【図５】
0003866536.tif 000006
【図６】
0003866536.tif 000007
【図７】
0003866536.tif 000008