【文献】
春名攻 他,大規模整地工事計画のシステム化に関する研究,土木学会論文報告集,[online],1974年 7月20日,第227号,pp.71-84,URL,https://www.jstage.jst.go.jp/article/jscej1969/1974/227/1974_227_71/_article/-char/ja
(58)【調査した分野】(Int.Cl.,DB名)
前記コントローラは、前記ダンプ作業のコストが最小となる前記複数のセグメントと前記複数のダンプ候補位置との前記組み合わせを決定するようにプログラムされている、
請求項1又は2に記載の作業車両の制御システム。
前記コントローラは、線形計画法により前記コストが最小となる前記複数のセグメントと前記複数のダンプ候補位置との前記組み合わせを決定するようにプログラムされている、
請求項3又は4に記載の作業車両の制御システム。
【発明を実施するための形態】
【0011】
以下、実施形態に係る作業車両1について、図面を参照しながら説明する。
図1は、実施形態に係る作業車両1を示す側面図である。本実施形態に係る作業車両1は、ブルドーザである。作業車両1は、車体11と、走行装置12と、作業機13と、を備えている。
【0012】
車体11は、運転室14とエンジン室15とを有する。運転室14には、図示しない運転席が配置されている。エンジン室15は、運転室14の前方に配置されている。走行装置12は、車体11の下部に取り付けられている。走行装置12は、左右一対の履帯16を有している。なお、
図1では、左側の履帯16のみが図示されている。履帯16が回転することによって、作業車両1が走行する。
【0013】
作業機13は、車体11に取り付けられている。作業機13は、リフトフレーム17と、ブレード18と、リフトシリンダ19と、を有する。リフトフレーム17は、上下に動作可能に車体11に取り付けられている。リフトフレーム17は、ブレード18を支持している。
【0014】
ブレード18は、車体11の前方に配置されている。ブレード18は、リフトフレーム17の上下動に伴って上下に移動する。リフトシリンダ19は、車体11とリフトフレーム17とに連結されている。リフトシリンダ19が伸縮することによって、リフトフレーム17は、上下に回転する。
【0015】
図2は、作業車両1の駆動系2と制御システム3との構成を示すブロック図である。
図2に示すように、駆動系2は、エンジン22と、油圧ポンプ23と、動力伝達装置24と、を備えている。
【0016】
油圧ポンプ23は、エンジン22によって駆動され、作動油を吐出する。油圧ポンプ23から吐出された作動油は、油圧アクチュエータ25に供給される。油圧アクチュエータ25は、上述したリフトシリンダ19を含む。なお、
図2では、1つの油圧ポンプ23が図示されているが、複数の油圧ポンプが設けられてもよい。
【0017】
油圧アクチュエータ25と油圧ポンプ23との間には、制御弁26が配置されている。制御弁26は、比例制御弁であり、油圧ポンプ23からリフトシリンダ19に供給される作動油の流量を制御する。なお、制御弁26は、圧力比例制御弁であってもよい。或いは、制御弁26は、電磁比例制御弁であってもよい。
【0018】
動力伝達装置24は、エンジン22の駆動力を走行装置12に伝達する。動力伝達装置24は、例えば、HST(Hydro Static Transmission)であってもよい。或いは、動力伝達装置24は、例えば、トルクコンバーター、或いは複数の変速ギアを有するトランスミッションであってもよい。
【0019】
制御システム3は、コントローラ31と、位置検出装置32と、通信装置33と、記憶装置34とを備える。コントローラ31は、取得したデータに基づいて作業車両1を制御するようにプログラムされている。コントローラ31は、例えばCPU等の処理装置を含む。なお、コントローラ31は、一体に限らず、複数のコントローラに分かれていてもよい。
【0020】
位置検出装置32は、作業車両1の位置を検出する。位置検出装置32は、例えば、GPS(Global Positioning System)などのGNSS(Global Navigation Satellite System)レシーバを含む。コントローラ31は、作業車両1の現在位置を示す現在位置データを位置検出装置32から取得する。
【0021】
通信装置33は、作業車両1の外部の機器と無線或いは有線を介して接続される。通信装置33は、作業車両1の外部の機器と通信を行う。例えば、通信装置33は、外部の測量装置35と通信する。測量装置35は、例えば、レーザ測量を用いる装置であってもよい。或いは、測量装置35は、カメラを含み、作業現場の画像データによって測量を行ってもよい。測量装置35は、例えば、UAV(Unmanned Aerial Vehicle)に搭載され、航空測量を行う装置であってもよい。
【0022】
記憶装置34は、例えばメモリーと補助記憶装置とを含む。記憶装置34は、例えば、RAM、或いはROMなどであってもよい。記憶装置34は、半導体メモリ、或いはハードディスクなどであってもよい。記憶装置34は、非一時的な(non-transitory)コンピュータで読み取り可能な記録媒体の一例である。記憶装置34は、プロセッサによって実行可能であり作業車両1を制御するためのコンピュータ指令を記録している。また、記憶装置34は、通信装置33を介して取得した外部の機器からのデータを記録する。
【0023】
コントローラ31は、エンジン22、油圧ポンプ23、動力伝達装置24、及び制御弁26に指令信号を出力することで、これらの装置を制御する。例えば、コントローラ31は、油圧ポンプ23の容量、及び、制御弁26の開度を制御することで、油圧アクチュエータ25を動作させる。これにより、作業機13を動作させることができる。
【0024】
コントローラ31は、エンジン22の回転速度、及び、動力伝達装置24を制御することで、作業車両1を走行させる。例えば、動力伝達装置24がHSTの場合、コントローラ31は、HSTの油圧ポンプの容量と油圧モータの容量とを制御する。動力伝達装置24が複数の変速ギアを有するトランスミッションの場合、コントローラ31は、ギアシフト用のアクチュエータを制御する。また、コントローラ31は、左右の履帯16に速度差が生じるように、動力伝達装置24を制御することで、作業車両1を旋回させる。
【0025】
次に、コントローラ31によって実行される、作業車両1の自動制御について説明する。コントローラ31は、エンジン22及び動力伝達装置24を制御することで、作業車両1を自動的に走行させることができる。また、コントローラ31は、エンジン22、油圧ポンプ23、及び制御弁26を制御することで、作業機13を自動的に制御することができる。
【0026】
以下、作業車両1によって行われるダンプ作業の自動制御について説明する。
図3は、ダンピングエリアを上方から見た図である。
図4は、ダンピングエリアを側方から見た図である。
図3に示すように、ダンピングエリアでは、ダンプトラック等の搬送手段100が、土砂等の物体を崖の縁200の近くまで搬送して排出する。それにより、ダンピングエリアの縁200の近くには、積み上げられた物体M1−M6の山(パイル)が配置される。ダンプ作業は、作業車両1が、ブレード18によって物体M1−M6のパイルの一部を削り、ダンピングエリアの縁200から押し出して落とし込む作業である。
【0027】
図5は、作業車両1の自動制御の処理を示すフローチャートである。
図5に示すように、ステップS101では、コントローラ31は、現在位置データを取得する。コントローラ31は、位置検出装置32から現在位置データを取得する。
【0028】
ステップS102では、コントローラ31は、ダンピングエリアデータを取得する。
図6に示すように、ダンピングエリアデータは、ダンピングエリアの縁200の形状及び位置を示す。例えば、ダンピングエリアの形状はポリゴン近似によって表現される。測量装置35は、ダンピングエリアの測量を行うことで、ダンピングエリアデータを取得する。コントローラ31は、測量装置35からダンピングエリアデータを取得する。
【0029】
ステップS103では、コントローラ31は、マテリアルデータを取得する。
図6に示すように、マテリアルデータは、ダンピングエリアの物体M1の形状及び位置を示す。例えば、物体M1の形状は、ポリゴン近似によって表現される。測量装置35は、ダンピングエリアの測量を行うことで、マテリアルデータを取得する。コントローラ31は、測量装置35からマテリアルデータを取得する。
【0030】
ステップS104では、コントローラ31は、物体M1のセグメント化を行う。
図7に示すように、コントローラ31は、マテリアルデータに基づいて物体M1を区画した複数のセグメントSGを決定する。コントローラ31は、マテリアルデータに基づいて物体M1の体積を演算する。コントローラ31は、各セグメントSGの体積が、所定の目標体積と一致するように、複数のセグメントSGの境界となるセグメント面SPの位置を決定する。それにより、
図7に示すように、コントローラ31は、第1〜第n番目のセグメントSGを決定する。なお、
図7では、各セグメントSGに“1”〜“n”のセグメント番号を付している。
【0031】
セグメント面SPは、例えば、作業車両1の進行方向に沿う。ただし、セグメント面SPの方向が互いに異なってもよい。目標体積は、ブレード18の最大容量に基づいて決定されてもよい。例えば、目標体積は、ブレード18の最大容量に所定の割合を乗じた値であってもよい。
【0032】
ステップS105では、コントローラ31は、ダンプ候補位置DPを決定する。ここでは、コントローラ31は、ダンピングエリアの縁200に沿う複数のダンプ候補位置DPを決定する。例えば、コントローラ31は、ダンピングエリアの縁200に沿って一定距離ごとの位置を、それぞれダンプ候補位置DPとして決定する。それにより、
図7に示すように、コントローラ31は、第1〜第m番目のダンプ候補位置DPを決定する。なお、
図7では、各ダンプ候補位置DPに“1”〜“m”のダンプ位置番号を付している。
【0033】
第1番目のダンプ候補位置DPは、第1番目のセグメントSGに最も近い縁200上の位置である。なお、ダンプ候補位置DPの数mは、セグメントSGの数nに基づいて決定されてもよい。複数のダンプ候補位置DPの間隔は一定でなくてもよい。
【0034】
ステップS106では、コントローラ31は、制御モードデータを取得する。制御モードデータは、複数の制御モードのなかから選択されている制御モードを示す。制御モードは、例えば、オペレータによって選択されてもよい。或いは、コントローラ31によって自動的に選択されてもよい。選択されている制御モードに応じて、セグメントSGとダンプ候補位置DPとの組み合わせを決定する際に考慮される要求条件が設定される。複数の制御モードは、最短距離モードと、均等分配モードと、目標分配モードとを含む。制御モード及び要求条件については後述する。
【0035】
ステップS107では、コントローラ31は、セグメントSGの分配を決定する。ここでは、コントローラ31は、複数のセグメントSGと複数のダンプ候補位置DPとの組み合わせを決定する。コントローラ31は、上述した要求条件を満たしつつ、ダンプ作業のコストが最小となる複数のセグメントSGと複数のダンプ候補位置DPとの組み合わせを決定する。
【0036】
本実施形態では、コストは、セグメントSGをダンプ候補位置DPまで運ぶための作業車両1の移動距離である。言い換えれば、コストは、セグメントSGとダンプ候補位置DPとの間の距離であってもよい。従って、コントローラ31は、移動距離の総和が最小となる複数のセグメントSGと複数のダンプ候補位置DPとの組み合わせを決定する。後述するように、本実施形態では、コントローラ31は、線形計画法により複数のセグメントSGと複数のダンプ候補位置DPとの組み合わせを決定する。
【0037】
ステップS108では、コントローラ31は、走行パスを決定する。ここでは、コントローラ31は、ステップS107で決定されたセグメントSGとダンプ候補位置DPとの組み合わせに従って、走行パスを決定する。コントローラ31は、複数のダンプ候補位置DPのうち、組み合わせに選ばれたダンプ候補位置DPをダンプ位置DPとして決定する。そして、
図8に示すように、コントローラ31は、組み合わされたセグメントSGとダンプ位置DPとを結ぶように走行パスPHを決定する。なお、
図8では走行パスの一部のみに符号“PH”を付して他の走行パスの符号は省略されている。セグメントの符号“SG”とダンプ位置の符号“DP”についても同様である。
【0038】
ステップS109では、コントローラ31は、ダンプ作業を実行するように作業車両1を制御する。ここでは、コントローラ31は、ステップS108で決定された走行パスPHに沿って作業車両1を移動させる。コントローラ31は、現在位置データと走行パスPHとに基づいて、作業車両1を制御する。
【0039】
次に、セグメントSGとダンプ候補位置DPとの組み合わせを決定するための処理について説明する。本実施形態では、整数線形計画(Integer Linear Programming;ILP)を用いてセグメントSGとダンプ候補位置DPとの組み合わせを決定する。整数線形計画では、全ての変数が整数である。整数線形計画の定式は以下の式(1)で示される。
ただし、
である。
【0040】
Cは、コスト行列である。Xは変数行列である。a, bは、変数行列Xの要求条件を示す定数行列である。各行列の次元は以下の(4)式で示される。
nは、セグメントSGの数である。mは、ダンプ候補位置DPの数である。pは要求条件の数である。コスト行列Cは以下の式(5)(6)で示される。
c
ki(k=1,2,...n)(i=1,2,...m)は、k番目のセグメントSGからi番目のダンプ候補位置DPまでのコストである。本実施形態では、k番目のセグメントSGからi番目のダンプ候補位置DPまでの移動距離がコストとして設定される。移動距離は、例えば、ユークリッド距離によって決定される。ただし、移動距離は、ユークリッド距離以外の手法によって決定されてもよい。
【0041】
変数行列Xは、以下の式(7)〜(9)で示される。
x
ki(k=1,2,...n)(i=1,2,...n)は、k番目のセグメントSGからi番目のダンプ候補位置DPまでの走行パスの決定値であり、“1”又は“0”である。“1”は、k番目のセグメントSGからi番目のダンプ候補位置DPまでの走行パスが選択されることを意味し、“0”はk番目のセグメントSGからi番目のダンプ候補位置DPまでの走行パスが選択されないことを意味する。すなわち、変数行列Xの解は、セグメントSGとダンプ候補位置DPとの組み合わせを示している。
【0042】
図8は、変数行列Xの解の一例と、その場合に決定される走行パスPHを示す図である。
図8に示すように、x
13 = 1である。これは、1番目のセグメントSGから3番目のダンプ候補位置DPまでの走行パスが選択されることを意味している。また、x
11 = 0である。これは、1番目のセグメントSGから1番目のダンプ候補位置DPまでの走行パスが選択されないことを意味している。
【0043】
図8は、上述した制御モードのうち最短距離モードでのセグメントSGの分配の例を示している。
図8に示す例では、ダンプ候補位置DPの数mは10であり、セグメントSGの数nは10である。最短距離モードでは、上述した式(1)の目的関数から、以下の式(10)で示される第1の要求条件に従うと共に移動距離の総和が最小となるように、セグメントSGとダンプ候補位置DPとの組み合わせの解が決定される。
式(10)は、1つのセグメントSGに対して選択されるダンプ候補位置DPの数が1つであり、1つのセグメントSGに対して複数のダンプ候補位置DPが選択されないことを意味する。例えば、
図8に示すように、x
2i(i = 1,2,...10)のうち、x
23が“1”であるときには、x
2iの他の値は全て“0”である。これは、2番目のセグメントSGから3番目のダンプ候補位置DPまでの走行パスが選択されるが、2番目のセグメントSGから他のダンプ候補位置DPまでのパスは選択されないことを意味している。すなわち、式(10)で示される第1の要求条件は、各セグメントSGの更なる区画を行わないことを意味する。
【0044】
また、上記の式(10)は、n個のセグメントSGのそれぞれが必ずm個のダンプ候補位置DPのいずれか1つに運ばれることを意味する。ただし、1つのダンプ候補位置DPに対して複数のセグメントSGが選択されてもよい。
【0045】
例えば、
図8に示す例では、1番目と2番目のセグメントSGに対して3番目のダンプ候補位置DPが選択されている。3番目と4番目のセグメントSGに対して4番目のダンプ候補位置DPが選択されている。5〜8番目のセグメントSGに対して5番目のダンプ候補位置DPが選択されている。9番目と10番目のセグメントSGに対して6番目のダンプ候補位置DPが選択されている。このように最短距離モードでは、各セグメントSGが最も近いダンプ候補位置DPに分配される。
【0046】
次に均等分配モードに付いて説明する。
図9は、上述した制御モードのうち均等分配モードでのセグメントSGの分配の例を示している。均等分配モードでは、上述した式(1)の目的関数から、式(10)で示される第1の要求条件、及び、以下の式(11)で示される第2の要求条件に従うと共に移動距離の総和が最小となるように、セグメントSGとダンプ候補位置DPとの組み合わせの解が決定される。
式(11)は、1つのダンプ候補位置DPに対して選択されるセグメントSGの数が1又は0であることを意味する。例えば、
図9に示すように、x
k1 (k = 1,2,...10)のうち、x
11 が“1”であるときには、x
k1の他の値は全て“0”となる。これは、1番目のセグメントSGから1番目のダンプ候補位置DPまでのパスが選択されると、1番目のダンプ候補位置DPには他のセグメントSGが選択されないことを意味している。
【0047】
式(11)で示される第2の要求条件により、1のダンプ候補位置DPに対して1以下のセグメントSGが選択され、1のダンプ位置DPに対して2以上のセグメントSGは選択されない。従って、上記の式(11)で示す第2の要求条件は、各セグメントSGを各ダンプ候補位置DPに均等に分配するための要求条件を示している。
【0048】
例えば、
図9に示す例では、1番目〜10番目のセグメントSGに対して、1番目〜10番目のダンプ候補位置DPが、1対1で、それぞれ選択されている。このように最短距離モードでは、各セグメントSGが各ダンプ候補位置DPに均等に分配されるなかで最も近いダンプ候補位置DPにセグメントSGが分配される。
【0049】
なお、均等分配モードでは、以下の式(12)で示すように、ダンプ候補位置DPの数mは、セグメントSGの数n以上であることが必要となる。
図9に示す例では、ダンプ候補位置DPの数mとセグメントSGの数nとは共に10であるため、10のセグメントSGが10のダンプ候補位置DPに均等に分配される。ただし、ダンプ候補位置DPの数mが、セグメントSGの数nよりも多いときには、選択されないダンプ候補位置DPがあることになる。
【0050】
次に目標分配モードに付いて説明する。
図10は、上述した制御モードのうち目標分配モードでのセグメントSGの分配の例を示している。目標分配モードでは、上述した式(1)の目的関数から、式(10)で示される第1の要求条件、及び、以下の式(13)で示される第3の要求条件に従うと共に移動距離の総和が最小となるように、セグメントSGとダンプ候補位置DPとの組み合わせの解が決定される。
y
iは、i番目のダンプ候補位置DPに分配されるセグメントSGの数である。Vは、物体M1の総量である。
【0051】
式(13)で示される第3の要求条件により、特定のダンプ候補位置DPに分配されるセグメントSGの個数が設定される。例えば、
図10に示すように、
である。これは1番目のダンプ候補位置DPに2つのセグメントSGを分配することを意味している。また、
である。これは、2番目のダンプ候補位置DPには、セグメントSGを分配しないことを意味している。
【0052】
例えば、
図10に示す例では、1,3,4,5,10番目のダンプ候補位置DPに対して、それぞれ2つのセグメントSGを分配することが設定されている。それにより、
図10に示すように、1番目のダンプ候補位置DPに対して1番目と2番目のセグメントSGが選択されている。3番目のダンプ候補位置DPに対して3番目と6番目のセグメントSGが選択されている。4番目のダンプ候補位置DPに対して4番目と7番目のセグメントSGが選択されている。5番目のダンプ候補位置DPに対して5番目と8番目のセグメントSGが選択されている。10番目のダンプ候補位置DPに対して9番目と10番目のセグメントSGが選択されている。ただし、2,6,7,8,9番目のダンプ候補位置DPにはセグメントSGが分配されない。
【0053】
このように目標分配モードでは、特定ダンプ候補位置DPに分配されるセグメントSGの個数が決まっているなかで最も近いダンプ候補位置DPにセグメントSGが分配される。このように、式(13)で示される第3の要求条件により、特定のダンプ候補位置DPに、他の位置と異なる量の物体M1を分配することができる。それにより、例えば、他の場所と比べて土量の少ないダンプ候補位置DPを指定して、セグメントSGを運ぶことができる。
【0054】
なお、y
iはオペレータによって設定されてもよい。或いは、コントローラ31がダンピングエリアデータに基づいてy
iを決定してもよい。
【0055】
以上説明した、本実施形態に係る作業車両1の制御システム3によれば、ダンピングエリアの物体M1が複数のセグメントSGに分けられ、ダンピングエリアの崖の縁200に沿って複数のダンプ候補位置DPが決定される。そして、複数のセグメントSGと複数のダンプ候補位置DPとの組み合わせにより作業車両1の走行パスPHが決定される。従って、走行パスPHに沿って作業車両1を移動させることで、自動制御により、効率よくダンプ作業を行うことができる。
【0056】
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。
【0057】
作業車両1は、ブルドーザに限らず、ホイールローダ等の他の車両であってもよい。作業車両1は、遠隔操縦可能な車両であってもよい。その場合、
図11に示す作業車両1aのように、運転室が省略されてもよい。なお、
図11では、上述した実施形態に係る作業車両1に対応する構成に同一の符号を付している。
【0058】
制御システム3の一部は、作業車両1の外部に配置されてもよい。例えば、コントローラ31は、互いに別体の複数のコントローラを有してもよい。
図12に示すように、コントローラ31は、作業車両1の外部に配置されるリモートコントローラ311と、作業車両1に搭載される車載コントローラ312とを含んでもよい。リモートコントローラ311と車載コントローラ312とは通信装置33,36を介して無線により通信可能であってもよい。そして、上述したコントローラ31の機能の一部がリモートコントローラ311によって実行され、残りの機能が車載コントローラ312によって実行されてもよい。例えば、セグメントSGとダンプ候補位置DPとの組み合わせを決定する処理(S107)と走行パスPHを決定する処理(S108)とがリモートコントローラ311によって実行され、ダンプ作業を実行する処理(S109)が車載コントローラ312によって実行されてもよい。
【0059】
作業車両1の自動制御は、オペレータによる手動操作と合わせて行われる半自動制御であってもよい。或いは、自動制御は、オペレータによる手動操作無しで行われる完全自動制御であってもよい。例えば、
図12に示すように、作業車両1の外部に配置された操作装置37をオペレータが操作することによって作業車両1が操作されてもよい。その場合、操作装置37によって、作業車両1の前進、後進、及び旋回が操作されてもよい。或いは、操作装置37によって目標地点が設定され、コントローラ31による自動制御によって、作業車両1が目標地点まで走行してもよい。或いは、操作装置37による操作無しで、コントローラ31による自動制御のみによって作業車両1が走行してもよい。
【0060】
ダンピングエリアデータとマテリアルデータとは、それぞれ別の装置で取得されてもよい。例えば、ダンピングエリアデータは、作業車両1の外部の測量装置から取得され、マテリアルデータは作業車両1に搭載された他の測量装置から取得されてもよい。
【0061】
ダンプ作業は、オペレータの操作によって行われてもよい。例えば、
図13に示すように、ステップS209において、走行パスPHが表示されてもよい。ここでは、
図12に示すディスプレイ38に
図8から
図10に示すような走行パスPHの例が表示されてもよい。この場合、経験の少ないオペレータであっても、表示された走行パスPHに従って作業車両1を操作することで、効率よく且つ容易にダンプ作業を行うことができる。なお、
図13において、ステップS201〜S208の処理は、
図5におけるステップS101〜S108の処理とそれぞれ同じである。なお、操作装置37及びディスプレイ38は、作業車両1に搭載されてもよい。
【0062】
コストが最小となるセグメントSGとダンプ候補位置DPとの組み合わせを決定する方法は、線形計画法に限らず、他の手法であってもよい。コストは、移動距離に限らず、作業時間、或いは、押し込みの回数など他のパラメータであってもよい。すなわち、移動距離に限らず、作業時間、或いは、押し込みの回数を最小化するように、セグメントSGとダンプ候補位置DPとの組み合わせが決定されてもよい。
【0063】
上記の実施形態における要求条件の一部が省略又は変更されてもよい。或いは、上記の実施形態における要求条件と異なる要求条件が追加されてもよい。
【0064】
複数のセグメントSGは、ブレードの最大容量に限らず、他の方法によって決定されてもよい。例えば、目標体積は、固定値であってもよい。或いは、目標体積は、作業車両1の状態に応じた可変値であってもよい。
【0065】
走行パスPHは、セグメントSGとダンプ位置DPとを結ぶ直線に限らない。例えば、ブレードからの物体M1の漏れを最小化するように走行パスPHが決定されてもよい。