以下、本発明の実施形態を図面に基づいて説明する。なお、本実施形態では、車両に搭載される走行制御装置を例示して本発明を説明する。また、当該車両が走行する道路の種別は特に限定されず、車両が走行する道路は一般道だけでなく高速道路、その他の道路であってもよい。
≪第1実施形態≫
図1は、本実施形態に係る走行制御装置1の構成を示すブロック図である。図1に示すように、本実施形態に係る走行制御装置1は、カメラ群10と、測距装置20と、入力装置30と、位置検出装置40と、地図データベース50と、駆動機構60と、制御装置100とを備えている。これら装置は、相互に情報の授受を行うためにCAN(Controller Area Network)やその他の車載LANによって接続されている。
カメラ群10は、例えば、前方カメラと、右側方カメラと、左側方カメラとを少なくとも備えるカメラユニットである。前方カメラは、車両のフロントバンパー又はその近傍に設置され、自車両の前方を撮像する。右側方カメラは、車両の右側方(例えば、車両の前端右側部)に設置され、自車両の右側方を撮像する。左側方カメラは、車両の左側方(例えば、車両の前端左側部)に設置され、自車両の左側方を撮像する。それぞれのカメラが撮像する対象の例としては、バイク、自動車、歩行者等の移動物体や、道路標識、路面標示、中央分離帯、縁石、ガードレール等の静止物体が挙げられる。カメラ群10は撮像した画像情報を制御装置100に出力する。
測距装置20は、ミリ波レーダー、レーザーレーダー、超音波レーダー等のレーダー装置又はソナーであり、カメラ群10と同様の位置に設置され、車両の周囲の障害物、歩行者、他車両等の存否、これらの位置、これらまでの距離を検出する。測距装置20は検出結果を制御装置100に出力する。例えば、自車両の前方を先行車両が走行している場合には、測距装置20は、先行車両が存在すること、先行車両の位置(例えば、自車両の前方、自車両の右側前方など)、自車両から先行車両までの距離を検出する。なお、測距装置20の検出対象は先行車両に限られず、例えば、中央分離帯、縁石、ガードレール等であってもよい。
入力装置30は、ドライバーが操作可能な操作機器である。本実施形態において、ドライバーは入力装置30を操作することで、車両の自動運転制御のオン/オフを設定する。また、ドライバーは自動運転制御における自車両の目的地も併せて設定する。例えば、ドライバーが目的地を設定するとともに、ドライバーが自動運転制御をオフからオンに設定すると、自車両は制御装置100で設定された走行経路に従って自動運転制御により走行する。反対に、ドライバーが自動運転制御をオンからオフに設定すると、自車両はドライバーの手動運転制御により走行する。入力装置30はドライバーが設定した自動運転制御の設定情報を制御装置100に出力する。
位置検出装置40は、グローバル・ポジショニング・システム(GPS)を備え、走行中の車両の走行位置(緯度・経度)を検出する。位置検出装置40は検出結果を制御装置100に出力する。
地図データベース50には、地図情報が予め格納されている。地図データベース50は地図情報を制御装置100に出力する。地図情報には、ノードとリンクで示される道路地図と、道路地図座標における道路種別、道路幅、道路形状、車線数に関する情報とが少なくとも含まれている。例えば、道路地図における道路は道路ごとにリンク番号で識別されており、リンク番号ごとに道路種別、道路幅、道路形状、車線数に関する情報が対応づけられている。さらに、各道路の車線ごとにリンク番号は設定されている。なお、本実施形態において、地図データベース50は地図情報を予め格納しているが、これに限られない。例えば、車両が外部サーバと通信可能な通信装置(図示しない)を備えており、外部サーバが車両に対して最新の地図情報を提供するシステムにおいては、地図データベース50の地図情報を通信装置を介して定期的に更新する構成でもよい。
駆動機構60には、制御装置100から制御信号が入力される。駆動機構60には、自車両を走行させるためのエンジン及び/又はモータ(動力系)、ブレーキ(制動系)、及びステアリングアクチュエータ(操舵系)等が含まれる。
制御装置100は、地図情報が誤っているか否かを判断して、自車両の走行を制御する制御装置である。制御装置100は、地図情報が誤っているか否かを判断するためのプログラム及び自車両の走行を制御するためのプログラムを格納したROMと、このROMに格納されたプログラムを実行するCPUと、アクセス可能な記憶装置として機能するRAMとを備える。制御装置100には、カメラ群10から画像情報が入力され、測距装置20及び位置検出装置40から検出結果が入力され、入力装置30から自動運転制御の設定情報が入力され、地図データベース50から地図情報が入力される。制御装置100は、これらの入力情報から、それぞれが異なる複数の走行経路を演算し、複数の走行経路が一致しているか否かを判定することで地図情報が誤っているか否かを判断する。そして、制御装置100は、地図情報が誤っているか否かの判断結果に応じて、自車両の走行を制御する制御信号を生成するとともに、生成した制御信号を駆動機構60に出力する。
制御装置100は、図1に示すように、機能ブロックとして、第1走行経路演算部101と、第2走行経路演算部102と、第3走行経路演算部103と、走行経路比較部104と、走行経路判定部105と、駆動機構制御部106とを備えている。制御装置100の機能を説明するために、すなわち、CPUが実行するプログラムを説明するために、これらのブロックを示す。
まず、本実施形態において、第1走行経路演算部101、第2走行経路演算部102、第3走行経路演算部103が実行する処理について説明する。
第1走行経路演算部101には、地図データベース50から地図情報が入力され、位置検出装置40から自車両の走行位置が入力される。第1走行経路演算部101は、地図情報に基づく自車両の走行経路(以降、第1走行経路と称す)を演算する。第1走行経路演算部101は、地図情報及び自車両の走行位置から、第1走行経路を演算する。第1走行経路演算部101は、地図情報に自車両の走行位置を対応させることで、地図情報において自車両が走行している道路を特定する。また、道路に複数の車線がある場合には、第1走行経路演算部101は、地図情報において自車両が走行している車線を特定する。そして、第1走行経路演算部101は、車線の道路リンクに沿った経路を第1走行経路として設定する。第1走行経路演算部101は、演算した第1走行経路を走行経路比較部104に出力する。
図2Aは、第1走行経路演算部101により演算された第1走行経路P1の一例を示す図である。第1走行経路演算部101は、まず、地図情報において、自車両が走行している道路R1を特定する。次に、第1走行経路演算部101は、道路R1には複数の車線(図2Aに示す車線L1、L2)があることを判断して、自車両が走行している車線L1を特定する。そして、第1走行経路演算部101は、車線L1の道路リンク(図示しない)に沿った経路を第1走行経路P1として設定する。そのため、第1走行経路P1は、地図情報における道路R1の道路形状に沿った経路になる。図2Aに示す例では、地図情報における道路R1の形状が、直線道路を過ぎると、左に曲がるような道路形状であると、第1走行経路P1は車線L1の道路リンクに沿う走行経路になる。すなわち、第1走行経路P1は、自車両V1の走行位置を基準とした走行経路であって、直線状の走行経路を過ぎると、左に曲がるような走行経路になる。このように、第1走行経路P1は地図情報に基づく走行経路であるため、仮に、地図情報が誤っていた場合でも、第1走行経路演算部101は、誤った地図情報に基づく第1走行経路P1を演算する。地図情報の誤りとしては、例えば、地図情報が古いため、地図情報には実際の道路とは異なる道路が存在すること等が挙げられる。
第2走行経路演算部102には、測距装置20から検出結果が入力され、位置検出装置40から自車両の走行位置が入力される。第2走行経路演算部102は、先行車両の情報に基づく走行経路(以降、第2走行経路と称す)を演算する。第2走行経路演算部102は、まず、測距装置20からの検出結果のうち、先行車両の存否を確認することで、先行車両の情報が含まれているか否かを判定する。先行車両の情報としては、例えば、先行車両の位置、自車両から先行車両までの距離が挙げられる。第2走行経路演算部102は、検出結果から先行車両の存在を確認できた場合に、先行車両の情報に基づき第2走行経路を演算する。反対に、第2走行経路演算部102は、検出結果から先行車両の存在を確認できない場合に、第2走行経路を演算しない。
第2走行経路演算部102は、先行車両の存在を確認できた場合に、先行車両の情報及び自車両の走行位置から、第2走行経路を演算する。例えば、第2走行経路演算部102は、自車両の走行位置と、先行車両の位置及び自車両から先行車両までの距離との関係を統計的に処理することで、先行車両が移動した軌跡を演算する。そして、第2走行経路演算部102は、演算した軌跡を第2走行経路として設定する。第2走行経路演算部102は、演算した第2走行経路を走行経路比較部104に出力する。
図2Bは、第2走行経路演算部102により演算された第2走行経路の一例を示す図である。図2Bは、先行車両V2が自車両V1の前方を走行している場面を示している。第2走行経路演算部102は、まず、測距装置20の検出結果のうち先行車両の存否から、先行車両V2の存在を確認する。次に、第2走行経路演算部102は、自車両V1の走行位置と、先行車両V2の位置及び自車両V1から先行車両までの距離Lv2とから、第2走行経路P2を演算する。例えば、第2走行経路演算部102は、測距装置20から検出結果が制御装置100に入力される度に、先行車両V2の走行位置と自車両V1から先行車両までの距離Lv2とをRAMに一時的に保存する。そして、所定の時間経過後に、第2走行経路演算部102は、RAMに蓄積された先行車両V2の位置及び自車両V1から先行車両V2までの距離Lv2を統計的に処理することで、先行車両V2が移動した軌跡を演算する。第2走行経路演算部102は、演算した軌跡を第2走行経路として設定する。図2Bに示す例では、第2走行経路演算部102は、先行車両V2が移動した軌跡を直線として演算し、第2走行経路P2を設定する。このため、第2走行経路P2は、自車両V1の位置を基準とした走行経路であって、直線的な走行経路になる。
第3走行経路演算部103には、カメラ群10から画像情報が入力される。第3走行経路演算部103は、自車両が走行している道路形状に基づく自車両の走行経路(以降、第3走行経路と称す)を演算する。第3走行経路演算部103は、画像情報を画像処理することで、自車両が走行する道路形状の情報を道路情報として取得する。そして、第3走行経路演算部103は、道路情報に基づく自車両の走行経路を第3走行経路として演算する。例えば、第3走行経路演算部103は、画像情報に含まれる道路画像を画像処理することで、自車両が走行する道路の白線を特定して、白線に沿った道路形状の情報を道路情報として取得する。そして、第3走行経路演算部103は、白線に沿う走行経路を第3走行経路として演算する。第3走行経路演算部103は、演算した第3走行経路を走行経路比較部104に出力する。なお、第3走行経路演算部103は、画像情報から、道路の白線を特定することで自車両の走行する道路形状を特定するが、これに限られない。例えば、第3走行経路演算部103は、画像情報に含まれる、道路標識、白線以外の路面標示、中央分離帯、縁石、ガードレールのうち一つ又は複数の組み合わせから、自車両の走行する道路形状を特定してもよい。
図2Cは、第3走行経路演算部103により演算された第3走行経路の一例を示す図である。第3走行経路演算部103は、画像情報に含まれる道路画像を画像処理することで、自車両が走行する道路の白線(図2Cでは、WL1、WL2、WL3で示す)を特定する。第3走行経路演算部103は、白線WL1〜3のそれぞれの位置関係から、白線WL1〜3のうち、自車両V1が走行している車線の白線を特定する。第3走行経路演算部103は、例えば、左側方カメラで撮像した画像と、右側方カメラで撮像した画像と、前方カメラで撮像した画像とから、それぞれの白線の相対的な位置関係を演算することで、自車両V1に対する白線の位置を特定する。図2Cに示す例では、第3走行経路演算部103は、白線WL1及び白線WL2を自車両が走行している車線の白線として特定する。第3走行経路演算部103は、自車両V1が走行している道路形状を白線WL1及び白線WL2に沿う道路形状と特定する。そして、第3走行経路演算部103は、白線WL1及び白線WL2に沿う経路を第3走行経路P3として演算する。例えば、第3走行経路演算部103は、白線WL1及び白線WL1に沿う経路のうち、白線WL1と白線WL2とから等距離に位置する経路(白線WL1と白線WL2との間の中央線)を第3走行経路P3として演算する。図2Cに示す例では、第3走行経路演算部103が特定した白線WL1及びWL2が直線であるため、第3走行経路P3は白線WL1及びWL2に沿う走行経路になる。すなわち、第3走行経路P3は、自車両V1の走行位置を基準とした走行経路であって、直線的な走行経路になる。
ここで、第3走行経路P3の演算精度について説明する。自車両から遠くなればなるほど、カメラ群10が撮像する画像情報の精度は下がる。第3走行経路P3の演算精度は、カメラ群10が撮像する画像情報の精度に連動するため、自車両から遠い地点における第3走行経路P3の演算精度は低くなる。特に、自車両から遠い地点における道路のカーブ形状を演算すると、第3走行経路P3の演算精度は低くなる。そのため、本実施形態における制御装置100は、第1走行経路と第3走行経路とを比較するだけでなく、第2走行経路を用いて、地図情報が誤っているか否かを判断する。
このように、本実施形態においては、第1走行経路演算部101、第2走行経路演算部102、第3走行経路演算部103により、第1走行経路、第2走行経路、第3走行経路が、それぞれ地図情報、先行車両の情報、道路情報に基づいて、演算される。これにより、地図情報が誤っているか否かを判断する精度を向上させることができる。次に、走行経路比較部104、走行経路判定部105、駆動機構制御部106が実行する処理について説明する。
走行経路比較部104には、第1走行経路演算部101から第1走行経路が入力され、第2走行経路演算部102から第2走行経路が入力され、第3走行経路演算部103から第3走行経路が入力される。また、走行経路比較部104には走行経路判定部105から比較指令が入力される。走行経路比較部104は、走行経路判定部105からの比較指令に応じて、第1走行経路、第2走行経路、及び第3走行経路のうち、2つの走行経路を比較する。具体的には、走行経路比較部104は、2つの走行経路の間の距離、すなわち、2つの走行経路の差分を演算する。走行経路比較部104は、演算した2つの走行経路の差分を走行経路判定部105に出力する。
図3Aは、走行経路比較部104による第1走行経路P1と第3走行経路P3との比較結果の一例を示す図である。なお、第1走行経路P1は図2Aに示す第1走行経路P1と同じ走行経路であり、第3走行経路P3は図2Cに示す第3走行経路P3と同じ走行経路である。また、第1走行経路P1及び第3走行経路P3はいずれも自車両V1の走行位置を基準とした走行経路である。図3Aに示すように、走行経路比較部104は、第1走行経路P1と第3走行経路P3との間の距離を演算する。図3Aに示す例では、走行経路比較部104は、第1走行経路P1と第3走行経路P3とがほぼ同じ走行経路である地点においては、距離D1を演算する。また、走行経路比較部104は、第1走行経路P1と第3走行経路P3とが異なる走行経路の地点においては、距離D2(D2>D1)を演算する。
図3Bは、走行経路比較部104による第2走行経路P2と第3走行経路P3との比較結果の一例を示す図である。なお、第2走行経路P2は図2Bに示す第2走行経路P2と同じ走行経路であり、第3走行経路P3は図2Cに示す第3走行経路P3と同じ走行経路である。また、第2走行経路P2及び第3走行経路P3はいずれも自車両V1の走行位置を基準とした走行経路である。図3Bに示すように、走行経路比較部104は、第2走行経路P2と第3走行経路P3との間の距離を演算する。図3Bに示す例では、走行経路比較部104は、第2走行経路P2と第3走行経路P3とがほぼ同じ走行経路である地点においては、距離D3を演算する。
走行経路判定部105には、走行経路比較部104から2つの走行経路の差分が入力される。走行経路判定部105は、2つの走行経路が一致しているか否かを判定する。走行経路判定部105は、2つの走行経路の差分が予め定められた所定の閾値(例えば、車幅)以上の場合には、2つの走行経路は一致していない(2つの走行経路は不一致)と判定する。反対に、走行経路判定部105は、2つの走行経路の差分が所定の閾値未満の場合には、2つの走行経路は一致している(2つの走行経路は一致)と判定する。そして、走行経路判定部105は、2つの走行経路の判定結果(例えば、第1走行経路と第2走行経路とは一致)を駆動機構制御部106に出力する。図3Aに示す例において、例えば、距離D2が所定の閾値以上の場合に、走行経路比較部104は、第1走行経路P1と第2走行経路P2とは不一致、と判定する。同様に、図3Bに示す例において、例えば、距離D3が所定の閾値未満の場合に、走行経路比較部104は、第2走行経路P2と第3走行経路P3とは一致、と判定する。なお、所定の閾値は車幅に限定されない。
また、走行経路判定部105は、2つの走行経路の判定結果に基づいて、地図情報に誤りがあるか否かを判断する。以降に、本実施形態における走行経路判定部105について、2つの走行経路の判定結果に応じた具体的な処理内容を説明する。
本実施形態においては、走行経路判定部105は、まず、第1走行経路と第3走行経路とを比較するよう、走行経路比較部104に比較指令を出力する。そして、走行経路判定部105には、当該比較指令により走行経路比較部104で演算された、第1走行経路と第3走行経路との差分が入力され、走行経路判定部105は第1走行経路と第3走行経路が一致しているか否かを判定する。次に、第1走行経路と第3走行経路との判定結果について説明する。
走行経路判定部105は、第1走行経路と第3走行経路とは一致、と判定した場合には、地図情報が誤っていない、と判断する。つまり、走行経路判定部105は、地図情報が誤ってなければ、第1走行経路と第3走行経路とが一致するものという前提条件から、地図情報が誤っていることを判断する。そして、走行経路判定部105は、第1走行経路と第3走行経路とが一致の判定結果を、駆動機構制御部106に出力する。
反対に、走行経路判定部105は、第1走行経路と第3走行経路とが不一致、と判定した場合には、地図情報が誤っている、と判断できない。すなわち、走行経路判定部105は、第3走行経路の演算精度が低いため、第1走行経路と第3走行経路とが一致していない可能性を考慮して、地図情報が誤っている、と判断できない。例えば、上述したように、カメラ群10が自車両から遠い地点における道路のカーブ形状を撮像して、第3走行経路を演算すると、第3走行経路の演算精度は低くなり、走行経路判定部105は、第1走行経路と第3走行経路とは不一致、と判定する。このため、第1走行経路と第3走行経路との判定結果が不一致であることだけでは、地図情報が誤っているか否かを判断することができない。本実施形態では、走行経路判定部105は、第1走行経路と第3走行経路との判定結果が不一致の場合には、第2走行経路を用いて、地図情報が誤っているか否かを判断する。以降、第1走行経路と第3走行経路との判定結果が不一致の場合における、走行経路判定部105について説明する。
走行経路判定部105は、第1走行経路と第3走行経路とは不一致、と判定した場合には、第2走行経路と第3走行経路とを比較するよう、走行経路比較部104に比較指令を出力する。そして、走行経路判定部105には、当該比較指令により走行経路比較部104で演算された、第2走行経路と第3走行経路との差分が入力され、走行経路判定部105は第2走行経路と第3走行経路が一致しているか否かを判定する。次に、第1走行経路と第3走行経路との判定結果が不一致の場合における、第2走行経路と第3走行経路との判定結果について説明する。
走行経路判定部105は、第2走行経路と第3走行経路とは一致、と判定した場合には、地図情報が誤っている、と判断する。この場合、第2走行経路と第3走行経路とは一致しているにも関わらず、第1走行経路と第3走行経路とが一致していないため、走行経路判定部105は、地図情報が誤っている、と判断する。また、この場合において、走行経路判定部105は、第1走行経路と第3走行経路との判定結果及び第2走行経路と第3走行経路との判定結果から、第1走行経路と第2走行経路とは不一致、と間接的に判定することができる。走行経路判定部105は、第1走行経路と第3走行経路とが不一致の判定結果及び第2走行経路と第3走行経路とが一致の判定結果を、駆動機構制御部106に出力する。
一方、走行経路判定部105は、第2走行経路と第3走行経路とは不一致、と判定した場合には、地図情報が誤っているか否かの判断ができない。この場合、第1走行経路と第3走行経路とが不一致であり、さらに、第2走行経路と第3走行経路とも不一致であるため、走行経路判定部105は、3つの走行経路のうち一致する2つの走行経路がなく、地図情報が誤っているか否かの判断することができない。走行経路判定部105は、第1走行経路と第3走行経路とが不一致の判定結果及び第2走行経路と第3走行経路とが不一致の判定結果を、駆動機構制御部106に出力する。
駆動機構制御部106には、入力装置30から自動運転制御設定の情報が入力され、走行経路判定部105から走行経路の判定結果が入力される。駆動機構制御部106は、自動運転制御の設定がオンである場合には、自動運転制御における走行経路を設定するとともに、設定した走行経路に従って自車両の走行を制御する。なお、本実施形態において、自動運転制御における走行経路の初期設定は第1走行経路とする。すなわち、自動運転制御がオンに設定されると、駆動機構制御部106は第1走行経路(地図情報に基づく走行経路)に従って自車両の走行を制御する。
続いて、走行経路の判定結果に応じた、駆動機構制御部106の動作について説明する。
第1走行経路と第3走行経路とが一致の判定結果が、駆動機構制御部106に入力されると、駆動機構制御部106は、自動運転制御を継続し、第1走行経路、すなわち、地図情報に基づく走行経路に従って自車両の走行を制御する。
また、第1走行経路と第3走行経路とが不一致の判定結果及び第2走行経路と第3走行経路とが一致の判定結果が、駆動機構制御部106に入力されると、駆動機構制御部106は、第3走行経路に従って速度を下げながら自車両の走行を制御する。すなわち、駆動機構制御部106は、第1走行経路に従って走行を制御することを禁止する。例えば、駆動機構制御部106は、提示装置(図示しない)を介して、ドライバーに走行経路が第1走行経路から第3走行経路に変更した旨を通知する。
さらに、第1走行経路と第3走行経路とが不一致の判定結果及び第2走行経路と第3走行経路とが不一致の判定結果が、駆動機構制御部106に入力されると、駆動機構制御部106は、自動運転制御から手動運転制御に切替える。すなわち、駆動機構制御部106は、第1走行経路に従って走行を制御することを禁止する。例えば、駆動機構制御部106は、提示装置を介して、ドライバーに自動運転制御の継続を中止し、手動運転制御に切替えることを通知する。
次に、図4、5を参照して、本実施形態に係る走行制御処理について説明する。図4は、本実施形態に係る走行制御処理を示すフローチャートである。なお、以下に説明する走行制御処理は、ドライバーにより自動運転制御がオンに設定されることで開始される。また、図4に示す走行制御処理は、所定の周期毎に実行される。
ステップS101では、制御装置100は地図データベース50から地図情報を取得する。ステップS102では、制御装置100は、カメラ群10が撮像した、自車両の前方を対象とした画像情報から、道路情報を取得する。例えば、制御装置100は、自車両が走行する道路の画像情報から道路の白線の情報を特定して、白線に沿った道路形状の情報を道路情報として取得する。
ステップS103では、制御装置100は、測距装置20が検出した検出結果から、先行車両情報を取得する。例えば、制御装置100は、検出結果から、先行車両の存否、先行車両の位置及び自車両の走行位置から先行車両までの距離を先行車両の情報として取得する。
ステップS104では、第1走行経路演算部101は、ステップS101で取得した地図情報から第1走行経路を演算する。ステップS105では、第2走行経路演算部102は、ステップS103で取得した先行車両情報から第2走行経路を演算する。ステップS106では、第3走行経路演算部103は、ステップS102で取得した道路情報から第3走行経路を演算する。ステップS106が終了すると、図5に示す自動運転制御Aが開始される。続いて、図5を参照して、本実施形態に係る自動運転制御Aを説明する。図5は、自動運転制御Aを示すフローチャートである。
ステップS107では、走行経路判定部105は、第1走行経路と第3走行経路とが一致しているか否かを判定する。すなわち、走行経路判定部105は、地図情報に基づく自車両の走行経路と、先行車両情報に基づく走行経路とが一致しているか否かを判定する。具体的には、ステップS107では、走行経路比較部104は、ステップS104で演算された第1走行経路とステップS106で演算された第3走行経路との差分を演算する。そして、走行経路判定部105には、走行経路比較部104で演算された、第1走行経路と第3走行経路との差分が入力される。走行経路判定部105は、走行経路比較部104で演算された差分が所定の閾値未満の場合には、第1走行経路と第3走行経路とは一致、と判定する。同時に、走行経路判定部105は、第1走行経路と第3走行経路とが一致の判定結果を駆動機構制御部106に出力し、ステップS108に進む。走行経路判定部105は、走行経路比較部104で演算された差分が所定の閾値以上の場合には、第1走行経路と第3走行経路とは不一致、と判定し、ステップS109に進む。
ステップS108では、ステップS107で判定された判定結果(第1走行経路と第3走行経路は一致)により、駆動機構制御部106は、第1走行経路に従って自動運転制御を継続する。
ステップS109では、走行経路判定部105は、第2走行経路と第3走行経路とが一致しているか否かを判定する。すなわち、走行経路判定部105は、先行車両情報に基づく走行経路と、道路情報に基づく走行経路とが一致しているか否かを判定する。具体的には、ステップS109では、走行経路判定部105は、走行経路比較部104に、第2走行経路と第3走行経路を比較するよう、比較指令を送信する。比較指令により、走行経路比較部104は、ステップS105で演算された第2走行経路とステップS106で演算された第3走行経路との差分を演算する。そして、走行経路判定部105には、走行経路比較部104で演算された、第2走行経路と第3走行経路との差分が入力される。走行経路判定部105は、走行経路比較部104で演算された差分が所定の閾値未満の場合には、第2走行経路と第3走行経路とは一致、と判定する。同時に、走行経路判定部105は、ステップS107で判定された、第1走行経路と第3走行経路とが不一致の判定結果と、ステップS109で判定した、第2走行経路と第3走行経路とが一致の判定結果とを駆動機構制御部106に出力し、ステップS110に進む。走行経路判定部105は、走行経路比較部104で演算された差分が所定の閾値以上の場合には、第2走行経路と第3走行経路とは不一致、と判定する。同時に、走行経路判定部105は、ステップS107で判定された、第1走行経路と第3走行経路とが不一致の判定結果と、ステップS109で判定した、第2走行経路と第3走行経路とが不一致の判定結果とを駆動機構制御部106に出力し、ステップS111に進む。
ステップS110では、ステップS107及びステップS109で判定された判定結果(第1走行経路と第3走行経路は不一致、第2走行経路と第3走行経路は一致)により、駆動機構制御部106は、第3走行経路に従って速度を下げながら自動運転制御を継続する。ステップS110では、ステップS107及びステップS109で判定された判定結果(第1走行経路と第3走行経路は不一致、第2走行経路と第3走行経路は不一致)により、駆動機構制御部106は、自動運転制御から手動運転制御に切替える。ステップS108、S110、又はS111が終了すると、自動運転制御Aが終了し、走行制御処理は終了する。
図4、5に示す走行制御処理の具体例として、図2A〜図2Cに示す走行経路(第1走行経路P1、第2走行経路P2、第3走行経路P3)と図3A、図3Bに示す走行経路の比較結果(第1走行経路P1と第3走行経路P3との比較結果、第2走行経路P2と第3走行経路P3との比較結果)とを用いて説明する。図4に示すステップS101〜106では、図2A〜図2Cに示す走行経路が演算される。以降、図5に示す自動運転制御Aを説明する。
ステップS107では、第1走行経路P1と第3走行経路P3とが一致しているか否かが判定される。図3Aに示すように、第1走行経路P1と第3走行経路P3との差分である距離D2が所定の閾値以上であるため、走行経路判定部105は、第1走行経路P1と第3走行経路P3とは一致、と判定し、ステップS109へ進む。
ステップS109では、第2走行経路P2と第3走行経路P3とが一致しているか否かが判定される。図3Bに示すように、第2走行経路P2と第3走行経路P3との差分である距離D3が所定の閾値未満であるため、走行経路判定部105は、第2走行経路P2と第3走行経路P3とは不一致、と判定し、ステップS110へ進む。
ステップS110では、駆動機構制御部106は、第3走行経路P3に従って速度を下げながら自動運転制御を継続する。
以上のように、本実施形態に係る走行制御装置100は、自車両の前方を走行する先行車両の情報及び地図情報を取得し、地図情報に基づく自車両の走行経路を第1走行経路として演算し、先行車両の情報に基づく走行経路を第2走行経路として演算する。そして、走行制御装置100は、第1走行経路に従って自車両の走行を制御し、第1走行経路と第2走行経路とが一致するか否かを判定する。走行制御装置100は、第1走行経路と第2走行経路とが一致しない場合には、第1走行経路に従って自車両の走行を制御することを禁止する。これにより、地図情報の誤りを判断する判断精度が向上し、誤った判断結果に基づいて車両の走行が制御されることを抑制できる。
例えば、自動運転制御においては、地図情報に基づく走行経路に従って自車両を走行させるため、地図データベース50の地図情報には、高精度地図が用いられる。高精度地図とは、車両が実際に道路を走行する際に道路形状を検出し、検出した道路形状に基づく地図であり、高精度地図における地図情報は精度が高い。しかし、例えば、道路工事による通行止め又は車線規制が行われると、又は道路標識が変更されると、高精度地図であっても実際の道路形状と異なる場合がある。このような場合において、カメラ群10が撮像した画像情報、すなわち、道路情報に基づく走行経路を用いると、上述したように、地図情報の誤りを判断する判断精度は、カメラ群10が撮像した画像情報の精度に応じて異なってしまう。本実施形態に係る走行制御装置100は、道路情報に基づく走行経路だけでなく、自車両の前方を走行する先行車両の走行経路を用いることで、地図情報の誤りを判断する判断精度が向上させることができる。このため、高精度地図と実際の道路形状とが異なる場合であっても、誤った判断結果に基づいて車両の走行が制御されることを抑制できる。
また、本実施形態では、自車両が走行している道路の白線を道路情報として取得し、道路情報に基づく自車両の走行経路を第3走行経路として演算する。そして、第1走行経路、第2走行経路、及び第3走行経路の比較に応じて、第1走行経路に従って自車両の走行を制御することを禁止する。これにより、複数の走行経路を比較対象として地図情報が誤っているか否かを判断するため、地図情報が誤っているか否かの判断の判断精度が向上する。その結果、誤った地図情報に基づいて車両の走行が制御されることをより適切に抑制できる。
さらに、本実施形態では、第1走行経路と第3走行経路とを比較し、第1走行経路と第3走行経路との比較結果に応じて、第2走行経路と第3走行経路とを比較し、第2走行経路と第3走行経路との比較結果に応じて、第3走行経路に従って自車両の走行を制御する。これにより、先行車両の情報に基づく走行経路と比較して道路情報に基づく走行経路が誤っているか否か判断するため、道路情報が誤っているか否かの判断精度が向上する。その結果、誤った地図情報に基づいて車両の走行が制御されることをより適切に抑制しつつ、車両の自動運転制御を継続することができる。
加えて、本実施形態では、第1走行経路と第3走行経路とを比較し、第1走行経路と第3走行経路とが一致しない場合には、第2走行経路と第3走行経路とを比較する。そして、第2走行経路と第3走行経路とが一致する場合には、第1走行経路に従って自車両の走行を制御することを禁止する。これにより、地図情報が誤っているか否かの判断の判断精度が向上し、誤った地図情報に基づいて車両の走行が制御されることを抑制できる。
なお、以上に説明した第1実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。
例えば、上述した第1実施形態では、第1走行経路と第3走行経路とが不一致の判定結果及び第2走行経路と第3走行経路とが一致の判定結果から、第1走行経路と第2走行経路とは不一致、と間接的に判定する構成を例示したが、この構成に限定されない。例えば、制御装置100は、第1走行経路と第2走行経路とを比較し、第1走行経路と第2走行経路とは不一致、と直接的に判定してもよい。これにより、第3走行経路を演算することなく、第1走行経路と第2走行経路とが一致しているか否かを判定することができる。そして、制御装置100は、第1走行経路と第2走行経路とが一致、と判定した場合には、地図情報が誤っていない、と判断してもよい。加えて、制御装置100は、第1走行経路と第2走行経路とが一致、と判定した場合には、自動運転制御を継続し、第1走行経路に従って自車両の走行を制御してもよい。また、制御装置100は、第1走行経路と第2走行経路とが不一致、と判定した場合には、自動運転制御から手動運転制御に切替えてもよい。すなわち、制御装置100は、第1走行経路に従って走行を制御することを禁止してもよい。
≪第2実施形態≫
次に、第2実施形態に係る走行制御装置について説明する。図6は、第2実施形態に係る走行制御装置2の構成を示すブロック図である。本実施形態に係る走行制御装置2は、以下に説明するセンサ群70、記憶装置80、制御装置200以外は、第1実施形態に係る走行制御装置1と同様の構成を有する。
センサ群70は、車両の走行状態を検出するためのセンサである。本実施形態では、センサ群70は、車速センサ、操舵角センサ、ヨーレートセンサを少なくとも含む。車速センサは、自車両の車速、加速度を検出する。操舵角センサは、自車両の操舵量、操舵速度、操舵加速度等の操舵に関する操舵情報を検出する。ヨーレートセンサは、自車両のヨーレート、自車両のヨー角を検出する。センサ群70は、それぞれのセンサで検出した検出結果を制御装置200に出力する。
記憶装置80は、自車両の走行履歴を記録するための記憶装置であり、例えば、読み出し/書き込み可能なROM、HDD等が挙げられる。本実施形態では、記憶装置80には、制御装置200から自車両の走行履歴が入力され、記憶装置80には自車両の走行履歴が記録される。例えば、制御装置200は、所定の期間経過ごとに、自車両の走行履歴を記憶装置80に記録する。また、記憶装置80は、第2走行経路演算部202からの出力指令に応じて、記録された走行履歴を制御装置200に出力する。走行履歴としては、例えば、自車両の走行した位置、自車両が走行した道路種別、道路幅、道路形状、車線に関する情報、自動運転制御の設定情報だけでなく、車両の走行状態に関する情報が挙げられる。車両の走行状態に関する情報の例としては、センサ群70により検出された、車両の車速及び/又は加速度、車両の操舵情報、ヨーレート及び/又はヨー角が挙げられる。
制御装置200は、第4走行経路演算部207を備えることと、以下に説明する機能が第2走行経路演算部202、走行経路判定部205、及び駆動機構制御部206に加わること以外は、第1実施形態に係る制御装置100と同様の構成を有する。
第4走行経路演算部207には、記憶装置80から走行履歴が入力され、位置検出装置40から自車両の走行位置が入力され、センサ群70から検出結果が入力され、第2走行経路演算部202から演算指令が入力される。第4走行経路演算部207は、演算指令に応じて、自車両の走行履歴に基づく走行経路(以下、第4走行経路と称す)を演算する。第4走行経路演算部207は、走行履歴に含まれる自車両の過去の走行位置から、現在の自車両の走行位置に対応する走行位置を抽出するとともに、走行履歴から、対応した過去の走行経路を抽出する。第4走行経路演算部207は、抽出した過去の走行経路を第4走行経路として設定する。第4走行経路演算部207は、走行履歴から、現在の自車両の走行位置に対応する走行経路を抽出する際に、自車両の現在の走行状態を用いることで、より精度よく第4走行経路を設定することができる。すなわち、第4走行経路演算部207は、例えば、走行履歴から複数の走行経路が抽出された場合には、走行履歴に含まれる過去の走行状態と、センサ群70が検出した現在の走行状態とを比較することで、第4走行経路を精度よく設定することができる。比較する走行状態としては、速度及び加速度、操舵情報、ヨーレート又はヨー角が挙げられる。
本実施形態に係る第2走行経路演算部202は、第1実施形態に係る第2走行経路演算部202の機能と比べて、先行車両が認識できない場合の処理の点で異なる以外は同様の機能を有する。第2走行経路演算部202は、測距装置20の検出結果のうち、先行車両の存否を確認することで、先行車両の情報が含まれているか否かを判定する。第2走行経路演算部202は、測距装置20の検出結果から先行車両の存在を確認できた場合に、先行車両の情報から第2走行経路を演算する。反対に、第2走行経路演算部202は、測距装置20の検出結果から先行車両の存在を確認できない場合に、第2走行経路を演算せず、第4走行経路演算部207に演算指令を出力するとともに、記憶装置80に出力指令を出力する。また、第2走行経路演算部202は、先行車両の存否についての判定結果を走行経路判定部205に出力する。
本実施形態における走行経路判定部205は、第2走行経路演算部202から入力される、先行車両の存否についての判定結果に応じて、異なる機能を有する。また、走行経路判定部205は、第1実施形態と同様に、2つの走行経路の判定結果に基づいて、地図情報に誤りがあるか否かを判断する。
走行経路判定部205は、先行車両が存在する場合には、第1実施形態に係る走行経路判定部105と同様の処理を行うため、説明は省略する。なお、この場合において、駆動機構制御部206も、第1実施形態に係る駆動機構制御部206と同様の処理を行うため、先行車両が存在する場合における駆動機構制御部206の説明も省略する。
次に、先行車両が存在しない場合における、走行経路判定部205を説明する。本実施形態においては、走行経路判定部205は、第1実施形態に係る走行経路判定部105と同様に、まず、第1走行経路と第3走行経路が一致しているか否かを判定する。
走行経路判定部205は、第1走行経路と第3走行経路とは一致、と判定した場合には、第1実施形態に係る走行経路判定部105と同様であるため、説明は省略する。
走行経路判定部205は、第1走行経路と第3走行経路とが不一致、と判定した場合には、第3走行経路と第4走行経路とを比較するよう、走行経路比較部204に比較指令を出力する。そして、走行経路判定部205には、当該比較指令により走行経路比較部204で演算された、第3走行経路と第4走行経路との差分が入力され、走行経路判定部205は第3走行経路と第4走行経路が一致しているか否かを判定する。次に、第1走行経路と第3走行経路との判定結果が不一致の場合における、第3走行経路と第4走行経路との判定結果について説明する。
走行経路判定部205は、第3走行経路と第4走行経路とは一致、と判定した場合には、地図情報が誤っている、と判断する。この場合、第3走行経路と第4走行経路とは一致しているにも関わらず、第1走行経路と第3走行経路とが一致していないため、走行経路判定部205は、地図情報が誤っている、と判断する。この場合において、走行経路判定部205は、第1走行経路と第3走行経路との判定結果及び第3走行経路と第4走行経路との判定結果から、第1走行経路と第4走行経路とは不一致、と間接的に判定することができる。走行経路判定部205は、第1走行経路と第3走行経路とが不一致の判定結果及び第3走行経路と第4走行経路とが一致の判定結果を、駆動機構制御部206に出力する。
一方、走行経路判定部205は、第3走行経路と第4走行経路とは不一致、と判定した場合には、地図情報が誤っているか否かの判断ができない。この場合、第1走行経路と第3走行経路とが不一致であり、さらに、第3走行経路と第4走行経路とも不一致であるため、走行経路判定部205は、3つの走行経路のうち一致する2つの走行経路がなく、地図情報について判断することができない。走行経路判定部205は、第1走行経路と第3走行経路とが不一致の判定結果及び第3走行経路と第4走行経路とが不一致の判定結果を、駆動機構制御部106に出力する。
続いて、先行車両が存在しない場合における、駆動機構制御部206について説明する。
第1走行経路と第3走行経路とが一致の判定結果が、駆動機構制御部106に入力されると、駆動機構制御部206は、第1実施形態に係る駆動機構制御部106と同様の処理を行う。すなわち、駆動機構制御部206は、自動運転制御を継続し、第1走行経路、すなわち、地図情報に基づく走行経路に従って自車両の走行を制御する。
また、第1走行経路と第3走行経路とが不一致の判定結果及び第3走行経路と第4走行経路とが一致の判定結果が、駆動機構制御部206に入力されると、駆動機構制御部206は、第3走行経路に従って速度を下げながら自車両の走行を制御する。すなわち、駆動機構制御部106は、第1走行経路に従って走行を制御することを禁止する。
さらに、第1走行経路と第3走行経路とが不一致の判定結果及び第3走行経路と第4走行経路とが不一致の判定結果が、駆動機構制御部206に入力されると、駆動機構制御部206は、自動運転制御から手動運転制御に切替える。すなわち、駆動機構制御部206は、第1走行経路に従って走行を制御することを禁止する。
次に、図7を参照して、本実施形態に係る走行制御処理について説明する。図7は、本実施形態に係る走行制御処理を示すフローチャートである。なお、以下に説明する走行制御処理は、ドライバーにより自動運転制御がオンに設定されることで開始される。また、図7に示す走行経路演算処理は、所定の周期毎に実行される。
ステップS201、S202、S204、S205は、第1実施形態に係る走行制御処理のおける、ステップS101、S102、S104、S106と同様であるため、説明は省略する。
ステップS203では、制御装置100は、測距装置20が検出した検出結果を取得する。
ステップS206では、第2走行経路演算部202は、ステップS203で取得した検出結果に先行車両情報が含まれているか否かを判定する。例えば、第2走行経路演算部202は、測距装置20の検出結果に含まれる先行車両の存否情報を確認することで、先行車両情報が含まれているか否かを判定する。測距装置20の検出結果に先行車両情報が含まれている場合には、第2走行経路演算部202は、先行車両情報を取得し、ステップS207に進む。検出結果に先行車両情報が含まれていない場合には、第2走行経路演算部202は、第2走行経路の演算せずに、第4走行経路演算部207に演算指令を出力し、ステップS208に進む。
ステップS207では、第2走行経路演算部202は、ステップS206で取得した先行車両情報から第2走行経路を演算する。ステップS207が終了すると、図5に示す自動運転制御Aが開始される。自動運転制御Aについての説明は省略する。
ステップS208では、第4走行経路演算部207は、記憶装置80から走行履歴を取得する。ステップS209では、第4走行経路演算部207は、ステップS208で取得した走行履歴から第4走行経路を演算する。ステップS209が終了すると、図8に示す自動運転制御Bが開始される。続いて、図8を参照して、本実施形態に係る自動運転制御Bを説明する。図8は、自動運転制御Bを示すフローチャートである。
図8に示す自動運転制御Bは、先行車両情報が取得でなかった場合、すなわち、先行車両を認識できなかった場合のフローである。ステップS210,S211は、第1実施形態に係る自動運転制御Aにおけるステップ107,S108と同様であるため、説明は省略する。
ステップS212では、走行経路判定部205は、第3走行経路と第4走行経路とが一致しているか否かを判定する。すなわち、走行経路判定部205は、道路情報に基づく走行経路と、走行履歴に基づく走行経路とが一致しているか否かを判定する。具体的には、ステップS212では、走行経路判定部205は、走行経路比較部204に、第3走行経路と第4走行経路を比較するよう、比較指令を送信する。走行経路比較部204は、ステップS205で演算された第3走行経路とステップS209で演算された第4走行経路との差分を演算する。そして、走行経路判定部205には、走行経路比較部204で演算された、第3走行経路と第4走行経路との差分が入力される。走行経路判定部205は、走行経路比較部204で演算された差分が所定の閾値未満の場合には、第3走行経路と第4走行経路とは一致、と判定する。同時に、走行経路判定部205は、ステップS210で判定された、第1走行経路と第3走行経路とが不一致の判定結果と、ステップS212で判定した、第3走行経路と第4走行経路とが一致の判定結果とを駆動機構制御部206に出力し、ステップS213に進む。走行経路判定部205は、走行経路比較部204で演算された差分が所定の閾値以上の場合には、第3走行経路と第4走行経路とは不一致、と判定する。同時に、走行経路判定部205は、ステップS210で判定された、第1走行経路と第3走行経路とが不一致の判定結果と、ステップS212で判定した、第3走行経路と第4走行経路とが不一致の判定結果とを駆動機構制御部206に出力し、ステップS214に進む。
ステップS213では、ステップS212で判定された判定結果(第1走行経路と第3走行経路は不一致、第3走行経路と第4走行経路は一致)により、駆動機構制御部206は、第3走行経路に従って速度を下げながら自動運転制御を継続する。ステップS214では、ステップS212で判定された判定結果(第1走行経路と第3走行経路は不一致、第3走行経路と第4走行経路は不一致)により、駆動機構制御部206は、自動運転制御から手動運転制御に切替える。ステップS211、S213、又はS214が終了すると、自動運転制御Bが終了し、走行制御処理は終了する。
以上のように、本実施形態に係る走行制御装置2は、自車両の走行履歴を記録し、先行車両の情報を取得できない場合には、走行履歴に基づく自車両の走行経路を第4走行経路として演算する。そして、走行制御装置2は、第1走行経路と第4走行経路とが一致するか否かを判定する。走行制御装置2は、第3走行経路と第4走行経路とが一致しない場合には、第1走行経路に従って自車両の走行を制御することを禁止する。これにより、先行車両が認識できない場合であっても、地図情報の誤りを判断する判断精度が向上し、誤った判断結果に基づいて車両の走行が制御されることを抑制できる。
なお、以上に説明した第1実施形態及び第2実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
例えば、上述した第1実施形態及び第2実施形態では、制御装置100が、カメラ群10からの画像情報を基づいて、自車両が走行している道路の形状を特定する構成を例示したが、この構成に限定されない。例えば、制御装置100は、測距装置20からの検出結果に含まれる、自車両の周辺の情報(中央分離帯、縁石、ガードレール等)に基づいて、道路の形状を特定してもよい。また、カメラ群10が撮像した画像情報と測距装置が検出した検出結果を組み合わせて、道路の形状を特定してもよい。
また、上述した第1実施形態では、制御装置100が走行経路を比較する場合には、2つの走行経路を比較する構成を例示したが、この構成に限定されない。例えば、制御装置100は、第1走行経路、第2走行経路、及び第3走行経路を同時に比較してもよい。同様に、上述した第2実施形態においても、例えば、制御装置200は、第1走行経路、第3走行経路、及び第4走行経路を同時に比較してもよい。
加えて、上述した第1実施形態では、第1走行経路と第3走行経路とが一致しない、かつ、第2走行経路と第3走行経路とが一致する場合には、制御装置100は第3走行経路に従って速度を下げながら自動運転制御を継続する構成を例示したが、この構成に限定されない。例えば、制御装置100は、速度を下げずに第3走行経路に従って自動運転制御を継続してもよい。また、制御装置100は、第2走行経路に従って自動運転制御を継続してもよい。さらに、制御装置100は、自動運転制御から手動運転制御に切替えてもよい。すなわち、制御装置100は、第1走行経路に従って自車両の走行を制御することを禁止してもよい。同様に、上述した第2実施形態においても、第1走行経路と第3走行経路とが一致しない、かつ、第3走行経路と第4走行経路とが一致する場合には、制御装置200は、速度を下げずに第3走行経路に従って自動運転制御を継続してもよい。また、制御装置200は、第4走行経路に従って自動運転制御を継続してもよい。さらに、制御装置200は、自動運転制御から手動運転制御に切替えてもよい。すなわち、制御装置200は、第1走行経路に従って自車両の走行を制御することを禁止してもよい。
また、上述した第2実施形態では、制御装置200が自車両の走行履歴に基づいて、第4走行経路を演算する構成を例示したが、この構成に限定されない。例えば、車両が外部サーバと通信可能な通信装置を備えており、外部サーバが走行する複数の車両からプローブ情報を取得し、外部サーバから自車両に対して他車両のプローブ情報を提供するシステムにおいては、通信装置を介して外部サーバから提供された他車両のプローブ情報からに含まれる他車両の走行履歴を、記憶装置80に記録させてもよい。そして、制御装置200は、他車両の走行履歴に基づいて第4走行経路を演算してもよい。これにより、自車両がこれまでに走行していない道路に対しても信頼性の高い走行経路を演算することができる。
また、上述した第2実施形態において、制御装置200は、第3走行経路と第4走行経路とが不一致であることを判定し、自動運転から手動運転に切り替えた場合には、手動運転に切り替えた後における、自車両の走行位置又は走行情報を記憶装置80に記録する構成にしてもよい。これにより、記憶装置80には自車両の最新の走行履歴が記録され、第4走行経路の演算精度が向上する。その結果、先行車両が認識できない場合においても、地図情報の誤りを判断する判断精度をさらに向上させることができる。その結果、誤った判断結果に基づいて車両の走行が制御されることを抑制できる。
なお、上述した第1実施形態に係る走行制御装置1及び第2実施形態に係る走行制御装置2の測距装置20は本発明のセンサに相当する。