(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0013】
以下、本発明の一実施形態に係る走行制御装置Aを、図面を用いて説明する。
【0014】
図1は、本発明の一実施形態に係る走行制御装置Aの概略構成の一例を示す図である。
走行制御装置Aは、自律走行機能を有する車両Cに搭載され、例えば山岳地帯等の不整地に存在する轍に沿って車両Cを走行させる。この轍は、車両Cや車両Cとは別の車両が不整地において所定の走行経路を走行することで生成される。
【0015】
図1に示すように、走行制御装置Aは、ロール角取得部1及び走行制御部2を備える。
【0016】
ロール角取得部1は、車両Cのロール方向(車両Cの左右方向)の傾きを示すロール角(車体ロール角)θを取得する。例えば、ロール角取得部1は、傾斜センサであって、ロール角θを直接計測してもよい。また、ロール角取得部1は、角速度センサ等の計測結果から、ロール角θを安定的に推定することで、ロール角θを取得してもよい。ロール角取得部1は、取得したロール角θを走行制御部2に出力する。
【0017】
なお、本実施形態では、車両の前後方向(進行方向)と直交する車両Cの左右方向のうち、左方向の傾いた場合にはロール角θが正の値とし、右方向に傾いた場合にはロール角θが負の値となる。
【0018】
走行制御部2は、自己位置取得部3、格納部4、走行制御演算部5、判定部6、補正量演算部7、加算部8、及びアクチュエータ9を備える。
【0019】
自己位置取得部3は、車両Cの現在位置の情報(以下、「位置情報」という。)を取得する。例えば、自己位置取得部3は、GPS(Global Positioning System)を用いることで、車両Cの位置情報をグローバル座標(X,Y)で取得する。自己位置取得部3は、取得した車両Cの位置情報を走行制御演算部5に出力する。例えば、X座標は緯度を示し、Y座標は経度を示す。
【0020】
格納部4には、車両Cが走行する予定の経路(以下、「走行予定経路」という。)が予め格納されている。この走行予定経路には、複数の通過点(ウェイポイント)が設定されている。走行予定経路は、轍を走行させるための経路であって、例えば、轍を生成した車両(例えば、先行車両や車両C)から取得される。例えば、先行車両が不整地において所定の走行経路を走行することで轍が生成された場合には、走行制御部2は、その所定の走行経路の情報を走行予定経路として先行車両から有線又は無線で取得して格納部4に格納する。
【0021】
走行制御演算部5は、車両Cを走行予定経路に沿って走行させる走行制御の制御量を演算する。この制御量は、直進量D及び操舵量Rを備える。直進量Dとは、車両Cを直進させる制御の制御量であって、例えば、アクセルAC及びブレーキBRの操作量である。操舵量Rは、車両Cを操舵させる制御の制御量であって、例えば、ステアリングSTの操舵角である。
【0022】
具体的には、走行制御演算部5は、自己位置取得部3から車両Cの位置情報を取得する。また、走行制御演算部5は、格納部4から走行予定経路の情報を取得する。そして、走行制御演算部5は、その取得した車両Cの位置情報と走行予定経路とに基づいて直進量D及び操舵量Rを演算する。すなわち、走行制御演算部5は、車両Cの位置情報が走行予定経路を通るための直進量D及び操舵量Rを演算する。
【0023】
走行制御演算部5は、演算した直進量Dをアクチュエータ9に出力する。また、走行制御演算部5は、演算した操作量Rを加算部8に出力する。
【0024】
判定部6は、ロール角取得部1からロール角θを取得する。そして、判定部6は、ロール角取得部1から取得したロール角θに基づいて、轍を走行している車両Cが当該轍から外れる虞があるか否かを判定する。
【0025】
具体的には、判定部6は、ロール角取得部1から取得したロール角θの変化量である角速度ωが所定値(以下、「角速度閾値」という。)ω
th以上である場合には、車両Cが轍から外れる虞があると判定する。判定部6は、車両Cが轍から外れる虞があると判定した場合には、操舵量Rを補正する補正モードに移行する。
【0026】
判定部6は、補正モードに移行すると、補正モードに移行する直前のロール角であるロール角基準値θ
0と、現在のロール角θと比較する。そして、判定部6は、基準ロール角θ
0と現在のロール角θとの差分値(θ−θ
0)を一定周期ごとに補正量演算部7に出力する。
【0027】
なお、判定部6は、差分値(θ−θ
0)の絶対値が、所定値である差分値閾値Δθ
th以下になった場合には、轍を走行している車両Cが当該轍から外れる虞がないと判定して、補正モードを脱出する。したがって、補正モードを脱出した場合には、補正量演算部7への差分値(θ−θ
0)の出力は行われない。
【0028】
補正量演算部7は、補正モードにおいて、判定部6から取得した差分値(θ−θ
0)に基づいて、走行制御演算部5で演算された操舵量Rを補正するための補正量(以下、「操舵補正量」という。)ΔRを演算する。例えば、この操舵補正量ΔRとは、差分値(θ−θ
0)に応じた制御量であって、差分値(θ−θ
0)をゼロに近づかせるための操舵量である。例えば、操舵補正量ΔRは、差分値(θ−θ
0)に比例した補正量である。
【0029】
具体的には、補正量演算部7は、ロール角θが正の値である場合、すなわち車両Cが左方向に傾いている場合には、左方向に操舵させるための操舵量を操舵補正量ΔRとして演算する。一方、補正量演算部7は、ロール角θが負の値である場合、すなわち車両Cが右方向に傾いている場合には、右方向に操舵させるための操舵量を操舵補正量ΔRとして演算する。
【0030】
例えば、補正量演算部7は、予め設定された計算式やテーブルに基づいて、差分値(θ−θ
0)に応じた操舵補正量ΔRを決定してもよい。これら計算式やテーブルは、例えば差分値(θ−θ
0)に基づいて、操舵補正量ΔRが決定できるように、実験的又は理論的に定めればよい。予め設定されたテーブルを用いる場合には、複数のロール角の範囲と、各操舵補正量ΔRとが関連付けられたテーブルを不図示の記憶部に予め記憶されていてもよい。そして、補正量演算部7は、判定部6から取得した差分値(θ−θ
0)がどのロール角の範囲に該当するかを判別し、当該判別したロール角の範囲に対応する操舵補正量ΔRを上記テーブルから取得し、取得した操舵補正量ΔRを加算部8に出力する。なお、補正量演算部7は、判定部6から取得した差分値(θ−θ
0)に所定の係数を乗算することで、操舵補正量ΔRを求めてもよい。
【0031】
加算部8は、補正モードにおいて、走行制御演算部5で演算された操舵量Rに、補正量演算部7から取得した操舵補正量ΔRを加算することで新たな操舵量R´を算出してアクチュエータ9に出力する。すなわち、加算部8は、操舵量Rに操舵補正量ΔRを加算することで当該操舵量Rを操舵量R´に補正する。この操舵量R´は、傾いた状態にある車両Cを積極的に水平状態に戻すためのステアリングSTの操舵角である。傾いた状態とは、車両Cが轍から外れる虞がある状態であることを示す。なお、補正モードではない場合には、操舵補正量ΔRが算出されないため、加算部8は、走行制御演算部5で演算された操舵量Rを補正せずにそのままアクチュエータ9に出力する。
【0032】
アクチュエータ9は、アクセルAC、ブレーキBR、及びステアリングSTをそれぞれ駆動する。具体的には、アクチュエータ9は、走行制御演算部5から出力された直進量Dに基づいて、アクセルAC、又はブレーキBRを操作する。これにより、所定の車速で車両Cを直進させることができる。また、アクチュエータ9は、加算部8から出力された操舵量に基づいてステアリングSTを操作することで、車両Cの操舵を制御する。例えば、アクチュエータ9は、ステアリングSTの操舵角が、加算部8から出力された操舵量になるようにステアリングSTを回動せることで、車両Cの操舵を制御する。なお、アクチュエータ9は、補正モードである場合には、加算部8から出力された操舵量R´に基づいてステアリングSTを操作し、補正モードでない場合には、加算部8から出力された操舵量Rに基づいてステアリングSTを操作する。
【0033】
以下に、本発明の一実施形態に係る補正モードにおける走行制御装置Aに動作の流れについて、
図2を用いて説明する。
図2は、本発明の一実施形態に係る補正モードにおける走行制御装置Aに動作のフロー図である。なお、以下に説明する動作は、車両Cが走行予定経路に沿って自律走行している場合、すなわち轍を走行している場合に実行される。
【0034】
走行制御部2は、車両Cの位置情報及び走行予定経路に基づいて演算された直進量D及び操舵量Rに応じて車両Cの走行を制御している。この場合において、走行制御部2は、ロール角取得部1からロール角θを取得し(ステップS101)、その取得したロール角θの角速度ωを算出する(ステップS102)。そして、走行制御部2は、算出した角速度ωが角速度閾値ω
th以上か否かを判定する(ステップS103)。走行制御部2は、算出した角速度ωが角速度閾値ω
th以上である場合には、車両Cが轍から外れる虞があると判定して、補正モードに移行する(ステップS104)。なお、角速度ωが角速度閾値ω
th以上である場合とは、車両Cが轍の斜面を乗り上げ、轍から外れる虞がある状態である。
【0035】
走行制御部2は、補正モードに移行すると、補正モードに移行する前のロール角であるロール角基準値θ
0と、現在のロール角θとの差分値(θ−θ
0)を算出する(ステップS105)。そして、走行制御部2は、算出した差分値(θ−θ
0)の絶対値が差分値閾値Δθ
th以下か否かを判定する(ステップS106)。
【0036】
走行制御部2は、算出した差分値(θ−θ
0)の絶対値が差分値閾値Δθ
th以下である場合には、車両Cの車輪が轍の斜面から轍の中心位置に移動し、車両Cが轍から外れる虞ないとして、補正モードを脱出する(ステップS107)。
【0037】
走行制御部2は、算出した差分値(θ−θ
0)の絶対値が差分値閾値Δθ
th以下でない場合には、当該差分値(θ−θ
0)に応じた操舵補正量ΔRを算出する(ステップS108)。そして、走行制御部2は、算出した操舵補正量ΔRを、操舵量Rに加算することで新たな操舵量R´を算出し、この操舵量R´に応じて車両Cの操舵を制御する(ステップS109)。これにより、轍の斜面を乗り上げた車両Cは轍の中心位置に戻される。
【0038】
ステップS109において、操舵量R´に応じて車両Cの操舵が制御されると、走行制御部2は、再度ステップS105に移行して、車両Cが轍の中心位置に戻されたか否かを判定する。そして、走行制御部2は、車両Cが轍の中心位置に戻されたと判定した場合には、補正モードを脱出することで当該補正モードの動作を終了する。
【0039】
次に、本実施形態に係る作用効果を
図3及び
図4を用いて説明する。
車両Cが平地にある轍Wを走行している場合には、
図3に示すように、車両Cの車体は水平状態である。ただし、車両Cが轍Wから外れそうになると、
図4に示すように、車両Cが轍Wの斜面に乗り上げるために、車両Cの車体が左右のいずれかに傾く。したがって、走行制御装置Aは、ロール角取得部1から得られるロール角が、轍Wの斜面に乗り上げたときのロール角以上になった場合には、すなわち、車両Cが轍Wを走行しているときのロール角(ロール角基準値)ではない場合には、車両Cが轍Wから外れる虞があると判定する。
【0040】
そして、走行制御装置Aは、車両Cが轍Wから外れる虞があると判定した場合には、傾いている方向と同一の方向に車両Cを操舵することで車両Cが積極的に轍Wの中心に戻るように車両Cの走行を制御する。すなわち、走行制御装置Aは、車両Cの右方向が下になるように車両Cは傾いた場合には、ステアリングSTを右方向に回動させることで車両Cが轍Wの中心に戻るように車両Cを操舵する。一方、走行制御装置Aは、車両Cの左方向が下になるように車両Cは傾いた場合には、ステアリングSTを左方向に回動させることで車両Cが轍Wの中心に戻るように車両Cを操舵する。
【0041】
このように、走行制御装置Aは、ロール角θがロール角基準値になるように車両Cの操舵を制御する。そのため、走行制御装置Aは、従来のようにカメラやLRFを用いることなく、悪天候であっても車両Cを轍Wに沿って安定して走行させることができる。
【0042】
なお、本実施形態では、ロール角θの角速度ωが所定値以上である場合に車両Cが轍Wから外れる虞があると判定する。これは、車両Cが勾配のある山岳部等の轍を走行している場合と、車両Cが轍Wの斜面に乗り上げた場合とを区別するためである。すなわち、問題なく轍を走行しているにもかかわらず地形自体に勾配があるために、車両Cが轍Wから外れる虞があると誤判定することを防止するためである。
山岳部等の大域的な地形の勾配変化と比べ、車両Cが轍Wを乗り上げる際の勾配変化の方が急峻であると考えられるため、走行制御装置Aは、角速度ωが所定値以上である場合に車両Cが轍Wから外れる虞があると判定する。これにより、走行制御装置Aは、車両Cが轍Wから外れる虞があるか否かの判定精度を向上させることができる。
【0043】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【0044】
例えば、上記実施形態では、ロール角基準値θ
0は、補正モードに移行する直前のロール角としたが、本発明はこれに限定されない。すなわち、ロール角基準値θ
0は、補正モードに移行する直前でなくても、車両Cが轍を走行しているときのロール角であればよい。
【0045】
また、上記実施形態では、走行制御部2は、角速度ωが角速度閾値ω
th以上である場合に車両Cが轍から外れる虞があると判定したが、本発明はこれに限定されない。例えば、走行制御部2は、角速度ωが角速度閾値ω
th以上となってから所定時間が経過するまでに角速度ωが負値とならない場合には、車両Cが轍から外れる虞があると判定してもよい。これにより、走行制御部2は、車両Cが凸凹道を走行している場合には、車両Cが轍から外れる虞があると判定することがない。
【0046】
また、上記実施形態では、走行制御部2は、制御量のうち、操舵量Rのみ補正したが、本発明はこれに限定されない。例えば、走行制御部2は、制御量のうち、直進量Dをも補正してもよい。具体的には、走行制御部2は、補正モードにおいて、差分値(θ−θ
0)に応じた値に直進量Dを補正する。例えば、走行制御部2は、差分値(θ−θ
0)が大きくなるにつれて、車両Cの速度が低減されるように直進量Dを補正する。
【0047】
また、上記実施形態の車両Cは、走行予定経路を自律走行可能な機能を有していればよく、その自律度合には特に限定されない。
【0048】
また、車両Cとは、一般車両でもよいし、ショベルカー、ブルドーザあるいはクレーン車等の建設機械であってもよい。
【0049】
また、上記走行制御部2の各部は、ハードウエアにより実現されてもよく、ソフトウエアにより実現されてもよい。また、ハードウエアとソフトウエアとの組み合わせにより実現されてもよい。また、プログラムが実行されることにより、コンピュータが、走行制御部2として機能してもよい。プログラムは、コンピュータ読み取り可能な媒体又はネットワークに接続された記憶装置から、走行制御部2の少なくとも一部を構成するコンピュータにインストールされてよい。コンピュータにインストールされ、コンピュータを本実施形態に係る走行制御部2として機能させるプログラムは、CPU等に働きかけて、コンピュータを、走行制御部2の各部としてそれぞれ機能させる。これらのプログラムに記述された情報処理は、コンピュータに読込まれることにより、ソフトウエアと走行制御部2のハードウエア資源とが協働した具体的手段として機能する。
【0050】
以上、説明したように、走行制御装置Aは、車両Cが轍を走行するように車両Cの走行を制御する走行制御装置であって、ロール角θがロール角基準値になるよう車両Cの操舵を制御する。
【0051】
このような構成によれば、悪天候であっても車両Cを轍に沿って安定して走行させることができる。
【0052】
また、走行制御装置Aは、ロール角θがロール角基準値になるよう車両Cの操舵を制御するため、周囲環境計測やGNSSデータの受信状況に関わらず車両Cを轍に沿って安定して走行させることができる。したがって、GNSSデータの受信状況が不安定である例えば山岳地帯等の場所であっても、車両Cを轍に沿って安定して走行させることができる。