以下、本発明の実施の形態について図面を参照しながら説明する。図1は、本発明の実施の形態に係る車両1の構成を示すブロック図であり、自動運転に関連する構成である。自動運転モードを搭載した車両1(自車)は、運転支援装置10、自動運転制御装置20、表示装置30、検出部40及び運転操作部50を備える。
表示装置30は、表示部31及び入力部32を含む。表示装置30は、カーナビゲーションシステム、ディスプレイオーディオ等のヘッドユニットであってもよいし、スマートフォン、タブレット等の携帯端末機器であってもよいし、専用のコンソール端末装置であってもよい。
表示部31は液晶ディスプレイや有機ELディスプレイやヘッドアップディスプレイ(HUD)である。入力部32はユーザの入力を受け付けるユーザインタフェースである。表示部31と入力部32は一体化したタッチパネルディスプレイであってもよい。なお、タッチパネルまたはタッチパッド上での手の近接検知やホバー操作による指の位置検知を可能な近接タッチパネルのように、表示部から所定距離を離れた場所でのジェスチャ入力を受け付けられるものであってもよい。更に、入力部32は、マウス、スタイラスペン、トラックボール等のジェスチャ入力を補助する入力デバイスを備えていてもよい。また可視光または赤外線を発光するペンを使用してもよい。
なお、表示部31と入力部32が一体型のタッチパネルディスプレイではなく、物理的にセパレートであってもよい。例えば入力部32は、カメラ等のセンサを備え、空中ジェスチャ操作入力が可能な非接触型の入力デバイスであってもよい。例えば、対象を指さしでポイントし、親指と人差し指を近づけて閉じるジェスチャでドラッグ開始、親指と人差し指を離すジェスチャでドラッグ終了などの操作方法が考えられる。
運転支援装置10と表示装置30との間は、専用線やCAN(Controller Area Network)等の有線通信で接続されていても良いし、USB、Ethernet(登録商標)、Wi−Fi(登録商標)、Bluetooth(登録商標)等の有線通信または無線通信で接続されていても良い。
検出部40は、位置情報取得部41、センサ42、速度情報取得部43及び地図情報取得部44を含む。位置情報取得部41はGPS受信機から車両1の現在位置を取得する。センサ42は車外の状況および車両1の状態を検出するための各種センサの総称である。車外の状況を検出するためのセンサとして例えばカメラ、ミリ波レーダ、LIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)、気温センサ、気圧センサ、湿度センサ、照度センサ等が搭載される。車外の状況とは、自車の走行する道路状況や天候を含む環境及び自車周辺を走行する他車の走行位置や走行状態が考えられる。なお、センサが検出できる車外の情報であれば何でもよい。また車両1の状態を検出するためのセンサとして例えば、加速度センサ、ジャイロセンサ、地磁気センサ、傾斜センサ等が搭載される。速度情報取得部43は車速センサから車両1の現在速度を取得する。地図情報取得部44は、地図データベースから車両1の現在位置周辺の地図情報を取得する。地図データベースは、車両1内の記録媒体に記録されていてもよいし、使用時にネットワークを介して地図サーバからダウンロードしてもよい。
検出部40と自動運転制御装置20との間は、専用線やUSB、Ethernet(登録商標)、CAN(Controller Area Network)等の有線通信で接続される。なお検出部40が取得および検出したデータを、検出部40から運転支援装置10に直接出力可能な構成であってもよい。
運転操作部50は、ステアリング51、ブレーキペダル52、アクセルペダル53、及びウインカスイッチ54を含む。本実施の形態に係る自動運転モードでは、加速、減速、操舵、及びウインカ点滅が自動運転制御装置20による自動制御の対象であり、図1にはそれらの制御を手動で行う際の操作部を描いている。なお運転者が手動で運転操作部50を少し動かした情報を運転支援装置10に出力してもよい。
ステアリング51は車両を操舵するための操作部である。運転者によりステアリング51が回転されると、ステアリングアクチュエータを介して車両の進行方向が制御される。ステアリングアクチュエータはステアリングECU(Electronic Control Unit)により電子制御が可能である。
ブレーキペダル52は車両1を減速させるための操作部である。運転者によりブレーキペダル52が踏まれると、ブレーキアクチュエータを介して車両が減速される。ブレーキアクチュエータはブレーキECUにより電子制御が可能である。
アクセルペダル53は車両1を加速させるための操作部である。運転者によりアクセルペダル53が踏まれると、アクセルアクチュエータを介してエンジン回転数および/またはモータ回転数が制御される。純粋なエンジンカーではエンジン回転数が制御され、純粋な電気自動車ではモータ回転数が制御され、ハイブリッドカーではその両方が制御される。アクセルアクチュエータはエンジンECUおよび/またはモータECUにより電子制御が可能である。
ウインカスイッチ54は、車両の進路を外部に通知するためのウインカを点滅させるための操作部である。運転者によりウインカスイッチ54がオン/オフされると、ウインカコントローラを介してウインカが点灯/消灯される。ウインカコントローラは、ウインカランプへの給電を制御するリレー等の駆動回路を備える。
ステアリングECU、ブレーキECU、エンジンECU、モータECU、ウインカコントローラのそれぞれと自動運転制御装置20との間は、CANや専用線等の有線通信で接続される。ステアリングECU、ブレーキECU、エンジンECU、モータECU、ウインカコントローラはそれぞれ、ステアリング、ブレーキ、エンジン、モータ、ウインカランプの状態を示す状態信号を自動運転制御装置20に送信する。
自動運転モードにおいて、ステアリングECU、ブレーキECU、エンジンECU、モータECUは、自動運転制御装置20から供給される制御信号に応じて各アクチュエータを駆動する。手動運転モードにおいては、ステアリング51、ブレーキペダル52、アクセルペダル53のそれぞれから各アクチュエータに直接機械的に指示が伝達される構成であってもよいし、各ECUを介した電子制御が介在する構成であってもよい。ウインカコントローラは自動運転制御装置20から供給される制御信号、又はウインカスイッチ54からの指示信号に応じてウインカランプを点灯/消灯する。
自動運転制御装置20は、自動運転制御機能を実装した自動運転コントローラであり、制御部21、記憶部22及び入出力部23を備える。制御部21の構成はハードウェア資源とソフトウェア資源の協働、又はハードウェア資源のみにより実現できる。ハードウェア資源としてプロセッサ、ROM、RAM、その他のLSIを利用でき、ソフトウェア資源としてオペレーティングシステム、アプリケーション、ファームウェア等のプログラムを利用できる。記憶部22は、フラッシュメモリ等の不揮発性記録媒体を備える。入出力部23は、各種の通信フォーマットに応じた各種の通信制御を実行する。
制御部21は、検出部40や各種ECUから収集した各種パラメータ値を自動運転アルゴリズムに適用して、車両1の進行方向等の自動制御対象を制御するための制御値を算出する。制御部21は算出した制御値を、各制御対象のECU又はコントローラに伝達する。本実施の形態ではステアリングECU、ブレーキECU、エンジンECU、ウインカコントローラに伝達する。なお電気自動車やハイブリッドカーの場合、エンジンECUに代えて又は加えてモータECUに制御値を伝達する。
運転支援装置10は、車両1と運転者との間のインタフェース機能を実行するためのHMI(Human Machine Interface)コントローラであり、判定部11、生成部12、指示部13及び入出力部14を備える。判定部11、生成部12及び指示部13は、ハードウェア資源とソフトウェア資源の協働、又はハードウェア資源のみにより実現できる。ハードウェア資源としてプロセッサ、ROM、RAM、その他のLSIを利用でき、ソフトウェア資源としてオペレーティングシステム、アプリケーション、ファームウェア等のプログラムを利用できる。入出力部14は、各種の通信フォーマットに応じた各種の通信制御を実行する。入出力部14は、画像出力部14a、操作信号入力部14b、コマンド出力部14c、及び車両情報入力部14dを含む。画像出力部14aは、生成部12が生成した画像を表示部31に出力する。操作信号入力部14bは、入力部32に対してなされた運転者や乗員もしくは車外にいるユーザの操作による操作信号を受け付け、判定部11に出力する。コマンド出力部14cは、指示部13により指示されたコマンドを自動運転コントローラ20に出力する。車両情報入力部14dは、検出部40が取得した検出データや自動運転コントローラ20により生成された車両側の情報を受け付け、生成部12に出力する。
自動運転コントローラ20とHMIコントローラ10との間は直接、信号線で接続される。なおCANを介して接続する構成であってもよい。また自動運転コントローラ20とHMIコントローラ10を統合して1つのコントローラとする構成も可能である。
図2は、図1の検出部40、自動運転コントローラ20、HMIコントローラ10、表示部31、及び入力部32の基本シーケンスの一例を示す図である。検出部40は、自車位置情報、自車走行道路情報、及び自車周辺を走行する他車を含む自車周辺情報を検出して自動運転コントローラ20に出力する(P1)。自動運転コントローラ20は、検出部40から取得した自車位置情報、自車走行道路情報、及び自車周辺情報をHMIコントローラ10に出力する(P2)。HMIコントローラ10は、自動運転コントローラ20から取得した情報をもとに、自車と他車と自車の周辺状況を含む模式図を生成する(P3)。HMIコントローラ10は、生成した模式図を表示装置30に出力し、表示部31に表示させる(P4)。
表示部31に表示された模式図を見たユーザは、入力部32に接触する(P5)。表示部31は、接触を検出した座標データをHMIコントローラ10に出力する(P6)。HMIコントローラ10は、表示装置30から取得した座標データをもとにコマンドの種別を判定する(P7)。HMIコントローラ10は、一定時間が経過するまでは、追加入力の受け付けを行う(P8〜P12)。HMIコントローラ10はコマンドの判定後、コマンドの指示中であることを示す模式図を再生成する(P8)。HMIコントローラ10は、再生成した模式図を表示装置30に出力し、表示部31に表示させる(P9)。なおユーザの接触によるジェスチャ操作に該当するコマンドが存在しない場合は、エラーメッセージを含む模式図を生成して表示装置30に出力し、表示部31に表示させる。
コマンドの指示中であることを示す模式図を見たユーザが、入力部32に接触すると(P10)、表示部31は、接触を検出した座標データをHMIコントローラ10に出力する(P11)。HMIコントローラ10は、表示装置30から取得した座標データをもとに追加コマンド処理を実行する(P12)。HMIコントローラ10は、追加コマンド処理(P12)で新たなコマンドの入力がなかった場合は、P7で判定したコマンドを自動運転コントローラ20に発行する(P13、P14)。追加コマンド処理(P12)で新たなコマンドが入力された場合は、新たなコマンドを自動運転コントローラ20に発行する。新たに入力されたコマンドがキャンセルコマンドであった場合は、コマンド発行を取りやめる。新たなコマンドによる元のコマンドの上書き・キャンセル処理は、自動運転コントローラ20で行ってもよく、その場合、HMIコントローラ10は、P7、P12におけるコマンド判定処理後に自動運転コントローラ20へコマンドの送信を行い、自動運転コントローラ20内部の状態に応じて上書き・キャンセル処理を行う。
検出部40は定期的に、自車位置情報、自車走行道路情報、及び自車周辺情報を検出して自動運転コントローラ20に出力する(P15)。自動運転コントローラ20は当該情報をもとに、HMIコントローラ10から発行されたコマンドにより指示された制御が実行可能であるか否か判定する(P16)。実行可能である場合、自動運転コントローラ20は制御開始通知をHMIコントローラ10に出力する(P17)。HMIコントローラ10は制御開始通知を受けると、制御中であることを示すメッセージを含む模式図を再生成する(P18)。HMIコントローラ10は、再生成した模式図を表示装置30に出力し、表示部31に表示させる(P19)。図示しないが、自動運転コントローラ20が、検出部40や各種ECUから収集した各種パラメータ値を自動運転アルゴリズムに適用して、発行されたコマンドを遂行するための車両1の進行方向等の自動制御対象となる運転操作部50を制御する具体的な制御値を算出し、各制御対象のECU又はコントローラに伝達する。運転操作部50は具体的な制御値に基づき動作する。運転操作部50は、所定の制御値または検出部40の検出データが所定値(範囲)になり、自動運転コントローラ20が、発行されたコマンドの条件に満たしたと判断したら、コマンド実行完了と判断する。
HMIコントローラ10は、自動運転コントローラ20から制御完了通知を受けると、制御が完了したことを示すメッセージを含む模式図を生成して表示装置30に出力する。なお、ユーザから操作を受け付けない期間は、操作を受け付けないことを示すメッセージを含む模式図を生成して表示装置30に出力する。
図3は、図1のHMIコントローラ10の処理を説明するための基本フローチャートの一例を示す図である。HMIコントローラ10の判定部11は、運転モードが自動運転モードか手動運転モードであるかをチェックする(S1)。手動運転モードの場合(S2のN)、処理を終了する。自動運転モードの場合(S2のY)、以下のように処理される。
検出部40から自動運転コントローラ20に入力されるセンサ情報は随時更新されている(S3)。HMIコントローラ10の生成部12は、自動運転コントローラ20から入力される自車位置情報、自車走行道路情報、及び自車周辺を走行する他車を含む自車周辺情報を基に自車と他車と自車の周辺状況を含む模式図を生成し、生成した模式図を表示部31に描画する(S4)。判定部11は受付モードが、ユーザからの操作を受付可能な受付可モードか、ユーザからの操作を受付不可な受付不可モードであるかをチェックする(S5)。受付不可モードである場合(S6のN)、処理を終了する。受付可モードである場合(S6のY)、判定部11は入力部32に対するユーザによる接触があるか否か判定する(S7)。接触がない場合(S8のN)、後述する一定時間経過判定処理(S12)を実行する。接触がある場合(S8のY)、判定部11は、ユーザによるジェスチャ操作入力に応じて制御コマンドを決定する(S9)。この決定処理の詳細は後述する。
ステップS9で決定された制御コマンドがキャンセルコマンドでない場合(S10のN)、生成部12は表示部31にコマンド指示中を表示する(S11)。制御コマンドが決定されてから一定時間経過すると(S12のY)、ステップS9で決定された制御コマンドがある場合(S13のY)、表示部31に操作受付不可を表示し(S14)、判定部11は受付モードを受付可モードから受付不可モードに更新し(S15)、指示部13は、決定された制御コマンドを自動運転コントローラ20に出力する(S16)。一定時間が経過するまでは(S12のN)、ステップS3に遷移する。
ステップS10において、決定された制御コマンドがキャンセルコマンドである場合(S10のY)、キャンセルを表示し(S110)、処理を終了する。ステップS13において、ステップS9で決定された制御コマンドがない場合、入力エラーを表示し(S111)、処理を終了する。自動運転コントローラ20は、検出部40から自車位置情報、自車走行道路情報、及び自車周辺情報を定期的に検出している。周辺状況は刻々と変化するため、制御コマンドが自動運転コントローラ20に出力された後、制御コマンドが実行不能と判断される場合がある。例えば、追従指示後に、自車と他車の間に別の車が割り込んできた場合などである。自動運転コントローラ20により制御コマンドが実行可能と判断された場合(S17のY)、生成部12は表示部31に制御中であることを表示し(S18)、タイマを発動してカウントを開始する(S19)。自動運転コントローラ20により制御不能と判断された場合(S17のN)、生成部12は表示部31に制御不能エラーを表示する(S112)。
図4は、受付モードの更新処理を説明するためのフローチャートである。HMIコントローラ10の判定部11は、タイマのカウント値が設定値(例えば、10秒)に到達すると(S113のY)、受付モードを受付不可モードから受付可モードに更新する(S114)。なお、タイマのカウント値は自車の周辺状況に応じて変更してもよい。なお判定部11は、自動運転コントローラ20から制御完了を示す通知を受信するか、車両1の挙動から、制御コマンドに応じた制御が完了したと判断したとき、受付モードを受付不可モードから受付可モードに更新してもよい。
以下、本実施の形態では制御コマンドとして、追越を指示する制御コマンドが発行される例を説明する。ユーザは、入力部32に対して追越を指示するジェスチャ操作を入力する。当該ジェスチャ操作の具体例は後述する。
図5は、図3のステップS9において追越を指示するジェスチャ操作が入力される場合の決定処理の一例を示すフローチャートである。HMIコントローラ10の判定部11は、接触開始位置に自車マークが存在するか否か判定する(S9a)。自車マークが存在しない場合(S9aのN)、判定部11は追越指示以外のその他の制御コマンドと判定する(S9b)。自車マークが存在する場合(S9aのY)、生成部12は、ドロップ可能エリアを模式図内に描画し、表示部31に表示させる(S9c)。ドロップ可能エリアの具体例は後述する。
判定部11は、入力部32で発生したタッチイベントを受信し(S9d)、タッチイベントの種別を判定する(S9e)。タッチイベントの種別が移動であった場合(S9eの移動)、生成部12は車両1の予測軌道/ルートの候補を模式図内に描画し、表示部31に表示させる(S9f)。
タッチイベントの種別が接触終了であった場合(S9eの接触終了)、判定部11は、接触終了位置が他車マークの前方であるか否か判定する(S9g)。他車マークの前方でない場合(S9gのN)、判定部11は追越指示以外のその他の制御コマンドと判定する(S9h)。他車マークの前方である場合(S9gのY)、判定部11は他車マークが、自車マークが位置するレーンと同一レーン上に位置するか否か判定する(S9i)。他車マークが同一レーン上に位置しない場合(S9iのN)、判定部11は、自車の進行方向と他車の進行方向が同一進行方向であるか否か判定する(S9j)。同一進行方向である場合(S9jのY)、判定部11は他車マークが位置するレーンへの車線変更指示コマンドと判定する(S9k)。同一進行方向でない場合(S9jのN)、生成部12は表示部31にエラーメッセージを表示させる(S9l)。
ステップS9iにおいて、他車マークが同一レーン上に位置する場合(S9iのY)、判定部11は接触点の軌道が他車マークの左側を通過したか右側を通過したか判定する(S9m)。左側を通過した場合(S9mの左)、判定部11は自車マークと他車マークの間に、少なくとも1つの別の他車マークが存在するか否か判定する(S9n)。別の他車マークが存在しない場合(S9nのN)、判定部11は左側から1台の車両の追越指示コマンドと判定する(S9o)。少なくとも1つの別の他車マークが存在する場合(S9nのY)、判定部11は左側から複数台の車両の追越指示コマンドと判定する(S9p)。
ステップS9mにおいて、右側を通過した場合(S9mの右)、判定部11は自車マークと他車マークの間に、少なくとも1つの別の他車マークを存在するか否か判定する(S9q)。別の他車マークが存在しない場合(S9qのN)、判定部11は右側から1台の車両の追越指示コマンドと判定する(S9r)。少なくとも1つの別の他車マークが存在する場合(S9qのY)、判定部11は右側から複数台の車両の追越指示コマンドと判定する(S9s)。
以下、追越時に使用されるジェスチャ操作の具体例を説明する。以下の例では表示部31及び入力部32が一体化したタッチパネルディスプレイを使用することを想定する。
図6は、ジェスチャ操作により追越指示コマンドを発行する第1処理例を示すフローチャートである。HMIコントローラ10の判定部11は、タッチパネルからタッチイベント(DOWN)を受信する(S30)。タッチイベント(DOWN)は、タッチパネルに対する指やペンによる非接触状態から接触状態への変化を表すイベントである。判定部11は、タッチイベント(DOWN)が検出された座標が自車アイコンの表示エリアの内部であるか否か判定する(S31)。自車アイコンの表示エリアの外である場合(S31のN)、追越指示でないと判定して処理を終了する。
自車アイコンの表示エリアの内部である場合(S31のY)、判定部11はタッチパネルからタッチイベント(MOVE)を受信する(S32)。タッチイベント(MOVE)は、タッチパネルのある点に対する指やペンによる接触状態から、別の点に対する接触状態への変化を表すイベントである。その後、判定部11はタッチパネルからタッチイベント(UP)を受信する(S33)。タッチイベント(UP)は、タッチパネルに対する指やペンによる接触状態から非接触状態への変化を表すイベントである。
判定部11は、タッチイベント(UP)が検出された座標が他車アイコンの前方領域であるか否か判定する(S34)。他車アイコンの前方領域である場合(S34のY)、指示部13は、当該他車アイコンに係る他車を追い越すための追越指示コマンドを自動運転コントローラ20に発行する(S35)。他車アイコンの前方領域でない場合(S34のN)、追越指示コマンドでないと判定して処理を終了する。
図7(a)−(c)は、図6のフローチャートに係るジェスチャ操作の一例を示す図である。図7(a)に示す模式図には、同一レーン上に自車アイコンV1と他車アイコンV2が表示されている。なお自車、他車、及び道路を含む周辺状況の表示形態には様々な表示形態が考えられる。実写映像を用いてもよいし、精緻なCG画像やアニメーション画像を用いてもよい。自車の表示もアイコンに限らず、よりシンプルなマークや文字で表示されてもよいし、実写映像で表示されてもよい。即ち、何らかの表示形態で画面内にオブジェクト表示されればよい。他車の表示についても同様である。
運転者が他車を追越したい場合、図7(a)に示すように自車アイコンV1をドラッグし、図7(b)−(c)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。これにより、追越指示コマンドが発行される。
図8は、ジェスチャ操作により追越指示コマンドを発行する第2処理例を示すフローチャートである。第2処理例は他車アイコンをドラッグ&ドロップする例である。HMIコントローラ10の判定部11は、タッチパネルからタッチイベント(DOWN)を受信する(S30)。判定部11は、タッチイベント(DOWN)が検出された座標が他車(先行車)アイコンの表示エリアの内部であるか否か判定する(S36)。他車(先行車)アイコンの表示エリアの外である場合(S36のN)、追越指示でないと判定して処理を終了する。
他車(先行車)アイコンの表示エリアの内部である場合(S36のY)、判定部11はタッチパネルからタッチイベント(MOVE)を受信する(S32)。その後、判定部11はタッチパネルからタッチイベント(UP)を受信する(S33)。判定部11は、タッチイベント(UP)が検出された座標が自車アイコンの後方領域であるか否か判定する(S37)。自車アイコンの後方領域である場合(S37のY)、指示部13は当該他車(先行車)アイコンに係る他車を追い越すための追越指示コマンドを自動運転コントローラ20に発行する(S35)。自車アイコンの後方領域でない場合(S37のN)、追越指示でないと判定して処理を終了する。
図9(a)−(c)は、図8のフローチャートに係るジェスチャ操作の一例を示す図である。運転者が他車を追越したい場合、図9(a)に示すように他車アイコンV2をドラッグし、図9(b)−(c)に示すように自車アイコンV1の後方に他車アイコンV2をドロップする。これにより、追越指示コマンドが発行される。
図10は、ジェスチャ操作により追越指示コマンドを発行する第3処理例を示すフローチャートである。第3処理例は自車アイコンと他車アイコンを入れ替える(回転ジェスチャ)する例である。HMIコントローラ10の判定部11は、タッチパネルから2点のタッチイベント(DOWN)を受信する(S38)。判定部11は、タッチイベント(DOWN)が検出された一方の1点の座標が自車アイコンの表示エリアの内部であるか否か判定する(S39)。自車アイコンの表示エリアの外である場合(S39のN)、追越指示でないと判定して処理を終了する。
自車アイコンの表示エリアの内部である場合(S39のY)、判定部11は、タッチイベント(DOWN)が検出された他方の1点の座標が他車(先行車)アイコンの表示エリアの内部であるか否か判定する(S310)。他車(先行車)アイコンの表示エリアの外である場合(S310のN)、追越指示でないと判定して処理を終了する。
他車(先行車)アイコンの表示エリアの内部である場合(S310のY)、判定部11はタッチパネルからタッチイベント(MOVE)を受信する(S311)。その後、判定部11はタッチパネルから2点のタッチイベント(UP)を受信する(S312)。判定部11は、自車アイコンのタッチイベント(UP)が検出された座標が、他車アイコンのタッチイベント(UP)が検出された座標の前方領域であるか否か判定する(S313)。自車アイコンが他車アイコンの前方である場合(S313のY)、指示部13は当該他車(先行車)アイコンに係る他車を追い越すための追越指示コマンドを自動運転コントローラ20に発行する(S314)。自車アイコンが他車アイコンの前方でない場合(S313のN)、追越指示でないと判定して処理を終了する。
図11(a)−(c)は、図10のフローチャートに係るジェスチャ操作の一例を示す図である。運転者が他車を追越したい場合、図11(a)に示すように自車アイコンV1と他車アイコンV2を2本の指でタッチし、図11(b)−(c)に示すように自車アイコンV1と他車アイコンV2の前後を入れ替えてドロップする。これにより、追越指示コマンドが発行される。
図12は、ジェスチャ操作により追越指示コマンドを発行する第4処理例を示すフローチャートである。第4処理例は自車アイコンにタッチした後、模式図の縮尺を変更する例である。HMIコントローラ10の判定部11は、タッチパネルからタッチイベント(DOWN)を受信する(S30)。判定部11は、タッチイベント(DOWN)が検出された座標が自車アイコンの表示エリアの内部であるか否か判定する(S31)。自車アイコンの表示エリアの外である場合(S31のN)、追越指示でないと判定して処理を終了する。
自車アイコンの表示エリアの内部である場合(S31のY)、判定部11はタッチパネルに表示されている画面内の模式図に他車(先行車)アイコンが含まれているか否か判定する(S315)。画面内の模式図に他車(先行車)アイコンが含まれていない場合(S315のN)、生成部12は、模式図に他車(先行車)アイコンが含まれるよう模式図の縮尺を変更して(小さくして)、画面に表示させる(S316)。画面内の模式図に他車(先行車)アイコンが含まれている場合(S315のY)、ステップS316の処理をスキップする。判定部11はタッチパネルからタッチイベント(MOVE)を受信する(S32)。以下、図12のステップS33からステップS35までの処理は、図6のフローチャートと同じである。
図13(a)−(d)は、図12のフローチャートに係るジェスチャ操作の一例を示す図である。図13(a)に示すように運転者が自車アイコンV1にタッチした際、画面に表示された模式図内に他車アイコンが存在しない場合、図13(b)に示すように他車アイコンV2が模式図内に含まれるようになるまで、模式図の縮尺を小さくする。図13(c)−(d)に示すように、表示されるようになった他車アイコンV2の前方に、運転者は自車アイコンV1をドロップする。これにより、追越指示コマンドが発行される。これにより、他車を簡単に見つけられ、より早く追越指示コマンドを発行できる。
図14は、ジェスチャ操作により追越指示コマンドを発行する第5処理例を示すフローチャートである。第5処理例は複数台の車両をまとめて追越する例である。ステップS30からステップS33までの処理は、図6のフローチャートと同じである。
判定部11は、タッチイベント(UP)が検出された座標が、複数の他車アイコンの前方領域であるか否か判定する(S317)。複数の他車アイコンの前方領域である場合(S317のY)、指示部13は、当該複数の他車アイコンに係る複数の他車を連続して追い越すための連続追越指示コマンドを自動運転コントローラ20に発行する(S318)。複数の他車アイコンの前方領域でない場合(S317のN)、連続追越指示コマンドでないと判定して処理を終了する。
図15(a)−(c)は、図14のフローチャートに係るジェスチャ操作の一例を示す図である。運転者が先行する2台の他車をまとめて追越したい場合、図15(a)に示すように自車アイコンV1をドラッグし、図15(b)−(c)に示すように2つの他車アイコンV2a、V2bの前方に自車アイコンV1をドロップする。これにより、連続追越指示コマンドが発行される。
図16は、ジェスチャ操作により追越指示コマンドを発行する第6処理例を示すフローチャートである。第6処理例は他車を追越する際の追い抜きコースを指定する例である。ステップS30からステップS34までの処理は、図6のフローチャートと同じである。
判定部11は、タッチイベント(MOVE)の軌道と、他車アイコン上を通る水平線との交点が、他車アイコンの座標の右側にあるか左側にあるか判定する(S319)。右側にある場合(S319の右側)、指示部13は、当該他車アイコンに係る他車を右側から追い越すための追越指示コマンドを自動運転コントローラ20に発行する(S320)。左側にある場合(S319の左側)、指示部13は、当該他車アイコンに係る他車を左側から追い越すための追越指示コマンドを自動運転コントローラ20に発行する(S321)。
図17(a)−(f)は、図16のフローチャートに係るジェスチャ操作の一例を示す図である。先行車を右側から追越したい場合、運転者は、図17(a)に示すように自車アイコンV1をドラッグした後、図17(b)に示すように他車アイコンV2の右側を回り込むように自車アイコンV1を移動させ、図17(c)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。これにより、右側からの追越指示コマンドが発行される。
一方、先行車を左側から追越したい場合、運転者は、図17(d)に示すように自車アイコンV1をドラッグした後、図17(e)に示すように他車アイコンV2の左側を回り込むように自車アイコンV1を移動させ、図17(f)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。これにより、左側からの追越指示コマンドが発行される。
なお、ユーザが追越に関する具体的な制御方法を指示せず、例えばユーザが自車マークを先行車(他車)マークの前に移動させ、追越指示するだけで、車両側がコンテキストに応じてコマンドに関する具体的な制御方法を変えてもよい。例えば、通常、日本の交通ルール上右側車線から追い越すが、左側車線には走行している他車両がない場合左側車線から追い越しても良い。また、個人の嗜好性データを参考に運転者の嗜好性に合ったルートで追い越しても良い。なお、コマンドに関する具体的な制御方法は、例えば、経路、実行タイミング、速度等が考えられ、HMIコントローラ10の判定部11が決定してから具体的な制御方法を含めたコマンドを自動運転コントローラ20に送信してもいいし、コマンドを受け取った後自動運転コントローラ20側で具体的な制御方法を決定しても良い。更に、HMIコントローラ10または自動運転コントローラ20で決められた具体的な制御方法の選択肢を表示部31に表示したり、図示しないスピーカーや振動手段を含む報知部により運転者に聴覚的/触覚的に報知したりし、運転者に選択させても良い。
図18は、ジェスチャ操作により車線変更指示コマンドを発行する第7処理例を示すフローチャートである。第7処理例は模式図内に自車アイコンの軌道を表示する例である。HMIコントローラ10の判定部11は、タッチパネルからタッチイベント(DOWN)を受信する(S30)。判定部11は、タッチイベント(DOWN)が検出された座標が自車アイコンの表示エリアの内部であるか否か判定する(S31)。表示エリアの外である場合(S31のN)、追越指示でないと判定して処理を終了する。
自車アイコンの表示エリアの内部である場合(S31のY)、判定部11はタッチパネルからタッチイベント(MOVE/UP)を受信する(S322)。判定部11はタッチイベントの種類を判定する(S323)。タッチイベントの種類が「MOVE」である場合(S323のMOVE)、判定部11は、タッチイベント(MOVE)が検出された座標が他車(先行車)アイコンの前方領域であるか否か判定する(S324)。他車(先行車)アイコンの前方領域である場合(S324のY)、生成部12は、追越を実施したときの予測ルートを生成し、タッチパネルに表示させる(S325)。他車(先行車)アイコンの前方領域でない場合(S324のN)、ステップS325の処理をスキップする。その後、ステップS322に遷移する。本フローチャートでは予測ルートの表示に注目しているため、ステップS323において、タッチイベントの種類が「UP」である場合(S323のUP)以降の処理は省略している。
図19(a)−(b)は、図18のフローチャートに係るジェスチャ操作の一例を示す図である。運転者が他車を追越したい場合、図19(a)に示すように自車アイコンV1をドラッグし、図19(b)に示すように自車アイコンV1を他車アイコンV2の前方にドラッグすると、他車を追越する際に通過する予測軌道T1が表示される。
図20は、ジェスチャ操作により追越指示コマンドを発行する第8処理例を示すフローチャートである。第8処理例は確定操作を求める例である。ステップS30からステップS34までの処理は、図6のフローチャートと同じである。
タッチイベント(UP)が検出された座標が、他車(先行車)アイコンの前方領域である場合(S34のY)、判定部11が確定ジェスチャの入力を受け付けると(S326のY)、指示部13は、当該他車アイコンに係る他車を追い越すための追越指示コマンドを自動運転コントローラ20に発行する(S35)。確定ジェスチャの入力がない間は(S326のN)、コマンドの発行が保留される。これにより、さらに誤操作を防止できる。
図21(a)−(c)は、図20のフローチャートに係るジェスチャ操作の一例を示す図である。運転者が先行車を追越したい場合、図21(a)に示すように自車アイコンV1をドラッグし、図21(b)に示すように他車アイコンV2の前方に自車アイコンV1を移動させる。自車アイコンV1が移動されると確認用ボタンC1が表示される。図21(c)に示すように他車アイコンV2の前方に自車アイコンV1がドロップされた後、確認用ボタンC1が押下されると、追越指示コマンドが発行される。
図22は、ジェスチャ操作により追越指示コマンドを発行する第9処理例を示すフローチャートである。第9処理例は制御中の表示を追加した例である。制御中とは、追越指示コマンド発行後に自車が追越を完了するまでの期間を指す。ステップS30からステップS35までの処理は、図6のフローチャートと同じである。
指示部13が追越指示コマンドを自動運転コントローラ20に発行した後(S35)、生成部12は、自車の移動前の座標と移動後の座標に自車アイコンを生成するとともに、自車の予測軌道を生成し、タッチパネルに表示させる(S327)
図23(a)−(f)は、図22のフローチャートに係るジェスチャ操作の一例を示す図である。運転者が先行車を追越したい場合、図23(a)、(d)に示すように自車アイコンV1をドラッグし、図23(b)、(e)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。これにより、追越指示コマンドが発行される。追越指示コマンドの実行中、図23(c)、(f)に示すように追越開始前の元の位置に自車アイコンV1aが表示され、追越完了後の目標位置に自車アイコンV1bが表示される。また図23(f)に示すように自車の予測軌道T1が表示されてもよい。
図24は、ジェスチャ操作により追越指示コマンドを発行した後にキャンセルコマンドを発行する処理例を示すフローチャートである。追越指示コマンドが自動運転コントローラ20に発行された後、HMIコントローラ10の判定部11は、タッチパネルからタッチイベント(DOWN)を受信する(S328)。その後、HMIコントローラ10の判定部11は、タッチパネルからタッチイベント(MOVE)を受信する(S329)。その後、HMIコントローラ10の判定部11は、タッチパネルからタッチイベント(UP)を受信する(S330)。判定部11は、タッチイベントの移動軌道と追越軌道とに交点が存在するか否か判定する(S331)。交点が存在する場合(S331のY)、指示部13は、先に発行した追越指示コマンドをキャンセルするコマンドを自動運転コントローラ20に発行する(S332)。交点が存在しない場合(S331のN)、キャンセルコマンドは発行しない。
図25(a)−(d)は、図24のフローチャートに係るジェスチャ操作の一例を示す図である。図25(a)は予測軌道T1を横切るようにスワイプS1すると、追越指示コマンドのキャンセルコマンドが発行される例である。図25(b)は移動後の自車アイコンV1bを横切るようにスワイプS2すると、追越指示コマンドのキャンセルコマンドが発行される例である。図25(c)は移動後の自車アイコンV1bを起点にフリックF1すると、追越指示コマンドのキャンセルコマンドが発行される例である。図25(d)は予測軌道T1を起点にフリックF1すると、追越指示コマンドのキャンセルコマンドが発行される例である。
図26(a)−(b)は、図24のフローチャートに係るジェスチャ操作の別の例を示す図である。図26(a)に示すように移動後の自車アイコンV1bをドラッグし、図26(b)に示すように移動前の位置に自車アイコンV1cをドロップすると、追越指示コマンドのキャンセルコマンドが発行される。
自車アイコンをドラッグしてからドロップするまでの間、生成部12は元の画像(移動前の自車アイコン)を模式図内に残し、ドロップされた時点で元の画像を消してもよい。また自車アイコンをドラッグしてからドロップするまでの間、生成部12は点線でドラッグした自車アイコンの軌道を模式図内に描画してもよい。また自車アイコンをドラッグしてからドロップするまでの間、生成部12は道路の色を反転させ、ドロップされた時点で元の色に戻してもよい。
また自車アイコンをドラッグしてからドロップするまでの間、生成部12はドロップ不可エリア(反対車線など)があったり、操作(追越など)が不可なとき、自車アイコンの色を変更(反転、薄くなど)してもよい。ドロップされた時点で、元の自車位置に自車アイコンを戻し、「操作不可」などのエラーメッセージを表示してもよい。操作不可な場合の例として、後続車の接近、追越禁止エリア、制限速度オーバー等がある。
また自車アイコンをドラッグしてからドロップするまでの間、生成部12は、操作が不可なとき、道路など背景の色を変更(反転、薄くなど)してもよい。操作が可能な状況になれば、元の色に戻す。また自車アイコンをドラッグしてからドロップするまでの間、生成部12は、ドロップ不可エリアの色を変更(反転、薄くなど)する。また自車アイコンをドラッグしてからドロップするまでの間、生成部12は、ドロップ不可エリアがあったり、操作が不可なとき、エラー音や、振動を通知する。
また自車アイコンのドラッグを開始したとき操作開始が不可の場合、生成部12は自車アイコンの色を変更してもよい。またドラッグ操作(自車アイコンの移動)をできない状態にしてもよい。また「操作不可」などのエラーメッセージを表示してもよい。また自車アイコンのドラッグを開始したとき操作開始が不可の場合、生成部12は、道路など背景の色を変更してもよい。操作が可能な状況になれば、元の色に戻す。また自車アイコンのドラッグを開始したとき操作開始が不可の場合、生成部12は、ドラッグ操作(自車アイコンの移動)ができない状態で、エラー音や、振動を通知する。
図27(a)−(d)は、自車アイコンをドロップしてから自車が追越を完了するまでの制御中の第1表示例を示す図である。運転者が先行車を追越したい場合、図27(a)に示すように自車アイコンV1をドラッグし、図27(b)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。他車アイコンV2の前方にドロップしてから追越が完了するまでの間、図27(c)に示すように自車の状態(現在位置)をゴーストアイコンV1gで表示する。また移動中の軌道T1も表示する。追越が完了すると、図27(d)に示すように自車のゴーストアイコンV1gと軌道T1が消去される。
図28(a)−(d)は、自車アイコンをドロップしてから自車が追越を完了するまでの制御中の第2表示例を示す図である。運転者が先行車を追越したい場合、図28(a)に示すように自車アイコンV1をドラッグし、図28(b)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。他車アイコンV2の前方にドロップしてから追越が完了するまでの間、図28(c)に示すように移動先の自車アイコンV1の表示状態を変更する。図28(c)では自車アイコンV1を点滅させる例を描いているが、色変更、サイズ変更、位置変更などを行ってもよい。追越が完了すると、図28(d)に示すように自車アイコンV1の表示状態が元に戻る。
図29(a)−(d)は、自車アイコンをドロップしてから自車が追越を完了するまでの制御中の第3表示例を示す図である。運転者が先行車を追越したい場合、図29(a)に示すように自車アイコンV1をドラッグし、図29(b)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。他車アイコンV2の前方にドロップしてから追越が完了するまでの間、追加操作で次の指示をキューイング(現在の制御が完了後に行われる制御の予約)する。図29(c)−(d)では、追越制御中に車線変更を追加指示した場合の例を描いている。この場合、 追越車線へ車線変更→他車の追い抜き→元の車線へ車線変更→追越車線へ車線変更となるが、最後の2つの制御を相殺して、追越車線へ車線変更→追い抜きとする。
図30(a)−(d)は、自車アイコンをドロップしてから自車が追越を完了するまでの制御中の第4表示例を示す図である。運転者が先行車を追越したい場合、図30(a)に示すように自車アイコンV1をドラッグし、図30(b)に示すように他車アイコンV2の前方に自車アイコンV1をドロップする。他車アイコンV2の前方にドロップしてから追越が完了するまでの間、図30(c)−(d)に示すように、自車アイコンV1を再度、ドラッグして元の位置にドロップした場合、次のように処理する。元の位置にドロップした時点で、追越車線への車線変更中または車線変更が完了している場合、元の車線への車線変更指示コマンドを送信する。元の位置にドロップした時点で、他車を追い抜き中、追い抜き後、または元の車線に車線変更中の場合、エラーメッセージ(例えば、「制御中のためその操作はできません」、「しばらくお待ちください」等)を表示する。自車アイコンをドラッグ中、または、ドロップ時、または、ドロップしてから追越が完了するまでの間、予想軌道を自動運転コントローラ20から受け取り、表示部31に描画するようにしてもよい。信号待ちや車線変更不可区間などのため一時的に追い越しが不可の場合、生成部12は、追い越し制御が成立するまで「トライ中」などの表示を行い、実行可能になったタイミングで予想軌道を描画するようにしてもよい。自車アイコンをドラッグ中、または、ドロップしてから追越が完了するまでの間、生成部12はドロップしてから目的位置へ到達するまでの予想所要時間や所要残時間を表示したりするようにしてもよい。一時的に追越制御が不可の場合、可能になるまで制御を続けるか、あきらめて制御を中止するか、あらかじめ設定できるようにしてもよい。あやまってドラッグ開始してしまったり、ドラッグ後に取り消し操作をしたいときのため、取り消し用のドロップ領域を設けてもよい。自車をドラッグ後、取り消し用のドロップ領域にドロップすることで、コマンドの発行を取りやめることができる。追越制御後、さらに別の他車が前方にある場合、繰り返し追い越し制御するモードを設けてもよい。
以上説明したように本実施の形態によれば、タッチパネルに表示されたアイコンをジェスチャで移動させることにより、自動運転コントローラ20に種々の操作内容を伝達することができる。アイコンのジェスチャ操作は簡単な操作であり、運転者がステアリング51を回す、アクセルペダル53を踏み込むなどの従来の運転操作から解放される。例えば、レーンと自車アイコンと他車アイコンを含む模式図を表示し、自車アイコンと他車アイコンの位置関係を変えることにより、簡易に追越の指示ができる。運転者は、周辺状況の確認と操作指示をタッチパネル上で同時に行うことができるため、視線移動が発生しない。従って、誤操作する可能性が低下し、より安全な運転を実現できる。なお、追越または追抜きの指示コマンドを発行するために、上記操作以外の自車アイコンと他車との相対位置を変更する操作であってもよい。また、制御コマンドに対応するジェスチャ操作について、ドラッグアンドドロップなどで説明したが、タッチアンドタッチであってもよい。予め決められたジェスチャや操作であればよいが、運転者がカスタマイズ可能にしてもよい。また、ジェスチャ操作と制御コマンドの対応関係が分かるように、表示部で説明文やアイコンや矢印を表示したりガイドの表示や音声によるガイダンスをしたりしてもよい。
以上、本発明を実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
例えば、HMIコントローラ10は専用のLSIで実装する例を想定したが、表示装置30として使用するスマートフォンやタブレット等の携帯機器内のCPUを用いてHMIコントローラ10の機能を実現してもよい。この場合、表示装置30として使用する携帯機器と自動運転コントローラ20とが直接接続されることになる。またHMIコントローラ10の機能を、カーナビゲーション装置やディスプレイオーディオ等のヘッドユニット内のCPUで実現してもよい。またHMIコントローラ10を実装した専用のLSIをヘッドユニット内に含める構成でもよい。
なお、実施の形態は、以下の項目によって特定されてもよい。
[項目1]
表示部(31)に、自車を表す自車オブジェクトと、当該自車オブジェクトの前に他車を表す他車オブジェクトを含む画像を出力する画像出力部(14a)と、
前記表示部(31)に表示された画像内の前記自車オブジェクトと前記他車オブジェクトとの位置関係を変更するユーザの操作を受け付ける操作信号入力部(14b)と、
前記自車オブジェクトが前記他車オブジェクトの前に位置するよう両者の位置関係が変更された場合、前記自車が前記他車を追い越すことを指示するコマンドを、自動運転の制御を行う自動運転制御部(20)に出力するコマンド出力部(14c)と、
を備えることを特徴とする運転支援装置(10)。
これにより、ユーザが追越を指示する操作を直感的かつ簡便に行うことができる。
[項目2]
前記表示部(31)に表示された画像内の前記自車オブジェクトを前記他車オブジェクトの前に移動させるユーザの操作、前記他車オブジェクトを前記自車オブジェクトの後ろに移動させるユーザの操作、または前記自車オブジェクトと前記他車オブジェクトを入れ替えるユーザの操作を前記操作信号入力部(14b)が受け付けると、前記コマンド出力部(14c)は、前記自車が前記他車を追い越すことを指示するコマンドを前記自動運転制御部(20)に出力することを特徴とする項目1に記載の運転支援装置(10)。
これにより、ユーザが追越を指示する操作を直感的かつ簡便に行うことができる。
[項目3]
前記画像出力部(14a)は、前記自車オブジェクトと、当該自車オブジェクトの前に複数の他車を表す複数の他車オブジェクトを含む画像を出力し、
前記表示部(31)に表示された画像内の前記自車オブジェクトが前記複数の他車オブジェクトの前に位置するよう両者の位置関係を変更するユーザの操作を前記操作信号入力部(14b)が受け付けると、前記コマンド出力部(14c)は、前記自車が複数の他車を追い越すことを指示するコマンドを前記自動運転制御部(20)に出力することを特徴とする項目1に記載の運転支援装置(10)。
これにより、複数の車両をまとめて追越する操作を直感的かつ簡便に行うことができる。
[項目4]
画像を表示する表示装置(30)と、
前記表示装置(30)に画像を出力する運転支援装置(10)と、を備え、
前記運転支援装置(10)は、
前記表示装置(30)に、自車を表す自車オブジェクトと、当該自車オブジェクトの前に他車を表す他車オブジェクトを含む画像を出力する画像出力部(14a)と、
前記表示装置(30)に表示された画像内の前記自車オブジェクトと前記他車オブジェクトとの位置関係を変更するユーザの操作を受け付ける操作信号入力部(14b)と、
前記自車オブジェクトが前記他車オブジェクトの前に位置するよう両者の位置関係が変更された場合、前記自車が前記他車を追い越すことを指示するコマンドを、自動運転の制御を行う自動運転制御部(20)に出力するコマンド出力部(14c)と、
を含むことを特徴とする運転支援システム(10、30)。
これにより、ユーザが追越を指示する操作を直感的かつ簡便に行うことができる。
[項目5]
表示部(31)に、自車を表す自車オブジェクトと、当該自車オブジェクトの前に他車を表す他車オブジェクトを含む画像を出力するステップと、
前記表示部(31)に表示された画像内の前記自車オブジェクトと前記他車オブジェクトとの位置関係を変更するユーザの操作を受け付けるステップと、
前記自車オブジェクトが前記他車オブジェクトの前に位置するよう両者の位置関係が変更された場合、前記自車が前記他車を追い越すことを指示するコマンドを、自動運転の制御を行う自動運転制御部(20)に出力するステップと、
を備えることを特徴とする運転支援方法。
これにより、ユーザが追越を指示する操作を直感的かつ簡便に行うことができる。
[項目6]
表示部(31)に、自車を表す自車オブジェクトと、当該自車オブジェクトの前に他車を表す他車オブジェクトを含む画像を出力する処理と、
前記表示部(31)に表示された画像内の前記自車オブジェクトと前記他車オブジェクトとの位置関係を変更するユーザの操作を受け付ける処理と、
前記自車オブジェクトが前記他車オブジェクトの前に位置するよう両者の位置関係が変更された場合、前記自車が前記他車を追い越すことを指示するコマンドを、自動運転の制御を行う自動運転制御部(20)に出力する処理と、
をコンピュータに実行させることを特徴とする運転支援プログラム。
これにより、ユーザが追越を指示する操作を直感的かつ簡便に行うことができる。
[項目7]
表示部(31)に、自車を表す自車オブジェクトと、当該自車オブジェクトの前に他車を表す他車オブジェクトを含む画像を出力する画像出力部(14a)と、
前記表示部(31)に表示された画像内の前記自車オブジェクトと前記他車オブジェクトとの位置関係を変更するユーザの操作を受け付ける操作信号入力部(14b)と、
前記自車オブジェクトが前記他車オブジェクトの前に位置するよう両者の位置関係が変更された場合、前記自車が前記他車を追い越すことを指示するコマンドを出力するコマンド出力部(14c)と、
前記出力されたコマンドを実行する自動運転制御部(20)と、
を備えることを特徴とする自動運転車両(1)。
これにより、ユーザが追越を指示する操作を直感的かつ簡便に行うことができる。